From 5153424693ca144122363cc330db736d6f83d597 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 16 Oct 2023 17:18:02 -0400 Subject: [PATCH 01/18] new folder: src/tmx/Asn_J2735/include/asn_j2735_2020 new folder: src/tmx/Asn_J2735/src/2020 --- .../Asn_J2735/include/asn_j2735_2020/ANY.h | 84 + .../AccelSteerYawRateConfidence.h | 44 + .../include/asn_j2735_2020/Acceleration.h | 47 + .../asn_j2735_2020/AccelerationConfidence.h | 60 + .../asn_j2735_2020/AccelerationSet4Way.h | 45 + .../include/asn_j2735_2020/AddGrpB_Angle.h | 46 + .../asn_j2735_2020/AddGrpB_Elevation.h | 47 + .../include/asn_j2735_2020/AddGrpB_MsgCount.h | 46 + .../include/asn_j2735_2020/AddGrpB_TimeMark.h | 56 + .../include/asn_j2735_2020/AdvisorySpeed.h | 63 + .../asn_j2735_2020/AdvisorySpeedList.h | 44 + .../asn_j2735_2020/AdvisorySpeedType.h | 59 + .../include/asn_j2735_2020/AllowedManeuvers.h | 63 + .../include/asn_j2735_2020/Altitude.h | 42 + .../asn_j2735_2020/AltitudeConfidence.h | 68 + .../include/asn_j2735_2020/AltitudeValue.h | 47 + .../asn_j2735_2020/AmbientAirPressure.h | 47 + .../asn_j2735_2020/AmbientAirTemperature.h | 47 + .../asn_j2735_2020/AnimalPropelledType.h | 59 + .../include/asn_j2735_2020/AnimalType.h | 59 + .../include/asn_j2735_2020/AntennaOffsetSet.h | 44 + .../asn_j2735_2020/AntiLockBrakeStatus.h | 56 + .../include/asn_j2735_2020/ApproachID.h | 47 + .../include/asn_j2735_2020/ApproachOrLane.h | 53 + .../include/asn_j2735_2020/Attachment.h | 62 + .../include/asn_j2735_2020/AttachmentRadius.h | 47 + .../asn_j2735_2020/AuxiliaryBrakeStatus.h | 56 + .../include/asn_j2735_2020/AxleLocation.h | 47 + .../include/asn_j2735_2020/AxleWeight.h | 47 + .../include/asn_j2735_2020/AxleWeightList.h | 44 + .../include/asn_j2735_2020/AxleWeightSet.h | 46 + .../include/asn_j2735_2020/BIT_STRING.h | 75 + .../include/asn_j2735_2020/BOOLEAN.h | 70 + .../include/asn_j2735_2020/BSMcoreData.h | 66 + .../asn_j2735_2020/BasicSafetyMessage.h | 62 + .../asn_j2735_2020/BasicVehicleClass.h | 103 + .../include/asn_j2735_2020/BasicVehicleRole.h | 78 + .../asn_j2735_2020/BrakeAppliedPressure.h | 68 + .../asn_j2735_2020/BrakeAppliedStatus.h | 56 + .../asn_j2735_2020/BrakeBoostApplied.h | 55 + .../asn_j2735_2020/BrakeSystemStatus.h | 50 + .../include/asn_j2735_2020/BumperHeight.h | 47 + .../include/asn_j2735_2020/BumperHeights.h | 41 + .../include/asn_j2735_2020/CargoWeight.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Circle.h | 44 + .../include/asn_j2735_2020/CoarseHeading.h | 47 + .../include/asn_j2735_2020/CodeWord.h | 46 + .../asn_j2735_2020/CoefficientOfFriction.h | 47 + .../asn_j2735_2020/CommonSafetyRequest.h | 61 + .../include/asn_j2735_2020/Common_Angle.h | 47 + .../include/asn_j2735_2020/Common_Elevation.h | 47 + .../include/asn_j2735_2020/Common_MsgCount.h | 47 + .../include/asn_j2735_2020/ComputedLane.h | 95 + .../include/asn_j2735_2020/Confidence.h | 47 + .../include/asn_j2735_2020/ConfidenceSet.h | 58 + .../include/asn_j2735_2020/ConnectingLane.h | 42 + .../include/asn_j2735_2020/Connection.h | 50 + .../ConnectionManeuverAssist-addGrpC.h | 44 + .../asn_j2735_2020/ConnectionManeuverAssist.h | 62 + .../include/asn_j2735_2020/ConnectsToList.h | 44 + .../Asn_J2735/include/asn_j2735_2020/Count.h | 46 + .../Asn_J2735/include/asn_j2735_2020/DDate.h | 42 + .../include/asn_j2735_2020/DDateTime.h | 52 + .../Asn_J2735/include/asn_j2735_2020/DDay.h | 47 + .../include/asn_j2735_2020/DFullTime.h | 46 + .../Asn_J2735/include/asn_j2735_2020/DHour.h | 47 + .../include/asn_j2735_2020/DMinute.h | 47 + .../Asn_J2735/include/asn_j2735_2020/DMonth.h | 47 + .../include/asn_j2735_2020/DMonthDay.h | 40 + .../include/asn_j2735_2020/DOffset.h | 47 + .../include/asn_j2735_2020/DSRCmsgID.h | 96 + .../include/asn_j2735_2020/DSecond.h | 47 + .../Asn_J2735/include/asn_j2735_2020/DTime.h | 44 + .../Asn_J2735/include/asn_j2735_2020/DYear.h | 47 + .../include/asn_j2735_2020/DYearMonth.h | 40 + .../include/asn_j2735_2020/DataParameters.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Day.h | 47 + .../include/asn_j2735_2020/DayOfWeek.h | 60 + .../include/asn_j2735_2020/DegreesLat.h | 47 + .../include/asn_j2735_2020/DegreesLong.h | 47 + .../include/asn_j2735_2020/DeltaAngle.h | 47 + .../include/asn_j2735_2020/DeltaTime.h | 47 + .../include/asn_j2735_2020/DescriptiveName.h | 47 + .../include/asn_j2735_2020/DirectionOfUse.h | 56 + .../include/asn_j2735_2020/DisabledVehicle.h | 46 + .../include/asn_j2735_2020/DistanceUnits.h | 60 + .../asn_j2735_2020/DriveAxleLiftAirPressure.h | 47 + .../asn_j2735_2020/DriveAxleLocation.h | 47 + .../asn_j2735_2020/DriveAxleLubePressure.h | 47 + .../asn_j2735_2020/DriveAxleTemperature.h | 47 + .../asn_j2735_2020/DrivenLineOffsetLg.h | 47 + .../asn_j2735_2020/DrivenLineOffsetSm.h | 47 + .../asn_j2735_2020/DrivingWheelAngle.h | 47 + .../include/asn_j2735_2020/Duration.h | 46 + .../include/asn_j2735_2020/EXTERNAL.h | 65 + .../asn_j2735_2020/ElevationConfidence.h | 68 + .../include/asn_j2735_2020/EmergencyDetails.h | 56 + .../asn_j2735_2020/EmergencyVehicleAlert.h | 73 + .../include/asn_j2735_2020/EmissionType.h | 60 + .../include/asn_j2735_2020/EnabledLaneList.h | 42 + .../asn_j2735_2020/EssMobileFriction.h | 47 + .../include/asn_j2735_2020/EssPrecipRate.h | 47 + .../asn_j2735_2020/EssPrecipSituation.h | 67 + .../include/asn_j2735_2020/EssPrecipYesNo.h | 55 + .../asn_j2735_2020/EssSolarRadiation.h | 47 + .../include/asn_j2735_2020/EventDescription.h | 67 + .../include/asn_j2735_2020/ExitService.h | 69 + .../Asn_J2735/include/asn_j2735_2020/Extent.h | 68 + .../include/asn_j2735_2020/ExteriorLights.h | 60 + .../include/asn_j2735_2020/FuelType.h | 57 + .../asn_j2735_2020/FullPositionVector.h | 64 + .../include/asn_j2735_2020/FurtherInfoID.h | 47 + .../include/asn_j2735_2020/GNSSstatus.h | 59 + .../include/asn_j2735_2020/GenericLane.h | 70 + .../include/asn_j2735_2020/GenericLocations.h | 151 + .../include/asn_j2735_2020/GenericSignage.h | 69 + .../include/asn_j2735_2020/GeographicalPath.h | 96 + .../asn_j2735_2020/GeometricProjection.h | 61 + .../include/asn_j2735_2020/GraphicString.h | 56 + .../include/asn_j2735_2020/GrossDistance.h | 47 + .../include/asn_j2735_2020/GrossSpeed.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Header.h | 50 + .../include/asn_j2735_2020/Heading.h | 47 + .../asn_j2735_2020/HeadingConfidence.h | 60 + .../include/asn_j2735_2020/HeadingSlice.h | 67 + .../include/asn_j2735_2020/Holiday.h | 54 + .../Asn_J2735/include/asn_j2735_2020/Hour.h | 47 + .../asn_j2735_2020/HumanPropelledType.h | 61 + .../include/asn_j2735_2020/IA5String.h | 59 + .../include/asn_j2735_2020/INTEGER.h | 139 + .../include/asn_j2735_2020/ITIScodes.h | 47 + .../include/asn_j2735_2020/ITIScodesAndText.h | 69 + .../include/asn_j2735_2020/ITIStext.h | 47 + .../include/asn_j2735_2020/ITIStextPhrase.h | 47 + .../IncidentResponseEquipment.h | 127 + .../asn_j2735_2020/IntersectionAccessPoint.h | 62 + .../asn_j2735_2020/IntersectionCollision.h | 71 + .../asn_j2735_2020/IntersectionGeometry.h | 69 + .../asn_j2735_2020/IntersectionGeometryList.h | 44 + .../include/asn_j2735_2020/IntersectionID.h | 47 + .../asn_j2735_2020/IntersectionReferenceID.h | 42 + .../IntersectionState-addGrpC.h | 46 + .../asn_j2735_2020/IntersectionState.h | 71 + .../asn_j2735_2020/IntersectionStateList.h | 44 + .../asn_j2735_2020/IntersectionStatusObject.h | 65 + .../include/asn_j2735_2020/IsDolly.h | 46 + .../asn_j2735_2020/Iso3833VehicleType.h | 47 + .../include/asn_j2735_2020/J1939data.h | 64 + .../asn_j2735_2020/LaneAttributes-Barrier.h | 61 + .../asn_j2735_2020/LaneAttributes-Bike.h | 58 + .../asn_j2735_2020/LaneAttributes-Crosswalk.h | 60 + .../asn_j2735_2020/LaneAttributes-Parking.h | 58 + .../asn_j2735_2020/LaneAttributes-Sidewalk.h | 55 + .../asn_j2735_2020/LaneAttributes-Striping.h | 57 + .../LaneAttributes-TrackedVehicle.h | 56 + .../asn_j2735_2020/LaneAttributes-Vehicle.h | 59 + .../include/asn_j2735_2020/LaneAttributes.h | 48 + .../include/asn_j2735_2020/LaneConnectionID.h | 47 + .../LaneDataAttribute-addGrpB.h | 41 + .../asn_j2735_2020/LaneDataAttribute.h | 81 + .../asn_j2735_2020/LaneDataAttributeList.h | 44 + .../include/asn_j2735_2020/LaneDirection.h | 53 + .../Asn_J2735/include/asn_j2735_2020/LaneID.h | 47 + .../include/asn_j2735_2020/LaneList.h | 44 + .../include/asn_j2735_2020/LaneSharing.h | 61 + .../asn_j2735_2020/LaneTypeAttributes.h | 77 + .../include/asn_j2735_2020/LaneWidth.h | 47 + .../include/asn_j2735_2020/Latitude.h | 47 + .../include/asn_j2735_2020/LatitudeDMS.h | 47 + .../include/asn_j2735_2020/LatitudeDMS2.h | 44 + .../include/asn_j2735_2020/LayerID.h | 47 + .../include/asn_j2735_2020/LayerType.h | 63 + .../include/asn_j2735_2020/LightbarInUse.h | 60 + .../include/asn_j2735_2020/Location-quality.h | 58 + .../include/asn_j2735_2020/Location-tech.h | 63 + .../include/asn_j2735_2020/Longitude.h | 47 + .../include/asn_j2735_2020/LongitudeDMS.h | 47 + .../include/asn_j2735_2020/LongitudeDMS2.h | 44 + .../include/asn_j2735_2020/MUTCDCode.h | 62 + .../asn_j2735_2020/ManeuverAssistList.h | 44 + .../include/asn_j2735_2020/MapData-addGrpC.h | 46 + .../include/asn_j2735_2020/MapData.h | 69 + .../include/asn_j2735_2020/MaxTimetoChange.h | 47 + .../asn_j2735_2020/MergeDivergeNodeAngle.h | 47 + .../include/asn_j2735_2020/MessageBLOB.h | 46 + .../include/asn_j2735_2020/MessageFrame.h | 152 + .../include/asn_j2735_2020/MinTimetoChange.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Minute.h | 47 + .../include/asn_j2735_2020/MinuteOfTheYear.h | 47 + .../include/asn_j2735_2020/MinutesAngle.h | 47 + .../include/asn_j2735_2020/MinutesDuration.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Month.h | 47 + .../asn_j2735_2020/MotorizedPropelledType.h | 61 + .../asn_j2735_2020/MovementEvent-addGrpB.h | 52 + .../include/asn_j2735_2020/MovementEvent.h | 59 + .../asn_j2735_2020/MovementEventList.h | 44 + .../include/asn_j2735_2020/MovementList.h | 44 + .../asn_j2735_2020/MovementPhaseState.h | 62 + .../include/asn_j2735_2020/MovementState.h | 61 + .../Asn_J2735/include/asn_j2735_2020/MsgCRC.h | 47 + .../asn_j2735_2020/MultiVehicleResponse.h | 56 + .../include/asn_j2735_2020/NMEA-MsgType.h | 47 + .../include/asn_j2735_2020/NMEA-Payload.h | 47 + .../include/asn_j2735_2020/NMEA-Revision.h | 62 + .../include/asn_j2735_2020/NMEAcorrections.h | 63 + .../include/asn_j2735_2020/NativeEnumerated.h | 76 + .../include/asn_j2735_2020/NativeInteger.h | 71 + .../include/asn_j2735_2020/Node-LL-24B.h | 41 + .../include/asn_j2735_2020/Node-LL-28B.h | 41 + .../include/asn_j2735_2020/Node-LL-32B.h | 41 + .../include/asn_j2735_2020/Node-LL-36B.h | 41 + .../include/asn_j2735_2020/Node-LL-44B.h | 41 + .../include/asn_j2735_2020/Node-LL-48B.h | 41 + .../include/asn_j2735_2020/Node-LLdms-48b.h | 42 + .../include/asn_j2735_2020/Node-LLdms-80b.h | 42 + .../include/asn_j2735_2020/Node-LLmD-64b.h | 42 + .../include/asn_j2735_2020/Node-XY-20b.h | 41 + .../include/asn_j2735_2020/Node-XY-22b.h | 41 + .../include/asn_j2735_2020/Node-XY-24b.h | 41 + .../include/asn_j2735_2020/Node-XY-26b.h | 41 + .../include/asn_j2735_2020/Node-XY-28b.h | 41 + .../include/asn_j2735_2020/Node-XY-32b.h | 41 + .../include/asn_j2735_2020/NodeAttributeLL.h | 67 + .../asn_j2735_2020/NodeAttributeLLList.h | 42 + .../asn_j2735_2020/NodeAttributeSetLL.h | 63 + .../asn_j2735_2020/NodeAttributeSetXY.h | 63 + .../include/asn_j2735_2020/NodeAttributeXY.h | 67 + .../asn_j2735_2020/NodeAttributeXYList.h | 42 + .../Asn_J2735/include/asn_j2735_2020/NodeLL.h | 48 + .../include/asn_j2735_2020/NodeListLL.h | 56 + .../include/asn_j2735_2020/NodeListXY.h | 59 + .../asn_j2735_2020/NodeOffsetPointLL.h | 71 + .../NodeOffsetPointXY-addGrpB.h | 59 + .../asn_j2735_2020/NodeOffsetPointXY.h | 71 + .../include/asn_j2735_2020/NodeSetLL.h | 44 + .../include/asn_j2735_2020/NodeSetXY.h | 44 + .../Asn_J2735/include/asn_j2735_2020/NodeXY.h | 48 + .../NumberOfParticipantsInCluster.h | 59 + .../asn_j2735_2020/OBJECT_IDENTIFIER.h | 184 + .../include/asn_j2735_2020/OCTET_STRING.h | 165 + .../include/asn_j2735_2020/OPEN_TYPE.h | 117 + .../include/asn_j2735_2020/ObjectCount.h | 47 + .../include/asn_j2735_2020/ObjectDescriptor.h | 54 + .../asn_j2735_2020/ObstacleDetection.h | 54 + .../asn_j2735_2020/ObstacleDirection.h | 47 + .../include/asn_j2735_2020/ObstacleDistance.h | 47 + .../include/asn_j2735_2020/Offset-B09.h | 47 + .../include/asn_j2735_2020/Offset-B10.h | 47 + .../include/asn_j2735_2020/Offset-B11.h | 47 + .../include/asn_j2735_2020/Offset-B12.h | 47 + .../include/asn_j2735_2020/Offset-B13.h | 47 + .../include/asn_j2735_2020/Offset-B14.h | 47 + .../include/asn_j2735_2020/Offset-B16.h | 47 + .../include/asn_j2735_2020/OffsetLL-B12.h | 47 + .../include/asn_j2735_2020/OffsetLL-B14.h | 47 + .../include/asn_j2735_2020/OffsetLL-B16.h | 47 + .../include/asn_j2735_2020/OffsetLL-B18.h | 47 + .../include/asn_j2735_2020/OffsetLL-B22.h | 47 + .../include/asn_j2735_2020/OffsetLL-B24.h | 47 + .../include/asn_j2735_2020/OffsetSystem.h | 60 + .../include/asn_j2735_2020/OverlayLaneList.h | 42 + .../include/asn_j2735_2020/PartII-Id.h | 50 + .../include/asn_j2735_2020/PartIIcontent.h | 66 + .../include/asn_j2735_2020/PathHistory.h | 50 + .../include/asn_j2735_2020/PathHistoryPoint.h | 57 + .../asn_j2735_2020/PathHistoryPointList.h | 44 + .../include/asn_j2735_2020/PathPrediction.h | 46 + .../include/asn_j2735_2020/PayloadData.h | 46 + .../asn_j2735_2020/PedestrianBicycleDetect.h | 46 + .../asn_j2735_2020/PersonalAssistive.h | 57 + .../asn_j2735_2020/PersonalClusterRadius.h | 47 + .../PersonalCrossingInProgress.h | 46 + .../asn_j2735_2020/PersonalCrossingRequest.h | 46 + .../asn_j2735_2020/PersonalDeviceUsageState.h | 60 + .../asn_j2735_2020/PersonalDeviceUserType.h | 60 + .../asn_j2735_2020/PersonalSafetyMessage.h | 103 + .../asn_j2735_2020/PivotPointDescription.h | 48 + .../include/asn_j2735_2020/PivotingAllowed.h | 46 + .../asn_j2735_2020/Position3D-addGrpB.h | 48 + .../asn_j2735_2020/Position3D-addGrpC.h | 44 + .../include/asn_j2735_2020/Position3D.h | 59 + .../asn_j2735_2020/PositionConfidence.h | 68 + .../asn_j2735_2020/PositionConfidenceSet.h | 42 + .../asn_j2735_2020/PositionalAccuracy.h | 44 + .../asn_j2735_2020/PreemptPriorityList.h | 44 + .../asn_j2735_2020/PrioritizationResponse.h | 48 + .../PrioritizationResponseList.h | 44 + .../PrioritizationResponseStatus.h | 63 + .../include/asn_j2735_2020/Priority.h | 47 + .../asn_j2735_2020/PriorityRequestType.h | 59 + .../asn_j2735_2020/PrivilegedEventFlags.h | 57 + .../include/asn_j2735_2020/PrivilegedEvents.h | 46 + .../asn_j2735_2020/ProbeDataManagement.h | 100 + .../asn_j2735_2020/ProbeSegmentNumber.h | 47 + .../include/asn_j2735_2020/ProbeVehicleData.h | 70 + .../asn_j2735_2020/PropelledInformation.h | 62 + .../PublicSafetyAndRoadWorkerActivity.h | 57 + .../PublicSafetyDirectingTrafficSubType.h | 58 + .../PublicSafetyEventResponderWorkerType.h | 63 + .../include/asn_j2735_2020/RTCM-Revision.h | 59 + .../include/asn_j2735_2020/RTCMPackage.h | 48 + .../include/asn_j2735_2020/RTCMcorrections.h | 65 + .../include/asn_j2735_2020/RTCMheader.h | 42 + .../include/asn_j2735_2020/RTCMmessage.h | 47 + .../include/asn_j2735_2020/RTCMmessageList.h | 42 + .../include/asn_j2735_2020/Radius-B12.h | 47 + .../asn_j2735_2020/RadiusOfCurvature.h | 47 + .../include/asn_j2735_2020/RainSensor.h | 60 + .../include/asn_j2735_2020/RegionId.h | 51 + .../include/asn_j2735_2020/RegionList.h | 44 + .../include/asn_j2735_2020/RegionOffsets.h | 42 + .../include/asn_j2735_2020/RegionPointSet.h | 50 + .../asn_j2735_2020/RegionalExtension.h | 1337 ++ .../asn_j2735_2020/RegulatorySpeedLimit.h | 42 + .../include/asn_j2735_2020/RequestID.h | 47 + .../asn_j2735_2020/RequestImportanceLevel.h | 68 + .../include/asn_j2735_2020/RequestSubRole.h | 68 + .../include/asn_j2735_2020/RequestedItem.h | 72 + .../asn_j2735_2020/RequestedItemList.h | 42 + .../asn_j2735_2020/RequestorDescription.h | 68 + .../asn_j2735_2020/RequestorPositionVector.h | 50 + .../include/asn_j2735_2020/RequestorType.h | 56 + .../asn_j2735_2020/ResponderGroupAffected.h | 69 + .../include/asn_j2735_2020/ResponseType.h | 62 + .../asn_j2735_2020/RestrictionAppliesTo.h | 69 + .../RestrictionClassAssignment.h | 42 + .../asn_j2735_2020/RestrictionClassID.h | 47 + .../asn_j2735_2020/RestrictionClassList.h | 44 + .../RestrictionUserType-addGrpC.h | 44 + .../asn_j2735_2020/RestrictionUserType.h | 68 + .../asn_j2735_2020/RestrictionUserTypeList.h | 44 + .../include/asn_j2735_2020/RoadLaneSetList.h | 44 + .../include/asn_j2735_2020/RoadRegulatorID.h | 47 + .../include/asn_j2735_2020/RoadSegment.h | 67 + .../include/asn_j2735_2020/RoadSegmentID.h | 47 + .../include/asn_j2735_2020/RoadSegmentList.h | 44 + .../asn_j2735_2020/RoadSegmentReferenceID.h | 42 + .../include/asn_j2735_2020/RoadSideAlert.h | 75 + .../include/asn_j2735_2020/RoadSignID.h | 46 + .../asn_j2735_2020/RoadwayCrownAngle.h | 47 + .../Asn_J2735/include/asn_j2735_2020/SPAT.h | 59 + .../include/asn_j2735_2020/SPAT_TimeMark.h | 47 + .../include/asn_j2735_2020/SSPindex.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Sample.h | 41 + .../include/asn_j2735_2020/Scale-B12.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Second.h | 47 + .../include/asn_j2735_2020/SecondOfTime.h | 47 + .../include/asn_j2735_2020/SecondsAngle.h | 47 + .../asn_j2735_2020/SegmentAttributeLL.h | 93 + .../asn_j2735_2020/SegmentAttributeLLList.h | 42 + .../asn_j2735_2020/SegmentAttributeXY.h | 93 + .../asn_j2735_2020/SegmentAttributeXYList.h | 42 + .../asn_j2735_2020/SemiMajorAxisAccuracy.h | 47 + .../asn_j2735_2020/SemiMajorAxisOrientation.h | 47 + .../asn_j2735_2020/SemiMinorAxisAccuracy.h | 47 + .../include/asn_j2735_2020/ShapePointSet.h | 52 + .../include/asn_j2735_2020/SignPrority.h | 47 + .../asn_j2735_2020/SignalControlZone.h | 44 + .../include/asn_j2735_2020/SignalGroupID.h | 47 + .../asn_j2735_2020/SignalHeadLocation.h | 46 + .../asn_j2735_2020/SignalHeadLocationList.h | 44 + .../include/asn_j2735_2020/SignalReqScheme.h | 46 + .../include/asn_j2735_2020/SignalRequest.h | 63 + .../asn_j2735_2020/SignalRequestList.h | 44 + .../asn_j2735_2020/SignalRequestMessage.h | 63 + .../asn_j2735_2020/SignalRequestPackage.h | 60 + .../asn_j2735_2020/SignalRequesterInfo.h | 54 + .../include/asn_j2735_2020/SignalStatus.h | 59 + .../include/asn_j2735_2020/SignalStatusList.h | 44 + .../asn_j2735_2020/SignalStatusMessage.h | 61 + .../asn_j2735_2020/SignalStatusPackage.h | 66 + .../asn_j2735_2020/SignalStatusPackageList.h | 44 + .../include/asn_j2735_2020/SirenInUse.h | 56 + .../include/asn_j2735_2020/Snapshot.h | 50 + .../include/asn_j2735_2020/SnapshotDistance.h | 44 + .../include/asn_j2735_2020/SnapshotTime.h | 44 + .../asn_j2735_2020/SpecialVehicleExtensions.h | 50 + .../Asn_J2735/include/asn_j2735_2020/Speed.h | 47 + .../include/asn_j2735_2020/SpeedAdvice.h | 47 + .../include/asn_j2735_2020/SpeedConfidence.h | 60 + .../include/asn_j2735_2020/SpeedLimit.h | 69 + .../include/asn_j2735_2020/SpeedLimitList.h | 44 + .../include/asn_j2735_2020/SpeedLimitType.h | 68 + .../include/asn_j2735_2020/SpeedProfile.h | 44 + .../asn_j2735_2020/SpeedProfileMeasurement.h | 47 + .../SpeedProfileMeasurementList.h | 42 + .../SpeedandHeadingandThrottleConfidence.h | 44 + .../asn_j2735_2020/StabilityControlStatus.h | 56 + .../include/asn_j2735_2020/StationID.h | 48 + .../asn_j2735_2020/SteeringAxleLubePressure.h | 47 + .../asn_j2735_2020/SteeringAxleTemperature.h | 47 + .../asn_j2735_2020/SteeringWheelAngle.h | 47 + .../SteeringWheelAngleConfidence.h | 56 + .../SteeringWheelAngleRateOfChange.h | 47 + .../include/asn_j2735_2020/SummerTime.h | 54 + .../include/asn_j2735_2020/SunSensor.h | 47 + .../SupplementalVehicleExtensions.h | 71 + .../include/asn_j2735_2020/TemporaryID.h | 47 + .../include/asn_j2735_2020/TenthSecond.h | 47 + .../include/asn_j2735_2020/TermDistance.h | 47 + .../include/asn_j2735_2020/TermTime.h | 47 + .../include/asn_j2735_2020/TestMessage00.h | 48 + .../include/asn_j2735_2020/TestMessage01.h | 48 + .../include/asn_j2735_2020/TestMessage02.h | 48 + .../include/asn_j2735_2020/TestMessage03.h | 48 + .../include/asn_j2735_2020/TestMessage04.h | 48 + .../include/asn_j2735_2020/TestMessage05.h | 48 + .../include/asn_j2735_2020/TestMessage06.h | 48 + .../include/asn_j2735_2020/TestMessage07.h | 48 + .../include/asn_j2735_2020/TestMessage08.h | 48 + .../include/asn_j2735_2020/TestMessage09.h | 48 + .../include/asn_j2735_2020/TestMessage10.h | 48 + .../include/asn_j2735_2020/TestMessage11.h | 48 + .../include/asn_j2735_2020/TestMessage12.h | 48 + .../include/asn_j2735_2020/TestMessage13.h | 48 + .../include/asn_j2735_2020/TestMessage14.h | 48 + .../include/asn_j2735_2020/TestMessage15.h | 48 + .../asn_j2735_2020/ThrottleConfidence.h | 56 + .../include/asn_j2735_2020/ThrottlePosition.h | 47 + .../asn_j2735_2020/TimeChangeDetails.h | 46 + .../include/asn_j2735_2020/TimeConfidence.h | 92 + .../asn_j2735_2020/TimeIntervalConfidence.h | 47 + .../include/asn_j2735_2020/TimeOffset.h | 47 + .../include/asn_j2735_2020/TimeRemaining.h | 47 + .../include/asn_j2735_2020/TireData.h | 56 + .../include/asn_j2735_2020/TireDataList.h | 44 + .../include/asn_j2735_2020/TireLeakageRate.h | 47 + .../include/asn_j2735_2020/TireLocation.h | 47 + .../include/asn_j2735_2020/TirePressure.h | 47 + .../TirePressureThresholdDetection.h | 60 + .../include/asn_j2735_2020/TireTemp.h | 47 + .../asn_j2735_2020/TractionControlStatus.h | 56 + .../include/asn_j2735_2020/TrailerData.h | 48 + .../asn_j2735_2020/TrailerHistoryPoint.h | 52 + .../asn_j2735_2020/TrailerHistoryPointList.h | 44 + .../include/asn_j2735_2020/TrailerMass.h | 47 + .../asn_j2735_2020/TrailerUnitDescription.h | 69 + .../TrailerUnitDescriptionList.h | 44 + .../include/asn_j2735_2020/TrailerWeight.h | 47 + .../include/asn_j2735_2020/TransitStatus.h | 56 + .../asn_j2735_2020/TransitVehicleOccupancy.h | 60 + .../asn_j2735_2020/TransitVehicleStatus.h | 57 + .../asn_j2735_2020/TransmissionAndSpeed.h | 42 + .../asn_j2735_2020/TransmissionState.h | 60 + .../asn_j2735_2020/TravelerDataFrame.h | 116 + .../asn_j2735_2020/TravelerDataFrameList.h | 44 + .../include/asn_j2735_2020/TravelerInfoType.h | 59 + .../asn_j2735_2020/TravelerInformation.h | 63 + .../include/asn_j2735_2020/URL-Base.h | 47 + .../include/asn_j2735_2020/URL-Link.h | 46 + .../include/asn_j2735_2020/URL-Short.h | 47 + .../include/asn_j2735_2020/UniqueMSGID.h | 47 + .../asn_j2735_2020/UserSizeAndBehaviour.h | 56 + .../include/asn_j2735_2020/VINstring.h | 47 + .../include/asn_j2735_2020/ValidRegion.h | 65 + .../asn_j2735_2020/VehicleClassification.h | 69 + .../include/asn_j2735_2020/VehicleData.h | 52 + .../asn_j2735_2020/VehicleEventFlags.h | 64 + .../asn_j2735_2020/VehicleGroupAffected.h | 90 + .../include/asn_j2735_2020/VehicleHeight.h | 47 + .../include/asn_j2735_2020/VehicleID.h | 53 + .../include/asn_j2735_2020/VehicleIdent.h | 77 + .../include/asn_j2735_2020/VehicleLength.h | 47 + .../include/asn_j2735_2020/VehicleMass.h | 47 + .../asn_j2735_2020/VehicleSafetyExtensions.h | 52 + .../include/asn_j2735_2020/VehicleSize.h | 42 + .../include/asn_j2735_2020/VehicleStatus.h | 147 + .../VehicleStatusDeviceTypeTag.h | 84 + .../asn_j2735_2020/VehicleStatusRequest.h | 50 + .../asn_j2735_2020/VehicleStatusRequestList.h | 44 + .../asn_j2735_2020/VehicleToLanePosition.h | 46 + .../VehicleToLanePositionList.h | 44 + .../include/asn_j2735_2020/VehicleType.h | 71 + .../include/asn_j2735_2020/VehicleWidth.h | 47 + .../include/asn_j2735_2020/Velocity.h | 47 + .../include/asn_j2735_2020/VertOffset-B07.h | 47 + .../include/asn_j2735_2020/VertOffset-B08.h | 47 + .../include/asn_j2735_2020/VertOffset-B09.h | 47 + .../include/asn_j2735_2020/VertOffset-B10.h | 47 + .../include/asn_j2735_2020/VertOffset-B11.h | 47 + .../include/asn_j2735_2020/VertOffset-B12.h | 47 + .../asn_j2735_2020/VerticalAcceleration.h | 47 + .../VerticalAccelerationThreshold.h | 56 + .../include/asn_j2735_2020/VerticalOffset.h | 68 + .../include/asn_j2735_2020/WaitOnStopline.h | 46 + .../include/asn_j2735_2020/WeatherProbe.h | 50 + .../include/asn_j2735_2020/WeatherReport.h | 54 + .../asn_j2735_2020/WheelEndElectFault.h | 56 + .../asn_j2735_2020/WheelSensorStatus.h | 56 + .../include/asn_j2735_2020/WiperRate.h | 47 + .../include/asn_j2735_2020/WiperSet.h | 44 + .../include/asn_j2735_2020/WiperStatus.h | 62 + .../include/asn_j2735_2020/WorkZone.h | 69 + .../include/asn_j2735_2020/YawRate.h | 47 + .../asn_j2735_2020/YawRateConfidence.h | 60 + .../Asn_J2735/include/asn_j2735_2020/Year.h | 47 + .../include/asn_j2735_2020/ZoneLength.h | 47 + .../Asn_J2735/include/asn_j2735_2020/Zoom.h | 47 + .../include/asn_j2735_2020/aper_decoder.h | 47 + .../include/asn_j2735_2020/aper_encoder.h | 63 + .../include/asn_j2735_2020/aper_opentype.h | 30 + .../include/asn_j2735_2020/aper_support.h | 63 + .../include/asn_j2735_2020/asn_SEQUENCE_OF.h | 52 + .../include/asn_j2735_2020/asn_SET_OF.h | 72 + .../include/asn_j2735_2020/asn_application.h | 173 + .../include/asn_j2735_2020/asn_bit_data.h | 83 + .../include/asn_j2735_2020/asn_codecs.h | 108 + .../include/asn_j2735_2020/asn_codecs_prim.h | 56 + .../include/asn_j2735_2020/asn_config.h | 2 + .../include/asn_j2735_2020/asn_constant.h | 308 + .../include/asn_j2735_2020/asn_internal.h | 187 + .../include/asn_j2735_2020/asn_ioc.h | 51 + .../include/asn_j2735_2020/asn_random_fill.h | 51 + .../include/asn_j2735_2020/asn_system.h | 169 + .../include/asn_j2735_2020/ber_decoder.h | 66 + .../include/asn_j2735_2020/ber_tlv_length.h | 50 + .../include/asn_j2735_2020/ber_tlv_tag.h | 60 + .../include/asn_j2735_2020/constr_CHOICE.h | 119 + .../include/asn_j2735_2020/constr_SEQUENCE.h | 95 + .../asn_j2735_2020/constr_SEQUENCE_OF.h | 67 + .../include/asn_j2735_2020/constr_SET_OF.h | 102 + .../include/asn_j2735_2020/constr_TYPE.h | 295 + .../include/asn_j2735_2020/constraints.h | 63 + .../include/asn_j2735_2020/der_encoder.h | 68 + .../include/asn_j2735_2020/jer_encoder.h | 86 + .../include/asn_j2735_2020/oer_decoder.h | 72 + .../include/asn_j2735_2020/oer_encoder.h | 70 + .../include/asn_j2735_2020/oer_support.h | 47 + .../include/asn_j2735_2020/per_decoder.h | 30 + .../include/asn_j2735_2020/per_encoder.h | 38 + .../include/asn_j2735_2020/per_opentype.h | 24 + .../include/asn_j2735_2020/per_support.h | 54 + .../include/asn_j2735_2020/uper_decoder.h | 47 + .../include/asn_j2735_2020/uper_encoder.h | 62 + .../include/asn_j2735_2020/uper_opentype.h | 34 + .../include/asn_j2735_2020/uper_support.h | 77 + .../include/asn_j2735_2020/xer_decoder.h | 106 + .../include/asn_j2735_2020/xer_encoder.h | 83 + .../include/asn_j2735_2020/xer_support.h | 55 + src/tmx/Asn_J2735/src/2020/ANY.c | 80 + src/tmx/Asn_J2735/src/2020/ANY_aper.c | 190 + src/tmx/Asn_J2735/src/2020/ANY_ber.c | 116 + src/tmx/Asn_J2735/src/2020/ANY_jer.c | 17 + src/tmx/Asn_J2735/src/2020/ANY_uper.c | 108 + src/tmx/Asn_J2735/src/2020/ANY_xer.c | 22 + .../src/2020/AccelSteerYawRateConfidence.c | 102 + src/tmx/Asn_J2735/src/2020/Acceleration.c | 76 + .../src/2020/AccelerationConfidence.c | 80 + .../Asn_J2735/src/2020/AccelerationSet4Way.c | 120 + src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c | 76 + .../Asn_J2735/src/2020/AddGrpB_Elevation.c | 76 + src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c | 76 + src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c | 228 + src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c | 262 + .../Asn_J2735/src/2020/AdvisorySpeedList.c | 73 + .../Asn_J2735/src/2020/AdvisorySpeedType.c | 74 + src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c | 82 + src/tmx/Asn_J2735/src/2020/Altitude.c | 84 + .../Asn_J2735/src/2020/AltitudeConfidence.c | 96 + src/tmx/Asn_J2735/src/2020/AltitudeValue.c | 76 + .../Asn_J2735/src/2020/AmbientAirPressure.c | 76 + .../src/2020/AmbientAirTemperature.c | 76 + .../Asn_J2735/src/2020/AnimalPropelledType.c | 74 + src/tmx/Asn_J2735/src/2020/AnimalType.c | 74 + src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c | 102 + .../Asn_J2735/src/2020/AntiLockBrakeStatus.c | 72 + src/tmx/Asn_J2735/src/2020/ApproachID.c | 76 + src/tmx/Asn_J2735/src/2020/ApproachOrLane.c | 93 + src/tmx/Asn_J2735/src/2020/Attachment.c | 80 + src/tmx/Asn_J2735/src/2020/AttachmentRadius.c | 76 + .../Asn_J2735/src/2020/AuxiliaryBrakeStatus.c | 72 + src/tmx/Asn_J2735/src/2020/AxleLocation.c | 76 + src/tmx/Asn_J2735/src/2020/AxleWeight.c | 76 + src/tmx/Asn_J2735/src/2020/AxleWeightList.c | 73 + src/tmx/Asn_J2735/src/2020/AxleWeightSet.c | 86 + src/tmx/Asn_J2735/src/2020/BIT_STRING.c | 213 + src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c | 60 + src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c | 168 + src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c | 69 + src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c | 124 + src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c | 244 + src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c | 70 + src/tmx/Asn_J2735/src/2020/BOOLEAN.c | 128 + src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c | 61 + src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c | 104 + src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c | 32 + src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c | 54 + src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c | 33 + src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c | 56 + src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c | 58 + src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c | 74 + src/tmx/Asn_J2735/src/2020/BSMcoreData.c | 300 + .../Asn_J2735/src/2020/BasicSafetyMessage.c | 312 + .../Asn_J2735/src/2020/BasicVehicleClass.c | 76 + src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c | 112 + .../Asn_J2735/src/2020/BrakeAppliedPressure.c | 96 + .../Asn_J2735/src/2020/BrakeAppliedStatus.c | 82 + .../Asn_J2735/src/2020/BrakeBoostApplied.c | 70 + .../Asn_J2735/src/2020/BrakeSystemStatus.c | 156 + src/tmx/Asn_J2735/src/2020/BumperHeight.c | 76 + src/tmx/Asn_J2735/src/2020/BumperHeights.c | 84 + src/tmx/Asn_J2735/src/2020/CargoWeight.c | 76 + src/tmx/Asn_J2735/src/2020/Circle.c | 102 + src/tmx/Asn_J2735/src/2020/CoarseHeading.c | 76 + src/tmx/Asn_J2735/src/2020/CodeWord.c | 77 + .../src/2020/CoefficientOfFriction.c | 76 + .../Asn_J2735/src/2020/CommonSafetyRequest.c | 244 + src/tmx/Asn_J2735/src/2020/Common_Angle.c | 76 + src/tmx/Asn_J2735/src/2020/Common_Elevation.c | 76 + src/tmx/Asn_J2735/src/2020/Common_MsgCount.c | 76 + src/tmx/Asn_J2735/src/2020/ComputedLane.c | 450 + src/tmx/Asn_J2735/src/2020/Confidence.c | 76 + src/tmx/Asn_J2735/src/2020/ConfidenceSet.c | 179 + src/tmx/Asn_J2735/src/2020/ConnectingLane.c | 86 + src/tmx/Asn_J2735/src/2020/Connection.c | 141 + .../2020/ConnectionManeuverAssist-addGrpC.c | 87 + .../src/2020/ConnectionManeuverAssist.c | 262 + src/tmx/Asn_J2735/src/2020/ConnectsToList.c | 73 + src/tmx/Asn_J2735/src/2020/Count.c | 76 + src/tmx/Asn_J2735/src/2020/DDate.c | 102 + src/tmx/Asn_J2735/src/2020/DDateTime.c | 176 + src/tmx/Asn_J2735/src/2020/DDay.c | 76 + src/tmx/Asn_J2735/src/2020/DFullTime.c | 138 + src/tmx/Asn_J2735/src/2020/DHour.c | 76 + src/tmx/Asn_J2735/src/2020/DMinute.c | 76 + src/tmx/Asn_J2735/src/2020/DMonth.c | 76 + src/tmx/Asn_J2735/src/2020/DMonthDay.c | 84 + src/tmx/Asn_J2735/src/2020/DOffset.c | 76 + src/tmx/Asn_J2735/src/2020/DSRCmsgID.c | 76 + src/tmx/Asn_J2735/src/2020/DSecond.c | 76 + src/tmx/Asn_J2735/src/2020/DTime.c | 122 + src/tmx/Asn_J2735/src/2020/DYear.c | 76 + src/tmx/Asn_J2735/src/2020/DYearMonth.c | 84 + src/tmx/Asn_J2735/src/2020/DataParameters.c | 330 + src/tmx/Asn_J2735/src/2020/Day.c | 76 + src/tmx/Asn_J2735/src/2020/DayOfWeek.c | 80 + src/tmx/Asn_J2735/src/2020/DegreesLat.c | 76 + src/tmx/Asn_J2735/src/2020/DegreesLong.c | 76 + src/tmx/Asn_J2735/src/2020/DeltaAngle.c | 76 + src/tmx/Asn_J2735/src/2020/DeltaTime.c | 76 + src/tmx/Asn_J2735/src/2020/DescriptiveName.c | 91 + src/tmx/Asn_J2735/src/2020/DirectionOfUse.c | 72 + src/tmx/Asn_J2735/src/2020/DisabledVehicle.c | 123 + src/tmx/Asn_J2735/src/2020/DistanceUnits.c | 80 + .../src/2020/DriveAxleLiftAirPressure.c | 76 + .../Asn_J2735/src/2020/DriveAxleLocation.c | 76 + .../src/2020/DriveAxleLubePressure.c | 76 + .../Asn_J2735/src/2020/DriveAxleTemperature.c | 76 + .../Asn_J2735/src/2020/DrivenLineOffsetLg.c | 76 + .../Asn_J2735/src/2020/DrivenLineOffsetSm.c | 76 + .../Asn_J2735/src/2020/DrivingWheelAngle.c | 76 + src/tmx/Asn_J2735/src/2020/Duration.c | 76 + src/tmx/Asn_J2735/src/2020/EXTERNAL.c | 228 + .../Asn_J2735/src/2020/ElevationConfidence.c | 96 + src/tmx/Asn_J2735/src/2020/EmergencyDetails.c | 159 + .../src/2020/EmergencyVehicleAlert.c | 353 + src/tmx/Asn_J2735/src/2020/EmissionType.c | 76 + src/tmx/Asn_J2735/src/2020/EnabledLaneList.c | 72 + .../Asn_J2735/src/2020/EssMobileFriction.c | 76 + src/tmx/Asn_J2735/src/2020/EssPrecipRate.c | 76 + .../Asn_J2735/src/2020/EssPrecipSituation.c | 94 + src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c | 70 + .../Asn_J2735/src/2020/EssSolarRadiation.c | 76 + src/tmx/Asn_J2735/src/2020/EventDescription.c | 365 + src/tmx/Asn_J2735/src/2020/ExitService.c | 215 + src/tmx/Asn_J2735/src/2020/Extent.c | 96 + src/tmx/Asn_J2735/src/2020/ExteriorLights.c | 82 + src/tmx/Asn_J2735/src/2020/FuelType.c | 76 + .../Asn_J2735/src/2020/FullPositionVector.c | 235 + src/tmx/Asn_J2735/src/2020/FurtherInfoID.c | 77 + src/tmx/Asn_J2735/src/2020/GNSSstatus.c | 82 + src/tmx/Asn_J2735/src/2020/GenericLane.c | 336 + src/tmx/Asn_J2735/src/2020/GenericLocations.c | 258 + src/tmx/Asn_J2735/src/2020/GenericSignage.c | 215 + src/tmx/Asn_J2735/src/2020/GeographicalPath.c | 421 + .../Asn_J2735/src/2020/GeometricProjection.c | 244 + src/tmx/Asn_J2735/src/2020/GraphicString.c | 91 + src/tmx/Asn_J2735/src/2020/GrossDistance.c | 76 + src/tmx/Asn_J2735/src/2020/GrossSpeed.c | 76 + src/tmx/Asn_J2735/src/2020/Header.c | 122 + src/tmx/Asn_J2735/src/2020/Heading.c | 76 + .../Asn_J2735/src/2020/HeadingConfidence.c | 80 + src/tmx/Asn_J2735/src/2020/HeadingSlice.c | 82 + src/tmx/Asn_J2735/src/2020/Holiday.c | 68 + src/tmx/Asn_J2735/src/2020/Hour.c | 76 + .../Asn_J2735/src/2020/HumanPropelledType.c | 78 + src/tmx/Asn_J2735/src/2020/IA5String.c | 133 + src/tmx/Asn_J2735/src/2020/INTEGER.c | 738 + src/tmx/Asn_J2735/src/2020/INTEGER_aper.c | 308 + src/tmx/Asn_J2735/src/2020/INTEGER_ber.c | 72 + src/tmx/Asn_J2735/src/2020/INTEGER_jer.c | 26 + src/tmx/Asn_J2735/src/2020/INTEGER_oer.c | 174 + src/tmx/Asn_J2735/src/2020/INTEGER_print.c | 26 + src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c | 92 + src/tmx/Asn_J2735/src/2020/INTEGER_uper.c | 236 + src/tmx/Asn_J2735/src/2020/INTEGER_xer.c | 351 + src/tmx/Asn_J2735/src/2020/ITIScodes.c | 76 + src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c | 215 + src/tmx/Asn_J2735/src/2020/ITIStext.c | 91 + src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c | 91 + .../src/2020/IncidentResponseEquipment.c | 210 + .../src/2020/IntersectionAccessPoint.c | 111 + .../src/2020/IntersectionCollision.c | 337 + .../Asn_J2735/src/2020/IntersectionGeometry.c | 318 + .../src/2020/IntersectionGeometryList.c | 73 + src/tmx/Asn_J2735/src/2020/IntersectionID.c | 76 + .../src/2020/IntersectionReferenceID.c | 86 + .../src/2020/IntersectionState-addGrpC.c | 69 + .../Asn_J2735/src/2020/IntersectionState.c | 336 + .../src/2020/IntersectionStateList.c | 73 + .../src/2020/IntersectionStatusObject.c | 82 + src/tmx/Asn_J2735/src/2020/IsDolly.c | 39 + .../Asn_J2735/src/2020/Iso3833VehicleType.c | 76 + src/tmx/Asn_J2735/src/2020/J1939data.c | 232 + .../src/2020/LaneAttributes-Barrier.c | 82 + .../Asn_J2735/src/2020/LaneAttributes-Bike.c | 82 + .../src/2020/LaneAttributes-Crosswalk.c | 82 + .../src/2020/LaneAttributes-Parking.c | 82 + .../src/2020/LaneAttributes-Sidewalk.c | 82 + .../src/2020/LaneAttributes-Striping.c | 82 + .../src/2020/LaneAttributes-TrackedVehicle.c | 82 + .../src/2020/LaneAttributes-Vehicle.c | 82 + src/tmx/Asn_J2735/src/2020/LaneAttributes.c | 123 + src/tmx/Asn_J2735/src/2020/LaneConnectionID.c | 76 + .../src/2020/LaneDataAttribute-addGrpB.c | 43 + .../Asn_J2735/src/2020/LaneDataAttribute.c | 287 + .../src/2020/LaneDataAttributeList.c | 73 + src/tmx/Asn_J2735/src/2020/LaneDirection.c | 82 + src/tmx/Asn_J2735/src/2020/LaneID.c | 76 + src/tmx/Asn_J2735/src/2020/LaneList.c | 73 + src/tmx/Asn_J2735/src/2020/LaneSharing.c | 82 + .../Asn_J2735/src/2020/LaneTypeAttributes.c | 201 + src/tmx/Asn_J2735/src/2020/LaneWidth.c | 76 + src/tmx/Asn_J2735/src/2020/Latitude.c | 76 + src/tmx/Asn_J2735/src/2020/LatitudeDMS.c | 76 + src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c | 102 + src/tmx/Asn_J2735/src/2020/LayerID.c | 76 + src/tmx/Asn_J2735/src/2020/LayerType.c | 82 + src/tmx/Asn_J2735/src/2020/LightbarInUse.c | 80 + src/tmx/Asn_J2735/src/2020/Location-quality.c | 80 + src/tmx/Asn_J2735/src/2020/Location-tech.c | 86 + src/tmx/Asn_J2735/src/2020/Longitude.c | 76 + src/tmx/Asn_J2735/src/2020/LongitudeDMS.c | 76 + src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c | 102 + src/tmx/Asn_J2735/src/2020/MUTCDCode.c | 80 + .../Asn_J2735/src/2020/ManeuverAssistList.c | 73 + src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c | 69 + src/tmx/Asn_J2735/src/2020/MapData.c | 320 + src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c | 76 + .../src/2020/MergeDivergeNodeAngle.c | 76 + src/tmx/Asn_J2735/src/2020/MessageBLOB.c | 77 + src/tmx/Asn_J2735/src/2020/MessageFrame.c | 872 ++ src/tmx/Asn_J2735/src/2020/MinTimetoChange.c | 76 + src/tmx/Asn_J2735/src/2020/Minute.c | 76 + src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c | 76 + src/tmx/Asn_J2735/src/2020/MinutesAngle.c | 76 + src/tmx/Asn_J2735/src/2020/MinutesDuration.c | 76 + src/tmx/Asn_J2735/src/2020/Month.c | 76 + .../src/2020/MotorizedPropelledType.c | 78 + .../src/2020/MovementEvent-addGrpB.c | 158 + src/tmx/Asn_J2735/src/2020/MovementEvent.c | 228 + .../Asn_J2735/src/2020/MovementEventList.c | 73 + src/tmx/Asn_J2735/src/2020/MovementList.c | 73 + .../Asn_J2735/src/2020/MovementPhaseState.c | 84 + src/tmx/Asn_J2735/src/2020/MovementState.c | 245 + src/tmx/Asn_J2735/src/2020/MsgCRC.c | 77 + .../Asn_J2735/src/2020/MultiVehicleResponse.c | 72 + src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c | 76 + src/tmx/Asn_J2735/src/2020/NMEA-Payload.c | 77 + src/tmx/Asn_J2735/src/2020/NMEA-Revision.c | 80 + src/tmx/Asn_J2735/src/2020/NMEAcorrections.c | 262 + src/tmx/Asn_J2735/src/2020/NativeEnumerated.c | 108 + .../src/2020/NativeEnumerated_aper.c | 157 + .../Asn_J2735/src/2020/NativeEnumerated_jer.c | 36 + .../Asn_J2735/src/2020/NativeEnumerated_oer.c | 144 + .../src/2020/NativeEnumerated_uper.c | 135 + .../Asn_J2735/src/2020/NativeEnumerated_xer.c | 36 + src/tmx/Asn_J2735/src/2020/NativeInteger.c | 152 + .../Asn_J2735/src/2020/NativeInteger_aper.c | 69 + .../Asn_J2735/src/2020/NativeInteger_ber.c | 130 + .../Asn_J2735/src/2020/NativeInteger_jer.c | 32 + .../Asn_J2735/src/2020/NativeInteger_oer.c | 94 + .../Asn_J2735/src/2020/NativeInteger_print.c | 43 + .../Asn_J2735/src/2020/NativeInteger_rfill.c | 83 + .../Asn_J2735/src/2020/NativeInteger_uper.c | 70 + .../Asn_J2735/src/2020/NativeInteger_xer.c | 78 + src/tmx/Asn_J2735/src/2020/Node-LL-24B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LL-28B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LL-32B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LL-36B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LL-44B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LL-48B.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-20b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-22b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-24b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-26b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-28b.c | 84 + src/tmx/Asn_J2735/src/2020/Node-XY-32b.c | 84 + src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c | 90 + .../Asn_J2735/src/2020/NodeAttributeLLList.c | 72 + .../Asn_J2735/src/2020/NodeAttributeSetLL.c | 283 + .../Asn_J2735/src/2020/NodeAttributeSetXY.c | 283 + src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c | 90 + .../Asn_J2735/src/2020/NodeAttributeXYList.c | 72 + src/tmx/Asn_J2735/src/2020/NodeLL.c | 87 + src/tmx/Asn_J2735/src/2020/NodeListLL.c | 75 + src/tmx/Asn_J2735/src/2020/NodeListXY.c | 93 + .../Asn_J2735/src/2020/NodeOffsetPointLL.c | 201 + .../src/2020/NodeOffsetPointXY-addGrpB.c | 93 + .../Asn_J2735/src/2020/NodeOffsetPointXY.c | 201 + src/tmx/Asn_J2735/src/2020/NodeSetLL.c | 73 + src/tmx/Asn_J2735/src/2020/NodeSetXY.c | 73 + src/tmx/Asn_J2735/src/2020/NodeXY.c | 87 + .../src/2020/NumberOfParticipantsInCluster.c | 74 + .../Asn_J2735/src/2020/OBJECT_IDENTIFIER.c | 532 + .../src/2020/OBJECT_IDENTIFIER_jer.c | 28 + .../src/2020/OBJECT_IDENTIFIER_print.c | 30 + .../src/2020/OBJECT_IDENTIFIER_rfill.c | 73 + .../src/2020/OBJECT_IDENTIFIER_xer.c | 80 + src/tmx/Asn_J2735/src/2020/OCTET_STRING.c | 383 + .../Asn_J2735/src/2020/OCTET_STRING_aper.c | 414 + src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c | 525 + src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c | 148 + src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c | 166 + .../Asn_J2735/src/2020/OCTET_STRING_print.c | 65 + .../Asn_J2735/src/2020/OCTET_STRING_rfill.c | 209 + .../Asn_J2735/src/2020/OCTET_STRING_uper.c | 319 + src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c | 627 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c | 63 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c | 173 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c | 90 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c | 91 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c | 119 + src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c | 166 + src/tmx/Asn_J2735/src/2020/ObjectCount.c | 76 + src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c | 91 + .../Asn_J2735/src/2020/ObstacleDetection.c | 195 + .../Asn_J2735/src/2020/ObstacleDirection.c | 76 + src/tmx/Asn_J2735/src/2020/ObstacleDistance.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B09.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B10.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B11.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B12.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B13.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B14.c | 76 + src/tmx/Asn_J2735/src/2020/Offset-B16.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c | 76 + src/tmx/Asn_J2735/src/2020/OffsetSystem.c | 171 + src/tmx/Asn_J2735/src/2020/OverlayLaneList.c | 72 + src/tmx/Asn_J2735/src/2020/PartII-Id.c | 76 + src/tmx/Asn_J2735/src/2020/PartIIcontent.c | 284 + src/tmx/Asn_J2735/src/2020/PathHistory.c | 105 + src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c | 177 + .../Asn_J2735/src/2020/PathHistoryPointList.c | 73 + src/tmx/Asn_J2735/src/2020/PathPrediction.c | 84 + src/tmx/Asn_J2735/src/2020/PayloadData.c | 77 + .../src/2020/PedestrianBicycleDetect.c | 39 + .../Asn_J2735/src/2020/PersonalAssistive.c | 82 + .../src/2020/PersonalClusterRadius.c | 76 + .../src/2020/PersonalCrossingInProgress.c | 39 + .../src/2020/PersonalCrossingRequest.c | 39 + .../src/2020/PersonalDeviceUsageState.c | 82 + .../src/2020/PersonalDeviceUserType.c | 76 + .../src/2020/PersonalSafetyMessage.c | 626 + .../src/2020/PivotPointDescription.c | 102 + src/tmx/Asn_J2735/src/2020/PivotingAllowed.c | 39 + .../Asn_J2735/src/2020/Position3D-addGrpB.c | 102 + .../Asn_J2735/src/2020/Position3D-addGrpC.c | 66 + src/tmx/Asn_J2735/src/2020/Position3D.c | 226 + .../Asn_J2735/src/2020/PositionConfidence.c | 96 + .../src/2020/PositionConfidenceSet.c | 84 + .../Asn_J2735/src/2020/PositionalAccuracy.c | 102 + .../Asn_J2735/src/2020/PreemptPriorityList.c | 73 + .../src/2020/PrioritizationResponse.c | 102 + .../src/2020/PrioritizationResponseList.c | 73 + .../src/2020/PrioritizationResponseStatus.c | 82 + src/tmx/Asn_J2735/src/2020/Priority.c | 77 + .../Asn_J2735/src/2020/PriorityRequestType.c | 74 + .../Asn_J2735/src/2020/PrivilegedEventFlags.c | 82 + src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c | 84 + .../Asn_J2735/src/2020/ProbeDataManagement.c | 469 + .../Asn_J2735/src/2020/ProbeSegmentNumber.c | 76 + src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c | 385 + .../Asn_J2735/src/2020/PropelledInformation.c | 111 + .../2020/PublicSafetyAndRoadWorkerActivity.c | 82 + .../PublicSafetyDirectingTrafficSubType.c | 82 + .../PublicSafetyEventResponderWorkerType.c | 82 + src/tmx/Asn_J2735/src/2020/RTCM-Revision.c | 74 + src/tmx/Asn_J2735/src/2020/RTCMPackage.c | 87 + src/tmx/Asn_J2735/src/2020/RTCMcorrections.c | 282 + src/tmx/Asn_J2735/src/2020/RTCMheader.c | 84 + src/tmx/Asn_J2735/src/2020/RTCMmessage.c | 77 + src/tmx/Asn_J2735/src/2020/RTCMmessageList.c | 72 + src/tmx/Asn_J2735/src/2020/Radius-B12.c | 76 + .../Asn_J2735/src/2020/RadiusOfCurvature.c | 76 + src/tmx/Asn_J2735/src/2020/RainSensor.c | 80 + src/tmx/Asn_J2735/src/2020/RegionId.c | 76 + src/tmx/Asn_J2735/src/2020/RegionList.c | 73 + src/tmx/Asn_J2735/src/2020/RegionOffsets.c | 104 + src/tmx/Asn_J2735/src/2020/RegionPointSet.c | 105 + .../Asn_J2735/src/2020/RegionalExtension.c | 11120 ++++++++++++++++ .../Asn_J2735/src/2020/RegulatorySpeedLimit.c | 84 + src/tmx/Asn_J2735/src/2020/RequestID.c | 76 + .../src/2020/RequestImportanceLevel.c | 96 + src/tmx/Asn_J2735/src/2020/RequestSubRole.c | 96 + src/tmx/Asn_J2735/src/2020/RequestedItem.c | 100 + .../Asn_J2735/src/2020/RequestedItemList.c | 72 + .../Asn_J2735/src/2020/RequestorDescription.c | 318 + .../src/2020/RequestorPositionVector.c | 105 + src/tmx/Asn_J2735/src/2020/RequestorType.c | 159 + .../src/2020/ResponderGroupAffected.c | 94 + src/tmx/Asn_J2735/src/2020/ResponseType.c | 80 + .../Asn_J2735/src/2020/RestrictionAppliesTo.c | 94 + .../src/2020/RestrictionClassAssignment.c | 84 + .../Asn_J2735/src/2020/RestrictionClassID.c | 76 + .../Asn_J2735/src/2020/RestrictionClassList.c | 73 + .../src/2020/RestrictionUserType-addGrpC.c | 68 + .../Asn_J2735/src/2020/RestrictionUserType.c | 197 + .../src/2020/RestrictionUserTypeList.c | 73 + src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c | 73 + src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c | 76 + src/tmx/Asn_J2735/src/2020/RoadSegment.c | 299 + src/tmx/Asn_J2735/src/2020/RoadSegmentID.c | 76 + src/tmx/Asn_J2735/src/2020/RoadSegmentList.c | 73 + .../src/2020/RoadSegmentReferenceID.c | 86 + src/tmx/Asn_J2735/src/2020/RoadSideAlert.c | 438 + src/tmx/Asn_J2735/src/2020/RoadSignID.c | 122 + .../Asn_J2735/src/2020/RoadwayCrownAngle.c | 76 + src/tmx/Asn_J2735/src/2020/SPAT.c | 226 + src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c | 76 + src/tmx/Asn_J2735/src/2020/SSPindex.c | 76 + src/tmx/Asn_J2735/src/2020/Sample.c | 158 + src/tmx/Asn_J2735/src/2020/Scale-B12.c | 76 + src/tmx/Asn_J2735/src/2020/Second.c | 76 + src/tmx/Asn_J2735/src/2020/SecondOfTime.c | 76 + src/tmx/Asn_J2735/src/2020/SecondsAngle.c | 76 + .../Asn_J2735/src/2020/SegmentAttributeLL.c | 142 + .../src/2020/SegmentAttributeLLList.c | 72 + .../Asn_J2735/src/2020/SegmentAttributeXY.c | 142 + .../src/2020/SegmentAttributeXYList.c | 72 + .../src/2020/SemiMajorAxisAccuracy.c | 76 + .../src/2020/SemiMajorAxisOrientation.c | 76 + .../src/2020/SemiMinorAxisAccuracy.c | 76 + src/tmx/Asn_J2735/src/2020/ShapePointSet.c | 123 + src/tmx/Asn_J2735/src/2020/SignPrority.c | 76 + .../Asn_J2735/src/2020/SignalControlZone.c | 66 + src/tmx/Asn_J2735/src/2020/SignalGroupID.c | 76 + .../Asn_J2735/src/2020/SignalHeadLocation.c | 84 + .../src/2020/SignalHeadLocationList.c | 73 + src/tmx/Asn_J2735/src/2020/SignalReqScheme.c | 77 + src/tmx/Asn_J2735/src/2020/SignalRequest.c | 263 + .../Asn_J2735/src/2020/SignalRequestList.c | 73 + .../Asn_J2735/src/2020/SignalRequestMessage.c | 263 + .../Asn_J2735/src/2020/SignalRequestPackage.c | 244 + .../Asn_J2735/src/2020/SignalRequesterInfo.c | 141 + src/tmx/Asn_J2735/src/2020/SignalStatus.c | 226 + src/tmx/Asn_J2735/src/2020/SignalStatusList.c | 73 + .../Asn_J2735/src/2020/SignalStatusMessage.c | 244 + .../Asn_J2735/src/2020/SignalStatusPackage.c | 300 + .../src/2020/SignalStatusPackageList.c | 73 + src/tmx/Asn_J2735/src/2020/SirenInUse.c | 72 + src/tmx/Asn_J2735/src/2020/Snapshot.c | 106 + src/tmx/Asn_J2735/src/2020/SnapshotDistance.c | 120 + src/tmx/Asn_J2735/src/2020/SnapshotTime.c | 120 + .../src/2020/SpecialVehicleExtensions.c | 107 + src/tmx/Asn_J2735/src/2020/Speed.c | 76 + src/tmx/Asn_J2735/src/2020/SpeedAdvice.c | 76 + src/tmx/Asn_J2735/src/2020/SpeedConfidence.c | 80 + src/tmx/Asn_J2735/src/2020/SpeedLimit.c | 215 + src/tmx/Asn_J2735/src/2020/SpeedLimitList.c | 73 + src/tmx/Asn_J2735/src/2020/SpeedLimitType.c | 92 + src/tmx/Asn_J2735/src/2020/SpeedProfile.c | 66 + .../src/2020/SpeedProfileMeasurement.c | 76 + .../src/2020/SpeedProfileMeasurementList.c | 72 + .../SpeedandHeadingandThrottleConfidence.c | 102 + .../src/2020/StabilityControlStatus.c | 72 + src/tmx/Asn_J2735/src/2020/StationID.c | 72 + .../src/2020/SteeringAxleLubePressure.c | 76 + .../src/2020/SteeringAxleTemperature.c | 76 + .../Asn_J2735/src/2020/SteeringWheelAngle.c | 76 + .../src/2020/SteeringWheelAngleConfidence.c | 72 + .../src/2020/SteeringWheelAngleRateOfChange.c | 76 + src/tmx/Asn_J2735/src/2020/SummerTime.c | 68 + src/tmx/Asn_J2735/src/2020/SunSensor.c | 76 + .../src/2020/SupplementalVehicleExtensions.c | 342 + src/tmx/Asn_J2735/src/2020/TemporaryID.c | 77 + src/tmx/Asn_J2735/src/2020/TenthSecond.c | 76 + src/tmx/Asn_J2735/src/2020/TermDistance.c | 76 + src/tmx/Asn_J2735/src/2020/TermTime.c | 76 + src/tmx/Asn_J2735/src/2020/TestMessage00.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage01.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage02.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage03.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage04.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage05.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage06.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage07.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage08.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage09.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage10.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage11.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage12.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage13.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage14.c | 88 + src/tmx/Asn_J2735/src/2020/TestMessage15.c | 88 + .../Asn_J2735/src/2020/ThrottleConfidence.c | 72 + src/tmx/Asn_J2735/src/2020/ThrottlePosition.c | 76 + .../Asn_J2735/src/2020/TimeChangeDetails.c | 158 + src/tmx/Asn_J2735/src/2020/TimeConfidence.c | 144 + .../src/2020/TimeIntervalConfidence.c | 76 + src/tmx/Asn_J2735/src/2020/TimeOffset.c | 76 + src/tmx/Asn_J2735/src/2020/TimeRemaining.c | 76 + src/tmx/Asn_J2735/src/2020/TireData.c | 176 + src/tmx/Asn_J2735/src/2020/TireDataList.c | 73 + src/tmx/Asn_J2735/src/2020/TireLeakageRate.c | 76 + src/tmx/Asn_J2735/src/2020/TireLocation.c | 76 + src/tmx/Asn_J2735/src/2020/TirePressure.c | 76 + .../src/2020/TirePressureThresholdDetection.c | 80 + src/tmx/Asn_J2735/src/2020/TireTemp.c | 76 + .../src/2020/TractionControlStatus.c | 72 + src/tmx/Asn_J2735/src/2020/TrailerData.c | 102 + .../Asn_J2735/src/2020/TrailerHistoryPoint.c | 140 + .../src/2020/TrailerHistoryPointList.c | 73 + src/tmx/Asn_J2735/src/2020/TrailerMass.c | 76 + .../src/2020/TrailerUnitDescription.c | 287 + .../src/2020/TrailerUnitDescriptionList.c | 73 + src/tmx/Asn_J2735/src/2020/TrailerWeight.c | 76 + src/tmx/Asn_J2735/src/2020/TransitStatus.c | 82 + .../src/2020/TransitVehicleOccupancy.c | 80 + .../Asn_J2735/src/2020/TransitVehicleStatus.c | 82 + .../Asn_J2735/src/2020/TransmissionAndSpeed.c | 84 + .../Asn_J2735/src/2020/TransmissionState.c | 80 + .../Asn_J2735/src/2020/TravelerDataFrame.c | 612 + .../src/2020/TravelerDataFrameList.c | 73 + src/tmx/Asn_J2735/src/2020/TravelerInfoType.c | 74 + .../Asn_J2735/src/2020/TravelerInformation.c | 262 + src/tmx/Asn_J2735/src/2020/URL-Base.c | 91 + src/tmx/Asn_J2735/src/2020/URL-Link.c | 91 + src/tmx/Asn_J2735/src/2020/URL-Short.c | 91 + src/tmx/Asn_J2735/src/2020/UniqueMSGID.c | 77 + .../Asn_J2735/src/2020/UserSizeAndBehaviour.c | 82 + src/tmx/Asn_J2735/src/2020/VINstring.c | 77 + src/tmx/Asn_J2735/src/2020/ValidRegion.c | 207 + .../src/2020/VehicleClassification.c | 316 + src/tmx/Asn_J2735/src/2020/VehicleData.c | 123 + .../Asn_J2735/src/2020/VehicleEventFlags.c | 82 + .../Asn_J2735/src/2020/VehicleGroupAffected.c | 136 + src/tmx/Asn_J2735/src/2020/VehicleHeight.c | 76 + src/tmx/Asn_J2735/src/2020/VehicleID.c | 93 + src/tmx/Asn_J2735/src/2020/VehicleIdent.c | 314 + src/tmx/Asn_J2735/src/2020/VehicleLength.c | 76 + src/tmx/Asn_J2735/src/2020/VehicleMass.c | 76 + .../src/2020/VehicleSafetyExtensions.c | 124 + src/tmx/Asn_J2735/src/2020/VehicleSize.c | 84 + src/tmx/Asn_J2735/src/2020/VehicleStatus.c | 1061 ++ .../src/2020/VehicleStatusDeviceTypeTag.c | 124 + .../Asn_J2735/src/2020/VehicleStatusRequest.c | 251 + .../src/2020/VehicleStatusRequestList.c | 73 + .../src/2020/VehicleToLanePosition.c | 84 + .../src/2020/VehicleToLanePositionList.c | 73 + src/tmx/Asn_J2735/src/2020/VehicleType.c | 98 + src/tmx/Asn_J2735/src/2020/VehicleWidth.c | 76 + src/tmx/Asn_J2735/src/2020/Velocity.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B07.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B08.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B09.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B10.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B11.c | 76 + src/tmx/Asn_J2735/src/2020/VertOffset-B12.c | 76 + .../Asn_J2735/src/2020/VerticalAcceleration.c | 76 + .../src/2020/VerticalAccelerationThreshold.c | 82 + src/tmx/Asn_J2735/src/2020/VerticalOffset.c | 201 + src/tmx/Asn_J2735/src/2020/WaitOnStopline.c | 39 + src/tmx/Asn_J2735/src/2020/WeatherProbe.c | 105 + src/tmx/Asn_J2735/src/2020/WeatherReport.c | 158 + .../Asn_J2735/src/2020/WheelEndElectFault.c | 72 + .../Asn_J2735/src/2020/WheelSensorStatus.c | 72 + src/tmx/Asn_J2735/src/2020/WiperRate.c | 76 + src/tmx/Asn_J2735/src/2020/WiperSet.c | 122 + src/tmx/Asn_J2735/src/2020/WiperStatus.c | 80 + src/tmx/Asn_J2735/src/2020/WorkZone.c | 215 + src/tmx/Asn_J2735/src/2020/YawRate.c | 76 + .../Asn_J2735/src/2020/YawRateConfidence.c | 80 + src/tmx/Asn_J2735/src/2020/Year.c | 76 + src/tmx/Asn_J2735/src/2020/ZoneLength.c | 76 + src/tmx/Asn_J2735/src/2020/Zoom.c | 76 + src/tmx/Asn_J2735/src/2020/aper_decoder.c | 91 + src/tmx/Asn_J2735/src/2020/aper_encoder.c | 129 + src/tmx/Asn_J2735/src/2020/aper_opentype.c | 149 + src/tmx/Asn_J2735/src/2020/aper_support.c | 239 + src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c | 41 + src/tmx/Asn_J2735/src/2020/asn_SET_OF.c | 88 + src/tmx/Asn_J2735/src/2020/asn_application.c | 538 + src/tmx/Asn_J2735/src/2020/asn_bit_data.c | 333 + src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c | 31 + .../Asn_J2735/src/2020/asn_codecs_prim_ber.c | 115 + .../Asn_J2735/src/2020/asn_codecs_prim_xer.c | 184 + src/tmx/Asn_J2735/src/2020/asn_internal.c | 48 + src/tmx/Asn_J2735/src/2020/asn_random_fill.c | 66 + src/tmx/Asn_J2735/src/2020/ber_decoder.c | 283 + src/tmx/Asn_J2735/src/2020/ber_tlv_length.c | 168 + src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c | 144 + src/tmx/Asn_J2735/src/2020/constr_CHOICE.c | 358 + .../Asn_J2735/src/2020/constr_CHOICE_aper.c | 181 + .../Asn_J2735/src/2020/constr_CHOICE_ber.c | 447 + .../Asn_J2735/src/2020/constr_CHOICE_jer.c | 79 + .../Asn_J2735/src/2020/constr_CHOICE_oer.c | 375 + .../Asn_J2735/src/2020/constr_CHOICE_print.c | 48 + .../Asn_J2735/src/2020/constr_CHOICE_rfill.c | 60 + .../Asn_J2735/src/2020/constr_CHOICE_uper.c | 191 + .../Asn_J2735/src/2020/constr_CHOICE_xer.c | 316 + src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c | 197 + .../Asn_J2735/src/2020/constr_SEQUENCE_OF.c | 92 + .../src/2020/constr_SEQUENCE_OF_aper.c | 88 + .../src/2020/constr_SEQUENCE_OF_ber.c | 88 + .../src/2020/constr_SEQUENCE_OF_jer.c | 65 + .../src/2020/constr_SEQUENCE_OF_uper.c | 92 + .../src/2020/constr_SEQUENCE_OF_xer.c | 60 + .../Asn_J2735/src/2020/constr_SEQUENCE_aper.c | 457 + .../Asn_J2735/src/2020/constr_SEQUENCE_ber.c | 612 + .../Asn_J2735/src/2020/constr_SEQUENCE_jer.c | 84 + .../Asn_J2735/src/2020/constr_SEQUENCE_oer.c | 557 + .../src/2020/constr_SEQUENCE_print.c | 55 + .../src/2020/constr_SEQUENCE_rfill.c | 74 + .../Asn_J2735/src/2020/constr_SEQUENCE_uper.c | 429 + .../Asn_J2735/src/2020/constr_SEQUENCE_xer.c | 348 + src/tmx/Asn_J2735/src/2020/constr_SET_OF.c | 371 + .../Asn_J2735/src/2020/constr_SET_OF_aper.c | 186 + .../Asn_J2735/src/2020/constr_SET_OF_ber.c | 355 + .../Asn_J2735/src/2020/constr_SET_OF_jer.c | 144 + .../Asn_J2735/src/2020/constr_SET_OF_oer.c | 281 + .../Asn_J2735/src/2020/constr_SET_OF_print.c | 39 + .../Asn_J2735/src/2020/constr_SET_OF_rfill.c | 152 + .../Asn_J2735/src/2020/constr_SET_OF_uper.c | 201 + .../Asn_J2735/src/2020/constr_SET_OF_xer.c | 314 + src/tmx/Asn_J2735/src/2020/constr_TYPE.c | 80 + src/tmx/Asn_J2735/src/2020/constraints.c | 94 + src/tmx/Asn_J2735/src/2020/der_encoder.c | 194 + src/tmx/Asn_J2735/src/2020/jer_encoder.c | 69 + src/tmx/Asn_J2735/src/2020/oer_decoder.c | 152 + src/tmx/Asn_J2735/src/2020/oer_encoder.c | 141 + src/tmx/Asn_J2735/src/2020/oer_support.c | 122 + src/tmx/Asn_J2735/src/2020/pdu_collection.c | 58 + src/tmx/Asn_J2735/src/2020/per_decoder.c | 5 + src/tmx/Asn_J2735/src/2020/per_encoder.c | 35 + src/tmx/Asn_J2735/src/2020/per_opentype.c | 28 + src/tmx/Asn_J2735/src/2020/per_support.c | 9 + src/tmx/Asn_J2735/src/2020/uper_decoder.c | 96 + src/tmx/Asn_J2735/src/2020/uper_encoder.c | 127 + src/tmx/Asn_J2735/src/2020/uper_opentype.c | 372 + src/tmx/Asn_J2735/src/2020/uper_support.c | 311 + src/tmx/Asn_J2735/src/2020/xer_decoder.c | 369 + src/tmx/Asn_J2735/src/2020/xer_encoder.c | 237 + src/tmx/Asn_J2735/src/2020/xer_support.c | 227 + 1162 files changed, 121242 insertions(+) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h create mode 100644 src/tmx/Asn_J2735/src/2020/ANY.c create mode 100644 src/tmx/Asn_J2735/src/2020/ANY_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/ANY_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/ANY_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/ANY_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/ANY_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/Acceleration.c create mode 100644 src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c create mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c create mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c create mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c create mode 100644 src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c create mode 100644 src/tmx/Asn_J2735/src/2020/Altitude.c create mode 100644 src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/AltitudeValue.c create mode 100644 src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c create mode 100644 src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/2020/AnimalType.c create mode 100644 src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/ApproachID.c create mode 100644 src/tmx/Asn_J2735/src/2020/ApproachOrLane.c create mode 100644 src/tmx/Asn_J2735/src/2020/Attachment.c create mode 100644 src/tmx/Asn_J2735/src/2020/AttachmentRadius.c create mode 100644 src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/AxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeight.c create mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeightList.c create mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeightSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/BSMcoreData.c create mode 100644 src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c create mode 100644 src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c create mode 100644 src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c create mode 100644 src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/BumperHeight.c create mode 100644 src/tmx/Asn_J2735/src/2020/BumperHeights.c create mode 100644 src/tmx/Asn_J2735/src/2020/CargoWeight.c create mode 100644 src/tmx/Asn_J2735/src/2020/Circle.c create mode 100644 src/tmx/Asn_J2735/src/2020/CoarseHeading.c create mode 100644 src/tmx/Asn_J2735/src/2020/CodeWord.c create mode 100644 src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c create mode 100644 src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c create mode 100644 src/tmx/Asn_J2735/src/2020/Common_Angle.c create mode 100644 src/tmx/Asn_J2735/src/2020/Common_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/2020/Common_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/2020/ComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/2020/Confidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/ConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/ConnectingLane.c create mode 100644 src/tmx/Asn_J2735/src/2020/Connection.c create mode 100644 src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/2020/ConnectsToList.c create mode 100644 src/tmx/Asn_J2735/src/2020/Count.c create mode 100644 src/tmx/Asn_J2735/src/2020/DDate.c create mode 100644 src/tmx/Asn_J2735/src/2020/DDateTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/DDay.c create mode 100644 src/tmx/Asn_J2735/src/2020/DFullTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/DHour.c create mode 100644 src/tmx/Asn_J2735/src/2020/DMinute.c create mode 100644 src/tmx/Asn_J2735/src/2020/DMonth.c create mode 100644 src/tmx/Asn_J2735/src/2020/DMonthDay.c create mode 100644 src/tmx/Asn_J2735/src/2020/DOffset.c create mode 100644 src/tmx/Asn_J2735/src/2020/DSRCmsgID.c create mode 100644 src/tmx/Asn_J2735/src/2020/DSecond.c create mode 100644 src/tmx/Asn_J2735/src/2020/DTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/DYear.c create mode 100644 src/tmx/Asn_J2735/src/2020/DYearMonth.c create mode 100644 src/tmx/Asn_J2735/src/2020/DataParameters.c create mode 100644 src/tmx/Asn_J2735/src/2020/Day.c create mode 100644 src/tmx/Asn_J2735/src/2020/DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/2020/DegreesLat.c create mode 100644 src/tmx/Asn_J2735/src/2020/DegreesLong.c create mode 100644 src/tmx/Asn_J2735/src/2020/DeltaAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/DeltaTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/DescriptiveName.c create mode 100644 src/tmx/Asn_J2735/src/2020/DirectionOfUse.c create mode 100644 src/tmx/Asn_J2735/src/2020/DisabledVehicle.c create mode 100644 src/tmx/Asn_J2735/src/2020/DistanceUnits.c create mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c create mode 100644 src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c create mode 100644 src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/Duration.c create mode 100644 src/tmx/Asn_J2735/src/2020/EXTERNAL.c create mode 100644 src/tmx/Asn_J2735/src/2020/ElevationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/EmergencyDetails.c create mode 100644 src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c create mode 100644 src/tmx/Asn_J2735/src/2020/EmissionType.c create mode 100644 src/tmx/Asn_J2735/src/2020/EnabledLaneList.c create mode 100644 src/tmx/Asn_J2735/src/2020/EssMobileFriction.c create mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipRate.c create mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c create mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c create mode 100644 src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c create mode 100644 src/tmx/Asn_J2735/src/2020/EventDescription.c create mode 100644 src/tmx/Asn_J2735/src/2020/ExitService.c create mode 100644 src/tmx/Asn_J2735/src/2020/Extent.c create mode 100644 src/tmx/Asn_J2735/src/2020/ExteriorLights.c create mode 100644 src/tmx/Asn_J2735/src/2020/FuelType.c create mode 100644 src/tmx/Asn_J2735/src/2020/FullPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/2020/FurtherInfoID.c create mode 100644 src/tmx/Asn_J2735/src/2020/GNSSstatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/GenericLane.c create mode 100644 src/tmx/Asn_J2735/src/2020/GenericLocations.c create mode 100644 src/tmx/Asn_J2735/src/2020/GenericSignage.c create mode 100644 src/tmx/Asn_J2735/src/2020/GeographicalPath.c create mode 100644 src/tmx/Asn_J2735/src/2020/GeometricProjection.c create mode 100644 src/tmx/Asn_J2735/src/2020/GraphicString.c create mode 100644 src/tmx/Asn_J2735/src/2020/GrossDistance.c create mode 100644 src/tmx/Asn_J2735/src/2020/GrossSpeed.c create mode 100644 src/tmx/Asn_J2735/src/2020/Header.c create mode 100644 src/tmx/Asn_J2735/src/2020/Heading.c create mode 100644 src/tmx/Asn_J2735/src/2020/HeadingConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/HeadingSlice.c create mode 100644 src/tmx/Asn_J2735/src/2020/Holiday.c create mode 100644 src/tmx/Asn_J2735/src/2020/Hour.c create mode 100644 src/tmx/Asn_J2735/src/2020/HumanPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/2020/IA5String.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/ITIScodes.c create mode 100644 src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c create mode 100644 src/tmx/Asn_J2735/src/2020/ITIStext.c create mode 100644 src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c create mode 100644 src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionCollision.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionID.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionStateList.c create mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c create mode 100644 src/tmx/Asn_J2735/src/2020/IsDolly.c create mode 100644 src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/2020/J1939data.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneConnectionID.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneDirection.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneID.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneList.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneSharing.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c create mode 100644 src/tmx/Asn_J2735/src/2020/LaneWidth.c create mode 100644 src/tmx/Asn_J2735/src/2020/Latitude.c create mode 100644 src/tmx/Asn_J2735/src/2020/LatitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/2020/LayerID.c create mode 100644 src/tmx/Asn_J2735/src/2020/LayerType.c create mode 100644 src/tmx/Asn_J2735/src/2020/LightbarInUse.c create mode 100644 src/tmx/Asn_J2735/src/2020/Location-quality.c create mode 100644 src/tmx/Asn_J2735/src/2020/Location-tech.c create mode 100644 src/tmx/Asn_J2735/src/2020/Longitude.c create mode 100644 src/tmx/Asn_J2735/src/2020/LongitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/2020/MUTCDCode.c create mode 100644 src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c create mode 100644 src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/2020/MapData.c create mode 100644 src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/MessageBLOB.c create mode 100644 src/tmx/Asn_J2735/src/2020/MessageFrame.c create mode 100644 src/tmx/Asn_J2735/src/2020/MinTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/2020/Minute.c create mode 100644 src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c create mode 100644 src/tmx/Asn_J2735/src/2020/MinutesAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/MinutesDuration.c create mode 100644 src/tmx/Asn_J2735/src/2020/Month.c create mode 100644 src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementEventList.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementList.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementPhaseState.c create mode 100644 src/tmx/Asn_J2735/src/2020/MovementState.c create mode 100644 src/tmx/Asn_J2735/src/2020/MsgCRC.c create mode 100644 src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c create mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c create mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-Payload.c create mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-Revision.c create mode 100644 src/tmx/Asn_J2735/src/2020/NMEAcorrections.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-24B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-28B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-32B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-36B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-44B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-48B.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-20b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-22b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-24b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-26b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-28b.c create mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-32b.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeListLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeListXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NodeXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c create mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c create mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/ObjectCount.c create mode 100644 src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c create mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDetection.c create mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDirection.c create mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDistance.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B09.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B10.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B11.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B12.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B13.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B14.c create mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B16.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c create mode 100644 src/tmx/Asn_J2735/src/2020/OffsetSystem.c create mode 100644 src/tmx/Asn_J2735/src/2020/OverlayLaneList.c create mode 100644 src/tmx/Asn_J2735/src/2020/PartII-Id.c create mode 100644 src/tmx/Asn_J2735/src/2020/PartIIcontent.c create mode 100644 src/tmx/Asn_J2735/src/2020/PathHistory.c create mode 100644 src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/2020/PathPrediction.c create mode 100644 src/tmx/Asn_J2735/src/2020/PayloadData.c create mode 100644 src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalAssistive.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c create mode 100644 src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/2020/PivotPointDescription.c create mode 100644 src/tmx/Asn_J2735/src/2020/PivotingAllowed.c create mode 100644 src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/2020/Position3D.c create mode 100644 src/tmx/Asn_J2735/src/2020/PositionConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c create mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c create mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c create mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/Priority.c create mode 100644 src/tmx/Asn_J2735/src/2020/PriorityRequestType.c create mode 100644 src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c create mode 100644 src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c create mode 100644 src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c create mode 100644 src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/2020/PropelledInformation.c create mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c create mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c create mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCM-Revision.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCMPackage.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCMcorrections.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCMheader.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCMmessage.c create mode 100644 src/tmx/Asn_J2735/src/2020/RTCMmessageList.c create mode 100644 src/tmx/Asn_J2735/src/2020/Radius-B12.c create mode 100644 src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c create mode 100644 src/tmx/Asn_J2735/src/2020/RainSensor.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegionId.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegionList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegionOffsets.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegionPointSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegionalExtension.c create mode 100644 src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestSubRole.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestedItem.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestedItemList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestorDescription.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/2020/RequestorType.c create mode 100644 src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/2020/ResponseType.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentList.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSideAlert.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadSignID.c create mode 100644 src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/SPAT.c create mode 100644 src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/2020/SSPindex.c create mode 100644 src/tmx/Asn_J2735/src/2020/Sample.c create mode 100644 src/tmx/Asn_J2735/src/2020/Scale-B12.c create mode 100644 src/tmx/Asn_J2735/src/2020/Second.c create mode 100644 src/tmx/Asn_J2735/src/2020/SecondOfTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/SecondsAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c create mode 100644 src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/2020/ShapePointSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignPrority.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalGroupID.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalReqScheme.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequest.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c create mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SirenInUse.c create mode 100644 src/tmx/Asn_J2735/src/2020/Snapshot.c create mode 100644 src/tmx/Asn_J2735/src/2020/SnapshotDistance.c create mode 100644 src/tmx/Asn_J2735/src/2020/SnapshotTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/2020/Speed.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedAdvice.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimitList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimitType.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfile.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c create mode 100644 src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/StationID.c create mode 100644 src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c create mode 100644 src/tmx/Asn_J2735/src/2020/SummerTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/SunSensor.c create mode 100644 src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/2020/TemporaryID.c create mode 100644 src/tmx/Asn_J2735/src/2020/TenthSecond.c create mode 100644 src/tmx/Asn_J2735/src/2020/TermDistance.c create mode 100644 src/tmx/Asn_J2735/src/2020/TermTime.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage00.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage01.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage02.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage03.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage04.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage05.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage06.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage07.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage08.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage09.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage10.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage11.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage12.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage13.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage14.c create mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage15.c create mode 100644 src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/ThrottlePosition.c create mode 100644 src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c create mode 100644 src/tmx/Asn_J2735/src/2020/TimeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/TimeOffset.c create mode 100644 src/tmx/Asn_J2735/src/2020/TimeRemaining.c create mode 100644 src/tmx/Asn_J2735/src/2020/TireData.c create mode 100644 src/tmx/Asn_J2735/src/2020/TireDataList.c create mode 100644 src/tmx/Asn_J2735/src/2020/TireLeakageRate.c create mode 100644 src/tmx/Asn_J2735/src/2020/TireLocation.c create mode 100644 src/tmx/Asn_J2735/src/2020/TirePressure.c create mode 100644 src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c create mode 100644 src/tmx/Asn_J2735/src/2020/TireTemp.c create mode 100644 src/tmx/Asn_J2735/src/2020/TractionControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerData.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerMass.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c create mode 100644 src/tmx/Asn_J2735/src/2020/TrailerWeight.c create mode 100644 src/tmx/Asn_J2735/src/2020/TransitStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c create mode 100644 src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c create mode 100644 src/tmx/Asn_J2735/src/2020/TransmissionState.c create mode 100644 src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c create mode 100644 src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c create mode 100644 src/tmx/Asn_J2735/src/2020/TravelerInfoType.c create mode 100644 src/tmx/Asn_J2735/src/2020/TravelerInformation.c create mode 100644 src/tmx/Asn_J2735/src/2020/URL-Base.c create mode 100644 src/tmx/Asn_J2735/src/2020/URL-Link.c create mode 100644 src/tmx/Asn_J2735/src/2020/URL-Short.c create mode 100644 src/tmx/Asn_J2735/src/2020/UniqueMSGID.c create mode 100644 src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c create mode 100644 src/tmx/Asn_J2735/src/2020/VINstring.c create mode 100644 src/tmx/Asn_J2735/src/2020/ValidRegion.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleClassification.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleData.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleHeight.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleID.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleIdent.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleLength.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleMass.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleSize.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/2020/VehicleWidth.c create mode 100644 src/tmx/Asn_J2735/src/2020/Velocity.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B07.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B08.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B09.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B10.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B11.c create mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B12.c create mode 100644 src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c create mode 100644 src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c create mode 100644 src/tmx/Asn_J2735/src/2020/VerticalOffset.c create mode 100644 src/tmx/Asn_J2735/src/2020/WaitOnStopline.c create mode 100644 src/tmx/Asn_J2735/src/2020/WeatherProbe.c create mode 100644 src/tmx/Asn_J2735/src/2020/WeatherReport.c create mode 100644 src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c create mode 100644 src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/WiperRate.c create mode 100644 src/tmx/Asn_J2735/src/2020/WiperSet.c create mode 100644 src/tmx/Asn_J2735/src/2020/WiperStatus.c create mode 100644 src/tmx/Asn_J2735/src/2020/WorkZone.c create mode 100644 src/tmx/Asn_J2735/src/2020/YawRate.c create mode 100644 src/tmx/Asn_J2735/src/2020/YawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/2020/Year.c create mode 100644 src/tmx/Asn_J2735/src/2020/ZoneLength.c create mode 100644 src/tmx/Asn_J2735/src/2020/Zoom.c create mode 100644 src/tmx/Asn_J2735/src/2020/aper_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/aper_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/aper_opentype.c create mode 100644 src/tmx/Asn_J2735/src/2020/aper_support.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_application.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_bit_data.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_internal.c create mode 100644 src/tmx/Asn_J2735/src/2020/asn_random_fill.c create mode 100644 src/tmx/Asn_J2735/src/2020/ber_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/ber_tlv_length.c create mode 100644 src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c create mode 100644 src/tmx/Asn_J2735/src/2020/constr_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/2020/constraints.c create mode 100644 src/tmx/Asn_J2735/src/2020/der_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/jer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/oer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/oer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/oer_support.c create mode 100644 src/tmx/Asn_J2735/src/2020/pdu_collection.c create mode 100644 src/tmx/Asn_J2735/src/2020/per_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/per_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/per_opentype.c create mode 100644 src/tmx/Asn_J2735/src/2020/per_support.c create mode 100644 src/tmx/Asn_J2735/src/2020/uper_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/uper_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/uper_opentype.c create mode 100644 src/tmx/Asn_J2735/src/2020/uper_support.c create mode 100644 src/tmx/Asn_J2735/src/2020/xer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/xer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/2020/xer_support.c diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h new file mode 100644 index 000000000..871ed5ed3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h @@ -0,0 +1,84 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_ANY_H +#define ASN_TYPE_ANY_H + +#include /* Implemented via OCTET STRING type */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ANY { + uint8_t *buf; /* BER-encoded ANY contents */ + int size; /* Size of the above buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} ANY_t; + +extern asn_TYPE_descriptor_t asn_DEF_ANY; +extern asn_TYPE_operation_t asn_OP_ANY; +extern asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs; + +#define ANY_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define ANY_print OCTET_STRING_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define ANY_compare OCTET_STRING_compare + +#define ANY_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define ANY_decode_ber OCTET_STRING_decode_ber +#define ANY_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define ANY_decode_xer OCTET_STRING_decode_xer_hex +xer_type_encoder_f ANY_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f ANY_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f ANY_decode_uper; +per_type_encoder_f ANY_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f ANY_decode_aper; +per_type_encoder_f ANY_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/****************************** + * Handy conversion routines. * + ******************************/ + +/* Convert another ASN.1 type into the ANY. This implies DER encoding. */ +int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr); +ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr); +#if !defined(ASN_DISABLE_APER_SUPPORT) +int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr); +ANY_t *ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/* Convert the contents of the ANY type into the specified type. */ +int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); +#if !defined(ASN_DISABLE_APER_SUPPORT) +int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size)) +#define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \ + &asn_DEF_ANY, (buf), (size)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_TYPE_ANY_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h new file mode 100644 index 000000000..8fec9059e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AccelSteerYawRateConfidence_H_ +#define _AccelSteerYawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelSteerYawRateConfidence */ +typedef struct AccelSteerYawRateConfidence { + YawRateConfidence_t yawRate; + AccelerationConfidence_t acceleration; + SteeringWheelAngleConfidence_t steeringWheelAngle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelSteerYawRateConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelSteerYawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h new file mode 100644 index 000000000..4abddc42b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Acceleration_H_ +#define _Acceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Acceleration */ +typedef long Acceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Acceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Acceleration; +asn_struct_free_f Acceleration_free; +asn_struct_print_f Acceleration_print; +asn_constr_check_f Acceleration_constraint; +ber_type_decoder_f Acceleration_decode_ber; +der_type_encoder_f Acceleration_encode_der; +xer_type_decoder_f Acceleration_decode_xer; +xer_type_encoder_f Acceleration_encode_xer; +jer_type_encoder_f Acceleration_encode_jer; +oer_type_decoder_f Acceleration_decode_oer; +oer_type_encoder_f Acceleration_encode_oer; +per_type_decoder_f Acceleration_decode_uper; +per_type_encoder_f Acceleration_encode_uper; +per_type_decoder_f Acceleration_decode_aper; +per_type_encoder_f Acceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Acceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h new file mode 100644 index 000000000..50e9e6db4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AccelerationConfidence_H_ +#define _AccelerationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AccelerationConfidence { + AccelerationConfidence_unavailable = 0, + AccelerationConfidence_accl_100_00 = 1, + AccelerationConfidence_accl_010_00 = 2, + AccelerationConfidence_accl_005_00 = 3, + AccelerationConfidence_accl_001_00 = 4, + AccelerationConfidence_accl_000_10 = 5, + AccelerationConfidence_accl_000_05 = 6, + AccelerationConfidence_accl_000_01 = 7 +} e_AccelerationConfidence; + +/* AccelerationConfidence */ +typedef long AccelerationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1; +asn_struct_free_f AccelerationConfidence_free; +asn_struct_print_f AccelerationConfidence_print; +asn_constr_check_f AccelerationConfidence_constraint; +ber_type_decoder_f AccelerationConfidence_decode_ber; +der_type_encoder_f AccelerationConfidence_encode_der; +xer_type_decoder_f AccelerationConfidence_decode_xer; +xer_type_encoder_f AccelerationConfidence_encode_xer; +jer_type_encoder_f AccelerationConfidence_encode_jer; +oer_type_decoder_f AccelerationConfidence_decode_oer; +oer_type_encoder_f AccelerationConfidence_encode_oer; +per_type_decoder_f AccelerationConfidence_decode_uper; +per_type_encoder_f AccelerationConfidence_encode_uper; +per_type_decoder_f AccelerationConfidence_decode_aper; +per_type_encoder_f AccelerationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h new file mode 100644 index 000000000..5f41c4e51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AccelerationSet4Way_H_ +#define _AccelerationSet4Way_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Acceleration.h" +#include "VerticalAcceleration.h" +#include "YawRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelerationSet4Way */ +typedef struct AccelerationSet4Way { + Acceleration_t Long; + Acceleration_t lat; + VerticalAcceleration_t vert; + YawRate_t yaw; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelerationSet4Way_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationSet4Way_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h new file mode 100644 index 000000000..f057e4788 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AddGrpB_Angle_H_ +#define _AddGrpB_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Angle */ +typedef long AddGrpB_Angle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle; +asn_struct_free_f AddGrpB_Angle_free; +asn_struct_print_f AddGrpB_Angle_print; +asn_constr_check_f AddGrpB_Angle_constraint; +ber_type_decoder_f AddGrpB_Angle_decode_ber; +der_type_encoder_f AddGrpB_Angle_encode_der; +xer_type_decoder_f AddGrpB_Angle_decode_xer; +xer_type_encoder_f AddGrpB_Angle_encode_xer; +jer_type_encoder_f AddGrpB_Angle_encode_jer; +oer_type_decoder_f AddGrpB_Angle_decode_oer; +oer_type_encoder_f AddGrpB_Angle_encode_oer; +per_type_decoder_f AddGrpB_Angle_decode_uper; +per_type_encoder_f AddGrpB_Angle_encode_uper; +per_type_decoder_f AddGrpB_Angle_decode_aper; +per_type_encoder_f AddGrpB_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h new file mode 100644 index 000000000..cd8e4fa81 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AddGrpB_Elevation_H_ +#define _AddGrpB_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Elevation */ +typedef long AddGrpB_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation; +asn_struct_free_f AddGrpB_Elevation_free; +asn_struct_print_f AddGrpB_Elevation_print; +asn_constr_check_f AddGrpB_Elevation_constraint; +ber_type_decoder_f AddGrpB_Elevation_decode_ber; +der_type_encoder_f AddGrpB_Elevation_encode_der; +xer_type_decoder_f AddGrpB_Elevation_decode_xer; +xer_type_encoder_f AddGrpB_Elevation_encode_xer; +jer_type_encoder_f AddGrpB_Elevation_encode_jer; +oer_type_decoder_f AddGrpB_Elevation_decode_oer; +oer_type_encoder_f AddGrpB_Elevation_encode_oer; +per_type_decoder_f AddGrpB_Elevation_decode_uper; +per_type_encoder_f AddGrpB_Elevation_encode_uper; +per_type_decoder_f AddGrpB_Elevation_decode_aper; +per_type_encoder_f AddGrpB_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h new file mode 100644 index 000000000..891ef20a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AddGrpB_MsgCount_H_ +#define _AddGrpB_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_MsgCount */ +typedef long AddGrpB_MsgCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount; +asn_struct_free_f AddGrpB_MsgCount_free; +asn_struct_print_f AddGrpB_MsgCount_print; +asn_constr_check_f AddGrpB_MsgCount_constraint; +ber_type_decoder_f AddGrpB_MsgCount_decode_ber; +der_type_encoder_f AddGrpB_MsgCount_encode_der; +xer_type_decoder_f AddGrpB_MsgCount_decode_xer; +xer_type_encoder_f AddGrpB_MsgCount_encode_xer; +jer_type_encoder_f AddGrpB_MsgCount_encode_jer; +oer_type_decoder_f AddGrpB_MsgCount_decode_oer; +oer_type_encoder_f AddGrpB_MsgCount_encode_oer; +per_type_decoder_f AddGrpB_MsgCount_decode_uper; +per_type_encoder_f AddGrpB_MsgCount_encode_uper; +per_type_decoder_f AddGrpB_MsgCount_decode_aper; +per_type_encoder_f AddGrpB_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h new file mode 100644 index 000000000..c18bf6929 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AddGrpB_TimeMark_H_ +#define _AddGrpB_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Year.h" +#include "Month.h" +#include "Day.h" +#include "SummerTime.h" +#include "Holiday.h" +#include "DayOfWeek.h" +#include "Hour.h" +#include "Minute.h" +#include "Second.h" +#include "TenthSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_TimeMark */ +typedef struct AddGrpB_TimeMark { + Year_t year; + Month_t month; + Day_t day; + SummerTime_t summerTime; + Holiday_t holiday; + DayOfWeek_t dayofWeek; + Hour_t hour; + Minute_t minute; + Second_t second; + TenthSecond_t tenthSecond; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AddGrpB_TimeMark_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h new file mode 100644 index 000000000..deb8031f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AdvisorySpeed_H_ +#define _AdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AdvisorySpeedType.h" +#include "SpeedAdvice.h" +#include "SpeedConfidence.h" +#include "ZoneLength.h" +#include "RestrictionClassID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_AdvisorySpeed; + +/* AdvisorySpeed */ +typedef struct AdvisorySpeed { + AdvisorySpeedType_t type; + SpeedAdvice_t *speed; /* OPTIONAL */ + SpeedConfidence_t *confidence; /* OPTIONAL */ + ZoneLength_t *distance; /* OPTIONAL */ + RestrictionClassID_t *Class; /* OPTIONAL */ + struct AdvisorySpeed__regional { + A_SEQUENCE_OF(struct Reg_AdvisorySpeed) 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; +} AdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h new file mode 100644 index 000000000..5a6f807cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AdvisorySpeedList_H_ +#define _AdvisorySpeedList_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 AdvisorySpeed; + +/* AdvisorySpeedList */ +typedef struct AdvisorySpeedList { + A_SEQUENCE_OF(struct AdvisorySpeed) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AdvisorySpeedList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; +extern asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[1]; +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeedList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h new file mode 100644 index 000000000..2e65eafeb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AdvisorySpeedType_H_ +#define _AdvisorySpeedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AdvisorySpeedType { + AdvisorySpeedType_none = 0, + AdvisorySpeedType_greenwave = 1, + AdvisorySpeedType_ecoDrive = 2, + AdvisorySpeedType_transit = 3 + /* + * Enumeration is extensible + */ +} e_AdvisorySpeedType; + +/* AdvisorySpeedType */ +typedef long AdvisorySpeedType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; +extern const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1; +asn_struct_free_f AdvisorySpeedType_free; +asn_struct_print_f AdvisorySpeedType_print; +asn_constr_check_f AdvisorySpeedType_constraint; +ber_type_decoder_f AdvisorySpeedType_decode_ber; +der_type_encoder_f AdvisorySpeedType_encode_der; +xer_type_decoder_f AdvisorySpeedType_decode_xer; +xer_type_encoder_f AdvisorySpeedType_encode_xer; +jer_type_encoder_f AdvisorySpeedType_encode_jer; +oer_type_decoder_f AdvisorySpeedType_decode_oer; +oer_type_encoder_f AdvisorySpeedType_encode_oer; +per_type_decoder_f AdvisorySpeedType_decode_uper; +per_type_encoder_f AdvisorySpeedType_encode_uper; +per_type_decoder_f AdvisorySpeedType_decode_aper; +per_type_encoder_f AdvisorySpeedType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h new file mode 100644 index 000000000..a28b8ef42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AllowedManeuvers_H_ +#define _AllowedManeuvers_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AllowedManeuvers { + AllowedManeuvers_maneuverStraightAllowed = 0, + AllowedManeuvers_maneuverLeftAllowed = 1, + AllowedManeuvers_maneuverRightAllowed = 2, + AllowedManeuvers_maneuverUTurnAllowed = 3, + AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, + AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, + AllowedManeuvers_maneuverLaneChangeAllowed = 6, + AllowedManeuvers_maneuverNoStoppingAllowed = 7, + AllowedManeuvers_yieldAllwaysRequired = 8, + AllowedManeuvers_goWithHalt = 9, + AllowedManeuvers_caution = 10, + AllowedManeuvers_reserved1 = 11 +} e_AllowedManeuvers; + +/* AllowedManeuvers */ +typedef BIT_STRING_t AllowedManeuvers_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; +asn_struct_free_f AllowedManeuvers_free; +asn_struct_print_f AllowedManeuvers_print; +asn_constr_check_f AllowedManeuvers_constraint; +ber_type_decoder_f AllowedManeuvers_decode_ber; +der_type_encoder_f AllowedManeuvers_encode_der; +xer_type_decoder_f AllowedManeuvers_decode_xer; +xer_type_encoder_f AllowedManeuvers_encode_xer; +jer_type_encoder_f AllowedManeuvers_encode_jer; +oer_type_decoder_f AllowedManeuvers_decode_oer; +oer_type_encoder_f AllowedManeuvers_encode_oer; +per_type_decoder_f AllowedManeuvers_decode_uper; +per_type_encoder_f AllowedManeuvers_encode_uper; +per_type_decoder_f AllowedManeuvers_decode_aper; +per_type_encoder_f AllowedManeuvers_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AllowedManeuvers_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h new file mode 100644 index 000000000..53f9f9c72 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Altitude_H_ +#define _Altitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AltitudeValue.h" +#include "AltitudeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Altitude */ +typedef struct Altitude { + AltitudeValue_t value; + AltitudeConfidence_t confidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Altitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Altitude; +extern asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1; +extern asn_TYPE_member_t asn_MBR_Altitude_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Altitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h new file mode 100644 index 000000000..f50f6166c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AltitudeConfidence_H_ +#define _AltitudeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AltitudeConfidence { + AltitudeConfidence_alt_000_01 = 0, + AltitudeConfidence_alt_000_02 = 1, + AltitudeConfidence_alt_000_05 = 2, + AltitudeConfidence_alt_000_10 = 3, + AltitudeConfidence_alt_000_20 = 4, + AltitudeConfidence_alt_000_50 = 5, + AltitudeConfidence_alt_001_00 = 6, + AltitudeConfidence_alt_002_00 = 7, + AltitudeConfidence_alt_005_00 = 8, + AltitudeConfidence_alt_010_00 = 9, + AltitudeConfidence_alt_020_00 = 10, + AltitudeConfidence_alt_050_00 = 11, + AltitudeConfidence_alt_100_00 = 12, + AltitudeConfidence_alt_200_00 = 13, + AltitudeConfidence_outOfRange = 14, + AltitudeConfidence_unavailable = 15 +} e_AltitudeConfidence; + +/* AltitudeConfidence */ +typedef long AltitudeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1; +asn_struct_free_f AltitudeConfidence_free; +asn_struct_print_f AltitudeConfidence_print; +asn_constr_check_f AltitudeConfidence_constraint; +ber_type_decoder_f AltitudeConfidence_decode_ber; +der_type_encoder_f AltitudeConfidence_encode_der; +xer_type_decoder_f AltitudeConfidence_decode_xer; +xer_type_encoder_f AltitudeConfidence_encode_xer; +jer_type_encoder_f AltitudeConfidence_encode_jer; +oer_type_decoder_f AltitudeConfidence_decode_oer; +oer_type_encoder_f AltitudeConfidence_encode_oer; +per_type_decoder_f AltitudeConfidence_decode_uper; +per_type_encoder_f AltitudeConfidence_encode_uper; +per_type_decoder_f AltitudeConfidence_decode_aper; +per_type_encoder_f AltitudeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h new file mode 100644 index 000000000..ac43c1d27 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AltitudeValue_H_ +#define _AltitudeValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AltitudeValue */ +typedef long AltitudeValue_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; +asn_struct_free_f AltitudeValue_free; +asn_struct_print_f AltitudeValue_print; +asn_constr_check_f AltitudeValue_constraint; +ber_type_decoder_f AltitudeValue_decode_ber; +der_type_encoder_f AltitudeValue_encode_der; +xer_type_decoder_f AltitudeValue_decode_xer; +xer_type_encoder_f AltitudeValue_encode_xer; +jer_type_encoder_f AltitudeValue_encode_jer; +oer_type_decoder_f AltitudeValue_decode_oer; +oer_type_encoder_f AltitudeValue_encode_oer; +per_type_decoder_f AltitudeValue_decode_uper; +per_type_encoder_f AltitudeValue_encode_uper; +per_type_decoder_f AltitudeValue_decode_aper; +per_type_encoder_f AltitudeValue_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h new file mode 100644 index 000000000..007db7042 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AmbientAirPressure_H_ +#define _AmbientAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirPressure */ +typedef long AmbientAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; +asn_struct_free_f AmbientAirPressure_free; +asn_struct_print_f AmbientAirPressure_print; +asn_constr_check_f AmbientAirPressure_constraint; +ber_type_decoder_f AmbientAirPressure_decode_ber; +der_type_encoder_f AmbientAirPressure_encode_der; +xer_type_decoder_f AmbientAirPressure_decode_xer; +xer_type_encoder_f AmbientAirPressure_encode_xer; +jer_type_encoder_f AmbientAirPressure_encode_jer; +oer_type_decoder_f AmbientAirPressure_decode_oer; +oer_type_encoder_f AmbientAirPressure_encode_oer; +per_type_decoder_f AmbientAirPressure_decode_uper; +per_type_encoder_f AmbientAirPressure_encode_uper; +per_type_decoder_f AmbientAirPressure_decode_aper; +per_type_encoder_f AmbientAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h new file mode 100644 index 000000000..11935cf9f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AmbientAirTemperature_H_ +#define _AmbientAirTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirTemperature */ +typedef long AmbientAirTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; +asn_struct_free_f AmbientAirTemperature_free; +asn_struct_print_f AmbientAirTemperature_print; +asn_constr_check_f AmbientAirTemperature_constraint; +ber_type_decoder_f AmbientAirTemperature_decode_ber; +der_type_encoder_f AmbientAirTemperature_encode_der; +xer_type_decoder_f AmbientAirTemperature_decode_xer; +xer_type_encoder_f AmbientAirTemperature_encode_xer; +jer_type_encoder_f AmbientAirTemperature_encode_jer; +oer_type_decoder_f AmbientAirTemperature_decode_oer; +oer_type_encoder_f AmbientAirTemperature_encode_oer; +per_type_decoder_f AmbientAirTemperature_decode_uper; +per_type_encoder_f AmbientAirTemperature_encode_uper; +per_type_decoder_f AmbientAirTemperature_decode_aper; +per_type_encoder_f AmbientAirTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h new file mode 100644 index 000000000..b75c1bdcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AnimalPropelledType_H_ +#define _AnimalPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalPropelledType { + AnimalPropelledType_unavailable = 0, + AnimalPropelledType_otherTypes = 1, + AnimalPropelledType_animalMounted = 2, + AnimalPropelledType_animalDrawnCarriage = 3 + /* + * Enumeration is extensible + */ +} e_AnimalPropelledType; + +/* AnimalPropelledType */ +typedef long AnimalPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1; +asn_struct_free_f AnimalPropelledType_free; +asn_struct_print_f AnimalPropelledType_print; +asn_constr_check_f AnimalPropelledType_constraint; +ber_type_decoder_f AnimalPropelledType_decode_ber; +der_type_encoder_f AnimalPropelledType_encode_der; +xer_type_decoder_f AnimalPropelledType_decode_xer; +xer_type_encoder_f AnimalPropelledType_encode_xer; +jer_type_encoder_f AnimalPropelledType_encode_jer; +oer_type_decoder_f AnimalPropelledType_decode_oer; +oer_type_encoder_f AnimalPropelledType_encode_oer; +per_type_decoder_f AnimalPropelledType_decode_uper; +per_type_encoder_f AnimalPropelledType_encode_uper; +per_type_decoder_f AnimalPropelledType_decode_aper; +per_type_encoder_f AnimalPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h new file mode 100644 index 000000000..986848a32 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AnimalType_H_ +#define _AnimalType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalType { + AnimalType_unavailable = 0, + AnimalType_serviceUse = 1, + AnimalType_pet = 2, + AnimalType_farm = 3 + /* + * Enumeration is extensible + */ +} e_AnimalType; + +/* AnimalType */ +typedef long AnimalType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1; +asn_struct_free_f AnimalType_free; +asn_struct_print_f AnimalType_print; +asn_constr_check_f AnimalType_constraint; +ber_type_decoder_f AnimalType_decode_ber; +der_type_encoder_f AnimalType_encode_der; +xer_type_decoder_f AnimalType_decode_xer; +xer_type_encoder_f AnimalType_encode_xer; +jer_type_encoder_f AnimalType_encode_jer; +oer_type_decoder_f AnimalType_decode_oer; +oer_type_encoder_f AnimalType_encode_oer; +per_type_decoder_f AnimalType_decode_uper; +per_type_encoder_f AnimalType_encode_uper; +per_type_decoder_f AnimalType_decode_aper; +per_type_encoder_f AnimalType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h new file mode 100644 index 000000000..49a4a130d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AntennaOffsetSet_H_ +#define _AntennaOffsetSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "Offset-B09.h" +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AntennaOffsetSet */ +typedef struct AntennaOffsetSet { + Offset_B12_t antOffsetX; + Offset_B09_t antOffsetY; + Offset_B10_t antOffsetZ; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AntennaOffsetSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntennaOffsetSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h new file mode 100644 index 000000000..a7b997226 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AntiLockBrakeStatus_H_ +#define _AntiLockBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AntiLockBrakeStatus { + AntiLockBrakeStatus_unavailable = 0, + AntiLockBrakeStatus_off = 1, + AntiLockBrakeStatus_on = 2, + AntiLockBrakeStatus_engaged = 3 +} e_AntiLockBrakeStatus; + +/* AntiLockBrakeStatus */ +typedef long AntiLockBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1; +asn_struct_free_f AntiLockBrakeStatus_free; +asn_struct_print_f AntiLockBrakeStatus_print; +asn_constr_check_f AntiLockBrakeStatus_constraint; +ber_type_decoder_f AntiLockBrakeStatus_decode_ber; +der_type_encoder_f AntiLockBrakeStatus_encode_der; +xer_type_decoder_f AntiLockBrakeStatus_decode_xer; +xer_type_encoder_f AntiLockBrakeStatus_encode_xer; +jer_type_encoder_f AntiLockBrakeStatus_encode_jer; +oer_type_decoder_f AntiLockBrakeStatus_decode_oer; +oer_type_encoder_f AntiLockBrakeStatus_encode_oer; +per_type_decoder_f AntiLockBrakeStatus_decode_uper; +per_type_encoder_f AntiLockBrakeStatus_encode_uper; +per_type_decoder_f AntiLockBrakeStatus_decode_aper; +per_type_encoder_f AntiLockBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntiLockBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h new file mode 100644 index 000000000..b3bdd88f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ApproachID_H_ +#define _ApproachID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ApproachID */ +typedef long ApproachID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ApproachID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ApproachID; +asn_struct_free_f ApproachID_free; +asn_struct_print_f ApproachID_print; +asn_constr_check_f ApproachID_constraint; +ber_type_decoder_f ApproachID_decode_ber; +der_type_encoder_f ApproachID_encode_der; +xer_type_decoder_f ApproachID_decode_xer; +xer_type_encoder_f ApproachID_encode_xer; +jer_type_encoder_f ApproachID_encode_jer; +oer_type_decoder_f ApproachID_decode_oer; +oer_type_encoder_f ApproachID_encode_oer; +per_type_decoder_f ApproachID_decode_uper; +per_type_encoder_f ApproachID_encode_uper; +per_type_decoder_f ApproachID_decode_aper; +per_type_encoder_f ApproachID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h new file mode 100644 index 000000000..e3684972d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ApproachOrLane_H_ +#define _ApproachOrLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ApproachID.h" +#include "LaneID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ApproachOrLane_PR { + ApproachOrLane_PR_NOTHING, /* No components present */ + ApproachOrLane_PR_approach, + ApproachOrLane_PR_lane +} ApproachOrLane_PR; + +/* ApproachOrLane */ +typedef struct ApproachOrLane { + ApproachOrLane_PR present; + union ApproachOrLane_u { + ApproachID_t approach; + LaneID_t lane; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ApproachOrLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ApproachOrLane; +extern asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ApproachOrLane_1[2]; +extern asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachOrLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h new file mode 100644 index 000000000..300cb2804 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Attachment_H_ +#define _Attachment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Attachment { + Attachment_unavailable = 0, + Attachment_stroller = 1, + Attachment_bicycleTrailer = 2, + Attachment_cart = 3, + Attachment_wheelchair = 4, + Attachment_otherWalkAssistAttachments = 5, + Attachment_pet = 6 + /* + * Enumeration is extensible + */ +} e_Attachment; + +/* Attachment */ +typedef long Attachment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Attachment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Attachment; +extern const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1; +asn_struct_free_f Attachment_free; +asn_struct_print_f Attachment_print; +asn_constr_check_f Attachment_constraint; +ber_type_decoder_f Attachment_decode_ber; +der_type_encoder_f Attachment_encode_der; +xer_type_decoder_f Attachment_decode_xer; +xer_type_encoder_f Attachment_encode_xer; +jer_type_encoder_f Attachment_encode_jer; +oer_type_decoder_f Attachment_decode_oer; +oer_type_encoder_f Attachment_encode_oer; +per_type_decoder_f Attachment_decode_uper; +per_type_encoder_f Attachment_encode_uper; +per_type_decoder_f Attachment_decode_aper; +per_type_encoder_f Attachment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attachment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h new file mode 100644 index 000000000..df9053a2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AttachmentRadius_H_ +#define _AttachmentRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttachmentRadius */ +typedef long AttachmentRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; +asn_struct_free_f AttachmentRadius_free; +asn_struct_print_f AttachmentRadius_print; +asn_constr_check_f AttachmentRadius_constraint; +ber_type_decoder_f AttachmentRadius_decode_ber; +der_type_encoder_f AttachmentRadius_encode_der; +xer_type_decoder_f AttachmentRadius_decode_xer; +xer_type_encoder_f AttachmentRadius_encode_xer; +jer_type_encoder_f AttachmentRadius_encode_jer; +oer_type_decoder_f AttachmentRadius_decode_oer; +oer_type_encoder_f AttachmentRadius_encode_oer; +per_type_decoder_f AttachmentRadius_decode_uper; +per_type_encoder_f AttachmentRadius_encode_uper; +per_type_decoder_f AttachmentRadius_decode_aper; +per_type_encoder_f AttachmentRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttachmentRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h new file mode 100644 index 000000000..01f47d009 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AuxiliaryBrakeStatus_H_ +#define _AuxiliaryBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AuxiliaryBrakeStatus { + AuxiliaryBrakeStatus_unavailable = 0, + AuxiliaryBrakeStatus_off = 1, + AuxiliaryBrakeStatus_on = 2, + AuxiliaryBrakeStatus_reserved = 3 +} e_AuxiliaryBrakeStatus; + +/* AuxiliaryBrakeStatus */ +typedef long AuxiliaryBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1; +asn_struct_free_f AuxiliaryBrakeStatus_free; +asn_struct_print_f AuxiliaryBrakeStatus_print; +asn_constr_check_f AuxiliaryBrakeStatus_constraint; +ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; +der_type_encoder_f AuxiliaryBrakeStatus_encode_der; +xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; +xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; +jer_type_encoder_f AuxiliaryBrakeStatus_encode_jer; +oer_type_decoder_f AuxiliaryBrakeStatus_decode_oer; +oer_type_encoder_f AuxiliaryBrakeStatus_encode_oer; +per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; +per_type_decoder_f AuxiliaryBrakeStatus_decode_aper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AuxiliaryBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h new file mode 100644 index 000000000..bec5fc3be --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AxleLocation_H_ +#define _AxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleLocation */ +typedef long AxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; +asn_struct_free_f AxleLocation_free; +asn_struct_print_f AxleLocation_print; +asn_constr_check_f AxleLocation_constraint; +ber_type_decoder_f AxleLocation_decode_ber; +der_type_encoder_f AxleLocation_encode_der; +xer_type_decoder_f AxleLocation_decode_xer; +xer_type_encoder_f AxleLocation_encode_xer; +jer_type_encoder_f AxleLocation_encode_jer; +oer_type_decoder_f AxleLocation_decode_oer; +oer_type_encoder_f AxleLocation_encode_oer; +per_type_decoder_f AxleLocation_decode_uper; +per_type_encoder_f AxleLocation_encode_uper; +per_type_decoder_f AxleLocation_decode_aper; +per_type_encoder_f AxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h new file mode 100644 index 000000000..9e5c2ffbf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AxleWeight_H_ +#define _AxleWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeight */ +typedef long AxleWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; +asn_struct_free_f AxleWeight_free; +asn_struct_print_f AxleWeight_print; +asn_constr_check_f AxleWeight_constraint; +ber_type_decoder_f AxleWeight_decode_ber; +der_type_encoder_f AxleWeight_encode_der; +xer_type_decoder_f AxleWeight_decode_xer; +xer_type_encoder_f AxleWeight_encode_xer; +jer_type_encoder_f AxleWeight_encode_jer; +oer_type_decoder_f AxleWeight_decode_oer; +oer_type_encoder_f AxleWeight_encode_oer; +per_type_decoder_f AxleWeight_decode_uper; +per_type_encoder_f AxleWeight_encode_uper; +per_type_decoder_f AxleWeight_decode_aper; +per_type_encoder_f AxleWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h new file mode 100644 index 000000000..aaf56192c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AxleWeightList_H_ +#define _AxleWeightList_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 AxleWeightSet; + +/* AxleWeightList */ +typedef struct AxleWeightList { + A_SEQUENCE_OF(struct AxleWeightSet) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightList; +extern asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightList_1[1]; +extern asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeightList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h new file mode 100644 index 000000000..1e2e6343d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _AxleWeightSet_H_ +#define _AxleWeightSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AxleLocation.h" +#include "AxleWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeightSet */ +typedef struct AxleWeightSet { + AxleLocation_t *location; /* OPTIONAL */ + AxleWeight_t *weight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeightSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h new file mode 100644 index 000000000..e755fe9f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h @@ -0,0 +1,75 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BIT_STRING_H_ +#define _BIT_STRING_H_ + +#include /* Some help from OCTET STRING */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct BIT_STRING_s { + uint8_t *buf; /* BIT STRING body */ + size_t size; /* Size of the above buffer */ + + int bits_unused;/* Unused trailing bits in the last octet (0..7) */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} BIT_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; +extern asn_TYPE_operation_t asn_OP_BIT_STRING; +extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs; + +#define BIT_STRING_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f BIT_STRING_print; /* Human-readable output */ +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f BIT_STRING_compare; + +asn_constr_check_f BIT_STRING_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define BIT_STRING_decode_ber OCTET_STRING_decode_ber +#define BIT_STRING_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary +xer_type_encoder_f BIT_STRING_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f BIT_STRING_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f BIT_STRING_decode_oer; +oer_type_encoder_f BIT_STRING_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f BIT_STRING_decode_uper; +per_type_encoder_f BIT_STRING_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define BIT_STRING_decode_aper OCTET_STRING_decode_aper +#define BIT_STRING_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f BIT_STRING_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +const BIT_STRING_t *BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp); + +#ifdef __cplusplus +} +#endif + +#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h new file mode 100644 index 000000000..2cbbe7101 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h @@ -0,0 +1,70 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BOOLEAN_H_ +#define _BOOLEAN_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The underlying integer may contain various values, but everything + * non-zero is capped to 0xff by the DER encoder. The BER decoder may + * yield non-zero values different from 1, beware. + */ +typedef unsigned BOOLEAN_t; + +extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; +extern asn_TYPE_operation_t asn_OP_BOOLEAN; + +asn_struct_free_f BOOLEAN_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f BOOLEAN_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f BOOLEAN_compare; + +#define BOOLEAN_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f BOOLEAN_decode_ber; +der_type_encoder_f BOOLEAN_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f BOOLEAN_decode_xer; +xer_type_encoder_f BOOLEAN_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f BOOLEAN_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f BOOLEAN_decode_oer; +oer_type_encoder_f BOOLEAN_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f BOOLEAN_decode_uper; +per_type_encoder_f BOOLEAN_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f BOOLEAN_decode_aper; +per_type_encoder_f BOOLEAN_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f BOOLEAN_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h new file mode 100644 index 000000000..3f64b61e7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BSMcoreData_H_ +#define _BSMcoreData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "DSecond.h" +#include "Latitude.h" +#include "Longitude.h" +#include "Common_Elevation.h" +#include "PositionalAccuracy.h" +#include "TransmissionState.h" +#include "Speed.h" +#include "Heading.h" +#include "SteeringWheelAngle.h" +#include "AccelerationSet4Way.h" +#include "BrakeSystemStatus.h" +#include "VehicleSize.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BSMcoreData */ +typedef struct BSMcoreData { + Common_MsgCount_t msgCnt; + TemporaryID_t id; + DSecond_t secMark; + Latitude_t lat; + Longitude_t Long; + Common_Elevation_t elev; + PositionalAccuracy_t accuracy; + TransmissionState_t transmission; + Speed_t speed; + Heading_t heading; + SteeringWheelAngle_t angle; + AccelerationSet4Way_t accelSet; + BrakeSystemStatus_t brakes; + VehicleSize_t size; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMcoreData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMcoreData; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMcoreData_1[14]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BSMcoreData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h new file mode 100644 index 000000000..025a9841a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BasicSafetyMessage_H_ +#define _BasicSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BSMcoreData.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMpartIIExtension; +struct Reg_BasicSafetyMessage; + +/* BasicSafetyMessage */ +typedef struct BasicSafetyMessage { + BSMcoreData_t coreData; + struct BasicSafetyMessage__partII { + A_SEQUENCE_OF(struct BSMpartIIExtension) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *partII; + struct BasicSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} BasicSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h new file mode 100644 index 000000000..c24dc93e7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h @@ -0,0 +1,103 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BasicVehicleClass_H_ +#define _BasicVehicleClass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BasicVehicleClass */ +typedef long BasicVehicleClass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass; +asn_struct_free_f BasicVehicleClass_free; +asn_struct_print_f BasicVehicleClass_print; +asn_constr_check_f BasicVehicleClass_constraint; +ber_type_decoder_f BasicVehicleClass_decode_ber; +der_type_encoder_f BasicVehicleClass_encode_der; +xer_type_decoder_f BasicVehicleClass_decode_xer; +xer_type_encoder_f BasicVehicleClass_encode_xer; +jer_type_encoder_f BasicVehicleClass_encode_jer; +oer_type_decoder_f BasicVehicleClass_decode_oer; +oer_type_encoder_f BasicVehicleClass_encode_oer; +per_type_decoder_f BasicVehicleClass_decode_uper; +per_type_encoder_f BasicVehicleClass_encode_uper; +per_type_decoder_f BasicVehicleClass_decode_aper; +per_type_encoder_f BasicVehicleClass_encode_aper; +#define BasicVehicleClass_unknownVehicleClass ((BasicVehicleClass_t)0) +#define BasicVehicleClass_specialVehicleClass ((BasicVehicleClass_t)1) +#define BasicVehicleClass_passenger_Vehicle_TypeUnknown ((BasicVehicleClass_t)10) +#define BasicVehicleClass_passenger_Vehicle_TypeOther ((BasicVehicleClass_t)11) +#define BasicVehicleClass_lightTruck_Vehicle_TypeUnknown ((BasicVehicleClass_t)20) +#define BasicVehicleClass_lightTruck_Vehicle_TypeOther ((BasicVehicleClass_t)21) +#define BasicVehicleClass_truck_Vehicle_TypeUnknown ((BasicVehicleClass_t)25) +#define BasicVehicleClass_truck_Vehicle_TypeOther ((BasicVehicleClass_t)26) +#define BasicVehicleClass_truck_axleCnt2 ((BasicVehicleClass_t)27) +#define BasicVehicleClass_truck_axleCnt3 ((BasicVehicleClass_t)28) +#define BasicVehicleClass_truck_axleCnt4 ((BasicVehicleClass_t)29) +#define BasicVehicleClass_truck_axleCnt4Trailer ((BasicVehicleClass_t)30) +#define BasicVehicleClass_truck_axleCnt5Trailer ((BasicVehicleClass_t)31) +#define BasicVehicleClass_truck_axleCnt6Trailer ((BasicVehicleClass_t)32) +#define BasicVehicleClass_truck_axleCnt5MultiTrailer ((BasicVehicleClass_t)33) +#define BasicVehicleClass_truck_axleCnt6MultiTrailer ((BasicVehicleClass_t)34) +#define BasicVehicleClass_truck_axleCnt7MultiTrailer ((BasicVehicleClass_t)35) +#define BasicVehicleClass_motorcycle_TypeUnknown ((BasicVehicleClass_t)40) +#define BasicVehicleClass_motorcycle_TypeOther ((BasicVehicleClass_t)41) +#define BasicVehicleClass_motorcycle_Cruiser_Standard ((BasicVehicleClass_t)42) +#define BasicVehicleClass_motorcycle_SportUnclad ((BasicVehicleClass_t)43) +#define BasicVehicleClass_motorcycle_SportTouring ((BasicVehicleClass_t)44) +#define BasicVehicleClass_motorcycle_SuperSport ((BasicVehicleClass_t)45) +#define BasicVehicleClass_motorcycle_Touring ((BasicVehicleClass_t)46) +#define BasicVehicleClass_motorcycle_Trike ((BasicVehicleClass_t)47) +#define BasicVehicleClass_motorcycle_wPassengers ((BasicVehicleClass_t)48) +#define BasicVehicleClass_transit_TypeUnknown ((BasicVehicleClass_t)50) +#define BasicVehicleClass_transit_TypeOther ((BasicVehicleClass_t)51) +#define BasicVehicleClass_transit_BRT ((BasicVehicleClass_t)52) +#define BasicVehicleClass_transit_ExpressBus ((BasicVehicleClass_t)53) +#define BasicVehicleClass_transit_LocalBus ((BasicVehicleClass_t)54) +#define BasicVehicleClass_transit_SchoolBus ((BasicVehicleClass_t)55) +#define BasicVehicleClass_transit_FixedGuideway ((BasicVehicleClass_t)56) +#define BasicVehicleClass_transit_Paratransit ((BasicVehicleClass_t)57) +#define BasicVehicleClass_transit_Paratransit_Ambulance ((BasicVehicleClass_t)58) +#define BasicVehicleClass_emergency_TypeUnknown ((BasicVehicleClass_t)60) +#define BasicVehicleClass_emergency_TypeOther ((BasicVehicleClass_t)61) +#define BasicVehicleClass_emergency_Fire_Light_Vehicle ((BasicVehicleClass_t)62) +#define BasicVehicleClass_emergency_Fire_Heavy_Vehicle ((BasicVehicleClass_t)63) +#define BasicVehicleClass_emergency_Fire_Paramedic_Vehicle ((BasicVehicleClass_t)64) +#define BasicVehicleClass_emergency_Fire_Ambulance_Vehicle ((BasicVehicleClass_t)65) +#define BasicVehicleClass_emergency_Police_Light_Vehicle ((BasicVehicleClass_t)66) +#define BasicVehicleClass_emergency_Police_Heavy_Vehicle ((BasicVehicleClass_t)67) +#define BasicVehicleClass_emergency_Other_Responder ((BasicVehicleClass_t)68) +#define BasicVehicleClass_emergency_Other_Ambulance ((BasicVehicleClass_t)69) +#define BasicVehicleClass_otherTraveler_TypeUnknown ((BasicVehicleClass_t)80) +#define BasicVehicleClass_otherTraveler_TypeOther ((BasicVehicleClass_t)81) +#define BasicVehicleClass_otherTraveler_Pedestrian ((BasicVehicleClass_t)82) +#define BasicVehicleClass_otherTraveler_Visually_Disabled ((BasicVehicleClass_t)83) +#define BasicVehicleClass_otherTraveler_Physically_Disabled ((BasicVehicleClass_t)84) +#define BasicVehicleClass_otherTraveler_Bicycle ((BasicVehicleClass_t)85) +#define BasicVehicleClass_otherTraveler_Vulnerable_Roadworker ((BasicVehicleClass_t)86) +#define BasicVehicleClass_infrastructure_TypeUnknown ((BasicVehicleClass_t)90) +#define BasicVehicleClass_infrastructure_Fixed ((BasicVehicleClass_t)91) +#define BasicVehicleClass_infrastructure_Movable ((BasicVehicleClass_t)92) +#define BasicVehicleClass_equipped_CargoTrailer ((BasicVehicleClass_t)93) + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleClass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h new file mode 100644 index 000000000..a29f6322e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BasicVehicleRole_H_ +#define _BasicVehicleRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BasicVehicleRole { + BasicVehicleRole_basicVehicle = 0, + BasicVehicleRole_publicTransport = 1, + BasicVehicleRole_specialTransport = 2, + BasicVehicleRole_dangerousGoods = 3, + BasicVehicleRole_roadWork = 4, + BasicVehicleRole_roadRescue = 5, + BasicVehicleRole_emergency = 6, + BasicVehicleRole_safetyCar = 7, + BasicVehicleRole_none_unknown = 8, + BasicVehicleRole_truck = 9, + BasicVehicleRole_motorcycle = 10, + BasicVehicleRole_roadSideSource = 11, + BasicVehicleRole_police = 12, + BasicVehicleRole_fire = 13, + BasicVehicleRole_ambulance = 14, + BasicVehicleRole_dot = 15, + BasicVehicleRole_transit = 16, + BasicVehicleRole_slowMoving = 17, + BasicVehicleRole_stopNgo = 18, + BasicVehicleRole_cyclist = 19, + BasicVehicleRole_pedestrian = 20, + BasicVehicleRole_nonMotorized = 21, + BasicVehicleRole_military = 22 + /* + * Enumeration is extensible + */ +} e_BasicVehicleRole; + +/* BasicVehicleRole */ +typedef long BasicVehicleRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole; +extern const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1; +asn_struct_free_f BasicVehicleRole_free; +asn_struct_print_f BasicVehicleRole_print; +asn_constr_check_f BasicVehicleRole_constraint; +ber_type_decoder_f BasicVehicleRole_decode_ber; +der_type_encoder_f BasicVehicleRole_encode_der; +xer_type_decoder_f BasicVehicleRole_decode_xer; +xer_type_encoder_f BasicVehicleRole_encode_xer; +jer_type_encoder_f BasicVehicleRole_encode_jer; +oer_type_decoder_f BasicVehicleRole_decode_oer; +oer_type_encoder_f BasicVehicleRole_encode_oer; +per_type_decoder_f BasicVehicleRole_decode_uper; +per_type_encoder_f BasicVehicleRole_encode_uper; +per_type_decoder_f BasicVehicleRole_decode_aper; +per_type_encoder_f BasicVehicleRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h new file mode 100644 index 000000000..b40b95442 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BrakeAppliedPressure_H_ +#define _BrakeAppliedPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedPressure { + BrakeAppliedPressure_unavailable = 0, + BrakeAppliedPressure_minPressure = 1, + BrakeAppliedPressure_bkLvl_2 = 2, + BrakeAppliedPressure_bkLvl_3 = 3, + BrakeAppliedPressure_bkLvl_4 = 4, + BrakeAppliedPressure_bkLvl_5 = 5, + BrakeAppliedPressure_bkLvl_6 = 6, + BrakeAppliedPressure_bkLvl_7 = 7, + BrakeAppliedPressure_bkLvl_8 = 8, + BrakeAppliedPressure_bkLvl_9 = 9, + BrakeAppliedPressure_bkLvl_10 = 10, + BrakeAppliedPressure_bkLvl_11 = 11, + BrakeAppliedPressure_bkLvl_12 = 12, + BrakeAppliedPressure_bkLvl_13 = 13, + BrakeAppliedPressure_bkLvl_14 = 14, + BrakeAppliedPressure_maxPressure = 15 +} e_BrakeAppliedPressure; + +/* BrakeAppliedPressure */ +typedef long BrakeAppliedPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1; +asn_struct_free_f BrakeAppliedPressure_free; +asn_struct_print_f BrakeAppliedPressure_print; +asn_constr_check_f BrakeAppliedPressure_constraint; +ber_type_decoder_f BrakeAppliedPressure_decode_ber; +der_type_encoder_f BrakeAppliedPressure_encode_der; +xer_type_decoder_f BrakeAppliedPressure_decode_xer; +xer_type_encoder_f BrakeAppliedPressure_encode_xer; +jer_type_encoder_f BrakeAppliedPressure_encode_jer; +oer_type_decoder_f BrakeAppliedPressure_decode_oer; +oer_type_encoder_f BrakeAppliedPressure_encode_oer; +per_type_decoder_f BrakeAppliedPressure_decode_uper; +per_type_encoder_f BrakeAppliedPressure_encode_uper; +per_type_decoder_f BrakeAppliedPressure_decode_aper; +per_type_encoder_f BrakeAppliedPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h new file mode 100644 index 000000000..8cefc4b84 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BrakeAppliedStatus_H_ +#define _BrakeAppliedStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedStatus { + BrakeAppliedStatus_unavailable = 0, + BrakeAppliedStatus_leftFront = 1, + BrakeAppliedStatus_leftRear = 2, + BrakeAppliedStatus_rightFront = 3, + BrakeAppliedStatus_rightRear = 4 +} e_BrakeAppliedStatus; + +/* BrakeAppliedStatus */ +typedef BIT_STRING_t BrakeAppliedStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; +asn_struct_free_f BrakeAppliedStatus_free; +asn_struct_print_f BrakeAppliedStatus_print; +asn_constr_check_f BrakeAppliedStatus_constraint; +ber_type_decoder_f BrakeAppliedStatus_decode_ber; +der_type_encoder_f BrakeAppliedStatus_encode_der; +xer_type_decoder_f BrakeAppliedStatus_decode_xer; +xer_type_encoder_f BrakeAppliedStatus_encode_xer; +jer_type_encoder_f BrakeAppliedStatus_encode_jer; +oer_type_decoder_f BrakeAppliedStatus_decode_oer; +oer_type_encoder_f BrakeAppliedStatus_encode_oer; +per_type_decoder_f BrakeAppliedStatus_decode_uper; +per_type_encoder_f BrakeAppliedStatus_encode_uper; +per_type_decoder_f BrakeAppliedStatus_decode_aper; +per_type_encoder_f BrakeAppliedStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h new file mode 100644 index 000000000..1fa8f9eac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BrakeBoostApplied_H_ +#define _BrakeBoostApplied_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeBoostApplied { + BrakeBoostApplied_unavailable = 0, + BrakeBoostApplied_off = 1, + BrakeBoostApplied_on = 2 +} e_BrakeBoostApplied; + +/* BrakeBoostApplied */ +typedef long BrakeBoostApplied_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1; +asn_struct_free_f BrakeBoostApplied_free; +asn_struct_print_f BrakeBoostApplied_print; +asn_constr_check_f BrakeBoostApplied_constraint; +ber_type_decoder_f BrakeBoostApplied_decode_ber; +der_type_encoder_f BrakeBoostApplied_encode_der; +xer_type_decoder_f BrakeBoostApplied_decode_xer; +xer_type_encoder_f BrakeBoostApplied_encode_xer; +jer_type_encoder_f BrakeBoostApplied_encode_jer; +oer_type_decoder_f BrakeBoostApplied_decode_oer; +oer_type_encoder_f BrakeBoostApplied_encode_oer; +per_type_decoder_f BrakeBoostApplied_decode_uper; +per_type_encoder_f BrakeBoostApplied_encode_uper; +per_type_decoder_f BrakeBoostApplied_decode_aper; +per_type_encoder_f BrakeBoostApplied_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeBoostApplied_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h new file mode 100644 index 000000000..9702ff381 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BrakeSystemStatus_H_ +#define _BrakeSystemStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BrakeAppliedStatus.h" +#include "TractionControlStatus.h" +#include "AntiLockBrakeStatus.h" +#include "StabilityControlStatus.h" +#include "BrakeBoostApplied.h" +#include "AuxiliaryBrakeStatus.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BrakeSystemStatus */ +typedef struct BrakeSystemStatus { + BrakeAppliedStatus_t wheelBrakes; + TractionControlStatus_t traction; + AntiLockBrakeStatus_t abs; + StabilityControlStatus_t scs; + BrakeBoostApplied_t brakeBoost; + AuxiliaryBrakeStatus_t auxBrakes; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BrakeSystemStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeSystemStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h new file mode 100644 index 000000000..824df774c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BumperHeight_H_ +#define _BumperHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeight */ +typedef long BumperHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BumperHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BumperHeight; +asn_struct_free_f BumperHeight_free; +asn_struct_print_f BumperHeight_print; +asn_constr_check_f BumperHeight_constraint; +ber_type_decoder_f BumperHeight_decode_ber; +der_type_encoder_f BumperHeight_encode_der; +xer_type_decoder_f BumperHeight_decode_xer; +xer_type_encoder_f BumperHeight_encode_xer; +jer_type_encoder_f BumperHeight_encode_jer; +oer_type_decoder_f BumperHeight_decode_oer; +oer_type_encoder_f BumperHeight_encode_oer; +per_type_decoder_f BumperHeight_decode_uper; +per_type_encoder_f BumperHeight_encode_uper; +per_type_decoder_f BumperHeight_decode_aper; +per_type_encoder_f BumperHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h new file mode 100644 index 000000000..b4b95b653 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _BumperHeights_H_ +#define _BumperHeights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BumperHeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeights */ +typedef struct BumperHeights { + BumperHeight_t front; + BumperHeight_t rear; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BumperHeights_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; +extern asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1; +extern asn_TYPE_member_t asn_MBR_BumperHeights_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h new file mode 100644 index 000000000..71b20e206 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _CargoWeight_H_ +#define _CargoWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CargoWeight */ +typedef long CargoWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CargoWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; +asn_struct_free_f CargoWeight_free; +asn_struct_print_f CargoWeight_print; +asn_constr_check_f CargoWeight_constraint; +ber_type_decoder_f CargoWeight_decode_ber; +der_type_encoder_f CargoWeight_encode_der; +xer_type_decoder_f CargoWeight_decode_xer; +xer_type_encoder_f CargoWeight_encode_xer; +jer_type_encoder_f CargoWeight_encode_jer; +oer_type_decoder_f CargoWeight_decode_oer; +oer_type_encoder_f CargoWeight_encode_oer; +per_type_decoder_f CargoWeight_decode_uper; +per_type_encoder_f CargoWeight_encode_uper; +per_type_decoder_f CargoWeight_decode_aper; +per_type_encoder_f CargoWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CargoWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h new file mode 100644 index 000000000..5a8858540 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Circle_H_ +#define _Circle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "Radius-B12.h" +#include "DistanceUnits.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Circle */ +typedef struct Circle { + Position3D_t center; + Radius_B12_t radius; + DistanceUnits_t units; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Circle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Circle; +extern asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1; +extern asn_TYPE_member_t asn_MBR_Circle_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Circle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h new file mode 100644 index 000000000..a1a741ee7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _CoarseHeading_H_ +#define _CoarseHeading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoarseHeading */ +typedef long CoarseHeading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoarseHeading; +asn_struct_free_f CoarseHeading_free; +asn_struct_print_f CoarseHeading_print; +asn_constr_check_f CoarseHeading_constraint; +ber_type_decoder_f CoarseHeading_decode_ber; +der_type_encoder_f CoarseHeading_encode_der; +xer_type_decoder_f CoarseHeading_decode_xer; +xer_type_encoder_f CoarseHeading_encode_xer; +jer_type_encoder_f CoarseHeading_encode_jer; +oer_type_decoder_f CoarseHeading_decode_oer; +oer_type_encoder_f CoarseHeading_encode_oer; +per_type_decoder_f CoarseHeading_decode_uper; +per_type_encoder_f CoarseHeading_encode_uper; +per_type_decoder_f CoarseHeading_decode_aper; +per_type_encoder_f CoarseHeading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoarseHeading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h new file mode 100644 index 000000000..1732b87f3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _CodeWord_H_ +#define _CodeWord_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CodeWord */ +typedef OCTET_STRING_t CodeWord_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CodeWord; +asn_struct_free_f CodeWord_free; +asn_struct_print_f CodeWord_print; +asn_constr_check_f CodeWord_constraint; +ber_type_decoder_f CodeWord_decode_ber; +der_type_encoder_f CodeWord_encode_der; +xer_type_decoder_f CodeWord_decode_xer; +xer_type_encoder_f CodeWord_encode_xer; +jer_type_encoder_f CodeWord_encode_jer; +oer_type_decoder_f CodeWord_decode_oer; +oer_type_encoder_f CodeWord_encode_oer; +per_type_decoder_f CodeWord_decode_uper; +per_type_encoder_f CodeWord_encode_uper; +per_type_decoder_f CodeWord_decode_aper; +per_type_encoder_f CodeWord_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CodeWord_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h new file mode 100644 index 000000000..2e43875ec --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _CoefficientOfFriction_H_ +#define _CoefficientOfFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoefficientOfFriction */ +typedef long CoefficientOfFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; +asn_struct_free_f CoefficientOfFriction_free; +asn_struct_print_f CoefficientOfFriction_print; +asn_constr_check_f CoefficientOfFriction_constraint; +ber_type_decoder_f CoefficientOfFriction_decode_ber; +der_type_encoder_f CoefficientOfFriction_encode_der; +xer_type_decoder_f CoefficientOfFriction_decode_xer; +xer_type_encoder_f CoefficientOfFriction_encode_xer; +jer_type_encoder_f CoefficientOfFriction_encode_jer; +oer_type_decoder_f CoefficientOfFriction_decode_oer; +oer_type_encoder_f CoefficientOfFriction_encode_oer; +per_type_decoder_f CoefficientOfFriction_decode_uper; +per_type_encoder_f CoefficientOfFriction_encode_uper; +per_type_decoder_f CoefficientOfFriction_decode_aper; +per_type_encoder_f CoefficientOfFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoefficientOfFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h new file mode 100644 index 000000000..9a5948b53 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _CommonSafetyRequest_H_ +#define _CommonSafetyRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "RequestedItemList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_CommonSafetyRequest; + +/* CommonSafetyRequest */ +typedef struct CommonSafetyRequest { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Common_MsgCount_t *msgCnt; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RequestedItemList_t requests; + struct CommonSafetyRequest__regional { + A_SEQUENCE_OF(struct Reg_CommonSafetyRequest) 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; +} CommonSafetyRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _CommonSafetyRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h new file mode 100644 index 000000000..b8803c38f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Common_Angle_H_ +#define _Common_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_Angle */ +typedef long Common_Angle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_Angle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_Angle; +asn_struct_free_f Common_Angle_free; +asn_struct_print_f Common_Angle_print; +asn_constr_check_f Common_Angle_constraint; +ber_type_decoder_f Common_Angle_decode_ber; +der_type_encoder_f Common_Angle_encode_der; +xer_type_decoder_f Common_Angle_decode_xer; +xer_type_encoder_f Common_Angle_encode_xer; +jer_type_encoder_f Common_Angle_encode_jer; +oer_type_decoder_f Common_Angle_decode_oer; +oer_type_encoder_f Common_Angle_encode_oer; +per_type_decoder_f Common_Angle_decode_uper; +per_type_encoder_f Common_Angle_encode_uper; +per_type_decoder_f Common_Angle_decode_aper; +per_type_encoder_f Common_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h new file mode 100644 index 000000000..99b55a74a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Common_Elevation_H_ +#define _Common_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_Elevation */ +typedef long Common_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_Elevation; +asn_struct_free_f Common_Elevation_free; +asn_struct_print_f Common_Elevation_print; +asn_constr_check_f Common_Elevation_constraint; +ber_type_decoder_f Common_Elevation_decode_ber; +der_type_encoder_f Common_Elevation_encode_der; +xer_type_decoder_f Common_Elevation_decode_xer; +xer_type_encoder_f Common_Elevation_encode_xer; +jer_type_encoder_f Common_Elevation_encode_jer; +oer_type_decoder_f Common_Elevation_decode_oer; +oer_type_encoder_f Common_Elevation_encode_oer; +per_type_decoder_f Common_Elevation_decode_uper; +per_type_encoder_f Common_Elevation_encode_uper; +per_type_decoder_f Common_Elevation_decode_aper; +per_type_encoder_f Common_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h new file mode 100644 index 000000000..28557855e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Common_MsgCount_H_ +#define _Common_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_MsgCount */ +typedef long Common_MsgCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_MsgCount; +asn_struct_free_f Common_MsgCount_free; +asn_struct_print_f Common_MsgCount_print; +asn_constr_check_f Common_MsgCount_constraint; +ber_type_decoder_f Common_MsgCount_decode_ber; +der_type_encoder_f Common_MsgCount_encode_der; +xer_type_decoder_f Common_MsgCount_decode_xer; +xer_type_encoder_f Common_MsgCount_encode_xer; +jer_type_encoder_f Common_MsgCount_encode_jer; +oer_type_decoder_f Common_MsgCount_decode_oer; +oer_type_encoder_f Common_MsgCount_encode_oer; +per_type_decoder_f Common_MsgCount_decode_uper; +per_type_encoder_f Common_MsgCount_encode_uper; +per_type_decoder_f Common_MsgCount_decode_aper; +per_type_encoder_f Common_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h new file mode 100644 index 000000000..c45278d3c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ComputedLane_H_ +#define _ComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "Common_Angle.h" +#include "Scale-B12.h" +#include "DrivenLineOffsetSm.h" +#include "DrivenLineOffsetLg.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ComputedLane__offsetXaxis_PR { + ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetXaxis_PR_small, + ComputedLane__offsetXaxis_PR_large +} ComputedLane__offsetXaxis_PR; +typedef enum ComputedLane__offsetYaxis_PR { + ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetYaxis_PR_small, + ComputedLane__offsetYaxis_PR_large +} ComputedLane__offsetYaxis_PR; + +/* Forward declarations */ +struct Reg_ComputedLane; + +/* ComputedLane */ +typedef struct ComputedLane { + LaneID_t referenceLaneId; + struct ComputedLane__offsetXaxis { + ComputedLane__offsetXaxis_PR present; + union ComputedLane__offsetXaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetXaxis; + struct ComputedLane__offsetYaxis { + ComputedLane__offsetYaxis_PR present; + union ComputedLane__offsetYaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetYaxis; + Common_Angle_t *rotateXY; /* OPTIONAL */ + Scale_B12_t *scaleXaxis; /* OPTIONAL */ + Scale_B12_t *scaleYaxis; /* OPTIONAL */ + struct ComputedLane__regional { + A_SEQUENCE_OF(struct Reg_ComputedLane) 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; +} ComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ComputedLane_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h new file mode 100644 index 000000000..2dcc6bef1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Confidence_H_ +#define _Confidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Confidence */ +typedef long Confidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Confidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Confidence; +asn_struct_free_f Confidence_free; +asn_struct_print_f Confidence_print; +asn_constr_check_f Confidence_constraint; +ber_type_decoder_f Confidence_decode_ber; +der_type_encoder_f Confidence_encode_der; +xer_type_decoder_f Confidence_decode_xer; +xer_type_encoder_f Confidence_encode_xer; +jer_type_encoder_f Confidence_encode_jer; +oer_type_decoder_f Confidence_decode_oer; +oer_type_encoder_f Confidence_encode_oer; +per_type_decoder_f Confidence_decode_uper; +per_type_encoder_f Confidence_encode_uper; +per_type_decoder_f Confidence_decode_aper; +per_type_encoder_f Confidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Confidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h new file mode 100644 index 000000000..d75c01021 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ConfidenceSet_H_ +#define _ConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "HeadingConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelSteerYawRateConfidence; +struct SpeedandHeadingandThrottleConfidence; +struct PositionConfidenceSet; + +/* ConfidenceSet */ +typedef struct ConfidenceSet { + struct AccelSteerYawRateConfidence *accelConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + SteeringWheelAngleConfidence_t *steerConfidence; /* OPTIONAL */ + HeadingConfidence_t *headingConfidence; /* OPTIONAL */ + ThrottleConfidence_t *throttleConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ConfidenceSet_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h new file mode 100644 index 000000000..d4f1aa84d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ConnectingLane_H_ +#define _ConnectingLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "AllowedManeuvers.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ConnectingLane */ +typedef struct ConnectingLane { + LaneID_t lane; + AllowedManeuvers_t *maneuver; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectingLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectingLane_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectingLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h new file mode 100644 index 000000000..83a23ec31 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Connection_H_ +#define _Connection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ConnectingLane.h" +#include "SignalGroupID.h" +#include "RestrictionClassID.h" +#include "LaneConnectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionReferenceID; + +/* Connection */ +typedef struct Connection { + ConnectingLane_t connectingLane; + struct IntersectionReferenceID *remoteIntersection; /* OPTIONAL */ + SignalGroupID_t *signalGroup; /* OPTIONAL */ + RestrictionClassID_t *userClass; /* OPTIONAL */ + LaneConnectionID_t *connectionID; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Connection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Connection; +extern asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1; +extern asn_TYPE_member_t asn_MBR_Connection_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Connection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h new file mode 100644 index 000000000..78ec41712 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ConnectionManeuverAssist_addGrpC_H_ +#define _ConnectionManeuverAssist_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleToLanePositionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeOffsetPointXY; + +/* ConnectionManeuverAssist-addGrpC */ +typedef struct ConnectionManeuverAssist_addGrpC { + VehicleToLanePositionList_t vehicleToLanePositions; + struct NodeOffsetPointXY *rsuDistanceFromAnchor; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectionManeuverAssist_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectionManeuverAssist_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h new file mode 100644 index 000000000..736974ef9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ConnectionManeuverAssist_H_ +#define _ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneConnectionID.h" +#include "ZoneLength.h" +#include "WaitOnStopline.h" +#include "PedestrianBicycleDetect.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_ConnectionManeuverAssist; + +/* ConnectionManeuverAssist */ +typedef struct ConnectionManeuverAssist { + LaneConnectionID_t connectionID; + ZoneLength_t *queueLength; /* OPTIONAL */ + ZoneLength_t *availableStorageLength; /* OPTIONAL */ + WaitOnStopline_t *waitOnStop; /* OPTIONAL */ + PedestrianBicycleDetect_t *pedBicycleDetect; /* OPTIONAL */ + struct ConnectionManeuverAssist__regional { + A_SEQUENCE_OF(struct Reg_ConnectionManeuverAssist) 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; +} ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h new file mode 100644 index 000000000..3ca72f148 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ConnectsToList_H_ +#define _ConnectsToList_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 Connection; + +/* ConnectsToList */ +typedef struct ConnectsToList { + A_SEQUENCE_OF(struct Connection) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectsToList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; +extern asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectsToList_1[1]; +extern asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectsToList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h new file mode 100644 index 000000000..8380e9d6f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Count_H_ +#define _Count_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Count */ +typedef long Count_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Count; +asn_struct_free_f Count_free; +asn_struct_print_f Count_print; +asn_constr_check_f Count_constraint; +ber_type_decoder_f Count_decode_ber; +der_type_encoder_f Count_encode_der; +xer_type_decoder_f Count_decode_xer; +xer_type_encoder_f Count_encode_xer; +jer_type_encoder_f Count_encode_jer; +oer_type_decoder_f Count_decode_oer; +oer_type_encoder_f Count_encode_oer; +per_type_decoder_f Count_decode_uper; +per_type_encoder_f Count_encode_uper; +per_type_decoder_f Count_decode_aper; +per_type_encoder_f Count_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Count_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h new file mode 100644 index 000000000..7b53f777d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DDate_H_ +#define _DDate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDate */ +typedef struct DDate { + DYear_t year; + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDate; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h new file mode 100644 index 000000000..419943d86 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DDateTime_H_ +#define _DDateTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDateTime */ +typedef struct DDateTime { + DYear_t *year; /* OPTIONAL */ + DMonth_t *month; /* OPTIONAL */ + DDay_t *day; /* OPTIONAL */ + DHour_t *hour; /* OPTIONAL */ + DMinute_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDateTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDateTime; +extern asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1; +extern asn_TYPE_member_t asn_MBR_DDateTime_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDateTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h new file mode 100644 index 000000000..4a42c80b7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DDay_H_ +#define _DDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDay */ +typedef long DDay_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DDay_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DDay; +asn_struct_free_f DDay_free; +asn_struct_print_f DDay_print; +asn_constr_check_f DDay_constraint; +ber_type_decoder_f DDay_decode_ber; +der_type_encoder_f DDay_encode_der; +xer_type_decoder_f DDay_decode_xer; +xer_type_encoder_f DDay_encode_xer; +jer_type_encoder_f DDay_encode_jer; +oer_type_decoder_f DDay_decode_oer; +oer_type_encoder_f DDay_encode_oer; +per_type_decoder_f DDay_decode_uper; +per_type_encoder_f DDay_encode_uper; +per_type_decoder_f DDay_decode_aper; +per_type_encoder_f DDay_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h new file mode 100644 index 000000000..91065ab89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DFullTime_H_ +#define _DFullTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DFullTime */ +typedef struct DFullTime { + DYear_t year; + DMonth_t month; + DDay_t day; + DHour_t hour; + DMinute_t minute; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DFullTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DFullTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DFullTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h new file mode 100644 index 000000000..6b974c3c8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DHour_H_ +#define _DHour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DHour */ +typedef long DHour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DHour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DHour; +asn_struct_free_f DHour_free; +asn_struct_print_f DHour_print; +asn_constr_check_f DHour_constraint; +ber_type_decoder_f DHour_decode_ber; +der_type_encoder_f DHour_encode_der; +xer_type_decoder_f DHour_decode_xer; +xer_type_encoder_f DHour_encode_xer; +jer_type_encoder_f DHour_encode_jer; +oer_type_decoder_f DHour_decode_oer; +oer_type_encoder_f DHour_encode_oer; +per_type_decoder_f DHour_decode_uper; +per_type_encoder_f DHour_encode_uper; +per_type_decoder_f DHour_decode_aper; +per_type_encoder_f DHour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DHour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h new file mode 100644 index 000000000..714d33492 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DMinute_H_ +#define _DMinute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMinute */ +typedef long DMinute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMinute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMinute; +asn_struct_free_f DMinute_free; +asn_struct_print_f DMinute_print; +asn_constr_check_f DMinute_constraint; +ber_type_decoder_f DMinute_decode_ber; +der_type_encoder_f DMinute_encode_der; +xer_type_decoder_f DMinute_decode_xer; +xer_type_encoder_f DMinute_encode_xer; +jer_type_encoder_f DMinute_encode_jer; +oer_type_decoder_f DMinute_decode_oer; +oer_type_encoder_f DMinute_encode_oer; +per_type_decoder_f DMinute_decode_uper; +per_type_encoder_f DMinute_encode_uper; +per_type_decoder_f DMinute_decode_aper; +per_type_encoder_f DMinute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMinute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h new file mode 100644 index 000000000..fb603619a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DMonth_H_ +#define _DMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonth */ +typedef long DMonth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMonth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMonth; +asn_struct_free_f DMonth_free; +asn_struct_print_f DMonth_print; +asn_constr_check_f DMonth_constraint; +ber_type_decoder_f DMonth_decode_ber; +der_type_encoder_f DMonth_encode_der; +xer_type_decoder_f DMonth_decode_xer; +xer_type_encoder_f DMonth_encode_xer; +jer_type_encoder_f DMonth_encode_jer; +oer_type_decoder_f DMonth_decode_oer; +oer_type_encoder_f DMonth_encode_oer; +per_type_decoder_f DMonth_decode_uper; +per_type_encoder_f DMonth_encode_uper; +per_type_decoder_f DMonth_decode_aper; +per_type_encoder_f DMonth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h new file mode 100644 index 000000000..33656c770 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DMonthDay_H_ +#define _DMonthDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonthDay */ +typedef struct DMonthDay { + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DMonthDay_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonthDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h new file mode 100644 index 000000000..38a00aaf8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DOffset_H_ +#define _DOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DOffset */ +typedef long DOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DOffset; +asn_struct_free_f DOffset_free; +asn_struct_print_f DOffset_print; +asn_constr_check_f DOffset_constraint; +ber_type_decoder_f DOffset_decode_ber; +der_type_encoder_f DOffset_encode_der; +xer_type_decoder_f DOffset_decode_xer; +xer_type_encoder_f DOffset_encode_xer; +jer_type_encoder_f DOffset_encode_jer; +oer_type_decoder_f DOffset_decode_oer; +oer_type_encoder_f DOffset_encode_oer; +per_type_decoder_f DOffset_decode_uper; +per_type_encoder_f DOffset_encode_uper; +per_type_decoder_f DOffset_decode_aper; +per_type_encoder_f DOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h new file mode 100644 index 000000000..6bbe29873 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DSRCmsgID_H_ +#define _DSRCmsgID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCmsgID */ +typedef long DSRCmsgID_t; + +/* Implementation */ +#define DSRCmsgID_reservedMessageId_D ((DSRCmsgID_t)0) +#define DSRCmsgID_alaCarteMessage_D ((DSRCmsgID_t)1) +#define DSRCmsgID_basicSafetyMessage_D ((DSRCmsgID_t)2) +#define DSRCmsgID_basicSafetyMessageVerbose_D ((DSRCmsgID_t)3) +#define DSRCmsgID_commonSafetyRequest_D ((DSRCmsgID_t)4) +#define DSRCmsgID_emergencyVehicleAlert_D ((DSRCmsgID_t)5) +#define DSRCmsgID_intersectionCollision_D ((DSRCmsgID_t)6) +#define DSRCmsgID_mapData_D ((DSRCmsgID_t)7) +#define DSRCmsgID_nmeaCorrections_D ((DSRCmsgID_t)8) +#define DSRCmsgID_probeDataManagement_D ((DSRCmsgID_t)9) +#define DSRCmsgID_probeVehicleData_D ((DSRCmsgID_t)10) +#define DSRCmsgID_roadSideAlert_D ((DSRCmsgID_t)11) +#define DSRCmsgID_rtcmCorrections_D ((DSRCmsgID_t)12) +#define DSRCmsgID_signalPhaseAndTimingMessage_D ((DSRCmsgID_t)13) +#define DSRCmsgID_signalRequestMessage_D ((DSRCmsgID_t)14) +#define DSRCmsgID_signalStatusMessage_D ((DSRCmsgID_t)15) +#define DSRCmsgID_travelerInformation_D ((DSRCmsgID_t)16) +#define DSRCmsgID_uperFrame_D ((DSRCmsgID_t)17) +extern asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; +asn_struct_free_f DSRCmsgID_free; +asn_struct_print_f DSRCmsgID_print; +asn_constr_check_f DSRCmsgID_constraint; +ber_type_decoder_f DSRCmsgID_decode_ber; +der_type_encoder_f DSRCmsgID_encode_der; +xer_type_decoder_f DSRCmsgID_decode_xer; +xer_type_encoder_f DSRCmsgID_encode_xer; +jer_type_encoder_f DSRCmsgID_encode_jer; +oer_type_decoder_f DSRCmsgID_decode_oer; +oer_type_encoder_f DSRCmsgID_encode_oer; +per_type_decoder_f DSRCmsgID_decode_uper; +per_type_encoder_f DSRCmsgID_encode_uper; +per_type_decoder_f DSRCmsgID_decode_aper; +per_type_encoder_f DSRCmsgID_encode_aper; +#define DSRCmsgID_mapData ((DSRCmsgID_t)18) +#define DSRCmsgID_signalPhaseAndTimingMessage ((DSRCmsgID_t)19) +#define DSRCmsgID_basicSafetyMessage ((DSRCmsgID_t)20) +#define DSRCmsgID_commonSafetyRequest ((DSRCmsgID_t)21) +#define DSRCmsgID_emergencyVehicleAlert ((DSRCmsgID_t)22) +#define DSRCmsgID_intersectionCollision ((DSRCmsgID_t)23) +#define DSRCmsgID_nmeaCorrections ((DSRCmsgID_t)24) +#define DSRCmsgID_probeDataManagement ((DSRCmsgID_t)25) +#define DSRCmsgID_probeVehicleData ((DSRCmsgID_t)26) +#define DSRCmsgID_roadSideAlert ((DSRCmsgID_t)27) +#define DSRCmsgID_rtcmCorrections ((DSRCmsgID_t)28) +#define DSRCmsgID_signalRequestMessage ((DSRCmsgID_t)29) +#define DSRCmsgID_signalStatusMessage ((DSRCmsgID_t)30) +#define DSRCmsgID_travelerInformation ((DSRCmsgID_t)31) +#define DSRCmsgID_personalSafetyMessage ((DSRCmsgID_t)32) +#define DSRCmsgID_testMessage00 ((DSRCmsgID_t)240) +#define DSRCmsgID_testMessage01 ((DSRCmsgID_t)241) +#define DSRCmsgID_testMessage02 ((DSRCmsgID_t)242) +#define DSRCmsgID_testMessage03 ((DSRCmsgID_t)243) +#define DSRCmsgID_testMessage04 ((DSRCmsgID_t)244) +#define DSRCmsgID_testMessage05 ((DSRCmsgID_t)245) +#define DSRCmsgID_testMessage06 ((DSRCmsgID_t)246) +#define DSRCmsgID_testMessage07 ((DSRCmsgID_t)247) +#define DSRCmsgID_testMessage08 ((DSRCmsgID_t)248) +#define DSRCmsgID_testMessage09 ((DSRCmsgID_t)249) +#define DSRCmsgID_testMessage10 ((DSRCmsgID_t)250) +#define DSRCmsgID_testMessage11 ((DSRCmsgID_t)251) +#define DSRCmsgID_testMessage12 ((DSRCmsgID_t)252) +#define DSRCmsgID_testMessage13 ((DSRCmsgID_t)253) +#define DSRCmsgID_testMessage14 ((DSRCmsgID_t)254) +#define DSRCmsgID_testMessage15 ((DSRCmsgID_t)255) + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h new file mode 100644 index 000000000..aaeeb20d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DSecond_H_ +#define _DSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSecond */ +typedef long DSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSecond; +asn_struct_free_f DSecond_free; +asn_struct_print_f DSecond_print; +asn_constr_check_f DSecond_constraint; +ber_type_decoder_f DSecond_decode_ber; +der_type_encoder_f DSecond_encode_der; +xer_type_decoder_f DSecond_decode_xer; +xer_type_encoder_f DSecond_encode_xer; +jer_type_encoder_f DSecond_encode_jer; +oer_type_decoder_f DSecond_decode_oer; +oer_type_encoder_f DSecond_encode_oer; +per_type_decoder_f DSecond_decode_uper; +per_type_encoder_f DSecond_encode_uper; +per_type_decoder_f DSecond_decode_aper; +per_type_encoder_f DSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h new file mode 100644 index 000000000..8bb1b77df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DTime_H_ +#define _DTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DTime */ +typedef struct DTime { + DHour_t hour; + DMinute_t minute; + DSecond_t second; + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h new file mode 100644 index 000000000..16149f0c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DYear_H_ +#define _DYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYear */ +typedef long DYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DYear; +asn_struct_free_f DYear_free; +asn_struct_print_f DYear_print; +asn_constr_check_f DYear_constraint; +ber_type_decoder_f DYear_decode_ber; +der_type_encoder_f DYear_encode_der; +xer_type_decoder_f DYear_decode_xer; +xer_type_encoder_f DYear_encode_xer; +jer_type_encoder_f DYear_encode_jer; +oer_type_decoder_f DYear_decode_oer; +oer_type_encoder_f DYear_encode_oer; +per_type_decoder_f DYear_decode_uper; +per_type_encoder_f DYear_encode_uper; +per_type_decoder_f DYear_decode_aper; +per_type_encoder_f DYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h new file mode 100644 index 000000000..e5b3c9ff9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DYearMonth_H_ +#define _DYearMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYearMonth */ +typedef struct DYearMonth { + DYear_t year; + DMonth_t month; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DYearMonth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYearMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h new file mode 100644 index 000000000..983bead30 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DataParameters_H_ +#define _DataParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DataParameters */ +typedef struct DataParameters { + IA5String_t *processMethod; /* OPTIONAL */ + IA5String_t *processAgency; /* OPTIONAL */ + IA5String_t *lastCheckedDate; /* OPTIONAL */ + IA5String_t *geoidUsed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DataParameters_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DataParameters; +extern asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1; +extern asn_TYPE_member_t asn_MBR_DataParameters_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DataParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h new file mode 100644 index 000000000..7c682d9a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Day_H_ +#define _Day_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Day */ +typedef long Day_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Day_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Day; +asn_struct_free_f Day_free; +asn_struct_print_f Day_print; +asn_constr_check_f Day_constraint; +ber_type_decoder_f Day_decode_ber; +der_type_encoder_f Day_encode_der; +xer_type_decoder_f Day_decode_xer; +xer_type_encoder_f Day_encode_xer; +jer_type_encoder_f Day_encode_jer; +oer_type_decoder_f Day_decode_oer; +oer_type_encoder_f Day_encode_oer; +per_type_decoder_f Day_decode_uper; +per_type_encoder_f Day_encode_uper; +per_type_decoder_f Day_decode_aper; +per_type_encoder_f Day_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Day_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h new file mode 100644 index 000000000..c40b512b6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DayOfWeek_H_ +#define _DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DayOfWeek { + DayOfWeek_unknown = 0, + DayOfWeek_monday = 1, + DayOfWeek_tuesday = 2, + DayOfWeek_wednesday = 3, + DayOfWeek_thursday = 4, + DayOfWeek_friday = 5, + DayOfWeek_saturday = 6, + DayOfWeek_sunday = 7 +} e_DayOfWeek; + +/* DayOfWeek */ +typedef long DayOfWeek_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; +extern const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1; +asn_struct_free_f DayOfWeek_free; +asn_struct_print_f DayOfWeek_print; +asn_constr_check_f DayOfWeek_constraint; +ber_type_decoder_f DayOfWeek_decode_ber; +der_type_encoder_f DayOfWeek_encode_der; +xer_type_decoder_f DayOfWeek_decode_xer; +xer_type_encoder_f DayOfWeek_encode_xer; +jer_type_encoder_f DayOfWeek_encode_jer; +oer_type_decoder_f DayOfWeek_decode_oer; +oer_type_encoder_f DayOfWeek_encode_oer; +per_type_decoder_f DayOfWeek_decode_uper; +per_type_encoder_f DayOfWeek_encode_uper; +per_type_decoder_f DayOfWeek_decode_aper; +per_type_encoder_f DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h new file mode 100644 index 000000000..294b9dda2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DegreesLat_H_ +#define _DegreesLat_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLat */ +typedef long DegreesLat_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLat_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; +asn_struct_free_f DegreesLat_free; +asn_struct_print_f DegreesLat_print; +asn_constr_check_f DegreesLat_constraint; +ber_type_decoder_f DegreesLat_decode_ber; +der_type_encoder_f DegreesLat_encode_der; +xer_type_decoder_f DegreesLat_decode_xer; +xer_type_encoder_f DegreesLat_encode_xer; +jer_type_encoder_f DegreesLat_encode_jer; +oer_type_decoder_f DegreesLat_decode_oer; +oer_type_encoder_f DegreesLat_encode_oer; +per_type_decoder_f DegreesLat_decode_uper; +per_type_encoder_f DegreesLat_encode_uper; +per_type_decoder_f DegreesLat_decode_aper; +per_type_encoder_f DegreesLat_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLat_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h new file mode 100644 index 000000000..6ea26c16b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DegreesLong_H_ +#define _DegreesLong_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLong */ +typedef long DegreesLong_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLong_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; +asn_struct_free_f DegreesLong_free; +asn_struct_print_f DegreesLong_print; +asn_constr_check_f DegreesLong_constraint; +ber_type_decoder_f DegreesLong_decode_ber; +der_type_encoder_f DegreesLong_encode_der; +xer_type_decoder_f DegreesLong_decode_xer; +xer_type_encoder_f DegreesLong_encode_xer; +jer_type_encoder_f DegreesLong_encode_jer; +oer_type_decoder_f DegreesLong_decode_oer; +oer_type_encoder_f DegreesLong_encode_oer; +per_type_decoder_f DegreesLong_decode_uper; +per_type_encoder_f DegreesLong_encode_uper; +per_type_decoder_f DegreesLong_decode_aper; +per_type_encoder_f DegreesLong_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLong_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h new file mode 100644 index 000000000..e5f4a50e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DeltaAngle_H_ +#define _DeltaAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaAngle */ +typedef long DeltaAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; +asn_struct_free_f DeltaAngle_free; +asn_struct_print_f DeltaAngle_print; +asn_constr_check_f DeltaAngle_constraint; +ber_type_decoder_f DeltaAngle_decode_ber; +der_type_encoder_f DeltaAngle_encode_der; +xer_type_decoder_f DeltaAngle_decode_xer; +xer_type_encoder_f DeltaAngle_encode_xer; +jer_type_encoder_f DeltaAngle_encode_jer; +oer_type_decoder_f DeltaAngle_decode_oer; +oer_type_encoder_f DeltaAngle_encode_oer; +per_type_decoder_f DeltaAngle_decode_uper; +per_type_encoder_f DeltaAngle_encode_uper; +per_type_decoder_f DeltaAngle_decode_aper; +per_type_encoder_f DeltaAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h new file mode 100644 index 000000000..223e8ed56 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DeltaTime_H_ +#define _DeltaTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaTime */ +typedef long DeltaTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaTime; +asn_struct_free_f DeltaTime_free; +asn_struct_print_f DeltaTime_print; +asn_constr_check_f DeltaTime_constraint; +ber_type_decoder_f DeltaTime_decode_ber; +der_type_encoder_f DeltaTime_encode_der; +xer_type_decoder_f DeltaTime_decode_xer; +xer_type_encoder_f DeltaTime_encode_xer; +jer_type_encoder_f DeltaTime_encode_jer; +oer_type_decoder_f DeltaTime_decode_oer; +oer_type_encoder_f DeltaTime_encode_oer; +per_type_decoder_f DeltaTime_decode_uper; +per_type_encoder_f DeltaTime_encode_uper; +per_type_decoder_f DeltaTime_decode_aper; +per_type_encoder_f DeltaTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h new file mode 100644 index 000000000..b731f0749 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DescriptiveName_H_ +#define _DescriptiveName_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DescriptiveName */ +typedef IA5String_t DescriptiveName_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; +asn_struct_free_f DescriptiveName_free; +asn_struct_print_f DescriptiveName_print; +asn_constr_check_f DescriptiveName_constraint; +ber_type_decoder_f DescriptiveName_decode_ber; +der_type_encoder_f DescriptiveName_encode_der; +xer_type_decoder_f DescriptiveName_decode_xer; +xer_type_encoder_f DescriptiveName_encode_xer; +jer_type_encoder_f DescriptiveName_encode_jer; +oer_type_decoder_f DescriptiveName_decode_oer; +oer_type_encoder_f DescriptiveName_encode_oer; +per_type_decoder_f DescriptiveName_decode_uper; +per_type_encoder_f DescriptiveName_encode_uper; +per_type_decoder_f DescriptiveName_decode_aper; +per_type_encoder_f DescriptiveName_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DescriptiveName_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h new file mode 100644 index 000000000..bc8274516 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DirectionOfUse_H_ +#define _DirectionOfUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DirectionOfUse { + DirectionOfUse_unavailable = 0, + DirectionOfUse_forward = 1, + DirectionOfUse_reverse = 2, + DirectionOfUse_both = 3 +} e_DirectionOfUse; + +/* DirectionOfUse */ +typedef long DirectionOfUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; +extern const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1; +asn_struct_free_f DirectionOfUse_free; +asn_struct_print_f DirectionOfUse_print; +asn_constr_check_f DirectionOfUse_constraint; +ber_type_decoder_f DirectionOfUse_decode_ber; +der_type_encoder_f DirectionOfUse_encode_der; +xer_type_decoder_f DirectionOfUse_decode_xer; +xer_type_encoder_f DirectionOfUse_encode_xer; +jer_type_encoder_f DirectionOfUse_encode_jer; +oer_type_decoder_f DirectionOfUse_decode_oer; +oer_type_encoder_f DirectionOfUse_encode_oer; +per_type_decoder_f DirectionOfUse_decode_uper; +per_type_encoder_f DirectionOfUse_encode_uper; +per_type_decoder_f DirectionOfUse_decode_aper; +per_type_encoder_f DirectionOfUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DirectionOfUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h new file mode 100644 index 000000000..06172bec3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DisabledVehicle_H_ +#define _DisabledVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DisabledVehicle */ +typedef struct DisabledVehicle { + ITIScodes_t statusDetails; + GenericLocations_t *locationDetails; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DisabledVehicle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DisabledVehicle; +extern asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1; +extern asn_TYPE_member_t asn_MBR_DisabledVehicle_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DisabledVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h new file mode 100644 index 000000000..c6d925dbf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DistanceUnits_H_ +#define _DistanceUnits_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DistanceUnits { + DistanceUnits_centimeter = 0, + DistanceUnits_cm2_5 = 1, + DistanceUnits_decimeter = 2, + DistanceUnits_meter = 3, + DistanceUnits_kilometer = 4, + DistanceUnits_foot = 5, + DistanceUnits_yard = 6, + DistanceUnits_mile = 7 +} e_DistanceUnits; + +/* DistanceUnits */ +typedef long DistanceUnits_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DistanceUnits; +extern const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1; +asn_struct_free_f DistanceUnits_free; +asn_struct_print_f DistanceUnits_print; +asn_constr_check_f DistanceUnits_constraint; +ber_type_decoder_f DistanceUnits_decode_ber; +der_type_encoder_f DistanceUnits_encode_der; +xer_type_decoder_f DistanceUnits_decode_xer; +xer_type_encoder_f DistanceUnits_encode_xer; +jer_type_encoder_f DistanceUnits_encode_jer; +oer_type_decoder_f DistanceUnits_decode_oer; +oer_type_encoder_f DistanceUnits_encode_oer; +per_type_decoder_f DistanceUnits_decode_uper; +per_type_encoder_f DistanceUnits_encode_uper; +per_type_decoder_f DistanceUnits_decode_aper; +per_type_encoder_f DistanceUnits_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DistanceUnits_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h new file mode 100644 index 000000000..17a7e6a16 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DriveAxleLiftAirPressure_H_ +#define _DriveAxleLiftAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLiftAirPressure */ +typedef long DriveAxleLiftAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; +asn_struct_free_f DriveAxleLiftAirPressure_free; +asn_struct_print_f DriveAxleLiftAirPressure_print; +asn_constr_check_f DriveAxleLiftAirPressure_constraint; +ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; +der_type_encoder_f DriveAxleLiftAirPressure_encode_der; +xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; +xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; +jer_type_encoder_f DriveAxleLiftAirPressure_encode_jer; +oer_type_decoder_f DriveAxleLiftAirPressure_decode_oer; +oer_type_encoder_f DriveAxleLiftAirPressure_encode_oer; +per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; +per_type_decoder_f DriveAxleLiftAirPressure_decode_aper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLiftAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h new file mode 100644 index 000000000..e6bf894e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DriveAxleLocation_H_ +#define _DriveAxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLocation */ +typedef long DriveAxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; +asn_struct_free_f DriveAxleLocation_free; +asn_struct_print_f DriveAxleLocation_print; +asn_constr_check_f DriveAxleLocation_constraint; +ber_type_decoder_f DriveAxleLocation_decode_ber; +der_type_encoder_f DriveAxleLocation_encode_der; +xer_type_decoder_f DriveAxleLocation_decode_xer; +xer_type_encoder_f DriveAxleLocation_encode_xer; +jer_type_encoder_f DriveAxleLocation_encode_jer; +oer_type_decoder_f DriveAxleLocation_decode_oer; +oer_type_encoder_f DriveAxleLocation_encode_oer; +per_type_decoder_f DriveAxleLocation_decode_uper; +per_type_encoder_f DriveAxleLocation_encode_uper; +per_type_decoder_f DriveAxleLocation_decode_aper; +per_type_encoder_f DriveAxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h new file mode 100644 index 000000000..77c3202cd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DriveAxleLubePressure_H_ +#define _DriveAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLubePressure */ +typedef long DriveAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; +asn_struct_free_f DriveAxleLubePressure_free; +asn_struct_print_f DriveAxleLubePressure_print; +asn_constr_check_f DriveAxleLubePressure_constraint; +ber_type_decoder_f DriveAxleLubePressure_decode_ber; +der_type_encoder_f DriveAxleLubePressure_encode_der; +xer_type_decoder_f DriveAxleLubePressure_decode_xer; +xer_type_encoder_f DriveAxleLubePressure_encode_xer; +jer_type_encoder_f DriveAxleLubePressure_encode_jer; +oer_type_decoder_f DriveAxleLubePressure_decode_oer; +oer_type_encoder_f DriveAxleLubePressure_encode_oer; +per_type_decoder_f DriveAxleLubePressure_decode_uper; +per_type_encoder_f DriveAxleLubePressure_encode_uper; +per_type_decoder_f DriveAxleLubePressure_decode_aper; +per_type_encoder_f DriveAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h new file mode 100644 index 000000000..1d62c1657 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DriveAxleTemperature_H_ +#define _DriveAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleTemperature */ +typedef long DriveAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; +asn_struct_free_f DriveAxleTemperature_free; +asn_struct_print_f DriveAxleTemperature_print; +asn_constr_check_f DriveAxleTemperature_constraint; +ber_type_decoder_f DriveAxleTemperature_decode_ber; +der_type_encoder_f DriveAxleTemperature_encode_der; +xer_type_decoder_f DriveAxleTemperature_decode_xer; +xer_type_encoder_f DriveAxleTemperature_encode_xer; +jer_type_encoder_f DriveAxleTemperature_encode_jer; +oer_type_decoder_f DriveAxleTemperature_decode_oer; +oer_type_encoder_f DriveAxleTemperature_encode_oer; +per_type_decoder_f DriveAxleTemperature_decode_uper; +per_type_encoder_f DriveAxleTemperature_encode_uper; +per_type_decoder_f DriveAxleTemperature_decode_aper; +per_type_encoder_f DriveAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h new file mode 100644 index 000000000..c0cd4dd5f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DrivenLineOffsetLg_H_ +#define _DrivenLineOffsetLg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetLg */ +typedef long DrivenLineOffsetLg_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; +asn_struct_free_f DrivenLineOffsetLg_free; +asn_struct_print_f DrivenLineOffsetLg_print; +asn_constr_check_f DrivenLineOffsetLg_constraint; +ber_type_decoder_f DrivenLineOffsetLg_decode_ber; +der_type_encoder_f DrivenLineOffsetLg_encode_der; +xer_type_decoder_f DrivenLineOffsetLg_decode_xer; +xer_type_encoder_f DrivenLineOffsetLg_encode_xer; +jer_type_encoder_f DrivenLineOffsetLg_encode_jer; +oer_type_decoder_f DrivenLineOffsetLg_decode_oer; +oer_type_encoder_f DrivenLineOffsetLg_encode_oer; +per_type_decoder_f DrivenLineOffsetLg_decode_uper; +per_type_encoder_f DrivenLineOffsetLg_encode_uper; +per_type_decoder_f DrivenLineOffsetLg_decode_aper; +per_type_encoder_f DrivenLineOffsetLg_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetLg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h new file mode 100644 index 000000000..4e6e8d820 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DrivenLineOffsetSm_H_ +#define _DrivenLineOffsetSm_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetSm */ +typedef long DrivenLineOffsetSm_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; +asn_struct_free_f DrivenLineOffsetSm_free; +asn_struct_print_f DrivenLineOffsetSm_print; +asn_constr_check_f DrivenLineOffsetSm_constraint; +ber_type_decoder_f DrivenLineOffsetSm_decode_ber; +der_type_encoder_f DrivenLineOffsetSm_encode_der; +xer_type_decoder_f DrivenLineOffsetSm_decode_xer; +xer_type_encoder_f DrivenLineOffsetSm_encode_xer; +jer_type_encoder_f DrivenLineOffsetSm_encode_jer; +oer_type_decoder_f DrivenLineOffsetSm_decode_oer; +oer_type_encoder_f DrivenLineOffsetSm_encode_oer; +per_type_decoder_f DrivenLineOffsetSm_decode_uper; +per_type_encoder_f DrivenLineOffsetSm_encode_uper; +per_type_decoder_f DrivenLineOffsetSm_decode_aper; +per_type_encoder_f DrivenLineOffsetSm_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetSm_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h new file mode 100644 index 000000000..baae8abac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _DrivingWheelAngle_H_ +#define _DrivingWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivingWheelAngle */ +typedef long DrivingWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; +asn_struct_free_f DrivingWheelAngle_free; +asn_struct_print_f DrivingWheelAngle_print; +asn_constr_check_f DrivingWheelAngle_constraint; +ber_type_decoder_f DrivingWheelAngle_decode_ber; +der_type_encoder_f DrivingWheelAngle_encode_der; +xer_type_decoder_f DrivingWheelAngle_decode_xer; +xer_type_encoder_f DrivingWheelAngle_encode_xer; +jer_type_encoder_f DrivingWheelAngle_encode_jer; +oer_type_decoder_f DrivingWheelAngle_decode_oer; +oer_type_encoder_f DrivingWheelAngle_encode_oer; +per_type_decoder_f DrivingWheelAngle_decode_uper; +per_type_encoder_f DrivingWheelAngle_encode_uper; +per_type_decoder_f DrivingWheelAngle_decode_aper; +per_type_encoder_f DrivingWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivingWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h new file mode 100644 index 000000000..620815993 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Duration_H_ +#define _Duration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Duration */ +typedef long Duration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Duration; +asn_struct_free_f Duration_free; +asn_struct_print_f Duration_print; +asn_constr_check_f Duration_constraint; +ber_type_decoder_f Duration_decode_ber; +der_type_encoder_f Duration_encode_der; +xer_type_decoder_f Duration_decode_xer; +xer_type_encoder_f Duration_encode_xer; +jer_type_encoder_f Duration_encode_jer; +oer_type_decoder_f Duration_decode_oer; +oer_type_encoder_f Duration_encode_oer; +per_type_decoder_f Duration_decode_uper; +per_type_encoder_f Duration_encode_uper; +per_type_decoder_f Duration_decode_aper; +per_type_encoder_f Duration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Duration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h new file mode 100644 index 000000000..b10ac11c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EXTERNAL_H_ +#define _EXTERNAL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OBJECT_IDENTIFIER.h" +#include "NativeInteger.h" +#include "ObjectDescriptor.h" +#include "ANY.h" +#include "OCTET_STRING.h" +#include "BIT_STRING.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EXTERNAL__encoding_PR { + EXTERNAL__encoding_PR_NOTHING, /* No components present */ + EXTERNAL__encoding_PR_single_ASN1_type, + EXTERNAL__encoding_PR_octet_aligned, + EXTERNAL__encoding_PR_arbitrary +} EXTERNAL__encoding_PR; + +/* EXTERNAL */ +typedef struct EXTERNAL { + OBJECT_IDENTIFIER_t *direct_reference; /* OPTIONAL */ + long *indirect_reference; /* OPTIONAL */ + ObjectDescriptor_t *data_value_descriptor; /* OPTIONAL */ + struct EXTERNAL__encoding { + EXTERNAL__encoding_PR present; + union EXTERNAL__encoding_u { + ANY_t single_ASN1_type; + OCTET_STRING_t octet_aligned; + BIT_STRING_t arbitrary; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } encoding; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EXTERNAL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EXTERNAL; + +#ifdef __cplusplus +} +#endif + +#endif /* _EXTERNAL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h new file mode 100644 index 000000000..67c3b1586 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ElevationConfidence_H_ +#define _ElevationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ElevationConfidence { + ElevationConfidence_unavailable = 0, + ElevationConfidence_elev_500_00 = 1, + ElevationConfidence_elev_200_00 = 2, + ElevationConfidence_elev_100_00 = 3, + ElevationConfidence_elev_050_00 = 4, + ElevationConfidence_elev_020_00 = 5, + ElevationConfidence_elev_010_00 = 6, + ElevationConfidence_elev_005_00 = 7, + ElevationConfidence_elev_002_00 = 8, + ElevationConfidence_elev_001_00 = 9, + ElevationConfidence_elev_000_50 = 10, + ElevationConfidence_elev_000_20 = 11, + ElevationConfidence_elev_000_10 = 12, + ElevationConfidence_elev_000_05 = 13, + ElevationConfidence_elev_000_02 = 14, + ElevationConfidence_elev_000_01 = 15 +} e_ElevationConfidence; + +/* ElevationConfidence */ +typedef long ElevationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1; +asn_struct_free_f ElevationConfidence_free; +asn_struct_print_f ElevationConfidence_print; +asn_constr_check_f ElevationConfidence_constraint; +ber_type_decoder_f ElevationConfidence_decode_ber; +der_type_encoder_f ElevationConfidence_encode_der; +xer_type_decoder_f ElevationConfidence_decode_xer; +xer_type_encoder_f ElevationConfidence_encode_xer; +jer_type_encoder_f ElevationConfidence_encode_jer; +oer_type_decoder_f ElevationConfidence_decode_oer; +oer_type_encoder_f ElevationConfidence_encode_oer; +per_type_decoder_f ElevationConfidence_decode_uper; +per_type_encoder_f ElevationConfidence_encode_uper; +per_type_decoder_f ElevationConfidence_decode_aper; +per_type_encoder_f ElevationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ElevationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h new file mode 100644 index 000000000..a27cda772 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EmergencyDetails_H_ +#define _EmergencyDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "SirenInUse.h" +#include "LightbarInUse.h" +#include "MultiVehicleResponse.h" +#include "ResponseType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrivilegedEvents; + +/* EmergencyDetails */ +typedef struct EmergencyDetails { + SSPindex_t notUsed; + SirenInUse_t sirenUse; + LightbarInUse_t lightsUse; + MultiVehicleResponse_t multi; + struct PrivilegedEvents *events; /* OPTIONAL */ + ResponseType_t *responseType; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EmergencyDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmergencyDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h new file mode 100644 index 000000000..9a7929621 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "EmergencyVehicleAlert" + * found in "J2735-EmergencyVehicleAlert.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EmergencyVehicleAlert_H_ +#define _EmergencyVehicleAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "TemporaryID.h" +#include "RoadSideAlert.h" +#include "ResponseType.h" +#include "VehicleMass.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct Reg_EmergencyVehicleAlert; + +/* EmergencyVehicleAlert */ +typedef struct EmergencyVehicleAlert { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RoadSideAlert_t rsaMsg; + ResponseType_t *responseType; /* OPTIONAL */ + struct EmergencyDetails *details; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + VehicleType_t *basicType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + struct EmergencyVehicleAlert__regional { + A_SEQUENCE_OF(struct Reg_EmergencyVehicleAlert) 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; +} EmergencyVehicleAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[11]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmergencyVehicleAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h new file mode 100644 index 000000000..ad8248a03 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EmissionType_H_ +#define _EmissionType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EmissionType { + EmissionType_typeA = 0, + EmissionType_typeB = 1, + EmissionType_typeC = 2, + EmissionType_typeD = 3, + EmissionType_typeE = 4 + /* + * Enumeration is extensible + */ +} e_EmissionType; + +/* EmissionType */ +typedef long EmissionType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EmissionType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EmissionType; +extern const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1; +asn_struct_free_f EmissionType_free; +asn_struct_print_f EmissionType_print; +asn_constr_check_f EmissionType_constraint; +ber_type_decoder_f EmissionType_decode_ber; +der_type_encoder_f EmissionType_encode_der; +xer_type_decoder_f EmissionType_decode_xer; +xer_type_encoder_f EmissionType_encode_xer; +jer_type_encoder_f EmissionType_encode_jer; +oer_type_decoder_f EmissionType_decode_oer; +oer_type_encoder_f EmissionType_encode_oer; +per_type_decoder_f EmissionType_decode_uper; +per_type_encoder_f EmissionType_encode_uper; +per_type_decoder_f EmissionType_decode_aper; +per_type_encoder_f EmissionType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmissionType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h new file mode 100644 index 000000000..9239d2a2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EnabledLaneList_H_ +#define _EnabledLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EnabledLaneList */ +typedef struct EnabledLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EnabledLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; +extern asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_EnabledLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _EnabledLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h new file mode 100644 index 000000000..1445c8ece --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EssMobileFriction_H_ +#define _EssMobileFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssMobileFriction */ +typedef long EssMobileFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; +asn_struct_free_f EssMobileFriction_free; +asn_struct_print_f EssMobileFriction_print; +asn_constr_check_f EssMobileFriction_constraint; +ber_type_decoder_f EssMobileFriction_decode_ber; +der_type_encoder_f EssMobileFriction_encode_der; +xer_type_decoder_f EssMobileFriction_decode_xer; +xer_type_encoder_f EssMobileFriction_encode_xer; +jer_type_encoder_f EssMobileFriction_encode_jer; +oer_type_decoder_f EssMobileFriction_decode_oer; +oer_type_encoder_f EssMobileFriction_encode_oer; +per_type_decoder_f EssMobileFriction_decode_uper; +per_type_encoder_f EssMobileFriction_encode_uper; +per_type_decoder_f EssMobileFriction_decode_aper; +per_type_encoder_f EssMobileFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssMobileFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h new file mode 100644 index 000000000..7094f16ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EssPrecipRate_H_ +#define _EssPrecipRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssPrecipRate */ +typedef long EssPrecipRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; +asn_struct_free_f EssPrecipRate_free; +asn_struct_print_f EssPrecipRate_print; +asn_constr_check_f EssPrecipRate_constraint; +ber_type_decoder_f EssPrecipRate_decode_ber; +der_type_encoder_f EssPrecipRate_encode_der; +xer_type_decoder_f EssPrecipRate_decode_xer; +xer_type_encoder_f EssPrecipRate_encode_xer; +jer_type_encoder_f EssPrecipRate_encode_jer; +oer_type_decoder_f EssPrecipRate_decode_oer; +oer_type_encoder_f EssPrecipRate_encode_oer; +per_type_decoder_f EssPrecipRate_decode_uper; +per_type_encoder_f EssPrecipRate_encode_uper; +per_type_decoder_f EssPrecipRate_decode_aper; +per_type_encoder_f EssPrecipRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h new file mode 100644 index 000000000..4f33ef4e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EssPrecipSituation_H_ +#define _EssPrecipSituation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipSituation { + EssPrecipSituation_other = 1, + EssPrecipSituation_unknown = 2, + EssPrecipSituation_noPrecipitation = 3, + EssPrecipSituation_unidentifiedSlight = 4, + EssPrecipSituation_unidentifiedModerate = 5, + EssPrecipSituation_unidentifiedHeavy = 6, + EssPrecipSituation_snowSlight = 7, + EssPrecipSituation_snowModerate = 8, + EssPrecipSituation_snowHeavy = 9, + EssPrecipSituation_rainSlight = 10, + EssPrecipSituation_rainModerate = 11, + EssPrecipSituation_rainHeavy = 12, + EssPrecipSituation_frozenPrecipitationSlight = 13, + EssPrecipSituation_frozenPrecipitationModerate = 14, + EssPrecipSituation_frozenPrecipitationHeavy = 15 +} e_EssPrecipSituation; + +/* EssPrecipSituation */ +typedef long EssPrecipSituation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1; +asn_struct_free_f EssPrecipSituation_free; +asn_struct_print_f EssPrecipSituation_print; +asn_constr_check_f EssPrecipSituation_constraint; +ber_type_decoder_f EssPrecipSituation_decode_ber; +der_type_encoder_f EssPrecipSituation_encode_der; +xer_type_decoder_f EssPrecipSituation_decode_xer; +xer_type_encoder_f EssPrecipSituation_encode_xer; +jer_type_encoder_f EssPrecipSituation_encode_jer; +oer_type_decoder_f EssPrecipSituation_decode_oer; +oer_type_encoder_f EssPrecipSituation_encode_oer; +per_type_decoder_f EssPrecipSituation_decode_uper; +per_type_encoder_f EssPrecipSituation_encode_uper; +per_type_decoder_f EssPrecipSituation_decode_aper; +per_type_encoder_f EssPrecipSituation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipSituation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h new file mode 100644 index 000000000..e114ee243 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EssPrecipYesNo_H_ +#define _EssPrecipYesNo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipYesNo { + EssPrecipYesNo_precip = 1, + EssPrecipYesNo_noPrecip = 2, + EssPrecipYesNo_error = 3 +} e_EssPrecipYesNo; + +/* EssPrecipYesNo */ +typedef long EssPrecipYesNo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1; +asn_struct_free_f EssPrecipYesNo_free; +asn_struct_print_f EssPrecipYesNo_print; +asn_constr_check_f EssPrecipYesNo_constraint; +ber_type_decoder_f EssPrecipYesNo_decode_ber; +der_type_encoder_f EssPrecipYesNo_encode_der; +xer_type_decoder_f EssPrecipYesNo_decode_xer; +xer_type_encoder_f EssPrecipYesNo_encode_xer; +jer_type_encoder_f EssPrecipYesNo_encode_jer; +oer_type_decoder_f EssPrecipYesNo_decode_oer; +oer_type_encoder_f EssPrecipYesNo_encode_oer; +per_type_decoder_f EssPrecipYesNo_decode_uper; +per_type_encoder_f EssPrecipYesNo_encode_uper; +per_type_decoder_f EssPrecipYesNo_decode_aper; +per_type_encoder_f EssPrecipYesNo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipYesNo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h new file mode 100644 index 000000000..d6fb15dbd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EssSolarRadiation_H_ +#define _EssSolarRadiation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssSolarRadiation */ +typedef long EssSolarRadiation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; +asn_struct_free_f EssSolarRadiation_free; +asn_struct_print_f EssSolarRadiation_print; +asn_constr_check_f EssSolarRadiation_constraint; +ber_type_decoder_f EssSolarRadiation_decode_ber; +der_type_encoder_f EssSolarRadiation_encode_der; +xer_type_decoder_f EssSolarRadiation_decode_xer; +xer_type_encoder_f EssSolarRadiation_encode_xer; +jer_type_encoder_f EssSolarRadiation_encode_jer; +oer_type_decoder_f EssSolarRadiation_decode_oer; +oer_type_encoder_f EssSolarRadiation_encode_oer; +per_type_decoder_f EssSolarRadiation_decode_uper; +per_type_encoder_f EssSolarRadiation_encode_uper; +per_type_decoder_f EssSolarRadiation_decode_aper; +per_type_encoder_f EssSolarRadiation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssSolarRadiation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h new file mode 100644 index 000000000..0c6a9797b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _EventDescription_H_ +#define _EventDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_EventDescription; + +/* EventDescription */ +typedef struct EventDescription { + ITIScodes_t typeEvent; + struct EventDescription__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct EventDescription__regional { + A_SEQUENCE_OF(struct Reg_EventDescription) 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; +} EventDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_EventDescription_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h new file mode 100644 index 000000000..1a0aec067 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ExitService_H_ +#define _ExitService_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExitService__Member__item_PR { + ExitService__Member__item_PR_NOTHING, /* No components present */ + ExitService__Member__item_PR_itis, + ExitService__Member__item_PR_text +} ExitService__Member__item_PR; + +/* Forward definitions */ +typedef struct ExitService__Member { + struct ExitService__Member__item { + ExitService__Member__item_PR present; + union ExitService__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService__Member; + +/* ExitService */ +typedef struct ExitService { + A_SEQUENCE_OF(ExitService__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ExitService; +extern asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1; +extern asn_TYPE_member_t asn_MBR_ExitService_1[1]; +extern asn_per_constraints_t asn_PER_type_ExitService_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExitService_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h new file mode 100644 index 000000000..4f5067c78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Extent_H_ +#define _Extent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Extent { + Extent_useInstantlyOnly = 0, + Extent_useFor3meters = 1, + Extent_useFor10meters = 2, + Extent_useFor50meters = 3, + Extent_useFor100meters = 4, + Extent_useFor500meters = 5, + Extent_useFor1000meters = 6, + Extent_useFor5000meters = 7, + Extent_useFor10000meters = 8, + Extent_useFor50000meters = 9, + Extent_useFor100000meters = 10, + Extent_useFor500000meters = 11, + Extent_useFor1000000meters = 12, + Extent_useFor5000000meters = 13, + Extent_useFor10000000meters = 14, + Extent_forever = 15 +} e_Extent; + +/* Extent */ +typedef long Extent_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Extent_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Extent; +extern const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1; +asn_struct_free_f Extent_free; +asn_struct_print_f Extent_print; +asn_constr_check_f Extent_constraint; +ber_type_decoder_f Extent_decode_ber; +der_type_encoder_f Extent_encode_der; +xer_type_decoder_f Extent_decode_xer; +xer_type_encoder_f Extent_encode_xer; +jer_type_encoder_f Extent_encode_jer; +oer_type_decoder_f Extent_decode_oer; +oer_type_encoder_f Extent_encode_oer; +per_type_decoder_f Extent_decode_uper; +per_type_encoder_f Extent_encode_uper; +per_type_decoder_f Extent_decode_aper; +per_type_encoder_f Extent_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Extent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h new file mode 100644 index 000000000..5be7493b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ExteriorLights_H_ +#define _ExteriorLights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExteriorLights { + ExteriorLights_lowBeamHeadlightsOn = 0, + ExteriorLights_highBeamHeadlightsOn = 1, + ExteriorLights_leftTurnSignalOn = 2, + ExteriorLights_rightTurnSignalOn = 3, + ExteriorLights_hazardSignalOn = 4, + ExteriorLights_automaticLightControlOn = 5, + ExteriorLights_daytimeRunningLightsOn = 6, + ExteriorLights_fogLightOn = 7, + ExteriorLights_parkingLightsOn = 8 +} e_ExteriorLights; + +/* ExteriorLights */ +typedef BIT_STRING_t ExteriorLights_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; +asn_struct_free_f ExteriorLights_free; +asn_struct_print_f ExteriorLights_print; +asn_constr_check_f ExteriorLights_constraint; +ber_type_decoder_f ExteriorLights_decode_ber; +der_type_encoder_f ExteriorLights_encode_der; +xer_type_decoder_f ExteriorLights_decode_xer; +xer_type_encoder_f ExteriorLights_encode_xer; +jer_type_encoder_f ExteriorLights_encode_jer; +oer_type_decoder_f ExteriorLights_decode_oer; +oer_type_encoder_f ExteriorLights_encode_oer; +per_type_decoder_f ExteriorLights_decode_uper; +per_type_encoder_f ExteriorLights_encode_uper; +per_type_decoder_f ExteriorLights_decode_aper; +per_type_encoder_f ExteriorLights_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExteriorLights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h new file mode 100644 index 000000000..60e0ec344 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _FuelType_H_ +#define _FuelType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FuelType */ +typedef long FuelType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FuelType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FuelType; +asn_struct_free_f FuelType_free; +asn_struct_print_f FuelType_print; +asn_constr_check_f FuelType_constraint; +ber_type_decoder_f FuelType_decode_ber; +der_type_encoder_f FuelType_encode_der; +xer_type_decoder_f FuelType_decode_xer; +xer_type_encoder_f FuelType_encode_xer; +jer_type_encoder_f FuelType_encode_jer; +oer_type_decoder_f FuelType_decode_oer; +oer_type_encoder_f FuelType_encode_oer; +per_type_decoder_f FuelType_decode_uper; +per_type_encoder_f FuelType_encode_uper; +per_type_decoder_f FuelType_decode_aper; +per_type_encoder_f FuelType_encode_aper; +#define FuelType_unknownFuel ((FuelType_t)0) +#define FuelType_gasoline ((FuelType_t)1) +#define FuelType_ethanol ((FuelType_t)2) +#define FuelType_diesel ((FuelType_t)3) +#define FuelType_electric ((FuelType_t)4) +#define FuelType_hybrid ((FuelType_t)5) +#define FuelType_hydrogen ((FuelType_t)6) +#define FuelType_natGasLiquid ((FuelType_t)7) +#define FuelType_natGasComp ((FuelType_t)8) +#define FuelType_propane ((FuelType_t)9) + +#ifdef __cplusplus +} +#endif + +#endif /* _FuelType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h new file mode 100644 index 000000000..e2ee328a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _FullPositionVector_H_ +#define _FullPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "Common_Elevation.h" +#include "Heading.h" +#include "TimeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DDateTime; +struct TransmissionAndSpeed; +struct PositionalAccuracy; +struct PositionConfidenceSet; +struct SpeedandHeadingandThrottleConfidence; + +/* FullPositionVector */ +typedef struct FullPositionVector { + struct DDateTime *utcTime; /* OPTIONAL */ + Longitude_t Long; + Latitude_t lat; + Common_Elevation_t *elevation; /* OPTIONAL */ + Heading_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} FullPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_FullPositionVector_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _FullPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h new file mode 100644 index 000000000..15fabd635 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _FurtherInfoID_H_ +#define _FurtherInfoID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FurtherInfoID */ +typedef OCTET_STRING_t FurtherInfoID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; +asn_struct_free_f FurtherInfoID_free; +asn_struct_print_f FurtherInfoID_print; +asn_constr_check_f FurtherInfoID_constraint; +ber_type_decoder_f FurtherInfoID_decode_ber; +der_type_encoder_f FurtherInfoID_encode_der; +xer_type_decoder_f FurtherInfoID_decode_xer; +xer_type_encoder_f FurtherInfoID_encode_xer; +jer_type_encoder_f FurtherInfoID_encode_jer; +oer_type_decoder_f FurtherInfoID_decode_oer; +oer_type_encoder_f FurtherInfoID_encode_oer; +per_type_decoder_f FurtherInfoID_decode_uper; +per_type_encoder_f FurtherInfoID_encode_uper; +per_type_decoder_f FurtherInfoID_decode_aper; +per_type_encoder_f FurtherInfoID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _FurtherInfoID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h new file mode 100644 index 000000000..36585e125 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GNSSstatus_H_ +#define _GNSSstatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GNSSstatus { + GNSSstatus_unavailable = 0, + GNSSstatus_isHealthy = 1, + GNSSstatus_isMonitored = 2, + GNSSstatus_baseStationType = 3, + GNSSstatus_aPDOPofUnder5 = 4, + GNSSstatus_inViewOfUnder5 = 5, + GNSSstatus_localCorrectionsPresent = 6, + GNSSstatus_networkCorrectionsPresent = 7 +} e_GNSSstatus; + +/* GNSSstatus */ +typedef BIT_STRING_t GNSSstatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNSSstatus; +asn_struct_free_f GNSSstatus_free; +asn_struct_print_f GNSSstatus_print; +asn_constr_check_f GNSSstatus_constraint; +ber_type_decoder_f GNSSstatus_decode_ber; +der_type_encoder_f GNSSstatus_encode_der; +xer_type_decoder_f GNSSstatus_decode_xer; +xer_type_encoder_f GNSSstatus_encode_xer; +jer_type_encoder_f GNSSstatus_encode_jer; +oer_type_decoder_f GNSSstatus_decode_oer; +oer_type_encoder_f GNSSstatus_encode_oer; +per_type_decoder_f GNSSstatus_decode_uper; +per_type_encoder_f GNSSstatus_encode_uper; +per_type_decoder_f GNSSstatus_decode_aper; +per_type_encoder_f GNSSstatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GNSSstatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h new file mode 100644 index 000000000..95842d08d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GenericLane_H_ +#define _GenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "DescriptiveName.h" +#include "ApproachID.h" +#include "LaneAttributes.h" +#include "AllowedManeuvers.h" +#include "NodeListXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ConnectsToList; +struct OverlayLaneList; +struct Reg_GenericLane; + +/* GenericLane */ +typedef struct GenericLane { + LaneID_t laneID; + DescriptiveName_t *name; /* OPTIONAL */ + ApproachID_t *ingressApproach; /* OPTIONAL */ + ApproachID_t *egressApproach; /* OPTIONAL */ + LaneAttributes_t laneAttributes; + AllowedManeuvers_t *maneuvers; /* OPTIONAL */ + NodeListXY_t nodeList; + struct ConnectsToList *connectsTo; /* OPTIONAL */ + struct OverlayLaneList *overlays; /* OPTIONAL */ + struct GenericLane__regional { + A_SEQUENCE_OF(struct Reg_GenericLane) 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; +} GenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericLane; +extern asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericLane_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h new file mode 100644 index 000000000..c7cd3bd5b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GenericLocations_H_ +#define _GenericLocations_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericLocations { + GenericLocations_on_bridges = 7937, + GenericLocations_in_tunnels = 7938, + GenericLocations_entering_or_leaving_tunnels = 7939, + GenericLocations_on_ramps = 7940, + GenericLocations_in_road_construction_area = 7941, + GenericLocations_around_a_curve = 7942, + GenericLocations_on_curve = 8026, + GenericLocations_on_tracks = 8009, + GenericLocations_in_street = 8025, + GenericLocations_shoulder = 8027, + GenericLocations_on_minor_roads = 7943, + GenericLocations_in_the_opposing_lanes = 7944, + GenericLocations_adjacent_to_roadway = 7945, + GenericLocations_across_tracks = 8024, + GenericLocations_on_bend = 7946, + GenericLocations_intersection = 8032, + GenericLocations_entire_intersection = 7947, + GenericLocations_in_the_median = 7948, + GenericLocations_moved_to_side_of_road = 7949, + GenericLocations_moved_to_shoulder = 7950, + GenericLocations_on_the_roadway = 7951, + GenericLocations_dip = 8010, + GenericLocations_traffic_circle = 8011, + GenericLocations_crossover = 8028, + GenericLocations_cross_road = 8029, + GenericLocations_side_road = 8030, + GenericLocations_to = 8014, + GenericLocations_by = 8015, + GenericLocations_through = 8016, + GenericLocations_area_of = 8017, + GenericLocations_under = 8018, + GenericLocations_over = 8019, + GenericLocations_from = 8020, + GenericLocations_approaching = 8021, + GenericLocations_entering_at = 8022, + GenericLocations_exiting_at = 8023, + GenericLocations_in_shaded_areas = 7952, + GenericLocations_in_low_lying_areas = 7953, + GenericLocations_in_the_downtown_area = 7954, + GenericLocations_in_the_inner_city_area = 7955, + GenericLocations_in_parts = 7956, + GenericLocations_in_some_places = 7957, + GenericLocations_in_the_ditch = 7958, + GenericLocations_in_the_valley = 7959, + GenericLocations_on_hill_top = 7960, + GenericLocations_near_the_foothills = 7961, + GenericLocations_at_high_altitudes = 7962, + GenericLocations_near_the_lake = 7963, + GenericLocations_near_the_shore = 7964, + GenericLocations_nearby_basin = 8008, + GenericLocations_over_the_crest_of_a_hill = 7965, + GenericLocations_other_than_on_the_roadway = 7966, + GenericLocations_near_the_beach = 7967, + GenericLocations_near_beach_access_point = 7968, + GenericLocations_mountain_pass = 8006, + GenericLocations_lower_level = 7969, + GenericLocations_upper_level = 7970, + GenericLocations_airport = 7971, + GenericLocations_concourse = 7972, + GenericLocations_gate = 7973, + GenericLocations_baggage_claim = 7974, + GenericLocations_customs_point = 7975, + GenericLocations_reservation_center = 8007, + GenericLocations_station = 7976, + GenericLocations_platform = 7977, + GenericLocations_dock = 7978, + GenericLocations_depot = 7979, + GenericLocations_ev_charging_point = 7980, + GenericLocations_information_welcome_point = 7981, + GenericLocations_at_rest_area = 7982, + GenericLocations_at_service_area = 7983, + GenericLocations_at_weigh_station = 7984, + GenericLocations_roadside_park = 8033, + GenericLocations_picnic_areas = 7985, + GenericLocations_rest_area = 7986, + GenericLocations_service_stations = 7987, + GenericLocations_toilets = 7988, + GenericLocations_bus_stop = 8031, + GenericLocations_park_and_ride_lot = 8012, + GenericLocations_on_the_right = 7989, + GenericLocations_on_the_left = 7990, + GenericLocations_in_the_center = 7991, + GenericLocations_in_the_opposite_direction = 7992, + GenericLocations_cross_traffic = 7993, + GenericLocations_northbound_traffic = 7994, + GenericLocations_eastbound_traffic = 7995, + GenericLocations_southbound_traffic = 7996, + GenericLocations_westbound_traffic = 7997, + GenericLocations_north = 7998, + GenericLocations_south = 7999, + GenericLocations_east = 8000, + GenericLocations_west = 8001, + GenericLocations_northeast = 8002, + GenericLocations_northwest = 8003, + GenericLocations_southeast = 8004, + GenericLocations_southwest = 8005 + /* + * Enumeration is extensible + */ +} e_GenericLocations; + +/* GenericLocations */ +typedef long GenericLocations_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GenericLocations_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GenericLocations; +extern const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1; +asn_struct_free_f GenericLocations_free; +asn_struct_print_f GenericLocations_print; +asn_constr_check_f GenericLocations_constraint; +ber_type_decoder_f GenericLocations_decode_ber; +der_type_encoder_f GenericLocations_encode_der; +xer_type_decoder_f GenericLocations_decode_xer; +xer_type_encoder_f GenericLocations_encode_xer; +jer_type_encoder_f GenericLocations_encode_jer; +oer_type_decoder_f GenericLocations_decode_oer; +oer_type_encoder_f GenericLocations_encode_oer; +per_type_decoder_f GenericLocations_decode_uper; +per_type_encoder_f GenericLocations_encode_uper; +per_type_decoder_f GenericLocations_decode_aper; +per_type_encoder_f GenericLocations_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericLocations_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h new file mode 100644 index 000000000..74daf0c8d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GenericSignage_H_ +#define _GenericSignage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericSignage__Member__item_PR { + GenericSignage__Member__item_PR_NOTHING, /* No components present */ + GenericSignage__Member__item_PR_itis, + GenericSignage__Member__item_PR_text +} GenericSignage__Member__item_PR; + +/* Forward definitions */ +typedef struct GenericSignage__Member { + struct GenericSignage__Member__item { + GenericSignage__Member__item_PR present; + union GenericSignage__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage__Member; + +/* GenericSignage */ +typedef struct GenericSignage { + A_SEQUENCE_OF(GenericSignage__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; +extern asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericSignage_1[1]; +extern asn_per_constraints_t asn_PER_type_GenericSignage_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericSignage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h new file mode 100644 index 000000000..504d0eeb0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GeographicalPath_H_ +#define _GeographicalPath_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "BOOLEAN.h" +#include "HeadingSlice.h" +#include "OffsetSystem.h" +#include "GeometricProjection.h" +#include "ValidRegion.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GeographicalPath__description_PR { + GeographicalPath__description_PR_NOTHING, /* No components present */ + GeographicalPath__description_PR_path, + GeographicalPath__description_PR_geometry, + GeographicalPath__description_PR_oldRegion + /* Extensions may appear below */ + +} GeographicalPath__description_PR; + +/* Forward declarations */ +struct RoadSegmentReferenceID; +struct Position3D; +struct Reg_GeographicalPath; + +/* GeographicalPath */ +typedef struct GeographicalPath { + DescriptiveName_t *name; /* OPTIONAL */ + struct RoadSegmentReferenceID *id; /* OPTIONAL */ + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + BOOLEAN_t *closedPath; /* OPTIONAL */ + HeadingSlice_t *direction; /* OPTIONAL */ + struct GeographicalPath__description { + GeographicalPath__description_PR present; + union GeographicalPath__description_u { + OffsetSystem_t path; + GeometricProjection_t geometry; + ValidRegion_t oldRegion; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + struct GeographicalPath__regional { + A_SEQUENCE_OF(struct Reg_GeographicalPath) 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; +} GeographicalPath_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeographicalPath; +extern asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1; +extern asn_TYPE_member_t asn_MBR_GeographicalPath_1[9]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GeographicalPath_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h new file mode 100644 index 000000000..273e253fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GeometricProjection_H_ +#define _GeometricProjection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "LaneWidth.h" +#include "Circle.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_GeometricProjection; + +/* GeometricProjection */ +typedef struct GeometricProjection { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + Circle_t circle; + struct GeometricProjection__regional { + A_SEQUENCE_OF(struct Reg_GeometricProjection) 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; +} GeometricProjection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeometricProjection; +extern asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1; +extern asn_TYPE_member_t asn_MBR_GeometricProjection_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GeometricProjection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h new file mode 100644 index 000000000..807e9d6b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h @@ -0,0 +1,56 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _GraphicString_H_ +#define _GraphicString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t GraphicString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_GraphicString; +extern asn_TYPE_operation_t asn_OP_GraphicString; + +#define GraphicString_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define GraphicString_print OCTET_STRING_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define GraphicString_compare OCTET_STRING_compare + +#define GraphicString_constraint asn_generic_unknown_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define GraphicString_decode_ber OCTET_STRING_decode_ber +#define GraphicString_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define GraphicString_decode_xer OCTET_STRING_decode_xer_hex +#define GraphicString_encode_xer OCTET_STRING_encode_xer +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define GraphicString_encode_jer OCTET_STRING_encode_jer +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define GraphicString_decode_uper OCTET_STRING_decode_uper +#define GraphicString_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define GraphicString_decode_aper OCTET_STRING_decode_aper +#define GraphicString_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _GraphicString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h new file mode 100644 index 000000000..128358170 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GrossDistance_H_ +#define _GrossDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossDistance */ +typedef long GrossDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossDistance; +asn_struct_free_f GrossDistance_free; +asn_struct_print_f GrossDistance_print; +asn_constr_check_f GrossDistance_constraint; +ber_type_decoder_f GrossDistance_decode_ber; +der_type_encoder_f GrossDistance_encode_der; +xer_type_decoder_f GrossDistance_decode_xer; +xer_type_encoder_f GrossDistance_encode_xer; +jer_type_encoder_f GrossDistance_encode_jer; +oer_type_decoder_f GrossDistance_decode_oer; +oer_type_encoder_f GrossDistance_encode_oer; +per_type_decoder_f GrossDistance_decode_uper; +per_type_encoder_f GrossDistance_encode_uper; +per_type_decoder_f GrossDistance_decode_aper; +per_type_encoder_f GrossDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h new file mode 100644 index 000000000..b040e072c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _GrossSpeed_H_ +#define _GrossSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossSpeed */ +typedef long GrossSpeed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossSpeed; +asn_struct_free_f GrossSpeed_free; +asn_struct_print_f GrossSpeed_print; +asn_constr_check_f GrossSpeed_constraint; +ber_type_decoder_f GrossSpeed_decode_ber; +der_type_encoder_f GrossSpeed_encode_der; +xer_type_decoder_f GrossSpeed_decode_xer; +xer_type_encoder_f GrossSpeed_encode_xer; +jer_type_encoder_f GrossSpeed_encode_jer; +oer_type_decoder_f GrossSpeed_decode_oer; +oer_type_encoder_f GrossSpeed_encode_oer; +per_type_decoder_f GrossSpeed_decode_uper; +per_type_encoder_f GrossSpeed_encode_uper; +per_type_decoder_f GrossSpeed_decode_aper; +per_type_encoder_f GrossSpeed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h new file mode 100644 index 000000000..d4ffe3877 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Header_H_ +#define _Header_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Header */ +typedef struct Header { + DYear_t *year; /* OPTIONAL */ + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t *secMark; /* OPTIONAL */ + Common_MsgCount_t *msgIssueRevision; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Header_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Header; +extern asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1; +extern asn_TYPE_member_t asn_MBR_Header_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Header_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h new file mode 100644 index 000000000..ff12fcc54 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Heading_H_ +#define _Heading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Heading */ +typedef long Heading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Heading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Heading; +asn_struct_free_f Heading_free; +asn_struct_print_f Heading_print; +asn_constr_check_f Heading_constraint; +ber_type_decoder_f Heading_decode_ber; +der_type_encoder_f Heading_encode_der; +xer_type_decoder_f Heading_decode_xer; +xer_type_encoder_f Heading_encode_xer; +jer_type_encoder_f Heading_encode_jer; +oer_type_decoder_f Heading_decode_oer; +oer_type_encoder_f Heading_encode_oer; +per_type_decoder_f Heading_decode_uper; +per_type_encoder_f Heading_encode_uper; +per_type_decoder_f Heading_decode_aper; +per_type_encoder_f Heading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Heading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h new file mode 100644 index 000000000..dd32f6654 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _HeadingConfidence_H_ +#define _HeadingConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingConfidence { + HeadingConfidence_unavailable = 0, + HeadingConfidence_prec10deg = 1, + HeadingConfidence_prec05deg = 2, + HeadingConfidence_prec01deg = 3, + HeadingConfidence_prec0_1deg = 4, + HeadingConfidence_prec0_05deg = 5, + HeadingConfidence_prec0_01deg = 6, + HeadingConfidence_prec0_0125deg = 7 +} e_HeadingConfidence; + +/* HeadingConfidence */ +typedef long HeadingConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1; +asn_struct_free_f HeadingConfidence_free; +asn_struct_print_f HeadingConfidence_print; +asn_constr_check_f HeadingConfidence_constraint; +ber_type_decoder_f HeadingConfidence_decode_ber; +der_type_encoder_f HeadingConfidence_encode_der; +xer_type_decoder_f HeadingConfidence_decode_xer; +xer_type_encoder_f HeadingConfidence_encode_xer; +jer_type_encoder_f HeadingConfidence_encode_jer; +oer_type_decoder_f HeadingConfidence_decode_oer; +oer_type_encoder_f HeadingConfidence_encode_oer; +per_type_decoder_f HeadingConfidence_decode_uper; +per_type_encoder_f HeadingConfidence_encode_uper; +per_type_decoder_f HeadingConfidence_decode_aper; +per_type_encoder_f HeadingConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h new file mode 100644 index 000000000..6b61c69d0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _HeadingSlice_H_ +#define _HeadingSlice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingSlice { + HeadingSlice_from000_0to022_5degrees = 0, + HeadingSlice_from022_5to045_0degrees = 1, + HeadingSlice_from045_0to067_5degrees = 2, + HeadingSlice_from067_5to090_0degrees = 3, + HeadingSlice_from090_0to112_5degrees = 4, + HeadingSlice_from112_5to135_0degrees = 5, + HeadingSlice_from135_0to157_5degrees = 6, + HeadingSlice_from157_5to180_0degrees = 7, + HeadingSlice_from180_0to202_5degrees = 8, + HeadingSlice_from202_5to225_0degrees = 9, + HeadingSlice_from225_0to247_5degrees = 10, + HeadingSlice_from247_5to270_0degrees = 11, + HeadingSlice_from270_0to292_5degrees = 12, + HeadingSlice_from292_5to315_0degrees = 13, + HeadingSlice_from315_0to337_5degrees = 14, + HeadingSlice_from337_5to360_0degrees = 15 +} e_HeadingSlice; + +/* HeadingSlice */ +typedef BIT_STRING_t HeadingSlice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; +asn_struct_free_f HeadingSlice_free; +asn_struct_print_f HeadingSlice_print; +asn_constr_check_f HeadingSlice_constraint; +ber_type_decoder_f HeadingSlice_decode_ber; +der_type_encoder_f HeadingSlice_encode_der; +xer_type_decoder_f HeadingSlice_decode_xer; +xer_type_encoder_f HeadingSlice_encode_xer; +jer_type_encoder_f HeadingSlice_encode_jer; +oer_type_decoder_f HeadingSlice_decode_oer; +oer_type_encoder_f HeadingSlice_encode_oer; +per_type_decoder_f HeadingSlice_decode_uper; +per_type_encoder_f HeadingSlice_encode_uper; +per_type_decoder_f HeadingSlice_decode_aper; +per_type_encoder_f HeadingSlice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingSlice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h new file mode 100644 index 000000000..2f9a68c5b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Holiday_H_ +#define _Holiday_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Holiday { + Holiday_weekday = 0, + Holiday_holiday = 1 +} e_Holiday; + +/* Holiday */ +typedef long Holiday_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Holiday_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Holiday; +extern const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1; +asn_struct_free_f Holiday_free; +asn_struct_print_f Holiday_print; +asn_constr_check_f Holiday_constraint; +ber_type_decoder_f Holiday_decode_ber; +der_type_encoder_f Holiday_encode_der; +xer_type_decoder_f Holiday_decode_xer; +xer_type_encoder_f Holiday_encode_xer; +jer_type_encoder_f Holiday_encode_jer; +oer_type_decoder_f Holiday_decode_oer; +oer_type_encoder_f Holiday_encode_oer; +per_type_decoder_f Holiday_decode_uper; +per_type_encoder_f Holiday_encode_uper; +per_type_decoder_f Holiday_decode_aper; +per_type_encoder_f Holiday_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Holiday_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h new file mode 100644 index 000000000..dc9ed9a38 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Hour_H_ +#define _Hour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Hour */ +typedef long Hour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Hour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Hour; +asn_struct_free_f Hour_free; +asn_struct_print_f Hour_print; +asn_constr_check_f Hour_constraint; +ber_type_decoder_f Hour_decode_ber; +der_type_encoder_f Hour_encode_der; +xer_type_decoder_f Hour_decode_xer; +xer_type_encoder_f Hour_encode_xer; +jer_type_encoder_f Hour_encode_jer; +oer_type_decoder_f Hour_decode_oer; +oer_type_encoder_f Hour_encode_oer; +per_type_decoder_f Hour_decode_uper; +per_type_encoder_f Hour_encode_uper; +per_type_decoder_f Hour_decode_aper; +per_type_encoder_f Hour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Hour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h new file mode 100644 index 000000000..eade7e553 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _HumanPropelledType_H_ +#define _HumanPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HumanPropelledType { + HumanPropelledType_unavailable = 0, + HumanPropelledType_otherTypes = 1, + HumanPropelledType_onFoot = 2, + HumanPropelledType_skateboard = 3, + HumanPropelledType_pushOrKickScooter = 4, + HumanPropelledType_wheelchair = 5 + /* + * Enumeration is extensible + */ +} e_HumanPropelledType; + +/* HumanPropelledType */ +typedef long HumanPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1; +asn_struct_free_f HumanPropelledType_free; +asn_struct_print_f HumanPropelledType_print; +asn_constr_check_f HumanPropelledType_constraint; +ber_type_decoder_f HumanPropelledType_decode_ber; +der_type_encoder_f HumanPropelledType_encode_der; +xer_type_decoder_f HumanPropelledType_decode_xer; +xer_type_encoder_f HumanPropelledType_encode_xer; +jer_type_encoder_f HumanPropelledType_encode_jer; +oer_type_decoder_f HumanPropelledType_decode_oer; +oer_type_encoder_f HumanPropelledType_encode_oer; +per_type_decoder_f HumanPropelledType_decode_uper; +per_type_encoder_f HumanPropelledType_encode_uper; +per_type_decoder_f HumanPropelledType_decode_aper; +per_type_encoder_f HumanPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HumanPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h new file mode 100644 index 000000000..195f474a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h @@ -0,0 +1,59 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _IA5String_H_ +#define _IA5String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ + +/* + * IA5String ASN.1 type definition. + */ +extern asn_TYPE_descriptor_t asn_DEF_IA5String; +extern asn_TYPE_operation_t asn_OP_IA5String; + +#define IA5String_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define IA5String_print OCTET_STRING_print_utf8 +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define IA5String_compare OCTET_STRING_compare + +asn_constr_check_f IA5String_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define IA5String_decode_ber OCTET_STRING_decode_ber +#define IA5String_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define IA5String_decode_xer OCTET_STRING_decode_xer_utf8 +#define IA5String_encode_xer OCTET_STRING_encode_xer_utf8 +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define IA5String_encode_jer OCTET_STRING_encode_jer_utf8 +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define IA5String_decode_uper OCTET_STRING_decode_uper +#define IA5String_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define IA5String_decode_aper OCTET_STRING_decode_aper +#define IA5String_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h new file mode 100644 index 000000000..1666e0bce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h @@ -0,0 +1,139 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _INTEGER_H_ +#define _INTEGER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; + +extern asn_TYPE_descriptor_t asn_DEF_INTEGER; +extern asn_TYPE_operation_t asn_OP_INTEGER; + +/* Map with to integer value association */ +typedef struct asn_INTEGER_enum_map_s { + long nat_value; /* associated native integer value */ + size_t enum_len; /* strlen("tag") */ + const char *enum_name; /* "tag" */ +} asn_INTEGER_enum_map_t; + +/* This type describes an enumeration for INTEGER and ENUMERATED types */ +typedef struct asn_INTEGER_specifics_s { + const asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ + const unsigned int *enum2value; /* "tag" => N; sorted by tag */ + int map_count; /* Elements in either map */ + int extension; /* This map is extensible */ + int strict_enumeration; /* Enumeration set is fixed */ + int field_width; /* Size of native integer */ + int field_unsigned; /* Signed=0, unsigned=1 */ +} asn_INTEGER_specifics_t; + +ssize_t INTEGER__dump(const asn_TYPE_descriptor_t *td, + const INTEGER_t *st, + asn_app_consume_bytes_f *cb, + void *app_key, int plainOrXER); + +#define INTEGER_free ASN__PRIMITIVE_TYPE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f INTEGER_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f INTEGER_compare; + +#define INTEGER_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define INTEGER_decode_ber ber_decode_primitive +der_type_encoder_f INTEGER_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f INTEGER_decode_xer; +xer_type_encoder_f INTEGER_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f INTEGER_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f INTEGER_decode_oer; +oer_type_encoder_f INTEGER_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f INTEGER_decode_uper; +per_type_encoder_f INTEGER_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f INTEGER_decode_aper; +per_type_encoder_f INTEGER_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f INTEGER_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +/*********************************** + * Some handy conversion routines. * + ***********************************/ + +/* + * Natiwe size-independent conversion of native integers to/from INTEGER. + * (l_size) is in bytes. + * Returns 0 if it was possible to convert, -1 otherwise. + * -1/EINVAL: Mandatory argument missing + * -1/ERANGE: Value encoded is out of range for long representation + * -1/ENOMEM: Memory allocation failed (in asn_*2INTEGER()). + */ +int asn_INTEGER2imax(const INTEGER_t *i, intmax_t *l); +int asn_INTEGER2umax(const INTEGER_t *i, uintmax_t *l); +int asn_imax2INTEGER(INTEGER_t *i, intmax_t l); +int asn_umax2INTEGER(INTEGER_t *i, uintmax_t l); + +/* + * Size-specific conversion helpers. + */ +int asn_INTEGER2long(const INTEGER_t *i, long *l); +int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); +int asn_long2INTEGER(INTEGER_t *i, long l); +int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); +int asn_int642INTEGER(INTEGER_t *i, int64_t l); +int asn_uint642INTEGER(INTEGER_t *i, uint64_t l); + +/* A version of strtol/strtoimax(3) with nicer error reporting. */ +enum asn_strtox_result_e { + ASN_STRTOX_ERROR_RANGE = -3, /* Input outside of supported numeric range */ + ASN_STRTOX_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ + ASN_STRTOX_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ + ASN_STRTOX_OK = 0, /* Conversion succeeded, number ends at (*end) */ + ASN_STRTOX_EXTRA_DATA = 1 /* Conversion succeeded, but the string has extra stuff */ +}; +enum asn_strtox_result_e asn_strtol_lim(const char *str, const char **end, + long *l); +enum asn_strtox_result_e asn_strtoul_lim(const char *str, const char **end, + unsigned long *l); +enum asn_strtox_result_e asn_strtoimax_lim(const char *str, const char **end, + intmax_t *l); +enum asn_strtox_result_e asn_strtoumax_lim(const char *str, const char **end, + uintmax_t *l); + +/* + * Convert the integer value into the corresponding enumeration map entry. + */ +const asn_INTEGER_enum_map_t *INTEGER_map_value2enum( + const asn_INTEGER_specifics_t *specs, long value); + +#ifdef __cplusplus +} +#endif + +#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h new file mode 100644 index 000000000..b4bcf8bb3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ITIScodes_H_ +#define _ITIScodes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIScodes */ +typedef long ITIScodes_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIScodes_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; +asn_struct_free_f ITIScodes_free; +asn_struct_print_f ITIScodes_print; +asn_constr_check_f ITIScodes_constraint; +ber_type_decoder_f ITIScodes_decode_ber; +der_type_encoder_f ITIScodes_encode_der; +xer_type_decoder_f ITIScodes_decode_xer; +xer_type_encoder_f ITIScodes_encode_xer; +jer_type_encoder_f ITIScodes_encode_jer; +oer_type_decoder_f ITIScodes_decode_oer; +oer_type_encoder_f ITIScodes_encode_oer; +per_type_decoder_f ITIScodes_decode_uper; +per_type_encoder_f ITIScodes_encode_uper; +per_type_decoder_f ITIScodes_decode_aper; +per_type_encoder_f ITIScodes_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h new file mode 100644 index 000000000..eab1fa493 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ITIScodesAndText_H_ +#define _ITIScodesAndText_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStext.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ITIScodesAndText__Member__item_PR { + ITIScodesAndText__Member__item_PR_NOTHING, /* No components present */ + ITIScodesAndText__Member__item_PR_itis, + ITIScodesAndText__Member__item_PR_text +} ITIScodesAndText__Member__item_PR; + +/* Forward definitions */ +typedef struct ITIScodesAndText__Member { + struct ITIScodesAndText__Member__item { + ITIScodesAndText__Member__item_PR present; + union ITIScodesAndText__Member__item_u { + ITIScodes_t itis; + ITIStext_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText__Member; + +/* ITIScodesAndText */ +typedef struct ITIScodesAndText { + A_SEQUENCE_OF(ITIScodesAndText__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; +extern asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1; +extern asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[1]; +extern asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodesAndText_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h new file mode 100644 index 000000000..cf9e66ad3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ITIStext_H_ +#define _ITIStext_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStext */ +typedef IA5String_t ITIStext_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStext_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStext; +asn_struct_free_f ITIStext_free; +asn_struct_print_f ITIStext_print; +asn_constr_check_f ITIStext_constraint; +ber_type_decoder_f ITIStext_decode_ber; +der_type_encoder_f ITIStext_encode_der; +xer_type_decoder_f ITIStext_decode_xer; +xer_type_encoder_f ITIStext_encode_xer; +jer_type_encoder_f ITIStext_encode_jer; +oer_type_decoder_f ITIStext_decode_oer; +oer_type_encoder_f ITIStext_encode_oer; +per_type_decoder_f ITIStext_decode_uper; +per_type_encoder_f ITIStext_encode_uper; +per_type_decoder_f ITIStext_decode_aper; +per_type_encoder_f ITIStext_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStext_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h new file mode 100644 index 000000000..e76da80f9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ITIStextPhrase_H_ +#define _ITIStextPhrase_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStextPhrase */ +typedef IA5String_t ITIStextPhrase_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase; +asn_struct_free_f ITIStextPhrase_free; +asn_struct_print_f ITIStextPhrase_print; +asn_constr_check_f ITIStextPhrase_constraint; +ber_type_decoder_f ITIStextPhrase_decode_ber; +der_type_encoder_f ITIStextPhrase_encode_der; +xer_type_decoder_f ITIStextPhrase_decode_xer; +xer_type_encoder_f ITIStextPhrase_encode_xer; +jer_type_encoder_f ITIStextPhrase_encode_jer; +oer_type_decoder_f ITIStextPhrase_decode_oer; +oer_type_encoder_f ITIStextPhrase_encode_oer; +per_type_decoder_f ITIStextPhrase_decode_uper; +per_type_encoder_f ITIStextPhrase_encode_uper; +per_type_decoder_f ITIStextPhrase_decode_aper; +per_type_encoder_f ITIStextPhrase_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStextPhrase_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h new file mode 100644 index 000000000..67ce89ff7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h @@ -0,0 +1,127 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IncidentResponseEquipment_H_ +#define _IncidentResponseEquipment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IncidentResponseEquipment { + IncidentResponseEquipment_ground_fire_suppression = 9985, + IncidentResponseEquipment_heavy_ground_equipment = 9986, + IncidentResponseEquipment_aircraft = 9988, + IncidentResponseEquipment_marine_equipment = 9989, + IncidentResponseEquipment_support_equipment = 9990, + IncidentResponseEquipment_medical_rescue_unit = 9991, + IncidentResponseEquipment_other = 9993, + IncidentResponseEquipment_ground_fire_suppression_other = 9994, + IncidentResponseEquipment_engine = 9995, + IncidentResponseEquipment_truck_or_aerial = 9996, + IncidentResponseEquipment_quint = 9997, + IncidentResponseEquipment_tanker_pumper_combination = 9998, + IncidentResponseEquipment_brush_truck = 10000, + IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, + IncidentResponseEquipment_heavy_ground_equipment_other = 10004, + IncidentResponseEquipment_dozer_or_plow = 10005, + IncidentResponseEquipment_tractor = 10006, + IncidentResponseEquipment_tanker_or_tender = 10008, + IncidentResponseEquipment_aircraft_other = 10024, + IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, + IncidentResponseEquipment_helitanker = 10026, + IncidentResponseEquipment_helicopter = 10027, + IncidentResponseEquipment_marine_equipment_other = 10034, + IncidentResponseEquipment_fire_boat_with_pump = 10035, + IncidentResponseEquipment_boat_no_pump = 10036, + IncidentResponseEquipment_support_apparatus_other = 10044, + IncidentResponseEquipment_breathing_apparatus_support = 10045, + IncidentResponseEquipment_light_and_air_unit = 10046, + IncidentResponseEquipment_medical_rescue_unit_other = 10054, + IncidentResponseEquipment_rescue_unit = 10055, + IncidentResponseEquipment_urban_search_rescue_unit = 10056, + IncidentResponseEquipment_high_angle_rescue = 10057, + IncidentResponseEquipment_crash_fire_rescue = 10058, + IncidentResponseEquipment_bLS_unit = 10059, + IncidentResponseEquipment_aLS_unit = 10060, + IncidentResponseEquipment_mobile_command_post = 10075, + IncidentResponseEquipment_chief_officer_car = 10076, + IncidentResponseEquipment_hAZMAT_unit = 10077, + IncidentResponseEquipment_type_i_hand_crew = 10078, + IncidentResponseEquipment_type_ii_hand_crew = 10079, + IncidentResponseEquipment_privately_owned_vehicle = 10083, + IncidentResponseEquipment_other_apparatus_resource = 10084, + IncidentResponseEquipment_ambulance = 10085, + IncidentResponseEquipment_bomb_squad_van = 10086, + IncidentResponseEquipment_combine_harvester = 10087, + IncidentResponseEquipment_construction_vehicle = 10088, + IncidentResponseEquipment_farm_tractor = 10089, + IncidentResponseEquipment_grass_cutting_machines = 10090, + IncidentResponseEquipment_hAZMAT_containment_tow = 10091, + IncidentResponseEquipment_heavy_tow = 10092, + IncidentResponseEquipment_light_tow = 10094, + IncidentResponseEquipment_flatbed_tow = 10114, + IncidentResponseEquipment_hedge_cutting_machines = 10093, + IncidentResponseEquipment_mobile_crane = 10095, + IncidentResponseEquipment_refuse_collection_vehicle = 10096, + IncidentResponseEquipment_resurfacing_vehicle = 10097, + IncidentResponseEquipment_road_sweeper = 10098, + IncidentResponseEquipment_roadside_litter_collection_crews = 10099, + IncidentResponseEquipment_salvage_vehicle = 10100, + IncidentResponseEquipment_sand_truck = 10101, + IncidentResponseEquipment_snowplow = 10102, + IncidentResponseEquipment_steam_roller = 10103, + IncidentResponseEquipment_swat_team_van = 10104, + IncidentResponseEquipment_track_laying_vehicle = 10105, + IncidentResponseEquipment_unknown_vehicle = 10106, + IncidentResponseEquipment_white_lining_vehicle = 10107, + IncidentResponseEquipment_dump_truck = 10108, + IncidentResponseEquipment_supervisor_vehicle = 10109, + IncidentResponseEquipment_snow_blower = 10110, + IncidentResponseEquipment_rotary_snow_blower = 10111, + IncidentResponseEquipment_road_grader = 10112, + IncidentResponseEquipment_steam_truck = 10113 + /* + * Enumeration is extensible + */ +} e_IncidentResponseEquipment; + +/* IncidentResponseEquipment */ +typedef long IncidentResponseEquipment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; +extern const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1; +asn_struct_free_f IncidentResponseEquipment_free; +asn_struct_print_f IncidentResponseEquipment_print; +asn_constr_check_f IncidentResponseEquipment_constraint; +ber_type_decoder_f IncidentResponseEquipment_decode_ber; +der_type_encoder_f IncidentResponseEquipment_encode_der; +xer_type_decoder_f IncidentResponseEquipment_decode_xer; +xer_type_encoder_f IncidentResponseEquipment_encode_xer; +jer_type_encoder_f IncidentResponseEquipment_encode_jer; +oer_type_decoder_f IncidentResponseEquipment_decode_oer; +oer_type_encoder_f IncidentResponseEquipment_encode_oer; +per_type_decoder_f IncidentResponseEquipment_decode_uper; +per_type_encoder_f IncidentResponseEquipment_encode_uper; +per_type_decoder_f IncidentResponseEquipment_decode_aper; +per_type_encoder_f IncidentResponseEquipment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IncidentResponseEquipment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h new file mode 100644 index 000000000..996db7e27 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionAccessPoint_H_ +#define _IntersectionAccessPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "ApproachID.h" +#include "LaneConnectionID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionAccessPoint_PR { + IntersectionAccessPoint_PR_NOTHING, /* No components present */ + IntersectionAccessPoint_PR_lane, + IntersectionAccessPoint_PR_approach, + IntersectionAccessPoint_PR_connection + /* Extensions may appear below */ + +} IntersectionAccessPoint_PR; + +/* IntersectionAccessPoint */ +typedef struct IntersectionAccessPoint { + IntersectionAccessPoint_PR present; + union IntersectionAccessPoint_u { + LaneID_t lane; + ApproachID_t approach; + LaneConnectionID_t connection; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionAccessPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint; +extern asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[3]; +extern asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionAccessPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h new file mode 100644 index 000000000..5098291b4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionCollision_H_ +#define _IntersectionCollision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "MinuteOfTheYear.h" +#include "IntersectionReferenceID.h" +#include "ApproachOrLane.h" +#include "VehicleEventFlags.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMcoreData; +struct PathHistory; +struct PathPrediction; +struct Reg_IntersectionCollision; + +/* IntersectionCollision */ +typedef struct IntersectionCollision { + Common_MsgCount_t msgCnt; + TemporaryID_t id; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct BSMcoreData *partOne; /* OPTIONAL */ + struct PathHistory *path; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + IntersectionReferenceID_t intersectionID; + ApproachOrLane_t laneNumber; + VehicleEventFlags_t eventFlag; + struct IntersectionCollision__regional { + A_SEQUENCE_OF(struct Reg_IntersectionCollision) 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; +} IntersectionCollision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionCollision_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionCollision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h new file mode 100644 index 000000000..01929f1ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionGeometry_H_ +#define _IntersectionGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "Common_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "LaneList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct PreemptPriorityList; +struct Reg_IntersectionGeometry; + +/* IntersectionGeometry */ +typedef struct IntersectionGeometry { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + Common_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + LaneList_t laneSet; + struct PreemptPriorityList *preemptPriorityData; /* OPTIONAL */ + struct IntersectionGeometry__regional { + A_SEQUENCE_OF(struct Reg_IntersectionGeometry) 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; +} IntersectionGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[9]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h new file mode 100644 index 000000000..151596b0f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionGeometryList_H_ +#define _IntersectionGeometryList_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 IntersectionGeometry; + +/* IntersectionGeometryList */ +typedef struct IntersectionGeometryList { + A_SEQUENCE_OF(struct IntersectionGeometry) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionGeometryList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionGeometryList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h new file mode 100644 index 000000000..ff0997db1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionID_H_ +#define _IntersectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionID */ +typedef long IntersectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; +asn_struct_free_f IntersectionID_free; +asn_struct_print_f IntersectionID_print; +asn_constr_check_f IntersectionID_constraint; +ber_type_decoder_f IntersectionID_decode_ber; +der_type_encoder_f IntersectionID_encode_der; +xer_type_decoder_f IntersectionID_decode_xer; +xer_type_encoder_f IntersectionID_encode_xer; +jer_type_encoder_f IntersectionID_encode_jer; +oer_type_decoder_f IntersectionID_decode_oer; +oer_type_encoder_f IntersectionID_encode_oer; +per_type_decoder_f IntersectionID_decode_uper; +per_type_encoder_f IntersectionID_encode_uper; +per_type_decoder_f IntersectionID_decode_aper; +per_type_encoder_f IntersectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h new file mode 100644 index 000000000..d3ea00216 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionReferenceID_H_ +#define _IntersectionReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "IntersectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionReferenceID */ +typedef struct IntersectionReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + IntersectionID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h new file mode 100644 index 000000000..60789c0f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionState_addGrpC_H_ +#define _IntersectionState_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrioritizationResponseList; + +/* IntersectionState-addGrpC */ +typedef struct IntersectionState_addGrpC { + struct PrioritizationResponseList *activePrioritizations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionState_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionState_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h new file mode 100644 index 000000000..85728055b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionState_H_ +#define _IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "Common_MsgCount.h" +#include "IntersectionStatusObject.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "MovementList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EnabledLaneList; +struct ManeuverAssistList; +struct Reg_IntersectionState; + +/* IntersectionState */ +typedef struct IntersectionState { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + Common_MsgCount_t revision; + IntersectionStatusObject_t status; + MinuteOfTheYear_t *moy; /* OPTIONAL */ + DSecond_t *timeStamp; /* OPTIONAL */ + struct EnabledLaneList *enabledLanes; /* OPTIONAL */ + MovementList_t states; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct IntersectionState__regional { + A_SEQUENCE_OF(struct Reg_IntersectionState) 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; +} IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionState_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h new file mode 100644 index 000000000..57cd0662c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionStateList_H_ +#define _IntersectionStateList_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 IntersectionState; + +/* IntersectionStateList */ +typedef struct IntersectionStateList { + A_SEQUENCE_OF(struct IntersectionState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionStateList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionStateList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionStateList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h new file mode 100644 index 000000000..f1634f0a6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IntersectionStatusObject_H_ +#define _IntersectionStatusObject_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionStatusObject { + IntersectionStatusObject_manualControlIsEnabled = 0, + IntersectionStatusObject_stopTimeIsActivated = 1, + IntersectionStatusObject_failureFlash = 2, + IntersectionStatusObject_preemptIsActive = 3, + IntersectionStatusObject_signalPriorityIsActive = 4, + IntersectionStatusObject_fixedTimeOperation = 5, + IntersectionStatusObject_trafficDependentOperation = 6, + IntersectionStatusObject_standbyOperation = 7, + IntersectionStatusObject_failureMode = 8, + IntersectionStatusObject_off = 9, + IntersectionStatusObject_recentMAPmessageUpdate = 10, + IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, + IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, + IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 +} e_IntersectionStatusObject; + +/* IntersectionStatusObject */ +typedef BIT_STRING_t IntersectionStatusObject_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; +asn_struct_free_f IntersectionStatusObject_free; +asn_struct_print_f IntersectionStatusObject_print; +asn_constr_check_f IntersectionStatusObject_constraint; +ber_type_decoder_f IntersectionStatusObject_decode_ber; +der_type_encoder_f IntersectionStatusObject_encode_der; +xer_type_decoder_f IntersectionStatusObject_decode_xer; +xer_type_encoder_f IntersectionStatusObject_encode_xer; +jer_type_encoder_f IntersectionStatusObject_encode_jer; +oer_type_decoder_f IntersectionStatusObject_decode_oer; +oer_type_encoder_f IntersectionStatusObject_encode_oer; +per_type_decoder_f IntersectionStatusObject_decode_uper; +per_type_encoder_f IntersectionStatusObject_encode_uper; +per_type_decoder_f IntersectionStatusObject_decode_aper; +per_type_encoder_f IntersectionStatusObject_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionStatusObject_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h new file mode 100644 index 000000000..e85806b19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _IsDolly_H_ +#define _IsDolly_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IsDolly */ +typedef BOOLEAN_t IsDolly_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IsDolly; +asn_struct_free_f IsDolly_free; +asn_struct_print_f IsDolly_print; +asn_constr_check_f IsDolly_constraint; +ber_type_decoder_f IsDolly_decode_ber; +der_type_encoder_f IsDolly_encode_der; +xer_type_decoder_f IsDolly_decode_xer; +xer_type_encoder_f IsDolly_encode_xer; +jer_type_encoder_f IsDolly_encode_jer; +oer_type_decoder_f IsDolly_decode_oer; +oer_type_encoder_f IsDolly_encode_oer; +per_type_decoder_f IsDolly_decode_uper; +per_type_encoder_f IsDolly_encode_uper; +per_type_decoder_f IsDolly_decode_aper; +per_type_encoder_f IsDolly_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IsDolly_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h new file mode 100644 index 000000000..e6ba88946 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Iso3833VehicleType_H_ +#define _Iso3833VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Iso3833VehicleType */ +typedef long Iso3833VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType; +asn_struct_free_f Iso3833VehicleType_free; +asn_struct_print_f Iso3833VehicleType_print; +asn_constr_check_f Iso3833VehicleType_constraint; +ber_type_decoder_f Iso3833VehicleType_decode_ber; +der_type_encoder_f Iso3833VehicleType_encode_der; +xer_type_decoder_f Iso3833VehicleType_decode_xer; +xer_type_encoder_f Iso3833VehicleType_encode_xer; +jer_type_encoder_f Iso3833VehicleType_encode_jer; +oer_type_decoder_f Iso3833VehicleType_decode_oer; +oer_type_encoder_f Iso3833VehicleType_encode_oer; +per_type_decoder_f Iso3833VehicleType_decode_uper; +per_type_encoder_f Iso3833VehicleType_encode_uper; +per_type_decoder_f Iso3833VehicleType_decode_aper; +per_type_encoder_f Iso3833VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Iso3833VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h new file mode 100644 index 000000000..dceae1fd9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _J1939data_H_ +#define _J1939data_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrailerWeight.h" +#include "CargoWeight.h" +#include "SteeringAxleTemperature.h" +#include "DriveAxleLocation.h" +#include "DriveAxleLiftAirPressure.h" +#include "DriveAxleTemperature.h" +#include "DriveAxleLubePressure.h" +#include "SteeringAxleLubePressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TireDataList; +struct AxleWeightList; + +/* J1939data */ +typedef struct J1939data { + struct TireDataList *tires; /* OPTIONAL */ + struct AxleWeightList *axles; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + CargoWeight_t *cargoWeight; /* OPTIONAL */ + SteeringAxleTemperature_t *steeringAxleTemperature; /* OPTIONAL */ + DriveAxleLocation_t *driveAxleLocation; /* OPTIONAL */ + DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure; /* OPTIONAL */ + DriveAxleTemperature_t *driveAxleTemperature; /* OPTIONAL */ + DriveAxleLubePressure_t *driveAxleLubePressure; /* OPTIONAL */ + SteeringAxleLubePressure_t *steeringAxleLubePressure; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} J1939data_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_J1939data; +extern asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1; +extern asn_TYPE_member_t asn_MBR_J1939data_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _J1939data_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h new file mode 100644 index 000000000..d82f5c472 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Barrier_H_ +#define _LaneAttributes_Barrier_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Barrier { + LaneAttributes_Barrier_median_RevocableLane = 0, + LaneAttributes_Barrier_median = 1, + LaneAttributes_Barrier_whiteLineHashing = 2, + LaneAttributes_Barrier_stripedLines = 3, + LaneAttributes_Barrier_doubleStripedLines = 4, + LaneAttributes_Barrier_trafficCones = 5, + LaneAttributes_Barrier_constructionBarrier = 6, + LaneAttributes_Barrier_trafficChannels = 7, + LaneAttributes_Barrier_lowCurbs = 8, + LaneAttributes_Barrier_highCurbs = 9 +} e_LaneAttributes_Barrier; + +/* LaneAttributes-Barrier */ +typedef BIT_STRING_t LaneAttributes_Barrier_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; +asn_struct_free_f LaneAttributes_Barrier_free; +asn_struct_print_f LaneAttributes_Barrier_print; +asn_constr_check_f LaneAttributes_Barrier_constraint; +ber_type_decoder_f LaneAttributes_Barrier_decode_ber; +der_type_encoder_f LaneAttributes_Barrier_encode_der; +xer_type_decoder_f LaneAttributes_Barrier_decode_xer; +xer_type_encoder_f LaneAttributes_Barrier_encode_xer; +jer_type_encoder_f LaneAttributes_Barrier_encode_jer; +oer_type_decoder_f LaneAttributes_Barrier_decode_oer; +oer_type_encoder_f LaneAttributes_Barrier_encode_oer; +per_type_decoder_f LaneAttributes_Barrier_decode_uper; +per_type_encoder_f LaneAttributes_Barrier_encode_uper; +per_type_decoder_f LaneAttributes_Barrier_decode_aper; +per_type_encoder_f LaneAttributes_Barrier_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Barrier_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h new file mode 100644 index 000000000..a98e9aa42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Bike_H_ +#define _LaneAttributes_Bike_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Bike { + LaneAttributes_Bike_bikeRevocableLane = 0, + LaneAttributes_Bike_pedestrianUseAllowed = 1, + LaneAttributes_Bike_isBikeFlyOverLane = 2, + LaneAttributes_Bike_fixedCycleTime = 3, + LaneAttributes_Bike_biDirectionalCycleTimes = 4, + LaneAttributes_Bike_isolatedByBarrier = 5, + LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 +} e_LaneAttributes_Bike; + +/* LaneAttributes-Bike */ +typedef BIT_STRING_t LaneAttributes_Bike_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; +asn_struct_free_f LaneAttributes_Bike_free; +asn_struct_print_f LaneAttributes_Bike_print; +asn_constr_check_f LaneAttributes_Bike_constraint; +ber_type_decoder_f LaneAttributes_Bike_decode_ber; +der_type_encoder_f LaneAttributes_Bike_encode_der; +xer_type_decoder_f LaneAttributes_Bike_decode_xer; +xer_type_encoder_f LaneAttributes_Bike_encode_xer; +jer_type_encoder_f LaneAttributes_Bike_encode_jer; +oer_type_decoder_f LaneAttributes_Bike_decode_oer; +oer_type_encoder_f LaneAttributes_Bike_encode_oer; +per_type_decoder_f LaneAttributes_Bike_decode_uper; +per_type_encoder_f LaneAttributes_Bike_encode_uper; +per_type_decoder_f LaneAttributes_Bike_decode_aper; +per_type_encoder_f LaneAttributes_Bike_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Bike_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h new file mode 100644 index 000000000..e874875d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Crosswalk_H_ +#define _LaneAttributes_Crosswalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Crosswalk { + LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, + LaneAttributes_Crosswalk_bicyleUseAllowed = 1, + LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, + LaneAttributes_Crosswalk_fixedCycleTime = 3, + LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, + LaneAttributes_Crosswalk_hasPushToWalkButton = 5, + LaneAttributes_Crosswalk_audioSupport = 6, + LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, + LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 +} e_LaneAttributes_Crosswalk; + +/* LaneAttributes-Crosswalk */ +typedef BIT_STRING_t LaneAttributes_Crosswalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; +asn_struct_free_f LaneAttributes_Crosswalk_free; +asn_struct_print_f LaneAttributes_Crosswalk_print; +asn_constr_check_f LaneAttributes_Crosswalk_constraint; +ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; +der_type_encoder_f LaneAttributes_Crosswalk_encode_der; +xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; +xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; +jer_type_encoder_f LaneAttributes_Crosswalk_encode_jer; +oer_type_decoder_f LaneAttributes_Crosswalk_decode_oer; +oer_type_encoder_f LaneAttributes_Crosswalk_encode_oer; +per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; +per_type_decoder_f LaneAttributes_Crosswalk_decode_aper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Crosswalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h new file mode 100644 index 000000000..e69e25f6a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Parking_H_ +#define _LaneAttributes_Parking_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Parking { + LaneAttributes_Parking_parkingRevocableLane = 0, + LaneAttributes_Parking_parallelParkingInUse = 1, + LaneAttributes_Parking_headInParkingInUse = 2, + LaneAttributes_Parking_doNotParkZone = 3, + LaneAttributes_Parking_parkingForBusUse = 4, + LaneAttributes_Parking_parkingForTaxiUse = 5, + LaneAttributes_Parking_noPublicParkingUse = 6 +} e_LaneAttributes_Parking; + +/* LaneAttributes-Parking */ +typedef BIT_STRING_t LaneAttributes_Parking_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; +asn_struct_free_f LaneAttributes_Parking_free; +asn_struct_print_f LaneAttributes_Parking_print; +asn_constr_check_f LaneAttributes_Parking_constraint; +ber_type_decoder_f LaneAttributes_Parking_decode_ber; +der_type_encoder_f LaneAttributes_Parking_encode_der; +xer_type_decoder_f LaneAttributes_Parking_decode_xer; +xer_type_encoder_f LaneAttributes_Parking_encode_xer; +jer_type_encoder_f LaneAttributes_Parking_encode_jer; +oer_type_decoder_f LaneAttributes_Parking_decode_oer; +oer_type_encoder_f LaneAttributes_Parking_encode_oer; +per_type_decoder_f LaneAttributes_Parking_decode_uper; +per_type_encoder_f LaneAttributes_Parking_encode_uper; +per_type_decoder_f LaneAttributes_Parking_decode_aper; +per_type_encoder_f LaneAttributes_Parking_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Parking_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h new file mode 100644 index 000000000..5497b7839 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Sidewalk_H_ +#define _LaneAttributes_Sidewalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Sidewalk { + LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, + LaneAttributes_Sidewalk_bicyleUseAllowed = 1, + LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, + LaneAttributes_Sidewalk_walkBikes = 3 +} e_LaneAttributes_Sidewalk; + +/* LaneAttributes-Sidewalk */ +typedef BIT_STRING_t LaneAttributes_Sidewalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; +asn_struct_free_f LaneAttributes_Sidewalk_free; +asn_struct_print_f LaneAttributes_Sidewalk_print; +asn_constr_check_f LaneAttributes_Sidewalk_constraint; +ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; +der_type_encoder_f LaneAttributes_Sidewalk_encode_der; +xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; +xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; +jer_type_encoder_f LaneAttributes_Sidewalk_encode_jer; +oer_type_decoder_f LaneAttributes_Sidewalk_decode_oer; +oer_type_encoder_f LaneAttributes_Sidewalk_encode_oer; +per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; +per_type_decoder_f LaneAttributes_Sidewalk_decode_aper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Sidewalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h new file mode 100644 index 000000000..722fc4e73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Striping_H_ +#define _LaneAttributes_Striping_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Striping { + LaneAttributes_Striping_stripeToConnectingLanesRevocableLane = 0, + LaneAttributes_Striping_stripeDrawOnLeft = 1, + LaneAttributes_Striping_stripeDrawOnRight = 2, + LaneAttributes_Striping_stripeToConnectingLanesLeft = 3, + LaneAttributes_Striping_stripeToConnectingLanesRight = 4, + LaneAttributes_Striping_stripeToConnectingLanesAhead = 5 +} e_LaneAttributes_Striping; + +/* LaneAttributes-Striping */ +typedef BIT_STRING_t LaneAttributes_Striping_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; +asn_struct_free_f LaneAttributes_Striping_free; +asn_struct_print_f LaneAttributes_Striping_print; +asn_constr_check_f LaneAttributes_Striping_constraint; +ber_type_decoder_f LaneAttributes_Striping_decode_ber; +der_type_encoder_f LaneAttributes_Striping_encode_der; +xer_type_decoder_f LaneAttributes_Striping_decode_xer; +xer_type_encoder_f LaneAttributes_Striping_encode_xer; +jer_type_encoder_f LaneAttributes_Striping_encode_jer; +oer_type_decoder_f LaneAttributes_Striping_decode_oer; +oer_type_encoder_f LaneAttributes_Striping_encode_oer; +per_type_decoder_f LaneAttributes_Striping_decode_uper; +per_type_encoder_f LaneAttributes_Striping_encode_uper; +per_type_decoder_f LaneAttributes_Striping_decode_aper; +per_type_encoder_f LaneAttributes_Striping_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Striping_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h new file mode 100644 index 000000000..06e52ced2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_TrackedVehicle_H_ +#define _LaneAttributes_TrackedVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_TrackedVehicle { + LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, + LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, + LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, + LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, + LaneAttributes_TrackedVehicle_spec_otherRailType = 4 +} e_LaneAttributes_TrackedVehicle; + +/* LaneAttributes-TrackedVehicle */ +typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; +asn_struct_free_f LaneAttributes_TrackedVehicle_free; +asn_struct_print_f LaneAttributes_TrackedVehicle_print; +asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; +ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; +der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; +xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; +xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; +jer_type_encoder_f LaneAttributes_TrackedVehicle_encode_jer; +oer_type_decoder_f LaneAttributes_TrackedVehicle_decode_oer; +oer_type_encoder_f LaneAttributes_TrackedVehicle_encode_oer; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_aper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_TrackedVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h new file mode 100644 index 000000000..ac9e3cffa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_Vehicle_H_ +#define _LaneAttributes_Vehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Vehicle { + LaneAttributes_Vehicle_isVehicleRevocableLane = 0, + LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, + LaneAttributes_Vehicle_hovLaneUseOnly = 2, + LaneAttributes_Vehicle_restrictedToBusUse = 3, + LaneAttributes_Vehicle_restrictedToTaxiUse = 4, + LaneAttributes_Vehicle_restrictedFromPublicUse = 5, + LaneAttributes_Vehicle_hasIRbeaconCoverage = 6, + LaneAttributes_Vehicle_permissionOnRequest = 7 +} e_LaneAttributes_Vehicle; + +/* LaneAttributes-Vehicle */ +typedef BIT_STRING_t LaneAttributes_Vehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; +asn_struct_free_f LaneAttributes_Vehicle_free; +asn_struct_print_f LaneAttributes_Vehicle_print; +asn_constr_check_f LaneAttributes_Vehicle_constraint; +ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; +der_type_encoder_f LaneAttributes_Vehicle_encode_der; +xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; +xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; +jer_type_encoder_f LaneAttributes_Vehicle_encode_jer; +oer_type_decoder_f LaneAttributes_Vehicle_decode_oer; +oer_type_encoder_f LaneAttributes_Vehicle_encode_oer; +per_type_decoder_f LaneAttributes_Vehicle_decode_uper; +per_type_encoder_f LaneAttributes_Vehicle_encode_uper; +per_type_decoder_f LaneAttributes_Vehicle_decode_aper; +per_type_encoder_f LaneAttributes_Vehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Vehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h new file mode 100644 index 000000000..2b3b18a96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneAttributes_H_ +#define _LaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneDirection.h" +#include "LaneSharing.h" +#include "LaneTypeAttributes.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_LaneAttributes; + +/* LaneAttributes */ +typedef struct LaneAttributes { + LaneDirection_t directionalUse; + LaneSharing_t sharedWith; + LaneTypeAttributes_t laneType; + struct Reg_LaneAttributes *regional; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; +extern asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneAttributes_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h new file mode 100644 index 000000000..9a661762e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneConnectionID_H_ +#define _LaneConnectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneConnectionID */ +typedef long LaneConnectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; +asn_struct_free_f LaneConnectionID_free; +asn_struct_print_f LaneConnectionID_print; +asn_constr_check_f LaneConnectionID_constraint; +ber_type_decoder_f LaneConnectionID_decode_ber; +der_type_encoder_f LaneConnectionID_encode_der; +xer_type_decoder_f LaneConnectionID_decode_xer; +xer_type_encoder_f LaneConnectionID_encode_xer; +jer_type_encoder_f LaneConnectionID_encode_jer; +oer_type_decoder_f LaneConnectionID_decode_oer; +oer_type_encoder_f LaneConnectionID_encode_oer; +per_type_decoder_f LaneConnectionID_decode_uper; +per_type_encoder_f LaneConnectionID_encode_uper; +per_type_decoder_f LaneConnectionID_decode_aper; +per_type_encoder_f LaneConnectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneConnectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h new file mode 100644 index 000000000..bc3283795 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneDataAttribute_addGrpB_H_ +#define _LaneDataAttribute_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneDataAttribute-addGrpB */ +typedef struct LaneDataAttribute_addGrpB { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttribute_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h new file mode 100644 index 000000000..94f22a44c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h @@ -0,0 +1,81 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneDataAttribute_H_ +#define _LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DeltaAngle.h" +#include "RoadwayCrownAngle.h" +#include "MergeDivergeNodeAngle.h" +#include "SpeedLimitList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDataAttribute_PR { + LaneDataAttribute_PR_NOTHING, /* No components present */ + LaneDataAttribute_PR_pathEndPointAngle, + LaneDataAttribute_PR_laneCrownPointCenter, + LaneDataAttribute_PR_laneCrownPointLeft, + LaneDataAttribute_PR_laneCrownPointRight, + LaneDataAttribute_PR_laneAngle, + LaneDataAttribute_PR_speedLimits, + LaneDataAttribute_PR_regional + /* Extensions may appear below */ + +} LaneDataAttribute_PR; + +/* Forward declarations */ +struct Reg_LaneDataAttribute; + +/* LaneDataAttribute */ +typedef struct LaneDataAttribute { + LaneDataAttribute_PR present; + union LaneDataAttribute_u { + DeltaAngle_t pathEndPointAngle; + RoadwayCrownAngle_t laneCrownPointCenter; + RoadwayCrownAngle_t laneCrownPointLeft; + RoadwayCrownAngle_t laneCrownPointRight; + MergeDivergeNodeAngle_t laneAngle; + SpeedLimitList_t speedLimits; + struct LaneDataAttribute__regional { + A_SEQUENCE_OF(struct Reg_LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; +extern asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[7]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h new file mode 100644 index 000000000..05201b136 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneDataAttributeList_H_ +#define _LaneDataAttributeList_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 LaneDataAttribute; + +/* LaneDataAttributeList */ +typedef struct LaneDataAttributeList { + A_SEQUENCE_OF(struct LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; +extern asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h new file mode 100644 index 000000000..b089eb897 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneDirection_H_ +#define _LaneDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDirection { + LaneDirection_ingressPath = 0, + LaneDirection_egressPath = 1 +} e_LaneDirection; + +/* LaneDirection */ +typedef BIT_STRING_t LaneDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; +asn_struct_free_f LaneDirection_free; +asn_struct_print_f LaneDirection_print; +asn_constr_check_f LaneDirection_constraint; +ber_type_decoder_f LaneDirection_decode_ber; +der_type_encoder_f LaneDirection_encode_der; +xer_type_decoder_f LaneDirection_decode_xer; +xer_type_encoder_f LaneDirection_encode_xer; +jer_type_encoder_f LaneDirection_encode_jer; +oer_type_decoder_f LaneDirection_decode_oer; +oer_type_encoder_f LaneDirection_encode_oer; +per_type_decoder_f LaneDirection_decode_uper; +per_type_encoder_f LaneDirection_encode_uper; +per_type_decoder_f LaneDirection_decode_aper; +per_type_encoder_f LaneDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h new file mode 100644 index 000000000..7c9f28f78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneID_H_ +#define _LaneID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneID */ +typedef long LaneID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneID; +asn_struct_free_f LaneID_free; +asn_struct_print_f LaneID_print; +asn_constr_check_f LaneID_constraint; +ber_type_decoder_f LaneID_decode_ber; +der_type_encoder_f LaneID_encode_der; +xer_type_decoder_f LaneID_decode_xer; +xer_type_encoder_f LaneID_encode_xer; +jer_type_encoder_f LaneID_encode_jer; +oer_type_decoder_f LaneID_decode_oer; +oer_type_encoder_f LaneID_encode_oer; +per_type_decoder_f LaneID_decode_uper; +per_type_encoder_f LaneID_encode_uper; +per_type_decoder_f LaneID_decode_aper; +per_type_encoder_f LaneID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h new file mode 100644 index 000000000..3b6044d83 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneList_H_ +#define _LaneList_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 GenericLane; + +/* LaneList */ +typedef struct LaneList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneList; +extern asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h new file mode 100644 index 000000000..41086c933 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneSharing_H_ +#define _LaneSharing_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneSharing { + LaneSharing_overlappingLaneDescriptionProvided = 0, + LaneSharing_multipleLanesTreatedAsOneLane = 1, + LaneSharing_otherNonMotorizedTrafficTypes = 2, + LaneSharing_individualMotorizedVehicleTraffic = 3, + LaneSharing_busVehicleTraffic = 4, + LaneSharing_taxiVehicleTraffic = 5, + LaneSharing_pedestriansTraffic = 6, + LaneSharing_cyclistVehicleTraffic = 7, + LaneSharing_trackedVehicleTraffic = 8, + LaneSharing_reserved = 9 +} e_LaneSharing; + +/* LaneSharing */ +typedef BIT_STRING_t LaneSharing_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneSharing_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; +asn_struct_free_f LaneSharing_free; +asn_struct_print_f LaneSharing_print; +asn_constr_check_f LaneSharing_constraint; +ber_type_decoder_f LaneSharing_decode_ber; +der_type_encoder_f LaneSharing_encode_der; +xer_type_decoder_f LaneSharing_decode_xer; +xer_type_encoder_f LaneSharing_encode_xer; +jer_type_encoder_f LaneSharing_encode_jer; +oer_type_decoder_f LaneSharing_decode_oer; +oer_type_encoder_f LaneSharing_encode_oer; +per_type_decoder_f LaneSharing_decode_uper; +per_type_encoder_f LaneSharing_encode_uper; +per_type_decoder_f LaneSharing_decode_aper; +per_type_encoder_f LaneSharing_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneSharing_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h new file mode 100644 index 000000000..62312671e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneTypeAttributes_H_ +#define _LaneTypeAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneAttributes-Vehicle.h" +#include "LaneAttributes-Crosswalk.h" +#include "LaneAttributes-Bike.h" +#include "LaneAttributes-Sidewalk.h" +#include "LaneAttributes-Barrier.h" +#include "LaneAttributes-Striping.h" +#include "LaneAttributes-TrackedVehicle.h" +#include "LaneAttributes-Parking.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneTypeAttributes_PR { + LaneTypeAttributes_PR_NOTHING, /* No components present */ + LaneTypeAttributes_PR_vehicle, + LaneTypeAttributes_PR_crosswalk, + LaneTypeAttributes_PR_bikeLane, + LaneTypeAttributes_PR_sidewalk, + LaneTypeAttributes_PR_median, + LaneTypeAttributes_PR_striping, + LaneTypeAttributes_PR_trackedVehicle, + LaneTypeAttributes_PR_parking + /* Extensions may appear below */ + +} LaneTypeAttributes_PR; + +/* LaneTypeAttributes */ +typedef struct LaneTypeAttributes { + LaneTypeAttributes_PR present; + union LaneTypeAttributes_u { + LaneAttributes_Vehicle_t vehicle; + LaneAttributes_Crosswalk_t crosswalk; + LaneAttributes_Bike_t bikeLane; + LaneAttributes_Sidewalk_t sidewalk; + LaneAttributes_Barrier_t median; + LaneAttributes_Striping_t striping; + LaneAttributes_TrackedVehicle_t trackedVehicle; + LaneAttributes_Parking_t parking; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneTypeAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; +extern asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[8]; +extern asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneTypeAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h new file mode 100644 index 000000000..7fb4ae025 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LaneWidth_H_ +#define _LaneWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneWidth */ +typedef long LaneWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; +asn_struct_free_f LaneWidth_free; +asn_struct_print_f LaneWidth_print; +asn_constr_check_f LaneWidth_constraint; +ber_type_decoder_f LaneWidth_decode_ber; +der_type_encoder_f LaneWidth_encode_der; +xer_type_decoder_f LaneWidth_decode_xer; +xer_type_encoder_f LaneWidth_encode_xer; +jer_type_encoder_f LaneWidth_encode_jer; +oer_type_decoder_f LaneWidth_decode_oer; +oer_type_encoder_f LaneWidth_encode_oer; +per_type_decoder_f LaneWidth_decode_uper; +per_type_encoder_f LaneWidth_encode_uper; +per_type_decoder_f LaneWidth_decode_aper; +per_type_encoder_f LaneWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h new file mode 100644 index 000000000..f196bcc06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Latitude_H_ +#define _Latitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Latitude */ +typedef long Latitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Latitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Latitude; +asn_struct_free_f Latitude_free; +asn_struct_print_f Latitude_print; +asn_constr_check_f Latitude_constraint; +ber_type_decoder_f Latitude_decode_ber; +der_type_encoder_f Latitude_encode_der; +xer_type_decoder_f Latitude_decode_xer; +xer_type_encoder_f Latitude_encode_xer; +jer_type_encoder_f Latitude_encode_jer; +oer_type_decoder_f Latitude_decode_oer; +oer_type_encoder_f Latitude_encode_oer; +per_type_decoder_f Latitude_decode_uper; +per_type_encoder_f Latitude_encode_uper; +per_type_decoder_f Latitude_decode_aper; +per_type_encoder_f Latitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Latitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h new file mode 100644 index 000000000..a714c79c8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LatitudeDMS_H_ +#define _LatitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS */ +typedef long LatitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; +asn_struct_free_f LatitudeDMS_free; +asn_struct_print_f LatitudeDMS_print; +asn_constr_check_f LatitudeDMS_constraint; +ber_type_decoder_f LatitudeDMS_decode_ber; +der_type_encoder_f LatitudeDMS_encode_der; +xer_type_decoder_f LatitudeDMS_decode_xer; +xer_type_encoder_f LatitudeDMS_encode_xer; +jer_type_encoder_f LatitudeDMS_encode_jer; +oer_type_decoder_f LatitudeDMS_decode_oer; +oer_type_encoder_f LatitudeDMS_encode_oer; +per_type_decoder_f LatitudeDMS_decode_uper; +per_type_encoder_f LatitudeDMS_encode_uper; +per_type_decoder_f LatitudeDMS_decode_aper; +per_type_encoder_f LatitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h new file mode 100644 index 000000000..fcb809b4d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LatitudeDMS2_H_ +#define _LatitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLat.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS2 */ +typedef struct LatitudeDMS2 { + DegreesLat_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LatitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h new file mode 100644 index 000000000..84f52e07b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LayerID_H_ +#define _LayerID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LayerID */ +typedef long LayerID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerID; +asn_struct_free_f LayerID_free; +asn_struct_print_f LayerID_print; +asn_constr_check_f LayerID_constraint; +ber_type_decoder_f LayerID_decode_ber; +der_type_encoder_f LayerID_encode_der; +xer_type_decoder_f LayerID_decode_xer; +xer_type_encoder_f LayerID_encode_xer; +jer_type_encoder_f LayerID_encode_jer; +oer_type_decoder_f LayerID_decode_oer; +oer_type_encoder_f LayerID_encode_oer; +per_type_decoder_f LayerID_decode_uper; +per_type_encoder_f LayerID_encode_uper; +per_type_decoder_f LayerID_decode_aper; +per_type_encoder_f LayerID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h new file mode 100644 index 000000000..9ca374c9d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LayerType_H_ +#define _LayerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LayerType { + LayerType_none = 0, + LayerType_mixedContent = 1, + LayerType_generalMapData = 2, + LayerType_intersectionData = 3, + LayerType_curveData = 4, + LayerType_roadwaySectionData = 5, + LayerType_parkingAreaData = 6, + LayerType_sharedLaneData = 7 + /* + * Enumeration is extensible + */ +} e_LayerType; + +/* LayerType */ +typedef long LayerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerType; +extern const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1; +asn_struct_free_f LayerType_free; +asn_struct_print_f LayerType_print; +asn_constr_check_f LayerType_constraint; +ber_type_decoder_f LayerType_decode_ber; +der_type_encoder_f LayerType_encode_der; +xer_type_decoder_f LayerType_decode_xer; +xer_type_encoder_f LayerType_encode_xer; +jer_type_encoder_f LayerType_encode_jer; +oer_type_decoder_f LayerType_decode_oer; +oer_type_encoder_f LayerType_encode_oer; +per_type_decoder_f LayerType_decode_uper; +per_type_encoder_f LayerType_encode_uper; +per_type_decoder_f LayerType_decode_aper; +per_type_encoder_f LayerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h new file mode 100644 index 000000000..a1c3115ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LightbarInUse_H_ +#define _LightbarInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LightbarInUse { + LightbarInUse_unavailable = 0, + LightbarInUse_notInUse = 1, + LightbarInUse_inUse = 2, + LightbarInUse_yellowCautionLights = 3, + LightbarInUse_schooldBusLights = 4, + LightbarInUse_arrowSignsActive = 5, + LightbarInUse_slowMovingVehicle = 6, + LightbarInUse_freqStops = 7 +} e_LightbarInUse; + +/* LightbarInUse */ +typedef long LightbarInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; +extern const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1; +asn_struct_free_f LightbarInUse_free; +asn_struct_print_f LightbarInUse_print; +asn_constr_check_f LightbarInUse_constraint; +ber_type_decoder_f LightbarInUse_decode_ber; +der_type_encoder_f LightbarInUse_encode_der; +xer_type_decoder_f LightbarInUse_decode_xer; +xer_type_encoder_f LightbarInUse_encode_xer; +jer_type_encoder_f LightbarInUse_encode_jer; +oer_type_decoder_f LightbarInUse_decode_oer; +oer_type_encoder_f LightbarInUse_encode_oer; +per_type_decoder_f LightbarInUse_decode_uper; +per_type_encoder_f LightbarInUse_encode_uper; +per_type_decoder_f LightbarInUse_decode_aper; +per_type_encoder_f LightbarInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LightbarInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h new file mode 100644 index 000000000..f7b573534 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Location_quality_H_ +#define _Location_quality_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_quality { + Location_quality_loc_qual_bt1m = 0, + Location_quality_loc_qual_bt5m = 1, + Location_quality_loc_qual_bt12m = 2, + Location_quality_loc_qual_bt50m = 3, + Location_quality_loc_qual_bt125m = 4, + Location_quality_loc_qual_bt500m = 5, + Location_quality_loc_qual_bt1250m = 6, + Location_quality_loc_qual_unknown = 7 +} e_Location_quality; + +/* Location-quality */ +typedef long Location_quality_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_quality; +asn_struct_free_f Location_quality_free; +asn_struct_print_f Location_quality_print; +asn_constr_check_f Location_quality_constraint; +ber_type_decoder_f Location_quality_decode_ber; +der_type_encoder_f Location_quality_encode_der; +xer_type_decoder_f Location_quality_decode_xer; +xer_type_encoder_f Location_quality_encode_xer; +jer_type_encoder_f Location_quality_encode_jer; +oer_type_decoder_f Location_quality_decode_oer; +oer_type_encoder_f Location_quality_encode_oer; +per_type_decoder_f Location_quality_decode_uper; +per_type_encoder_f Location_quality_encode_uper; +per_type_decoder_f Location_quality_decode_aper; +per_type_encoder_f Location_quality_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_quality_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h new file mode 100644 index 000000000..084797ea9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Location_tech_H_ +#define _Location_tech_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_tech { + Location_tech_loc_tech_unknown = 0, + Location_tech_loc_tech_GNSS = 1, + Location_tech_loc_tech_DGPS = 2, + Location_tech_loc_tech_RTK = 3, + Location_tech_loc_tech_PPP = 4, + Location_tech_loc_tech_drGPS = 5, + Location_tech_loc_tech_drDGPS = 6, + Location_tech_loc_tech_dr = 7, + Location_tech_loc_tech_nav = 8, + Location_tech_loc_tech_fault = 9 + /* + * Enumeration is extensible + */ +} e_Location_tech; + +/* Location-tech */ +typedef long Location_tech_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_tech; +asn_struct_free_f Location_tech_free; +asn_struct_print_f Location_tech_print; +asn_constr_check_f Location_tech_constraint; +ber_type_decoder_f Location_tech_decode_ber; +der_type_encoder_f Location_tech_encode_der; +xer_type_decoder_f Location_tech_decode_xer; +xer_type_encoder_f Location_tech_encode_xer; +jer_type_encoder_f Location_tech_encode_jer; +oer_type_decoder_f Location_tech_decode_oer; +oer_type_encoder_f Location_tech_encode_oer; +per_type_decoder_f Location_tech_decode_uper; +per_type_encoder_f Location_tech_encode_uper; +per_type_decoder_f Location_tech_decode_aper; +per_type_encoder_f Location_tech_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_tech_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h new file mode 100644 index 000000000..f46d83f38 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Longitude_H_ +#define _Longitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Longitude */ +typedef long Longitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Longitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Longitude; +asn_struct_free_f Longitude_free; +asn_struct_print_f Longitude_print; +asn_constr_check_f Longitude_constraint; +ber_type_decoder_f Longitude_decode_ber; +der_type_encoder_f Longitude_encode_der; +xer_type_decoder_f Longitude_decode_xer; +xer_type_encoder_f Longitude_encode_xer; +jer_type_encoder_f Longitude_encode_jer; +oer_type_decoder_f Longitude_decode_oer; +oer_type_encoder_f Longitude_encode_oer; +per_type_decoder_f Longitude_decode_uper; +per_type_encoder_f Longitude_encode_uper; +per_type_decoder_f Longitude_decode_aper; +per_type_encoder_f Longitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Longitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h new file mode 100644 index 000000000..4e472e868 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LongitudeDMS_H_ +#define _LongitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS */ +typedef long LongitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; +asn_struct_free_f LongitudeDMS_free; +asn_struct_print_f LongitudeDMS_print; +asn_constr_check_f LongitudeDMS_constraint; +ber_type_decoder_f LongitudeDMS_decode_ber; +der_type_encoder_f LongitudeDMS_encode_der; +xer_type_decoder_f LongitudeDMS_decode_xer; +xer_type_encoder_f LongitudeDMS_encode_xer; +jer_type_encoder_f LongitudeDMS_encode_jer; +oer_type_decoder_f LongitudeDMS_decode_oer; +oer_type_encoder_f LongitudeDMS_encode_oer; +per_type_decoder_f LongitudeDMS_decode_uper; +per_type_encoder_f LongitudeDMS_encode_uper; +per_type_decoder_f LongitudeDMS_decode_aper; +per_type_encoder_f LongitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h new file mode 100644 index 000000000..516f6532e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _LongitudeDMS2_H_ +#define _LongitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLong.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS2 */ +typedef struct LongitudeDMS2 { + DegreesLong_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LongitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h new file mode 100644 index 000000000..a2b273335 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MUTCDCode_H_ +#define _MUTCDCode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MUTCDCode { + MUTCDCode_none = 0, + MUTCDCode_regulatory = 1, + MUTCDCode_warning = 2, + MUTCDCode_maintenance = 3, + MUTCDCode_motoristService = 4, + MUTCDCode_guide = 5, + MUTCDCode_rec = 6 + /* + * Enumeration is extensible + */ +} e_MUTCDCode; + +/* MUTCDCode */ +typedef long MUTCDCode_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; +extern const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1; +asn_struct_free_f MUTCDCode_free; +asn_struct_print_f MUTCDCode_print; +asn_constr_check_f MUTCDCode_constraint; +ber_type_decoder_f MUTCDCode_decode_ber; +der_type_encoder_f MUTCDCode_encode_der; +xer_type_decoder_f MUTCDCode_decode_xer; +xer_type_encoder_f MUTCDCode_encode_xer; +jer_type_encoder_f MUTCDCode_encode_jer; +oer_type_decoder_f MUTCDCode_decode_oer; +oer_type_encoder_f MUTCDCode_encode_oer; +per_type_decoder_f MUTCDCode_decode_uper; +per_type_encoder_f MUTCDCode_encode_uper; +per_type_decoder_f MUTCDCode_decode_aper; +per_type_encoder_f MUTCDCode_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MUTCDCode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h new file mode 100644 index 000000000..5e8f1f0f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ManeuverAssistList_H_ +#define _ManeuverAssistList_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 ConnectionManeuverAssist; + +/* ManeuverAssistList */ +typedef struct ManeuverAssistList { + A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ManeuverAssistList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; +extern asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1; +extern asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[1]; +extern asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ManeuverAssistList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h new file mode 100644 index 000000000..79f1a2a10 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MapData_addGrpC_H_ +#define _MapData_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalHeadLocationList; + +/* MapData-addGrpC */ +typedef struct MapData_addGrpC { + struct SignalHeadLocationList *signalHeadLocations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MapData_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MapData_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h new file mode 100644 index 000000000..12bafc0bf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MapData_H_ +#define _MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Common_MsgCount.h" +#include "LayerType.h" +#include "LayerID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionGeometryList; +struct RoadSegmentList; +struct DataParameters; +struct RestrictionClassList; +struct Reg_MapData; + +/* MapData */ +typedef struct MapData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Common_MsgCount_t msgIssueRevision; + LayerType_t *layerType; /* OPTIONAL */ + LayerID_t *layerID; /* OPTIONAL */ + struct IntersectionGeometryList *intersections; /* OPTIONAL */ + struct RoadSegmentList *roadSegments; /* OPTIONAL */ + struct DataParameters *dataParameters; /* OPTIONAL */ + struct RestrictionClassList *restrictionList; /* OPTIONAL */ + struct MapData__regional { + A_SEQUENCE_OF(struct Reg_MapData) 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; +} MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData; +extern asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1; +extern asn_TYPE_member_t asn_MBR_MapData_1[9]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h new file mode 100644 index 000000000..e61a7b71f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MaxTimetoChange_H_ +#define _MaxTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MaxTimetoChange */ +typedef long MaxTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; +asn_struct_free_f MaxTimetoChange_free; +asn_struct_print_f MaxTimetoChange_print; +asn_constr_check_f MaxTimetoChange_constraint; +ber_type_decoder_f MaxTimetoChange_decode_ber; +der_type_encoder_f MaxTimetoChange_encode_der; +xer_type_decoder_f MaxTimetoChange_decode_xer; +xer_type_encoder_f MaxTimetoChange_encode_xer; +jer_type_encoder_f MaxTimetoChange_encode_jer; +oer_type_decoder_f MaxTimetoChange_decode_oer; +oer_type_encoder_f MaxTimetoChange_encode_oer; +per_type_decoder_f MaxTimetoChange_decode_uper; +per_type_encoder_f MaxTimetoChange_encode_uper; +per_type_decoder_f MaxTimetoChange_decode_aper; +per_type_encoder_f MaxTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MaxTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h new file mode 100644 index 000000000..f908a394c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MergeDivergeNodeAngle_H_ +#define _MergeDivergeNodeAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MergeDivergeNodeAngle */ +typedef long MergeDivergeNodeAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; +asn_struct_free_f MergeDivergeNodeAngle_free; +asn_struct_print_f MergeDivergeNodeAngle_print; +asn_constr_check_f MergeDivergeNodeAngle_constraint; +ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; +der_type_encoder_f MergeDivergeNodeAngle_encode_der; +xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; +xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; +jer_type_encoder_f MergeDivergeNodeAngle_encode_jer; +oer_type_decoder_f MergeDivergeNodeAngle_decode_oer; +oer_type_encoder_f MergeDivergeNodeAngle_encode_oer; +per_type_decoder_f MergeDivergeNodeAngle_decode_uper; +per_type_encoder_f MergeDivergeNodeAngle_encode_uper; +per_type_decoder_f MergeDivergeNodeAngle_decode_aper; +per_type_encoder_f MergeDivergeNodeAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MergeDivergeNodeAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h new file mode 100644 index 000000000..406c6840b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MessageBLOB_H_ +#define _MessageBLOB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MessageBLOB */ +typedef OCTET_STRING_t MessageBLOB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageBLOB; +asn_struct_free_f MessageBLOB_free; +asn_struct_print_f MessageBLOB_print; +asn_constr_check_f MessageBLOB_constraint; +ber_type_decoder_f MessageBLOB_decode_ber; +der_type_encoder_f MessageBLOB_encode_der; +xer_type_decoder_f MessageBLOB_decode_xer; +xer_type_encoder_f MessageBLOB_encode_xer; +jer_type_encoder_f MessageBLOB_encode_jer; +oer_type_decoder_f MessageBLOB_decode_oer; +oer_type_encoder_f MessageBLOB_encode_oer; +per_type_decoder_f MessageBLOB_decode_uper; +per_type_encoder_f MessageBLOB_encode_uper; +per_type_decoder_f MessageBLOB_decode_aper; +per_type_encoder_f MessageBLOB_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageBLOB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h new file mode 100644 index 000000000..08795d0b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MessageFrame_H_ +#define _MessageFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "BasicSafetyMessage.h" +#include "MapData.h" +#include "SPAT.h" +#include "CommonSafetyRequest.h" +#include "EmergencyVehicleAlert.h" +#include "IntersectionCollision.h" +#include "NMEAcorrections.h" +#include "ProbeDataManagement.h" +#include "ProbeVehicleData.h" +#include "RoadSideAlert.h" +#include "RTCMcorrections.h" +#include "SignalRequestMessage.h" +#include "SignalStatusMessage.h" +#include "TravelerInformation.h" +#include "PersonalSafetyMessage.h" +#include "TestMessage00.h" +#include "TestMessage01.h" +#include "TestMessage02.h" +#include "TestMessage03.h" +#include "TestMessage04.h" +#include "TestMessage05.h" +#include "TestMessage06.h" +#include "TestMessage07.h" +#include "TestMessage08.h" +#include "TestMessage09.h" +#include "TestMessage10.h" +#include "TestMessage11.h" +#include "TestMessage12.h" +#include "TestMessage13.h" +#include "TestMessage14.h" +#include "TestMessage15.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MessageFrame__value_PR { + MessageFrame__value_PR_NOTHING, /* No components present */ + MessageFrame__value_PR_BasicSafetyMessage, + MessageFrame__value_PR_MapData, + MessageFrame__value_PR_SPAT, + MessageFrame__value_PR_CommonSafetyRequest, + MessageFrame__value_PR_EmergencyVehicleAlert, + MessageFrame__value_PR_IntersectionCollision, + MessageFrame__value_PR_NMEAcorrections, + MessageFrame__value_PR_ProbeDataManagement, + MessageFrame__value_PR_ProbeVehicleData, + MessageFrame__value_PR_RoadSideAlert, + MessageFrame__value_PR_RTCMcorrections, + MessageFrame__value_PR_SignalRequestMessage, + MessageFrame__value_PR_SignalStatusMessage, + MessageFrame__value_PR_TravelerInformation, + MessageFrame__value_PR_PersonalSafetyMessage, + MessageFrame__value_PR_TestMessage00, + MessageFrame__value_PR_TestMessage01, + MessageFrame__value_PR_TestMessage02, + MessageFrame__value_PR_TestMessage03, + MessageFrame__value_PR_TestMessage04, + MessageFrame__value_PR_TestMessage05, + MessageFrame__value_PR_TestMessage06, + MessageFrame__value_PR_TestMessage07, + MessageFrame__value_PR_TestMessage08, + MessageFrame__value_PR_TestMessage09, + MessageFrame__value_PR_TestMessage10, + MessageFrame__value_PR_TestMessage11, + MessageFrame__value_PR_TestMessage12, + MessageFrame__value_PR_TestMessage13, + MessageFrame__value_PR_TestMessage14, + MessageFrame__value_PR_TestMessage15 +} MessageFrame__value_PR; + +/* MessageFrame */ +typedef struct MessageFrame { + DSRCmsgID_t messageId; + struct MessageFrame__value { + MessageFrame__value_PR present; + union MessageFrame__value_u { + BasicSafetyMessage_t BasicSafetyMessage; + MapData_t MapData; + SPAT_t SPAT; + CommonSafetyRequest_t CommonSafetyRequest; + EmergencyVehicleAlert_t EmergencyVehicleAlert; + IntersectionCollision_t IntersectionCollision; + NMEAcorrections_t NMEAcorrections; + ProbeDataManagement_t ProbeDataManagement; + ProbeVehicleData_t ProbeVehicleData; + RoadSideAlert_t RoadSideAlert; + RTCMcorrections_t RTCMcorrections; + SignalRequestMessage_t SignalRequestMessage; + SignalStatusMessage_t SignalStatusMessage; + TravelerInformation_t TravelerInformation; + PersonalSafetyMessage_t PersonalSafetyMessage; + TestMessage00_t TestMessage00; + TestMessage01_t TestMessage01; + TestMessage02_t TestMessage02; + TestMessage03_t TestMessage03; + TestMessage04_t TestMessage04; + TestMessage05_t TestMessage05; + TestMessage06_t TestMessage06; + TestMessage07_t TestMessage07; + TestMessage08_t TestMessage08; + TestMessage09_t TestMessage09; + TestMessage10_t TestMessage10; + TestMessage11_t TestMessage11; + TestMessage12_t TestMessage12; + TestMessage13_t TestMessage13; + TestMessage14_t TestMessage14; + TestMessage15_t TestMessage15; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MessageFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageFrame; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h new file mode 100644 index 000000000..3eb0d05a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MinTimetoChange_H_ +#define _MinTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinTimetoChange */ +typedef long MinTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; +asn_struct_free_f MinTimetoChange_free; +asn_struct_print_f MinTimetoChange_print; +asn_constr_check_f MinTimetoChange_constraint; +ber_type_decoder_f MinTimetoChange_decode_ber; +der_type_encoder_f MinTimetoChange_encode_der; +xer_type_decoder_f MinTimetoChange_decode_xer; +xer_type_encoder_f MinTimetoChange_encode_xer; +jer_type_encoder_f MinTimetoChange_encode_jer; +oer_type_decoder_f MinTimetoChange_decode_oer; +oer_type_encoder_f MinTimetoChange_encode_oer; +per_type_decoder_f MinTimetoChange_decode_uper; +per_type_encoder_f MinTimetoChange_encode_uper; +per_type_decoder_f MinTimetoChange_decode_aper; +per_type_encoder_f MinTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h new file mode 100644 index 000000000..72459eb4a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Minute_H_ +#define _Minute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Minute */ +typedef long Minute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Minute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Minute; +asn_struct_free_f Minute_free; +asn_struct_print_f Minute_print; +asn_constr_check_f Minute_constraint; +ber_type_decoder_f Minute_decode_ber; +der_type_encoder_f Minute_encode_der; +xer_type_decoder_f Minute_decode_xer; +xer_type_encoder_f Minute_encode_xer; +jer_type_encoder_f Minute_encode_jer; +oer_type_decoder_f Minute_decode_oer; +oer_type_encoder_f Minute_encode_oer; +per_type_decoder_f Minute_decode_uper; +per_type_encoder_f Minute_encode_uper; +per_type_decoder_f Minute_decode_aper; +per_type_encoder_f Minute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Minute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h new file mode 100644 index 000000000..a63d49b85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MinuteOfTheYear_H_ +#define _MinuteOfTheYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinuteOfTheYear */ +typedef long MinuteOfTheYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; +asn_struct_free_f MinuteOfTheYear_free; +asn_struct_print_f MinuteOfTheYear_print; +asn_constr_check_f MinuteOfTheYear_constraint; +ber_type_decoder_f MinuteOfTheYear_decode_ber; +der_type_encoder_f MinuteOfTheYear_encode_der; +xer_type_decoder_f MinuteOfTheYear_decode_xer; +xer_type_encoder_f MinuteOfTheYear_encode_xer; +jer_type_encoder_f MinuteOfTheYear_encode_jer; +oer_type_decoder_f MinuteOfTheYear_decode_oer; +oer_type_encoder_f MinuteOfTheYear_encode_oer; +per_type_decoder_f MinuteOfTheYear_decode_uper; +per_type_encoder_f MinuteOfTheYear_encode_uper; +per_type_decoder_f MinuteOfTheYear_decode_aper; +per_type_encoder_f MinuteOfTheYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinuteOfTheYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h new file mode 100644 index 000000000..4a85d114a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MinutesAngle_H_ +#define _MinutesAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesAngle */ +typedef long MinutesAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; +asn_struct_free_f MinutesAngle_free; +asn_struct_print_f MinutesAngle_print; +asn_constr_check_f MinutesAngle_constraint; +ber_type_decoder_f MinutesAngle_decode_ber; +der_type_encoder_f MinutesAngle_encode_der; +xer_type_decoder_f MinutesAngle_decode_xer; +xer_type_encoder_f MinutesAngle_encode_xer; +jer_type_encoder_f MinutesAngle_encode_jer; +oer_type_decoder_f MinutesAngle_decode_oer; +oer_type_encoder_f MinutesAngle_encode_oer; +per_type_decoder_f MinutesAngle_decode_uper; +per_type_encoder_f MinutesAngle_encode_uper; +per_type_decoder_f MinutesAngle_decode_aper; +per_type_encoder_f MinutesAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h new file mode 100644 index 000000000..368bac4f3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MinutesDuration_H_ +#define _MinutesDuration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesDuration */ +typedef long MinutesDuration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; +asn_struct_free_f MinutesDuration_free; +asn_struct_print_f MinutesDuration_print; +asn_constr_check_f MinutesDuration_constraint; +ber_type_decoder_f MinutesDuration_decode_ber; +der_type_encoder_f MinutesDuration_encode_der; +xer_type_decoder_f MinutesDuration_decode_xer; +xer_type_encoder_f MinutesDuration_encode_xer; +jer_type_encoder_f MinutesDuration_encode_jer; +oer_type_decoder_f MinutesDuration_decode_oer; +oer_type_encoder_f MinutesDuration_encode_oer; +per_type_decoder_f MinutesDuration_decode_uper; +per_type_encoder_f MinutesDuration_encode_uper; +per_type_decoder_f MinutesDuration_decode_aper; +per_type_encoder_f MinutesDuration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesDuration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h new file mode 100644 index 000000000..8b8d0b613 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Month_H_ +#define _Month_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Month */ +typedef long Month_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Month_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Month; +asn_struct_free_f Month_free; +asn_struct_print_f Month_print; +asn_constr_check_f Month_constraint; +ber_type_decoder_f Month_decode_ber; +der_type_encoder_f Month_encode_der; +xer_type_decoder_f Month_decode_xer; +xer_type_encoder_f Month_encode_xer; +jer_type_encoder_f Month_encode_jer; +oer_type_decoder_f Month_decode_oer; +oer_type_encoder_f Month_encode_oer; +per_type_decoder_f Month_decode_uper; +per_type_encoder_f Month_encode_uper; +per_type_decoder_f Month_decode_aper; +per_type_encoder_f Month_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Month_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h new file mode 100644 index 000000000..ac595ac7f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MotorizedPropelledType_H_ +#define _MotorizedPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MotorizedPropelledType { + MotorizedPropelledType_unavailable = 0, + MotorizedPropelledType_otherTypes = 1, + MotorizedPropelledType_wheelChair = 2, + MotorizedPropelledType_bicycle = 3, + MotorizedPropelledType_scooter = 4, + MotorizedPropelledType_selfBalancingDevice = 5 + /* + * Enumeration is extensible + */ +} e_MotorizedPropelledType; + +/* MotorizedPropelledType */ +typedef long MotorizedPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1; +asn_struct_free_f MotorizedPropelledType_free; +asn_struct_print_f MotorizedPropelledType_print; +asn_constr_check_f MotorizedPropelledType_constraint; +ber_type_decoder_f MotorizedPropelledType_decode_ber; +der_type_encoder_f MotorizedPropelledType_encode_der; +xer_type_decoder_f MotorizedPropelledType_decode_xer; +xer_type_encoder_f MotorizedPropelledType_encode_xer; +jer_type_encoder_f MotorizedPropelledType_encode_jer; +oer_type_decoder_f MotorizedPropelledType_decode_oer; +oer_type_encoder_f MotorizedPropelledType_encode_oer; +per_type_decoder_f MotorizedPropelledType_decode_uper; +per_type_encoder_f MotorizedPropelledType_encode_uper; +per_type_decoder_f MotorizedPropelledType_decode_aper; +per_type_encoder_f MotorizedPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MotorizedPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h new file mode 100644 index 000000000..cfc2fe447 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementEvent_addGrpB_H_ +#define _MovementEvent_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeRemaining.h" +#include "MinTimetoChange.h" +#include "MaxTimetoChange.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MovementEvent-addGrpB */ +typedef struct MovementEvent_addGrpB { + TimeRemaining_t *startTime; /* OPTIONAL */ + MinTimetoChange_t minEndTime; + MaxTimetoChange_t *maxEndTime; /* OPTIONAL */ + TimeRemaining_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + TimeRemaining_t *nextTime; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEvent_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementEvent_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h new file mode 100644 index 000000000..cea2d2ab8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementEvent_H_ +#define _MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MovementPhaseState.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TimeChangeDetails; +struct AdvisorySpeedList; +struct Reg_MovementEvent; + +/* MovementEvent */ +typedef struct MovementEvent { + MovementPhaseState_t eventState; + struct TimeChangeDetails *timing; /* OPTIONAL */ + struct AdvisorySpeedList *speeds; /* OPTIONAL */ + struct MovementEvent__regional { + A_SEQUENCE_OF(struct Reg_MovementEvent) 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; +} MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEvent_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h new file mode 100644 index 000000000..c2e0f1e2b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementEventList_H_ +#define _MovementEventList_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 MovementEvent; + +/* MovementEventList */ +typedef struct MovementEventList { + A_SEQUENCE_OF(struct MovementEvent) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEventList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; +extern asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEventList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementEventList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementEventList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h new file mode 100644 index 000000000..b713615a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementList_H_ +#define _MovementList_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 MovementState; + +/* MovementList */ +typedef struct MovementList { + A_SEQUENCE_OF(struct MovementState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementList; +extern asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h new file mode 100644 index 000000000..6cdcb0b52 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementPhaseState_H_ +#define _MovementPhaseState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MovementPhaseState { + MovementPhaseState_unavailable = 0, + MovementPhaseState_dark = 1, + MovementPhaseState_stop_Then_Proceed = 2, + MovementPhaseState_stop_And_Remain = 3, + MovementPhaseState_pre_Movement = 4, + MovementPhaseState_permissive_Movement_Allowed = 5, + MovementPhaseState_protected_Movement_Allowed = 6, + MovementPhaseState_permissive_clearance = 7, + MovementPhaseState_protected_clearance = 8, + MovementPhaseState_caution_Conflicting_Traffic = 9 +} e_MovementPhaseState; + +/* MovementPhaseState */ +typedef long MovementPhaseState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; +extern const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1; +asn_struct_free_f MovementPhaseState_free; +asn_struct_print_f MovementPhaseState_print; +asn_constr_check_f MovementPhaseState_constraint; +ber_type_decoder_f MovementPhaseState_decode_ber; +der_type_encoder_f MovementPhaseState_encode_der; +xer_type_decoder_f MovementPhaseState_decode_xer; +xer_type_encoder_f MovementPhaseState_encode_xer; +jer_type_encoder_f MovementPhaseState_encode_jer; +oer_type_decoder_f MovementPhaseState_decode_oer; +oer_type_encoder_f MovementPhaseState_encode_oer; +per_type_decoder_f MovementPhaseState_decode_uper; +per_type_encoder_f MovementPhaseState_encode_uper; +per_type_decoder_f MovementPhaseState_decode_aper; +per_type_encoder_f MovementPhaseState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementPhaseState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h new file mode 100644 index 000000000..f74b54ef5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MovementState_H_ +#define _MovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "SignalGroupID.h" +#include "MovementEventList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ManeuverAssistList; +struct Reg_MovementState; + +/* MovementState */ +typedef struct MovementState { + DescriptiveName_t *movementName; /* OPTIONAL */ + SignalGroupID_t signalGroup; + MovementEventList_t state_time_speed; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct MovementState__regional { + A_SEQUENCE_OF(struct Reg_MovementState) 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; +} MovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementState; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementState_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h new file mode 100644 index 000000000..6626f4a3c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MsgCRC_H_ +#define _MsgCRC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MsgCRC */ +typedef OCTET_STRING_t MsgCRC_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MsgCRC_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; +asn_struct_free_f MsgCRC_free; +asn_struct_print_f MsgCRC_print; +asn_constr_check_f MsgCRC_constraint; +ber_type_decoder_f MsgCRC_decode_ber; +der_type_encoder_f MsgCRC_encode_der; +xer_type_decoder_f MsgCRC_decode_xer; +xer_type_encoder_f MsgCRC_encode_xer; +jer_type_encoder_f MsgCRC_encode_jer; +oer_type_decoder_f MsgCRC_decode_oer; +oer_type_encoder_f MsgCRC_encode_oer; +per_type_decoder_f MsgCRC_decode_uper; +per_type_encoder_f MsgCRC_encode_uper; +per_type_decoder_f MsgCRC_decode_aper; +per_type_encoder_f MsgCRC_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MsgCRC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h new file mode 100644 index 000000000..8a0f64cb2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _MultiVehicleResponse_H_ +#define _MultiVehicleResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MultiVehicleResponse { + MultiVehicleResponse_unavailable = 0, + MultiVehicleResponse_singleVehicle = 1, + MultiVehicleResponse_multiVehicle = 2, + MultiVehicleResponse_reserved = 3 +} e_MultiVehicleResponse; + +/* MultiVehicleResponse */ +typedef long MultiVehicleResponse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; +extern const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1; +asn_struct_free_f MultiVehicleResponse_free; +asn_struct_print_f MultiVehicleResponse_print; +asn_constr_check_f MultiVehicleResponse_constraint; +ber_type_decoder_f MultiVehicleResponse_decode_ber; +der_type_encoder_f MultiVehicleResponse_encode_der; +xer_type_decoder_f MultiVehicleResponse_decode_xer; +xer_type_encoder_f MultiVehicleResponse_encode_xer; +jer_type_encoder_f MultiVehicleResponse_encode_jer; +oer_type_decoder_f MultiVehicleResponse_decode_oer; +oer_type_encoder_f MultiVehicleResponse_encode_oer; +per_type_decoder_f MultiVehicleResponse_decode_uper; +per_type_encoder_f MultiVehicleResponse_encode_uper; +per_type_decoder_f MultiVehicleResponse_decode_aper; +per_type_encoder_f MultiVehicleResponse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MultiVehicleResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h new file mode 100644 index 000000000..f2f401222 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NMEA_MsgType_H_ +#define _NMEA_MsgType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-MsgType */ +typedef long NMEA_MsgType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; +asn_struct_free_f NMEA_MsgType_free; +asn_struct_print_f NMEA_MsgType_print; +asn_constr_check_f NMEA_MsgType_constraint; +ber_type_decoder_f NMEA_MsgType_decode_ber; +der_type_encoder_f NMEA_MsgType_encode_der; +xer_type_decoder_f NMEA_MsgType_decode_xer; +xer_type_encoder_f NMEA_MsgType_encode_xer; +jer_type_encoder_f NMEA_MsgType_encode_jer; +oer_type_decoder_f NMEA_MsgType_decode_oer; +oer_type_encoder_f NMEA_MsgType_encode_oer; +per_type_decoder_f NMEA_MsgType_decode_uper; +per_type_encoder_f NMEA_MsgType_encode_uper; +per_type_decoder_f NMEA_MsgType_decode_aper; +per_type_encoder_f NMEA_MsgType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_MsgType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h new file mode 100644 index 000000000..80ddfcd01 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NMEA_Payload_H_ +#define _NMEA_Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-Payload */ +typedef OCTET_STRING_t NMEA_Payload_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; +asn_struct_free_f NMEA_Payload_free; +asn_struct_print_f NMEA_Payload_print; +asn_constr_check_f NMEA_Payload_constraint; +ber_type_decoder_f NMEA_Payload_decode_ber; +der_type_encoder_f NMEA_Payload_encode_der; +xer_type_decoder_f NMEA_Payload_decode_xer; +xer_type_encoder_f NMEA_Payload_encode_xer; +jer_type_encoder_f NMEA_Payload_encode_jer; +oer_type_decoder_f NMEA_Payload_decode_oer; +oer_type_encoder_f NMEA_Payload_encode_oer; +per_type_decoder_f NMEA_Payload_decode_uper; +per_type_encoder_f NMEA_Payload_encode_uper; +per_type_decoder_f NMEA_Payload_decode_aper; +per_type_encoder_f NMEA_Payload_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h new file mode 100644 index 000000000..384564b35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NMEA_Revision_H_ +#define _NMEA_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NMEA_Revision { + NMEA_Revision_unknown = 0, + NMEA_Revision_reserved = 1, + NMEA_Revision_rev1 = 2, + NMEA_Revision_rev2 = 3, + NMEA_Revision_rev3 = 4, + NMEA_Revision_rev4 = 5, + NMEA_Revision_rev5 = 6 + /* + * Enumeration is extensible + */ +} e_NMEA_Revision; + +/* NMEA-Revision */ +typedef long NMEA_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1; +asn_struct_free_f NMEA_Revision_free; +asn_struct_print_f NMEA_Revision_print; +asn_constr_check_f NMEA_Revision_constraint; +ber_type_decoder_f NMEA_Revision_decode_ber; +der_type_encoder_f NMEA_Revision_encode_der; +xer_type_decoder_f NMEA_Revision_decode_xer; +xer_type_encoder_f NMEA_Revision_encode_xer; +jer_type_encoder_f NMEA_Revision_encode_jer; +oer_type_decoder_f NMEA_Revision_decode_oer; +oer_type_encoder_f NMEA_Revision_encode_oer; +per_type_decoder_f NMEA_Revision_decode_uper; +per_type_encoder_f NMEA_Revision_encode_uper; +per_type_decoder_f NMEA_Revision_decode_aper; +per_type_encoder_f NMEA_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h new file mode 100644 index 000000000..261c316c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NMEAcorrections_H_ +#define _NMEAcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "NMEA-Revision.h" +#include "NMEA-MsgType.h" +#include "ObjectCount.h" +#include "NMEA-Payload.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_NMEAcorrections; + +/* NMEAcorrections */ +typedef struct NMEAcorrections { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + NMEA_Revision_t *rev; /* OPTIONAL */ + NMEA_MsgType_t *msg; /* OPTIONAL */ + ObjectCount_t *wdCount; /* OPTIONAL */ + NMEA_Payload_t payload; + struct NMEAcorrections__regional { + A_SEQUENCE_OF(struct Reg_NMEAcorrections) 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; +} NMEAcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEAcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_NMEAcorrections_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEAcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h new file mode 100644 index 000000000..0c711e3fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard ENUMERATED in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeEnumerated_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeEnumerated_H_ +#define _NativeEnumerated_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; +extern asn_TYPE_operation_t asn_OP_NativeEnumerated; + +#define NativeEnumerated_free NativeInteger_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define NativeEnumerated_print NativeInteger_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define NativeEnumerated_compare NativeInteger_compare + +#define NativeEnumerated_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define NativeEnumerated_decode_ber NativeInteger_decode_ber +#define NativeEnumerated_encode_der NativeInteger_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define NativeEnumerated_decode_xer NativeInteger_decode_xer +xer_type_encoder_f NativeEnumerated_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f NativeEnumerated_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f NativeEnumerated_decode_oer; +oer_type_encoder_f NativeEnumerated_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f NativeEnumerated_decode_uper; +per_type_encoder_f NativeEnumerated_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f NativeEnumerated_decode_aper; +per_type_encoder_f NativeEnumerated_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#define NativeEnumerated_random_fill NativeInteger_random_fill +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int NativeEnumerated__compar_value2enum( + const void *ap, + const void *bp); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h new file mode 100644 index 000000000..3a47c11a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h @@ -0,0 +1,71 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard INTEGER in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeInteger_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeInteger_H_ +#define _NativeInteger_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; +extern asn_TYPE_operation_t asn_OP_NativeInteger; + +asn_struct_free_f NativeInteger_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f NativeInteger_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f NativeInteger_compare; + +#define NativeInteger_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f NativeInteger_decode_ber; +der_type_encoder_f NativeInteger_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f NativeInteger_decode_xer; +xer_type_encoder_f NativeInteger_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f NativeInteger_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f NativeInteger_decode_oer; +oer_type_encoder_f NativeInteger_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f NativeInteger_decode_uper; +per_type_encoder_f NativeInteger_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f NativeInteger_decode_aper; +per_type_encoder_f NativeInteger_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f NativeInteger_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h new file mode 100644 index 000000000..e083db5d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_24B_H_ +#define _Node_LL_24B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-24B */ +typedef struct Node_LL_24B { + OffsetLL_B12_t lon; + OffsetLL_B12_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_24B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_24B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_24B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_24B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h new file mode 100644 index 000000000..17b7a2ad1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_28B_H_ +#define _Node_LL_28B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-28B */ +typedef struct Node_LL_28B { + OffsetLL_B14_t lon; + OffsetLL_B14_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_28B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_28B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_28B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_28B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h new file mode 100644 index 000000000..8cb729d4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_32B_H_ +#define _Node_LL_32B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-32B */ +typedef struct Node_LL_32B { + OffsetLL_B16_t lon; + OffsetLL_B16_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_32B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_32B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_32B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_32B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h new file mode 100644 index 000000000..a384a4408 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_36B_H_ +#define _Node_LL_36B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-36B */ +typedef struct Node_LL_36B { + OffsetLL_B18_t lon; + OffsetLL_B18_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_36B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_36B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_36B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_36B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h new file mode 100644 index 000000000..46f8fe002 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_44B_H_ +#define _Node_LL_44B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B22.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-44B */ +typedef struct Node_LL_44B { + OffsetLL_B22_t lon; + OffsetLL_B22_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_44B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_44B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_44B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_44B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h new file mode 100644 index 000000000..838bd7655 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LL_48B_H_ +#define _Node_LL_48B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B24.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-48B */ +typedef struct Node_LL_48B { + OffsetLL_B24_t lon; + OffsetLL_B24_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_48B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_48B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_48B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_48B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h new file mode 100644 index 000000000..0720d15dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LLdms_48b_H_ +#define _Node_LLdms_48b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS.h" +#include "LatitudeDMS.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-48b */ +typedef struct Node_LLdms_48b { + LongitudeDMS_t lon; + LatitudeDMS_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_48b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_48b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h new file mode 100644 index 000000000..608873b2f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LLdms_80b_H_ +#define _Node_LLdms_80b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS2.h" +#include "LatitudeDMS2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-80b */ +typedef struct Node_LLdms_80b { + LongitudeDMS2_t lon; + LatitudeDMS2_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_80b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_80b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h new file mode 100644 index 000000000..37a0cc84c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_LLmD_64b_H_ +#define _Node_LLmD_64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLmD-64b */ +typedef struct Node_LLmD_64b { + Longitude_t lon; + Latitude_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLmD_64b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLmD_64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h new file mode 100644 index 000000000..4a041d80f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_20b_H_ +#define _Node_XY_20b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-20b */ +typedef struct Node_XY_20b { + Offset_B10_t x; + Offset_B10_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_20b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_20b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_20b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h new file mode 100644 index 000000000..c47628e4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_22b_H_ +#define _Node_XY_22b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-22b */ +typedef struct Node_XY_22b { + Offset_B11_t x; + Offset_B11_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_22b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_22b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_22b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h new file mode 100644 index 000000000..4dc09366d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_24b_H_ +#define _Node_XY_24b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-24b */ +typedef struct Node_XY_24b { + Offset_B12_t x; + Offset_B12_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_24b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_24b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_24b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h new file mode 100644 index 000000000..083583472 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_26b_H_ +#define _Node_XY_26b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B13.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-26b */ +typedef struct Node_XY_26b { + Offset_B13_t x; + Offset_B13_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_26b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_26b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_26b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h new file mode 100644 index 000000000..6db5d9275 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_28b_H_ +#define _Node_XY_28b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-28b */ +typedef struct Node_XY_28b { + Offset_B14_t x; + Offset_B14_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_28b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_28b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_28b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h new file mode 100644 index 000000000..66ec54695 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Node_XY_32b_H_ +#define _Node_XY_32b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-32b */ +typedef struct Node_XY_32b { + Offset_B16_t x; + Offset_B16_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_32b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_32b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_32b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h new file mode 100644 index 000000000..9ed0de31a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeLL_H_ +#define _NodeAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeLL { + NodeAttributeLL_reserved = 0, + NodeAttributeLL_stopLine = 1, + NodeAttributeLL_roundedCapStyleA = 2, + NodeAttributeLL_roundedCapStyleB = 3, + NodeAttributeLL_mergePoint = 4, + NodeAttributeLL_divergePoint = 5, + NodeAttributeLL_downstreamStopLine = 6, + NodeAttributeLL_downstreamStartNode = 7, + NodeAttributeLL_closedToTraffic = 8, + NodeAttributeLL_safeIsland = 9, + NodeAttributeLL_curbPresentAtStepOff = 10, + NodeAttributeLL_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeLL; + +/* NodeAttributeLL */ +typedef long NodeAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1; +asn_struct_free_f NodeAttributeLL_free; +asn_struct_print_f NodeAttributeLL_print; +asn_constr_check_f NodeAttributeLL_constraint; +ber_type_decoder_f NodeAttributeLL_decode_ber; +der_type_encoder_f NodeAttributeLL_encode_der; +xer_type_decoder_f NodeAttributeLL_decode_xer; +xer_type_encoder_f NodeAttributeLL_encode_xer; +jer_type_encoder_f NodeAttributeLL_encode_jer; +oer_type_decoder_f NodeAttributeLL_decode_oer; +oer_type_encoder_f NodeAttributeLL_encode_oer; +per_type_decoder_f NodeAttributeLL_decode_uper; +per_type_encoder_f NodeAttributeLL_encode_uper; +per_type_decoder_f NodeAttributeLL_decode_aper; +per_type_encoder_f NodeAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h new file mode 100644 index 000000000..9bc0d4da3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeLLList_H_ +#define _NodeAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeLLList */ +typedef struct NodeAttributeLLList { + A_SEQUENCE_OF(NodeAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h new file mode 100644 index 000000000..cc072f141 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeSetLL_H_ +#define _NodeAttributeSetLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeLLList; +struct SegmentAttributeLLList; +struct LaneDataAttributeList; +struct Reg_NodeAttributeSetLL; + +/* NodeAttributeSetLL */ +typedef struct NodeAttributeSetLL { + struct NodeAttributeLLList *localNode; /* OPTIONAL */ + struct SegmentAttributeLLList *disabled; /* OPTIONAL */ + struct SegmentAttributeLLList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetLL__regional { + A_SEQUENCE_OF(struct Reg_NodeAttributeSetLL) 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; +} NodeAttributeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h new file mode 100644 index 000000000..0f98a8fb6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeSetXY_H_ +#define _NodeAttributeSetXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeXYList; +struct SegmentAttributeXYList; +struct LaneDataAttributeList; +struct Reg_NodeAttributeSetXY; + +/* NodeAttributeSetXY */ +typedef struct NodeAttributeSetXY { + struct NodeAttributeXYList *localNode; /* OPTIONAL */ + struct SegmentAttributeXYList *disabled; /* OPTIONAL */ + struct SegmentAttributeXYList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetXY__regional { + A_SEQUENCE_OF(struct Reg_NodeAttributeSetXY) 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; +} NodeAttributeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h new file mode 100644 index 000000000..9803927cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeXY_H_ +#define _NodeAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeXY { + NodeAttributeXY_reserved = 0, + NodeAttributeXY_stopLine = 1, + NodeAttributeXY_roundedCapStyleA = 2, + NodeAttributeXY_roundedCapStyleB = 3, + NodeAttributeXY_mergePoint = 4, + NodeAttributeXY_divergePoint = 5, + NodeAttributeXY_downstreamStopLine = 6, + NodeAttributeXY_downstreamStartNode = 7, + NodeAttributeXY_closedToTraffic = 8, + NodeAttributeXY_safeIsland = 9, + NodeAttributeXY_curbPresentAtStepOff = 10, + NodeAttributeXY_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeXY; + +/* NodeAttributeXY */ +typedef long NodeAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1; +asn_struct_free_f NodeAttributeXY_free; +asn_struct_print_f NodeAttributeXY_print; +asn_constr_check_f NodeAttributeXY_constraint; +ber_type_decoder_f NodeAttributeXY_decode_ber; +der_type_encoder_f NodeAttributeXY_encode_der; +xer_type_decoder_f NodeAttributeXY_decode_xer; +xer_type_encoder_f NodeAttributeXY_encode_xer; +jer_type_encoder_f NodeAttributeXY_encode_jer; +oer_type_decoder_f NodeAttributeXY_decode_oer; +oer_type_encoder_f NodeAttributeXY_encode_oer; +per_type_decoder_f NodeAttributeXY_decode_uper; +per_type_encoder_f NodeAttributeXY_encode_uper; +per_type_decoder_f NodeAttributeXY_decode_aper; +per_type_encoder_f NodeAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h new file mode 100644 index 000000000..af3e4be8d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeAttributeXYList_H_ +#define _NodeAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeXYList */ +typedef struct NodeAttributeXYList { + A_SEQUENCE_OF(NodeAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h new file mode 100644 index 000000000..c71625ba3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeLL_H_ +#define _NodeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointLL.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetLL; + +/* NodeLL */ +typedef struct NodeLL { + NodeOffsetPointLL_t delta; + struct NodeAttributeSetLL *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeLL_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h new file mode 100644 index 000000000..39c40dc3d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeListLL_H_ +#define _NodeListLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetLL.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListLL_PR { + NodeListLL_PR_NOTHING, /* No components present */ + NodeListLL_PR_nodes + /* Extensions may appear below */ + +} NodeListLL_PR; + +/* NodeListLL */ +typedef struct NodeListLL { + NodeListLL_PR present; + union NodeListLL_u { + NodeSetLL_t nodes; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeListLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h new file mode 100644 index 000000000..4ba01bfc4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeListXY_H_ +#define _NodeListXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetXY.h" +#include "ComputedLane.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListXY_PR { + NodeListXY_PR_NOTHING, /* No components present */ + NodeListXY_PR_nodes, + NodeListXY_PR_computed + /* Extensions may appear below */ + +} NodeListXY_PR; + +/* NodeListXY */ +typedef struct NodeListXY { + NodeListXY_PR present; + union NodeListXY_u { + NodeSetXY_t nodes; + ComputedLane_t computed; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListXY_1[2]; +extern asn_per_constraints_t asn_PER_type_NodeListXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h new file mode 100644 index 000000000..a07d995ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeOffsetPointLL_H_ +#define _NodeOffsetPointLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LL-24B.h" +#include "Node-LL-28B.h" +#include "Node-LL-32B.h" +#include "Node-LL-36B.h" +#include "Node-LL-44B.h" +#include "Node-LL-48B.h" +#include "Node-LLmD-64b.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointLL_PR { + NodeOffsetPointLL_PR_NOTHING, /* No components present */ + NodeOffsetPointLL_PR_node_LL1, + NodeOffsetPointLL_PR_node_LL2, + NodeOffsetPointLL_PR_node_LL3, + NodeOffsetPointLL_PR_node_LL4, + NodeOffsetPointLL_PR_node_LL5, + NodeOffsetPointLL_PR_node_LL6, + NodeOffsetPointLL_PR_node_LatLon, + NodeOffsetPointLL_PR_regional +} NodeOffsetPointLL_PR; + +/* NodeOffsetPointLL */ +typedef struct NodeOffsetPointLL { + NodeOffsetPointLL_PR present; + union NodeOffsetPointLL_u { + Node_LL_24B_t node_LL1; + Node_LL_28B_t node_LL2; + Node_LL_32B_t node_LL3; + Node_LL_36B_t node_LL4; + Node_LL_44B_t node_LL5; + Node_LL_48B_t node_LL6; + Node_LLmD_64b_t node_LatLon; + Reg_NodeOffsetPointLL_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h new file mode 100644 index 000000000..5ac467a85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeOffsetPointXY_addGrpB_H_ +#define _NodeOffsetPointXY_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LLdms-48b.h" +#include "Node-LLdms-80b.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointXY_addGrpB_PR { + NodeOffsetPointXY_addGrpB_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_addGrpB_PR_posA, + NodeOffsetPointXY_addGrpB_PR_posB + /* Extensions may appear below */ + +} NodeOffsetPointXY_addGrpB_PR; + +/* NodeOffsetPointXY-addGrpB */ +typedef struct NodeOffsetPointXY_addGrpB { + NodeOffsetPointXY_addGrpB_PR present; + union NodeOffsetPointXY_addGrpB_u { + Node_LLdms_48b_t posA; + Node_LLdms_80b_t posB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[2]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointXY_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h new file mode 100644 index 000000000..4bb486225 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeOffsetPointXY_H_ +#define _NodeOffsetPointXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-XY-20b.h" +#include "Node-XY-22b.h" +#include "Node-XY-24b.h" +#include "Node-XY-26b.h" +#include "Node-XY-28b.h" +#include "Node-XY-32b.h" +#include "Node-LLmD-64b.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointXY_PR { + NodeOffsetPointXY_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_PR_node_XY1, + NodeOffsetPointXY_PR_node_XY2, + NodeOffsetPointXY_PR_node_XY3, + NodeOffsetPointXY_PR_node_XY4, + NodeOffsetPointXY_PR_node_XY5, + NodeOffsetPointXY_PR_node_XY6, + NodeOffsetPointXY_PR_node_LatLon, + NodeOffsetPointXY_PR_regional +} NodeOffsetPointXY_PR; + +/* NodeOffsetPointXY */ +typedef struct NodeOffsetPointXY { + NodeOffsetPointXY_PR present; + union NodeOffsetPointXY_u { + Node_XY_20b_t node_XY1; + Node_XY_22b_t node_XY2; + Node_XY_24b_t node_XY3; + Node_XY_26b_t node_XY4; + Node_XY_28b_t node_XY5; + Node_XY_32b_t node_XY6; + Node_LLmD_64b_t node_LatLon; + Reg_NodeOffsetPointXY_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h new file mode 100644 index 000000000..023d2252d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeSetLL_H_ +#define _NodeSetLL_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 NodeLL; + +/* NodeSetLL */ +typedef struct NodeSetLL { + A_SEQUENCE_OF(struct NodeLL) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetLL; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h new file mode 100644 index 000000000..5d1c49c49 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeSetXY_H_ +#define _NodeSetXY_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 NodeXY; + +/* NodeSetXY */ +typedef struct NodeSetXY { + A_SEQUENCE_OF(struct NodeXY) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetXY; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetXY_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h new file mode 100644 index 000000000..164e75a84 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NodeXY_H_ +#define _NodeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetXY; + +/* NodeXY */ +typedef struct NodeXY { + NodeOffsetPointXY_t delta; + struct NodeAttributeSetXY *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeXY_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h new file mode 100644 index 000000000..81e0bda68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _NumberOfParticipantsInCluster_H_ +#define _NumberOfParticipantsInCluster_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NumberOfParticipantsInCluster { + NumberOfParticipantsInCluster_unavailable = 0, + NumberOfParticipantsInCluster_small = 1, + NumberOfParticipantsInCluster_medium = 2, + NumberOfParticipantsInCluster_large = 3 + /* + * Enumeration is extensible + */ +} e_NumberOfParticipantsInCluster; + +/* NumberOfParticipantsInCluster */ +typedef long NumberOfParticipantsInCluster_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; +extern const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1; +asn_struct_free_f NumberOfParticipantsInCluster_free; +asn_struct_print_f NumberOfParticipantsInCluster_print; +asn_constr_check_f NumberOfParticipantsInCluster_constraint; +ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; +der_type_encoder_f NumberOfParticipantsInCluster_encode_der; +xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; +xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; +jer_type_encoder_f NumberOfParticipantsInCluster_encode_jer; +oer_type_decoder_f NumberOfParticipantsInCluster_decode_oer; +oer_type_encoder_f NumberOfParticipantsInCluster_encode_oer; +per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; +per_type_decoder_f NumberOfParticipantsInCluster_decode_aper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NumberOfParticipantsInCluster_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h new file mode 100644 index 000000000..f878055c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OBJECT_IDENTIFIER_H_ +#define _OBJECT_IDENTIFIER_H_ + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef uint32_t asn_oid_arc_t; +#define ASN_OID_ARC_MAX (~((asn_oid_arc_t)0)) + +typedef ASN__PRIMITIVE_TYPE_t OBJECT_IDENTIFIER_t; + +extern asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER; +extern asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER; + +ssize_t OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, + asn_app_consume_bytes_f *cb, + void *app_key); + +#define OBJECT_IDENTIFIER_free ASN__PRIMITIVE_TYPE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f OBJECT_IDENTIFIER_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define OBJECT_IDENTIFIER_compare OCTET_STRING_compare + +asn_constr_check_f OBJECT_IDENTIFIER_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_ber ber_decode_primitive +#define OBJECT_IDENTIFIER_encode_der der_encode_primitive +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f OBJECT_IDENTIFIER_decode_xer; +xer_type_encoder_f OBJECT_IDENTIFIER_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f OBJECT_IDENTIFIER_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_oer oer_decode_primitive +#define OBJECT_IDENTIFIER_encode_oer oer_encode_primitive +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_uper OCTET_STRING_decode_uper +#define OBJECT_IDENTIFIER_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_aper OCTET_STRING_decode_aper +#define OBJECT_IDENTIFIER_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f OBJECT_IDENTIFIER_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +/********************************** + * Some handy conversion routines * + **********************************/ + +/* + * This function fills an (arcs) array with OBJECT IDENTIFIER arcs + * up to specified (arc_slots) elements. + * + * EXAMPLE: + * void print_arcs(OBJECT_IDENTIFIER_t *oid) { + * asn_oid_arc_t fixed_arcs[10]; // Try with fixed space first + * asn_oid_arc_t *arcs = fixed_arcs; + * size_t arc_slots = sizeof(fixed_arcs)/sizeof(fixed_arcs[0]); // 10 + * ssize_t count; // Real number of arcs. + * int i; + * + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * // If necessary, reallocate arcs array and try again. + * if(count > arc_slots) { + * arc_slots = count; + * arcs = malloc(sizeof(asn_oid_arc_t) * arc_slots); + * if(!arcs) return; + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * assert(count == arc_slots); + * } + * + * // Print the contents of the arcs array. + * for(i = 0; i < count; i++) + * printf("%"PRIu32"\n", arcs[i]); + * + * // Avoid memory leak. + * if(arcs != fixed_arcs) free(arcs); + * } + * + * RETURN VALUES: + * -1/EINVAL: Invalid arguments (oid is missing) + * -1/ERANGE: One or more arcs have value out of array cell type range. + * >=0: Number of arcs contained in the OBJECT IDENTIFIER + * + * WARNING: The function always returns the actual number of arcs, + * even if there is no sufficient (arc_slots) provided. + */ +ssize_t OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *oid, + asn_oid_arc_t *arcs, size_t arc_slots); + +/* + * This functions initializes the OBJECT IDENTIFIER object with + * the given set of arcs. + * The minimum of two arcs must be present; some restrictions apply. + * RETURN VALUES: + * -1/EINVAL: Invalid arguments + * -1/ERANGE: The first two arcs do not conform to ASN.1 restrictions. + * -1/ENOMEM: Memory allocation failed + * 0: The object was initialized with new arcs. + */ +int OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, + const asn_oid_arc_t *arcs, size_t arcs_count); + + +/* + * Parse the OBJECT IDENTIFIER textual representation ("1.3.6.1.4.1.9363"). + * No arc can exceed the (0..ASN_OID_ARC_MAX, which is the same as UINT32_MAX). + * This function is not specific to OBJECT IDENTIFIER, it may be used to parse + * the RELATIVE-OID data, or any other data consisting of dot-separated + * series of numeric values. + * + * If (oid_txt_length == -1), the strlen() will be invoked to determine the + * size of the (oid_text) string. + * + * After return, the optional (opt_oid_text_end) is set to the character after + * the last parsed one. (opt_oid_text_end) is never less than (oid_text). + * + * RETURN VALUES: + * -1: Parse error. + * >= 0: Number of arcs contained in the OBJECT IDENTIFIER. + * + * WARNING: The function always returns the real number of arcs, + * even if there is no sufficient (arc_slots) provided. + * This is useful for (arc_slots) value estimation. + */ +ssize_t OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, + ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end); + +/* + * Internal functions. + * Used by RELATIVE-OID implementation in particular. + */ + +/* + * Retrieve a single arc of size from the (arcbuf) buffer. + * RETURN VALUES: + * -1: Failed to retrieve the value from the (arcbuf). + * >0: Number of bytes consumed from the (arcbuf), <= (arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, + size_t arcbuf_len, + asn_oid_arc_t *ret_value); + +/* + * Write the unterminated arc value into the (arcbuf) which has the size at + * least (arcbuf_len). + * RETURN VALUES: + * -1: (arcbuf_len) size is not sufficient to write the value. + * : Number of bytes appended to the arcbuf (<= arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t arc_value); + +#ifdef __cplusplus +} +#endif + +#endif /* _OBJECT_IDENTIFIER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h new file mode 100644 index 000000000..b1ace1409 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h @@ -0,0 +1,165 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OCTET_STRING_H_ +#define _OCTET_STRING_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct OCTET_STRING { + uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ + size_t size; /* Size of the buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} OCTET_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; +extern asn_TYPE_operation_t asn_OP_OCTET_STRING; + +asn_struct_free_f OCTET_STRING_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f OCTET_STRING_print; +asn_struct_print_f OCTET_STRING_print_utf8; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f OCTET_STRING_compare; + +#define OCTET_STRING_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f OCTET_STRING_decode_ber; +der_type_encoder_f OCTET_STRING_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ +xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ +xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ +xer_type_encoder_f OCTET_STRING_encode_xer; +xer_type_encoder_f OCTET_STRING_encode_xer_utf8; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f OCTET_STRING_encode_jer; +jer_type_encoder_f OCTET_STRING_encode_jer_utf8; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f OCTET_STRING_decode_oer; +oer_type_encoder_f OCTET_STRING_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f OCTET_STRING_decode_uper; +per_type_encoder_f OCTET_STRING_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f OCTET_STRING_decode_aper; +per_type_encoder_f OCTET_STRING_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f OCTET_STRING_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int OCTET_STRING_per_get_characters( + asn_per_data_t *po, + uint8_t *buf, + size_t units, + unsigned int bpc, + unsigned int unit_bits, + long lb, + long ub, + const asn_per_constraints_t *pc); + +int OCTET_STRING_per_put_characters( + asn_per_outp_t *po, + const uint8_t *buf, + size_t units, + unsigned int bpc, + unsigned int unit_bits, + long lb, + long ub, + const asn_per_constraints_t *pc); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +/****************************** + * Handy conversion routines. * + ******************************/ + +/* + * This function clears the previous value of the OCTET STRING (if any) + * and then allocates a new memory with the specified content (str/size). + * If size = -1, the size of the original string will be determined + * using strlen(str). + * If str equals to NULL, the function will silently clear the + * current contents of the OCTET STRING. + * Returns 0 if it was possible to perform operation, -1 otherwise. + */ +int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); + +/* Handy conversion from the C string into the OCTET STRING. */ +#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) + +/* + * Allocate and fill the new OCTET STRING and return a pointer to the newly + * allocated object. NULL is permitted in str: the function will just allocate + * empty OCTET STRING. + */ +OCTET_STRING_t *OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, + const char *str, int size); + +/**************************** + * Internally useful stuff. * + ****************************/ + +typedef struct asn_OCTET_STRING_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the structure */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + enum asn_OS_Subvariant { + ASN_OSUBV_ANY, /* The open type (ANY) */ + ASN_OSUBV_BIT, /* BIT STRING */ + ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ + ASN_OSUBV_U16, /* 16-bit character (BMPString) */ + ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ + } subvariant; +} asn_OCTET_STRING_specifics_t; + +extern asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs; + +size_t OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *, const asn_encoding_constraints_t *, + size_t max_length); + +#if !defined(ASN_DISABLE_BER_SUPPORT) +struct _stack_el { + ber_tlv_len_t left; /* What's left to read (or -1) */ + ber_tlv_len_t got; /* What was actually processed */ + unsigned cont_level; /* Depth of subcontainment */ + int want_nulls; /* Want null "end of content" octets? */ + int bits_chopped; /* Flag in BIT STRING mode */ + ber_tlv_tag_t tag; /* For debugging purposes */ + struct _stack_el *prev; + struct _stack_el *next; +}; +struct _stack { + struct _stack_el *tail; + struct _stack_el *cur_ptr; +}; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h new file mode 100644 index 000000000..5e979773e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h @@ -0,0 +1,117 @@ +/*- + * Copyright (c) 2017-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_OPEN_TYPE_H +#define ASN_OPEN_TYPE_H + +#include +///////////#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Decode an Open Type which is potentially constraiend + * by the other members of the parent structure. + */ + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#define OPEN_TYPE_free CHOICE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define OPEN_TYPE_print CHOICE_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define OPEN_TYPE_compare CHOICE_compare + +#define OPEN_TYPE_constraint CHOICE_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_ber_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); +#define OPEN_TYPE_decode_ber NULL +#define OPEN_TYPE_encode_der CHOICE_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_xer_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); +#define OPEN_TYPE_decode_xer NULL +#define OPEN_TYPE_encode_xer CHOICE_encode_xer +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define OPEN_TYPE_encode_jer CHOICE_encode_jer +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_oer_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + asn_TYPE_member_t *element, const void *ptr, + size_t size); +#define OPEN_TYPE_decode_oer NULL +#define OPEN_TYPE_encode_oer CHOICE_encode_oer +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_uper_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); +#define OPEN_TYPE_decode_uper NULL +asn_enc_rval_t OPEN_TYPE_encode_uper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_aper_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); +#define OPEN_TYPE_decode_aper NULL +asn_enc_rval_t OPEN_TYPE_encode_aper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +int OPEN_TYPE_aper_is_unknown_type( + const asn_TYPE_descriptor_t *td, + void *sptr, + const asn_TYPE_member_t *elm); + +asn_dec_rval_t OPEN_TYPE_aper_unknown_type_discard_bytes( + asn_per_data_t *pd); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_OPEN_TYPE; + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_OPEN_TYPE_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h new file mode 100644 index 000000000..ca03080ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ObjectCount_H_ +#define _ObjectCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectCount */ +typedef long ObjectCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; +asn_struct_free_f ObjectCount_free; +asn_struct_print_f ObjectCount_print; +asn_constr_check_f ObjectCount_constraint; +ber_type_decoder_f ObjectCount_decode_ber; +der_type_encoder_f ObjectCount_encode_der; +xer_type_decoder_f ObjectCount_decode_xer; +xer_type_encoder_f ObjectCount_encode_xer; +jer_type_encoder_f ObjectCount_encode_jer; +oer_type_decoder_f ObjectCount_decode_oer; +oer_type_encoder_f ObjectCount_encode_oer; +per_type_decoder_f ObjectCount_decode_uper; +per_type_encoder_f ObjectCount_encode_uper; +per_type_decoder_f ObjectCount_decode_aper; +per_type_encoder_f ObjectCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h new file mode 100644 index 000000000..852c45d03 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h @@ -0,0 +1,54 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ObjectDescriptor_H_ +#define _ObjectDescriptor_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef GraphicString_t ObjectDescriptor_t; /* Implemented via GraphicString */ + +extern asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor; +extern asn_TYPE_operation_t asn_OP_ObjectDescriptor; + +#define ObjectDescriptor_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define ObjectDescriptor_print OCTET_STRING_print_utf8 +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define ObjectDescriptor_constraint asn_generic_unknown_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define ObjectDescriptor_decode_ber OCTET_STRING_decode_ber +#define ObjectDescriptor_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define ObjectDescriptor_decode_xer OCTET_STRING_decode_xer_utf8 +#define ObjectDescriptor_encode_xer OCTET_STRING_encode_xer_utf8 +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define ObjectDescriptor_encode_jer OCTET_STRING_encode_jer_utf8 +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define ObjectDescriptor_decode_uper OCTET_STRING_decode_uper +#define ObjectDescriptor_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define ObjectDescriptor_decode_aper OCTET_STRING_decode_aper +#define ObjectDescriptor_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectDescriptor_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h new file mode 100644 index 000000000..c1f82ec7e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ObstacleDetection_H_ +#define _ObstacleDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ObstacleDistance.h" +#include "ObstacleDirection.h" +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "DDateTime.h" +#include "VerticalAccelerationThreshold.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDetection */ +typedef struct ObstacleDetection { + ObstacleDistance_t obDist; + ObstacleDirection_t obDirect; + ITIScodes_t *description; /* OPTIONAL */ + GenericLocations_t *locationDetails; /* OPTIONAL */ + DDateTime_t dateTime; + VerticalAccelerationThreshold_t *vertEvent; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleDetection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDetection; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleDetection_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h new file mode 100644 index 000000000..607fd2f8a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ObstacleDirection_H_ +#define _ObstacleDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_Angle.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDirection */ +typedef Common_Angle_t ObstacleDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; +asn_struct_free_f ObstacleDirection_free; +asn_struct_print_f ObstacleDirection_print; +asn_constr_check_f ObstacleDirection_constraint; +ber_type_decoder_f ObstacleDirection_decode_ber; +der_type_encoder_f ObstacleDirection_encode_der; +xer_type_decoder_f ObstacleDirection_decode_xer; +xer_type_encoder_f ObstacleDirection_encode_xer; +jer_type_encoder_f ObstacleDirection_encode_jer; +oer_type_decoder_f ObstacleDirection_decode_oer; +oer_type_encoder_f ObstacleDirection_encode_oer; +per_type_decoder_f ObstacleDirection_decode_uper; +per_type_encoder_f ObstacleDirection_encode_uper; +per_type_decoder_f ObstacleDirection_decode_aper; +per_type_encoder_f ObstacleDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h new file mode 100644 index 000000000..64a7727a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ObstacleDistance_H_ +#define _ObstacleDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDistance */ +typedef long ObstacleDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; +asn_struct_free_f ObstacleDistance_free; +asn_struct_print_f ObstacleDistance_print; +asn_constr_check_f ObstacleDistance_constraint; +ber_type_decoder_f ObstacleDistance_decode_ber; +der_type_encoder_f ObstacleDistance_encode_der; +xer_type_decoder_f ObstacleDistance_decode_xer; +xer_type_encoder_f ObstacleDistance_encode_xer; +jer_type_encoder_f ObstacleDistance_encode_jer; +oer_type_decoder_f ObstacleDistance_decode_oer; +oer_type_encoder_f ObstacleDistance_encode_oer; +per_type_decoder_f ObstacleDistance_decode_uper; +per_type_encoder_f ObstacleDistance_encode_uper; +per_type_decoder_f ObstacleDistance_decode_aper; +per_type_encoder_f ObstacleDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h new file mode 100644 index 000000000..a2a931cb8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B09_H_ +#define _Offset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B09 */ +typedef long Offset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B09; +asn_struct_free_f Offset_B09_free; +asn_struct_print_f Offset_B09_print; +asn_constr_check_f Offset_B09_constraint; +ber_type_decoder_f Offset_B09_decode_ber; +der_type_encoder_f Offset_B09_encode_der; +xer_type_decoder_f Offset_B09_decode_xer; +xer_type_encoder_f Offset_B09_encode_xer; +jer_type_encoder_f Offset_B09_encode_jer; +oer_type_decoder_f Offset_B09_decode_oer; +oer_type_encoder_f Offset_B09_encode_oer; +per_type_decoder_f Offset_B09_decode_uper; +per_type_encoder_f Offset_B09_encode_uper; +per_type_decoder_f Offset_B09_decode_aper; +per_type_encoder_f Offset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h new file mode 100644 index 000000000..41c195daf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B10_H_ +#define _Offset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B10 */ +typedef long Offset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; +asn_struct_free_f Offset_B10_free; +asn_struct_print_f Offset_B10_print; +asn_constr_check_f Offset_B10_constraint; +ber_type_decoder_f Offset_B10_decode_ber; +der_type_encoder_f Offset_B10_encode_der; +xer_type_decoder_f Offset_B10_decode_xer; +xer_type_encoder_f Offset_B10_encode_xer; +jer_type_encoder_f Offset_B10_encode_jer; +oer_type_decoder_f Offset_B10_decode_oer; +oer_type_encoder_f Offset_B10_encode_oer; +per_type_decoder_f Offset_B10_decode_uper; +per_type_encoder_f Offset_B10_encode_uper; +per_type_decoder_f Offset_B10_decode_aper; +per_type_encoder_f Offset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h new file mode 100644 index 000000000..d848a87d2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B11_H_ +#define _Offset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B11 */ +typedef long Offset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; +asn_struct_free_f Offset_B11_free; +asn_struct_print_f Offset_B11_print; +asn_constr_check_f Offset_B11_constraint; +ber_type_decoder_f Offset_B11_decode_ber; +der_type_encoder_f Offset_B11_encode_der; +xer_type_decoder_f Offset_B11_decode_xer; +xer_type_encoder_f Offset_B11_encode_xer; +jer_type_encoder_f Offset_B11_encode_jer; +oer_type_decoder_f Offset_B11_decode_oer; +oer_type_encoder_f Offset_B11_encode_oer; +per_type_decoder_f Offset_B11_decode_uper; +per_type_encoder_f Offset_B11_encode_uper; +per_type_decoder_f Offset_B11_decode_aper; +per_type_encoder_f Offset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h new file mode 100644 index 000000000..7452b84d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B12_H_ +#define _Offset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B12 */ +typedef long Offset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; +asn_struct_free_f Offset_B12_free; +asn_struct_print_f Offset_B12_print; +asn_constr_check_f Offset_B12_constraint; +ber_type_decoder_f Offset_B12_decode_ber; +der_type_encoder_f Offset_B12_encode_der; +xer_type_decoder_f Offset_B12_decode_xer; +xer_type_encoder_f Offset_B12_encode_xer; +jer_type_encoder_f Offset_B12_encode_jer; +oer_type_decoder_f Offset_B12_decode_oer; +oer_type_encoder_f Offset_B12_encode_oer; +per_type_decoder_f Offset_B12_decode_uper; +per_type_encoder_f Offset_B12_encode_uper; +per_type_decoder_f Offset_B12_decode_aper; +per_type_encoder_f Offset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h new file mode 100644 index 000000000..aea3d4dc7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B13_H_ +#define _Offset_B13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B13 */ +typedef long Offset_B13_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B13_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; +asn_struct_free_f Offset_B13_free; +asn_struct_print_f Offset_B13_print; +asn_constr_check_f Offset_B13_constraint; +ber_type_decoder_f Offset_B13_decode_ber; +der_type_encoder_f Offset_B13_encode_der; +xer_type_decoder_f Offset_B13_decode_xer; +xer_type_encoder_f Offset_B13_encode_xer; +jer_type_encoder_f Offset_B13_encode_jer; +oer_type_decoder_f Offset_B13_decode_oer; +oer_type_encoder_f Offset_B13_encode_oer; +per_type_decoder_f Offset_B13_decode_uper; +per_type_encoder_f Offset_B13_encode_uper; +per_type_decoder_f Offset_B13_decode_aper; +per_type_encoder_f Offset_B13_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h new file mode 100644 index 000000000..4374add10 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B14_H_ +#define _Offset_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B14 */ +typedef long Offset_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; +asn_struct_free_f Offset_B14_free; +asn_struct_print_f Offset_B14_print; +asn_constr_check_f Offset_B14_constraint; +ber_type_decoder_f Offset_B14_decode_ber; +der_type_encoder_f Offset_B14_encode_der; +xer_type_decoder_f Offset_B14_decode_xer; +xer_type_encoder_f Offset_B14_encode_xer; +jer_type_encoder_f Offset_B14_encode_jer; +oer_type_decoder_f Offset_B14_decode_oer; +oer_type_encoder_f Offset_B14_encode_oer; +per_type_decoder_f Offset_B14_decode_uper; +per_type_encoder_f Offset_B14_encode_uper; +per_type_decoder_f Offset_B14_decode_aper; +per_type_encoder_f Offset_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h new file mode 100644 index 000000000..e5b490ae3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Offset_B16_H_ +#define _Offset_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B16 */ +typedef long Offset_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; +asn_struct_free_f Offset_B16_free; +asn_struct_print_f Offset_B16_print; +asn_constr_check_f Offset_B16_constraint; +ber_type_decoder_f Offset_B16_decode_ber; +der_type_encoder_f Offset_B16_encode_der; +xer_type_decoder_f Offset_B16_decode_xer; +xer_type_encoder_f Offset_B16_encode_xer; +jer_type_encoder_f Offset_B16_encode_jer; +oer_type_decoder_f Offset_B16_decode_oer; +oer_type_encoder_f Offset_B16_encode_oer; +per_type_decoder_f Offset_B16_decode_uper; +per_type_encoder_f Offset_B16_encode_uper; +per_type_decoder_f Offset_B16_decode_aper; +per_type_encoder_f Offset_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h new file mode 100644 index 000000000..c556ad938 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B12_H_ +#define _OffsetLL_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B12 */ +typedef long OffsetLL_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12; +asn_struct_free_f OffsetLL_B12_free; +asn_struct_print_f OffsetLL_B12_print; +asn_constr_check_f OffsetLL_B12_constraint; +ber_type_decoder_f OffsetLL_B12_decode_ber; +der_type_encoder_f OffsetLL_B12_encode_der; +xer_type_decoder_f OffsetLL_B12_decode_xer; +xer_type_encoder_f OffsetLL_B12_encode_xer; +jer_type_encoder_f OffsetLL_B12_encode_jer; +oer_type_decoder_f OffsetLL_B12_decode_oer; +oer_type_encoder_f OffsetLL_B12_encode_oer; +per_type_decoder_f OffsetLL_B12_decode_uper; +per_type_encoder_f OffsetLL_B12_encode_uper; +per_type_decoder_f OffsetLL_B12_decode_aper; +per_type_encoder_f OffsetLL_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h new file mode 100644 index 000000000..a3b4d197f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B14_H_ +#define _OffsetLL_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B14 */ +typedef long OffsetLL_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14; +asn_struct_free_f OffsetLL_B14_free; +asn_struct_print_f OffsetLL_B14_print; +asn_constr_check_f OffsetLL_B14_constraint; +ber_type_decoder_f OffsetLL_B14_decode_ber; +der_type_encoder_f OffsetLL_B14_encode_der; +xer_type_decoder_f OffsetLL_B14_decode_xer; +xer_type_encoder_f OffsetLL_B14_encode_xer; +jer_type_encoder_f OffsetLL_B14_encode_jer; +oer_type_decoder_f OffsetLL_B14_decode_oer; +oer_type_encoder_f OffsetLL_B14_encode_oer; +per_type_decoder_f OffsetLL_B14_decode_uper; +per_type_encoder_f OffsetLL_B14_encode_uper; +per_type_decoder_f OffsetLL_B14_decode_aper; +per_type_encoder_f OffsetLL_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h new file mode 100644 index 000000000..5204b288a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B16_H_ +#define _OffsetLL_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B16 */ +typedef long OffsetLL_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16; +asn_struct_free_f OffsetLL_B16_free; +asn_struct_print_f OffsetLL_B16_print; +asn_constr_check_f OffsetLL_B16_constraint; +ber_type_decoder_f OffsetLL_B16_decode_ber; +der_type_encoder_f OffsetLL_B16_encode_der; +xer_type_decoder_f OffsetLL_B16_decode_xer; +xer_type_encoder_f OffsetLL_B16_encode_xer; +jer_type_encoder_f OffsetLL_B16_encode_jer; +oer_type_decoder_f OffsetLL_B16_decode_oer; +oer_type_encoder_f OffsetLL_B16_encode_oer; +per_type_decoder_f OffsetLL_B16_decode_uper; +per_type_encoder_f OffsetLL_B16_encode_uper; +per_type_decoder_f OffsetLL_B16_decode_aper; +per_type_encoder_f OffsetLL_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h new file mode 100644 index 000000000..f973847ce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B18_H_ +#define _OffsetLL_B18_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B18 */ +typedef long OffsetLL_B18_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18; +asn_struct_free_f OffsetLL_B18_free; +asn_struct_print_f OffsetLL_B18_print; +asn_constr_check_f OffsetLL_B18_constraint; +ber_type_decoder_f OffsetLL_B18_decode_ber; +der_type_encoder_f OffsetLL_B18_encode_der; +xer_type_decoder_f OffsetLL_B18_decode_xer; +xer_type_encoder_f OffsetLL_B18_encode_xer; +jer_type_encoder_f OffsetLL_B18_encode_jer; +oer_type_decoder_f OffsetLL_B18_decode_oer; +oer_type_encoder_f OffsetLL_B18_encode_oer; +per_type_decoder_f OffsetLL_B18_decode_uper; +per_type_encoder_f OffsetLL_B18_encode_uper; +per_type_decoder_f OffsetLL_B18_decode_aper; +per_type_encoder_f OffsetLL_B18_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B18_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h new file mode 100644 index 000000000..aca729929 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B22_H_ +#define _OffsetLL_B22_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B22 */ +typedef long OffsetLL_B22_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22; +asn_struct_free_f OffsetLL_B22_free; +asn_struct_print_f OffsetLL_B22_print; +asn_constr_check_f OffsetLL_B22_constraint; +ber_type_decoder_f OffsetLL_B22_decode_ber; +der_type_encoder_f OffsetLL_B22_encode_der; +xer_type_decoder_f OffsetLL_B22_decode_xer; +xer_type_encoder_f OffsetLL_B22_encode_xer; +jer_type_encoder_f OffsetLL_B22_encode_jer; +oer_type_decoder_f OffsetLL_B22_decode_oer; +oer_type_encoder_f OffsetLL_B22_encode_oer; +per_type_decoder_f OffsetLL_B22_decode_uper; +per_type_encoder_f OffsetLL_B22_encode_uper; +per_type_decoder_f OffsetLL_B22_decode_aper; +per_type_encoder_f OffsetLL_B22_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B22_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h new file mode 100644 index 000000000..486fbc757 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetLL_B24_H_ +#define _OffsetLL_B24_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B24 */ +typedef long OffsetLL_B24_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24; +asn_struct_free_f OffsetLL_B24_free; +asn_struct_print_f OffsetLL_B24_print; +asn_constr_check_f OffsetLL_B24_constraint; +ber_type_decoder_f OffsetLL_B24_decode_ber; +der_type_encoder_f OffsetLL_B24_encode_der; +xer_type_decoder_f OffsetLL_B24_decode_xer; +xer_type_encoder_f OffsetLL_B24_encode_xer; +jer_type_encoder_f OffsetLL_B24_encode_jer; +oer_type_decoder_f OffsetLL_B24_decode_oer; +oer_type_encoder_f OffsetLL_B24_encode_oer; +per_type_decoder_f OffsetLL_B24_decode_uper; +per_type_encoder_f OffsetLL_B24_encode_uper; +per_type_decoder_f OffsetLL_B24_decode_aper; +per_type_encoder_f OffsetLL_B24_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B24_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h new file mode 100644 index 000000000..b1bcc6b86 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OffsetSystem_H_ +#define _OffsetSystem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "NodeListXY.h" +#include "NodeListLL.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum OffsetSystem__offset_PR { + OffsetSystem__offset_PR_NOTHING, /* No components present */ + OffsetSystem__offset_PR_xy, + OffsetSystem__offset_PR_ll +} OffsetSystem__offset_PR; + +/* OffsetSystem */ +typedef struct OffsetSystem { + Zoom_t *scale; /* OPTIONAL */ + struct OffsetSystem__offset { + OffsetSystem__offset_PR present; + union OffsetSystem__offset_u { + NodeListXY_t xy; + NodeListLL_t ll; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offset; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OffsetSystem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OffsetSystem; +extern asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1; +extern asn_TYPE_member_t asn_MBR_OffsetSystem_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetSystem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h new file mode 100644 index 000000000..b03fc5ccb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _OverlayLaneList_H_ +#define _OverlayLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OverlayLaneList */ +typedef struct OverlayLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OverlayLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; +extern asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_OverlayLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _OverlayLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h new file mode 100644 index 000000000..ebbe64ea4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PartII_Id_H_ +#define _PartII_Id_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PartII-Id */ +typedef long PartII_Id_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PartII_Id_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PartII_Id; +asn_struct_free_f PartII_Id_free; +asn_struct_print_f PartII_Id_print; +asn_constr_check_f PartII_Id_constraint; +ber_type_decoder_f PartII_Id_decode_ber; +der_type_encoder_f PartII_Id_encode_der; +xer_type_decoder_f PartII_Id_decode_xer; +xer_type_encoder_f PartII_Id_encode_xer; +jer_type_encoder_f PartII_Id_encode_jer; +oer_type_decoder_f PartII_Id_decode_oer; +oer_type_encoder_f PartII_Id_encode_oer; +per_type_decoder_f PartII_Id_decode_uper; +per_type_encoder_f PartII_Id_encode_uper; +per_type_decoder_f PartII_Id_decode_aper; +per_type_encoder_f PartII_Id_encode_aper; +#define PartII_Id_vehicleSafetyExt ((PartII_Id_t)0) +#define PartII_Id_specialVehicleExt ((PartII_Id_t)1) +#define PartII_Id_supplementalVehicleExt ((PartII_Id_t)2) + +#ifdef __cplusplus +} +#endif + +#endif /* _PartII_Id_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h new file mode 100644 index 000000000..40ede0c9b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PartIIcontent_H_ +#define _PartIIcontent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PartII-Id.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "VehicleSafetyExtensions.h" +#include "SpecialVehicleExtensions.h" +#include "SupplementalVehicleExtensions.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BSMpartIIExtension__partII_Value_PR { + BSMpartIIExtension__partII_Value_PR_NOTHING, /* No components present */ + BSMpartIIExtension__partII_Value_PR_VehicleSafetyExtensions, + BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions, + BSMpartIIExtension__partII_Value_PR_SupplementalVehicleExtensions +} BSMpartIIExtension__partII_Value_PR; + +/* PartIIcontent */ +typedef struct BSMpartIIExtension { + PartII_Id_t partII_Id; + struct BSMpartIIExtension__partII_Value { + BSMpartIIExtension__partII_Value_PR present; + union BSMpartIIExtension__partII_Value_u { + VehicleSafetyExtensions_t VehicleSafetyExtensions; + SpecialVehicleExtensions_t SpecialVehicleExtensions; + SupplementalVehicleExtensions_t SupplementalVehicleExtensions; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } partII_Value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMpartIIExtension_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PartIIcontent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h new file mode 100644 index 000000000..074a39b8f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PathHistory_H_ +#define _PathHistory_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "PathHistoryPointList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; + +/* PathHistory */ +typedef struct PathHistory { + struct FullPositionVector *initialPosition; /* OPTIONAL */ + GNSSstatus_t *currGNSSstatus; /* OPTIONAL */ + PathHistoryPointList_t crumbData; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistory_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistory; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistory_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistory_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h new file mode 100644 index 000000000..7d2fa7fad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PathHistoryPoint_H_ +#define _PathHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "VertOffset-B12.h" +#include "TimeOffset.h" +#include "Speed.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PositionalAccuracy; + +/* PathHistoryPoint */ +typedef struct PathHistoryPoint { + OffsetLL_B18_t latOffset; + OffsetLL_B18_t lonOffset; + VertOffset_B12_t elevationOffset; + TimeOffset_t timeOffset; + Speed_t *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h new file mode 100644 index 000000000..f389a5c4c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PathHistoryPointList_H_ +#define _PathHistoryPointList_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 PathHistoryPoint; + +/* PathHistoryPointList */ +typedef struct PathHistoryPointList { + A_SEQUENCE_OF(struct PathHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h new file mode 100644 index 000000000..e427042c1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PathPrediction_H_ +#define _PathPrediction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RadiusOfCurvature.h" +#include "Confidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathPrediction */ +typedef struct PathPrediction { + RadiusOfCurvature_t radiusOfCurve; + Confidence_t confidence; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathPrediction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; +extern asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1; +extern asn_TYPE_member_t asn_MBR_PathPrediction_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathPrediction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h new file mode 100644 index 000000000..d4ae0f597 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PayloadData_H_ +#define _PayloadData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PayloadData */ +typedef OCTET_STRING_t PayloadData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PayloadData; +asn_struct_free_f PayloadData_free; +asn_struct_print_f PayloadData_print; +asn_constr_check_f PayloadData_constraint; +ber_type_decoder_f PayloadData_decode_ber; +der_type_encoder_f PayloadData_encode_der; +xer_type_decoder_f PayloadData_decode_xer; +xer_type_encoder_f PayloadData_encode_xer; +jer_type_encoder_f PayloadData_encode_jer; +oer_type_decoder_f PayloadData_decode_oer; +oer_type_encoder_f PayloadData_encode_oer; +per_type_decoder_f PayloadData_decode_uper; +per_type_encoder_f PayloadData_encode_uper; +per_type_decoder_f PayloadData_decode_aper; +per_type_encoder_f PayloadData_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PayloadData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h new file mode 100644 index 000000000..29c1f0104 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PedestrianBicycleDetect_H_ +#define _PedestrianBicycleDetect_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PedestrianBicycleDetect */ +typedef BOOLEAN_t PedestrianBicycleDetect_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; +asn_struct_free_f PedestrianBicycleDetect_free; +asn_struct_print_f PedestrianBicycleDetect_print; +asn_constr_check_f PedestrianBicycleDetect_constraint; +ber_type_decoder_f PedestrianBicycleDetect_decode_ber; +der_type_encoder_f PedestrianBicycleDetect_encode_der; +xer_type_decoder_f PedestrianBicycleDetect_decode_xer; +xer_type_encoder_f PedestrianBicycleDetect_encode_xer; +jer_type_encoder_f PedestrianBicycleDetect_encode_jer; +oer_type_decoder_f PedestrianBicycleDetect_decode_oer; +oer_type_encoder_f PedestrianBicycleDetect_encode_oer; +per_type_decoder_f PedestrianBicycleDetect_decode_uper; +per_type_encoder_f PedestrianBicycleDetect_encode_uper; +per_type_decoder_f PedestrianBicycleDetect_decode_aper; +per_type_encoder_f PedestrianBicycleDetect_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PedestrianBicycleDetect_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h new file mode 100644 index 000000000..5946fba2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalAssistive_H_ +#define _PersonalAssistive_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalAssistive { + PersonalAssistive_unavailable = 0, + PersonalAssistive_otherType = 1, + PersonalAssistive_vision = 2, + PersonalAssistive_hearing = 3, + PersonalAssistive_movement = 4, + PersonalAssistive_cognition = 5 +} e_PersonalAssistive; + +/* PersonalAssistive */ +typedef BIT_STRING_t PersonalAssistive_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; +asn_struct_free_f PersonalAssistive_free; +asn_struct_print_f PersonalAssistive_print; +asn_constr_check_f PersonalAssistive_constraint; +ber_type_decoder_f PersonalAssistive_decode_ber; +der_type_encoder_f PersonalAssistive_encode_der; +xer_type_decoder_f PersonalAssistive_decode_xer; +xer_type_encoder_f PersonalAssistive_encode_xer; +jer_type_encoder_f PersonalAssistive_encode_jer; +oer_type_decoder_f PersonalAssistive_decode_oer; +oer_type_encoder_f PersonalAssistive_encode_oer; +per_type_decoder_f PersonalAssistive_decode_uper; +per_type_encoder_f PersonalAssistive_encode_uper; +per_type_decoder_f PersonalAssistive_decode_aper; +per_type_encoder_f PersonalAssistive_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalAssistive_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h new file mode 100644 index 000000000..f0ea600bc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalClusterRadius_H_ +#define _PersonalClusterRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalClusterRadius */ +typedef long PersonalClusterRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; +asn_struct_free_f PersonalClusterRadius_free; +asn_struct_print_f PersonalClusterRadius_print; +asn_constr_check_f PersonalClusterRadius_constraint; +ber_type_decoder_f PersonalClusterRadius_decode_ber; +der_type_encoder_f PersonalClusterRadius_encode_der; +xer_type_decoder_f PersonalClusterRadius_decode_xer; +xer_type_encoder_f PersonalClusterRadius_encode_xer; +jer_type_encoder_f PersonalClusterRadius_encode_jer; +oer_type_decoder_f PersonalClusterRadius_decode_oer; +oer_type_encoder_f PersonalClusterRadius_encode_oer; +per_type_decoder_f PersonalClusterRadius_decode_uper; +per_type_encoder_f PersonalClusterRadius_encode_uper; +per_type_decoder_f PersonalClusterRadius_decode_aper; +per_type_encoder_f PersonalClusterRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalClusterRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h new file mode 100644 index 000000000..50196af7b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalCrossingInProgress_H_ +#define _PersonalCrossingInProgress_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingInProgress */ +typedef BOOLEAN_t PersonalCrossingInProgress_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; +asn_struct_free_f PersonalCrossingInProgress_free; +asn_struct_print_f PersonalCrossingInProgress_print; +asn_constr_check_f PersonalCrossingInProgress_constraint; +ber_type_decoder_f PersonalCrossingInProgress_decode_ber; +der_type_encoder_f PersonalCrossingInProgress_encode_der; +xer_type_decoder_f PersonalCrossingInProgress_decode_xer; +xer_type_encoder_f PersonalCrossingInProgress_encode_xer; +jer_type_encoder_f PersonalCrossingInProgress_encode_jer; +oer_type_decoder_f PersonalCrossingInProgress_decode_oer; +oer_type_encoder_f PersonalCrossingInProgress_encode_oer; +per_type_decoder_f PersonalCrossingInProgress_decode_uper; +per_type_encoder_f PersonalCrossingInProgress_encode_uper; +per_type_decoder_f PersonalCrossingInProgress_decode_aper; +per_type_encoder_f PersonalCrossingInProgress_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingInProgress_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h new file mode 100644 index 000000000..15896cb2f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalCrossingRequest_H_ +#define _PersonalCrossingRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingRequest */ +typedef BOOLEAN_t PersonalCrossingRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; +asn_struct_free_f PersonalCrossingRequest_free; +asn_struct_print_f PersonalCrossingRequest_print; +asn_constr_check_f PersonalCrossingRequest_constraint; +ber_type_decoder_f PersonalCrossingRequest_decode_ber; +der_type_encoder_f PersonalCrossingRequest_encode_der; +xer_type_decoder_f PersonalCrossingRequest_decode_xer; +xer_type_encoder_f PersonalCrossingRequest_encode_xer; +jer_type_encoder_f PersonalCrossingRequest_encode_jer; +oer_type_decoder_f PersonalCrossingRequest_decode_oer; +oer_type_encoder_f PersonalCrossingRequest_encode_oer; +per_type_decoder_f PersonalCrossingRequest_decode_uper; +per_type_encoder_f PersonalCrossingRequest_encode_uper; +per_type_decoder_f PersonalCrossingRequest_decode_aper; +per_type_encoder_f PersonalCrossingRequest_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h new file mode 100644 index 000000000..008f9df06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalDeviceUsageState_H_ +#define _PersonalDeviceUsageState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUsageState { + PersonalDeviceUsageState_unavailable = 0, + PersonalDeviceUsageState_other = 1, + PersonalDeviceUsageState_idle = 2, + PersonalDeviceUsageState_listeningToAudio = 3, + PersonalDeviceUsageState_typing = 4, + PersonalDeviceUsageState_calling = 5, + PersonalDeviceUsageState_playingGames = 6, + PersonalDeviceUsageState_reading = 7, + PersonalDeviceUsageState_viewing = 8 +} e_PersonalDeviceUsageState; + +/* PersonalDeviceUsageState */ +typedef BIT_STRING_t PersonalDeviceUsageState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; +asn_struct_free_f PersonalDeviceUsageState_free; +asn_struct_print_f PersonalDeviceUsageState_print; +asn_constr_check_f PersonalDeviceUsageState_constraint; +ber_type_decoder_f PersonalDeviceUsageState_decode_ber; +der_type_encoder_f PersonalDeviceUsageState_encode_der; +xer_type_decoder_f PersonalDeviceUsageState_decode_xer; +xer_type_encoder_f PersonalDeviceUsageState_encode_xer; +jer_type_encoder_f PersonalDeviceUsageState_encode_jer; +oer_type_decoder_f PersonalDeviceUsageState_decode_oer; +oer_type_encoder_f PersonalDeviceUsageState_encode_oer; +per_type_decoder_f PersonalDeviceUsageState_decode_uper; +per_type_encoder_f PersonalDeviceUsageState_encode_uper; +per_type_decoder_f PersonalDeviceUsageState_decode_aper; +per_type_encoder_f PersonalDeviceUsageState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUsageState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h new file mode 100644 index 000000000..fea4a22e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalDeviceUserType_H_ +#define _PersonalDeviceUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUserType { + PersonalDeviceUserType_unavailable = 0, + PersonalDeviceUserType_aPEDESTRIAN = 1, + PersonalDeviceUserType_aPEDALCYCLIST = 2, + PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, + PersonalDeviceUserType_anANIMAL = 4 + /* + * Enumeration is extensible + */ +} e_PersonalDeviceUserType; + +/* PersonalDeviceUserType */ +typedef long PersonalDeviceUserType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; +extern const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1; +asn_struct_free_f PersonalDeviceUserType_free; +asn_struct_print_f PersonalDeviceUserType_print; +asn_constr_check_f PersonalDeviceUserType_constraint; +ber_type_decoder_f PersonalDeviceUserType_decode_ber; +der_type_encoder_f PersonalDeviceUserType_encode_der; +xer_type_decoder_f PersonalDeviceUserType_decode_xer; +xer_type_encoder_f PersonalDeviceUserType_encode_xer; +jer_type_encoder_f PersonalDeviceUserType_encode_jer; +oer_type_decoder_f PersonalDeviceUserType_decode_oer; +oer_type_encoder_f PersonalDeviceUserType_encode_oer; +per_type_decoder_f PersonalDeviceUserType_decode_uper; +per_type_encoder_f PersonalDeviceUserType_encode_uper; +per_type_decoder_f PersonalDeviceUserType_decode_aper; +per_type_encoder_f PersonalDeviceUserType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h new file mode 100644 index 000000000..f73291d57 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h @@ -0,0 +1,103 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PersonalSafetyMessage_H_ +#define _PersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "Velocity.h" +#include "Heading.h" +#include "PersonalDeviceUsageState.h" +#include "PersonalCrossingRequest.h" +#include "PersonalCrossingInProgress.h" +#include "NumberOfParticipantsInCluster.h" +#include "PersonalClusterRadius.h" +#include "PublicSafetyEventResponderWorkerType.h" +#include "PublicSafetyAndRoadWorkerActivity.h" +#include "PublicSafetyDirectingTrafficSubType.h" +#include "PersonalAssistive.h" +#include "UserSizeAndBehaviour.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include "AnimalType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelerationSet4Way; +struct PathHistory; +struct PathPrediction; +struct PropelledInformation; +struct Reg_PersonalSafetyMessage; + +/* PersonalSafetyMessage */ +typedef struct PersonalSafetyMessage { + PersonalDeviceUserType_t basicType; + DSecond_t secMark; + Common_MsgCount_t msgCnt; + TemporaryID_t id; + Position3D_t position; + PositionalAccuracy_t accuracy; + Velocity_t speed; + Heading_t heading; + struct AccelerationSet4Way *accelSet; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + struct PropelledInformation *propulsion; /* OPTIONAL */ + PersonalDeviceUsageState_t *useState; /* OPTIONAL */ + PersonalCrossingRequest_t *crossRequest; /* OPTIONAL */ + PersonalCrossingInProgress_t *crossState; /* OPTIONAL */ + NumberOfParticipantsInCluster_t *clusterSize; /* OPTIONAL */ + PersonalClusterRadius_t *clusterRadius; /* OPTIONAL */ + PublicSafetyEventResponderWorkerType_t *eventResponderType; /* OPTIONAL */ + PublicSafetyAndRoadWorkerActivity_t *activityType; /* OPTIONAL */ + PublicSafetyDirectingTrafficSubType_t *activitySubType; /* OPTIONAL */ + PersonalAssistive_t *assistType; /* OPTIONAL */ + UserSizeAndBehaviour_t *sizing; /* OPTIONAL */ + Attachment_t *attachment; /* OPTIONAL */ + AttachmentRadius_t *attachmentRadius; /* OPTIONAL */ + AnimalType_t *animalType; /* OPTIONAL */ + struct PersonalSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_PersonalSafetyMessage) 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; +} PersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[26]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h new file mode 100644 index 000000000..28bc15f9e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PivotPointDescription_H_ +#define _PivotPointDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "Common_Angle.h" +#include "PivotingAllowed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotPointDescription */ +typedef struct PivotPointDescription { + Offset_B11_t pivotOffset; + Common_Angle_t pivotAngle; + PivotingAllowed_t pivots; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PivotPointDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotPointDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_PivotPointDescription_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotPointDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h new file mode 100644 index 000000000..59147de2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PivotingAllowed_H_ +#define _PivotingAllowed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotingAllowed */ +typedef BOOLEAN_t PivotingAllowed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotingAllowed; +asn_struct_free_f PivotingAllowed_free; +asn_struct_print_f PivotingAllowed_print; +asn_constr_check_f PivotingAllowed_constraint; +ber_type_decoder_f PivotingAllowed_decode_ber; +der_type_encoder_f PivotingAllowed_encode_der; +xer_type_decoder_f PivotingAllowed_decode_xer; +xer_type_encoder_f PivotingAllowed_encode_xer; +jer_type_encoder_f PivotingAllowed_encode_jer; +oer_type_decoder_f PivotingAllowed_decode_oer; +oer_type_encoder_f PivotingAllowed_encode_oer; +per_type_decoder_f PivotingAllowed_decode_uper; +per_type_encoder_f PivotingAllowed_encode_uper; +per_type_decoder_f PivotingAllowed_decode_aper; +per_type_encoder_f PivotingAllowed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotingAllowed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h new file mode 100644 index 000000000..e45b49c35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Position3D_addGrpB_H_ +#define _Position3D_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LatitudeDMS2.h" +#include "LongitudeDMS2.h" +#include "AddGrpB_Elevation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpB */ +typedef struct Position3D_addGrpB { + LatitudeDMS2_t latitude; + LongitudeDMS2_t longitude; + AddGrpB_Elevation_t elevation; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h new file mode 100644 index 000000000..face236f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Position3D_addGrpC_H_ +#define _Position3D_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Altitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpC */ +typedef struct Position3D_addGrpC { + Altitude_t altitude; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h new file mode 100644 index 000000000..82f60bcc6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Position3D_H_ +#define _Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "Common_Elevation.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_Position3D; + +/* Position3D */ +typedef struct Position3D { + Latitude_t lat; + Longitude_t Long; + Common_Elevation_t *elevation; /* OPTIONAL */ + struct Position3D__regional { + A_SEQUENCE_OF(struct Reg_Position3D) 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; +} Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h new file mode 100644 index 000000000..75239a186 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PositionConfidence_H_ +#define _PositionConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PositionConfidence { + PositionConfidence_unavailable = 0, + PositionConfidence_a500m = 1, + PositionConfidence_a200m = 2, + PositionConfidence_a100m = 3, + PositionConfidence_a50m = 4, + PositionConfidence_a20m = 5, + PositionConfidence_a10m = 6, + PositionConfidence_a5m = 7, + PositionConfidence_a2m = 8, + PositionConfidence_a1m = 9, + PositionConfidence_a50cm = 10, + PositionConfidence_a20cm = 11, + PositionConfidence_a10cm = 12, + PositionConfidence_a5cm = 13, + PositionConfidence_a2cm = 14, + PositionConfidence_a1cm = 15 +} e_PositionConfidence; + +/* PositionConfidence */ +typedef long PositionConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1; +asn_struct_free_f PositionConfidence_free; +asn_struct_print_f PositionConfidence_print; +asn_constr_check_f PositionConfidence_constraint; +ber_type_decoder_f PositionConfidence_decode_ber; +der_type_encoder_f PositionConfidence_encode_der; +xer_type_decoder_f PositionConfidence_decode_xer; +xer_type_encoder_f PositionConfidence_encode_xer; +jer_type_encoder_f PositionConfidence_encode_jer; +oer_type_decoder_f PositionConfidence_decode_oer; +oer_type_encoder_f PositionConfidence_encode_oer; +per_type_decoder_f PositionConfidence_decode_uper; +per_type_encoder_f PositionConfidence_encode_uper; +per_type_decoder_f PositionConfidence_decode_aper; +per_type_encoder_f PositionConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h new file mode 100644 index 000000000..22fbb9ef1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PositionConfidenceSet_H_ +#define _PositionConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PositionConfidence.h" +#include "ElevationConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionConfidenceSet */ +typedef struct PositionConfidenceSet { + PositionConfidence_t pos; + ElevationConfidence_t elevation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h new file mode 100644 index 000000000..82931469c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PositionalAccuracy_H_ +#define _PositionalAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SemiMajorAxisAccuracy.h" +#include "SemiMinorAxisAccuracy.h" +#include "SemiMajorAxisOrientation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionalAccuracy */ +typedef struct PositionalAccuracy { + SemiMajorAxisAccuracy_t semiMajor; + SemiMinorAxisAccuracy_t semiMinor; + SemiMajorAxisOrientation_t orientation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionalAccuracy_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionalAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h new file mode 100644 index 000000000..00724d458 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PreemptPriorityList_H_ +#define _PreemptPriorityList_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 SignalControlZone; + +/* PreemptPriorityList */ +typedef struct PreemptPriorityList { + A_SEQUENCE_OF(struct SignalControlZone) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PreemptPriorityList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; +extern asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1; +extern asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[1]; +extern asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PreemptPriorityList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h new file mode 100644 index 000000000..3a564a3a7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PrioritizationResponse_H_ +#define _PrioritizationResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "PrioritizationResponseStatus.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrioritizationResponse */ +typedef struct PrioritizationResponse { + StationID_t stationID; + PrioritizationResponseStatus_t priorState; + SignalGroupID_t signalGroup; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; +extern asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h new file mode 100644 index 000000000..61195562d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PrioritizationResponseList_H_ +#define _PrioritizationResponseList_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 PrioritizationResponse; + +/* PrioritizationResponseList */ +typedef struct PrioritizationResponseList { + A_SEQUENCE_OF(struct PrioritizationResponse) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponseList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; +extern asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[1]; +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponseList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h new file mode 100644 index 000000000..0fc8ca254 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PrioritizationResponseStatus_H_ +#define _PrioritizationResponseStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrioritizationResponseStatus { + PrioritizationResponseStatus_unknown = 0, + PrioritizationResponseStatus_requested = 1, + PrioritizationResponseStatus_processing = 2, + PrioritizationResponseStatus_watchOtherTraffic = 3, + PrioritizationResponseStatus_granted = 4, + PrioritizationResponseStatus_rejected = 5, + PrioritizationResponseStatus_maxPresence = 6, + PrioritizationResponseStatus_reserviceLocked = 7 + /* + * Enumeration is extensible + */ +} e_PrioritizationResponseStatus; + +/* PrioritizationResponseStatus */ +typedef long PrioritizationResponseStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; +extern const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1; +asn_struct_free_f PrioritizationResponseStatus_free; +asn_struct_print_f PrioritizationResponseStatus_print; +asn_constr_check_f PrioritizationResponseStatus_constraint; +ber_type_decoder_f PrioritizationResponseStatus_decode_ber; +der_type_encoder_f PrioritizationResponseStatus_encode_der; +xer_type_decoder_f PrioritizationResponseStatus_decode_xer; +xer_type_encoder_f PrioritizationResponseStatus_encode_xer; +jer_type_encoder_f PrioritizationResponseStatus_encode_jer; +oer_type_decoder_f PrioritizationResponseStatus_decode_oer; +oer_type_encoder_f PrioritizationResponseStatus_encode_oer; +per_type_decoder_f PrioritizationResponseStatus_decode_uper; +per_type_encoder_f PrioritizationResponseStatus_encode_uper; +per_type_decoder_f PrioritizationResponseStatus_decode_aper; +per_type_encoder_f PrioritizationResponseStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponseStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h new file mode 100644 index 000000000..983b43f42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Priority_H_ +#define _Priority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Priority */ +typedef OCTET_STRING_t Priority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Priority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Priority; +asn_struct_free_f Priority_free; +asn_struct_print_f Priority_print; +asn_constr_check_f Priority_constraint; +ber_type_decoder_f Priority_decode_ber; +der_type_encoder_f Priority_encode_der; +xer_type_decoder_f Priority_decode_xer; +xer_type_encoder_f Priority_encode_xer; +jer_type_encoder_f Priority_encode_jer; +oer_type_decoder_f Priority_decode_oer; +oer_type_encoder_f Priority_encode_oer; +per_type_decoder_f Priority_decode_uper; +per_type_encoder_f Priority_encode_uper; +per_type_decoder_f Priority_decode_aper; +per_type_encoder_f Priority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Priority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h new file mode 100644 index 000000000..bc8c5f06f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PriorityRequestType_H_ +#define _PriorityRequestType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PriorityRequestType { + PriorityRequestType_priorityRequestTypeReserved = 0, + PriorityRequestType_priorityRequest = 1, + PriorityRequestType_priorityRequestUpdate = 2, + PriorityRequestType_priorityCancellation = 3 + /* + * Enumeration is extensible + */ +} e_PriorityRequestType; + +/* PriorityRequestType */ +typedef long PriorityRequestType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PriorityRequestType; +extern const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1; +asn_struct_free_f PriorityRequestType_free; +asn_struct_print_f PriorityRequestType_print; +asn_constr_check_f PriorityRequestType_constraint; +ber_type_decoder_f PriorityRequestType_decode_ber; +der_type_encoder_f PriorityRequestType_encode_der; +xer_type_decoder_f PriorityRequestType_decode_xer; +xer_type_encoder_f PriorityRequestType_encode_xer; +jer_type_encoder_f PriorityRequestType_encode_jer; +oer_type_decoder_f PriorityRequestType_decode_oer; +oer_type_encoder_f PriorityRequestType_encode_oer; +per_type_decoder_f PriorityRequestType_decode_uper; +per_type_encoder_f PriorityRequestType_encode_uper; +per_type_decoder_f PriorityRequestType_decode_aper; +per_type_encoder_f PriorityRequestType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PriorityRequestType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h new file mode 100644 index 000000000..7c82834a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PrivilegedEventFlags_H_ +#define _PrivilegedEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrivilegedEventFlags { + PrivilegedEventFlags_peUnavailable = 0, + PrivilegedEventFlags_peEmergencyResponse = 1, + PrivilegedEventFlags_peEmergencyLightsActive = 2, + PrivilegedEventFlags_peEmergencySoundActive = 3, + PrivilegedEventFlags_peNonEmergencyLightsActive = 4, + PrivilegedEventFlags_peNonEmergencySoundActive = 5 +} e_PrivilegedEventFlags; + +/* PrivilegedEventFlags */ +typedef BIT_STRING_t PrivilegedEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags; +asn_struct_free_f PrivilegedEventFlags_free; +asn_struct_print_f PrivilegedEventFlags_print; +asn_constr_check_f PrivilegedEventFlags_constraint; +ber_type_decoder_f PrivilegedEventFlags_decode_ber; +der_type_encoder_f PrivilegedEventFlags_encode_der; +xer_type_decoder_f PrivilegedEventFlags_decode_xer; +xer_type_encoder_f PrivilegedEventFlags_encode_xer; +jer_type_encoder_f PrivilegedEventFlags_encode_jer; +oer_type_decoder_f PrivilegedEventFlags_decode_oer; +oer_type_encoder_f PrivilegedEventFlags_encode_oer; +per_type_decoder_f PrivilegedEventFlags_decode_uper; +per_type_encoder_f PrivilegedEventFlags_encode_uper; +per_type_decoder_f PrivilegedEventFlags_decode_aper; +per_type_encoder_f PrivilegedEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h new file mode 100644 index 000000000..fd863a18c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PrivilegedEvents_H_ +#define _PrivilegedEvents_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PrivilegedEventFlags.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrivilegedEvents */ +typedef struct PrivilegedEvents { + SSPindex_t notUsed; + PrivilegedEventFlags_t event; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrivilegedEvents_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents; +extern asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1; +extern asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEvents_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h new file mode 100644 index 000000000..d89525be5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ProbeDataManagement_H_ +#define _ProbeDataManagement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Sample.h" +#include "HeadingSlice.h" +#include "SecondOfTime.h" +#include "TermTime.h" +#include "TermDistance.h" +#include "constr_CHOICE.h" +#include "SnapshotTime.h" +#include "SnapshotDistance.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ProbeDataManagement__term_PR { + ProbeDataManagement__term_PR_NOTHING, /* No components present */ + ProbeDataManagement__term_PR_termtime, + ProbeDataManagement__term_PR_termDistance +} ProbeDataManagement__term_PR; +typedef enum ProbeDataManagement__snapshot_PR { + ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ + ProbeDataManagement__snapshot_PR_snapshotTime, + ProbeDataManagement__snapshot_PR_snapshotDistance +} ProbeDataManagement__snapshot_PR; + +/* Forward declarations */ +struct VehicleStatusRequestList; +struct Reg_ProbeDataManagement; + +/* ProbeDataManagement */ +typedef struct ProbeDataManagement { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Sample_t sample; + HeadingSlice_t directions; + struct ProbeDataManagement__term { + ProbeDataManagement__term_PR present; + union ProbeDataManagement__term_u { + TermTime_t termtime; + TermDistance_t termDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } term; + struct ProbeDataManagement__snapshot { + ProbeDataManagement__snapshot_PR present; + union ProbeDataManagement__snapshot_u { + SnapshotTime_t snapshotTime; + SnapshotDistance_t snapshotDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshot; + SecondOfTime_t txInterval; + struct VehicleStatusRequestList *dataElements; /* OPTIONAL */ + struct ProbeDataManagement__regional { + A_SEQUENCE_OF(struct Reg_ProbeDataManagement) 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; +} ProbeDataManagement_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeDataManagement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h new file mode 100644 index 000000000..bc7464dea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ProbeSegmentNumber_H_ +#define _ProbeSegmentNumber_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ProbeSegmentNumber */ +typedef long ProbeSegmentNumber_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; +asn_struct_free_f ProbeSegmentNumber_free; +asn_struct_print_f ProbeSegmentNumber_print; +asn_constr_check_f ProbeSegmentNumber_constraint; +ber_type_decoder_f ProbeSegmentNumber_decode_ber; +der_type_encoder_f ProbeSegmentNumber_encode_der; +xer_type_decoder_f ProbeSegmentNumber_decode_xer; +xer_type_encoder_f ProbeSegmentNumber_encode_xer; +jer_type_encoder_f ProbeSegmentNumber_encode_jer; +oer_type_decoder_f ProbeSegmentNumber_decode_oer; +oer_type_encoder_f ProbeSegmentNumber_encode_oer; +per_type_decoder_f ProbeSegmentNumber_decode_uper; +per_type_encoder_f ProbeSegmentNumber_encode_uper; +per_type_decoder_f ProbeSegmentNumber_decode_aper; +per_type_encoder_f ProbeSegmentNumber_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeSegmentNumber_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h new file mode 100644 index 000000000..6323acbb9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ProbeVehicleData_H_ +#define _ProbeVehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "ProbeSegmentNumber.h" +#include "FullPositionVector.h" +#include "VehicleClassification.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleIdent; +struct Snapshot; +struct Reg_ProbeVehicleData; + +/* ProbeVehicleData */ +typedef struct ProbeVehicleData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ProbeSegmentNumber_t *segNum; /* OPTIONAL */ + struct VehicleIdent *probeID; /* OPTIONAL */ + FullPositionVector_t startVector; + VehicleClassification_t vehicleType; + struct ProbeVehicleData__snapshots { + A_SEQUENCE_OF(struct Snapshot) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshots; + struct ProbeVehicleData__regional { + A_SEQUENCE_OF(struct Reg_ProbeVehicleData) 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; +} ProbeVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeVehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h new file mode 100644 index 000000000..772efb148 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PropelledInformation_H_ +#define _PropelledInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HumanPropelledType.h" +#include "AnimalPropelledType.h" +#include "MotorizedPropelledType.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PropelledInformation_PR { + PropelledInformation_PR_NOTHING, /* No components present */ + PropelledInformation_PR_human, + PropelledInformation_PR_animal, + PropelledInformation_PR_motor + /* Extensions may appear below */ + +} PropelledInformation_PR; + +/* PropelledInformation */ +typedef struct PropelledInformation { + PropelledInformation_PR present; + union PropelledInformation_u { + HumanPropelledType_t human; + AnimalPropelledType_t animal; + MotorizedPropelledType_t motor; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PropelledInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; +extern asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_PropelledInformation_1[3]; +extern asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PropelledInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h new file mode 100644 index 000000000..fe22fa36d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PublicSafetyAndRoadWorkerActivity_H_ +#define _PublicSafetyAndRoadWorkerActivity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyAndRoadWorkerActivity { + PublicSafetyAndRoadWorkerActivity_unavailable = 0, + PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, + PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, + PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, + PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, + PublicSafetyAndRoadWorkerActivity_otherActivities = 5 +} e_PublicSafetyAndRoadWorkerActivity; + +/* PublicSafetyAndRoadWorkerActivity */ +typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; +asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; +asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; +asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; +ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; +der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; +xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; +xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; +jer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_jer; +oer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_oer; +oer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_oer; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_aper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h new file mode 100644 index 000000000..e28e7e95b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PublicSafetyDirectingTrafficSubType_H_ +#define _PublicSafetyDirectingTrafficSubType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyDirectingTrafficSubType { + PublicSafetyDirectingTrafficSubType_unavailable = 0, + PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, + PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, + PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, + PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, + PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, + PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 +} e_PublicSafetyDirectingTrafficSubType; + +/* PublicSafetyDirectingTrafficSubType */ +typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; +asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; +asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; +asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; +ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; +der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; +xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; +xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; +jer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_jer; +oer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_oer; +oer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_oer; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_aper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h new file mode 100644 index 000000000..cea1ebe44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _PublicSafetyEventResponderWorkerType_H_ +#define _PublicSafetyEventResponderWorkerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyEventResponderWorkerType { + PublicSafetyEventResponderWorkerType_unavailable = 0, + PublicSafetyEventResponderWorkerType_towOperater = 1, + PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, + PublicSafetyEventResponderWorkerType_aDOTWorker = 3, + PublicSafetyEventResponderWorkerType_lawEnforcement = 4, + PublicSafetyEventResponderWorkerType_hazmatResponder = 5, + PublicSafetyEventResponderWorkerType_animalControlWorker = 6, + PublicSafetyEventResponderWorkerType_otherPersonnel = 7 + /* + * Enumeration is extensible + */ +} e_PublicSafetyEventResponderWorkerType; + +/* PublicSafetyEventResponderWorkerType */ +typedef long PublicSafetyEventResponderWorkerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; +extern const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1; +asn_struct_free_f PublicSafetyEventResponderWorkerType_free; +asn_struct_print_f PublicSafetyEventResponderWorkerType_print; +asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; +ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; +der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; +xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; +xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; +jer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_jer; +oer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_oer; +oer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_oer; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_aper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyEventResponderWorkerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h new file mode 100644 index 000000000..19961578c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCM_Revision_H_ +#define _RTCM_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RTCM_Revision { + RTCM_Revision_unknown = 0, + RTCM_Revision_rtcmRev2 = 1, + RTCM_Revision_rtcmRev3 = 2, + RTCM_Revision_reserved = 3 + /* + * Enumeration is extensible + */ +} e_RTCM_Revision; + +/* RTCM-Revision */ +typedef long RTCM_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1; +asn_struct_free_f RTCM_Revision_free; +asn_struct_print_f RTCM_Revision_print; +asn_constr_check_f RTCM_Revision_constraint; +ber_type_decoder_f RTCM_Revision_decode_ber; +der_type_encoder_f RTCM_Revision_encode_der; +xer_type_decoder_f RTCM_Revision_decode_xer; +xer_type_encoder_f RTCM_Revision_encode_xer; +jer_type_encoder_f RTCM_Revision_encode_jer; +oer_type_decoder_f RTCM_Revision_decode_oer; +oer_type_encoder_f RTCM_Revision_encode_oer; +per_type_decoder_f RTCM_Revision_decode_uper; +per_type_encoder_f RTCM_Revision_encode_uper; +per_type_decoder_f RTCM_Revision_decode_aper; +per_type_encoder_f RTCM_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h new file mode 100644 index 000000000..21516a2af --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCMPackage_H_ +#define _RTCMPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessageList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RTCMheader; + +/* RTCMPackage */ +typedef struct RTCMPackage { + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMPackage_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h new file mode 100644 index 000000000..49d93aaac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCMcorrections_H_ +#define _RTCMcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "RTCM-Revision.h" +#include "MinuteOfTheYear.h" +#include "RTCMmessageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct RTCMheader; +struct Reg_RTCMcorrections; + +/* RTCMcorrections */ +typedef struct RTCMcorrections { + Common_MsgCount_t msgCnt; + RTCM_Revision_t rev; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct FullPositionVector *anchorPoint; /* OPTIONAL */ + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + struct RTCMcorrections__regional { + A_SEQUENCE_OF(struct Reg_RTCMcorrections) 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; +} RTCMcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMcorrections_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h new file mode 100644 index 000000000..4dcd9bc4d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCMheader_H_ +#define _RTCMheader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "AntennaOffsetSet.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMheader */ +typedef struct RTCMheader { + GNSSstatus_t status; + AntennaOffsetSet_t offsetSet; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMheader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMheader; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMheader_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMheader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h new file mode 100644 index 000000000..ab015abd9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCMmessage_H_ +#define _RTCMmessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessage */ +typedef OCTET_STRING_t RTCMmessage_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessage; +asn_struct_free_f RTCMmessage_free; +asn_struct_print_f RTCMmessage_print; +asn_constr_check_f RTCMmessage_constraint; +ber_type_decoder_f RTCMmessage_decode_ber; +der_type_encoder_f RTCMmessage_encode_der; +xer_type_decoder_f RTCMmessage_decode_xer; +xer_type_encoder_f RTCMmessage_encode_xer; +jer_type_encoder_f RTCMmessage_encode_jer; +oer_type_decoder_f RTCMmessage_decode_oer; +oer_type_encoder_f RTCMmessage_encode_oer; +per_type_decoder_f RTCMmessage_decode_uper; +per_type_encoder_f RTCMmessage_encode_uper; +per_type_decoder_f RTCMmessage_decode_aper; +per_type_encoder_f RTCMmessage_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h new file mode 100644 index 000000000..adb065744 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RTCMmessageList_H_ +#define _RTCMmessageList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessage.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessageList */ +typedef struct RTCMmessageList { + A_SEQUENCE_OF(RTCMmessage_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMmessageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessageList; +extern asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMmessageList_1[1]; +extern asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h new file mode 100644 index 000000000..e8c9d9c78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Radius_B12_H_ +#define _Radius_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Radius-B12 */ +typedef long Radius_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Radius_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Radius_B12; +asn_struct_free_f Radius_B12_free; +asn_struct_print_f Radius_B12_print; +asn_constr_check_f Radius_B12_constraint; +ber_type_decoder_f Radius_B12_decode_ber; +der_type_encoder_f Radius_B12_encode_der; +xer_type_decoder_f Radius_B12_decode_xer; +xer_type_encoder_f Radius_B12_encode_xer; +jer_type_encoder_f Radius_B12_encode_jer; +oer_type_decoder_f Radius_B12_decode_oer; +oer_type_encoder_f Radius_B12_encode_oer; +per_type_decoder_f Radius_B12_decode_uper; +per_type_encoder_f Radius_B12_encode_uper; +per_type_decoder_f Radius_B12_decode_aper; +per_type_encoder_f Radius_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Radius_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h new file mode 100644 index 000000000..a7f996ff3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RadiusOfCurvature_H_ +#define _RadiusOfCurvature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RadiusOfCurvature */ +typedef long RadiusOfCurvature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature; +asn_struct_free_f RadiusOfCurvature_free; +asn_struct_print_f RadiusOfCurvature_print; +asn_constr_check_f RadiusOfCurvature_constraint; +ber_type_decoder_f RadiusOfCurvature_decode_ber; +der_type_encoder_f RadiusOfCurvature_encode_der; +xer_type_decoder_f RadiusOfCurvature_decode_xer; +xer_type_encoder_f RadiusOfCurvature_encode_xer; +jer_type_encoder_f RadiusOfCurvature_encode_jer; +oer_type_decoder_f RadiusOfCurvature_decode_oer; +oer_type_encoder_f RadiusOfCurvature_encode_oer; +per_type_decoder_f RadiusOfCurvature_decode_uper; +per_type_encoder_f RadiusOfCurvature_encode_uper; +per_type_decoder_f RadiusOfCurvature_decode_aper; +per_type_encoder_f RadiusOfCurvature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RadiusOfCurvature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h new file mode 100644 index 000000000..6adcdfe68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RainSensor_H_ +#define _RainSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RainSensor { + RainSensor_none = 0, + RainSensor_lightMist = 1, + RainSensor_heavyMist = 2, + RainSensor_lightRainOrDrizzle = 3, + RainSensor_rain = 4, + RainSensor_moderateRain = 5, + RainSensor_heavyRain = 6, + RainSensor_heavyDownpour = 7 +} e_RainSensor; + +/* RainSensor */ +typedef long RainSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RainSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RainSensor; +extern const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1; +asn_struct_free_f RainSensor_free; +asn_struct_print_f RainSensor_print; +asn_constr_check_f RainSensor_constraint; +ber_type_decoder_f RainSensor_decode_ber; +der_type_encoder_f RainSensor_encode_der; +xer_type_decoder_f RainSensor_decode_xer; +xer_type_encoder_f RainSensor_encode_xer; +jer_type_encoder_f RainSensor_encode_jer; +oer_type_decoder_f RainSensor_decode_oer; +oer_type_encoder_f RainSensor_encode_oer; +per_type_decoder_f RainSensor_decode_uper; +per_type_encoder_f RainSensor_encode_uper; +per_type_decoder_f RainSensor_decode_aper; +per_type_encoder_f RainSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RainSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h new file mode 100644 index 000000000..0fb282aab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegionId_H_ +#define _RegionId_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionId */ +typedef long RegionId_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RegionId_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RegionId; +asn_struct_free_f RegionId_free; +asn_struct_print_f RegionId_print; +asn_constr_check_f RegionId_constraint; +ber_type_decoder_f RegionId_decode_ber; +der_type_encoder_f RegionId_encode_der; +xer_type_decoder_f RegionId_decode_xer; +xer_type_encoder_f RegionId_encode_xer; +jer_type_encoder_f RegionId_encode_jer; +oer_type_decoder_f RegionId_decode_oer; +oer_type_encoder_f RegionId_encode_oer; +per_type_decoder_f RegionId_decode_uper; +per_type_encoder_f RegionId_encode_uper; +per_type_decoder_f RegionId_decode_aper; +per_type_encoder_f RegionId_encode_aper; +#define RegionId_noRegion ((RegionId_t)0) +#define RegionId_addGrpA ((RegionId_t)1) +#define RegionId_addGrpB ((RegionId_t)2) +#define RegionId_addGrpC ((RegionId_t)3) + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionId_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h new file mode 100644 index 000000000..50d145cf7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegionList_H_ +#define _RegionList_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 RegionOffsets; + +/* RegionList */ +typedef struct RegionList { + A_SEQUENCE_OF(struct RegionOffsets) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionList; +extern asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionList_1[1]; +extern asn_per_constraints_t asn_PER_type_RegionList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h new file mode 100644 index 000000000..0c6835963 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegionOffsets_H_ +#define _RegionOffsets_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionOffsets */ +typedef struct RegionOffsets { + OffsetLL_B16_t xOffset; + OffsetLL_B16_t yOffset; + OffsetLL_B16_t *zOffset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionOffsets_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionOffsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h new file mode 100644 index 000000000..4245466f9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegionPointSet_H_ +#define _RegionPointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "RegionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* RegionPointSet */ +typedef struct RegionPointSet { + struct Position3D *anchor; /* OPTIONAL */ + Zoom_t *scale; /* OPTIONAL */ + RegionList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionPointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionPointSet_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionPointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h new file mode 100644 index 000000000..a981d7f10 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h @@ -0,0 +1,1337 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegionalExtension_H_ +#define _RegionalExtension_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionId.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "LaneDataAttribute-addGrpB.h" +#include "NodeOffsetPointXY-addGrpB.h" +#include "Position3D-addGrpB.h" +#include "Position3D-addGrpC.h" +#include "MapData-addGrpC.h" +#include "RestrictionUserType-addGrpC.h" +#include "ConnectionManeuverAssist-addGrpC.h" +#include "IntersectionState-addGrpC.h" +#include "MovementEvent-addGrpB.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Reg_BasicSafetyMessage__regExtValue_PR { + Reg_BasicSafetyMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_BasicSafetyMessage__regExtValue_PR; +typedef enum Reg_EventDescription__regExtValue_PR { + Reg_EventDescription__regExtValue_PR_NOTHING /* No components present */ + +} Reg_EventDescription__regExtValue_PR; +typedef enum Reg_SupplementalVehicleExtensions__regExtValue_PR { + Reg_SupplementalVehicleExtensions__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SupplementalVehicleExtensions__regExtValue_PR; +typedef enum Reg_ComputedLane__regExtValue_PR { + Reg_ComputedLane__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ComputedLane__regExtValue_PR; +typedef enum Reg_LaneDataAttribute__regExtValue_PR { + Reg_LaneDataAttribute__regExtValue_PR_NOTHING, /* No components present */ + Reg_LaneDataAttribute__regExtValue_PR_LaneDataAttribute_addGrpB +} Reg_LaneDataAttribute__regExtValue_PR; +typedef enum Reg_NodeAttributeSetXY__regExtValue_PR { + Reg_NodeAttributeSetXY__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeAttributeSetXY__regExtValue_PR; +typedef enum Reg_NodeOffsetPointXY__regExtValue_PR { + Reg_NodeOffsetPointXY__regExtValue_PR_NOTHING, /* No components present */ + Reg_NodeOffsetPointXY__regExtValue_PR_NodeOffsetPointXY_addGrpB +} Reg_NodeOffsetPointXY__regExtValue_PR; +typedef enum Reg_Position3D__regExtValue_PR { + Reg_Position3D__regExtValue_PR_NOTHING, /* No components present */ + Reg_Position3D__regExtValue_PR_Position3D_addGrpB, + Reg_Position3D__regExtValue_PR_Position3D_addGrpC +} Reg_Position3D__regExtValue_PR; +typedef enum Reg_RequestorType__regExtValue_PR { + Reg_RequestorType__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RequestorType__regExtValue_PR; +typedef enum Reg_VehicleClassification__regExtValue_PR { + Reg_VehicleClassification__regExtValue_PR_NOTHING /* No components present */ + +} Reg_VehicleClassification__regExtValue_PR; +typedef enum Reg_VerticalOffset__regExtValue_PR { + Reg_VerticalOffset__regExtValue_PR_NOTHING /* No components present */ + +} Reg_VerticalOffset__regExtValue_PR; +typedef enum Reg_CommonSafetyRequest__regExtValue_PR { + Reg_CommonSafetyRequest__regExtValue_PR_NOTHING /* No components present */ + +} Reg_CommonSafetyRequest__regExtValue_PR; +typedef enum Reg_EmergencyVehicleAlert__regExtValue_PR { + Reg_EmergencyVehicleAlert__regExtValue_PR_NOTHING /* No components present */ + +} Reg_EmergencyVehicleAlert__regExtValue_PR; +typedef enum Reg_IntersectionCollision__regExtValue_PR { + Reg_IntersectionCollision__regExtValue_PR_NOTHING /* No components present */ + +} Reg_IntersectionCollision__regExtValue_PR; +typedef enum Reg_MapData__regExtValue_PR { + Reg_MapData__regExtValue_PR_NOTHING, /* No components present */ + Reg_MapData__regExtValue_PR_MapData_addGrpC +} Reg_MapData__regExtValue_PR; +typedef enum Reg_GenericLane__regExtValue_PR { + Reg_GenericLane__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GenericLane__regExtValue_PR; +typedef enum Reg_IntersectionGeometry__regExtValue_PR { + Reg_IntersectionGeometry__regExtValue_PR_NOTHING /* No components present */ + +} Reg_IntersectionGeometry__regExtValue_PR; +typedef enum Reg_LaneAttributes__regExtValue_PR { + Reg_LaneAttributes__regExtValue_PR_NOTHING /* No components present */ + +} Reg_LaneAttributes__regExtValue_PR; +typedef enum Reg_SignalControlZone__regExtValue_PR { + Reg_SignalControlZone__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalControlZone__regExtValue_PR; +typedef enum Reg_RestrictionUserType__regExtValue_PR { + Reg_RestrictionUserType__regExtValue_PR_NOTHING, /* No components present */ + Reg_RestrictionUserType__regExtValue_PR_RestrictionUserType_addGrpC +} Reg_RestrictionUserType__regExtValue_PR; +typedef enum Reg_RoadSegment__regExtValue_PR { + Reg_RoadSegment__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RoadSegment__regExtValue_PR; +typedef enum Reg_NMEAcorrections__regExtValue_PR { + Reg_NMEAcorrections__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NMEAcorrections__regExtValue_PR; +typedef enum Reg_PersonalSafetyMessage__regExtValue_PR { + Reg_PersonalSafetyMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_PersonalSafetyMessage__regExtValue_PR; +typedef enum Reg_ProbeDataManagement__regExtValue_PR { + Reg_ProbeDataManagement__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ProbeDataManagement__regExtValue_PR; +typedef enum Reg_ProbeVehicleData__regExtValue_PR { + Reg_ProbeVehicleData__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ProbeVehicleData__regExtValue_PR; +typedef enum Reg_RoadSideAlert__regExtValue_PR { + Reg_RoadSideAlert__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RoadSideAlert__regExtValue_PR; +typedef enum Reg_RTCMcorrections__regExtValue_PR { + Reg_RTCMcorrections__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RTCMcorrections__regExtValue_PR; +typedef enum Reg_SignalRequestMessage__regExtValue_PR { + Reg_SignalRequestMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequestMessage__regExtValue_PR; +typedef enum Reg_RequestorDescription__regExtValue_PR { + Reg_RequestorDescription__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RequestorDescription__regExtValue_PR; +typedef enum Reg_SignalRequestPackage__regExtValue_PR { + Reg_SignalRequestPackage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequestPackage__regExtValue_PR; +typedef enum Reg_SignalRequest__regExtValue_PR { + Reg_SignalRequest__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequest__regExtValue_PR; +typedef enum Reg_SignalStatusMessage__regExtValue_PR { + Reg_SignalStatusMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatusMessage__regExtValue_PR; +typedef enum Reg_SignalStatusPackage__regExtValue_PR { + Reg_SignalStatusPackage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatusPackage__regExtValue_PR; +typedef enum Reg_SignalStatus__regExtValue_PR { + Reg_SignalStatus__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatus__regExtValue_PR; +typedef enum Reg_SPAT__regExtValue_PR { + Reg_SPAT__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SPAT__regExtValue_PR; +typedef enum Reg_AdvisorySpeed__regExtValue_PR { + Reg_AdvisorySpeed__regExtValue_PR_NOTHING /* No components present */ + +} Reg_AdvisorySpeed__regExtValue_PR; +typedef enum Reg_ConnectionManeuverAssist__regExtValue_PR { + Reg_ConnectionManeuverAssist__regExtValue_PR_NOTHING, /* No components present */ + Reg_ConnectionManeuverAssist__regExtValue_PR_ConnectionManeuverAssist_addGrpC +} Reg_ConnectionManeuverAssist__regExtValue_PR; +typedef enum Reg_IntersectionState__regExtValue_PR { + Reg_IntersectionState__regExtValue_PR_NOTHING, /* No components present */ + Reg_IntersectionState__regExtValue_PR_IntersectionState_addGrpC +} Reg_IntersectionState__regExtValue_PR; +typedef enum Reg_MovementEvent__regExtValue_PR { + Reg_MovementEvent__regExtValue_PR_NOTHING, /* No components present */ + Reg_MovementEvent__regExtValue_PR_MovementEvent_addGrpB +} Reg_MovementEvent__regExtValue_PR; +typedef enum Reg_MovementState__regExtValue_PR { + Reg_MovementState__regExtValue_PR_NOTHING /* No components present */ + +} Reg_MovementState__regExtValue_PR; +typedef enum Reg_TestMessage00__regExtValue_PR { + Reg_TestMessage00__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage00__regExtValue_PR; +typedef enum Reg_TestMessage01__regExtValue_PR { + Reg_TestMessage01__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage01__regExtValue_PR; +typedef enum Reg_TestMessage02__regExtValue_PR { + Reg_TestMessage02__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage02__regExtValue_PR; +typedef enum Reg_TestMessage03__regExtValue_PR { + Reg_TestMessage03__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage03__regExtValue_PR; +typedef enum Reg_TestMessage04__regExtValue_PR { + Reg_TestMessage04__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage04__regExtValue_PR; +typedef enum Reg_TestMessage05__regExtValue_PR { + Reg_TestMessage05__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage05__regExtValue_PR; +typedef enum Reg_TestMessage06__regExtValue_PR { + Reg_TestMessage06__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage06__regExtValue_PR; +typedef enum Reg_TestMessage07__regExtValue_PR { + Reg_TestMessage07__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage07__regExtValue_PR; +typedef enum Reg_TestMessage08__regExtValue_PR { + Reg_TestMessage08__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage08__regExtValue_PR; +typedef enum Reg_TestMessage09__regExtValue_PR { + Reg_TestMessage09__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage09__regExtValue_PR; +typedef enum Reg_TestMessage10__regExtValue_PR { + Reg_TestMessage10__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage10__regExtValue_PR; +typedef enum Reg_TestMessage11__regExtValue_PR { + Reg_TestMessage11__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage11__regExtValue_PR; +typedef enum Reg_TestMessage12__regExtValue_PR { + Reg_TestMessage12__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage12__regExtValue_PR; +typedef enum Reg_TestMessage13__regExtValue_PR { + Reg_TestMessage13__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage13__regExtValue_PR; +typedef enum Reg_TestMessage14__regExtValue_PR { + Reg_TestMessage14__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage14__regExtValue_PR; +typedef enum Reg_TestMessage15__regExtValue_PR { + Reg_TestMessage15__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage15__regExtValue_PR; +typedef enum Reg_TravelerInformation__regExtValue_PR { + Reg_TravelerInformation__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TravelerInformation__regExtValue_PR; +typedef enum Reg_GeographicalPath__regExtValue_PR { + Reg_GeographicalPath__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GeographicalPath__regExtValue_PR; +typedef enum Reg_GeometricProjection__regExtValue_PR { + Reg_GeometricProjection__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GeometricProjection__regExtValue_PR; +typedef enum Reg_NodeAttributeSetLL__regExtValue_PR { + Reg_NodeAttributeSetLL__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeAttributeSetLL__regExtValue_PR; +typedef enum Reg_NodeOffsetPointLL__regExtValue_PR { + Reg_NodeOffsetPointLL__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeOffsetPointLL__regExtValue_PR; + +/* RegionalExtension */ +typedef struct Reg_BasicSafetyMessage { + RegionId_t regionId; + struct Reg_BasicSafetyMessage__regExtValue { + Reg_BasicSafetyMessage__regExtValue_PR present; + union Reg_BasicSafetyMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_BasicSafetyMessage_t; +typedef struct Reg_EventDescription { + RegionId_t regionId; + struct Reg_EventDescription__regExtValue { + Reg_EventDescription__regExtValue_PR present; + union Reg_EventDescription__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_EventDescription_t; +typedef struct Reg_SupplementalVehicleExtensions { + RegionId_t regionId; + struct Reg_SupplementalVehicleExtensions__regExtValue { + Reg_SupplementalVehicleExtensions__regExtValue_PR present; + union Reg_SupplementalVehicleExtensions__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SupplementalVehicleExtensions_t; +typedef struct Reg_ComputedLane { + RegionId_t regionId; + struct Reg_ComputedLane__regExtValue { + Reg_ComputedLane__regExtValue_PR present; + union Reg_ComputedLane__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ComputedLane_t; +typedef struct Reg_LaneDataAttribute { + RegionId_t regionId; + struct Reg_LaneDataAttribute__regExtValue { + Reg_LaneDataAttribute__regExtValue_PR present; + union Reg_LaneDataAttribute__regExtValue_u { + LaneDataAttribute_addGrpB_t LaneDataAttribute_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneDataAttribute_t; +typedef struct Reg_NodeAttributeSetXY { + RegionId_t regionId; + struct Reg_NodeAttributeSetXY__regExtValue { + Reg_NodeAttributeSetXY__regExtValue_PR present; + union Reg_NodeAttributeSetXY__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeAttributeSetXY_t; +typedef struct Reg_NodeOffsetPointXY { + RegionId_t regionId; + struct Reg_NodeOffsetPointXY__regExtValue { + Reg_NodeOffsetPointXY__regExtValue_PR present; + union Reg_NodeOffsetPointXY__regExtValue_u { + NodeOffsetPointXY_addGrpB_t NodeOffsetPointXY_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeOffsetPointXY_t; +typedef struct Reg_Position3D { + RegionId_t regionId; + struct Reg_Position3D__regExtValue { + Reg_Position3D__regExtValue_PR present; + union Reg_Position3D__regExtValue_u { + Position3D_addGrpB_t Position3D_addGrpB; + Position3D_addGrpC_t Position3D_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_Position3D_t; +typedef struct Reg_RequestorType { + RegionId_t regionId; + struct Reg_RequestorType__regExtValue { + Reg_RequestorType__regExtValue_PR present; + union Reg_RequestorType__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RequestorType_t; +typedef struct Reg_VehicleClassification { + RegionId_t regionId; + struct Reg_VehicleClassification__regExtValue { + Reg_VehicleClassification__regExtValue_PR present; + union Reg_VehicleClassification__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_VehicleClassification_t; +typedef struct Reg_VerticalOffset { + RegionId_t regionId; + struct Reg_VerticalOffset__regExtValue { + Reg_VerticalOffset__regExtValue_PR present; + union Reg_VerticalOffset__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_VerticalOffset_t; +typedef struct Reg_CommonSafetyRequest { + RegionId_t regionId; + struct Reg_CommonSafetyRequest__regExtValue { + Reg_CommonSafetyRequest__regExtValue_PR present; + union Reg_CommonSafetyRequest__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_CommonSafetyRequest_t; +typedef struct Reg_EmergencyVehicleAlert { + RegionId_t regionId; + struct Reg_EmergencyVehicleAlert__regExtValue { + Reg_EmergencyVehicleAlert__regExtValue_PR present; + union Reg_EmergencyVehicleAlert__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_EmergencyVehicleAlert_t; +typedef struct Reg_IntersectionCollision { + RegionId_t regionId; + struct Reg_IntersectionCollision__regExtValue { + Reg_IntersectionCollision__regExtValue_PR present; + union Reg_IntersectionCollision__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionCollision_t; +typedef struct Reg_MapData { + RegionId_t regionId; + struct Reg_MapData__regExtValue { + Reg_MapData__regExtValue_PR present; + union Reg_MapData__regExtValue_u { + MapData_addGrpC_t MapData_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MapData_t; +typedef struct Reg_GenericLane { + RegionId_t regionId; + struct Reg_GenericLane__regExtValue { + Reg_GenericLane__regExtValue_PR present; + union Reg_GenericLane__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GenericLane_t; +typedef struct Reg_IntersectionGeometry { + RegionId_t regionId; + struct Reg_IntersectionGeometry__regExtValue { + Reg_IntersectionGeometry__regExtValue_PR present; + union Reg_IntersectionGeometry__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionGeometry_t; +typedef struct Reg_LaneAttributes { + RegionId_t regionId; + struct Reg_LaneAttributes__regExtValue { + Reg_LaneAttributes__regExtValue_PR present; + union Reg_LaneAttributes__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneAttributes_t; +typedef struct Reg_SignalControlZone { + RegionId_t regionId; + struct Reg_SignalControlZone__regExtValue { + Reg_SignalControlZone__regExtValue_PR present; + union Reg_SignalControlZone__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalControlZone_t; +typedef struct Reg_RestrictionUserType { + RegionId_t regionId; + struct Reg_RestrictionUserType__regExtValue { + Reg_RestrictionUserType__regExtValue_PR present; + union Reg_RestrictionUserType__regExtValue_u { + RestrictionUserType_addGrpC_t RestrictionUserType_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RestrictionUserType_t; +typedef struct Reg_RoadSegment { + RegionId_t regionId; + struct Reg_RoadSegment__regExtValue { + Reg_RoadSegment__regExtValue_PR present; + union Reg_RoadSegment__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RoadSegment_t; +typedef struct Reg_NMEAcorrections { + RegionId_t regionId; + struct Reg_NMEAcorrections__regExtValue { + Reg_NMEAcorrections__regExtValue_PR present; + union Reg_NMEAcorrections__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NMEAcorrections_t; +typedef struct Reg_PersonalSafetyMessage { + RegionId_t regionId; + struct Reg_PersonalSafetyMessage__regExtValue { + Reg_PersonalSafetyMessage__regExtValue_PR present; + union Reg_PersonalSafetyMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_PersonalSafetyMessage_t; +typedef struct Reg_ProbeDataManagement { + RegionId_t regionId; + struct Reg_ProbeDataManagement__regExtValue { + Reg_ProbeDataManagement__regExtValue_PR present; + union Reg_ProbeDataManagement__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ProbeDataManagement_t; +typedef struct Reg_ProbeVehicleData { + RegionId_t regionId; + struct Reg_ProbeVehicleData__regExtValue { + Reg_ProbeVehicleData__regExtValue_PR present; + union Reg_ProbeVehicleData__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ProbeVehicleData_t; +typedef struct Reg_RoadSideAlert { + RegionId_t regionId; + struct Reg_RoadSideAlert__regExtValue { + Reg_RoadSideAlert__regExtValue_PR present; + union Reg_RoadSideAlert__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RoadSideAlert_t; +typedef struct Reg_RTCMcorrections { + RegionId_t regionId; + struct Reg_RTCMcorrections__regExtValue { + Reg_RTCMcorrections__regExtValue_PR present; + union Reg_RTCMcorrections__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RTCMcorrections_t; +typedef struct Reg_SignalRequestMessage { + RegionId_t regionId; + struct Reg_SignalRequestMessage__regExtValue { + Reg_SignalRequestMessage__regExtValue_PR present; + union Reg_SignalRequestMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequestMessage_t; +typedef struct Reg_RequestorDescription { + RegionId_t regionId; + struct Reg_RequestorDescription__regExtValue { + Reg_RequestorDescription__regExtValue_PR present; + union Reg_RequestorDescription__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RequestorDescription_t; +typedef struct Reg_SignalRequestPackage { + RegionId_t regionId; + struct Reg_SignalRequestPackage__regExtValue { + Reg_SignalRequestPackage__regExtValue_PR present; + union Reg_SignalRequestPackage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequestPackage_t; +typedef struct Reg_SignalRequest { + RegionId_t regionId; + struct Reg_SignalRequest__regExtValue { + Reg_SignalRequest__regExtValue_PR present; + union Reg_SignalRequest__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequest_t; +typedef struct Reg_SignalStatusMessage { + RegionId_t regionId; + struct Reg_SignalStatusMessage__regExtValue { + Reg_SignalStatusMessage__regExtValue_PR present; + union Reg_SignalStatusMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatusMessage_t; +typedef struct Reg_SignalStatusPackage { + RegionId_t regionId; + struct Reg_SignalStatusPackage__regExtValue { + Reg_SignalStatusPackage__regExtValue_PR present; + union Reg_SignalStatusPackage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatusPackage_t; +typedef struct Reg_SignalStatus { + RegionId_t regionId; + struct Reg_SignalStatus__regExtValue { + Reg_SignalStatus__regExtValue_PR present; + union Reg_SignalStatus__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatus_t; +typedef struct Reg_SPAT { + RegionId_t regionId; + struct Reg_SPAT__regExtValue { + Reg_SPAT__regExtValue_PR present; + union Reg_SPAT__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SPAT_t; +typedef struct Reg_AdvisorySpeed { + RegionId_t regionId; + struct Reg_AdvisorySpeed__regExtValue { + Reg_AdvisorySpeed__regExtValue_PR present; + union Reg_AdvisorySpeed__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_AdvisorySpeed_t; +typedef struct Reg_ConnectionManeuverAssist { + RegionId_t regionId; + struct Reg_ConnectionManeuverAssist__regExtValue { + Reg_ConnectionManeuverAssist__regExtValue_PR present; + union Reg_ConnectionManeuverAssist__regExtValue_u { + ConnectionManeuverAssist_addGrpC_t ConnectionManeuverAssist_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ConnectionManeuverAssist_t; +typedef struct Reg_IntersectionState { + RegionId_t regionId; + struct Reg_IntersectionState__regExtValue { + Reg_IntersectionState__regExtValue_PR present; + union Reg_IntersectionState__regExtValue_u { + IntersectionState_addGrpC_t IntersectionState_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionState_t; +typedef struct Reg_MovementEvent { + RegionId_t regionId; + struct Reg_MovementEvent__regExtValue { + Reg_MovementEvent__regExtValue_PR present; + union Reg_MovementEvent__regExtValue_u { + MovementEvent_addGrpB_t MovementEvent_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementEvent_t; +typedef struct Reg_MovementState { + RegionId_t regionId; + struct Reg_MovementState__regExtValue { + Reg_MovementState__regExtValue_PR present; + union Reg_MovementState__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementState_t; +typedef struct Reg_TestMessage00 { + RegionId_t regionId; + struct Reg_TestMessage00__regExtValue { + Reg_TestMessage00__regExtValue_PR present; + union Reg_TestMessage00__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage00_t; +typedef struct Reg_TestMessage01 { + RegionId_t regionId; + struct Reg_TestMessage01__regExtValue { + Reg_TestMessage01__regExtValue_PR present; + union Reg_TestMessage01__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage01_t; +typedef struct Reg_TestMessage02 { + RegionId_t regionId; + struct Reg_TestMessage02__regExtValue { + Reg_TestMessage02__regExtValue_PR present; + union Reg_TestMessage02__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage02_t; +typedef struct Reg_TestMessage03 { + RegionId_t regionId; + struct Reg_TestMessage03__regExtValue { + Reg_TestMessage03__regExtValue_PR present; + union Reg_TestMessage03__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage03_t; +typedef struct Reg_TestMessage04 { + RegionId_t regionId; + struct Reg_TestMessage04__regExtValue { + Reg_TestMessage04__regExtValue_PR present; + union Reg_TestMessage04__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage04_t; +typedef struct Reg_TestMessage05 { + RegionId_t regionId; + struct Reg_TestMessage05__regExtValue { + Reg_TestMessage05__regExtValue_PR present; + union Reg_TestMessage05__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage05_t; +typedef struct Reg_TestMessage06 { + RegionId_t regionId; + struct Reg_TestMessage06__regExtValue { + Reg_TestMessage06__regExtValue_PR present; + union Reg_TestMessage06__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage06_t; +typedef struct Reg_TestMessage07 { + RegionId_t regionId; + struct Reg_TestMessage07__regExtValue { + Reg_TestMessage07__regExtValue_PR present; + union Reg_TestMessage07__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage07_t; +typedef struct Reg_TestMessage08 { + RegionId_t regionId; + struct Reg_TestMessage08__regExtValue { + Reg_TestMessage08__regExtValue_PR present; + union Reg_TestMessage08__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage08_t; +typedef struct Reg_TestMessage09 { + RegionId_t regionId; + struct Reg_TestMessage09__regExtValue { + Reg_TestMessage09__regExtValue_PR present; + union Reg_TestMessage09__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage09_t; +typedef struct Reg_TestMessage10 { + RegionId_t regionId; + struct Reg_TestMessage10__regExtValue { + Reg_TestMessage10__regExtValue_PR present; + union Reg_TestMessage10__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage10_t; +typedef struct Reg_TestMessage11 { + RegionId_t regionId; + struct Reg_TestMessage11__regExtValue { + Reg_TestMessage11__regExtValue_PR present; + union Reg_TestMessage11__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage11_t; +typedef struct Reg_TestMessage12 { + RegionId_t regionId; + struct Reg_TestMessage12__regExtValue { + Reg_TestMessage12__regExtValue_PR present; + union Reg_TestMessage12__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage12_t; +typedef struct Reg_TestMessage13 { + RegionId_t regionId; + struct Reg_TestMessage13__regExtValue { + Reg_TestMessage13__regExtValue_PR present; + union Reg_TestMessage13__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage13_t; +typedef struct Reg_TestMessage14 { + RegionId_t regionId; + struct Reg_TestMessage14__regExtValue { + Reg_TestMessage14__regExtValue_PR present; + union Reg_TestMessage14__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage14_t; +typedef struct Reg_TestMessage15 { + RegionId_t regionId; + struct Reg_TestMessage15__regExtValue { + Reg_TestMessage15__regExtValue_PR present; + union Reg_TestMessage15__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage15_t; +typedef struct Reg_TravelerInformation { + RegionId_t regionId; + struct Reg_TravelerInformation__regExtValue { + Reg_TravelerInformation__regExtValue_PR present; + union Reg_TravelerInformation__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TravelerInformation_t; +typedef struct Reg_GeographicalPath { + RegionId_t regionId; + struct Reg_GeographicalPath__regExtValue { + Reg_GeographicalPath__regExtValue_PR present; + union Reg_GeographicalPath__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GeographicalPath_t; +typedef struct Reg_GeometricProjection { + RegionId_t regionId; + struct Reg_GeometricProjection__regExtValue { + Reg_GeometricProjection__regExtValue_PR present; + union Reg_GeometricProjection__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GeometricProjection_t; +typedef struct Reg_NodeAttributeSetLL { + RegionId_t regionId; + struct Reg_NodeAttributeSetLL__regExtValue { + Reg_NodeAttributeSetLL__regExtValue_PR present; + union Reg_NodeAttributeSetLL__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeAttributeSetLL_t; +typedef struct Reg_NodeOffsetPointLL { + RegionId_t regionId; + struct Reg_NodeOffsetPointLL__regExtValue { + Reg_NodeOffsetPointLL__regExtValue_PR present; + union Reg_NodeOffsetPointLL__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeOffsetPointLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4; +extern asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7; +extern asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10; +extern asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13; +extern asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16; +extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19; +extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_Position3D; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22; +extern asn_TYPE_member_t asn_MBR_Reg_Position3D_22[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25; +extern asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28; +extern asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31; +extern asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34; +extern asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37; +extern asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MapData; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43; +extern asn_TYPE_member_t asn_MBR_Reg_MapData_43[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46; +extern asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52; +extern asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55; +extern asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58; +extern asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61; +extern asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64; +extern asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67; +extern asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70; +extern asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73; +extern asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76; +extern asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79; +extern asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85; +extern asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SPAT; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103; +extern asn_TYPE_member_t asn_MBR_Reg_SPAT_103[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106; +extern asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109; +extern asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115; +extern asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementState; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118; +extern asn_TYPE_member_t asn_MBR_Reg_MovementState_118[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169; +extern asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172; +extern asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175; +extern asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178; +extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181; +extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalExtension_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h new file mode 100644 index 000000000..8a461d2ae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RegulatorySpeedLimit_H_ +#define _RegulatorySpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedLimitType.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegulatorySpeedLimit */ +typedef struct RegulatorySpeedLimit { + SpeedLimitType_t type; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegulatorySpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; +extern asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegulatorySpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h new file mode 100644 index 000000000..4b19a8aaf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestID_H_ +#define _RequestID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestID */ +typedef long RequestID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestID; +asn_struct_free_f RequestID_free; +asn_struct_print_f RequestID_print; +asn_constr_check_f RequestID_constraint; +ber_type_decoder_f RequestID_decode_ber; +der_type_encoder_f RequestID_encode_der; +xer_type_decoder_f RequestID_decode_xer; +xer_type_encoder_f RequestID_encode_xer; +jer_type_encoder_f RequestID_encode_jer; +oer_type_decoder_f RequestID_decode_oer; +oer_type_encoder_f RequestID_encode_oer; +per_type_decoder_f RequestID_decode_uper; +per_type_encoder_f RequestID_encode_uper; +per_type_decoder_f RequestID_decode_aper; +per_type_encoder_f RequestID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h new file mode 100644 index 000000000..7ef476dd8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestImportanceLevel_H_ +#define _RequestImportanceLevel_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestImportanceLevel { + RequestImportanceLevel_requestImportanceLevelUnKnown = 0, + RequestImportanceLevel_requestImportanceLevel1 = 1, + RequestImportanceLevel_requestImportanceLevel2 = 2, + RequestImportanceLevel_requestImportanceLevel3 = 3, + RequestImportanceLevel_requestImportanceLevel4 = 4, + RequestImportanceLevel_requestImportanceLevel5 = 5, + RequestImportanceLevel_requestImportanceLevel6 = 6, + RequestImportanceLevel_requestImportanceLevel7 = 7, + RequestImportanceLevel_requestImportanceLevel8 = 8, + RequestImportanceLevel_requestImportanceLevel9 = 9, + RequestImportanceLevel_requestImportanceLevel10 = 10, + RequestImportanceLevel_requestImportanceLevel11 = 11, + RequestImportanceLevel_requestImportanceLevel12 = 12, + RequestImportanceLevel_requestImportanceLevel13 = 13, + RequestImportanceLevel_requestImportanceLevel14 = 14, + RequestImportanceLevel_requestImportanceReserved = 15 +} e_RequestImportanceLevel; + +/* RequestImportanceLevel */ +typedef long RequestImportanceLevel_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel; +extern const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1; +asn_struct_free_f RequestImportanceLevel_free; +asn_struct_print_f RequestImportanceLevel_print; +asn_constr_check_f RequestImportanceLevel_constraint; +ber_type_decoder_f RequestImportanceLevel_decode_ber; +der_type_encoder_f RequestImportanceLevel_encode_der; +xer_type_decoder_f RequestImportanceLevel_decode_xer; +xer_type_encoder_f RequestImportanceLevel_encode_xer; +jer_type_encoder_f RequestImportanceLevel_encode_jer; +oer_type_decoder_f RequestImportanceLevel_decode_oer; +oer_type_encoder_f RequestImportanceLevel_encode_oer; +per_type_decoder_f RequestImportanceLevel_decode_uper; +per_type_encoder_f RequestImportanceLevel_encode_uper; +per_type_decoder_f RequestImportanceLevel_decode_aper; +per_type_encoder_f RequestImportanceLevel_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestImportanceLevel_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h new file mode 100644 index 000000000..337c3962c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestSubRole_H_ +#define _RequestSubRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestSubRole { + RequestSubRole_requestSubRoleUnKnown = 0, + RequestSubRole_requestSubRole1 = 1, + RequestSubRole_requestSubRole2 = 2, + RequestSubRole_requestSubRole3 = 3, + RequestSubRole_requestSubRole4 = 4, + RequestSubRole_requestSubRole5 = 5, + RequestSubRole_requestSubRole6 = 6, + RequestSubRole_requestSubRole7 = 7, + RequestSubRole_requestSubRole8 = 8, + RequestSubRole_requestSubRole9 = 9, + RequestSubRole_requestSubRole10 = 10, + RequestSubRole_requestSubRole11 = 11, + RequestSubRole_requestSubRole12 = 12, + RequestSubRole_requestSubRole13 = 13, + RequestSubRole_requestSubRole14 = 14, + RequestSubRole_requestSubRoleReserved = 15 +} e_RequestSubRole; + +/* RequestSubRole */ +typedef long RequestSubRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestSubRole; +extern const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1; +asn_struct_free_f RequestSubRole_free; +asn_struct_print_f RequestSubRole_print; +asn_constr_check_f RequestSubRole_constraint; +ber_type_decoder_f RequestSubRole_decode_ber; +der_type_encoder_f RequestSubRole_encode_der; +xer_type_decoder_f RequestSubRole_decode_xer; +xer_type_encoder_f RequestSubRole_encode_xer; +jer_type_encoder_f RequestSubRole_encode_jer; +oer_type_decoder_f RequestSubRole_decode_oer; +oer_type_encoder_f RequestSubRole_encode_oer; +per_type_decoder_f RequestSubRole_decode_uper; +per_type_encoder_f RequestSubRole_encode_uper; +per_type_decoder_f RequestSubRole_decode_aper; +per_type_encoder_f RequestSubRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestSubRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h new file mode 100644 index 000000000..ee05f077b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestedItem_H_ +#define _RequestedItem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestedItem { + RequestedItem_reserved = 0, + RequestedItem_itemA = 1, + RequestedItem_itemB = 2, + RequestedItem_itemC = 3, + RequestedItem_itemD = 4, + RequestedItem_itemE = 5, + RequestedItem_itemF = 6, + RequestedItem_itemG = 7, + RequestedItem_itemI = 8, + RequestedItem_itemJ = 9, + RequestedItem_itemK = 10, + RequestedItem_itemL = 11, + RequestedItem_itemM = 12, + RequestedItem_itemN = 13, + RequestedItem_itemO = 14, + RequestedItem_itemP = 15, + RequestedItem_itemQ = 16 + /* + * Enumeration is extensible + */ +} e_RequestedItem; + +/* RequestedItem */ +typedef long RequestedItem_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestedItem_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; +extern const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1; +asn_struct_free_f RequestedItem_free; +asn_struct_print_f RequestedItem_print; +asn_constr_check_f RequestedItem_constraint; +ber_type_decoder_f RequestedItem_decode_ber; +der_type_encoder_f RequestedItem_encode_der; +xer_type_decoder_f RequestedItem_decode_xer; +xer_type_encoder_f RequestedItem_encode_xer; +jer_type_encoder_f RequestedItem_encode_jer; +oer_type_decoder_f RequestedItem_decode_oer; +oer_type_encoder_f RequestedItem_encode_oer; +per_type_decoder_f RequestedItem_decode_uper; +per_type_encoder_f RequestedItem_encode_uper; +per_type_decoder_f RequestedItem_decode_aper; +per_type_encoder_f RequestedItem_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h new file mode 100644 index 000000000..9dd2a0774 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestedItemList_H_ +#define _RequestedItemList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RequestedItem.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestedItemList */ +typedef struct RequestedItemList { + A_SEQUENCE_OF(RequestedItem_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestedItemList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestedItemList; +extern asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestedItemList_1[1]; +extern asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItemList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h new file mode 100644 index 000000000..ba1b69234 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestorDescription_H_ +#define _RequestorDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "DescriptiveName.h" +#include "TransitVehicleStatus.h" +#include "TransitVehicleOccupancy.h" +#include "DeltaTime.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; +struct RequestorPositionVector; +struct Reg_RequestorDescription; + +/* RequestorDescription */ +typedef struct RequestorDescription { + VehicleID_t id; + struct RequestorType *type; /* OPTIONAL */ + struct RequestorPositionVector *position; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + DescriptiveName_t *routeName; /* OPTIONAL */ + TransitVehicleStatus_t *transitStatus; /* OPTIONAL */ + TransitVehicleOccupancy_t *transitOccupancy; /* OPTIONAL */ + DeltaTime_t *transitSchedule; /* OPTIONAL */ + struct RequestorDescription__regional { + A_SEQUENCE_OF(struct Reg_RequestorDescription) 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; +} RequestorDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorDescription_1[9]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestorDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h new file mode 100644 index 000000000..a507b821b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestorPositionVector_H_ +#define _RequestorPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "Common_Angle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TransmissionAndSpeed; + +/* RequestorPositionVector */ +typedef struct RequestorPositionVector { + Position3D_t position; + Common_Angle_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestorPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h new file mode 100644 index 000000000..44f832599 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RequestorType_H_ +#define _RequestorType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleRole.h" +#include "RequestSubRole.h" +#include "RequestImportanceLevel.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_RequestorType; + +/* RequestorType */ +typedef struct RequestorType { + BasicVehicleRole_t role; + RequestSubRole_t *subrole; /* OPTIONAL */ + RequestImportanceLevel_t *request; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + struct Reg_RequestorType *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorType; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorType_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestorType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h new file mode 100644 index 000000000..ff471f2d4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ResponderGroupAffected_H_ +#define _ResponderGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponderGroupAffected { + ResponderGroupAffected_emergency_vehicle_units = 9729, + ResponderGroupAffected_federal_law_enforcement_units = 9730, + ResponderGroupAffected_state_police_units = 9731, + ResponderGroupAffected_county_police_units = 9732, + ResponderGroupAffected_local_police_units = 9733, + ResponderGroupAffected_ambulance_units = 9734, + ResponderGroupAffected_rescue_units = 9735, + ResponderGroupAffected_fire_units = 9736, + ResponderGroupAffected_hAZMAT_units = 9737, + ResponderGroupAffected_light_tow_unit = 9738, + ResponderGroupAffected_heavy_tow_unit = 9739, + ResponderGroupAffected_freeway_service_patrols = 9740, + ResponderGroupAffected_transportation_response_units = 9741, + ResponderGroupAffected_private_contractor_response_units = 9742 + /* + * Enumeration is extensible + */ +} e_ResponderGroupAffected; + +/* ResponderGroupAffected */ +typedef long ResponderGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1; +asn_struct_free_f ResponderGroupAffected_free; +asn_struct_print_f ResponderGroupAffected_print; +asn_constr_check_f ResponderGroupAffected_constraint; +ber_type_decoder_f ResponderGroupAffected_decode_ber; +der_type_encoder_f ResponderGroupAffected_encode_der; +xer_type_decoder_f ResponderGroupAffected_decode_xer; +xer_type_encoder_f ResponderGroupAffected_encode_xer; +jer_type_encoder_f ResponderGroupAffected_encode_jer; +oer_type_decoder_f ResponderGroupAffected_decode_oer; +oer_type_encoder_f ResponderGroupAffected_encode_oer; +per_type_decoder_f ResponderGroupAffected_decode_uper; +per_type_encoder_f ResponderGroupAffected_encode_uper; +per_type_decoder_f ResponderGroupAffected_decode_aper; +per_type_encoder_f ResponderGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponderGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h new file mode 100644 index 000000000..0789df901 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ResponseType_H_ +#define _ResponseType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponseType { + ResponseType_notInUseOrNotEquipped = 0, + ResponseType_emergency = 1, + ResponseType_nonEmergency = 2, + ResponseType_pursuit = 3, + ResponseType_stationary = 4, + ResponseType_slowMoving = 5, + ResponseType_stopAndGoMovement = 6 + /* + * Enumeration is extensible + */ +} e_ResponseType; + +/* ResponseType */ +typedef long ResponseType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponseType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponseType; +extern const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1; +asn_struct_free_f ResponseType_free; +asn_struct_print_f ResponseType_print; +asn_constr_check_f ResponseType_constraint; +ber_type_decoder_f ResponseType_decode_ber; +der_type_encoder_f ResponseType_encode_der; +xer_type_decoder_f ResponseType_decode_xer; +xer_type_encoder_f ResponseType_encode_xer; +jer_type_encoder_f ResponseType_encode_jer; +oer_type_decoder_f ResponseType_decode_oer; +oer_type_encoder_f ResponseType_encode_oer; +per_type_decoder_f ResponseType_decode_uper; +per_type_encoder_f ResponseType_encode_uper; +per_type_decoder_f ResponseType_decode_aper; +per_type_encoder_f ResponseType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponseType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h new file mode 100644 index 000000000..df72ab00b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionAppliesTo_H_ +#define _RestrictionAppliesTo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionAppliesTo { + RestrictionAppliesTo_none = 0, + RestrictionAppliesTo_equippedTransit = 1, + RestrictionAppliesTo_equippedTaxis = 2, + RestrictionAppliesTo_equippedOther = 3, + RestrictionAppliesTo_emissionCompliant = 4, + RestrictionAppliesTo_equippedBicycle = 5, + RestrictionAppliesTo_weightCompliant = 6, + RestrictionAppliesTo_heightCompliant = 7, + RestrictionAppliesTo_pedestrians = 8, + RestrictionAppliesTo_slowMovingPersons = 9, + RestrictionAppliesTo_wheelchairUsers = 10, + RestrictionAppliesTo_visualDisabilities = 11, + RestrictionAppliesTo_audioDisabilities = 12, + RestrictionAppliesTo_otherUnknownDisabilities = 13 + /* + * Enumeration is extensible + */ +} e_RestrictionAppliesTo; + +/* RestrictionAppliesTo */ +typedef long RestrictionAppliesTo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; +extern const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1; +asn_struct_free_f RestrictionAppliesTo_free; +asn_struct_print_f RestrictionAppliesTo_print; +asn_constr_check_f RestrictionAppliesTo_constraint; +ber_type_decoder_f RestrictionAppliesTo_decode_ber; +der_type_encoder_f RestrictionAppliesTo_encode_der; +xer_type_decoder_f RestrictionAppliesTo_decode_xer; +xer_type_encoder_f RestrictionAppliesTo_encode_xer; +jer_type_encoder_f RestrictionAppliesTo_encode_jer; +oer_type_decoder_f RestrictionAppliesTo_decode_oer; +oer_type_encoder_f RestrictionAppliesTo_encode_oer; +per_type_decoder_f RestrictionAppliesTo_decode_uper; +per_type_encoder_f RestrictionAppliesTo_encode_uper; +per_type_decoder_f RestrictionAppliesTo_decode_aper; +per_type_encoder_f RestrictionAppliesTo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionAppliesTo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h new file mode 100644 index 000000000..a88bc7fce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionClassAssignment_H_ +#define _RestrictionClassAssignment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionClassID.h" +#include "RestrictionUserTypeList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassAssignment */ +typedef struct RestrictionClassAssignment { + RestrictionClassID_t id; + RestrictionUserTypeList_t users; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassAssignment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; +extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassAssignment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h new file mode 100644 index 000000000..0a2c49ff1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionClassID_H_ +#define _RestrictionClassID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassID */ +typedef long RestrictionClassID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; +asn_struct_free_f RestrictionClassID_free; +asn_struct_print_f RestrictionClassID_print; +asn_constr_check_f RestrictionClassID_constraint; +ber_type_decoder_f RestrictionClassID_decode_ber; +der_type_encoder_f RestrictionClassID_encode_der; +xer_type_decoder_f RestrictionClassID_decode_xer; +xer_type_encoder_f RestrictionClassID_encode_xer; +jer_type_encoder_f RestrictionClassID_encode_jer; +oer_type_decoder_f RestrictionClassID_decode_oer; +oer_type_encoder_f RestrictionClassID_encode_oer; +per_type_decoder_f RestrictionClassID_decode_uper; +per_type_encoder_f RestrictionClassID_encode_uper; +per_type_decoder_f RestrictionClassID_decode_aper; +per_type_encoder_f RestrictionClassID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h new file mode 100644 index 000000000..16a6a9d70 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionClassList_H_ +#define _RestrictionClassList_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 RestrictionClassAssignment; + +/* RestrictionClassList */ +typedef struct RestrictionClassList { + A_SEQUENCE_OF(struct RestrictionClassAssignment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h new file mode 100644 index 000000000..fbb9638eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionUserType_addGrpC_H_ +#define _RestrictionUserType_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EmissionType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionUserType-addGrpC */ +typedef struct RestrictionUserType_addGrpC { + EmissionType_t *emission; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserType_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h new file mode 100644 index 000000000..0a054aab7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionUserType_H_ +#define _RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionAppliesTo.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionUserType_PR { + RestrictionUserType_PR_NOTHING, /* No components present */ + RestrictionUserType_PR_basicType, + RestrictionUserType_PR_regional + /* Extensions may appear below */ + +} RestrictionUserType_PR; + +/* Forward declarations */ +struct Reg_RestrictionUserType; + +/* RestrictionUserType */ +typedef struct RestrictionUserType { + RestrictionUserType_PR present; + union RestrictionUserType_u { + RestrictionAppliesTo_t basicType; + struct RestrictionUserType__regional { + A_SEQUENCE_OF(struct Reg_RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; +extern asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserType_1[2]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h new file mode 100644 index 000000000..987db4cd7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RestrictionUserTypeList_H_ +#define _RestrictionUserTypeList_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 RestrictionUserType; + +/* RestrictionUserTypeList */ +typedef struct RestrictionUserTypeList { + A_SEQUENCE_OF(struct RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserTypeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserTypeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h new file mode 100644 index 000000000..891d89115 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadLaneSetList_H_ +#define _RoadLaneSetList_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 GenericLane; + +/* RoadLaneSetList */ +typedef struct RoadLaneSetList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadLaneSetList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; +extern asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadLaneSetList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h new file mode 100644 index 000000000..bd52cf99c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadRegulatorID_H_ +#define _RoadRegulatorID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadRegulatorID */ +typedef long RoadRegulatorID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; +asn_struct_free_f RoadRegulatorID_free; +asn_struct_print_f RoadRegulatorID_print; +asn_constr_check_f RoadRegulatorID_constraint; +ber_type_decoder_f RoadRegulatorID_decode_ber; +der_type_encoder_f RoadRegulatorID_encode_der; +xer_type_decoder_f RoadRegulatorID_decode_xer; +xer_type_encoder_f RoadRegulatorID_encode_xer; +jer_type_encoder_f RoadRegulatorID_encode_jer; +oer_type_decoder_f RoadRegulatorID_decode_oer; +oer_type_encoder_f RoadRegulatorID_encode_oer; +per_type_decoder_f RoadRegulatorID_decode_uper; +per_type_encoder_f RoadRegulatorID_encode_uper; +per_type_decoder_f RoadRegulatorID_decode_aper; +per_type_encoder_f RoadRegulatorID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadRegulatorID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h new file mode 100644 index 000000000..de3176cce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSegment_H_ +#define _RoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "RoadSegmentReferenceID.h" +#include "Common_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "RoadLaneSetList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct Reg_RoadSegment; + +/* RoadSegment */ +typedef struct RoadSegment { + DescriptiveName_t *name; /* OPTIONAL */ + RoadSegmentReferenceID_t id; + Common_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + RoadLaneSetList_t roadLaneSet; + struct RoadSegment__regional { + A_SEQUENCE_OF(struct Reg_RoadSegment) 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; +} RoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegment_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h new file mode 100644 index 000000000..011edaabe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSegmentID_H_ +#define _RoadSegmentID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentID */ +typedef long RoadSegmentID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; +asn_struct_free_f RoadSegmentID_free; +asn_struct_print_f RoadSegmentID_print; +asn_constr_check_f RoadSegmentID_constraint; +ber_type_decoder_f RoadSegmentID_decode_ber; +der_type_encoder_f RoadSegmentID_encode_der; +xer_type_decoder_f RoadSegmentID_decode_xer; +xer_type_encoder_f RoadSegmentID_encode_xer; +jer_type_encoder_f RoadSegmentID_encode_jer; +oer_type_decoder_f RoadSegmentID_decode_oer; +oer_type_encoder_f RoadSegmentID_encode_oer; +per_type_decoder_f RoadSegmentID_decode_uper; +per_type_encoder_f RoadSegmentID_encode_uper; +per_type_decoder_f RoadSegmentID_decode_aper; +per_type_encoder_f RoadSegmentID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h new file mode 100644 index 000000000..32afed22e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSegmentList_H_ +#define _RoadSegmentList_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 RoadSegment; + +/* RoadSegmentList */ +typedef struct RoadSegmentList { + A_SEQUENCE_OF(struct RoadSegment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; +extern asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h new file mode 100644 index 000000000..90311f564 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSegmentReferenceID_H_ +#define _RoadSegmentReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "RoadSegmentID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentReferenceID */ +typedef struct RoadSegmentReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + RoadSegmentID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h new file mode 100644 index 000000000..bf4ff9e61 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RoadSideAlert" + * found in "J2735-RoadSideAlert.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSideAlert_H_ +#define _RoadSideAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "FurtherInfoID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct Reg_RoadSideAlert; + +/* RoadSideAlert */ +typedef struct RoadSideAlert { + Common_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ITIScodes_t typeEvent; + struct RoadSideAlert__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct FullPositionVector *position; /* OPTIONAL */ + FurtherInfoID_t *furtherInfoID; /* OPTIONAL */ + struct RoadSideAlert__regional { + A_SEQUENCE_OF(struct Reg_RoadSideAlert) 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; +} RoadSideAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSideAlert_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSideAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h new file mode 100644 index 000000000..2215220f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadSignID_H_ +#define _RoadSignID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "HeadingSlice.h" +#include "MUTCDCode.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSignID */ +typedef struct RoadSignID { + Position3D_t position; + HeadingSlice_t viewAngle; + MUTCDCode_t *mutcdCode; /* OPTIONAL */ + MsgCRC_t *crc; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSignID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSignID_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSignID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h new file mode 100644 index 000000000..d38be1eed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _RoadwayCrownAngle_H_ +#define _RoadwayCrownAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadwayCrownAngle */ +typedef long RoadwayCrownAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; +asn_struct_free_f RoadwayCrownAngle_free; +asn_struct_print_f RoadwayCrownAngle_print; +asn_constr_check_f RoadwayCrownAngle_constraint; +ber_type_decoder_f RoadwayCrownAngle_decode_ber; +der_type_encoder_f RoadwayCrownAngle_encode_der; +xer_type_decoder_f RoadwayCrownAngle_decode_xer; +xer_type_encoder_f RoadwayCrownAngle_encode_xer; +jer_type_encoder_f RoadwayCrownAngle_encode_jer; +oer_type_decoder_f RoadwayCrownAngle_decode_oer; +oer_type_encoder_f RoadwayCrownAngle_encode_oer; +per_type_decoder_f RoadwayCrownAngle_decode_uper; +per_type_encoder_f RoadwayCrownAngle_encode_uper; +per_type_decoder_f RoadwayCrownAngle_decode_aper; +per_type_encoder_f RoadwayCrownAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadwayCrownAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h new file mode 100644 index 000000000..5c2f0145e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SPAT_H_ +#define _SPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DescriptiveName.h" +#include "IntersectionStateList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SPAT; + +/* SPAT */ +typedef struct SPAT { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionStateList_t intersections; + struct SPAT__regional { + A_SEQUENCE_OF(struct Reg_SPAT) 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; +} SPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SPAT; +extern asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1; +extern asn_TYPE_member_t asn_MBR_SPAT_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h new file mode 100644 index 000000000..021a5c2cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SPAT_TimeMark_H_ +#define _SPAT_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SPAT_TimeMark */ +typedef long SPAT_TimeMark_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark; +asn_struct_free_f SPAT_TimeMark_free; +asn_struct_print_f SPAT_TimeMark_print; +asn_constr_check_f SPAT_TimeMark_constraint; +ber_type_decoder_f SPAT_TimeMark_decode_ber; +der_type_encoder_f SPAT_TimeMark_encode_der; +xer_type_decoder_f SPAT_TimeMark_decode_xer; +xer_type_encoder_f SPAT_TimeMark_encode_xer; +jer_type_encoder_f SPAT_TimeMark_encode_jer; +oer_type_decoder_f SPAT_TimeMark_decode_oer; +oer_type_encoder_f SPAT_TimeMark_encode_oer; +per_type_decoder_f SPAT_TimeMark_decode_uper; +per_type_encoder_f SPAT_TimeMark_encode_uper; +per_type_decoder_f SPAT_TimeMark_decode_aper; +per_type_encoder_f SPAT_TimeMark_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SPAT_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h new file mode 100644 index 000000000..81eb2cb3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SSPindex_H_ +#define _SSPindex_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SSPindex */ +typedef long SSPindex_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SSPindex_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SSPindex; +asn_struct_free_f SSPindex_free; +asn_struct_print_f SSPindex_print; +asn_constr_check_f SSPindex_constraint; +ber_type_decoder_f SSPindex_decode_ber; +der_type_encoder_f SSPindex_encode_der; +xer_type_decoder_f SSPindex_decode_xer; +xer_type_encoder_f SSPindex_encode_xer; +jer_type_encoder_f SSPindex_encode_jer; +oer_type_decoder_f SSPindex_decode_oer; +oer_type_encoder_f SSPindex_encode_oer; +per_type_decoder_f SSPindex_decode_uper; +per_type_encoder_f SSPindex_encode_uper; +per_type_decoder_f SSPindex_decode_aper; +per_type_encoder_f SSPindex_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SSPindex_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h new file mode 100644 index 000000000..3afe1b9da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Sample_H_ +#define _Sample_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Sample */ +typedef struct Sample { + long sampleStart; + long sampleEnd; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Sample_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Sample; +extern asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1; +extern asn_TYPE_member_t asn_MBR_Sample_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Sample_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h new file mode 100644 index 000000000..5b3502eb6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Scale_B12_H_ +#define _Scale_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Scale-B12 */ +typedef long Scale_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Scale_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; +asn_struct_free_f Scale_B12_free; +asn_struct_print_f Scale_B12_print; +asn_constr_check_f Scale_B12_constraint; +ber_type_decoder_f Scale_B12_decode_ber; +der_type_encoder_f Scale_B12_encode_der; +xer_type_decoder_f Scale_B12_decode_xer; +xer_type_encoder_f Scale_B12_encode_xer; +jer_type_encoder_f Scale_B12_encode_jer; +oer_type_decoder_f Scale_B12_decode_oer; +oer_type_encoder_f Scale_B12_encode_oer; +per_type_decoder_f Scale_B12_decode_uper; +per_type_encoder_f Scale_B12_encode_uper; +per_type_decoder_f Scale_B12_decode_aper; +per_type_encoder_f Scale_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Scale_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h new file mode 100644 index 000000000..4f2b7ef9e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Second_H_ +#define _Second_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Second */ +typedef long Second_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Second_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Second; +asn_struct_free_f Second_free; +asn_struct_print_f Second_print; +asn_constr_check_f Second_constraint; +ber_type_decoder_f Second_decode_ber; +der_type_encoder_f Second_encode_der; +xer_type_decoder_f Second_decode_xer; +xer_type_encoder_f Second_encode_xer; +jer_type_encoder_f Second_encode_jer; +oer_type_decoder_f Second_decode_oer; +oer_type_encoder_f Second_encode_oer; +per_type_decoder_f Second_decode_uper; +per_type_encoder_f Second_encode_uper; +per_type_decoder_f Second_decode_aper; +per_type_encoder_f Second_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Second_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h new file mode 100644 index 000000000..d6ebce972 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SecondOfTime_H_ +#define _SecondOfTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondOfTime */ +typedef long SecondOfTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondOfTime; +asn_struct_free_f SecondOfTime_free; +asn_struct_print_f SecondOfTime_print; +asn_constr_check_f SecondOfTime_constraint; +ber_type_decoder_f SecondOfTime_decode_ber; +der_type_encoder_f SecondOfTime_encode_der; +xer_type_decoder_f SecondOfTime_decode_xer; +xer_type_encoder_f SecondOfTime_encode_xer; +jer_type_encoder_f SecondOfTime_encode_jer; +oer_type_decoder_f SecondOfTime_decode_oer; +oer_type_encoder_f SecondOfTime_encode_oer; +per_type_decoder_f SecondOfTime_decode_uper; +per_type_encoder_f SecondOfTime_encode_uper; +per_type_decoder_f SecondOfTime_decode_aper; +per_type_encoder_f SecondOfTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondOfTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h new file mode 100644 index 000000000..0aa500f44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SecondsAngle_H_ +#define _SecondsAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondsAngle */ +typedef long SecondsAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; +asn_struct_free_f SecondsAngle_free; +asn_struct_print_f SecondsAngle_print; +asn_constr_check_f SecondsAngle_constraint; +ber_type_decoder_f SecondsAngle_decode_ber; +der_type_encoder_f SecondsAngle_encode_der; +xer_type_decoder_f SecondsAngle_decode_xer; +xer_type_encoder_f SecondsAngle_encode_xer; +jer_type_encoder_f SecondsAngle_encode_jer; +oer_type_decoder_f SecondsAngle_decode_oer; +oer_type_encoder_f SecondsAngle_encode_oer; +per_type_decoder_f SecondsAngle_decode_uper; +per_type_encoder_f SecondsAngle_encode_uper; +per_type_decoder_f SecondsAngle_decode_aper; +per_type_encoder_f SecondsAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondsAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h new file mode 100644 index 000000000..7cf1048d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SegmentAttributeLL_H_ +#define _SegmentAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeLL { + SegmentAttributeLL_reserved = 0, + SegmentAttributeLL_doNotBlock = 1, + SegmentAttributeLL_whiteLine = 2, + SegmentAttributeLL_mergingLaneLeft = 3, + SegmentAttributeLL_mergingLaneRight = 4, + SegmentAttributeLL_curbOnLeft = 5, + SegmentAttributeLL_curbOnRight = 6, + SegmentAttributeLL_loadingzoneOnLeft = 7, + SegmentAttributeLL_loadingzoneOnRight = 8, + SegmentAttributeLL_turnOutPointOnLeft = 9, + SegmentAttributeLL_turnOutPointOnRight = 10, + SegmentAttributeLL_adjacentParkingOnLeft = 11, + SegmentAttributeLL_adjacentParkingOnRight = 12, + SegmentAttributeLL_adjacentBikeLaneOnLeft = 13, + SegmentAttributeLL_adjacentBikeLaneOnRight = 14, + SegmentAttributeLL_sharedBikeLane = 15, + SegmentAttributeLL_bikeBoxInFront = 16, + SegmentAttributeLL_transitStopOnLeft = 17, + SegmentAttributeLL_transitStopOnRight = 18, + SegmentAttributeLL_transitStopInLane = 19, + SegmentAttributeLL_sharedWithTrackedVehicle = 20, + SegmentAttributeLL_safeIsland = 21, + SegmentAttributeLL_lowCurbsPresent = 22, + SegmentAttributeLL_rumbleStripPresent = 23, + SegmentAttributeLL_audibleSignalingPresent = 24, + SegmentAttributeLL_adaptiveTimingPresent = 25, + SegmentAttributeLL_rfSignalRequestPresent = 26, + SegmentAttributeLL_partialCurbIntrusion = 27, + SegmentAttributeLL_taperToLeft = 28, + SegmentAttributeLL_taperToRight = 29, + SegmentAttributeLL_taperToCenterLine = 30, + SegmentAttributeLL_parallelParking = 31, + SegmentAttributeLL_headInParking = 32, + SegmentAttributeLL_freeParking = 33, + SegmentAttributeLL_timeRestrictionsOnParking = 34, + SegmentAttributeLL_costToPark = 35, + SegmentAttributeLL_midBlockCurbPresent = 36, + SegmentAttributeLL_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeLL; + +/* SegmentAttributeLL */ +typedef long SegmentAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1; +asn_struct_free_f SegmentAttributeLL_free; +asn_struct_print_f SegmentAttributeLL_print; +asn_constr_check_f SegmentAttributeLL_constraint; +ber_type_decoder_f SegmentAttributeLL_decode_ber; +der_type_encoder_f SegmentAttributeLL_encode_der; +xer_type_decoder_f SegmentAttributeLL_decode_xer; +xer_type_encoder_f SegmentAttributeLL_encode_xer; +jer_type_encoder_f SegmentAttributeLL_encode_jer; +oer_type_decoder_f SegmentAttributeLL_decode_oer; +oer_type_encoder_f SegmentAttributeLL_encode_oer; +per_type_decoder_f SegmentAttributeLL_decode_uper; +per_type_encoder_f SegmentAttributeLL_encode_uper; +per_type_decoder_f SegmentAttributeLL_decode_aper; +per_type_encoder_f SegmentAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h new file mode 100644 index 000000000..9218d9ada --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SegmentAttributeLLList_H_ +#define _SegmentAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeLLList */ +typedef struct SegmentAttributeLLList { + A_SEQUENCE_OF(SegmentAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h new file mode 100644 index 000000000..1185eb5ab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SegmentAttributeXY_H_ +#define _SegmentAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeXY { + SegmentAttributeXY_reserved = 0, + SegmentAttributeXY_doNotBlock = 1, + SegmentAttributeXY_whiteLine = 2, + SegmentAttributeXY_mergingLaneLeft = 3, + SegmentAttributeXY_mergingLaneRight = 4, + SegmentAttributeXY_curbOnLeft = 5, + SegmentAttributeXY_curbOnRight = 6, + SegmentAttributeXY_loadingzoneOnLeft = 7, + SegmentAttributeXY_loadingzoneOnRight = 8, + SegmentAttributeXY_turnOutPointOnLeft = 9, + SegmentAttributeXY_turnOutPointOnRight = 10, + SegmentAttributeXY_adjacentParkingOnLeft = 11, + SegmentAttributeXY_adjacentParkingOnRight = 12, + SegmentAttributeXY_adjacentBikeLaneOnLeft = 13, + SegmentAttributeXY_adjacentBikeLaneOnRight = 14, + SegmentAttributeXY_sharedBikeLane = 15, + SegmentAttributeXY_bikeBoxInFront = 16, + SegmentAttributeXY_transitStopOnLeft = 17, + SegmentAttributeXY_transitStopOnRight = 18, + SegmentAttributeXY_transitStopInLane = 19, + SegmentAttributeXY_sharedWithTrackedVehicle = 20, + SegmentAttributeXY_safeIsland = 21, + SegmentAttributeXY_lowCurbsPresent = 22, + SegmentAttributeXY_rumbleStripPresent = 23, + SegmentAttributeXY_audibleSignalingPresent = 24, + SegmentAttributeXY_adaptiveTimingPresent = 25, + SegmentAttributeXY_rfSignalRequestPresent = 26, + SegmentAttributeXY_partialCurbIntrusion = 27, + SegmentAttributeXY_taperToLeft = 28, + SegmentAttributeXY_taperToRight = 29, + SegmentAttributeXY_taperToCenterLine = 30, + SegmentAttributeXY_parallelParking = 31, + SegmentAttributeXY_headInParking = 32, + SegmentAttributeXY_freeParking = 33, + SegmentAttributeXY_timeRestrictionsOnParking = 34, + SegmentAttributeXY_costToPark = 35, + SegmentAttributeXY_midBlockCurbPresent = 36, + SegmentAttributeXY_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeXY; + +/* SegmentAttributeXY */ +typedef long SegmentAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1; +asn_struct_free_f SegmentAttributeXY_free; +asn_struct_print_f SegmentAttributeXY_print; +asn_constr_check_f SegmentAttributeXY_constraint; +ber_type_decoder_f SegmentAttributeXY_decode_ber; +der_type_encoder_f SegmentAttributeXY_encode_der; +xer_type_decoder_f SegmentAttributeXY_decode_xer; +xer_type_encoder_f SegmentAttributeXY_encode_xer; +jer_type_encoder_f SegmentAttributeXY_encode_jer; +oer_type_decoder_f SegmentAttributeXY_decode_oer; +oer_type_encoder_f SegmentAttributeXY_encode_oer; +per_type_decoder_f SegmentAttributeXY_decode_uper; +per_type_encoder_f SegmentAttributeXY_encode_uper; +per_type_decoder_f SegmentAttributeXY_decode_aper; +per_type_encoder_f SegmentAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h new file mode 100644 index 000000000..5f7852d90 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SegmentAttributeXYList_H_ +#define _SegmentAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeXYList */ +typedef struct SegmentAttributeXYList { + A_SEQUENCE_OF(SegmentAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h new file mode 100644 index 000000000..1e3602025 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SemiMajorAxisAccuracy_H_ +#define _SemiMajorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisAccuracy */ +typedef long SemiMajorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy; +asn_struct_free_f SemiMajorAxisAccuracy_free; +asn_struct_print_f SemiMajorAxisAccuracy_print; +asn_constr_check_f SemiMajorAxisAccuracy_constraint; +ber_type_decoder_f SemiMajorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMajorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMajorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMajorAxisAccuracy_encode_xer; +jer_type_encoder_f SemiMajorAxisAccuracy_encode_jer; +oer_type_decoder_f SemiMajorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMajorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMajorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMajorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h new file mode 100644 index 000000000..a4da71f26 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SemiMajorAxisOrientation_H_ +#define _SemiMajorAxisOrientation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisOrientation */ +typedef long SemiMajorAxisOrientation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation; +asn_struct_free_f SemiMajorAxisOrientation_free; +asn_struct_print_f SemiMajorAxisOrientation_print; +asn_constr_check_f SemiMajorAxisOrientation_constraint; +ber_type_decoder_f SemiMajorAxisOrientation_decode_ber; +der_type_encoder_f SemiMajorAxisOrientation_encode_der; +xer_type_decoder_f SemiMajorAxisOrientation_decode_xer; +xer_type_encoder_f SemiMajorAxisOrientation_encode_xer; +jer_type_encoder_f SemiMajorAxisOrientation_encode_jer; +oer_type_decoder_f SemiMajorAxisOrientation_decode_oer; +oer_type_encoder_f SemiMajorAxisOrientation_encode_oer; +per_type_decoder_f SemiMajorAxisOrientation_decode_uper; +per_type_encoder_f SemiMajorAxisOrientation_encode_uper; +per_type_decoder_f SemiMajorAxisOrientation_decode_aper; +per_type_encoder_f SemiMajorAxisOrientation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisOrientation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h new file mode 100644 index 000000000..1e1aeae65 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SemiMinorAxisAccuracy_H_ +#define _SemiMinorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMinorAxisAccuracy */ +typedef long SemiMinorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy; +asn_struct_free_f SemiMinorAxisAccuracy_free; +asn_struct_print_f SemiMinorAxisAccuracy_print; +asn_constr_check_f SemiMinorAxisAccuracy_constraint; +ber_type_decoder_f SemiMinorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMinorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMinorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMinorAxisAccuracy_encode_xer; +jer_type_encoder_f SemiMinorAxisAccuracy_encode_jer; +oer_type_decoder_f SemiMinorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMinorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMinorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMinorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMinorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h new file mode 100644 index 000000000..3c99479f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ShapePointSet_H_ +#define _ShapePointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "NodeListXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* ShapePointSet */ +typedef struct ShapePointSet { + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + NodeListXY_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ShapePointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ShapePointSet_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ShapePointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h new file mode 100644 index 000000000..c02578caf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignPrority_H_ +#define _SignPrority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignPrority */ +typedef long SignPrority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignPrority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignPrority; +asn_struct_free_f SignPrority_free; +asn_struct_print_f SignPrority_print; +asn_constr_check_f SignPrority_constraint; +ber_type_decoder_f SignPrority_decode_ber; +der_type_encoder_f SignPrority_encode_der; +xer_type_decoder_f SignPrority_decode_xer; +xer_type_encoder_f SignPrority_encode_xer; +jer_type_encoder_f SignPrority_encode_jer; +oer_type_decoder_f SignPrority_decode_oer; +oer_type_encoder_f SignPrority_encode_oer; +per_type_decoder_f SignPrority_decode_uper; +per_type_encoder_f SignPrority_encode_uper; +per_type_decoder_f SignPrority_decode_aper; +per_type_encoder_f SignPrority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignPrority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h new file mode 100644 index 000000000..5308c92b7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalControlZone_H_ +#define _SignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionalExtension.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalControlZone */ +typedef struct SignalControlZone { + Reg_SignalControlZone_t zone; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalControlZone_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h new file mode 100644 index 000000000..0f5ea9eef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalGroupID_H_ +#define _SignalGroupID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalGroupID */ +typedef long SignalGroupID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; +asn_struct_free_f SignalGroupID_free; +asn_struct_print_f SignalGroupID_print; +asn_constr_check_f SignalGroupID_constraint; +ber_type_decoder_f SignalGroupID_decode_ber; +der_type_encoder_f SignalGroupID_encode_der; +xer_type_decoder_f SignalGroupID_decode_xer; +xer_type_encoder_f SignalGroupID_encode_xer; +jer_type_encoder_f SignalGroupID_encode_jer; +oer_type_decoder_f SignalGroupID_decode_oer; +oer_type_encoder_f SignalGroupID_encode_oer; +per_type_decoder_f SignalGroupID_decode_uper; +per_type_encoder_f SignalGroupID_encode_uper; +per_type_decoder_f SignalGroupID_decode_aper; +per_type_encoder_f SignalGroupID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalGroupID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h new file mode 100644 index 000000000..063808245 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalHeadLocation_H_ +#define _SignalHeadLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalHeadLocation */ +typedef struct SignalHeadLocation { + NodeOffsetPointXY_t node; + SignalGroupID_t signalGroupID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalHeadLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h new file mode 100644 index 000000000..7f827c8fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalHeadLocationList_H_ +#define _SignalHeadLocationList_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 SignalHeadLocation; + +/* SignalHeadLocationList */ +typedef struct SignalHeadLocationList { + A_SEQUENCE_OF(struct SignalHeadLocation) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocationList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; +extern asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalHeadLocationList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h new file mode 100644 index 000000000..af28c49eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalReqScheme_H_ +#define _SignalReqScheme_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalReqScheme */ +typedef OCTET_STRING_t SignalReqScheme_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; +asn_struct_free_f SignalReqScheme_free; +asn_struct_print_f SignalReqScheme_print; +asn_constr_check_f SignalReqScheme_constraint; +ber_type_decoder_f SignalReqScheme_decode_ber; +der_type_encoder_f SignalReqScheme_encode_der; +xer_type_decoder_f SignalReqScheme_decode_xer; +xer_type_encoder_f SignalReqScheme_encode_xer; +jer_type_encoder_f SignalReqScheme_encode_jer; +oer_type_decoder_f SignalReqScheme_decode_oer; +oer_type_encoder_f SignalReqScheme_encode_oer; +per_type_decoder_f SignalReqScheme_decode_uper; +per_type_encoder_f SignalReqScheme_encode_uper; +per_type_decoder_f SignalReqScheme_decode_aper; +per_type_encoder_f SignalReqScheme_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalReqScheme_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h new file mode 100644 index 000000000..5d984ae13 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalRequest_H_ +#define _SignalRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionReferenceID.h" +#include "RequestID.h" +#include "PriorityRequestType.h" +#include "IntersectionAccessPoint.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionAccessPoint; +struct Reg_SignalRequest; + +/* SignalRequest */ +typedef struct SignalRequest { + IntersectionReferenceID_t id; + RequestID_t requestID; + PriorityRequestType_t requestType; + IntersectionAccessPoint_t inBoundLane; + struct IntersectionAccessPoint *outBoundLane; /* OPTIONAL */ + struct SignalRequest__regional { + A_SEQUENCE_OF(struct Reg_SignalRequest) 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; +} SignalRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequest_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h new file mode 100644 index 000000000..845632c1c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalRequestList_H_ +#define _SignalRequestList_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 SignalRequestPackage; + +/* SignalRequestList */ +typedef struct SignalRequestList { + A_SEQUENCE_OF(struct SignalRequestPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestList; +extern asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h new file mode 100644 index 000000000..fbf2bc7ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalRequestMessage_H_ +#define _SignalRequestMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "RequestorDescription.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequestList; +struct Reg_SignalRequestMessage; + +/* SignalRequestMessage */ +typedef struct SignalRequestMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ + struct SignalRequestList *requests; /* OPTIONAL */ + RequestorDescription_t requestor; + struct SignalRequestMessage__regional { + A_SEQUENCE_OF(struct Reg_SignalRequestMessage) 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; +} SignalRequestMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequestMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h new file mode 100644 index 000000000..01d2d3ed8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalRequestPackage_H_ +#define _SignalRequestPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SignalRequest.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalRequestPackage; + +/* SignalRequestPackage */ +typedef struct SignalRequestPackage { + SignalRequest_t request; + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + struct SignalRequestPackage__regional { + A_SEQUENCE_OF(struct Reg_SignalRequestPackage) 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; +} SignalRequestPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequestPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h new file mode 100644 index 000000000..9d05a6752 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalRequesterInfo_H_ +#define _SignalRequesterInfo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "RequestID.h" +#include "Common_MsgCount.h" +#include "BasicVehicleRole.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; + +/* SignalRequesterInfo */ +typedef struct SignalRequesterInfo { + VehicleID_t id; + RequestID_t request; + Common_MsgCount_t sequenceNumber; + BasicVehicleRole_t *role; /* OPTIONAL */ + struct RequestorType *typeData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequesterInfo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequesterInfo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h new file mode 100644 index 000000000..814eedd4a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalStatus_H_ +#define _SignalStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "IntersectionReferenceID.h" +#include "SignalStatusPackageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalStatus; + +/* SignalStatus */ +typedef struct SignalStatus { + Common_MsgCount_t sequenceNumber; + IntersectionReferenceID_t id; + SignalStatusPackageList_t sigStatus; + struct SignalStatus__regional { + A_SEQUENCE_OF(struct Reg_SignalStatus) 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; +} SignalStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatus_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h new file mode 100644 index 000000000..10e86d63a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalStatusList_H_ +#define _SignalStatusList_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 SignalStatus; + +/* SignalStatusList */ +typedef struct SignalStatusList { + A_SEQUENCE_OF(struct SignalStatus) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalStatusList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h new file mode 100644 index 000000000..ea87e3ce7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalStatusMessage_H_ +#define _SignalStatusMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "SignalStatusList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalStatusMessage; + +/* SignalStatusMessage */ +typedef struct SignalStatusMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ + SignalStatusList_t status; + struct SignalStatusMessage__regional { + A_SEQUENCE_OF(struct Reg_SignalStatusMessage) 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; +} SignalStatusMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalStatusMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h new file mode 100644 index 000000000..9351d7de5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalStatusPackage_H_ +#define _SignalStatusPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionAccessPoint.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "PrioritizationResponseStatus.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequesterInfo; +struct IntersectionAccessPoint; +struct Reg_SignalStatusPackage; + +/* SignalStatusPackage */ +typedef struct SignalStatusPackage { + struct SignalRequesterInfo *requester; /* OPTIONAL */ + IntersectionAccessPoint_t inboundOn; + struct IntersectionAccessPoint *outboundOn; /* OPTIONAL */ + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + PrioritizationResponseStatus_t status; + struct SignalStatusPackage__regional { + A_SEQUENCE_OF(struct Reg_SignalStatusPackage) 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; +} SignalStatusPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalStatusPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h new file mode 100644 index 000000000..043cbe1df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SignalStatusPackageList_H_ +#define _SignalStatusPackageList_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 SignalStatusPackage; + +/* SignalStatusPackageList */ +typedef struct SignalStatusPackageList { + A_SEQUENCE_OF(struct SignalStatusPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusPackageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalStatusPackageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h new file mode 100644 index 000000000..d24a8bcaa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SirenInUse_H_ +#define _SirenInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SirenInUse { + SirenInUse_unavailable = 0, + SirenInUse_notInUse = 1, + SirenInUse_inUse = 2, + SirenInUse_reserved = 3 +} e_SirenInUse; + +/* SirenInUse */ +typedef long SirenInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SirenInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; +extern const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1; +asn_struct_free_f SirenInUse_free; +asn_struct_print_f SirenInUse_print; +asn_constr_check_f SirenInUse_constraint; +ber_type_decoder_f SirenInUse_decode_ber; +der_type_encoder_f SirenInUse_encode_der; +xer_type_decoder_f SirenInUse_decode_xer; +xer_type_encoder_f SirenInUse_encode_xer; +jer_type_encoder_f SirenInUse_encode_jer; +oer_type_decoder_f SirenInUse_decode_oer; +oer_type_encoder_f SirenInUse_encode_oer; +per_type_decoder_f SirenInUse_decode_uper; +per_type_encoder_f SirenInUse_encode_uper; +per_type_decoder_f SirenInUse_decode_aper; +per_type_encoder_f SirenInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SirenInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h new file mode 100644 index 000000000..26723318d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Snapshot_H_ +#define _Snapshot_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "FullPositionVector.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtensions; +struct VehicleStatus; + +/* Snapshot */ +typedef struct Snapshot { + FullPositionVector_t thePosition; + struct VehicleSafetyExtensions *safetyExt; /* OPTIONAL */ + struct VehicleStatus *dataSet; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Snapshot_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Snapshot; +extern asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1; +extern asn_TYPE_member_t asn_MBR_Snapshot_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Snapshot_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h new file mode 100644 index 000000000..b6371ef0c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SnapshotDistance_H_ +#define _SnapshotDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossDistance.h" +#include "GrossSpeed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotDistance */ +typedef struct SnapshotDistance { + GrossDistance_t distance1; + GrossSpeed_t speed1; + GrossDistance_t distance2; + GrossSpeed_t speed2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotDistance_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h new file mode 100644 index 000000000..fa8e83995 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SnapshotTime_H_ +#define _SnapshotTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" +#include "SecondOfTime.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotTime */ +typedef struct SnapshotTime { + GrossSpeed_t speed1; + SecondOfTime_t time1; + GrossSpeed_t speed2; + SecondOfTime_t time2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotTime_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h new file mode 100644 index 000000000..a2083c435 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpecialVehicleExtensions_H_ +#define _SpecialVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct EventDescription; +struct TrailerData; + +/* SpecialVehicleExtensions */ +typedef struct SpecialVehicleExtensions { + struct EmergencyDetails *vehicleAlerts; /* OPTIONAL */ + struct EventDescription *description; /* OPTIONAL */ + struct TrailerData *trailers; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpecialVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpecialVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h new file mode 100644 index 000000000..e1e794315 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Speed_H_ +#define _Speed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Speed */ +typedef long Speed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Speed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Speed; +asn_struct_free_f Speed_free; +asn_struct_print_f Speed_print; +asn_constr_check_f Speed_constraint; +ber_type_decoder_f Speed_decode_ber; +der_type_encoder_f Speed_encode_der; +xer_type_decoder_f Speed_decode_xer; +xer_type_encoder_f Speed_encode_xer; +jer_type_encoder_f Speed_encode_jer; +oer_type_decoder_f Speed_decode_oer; +oer_type_encoder_f Speed_encode_oer; +per_type_decoder_f Speed_decode_uper; +per_type_encoder_f Speed_encode_uper; +per_type_decoder_f Speed_decode_aper; +per_type_encoder_f Speed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Speed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h new file mode 100644 index 000000000..762d8fb46 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedAdvice_H_ +#define _SpeedAdvice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedAdvice */ +typedef long SpeedAdvice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; +asn_struct_free_f SpeedAdvice_free; +asn_struct_print_f SpeedAdvice_print; +asn_constr_check_f SpeedAdvice_constraint; +ber_type_decoder_f SpeedAdvice_decode_ber; +der_type_encoder_f SpeedAdvice_encode_der; +xer_type_decoder_f SpeedAdvice_decode_xer; +xer_type_encoder_f SpeedAdvice_encode_xer; +jer_type_encoder_f SpeedAdvice_encode_jer; +oer_type_decoder_f SpeedAdvice_decode_oer; +oer_type_encoder_f SpeedAdvice_encode_oer; +per_type_decoder_f SpeedAdvice_decode_uper; +per_type_encoder_f SpeedAdvice_encode_uper; +per_type_decoder_f SpeedAdvice_decode_aper; +per_type_encoder_f SpeedAdvice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedAdvice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h new file mode 100644 index 000000000..afeef9708 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedConfidence_H_ +#define _SpeedConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedConfidence { + SpeedConfidence_unavailable = 0, + SpeedConfidence_prec100ms = 1, + SpeedConfidence_prec10ms = 2, + SpeedConfidence_prec5ms = 3, + SpeedConfidence_prec1ms = 4, + SpeedConfidence_prec0_1ms = 5, + SpeedConfidence_prec0_05ms = 6, + SpeedConfidence_prec0_01ms = 7 +} e_SpeedConfidence; + +/* SpeedConfidence */ +typedef long SpeedConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1; +asn_struct_free_f SpeedConfidence_free; +asn_struct_print_f SpeedConfidence_print; +asn_constr_check_f SpeedConfidence_constraint; +ber_type_decoder_f SpeedConfidence_decode_ber; +der_type_encoder_f SpeedConfidence_encode_der; +xer_type_decoder_f SpeedConfidence_decode_xer; +xer_type_encoder_f SpeedConfidence_encode_xer; +jer_type_encoder_f SpeedConfidence_encode_jer; +oer_type_decoder_f SpeedConfidence_decode_oer; +oer_type_encoder_f SpeedConfidence_encode_oer; +per_type_decoder_f SpeedConfidence_decode_uper; +per_type_encoder_f SpeedConfidence_encode_uper; +per_type_decoder_f SpeedConfidence_decode_aper; +per_type_encoder_f SpeedConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h new file mode 100644 index 000000000..092cda89d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedLimit_H_ +#define _SpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimit__Member__item_PR { + SpeedLimit__Member__item_PR_NOTHING, /* No components present */ + SpeedLimit__Member__item_PR_itis, + SpeedLimit__Member__item_PR_text +} SpeedLimit__Member__item_PR; + +/* Forward definitions */ +typedef struct SpeedLimit__Member { + struct SpeedLimit__Member__item { + SpeedLimit__Member__item_PR present; + union SpeedLimit__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit__Member; + +/* SpeedLimit */ +typedef struct SpeedLimit { + A_SEQUENCE_OF(SpeedLimit__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimit_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h new file mode 100644 index 000000000..50be68c00 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedLimitList_H_ +#define _SpeedLimitList_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 RegulatorySpeedLimit; + +/* SpeedLimitList */ +typedef struct SpeedLimitList { + A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimitList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimitList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimitList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h new file mode 100644 index 000000000..3ecede65d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedLimitType_H_ +#define _SpeedLimitType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimitType { + SpeedLimitType_unknown = 0, + SpeedLimitType_maxSpeedInSchoolZone = 1, + SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, + SpeedLimitType_maxSpeedInConstructionZone = 3, + SpeedLimitType_vehicleMinSpeed = 4, + SpeedLimitType_vehicleMaxSpeed = 5, + SpeedLimitType_vehicleNightMaxSpeed = 6, + SpeedLimitType_truckMinSpeed = 7, + SpeedLimitType_truckMaxSpeed = 8, + SpeedLimitType_truckNightMaxSpeed = 9, + SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, + SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, + SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 + /* + * Enumeration is extensible + */ +} e_SpeedLimitType; + +/* SpeedLimitType */ +typedef long SpeedLimitType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1; +asn_struct_free_f SpeedLimitType_free; +asn_struct_print_f SpeedLimitType_print; +asn_constr_check_f SpeedLimitType_constraint; +ber_type_decoder_f SpeedLimitType_decode_ber; +der_type_encoder_f SpeedLimitType_encode_der; +xer_type_decoder_f SpeedLimitType_decode_xer; +xer_type_encoder_f SpeedLimitType_encode_xer; +jer_type_encoder_f SpeedLimitType_encode_jer; +oer_type_decoder_f SpeedLimitType_decode_oer; +oer_type_encoder_f SpeedLimitType_encode_oer; +per_type_decoder_f SpeedLimitType_decode_uper; +per_type_encoder_f SpeedLimitType_encode_uper; +per_type_decoder_f SpeedLimitType_decode_aper; +per_type_encoder_f SpeedLimitType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimitType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h new file mode 100644 index 000000000..4c4c122ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedProfile_H_ +#define _SpeedProfile_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurementList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfile */ +typedef struct SpeedProfile { + SpeedProfileMeasurementList_t speedReports; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfile_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfile; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfile_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfile_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h new file mode 100644 index 000000000..df04dbca0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedProfileMeasurement_H_ +#define _SpeedProfileMeasurement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurement */ +typedef GrossSpeed_t SpeedProfileMeasurement_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement; +asn_struct_free_f SpeedProfileMeasurement_free; +asn_struct_print_f SpeedProfileMeasurement_print; +asn_constr_check_f SpeedProfileMeasurement_constraint; +ber_type_decoder_f SpeedProfileMeasurement_decode_ber; +der_type_encoder_f SpeedProfileMeasurement_encode_der; +xer_type_decoder_f SpeedProfileMeasurement_decode_xer; +xer_type_encoder_f SpeedProfileMeasurement_encode_xer; +jer_type_encoder_f SpeedProfileMeasurement_encode_jer; +oer_type_decoder_f SpeedProfileMeasurement_decode_oer; +oer_type_encoder_f SpeedProfileMeasurement_encode_oer; +per_type_decoder_f SpeedProfileMeasurement_decode_uper; +per_type_encoder_f SpeedProfileMeasurement_encode_uper; +per_type_decoder_f SpeedProfileMeasurement_decode_aper; +per_type_encoder_f SpeedProfileMeasurement_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h new file mode 100644 index 000000000..7586f003b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedProfileMeasurementList_H_ +#define _SpeedProfileMeasurementList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurement.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurementList */ +typedef struct SpeedProfileMeasurementList { + A_SEQUENCE_OF(SpeedProfileMeasurement_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfileMeasurementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h new file mode 100644 index 000000000..4b0667a37 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SpeedandHeadingandThrottleConfidence_H_ +#define _SpeedandHeadingandThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingConfidence.h" +#include "SpeedConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedandHeadingandThrottleConfidence */ +typedef struct SpeedandHeadingandThrottleConfidence { + HeadingConfidence_t heading; + SpeedConfidence_t speed; + ThrottleConfidence_t throttle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedandHeadingandThrottleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h new file mode 100644 index 000000000..b9f90c5bf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _StabilityControlStatus_H_ +#define _StabilityControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum StabilityControlStatus { + StabilityControlStatus_unavailable = 0, + StabilityControlStatus_off = 1, + StabilityControlStatus_on = 2, + StabilityControlStatus_engaged = 3 +} e_StabilityControlStatus; + +/* StabilityControlStatus */ +typedef long StabilityControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1; +asn_struct_free_f StabilityControlStatus_free; +asn_struct_print_f StabilityControlStatus_print; +asn_constr_check_f StabilityControlStatus_constraint; +ber_type_decoder_f StabilityControlStatus_decode_ber; +der_type_encoder_f StabilityControlStatus_encode_der; +xer_type_decoder_f StabilityControlStatus_decode_xer; +xer_type_encoder_f StabilityControlStatus_encode_xer; +jer_type_encoder_f StabilityControlStatus_encode_jer; +oer_type_decoder_f StabilityControlStatus_decode_oer; +oer_type_encoder_f StabilityControlStatus_encode_oer; +per_type_decoder_f StabilityControlStatus_decode_uper; +per_type_encoder_f StabilityControlStatus_encode_uper; +per_type_decoder_f StabilityControlStatus_decode_aper; +per_type_encoder_f StabilityControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StabilityControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h new file mode 100644 index 000000000..df8faaa6b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _StationID_H_ +#define _StationID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* StationID */ +typedef unsigned long StationID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StationID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StationID; +extern const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1; +asn_struct_free_f StationID_free; +asn_struct_print_f StationID_print; +asn_constr_check_f StationID_constraint; +ber_type_decoder_f StationID_decode_ber; +der_type_encoder_f StationID_encode_der; +xer_type_decoder_f StationID_decode_xer; +xer_type_encoder_f StationID_encode_xer; +jer_type_encoder_f StationID_encode_jer; +oer_type_decoder_f StationID_decode_oer; +oer_type_encoder_f StationID_encode_oer; +per_type_decoder_f StationID_decode_uper; +per_type_encoder_f StationID_encode_uper; +per_type_decoder_f StationID_decode_aper; +per_type_encoder_f StationID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StationID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h new file mode 100644 index 000000000..7e0886bd5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SteeringAxleLubePressure_H_ +#define _SteeringAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleLubePressure */ +typedef long SteeringAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; +asn_struct_free_f SteeringAxleLubePressure_free; +asn_struct_print_f SteeringAxleLubePressure_print; +asn_constr_check_f SteeringAxleLubePressure_constraint; +ber_type_decoder_f SteeringAxleLubePressure_decode_ber; +der_type_encoder_f SteeringAxleLubePressure_encode_der; +xer_type_decoder_f SteeringAxleLubePressure_decode_xer; +xer_type_encoder_f SteeringAxleLubePressure_encode_xer; +jer_type_encoder_f SteeringAxleLubePressure_encode_jer; +oer_type_decoder_f SteeringAxleLubePressure_decode_oer; +oer_type_encoder_f SteeringAxleLubePressure_encode_oer; +per_type_decoder_f SteeringAxleLubePressure_decode_uper; +per_type_encoder_f SteeringAxleLubePressure_encode_uper; +per_type_decoder_f SteeringAxleLubePressure_decode_aper; +per_type_encoder_f SteeringAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h new file mode 100644 index 000000000..b3af8f6b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SteeringAxleTemperature_H_ +#define _SteeringAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleTemperature */ +typedef long SteeringAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; +asn_struct_free_f SteeringAxleTemperature_free; +asn_struct_print_f SteeringAxleTemperature_print; +asn_constr_check_f SteeringAxleTemperature_constraint; +ber_type_decoder_f SteeringAxleTemperature_decode_ber; +der_type_encoder_f SteeringAxleTemperature_encode_der; +xer_type_decoder_f SteeringAxleTemperature_decode_xer; +xer_type_encoder_f SteeringAxleTemperature_encode_xer; +jer_type_encoder_f SteeringAxleTemperature_encode_jer; +oer_type_decoder_f SteeringAxleTemperature_decode_oer; +oer_type_encoder_f SteeringAxleTemperature_encode_oer; +per_type_decoder_f SteeringAxleTemperature_decode_uper; +per_type_encoder_f SteeringAxleTemperature_encode_uper; +per_type_decoder_f SteeringAxleTemperature_decode_aper; +per_type_encoder_f SteeringAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h new file mode 100644 index 000000000..7e5f3e453 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SteeringWheelAngle_H_ +#define _SteeringWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngle */ +typedef long SteeringWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; +asn_struct_free_f SteeringWheelAngle_free; +asn_struct_print_f SteeringWheelAngle_print; +asn_constr_check_f SteeringWheelAngle_constraint; +ber_type_decoder_f SteeringWheelAngle_decode_ber; +der_type_encoder_f SteeringWheelAngle_encode_der; +xer_type_decoder_f SteeringWheelAngle_decode_xer; +xer_type_encoder_f SteeringWheelAngle_encode_xer; +jer_type_encoder_f SteeringWheelAngle_encode_jer; +oer_type_decoder_f SteeringWheelAngle_decode_oer; +oer_type_encoder_f SteeringWheelAngle_encode_oer; +per_type_decoder_f SteeringWheelAngle_decode_uper; +per_type_encoder_f SteeringWheelAngle_encode_uper; +per_type_decoder_f SteeringWheelAngle_decode_aper; +per_type_encoder_f SteeringWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h new file mode 100644 index 000000000..649017014 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SteeringWheelAngleConfidence_H_ +#define _SteeringWheelAngleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SteeringWheelAngleConfidence { + SteeringWheelAngleConfidence_unavailable = 0, + SteeringWheelAngleConfidence_prec2deg = 1, + SteeringWheelAngleConfidence_prec1deg = 2, + SteeringWheelAngleConfidence_prec0_02deg = 3 +} e_SteeringWheelAngleConfidence; + +/* SteeringWheelAngleConfidence */ +typedef long SteeringWheelAngleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1; +asn_struct_free_f SteeringWheelAngleConfidence_free; +asn_struct_print_f SteeringWheelAngleConfidence_print; +asn_constr_check_f SteeringWheelAngleConfidence_constraint; +ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; +der_type_encoder_f SteeringWheelAngleConfidence_encode_der; +xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; +xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; +jer_type_encoder_f SteeringWheelAngleConfidence_encode_jer; +oer_type_decoder_f SteeringWheelAngleConfidence_decode_oer; +oer_type_encoder_f SteeringWheelAngleConfidence_encode_oer; +per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; +per_type_decoder_f SteeringWheelAngleConfidence_decode_aper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h new file mode 100644 index 000000000..675477136 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SteeringWheelAngleRateOfChange_H_ +#define _SteeringWheelAngleRateOfChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngleRateOfChange */ +typedef long SteeringWheelAngleRateOfChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; +asn_struct_free_f SteeringWheelAngleRateOfChange_free; +asn_struct_print_f SteeringWheelAngleRateOfChange_print; +asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; +ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; +der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; +xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; +xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; +jer_type_encoder_f SteeringWheelAngleRateOfChange_encode_jer; +oer_type_decoder_f SteeringWheelAngleRateOfChange_decode_oer; +oer_type_encoder_f SteeringWheelAngleRateOfChange_encode_oer; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_aper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleRateOfChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h new file mode 100644 index 000000000..2ffb2313e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SummerTime_H_ +#define _SummerTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SummerTime { + SummerTime_notInSummerTime = 0, + SummerTime_inSummerTime = 1 +} e_SummerTime; + +/* SummerTime */ +typedef long SummerTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SummerTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SummerTime; +extern const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1; +asn_struct_free_f SummerTime_free; +asn_struct_print_f SummerTime_print; +asn_constr_check_f SummerTime_constraint; +ber_type_decoder_f SummerTime_decode_ber; +der_type_encoder_f SummerTime_encode_der; +xer_type_decoder_f SummerTime_decode_xer; +xer_type_encoder_f SummerTime_encode_xer; +jer_type_encoder_f SummerTime_encode_jer; +oer_type_decoder_f SummerTime_decode_oer; +oer_type_encoder_f SummerTime_encode_oer; +per_type_decoder_f SummerTime_decode_uper; +per_type_encoder_f SummerTime_encode_uper; +per_type_decoder_f SummerTime_decode_aper; +per_type_encoder_f SummerTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SummerTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h new file mode 100644 index 000000000..32db7cef5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SunSensor_H_ +#define _SunSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SunSensor */ +typedef long SunSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SunSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SunSensor; +asn_struct_free_f SunSensor_free; +asn_struct_print_f SunSensor_print; +asn_constr_check_f SunSensor_constraint; +ber_type_decoder_f SunSensor_decode_ber; +der_type_encoder_f SunSensor_encode_der; +xer_type_decoder_f SunSensor_decode_xer; +xer_type_encoder_f SunSensor_encode_xer; +jer_type_encoder_f SunSensor_encode_jer; +oer_type_decoder_f SunSensor_decode_oer; +oer_type_encoder_f SunSensor_encode_oer; +per_type_decoder_f SunSensor_decode_uper; +per_type_encoder_f SunSensor_encode_uper; +per_type_decoder_f SunSensor_decode_aper; +per_type_encoder_f SunSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SunSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h new file mode 100644 index 000000000..0613f2274 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _SupplementalVehicleExtensions_H_ +#define _SupplementalVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleClassification; +struct VehicleData; +struct WeatherReport; +struct WeatherProbe; +struct ObstacleDetection; +struct DisabledVehicle; +struct SpeedProfile; +struct RTCMPackage; +struct Reg_SupplementalVehicleExtensions; + +/* SupplementalVehicleExtensions */ +typedef struct SupplementalVehicleExtensions { + BasicVehicleClass_t *classification; /* OPTIONAL */ + struct VehicleClassification *classDetails; /* OPTIONAL */ + struct VehicleData *vehicleData; /* OPTIONAL */ + struct WeatherReport *weatherReport; /* OPTIONAL */ + struct WeatherProbe *weatherProbe; /* OPTIONAL */ + struct ObstacleDetection *obstacle; /* OPTIONAL */ + struct DisabledVehicle *status; /* OPTIONAL */ + struct SpeedProfile *speedProfile; /* OPTIONAL */ + struct RTCMPackage *theRTCM; /* OPTIONAL */ + struct SupplementalVehicleExtensions__regional { + A_SEQUENCE_OF(struct Reg_SupplementalVehicleExtensions) 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; +} SupplementalVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[10]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SupplementalVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h new file mode 100644 index 000000000..8c6b5c1ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TemporaryID_H_ +#define _TemporaryID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TemporaryID */ +typedef OCTET_STRING_t TemporaryID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TemporaryID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; +asn_struct_free_f TemporaryID_free; +asn_struct_print_f TemporaryID_print; +asn_constr_check_f TemporaryID_constraint; +ber_type_decoder_f TemporaryID_decode_ber; +der_type_encoder_f TemporaryID_encode_der; +xer_type_decoder_f TemporaryID_decode_xer; +xer_type_encoder_f TemporaryID_encode_xer; +jer_type_encoder_f TemporaryID_encode_jer; +oer_type_decoder_f TemporaryID_decode_oer; +oer_type_encoder_f TemporaryID_encode_oer; +per_type_decoder_f TemporaryID_decode_uper; +per_type_encoder_f TemporaryID_encode_uper; +per_type_decoder_f TemporaryID_decode_aper; +per_type_encoder_f TemporaryID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TemporaryID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h new file mode 100644 index 000000000..3c6bffef1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TenthSecond_H_ +#define _TenthSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TenthSecond */ +typedef long TenthSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TenthSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; +asn_struct_free_f TenthSecond_free; +asn_struct_print_f TenthSecond_print; +asn_constr_check_f TenthSecond_constraint; +ber_type_decoder_f TenthSecond_decode_ber; +der_type_encoder_f TenthSecond_encode_der; +xer_type_decoder_f TenthSecond_decode_xer; +xer_type_encoder_f TenthSecond_encode_xer; +jer_type_encoder_f TenthSecond_encode_jer; +oer_type_decoder_f TenthSecond_decode_oer; +oer_type_encoder_f TenthSecond_encode_oer; +per_type_decoder_f TenthSecond_decode_uper; +per_type_encoder_f TenthSecond_encode_uper; +per_type_decoder_f TenthSecond_decode_aper; +per_type_encoder_f TenthSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TenthSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h new file mode 100644 index 000000000..d56fb09ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TermDistance_H_ +#define _TermDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermDistance */ +typedef long TermDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermDistance; +asn_struct_free_f TermDistance_free; +asn_struct_print_f TermDistance_print; +asn_constr_check_f TermDistance_constraint; +ber_type_decoder_f TermDistance_decode_ber; +der_type_encoder_f TermDistance_encode_der; +xer_type_decoder_f TermDistance_decode_xer; +xer_type_encoder_f TermDistance_encode_xer; +jer_type_encoder_f TermDistance_encode_jer; +oer_type_decoder_f TermDistance_decode_oer; +oer_type_encoder_f TermDistance_encode_oer; +per_type_decoder_f TermDistance_decode_uper; +per_type_encoder_f TermDistance_encode_uper; +per_type_decoder_f TermDistance_decode_aper; +per_type_encoder_f TermDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h new file mode 100644 index 000000000..71e251396 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TermTime_H_ +#define _TermTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermTime */ +typedef long TermTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermTime; +asn_struct_free_f TermTime_free; +asn_struct_print_f TermTime_print; +asn_constr_check_f TermTime_constraint; +ber_type_decoder_f TermTime_decode_ber; +der_type_encoder_f TermTime_encode_der; +xer_type_decoder_f TermTime_decode_xer; +xer_type_encoder_f TermTime_encode_xer; +jer_type_encoder_f TermTime_encode_jer; +oer_type_decoder_f TermTime_decode_oer; +oer_type_encoder_f TermTime_encode_oer; +per_type_decoder_f TermTime_decode_uper; +per_type_encoder_f TermTime_encode_uper; +per_type_decoder_f TermTime_decode_aper; +per_type_encoder_f TermTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h new file mode 100644 index 000000000..0fa1b55b7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage00" + * found in "J2735-TestMessage00.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage00_H_ +#define _TestMessage00_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage00; + +/* TestMessage00 */ +typedef struct TestMessage00 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage00 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage00_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage00; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage00_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage00_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h new file mode 100644 index 000000000..3a0a3d41e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage01" + * found in "J2735-TestMessage01.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage01_H_ +#define _TestMessage01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage01; + +/* TestMessage01 */ +typedef struct TestMessage01 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage01 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage01; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage01_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h new file mode 100644 index 000000000..311047d42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage02" + * found in "J2735-TestMessage02.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage02_H_ +#define _TestMessage02_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage02; + +/* TestMessage02 */ +typedef struct TestMessage02 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage02 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage02_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage02; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage02_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage02_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h new file mode 100644 index 000000000..18eb5f037 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage03" + * found in "J2735-TestMessage03.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage03_H_ +#define _TestMessage03_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage03; + +/* TestMessage03 */ +typedef struct TestMessage03 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage03 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage03_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage03; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage03_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage03_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h new file mode 100644 index 000000000..db8c1f16f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage04" + * found in "J2735-TestMessage04.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage04_H_ +#define _TestMessage04_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage04; + +/* TestMessage04 */ +typedef struct TestMessage04 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage04 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage04_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage04; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage04_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage04_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h new file mode 100644 index 000000000..410efb258 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage05" + * found in "J2735-TestMessage05.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage05_H_ +#define _TestMessage05_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage05; + +/* TestMessage05 */ +typedef struct TestMessage05 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage05 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage05_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage05; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage05_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage05_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h new file mode 100644 index 000000000..883d2b24a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage06" + * found in "J2735-TestMessage06.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage06_H_ +#define _TestMessage06_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage06; + +/* TestMessage06 */ +typedef struct TestMessage06 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage06 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage06_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage06; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage06_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage06_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h new file mode 100644 index 000000000..df20a799d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage07" + * found in "J2735-TestMessage07.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage07_H_ +#define _TestMessage07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage07; + +/* TestMessage07 */ +typedef struct TestMessage07 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage07 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage07_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage07; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage07_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h new file mode 100644 index 000000000..463651549 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage08" + * found in "J2735-TestMessage08.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage08_H_ +#define _TestMessage08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage08; + +/* TestMessage08 */ +typedef struct TestMessage08 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage08 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage08_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage08; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage08_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h new file mode 100644 index 000000000..de124a4e8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage09" + * found in "J2735-TestMessage09.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage09_H_ +#define _TestMessage09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage09; + +/* TestMessage09 */ +typedef struct TestMessage09 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage09 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage09_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage09; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage09_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h new file mode 100644 index 000000000..429a20ffa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage10" + * found in "J2735-TestMessage10.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage10_H_ +#define _TestMessage10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage10; + +/* TestMessage10 */ +typedef struct TestMessage10 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage10 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage10_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage10; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage10_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h new file mode 100644 index 000000000..ad94e5993 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage11" + * found in "J2735-TestMessage11.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage11_H_ +#define _TestMessage11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage11; + +/* TestMessage11 */ +typedef struct TestMessage11 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage11 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage11_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage11; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage11_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h new file mode 100644 index 000000000..4070ff599 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage12" + * found in "J2735-TestMessage12.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage12_H_ +#define _TestMessage12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage12; + +/* TestMessage12 */ +typedef struct TestMessage12 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage12 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage12_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage12; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage12_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h new file mode 100644 index 000000000..ee96a87ae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage13" + * found in "J2735-TestMessage13.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage13_H_ +#define _TestMessage13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage13; + +/* TestMessage13 */ +typedef struct TestMessage13 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage13 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage13_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage13; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage13_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h new file mode 100644 index 000000000..1a1e25836 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage14" + * found in "J2735-TestMessage14.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage14_H_ +#define _TestMessage14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage14; + +/* TestMessage14 */ +typedef struct TestMessage14 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage14 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage14_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage14; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage14_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h new file mode 100644 index 000000000..11eb96ff8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage15" + * found in "J2735-TestMessage15.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TestMessage15_H_ +#define _TestMessage15_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage15; + +/* TestMessage15 */ +typedef struct TestMessage15 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage15 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage15_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage15; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage15_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage15_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h new file mode 100644 index 000000000..d3c9c5cf4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ThrottleConfidence_H_ +#define _ThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ThrottleConfidence { + ThrottleConfidence_unavailable = 0, + ThrottleConfidence_prec10percent = 1, + ThrottleConfidence_prec1percent = 2, + ThrottleConfidence_prec0_5percent = 3 +} e_ThrottleConfidence; + +/* ThrottleConfidence */ +typedef long ThrottleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1; +asn_struct_free_f ThrottleConfidence_free; +asn_struct_print_f ThrottleConfidence_print; +asn_constr_check_f ThrottleConfidence_constraint; +ber_type_decoder_f ThrottleConfidence_decode_ber; +der_type_encoder_f ThrottleConfidence_encode_der; +xer_type_decoder_f ThrottleConfidence_decode_xer; +xer_type_encoder_f ThrottleConfidence_encode_xer; +jer_type_encoder_f ThrottleConfidence_encode_jer; +oer_type_decoder_f ThrottleConfidence_decode_oer; +oer_type_encoder_f ThrottleConfidence_encode_oer; +per_type_decoder_f ThrottleConfidence_decode_uper; +per_type_encoder_f ThrottleConfidence_encode_uper; +per_type_decoder_f ThrottleConfidence_decode_aper; +per_type_encoder_f ThrottleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h new file mode 100644 index 000000000..a0bb98064 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ThrottlePosition_H_ +#define _ThrottlePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ThrottlePosition */ +typedef long ThrottlePosition_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; +asn_struct_free_f ThrottlePosition_free; +asn_struct_print_f ThrottlePosition_print; +asn_constr_check_f ThrottlePosition_constraint; +ber_type_decoder_f ThrottlePosition_decode_ber; +der_type_encoder_f ThrottlePosition_encode_der; +xer_type_decoder_f ThrottlePosition_decode_xer; +xer_type_encoder_f ThrottlePosition_encode_xer; +jer_type_encoder_f ThrottlePosition_encode_jer; +oer_type_decoder_f ThrottlePosition_decode_oer; +oer_type_encoder_f ThrottlePosition_encode_oer; +per_type_decoder_f ThrottlePosition_decode_uper; +per_type_encoder_f ThrottlePosition_encode_uper; +per_type_decoder_f ThrottlePosition_decode_aper; +per_type_encoder_f ThrottlePosition_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottlePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h new file mode 100644 index 000000000..f49265fef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TimeChangeDetails_H_ +#define _TimeChangeDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SPAT_TimeMark.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeChangeDetails */ +typedef struct TimeChangeDetails { + SPAT_TimeMark_t *startTime; /* OPTIONAL */ + SPAT_TimeMark_t minEndTime; + SPAT_TimeMark_t *maxEndTime; /* OPTIONAL */ + SPAT_TimeMark_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + SPAT_TimeMark_t *nextTime; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TimeChangeDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeChangeDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h new file mode 100644 index 000000000..de951964a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TimeConfidence_H_ +#define _TimeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TimeConfidence { + TimeConfidence_unavailable = 0, + TimeConfidence_time_100_000 = 1, + TimeConfidence_time_050_000 = 2, + TimeConfidence_time_020_000 = 3, + TimeConfidence_time_010_000 = 4, + TimeConfidence_time_002_000 = 5, + TimeConfidence_time_001_000 = 6, + TimeConfidence_time_000_500 = 7, + TimeConfidence_time_000_200 = 8, + TimeConfidence_time_000_100 = 9, + TimeConfidence_time_000_050 = 10, + TimeConfidence_time_000_020 = 11, + TimeConfidence_time_000_010 = 12, + TimeConfidence_time_000_005 = 13, + TimeConfidence_time_000_002 = 14, + TimeConfidence_time_000_001 = 15, + TimeConfidence_time_000_000_5 = 16, + TimeConfidence_time_000_000_2 = 17, + TimeConfidence_time_000_000_1 = 18, + TimeConfidence_time_000_000_05 = 19, + TimeConfidence_time_000_000_02 = 20, + TimeConfidence_time_000_000_01 = 21, + TimeConfidence_time_000_000_005 = 22, + TimeConfidence_time_000_000_002 = 23, + TimeConfidence_time_000_000_001 = 24, + TimeConfidence_time_000_000_000_5 = 25, + TimeConfidence_time_000_000_000_2 = 26, + TimeConfidence_time_000_000_000_1 = 27, + TimeConfidence_time_000_000_000_05 = 28, + TimeConfidence_time_000_000_000_02 = 29, + TimeConfidence_time_000_000_000_01 = 30, + TimeConfidence_time_000_000_000_005 = 31, + TimeConfidence_time_000_000_000_002 = 32, + TimeConfidence_time_000_000_000_001 = 33, + TimeConfidence_time_000_000_000_000_5 = 34, + TimeConfidence_time_000_000_000_000_2 = 35, + TimeConfidence_time_000_000_000_000_1 = 36, + TimeConfidence_time_000_000_000_000_05 = 37, + TimeConfidence_time_000_000_000_000_02 = 38, + TimeConfidence_time_000_000_000_000_01 = 39 +} e_TimeConfidence; + +/* TimeConfidence */ +typedef long TimeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1; +asn_struct_free_f TimeConfidence_free; +asn_struct_print_f TimeConfidence_print; +asn_constr_check_f TimeConfidence_constraint; +ber_type_decoder_f TimeConfidence_decode_ber; +der_type_encoder_f TimeConfidence_encode_der; +xer_type_decoder_f TimeConfidence_decode_xer; +xer_type_encoder_f TimeConfidence_encode_xer; +jer_type_encoder_f TimeConfidence_encode_jer; +oer_type_decoder_f TimeConfidence_decode_oer; +oer_type_encoder_f TimeConfidence_encode_oer; +per_type_decoder_f TimeConfidence_decode_uper; +per_type_encoder_f TimeConfidence_encode_uper; +per_type_decoder_f TimeConfidence_decode_aper; +per_type_encoder_f TimeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h new file mode 100644 index 000000000..c70c9534e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TimeIntervalConfidence_H_ +#define _TimeIntervalConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeIntervalConfidence */ +typedef long TimeIntervalConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; +asn_struct_free_f TimeIntervalConfidence_free; +asn_struct_print_f TimeIntervalConfidence_print; +asn_constr_check_f TimeIntervalConfidence_constraint; +ber_type_decoder_f TimeIntervalConfidence_decode_ber; +der_type_encoder_f TimeIntervalConfidence_encode_der; +xer_type_decoder_f TimeIntervalConfidence_decode_xer; +xer_type_encoder_f TimeIntervalConfidence_encode_xer; +jer_type_encoder_f TimeIntervalConfidence_encode_jer; +oer_type_decoder_f TimeIntervalConfidence_decode_oer; +oer_type_encoder_f TimeIntervalConfidence_encode_oer; +per_type_decoder_f TimeIntervalConfidence_decode_uper; +per_type_encoder_f TimeIntervalConfidence_encode_uper; +per_type_decoder_f TimeIntervalConfidence_decode_aper; +per_type_encoder_f TimeIntervalConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeIntervalConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h new file mode 100644 index 000000000..68566958c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TimeOffset_H_ +#define _TimeOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeOffset */ +typedef long TimeOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeOffset; +asn_struct_free_f TimeOffset_free; +asn_struct_print_f TimeOffset_print; +asn_constr_check_f TimeOffset_constraint; +ber_type_decoder_f TimeOffset_decode_ber; +der_type_encoder_f TimeOffset_encode_der; +xer_type_decoder_f TimeOffset_decode_xer; +xer_type_encoder_f TimeOffset_encode_xer; +jer_type_encoder_f TimeOffset_encode_jer; +oer_type_decoder_f TimeOffset_decode_oer; +oer_type_encoder_f TimeOffset_encode_oer; +per_type_decoder_f TimeOffset_decode_uper; +per_type_encoder_f TimeOffset_encode_uper; +per_type_decoder_f TimeOffset_decode_aper; +per_type_encoder_f TimeOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h new file mode 100644 index 000000000..4c97db2b6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TimeRemaining_H_ +#define _TimeRemaining_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeRemaining */ +typedef long TimeRemaining_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; +asn_struct_free_f TimeRemaining_free; +asn_struct_print_f TimeRemaining_print; +asn_constr_check_f TimeRemaining_constraint; +ber_type_decoder_f TimeRemaining_decode_ber; +der_type_encoder_f TimeRemaining_encode_der; +xer_type_decoder_f TimeRemaining_decode_xer; +xer_type_encoder_f TimeRemaining_encode_xer; +jer_type_encoder_f TimeRemaining_encode_jer; +oer_type_decoder_f TimeRemaining_decode_oer; +oer_type_encoder_f TimeRemaining_encode_oer; +per_type_decoder_f TimeRemaining_decode_uper; +per_type_encoder_f TimeRemaining_encode_uper; +per_type_decoder_f TimeRemaining_decode_aper; +per_type_encoder_f TimeRemaining_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeRemaining_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h new file mode 100644 index 000000000..002437b60 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TireData_H_ +#define _TireData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TireLocation.h" +#include "TirePressure.h" +#include "TireTemp.h" +#include "WheelSensorStatus.h" +#include "WheelEndElectFault.h" +#include "TireLeakageRate.h" +#include "TirePressureThresholdDetection.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireData */ +typedef struct TireData { + TireLocation_t *location; /* OPTIONAL */ + TirePressure_t *pressure; /* OPTIONAL */ + TireTemp_t *temp; /* OPTIONAL */ + WheelSensorStatus_t *wheelSensorStatus; /* OPTIONAL */ + WheelEndElectFault_t *wheelEndElectFault; /* OPTIONAL */ + TireLeakageRate_t *leakageRate; /* OPTIONAL */ + TirePressureThresholdDetection_t *detection; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireData; +extern asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1; +extern asn_TYPE_member_t asn_MBR_TireData_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h new file mode 100644 index 000000000..ca0900470 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TireDataList_H_ +#define _TireDataList_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 TireData; + +/* TireDataList */ +typedef struct TireDataList { + A_SEQUENCE_OF(struct TireData) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireDataList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireDataList; +extern asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1; +extern asn_TYPE_member_t asn_MBR_TireDataList_1[1]; +extern asn_per_constraints_t asn_PER_type_TireDataList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireDataList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h new file mode 100644 index 000000000..0dfa57721 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TireLeakageRate_H_ +#define _TireLeakageRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLeakageRate */ +typedef long TireLeakageRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; +asn_struct_free_f TireLeakageRate_free; +asn_struct_print_f TireLeakageRate_print; +asn_constr_check_f TireLeakageRate_constraint; +ber_type_decoder_f TireLeakageRate_decode_ber; +der_type_encoder_f TireLeakageRate_encode_der; +xer_type_decoder_f TireLeakageRate_decode_xer; +xer_type_encoder_f TireLeakageRate_encode_xer; +jer_type_encoder_f TireLeakageRate_encode_jer; +oer_type_decoder_f TireLeakageRate_decode_oer; +oer_type_encoder_f TireLeakageRate_encode_oer; +per_type_decoder_f TireLeakageRate_decode_uper; +per_type_encoder_f TireLeakageRate_encode_uper; +per_type_decoder_f TireLeakageRate_decode_aper; +per_type_encoder_f TireLeakageRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLeakageRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h new file mode 100644 index 000000000..37fba225c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TireLocation_H_ +#define _TireLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLocation */ +typedef long TireLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLocation; +asn_struct_free_f TireLocation_free; +asn_struct_print_f TireLocation_print; +asn_constr_check_f TireLocation_constraint; +ber_type_decoder_f TireLocation_decode_ber; +der_type_encoder_f TireLocation_encode_der; +xer_type_decoder_f TireLocation_decode_xer; +xer_type_encoder_f TireLocation_encode_xer; +jer_type_encoder_f TireLocation_encode_jer; +oer_type_decoder_f TireLocation_decode_oer; +oer_type_encoder_f TireLocation_encode_oer; +per_type_decoder_f TireLocation_decode_uper; +per_type_encoder_f TireLocation_encode_uper; +per_type_decoder_f TireLocation_decode_aper; +per_type_encoder_f TireLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h new file mode 100644 index 000000000..e80ffe4d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TirePressure_H_ +#define _TirePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TirePressure */ +typedef long TirePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressure; +asn_struct_free_f TirePressure_free; +asn_struct_print_f TirePressure_print; +asn_constr_check_f TirePressure_constraint; +ber_type_decoder_f TirePressure_decode_ber; +der_type_encoder_f TirePressure_encode_der; +xer_type_decoder_f TirePressure_decode_xer; +xer_type_encoder_f TirePressure_encode_xer; +jer_type_encoder_f TirePressure_encode_jer; +oer_type_decoder_f TirePressure_decode_oer; +oer_type_encoder_f TirePressure_encode_oer; +per_type_decoder_f TirePressure_decode_uper; +per_type_encoder_f TirePressure_encode_uper; +per_type_decoder_f TirePressure_decode_aper; +per_type_encoder_f TirePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h new file mode 100644 index 000000000..28282bb2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TirePressureThresholdDetection_H_ +#define _TirePressureThresholdDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TirePressureThresholdDetection { + TirePressureThresholdDetection_noData = 0, + TirePressureThresholdDetection_overPressure = 1, + TirePressureThresholdDetection_noWarningPressure = 2, + TirePressureThresholdDetection_underPressure = 3, + TirePressureThresholdDetection_extremeUnderPressure = 4, + TirePressureThresholdDetection_undefined = 5, + TirePressureThresholdDetection_errorIndicator = 6, + TirePressureThresholdDetection_notAvailable = 7 +} e_TirePressureThresholdDetection; + +/* TirePressureThresholdDetection */ +typedef long TirePressureThresholdDetection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; +extern const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1; +asn_struct_free_f TirePressureThresholdDetection_free; +asn_struct_print_f TirePressureThresholdDetection_print; +asn_constr_check_f TirePressureThresholdDetection_constraint; +ber_type_decoder_f TirePressureThresholdDetection_decode_ber; +der_type_encoder_f TirePressureThresholdDetection_encode_der; +xer_type_decoder_f TirePressureThresholdDetection_decode_xer; +xer_type_encoder_f TirePressureThresholdDetection_encode_xer; +jer_type_encoder_f TirePressureThresholdDetection_encode_jer; +oer_type_decoder_f TirePressureThresholdDetection_decode_oer; +oer_type_encoder_f TirePressureThresholdDetection_encode_oer; +per_type_decoder_f TirePressureThresholdDetection_decode_uper; +per_type_encoder_f TirePressureThresholdDetection_encode_uper; +per_type_decoder_f TirePressureThresholdDetection_decode_aper; +per_type_encoder_f TirePressureThresholdDetection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressureThresholdDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h new file mode 100644 index 000000000..40b5dc5da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TireTemp_H_ +#define _TireTemp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireTemp */ +typedef long TireTemp_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireTemp_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireTemp; +asn_struct_free_f TireTemp_free; +asn_struct_print_f TireTemp_print; +asn_constr_check_f TireTemp_constraint; +ber_type_decoder_f TireTemp_decode_ber; +der_type_encoder_f TireTemp_encode_der; +xer_type_decoder_f TireTemp_decode_xer; +xer_type_encoder_f TireTemp_encode_xer; +jer_type_encoder_f TireTemp_encode_jer; +oer_type_decoder_f TireTemp_decode_oer; +oer_type_encoder_f TireTemp_encode_oer; +per_type_decoder_f TireTemp_decode_uper; +per_type_encoder_f TireTemp_encode_uper; +per_type_decoder_f TireTemp_decode_aper; +per_type_encoder_f TireTemp_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireTemp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h new file mode 100644 index 000000000..49a0bfb2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TractionControlStatus_H_ +#define _TractionControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TractionControlStatus { + TractionControlStatus_unavailable = 0, + TractionControlStatus_off = 1, + TractionControlStatus_on = 2, + TractionControlStatus_engaged = 3 +} e_TractionControlStatus; + +/* TractionControlStatus */ +typedef long TractionControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TractionControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1; +asn_struct_free_f TractionControlStatus_free; +asn_struct_print_f TractionControlStatus_print; +asn_constr_check_f TractionControlStatus_constraint; +ber_type_decoder_f TractionControlStatus_decode_ber; +der_type_encoder_f TractionControlStatus_encode_der; +xer_type_decoder_f TractionControlStatus_decode_xer; +xer_type_encoder_f TractionControlStatus_encode_xer; +jer_type_encoder_f TractionControlStatus_encode_jer; +oer_type_decoder_f TractionControlStatus_decode_oer; +oer_type_encoder_f TractionControlStatus_encode_oer; +per_type_decoder_f TractionControlStatus_decode_uper; +per_type_encoder_f TractionControlStatus_encode_uper; +per_type_decoder_f TractionControlStatus_decode_aper; +per_type_encoder_f TractionControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TractionControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h new file mode 100644 index 000000000..68a58f261 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerData_H_ +#define _TrailerData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PivotPointDescription.h" +#include "TrailerUnitDescriptionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerData */ +typedef struct TrailerData { + SSPindex_t notUsed; + PivotPointDescription_t connection; + TrailerUnitDescriptionList_t units; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerData; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerData_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h new file mode 100644 index 000000000..906eaab87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerHistoryPoint_H_ +#define _TrailerHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_Angle.h" +#include "TimeOffset.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerHistoryPoint */ +typedef struct TrailerHistoryPoint { + Common_Angle_t pivotAngle; + TimeOffset_t timeOffset; + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h new file mode 100644 index 000000000..16f8ddc33 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerHistoryPointList_H_ +#define _TrailerHistoryPointList_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 TrailerHistoryPoint; + +/* TrailerHistoryPointList */ +typedef struct TrailerHistoryPointList { + A_SEQUENCE_OF(struct TrailerHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h new file mode 100644 index 000000000..2979288eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerMass_H_ +#define _TrailerMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerMass */ +typedef long TrailerMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerMass; +asn_struct_free_f TrailerMass_free; +asn_struct_print_f TrailerMass_print; +asn_constr_check_f TrailerMass_constraint; +ber_type_decoder_f TrailerMass_decode_ber; +der_type_encoder_f TrailerMass_encode_der; +xer_type_decoder_f TrailerMass_decode_xer; +xer_type_encoder_f TrailerMass_encode_xer; +jer_type_encoder_f TrailerMass_encode_jer; +oer_type_decoder_f TrailerMass_decode_oer; +oer_type_encoder_f TrailerMass_encode_oer; +per_type_decoder_f TrailerMass_decode_uper; +per_type_encoder_f TrailerMass_encode_uper; +per_type_decoder_f TrailerMass_decode_aper; +per_type_encoder_f TrailerMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h new file mode 100644 index 000000000..f1148cd06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerUnitDescription_H_ +#define _TrailerUnitDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IsDolly.h" +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "VehicleHeight.h" +#include "TrailerMass.h" +#include "PivotPointDescription.h" +#include "Offset-B12.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; +struct PivotPointDescription; +struct TrailerHistoryPointList; + +/* TrailerUnitDescription */ +typedef struct TrailerUnitDescription { + IsDolly_t isDolly; + VehicleWidth_t width; + VehicleLength_t length; + VehicleHeight_t *height; /* OPTIONAL */ + TrailerMass_t *mass; /* OPTIONAL */ + struct BumperHeights *bumperHeights; /* OPTIONAL */ + VehicleHeight_t *centerOfGravity; /* OPTIONAL */ + PivotPointDescription_t frontPivot; + struct PivotPointDescription *rearPivot; /* OPTIONAL */ + Offset_B12_t *rearWheelOffset; /* OPTIONAL */ + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + struct TrailerHistoryPointList *crumbData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[13]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerUnitDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h new file mode 100644 index 000000000..d54df3eb9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerUnitDescriptionList_H_ +#define _TrailerUnitDescriptionList_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 TrailerUnitDescription; + +/* TrailerUnitDescriptionList */ +typedef struct TrailerUnitDescriptionList { + A_SEQUENCE_OF(struct TrailerUnitDescription) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescriptionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerUnitDescriptionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h new file mode 100644 index 000000000..7e0e2a4c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TrailerWeight_H_ +#define _TrailerWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerWeight */ +typedef long TrailerWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; +asn_struct_free_f TrailerWeight_free; +asn_struct_print_f TrailerWeight_print; +asn_constr_check_f TrailerWeight_constraint; +ber_type_decoder_f TrailerWeight_decode_ber; +der_type_encoder_f TrailerWeight_encode_der; +xer_type_decoder_f TrailerWeight_decode_xer; +xer_type_encoder_f TrailerWeight_encode_xer; +jer_type_encoder_f TrailerWeight_encode_jer; +oer_type_decoder_f TrailerWeight_decode_oer; +oer_type_encoder_f TrailerWeight_encode_oer; +per_type_decoder_f TrailerWeight_decode_uper; +per_type_encoder_f TrailerWeight_encode_uper; +per_type_decoder_f TrailerWeight_decode_aper; +per_type_encoder_f TrailerWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h new file mode 100644 index 000000000..040d25889 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TransitStatus_H_ +#define _TransitStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitStatus { + TransitStatus_none = 0, + TransitStatus_anADAuse = 1, + TransitStatus_aBikeLoad = 2, + TransitStatus_doorOpen = 3, + TransitStatus_occM = 4, + TransitStatus_occL = 5 +} e_TransitStatus; + +/* TransitStatus */ +typedef BIT_STRING_t TransitStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; +asn_struct_free_f TransitStatus_free; +asn_struct_print_f TransitStatus_print; +asn_constr_check_f TransitStatus_constraint; +ber_type_decoder_f TransitStatus_decode_ber; +der_type_encoder_f TransitStatus_encode_der; +xer_type_decoder_f TransitStatus_decode_xer; +xer_type_encoder_f TransitStatus_encode_xer; +jer_type_encoder_f TransitStatus_encode_jer; +oer_type_decoder_f TransitStatus_decode_oer; +oer_type_encoder_f TransitStatus_encode_oer; +per_type_decoder_f TransitStatus_decode_uper; +per_type_encoder_f TransitStatus_encode_uper; +per_type_decoder_f TransitStatus_decode_aper; +per_type_encoder_f TransitStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h new file mode 100644 index 000000000..3455673a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TransitVehicleOccupancy_H_ +#define _TransitVehicleOccupancy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleOccupancy { + TransitVehicleOccupancy_occupancyUnknown = 0, + TransitVehicleOccupancy_occupancyEmpty = 1, + TransitVehicleOccupancy_occupancyVeryLow = 2, + TransitVehicleOccupancy_occupancyLow = 3, + TransitVehicleOccupancy_occupancyMed = 4, + TransitVehicleOccupancy_occupancyHigh = 5, + TransitVehicleOccupancy_occupancyNearlyFull = 6, + TransitVehicleOccupancy_occupancyFull = 7 +} e_TransitVehicleOccupancy; + +/* TransitVehicleOccupancy */ +typedef long TransitVehicleOccupancy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy; +extern const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1; +asn_struct_free_f TransitVehicleOccupancy_free; +asn_struct_print_f TransitVehicleOccupancy_print; +asn_constr_check_f TransitVehicleOccupancy_constraint; +ber_type_decoder_f TransitVehicleOccupancy_decode_ber; +der_type_encoder_f TransitVehicleOccupancy_encode_der; +xer_type_decoder_f TransitVehicleOccupancy_decode_xer; +xer_type_encoder_f TransitVehicleOccupancy_encode_xer; +jer_type_encoder_f TransitVehicleOccupancy_encode_jer; +oer_type_decoder_f TransitVehicleOccupancy_decode_oer; +oer_type_encoder_f TransitVehicleOccupancy_encode_oer; +per_type_decoder_f TransitVehicleOccupancy_decode_uper; +per_type_encoder_f TransitVehicleOccupancy_encode_uper; +per_type_decoder_f TransitVehicleOccupancy_decode_aper; +per_type_encoder_f TransitVehicleOccupancy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleOccupancy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h new file mode 100644 index 000000000..f275475a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TransitVehicleStatus_H_ +#define _TransitVehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleStatus { + TransitVehicleStatus_loading = 0, + TransitVehicleStatus_anADAuse = 1, + TransitVehicleStatus_aBikeLoad = 2, + TransitVehicleStatus_doorOpen = 3, + TransitVehicleStatus_charging = 4, + TransitVehicleStatus_atStopLine = 5 +} e_TransitVehicleStatus; + +/* TransitVehicleStatus */ +typedef BIT_STRING_t TransitVehicleStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus; +asn_struct_free_f TransitVehicleStatus_free; +asn_struct_print_f TransitVehicleStatus_print; +asn_constr_check_f TransitVehicleStatus_constraint; +ber_type_decoder_f TransitVehicleStatus_decode_ber; +der_type_encoder_f TransitVehicleStatus_encode_der; +xer_type_decoder_f TransitVehicleStatus_decode_xer; +xer_type_encoder_f TransitVehicleStatus_encode_xer; +jer_type_encoder_f TransitVehicleStatus_encode_jer; +oer_type_decoder_f TransitVehicleStatus_decode_oer; +oer_type_encoder_f TransitVehicleStatus_encode_oer; +per_type_decoder_f TransitVehicleStatus_decode_uper; +per_type_encoder_f TransitVehicleStatus_encode_uper; +per_type_decoder_f TransitVehicleStatus_decode_aper; +per_type_encoder_f TransitVehicleStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h new file mode 100644 index 000000000..2be106538 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TransmissionAndSpeed_H_ +#define _TransmissionAndSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TransmissionState.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TransmissionAndSpeed */ +typedef struct TransmissionAndSpeed { + TransmissionState_t transmisson; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TransmissionAndSpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionAndSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h new file mode 100644 index 000000000..ac3536d91 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TransmissionState_H_ +#define _TransmissionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransmissionState { + TransmissionState_neutral = 0, + TransmissionState_park = 1, + TransmissionState_forwardGears = 2, + TransmissionState_reverseGears = 3, + TransmissionState_reserved1 = 4, + TransmissionState_reserved2 = 5, + TransmissionState_reserved3 = 6, + TransmissionState_unavailable = 7 +} e_TransmissionState; + +/* TransmissionState */ +typedef long TransmissionState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransmissionState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; +extern const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1; +asn_struct_free_f TransmissionState_free; +asn_struct_print_f TransmissionState_print; +asn_constr_check_f TransmissionState_constraint; +ber_type_decoder_f TransmissionState_decode_ber; +der_type_encoder_f TransmissionState_encode_der; +xer_type_decoder_f TransmissionState_decode_xer; +xer_type_encoder_f TransmissionState_encode_xer; +jer_type_encoder_f TransmissionState_encode_jer; +oer_type_decoder_f TransmissionState_decode_oer; +oer_type_encoder_f TransmissionState_encode_oer; +per_type_decoder_f TransmissionState_decode_uper; +per_type_encoder_f TransmissionState_encode_uper; +per_type_decoder_f TransmissionState_decode_aper; +per_type_encoder_f TransmissionState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h new file mode 100644 index 000000000..20c7fa22c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h @@ -0,0 +1,116 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TravelerDataFrame_H_ +#define _TravelerDataFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "TravelerInfoType.h" +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "MinutesDuration.h" +#include "SignPrority.h" +#include "URL-Short.h" +#include "FurtherInfoID.h" +#include "RoadSignID.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "ITIScodesAndText.h" +#include "WorkZone.h" +#include "GenericSignage.h" +#include "SpeedLimit.h" +#include "ExitService.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerDataFrame__msgId_PR { + TravelerDataFrame__msgId_PR_NOTHING, /* No components present */ + TravelerDataFrame__msgId_PR_furtherInfoID, + TravelerDataFrame__msgId_PR_roadSignID +} TravelerDataFrame__msgId_PR; +typedef enum TravelerDataFrame__content_PR { + TravelerDataFrame__content_PR_NOTHING, /* No components present */ + TravelerDataFrame__content_PR_advisory, + TravelerDataFrame__content_PR_workZone, + TravelerDataFrame__content_PR_genericSign, + TravelerDataFrame__content_PR_speedLimit, + TravelerDataFrame__content_PR_exitService +} TravelerDataFrame__content_PR; + +/* Forward declarations */ +struct GeographicalPath; + +/* TravelerDataFrame */ +typedef struct TravelerDataFrame { + SSPindex_t notUsed; + TravelerInfoType_t frameType; + struct TravelerDataFrame__msgId { + TravelerDataFrame__msgId_PR present; + union TravelerDataFrame__msgId_u { + FurtherInfoID_t furtherInfoID; + RoadSignID_t roadSignID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } msgId; + DYear_t *startYear; /* OPTIONAL */ + MinuteOfTheYear_t startTime; + MinutesDuration_t durationTime; + SignPrority_t priority; + SSPindex_t notUsed1; + struct TravelerDataFrame__regions { + A_SEQUENCE_OF(struct GeographicalPath) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regions; + SSPindex_t notUsed2; + SSPindex_t notUsed3; + struct TravelerDataFrame__content { + TravelerDataFrame__content_PR present; + union TravelerDataFrame__content_u { + ITIScodesAndText_t advisory; + WorkZone_t workZone; + GenericSignage_t genericSign; + SpeedLimit_t speedLimit; + ExitService_t exitService; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } content; + URL_Short_t *url; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[13]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerDataFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h new file mode 100644 index 000000000..f78af7801 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TravelerDataFrameList_H_ +#define _TravelerDataFrameList_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 TravelerDataFrame; + +/* TravelerDataFrameList */ +typedef struct TravelerDataFrameList { + A_SEQUENCE_OF(struct TravelerDataFrame) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrameList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList; +extern asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[1]; +extern asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerDataFrameList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h new file mode 100644 index 000000000..f0d8f31c4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TravelerInfoType_H_ +#define _TravelerInfoType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerInfoType { + TravelerInfoType_unknown = 0, + TravelerInfoType_advisory = 1, + TravelerInfoType_roadSignage = 2, + TravelerInfoType_commercialSignage = 3 + /* + * Enumeration is extensible + */ +} e_TravelerInfoType; + +/* TravelerInfoType */ +typedef long TravelerInfoType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; +extern const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1; +asn_struct_free_f TravelerInfoType_free; +asn_struct_print_f TravelerInfoType_print; +asn_constr_check_f TravelerInfoType_constraint; +ber_type_decoder_f TravelerInfoType_decode_ber; +der_type_encoder_f TravelerInfoType_encode_der; +xer_type_decoder_f TravelerInfoType_decode_xer; +xer_type_encoder_f TravelerInfoType_encode_xer; +jer_type_encoder_f TravelerInfoType_encode_jer; +oer_type_decoder_f TravelerInfoType_decode_oer; +oer_type_encoder_f TravelerInfoType_encode_oer; +per_type_decoder_f TravelerInfoType_decode_uper; +per_type_encoder_f TravelerInfoType_encode_uper; +per_type_decoder_f TravelerInfoType_decode_aper; +per_type_encoder_f TravelerInfoType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerInfoType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h new file mode 100644 index 000000000..fc620d64f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _TravelerInformation_H_ +#define _TravelerInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "UniqueMSGID.h" +#include "URL-Base.h" +#include "TravelerDataFrameList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_TravelerInformation; + +/* TravelerInformation */ +typedef struct TravelerInformation { + Common_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + UniqueMSGID_t *packetID; /* OPTIONAL */ + URL_Base_t *urlB; /* OPTIONAL */ + TravelerDataFrameList_t dataFrames; + struct TravelerInformation__regional { + A_SEQUENCE_OF(struct Reg_TravelerInformation) 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; +} TravelerInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerInformation_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h new file mode 100644 index 000000000..b59dd30a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _URL_Base_H_ +#define _URL_Base_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Base */ +typedef IA5String_t URL_Base_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Base_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Base; +asn_struct_free_f URL_Base_free; +asn_struct_print_f URL_Base_print; +asn_constr_check_f URL_Base_constraint; +ber_type_decoder_f URL_Base_decode_ber; +der_type_encoder_f URL_Base_encode_der; +xer_type_decoder_f URL_Base_decode_xer; +xer_type_encoder_f URL_Base_encode_xer; +jer_type_encoder_f URL_Base_encode_jer; +oer_type_decoder_f URL_Base_decode_oer; +oer_type_encoder_f URL_Base_encode_oer; +per_type_decoder_f URL_Base_decode_uper; +per_type_encoder_f URL_Base_encode_uper; +per_type_decoder_f URL_Base_decode_aper; +per_type_encoder_f URL_Base_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Base_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h new file mode 100644 index 000000000..b353d8330 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _URL_Link_H_ +#define _URL_Link_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Link */ +typedef IA5String_t URL_Link_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Link; +asn_struct_free_f URL_Link_free; +asn_struct_print_f URL_Link_print; +asn_constr_check_f URL_Link_constraint; +ber_type_decoder_f URL_Link_decode_ber; +der_type_encoder_f URL_Link_encode_der; +xer_type_decoder_f URL_Link_decode_xer; +xer_type_encoder_f URL_Link_encode_xer; +jer_type_encoder_f URL_Link_encode_jer; +oer_type_decoder_f URL_Link_decode_oer; +oer_type_encoder_f URL_Link_encode_oer; +per_type_decoder_f URL_Link_decode_uper; +per_type_encoder_f URL_Link_encode_uper; +per_type_decoder_f URL_Link_decode_aper; +per_type_encoder_f URL_Link_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Link_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h new file mode 100644 index 000000000..667202f0f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _URL_Short_H_ +#define _URL_Short_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Short */ +typedef IA5String_t URL_Short_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Short_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Short; +asn_struct_free_f URL_Short_free; +asn_struct_print_f URL_Short_print; +asn_constr_check_f URL_Short_constraint; +ber_type_decoder_f URL_Short_decode_ber; +der_type_encoder_f URL_Short_encode_der; +xer_type_decoder_f URL_Short_decode_xer; +xer_type_encoder_f URL_Short_encode_xer; +jer_type_encoder_f URL_Short_encode_jer; +oer_type_decoder_f URL_Short_decode_oer; +oer_type_encoder_f URL_Short_encode_oer; +per_type_decoder_f URL_Short_decode_uper; +per_type_encoder_f URL_Short_encode_uper; +per_type_decoder_f URL_Short_decode_aper; +per_type_encoder_f URL_Short_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Short_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h new file mode 100644 index 000000000..763f51a2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _UniqueMSGID_H_ +#define _UniqueMSGID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UniqueMSGID */ +typedef OCTET_STRING_t UniqueMSGID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; +asn_struct_free_f UniqueMSGID_free; +asn_struct_print_f UniqueMSGID_print; +asn_constr_check_f UniqueMSGID_constraint; +ber_type_decoder_f UniqueMSGID_decode_ber; +der_type_encoder_f UniqueMSGID_encode_der; +xer_type_decoder_f UniqueMSGID_decode_xer; +xer_type_encoder_f UniqueMSGID_encode_xer; +jer_type_encoder_f UniqueMSGID_encode_jer; +oer_type_decoder_f UniqueMSGID_decode_oer; +oer_type_encoder_f UniqueMSGID_encode_oer; +per_type_decoder_f UniqueMSGID_decode_uper; +per_type_encoder_f UniqueMSGID_encode_uper; +per_type_decoder_f UniqueMSGID_decode_aper; +per_type_encoder_f UniqueMSGID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UniqueMSGID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h new file mode 100644 index 000000000..0d4b29398 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _UserSizeAndBehaviour_H_ +#define _UserSizeAndBehaviour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum UserSizeAndBehaviour { + UserSizeAndBehaviour_unavailable = 0, + UserSizeAndBehaviour_smallStature = 1, + UserSizeAndBehaviour_largeStature = 2, + UserSizeAndBehaviour_erraticMoving = 3, + UserSizeAndBehaviour_slowMoving = 4 +} e_UserSizeAndBehaviour; + +/* UserSizeAndBehaviour */ +typedef BIT_STRING_t UserSizeAndBehaviour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; +asn_struct_free_f UserSizeAndBehaviour_free; +asn_struct_print_f UserSizeAndBehaviour_print; +asn_constr_check_f UserSizeAndBehaviour_constraint; +ber_type_decoder_f UserSizeAndBehaviour_decode_ber; +der_type_encoder_f UserSizeAndBehaviour_encode_der; +xer_type_decoder_f UserSizeAndBehaviour_decode_xer; +xer_type_encoder_f UserSizeAndBehaviour_encode_xer; +jer_type_encoder_f UserSizeAndBehaviour_encode_jer; +oer_type_decoder_f UserSizeAndBehaviour_decode_oer; +oer_type_encoder_f UserSizeAndBehaviour_encode_oer; +per_type_decoder_f UserSizeAndBehaviour_decode_uper; +per_type_encoder_f UserSizeAndBehaviour_encode_uper; +per_type_decoder_f UserSizeAndBehaviour_decode_aper; +per_type_encoder_f UserSizeAndBehaviour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UserSizeAndBehaviour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h new file mode 100644 index 000000000..50e3f9ccf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VINstring_H_ +#define _VINstring_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VINstring */ +typedef OCTET_STRING_t VINstring_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VINstring_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VINstring; +asn_struct_free_f VINstring_free; +asn_struct_print_f VINstring_print; +asn_constr_check_f VINstring_constraint; +ber_type_decoder_f VINstring_decode_ber; +der_type_encoder_f VINstring_encode_der; +xer_type_decoder_f VINstring_decode_xer; +xer_type_encoder_f VINstring_encode_xer; +jer_type_encoder_f VINstring_encode_jer; +oer_type_decoder_f VINstring_decode_oer; +oer_type_encoder_f VINstring_encode_oer; +per_type_decoder_f VINstring_decode_uper; +per_type_encoder_f VINstring_encode_uper; +per_type_decoder_f VINstring_decode_aper; +per_type_encoder_f VINstring_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VINstring_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h new file mode 100644 index 000000000..267d102fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ValidRegion_H_ +#define _ValidRegion_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "ShapePointSet.h" +#include "Circle.h" +#include "RegionPointSet.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ValidRegion__area_PR { + ValidRegion__area_PR_NOTHING, /* No components present */ + ValidRegion__area_PR_shapePointSet, + ValidRegion__area_PR_circle, + ValidRegion__area_PR_regionPointSet +} ValidRegion__area_PR; + +/* ValidRegion */ +typedef struct ValidRegion { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + struct ValidRegion__area { + ValidRegion__area_PR present; + union ValidRegion__area_u { + ShapePointSet_t shapePointSet; + Circle_t circle; + RegionPointSet_t regionPointSet; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } area; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ValidRegion_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; +extern asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1; +extern asn_TYPE_member_t asn_MBR_ValidRegion_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ValidRegion_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h new file mode 100644 index 000000000..dfe2e29d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleClassification_H_ +#define _VehicleClassification_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "BasicVehicleRole.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "FuelType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_VehicleClassification; + +/* VehicleClassification */ +typedef struct VehicleClassification { + BasicVehicleClass_t *keyType; /* OPTIONAL */ + BasicVehicleRole_t *role; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + FuelType_t *fuelType; /* OPTIONAL */ + struct VehicleClassification__regional { + A_SEQUENCE_OF(struct Reg_VehicleClassification) 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; +} VehicleClassification_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleClassification; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleClassification_1[9]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleClassification_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h new file mode 100644 index 000000000..4bb2c2989 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleData_H_ +#define _VehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleHeight.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; + +/* VehicleData */ +typedef struct VehicleData { + VehicleHeight_t *height; /* OPTIONAL */ + struct BumperHeights *bumpers; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleData_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h new file mode 100644 index 000000000..ada863479 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleEventFlags_H_ +#define _VehicleEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleEventFlags { + VehicleEventFlags_eventHazardLights = 0, + VehicleEventFlags_eventStopLineViolation = 1, + VehicleEventFlags_eventABSactivated = 2, + VehicleEventFlags_eventTractionControlLoss = 3, + VehicleEventFlags_eventStabilityControlactivated = 4, + VehicleEventFlags_eventHazardousMaterials = 5, + VehicleEventFlags_eventReserved1 = 6, + VehicleEventFlags_eventHardBraking = 7, + VehicleEventFlags_eventLightsChanged = 8, + VehicleEventFlags_eventWipersChanged = 9, + VehicleEventFlags_eventFlatTire = 10, + VehicleEventFlags_eventDisabledVehicle = 11, + VehicleEventFlags_eventAirBagDeployment = 12 +} e_VehicleEventFlags; + +/* VehicleEventFlags */ +typedef BIT_STRING_t VehicleEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags; +asn_struct_free_f VehicleEventFlags_free; +asn_struct_print_f VehicleEventFlags_print; +asn_constr_check_f VehicleEventFlags_constraint; +ber_type_decoder_f VehicleEventFlags_decode_ber; +der_type_encoder_f VehicleEventFlags_encode_der; +xer_type_decoder_f VehicleEventFlags_decode_xer; +xer_type_encoder_f VehicleEventFlags_encode_xer; +jer_type_encoder_f VehicleEventFlags_encode_jer; +oer_type_decoder_f VehicleEventFlags_decode_oer; +oer_type_encoder_f VehicleEventFlags_encode_oer; +per_type_decoder_f VehicleEventFlags_decode_uper; +per_type_encoder_f VehicleEventFlags_encode_uper; +per_type_decoder_f VehicleEventFlags_decode_aper; +per_type_encoder_f VehicleEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h new file mode 100644 index 000000000..6d9c86591 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleGroupAffected_H_ +#define _VehicleGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleGroupAffected { + VehicleGroupAffected_all_vehicles = 9217, + VehicleGroupAffected_bicycles = 9218, + VehicleGroupAffected_motorcycles = 9219, + VehicleGroupAffected_cars = 9220, + VehicleGroupAffected_light_vehicles = 9221, + VehicleGroupAffected_cars_and_light_vehicles = 9222, + VehicleGroupAffected_cars_with_trailers = 9223, + VehicleGroupAffected_cars_with_recreational_trailers = 9224, + VehicleGroupAffected_vehicles_with_trailers = 9225, + VehicleGroupAffected_heavy_vehicles = 9226, + VehicleGroupAffected_trucks = 9227, + VehicleGroupAffected_buses = 9228, + VehicleGroupAffected_articulated_buses = 9229, + VehicleGroupAffected_school_buses = 9230, + VehicleGroupAffected_vehicles_with_semi_trailers = 9231, + VehicleGroupAffected_vehicles_with_double_trailers = 9232, + VehicleGroupAffected_high_profile_vehicles = 9233, + VehicleGroupAffected_wide_vehicles = 9234, + VehicleGroupAffected_long_vehicles = 9235, + VehicleGroupAffected_hazardous_loads = 9236, + VehicleGroupAffected_exceptional_loads = 9237, + VehicleGroupAffected_abnormal_loads = 9238, + VehicleGroupAffected_convoys = 9239, + VehicleGroupAffected_maintenance_vehicles = 9240, + VehicleGroupAffected_delivery_vehicles = 9241, + VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, + VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, + VehicleGroupAffected_vehicles_with_parking_permits = 9244, + VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, + VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, + VehicleGroupAffected_gas_powered_vehicles = 9247, + VehicleGroupAffected_diesel_powered_vehicles = 9248, + VehicleGroupAffected_lPG_vehicles = 9249, + VehicleGroupAffected_military_convoys = 9250, + VehicleGroupAffected_military_vehicles = 9251 + /* + * Enumeration is extensible + */ +} e_VehicleGroupAffected; + +/* VehicleGroupAffected */ +typedef long VehicleGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1; +asn_struct_free_f VehicleGroupAffected_free; +asn_struct_print_f VehicleGroupAffected_print; +asn_constr_check_f VehicleGroupAffected_constraint; +ber_type_decoder_f VehicleGroupAffected_decode_ber; +der_type_encoder_f VehicleGroupAffected_encode_der; +xer_type_decoder_f VehicleGroupAffected_decode_xer; +xer_type_encoder_f VehicleGroupAffected_encode_xer; +jer_type_encoder_f VehicleGroupAffected_encode_jer; +oer_type_decoder_f VehicleGroupAffected_decode_oer; +oer_type_encoder_f VehicleGroupAffected_encode_oer; +per_type_decoder_f VehicleGroupAffected_decode_uper; +per_type_encoder_f VehicleGroupAffected_encode_uper; +per_type_decoder_f VehicleGroupAffected_decode_aper; +per_type_encoder_f VehicleGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h new file mode 100644 index 000000000..b03d802aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleHeight_H_ +#define _VehicleHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleHeight */ +typedef long VehicleHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; +asn_struct_free_f VehicleHeight_free; +asn_struct_print_f VehicleHeight_print; +asn_constr_check_f VehicleHeight_constraint; +ber_type_decoder_f VehicleHeight_decode_ber; +der_type_encoder_f VehicleHeight_encode_der; +xer_type_decoder_f VehicleHeight_decode_xer; +xer_type_encoder_f VehicleHeight_encode_xer; +jer_type_encoder_f VehicleHeight_encode_jer; +oer_type_decoder_f VehicleHeight_decode_oer; +oer_type_encoder_f VehicleHeight_encode_oer; +per_type_decoder_f VehicleHeight_decode_uper; +per_type_encoder_f VehicleHeight_encode_uper; +per_type_decoder_f VehicleHeight_decode_aper; +per_type_encoder_f VehicleHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h new file mode 100644 index 000000000..75ff324c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleID_H_ +#define _VehicleID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TemporaryID.h" +#include "StationID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleID_PR { + VehicleID_PR_NOTHING, /* No components present */ + VehicleID_PR_entityID, + VehicleID_PR_stationID +} VehicleID_PR; + +/* VehicleID */ +typedef struct VehicleID { + VehicleID_PR present; + union VehicleID_u { + TemporaryID_t entityID; + StationID_t stationID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleID; +extern asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleID_1[2]; +extern asn_per_constraints_t asn_PER_type_VehicleID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h new file mode 100644 index 000000000..c115a0b2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleIdent_H_ +#define _VehicleIdent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "VINstring.h" +#include "IA5String.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "ResponderGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleIdent__vehicleClass_PR { + VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ + VehicleIdent__vehicleClass_PR_vGroup, + VehicleIdent__vehicleClass_PR_rGroup, + VehicleIdent__vehicleClass_PR_rEquip +} VehicleIdent__vehicleClass_PR; + +/* Forward declarations */ +struct VehicleID; + +/* VehicleIdent */ +typedef struct VehicleIdent { + DescriptiveName_t *name; /* OPTIONAL */ + VINstring_t *vin; /* OPTIONAL */ + IA5String_t *ownerCode; /* OPTIONAL */ + struct VehicleID *id; /* OPTIONAL */ + VehicleType_t *vehicleType; /* OPTIONAL */ + struct VehicleIdent__vehicleClass { + VehicleIdent__vehicleClass_PR present; + union VehicleIdent__vehicleClass_u { + VehicleGroupAffected_t vGroup; + ResponderGroupAffected_t rGroup; + IncidentResponseEquipment_t rEquip; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleClass; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleIdent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleIdent_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleIdent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h new file mode 100644 index 000000000..52f6a8ec3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleLength_H_ +#define _VehicleLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleLength */ +typedef long VehicleLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; +asn_struct_free_f VehicleLength_free; +asn_struct_print_f VehicleLength_print; +asn_constr_check_f VehicleLength_constraint; +ber_type_decoder_f VehicleLength_decode_ber; +der_type_encoder_f VehicleLength_encode_der; +xer_type_decoder_f VehicleLength_decode_xer; +xer_type_encoder_f VehicleLength_encode_xer; +jer_type_encoder_f VehicleLength_encode_jer; +oer_type_decoder_f VehicleLength_decode_oer; +oer_type_encoder_f VehicleLength_encode_oer; +per_type_decoder_f VehicleLength_decode_uper; +per_type_encoder_f VehicleLength_encode_uper; +per_type_decoder_f VehicleLength_decode_aper; +per_type_encoder_f VehicleLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h new file mode 100644 index 000000000..38e9f5f5e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleMass_H_ +#define _VehicleMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleMass */ +typedef long VehicleMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; +asn_struct_free_f VehicleMass_free; +asn_struct_print_f VehicleMass_print; +asn_constr_check_f VehicleMass_constraint; +ber_type_decoder_f VehicleMass_decode_ber; +der_type_encoder_f VehicleMass_encode_der; +xer_type_decoder_f VehicleMass_decode_xer; +xer_type_encoder_f VehicleMass_encode_xer; +jer_type_encoder_f VehicleMass_encode_jer; +oer_type_decoder_f VehicleMass_decode_oer; +oer_type_encoder_f VehicleMass_encode_oer; +per_type_decoder_f VehicleMass_decode_uper; +per_type_encoder_f VehicleMass_encode_uper; +per_type_decoder_f VehicleMass_decode_aper; +per_type_encoder_f VehicleMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h new file mode 100644 index 000000000..4588e8f80 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleSafetyExtensions_H_ +#define _VehicleSafetyExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleEventFlags.h" +#include "ExteriorLights.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathHistory; +struct PathPrediction; + +/* VehicleSafetyExtensions */ +typedef struct VehicleSafetyExtensions { + VehicleEventFlags_t *events; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + ExteriorLights_t *lights; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSafetyExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSafetyExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h new file mode 100644 index 000000000..8853714a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleSize_H_ +#define _VehicleSize_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSize */ +typedef struct VehicleSize { + VehicleWidth_t width; + VehicleLength_t length; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSize_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSize_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h new file mode 100644 index 000000000..3bc6bc47f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleStatus_H_ +#define _VehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "LightbarInUse.h" +#include "BrakeAppliedPressure.h" +#include "CoefficientOfFriction.h" +#include "SunSensor.h" +#include "RainSensor.h" +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "ThrottlePosition.h" +#include "SpeedConfidence.h" +#include "GNSSstatus.h" +#include "SteeringWheelAngle.h" +#include "SteeringWheelAngleConfidence.h" +#include "SteeringWheelAngleRateOfChange.h" +#include "DrivingWheelAngle.h" +#include "constr_SEQUENCE.h" +#include "VerticalAccelerationThreshold.h" +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "ObstacleDistance.h" +#include "Common_Angle.h" +#include "DDateTime.h" +#include "VehicleHeight.h" +#include "BumperHeights.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "VehicleType.h" +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; +struct BrakeSystemStatus; +struct FullPositionVector; +struct SpeedandHeadingandThrottleConfidence; +struct VehicleIdent; +struct J1939data; +struct AccelerationSet4Way; +struct ConfidenceSet; + +/* VehicleStatus */ +typedef struct VehicleStatus { + ExteriorLights_t *lights; /* OPTIONAL */ + LightbarInUse_t *lightBar; /* OPTIONAL */ + struct WiperSet *wipers; /* OPTIONAL */ + struct BrakeSystemStatus *brakeStatus; /* OPTIONAL */ + BrakeAppliedPressure_t *brakePressure; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + SunSensor_t *sunData; /* OPTIONAL */ + RainSensor_t *rainData; /* OPTIONAL */ + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPres; /* OPTIONAL */ + struct VehicleStatus__steering { + SteeringWheelAngle_t angle; + SteeringWheelAngleConfidence_t *confidence; /* OPTIONAL */ + SteeringWheelAngleRateOfChange_t *rate; /* OPTIONAL */ + DrivingWheelAngle_t *wheels; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *steering; + struct VehicleStatus__accelSets { + struct AccelerationSet4Way *accel4way; /* OPTIONAL */ + VerticalAccelerationThreshold_t *vertAccelThres; /* OPTIONAL */ + YawRateConfidence_t *yawRateCon; /* OPTIONAL */ + AccelerationConfidence_t *hozAccelCon; /* OPTIONAL */ + struct ConfidenceSet *confidenceSet; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *accelSets; + struct VehicleStatus__object { + ObstacleDistance_t obDist; + Common_Angle_t obDirect; + DDateTime_t dateTime; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *object; + struct FullPositionVector *fullPos; /* OPTIONAL */ + ThrottlePosition_t *throttlePos; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedHeadC; /* OPTIONAL */ + SpeedConfidence_t *speedC; /* OPTIONAL */ + struct VehicleStatus__vehicleData { + VehicleHeight_t height; + BumperHeights_t bumpers; + VehicleMass_t mass; + TrailerWeight_t trailerWeight; + VehicleType_t type; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleData; + struct VehicleIdent *vehicleIdent; /* OPTIONAL */ + struct J1939data *j1939data; /* OPTIONAL */ + struct VehicleStatus__weatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *weatherReport; + GNSSstatus_t *gnssStatus; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatus_1[22]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h new file mode 100644 index 000000000..66f639339 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleStatusDeviceTypeTag_H_ +#define _VehicleStatusDeviceTypeTag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleStatusDeviceTypeTag { + VehicleStatusDeviceTypeTag_unknown = 0, + VehicleStatusDeviceTypeTag_lights = 1, + VehicleStatusDeviceTypeTag_wipers = 2, + VehicleStatusDeviceTypeTag_brakes = 3, + VehicleStatusDeviceTypeTag_stab = 4, + VehicleStatusDeviceTypeTag_trac = 5, + VehicleStatusDeviceTypeTag_abs = 6, + VehicleStatusDeviceTypeTag_sunS = 7, + VehicleStatusDeviceTypeTag_rainS = 8, + VehicleStatusDeviceTypeTag_airTemp = 9, + VehicleStatusDeviceTypeTag_steering = 10, + VehicleStatusDeviceTypeTag_vertAccelThres = 11, + VehicleStatusDeviceTypeTag_vertAccel = 12, + VehicleStatusDeviceTypeTag_hozAccelLong = 13, + VehicleStatusDeviceTypeTag_hozAccelLat = 14, + VehicleStatusDeviceTypeTag_hozAccelCon = 15, + VehicleStatusDeviceTypeTag_accel4way = 16, + VehicleStatusDeviceTypeTag_confidenceSet = 17, + VehicleStatusDeviceTypeTag_obDist = 18, + VehicleStatusDeviceTypeTag_obDirect = 19, + VehicleStatusDeviceTypeTag_yaw = 20, + VehicleStatusDeviceTypeTag_yawRateCon = 21, + VehicleStatusDeviceTypeTag_dateTime = 22, + VehicleStatusDeviceTypeTag_fullPos = 23, + VehicleStatusDeviceTypeTag_position2D = 24, + VehicleStatusDeviceTypeTag_position3D = 25, + VehicleStatusDeviceTypeTag_vehicle = 26, + VehicleStatusDeviceTypeTag_speedHeadC = 27, + VehicleStatusDeviceTypeTag_speedC = 28 + /* + * Enumeration is extensible + */ +} e_VehicleStatusDeviceTypeTag; + +/* VehicleStatusDeviceTypeTag */ +typedef long VehicleStatusDeviceTypeTag_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1; +asn_struct_free_f VehicleStatusDeviceTypeTag_free; +asn_struct_print_f VehicleStatusDeviceTypeTag_print; +asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; +ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; +der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; +xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; +xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; +jer_type_encoder_f VehicleStatusDeviceTypeTag_encode_jer; +oer_type_decoder_f VehicleStatusDeviceTypeTag_decode_oer; +oer_type_encoder_f VehicleStatusDeviceTypeTag_encode_oer; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_aper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusDeviceTypeTag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h new file mode 100644 index 000000000..73f8aa038 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleStatusRequest_H_ +#define _VehicleStatusRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleStatusDeviceTypeTag.h" +#include "NativeInteger.h" +#include "BOOLEAN.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleStatusRequest */ +typedef struct VehicleStatusRequest { + VehicleStatusDeviceTypeTag_t dataType; + long *subType; /* OPTIONAL */ + long *sendOnLessThenValue; /* OPTIONAL */ + long *sendOnMoreThenValue; /* OPTIONAL */ + BOOLEAN_t *sendAll; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h new file mode 100644 index 000000000..f04c09216 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleStatusRequestList_H_ +#define _VehicleStatusRequestList_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 VehicleStatusRequest; + +/* VehicleStatusRequestList */ +typedef struct VehicleStatusRequestList { + A_SEQUENCE_OF(struct VehicleStatusRequest) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h new file mode 100644 index 000000000..0a0a4f26c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleToLanePosition_H_ +#define _VehicleToLanePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "LaneID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleToLanePosition */ +typedef struct VehicleToLanePosition { + StationID_t stationID; + LaneID_t laneID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePosition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleToLanePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h new file mode 100644 index 000000000..c76aa2655 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleToLanePositionList_H_ +#define _VehicleToLanePositionList_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 VehicleToLanePosition; + +/* VehicleToLanePositionList */ +typedef struct VehicleToLanePositionList { + A_SEQUENCE_OF(struct VehicleToLanePosition) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePositionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleToLanePositionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h new file mode 100644 index 000000000..a366fd9ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleType_H_ +#define _VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleType { + VehicleType_none = 0, + VehicleType_unknown = 1, + VehicleType_special = 2, + VehicleType_moto = 3, + VehicleType_car = 4, + VehicleType_carOther = 5, + VehicleType_bus = 6, + VehicleType_axleCnt2 = 7, + VehicleType_axleCnt3 = 8, + VehicleType_axleCnt4 = 9, + VehicleType_axleCnt4Trailer = 10, + VehicleType_axleCnt5Trailer = 11, + VehicleType_axleCnt6Trailer = 12, + VehicleType_axleCnt5MultiTrailer = 13, + VehicleType_axleCnt6MultiTrailer = 14, + VehicleType_axleCnt7MultiTrailer = 15 + /* + * Enumeration is extensible + */ +} e_VehicleType; + +/* VehicleType */ +typedef long VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleType; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1; +asn_struct_free_f VehicleType_free; +asn_struct_print_f VehicleType_print; +asn_constr_check_f VehicleType_constraint; +ber_type_decoder_f VehicleType_decode_ber; +der_type_encoder_f VehicleType_encode_der; +xer_type_decoder_f VehicleType_decode_xer; +xer_type_encoder_f VehicleType_encode_xer; +jer_type_encoder_f VehicleType_encode_jer; +oer_type_decoder_f VehicleType_decode_oer; +oer_type_encoder_f VehicleType_encode_oer; +per_type_decoder_f VehicleType_decode_uper; +per_type_encoder_f VehicleType_encode_uper; +per_type_decoder_f VehicleType_decode_aper; +per_type_encoder_f VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h new file mode 100644 index 000000000..99acc9c74 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VehicleWidth_H_ +#define _VehicleWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleWidth */ +typedef long VehicleWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; +asn_struct_free_f VehicleWidth_free; +asn_struct_print_f VehicleWidth_print; +asn_constr_check_f VehicleWidth_constraint; +ber_type_decoder_f VehicleWidth_decode_ber; +der_type_encoder_f VehicleWidth_encode_der; +xer_type_decoder_f VehicleWidth_decode_xer; +xer_type_encoder_f VehicleWidth_encode_xer; +jer_type_encoder_f VehicleWidth_encode_jer; +oer_type_decoder_f VehicleWidth_decode_oer; +oer_type_encoder_f VehicleWidth_encode_oer; +per_type_decoder_f VehicleWidth_decode_uper; +per_type_encoder_f VehicleWidth_encode_uper; +per_type_decoder_f VehicleWidth_decode_aper; +per_type_encoder_f VehicleWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h new file mode 100644 index 000000000..6d914eda2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Velocity_H_ +#define _Velocity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Velocity */ +typedef long Velocity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Velocity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Velocity; +asn_struct_free_f Velocity_free; +asn_struct_print_f Velocity_print; +asn_constr_check_f Velocity_constraint; +ber_type_decoder_f Velocity_decode_ber; +der_type_encoder_f Velocity_encode_der; +xer_type_decoder_f Velocity_decode_xer; +xer_type_encoder_f Velocity_encode_xer; +jer_type_encoder_f Velocity_encode_jer; +oer_type_decoder_f Velocity_decode_oer; +oer_type_encoder_f Velocity_encode_oer; +per_type_decoder_f Velocity_decode_uper; +per_type_encoder_f Velocity_encode_uper; +per_type_decoder_f Velocity_decode_aper; +per_type_encoder_f Velocity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Velocity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h new file mode 100644 index 000000000..5a8ef60a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B07_H_ +#define _VertOffset_B07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B07 */ +typedef long VertOffset_B07_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B07; +asn_struct_free_f VertOffset_B07_free; +asn_struct_print_f VertOffset_B07_print; +asn_constr_check_f VertOffset_B07_constraint; +ber_type_decoder_f VertOffset_B07_decode_ber; +der_type_encoder_f VertOffset_B07_encode_der; +xer_type_decoder_f VertOffset_B07_decode_xer; +xer_type_encoder_f VertOffset_B07_encode_xer; +jer_type_encoder_f VertOffset_B07_encode_jer; +oer_type_decoder_f VertOffset_B07_decode_oer; +oer_type_encoder_f VertOffset_B07_encode_oer; +per_type_decoder_f VertOffset_B07_decode_uper; +per_type_encoder_f VertOffset_B07_encode_uper; +per_type_decoder_f VertOffset_B07_decode_aper; +per_type_encoder_f VertOffset_B07_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h new file mode 100644 index 000000000..5b92ea593 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B08_H_ +#define _VertOffset_B08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B08 */ +typedef long VertOffset_B08_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B08; +asn_struct_free_f VertOffset_B08_free; +asn_struct_print_f VertOffset_B08_print; +asn_constr_check_f VertOffset_B08_constraint; +ber_type_decoder_f VertOffset_B08_decode_ber; +der_type_encoder_f VertOffset_B08_encode_der; +xer_type_decoder_f VertOffset_B08_decode_xer; +xer_type_encoder_f VertOffset_B08_encode_xer; +jer_type_encoder_f VertOffset_B08_encode_jer; +oer_type_decoder_f VertOffset_B08_decode_oer; +oer_type_encoder_f VertOffset_B08_encode_oer; +per_type_decoder_f VertOffset_B08_decode_uper; +per_type_encoder_f VertOffset_B08_encode_uper; +per_type_decoder_f VertOffset_B08_decode_aper; +per_type_encoder_f VertOffset_B08_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h new file mode 100644 index 000000000..078306f71 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B09_H_ +#define _VertOffset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B09 */ +typedef long VertOffset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B09; +asn_struct_free_f VertOffset_B09_free; +asn_struct_print_f VertOffset_B09_print; +asn_constr_check_f VertOffset_B09_constraint; +ber_type_decoder_f VertOffset_B09_decode_ber; +der_type_encoder_f VertOffset_B09_encode_der; +xer_type_decoder_f VertOffset_B09_decode_xer; +xer_type_encoder_f VertOffset_B09_encode_xer; +jer_type_encoder_f VertOffset_B09_encode_jer; +oer_type_decoder_f VertOffset_B09_decode_oer; +oer_type_encoder_f VertOffset_B09_encode_oer; +per_type_decoder_f VertOffset_B09_decode_uper; +per_type_encoder_f VertOffset_B09_encode_uper; +per_type_decoder_f VertOffset_B09_decode_aper; +per_type_encoder_f VertOffset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h new file mode 100644 index 000000000..fa9da3257 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B10_H_ +#define _VertOffset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B10 */ +typedef long VertOffset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B10; +asn_struct_free_f VertOffset_B10_free; +asn_struct_print_f VertOffset_B10_print; +asn_constr_check_f VertOffset_B10_constraint; +ber_type_decoder_f VertOffset_B10_decode_ber; +der_type_encoder_f VertOffset_B10_encode_der; +xer_type_decoder_f VertOffset_B10_decode_xer; +xer_type_encoder_f VertOffset_B10_encode_xer; +jer_type_encoder_f VertOffset_B10_encode_jer; +oer_type_decoder_f VertOffset_B10_decode_oer; +oer_type_encoder_f VertOffset_B10_encode_oer; +per_type_decoder_f VertOffset_B10_decode_uper; +per_type_encoder_f VertOffset_B10_encode_uper; +per_type_decoder_f VertOffset_B10_decode_aper; +per_type_encoder_f VertOffset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h new file mode 100644 index 000000000..d7bba9209 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B11_H_ +#define _VertOffset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B11 */ +typedef long VertOffset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B11; +asn_struct_free_f VertOffset_B11_free; +asn_struct_print_f VertOffset_B11_print; +asn_constr_check_f VertOffset_B11_constraint; +ber_type_decoder_f VertOffset_B11_decode_ber; +der_type_encoder_f VertOffset_B11_encode_der; +xer_type_decoder_f VertOffset_B11_decode_xer; +xer_type_encoder_f VertOffset_B11_encode_xer; +jer_type_encoder_f VertOffset_B11_encode_jer; +oer_type_decoder_f VertOffset_B11_decode_oer; +oer_type_encoder_f VertOffset_B11_encode_oer; +per_type_decoder_f VertOffset_B11_decode_uper; +per_type_encoder_f VertOffset_B11_encode_uper; +per_type_decoder_f VertOffset_B11_decode_aper; +per_type_encoder_f VertOffset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h new file mode 100644 index 000000000..cc4134c77 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VertOffset_B12_H_ +#define _VertOffset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B12 */ +typedef long VertOffset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B12; +asn_struct_free_f VertOffset_B12_free; +asn_struct_print_f VertOffset_B12_print; +asn_constr_check_f VertOffset_B12_constraint; +ber_type_decoder_f VertOffset_B12_decode_ber; +der_type_encoder_f VertOffset_B12_encode_der; +xer_type_decoder_f VertOffset_B12_decode_xer; +xer_type_encoder_f VertOffset_B12_encode_xer; +jer_type_encoder_f VertOffset_B12_encode_jer; +oer_type_decoder_f VertOffset_B12_decode_oer; +oer_type_encoder_f VertOffset_B12_encode_oer; +per_type_decoder_f VertOffset_B12_decode_uper; +per_type_encoder_f VertOffset_B12_encode_uper; +per_type_decoder_f VertOffset_B12_decode_aper; +per_type_encoder_f VertOffset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h new file mode 100644 index 000000000..aa0ea8bd5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VerticalAcceleration_H_ +#define _VerticalAcceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VerticalAcceleration */ +typedef long VerticalAcceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; +asn_struct_free_f VerticalAcceleration_free; +asn_struct_print_f VerticalAcceleration_print; +asn_constr_check_f VerticalAcceleration_constraint; +ber_type_decoder_f VerticalAcceleration_decode_ber; +der_type_encoder_f VerticalAcceleration_encode_der; +xer_type_decoder_f VerticalAcceleration_decode_xer; +xer_type_encoder_f VerticalAcceleration_encode_xer; +jer_type_encoder_f VerticalAcceleration_encode_jer; +oer_type_decoder_f VerticalAcceleration_decode_oer; +oer_type_encoder_f VerticalAcceleration_encode_oer; +per_type_decoder_f VerticalAcceleration_decode_uper; +per_type_encoder_f VerticalAcceleration_encode_uper; +per_type_decoder_f VerticalAcceleration_decode_aper; +per_type_encoder_f VerticalAcceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAcceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h new file mode 100644 index 000000000..8a54ea950 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VerticalAccelerationThreshold_H_ +#define _VerticalAccelerationThreshold_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalAccelerationThreshold { + VerticalAccelerationThreshold_notEquipped = 0, + VerticalAccelerationThreshold_leftFront = 1, + VerticalAccelerationThreshold_leftRear = 2, + VerticalAccelerationThreshold_rightFront = 3, + VerticalAccelerationThreshold_rightRear = 4 +} e_VerticalAccelerationThreshold; + +/* VerticalAccelerationThreshold */ +typedef BIT_STRING_t VerticalAccelerationThreshold_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; +asn_struct_free_f VerticalAccelerationThreshold_free; +asn_struct_print_f VerticalAccelerationThreshold_print; +asn_constr_check_f VerticalAccelerationThreshold_constraint; +ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; +der_type_encoder_f VerticalAccelerationThreshold_encode_der; +xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; +xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; +jer_type_encoder_f VerticalAccelerationThreshold_encode_jer; +oer_type_decoder_f VerticalAccelerationThreshold_decode_oer; +oer_type_encoder_f VerticalAccelerationThreshold_encode_oer; +per_type_decoder_f VerticalAccelerationThreshold_decode_uper; +per_type_encoder_f VerticalAccelerationThreshold_encode_uper; +per_type_decoder_f VerticalAccelerationThreshold_decode_aper; +per_type_encoder_f VerticalAccelerationThreshold_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAccelerationThreshold_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h new file mode 100644 index 000000000..abf7f1084 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _VerticalOffset_H_ +#define _VerticalOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VertOffset-B07.h" +#include "VertOffset-B08.h" +#include "VertOffset-B09.h" +#include "VertOffset-B10.h" +#include "VertOffset-B11.h" +#include "VertOffset-B12.h" +#include "Common_Elevation.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalOffset_PR { + VerticalOffset_PR_NOTHING, /* No components present */ + VerticalOffset_PR_offset1, + VerticalOffset_PR_offset2, + VerticalOffset_PR_offset3, + VerticalOffset_PR_offset4, + VerticalOffset_PR_offset5, + VerticalOffset_PR_offset6, + VerticalOffset_PR_elevation, + VerticalOffset_PR_regional +} VerticalOffset_PR; + +/* VerticalOffset */ +typedef struct VerticalOffset { + VerticalOffset_PR present; + union VerticalOffset_u { + VertOffset_B07_t offset1; + VertOffset_B08_t offset2; + VertOffset_B09_t offset3; + VertOffset_B10_t offset4; + VertOffset_B11_t offset5; + VertOffset_B12_t offset6; + Common_Elevation_t elevation; + Reg_VerticalOffset_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VerticalOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VerticalOffset; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h new file mode 100644 index 000000000..c342bf3c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WaitOnStopline_H_ +#define _WaitOnStopline_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WaitOnStopline */ +typedef BOOLEAN_t WaitOnStopline_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; +asn_struct_free_f WaitOnStopline_free; +asn_struct_print_f WaitOnStopline_print; +asn_constr_check_f WaitOnStopline_constraint; +ber_type_decoder_f WaitOnStopline_decode_ber; +der_type_encoder_f WaitOnStopline_encode_der; +xer_type_decoder_f WaitOnStopline_decode_xer; +xer_type_encoder_f WaitOnStopline_encode_xer; +jer_type_encoder_f WaitOnStopline_encode_jer; +oer_type_decoder_f WaitOnStopline_decode_oer; +oer_type_encoder_f WaitOnStopline_encode_oer; +per_type_decoder_f WaitOnStopline_decode_uper; +per_type_encoder_f WaitOnStopline_encode_uper; +per_type_decoder_f WaitOnStopline_decode_aper; +per_type_encoder_f WaitOnStopline_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WaitOnStopline_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h new file mode 100644 index 000000000..6a8dcef10 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WeatherProbe_H_ +#define _WeatherProbe_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; + +/* WeatherProbe */ +typedef struct WeatherProbe { + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPressure; /* OPTIONAL */ + struct WiperSet *rainRates; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherProbe_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherProbe; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherProbe_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WeatherProbe_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h new file mode 100644 index 000000000..7822dacd7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WeatherReport_H_ +#define _WeatherReport_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" +#include "CoefficientOfFriction.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WeatherReport */ +typedef struct WeatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherReport_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherReport; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherReport_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WeatherReport_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h new file mode 100644 index 000000000..0704b2613 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WheelEndElectFault_H_ +#define _WheelEndElectFault_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelEndElectFault { + WheelEndElectFault_isOk = 0, + WheelEndElectFault_isNotDefined = 1, + WheelEndElectFault_isError = 2, + WheelEndElectFault_isNotSupported = 3 +} e_WheelEndElectFault; + +/* WheelEndElectFault */ +typedef long WheelEndElectFault_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; +extern const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1; +asn_struct_free_f WheelEndElectFault_free; +asn_struct_print_f WheelEndElectFault_print; +asn_constr_check_f WheelEndElectFault_constraint; +ber_type_decoder_f WheelEndElectFault_decode_ber; +der_type_encoder_f WheelEndElectFault_encode_der; +xer_type_decoder_f WheelEndElectFault_decode_xer; +xer_type_encoder_f WheelEndElectFault_encode_xer; +jer_type_encoder_f WheelEndElectFault_encode_jer; +oer_type_decoder_f WheelEndElectFault_decode_oer; +oer_type_encoder_f WheelEndElectFault_encode_oer; +per_type_decoder_f WheelEndElectFault_decode_uper; +per_type_encoder_f WheelEndElectFault_encode_uper; +per_type_decoder_f WheelEndElectFault_decode_aper; +per_type_encoder_f WheelEndElectFault_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelEndElectFault_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h new file mode 100644 index 000000000..c724205a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WheelSensorStatus_H_ +#define _WheelSensorStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelSensorStatus { + WheelSensorStatus_off = 0, + WheelSensorStatus_on = 1, + WheelSensorStatus_notDefined = 2, + WheelSensorStatus_notSupported = 3 +} e_WheelSensorStatus; + +/* WheelSensorStatus */ +typedef long WheelSensorStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1; +asn_struct_free_f WheelSensorStatus_free; +asn_struct_print_f WheelSensorStatus_print; +asn_constr_check_f WheelSensorStatus_constraint; +ber_type_decoder_f WheelSensorStatus_decode_ber; +der_type_encoder_f WheelSensorStatus_encode_der; +xer_type_decoder_f WheelSensorStatus_decode_xer; +xer_type_encoder_f WheelSensorStatus_encode_xer; +jer_type_encoder_f WheelSensorStatus_encode_jer; +oer_type_decoder_f WheelSensorStatus_decode_oer; +oer_type_encoder_f WheelSensorStatus_encode_oer; +per_type_decoder_f WheelSensorStatus_decode_uper; +per_type_encoder_f WheelSensorStatus_encode_uper; +per_type_decoder_f WheelSensorStatus_decode_aper; +per_type_encoder_f WheelSensorStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelSensorStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h new file mode 100644 index 000000000..b22ffec59 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WiperRate_H_ +#define _WiperRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperRate */ +typedef long WiperRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperRate; +asn_struct_free_f WiperRate_free; +asn_struct_print_f WiperRate_print; +asn_constr_check_f WiperRate_constraint; +ber_type_decoder_f WiperRate_decode_ber; +der_type_encoder_f WiperRate_encode_der; +xer_type_decoder_f WiperRate_decode_xer; +xer_type_encoder_f WiperRate_encode_xer; +jer_type_encoder_f WiperRate_encode_jer; +oer_type_decoder_f WiperRate_decode_oer; +oer_type_encoder_f WiperRate_encode_oer; +per_type_decoder_f WiperRate_decode_uper; +per_type_encoder_f WiperRate_encode_uper; +per_type_decoder_f WiperRate_decode_aper; +per_type_encoder_f WiperRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h new file mode 100644 index 000000000..a60c7ce05 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WiperSet_H_ +#define _WiperSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "WiperStatus.h" +#include "WiperRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperSet */ +typedef struct WiperSet { + WiperStatus_t statusFront; + WiperRate_t rateFront; + WiperStatus_t *statusRear; /* OPTIONAL */ + WiperRate_t *rateRear; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WiperSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperSet; +extern asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1; +extern asn_TYPE_member_t asn_MBR_WiperSet_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h new file mode 100644 index 000000000..5bcf7f782 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WiperStatus_H_ +#define _WiperStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WiperStatus { + WiperStatus_unavailable = 0, + WiperStatus_off = 1, + WiperStatus_intermittent = 2, + WiperStatus_low = 3, + WiperStatus_high = 4, + WiperStatus_washerInUse = 5, + WiperStatus_automaticPresent = 6 + /* + * Enumeration is extensible + */ +} e_WiperStatus; + +/* WiperStatus */ +typedef long WiperStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1; +asn_struct_free_f WiperStatus_free; +asn_struct_print_f WiperStatus_print; +asn_constr_check_f WiperStatus_constraint; +ber_type_decoder_f WiperStatus_decode_ber; +der_type_encoder_f WiperStatus_encode_der; +xer_type_decoder_f WiperStatus_decode_xer; +xer_type_encoder_f WiperStatus_encode_xer; +jer_type_encoder_f WiperStatus_encode_jer; +oer_type_decoder_f WiperStatus_decode_oer; +oer_type_encoder_f WiperStatus_encode_oer; +per_type_decoder_f WiperStatus_decode_uper; +per_type_encoder_f WiperStatus_encode_uper; +per_type_decoder_f WiperStatus_decode_aper; +per_type_encoder_f WiperStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h new file mode 100644 index 000000000..a14da6e2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _WorkZone_H_ +#define _WorkZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WorkZone__Member__item_PR { + WorkZone__Member__item_PR_NOTHING, /* No components present */ + WorkZone__Member__item_PR_itis, + WorkZone__Member__item_PR_text +} WorkZone__Member__item_PR; + +/* Forward definitions */ +typedef struct WorkZone__Member { + struct WorkZone__Member__item { + WorkZone__Member__item_PR present; + union WorkZone__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone__Member; + +/* WorkZone */ +typedef struct WorkZone { + A_SEQUENCE_OF(WorkZone__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WorkZone; +extern asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1; +extern asn_TYPE_member_t asn_MBR_WorkZone_1[1]; +extern asn_per_constraints_t asn_PER_type_WorkZone_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _WorkZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h new file mode 100644 index 000000000..c8a28fc69 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _YawRate_H_ +#define _YawRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawRate */ +typedef long YawRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRate; +asn_struct_free_f YawRate_free; +asn_struct_print_f YawRate_print; +asn_constr_check_f YawRate_constraint; +ber_type_decoder_f YawRate_decode_ber; +der_type_encoder_f YawRate_encode_der; +xer_type_decoder_f YawRate_decode_xer; +xer_type_encoder_f YawRate_encode_xer; +jer_type_encoder_f YawRate_encode_jer; +oer_type_decoder_f YawRate_decode_oer; +oer_type_encoder_f YawRate_encode_oer; +per_type_decoder_f YawRate_decode_uper; +per_type_encoder_f YawRate_encode_uper; +per_type_decoder_f YawRate_decode_aper; +per_type_encoder_f YawRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h new file mode 100644 index 000000000..5543e29fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _YawRateConfidence_H_ +#define _YawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum YawRateConfidence { + YawRateConfidence_unavailable = 0, + YawRateConfidence_degSec_100_00 = 1, + YawRateConfidence_degSec_010_00 = 2, + YawRateConfidence_degSec_005_00 = 3, + YawRateConfidence_degSec_001_00 = 4, + YawRateConfidence_degSec_000_10 = 5, + YawRateConfidence_degSec_000_05 = 6, + YawRateConfidence_degSec_000_01 = 7 +} e_YawRateConfidence; + +/* YawRateConfidence */ +typedef long YawRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1; +asn_struct_free_f YawRateConfidence_free; +asn_struct_print_f YawRateConfidence_print; +asn_constr_check_f YawRateConfidence_constraint; +ber_type_decoder_f YawRateConfidence_decode_ber; +der_type_encoder_f YawRateConfidence_encode_der; +xer_type_decoder_f YawRateConfidence_decode_xer; +xer_type_encoder_f YawRateConfidence_encode_xer; +jer_type_encoder_f YawRateConfidence_encode_jer; +oer_type_decoder_f YawRateConfidence_decode_oer; +oer_type_encoder_f YawRateConfidence_encode_oer; +per_type_decoder_f YawRateConfidence_decode_uper; +per_type_encoder_f YawRateConfidence_encode_uper; +per_type_decoder_f YawRateConfidence_decode_aper; +per_type_encoder_f YawRateConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h new file mode 100644 index 000000000..34b6a857e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Year_H_ +#define _Year_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Year */ +typedef long Year_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Year_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Year; +asn_struct_free_f Year_free; +asn_struct_print_f Year_print; +asn_constr_check_f Year_constraint; +ber_type_decoder_f Year_decode_ber; +der_type_encoder_f Year_encode_der; +xer_type_decoder_f Year_decode_xer; +xer_type_encoder_f Year_encode_xer; +jer_type_encoder_f Year_encode_jer; +oer_type_decoder_f Year_decode_oer; +oer_type_encoder_f Year_encode_oer; +per_type_decoder_f Year_decode_uper; +per_type_encoder_f Year_encode_uper; +per_type_decoder_f Year_decode_aper; +per_type_encoder_f Year_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Year_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h new file mode 100644 index 000000000..d4f158436 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _ZoneLength_H_ +#define _ZoneLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ZoneLength */ +typedef long ZoneLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ZoneLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; +asn_struct_free_f ZoneLength_free; +asn_struct_print_f ZoneLength_print; +asn_constr_check_f ZoneLength_constraint; +ber_type_decoder_f ZoneLength_decode_ber; +der_type_encoder_f ZoneLength_encode_der; +xer_type_decoder_f ZoneLength_decode_xer; +xer_type_encoder_f ZoneLength_encode_xer; +jer_type_encoder_f ZoneLength_encode_jer; +oer_type_decoder_f ZoneLength_decode_oer; +oer_type_encoder_f ZoneLength_encode_oer; +per_type_decoder_f ZoneLength_decode_uper; +per_type_encoder_f ZoneLength_encode_uper; +per_type_decoder_f ZoneLength_decode_aper; +per_type_encoder_f ZoneLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ZoneLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h new file mode 100644 index 000000000..4715c24ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#ifndef _Zoom_H_ +#define _Zoom_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Zoom */ +typedef long Zoom_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Zoom_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Zoom; +asn_struct_free_f Zoom_free; +asn_struct_print_f Zoom_print; +asn_constr_check_f Zoom_constraint; +ber_type_decoder_f Zoom_decode_ber; +der_type_encoder_f Zoom_encode_der; +xer_type_decoder_f Zoom_decode_xer; +xer_type_encoder_f Zoom_encode_xer; +jer_type_encoder_f Zoom_encode_jer; +oer_type_decoder_f Zoom_decode_oer; +oer_type_encoder_f Zoom_encode_oer; +per_type_decoder_f Zoom_decode_uper; +per_type_encoder_f Zoom_encode_uper; +per_type_decoder_f Zoom_decode_aper; +per_type_encoder_f Zoom_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Zoom_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h new file mode 100644 index 000000000..10352c710 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_DECODER_H_ +#define _APER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Aligned PER decoder of a "complete encoding" as per X.691#10.1. + * On success, this call always returns (.consumed >= 1), in BITS, as per X.691#10.1.3. + */ +asn_dec_rval_t aper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ + ); + +/* + * Aligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t aper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of data buffer */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h new file mode 100644 index 000000000..957b0bdbe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h @@ -0,0 +1,63 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_ENCODER_H_ +#define _APER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Aligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t aper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of aper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t aper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +/* + * A variant of aper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of aper_encode() and aper_encode_to_buffer(). + */ +ssize_t +aper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *td, + const asn_per_constraints_t *constraints, + const void *sptr, + void **buffer_r +); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h new file mode 100644 index 000000000..451b01c3b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_OPENTYPE_H_ +#define _APER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t aper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + + +int aper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); + +int aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h new file mode 100644 index 000000000..a3724455c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_SUPPORT_H_ +#define _APER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Get the length "n" from the Aligned PER stream. + */ +ssize_t aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, + int effective_bound_bits, int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t aper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t aper_get_nsnnwn(asn_per_data_t *pd, int range); + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "n" to the Aligned PER stream. + * If (opt_need_eom) is given, it will be set to 1 if final 0-n is needed. + * In that case, invoke aper_put_length(po, -1, -1, 0, NULL) after encoding the + * last block. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, + int *opt_need_eom); + +/* Align the current bit position to octet bundary */ +int aper_put_align(asn_per_outp_t *po); +int32_t aper_get_align(asn_per_data_t *pd); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int aper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int aper_put_nsnnwn(asn_per_outp_t *po, int range, int number); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h new file mode 100644 index 000000000..e35bc447a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h @@ -0,0 +1,52 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SEQUENCE_OF_H +#define ASN_SEQUENCE_OF_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * SEQUENCE OF is the same as SET OF with a tiny difference: + * the delete operation preserves the initial order of elements + * and thus MAY operate in non-constant time. + */ +#define A_SEQUENCE_OF(type) A_SET_OF(type) + +#define ASN_SEQUENCE_ADD(headptr, ptr) \ + asn_sequence_add((headptr), (ptr)) + +/*********************************************** + * Implementation of the SEQUENCE OF structure. + */ + +#define asn_sequence_add asn_set_add +#define asn_sequence_empty asn_set_empty + +/* + * Delete the element from the set by its number (base 0). + * This is NOT a constant-time operation. + * The order of elements is preserved. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; +#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) +#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h new file mode 100644 index 000000000..882e1a47d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h @@ -0,0 +1,72 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SET_OF_H +#define ASN_SET_OF_H + +#ifdef __cplusplus +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(decltype(*array)); \ + } +#else /* C */ +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(type *); \ + } +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define ASN_SET_ADD(headptr, ptr) \ + asn_set_add((headptr), (ptr)) + +/******************************************* + * Implementation of the SET OF structure. + */ + +/* + * Add another structure into the set by its pointer. + * RETURN VALUES: + * 0 for success and -1/errno for failure. + */ +int asn_set_add(void *asn_set_of_x, void *ptr); + +/* + * Delete the element from the set by its number (base 0). + * This is a constant-time operation. The order of elements before the + * deleted ones is guaranteed, the order of elements after the deleted + * one is NOT guaranteed. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_set_del(void *asn_set_of_x, int number, int _do_free); + +/* + * Empty the contents of the set. Will free the elements, if (*free) is given. + * Will NOT free the set itself. + */ +void asn_set_empty(void *asn_set_of_x); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SET_OF(void) asn_anonymous_set_; +#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) +#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h new file mode 100644 index 000000000..bf10cd3e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h @@ -0,0 +1,173 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Application-level ASN.1 callbacks. + */ +#ifndef ASN_APPLICATION_H +#define ASN_APPLICATION_H + +#include "asn_system.h" /* for platform-dependent types */ +#include "asn_codecs.h" /* for ASN.1 codecs specifics */ +#include "asn_config.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A selection of ASN.1 Transfer Syntaxes to use with generalized + * encoders and decoders declared further in this .h file. + */ +enum asn_transfer_syntax { + /* Avoid appearance of a default transfer syntax. */ + ATS_INVALID = 0, + /* Plaintext output (not conforming to any standard), for debugging. */ + ATS_NONSTANDARD_PLAINTEXT, + /* Returns a randomly generated structure. */ + ATS_RANDOM, + /* + * X.690: + * BER: Basic Encoding Rules. + * DER: Distinguished Encoding Rules. + * CER: Canonical Encoding Rules. + * DER and CER are more strict variants of BER. + */ + ATS_BER, + ATS_DER, + ATS_CER, /* Only decoding is supported */ + /* + * X.696: + * OER: Octet Encoding Rules. + * CANONICAL-OER is a more strict variant of BASIC-OER. + */ + ATS_BASIC_OER, + ATS_CANONICAL_OER, + /* + * X.691: + * PER: Packed Encoding Rules. + * CANONICAL-PER is a more strict variant of BASIC-PER. + * NOTE: Produces or consumes a complete encoding (X.691 (08/2015) #11.1). + */ + ATS_UNALIGNED_BASIC_PER, + ATS_UNALIGNED_CANONICAL_PER, + ATS_ALIGNED_BASIC_PER, + ATS_ALIGNED_CANONICAL_PER, + /* + * X.693: + * XER: XML Encoding Rules. + * CANONICAL-XER is a more strict variant of BASIC-XER. + */ + ATS_BASIC_XER, + ATS_CANONICAL_XER, + ATS_JER, +}; + +/* + * A generic encoder for any supported transfer syntax. + * RETURN VALUES: + * The (.encoded) field of the return value is REDEFINED to mean the following: + * >=0: The computed size of the encoded data. Can exceed the (buffer_size). + * -1: Error encoding the structure. See the error code in (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * The (.failed_type) and (.structure_ptr) MIGHT be set to the appropriate + * values at the place of failure, if at all possible. + * WARNING: The (.encoded) field of the return value can exceed the buffer_size. + * This is similar to snprintf(3) contract which might return values + * greater than the buffer size. + */ +asn_enc_rval_t asn_encode_to_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, void *buffer, size_t buffer_size); + +/* + * A variant of asn_encode_to_buffer() with automatically allocated buffer. + * RETURN VALUES: + * On success, returns a newly allocated (.buffer) containing the whole message. + * The message size is returned in (.result.encoded). + * On failure: + * (.buffer) is NULL, + * (.result.encoded) as in asn_encode_to_buffer(), + * The errno codes as in asn_encode_to_buffer(), plus the following: + * ENOMEM: Memory allocation failed due to system or internal limits. + * The user is responsible for freeing the (.buffer). + */ +typedef struct asn_encode_to_new_buffer_result_s { + void *buffer; /* NULL if failed to encode. */ + asn_enc_rval_t result; +} asn_encode_to_new_buffer_result_t; +asn_encode_to_new_buffer_result_t asn_encode_to_new_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode); + + +/* + * Generic type of an application-defined callback to return various + * types of data to the application. + * EXPECTED RETURN VALUES: + * -1: Failed to consume bytes. Abort the mission. + * Non-negative return values indicate success, and ignored. + */ +typedef int(asn_app_consume_bytes_f)(const void *buffer, size_t size, + void *application_specific_key); + + +/* + * A generic encoder for any supported transfer syntax. + * Returns the comprehensive encoding result descriptor (see asn_codecs.h). + * RETURN VALUES: + * The negative (.encoded) field of the return values is accompanied with the + * following error codes (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * EIO: The (callback) has returned negative value during encoding. + */ +asn_enc_rval_t asn_encode( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, + asn_app_consume_bytes_f *callback, void *callback_key); + + +/* + * A generic decoder for any supported transfer syntax. + */ +asn_dec_rval_t asn_decode( + const asn_codec_ctx_t *opt_codec_parameters, enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_decode, + void **structure_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + + +/* + * A callback of this type is called whenever constraint validation fails + * on some ASN.1 type. See "constraints.h" for more details on constraint + * validation. + * This callback specifies a descriptor of the ASN.1 type which failed + * the constraint check, as well as human readable message on what + * particular constraint has failed. + */ +typedef void (asn_app_constraint_failed_f)(void *application_specific_key, + const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, + const void *structure_which_failed_ptr, + const char *error_message_format, ...) CC_PRINTFLIKE(4, 5); + + +#ifdef __cplusplus +} +#endif + +#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ + +#endif /* ASN_APPLICATION_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h new file mode 100644 index 000000000..f14714bbd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_BIT_DATA +#define ASN_BIT_DATA + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * This structure describes a position inside an incoming PER bit stream. + */ +typedef struct asn_bit_data_s { + const uint8_t *buffer; /* Pointer to the octet stream */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits in the stream */ + size_t moved; /* Number of bits moved through this bit stream */ + int (*refill)(struct asn_bit_data_s *); + void *refill_key; +} asn_bit_data_t; + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t *asn_bit_data_new_contiguous(const void *data, size_t size_bits); + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int32_t asn_get_few_bits(asn_bit_data_t *, int get_nbits); + +/* Undo the immediately preceding "get_few_bits" operation */ +void asn_get_undo(asn_bit_data_t *, int get_nbits); + +/* + * Extract a large number of bits from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int asn_get_many_bits(asn_bit_data_t *, uint8_t *dst, int right_align, + int get_nbits); + +/* Non-thread-safe debugging function, don't use it */ +char *asn_bit_data_string(asn_bit_data_t *); + +/* + * This structure supports forming bit output. + */ +typedef struct asn_bit_outp_s { + uint8_t *buffer; /* Pointer into the (tmpspace) */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits left in (tmpspace) */ + uint8_t tmpspace[32]; /* Preliminary storage to hold data */ + int (*output)(const void *data, size_t size, void *op_key); + void *op_key; /* Key for (output) data callback */ + size_t flushed_bytes; /* Bytes already flushed through (output) */ +} asn_bit_outp_t; + +/* Output a small number of bits (<= 31) */ +int asn_put_few_bits(asn_bit_outp_t *, uint32_t bits, int obits); + +/* Output a large number of bits */ +int asn_put_many_bits(asn_bit_outp_t *, const uint8_t *src, int put_nbits); + +/* + * Flush whole bytes (0 or more) through (outper) member. + * The least significant bits which are not used are guaranteed to be set to 0. + * Returns -1 if callback returns -1. Otherwise, 0. + */ +int asn_put_aligned_flush(asn_bit_outp_t *); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_BIT_DATA */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h new file mode 100644 index 000000000..e75c2709c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_H +#define ASN_CODECS_H + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * This structure defines a set of parameters that may be passed + * to every ASN.1 encoder or decoder function. + * WARNING: if max_stack_size member is set, and you are calling the + * function pointers of the asn_TYPE_descriptor_t directly, + * this structure must be ALLOCATED ON THE STACK! + * If you can't always satisfy this requirement, use ber_decode(), + * xer_decode() and uper_decode() functions instead. + */ +typedef struct asn_codec_ctx_s { + /* + * Limit the decoder routines to use no (much) more stack than a given + * number of bytes. Most of decoders are stack-based, and this + * would protect against stack overflows if the number of nested + * encodings is high. + * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, + * and are safe from this kind of overflow. + * A value from getrlimit(RLIMIT_STACK) may be used to initialize + * this variable. Be careful in multithreaded environments, as the + * stack size is rather limited. + */ + size_t max_stack_size; /* 0 disables stack bounds checking */ +} asn_codec_ctx_t; + +/* + * Type of the return value of the encoding functions (der_encode, xer_encode). + */ +typedef struct asn_enc_rval_s { + /* + * Number of bytes encoded. + * -1 indicates failure to encode the structure. + * In this case, the members below this one are meaningful. + */ + ssize_t encoded; + + /* + * Members meaningful when (encoded == -1), for post mortem analysis. + */ + + /* Type which cannot be encoded */ + const struct asn_TYPE_descriptor_s *failed_type; + + /* Pointer to the structure of that type */ + const void *structure_ptr; +} asn_enc_rval_t; +#define ASN__ENCODE_FAILED do { \ + asn_enc_rval_t tmp_error; \ + tmp_error.encoded = -1; \ + tmp_error.failed_type = td; \ + tmp_error.structure_ptr = sptr; \ + ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__ENCODED_OK(rval) do { \ + rval.structure_ptr = 0; \ + rval.failed_type = 0; \ + return rval; \ +} while(0) + +/* + * Type of the return value of the decoding functions (ber_decode, xer_decode) + * + * Please note that the number of consumed bytes is ALWAYS meaningful, + * even if code==RC_FAIL. This is to indicate the number of successfully + * decoded bytes, hence providing a possibility to fail with more diagnostics + * (i.e., print the offending remainder of the buffer). + */ +enum asn_dec_rval_code_e { + RC_OK, /* Decoded successfully */ + RC_WMORE, /* More data expected, call again */ + RC_FAIL /* Failure to decode data */ +}; +typedef struct asn_dec_rval_s { + enum asn_dec_rval_code_e code; /* Result code */ + size_t consumed; /* Number of bytes consumed */ +} asn_dec_rval_t; +#define ASN__DECODE_FAILED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_FAIL; \ + tmp_error.consumed = 0; \ + ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__DECODE_STARVED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_WMORE; \ + tmp_error.consumed = 0; \ + return tmp_error; \ +} while(0) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h new file mode 100644 index 000000000..5bbd9cfbc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h @@ -0,0 +1,56 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_PRIM_H +#define ASN_CODECS_PRIM_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ASN__PRIMITIVE_TYPE_s { + uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ + size_t size; /* Size of the buffer */ +} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ + +asn_struct_free_f ASN__PRIMITIVE_TYPE_free; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f ber_decode_primitive; +der_type_encoder_f der_encode_primitive; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +/* + * A callback specification for the xer_decode_primitive() function below. + */ +enum xer_pbd_rval { + XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ + XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ + XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ + XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ + XPBD_BODY_CONSUMED /* Body is recognized and consumed */ +}; +typedef enum xer_pbd_rval(xer_primitive_body_decoder_f)( + const asn_TYPE_descriptor_t *td, void *struct_ptr, const void *chunk_buf, + size_t chunk_size); + +/* + * Specific function to decode simple primitive types. + * Also see xer_decode_general() in xer_decoder.h + */ +asn_dec_rval_t xer_decode_primitive( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + size_t struct_size, const char *opt_mname, const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder); +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h new file mode 100644 index 000000000..551bcc7fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h @@ -0,0 +1,2 @@ +// Generated automatically. Don't edit manually! + diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h new file mode 100644 index 000000000..cdd7ad7c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h @@ -0,0 +1,308 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + */ + +#ifndef _ASN_CONSTANT_H +#define _ASN_CONSTANT_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define min_val_AddGrpB_Angle (0) +#define max_val_AddGrpB_Angle (239) +#define min_val_Day (0) +#define max_val_Day (255) +#define min_val_DegreesLat (-90) +#define max_val_DegreesLat (90) +#define min_val_DegreesLong (-180) +#define max_val_DegreesLong (180) +#define min_val_AddGrpB_Elevation (-32768) +#define max_val_AddGrpB_Elevation (32767) +#define min_val_Hour (0) +#define max_val_Hour (255) +#define min_val_LatitudeDMS (-32400000) +#define max_val_LatitudeDMS (32400000) +#define min_val_LongitudeDMS (-64800000) +#define max_val_LongitudeDMS (64800000) +#define min_val_MaxTimetoChange (0) +#define max_val_MaxTimetoChange (2402) +#define min_val_MinTimetoChange (0) +#define max_val_MinTimetoChange (2402) +#define min_val_Minute (0) +#define max_val_Minute (255) +#define min_val_MinutesAngle (0) +#define max_val_MinutesAngle (59) +#define min_val_Month (1) +#define max_val_Month (255) +#define min_val_AddGrpB_MsgCount (0) +#define max_val_AddGrpB_MsgCount (255) +#define min_val_Second (0) +#define max_val_Second (60) +#define min_val_SecondsAngle (0) +#define max_val_SecondsAngle (5999) +#define min_val_TenthSecond (0) +#define max_val_TenthSecond (9) +#define min_val_TimeRemaining (0) +#define max_val_TimeRemaining (9001) +#define min_val_Year (1) +#define max_val_Year (65535) +#define min_val_AltitudeValue (-100000) +#define max_val_AltitudeValue (800001) +#define min_val_PartII_Id (0) +#define max_val_PartII_Id (63) +#define min_val_TrailerMass (0) +#define max_val_TrailerMass (255) +#define min_val_VertOffset_B07 (-64) +#define max_val_VertOffset_B07 (63) +#define min_val_Acceleration (-2000) +#define max_val_Acceleration (2001) +#define min_val_AmbientAirPressure (0) +#define max_val_AmbientAirPressure (255) +#define min_val_AmbientAirTemperature (0) +#define max_val_AmbientAirTemperature (191) +#define min_val_Common_Angle (0) +#define max_val_Common_Angle (28800) +#define min_val_ApproachID (0) +#define max_val_ApproachID (15) +#define min_val_BasicVehicleClass (0) +#define max_val_BasicVehicleClass (255) +#define min_val_BumperHeight (0) +#define max_val_BumperHeight (127) +#define min_val_CoarseHeading (0) +#define max_val_CoarseHeading (240) +#define min_val_CoefficientOfFriction (0) +#define max_val_CoefficientOfFriction (50) +#define min_val_Confidence (0) +#define max_val_Confidence (200) +#define min_val_Count (0) +#define max_val_Count (32) +#define min_val_DDay (0) +#define max_val_DDay (31) +#define min_val_DeltaAngle (-150) +#define max_val_DeltaAngle (150) +#define min_val_DHour (0) +#define max_val_DHour (31) +#define min_val_DMinute (0) +#define max_val_DMinute (60) +#define min_val_DMonth (0) +#define max_val_DMonth (12) +#define min_val_DOffset (-840) +#define max_val_DOffset (840) +#define min_val_DrivenLineOffsetLg (-32767) +#define max_val_DrivenLineOffsetLg (32767) +#define min_val_DrivenLineOffsetSm (-2047) +#define max_val_DrivenLineOffsetSm (2047) +#define min_val_DSecond (0) +#define max_val_DSecond (65535) +#define min_val_Duration (0) +#define max_val_Duration (3600) +#define min_val_DYear (0) +#define max_val_DYear (4095) +#define min_val_Common_Elevation (-4096) +#define max_val_Common_Elevation (61439) +#define min_val_FuelType (0) +#define max_val_FuelType (15) +#define min_val_GrossSpeed (0) +#define max_val_GrossSpeed (31) +#define min_val_Heading (0) +#define max_val_Heading (28800) +#define min_val_IntersectionID (0) +#define max_val_IntersectionID (65535) +#define min_val_Iso3833VehicleType (0) +#define max_val_Iso3833VehicleType (100) +#define min_val_TrailerWeight (0) +#define max_val_TrailerWeight (64255) +#define min_val_LaneConnectionID (0) +#define max_val_LaneConnectionID (255) +#define min_val_LaneID (0) +#define max_val_LaneID (255) +#define min_val_LaneWidth (0) +#define max_val_LaneWidth (32767) +#define min_val_Latitude (-900000000) +#define max_val_Latitude (900000001) +#define min_val_Longitude (-1799999999) +#define max_val_Longitude (1800000001) +#define min_val_MergeDivergeNodeAngle (-180) +#define max_val_MergeDivergeNodeAngle (180) +#define min_val_MinuteOfTheYear (0) +#define max_val_MinuteOfTheYear (527040) +#define min_val_Common_MsgCount (0) +#define max_val_Common_MsgCount (127) +#define min_val_ObstacleDistance (0) +#define max_val_ObstacleDistance (32767) +#define min_val_Offset_B09 (-256) +#define max_val_Offset_B09 (255) +#define min_val_Offset_B10 (-512) +#define max_val_Offset_B10 (511) +#define min_val_Offset_B11 (-1024) +#define max_val_Offset_B11 (1023) +#define min_val_Offset_B12 (-2048) +#define max_val_Offset_B12 (2047) +#define min_val_Offset_B13 (-4096) +#define max_val_Offset_B13 (4095) +#define min_val_Offset_B14 (-8192) +#define max_val_Offset_B14 (8191) +#define min_val_Offset_B16 (-32768) +#define max_val_Offset_B16 (32767) +#define min_val_OffsetLL_B18 (-131072) +#define max_val_OffsetLL_B18 (131071) +#define min_val_RadiusOfCurvature (-32767) +#define max_val_RadiusOfCurvature (32767) +#define min_val_RegionId (0) +#define max_val_RegionId (255) +#define min_val_RequestID (0) +#define max_val_RequestID (255) +#define min_val_RestrictionClassID (0) +#define max_val_RestrictionClassID (255) +#define min_val_RoadRegulatorID (0) +#define max_val_RoadRegulatorID (65535) +#define min_val_RoadSegmentID (0) +#define max_val_RoadSegmentID (65535) +#define min_val_RoadwayCrownAngle (-128) +#define max_val_RoadwayCrownAngle (127) +#define min_val_Scale_B12 (-2048) +#define max_val_Scale_B12 (2047) +#define min_val_SemiMajorAxisAccuracy (0) +#define max_val_SemiMajorAxisAccuracy (255) +#define min_val_SemiMajorAxisOrientation (0) +#define max_val_SemiMajorAxisOrientation (65535) +#define min_val_SemiMinorAxisAccuracy (0) +#define max_val_SemiMinorAxisAccuracy (255) +#define min_val_SignalGroupID (0) +#define max_val_SignalGroupID (255) +#define min_val_Speed (0) +#define max_val_Speed (8191) +#define min_val_SSPindex (0) +#define max_val_SSPindex (31) +#define min_val_StationID (0) +#define max_val_StationID (4294967295) +#define min_val_SteeringWheelAngle (-126) +#define max_val_SteeringWheelAngle (127) +#define min_val_TimeOffset (1) +#define max_val_TimeOffset (65535) +#define min_val_VehicleHeight (0) +#define max_val_VehicleHeight (127) +#define min_val_VehicleLength (0) +#define max_val_VehicleLength (4095) +#define min_val_VehicleMass (0) +#define max_val_VehicleMass (255) +#define min_val_VehicleWidth (0) +#define max_val_VehicleWidth (1023) +#define min_val_Velocity (0) +#define max_val_Velocity (8191) +#define min_val_VerticalAcceleration (-127) +#define max_val_VerticalAcceleration (127) +#define min_val_VertOffset_B08 (-128) +#define max_val_VertOffset_B08 (127) +#define min_val_VertOffset_B09 (-256) +#define max_val_VertOffset_B09 (255) +#define min_val_VertOffset_B10 (-512) +#define max_val_VertOffset_B10 (511) +#define min_val_VertOffset_B11 (-1024) +#define max_val_VertOffset_B11 (1023) +#define min_val_VertOffset_B12 (-2048) +#define max_val_VertOffset_B12 (2047) +#define min_val_WiperRate (0) +#define max_val_WiperRate (127) +#define min_val_YawRate (-32767) +#define max_val_YawRate (32767) +#define min_val_ITIScodes (0) +#define max_val_ITIScodes (65535) +#define min_val_LayerID (0) +#define max_val_LayerID (100) +#define min_val_DSRCmsgID (0) +#define max_val_DSRCmsgID (32767) +#define min_val_NMEA_MsgType (0) +#define max_val_NMEA_MsgType (32767) +#define min_val_ObjectCount (0) +#define max_val_ObjectCount (1023) +#define min_val_EssMobileFriction (0) +#define max_val_EssMobileFriction (101) +#define min_val_EssPrecipRate (0) +#define max_val_EssPrecipRate (65535) +#define min_val_EssSolarRadiation (0) +#define max_val_EssSolarRadiation (65535) +#define min_val_AttachmentRadius (0) +#define max_val_AttachmentRadius (200) +#define min_val_PersonalClusterRadius (0) +#define max_val_PersonalClusterRadius (100) +#define min_val_GrossDistance (0) +#define max_val_GrossDistance (1023) +#define min_val_SecondOfTime (0) +#define max_val_SecondOfTime (61) +#define min_val_TermDistance (1) +#define max_val_TermDistance (30000) +#define min_val_TermTime (1) +#define max_val_TermTime (1800) +#define min_val_DrivingWheelAngle (-128) +#define max_val_DrivingWheelAngle (127) +#define min_val_AxleLocation (0) +#define max_val_AxleLocation (255) +#define min_val_AxleWeight (0) +#define max_val_AxleWeight (64255) +#define min_val_CargoWeight (0) +#define max_val_CargoWeight (64255) +#define min_val_DriveAxleLiftAirPressure (0) +#define max_val_DriveAxleLiftAirPressure (1000) +#define min_val_DriveAxleLocation (0) +#define max_val_DriveAxleLocation (255) +#define min_val_DriveAxleLubePressure (0) +#define max_val_DriveAxleLubePressure (250) +#define min_val_DriveAxleTemperature (-40) +#define max_val_DriveAxleTemperature (210) +#define min_val_SteeringAxleLubePressure (0) +#define max_val_SteeringAxleLubePressure (250) +#define min_val_SteeringAxleTemperature (-40) +#define max_val_SteeringAxleTemperature (210) +#define min_val_TireLeakageRate (0) +#define max_val_TireLeakageRate (64255) +#define min_val_TireLocation (0) +#define max_val_TireLocation (255) +#define min_val_TirePressure (0) +#define max_val_TirePressure (250) +#define min_val_TireTemp (-8736) +#define max_val_TireTemp (55519) +#define min_val_ProbeSegmentNumber (0) +#define max_val_ProbeSegmentNumber (32767) +#define min_val_SteeringWheelAngleRateOfChange (-127) +#define max_val_SteeringWheelAngleRateOfChange (127) +#define min_val_SunSensor (0) +#define max_val_SunSensor (1000) +#define min_val_ThrottlePosition (0) +#define max_val_ThrottlePosition (200) +#define min_val_DeltaTime (-122) +#define max_val_DeltaTime (121) +#define min_val_SpeedAdvice (0) +#define max_val_SpeedAdvice (500) +#define min_val_TimeIntervalConfidence (0) +#define max_val_TimeIntervalConfidence (15) +#define min_val_SPAT_TimeMark (0) +#define max_val_SPAT_TimeMark (36111) +#define min_val_ZoneLength (0) +#define max_val_ZoneLength (10000) +#define min_val_MinutesDuration (0) +#define max_val_MinutesDuration (32000) +#define min_val_OffsetLL_B12 (-2048) +#define max_val_OffsetLL_B12 (2047) +#define min_val_OffsetLL_B14 (-8192) +#define max_val_OffsetLL_B14 (8191) +#define min_val_OffsetLL_B16 (-32768) +#define max_val_OffsetLL_B16 (32767) +#define min_val_OffsetLL_B22 (-2097152) +#define max_val_OffsetLL_B22 (2097151) +#define min_val_OffsetLL_B24 (-8388608) +#define max_val_OffsetLL_B24 (8388607) +#define min_val_Radius_B12 (0) +#define max_val_Radius_B12 (4095) +#define min_val_SignPrority (0) +#define max_val_SignPrority (7) +#define min_val_Zoom (0) +#define max_val_Zoom (15) + + +#ifdef __cplusplus +} +#endif + +#endif /* _ASN_CONSTANT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h new file mode 100644 index 000000000..d6ce61980 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h @@ -0,0 +1,187 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Declarations internally useful for the ASN.1 support code. + */ +#ifndef ASN_INTERNAL_H +#define ASN_INTERNAL_H +#ifndef __EXTENSIONS__ +#define __EXTENSIONS__ /* for Sun */ +#endif + +#include "asn_application.h" /* Application-visible API */ + +#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ +#include /* for assert() macro */ +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#include +#include +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#include +#include +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/* Environment version might be used to avoid running with the old library */ +#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ +int get_asn1c_environment_version(void); /* Run-time version */ + +#define CALLOC(nmemb, size) calloc(nmemb, size) +#define MALLOC(size) malloc(size) +#define REALLOC(oldptr, size) realloc(oldptr, size) +#define FREEMEM(ptr) free(ptr) + +#define asn_debug_indent 0 +#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) + +#ifdef EMIT_ASN_DEBUG +#warning "Use ASN_EMIT_DEBUG instead of EMIT_ASN_DEBUG" +#define ASN_EMIT_DEBUG EMIT_ASN_DEBUG +#endif + +/* + * A macro for debugging the ASN.1 internals. + * You may enable or override it. + */ +#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ +#if ASN_EMIT_DEBUG == 1 /* And it was asked to emit this code... */ +#if __STDC_VERSION__ >= 199901L +#ifdef ASN_THREAD_SAFE +/* Thread safety requires sacrifice in output indentation: + * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ +#else /* !ASN_THREAD_SAFE */ +#undef ASN_DEBUG_INDENT_ADD +#undef asn_debug_indent +int asn_debug_indent; +#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) +#endif /* ASN_THREAD_SAFE */ +#define ASN_DEBUG(fmt, args...) do { \ + int adi = asn_debug_indent; \ + while(adi--) fprintf(stderr, " "); \ + fprintf(stderr, fmt, ##args); \ + fprintf(stderr, " (%s:%d)\n", \ + __FILE__, __LINE__); \ + } while(0) +#else /* !C99 */ +void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); +#define ASN_DEBUG ASN_DEBUG_f +#endif /* C99 */ +#else /* ASN_EMIT_DEBUG != 1 */ +#if __STDC_VERSION__ >= 199901L +#define ASN_DEBUG(...) do{}while(0) +#else /* not C99 */ +static void CC_PRINTFLIKE(1, 2) ASN_DEBUG(const char *fmt, ...) { (void)fmt; } +#endif /* C99 or better */ +#endif /* ASN_EMIT_DEBUG */ +#endif /* ASN_DEBUG */ + +/* + * Print to a callback. + * The callback is expected to return negative values on error. + * 0 and positive values are treated as success. + * RETURN VALUES: + * -1: Failed to format or invoke the callback. + * >0: Size of the data that got delivered to the callback. + */ +ssize_t CC_PRINTFLIKE(3, 4) +asn__format_to_callback( + int (*callback)(const void *, size_t, void *key), void *key, + const char *fmt, ...); + +/* + * Invoke the application-supplied callback and fail, if something is wrong. + */ +#define ASN__E_cbc(buf, size) (cb((buf), (size), app_key) < 0) +#define ASN__E_CALLBACK(size, foo) \ + do { \ + if(foo) goto cb_failed; \ + er.encoded += (size); \ + } while(0) +#define ASN__CALLBACK(buf, size) ASN__E_CALLBACK(size, ASN__E_cbc(buf, size)) +#define ASN__CALLBACK2(buf1, size1, buf2, size2) \ + ASN__E_CALLBACK((size1) + (size2), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2)) +#define ASN__CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ + ASN__E_CALLBACK((size1) + (size2) + (size3), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2) \ + || ASN__E_cbc(buf3, size3)) + +#define ASN__TEXT_INDENT(nl, level) \ + do { \ + int tmp_level = (level); \ + int tmp_nl = ((nl) != 0); \ + int tmp_i; \ + if(tmp_nl) ASN__CALLBACK("\n", 1); \ + if(tmp_level < 0) tmp_level = 0; \ + for(tmp_i = 0; tmp_i < tmp_level; tmp_i++) ASN__CALLBACK(" ", 4); \ + } while(0) + +#define _i_INDENT(nl) do { \ + int tmp_i; \ + if((nl) && cb("\n", 1, app_key) < 0) \ + return -1; \ + for(tmp_i = 0; tmp_i < ilevel; tmp_i++) \ + if(cb(" ", 4, app_key) < 0) \ + return -1; \ + } while(0) + +/* + * Check stack against overflow, if limit is set. + */ + +/* Since GCC 13, AddressSanitizer started defaulting to +* ASAN_OPTIONS="detect_stack_use_after_return=1", which makes this check +* fail due to apparently jumping stack pointers. +* Hence, disable this check if building with ASan, as documented in: +* GCC: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html +* Clang: https://clang.llvm.org/docs/AddressSanitizer.html#conditional-compilation-with-has-feature-address-sanitizer +*/ +#if defined(__SANITIZE_ADDRESS__) + #define ASN__SANITIZE_ENABLED 1 +#elif defined(__has_feature) +#if __has_feature(address_sanitizer) + #define ASN__SANITIZE_ENABLED 1 +#endif +#endif + +#define ASN__DEFAULT_STACK_MAX (30000) + +#if defined(ASN__SANITIZE_ENABLED) || defined(ASN_DISABLE_STACK_OVERFLOW_CHECK) +static int CC_NOTUSED +ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { + (void)ctx; + return 0; +} +#else +static int CC_NOTUSED +ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { + if(ctx && ctx->max_stack_size) { + + /* ctx MUST be allocated on the stack */ + ptrdiff_t usedstack = ((const char *)ctx - (const char *)&ctx); + if(usedstack > 0) usedstack = -usedstack; /* grows up! */ + + /* double negative required to avoid int wrap-around */ + if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { + ASN_DEBUG("Stack limit %ld reached", + (long)ctx->max_stack_size); + return -1; + } + } + return 0; +} +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_INTERNAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h new file mode 100644 index 000000000..7de210ee0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h @@ -0,0 +1,51 @@ +/* + * Run-time support for Information Object Classes. + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_IOC_H +#define ASN_IOC_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; +struct asn_ioc_cell_s; + +/* + * X.681, #13 + */ +typedef struct asn_ioc_set_s { + size_t rows_count; + size_t columns_count; + const struct asn_ioc_cell_s *rows; +} asn_ioc_set_t; + + +typedef struct asn_ioc_cell_s { + const char *field_name; /* Is equal to corresponding column_name */ + enum { + aioc__undefined = 0, + aioc__value, + aioc__type, + aioc__open_type, + } cell_kind; + struct asn_TYPE_descriptor_s *type_descriptor; + const void *value_sptr; + struct { + size_t types_count; + struct { + unsigned choice_position; + } *types; + } open_type; +} asn_ioc_cell_t; + + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_IOC_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h new file mode 100644 index 000000000..47f9b8af0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_RANDOM_FILL +#define ASN_RANDOM_FILL + +/* Forward declarations */ +struct asn_TYPE_descriptor_s; +struct asn_encoding_constraints_s; + +/* + * Initialize a structure with random data according to the type specification + * and optional member constraints. + * ARGUMENTS: + * (max_length) - See (approx_max_length_limit). + * (memb_constraints) - Member constraints, if exist. + * The type can be constrained differently according + * to PER and OER specifications, so we find a value + * at the intersection of these constraints. + * In case the return differs from ARFILL_OK, the (struct_ptr) contents + * and (current_length) value remain in their original state. + */ +typedef struct asn_random_fill_result_s { + enum { + ARFILL_FAILED = -1, /* System error (memory?) */ + ARFILL_OK = 0, /* Initialization succeeded */ + ARFILL_SKIPPED = 1 /* Not done due to (length?) constraint */ + } code; + size_t length; /* Approximate number of bytes created. */ +} asn_random_fill_result_t; +typedef asn_random_fill_result_t(asn_random_fill_f)( + const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + const struct asn_encoding_constraints_s *memb_constraints, + size_t max_length); + +/* + * Returns 0 if the structure was properly initialized, -1 otherwise. + * The (approx_max_length_limit) specifies the approximate limit of the + * resulting structure in units closely resembling bytes. The actual result + * might be several times larger or smaller than the length limit. + */ +int asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t approx_max_length_limit); + +/* + * Returns a random number between min and max. + */ +intmax_t asn_random_between(intmax_t min, intmax_t max); + +#endif /* ASN_RANDOM_FILL */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h new file mode 100644 index 000000000..0f0d495b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h @@ -0,0 +1,169 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Miscellaneous system-dependent types. + */ +#ifndef ASN_SYSTEM_H +#define ASN_SYSTEM_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifndef _DEFAULT_SOURCE +#define _DEFAULT_SOURCE 1 +#endif + +#ifndef _BSD_SOURCE +#define _BSD_SOURCE /* for snprintf() on some linux systems */ +#endif + +#include /* For snprintf(3) */ +#include /* For *alloc(3) */ +#include /* For memcpy(3) */ +#include /* For size_t */ +#include /* For LONG_MAX */ +#include /* For va_start */ +#include /* for offsetof and ptrdiff_t */ +#include /* for PRIdMAX */ + +#ifdef _WIN32 + +#include +#ifndef __MINGW32__ +#define snprintf _snprintf +#define vsnprintf _vsnprintf +#endif + +/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ +#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ + | (((l) << 8) & 0xff0000) \ + | (((l) >> 8) & 0xff00) \ + | ((l >> 24) & 0xff)) + +#ifdef _MSC_VER /* MSVS.Net */ +#ifndef __cplusplus +#define inline __inline +#endif +#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ +#define ssize_t SSIZE_T +#if _MSC_VER < 1600 +typedef char int8_t; +typedef short int16_t; +typedef int int32_t; +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; +#else /* _MSC_VER >= 1600 */ +#include +#endif /* _MSC_VER < 1600 */ +#endif /* ASSUMESTDTYPES */ +#define WIN32_LEAN_AND_MEAN +#include +#include +#define isnan _isnan +#define finite _finite +#define copysign _copysign +#define ilogb _logb +#else /* !_MSC_VER */ +#include +#endif /* _MSC_VER */ + +#else /* !_WIN32 */ + +#if defined(__vxworks) +#include +#else /* !defined(__vxworks) */ + +#include /* C99 specifies this file */ +#ifdef HAVE_NETINET_IN_H +#include /* for ntohl() */ +#endif +#define sys_ntohl(foo) ntohl(foo) +#endif /* defined(__vxworks) */ + +#endif /* _WIN32 */ + +#if __GNUC__ >= 3 || defined(__clang__) +#define CC_ATTRIBUTE(attr) __attribute__((attr)) +#else +#define CC_ATTRIBUTE(attr) +#endif +#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__>= 4) || __GNUC__ > 4) +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(gnu_printf, fmt, var)) +#elif defined(__GNUC__) +#if defined(ANDROID) +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(__format__(__printf__, fmt, var)) +#else +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(printf, fmt, var)) +#endif +#else +#define CC_PRINTFLIKE(fmt, var) +#endif +#define CC_NOTUSED CC_ATTRIBUTE(unused) +#ifndef CC_ATTR_NO_SANITIZE +#if __GNUC__ < 8 +#define CC_ATTR_NO_SANITIZE(what) +#else +#define CC_ATTR_NO_SANITIZE(what) CC_ATTRIBUTE(no_sanitize(what)) +#endif +#endif + +/* Figure out if thread safety is requested */ +#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) +#define ASN_THREAD_SAFE +#endif /* Thread safety */ + +#ifndef offsetof /* If not defined by */ +#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) +#endif /* offsetof */ + +#ifndef MIN /* Suitable for comparing primitive types (integers) */ +#if defined(__GNUC__) +#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ + ((_a)<(_b)?(_a):(_b)); }) +#else /* !__GNUC__ */ +#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ +#endif /* __GNUC__ */ +#endif /* MIN */ + +#if __STDC_VERSION__ >= 199901L +#ifndef SIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#endif + +#ifndef RSIZE_MAX /* C11, Annex K */ +#define RSIZE_MAX (SIZE_MAX >> 1) +#endif +#ifndef RSSIZE_MAX /* Halve signed size even further than unsigned */ +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif +#else /* Old compiler */ +#undef SIZE_MAX +#undef RSIZE_MAX +#undef RSSIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#define RSIZE_MAX (SIZE_MAX >> 1) +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif + +#if __STDC_VERSION__ >= 199901L +#define ASN_PRI_SIZE "zu" +#define ASN_PRI_SSIZE "zd" +#define ASN_PRIuMAX PRIuMAX +#define ASN_PRIdMAX PRIdMAX +#else +#define ASN_PRI_SIZE "lu" +#define ASN_PRI_SSIZE "ld" +#if LLONG_MAX > LONG_MAX +#define ASN_PRIuMAX "llu" +#define ASN_PRIdMAX "lld" +#else +#define ASN_PRIuMAX "lu" +#define ASN_PRIdMAX "ld" +#endif +#endif + +#endif /* ASN_SYSTEM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h new file mode 100644 index 000000000..1ac2a5ef0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h @@ -0,0 +1,66 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_DECODER_H_ +#define _BER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The BER decoder of any type. + * This function may be invoked directly from the application. + * Decodes BER, DER and CER data (DER and CER are different subsets of BER). + * + * NOTE: Use the der_encode() function (der_encoder.h) to produce encoding + * which is compliant with ber_decode(). + */ +asn_dec_rval_t ber_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(ber_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const void *buf_ptr, size_t size, int tag_mode); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Check that all tags correspond to the type definition (as given in head). + * On return, last_length would contain either a non-negative length of the + * value part of the last TLV, or the negative number of expected + * "end of content" sequences. The number may only be negative if the + * head->last_tag_form is non-zero. + */ +asn_dec_rval_t ber_check_tags( + const struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ + const struct asn_TYPE_descriptor_s *type_descriptor, + asn_struct_ctx_t *opt_ctx, /* saved decoding context */ + const void *ptr, size_t size, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {-1,0:1}: any, primitive, constr */ + ber_tlv_len_t *last_length, int *opt_tlv_form /* optional tag form */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h new file mode 100644 index 000000000..d1e4d48dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_LENGTH_H_ +#define _BER_TLV_LENGTH_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ssize_t ber_tlv_len_t; + +/* + * This function tries to fetch the length of the BER TLV value and place it + * in *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + * On return with >0, len_r is constrained as -1..MAX, where -1 mean + * that the value is of indefinite length. + */ +ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r); + +/* + * This function expects bufptr to be positioned over L in TLV. + * It returns number of bytes occupied by L and V together, suitable + * for skipping. The function properly handles indefinite length. + * RETURN VALUES: + * Standard {-1,0,>0} convention. + */ +ssize_t ber_skip_length( + const struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ + int _is_constructed, const void *bufptr, size_t size); + +/* + * This function serializes the length (L from TLV) in DER format. + * It always returns number of bytes necessary to represent the length, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h new file mode 100644 index 000000000..ce227add6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_TAG_H_ +#define _BER_TLV_TAG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum asn_tag_class { + ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ + ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ + ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ + ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ +}; +typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ + +/* + * Tag class is encoded together with tag value for optimization purposes. + */ +#define BER_TAG_CLASS(tag) ((tag) & 0x3) +#define BER_TAG_VALUE(tag) ((tag) >> 2) +#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) + +#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) + +/* + * Several functions for printing the TAG in the canonical form + * (i.e. "[PRIVATE 0]"). + * Return values correspond to their libc counterparts (if any). + */ +ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); +ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); +char *ber_tlv_tag_string(ber_tlv_tag_t tag); + + +/* + * This function tries to fetch the tag from the input stream. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering tag. + * >0: Number of bytes used from bufptr. tag_r will contain the tag. + */ +ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); + +/* + * This function serializes the tag (T from TLV) in BER format. + * It always returns number of bytes necessary to represent the tag, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h new file mode 100644 index 000000000..03d606c88 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_CHOICE_H_ +#define _CONSTR_CHOICE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_CHOICE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_codec_ctx_t member */ + unsigned pres_offset; /* Identifier of the present member */ + unsigned pres_size; /* Size of the identifier (enum) */ + + /* + * Tags to members mapping table. + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* Canonical ordering of CHOICE elements, for PER */ + const unsigned *to_canonical_order; + const unsigned *from_canonical_order; + + /* + * Extensions-related stuff. + */ + signed ext_start; /* First member of extensions, or -1 */ +} asn_CHOICE_specifics_t; + +/* + * A set specialized functions dealing with the CHOICE type. + */ +asn_struct_free_f CHOICE_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f CHOICE_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f CHOICE_compare; + +asn_constr_check_f CHOICE_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f CHOICE_decode_ber; +der_type_encoder_f CHOICE_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f CHOICE_decode_xer; +xer_type_encoder_f CHOICE_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f CHOICE_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f CHOICE_decode_oer; +oer_type_encoder_f CHOICE_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f CHOICE_decode_uper; +per_type_encoder_f CHOICE_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f CHOICE_decode_aper; +per_type_encoder_f CHOICE_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f CHOICE_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +asn_outmost_tag_f CHOICE_outmost_tag; + +extern asn_TYPE_operation_t asn_OP_CHOICE; + +unsigned _fetch_present_idx( + const void *struct_ptr, + unsigned off, + unsigned size); + +void _set_present_idx( + void *sptr, + unsigned offset, + unsigned size, + unsigned present); + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, + const void *structure_ptr); + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, + void *structure_ptr, unsigned present); + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h new file mode 100644 index 000000000..5ecfd8f22 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h @@ -0,0 +1,95 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_H_ +#define _CONSTR_SEQUENCE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SEQUENCE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* + * Tags to members mapping table (sorted). + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* + * Optional members of the extensions root (roms) or additions (aoms). + * Meaningful for PER. + */ + const int *oms; /* Optional MemberS */ + unsigned roms_count; /* Root optional members count */ + unsigned aoms_count; /* Additions optional members count */ + + /* + * Description of an extensions group. + * Root components are clustered at the beginning of the structure, + * whereas extensions are clustered at the end. -1 means not extensible. + */ + signed first_extension; /* First extension addition */ +} asn_SEQUENCE_specifics_t; + + +/* + * A set specialized functions dealing with the SEQUENCE type. + */ +asn_struct_free_f SEQUENCE_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f SEQUENCE_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SEQUENCE_compare; + +asn_constr_check_f SEQUENCE_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f SEQUENCE_decode_ber; +der_type_encoder_f SEQUENCE_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f SEQUENCE_decode_xer; +xer_type_encoder_f SEQUENCE_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SEQUENCE_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f SEQUENCE_decode_oer; +oer_type_encoder_f SEQUENCE_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f SEQUENCE_decode_uper; +per_type_encoder_f SEQUENCE_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f SEQUENCE_decode_aper; +per_type_encoder_f SEQUENCE_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f SEQUENCE_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SEQUENCE; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h new file mode 100644 index 000000000..1768582bf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h @@ -0,0 +1,67 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_OF_H_ +#define _CONSTR_SEQUENCE_OF_H_ + +#include +#include /* Implemented using SET OF */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A set specialized functions dealing with the SEQUENCE OF type. + * Generally implemented using SET OF. + */ +#define SEQUENCE_OF_free SET_OF_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define SEQUENCE_OF_print SET_OF_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SEQUENCE_OF_compare; + +#define SEQUENCE_OF_constraint SET_OF_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define SEQUENCE_OF_decode_ber SET_OF_decode_ber +der_type_encoder_f SEQUENCE_OF_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define SEQUENCE_OF_decode_xer SET_OF_decode_xer +xer_type_encoder_f SEQUENCE_OF_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SEQUENCE_OF_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#define SEQUENCE_OF_decode_oer SET_OF_decode_oer +#define SEQUENCE_OF_encode_oer SET_OF_encode_oer +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define SEQUENCE_OF_decode_uper SET_OF_decode_uper +per_type_encoder_f SEQUENCE_OF_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define SEQUENCE_OF_decode_aper SET_OF_decode_aper +per_type_encoder_f SEQUENCE_OF_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#define SEQUENCE_OF_random_fill SET_OF_random_fill +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SEQUENCE_OF; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h new file mode 100644 index 000000000..0e9dd39a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef CONSTR_SET_OF_H +#define CONSTR_SET_OF_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SET_OF_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* XER-specific stuff */ + int as_XMLValueList; /* The member type must be encoded like this */ +} asn_SET_OF_specifics_t; + +/* + * A set specialized functions dealing with the SET OF type. + */ +asn_struct_free_f SET_OF_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f SET_OF_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SET_OF_compare; + +asn_constr_check_f SET_OF_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f SET_OF_decode_ber; +der_type_encoder_f SET_OF_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f SET_OF_decode_xer; +xer_type_encoder_f SET_OF_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SET_OF_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f SET_OF_decode_oer; +oer_type_encoder_f SET_OF_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f SET_OF_decode_uper; +per_type_encoder_f SET_OF_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f SET_OF_decode_aper; +per_type_encoder_f SET_OF_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f SET_OF_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SET_OF; + +/* + * Internally visible buffer holding a single encoded element. + */ +struct _el_buffer { + uint8_t *buf; + size_t length; + size_t allocated_size; + unsigned bits_unused; +}; + +enum SET_OF__encode_method { + SOES_DER, /* Distinguished Encoding Rules */ + SOES_CUPER, /* Canonical Unaligned Packed Encoding Rules */ + SOES_CAPER /* Canonical Aligned Packed Encoding Rules */ +}; + +struct _el_buffer * SET_OF__encode_sorted( + const asn_TYPE_member_t *elm, + const asn_anonymous_set_ *list, + enum SET_OF__encode_method method); + +void SET_OF__encode_sorted_free( + struct _el_buffer *el_buf, + size_t count); + +#ifdef __cplusplus +} +#endif + +#endif /* CONSTR_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h new file mode 100644 index 000000000..55c2574a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h @@ -0,0 +1,295 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This file contains the declaration structure called "ASN.1 Type Definition", + * which holds all information necessary for encoding and decoding routines. + * This structure even contains pointer to these encoding and decoding routines + * for each defined ASN.1 type. + */ +#ifndef _CONSTR_TYPE_H_ +#define _CONSTR_TYPE_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_TYPE_member_s; /* Forward declaration */ + +/* + * This type provides the context information for various ASN.1 routines, + * primarily ones doing decoding. A member _asn_ctx of this type must be + * included into certain target language's structures, such as compound types. + */ +typedef struct asn_struct_ctx_s { + short phase; /* Decoding phase */ + short step; /* Elementary step of a phase */ + int context; /* Other context information */ + void *ptr; /* Decoder-specific stuff (stack elements) */ + ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ +} asn_struct_ctx_t; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#include /* Basic Encoding Rules decoder */ +#include /* Distinguished Encoding Rules encoder */ +#else +typedef void (ber_type_decoder_f)(void); +typedef void (der_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#include /* Decoder of XER (XML, text) */ +#include /* Encoder into XER (XML, text) */ +#else +typedef void (xer_type_decoder_f)(void); +typedef void (xer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#include /* Encoder into JER (JSON, text) */ +#else +typedef void (jer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +#include /* Packet Encoding Rules decoder */ +#include /* Packet Encoding Rules encoder */ +#else +typedef void (per_type_decoder_f)(void); +typedef void (per_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + +#include /* Subtype constraints support */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#include /* Random structures support */ +#else +typedef void (asn_random_fill_f)(void); +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#include /* Octet Encoding Rules encoder */ +#include /* Octet Encoding Rules encoder */ +#else +typedef void (oer_type_decoder_f)(void); +typedef void (oer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +/* + * Free the structure according to its specification. + * Use one of ASN_STRUCT_{FREE,RESET,CONTENTS_ONLY} macros instead. + * Do not use directly. + */ +enum asn_struct_free_method { + ASFM_FREE_EVERYTHING, /* free(struct_ptr) and underlying members */ + ASFM_FREE_UNDERLYING, /* free underlying members */ + ASFM_FREE_UNDERLYING_AND_RESET /* FREE_UNDERLYING + memset(0) */ +}; +typedef void (asn_struct_free_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, enum asn_struct_free_method); + +/* + * Free the structure including freeing the memory pointed to by ptr itself. + */ +#define ASN_STRUCT_FREE(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_EVERYTHING) + +/* + * Free the memory used by the members of the structure without freeing the + * the structure pointer itself. + * ZERO-OUT the structure to the safe clean state. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + */ +#define ASN_STRUCT_RESET(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING_AND_RESET) + +/* + * Free memory used by the members of the structure without freeing + * the structure pointer itself. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + * AVOID using it in the application code; + * Use a safer ASN_STRUCT_RESET() instead. + */ +#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING) + +/* + * Print the structure according to its specification. + */ +typedef int(asn_struct_print_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, + int level, /* Indentation level */ + asn_app_consume_bytes_f *callback, void *app_key); + +/* + * Compare two structs between each other. + * Returns <0 if struct_A is "smaller" than struct_B, >0 if "greater", + * and =0 if "equal to", for some type-specific, stable definition of + * "smaller", "greater" and "equal to". + */ +typedef int (asn_struct_compare_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_A, + const void *struct_B); + +/* + * Return the outmost tag of the type. + * If the type is untagged CHOICE, the dynamic operation is performed. + * NOTE: This function pointer type is only useful internally. + * Do not use it in your application. + */ +typedef ber_tlv_tag_t (asn_outmost_tag_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); +/* The instance of the above function type; used internally. */ +asn_outmost_tag_f asn_TYPE_outmost_tag; + +/* + * Fetch the desired type of the Open Type based on the + * Information Object Set driven constraints. + */ +typedef struct asn_type_selector_result_s { + const struct asn_TYPE_descriptor_s *type_descriptor; /* Type encoded. */ + unsigned presence_index; /* Associated choice variant. */ +} asn_type_selector_result_t; +typedef asn_type_selector_result_t(asn_type_selector_f)( + const struct asn_TYPE_descriptor_s *parent_type_descriptor, + const void *parent_structure_ptr); + +/* + * Generalized functions for dealing with the speciic type. + * May be directly invoked by applications. + */ +typedef struct asn_TYPE_operation_s { + asn_struct_free_f *free_struct; /* Free the structure */ + asn_struct_print_f *print_struct; /* Human readable output */ + asn_struct_compare_f *compare_struct; /* Compare two structures */ + ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ + der_type_encoder_f *der_encoder; /* Canonical DER encoder */ + xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ + xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ + jer_type_encoder_f *jer_encoder; /* Generic JER encoder */ + oer_type_decoder_f *oer_decoder; /* Generic OER decoder */ + oer_type_encoder_f *oer_encoder; /* Canonical OER encoder */ + per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ + per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ + per_type_decoder_f *aper_decoder; /* Aligned PER decoder */ + per_type_encoder_f *aper_encoder; /* Aligned PER encoder */ + asn_random_fill_f *random_fill; /* Initialize with a random value */ + asn_outmost_tag_f *outmost_tag; /* */ +} asn_TYPE_operation_t; + +/* + * A constraints tuple specifying both the OER and PER constraints. + */ +typedef struct asn_encoding_constraints_s { +#if !defined(ASN_DISABLE_OER_SUPPORT) + const struct asn_oer_constraints_s *oer_constraints; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const struct asn_per_constraints_s *per_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_constr_check_f *general_constraints; +} asn_encoding_constraints_t; + +/* + * The definitive description of the destination language's structure. + */ +typedef struct asn_TYPE_descriptor_s { + const char *name; /* A name of the ASN.1 type. "" in some cases. */ + const char *xml_tag; /* Name used in XML tag */ + + /* + * Generalized functions for dealing with the specific type. + * May be directly invoked by applications. + */ + asn_TYPE_operation_t *op; + + /*********************************************************************** + * Internally useful members. Not to be used by applications directly. * + **********************************************************************/ + + /* + * Tags that are expected to occur. + */ + const ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ + unsigned tags_count; /* Number of tags which are expected */ + const ber_tlv_tag_t *all_tags; /* Every tag for BER/containment */ + unsigned all_tags_count; /* Number of tags */ + + /* OER, PER, and general constraints */ + asn_encoding_constraints_t encoding_constraints; + + /* + * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). + */ + struct asn_TYPE_member_s *elements; + unsigned elements_count; + + /* + * Additional information describing the type, used by appropriate + * functions above. + */ + const void *specifics; +} asn_TYPE_descriptor_t; + +/* + * This type describes an element of the constructed type, + * i.e. SEQUENCE, SET, CHOICE, etc. + */ + enum asn_TYPE_flags_e { + ATF_NOFLAGS, + ATF_POINTER = 0x01, /* Represented by the pointer */ + ATF_OPEN_TYPE = 0x02, /* Open Type */ + ATF_ANY_TYPE = 0x04 /* ANY type (deprecated!) */ + }; +typedef struct asn_TYPE_member_s { + enum asn_TYPE_flags_e flags; /* Element's presentation flags */ + unsigned optional; /* Following optional members, including current */ + unsigned memb_offset; /* Offset of the element */ + ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ + int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ + asn_TYPE_descriptor_t *type; /* Member type descriptor */ + asn_type_selector_f *type_selector; /* IoS runtime type selector */ + asn_encoding_constraints_t encoding_constraints; + int (*default_value_cmp)(const void *sptr); /* Compare DEFAULT */ + int (*default_value_set)(void **sptr); /* Set DEFAULT */ + const char *name; /* ASN.1 identifier of the element */ +} asn_TYPE_member_t; + +/* + * BER tag to element number mapping. + */ +typedef struct asn_TYPE_tag2member_s { + ber_tlv_tag_t el_tag; /* Outmost tag of the member */ + unsigned el_no; /* Index of the associated member, base 0 */ + int toff_first; /* First occurrence of the el_tag, relative */ + int toff_last; /* Last occurrence of the el_tag, relative */ +} asn_TYPE_tag2member_t; + +/* + * This function prints out the contents of the target language's structure + * (struct_ptr) into the file pointer (stream) in human readable form. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem dumping the structure. + * (See also xer_fprint() in xer_encoder.h) + */ +int asn_fprint(FILE *stream, /* Destination stream descriptor */ + const asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ + const void *struct_ptr); /* Structure to be printed */ + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h new file mode 100644 index 000000000..0c093fa82 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h @@ -0,0 +1,63 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN1_CONSTRAINTS_VALIDATOR_H +#define ASN1_CONSTRAINTS_VALIDATOR_H + +#include /* Platform-dependent types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Validate the structure according to the ASN.1 constraints. + * If errbuf and errlen are given, they shall be pointing to the appropriate + * buffer space and its length before calling this function. Alternatively, + * they could be passed as NULL's. If constraints validation fails, + * errlen will contain the actual number of bytes taken from the errbuf + * to encode an error message (properly 0-terminated). + * + * RETURN VALUES: + * This function returns 0 in case all ASN.1 constraints are met + * and -1 if one or more constraints were failed. + */ +int asn_check_constraints( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Target language's structure */ + char *errbuf, /* Returned error description */ + size_t *errlen /* Length of the error description */ +); + + +/* + * Generic type for constraint checking callback, + * associated with every type descriptor. + */ +typedef int(asn_constr_check_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct_ptr, + asn_app_constraint_failed_f *optional_callback, /* Log the error */ + void *optional_app_key /* Opaque key passed to a callback */ +); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ +asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ + +/* + * Invoke the callback with a complete error message. + */ +#define ASN__CTFAIL if(ctfailcb) ctfailcb + +#ifdef __cplusplus +} +#endif + +#endif /* ASN1_CONSTRAINTS_VALIDATOR_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h new file mode 100644 index 000000000..e93944edc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h @@ -0,0 +1,68 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _DER_ENCODER_H_ +#define _DER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The DER encoder of any type. May be invoked by the application. + * Produces DER- and BER-compliant encoding. (DER is a subset of BER). + * + * NOTE: Use the ber_decode() function (ber_decoder.h) to decode data + * produced by der_encode(). + */ +asn_enc_rval_t der_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of der_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t der_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic DER encoder. + */ +typedef asn_enc_rval_t(der_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + ber_tlv_tag_t tag, asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t der_write_tags(const struct asn_TYPE_descriptor_s *type_descriptor, + size_t struct_length, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {0,!0}: prim, constructed */ + ber_tlv_tag_t tag, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h new file mode 100644 index 000000000..672976d26 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h @@ -0,0 +1,86 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _JER_ENCODER_H_ +#define _JER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* Flags used by the jer_encode() and (*jer_type_encoder_f), defined below + * + * This isn't actually used, it might be used in the future to support + * both normal JSON and prettified JSON output or removed. + * It came from XER + */ +enum jer_encoder_flags_e { + /* Mode of encoding */ + JER_F = 0x01, /* JER (pretty-printing) */ +}; + +/* + * The JER encoder of any type. May be invoked by the application. + * Produces JER output. + */ +asn_enc_rval_t jer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* + * The variant of the above function which dumps the JER + * output into the chosen file pointer. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem printing the structure. + * WARNING: No sensible errno value is returned. + */ +int jer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, + const void *struct_ptr); + +/* + * A helper function that uses JER encoding/decoding to verify that: + * - Both structures encode into the same JER. + * - Both resulting JER byte streams can be decoded back. + * - Both decoded structures encode into the same JER (round-trip). + * All of this verifies equivalence between structures and a round-trip. + * ARGUMENTS: + * (opt_debug_stream) - If specified, prints ongoing details. + */ +enum jer_equivalence_e { + JEQ_SUCCESS, /* The only completely positive return value */ + JEQ_FAILURE, /* General failure */ + JEQ_ENCODE1_FAILED, /* First structure JER encoding failed */ + JEQ_ENCODE2_FAILED, /* Second structure JER encoding failed */ + JEQ_DIFFERENT, /* Structures encoded into different JER */ + JEQ_DECODE_FAILED, /* Decode of the JER data failed */ + JEQ_ROUND_TRIP_FAILED /* Bad round-trip */ +}; +enum jer_equivalence_e jer_equivalent( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, + const void *struct2, FILE *opt_debug_stream); + +/* + * Type of the generic JER encoder. + */ +typedef asn_enc_rval_t(jer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int ilevel, /* Level of indentation */ + enum jer_encoder_flags_e jer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _JER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h new file mode 100644 index 000000000..40992e948 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_DECODER_H +#define OER_DECODER_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type. + * This function may be invoked directly by the application. + * Parses CANONICAL-OER and BASIC-OER. + */ +asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ + ); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(oer_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + void **struct_ptr, + const void *buf_ptr, + size_t size); + +/* + * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null. + * RETURN VALUES: + * -1: Fatal error deciphering length. + * 0: More data expected than bufptr contains. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_skip(const void *bufptr, size_t size); + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + void **struct_ptr, const void *bufptr, size_t size); + +/* + * Length-prefixed buffer decoding for primitive types. + */ +oer_type_decoder_f oer_decode_primitive; + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_DECODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h new file mode 100644 index 000000000..6a7b68125 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_ENCODER_H +#define OER_ENCODER_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type. + * This function may be invoked directly by the application. + * Produces CANONICAL-OER output compatible with CANONICAL-OER + * and BASIC-OER decoders. + */ +asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of oer_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t oer_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic OER encoder. + */ +typedef asn_enc_rval_t(oer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * Write out the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * -1: Fatal error encoding the type. + * >0: Number of bytes serialized. + */ +ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + + +/* + * Length-prefixed buffer encoding for primitive types. + */ +oer_type_encoder_f oer_encode_primitive; + +#ifdef __cplusplus +} +#endif + +#endif /* OER_ENCODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h new file mode 100644 index 000000000..dbc9b5fcf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_SUPPORT_H +#define OER_SUPPORT_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed OER constraints. + */ +typedef struct asn_oer_constraint_number_s { + unsigned width; /* ±8,4,2,1 fixed bytes */ + unsigned positive; /* 1 for unsigned number, 0 for signed */ +} asn_oer_constraint_number_t; +typedef struct asn_oer_constraints_s { + asn_oer_constraint_number_t value; + ssize_t size; /* -1 (no constraint) or >= 0 */ +} asn_oer_constraints_t; + + +/* + * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r); + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key); + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_SUPPORT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h new file mode 100644 index 000000000..3cc0c6bf7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h @@ -0,0 +1,30 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_DECODER_H_ +#define _PER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Type of the type-specific PER decoder function. + */ +typedef asn_dec_rval_t(per_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, void **struct_ptr, + asn_per_data_t *per_data); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h new file mode 100644 index 000000000..8bb077170 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h @@ -0,0 +1,38 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_ENCODER_H_ +#define _PER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Type of the generic PER encoder function. + */ +typedef asn_enc_rval_t(per_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +int ignore_output(const void *data, size_t size, void *app_key); + +typedef struct enc_dyn_arg { + void *buffer; + size_t length; + size_t allocated; +} enc_dyn_arg; +int encode_dyn_cb(const void *buffer, size_t size, void *key); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h new file mode 100644 index 000000000..fc3785566 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_OPENTYPE_H_ +#define _PER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_sot_suck( + const asn_codec_ctx_t *, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h new file mode 100644 index 000000000..b3056a21a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_SUPPORT_H_ +#define _PER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed PER constraints. + */ +typedef struct asn_per_constraint_s { + enum asn_per_constraint_flags { + APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ + APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ + APC_CONSTRAINED = 0x2, /* Fully constrained */ + APC_EXTENSIBLE = 0x4 /* May have extension */ + } flags; + int range_bits; /* Full number of bits in the range */ + int effective_bits; /* Effective bits */ + intmax_t lower_bound; /* "lb" value */ + intmax_t upper_bound; /* "ub" value */ +} asn_per_constraint_t; +typedef struct asn_per_constraints_s { + asn_per_constraint_t value; + asn_per_constraint_t size; + int (*value2code)(unsigned int value); + int (*code2value)(unsigned int code); +} asn_per_constraints_t; + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_data_s asn_per_data_t; +#define per_get_few_bits(data, bits) asn_get_few_bits(data, bits) +#define per_get_undo(data, bits) asn_get_undo(data, bits) +#define per_get_many_bits(data, dst, align, bits) \ + asn_get_many_bits(data, dst, align, bits) + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_outp_s asn_per_outp_t; +#define per_put_few_bits(out, bits, obits) asn_put_few_bits(out, bits, obits) +#define per_put_many_bits(out, src, nbits) asn_put_many_bits(out, src, nbits) +#define per_put_aligned_flush(out) asn_put_aligned_flush(out) + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h new file mode 100644 index 000000000..ded851565 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_DECODER_H_ +#define _UPER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER decoder of a "complete encoding" as per X.691 (08/2015) #11.1. + * On success, this call always returns (.consumed >= 1), as per #11.1.3. + */ +asn_dec_rval_t uper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t uper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of the input data buffer, in bytes */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h new file mode 100644 index 000000000..8f73980c3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h @@ -0,0 +1,62 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_ENCODER_H_ +#define _UPER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t uper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of uper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t uper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +/* + * A variant of uper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of uper_encode() and uper_encode_to_buffer(). + */ +ssize_t uper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void **buffer_r /* Buffer allocated and returned */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h new file mode 100644 index 000000000..3a248225f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_OPENTYPE_H_ +#define _UPER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +int uper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, + asn_per_data_t *pd); + +/* + * X.691 (2015/08), #11.2 + * Returns -1 if error is encountered. 0 if all OK. + */ +int uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h new file mode 100644 index 000000000..6c9d4ea74 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_SUPPORT_H_ +#define _UPER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Get the length "n" from the Unaligned PER stream. + */ +ssize_t uper_get_length(asn_per_data_t *pd, int effective_bound_bits, + size_t lower_bound, int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t uper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t uper_get_nsnnwn(asn_per_data_t *pd); + +/* X.691-2008/11, #11.5.6 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *v, int nbits); + +/* + * Rebase the given value as an offset into the range specified by the + * lower bound (lb) and upper bound (ub). + * RETURN VALUES: + * -1: Conversion failed due to range problems. + * 0: Conversion was successful. + */ +int per_long_range_rebase(long, intmax_t lb, intmax_t ub, unsigned long *output); +int per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output); +/* The inverse operation: restores the value by the offset and its bounds. */ +int per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp); +int per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp); + +/* X.691-2008/11, #11.5 */ +int uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, int nbits); + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "whole_length" to the Unaligned PER stream. + * If (opt_need_eom) is given, it will be set to 1 if final 0-length is needed. + * In that case, invoke uper_put_length(po, 0, 0) after encoding the last block. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length, + int *opt_need_eom); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int uper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int uper_put_nsnnwn(asn_per_outp_t *po, int n); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h new file mode 100644 index 000000000..b951c41d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h @@ -0,0 +1,106 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_DECODER_H_ +#define _XER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The XER decoder of any ASN.1 type. May be invoked by the application. + * Decodes CANONICAL-XER and BASIC-XER. + */ +asn_dec_rval_t xer_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Type of the type-specific XER decoder function. + */ +typedef asn_dec_rval_t(xer_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const char *opt_mname, /* Member name */ + const void *buf_ptr, size_t size); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Generalized function for decoding the primitive values. + * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 + * and others. This function should not be used by applications, as its API + * is subject to changes. + */ +asn_dec_rval_t xer_decode_general( + const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, /* Treated as opaque pointer */ + const char *xml_tag, /* Expected XML tag name */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_key, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_key, const void *chunk_buf, + size_t chunk_size, int have_more)); + + +/* + * Fetch the next XER (XML) token from the stream. + * The function returns the number of bytes occupied by the chunk type, + * returned in the _ch_type. The _ch_type is only set (and valid) when + * the return value is >= 0. + */ + typedef enum pxer_chunk_type { + PXER_WMORE, /* Chunk type is not clear, more data expected. */ + PXER_TAG, /* Complete XER tag */ + PXER_TEXT, /* Plain text between XER tags */ + PXER_COMMENT /* A comment, may be part of */ + } pxer_chunk_type_e; +ssize_t xer_next_token(int *stateContext, + const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); + +/* + * This function checks the buffer against the tag name is expected to occur. + */ + typedef enum xer_check_tag { + XCT_BROKEN = 0, /* The tag is broken */ + XCT_OPENING = 1, /* This is the tag */ + XCT_CLOSING = 2, /* This is the tag */ + XCT_BOTH = 3, /* This is the tag */ + XCT__UNK__MASK = 4, /* Mask of everything unexpected */ + XCT_UNKNOWN_OP = 5, /* Unexpected tag */ + XCT_UNKNOWN_CL = 6, /* Unexpected tag */ + XCT_UNKNOWN_BO = 7 /* Unexpected tag */ + } xer_check_tag_e; +xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, + const char *need_tag); + +/* + * Get the number of bytes consisting entirely of XER whitespace characters. + * RETURN VALUES: + * >=0: Number of whitespace characters in the string. + */ +size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); + +/* + * Skip the series of anticipated extensions. + */ +int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h new file mode 100644 index 000000000..6cfc505fa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h @@ -0,0 +1,83 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_ENCODER_H_ +#define _XER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ +enum xer_encoder_flags_e { + /* Mode of encoding */ + XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ + XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ +}; + +/* + * The XER encoder of any type. May be invoked by the application. + * Produces CANONICAL-XER and BASIC-XER depending on the (xer_flags). + */ +asn_enc_rval_t xer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* + * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) + * output into the chosen file pointer. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem printing the structure. + * WARNING: No sensible errno value is returned. + */ +int xer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, + const void *struct_ptr); + +/* + * A helper function that uses XER encoding/decoding to verify that: + * - Both structures encode into the same BASIC XER. + * - Both resulting XER byte streams can be decoded back. + * - Both decoded structures encode into the same BASIC XER (round-trip). + * All of this verifies equivalence between structures and a round-trip. + * ARGUMENTS: + * (opt_debug_stream) - If specified, prints ongoing details. + */ +enum xer_equivalence_e { + XEQ_SUCCESS, /* The only completely positive return value */ + XEQ_FAILURE, /* General failure */ + XEQ_ENCODE1_FAILED, /* First structure XER encoding failed */ + XEQ_ENCODE2_FAILED, /* Second structure XER encoding failed */ + XEQ_DIFFERENT, /* Structures encoded into different XER */ + XEQ_DECODE_FAILED, /* Decode of the XER data failed */ + XEQ_ROUND_TRIP_FAILED /* Bad round-trip */ +}; +enum xer_equivalence_e xer_equivalent( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, + const void *struct2, FILE *opt_debug_stream); + +/* + * Type of the generic XER encoder. + */ +typedef asn_enc_rval_t(xer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int ilevel, /* Level of indentation */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h new file mode 100644 index 000000000..2c3f369b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_SUPPORT_H_ +#define _XER_SUPPORT_H_ + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Types of data transferred to the application. + */ +typedef enum { + PXML_TEXT, /* Plain text between XML tags. */ + PXML_TAG, /* A tag, starting with '<'. */ + PXML_COMMENT, /* An XML comment, including "". */ + /* + * The following chunk types are reported if the chunk + * terminates the specified XML element. + */ + PXML_TAG_END, /* Tag ended */ + PXML_COMMENT_END /* Comment ended */ +} pxml_chunk_type_e; + +/* + * Callback function that is called by the parser when parsed data is + * available. The _opaque is the pointer to a field containing opaque user + * data specified in pxml_create() call. The chunk type is _type and the text + * data is the piece of buffer identified by _bufid (as supplied to + * pxml_feed() call) starting at offset _offset and of _size bytes size. + * The chunk is NOT '\0'-terminated. + */ +typedef int (pxml_callback_f)(pxml_chunk_type_e _type, + const void *_chunk_data, size_t _chunk_size, void *_key); + +/* + * Parse the given buffer as it were a chunk of XML data. + * Invoke the specified callback each time the meaningful data is found. + * This function returns number of bytes consumed from the buffer. + * It will always be lesser than or equal to the specified _size. + * The next invocation of this function must account the difference. + */ +ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, + pxml_callback_f *cb, void *_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/src/2020/ANY.c b/src/tmx/Asn_J2735/src/2020/ANY.c new file mode 100644 index 000000000..bf988dbda --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY.c @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs = { + sizeof(ANY_t), + offsetof(ANY_t, _asn_ctx), + ASN_OSUBV_ANY +}; +asn_TYPE_operation_t asn_OP_ANY = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + ANY_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + ANY_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, + 0, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + ANY_decode_uper, + ANY_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + ANY_decode_aper, + ANY_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + 0, /* Random fill is not defined for ANY type */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ANY = { + "ANY", + "ANY", + &asn_OP_ANY, + 0, 0, 0, 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, /* No constraints */ + 0, 0, /* No members */ + &asn_SPC_ANY_specs, +}; diff --git a/src/tmx/Asn_J2735/src/2020/ANY_aper.c b/src/tmx/Asn_J2735/src/2020/ANY_aper.c new file mode 100644 index 000000000..91d727769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY_aper.c @@ -0,0 +1,190 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +int +ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + uint8_t *buffer = NULL; + ssize_t erval; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + erval = aper_encode_to_new_buffer(td, td->encoding_constraints.per_constraints, sptr, (void**)&buffer); + + if(erval == -1) { + if(buffer) FREEMEM(buffer); + return -1; + } + assert((size_t)erval > 0); + + if(st->buf) FREEMEM(st->buf); + st->buf = buffer; + st->size = erval; + + return 0; +} + +ANY_t * +ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType_aper(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +int +ANY_to_type_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = aper_decode(0, td, (void **)&newst, st->buf, st->size, 0, 0); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} + +asn_dec_rval_t +ANY_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("APER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = aper_get_length(pd, -1, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = aper_put_length(po, -1, -1, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && aper_put_length(po, -1, -1, 0, NULL)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_ber.c b/src/tmx/Asn_J2735/src/2020/ANY_ber.c new file mode 100644 index 000000000..2ebe45bd7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY_ber.c @@ -0,0 +1,116 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +struct _callback_arg { + uint8_t *buffer; + size_t offset; + size_t size; +}; + +static int ANY__consume_bytes(const void *buffer, size_t size, void *key) { + struct _callback_arg *arg = (struct _callback_arg *)key; + + if((arg->offset + size) >= arg->size) { + size_t nsize = (arg->size ? arg->size << 2 : 16) + size; + void *p = REALLOC(arg->buffer, nsize); + if(!p) return -1; + arg->buffer = (uint8_t *)p; + arg->size = nsize; + } + + memcpy(arg->buffer + arg->offset, buffer, size); + arg->offset += size; + assert(arg->offset < arg->size); + + return 0; +} + +int +ANY_fromType(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + struct _callback_arg arg; + asn_enc_rval_t erval = {0,0,0}; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + arg.offset = arg.size = 0; + arg.buffer = 0; + + erval = der_encode(td, sptr, ANY__consume_bytes, &arg); + if(erval.encoded == -1) { + if(arg.buffer) FREEMEM(arg.buffer); + return -1; + } + assert((size_t)erval.encoded == arg.offset); + + if(st->buf) FREEMEM(st->buf); + st->buf = arg.buffer; + st->size = arg.offset; + + return 0; +} + +ANY_t * +ANY_new_fromType(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +int +ANY_to_type(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = ber_decode(0, td, (void **)&newst, st->buf, st->size); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_jer.c b/src/tmx/Asn_J2735/src/2020/ANY_jer.c new file mode 100644 index 000000000..a86db9c73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY_jer.c @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +ANY_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + ASN__ENCODE_FAILED; + + /* Dump as binary */ + return OCTET_STRING_encode_jer(td, sptr, ilevel, flags, cb, app_key); +} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_uper.c b/src/tmx/Asn_J2735/src/2020/ANY_uper.c new file mode 100644 index 000000000..65f1519bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY_uper.c @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +asn_dec_rval_t +ANY_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("UPER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_xer.c b/src/tmx/Asn_J2735/src/2020/ANY_xer.c new file mode 100644 index 000000000..112c21328 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ANY_xer.c @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +ANY_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + if(flags & XER_F_CANONICAL) { + /* + * Canonical XER-encoding of ANY type is not supported. + */ + ASN__ENCODE_FAILED; + } + + /* Dump as binary */ + return OCTET_STRING_encode_xer(td, sptr, ilevel, flags, cb, app_key); +} diff --git a/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c new file mode 100644 index 000000000..69b76148d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AccelSteerYawRateConfidence.h" + +asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yawRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "acceleration" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringWheelAngle" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { + sizeof(struct AccelSteerYawRateConfidence), + offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), + asn_MAP_AccelSteerYawRateConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { + "AccelSteerYawRateConfidence", + "AccelSteerYawRateConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AccelSteerYawRateConfidence_tags_1, + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AccelSteerYawRateConfidence_1, + 3, /* Elements count */ + &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Acceleration.c b/src/tmx/Asn_J2735/src/2020/Acceleration.c new file mode 100644 index 000000000..4e8c53b8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Acceleration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Acceleration.h" + +int +Acceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2000L && value <= 2001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Acceleration_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2000..2001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Acceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Acceleration = { + "Acceleration", + "Acceleration", + &asn_OP_NativeInteger, + asn_DEF_Acceleration_tags_1, + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + asn_DEF_Acceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Acceleration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Acceleration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Acceleration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c new file mode 100644 index 000000000..44927873c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AccelerationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "accl-100-00" }, + { 2, 11, "accl-010-00" }, + { 3, 11, "accl-005-00" }, + { 4, 11, "accl-001-00" }, + { 5, 11, "accl-000-10" }, + { 6, 11, "accl-000-05" }, + { 7, 11, "accl-000-01" } +}; +static const unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { + 7, /* accl-000-01(7) */ + 6, /* accl-000-05(6) */ + 5, /* accl-000-10(5) */ + 4, /* accl-001-00(4) */ + 3, /* accl-005-00(3) */ + 2, /* accl-010-00(2) */ + 1, /* accl-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { + asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { + "AccelerationConfidence", + "AccelerationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AccelerationConfidence_tags_1, + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AccelerationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AccelerationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c new file mode 100644 index 000000000..ccf109f19 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AccelerationSet4Way.h" + +asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, Long), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, vert), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAcceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vert" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, yaw), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yaw" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelerationSet4Way_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vert */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* yaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1 = { + sizeof(struct AccelerationSet4Way), + offsetof(struct AccelerationSet4Way, _asn_ctx), + asn_MAP_AccelerationSet4Way_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { + "AccelerationSet4Way", + "AccelerationSet4Way", + &asn_OP_SEQUENCE, + asn_DEF_AccelerationSet4Way_tags_1, + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AccelerationSet4Way_1, + 4, /* Elements count */ + &asn_SPC_AccelerationSet4Way_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c new file mode 100644 index 000000000..188389be9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AddGrpB_Angle.h" + +int +AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 239L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..239) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Angle_tags_1, + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_Angle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c new file mode 100644 index 000000000..390ada0e0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AddGrpB_Elevation.h" + +int +AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Elevation_tags_1, + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_Elevation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c new file mode 100644 index 000000000..ad3b26c85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AddGrpB_MsgCount.h" + +int +AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_MsgCount_tags_1, + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_MsgCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c new file mode 100644 index 000000000..e2c534c04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c @@ -0,0 +1,228 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AddGrpB_TimeMark.h" + +static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Year, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Month, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Day, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, summerTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SummerTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "summerTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, holiday), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Holiday, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "holiday" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DayOfWeek, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dayofWeek" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, hour), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Hour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, minute), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Minute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, second), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Second, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, tenthSecond), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TenthSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "tenthSecond" + }, +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AddGrpB_TimeMark_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_AddGrpB_TimeMark_specs_1 = { + sizeof(struct AddGrpB_TimeMark), + offsetof(struct AddGrpB_TimeMark, _asn_ctx), + asn_MAP_AddGrpB_TimeMark_tag2el_1, + 10, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_SEQUENCE, + asn_DEF_AddGrpB_TimeMark_tags_1, + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AddGrpB_TimeMark_1, + 10, /* Elements count */ + &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c new file mode 100644 index 000000000..75105fe42 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c @@ -0,0 +1,262 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AdvisorySpeed.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_AdvisorySpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct AdvisorySpeed__regional), + offsetof(struct AdvisorySpeed__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedAdvice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance" + }, + { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "class" + }, + { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { + sizeof(struct AdvisorySpeed), + offsetof(struct AdvisorySpeed, _asn_ctx), + asn_MAP_AdvisorySpeed_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { + "AdvisorySpeed", + "AdvisorySpeed", + &asn_OP_SEQUENCE, + asn_DEF_AdvisorySpeed_tags_1, + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AdvisorySpeed_1, + 6, /* Elements count */ + &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c new file mode 100644 index 000000000..b9977a459 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AdvisorySpeedList.h" + +#include "AdvisorySpeed.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AdvisorySpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { + sizeof(struct AdvisorySpeedList), + offsetof(struct AdvisorySpeedList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { + "AdvisorySpeedList", + "AdvisorySpeedList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AdvisorySpeedList_tags_1, + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AdvisorySpeedList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AdvisorySpeedList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_AdvisorySpeedList_1, + 1, /* Single element */ + &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c new file mode 100644 index 000000000..e8abc092a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AdvisorySpeedType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "greenwave" }, + { 2, 8, "ecoDrive" }, + { 3, 7, "transit" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { + 2, /* ecoDrive(2) */ + 1, /* greenwave(1) */ + 0, /* none(0) */ + 3 /* transit(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { + asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { + "AdvisorySpeedType", + "AdvisorySpeedType", + &asn_OP_NativeEnumerated, + asn_DEF_AdvisorySpeedType_tags_1, + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AdvisorySpeedType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AdvisorySpeedType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c new file mode 100644 index 000000000..5b743709c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AllowedManeuvers.h" + +int +AllowedManeuvers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 12UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { 0, 0 }, + 12 /* (SIZE(12..12)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { + "AllowedManeuvers", + "AllowedManeuvers", + &asn_OP_BIT_STRING, + asn_DEF_AllowedManeuvers_tags_1, + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AllowedManeuvers_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AllowedManeuvers_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AllowedManeuvers_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Altitude.c b/src/tmx/Asn_J2735/src/2020/Altitude.c new file mode 100644 index 000000000..9b35698b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Altitude.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Altitude.h" + +asn_TYPE_member_t asn_MBR_Altitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeValue, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { + sizeof(struct Altitude), + offsetof(struct Altitude, _asn_ctx), + asn_MAP_Altitude_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Altitude = { + "Altitude", + "Altitude", + &asn_OP_SEQUENCE, + asn_DEF_Altitude_tags_1, + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + asn_DEF_Altitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Altitude_1, + 2, /* Elements count */ + &asn_SPC_Altitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c new file mode 100644 index 000000000..0c8dc297e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AltitudeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { + { 0, 10, "alt-000-01" }, + { 1, 10, "alt-000-02" }, + { 2, 10, "alt-000-05" }, + { 3, 10, "alt-000-10" }, + { 4, 10, "alt-000-20" }, + { 5, 10, "alt-000-50" }, + { 6, 10, "alt-001-00" }, + { 7, 10, "alt-002-00" }, + { 8, 10, "alt-005-00" }, + { 9, 10, "alt-010-00" }, + { 10, 10, "alt-020-00" }, + { 11, 10, "alt-050-00" }, + { 12, 10, "alt-100-00" }, + { 13, 10, "alt-200-00" }, + { 14, 10, "outOfRange" }, + { 15, 11, "unavailable" } +}; +static const unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { + 0, /* alt-000-01(0) */ + 1, /* alt-000-02(1) */ + 2, /* alt-000-05(2) */ + 3, /* alt-000-10(3) */ + 4, /* alt-000-20(4) */ + 5, /* alt-000-50(5) */ + 6, /* alt-001-00(6) */ + 7, /* alt-002-00(7) */ + 8, /* alt-005-00(8) */ + 9, /* alt-010-00(9) */ + 10, /* alt-020-00(10) */ + 11, /* alt-050-00(11) */ + 12, /* alt-100-00(12) */ + 13, /* alt-200-00(13) */ + 14, /* outOfRange(14) */ + 15 /* unavailable(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { + asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { + "AltitudeConfidence", + "AltitudeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AltitudeConfidence_tags_1, + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AltitudeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AltitudeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AltitudeValue.c b/src/tmx/Asn_J2735/src/2020/AltitudeValue.c new file mode 100644 index 000000000..657dbc0f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AltitudeValue.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AltitudeValue.h" + +int +AltitudeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -100000L && value <= 800001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-100000..800001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { + "AltitudeValue", + "AltitudeValue", + &asn_OP_NativeInteger, + asn_DEF_AltitudeValue_tags_1, + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + asn_DEF_AltitudeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AltitudeValue_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AltitudeValue_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AltitudeValue_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c new file mode 100644 index 000000000..45270b50b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AmbientAirPressure.h" + +int +AmbientAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { + "AmbientAirPressure", + "AmbientAirPressure", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirPressure_tags_1, + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AmbientAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AmbientAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AmbientAirPressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c new file mode 100644 index 000000000..9b6cad33b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AmbientAirTemperature.h" + +int +AmbientAirTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { + "AmbientAirTemperature", + "AmbientAirTemperature", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirTemperature_tags_1, + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AmbientAirTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AmbientAirTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AmbientAirTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c new file mode 100644 index 000000000..f65d7e018 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AnimalPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 13, "animalMounted" }, + { 3, 19, "animalDrawnCarriage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { + 3, /* animalDrawnCarriage(3) */ + 2, /* animalMounted(2) */ + 1, /* otherTypes(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { + asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { + "AnimalPropelledType", + "AnimalPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalPropelledType_tags_1, + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AnimalPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AnimalPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AnimalType.c b/src/tmx/Asn_J2735/src/2020/AnimalType.c new file mode 100644 index 000000000..2ed523a60 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AnimalType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AnimalType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AnimalType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AnimalType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "serviceUse" }, + { 2, 3, "pet" }, + { 3, 4, "farm" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { + 3, /* farm(3) */ + 2, /* pet(2) */ + 1, /* serviceUse(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { + asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalType = { + "AnimalType", + "AnimalType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalType_tags_1, + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + asn_DEF_AnimalType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AnimalType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AnimalType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c new file mode 100644 index 000000000..48771f2cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AntennaOffsetSet.h" + +asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetY" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetZ" + }, +}; +static const ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AntennaOffsetSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* antOffsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* antOffsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* antOffsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1 = { + sizeof(struct AntennaOffsetSet), + offsetof(struct AntennaOffsetSet, _asn_ctx), + asn_MAP_AntennaOffsetSet_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { + "AntennaOffsetSet", + "AntennaOffsetSet", + &asn_OP_SEQUENCE, + asn_DEF_AntennaOffsetSet_tags_1, + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AntennaOffsetSet_1, + 3, /* Elements count */ + &asn_SPC_AntennaOffsetSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c new file mode 100644 index 000000000..f5e5e182f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AntiLockBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { + asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { + "AntiLockBrakeStatus", + "AntiLockBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AntiLockBrakeStatus_tags_1, + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AntiLockBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AntiLockBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ApproachID.c b/src/tmx/Asn_J2735/src/2020/ApproachID.c new file mode 100644 index 000000000..c7f375082 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ApproachID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ApproachID.h" + +int +ApproachID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ApproachID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ApproachID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ApproachID = { + "ApproachID", + "ApproachID", + &asn_OP_NativeInteger, + asn_DEF_ApproachID_tags_1, + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + asn_DEF_ApproachID_tags_1, /* Same as above */ + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ApproachID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ApproachID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ApproachID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c b/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c new file mode 100644 index 000000000..44465c865 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ApproachOrLane.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ApproachOrLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ApproachOrLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lane */ +}; +asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1 = { + sizeof(struct ApproachOrLane), + offsetof(struct ApproachOrLane, _asn_ctx), + offsetof(struct ApproachOrLane, present), + sizeof(((struct ApproachOrLane *)0)->present), + asn_MAP_ApproachOrLane_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_ApproachOrLane = { + "ApproachOrLane", + "ApproachOrLane", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ApproachOrLane_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ApproachOrLane_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_ApproachOrLane_1, + 2, /* Elements count */ + &asn_SPC_ApproachOrLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Attachment.c b/src/tmx/Asn_J2735/src/2020/Attachment.c new file mode 100644 index 000000000..972de18c3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Attachment.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Attachment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Attachment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Attachment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "stroller" }, + { 2, 14, "bicycleTrailer" }, + { 3, 4, "cart" }, + { 4, 10, "wheelchair" }, + { 5, 26, "otherWalkAssistAttachments" }, + { 6, 3, "pet" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Attachment_enum2value_1[] = { + 2, /* bicycleTrailer(2) */ + 3, /* cart(3) */ + 5, /* otherWalkAssistAttachments(5) */ + 6, /* pet(6) */ + 1, /* stroller(1) */ + 0, /* unavailable(0) */ + 4 /* wheelchair(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { + asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Attachment = { + "Attachment", + "Attachment", + &asn_OP_NativeEnumerated, + asn_DEF_Attachment_tags_1, + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + asn_DEF_Attachment_tags_1, /* Same as above */ + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Attachment_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Attachment_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Attachment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c b/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c new file mode 100644 index 000000000..6d88c83d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AttachmentRadius.h" + +int +AttachmentRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { + "AttachmentRadius", + "AttachmentRadius", + &asn_OP_NativeInteger, + asn_DEF_AttachmentRadius_tags_1, + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + asn_DEF_AttachmentRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AttachmentRadius_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AttachmentRadius_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AttachmentRadius_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c new file mode 100644 index 000000000..143bd1fc0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AuxiliaryBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { + asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { + "AuxiliaryBrakeStatus", + "AuxiliaryBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AuxiliaryBrakeStatus_tags_1, + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AuxiliaryBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AuxiliaryBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AxleLocation.c b/src/tmx/Asn_J2735/src/2020/AxleLocation.c new file mode 100644 index 000000000..74caf918f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AxleLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AxleLocation.h" + +int +AxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleLocation = { + "AxleLocation", + "AxleLocation", + &asn_OP_NativeInteger, + asn_DEF_AxleLocation_tags_1, + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + asn_DEF_AxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AxleLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeight.c b/src/tmx/Asn_J2735/src/2020/AxleWeight.c new file mode 100644 index 000000000..23ae46e42 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AxleWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AxleWeight.h" + +int +AxleWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeight = { + "AxleWeight", + "AxleWeight", + &asn_OP_NativeInteger, + asn_DEF_AxleWeight_tags_1, + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + asn_DEF_AxleWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AxleWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeightList.c b/src/tmx/Asn_J2735/src/2020/AxleWeightList.c new file mode 100644 index 000000000..d656f6451 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AxleWeightList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AxleWeightList.h" + +#include "AxleWeightSet.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_AxleWeightList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AxleWeightSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AxleWeightList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1 = { + sizeof(struct AxleWeightList), + offsetof(struct AxleWeightList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightList = { + "AxleWeightList", + "AxleWeightList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AxleWeightList_tags_1, + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightList_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleWeightList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleWeightList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_AxleWeightList_1, + 1, /* Single element */ + &asn_SPC_AxleWeightList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c b/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c new file mode 100644 index 000000000..57952a502 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "AxleWeightSet.h" + +asn_TYPE_member_t asn_MBR_AxleWeightSet_1[] = { + { ATF_POINTER, 2, offsetof(struct AxleWeightSet, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 1, offsetof(struct AxleWeightSet, weight), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weight" + }, +}; +static const int asn_MAP_AxleWeightSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_AxleWeightSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AxleWeightSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1 = { + sizeof(struct AxleWeightSet), + offsetof(struct AxleWeightSet, _asn_ctx), + asn_MAP_AxleWeightSet_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_AxleWeightSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightSet = { + "AxleWeightSet", + "AxleWeightSet", + &asn_OP_SEQUENCE, + asn_DEF_AxleWeightSet_tags_1, + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AxleWeightSet_1, + 2, /* Elements count */ + &asn_SPC_AxleWeightSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING.c new file mode 100644 index 000000000..b5ba94017 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING.c @@ -0,0 +1,213 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BIT STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs = { + sizeof(BIT_STRING_t), + offsetof(BIT_STRING_t, _asn_ctx), + ASN_OSUBV_BIT +}; +asn_TYPE_operation_t asn_OP_BIT_STRING = { + OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + BIT_STRING_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + BIT_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_binary, + BIT_STRING_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + BIT_STRING_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + BIT_STRING_decode_oer, + BIT_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + BIT_STRING_decode_uper, /* Unaligned PER decoder */ + BIT_STRING_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + BIT_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { + "BIT STRING", + "BIT_STRING", + &asn_OP_BIT_STRING, + asn_DEF_BIT_STRING_tags, + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + asn_DEF_BIT_STRING_tags, /* Same as above */ + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BIT_STRING_constraint + }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs +}; + +/* + * BIT STRING generic constraint. + */ +int +BIT_STRING_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + + if(st && st->buf) { + if((st->size == 0 && st->bits_unused) + || st->bits_unused < 0 || st->bits_unused > 7) { + ASN__CTFAIL(app_key, td, sptr, + "%s: invalid padding byte (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +/* + * Non-destructively remove the trailing 0-bits from the given bit string. + */ +const BIT_STRING_t * +BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp) { + const uint8_t *b; + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + + if(st->size == 0) { + assert(st->bits_unused == 0); + return st; + } else { + for(b = &st->buf[st->size - 1]; b > st->buf && *b == 0; b--) { + ; + } + /* b points to the last byte which may contain data */ + if(*b) { + int unused = 7; + uint8_t v = *b; + v &= -(int8_t)v; + if(v & 0x0F) unused -= 4; + if(v & 0x33) unused -= 2; + if(v & 0x55) unused -= 1; + tmp->size = b-st->buf + 1; + tmp->bits_unused = unused; + } else { + tmp->size = b-st->buf; + tmp->bits_unused = 0; + } + + assert(b >= st->buf); + } + + unconst.c_buf = st->buf; + tmp->buf = unconst.nc_buf; + return tmp; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +BIT_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + /* + * Remove information about trailing bits, since + * X.680 (08/2015) #22.7 "ensure that different semantics are not" + * "associated with [values that differ only in] the trailing 0 bits." + */ + BIT_STRING_t compact_a, compact_b; + const BIT_STRING_t *a = BIT_STRING__compactify(aptr, &compact_a); + const BIT_STRING_t *b = BIT_STRING__compactify(bptr, &compact_b); + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + + (void)specs; + assert(specs && specs->subvariant == ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + /* Figure out how many unused bits */ + if(a->bits_unused > b->bits_unused) { + return -1; + } else if(a->bits_unused < b->bits_unused) { + return 1; + } else { + return 0; + } + } + } else { + return ret; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c new file mode 100644 index 000000000..f66238dee --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +BIT_STRING_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + const char * const h2c = "0123456789ABCDEF"; + char scratch[16 * 3 + 4]; + char *p = scratch; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + uint8_t *buf; + uint8_t *end; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size - 1; /* Last byte is special */ + + /* + * Hex dump + */ + *p++ = '"'; + for(int i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + ASN__CALLBACK(scratch, p-scratch); + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + } + + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + + if(buf == end) { + int ubits = st->bits_unused; + uint8_t v = *buf & (0xff << ubits); + *p++ = h2c[v >> 4]; + *p++ = h2c[v & 0x0F]; + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + } + *p++ = '"'; + ASN__CALLBACK(scratch, p - scratch); + ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c new file mode 100644 index 000000000..95c955896 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c @@ -0,0 +1,168 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + (void)opt_codec_ctx; + + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = (ct_size + 7) >> 3; + st->bits_unused = (8 - (ct_size & 7)) & 7; + } else { + /* + * X.696 (08/2015) #13.3.1 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length < 1) { + ASN__DECODE_FAILED; + } else if(expected_length > size) { + ASN__DECODE_STARVED; + } + + st->bits_unused = ((const uint8_t *)ptr)[0]; + if(st->bits_unused & ~7) { + ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name); + ASN__DECODE_FAILED; + } + ptr = (const char *)ptr + 1; + size--; + expected_length--; + rval.consumed = len_len + 1; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + if(expected_length > 0) { + buf[expected_length - 1] &= (0xff << st->bits_unused); + } + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t erval = {0, 0, 0}; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + size_t trailing_zeros = 0; + int fix_last_byte = 0; + + if(!st) ASN__ENCODE_FAILED; + + if(st->bits_unused & ~7) { + ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range", + st->bits_unused); + ASN__ENCODE_FAILED; + } + if(st->bits_unused && !(st->size && st->buf)) { + ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name, + st->bits_unused); + ASN__ENCODE_FAILED; + } + + if(ct_size >= 0) { + size_t ct_bytes = (ct_size + 7) >> 3; + if(st->size > ct_bytes) { + ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "", + td->name, 8 * st->size - st->bits_unused, ct_size); + ASN__ENCODE_FAILED; + } + trailing_zeros = ct_bytes - st->size; /* Allow larger constraint */ + } else { + uint8_t ub = st->bits_unused & 7; + ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key); + if(len_len < 0) ASN__ENCODE_FAILED; + if(cb(&ub, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + erval.encoded += len_len + 1; + } + + if(st->bits_unused) { + if(st->buf[st->size - 1] & (0xff << st->bits_unused)) { + fix_last_byte = 1; + } + } + + if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + if(fix_last_byte) { + uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused); + if(cb(&b, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + erval.encoded += st->size; + + if(trailing_zeros) { + static uint8_t zeros[16]; + while(trailing_zeros > 0) { + int ret; + if(trailing_zeros < sizeof(zeros)) { + ret = cb(zeros, trailing_zeros, app_key); + erval.encoded += trailing_zeros; + } else { + ret = cb(zeros, sizeof(zeros), app_key); + erval.encoded += sizeof(zeros); + } + if(ret < 0) ASN__ENCODE_FAILED; + } + } + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c new file mode 100644 index 000000000..bab1ea522 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BIT STRING specific contents printer. + */ +int +BIT_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + char scratch[64]; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + uint8_t *buf; + uint8_t *end; + char *p = scratch; + + (void)td; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + ilevel++; + buf = st->buf; + end = buf + st->size; + + /* + * Hexadecimal dump. + */ + for(; buf < end; buf++) { + if((buf - st->buf) % 16 == 0 && (st->size > 16) + && buf != st->buf) { + _i_INDENT(1); + /* Dump the string */ + if(cb(scratch, p - scratch, app_key) < 0) return -1; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Eat the tailing space */ + + if((st->size > 16)) { + _i_INDENT(1); + } + + /* Dump the incomplete 16-bytes row */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + if(st->bits_unused) { + int ret = snprintf(scratch, sizeof(scratch), " (%d bit%s unused)", + st->bits_unused, st->bits_unused == 1 ? "" : "s"); + assert(ret > 0 && ret < (ssize_t)sizeof(scratch)); + if(ret > 0 && ret < (ssize_t)sizeof(scratch) + && cb(scratch, ret, app_key) < 0) + return -1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c new file mode 100644 index 000000000..a6e6a9544 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +BIT_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + static unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_bits, rnd_len; + BIT_STRING_t *st; + + if(max_length == 0) return result_skipped; + + switch(specs->subvariant) { + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + break; + default: + break; + } + + /* Figure out how far we should go */ + rnd_bits = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length < (size_t)pc->lower_bound) { + return result_skipped; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_bits = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_bits = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_bits from the table */ + if(rnd_bits < max_length) { + break; + } + /* Fall through */ + default: + rnd_bits = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_bits = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_bits = asn_random_between(0, max_length - 1); + } + } else { +#else + if(!constraints) constraints = &td->encoding_constraints; + { +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + if(rnd_bits >= max_length) { + rnd_bits = asn_random_between(0, max_length - 1); + } + } + + rnd_len = (rnd_bits + 7) / 8; + buf = CALLOC(1, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[rnd_len]; + + for(b = buf; b < bend; b++) { + *(uint8_t *)b = asn_random_between(0, 255); + } + *b = 0; /* Zero-terminate just in case. */ + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = rnd_len; + st->bits_unused = (8 - (rnd_bits & 0x7)) & 0x7; + if(st->bits_unused) { + assert(st->size > 0); + st->buf[st->size-1] &= 0xff << st->bits_unused; + } + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c new file mode 100644 index 000000000..d82349eed --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c @@ -0,0 +1,244 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +static asn_per_constraint_t asn_DEF_BIT_STRING_constraint_size = { + APC_SEMI_CONSTRAINED, -1, -1, 0, 0}; + +asn_dec_rval_t +BIT_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + + (void)opt_codec_ctx; + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + + if(specs->subvariant != ASN_OSUBV_BIT) { + ASN_DEBUG("Subvariant %d is not BIT OSUBV_BIT", specs->subvariant); + RETURN(RC_FAIL); + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + st->size = (csiz->upper_bound + 7) >> 3; + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + ASN_DEBUG("Encoding BIT STRING size %ld", csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, csiz->upper_bound); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += csiz->upper_bound; + st->buf[st->size] = 0; + st->bits_unused = (8 - (csiz->upper_bound & 0x7)) & 0x7; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +BIT_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + BIT_STRING_t compact_bstr; /* Do not modify this directly! */ + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + size_t size_in_bits; + const uint8_t *buf; + int ret; + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(specs->subvariant == ASN_OSUBV_BIT) { + if((st->size == 0 && st->bits_unused) || (st->bits_unused & ~7)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + /* Figure out the size without the trailing bits */ + st = BIT_STRING__compactify(st, &compact_bstr); + size_in_bits = 8 * st->size - st->bits_unused; + + ASN_DEBUG( + "Encoding %s into %" ASN_PRI_SIZE " bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_bits, csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_bits > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + int add_trailer = (ssize_t)size_in_bits < csiz->lower_bound; + ASN_DEBUG( + "Encoding %" ASN_PRI_SIZE " bytes (%ld), length (in %d bits) trailer %d; actual " + "value %" ASN_PRI_SSIZE "", + st->size, size_in_bits - csiz->lower_bound, csiz->effective_bits, + add_trailer, + add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound); + ret = per_put_few_bits( + po, add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = per_put_many_bits(po, st->buf, size_in_bits); + if(ret) ASN__ENCODE_FAILED; + if(add_trailer) { + static const uint8_t zeros[16]; + size_t trailing_zero_bits = csiz->lower_bound - size_in_bits; + while(trailing_zero_bits > 0) { + if(trailing_zero_bits > 8 * sizeof(zeros)) { + ret = per_put_many_bits(po, zeros, 8 * sizeof(zeros)); + trailing_zero_bits -= 8 * sizeof(zeros); + } else { + ret = per_put_many_bits(po, zeros, trailing_zero_bits); + trailing_zero_bits = 0; + } + if(ret) ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + do { + int need_eom = 0; + ssize_t maySave = uper_put_length(po, size_in_bits, &need_eom); + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "", maySave, size_in_bits); + + ret = per_put_many_bits(po, buf, maySave); + if(ret) ASN__ENCODE_FAILED; + + buf += maySave >> 3; + size_in_bits -= maySave; + assert(!(maySave & 0x07) || !size_in_bits); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_bits); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c new file mode 100644 index 000000000..67d5cb8db --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static const char *_bit_pattern[16] = { + "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", + "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" +}; + +asn_enc_rval_t +BIT_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + char scratch[128]; + char *p = scratch; + char *scend = scratch + (sizeof(scratch) - 10); + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + int xcan = (flags & XER_F_CANONICAL); + uint8_t *buf; + uint8_t *end; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size - 1; /* Last byte is special */ + + /* + * Binary dump + */ + for(; buf < end; buf++) { + int v = *buf; + int nline = xcan?0:(((buf - st->buf) % 8) == 0); + if(p >= scend || nline) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + if(nline) ASN__TEXT_INDENT(1, ilevel); + } + memcpy(p + 0, _bit_pattern[v >> 4], 4); + memcpy(p + 4, _bit_pattern[v & 0x0f], 4); + p += 8; + } + + if(!xcan && ((buf - st->buf) % 8) == 0) + ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + + if(buf == end) { + int v = *buf; + int ubits = st->bits_unused; + int i; + for(i = 7; i >= ubits; i--) + *p++ = (v & (1 << i)) ? 0x31 : 0x30; + ASN__CALLBACK(scratch, p - scratch); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN.c new file mode 100644 index 000000000..1373a6f15 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN.c @@ -0,0 +1,128 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BOOLEAN basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_operation_t asn_OP_BOOLEAN = { + BOOLEAN_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + BOOLEAN_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + BOOLEAN_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + BOOLEAN_decode_ber, + BOOLEAN_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + BOOLEAN_decode_xer, + BOOLEAN_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + BOOLEAN_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + BOOLEAN_decode_oer, + BOOLEAN_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + BOOLEAN_decode_uper, /* Unaligned PER decoder */ + BOOLEAN_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + BOOLEAN_decode_aper, /* Aligned PER decoder */ + BOOLEAN_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + BOOLEAN_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { + "BOOLEAN", + "BOOLEAN", + &asn_OP_BOOLEAN, + asn_DEF_BOOLEAN_tags, + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + asn_DEF_BOOLEAN_tags, /* Same as above */ + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +void +BOOLEAN_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(BOOLEAN_t)); + break; + } + } +} + +int +BOOLEAN_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const BOOLEAN_t *a = aptr; + const BOOLEAN_t *b = bptr; + + (void)td; + + if(a && b) { + if(!*a == !*b) { /* TRUE can be encoded by any non-zero byte. */ + return 0; + } else if(!*a) { + return -1; + } else { + return 1; + } + } else if(!a) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c new file mode 100644 index 000000000..d697cf571 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BOOLEAN_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + (void)td; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: + *st = 1; + break; + case 0: + *st = 0; + break; + case -1: + default: + ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + +asn_enc_rval_t +BOOLEAN_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c new file mode 100644 index 000000000..176a4a4b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode BOOLEAN type. + */ +asn_dec_rval_t +BOOLEAN_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **bool_value, + const void *buf_ptr, size_t size, int tag_mode) { + BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; + asn_dec_rval_t rval; + ber_tlv_len_t length; + ber_tlv_len_t lidx; + + if(st == NULL) { + st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); + if(st == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("Boolean length is %d bytes", (int)length); + + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * Compute boolean value. + */ + for(*st = 0, lidx = 0; + (lidx < length) && *st == 0; lidx++) { + /* + * Very simple approach: read bytes until the end or + * value is already TRUE. + * BOOLEAN is not supposed to contain meaningful data anyway. + */ + *st |= ((const uint8_t *)buf_ptr)[lidx]; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", + (long)rval.consumed, (long)length, + td->name, *st); + + return rval; +} + +asn_enc_rval_t +BOOLEAN_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + + erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb) { + uint8_t bool_value; + + bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ + + if(cb(&bool_value, 1, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } + + erval.encoded += 1; + + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c new file mode 100644 index 000000000..6f4b0935f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_enc_rval_t +BOOLEAN_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + + (void)ilevel; + (void)flags; + + if(!st) ASN__ENCODE_FAILED; + + if(*st) { + ASN__CALLBACK("true", 4); + } else { + ASN__CALLBACK("false", 5); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c new file mode 100644 index 000000000..0e92e602b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BOOLEAN_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 1, 0, 0 }; + const BOOLEAN_t *st = sptr; + uint8_t bool_value = *st ? 0xff : 0; /* 0xff mandated by OER */ + + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(cb(&bool_value, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +asn_dec_rval_t +BOOLEAN_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + asn_dec_rval_t ok = {RC_OK, 1}; + BOOLEAN_t *st; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if(!(st = *sptr)) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + *st = *(const uint8_t *)ptr; + + return ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c new file mode 100644 index 000000000..23aaadea8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +BOOLEAN_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + const char *buf; + size_t buflen; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st) { + if(*st) { + buf = "TRUE"; + buflen = 4; + } else { + buf = "FALSE"; + buflen = 5; + } + } else { + buf = ""; + buflen = 8; + } + + return (cb(buf, buflen, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c new file mode 100644 index 000000000..5ec628bbf --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +BOOLEAN_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + BOOLEAN_t *st = *sptr; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(st == NULL) { + return result_failed; + } + } + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_CONSTRAINED) { + *st = asn_random_between(pc->lower_bound, pc->upper_bound); + return result_ok; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + /* Simulate booleans that are sloppily set and biased. */ + switch(asn_random_between(0, 7)) { + case 0: + case 1: + case 2: + *st = 0; break; + case 3: *st = -1; break; + case 4: *st = 1; break; + case 5: *st = INT_MIN; break; + case 6: *st = INT_MAX; break; + default: + *st = asn_random_between(INT_MIN, INT_MAX); + break; + } + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c new file mode 100644 index 000000000..8181ec9ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BOOLEAN_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: *st = 1; break; + case 0: *st = 0; break; + case -1: default: ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + + +asn_enc_rval_t +BOOLEAN_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c new file mode 100644 index 000000000..7e9d8f853 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +BOOLEAN__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + BOOLEAN_t *st = (BOOLEAN_t *)sptr; + const char *p = (const char *)chunk_buf; + + (void)td; + + if(chunk_size && p[0] == 0x3c /* '<' */) { + switch(xer_check_tag(chunk_buf, chunk_size, "false")) { + case XCT_BOTH: + /* "" */ + *st = 0; + break; + case XCT_UNKNOWN_BO: + if(xer_check_tag(chunk_buf, chunk_size, "true") != XCT_BOTH) + return XPBD_BROKEN_ENCODING; + /* "" */ + *st = 1; /* Or 0xff as in DER?.. */ + break; + default: + return XPBD_BROKEN_ENCODING; + } + return XPBD_BODY_CONSUMED; + } else { + return XPBD_BROKEN_ENCODING; + } +} + + +asn_dec_rval_t +BOOLEAN_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, + BOOLEAN__xer_body_decode); +} + +asn_enc_rval_t +BOOLEAN_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + + (void)ilevel; + (void)flags; + + if(!st) ASN__ENCODE_FAILED; + + if(*st) { + ASN__CALLBACK("", 7); + } else { + ASN__CALLBACK("", 8); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/BSMcoreData.c b/src/tmx/Asn_J2735/src/2020/BSMcoreData.c new file mode 100644 index 000000000..58f4400b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BSMcoreData.c @@ -0,0 +1,300 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BSMcoreData.h" + +asn_TYPE_member_t asn_MBR_BSMcoreData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, lat), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, Long), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, elev), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elev" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, transmission), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transmission" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, speed), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, heading), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, angle), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accelSet), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, brakes), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, size), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "size" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMcoreData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMcoreData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* elev */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transmission */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* size */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1 = { + sizeof(struct BSMcoreData), + offsetof(struct BSMcoreData, _asn_ctx), + asn_MAP_BSMcoreData_tag2el_1, + 14, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMcoreData = { + "BSMcoreData", + "BSMcoreData", + &asn_OP_SEQUENCE, + asn_DEF_BSMcoreData_tags_1, + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + asn_DEF_BSMcoreData_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BSMcoreData_1, + 14, /* Elements count */ + &asn_SPC_BSMcoreData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c new file mode 100644 index 000000000..fc413535b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c @@ -0,0 +1,312 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BasicSafetyMessage.h" + +#include "PartIIcontent.h" +#include "RegionalExtension.h" +static int +memb_partII_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BSMpartIIExtension, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_partII_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_partII_specs_3 = { + sizeof(struct BasicSafetyMessage__partII), + offsetof(struct BasicSafetyMessage__partII, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_3 = { + "partII", + "partII", + &asn_OP_SEQUENCE_OF, + asn_DEF_partII_tags_3, + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]) - 1, /* 1 */ + asn_DEF_partII_tags_3, /* Same as above */ + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_partII_3, + 1, /* Single element */ + &asn_SPC_partII_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct BasicSafetyMessage__regional), + offsetof(struct BasicSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, coreData), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "coreData" + }, + { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, partII), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_partII_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_constraint_1 + }, + 0, 0, /* No default value */ + "partII" + }, + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_BasicSafetyMessage_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* coreData */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* partII */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { + sizeof(struct BasicSafetyMessage), + offsetof(struct BasicSafetyMessage, _asn_ctx), + asn_MAP_BasicSafetyMessage_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { + "BasicSafetyMessage", + "BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BasicSafetyMessage_1, + 3, /* Elements count */ + &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c b/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c new file mode 100644 index 000000000..19240d328 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BasicVehicleClass.h" + +int +BasicVehicleClass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BasicVehicleClass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass = { + "BasicVehicleClass", + "BasicVehicleClass", + &asn_OP_NativeInteger, + asn_DEF_BasicVehicleClass_tags_1, + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleClass_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BasicVehicleClass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BasicVehicleClass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BasicVehicleClass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c b/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c new file mode 100644 index 000000000..3971477fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BasicVehicleRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 22 } /* (0..22,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BasicVehicleRole_value2enum_1[] = { + { 0, 12, "basicVehicle" }, + { 1, 15, "publicTransport" }, + { 2, 16, "specialTransport" }, + { 3, 14, "dangerousGoods" }, + { 4, 8, "roadWork" }, + { 5, 10, "roadRescue" }, + { 6, 9, "emergency" }, + { 7, 9, "safetyCar" }, + { 8, 12, "none-unknown" }, + { 9, 5, "truck" }, + { 10, 10, "motorcycle" }, + { 11, 14, "roadSideSource" }, + { 12, 6, "police" }, + { 13, 4, "fire" }, + { 14, 9, "ambulance" }, + { 15, 3, "dot" }, + { 16, 7, "transit" }, + { 17, 10, "slowMoving" }, + { 18, 7, "stopNgo" }, + { 19, 7, "cyclist" }, + { 20, 10, "pedestrian" }, + { 21, 12, "nonMotorized" }, + { 22, 8, "military" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_BasicVehicleRole_enum2value_1[] = { + 14, /* ambulance(14) */ + 0, /* basicVehicle(0) */ + 19, /* cyclist(19) */ + 3, /* dangerousGoods(3) */ + 15, /* dot(15) */ + 6, /* emergency(6) */ + 13, /* fire(13) */ + 22, /* military(22) */ + 10, /* motorcycle(10) */ + 21, /* nonMotorized(21) */ + 8, /* none-unknown(8) */ + 20, /* pedestrian(20) */ + 12, /* police(12) */ + 1, /* publicTransport(1) */ + 5, /* roadRescue(5) */ + 11, /* roadSideSource(11) */ + 4, /* roadWork(4) */ + 7, /* safetyCar(7) */ + 17, /* slowMoving(17) */ + 2, /* specialTransport(2) */ + 18, /* stopNgo(18) */ + 16, /* transit(16) */ + 9 /* truck(9) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1 = { + asn_MAP_BasicVehicleRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BasicVehicleRole_enum2value_1, /* N => "tag"; sorted by N */ + 23, /* Number of elements in the maps */ + 24, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BasicVehicleRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole = { + "BasicVehicleRole", + "BasicVehicleRole", + &asn_OP_NativeEnumerated, + asn_DEF_BasicVehicleRole_tags_1, + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleRole_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BasicVehicleRole_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BasicVehicleRole_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BasicVehicleRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c new file mode 100644 index 000000000..e23e68c2a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BrakeAppliedPressure.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "minPressure" }, + { 2, 7, "bkLvl-2" }, + { 3, 7, "bkLvl-3" }, + { 4, 7, "bkLvl-4" }, + { 5, 7, "bkLvl-5" }, + { 6, 7, "bkLvl-6" }, + { 7, 7, "bkLvl-7" }, + { 8, 7, "bkLvl-8" }, + { 9, 7, "bkLvl-9" }, + { 10, 8, "bkLvl-10" }, + { 11, 8, "bkLvl-11" }, + { 12, 8, "bkLvl-12" }, + { 13, 8, "bkLvl-13" }, + { 14, 8, "bkLvl-14" }, + { 15, 11, "maxPressure" } +}; +static const unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { + 10, /* bkLvl-10(10) */ + 11, /* bkLvl-11(11) */ + 12, /* bkLvl-12(12) */ + 13, /* bkLvl-13(13) */ + 14, /* bkLvl-14(14) */ + 2, /* bkLvl-2(2) */ + 3, /* bkLvl-3(3) */ + 4, /* bkLvl-4(4) */ + 5, /* bkLvl-5(5) */ + 6, /* bkLvl-6(6) */ + 7, /* bkLvl-7(7) */ + 8, /* bkLvl-8(8) */ + 9, /* bkLvl-9(9) */ + 15, /* maxPressure(15) */ + 1, /* minPressure(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { + asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { + "BrakeAppliedPressure", + "BrakeAppliedPressure", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeAppliedPressure_tags_1, + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeAppliedPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeAppliedPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c new file mode 100644 index 000000000..c51a80e94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BrakeAppliedStatus.h" + +int +BrakeAppliedStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { + "BrakeAppliedStatus", + "BrakeAppliedStatus", + &asn_OP_BIT_STRING, + asn_DEF_BrakeAppliedStatus_tags_1, + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeAppliedStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeAppliedStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BrakeAppliedStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c new file mode 100644 index 000000000..e56f1fa65 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BrakeBoostApplied.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" } +}; +static const unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { + asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { + "BrakeBoostApplied", + "BrakeBoostApplied", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeBoostApplied_tags_1, + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeBoostApplied_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeBoostApplied_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c new file mode 100644 index 000000000..3b313dbde --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c @@ -0,0 +1,156 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BrakeSystemStatus.h" + +asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, wheelBrakes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelBrakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, traction), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TractionControlStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "traction" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, abs), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntiLockBrakeStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "abs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, scs), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StabilityControlStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, brakeBoost), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeBoostApplied, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakeBoost" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, auxBrakes), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AuxiliaryBrakeStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "auxBrakes" + }, +}; +static const ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BrakeSystemStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* wheelBrakes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* traction */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* abs */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* scs */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakeBoost */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* auxBrakes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1 = { + sizeof(struct BrakeSystemStatus), + offsetof(struct BrakeSystemStatus, _asn_ctx), + asn_MAP_BrakeSystemStatus_tag2el_1, + 6, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { + "BrakeSystemStatus", + "BrakeSystemStatus", + &asn_OP_SEQUENCE, + asn_DEF_BrakeSystemStatus_tags_1, + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BrakeSystemStatus_1, + 6, /* Elements count */ + &asn_SPC_BrakeSystemStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BumperHeight.c b/src/tmx/Asn_J2735/src/2020/BumperHeight.c new file mode 100644 index 000000000..e3177905a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BumperHeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BumperHeight.h" + +int +BumperHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BumperHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BumperHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BumperHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeight = { + "BumperHeight", + "BumperHeight", + &asn_OP_NativeInteger, + asn_DEF_BumperHeight_tags_1, + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + asn_DEF_BumperHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BumperHeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BumperHeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BumperHeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/BumperHeights.c b/src/tmx/Asn_J2735/src/2020/BumperHeights.c new file mode 100644 index 000000000..ee98b5af9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/BumperHeights.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "BumperHeights.h" + +asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, front), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "front" + }, + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rear" + }, +}; +static const ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* front */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { + sizeof(struct BumperHeights), + offsetof(struct BumperHeights, _asn_ctx), + asn_MAP_BumperHeights_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeights = { + "BumperHeights", + "BumperHeights", + &asn_OP_SEQUENCE, + asn_DEF_BumperHeights_tags_1, + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + asn_DEF_BumperHeights_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BumperHeights_1, + 2, /* Elements count */ + &asn_SPC_BumperHeights_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/CargoWeight.c b/src/tmx/Asn_J2735/src/2020/CargoWeight.c new file mode 100644 index 000000000..c7b2ff436 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/CargoWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "CargoWeight.h" + +int +CargoWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CargoWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CargoWeight = { + "CargoWeight", + "CargoWeight", + &asn_OP_NativeInteger, + asn_DEF_CargoWeight_tags_1, + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + asn_DEF_CargoWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CargoWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CargoWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CargoWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Circle.c b/src/tmx/Asn_J2735/src/2020/Circle.c new file mode 100644 index 000000000..49da2c4b3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Circle.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Circle.h" + +asn_TYPE_member_t asn_MBR_Circle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Circle, center), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "center" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, radius), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Radius_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "radius" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DistanceUnits, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* radius */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { + sizeof(struct Circle), + offsetof(struct Circle, _asn_ctx), + asn_MAP_Circle_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Circle = { + "Circle", + "Circle", + &asn_OP_SEQUENCE, + asn_DEF_Circle_tags_1, + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + asn_DEF_Circle_tags_1, /* Same as above */ + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Circle_1, + 3, /* Elements count */ + &asn_SPC_Circle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/CoarseHeading.c b/src/tmx/Asn_J2735/src/2020/CoarseHeading.c new file mode 100644 index 000000000..3791ea679 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/CoarseHeading.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "CoarseHeading.h" + +int +CoarseHeading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 240L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..240) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 240 } /* (0..240) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CoarseHeading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoarseHeading = { + "CoarseHeading", + "CoarseHeading", + &asn_OP_NativeInteger, + asn_DEF_CoarseHeading_tags_1, + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + asn_DEF_CoarseHeading_tags_1, /* Same as above */ + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CoarseHeading_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CoarseHeading_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CoarseHeading_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/CodeWord.c b/src/tmx/Asn_J2735/src/2020/CodeWord.c new file mode 100644 index 000000000..5bc8a9c73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/CodeWord.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "CodeWord.h" + +int +CodeWord_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CodeWord_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CodeWord = { + "CodeWord", + "CodeWord", + &asn_OP_OCTET_STRING, + asn_DEF_CodeWord_tags_1, + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + asn_DEF_CodeWord_tags_1, /* Same as above */ + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CodeWord_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CodeWord_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CodeWord_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c new file mode 100644 index 000000000..fa52baf11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "CoefficientOfFriction.h" + +int +CoefficientOfFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 50L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..50) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { + "CoefficientOfFriction", + "CoefficientOfFriction", + &asn_OP_NativeInteger, + asn_DEF_CoefficientOfFriction_tags_1, + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CoefficientOfFriction_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CoefficientOfFriction_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CoefficientOfFriction_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c new file mode 100644 index 000000000..202821aed --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c @@ -0,0 +1,244 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "CommonSafetyRequest.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_CommonSafetyRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct CommonSafetyRequest__regional), + offsetof(struct CommonSafetyRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { + { ATF_POINTER, 3, offsetof(struct CommonSafetyRequest, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestedItemList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_CommonSafetyRequest_oms_1[] = { 0, 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { + sizeof(struct CommonSafetyRequest), + offsetof(struct CommonSafetyRequest, _asn_ctx), + asn_MAP_CommonSafetyRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { + "CommonSafetyRequest", + "CommonSafetyRequest", + &asn_OP_SEQUENCE, + asn_DEF_CommonSafetyRequest_tags_1, + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_CommonSafetyRequest_1, + 5, /* Elements count */ + &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Common_Angle.c b/src/tmx/Asn_J2735/src/2020/Common_Angle.c new file mode 100644 index 000000000..0b2a34295 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Common_Angle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Common_Angle.h" + +int +Common_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_Angle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_Common_Angle_tags_1, + sizeof(asn_DEF_Common_Angle_tags_1) + /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ + asn_DEF_Common_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_Angle_tags_1) + /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_Angle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Common_Elevation.c b/src/tmx/Asn_J2735/src/2020/Common_Elevation.c new file mode 100644 index 000000000..f6a0ac83a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Common_Elevation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Common_Elevation.h" + +int +Common_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096L && value <= 61439L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_Elevation_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-4096..61439) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_Common_Elevation_tags_1, + sizeof(asn_DEF_Common_Elevation_tags_1) + /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ + asn_DEF_Common_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_Elevation_tags_1) + /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_Elevation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c b/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c new file mode 100644 index 000000000..9510d6667 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Common_MsgCount.h" + +int +Common_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_Common_MsgCount_tags_1, + sizeof(asn_DEF_Common_MsgCount_tags_1) + /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_Common_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_MsgCount_tags_1) + /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_MsgCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ComputedLane.c b/src/tmx/Asn_J2735/src/2020/ComputedLane.c new file mode 100644 index 000000000..24e8446d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ComputedLane.c @@ -0,0 +1,450 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ComputedLane.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { + sizeof(struct ComputedLane__offsetXaxis), + offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetXaxis, present), + sizeof(((struct ComputedLane__offsetXaxis *)0)->present), + asn_MAP_offsetXaxis_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { + "offsetXaxis", + "offsetXaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offsetXaxis_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offsetXaxis_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offsetXaxis_3, + 2, /* Elements count */ + &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { + sizeof(struct ComputedLane__offsetYaxis), + offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetYaxis, present), + sizeof(((struct ComputedLane__offsetYaxis *)0)->present), + asn_MAP_offsetYaxis_tag2el_6, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { + "offsetYaxis", + "offsetYaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offsetYaxis_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offsetYaxis_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offsetYaxis_6, + 2, /* Elements count */ + &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ComputedLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct ComputedLane__regional), + offsetof(struct ComputedLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "referenceLaneId" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetXaxis_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetXaxis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetYaxis_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetYaxis" + }, + { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rotateXY" + }, + { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scaleXaxis" + }, + { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scaleYaxis" + }, + { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { + sizeof(struct ComputedLane), + offsetof(struct ComputedLane, _asn_ctx), + asn_MAP_ComputedLane_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ComputedLane_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ComputedLane = { + "ComputedLane", + "ComputedLane", + &asn_OP_SEQUENCE, + asn_DEF_ComputedLane_tags_1, + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + asn_DEF_ComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ComputedLane_1, + 7, /* Elements count */ + &asn_SPC_ComputedLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Confidence.c b/src/tmx/Asn_J2735/src/2020/Confidence.c new file mode 100644 index 000000000..fc0af2311 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Confidence.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Confidence.h" + +int +Confidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Confidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Confidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Confidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Confidence = { + "Confidence", + "Confidence", + &asn_OP_NativeInteger, + asn_DEF_Confidence_tags_1, + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + asn_DEF_Confidence_tags_1, /* Same as above */ + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Confidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Confidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Confidence_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c b/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c new file mode 100644 index 000000000..e06a001fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c @@ -0,0 +1,179 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ConfidenceSet.h" + +#include "AccelSteerYawRateConfidence.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "PositionConfidenceSet.h" +asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { + { ATF_POINTER, 7, offsetof(struct ConfidenceSet, accelConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelSteerYawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelConfidence" + }, + { ATF_POINTER, 6, offsetof(struct ConfidenceSet, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedConfidence" + }, + { ATF_POINTER, 5, offsetof(struct ConfidenceSet, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 4, offsetof(struct ConfidenceSet, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 3, offsetof(struct ConfidenceSet, steerConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steerConfidence" + }, + { ATF_POINTER, 2, offsetof(struct ConfidenceSet, headingConfidence), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "headingConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttleConfidence" + }, +}; +static const int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* headingConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* throttleConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { + sizeof(struct ConfidenceSet), + offsetof(struct ConfidenceSet, _asn_ctx), + asn_MAP_ConfidenceSet_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ConfidenceSet_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { + "ConfidenceSet", + "ConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_ConfidenceSet_tags_1, + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_ConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConfidenceSet_1, + 7, /* Elements count */ + &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ConnectingLane.c b/src/tmx/Asn_J2735/src/2020/ConnectingLane.c new file mode 100644 index 000000000..28f937ea5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ConnectingLane.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ConnectingLane.h" + +asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuver" + }, +}; +static const int asn_MAP_ConnectingLane_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { + sizeof(struct ConnectingLane), + offsetof(struct ConnectingLane, _asn_ctx), + asn_MAP_ConnectingLane_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectingLane_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { + "ConnectingLane", + "ConnectingLane", + &asn_OP_SEQUENCE, + asn_DEF_ConnectingLane_tags_1, + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + asn_DEF_ConnectingLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectingLane_1, + 2, /* Elements count */ + &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Connection.c b/src/tmx/Asn_J2735/src/2020/Connection.c new file mode 100644 index 000000000..97799b245 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Connection.c @@ -0,0 +1,141 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Connection.h" + +#include "IntersectionReferenceID.h" +asn_TYPE_member_t asn_MBR_Connection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectingLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectingLane" + }, + { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "remoteIntersection" + }, + { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_POINTER, 2, offsetof(struct Connection, userClass), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "userClass" + }, + { ATF_POINTER, 1, offsetof(struct Connection, connectionID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectionID" + }, +}; +static const int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { + sizeof(struct Connection), + offsetof(struct Connection, _asn_ctx), + asn_MAP_Connection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Connection_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Connection = { + "Connection", + "Connection", + &asn_OP_SEQUENCE, + asn_DEF_Connection_tags_1, + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + asn_DEF_Connection_tags_1, /* Same as above */ + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Connection_1, + 5, /* Elements count */ + &asn_SPC_Connection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c new file mode 100644 index 000000000..11562a60d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c @@ -0,0 +1,87 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ConnectionManeuverAssist-addGrpC.h" + +#include "NodeOffsetPointXY.h" +asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist_addGrpC, vehicleToLanePositions), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleToLanePositionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleToLanePositions" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist_addGrpC, rsuDistanceFromAnchor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rsuDistanceFromAnchor" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 = { + sizeof(struct ConnectionManeuverAssist_addGrpC), + offsetof(struct ConnectionManeuverAssist_addGrpC, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC = { + "ConnectionManeuverAssist-addGrpC", + "ConnectionManeuverAssist-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectionManeuverAssist_addGrpC_1, + 2, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c new file mode 100644 index 000000000..c1b8a627b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c @@ -0,0 +1,262 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ConnectionManeuverAssist.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ConnectionManeuverAssist, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct ConnectionManeuverAssist__regional), + offsetof(struct ConnectionManeuverAssist__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectionID" + }, + { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "queueLength" + }, + { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "availableStorageLength" + }, + { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WaitOnStopline, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "waitOnStop" + }, + { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PedestrianBicycleDetect, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pedBicycleDetect" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { + sizeof(struct ConnectionManeuverAssist), + offsetof(struct ConnectionManeuverAssist, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { + "ConnectionManeuverAssist", + "ConnectionManeuverAssist", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectionManeuverAssist_1, + 6, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ConnectsToList.c b/src/tmx/Asn_J2735/src/2020/ConnectsToList.c new file mode 100644 index 000000000..da71ec49c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ConnectsToList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ConnectsToList.h" + +#include "Connection.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Connection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { + sizeof(struct ConnectsToList), + offsetof(struct ConnectsToList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { + "ConnectsToList", + "ConnectsToList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ConnectsToList_tags_1, + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + asn_DEF_ConnectsToList_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ConnectsToList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ConnectsToList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ConnectsToList_1, + 1, /* Single element */ + &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Count.c b/src/tmx/Asn_J2735/src/2020/Count.c new file mode 100644 index 000000000..af449140e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Count.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Count.h" + +int +Count_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Count_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..32) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Count_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Count_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Count = { + "Count", + "Count", + &asn_OP_NativeInteger, + asn_DEF_Count_tags_1, + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + asn_DEF_Count_tags_1, /* Same as above */ + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Count_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Count_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Count_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DDate.c b/src/tmx/Asn_J2735/src/2020/DDate.c new file mode 100644 index 000000000..957a4fb7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DDate.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DDate.h" + +static asn_TYPE_member_t asn_MBR_DDate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DDate, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { + sizeof(struct DDate), + offsetof(struct DDate, _asn_ctx), + asn_MAP_DDate_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDate = { + "DDate", + "DDate", + &asn_OP_SEQUENCE, + asn_DEF_DDate_tags_1, + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + asn_DEF_DDate_tags_1, /* Same as above */ + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DDate_1, + 3, /* Elements count */ + &asn_SPC_DDate_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DDateTime.c b/src/tmx/Asn_J2735/src/2020/DDateTime.c new file mode 100644 index 000000000..d6f4c9061 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DDateTime.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DDateTime.h" + +asn_TYPE_member_t asn_MBR_DDateTime_1[] = { + { ATF_POINTER, 7, offsetof(struct DDateTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 6, offsetof(struct DDateTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_POINTER, 5, offsetof(struct DDateTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_POINTER, 4, offsetof(struct DDateTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_POINTER, 3, offsetof(struct DDateTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct DDateTime, second), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DDateTime, offset), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { + sizeof(struct DDateTime), + offsetof(struct DDateTime, _asn_ctx), + asn_MAP_DDateTime_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_DDateTime_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDateTime = { + "DDateTime", + "DDateTime", + &asn_OP_SEQUENCE, + asn_DEF_DDateTime_tags_1, + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + asn_DEF_DDateTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DDateTime_1, + 7, /* Elements count */ + &asn_SPC_DDateTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DDay.c b/src/tmx/Asn_J2735/src/2020/DDay.c new file mode 100644 index 000000000..c957b7693 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DDay.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DDay.h" + +int +DDay_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DDay_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DDay_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DDay = { + "DDay", + "DDay", + &asn_OP_NativeInteger, + asn_DEF_DDay_tags_1, + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + asn_DEF_DDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DDay_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DDay_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DDay_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DFullTime.c b/src/tmx/Asn_J2735/src/2020/DFullTime.c new file mode 100644 index 000000000..b27927546 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DFullTime.c @@ -0,0 +1,138 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DFullTime.h" + +static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, +}; +static const ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { + sizeof(struct DFullTime), + offsetof(struct DFullTime, _asn_ctx), + asn_MAP_DFullTime_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DFullTime = { + "DFullTime", + "DFullTime", + &asn_OP_SEQUENCE, + asn_DEF_DFullTime_tags_1, + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + asn_DEF_DFullTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DFullTime_1, + 5, /* Elements count */ + &asn_SPC_DFullTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DHour.c b/src/tmx/Asn_J2735/src/2020/DHour.c new file mode 100644 index 000000000..cfb450ca2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DHour.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DHour.h" + +int +DHour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DHour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DHour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DHour = { + "DHour", + "DHour", + &asn_OP_NativeInteger, + asn_DEF_DHour_tags_1, + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + asn_DEF_DHour_tags_1, /* Same as above */ + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DHour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DHour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DHour_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DMinute.c b/src/tmx/Asn_J2735/src/2020/DMinute.c new file mode 100644 index 000000000..e29176e7f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DMinute.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DMinute.h" + +int +DMinute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 60L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DMinute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DMinute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMinute = { + "DMinute", + "DMinute", + &asn_OP_NativeInteger, + asn_DEF_DMinute_tags_1, + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + asn_DEF_DMinute_tags_1, /* Same as above */ + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DMinute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DMinute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DMinute_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DMonth.c b/src/tmx/Asn_J2735/src/2020/DMonth.c new file mode 100644 index 000000000..6f79a388b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DMonth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DMonth.h" + +int +DMonth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 12L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DMonth_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..12) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DMonth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 12 } /* (0..12) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMonth = { + "DMonth", + "DMonth", + &asn_OP_NativeInteger, + asn_DEF_DMonth_tags_1, + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + asn_DEF_DMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DMonth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DMonth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DMonth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DMonthDay.c b/src/tmx/Asn_J2735/src/2020/DMonthDay.c new file mode 100644 index 000000000..5172f87dd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DMonthDay.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DMonthDay.h" + +static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { + sizeof(struct DMonthDay), + offsetof(struct DMonthDay, _asn_ctx), + asn_MAP_DMonthDay_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DMonthDay = { + "DMonthDay", + "DMonthDay", + &asn_OP_SEQUENCE, + asn_DEF_DMonthDay_tags_1, + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + asn_DEF_DMonthDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DMonthDay_1, + 2, /* Elements count */ + &asn_SPC_DMonthDay_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DOffset.c b/src/tmx/Asn_J2735/src/2020/DOffset.c new file mode 100644 index 000000000..9848e4822 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DOffset.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DOffset.h" + +int +DOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -840L && value <= 840L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DOffset_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-840..840) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DOffset = { + "DOffset", + "DOffset", + &asn_OP_NativeInteger, + asn_DEF_DOffset_tags_1, + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + asn_DEF_DOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DOffset_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c b/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c new file mode 100644 index 000000000..9e196cd6f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DSRCmsgID.h" + +int +DSRCmsgID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { + "DSRCmsgID", + "DSRCmsgID", + &asn_OP_NativeInteger, + asn_DEF_DSRCmsgID_tags_1, + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgID_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DSRCmsgID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DSRCmsgID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DSRCmsgID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DSecond.c b/src/tmx/Asn_J2735/src/2020/DSecond.c new file mode 100644 index 000000000..189aa3417 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DSecond.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DSecond.h" + +int +DSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DSecond_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSecond = { + "DSecond", + "DSecond", + &asn_OP_NativeInteger, + asn_DEF_DSecond_tags_1, + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + asn_DEF_DSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DSecond_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DSecond_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DSecond_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DTime.c b/src/tmx/Asn_J2735/src/2020/DTime.c new file mode 100644 index 000000000..ce927312a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DTime.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DTime.h" + +static asn_TYPE_member_t asn_MBR_DTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DTime, offset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DTime_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offset */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { + sizeof(struct DTime), + offsetof(struct DTime, _asn_ctx), + asn_MAP_DTime_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DTime_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DTime = { + "DTime", + "DTime", + &asn_OP_SEQUENCE, + asn_DEF_DTime_tags_1, + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + asn_DEF_DTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DTime_1, + 4, /* Elements count */ + &asn_SPC_DTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DYear.c b/src/tmx/Asn_J2735/src/2020/DYear.c new file mode 100644 index 000000000..7cb419da7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DYear.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DYear.h" + +int +DYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DYear_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DYear = { + "DYear", + "DYear", + &asn_OP_NativeInteger, + asn_DEF_DYear_tags_1, + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + asn_DEF_DYear_tags_1, /* Same as above */ + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DYear_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DYear_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DYear_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DYearMonth.c b/src/tmx/Asn_J2735/src/2020/DYearMonth.c new file mode 100644 index 000000000..34df843d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DYearMonth.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DYearMonth.h" + +static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, +}; +static const ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { + sizeof(struct DYearMonth), + offsetof(struct DYearMonth, _asn_ctx), + asn_MAP_DYearMonth_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DYearMonth = { + "DYearMonth", + "DYearMonth", + &asn_OP_SEQUENCE, + asn_DEF_DYearMonth_tags_1, + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + asn_DEF_DYearMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DYearMonth_1, + 2, /* Elements count */ + &asn_SPC_DYearMonth_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DataParameters.c b/src/tmx/Asn_J2735/src/2020/DataParameters.c new file mode 100644 index 000000000..ffaf9fc72 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DataParameters.c @@ -0,0 +1,330 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DataParameters.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int +memb_processMethod_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_processAgency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_lastCheckedDate_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_geoidUsed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_processMethod_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_processAgency_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_DataParameters_1[] = { + { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_processMethod_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_processMethod_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_processMethod_constraint_1 + }, + 0, 0, /* No default value */ + "processMethod" + }, + { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_processAgency_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_processAgency_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_processAgency_constraint_1 + }, + 0, 0, /* No default value */ + "processAgency" + }, + { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_lastCheckedDate_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_lastCheckedDate_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_lastCheckedDate_constraint_1 + }, + 0, 0, /* No default value */ + "lastCheckedDate" + }, + { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_geoidUsed_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_geoidUsed_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_geoidUsed_constraint_1 + }, + 0, 0, /* No default value */ + "geoidUsed" + }, +}; +static const int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { + sizeof(struct DataParameters), + offsetof(struct DataParameters, _asn_ctx), + asn_MAP_DataParameters_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DataParameters_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DataParameters = { + "DataParameters", + "DataParameters", + &asn_OP_SEQUENCE, + asn_DEF_DataParameters_tags_1, + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + asn_DEF_DataParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DataParameters_1, + 4, /* Elements count */ + &asn_SPC_DataParameters_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Day.c b/src/tmx/Asn_J2735/src/2020/Day.c new file mode 100644 index 000000000..7b2d4caca --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Day.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Day.h" + +int +Day_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Day_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Day_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Day_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Day = { + "Day", + "Day", + &asn_OP_NativeInteger, + asn_DEF_Day_tags_1, + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + asn_DEF_Day_tags_1, /* Same as above */ + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Day_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Day_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Day_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DayOfWeek.c b/src/tmx/Asn_J2735/src/2020/DayOfWeek.c new file mode 100644 index 000000000..0c4e0ee8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DayOfWeek.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DayOfWeek.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static const unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { + asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_NativeEnumerated, + asn_DEF_DayOfWeek_tags_1, + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DayOfWeek_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DayOfWeek_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DegreesLat.c b/src/tmx/Asn_J2735/src/2020/DegreesLat.c new file mode 100644 index 000000000..439eefd71 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DegreesLat.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DegreesLat.h" + +int +DegreesLat_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -90L && value <= 90L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DegreesLat_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-90..90) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLat = { + "DegreesLat", + "DegreesLat", + &asn_OP_NativeInteger, + asn_DEF_DegreesLat_tags_1, + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + asn_DEF_DegreesLat_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DegreesLat_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DegreesLat_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DegreesLat_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DegreesLong.c b/src/tmx/Asn_J2735/src/2020/DegreesLong.c new file mode 100644 index 000000000..2ca1802ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DegreesLong.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DegreesLong.h" + +int +DegreesLong_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180L && value <= 180L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DegreesLong_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLong = { + "DegreesLong", + "DegreesLong", + &asn_OP_NativeInteger, + asn_DEF_DegreesLong_tags_1, + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + asn_DEF_DegreesLong_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DegreesLong_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DegreesLong_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DegreesLong_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DeltaAngle.c b/src/tmx/Asn_J2735/src/2020/DeltaAngle.c new file mode 100644 index 000000000..e6de53b1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DeltaAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DeltaAngle.h" + +int +DeltaAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -150L && value <= 150L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-150..150) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { + "DeltaAngle", + "DeltaAngle", + &asn_OP_NativeInteger, + asn_DEF_DeltaAngle_tags_1, + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + asn_DEF_DeltaAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DeltaAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DeltaAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DeltaAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DeltaTime.c b/src/tmx/Asn_J2735/src/2020/DeltaTime.c new file mode 100644 index 000000000..fe9602188 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DeltaTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DeltaTime.h" + +int +DeltaTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -122L && value <= 121L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DeltaTime_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-122..121) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DeltaTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -122, 121 } /* (-122..121) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DeltaTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaTime = { + "DeltaTime", + "DeltaTime", + &asn_OP_NativeInteger, + asn_DEF_DeltaTime_tags_1, + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + asn_DEF_DeltaTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DeltaTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DeltaTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DeltaTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DescriptiveName.c b/src/tmx/Asn_J2735/src/2020/DescriptiveName.c new file mode 100644 index 000000000..7288aff8b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DescriptiveName.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DescriptiveName.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +DescriptiveName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 63UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { + "DescriptiveName", + "DescriptiveName", + &asn_OP_IA5String, + asn_DEF_DescriptiveName_tags_1, + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + asn_DEF_DescriptiveName_tags_1, /* Same as above */ + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DescriptiveName_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DescriptiveName_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DescriptiveName_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c b/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c new file mode 100644 index 000000000..e9f4313e6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DirectionOfUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 7, "forward" }, + { 2, 7, "reverse" }, + { 3, 4, "both" } +}; +static const unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { + 3, /* both(3) */ + 1, /* forward(1) */ + 2, /* reverse(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { + asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { + "DirectionOfUse", + "DirectionOfUse", + &asn_OP_NativeEnumerated, + asn_DEF_DirectionOfUse_tags_1, + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + asn_DEF_DirectionOfUse_tags_1, /* Same as above */ + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DirectionOfUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DirectionOfUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c b/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c new file mode 100644 index 000000000..aee0cdc98 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DisabledVehicle.h" + +static int +memb_statusDetails_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523L && value <= 541L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_statusDetails_constr_2 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_statusDetails_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_DisabledVehicle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DisabledVehicle, statusDetails), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_statusDetails_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_statusDetails_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_statusDetails_constraint_1 + }, + 0, 0, /* No default value */ + "statusDetails" + }, + { ATF_POINTER, 1, offsetof(struct DisabledVehicle, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "locationDetails" + }, +}; +static const int asn_MAP_DisabledVehicle_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_DisabledVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DisabledVehicle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusDetails */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* locationDetails */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1 = { + sizeof(struct DisabledVehicle), + offsetof(struct DisabledVehicle, _asn_ctx), + asn_MAP_DisabledVehicle_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_DisabledVehicle_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DisabledVehicle = { + "DisabledVehicle", + "DisabledVehicle", + &asn_OP_SEQUENCE, + asn_DEF_DisabledVehicle_tags_1, + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + asn_DEF_DisabledVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DisabledVehicle_1, + 2, /* Elements count */ + &asn_SPC_DisabledVehicle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DistanceUnits.c b/src/tmx/Asn_J2735/src/2020/DistanceUnits.c new file mode 100644 index 000000000..8882fdc6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DistanceUnits.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DistanceUnits.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DistanceUnits_value2enum_1[] = { + { 0, 10, "centimeter" }, + { 1, 5, "cm2-5" }, + { 2, 9, "decimeter" }, + { 3, 5, "meter" }, + { 4, 9, "kilometer" }, + { 5, 4, "foot" }, + { 6, 4, "yard" }, + { 7, 4, "mile" } +}; +static const unsigned int asn_MAP_DistanceUnits_enum2value_1[] = { + 0, /* centimeter(0) */ + 1, /* cm2-5(1) */ + 2, /* decimeter(2) */ + 5, /* foot(5) */ + 4, /* kilometer(4) */ + 3, /* meter(3) */ + 7, /* mile(7) */ + 6 /* yard(6) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1 = { + asn_MAP_DistanceUnits_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DistanceUnits_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DistanceUnits_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DistanceUnits = { + "DistanceUnits", + "DistanceUnits", + &asn_OP_NativeEnumerated, + asn_DEF_DistanceUnits_tags_1, + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + asn_DEF_DistanceUnits_tags_1, /* Same as above */ + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DistanceUnits_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DistanceUnits_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DistanceUnits_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c new file mode 100644 index 000000000..38fb19e2d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DriveAxleLiftAirPressure.h" + +int +DriveAxleLiftAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { + "DriveAxleLiftAirPressure", + "DriveAxleLiftAirPressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLiftAirPressure_tags_1, + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLiftAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLiftAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLiftAirPressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c new file mode 100644 index 000000000..2f98b25f3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DriveAxleLocation.h" + +int +DriveAxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { + "DriveAxleLocation", + "DriveAxleLocation", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLocation_tags_1, + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c new file mode 100644 index 000000000..ac23b3cdc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DriveAxleLubePressure.h" + +int +DriveAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { + "DriveAxleLubePressure", + "DriveAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLubePressure_tags_1, + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLubePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c new file mode 100644 index 000000000..84cdd7b85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DriveAxleTemperature.h" + +int +DriveAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40L && value <= 210L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { + "DriveAxleTemperature", + "DriveAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleTemperature_tags_1, + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c new file mode 100644 index 000000000..c709abc20 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DrivenLineOffsetLg.h" + +int +DrivenLineOffsetLg_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { + "DrivenLineOffsetLg", + "DrivenLineOffsetLg", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetLg_tags_1, + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivenLineOffsetLg_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivenLineOffsetLg_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivenLineOffsetLg_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c new file mode 100644 index 000000000..74462a8d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DrivenLineOffsetSm.h" + +int +DrivenLineOffsetSm_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2047L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2047..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { + "DrivenLineOffsetSm", + "DrivenLineOffsetSm", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetSm_tags_1, + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivenLineOffsetSm_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivenLineOffsetSm_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivenLineOffsetSm_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c new file mode 100644 index 000000000..467354d50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "DrivingWheelAngle.h" + +int +DrivingWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { + "DrivingWheelAngle", + "DrivingWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_DrivingWheelAngle_tags_1, + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivingWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivingWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivingWheelAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Duration.c b/src/tmx/Asn_J2735/src/2020/Duration.c new file mode 100644 index 000000000..c2f048916 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Duration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Duration.h" + +int +Duration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 3600L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Duration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..3600) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Duration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 3600 } /* (0..3600) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Duration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Duration = { + "Duration", + "Duration", + &asn_OP_NativeInteger, + asn_DEF_Duration_tags_1, + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + asn_DEF_Duration_tags_1, /* Same as above */ + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Duration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Duration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Duration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EXTERNAL.c b/src/tmx/Asn_J2735/src/2020/EXTERNAL.c new file mode 100644 index 000000000..775cdcb73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EXTERNAL.c @@ -0,0 +1,228 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EXTERNAL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_encoding_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_encoding_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_encoding_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.single_ASN1_type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ANY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "single-ASN1-type" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.octet_aligned), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "octet-aligned" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.arbitrary), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "arbitrary" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_encoding_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* arbitrary */ +}; +static asn_CHOICE_specifics_t asn_SPC_encoding_specs_5 = { + sizeof(struct EXTERNAL__encoding), + offsetof(struct EXTERNAL__encoding, _asn_ctx), + offsetof(struct EXTERNAL__encoding, present), + sizeof(((struct EXTERNAL__encoding *)0)->present), + asn_MAP_encoding_tag2el_5, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_encoding_5 = { + "encoding", + "encoding", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_encoding_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_encoding_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_encoding_5, + 3, /* Elements count */ + &asn_SPC_encoding_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_EXTERNAL_1[] = { + { ATF_POINTER, 3, offsetof(struct EXTERNAL, direct_reference), + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), + 0, + &asn_DEF_OBJECT_IDENTIFIER, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direct-reference" + }, + { ATF_POINTER, 2, offsetof(struct EXTERNAL, indirect_reference), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "indirect-reference" + }, + { ATF_POINTER, 1, offsetof(struct EXTERNAL, data_value_descriptor), + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), + 0, + &asn_DEF_ObjectDescriptor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data-value-descriptor" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL, encoding), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_encoding_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "encoding" + }, +}; +static const int asn_MAP_EXTERNAL_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_EXTERNAL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EXTERNAL_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* indirect-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), 0, 0, 0 }, /* direct-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), 2, 0, 0 }, /* data-value-descriptor */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 } /* arbitrary */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EXTERNAL_specs_1 = { + sizeof(struct EXTERNAL), + offsetof(struct EXTERNAL, _asn_ctx), + asn_MAP_EXTERNAL_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EXTERNAL_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EXTERNAL = { + "EXTERNAL", + "EXTERNAL", + &asn_OP_SEQUENCE, + asn_DEF_EXTERNAL_tags_1, + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]) - 1, /* 1 */ + asn_DEF_EXTERNAL_tags_1, /* Same as above */ + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EXTERNAL_1, + 4, /* Elements count */ + &asn_SPC_EXTERNAL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c b/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c new file mode 100644 index 000000000..112fef1e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ElevationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "elev-500-00" }, + { 2, 11, "elev-200-00" }, + { 3, 11, "elev-100-00" }, + { 4, 11, "elev-050-00" }, + { 5, 11, "elev-020-00" }, + { 6, 11, "elev-010-00" }, + { 7, 11, "elev-005-00" }, + { 8, 11, "elev-002-00" }, + { 9, 11, "elev-001-00" }, + { 10, 11, "elev-000-50" }, + { 11, 11, "elev-000-20" }, + { 12, 11, "elev-000-10" }, + { 13, 11, "elev-000-05" }, + { 14, 11, "elev-000-02" }, + { 15, 11, "elev-000-01" } +}; +static const unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { + 15, /* elev-000-01(15) */ + 14, /* elev-000-02(14) */ + 13, /* elev-000-05(13) */ + 12, /* elev-000-10(12) */ + 11, /* elev-000-20(11) */ + 10, /* elev-000-50(10) */ + 9, /* elev-001-00(9) */ + 8, /* elev-002-00(8) */ + 7, /* elev-005-00(7) */ + 6, /* elev-010-00(6) */ + 5, /* elev-020-00(5) */ + 4, /* elev-050-00(4) */ + 3, /* elev-100-00(3) */ + 2, /* elev-200-00(2) */ + 1, /* elev-500-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { + asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { + "ElevationConfidence", + "ElevationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ElevationConfidence_tags_1, + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ElevationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ElevationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ElevationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c b/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c new file mode 100644 index 000000000..7c7680397 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EmergencyDetails.h" + +#include "PrivilegedEvents.h" +asn_TYPE_member_t asn_MBR_EmergencyDetails_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sirenUse), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SirenInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sirenUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, lightsUse), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lightsUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, multi), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MultiVehicleResponse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "multi" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyDetails, events), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEvents, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyDetails, responseType), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseType" + }, +}; +static const int asn_MAP_EmergencyDetails_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sirenUse */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lightsUse */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* multi */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* responseType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1 = { + sizeof(struct EmergencyDetails), + offsetof(struct EmergencyDetails, _asn_ctx), + asn_MAP_EmergencyDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EmergencyDetails_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { + "EmergencyDetails", + "EmergencyDetails", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyDetails_tags_1, + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + asn_DEF_EmergencyDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EmergencyDetails_1, + 6, /* Elements count */ + &asn_SPC_EmergencyDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c new file mode 100644 index 000000000..1cf133c96 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c @@ -0,0 +1,353 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "EmergencyVehicleAlert" + * found in "J2735-EmergencyVehicleAlert.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EmergencyVehicleAlert.h" + +#include "EmergencyDetails.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_EmergencyVehicleAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct EmergencyVehicleAlert__regional), + offsetof(struct EmergencyVehicleAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rsaMsg" + }, + { ATF_POINTER, 8, offsetof(struct EmergencyVehicleAlert, responseType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseType" + }, + { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, details), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "details" + }, + { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, mass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, basicType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responderType), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10 }; +static const ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { + sizeof(struct EmergencyVehicleAlert), + offsetof(struct EmergencyVehicleAlert, _asn_ctx), + asn_MAP_EmergencyVehicleAlert_tag2el_1, + 11, /* Count of tags in the map */ + asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 11, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { + "EmergencyVehicleAlert", + "EmergencyVehicleAlert", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyVehicleAlert_tags_1, + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EmergencyVehicleAlert_1, + 11, /* Elements count */ + &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EmissionType.c b/src/tmx/Asn_J2735/src/2020/EmissionType.c new file mode 100644 index 000000000..0581da271 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EmissionType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EmissionType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EmissionType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EmissionType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { + { 0, 5, "typeA" }, + { 1, 5, "typeB" }, + { 2, 5, "typeC" }, + { 3, 5, "typeD" }, + { 4, 5, "typeE" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_EmissionType_enum2value_1[] = { + 0, /* typeA(0) */ + 1, /* typeB(1) */ + 2, /* typeC(2) */ + 3, /* typeD(3) */ + 4 /* typeE(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { + asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EmissionType = { + "EmissionType", + "EmissionType", + &asn_OP_NativeEnumerated, + asn_DEF_EmissionType_tags_1, + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + asn_DEF_EmissionType_tags_1, /* Same as above */ + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EmissionType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EmissionType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EmissionType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c b/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c new file mode 100644 index 000000000..e7f265b28 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EnabledLaneList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { + sizeof(struct EnabledLaneList), + offsetof(struct EnabledLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { + "EnabledLaneList", + "EnabledLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_EnabledLaneList_tags_1, + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + asn_DEF_EnabledLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EnabledLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EnabledLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_EnabledLaneList_1, + 1, /* Single element */ + &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c b/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c new file mode 100644 index 000000000..d375581f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EssMobileFriction.h" + +int +EssMobileFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 101L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..101) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { + "EssMobileFriction", + "EssMobileFriction", + &asn_OP_NativeInteger, + asn_DEF_EssMobileFriction_tags_1, + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + asn_DEF_EssMobileFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssMobileFriction_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssMobileFriction_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssMobileFriction_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c b/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c new file mode 100644 index 000000000..109e1b352 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EssPrecipRate.h" + +int +EssPrecipRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { + "EssPrecipRate", + "EssPrecipRate", + &asn_OP_NativeInteger, + asn_DEF_EssPrecipRate_tags_1, + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipRate_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssPrecipRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c new file mode 100644 index 000000000..685ff08a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EssPrecipSituation.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { + { 1, 5, "other" }, + { 2, 7, "unknown" }, + { 3, 15, "noPrecipitation" }, + { 4, 18, "unidentifiedSlight" }, + { 5, 20, "unidentifiedModerate" }, + { 6, 17, "unidentifiedHeavy" }, + { 7, 10, "snowSlight" }, + { 8, 12, "snowModerate" }, + { 9, 9, "snowHeavy" }, + { 10, 10, "rainSlight" }, + { 11, 12, "rainModerate" }, + { 12, 9, "rainHeavy" }, + { 13, 25, "frozenPrecipitationSlight" }, + { 14, 27, "frozenPrecipitationModerate" }, + { 15, 24, "frozenPrecipitationHeavy" } +}; +static const unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { + 14, /* frozenPrecipitationHeavy(15) */ + 13, /* frozenPrecipitationModerate(14) */ + 12, /* frozenPrecipitationSlight(13) */ + 2, /* noPrecipitation(3) */ + 0, /* other(1) */ + 11, /* rainHeavy(12) */ + 10, /* rainModerate(11) */ + 9, /* rainSlight(10) */ + 8, /* snowHeavy(9) */ + 7, /* snowModerate(8) */ + 6, /* snowSlight(7) */ + 5, /* unidentifiedHeavy(6) */ + 4, /* unidentifiedModerate(5) */ + 3, /* unidentifiedSlight(4) */ + 1 /* unknown(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { + asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ + 15, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { + "EssPrecipSituation", + "EssPrecipSituation", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipSituation_tags_1, + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipSituation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipSituation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c new file mode 100644 index 000000000..2f1fc7858 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EssPrecipYesNo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { + { 1, 6, "precip" }, + { 2, 8, "noPrecip" }, + { 3, 5, "error" } +}; +static const unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { + 2, /* error(3) */ + 1, /* noPrecip(2) */ + 0 /* precip(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { + asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { + "EssPrecipYesNo", + "EssPrecipYesNo", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipYesNo_tags_1, + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipYesNo_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipYesNo_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c new file mode 100644 index 000000000..e8de9242d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EssSolarRadiation.h" + +int +EssSolarRadiation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { + "EssSolarRadiation", + "EssSolarRadiation", + &asn_OP_NativeInteger, + asn_DEF_EssSolarRadiation_tags_1, + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssSolarRadiation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssSolarRadiation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssSolarRadiation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/EventDescription.c b/src/tmx/Asn_J2735/src/2020/EventDescription.c new file mode 100644 index 000000000..2359a5579 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/EventDescription.c @@ -0,0 +1,365 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "EventDescription.h" + +#include "RegionalExtension.h" +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_3 = { + sizeof(struct EventDescription__description), + offsetof(struct EventDescription__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_3 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_3, + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]) - 1, /* 1 */ + asn_DEF_description_tags_3, /* Same as above */ + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_description_3, + 1, /* Single element */ + &asn_SPC_description_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_EventDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct EventDescription__regional), + offsetof(struct EventDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventDescription, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 5, offsetof(struct EventDescription, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_description_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 4, offsetof(struct EventDescription, priority), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 3, offsetof(struct EventDescription, heading), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 2, offsetof(struct EventDescription, extent), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct EventDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EventDescription_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EventDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1 = { + sizeof(struct EventDescription), + offsetof(struct EventDescription, _asn_ctx), + asn_MAP_EventDescription_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EventDescription_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventDescription = { + "EventDescription", + "EventDescription", + &asn_OP_SEQUENCE, + asn_DEF_EventDescription_tags_1, + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + asn_DEF_EventDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EventDescription_1, + 6, /* Elements count */ + &asn_SPC_EventDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ExitService.c b/src/tmx/Asn_J2735/src/2020/ExitService.c new file mode 100644 index 000000000..1da97dcf8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ExitService.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ExitService.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ExitService_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ExitService_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ExitService__Member__item), + offsetof(struct ExitService__Member__item, _asn_ctx), + offsetof(struct ExitService__Member__item, present), + sizeof(((struct ExitService__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ExitService__Member), + offsetof(struct ExitService__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ExitService_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { + sizeof(struct ExitService), + offsetof(struct ExitService, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ExitService = { + "ExitService", + "ExitService", + &asn_OP_SEQUENCE_OF, + asn_DEF_ExitService_tags_1, + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + asn_DEF_ExitService_tags_1, /* Same as above */ + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ExitService_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ExitService_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ExitService_1, + 1, /* Single element */ + &asn_SPC_ExitService_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Extent.c b/src/tmx/Asn_J2735/src/2020/Extent.c new file mode 100644 index 000000000..9cbacf48e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Extent.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Extent.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Extent_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Extent_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { + { 0, 16, "useInstantlyOnly" }, + { 1, 13, "useFor3meters" }, + { 2, 14, "useFor10meters" }, + { 3, 14, "useFor50meters" }, + { 4, 15, "useFor100meters" }, + { 5, 15, "useFor500meters" }, + { 6, 16, "useFor1000meters" }, + { 7, 16, "useFor5000meters" }, + { 8, 17, "useFor10000meters" }, + { 9, 17, "useFor50000meters" }, + { 10, 18, "useFor100000meters" }, + { 11, 18, "useFor500000meters" }, + { 12, 19, "useFor1000000meters" }, + { 13, 19, "useFor5000000meters" }, + { 14, 20, "useFor10000000meters" }, + { 15, 7, "forever" } +}; +static const unsigned int asn_MAP_Extent_enum2value_1[] = { + 15, /* forever(15) */ + 14, /* useFor10000000meters(14) */ + 12, /* useFor1000000meters(12) */ + 10, /* useFor100000meters(10) */ + 8, /* useFor10000meters(8) */ + 6, /* useFor1000meters(6) */ + 4, /* useFor100meters(4) */ + 2, /* useFor10meters(2) */ + 1, /* useFor3meters(1) */ + 13, /* useFor5000000meters(13) */ + 11, /* useFor500000meters(11) */ + 9, /* useFor50000meters(9) */ + 7, /* useFor5000meters(7) */ + 5, /* useFor500meters(5) */ + 3, /* useFor50meters(3) */ + 0 /* useInstantlyOnly(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { + asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Extent = { + "Extent", + "Extent", + &asn_OP_NativeEnumerated, + asn_DEF_Extent_tags_1, + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + asn_DEF_Extent_tags_1, /* Same as above */ + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Extent_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Extent_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Extent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ExteriorLights.c b/src/tmx/Asn_J2735/src/2020/ExteriorLights.c new file mode 100644 index 000000000..00b597e11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ExteriorLights.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ExteriorLights.h" + +int +ExteriorLights_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { + "ExteriorLights", + "ExteriorLights", + &asn_OP_BIT_STRING, + asn_DEF_ExteriorLights_tags_1, + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + asn_DEF_ExteriorLights_tags_1, /* Same as above */ + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ExteriorLights_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ExteriorLights_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ExteriorLights_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/FuelType.c b/src/tmx/Asn_J2735/src/2020/FuelType.c new file mode 100644 index 000000000..4140c662c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/FuelType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "FuelType.h" + +int +FuelType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_FuelType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_FuelType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_FuelType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FuelType = { + "FuelType", + "FuelType", + &asn_OP_NativeInteger, + asn_DEF_FuelType_tags_1, + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + asn_DEF_FuelType_tags_1, /* Same as above */ + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_FuelType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_FuelType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + FuelType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/FullPositionVector.c b/src/tmx/Asn_J2735/src/2020/FullPositionVector.c new file mode 100644 index 000000000..c721c7205 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/FullPositionVector.c @@ -0,0 +1,235 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "FullPositionVector.h" + +#include "DDateTime.h" +#include "TransmissionAndSpeed.h" +#include "PositionalAccuracy.h" +#include "PositionConfidenceSet.h" +#include "SpeedandHeadingandThrottleConfidence.h" +asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { + { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "utcTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedConfidence" + }, +}; +static const int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { + sizeof(struct FullPositionVector), + offsetof(struct FullPositionVector, _asn_ctx), + asn_MAP_FullPositionVector_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_FullPositionVector_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { + "FullPositionVector", + "FullPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_FullPositionVector_tags_1, + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + asn_DEF_FullPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_FullPositionVector_1, + 10, /* Elements count */ + &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c b/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c new file mode 100644 index 000000000..c81907a32 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "FurtherInfoID.h" + +int +FurtherInfoID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { + "FurtherInfoID", + "FurtherInfoID", + &asn_OP_OCTET_STRING, + asn_DEF_FurtherInfoID_tags_1, + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + asn_DEF_FurtherInfoID_tags_1, /* Same as above */ + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_FurtherInfoID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_FurtherInfoID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + FurtherInfoID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GNSSstatus.c b/src/tmx/Asn_J2735/src/2020/GNSSstatus.c new file mode 100644 index 000000000..9a4e74626 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GNSSstatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GNSSstatus.h" + +int +GNSSstatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GNSSstatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GNSSstatus = { + "GNSSstatus", + "GNSSstatus", + &asn_OP_BIT_STRING, + asn_DEF_GNSSstatus_tags_1, + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + asn_DEF_GNSSstatus_tags_1, /* Same as above */ + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GNSSstatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GNSSstatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GNSSstatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GenericLane.c b/src/tmx/Asn_J2735/src/2020/GenericLane.c new file mode 100644 index 000000000..0bd8ab8c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GenericLane.c @@ -0,0 +1,336 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GenericLane.h" + +#include "ConnectsToList.h" +#include "OverlayLaneList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct GenericLane__regional), + offsetof(struct GenericLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneID" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ingressApproach" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "egressApproach" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneAttributes" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuvers" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectsToList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectsTo" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OverlayLaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "overlays" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { + sizeof(struct GenericLane), + offsetof(struct GenericLane, _asn_ctx), + asn_MAP_GenericLane_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_GenericLane_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericLane = { + "GenericLane", + "GenericLane", + &asn_OP_SEQUENCE, + asn_DEF_GenericLane_tags_1, + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + asn_DEF_GenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GenericLane_1, + 10, /* Elements count */ + &asn_SPC_GenericLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GenericLocations.c b/src/tmx/Asn_J2735/src/2020/GenericLocations.c new file mode 100644 index 000000000..fc5c21020 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GenericLocations.c @@ -0,0 +1,258 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GenericLocations.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GenericLocations_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GenericLocations_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 95 } /* (0..95,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_GenericLocations_value2enum_1[] = { + { 7937, 10, "on-bridges" }, + { 7938, 10, "in-tunnels" }, + { 7939, 27, "entering-or-leaving-tunnels" }, + { 7940, 8, "on-ramps" }, + { 7941, 25, "in-road-construction-area" }, + { 7942, 14, "around-a-curve" }, + { 7943, 14, "on-minor-roads" }, + { 7944, 21, "in-the-opposing-lanes" }, + { 7945, 19, "adjacent-to-roadway" }, + { 7946, 7, "on-bend" }, + { 7947, 19, "entire-intersection" }, + { 7948, 13, "in-the-median" }, + { 7949, 21, "moved-to-side-of-road" }, + { 7950, 17, "moved-to-shoulder" }, + { 7951, 14, "on-the-roadway" }, + { 7952, 15, "in-shaded-areas" }, + { 7953, 18, "in-low-lying-areas" }, + { 7954, 20, "in-the-downtown-area" }, + { 7955, 22, "in-the-inner-city-area" }, + { 7956, 8, "in-parts" }, + { 7957, 14, "in-some-places" }, + { 7958, 12, "in-the-ditch" }, + { 7959, 13, "in-the-valley" }, + { 7960, 11, "on-hill-top" }, + { 7961, 18, "near-the-foothills" }, + { 7962, 17, "at-high-altitudes" }, + { 7963, 13, "near-the-lake" }, + { 7964, 14, "near-the-shore" }, + { 7965, 24, "over-the-crest-of-a-hill" }, + { 7966, 25, "other-than-on-the-roadway" }, + { 7967, 14, "near-the-beach" }, + { 7968, 23, "near-beach-access-point" }, + { 7969, 11, "lower-level" }, + { 7970, 11, "upper-level" }, + { 7971, 7, "airport" }, + { 7972, 9, "concourse" }, + { 7973, 4, "gate" }, + { 7974, 13, "baggage-claim" }, + { 7975, 13, "customs-point" }, + { 7976, 7, "station" }, + { 7977, 8, "platform" }, + { 7978, 4, "dock" }, + { 7979, 5, "depot" }, + { 7980, 17, "ev-charging-point" }, + { 7981, 25, "information-welcome-point" }, + { 7982, 12, "at-rest-area" }, + { 7983, 15, "at-service-area" }, + { 7984, 16, "at-weigh-station" }, + { 7985, 12, "picnic-areas" }, + { 7986, 9, "rest-area" }, + { 7987, 16, "service-stations" }, + { 7988, 7, "toilets" }, + { 7989, 12, "on-the-right" }, + { 7990, 11, "on-the-left" }, + { 7991, 13, "in-the-center" }, + { 7992, 25, "in-the-opposite-direction" }, + { 7993, 13, "cross-traffic" }, + { 7994, 18, "northbound-traffic" }, + { 7995, 17, "eastbound-traffic" }, + { 7996, 18, "southbound-traffic" }, + { 7997, 17, "westbound-traffic" }, + { 7998, 5, "north" }, + { 7999, 5, "south" }, + { 8000, 4, "east" }, + { 8001, 4, "west" }, + { 8002, 9, "northeast" }, + { 8003, 9, "northwest" }, + { 8004, 9, "southeast" }, + { 8005, 9, "southwest" }, + { 8006, 13, "mountain-pass" }, + { 8007, 18, "reservation-center" }, + { 8008, 12, "nearby-basin" }, + { 8009, 9, "on-tracks" }, + { 8010, 3, "dip" }, + { 8011, 14, "traffic-circle" }, + { 8012, 17, "park-and-ride-lot" }, + { 8014, 2, "to" }, + { 8015, 2, "by" }, + { 8016, 7, "through" }, + { 8017, 7, "area-of" }, + { 8018, 5, "under" }, + { 8019, 4, "over" }, + { 8020, 4, "from" }, + { 8021, 11, "approaching" }, + { 8022, 11, "entering-at" }, + { 8023, 10, "exiting-at" }, + { 8024, 13, "across-tracks" }, + { 8025, 9, "in-street" }, + { 8026, 8, "on-curve" }, + { 8027, 8, "shoulder" }, + { 8028, 9, "crossover" }, + { 8029, 10, "cross-road" }, + { 8030, 9, "side-road" }, + { 8031, 8, "bus-stop" }, + { 8032, 12, "intersection" }, + { 8033, 13, "roadside-park" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_GenericLocations_enum2value_1[] = { + 86, /* across-tracks(8024) */ + 8, /* adjacent-to-roadway(7945) */ + 34, /* airport(7971) */ + 83, /* approaching(8021) */ + 79, /* area-of(8017) */ + 5, /* around-a-curve(7942) */ + 25, /* at-high-altitudes(7962) */ + 45, /* at-rest-area(7982) */ + 46, /* at-service-area(7983) */ + 47, /* at-weigh-station(7984) */ + 37, /* baggage-claim(7974) */ + 93, /* bus-stop(8031) */ + 77, /* by(8015) */ + 35, /* concourse(7972) */ + 91, /* cross-road(8029) */ + 56, /* cross-traffic(7993) */ + 90, /* crossover(8028) */ + 38, /* customs-point(7975) */ + 42, /* depot(7979) */ + 73, /* dip(8010) */ + 41, /* dock(7978) */ + 63, /* east(8000) */ + 58, /* eastbound-traffic(7995) */ + 84, /* entering-at(8022) */ + 2, /* entering-or-leaving-tunnels(7939) */ + 10, /* entire-intersection(7947) */ + 43, /* ev-charging-point(7980) */ + 85, /* exiting-at(8023) */ + 82, /* from(8020) */ + 36, /* gate(7973) */ + 16, /* in-low-lying-areas(7953) */ + 19, /* in-parts(7956) */ + 4, /* in-road-construction-area(7941) */ + 15, /* in-shaded-areas(7952) */ + 20, /* in-some-places(7957) */ + 87, /* in-street(8025) */ + 54, /* in-the-center(7991) */ + 21, /* in-the-ditch(7958) */ + 17, /* in-the-downtown-area(7954) */ + 18, /* in-the-inner-city-area(7955) */ + 11, /* in-the-median(7948) */ + 7, /* in-the-opposing-lanes(7944) */ + 55, /* in-the-opposite-direction(7992) */ + 22, /* in-the-valley(7959) */ + 1, /* in-tunnels(7938) */ + 44, /* information-welcome-point(7981) */ + 94, /* intersection(8032) */ + 32, /* lower-level(7969) */ + 69, /* mountain-pass(8006) */ + 13, /* moved-to-shoulder(7950) */ + 12, /* moved-to-side-of-road(7949) */ + 31, /* near-beach-access-point(7968) */ + 30, /* near-the-beach(7967) */ + 24, /* near-the-foothills(7961) */ + 26, /* near-the-lake(7963) */ + 27, /* near-the-shore(7964) */ + 71, /* nearby-basin(8008) */ + 61, /* north(7998) */ + 57, /* northbound-traffic(7994) */ + 65, /* northeast(8002) */ + 66, /* northwest(8003) */ + 9, /* on-bend(7946) */ + 0, /* on-bridges(7937) */ + 88, /* on-curve(8026) */ + 23, /* on-hill-top(7960) */ + 6, /* on-minor-roads(7943) */ + 3, /* on-ramps(7940) */ + 53, /* on-the-left(7990) */ + 52, /* on-the-right(7989) */ + 14, /* on-the-roadway(7951) */ + 72, /* on-tracks(8009) */ + 29, /* other-than-on-the-roadway(7966) */ + 81, /* over(8019) */ + 28, /* over-the-crest-of-a-hill(7965) */ + 75, /* park-and-ride-lot(8012) */ + 48, /* picnic-areas(7985) */ + 40, /* platform(7977) */ + 70, /* reservation-center(8007) */ + 49, /* rest-area(7986) */ + 95, /* roadside-park(8033) */ + 50, /* service-stations(7987) */ + 89, /* shoulder(8027) */ + 92, /* side-road(8030) */ + 62, /* south(7999) */ + 59, /* southbound-traffic(7996) */ + 67, /* southeast(8004) */ + 68, /* southwest(8005) */ + 39, /* station(7976) */ + 78, /* through(8016) */ + 76, /* to(8014) */ + 51, /* toilets(7988) */ + 74, /* traffic-circle(8011) */ + 80, /* under(8018) */ + 33, /* upper-level(7970) */ + 64, /* west(8001) */ + 60 /* westbound-traffic(7997) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1 = { + asn_MAP_GenericLocations_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_GenericLocations_enum2value_1, /* N => "tag"; sorted by N */ + 96, /* Number of elements in the maps */ + 97, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_GenericLocations_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GenericLocations = { + "GenericLocations", + "GenericLocations", + &asn_OP_NativeEnumerated, + asn_DEF_GenericLocations_tags_1, + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + asn_DEF_GenericLocations_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GenericLocations_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GenericLocations_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_GenericLocations_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GenericSignage.c b/src/tmx/Asn_J2735/src/2020/GenericSignage.c new file mode 100644 index 000000000..ee07419c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GenericSignage.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GenericSignage.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GenericSignage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct GenericSignage__Member__item), + offsetof(struct GenericSignage__Member__item, _asn_ctx), + offsetof(struct GenericSignage__Member__item, present), + sizeof(((struct GenericSignage__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct GenericSignage__Member), + offsetof(struct GenericSignage__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { + sizeof(struct GenericSignage), + offsetof(struct GenericSignage, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericSignage = { + "GenericSignage", + "GenericSignage", + &asn_OP_SEQUENCE_OF, + asn_DEF_GenericSignage_tags_1, + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + asn_DEF_GenericSignage_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GenericSignage_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GenericSignage_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_GenericSignage_1, + 1, /* Single element */ + &asn_SPC_GenericSignage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GeographicalPath.c b/src/tmx/Asn_J2735/src/2020/GeographicalPath.c new file mode 100644 index 000000000..214cc8182 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GeographicalPath.c @@ -0,0 +1,421 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GeographicalPath.h" + +#include "RoadSegmentReferenceID.h" +#include "Position3D.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_9 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.path), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetSystem, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "path" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.geometry), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GeometricProjection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "geometry" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.oldRegion), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ValidRegion, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "oldRegion" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_description_tag2el_9[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* geometry */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oldRegion */ +}; +static asn_CHOICE_specifics_t asn_SPC_description_specs_9 = { + sizeof(struct GeographicalPath__description), + offsetof(struct GeographicalPath__description, _asn_ctx), + offsetof(struct GeographicalPath__description, present), + sizeof(((struct GeographicalPath__description *)0)->present), + asn_MAP_description_tag2el_9, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_9 = { + "description", + "description", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_description_9, + 3, /* Elements count */ + &asn_SPC_description_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_14[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GeographicalPath, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_14 = { + sizeof(struct GeographicalPath__regional), + offsetof(struct GeographicalPath__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_14 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_14, + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]) - 1, /* 1 */ + asn_DEF_regional_tags_14, /* Same as above */ + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_14, + 1, /* Single element */ + &asn_SPC_regional_specs_14 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeographicalPath_1[] = { + { ATF_POINTER, 9, offsetof(struct GeographicalPath, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 8, offsetof(struct GeographicalPath, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 7, offsetof(struct GeographicalPath, anchor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 6, offsetof(struct GeographicalPath, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 5, offsetof(struct GeographicalPath, directionality), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_POINTER, 4, offsetof(struct GeographicalPath, closedPath), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "closedPath" + }, + { ATF_POINTER, 3, offsetof(struct GeographicalPath, direction), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeographicalPath, description), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_description_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct GeographicalPath, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeographicalPath_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_GeographicalPath_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeographicalPath_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closedPath */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1 = { + sizeof(struct GeographicalPath), + offsetof(struct GeographicalPath, _asn_ctx), + asn_MAP_GeographicalPath_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_GeographicalPath_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeographicalPath = { + "GeographicalPath", + "GeographicalPath", + &asn_OP_SEQUENCE, + asn_DEF_GeographicalPath_tags_1, + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + asn_DEF_GeographicalPath_tags_1, /* Same as above */ + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GeographicalPath_1, + 9, /* Elements count */ + &asn_SPC_GeographicalPath_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GeometricProjection.c b/src/tmx/Asn_J2735/src/2020/GeometricProjection.c new file mode 100644 index 000000000..23928ca81 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GeometricProjection.c @@ -0,0 +1,244 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GeometricProjection.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GeometricProjection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct GeometricProjection__regional), + offsetof(struct GeometricProjection__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeometricProjection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeometricProjection, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, circle), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeometricProjection_oms_1[] = { 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_GeometricProjection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeometricProjection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1 = { + sizeof(struct GeometricProjection), + offsetof(struct GeometricProjection, _asn_ctx), + asn_MAP_GeometricProjection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_GeometricProjection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeometricProjection = { + "GeometricProjection", + "GeometricProjection", + &asn_OP_SEQUENCE, + asn_DEF_GeometricProjection_tags_1, + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + asn_DEF_GeometricProjection_tags_1, /* Same as above */ + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GeometricProjection_1, + 5, /* Elements count */ + &asn_SPC_GeometricProjection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GraphicString.c b/src/tmx/Asn_J2735/src/2020/GraphicString.c new file mode 100644 index 000000000..b76118710 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GraphicString.c @@ -0,0 +1,91 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * GraphicString basic type description. + */ +static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_GraphicString = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, /* non-ascii string */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer, /* Can't expect it to be ASCII/UTF8 */ +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_GraphicString = { + "GraphicString", + "GraphicString", + &asn_OP_GraphicString, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]) - 1, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_unknown_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; diff --git a/src/tmx/Asn_J2735/src/2020/GrossDistance.c b/src/tmx/Asn_J2735/src/2020/GrossDistance.c new file mode 100644 index 000000000..09c1fcfeb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GrossDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GrossDistance.h" + +int +GrossDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GrossDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GrossDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GrossDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossDistance = { + "GrossDistance", + "GrossDistance", + &asn_OP_NativeInteger, + asn_DEF_GrossDistance_tags_1, + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + asn_DEF_GrossDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GrossDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GrossDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GrossDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/GrossSpeed.c b/src/tmx/Asn_J2735/src/2020/GrossSpeed.c new file mode 100644 index 000000000..b3a76a107 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/GrossSpeed.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "GrossSpeed.h" + +int +GrossSpeed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GrossSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossSpeed = { + "GrossSpeed", + "GrossSpeed", + &asn_OP_NativeInteger, + asn_DEF_GrossSpeed_tags_1, + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + asn_DEF_GrossSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GrossSpeed_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GrossSpeed_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GrossSpeed_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Header.c b/src/tmx/Asn_J2735/src/2020/Header.c new file mode 100644 index 000000000..3ff49d950 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Header.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Header.h" + +asn_TYPE_member_t asn_MBR_Header_1[] = { + { ATF_POINTER, 4, offsetof(struct Header, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 3, offsetof(struct Header, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct Header, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_POINTER, 1, offsetof(struct Header, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, +}; +static const int asn_MAP_Header_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Header_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Header_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* msgIssueRevision */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1 = { + sizeof(struct Header), + offsetof(struct Header, _asn_ctx), + asn_MAP_Header_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Header_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Header = { + "Header", + "Header", + &asn_OP_SEQUENCE, + asn_DEF_Header_tags_1, + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + asn_DEF_Header_tags_1, /* Same as above */ + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Header_1, + 4, /* Elements count */ + &asn_SPC_Header_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Heading.c b/src/tmx/Asn_J2735/src/2020/Heading.c new file mode 100644 index 000000000..c33f8cd44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Heading.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Heading.h" + +int +Heading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Heading_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Heading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Heading = { + "Heading", + "Heading", + &asn_OP_NativeInteger, + asn_DEF_Heading_tags_1, + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + asn_DEF_Heading_tags_1, /* Same as above */ + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Heading_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Heading_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Heading_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c b/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c new file mode 100644 index 000000000..e5f1ecff1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "HeadingConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec10deg" }, + { 2, 9, "prec05deg" }, + { 3, 9, "prec01deg" }, + { 4, 10, "prec0-1deg" }, + { 5, 11, "prec0-05deg" }, + { 6, 11, "prec0-01deg" }, + { 7, 13, "prec0-0125deg" } +}; +static const unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { + 7, /* prec0-0125deg(7) */ + 6, /* prec0-01deg(6) */ + 5, /* prec0-05deg(5) */ + 4, /* prec0-1deg(4) */ + 3, /* prec01deg(3) */ + 2, /* prec05deg(2) */ + 1, /* prec10deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { + asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { + "HeadingConfidence", + "HeadingConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_HeadingConfidence_tags_1, + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + asn_DEF_HeadingConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HeadingConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HeadingConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/HeadingSlice.c b/src/tmx/Asn_J2735/src/2020/HeadingSlice.c new file mode 100644 index 000000000..52489a8c7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/HeadingSlice.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "HeadingSlice.h" + +int +HeadingSlice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { + "HeadingSlice", + "HeadingSlice", + &asn_OP_BIT_STRING, + asn_DEF_HeadingSlice_tags_1, + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + asn_DEF_HeadingSlice_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HeadingSlice_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HeadingSlice_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + HeadingSlice_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Holiday.c b/src/tmx/Asn_J2735/src/2020/Holiday.c new file mode 100644 index 000000000..f750ffcbc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Holiday.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Holiday.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Holiday_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Holiday_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { + { 0, 7, "weekday" }, + { 1, 7, "holiday" } +}; +static const unsigned int asn_MAP_Holiday_enum2value_1[] = { + 1, /* holiday(1) */ + 0 /* weekday(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { + asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Holiday = { + "Holiday", + "Holiday", + &asn_OP_NativeEnumerated, + asn_DEF_Holiday_tags_1, + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + asn_DEF_Holiday_tags_1, /* Same as above */ + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Holiday_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Holiday_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Holiday_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Hour.c b/src/tmx/Asn_J2735/src/2020/Hour.c new file mode 100644 index 000000000..95645ea9c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Hour.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Hour.h" + +int +Hour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Hour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Hour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Hour = { + "Hour", + "Hour", + &asn_OP_NativeInteger, + asn_DEF_Hour_tags_1, + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + asn_DEF_Hour_tags_1, /* Same as above */ + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Hour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Hour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Hour_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c b/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c new file mode 100644 index 000000000..db3857d7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "HumanPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 6, "onFoot" }, + { 3, 10, "skateboard" }, + { 4, 17, "pushOrKickScooter" }, + { 5, 10, "wheelchair" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { + 2, /* onFoot(2) */ + 1, /* otherTypes(1) */ + 4, /* pushOrKickScooter(4) */ + 3, /* skateboard(3) */ + 0, /* unavailable(0) */ + 5 /* wheelchair(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { + asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { + "HumanPropelledType", + "HumanPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_HumanPropelledType_tags_1, + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + asn_DEF_HumanPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HumanPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HumanPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IA5String.c b/src/tmx/Asn_J2735/src/2020/IA5String.c new file mode 100644 index 000000000..876142d39 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IA5String.c @@ -0,0 +1,133 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * IA5String basic type description. + */ +static const ber_tlv_tag_t asn_DEF_IA5String_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_DEF_IA5String_per_constraints = { + { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ + 0, 0 +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_operation_t asn_OP_IA5String = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print_utf8, /* ASCII subset */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer_utf8, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_IA5String = { + "IA5String", + "IA5String", + &asn_OP_IA5String, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]) - 1, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_DEF_IA5String_per_constraints, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IA5String_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +IA5String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + + if(st && st->buf) { + uint8_t *buf = st->buf; + uint8_t *end = buf + st->size; + /* + * IA5String is generally equivalent to 7bit ASCII. + * ISO/ITU-T T.50, 1963. + */ + for(; buf < end; buf++) { + if(*buf > 0x7F) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value byte %ld out of range: " + "%d > 127 (%s:%d)", + td->name, + (long)((buf - st->buf) + 1), + *buf, + __FILE__, __LINE__); + return -1; + } + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER.c b/src/tmx/Asn_J2735/src/2020/INTEGER.c new file mode 100644 index 000000000..095063fef --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER.c @@ -0,0 +1,738 @@ +/* + * Copyright (c) 2003-2019 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * INTEGER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_INTEGER = { + INTEGER_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + INTEGER_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + INTEGER_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + ber_decode_primitive, + INTEGER_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + INTEGER_decode_xer, + INTEGER_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + INTEGER_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + INTEGER_decode_oer, /* OER decoder */ + INTEGER_encode_oer, /* Canonical OER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + INTEGER_decode_uper, /* Unaligned PER decoder */ + INTEGER_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + INTEGER_decode_aper, /* Aligned PER decoder */ + INTEGER_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + INTEGER_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ +0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_INTEGER = { + "INTEGER", + "INTEGER", + &asn_OP_INTEGER, + asn_DEF_INTEGER_tags, + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + asn_DEF_INTEGER_tags, /* Same as above */ + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * INTEGER specific human-readable output. + */ +ssize_t +INTEGER__dump(const asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; + uint8_t *buf = st->buf; + uint8_t *buf_end = st->buf + st->size; + intmax_t value; + ssize_t wrote = 0; + char *p; + int ret; + + if(specs && specs->field_unsigned) + ret = asn_INTEGER2umax(st, (uintmax_t *)&value); + else + ret = asn_INTEGER2imax(st, &value); + + /* Simple case: the integer size is small */ + if(ret == 0) { + const asn_INTEGER_enum_map_t *el; + el = (value >= 0 || !specs || !specs->field_unsigned) + ? INTEGER_map_value2enum(specs, value) : 0; + if(el) { + if(plainOrXER == 0) + return asn__format_to_callback(cb, app_key, + "%" ASN_PRIdMAX " (%s)", value, el->enum_name); + else + return asn__format_to_callback(cb, app_key, + "<%s/>", el->enum_name); + } else if(plainOrXER && specs && specs->strict_enumeration) { + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } else { + return asn__format_to_callback(cb, app_key, + (specs && specs->field_unsigned) + ? "%" ASN_PRIuMAX + : "%" ASN_PRIdMAX, + value); + } + } else if(plainOrXER && specs && specs->strict_enumeration) { + /* + * Here and earlier, we cannot encode the ENUMERATED values + * if there is no corresponding identifier. + */ + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } + + /* Output in the long xx:yy:zz... format */ + /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ + for(p = scratch; buf < buf_end; buf++) { + const char * const h2c = "0123456789ABCDEF"; + if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { + /* Flush buffer */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + wrote += p - scratch; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x3a; /* ":" */ + } + if(p != scratch) + p--; /* Remove the last ":" */ + + wrote += p - scratch; + return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; +} + +static int +INTEGER__compar_value2enum(const void *kp, const void *am) { + long a = *(const long *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + long b = el->nat_value; + if(a < b) return -1; + else if(a == b) return 0; + else return 1; +} + +const asn_INTEGER_enum_map_t * +INTEGER_map_value2enum(const asn_INTEGER_specifics_t *specs, long value) { + int count = specs ? specs->map_count : 0; + if(!count) return 0; + return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, + count, sizeof(specs->value2enum[0]), + INTEGER__compar_value2enum); +} + +static intmax_t +asn__integer_convert(const uint8_t *b, const uint8_t *end) { + uintmax_t value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (uintmax_t)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +int +asn_INTEGER2imax(const INTEGER_t *iptr, intmax_t *lptr) { + uint8_t *b, *end; + size_t size; + + /* Sanity checking */ + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + /* Cache the begin/end of the buffer */ + b = iptr->buf; /* Start of the INTEGER buffer */ + size = iptr->size; + end = b + size; /* Where to stop */ + + if(size > sizeof(intmax_t)) { + uint8_t *end1 = end - 1; + /* + * Slightly more advanced processing, + * able to process INTEGERs with >sizeof(intmax_t) bytes + * when the actual value is small, e.g. for intmax_t == int32_t + * (0x0000000000abcdef INTEGER would yield a fine 0x00abcdef int32_t) + */ + /* Skip out the insignificant leading bytes */ + for(; b < end1; b++) { + switch(*b) { + case 0x00: if((b[1] & 0x80) == 0) continue; break; + case 0xff: if((b[1] & 0x80) != 0) continue; break; + } + break; + } + + size = end - b; + if(size > sizeof(intmax_t)) { + /* Still cannot fit the sizeof(intmax_t) */ + errno = ERANGE; + return -1; + } + } + + /* Shortcut processing of a corner case */ + if(end == b) { + *lptr = 0; + return 0; + } + + *lptr = asn__integer_convert(b, end); + return 0; +} + +/* FIXME: negative INTEGER values are silently interpreted as large unsigned ones. */ +int +asn_INTEGER2umax(const INTEGER_t *iptr, uintmax_t *lptr) { + uint8_t *b, *end; + uintmax_t value; + size_t size; + + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + b = iptr->buf; + size = iptr->size; + end = b + size; + + /* If all extra leading bytes are zeroes, ignore them */ + for(; size > sizeof(value); b++, size--) { + if(*b) { + /* Value won't fit into uintmax_t */ + errno = ERANGE; + return -1; + } + } + + /* Conversion engine */ + for(value = 0; b < end; b++) + value = (value << 8) | *b; + + *lptr = value; + return 0; +} + +int +asn_umax2INTEGER(INTEGER_t *st, uintmax_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= ((~(uintmax_t)0) >> 1)) { + return asn_imax2INTEGER(st, value); + } + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; /* INTEGERs are signed. 0-byte indicates positive. */ + for(b = buf + 1, shr = (sizeof(value) - 1) * 8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_imax2INTEGER(INTEGER_t *st, intmax_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)(long *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +int +asn_INTEGER2long(const INTEGER_t *iptr, long *l) { + intmax_t v; + if(asn_INTEGER2imax(iptr, &v) == 0) { + if(v < LONG_MIN || v > LONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *l) { + uintmax_t v; + if(asn_INTEGER2umax(iptr, &v) == 0) { + if(v > ULONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_long2INTEGER(INTEGER_t *st, long value) { + return asn_imax2INTEGER(st, value); +} + +int +asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { + return asn_imax2INTEGER(st, value); +} + + +int +asn_uint642INTEGER(INTEGER_t *st, uint64_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= INT64_MAX) + return asn_int642INTEGER(st, value); + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; + for(b = buf + 1, shr = (sizeof(value)-1)*8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_int642INTEGER(INTEGER_t *st, int64_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtol/strtoimax(3). + */ +enum asn_strtox_result_e +asn_strtoimax_lim(const char *str, const char **end, intmax_t *intp) { + int sign = 1; + intmax_t value; + + const intmax_t asn1_intmax_max = ((~(uintmax_t)0) >> 1); + const intmax_t upper_boundary = asn1_intmax_max / 10; + intmax_t last_digit_max = asn1_intmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + last_digit_max++; + sign = -1; + /* FALL THROUGH */ + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + if(sign > 0) { + value = value * 10 + d; + } else { + sign = 1; + value = -value * 10 - d; + } + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *intp = sign * value; + return ASN_STRTOX_OK; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtoul/strtoumax(3). + */ +enum asn_strtox_result_e +asn_strtoumax_lim(const char *str, const char **end, uintmax_t *uintp) { + uintmax_t value; + + const uintmax_t asn1_uintmax_max = ((~(uintmax_t)0)); + const uintmax_t upper_boundary = asn1_uintmax_max / 10; + uintmax_t last_digit_max = asn1_uintmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + return ASN_STRTOX_ERROR_INVAL; + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + unsigned int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + value = value * 10 + d; + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *uintp = value; + return ASN_STRTOX_OK; +} + +enum asn_strtox_result_e +asn_strtol_lim(const char *str, const char **end, long *lp) { + intmax_t value; + switch(asn_strtoimax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +enum asn_strtox_result_e +asn_strtoul_lim(const char *str, const char **end, unsigned long *ulp) { + uintmax_t value; + switch(asn_strtoumax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +int +INTEGER_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const INTEGER_t *a = aptr; + const INTEGER_t *b = bptr; + + (void)td; + + if(a && b) { + if(a->size && b->size) { + int sign_a = (a->buf[0] & 0x80) ? -1 : 1; + int sign_b = (b->buf[0] & 0x80) ? -1 : 1; + + if(sign_a < sign_b) return -1; + if(sign_a > sign_b) return 1; + + /* The shortest integer wins, unless comparing negatives */ + if(a->size < b->size) { + return -1 * sign_a; + } else if(a->size > b->size) { + return 1 * sign_b; + } + + return sign_a * memcmp(a->buf, b->buf, a->size); + } else if(a->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (1) * sign; + } else if(b->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (-1) * sign; + } else { + return 0; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c b/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c new file mode 100644 index 000000000..fc88268ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c @@ -0,0 +1,308 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #10.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if (ct->range_bits > 16) { + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + int length = 0, i; + long value = 0; + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + ASN_DEBUG("Can encode %d (%d bytes) in %d bits", ct->range_bits, + max_range_bytes, i); + + if ((length = per_get_few_bits(pd, i)) < 0) + ASN__DECODE_FAILED; + + /* X.691 #12.2.6 length determinant + lb (1) */ + length += 1; + ASN_DEBUG("Got length %d", length); + if (aper_get_align(pd) != 0) + ASN__DECODE_FAILED; + while (length--) { + int buf = per_get_few_bits(pd, 8); + if (buf < 0) + ASN__DECODE_FAILED; + value += (((long)buf) << (8 * length)); + } + + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_uint642INTEGER(st, (unsigned long)value) + : asn_int642INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %lld", + value, (long long int)ct->lower_bound); + } else { + long value = 0; + if (ct->range_bits < 8) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else if (ct->range_bits == 8) { + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else { + /* Align */ + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, 16); + if(value < 0) ASN__DECODE_STARVED; + } + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_ulong2INTEGER(st, value) + : asn_long2INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %lld", + value, (long long int)ct->lower_bound); + } + return rval; + } else { + ASN__DECODE_FAILED; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len; + void *p; + int ret; + + /* Get the PER length */ + len = aper_get_length(pd, -1, -1, -1, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetics. + */ + long value; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_long2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + long value = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + unsigned long uval; + if(asn_INTEGER2ulong(st, &uval)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(uval < (unsigned long)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(uval < (unsigned long)ct->lower_bound + || uval > (unsigned long)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", + uval, st->buf[0], st->size, + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + inext ? "ext" : "fix"); + value = uval; + } else { + if(asn_INTEGER2long(st, &value)) ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value < ct->lower_bound + || value > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", + value, st->buf[0], st->size, + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->range_bits >= 0) { + unsigned long v; + + /* #10.5.6 */ + ASN_DEBUG("Encoding integer %ld (%lld) with range %d bits", + value, (long long int)(value - ct->lower_bound), + ct->range_bits); + + v = value - ct->lower_bound; + + /* #12 <= 8 -> alignment ? */ + int range = ct->upper_bound - ct->lower_bound + 1; + if (ct->range_bits < 8 || (ct->range_bits == 8 && range < 256)) { + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits == 8) { + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits <= 16) { + /* Consume the bytes to align on octet */ + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x0000 | v, 16)) + ASN__ENCODE_FAILED; + } else { + /* TODO: extend to >64 bits */ + int64_t v64 = v; + int i, j; + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + + for (j = sizeof(int64_t) -1; j != 0; j--) { + int64_t val; + val = v64 >> (j * 8); + if (val != 0) + break; + } + + /* Putting length in the minimum number of bits ex: 5 = 3bits */ + if (per_put_few_bits(po, j, i)) + ASN__ENCODE_FAILED; + + /* Consume the bits to align on octet */ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + /* Put the value */ + for (i = 0; i <= j; i++) { + if(per_put_few_bits(po, (v64 >> (8 * (j - i))) & 0xff, 8)) + ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %lld", (long long int)ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = aper_put_length(po, -1, -1, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c b/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c new file mode 100644 index 000000000..57bfe1e1e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Encode INTEGER type using DER. + */ +asn_enc_rval_t +INTEGER_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t rval; + INTEGER_t effective_integer; + + ASN_DEBUG("%s %s as INTEGER (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + /* + * Canonicalize integer in the buffer. + * (Remove too long sign extension, remove some first 0x00 bytes) + */ + if(st->buf) { + uint8_t *buf = st->buf; + uint8_t *end1 = buf + st->size - 1; + int shift; + + /* Compute the number of superfluous leading bytes */ + for(; buf < end1; buf++) { + /* + * If the contents octets of an integer value encoding + * consist of more than one octet, then the bits of the + * first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + switch(*buf) { + case 0x00: + if((buf[1] & 0x80) == 0) continue; + break; + case 0xff: + if((buf[1] & 0x80)) continue; + break; + } + break; + } + + /* Remove leading superfluous bytes from the integer */ + shift = buf - st->buf; + if(shift) { + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + unconst.c_buf = st->buf; + effective_integer.buf = unconst.nc_buf + shift; + effective_integer.size = st->size - shift; + + st = &effective_integer; + } + } + + rval = der_encode_primitive(td, st, tag_mode, tag, cb, app_key); + if(rval.structure_ptr == &effective_integer) { + rval.structure_ptr = sptr; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c new file mode 100644 index 000000000..23d7c1285 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +INTEGER_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = INTEGER__dump(td, st, cb, app_key, 1); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c new file mode 100644 index 000000000..19f276d54 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + INTEGER_t *st = (INTEGER_t *)*sptr; + struct asn_oer_constraint_number_s ct = {0, 0}; + size_t req_bytes; + + (void)opt_codec_ctx; + (void)specs; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + if(ct.width) { + req_bytes = ct.width; + } else { + /* No lower bound and no upper bound, effectively */ + + ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes); + if(consumed == 0) { + ASN__DECODE_STARVED; + } else if(consumed == -1) { + ASN__DECODE_FAILED; + } + rval.consumed += consumed; + ptr = (const char *)ptr + consumed; + size -= consumed; + } + + if(req_bytes > size) { + ASN__DECODE_STARVED; + } + + if(ct.positive) { + /* X.969 08/2015 10.2(a) */ + unsigned msb; /* Most significant bit */ + size_t useful_size; + + /* Check most significant bit */ + msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */ + useful_size = msb + req_bytes; + st->buf = (uint8_t *)MALLOC(useful_size + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + /* + * Record a large unsigned in a way not to confuse it + * with signed value. + */ + st->buf[0] = '\0'; + memcpy(st->buf + msb, ptr, req_bytes); + st->buf[useful_size] = '\0'; /* Just in case, 0-terminate */ + st->size = useful_size; + + rval.consumed += req_bytes; + return rval; + } else { + /* X.969 08/2015 10.2(b) */ + st->buf = (uint8_t *)MALLOC(req_bytes + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + memcpy(st->buf, ptr, req_bytes); + st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */ + st->size = req_bytes; + + rval.consumed += req_bytes; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +INTEGER_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = sptr; + asn_enc_rval_t er = {0,0,0}; + struct asn_oer_constraint_number_s ct = {0, 0}; + const uint8_t *buf; + const uint8_t *end; + size_t useful_bytes; + size_t req_bytes = 0; + int sign = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size; + + sign = (buf && buf < end) ? buf[0] & 0x80 : 0; + + /* Ignore 9 leading zeroes or ones */ + if(ct.positive) { + if(sign) { + /* The value given is a signed value. Can't proceed. */ + ASN__ENCODE_FAILED; + } + /* Remove leading zeros. */ + for(; buf + 1 < end; buf++) { + if(buf[0] != 0x0) break; + } + } else { + for(; buf + 1 < end; buf++) { + if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) { + continue; + } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) { + continue; + } + break; + } + } + + useful_bytes = end - buf; + if(ct.width) { + req_bytes = ct.width; + } else { + ssize_t r = oer_serialize_length(useful_bytes, cb, app_key); + if(r < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += r; + req_bytes = useful_bytes; + } + + if(req_bytes < useful_bytes) { + ASN__ENCODE_FAILED; + } + + er.encoded += req_bytes; + + for(; req_bytes > useful_bytes; req_bytes--) { + if(cb(sign?"\xff":"\0", 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + if(cb(buf, useful_bytes, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_print.c b/src/tmx/Asn_J2735/src/2020/INTEGER_print.c new file mode 100644 index 000000000..2d37dee01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_print.c @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * INTEGER specific human-readable output. + */ +int +INTEGER_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + ssize_t ret; + + (void)ilevel; + + if(!st || !st->buf) + ret = cb("", 8, app_key); + else + ret = INTEGER__dump(td, st, cb, app_key, 0); + + return (ret < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c b/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c new file mode 100644 index 000000000..fab002385 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +INTEGER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + INTEGER_t *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (INTEGER_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const asn_per_constraints_t *ct; + + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + } + + if(asn_imax2INTEGER(st, value)) { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } else { + *sptr = st; + result_ok.length = st->size; + return result_ok; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c b/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c new file mode 100644 index 000000000..ed65385fe --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691-2008/11, #13.2.2, constrained whole number */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #11.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if((size_t)ct->range_bits > 8 * sizeof(uintmax_t)) + ASN__DECODE_FAILED; + + if(specs && specs->field_unsigned) { + uintmax_t uvalue = 0; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + uvalue += ct->lower_bound; + if(asn_umax2INTEGER(st, uvalue)) + ASN__DECODE_FAILED; + } else { + uintmax_t uvalue = 0; + intmax_t svalue; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + if(per_imax_range_unrebase(uvalue, ct->lower_bound, + ct->upper_bound, &svalue) + || asn_imax2INTEGER(st, svalue)) { + ASN__DECODE_FAILED; + } + } + return rval; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len = 0; + void *p = NULL; + int ret = 0; + + /* Get the PER length */ + len = uper_get_length(pd, -1, 0, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetic. + */ + long value = 0; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_imax2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + union { + intmax_t s; + uintmax_t u; + } value; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + if(asn_INTEGER2umax(st, &value.u)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value.u < (uintmax_t)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value.u < (uintmax_t)ct->lower_bound + || value.u > (uintmax_t)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%" ASN_PRI_SIZE ") lb %lu ub %lu %s", + value.u, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } else { + if(asn_INTEGER2imax(st, &value.s)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value.s < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value.s < ct->lower_bound + || value.s > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %ld (%02x/%" ASN_PRI_SIZE ") lb %ld ub %ld %s", + value.s, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + /* X.691-11/2008, #13.2.2, test if constrained whole number */ + if(ct && ct->range_bits >= 0) { + uintmax_t v; + /* #11.5.6 -> #11.3 */ + if(specs && specs->field_unsigned) { + if(((uintmax_t)ct->lower_bound > (uintmax_t)(ct->upper_bound) + || (value.u < (uintmax_t)ct->lower_bound)) + || (value.u > (uintmax_t)ct->upper_bound)) { + ASN_DEBUG("Value %lu to-be-encoded is outside the bounds [%lu, %lu]!", + value.u, ct->lower_bound, ct->upper_bound); + ASN__ENCODE_FAILED; + } + v = value.u - (uintmax_t)ct->lower_bound; + } else { + if(per_imax_range_rebase(value.s, ct->lower_bound, ct->upper_bound, &v)) { + ASN__ENCODE_FAILED; + } + } + ASN_DEBUG("Encoding integer %lu with range %d bits", + v, ct->range_bits); + if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = uper_put_length(po, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && uper_put_length(po, 0, 0)) ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c new file mode 100644 index 000000000..4f21c86a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c @@ -0,0 +1,351 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +struct e2v_key { + const char *start; + const char *stop; + const asn_INTEGER_enum_map_t *vemap; + const unsigned int *evmap; +}; +static int +INTEGER__compar_enum2value(const void *kp, const void *am) { + const struct e2v_key *key = (const struct e2v_key *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + const char *ptr, *end, *name; + + /* Remap the element (sort by different criterion) */ + el = key->vemap + key->evmap[el - key->vemap]; + + /* Compare strings */ + for(ptr = key->start, end = key->stop, name = el->enum_name; + ptr < end; ptr++, name++) { + if(*ptr != *name || !*name) + return *(const unsigned char *)ptr - *(const unsigned char *)name; + } + return name[0] ? -1 : 0; +} + +static const asn_INTEGER_enum_map_t * +INTEGER_map_enum2value(const asn_INTEGER_specifics_t *specs, const char *lstart, + const char *lstop) { + const asn_INTEGER_enum_map_t *el_found; + int count = specs ? specs->map_count : 0; + struct e2v_key key; + const char *lp; + + if(!count) return NULL; + + /* Guaranteed: assert(lstart < lstop); */ + /* Figure out the tag name */ + for(lstart++, lp = lstart; lp < lstop; lp++) { + switch(*lp) { + case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ + case 0x2f: /* '/' */ case 0x3e: /* '>' */ + break; + default: + continue; + } + break; + } + if(lp == lstop) return NULL; /* No tag found */ + lstop = lp; + + key.start = lstart; + key.stop = lstop; + key.vemap = specs->value2enum; + key.evmap = specs->enum2value; + el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, + specs->value2enum, count, sizeof(specs->value2enum[0]), + INTEGER__compar_enum2value); + if(el_found) { + /* Remap enum2value into value2enum */ + el_found = key.vemap + key.evmap[el_found - key.vemap]; + } + return el_found; +} + +static int +INTEGER_st_prealloc(INTEGER_t *st, int min_size) { + void *p = MALLOC(min_size + 1); + if(p) { + void *b = st->buf; + st->size = 0; + st->buf = p; + FREEMEM(b); + return 0; + } else { + return -1; + } +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +INTEGER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t *st = (INTEGER_t *)sptr; + intmax_t dec_value; + intmax_t hex_value = 0; + const char *lp; + const char *lstart = (const char *)chunk_buf; + const char *lstop = lstart + chunk_size; + enum { + ST_LEADSPACE, + ST_SKIPSPHEX, + ST_WAITDIGITS, + ST_DIGITS, + ST_DIGITS_TRAILSPACE, + ST_HEXDIGIT1, + ST_HEXDIGIT2, + ST_HEXDIGITS_TRAILSPACE, + ST_HEXCOLON, + ST_END_ENUM, + ST_UNEXPECTED + } state = ST_LEADSPACE; + const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ + const char *dec_value_end = 0; + + if(chunk_size) + ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", + (long)chunk_size, *lstart, lstop[-1]); + + if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) + return XPBD_SYSTEM_FAILURE; + + /* + * We may have received a tag here. It will be processed inline. + * Use strtoul()-like code and serialize the result. + */ + for(lp = lstart; lp < lstop; lp++) { + int lv = *lp; + switch(lv) { + case 0x09: case 0x0a: case 0x0d: case 0x20: + switch(state) { + case ST_LEADSPACE: + case ST_DIGITS_TRAILSPACE: + case ST_HEXDIGITS_TRAILSPACE: + case ST_SKIPSPHEX: + continue; + case ST_DIGITS: + dec_value_end = lp; + state = ST_DIGITS_TRAILSPACE; + continue; + case ST_HEXCOLON: + state = ST_HEXDIGITS_TRAILSPACE; + continue; + default: + break; + } + break; + case 0x2d: /* '-' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x2b: /* '+' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: + switch(state) { + case ST_DIGITS: continue; + case ST_SKIPSPHEX: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = (lv - 0x30) << 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += (lv - 0x30); + state = ST_HEXCOLON; + st->buf[st->size++] = (uint8_t)hex_value; + continue; + case ST_HEXCOLON: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + dec_value = 0; + dec_value_start = lp; + /* FALL THROUGH */ + case ST_WAITDIGITS: + state = ST_DIGITS; + continue; + default: + break; + } + break; + case 0x3c: /* '<', start of XML encoded enumeration */ + if(state == ST_LEADSPACE) { + const asn_INTEGER_enum_map_t *el; + el = INTEGER_map_enum2value( + (const asn_INTEGER_specifics_t *) + td->specifics, lstart, lstop); + if(el) { + ASN_DEBUG("Found \"%s\" => %ld", + el->enum_name, el->nat_value); + dec_value = el->nat_value; + state = ST_END_ENUM; + lp = lstop - 1; + continue; + } + ASN_DEBUG("Unknown identifier for INTEGER"); + } + return XPBD_BROKEN_ENCODING; + case 0x3a: /* ':' */ + if(state == ST_HEXCOLON) { + /* This colon is expected */ + state = ST_HEXDIGIT1; + continue; + } else if(state == ST_DIGITS) { + /* The colon here means that we have + * decoded the first two hexadecimal + * places as a decimal value. + * Switch decoding mode. */ + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + } else { + ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); + break; + } + /* [A-Fa-f] */ + case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: + case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: + switch(state) { + case ST_SKIPSPHEX: + case ST_LEADSPACE: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + hex_value <<= 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + st->buf[st->size++] = (uint8_t)hex_value; + state = ST_HEXCOLON; + continue; + case ST_DIGITS: + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + default: + break; + } + break; + } + + /* Found extra non-numeric stuff */ + ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", + lv, (long)(lp - lstart)); + state = ST_UNEXPECTED; + break; + } + + switch(state) { + case ST_END_ENUM: + /* Got a complete and valid enumeration encoded as a tag. */ + break; + case ST_DIGITS: + dec_value_end = lstop; + /* FALL THROUGH */ + case ST_DIGITS_TRAILSPACE: + /* The last symbol encountered was a digit. */ + switch(asn_strtoimax_lim(dec_value_start, &dec_value_end, &dec_value)) { + case ASN_STRTOX_OK: + if(specs && specs->field_unsigned && (uintmax_t) dec_value <= ULONG_MAX) { + break; + } else if(dec_value >= LONG_MIN && dec_value <= LONG_MAX) { + break; + } else { + /* + * We model INTEGER on long for XER, + * to avoid rewriting all the tests at once. + */ + ASN_DEBUG("INTEGER exceeds long range"); + } + /* Fall through */ + case ASN_STRTOX_ERROR_RANGE: + ASN_DEBUG("INTEGER decode %s hit range limit", td->name); + return XPBD_DECODER_LIMIT; + case ASN_STRTOX_ERROR_INVAL: + case ASN_STRTOX_EXPECT_MORE: + case ASN_STRTOX_EXTRA_DATA: + return XPBD_BROKEN_ENCODING; + } + break; + case ST_HEXCOLON: + case ST_HEXDIGITS_TRAILSPACE: + st->buf[st->size] = 0; /* Just in case termination */ + return XPBD_BODY_CONSUMED; + case ST_HEXDIGIT1: + case ST_HEXDIGIT2: + case ST_SKIPSPHEX: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + /* Content not found */ + return XPBD_NOT_BODY_IGNORE; + case ST_WAITDIGITS: + case ST_UNEXPECTED: + ASN_DEBUG("INTEGER: No useful digits (state %d)", state); + return XPBD_BROKEN_ENCODING; /* No digits */ + } + + /* + * Convert the result of parsing of enumeration or a straight + * decimal value into a BER representation. + */ + if(asn_imax2INTEGER(st, dec_value)) { + ASN_DEBUG("INTEGER decode %s conversion failed", td->name); + return XPBD_SYSTEM_FAILURE; + } + + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +INTEGER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(INTEGER_t), opt_mname, + buf_ptr, size, INTEGER__xer_body_decode); +} + +asn_enc_rval_t +INTEGER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = INTEGER__dump(td, st, cb, app_key, 1); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/ITIScodes.c b/src/tmx/Asn_J2735/src/2020/ITIScodes.c new file mode 100644 index 000000000..2c2df3961 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ITIScodes.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ITIScodes.h" + +int +ITIScodes_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIScodes_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodes = { + "ITIScodes", + "ITIScodes", + &asn_OP_NativeInteger, + asn_DEF_ITIScodes_tags_1, + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + asn_DEF_ITIScodes_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIScodes_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIScodes_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIScodes_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c new file mode 100644 index 000000000..42bd10ff6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ITIScodesAndText.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..100)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStext, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ITIScodesAndText__Member__item), + offsetof(struct ITIScodesAndText__Member__item, _asn_ctx), + offsetof(struct ITIScodesAndText__Member__item, present), + sizeof(((struct ITIScodesAndText__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ITIScodesAndText__Member), + offsetof(struct ITIScodesAndText__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { + sizeof(struct ITIScodesAndText), + offsetof(struct ITIScodesAndText, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { + "ITIScodesAndText", + "ITIScodesAndText", + &asn_OP_SEQUENCE_OF, + asn_DEF_ITIScodesAndText_tags_1, + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIScodesAndText_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIScodesAndText_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ITIScodesAndText_1, + 1, /* Single element */ + &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ITIStext.c b/src/tmx/Asn_J2735/src/2020/ITIStext.c new file mode 100644 index 000000000..4f2e6c29e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ITIStext.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ITIStext.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +ITIStext_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 500UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIStext_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..500)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIStext_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStext = { + "ITIStext", + "ITIStext", + &asn_OP_IA5String, + asn_DEF_ITIStext_tags_1, + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + asn_DEF_ITIStext_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIStext_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIStext_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIStext_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c b/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c new file mode 100644 index 000000000..a50f148ec --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ITIStextPhrase.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +ITIStextPhrase_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 16UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIStextPhrase_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase = { + "ITIStextPhrase", + "ITIStextPhrase", + &asn_OP_IA5String, + asn_DEF_ITIStextPhrase_tags_1, + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + asn_DEF_ITIStextPhrase_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIStextPhrase_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIStextPhrase_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIStextPhrase_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c new file mode 100644 index 000000000..5ea878799 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c @@ -0,0 +1,210 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IncidentResponseEquipment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { + { 9985, 23, "ground-fire-suppression" }, + { 9986, 22, "heavy-ground-equipment" }, + { 9988, 8, "aircraft" }, + { 9989, 16, "marine-equipment" }, + { 9990, 17, "support-equipment" }, + { 9991, 19, "medical-rescue-unit" }, + { 9993, 5, "other" }, + { 9994, 29, "ground-fire-suppression-other" }, + { 9995, 6, "engine" }, + { 9996, 15, "truck-or-aerial" }, + { 9997, 5, "quint" }, + { 9998, 25, "tanker-pumper-combination" }, + { 10000, 11, "brush-truck" }, + { 10001, 28, "aircraft-rescue-firefighting" }, + { 10004, 28, "heavy-ground-equipment-other" }, + { 10005, 13, "dozer-or-plow" }, + { 10006, 7, "tractor" }, + { 10008, 16, "tanker-or-tender" }, + { 10024, 14, "aircraft-other" }, + { 10025, 26, "aircraft-fixed-wing-tanker" }, + { 10026, 10, "helitanker" }, + { 10027, 10, "helicopter" }, + { 10034, 22, "marine-equipment-other" }, + { 10035, 19, "fire-boat-with-pump" }, + { 10036, 12, "boat-no-pump" }, + { 10044, 23, "support-apparatus-other" }, + { 10045, 27, "breathing-apparatus-support" }, + { 10046, 18, "light-and-air-unit" }, + { 10054, 25, "medical-rescue-unit-other" }, + { 10055, 11, "rescue-unit" }, + { 10056, 24, "urban-search-rescue-unit" }, + { 10057, 17, "high-angle-rescue" }, + { 10058, 17, "crash-fire-rescue" }, + { 10059, 8, "bLS-unit" }, + { 10060, 8, "aLS-unit" }, + { 10075, 19, "mobile-command-post" }, + { 10076, 17, "chief-officer-car" }, + { 10077, 11, "hAZMAT-unit" }, + { 10078, 16, "type-i-hand-crew" }, + { 10079, 17, "type-ii-hand-crew" }, + { 10083, 23, "privately-owned-vehicle" }, + { 10084, 24, "other-apparatus-resource" }, + { 10085, 9, "ambulance" }, + { 10086, 14, "bomb-squad-van" }, + { 10087, 17, "combine-harvester" }, + { 10088, 20, "construction-vehicle" }, + { 10089, 12, "farm-tractor" }, + { 10090, 22, "grass-cutting-machines" }, + { 10091, 22, "hAZMAT-containment-tow" }, + { 10092, 9, "heavy-tow" }, + { 10093, 22, "hedge-cutting-machines" }, + { 10094, 9, "light-tow" }, + { 10095, 12, "mobile-crane" }, + { 10096, 25, "refuse-collection-vehicle" }, + { 10097, 19, "resurfacing-vehicle" }, + { 10098, 12, "road-sweeper" }, + { 10099, 32, "roadside-litter-collection-crews" }, + { 10100, 15, "salvage-vehicle" }, + { 10101, 10, "sand-truck" }, + { 10102, 8, "snowplow" }, + { 10103, 12, "steam-roller" }, + { 10104, 13, "swat-team-van" }, + { 10105, 20, "track-laying-vehicle" }, + { 10106, 15, "unknown-vehicle" }, + { 10107, 20, "white-lining-vehicle" }, + { 10108, 10, "dump-truck" }, + { 10109, 18, "supervisor-vehicle" }, + { 10110, 11, "snow-blower" }, + { 10111, 18, "rotary-snow-blower" }, + { 10112, 11, "road-grader" }, + { 10113, 11, "steam-truck" }, + { 10114, 11, "flatbed-tow" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { + 34, /* aLS-unit(10060) */ + 2, /* aircraft(9988) */ + 19, /* aircraft-fixed-wing-tanker(10025) */ + 18, /* aircraft-other(10024) */ + 13, /* aircraft-rescue-firefighting(10001) */ + 42, /* ambulance(10085) */ + 33, /* bLS-unit(10059) */ + 24, /* boat-no-pump(10036) */ + 43, /* bomb-squad-van(10086) */ + 26, /* breathing-apparatus-support(10045) */ + 12, /* brush-truck(10000) */ + 36, /* chief-officer-car(10076) */ + 44, /* combine-harvester(10087) */ + 45, /* construction-vehicle(10088) */ + 32, /* crash-fire-rescue(10058) */ + 15, /* dozer-or-plow(10005) */ + 65, /* dump-truck(10108) */ + 8, /* engine(9995) */ + 46, /* farm-tractor(10089) */ + 23, /* fire-boat-with-pump(10035) */ + 71, /* flatbed-tow(10114) */ + 47, /* grass-cutting-machines(10090) */ + 0, /* ground-fire-suppression(9985) */ + 7, /* ground-fire-suppression-other(9994) */ + 48, /* hAZMAT-containment-tow(10091) */ + 37, /* hAZMAT-unit(10077) */ + 1, /* heavy-ground-equipment(9986) */ + 14, /* heavy-ground-equipment-other(10004) */ + 49, /* heavy-tow(10092) */ + 50, /* hedge-cutting-machines(10093) */ + 21, /* helicopter(10027) */ + 20, /* helitanker(10026) */ + 31, /* high-angle-rescue(10057) */ + 27, /* light-and-air-unit(10046) */ + 51, /* light-tow(10094) */ + 3, /* marine-equipment(9989) */ + 22, /* marine-equipment-other(10034) */ + 5, /* medical-rescue-unit(9991) */ + 28, /* medical-rescue-unit-other(10054) */ + 35, /* mobile-command-post(10075) */ + 52, /* mobile-crane(10095) */ + 6, /* other(9993) */ + 41, /* other-apparatus-resource(10084) */ + 40, /* privately-owned-vehicle(10083) */ + 10, /* quint(9997) */ + 53, /* refuse-collection-vehicle(10096) */ + 29, /* rescue-unit(10055) */ + 54, /* resurfacing-vehicle(10097) */ + 69, /* road-grader(10112) */ + 55, /* road-sweeper(10098) */ + 56, /* roadside-litter-collection-crews(10099) */ + 68, /* rotary-snow-blower(10111) */ + 57, /* salvage-vehicle(10100) */ + 58, /* sand-truck(10101) */ + 67, /* snow-blower(10110) */ + 59, /* snowplow(10102) */ + 60, /* steam-roller(10103) */ + 70, /* steam-truck(10113) */ + 66, /* supervisor-vehicle(10109) */ + 25, /* support-apparatus-other(10044) */ + 4, /* support-equipment(9990) */ + 61, /* swat-team-van(10104) */ + 17, /* tanker-or-tender(10008) */ + 11, /* tanker-pumper-combination(9998) */ + 62, /* track-laying-vehicle(10105) */ + 16, /* tractor(10006) */ + 9, /* truck-or-aerial(9996) */ + 38, /* type-i-hand-crew(10078) */ + 39, /* type-ii-hand-crew(10079) */ + 63, /* unknown-vehicle(10106) */ + 30, /* urban-search-rescue-unit(10056) */ + 64 /* white-lining-vehicle(10107) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { + asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ + 72, /* Number of elements in the maps */ + 73, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { + "IncidentResponseEquipment", + "IncidentResponseEquipment", + &asn_OP_NativeEnumerated, + asn_DEF_IncidentResponseEquipment_tags_1, + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IncidentResponseEquipment_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IncidentResponseEquipment_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c b/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c new file mode 100644 index 000000000..9a11cf9f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c @@ -0,0 +1,111 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionAccessPoint.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.connection), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connection" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionAccessPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* connection */ +}; +asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1 = { + sizeof(struct IntersectionAccessPoint), + offsetof(struct IntersectionAccessPoint, _asn_ctx), + offsetof(struct IntersectionAccessPoint, present), + sizeof(((struct IntersectionAccessPoint *)0)->present), + asn_MAP_IntersectionAccessPoint_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint = { + "IntersectionAccessPoint", + "IntersectionAccessPoint", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionAccessPoint_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionAccessPoint_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_IntersectionAccessPoint_1, + 3, /* Elements count */ + &asn_SPC_IntersectionAccessPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c b/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c new file mode 100644 index 000000000..03e0ec91c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c @@ -0,0 +1,337 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionCollision.h" + +#include "BSMcoreData.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionCollision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionCollision__regional), + offsetof(struct IntersectionCollision__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 4, offsetof(struct IntersectionCollision, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionCollision, partOne), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "partOne" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionCollision, path), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "path" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersectionID), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersectionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ApproachOrLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventFlag" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionCollision_oms_1[] = { 2, 3, 4, 5, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* partOne */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* intersectionID */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* laneNumber */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* eventFlag */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { + sizeof(struct IntersectionCollision), + offsetof(struct IntersectionCollision, _asn_ctx), + asn_MAP_IntersectionCollision_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionCollision_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { + "IntersectionCollision", + "IntersectionCollision", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionCollision_tags_1, + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + asn_DEF_IntersectionCollision_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionCollision_1, + 10, /* Elements count */ + &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c new file mode 100644 index 000000000..a22e555ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c @@ -0,0 +1,318 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionGeometry.h" + +#include "SpeedLimitList.h" +#include "PreemptPriorityList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionGeometry, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct IntersectionGeometry__regional), + offsetof(struct IntersectionGeometry__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneSet" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PreemptPriorityList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "preemptPriorityData" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { + sizeof(struct IntersectionGeometry), + offsetof(struct IntersectionGeometry, _asn_ctx), + asn_MAP_IntersectionGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { + "IntersectionGeometry", + "IntersectionGeometry", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionGeometry_tags_1, + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionGeometry_1, + 9, /* Elements count */ + &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c new file mode 100644 index 000000000..ac670dc8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionGeometryList.h" + +#include "IntersectionGeometry.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionGeometry, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { + sizeof(struct IntersectionGeometryList), + offsetof(struct IntersectionGeometryList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { + "IntersectionGeometryList", + "IntersectionGeometryList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionGeometryList_tags_1, + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionGeometryList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionGeometryList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_IntersectionGeometryList_1, + 1, /* Single element */ + &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionID.c b/src/tmx/Asn_J2735/src/2020/IntersectionID.c new file mode 100644 index 000000000..51dc59f88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionID.h" + +int +IntersectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionID = { + "IntersectionID", + "IntersectionID", + &asn_OP_NativeInteger, + asn_DEF_IntersectionID_tags_1, + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IntersectionID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c new file mode 100644 index 000000000..1f27c70c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionReferenceID.h" + +asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { + sizeof(struct IntersectionReferenceID), + offsetof(struct IntersectionReferenceID, _asn_ctx), + asn_MAP_IntersectionReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { + "IntersectionReferenceID", + "IntersectionReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionReferenceID_tags_1, + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionReferenceID_1, + 2, /* Elements count */ + &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c b/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c new file mode 100644 index 000000000..4f3379fa6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionState-addGrpC.h" + +#include "PrioritizationResponseList.h" +asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState_addGrpC, activePrioritizations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activePrioritizations" + }, +}; +static const int asn_MAP_IntersectionState_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1 = { + sizeof(struct IntersectionState_addGrpC), + offsetof(struct IntersectionState_addGrpC, _asn_ctx), + asn_MAP_IntersectionState_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_IntersectionState_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC = { + "IntersectionState-addGrpC", + "IntersectionState-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_addGrpC_tags_1, + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionState_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_IntersectionState_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionState.c b/src/tmx/Asn_J2735/src/2020/IntersectionState.c new file mode 100644 index 000000000..ebbeff952 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionState.c @@ -0,0 +1,336 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionState.h" + +#include "EnabledLaneList.h" +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionState__regional), + offsetof(struct IntersectionState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStatusObject, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "moy" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EnabledLaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabledLanes" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "states" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { + sizeof(struct IntersectionState), + offsetof(struct IntersectionState, _asn_ctx), + asn_MAP_IntersectionState_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionState_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState = { + "IntersectionState", + "IntersectionState", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_tags_1, + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionState_1, + 10, /* Elements count */ + &asn_SPC_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c b/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c new file mode 100644 index 000000000..0ad68cf85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionStateList.h" + +#include "IntersectionState.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { + sizeof(struct IntersectionStateList), + offsetof(struct IntersectionStateList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { + "IntersectionStateList", + "IntersectionStateList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionStateList_tags_1, + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStateList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionStateList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionStateList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_IntersectionStateList_1, + 1, /* Single element */ + &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c new file mode 100644 index 000000000..2de1dc5fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IntersectionStatusObject.h" + +int +IntersectionStatusObject_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { + "IntersectionStatusObject", + "IntersectionStatusObject", + &asn_OP_BIT_STRING, + asn_DEF_IntersectionStatusObject_tags_1, + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionStatusObject_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionStatusObject_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IntersectionStatusObject_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/IsDolly.c b/src/tmx/Asn_J2735/src/2020/IsDolly.c new file mode 100644 index 000000000..a01864079 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/IsDolly.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "IsDolly.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_IsDolly_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IsDolly = { + "IsDolly", + "IsDolly", + &asn_OP_BOOLEAN, + asn_DEF_IsDolly_tags_1, + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + asn_DEF_IsDolly_tags_1, /* Same as above */ + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c b/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c new file mode 100644 index 000000000..edcc91cec --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Iso3833VehicleType.h" + +int +Iso3833VehicleType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Iso3833VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType = { + "Iso3833VehicleType", + "Iso3833VehicleType", + &asn_OP_NativeInteger, + asn_DEF_Iso3833VehicleType_tags_1, + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + asn_DEF_Iso3833VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Iso3833VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Iso3833VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Iso3833VehicleType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/J1939data.c b/src/tmx/Asn_J2735/src/2020/J1939data.c new file mode 100644 index 000000000..ef05509ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/J1939data.c @@ -0,0 +1,232 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "J1939data.h" + +#include "TireDataList.h" +#include "AxleWeightList.h" +asn_TYPE_member_t asn_MBR_J1939data_1[] = { + { ATF_POINTER, 10, offsetof(struct J1939data, tires), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireDataList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "tires" + }, + { ATF_POINTER, 9, offsetof(struct J1939data, axles), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeightList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "axles" + }, + { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CargoWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "cargoWeight" + }, + { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringAxleTemperature" + }, + { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLocation" + }, + { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLiftAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLiftAirPressure" + }, + { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleTemperature" + }, + { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLubePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLubePressure" + }, + { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleLubePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringAxleLubePressure" + }, +}; +static const int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axles */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ +}; +asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { + sizeof(struct J1939data), + offsetof(struct J1939data, _asn_ctx), + asn_MAP_J1939data_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_J1939data_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_J1939data = { + "J1939data", + "J1939data", + &asn_OP_SEQUENCE, + asn_DEF_J1939data_tags_1, + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + asn_DEF_J1939data_tags_1, /* Same as above */ + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_J1939data_1, + 10, /* Elements count */ + &asn_SPC_J1939data_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c new file mode 100644 index 000000000..0e31320f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Barrier.h" + +int +LaneAttributes_Barrier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { + "LaneAttributes-Barrier", + "LaneAttributes-Barrier", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Barrier_tags_1, + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Barrier_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Barrier_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Barrier_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c new file mode 100644 index 000000000..d2e15552a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Bike.h" + +int +LaneAttributes_Bike_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { + "LaneAttributes-Bike", + "LaneAttributes-Bike", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Bike_tags_1, + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Bike_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Bike_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Bike_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c new file mode 100644 index 000000000..07ef319a6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Crosswalk.h" + +int +LaneAttributes_Crosswalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { + "LaneAttributes-Crosswalk", + "LaneAttributes-Crosswalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Crosswalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Crosswalk_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Crosswalk_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Crosswalk_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c new file mode 100644 index 000000000..5d2b60989 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Parking.h" + +int +LaneAttributes_Parking_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { + "LaneAttributes-Parking", + "LaneAttributes-Parking", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Parking_tags_1, + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Parking_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Parking_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Parking_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c new file mode 100644 index 000000000..ccdabea46 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Sidewalk.h" + +int +LaneAttributes_Sidewalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { + "LaneAttributes-Sidewalk", + "LaneAttributes-Sidewalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Sidewalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Sidewalk_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Sidewalk_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Sidewalk_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c new file mode 100644 index 000000000..cbe9458f2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Striping.h" + +int +LaneAttributes_Striping_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { + "LaneAttributes-Striping", + "LaneAttributes-Striping", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Striping_tags_1, + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Striping_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Striping_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Striping_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c new file mode 100644 index 000000000..c94969954 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-TrackedVehicle.h" + +int +LaneAttributes_TrackedVehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { + "LaneAttributes-TrackedVehicle", + "LaneAttributes-TrackedVehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_TrackedVehicle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_TrackedVehicle_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c new file mode 100644 index 000000000..67e597058 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes-Vehicle.h" + +int +LaneAttributes_Vehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 8, 8 } /* (SIZE(8..8,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { + "LaneAttributes-Vehicle", + "LaneAttributes-Vehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Vehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Vehicle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Vehicle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Vehicle_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes.c new file mode 100644 index 000000000..ba43b0bfb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneAttributes.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneAttributes.h" + +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDirection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionalUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneSharing, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sharedWith" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_LaneTypeAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneType" + }, + { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_LaneAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_LaneAttributes_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { + sizeof(struct LaneAttributes), + offsetof(struct LaneAttributes, _asn_ctx), + asn_MAP_LaneAttributes_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_LaneAttributes_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { + "LaneAttributes", + "LaneAttributes", + &asn_OP_SEQUENCE, + asn_DEF_LaneAttributes_tags_1, + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LaneAttributes_1, + 4, /* Elements count */ + &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c b/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c new file mode 100644 index 000000000..fdb2b669a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneConnectionID.h" + +int +LaneConnectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { + "LaneConnectionID", + "LaneConnectionID", + &asn_OP_NativeInteger, + asn_DEF_LaneConnectionID_tags_1, + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + asn_DEF_LaneConnectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneConnectionID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneConnectionID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneConnectionID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c new file mode 100644 index 000000000..188e48b7b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneDataAttribute-addGrpB.h" + +static const ber_tlv_tag_t asn_DEF_LaneDataAttribute_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1 = { + sizeof(struct LaneDataAttribute_addGrpB), + offsetof(struct LaneDataAttribute_addGrpB, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 0, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB = { + "LaneDataAttribute-addGrpB", + "LaneDataAttribute-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_LaneDataAttribute_addGrpB_tags_1, + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttribute_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_LaneDataAttribute_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c new file mode 100644 index 000000000..2f2bb5ec0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c @@ -0,0 +1,287 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneDataAttribute.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_LaneDataAttribute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct LaneDataAttribute__regional), + offsetof(struct LaneDataAttribute__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathEndPointAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointCenter" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointLeft" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointRight" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MergeDivergeNodeAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { + sizeof(struct LaneDataAttribute), + offsetof(struct LaneDataAttribute, _asn_ctx), + offsetof(struct LaneDataAttribute, present), + sizeof(((struct LaneDataAttribute *)0)->present), + asn_MAP_LaneDataAttribute_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { + "LaneDataAttribute", + "LaneDataAttribute", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDataAttribute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDataAttribute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_LaneDataAttribute_1, + 7, /* Elements count */ + &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c new file mode 100644 index 000000000..2dd3488e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneDataAttributeList.h" + +#include "LaneDataAttribute.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_LaneDataAttribute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { + sizeof(struct LaneDataAttributeList), + offsetof(struct LaneDataAttributeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { + "LaneDataAttributeList", + "LaneDataAttributeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneDataAttributeList_tags_1, + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDataAttributeList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDataAttributeList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_LaneDataAttributeList_1, + 1, /* Single element */ + &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneDirection.c b/src/tmx/Asn_J2735/src/2020/LaneDirection.c new file mode 100644 index 000000000..b0338e8ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneDirection.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneDirection.h" + +int +LaneDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDirection_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneDirection = { + "LaneDirection", + "LaneDirection", + &asn_OP_BIT_STRING, + asn_DEF_LaneDirection_tags_1, + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + asn_DEF_LaneDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDirection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDirection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneDirection_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneID.c b/src/tmx/Asn_J2735/src/2020/LaneID.c new file mode 100644 index 000000000..28cd36ad4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneID.h" + +int +LaneID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneID = { + "LaneID", + "LaneID", + &asn_OP_NativeInteger, + asn_DEF_LaneID_tags_1, + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + asn_DEF_LaneID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneList.c b/src/tmx/Asn_J2735/src/2020/LaneList.c new file mode 100644 index 000000000..84cd9fdc3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneList.h" + +#include "GenericLane.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { + sizeof(struct LaneList), + offsetof(struct LaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneList = { + "LaneList", + "LaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneList_tags_1, + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + asn_DEF_LaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_LaneList_1, + 1, /* Single element */ + &asn_SPC_LaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneSharing.c b/src/tmx/Asn_J2735/src/2020/LaneSharing.c new file mode 100644 index 000000000..b9aa5a65b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneSharing.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneSharing.h" + +int +LaneSharing_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 10UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneSharing_constr_1 CC_NOTUSED = { + { 0, 0 }, + 10 /* (SIZE(10..10)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneSharing = { + "LaneSharing", + "LaneSharing", + &asn_OP_BIT_STRING, + asn_DEF_LaneSharing_tags_1, + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + asn_DEF_LaneSharing_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneSharing_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneSharing_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneSharing_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c new file mode 100644 index 000000000..173244919 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneTypeAttributes.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Vehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Crosswalk, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crosswalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Bike, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bikeLane" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Sidewalk, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sidewalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Barrier, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "median" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Striping, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "striping" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_TrackedVehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trackedVehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Parking, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "parking" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { + sizeof(struct LaneTypeAttributes), + offsetof(struct LaneTypeAttributes, _asn_ctx), + offsetof(struct LaneTypeAttributes, present), + sizeof(((struct LaneTypeAttributes *)0)->present), + asn_MAP_LaneTypeAttributes_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + 8 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { + "LaneTypeAttributes", + "LaneTypeAttributes", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneTypeAttributes_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneTypeAttributes_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_LaneTypeAttributes_1, + 8, /* Elements count */ + &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LaneWidth.c b/src/tmx/Asn_J2735/src/2020/LaneWidth.c new file mode 100644 index 000000000..6c2f65a00 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LaneWidth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LaneWidth.h" + +int +LaneWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneWidth = { + "LaneWidth", + "LaneWidth", + &asn_OP_NativeInteger, + asn_DEF_LaneWidth_tags_1, + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + asn_DEF_LaneWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneWidth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneWidth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneWidth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Latitude.c b/src/tmx/Asn_J2735/src/2020/Latitude.c new file mode 100644 index 000000000..a7a44707b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Latitude.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Latitude.h" + +int +Latitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -900000000L && value <= 900000001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Latitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-900000000..900000001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Latitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Latitude = { + "Latitude", + "Latitude", + &asn_OP_NativeInteger, + asn_DEF_Latitude_tags_1, + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + asn_DEF_Latitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Latitude_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Latitude_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Latitude_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c b/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c new file mode 100644 index 000000000..3ce590877 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LatitudeDMS.h" + +int +LatitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32400000L && value <= 32400000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-32400000..32400000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { + "LatitudeDMS", + "LatitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LatitudeDMS_tags_1, + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LatitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LatitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LatitudeDMS_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c new file mode 100644 index 000000000..0b4d8277e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LatitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLat, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { + sizeof(struct LatitudeDMS2), + offsetof(struct LatitudeDMS2, _asn_ctx), + asn_MAP_LatitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { + "LatitudeDMS2", + "LatitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LatitudeDMS2_tags_1, + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LatitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LayerID.c b/src/tmx/Asn_J2735/src/2020/LayerID.c new file mode 100644 index 000000000..194de2eb5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LayerID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LayerID.h" + +int +LayerID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LayerID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LayerID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerID = { + "LayerID", + "LayerID", + &asn_OP_NativeInteger, + asn_DEF_LayerID_tags_1, + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + asn_DEF_LayerID_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LayerID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LayerID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LayerID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LayerType.c b/src/tmx/Asn_J2735/src/2020/LayerType.c new file mode 100644 index 000000000..871222e53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LayerType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LayerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LayerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LayerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 12, "mixedContent" }, + { 2, 14, "generalMapData" }, + { 3, 16, "intersectionData" }, + { 4, 9, "curveData" }, + { 5, 18, "roadwaySectionData" }, + { 6, 15, "parkingAreaData" }, + { 7, 14, "sharedLaneData" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_LayerType_enum2value_1[] = { + 4, /* curveData(4) */ + 2, /* generalMapData(2) */ + 3, /* intersectionData(3) */ + 1, /* mixedContent(1) */ + 0, /* none(0) */ + 6, /* parkingAreaData(6) */ + 5, /* roadwaySectionData(5) */ + 7 /* sharedLaneData(7) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { + asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerType = { + "LayerType", + "LayerType", + &asn_OP_NativeEnumerated, + asn_DEF_LayerType_tags_1, + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + asn_DEF_LayerType_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LayerType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LayerType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LayerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LightbarInUse.c b/src/tmx/Asn_J2735/src/2020/LightbarInUse.c new file mode 100644 index 000000000..92ea3f09d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LightbarInUse.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LightbarInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 19, "yellowCautionLights" }, + { 4, 16, "schooldBusLights" }, + { 5, 16, "arrowSignsActive" }, + { 6, 17, "slowMovingVehicle" }, + { 7, 9, "freqStops" } +}; +static const unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { + 5, /* arrowSignsActive(5) */ + 7, /* freqStops(7) */ + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 4, /* schooldBusLights(4) */ + 6, /* slowMovingVehicle(6) */ + 0, /* unavailable(0) */ + 3 /* yellowCautionLights(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { + asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { + "LightbarInUse", + "LightbarInUse", + &asn_OP_NativeEnumerated, + asn_DEF_LightbarInUse_tags_1, + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + asn_DEF_LightbarInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LightbarInUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LightbarInUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Location-quality.c b/src/tmx/Asn_J2735/src/2020/Location-quality.c new file mode 100644 index 000000000..7ffa9baa5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Location-quality.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Location-quality.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Location_quality_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { + { 0, 13, "loc-qual-bt1m" }, + { 1, 13, "loc-qual-bt5m" }, + { 2, 14, "loc-qual-bt12m" }, + { 3, 14, "loc-qual-bt50m" }, + { 4, 15, "loc-qual-bt125m" }, + { 5, 15, "loc-qual-bt500m" }, + { 6, 16, "loc-qual-bt1250m" }, + { 7, 16, "loc-qual-unknown" } +}; +static const unsigned int asn_MAP_Location_quality_enum2value_1[] = { + 6, /* loc-qual-bt1250m(6) */ + 4, /* loc-qual-bt125m(4) */ + 2, /* loc-qual-bt12m(2) */ + 0, /* loc-qual-bt1m(0) */ + 5, /* loc-qual-bt500m(5) */ + 3, /* loc-qual-bt50m(3) */ + 1, /* loc-qual-bt5m(1) */ + 7 /* loc-qual-unknown(7) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { + asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_quality = { + "Location-quality", + "Location-quality", + &asn_OP_NativeEnumerated, + asn_DEF_Location_quality_tags_1, + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + asn_DEF_Location_quality_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Location_quality_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Location_quality_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_quality_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Location-tech.c b/src/tmx/Asn_J2735/src/2020/Location-tech.c new file mode 100644 index 000000000..fdde718c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Location-tech.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Location-tech.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Location_tech_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 9 } /* (0..9,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { + { 0, 16, "loc-tech-unknown" }, + { 1, 13, "loc-tech-GNSS" }, + { 2, 13, "loc-tech-DGPS" }, + { 3, 12, "loc-tech-RTK" }, + { 4, 12, "loc-tech-PPP" }, + { 5, 14, "loc-tech-drGPS" }, + { 6, 15, "loc-tech-drDGPS" }, + { 7, 11, "loc-tech-dr" }, + { 8, 12, "loc-tech-nav" }, + { 9, 14, "loc-tech-fault" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Location_tech_enum2value_1[] = { + 2, /* loc-tech-DGPS(2) */ + 1, /* loc-tech-GNSS(1) */ + 4, /* loc-tech-PPP(4) */ + 3, /* loc-tech-RTK(3) */ + 7, /* loc-tech-dr(7) */ + 6, /* loc-tech-drDGPS(6) */ + 5, /* loc-tech-drGPS(5) */ + 9, /* loc-tech-fault(9) */ + 8, /* loc-tech-nav(8) */ + 0 /* loc-tech-unknown(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { + asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 11, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_tech = { + "Location-tech", + "Location-tech", + &asn_OP_NativeEnumerated, + asn_DEF_Location_tech_tags_1, + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + asn_DEF_Location_tech_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Location_tech_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Location_tech_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_tech_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Longitude.c b/src/tmx/Asn_J2735/src/2020/Longitude.c new file mode 100644 index 000000000..3e9855526 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Longitude.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Longitude.h" + +int +Longitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1799999999L && value <= 1800000001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Longitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-1799999999..1800000001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Longitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Longitude = { + "Longitude", + "Longitude", + &asn_OP_NativeInteger, + asn_DEF_Longitude_tags_1, + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + asn_DEF_Longitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Longitude_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Longitude_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Longitude_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c b/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c new file mode 100644 index 000000000..ee6f12f53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LongitudeDMS.h" + +int +LongitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64800000L && value <= 64800000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-64800000..64800000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { + "LongitudeDMS", + "LongitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LongitudeDMS_tags_1, + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LongitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LongitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LongitudeDMS_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c new file mode 100644 index 000000000..a519dff0e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "LongitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLong, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { + sizeof(struct LongitudeDMS2), + offsetof(struct LongitudeDMS2, _asn_ctx), + asn_MAP_LongitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { + "LongitudeDMS2", + "LongitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LongitudeDMS2_tags_1, + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LongitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MUTCDCode.c b/src/tmx/Asn_J2735/src/2020/MUTCDCode.c new file mode 100644 index 000000000..7201e5b20 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MUTCDCode.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MUTCDCode.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 10, "regulatory" }, + { 2, 7, "warning" }, + { 3, 11, "maintenance" }, + { 4, 15, "motoristService" }, + { 5, 5, "guide" }, + { 6, 3, "rec" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { + 5, /* guide(5) */ + 3, /* maintenance(3) */ + 4, /* motoristService(4) */ + 0, /* none(0) */ + 6, /* rec(6) */ + 1, /* regulatory(1) */ + 2 /* warning(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { + asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { + "MUTCDCode", + "MUTCDCode", + &asn_OP_NativeEnumerated, + asn_DEF_MUTCDCode_tags_1, + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + asn_DEF_MUTCDCode_tags_1, /* Same as above */ + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MUTCDCode_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MUTCDCode_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c new file mode 100644 index 000000000..cc724b1b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ManeuverAssistList.h" + +#include "ConnectionManeuverAssist.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { + sizeof(struct ManeuverAssistList), + offsetof(struct ManeuverAssistList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { + "ManeuverAssistList", + "ManeuverAssistList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ManeuverAssistList_tags_1, + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ManeuverAssistList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ManeuverAssistList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ManeuverAssistList_1, + 1, /* Single element */ + &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c b/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c new file mode 100644 index 000000000..33688b225 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MapData-addGrpC.h" + +#include "SignalHeadLocationList.h" +asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData_addGrpC, signalHeadLocations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalHeadLocationList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalHeadLocations" + }, +}; +static const int asn_MAP_MapData_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_MapData_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1 = { + sizeof(struct MapData_addGrpC), + offsetof(struct MapData_addGrpC, _asn_ctx), + asn_MAP_MapData_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_MapData_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC = { + "MapData-addGrpC", + "MapData-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_MapData_addGrpC_tags_1, + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_MapData_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MapData_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_MapData_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MapData.c b/src/tmx/Asn_J2735/src/2020/MapData.c new file mode 100644 index 000000000..8595b19bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MapData.c @@ -0,0 +1,320 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MapData.h" + +#include "IntersectionGeometryList.h" +#include "RoadSegmentList.h" +#include "DataParameters.h" +#include "RestrictionClassList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MapData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct MapData__regional), + offsetof(struct MapData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MapData_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, + { ATF_POINTER, 7, offsetof(struct MapData, layerType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "layerType" + }, + { ATF_POINTER, 6, offsetof(struct MapData, layerID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "layerID" + }, + { ATF_POINTER, 5, offsetof(struct MapData, intersections), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionGeometryList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 4, offsetof(struct MapData, roadSegments), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadSegments" + }, + { ATF_POINTER, 3, offsetof(struct MapData, dataParameters), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DataParameters, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataParameters" + }, + { ATF_POINTER, 2, offsetof(struct MapData, restrictionList), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "restrictionList" + }, + { ATF_POINTER, 1, offsetof(struct MapData, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MapData_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgIssueRevision */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* layerType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadSegments */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataParameters */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* restrictionList */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { + sizeof(struct MapData), + offsetof(struct MapData, _asn_ctx), + asn_MAP_MapData_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_MapData_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData = { + "MapData", + "MapData", + &asn_OP_SEQUENCE, + asn_DEF_MapData_tags_1, + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + asn_DEF_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MapData_1, + 9, /* Elements count */ + &asn_SPC_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c new file mode 100644 index 000000000..c590cb20d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MaxTimetoChange.h" + +int +MaxTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 2402L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { + "MaxTimetoChange", + "MaxTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MaxTimetoChange_tags_1, + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MaxTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MaxTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MaxTimetoChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c new file mode 100644 index 000000000..cea87fe4b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MergeDivergeNodeAngle.h" + +int +MergeDivergeNodeAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180L && value <= 180L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { + "MergeDivergeNodeAngle", + "MergeDivergeNodeAngle", + &asn_OP_NativeInteger, + asn_DEF_MergeDivergeNodeAngle_tags_1, + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MergeDivergeNodeAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MergeDivergeNodeAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MergeDivergeNodeAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MessageBLOB.c b/src/tmx/Asn_J2735/src/2020/MessageBLOB.c new file mode 100644 index 000000000..139d9f4c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MessageBLOB.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MessageBLOB.h" + +int +MessageBLOB_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10UL && size <= 2000UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(10..2000)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MessageBLOB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MessageBLOB = { + "MessageBLOB", + "MessageBLOB", + &asn_OP_OCTET_STRING, + asn_DEF_MessageBLOB_tags_1, + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + asn_DEF_MessageBLOB_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MessageBLOB_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MessageBLOB_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MessageBLOB_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MessageFrame.c b/src/tmx/Asn_J2735/src/2020/MessageFrame.c new file mode 100644 index 000000000..8ca45438c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MessageFrame.c @@ -0,0 +1,872 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MessageFrame.h" + +static const long asn_VAL_1_basicSafetyMessage = 20; +static const long asn_VAL_2_mapData = 18; +static const long asn_VAL_3_signalPhaseAndTimingMessage = 19; +static const long asn_VAL_4_commonSafetyRequest = 21; +static const long asn_VAL_5_emergencyVehicleAlert = 22; +static const long asn_VAL_6_intersectionCollision = 23; +static const long asn_VAL_7_nmeaCorrections = 24; +static const long asn_VAL_8_probeDataManagement = 25; +static const long asn_VAL_9_probeVehicleData = 26; +static const long asn_VAL_10_roadSideAlert = 27; +static const long asn_VAL_11_rtcmCorrections = 28; +static const long asn_VAL_12_signalRequestMessage = 29; +static const long asn_VAL_13_signalStatusMessage = 30; +static const long asn_VAL_14_travelerInformation = 31; +static const long asn_VAL_15_personalSafetyMessage = 32; +static const long asn_VAL_16_testMessage00 = 240; +static const long asn_VAL_17_testMessage01 = 241; +static const long asn_VAL_18_testMessage02 = 242; +static const long asn_VAL_19_testMessage03 = 243; +static const long asn_VAL_20_testMessage04 = 244; +static const long asn_VAL_21_testMessage05 = 245; +static const long asn_VAL_22_testMessage06 = 246; +static const long asn_VAL_23_testMessage07 = 247; +static const long asn_VAL_24_testMessage08 = 248; +static const long asn_VAL_25_testMessage09 = 249; +static const long asn_VAL_26_testMessage10 = 250; +static const long asn_VAL_27_testMessage11 = 251; +static const long asn_VAL_28_testMessage12 = 252; +static const long asn_VAL_29_testMessage13 = 253; +static const long asn_VAL_30_testMessage14 = 254; +static const long asn_VAL_31_testMessage15 = 255; +static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_2_mapData }, + { "&Type", aioc__type, &asn_DEF_MapData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_3_signalPhaseAndTimingMessage }, + { "&Type", aioc__type, &asn_DEF_SPAT }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_4_commonSafetyRequest }, + { "&Type", aioc__type, &asn_DEF_CommonSafetyRequest }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_5_emergencyVehicleAlert }, + { "&Type", aioc__type, &asn_DEF_EmergencyVehicleAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_6_intersectionCollision }, + { "&Type", aioc__type, &asn_DEF_IntersectionCollision }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_7_nmeaCorrections }, + { "&Type", aioc__type, &asn_DEF_NMEAcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_8_probeDataManagement }, + { "&Type", aioc__type, &asn_DEF_ProbeDataManagement }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_9_probeVehicleData }, + { "&Type", aioc__type, &asn_DEF_ProbeVehicleData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_10_roadSideAlert }, + { "&Type", aioc__type, &asn_DEF_RoadSideAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_11_rtcmCorrections }, + { "&Type", aioc__type, &asn_DEF_RTCMcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_12_signalRequestMessage }, + { "&Type", aioc__type, &asn_DEF_SignalRequestMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_13_signalStatusMessage }, + { "&Type", aioc__type, &asn_DEF_SignalStatusMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_14_travelerInformation }, + { "&Type", aioc__type, &asn_DEF_TravelerInformation }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_15_personalSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_PersonalSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_16_testMessage00 }, + { "&Type", aioc__type, &asn_DEF_TestMessage00 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_17_testMessage01 }, + { "&Type", aioc__type, &asn_DEF_TestMessage01 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_18_testMessage02 }, + { "&Type", aioc__type, &asn_DEF_TestMessage02 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_19_testMessage03 }, + { "&Type", aioc__type, &asn_DEF_TestMessage03 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_20_testMessage04 }, + { "&Type", aioc__type, &asn_DEF_TestMessage04 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_21_testMessage05 }, + { "&Type", aioc__type, &asn_DEF_TestMessage05 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_22_testMessage06 }, + { "&Type", aioc__type, &asn_DEF_TestMessage06 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_23_testMessage07 }, + { "&Type", aioc__type, &asn_DEF_TestMessage07 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_24_testMessage08 }, + { "&Type", aioc__type, &asn_DEF_TestMessage08 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_25_testMessage09 }, + { "&Type", aioc__type, &asn_DEF_TestMessage09 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_26_testMessage10 }, + { "&Type", aioc__type, &asn_DEF_TestMessage10 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_27_testMessage11 }, + { "&Type", aioc__type, &asn_DEF_TestMessage11 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_28_testMessage12 }, + { "&Type", aioc__type, &asn_DEF_TestMessage12 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_29_testMessage13 }, + { "&Type", aioc__type, &asn_DEF_TestMessage13 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, + { "&Type", aioc__type, &asn_DEF_TestMessage14 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, + { "&Type", aioc__type, &asn_DEF_TestMessage15 } +}; +static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { + { 31, 2, asn_IOS_MessageTypes_1_rows } +}; +static int +memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_MessageFrame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_MessageTypes_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MessageFrame, messageId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_messageId_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_messageId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.BasicSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BasicSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "BasicSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.MapData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MapData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MapData" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SPAT), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SPAT, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SPAT" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.CommonSafetyRequest), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CommonSafetyRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "CommonSafetyRequest" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.EmergencyVehicleAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EmergencyVehicleAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "EmergencyVehicleAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.IntersectionCollision), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionCollision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "IntersectionCollision" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.NMEAcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NMEAcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "NMEAcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeDataManagement), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeDataManagement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ProbeDataManagement" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeVehicleData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeVehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ProbeVehicleData" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RoadSideAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RoadSideAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RTCMcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RTCMcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RTCMcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalRequestMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SignalRequestMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalStatusMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SignalStatusMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TravelerInformation), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TravelerInformation" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.PersonalSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PersonalSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "PersonalSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage00), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage00, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage00" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage01), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage01, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage01" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage02), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage02, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage02" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage03), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage03, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage03" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage04), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage04, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage04" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage05), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage05, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage05" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage06), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage06, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage06" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage07), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage07" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage08), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage08" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage09), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage09" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage10), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage10" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage11), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage11" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage12), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage12" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage13), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage13" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage14), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage14" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage15), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage15, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage15" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 30 }, /* BasicSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 29 }, /* MapData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 28 }, /* SPAT */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 27 }, /* CommonSafetyRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 26 }, /* EmergencyVehicleAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 25 }, /* IntersectionCollision */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 24 }, /* NMEAcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 23 }, /* ProbeDataManagement */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 22 }, /* ProbeVehicleData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 21 }, /* RoadSideAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 20 }, /* RTCMcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 19 }, /* SignalRequestMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 18 }, /* SignalStatusMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 17 }, /* TravelerInformation */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 16 }, /* PersonalSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 15 }, /* TestMessage00 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 14 }, /* TestMessage01 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 13 }, /* TestMessage02 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 12 }, /* TestMessage03 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 11 }, /* TestMessage04 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 10 }, /* TestMessage05 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 9 }, /* TestMessage06 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 8 }, /* TestMessage07 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 7 }, /* TestMessage08 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 6 }, /* TestMessage09 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 5 }, /* TestMessage10 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 4 }, /* TestMessage11 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 3 }, /* TestMessage12 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 2 }, /* TestMessage13 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 1 }, /* TestMessage14 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 0 } /* TestMessage15 */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { + sizeof(struct MessageFrame__value), + offsetof(struct MessageFrame__value, _asn_ctx), + offsetof(struct MessageFrame__value, present), + sizeof(((struct MessageFrame__value *)0)->present), + asn_MAP_value_tag2el_3, + 31, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_3 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_value_3, + 31, /* Elements count */ + &asn_SPC_value_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_MessageFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame, messageId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_messageId_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_messageId_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_messageId_constraint_1 + }, + 0, 0, /* No default value */ + "messageId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct MessageFrame, value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_3, + select_MessageFrame_value_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_value_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_value_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_value_constraint_1 + }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_MessageFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* value */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MessageFrame_specs_1 = { + sizeof(struct MessageFrame), + offsetof(struct MessageFrame, _asn_ctx), + asn_MAP_MessageFrame_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageFrame = { + "MessageFrame", + "MessageFrame", + &asn_OP_SEQUENCE, + asn_DEF_MessageFrame_tags_1, + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + asn_DEF_MessageFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MessageFrame_1, + 2, /* Elements count */ + &asn_SPC_MessageFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c b/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c new file mode 100644 index 000000000..20dd30f1c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MinTimetoChange.h" + +int +MinTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 2402L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { + "MinTimetoChange", + "MinTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MinTimetoChange_tags_1, + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MinTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinTimetoChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Minute.c b/src/tmx/Asn_J2735/src/2020/Minute.c new file mode 100644 index 000000000..bb5f3459a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Minute.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Minute.h" + +int +Minute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Minute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Minute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Minute = { + "Minute", + "Minute", + &asn_OP_NativeInteger, + asn_DEF_Minute_tags_1, + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + asn_DEF_Minute_tags_1, /* Same as above */ + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Minute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Minute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Minute_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c new file mode 100644 index 000000000..0d046548e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MinuteOfTheYear.h" + +int +MinuteOfTheYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 527040L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..527040) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { + "MinuteOfTheYear", + "MinuteOfTheYear", + &asn_OP_NativeInteger, + asn_DEF_MinuteOfTheYear_tags_1, + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinuteOfTheYear_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinuteOfTheYear_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinuteOfTheYear_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MinutesAngle.c b/src/tmx/Asn_J2735/src/2020/MinutesAngle.c new file mode 100644 index 000000000..f56577371 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MinutesAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MinutesAngle.h" + +int +MinutesAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 59L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..59) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { + "MinutesAngle", + "MinutesAngle", + &asn_OP_NativeInteger, + asn_DEF_MinutesAngle_tags_1, + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + asn_DEF_MinutesAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinutesAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinutesAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinutesAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MinutesDuration.c b/src/tmx/Asn_J2735/src/2020/MinutesDuration.c new file mode 100644 index 000000000..ecda6c639 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MinutesDuration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MinutesDuration.h" + +int +MinutesDuration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { + "MinutesDuration", + "MinutesDuration", + &asn_OP_NativeInteger, + asn_DEF_MinutesDuration_tags_1, + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + asn_DEF_MinutesDuration_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinutesDuration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinutesDuration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinutesDuration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Month.c b/src/tmx/Asn_J2735/src/2020/Month.c new file mode 100644 index 000000000..ec0f60f58 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Month.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Month.h" + +int +Month_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Month_constr_1 CC_NOTUSED = { + { 1, 1 } /* (1..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Month_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Month_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Month = { + "Month", + "Month", + &asn_OP_NativeInteger, + asn_DEF_Month_tags_1, + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + asn_DEF_Month_tags_1, /* Same as above */ + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Month_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Month_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Month_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c new file mode 100644 index 000000000..0949fdc50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MotorizedPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 10, "wheelChair" }, + { 3, 7, "bicycle" }, + { 4, 7, "scooter" }, + { 5, 19, "selfBalancingDevice" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { + 3, /* bicycle(3) */ + 1, /* otherTypes(1) */ + 4, /* scooter(4) */ + 5, /* selfBalancingDevice(5) */ + 0, /* unavailable(0) */ + 2 /* wheelChair(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { + asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { + "MotorizedPropelledType", + "MotorizedPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_MotorizedPropelledType_tags_1, + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MotorizedPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MotorizedPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c b/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c new file mode 100644 index 000000000..3b1e3de10 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementEvent-addGrpB.h" + +asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent_addGrpB, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinTimetoChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct MovementEvent_addGrpB, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MaxTimetoChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent_addGrpB, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent_addGrpB, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_MovementEvent_addGrpB_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1 = { + sizeof(struct MovementEvent_addGrpB), + offsetof(struct MovementEvent_addGrpB, _asn_ctx), + asn_MAP_MovementEvent_addGrpB_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_MovementEvent_addGrpB_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB = { + "MovementEvent-addGrpB", + "MovementEvent-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_addGrpB_tags_1, + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementEvent_addGrpB_1, + 6, /* Elements count */ + &asn_SPC_MovementEvent_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementEvent.c b/src/tmx/Asn_J2735/src/2020/MovementEvent.c new file mode 100644 index 000000000..f23d5313f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementEvent.c @@ -0,0 +1,228 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementEvent.h" + +#include "TimeChangeDetails.h" +#include "AdvisorySpeedList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MovementEvent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct MovementEvent__regional), + offsetof(struct MovementEvent__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementPhaseState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventState" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeChangeDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timing" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speeds" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { + sizeof(struct MovementEvent), + offsetof(struct MovementEvent, _asn_ctx), + asn_MAP_MovementEvent_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_MovementEvent_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent = { + "MovementEvent", + "MovementEvent", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_tags_1, + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementEvent_1, + 4, /* Elements count */ + &asn_SPC_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementEventList.c b/src/tmx/Asn_J2735/src/2020/MovementEventList.c new file mode 100644 index 000000000..5fba39574 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementEventList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementEventList.h" + +#include "MovementEvent.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementEventList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { + sizeof(struct MovementEventList), + offsetof(struct MovementEventList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEventList = { + "MovementEventList", + "MovementEventList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementEventList_tags_1, + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + asn_DEF_MovementEventList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementEventList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementEventList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_MovementEventList_1, + 1, /* Single element */ + &asn_SPC_MovementEventList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementList.c b/src/tmx/Asn_J2735/src/2020/MovementList.c new file mode 100644 index 000000000..e60662f88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementList.h" + +#include "MovementState.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_MovementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { + sizeof(struct MovementList), + offsetof(struct MovementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementList = { + "MovementList", + "MovementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementList_tags_1, + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + asn_DEF_MovementList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_MovementList_1, + 1, /* Single element */ + &asn_SPC_MovementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c b/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c new file mode 100644 index 000000000..eb047813b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementPhaseState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 4, "dark" }, + { 2, 17, "stop-Then-Proceed" }, + { 3, 15, "stop-And-Remain" }, + { 4, 12, "pre-Movement" }, + { 5, 27, "permissive-Movement-Allowed" }, + { 6, 26, "protected-Movement-Allowed" }, + { 7, 20, "permissive-clearance" }, + { 8, 19, "protected-clearance" }, + { 9, 27, "caution-Conflicting-Traffic" } +}; +static const unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { + 9, /* caution-Conflicting-Traffic(9) */ + 1, /* dark(1) */ + 5, /* permissive-Movement-Allowed(5) */ + 7, /* permissive-clearance(7) */ + 4, /* pre-Movement(4) */ + 6, /* protected-Movement-Allowed(6) */ + 8, /* protected-clearance(8) */ + 3, /* stop-And-Remain(3) */ + 2, /* stop-Then-Proceed(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { + asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { + "MovementPhaseState", + "MovementPhaseState", + &asn_OP_NativeEnumerated, + asn_DEF_MovementPhaseState_tags_1, + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + asn_DEF_MovementPhaseState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementPhaseState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementPhaseState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MovementState.c b/src/tmx/Asn_J2735/src/2020/MovementState.c new file mode 100644 index 000000000..3dd195049 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MovementState.c @@ -0,0 +1,245 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MovementState.h" + +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MovementState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct MovementState__regional), + offsetof(struct MovementState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementState_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementState, movementName), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "movementName" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementEventList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "state-time-speed" + }, + { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct MovementState, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { + sizeof(struct MovementState), + offsetof(struct MovementState, _asn_ctx), + asn_MAP_MovementState_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_MovementState_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementState = { + "MovementState", + "MovementState", + &asn_OP_SEQUENCE, + asn_DEF_MovementState_tags_1, + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + asn_DEF_MovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementState_1, + 5, /* Elements count */ + &asn_SPC_MovementState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MsgCRC.c b/src/tmx/Asn_J2735/src/2020/MsgCRC.c new file mode 100644 index 000000000..d0a8baefe --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MsgCRC.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MsgCRC.h" + +int +MsgCRC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MsgCRC_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MsgCRC = { + "MsgCRC", + "MsgCRC", + &asn_OP_OCTET_STRING, + asn_DEF_MsgCRC_tags_1, + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + asn_DEF_MsgCRC_tags_1, /* Same as above */ + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MsgCRC_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MsgCRC_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MsgCRC_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c new file mode 100644 index 000000000..2113a68fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "MultiVehicleResponse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "singleVehicle" }, + { 2, 12, "multiVehicle" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { + 2, /* multiVehicle(2) */ + 3, /* reserved(3) */ + 1, /* singleVehicle(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { + asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { + "MultiVehicleResponse", + "MultiVehicleResponse", + &asn_OP_NativeEnumerated, + asn_DEF_MultiVehicleResponse_tags_1, + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MultiVehicleResponse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MultiVehicleResponse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c new file mode 100644 index 000000000..feaef4206 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NMEA-MsgType.h" + +int +NMEA_MsgType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { + "NMEA-MsgType", + "NMEA-MsgType", + &asn_OP_NativeInteger, + asn_DEF_NMEA_MsgType_tags_1, + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_MsgType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_MsgType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NMEA_MsgType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c b/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c new file mode 100644 index 000000000..22ef9c27a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NMEA-Payload.h" + +int +NMEA_Payload_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 1023UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { + "NMEA-Payload", + "NMEA-Payload", + &asn_OP_OCTET_STRING, + asn_DEF_NMEA_Payload_tags_1, + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_Payload_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_Payload_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NMEA_Payload_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c b/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c new file mode 100644 index 000000000..3ac777642 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NMEA-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "reserved" }, + { 2, 4, "rev1" }, + { 3, 4, "rev2" }, + { 4, 4, "rev3" }, + { 5, 4, "rev4" }, + { 6, 4, "rev5" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { + 1, /* reserved(1) */ + 2, /* rev1(2) */ + 3, /* rev2(3) */ + 4, /* rev3(4) */ + 5, /* rev4(5) */ + 6, /* rev5(6) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { + asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { + "NMEA-Revision", + "NMEA-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_NMEA_Revision_tags_1, + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c b/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c new file mode 100644 index 000000000..11e650c93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c @@ -0,0 +1,262 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NMEAcorrections.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NMEAcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct NMEAcorrections__regional), + offsetof(struct NMEAcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NMEAcorrections_1[] = { + { ATF_POINTER, 4, offsetof(struct NMEAcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct NMEAcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Revision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 2, offsetof(struct NMEAcorrections, msg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_MsgType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msg" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, wdCount), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wdCount" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEAcorrections, payload), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Payload, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "payload" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NMEAcorrections_oms_1[] = { 0, 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_NMEAcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NMEAcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* payload */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1 = { + sizeof(struct NMEAcorrections), + offsetof(struct NMEAcorrections, _asn_ctx), + asn_MAP_NMEAcorrections_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_NMEAcorrections_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NMEAcorrections = { + "NMEAcorrections", + "NMEAcorrections", + &asn_OP_SEQUENCE, + asn_DEF_NMEAcorrections_tags_1, + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + asn_DEF_NMEAcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NMEAcorrections_1, + 6, /* Elements count */ + &asn_SPC_NMEAcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c new file mode 100644 index 000000000..aee450c17 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c @@ -0,0 +1,108 @@ +/*- + * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeEnumerated basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeEnumerated = { + NativeInteger_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + NativeInteger_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + NativeInteger_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + NativeInteger_decode_ber, + NativeInteger_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + NativeInteger_decode_xer, + NativeEnumerated_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + NativeEnumerated_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + NativeEnumerated_decode_oer, + NativeEnumerated_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + NativeEnumerated_decode_uper, + NativeEnumerated_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + NativeEnumerated_decode_aper, + NativeEnumerated_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + NativeEnumerated_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { + "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ + "ENUMERATED", + &asn_OP_NativeEnumerated, + asn_DEF_NativeEnumerated_tags, + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + asn_DEF_NativeEnumerated_tags, /* Same as above */ + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int +NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { + const asn_INTEGER_enum_map_t *a = ap; + const asn_INTEGER_enum_map_t *b = bp; + if(a->nat_value == b->nat_value) + return 0; + if(a->nat_value < b->nat_value) + return -1; + return 1; +} +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c new file mode 100644 index 000000000..5c4c2561d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c @@ -0,0 +1,157 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeEnumerated_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + /* Deal with APER padding */ + if(ct && ct->upper_bound >= 255) { + int padding = 0; + padding = (8 - (pd->moved % 8)) % 8; + ASN_DEBUG("For NativeEnumerated %s,offset = %zu Padding bits = %d", + td->name, pd->moved, padding); + ASN_DEBUG("For NativeEnumerated %s, upper bound = %llu", + td->name, (unsigned long long)ct->upper_bound); + if(padding > 0) + per_get_few_bits(pd, padding); + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + + /* XXX handle indefinite index length > 64k */ + value = aper_get_nsnnwn(pd, 65537); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + //if(value >= specs->map_count) + // ASN__DECODE_FAILED; + if(value >= specs->map_count) { + ASN_DEBUG("Decoded unknown index value %s = %ld", td->name, value); + /* unknown index. Workaround => set the first enumeration value */ + *native = specs->value2enum[0].nat_value; + return rval; + } + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +asn_enc_rval_t +NativeEnumerated_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0, range_bits = 1; + asn_INTEGER_enum_map_t key; + asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + if(native < 0) ASN__ENCODE_FAILED; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) range_bits = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(range_bits && ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(aper_put_nsnnwn(po, + ct->upper_bound - ct->lower_bound + 1, + value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c new file mode 100644 index 000000000..046afe9e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +NativeEnumerated_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + const asn_INTEGER_enum_map_t *el; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + el = INTEGER_map_value2enum(specs, *native); + if(el) { + er.encoded = + asn__format_to_callback(cb, app_key, "\"%s\"", el->enum_name); + if(er.encoded < 0) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } else { + ASN_DEBUG( + "ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c new file mode 100644 index 000000000..52dbcb860 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c @@ -0,0 +1,144 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static long +asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) { + unsigned long value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (unsigned long)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +asn_dec_rval_t +NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + const uint8_t *b = ptr; + + (void)opt_codec_ctx; + (void)constraints; + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if((*b & 0x80) == 0) { + /* + * X.696 (08/2015) #11.2 Short form for Enumerated. + */ + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = *b; + rval.consumed = 1; + } else { + /* + * X.696 (08/2015) #11.4 Long form for Enumerated. + */ + size_t length = *b & 0x7f; + const uint8_t *bend; + long value; + + if(length < 1 || length > sizeof(*native)) { + ASN__DECODE_FAILED; + } + if((1 + length) > size) { + ASN__DECODE_STARVED; + } + b++; + bend = b + length; + + value = asn__nativeenumerated_convert(b, bend); + if(value < 0) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + ASN__DECODE_FAILED; + } + } + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = value; + + rval.consumed = (1 + length); + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + long native; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + if(native >= 0 && native <= 127) { + /* #11.2 Short form */ + uint8_t b = native; + er.encoded = 1; + if(cb(&b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } else { + /* #11.2 Long form */ + uint8_t buf[1 + sizeof(native)]; + uint8_t *b = &buf[sizeof(native)]; /* Last addressable */ + long final_pattern = -1 * (native < 0); + + for(;;) { + *b-- = native; + native >>= 8; + if(native == final_pattern) { + if(final_pattern) { + if((b[1] & 0x80)) break; + } else { + if(!(b[1] & 0x80)) break; + } + } + } + *b = 0x80 | (&buf[sizeof(native)] - b); + er.encoded = 1 + (&buf[sizeof(native)] - b); + if(cb(b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c new file mode 100644 index 000000000..e2f932a22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeEnumerated_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + if(value >= specs->map_count) + ASN__DECODE_FAILED; + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +asn_enc_rval_t +NativeEnumerated_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0; + asn_INTEGER_enum_map_t key; + const asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c new file mode 100644 index 000000000..e8d6d0deb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +NativeEnumerated_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + const asn_INTEGER_enum_map_t *el; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + el = INTEGER_map_value2enum(specs, *native); + if(el) { + er.encoded = + asn__format_to_callback(cb, app_key, "<%s/>", el->enum_name); + if(er.encoded < 0) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } else { + ASN_DEBUG( + "ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger.c b/src/tmx/Asn_J2735/src/2020/NativeInteger.c new file mode 100644 index 000000000..f0309b0d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger.c @@ -0,0 +1,152 @@ +/*- + * Copyright (c) 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeInteger basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeInteger = { + NativeInteger_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + NativeInteger_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + NativeInteger_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + NativeInteger_decode_ber, + NativeInteger_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + NativeInteger_decode_xer, + NativeInteger_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + NativeInteger_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + NativeInteger_decode_oer, /* OER decoder */ + NativeInteger_encode_oer, /* Canonical OER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + NativeInteger_decode_uper, /* Unaligned PER decoder */ + NativeInteger_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + NativeInteger_decode_aper, /* Aligned PER decoder */ + NativeInteger_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + NativeInteger_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeInteger = { + "INTEGER", /* The ASN.1 type is still INTEGER */ + "INTEGER", + &asn_OP_NativeInteger, + asn_DEF_NativeInteger_tags, + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + asn_DEF_NativeInteger_tags, /* Same as above */ + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +void +NativeInteger_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", + td->name, method, ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(long)); + break; + } +} + +int +NativeInteger_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + (void)td; + + if(aptr && bptr) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + const unsigned long *a = aptr; + const unsigned long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } else { + const long *a = aptr; + const long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } + } else if(!aptr) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c new file mode 100644 index 000000000..1d13070a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (APER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_aper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (APER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, (unsigned long)native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_aper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c new file mode 100644 index 000000000..ed683625c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Decode INTEGER type. + */ +asn_dec_rval_t +NativeInteger_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **nint_ptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + long *native = (long *)*nint_ptr; + asn_dec_rval_t rval; + ber_tlv_len_t length; + + /* + * If the structure is not there, allocate it. + */ + if(native == NULL) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(native == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * ASN.1 encoded INTEGER: buf_ptr, length + * Fill the native, at the same time checking for overflow. + * If overflow occurred, return with RC_FAIL. + */ + { + INTEGER_t tmp; + union { + const void *constbuf; + void *nonconstbuf; + } unconst_buf; + long l; + + unconst_buf.constbuf = buf_ptr; + tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; + tmp.size = length; + + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&tmp, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + + *native = l; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", + (long)rval.consumed, (long)length, td->name, (long)*native); + + return rval; +} + +/* + * Encode the NativeInteger using the standard INTEGER type DER encoder. + */ +asn_enc_rval_t +NativeInteger_encode_der(const asn_TYPE_descriptor_t *sd, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + unsigned long native = *(const unsigned long *)ptr; /* Disable sign ext. */ + asn_enc_rval_t erval = {0,0,0}; + INTEGER_t tmp; + +#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ + + tmp.buf = (uint8_t *)&native; + tmp.size = sizeof(native); + +#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ + uint8_t buf[sizeof(native)]; + uint8_t *p; + + /* Prepare a fake INTEGER */ + for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) + *p = (uint8_t)native; + + tmp.buf = buf; + tmp.size = sizeof(buf); +#endif /* WORDS_BIGENDIAN */ + + /* Encode fake INTEGER */ + erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); + if(erval.structure_ptr == &tmp) { + erval.structure_ptr = ptr; + } + return erval; +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c new file mode 100644 index 000000000..f48f8ecff --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +NativeInteger_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit int */ + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + er.encoded = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) + || cb(scratch, er.encoded, app_key) < 0) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c new file mode 100644 index 000000000..4e900462c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + INTEGER_t tmpint; + INTEGER_t *tmpintptr = &tmpint; + + memset(&tmpint, 0, sizeof(tmpint)); + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + /* + * OPTIMIZATION: Encode directly rather than passing through INTEGER. + * Saves a memory allocation. + */ + rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints, + (void **)&tmpintptr, ptr, size); + if(rval.code != RC_OK) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return rval; + } + + if(specs && specs->field_unsigned) { + unsigned long ul; + int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = ul; + } else { + rval.code = RC_FAIL; + return rval; + } + } else { + long l; + int ok = asn_INTEGER2long(&tmpint, &l) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = l; + } else { + rval.code = RC_FAIL; + return rval; + } + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t tmpint; + long native; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + memset(&tmpint, 0, sizeof(tmpint)); + + ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native); + + if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t er = + INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c new file mode 100644 index 000000000..0602e0d20 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * INTEGER specific human-readable output. + */ +int +NativeInteger_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + const long *native = (const long *)sptr; + char scratch[32]; /* Enough for 64-bit int */ + int ret; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(native) { + long value = *native; + ret = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) ? "%lu" : "%ld", value); + assert(ret > 0 && (size_t)ret < sizeof(scratch)); + if(cb(scratch, ret, app_key) < 0) return -1; + if(specs && (value >= 0 || !specs->field_unsigned)) { + const asn_INTEGER_enum_map_t *el = + INTEGER_map_value2enum(specs, value); + if(el) { + if(cb(" (", 2, app_key) < 0) return -1; + if(cb(el->enum_name, el->enum_len, app_key) < 0) return -1; + if(cb(")", 1, app_key) < 0) return -1; + } + } + return 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c new file mode 100644 index 000000000..0e2cee8e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +NativeInteger_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + long *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (long *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const asn_per_constraints_t *ct; + + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + } + + *sptr = st; + *st = value; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c new file mode 100644 index 000000000..4fc4ba177 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_uper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c new file mode 100644 index 000000000..18ec59af2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +asn_dec_rval_t +NativeInteger_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + INTEGER_t st; + void *st_ptr = (void *)&st; + long *native = (long *)*sptr; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&st, 0, sizeof(st)); + rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, + opt_mname, buf_ptr, size); + if(rval.code == RC_OK) { + long l; + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&st, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + } else { + *native = l; + } + } else { + /* + * Cannot restart from the middle; + * there is no place to save state in the native type. + * Request a continuation from the very beginning. + */ + rval.consumed = 0; + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); + return rval; +} + + +asn_enc_rval_t +NativeInteger_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit int */ + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + er.encoded = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) + || cb(scratch, er.encoded, app_key) < 0) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c new file mode 100644 index 000000000..cbc309bd6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-24B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_24B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_24B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_24B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1 = { + sizeof(struct Node_LL_24B), + offsetof(struct Node_LL_24B, _asn_ctx), + asn_MAP_Node_LL_24B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_24B = { + "Node-LL-24B", + "Node-LL-24B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_24B_tags_1, + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_24B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_24B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_24B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c new file mode 100644 index 000000000..ab56589a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-28B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_28B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_28B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_28B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1 = { + sizeof(struct Node_LL_28B), + offsetof(struct Node_LL_28B, _asn_ctx), + asn_MAP_Node_LL_28B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_28B = { + "Node-LL-28B", + "Node-LL-28B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_28B_tags_1, + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_28B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_28B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_28B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c new file mode 100644 index 000000000..9db742f71 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-32B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_32B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_32B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_32B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1 = { + sizeof(struct Node_LL_32B), + offsetof(struct Node_LL_32B, _asn_ctx), + asn_MAP_Node_LL_32B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_32B = { + "Node-LL-32B", + "Node-LL-32B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_32B_tags_1, + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_32B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_32B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_32B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c new file mode 100644 index 000000000..01ce8b51c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-36B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_36B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_36B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_36B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1 = { + sizeof(struct Node_LL_36B), + offsetof(struct Node_LL_36B, _asn_ctx), + asn_MAP_Node_LL_36B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_36B = { + "Node-LL-36B", + "Node-LL-36B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_36B_tags_1, + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_36B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_36B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_36B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c new file mode 100644 index 000000000..4098c7a11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-44B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_44B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_44B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_44B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1 = { + sizeof(struct Node_LL_44B), + offsetof(struct Node_LL_44B, _asn_ctx), + asn_MAP_Node_LL_44B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_44B = { + "Node-LL-44B", + "Node-LL-44B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_44B_tags_1, + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_44B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_44B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_44B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c new file mode 100644 index 000000000..91a132e0d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LL-48B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_48B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_48B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_48B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1 = { + sizeof(struct Node_LL_48B), + offsetof(struct Node_LL_48B, _asn_ctx), + asn_MAP_Node_LL_48B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_48B = { + "Node-LL-48B", + "Node-LL-48B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_48B_tags_1, + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_48B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_48B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_48B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c new file mode 100644 index 000000000..20e127019 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LLdms-48b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { + sizeof(struct Node_LLdms_48b), + offsetof(struct Node_LLdms_48b, _asn_ctx), + asn_MAP_Node_LLdms_48b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { + "Node-LLdms-48b", + "Node-LLdms-48b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_48b_tags_1, + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLdms_48b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c new file mode 100644 index 000000000..9b5331e00 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LLdms-80b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { + sizeof(struct Node_LLdms_80b), + offsetof(struct Node_LLdms_80b, _asn_ctx), + asn_MAP_Node_LLdms_80b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { + "Node-LLdms-80b", + "Node-LLdms-80b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_80b_tags_1, + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLdms_80b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c new file mode 100644 index 000000000..37121eb18 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-LLmD-64b.h" + +asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { + sizeof(struct Node_LLmD_64b), + offsetof(struct Node_LLmD_64b, _asn_ctx), + asn_MAP_Node_LLmD_64b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { + "Node-LLmD-64b", + "Node-LLmD-64b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLmD_64b_tags_1, + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLmD_64b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c new file mode 100644 index 000000000..18457d9ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-20b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { + sizeof(struct Node_XY_20b), + offsetof(struct Node_XY_20b, _asn_ctx), + asn_MAP_Node_XY_20b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { + "Node-XY-20b", + "Node-XY-20b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_20b_tags_1, + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_20b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_20b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c new file mode 100644 index 000000000..cab823652 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-22b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { + sizeof(struct Node_XY_22b), + offsetof(struct Node_XY_22b, _asn_ctx), + asn_MAP_Node_XY_22b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { + "Node-XY-22b", + "Node-XY-22b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_22b_tags_1, + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_22b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_22b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c new file mode 100644 index 000000000..63ef07247 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-24b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { + sizeof(struct Node_XY_24b), + offsetof(struct Node_XY_24b, _asn_ctx), + asn_MAP_Node_XY_24b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { + "Node-XY-24b", + "Node-XY-24b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_24b_tags_1, + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_24b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_24b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c new file mode 100644 index 000000000..5b3b47c91 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-26b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { + sizeof(struct Node_XY_26b), + offsetof(struct Node_XY_26b, _asn_ctx), + asn_MAP_Node_XY_26b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { + "Node-XY-26b", + "Node-XY-26b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_26b_tags_1, + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_26b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_26b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c new file mode 100644 index 000000000..c34cebb69 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-28b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { + sizeof(struct Node_XY_28b), + offsetof(struct Node_XY_28b, _asn_ctx), + asn_MAP_Node_XY_28b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { + "Node-XY-28b", + "Node-XY-28b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_28b_tags_1, + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_28b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_28b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c new file mode 100644 index 000000000..a3897991e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Node-XY-32b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { + sizeof(struct Node_XY_32b), + offsetof(struct Node_XY_32b, _asn_ctx), + asn_MAP_Node_XY_32b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { + "Node-XY-32b", + "Node-XY-32b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_32b_tags_1, + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_32b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_32b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c new file mode 100644 index 000000000..a9c7c26f6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeLL_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1 = { + asn_MAP_NodeAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL = { + "NodeAttributeLL", + "NodeAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeLL_tags_1, + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c new file mode 100644 index 000000000..3a21944e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeLLList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1 = { + sizeof(struct NodeAttributeLLList), + offsetof(struct NodeAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList = { + "NodeAttributeLLList", + "NodeAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeLLList_tags_1, + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c new file mode 100644 index 000000000..8a09886da --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c @@ -0,0 +1,283 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeSetLL.h" + +#include "NodeAttributeLLList.h" +#include "SegmentAttributeLLList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NodeAttributeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetLL__regional), + offsetof(struct NodeAttributeSetLL__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetLL, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetLL, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetLL, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetLL, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetLL, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetLL, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetLL, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetLL_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1 = { + sizeof(struct NodeAttributeSetLL), + offsetof(struct NodeAttributeSetLL, _asn_ctx), + asn_MAP_NodeAttributeSetLL_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetLL_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL = { + "NodeAttributeSetLL", + "NodeAttributeSetLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetLL_tags_1, + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeAttributeSetLL_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c new file mode 100644 index 000000000..bff41ae8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c @@ -0,0 +1,283 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeSetXY.h" + +#include "NodeAttributeXYList.h" +#include "SegmentAttributeXYList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NodeAttributeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetXY__regional), + offsetof(struct NodeAttributeSetXY__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetXY, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetXY, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetXY, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetXY, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetXY, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetXY, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetXY, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetXY_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1 = { + sizeof(struct NodeAttributeSetXY), + offsetof(struct NodeAttributeSetXY, _asn_ctx), + asn_MAP_NodeAttributeSetXY_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetXY_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY = { + "NodeAttributeSetXY", + "NodeAttributeSetXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetXY_tags_1, + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeAttributeSetXY_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c new file mode 100644 index 000000000..80784df12 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeXY_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1 = { + asn_MAP_NodeAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY = { + "NodeAttributeXY", + "NodeAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeXY_tags_1, + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c new file mode 100644 index 000000000..620e45a21 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeAttributeXYList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1 = { + sizeof(struct NodeAttributeXYList), + offsetof(struct NodeAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList = { + "NodeAttributeXYList", + "NodeAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeXYList_tags_1, + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeLL.c b/src/tmx/Asn_J2735/src/2020/NodeLL.c new file mode 100644 index 000000000..a1e84362b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeLL.c @@ -0,0 +1,87 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeLL.h" + +#include "NodeAttributeSetLL.h" +asn_TYPE_member_t asn_MBR_NodeLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeLL, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeLL, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeLL_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1 = { + sizeof(struct NodeLL), + offsetof(struct NodeLL, _asn_ctx), + asn_MAP_NodeLL_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeLL_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeLL = { + "NodeLL", + "NodeLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeLL_tags_1, + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeLL_1, + 2, /* Elements count */ + &asn_SPC_NodeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeListLL.c b/src/tmx/Asn_J2735/src/2020/NodeListLL.c new file mode 100644 index 000000000..edcee50fa --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeListLL.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeListLL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeListLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeListLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeListLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListLL, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodes" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodes */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1 = { + sizeof(struct NodeListLL), + offsetof(struct NodeListLL, _asn_ctx), + offsetof(struct NodeListLL, present), + sizeof(((struct NodeListLL *)0)->present), + asn_MAP_NodeListLL_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, + 1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListLL = { + "NodeListLL", + "NodeListLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeListLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeListLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeListLL_1, + 1, /* Elements count */ + &asn_SPC_NodeListLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeListXY.c b/src/tmx/Asn_J2735/src/2020/NodeListXY.c new file mode 100644 index 000000000..a11b4ecda --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeListXY.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeListXY.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeListXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeListXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeListXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodes" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.computed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ComputedLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "computed" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1 = { + sizeof(struct NodeListXY), + offsetof(struct NodeListXY, _asn_ctx), + offsetof(struct NodeListXY, present), + sizeof(((struct NodeListXY *)0)->present), + asn_MAP_NodeListXY_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListXY = { + "NodeListXY", + "NodeListXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeListXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeListXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeListXY_1, + 2, /* Elements count */ + &asn_SPC_NodeListXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c new file mode 100644 index 000000000..378248396 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeOffsetPointLL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_24B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_28B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_32B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_36B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_44B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_48B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_NodeOffsetPointLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-LL1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-LL2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-LL3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-LL4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-LL5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-LL6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1 = { + sizeof(struct NodeOffsetPointLL), + offsetof(struct NodeOffsetPointLL, _asn_ctx), + offsetof(struct NodeOffsetPointLL, present), + sizeof(((struct NodeOffsetPointLL *)0)->present), + asn_MAP_NodeOffsetPointLL_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL = { + "NodeOffsetPointLL", + "NodeOffsetPointLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointLL_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c new file mode 100644 index 000000000..d85858a93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeOffsetPointXY-addGrpB.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posA), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_48b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posA" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_80b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 = { + sizeof(struct NodeOffsetPointXY_addGrpB), + offsetof(struct NodeOffsetPointXY_addGrpB, _asn_ctx), + offsetof(struct NodeOffsetPointXY_addGrpB, present), + sizeof(((struct NodeOffsetPointXY_addGrpB *)0)->present), + asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB = { + "NodeOffsetPointXY-addGrpB", + "NodeOffsetPointXY-addGrpB", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointXY_addGrpB_1, + 2, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c new file mode 100644 index 000000000..d9291e5f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeOffsetPointXY.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_20b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_22b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_26b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_28b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_32b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1 = { + sizeof(struct NodeOffsetPointXY), + offsetof(struct NodeOffsetPointXY, _asn_ctx), + offsetof(struct NodeOffsetPointXY, present), + sizeof(((struct NodeOffsetPointXY *)0)->present), + asn_MAP_NodeOffsetPointXY_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY = { + "NodeOffsetPointXY", + "NodeOffsetPointXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointXY_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeSetLL.c b/src/tmx/Asn_J2735/src/2020/NodeSetLL.c new file mode 100644 index 000000000..4b25eff3e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeSetLL.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeSetLL.h" + +#include "NodeLL.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeSetLL_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1 = { + sizeof(struct NodeSetLL), + offsetof(struct NodeSetLL, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetLL = { + "NodeSetLL", + "NodeSetLL", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetLL_tags_1, + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeSetLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeSetLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeSetLL_1, + 1, /* Single element */ + &asn_SPC_NodeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeSetXY.c b/src/tmx/Asn_J2735/src/2020/NodeSetXY.c new file mode 100644 index 000000000..d5ba891da --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeSetXY.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeSetXY.h" + +#include "NodeXY.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeSetXY_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1 = { + sizeof(struct NodeSetXY), + offsetof(struct NodeSetXY, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetXY = { + "NodeSetXY", + "NodeSetXY", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetXY_tags_1, + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeSetXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeSetXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeSetXY_1, + 1, /* Single element */ + &asn_SPC_NodeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NodeXY.c b/src/tmx/Asn_J2735/src/2020/NodeXY.c new file mode 100644 index 000000000..3b1f67a55 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NodeXY.c @@ -0,0 +1,87 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NodeXY.h" + +#include "NodeAttributeSetXY.h" +asn_TYPE_member_t asn_MBR_NodeXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeXY, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeXY, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeXY_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1 = { + sizeof(struct NodeXY), + offsetof(struct NodeXY, _asn_ctx), + asn_MAP_NodeXY_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeXY_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeXY = { + "NodeXY", + "NodeXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeXY_tags_1, + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeXY_1, + 2, /* Elements count */ + &asn_SPC_NodeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c new file mode 100644 index 000000000..7679697b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "NumberOfParticipantsInCluster.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "small" }, + { 2, 6, "medium" }, + { 3, 5, "large" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { + 3, /* large(3) */ + 2, /* medium(2) */ + 1, /* small(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { + asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { + "NumberOfParticipantsInCluster", + "NumberOfParticipantsInCluster", + &asn_OP_NativeEnumerated, + asn_DEF_NumberOfParticipantsInCluster_tags_1, + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NumberOfParticipantsInCluster_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NumberOfParticipantsInCluster_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c new file mode 100644 index 000000000..5cf2d6066 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c @@ -0,0 +1,532 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include +#include /* for CHAR_BIT */ +#include +#include + +/* + * OBJECT IDENTIFIER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OBJECT_IDENTIFIER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)) +}; +asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER = { + ASN__PRIMITIVE_TYPE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OBJECT_IDENTIFIER_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, /* Implemented in terms of a string comparison */ +#if !defined(ASN_DISABLE_BER_SUPPORT) + ber_decode_primitive, + der_encode_primitive, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OBJECT_IDENTIFIER_decode_xer, + OBJECT_IDENTIFIER_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OBJECT_IDENTIFIER_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OBJECT_IDENTIFIER_decode_oer, + OBJECT_IDENTIFIER_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OBJECT_IDENTIFIER_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER = { + "OBJECT IDENTIFIER", + "OBJECT_IDENTIFIER", + &asn_OP_OBJECT_IDENTIFIER, + asn_DEF_OBJECT_IDENTIFIER_tags, + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + asn_DEF_OBJECT_IDENTIFIER_tags, /* Same as above */ + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OBJECT_IDENTIFIER_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +OBJECT_IDENTIFIER_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + if(st && st->buf) { + if(st->size < 1) { + ASN__CTFAIL(app_key, td, sptr, + "%s: at least one numerical value " + "expected (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +static ssize_t +OBJECT_IDENTIFIER_get_first_arcs(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *arc0, asn_oid_arc_t *arc1) { + asn_oid_arc_t value; + + ssize_t rd = OBJECT_IDENTIFIER_get_single_arc(arcbuf, arcbuf_len, &value); + if(rd <= 0) return rd; + + if(value >= 80) { + *arc0 = 2; + *arc1 = value - 80; + } else if(value >= 40) { + *arc0 = 1; + *arc1 = value - 40; + } else { + *arc0 = 0; + *arc1 = value; + } + + return rd; +} + +ssize_t +OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *ret_value) { + const uint8_t *b = arcbuf; + const uint8_t *arcend = arcbuf + arcbuf_len; /* End of arc */ + + if(arcbuf == arcend) { + return 0; + } else { + asn_oid_arc_t accum; + asn_oid_arc_t upper_limit = (ASN_OID_ARC_MAX >> 7); + /* When the value reaches "upper_limit", it can take */ + /* at most one more digit. If it exceeds "upper_limit" */ + /* but there are more digits - it's an Overflow condition */ + /* Gather all bits into the accumulator */ + for(accum = 0; b < arcend; b++) { + accum = (accum << 7) | (*b & ~0x80); + if((*b & 0x80) == 0) { // no more digits + if(accum <= ASN_OID_ARC_MAX) { + *ret_value = accum; + return 1 + (b - arcbuf); + } else { + errno = ERANGE; /* Overflow */ + return -1; + } + } else { // to make sure we aren't wrapping around + if(accum > upper_limit) { + errno = ERANGE; /* Overflow */ + return -1; + } + } + } + errno = EINVAL; + return -1; + } + +} + +ssize_t +OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, + asn_app_consume_bytes_f *cb, void *app_key) { + char scratch[32]; + asn_oid_arc_t arc0 = 0; + asn_oid_arc_t arc1 = 0; + size_t produced = 0; + size_t off = 0; + ssize_t rd; + int ret; + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + + ret = snprintf(scratch, sizeof(scratch), "%"PRIu32".%"PRIu32, arc0, arc1); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) + return -1; + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + assert(off <= st->size); + ret = snprintf(scratch, sizeof(scratch), ".%" PRIu32, arc); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) return -1; + } + } + + if(off != st->size) { + ASN_DEBUG("Could not scan to the end of Object Identifier"); + return -1; + } + + return produced; +} + +ssize_t +OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *st, asn_oid_arc_t *arcs, + size_t arc_slots) { + asn_oid_arc_t arc0 = 0; + asn_oid_arc_t arc1 = 0; + size_t num_arcs = 0; + size_t off; + ssize_t rd; + + if(!st || !st->buf) { + errno = EINVAL; + return -1; + } + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + num_arcs = 2; + switch(arc_slots) { + default: + case 2: + arcs[1] = arc1; + /* Fall through */ + case 1: + arcs[0] = arc0; + /* Fall through */ + case 0: + break; + } + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + if(num_arcs < arc_slots) { + arcs[num_arcs] = arc; + } + num_arcs++; + } + } + + if(off != st->size) { + return -1; + } + + return num_arcs; +} + + +/* + * Save the single value as an object identifier arc. + */ +ssize_t +OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t value) { + /* + * The following conditions must hold: + * assert(arcbuf); + */ + uint8_t scratch[((sizeof(value) * CHAR_BIT + 6) / 7)]; + uint8_t *scratch_end = &scratch[sizeof(scratch)-1]; + uint8_t *b; + size_t result_len; + uint8_t mask; + + for(b = scratch_end, mask = 0; ; mask = 0x80, b--) { + *b = mask | (value & 0x7f); + value >>= 7; + if(!value) { + break; + } + } + + result_len = (scratch_end - b) + 1; + + if(result_len > arcbuf_len) { + return -1; + } + + memcpy(arcbuf, b, result_len); + + return result_len; +} + +int +OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *st, const asn_oid_arc_t *arcs, + size_t arc_slots) { + uint8_t *buf; + uint8_t *bp; + ssize_t wrote; + asn_oid_arc_t arc0; + asn_oid_arc_t arc1; + size_t size; + size_t i; + + if(!st || !arcs || arc_slots < 2) { + errno = EINVAL; + return -1; + } + + arc0 = arcs[0]; + arc1 = arcs[1]; + + if(arc0 <= 1) { + if(arc1 >= 40) { + /* 8.19.4: At most 39 subsequent values (including 0) */ + errno = ERANGE; + return -1; + } + } else if(arc0 == 2) { + if(arc1 > ASN_OID_ARC_MAX - 80) { + errno = ERANGE; + return -1; + } + } else if(arc0 > 2) { + /* 8.19.4: Only three values are allocated from the root node */ + errno = ERANGE; + return -1; + } + + /* + * After above tests it is known that the value of arc0 is completely + * trustworthy (0..2). However, the arc1's value is still meaningless. + */ + + /* + * Roughly estimate the maximum size necessary to encode these arcs. + * This estimation implicitly takes in account the following facts, + * that cancel each other: + * * the first two arcs are encoded in a single value. + * * the first value may require more space (+1 byte) + * * the value of the first arc which is in range (0..2) + */ + size = ((sizeof(asn_oid_arc_t) * CHAR_BIT + 6) / 7) * arc_slots; + bp = buf = (uint8_t *)MALLOC(size + 1); + if(!buf) { + /* ENOMEM */ + return -1; + } + + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arc0 * 40 + arc1); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + + for(i = 2; i < arc_slots; i++) { + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arcs[i]); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + } + + /* + * Replace buffer. + */ + st->size = bp - buf; + bp = st->buf; + st->buf = buf; + st->buf[st->size] = '\0'; + if(bp) FREEMEM(bp); + + return 0; +} + +ssize_t +OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end) { + size_t num_arcs = 0; + const char *oid_end; + enum { + ST_LEADSPACE, + ST_TAILSPACE, + ST_AFTERVALUE, /* Next character ought to be '.' or a space */ + ST_WAITDIGITS /* Next character is expected to be a digit */ + } state = ST_LEADSPACE; + + if(!oid_text || oid_txt_length < -1 || (arcs_count && !arcs)) { + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + errno = EINVAL; + return -1; + } + + if(oid_txt_length == -1) + oid_txt_length = strlen(oid_text); + +#define _OID_CAPTURE_ARC(oid_text, oid_end) \ + do { \ + const char *endp = oid_end; \ + unsigned long value; \ + switch(asn_strtoul_lim(oid_text, &endp, &value)) { \ + case ASN_STRTOX_EXTRA_DATA: \ + case ASN_STRTOX_OK: \ + if(value <= ASN_OID_ARC_MAX) { \ + if(num_arcs < arcs_count) arcs[num_arcs] = value; \ + num_arcs++; \ + oid_text = endp - 1; \ + break; \ + } \ + /* Fall through */ \ + case ASN_STRTOX_ERROR_RANGE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = ERANGE; \ + return -1; \ + case ASN_STRTOX_ERROR_INVAL: \ + case ASN_STRTOX_EXPECT_MORE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = EINVAL; \ + return -1; \ + } \ + } while(0) + + for(oid_end = oid_text + oid_txt_length; oid_text broken OID */ + return -1; + case ST_LEADSPACE: + case ST_WAITDIGITS: + _OID_CAPTURE_ARC(oid_text, oid_end); + state = ST_AFTERVALUE; + continue; + } + break; + default: + /* Unexpected symbols */ + state = ST_WAITDIGITS; + break; + } /* switch() */ + break; + } /* for() */ + + + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + + /* Finalize last arc */ + switch(state) { + case ST_LEADSPACE: + return 0; /* No OID found in input data */ + case ST_WAITDIGITS: + errno = EINVAL; /* Broken OID */ + return -1; + case ST_AFTERVALUE: + case ST_TAILSPACE: + return num_arcs; + } + + errno = EINVAL; /* Broken OID */ + return -1; +} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c new file mode 100644 index 000000000..f105f038e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + + +asn_enc_rval_t +OBJECT_IDENTIFIER_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) { + ASN__ENCODE_FAILED; + } + + er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c new file mode 100644 index 000000000..b0c3a9e84 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +OBJECT_IDENTIFIER_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb("{ ", 2, app_key) < 0) + return -1; + + if(OBJECT_IDENTIFIER__dump_body(st, cb, app_key) < 0) { + return -1; + } + + return (cb(" }", 2, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c new file mode 100644 index 000000000..55093c8e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Generate values from the list of interesting values, or just a random + * value up to the upper limit. + */ +static asn_oid_arc_t +OBJECT_IDENTIFIER__biased_random_arc(asn_oid_arc_t upper_bound) { + const asn_oid_arc_t values[] = {0, 1, 127, 128, 129, 254, 255, 256}; + size_t idx; + + switch(asn_random_between(0, 2)) { + case 0: + idx = asn_random_between(0, sizeof(values) / sizeof(values[0]) - 1); + if(values[idx] < upper_bound) { + return values[idx]; + } + /* Fall through */ + case 1: + return asn_random_between(0, upper_bound); + case 2: + default: + return upper_bound; + } +} + +asn_random_fill_result_t +OBJECT_IDENTIFIER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + OBJECT_IDENTIFIER_t *st; + asn_oid_arc_t arcs[5]; + size_t arcs_len = asn_random_between(2, 5); + size_t i; + + (void)constraints; + + if(max_length < arcs_len) return result_skipped; + + if(*sptr) { + st = *sptr; + } else { + st = CALLOC(1, sizeof(*st)); + } + + arcs[0] = asn_random_between(0, 2); + arcs[1] = OBJECT_IDENTIFIER__biased_random_arc( + arcs[0] <= 1 ? 39 : (ASN_OID_ARC_MAX - 80)); + for(i = 2; i < arcs_len; i++) { + arcs[i] = OBJECT_IDENTIFIER__biased_random_arc(ASN_OID_ARC_MAX); + } + + if(OBJECT_IDENTIFIER_set_arcs(st, arcs, arcs_len)) { + if(st != *sptr) { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } + + *sptr = st; + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c new file mode 100644 index 000000000..706e51a94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static enum xer_pbd_rval +OBJECT_IDENTIFIER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + OBJECT_IDENTIFIER_t *st = (OBJECT_IDENTIFIER_t *)sptr; + const char *chunk_end = (const char *)chunk_buf + chunk_size; + const char *endptr; + asn_oid_arc_t s_arcs[10]; + asn_oid_arc_t *arcs = s_arcs; + ssize_t num_arcs; + ssize_t ret; + + (void)td; + + num_arcs = OBJECT_IDENTIFIER_parse_arcs( + (const char *)chunk_buf, chunk_size, arcs, + sizeof(s_arcs) / sizeof(s_arcs[0]), &endptr); + if(num_arcs < 0) { + /* Expecting more than zero arcs */ + return XPBD_BROKEN_ENCODING; + } else if(num_arcs == 0) { + return XPBD_NOT_BODY_IGNORE; + } + (void)chunk_end; + assert(endptr == chunk_end); + + if((size_t)num_arcs > sizeof(s_arcs)/sizeof(s_arcs[0])) { + arcs = (asn_oid_arc_t *)MALLOC(num_arcs * sizeof(asn_oid_arc_t)); + if(!arcs) return XPBD_SYSTEM_FAILURE; + ret = OBJECT_IDENTIFIER_parse_arcs((const char *)chunk_buf, chunk_size, + arcs, num_arcs, &endptr); + if(ret != num_arcs) + return XPBD_SYSTEM_FAILURE; /* assert?.. */ + } + + /* + * Convert arcs into BER representation. + */ + ret = OBJECT_IDENTIFIER_set_arcs(st, arcs, num_arcs); + if(arcs != s_arcs) FREEMEM(arcs); + + return ret ? XPBD_SYSTEM_FAILURE : XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +OBJECT_IDENTIFIER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname, + buf_ptr, size, OBJECT_IDENTIFIER__xer_body_decode); +} + +asn_enc_rval_t +OBJECT_IDENTIFIER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) { + ASN__ENCODE_FAILED; + } + + er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c new file mode 100644 index 000000000..d0bdeade7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c @@ -0,0 +1,383 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * OCTET STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs = { + sizeof(OCTET_STRING_t), + offsetof(OCTET_STRING_t, _asn_ctx), + ASN_OSUBV_STR +}; +asn_TYPE_operation_t asn_OP_OCTET_STRING = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, /* OCTET STRING generally means a non-ascii sequence */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, /* Unaligned PER decoder */ + OCTET_STRING_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { + "OCTET STRING", /* Canonical name */ + "OCTET_STRING", /* XML tag name */ + &asn_OP_OCTET_STRING, + asn_DEF_OCTET_STRING_tags, + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + asn_DEF_OCTET_STRING_tags, /* Same as above */ + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs +}; + +void +OCTET_STRING_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + + if(!td || !st) + return; + + ASN_DEBUG("Freeing %s as OCTET STRING", td->name); + + if(st->buf) { + FREEMEM(st->buf); + st->buf = 0; + } + +#if !defined(ASN_DISABLE_BER_SUPPORT) + const asn_OCTET_STRING_specifics_t *specs; + asn_struct_ctx_t *ctx; + + specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Remove decode-time stack. + */ + struct _stack *stck; + stck = (struct _stack *)ctx->ptr; + if(stck) { + while(stck->tail) { + struct _stack_el *sel = stck->tail; + stck->tail = sel->prev; + FREEMEM(sel); + } + FREEMEM(stck); + } +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, + td->specifics + ? ((const asn_OCTET_STRING_specifics_t *)(td->specifics)) + ->struct_size + : sizeof(OCTET_STRING_t)); + break; + } +} + +/* + * Conversion routines. + */ +int +OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { + void *buf; + + if(st == 0 || (str == 0 && len)) { + errno = EINVAL; + return -1; + } + + /* + * Clear the OCTET STRING. + */ + if(str == NULL) { + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + return 0; + } + + /* Determine the original string size, if not explicitly given */ + if(len < 0) + len = strlen(str); + + /* Allocate and fill the memory */ + buf = MALLOC(len + 1); + if(buf == NULL) + return -1; + + memcpy(buf, str, len); + ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ + FREEMEM(st->buf); + st->buf = (uint8_t *)buf; + st->size = len; + + return 0; +} + +OCTET_STRING_t * +OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, const char *str, + int len) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st; + + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + if(st && str && OCTET_STRING_fromBuf(st, str, len)) { + FREEMEM(st); + st = NULL; + } + + return st; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +OCTET_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + const OCTET_STRING_t *a = aptr; + const OCTET_STRING_t *b = bptr; + + (void)specs; + assert(!specs || specs->subvariant != ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + return 0; + } + } else { + return ret < 0 ? -1 : 1; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int +OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", + (int)units, lb, ub, unit_bits); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Decode without translation */ + lb = 0; + } else if(pc && pc->code2value) { + if(unit_bits > 16) + return 1; /* FATAL: can't have constrained + * UniversalString with more than + * 16 million code points */ + for(; buf < end; buf += bpc) { + int value; + int code = per_get_few_bits(po, unit_bits); + if(code < 0) return -1; /* WMORE */ + value = pc->code2value(code); + if(value < 0) { + ASN_DEBUG("Code %d (0x%02x) is" + " not in map (%ld..%ld)", + code, code, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = value; break; + case 2: buf[0] = value >> 8; buf[1] = value; break; + case 4: buf[0] = value >> 24; buf[1] = value >> 16; + buf[2] = value >> 8; buf[3] = value; break; + } + } + return 0; + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_get_many_bits(po, buf, 0, unit_bits * units); + } + + for(; buf < end; buf += bpc) { + int32_t code = per_get_few_bits(po, unit_bits); + int32_t ch = code + lb; + if(code < 0) return -1; /* WMORE */ + if(ch > ub) { + ASN_DEBUG("Code %d is out of range (%ld..%ld)", + ch, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = ch; break; + case 2: buf[0] = ch >> 8; buf[1] = ch; break; + case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; + buf[2] = ch >> 8; buf[3] = ch; break; + } + } + + return 0; +} + +int +OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + const uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", + (int)units, lb, ub, unit_bits, bpc); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Encode as is */ + lb = 0; + } else if(pc && pc->value2code) { + for(; buf < end; buf += bpc) { + int code; + uint32_t value; + switch(bpc) { + case 1: value = *(const uint8_t *)buf; break; + case 2: value = (buf[0] << 8) | buf[1]; break; + case 4: value = (buf[0] << 24) | (buf[1] << 16) + | (buf[2] << 8) | buf[3]; break; + default: return -1; + } + code = pc->value2code(value); + if(code < 0) { + ASN_DEBUG("Character %d (0x%02x) is" + " not in map (%ld..%ld)", + *buf, *buf, lb, ub); + return -1; + } + if(per_put_few_bits(po, code, unit_bits)) + return -1; + } + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_put_many_bits(po, buf, unit_bits * units); + } + + for(ub -= lb; buf < end; buf += bpc) { + int ch; + uint32_t value; + switch(bpc) { + case 1: + value = *(const uint8_t *)buf; + break; + case 2: + value = (buf[0] << 8) | buf[1]; + break; + case 4: + value = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]; + break; + default: + return -1; + } + ch = value - lb; + if(ch < 0 || ch > ub) { + ASN_DEBUG("Character %d (0x%02x) is out of range (%ld..%ld)", *buf, + value, lb, ub + lb); + return -1; + } + if(per_put_few_bits(po, ch, unit_bits)) return -1; + } + + return 0; +} +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c new file mode 100644 index 000000000..0373fe6ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c @@ -0,0 +1,414 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; + +asn_dec_rval_t +OCTET_STRING_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: +/* + case ASN_OSUBV_ANY: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); +*/ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; +*/ + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %lld .. %lld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + (long long int)csiz->lower_bound, (long long int)csiz->upper_bound, + csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + cval = &asn_DEF_OCTET_STRING_constraints.value; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + /* X.691 #16 NOTE 1 for fixed length (<= 16 bits) strings */ + if (st->size > 2 || csiz->range_bits != 0) { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + if(bpc) { + ASN_DEBUG("Decoding OCTET STRING size %lld", + (long long int)csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Decoding BIT STRING size %lld", + (long long int)csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + if(bpc == 0) { + int ubs = (csiz->upper_bound & 0x7); + st->bits_unused = ubs ? 8 - ubs : 0; + } + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + repeat = 0; + /* Get the PER length */ + if (csiz->upper_bound - csiz->lower_bound == 0) + /* Indefinite length case */ + raw_len = aper_get_length(pd, -1, -1, csiz->effective_bits, &repeat); + else + raw_len = aper_get_length(pd, csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + raw_len += csiz->lower_bound; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + + /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings */ + if ((raw_len > 2) || (csiz->upper_bound > 2) || (csiz->range_bits != 0)) + { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + + if(bpc) { + len_bytes = raw_len * bpc; + len_bits = len_bytes * unit_bits; + } else { + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) + st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + } + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + if(bpc) { + ret = OCTET_STRING_per_get_characters(pd, + &st->buf[st->size], + raw_len, bpc, + unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ret = per_get_many_bits(pd, &st->buf[st->size], + 0, len_bits); + } + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + unsigned int sizeinunits; + const uint8_t *buf; + int ret; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: +/* + case ASN_OSUBV_ANY: + ASN__ENCODE_FAILED; +*/ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + sizeinunits = st->size * 8 - (st->bits_unused & 0x07); + ASN_DEBUG("BIT STRING of %d bytes", + sizeinunits); + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* + if(cval->flags & APC_CONSTRAINED) + unit_bits = 8; +*/ + bpc = OS__BPC_CHAR; + sizeinunits = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + sizeinunits = st->size / 2; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + sizeinunits = st->size / 4; + break; + } + + ASN_DEBUG("Encoding %s into %d units of %d bits" + " (%lld..%lld, effective %d)%s", + td->name, sizeinunits, unit_bits, + (long long int)csiz->lower_bound, + (long long int)csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out wheter size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((int)sizeinunits < csiz->lower_bound + || (int)sizeinunits > csiz->upper_bound) { + if(ct_extensible) { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else + ASN__ENCODE_FAILED; + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits >= 0) { + ASN_DEBUG("Encoding %zu bytes (%lld), length in %d bits", + st->size, (long long int)(sizeinunits - csiz->lower_bound), + csiz->effective_bits); + if (csiz->effective_bits > 0) { + ret = aper_put_length(po, csiz->lower_bound, csiz->upper_bound, + sizeinunits - csiz->lower_bound, NULL); + if(ret < 0) ASN__ENCODE_FAILED; + } + if (csiz->effective_bits > 0 || (st->size > 2) + || (csiz->upper_bound > (2 * 8 / unit_bits)) + || (csiz->range_bits != 0)) + { /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings*/ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + } + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, st->buf, + sizeinunits, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + } else { + ret = per_put_many_bits(po, st->buf, + sizeinunits * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %zu bytes", st->size); + + if(sizeinunits == 0) { + if(aper_put_length(po, -1, -1, 0, NULL) < 0) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + buf = st->buf; + while(sizeinunits) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, -1, sizeinunits, &need_eom); + + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %ld of %ld", + (long)maySave, (long)sizeinunits); + + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, buf, maySave, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + } else { + ret = per_put_many_bits(po, buf, maySave * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + + if(bpc) + buf += maySave * bpc; + else + buf += maySave >> 3; + sizeinunits -= maySave; + assert(!(maySave & 0x07) || !sizeinunits); + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c new file mode 100644 index 000000000..9530eaedb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c @@ -0,0 +1,525 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef _CH_PHASE +#define _CH_PHASE(ctx, inc) do {\ + if(ctx->phase == 0)\ + ctx->context = 0;\ + ctx->phase += inc;\ + } while(0) + +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) +#undef PREV_PHASE +#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) + +#undef ADVANCE +#define ADVANCE(num_bytes) do {\ + size_t num = (num_bytes);\ + buf_ptr = ((const char *)buf_ptr) + num;\ + size -= num;\ + consumed_myself += num;\ + } while(0) + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +#undef APPEND +#define APPEND(bufptr, bufsize) do {\ + size_t _bs = (bufsize); /* Append size */\ + size_t _ns = ctx->context; /* Allocated now */\ + size_t _es = st->size + _bs; /* Expected size */\ + /* int is really a typeof(st->size): */\ + if((int)_es < 0) RETURN(RC_FAIL);\ + if(_ns <= _es) {\ + void *ptr;\ + /* Be nice and round to the memory allocator */\ + do { _ns = _ns ? _ns << 1 : 16; }\ + while(_ns <= _es);\ + /* int is really a typeof(st->size): */\ + if((int)_ns < 0) RETURN(RC_FAIL);\ + ptr = REALLOC(st->buf, _ns);\ + if(ptr) {\ + st->buf = (uint8_t *)ptr;\ + ctx->context = _ns;\ + } else {\ + RETURN(RC_FAIL);\ + }\ + ASN_DEBUG("Reallocating into %ld", (long)_ns);\ + }\ + memcpy(st->buf + st->size, bufptr, _bs);\ + /* Convenient nul-termination */\ + st->buf[_es] = '\0';\ + st->size = _es;\ + } while(0) + +/* + * The main reason why ASN.1 is still alive is that too much time and effort + * is necessary for learning it more or less adequately, thus creating a gut + * necessity to demonstrate that acquired skill everywhere afterwards. + * No, I am not going to explain what the following stuff is. + */ +static struct _stack_el * +OS__add_stack_el(struct _stack *st) { + struct _stack_el *nel; + + /* + * Reuse the old stack frame or allocate a new one. + */ + if(st->cur_ptr && st->cur_ptr->next) { + nel = st->cur_ptr->next; + nel->bits_chopped = 0; + nel->got = 0; + /* Retain the nel->cont_level, it's correct. */ + } else { + nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); + if(nel == NULL) + return NULL; + + if(st->tail) { + /* Increase a subcontainment depth */ + nel->cont_level = st->tail->cont_level + 1; + st->tail->next = nel; + } + nel->prev = st->tail; + st->tail = nel; + } + + st->cur_ptr = nel; + + return nel; +} + +static struct _stack * +_new_stack(void) { + return (struct _stack *)CALLOC(1, sizeof(struct _stack)); +} + +/* + * Decode OCTET STRING type. + */ +asn_dec_rval_t +OCTET_STRING_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + asn_dec_rval_t rval; + asn_struct_ctx_t *ctx; + ssize_t consumed_myself = 0; + struct _stack *stck; /* Expectations stack structure */ + struct _stack_el *sel = 0; /* Stack element */ + int tlv_constr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + + ASN_DEBUG("Decoding %s as %s (frame %ld)", + td->name, + (type_variant == ASN_OSUBV_STR) ? + "OCTET STRING" : "OS-SpecialCase", + (long)size); + + /* + * Create the string if does not exist. + */ + if(st == NULL) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) RETURN(RC_FAIL); + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + switch(ctx->phase) { + case 0: + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, ctx, + buf_ptr, size, tag_mode, -1, + &ctx->left, &tlv_constr); + if(rval.code != RC_OK) + return rval; + + if(tlv_constr) { + /* + * Complex operation, requires stack of expectations. + */ + ctx->ptr = _new_stack(); + if(!ctx->ptr) { + RETURN(RC_FAIL); + } + } else { + /* + * Jump into stackless primitive decoding. + */ + _CH_PHASE(ctx, 3); + if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) + APPEND(buf_ptr, rval.consumed); + ADVANCE(rval.consumed); + goto phase3; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + phase1: + /* + * Fill the stack with expectations. + */ + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + do { + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_tag_t expected_tag; + ssize_t tl, ll, tlvl; + /* This one works even if (sel->left == -1) */ + size_t Left = ((!sel||(size_t)sel->left >= size) + ?size:(size_t)sel->left); + + + ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", (void *)sel, + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)(sel?sel->got:0) + ); + if(sel && sel->left <= 0 && sel->want_nulls == 0) { + if(sel->prev) { + struct _stack_el *prev = sel->prev; + if(prev->left != -1) { + if(prev->left < sel->got) + RETURN(RC_FAIL); + prev->left -= sel->got; + } + prev->got += sel->got; + sel = stck->cur_ptr = prev; + if(!sel) break; + tlv_constr = 1; + continue; + } else { + sel = stck->cur_ptr = 0; + break; /* Nothing to wait */ + } + } + + tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); + ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", + (long)size, (long)Left, sel?"":"!", + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)tl); + switch(tl) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); + + ll = ber_fetch_length(tlv_constr, + (const char *)buf_ptr + tl,Left - tl,&tlv_len); + ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", + ber_tlv_tag_string(tlv_tag), tlv_constr, + (long)Left, (long)tl, (long)tlv_len, (long)ll); + switch(ll) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + if(sel && sel->want_nulls + && ((const uint8_t *)buf_ptr)[0] == 0 + && ((const uint8_t *)buf_ptr)[1] == 0) + { + ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); + + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND("\0\0", 2); + + ADVANCE(2); + sel->got += 2; + if(sel->left != -1) { + sel->left -= 2; /* assert(sel->left >= 2) */ + } + + sel->want_nulls--; + if(sel->want_nulls == 0) { + /* Move to the next expectation */ + sel->left = 0; + tlv_constr = 1; + } + + continue; + } + + /* + * Set up expected tags, + * depending on ASN.1 type being decoded. + */ + switch(type_variant) { + case ASN_OSUBV_BIT: + /* X.690: 8.6.4.1, NOTE 2 */ + /* Fall through */ + case ASN_OSUBV_STR: + default: + if(sel) { + unsigned level = sel->cont_level; + if(level < td->all_tags_count) { + expected_tag = td->all_tags[level]; + break; + } else if(td->all_tags_count) { + expected_tag = td->all_tags + [td->all_tags_count - 1]; + break; + } + /* else, Fall through */ + } + /* Fall through */ + case ASN_OSUBV_ANY: + expected_tag = tlv_tag; + break; + } + + if(tlv_tag != expected_tag) { + char buf[2][32]; + ber_tlv_tag_snprint(tlv_tag, + buf[0], sizeof(buf[0])); + ber_tlv_tag_snprint(td->tags[td->tags_count-1], + buf[1], sizeof(buf[1])); + ASN_DEBUG("Tag does not match expectation: %s != %s", + buf[0], buf[1]); + RETURN(RC_FAIL); + } + + tlvl = tl + ll; /* Combined length of T and L encoding */ + if((tlv_len + tlvl) < 0) { + /* tlv_len value is too big */ + ASN_DEBUG("TLV encoding + length (%ld) is too big", + (long)tlv_len); + RETURN(RC_FAIL); + } + + /* + * Append a new expectation. + */ + sel = OS__add_stack_el(stck); + if(!sel) RETURN(RC_FAIL); + + sel->tag = tlv_tag; + + sel->want_nulls = (tlv_len==-1); + if(sel->prev && sel->prev->left != -1) { + /* Check that the parent frame is big enough */ + if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) + RETURN(RC_FAIL); + if(tlv_len == -1) + sel->left = sel->prev->left - tlvl; + else + sel->left = tlv_len; + } else { + sel->left = tlv_len; + } + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND(buf_ptr, tlvl); + sel->got += tlvl; + ADVANCE(tlvl); + + ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%u", + (long)sel->got, (long)sel->left, + sel->want_nulls, sel->cont_level); + + } while(tlv_constr); + if(sel == NULL) { + /* Finished operation, "phase out" */ + ASN_DEBUG("Phase out"); + _CH_PHASE(ctx, +3); + break; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 2: + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", + (long)sel->left, (long)size, (long)sel->got, + sel->want_nulls); + { + ber_tlv_len_t len; + + assert(sel->left >= 0); + + len = ((ber_tlv_len_t)size < sel->left) + ? (ber_tlv_len_t)size : sel->left; + if(len > 0) { + if(type_variant == ASN_OSUBV_BIT + && sel->bits_chopped == 0) { + /* Put the unused-bits-octet away */ + st->bits_unused = *(const uint8_t *)buf_ptr; + APPEND(((const char *)buf_ptr+1), (len - 1)); + sel->bits_chopped = 1; + } else { + APPEND(buf_ptr, len); + } + ADVANCE(len); + sel->left -= len; + sel->got += len; + } + + if(sel->left) { + ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", + (long)sel->left, (long)size, sel->want_nulls); + RETURN(RC_WMORE); + } + + PREV_PHASE(ctx); + goto phase1; + } + break; + case 3: + phase3: + /* + * Primitive form, no stack required. + */ + assert(ctx->left >= 0); + + if(size < (size_t)ctx->left) { + if(!size) RETURN(RC_WMORE); + if(type_variant == ASN_OSUBV_BIT && !ctx->context) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, size); + assert(ctx->context > 0); + ctx->left -= size; + ADVANCE(size); + RETURN(RC_WMORE); + } else { + if(type_variant == ASN_OSUBV_BIT + && !ctx->context && ctx->left) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, ctx->left); + ADVANCE(ctx->left); + ctx->left = 0; + + NEXT_PHASE(ctx); + } + break; + } + + if(sel) { + ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", + (void *)sel->prev, sel->want_nulls, + (long)sel->left, (long)sel->got, (long)size); + if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { + RETURN(RC_WMORE); + } + } + + /* + * BIT STRING-specific processing. + */ + if(type_variant == ASN_OSUBV_BIT) { + if(st->size) { + if(st->bits_unused < 0 || st->bits_unused > 7) { + RETURN(RC_FAIL); + } + /* Finalize BIT STRING: zero out unused bits. */ + st->buf[st->size-1] &= 0xff << st->bits_unused; + } else { + if(st->bits_unused) { + RETURN(RC_FAIL); + } + } + } + + ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", + (long)consumed_myself, td->name, + (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", + (long)st->size); + + + RETURN(RC_OK); +} + +/* + * Encode OCTET STRING type using DER. + */ +asn_enc_rval_t +OCTET_STRING_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 0, 0, 0 }; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + int fix_last_byte = 0; + + ASN_DEBUG("%s %s as OCTET STRING", + cb?"Estimating":"Encoding", td->name); + + /* + * Write tags. + */ + if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { + er.encoded = der_write_tags(td, + (type_variant == ASN_OSUBV_BIT) + st->size, + tag_mode, type_variant == ASN_OSUBV_ANY, tag, + cb, app_key); + if(er.encoded == -1) { + er.failed_type = td; + er.structure_ptr = sptr; + return er; + } + } else { + /* Disallow: [] IMPLICIT ANY */ + assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); + er.encoded = 0; + } + + if(!cb) { + er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; + ASN__ENCODED_OK(er); + } + + /* + * Prepare to deal with the last octet of BIT STRING. + */ + if(type_variant == ASN_OSUBV_BIT) { + uint8_t b = st->bits_unused & 0x07; + if(b && st->size) fix_last_byte = 1; + ASN__CALLBACK(&b, 1); + } + + /* Invoke callback for the main part of the buffer */ + ASN__CALLBACK(st->buf, st->size - fix_last_byte); + + /* The last octet should be stripped off the unused bits */ + if(fix_last_byte) { + uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); + ASN__CALLBACK(&b, 1); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c new file mode 100644 index 000000000..d744cc3e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c @@ -0,0 +1,148 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +asn_enc_rval_t +OCTET_STRING_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + ASN__CALLBACK("\"", 1); + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + ASN__CALLBACK(scratch, p-scratch); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + } + if(p - scratch) { + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + } + ASN__CALLBACK("\"", 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +static const struct OCTET_STRING__jer_escape_table_s { + const char *string; + int size; +} OCTET_STRING__jer_escape_table[] = { +#define OSXET(s) { s, sizeof(s) - 1 } + OSXET("\074\156\165\154\057\076"), /* */ + OSXET("\074\163\157\150\057\076"), /* */ + OSXET("\074\163\164\170\057\076"), /* */ + OSXET("\074\145\164\170\057\076"), /* */ + OSXET("\074\145\157\164\057\076"), /* */ + OSXET("\074\145\156\161\057\076"), /* */ + OSXET("\074\141\143\153\057\076"), /* */ + OSXET("\074\142\145\154\057\076"), /* */ + OSXET("\074\142\163\057\076"), /* */ + OSXET("\011"), /* \t */ + OSXET("\012"), /* \n */ + OSXET("\074\166\164\057\076"), /* */ + OSXET("\074\146\146\057\076"), /* */ + OSXET("\015"), /* \r */ + OSXET("\074\163\157\057\076"), /* */ + OSXET("\074\163\151\057\076"), /* */ + OSXET("\074\144\154\145\057\076"), /* */ + OSXET("\074\144\143\061\057\076"), /* */ + OSXET("\074\144\143\062\057\076"), /* */ + OSXET("\074\144\143\063\057\076"), /* */ + OSXET("\074\144\143\064\057\076"), /* */ + OSXET("\074\156\141\153\057\076"), /* */ + OSXET("\074\163\171\156\057\076"), /* */ + OSXET("\074\145\164\142\057\076"), /* */ + OSXET("\074\143\141\156\057\076"), /* */ + OSXET("\074\145\155\057\076"), /* */ + OSXET("\074\163\165\142\057\076"), /* */ + OSXET("\074\145\163\143\057\076"), /* */ + OSXET("\074\151\163\064\057\076"), /* */ + OSXET("\074\151\163\063\057\076"), /* */ + OSXET("\074\151\163\062\057\076"), /* */ + OSXET("\074\151\163\061\057\076"), /* */ + { 0, 0 }, /* " " */ + { 0, 0 }, /* ! */ + { 0, 0 }, /* \" */ + { 0, 0 }, /* # */ + { 0, 0 }, /* $ */ + { 0, 0 }, /* % */ + OSXET("\046\141\155\160\073"), /* & */ + { 0, 0 }, /* ' */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ + {0,0},{0,0},{0,0},{0,0}, /* 89:; */ + OSXET("\046\154\164\073"), /* < */ + { 0, 0 }, /* = */ + OSXET("\046\147\164\073"), /* > */ +}; + +asn_enc_rval_t +OCTET_STRING_encode_jer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + uint8_t *buf, *end; + uint8_t *ss; /* Sequence start */ + ssize_t encoded_len = 0; + + (void)ilevel; /* Unused argument */ + (void)flags; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + buf = st->buf; + end = buf + st->size; + for(ss = buf; buf < end; buf++) { + unsigned int ch = *buf; + int s_len; /* Special encoding sequence length */ + + /* + * Escape certain characters: X.680/11.15 + */ + if(ch < sizeof(OCTET_STRING__jer_escape_table) + / sizeof(OCTET_STRING__jer_escape_table[0]) + && (s_len = OCTET_STRING__jer_escape_table[ch].size)) { + if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) + || cb(OCTET_STRING__jer_escape_table[ch].string, s_len, app_key) < 0) + ASN__ENCODE_FAILED; + encoded_len += (buf - ss) + s_len; + ss = buf + 1; + } + } + + encoded_len += (buf - ss); + if((buf - ss) && cb(ss, buf - ss, app_key) < 0) + ASN__ENCODE_FAILED; + + er.encoded = encoded_len; + ASN__ENCODED_OK(er); +} + diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c new file mode 100644 index 000000000..e69d0a6a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING"); + ASN__DECODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + (void)opt_codec_ctx; + + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = unit_bytes * ct_size; + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length % unit_bytes != 0) { + ASN_DEBUG( + "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "", + expected_length, unit_bytes); + ASN__DECODE_FAILED; + } + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_enc_rval_t er = {0, 0, 0}; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size); + + if(ct_size >= 0) { + /* + * Check that available data matches the constraint + */ + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING"); + ASN__ENCODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + if(st->size != unit_bytes * (size_t)ct_size) { + ASN_DEBUG( + "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE " + "constraint (%" ASN_PRI_SIZE ")", + td->name, st->size, ct_size); + ASN__ENCODE_FAILED; + } + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + } + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c new file mode 100644 index 000000000..6daa33e9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +OCTET_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + (void)td; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = (buf == NULL)? NULL : buf + st->size; + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + _i_INDENT(1); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Remove the tail space */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + return 0; +} + +int +OCTET_STRING_print_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st && (st->buf || !st->size)) { + return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c new file mode 100644 index 000000000..5c8b0648e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c @@ -0,0 +1,209 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Biased function for randomizing character values around their limits. + */ +static uint32_t +OCTET_STRING__random_char(unsigned long lb, unsigned long ub) { + assert(lb <= ub); + switch(asn_random_between(0, 16)) { + case 0: + if(lb < ub) return lb + 1; + /* Fall through */ + case 1: + return lb; + case 2: + if(lb < ub) return ub - 1; + /* Fall through */ + case 3: + return ub; + default: + return asn_random_between(lb, ub); + } +} + +asn_random_fill_result_t +OCTET_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + unsigned int unit_bytes = 1; + unsigned long clb = 0; /* Lower bound on char */ + unsigned long cub = 255; /* Higher bound on char value */ + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_len; + OCTET_STRING_t *st; + + if(max_length == 0 && !*sptr) return result_skipped; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + /* Handled by BIT_STRING itself. */ + return result_failed; + case ASN_OSUBV_STR: + unit_bytes = 1; + clb = 0; + cub = 255; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + clb = 0; + cub = 65535; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + clb = 0; + cub = 0x10FFFF; + break; + } + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_SEMI_CONSTRAINED) { + clb = pc->lower_bound; + } else if(pc->flags & APC_CONSTRAINED) { + clb = pc->lower_bound; + cub = pc->upper_bound; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + rnd_len = + OCTET_STRING_random_length_constrained(td, constraints, max_length); + + buf = CALLOC(unit_bytes, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[unit_bytes * rnd_len]; + + switch(unit_bytes) { + case 1: + for(b = buf; b < bend; b += unit_bytes) { + *(uint8_t *)b = OCTET_STRING__random_char(clb, cub); + } + *(uint8_t *)b = 0; + break; + case 2: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 8; + b[1] = code; + } + *(uint16_t *)b = 0; + break; + case 4: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 24; + b[1] = code >> 16; + b[2] = code >> 8; + b[3] = code; + } + *(uint32_t *)b = 0; + break; + } + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = unit_bytes * rnd_len; + + result_ok.length = st->size; + return result_ok; +} + +size_t +OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *td, + const asn_encoding_constraints_t *constraints, size_t max_length) { + const unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + size_t rnd_len; + + /* Figure out how far we should go */ + rnd_len = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length <= (size_t)pc->lower_bound) { + return pc->lower_bound; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_len = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_len = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_len from the table */ + if(rnd_len <= max_length) { + break; + } + /* Fall through */ + default: + rnd_len = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_len = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_len = asn_random_between(0, max_length); + } + } else { +#else + if(!constraints) constraints = &td->encoding_constraints; + { +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + if(rnd_len > max_length) { + rnd_len = asn_random_between(0, max_length); + } + } + + return rnd_len; +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c new file mode 100644 index 000000000..80130cadc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c @@ -0,0 +1,319 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; + +asn_dec_rval_t +OCTET_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); + break; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + if(bpc) { + ASN_DEBUG("Encoding OCTET STRING size %ld", + csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Encoding BIT STRING size %ld", + csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len * bpc; + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = OCTET_STRING_per_get_characters(pd, &st->buf[st->size], raw_len, + bpc, unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + size_t size_in_units; + const uint8_t *buf; + int ret; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN__ENCODE_FAILED; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + size_in_units = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + size_in_units = st->size >> 1; + if(st->size & 1) { + ASN_DEBUG("%s string size is not modulo 2", td->name); + ASN__ENCODE_FAILED; + } + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + size_in_units = st->size >> 2; + if(st->size & 3) { + ASN_DEBUG("%s string size is not modulo 4", td->name); + ASN__ENCODE_FAILED; + } + break; + } + + ASN_DEBUG("Encoding %s into %" ASN_PRI_SIZE " units of %d bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_units, unit_bits, + csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_units < csiz->lower_bound + || (ssize_t)size_in_units > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes (%ld), length in %d bits", st->size, + size_in_units - csiz->lower_bound, csiz->effective_bits); + ret = per_put_few_bits(po, size_in_units - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = OCTET_STRING_per_put_characters(po, st->buf, size_in_units, bpc, + unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " in units", size_in_units); + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size_in_units, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "%s", may_save, size_in_units, + need_eom ? ",+EOM" : ""); + + ret = OCTET_STRING_per_put_characters(po, buf, may_save, bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save * bpc; + size_in_units -= may_save; + assert(!(may_save & 0x07) || !size_in_units); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_units); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c new file mode 100644 index 000000000..490f362a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c @@ -0,0 +1,627 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +asn_enc_rval_t +OCTET_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + if(flags & XER_F_CANONICAL) { + char *scend = scratch + (sizeof(scratch) - 2); + for(; buf < end; buf++) { + if(p >= scend) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + } + + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + } else { + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + ASN__CALLBACK(scratch, p-scratch); + p = scratch; + ASN__TEXT_INDENT(1, ilevel); + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + if(p - scratch) { + p--; /* Remove the tail space */ + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + if(st->size > 16) + ASN__TEXT_INDENT(1, ilevel-1); + } + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +static const struct OCTET_STRING__xer_escape_table_s { + const char *string; + int size; +} OCTET_STRING__xer_escape_table[] = { +#define OSXET(s) { s, sizeof(s) - 1 } + OSXET("\074\156\165\154\057\076"), /* */ + OSXET("\074\163\157\150\057\076"), /* */ + OSXET("\074\163\164\170\057\076"), /* */ + OSXET("\074\145\164\170\057\076"), /* */ + OSXET("\074\145\157\164\057\076"), /* */ + OSXET("\074\145\156\161\057\076"), /* */ + OSXET("\074\141\143\153\057\076"), /* */ + OSXET("\074\142\145\154\057\076"), /* */ + OSXET("\074\142\163\057\076"), /* */ + OSXET("\011"), /* \t */ + OSXET("\012"), /* \n */ + OSXET("\074\166\164\057\076"), /* */ + OSXET("\074\146\146\057\076"), /* */ + OSXET("\015"), /* \r */ + OSXET("\074\163\157\057\076"), /* */ + OSXET("\074\163\151\057\076"), /* */ + OSXET("\074\144\154\145\057\076"), /* */ + OSXET("\074\144\143\061\057\076"), /* */ + OSXET("\074\144\143\062\057\076"), /* */ + OSXET("\074\144\143\063\057\076"), /* */ + OSXET("\074\144\143\064\057\076"), /* */ + OSXET("\074\156\141\153\057\076"), /* */ + OSXET("\074\163\171\156\057\076"), /* */ + OSXET("\074\145\164\142\057\076"), /* */ + OSXET("\074\143\141\156\057\076"), /* */ + OSXET("\074\145\155\057\076"), /* */ + OSXET("\074\163\165\142\057\076"), /* */ + OSXET("\074\145\163\143\057\076"), /* */ + OSXET("\074\151\163\064\057\076"), /* */ + OSXET("\074\151\163\063\057\076"), /* */ + OSXET("\074\151\163\062\057\076"), /* */ + OSXET("\074\151\163\061\057\076"), /* */ + { 0, 0 }, /* " " */ + { 0, 0 }, /* ! */ + { 0, 0 }, /* \" */ + { 0, 0 }, /* # */ + { 0, 0 }, /* $ */ + { 0, 0 }, /* % */ + OSXET("\046\141\155\160\073"), /* & */ + { 0, 0 }, /* ' */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ + {0,0},{0,0},{0,0},{0,0}, /* 89:; */ + OSXET("\046\154\164\073"), /* < */ + { 0, 0 }, /* = */ + OSXET("\046\147\164\073"), /* > */ +}; + +static int +OS__check_escaped_control_char(const void *buf, int size) { + size_t i; + /* + * Inefficient algorithm which translates the escape sequences + * defined above into characters. Returns -1 if not found. + * TODO: replace by a faster algorithm (bsearch(), hash or + * nested table lookups). + */ + for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { + const struct OCTET_STRING__xer_escape_table_s *el; + el = &OCTET_STRING__xer_escape_table[i]; + if(el->size == size && memcmp(buf, el->string, size) == 0) + return i; + } + return -1; +} + +static int +OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { + /* + * This might be one of the escape sequences + * for control characters. Check it out. + * #11.15.5 + */ + int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); + if(control_char >= 0) { + OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; + void *p = REALLOC(st->buf, st->size + 2); + if(p) { + st->buf = (uint8_t *)p; + st->buf[st->size++] = control_char; + st->buf[st->size] = '\0'; /* nul-termination */ + return 0; + } + } + + return -1; /* No, it's not */ +} + +asn_enc_rval_t +OCTET_STRING_encode_xer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + uint8_t *buf, *end; + uint8_t *ss; /* Sequence start */ + ssize_t encoded_len = 0; + + (void)ilevel; /* Unused argument */ + (void)flags; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + buf = st->buf; + end = buf + st->size; + for(ss = buf; buf < end; buf++) { + unsigned int ch = *buf; + int s_len; /* Special encoding sequence length */ + + /* + * Escape certain characters: X.680/11.15 + */ + if(ch < sizeof(OCTET_STRING__xer_escape_table) + / sizeof(OCTET_STRING__xer_escape_table[0]) + && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { + if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) + || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, app_key) < 0) + ASN__ENCODE_FAILED; + encoded_len += (buf - ss) + s_len; + ss = buf + 1; + } + } + + encoded_len += (buf - ss); + if((buf - ss) && cb(ss, buf - ss, app_key) < 0) + ASN__ENCODE_FAILED; + + er.encoded = encoded_len; + ASN__ENCODED_OK(er); +} + +/* + * Convert from hexadecimal format (cstring): "AB CD EF" + */ +static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *chunk_stop = (const char *)chunk_buf; + const char *p = chunk_stop; + const char *pend = p + chunk_size; + unsigned int clv = 0; + int half = 0; /* Half bit */ + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 1) / 2; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * If something like " a b c " appears here, the " a b":3 will be + * converted, and the rest skipped. That is, unless buf_size is greater + * than chunk_size, then it'll be equivalent to "ABC0". + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + continue; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + clv = (clv << 4) + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + clv = (clv << 4) + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + clv = (clv << 4) + (ch - 0x61 + 10); + break; + default: + *buf = 0; /* JIC */ + return -1; + } + if(half++) { + half = 0; + *buf++ = clv; + chunk_stop = p + 1; + } + } + + /* + * Check partial decoding. + */ + if(half) { + if(have_more) { + /* + * Partial specification is fine, + * because no more more PXER_TEXT data is available. + */ + *buf++ = clv << 4; + chunk_stop = p; + } + } else { + chunk_stop = p; + } + + st->size = buf - st->buf; /* Adjust the buffer size */ + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return (chunk_stop - (const char *)chunk_buf); /* Converted size */ +} + +/* + * Convert from binary format: "00101011101" + */ +static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + BIT_STRING_t *st = (BIT_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = (p == NULL)? NULL : p + chunk_size; + int bits_unused = st->bits_unused & 0x7; + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 7) / 8; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + (void)have_more; + + if(bits_unused == 0) + bits_unused = 8; + else if(st->size) + buf--; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + break; + case 0x30: + case 0x31: + if(bits_unused-- <= 0) { + *++buf = 0; /* Clean the cell */ + bits_unused = 7; + } + *buf |= (ch&1) << bits_unused; + break; + default: + st->bits_unused = bits_unused; + return -1; + } + } + + if(bits_unused == 8) { + st->size = buf - st->buf; + st->bits_unused = 0; + } else { + st->size = buf - st->buf + 1; + st->bits_unused = bits_unused; + } + + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Something like strtod(), but with stricter rules. + */ +static int +OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { + const int32_t last_unicode_codepoint = 0x10ffff; + int32_t val = 0; + const char *p; + + for(p = buf; p < end; p++) { + int ch = *p; + + switch(ch) { + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + val = val * base + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + val = val * base + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + val = val * base + (ch - 0x61 + 10); + break; + case 0x3b: /* ';' */ + *ret_value = val; + return (p - buf) + 1; + default: + return -1; /* Character set error */ + } + + /* Value exceeds the Unicode range. */ + if(val > last_unicode_codepoint) { + return -1; + } + } + + *ret_value = -1; + return (p - buf); +} + +/* + * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" + */ +static ssize_t +OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, + size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + uint8_t *buf; + + /* Reallocate buffer */ + size_t new_size = st->size + chunk_size; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + int len; /* Length of the rest of the chunk */ + + if(ch != 0x26 /* '&' */) { + *buf++ = ch; + continue; /* That was easy... */ + } + + /* + * Process entity reference. + */ + len = chunk_size - (p - (const char *)chunk_buf); + if(len == 1 /* "&" */) goto want_more; + if(p[1] == 0x23 /* '#' */) { + const char *pval; /* Pointer to start of digits */ + int32_t val = 0; /* Entity reference value */ + int base; + + if(len == 2 /* "&#" */) goto want_more; + if(p[2] == 0x78 /* 'x' */) + pval = p + 3, base = 16; + else + pval = p + 2, base = 10; + len = OS__strtoent(base, pval, p + len, &val); + if(len == -1) { + /* Invalid charset. Just copy verbatim. */ + *buf++ = ch; + continue; + } + if(!len || pval[len-1] != 0x3b) goto want_more; + assert(val > 0); + p += (pval - p) + len - 1; /* Advance past entref */ + + if(val < 0x80) { + *buf++ = (char)val; + } else if(val < 0x800) { + *buf++ = 0xc0 | ((val >> 6)); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x10000) { + *buf++ = 0xe0 | ((val >> 12)); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x200000) { + *buf++ = 0xf0 | ((val >> 18)); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x4000000) { + *buf++ = 0xf8 | ((val >> 24)); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else { + *buf++ = 0xfc | ((val >> 30) & 0x1); + *buf++ = 0x80 | ((val >> 24) & 0x3f); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } + } else { + /* + * Ugly, limited parsing of & > < + */ + char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); + if(!sc) goto want_more; + if((sc - p) == 4 + && p[1] == 0x61 /* 'a' */ + && p[2] == 0x6d /* 'm' */ + && p[3] == 0x70 /* 'p' */) { + *buf++ = 0x26; + p = sc; + continue; + } + if((sc - p) == 3) { + if(p[1] == 0x6c) { + *buf = 0x3c; /* '<' */ + } else if(p[1] == 0x67) { + *buf = 0x3e; /* '>' */ + } else { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + if(p[2] != 0x74) { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + buf++; + p = sc; + continue; + } + /* Unsupported entity reference */ + *buf++ = ch; + } + + continue; + want_more: + if(have_more) { + /* + * We know that no more data (of the same type) + * is coming. Copy the rest verbatim. + */ + *buf++ = ch; + continue; + } + chunk_size = (p - (const char *)chunk_buf); + /* Processing stalled: need more data */ + break; + } + + st->size = buf - st->buf; + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Decode OCTET STRING from the XML element's body. + */ +static asn_dec_rval_t +OCTET_STRING__decode_xer( + const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + void **sptr, const char *opt_mname, const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size, int have_more)) { + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t *ctx; /* Per-structure parser context */ + asn_dec_rval_t rval; /* Return value from the decoder */ + int st_allocated; + + /* + * Create the string if does not exist. + */ + if(!st) { + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + *sptr = (void *)st; + if(!st) goto sta_failed; + st_allocated = 1; + } else { + st_allocated = 0; + } + if(!st->buf) { + /* This is separate from above section */ + st->buf = (uint8_t *)CALLOC(1, 1); + if(!st->buf) { + if(st_allocated) { + *sptr = 0; + goto stb_failed; + } else { + goto sta_failed; + } + } + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); + + return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, + buf_ptr, size, + opt_unexpected_tag_decoder, + body_receiver); + +stb_failed: + FREEMEM(st); +sta_failed: + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; +} + +/* + * Decode OCTET STRING from the hexadecimal data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_hex(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, + OCTET_STRING__convert_hexadecimal); +} + +/* + * Decode OCTET STRING from the binary (0/1) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_binary(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, + OCTET_STRING__convert_binary); +} + +/* + * Decode OCTET STRING from the string (ASCII/UTF-8) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_utf8(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, + OCTET_STRING__handle_control_chars, + OCTET_STRING__convert_entrefs); +} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c new file mode 100644 index 000000000..c9afecffe --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_TYPE_operation_t asn_OP_OPEN_TYPE = { + OPEN_TYPE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OPEN_TYPE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OPEN_TYPE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OPEN_TYPE_decode_ber, + OPEN_TYPE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OPEN_TYPE_decode_xer, + OPEN_TYPE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OPEN_TYPE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OPEN_TYPE_decode_oer, + OPEN_TYPE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OPEN_TYPE_decode_uper, + OPEN_TYPE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OPEN_TYPE_decode_aper, + OPEN_TYPE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + 0, /* Random fill is not supported for open type */ +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c new file mode 100644 index 000000000..3e2ab1888 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c @@ -0,0 +1,173 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = aper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(aper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + + +int OPEN_TYPE_aper_is_unknown_type(const asn_TYPE_descriptor_t *td, void *sptr, const asn_TYPE_member_t *elm) { + asn_type_selector_result_t selected; + + if(!elm->type_selector) { + return 1; + } + else { + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + return 1; + } + } + return 0; +} + +asn_dec_rval_t +OPEN_TYPE_aper_unknown_type_discard_bytes (asn_per_data_t *pd) { +#define ASN_DUMMY_BYTES 256 + unsigned char dummy[ASN_DUMMY_BYTES], *dummy_ptr = NULL; + ssize_t bytes; + int repeat; + asn_dec_rval_t rv; + + rv.consumed = 0; + rv.code = RC_FAIL; + + do { + bytes = aper_get_length(pd, -1, -1, -1, &repeat); + if (bytes > 10 * ASN_DUMMY_BYTES) + { + return rv; + } + else if (bytes > ASN_DUMMY_BYTES) + { + dummy_ptr = CALLOC(1, bytes); + if (!dummy_ptr) + return rv; + } + + per_get_many_bits(pd, (dummy_ptr ? dummy_ptr : dummy), 0, bytes << 3); + + if (dummy_ptr) + { + FREEMEM(dummy_ptr); + dummy_ptr = NULL; + } + } while (repeat); + + rv.code = RC_OK; + return rv; +#undef ASN_DUMMY_BYTES +} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c new file mode 100644 index 000000000..7d8948072 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ASN_DEBUG("presence %d\n", selected.presence_index); + + rv = selected.type_descriptor->op->ber_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, ptr, size, + elm->tag_mode); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = consumed_myself; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case RC_FAIL: + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + break; + } + + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; +} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c new file mode 100644 index 000000000..05a5eaad2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + asn_TYPE_member_t *elm, const void *ptr, size_t size) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + size_t ot_ret; + + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, ptr, size); + switch(ot_ret) { + default: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = ot_ret; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case -1: + rv.code = RC_FAIL; + rv.consumed = ot_ret; + break; + case 0: + rv.code = RC_WMORE; + rv.consumed = 0; + break; + } + + if(*memb_ptr2) { + const asn_CHOICE_specifics_t *specs = + selected.type_descriptor->specifics; + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor, + inner_value); + memset(*memb_ptr2, 0, specs->struct_size); + } + } + return rv; +} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c new file mode 100644 index 000000000..2f27bb904 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = uper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(uper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c new file mode 100644 index 000000000..fc38562e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + int xer_context = 0; + ssize_t ch_size; + pxer_chunk_type_e ch_type; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + /* + * Confirm wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_OPENING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = selected.type_descriptor->op->xer_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, NULL, ptr, size); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_FAIL: + /* Point to a best position where failure occurred */ + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + /* Wrt. rv.consumed==0: + * In case a genuine RC_WMORE, the whole Open Type decoding + * will have to be restarted. + */ + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; + } + + /* + * Finalize wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_CLOSING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + rv.consumed += consumed_myself; + + return rv; +} diff --git a/src/tmx/Asn_J2735/src/2020/ObjectCount.c b/src/tmx/Asn_J2735/src/2020/ObjectCount.c new file mode 100644 index 000000000..81a5bb8fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ObjectCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ObjectCount.h" + +int +ObjectCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObjectCount_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectCount = { + "ObjectCount", + "ObjectCount", + &asn_OP_NativeInteger, + asn_DEF_ObjectCount_tags_1, + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + asn_DEF_ObjectCount_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObjectCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObjectCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObjectCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c b/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c new file mode 100644 index 000000000..c311a9291 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c @@ -0,0 +1,91 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * ObjectDescriptor basic type description. + */ +static const ber_tlv_tag_t asn_DEF_ObjectDescriptor_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), /* [UNIVERSAL 7] IMPLICIT ... */ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_ObjectDescriptor = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print_utf8, /* Treat as ASCII subset (it's not) */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer_utf8, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, + 0, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + 0, /* Not supported for ObjectDescriptor */ +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor = { + "ObjectDescriptor", + "ObjectDescriptor", + &asn_OP_ObjectDescriptor, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]) - 1, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_unknown_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c b/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c new file mode 100644 index 000000000..1c82a7ec6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c @@ -0,0 +1,195 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ObstacleDetection.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523L && value <= 541L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_4 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ObstacleDetection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDirection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_POINTER, 2, offsetof(struct ObstacleDetection, description), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "locationDetails" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, dateTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dateTime" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, vertEvent), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vertEvent" + }, +}; +static const int asn_MAP_ObstacleDetection_oms_1[] = { 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_ObstacleDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleDetection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* locationDetails */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dateTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vertEvent */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1 = { + sizeof(struct ObstacleDetection), + offsetof(struct ObstacleDetection, _asn_ctx), + asn_MAP_ObstacleDetection_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ObstacleDetection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDetection = { + "ObstacleDetection", + "ObstacleDetection", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleDetection_tags_1, + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ObstacleDetection_1, + 6, /* Elements count */ + &asn_SPC_ObstacleDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c b/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c new file mode 100644 index 000000000..a8f73bb60 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ObstacleDirection.h" + +int +ObstacleDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using Common_Angle, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { + "ObstacleDirection", + "ObstacleDirection", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDirection_tags_1, + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObstacleDirection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObstacleDirection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObstacleDirection_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c b/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c new file mode 100644 index 000000000..166e68f83 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ObstacleDistance.h" + +int +ObstacleDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { + "ObstacleDistance", + "ObstacleDistance", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDistance_tags_1, + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObstacleDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObstacleDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObstacleDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B09.c b/src/tmx/Asn_J2735/src/2020/Offset-B09.c new file mode 100644 index 000000000..b8d550cf6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B09.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B09.h" + +int +Offset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B09 = { + "Offset-B09", + "Offset-B09", + &asn_OP_NativeInteger, + asn_DEF_Offset_B09_tags_1, + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + asn_DEF_Offset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B09_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B10.c b/src/tmx/Asn_J2735/src/2020/Offset-B10.c new file mode 100644 index 000000000..a4d34fa4d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B10.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B10.h" + +int +Offset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512L && value <= 511L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { + "Offset-B10", + "Offset-B10", + &asn_OP_NativeInteger, + asn_DEF_Offset_B10_tags_1, + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + asn_DEF_Offset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B10_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B11.c b/src/tmx/Asn_J2735/src/2020/Offset-B11.c new file mode 100644 index 000000000..b150777db --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B11.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B11.h" + +int +Offset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { + "Offset-B11", + "Offset-B11", + &asn_OP_NativeInteger, + asn_DEF_Offset_B11_tags_1, + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + asn_DEF_Offset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B11_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B12.c b/src/tmx/Asn_J2735/src/2020/Offset-B12.c new file mode 100644 index 000000000..561c0c956 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B12.h" + +int +Offset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { + "Offset-B12", + "Offset-B12", + &asn_OP_NativeInteger, + asn_DEF_Offset_B12_tags_1, + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + asn_DEF_Offset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B13.c b/src/tmx/Asn_J2735/src/2020/Offset-B13.c new file mode 100644 index 000000000..724859988 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B13.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B13.h" + +int +Offset_B13_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B13_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-4096..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { + "Offset-B13", + "Offset-B13", + &asn_OP_NativeInteger, + asn_DEF_Offset_B13_tags_1, + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + asn_DEF_Offset_B13_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B13_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B13_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B13_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B14.c b/src/tmx/Asn_J2735/src/2020/Offset-B14.c new file mode 100644 index 000000000..88abdd688 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B14.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B14.h" + +int +Offset_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { + "Offset-B14", + "Offset-B14", + &asn_OP_NativeInteger, + asn_DEF_Offset_B14_tags_1, + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + asn_DEF_Offset_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B14_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B14_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B14_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B16.c b/src/tmx/Asn_J2735/src/2020/Offset-B16.c new file mode 100644 index 000000000..11f6360d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Offset-B16.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Offset-B16.h" + +int +Offset_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { + "Offset-B16", + "Offset-B16", + &asn_OP_NativeInteger, + asn_DEF_Offset_B16_tags_1, + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + asn_DEF_Offset_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B16_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B16_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B16_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c new file mode 100644 index 000000000..5978a82f9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B12.h" + +int +OffsetLL_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12 = { + "OffsetLL-B12", + "OffsetLL-B12", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B12_tags_1, + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c new file mode 100644 index 000000000..1768f6e22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B14.h" + +int +OffsetLL_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14 = { + "OffsetLL-B14", + "OffsetLL-B14", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B14_tags_1, + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B14_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B14_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B14_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c new file mode 100644 index 000000000..67ca46cc8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B16.h" + +int +OffsetLL_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16 = { + "OffsetLL-B16", + "OffsetLL-B16", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B16_tags_1, + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B16_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B16_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B16_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c new file mode 100644 index 000000000..e6681f1c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B18.h" + +int +OffsetLL_B18_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -131072L && value <= 131071L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-131072..131071) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B18_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18 = { + "OffsetLL-B18", + "OffsetLL-B18", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B18_tags_1, + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B18_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B18_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B18_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B18_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c new file mode 100644 index 000000000..d9c6e35cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B22.h" + +int +OffsetLL_B22_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2097152L && value <= 2097151L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-2097152..2097151) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 22, -1, -2097152, 2097151 } /* (-2097152..2097151) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B22_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22 = { + "OffsetLL-B22", + "OffsetLL-B22", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B22_tags_1, + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B22_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B22_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B22_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B22_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c new file mode 100644 index 000000000..cfa22a228 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetLL-B24.h" + +int +OffsetLL_B24_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8388608L && value <= 8388607L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8388608..8388607) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 24, -1, -8388608, 8388607 } /* (-8388608..8388607) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B24_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24 = { + "OffsetLL-B24", + "OffsetLL-B24", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B24_tags_1, + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B24_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B24_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B24_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B24_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OffsetSystem.c b/src/tmx/Asn_J2735/src/2020/OffsetSystem.c new file mode 100644 index 000000000..6f1d4d202 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OffsetSystem.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OffsetSystem.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offset_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offset_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_offset_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.xy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "xy" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.ll), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ll" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offset_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ll */ +}; +static asn_CHOICE_specifics_t asn_SPC_offset_specs_3 = { + sizeof(struct OffsetSystem__offset), + offsetof(struct OffsetSystem__offset, _asn_ctx), + offsetof(struct OffsetSystem__offset, present), + sizeof(((struct OffsetSystem__offset *)0)->present), + asn_MAP_offset_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offset_3 = { + "offset", + "offset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offset_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offset_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offset_3, + 2, /* Elements count */ + &asn_SPC_offset_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_OffsetSystem_1[] = { + { ATF_POINTER, 1, offsetof(struct OffsetSystem, scale), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem, offset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offset_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_OffsetSystem_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_OffsetSystem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_OffsetSystem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1 = { + sizeof(struct OffsetSystem), + offsetof(struct OffsetSystem, _asn_ctx), + asn_MAP_OffsetSystem_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_OffsetSystem_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_OffsetSystem = { + "OffsetSystem", + "OffsetSystem", + &asn_OP_SEQUENCE, + asn_DEF_OffsetSystem_tags_1, + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + asn_DEF_OffsetSystem_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_OffsetSystem_1, + 2, /* Elements count */ + &asn_SPC_OffsetSystem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c b/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c new file mode 100644 index 000000000..bc52dd6e0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "OverlayLaneList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { + sizeof(struct OverlayLaneList), + offsetof(struct OverlayLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { + "OverlayLaneList", + "OverlayLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_OverlayLaneList_tags_1, + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + asn_DEF_OverlayLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OverlayLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OverlayLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_OverlayLaneList_1, + 1, /* Single element */ + &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PartII-Id.c b/src/tmx/Asn_J2735/src/2020/PartII-Id.c new file mode 100644 index 000000000..e05557755 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PartII-Id.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PartII-Id.h" + +int +PartII_Id_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PartII_Id_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PartII_Id_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PartII_Id_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PartII_Id = { + "PartII-Id", + "PartII-Id", + &asn_OP_NativeInteger, + asn_DEF_PartII_Id_tags_1, + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + asn_DEF_PartII_Id_tags_1, /* Same as above */ + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PartII_Id_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PartII_Id_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PartII_Id_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PartIIcontent.c b/src/tmx/Asn_J2735/src/2020/PartIIcontent.c new file mode 100644 index 000000000..0476382eb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PartIIcontent.c @@ -0,0 +1,284 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PartIIcontent.h" + +static const long asn_VAL_1_vehicleSafetyExt = 0; +static const long asn_VAL_2_specialVehicleExt = 1; +static const long asn_VAL_3_supplementalVehicleExt = 2; +static const asn_ioc_cell_t asn_IOS_BSMpartIIExtension_1_rows[] = { + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_1_vehicleSafetyExt }, + { "&Type", aioc__type, &asn_DEF_VehicleSafetyExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_2_specialVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SpecialVehicleExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_3_supplementalVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SupplementalVehicleExtensions } +}; +static const asn_ioc_set_t asn_IOS_BSMpartIIExtension_1[] = { + { 3, 2, asn_IOS_BSMpartIIExtension_1_rows } +}; +static int +memb_partII_Id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_BSMpartIIExtension_partII_Value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_BSMpartIIExtension_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct BSMpartIIExtension, partII_Id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_partII_Value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Id_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Id_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_Value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.VehicleSafetyExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleSafetyExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "VehicleSafetyExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SpecialVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SpecialVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SpecialVehicleExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SupplementalVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SupplementalVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SupplementalVehicleExtensions" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_partII_Value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* VehicleSafetyExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* SpecialVehicleExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* SupplementalVehicleExtensions */ +}; +static asn_CHOICE_specifics_t asn_SPC_partII_Value_specs_3 = { + sizeof(struct BSMpartIIExtension__partII_Value), + offsetof(struct BSMpartIIExtension__partII_Value, _asn_ctx), + offsetof(struct BSMpartIIExtension__partII_Value, present), + sizeof(((struct BSMpartIIExtension__partII_Value *)0)->present), + asn_MAP_partII_Value_tag2el_3, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_Value_3 = { + "partII-Value", + "partII-Value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_partII_Value_3, + 3, /* Elements count */ + &asn_SPC_partII_Value_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PartII_Id, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Id_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Id" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_partII_Value_3, + select_BSMpartIIExtension_partII_Value_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Value_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Value" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMpartIIExtension_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMpartIIExtension_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* partII-Id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* partII-Value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1 = { + sizeof(struct BSMpartIIExtension), + offsetof(struct BSMpartIIExtension, _asn_ctx), + asn_MAP_BSMpartIIExtension_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension = { + "BSMpartIIExtension", + "BSMpartIIExtension", + &asn_OP_SEQUENCE, + asn_DEF_BSMpartIIExtension_tags_1, + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + asn_DEF_BSMpartIIExtension_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BSMpartIIExtension_1, + 2, /* Elements count */ + &asn_SPC_BSMpartIIExtension_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PathHistory.c b/src/tmx/Asn_J2735/src/2020/PathHistory.c new file mode 100644 index 000000000..381f510ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PathHistory.c @@ -0,0 +1,105 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PathHistory.h" + +#include "FullPositionVector.h" +asn_TYPE_member_t asn_MBR_PathHistory_1[] = { + { ATF_POINTER, 2, offsetof(struct PathHistory, initialPosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "initialPosition" + }, + { ATF_POINTER, 1, offsetof(struct PathHistory, currGNSSstatus), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "currGNSSstatus" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistoryPointList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_PathHistory_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGNSSstatus */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { + sizeof(struct PathHistory), + offsetof(struct PathHistory, _asn_ctx), + asn_MAP_PathHistory_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PathHistory_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistory = { + "PathHistory", + "PathHistory", + &asn_OP_SEQUENCE, + asn_DEF_PathHistory_tags_1, + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + asn_DEF_PathHistory_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathHistory_1, + 3, /* Elements count */ + &asn_SPC_PathHistory_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c b/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c new file mode 100644 index 000000000..95721bbc3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c @@ -0,0 +1,177 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PathHistoryPoint.h" + +#include "PositionalAccuracy.h" +asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, latOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "latOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, lonOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lonOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_POINTER, 3, offsetof(struct PathHistoryPoint, speed), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 2, offsetof(struct PathHistoryPoint, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 1, offsetof(struct PathHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_PathHistoryPoint_oms_1[] = { 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_PathHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lonOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1 = { + sizeof(struct PathHistoryPoint), + offsetof(struct PathHistoryPoint, _asn_ctx), + asn_MAP_PathHistoryPoint_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_PathHistoryPoint_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint = { + "PathHistoryPoint", + "PathHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_PathHistoryPoint_tags_1, + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathHistoryPoint_1, + 7, /* Elements count */ + &asn_SPC_PathHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c b/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c new file mode 100644 index 000000000..702f172a6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PathHistoryPointList.h" + +#include "PathHistoryPoint.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathHistoryPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1 = { + sizeof(struct PathHistoryPointList), + offsetof(struct PathHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList = { + "PathHistoryPointList", + "PathHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PathHistoryPointList_tags_1, + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PathHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PathHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PathHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_PathHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PathPrediction.c b/src/tmx/Asn_J2735/src/2020/PathPrediction.c new file mode 100644 index 000000000..c056b0d97 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PathPrediction.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PathPrediction.h" + +asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RadiusOfCurvature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "radiusOfCurve" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Confidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { + sizeof(struct PathPrediction), + offsetof(struct PathPrediction, _asn_ctx), + asn_MAP_PathPrediction_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathPrediction = { + "PathPrediction", + "PathPrediction", + &asn_OP_SEQUENCE, + asn_DEF_PathPrediction_tags_1, + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + asn_DEF_PathPrediction_tags_1, /* Same as above */ + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathPrediction_1, + 2, /* Elements count */ + &asn_SPC_PathPrediction_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PayloadData.c b/src/tmx/Asn_J2735/src/2020/PayloadData.c new file mode 100644 index 000000000..7fb349dc0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PayloadData.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PayloadData.h" + +int +PayloadData_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 2048UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PayloadData_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..2048)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PayloadData = { + "PayloadData", + "PayloadData", + &asn_OP_OCTET_STRING, + asn_DEF_PayloadData_tags_1, + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + asn_DEF_PayloadData_tags_1, /* Same as above */ + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PayloadData_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PayloadData_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PayloadData_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c new file mode 100644 index 000000000..3c661ad95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PedestrianBicycleDetect.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { + "PedestrianBicycleDetect", + "PedestrianBicycleDetect", + &asn_OP_BOOLEAN, + asn_DEF_PedestrianBicycleDetect_tags_1, + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c b/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c new file mode 100644 index 000000000..f0fd72036 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalAssistive.h" + +int +PersonalAssistive_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { + "PersonalAssistive", + "PersonalAssistive", + &asn_OP_BIT_STRING, + asn_DEF_PersonalAssistive_tags_1, + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + asn_DEF_PersonalAssistive_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalAssistive_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalAssistive_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalAssistive_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c new file mode 100644 index 000000000..f4b53def7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalClusterRadius.h" + +int +PersonalClusterRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { + "PersonalClusterRadius", + "PersonalClusterRadius", + &asn_OP_NativeInteger, + asn_DEF_PersonalClusterRadius_tags_1, + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalClusterRadius_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalClusterRadius_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalClusterRadius_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c new file mode 100644 index 000000000..d207fbd5e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalCrossingInProgress.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { + "PersonalCrossingInProgress", + "PersonalCrossingInProgress", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingInProgress_tags_1, + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c new file mode 100644 index 000000000..380017614 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalCrossingRequest.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { + "PersonalCrossingRequest", + "PersonalCrossingRequest", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingRequest_tags_1, + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c new file mode 100644 index 000000000..def11d2b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalDeviceUsageState.h" + +int +PersonalDeviceUsageState_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { + "PersonalDeviceUsageState", + "PersonalDeviceUsageState", + &asn_OP_BIT_STRING, + asn_DEF_PersonalDeviceUsageState_tags_1, + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalDeviceUsageState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalDeviceUsageState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalDeviceUsageState_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c new file mode 100644 index 000000000..764ee48ec --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalDeviceUserType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "aPEDESTRIAN" }, + { 2, 13, "aPEDALCYCLIST" }, + { 3, 19, "aPUBLICSAFETYWORKER" }, + { 4, 8, "anANIMAL" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { + 2, /* aPEDALCYCLIST(2) */ + 1, /* aPEDESTRIAN(1) */ + 3, /* aPUBLICSAFETYWORKER(3) */ + 4, /* anANIMAL(4) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { + asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { + "PersonalDeviceUserType", + "PersonalDeviceUserType", + &asn_OP_NativeEnumerated, + asn_DEF_PersonalDeviceUserType_tags_1, + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalDeviceUserType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalDeviceUserType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c new file mode 100644 index 000000000..474eede66 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c @@ -0,0 +1,626 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PersonalSafetyMessage.h" + +#include "AccelerationSet4Way.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "PropelledInformation.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_27[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_PersonalSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_27[] = { + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_27 = { + sizeof(struct PersonalSafetyMessage__regional), + offsetof(struct PersonalSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_27 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_27, + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]) - 1, /* 1 */ + asn_DEF_regional_tags_27, /* Same as above */ + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_27, + 1, /* Single element */ + &asn_SPC_regional_specs_27 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 18, offsetof(struct PersonalSafetyMessage, accelSet), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, propulsion), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "propulsion" + }, + { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, useState), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUsageState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "useState" + }, + { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, crossRequest), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crossRequest" + }, + { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossState), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingInProgress, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crossState" + }, + { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, clusterSize), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NumberOfParticipantsInCluster, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "clusterSize" + }, + { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterRadius), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalClusterRadius, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "clusterRadius" + }, + { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, eventResponderType), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyEventResponderWorkerType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventResponderType" + }, + { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, activityType), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyAndRoadWorkerActivity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activityType" + }, + { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activitySubType), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyDirectingTrafficSubType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activitySubType" + }, + { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, assistType), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalAssistive, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "assistType" + }, + { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, sizing), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UserSizeAndBehaviour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sizing" + }, + { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, attachment), + (ASN_TAG_CLASS_CONTEXT | (22 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attachment" + }, + { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachmentRadius), + (ASN_TAG_CLASS_CONTEXT | (23 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attachmentRadius" + }, + { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, animalType), + (ASN_TAG_CLASS_CONTEXT | (24 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "animalType" + }, + { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + 0, + &asn_DEF_regional_27, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }; +static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ + { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ + { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ + { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { + sizeof(struct PersonalSafetyMessage), + offsetof(struct PersonalSafetyMessage, _asn_ctx), + asn_MAP_PersonalSafetyMessage_tag2el_1, + 26, /* Count of tags in the map */ + asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ + 18, 0, /* Root/Additions */ + 26, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { + "PersonalSafetyMessage", + "PersonalSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_PersonalSafetyMessage_tags_1, + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PersonalSafetyMessage_1, + 26, /* Elements count */ + &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c b/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c new file mode 100644 index 000000000..4350032ab --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PivotPointDescription.h" + +asn_TYPE_member_t asn_MBR_PivotPointDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivots), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotingAllowed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivots" + }, +}; +static const ber_tlv_tag_t asn_DEF_PivotPointDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PivotPointDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pivots */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1 = { + sizeof(struct PivotPointDescription), + offsetof(struct PivotPointDescription, _asn_ctx), + asn_MAP_PivotPointDescription_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PivotPointDescription = { + "PivotPointDescription", + "PivotPointDescription", + &asn_OP_SEQUENCE, + asn_DEF_PivotPointDescription_tags_1, + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + asn_DEF_PivotPointDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PivotPointDescription_1, + 3, /* Elements count */ + &asn_SPC_PivotPointDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c b/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c new file mode 100644 index 000000000..2bffd7207 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PivotingAllowed.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PivotingAllowed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PivotingAllowed = { + "PivotingAllowed", + "PivotingAllowed", + &asn_OP_BOOLEAN, + asn_DEF_PivotingAllowed_tags_1, + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + asn_DEF_PivotingAllowed_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c new file mode 100644 index 000000000..984da2f94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Position3D-addGrpB.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, latitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "latitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, longitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "longitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AddGrpB_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1 = { + sizeof(struct Position3D_addGrpB), + offsetof(struct Position3D_addGrpB, _asn_ctx), + asn_MAP_Position3D_addGrpB_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB = { + "Position3D-addGrpB", + "Position3D-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpB_tags_1, + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpB_1, + 3, /* Elements count */ + &asn_SPC_Position3D_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c new file mode 100644 index 000000000..5f939570e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Position3D-addGrpC.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpC, altitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Altitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "altitude" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1 = { + sizeof(struct Position3D_addGrpC), + offsetof(struct Position3D_addGrpC, _asn_ctx), + asn_MAP_Position3D_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC = { + "Position3D-addGrpC", + "Position3D-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpC_tags_1, + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_Position3D_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Position3D.c b/src/tmx/Asn_J2735/src/2020/Position3D.c new file mode 100644 index 000000000..5d0f1fd12 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Position3D.c @@ -0,0 +1,226 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Position3D.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct Position3D__regional), + offsetof(struct Position3D__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_POINTER, 2, offsetof(struct Position3D, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 1, offsetof(struct Position3D, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_Position3D_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { + sizeof(struct Position3D), + offsetof(struct Position3D, _asn_ctx), + asn_MAP_Position3D_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Position3D_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D = { + "Position3D", + "Position3D", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_tags_1, + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + asn_DEF_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_1, + 4, /* Elements count */ + &asn_SPC_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PositionConfidence.c b/src/tmx/Asn_J2735/src/2020/PositionConfidence.c new file mode 100644 index 000000000..7c31c5d65 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PositionConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PositionConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "a500m" }, + { 2, 5, "a200m" }, + { 3, 5, "a100m" }, + { 4, 4, "a50m" }, + { 5, 4, "a20m" }, + { 6, 4, "a10m" }, + { 7, 3, "a5m" }, + { 8, 3, "a2m" }, + { 9, 3, "a1m" }, + { 10, 5, "a50cm" }, + { 11, 5, "a20cm" }, + { 12, 5, "a10cm" }, + { 13, 4, "a5cm" }, + { 14, 4, "a2cm" }, + { 15, 4, "a1cm" } +}; +static const unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { + 3, /* a100m(3) */ + 12, /* a10cm(12) */ + 6, /* a10m(6) */ + 15, /* a1cm(15) */ + 9, /* a1m(9) */ + 2, /* a200m(2) */ + 11, /* a20cm(11) */ + 5, /* a20m(5) */ + 14, /* a2cm(14) */ + 8, /* a2m(8) */ + 1, /* a500m(1) */ + 10, /* a50cm(10) */ + 4, /* a50m(4) */ + 13, /* a5cm(13) */ + 7, /* a5m(7) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { + asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { + "PositionConfidence", + "PositionConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_PositionConfidence_tags_1, + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PositionConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PositionConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c new file mode 100644 index 000000000..1bc94f224 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PositionConfidenceSet.h" + +asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, pos), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pos" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, elevation), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ElevationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pos */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1 = { + sizeof(struct PositionConfidenceSet), + offsetof(struct PositionConfidenceSet, _asn_ctx), + asn_MAP_PositionConfidenceSet_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { + "PositionConfidenceSet", + "PositionConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_PositionConfidenceSet_tags_1, + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PositionConfidenceSet_1, + 2, /* Elements count */ + &asn_SPC_PositionConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c new file mode 100644 index 000000000..558ff4937 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PositionalAccuracy.h" + +asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMajor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "semiMajor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMinor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMinorAxisAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "semiMinor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, orientation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisOrientation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "orientation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionalAccuracy_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* semiMajor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiMinor */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* orientation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1 = { + sizeof(struct PositionalAccuracy), + offsetof(struct PositionalAccuracy, _asn_ctx), + asn_MAP_PositionalAccuracy_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { + "PositionalAccuracy", + "PositionalAccuracy", + &asn_OP_SEQUENCE, + asn_DEF_PositionalAccuracy_tags_1, + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PositionalAccuracy_1, + 3, /* Elements count */ + &asn_SPC_PositionalAccuracy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c new file mode 100644 index 000000000..1c0ee9388 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PreemptPriorityList.h" + +#include "SignalControlZone.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalControlZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { + sizeof(struct PreemptPriorityList), + offsetof(struct PreemptPriorityList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { + "PreemptPriorityList", + "PreemptPriorityList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PreemptPriorityList_tags_1, + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PreemptPriorityList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PreemptPriorityList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PreemptPriorityList_1, + 1, /* Single element */ + &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c new file mode 100644 index 000000000..d81720c1c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PrioritizationResponse.h" + +asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priorState" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { + sizeof(struct PrioritizationResponse), + offsetof(struct PrioritizationResponse, _asn_ctx), + asn_MAP_PrioritizationResponse_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { + "PrioritizationResponse", + "PrioritizationResponse", + &asn_OP_SEQUENCE, + asn_DEF_PrioritizationResponse_tags_1, + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PrioritizationResponse_1, + 3, /* Elements count */ + &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c new file mode 100644 index 000000000..6a948a18f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PrioritizationResponseList.h" + +#include "PrioritizationResponse.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..10)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PrioritizationResponse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { + sizeof(struct PrioritizationResponseList), + offsetof(struct PrioritizationResponseList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { + "PrioritizationResponseList", + "PrioritizationResponseList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PrioritizationResponseList_tags_1, + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrioritizationResponseList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrioritizationResponseList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PrioritizationResponseList_1, + 1, /* Single element */ + &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c new file mode 100644 index 000000000..615d0c257 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PrioritizationResponseStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 9, "requested" }, + { 2, 10, "processing" }, + { 3, 17, "watchOtherTraffic" }, + { 4, 7, "granted" }, + { 5, 8, "rejected" }, + { 6, 11, "maxPresence" }, + { 7, 15, "reserviceLocked" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { + 4, /* granted(4) */ + 6, /* maxPresence(6) */ + 2, /* processing(2) */ + 5, /* rejected(5) */ + 1, /* requested(1) */ + 7, /* reserviceLocked(7) */ + 0, /* unknown(0) */ + 3 /* watchOtherTraffic(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { + asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { + "PrioritizationResponseStatus", + "PrioritizationResponseStatus", + &asn_OP_NativeEnumerated, + asn_DEF_PrioritizationResponseStatus_tags_1, + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrioritizationResponseStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrioritizationResponseStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Priority.c b/src/tmx/Asn_J2735/src/2020/Priority.c new file mode 100644 index 000000000..14ba90a89 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Priority.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Priority.h" + +int +Priority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Priority_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Priority_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Priority = { + "Priority", + "Priority", + &asn_OP_OCTET_STRING, + asn_DEF_Priority_tags_1, + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + asn_DEF_Priority_tags_1, /* Same as above */ + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Priority_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Priority_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Priority_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c b/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c new file mode 100644 index 000000000..32d2b2508 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PriorityRequestType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PriorityRequestType_value2enum_1[] = { + { 0, 27, "priorityRequestTypeReserved" }, + { 1, 15, "priorityRequest" }, + { 2, 21, "priorityRequestUpdate" }, + { 3, 20, "priorityCancellation" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PriorityRequestType_enum2value_1[] = { + 3, /* priorityCancellation(3) */ + 1, /* priorityRequest(1) */ + 0, /* priorityRequestTypeReserved(0) */ + 2 /* priorityRequestUpdate(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1 = { + asn_MAP_PriorityRequestType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PriorityRequestType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PriorityRequestType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PriorityRequestType = { + "PriorityRequestType", + "PriorityRequestType", + &asn_OP_NativeEnumerated, + asn_DEF_PriorityRequestType_tags_1, + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + asn_DEF_PriorityRequestType_tags_1, /* Same as above */ + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PriorityRequestType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PriorityRequestType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PriorityRequestType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c b/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c new file mode 100644 index 000000000..675044fc5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PrivilegedEventFlags.h" + +int +PrivilegedEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PrivilegedEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags = { + "PrivilegedEventFlags", + "PrivilegedEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_PrivilegedEventFlags_tags_1, + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrivilegedEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrivilegedEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PrivilegedEventFlags_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c b/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c new file mode 100644 index 000000000..f23c91d25 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PrivilegedEvents.h" + +asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, event), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "event" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrivilegedEvents_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrivilegedEvents_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* event */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1 = { + sizeof(struct PrivilegedEvents), + offsetof(struct PrivilegedEvents, _asn_ctx), + asn_MAP_PrivilegedEvents_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents = { + "PrivilegedEvents", + "PrivilegedEvents", + &asn_OP_SEQUENCE, + asn_DEF_PrivilegedEvents_tags_1, + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEvents_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PrivilegedEvents_1, + 2, /* Elements count */ + &asn_SPC_PrivilegedEvents_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c new file mode 100644 index 000000000..b3c4e6dd0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c @@ -0,0 +1,469 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ProbeDataManagement.h" + +#include "VehicleStatusRequestList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_term_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_term_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_snapshot_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_snapshot_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_term_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "termtime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "termDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { + sizeof(struct ProbeDataManagement__term), + offsetof(struct ProbeDataManagement__term, _asn_ctx), + offsetof(struct ProbeDataManagement__term, present), + sizeof(((struct ProbeDataManagement__term *)0)->present), + asn_MAP_term_tag2el_5, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_term_5 = { + "term", + "term", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_term_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_term_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_term_5, + 2, /* Elements count */ + &asn_SPC_term_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_snapshot_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshotTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshotDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { + sizeof(struct ProbeDataManagement__snapshot), + offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), + offsetof(struct ProbeDataManagement__snapshot, present), + sizeof(((struct ProbeDataManagement__snapshot *)0)->present), + asn_MAP_snapshot_tag2el_8, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { + "snapshot", + "snapshot", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_snapshot_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_snapshot_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_snapshot_8, + 2, /* Elements count */ + &asn_SPC_snapshot_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_13[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ProbeDataManagement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_13 = { + sizeof(struct ProbeDataManagement__regional), + offsetof(struct ProbeDataManagement__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_13 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_13, + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]) - 1, /* 1 */ + asn_DEF_regional_tags_13, /* Same as above */ + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_13, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_13, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_13, + 1, /* Single element */ + &asn_SPC_regional_specs_13 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Sample, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sample" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directions" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_term_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "term" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_snapshot_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshot" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "txInterval" + }, + { ATF_POINTER, 2, offsetof(struct ProbeDataManagement, dataElements), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusRequestList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataElements" + }, + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_13, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_13, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeDataManagement_oms_1[] = { 0, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataElements */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { + sizeof(struct ProbeDataManagement), + offsetof(struct ProbeDataManagement, _asn_ctx), + asn_MAP_ProbeDataManagement_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_ProbeDataManagement_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { + "ProbeDataManagement", + "ProbeDataManagement", + &asn_OP_SEQUENCE, + asn_DEF_ProbeDataManagement_tags_1, + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ProbeDataManagement_1, + 8, /* Elements count */ + &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c new file mode 100644 index 000000000..ef8b7b015 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ProbeSegmentNumber.h" + +int +ProbeSegmentNumber_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { + "ProbeSegmentNumber", + "ProbeSegmentNumber", + &asn_OP_NativeInteger, + asn_DEF_ProbeSegmentNumber_tags_1, + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ProbeSegmentNumber_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ProbeSegmentNumber_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ProbeSegmentNumber_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c new file mode 100644 index 000000000..3ba525c4a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c @@ -0,0 +1,385 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ProbeVehicleData.h" + +#include "VehicleIdent.h" +#include "Snapshot.h" +#include "RegionalExtension.h" +static int +memb_snapshots_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 32UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_snapshots_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Snapshot, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_snapshots_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_7 = { + sizeof(struct ProbeVehicleData__snapshots), + offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshots_7 = { + "snapshots", + "snapshots", + &asn_OP_SEQUENCE_OF, + asn_DEF_snapshots_tags_7, + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]) - 1, /* 1 */ + asn_DEF_snapshots_tags_7, /* Same as above */ + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_snapshots_7, + 1, /* Single element */ + &asn_SPC_snapshots_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ProbeVehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct ProbeVehicleData__regional), + offsetof(struct ProbeVehicleData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { + { ATF_POINTER, 3, offsetof(struct ProbeVehicleData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProbeSegmentNumber, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "segNum" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "probeID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startVector" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_snapshots_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_snapshots_constraint_1 + }, + 0, 0, /* No default value */ + "snapshots" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeVehicleData_oms_1[] = { 0, 1, 2, 6 }; +static const ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* snapshots */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { + sizeof(struct ProbeVehicleData), + offsetof(struct ProbeVehicleData, _asn_ctx), + asn_MAP_ProbeVehicleData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { + "ProbeVehicleData", + "ProbeVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_ProbeVehicleData_tags_1, + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ProbeVehicleData_1, + 7, /* Elements count */ + &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PropelledInformation.c b/src/tmx/Asn_J2735/src/2020/PropelledInformation.c new file mode 100644 index 000000000..74597615e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PropelledInformation.c @@ -0,0 +1,111 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PropelledInformation.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HumanPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "human" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "animal" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MotorizedPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "motor" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ +}; +asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { + sizeof(struct PropelledInformation), + offsetof(struct PropelledInformation, _asn_ctx), + offsetof(struct PropelledInformation, present), + sizeof(((struct PropelledInformation *)0)->present), + asn_MAP_PropelledInformation_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { + "PropelledInformation", + "PropelledInformation", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PropelledInformation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PropelledInformation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_PropelledInformation_1, + 3, /* Elements count */ + &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c new file mode 100644 index 000000000..3f0a124cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PublicSafetyAndRoadWorkerActivity.h" + +int +PublicSafetyAndRoadWorkerActivity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { + "PublicSafetyAndRoadWorkerActivity", + "PublicSafetyAndRoadWorkerActivity", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PublicSafetyAndRoadWorkerActivity_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c new file mode 100644 index 000000000..0736d68fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PublicSafetyDirectingTrafficSubType.h" + +int +PublicSafetyDirectingTrafficSubType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 7UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { + "PublicSafetyDirectingTrafficSubType", + "PublicSafetyDirectingTrafficSubType", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PublicSafetyDirectingTrafficSubType_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c new file mode 100644 index 000000000..bb63c5061 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "PublicSafetyEventResponderWorkerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "towOperater" }, + { 2, 16, "fireAndEMSWorker" }, + { 3, 10, "aDOTWorker" }, + { 4, 14, "lawEnforcement" }, + { 5, 15, "hazmatResponder" }, + { 6, 19, "animalControlWorker" }, + { 7, 14, "otherPersonnel" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { + 3, /* aDOTWorker(3) */ + 6, /* animalControlWorker(6) */ + 2, /* fireAndEMSWorker(2) */ + 5, /* hazmatResponder(5) */ + 4, /* lawEnforcement(4) */ + 7, /* otherPersonnel(7) */ + 1, /* towOperater(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { + asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { + "PublicSafetyEventResponderWorkerType", + "PublicSafetyEventResponderWorkerType", + &asn_OP_NativeEnumerated, + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c b/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c new file mode 100644 index 000000000..f3b94fdf9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCM-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "rtcmRev2" }, + { 2, 8, "rtcmRev3" }, + { 3, 8, "reserved" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { + 3, /* reserved(3) */ + 1, /* rtcmRev2(1) */ + 2, /* rtcmRev3(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { + asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { + "RTCM-Revision", + "RTCM-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_RTCM_Revision_tags_1, + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCM_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCM_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCMPackage.c b/src/tmx/Asn_J2735/src/2020/RTCMPackage.c new file mode 100644 index 000000000..62cff2c08 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCMPackage.c @@ -0,0 +1,87 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCMPackage.h" + +#include "RTCMheader.h" +asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct RTCMPackage, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, msgs), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgs" + }, +}; +static const int asn_MAP_RTCMPackage_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* msgs */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { + sizeof(struct RTCMPackage), + offsetof(struct RTCMPackage, _asn_ctx), + asn_MAP_RTCMPackage_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RTCMPackage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { + "RTCMPackage", + "RTCMPackage", + &asn_OP_SEQUENCE, + asn_DEF_RTCMPackage_tags_1, + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + asn_DEF_RTCMPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMPackage_1, + 2, /* Elements count */ + &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c b/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c new file mode 100644 index 000000000..b63e8c6c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c @@ -0,0 +1,282 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCMcorrections.h" + +#include "FullPositionVector.h" +#include "RTCMheader.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RTCMcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct RTCMcorrections__regional), + offsetof(struct RTCMcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RTCMcorrections_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Revision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 3, offsetof(struct RTCMcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct RTCMcorrections, anchorPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchorPoint" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgs), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgs" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RTCMcorrections_oms_1[] = { 2, 3, 4, 6 }; +static const ber_tlv_tag_t asn_DEF_RTCMcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msgs */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1 = { + sizeof(struct RTCMcorrections), + offsetof(struct RTCMcorrections, _asn_ctx), + asn_MAP_RTCMcorrections_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_RTCMcorrections_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMcorrections = { + "RTCMcorrections", + "RTCMcorrections", + &asn_OP_SEQUENCE, + asn_DEF_RTCMcorrections_tags_1, + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + asn_DEF_RTCMcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMcorrections_1, + 7, /* Elements count */ + &asn_SPC_RTCMcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCMheader.c b/src/tmx/Asn_J2735/src/2020/RTCMheader.c new file mode 100644 index 000000000..db12733bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCMheader.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCMheader.h" + +asn_TYPE_member_t asn_MBR_RTCMheader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, status), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, offsetSet), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntennaOffsetSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetSet" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMheader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMheader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offsetSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1 = { + sizeof(struct RTCMheader), + offsetof(struct RTCMheader, _asn_ctx), + asn_MAP_RTCMheader_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMheader = { + "RTCMheader", + "RTCMheader", + &asn_OP_SEQUENCE, + asn_DEF_RTCMheader_tags_1, + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + asn_DEF_RTCMheader_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMheader_1, + 2, /* Elements count */ + &asn_SPC_RTCMheader_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCMmessage.c b/src/tmx/Asn_J2735/src/2020/RTCMmessage.c new file mode 100644 index 000000000..25ba103f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCMmessage.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCMmessage.h" + +int +RTCMmessage_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 1023UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RTCMmessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessage = { + "RTCMmessage", + "RTCMmessage", + &asn_OP_OCTET_STRING, + asn_DEF_RTCMmessage_tags_1, + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCMmessage_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCMmessage_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RTCMmessage_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c b/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c new file mode 100644 index 000000000..4105a8159 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RTCMmessageList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RTCMmessageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RTCMmessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMmessageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1 = { + sizeof(struct RTCMmessageList), + offsetof(struct RTCMmessageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessageList = { + "RTCMmessageList", + "RTCMmessageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RTCMmessageList_tags_1, + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessageList_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCMmessageList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCMmessageList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RTCMmessageList_1, + 1, /* Single element */ + &asn_SPC_RTCMmessageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Radius-B12.c b/src/tmx/Asn_J2735/src/2020/Radius-B12.c new file mode 100644 index 000000000..ca3948dba --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Radius-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Radius-B12.h" + +int +Radius_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Radius_B12_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Radius_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Radius_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Radius_B12 = { + "Radius-B12", + "Radius-B12", + &asn_OP_NativeInteger, + asn_DEF_Radius_B12_tags_1, + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + asn_DEF_Radius_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Radius_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Radius_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Radius_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c b/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c new file mode 100644 index 000000000..e0ffeba25 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RadiusOfCurvature.h" + +int +RadiusOfCurvature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RadiusOfCurvature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature = { + "RadiusOfCurvature", + "RadiusOfCurvature", + &asn_OP_NativeInteger, + asn_DEF_RadiusOfCurvature_tags_1, + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + asn_DEF_RadiusOfCurvature_tags_1, /* Same as above */ + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RadiusOfCurvature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RadiusOfCurvature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RadiusOfCurvature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RainSensor.c b/src/tmx/Asn_J2735/src/2020/RainSensor.c new file mode 100644 index 000000000..475f94bcf --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RainSensor.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RainSensor.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RainSensor_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RainSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "lightMist" }, + { 2, 9, "heavyMist" }, + { 3, 18, "lightRainOrDrizzle" }, + { 4, 4, "rain" }, + { 5, 12, "moderateRain" }, + { 6, 9, "heavyRain" }, + { 7, 13, "heavyDownpour" } +}; +static const unsigned int asn_MAP_RainSensor_enum2value_1[] = { + 7, /* heavyDownpour(7) */ + 2, /* heavyMist(2) */ + 6, /* heavyRain(6) */ + 1, /* lightMist(1) */ + 3, /* lightRainOrDrizzle(3) */ + 5, /* moderateRain(5) */ + 0, /* none(0) */ + 4 /* rain(4) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { + asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RainSensor = { + "RainSensor", + "RainSensor", + &asn_OP_NativeEnumerated, + asn_DEF_RainSensor_tags_1, + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + asn_DEF_RainSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RainSensor_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RainSensor_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RainSensor_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegionId.c b/src/tmx/Asn_J2735/src/2020/RegionId.c new file mode 100644 index 000000000..3a1cec8ed --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegionId.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegionId.h" + +int +RegionId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RegionId_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RegionId_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RegionId_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionId = { + "RegionId", + "RegionId", + &asn_OP_NativeInteger, + asn_DEF_RegionId_tags_1, + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + asn_DEF_RegionId_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RegionId_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RegionId_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RegionId_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegionList.c b/src/tmx/Asn_J2735/src/2020/RegionList.c new file mode 100644 index 000000000..5dc946ac0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegionList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegionList.h" + +#include "RegionOffsets.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RegionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..64)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RegionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RegionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionOffsets, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { + sizeof(struct RegionList), + offsetof(struct RegionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionList = { + "RegionList", + "RegionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RegionList_tags_1, + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + asn_DEF_RegionList_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RegionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RegionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RegionList_1, + 1, /* Single element */ + &asn_SPC_RegionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegionOffsets.c b/src/tmx/Asn_J2735/src/2020/RegionOffsets.c new file mode 100644 index 000000000..f81e51583 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegionOffsets.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegionOffsets.h" + +asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "xOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yOffset" + }, + { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "zOffset" + }, +}; +static const int asn_MAP_RegionOffsets_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { + sizeof(struct RegionOffsets), + offsetof(struct RegionOffsets, _asn_ctx), + asn_MAP_RegionOffsets_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionOffsets_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { + "RegionOffsets", + "RegionOffsets", + &asn_OP_SEQUENCE, + asn_DEF_RegionOffsets_tags_1, + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + asn_DEF_RegionOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegionOffsets_1, + 3, /* Elements count */ + &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegionPointSet.c b/src/tmx/Asn_J2735/src/2020/RegionPointSet.c new file mode 100644 index 000000000..7e3822ba7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegionPointSet.c @@ -0,0 +1,105 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegionPointSet.h" + +#include "Position3D.h" +asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { + { ATF_POINTER, 2, offsetof(struct RegionPointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 1, offsetof(struct RegionPointSet, scale), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_RegionPointSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { + sizeof(struct RegionPointSet), + offsetof(struct RegionPointSet, _asn_ctx), + asn_MAP_RegionPointSet_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionPointSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { + "RegionPointSet", + "RegionPointSet", + &asn_OP_SEQUENCE, + asn_DEF_RegionPointSet_tags_1, + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + asn_DEF_RegionPointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegionPointSet_1, + 3, /* Elements count */ + &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/2020/RegionalExtension.c new file mode 100644 index 000000000..6c013e05b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegionalExtension.c @@ -0,0 +1,11120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegionalExtension.h" + +static const long asn_VAL_3_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_LaneDataAttribute_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_3_addGrpB }, + { "&Type", aioc__type, &asn_DEF_LaneDataAttribute_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_LaneDataAttribute_1[] = { + { 1, 2, asn_IOS_Reg_LaneDataAttribute_1_rows } +}; +static const long asn_VAL_5_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_NodeOffsetPointXY_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_5_addGrpB }, + { "&Type", aioc__type, &asn_DEF_NodeOffsetPointXY_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_NodeOffsetPointXY_1[] = { + { 1, 2, asn_IOS_Reg_NodeOffsetPointXY_1_rows } +}; +static const long asn_VAL_6_addGrpB = 2; +static const long asn_VAL_7_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_Position3D_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_6_addGrpB }, + { "&Type", aioc__type, &asn_DEF_Position3D_addGrpB }, + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_7_addGrpC }, + { "&Type", aioc__type, &asn_DEF_Position3D_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_Position3D_1[] = { + { 2, 2, asn_IOS_Reg_Position3D_1_rows } +}; +static const long asn_VAL_9_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_MapData_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_9_addGrpC }, + { "&Type", aioc__type, &asn_DEF_MapData_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_MapData_1[] = { + { 1, 2, asn_IOS_Reg_MapData_1_rows } +}; +static const long asn_VAL_8_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_RestrictionUserType_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_8_addGrpC }, + { "&Type", aioc__type, &asn_DEF_RestrictionUserType_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_RestrictionUserType_1[] = { + { 1, 2, asn_IOS_Reg_RestrictionUserType_1_rows } +}; +static const long asn_VAL_1_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_ConnectionManeuverAssist_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_1_addGrpC }, + { "&Type", aioc__type, &asn_DEF_ConnectionManeuverAssist_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_ConnectionManeuverAssist_1[] = { + { 1, 2, asn_IOS_Reg_ConnectionManeuverAssist_1_rows } +}; +static const long asn_VAL_2_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_IntersectionState_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_2_addGrpC }, + { "&Type", aioc__type, &asn_DEF_IntersectionState_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_IntersectionState_1[] = { + { 1, 2, asn_IOS_Reg_IntersectionState_1_rows } +}; +static const long asn_VAL_4_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_MovementEvent_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_4_addGrpB }, + { "&Type", aioc__type, &asn_DEF_MovementEvent_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_MovementEvent_1[] = { + { 1, 2, asn_IOS_Reg_MovementEvent_1_rows } +}; +static int +memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_LaneDataAttribute_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_LaneDataAttribute_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_LaneDataAttribute, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_NodeOffsetPointXY_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_NodeOffsetPointXY_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_NodeOffsetPointXY, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_Position3D_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_Position3D_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_Position3D, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_MapData_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_MapData_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MapData, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_RestrictionUserType_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_RestrictionUserType_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_RestrictionUserType, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_ConnectionManeuverAssist_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_ConnectionManeuverAssist_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_ConnectionManeuverAssist, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_IntersectionState_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_IntersectionState_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_IntersectionState, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_MovementEvent_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_MovementEvent_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MovementEvent, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_5 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_8 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_11 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_11 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_14 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_15 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_15 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_17 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_17 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_18 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_20 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_20 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_21 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_21 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_23 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_23 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_24 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_26 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_26 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_29 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_29 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_30 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_30 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_32 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_32 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_33 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_33 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_35 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_35 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_36 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_36 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_38 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_38 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_39 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_39 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_41 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_41 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_42 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_42 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_44 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_44 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_45 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_45 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_47 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_47 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_48 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_48 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_50 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_50 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_51 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_51 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_53 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_53 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_54 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_54 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_56 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_56 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_57 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_57 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_59 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_59 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_60 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_60 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_62 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_62 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_63 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_63 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_65 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_65 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_66 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_66 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_68 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_68 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_69 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_69 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_71 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_71 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_72 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_72 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_74 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_74 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_75 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_75 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_77 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_77 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_78 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_78 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_80 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_80 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_81 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_81 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_83 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_83 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_84 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_84 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_86 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_86 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_87 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_87 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_89 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_89 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_90 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_90 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_92 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_92 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_93 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_93 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_95 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_95 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_96 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_96 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_98 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_98 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_99 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_99 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_101 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_101 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_102 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_102 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_104 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_104 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_105 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_105 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_107 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_107 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_108 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_108 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_110 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_110 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_111 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_111 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_113 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_113 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_114 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_114 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_116 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_116 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_117 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_117 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_119 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_119 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_120 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_120 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_122 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_122 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_123 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_123 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_125 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_125 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_126 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_126 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_128 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_128 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_129 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_129 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_131 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_131 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_132 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_132 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_134 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_134 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_135 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_135 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_137 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_137 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_138 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_138 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_140 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_140 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_141 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_141 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_143 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_143 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_144 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_144 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_146 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_146 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_147 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_147 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_149 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_149 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_150 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_150 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_152 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_152 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_153 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_153 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_155 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_155 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_156 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_156 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_158 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_158 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_159 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_159 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_161 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_161 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_162 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_162 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_164 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_164 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_165 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_165 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_167 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_167 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_168 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_168 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_170 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_170 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_171 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_171 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_173 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_173 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_174 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_174 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_176 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_176 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_177 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_177 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_179 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_179 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_180 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_180 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_182 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_182 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_183 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_183 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { + sizeof(struct Reg_BasicSafetyMessage__regExtValue), + 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 */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_1 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_1 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1 = { + sizeof(struct Reg_BasicSafetyMessage), + offsetof(struct Reg_BasicSafetyMessage, _asn_ctx), + asn_MAP_Reg_BasicSafetyMessage_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage = { + "Reg-BasicSafetyMessage", + "Reg-BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_Reg_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_BasicSafetyMessage_1, + 2, /* Elements count */ + &asn_SPC_Reg_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_6 = { + sizeof(struct Reg_EventDescription__regExtValue), + offsetof(struct Reg_EventDescription__regExtValue, _asn_ctx), + offsetof(struct Reg_EventDescription__regExtValue, present), + sizeof(((struct Reg_EventDescription__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_6 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_4 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_4 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_EventDescription_tags_4[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_EventDescription_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4 = { + sizeof(struct Reg_EventDescription), + offsetof(struct Reg_EventDescription, _asn_ctx), + asn_MAP_Reg_EventDescription_tag2el_4, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription = { + "Reg-EventDescription", + "Reg-EventDescription", + &asn_OP_SEQUENCE, + asn_DEF_Reg_EventDescription_tags_4, + sizeof(asn_DEF_Reg_EventDescription_tags_4) + /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ + asn_DEF_Reg_EventDescription_tags_4, /* Same as above */ + sizeof(asn_DEF_Reg_EventDescription_tags_4) + /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_EventDescription_4, + 2, /* Elements count */ + &asn_SPC_Reg_EventDescription_specs_4 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_9 = { + sizeof(struct Reg_SupplementalVehicleExtensions__regExtValue), + offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, _asn_ctx), + offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, present), + sizeof(((struct Reg_SupplementalVehicleExtensions__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_9 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_7 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_7 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 = { + sizeof(struct Reg_SupplementalVehicleExtensions), + offsetof(struct Reg_SupplementalVehicleExtensions, _asn_ctx), + asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions = { + "Reg-SupplementalVehicleExtensions", + "Reg-SupplementalVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, + sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) + /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ + asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, /* Same as above */ + sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) + /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SupplementalVehicleExtensions_7, + 2, /* Elements count */ + &asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_12 = { + sizeof(struct Reg_ComputedLane__regExtValue), + offsetof(struct Reg_ComputedLane__regExtValue, _asn_ctx), + offsetof(struct Reg_ComputedLane__regExtValue, present), + sizeof(((struct Reg_ComputedLane__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_12 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_10 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_10 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ComputedLane_tags_10[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ComputedLane_tag2el_10[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10 = { + sizeof(struct Reg_ComputedLane), + offsetof(struct Reg_ComputedLane, _asn_ctx), + asn_MAP_Reg_ComputedLane_tag2el_10, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane = { + "Reg-ComputedLane", + "Reg-ComputedLane", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ComputedLane_tags_10, + sizeof(asn_DEF_Reg_ComputedLane_tags_10) + /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ + asn_DEF_Reg_ComputedLane_tags_10, /* Same as above */ + sizeof(asn_DEF_Reg_ComputedLane_tags_10) + /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ComputedLane_10, + 2, /* Elements count */ + &asn_SPC_Reg_ComputedLane_specs_10 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_15[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute__regExtValue, choice.LaneDataAttribute_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_LaneDataAttribute_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "LaneDataAttribute-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_15[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* LaneDataAttribute-addGrpB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_15 = { + sizeof(struct Reg_LaneDataAttribute__regExtValue), + offsetof(struct Reg_LaneDataAttribute__regExtValue, _asn_ctx), + offsetof(struct Reg_LaneDataAttribute__regExtValue, present), + sizeof(((struct Reg_LaneDataAttribute__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_15, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_15 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_15, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_15 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_13 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_15, + select_Reg_LaneDataAttribute_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_15, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_15, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_13 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_LaneDataAttribute_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneDataAttribute_tag2el_13[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13 = { + sizeof(struct Reg_LaneDataAttribute), + offsetof(struct Reg_LaneDataAttribute, _asn_ctx), + asn_MAP_Reg_LaneDataAttribute_tag2el_13, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute = { + "Reg-LaneDataAttribute", + "Reg-LaneDataAttribute", + &asn_OP_SEQUENCE, + asn_DEF_Reg_LaneDataAttribute_tags_13, + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ + asn_DEF_Reg_LaneDataAttribute_tags_13, /* Same as above */ + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_LaneDataAttribute_13, + 2, /* Elements count */ + &asn_SPC_Reg_LaneDataAttribute_specs_13 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_18 = { + sizeof(struct Reg_NodeAttributeSetXY__regExtValue), + offsetof(struct Reg_NodeAttributeSetXY__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeAttributeSetXY__regExtValue, present), + sizeof(((struct Reg_NodeAttributeSetXY__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_18 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_18 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_17, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_17, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_16 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_18, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_18, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_16 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetXY_tags_16[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetXY_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16 = { + sizeof(struct Reg_NodeAttributeSetXY), + offsetof(struct Reg_NodeAttributeSetXY, _asn_ctx), + asn_MAP_Reg_NodeAttributeSetXY_tag2el_16, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY = { + "Reg-NodeAttributeSetXY", + "Reg-NodeAttributeSetXY", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeAttributeSetXY_tags_16, + sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) + /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ + asn_DEF_Reg_NodeAttributeSetXY_tags_16, /* Same as above */ + sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) + /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeAttributeSetXY_16, + 2, /* Elements count */ + &asn_SPC_Reg_NodeAttributeSetXY_specs_16 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_21[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY__regExtValue, choice.NodeOffsetPointXY_addGrpB), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_NodeOffsetPointXY_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "NodeOffsetPointXY-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_21[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 } /* posB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_21 = { + sizeof(struct Reg_NodeOffsetPointXY__regExtValue), + offsetof(struct Reg_NodeOffsetPointXY__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeOffsetPointXY__regExtValue, present), + sizeof(((struct Reg_NodeOffsetPointXY__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_21, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_21 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_21, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_21 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_20, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_20, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_19 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_21, + select_Reg_NodeOffsetPointXY_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_21, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_21, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_19 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointXY_tags_19[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointXY_tag2el_19[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19 = { + sizeof(struct Reg_NodeOffsetPointXY), + offsetof(struct Reg_NodeOffsetPointXY, _asn_ctx), + asn_MAP_Reg_NodeOffsetPointXY_tag2el_19, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY = { + "Reg-NodeOffsetPointXY", + "Reg-NodeOffsetPointXY", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeOffsetPointXY_tags_19, + sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) + /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ + asn_DEF_Reg_NodeOffsetPointXY_tags_19, /* Same as above */ + sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) + /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeOffsetPointXY_19, + 2, /* Elements count */ + &asn_SPC_Reg_NodeOffsetPointXY_specs_19 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_24[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "Position3D-addGrpB" + }, + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "Position3D-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_24[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* Position3D-addGrpB */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* Position3D-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_24 = { + sizeof(struct Reg_Position3D__regExtValue), + offsetof(struct Reg_Position3D__regExtValue, _asn_ctx), + offsetof(struct Reg_Position3D__regExtValue, present), + sizeof(((struct Reg_Position3D__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_24, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_24 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_24, + 2, /* Elements count */ + &asn_SPC_regExtValue_specs_24 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_Position3D_22[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_23, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_23, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_22 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_24, + select_Reg_Position3D_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_24, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_24, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_22 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_Position3D_tags_22[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_Position3D_tag2el_22[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22 = { + sizeof(struct Reg_Position3D), + offsetof(struct Reg_Position3D, _asn_ctx), + asn_MAP_Reg_Position3D_tag2el_22, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_Position3D = { + "Reg-Position3D", + "Reg-Position3D", + &asn_OP_SEQUENCE, + asn_DEF_Reg_Position3D_tags_22, + sizeof(asn_DEF_Reg_Position3D_tags_22) + /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ + asn_DEF_Reg_Position3D_tags_22, /* Same as above */ + sizeof(asn_DEF_Reg_Position3D_tags_22) + /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_Position3D_22, + 2, /* Elements count */ + &asn_SPC_Reg_Position3D_specs_22 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_27 = { + sizeof(struct Reg_RequestorType__regExtValue), + offsetof(struct Reg_RequestorType__regExtValue, _asn_ctx), + offsetof(struct Reg_RequestorType__regExtValue, present), + sizeof(((struct Reg_RequestorType__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_27 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_27 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_26, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_26, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_25 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_27, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_25 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RequestorType_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorType_tag2el_25[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25 = { + sizeof(struct Reg_RequestorType), + offsetof(struct Reg_RequestorType, _asn_ctx), + asn_MAP_Reg_RequestorType_tag2el_25, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType = { + "Reg-RequestorType", + "Reg-RequestorType", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RequestorType_tags_25, + sizeof(asn_DEF_Reg_RequestorType_tags_25) + /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ + asn_DEF_Reg_RequestorType_tags_25, /* Same as above */ + sizeof(asn_DEF_Reg_RequestorType_tags_25) + /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RequestorType_25, + 2, /* Elements count */ + &asn_SPC_Reg_RequestorType_specs_25 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_30 = { + sizeof(struct Reg_VehicleClassification__regExtValue), + offsetof(struct Reg_VehicleClassification__regExtValue, _asn_ctx), + offsetof(struct Reg_VehicleClassification__regExtValue, present), + sizeof(((struct Reg_VehicleClassification__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_30 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_30 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_29, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_29, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_28 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_30, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_30, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_30, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_28 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_VehicleClassification_tags_28[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_VehicleClassification_tag2el_28[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28 = { + sizeof(struct Reg_VehicleClassification), + offsetof(struct Reg_VehicleClassification, _asn_ctx), + asn_MAP_Reg_VehicleClassification_tag2el_28, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification = { + "Reg-VehicleClassification", + "Reg-VehicleClassification", + &asn_OP_SEQUENCE, + asn_DEF_Reg_VehicleClassification_tags_28, + sizeof(asn_DEF_Reg_VehicleClassification_tags_28) + /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ + asn_DEF_Reg_VehicleClassification_tags_28, /* Same as above */ + sizeof(asn_DEF_Reg_VehicleClassification_tags_28) + /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_VehicleClassification_28, + 2, /* Elements count */ + &asn_SPC_Reg_VehicleClassification_specs_28 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_33 = { + sizeof(struct Reg_VerticalOffset__regExtValue), + offsetof(struct Reg_VerticalOffset__regExtValue, _asn_ctx), + offsetof(struct Reg_VerticalOffset__regExtValue, present), + sizeof(((struct Reg_VerticalOffset__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_33 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_33 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_32, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_32, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_31 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_33, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_33, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_33, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_31 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_VerticalOffset_tags_31[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_VerticalOffset_tag2el_31[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31 = { + sizeof(struct Reg_VerticalOffset), + offsetof(struct Reg_VerticalOffset, _asn_ctx), + asn_MAP_Reg_VerticalOffset_tag2el_31, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset = { + "Reg-VerticalOffset", + "Reg-VerticalOffset", + &asn_OP_SEQUENCE, + asn_DEF_Reg_VerticalOffset_tags_31, + sizeof(asn_DEF_Reg_VerticalOffset_tags_31) + /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ + asn_DEF_Reg_VerticalOffset_tags_31, /* Same as above */ + sizeof(asn_DEF_Reg_VerticalOffset_tags_31) + /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_VerticalOffset_31, + 2, /* Elements count */ + &asn_SPC_Reg_VerticalOffset_specs_31 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_36 = { + sizeof(struct Reg_CommonSafetyRequest__regExtValue), + offsetof(struct Reg_CommonSafetyRequest__regExtValue, _asn_ctx), + offsetof(struct Reg_CommonSafetyRequest__regExtValue, present), + sizeof(((struct Reg_CommonSafetyRequest__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_36 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_36 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_35, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_35, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_34 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_36, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_36, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_36, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_34 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_CommonSafetyRequest_tags_34[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_CommonSafetyRequest_tag2el_34[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34 = { + sizeof(struct Reg_CommonSafetyRequest), + offsetof(struct Reg_CommonSafetyRequest, _asn_ctx), + asn_MAP_Reg_CommonSafetyRequest_tag2el_34, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest = { + "Reg-CommonSafetyRequest", + "Reg-CommonSafetyRequest", + &asn_OP_SEQUENCE, + asn_DEF_Reg_CommonSafetyRequest_tags_34, + sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) + /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ + asn_DEF_Reg_CommonSafetyRequest_tags_34, /* Same as above */ + sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) + /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_CommonSafetyRequest_34, + 2, /* Elements count */ + &asn_SPC_Reg_CommonSafetyRequest_specs_34 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_39 = { + sizeof(struct Reg_EmergencyVehicleAlert__regExtValue), + offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, _asn_ctx), + offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, present), + sizeof(((struct Reg_EmergencyVehicleAlert__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_39 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_39 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_38, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_38, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_37 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_39, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_39, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_39, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_37 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_EmergencyVehicleAlert_tags_37[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37 = { + sizeof(struct Reg_EmergencyVehicleAlert), + offsetof(struct Reg_EmergencyVehicleAlert, _asn_ctx), + asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert = { + "Reg-EmergencyVehicleAlert", + "Reg-EmergencyVehicleAlert", + &asn_OP_SEQUENCE, + asn_DEF_Reg_EmergencyVehicleAlert_tags_37, + sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) + /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ + asn_DEF_Reg_EmergencyVehicleAlert_tags_37, /* Same as above */ + sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) + /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_EmergencyVehicleAlert_37, + 2, /* Elements count */ + &asn_SPC_Reg_EmergencyVehicleAlert_specs_37 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_42 = { + sizeof(struct Reg_IntersectionCollision__regExtValue), + offsetof(struct Reg_IntersectionCollision__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionCollision__regExtValue, present), + sizeof(((struct Reg_IntersectionCollision__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_42 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_42 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_41, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_41, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_40 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_42, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_42, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_42, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_40 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionCollision_tags_40[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionCollision_tag2el_40[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40 = { + sizeof(struct Reg_IntersectionCollision), + offsetof(struct Reg_IntersectionCollision, _asn_ctx), + asn_MAP_Reg_IntersectionCollision_tag2el_40, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision = { + "Reg-IntersectionCollision", + "Reg-IntersectionCollision", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionCollision_tags_40, + sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) + /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ + asn_DEF_Reg_IntersectionCollision_tags_40, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) + /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionCollision_40, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionCollision_specs_40 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_45[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData__regExtValue, choice.MapData_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MapData_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MapData-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_45[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MapData-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_45 = { + sizeof(struct Reg_MapData__regExtValue), + offsetof(struct Reg_MapData__regExtValue, _asn_ctx), + offsetof(struct Reg_MapData__regExtValue, present), + sizeof(((struct Reg_MapData__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_45, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_45 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_45, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_45 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MapData_43[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_44, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_44, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_43 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_45, + select_Reg_MapData_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_45, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_45, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_43 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MapData_tags_43[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MapData_tag2el_43[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43 = { + sizeof(struct Reg_MapData), + offsetof(struct Reg_MapData, _asn_ctx), + asn_MAP_Reg_MapData_tag2el_43, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MapData = { + "Reg-MapData", + "Reg-MapData", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MapData_tags_43, + sizeof(asn_DEF_Reg_MapData_tags_43) + /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ + asn_DEF_Reg_MapData_tags_43, /* Same as above */ + sizeof(asn_DEF_Reg_MapData_tags_43) + /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MapData_43, + 2, /* Elements count */ + &asn_SPC_Reg_MapData_specs_43 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_48 = { + sizeof(struct Reg_GenericLane__regExtValue), + offsetof(struct Reg_GenericLane__regExtValue, _asn_ctx), + offsetof(struct Reg_GenericLane__regExtValue, present), + sizeof(((struct Reg_GenericLane__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_48 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_48 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_47, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_47, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_46 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_48, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_48, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_48, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_46 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GenericLane_tags_46[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GenericLane_tag2el_46[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46 = { + sizeof(struct Reg_GenericLane), + offsetof(struct Reg_GenericLane, _asn_ctx), + asn_MAP_Reg_GenericLane_tag2el_46, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane = { + "Reg-GenericLane", + "Reg-GenericLane", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GenericLane_tags_46, + sizeof(asn_DEF_Reg_GenericLane_tags_46) + /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ + asn_DEF_Reg_GenericLane_tags_46, /* Same as above */ + sizeof(asn_DEF_Reg_GenericLane_tags_46) + /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GenericLane_46, + 2, /* Elements count */ + &asn_SPC_Reg_GenericLane_specs_46 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_51 = { + sizeof(struct Reg_IntersectionGeometry__regExtValue), + offsetof(struct Reg_IntersectionGeometry__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionGeometry__regExtValue, present), + sizeof(((struct Reg_IntersectionGeometry__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_51 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_51 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_50, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_50, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_49 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_51, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_51, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_51, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_49 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionGeometry_tags_49[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionGeometry_tag2el_49[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49 = { + sizeof(struct Reg_IntersectionGeometry), + offsetof(struct Reg_IntersectionGeometry, _asn_ctx), + asn_MAP_Reg_IntersectionGeometry_tag2el_49, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry = { + "Reg-IntersectionGeometry", + "Reg-IntersectionGeometry", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionGeometry_tags_49, + sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) + /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ + asn_DEF_Reg_IntersectionGeometry_tags_49, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) + /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionGeometry_49, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionGeometry_specs_49 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_54 = { + sizeof(struct Reg_LaneAttributes__regExtValue), + offsetof(struct Reg_LaneAttributes__regExtValue, _asn_ctx), + offsetof(struct Reg_LaneAttributes__regExtValue, present), + sizeof(((struct Reg_LaneAttributes__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_54 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_54 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_53, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_53, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_52 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_54, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_54, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_54, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_52 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_LaneAttributes_tags_52[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneAttributes_tag2el_52[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52 = { + sizeof(struct Reg_LaneAttributes), + offsetof(struct Reg_LaneAttributes, _asn_ctx), + asn_MAP_Reg_LaneAttributes_tag2el_52, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes = { + "Reg-LaneAttributes", + "Reg-LaneAttributes", + &asn_OP_SEQUENCE, + asn_DEF_Reg_LaneAttributes_tags_52, + sizeof(asn_DEF_Reg_LaneAttributes_tags_52) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ + asn_DEF_Reg_LaneAttributes_tags_52, /* Same as above */ + sizeof(asn_DEF_Reg_LaneAttributes_tags_52) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_LaneAttributes_52, + 2, /* Elements count */ + &asn_SPC_Reg_LaneAttributes_specs_52 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_57 = { + sizeof(struct Reg_SignalControlZone__regExtValue), + offsetof(struct Reg_SignalControlZone__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalControlZone__regExtValue, present), + sizeof(((struct Reg_SignalControlZone__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_57 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_57 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_56, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_56, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_55 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_57, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_57, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_57, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_55 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalControlZone_tags_55[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalControlZone_tag2el_55[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55 = { + sizeof(struct Reg_SignalControlZone), + offsetof(struct Reg_SignalControlZone, _asn_ctx), + asn_MAP_Reg_SignalControlZone_tag2el_55, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone = { + "Reg-SignalControlZone", + "Reg-SignalControlZone", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalControlZone_tags_55, + sizeof(asn_DEF_Reg_SignalControlZone_tags_55) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ + asn_DEF_Reg_SignalControlZone_tags_55, /* Same as above */ + sizeof(asn_DEF_Reg_SignalControlZone_tags_55) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalControlZone_55, + 2, /* Elements count */ + &asn_SPC_Reg_SignalControlZone_specs_55 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_60[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType__regExtValue, choice.RestrictionUserType_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionUserType_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RestrictionUserType-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_60[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RestrictionUserType-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_60 = { + sizeof(struct Reg_RestrictionUserType__regExtValue), + offsetof(struct Reg_RestrictionUserType__regExtValue, _asn_ctx), + offsetof(struct Reg_RestrictionUserType__regExtValue, present), + sizeof(((struct Reg_RestrictionUserType__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_60, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_60 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_60, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_60 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_59, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_59, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_58 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_60, + select_Reg_RestrictionUserType_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_60, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_60, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_58 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RestrictionUserType_tags_58[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RestrictionUserType_tag2el_58[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58 = { + sizeof(struct Reg_RestrictionUserType), + offsetof(struct Reg_RestrictionUserType, _asn_ctx), + asn_MAP_Reg_RestrictionUserType_tag2el_58, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType = { + "Reg-RestrictionUserType", + "Reg-RestrictionUserType", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RestrictionUserType_tags_58, + sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ + asn_DEF_Reg_RestrictionUserType_tags_58, /* Same as above */ + sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RestrictionUserType_58, + 2, /* Elements count */ + &asn_SPC_Reg_RestrictionUserType_specs_58 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_63 = { + sizeof(struct Reg_RoadSegment__regExtValue), + offsetof(struct Reg_RoadSegment__regExtValue, _asn_ctx), + offsetof(struct Reg_RoadSegment__regExtValue, present), + sizeof(((struct Reg_RoadSegment__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_63 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_63 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_62, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_62, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_61 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_63, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_63, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_63, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_61 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RoadSegment_tags_61[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSegment_tag2el_61[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61 = { + sizeof(struct Reg_RoadSegment), + offsetof(struct Reg_RoadSegment, _asn_ctx), + asn_MAP_Reg_RoadSegment_tag2el_61, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment = { + "Reg-RoadSegment", + "Reg-RoadSegment", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RoadSegment_tags_61, + sizeof(asn_DEF_Reg_RoadSegment_tags_61) + /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ + asn_DEF_Reg_RoadSegment_tags_61, /* Same as above */ + sizeof(asn_DEF_Reg_RoadSegment_tags_61) + /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RoadSegment_61, + 2, /* Elements count */ + &asn_SPC_Reg_RoadSegment_specs_61 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_66 = { + sizeof(struct Reg_NMEAcorrections__regExtValue), + offsetof(struct Reg_NMEAcorrections__regExtValue, _asn_ctx), + offsetof(struct Reg_NMEAcorrections__regExtValue, present), + sizeof(((struct Reg_NMEAcorrections__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_66 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_66 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_65, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_65, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_64 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_66, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_66, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_66, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_64 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NMEAcorrections_tags_64[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NMEAcorrections_tag2el_64[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64 = { + sizeof(struct Reg_NMEAcorrections), + offsetof(struct Reg_NMEAcorrections, _asn_ctx), + asn_MAP_Reg_NMEAcorrections_tag2el_64, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections = { + "Reg-NMEAcorrections", + "Reg-NMEAcorrections", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NMEAcorrections_tags_64, + sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) + /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ + asn_DEF_Reg_NMEAcorrections_tags_64, /* Same as above */ + sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) + /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NMEAcorrections_64, + 2, /* Elements count */ + &asn_SPC_Reg_NMEAcorrections_specs_64 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_69 = { + sizeof(struct Reg_PersonalSafetyMessage__regExtValue), + offsetof(struct Reg_PersonalSafetyMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_PersonalSafetyMessage__regExtValue, present), + sizeof(((struct Reg_PersonalSafetyMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_69 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_69 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_68, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_68, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_67 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_69, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_69, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_69, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_67 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_PersonalSafetyMessage_tags_67[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_PersonalSafetyMessage_tag2el_67[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67 = { + sizeof(struct Reg_PersonalSafetyMessage), + offsetof(struct Reg_PersonalSafetyMessage, _asn_ctx), + asn_MAP_Reg_PersonalSafetyMessage_tag2el_67, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage = { + "Reg-PersonalSafetyMessage", + "Reg-PersonalSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_PersonalSafetyMessage_tags_67, + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ + asn_DEF_Reg_PersonalSafetyMessage_tags_67, /* Same as above */ + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_PersonalSafetyMessage_67, + 2, /* Elements count */ + &asn_SPC_Reg_PersonalSafetyMessage_specs_67 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_72 = { + sizeof(struct Reg_ProbeDataManagement__regExtValue), + offsetof(struct Reg_ProbeDataManagement__regExtValue, _asn_ctx), + offsetof(struct Reg_ProbeDataManagement__regExtValue, present), + sizeof(((struct Reg_ProbeDataManagement__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_72 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_72 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_71, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_71, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_70 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_72, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_72, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_72, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_70 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ProbeDataManagement_tags_70[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeDataManagement_tag2el_70[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70 = { + sizeof(struct Reg_ProbeDataManagement), + offsetof(struct Reg_ProbeDataManagement, _asn_ctx), + asn_MAP_Reg_ProbeDataManagement_tag2el_70, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement = { + "Reg-ProbeDataManagement", + "Reg-ProbeDataManagement", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ProbeDataManagement_tags_70, + sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) + /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ + asn_DEF_Reg_ProbeDataManagement_tags_70, /* Same as above */ + sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) + /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ProbeDataManagement_70, + 2, /* Elements count */ + &asn_SPC_Reg_ProbeDataManagement_specs_70 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_75 = { + sizeof(struct Reg_ProbeVehicleData__regExtValue), + offsetof(struct Reg_ProbeVehicleData__regExtValue, _asn_ctx), + offsetof(struct Reg_ProbeVehicleData__regExtValue, present), + sizeof(((struct Reg_ProbeVehicleData__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_75 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_75 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_74, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_74, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_73 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_75, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_75, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_75, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_73 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ProbeVehicleData_tags_73[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeVehicleData_tag2el_73[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73 = { + sizeof(struct Reg_ProbeVehicleData), + offsetof(struct Reg_ProbeVehicleData, _asn_ctx), + asn_MAP_Reg_ProbeVehicleData_tag2el_73, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData = { + "Reg-ProbeVehicleData", + "Reg-ProbeVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ProbeVehicleData_tags_73, + sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) + /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ + asn_DEF_Reg_ProbeVehicleData_tags_73, /* Same as above */ + sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) + /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ProbeVehicleData_73, + 2, /* Elements count */ + &asn_SPC_Reg_ProbeVehicleData_specs_73 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_78 = { + sizeof(struct Reg_RoadSideAlert__regExtValue), + offsetof(struct Reg_RoadSideAlert__regExtValue, _asn_ctx), + offsetof(struct Reg_RoadSideAlert__regExtValue, present), + sizeof(((struct Reg_RoadSideAlert__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_78 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_78 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_77, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_77, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_76 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_78, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_78, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_78, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_76 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RoadSideAlert_tags_76[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSideAlert_tag2el_76[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76 = { + sizeof(struct Reg_RoadSideAlert), + offsetof(struct Reg_RoadSideAlert, _asn_ctx), + asn_MAP_Reg_RoadSideAlert_tag2el_76, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert = { + "Reg-RoadSideAlert", + "Reg-RoadSideAlert", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RoadSideAlert_tags_76, + sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) + /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ + asn_DEF_Reg_RoadSideAlert_tags_76, /* Same as above */ + sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) + /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RoadSideAlert_76, + 2, /* Elements count */ + &asn_SPC_Reg_RoadSideAlert_specs_76 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_81 = { + sizeof(struct Reg_RTCMcorrections__regExtValue), + offsetof(struct Reg_RTCMcorrections__regExtValue, _asn_ctx), + offsetof(struct Reg_RTCMcorrections__regExtValue, present), + sizeof(((struct Reg_RTCMcorrections__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_81 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_81 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_80, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_80, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_79 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_81, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_81, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_81, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_79 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RTCMcorrections_tags_79[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RTCMcorrections_tag2el_79[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79 = { + sizeof(struct Reg_RTCMcorrections), + offsetof(struct Reg_RTCMcorrections, _asn_ctx), + asn_MAP_Reg_RTCMcorrections_tag2el_79, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections = { + "Reg-RTCMcorrections", + "Reg-RTCMcorrections", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RTCMcorrections_tags_79, + sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) + /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ + asn_DEF_Reg_RTCMcorrections_tags_79, /* Same as above */ + sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) + /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RTCMcorrections_79, + 2, /* Elements count */ + &asn_SPC_Reg_RTCMcorrections_specs_79 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_84 = { + sizeof(struct Reg_SignalRequestMessage__regExtValue), + offsetof(struct Reg_SignalRequestMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequestMessage__regExtValue, present), + sizeof(((struct Reg_SignalRequestMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_84 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_84 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_83, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_83, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_82 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_84, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_84, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_84, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_82 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestMessage_tags_82[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestMessage_tag2el_82[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82 = { + sizeof(struct Reg_SignalRequestMessage), + offsetof(struct Reg_SignalRequestMessage, _asn_ctx), + asn_MAP_Reg_SignalRequestMessage_tag2el_82, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage = { + "Reg-SignalRequestMessage", + "Reg-SignalRequestMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequestMessage_tags_82, + sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) + /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ + asn_DEF_Reg_SignalRequestMessage_tags_82, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) + /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequestMessage_82, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequestMessage_specs_82 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_87 = { + sizeof(struct Reg_RequestorDescription__regExtValue), + offsetof(struct Reg_RequestorDescription__regExtValue, _asn_ctx), + offsetof(struct Reg_RequestorDescription__regExtValue, present), + sizeof(((struct Reg_RequestorDescription__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_87 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_87 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_86, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_86, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_85 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_87, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_87, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_87, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_85 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RequestorDescription_tags_85[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorDescription_tag2el_85[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85 = { + sizeof(struct Reg_RequestorDescription), + offsetof(struct Reg_RequestorDescription, _asn_ctx), + asn_MAP_Reg_RequestorDescription_tag2el_85, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription = { + "Reg-RequestorDescription", + "Reg-RequestorDescription", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RequestorDescription_tags_85, + sizeof(asn_DEF_Reg_RequestorDescription_tags_85) + /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ + asn_DEF_Reg_RequestorDescription_tags_85, /* Same as above */ + sizeof(asn_DEF_Reg_RequestorDescription_tags_85) + /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RequestorDescription_85, + 2, /* Elements count */ + &asn_SPC_Reg_RequestorDescription_specs_85 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_90 = { + sizeof(struct Reg_SignalRequestPackage__regExtValue), + offsetof(struct Reg_SignalRequestPackage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequestPackage__regExtValue, present), + sizeof(((struct Reg_SignalRequestPackage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_90 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_90 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_89, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_89, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_88 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_90, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_90, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_90, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_88 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestPackage_tags_88[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestPackage_tag2el_88[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88 = { + sizeof(struct Reg_SignalRequestPackage), + offsetof(struct Reg_SignalRequestPackage, _asn_ctx), + asn_MAP_Reg_SignalRequestPackage_tag2el_88, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage = { + "Reg-SignalRequestPackage", + "Reg-SignalRequestPackage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequestPackage_tags_88, + sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) + /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ + asn_DEF_Reg_SignalRequestPackage_tags_88, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) + /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequestPackage_88, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequestPackage_specs_88 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_93 = { + sizeof(struct Reg_SignalRequest__regExtValue), + offsetof(struct Reg_SignalRequest__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequest__regExtValue, present), + sizeof(((struct Reg_SignalRequest__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_93 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_93 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_92, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_92, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_91 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_93, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_93, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_93, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_91 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequest_tags_91[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequest_tag2el_91[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91 = { + sizeof(struct Reg_SignalRequest), + offsetof(struct Reg_SignalRequest, _asn_ctx), + asn_MAP_Reg_SignalRequest_tag2el_91, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest = { + "Reg-SignalRequest", + "Reg-SignalRequest", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequest_tags_91, + sizeof(asn_DEF_Reg_SignalRequest_tags_91) + /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ + asn_DEF_Reg_SignalRequest_tags_91, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequest_tags_91) + /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequest_91, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequest_specs_91 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_96 = { + sizeof(struct Reg_SignalStatusMessage__regExtValue), + offsetof(struct Reg_SignalStatusMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatusMessage__regExtValue, present), + sizeof(((struct Reg_SignalStatusMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_96 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_96 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_95, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_95, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_94 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_96, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_96, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_96, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_94 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusMessage_tags_94[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusMessage_tag2el_94[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94 = { + sizeof(struct Reg_SignalStatusMessage), + offsetof(struct Reg_SignalStatusMessage, _asn_ctx), + asn_MAP_Reg_SignalStatusMessage_tag2el_94, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage = { + "Reg-SignalStatusMessage", + "Reg-SignalStatusMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatusMessage_tags_94, + sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) + /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ + asn_DEF_Reg_SignalStatusMessage_tags_94, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) + /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatusMessage_94, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatusMessage_specs_94 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_99 = { + sizeof(struct Reg_SignalStatusPackage__regExtValue), + offsetof(struct Reg_SignalStatusPackage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatusPackage__regExtValue, present), + sizeof(((struct Reg_SignalStatusPackage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_99 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_99 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_98, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_98, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_97 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_99, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_99, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_99, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_97 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusPackage_tags_97[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusPackage_tag2el_97[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97 = { + sizeof(struct Reg_SignalStatusPackage), + offsetof(struct Reg_SignalStatusPackage, _asn_ctx), + asn_MAP_Reg_SignalStatusPackage_tag2el_97, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage = { + "Reg-SignalStatusPackage", + "Reg-SignalStatusPackage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatusPackage_tags_97, + sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) + /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ + asn_DEF_Reg_SignalStatusPackage_tags_97, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) + /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatusPackage_97, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatusPackage_specs_97 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_102 = { + sizeof(struct Reg_SignalStatus__regExtValue), + offsetof(struct Reg_SignalStatus__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatus__regExtValue, present), + sizeof(((struct Reg_SignalStatus__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_102 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_102 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_101, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_101, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_100 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_102, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_102, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_102, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_100 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatus_tags_100[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatus_tag2el_100[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100 = { + sizeof(struct Reg_SignalStatus), + offsetof(struct Reg_SignalStatus, _asn_ctx), + asn_MAP_Reg_SignalStatus_tag2el_100, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus = { + "Reg-SignalStatus", + "Reg-SignalStatus", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatus_tags_100, + sizeof(asn_DEF_Reg_SignalStatus_tags_100) + /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ + asn_DEF_Reg_SignalStatus_tags_100, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatus_tags_100) + /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatus_100, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatus_specs_100 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_105 = { + sizeof(struct Reg_SPAT__regExtValue), + offsetof(struct Reg_SPAT__regExtValue, _asn_ctx), + offsetof(struct Reg_SPAT__regExtValue, present), + sizeof(((struct Reg_SPAT__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_105 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_105 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SPAT_103[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_104, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_104, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_103 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_105, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_105, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_105, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_103 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SPAT_tags_103[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SPAT_tag2el_103[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103 = { + sizeof(struct Reg_SPAT), + offsetof(struct Reg_SPAT, _asn_ctx), + asn_MAP_Reg_SPAT_tag2el_103, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SPAT = { + "Reg-SPAT", + "Reg-SPAT", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SPAT_tags_103, + sizeof(asn_DEF_Reg_SPAT_tags_103) + /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ + asn_DEF_Reg_SPAT_tags_103, /* Same as above */ + sizeof(asn_DEF_Reg_SPAT_tags_103) + /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SPAT_103, + 2, /* Elements count */ + &asn_SPC_Reg_SPAT_specs_103 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_108 = { + sizeof(struct Reg_AdvisorySpeed__regExtValue), + offsetof(struct Reg_AdvisorySpeed__regExtValue, _asn_ctx), + offsetof(struct Reg_AdvisorySpeed__regExtValue, present), + sizeof(((struct Reg_AdvisorySpeed__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_108 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_108 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_107, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_107, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_106 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_108, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_108, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_108, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_106 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_AdvisorySpeed_tags_106[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_AdvisorySpeed_tag2el_106[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106 = { + sizeof(struct Reg_AdvisorySpeed), + offsetof(struct Reg_AdvisorySpeed, _asn_ctx), + asn_MAP_Reg_AdvisorySpeed_tag2el_106, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed = { + "Reg-AdvisorySpeed", + "Reg-AdvisorySpeed", + &asn_OP_SEQUENCE, + asn_DEF_Reg_AdvisorySpeed_tags_106, + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ + asn_DEF_Reg_AdvisorySpeed_tags_106, /* Same as above */ + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_AdvisorySpeed_106, + 2, /* Elements count */ + &asn_SPC_Reg_AdvisorySpeed_specs_106 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_111[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, choice.ConnectionManeuverAssist_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ConnectionManeuverAssist-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_111[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* ConnectionManeuverAssist-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_111 = { + sizeof(struct Reg_ConnectionManeuverAssist__regExtValue), + offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, _asn_ctx), + offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, present), + sizeof(((struct Reg_ConnectionManeuverAssist__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_111, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_111 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_111, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_111 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_110, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_110, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_109 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_111, + select_Reg_ConnectionManeuverAssist_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_111, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_111, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_109 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ConnectionManeuverAssist_tags_109[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109 = { + sizeof(struct Reg_ConnectionManeuverAssist), + offsetof(struct Reg_ConnectionManeuverAssist, _asn_ctx), + asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist = { + "Reg-ConnectionManeuverAssist", + "Reg-ConnectionManeuverAssist", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ConnectionManeuverAssist_tags_109, + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ + asn_DEF_Reg_ConnectionManeuverAssist_tags_109, /* Same as above */ + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ConnectionManeuverAssist_109, + 2, /* Elements count */ + &asn_SPC_Reg_ConnectionManeuverAssist_specs_109 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_114[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState__regExtValue, choice.IntersectionState_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "IntersectionState-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_114[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* IntersectionState-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_114 = { + sizeof(struct Reg_IntersectionState__regExtValue), + offsetof(struct Reg_IntersectionState__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionState__regExtValue, present), + sizeof(((struct Reg_IntersectionState__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_114, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_114 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_114, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_114 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_113, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_113, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_112 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_114, + select_Reg_IntersectionState_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_114, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_114, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_112 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionState_tags_112[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionState_tag2el_112[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112 = { + sizeof(struct Reg_IntersectionState), + offsetof(struct Reg_IntersectionState, _asn_ctx), + asn_MAP_Reg_IntersectionState_tag2el_112, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState = { + "Reg-IntersectionState", + "Reg-IntersectionState", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionState_tags_112, + sizeof(asn_DEF_Reg_IntersectionState_tags_112) + /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ + asn_DEF_Reg_IntersectionState_tags_112, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionState_tags_112) + /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionState_112, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionState_specs_112 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_117[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent__regExtValue, choice.MovementEvent_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MovementEvent-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_117[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MovementEvent-addGrpB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_117 = { + sizeof(struct Reg_MovementEvent__regExtValue), + offsetof(struct Reg_MovementEvent__regExtValue, _asn_ctx), + offsetof(struct Reg_MovementEvent__regExtValue, present), + sizeof(((struct Reg_MovementEvent__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_117, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_117 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_117, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_117 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_116, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_116, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_115 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_117, + select_Reg_MovementEvent_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_117, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_117, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_115 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MovementEvent_tags_115[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementEvent_tag2el_115[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115 = { + sizeof(struct Reg_MovementEvent), + offsetof(struct Reg_MovementEvent, _asn_ctx), + asn_MAP_Reg_MovementEvent_tag2el_115, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent = { + "Reg-MovementEvent", + "Reg-MovementEvent", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MovementEvent_tags_115, + sizeof(asn_DEF_Reg_MovementEvent_tags_115) + /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ + asn_DEF_Reg_MovementEvent_tags_115, /* Same as above */ + sizeof(asn_DEF_Reg_MovementEvent_tags_115) + /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MovementEvent_115, + 2, /* Elements count */ + &asn_SPC_Reg_MovementEvent_specs_115 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_120 = { + sizeof(struct Reg_MovementState__regExtValue), + offsetof(struct Reg_MovementState__regExtValue, _asn_ctx), + offsetof(struct Reg_MovementState__regExtValue, present), + sizeof(((struct Reg_MovementState__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_120 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_120 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MovementState_118[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_119, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_119, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_118 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_120, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_120, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_120, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_118 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MovementState_tags_118[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementState_tag2el_118[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118 = { + sizeof(struct Reg_MovementState), + offsetof(struct Reg_MovementState, _asn_ctx), + asn_MAP_Reg_MovementState_tag2el_118, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementState = { + "Reg-MovementState", + "Reg-MovementState", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MovementState_tags_118, + sizeof(asn_DEF_Reg_MovementState_tags_118) + /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ + asn_DEF_Reg_MovementState_tags_118, /* Same as above */ + sizeof(asn_DEF_Reg_MovementState_tags_118) + /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MovementState_118, + 2, /* Elements count */ + &asn_SPC_Reg_MovementState_specs_118 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_123 = { + sizeof(struct Reg_TestMessage00__regExtValue), + offsetof(struct Reg_TestMessage00__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage00__regExtValue, present), + sizeof(((struct Reg_TestMessage00__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_123 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_123 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_122, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_122, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_121 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_123, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_123, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_123, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_121 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage00_tags_121[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage00_tag2el_121[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121 = { + sizeof(struct Reg_TestMessage00), + offsetof(struct Reg_TestMessage00, _asn_ctx), + asn_MAP_Reg_TestMessage00_tag2el_121, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00 = { + "Reg-TestMessage00", + "Reg-TestMessage00", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage00_tags_121, + sizeof(asn_DEF_Reg_TestMessage00_tags_121) + /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ + asn_DEF_Reg_TestMessage00_tags_121, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage00_tags_121) + /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage00_121, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage00_specs_121 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_126 = { + sizeof(struct Reg_TestMessage01__regExtValue), + offsetof(struct Reg_TestMessage01__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage01__regExtValue, present), + sizeof(((struct Reg_TestMessage01__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_126 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_126 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_125, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_125, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_124 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_126, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_126, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_126, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_124 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage01_tags_124[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage01_tag2el_124[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124 = { + sizeof(struct Reg_TestMessage01), + offsetof(struct Reg_TestMessage01, _asn_ctx), + asn_MAP_Reg_TestMessage01_tag2el_124, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01 = { + "Reg-TestMessage01", + "Reg-TestMessage01", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage01_tags_124, + sizeof(asn_DEF_Reg_TestMessage01_tags_124) + /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ + asn_DEF_Reg_TestMessage01_tags_124, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage01_tags_124) + /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage01_124, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage01_specs_124 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_129 = { + sizeof(struct Reg_TestMessage02__regExtValue), + offsetof(struct Reg_TestMessage02__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage02__regExtValue, present), + sizeof(((struct Reg_TestMessage02__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_129 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_129 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_128, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_128, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_127 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_129, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_129, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_129, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_127 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage02_tags_127[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage02_tag2el_127[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127 = { + sizeof(struct Reg_TestMessage02), + offsetof(struct Reg_TestMessage02, _asn_ctx), + asn_MAP_Reg_TestMessage02_tag2el_127, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02 = { + "Reg-TestMessage02", + "Reg-TestMessage02", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage02_tags_127, + sizeof(asn_DEF_Reg_TestMessage02_tags_127) + /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ + asn_DEF_Reg_TestMessage02_tags_127, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage02_tags_127) + /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage02_127, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage02_specs_127 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_132 = { + sizeof(struct Reg_TestMessage03__regExtValue), + offsetof(struct Reg_TestMessage03__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage03__regExtValue, present), + sizeof(((struct Reg_TestMessage03__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_132 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_132 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_131, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_131, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_130 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_132, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_132, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_132, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_130 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage03_tags_130[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage03_tag2el_130[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130 = { + sizeof(struct Reg_TestMessage03), + offsetof(struct Reg_TestMessage03, _asn_ctx), + asn_MAP_Reg_TestMessage03_tag2el_130, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03 = { + "Reg-TestMessage03", + "Reg-TestMessage03", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage03_tags_130, + sizeof(asn_DEF_Reg_TestMessage03_tags_130) + /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ + asn_DEF_Reg_TestMessage03_tags_130, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage03_tags_130) + /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage03_130, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage03_specs_130 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_135 = { + sizeof(struct Reg_TestMessage04__regExtValue), + offsetof(struct Reg_TestMessage04__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage04__regExtValue, present), + sizeof(((struct Reg_TestMessage04__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_135 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_135 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_134, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_134, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_133 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_135, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_135, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_135, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_133 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage04_tags_133[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage04_tag2el_133[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133 = { + sizeof(struct Reg_TestMessage04), + offsetof(struct Reg_TestMessage04, _asn_ctx), + asn_MAP_Reg_TestMessage04_tag2el_133, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04 = { + "Reg-TestMessage04", + "Reg-TestMessage04", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage04_tags_133, + sizeof(asn_DEF_Reg_TestMessage04_tags_133) + /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ + asn_DEF_Reg_TestMessage04_tags_133, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage04_tags_133) + /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage04_133, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage04_specs_133 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_138 = { + sizeof(struct Reg_TestMessage05__regExtValue), + offsetof(struct Reg_TestMessage05__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage05__regExtValue, present), + sizeof(((struct Reg_TestMessage05__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_138 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_138 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_137, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_137, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_136 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_138, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_138, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_138, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_136 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage05_tags_136[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage05_tag2el_136[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136 = { + sizeof(struct Reg_TestMessage05), + offsetof(struct Reg_TestMessage05, _asn_ctx), + asn_MAP_Reg_TestMessage05_tag2el_136, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05 = { + "Reg-TestMessage05", + "Reg-TestMessage05", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage05_tags_136, + sizeof(asn_DEF_Reg_TestMessage05_tags_136) + /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ + asn_DEF_Reg_TestMessage05_tags_136, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage05_tags_136) + /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage05_136, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage05_specs_136 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_141 = { + sizeof(struct Reg_TestMessage06__regExtValue), + offsetof(struct Reg_TestMessage06__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage06__regExtValue, present), + sizeof(((struct Reg_TestMessage06__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_141 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_141 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_140, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_140, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_139 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_141, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_141, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_141, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_139 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage06_tags_139[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage06_tag2el_139[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139 = { + sizeof(struct Reg_TestMessage06), + offsetof(struct Reg_TestMessage06, _asn_ctx), + asn_MAP_Reg_TestMessage06_tag2el_139, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06 = { + "Reg-TestMessage06", + "Reg-TestMessage06", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage06_tags_139, + sizeof(asn_DEF_Reg_TestMessage06_tags_139) + /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ + asn_DEF_Reg_TestMessage06_tags_139, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage06_tags_139) + /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage06_139, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage06_specs_139 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_144 = { + sizeof(struct Reg_TestMessage07__regExtValue), + offsetof(struct Reg_TestMessage07__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage07__regExtValue, present), + sizeof(((struct Reg_TestMessage07__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_144 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_144 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_143, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_143, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_142 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_144, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_144, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_144, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_142 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage07_tags_142[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage07_tag2el_142[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142 = { + sizeof(struct Reg_TestMessage07), + offsetof(struct Reg_TestMessage07, _asn_ctx), + asn_MAP_Reg_TestMessage07_tag2el_142, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07 = { + "Reg-TestMessage07", + "Reg-TestMessage07", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage07_tags_142, + sizeof(asn_DEF_Reg_TestMessage07_tags_142) + /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ + asn_DEF_Reg_TestMessage07_tags_142, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage07_tags_142) + /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage07_142, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage07_specs_142 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_147 = { + sizeof(struct Reg_TestMessage08__regExtValue), + offsetof(struct Reg_TestMessage08__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage08__regExtValue, present), + sizeof(((struct Reg_TestMessage08__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_147 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_147 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_146, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_146, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_145 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_147, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_147, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_147, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_145 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage08_tags_145[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage08_tag2el_145[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145 = { + sizeof(struct Reg_TestMessage08), + offsetof(struct Reg_TestMessage08, _asn_ctx), + asn_MAP_Reg_TestMessage08_tag2el_145, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08 = { + "Reg-TestMessage08", + "Reg-TestMessage08", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage08_tags_145, + sizeof(asn_DEF_Reg_TestMessage08_tags_145) + /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ + asn_DEF_Reg_TestMessage08_tags_145, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage08_tags_145) + /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage08_145, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage08_specs_145 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_150 = { + sizeof(struct Reg_TestMessage09__regExtValue), + offsetof(struct Reg_TestMessage09__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage09__regExtValue, present), + sizeof(((struct Reg_TestMessage09__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_150 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_150 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_149, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_149, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_148 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_150, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_150, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_150, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_148 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage09_tags_148[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage09_tag2el_148[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148 = { + sizeof(struct Reg_TestMessage09), + offsetof(struct Reg_TestMessage09, _asn_ctx), + asn_MAP_Reg_TestMessage09_tag2el_148, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09 = { + "Reg-TestMessage09", + "Reg-TestMessage09", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage09_tags_148, + sizeof(asn_DEF_Reg_TestMessage09_tags_148) + /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ + asn_DEF_Reg_TestMessage09_tags_148, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage09_tags_148) + /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage09_148, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage09_specs_148 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_153 = { + sizeof(struct Reg_TestMessage10__regExtValue), + offsetof(struct Reg_TestMessage10__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage10__regExtValue, present), + sizeof(((struct Reg_TestMessage10__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_153 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_153 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_152, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_152, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_151 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_153, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_153, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_153, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_151 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage10_tags_151[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage10_tag2el_151[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151 = { + sizeof(struct Reg_TestMessage10), + offsetof(struct Reg_TestMessage10, _asn_ctx), + asn_MAP_Reg_TestMessage10_tag2el_151, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10 = { + "Reg-TestMessage10", + "Reg-TestMessage10", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage10_tags_151, + sizeof(asn_DEF_Reg_TestMessage10_tags_151) + /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ + asn_DEF_Reg_TestMessage10_tags_151, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage10_tags_151) + /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage10_151, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage10_specs_151 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_156 = { + sizeof(struct Reg_TestMessage11__regExtValue), + offsetof(struct Reg_TestMessage11__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage11__regExtValue, present), + sizeof(((struct Reg_TestMessage11__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_156 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_156 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_155, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_155, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_154 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_156, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_156, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_156, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_154 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage11_tags_154[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage11_tag2el_154[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154 = { + sizeof(struct Reg_TestMessage11), + offsetof(struct Reg_TestMessage11, _asn_ctx), + asn_MAP_Reg_TestMessage11_tag2el_154, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11 = { + "Reg-TestMessage11", + "Reg-TestMessage11", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage11_tags_154, + sizeof(asn_DEF_Reg_TestMessage11_tags_154) + /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ + asn_DEF_Reg_TestMessage11_tags_154, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage11_tags_154) + /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage11_154, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage11_specs_154 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_159 = { + sizeof(struct Reg_TestMessage12__regExtValue), + offsetof(struct Reg_TestMessage12__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage12__regExtValue, present), + sizeof(((struct Reg_TestMessage12__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_159 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_159 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_158, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_158, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_157 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_159, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_159, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_159, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_157 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage12_tags_157[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage12_tag2el_157[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157 = { + sizeof(struct Reg_TestMessage12), + offsetof(struct Reg_TestMessage12, _asn_ctx), + asn_MAP_Reg_TestMessage12_tag2el_157, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12 = { + "Reg-TestMessage12", + "Reg-TestMessage12", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage12_tags_157, + sizeof(asn_DEF_Reg_TestMessage12_tags_157) + /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ + asn_DEF_Reg_TestMessage12_tags_157, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage12_tags_157) + /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage12_157, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage12_specs_157 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_162 = { + sizeof(struct Reg_TestMessage13__regExtValue), + offsetof(struct Reg_TestMessage13__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage13__regExtValue, present), + sizeof(((struct Reg_TestMessage13__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_162 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_162 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_161, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_161, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_160 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_162, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_162, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_162, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_160 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage13_tags_160[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage13_tag2el_160[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160 = { + sizeof(struct Reg_TestMessage13), + offsetof(struct Reg_TestMessage13, _asn_ctx), + asn_MAP_Reg_TestMessage13_tag2el_160, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13 = { + "Reg-TestMessage13", + "Reg-TestMessage13", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage13_tags_160, + sizeof(asn_DEF_Reg_TestMessage13_tags_160) + /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ + asn_DEF_Reg_TestMessage13_tags_160, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage13_tags_160) + /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage13_160, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage13_specs_160 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_165 = { + sizeof(struct Reg_TestMessage14__regExtValue), + offsetof(struct Reg_TestMessage14__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage14__regExtValue, present), + sizeof(((struct Reg_TestMessage14__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_165 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_165 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_164, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_164, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_163 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_165, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_165, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_165, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_163 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage14_tags_163[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage14_tag2el_163[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163 = { + sizeof(struct Reg_TestMessage14), + offsetof(struct Reg_TestMessage14, _asn_ctx), + asn_MAP_Reg_TestMessage14_tag2el_163, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14 = { + "Reg-TestMessage14", + "Reg-TestMessage14", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage14_tags_163, + sizeof(asn_DEF_Reg_TestMessage14_tags_163) + /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ + asn_DEF_Reg_TestMessage14_tags_163, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage14_tags_163) + /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage14_163, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage14_specs_163 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_168 = { + sizeof(struct Reg_TestMessage15__regExtValue), + offsetof(struct Reg_TestMessage15__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage15__regExtValue, present), + sizeof(((struct Reg_TestMessage15__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_168 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_168 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_167, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_167, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_166 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_168, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_168, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_168, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_166 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage15_tags_166[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage15_tag2el_166[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166 = { + sizeof(struct Reg_TestMessage15), + offsetof(struct Reg_TestMessage15, _asn_ctx), + asn_MAP_Reg_TestMessage15_tag2el_166, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15 = { + "Reg-TestMessage15", + "Reg-TestMessage15", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage15_tags_166, + sizeof(asn_DEF_Reg_TestMessage15_tags_166) + /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ + asn_DEF_Reg_TestMessage15_tags_166, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage15_tags_166) + /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage15_166, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage15_specs_166 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_171 = { + sizeof(struct Reg_TravelerInformation__regExtValue), + offsetof(struct Reg_TravelerInformation__regExtValue, _asn_ctx), + offsetof(struct Reg_TravelerInformation__regExtValue, present), + sizeof(((struct Reg_TravelerInformation__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_171 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_171 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_170, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_170, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_169 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_171, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_171, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_171, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_169 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TravelerInformation_tags_169[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TravelerInformation_tag2el_169[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169 = { + sizeof(struct Reg_TravelerInformation), + offsetof(struct Reg_TravelerInformation, _asn_ctx), + asn_MAP_Reg_TravelerInformation_tag2el_169, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation = { + "Reg-TravelerInformation", + "Reg-TravelerInformation", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TravelerInformation_tags_169, + sizeof(asn_DEF_Reg_TravelerInformation_tags_169) + /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ + asn_DEF_Reg_TravelerInformation_tags_169, /* Same as above */ + sizeof(asn_DEF_Reg_TravelerInformation_tags_169) + /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TravelerInformation_169, + 2, /* Elements count */ + &asn_SPC_Reg_TravelerInformation_specs_169 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_174 = { + sizeof(struct Reg_GeographicalPath__regExtValue), + offsetof(struct Reg_GeographicalPath__regExtValue, _asn_ctx), + offsetof(struct Reg_GeographicalPath__regExtValue, present), + sizeof(((struct Reg_GeographicalPath__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_174 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_174 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_173, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_173, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_172 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_174, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_174, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_174, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_172 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GeographicalPath_tags_172[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GeographicalPath_tag2el_172[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172 = { + sizeof(struct Reg_GeographicalPath), + offsetof(struct Reg_GeographicalPath, _asn_ctx), + asn_MAP_Reg_GeographicalPath_tag2el_172, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath = { + "Reg-GeographicalPath", + "Reg-GeographicalPath", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GeographicalPath_tags_172, + sizeof(asn_DEF_Reg_GeographicalPath_tags_172) + /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ + asn_DEF_Reg_GeographicalPath_tags_172, /* Same as above */ + sizeof(asn_DEF_Reg_GeographicalPath_tags_172) + /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GeographicalPath_172, + 2, /* Elements count */ + &asn_SPC_Reg_GeographicalPath_specs_172 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_177 = { + sizeof(struct Reg_GeometricProjection__regExtValue), + offsetof(struct Reg_GeometricProjection__regExtValue, _asn_ctx), + offsetof(struct Reg_GeometricProjection__regExtValue, present), + sizeof(((struct Reg_GeometricProjection__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_177 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_177 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_176, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_176, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_175 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_177, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_177, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_177, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_175 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GeometricProjection_tags_175[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GeometricProjection_tag2el_175[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175 = { + sizeof(struct Reg_GeometricProjection), + offsetof(struct Reg_GeometricProjection, _asn_ctx), + asn_MAP_Reg_GeometricProjection_tag2el_175, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection = { + "Reg-GeometricProjection", + "Reg-GeometricProjection", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GeometricProjection_tags_175, + sizeof(asn_DEF_Reg_GeometricProjection_tags_175) + /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ + asn_DEF_Reg_GeometricProjection_tags_175, /* Same as above */ + sizeof(asn_DEF_Reg_GeometricProjection_tags_175) + /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GeometricProjection_175, + 2, /* Elements count */ + &asn_SPC_Reg_GeometricProjection_specs_175 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_180 = { + sizeof(struct Reg_NodeAttributeSetLL__regExtValue), + offsetof(struct Reg_NodeAttributeSetLL__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeAttributeSetLL__regExtValue, present), + sizeof(((struct Reg_NodeAttributeSetLL__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_180 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_180 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_179, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_179, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_178 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_180, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_180, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_180, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_178 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetLL_tags_178[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetLL_tag2el_178[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178 = { + sizeof(struct Reg_NodeAttributeSetLL), + offsetof(struct Reg_NodeAttributeSetLL, _asn_ctx), + asn_MAP_Reg_NodeAttributeSetLL_tag2el_178, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL = { + "Reg-NodeAttributeSetLL", + "Reg-NodeAttributeSetLL", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeAttributeSetLL_tags_178, + sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) + /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ + asn_DEF_Reg_NodeAttributeSetLL_tags_178, /* Same as above */ + sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) + /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeAttributeSetLL_178, + 2, /* Elements count */ + &asn_SPC_Reg_NodeAttributeSetLL_specs_178 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_183 = { + sizeof(struct Reg_NodeOffsetPointLL__regExtValue), + offsetof(struct Reg_NodeOffsetPointLL__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeOffsetPointLL__regExtValue, present), + sizeof(((struct Reg_NodeOffsetPointLL__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_183 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_183 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_182, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_182, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_181 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_183, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_183, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_183, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_181 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointLL_tags_181[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointLL_tag2el_181[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181 = { + sizeof(struct Reg_NodeOffsetPointLL), + offsetof(struct Reg_NodeOffsetPointLL, _asn_ctx), + asn_MAP_Reg_NodeOffsetPointLL_tag2el_181, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL = { + "Reg-NodeOffsetPointLL", + "Reg-NodeOffsetPointLL", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeOffsetPointLL_tags_181, + sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) + /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ + asn_DEF_Reg_NodeOffsetPointLL_tags_181, /* Same as above */ + sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) + /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeOffsetPointLL_181, + 2, /* Elements count */ + &asn_SPC_Reg_NodeOffsetPointLL_specs_181 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c new file mode 100644 index 000000000..4cdb81795 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RegulatorySpeedLimit.h" + +asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { + sizeof(struct RegulatorySpeedLimit), + offsetof(struct RegulatorySpeedLimit, _asn_ctx), + asn_MAP_RegulatorySpeedLimit_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { + "RegulatorySpeedLimit", + "RegulatorySpeedLimit", + &asn_OP_SEQUENCE, + asn_DEF_RegulatorySpeedLimit_tags_1, + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegulatorySpeedLimit_1, + 2, /* Elements count */ + &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestID.c b/src/tmx/Asn_J2735/src/2020/RequestID.c new file mode 100644 index 000000000..350e77b79 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestID.h" + +int +RequestID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestID = { + "RequestID", + "RequestID", + &asn_OP_NativeInteger, + asn_DEF_RequestID_tags_1, + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + asn_DEF_RequestID_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RequestID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c b/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c new file mode 100644 index 000000000..ce9dcba82 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestImportanceLevel.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestImportanceLevel_value2enum_1[] = { + { 0, 29, "requestImportanceLevelUnKnown" }, + { 1, 23, "requestImportanceLevel1" }, + { 2, 23, "requestImportanceLevel2" }, + { 3, 23, "requestImportanceLevel3" }, + { 4, 23, "requestImportanceLevel4" }, + { 5, 23, "requestImportanceLevel5" }, + { 6, 23, "requestImportanceLevel6" }, + { 7, 23, "requestImportanceLevel7" }, + { 8, 23, "requestImportanceLevel8" }, + { 9, 23, "requestImportanceLevel9" }, + { 10, 24, "requestImportanceLevel10" }, + { 11, 24, "requestImportanceLevel11" }, + { 12, 24, "requestImportanceLevel12" }, + { 13, 24, "requestImportanceLevel13" }, + { 14, 24, "requestImportanceLevel14" }, + { 15, 25, "requestImportanceReserved" } +}; +static const unsigned int asn_MAP_RequestImportanceLevel_enum2value_1[] = { + 1, /* requestImportanceLevel1(1) */ + 10, /* requestImportanceLevel10(10) */ + 11, /* requestImportanceLevel11(11) */ + 12, /* requestImportanceLevel12(12) */ + 13, /* requestImportanceLevel13(13) */ + 14, /* requestImportanceLevel14(14) */ + 2, /* requestImportanceLevel2(2) */ + 3, /* requestImportanceLevel3(3) */ + 4, /* requestImportanceLevel4(4) */ + 5, /* requestImportanceLevel5(5) */ + 6, /* requestImportanceLevel6(6) */ + 7, /* requestImportanceLevel7(7) */ + 8, /* requestImportanceLevel8(8) */ + 9, /* requestImportanceLevel9(9) */ + 0, /* requestImportanceLevelUnKnown(0) */ + 15 /* requestImportanceReserved(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1 = { + asn_MAP_RequestImportanceLevel_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestImportanceLevel_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestImportanceLevel_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel = { + "RequestImportanceLevel", + "RequestImportanceLevel", + &asn_OP_NativeEnumerated, + asn_DEF_RequestImportanceLevel_tags_1, + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + asn_DEF_RequestImportanceLevel_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestImportanceLevel_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestImportanceLevel_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestImportanceLevel_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestSubRole.c b/src/tmx/Asn_J2735/src/2020/RequestSubRole.c new file mode 100644 index 000000000..306238b77 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestSubRole.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestSubRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestSubRole_value2enum_1[] = { + { 0, 21, "requestSubRoleUnKnown" }, + { 1, 15, "requestSubRole1" }, + { 2, 15, "requestSubRole2" }, + { 3, 15, "requestSubRole3" }, + { 4, 15, "requestSubRole4" }, + { 5, 15, "requestSubRole5" }, + { 6, 15, "requestSubRole6" }, + { 7, 15, "requestSubRole7" }, + { 8, 15, "requestSubRole8" }, + { 9, 15, "requestSubRole9" }, + { 10, 16, "requestSubRole10" }, + { 11, 16, "requestSubRole11" }, + { 12, 16, "requestSubRole12" }, + { 13, 16, "requestSubRole13" }, + { 14, 16, "requestSubRole14" }, + { 15, 22, "requestSubRoleReserved" } +}; +static const unsigned int asn_MAP_RequestSubRole_enum2value_1[] = { + 1, /* requestSubRole1(1) */ + 10, /* requestSubRole10(10) */ + 11, /* requestSubRole11(11) */ + 12, /* requestSubRole12(12) */ + 13, /* requestSubRole13(13) */ + 14, /* requestSubRole14(14) */ + 2, /* requestSubRole2(2) */ + 3, /* requestSubRole3(3) */ + 4, /* requestSubRole4(4) */ + 5, /* requestSubRole5(5) */ + 6, /* requestSubRole6(6) */ + 7, /* requestSubRole7(7) */ + 8, /* requestSubRole8(8) */ + 9, /* requestSubRole9(9) */ + 15, /* requestSubRoleReserved(15) */ + 0 /* requestSubRoleUnKnown(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1 = { + asn_MAP_RequestSubRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestSubRole_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestSubRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestSubRole = { + "RequestSubRole", + "RequestSubRole", + &asn_OP_NativeEnumerated, + asn_DEF_RequestSubRole_tags_1, + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + asn_DEF_RequestSubRole_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestSubRole_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestSubRole_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestSubRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestedItem.c b/src/tmx/Asn_J2735/src/2020/RequestedItem.c new file mode 100644 index 000000000..6b0eb47f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestedItem.c @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestedItem.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestedItem_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 5, "itemA" }, + { 2, 5, "itemB" }, + { 3, 5, "itemC" }, + { 4, 5, "itemD" }, + { 5, 5, "itemE" }, + { 6, 5, "itemF" }, + { 7, 5, "itemG" }, + { 8, 5, "itemI" }, + { 9, 5, "itemJ" }, + { 10, 5, "itemK" }, + { 11, 5, "itemL" }, + { 12, 5, "itemM" }, + { 13, 5, "itemN" }, + { 14, 5, "itemO" }, + { 15, 5, "itemP" }, + { 16, 5, "itemQ" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RequestedItem_enum2value_1[] = { + 1, /* itemA(1) */ + 2, /* itemB(2) */ + 3, /* itemC(3) */ + 4, /* itemD(4) */ + 5, /* itemE(5) */ + 6, /* itemF(6) */ + 7, /* itemG(7) */ + 8, /* itemI(8) */ + 9, /* itemJ(9) */ + 10, /* itemK(10) */ + 11, /* itemL(11) */ + 12, /* itemM(12) */ + 13, /* itemN(13) */ + 14, /* itemO(14) */ + 15, /* itemP(15) */ + 16, /* itemQ(16) */ + 0 /* reserved(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { + asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItem = { + "RequestedItem", + "RequestedItem", + &asn_OP_NativeEnumerated, + asn_DEF_RequestedItem_tags_1, + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + asn_DEF_RequestedItem_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestedItem_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestedItem_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestedItem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestedItemList.c b/src/tmx/Asn_J2735/src/2020/RequestedItemList.c new file mode 100644 index 000000000..1e02afc73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestedItemList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestedItemList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RequestedItemList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RequestedItem, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RequestedItemList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1 = { + sizeof(struct RequestedItemList), + offsetof(struct RequestedItemList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItemList = { + "RequestedItemList", + "RequestedItemList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RequestedItemList_tags_1, + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + asn_DEF_RequestedItemList_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestedItemList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestedItemList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RequestedItemList_1, + 1, /* Single element */ + &asn_SPC_RequestedItemList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestorDescription.c b/src/tmx/Asn_J2735/src/2020/RequestorDescription.c new file mode 100644 index 000000000..9606db3e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestorDescription.c @@ -0,0 +1,318 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestorDescription.h" + +#include "RequestorType.h" +#include "RequestorPositionVector.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RequestorDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct RequestorDescription__regional), + offsetof(struct RequestorDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RequestorDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorDescription, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 8, offsetof(struct RequestorDescription, type), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 7, offsetof(struct RequestorDescription, position), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 6, offsetof(struct RequestorDescription, name), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct RequestorDescription, routeName), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "routeName" + }, + { ATF_POINTER, 4, offsetof(struct RequestorDescription, transitStatus), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitStatus" + }, + { ATF_POINTER, 3, offsetof(struct RequestorDescription, transitOccupancy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleOccupancy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitOccupancy" + }, + { ATF_POINTER, 2, offsetof(struct RequestorDescription, transitSchedule), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitSchedule" + }, + { ATF_POINTER, 1, offsetof(struct RequestorDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorDescription_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_RequestorDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* routeName */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transitOccupancy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transitSchedule */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1 = { + sizeof(struct RequestorDescription), + offsetof(struct RequestorDescription, _asn_ctx), + asn_MAP_RequestorDescription_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_RequestorDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorDescription = { + "RequestorDescription", + "RequestorDescription", + &asn_OP_SEQUENCE, + asn_DEF_RequestorDescription_tags_1, + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + asn_DEF_RequestorDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorDescription_1, + 9, /* Elements count */ + &asn_SPC_RequestorDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c b/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c new file mode 100644 index 000000000..4e31c1b59 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c @@ -0,0 +1,105 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestorPositionVector.h" + +#include "TransmissionAndSpeed.h" +asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorPositionVector, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RequestorPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 1, offsetof(struct RequestorPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const int asn_MAP_RequestorPositionVector_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_RequestorPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1 = { + sizeof(struct RequestorPositionVector), + offsetof(struct RequestorPositionVector, _asn_ctx), + asn_MAP_RequestorPositionVector_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RequestorPositionVector_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector = { + "RequestorPositionVector", + "RequestorPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_RequestorPositionVector_tags_1, + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + asn_DEF_RequestorPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorPositionVector_1, + 3, /* Elements count */ + &asn_SPC_RequestorPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RequestorType.c b/src/tmx/Asn_J2735/src/2020/RequestorType.c new file mode 100644 index 000000000..965a6dc39 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RequestorType.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RequestorType.h" + +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_RequestorType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorType, role), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 5, offsetof(struct RequestorType, subrole), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestSubRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "subrole" + }, + { ATF_POINTER, 4, offsetof(struct RequestorType, request), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestImportanceLevel, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 3, offsetof(struct RequestorType, iso3883), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 2, offsetof(struct RequestorType, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 1, offsetof(struct RequestorType, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorType_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_RequestorType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subrole */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1 = { + sizeof(struct RequestorType), + offsetof(struct RequestorType, _asn_ctx), + asn_MAP_RequestorType_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_RequestorType_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorType = { + "RequestorType", + "RequestorType", + &asn_OP_SEQUENCE, + asn_DEF_RequestorType_tags_1, + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + asn_DEF_RequestorType_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorType_1, + 6, /* Elements count */ + &asn_SPC_RequestorType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c new file mode 100644 index 000000000..73658b471 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ResponderGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { + { 9729, 23, "emergency-vehicle-units" }, + { 9730, 29, "federal-law-enforcement-units" }, + { 9731, 18, "state-police-units" }, + { 9732, 19, "county-police-units" }, + { 9733, 18, "local-police-units" }, + { 9734, 15, "ambulance-units" }, + { 9735, 12, "rescue-units" }, + { 9736, 10, "fire-units" }, + { 9737, 12, "hAZMAT-units" }, + { 9738, 14, "light-tow-unit" }, + { 9739, 14, "heavy-tow-unit" }, + { 9740, 23, "freeway-service-patrols" }, + { 9741, 29, "transportation-response-units" }, + { 9742, 33, "private-contractor-response-units" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { + 5, /* ambulance-units(9734) */ + 3, /* county-police-units(9732) */ + 0, /* emergency-vehicle-units(9729) */ + 1, /* federal-law-enforcement-units(9730) */ + 7, /* fire-units(9736) */ + 11, /* freeway-service-patrols(9740) */ + 8, /* hAZMAT-units(9737) */ + 10, /* heavy-tow-unit(9739) */ + 9, /* light-tow-unit(9738) */ + 4, /* local-police-units(9733) */ + 13, /* private-contractor-response-units(9742) */ + 6, /* rescue-units(9735) */ + 2, /* state-police-units(9731) */ + 12 /* transportation-response-units(9741) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { + asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { + "ResponderGroupAffected", + "ResponderGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_ResponderGroupAffected_tags_1, + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ResponderGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ResponderGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ResponseType.c b/src/tmx/Asn_J2735/src/2020/ResponseType.c new file mode 100644 index 000000000..4c8a4c8ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ResponseType.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ResponseType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ResponseType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ResponseType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { + { 0, 21, "notInUseOrNotEquipped" }, + { 1, 9, "emergency" }, + { 2, 12, "nonEmergency" }, + { 3, 7, "pursuit" }, + { 4, 10, "stationary" }, + { 5, 10, "slowMoving" }, + { 6, 17, "stopAndGoMovement" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponseType_enum2value_1[] = { + 1, /* emergency(1) */ + 2, /* nonEmergency(2) */ + 0, /* notInUseOrNotEquipped(0) */ + 3, /* pursuit(3) */ + 5, /* slowMoving(5) */ + 4, /* stationary(4) */ + 6 /* stopAndGoMovement(6) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { + asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponseType = { + "ResponseType", + "ResponseType", + &asn_OP_NativeEnumerated, + asn_DEF_ResponseType_tags_1, + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + asn_DEF_ResponseType_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ResponseType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ResponseType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponseType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c new file mode 100644 index 000000000..449d63a4e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionAppliesTo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 15, "equippedTransit" }, + { 2, 13, "equippedTaxis" }, + { 3, 13, "equippedOther" }, + { 4, 17, "emissionCompliant" }, + { 5, 15, "equippedBicycle" }, + { 6, 15, "weightCompliant" }, + { 7, 15, "heightCompliant" }, + { 8, 11, "pedestrians" }, + { 9, 17, "slowMovingPersons" }, + { 10, 15, "wheelchairUsers" }, + { 11, 18, "visualDisabilities" }, + { 12, 17, "audioDisabilities" }, + { 13, 24, "otherUnknownDisabilities" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { + 12, /* audioDisabilities(12) */ + 4, /* emissionCompliant(4) */ + 5, /* equippedBicycle(5) */ + 3, /* equippedOther(3) */ + 2, /* equippedTaxis(2) */ + 1, /* equippedTransit(1) */ + 7, /* heightCompliant(7) */ + 0, /* none(0) */ + 13, /* otherUnknownDisabilities(13) */ + 8, /* pedestrians(8) */ + 9, /* slowMovingPersons(9) */ + 11, /* visualDisabilities(11) */ + 6, /* weightCompliant(6) */ + 10 /* wheelchairUsers(10) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { + asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { + "RestrictionAppliesTo", + "RestrictionAppliesTo", + &asn_OP_NativeEnumerated, + asn_DEF_RestrictionAppliesTo_tags_1, + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionAppliesTo_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionAppliesTo_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c new file mode 100644 index 000000000..0f2af3a14 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionClassAssignment.h" + +asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionUserTypeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "users" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { + sizeof(struct RestrictionClassAssignment), + offsetof(struct RestrictionClassAssignment, _asn_ctx), + asn_MAP_RestrictionClassAssignment_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { + "RestrictionClassAssignment", + "RestrictionClassAssignment", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionClassAssignment_tags_1, + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RestrictionClassAssignment_1, + 2, /* Elements count */ + &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c new file mode 100644 index 000000000..668210759 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionClassID.h" + +int +RestrictionClassID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { + "RestrictionClassID", + "RestrictionClassID", + &asn_OP_NativeInteger, + asn_DEF_RestrictionClassID_tags_1, + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassID_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionClassID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionClassID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RestrictionClassID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c new file mode 100644 index 000000000..e6da234fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionClassList.h" + +#include "RestrictionClassAssignment.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..254)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionClassAssignment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { + sizeof(struct RestrictionClassList), + offsetof(struct RestrictionClassList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { + "RestrictionClassList", + "RestrictionClassList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionClassList_tags_1, + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionClassList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionClassList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RestrictionClassList_1, + 1, /* Single element */ + &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c new file mode 100644 index 000000000..55fd20ebe --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionUserType-addGrpC.h" + +asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct RestrictionUserType_addGrpC, emission), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmissionType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "emission" + }, +}; +static const int asn_MAP_RestrictionUserType_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RestrictionUserType_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1 = { + sizeof(struct RestrictionUserType_addGrpC), + offsetof(struct RestrictionUserType_addGrpC, _asn_ctx), + asn_MAP_RestrictionUserType_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_RestrictionUserType_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC = { + "RestrictionUserType-addGrpC", + "RestrictionUserType-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionUserType_addGrpC_tags_1, + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserType_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RestrictionUserType_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_RestrictionUserType_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c new file mode 100644 index 000000000..853b8d5a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c @@ -0,0 +1,197 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionUserType.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RestrictionUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_3 = { + sizeof(struct RestrictionUserType__regional), + offsetof(struct RestrictionUserType__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_3 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_3, + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]) - 1, /* 1 */ + asn_DEF_regional_tags_3, /* Same as above */ + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_3, + 1, /* Single element */ + &asn_SPC_regional_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionAppliesTo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_regional_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { + sizeof(struct RestrictionUserType), + offsetof(struct RestrictionUserType, _asn_ctx), + offsetof(struct RestrictionUserType, present), + sizeof(((struct RestrictionUserType *)0)->present), + asn_MAP_RestrictionUserType_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { + "RestrictionUserType", + "RestrictionUserType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionUserType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionUserType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_RestrictionUserType_1, + 2, /* Elements count */ + &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c new file mode 100644 index 000000000..6c288b6d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RestrictionUserTypeList.h" + +#include "RestrictionUserType.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_RestrictionUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { + sizeof(struct RestrictionUserTypeList), + offsetof(struct RestrictionUserTypeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { + "RestrictionUserTypeList", + "RestrictionUserTypeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionUserTypeList_tags_1, + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionUserTypeList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionUserTypeList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RestrictionUserTypeList_1, + 1, /* Single element */ + &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c new file mode 100644 index 000000000..31f194243 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadLaneSetList.h" + +#include "GenericLane.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { + sizeof(struct RoadLaneSetList), + offsetof(struct RoadLaneSetList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { + "RoadLaneSetList", + "RoadLaneSetList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadLaneSetList_tags_1, + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadLaneSetList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadLaneSetList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RoadLaneSetList_1, + 1, /* Single element */ + &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c new file mode 100644 index 000000000..cff16e7cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadRegulatorID.h" + +int +RoadRegulatorID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { + "RoadRegulatorID", + "RoadRegulatorID", + &asn_OP_NativeInteger, + asn_DEF_RoadRegulatorID_tags_1, + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadRegulatorID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadRegulatorID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadRegulatorID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegment.c b/src/tmx/Asn_J2735/src/2020/RoadSegment.c new file mode 100644 index 000000000..98695f7ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSegment.c @@ -0,0 +1,299 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSegment.h" + +#include "SpeedLimitList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RoadSegment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct RoadSegment__regional), + offsetof(struct RoadSegment__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegment, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadLaneSetList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadLaneSet" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { + sizeof(struct RoadSegment), + offsetof(struct RoadSegment, _asn_ctx), + asn_MAP_RoadSegment_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RoadSegment_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegment = { + "RoadSegment", + "RoadSegment", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegment_tags_1, + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + asn_DEF_RoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSegment_1, + 8, /* Elements count */ + &asn_SPC_RoadSegment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c new file mode 100644 index 000000000..c13931607 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSegmentID.h" + +int +RoadSegmentID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { + "RoadSegmentID", + "RoadSegmentID", + &asn_OP_NativeInteger, + asn_DEF_RoadSegmentID_tags_1, + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadSegmentID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadSegmentID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadSegmentID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c new file mode 100644 index 000000000..3bff19c80 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSegmentList.h" + +#include "RoadSegment.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSegment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { + sizeof(struct RoadSegmentList), + offsetof(struct RoadSegmentList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { + "RoadSegmentList", + "RoadSegmentList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadSegmentList_tags_1, + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadSegmentList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadSegmentList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RoadSegmentList_1, + 1, /* Single element */ + &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c new file mode 100644 index 000000000..ea58c5a45 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSegmentReferenceID.h" + +asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { + sizeof(struct RoadSegmentReferenceID), + offsetof(struct RoadSegmentReferenceID, _asn_ctx), + asn_MAP_RoadSegmentReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { + "RoadSegmentReferenceID", + "RoadSegmentReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegmentReferenceID_tags_1, + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSegmentReferenceID_1, + 2, /* Elements count */ + &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c b/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c new file mode 100644 index 000000000..038926cf4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c @@ -0,0 +1,438 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RoadSideAlert" + * found in "J2735-RoadSideAlert.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSideAlert.h" + +#include "FullPositionVector.h" +#include "RegionalExtension.h" +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { + sizeof(struct RoadSideAlert__description), + offsetof(struct RoadSideAlert__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_5 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_5, + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ + asn_DEF_description_tags_5, /* Same as above */ + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_description_5, + 1, /* Single element */ + &asn_SPC_description_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct RoadSideAlert__regional), + offsetof(struct RoadSideAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 7, offsetof(struct RoadSideAlert, description), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_description_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 6, offsetof(struct RoadSideAlert, priority), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 5, offsetof(struct RoadSideAlert, heading), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 4, offsetof(struct RoadSideAlert, extent), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 3, offsetof(struct RoadSideAlert, position), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RoadSideAlert, furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSideAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { + sizeof(struct RoadSideAlert), + offsetof(struct RoadSideAlert, _asn_ctx), + asn_MAP_RoadSideAlert_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_RoadSideAlert_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { + "RoadSideAlert", + "RoadSideAlert", + &asn_OP_SEQUENCE, + asn_DEF_RoadSideAlert_tags_1, + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + asn_DEF_RoadSideAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSideAlert_1, + 10, /* Elements count */ + &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadSignID.c b/src/tmx/Asn_J2735/src/2020/RoadSignID.c new file mode 100644 index 000000000..0f733aee1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadSignID.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadSignID.h" + +asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "viewAngle" + }, + { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MUTCDCode, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mutcdCode" + }, + { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crc" + }, +}; +static const int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { + sizeof(struct RoadSignID), + offsetof(struct RoadSignID, _asn_ctx), + asn_MAP_RoadSignID_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RoadSignID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSignID = { + "RoadSignID", + "RoadSignID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSignID_tags_1, + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + asn_DEF_RoadSignID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSignID_1, + 4, /* Elements count */ + &asn_SPC_RoadSignID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c new file mode 100644 index 000000000..369ce172b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "RoadwayCrownAngle.h" + +int +RoadwayCrownAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { + "RoadwayCrownAngle", + "RoadwayCrownAngle", + &asn_OP_NativeInteger, + asn_DEF_RoadwayCrownAngle_tags_1, + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadwayCrownAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadwayCrownAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadwayCrownAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SPAT.c b/src/tmx/Asn_J2735/src/2020/SPAT.c new file mode 100644 index 000000000..72f139b43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SPAT.c @@ -0,0 +1,226 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SPAT.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SPAT, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SPAT__regional), + offsetof(struct SPAT__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SPAT_1[] = { + { ATF_POINTER, 2, offsetof(struct SPAT, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStateList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SPAT_oms_1[] = { 0, 1, 3 }; +static const ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { + sizeof(struct SPAT), + offsetof(struct SPAT, _asn_ctx), + asn_MAP_SPAT_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SPAT_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SPAT = { + "SPAT", + "SPAT", + &asn_OP_SEQUENCE, + asn_DEF_SPAT_tags_1, + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + asn_DEF_SPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SPAT_1, + 4, /* Elements count */ + &asn_SPC_SPAT_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c b/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c new file mode 100644 index 000000000..efc5602f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SPAT_TimeMark.h" + +int +SPAT_TimeMark_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 36111L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..36111) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 36111 } /* (0..36111) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SPAT_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_NativeInteger, + asn_DEF_SPAT_TimeMark_tags_1, + sizeof(asn_DEF_SPAT_TimeMark_tags_1) + /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_SPAT_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_TimeMark_tags_1) + /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SPAT_TimeMark_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SPAT_TimeMark_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SPAT_TimeMark_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SSPindex.c b/src/tmx/Asn_J2735/src/2020/SSPindex.c new file mode 100644 index 000000000..afbab0186 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SSPindex.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SSPindex.h" + +int +SSPindex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SSPindex_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SSPindex_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SSPindex_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SSPindex = { + "SSPindex", + "SSPindex", + &asn_OP_NativeInteger, + asn_DEF_SSPindex_tags_1, + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + asn_DEF_SSPindex_tags_1, /* Same as above */ + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SSPindex_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SSPindex_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SSPindex_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Sample.c b/src/tmx/Asn_J2735/src/2020/Sample.c new file mode 100644 index 000000000..caf6a8e42 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Sample.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Sample.h" + +static int +memb_sampleStart_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sampleEnd_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sampleStart_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_Sample_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sampleStart_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sampleStart_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sampleStart_constraint_1 + }, + 0, 0, /* No default value */ + "sampleStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sampleEnd_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sampleEnd_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sampleEnd_constraint_1 + }, + 0, 0, /* No default value */ + "sampleEnd" + }, +}; +static const ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { + sizeof(struct Sample), + offsetof(struct Sample, _asn_ctx), + asn_MAP_Sample_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Sample = { + "Sample", + "Sample", + &asn_OP_SEQUENCE, + asn_DEF_Sample_tags_1, + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + asn_DEF_Sample_tags_1, /* Same as above */ + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Sample_1, + 2, /* Elements count */ + &asn_SPC_Sample_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Scale-B12.c b/src/tmx/Asn_J2735/src/2020/Scale-B12.c new file mode 100644 index 000000000..2c4891109 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Scale-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Scale-B12.h" + +int +Scale_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Scale_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { + "Scale-B12", + "Scale-B12", + &asn_OP_NativeInteger, + asn_DEF_Scale_B12_tags_1, + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + asn_DEF_Scale_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Scale_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Scale_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Scale_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Second.c b/src/tmx/Asn_J2735/src/2020/Second.c new file mode 100644 index 000000000..56f19387f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Second.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Second.h" + +int +Second_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 60L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Second_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Second_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Second_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Second = { + "Second", + "Second", + &asn_OP_NativeInteger, + asn_DEF_Second_tags_1, + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + asn_DEF_Second_tags_1, /* Same as above */ + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Second_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Second_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Second_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SecondOfTime.c b/src/tmx/Asn_J2735/src/2020/SecondOfTime.c new file mode 100644 index 000000000..6f6738946 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SecondOfTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SecondOfTime.h" + +int +SecondOfTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 61L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..61) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 61 } /* (0..61) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SecondOfTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondOfTime = { + "SecondOfTime", + "SecondOfTime", + &asn_OP_NativeInteger, + asn_DEF_SecondOfTime_tags_1, + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + asn_DEF_SecondOfTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SecondOfTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SecondOfTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SecondOfTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SecondsAngle.c b/src/tmx/Asn_J2735/src/2020/SecondsAngle.c new file mode 100644 index 000000000..0ecdd6e92 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SecondsAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SecondsAngle.h" + +int +SecondsAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 5999L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..5999) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { + "SecondsAngle", + "SecondsAngle", + &asn_OP_NativeInteger, + asn_DEF_SecondsAngle_tags_1, + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + asn_DEF_SecondsAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SecondsAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SecondsAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SecondsAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c new file mode 100644 index 000000000..4f45da946 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SegmentAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeLL_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1 = { + asn_MAP_SegmentAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL = { + "SegmentAttributeLL", + "SegmentAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeLL_tags_1, + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c new file mode 100644 index 000000000..c4588a9cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SegmentAttributeLLList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1 = { + sizeof(struct SegmentAttributeLLList), + offsetof(struct SegmentAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList = { + "SegmentAttributeLLList", + "SegmentAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeLLList_tags_1, + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SegmentAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c new file mode 100644 index 000000000..3edb821c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SegmentAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeXY_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1 = { + asn_MAP_SegmentAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY = { + "SegmentAttributeXY", + "SegmentAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeXY_tags_1, + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c new file mode 100644 index 000000000..10f00d9a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SegmentAttributeXYList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1 = { + sizeof(struct SegmentAttributeXYList), + offsetof(struct SegmentAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList = { + "SegmentAttributeXYList", + "SegmentAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeXYList_tags_1, + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SegmentAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c new file mode 100644 index 000000000..bd7be619a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SemiMajorAxisAccuracy.h" + +int +SemiMajorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy = { + "SemiMajorAxisAccuracy", + "SemiMajorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMajorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMajorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMajorAxisAccuracy_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c new file mode 100644 index 000000000..340ca37bc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SemiMajorAxisOrientation.h" + +int +SemiMajorAxisOrientation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisOrientation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation = { + "SemiMajorAxisOrientation", + "SemiMajorAxisOrientation", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisOrientation_tags_1, + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisOrientation_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMajorAxisOrientation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMajorAxisOrientation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMajorAxisOrientation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c b/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c new file mode 100644 index 000000000..3fcf8e96d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SemiMinorAxisAccuracy.h" + +int +SemiMinorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMinorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy = { + "SemiMinorAxisAccuracy", + "SemiMinorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMinorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMinorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMinorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMinorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMinorAxisAccuracy_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ShapePointSet.c b/src/tmx/Asn_J2735/src/2020/ShapePointSet.c new file mode 100644 index 000000000..4dd2c7e95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ShapePointSet.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ShapePointSet.h" + +#include "Position3D.h" +asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { + { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { + sizeof(struct ShapePointSet), + offsetof(struct ShapePointSet, _asn_ctx), + asn_MAP_ShapePointSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_ShapePointSet_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { + "ShapePointSet", + "ShapePointSet", + &asn_OP_SEQUENCE, + asn_DEF_ShapePointSet_tags_1, + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + asn_DEF_ShapePointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ShapePointSet_1, + 4, /* Elements count */ + &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignPrority.c b/src/tmx/Asn_J2735/src/2020/SignPrority.c new file mode 100644 index 000000000..5781c1d3d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignPrority.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignPrority.h" + +int +SignPrority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 7L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignPrority_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..7) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignPrority_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignPrority = { + "SignPrority", + "SignPrority", + &asn_OP_NativeInteger, + asn_DEF_SignPrority_tags_1, + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + asn_DEF_SignPrority_tags_1, /* Same as above */ + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignPrority_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignPrority_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignPrority_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalControlZone.c b/src/tmx/Asn_J2735/src/2020/SignalControlZone.c new file mode 100644 index 000000000..92fc0f02c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalControlZone.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalControlZone.h" + +asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, zone), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_SignalControlZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "zone" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* zone */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { + sizeof(struct SignalControlZone), + offsetof(struct SignalControlZone, _asn_ctx), + asn_MAP_SignalControlZone_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { + "SignalControlZone", + "SignalControlZone", + &asn_OP_SEQUENCE, + asn_DEF_SignalControlZone_tags_1, + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_SignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalControlZone_1, + 1, /* Elements count */ + &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalGroupID.c b/src/tmx/Asn_J2735/src/2020/SignalGroupID.c new file mode 100644 index 000000000..15877d604 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalGroupID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalGroupID.h" + +int +SignalGroupID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { + "SignalGroupID", + "SignalGroupID", + &asn_OP_NativeInteger, + asn_DEF_SignalGroupID_tags_1, + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + asn_DEF_SignalGroupID_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalGroupID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalGroupID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignalGroupID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c new file mode 100644 index 000000000..dc30697db --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalHeadLocation.h" + +asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroupID" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { + sizeof(struct SignalHeadLocation), + offsetof(struct SignalHeadLocation, _asn_ctx), + asn_MAP_SignalHeadLocation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { + "SignalHeadLocation", + "SignalHeadLocation", + &asn_OP_SEQUENCE, + asn_DEF_SignalHeadLocation_tags_1, + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalHeadLocation_1, + 2, /* Elements count */ + &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c new file mode 100644 index 000000000..8fc1adba8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalHeadLocationList.h" + +#include "SignalHeadLocation.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalHeadLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { + sizeof(struct SignalHeadLocationList), + offsetof(struct SignalHeadLocationList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { + "SignalHeadLocationList", + "SignalHeadLocationList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalHeadLocationList_tags_1, + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalHeadLocationList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalHeadLocationList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalHeadLocationList_1, + 1, /* Single element */ + &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c b/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c new file mode 100644 index 000000000..17fb2234e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalReqScheme.h" + +int +SignalReqScheme_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { + "SignalReqScheme", + "SignalReqScheme", + &asn_OP_OCTET_STRING, + asn_DEF_SignalReqScheme_tags_1, + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + asn_DEF_SignalReqScheme_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalReqScheme_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalReqScheme_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignalReqScheme_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequest.c b/src/tmx/Asn_J2735/src/2020/SignalRequest.c new file mode 100644 index 000000000..a7afcfdb6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalRequest.c @@ -0,0 +1,263 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalRequest.h" + +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequest__regional), + offsetof(struct SignalRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PriorityRequestType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestType" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, inBoundLane), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "inBoundLane" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequest, outBoundLane), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "outBoundLane" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequest_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { + sizeof(struct SignalRequest), + offsetof(struct SignalRequest, _asn_ctx), + asn_MAP_SignalRequest_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequest_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequest = { + "SignalRequest", + "SignalRequest", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequest_tags_1, + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + asn_DEF_SignalRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequest_1, + 6, /* Elements count */ + &asn_SPC_SignalRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestList.c b/src/tmx/Asn_J2735/src/2020/SignalRequestList.c new file mode 100644 index 000000000..42580157a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalRequestList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalRequestList.h" + +#include "SignalRequestPackage.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1 = { + sizeof(struct SignalRequestList), + offsetof(struct SignalRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestList = { + "SignalRequestList", + "SignalRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalRequestList_tags_1, + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalRequestList_1, + 1, /* Single element */ + &asn_SPC_SignalRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c b/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c new file mode 100644 index 000000000..34d6cf634 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c @@ -0,0 +1,263 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalRequestMessage.h" + +#include "SignalRequestList.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequestMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequestMessage__regional), + offsetof(struct SignalRequestMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequestList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, requestor), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestor" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestMessage_oms_1[] = { 0, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* requestor */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1 = { + sizeof(struct SignalRequestMessage), + offsetof(struct SignalRequestMessage, _asn_ctx), + asn_MAP_SignalRequestMessage_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequestMessage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage = { + "SignalRequestMessage", + "SignalRequestMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestMessage_tags_1, + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequestMessage_1, + 6, /* Elements count */ + &asn_SPC_SignalRequestMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c b/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c new file mode 100644 index 000000000..fbe012f51 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c @@ -0,0 +1,244 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalRequestPackage.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequestPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalRequestPackage__regional), + offsetof(struct SignalRequestPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestPackage, request), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 4, offsetof(struct SignalRequestPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 3, offsetof(struct SignalRequestPackage, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestPackage_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1 = { + sizeof(struct SignalRequestPackage), + offsetof(struct SignalRequestPackage, _asn_ctx), + asn_MAP_SignalRequestPackage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequestPackage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage = { + "SignalRequestPackage", + "SignalRequestPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestPackage_tags_1, + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequestPackage_1, + 5, /* Elements count */ + &asn_SPC_SignalRequestPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c b/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c new file mode 100644 index 000000000..f52d6e78d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c @@ -0,0 +1,141 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalRequesterInfo.h" + +#include "RequestorType.h" +asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, request), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequesterInfo, role), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequesterInfo, typeData), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeData" + }, +}; +static const int asn_MAP_SignalRequesterInfo_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequesterInfo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequesterInfo_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* typeData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1 = { + sizeof(struct SignalRequesterInfo), + offsetof(struct SignalRequesterInfo, _asn_ctx), + asn_MAP_SignalRequesterInfo_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequesterInfo_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo = { + "SignalRequesterInfo", + "SignalRequesterInfo", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequesterInfo_tags_1, + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + asn_DEF_SignalRequesterInfo_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequesterInfo_1, + 5, /* Elements count */ + &asn_SPC_SignalRequesterInfo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatus.c b/src/tmx/Asn_J2735/src/2020/SignalStatus.c new file mode 100644 index 000000000..43816e59c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalStatus.c @@ -0,0 +1,226 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalStatus.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SignalStatus__regional), + offsetof(struct SignalStatus__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sigStatus), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusPackageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sigStatus" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatus, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatus_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_SignalStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sigStatus */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1 = { + sizeof(struct SignalStatus), + offsetof(struct SignalStatus, _asn_ctx), + asn_MAP_SignalStatus_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SignalStatus_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatus = { + "SignalStatus", + "SignalStatus", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatus_tags_1, + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + asn_DEF_SignalStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatus_1, + 4, /* Elements count */ + &asn_SPC_SignalStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusList.c b/src/tmx/Asn_J2735/src/2020/SignalStatusList.c new file mode 100644 index 000000000..45989284d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalStatusList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalStatusList.h" + +#include "SignalStatus.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalStatusList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1 = { + sizeof(struct SignalStatusList), + offsetof(struct SignalStatusList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusList = { + "SignalStatusList", + "SignalStatusList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusList_tags_1, + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalStatusList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalStatusList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalStatusList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c new file mode 100644 index 000000000..0f8d8db19 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c @@ -0,0 +1,244 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalStatusMessage.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatusMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalStatusMessage__regional), + offsetof(struct SignalStatusMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusMessage_oms_1[] = { 0, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { + sizeof(struct SignalStatusMessage), + offsetof(struct SignalStatusMessage, _asn_ctx), + asn_MAP_SignalStatusMessage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { + "SignalStatusMessage", + "SignalStatusMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusMessage_tags_1, + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatusMessage_1, + 5, /* Elements count */ + &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c b/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c new file mode 100644 index 000000000..19253128a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c @@ -0,0 +1,300 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalStatusPackage.h" + +#include "SignalRequesterInfo.h" +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatusPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct SignalStatusPackage__regional), + offsetof(struct SignalStatusPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, requester), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequesterInfo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requester" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, inboundOn), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "inboundOn" + }, + { ATF_POINTER, 4, offsetof(struct SignalStatusPackage, outboundOn), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "outboundOn" + }, + { ATF_POINTER, 3, offsetof(struct SignalStatusPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct SignalStatusPackage, second), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusPackage_oms_1[] = { 0, 2, 3, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* requester */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* inboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* outboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1 = { + sizeof(struct SignalStatusPackage), + offsetof(struct SignalStatusPackage, _asn_ctx), + asn_MAP_SignalStatusPackage_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_SignalStatusPackage_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage = { + "SignalStatusPackage", + "SignalStatusPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusPackage_tags_1, + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatusPackage_1, + 8, /* Elements count */ + &asn_SPC_SignalStatusPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c b/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c new file mode 100644 index 000000000..62fe11137 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SignalStatusPackageList.h" + +#include "SignalStatusPackage.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1 = { + sizeof(struct SignalStatusPackageList), + offsetof(struct SignalStatusPackageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList = { + "SignalStatusPackageList", + "SignalStatusPackageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusPackageList_tags_1, + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackageList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalStatusPackageList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalStatusPackageList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalStatusPackageList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusPackageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SirenInUse.c b/src/tmx/Asn_J2735/src/2020/SirenInUse.c new file mode 100644 index 000000000..c070cec58 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SirenInUse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SirenInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SirenInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_SirenInUse_enum2value_1[] = { + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { + asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SirenInUse = { + "SirenInUse", + "SirenInUse", + &asn_OP_NativeEnumerated, + asn_DEF_SirenInUse_tags_1, + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + asn_DEF_SirenInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SirenInUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SirenInUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SirenInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Snapshot.c b/src/tmx/Asn_J2735/src/2020/Snapshot.c new file mode 100644 index 000000000..11886d210 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Snapshot.c @@ -0,0 +1,106 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Snapshot.h" + +#include "VehicleSafetyExtensions.h" +#include "VehicleStatus.h" +asn_TYPE_member_t asn_MBR_Snapshot_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "thePosition" + }, + { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct Snapshot, dataSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataSet" + }, +}; +static const int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dataSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { + sizeof(struct Snapshot), + offsetof(struct Snapshot, _asn_ctx), + asn_MAP_Snapshot_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Snapshot_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Snapshot = { + "Snapshot", + "Snapshot", + &asn_OP_SEQUENCE, + asn_DEF_Snapshot_tags_1, + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + asn_DEF_Snapshot_tags_1, /* Same as above */ + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Snapshot_1, + 3, /* Elements count */ + &asn_SPC_Snapshot_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c b/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c new file mode 100644 index 000000000..76c311b50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SnapshotDistance.h" + +asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* distance1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* distance2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* speed2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { + sizeof(struct SnapshotDistance), + offsetof(struct SnapshotDistance, _asn_ctx), + asn_MAP_SnapshotDistance_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { + "SnapshotDistance", + "SnapshotDistance", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotDistance_tags_1, + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + asn_DEF_SnapshotDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SnapshotDistance_1, + 4, /* Elements count */ + &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SnapshotTime.c b/src/tmx/Asn_J2735/src/2020/SnapshotTime.c new file mode 100644 index 000000000..d06efce44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SnapshotTime.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SnapshotTime.h" + +asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "time1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "time2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* time1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speed2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* time2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { + sizeof(struct SnapshotTime), + offsetof(struct SnapshotTime, _asn_ctx), + asn_MAP_SnapshotTime_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { + "SnapshotTime", + "SnapshotTime", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotTime_tags_1, + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + asn_DEF_SnapshotTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SnapshotTime_1, + 4, /* Elements count */ + &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c b/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c new file mode 100644 index 000000000..277e69797 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c @@ -0,0 +1,107 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpecialVehicleExtensions.h" + +#include "EmergencyDetails.h" +#include "EventDescription.h" +#include "TrailerData.h" +asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[] = { + { ATF_POINTER, 3, offsetof(struct SpecialVehicleExtensions, vehicleAlerts), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleAlerts" + }, + { ATF_POINTER, 2, offsetof(struct SpecialVehicleExtensions, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct SpecialVehicleExtensions, trailers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailers" + }, +}; +static const int asn_MAP_SpecialVehicleExtensions_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_SpecialVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpecialVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleAlerts */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* trailers */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1 = { + sizeof(struct SpecialVehicleExtensions), + offsetof(struct SpecialVehicleExtensions, _asn_ctx), + asn_MAP_SpecialVehicleExtensions_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_SpecialVehicleExtensions_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions = { + "SpecialVehicleExtensions", + "SpecialVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SpecialVehicleExtensions_tags_1, + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SpecialVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpecialVehicleExtensions_1, + 3, /* Elements count */ + &asn_SPC_SpecialVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Speed.c b/src/tmx/Asn_J2735/src/2020/Speed.c new file mode 100644 index 000000000..fa91fa267 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Speed.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Speed.h" + +int +Speed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Speed_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Speed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Speed = { + "Speed", + "Speed", + &asn_OP_NativeInteger, + asn_DEF_Speed_tags_1, + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + asn_DEF_Speed_tags_1, /* Same as above */ + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Speed_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Speed_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Speed_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c b/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c new file mode 100644 index 000000000..4aea7f0c2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedAdvice.h" + +int +SpeedAdvice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 500L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..500) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { + "SpeedAdvice", + "SpeedAdvice", + &asn_OP_NativeInteger, + asn_DEF_SpeedAdvice_tags_1, + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + asn_DEF_SpeedAdvice_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedAdvice_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedAdvice_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SpeedAdvice_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c b/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c new file mode 100644 index 000000000..a18c8612d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec100ms" }, + { 2, 8, "prec10ms" }, + { 3, 7, "prec5ms" }, + { 4, 7, "prec1ms" }, + { 5, 9, "prec0-1ms" }, + { 6, 10, "prec0-05ms" }, + { 7, 10, "prec0-01ms" } +}; +static const unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { + 7, /* prec0-01ms(7) */ + 6, /* prec0-05ms(6) */ + 5, /* prec0-1ms(5) */ + 1, /* prec100ms(1) */ + 2, /* prec10ms(2) */ + 4, /* prec1ms(4) */ + 3, /* prec5ms(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { + asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { + "SpeedConfidence", + "SpeedConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedConfidence_tags_1, + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimit.c b/src/tmx/Asn_J2735/src/2020/SpeedLimit.c new file mode 100644 index 000000000..8e857fd23 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedLimit.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedLimit.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct SpeedLimit__Member__item), + offsetof(struct SpeedLimit__Member__item, _asn_ctx), + offsetof(struct SpeedLimit__Member__item, present), + sizeof(((struct SpeedLimit__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct SpeedLimit__Member), + offsetof(struct SpeedLimit__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { + sizeof(struct SpeedLimit), + offsetof(struct SpeedLimit, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { + "SpeedLimit", + "SpeedLimit", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimit_tags_1, + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimit_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimit_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedLimit_1, + 1, /* Single element */ + &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c b/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c new file mode 100644 index 000000000..1d925aa4a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedLimitList.h" + +#include "RegulatorySpeedLimit.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..9)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegulatorySpeedLimit, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { + sizeof(struct SpeedLimitList), + offsetof(struct SpeedLimitList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { + "SpeedLimitList", + "SpeedLimitList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimitList_tags_1, + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimitList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimitList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedLimitList_1, + 1, /* Single element */ + &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c b/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c new file mode 100644 index 000000000..75106d936 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedLimitType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 20, "maxSpeedInSchoolZone" }, + { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, + { 3, 26, "maxSpeedInConstructionZone" }, + { 4, 15, "vehicleMinSpeed" }, + { 5, 15, "vehicleMaxSpeed" }, + { 6, 20, "vehicleNightMaxSpeed" }, + { 7, 13, "truckMinSpeed" }, + { 8, 13, "truckMaxSpeed" }, + { 9, 18, "truckNightMaxSpeed" }, + { 10, 28, "vehiclesWithTrailersMinSpeed" }, + { 11, 28, "vehiclesWithTrailersMaxSpeed" }, + { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { + 3, /* maxSpeedInConstructionZone(3) */ + 1, /* maxSpeedInSchoolZone(1) */ + 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ + 8, /* truckMaxSpeed(8) */ + 7, /* truckMinSpeed(7) */ + 9, /* truckNightMaxSpeed(9) */ + 0, /* unknown(0) */ + 5, /* vehicleMaxSpeed(5) */ + 4, /* vehicleMinSpeed(4) */ + 6, /* vehicleNightMaxSpeed(6) */ + 11, /* vehiclesWithTrailersMaxSpeed(11) */ + 10, /* vehiclesWithTrailersMinSpeed(10) */ + 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { + asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ + 13, /* Number of elements in the maps */ + 14, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { + "SpeedLimitType", + "SpeedLimitType", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedLimitType_tags_1, + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitType_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimitType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimitType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfile.c b/src/tmx/Asn_J2735/src/2020/SpeedProfile.c new file mode 100644 index 000000000..266258ea1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedProfile.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedProfile.h" + +asn_TYPE_member_t asn_MBR_SpeedProfile_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedProfile, speedReports), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfileMeasurementList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedReports" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfile_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedProfile_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* speedReports */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1 = { + sizeof(struct SpeedProfile), + offsetof(struct SpeedProfile, _asn_ctx), + asn_MAP_SpeedProfile_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfile = { + "SpeedProfile", + "SpeedProfile", + &asn_OP_SEQUENCE, + asn_DEF_SpeedProfile_tags_1, + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfile_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpeedProfile_1, + 1, /* Elements count */ + &asn_SPC_SpeedProfile_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c new file mode 100644 index 000000000..7e323e967 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedProfileMeasurement.h" + +int +SpeedProfileMeasurement_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using GrossSpeed, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement = { + "SpeedProfileMeasurement", + "SpeedProfileMeasurement", + &asn_OP_NativeInteger, + asn_DEF_SpeedProfileMeasurement_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurement_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedProfileMeasurement_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedProfileMeasurement_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SpeedProfileMeasurement_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c new file mode 100644 index 000000000..a6b3c574b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedProfileMeasurementList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_SpeedProfileMeasurement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1 = { + sizeof(struct SpeedProfileMeasurementList), + offsetof(struct SpeedProfileMeasurementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList = { + "SpeedProfileMeasurementList", + "SpeedProfileMeasurementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedProfileMeasurementList_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurementList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedProfileMeasurementList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedProfileMeasurementList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedProfileMeasurementList_1, + 1, /* Single element */ + &asn_SPC_SpeedProfileMeasurementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c new file mode 100644 index 000000000..dee7aaf5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SpeedandHeadingandThrottleConfidence.h" + +asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, heading), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, throttle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttle" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* throttle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 = { + sizeof(struct SpeedandHeadingandThrottleConfidence), + offsetof(struct SpeedandHeadingandThrottleConfidence, _asn_ctx), + asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { + "SpeedandHeadingandThrottleConfidence", + "SpeedandHeadingandThrottleConfidence", + &asn_OP_SEQUENCE, + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpeedandHeadingandThrottleConfidence_1, + 3, /* Elements count */ + &asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c new file mode 100644 index 000000000..f83991548 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "StabilityControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { + asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { + "StabilityControlStatus", + "StabilityControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_StabilityControlStatus_tags_1, + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_StabilityControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_StabilityControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/StationID.c b/src/tmx/Asn_J2735/src/2020/StationID.c new file mode 100644 index 000000000..32abf2dc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/StationID.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "StationID.h" + +int +StationID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_StationID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_StationID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StationID = { + "StationID", + "StationID", + &asn_OP_NativeInteger, + asn_DEF_StationID_tags_1, + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + asn_DEF_StationID_tags_1, /* Same as above */ + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_StationID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_StationID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + StationID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_StationID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c new file mode 100644 index 000000000..6d9dfcfea --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SteeringAxleLubePressure.h" + +int +SteeringAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { + "SteeringAxleLubePressure", + "SteeringAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleLubePressure_tags_1, + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringAxleLubePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c new file mode 100644 index 000000000..9bca56fa4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SteeringAxleTemperature.h" + +int +SteeringAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40L && value <= 210L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { + "SteeringAxleTemperature", + "SteeringAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleTemperature_tags_1, + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringAxleTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c new file mode 100644 index 000000000..15c275a62 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SteeringWheelAngle.h" + +int +SteeringWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -126L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-126..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -126, 127 } /* (-126..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { + "SteeringWheelAngle", + "SteeringWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngle_tags_1, + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringWheelAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c new file mode 100644 index 000000000..72297d57f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SteeringWheelAngleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "prec2deg" }, + { 2, 8, "prec1deg" }, + { 3, 11, "prec0-02deg" } +}; +static const unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { + 3, /* prec0-02deg(3) */ + 2, /* prec1deg(2) */ + 1, /* prec2deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { + asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { + "SteeringWheelAngleConfidence", + "SteeringWheelAngleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SteeringWheelAngleConfidence_tags_1, + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c new file mode 100644 index 000000000..09fdbc38c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SteeringWheelAngleRateOfChange.h" + +int +SteeringWheelAngleRateOfChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { + "SteeringWheelAngleRateOfChange", + "SteeringWheelAngleRateOfChange", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngleRateOfChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringWheelAngleRateOfChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SummerTime.c b/src/tmx/Asn_J2735/src/2020/SummerTime.c new file mode 100644 index 000000000..8790bda6a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SummerTime.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SummerTime.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SummerTime_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SummerTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { + { 0, 15, "notInSummerTime" }, + { 1, 12, "inSummerTime" } +}; +static const unsigned int asn_MAP_SummerTime_enum2value_1[] = { + 1, /* inSummerTime(1) */ + 0 /* notInSummerTime(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { + asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SummerTime = { + "SummerTime", + "SummerTime", + &asn_OP_NativeEnumerated, + asn_DEF_SummerTime_tags_1, + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + asn_DEF_SummerTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SummerTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SummerTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SummerTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SunSensor.c b/src/tmx/Asn_J2735/src/2020/SunSensor.c new file mode 100644 index 000000000..edb5ac980 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SunSensor.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SunSensor.h" + +int +SunSensor_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SunSensor_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SunSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SunSensor = { + "SunSensor", + "SunSensor", + &asn_OP_NativeInteger, + asn_DEF_SunSensor_tags_1, + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + asn_DEF_SunSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SunSensor_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SunSensor_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SunSensor_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c b/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c new file mode 100644 index 000000000..f3bddfac8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c @@ -0,0 +1,342 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "SupplementalVehicleExtensions.h" + +#include "VehicleClassification.h" +#include "VehicleData.h" +#include "WeatherReport.h" +#include "WeatherProbe.h" +#include "ObstacleDetection.h" +#include "DisabledVehicle.h" +#include "SpeedProfile.h" +#include "RTCMPackage.h" +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SupplementalVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct SupplementalVehicleExtensions__regional), + offsetof(struct SupplementalVehicleExtensions__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[] = { + { ATF_POINTER, 10, offsetof(struct SupplementalVehicleExtensions, classification), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "classification" + }, + { ATF_POINTER, 9, offsetof(struct SupplementalVehicleExtensions, classDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "classDetails" + }, + { ATF_POINTER, 8, offsetof(struct SupplementalVehicleExtensions, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 7, offsetof(struct SupplementalVehicleExtensions, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherReport, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 6, offsetof(struct SupplementalVehicleExtensions, weatherProbe), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherProbe, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherProbe" + }, + { ATF_POINTER, 5, offsetof(struct SupplementalVehicleExtensions, obstacle), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDetection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obstacle" + }, + { ATF_POINTER, 4, offsetof(struct SupplementalVehicleExtensions, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DisabledVehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct SupplementalVehicleExtensions, speedProfile), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfile, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedProfile" + }, + { ATF_POINTER, 2, offsetof(struct SupplementalVehicleExtensions, theRTCM), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "theRTCM" + }, + { ATF_POINTER, 1, offsetof(struct SupplementalVehicleExtensions, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SupplementalVehicleExtensions_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_SupplementalVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SupplementalVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* classification */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* classDetails */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* weatherProbe */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* obstacle */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speedProfile */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* theRTCM */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1 = { + sizeof(struct SupplementalVehicleExtensions), + offsetof(struct SupplementalVehicleExtensions, _asn_ctx), + asn_MAP_SupplementalVehicleExtensions_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_SupplementalVehicleExtensions_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions = { + "SupplementalVehicleExtensions", + "SupplementalVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SupplementalVehicleExtensions_tags_1, + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SupplementalVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SupplementalVehicleExtensions_1, + 10, /* Elements count */ + &asn_SPC_SupplementalVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TemporaryID.c b/src/tmx/Asn_J2735/src/2020/TemporaryID.c new file mode 100644 index 000000000..191a088f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TemporaryID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TemporaryID.h" + +int +TemporaryID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TemporaryID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 4 /* (SIZE(4..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TemporaryID = { + "TemporaryID", + "TemporaryID", + &asn_OP_OCTET_STRING, + asn_DEF_TemporaryID_tags_1, + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + asn_DEF_TemporaryID_tags_1, /* Same as above */ + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TemporaryID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TemporaryID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TemporaryID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TenthSecond.c b/src/tmx/Asn_J2735/src/2020/TenthSecond.c new file mode 100644 index 000000000..306c5017d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TenthSecond.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TenthSecond.h" + +int +TenthSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 9L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TenthSecond_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..9) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TenthSecond = { + "TenthSecond", + "TenthSecond", + &asn_OP_NativeInteger, + asn_DEF_TenthSecond_tags_1, + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + asn_DEF_TenthSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TenthSecond_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TenthSecond_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TenthSecond_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TermDistance.c b/src/tmx/Asn_J2735/src/2020/TermDistance.c new file mode 100644 index 000000000..10846c34c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TermDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TermDistance.h" + +int +TermDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 30000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TermDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..30000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TermDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermDistance = { + "TermDistance", + "TermDistance", + &asn_OP_NativeInteger, + asn_DEF_TermDistance_tags_1, + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + asn_DEF_TermDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TermDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TermDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TermDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TermTime.c b/src/tmx/Asn_J2735/src/2020/TermTime.c new file mode 100644 index 000000000..add2de523 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TermTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TermTime.h" + +int +TermTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 1800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TermTime_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..1800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TermTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermTime = { + "TermTime", + "TermTime", + &asn_OP_NativeInteger, + asn_DEF_TermTime_tags_1, + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + asn_DEF_TermTime_tags_1, /* Same as above */ + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TermTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TermTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TermTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage00.c b/src/tmx/Asn_J2735/src/2020/TestMessage00.c new file mode 100644 index 000000000..29d08515b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage00.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage00" + * found in "J2735-TestMessage00.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage00.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage00_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage00, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage00, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage00, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage00_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage00_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage00_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1 = { + sizeof(struct TestMessage00), + offsetof(struct TestMessage00, _asn_ctx), + asn_MAP_TestMessage00_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage00_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage00 = { + "TestMessage00", + "TestMessage00", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage00_tags_1, + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + asn_DEF_TestMessage00_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage00_1, + 2, /* Elements count */ + &asn_SPC_TestMessage00_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage01.c b/src/tmx/Asn_J2735/src/2020/TestMessage01.c new file mode 100644 index 000000000..546fa3c58 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage01.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage01" + * found in "J2735-TestMessage01.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage01.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage01_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage01, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage01, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage01, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage01_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1 = { + sizeof(struct TestMessage01), + offsetof(struct TestMessage01, _asn_ctx), + asn_MAP_TestMessage01_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage01_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage01 = { + "TestMessage01", + "TestMessage01", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage01_tags_1, + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + asn_DEF_TestMessage01_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage01_1, + 2, /* Elements count */ + &asn_SPC_TestMessage01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage02.c b/src/tmx/Asn_J2735/src/2020/TestMessage02.c new file mode 100644 index 000000000..f52bfe758 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage02.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage02" + * found in "J2735-TestMessage02.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage02.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage02_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage02, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage02, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage02, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage02_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage02_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage02_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1 = { + sizeof(struct TestMessage02), + offsetof(struct TestMessage02, _asn_ctx), + asn_MAP_TestMessage02_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage02_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage02 = { + "TestMessage02", + "TestMessage02", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage02_tags_1, + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + asn_DEF_TestMessage02_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage02_1, + 2, /* Elements count */ + &asn_SPC_TestMessage02_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage03.c b/src/tmx/Asn_J2735/src/2020/TestMessage03.c new file mode 100644 index 000000000..2cacf0043 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage03.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage03" + * found in "J2735-TestMessage03.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage03.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage03_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage03, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage03, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage03, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage03_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage03_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage03_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1 = { + sizeof(struct TestMessage03), + offsetof(struct TestMessage03, _asn_ctx), + asn_MAP_TestMessage03_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage03_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage03 = { + "TestMessage03", + "TestMessage03", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage03_tags_1, + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + asn_DEF_TestMessage03_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage03_1, + 2, /* Elements count */ + &asn_SPC_TestMessage03_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage04.c b/src/tmx/Asn_J2735/src/2020/TestMessage04.c new file mode 100644 index 000000000..dbd1605ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage04.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage04" + * found in "J2735-TestMessage04.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage04.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage04_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage04, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage04, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage04, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage04_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage04_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage04_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1 = { + sizeof(struct TestMessage04), + offsetof(struct TestMessage04, _asn_ctx), + asn_MAP_TestMessage04_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage04_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage04 = { + "TestMessage04", + "TestMessage04", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage04_tags_1, + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + asn_DEF_TestMessage04_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage04_1, + 2, /* Elements count */ + &asn_SPC_TestMessage04_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage05.c b/src/tmx/Asn_J2735/src/2020/TestMessage05.c new file mode 100644 index 000000000..6233396d6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage05.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage05" + * found in "J2735-TestMessage05.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage05.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage05_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage05, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage05, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage05, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage05_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage05_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage05_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1 = { + sizeof(struct TestMessage05), + offsetof(struct TestMessage05, _asn_ctx), + asn_MAP_TestMessage05_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage05_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage05 = { + "TestMessage05", + "TestMessage05", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage05_tags_1, + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + asn_DEF_TestMessage05_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage05_1, + 2, /* Elements count */ + &asn_SPC_TestMessage05_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage06.c b/src/tmx/Asn_J2735/src/2020/TestMessage06.c new file mode 100644 index 000000000..8f29ea681 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage06.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage06" + * found in "J2735-TestMessage06.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage06.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage06_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage06, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage06, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage06, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage06_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage06_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage06_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1 = { + sizeof(struct TestMessage06), + offsetof(struct TestMessage06, _asn_ctx), + asn_MAP_TestMessage06_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage06_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage06 = { + "TestMessage06", + "TestMessage06", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage06_tags_1, + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + asn_DEF_TestMessage06_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage06_1, + 2, /* Elements count */ + &asn_SPC_TestMessage06_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage07.c b/src/tmx/Asn_J2735/src/2020/TestMessage07.c new file mode 100644 index 000000000..31dd4ffc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage07.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage07" + * found in "J2735-TestMessage07.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage07.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage07_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage07, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage07, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage07_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage07_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1 = { + sizeof(struct TestMessage07), + offsetof(struct TestMessage07, _asn_ctx), + asn_MAP_TestMessage07_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage07_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage07 = { + "TestMessage07", + "TestMessage07", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage07_tags_1, + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + asn_DEF_TestMessage07_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage07_1, + 2, /* Elements count */ + &asn_SPC_TestMessage07_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage08.c b/src/tmx/Asn_J2735/src/2020/TestMessage08.c new file mode 100644 index 000000000..5fd007e7b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage08.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage08" + * found in "J2735-TestMessage08.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage08.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage08_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage08, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage08, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage08_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage08_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1 = { + sizeof(struct TestMessage08), + offsetof(struct TestMessage08, _asn_ctx), + asn_MAP_TestMessage08_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage08_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage08 = { + "TestMessage08", + "TestMessage08", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage08_tags_1, + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + asn_DEF_TestMessage08_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage08_1, + 2, /* Elements count */ + &asn_SPC_TestMessage08_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage09.c b/src/tmx/Asn_J2735/src/2020/TestMessage09.c new file mode 100644 index 000000000..81db76bd7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage09.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage09" + * found in "J2735-TestMessage09.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage09.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage09_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage09, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage09, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage09_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage09_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1 = { + sizeof(struct TestMessage09), + offsetof(struct TestMessage09, _asn_ctx), + asn_MAP_TestMessage09_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage09_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage09 = { + "TestMessage09", + "TestMessage09", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage09_tags_1, + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + asn_DEF_TestMessage09_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage09_1, + 2, /* Elements count */ + &asn_SPC_TestMessage09_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage10.c b/src/tmx/Asn_J2735/src/2020/TestMessage10.c new file mode 100644 index 000000000..15e8eb8f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage10.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage10" + * found in "J2735-TestMessage10.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage10.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage10_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage10, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage10, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage10_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage10_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1 = { + sizeof(struct TestMessage10), + offsetof(struct TestMessage10, _asn_ctx), + asn_MAP_TestMessage10_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage10_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage10 = { + "TestMessage10", + "TestMessage10", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage10_tags_1, + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + asn_DEF_TestMessage10_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage10_1, + 2, /* Elements count */ + &asn_SPC_TestMessage10_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage11.c b/src/tmx/Asn_J2735/src/2020/TestMessage11.c new file mode 100644 index 000000000..c88d4f811 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage11.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage11" + * found in "J2735-TestMessage11.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage11.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage11_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage11, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage11, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage11_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage11_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1 = { + sizeof(struct TestMessage11), + offsetof(struct TestMessage11, _asn_ctx), + asn_MAP_TestMessage11_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage11_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage11 = { + "TestMessage11", + "TestMessage11", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage11_tags_1, + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + asn_DEF_TestMessage11_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage11_1, + 2, /* Elements count */ + &asn_SPC_TestMessage11_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage12.c b/src/tmx/Asn_J2735/src/2020/TestMessage12.c new file mode 100644 index 000000000..20b9d3c4f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage12.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage12" + * found in "J2735-TestMessage12.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage12.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage12_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage12, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage12, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage12_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage12_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1 = { + sizeof(struct TestMessage12), + offsetof(struct TestMessage12, _asn_ctx), + asn_MAP_TestMessage12_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage12_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage12 = { + "TestMessage12", + "TestMessage12", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage12_tags_1, + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + asn_DEF_TestMessage12_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage12_1, + 2, /* Elements count */ + &asn_SPC_TestMessage12_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage13.c b/src/tmx/Asn_J2735/src/2020/TestMessage13.c new file mode 100644 index 000000000..32cb88d70 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage13.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage13" + * found in "J2735-TestMessage13.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage13.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage13_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage13, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage13, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage13_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage13_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1 = { + sizeof(struct TestMessage13), + offsetof(struct TestMessage13, _asn_ctx), + asn_MAP_TestMessage13_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage13_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage13 = { + "TestMessage13", + "TestMessage13", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage13_tags_1, + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + asn_DEF_TestMessage13_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage13_1, + 2, /* Elements count */ + &asn_SPC_TestMessage13_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage14.c b/src/tmx/Asn_J2735/src/2020/TestMessage14.c new file mode 100644 index 000000000..5cf216bb3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage14.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage14" + * found in "J2735-TestMessage14.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage14.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage14_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage14, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage14, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage14_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage14_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1 = { + sizeof(struct TestMessage14), + offsetof(struct TestMessage14, _asn_ctx), + asn_MAP_TestMessage14_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage14_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage14 = { + "TestMessage14", + "TestMessage14", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage14_tags_1, + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + asn_DEF_TestMessage14_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage14_1, + 2, /* Elements count */ + &asn_SPC_TestMessage14_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage15.c b/src/tmx/Asn_J2735/src/2020/TestMessage15.c new file mode 100644 index 000000000..c81c7a73a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TestMessage15.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage15" + * found in "J2735-TestMessage15.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TestMessage15.h" + +#include "Header.h" +#include "RegionalExtension.h" +asn_TYPE_member_t asn_MBR_TestMessage15_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage15, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage15, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage15, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage15_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage15_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage15_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1 = { + sizeof(struct TestMessage15), + offsetof(struct TestMessage15, _asn_ctx), + asn_MAP_TestMessage15_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage15_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage15 = { + "TestMessage15", + "TestMessage15", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage15_tags_1, + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + asn_DEF_TestMessage15_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage15_1, + 2, /* Elements count */ + &asn_SPC_TestMessage15_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c new file mode 100644 index 000000000..86187d3fb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ThrottleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "prec10percent" }, + { 2, 12, "prec1percent" }, + { 3, 14, "prec0-5percent" } +}; +static const unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { + 3, /* prec0-5percent(3) */ + 1, /* prec10percent(1) */ + 2, /* prec1percent(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { + asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { + "ThrottleConfidence", + "ThrottleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ThrottleConfidence_tags_1, + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ThrottleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ThrottleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c b/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c new file mode 100644 index 000000000..74431f2a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ThrottlePosition.h" + +int +ThrottlePosition_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { + "ThrottlePosition", + "ThrottlePosition", + &asn_OP_NativeInteger, + asn_DEF_ThrottlePosition_tags_1, + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + asn_DEF_ThrottlePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ThrottlePosition_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ThrottlePosition_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ThrottlePosition_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c new file mode 100644 index 000000000..49f75ad04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TimeChangeDetails.h" + +asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { + sizeof(struct TimeChangeDetails), + offsetof(struct TimeChangeDetails, _asn_ctx), + asn_MAP_TimeChangeDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { + "TimeChangeDetails", + "TimeChangeDetails", + &asn_OP_SEQUENCE, + asn_DEF_TimeChangeDetails_tags_1, + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TimeChangeDetails_1, + 6, /* Elements count */ + &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TimeConfidence.c b/src/tmx/Asn_J2735/src/2020/TimeConfidence.c new file mode 100644 index 000000000..04354d577 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TimeConfidence.c @@ -0,0 +1,144 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TimeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 12, "time-100-000" }, + { 2, 12, "time-050-000" }, + { 3, 12, "time-020-000" }, + { 4, 12, "time-010-000" }, + { 5, 12, "time-002-000" }, + { 6, 12, "time-001-000" }, + { 7, 12, "time-000-500" }, + { 8, 12, "time-000-200" }, + { 9, 12, "time-000-100" }, + { 10, 12, "time-000-050" }, + { 11, 12, "time-000-020" }, + { 12, 12, "time-000-010" }, + { 13, 12, "time-000-005" }, + { 14, 12, "time-000-002" }, + { 15, 12, "time-000-001" }, + { 16, 14, "time-000-000-5" }, + { 17, 14, "time-000-000-2" }, + { 18, 14, "time-000-000-1" }, + { 19, 15, "time-000-000-05" }, + { 20, 15, "time-000-000-02" }, + { 21, 15, "time-000-000-01" }, + { 22, 16, "time-000-000-005" }, + { 23, 16, "time-000-000-002" }, + { 24, 16, "time-000-000-001" }, + { 25, 18, "time-000-000-000-5" }, + { 26, 18, "time-000-000-000-2" }, + { 27, 18, "time-000-000-000-1" }, + { 28, 19, "time-000-000-000-05" }, + { 29, 19, "time-000-000-000-02" }, + { 30, 19, "time-000-000-000-01" }, + { 31, 20, "time-000-000-000-005" }, + { 32, 20, "time-000-000-000-002" }, + { 33, 20, "time-000-000-000-001" }, + { 34, 22, "time-000-000-000-000-5" }, + { 35, 22, "time-000-000-000-000-2" }, + { 36, 22, "time-000-000-000-000-1" }, + { 37, 23, "time-000-000-000-000-05" }, + { 38, 23, "time-000-000-000-000-02" }, + { 39, 23, "time-000-000-000-000-01" } +}; +static const unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { + 39, /* time-000-000-000-000-01(39) */ + 38, /* time-000-000-000-000-02(38) */ + 37, /* time-000-000-000-000-05(37) */ + 36, /* time-000-000-000-000-1(36) */ + 35, /* time-000-000-000-000-2(35) */ + 34, /* time-000-000-000-000-5(34) */ + 33, /* time-000-000-000-001(33) */ + 32, /* time-000-000-000-002(32) */ + 31, /* time-000-000-000-005(31) */ + 30, /* time-000-000-000-01(30) */ + 29, /* time-000-000-000-02(29) */ + 28, /* time-000-000-000-05(28) */ + 27, /* time-000-000-000-1(27) */ + 26, /* time-000-000-000-2(26) */ + 25, /* time-000-000-000-5(25) */ + 24, /* time-000-000-001(24) */ + 23, /* time-000-000-002(23) */ + 22, /* time-000-000-005(22) */ + 21, /* time-000-000-01(21) */ + 20, /* time-000-000-02(20) */ + 19, /* time-000-000-05(19) */ + 18, /* time-000-000-1(18) */ + 17, /* time-000-000-2(17) */ + 16, /* time-000-000-5(16) */ + 15, /* time-000-001(15) */ + 14, /* time-000-002(14) */ + 13, /* time-000-005(13) */ + 12, /* time-000-010(12) */ + 11, /* time-000-020(11) */ + 10, /* time-000-050(10) */ + 9, /* time-000-100(9) */ + 8, /* time-000-200(8) */ + 7, /* time-000-500(7) */ + 6, /* time-001-000(6) */ + 5, /* time-002-000(5) */ + 4, /* time-010-000(4) */ + 3, /* time-020-000(3) */ + 2, /* time-050-000(2) */ + 1, /* time-100-000(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { + asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 40, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { + "TimeConfidence", + "TimeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_TimeConfidence_tags_1, + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c new file mode 100644 index 000000000..8a00c80eb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TimeIntervalConfidence.h" + +int +TimeIntervalConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { + "TimeIntervalConfidence", + "TimeIntervalConfidence", + &asn_OP_NativeInteger, + asn_DEF_TimeIntervalConfidence_tags_1, + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeIntervalConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeIntervalConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeIntervalConfidence_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TimeOffset.c b/src/tmx/Asn_J2735/src/2020/TimeOffset.c new file mode 100644 index 000000000..f0577b506 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TimeOffset.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TimeOffset.h" + +int +TimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeOffset_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeOffset = { + "TimeOffset", + "TimeOffset", + &asn_OP_NativeInteger, + asn_DEF_TimeOffset_tags_1, + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + asn_DEF_TimeOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeOffset_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TimeRemaining.c b/src/tmx/Asn_J2735/src/2020/TimeRemaining.c new file mode 100644 index 000000000..e4fe0d726 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TimeRemaining.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TimeRemaining.h" + +int +TimeRemaining_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 9001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..9001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { + "TimeRemaining", + "TimeRemaining", + &asn_OP_NativeInteger, + asn_DEF_TimeRemaining_tags_1, + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + asn_DEF_TimeRemaining_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeRemaining_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeRemaining_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeRemaining_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TireData.c b/src/tmx/Asn_J2735/src/2020/TireData.c new file mode 100644 index 000000000..da2854113 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TireData.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TireData.h" + +asn_TYPE_member_t asn_MBR_TireData_1[] = { + { ATF_POINTER, 7, offsetof(struct TireData, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 6, offsetof(struct TireData, pressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pressure" + }, + { ATF_POINTER, 5, offsetof(struct TireData, temp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireTemp, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "temp" + }, + { ATF_POINTER, 4, offsetof(struct TireData, wheelSensorStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelSensorStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelSensorStatus" + }, + { ATF_POINTER, 3, offsetof(struct TireData, wheelEndElectFault), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelEndElectFault, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelEndElectFault" + }, + { ATF_POINTER, 2, offsetof(struct TireData, leakageRate), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLeakageRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "leakageRate" + }, + { ATF_POINTER, 1, offsetof(struct TireData, detection), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressureThresholdDetection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "detection" + }, +}; +static const int asn_MAP_TireData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_TireData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TireData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1 = { + sizeof(struct TireData), + offsetof(struct TireData, _asn_ctx), + asn_MAP_TireData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_TireData_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TireData = { + "TireData", + "TireData", + &asn_OP_SEQUENCE, + asn_DEF_TireData_tags_1, + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + asn_DEF_TireData_tags_1, /* Same as above */ + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TireData_1, + 7, /* Elements count */ + &asn_SPC_TireData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TireDataList.c b/src/tmx/Asn_J2735/src/2020/TireDataList.c new file mode 100644 index 000000000..c29f825f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TireDataList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TireDataList.h" + +#include "TireData.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireDataList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireDataList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TireDataList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TireData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TireDataList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1 = { + sizeof(struct TireDataList), + offsetof(struct TireDataList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TireDataList = { + "TireDataList", + "TireDataList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TireDataList_tags_1, + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + asn_DEF_TireDataList_tags_1, /* Same as above */ + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireDataList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireDataList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TireDataList_1, + 1, /* Single element */ + &asn_SPC_TireDataList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c b/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c new file mode 100644 index 000000000..0d2019939 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TireLeakageRate.h" + +int +TireLeakageRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { + "TireLeakageRate", + "TireLeakageRate", + &asn_OP_NativeInteger, + asn_DEF_TireLeakageRate_tags_1, + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + asn_DEF_TireLeakageRate_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireLeakageRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireLeakageRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireLeakageRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TireLocation.c b/src/tmx/Asn_J2735/src/2020/TireLocation.c new file mode 100644 index 000000000..07fb61509 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TireLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TireLocation.h" + +int +TireLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLocation = { + "TireLocation", + "TireLocation", + &asn_OP_NativeInteger, + asn_DEF_TireLocation_tags_1, + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + asn_DEF_TireLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TirePressure.c b/src/tmx/Asn_J2735/src/2020/TirePressure.c new file mode 100644 index 000000000..c615cd2b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TirePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TirePressure.h" + +int +TirePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TirePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TirePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressure = { + "TirePressure", + "TirePressure", + &asn_OP_NativeInteger, + asn_DEF_TirePressure_tags_1, + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + asn_DEF_TirePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TirePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TirePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TirePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c new file mode 100644 index 000000000..68cbe20e0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TirePressureThresholdDetection.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { + { 0, 6, "noData" }, + { 1, 12, "overPressure" }, + { 2, 17, "noWarningPressure" }, + { 3, 13, "underPressure" }, + { 4, 20, "extremeUnderPressure" }, + { 5, 9, "undefined" }, + { 6, 14, "errorIndicator" }, + { 7, 12, "notAvailable" } +}; +static const unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { + 6, /* errorIndicator(6) */ + 4, /* extremeUnderPressure(4) */ + 0, /* noData(0) */ + 2, /* noWarningPressure(2) */ + 7, /* notAvailable(7) */ + 1, /* overPressure(1) */ + 5, /* undefined(5) */ + 3 /* underPressure(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { + asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { + "TirePressureThresholdDetection", + "TirePressureThresholdDetection", + &asn_OP_NativeEnumerated, + asn_DEF_TirePressureThresholdDetection_tags_1, + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TirePressureThresholdDetection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TirePressureThresholdDetection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TireTemp.c b/src/tmx/Asn_J2735/src/2020/TireTemp.c new file mode 100644 index 000000000..48a5b6be5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TireTemp.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TireTemp.h" + +int +TireTemp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8736L && value <= 55519L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireTemp_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8736..55519) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireTemp_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -8736, 55519 } /* (-8736..55519) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireTemp = { + "TireTemp", + "TireTemp", + &asn_OP_NativeInteger, + asn_DEF_TireTemp_tags_1, + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + asn_DEF_TireTemp_tags_1, /* Same as above */ + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireTemp_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireTemp_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireTemp_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c b/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c new file mode 100644 index 000000000..13cd1146f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TractionControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TractionControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_TractionControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1 = { + asn_MAP_TractionControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TractionControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TractionControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TractionControlStatus = { + "TractionControlStatus", + "TractionControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_TractionControlStatus_tags_1, + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + asn_DEF_TractionControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TractionControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TractionControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TractionControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerData.c b/src/tmx/Asn_J2735/src/2020/TrailerData.c new file mode 100644 index 000000000..98e2d1286 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerData.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerData.h" + +asn_TYPE_member_t asn_MBR_TrailerData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, connection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connection" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerUnitDescriptionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* connection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1 = { + sizeof(struct TrailerData), + offsetof(struct TrailerData, _asn_ctx), + asn_MAP_TrailerData_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerData = { + "TrailerData", + "TrailerData", + &asn_OP_SEQUENCE, + asn_DEF_TrailerData_tags_1, + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + asn_DEF_TrailerData_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerData_1, + 3, /* Elements count */ + &asn_SPC_TrailerData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c new file mode 100644 index 000000000..046639a62 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerHistoryPoint.h" + +asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_TrailerHistoryPoint_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1 = { + sizeof(struct TrailerHistoryPoint), + offsetof(struct TrailerHistoryPoint, _asn_ctx), + asn_MAP_TrailerHistoryPoint_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_TrailerHistoryPoint_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint = { + "TrailerHistoryPoint", + "TrailerHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_TrailerHistoryPoint_tags_1, + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerHistoryPoint_1, + 5, /* Elements count */ + &asn_SPC_TrailerHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c new file mode 100644 index 000000000..3a38b7825 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerHistoryPointList.h" + +#include "TrailerHistoryPoint.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerHistoryPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1 = { + sizeof(struct TrailerHistoryPointList), + offsetof(struct TrailerHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList = { + "TrailerHistoryPointList", + "TrailerHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerHistoryPointList_tags_1, + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TrailerHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_TrailerHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerMass.c b/src/tmx/Asn_J2735/src/2020/TrailerMass.c new file mode 100644 index 000000000..a589f4b3d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerMass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerMass.h" + +int +TrailerMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TrailerMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerMass = { + "TrailerMass", + "TrailerMass", + &asn_OP_NativeInteger, + asn_DEF_TrailerMass_tags_1, + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + asn_DEF_TrailerMass_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerMass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerMass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TrailerMass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c new file mode 100644 index 000000000..0f86ccf58 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c @@ -0,0 +1,287 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerUnitDescription.h" + +#include "BumperHeights.h" +#include "PivotPointDescription.h" +#include "TrailerHistoryPointList.h" +asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, isDolly), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IsDolly, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isDolly" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, width), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, length), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "length" + }, + { ATF_POINTER, 4, offsetof(struct TrailerUnitDescription, height), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct TrailerUnitDescription, mass), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, bumperHeights), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumperHeights" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, centerOfGravity), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "centerOfGravity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, frontPivot), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "frontPivot" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, rearPivot), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rearPivot" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, rearWheelOffset), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rearWheelOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, crumbData), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerHistoryPointList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_TrailerUnitDescription_oms_1[] = { 3, 4, 5, 6, 8, 9, 11, 12 }; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerUnitDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isDolly */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* length */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* bumperHeights */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* centerOfGravity */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* frontPivot */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* rearPivot */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* rearWheelOffset */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1 = { + sizeof(struct TrailerUnitDescription), + offsetof(struct TrailerUnitDescription, _asn_ctx), + asn_MAP_TrailerUnitDescription_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TrailerUnitDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription = { + "TrailerUnitDescription", + "TrailerUnitDescription", + &asn_OP_SEQUENCE, + asn_DEF_TrailerUnitDescription_tags_1, + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerUnitDescription_1, + 13, /* Elements count */ + &asn_SPC_TrailerUnitDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c new file mode 100644 index 000000000..b9b35f37a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerUnitDescriptionList.h" + +#include "TrailerUnitDescription.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerUnitDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescriptionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1 = { + sizeof(struct TrailerUnitDescriptionList), + offsetof(struct TrailerUnitDescriptionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList = { + "TrailerUnitDescriptionList", + "TrailerUnitDescriptionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerUnitDescriptionList_tags_1, + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescriptionList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerUnitDescriptionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerUnitDescriptionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TrailerUnitDescriptionList_1, + 1, /* Single element */ + &asn_SPC_TrailerUnitDescriptionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TrailerWeight.c b/src/tmx/Asn_J2735/src/2020/TrailerWeight.c new file mode 100644 index 000000000..33182b9a1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TrailerWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TrailerWeight.h" + +int +TrailerWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { + "TrailerWeight", + "TrailerWeight", + &asn_OP_NativeInteger, + asn_DEF_TrailerWeight_tags_1, + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + asn_DEF_TrailerWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TrailerWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TransitStatus.c b/src/tmx/Asn_J2735/src/2020/TransitStatus.c new file mode 100644 index 000000000..7d9203ca2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TransitStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TransitStatus.h" + +int +TransitStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 6 /* (SIZE(6..6)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitStatus = { + "TransitStatus", + "TransitStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitStatus_tags_1, + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TransitStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c b/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c new file mode 100644 index 000000000..96352d996 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TransitVehicleOccupancy.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TransitVehicleOccupancy_value2enum_1[] = { + { 0, 16, "occupancyUnknown" }, + { 1, 14, "occupancyEmpty" }, + { 2, 16, "occupancyVeryLow" }, + { 3, 12, "occupancyLow" }, + { 4, 12, "occupancyMed" }, + { 5, 13, "occupancyHigh" }, + { 6, 19, "occupancyNearlyFull" }, + { 7, 13, "occupancyFull" } +}; +static const unsigned int asn_MAP_TransitVehicleOccupancy_enum2value_1[] = { + 1, /* occupancyEmpty(1) */ + 7, /* occupancyFull(7) */ + 5, /* occupancyHigh(5) */ + 3, /* occupancyLow(3) */ + 4, /* occupancyMed(4) */ + 6, /* occupancyNearlyFull(6) */ + 0, /* occupancyUnknown(0) */ + 2 /* occupancyVeryLow(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1 = { + asn_MAP_TransitVehicleOccupancy_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransitVehicleOccupancy_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransitVehicleOccupancy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy = { + "TransitVehicleOccupancy", + "TransitVehicleOccupancy", + &asn_OP_NativeEnumerated, + asn_DEF_TransitVehicleOccupancy_tags_1, + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleOccupancy_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitVehicleOccupancy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitVehicleOccupancy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransitVehicleOccupancy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c b/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c new file mode 100644 index 000000000..929498957 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TransitVehicleStatus.h" + +int +TransitVehicleStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TransitVehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus = { + "TransitVehicleStatus", + "TransitVehicleStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitVehicleStatus_tags_1, + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitVehicleStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitVehicleStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TransitVehicleStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c new file mode 100644 index 000000000..f77b308ee --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TransmissionAndSpeed.h" + +asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, transmisson), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transmisson" + }, + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TransmissionAndSpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transmisson */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1 = { + sizeof(struct TransmissionAndSpeed), + offsetof(struct TransmissionAndSpeed, _asn_ctx), + asn_MAP_TransmissionAndSpeed_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { + "TransmissionAndSpeed", + "TransmissionAndSpeed", + &asn_OP_SEQUENCE, + asn_DEF_TransmissionAndSpeed_tags_1, + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TransmissionAndSpeed_1, + 2, /* Elements count */ + &asn_SPC_TransmissionAndSpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TransmissionState.c b/src/tmx/Asn_J2735/src/2020/TransmissionState.c new file mode 100644 index 000000000..7c165164e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TransmissionState.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TransmissionState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransmissionState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { + { 0, 7, "neutral" }, + { 1, 4, "park" }, + { 2, 12, "forwardGears" }, + { 3, 12, "reverseGears" }, + { 4, 9, "reserved1" }, + { 5, 9, "reserved2" }, + { 6, 9, "reserved3" }, + { 7, 11, "unavailable" } +}; +static const unsigned int asn_MAP_TransmissionState_enum2value_1[] = { + 2, /* forwardGears(2) */ + 0, /* neutral(0) */ + 1, /* park(1) */ + 4, /* reserved1(4) */ + 5, /* reserved2(5) */ + 6, /* reserved3(6) */ + 3, /* reverseGears(3) */ + 7 /* unavailable(7) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { + asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionState = { + "TransmissionState", + "TransmissionState", + &asn_OP_NativeEnumerated, + asn_DEF_TransmissionState_tags_1, + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + asn_DEF_TransmissionState_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransmissionState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransmissionState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransmissionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c b/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c new file mode 100644 index 000000000..f51058a63 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c @@ -0,0 +1,612 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TravelerDataFrame.h" + +#include "GeographicalPath.h" +static int +memb_regions_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 16UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_msgId_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_msgId_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_content_constr_16 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_content_constr_16 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_msgId_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.roadSignID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSignID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadSignID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ +}; +static asn_CHOICE_specifics_t asn_SPC_msgId_specs_4 = { + sizeof(struct TravelerDataFrame__msgId), + offsetof(struct TravelerDataFrame__msgId, _asn_ctx), + offsetof(struct TravelerDataFrame__msgId, present), + sizeof(((struct TravelerDataFrame__msgId *)0)->present), + asn_MAP_msgId_tag2el_4, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_msgId_4 = { + "msgId", + "msgId", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_msgId_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_msgId_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_msgId_4, + 2, /* Elements count */ + &asn_SPC_msgId_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regions_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GeographicalPath, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regions_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regions_specs_12 = { + sizeof(struct TravelerDataFrame__regions), + offsetof(struct TravelerDataFrame__regions, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regions_12 = { + "regions", + "regions", + &asn_OP_SEQUENCE_OF, + asn_DEF_regions_tags_12, + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]) - 1, /* 1 */ + asn_DEF_regions_tags_12, /* Same as above */ + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regions_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regions_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regions_12, + 1, /* Single element */ + &asn_SPC_regions_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_content_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.advisory), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodesAndText, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "advisory" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.workZone), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WorkZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "workZone" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.genericSign), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericSignage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "genericSign" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.speedLimit), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimit, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimit" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.exitService), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExitService, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "exitService" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_content_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ +}; +static asn_CHOICE_specifics_t asn_SPC_content_specs_16 = { + sizeof(struct TravelerDataFrame__content), + offsetof(struct TravelerDataFrame__content, _asn_ctx), + offsetof(struct TravelerDataFrame__content, present), + sizeof(((struct TravelerDataFrame__content *)0)->present), + asn_MAP_content_tag2el_16, + 5, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_content_16 = { + "content", + "content", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_content_constr_16, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_content_constr_16, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_content_16, + 5, /* Elements count */ + &asn_SPC_content_specs_16 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, frameType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerInfoType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "frameType" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, msgId), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_msgId_4, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgId" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, startYear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startYear" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, startTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, durationTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesDuration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "durationTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, priority), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignPrority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed1), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, regions), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regions_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regions_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regions_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regions_constraint_1 + }, + 0, 0, /* No default value */ + "regions" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed2), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed2" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed3), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed3" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, content), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_content_16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "content" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, url), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Short, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "url" + }, +}; +static const int asn_MAP_TravelerDataFrame_oms_1[] = { 3, 12 }; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerDataFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frameType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgId */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startYear */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* durationTime */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* notUsed1 */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* regions */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* notUsed2 */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* notUsed3 */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* content */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* url */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1 = { + sizeof(struct TravelerDataFrame), + offsetof(struct TravelerDataFrame, _asn_ctx), + asn_MAP_TravelerDataFrame_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TravelerDataFrame_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame = { + "TravelerDataFrame", + "TravelerDataFrame", + &asn_OP_SEQUENCE, + asn_DEF_TravelerDataFrame_tags_1, + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TravelerDataFrame_1, + 13, /* Elements count */ + &asn_SPC_TravelerDataFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c b/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c new file mode 100644 index 000000000..9985c3a22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TravelerDataFrameList.h" + +#include "TravelerDataFrame.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerDataFrame, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrameList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1 = { + sizeof(struct TravelerDataFrameList), + offsetof(struct TravelerDataFrameList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList = { + "TravelerDataFrameList", + "TravelerDataFrameList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TravelerDataFrameList_tags_1, + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrameList_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TravelerDataFrameList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TravelerDataFrameList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TravelerDataFrameList_1, + 1, /* Single element */ + &asn_SPC_TravelerDataFrameList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c b/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c new file mode 100644 index 000000000..a1536682f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TravelerInfoType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "advisory" }, + { 2, 11, "roadSignage" }, + { 3, 17, "commercialSignage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { + 1, /* advisory(1) */ + 3, /* commercialSignage(3) */ + 2, /* roadSignage(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { + asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { + "TravelerInfoType", + "TravelerInfoType", + &asn_OP_NativeEnumerated, + asn_DEF_TravelerInfoType_tags_1, + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + asn_DEF_TravelerInfoType_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TravelerInfoType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TravelerInfoType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/TravelerInformation.c b/src/tmx/Asn_J2735/src/2020/TravelerInformation.c new file mode 100644 index 000000000..6857f27ec --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/TravelerInformation.c @@ -0,0 +1,262 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "TravelerInformation.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_TravelerInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct TravelerInformation__regional), + offsetof(struct TravelerInformation__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 3, offsetof(struct TravelerInformation, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct TravelerInformation, packetID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UniqueMSGID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "packetID" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, urlB), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Base, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "urlB" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerDataFrameList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataFrames" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* packetID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* urlB */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { + sizeof(struct TravelerInformation), + offsetof(struct TravelerInformation, _asn_ctx), + asn_MAP_TravelerInformation_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TravelerInformation_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { + "TravelerInformation", + "TravelerInformation", + &asn_OP_SEQUENCE, + asn_DEF_TravelerInformation_tags_1, + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + asn_DEF_TravelerInformation_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TravelerInformation_1, + 6, /* Elements count */ + &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/URL-Base.c b/src/tmx/Asn_J2735/src/2020/URL-Base.c new file mode 100644 index 000000000..dd236090f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/URL-Base.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "URL-Base.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Base_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 45UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Base_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..45)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_URL_Base_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Base = { + "URL-Base", + "URL-Base", + &asn_OP_IA5String, + asn_DEF_URL_Base_tags_1, + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + asn_DEF_URL_Base_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Base_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Base_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Base_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/URL-Link.c b/src/tmx/Asn_J2735/src/2020/URL-Link.c new file mode 100644 index 000000000..a35ddeefd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/URL-Link.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "URL-Link.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Link_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Link_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Link = { + "URL-Link", + "URL-Link", + &asn_OP_IA5String, + asn_DEF_URL_Link_tags_1, + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + asn_DEF_URL_Link_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Link_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Link_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Link_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/URL-Short.c b/src/tmx/Asn_J2735/src/2020/URL-Short.c new file mode 100644 index 000000000..6476dcc40 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/URL-Short.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "URL-Short.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Short_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 15UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Short_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..15)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_URL_Short_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Short = { + "URL-Short", + "URL-Short", + &asn_OP_IA5String, + asn_DEF_URL_Short_tags_1, + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + asn_DEF_URL_Short_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Short_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Short_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Short_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c b/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c new file mode 100644 index 000000000..a9eab30bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "UniqueMSGID.h" + +int +UniqueMSGID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 9 /* (SIZE(9..9)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { + "UniqueMSGID", + "UniqueMSGID", + &asn_OP_OCTET_STRING, + asn_DEF_UniqueMSGID_tags_1, + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + asn_DEF_UniqueMSGID_tags_1, /* Same as above */ + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_UniqueMSGID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_UniqueMSGID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + UniqueMSGID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c new file mode 100644 index 000000000..4fff71189 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "UserSizeAndBehaviour.h" + +int +UserSizeAndBehaviour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { + "UserSizeAndBehaviour", + "UserSizeAndBehaviour", + &asn_OP_BIT_STRING, + asn_DEF_UserSizeAndBehaviour_tags_1, + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_UserSizeAndBehaviour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_UserSizeAndBehaviour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + UserSizeAndBehaviour_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VINstring.c b/src/tmx/Asn_J2735/src/2020/VINstring.c new file mode 100644 index 000000000..1a0ecd229 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VINstring.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VINstring.h" + +int +VINstring_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 17UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VINstring_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..17)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VINstring_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VINstring = { + "VINstring", + "VINstring", + &asn_OP_OCTET_STRING, + asn_DEF_VINstring_tags_1, + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + asn_DEF_VINstring_tags_1, /* Same as above */ + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VINstring_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VINstring_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VINstring_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ValidRegion.c b/src/tmx/Asn_J2735/src/2020/ValidRegion.c new file mode 100644 index 000000000..314d2ab93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ValidRegion.c @@ -0,0 +1,207 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ValidRegion.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_area_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_area_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_area_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ShapePointSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "shapePointSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionPointSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regionPointSet" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ +}; +static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { + sizeof(struct ValidRegion__area), + offsetof(struct ValidRegion__area, _asn_ctx), + offsetof(struct ValidRegion__area, present), + sizeof(((struct ValidRegion__area *)0)->present), + asn_MAP_area_tag2el_4, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_area_4 = { + "area", + "area", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_area_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_area_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_area_4, + 3, /* Elements count */ + &asn_SPC_area_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_area_4, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "area" + }, +}; +static const int asn_MAP_ValidRegion_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { + sizeof(struct ValidRegion), + offsetof(struct ValidRegion, _asn_ctx), + asn_MAP_ValidRegion_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ValidRegion_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ValidRegion = { + "ValidRegion", + "ValidRegion", + &asn_OP_SEQUENCE, + asn_DEF_ValidRegion_tags_1, + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + asn_DEF_ValidRegion_tags_1, /* Same as above */ + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ValidRegion_1, + 3, /* Elements count */ + &asn_SPC_ValidRegion_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleClassification.c b/src/tmx/Asn_J2735/src/2020/VehicleClassification.c new file mode 100644 index 000000000..e0875ef5e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleClassification.c @@ -0,0 +1,316 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleClassification.h" + +#include "RegionalExtension.h" +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct VehicleClassification__regional), + offsetof(struct VehicleClassification__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleClassification_1[] = { + { ATF_POINTER, 9, offsetof(struct VehicleClassification, keyType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "keyType" + }, + { ATF_POINTER, 8, offsetof(struct VehicleClassification, role), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 7, offsetof(struct VehicleClassification, iso3883), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 6, offsetof(struct VehicleClassification, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 5, offsetof(struct VehicleClassification, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleClassification, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 3, offsetof(struct VehicleClassification, responderType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 2, offsetof(struct VehicleClassification, fuelType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FuelType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "fuelType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleClassification, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_VehicleClassification_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_VehicleClassification_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleClassification_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* fuelType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1 = { + sizeof(struct VehicleClassification), + offsetof(struct VehicleClassification, _asn_ctx), + asn_MAP_VehicleClassification_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_VehicleClassification_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleClassification = { + "VehicleClassification", + "VehicleClassification", + &asn_OP_SEQUENCE, + asn_DEF_VehicleClassification_tags_1, + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + asn_DEF_VehicleClassification_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleClassification_1, + 9, /* Elements count */ + &asn_SPC_VehicleClassification_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleData.c b/src/tmx/Asn_J2735/src/2020/VehicleData.c new file mode 100644 index 000000000..78a8c77e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleData.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleData.h" + +#include "BumperHeights.h" +asn_TYPE_member_t asn_MBR_VehicleData_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct VehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_POINTER, 2, offsetof(struct VehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 1, offsetof(struct VehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, +}; +static const int asn_MAP_VehicleData_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* trailerWeight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1 = { + sizeof(struct VehicleData), + offsetof(struct VehicleData, _asn_ctx), + asn_MAP_VehicleData_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleData = { + "VehicleData", + "VehicleData", + &asn_OP_SEQUENCE, + asn_DEF_VehicleData_tags_1, + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + asn_DEF_VehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleData_1, + 4, /* Elements count */ + &asn_SPC_VehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c b/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c new file mode 100644 index 000000000..d7298f996 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleEventFlags.h" + +int +VehicleEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 13UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 13, 13 } /* (SIZE(13..13,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags = { + "VehicleEventFlags", + "VehicleEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_VehicleEventFlags_tags_1, + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + asn_DEF_VehicleEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleEventFlags_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c new file mode 100644 index 000000000..54edad706 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c @@ -0,0 +1,136 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { + { 9217, 12, "all-vehicles" }, + { 9218, 8, "bicycles" }, + { 9219, 11, "motorcycles" }, + { 9220, 4, "cars" }, + { 9221, 14, "light-vehicles" }, + { 9222, 23, "cars-and-light-vehicles" }, + { 9223, 18, "cars-with-trailers" }, + { 9224, 31, "cars-with-recreational-trailers" }, + { 9225, 22, "vehicles-with-trailers" }, + { 9226, 14, "heavy-vehicles" }, + { 9227, 6, "trucks" }, + { 9228, 5, "buses" }, + { 9229, 17, "articulated-buses" }, + { 9230, 12, "school-buses" }, + { 9231, 27, "vehicles-with-semi-trailers" }, + { 9232, 29, "vehicles-with-double-trailers" }, + { 9233, 21, "high-profile-vehicles" }, + { 9234, 13, "wide-vehicles" }, + { 9235, 13, "long-vehicles" }, + { 9236, 15, "hazardous-loads" }, + { 9237, 17, "exceptional-loads" }, + { 9238, 14, "abnormal-loads" }, + { 9239, 7, "convoys" }, + { 9240, 20, "maintenance-vehicles" }, + { 9241, 17, "delivery-vehicles" }, + { 9242, 42, "vehicles-with-even-numbered-license-plates" }, + { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, + { 9244, 29, "vehicles-with-parking-permits" }, + { 9245, 34, "vehicles-with-catalytic-converters" }, + { 9246, 37, "vehicles-without-catalytic-converters" }, + { 9247, 20, "gas-powered-vehicles" }, + { 9248, 23, "diesel-powered-vehicles" }, + { 9249, 12, "lPG-vehicles" }, + { 9250, 16, "military-convoys" }, + { 9251, 17, "military-vehicles" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { + 21, /* abnormal-loads(9238) */ + 0, /* all-vehicles(9217) */ + 12, /* articulated-buses(9229) */ + 1, /* bicycles(9218) */ + 11, /* buses(9228) */ + 3, /* cars(9220) */ + 5, /* cars-and-light-vehicles(9222) */ + 7, /* cars-with-recreational-trailers(9224) */ + 6, /* cars-with-trailers(9223) */ + 22, /* convoys(9239) */ + 24, /* delivery-vehicles(9241) */ + 31, /* diesel-powered-vehicles(9248) */ + 20, /* exceptional-loads(9237) */ + 30, /* gas-powered-vehicles(9247) */ + 19, /* hazardous-loads(9236) */ + 9, /* heavy-vehicles(9226) */ + 16, /* high-profile-vehicles(9233) */ + 32, /* lPG-vehicles(9249) */ + 4, /* light-vehicles(9221) */ + 18, /* long-vehicles(9235) */ + 23, /* maintenance-vehicles(9240) */ + 33, /* military-convoys(9250) */ + 34, /* military-vehicles(9251) */ + 2, /* motorcycles(9219) */ + 13, /* school-buses(9230) */ + 10, /* trucks(9227) */ + 28, /* vehicles-with-catalytic-converters(9245) */ + 15, /* vehicles-with-double-trailers(9232) */ + 25, /* vehicles-with-even-numbered-license-plates(9242) */ + 26, /* vehicles-with-odd-numbered-license-plates(9243) */ + 27, /* vehicles-with-parking-permits(9244) */ + 14, /* vehicles-with-semi-trailers(9231) */ + 8, /* vehicles-with-trailers(9225) */ + 29, /* vehicles-without-catalytic-converters(9246) */ + 17 /* wide-vehicles(9234) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { + asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 35, /* Number of elements in the maps */ + 36, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { + "VehicleGroupAffected", + "VehicleGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleGroupAffected_tags_1, + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleHeight.c b/src/tmx/Asn_J2735/src/2020/VehicleHeight.c new file mode 100644 index 000000000..a3beef2a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleHeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleHeight.h" + +int +VehicleHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { + "VehicleHeight", + "VehicleHeight", + &asn_OP_NativeInteger, + asn_DEF_VehicleHeight_tags_1, + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + asn_DEF_VehicleHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleHeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleHeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleHeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleID.c b/src/tmx/Asn_J2735/src/2020/VehicleID.c new file mode 100644 index 000000000..20423f2b0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleID.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleID.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.entityID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "entityID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.stationID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* entityID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* stationID */ +}; +asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1 = { + sizeof(struct VehicleID), + offsetof(struct VehicleID, _asn_ctx), + offsetof(struct VehicleID, present), + sizeof(((struct VehicleID *)0)->present), + asn_MAP_VehicleID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleID = { + "VehicleID", + "VehicleID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_VehicleID_1, + 2, /* Elements count */ + &asn_SPC_VehicleID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleIdent.c b/src/tmx/Asn_J2735/src/2020/VehicleIdent.c new file mode 100644 index 000000000..a53b1db48 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleIdent.c @@ -0,0 +1,314 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleIdent.h" + +#include "VehicleID.h" +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int +memb_ownerCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 32UL) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_vehicleClass_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_ownerCode_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rEquip" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ +}; +static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { + sizeof(struct VehicleIdent__vehicleClass), + offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), + offsetof(struct VehicleIdent__vehicleClass, present), + sizeof(((struct VehicleIdent__vehicleClass *)0)->present), + asn_MAP_vehicleClass_tag2el_7, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { + "vehicleClass", + "vehicleClass", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_vehicleClass_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_vehicleClass_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_vehicleClass_7, + 3, /* Elements count */ + &asn_SPC_vehicleClass_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { + { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VINstring, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vin" + }, + { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_ownerCode_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_ownerCode_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_ownerCode_constraint_1 + }, + 0, 0, /* No default value */ + "ownerCode" + }, + { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_vehicleClass_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleClass" + }, +}; +static const int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { + sizeof(struct VehicleIdent), + offsetof(struct VehicleIdent, _asn_ctx), + asn_MAP_VehicleIdent_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_VehicleIdent_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { + "VehicleIdent", + "VehicleIdent", + &asn_OP_SEQUENCE, + asn_DEF_VehicleIdent_tags_1, + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + asn_DEF_VehicleIdent_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleIdent_1, + 6, /* Elements count */ + &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleLength.c b/src/tmx/Asn_J2735/src/2020/VehicleLength.c new file mode 100644 index 000000000..777266c7c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleLength.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleLength.h" + +int +VehicleLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleLength = { + "VehicleLength", + "VehicleLength", + &asn_OP_NativeInteger, + asn_DEF_VehicleLength_tags_1, + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + asn_DEF_VehicleLength_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleLength_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleLength_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleLength_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleMass.c b/src/tmx/Asn_J2735/src/2020/VehicleMass.c new file mode 100644 index 000000000..de3c08b0a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleMass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleMass.h" + +int +VehicleMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleMass = { + "VehicleMass", + "VehicleMass", + &asn_OP_NativeInteger, + asn_DEF_VehicleMass_tags_1, + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + asn_DEF_VehicleMass_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleMass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleMass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleMass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c b/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c new file mode 100644 index 000000000..b6fc9e6a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c @@ -0,0 +1,124 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleSafetyExtensions.h" + +#include "PathHistory.h" +#include "PathPrediction.h" +asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtensions, events), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtensions, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtensions, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtensions, lights), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lights" + }, +}; +static const int asn_MAP_VehicleSafetyExtensions_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleSafetyExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* lights */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1 = { + sizeof(struct VehicleSafetyExtensions), + offsetof(struct VehicleSafetyExtensions, _asn_ctx), + asn_MAP_VehicleSafetyExtensions_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleSafetyExtensions_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions = { + "VehicleSafetyExtensions", + "VehicleSafetyExtensions", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSafetyExtensions_tags_1, + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + asn_DEF_VehicleSafetyExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleSafetyExtensions_1, + 4, /* Elements count */ + &asn_SPC_VehicleSafetyExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleSize.c b/src/tmx/Asn_J2735/src/2020/VehicleSize.c new file mode 100644 index 000000000..d1c5b809b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleSize.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleSize.h" + +asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "length" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { + sizeof(struct VehicleSize), + offsetof(struct VehicleSize, _asn_ctx), + asn_MAP_VehicleSize_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSize = { + "VehicleSize", + "VehicleSize", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSize_tags_1, + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + asn_DEF_VehicleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleSize_1, + 2, /* Elements count */ + &asn_SPC_VehicleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatus.c b/src/tmx/Asn_J2735/src/2020/VehicleStatus.c new file mode 100644 index 000000000..8a0330855 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleStatus.c @@ -0,0 +1,1061 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleStatus.h" + +#include "WiperSet.h" +#include "BrakeSystemStatus.h" +#include "FullPositionVector.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "VehicleIdent.h" +#include "J1939data.h" +#include "AccelerationSet4Way.h" +#include "ConfidenceSet.h" +static asn_TYPE_member_t asn_MBR_steering_12[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleRateOfChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rate" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivingWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheels" + }, +}; +static const int asn_MAP_steering_oms_12[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_steering_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_steering_tag2el_12[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_12 = { + sizeof(struct VehicleStatus__steering), + offsetof(struct VehicleStatus__steering, _asn_ctx), + asn_MAP_steering_tag2el_12, + 4, /* Count of tags in the map */ + asn_MAP_steering_oms_12, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_steering_12 = { + "steering", + "steering", + &asn_OP_SEQUENCE, + asn_DEF_steering_tags_12, + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]) - 1, /* 1 */ + asn_DEF_steering_tags_12, /* Same as above */ + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_steering_12, + 4, /* Elements count */ + &asn_SPC_steering_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_accelSets_17[] = { + { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vertAccelThres" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yawRateCon" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hozAccelCon" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidenceSet" + }, +}; +static const int asn_MAP_accelSets_oms_17[] = { 0, 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_accelSets_tags_17[] = { + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_17[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_17 = { + sizeof(struct VehicleStatus__accelSets), + offsetof(struct VehicleStatus__accelSets, _asn_ctx), + asn_MAP_accelSets_tag2el_17, + 5, /* Count of tags in the map */ + asn_MAP_accelSets_oms_17, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_accelSets_17 = { + "accelSets", + "accelSets", + &asn_OP_SEQUENCE, + asn_DEF_accelSets_tags_17, + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]) - 1, /* 1 */ + asn_DEF_accelSets_tags_17, /* Same as above */ + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_accelSets_17, + 5, /* Elements count */ + &asn_SPC_accelSets_specs_17 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_object_23[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dateTime" + }, +}; +static const ber_tlv_tag_t asn_DEF_object_tags_23[] = { + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_object_tag2el_23[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_object_specs_23 = { + sizeof(struct VehicleStatus__object), + offsetof(struct VehicleStatus__object, _asn_ctx), + asn_MAP_object_tag2el_23, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_object_23 = { + "object", + "object", + &asn_OP_SEQUENCE, + asn_DEF_object_tags_23, + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]) - 1, /* 1 */ + asn_DEF_object_tags_23, /* Same as above */ + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_object_23, + 3, /* Elements count */ + &asn_SPC_object_specs_23 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_vehicleData_31[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, +}; +static const ber_tlv_tag_t asn_DEF_vehicleData_tags_31[] = { + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_31[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_31 = { + sizeof(struct VehicleStatus__vehicleData), + offsetof(struct VehicleStatus__vehicleData, _asn_ctx), + asn_MAP_vehicleData_tag2el_31, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleData_31 = { + "vehicleData", + "vehicleData", + &asn_OP_SEQUENCE, + asn_DEF_vehicleData_tags_31, + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]) - 1, /* 1 */ + asn_DEF_vehicleData_tags_31, /* Same as above */ + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_vehicleData_31, + 5, /* Elements count */ + &asn_SPC_vehicleData_specs_31 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_weatherReport_39[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "friction" + }, +}; +static const int asn_MAP_weatherReport_oms_39[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_weatherReport_tags_39[] = { + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_39[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_39 = { + sizeof(struct VehicleStatus__weatherReport), + offsetof(struct VehicleStatus__weatherReport, _asn_ctx), + asn_MAP_weatherReport_tag2el_39, + 5, /* Count of tags in the map */ + asn_MAP_weatherReport_oms_39, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_weatherReport_39 = { + "weatherReport", + "weatherReport", + &asn_OP_SEQUENCE, + asn_DEF_weatherReport_tags_39, + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]) - 1, /* 1 */ + asn_DEF_weatherReport_tags_39, /* Same as above */ + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_weatherReport_39, + 5, /* Elements count */ + &asn_SPC_weatherReport_specs_39 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { + { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lights" + }, + { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lightBar" + }, + { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wipers" + }, + { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakeStatus" + }, + { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakePressure" + }, + { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadFriction" + }, + { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SunSensor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sunData" + }, + { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RainSensor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainData" + }, + { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airPres" + }, + { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_steering_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steering" + }, + { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + 0, + &asn_DEF_accelSets_17, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSets" + }, + { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + 0, + &asn_DEF_object_23, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "object" + }, + { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "fullPos" + }, + { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottlePosition, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttlePos" + }, + { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedHeadC" + }, + { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedC" + }, + { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + 0, + &asn_DEF_vehicleData_31, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleIdent" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_J1939data, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "j1939data" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + 0, + &asn_DEF_weatherReport_39, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus, gnssStatus), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "gnssStatus" + }, +}; +static const int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gnssStatus */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { + sizeof(struct VehicleStatus), + offsetof(struct VehicleStatus, _asn_ctx), + asn_MAP_VehicleStatus_tag2el_1, + 22, /* Count of tags in the map */ + asn_MAP_VehicleStatus_oms_1, /* Optional members */ + 22, 0, /* Root/Additions */ + 22, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { + "VehicleStatus", + "VehicleStatus", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatus_tags_1, + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleStatus_1, + 22, /* Elements count */ + &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c new file mode 100644 index 000000000..04d278c8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c @@ -0,0 +1,124 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleStatusDeviceTypeTag.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "lights" }, + { 2, 6, "wipers" }, + { 3, 6, "brakes" }, + { 4, 4, "stab" }, + { 5, 4, "trac" }, + { 6, 3, "abs" }, + { 7, 4, "sunS" }, + { 8, 5, "rainS" }, + { 9, 7, "airTemp" }, + { 10, 8, "steering" }, + { 11, 14, "vertAccelThres" }, + { 12, 9, "vertAccel" }, + { 13, 12, "hozAccelLong" }, + { 14, 11, "hozAccelLat" }, + { 15, 11, "hozAccelCon" }, + { 16, 9, "accel4way" }, + { 17, 13, "confidenceSet" }, + { 18, 6, "obDist" }, + { 19, 8, "obDirect" }, + { 20, 3, "yaw" }, + { 21, 10, "yawRateCon" }, + { 22, 8, "dateTime" }, + { 23, 7, "fullPos" }, + { 24, 10, "position2D" }, + { 25, 10, "position3D" }, + { 26, 7, "vehicle" }, + { 27, 10, "speedHeadC" }, + { 28, 6, "speedC" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { + 6, /* abs(6) */ + 16, /* accel4way(16) */ + 9, /* airTemp(9) */ + 3, /* brakes(3) */ + 17, /* confidenceSet(17) */ + 22, /* dateTime(22) */ + 23, /* fullPos(23) */ + 15, /* hozAccelCon(15) */ + 14, /* hozAccelLat(14) */ + 13, /* hozAccelLong(13) */ + 1, /* lights(1) */ + 19, /* obDirect(19) */ + 18, /* obDist(18) */ + 24, /* position2D(24) */ + 25, /* position3D(25) */ + 8, /* rainS(8) */ + 28, /* speedC(28) */ + 27, /* speedHeadC(27) */ + 4, /* stab(4) */ + 10, /* steering(10) */ + 7, /* sunS(7) */ + 5, /* trac(5) */ + 0, /* unknown(0) */ + 26, /* vehicle(26) */ + 12, /* vertAccel(12) */ + 11, /* vertAccelThres(11) */ + 2, /* wipers(2) */ + 20, /* yaw(20) */ + 21 /* yawRateCon(21) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { + asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ + 29, /* Number of elements in the maps */ + 30, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { + "VehicleStatusDeviceTypeTag", + "VehicleStatusDeviceTypeTag", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleStatusDeviceTypeTag_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c new file mode 100644 index 000000000..e58bd0630 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c @@ -0,0 +1,251 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleStatusRequest.h" + +static int +memb_subType_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnLessThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnMoreThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_subType_constr_3 CC_NOTUSED = { + { 1, 1 } /* (1..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_subType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusDeviceTypeTag, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_subType_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_subType_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_subType_constraint_1 + }, + 0, 0, /* No default value */ + "subType" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sendOnLessThenValue_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sendOnLessThenValue_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sendOnLessThenValue_constraint_1 + }, + 0, 0, /* No default value */ + "sendOnLessThenValue" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sendOnMoreThenValue_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sendOnMoreThenValue_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sendOnMoreThenValue_constraint_1 + }, + 0, 0, /* No default value */ + "sendOnMoreThenValue" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sendAll" + }, +}; +static const int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { + sizeof(struct VehicleStatusRequest), + offsetof(struct VehicleStatusRequest, _asn_ctx), + asn_MAP_VehicleStatusRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { + "VehicleStatusRequest", + "VehicleStatusRequest", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatusRequest_tags_1, + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleStatusRequest_1, + 5, /* Elements count */ + &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c new file mode 100644 index 000000000..b2c10f835 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleStatusRequestList.h" + +#include "VehicleStatusRequest.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleStatusRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1 = { + sizeof(struct VehicleStatusRequestList), + offsetof(struct VehicleStatusRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList = { + "VehicleStatusRequestList", + "VehicleStatusRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleStatusRequestList_tags_1, + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleStatusRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleStatusRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_VehicleStatusRequestList_1, + 1, /* Single element */ + &asn_SPC_VehicleStatusRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c new file mode 100644 index 000000000..592275baf --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleToLanePosition.h" + +asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneID" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { + sizeof(struct VehicleToLanePosition), + offsetof(struct VehicleToLanePosition, _asn_ctx), + asn_MAP_VehicleToLanePosition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { + "VehicleToLanePosition", + "VehicleToLanePosition", + &asn_OP_SEQUENCE, + asn_DEF_VehicleToLanePosition_tags_1, + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleToLanePosition_1, + 2, /* Elements count */ + &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c new file mode 100644 index 000000000..36d77b44d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleToLanePositionList.h" + +#include "VehicleToLanePosition.h" +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleToLanePosition, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { + sizeof(struct VehicleToLanePositionList), + offsetof(struct VehicleToLanePositionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { + "VehicleToLanePositionList", + "VehicleToLanePositionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleToLanePositionList_tags_1, + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleToLanePositionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleToLanePositionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_VehicleToLanePositionList_1, + 1, /* Single element */ + &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleType.c b/src/tmx/Asn_J2735/src/2020/VehicleType.c new file mode 100644 index 000000000..a355e119a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleType.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 7, "unknown" }, + { 2, 7, "special" }, + { 3, 4, "moto" }, + { 4, 3, "car" }, + { 5, 8, "carOther" }, + { 6, 3, "bus" }, + { 7, 8, "axleCnt2" }, + { 8, 8, "axleCnt3" }, + { 9, 8, "axleCnt4" }, + { 10, 15, "axleCnt4Trailer" }, + { 11, 15, "axleCnt5Trailer" }, + { 12, 15, "axleCnt6Trailer" }, + { 13, 20, "axleCnt5MultiTrailer" }, + { 14, 20, "axleCnt6MultiTrailer" }, + { 15, 20, "axleCnt7MultiTrailer" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleType_enum2value_1[] = { + 7, /* axleCnt2(7) */ + 8, /* axleCnt3(8) */ + 9, /* axleCnt4(9) */ + 10, /* axleCnt4Trailer(10) */ + 13, /* axleCnt5MultiTrailer(13) */ + 11, /* axleCnt5Trailer(11) */ + 14, /* axleCnt6MultiTrailer(14) */ + 12, /* axleCnt6Trailer(12) */ + 15, /* axleCnt7MultiTrailer(15) */ + 6, /* bus(6) */ + 4, /* car(4) */ + 5, /* carOther(5) */ + 3, /* moto(3) */ + 0, /* none(0) */ + 2, /* special(2) */ + 1 /* unknown(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { + asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 17, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleType = { + "VehicleType", + "VehicleType", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleType_tags_1, + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + asn_DEF_VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VehicleWidth.c b/src/tmx/Asn_J2735/src/2020/VehicleWidth.c new file mode 100644 index 000000000..0d5a2b427 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VehicleWidth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VehicleWidth.h" + +int +VehicleWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { + "VehicleWidth", + "VehicleWidth", + &asn_OP_NativeInteger, + asn_DEF_VehicleWidth_tags_1, + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + asn_DEF_VehicleWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleWidth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleWidth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleWidth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Velocity.c b/src/tmx/Asn_J2735/src/2020/Velocity.c new file mode 100644 index 000000000..b7d35f73d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Velocity.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Velocity.h" + +int +Velocity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Velocity_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Velocity_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Velocity = { + "Velocity", + "Velocity", + &asn_OP_NativeInteger, + asn_DEF_Velocity_tags_1, + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + asn_DEF_Velocity_tags_1, /* Same as above */ + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Velocity_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Velocity_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Velocity_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c new file mode 100644 index 000000000..e851a8c09 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B07.h" + +int +VertOffset_B07_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-64..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, -64, 63 } /* (-64..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B07 = { + "VertOffset-B07", + "VertOffset-B07", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B07_tags_1, + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B07_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B07_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B07_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B07_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c new file mode 100644 index 000000000..19863bbbb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B08.h" + +int +VertOffset_B08_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B08 = { + "VertOffset-B08", + "VertOffset-B08", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B08_tags_1, + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B08_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B08_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B08_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B08_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c new file mode 100644 index 000000000..cae6157c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B09.h" + +int +VertOffset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B09 = { + "VertOffset-B09", + "VertOffset-B09", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B09_tags_1, + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B09_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c new file mode 100644 index 000000000..65606511b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B10.h" + +int +VertOffset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512L && value <= 511L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B10 = { + "VertOffset-B10", + "VertOffset-B10", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B10_tags_1, + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B10_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c new file mode 100644 index 000000000..87702545b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B11.h" + +int +VertOffset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B11 = { + "VertOffset-B11", + "VertOffset-B11", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B11_tags_1, + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B11_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c new file mode 100644 index 000000000..e6a132d23 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VertOffset-B12.h" + +int +VertOffset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B12 = { + "VertOffset-B12", + "VertOffset-B12", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B12_tags_1, + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c new file mode 100644 index 000000000..b414f4afe --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VerticalAcceleration.h" + +int +VerticalAcceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { + "VerticalAcceleration", + "VerticalAcceleration", + &asn_OP_NativeInteger, + asn_DEF_VerticalAcceleration_tags_1, + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalAcceleration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalAcceleration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VerticalAcceleration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c new file mode 100644 index 000000000..1f4dd6de8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VerticalAccelerationThreshold.h" + +int +VerticalAccelerationThreshold_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { + "VerticalAccelerationThreshold", + "VerticalAccelerationThreshold", + &asn_OP_BIT_STRING, + asn_DEF_VerticalAccelerationThreshold_tags_1, + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalAccelerationThreshold_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalAccelerationThreshold_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VerticalAccelerationThreshold_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/VerticalOffset.c b/src/tmx/Asn_J2735/src/2020/VerticalOffset.c new file mode 100644 index 000000000..38cc90ad6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/VerticalOffset.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "VerticalOffset.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_VerticalOffset_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset1" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset2" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset3" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset4" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset5" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset6" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.elevation), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_VerticalOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VerticalOffset_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offset2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offset3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* offset4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* offset5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* offset6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_VerticalOffset_specs_1 = { + sizeof(struct VerticalOffset), + offsetof(struct VerticalOffset, _asn_ctx), + offsetof(struct VerticalOffset, present), + sizeof(((struct VerticalOffset *)0)->present), + asn_MAP_VerticalOffset_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VerticalOffset = { + "VerticalOffset", + "VerticalOffset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_VerticalOffset_1, + 8, /* Elements count */ + &asn_SPC_VerticalOffset_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c b/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c new file mode 100644 index 000000000..fba8670f9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WaitOnStopline.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { + "WaitOnStopline", + "WaitOnStopline", + &asn_OP_BOOLEAN, + asn_DEF_WaitOnStopline_tags_1, + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + asn_DEF_WaitOnStopline_tags_1, /* Same as above */ + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WeatherProbe.c b/src/tmx/Asn_J2735/src/2020/WeatherProbe.c new file mode 100644 index 000000000..910c3a3ee --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WeatherProbe.c @@ -0,0 +1,105 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WeatherProbe.h" + +#include "WiperSet.h" +asn_TYPE_member_t asn_MBR_WeatherProbe_1[] = { + { ATF_POINTER, 3, offsetof(struct WeatherProbe, airTemp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 2, offsetof(struct WeatherProbe, airPressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airPressure" + }, + { ATF_POINTER, 1, offsetof(struct WeatherProbe, rainRates), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRates" + }, +}; +static const int asn_MAP_WeatherProbe_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_WeatherProbe_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherProbe_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* airPressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rainRates */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1 = { + sizeof(struct WeatherProbe), + offsetof(struct WeatherProbe, _asn_ctx), + asn_MAP_WeatherProbe_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_WeatherProbe_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherProbe = { + "WeatherProbe", + "WeatherProbe", + &asn_OP_SEQUENCE, + asn_DEF_WeatherProbe_tags_1, + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + asn_DEF_WeatherProbe_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WeatherProbe_1, + 3, /* Elements count */ + &asn_SPC_WeatherProbe_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WeatherReport.c b/src/tmx/Asn_J2735/src/2020/WeatherReport.c new file mode 100644 index 000000000..0a4410b22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WeatherReport.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WeatherReport.h" + +asn_TYPE_member_t asn_MBR_WeatherReport_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WeatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 5, offsetof(struct WeatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 4, offsetof(struct WeatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 3, offsetof(struct WeatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 2, offsetof(struct WeatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "friction" + }, + { ATF_POINTER, 1, offsetof(struct WeatherReport, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadFriction" + }, +}; +static const int asn_MAP_WeatherReport_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_WeatherReport_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherReport_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* friction */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* roadFriction */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1 = { + sizeof(struct WeatherReport), + offsetof(struct WeatherReport, _asn_ctx), + asn_MAP_WeatherReport_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_WeatherReport_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherReport = { + "WeatherReport", + "WeatherReport", + &asn_OP_SEQUENCE, + asn_DEF_WeatherReport_tags_1, + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + asn_DEF_WeatherReport_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WeatherReport_1, + 6, /* Elements count */ + &asn_SPC_WeatherReport_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c new file mode 100644 index 000000000..a30894ab9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WheelEndElectFault.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WheelEndElectFault_value2enum_1[] = { + { 0, 4, "isOk" }, + { 1, 12, "isNotDefined" }, + { 2, 7, "isError" }, + { 3, 14, "isNotSupported" } +}; +static const unsigned int asn_MAP_WheelEndElectFault_enum2value_1[] = { + 2, /* isError(2) */ + 1, /* isNotDefined(1) */ + 3, /* isNotSupported(3) */ + 0 /* isOk(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1 = { + asn_MAP_WheelEndElectFault_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelEndElectFault_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { + "WheelEndElectFault", + "WheelEndElectFault", + &asn_OP_NativeEnumerated, + asn_DEF_WheelEndElectFault_tags_1, + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WheelEndElectFault_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WheelEndElectFault_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelEndElectFault_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c new file mode 100644 index 000000000..d634c0714 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WheelSensorStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { + { 0, 3, "off" }, + { 1, 2, "on" }, + { 2, 10, "notDefined" }, + { 3, 12, "notSupported" } +}; +static const unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { + 2, /* notDefined(2) */ + 3, /* notSupported(3) */ + 0, /* off(0) */ + 1 /* on(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { + asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { + "WheelSensorStatus", + "WheelSensorStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WheelSensorStatus_tags_1, + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WheelSensorStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WheelSensorStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WiperRate.c b/src/tmx/Asn_J2735/src/2020/WiperRate.c new file mode 100644 index 000000000..bc82976fb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WiperRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WiperRate.h" + +int +WiperRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WiperRate_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WiperRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperRate = { + "WiperRate", + "WiperRate", + &asn_OP_NativeInteger, + asn_DEF_WiperRate_tags_1, + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + asn_DEF_WiperRate_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WiperRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WiperRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + WiperRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WiperSet.c b/src/tmx/Asn_J2735/src/2020/WiperSet.c new file mode 100644 index 000000000..7692e2b9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WiperSet.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WiperSet.h" + +asn_TYPE_member_t asn_MBR_WiperSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, statusFront), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "statusFront" + }, + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, rateFront), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rateFront" + }, + { ATF_POINTER, 2, offsetof(struct WiperSet, statusRear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "statusRear" + }, + { ATF_POINTER, 1, offsetof(struct WiperSet, rateRear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rateRear" + }, +}; +static const int asn_MAP_WiperSet_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_WiperSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WiperSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1 = { + sizeof(struct WiperSet), + offsetof(struct WiperSet, _asn_ctx), + asn_MAP_WiperSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_WiperSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WiperSet = { + "WiperSet", + "WiperSet", + &asn_OP_SEQUENCE, + asn_DEF_WiperSet_tags_1, + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + asn_DEF_WiperSet_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WiperSet_1, + 4, /* Elements count */ + &asn_SPC_WiperSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WiperStatus.c b/src/tmx/Asn_J2735/src/2020/WiperStatus.c new file mode 100644 index 000000000..9f0577217 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WiperStatus.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WiperStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WiperStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WiperStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WiperStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 12, "intermittent" }, + { 3, 3, "low" }, + { 4, 4, "high" }, + { 5, 11, "washerInUse" }, + { 6, 16, "automaticPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_WiperStatus_enum2value_1[] = { + 6, /* automaticPresent(6) */ + 4, /* high(4) */ + 2, /* intermittent(2) */ + 3, /* low(3) */ + 1, /* off(1) */ + 0, /* unavailable(0) */ + 5 /* washerInUse(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1 = { + asn_MAP_WiperStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WiperStatus_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatus = { + "WiperStatus", + "WiperStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WiperStatus_tags_1, + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + asn_DEF_WiperStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WiperStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WiperStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WiperStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/WorkZone.c b/src/tmx/Asn_J2735/src/2020/WorkZone.c new file mode 100644 index 000000000..48d5b00dd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/WorkZone.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "WorkZone.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WorkZone_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WorkZone_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct WorkZone__Member__item), + offsetof(struct WorkZone__Member__item, _asn_ctx), + offsetof(struct WorkZone__Member__item, present), + sizeof(((struct WorkZone__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct WorkZone__Member), + offsetof(struct WorkZone__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_WorkZone_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { + sizeof(struct WorkZone), + offsetof(struct WorkZone, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_WorkZone = { + "WorkZone", + "WorkZone", + &asn_OP_SEQUENCE_OF, + asn_DEF_WorkZone_tags_1, + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + asn_DEF_WorkZone_tags_1, /* Same as above */ + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WorkZone_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WorkZone_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_WorkZone_1, + 1, /* Single element */ + &asn_SPC_WorkZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/YawRate.c b/src/tmx/Asn_J2735/src/2020/YawRate.c new file mode 100644 index 000000000..8d422caa9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/YawRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "YawRate.h" + +int +YawRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_YawRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_YawRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRate = { + "YawRate", + "YawRate", + &asn_OP_NativeInteger, + asn_DEF_YawRate_tags_1, + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + asn_DEF_YawRate_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_YawRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_YawRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + YawRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c b/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c new file mode 100644 index 000000000..4cc4b7faf --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "YawRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { + asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { + "YawRateConfidence", + "YawRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_YawRateConfidence_tags_1, + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_YawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_YawRateConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_YawRateConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Year.c b/src/tmx/Asn_J2735/src/2020/Year.c new file mode 100644 index 000000000..62be6ee57 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Year.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Year.h" + +int +Year_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Year_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Year_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Year_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Year = { + "Year", + "Year", + &asn_OP_NativeInteger, + asn_DEF_Year_tags_1, + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + asn_DEF_Year_tags_1, /* Same as above */ + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Year_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Year_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Year_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/ZoneLength.c b/src/tmx/Asn_J2735/src/2020/ZoneLength.c new file mode 100644 index 000000000..efc43190c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ZoneLength.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "ZoneLength.h" + +int +ZoneLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 10000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ZoneLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..10000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ZoneLength = { + "ZoneLength", + "ZoneLength", + &asn_OP_NativeInteger, + asn_DEF_ZoneLength_tags_1, + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + asn_DEF_ZoneLength_tags_1, /* Same as above */ + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ZoneLength_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ZoneLength_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ZoneLength_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/Zoom.c b/src/tmx/Asn_J2735/src/2020/Zoom.c new file mode 100644 index 000000000..963f37e7a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/Zoom.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` + */ + +#include "Zoom.h" + +int +Zoom_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Zoom_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Zoom_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Zoom_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Zoom = { + "Zoom", + "Zoom", + &asn_OP_NativeInteger, + asn_DEF_Zoom_tags_1, + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + asn_DEF_Zoom_tags_1, /* Same as above */ + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Zoom_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Zoom_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Zoom_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/2020/aper_decoder.c b/src/tmx/Asn_J2735/src/2020/aper_decoder.c new file mode 100644 index 000000000..0637b6a5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/aper_decoder.c @@ -0,0 +1,91 @@ +#include +#include +#include + +asn_dec_rval_t +aper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = aper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +aper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->aper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %zu, counted %zu", + rval.consumed, pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/2020/aper_encoder.c b/src/tmx/Asn_J2735/src/2020/aper_encoder.c new file mode 100644 index 000000000..d9b1c1df1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/aper_encoder.c @@ -0,0 +1,129 @@ +#include +#include +#include + +/* + * Argument type and callback necessary for aper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +aper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using ALIGNED PER", td->name); + + return aper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +ssize_t +aper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = aper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_aper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + if (po->output) { + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); + } + return 0; +} + +asn_enc_rval_t +aper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->aper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->aper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_aper_encode_flush_outp(&po)) + ASN__ENCODE_FAILED; + } + + return er; +} diff --git a/src/tmx/Asn_J2735/src/2020/aper_opentype.c b/src/tmx/Asn_J2735/src/2020/aper_opentype.c new file mode 100644 index 000000000..cdd5999b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/aper_opentype.c @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +static asn_dec_rval_t +aper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = aper_get_length(pd, -1, -1, -1, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->aper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* Noone would give us more */ + } + + return rv; +} + +int +aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + size_t toGo; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = aper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + for(bptr = buf, toGo = size; toGo;) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, -1, toGo, &need_eom); + if(maySave < 0) break; + if(per_put_many_bits(po, bptr, maySave * 8)) break; + bptr = (char *)bptr + maySave; + toGo -= maySave; + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) { + FREEMEM(buf); + return -1; + } + } + + FREEMEM(buf); + if(toGo) return -1; + + ASN_DEBUG("Open type put %s of length %zd + overhead (1byte?)", + td->name, size); + + return 0; +} + +asn_dec_rval_t +aper_open_type_get(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + return aper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +aper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_dec_rval_t rv; + asn_TYPE_operation_t op_t; + + memset(&op_t, 0, sizeof(op_t)); + s_td.name = ""; + s_td.op = &op_t; + s_td.op->aper_decoder = uper_sot_suck; + + rv = aper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/aper_support.c b/src/tmx/Asn_J2735/src/2020/aper_support.c new file mode 100644 index 000000000..1f34c60d6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/aper_support.c @@ -0,0 +1,239 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +int32_t +aper_get_align(asn_per_data_t *pd) { + + if(pd->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)pd->nboff & 0x7)); + return per_get_few_bits(pd, 8 - (pd->nboff & 0x7)); + } + return 0; +} + +ssize_t +aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, + int ebits, int *repeat) { + int constrained = (lb >= 0) && (ub >= 0); + ssize_t value; + + *repeat = 0; + + if (constrained && ub < 65536) { + int range = ub - lb + 1; + return aper_get_nsnnwn(pd, range); + } + + if (aper_get_align(pd) < 0) + return -1; + + if(ebits >= 0) return per_get_few_bits(pd, ebits); + + value = per_get_few_bits(pd, 8); + if(value < 0) return -1; + if((value & 128) == 0) /* #11.9.3.6 */ + return (value & 0x7F); + if((value & 64) == 0) { /* #11.9.3.7 */ + value = ((value & 63) << 8) | per_get_few_bits(pd, 8); + if(value < 0) return -1; + return value; + } + value &= 63; /* this is "m" from X.691, #11.9.3.8 */ + if(value < 1 || value > 4) + return -1; + *repeat = 1; + return (16384 * value); +} + +ssize_t +aper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%zd", length); + return length; + } else { + int repeat; + length = aper_get_length(pd, -1, -1, -1, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +ssize_t +aper_get_nsnnwn(asn_per_data_t *pd, int range) { + ssize_t value; + int bytes = 0; + + ASN_DEBUG("getting nsnnwn with range %d", range); + + if(range <= 255) { + int i; + + if (range < 0) return -1; + /* 1 -> 8 bits */ + for (i = 1; i <= 8; i++) { + int upper = 1 << i; + if (upper >= range) + break; + } + value = per_get_few_bits(pd, i); + return value; + } else if (range == 256){ + /* 1 byte */ + bytes = 1; + } else if (range <= 65536) { + /* 2 bytes */ + bytes = 2; + } else { + //return -1; + int length; + + /* handle indefinite range */ + length = per_get_few_bits(pd, 1); + if (length == 0) + return per_get_few_bits(pd, 6); + + if (aper_get_align(pd) < 0) + return -1; + + length = per_get_few_bits(pd, 8); + /* the length is not likely to be that big */ + if (length > 4) + return -1; + value = 0; + if (per_get_many_bits(pd, (uint8_t *)&value, 0, length * 8) < 0) + return -1; + return value; + } + if (aper_get_align(pd) < 0) + return -1; + value = per_get_few_bits(pd, 8 * bytes); + return value; +} + +int aper_put_align(asn_per_outp_t *po) { + + if(po->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)po->nboff & 0x7)); + if(per_put_few_bits(po, 0x00, (8 - (po->nboff & 0x7)))) + return -1; + } + return 0; +} + +ssize_t +aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, int *need_eom) { + int constrained = (lb >= 0) && (ub >= 0); + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + *need_eom = 0; + + + ASN_DEBUG("APER put length %zu with range (%zd..%zd)", n, lb, ub); + + /* 11.9 X.691 Note 2 */ + if (constrained && ub < 65536) { + int range = ub - lb + 1; + return aper_put_nsnnwn(po, range, n) ? -1 : (ssize_t)n; + } + + if (aper_put_align(po) < 0) + return -1; + + if(n <= 127) { /* #11.9.3.6 */ + return per_put_few_bits(po, n, 8) + ? -1 : (ssize_t)n; + } + else if(n < 16384) /* #11.9.3.7 */ + return per_put_few_bits(po, n|0x8000, 16) + ? -1 : (ssize_t)n; + + *need_eom = 0 == (n & 16383); + n >>= 14; + if(n > 4) { + *need_eom = 0; + n = 4; + } + + return per_put_few_bits(po, 0xC0 | n, 8) + ? -1 : (ssize_t)(n << 14); +} + + +int +aper_put_nslength(asn_per_outp_t *po, size_t length) { + + if(length <= 64) { + /* #11.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length-1, 7) ? -1 : 0; + } else { + if(aper_put_length(po, -1, -1, length, NULL) != (ssize_t)length) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +int +aper_put_nsnnwn(asn_per_outp_t *po, int range, int number) { + int bytes; + + ASN_DEBUG("aper put nsnnwn %d with range %d", number, range); + /* 10.5.7.1 X.691 */ + if(range < 0) { + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (number <= bits) + break; + } + bytes = i; + assert(i <= 4); + } + if(range <= 255) { + int i; + for (i = 1; i <= 8; i++) { + int bits = 1 << i; + if (range <= bits) + break; + } + return per_put_few_bits(po, number, i); + } else if(range == 256) { + if (number >= range) + return -1; + bytes = 1; + } else if(range <= 65536) { + if (number >= range) + return -1; + bytes = 2; + } else { /* Ranges > 64K */ + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (range <= bits) + break; + } + assert(i <= 4); + bytes = i; + } + if(aper_put_align(po) < 0) /* Aligning on octet */ + return -1; +/* if(per_put_few_bits(po, bytes, 8)) + return -1; +*/ + return per_put_few_bits(po, number, 8 * bytes); +} diff --git a/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c new file mode 100644 index 000000000..ec952fc99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +typedef A_SEQUENCE_OF(void) asn_sequence; + +void +asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { + asn_sequence *as = (asn_sequence *)asn_sequence_of_x; + + if(as) { + void *ptr; + int n; + + if(number < 0 || number >= as->count) + return; /* Nothing to delete */ + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + /* + * Shift all elements to the left to hide the gap. + */ + --as->count; + for(n = number; n < as->count; n++) + as->array[n] = as->array[n+1]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + diff --git a/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c b/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c new file mode 100644 index 000000000..944f2cb8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Add another element into the set. + */ +int +asn_set_add(void *asn_set_of_x, void *ptr) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as == 0 || ptr == 0) { + errno = EINVAL; /* Invalid arguments */ + return -1; + } + + /* + * Make sure there's enough space to insert an element. + */ + if(as->count == as->size) { + int _newsize = as->size ? (as->size << 1) : 4; + void *_new_arr; + _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); + if(_new_arr) { + as->array = (void **)_new_arr; + as->size = _newsize; + } else { + /* ENOMEM */ + return -1; + } + } + + as->array[as->count++] = ptr; + + return 0; +} + +void +asn_set_del(void *asn_set_of_x, int number, int _do_free) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + void *ptr; + if(number < 0 || number >= as->count) + return; + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + as->array[number] = as->array[--as->count]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + +/* + * Free the contents of the set, do not free the set itself. + */ +void +asn_set_empty(void *asn_set_of_x) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + if(as->array) { + if(as->free) { + while(as->count--) + as->free(as->array[as->count]); + } + FREEMEM(as->array); + as->array = 0; + } + as->count = 0; + as->size = 0; + } + +} + diff --git a/src/tmx/Asn_J2735/src/2020/asn_application.c b/src/tmx/Asn_J2735/src/2020/asn_application.c new file mode 100644 index 000000000..7992185b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_application.c @@ -0,0 +1,538 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_app_consume_bytes_f *callback, + void *callback_key); + + +struct callback_count_bytes_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + size_t computed_size; +}; + +/* + * Encoder which just counts bytes that come through it. + */ +static int +callback_count_bytes_cb(const void *data, size_t size, void *keyp) { + struct callback_count_bytes_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret >= 0) { + key->computed_size += size; + } + + return ret; +} + +struct overrun_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct dynamic_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct callback_failure_catch_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + int callback_failed; +}; + +/* + * Encoder which doesn't stop counting bytes + * even if it reaches the end of the buffer. + */ +static int +overrun_encoder_cb(const void *data, size_t size, void *keyp) { + struct overrun_encoder_key *key = keyp; + + if(key->computed_size + size > key->buffer_size) { + /* + * Avoid accident on the next call: + * stop adding bytes to the buffer. + */ + key->buffer_size = 0; + } else { + memcpy((char *)key->buffer + key->computed_size, data, size); + } + key->computed_size += size; + + return 0; +} + +/* + * Encoder which dynamically allocates output, and continues + * to count even if allocation failed. + */ +static int +dynamic_encoder_cb(const void *data, size_t size, void *keyp) { + struct dynamic_encoder_key *key = keyp; + + if(key->buffer) { + if(key->computed_size + size >= key->buffer_size) { + void *p; + size_t new_size = key->buffer_size; + + do { + new_size *= 2; + } while(new_size <= key->computed_size + size); + + p = REALLOC(key->buffer, new_size); + if(p) { + key->buffer = p; + key->buffer_size = new_size; + } else { + FREEMEM(key->buffer); + key->buffer = 0; + key->buffer_size = 0; + key->computed_size += size; + return 0; + } + } + memcpy((char *)key->buffer + key->computed_size, data, size); + } + + key->computed_size += size; + + return 0; +} + +/* + * Encoder which help convert the application level encoder failure into EIO. + */ +static int +callback_failure_catch_cb(const void *data, size_t size, void *keyp) { + struct callback_failure_catch_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret < 0) { + key->callback_failed = 1; + } + + return ret; +} + +asn_enc_rval_t +asn_encode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + const void *sptr, asn_app_consume_bytes_f *callback, void *callback_key) { + struct callback_failure_catch_key cb_key; + asn_enc_rval_t er = {0,0,0}; + + if(!callback) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.callback_failed = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + callback_failure_catch_cb, &cb_key); + if(cb_key.callback_failed) { + assert(er.encoded == -1); + assert(errno == EBADF); + errno = EIO; + } + + return er; +} + +asn_enc_rval_t +asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + void *buffer, size_t buffer_size) { + struct overrun_encoder_key buf_key; + asn_enc_rval_t er = {0,0,0}; + + if(buffer_size > 0 && !buffer) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + buf_key.buffer = buffer; + buf_key.buffer_size = buffer_size; + buf_key.computed_size = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + overrun_encoder_cb, &buf_key); + + if(er.encoded >= 0 && (size_t)er.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + er.encoded, buf_key.computed_size); + assert(er.encoded < 0 || (size_t)er.encoded == buf_key.computed_size); + } + + return er; +} + +asn_encode_to_new_buffer_result_t +asn_encode_to_new_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr) { + struct dynamic_encoder_key buf_key; + asn_encode_to_new_buffer_result_t res; + + buf_key.buffer_size = 16; + buf_key.buffer = MALLOC(buf_key.buffer_size); + buf_key.computed_size = 0; + + res.result = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + dynamic_encoder_cb, &buf_key); + + if(res.result.encoded >= 0 + && (size_t)res.result.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + res.result.encoded, buf_key.computed_size); + assert(res.result.encoded < 0 + || (size_t)res.result.encoded == buf_key.computed_size); + } + + res.buffer = buf_key.buffer; + + /* 0-terminate just in case. */ + if(res.buffer) { + assert(buf_key.computed_size < buf_key.buffer_size); + ((char *)res.buffer)[buf_key.computed_size] = '\0'; + } + + return res; +} + +static asn_enc_rval_t +asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_consume_bytes_f *callback, void *callback_key) { + asn_enc_rval_t er = {0,0,0}; +#if !defined(ASN_DISABLE_XER_SUPPORT) + enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + + (void)opt_codec_ctx; /* Parameters are not checked on encode yet. */ + + if(!td || !sptr) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + switch(syntax) { + case ATS_NONSTANDARD_PLAINTEXT: + if(td->op->print_struct) { + struct callback_count_bytes_key cb_key; + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.computed_size = 0; + if(td->op->print_struct(td, sptr, 1, callback_count_bytes_cb, + &cb_key) + < 0 + || callback_count_bytes_cb("\n", 1, &cb_key) < 0) { + errno = EBADF; /* Structure has incorrect form. */ + er.encoded = -1; + er.failed_type = td; + er.structure_ptr = sptr; + } else { + er.encoded = cb_key.computed_size; + er.failed_type = 0; + er.structure_ptr = 0; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + + case ATS_RANDOM: + errno = ENOENT; /* Randomization doesn't make sense on output. */ + ASN__ENCODE_FAILED; + +#if !defined(ASN_DISABLE_BER_SUPPORT) + case ATS_BER: + /* BER is a superset of DER. */ + /* Fall through. */ + case ATS_DER: + if(td->op->der_encoder) { + er = der_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->der_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* DER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + case ATS_CER: + errno = ENOENT; /* Transfer syntax is not defined for any type. */ + ASN__ENCODE_FAILED; +#else + case ATS_BER: + case ATS_DER: + case ATS_CER: + errno = ENOENT; /* BER is not defined. */ + ASN__ENCODE_FAILED; + +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) + case ATS_BASIC_OER: + /* CANONICAL-OER is a superset of BASIC-OER. */ + /* Fall through. */ + case ATS_CANONICAL_OER: + if(td->op->oer_encoder) { + er = oer_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->oer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* OER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: + errno = ENOENT; /* OER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) + case ATS_UNALIGNED_BASIC_PER: + /* CANONICAL-UPER is a superset of BASIC-UPER. */ + /* Fall through. */ + case ATS_UNALIGNED_CANONICAL_PER: + if(td->op->uper_encoder) { + er = uper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->uper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* UPER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: + errno = ENOENT; /* UPER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + case ATS_ALIGNED_BASIC_PER: + /* CANONICAL-APER is a superset of BASIC-APER. */ + /* Fall through. */ + case ATS_ALIGNED_CANONICAL_PER: + if(td->op->aper_encoder) { + er = aper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->aper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* APER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: + errno = ENOENT; /* APER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) + case ATS_BASIC_XER: + /* CANONICAL-XER is a superset of BASIC-XER. */ + xer_flags &= ~XER_F_CANONICAL; + xer_flags |= XER_F_BASIC; + /* Fall through. */ + case ATS_CANONICAL_XER: + if(td->op->xer_encoder) { + er = xer_encode(td, sptr, xer_flags, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->xer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* XER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_BASIC_XER: + case ATS_CANONICAL_XER: + errno = ENOENT; /* XER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) + case ATS_JER: + if(td->op->jer_encoder) { + er = jer_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->jer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* JER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + default: + errno = ENOENT; + ASN__ENCODE_FAILED; + } + + return er; +} + +asn_dec_rval_t +asn_decode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + void **sptr, const void *buffer, size_t size) { + if(!td || !td->op || !sptr || (size && !buffer)) { + ASN__DECODE_FAILED; + } + + switch(syntax) { + case ATS_CER: + case ATS_NONSTANDARD_PLAINTEXT: + default: + errno = ENOENT; + ASN__DECODE_FAILED; + + case ATS_RANDOM: +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + if(!td->op->random_fill) { + ASN__DECODE_FAILED; + } else { + if(asn_random_fill(td, sptr, 16000) == 0) { + asn_dec_rval_t ret = {RC_OK, 0}; + return ret; + } else { + ASN__DECODE_FAILED; + } + } + break; +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + + case ATS_DER: + case ATS_BER: +#if !defined(ASN_DISABLE_BER_SUPPORT) + return ber_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: +#if !defined(ASN_DISABLE_OER_SUPPORT) + return oer_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: +#if !defined(ASN_DISABLE_UPER_SUPPORT) + return uper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ + + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: +#if !defined(ASN_DISABLE_APER_SUPPORT) + return aper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + + case ATS_BASIC_XER: + case ATS_CANONICAL_XER: +#if !defined(ASN_DISABLE_XER_SUPPORT) + return xer_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + } +} + diff --git a/src/tmx/Asn_J2735/src/2020/asn_bit_data.c b/src/tmx/Asn_J2735/src/2020/asn_bit_data.c new file mode 100644 index 000000000..fe4b89ba7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_bit_data.c @@ -0,0 +1,333 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t * +asn_bit_data_new_contiguous(const void *data, size_t size_bits) { + size_t size_bytes = (size_bits + 7) / 8; + asn_bit_data_t *pd; + uint8_t *bytes; + + /* Get the extensions map */ + pd = CALLOC(1, sizeof(*pd) + size_bytes + 1); + if(!pd) { + return NULL; + } + bytes = (void *)(((char *)pd) + sizeof(*pd)); + memcpy(bytes, data, size_bytes); + bytes[size_bytes] = 0; + pd->buffer = bytes; + pd->nboff = 0; + pd->nbits = size_bits; + + return pd; +} + + +char * +asn_bit_data_string(asn_bit_data_t *pd) { + static char buf[2][32]; + static int n; + n = (n+1) % 2; + snprintf(buf[n], sizeof(buf[n]), + "{m=%" ASN_PRI_SIZE " span %" ASN_PRI_SIZE "[%" ASN_PRI_SIZE + "..%" ASN_PRI_SIZE "] (%" ASN_PRI_SIZE ")}", + pd->moved, ((uintptr_t)(pd->buffer) & 0xf), pd->nboff, pd->nbits, + pd->nbits - pd->nboff); + return buf[n]; +} + +void +asn_get_undo(asn_bit_data_t *pd, int nbits) { + if((ssize_t)pd->nboff < nbits) { + assert((ssize_t)pd->nboff < nbits); + } else { + pd->nboff -= nbits; + pd->moved -= nbits; + } +} + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + */ +int32_t +asn_get_few_bits(asn_bit_data_t *pd, int nbits) { + size_t off; /* Next after last bit offset */ + ssize_t nleft; /* Number of bits left in this stream */ + uint32_t accum; + const uint8_t *buf; + + if(nbits < 0) + return -1; + + nleft = pd->nbits - pd->nboff; + if(nbits > nleft) { + int32_t tailv, vhead; + if(!pd->refill || nbits > 31) return -1; + /* Accumulate unused bytes before refill */ + ASN_DEBUG("Obtain the rest %d bits (want %d)", + (int)nleft, (int)nbits); + tailv = asn_get_few_bits(pd, nleft); + if(tailv < 0) return -1; + /* Refill (replace pd contents with new data) */ + if(pd->refill(pd)) + return -1; + nbits -= nleft; + vhead = asn_get_few_bits(pd, nbits); + /* Combine the rest of previous pd with the head of new one */ + tailv = (tailv << nbits) | vhead; /* Could == -1 */ + return tailv; + } + + /* + * Normalize position indicator. + */ + if(pd->nboff >= 8) { + pd->buffer += (pd->nboff >> 3); + pd->nbits -= (pd->nboff & ~0x07); + pd->nboff &= 0x07; + } + pd->moved += nbits; + pd->nboff += nbits; + off = pd->nboff; + buf = pd->buffer; + + /* + * Extract specified number of bits. + */ + if(off <= 8) + accum = nbits ? (buf[0]) >> (8 - off) : 0; + else if(off <= 16) + accum = ((buf[0] << 8) + buf[1]) >> (16 - off); + else if(off <= 24) + accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); + else if(off <= 31) + accum = (((uint32_t)buf[0] << 24) + (buf[1] << 16) + + (buf[2] << 8) + (buf[3])) >> (32 - off); + else if(nbits <= 31) { + asn_bit_data_t tpd = *pd; + /* Here are we with our 31-bits limit plus 1..7 bits offset. */ + asn_get_undo(&tpd, nbits); + /* The number of available bits in the stream allow + * for the following operations to take place without + * invoking the ->refill() function */ + accum = asn_get_few_bits(&tpd, nbits - 24) << 24; + accum |= asn_get_few_bits(&tpd, 24); + } else { + asn_get_undo(pd, nbits); + return -1; + } + + accum &= (((uint32_t)1 << nbits) - 1); + + ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", + (int)nbits, (int)nleft, + (int)pd->moved, + (((long)pd->buffer) & 0xf), + (int)pd->nboff, (int)pd->nbits, + ((pd->buffer != NULL)?pd->buffer[0]:0), + (int)(pd->nbits - pd->nboff), + (int)accum); + + return accum; +} + +/* + * Extract a large number of bits from the specified PER data pointer. + */ +int +asn_get_many_bits(asn_bit_data_t *pd, uint8_t *dst, int alright, int nbits) { + int32_t value; + + if(alright && (nbits & 7)) { + /* Perform right alignment of a first few bits */ + value = asn_get_few_bits(pd, nbits & 0x07); + if(value < 0) return -1; + *dst++ = value; /* value is already right-aligned */ + nbits &= ~7; + } + + while(nbits) { + if(nbits >= 24) { + value = asn_get_few_bits(pd, 24); + if(value < 0) return -1; + *(dst++) = value >> 16; + *(dst++) = value >> 8; + *(dst++) = value; + nbits -= 24; + } else { + value = asn_get_few_bits(pd, nbits); + if(value < 0) return -1; + if(nbits & 7) { /* implies left alignment */ + value <<= 8 - (nbits & 7), + nbits += 8 - (nbits & 7); + if(nbits > 24) + *dst++ = value >> 24; + } + if(nbits > 16) + *dst++ = value >> 16; + if(nbits > 8) + *dst++ = value >> 8; + *dst++ = value; + break; + } + } + + return 0; +} + +/* + * Put a small number of bits (<= 31). + */ +int +asn_put_few_bits(asn_bit_outp_t *po, uint32_t bits, int obits) { + size_t off; /* Next after last bit offset */ + size_t omsk; /* Existing last byte meaningful bits mask */ + uint8_t *buf; + + if(obits <= 0 || obits >= 32) return obits ? -1 : 0; + + ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", + obits, (int)bits, (void *)po->buffer, (int)po->nboff); + + /* + * Normalize position indicator. + */ + if(po->nboff >= 8) { + po->buffer += (po->nboff >> 3); + po->nbits -= (po->nboff & ~0x07); + po->nboff &= 0x07; + } + + /* + * Flush whole-bytes output, if necessary. + */ + if(po->nboff + obits > po->nbits) { + size_t complete_bytes; + if(!po->buffer) po->buffer = po->tmpspace; + complete_bytes = (po->buffer - po->tmpspace); + ASN_DEBUG("[PER output %ld complete + %ld]", + (long)complete_bytes, (long)po->flushed_bytes); + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) + return -1; + if(po->nboff) + po->tmpspace[0] = po->buffer[0]; + po->buffer = po->tmpspace; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + } + + /* + * Now, due to sizeof(tmpspace), we are guaranteed large enough space. + */ + buf = po->buffer; + omsk = ~((1 << (8 - po->nboff)) - 1); + off = (po->nboff + obits); + + /* Clear data of debris before meaningful bits */ + bits &= (((uint32_t)1 << obits) - 1); + + ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, + (int)bits, (int)bits, + (int)po->nboff, (int)off, + buf[0], (int)(omsk&0xff), + (int)(buf[0] & omsk)); + + if(off <= 8) /* Completely within 1 byte */ + po->nboff = off, + bits <<= (8 - off), + buf[0] = (buf[0] & omsk) | bits; + else if(off <= 16) + po->nboff = off, + bits <<= (16 - off), + buf[0] = (buf[0] & omsk) | (bits >> 8), + buf[1] = bits; + else if(off <= 24) + po->nboff = off, + bits <<= (24 - off), + buf[0] = (buf[0] & omsk) | (bits >> 16), + buf[1] = bits >> 8, + buf[2] = bits; + else if(off <= 31) + po->nboff = off, + bits <<= (32 - off), + buf[0] = (buf[0] & omsk) | (bits >> 24), + buf[1] = bits >> 16, + buf[2] = bits >> 8, + buf[3] = bits; + else { + if(asn_put_few_bits(po, bits >> (obits - 24), 24)) return -1; + if(asn_put_few_bits(po, bits, obits - 24)) return -1; + } + + ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", + (int)bits, (int)bits, buf[0], + (long)(po->buffer - po->tmpspace)); + + return 0; +} + + +/* + * Output a large number of bits. + */ +int +asn_put_many_bits(asn_bit_outp_t *po, const uint8_t *src, int nbits) { + + while(nbits) { + uint32_t value; + + if(nbits >= 24) { + value = (src[0] << 16) | (src[1] << 8) | src[2]; + src += 3; + nbits -= 24; + if(asn_put_few_bits(po, value, 24)) + return -1; + } else { + value = src[0]; + if(nbits > 8) + value = (value << 8) | src[1]; + if(nbits > 16) + value = (value << 8) | src[2]; + if(nbits & 0x07) + value >>= (8 - (nbits & 0x07)); + if(asn_put_few_bits(po, value, nbits)) + return -1; + break; + } + } + + return 0; +} + + +int +asn_put_aligned_flush(asn_bit_outp_t *po) { + uint32_t unused_bits = (0x7 & (8 - (po->nboff & 0x07))); + size_t complete_bytes = + (po->buffer ? po->buffer - po->tmpspace : 0) + ((po->nboff + 7) >> 3); + + if(unused_bits) { + po->buffer[po->nboff >> 3] &= ~0u << unused_bits; + } + + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) { + return -1; + } else { + po->buffer = po->tmpspace; + po->nboff = 0; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + return 0; + } +} + diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c new file mode 100644 index 000000000..f3fdbfd2b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c @@ -0,0 +1,31 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +void +ASN__PRIMITIVE_TYPE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as a primitive type", td->name); + + if(st->buf) + FREEMEM(st->buf); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, sizeof(ASN__PRIMITIVE_TYPE_t)); + break; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c new file mode 100644 index 000000000..c5c2cef65 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c @@ -0,0 +1,115 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode an always-primitive type. + */ +asn_dec_rval_t +ber_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval; + ber_tlv_len_t length = 0; /* =0 to avoid [incorrect] warning. */ + + /* + * If the structure is not there, allocate it. + */ + if(st == NULL) { + st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) ASN__DECODE_FAILED; + *sptr = (void *)st; + } + + ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", + td->name, tag_mode); + + /* + * Check tags and extract value length. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + st->size = (int)length; + /* The following better be optimized away. */ + if(sizeof(st->size) != sizeof(length) + && (ber_tlv_len_t)st->size != length) { + st->size = 0; + ASN__DECODE_FAILED; + } + + st->buf = (uint8_t *)MALLOC(length + 1); + if(!st->buf) { + st->size = 0; + ASN__DECODE_FAILED; + } + + memcpy(st->buf, buf_ptr, length); + st->buf[length] = '\0'; /* Just in case */ + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s", + (long)rval.consumed, + (long)length, td->name); + + return rval; +} + +/* + * Encode an always-primitive type using DER. + */ +asn_enc_rval_t +der_encode_primitive(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + + ASN_DEBUG("%s %s as a primitive type (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, + cb, app_key); + ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb && st->buf) { + if(cb(st->buf, st->size, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } else { + assert(st->buf || st->size == 0); + } + + erval.encoded += st->size; + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c new file mode 100644 index 000000000..70c91bc26 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Local internal type passed around as an argument. + */ +struct xdp_arg_s { + const asn_TYPE_descriptor_t *type_descriptor; + void *struct_key; + xer_primitive_body_decoder_f *prim_body_decoder; + int decoded_something; + int want_more; +}; + +/* + * Since some kinds of primitive values can be encoded using value-specific + * tags (, , etc), the primitive decoder must + * be supplied with such tags to parse them as needed. + */ +static int +xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + + /* + * The chunk_buf is guaranteed to start at '<'. + */ + assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); + + /* + * Decoding was performed once already. Prohibit doing it again. + */ + if(arg->decoded_something) + return -1; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, + chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return 0; + } + + return -1; +} + +static ssize_t +xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + size_t lead_wsp_size; + + if(arg->decoded_something) { + if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { + /* + * Example: + * "123 " + * ^- chunk_buf position. + */ + return chunk_size; + } + /* + * Decoding was done once already. Prohibit doing it again. + */ + return -1; + } + + if(!have_more) { + /* + * If we've received something like "1", we can't really + * tell whether it is really `1` or `123`, until we know + * that there is no more data coming. + * The have_more argument will be set to 1 once something + * like this is available to the caller of this callback: + * "1want_more = 1; + return -1; + } + + lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); + chunk_buf = (chunk_buf == NULL)? NULL : ((const char *)chunk_buf + lead_wsp_size); + chunk_size -= lead_wsp_size; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, + chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return lead_wsp_size + chunk_size; + } + + return -1; +} + +asn_dec_rval_t +xer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + size_t struct_size, const char *opt_mname, + const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder) { + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t s_ctx; + struct xdp_arg_s s_arg; + asn_dec_rval_t rc; + + /* + * Create the structure if does not exist. + */ + if(!*sptr) { + *sptr = CALLOC(1, struct_size); + if(!*sptr) ASN__DECODE_FAILED; + } + + memset(&s_ctx, 0, sizeof(s_ctx)); + s_arg.type_descriptor = td; + s_arg.struct_key = *sptr; + s_arg.prim_body_decoder = prim_body_decoder; + s_arg.decoded_something = 0; + s_arg.want_more = 0; + + rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, + xml_tag, buf_ptr, size, + xer_decode__unexpected_tag, + xer_decode__primitive_body); + switch(rc.code) { + case RC_OK: + if(!s_arg.decoded_something) { + char ch; + ASN_DEBUG("Primitive body is not recognized, " + "supplying empty one"); + /* + * Decoding opportunity has come and gone. + * Where's the result? + * Try to feed with empty body, see if it eats it. + */ + if(prim_body_decoder(s_arg.type_descriptor, + s_arg.struct_key, &ch, 0) + != XPBD_BODY_CONSUMED) { + /* + * This decoder does not like empty stuff. + */ + ASN__DECODE_FAILED; + } + } + break; + case RC_WMORE: + /* + * Redo the whole thing later. + * We don't have a context to save intermediate parsing state. + */ + rc.consumed = 0; + break; + case RC_FAIL: + rc.consumed = 0; + if(s_arg.want_more) + rc.code = RC_WMORE; + else + ASN__DECODE_FAILED; + break; + } + return rc; +} diff --git a/src/tmx/Asn_J2735/src/2020/asn_internal.c b/src/tmx/Asn_J2735/src/2020/asn_internal.c new file mode 100644 index 000000000..c2a8108e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_internal.c @@ -0,0 +1,48 @@ +#include + +ssize_t +asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, + const char *fmt, ...) { + char scratch[64]; + char *buf = scratch; + size_t buf_size = sizeof(scratch); + int wrote; + int cb_ret; + + do { + va_list args; + va_start(args, fmt); + + wrote = vsnprintf(buf, buf_size, fmt, args); + va_end(args); + if(wrote < (ssize_t)buf_size) { + if(wrote < 0) { + if(buf != scratch) FREEMEM(buf); + return -1; + } + break; + } + + buf_size <<= 1; + if(buf == scratch) { + buf = MALLOC(buf_size); + if(!buf) return -1; + } else { + void *p = REALLOC(buf, buf_size); + if(!p) { + FREEMEM(buf); + return -1; + } + buf = p; + } + } while(1); + + cb_ret = cb(buf, wrote, key); + if(buf != scratch) FREEMEM(buf); + if(cb_ret < 0) { + return -1; + } + + return wrote; +} + diff --git a/src/tmx/Asn_J2735/src/2020/asn_random_fill.c b/src/tmx/Asn_J2735/src/2020/asn_random_fill.c new file mode 100644 index 000000000..15771b6c7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/asn_random_fill.c @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +int +asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t length) { + + if(td && td->op->random_fill) { + asn_random_fill_result_t res = + td->op->random_fill(td, struct_ptr, 0, length); + return (res.code == ARFILL_OK) ? 0 : -1; + } else { + return -1; + } +} + +static uintmax_t +asn__intmax_range(intmax_t lb, intmax_t ub) { + assert(lb <= ub); + if((ub < 0) == (lb < 0)) { + return ub - lb; + } else if(lb < 0) { + return 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return 0; + } +} + +intmax_t +asn_random_between(intmax_t lb, intmax_t rb) { + if(lb == rb) { + return lb; + } else { + const uintmax_t intmax_max = ((~(uintmax_t)0) >> 1); + uintmax_t range = asn__intmax_range(lb, rb); + uintmax_t value = 0; + uintmax_t got_entropy = 0; + (void)intmax_max; + int max = 0xffffff; + +#ifdef __WIN32__ + max = RAND_MAX-1; +#endif + + assert(RAND_MAX > max); /* Seen 7ffffffd! */ + assert(range < intmax_max); + + for(; got_entropy < range;) { + got_entropy = (got_entropy << 24) | max; +#ifdef HAVE_RANDOM + value = (value << 24) | (random() % max); +#else + value = (value << 24) | (rand() % max); +#endif + } + + return lb + (intmax_t)(value % (range + 1)); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/ber_decoder.c b/src/tmx/Asn_J2735/src/2020/ber_decoder.c new file mode 100644 index 000000000..75d601695 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ber_decoder.c @@ -0,0 +1,283 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + if(opt_ctx) opt_ctx->step = step; /* Save context */ \ + if(_code == RC_OK || opt_ctx) \ + rval.consumed = consumed_myself; \ + else \ + rval.consumed = 0; /* Context-free */ \ + return rval; \ + } while(0) + +/* + * The BER decoder of any type. + */ +asn_dec_rval_t +ber_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->ber_decoder(opt_codec_ctx, type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + ptr, size, /* Buffer and its size */ + 0 /* Default tag mode is 0 */ + ); +} + +/* + * Check the set of >> tags matches the definition. + */ +asn_dec_rval_t +ber_check_tags(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, + const void *ptr, size_t size, int tag_mode, int last_tag_form, + ber_tlv_len_t *last_length, int *opt_tlv_form) { + ssize_t consumed_myself = 0; + ssize_t tag_len; + ssize_t len_len; + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_len_t limit_len = -1; + int expect_00_terminators = 0; + int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ + int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ + int tagno; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + RETURN(RC_FAIL); + + /* + * So what does all this implicit skip stuff mean? + * Imagine two types, + * A ::= [5] IMPLICIT T + * B ::= [2] EXPLICIT T + * Where T is defined as + * T ::= [4] IMPLICIT SEQUENCE { ... } + * + * Let's say, we are starting to decode type A, given the + * following TLV stream: <5> <0>. What does this mean? + * It means that the type A contains type T which is, + * in turn, empty. + * Remember though, that we are still in A. We cannot + * just pass control to the type T decoder. Why? Because + * the type T decoder expects <4> <0>, not <5> <0>. + * So, we must make sure we are going to receive <5> while + * still in A, then pass control to the T decoder, indicating + * that the tag <4> was implicitly skipped. The decoder of T + * hence will be prepared to treat <4> as valid tag, and decode + * it appropriately. + */ + + tagno = step /* Continuing where left previously */ + + (tag_mode==1?-1:0) + ; + ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", + td->name, (long)size, tag_mode, step, tagno); + /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ + + if(tag_mode == 0 && tagno == (int)td->tags_count) { + /* + * This must be the _untagged_ ANY type, + * which outermost tag isn't known in advance. + * Fetch the tag and length separately. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + ASN_DEBUG("Advancing %ld in ANY case", + (long)(tag_len + len_len)); + ADVANCE(tag_len + len_len); + } else { + assert(tagno < (int)td->tags_count); /* At least one loop */ + } + for((void)tagno; tagno < (int)td->tags_count; tagno++, step++) { + + /* + * Fetch and process T from TLV. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + ASN_DEBUG("Fetching tag from {%p,%ld}: " + "len %ld, step %d, tagno %d got %s", + ptr, (long)size, + (long)tag_len, step, tagno, + ber_tlv_tag_string(tlv_tag)); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + + /* + * If {I}, don't check anything. + * If {I,B,C}, check B and C unless we're at I. + */ + if(tag_mode != 0 && step == 0) { + /* + * We don't expect tag to match here. + * It's just because we don't know how the tag + * is supposed to look like. + */ + } else { + assert(tagno >= 0); /* Guaranteed by the code above */ + if(tlv_tag != td->tags[tagno]) { + /* + * Unexpected tag. Too bad. + */ + ASN_DEBUG("Expected: %s, " + "expectation failed (tn=%d, tm=%d)", + ber_tlv_tag_string(td->tags[tagno]), + tagno, tag_mode + ); + RETURN(RC_FAIL); + } + } + + /* + * Attention: if there are more tags expected, + * ensure that the current tag is presented + * in constructed form (it contains other tags!). + * If this one is the last one, check that the tag form + * matches the one given in descriptor. + */ + if(tagno < ((int)td->tags_count - 1)) { + if(tlv_constr == 0) { + ASN_DEBUG("tlv_constr = %d, expfail", + tlv_constr); + RETURN(RC_FAIL); + } + } else { + if(last_tag_form != tlv_constr + && last_tag_form != -1) { + ASN_DEBUG("last_tag_form %d != %d", + last_tag_form, tlv_constr); + RETURN(RC_FAIL); + } + } + + /* + * Fetch and process L from TLV. + */ + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + ASN_DEBUG("Fetching len = %ld", (long)len_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + /* + * FIXME + * As of today, the chain of tags + * must either contain several indefinite length TLVs, + * or several definite length ones. + * No mixing is allowed. + */ + if(tlv_len == -1) { + /* + * Indefinite length. + */ + if(limit_len == -1) { + expect_00_terminators++; + } else { + ASN_DEBUG("Unexpected indefinite length " + "in a chain of definite lengths"); + RETURN(RC_FAIL); + } + ADVANCE(tag_len + len_len); + continue; + } else { + if(expect_00_terminators) { + ASN_DEBUG("Unexpected definite length " + "in a chain of indefinite lengths"); + RETURN(RC_FAIL); + } + } + + /* + * Check that multiple TLVs specify ever decreasing length, + * which is consistent. + */ + if(limit_len == -1) { + limit_len = tlv_len + tag_len + len_len; + if(limit_len < 0) { + /* Too great tlv_len value? */ + RETURN(RC_FAIL); + } + } else if(limit_len != tlv_len + tag_len + len_len) { + /* + * Inner TLV specifies length which is inconsistent + * with the outer TLV's length value. + */ + ASN_DEBUG("Outer TLV is %ld and inner is %ld", + (long)limit_len, (long)tlv_len); + RETURN(RC_FAIL); + } + + ADVANCE(tag_len + len_len); + + limit_len -= (tag_len + len_len); + if((ssize_t)size > limit_len) { + /* + * Make sure that we won't consume more bytes + * from the parent frame than the inferred limit. + */ + size = limit_len; + } + } + + if(opt_tlv_form) + *opt_tlv_form = tlv_constr; + if(expect_00_terminators) + *last_length = -expect_00_terminators; + else + *last_length = tlv_len; + + RETURN(RC_OK); +} diff --git a/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c b/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c new file mode 100644 index 000000000..0a0deec1a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c @@ -0,0 +1,168 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r) { + const uint8_t *buf = (const uint8_t *)bufptr; + unsigned oct; + + if(size == 0) + return 0; /* Want more */ + + oct = *(const uint8_t *)buf; + if((oct & 0x80) == 0) { + /* + * Short definite length. + */ + *len_r = oct; /* & 0x7F */ + return 1; + } else { + ber_tlv_len_t len; + size_t skipped; + + if(_is_constructed && oct == 0x80) { + *len_r = -1; /* Indefinite length */ + return 1; + } + + if(oct == 0xff) { + /* Reserved in standard for future use. */ + return -1; + } + + oct &= 0x7F; /* Leave only the 7 LS bits */ + for(len = 0, buf++, skipped = 1; + oct && (++skipped <= size); buf++, oct--) { + + /* Verify that we won't overflow. */ + if(!(len >> ((8 * sizeof(len)) - (8+1)))) { + len = (len << 8) | *buf; + } else { + /* Too large length value. */ + return -1; + } + } + + if(oct == 0) { + if(len < 0 || len > RSSIZE_MAX) { + /* Length value out of sane range. */ + return -1; + } + + *len_r = len; + return skipped; + } + + return 0; /* Want more */ + } + +} + +ssize_t +ber_skip_length(const asn_codec_ctx_t *opt_codec_ctx, + int _is_constructed, const void *ptr, size_t size) { + ber_tlv_len_t vlen; /* Length of V in TLV */ + ssize_t tl; /* Length of L in TLV */ + ssize_t ll; /* Length of L in TLV */ + size_t skip; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + return -1; + + /* + * Determine the size of L in TLV. + */ + ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); + if(ll <= 0) return ll; + + /* + * Definite length. + */ + if(vlen >= 0) { + skip = ll + vlen; + if(skip > size) + return 0; /* Want more */ + return skip; + } + + /* + * Indefinite length! + */ + ASN_DEBUG("Skipping indefinite length"); + for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { + ber_tlv_tag_t tag; + + /* Fetch the tag */ + tl = ber_fetch_tag(ptr, size, &tag); + if(tl <= 0) return tl; + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + ((const char *)ptr) + tl, size - tl); + if(ll <= 0) return ll; + + skip += tl + ll; + + /* + * This may be the end of the indefinite length structure, + * two consecutive 0 octets. + * Check if it is true. + */ + if(((const uint8_t *)ptr)[0] == 0 + && ((const uint8_t *)ptr)[1] == 0) + return skip; + + ptr = ((const char *)ptr) + tl + ll; + size -= tl + ll; + } + + /* UNREACHABLE */ +} + +size_t +der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { + size_t required_size; /* Size of len encoding */ + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + int i; + + if(len <= 127) { + /* Encoded in 1 octet */ + if(size) *buf = (uint8_t)len; + return 1; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 8; i < 8 * (int)sizeof(len); i += 8) { + if(len >> i) + required_size++; + else + break; + } + + if(size <= required_size) + return required_size + 1; + + *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ + + /* + * Produce the len encoding, space permitting. + */ + end = buf + required_size; + for(i -= 8; buf < end; i -= 8, buf++) + *buf = (uint8_t)(len >> i); + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c new file mode 100644 index 000000000..64ec14f07 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c @@ -0,0 +1,144 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val &= 0x1F) != 0x1F) { + /* + * Simple form: everything encoded in a single octet. + * Tag Class is encoded using two least significant bits. + */ + *tag_r = (val << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; + skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + + +ssize_t +ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { + char buf[sizeof("[APPLICATION ]") + 32]; + ssize_t ret; + + ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + if(ret >= (ssize_t)sizeof(buf) || ret < 2) { + errno = EPERM; + return -1; + } + + return fwrite(buf, 1, ret, f); +} + +ssize_t +ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { + const char *type = 0; + int ret; + + switch(tag & 0x3) { + case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; + case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; + case ASN_TAG_CLASS_CONTEXT: type = ""; break; + case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; + } + + ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); + if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ + + return ret; +} + +char * +ber_tlv_tag_string(ber_tlv_tag_t tag) { + static char buf[sizeof("[APPLICATION ]") + 32]; + + (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + + return buf; +} + + +size_t +ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { + int tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + size_t required_size; + size_t i; + + if(tval <= 30) { + /* Encoded in 1 octet */ + if(size) buf[0] = (tclass << 6) | tval; + return 1; + } else if(size) { + *buf++ = (tclass << 6) | 0x1F; + size--; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { + if(tval >> i) + required_size++; + else + break; + } + + if(size < required_size) + return required_size + 1; + + /* + * Fill in the buffer, space permitting. + */ + end = buf + required_size - 1; + for(i -= 7; buf < end; i -= 7, buf++) + *buf = 0x80 | ((tval >> i) & 0x7F); + *buf = (tval & 0x7F); /* Last octet without high bit */ + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c new file mode 100644 index 000000000..5f52e3d8b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c @@ -0,0 +1,358 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_CHOICE = { + CHOICE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + CHOICE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + CHOICE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + CHOICE_decode_ber, + CHOICE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + CHOICE_decode_xer, + CHOICE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + CHOICE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + CHOICE_decode_oer, + CHOICE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + CHOICE_decode_uper, + CHOICE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + CHOICE_decode_aper, + CHOICE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + CHOICE_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + CHOICE_outmost_tag +}; + +ber_tlv_tag_t +CHOICE_outmost_tag(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + assert(tag_mode == 0); (void)tag_mode; + assert(tag == 0); (void)tag; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + if(present > 0 && present <= td->elements_count) { + const asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *) + ((const char *)ptr + elm->memb_offset); + } else { + memb_ptr = (const void *) + ((const char *)ptr + elm->memb_offset); + } + + return asn_TYPE_outmost_tag(elm->type, memb_ptr, + elm->tag_mode, elm->tag); + } else { + return (ber_tlv_tag_t)-1; + } +} + +/* + * See the definitions. + */ +static const void *_get_member_ptr(const asn_TYPE_descriptor_t *, + const void *sptr, asn_TYPE_member_t **elm, + unsigned *present); + +int +CHOICE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + return 0; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory CHOICE element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->encoding_constraints.general_constraints) { + return elm->encoding_constraints.general_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + } else { + return elm->type->encoding_constraints.general_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: no CHOICE element given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +void +CHOICE_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as CHOICE", td->name); + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + /* + * Free that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)ptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)ptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } +} + + +/* + * The following functions functions offer protection against -fshort-enums, + * compatible with little- and big-endian machines. + * If assertion is triggered, either disable -fshort-enums, or add an entry + * here with the ->pres_size of your target stracture. + * Unless the target structure is packed, the ".present" member + * is guaranteed to be aligned properly. ASN.1 compiler itself does not + * produce packed code. + */ +unsigned +_fetch_present_idx(const void *struct_ptr, unsigned pres_offset, + unsigned pres_size) { + const void *present_ptr; + unsigned present; + + present_ptr = ((const char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): present = *(const unsigned int *)present_ptr; break; + case sizeof(short): present = *(const unsigned short *)present_ptr; break; + case sizeof(char): present = *(const unsigned char *)present_ptr; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + return 0; /* If not aborted, pass back safe value */ + } + + return present; +} + +void +_set_present_idx(void *struct_ptr, unsigned pres_offset, unsigned pres_size, + unsigned present) { + void *present_ptr; + present_ptr = ((char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): *(unsigned int *)present_ptr = present; break; + case sizeof(short): *(unsigned short *)present_ptr = present; break; + case sizeof(char): *(unsigned char *)present_ptr = present; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + } +} + +static const void * +_get_member_ptr(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_TYPE_member_t **elm_ptr, unsigned *present_out) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + *elm_ptr = NULL; + *present_out = 0; + return NULL; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + *present_out = present; + + /* + * The presence index is intentionally 1-based to avoid + * treating zeroed structure as a valid one. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *const elm = &td->elements[present - 1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + *elm_ptr = elm; + return memb_ptr; + } else { + *elm_ptr = NULL; + return NULL; + } + +} + +int +CHOICE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + asn_TYPE_member_t *aelm; + asn_TYPE_member_t *belm; + unsigned apresent = 0; + unsigned bpresent = 0; + const void *amember = _get_member_ptr(td, aptr, &aelm, &apresent); + const void *bmember = _get_member_ptr(td, bptr, &belm, &bpresent); + + if(amember && bmember) { + if(apresent == bpresent) { + assert(aelm == belm); + return aelm->type->op->compare_struct(aelm->type, amember, bmember); + } else if(apresent < bpresent) { + return -1; + } else { + return 1; + } + } else if(!amember) { + return -1; + } else { + return 1; + } +} + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned +CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, const void *sptr) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + return _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); +} + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int +CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, void *sptr, + unsigned present) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned old_present; + + if(!sptr) { + return -1; + } + + if(present > td->elements_count) + return -1; + + old_present = + _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + if(present == old_present) + return 0; + + if(old_present != 0) { + assert(old_present <= td->elements_count); + ASN_STRUCT_RESET(*td, sptr); + } + + _set_present_idx(sptr, specs->pres_offset, specs->pres_size, present); + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c new file mode 100644 index 000000000..41040aaee --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c @@ -0,0 +1,181 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct = NULL; + asn_TYPE_member_t *elm = NULL; /* CHOICE's element */ + void *memb_ptr = NULL; + void **memb_ptr2 = NULL; + void *st = *sptr; + int value = 0; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + + if(specs && specs->tag2el_count > specs->ext_start) { + value = aper_get_nsnnwn(pd, specs->tag2el_count - specs->ext_start); /* extension elements range */ + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) + value = specs->from_canonical_order[value]; + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } else { + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + int present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE using ALIGNED PER", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present <= 0 || (unsigned)present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present = specs->to_canonical_order[present]; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + if(ct && ct->range_bits >= 0) { + if(present < ct->lower_bound + || present > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) + ASN__ENCODE_FAILED; + int n = present - specs->ext_start; + if(n <= 63) { + if(n < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n, 7)) ASN__ENCODE_FAILED; + } else + ASN__ENCODE_FAILED; + if(aper_open_type_put(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c new file mode 100644 index 000000000..7ad42c763 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c @@ -0,0 +1,447 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the CHOICE type. + */ +asn_dec_rval_t +CHOICE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + if(tag_mode || td->tags_count) { + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, -1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) { + /* ?Subtracted below! */ + ctx->left += rval.consumed; + } + ADVANCE(rval.consumed); + } else { + ctx->left = -1; + } + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key; + + key.el_tag = tlv_tag; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG("Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + + ASN_DEBUG("Skipping unknown tag %s", + ber_tlv_tag_string(tlv_tag)); + + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + RETURN(RC_OK); + } + } while(0); + + case 2: + /* + * PHASE 2. + * Read in the element. + */ + do { + asn_TYPE_member_t *elm;/* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &elements[ctx->step]; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + /* Set presence to be able to free it properly at any time */ + _set_present_idx(st, specs->pres_offset, + specs->pres_size, ctx->step + 1); + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, elm->type, + memb_ptr2, ptr, LEFT, + elm->tag_mode); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + RETURN(RC_FAIL); + case RC_FAIL: /* Fatal error */ + RETURN(rval.code); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } while(0); + + NEXT_PHASE(ctx); + + /* Fall through */ + case 3: + ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", + td->name, (long)ctx->left, (long)size, + tag_mode, td->tags_count); + + if(ctx->left > 0) { + /* + * The type must be fully decoded + * by the CHOICE member-specific decoder. + */ + RETURN(RC_FAIL); + } + + if(ctx->left == -1 + && !(tag_mode || td->tags_count)) { + /* + * This is an untagged CHOICE. + * It doesn't contain nothing + * except for the member itself, including all its tags. + * The decoding is completed. + */ + NEXT_PHASE(ctx); + break; + } + + /* + * Read in the "end of data chunks"'s. + */ + while(ctx->left < 0) { + ssize_t tl; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * Expected <0><0>... + */ + if(((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + continue; + } + } else { + ASN_DEBUG("Unexpected continuation in %s", + td->name); + RETURN(RC_FAIL); + } + + /* UNREACHABLE */ + } + + NEXT_PHASE(ctx); + case 4: + /* No meaningful work here */ + break; + } + + RETURN(RC_OK); +} + +asn_enc_rval_t +CHOICE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + asn_enc_rval_t erval = {0,0,0}; + const void *memb_ptr; + size_t computed_size = 0; + unsigned present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("%s %s as CHOICE", + cb ? "Encoding" : "Estimating", td->name); + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) { + if(present == 0 && td->elements_count == 0) { + /* The CHOICE is empty?! */ + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + ASN__ENCODE_FAILED; + } + + /* + * Seek over the present member of the structure. + */ + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + if(elm->optional) { + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* + * If the CHOICE itself is tagged EXPLICIT: + * T ::= [2] EXPLICIT CHOICE { ... } + * Then emit the appropriate tags. + */ + if(tag_mode == 1 || td->tags_count) { + /* + * For this, we need to pre-compute the member. + */ + ssize_t ret; + + /* Encode member with its tag */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, + elm->tag, 0, 0); + if(erval.encoded == -1) + return erval; + + /* Encode CHOICE with parent or my own tag */ + ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, + cb, app_key); + if(ret == -1) + ASN__ENCODE_FAILED; + computed_size += ret; + } + + /* + * Encode the single underlying member. + */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + + ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", + (long)erval.encoded, (long)computed_size); + + erval.encoded += computed_size; + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c new file mode 100644 index 000000000..22d5090d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef JER_ADVANCE +#define JER_ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +asn_enc_rval_t +CHOICE_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + unsigned present = 0; + + if(!sptr) + ASN__ENCODE_FAILED; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr = NULL; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + er.encoded = 0; + + ASN__CALLBACK3("{\n\"", 3, mname, mlen, "\": ", 2); + + tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK("}", 1); + // ASN__CALLBACK3("", 1); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c new file mode 100644 index 000000000..bc71a01cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c @@ -0,0 +1,375 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val & 0x3F) != 0x3F) { + /* #8.7.1 */ + *tag_r = ((val & 0x3F) << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + +asn_dec_rval_t +CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + (void)constraints; + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + switch(ctx->phase) { + case 0: { + /* + * Discover the tag. + */ + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + + tag_len = oer_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case 0: + ASN__DECODE_STARVED; + case -1: + ASN__DECODE_FAILED; + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + + t2m = (const asn_TYPE_tag2member_t *)bsearch( + &key, specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG( + "Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip open type extension */ + ASN_DEBUG( + "Not implemented skipping open type extension for tag %s", + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + } while(0); + + + ADVANCE(tag_len); + } + /* Fall through */ + case 1: { + asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_dec_rval_t rval = {0,0}; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Set presence to be able to free it properly at any time */ + (void)CHOICE_variant_set_presence(td, st, ctx->step + 1); + + if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) { + ssize_t got = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + if(got < 0) ASN__DECODE_FAILED; + if(got == 0) ASN__DECODE_STARVED; + rval.code = RC_OK; + rval.consumed = got; + } else { + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + rval.consumed += consumed_myself; + switch(rval.code) { + case RC_OK: + NEXT_PHASE(ctx); + case RC_WMORE: + break; + case RC_FAIL: + SET_PHASE(ctx, 3); /* => 3 */ + } + return rval; + } + case 2: + /* Already decoded everything */ + RETURN(RC_OK); + case 3: + /* Failed to decode, after all */ + RETURN(RC_FAIL); + } + + RETURN(RC_FAIL); +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + + if(tval < 0x3F) { + uint8_t b = (uint8_t)((tclass << 6) | tval); + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } else { + uint8_t buf[1 + 2 * sizeof(tval)]; + uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */ + size_t encoded; + for(; ; tval >>= 7) { + if(tval >> 7) { + *b-- = 0x80 | (tval & 0x7f); + } else { + *b-- = tval & 0x7f; + break; + } + } + *b = (uint8_t)((tclass << 6) | 0x3F); + encoded = sizeof(buf) - (b - buf); + if(cb(b, encoded, app_key) < 0) { + return -1; + } + return encoded; + } + +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +CHOICE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + unsigned present; + const void *memb_ptr; + ber_tlv_tag_t tag; + ssize_t tag_len; + asn_enc_rval_t er = {0, 0, 0}; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("OER %s encoding as CHOICE", td->name); + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN_DEBUG("CHOICE %s member is not selected", td->name); + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag); + if(tag == 0) { + ASN__ENCODE_FAILED; + } + + tag_len = oer_put_tag(tag, cb, app_key); + if(tag_len < 0) { + ASN__ENCODE_FAILED; + } + + if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) { + ssize_t encoded = oer_open_type_put(elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(encoded < 0) ASN__ENCODE_FAILED; + er.encoded = tag_len + encoded; + } else { + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded >= 0) er.encoded += tag_len; + } + + return er; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c new file mode 100644 index 000000000..a97202fc2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +CHOICE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + /* + * Print that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Print member's name and stuff */ + if(0) { + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + } + + return elm->type->op->print_struct(elm->type, memb_ptr, ilevel, + cb, app_key); + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c new file mode 100644 index 000000000..fd0a10163 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +CHOICE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_random_fill_result_t res; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm; + unsigned present; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *st = *sptr; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + present = asn_random_between(1, td->elements_count); + elm = &td->elements[present - 1]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + res = elm->type->op->random_fill(elm->type, memb_ptr2, + &elm->encoding_constraints, max_length); + _set_present_idx(st, specs->pres_offset, specs->pres_size, present); + if(res.code == ARFILL_OK) { + *sptr = st; + } else { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + } + + return res; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c new file mode 100644 index 000000000..77aab6d6a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c @@ -0,0 +1,191 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +CHOICE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct; + asn_TYPE_member_t *elm; /* CHOICE's element */ + void *memb_ptr; + void **memb_ptr2; + void *st = *sptr; + int value; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) { + ASN_DEBUG("CHOICE presence from wire %d", value); + value = specs->from_canonical_order[value]; + ASN_DEBUG("CHOICE presence index effective %d", value); + } + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } else { + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + unsigned present; + int present_enc; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present_enc = specs->to_canonical_order[present]; + else + present_enc = present; + + if(ct && ct->range_bits >= 0) { + if(present_enc < ct->lower_bound + || present_enc > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG( + "CHOICE member %d (enc %d) is an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG("CHOICE member %d (enc %d) is not an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + + elm = &td->elements[present]; + ASN_DEBUG("CHOICE member \"%s\" %d (as %d)", elm->name, present, + present_enc); + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present_enc, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) ASN__ENCODE_FAILED; + if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) + ASN__ENCODE_FAILED; + if(uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c new file mode 100644 index 000000000..45b4290a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c @@ -0,0 +1,316 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +CHOICE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value of a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + if(ctx->phase == 0 && !*xml_tag) + ctx->phase = 1; /* Skip the outer tag checking phase */ + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Only waiting for closing tag. + * Phase 4: Skipping unknown extensions. + * Phase 5: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 4;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the member. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + unsigned old_present; + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Start/Continue decoding the inner member */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, + elm->name, + buf_ptr, size); + XER_ADVANCE(tmprval.consumed); + ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", + elm->type->name, tmprval.code); + old_present = _fetch_present_idx(st, + specs->pres_offset, + specs->pres_size); + assert(old_present == 0 || old_present == edx + 1); + /* Record what we've got */ + _set_present_idx(st, + specs->pres_offset, + specs->pres_size, edx + 1); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 3; + /* Fall through */ + } + + /* No need to wait for closing tag; special mode. */ + if(ctx->phase == 3 && !*xml_tag) { + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + xml_tag, tcv); + + /* Skip the extensions section */ + if(ctx->phase == 4) { + ASN_DEBUG("skip_unknown(%d, %ld)", + tcv, (long)ctx->left); + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 5; + RETURN(RC_FAIL); + case 1: + ctx->phase = 3; + /* Fall through */ + case 0: + XER_ADVANCE(ch_size); + continue; + case 2: + ctx->phase = 3; + break; + } + } + + switch(tcv) { + case XCT_BOTH: + break; /* No CHOICE? */ + case XCT_CLOSING: + if(ctx->phase != 3) + break; + XER_ADVANCE(ch_size); + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + if(ctx->phase != 1) + break; /* Really unexpected */ + + /* + * Search which inner member corresponds to this tag. + */ + for(edx = 0; edx < td->elements_count; edx++) { + elm = &td->elements[edx]; + tcv = xer_check_tag(buf_ptr,ch_size,elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + edx = td->elements_count; + break; /* Phase out */ + } + break; + } + if(edx != td->elements_count) + continue; + + /* It is expected extension */ + if(specs->ext_start != -1) { + ASN_DEBUG("Got anticipated extension"); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + ctx->phase = 3; /* Terminating */ + } else { + ctx->left = 1; + ctx->phase = 4; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" + " (ph=%d, tag=%s)", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + td->name, ctx->phase, xml_tag); + break; + } + + ctx->phase = 5; /* Phase out, just in case */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +CHOICE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + unsigned present = 0; + + if(!sptr) + ASN__ENCODE_FAILED; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr = NULL; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + er.encoded = 0; + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c new file mode 100644 index 000000000..8397d0c1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c @@ -0,0 +1,197 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_SEQUENCE = { + SEQUENCE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SEQUENCE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SEQUENCE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SEQUENCE_decode_ber, + SEQUENCE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SEQUENCE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SEQUENCE_decode_oer, + SEQUENCE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SEQUENCE_decode_aper, + SEQUENCE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SEQUENCE_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +void +SEQUENCE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + size_t edx; + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_struct_ctx_t *ctx; /* Decoder context */ + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as SEQUENCE", td->name); + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + /* Clean parsing context */ + ctx = (asn_struct_ctx_t *)((char *)sptr + specs->ctx_offset); + FREEMEM(ctx->ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset( + sptr, 0, + ((const asn_SEQUENCE_specifics_t *)(td->specifics))->struct_size); + break; + } +} + +int +SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t edx; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Iterate over structure members and check their validity. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + asn_constr_check_f *constr; + int ret; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + continue; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + constr = elm->encoding_constraints.general_constraints; + if(!constr) + constr = elm->type->encoding_constraints.general_constraints; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + return 0; +} + +int +SEQUENCE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + size_t edx; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *amemb; + const void *bmemb; + int ret; + + if(elm->flags & ATF_POINTER) { + amemb = + *(const void *const *)((const char *)aptr + elm->memb_offset); + bmemb = + *(const void *const *)((const char *)bptr + elm->memb_offset); + if(!amemb) { + if(!bmemb) continue; + if(elm->default_value_cmp + && elm->default_value_cmp(bmemb) == 0) { + /* A is absent, but B is present and equal to DEFAULT */ + continue; + } + return -1; + } else if(!bmemb) { + if(elm->default_value_cmp + && elm->default_value_cmp(amemb) == 0) { + /* B is absent, but A is present and equal to DEFAULT */ + continue; + } + return 1; + } + } else { + amemb = (const void *)((const char *)aptr + elm->memb_offset); + bmemb = (const void *)((const char *)bptr + elm->memb_offset); + } + + ret = elm->type->op->compare_struct(elm->type, amemb, bmemb); + if(ret != 0) return ret; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c new file mode 100644 index 000000000..9c5d6cded --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c @@ -0,0 +1,92 @@ +/*- + * Copyright (c) 2003, 2004, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_TYPE_operation_t asn_OP_SEQUENCE_OF = { + SEQUENCE_OF_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SEQUENCE_OF_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SEQUENCE_OF_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SEQUENCE_OF_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SEQUENCE_OF_decode_oer, /* Same as SET OF decoder. */ + SEQUENCE_OF_encode_oer, /* Same as SET OF encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SEQUENCE_OF_decode_uper, /* Same as SET OF decoder */ + SEQUENCE_OF_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SEQUENCE_OF_decode_aper, + SEQUENCE_OF_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SEQUENCE_OF_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +int +SEQUENCE_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_sequence_ *a = _A_CSEQUENCE_FROM_VOID(aptr); + const asn_anonymous_sequence_ *b = _A_CSEQUENCE_FROM_VOID(bptr); + ssize_t idx; + + if(a && b) { + ssize_t common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, a->array[idx], b->array[idx]); + if(ret) return ret; + } + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c new file mode 100644 index 000000000..ff3ae8bc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + asn_TYPE_member_t *elm = td->elements; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF size (%d) using ALIGNED PER", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = (list->count < ct->lower_bound + || list->count > ct->upper_bound); + ASN_DEBUG("lb %lld ub %lld %s", + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) + ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) + ASN__ENCODE_FAILED; + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ +/* + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; +*/ + if (ct->lower_bound == ct->upper_bound && ct->upper_bound < 65536) { + /* No length determinant */ + } else if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) + ASN__ENCODE_FAILED; + } + + for(seq = -1; seq < list->count;) { + ssize_t mayEncode; + int need_eom = 0; + if(seq < 0) seq = 0; + if(ct && ct->effective_bits >= 0) { + mayEncode = list->count; + } else { + mayEncode = aper_put_length(po, -1, -1, list->count - seq, &need_eom); + if(mayEncode < 0) ASN__ENCODE_FAILED; + } + + while(mayEncode--) { + void *memb_ptr = list->array[seq++]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->aper_encoder(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, po); + if(er.encoded == -1) + ASN__ENCODE_FAILED; + } + + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c new file mode 100644 index 000000000..178f8654d --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The DER encoder of the SEQUENCE OF type. + */ +asn_enc_rval_t +SEQUENCE_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(ptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + asn_enc_rval_t erval = {0,0,0}; + int edx; + + ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, + cb, app_key); + if(encoding_size == -1) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + computed_size += encoding_size; + if(!cb) { + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + encoding_size += erval.encoded; + } + + if(computed_size != (size_t)encoding_size) { + /* + * Encoded size is not equal to the computed size. + */ + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + } else { + erval.encoded = computed_size; + erval.structure_ptr = 0; + erval.failed_type = 0; + } + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c new file mode 100644 index 000000000..4c366a6ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 + : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = 0; + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + ASN__CALLBACK("[", 1); + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("{\"", 2, mname, mlen, "\":", 2); + } + + tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); + ASN__CALLBACK3("\"", 1, name, len, "\"", 1); + } + + if(mname) { + ASN__CALLBACK("}", 1); + } + if (i != list->count - 1) { + ASN__CALLBACK(",", 1); + } + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + ASN__CALLBACK("]", 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c new file mode 100644 index 000000000..eb20a0701 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + const asn_TYPE_member_t *elm = td->elements; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, + po); + if(er.encoded == -1) ASN__ENCODE_FAILED; + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c new file mode 100644 index 000000000..7bd323677 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 + : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c new file mode 100644 index 000000000..895b6daf3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c @@ -0,0 +1,457 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +asn_dec_rval_t +SEQUENCE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (APER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ +#if 0 + int padding; +#endif + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } +#if 0 + /* Get Padding */ + padding = (8 - (pd->moved % 8)) % 8; + if(padding > 0) + ASN_DEBUG("For element %s,offset= %ld Padding bits = %d", td->name, pd->moved, padding); +#if 0 /* old way of removing padding */ + per_get_few_bits(pd, padding); +#else /* Experimental fix proposed by @mhanna123 */ + if(edx != (td->elements_count-1)) + per_get_few_bits(pd, padding); + else { + if(specs->roms_count && (padding > 0)) + ASN_DEBUG(">>>>> not skipping padding of %d bits for element:%ld out of %d", padding, edx, td->elements_count); + else + per_get_few_bits(pd, padding); + } +#endif /* dealing with padding */ +#endif + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + if (OPEN_TYPE_aper_is_unknown_type(td, st, elm)) { + rv = OPEN_TYPE_aper_unknown_type_discard_bytes(pd); + FREEMEM(opres); + return rv; + } + rv = OPEN_TYPE_aper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = aper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) + ASN__DECODE_STARVED; + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %zd bits (%x..)", + td->name, bmlength, *epres); + + /* Deal with padding */ + if (aper_get_align(pd) < 0) + ASN__DECODE_STARVED; + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%zu is not extension", edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: + break; + case 0: + continue; + default: + if(aper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + } + break; + } + + FREEMEM(epres); + } + + /* Fill DEFAULT members in extensions */ + for(edx = specs->roms_count; edx < specs->roms_count + + specs->aoms_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void **memb_ptr2; /* Pointer to member pointer */ + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE_handle_extensions_aper(const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%s (@%zu) is not extension", elm->type->name, edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s (@%zu) present => %d", + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) + return -1; + /* Encode as open type field */ + if(po2 && present && aper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po2)) + return -1; + + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (APER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE_handle_extensions_aper(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %zu not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s", td->name, elm->name); + er = elm->type->op->aper_encoder(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po); + if(er.encoded == -1) + return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(aper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE_handle_extensions_aper(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE_handle_extensions_aper(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c new file mode 100644 index 000000000..e982172d3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c @@ -0,0 +1,612 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef PHASE_OUT +#define PHASE_OUT(ctx) \ + do { \ + ctx->phase = 10; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +/* + * Tags are canonically sorted in the tag2element map. + */ +static int +_t2e_cmp(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) { + if(a->el_no > b->el_no) + return 1; + /* + * Important: we do not check + * for a->el_no <= b->el_no! + */ + return 0; + } else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the SEQUENCE type. + */ +asn_dec_rval_t +SEQUENCE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* SEQUENCE element's index */ + + ASN_DEBUG("Decoding %s as SEQUENCE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next member from the list of + * this structure's elements. + * (ctx->step) stores the member being processed + * between invocations and the microphase {0,1} of parsing + * that member: + * step = ( * 2 + ). + */ + for(edx = ((size_t)ctx->step >> 1); edx < td->elements_count; + edx++, ctx->step = (ctx->step & ~1) + 2) { + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + ssize_t tag_len; /* Length of TLV's T */ + size_t opt_edx_end; /* Next non-optional element */ + size_t n; + int use_bsearch; + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + ASN_DEBUG("In %s SEQUENCE left %d, edx=%" ASN_PRI_SIZE " flags=%d" + " opt=%d ec=%d", + td->name, (int)ctx->left, edx, + elements[edx].flags, elements[edx].optional, + td->elements_count); + + if(ctx->left == 0 /* No more stuff is expected */ + && ( + /* Explicit OPTIONAL specification reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx))) { + ASN_DEBUG("End of SEQUENCE %s", td->name); + /* + * Found the legitimate end of the structure. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("Current tag in %s SEQUENCE for element %" ASN_PRI_SIZE " " + "(%s) is %s encoded in %d bytes, of frame %ld", + td->name, edx, elements[edx].name, + ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } else if(((const uint8_t *)ptr)[1] == 0) { + ASN_DEBUG("edx = %" ASN_PRI_SIZE ", opt = %d, ec=%d", edx, + elements[edx].optional, td->elements_count); + if((edx + elements[edx].optional == td->elements_count) + || IN_EXTENSION_GROUP(specs, edx)) { + /* + * Yeah, baby! Found the terminator + * of the indefinite length structure. + */ + /* + * Proceed to the canonical + * finalization function. + * No advancing is necessary. + */ + goto phase3; + } + } + } + + /* + * Find the next available type with this tag. + */ + use_bsearch = 0; + opt_edx_end = edx + elements[edx].optional + 1; + if(opt_edx_end > td->elements_count) + opt_edx_end = td->elements_count; /* Cap */ + else if(opt_edx_end - edx > 8) { + /* Limit the scope of linear search... */ + opt_edx_end = edx + 8; + use_bsearch = 1; + /* ... and resort to bsearch() */ + } + for(n = edx; n < opt_edx_end; n++) { + if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { + /* + * Found element corresponding to the tag + * being looked at. + * Reposition over the right element. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].flags & ATF_ANY_TYPE) { + /* + * This is the ANY type, which may bear + * any flag whatsoever. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].tag == (ber_tlv_tag_t)-1) { + use_bsearch = 1; + break; + } + } + if(use_bsearch) { + /* + * Resort to a binary search over + * sorted array of tags. + */ + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + key.el_no = edx; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _t2e_cmp); + if(t2m) { + const asn_TYPE_tag2member_t *best = 0; + const asn_TYPE_tag2member_t *t2m_f, *t2m_l; + size_t edx_max = edx + elements[edx].optional; + /* + * Rewind to the first element with that tag, + * `cause bsearch() does not guarantee order. + */ + t2m_f = t2m + t2m->toff_first; + t2m_l = t2m + t2m->toff_last; + for(t2m = t2m_f; t2m <= t2m_l; t2m++) { + if(t2m->el_no > edx_max) break; + if(t2m->el_no < edx) continue; + best = t2m; + } + if(best) { + edx = best->el_no; + ctx->step = 1 + 2 * edx; + goto microphase2; + } + } + n = opt_edx_end; + } + if(n == opt_edx_end) { + /* + * If tag is unknown, it may be either + * an unknown (thus, incorrect) tag, + * or an extension (...), + * or an end of the indefinite-length structure. + */ + if(!IN_EXTENSION_GROUP(specs, + edx + elements[edx].optional)) { + ASN_DEBUG("Unexpected tag %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + ASN_DEBUG("Expected tag %s (%s)%s", + ber_tlv_tag_string(elements[edx].tag), + elements[edx].name, + elements[edx].optional ?" or alternatives":""); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + edx += elements[edx].optional; + + ASN_DEBUG("Skipping unexpected %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + ASN_DEBUG("Skip length %d in %s", + (int)skip, td->name); + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + ctx->step -= 2; + edx--; + continue; /* Try again with the next tag */ + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elements[edx].flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elements[edx].memb_offset; + memb_ptr2 = &memb_ptr; + } + /* + * Invoke the member fetch routine according to member's type + */ + if(elements[edx].flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_ber_get(opt_codec_ctx, td, st, &elements[edx], ptr, LEFT); + } else { + rval = elements[edx].type->op->ber_decoder(opt_codec_ctx, + elements[edx].type, + memb_ptr2, ptr, LEFT, + elements[edx].tag_mode); + } + ASN_DEBUG("In %s SEQUENCE decoded %" ASN_PRI_SIZE " %s of %d " + "in %d bytes rval.code %d, size=%d", + td->name, edx, elements[edx].type->name, + (int)LEFT, (int)rval.consumed, rval.code, (int)size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", + (long)ctx->left, (long)size); + /* Fall through */ + case RC_FAIL: /* Fatal error */ + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all structure members) */ + + phase3: + ctx->phase = 3; + /* Fall through */ + case 3: /* 00 and other tags expected */ + case 4: /* only 00's expected */ + + ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", + td->name, (long)ctx->left, (long)size); + + /* + * Skip everything until the end of the SEQUENCE. + */ + while(ctx->left) { + ssize_t tl, ll; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * If expected <0><0>... + */ + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + ctx->phase = 4; + continue; + } + } + + if(!IN_EXTENSION_GROUP(specs, td->elements_count) + || ctx->phase == 4) { + ASN_DEBUG("Unexpected continuation " + "of a non-extensible type " + "%s (SEQUENCE): %s", + td->name, + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tl, LEFT - tl); + switch(ll) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(tl + ll); + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + + +/* + * The DER encoder of the SEQUENCE type. + */ +asn_enc_rval_t +SEQUENCE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t computed_size = 0; + asn_enc_rval_t erval = {0,0,0}; + ssize_t ret; + size_t edx; + + ASN_DEBUG("%s %s as SEQUENCE", + cb?"Encoding":"Estimating", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + erval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s estimated %ld bytes", + edx, elm->name, (long)erval.encoded); + } + + /* + * Encode the TLV for the sequence itself. + */ + ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); + if(ret == -1) + ASN__ENCODE_FAILED; + erval.encoded = computed_size + ret; + + if(!cb) ASN__ENCODED_OK(erval); + + /* + * Encode all members. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t tmperval = {0,0,0}; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) continue; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + tmperval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, cb, app_key); + if(tmperval.encoded == -1) + return tmperval; + computed_size -= tmperval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s of SEQUENCE %s encoded in %ld bytes", + edx, elm->name, td->name, (long)tmperval.encoded); + } + + if(computed_size != 0) + /* + * Encoded size is not equal to the computed size. + */ + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c new file mode 100644 index 000000000..6451f0ca6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c @@ -0,0 +1,84 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t SEQUENCE_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum jer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + int xcan = 0; + asn_TYPE_descriptor_t *tmp_def_val_td = 0; + void *tmp_def_val = 0; + size_t edx; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + int bAddComma = 0; + ASN__CALLBACK("{\n", 2); + for(edx = 0; edx < td->elements_count; edx++) { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + assert(tmp_def_val == 0); + if(elm->default_value_set) { + if(elm->default_value_set(&tmp_def_val)) { + ASN__ENCODE_FAILED; + } else { + memb_ptr = tmp_def_val; + tmp_def_val_td = elm->type; + } + } else if(elm->optional) { + continue; + } else { + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if (bAddComma == 1) { + ASN__CALLBACK(",", 1); + bAddComma = 0; + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("\"", 1, mname, mlen, "\": ", 3); + + /* Print the member itself */ + tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmp_def_val) { + ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + tmp_def_val = 0; + } + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if (edx != td->elements_count - 1) { + bAddComma = 1; + } + } + ASN__CALLBACK("}", 1); + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c new file mode 100644 index 000000000..a3bdb7bda --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c @@ -0,0 +1,557 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +#define IN_ROOT_GROUP_PRED(edx) \ + edx < (specs->first_extension < 0 ? td->elements_count \ + : (size_t)specs->first_extension) + +#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * Return pointer to a member. + */ +static void ** +element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return (void **)((char *)struct_ptr + elm->memb_offset); + } else { + assert(tmp_save_ptr); + *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset); + return tmp_save_ptr; + } +} + +static const void * +element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return *(const void *const *)((const char *)struct_ptr + + elm->memb_offset); + } else { + return (const void *)((const char *)struct_ptr + elm->memb_offset); + } +} + +asn_dec_rval_t +SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch preamble. + */ + asn_bit_data_t *preamble; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + size_t preamble_bytes = ((7 + preamble_bits) >> 3); + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name); + + ASN_DEBUG( + "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)", + preamble_bits, td->name, has_extensions_bit); + + if(preamble_bytes > size) { + ASN__DECODE_STARVED; + } + + preamble = asn_bit_data_new_contiguous(ptr, preamble_bits); + if(!preamble) { + RETURN(RC_FAIL); + } + preamble->nboff = has_extensions_bit; + ctx->ptr = preamble; + ADVANCE(preamble_bytes); + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_bit_data_t *preamble = ctx->ptr; + size_t edx; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name); + + assert(preamble); + + for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx); + edx++, ctx->step = (ctx->step & ~1) + 2) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + ASN_DEBUG("Decoding %s->%s", td->name, elm->name); + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + if(ctx->step & 1) { + goto microphase2_decode_continues; + } + + + if(elm->optional) { + int32_t present = asn_get_few_bits(preamble, 1); + if(present < 0) { + ASN_DEBUG("Presence map ended prematurely: %d", present); + RETURN(RC_FAIL); + } else if(present == 0) { + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + void *tmp; + if(elm->default_value_set( + element_ptrptr(st, elm, &tmp))) { + RETURN(RC_FAIL); + } + } + /* The member is not present. */ + continue; + } + /* Present OPTIONAL or DEFAULT component. */ + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2_decode_continues: + if(elm->flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + void *save_memb_ptr; /* Temporary reference. */ + void **memb_ptr2; /* Pointer to a pointer to a memmber */ + + memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr); + + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + switch(rval.code) { + case RC_OK: + ADVANCE(rval.consumed); + break; + case RC_WMORE: + ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name, + elm->name); + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + case RC_FAIL: + ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name, + elm->name); + RETURN(RC_FAIL); + } + } /* for(all root members) */ + + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 2: + assert(ctx->ptr); + { + /* Cleanup preamble. */ + asn_bit_data_t *preamble = ctx->ptr; + asn_bit_data_t *extadds; + int has_extensions_bit = (specs->first_extension >= 0); + int extensions_present = + has_extensions_bit + && (preamble->buffer == NULL + || (((const uint8_t *)preamble->buffer)[0] & 0x80)); + uint8_t unused_bits; + size_t len = 0; + ssize_t len_len; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name); + + preamble->buffer = 0; /* Will do extensions_present==1 next time. */ + + if(!extensions_present) { + ctx->phase = 10; + RETURN(RC_OK); + } + + /* + * X.696 (08/2015) #16.1 (c), #16.4 + * Read in the extension addition presence bitmap. + */ + + len_len = oer_fetch_length(ptr, size, &len); + if(len_len > 0) { + ADVANCE(len_len); + } else if(len_len < 0) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + + if(len == 0) { + /* 16.4.1-2 */ + RETURN(RC_FAIL); + } else if(len > size) { + RETURN(RC_WMORE); + } + + /* Account for unused bits */ + unused_bits = 0x7 & *(const uint8_t *)ptr; + ADVANCE(1); + len--; + if(unused_bits && len == 0) { + RETURN(RC_FAIL); + } + + /* Get the extensions map */ + extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits); + if(!extadds) { + RETURN(RC_FAIL); + } + FREEMEM(preamble); + ctx->ptr = extadds; + ADVANCE(len); + } + NEXT_PHASE(ctx); + ctx->step = + (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + /* Fall through */ + case 3: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name); + for(; ctx->step < (signed)td->elements_count; ctx->step++) { + asn_bit_data_t *extadds = ctx->ptr; + size_t edx = ctx->step; + asn_TYPE_member_t *elm = &td->elements[edx]; + void *tmp_memb_ptr; + void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr); + + switch(asn_get_few_bits(extadds, 1)) { + case -1: + /* + * Not every one of our extensions is known to the remote side. + * Continue filling in their defaults though. + */ + /* Fall through */ + case 0: + /* Fill-in DEFAULT */ + if(elm->default_value_set + && elm->default_value_set(memb_ptr2)) { + RETURN(RC_FAIL); + } + continue; + case 1: { + /* Read OER open type */ + ssize_t ot_size = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + assert(ot_size <= (ssize_t)size); + if(ot_size > 0) { + ADVANCE(ot_size); + } else if(ot_size < 0) { + RETURN(RC_FAIL); + } else { + /* Roll back open type parsing */ + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + break; + } + default: + RETURN(RC_FAIL); + } + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 4: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name); + /* Read in the rest of Open Types while ignoring them */ + for(;;) { + asn_bit_data_t *extadds = ctx->ptr; + switch(asn_get_few_bits(extadds, 1)) { + case 0: + continue; + case 1: { + ssize_t skipped = oer_open_type_skip(ptr, size); + if(skipped > 0) { + ADVANCE(skipped); + } else if(skipped < 0) { + RETURN(RC_FAIL); + } else { + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + continue; + } + case -1: + /* No more Open Type encoded components */ + break; + default: + RETURN(RC_FAIL); + } + break; + } + } + + RETURN(RC_OK); +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + size_t computed_size = 0; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + uint32_t has_extensions = 0; + size_t edx; + int ret; + + (void)constraints; + + if(preamble_bits) { + asn_bit_outp_t preamble; + + memset(&preamble, 0, sizeof(preamble)); + preamble.output = cb; + preamble.op_key = app_key; + + if(has_extensions_bit) { + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default values in extensions */ + } else { + has_extensions = 1; + break; + } + } + } + ret = asn_put_few_bits(&preamble, has_extensions, 1); + assert(ret == 0); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Encode optional components bitmap. + */ + if(specs->roms_count) { + FOR_IN_ROOT_GROUP(edx) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + if(elm->optional) { + const void *memb_ptr = element_ptr(sptr, elm); + uint32_t has_component = memb_ptr != NULL; + if(has_component && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + has_component = 0; + } + ret = asn_put_few_bits(&preamble, has_component, 1); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + } + } + + asn_put_aligned_flush(&preamble); + computed_size += preamble.flushed_bytes; + } /* if(preamble_bits) */ + + /* + * Put root components and extensions root. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t er = {0,0,0}; + const void *memb_ptr; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Skip default values in encoding */ + continue; + } + } else { + if(elm->optional) continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + if(!elm->type->op->oer_encoder) { + ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name); + ASN__ENCODE_FAILED; + } + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded == -1) { + ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name, + elm->name); + return er; + } + computed_size += er.encoded; + } + + /* + * Before encode extensions, encode extensions additions presence bitmap + # X.696 (08/2015) #16.4. + */ + if(has_extensions) { + asn_bit_outp_t extadds; + + /* Special case allowing us to use exactly one byte for #8.6 */ + size_t aoms_length_bits = specs->aoms_count; + size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3; + uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07)); + + assert(1 + aoms_length_bytes <= 127); + + memset(&extadds, 0, sizeof(extadds)); + extadds.output = cb; + extadds.op_key = app_key; + + /* #8.6 length determinant */ + ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Number of unused bytes, #16.4.2 */ + ret = asn_put_few_bits(&extadds, unused_bits, 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Encode presence bitmap #16.4.3 */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + memb_ptr = 0; /* Do not encode default value. */ + } + ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1); + } + if(ret < 0) ASN__ENCODE_FAILED; + + asn_put_aligned_flush(&extadds); + computed_size += extadds.flushed_bytes; + + /* Now, encode extensions */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default value. */ + } else { + ssize_t wrote = oer_open_type_put( + elm->type, elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(wrote == -1) { + ASN__ENCODE_FAILED; + } + computed_size += wrote; + } + } else if(!elm->optional) { + ASN__ENCODE_FAILED; + } + } + } /* if(has_extensions) */ + + + { + asn_enc_rval_t er = {0, 0, 0}; + er.encoded = computed_size; + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c new file mode 100644 index 000000000..7f9e231a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +SEQUENCE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t edx; + int ret; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) continue; + /* Print line */ + /* Fall through */ + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Indentation */ + _i_INDENT(1); + + /* Print the member's name and stuff */ + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + + /* Print the member itself */ + ret = elm->type->op->print_struct(elm->type, memb_ptr, ilevel + 1, + cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c new file mode 100644 index 000000000..b464f5722 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +SEQUENCE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + void *st = *sptr; + size_t edx; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + for(edx = 0; edx < td->elements_count; edx++) { + const asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_random_fill_result_t tmpres; + + if(elm->optional && asn_random_between(0, 4) == 2) { + /* Sometimes decide not to fill the optional value */ + continue; + } + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + tmpres = elm->type->op->random_fill( + elm->type, memb_ptr2, &elm->encoding_constraints, + max_length > result_ok.length ? max_length - result_ok.length : 0); + switch(tmpres.code) { + case ARFILL_OK: + result_ok.length += tmpres.length; + continue; + case ARFILL_SKIPPED: + assert(!(elm->flags & ATF_POINTER) || *memb_ptr2 == NULL); + continue; + case ARFILL_FAILED: + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return tmpres; + } + } + + *sptr = st; + + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c new file mode 100644 index 000000000..b235f4de9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c @@ -0,0 +1,429 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +asn_dec_rval_t +SEQUENCE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; + edx < (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + rv = OPEN_TYPE_uper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = uper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", + td->name, (long)bmlength, *epres); + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, + *memb_ptr2); + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: break; + case 0: continue; + default: + if(uper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + ASN_DEBUG("Skipped overflow extension"); + continue; + } + break; + } + + FREEMEM(epres); + } + + if(specs->first_extension >= 0) { + unsigned i; + /* Fill DEFAULT members in extensions */ + for(i = specs->roms_count; i < specs->roms_count + specs->aoms_count; + i++) { + asn_TYPE_member_t *elm; + void **memb_ptr2; /* Pointer to member pointer */ + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE__handle_extensions(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s:%s (@%" ASN_PRI_SIZE ") present => %d", elm->name, + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) { + return -1; + } + /* Encode as open type field */ + if(po2 && present + && uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po2)) + return -1; + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE__handle_extensions(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s:%s", td->name, elm->name, elm->type->name); + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, *memb_ptr2, + po); + if(er.encoded == -1) return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of extensions %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(uper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE__handle_extensions(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE__handle_extensions(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c new file mode 100644 index 000000000..c6475f78a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c @@ -0,0 +1,348 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = (num_bytes); \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SEQUENCE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Skipping unknown extensions. + * Phase 4: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 3;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the inner member of a sequence. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr_dontuse; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr_dontuse = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr_dontuse; /* Only use of memb_ptr_dontuse */ + } + + if(elm->flags & ATF_OPEN_TYPE) { + tmprval = OPEN_TYPE_xer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + /* Invoke the inner type decoder, m.b. multiple times */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + ptr, size); + } + XER_ADVANCE(tmprval.consumed); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 1; /* Back to body processing */ + ctx->step = ++edx; + ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", + ctx->phase, ctx->step); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", + tcv, ctx->phase, xml_tag); + + /* Skip the extensions section */ + if(ctx->phase == 3) { + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 4; + RETURN(RC_FAIL); + case 0: + XER_ADVANCE(ch_size); + continue; + case 1: + XER_ADVANCE(ch_size); + ctx->phase = 1; + continue; + case 2: + ctx->phase = 1; + break; + } + } + + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + if(edx >= td->elements_count || + /* Explicit OPTIONAL specs reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx)) { + XER_ADVANCE(ch_size); + ctx->phase = 4; /* Phase out */ + RETURN(RC_OK); + } else { + ASN_DEBUG("Premature end of XER SEQUENCE"); + RETURN(RC_FAIL); + } + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%" ASN_PRI_SIZE "", + tcv, ctx->phase, edx); + if(ctx->phase != 1) { + break; /* Really unexpected */ + } + + if(edx < td->elements_count) { + /* + * Search which member corresponds to this tag. + */ + size_t n; + size_t edx_end = edx + elements[edx].optional + 1; + if(edx_end > td->elements_count) + edx_end = td->elements_count; + for(n = edx; n < edx_end; n++) { + elm = &td->elements[n]; + tcv = xer_check_tag(ptr, ch_size, elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx = n; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + n = edx_end; + break; /* Phase out */ + } + break; + } + if(n != edx_end) + continue; + } else { + ASN_DEBUG("Out of defined members: %" ASN_PRI_SIZE "/%u", + edx, td->elements_count); + } + + /* It is expected extension */ + if(IN_EXTENSION_GROUP(specs, + edx + (edx < td->elements_count + ? elements[edx].optional : 0))) { + ASN_DEBUG("Got anticipated extension at %" ASN_PRI_SIZE "", + edx); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + } else { + ctx->left = 1; + ctx->phase = 3; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", + size>0?((const char *)ptr)[0]:'.', + size>1?((const char *)ptr)[1]:'.', + size>2?((const char *)ptr)[2]:'.', + size>3?((const char *)ptr)[3]:'.', + size>4?((const char *)ptr)[4]:'.', + size>5?((const char *)ptr)[5]:'.'); + break; + } + + ctx->phase = 4; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +SEQUENCE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + int xcan = (flags & XER_F_CANONICAL); + asn_TYPE_descriptor_t *tmp_def_val_td = 0; + void *tmp_def_val = 0; + size_t edx; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + assert(tmp_def_val == 0); + if(elm->default_value_set) { + if(elm->default_value_set(&tmp_def_val)) { + ASN__ENCODE_FAILED; + } else { + memb_ptr = tmp_def_val; + tmp_def_val_td = elm->type; + } + } else if(elm->optional) { + continue; + } else { + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + /* Print the member itself */ + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmp_def_val) { + ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + tmp_def_val = 0; + } + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c new file mode 100644 index 000000000..97a7cac0c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c @@ -0,0 +1,371 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_SET_OF = { + SET_OF_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SET_OF_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SET_OF_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SET_OF_decode_ber, + SET_OF_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SET_OF_decode_xer, + SET_OF_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SET_OF_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SET_OF_decode_oer, + SET_OF_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SET_OF_decode_uper, + SET_OF_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SET_OF_decode_aper, + SET_OF_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SET_OF_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +/* Append bytes to the above structure */ +static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { + struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; + + if(el_buf->length + size > el_buf->allocated_size) { + size_t new_size = el_buf->allocated_size ? el_buf->allocated_size : 8; + void *p; + + do { + new_size <<= 2; + } while(el_buf->length + size > new_size); + + p = REALLOC(el_buf->buf, new_size); + if(p) { + el_buf->buf = p; + el_buf->allocated_size = new_size; + } else { + return -1; + } + } + + memcpy(el_buf->buf + el_buf->length, buffer, size); + + el_buf->length += size; + return 0; +} + +static void assert_unused_bits(const struct _el_buffer* p) { + if(p->length) { + assert((p->buf[p->length-1] & ~(0xff << p->bits_unused)) == 0); + } else { + assert(p->bits_unused == 0); + } +} + +static int _el_buf_cmp(const void *ap, const void *bp) { + const struct _el_buffer *a = (const struct _el_buffer *)ap; + const struct _el_buffer *b = (const struct _el_buffer *)bp; + size_t common_len; + int ret = 0; + + if(a->length < b->length) + common_len = a->length; + else + common_len = b->length; + + if (a->buf && b->buf) { + ret = memcmp(a->buf, b->buf, common_len); + } + if(ret == 0) { + if(a->length < b->length) + ret = -1; + else if(a->length > b->length) + ret = 1; + /* Ignore unused bits. */ + assert_unused_bits(a); + assert_unused_bits(b); + } + + return ret; +} + +void +SET_OF__encode_sorted_free(struct _el_buffer *el_buf, size_t count) { + size_t i; + + for(i = 0; i < count; i++) { + FREEMEM(el_buf[i].buf); + } + + FREEMEM(el_buf); +} + +struct _el_buffer * +SET_OF__encode_sorted(const asn_TYPE_member_t *elm, + const asn_anonymous_set_ *list, + enum SET_OF__encode_method method) { + struct _el_buffer *encoded_els; + int edx; + + encoded_els = + (struct _el_buffer *)CALLOC(list->count, sizeof(encoded_els[0])); + if(encoded_els == NULL) { + return NULL; + } + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + const void *memb_ptr = list->array[edx]; + struct _el_buffer *encoding_el = &encoded_els[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) break; + + /* + * Encode the member into the prepared space. + */ + switch(method) { +#if !defined(ASN_DISABLE_BER_SUPPORT) + case SOES_DER: + erval = elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, + _el_addbytes, encoding_el); + break; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + case SOES_CUPER: + erval = uper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + break; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + case SOES_CAPER: + erval = aper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + break; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + + default: + assert(!"Unreachable"); + break; + } + if(erval.encoded < 0) break; + } + + if(edx == list->count) { + /* + * Sort the encoded elements according to their encoding. + */ + qsort(encoded_els, list->count, sizeof(encoded_els[0]), _el_buf_cmp); + + return encoded_els; + } else { + SET_OF__encode_sorted_free(encoded_els, edx); + return NULL; + } +} + +void +SET_OF_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + const asn_SET_OF_specifics_t *specs; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); + asn_struct_ctx_t *ctx; /* Decoder context */ + int i; + + /* + * Could not use set_of_empty() because of (*free) + * incompatibility. + */ + for(i = 0; i < list->count; i++) { + void *memb_ptr = list->array[i]; + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } + list->count = 0; /* No meaningful elements left */ + + asn_set_empty(list); /* Remove (list->array) */ + + specs = (const asn_SET_OF_specifics_t *)td->specifics; + ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); + if(ctx->ptr) { + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } + } +} + +int +SET_OF_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + asn_constr_check_f *constr; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int i; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + constr = elm->encoding_constraints.general_constraints; + if(!constr) constr = elm->type->encoding_constraints.general_constraints; + + /* + * Iterate over the members of an array. + * Validate each in turn, until one fails. + */ + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + int ret; + + if(!memb_ptr) continue; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + return 0; +} + +struct comparable_ptr { + const asn_TYPE_descriptor_t *td; + const void *sptr; +}; + +static int +SET_OF__compare_cb(const void *aptr, const void *bptr) { + const struct comparable_ptr *a = aptr; + const struct comparable_ptr *b = bptr; + assert(a->td == b->td); + return a->td->op->compare_struct(a->td, a->sptr, b->sptr); +} + +int +SET_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_set_ *a = _A_CSET_FROM_VOID(aptr); + const asn_anonymous_set_ *b = _A_CSET_FROM_VOID(bptr); + + if(a && b) { + struct comparable_ptr *asorted; + struct comparable_ptr *bsorted; + ssize_t common_length; + ssize_t idx; + + if(a->count == 0) { + if(b->count) return -1; + return 0; + } else if(b->count == 0) { + return 1; + } + + asorted = MALLOC(a->count * sizeof(asorted[0])); + bsorted = MALLOC(b->count * sizeof(bsorted[0])); + if(!asorted || !bsorted) { + FREEMEM(asorted); + FREEMEM(bsorted); + return -1; + } + + for(idx = 0; idx < a->count; idx++) { + asorted[idx].td = td->elements->type; + asorted[idx].sptr = a->array[idx]; + } + + for(idx = 0; idx < b->count; idx++) { + bsorted[idx].td = td->elements->type; + bsorted[idx].sptr = b->array[idx]; + } + + qsort(asorted, a->count, sizeof(asorted[0]), SET_OF__compare_cb); + qsort(bsorted, b->count, sizeof(bsorted[0]), SET_OF__compare_cb); + + common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, asorted[idx].sptr, bsorted[idx].sptr); + if(ret) { + FREEMEM(asorted); + FREEMEM(bsorted); + return ret; + } + } + + FREEMEM(asorted); + FREEMEM(bsorted); + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c new file mode 100644 index 000000000..87c341e0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c @@ -0,0 +1,186 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +SET_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SET OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %lld ub %lld %s", + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + /*if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED;*/ + + if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Canonical PER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CAPER); + + for(seq = 0; seq < list->count;) { + ssize_t may_encode; + int need_eom = 0; + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + aper_put_length(po, -1, -1, list->count - seq, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + while(may_encode--) { + const struct _el_buffer *el = &encoded_els[seq++]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +SET_OF_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); + ASN_DEBUG("Preparing to fetch %ld+%lld elements from %s", + (long)nelems, (long long int)ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + if (ct) + nelems = aper_get_length(pd, ct->lower_bound, ct->upper_bound, + ct->effective_bits, &repeat); + else + nelems = aper_get_length(pd, -1, -1, -1, &repeat); + ASN_DEBUG("Got to decode %d elements (eff %d)", + (int)nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) + continue; + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c new file mode 100644 index 000000000..4187e2999 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c @@ -0,0 +1,355 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef PHASE_OUT +#define PHASE_OUT(ctx) \ + do { \ + ctx->phase = 10; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * The decoder of the SET OF type. + */ +asn_dec_rval_t +SET_OF_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as SET OF", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + ASN_DEBUG("Structure consumes %ld bytes, " + "buffer %ld", (long)ctx->left, (long)size); + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next item. + */ + for(;; ctx->step = 0) { + ssize_t tag_len; /* Length of TLV's T */ + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + + if(ctx->left == 0) { + ASN_DEBUG("End of SET OF %s", td->name); + /* + * No more things to decode. + * Exit out of here. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Found the terminator of the + * indefinite length structure. + */ + break; + } + } + + /* Outmost tag may be unknown and cannot be fetched/compared */ + if(elm->tag != (ber_tlv_tag_t)-1) { + if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { + /* + * The new list member of expected type has arrived. + */ + } else { + ASN_DEBUG("Unexpected tag %s fixed SET OF %s", + ber_tlv_tag_string(tlv_tag), td->name); + ASN_DEBUG("%s SET OF has tag %s", + td->name, ber_tlv_tag_string(elm->tag)); + RETURN(RC_FAIL); + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, + elm->type, &ctx->ptr, + ptr, LEFT, 0); + ASN_DEBUG("In %s SET OF %s code %d consumed %d", + td->name, elm->type->name, + rval.code, (int)rval.consumed); + switch(rval.code) { + case RC_OK: + { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + else + ctx->ptr = 0; + } + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + /* Fall through */ + case RC_FAIL: /* Fatal error */ + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all list members) */ + + NEXT_PHASE(ctx); + case 2: + /* + * Read in all "end of content" TLVs. + */ + while(ctx->left < 0) { + if(LEFT < 2) { + if(LEFT > 0 && ((const char *)ptr)[0] != 0) { + /* Unexpected tag */ + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } + if(((const char *)ptr)[0] == 0 + && ((const char *)ptr)[1] == 0) { + ADVANCE(2); + ctx->left++; + } else { + RETURN(RC_FAIL); + } + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + +/* + * The DER encoder of the SET OF type. + */ +asn_enc_rval_t +SET_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + struct _el_buffer *encoded_els; + int edx; + + ASN_DEBUG("Estimating size for SET OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) ASN__ENCODE_FAILED; + + erval = + elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, 0, 0); + if(erval.encoded == -1) return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = + der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + if(encoding_size < 0) { + ASN__ENCODE_FAILED; + } + computed_size += encoding_size; + + if(!cb || list->count == 0) { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of %s SET OF", td->name); + + /* + * DER mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the + * encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_DER); + + /* + * Report encoded elements to the application. + * Dispose of temporary sorted members table. + */ + for(edx = 0; edx < list->count; edx++) { + struct _el_buffer *encoded_el = &encoded_els[edx]; + /* Report encoded chunks to the application */ + if(cb(encoded_el->buf, encoded_el->length, app_key) < 0) { + break; + } else { + encoding_size += encoded_el->length; + } + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if(edx == list->count) { + asn_enc_rval_t erval = {0,0,0}; + assert(computed_size == (size_t)encoding_size); + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } else { + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c new file mode 100644 index 000000000..a0c2adc5e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c @@ -0,0 +1,144 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +typedef struct jer_tmp_enc_s { + void *buffer; + size_t offset; + size_t size; +} jer_tmp_enc_t; + +static int +SET_OF_encode_jer_callback(const void *buffer, size_t size, void *key) { + jer_tmp_enc_t *t = (jer_tmp_enc_t *)key; + if(t->offset + size >= t->size) { + size_t newsize = (t->size << 2) + size; + void *p = REALLOC(t->buffer, newsize); + if(!p) return -1; + t->buffer = p; + t->size = newsize; + } + memcpy((char *)t->buffer + t->offset, buffer, size); + t->offset += size; + return 0; +} + +static int +SET_OF_jer_order(const void *aptr, const void *bptr) { + const jer_tmp_enc_t *a = (const jer_tmp_enc_t *)aptr; + const jer_tmp_enc_t *b = (const jer_tmp_enc_t *)bptr; + size_t minlen = a->offset; + int ret; + if(b->offset < minlen) minlen = b->offset; + /* Well-formed UTF-8 has this nice lexicographical property... */ + ret = memcmp(a->buffer, b->buffer, minlen); + if(ret != 0) return ret; + if(a->offset == b->offset) + return 0; + if(a->offset == minlen) + return -1; + return 1; +} + +asn_enc_rval_t +SET_OF_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = 0; + jer_tmp_enc_t *encs = 0; + size_t encs_count = 0; + void *original_app_key = app_key; + asn_app_consume_bytes_f *original_cb = cb; + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + if(xcan) { + encs = (jer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); + if(!encs) ASN__ENCODE_FAILED; + cb = SET_OF_encode_jer_callback; + } + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(encs) { + memset(&encs[encs_count], 0, sizeof(encs[0])); + app_key = &encs[encs_count]; + encs_count++; + } + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("\"", 1, mname, mlen, "\": ", 3); + } + + if(!xcan && specs->as_XMLValueList == 1) + ASN__TEXT_INDENT(1, ilevel + 1); + tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, + ilevel + (specs->as_XMLValueList != 2), + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + /* if(mname) { */ + /* ASN__CALLBACK3("", 1); */ + /* } */ + + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + if(encs) { + jer_tmp_enc_t *enc = encs; + jer_tmp_enc_t *end = encs + encs_count; + ssize_t control_size = 0; + + er.encoded = 0; + cb = original_cb; + app_key = original_app_key; + qsort(encs, encs_count, sizeof(encs[0]), SET_OF_jer_order); + + for(; enc < end; enc++) { + ASN__CALLBACK(enc->buffer, enc->offset); + FREEMEM(enc->buffer); + enc->buffer = 0; + control_size += enc->offset; + } + assert(control_size == er.encoded); + } + + goto cleanup; +cb_failed: + ASN__ENCODE_FAILED; +cleanup: + if(encs) { + size_t n; + for(n = 0; n < encs_count; n++) { + FREEMEM(encs[n].buffer); + } + FREEMEM(encs); + } + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c new file mode 100644 index 000000000..a0f0140dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c @@ -0,0 +1,281 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t _rval; \ + _rval.code = _code; \ + _rval.consumed = consumed_myself; \ + return _rval; \ + } while(0) + +/* + * The SEQUENCE OF and SET OF values utilize a "quantity field". + * It is is a pointless combination of #8.6 (length determinant, capable + * of encoding tiny and huge numbers in the shortest possible number of octets) + * and the variable sized integer. What could have been encoded by #8.6 alone + * is required to be encoded by #8.6 followed by that number of unsigned octets. + * This doesn't make too much sense. It seems that the original version of OER + * standard have been using the unconstrained unsigned integer as a quantity + * field, and this legacy have gone through ISO/ITU-T standardization process. + */ +static ssize_t +oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) { + const uint8_t *b; + const uint8_t *bend; + size_t len = 0; + size_t qty; + + ssize_t len_len = oer_fetch_length(ptr, size, &len); + if(len_len <= 0) { + *qty_r = 0; + return len_len; + } + + if((len_len + len) > size) { + *qty_r = 0; + return 0; + } + + b = (const uint8_t *)ptr + len_len; + bend = b + len; + + /* Skip the leading 0-bytes */ + for(; b < bend && *b == 0; b++) { + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *qty_r = 0; + return -1; + } + + for(qty = 0; b < bend; b++) { + qty = (qty << 8) + *b; + } + + if(qty > RSIZE_MAX) { /* A bit of C11 validation */ + *qty_r = 0; + return -1; + } + + *qty_r = qty; + assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr)); + return len_len + len; +} + +asn_dec_rval_t +SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch number of elements to decode. + */ + size_t length = 0; + size_t len_size = oer_fetch_quantity(ptr, size, &length); + switch(len_size) { + case 0: + RETURN(RC_WMORE); + case -1: + RETURN(RC_FAIL); + default: + ADVANCE(len_size); + ctx->left = length; + } + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + const void *base_ptr = ptr; + ber_tlv_len_t base_ctx_left = ctx->left; + + assert(td->elements_count == 1); + + ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name); + + for(; ctx->left > 0; ctx->left--) { + asn_dec_rval_t rv = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr, + size); + ADVANCE(rv.consumed); + switch(rv.code) { + case RC_OK: + if(ASN_SET_ADD(list, ctx->ptr) != 0) { + RETURN(RC_FAIL); + } else { + ctx->ptr = 0; + /* + * This check is to avoid compression bomb with + * specs like SEQUENCE/SET OF NULL which don't + * consume data at all. + */ + if(rv.consumed == 0 && base_ptr == ptr + && (base_ctx_left - ctx->left) > 200) { + ASN__DECODE_FAILED; + } + break; + } + case RC_WMORE: + RETURN(RC_WMORE); + case RC_FAIL: + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + SET_PHASE(ctx, 3); + RETURN(RC_FAIL); + } + } + /* Decoded decently. */ + NEXT_PHASE(ctx); + } + /* Fall through */ + case 2: + /* Ignore fully decoded */ + assert(ctx->left == 0); + RETURN(RC_OK); + case 3: + /* Failed to decode. */ + RETURN(RC_FAIL); + } + + return rval; +} + +static ssize_t +oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t buf[1 + sizeof(size_t)]; + uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */ + size_t encoded; + + do { + *b-- = qty; + qty >>= 8; + } while(qty); + + *b = sizeof(buf) - (b-buf) - 1; + encoded = sizeof(buf) - (b-buf); + if(cb(b, encoded, app_key) < 0) + return -1; + return encoded; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SET_OF_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_TYPE_member_t *elm; + const asn_anonymous_set_ *list; + size_t computed_size = 0; + ssize_t qty_len; + int n; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + elm = td->elements; + list = _A_CSET_FROM_VOID(sptr); + + qty_len = oer_put_quantity(list->count, cb, app_key); + if(qty_len < 0) { + ASN__ENCODE_FAILED; + } + computed_size += qty_len; + + for(n = 0; n < list->count; n++) { + void *memb_ptr = list->array[n]; + asn_enc_rval_t er = {0,0,0}; + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded < 0) { + return er; + } else { + computed_size += er.encoded; + } + } + + { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c new file mode 100644 index 000000000..748dba767 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int ret; + int i; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + _i_INDENT(1); + + ret = elm->type->op->print_struct(elm->type, memb_ptr, + ilevel + 1, cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c new file mode 100644 index 000000000..9b2ac5ed2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +SET_OF_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_SET_OF_specifics_t *specs = + (const asn_SET_OF_specifics_t *)td->specifics; + asn_random_fill_result_t res_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm = td->elements; + void *st = *sptr; + long max_elements = 5; + long slb = 0; /* Lower size bound */ + long sub = 0; /* Upper size bound */ + size_t rnd_len; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) { + return result_failed; + } + } + + switch(asn_random_between(0, 6)) { + case 0: max_elements = 0; break; + case 1: max_elements = 1; break; + case 2: max_elements = 5; break; + case 3: max_elements = max_length; break; + case 4: max_elements = max_length / 2; break; + case 5: max_elements = max_length / 4; break; + default: break; + } + sub = slb + max_elements; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_SEMI_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->lower_bound + max_elements; + } else if(pc->flags & APC_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->upper_bound; + if(sub - slb > max_elements) sub = slb + max_elements; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + /* Bias towards edges of allowed space */ + switch(asn_random_between(-1, 4)) { + default: + case -1: +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + /* Prepare lengths somewhat outside of constrained range. */ + if(constraints->per_constraints + && (constraints->per_constraints->size.flags & APC_EXTENSIBLE)) { + switch(asn_random_between(0, 5)) { + default: + case 0: + rnd_len = 0; + break; + case 1: + if(slb > 0) { + rnd_len = slb - 1; + } else { + rnd_len = 0; + } + break; + case 2: + rnd_len = asn_random_between(0, slb); + break; + case 3: + if(sub < (ssize_t)max_length) { + rnd_len = sub + 1; + } else { + rnd_len = max_length; + } + break; + case 4: + if(sub < (ssize_t)max_length) { + rnd_len = asn_random_between(sub + 1, max_length); + } else { + rnd_len = max_length; + } + break; + case 5: + rnd_len = max_length; + break; + } + break; + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + /* Fall through */ + case 0: + rnd_len = asn_random_between(slb, sub); + break; + case 1: + if(slb < sub) { + rnd_len = asn_random_between(slb + 1, sub); + break; + } + /* Fall through */ + case 2: + rnd_len = asn_random_between(slb, slb); + break; + case 3: + if(slb < sub) { + rnd_len = asn_random_between(slb, sub - 1); + break; + } + /* Fall through */ + case 4: + rnd_len = asn_random_between(sub, sub); + break; + } + + for(; rnd_len > 0; rnd_len--) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + void *ptr = 0; + asn_random_fill_result_t tmpres = elm->type->op->random_fill( + elm->type, &ptr, &elm->encoding_constraints, + (max_length > res_ok.length ? max_length - res_ok.length : 0) + / rnd_len); + switch(tmpres.code) { + case ARFILL_OK: + ASN_SET_ADD(list, ptr); + res_ok.length += tmpres.length; + break; + case ARFILL_SKIPPED: + break; + case ARFILL_FAILED: + assert(ptr == 0); + return tmpres; + } + } + + return res_ok; +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c new file mode 100644 index 000000000..b99a2449e --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c @@ -0,0 +1,201 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +SET_OF_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = per_get_few_bits(pd, ct->effective_bits); + ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", + (long)nelems, ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + nelems = uper_get_length(pd, -1, 0, &repeat); + ASN_DEBUG("Got to decode %" ASN_PRI_SSIZE " elements (eff %d)", + nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) { + if(rv.consumed == 0 && nelems > 200) { + /* Protect from SET OF NULL compression bombs. */ + ASN__DECODE_FAILED; + } + continue; + } + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +asn_enc_rval_t +SET_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + + /* + * Canonical UPER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CUPER); + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + const struct _el_buffer *el = &encoded_els[edx]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if((ssize_t)encoded_edx == list->count) { + ASN__ENCODED_OK(er); + } else { + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c new file mode 100644 index 000000000..1d97e5be3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c @@ -0,0 +1,314 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SET_OF_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *element = td->elements; + const char *elm_tag; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval = {RC_OK, 0}; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* Which tag is expected for the downstream */ + if(specs->as_XMLValueList) { + elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; + } else { + elm_tag = (*element->name) + ? element->name : element->type->xml_tag; + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + */ + for(; ctx->phase <= 2;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Go inside the inner member of a set. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval = {RC_OK, 0}; + + /* Invoke the inner type decoder, m.b. multiple times */ + ASN_DEBUG("XER/SET OF element [%s]", elm_tag); + tmprval = element->type->op->xer_decoder(opt_codec_ctx, + element->type, + &ctx->ptr, elm_tag, + buf_ptr, size); + if(tmprval.code == RC_OK) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + ctx->ptr = 0; + XER_ADVANCE(tmprval.consumed); + } else { + XER_ADVANCE(tmprval.consumed); + RETURN(tmprval.code); + } + ctx->phase = 1; /* Back to body processing */ + ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, + buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", + tcv, ctx->phase, xml_tag); + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + /* No more things to decode */ + XER_ADVANCE(ch_size); + ctx->phase = 3; /* Phase out */ + RETURN(RC_OK); + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); + if(ctx->phase == 1) { + /* + * Process a single possible member. + */ + ctx->phase = 2; + continue; + } + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SET OF"); + break; + } + + ctx->phase = 3; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +typedef struct xer_tmp_enc_s { + void *buffer; + size_t offset; + size_t size; +} xer_tmp_enc_t; + +static int +SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { + xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; + if(t->offset + size >= t->size) { + size_t newsize = (t->size << 2) + size; + void *p = REALLOC(t->buffer, newsize); + if(!p) return -1; + t->buffer = p; + t->size = newsize; + } + memcpy((char *)t->buffer + t->offset, buffer, size); + t->offset += size; + return 0; +} + +static int +SET_OF_xer_order(const void *aptr, const void *bptr) { + const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; + const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; + size_t minlen = a->offset; + int ret; + if(b->offset < minlen) minlen = b->offset; + /* Well-formed UTF-8 has this nice lexicographical property... */ + ret = memcmp(a->buffer, b->buffer, minlen); + if(ret != 0) return ret; + if(a->offset == b->offset) + return 0; + if(a->offset == minlen) + return -1; + return 1; +} + +asn_enc_rval_t +SET_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + xer_tmp_enc_t *encs = 0; + size_t encs_count = 0; + void *original_app_key = app_key; + asn_app_consume_bytes_f *original_cb = cb; + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + if(xcan) { + encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); + if(!encs) ASN__ENCODE_FAILED; + cb = SET_OF_encode_xer_callback; + } + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(encs) { + memset(&encs[encs_count], 0, sizeof(encs[0])); + app_key = &encs[encs_count]; + encs_count++; + } + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + if(!xcan && specs->as_XMLValueList == 1) + ASN__TEXT_INDENT(1, ilevel + 1); + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + (specs->as_XMLValueList != 2), + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + if(encs) { + xer_tmp_enc_t *enc = encs; + xer_tmp_enc_t *end = encs + encs_count; + ssize_t control_size = 0; + + er.encoded = 0; + cb = original_cb; + app_key = original_app_key; + qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); + + for(; enc < end; enc++) { + ASN__CALLBACK(enc->buffer, enc->offset); + FREEMEM(enc->buffer); + enc->buffer = 0; + control_size += enc->offset; + } + assert(control_size == er.encoded); + } + + goto cleanup; +cb_failed: + ASN__ENCODE_FAILED; +cleanup: + if(encs) { + size_t n; + for(n = 0; n < encs_count; n++) { + FREEMEM(encs[n].buffer); + } + FREEMEM(encs); + } + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/2020/constr_TYPE.c b/src/tmx/Asn_J2735/src/2020/constr_TYPE.c new file mode 100644 index 000000000..e634e750f --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constr_TYPE.c @@ -0,0 +1,80 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Version of the ASN.1 infrastructure shipped with compiler. + */ +int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } + +static asn_app_consume_bytes_f _print2fp; + +/* + * Return the outmost tag of the type. + */ +ber_tlv_tag_t +asn_TYPE_outmost_tag(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { + + if(tag_mode) + return tag; + + if(type_descriptor->tags_count) + return type_descriptor->tags[0]; + + return type_descriptor->op->outmost_tag(type_descriptor, struct_ptr, 0, 0); +} + +/* + * Print the target language's structure in human readable form. + */ +int +asn_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, + const void *struct_ptr) { + if(!stream) stream = stdout; + if(!td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + /* Invoke type-specific printer */ + if(td->op->print_struct(td, struct_ptr, 1, _print2fp, stream)) { + return -1; + } + + /* Terminate the output */ + if(_print2fp("\n", 1, stream)) { + return -1; + } + + return fflush(stream); +} + +/* Dump the data into the specified stdio stream */ +static int +_print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + + +/* + * Some compilers do not support variable args macros. + * This function is a replacement of ASN_DEBUG() macro. + */ +void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); +void ASN_DEBUG_f(const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} diff --git a/src/tmx/Asn_J2735/src/2020/constraints.c b/src/tmx/Asn_J2735/src/2020/constraints.c new file mode 100644 index 000000000..72137cc5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/constraints.c @@ -0,0 +1,94 @@ +#include +#include + +int +asn_generic_no_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Nothing to check */ + return 0; +} + +int +asn_generic_unknown_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Unknown how to check */ + return 0; +} + +struct errbufDesc { + const asn_TYPE_descriptor_t *failed_type; + const void *failed_struct_ptr; + char *errbuf; + size_t errlen; +}; + +static void +CC_PRINTFLIKE(4, 5) +_asn_i_ctfailcb(void *key, const asn_TYPE_descriptor_t *td, const void *sptr, + const char *fmt, ...) { + struct errbufDesc *arg = key; + va_list ap; + ssize_t vlen; + ssize_t maxlen; + + arg->failed_type = td; + arg->failed_struct_ptr = sptr; + + maxlen = arg->errlen; + if(maxlen <= 0) + return; + + va_start(ap, fmt); + vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); + va_end(ap); + if(vlen >= maxlen) { + arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ + arg->errlen = maxlen - 1; /* Not counting termination */ + return; + } else if(vlen >= 0) { + arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ + arg->errlen = vlen; /* Not counting termination */ + } else { + /* + * The libc on this system is broken. + */ + vlen = sizeof("") - 1; + maxlen--; + arg->errlen = vlen < maxlen ? vlen : maxlen; + memcpy(arg->errbuf, "", arg->errlen); + arg->errbuf[arg->errlen] = 0; + } + + return; +} + +int +asn_check_constraints(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, char *errbuf, size_t *errlen) { + struct errbufDesc arg; + int ret; + + arg.failed_type = 0; + arg.failed_struct_ptr = 0; + arg.errbuf = errbuf; + arg.errlen = errlen ? *errlen : 0; + + ret = type_descriptor->encoding_constraints.general_constraints( + type_descriptor, struct_ptr, _asn_i_ctfailcb, &arg); + if(ret == -1 && errlen) *errlen = arg.errlen; + + return ret; +} + diff --git a/src/tmx/Asn_J2735/src/2020/der_encoder.c b/src/tmx/Asn_J2735/src/2020/der_encoder.c new file mode 100644 index 000000000..2c6a6f769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/der_encoder.c @@ -0,0 +1,194 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, int constructed); + +/* + * The DER encoder of any type. + */ +asn_enc_rval_t +der_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("DER encoder invoked for %s", + type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->der_encoder( + type_descriptor, struct_ptr, /* Pointer to the destination structure */ + 0, 0, consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for der_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the der_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +der_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + ec = type_descriptor->op->der_encoder(type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + 0, 0, encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + return ec; +} + + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t +der_write_tags(const asn_TYPE_descriptor_t *sd, size_t struct_length, + int tag_mode, int last_tag_form, + ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ + asn_app_consume_bytes_f *cb, void *app_key) { +#define ASN1_DER_MAX_TAGS_COUNT 4 + ber_tlv_tag_t + tags_buf_scratch[ASN1_DER_MAX_TAGS_COUNT * sizeof(ber_tlv_tag_t)]; + ssize_t lens[ASN1_DER_MAX_TAGS_COUNT * sizeof(ssize_t)]; + const ber_tlv_tag_t *tags; /* Copy of tags stream */ + int tags_count; /* Number of tags */ + size_t overall_length; + int i; + + ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", + sd->name, tag_mode, sd->tags_count, + ber_tlv_tag_string(tag), + tag_mode + ?(sd->tags_count+1 + -((tag_mode == -1) && sd->tags_count)) + :sd->tags_count + ); + + if(sd->tags_count + 1 > ASN1_DER_MAX_TAGS_COUNT) { + ASN_DEBUG("System limit %d on tags count", ASN1_DER_MAX_TAGS_COUNT); + return -1; + } + + if(tag_mode) { + /* + * Instead of doing shaman dance like we do in ber_check_tags(), + * allocate a small array on the stack + * and initialize it appropriately. + */ + int stag_offset; + ber_tlv_tag_t *tags_buf = tags_buf_scratch; + tags_count = sd->tags_count + + 1 /* EXPLICIT or IMPLICIT tag is given */ + - ((tag_mode == -1) && sd->tags_count); + /* Copy tags over */ + tags_buf[0] = tag; + stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); + for(i = 1; i < tags_count; i++) + tags_buf[i] = sd->tags[i + stag_offset]; + tags = tags_buf; + } else { + tags = sd->tags; + tags_count = sd->tags_count; + } + + /* No tags to write */ + if(tags_count == 0) + return 0; + + /* + * Array of tags is initialized. + * Now, compute the size of the TLV pairs, from right to left. + */ + overall_length = struct_length; + for(i = tags_count - 1; i >= 0; --i) { + lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); + if(lens[i] == -1) return -1; + overall_length += lens[i]; + lens[i] = overall_length - lens[i]; + } + + if(!cb) return overall_length - struct_length; + + ASN_DEBUG("Encoding %s TL sequence (%d elements)", sd->name, + tags_count); + + /* + * Encode the TL sequence for real. + */ + for(i = 0; i < tags_count; i++) { + ssize_t len; + int _constr; + + /* Check if this tag happens to be constructed */ + _constr = (last_tag_form || i < (tags_count - 1)); + + len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); + if(len == -1) return -1; + } + + return overall_length - struct_length; +} + +static ssize_t +der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, + int constructed) { + uint8_t buf[32]; + size_t size = 0; + int buf_size = cb?sizeof(buf):0; + ssize_t tmp; + + /* Serialize tag (T from TLV) into possibly zero-length buffer */ + tmp = ber_tlv_tag_serialize(tag, buf, buf_size); + if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; + size += tmp; + + /* Serialize length (L from TLV) into possibly zero-length buffer */ + tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); + if(tmp == -1) return -1; + size += tmp; + + if(size > sizeof(buf)) + return -1; + + /* + * If callback is specified, invoke it, and check its return value. + */ + if(cb) { + if(constructed) *buf |= 0x20; + if(cb(buf, size, app_key) < 0) + return -1; + } + + return size; +} diff --git a/src/tmx/Asn_J2735/src/2020/jer_encoder.c b/src/tmx/Asn_J2735/src/2020/jer_encoder.c new file mode 100644 index 000000000..4fe5ce3a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/jer_encoder.c @@ -0,0 +1,69 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The JER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t +jer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + asn_enc_rval_t tmper; + const char *mname; + size_t mlen; + + if(!td || !sptr) goto cb_failed; + + mname = td->xml_tag; + mlen = strlen(mname); + + ASN__CALLBACK3("{\n\"", 3, mname, mlen, "\":", 2); + + int xFlag = 0; + tmper = td->op->jer_encoder(td, sptr, 1, xFlag, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK("}", 1); + // ASN__CALLBACK3("\n", xcan); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +/* + * This is a helper function for jer_fprint, which directs all incoming data + * into the provided file descriptor. + */ +static int +jer__print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + +int +jer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { + asn_enc_rval_t er = {0,0,0}; + + if(!stream) stream = stdout; + if(!td || !sptr) + return -1; + + er = jer_encode(td, sptr, jer__print2fp, stream); + if(er.encoded == -1) + return -1; + + return fflush(stream); +} + diff --git a/src/tmx/Asn_J2735/src/2020/oer_decoder.c b/src/tmx/Asn_J2735/src/2020/oer_decoder.c new file mode 100644 index 000000000..070173826 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/oer_decoder.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER decoder of any type. + */ +asn_dec_rval_t +oer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + ptr, size /* Buffer and its size */ + ); +} + +/* + * Open Type is encoded as a length (#8.6) followed by that number of bytes. + * Since we're just skipping, reading the length would be enough. + */ +ssize_t +oer_open_type_skip(const void *bufptr, size_t size) { + size_t len = 0; + return oer_fetch_length(bufptr, size, &len); +} + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *bufptr, size_t size) { + asn_dec_rval_t dr; + size_t container_len = 0; + ssize_t len_len; + enum asn_struct_free_method dispose_method = + (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING; + + /* Get the size of a length determinant */ + len_len = oer_fetch_length(bufptr, size, &container_len); + if(len_len <= 0) { + return len_len; /* Error or more data expected */ + } + + /* + * len_len can't be bigger than size, but size without len_len + * should be bigger or equal to container length + */ + if(size - len_len < container_len) { + /* More data is expected */ + return 0; + } + + dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr, + (const uint8_t *)bufptr + len_len, container_len); + if(dr.code == RC_OK) { + return len_len + container_len; + } else { + /* Even if RC_WMORE, we can't get more data into a closed container. */ + td->op->free_struct(td, *struct_ptr, dispose_method); + *struct_ptr = NULL; + return -1; + } +} + + +asn_dec_rval_t +oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + ssize_t len_len; + + (void)td; + (void)opt_codec_ctx; + (void)constraints; + + if(!st) { + st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC( + 1, sizeof(ASN__PRIMITIVE_TYPE_t))); + if(!st) ASN__DECODE_FAILED; + } + + + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/oer_encoder.c b/src/tmx/Asn_J2735/src/2020/oer_encoder.c new file mode 100644 index 000000000..a284cc2f3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/oer_encoder.c @@ -0,0 +1,141 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER encoder of any type. + */ +asn_enc_rval_t +oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->oer_encoder( + type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for oer_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int +encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the oer_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + if(type_descriptor->op->oer_encoder == NULL) { + ec.encoded = -1; + ec.failed_type = type_descriptor; + ec.structure_ptr = struct_ptr; + ASN_DEBUG("OER encoder is not defined for %s", + type_descriptor->name); + } else { + ec = type_descriptor->op->oer_encoder( + type_descriptor, constraints, + struct_ptr, /* Pointer to the destination structure */ + encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + } + return ec; +} + +asn_enc_rval_t +oer_encode_primitive(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + ssize_t ret; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size); + + /* + * X.696 (08/2015) #27.2 + */ + ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +static int +oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) { + size_t *bytes = bytes_ptr; + (void)buffer; + *bytes += size; + return 0; +} + +ssize_t +oer_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t serialized_byte_count = 0; + asn_enc_rval_t er = {0,0,0}; + ssize_t len_len; + + er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes, + &serialized_byte_count); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + len_len = oer_serialize_length(serialized_byte_count, cb, app_key); + if(len_len == -1) return -1; + + er = td->op->oer_encoder(td, constraints, sptr, cb, app_key); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + return len_len + er.encoded; +} + diff --git a/src/tmx/Asn_J2735/src/2020/oer_support.c b/src/tmx/Asn_J2735/src/2020/oer_support.c new file mode 100644 index 000000000..b15a3bc93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/oer_support.c @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +#include + +/* + * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) { + uint8_t first_byte; + size_t len_len; /* Length of the length determinant */ + const uint8_t *b; + const uint8_t *bend; + size_t len; + + if(size == 0) { + *len_r = 0; + return 0; + } + + first_byte = *(const uint8_t *)bufptr; + if((first_byte & 0x80) == 0) { /* Short form */ + *len_r = first_byte; /* 0..127 */ + return 1; + } + + len_len = (first_byte & 0x7f); + if((1 + len_len) > size) { + *len_r = 0; + return 0; + } + + b = (const uint8_t *)bufptr + 1; + bend = b + len_len; + + for(; b < bend && *b == 0; b++) { + /* Skip the leading 0-bytes */ + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *len_r = 0; + return -1; + } + + for(len = 0; b < bend; b++) { + len = (len << 8) + *b; + } + + if(len > RSIZE_MAX) { /* A bit of C11 validation */ + *len_r = 0; + return -1; + } + + *len_r = len; + assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr)); + return len_len + 1; +} + + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t +oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, + void *app_key) { + uint8_t scratch[1 + sizeof(length)]; + uint8_t *sp = scratch; + int littleEndian = 1; /* Run-time detection */ + const uint8_t *pstart; + const uint8_t *pend; + const uint8_t *p; + int add; + + if(length <= 127) { + uint8_t b = length; + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } + + if(*(char *)&littleEndian) { + pstart = (const uint8_t *)&length + sizeof(length) - 1; + pend = (const uint8_t *)&length; + add = -1; + } else { + pstart = (const uint8_t *)&length; + pend = pstart + sizeof(length); + add = 1; + } + + for(p = pstart; p != pend; p += add) { + /* Skip leading zeros. */ + if(*p) break; + } + + for(sp = scratch + 1; ; p += add) { + *sp++ = *p; + if(p == pend) break; + } + assert((sp - scratch) - 1 <= 0x7f); + scratch[0] = 0x80 + ((sp - scratch) - 1); + + if(cb(scratch, sp - scratch, app_key) < 0) { + return -1; + } + + return sp - scratch; +} + diff --git a/src/tmx/Asn_J2735/src/2020/pdu_collection.c b/src/tmx/Asn_J2735/src/2020/pdu_collection.c new file mode 100644 index 000000000..f84f60a4a --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/pdu_collection.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + */ + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_Angle; +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_MsgCount; +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_TimeMark; +extern struct asn_TYPE_descriptor_s asn_DEF_DDate; +extern struct asn_TYPE_descriptor_s asn_DEF_DFullTime; +extern struct asn_TYPE_descriptor_s asn_DEF_DMonthDay; +extern struct asn_TYPE_descriptor_s asn_DEF_DTime; +extern struct asn_TYPE_descriptor_s asn_DEF_DYearMonth; +extern struct asn_TYPE_descriptor_s asn_DEF_VerticalOffset; +extern struct asn_TYPE_descriptor_s asn_DEF_CodeWord; +extern struct asn_TYPE_descriptor_s asn_DEF_Count; +extern struct asn_TYPE_descriptor_s asn_DEF_Duration; +extern struct asn_TYPE_descriptor_s asn_DEF_Location_quality; +extern struct asn_TYPE_descriptor_s asn_DEF_Location_tech; +extern struct asn_TYPE_descriptor_s asn_DEF_MessageBLOB; +extern struct asn_TYPE_descriptor_s asn_DEF_PayloadData; +extern struct asn_TYPE_descriptor_s asn_DEF_SignalReqScheme; +extern struct asn_TYPE_descriptor_s asn_DEF_TransitStatus; +extern struct asn_TYPE_descriptor_s asn_DEF_URL_Link; +extern struct asn_TYPE_descriptor_s asn_DEF_MessageFrame; +extern struct asn_TYPE_descriptor_s asn_DEF_EXTERNAL; + + +struct asn_TYPE_descriptor_s *asn_pdu_collection[] = { + /* From module AddGrpB in J2735-AddGrpB.asn */ + &asn_DEF_AddGrpB_Angle, + &asn_DEF_AddGrpB_MsgCount, + &asn_DEF_AddGrpB_TimeMark, + /* From module Common in J2735-Common.asn */ + &asn_DEF_DDate, + &asn_DEF_DFullTime, + &asn_DEF_DMonthDay, + &asn_DEF_DTime, + &asn_DEF_DYearMonth, + &asn_DEF_VerticalOffset, + &asn_DEF_CodeWord, + &asn_DEF_Count, + &asn_DEF_Duration, + &asn_DEF_Location_quality, + &asn_DEF_Location_tech, + &asn_DEF_MessageBLOB, + &asn_DEF_PayloadData, + &asn_DEF_SignalReqScheme, + &asn_DEF_TransitStatus, + &asn_DEF_URL_Link, + /* From module MessageFrame in J2735-MessageFrame.asn */ + &asn_DEF_MessageFrame, + /* From module ASN1C-UsefulInformationObjectClasses in /usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1 */ + &asn_DEF_EXTERNAL, + 0 +}; + diff --git a/src/tmx/Asn_J2735/src/2020/per_decoder.c b/src/tmx/Asn_J2735/src/2020/per_decoder.c new file mode 100644 index 000000000..42b92cacd --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/per_decoder.c @@ -0,0 +1,5 @@ +#include +#include +#include + +// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/2020/per_encoder.c b/src/tmx/Asn_J2735/src/2020/per_encoder.c new file mode 100644 index 000000000..01ab70b06 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/per_encoder.c @@ -0,0 +1,35 @@ +#include +#include + +int +ignore_output(const void *data, size_t size, void *app_key) { + (void)data; + (void)size; + (void)app_key; + return 0; +} + +int +encode_dyn_cb(const void *buffer, size_t size, void *key) { + enc_dyn_arg *arg = key; + if(arg->length + size >= arg->allocated) { + size_t new_size = arg->allocated ? arg->allocated : 8; + void *p; + + do { + new_size <<= 2; + } while(arg->length + size >= new_size); + + p = REALLOC(arg->buffer, new_size); + if(!p) { + FREEMEM(arg->buffer); + memset(arg, 0, sizeof(*arg)); + return -1; + } + arg->buffer = p; + arg->allocated = new_size; + } + memcpy(((char *)arg->buffer) + arg->length, buffer, size); + arg->length += size; + return 0; +} diff --git a/src/tmx/Asn_J2735/src/2020/per_opentype.c b/src/tmx/Asn_J2735/src/2020/per_opentype.c new file mode 100644 index 000000000..5620c5bb9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/per_opentype.c @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +/* + * Internal functions. + */ + +asn_dec_rval_t +uper_sot_suck(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)ctx; + (void)td; + (void)constraints; + (void)sptr; + + while(per_get_few_bits(pd, 1) >= 0); + + rv.code = RC_OK; + rv.consumed = pd->moved; + + return rv; +} diff --git a/src/tmx/Asn_J2735/src/2020/per_support.c b/src/tmx/Asn_J2735/src/2020/per_support.c new file mode 100644 index 000000000..62d343c74 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/per_support.c @@ -0,0 +1,9 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/2020/uper_decoder.c b/src/tmx/Asn_J2735/src/2020/uper_decoder.c new file mode 100644 index 000000000..a88e95cfb --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/uper_decoder.c @@ -0,0 +1,96 @@ +#include +#include +#include + +/* + * Decode a "Production of a complete encoding", X.691#10.1. + * The complete encoding contains at least one byte, and is an integral + * multiple of 8 bytes. + */ +asn_dec_rval_t +uper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +uper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->uper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %ld, counted %ld", + (long)rval.consumed, (long)pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/2020/uper_encoder.c b/src/tmx/Asn_J2735/src/2020/uper_encoder.c new file mode 100644 index 000000000..4c1d24a6c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/uper_encoder.c @@ -0,0 +1,127 @@ +#include +#include +#include + +static int _uper_encode_flush_outp(asn_per_outp_t *po); + +asn_enc_rval_t +uper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->uper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->uper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_uper_encode_flush_outp(&po)) ASN__ENCODE_FAILED; + } + + return er; +} + +/* + * Argument type and callback necessary for uper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +uper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); + + return uper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +ssize_t +uper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = uper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_uper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); +} diff --git a/src/tmx/Asn_J2735/src/2020/uper_opentype.c b/src/tmx/Asn_J2735/src/2020/uper_opentype.c new file mode 100644 index 000000000..17ee06416 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/uper_opentype.c @@ -0,0 +1,372 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +typedef struct uper_ugot_key { + asn_per_data_t oldpd; /* Old per data source */ + size_t unclaimed; + size_t ot_moved; /* Number of bits moved by OT processing */ + int repeat; +} uper_ugot_key; + +static int uper_ugot_refill(asn_per_data_t *pd); +static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); + +/* + * Encode an "open type field". + * #10.1, #10.2 + */ +int +uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + ASN_DEBUG("Open type put %s of length %" ASN_PRI_SSIZE " + overhead (1byte?)", td->name, + size); + + bptr = buf; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + ASN_DEBUG("Prepending length %" ASN_PRI_SSIZE + " to %s and allowing to save %" ASN_PRI_SSIZE, + size, td->name, may_save); + if(may_save < 0) break; + if(per_put_many_bits(po, bptr, may_save * 8)) break; + bptr = (char *)bptr + may_save; + size -= may_save; + if(need_eom && uper_put_length(po, 0, 0)) { + FREEMEM(buf); + return -1; + } + } while(size); + + FREEMEM(buf); + if(size) return -1; + + return 0; +} + +static asn_dec_rval_t +uper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = uper_get_length(pd, -1, 0, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, (buf == NULL)? NULL : buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* No one would give us more */ + } + + return rv; +} + +static asn_dec_rval_t CC_NOTUSED +uper_open_type_get_complex(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + uper_ugot_key arg; + asn_dec_rval_t rv; + ssize_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s from %s", td->name, + asn_bit_data_string(pd)); + arg.oldpd = *pd; + arg.unclaimed = 0; + arg.ot_moved = 0; + arg.repeat = 1; + pd->refill = uper_ugot_refill; + pd->refill_key = &arg; + pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ + pd->moved = 0; /* This now counts the open type size in bits */ + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, pd); + ASN_DEBUG_INDENT_ADD(-4); + +#define UPDRESTOREPD do { \ + /* buffer and nboff are valid, preserve them. */ \ + pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ + pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ + pd->refill = arg.oldpd.refill; \ + pd->refill_key = arg.oldpd.refill_key; \ + } while(0) + + if(rv.code != RC_OK) { + UPDRESTOREPD; + return rv; + } + + ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, + asn_bit_data_string(pd), + asn_bit_data_string(&arg.oldpd), + (int)arg.unclaimed, (int)arg.repeat); + + padding = pd->moved % 8; + if(padding) { + int32_t pvalue; + if(padding > 7) { + ASN_DEBUG("Too large padding %d in open type", + (int)padding); + rv.code = RC_FAIL; + UPDRESTOREPD; + return rv; + } + padding = 8 - padding; + ASN_DEBUG("Getting padding of %d bits", (int)padding); + pvalue = per_get_few_bits(pd, padding); + switch(pvalue) { + case -1: + ASN_DEBUG("Padding skip failed"); + UPDRESTOREPD; + ASN__DECODE_STARVED; + case 0: break; + default: + ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", + (int)padding, (int)pvalue); + UPDRESTOREPD; + ASN__DECODE_FAILED; + } + } + if(pd->nboff != pd->nbits) { + ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, + asn_bit_data_string(pd), asn_bit_data_string(&arg.oldpd)); + if(1) { + UPDRESTOREPD; + ASN__DECODE_FAILED; + } else { + arg.unclaimed += pd->nbits - pd->nboff; + } + } + + /* Adjust pd back so it points to original data */ + UPDRESTOREPD; + + /* Skip data not consumed by the decoder */ + if(arg.unclaimed) { + ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); + switch(per_skip_bits(pd, arg.unclaimed)) { + case -1: + ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); + ASN__DECODE_STARVED; + case 0: + ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); + break; + default: + /* Padding must be blank */ + ASN_DEBUG("Non-blank unconsumed padding"); + ASN__DECODE_FAILED; + } + arg.unclaimed = 0; + } + + if(arg.repeat) { + ASN_DEBUG("Not consumed the whole thing"); + rv.code = RC_FAIL; + return rv; + } + + return rv; +} + + +asn_dec_rval_t +uper_open_type_get(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +uper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_TYPE_operation_t s_op; + asn_dec_rval_t rv; + + s_td.name = ""; + s_td.op = &s_op; + s_op.uper_decoder = uper_sot_suck; + + rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} + +/* + * Internal functions. + */ + +static int +uper_ugot_refill(asn_per_data_t *pd) { + uper_ugot_key *arg = pd->refill_key; + ssize_t next_chunk_bytes, next_chunk_bits; + ssize_t avail; + + asn_per_data_t *oldpd = &arg->oldpd; + + ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", + (long)pd->moved, (long)oldpd->moved); + + /* Advance our position to where pd is */ + oldpd->buffer = pd->buffer; + oldpd->nboff = pd->nboff; + oldpd->nbits -= pd->moved - arg->ot_moved; + oldpd->moved += pd->moved - arg->ot_moved; + arg->ot_moved = pd->moved; + + if(arg->unclaimed) { + /* Refill the container */ + if(per_get_few_bits(oldpd, 1)) + return -1; + if(oldpd->nboff == 0) { + assert(0); + return -1; + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff - 1; + pd->nbits = oldpd->nbits; + ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", + (long)pd->moved); + return 0; + } + + if(!arg->repeat) { + ASN_DEBUG("Want more but refill doesn't have it"); + return -1; + } + + next_chunk_bytes = uper_get_length(oldpd, -1, 0, &arg->repeat); + ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", + (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); + if(next_chunk_bytes < 0) return -1; + if(next_chunk_bytes == 0) { + pd->refill = 0; /* No more refills, naturally */ + assert(!arg->repeat); /* Implementation guarantee */ + } + next_chunk_bits = next_chunk_bytes << 3; + avail = oldpd->nbits - oldpd->nboff; + if(avail >= next_chunk_bits) { + pd->nbits = oldpd->nboff + next_chunk_bits; + arg->unclaimed = 0; + ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", + (long)next_chunk_bits, (long)oldpd->moved, + (long)oldpd->nboff, (long)oldpd->nbits, + (long)(oldpd->nbits - oldpd->nboff)); + } else { + pd->nbits = oldpd->nbits; + arg->unclaimed = next_chunk_bits - avail; + ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", + (long)avail, (long)next_chunk_bits, + (long)arg->unclaimed); + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff; + ASN_DEBUG("Refilled pd%s old%s", + asn_bit_data_string(pd), asn_bit_data_string(oldpd)); + return 0; +} + +static int +per_skip_bits(asn_per_data_t *pd, int skip_nbits) { + int hasNonZeroBits = 0; + while(skip_nbits > 0) { + int skip; + + /* per_get_few_bits() is more efficient when nbits <= 24 */ + if(skip_nbits < 24) + skip = skip_nbits; + else + skip = 24; + skip_nbits -= skip; + + switch(per_get_few_bits(pd, skip)) { + case -1: return -1; /* Starving */ + case 0: continue; /* Skipped empty space */ + default: hasNonZeroBits = 1; continue; + } + } + return hasNonZeroBits; +} diff --git a/src/tmx/Asn_J2735/src/2020/uper_support.c b/src/tmx/Asn_J2735/src/2020/uper_support.c new file mode 100644 index 000000000..ce8adc5e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/uper_support.c @@ -0,0 +1,311 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * X.691-201508 #10.9 General rules for encoding a length determinant. + * Get the optionally constrained length "n" from the stream. + */ +ssize_t +uper_get_length(asn_per_data_t *pd, int ebits, size_t lower_bound, + int *repeat) { + ssize_t value; + + *repeat = 0; + + /* #11.9.4.1 Encoding if constrained (according to effective bits) */ + if(ebits >= 0 && ebits <= 16) { + value = per_get_few_bits(pd, ebits); + if(value >= 0) value += lower_bound; + return value; + } + + value = per_get_few_bits(pd, 8); + if((value & 0x80) == 0) { /* #11.9.3.6 */ + return (value & 0x7F); + } else if((value & 0x40) == 0) { /* #11.9.3.7 */ + /* bit 8 ... set to 1 and bit 7 ... set to zero */ + value = ((value & 0x3f) << 8) | per_get_few_bits(pd, 8); + return value; /* potential -1 from per_get_few_bits passes through. */ + } else if(value < 0) { + ASN_DEBUG("END of stream reached for PER"); + return -1; + } + value &= 0x3f; /* this is "m" from X.691, #11.9.3.8 */ + if(value < 1 || value > 4) { + return -1; /* Prohibited by #11.9.3.8 */ + } + *repeat = 1; + return (16384 * value); +} + +/* + * Get the normally small length "n". + * This procedure used to decode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +ssize_t +uper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%d", (int)length); + return length; + } else { + int repeat; + length = uper_get_length(pd, -1, 0, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +/* + * Get the normally small non-negative whole number. + * X.691, #10.6 + */ +ssize_t +uper_get_nsnnwn(asn_per_data_t *pd) { + ssize_t value; + + value = per_get_few_bits(pd, 7); + if(value & 64) { /* implicit (value < 0) */ + value &= 63; + value <<= 2; + value |= per_get_few_bits(pd, 2); + if(value & 128) /* implicit (value < 0) */ + return -1; + if(value == 0) + return 0; + if(value >= 3) + return -1; + value = per_get_few_bits(pd, 8 * value); + return value; + } + + return value; +} + +/* + * X.691-11/2008, #11.6 + * Encoding of a normally small non-negative whole number + */ +int +uper_put_nsnnwn(asn_per_outp_t *po, int n) { + int bytes; + + if(n <= 63) { + if(n < 0) return -1; + return per_put_few_bits(po, n, 7); + } + if(n < 256) + bytes = 1; + else if(n < 65536) + bytes = 2; + else if(n < 256 * 65536) + bytes = 3; + else + return -1; /* This is not a "normally small" value */ + if(per_put_few_bits(po, bytes, 8)) + return -1; + + return per_put_few_bits(po, n, 8 * bytes); +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *out_value, int nbits) { + uintmax_t lhalf; /* Lower half of the number*/ + intmax_t half; + + if(nbits <= 31) { + half = per_get_few_bits(pd, nbits); + if(half < 0) return -1; + *out_value = half; + return 0; + } + + if((size_t)nbits > 8 * sizeof(*out_value)) + return -1; /* RANGE */ + + half = per_get_few_bits(pd, 31); + if(half < 0) return -1; + + if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) + return -1; + + *out_value = ((uintmax_t)half << (nbits - 31)) | lhalf; + return 0; +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int +uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, + int nbits) { + if(nbits <= 31) { + return per_put_few_bits(po, v, nbits); + } else { + /* Put higher portion first, followed by lower 31-bit */ + if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) + return -1; + return per_put_few_bits(po, v, 31); + } +} + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "n" (or part of it) into the stream. + */ +ssize_t +uper_put_length(asn_per_outp_t *po, size_t length, int *need_eom) { + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + if(length <= 127) { /* #11.9.3.6 */ + *need_eom = 0; + return per_put_few_bits(po, length, 8) + ? -1 : (ssize_t)length; + } else if(length < 16384) { /* #10.9.3.7 */ + *need_eom = 0; + return per_put_few_bits(po, length|0x8000, 16) + ? -1 : (ssize_t)length; + } + + *need_eom = 0 == (length & 16383); + length >>= 14; + if(length > 4) { + *need_eom = 0; + length = 4; + } + + return per_put_few_bits(po, 0xC0 | length, 8) + ? -1 : (ssize_t)(length << 14); + +} + + +/* + * Put the normally small length "n" into the stream. + * This procedure used to encode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +int +uper_put_nslength(asn_per_outp_t *po, size_t length) { + if(length <= 64) { + /* #11.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length - 1, 7) ? -1 : 0; + } else { + int need_eom = 0; + if(uper_put_length(po, length, &need_eom) != (ssize_t)length + || need_eom) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +static int +per__imax_range(intmax_t lb, intmax_t ub, uintmax_t *range_r) { + uintmax_t bounds_range; + if((ub < 0) == (lb < 0)) { + bounds_range = ub - lb; + } else if(lb < 0) { + assert(ub >= 0); + bounds_range = 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return -1; + } + *range_r = bounds_range; + return 0; +} + +int +per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output) { + uintmax_t range; + + assert(lb <= ub); + + if(v < lb || v > ub || per__imax_range(lb, ub, &range) < 0) { + /* Range error. */ + return -1; + } + + /* + * Fundamentally what we're doing is returning (v-lb). + * However, this triggers undefined behavior when the word width + * of signed (v) is the same as the size of unsigned (*output). + * In practice, it triggers the UndefinedSanitizer. Therefore we shall + * compute the ranges accurately to avoid C's undefined behavior. + */ + if((v < 0) == (lb < 0)) { + *output = v-lb; + return 0; + } else if(v < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(v+1) + (uintmax_t)lb; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else if(lb < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(lb+1) + (uintmax_t)v; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else { + assert(!"Unreachable"); + return -1; + } +} + +int +per_long_range_rebase(long v, intmax_t lb, intmax_t ub, unsigned long *output) { + uintmax_t tmp = *output; + int rc = per_imax_range_rebase((intmax_t)v, lb, ub, &tmp); + *output = tmp; + return rc; +} + +int +per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp) { + uintmax_t range; + + if(per__imax_range(lb, ub, &range) != 0) { + return -1; + } + + if(inp > range) { + /* + * We can encode something in the given number of bits that technically + * exceeds the range. This is an avenue for security errors, + * so we don't allow that. + */ + return -1; + } + + if(inp <= INTMAX_MAX) { + *outp = (intmax_t)inp + lb; + } else { + *outp = (lb + INTMAX_MAX + 1) + (intmax_t)((inp - INTMAX_MAX) - 1); + } + + return 0; +} + +int +per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp) { + intmax_t tmp = *outp; + int rc = per_imax_range_unrebase((uintmax_t)inp, lb, ub, &tmp); + *outp = tmp; + return rc; +} diff --git a/src/tmx/Asn_J2735/src/2020/xer_decoder.c b/src/tmx/Asn_J2735/src/2020/xer_decoder.c new file mode 100644 index 000000000..2a14557a6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/xer_decoder.c @@ -0,0 +1,369 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* XER/XML parsing support */ + + +/* + * Decode the XER encoding of a given type. + */ +asn_dec_rval_t +xer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *buffer, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return td->op->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); +} + + + +struct xer__cb_arg { + pxml_chunk_type_e chunk_type; + size_t chunk_size; + const void *chunk_buf; + int callback_not_invoked; +}; + +static int +xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { + struct xer__cb_arg *arg = (struct xer__cb_arg *)key; + arg->chunk_type = type; + arg->chunk_size = _chunk_size; + arg->chunk_buf = _chunk_data; + arg->callback_not_invoked = 0; + return -1; /* Terminate the XML parsing */ +} + +/* + * Fetch the next token from the XER/XML stream. + */ +ssize_t +xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { + struct xer__cb_arg arg; + int new_stateContext = *stateContext; + ssize_t ret; + + arg.callback_not_invoked = 1; + ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); + if(ret < 0) return -1; + if(arg.callback_not_invoked) { + assert(ret == 0); /* No data was consumed */ + *ch_type = PXER_WMORE; + return 0; /* Try again with more data */ + } else { + assert(arg.chunk_size); + assert(arg.chunk_buf == buffer); + } + + /* + * Translate the XML chunk types into more convenient ones. + */ + switch(arg.chunk_type) { + case PXML_TEXT: + *ch_type = PXER_TEXT; + break; + case PXML_TAG: + *ch_type = PXER_WMORE; + return 0; /* Want more */ + case PXML_TAG_END: + *ch_type = PXER_TAG; + break; + case PXML_COMMENT: + case PXML_COMMENT_END: + *ch_type = PXER_COMMENT; + break; + } + + *stateContext = new_stateContext; + return arg.chunk_size; +} + +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define RANGLE 0x3e /* '>' */ + +xer_check_tag_e +xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { + const char *buf = (const char *)buf_ptr; + const char *end; + xer_check_tag_e ct = XCT_OPENING; + + if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { + if(size >= 2) + ASN_DEBUG("Broken XML tag: \"%c...%c\"", + buf[0], buf[size - 1]); + return XCT_BROKEN; + } + + /* + * Determine the tag class. + */ + if(buf[1] == CSLASH) { + buf += 2; /* advance past "" */ + ct = XCT_CLOSING; + if(size > 0 && buf[size-1] == CSLASH) + return XCT_BROKEN; /* */ + } else { + buf++; /* advance past "<" */ + size -= 2; /* strip "<" and ">" */ + if(size > 0 && buf[size-1] == CSLASH) { + ct = XCT_BOTH; + size--; /* One more, for "/" */ + } + } + + /* Sometimes we don't care about the tag */ + if(!need_tag || !*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + /* + * Determine the tag name. + */ + for(end = buf + size; buf < end; buf++, need_tag++) { + int b = *buf, n = *need_tag; + if(b != n) { + if(n == 0) { + switch(b) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* "": whitespace is normal */ + return ct; + } + } + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + } + if(b == 0) + return XCT_BROKEN; /* Embedded 0 in buf?! */ + } + if(*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + return ct; +} + + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + if(rval.code != RC_OK) \ + ASN_DEBUG("Failed with %d", rval.code); \ + return rval; \ + } while(0) + +#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ + ssize_t converted_size = body_receiver \ + (struct_key, chunk_buf, chunk_size, \ + (size_t)chunk_size < size); \ + if(converted_size == -1) RETURN(RC_FAIL); \ + if(converted_size == 0 \ + && size == (size_t)chunk_size) \ + RETURN(RC_WMORE); \ + chunk_size = converted_size; \ + } while(0) +#define XER_GOT_EMPTY() do { \ + if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ + RETURN(RC_FAIL); \ + } while(0) + +/* + * Generalized function for decoding the primitive values. + */ +asn_dec_rval_t +xer_decode_general(const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, + const char *xml_tag, /* Expected XML tag */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_key, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_key, const void *chunk_buf, size_t chunk_size, + int have_more) + ) { + + asn_dec_rval_t rval; + ssize_t consumed_myself = 0; + + (void)opt_codec_ctx; + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + */ + if(ctx->phase > 1) RETURN(RC_FAIL); + for(;;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TEXT: + if(ctx->phase == 0) { + /* + * We have to ignore whitespace here, + * but in order to be forward compatible + * with EXTENDED-XER (EMBED-VALUES, #25) + * any text is just ignored here. + */ + } else { + XER_GOT_BODY(buf_ptr, ch_size, size); + } + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + assert(ch_type == PXER_TAG && size); + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + /* + * Phase 0: + * Expecting the opening tag + * for the type being processed. + * Phase 1: + * Waiting for the closing XML tag. + */ + switch(tcv) { + case XCT_BOTH: + if(ctx->phase) break; + /* Finished decoding of an empty element */ + XER_GOT_EMPTY(); + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + case XCT_CLOSING: + if(!ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_UNKNOWN_BO: + /* + * Certain tags in the body may be expected. + */ + if(opt_unexpected_tag_decoder + && opt_unexpected_tag_decoder(struct_key, + buf_ptr, ch_size) >= 0) { + /* Tag's processed fine */ + ADVANCE(ch_size); + if(!ctx->phase) { + /* We are not expecting + * the closing tag anymore. */ + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + } + continue; + } + /* Fall through */ + default: + break; /* Unexpected tag */ + } + + ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); + break; /* Dark and mysterious things have just happened */ + } + + RETURN(RC_FAIL); +} + + +size_t +xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { + const char *p = (const char *)chunk_buf; + const char *pend = (p == NULL)? NULL : p + chunk_size; + + for(; p < pend; p++) { + switch(*p) { + /* X.693, #8.1.4 + * HORISONTAL TAB (9) + * LINE FEED (10) + * CARRIAGE RETURN (13) + * SPACE (32) + */ + case 0x09: case 0x0a: case 0x0d: case 0x20: + continue; + default: + break; + } + break; + } + return (p - (const char *)chunk_buf); +} + +/* + * This is a vastly simplified, non-validating XML tree skipper. + */ +int +xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { + assert(*depth > 0); + switch(tcv) { + case XCT_BOTH: + case XCT_UNKNOWN_BO: + /* These negate each other. */ + return 0; + case XCT_OPENING: + case XCT_UNKNOWN_OP: + ++(*depth); + return 0; + case XCT_CLOSING: + case XCT_UNKNOWN_CL: + if(--(*depth) == 0) + return (tcv == XCT_CLOSING) ? 2 : 1; + return 0; + default: + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/2020/xer_encoder.c b/src/tmx/Asn_J2735/src/2020/xer_encoder.c new file mode 100644 index 000000000..4177ede5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/xer_encoder.c @@ -0,0 +1,237 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The XER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t +xer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, + enum xer_encoder_flags_e xer_flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + asn_enc_rval_t tmper; + const char *mname; + size_t mlen; + int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; + + if(!td || !sptr) goto cb_failed; + + mname = td->xml_tag; + mlen = strlen(mname); + + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = td->op->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("\n", xcan); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +/* + * This is a helper function for xer_fprint, which directs all incoming data + * into the provided file descriptor. + */ +static int +xer__print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + +int +xer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { + asn_enc_rval_t er = {0,0,0}; + + if(!stream) stream = stdout; + if(!td || !sptr) + return -1; + + er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); + if(er.encoded == -1) + return -1; + + return fflush(stream); +} + +struct xer_buffer { + char *buffer; + size_t buffer_size; + size_t allocated_size; +}; + +static int +xer__buffer_append(const void *buffer, size_t size, void *app_key) { + struct xer_buffer *xb = app_key; + + while(xb->buffer_size + size + 1 > xb->allocated_size) { + size_t new_size = 2 * (xb->allocated_size ? xb->allocated_size : 64); + char *new_buf = MALLOC(new_size); + if(!new_buf) return -1; + if (xb->buffer) { + memcpy(new_buf, xb->buffer, xb->buffer_size); + } + FREEMEM(xb->buffer); + xb->buffer = new_buf; + xb->allocated_size = new_size; + } + + memcpy(xb->buffer + xb->buffer_size, buffer, size); + xb->buffer_size += size; + xb->buffer[xb->buffer_size] = '\0'; + return 0; +} + +enum xer_equivalence_e +xer_equivalent(const struct asn_TYPE_descriptor_s *td, const void *struct1, + const void *struct2, FILE *opt_debug_stream) { + struct xer_buffer xb1 = {0, 0, 0}; + struct xer_buffer xb2 = {0, 0, 0}; + asn_enc_rval_t e1, e2; + asn_dec_rval_t rval; + void *sptr = NULL; + + if(!td || !struct1 || !struct2) { + if(opt_debug_stream) { + if(!td) fprintf(opt_debug_stream, "Type descriptor missing\n"); + if(!struct1) fprintf(opt_debug_stream, "Structure 1 missing\n"); + if(!struct2) fprintf(opt_debug_stream, "Structure 2 missing\n"); + } + return XEQ_FAILURE; + } + + e1 = xer_encode(td, struct1, XER_F_BASIC, xer__buffer_append, &xb1); + if(e1.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + return XEQ_ENCODE1_FAILED; + } + + e2 = xer_encode(td, struct2, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ENCODE1_FAILED; + } + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structures XER-encoded into different byte streams:\n=== " + "Structure 1 ===\n%s\n=== Structure 2 ===\n%s\n", + xb1.buffer, xb2.buffer); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DIFFERENT; + } else { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Both structures encoded into the same XER byte stream " + "of size %" ASN_PRI_SIZE ":\n%s", + xb1.buffer_size, xb1.buffer); + } + } + + rval = xer_decode(NULL, td, (void **)&sptr, xb1.buffer, + xb1.buffer_size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decode unexpectedly requires " + "more data:\n%s\n", + td->name, xb1.buffer); + } + /* Fall through */ + case RC_FAIL: + default: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decoding resulted in failure.\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DECODE_FAILED; + } + + if(rval.consumed != xb1.buffer_size + && ((rval.consumed > xb1.buffer_size) + || xer_whitespace_span(xb1.buffer + rval.consumed, + xb1.buffer_size - rval.consumed) + != (xb1.buffer_size - rval.consumed))) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Round-trip decode of %s required less bytes (%" ASN_PRI_SIZE ") than " + "encoded (%" ASN_PRI_SIZE ")\n", + td->name, rval.consumed, xb1.buffer_size); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + /* + * Reuse xb2 to encode newly decoded structure. + */ + FREEMEM(xb2.buffer); + memset(&xb2, 0, sizeof(xb2)); + + e2 = xer_encode(td, sptr, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of round-trip decode of %s failed\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + ASN_STRUCT_FREE(*td, sptr); + sptr = 0; + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "XER Encoding of round-trip decode of %s resulted in " + "different byte stream:\n" + "=== Original ===\n%s\n" + "=== Round-tripped ===\n%s\n", + xb1.buffer, xb2.buffer, td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_SUCCESS; +} + diff --git a/src/tmx/Asn_J2735/src/2020/xer_support.c b/src/tmx/Asn_J2735/src/2020/xer_support.c new file mode 100644 index 000000000..36b4bfbfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/2020/xer_support.c @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* Parser states */ +typedef enum { + ST_TEXT, + ST_TAG_START, + ST_TAG_BODY, + ST_TAG_QUOTE_WAIT, + ST_TAG_QUOTED_STRING, + ST_TAG_UNQUOTED_STRING, + ST_COMMENT_WAIT_DASH1, /* ""[0] */ + ST_COMMENT_CLO_RT /* "-->"[1] */ +} pstate_e; + +static const int +_charclass[256] = { + 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, + 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ +}; +#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) +#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) +#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) + +/* Aliases for characters, ASCII/UTF-8 */ +#define EXCLAM 0x21 /* '!' */ +#define CQUOTE 0x22 /* '"' */ +#define CDASH 0x2d /* '-' */ +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define CEQUAL 0x3d /* '=' */ +#define RANGLE 0x3e /* '>' */ +#define CQUEST 0x3f /* '?' */ + +/* Invoke token callback */ +#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ + int _ret; \ + pstate_e ns = _ns; \ + ssize_t _sz = (p - chunk_start) + _current_too; \ + if (!_sz) { \ + /* Shortcut */ \ + state = _ns; \ + break; \ + } \ + _ret = cb(type, chunk_start, _sz, key); \ + if(_ret < _sz) { \ + if(_current_too && _ret == -1) \ + state = ns; \ + goto finish; \ + } \ + chunk_start = p + _current_too; \ + state = ns; \ + } while(0) + +#define TOKEN_CB(_type, _ns, _current_too) \ + TOKEN_CB_CALL(_type, _ns, _current_too, 0) + +#define PXML_TAG_FINAL_CHUNK_TYPE PXML_TAG_END +#define PXML_COMMENT_FINAL_CHUNK_TYPE PXML_COMMENT_END + +#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ + TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1) + +/* + * Parser itself + */ +ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { + pstate_e state = (pstate_e)*stateContext; + const char *chunk_start = (const char *)xmlbuf; + const char *p = chunk_start; + const char *end = p + size; + + for(; p < end; p++) { + int C = *(const unsigned char *)p; + switch(state) { + case ST_TEXT: + /* + * Initial state: we're in the middle of some text, + * or just have started. + */ + if (C == LANGLE) + /* We're now in the tag, probably */ + TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); + break; + case ST_TAG_START: + if (ALPHA(C) || (C == CSLASH)) + state = ST_TAG_BODY; + else if (C == EXCLAM) + state = ST_COMMENT_WAIT_DASH1; + else + /* + * Not characters and not whitespace. + * Must be something like "3 < 4". + */ + TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ + break; + case ST_TAG_BODY: + switch(C) { + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + case LANGLE: + /* + * The previous tag wasn't completed, but still + * recognized as valid. (Mozilla-compatible) + */ + TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); + break; + case CEQUAL: + state = ST_TAG_QUOTE_WAIT; + break; + } + break; + case ST_TAG_QUOTE_WAIT: + /* + * State after the equal sign ("=") in the tag. + */ + switch(C) { + case CQUOTE: + state = ST_TAG_QUOTED_STRING; + break; + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + default: + if(!WHITESPACE(C)) + /* Unquoted string value */ + state = ST_TAG_UNQUOTED_STRING; + } + break; + case ST_TAG_QUOTED_STRING: + /* + * Tag attribute's string value in quotes. + */ + if(C == CQUOTE) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_TAG_UNQUOTED_STRING: + if(C == RANGLE) { + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + } else if(WHITESPACE(C)) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH1: + if(C == CDASH) { + state = ST_COMMENT_WAIT_DASH2; + } else { + /* Some ordinary tag. */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH2: + if(C == CDASH) { + /* Seen "<--" */ + state = ST_COMMENT; + } else { + /* Some ordinary tag */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT: + if(C == CDASH) { + state = ST_COMMENT_CLO_DASH2; + } + break; + case ST_COMMENT_CLO_DASH2: + if(C == CDASH) { + state = ST_COMMENT_CLO_RT; + } else { + /* This is not an end of a comment */ + state = ST_COMMENT; + } + break; + case ST_COMMENT_CLO_RT: + if(C == RANGLE) { + TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); + } else if(C == CDASH) { + /* Maintain current state, still waiting for '>' */ + } else { + state = ST_COMMENT; + } + break; + } /* switch(*ptr) */ + } /* for() */ + + /* + * Flush the partially processed chunk, state permitting. + */ + if(p - chunk_start) { + switch (state) { + case ST_COMMENT: + TOKEN_CB(PXML_COMMENT, state, 0); + break; + case ST_TEXT: + TOKEN_CB(PXML_TEXT, state, 0); + break; + default: break; /* a no-op */ + } + } + +finish: + *stateContext = (int)state; + return chunk_start - (const char *)xmlbuf; +} + From bd24c114e8678776af77fbe1e004f79affc2cf5e Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Tue, 24 Oct 2023 13:00:33 -0400 Subject: [PATCH 02/18] modified: src/tmx/Asn_J2735/ --- src/build.sh | 2 +- src/tmx/Asn_J2735/CMakeLists.txt | 2 +- .../Asn_J2735/include/asn_j2735_2020/ANY.h | 84 - .../AccelSteerYawRateConfidence.h | 44 - .../include/asn_j2735_2020/Acceleration.h | 47 - .../asn_j2735_2020/AccelerationConfidence.h | 60 - .../asn_j2735_2020/AccelerationSet4Way.h | 45 - .../include/asn_j2735_2020/AddGrpB_Angle.h | 46 - .../asn_j2735_2020/AddGrpB_Elevation.h | 47 - .../include/asn_j2735_2020/AddGrpB_MsgCount.h | 46 - .../include/asn_j2735_2020/AddGrpB_TimeMark.h | 56 - .../include/asn_j2735_2020/AdvisorySpeed.h | 63 - .../asn_j2735_2020/AdvisorySpeedList.h | 44 - .../asn_j2735_2020/AdvisorySpeedType.h | 59 - .../include/asn_j2735_2020/AllowedManeuvers.h | 63 - .../include/asn_j2735_2020/Altitude.h | 42 - .../asn_j2735_2020/AltitudeConfidence.h | 68 - .../include/asn_j2735_2020/AltitudeValue.h | 47 - .../asn_j2735_2020/AmbientAirPressure.h | 47 - .../asn_j2735_2020/AmbientAirTemperature.h | 47 - .../asn_j2735_2020/AnimalPropelledType.h | 59 - .../include/asn_j2735_2020/AnimalType.h | 59 - .../include/asn_j2735_2020/AntennaOffsetSet.h | 44 - .../asn_j2735_2020/AntiLockBrakeStatus.h | 56 - .../include/asn_j2735_2020/ApproachID.h | 47 - .../include/asn_j2735_2020/ApproachOrLane.h | 53 - .../include/asn_j2735_2020/Attachment.h | 62 - .../include/asn_j2735_2020/AttachmentRadius.h | 47 - .../asn_j2735_2020/AuxiliaryBrakeStatus.h | 56 - .../include/asn_j2735_2020/AxleLocation.h | 47 - .../include/asn_j2735_2020/AxleWeight.h | 47 - .../include/asn_j2735_2020/AxleWeightList.h | 44 - .../include/asn_j2735_2020/AxleWeightSet.h | 46 - .../include/asn_j2735_2020/BIT_STRING.h | 75 - .../include/asn_j2735_2020/BOOLEAN.h | 70 - .../include/asn_j2735_2020/BSMcoreData.h | 66 - .../asn_j2735_2020/BasicSafetyMessage.h | 62 - .../asn_j2735_2020/BasicVehicleClass.h | 103 - .../include/asn_j2735_2020/BasicVehicleRole.h | 78 - .../asn_j2735_2020/BrakeAppliedPressure.h | 68 - .../asn_j2735_2020/BrakeAppliedStatus.h | 56 - .../asn_j2735_2020/BrakeBoostApplied.h | 55 - .../asn_j2735_2020/BrakeSystemStatus.h | 50 - .../include/asn_j2735_2020/BumperHeight.h | 47 - .../include/asn_j2735_2020/BumperHeights.h | 41 - .../include/asn_j2735_2020/CargoWeight.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Circle.h | 44 - .../include/asn_j2735_2020/CoarseHeading.h | 47 - .../include/asn_j2735_2020/CodeWord.h | 46 - .../asn_j2735_2020/CoefficientOfFriction.h | 47 - .../asn_j2735_2020/CommonSafetyRequest.h | 61 - .../include/asn_j2735_2020/Common_Angle.h | 47 - .../include/asn_j2735_2020/Common_Elevation.h | 47 - .../include/asn_j2735_2020/Common_MsgCount.h | 47 - .../include/asn_j2735_2020/ComputedLane.h | 95 - .../include/asn_j2735_2020/Confidence.h | 47 - .../include/asn_j2735_2020/ConfidenceSet.h | 58 - .../include/asn_j2735_2020/ConnectingLane.h | 42 - .../include/asn_j2735_2020/Connection.h | 50 - .../ConnectionManeuverAssist-addGrpC.h | 44 - .../asn_j2735_2020/ConnectionManeuverAssist.h | 62 - .../include/asn_j2735_2020/ConnectsToList.h | 44 - .../Asn_J2735/include/asn_j2735_2020/Count.h | 46 - .../Asn_J2735/include/asn_j2735_2020/DDate.h | 42 - .../include/asn_j2735_2020/DDateTime.h | 52 - .../Asn_J2735/include/asn_j2735_2020/DDay.h | 47 - .../include/asn_j2735_2020/DFullTime.h | 46 - .../Asn_J2735/include/asn_j2735_2020/DHour.h | 47 - .../include/asn_j2735_2020/DMinute.h | 47 - .../Asn_J2735/include/asn_j2735_2020/DMonth.h | 47 - .../include/asn_j2735_2020/DMonthDay.h | 40 - .../include/asn_j2735_2020/DOffset.h | 47 - .../include/asn_j2735_2020/DSRCmsgID.h | 96 - .../include/asn_j2735_2020/DSecond.h | 47 - .../Asn_J2735/include/asn_j2735_2020/DTime.h | 44 - .../Asn_J2735/include/asn_j2735_2020/DYear.h | 47 - .../include/asn_j2735_2020/DYearMonth.h | 40 - .../include/asn_j2735_2020/DataParameters.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Day.h | 47 - .../include/asn_j2735_2020/DayOfWeek.h | 60 - .../include/asn_j2735_2020/DegreesLat.h | 47 - .../include/asn_j2735_2020/DegreesLong.h | 47 - .../include/asn_j2735_2020/DeltaAngle.h | 47 - .../include/asn_j2735_2020/DeltaTime.h | 47 - .../include/asn_j2735_2020/DescriptiveName.h | 47 - .../include/asn_j2735_2020/DirectionOfUse.h | 56 - .../include/asn_j2735_2020/DisabledVehicle.h | 46 - .../include/asn_j2735_2020/DistanceUnits.h | 60 - .../asn_j2735_2020/DriveAxleLiftAirPressure.h | 47 - .../asn_j2735_2020/DriveAxleLocation.h | 47 - .../asn_j2735_2020/DriveAxleLubePressure.h | 47 - .../asn_j2735_2020/DriveAxleTemperature.h | 47 - .../asn_j2735_2020/DrivenLineOffsetLg.h | 47 - .../asn_j2735_2020/DrivenLineOffsetSm.h | 47 - .../asn_j2735_2020/DrivingWheelAngle.h | 47 - .../include/asn_j2735_2020/Duration.h | 46 - .../include/asn_j2735_2020/EXTERNAL.h | 65 - .../asn_j2735_2020/ElevationConfidence.h | 68 - .../include/asn_j2735_2020/EmergencyDetails.h | 56 - .../asn_j2735_2020/EmergencyVehicleAlert.h | 73 - .../include/asn_j2735_2020/EmissionType.h | 60 - .../include/asn_j2735_2020/EnabledLaneList.h | 42 - .../asn_j2735_2020/EssMobileFriction.h | 47 - .../include/asn_j2735_2020/EssPrecipRate.h | 47 - .../asn_j2735_2020/EssPrecipSituation.h | 67 - .../include/asn_j2735_2020/EssPrecipYesNo.h | 55 - .../asn_j2735_2020/EssSolarRadiation.h | 47 - .../include/asn_j2735_2020/EventDescription.h | 67 - .../include/asn_j2735_2020/ExitService.h | 69 - .../Asn_J2735/include/asn_j2735_2020/Extent.h | 68 - .../include/asn_j2735_2020/ExteriorLights.h | 60 - .../include/asn_j2735_2020/FuelType.h | 57 - .../asn_j2735_2020/FullPositionVector.h | 64 - .../include/asn_j2735_2020/FurtherInfoID.h | 47 - .../include/asn_j2735_2020/GNSSstatus.h | 59 - .../include/asn_j2735_2020/GenericLane.h | 70 - .../include/asn_j2735_2020/GenericLocations.h | 151 - .../include/asn_j2735_2020/GenericSignage.h | 69 - .../include/asn_j2735_2020/GeographicalPath.h | 96 - .../asn_j2735_2020/GeometricProjection.h | 61 - .../include/asn_j2735_2020/GraphicString.h | 56 - .../include/asn_j2735_2020/GrossDistance.h | 47 - .../include/asn_j2735_2020/GrossSpeed.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Header.h | 50 - .../include/asn_j2735_2020/Heading.h | 47 - .../asn_j2735_2020/HeadingConfidence.h | 60 - .../include/asn_j2735_2020/HeadingSlice.h | 67 - .../include/asn_j2735_2020/Holiday.h | 54 - .../Asn_J2735/include/asn_j2735_2020/Hour.h | 47 - .../asn_j2735_2020/HumanPropelledType.h | 61 - .../include/asn_j2735_2020/IA5String.h | 59 - .../include/asn_j2735_2020/INTEGER.h | 139 - .../include/asn_j2735_2020/ITIScodes.h | 47 - .../include/asn_j2735_2020/ITIScodesAndText.h | 69 - .../include/asn_j2735_2020/ITIStext.h | 47 - .../include/asn_j2735_2020/ITIStextPhrase.h | 47 - .../IncidentResponseEquipment.h | 127 - .../asn_j2735_2020/IntersectionAccessPoint.h | 62 - .../asn_j2735_2020/IntersectionCollision.h | 71 - .../asn_j2735_2020/IntersectionGeometry.h | 69 - .../asn_j2735_2020/IntersectionGeometryList.h | 44 - .../include/asn_j2735_2020/IntersectionID.h | 47 - .../asn_j2735_2020/IntersectionReferenceID.h | 42 - .../IntersectionState-addGrpC.h | 46 - .../asn_j2735_2020/IntersectionState.h | 71 - .../asn_j2735_2020/IntersectionStateList.h | 44 - .../asn_j2735_2020/IntersectionStatusObject.h | 65 - .../include/asn_j2735_2020/IsDolly.h | 46 - .../asn_j2735_2020/Iso3833VehicleType.h | 47 - .../include/asn_j2735_2020/J1939data.h | 64 - .../asn_j2735_2020/LaneAttributes-Barrier.h | 61 - .../asn_j2735_2020/LaneAttributes-Bike.h | 58 - .../asn_j2735_2020/LaneAttributes-Crosswalk.h | 60 - .../asn_j2735_2020/LaneAttributes-Parking.h | 58 - .../asn_j2735_2020/LaneAttributes-Sidewalk.h | 55 - .../asn_j2735_2020/LaneAttributes-Striping.h | 57 - .../LaneAttributes-TrackedVehicle.h | 56 - .../asn_j2735_2020/LaneAttributes-Vehicle.h | 59 - .../include/asn_j2735_2020/LaneAttributes.h | 48 - .../include/asn_j2735_2020/LaneConnectionID.h | 47 - .../LaneDataAttribute-addGrpB.h | 41 - .../asn_j2735_2020/LaneDataAttribute.h | 81 - .../asn_j2735_2020/LaneDataAttributeList.h | 44 - .../include/asn_j2735_2020/LaneDirection.h | 53 - .../Asn_J2735/include/asn_j2735_2020/LaneID.h | 47 - .../include/asn_j2735_2020/LaneList.h | 44 - .../include/asn_j2735_2020/LaneSharing.h | 61 - .../asn_j2735_2020/LaneTypeAttributes.h | 77 - .../include/asn_j2735_2020/LaneWidth.h | 47 - .../include/asn_j2735_2020/Latitude.h | 47 - .../include/asn_j2735_2020/LatitudeDMS.h | 47 - .../include/asn_j2735_2020/LatitudeDMS2.h | 44 - .../include/asn_j2735_2020/LayerID.h | 47 - .../include/asn_j2735_2020/LayerType.h | 63 - .../include/asn_j2735_2020/LightbarInUse.h | 60 - .../include/asn_j2735_2020/Location-quality.h | 58 - .../include/asn_j2735_2020/Location-tech.h | 63 - .../include/asn_j2735_2020/Longitude.h | 47 - .../include/asn_j2735_2020/LongitudeDMS.h | 47 - .../include/asn_j2735_2020/LongitudeDMS2.h | 44 - .../include/asn_j2735_2020/MUTCDCode.h | 62 - .../asn_j2735_2020/ManeuverAssistList.h | 44 - .../include/asn_j2735_2020/MapData-addGrpC.h | 46 - .../include/asn_j2735_2020/MapData.h | 69 - .../include/asn_j2735_2020/MaxTimetoChange.h | 47 - .../asn_j2735_2020/MergeDivergeNodeAngle.h | 47 - .../include/asn_j2735_2020/MessageBLOB.h | 46 - .../include/asn_j2735_2020/MessageFrame.h | 152 - .../include/asn_j2735_2020/MinTimetoChange.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Minute.h | 47 - .../include/asn_j2735_2020/MinuteOfTheYear.h | 47 - .../include/asn_j2735_2020/MinutesAngle.h | 47 - .../include/asn_j2735_2020/MinutesDuration.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Month.h | 47 - .../asn_j2735_2020/MotorizedPropelledType.h | 61 - .../asn_j2735_2020/MovementEvent-addGrpB.h | 52 - .../include/asn_j2735_2020/MovementEvent.h | 59 - .../asn_j2735_2020/MovementEventList.h | 44 - .../include/asn_j2735_2020/MovementList.h | 44 - .../asn_j2735_2020/MovementPhaseState.h | 62 - .../include/asn_j2735_2020/MovementState.h | 61 - .../Asn_J2735/include/asn_j2735_2020/MsgCRC.h | 47 - .../asn_j2735_2020/MultiVehicleResponse.h | 56 - .../include/asn_j2735_2020/NMEA-MsgType.h | 47 - .../include/asn_j2735_2020/NMEA-Payload.h | 47 - .../include/asn_j2735_2020/NMEA-Revision.h | 62 - .../include/asn_j2735_2020/NMEAcorrections.h | 63 - .../include/asn_j2735_2020/NativeEnumerated.h | 76 - .../include/asn_j2735_2020/NativeInteger.h | 71 - .../include/asn_j2735_2020/Node-LL-24B.h | 41 - .../include/asn_j2735_2020/Node-LL-28B.h | 41 - .../include/asn_j2735_2020/Node-LL-32B.h | 41 - .../include/asn_j2735_2020/Node-LL-36B.h | 41 - .../include/asn_j2735_2020/Node-LL-44B.h | 41 - .../include/asn_j2735_2020/Node-LL-48B.h | 41 - .../include/asn_j2735_2020/Node-LLdms-48b.h | 42 - .../include/asn_j2735_2020/Node-LLdms-80b.h | 42 - .../include/asn_j2735_2020/Node-LLmD-64b.h | 42 - .../include/asn_j2735_2020/Node-XY-20b.h | 41 - .../include/asn_j2735_2020/Node-XY-22b.h | 41 - .../include/asn_j2735_2020/Node-XY-24b.h | 41 - .../include/asn_j2735_2020/Node-XY-26b.h | 41 - .../include/asn_j2735_2020/Node-XY-28b.h | 41 - .../include/asn_j2735_2020/Node-XY-32b.h | 41 - .../include/asn_j2735_2020/NodeAttributeLL.h | 67 - .../asn_j2735_2020/NodeAttributeLLList.h | 42 - .../asn_j2735_2020/NodeAttributeSetLL.h | 63 - .../asn_j2735_2020/NodeAttributeSetXY.h | 63 - .../include/asn_j2735_2020/NodeAttributeXY.h | 67 - .../asn_j2735_2020/NodeAttributeXYList.h | 42 - .../Asn_J2735/include/asn_j2735_2020/NodeLL.h | 48 - .../include/asn_j2735_2020/NodeListLL.h | 56 - .../include/asn_j2735_2020/NodeListXY.h | 59 - .../asn_j2735_2020/NodeOffsetPointLL.h | 71 - .../NodeOffsetPointXY-addGrpB.h | 59 - .../asn_j2735_2020/NodeOffsetPointXY.h | 71 - .../include/asn_j2735_2020/NodeSetLL.h | 44 - .../include/asn_j2735_2020/NodeSetXY.h | 44 - .../Asn_J2735/include/asn_j2735_2020/NodeXY.h | 48 - .../NumberOfParticipantsInCluster.h | 59 - .../asn_j2735_2020/OBJECT_IDENTIFIER.h | 184 - .../include/asn_j2735_2020/OCTET_STRING.h | 165 - .../include/asn_j2735_2020/OPEN_TYPE.h | 117 - .../include/asn_j2735_2020/ObjectCount.h | 47 - .../include/asn_j2735_2020/ObjectDescriptor.h | 54 - .../asn_j2735_2020/ObstacleDetection.h | 54 - .../asn_j2735_2020/ObstacleDirection.h | 47 - .../include/asn_j2735_2020/ObstacleDistance.h | 47 - .../include/asn_j2735_2020/Offset-B09.h | 47 - .../include/asn_j2735_2020/Offset-B10.h | 47 - .../include/asn_j2735_2020/Offset-B11.h | 47 - .../include/asn_j2735_2020/Offset-B12.h | 47 - .../include/asn_j2735_2020/Offset-B13.h | 47 - .../include/asn_j2735_2020/Offset-B14.h | 47 - .../include/asn_j2735_2020/Offset-B16.h | 47 - .../include/asn_j2735_2020/OffsetLL-B12.h | 47 - .../include/asn_j2735_2020/OffsetLL-B14.h | 47 - .../include/asn_j2735_2020/OffsetLL-B16.h | 47 - .../include/asn_j2735_2020/OffsetLL-B18.h | 47 - .../include/asn_j2735_2020/OffsetLL-B22.h | 47 - .../include/asn_j2735_2020/OffsetLL-B24.h | 47 - .../include/asn_j2735_2020/OffsetSystem.h | 60 - .../include/asn_j2735_2020/OverlayLaneList.h | 42 - .../include/asn_j2735_2020/PartII-Id.h | 50 - .../include/asn_j2735_2020/PartIIcontent.h | 66 - .../include/asn_j2735_2020/PathHistory.h | 50 - .../include/asn_j2735_2020/PathHistoryPoint.h | 57 - .../asn_j2735_2020/PathHistoryPointList.h | 44 - .../include/asn_j2735_2020/PathPrediction.h | 46 - .../include/asn_j2735_2020/PayloadData.h | 46 - .../asn_j2735_2020/PedestrianBicycleDetect.h | 46 - .../asn_j2735_2020/PersonalAssistive.h | 57 - .../asn_j2735_2020/PersonalClusterRadius.h | 47 - .../PersonalCrossingInProgress.h | 46 - .../asn_j2735_2020/PersonalCrossingRequest.h | 46 - .../asn_j2735_2020/PersonalDeviceUsageState.h | 60 - .../asn_j2735_2020/PersonalDeviceUserType.h | 60 - .../asn_j2735_2020/PersonalSafetyMessage.h | 103 - .../asn_j2735_2020/PivotPointDescription.h | 48 - .../include/asn_j2735_2020/PivotingAllowed.h | 46 - .../asn_j2735_2020/Position3D-addGrpB.h | 48 - .../asn_j2735_2020/Position3D-addGrpC.h | 44 - .../include/asn_j2735_2020/Position3D.h | 59 - .../asn_j2735_2020/PositionConfidence.h | 68 - .../asn_j2735_2020/PositionConfidenceSet.h | 42 - .../asn_j2735_2020/PositionalAccuracy.h | 44 - .../asn_j2735_2020/PreemptPriorityList.h | 44 - .../asn_j2735_2020/PrioritizationResponse.h | 48 - .../PrioritizationResponseList.h | 44 - .../PrioritizationResponseStatus.h | 63 - .../include/asn_j2735_2020/Priority.h | 47 - .../asn_j2735_2020/PriorityRequestType.h | 59 - .../asn_j2735_2020/PrivilegedEventFlags.h | 57 - .../include/asn_j2735_2020/PrivilegedEvents.h | 46 - .../asn_j2735_2020/ProbeDataManagement.h | 100 - .../asn_j2735_2020/ProbeSegmentNumber.h | 47 - .../include/asn_j2735_2020/ProbeVehicleData.h | 70 - .../asn_j2735_2020/PropelledInformation.h | 62 - .../PublicSafetyAndRoadWorkerActivity.h | 57 - .../PublicSafetyDirectingTrafficSubType.h | 58 - .../PublicSafetyEventResponderWorkerType.h | 63 - .../include/asn_j2735_2020/RTCM-Revision.h | 59 - .../include/asn_j2735_2020/RTCMPackage.h | 48 - .../include/asn_j2735_2020/RTCMcorrections.h | 65 - .../include/asn_j2735_2020/RTCMheader.h | 42 - .../include/asn_j2735_2020/RTCMmessage.h | 47 - .../include/asn_j2735_2020/RTCMmessageList.h | 42 - .../include/asn_j2735_2020/Radius-B12.h | 47 - .../asn_j2735_2020/RadiusOfCurvature.h | 47 - .../include/asn_j2735_2020/RainSensor.h | 60 - .../include/asn_j2735_2020/RegionId.h | 51 - .../include/asn_j2735_2020/RegionList.h | 44 - .../include/asn_j2735_2020/RegionOffsets.h | 42 - .../include/asn_j2735_2020/RegionPointSet.h | 50 - .../asn_j2735_2020/RegionalExtension.h | 1337 -- .../asn_j2735_2020/RegulatorySpeedLimit.h | 42 - .../include/asn_j2735_2020/RequestID.h | 47 - .../asn_j2735_2020/RequestImportanceLevel.h | 68 - .../include/asn_j2735_2020/RequestSubRole.h | 68 - .../include/asn_j2735_2020/RequestedItem.h | 72 - .../asn_j2735_2020/RequestedItemList.h | 42 - .../asn_j2735_2020/RequestorDescription.h | 68 - .../asn_j2735_2020/RequestorPositionVector.h | 50 - .../include/asn_j2735_2020/RequestorType.h | 56 - .../asn_j2735_2020/ResponderGroupAffected.h | 69 - .../include/asn_j2735_2020/ResponseType.h | 62 - .../asn_j2735_2020/RestrictionAppliesTo.h | 69 - .../RestrictionClassAssignment.h | 42 - .../asn_j2735_2020/RestrictionClassID.h | 47 - .../asn_j2735_2020/RestrictionClassList.h | 44 - .../RestrictionUserType-addGrpC.h | 44 - .../asn_j2735_2020/RestrictionUserType.h | 68 - .../asn_j2735_2020/RestrictionUserTypeList.h | 44 - .../include/asn_j2735_2020/RoadLaneSetList.h | 44 - .../include/asn_j2735_2020/RoadRegulatorID.h | 47 - .../include/asn_j2735_2020/RoadSegment.h | 67 - .../include/asn_j2735_2020/RoadSegmentID.h | 47 - .../include/asn_j2735_2020/RoadSegmentList.h | 44 - .../asn_j2735_2020/RoadSegmentReferenceID.h | 42 - .../include/asn_j2735_2020/RoadSideAlert.h | 75 - .../include/asn_j2735_2020/RoadSignID.h | 46 - .../asn_j2735_2020/RoadwayCrownAngle.h | 47 - .../Asn_J2735/include/asn_j2735_2020/SPAT.h | 59 - .../include/asn_j2735_2020/SPAT_TimeMark.h | 47 - .../include/asn_j2735_2020/SSPindex.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Sample.h | 41 - .../include/asn_j2735_2020/Scale-B12.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Second.h | 47 - .../include/asn_j2735_2020/SecondOfTime.h | 47 - .../include/asn_j2735_2020/SecondsAngle.h | 47 - .../asn_j2735_2020/SegmentAttributeLL.h | 93 - .../asn_j2735_2020/SegmentAttributeLLList.h | 42 - .../asn_j2735_2020/SegmentAttributeXY.h | 93 - .../asn_j2735_2020/SegmentAttributeXYList.h | 42 - .../asn_j2735_2020/SemiMajorAxisAccuracy.h | 47 - .../asn_j2735_2020/SemiMajorAxisOrientation.h | 47 - .../asn_j2735_2020/SemiMinorAxisAccuracy.h | 47 - .../include/asn_j2735_2020/ShapePointSet.h | 52 - .../include/asn_j2735_2020/SignPrority.h | 47 - .../asn_j2735_2020/SignalControlZone.h | 44 - .../include/asn_j2735_2020/SignalGroupID.h | 47 - .../asn_j2735_2020/SignalHeadLocation.h | 46 - .../asn_j2735_2020/SignalHeadLocationList.h | 44 - .../include/asn_j2735_2020/SignalReqScheme.h | 46 - .../include/asn_j2735_2020/SignalRequest.h | 63 - .../asn_j2735_2020/SignalRequestList.h | 44 - .../asn_j2735_2020/SignalRequestMessage.h | 63 - .../asn_j2735_2020/SignalRequestPackage.h | 60 - .../asn_j2735_2020/SignalRequesterInfo.h | 54 - .../include/asn_j2735_2020/SignalStatus.h | 59 - .../include/asn_j2735_2020/SignalStatusList.h | 44 - .../asn_j2735_2020/SignalStatusMessage.h | 61 - .../asn_j2735_2020/SignalStatusPackage.h | 66 - .../asn_j2735_2020/SignalStatusPackageList.h | 44 - .../include/asn_j2735_2020/SirenInUse.h | 56 - .../include/asn_j2735_2020/Snapshot.h | 50 - .../include/asn_j2735_2020/SnapshotDistance.h | 44 - .../include/asn_j2735_2020/SnapshotTime.h | 44 - .../asn_j2735_2020/SpecialVehicleExtensions.h | 50 - .../Asn_J2735/include/asn_j2735_2020/Speed.h | 47 - .../include/asn_j2735_2020/SpeedAdvice.h | 47 - .../include/asn_j2735_2020/SpeedConfidence.h | 60 - .../include/asn_j2735_2020/SpeedLimit.h | 69 - .../include/asn_j2735_2020/SpeedLimitList.h | 44 - .../include/asn_j2735_2020/SpeedLimitType.h | 68 - .../include/asn_j2735_2020/SpeedProfile.h | 44 - .../asn_j2735_2020/SpeedProfileMeasurement.h | 47 - .../SpeedProfileMeasurementList.h | 42 - .../SpeedandHeadingandThrottleConfidence.h | 44 - .../asn_j2735_2020/StabilityControlStatus.h | 56 - .../include/asn_j2735_2020/StationID.h | 48 - .../asn_j2735_2020/SteeringAxleLubePressure.h | 47 - .../asn_j2735_2020/SteeringAxleTemperature.h | 47 - .../asn_j2735_2020/SteeringWheelAngle.h | 47 - .../SteeringWheelAngleConfidence.h | 56 - .../SteeringWheelAngleRateOfChange.h | 47 - .../include/asn_j2735_2020/SummerTime.h | 54 - .../include/asn_j2735_2020/SunSensor.h | 47 - .../SupplementalVehicleExtensions.h | 71 - .../include/asn_j2735_2020/TemporaryID.h | 47 - .../include/asn_j2735_2020/TenthSecond.h | 47 - .../include/asn_j2735_2020/TermDistance.h | 47 - .../include/asn_j2735_2020/TermTime.h | 47 - .../include/asn_j2735_2020/TestMessage00.h | 48 - .../include/asn_j2735_2020/TestMessage01.h | 48 - .../include/asn_j2735_2020/TestMessage02.h | 48 - .../include/asn_j2735_2020/TestMessage03.h | 48 - .../include/asn_j2735_2020/TestMessage04.h | 48 - .../include/asn_j2735_2020/TestMessage05.h | 48 - .../include/asn_j2735_2020/TestMessage06.h | 48 - .../include/asn_j2735_2020/TestMessage07.h | 48 - .../include/asn_j2735_2020/TestMessage08.h | 48 - .../include/asn_j2735_2020/TestMessage09.h | 48 - .../include/asn_j2735_2020/TestMessage10.h | 48 - .../include/asn_j2735_2020/TestMessage11.h | 48 - .../include/asn_j2735_2020/TestMessage12.h | 48 - .../include/asn_j2735_2020/TestMessage13.h | 48 - .../include/asn_j2735_2020/TestMessage14.h | 48 - .../include/asn_j2735_2020/TestMessage15.h | 48 - .../asn_j2735_2020/ThrottleConfidence.h | 56 - .../include/asn_j2735_2020/ThrottlePosition.h | 47 - .../asn_j2735_2020/TimeChangeDetails.h | 46 - .../include/asn_j2735_2020/TimeConfidence.h | 92 - .../asn_j2735_2020/TimeIntervalConfidence.h | 47 - .../include/asn_j2735_2020/TimeOffset.h | 47 - .../include/asn_j2735_2020/TimeRemaining.h | 47 - .../include/asn_j2735_2020/TireData.h | 56 - .../include/asn_j2735_2020/TireDataList.h | 44 - .../include/asn_j2735_2020/TireLeakageRate.h | 47 - .../include/asn_j2735_2020/TireLocation.h | 47 - .../include/asn_j2735_2020/TirePressure.h | 47 - .../TirePressureThresholdDetection.h | 60 - .../include/asn_j2735_2020/TireTemp.h | 47 - .../asn_j2735_2020/TractionControlStatus.h | 56 - .../include/asn_j2735_2020/TrailerData.h | 48 - .../asn_j2735_2020/TrailerHistoryPoint.h | 52 - .../asn_j2735_2020/TrailerHistoryPointList.h | 44 - .../include/asn_j2735_2020/TrailerMass.h | 47 - .../asn_j2735_2020/TrailerUnitDescription.h | 69 - .../TrailerUnitDescriptionList.h | 44 - .../include/asn_j2735_2020/TrailerWeight.h | 47 - .../include/asn_j2735_2020/TransitStatus.h | 56 - .../asn_j2735_2020/TransitVehicleOccupancy.h | 60 - .../asn_j2735_2020/TransitVehicleStatus.h | 57 - .../asn_j2735_2020/TransmissionAndSpeed.h | 42 - .../asn_j2735_2020/TransmissionState.h | 60 - .../asn_j2735_2020/TravelerDataFrame.h | 116 - .../asn_j2735_2020/TravelerDataFrameList.h | 44 - .../include/asn_j2735_2020/TravelerInfoType.h | 59 - .../asn_j2735_2020/TravelerInformation.h | 63 - .../include/asn_j2735_2020/URL-Base.h | 47 - .../include/asn_j2735_2020/URL-Link.h | 46 - .../include/asn_j2735_2020/URL-Short.h | 47 - .../include/asn_j2735_2020/UniqueMSGID.h | 47 - .../asn_j2735_2020/UserSizeAndBehaviour.h | 56 - .../include/asn_j2735_2020/VINstring.h | 47 - .../include/asn_j2735_2020/ValidRegion.h | 65 - .../asn_j2735_2020/VehicleClassification.h | 69 - .../include/asn_j2735_2020/VehicleData.h | 52 - .../asn_j2735_2020/VehicleEventFlags.h | 64 - .../asn_j2735_2020/VehicleGroupAffected.h | 90 - .../include/asn_j2735_2020/VehicleHeight.h | 47 - .../include/asn_j2735_2020/VehicleID.h | 53 - .../include/asn_j2735_2020/VehicleIdent.h | 77 - .../include/asn_j2735_2020/VehicleLength.h | 47 - .../include/asn_j2735_2020/VehicleMass.h | 47 - .../asn_j2735_2020/VehicleSafetyExtensions.h | 52 - .../include/asn_j2735_2020/VehicleSize.h | 42 - .../include/asn_j2735_2020/VehicleStatus.h | 147 - .../VehicleStatusDeviceTypeTag.h | 84 - .../asn_j2735_2020/VehicleStatusRequest.h | 50 - .../asn_j2735_2020/VehicleStatusRequestList.h | 44 - .../asn_j2735_2020/VehicleToLanePosition.h | 46 - .../VehicleToLanePositionList.h | 44 - .../include/asn_j2735_2020/VehicleType.h | 71 - .../include/asn_j2735_2020/VehicleWidth.h | 47 - .../include/asn_j2735_2020/Velocity.h | 47 - .../include/asn_j2735_2020/VertOffset-B07.h | 47 - .../include/asn_j2735_2020/VertOffset-B08.h | 47 - .../include/asn_j2735_2020/VertOffset-B09.h | 47 - .../include/asn_j2735_2020/VertOffset-B10.h | 47 - .../include/asn_j2735_2020/VertOffset-B11.h | 47 - .../include/asn_j2735_2020/VertOffset-B12.h | 47 - .../asn_j2735_2020/VerticalAcceleration.h | 47 - .../VerticalAccelerationThreshold.h | 56 - .../include/asn_j2735_2020/VerticalOffset.h | 68 - .../include/asn_j2735_2020/WaitOnStopline.h | 46 - .../include/asn_j2735_2020/WeatherProbe.h | 50 - .../include/asn_j2735_2020/WeatherReport.h | 54 - .../asn_j2735_2020/WheelEndElectFault.h | 56 - .../asn_j2735_2020/WheelSensorStatus.h | 56 - .../include/asn_j2735_2020/WiperRate.h | 47 - .../include/asn_j2735_2020/WiperSet.h | 44 - .../include/asn_j2735_2020/WiperStatus.h | 62 - .../include/asn_j2735_2020/WorkZone.h | 69 - .../include/asn_j2735_2020/YawRate.h | 47 - .../asn_j2735_2020/YawRateConfidence.h | 60 - .../Asn_J2735/include/asn_j2735_2020/Year.h | 47 - .../include/asn_j2735_2020/ZoneLength.h | 47 - .../Asn_J2735/include/asn_j2735_2020/Zoom.h | 47 - .../include/asn_j2735_2020/aper_decoder.h | 47 - .../include/asn_j2735_2020/aper_encoder.h | 63 - .../include/asn_j2735_2020/aper_opentype.h | 30 - .../include/asn_j2735_2020/aper_support.h | 63 - .../include/asn_j2735_2020/asn_SEQUENCE_OF.h | 52 - .../include/asn_j2735_2020/asn_SET_OF.h | 72 - .../include/asn_j2735_2020/asn_application.h | 173 - .../include/asn_j2735_2020/asn_bit_data.h | 83 - .../include/asn_j2735_2020/asn_codecs.h | 108 - .../include/asn_j2735_2020/asn_codecs_prim.h | 56 - .../include/asn_j2735_2020/asn_config.h | 2 - .../include/asn_j2735_2020/asn_constant.h | 308 - .../include/asn_j2735_2020/asn_internal.h | 187 - .../include/asn_j2735_2020/asn_ioc.h | 51 - .../include/asn_j2735_2020/asn_random_fill.h | 51 - .../include/asn_j2735_2020/asn_system.h | 169 - .../include/asn_j2735_2020/ber_decoder.h | 66 - .../include/asn_j2735_2020/ber_tlv_length.h | 50 - .../include/asn_j2735_2020/ber_tlv_tag.h | 60 - .../include/asn_j2735_2020/constr_CHOICE.h | 119 - .../include/asn_j2735_2020/constr_SEQUENCE.h | 95 - .../asn_j2735_2020/constr_SEQUENCE_OF.h | 67 - .../include/asn_j2735_2020/constr_SET_OF.h | 102 - .../include/asn_j2735_2020/constr_TYPE.h | 295 - .../include/asn_j2735_2020/constraints.h | 63 - .../include/asn_j2735_2020/der_encoder.h | 68 - .../include/asn_j2735_2020/jer_encoder.h | 86 - .../include/asn_j2735_2020/oer_decoder.h | 72 - .../include/asn_j2735_2020/oer_encoder.h | 70 - .../include/asn_j2735_2020/oer_support.h | 47 - .../include/asn_j2735_2020/per_decoder.h | 30 - .../include/asn_j2735_2020/per_encoder.h | 38 - .../include/asn_j2735_2020/per_opentype.h | 24 - .../include/asn_j2735_2020/per_support.h | 54 - .../include/asn_j2735_2020/uper_decoder.h | 47 - .../include/asn_j2735_2020/uper_encoder.h | 62 - .../include/asn_j2735_2020/uper_opentype.h | 34 - .../include/asn_j2735_2020/uper_support.h | 77 - .../include/asn_j2735_2020/xer_decoder.h | 106 - .../include/asn_j2735_2020/xer_encoder.h | 83 - .../include/asn_j2735_2020/xer_support.h | 55 - .../AccelSteerYawRateConfidence.h | 42 - .../include/asn_j2735_r41/Acceleration.h | 41 - .../asn_j2735_r41/AccelerationConfidence.h | 53 - .../asn_j2735_r41/AccelerationSet4Way.h | 41 - .../include/asn_j2735_r41/AdvisorySpeed.h | 57 - .../include/asn_j2735_r41/AdvisorySpeedList.h | 44 - .../include/asn_j2735_r41/AdvisorySpeedType.h | 52 - .../include/asn_j2735_r41/AllowedManeuvers.h | 57 - .../include/asn_j2735_r41/Altitude.h | 40 - .../asn_j2735_r41/AltitudeConfidence.h | 61 - .../include/asn_j2735_r41/AltitudeValue.h | 41 - .../asn_j2735_r41/AmbientAirPressure.h | 41 - .../asn_j2735_r41/AmbientAirTemperature.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Angle.h | 41 - .../asn_j2735_r41/AnimalPropelledType.h | 52 - .../include/asn_j2735_r41/AnimalType.h | 52 - .../include/asn_j2735_r41/AntennaOffsetSet.h | 41 - .../asn_j2735_r41/AntiLockBrakeStatus.h | 49 - .../include/asn_j2735_r41/ApproachID.h | 41 - .../include/asn_j2735_r41/Attachment.h | 55 - .../include/asn_j2735_r41/AttachmentRadius.h | 41 - .../asn_j2735_r41/AuxiliaryBrakeStatus.h | 49 - .../include/asn_j2735_r41/AxleLocation.h | 41 - .../include/asn_j2735_r41/AxleWeight.h | 41 - .../include/asn_j2735_r41/BIT_STRING.h | 33 - .../Asn_J2735/include/asn_j2735_r41/BOOLEAN.h | 36 - .../Asn_J2735/include/asn_j2735_r41/BSMblob.h | 41 - .../asn_j2735_r41/BasicSafetyMessage.h | 54 - .../asn_j2735_r41/BasicSafetyMessageVerbose.h | 78 - .../asn_j2735_r41/BrakeAppliedPressure.h | 61 - .../asn_j2735_r41/BrakeAppliedStatus.h | 50 - .../include/asn_j2735_r41/BrakeBoostApplied.h | 48 - .../include/asn_j2735_r41/BrakeSystemStatus.h | 41 - .../include/asn_j2735_r41/BumperHeightFront.h | 41 - .../include/asn_j2735_r41/BumperHeightRear.h | 41 - .../include/asn_j2735_r41/BumperHeights.h | 40 - .../include/asn_j2735_r41/CargoWeight.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Circle.h | 59 - .../include/asn_j2735_r41/CodeWord.h | 41 - .../asn_j2735_r41/CoefficientOfFriction.h | 41 - .../asn_j2735_r41/CommonSafetyRequest.h | 55 - .../include/asn_j2735_r41/ComputedLane.h | 89 - .../include/asn_j2735_r41/ConfidenceSet.h | 57 - .../include/asn_j2735_r41/ConnectingLane.h | 40 - .../include/asn_j2735_r41/Connection.h | 51 - .../asn_j2735_r41/ConnectionManeuverAssist.h | 56 - .../include/asn_j2735_r41/ConnectsToList.h | 44 - .../Asn_J2735/include/asn_j2735_r41/Count.h | 41 - .../Asn_J2735/include/asn_j2735_r41/DDate.h | 42 - .../include/asn_j2735_r41/DDateTime.h | 48 - .../Asn_J2735/include/asn_j2735_r41/DDay.h | 41 - .../include/asn_j2735_r41/DFullTime.h | 46 - .../Asn_J2735/include/asn_j2735_r41/DHour.h | 41 - .../Asn_J2735/include/asn_j2735_r41/DMinute.h | 41 - .../Asn_J2735/include/asn_j2735_r41/DMonth.h | 41 - .../include/asn_j2735_r41/DMonthDay.h | 40 - .../Asn_J2735/include/asn_j2735_r41/DOffset.h | 41 - .../include/asn_j2735_r41/DSRCEquippedType.h | 41 - .../include/asn_j2735_r41/DSRCmsgID.h | 65 - .../include/asn_j2735_r41/DSRCmsgID2.h | 41 - .../include/asn_j2735_r41/DSRCmsgSubID.h | 41 - .../Asn_J2735/include/asn_j2735_r41/DSecond.h | 41 - .../include/asn_j2735_r41/DSecond2.h | 41 - .../Asn_J2735/include/asn_j2735_r41/DTime.h | 42 - .../Asn_J2735/include/asn_j2735_r41/DYear.h | 41 - .../include/asn_j2735_r41/DYearMonth.h | 40 - .../include/asn_j2735_r41/DataParameters.h | 45 - src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h | 41 - .../include/asn_j2735_r41/DayOfWeek.h | 53 - .../include/asn_j2735_r41/DegreesLat.h | 41 - .../include/asn_j2735_r41/DegreesLong.h | 41 - .../include/asn_j2735_r41/DeltaAngle.h | 41 - .../include/asn_j2735_r41/DescriptiveName.h | 41 - .../include/asn_j2735_r41/DestinationType.h | 40 - .../include/asn_j2735_r41/DirectionOfUse.h | 51 - .../asn_j2735_r41/DriveAxleLiftAirPressure.h | 41 - .../include/asn_j2735_r41/DriveAxleLocation.h | 41 - .../asn_j2735_r41/DriveAxleLubePressure.h | 41 - .../asn_j2735_r41/DriveAxleTemperature.h | 41 - .../asn_j2735_r41/DrivenLineOffsetLg.h | 41 - .../asn_j2735_r41/DrivenLineOffsetSm.h | 41 - .../include/asn_j2735_r41/DrivingWheelAngle.h | 41 - .../EU-Reg-ConnectionManeuverAssist.h | 45 - .../asn_j2735_r41/EU-Reg-IntersectionState.h | 47 - .../include/asn_j2735_r41/EU-Reg-MapData.h | 47 - .../include/asn_j2735_r41/EU-Reg-Position3D.h | 42 - .../EU-Reg-RestrictionUserType.h | 42 - .../include/asn_j2735_r41/Elevation.h | 41 - .../include/asn_j2735_r41/Elevation2.h | 41 - .../asn_j2735_r41/ElevationConfidence.h | 61 - .../include/asn_j2735_r41/EmergencyDetails.h | 41 - .../asn_j2735_r41/EmergencyVehicleAlert.h | 62 - .../include/asn_j2735_r41/EmissionType.h | 53 - .../include/asn_j2735_r41/EnabledLaneList.h | 39 - .../include/asn_j2735_r41/EssMobileFriction.h | 41 - .../include/asn_j2735_r41/EssPrecipRate.h | 41 - .../asn_j2735_r41/EssPrecipSituation.h | 60 - .../include/asn_j2735_r41/EssPrecipYesNo.h | 48 - .../include/asn_j2735_r41/EssSolarRadiation.h | 41 - .../include/asn_j2735_r41/EstimatedTimeType.h | 41 - .../include/asn_j2735_r41/EventFlags.h | 41 - .../include/asn_j2735_r41/ExitService.h | 63 - .../Asn_J2735/include/asn_j2735_r41/Extent.h | 57 - .../include/asn_j2735_r41/ExteriorLights.h | 41 - .../asn_j2735_r41/FullPositionVector.h | 65 - .../include/asn_j2735_r41/FurtherInfoID.h | 41 - .../include/asn_j2735_r41/GPSstatus.h | 53 - .../include/asn_j2735_r41/GenericLane.h | 66 - .../include/asn_j2735_r41/GenericSignage.h | 63 - .../Asn_J2735/include/asn_j2735_r41/Heading.h | 41 - .../include/asn_j2735_r41/HeadingConfidence.h | 53 - .../include/asn_j2735_r41/HeadingSlice.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Holiday.h | 47 - .../Asn_J2735/include/asn_j2735_r41/Hour.h | 41 - .../asn_j2735_r41/HumanPropelledType.h | 54 - .../include/asn_j2735_r41/IA5String.h | 27 - .../Asn_J2735/include/asn_j2735_r41/INTEGER.h | 82 - .../include/asn_j2735_r41/ITIScodes.h | 41 - .../include/asn_j2735_r41/ITIScodesAndText.h | 63 - .../include/asn_j2735_r41/ITIStext.h | 41 - .../asn_j2735_r41/IncidentResponseEquipment.h | 120 - .../asn_j2735_r41/IntersectionCollision.h | 56 - .../asn_j2735_r41/IntersectionGeometry.h | 65 - .../asn_j2735_r41/IntersectionGeometryList.h | 44 - .../include/asn_j2735_r41/IntersectionID.h | 41 - .../asn_j2735_r41/IntersectionReferenceID.h | 40 - .../include/asn_j2735_r41/IntersectionState.h | 70 - .../asn_j2735_r41/IntersectionStateList.h | 44 - .../asn_j2735_r41/IntersectionStatusObject.h | 59 - .../include/asn_j2735_r41/J1939data.h | 104 - .../include/asn_j2735_r41/JPN-Angle.h | 41 - .../include/asn_j2735_r41/JPN-Elevation.h | 41 - .../include/asn_j2735_r41/JPN-MsgCount.h | 41 - .../asn_j2735_r41/JPN-Reg-LaneDataAttribute.h | 40 - .../asn_j2735_r41/JPN-Reg-MovementEvent.h | 50 - .../asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h | 56 - .../asn_j2735_r41/JPN-Reg-Position3D.h | 46 - .../include/asn_j2735_r41/JPN-TimeMark.h | 56 - .../asn_j2735_r41/LaneAttributes-Barrier.h | 55 - .../asn_j2735_r41/LaneAttributes-Bike.h | 52 - .../asn_j2735_r41/LaneAttributes-Crosswalk.h | 54 - .../asn_j2735_r41/LaneAttributes-Parking.h | 52 - .../asn_j2735_r41/LaneAttributes-Sidewalk.h | 49 - .../asn_j2735_r41/LaneAttributes-Striping.h | 51 - .../LaneAttributes-TrackedVehicle.h | 50 - .../asn_j2735_r41/LaneAttributes-Vehicle.h | 52 - .../include/asn_j2735_r41/LaneAttributes.h | 49 - .../include/asn_j2735_r41/LaneConnectionID.h | 41 - .../include/asn_j2735_r41/LaneDataAttribute.h | 69 - .../asn_j2735_r41/LaneDataAttributeList.h | 44 - .../include/asn_j2735_r41/LaneDirection.h | 47 - .../Asn_J2735/include/asn_j2735_r41/LaneID.h | 41 - .../include/asn_j2735_r41/LaneList.h | 44 - .../include/asn_j2735_r41/LaneNumber.h | 41 - .../include/asn_j2735_r41/LaneSharing.h | 55 - .../asn_j2735_r41/LaneTypeAttributes.h | 74 - .../include/asn_j2735_r41/LaneWidth.h | 41 - .../include/asn_j2735_r41/Latitude.h | 41 - .../include/asn_j2735_r41/LatitudeDMS.h | 41 - .../include/asn_j2735_r41/LatitudeDMS2.h | 42 - .../Asn_J2735/include/asn_j2735_r41/LayerID.h | 41 - .../include/asn_j2735_r41/LayerType.h | 56 - .../include/asn_j2735_r41/LightbarInUse.h | 55 - .../include/asn_j2735_r41/Location-quality.h | 53 - .../include/asn_j2735_r41/Location-tech.h | 56 - .../include/asn_j2735_r41/Longitude.h | 41 - .../include/asn_j2735_r41/LongitudeDMS.h | 41 - .../include/asn_j2735_r41/LongitudeDMS2.h | 42 - .../include/asn_j2735_r41/MUTCDCode.h | 55 - .../asn_j2735_r41/ManeuverAssistList.h | 44 - .../Asn_J2735/include/asn_j2735_r41/MapData.h | 71 - .../include/asn_j2735_r41/MaxTimetoChange.h | 41 - .../asn_j2735_r41/MergeDivergeNodeAngle.h | 41 - .../include/asn_j2735_r41/MinTimetoChange.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Minute.h | 41 - .../include/asn_j2735_r41/MinuteOfTheYear.h | 41 - .../include/asn_j2735_r41/MinutesAngle.h | 41 - .../include/asn_j2735_r41/MinutesDuration.h | 41 - .../include/asn_j2735_r41/MobilityNeeds.h | 40 - .../include/asn_j2735_r41/MobilityNeedsList.h | 41 - .../include/asn_j2735_r41/MobilityNeedsType.h | 48 - .../asn_j2735_r41/ModeOfTransportType.h | 49 - .../Asn_J2735/include/asn_j2735_r41/Month.h | 41 - .../asn_j2735_r41/MotorizedPropelledType.h | 54 - .../include/asn_j2735_r41/MovementEvent.h | 55 - .../include/asn_j2735_r41/MovementEventList.h | 44 - .../include/asn_j2735_r41/MovementList.h | 44 - .../asn_j2735_r41/MovementPhaseState.h | 55 - .../include/asn_j2735_r41/MovementState.h | 56 - .../Asn_J2735/include/asn_j2735_r41/MsgCRC.h | 41 - .../include/asn_j2735_r41/MsgCount.h | 41 - .../asn_j2735_r41/MultiVehicleResponse.h | 49 - .../include/asn_j2735_r41/NMEA-Corrections.h | 50 - .../include/asn_j2735_r41/NMEA-MsgType.h | 41 - .../include/asn_j2735_r41/NMEA-Payload.h | 41 - .../include/asn_j2735_r41/NMEA-Revision.h | 55 - .../include/asn_j2735_r41/NTCIPVehicleclass.h | 41 - .../include/asn_j2735_r41/NativeEnumerated.h | 32 - .../include/asn_j2735_r41/NativeInteger.h | 37 - .../include/asn_j2735_r41/Node-LLdms-48b.h | 40 - .../include/asn_j2735_r41/Node-LLdms-80b.h | 40 - .../include/asn_j2735_r41/Node-LLmD-64b.h | 40 - .../include/asn_j2735_r41/Node-XY-20b.h | 39 - .../include/asn_j2735_r41/Node-XY-22b.h | 39 - .../include/asn_j2735_r41/Node-XY-24b.h | 39 - .../include/asn_j2735_r41/Node-XY-26b.h | 39 - .../include/asn_j2735_r41/Node-XY-28b.h | 39 - .../include/asn_j2735_r41/Node-XY-32b.h | 39 - .../Asn_J2735/include/asn_j2735_r41/Node.h | 49 - .../include/asn_j2735_r41/NodeAttribute.h | 60 - .../include/asn_j2735_r41/NodeAttributeList.h | 39 - .../include/asn_j2735_r41/NodeAttributeSet.h | 60 - .../include/asn_j2735_r41/NodeList.h | 39 - .../include/asn_j2735_r41/NodeList2.h | 56 - .../include/asn_j2735_r41/NodeOffsetPoint.h | 68 - .../Asn_J2735/include/asn_j2735_r41/NodeSet.h | 44 - .../NumberOfParticipantsInCluster.h | 52 - .../include/asn_j2735_r41/OCTET_STRING.h | 86 - .../include/asn_j2735_r41/ObjectCount.h | 41 - .../include/asn_j2735_r41/ObstacleDirection.h | 41 - .../include/asn_j2735_r41/ObstacleDistance.h | 41 - .../include/asn_j2735_r41/Offset-B10.h | 41 - .../include/asn_j2735_r41/Offset-B11.h | 41 - .../include/asn_j2735_r41/Offset-B12.h | 41 - .../include/asn_j2735_r41/Offset-B13.h | 41 - .../include/asn_j2735_r41/Offset-B14.h | 41 - .../include/asn_j2735_r41/Offset-B16.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Offsets.h | 41 - .../include/asn_j2735_r41/OverlayLaneList.h | 39 - .../include/asn_j2735_r41/PathHistory.h | 95 - .../asn_j2735_r41/PathHistoryPointType-01.h | 46 - .../asn_j2735_r41/PathHistoryPointType-02.h | 41 - .../asn_j2735_r41/PathHistoryPointType-03.h | 41 - .../asn_j2735_r41/PathHistoryPointType-04.h | 41 - .../asn_j2735_r41/PathHistoryPointType-05.h | 41 - .../asn_j2735_r41/PathHistoryPointType-06.h | 41 - .../asn_j2735_r41/PathHistoryPointType-07.h | 41 - .../asn_j2735_r41/PathHistoryPointType-08.h | 41 - .../asn_j2735_r41/PathHistoryPointType-09.h | 41 - .../asn_j2735_r41/PathHistoryPointType-10.h | 41 - .../include/asn_j2735_r41/PathPrediction.h | 43 - .../Asn_J2735/include/asn_j2735_r41/Payload.h | 41 - .../include/asn_j2735_r41/PayloadData.h | 41 - .../asn_j2735_r41/PedestrianBicycleDetect.h | 41 - .../include/asn_j2735_r41/PersonalAssistive.h | 51 - .../asn_j2735_r41/PersonalClusterRadius.h | 41 - .../PersonalCrossingInProgress.h | 41 - .../asn_j2735_r41/PersonalCrossingRequest.h | 41 - .../asn_j2735_r41/PersonalDeviceUsageState.h | 54 - .../asn_j2735_r41/PersonalDeviceUserType.h | 53 - .../asn_j2735_r41/PersonalMobilityMessage.h | 65 - .../PersonalMobilityMessageStatusType.h | 51 - .../asn_j2735_r41/PersonalSafetyMessage.h | 95 - .../include/asn_j2735_r41/Position3D-2.h | 53 - .../include/asn_j2735_r41/Position3D.h | 42 - .../asn_j2735_r41/PositionConfidence.h | 61 - .../asn_j2735_r41/PositionConfidenceSet.h | 41 - .../asn_j2735_r41/PositionalAccuracy.h | 41 - .../asn_j2735_r41/PreemptPriorityList.h | 44 - .../asn_j2735_r41/PrioritizationResponse.h | 46 - .../PrioritizationResponseList.h | 44 - .../PrioritizationResponseStatus.h | 52 - .../include/asn_j2735_r41/Priority.h | 41 - .../asn_j2735_r41/ProbeDataManagement.h | 101 - .../asn_j2735_r41/ProbeSegmentNumber.h | 41 - .../include/asn_j2735_r41/ProbeVehicleData.h | 67 - .../asn_j2735_r41/PropelledInformation.h | 59 - .../PublicSafetyAndRoadWorkerActivity.h | 51 - .../PublicSafetyDirectingTrafficSubType.h | 52 - .../PublicSafetyEventResponderWorkerType.h | 56 - .../include/asn_j2735_r41/RTCM-Corrections.h | 65 - .../Asn_J2735/include/asn_j2735_r41/RTCM-ID.h | 41 - .../include/asn_j2735_r41/RTCM-Payload.h | 41 - .../include/asn_j2735_r41/RTCM-Revision.h | 65 - .../include/asn_j2735_r41/RTCMHeader.h | 41 - .../include/asn_j2735_r41/RTCMPackage.h | 80 - .../Asn_J2735/include/asn_j2735_r41/RTCMmsg.h | 46 - .../include/asn_j2735_r41/RainSensor.h | 53 - .../include/asn_j2735_r41/Reg-AdvisorySpeed.h | 40 - .../include/asn_j2735_r41/Reg-ComputedLane.h | 40 - .../Reg-ConnectionManeuverAssist.h | 40 - .../include/asn_j2735_r41/Reg-GenericLane.h | 40 - .../include/asn_j2735_r41/Reg-Intersection.h | 40 - .../asn_j2735_r41/Reg-IntersectionState.h | 40 - .../asn_j2735_r41/Reg-LaneAttributes.h | 40 - .../asn_j2735_r41/Reg-LaneDataAttribute.h | 40 - .../include/asn_j2735_r41/Reg-MapData.h | 40 - .../include/asn_j2735_r41/Reg-MovementEvent.h | 40 - .../include/asn_j2735_r41/Reg-MovementState.h | 40 - .../include/asn_j2735_r41/Reg-NodeAttribute.h | 40 - .../asn_j2735_r41/Reg-NodeOffsetPoint.h | 40 - .../Reg-PersonalMobilityMessage.h | 40 - .../asn_j2735_r41/Reg-PersonalSafetyMessage.h | 40 - .../include/asn_j2735_r41/Reg-Position3D.h | 40 - .../asn_j2735_r41/Reg-RestrictionUserType.h | 40 - .../include/asn_j2735_r41/Reg-RoadSegment.h | 40 - .../include/asn_j2735_r41/Reg-SPAT.h | 40 - .../asn_j2735_r41/Reg-SignalControlZone.h | 40 - .../include/asn_j2735_r41/RegionList.h | 44 - .../include/asn_j2735_r41/RegionOffsets.h | 40 - .../include/asn_j2735_r41/RegionPointSet.h | 49 - .../asn_j2735_r41/RegionalAdvisorySpeed.h | 41 - .../asn_j2735_r41/RegionalComputedLane.h | 41 - .../RegionalConnectionManeuverAssist.h | 41 - .../asn_j2735_r41/RegionalGenericLane.h | 41 - .../asn_j2735_r41/RegionalIntersection.h | 41 - .../asn_j2735_r41/RegionalIntersectionState.h | 41 - .../asn_j2735_r41/RegionalLaneAttributes.h | 41 - .../asn_j2735_r41/RegionalLaneDataAttribute.h | 41 - .../include/asn_j2735_r41/RegionalMapData.h | 41 - .../asn_j2735_r41/RegionalMovementEvent.h | 41 - .../asn_j2735_r41/RegionalMovementState.h | 41 - .../asn_j2735_r41/RegionalNodeAttribute.h | 41 - .../asn_j2735_r41/RegionalNodeAttributeList.h | 44 - .../asn_j2735_r41/RegionalNodeOffsetPoint.h | 41 - .../RegionalPersonalMobilityMessage.h | 41 - .../RegionalPersonalSafetyMessage.h | 41 - .../asn_j2735_r41/RegionalPosition3D.h | 41 - .../RegionalRestrictionUserType.h | 41 - .../asn_j2735_r41/RegionalRoadSegment.h | 41 - .../include/asn_j2735_r41/RegionalSPAT.h | 41 - .../asn_j2735_r41/RegionalSignalControlZone.h | 41 - .../asn_j2735_r41/RegulatorySpeedLimit.h | 40 - .../include/asn_j2735_r41/RequestID.h | 41 - .../include/asn_j2735_r41/RequestedItem.h | 66 - .../asn_j2735_r41/ResponderGroupAffected.h | 62 - .../include/asn_j2735_r41/ResponseType.h | 49 - .../asn_j2735_r41/RestrictionAppliesTo.h | 62 - .../RestrictionClassAssignment.h | 40 - .../asn_j2735_r41/RestrictionClassID.h | 41 - .../asn_j2735_r41/RestrictionClassList.h | 44 - .../asn_j2735_r41/RestrictionUserType.h | 50 - .../asn_j2735_r41/RestrictionUserTypeList.h | 44 - .../include/asn_j2735_r41/RoadLaneSetList.h | 44 - .../include/asn_j2735_r41/RoadRegulatorID.h | 41 - .../include/asn_j2735_r41/RoadSegment.h | 62 - .../include/asn_j2735_r41/RoadSegmentID.h | 41 - .../include/asn_j2735_r41/RoadSegmentList.h | 44 - .../asn_j2735_r41/RoadSegmentReferenceID.h | 40 - .../include/asn_j2735_r41/RoadSideAlert.h | 67 - .../include/asn_j2735_r41/RoadSignID.h | 44 - .../include/asn_j2735_r41/RoadwayCrownAngle.h | 41 - .../Asn_J2735/include/asn_j2735_r41/SPAT.h | 55 - .../Asn_J2735/include/asn_j2735_r41/Sample.h | 39 - .../include/asn_j2735_r41/Scale-B12.h | 41 - .../include/asn_j2735_r41/SeatCount.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Second.h | 41 - .../include/asn_j2735_r41/SecondsAngle.h | 41 - .../include/asn_j2735_r41/SegmentAttribute.h | 86 - .../asn_j2735_r41/SegmentAttributeList.h | 39 - .../include/asn_j2735_r41/ShapePointSet.h | 53 - .../include/asn_j2735_r41/SignPrority.h | 41 - .../asn_j2735_r41/SignalControlState.h | 41 - .../include/asn_j2735_r41/SignalControlZone.h | 93 - .../include/asn_j2735_r41/SignalGroupID.h | 41 - .../asn_j2735_r41/SignalHeadLocation.h | 44 - .../asn_j2735_r41/SignalHeadLocationList.h | 44 - .../include/asn_j2735_r41/SignalReqScheme.h | 41 - .../include/asn_j2735_r41/SignalRequest.h | 52 - .../include/asn_j2735_r41/SignalRequestMsg.h | 63 - .../include/asn_j2735_r41/SignalState.h | 41 - .../asn_j2735_r41/SignalStatusMessage.h | 73 - .../include/asn_j2735_r41/SirenInUse.h | 49 - .../include/asn_j2735_r41/Snapshot.h | 52 - .../include/asn_j2735_r41/SnapshotDistance.h | 41 - .../include/asn_j2735_r41/SnapshotTime.h | 41 - .../Asn_J2735/include/asn_j2735_r41/Speed.h | 41 - .../include/asn_j2735_r41/SpeedAdvice.h | 41 - .../include/asn_j2735_r41/SpeedConfidence.h | 53 - .../include/asn_j2735_r41/SpeedLimit.h | 63 - .../include/asn_j2735_r41/SpeedLimitList.h | 44 - .../include/asn_j2735_r41/SpeedLimitType.h | 61 - .../SpeedandHeadingandThrottleConfidence.h | 41 - .../asn_j2735_r41/StabilityControlStatus.h | 48 - .../include/asn_j2735_r41/StationID.h | 41 - .../asn_j2735_r41/SteeringAxleLubePressure.h | 41 - .../asn_j2735_r41/SteeringAxleTemperature.h | 41 - .../asn_j2735_r41/SteeringWheelAngle.h | 41 - .../SteeringWheelAngleConfidence.h | 49 - .../SteeringWheelAngleRateOfChange.h | 41 - .../include/asn_j2735_r41/SummerTime.h | 47 - .../include/asn_j2735_r41/SunSensor.h | 41 - .../include/asn_j2735_r41/TemporaryID.h | 41 - .../include/asn_j2735_r41/TenthSecond.h | 41 - .../include/asn_j2735_r41/TermDistance.h | 41 - .../include/asn_j2735_r41/TermTime.h | 41 - .../asn_j2735_r41/ThrottleConfidence.h | 49 - .../include/asn_j2735_r41/ThrottlePosition.h | 41 - .../include/asn_j2735_r41/TimeChangeDetails.h | 44 - .../include/asn_j2735_r41/TimeConfidence.h | 85 - .../asn_j2735_r41/TimeIntervalConfidence.h | 41 - .../include/asn_j2735_r41/TimeMark.h | 41 - .../include/asn_j2735_r41/TimeRemaining.h | 41 - .../include/asn_j2735_r41/TireLeakageRate.h | 41 - .../include/asn_j2735_r41/TireLocation.h | 41 - .../include/asn_j2735_r41/TirePressure.h | 41 - .../TirePressureThresholdDetection.h | 56 - .../include/asn_j2735_r41/TireTemp.h | 41 - .../asn_j2735_r41/TractionControlState.h | 49 - .../include/asn_j2735_r41/TrailerWeight.h | 41 - .../include/asn_j2735_r41/TransitStatus.h | 51 - .../asn_j2735_r41/TransmissionAndSpeed.h | 41 - .../include/asn_j2735_r41/TransmissionState.h | 56 - .../include/asn_j2735_r41/TravelerInfoType.h | 52 - .../asn_j2735_r41/TravelerInformation.h | 139 - .../Asn_J2735/include/asn_j2735_r41/TxTime.h | 41 - .../include/asn_j2735_r41/UPER-Blob.h | 41 - .../include/asn_j2735_r41/UPERframe.h | 51 - .../include/asn_j2735_r41/URL-Base.h | 41 - .../include/asn_j2735_r41/URL-Link.h | 41 - .../include/asn_j2735_r41/URL-Short.h | 41 - .../include/asn_j2735_r41/UUIDType.h | 41 - .../include/asn_j2735_r41/UniqueMSGID.h | 41 - .../asn_j2735_r41/UserSizeAndBehaviour.h | 50 - .../include/asn_j2735_r41/VINstring.h | 41 - .../include/asn_j2735_r41/ValidRegion.h | 63 - .../asn_j2735_r41/VehicleDescriptionType.h | 41 - .../asn_j2735_r41/VehicleGroupAffected.h | 83 - .../include/asn_j2735_r41/VehicleHeight.h | 41 - .../include/asn_j2735_r41/VehicleIdent.h | 73 - .../include/asn_j2735_r41/VehicleLength.h | 41 - .../include/asn_j2735_r41/VehicleMass.h | 41 - .../asn_j2735_r41/VehicleRequestStatus.h | 41 - .../asn_j2735_r41/VehicleSafetyExtension.h | 55 - .../include/asn_j2735_r41/VehicleSize.h | 40 - .../include/asn_j2735_r41/VehicleStatus.h | 161 - .../VehicleStatusDeviceTypeTag.h | 77 - .../asn_j2735_r41/VehicleStatusRequest.h | 48 - .../asn_j2735_r41/VehicleToLanePosition.h | 44 - .../asn_j2735_r41/VehicleToLanePositionList.h | 44 - .../include/asn_j2735_r41/VehicleType.h | 64 - .../include/asn_j2735_r41/VehicleWidth.h | 41 - .../include/asn_j2735_r41/Velocity.h | 41 - .../asn_j2735_r41/VerticalAcceleration.h | 41 - .../VerticalAccelerationThreshold.h | 50 - .../include/asn_j2735_r41/WaitOnStopline.h | 41 - .../asn_j2735_r41/WheelEndElectFault.h | 49 - .../include/asn_j2735_r41/WheelSensorStatus.h | 49 - .../include/asn_j2735_r41/WiperRate.h | 41 - .../include/asn_j2735_r41/WiperStatus.h | 43 - .../include/asn_j2735_r41/WiperStatusFront.h | 55 - .../include/asn_j2735_r41/WiperStatusRear.h | 55 - .../include/asn_j2735_r41/WorkZone.h | 63 - .../Asn_J2735/include/asn_j2735_r41/YawRate.h | 41 - .../include/asn_j2735_r41/YawRateConfidence.h | 53 - .../Asn_J2735/include/asn_j2735_r41/Year.h | 41 - .../include/asn_j2735_r41/ZoneLength.h | 41 - .../include/asn_j2735_r41/asn_SEQUENCE_OF.h | 54 - .../include/asn_j2735_r41/asn_SET_OF.h | 70 - .../include/asn_j2735_r41/asn_application.h | 47 - .../include/asn_j2735_r41/asn_codecs.h | 109 - .../include/asn_j2735_r41/asn_codecs_prim.h | 53 - .../include/asn_j2735_r41/asn_internal.h | 126 - .../include/asn_j2735_r41/asn_system.h | 129 - .../include/asn_j2735_r41/ber_decoder.h | 64 - .../include/asn_j2735_r41/ber_tlv_length.h | 50 - .../include/asn_j2735_r41/ber_tlv_tag.h | 60 - .../include/asn_j2735_r41/constr_CHOICE.h | 57 - .../include/asn_j2735_r41/constr_SEQUENCE.h | 60 - .../asn_j2735_r41/constr_SEQUENCE_OF.h | 33 - .../include/asn_j2735_r41/constr_SET_OF.h | 42 - .../include/asn_j2735_r41/constr_TYPE.h | 180 - .../include/asn_j2735_r41/constraints.h | 63 - .../include/asn_j2735_r41/der_encoder.h | 68 - .../include/asn_j2735_r41/per_decoder.h | 56 - .../include/asn_j2735_r41/per_encoder.h | 69 - .../include/asn_j2735_r41/per_opentype.h | 22 - .../include/asn_j2735_r41/per_support.h | 136 - .../Asn_J2735/include/asn_j2735_r41/version.h | 14 - .../include/asn_j2735_r41/xer_decoder.h | 105 - .../include/asn_j2735_r41/xer_encoder.h | 59 - .../include/asn_j2735_r41/xer_support.h | 55 - src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h | 65 - .../AccelSteerYawRateConfidence.h | 44 - .../include/asn_j2735_r63/Acceleration.h | 46 - .../asn_j2735_r63/AccelerationConfidence.h | 59 - .../asn_j2735_r63/AccelerationSet4Way.h | 45 - .../include/asn_j2735_r63/AddGrpB_Angle.h | 45 - .../include/asn_j2735_r63/AddGrpB_DayOfWeek.h | 59 - .../include/asn_j2735_r63/AddGrpB_Elevation.h | 46 - .../include/asn_j2735_r63/AddGrpB_MsgCount.h | 45 - .../include/asn_j2735_r63/AddGrpB_TimeMark.h | 56 - .../include/asn_j2735_r63/AdvisorySpeed.h | 66 - .../include/asn_j2735_r63/AdvisorySpeedList.h | 47 - .../include/asn_j2735_r63/AdvisorySpeedType.h | 58 - .../include/asn_j2735_r63/AllowedManeuvers.h | 62 - .../include/asn_j2735_r63/Altitude.h | 42 - .../asn_j2735_r63/AltitudeConfidence.h | 67 - .../include/asn_j2735_r63/AltitudeValue.h | 46 - .../asn_j2735_r63/AmbientAirPressure.h | 46 - .../asn_j2735_r63/AmbientAirTemperature.h | 46 - .../include/asn_j2735_r63/AngularVelocity.h | 42 - .../asn_j2735_r63/AngularVelocityConfidence.h | 42 - .../asn_j2735_r63/AnimalPropelledType.h | 58 - .../include/asn_j2735_r63/AnimalType.h | 58 - .../include/asn_j2735_r63/AntennaOffsetSet.h | 44 - .../asn_j2735_r63/AntiLockBrakeStatus.h | 55 - .../include/asn_j2735_r63/ApproachID.h | 46 - .../include/asn_j2735_r63/ApproachOrLane.h | 53 - .../include/asn_j2735_r63/Attachment.h | 61 - .../include/asn_j2735_r63/AttachmentRadius.h | 46 - .../include/asn_j2735_r63/Attitude.h | 44 - .../asn_j2735_r63/AttitudeConfidence.h | 42 - .../asn_j2735_r63/AuxiliaryBrakeStatus.h | 55 - .../include/asn_j2735_r63/AxleLocation.h | 46 - .../include/asn_j2735_r63/AxleWeight.h | 46 - .../include/asn_j2735_r63/AxleWeightList.h | 47 - .../include/asn_j2735_r63/AxleWeightSet.h | 46 - .../include/asn_j2735_r63/BIT_STRING.h | 48 - .../include/asn_j2735_r63/BMPString.h | 37 - .../Asn_J2735/include/asn_j2735_r63/BOOLEAN.h | 45 - .../include/asn_j2735_r63/BSMcoreData.h | 66 - .../BasicSafetyMessage-addGrpCarma.h | 56 - .../asn_j2735_r63/BasicSafetyMessage.h | 66 - .../include/asn_j2735_r63/BasicVehicleClass.h | 102 - .../include/asn_j2735_r63/BasicVehicleRole.h | 77 - .../asn_j2735_r63/BrakeAppliedPressure.h | 67 - .../asn_j2735_r63/BrakeAppliedStatus.h | 55 - .../include/asn_j2735_r63/BrakeBoostApplied.h | 54 - .../include/asn_j2735_r63/BrakeSystemStatus.h | 50 - .../include/asn_j2735_r63/BumperHeight.h | 46 - .../include/asn_j2735_r63/BumperHeights.h | 41 - .../include/asn_j2735_r63/CargoWeight.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Circle.h | 44 - .../asn_j2735_r63/ClassificationConfidence.h | 44 - .../include/asn_j2735_r63/CoarseHeading.h | 46 - .../include/asn_j2735_r63/CodeWord.h | 45 - .../asn_j2735_r63/CoefficientOfFriction.h | 46 - .../asn_j2735_r63/CommonSafetyRequest.h | 64 - .../include/asn_j2735_r63/ComputedLane.h | 98 - .../include/asn_j2735_r63/Confidence.h | 46 - .../include/asn_j2735_r63/ConfidenceSet.h | 63 - .../include/asn_j2735_r63/ConnectingLane.h | 42 - .../include/asn_j2735_r63/Connection.h | 53 - .../ConnectionManeuverAssist-addGrpC.h | 45 - .../asn_j2735_r63/ConnectionManeuverAssist.h | 65 - .../include/asn_j2735_r63/ConnectsToList.h | 47 - .../Asn_J2735/include/asn_j2735_r63/Count.h | 45 - .../Asn_J2735/include/asn_j2735_r63/DDate.h | 42 - .../include/asn_j2735_r63/DDateTime.h | 52 - .../Asn_J2735/include/asn_j2735_r63/DDay.h | 46 - .../include/asn_j2735_r63/DFullTime.h | 46 - .../Asn_J2735/include/asn_j2735_r63/DHour.h | 46 - .../Asn_J2735/include/asn_j2735_r63/DMinute.h | 46 - .../Asn_J2735/include/asn_j2735_r63/DMonth.h | 46 - .../include/asn_j2735_r63/DMonthDay.h | 40 - .../Asn_J2735/include/asn_j2735_r63/DOffset.h | 46 - .../include/asn_j2735_r63/DSRCEquippedType.h | 41 - .../include/asn_j2735_r63/DSRC_Angle.h | 46 - .../include/asn_j2735_r63/DSRC_DayOfWeek.h | 56 - .../include/asn_j2735_r63/DSRC_Elevation.h | 46 - .../include/asn_j2735_r63/DSRC_MsgCount.h | 46 - .../include/asn_j2735_r63/DSRC_TimeMark.h | 46 - .../include/asn_j2735_r63/DSRCmsgID.h | 95 - .../Asn_J2735/include/asn_j2735_r63/DSecond.h | 46 - .../Asn_J2735/include/asn_j2735_r63/DTime.h | 44 - .../Asn_J2735/include/asn_j2735_r63/DYear.h | 46 - .../include/asn_j2735_r63/DYearMonth.h | 40 - .../include/asn_j2735_r63/DailySchedule.h | 41 - .../include/asn_j2735_r63/DataParameters.h | 47 - src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h | 46 - .../include/asn_j2735_r63/DayOfWeek.h | 59 - .../include/asn_j2735_r63/DaySchedule.h | 41 - .../include/asn_j2735_r63/DegreesLat.h | 46 - .../include/asn_j2735_r63/DegreesLong.h | 46 - .../include/asn_j2735_r63/DeltaAngle.h | 46 - .../include/asn_j2735_r63/DeltaTime.h | 46 - .../include/asn_j2735_r63/DescriptiveName.h | 46 - .../include/asn_j2735_r63/DestinationType.h | 42 - .../asn_j2735_r63/DetectedObjectCommonData.h | 79 - .../asn_j2735_r63/DetectedObjectData.h | 47 - .../asn_j2735_r63/DetectedObjectList.h | 47 - .../DetectedObjectOptionalData.h | 56 - .../asn_j2735_r63/DetectedObstacleData.h | 42 - .../include/asn_j2735_r63/DetectedVRUData.h | 51 - .../asn_j2735_r63/DetectedVehicleData.h | 72 - .../include/asn_j2735_r63/DirectionOfUse.h | 55 - .../include/asn_j2735_r63/DisabledVehicle.h | 46 - .../include/asn_j2735_r63/DistanceUnits.h | 59 - .../asn_j2735_r63/DriveAxleLiftAirPressure.h | 46 - .../include/asn_j2735_r63/DriveAxleLocation.h | 46 - .../asn_j2735_r63/DriveAxleLubePressure.h | 46 - .../asn_j2735_r63/DriveAxleTemperature.h | 46 - .../asn_j2735_r63/DrivenLineOffsetLg.h | 46 - .../asn_j2735_r63/DrivenLineOffsetSm.h | 46 - .../include/asn_j2735_r63/DrivingWheelAngle.h | 46 - .../include/asn_j2735_r63/Duration.h | 45 - .../include/asn_j2735_r63/ENUMERATED.h | 35 - .../include/asn_j2735_r63/EXTERNAL.h | 65 - .../asn_j2735_r63/ElevationConfidence.h | 67 - .../include/asn_j2735_r63/EmergencyDetails.h | 59 - .../asn_j2735_r63/EmergencyVehicleAlert.h | 77 - .../include/asn_j2735_r63/EmissionType.h | 59 - .../include/asn_j2735_r63/EnabledLaneList.h | 42 - .../include/asn_j2735_r63/EpochMins.h | 46 - .../include/asn_j2735_r63/EquipmentType.h | 56 - .../include/asn_j2735_r63/EssMobileFriction.h | 46 - .../include/asn_j2735_r63/EssPrecipRate.h | 46 - .../asn_j2735_r63/EssPrecipSituation.h | 66 - .../include/asn_j2735_r63/EssPrecipYesNo.h | 54 - .../include/asn_j2735_r63/EssSolarRadiation.h | 46 - .../include/asn_j2735_r63/EstimatedTimeType.h | 42 - .../include/asn_j2735_r63/EventDescription.h | 70 - .../include/asn_j2735_r63/ExitService.h | 69 - .../Asn_J2735/include/asn_j2735_r63/Extent.h | 67 - .../include/asn_j2735_r63/ExteriorLights.h | 59 - .../include/asn_j2735_r63/FuelType.h | 56 - .../asn_j2735_r63/FullPositionVector.h | 71 - .../include/asn_j2735_r63/FurtherInfoID.h | 46 - .../include/asn_j2735_r63/GNSSstatus.h | 58 - .../include/asn_j2735_r63/GeneralString.h | 34 - .../include/asn_j2735_r63/GeneralizedTime.h | 77 - .../include/asn_j2735_r63/GenericLane.h | 75 - .../include/asn_j2735_r63/GenericLocations.h | 150 - .../include/asn_j2735_r63/GenericSignage.h | 69 - .../include/asn_j2735_r63/GeographicalPath.h | 101 - .../asn_j2735_r63/GeometricProjection.h | 64 - .../include/asn_j2735_r63/GraphicString.h | 36 - .../include/asn_j2735_r63/GrossDistance.h | 46 - .../include/asn_j2735_r63/GrossSpeed.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Header.h | 50 - .../Asn_J2735/include/asn_j2735_r63/Heading.h | 46 - .../include/asn_j2735_r63/HeadingConfidence.h | 59 - .../include/asn_j2735_r63/HeadingSlice.h | 66 - .../Asn_J2735/include/asn_j2735_r63/Holiday.h | 53 - .../Asn_J2735/include/asn_j2735_r63/Hour.h | 46 - .../asn_j2735_r63/HumanPropelledType.h | 60 - .../include/asn_j2735_r63/IA5String.h | 40 - .../Asn_J2735/include/asn_j2735_r63/INTEGER.h | 108 - .../include/asn_j2735_r63/ISO646String.h | 35 - .../include/asn_j2735_r63/ITIScodes.h | 46 - .../include/asn_j2735_r63/ITIScodesAndText.h | 69 - .../include/asn_j2735_r63/ITIStext.h | 46 - .../include/asn_j2735_r63/ITIStextPhrase.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Id128b.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Id64b.h | 46 - .../asn_j2735_r63/IncidentResponseEquipment.h | 126 - .../asn_j2735_r63/IntersectionAccessPoint.h | 62 - .../asn_j2735_r63/IntersectionCollision.h | 77 - .../asn_j2735_r63/IntersectionGeometry.h | 74 - .../asn_j2735_r63/IntersectionGeometryList.h | 47 - .../include/asn_j2735_r63/IntersectionID.h | 46 - .../asn_j2735_r63/IntersectionReferenceID.h | 42 - .../asn_j2735_r63/IntersectionState-addGrpC.h | 47 - .../include/asn_j2735_r63/IntersectionState.h | 76 - .../asn_j2735_r63/IntersectionStateList.h | 47 - .../asn_j2735_r63/IntersectionStatusObject.h | 64 - .../Asn_J2735/include/asn_j2735_r63/IsDolly.h | 45 - .../asn_j2735_r63/Iso3833VehicleType.h | 46 - .../include/asn_j2735_r63/J1939data.h | 68 - .../asn_j2735_r63/LaneAttributes-Barrier.h | 60 - .../asn_j2735_r63/LaneAttributes-Bike.h | 57 - .../asn_j2735_r63/LaneAttributes-Crosswalk.h | 59 - .../asn_j2735_r63/LaneAttributes-Parking.h | 57 - .../asn_j2735_r63/LaneAttributes-Sidewalk.h | 54 - .../asn_j2735_r63/LaneAttributes-Striping.h | 56 - .../LaneAttributes-TrackedVehicle.h | 55 - .../asn_j2735_r63/LaneAttributes-Vehicle.h | 58 - .../include/asn_j2735_r63/LaneAttributes.h | 51 - .../include/asn_j2735_r63/LaneConnectionID.h | 46 - .../asn_j2735_r63/LaneDataAttribute-addGrpB.h | 40 - .../include/asn_j2735_r63/LaneDataAttribute.h | 84 - .../asn_j2735_r63/LaneDataAttributeList.h | 47 - .../include/asn_j2735_r63/LaneDirection.h | 52 - .../Asn_J2735/include/asn_j2735_r63/LaneID.h | 46 - .../include/asn_j2735_r63/LaneList.h | 47 - .../include/asn_j2735_r63/LaneSharing.h | 60 - .../asn_j2735_r63/LaneTypeAttributes.h | 77 - .../include/asn_j2735_r63/LaneWidth.h | 46 - .../include/asn_j2735_r63/Latitude.h | 46 - .../include/asn_j2735_r63/LatitudeDMS.h | 46 - .../include/asn_j2735_r63/LatitudeDMS2.h | 44 - .../Asn_J2735/include/asn_j2735_r63/LayerID.h | 46 - .../include/asn_j2735_r63/LayerType.h | 62 - .../include/asn_j2735_r63/LightbarInUse.h | 59 - .../include/asn_j2735_r63/Location-quality.h | 57 - .../include/asn_j2735_r63/Location-tech.h | 62 - .../include/asn_j2735_r63/Longitude.h | 46 - .../include/asn_j2735_r63/LongitudeDMS.h | 46 - .../include/asn_j2735_r63/LongitudeDMS2.h | 44 - .../include/asn_j2735_r63/MUTCDCode.h | 61 - .../asn_j2735_r63/ManeuverAssistList.h | 47 - .../include/asn_j2735_r63/MapData-addGrpC.h | 47 - .../Asn_J2735/include/asn_j2735_r63/MapData.h | 76 - .../include/asn_j2735_r63/MaxTimetoChange.h | 46 - .../asn_j2735_r63/MeasurementTimeOffset.h | 44 - .../asn_j2735_r63/MergeDivergeNodeAngle.h | 46 - .../include/asn_j2735_r63/MessageBLOB.h | 45 - .../include/asn_j2735_r63/MessageFrame.h | 155 - .../include/asn_j2735_r63/MinTimetoChange.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Minute.h | 46 - .../include/asn_j2735_r63/MinuteOfTheYear.h | 46 - .../include/asn_j2735_r63/MinutesAngle.h | 46 - .../include/asn_j2735_r63/MinutesDuration.h | 46 - .../include/asn_j2735_r63/MobilityDynamicID.h | 44 - .../asn_j2735_r63/MobilityECEFCoordinate.h | 44 - .../asn_j2735_r63/MobilityECEFOffset.h | 42 - .../MobilityECEFOffsetCoordinate.h | 44 - .../include/asn_j2735_r63/MobilityGUID.h | 44 - .../include/asn_j2735_r63/MobilityHeader.h | 47 - .../include/asn_j2735_r63/MobilityLocation.h | 44 - .../asn_j2735_r63/MobilityLocationOffsets.h | 47 - .../include/asn_j2735_r63/MobilityNeeds.h | 42 - .../include/asn_j2735_r63/MobilityNeedsList.h | 47 - .../include/asn_j2735_r63/MobilityNeedsType.h | 50 - .../include/asn_j2735_r63/MobilityOperation.h | 42 - .../asn_j2735_r63/MobilityParameters.h | 44 - .../include/asn_j2735_r63/MobilityPath.h | 42 - .../include/asn_j2735_r63/MobilityPlanType.h | 57 - .../include/asn_j2735_r63/MobilityRequest.h | 61 - .../include/asn_j2735_r63/MobilityResponse.h | 42 - .../asn_j2735_r63/MobilityResponseFlag.h | 43 - .../include/asn_j2735_r63/MobilityStaticID.h | 44 - .../include/asn_j2735_r63/MobilityStrategy.h | 44 - .../include/asn_j2735_r63/MobilityTimestamp.h | 44 - .../include/asn_j2735_r63/MobilityUrgency.h | 44 - .../asn_j2735_r63/ModeOfTransportType.h | 51 - .../Asn_J2735/include/asn_j2735_r63/Month.h | 46 - .../asn_j2735_r63/MotorizedPropelledType.h | 60 - .../asn_j2735_r63/MovementEvent-addGrpB.h | 50 - .../include/asn_j2735_r63/MovementEvent.h | 64 - .../include/asn_j2735_r63/MovementEventList.h | 47 - .../include/asn_j2735_r63/MovementList.h | 47 - .../asn_j2735_r63/MovementPhaseState.h | 61 - .../include/asn_j2735_r63/MovementState.h | 65 - .../Asn_J2735/include/asn_j2735_r63/MsgCRC.h | 46 - .../asn_j2735_r63/MultiVehicleResponse.h | 55 - .../include/asn_j2735_r63/NMEA-MsgType.h | 46 - .../include/asn_j2735_r63/NMEA-Payload.h | 46 - .../include/asn_j2735_r63/NMEA-Revision.h | 61 - .../include/asn_j2735_r63/NMEAcorrections.h | 66 - .../Asn_J2735/include/asn_j2735_r63/NULL.h | 45 - .../include/asn_j2735_r63/NativeEnumerated.h | 45 - .../include/asn_j2735_r63/NativeInteger.h | 46 - .../include/asn_j2735_r63/NativeReal.h | 39 - .../include/asn_j2735_r63/Node-LL-24B.h | 41 - .../include/asn_j2735_r63/Node-LL-28B.h | 41 - .../include/asn_j2735_r63/Node-LL-32B.h | 41 - .../include/asn_j2735_r63/Node-LL-36B.h | 41 - .../include/asn_j2735_r63/Node-LL-44B.h | 41 - .../include/asn_j2735_r63/Node-LL-48B.h | 41 - .../include/asn_j2735_r63/Node-LLdms-48b.h | 42 - .../include/asn_j2735_r63/Node-LLdms-80b.h | 42 - .../include/asn_j2735_r63/Node-LLmD-64b.h | 42 - .../include/asn_j2735_r63/Node-XY-20b.h | 41 - .../include/asn_j2735_r63/Node-XY-22b.h | 41 - .../include/asn_j2735_r63/Node-XY-24b.h | 41 - .../include/asn_j2735_r63/Node-XY-26b.h | 41 - .../include/asn_j2735_r63/Node-XY-28b.h | 41 - .../include/asn_j2735_r63/Node-XY-32b.h | 41 - .../include/asn_j2735_r63/NodeAttributeLL.h | 66 - .../asn_j2735_r63/NodeAttributeLLList.h | 42 - .../asn_j2735_r63/NodeAttributeSetLL.h | 69 - .../asn_j2735_r63/NodeAttributeSetXY.h | 69 - .../include/asn_j2735_r63/NodeAttributeXY.h | 66 - .../asn_j2735_r63/NodeAttributeXYList.h | 42 - .../Asn_J2735/include/asn_j2735_r63/NodeLL.h | 51 - .../include/asn_j2735_r63/NodeListLL.h | 56 - .../include/asn_j2735_r63/NodeListXY.h | 59 - .../include/asn_j2735_r63/NodeOffsetPointLL.h | 71 - .../asn_j2735_r63/NodeOffsetPointXY-addGrpB.h | 56 - .../include/asn_j2735_r63/NodeOffsetPointXY.h | 71 - .../include/asn_j2735_r63/NodeSetLL.h | 47 - .../include/asn_j2735_r63/NodeSetXY.h | 47 - .../Asn_J2735/include/asn_j2735_r63/NodeXY.h | 51 - .../NumberOfParticipantsInCluster.h | 58 - .../include/asn_j2735_r63/NumericString.h | 35 - .../include/asn_j2735_r63/OBJECT_IDENTIFIER.h | 156 - .../include/asn_j2735_r63/OCTET_STRING.h | 102 - .../include/asn_j2735_r63/OPEN_TYPE.h | 77 - .../include/asn_j2735_r63/ObjectCount.h | 46 - .../include/asn_j2735_r63/ObjectDescriptor.h | 35 - .../include/asn_j2735_r63/ObjectDistance.h | 44 - .../include/asn_j2735_r63/ObjectID.h | 44 - .../include/asn_j2735_r63/ObjectType.h | 56 - .../include/asn_j2735_r63/ObstacleDetection.h | 54 - .../include/asn_j2735_r63/ObstacleDirection.h | 46 - .../include/asn_j2735_r63/ObstacleDistance.h | 46 - .../include/asn_j2735_r63/ObstacleSize.h | 42 - .../asn_j2735_r63/ObstacleSizeConfidence.h | 42 - .../include/asn_j2735_r63/Offset-B09.h | 46 - .../include/asn_j2735_r63/Offset-B10.h | 46 - .../include/asn_j2735_r63/Offset-B11.h | 46 - .../include/asn_j2735_r63/Offset-B12.h | 46 - .../include/asn_j2735_r63/Offset-B13.h | 46 - .../include/asn_j2735_r63/Offset-B14.h | 46 - .../include/asn_j2735_r63/Offset-B16.h | 46 - .../include/asn_j2735_r63/OffsetLL-B12.h | 46 - .../include/asn_j2735_r63/OffsetLL-B14.h | 46 - .../include/asn_j2735_r63/OffsetLL-B16.h | 46 - .../include/asn_j2735_r63/OffsetLL-B18.h | 46 - .../include/asn_j2735_r63/OffsetLL-B22.h | 46 - .../include/asn_j2735_r63/OffsetLL-B24.h | 46 - .../include/asn_j2735_r63/OffsetPoint.h | 41 - .../include/asn_j2735_r63/OffsetSystem.h | 60 - .../include/asn_j2735_r63/OverlayLaneList.h | 42 - .../include/asn_j2735_r63/PartII-Id.h | 49 - .../include/asn_j2735_r63/PartIIcontent.h | 66 - .../include/asn_j2735_r63/PathHistory.h | 53 - .../include/asn_j2735_r63/PathHistoryPoint.h | 60 - .../asn_j2735_r63/PathHistoryPointList.h | 47 - .../include/asn_j2735_r63/PathNode.h | 43 - .../include/asn_j2735_r63/PathPrediction.h | 46 - .../include/asn_j2735_r63/PayloadData.h | 45 - .../asn_j2735_r63/PedestrianBicycleDetect.h | 45 - .../include/asn_j2735_r63/PersonalAssistive.h | 56 - .../asn_j2735_r63/PersonalClusterRadius.h | 46 - .../PersonalCrossingInProgress.h | 45 - .../asn_j2735_r63/PersonalCrossingRequest.h | 45 - .../asn_j2735_r63/PersonalDeviceUsageState.h | 59 - .../asn_j2735_r63/PersonalDeviceUserType.h | 59 - .../asn_j2735_r63/PersonalMobilityMessage.h | 85 - .../PersonalMobilityMessageStatusType.h | 52 - .../asn_j2735_r63/PersonalSafetyMessage.h | 110 - .../include/asn_j2735_r63/PitchDetected.h | 44 - .../include/asn_j2735_r63/PitchRate.h | 44 - .../asn_j2735_r63/PitchRateConfidence.h | 57 - .../asn_j2735_r63/PivotPointDescription.h | 48 - .../include/asn_j2735_r63/PivotingAllowed.h | 45 - .../Asn_J2735/include/asn_j2735_r63/Point.h | 43 - .../asn_j2735_r63/Position3D-addGrpB.h | 46 - .../asn_j2735_r63/Position3D-addGrpC.h | 42 - .../asn_j2735_r63/Position3D-addGrpCarma.h | 48 - .../include/asn_j2735_r63/Position3D.h | 62 - .../asn_j2735_r63/PositionConfidence.h | 67 - .../asn_j2735_r63/PositionConfidenceSet.h | 42 - .../include/asn_j2735_r63/PositionOffsetXYZ.h | 42 - .../asn_j2735_r63/PositionalAccuracy.h | 44 - .../asn_j2735_r63/PreemptPriorityList.h | 47 - .../include/asn_j2735_r63/PrintableString.h | 35 - .../asn_j2735_r63/PrioritizationResponse.h | 48 - .../PrioritizationResponseList.h | 47 - .../PrioritizationResponseStatus.h | 62 - .../include/asn_j2735_r63/Priority.h | 46 - .../asn_j2735_r63/PriorityRequestType.h | 58 - .../asn_j2735_r63/PrivilegedEventFlags.h | 56 - .../include/asn_j2735_r63/PrivilegedEvents.h | 46 - .../asn_j2735_r63/ProbeDataManagement.h | 104 - .../asn_j2735_r63/ProbeSegmentNumber.h | 46 - .../include/asn_j2735_r63/ProbeVehicleData.h | 75 - .../asn_j2735_r63/PropelledInformation.h | 62 - .../PublicSafetyAndRoadWorkerActivity.h | 56 - .../PublicSafetyDirectingTrafficSubType.h | 57 - .../PublicSafetyEventResponderWorkerType.h | 62 - .../Asn_J2735/include/asn_j2735_r63/REAL.h | 51 - .../include/asn_j2735_r63/RELATIVE-OID.h | 48 - .../include/asn_j2735_r63/RTCM-Revision.h | 58 - .../include/asn_j2735_r63/RTCMPackage.h | 51 - .../include/asn_j2735_r63/RTCMcorrections.h | 70 - .../include/asn_j2735_r63/RTCMheader.h | 42 - .../include/asn_j2735_r63/RTCMmessage.h | 46 - .../include/asn_j2735_r63/RTCMmessageList.h | 42 - .../include/asn_j2735_r63/Radius-B12.h | 46 - .../include/asn_j2735_r63/RadiusOfCurvature.h | 46 - .../include/asn_j2735_r63/RainSensor.h | 59 - .../include/asn_j2735_r63/RegionId.h | 50 - .../include/asn_j2735_r63/RegionList.h | 47 - .../include/asn_j2735_r63/RegionOffsets.h | 42 - .../include/asn_j2735_r63/RegionPointSet.h | 53 - .../include/asn_j2735_r63/RegionalExtension.h | 60 - .../asn_j2735_r63/RegulatorySpeedLimit.h | 42 - .../include/asn_j2735_r63/RepeatParams.h | 42 - .../include/asn_j2735_r63/RequestID.h | 46 - .../asn_j2735_r63/RequestImportanceLevel.h | 67 - .../include/asn_j2735_r63/RequestSubRole.h | 67 - .../include/asn_j2735_r63/RequestedItem.h | 71 - .../include/asn_j2735_r63/RequestedItemList.h | 42 - .../asn_j2735_r63/RequestorDescription.h | 73 - .../asn_j2735_r63/RequestorPositionVector.h | 53 - .../include/asn_j2735_r63/RequestorType.h | 59 - .../asn_j2735_r63/ResponderGroupAffected.h | 68 - .../include/asn_j2735_r63/ResponseType.h | 61 - .../asn_j2735_r63/RestrictionAppliesTo.h | 68 - .../RestrictionClassAssignment.h | 42 - .../asn_j2735_r63/RestrictionClassID.h | 46 - .../asn_j2735_r63/RestrictionClassList.h | 47 - .../RestrictionUserType-addGrpC.h | 42 - .../asn_j2735_r63/RestrictionUserType.h | 71 - .../asn_j2735_r63/RestrictionUserTypeList.h | 47 - .../include/asn_j2735_r63/RoadLaneSetList.h | 47 - .../include/asn_j2735_r63/RoadRegulatorID.h | 46 - .../include/asn_j2735_r63/RoadSegment.h | 71 - .../include/asn_j2735_r63/RoadSegmentID.h | 46 - .../include/asn_j2735_r63/RoadSegmentList.h | 47 - .../asn_j2735_r63/RoadSegmentReferenceID.h | 42 - .../include/asn_j2735_r63/RoadSideAlert.h | 79 - .../include/asn_j2735_r63/RoadSignID.h | 46 - .../include/asn_j2735_r63/RoadwayCrownAngle.h | 46 - .../include/asn_j2735_r63/RollDetected.h | 44 - .../include/asn_j2735_r63/RollRate.h | 44 - .../asn_j2735_r63/RollRateConfidence.h | 57 - .../Asn_J2735/include/asn_j2735_r63/SPAT.h | 62 - .../include/asn_j2735_r63/SSPindex.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Sample.h | 41 - .../include/asn_j2735_r63/Scale-B12.h | 46 - .../include/asn_j2735_r63/Schedule.h | 65 - .../include/asn_j2735_r63/SeatCount.h | 42 - .../Asn_J2735/include/asn_j2735_r63/Second.h | 46 - .../include/asn_j2735_r63/SecondOfTime.h | 46 - .../include/asn_j2735_r63/SecondsAngle.h | 46 - .../asn_j2735_r63/SegmentAttributeLL.h | 92 - .../asn_j2735_r63/SegmentAttributeLLList.h | 42 - .../asn_j2735_r63/SegmentAttributeXY.h | 92 - .../asn_j2735_r63/SegmentAttributeXYList.h | 42 - .../asn_j2735_r63/SemiMajorAxisAccuracy.h | 46 - .../asn_j2735_r63/SemiMajorAxisOrientation.h | 46 - .../asn_j2735_r63/SemiMinorAxisAccuracy.h | 46 - .../asn_j2735_r63/SensorDataSharingMessage.h | 54 - .../include/asn_j2735_r63/ShapePointSet.h | 55 - .../include/asn_j2735_r63/SignPrority.h | 46 - .../include/asn_j2735_r63/SignalControlZone.h | 44 - .../include/asn_j2735_r63/SignalGroupID.h | 46 - .../asn_j2735_r63/SignalHeadLocation.h | 46 - .../asn_j2735_r63/SignalHeadLocationList.h | 47 - .../include/asn_j2735_r63/SignalReqScheme.h | 45 - .../include/asn_j2735_r63/SignalRequest.h | 67 - .../include/asn_j2735_r63/SignalRequestList.h | 47 - .../asn_j2735_r63/SignalRequestMessage.h | 67 - .../asn_j2735_r63/SignalRequestPackage.h | 63 - .../asn_j2735_r63/SignalRequesterInfo.h | 57 - .../include/asn_j2735_r63/SignalStatus.h | 62 - .../include/asn_j2735_r63/SignalStatusList.h | 47 - .../asn_j2735_r63/SignalStatusMessage.h | 64 - .../asn_j2735_r63/SignalStatusPackage.h | 71 - .../asn_j2735_r63/SignalStatusPackageList.h | 47 - .../include/asn_j2735_r63/SirenInUse.h | 55 - .../include/asn_j2735_r63/SizeValue.h | 44 - .../asn_j2735_r63/SizeValueConfidence.h | 63 - .../include/asn_j2735_r63/Snapshot.h | 54 - .../include/asn_j2735_r63/SnapshotDistance.h | 44 - .../include/asn_j2735_r63/SnapshotTime.h | 44 - .../asn_j2735_r63/SpecialVehicleExtensions.h | 55 - .../Asn_J2735/include/asn_j2735_r63/Speed.h | 46 - .../include/asn_j2735_r63/SpeedAdvice.h | 46 - .../include/asn_j2735_r63/SpeedConfidence.h | 59 - .../include/asn_j2735_r63/SpeedLimit.h | 69 - .../include/asn_j2735_r63/SpeedLimitList.h | 47 - .../include/asn_j2735_r63/SpeedLimitType.h | 67 - .../include/asn_j2735_r63/SpeedProfile.h | 44 - .../asn_j2735_r63/SpeedProfileMeasurement.h | 46 - .../SpeedProfileMeasurementList.h | 42 - .../SpeedandHeadingandThrottleConfidence.h | 44 - .../asn_j2735_r63/StabilityControlStatus.h | 55 - .../include/asn_j2735_r63/StationID.h | 47 - .../asn_j2735_r63/SteeringAxleLubePressure.h | 46 - .../asn_j2735_r63/SteeringAxleTemperature.h | 46 - .../asn_j2735_r63/SteeringWheelAngle.h | 46 - .../SteeringWheelAngleConfidence.h | 55 - .../SteeringWheelAngleRateOfChange.h | 46 - .../include/asn_j2735_r63/SummerTime.h | 53 - .../include/asn_j2735_r63/SunSensor.h | 46 - .../SupplementalVehicleExtensions.h | 82 - .../include/asn_j2735_r63/T61String.h | 34 - .../include/asn_j2735_r63/TeletexString.h | 34 - .../include/asn_j2735_r63/TemporaryID.h | 46 - .../include/asn_j2735_r63/TenthSecond.h | 46 - .../include/asn_j2735_r63/TermDistance.h | 46 - .../include/asn_j2735_r63/TermTime.h | 46 - .../include/asn_j2735_r63/TestMessage00.h | 54 - .../include/asn_j2735_r63/TestMessage01.h | 54 - .../include/asn_j2735_r63/TestMessage02.h | 48 - .../include/asn_j2735_r63/TestMessage03.h | 46 - .../include/asn_j2735_r63/TestMessage04.h | 44 - .../include/asn_j2735_r63/TestMessage05.h | 44 - .../include/asn_j2735_r63/TestMessage06.h | 52 - .../include/asn_j2735_r63/TestMessage07.h | 52 - .../include/asn_j2735_r63/TestMessage08.h | 52 - .../include/asn_j2735_r63/TestMessage09.h | 52 - .../include/asn_j2735_r63/TestMessage10.h | 52 - .../include/asn_j2735_r63/TestMessage11.h | 52 - .../include/asn_j2735_r63/TestMessage12.h | 52 - .../include/asn_j2735_r63/TestMessage13.h | 52 - .../include/asn_j2735_r63/TestMessage14.h | 52 - .../include/asn_j2735_r63/TestMessage15.h | 52 - .../asn_j2735_r63/ThrottleConfidence.h | 55 - .../include/asn_j2735_r63/ThrottlePosition.h | 46 - .../include/asn_j2735_r63/TimeChangeDetails.h | 46 - .../include/asn_j2735_r63/TimeConfidence.h | 91 - .../asn_j2735_r63/TimeIntervalConfidence.h | 46 - .../include/asn_j2735_r63/TimeOffset.h | 46 - .../include/asn_j2735_r63/TimeRemaining.h | 46 - .../include/asn_j2735_r63/TireData.h | 56 - .../include/asn_j2735_r63/TireDataList.h | 47 - .../include/asn_j2735_r63/TireLeakageRate.h | 46 - .../include/asn_j2735_r63/TireLocation.h | 46 - .../include/asn_j2735_r63/TirePressure.h | 46 - .../TirePressureThresholdDetection.h | 59 - .../include/asn_j2735_r63/TireTemp.h | 46 - .../asn_j2735_r63/TractionControlStatus.h | 55 - .../asn_j2735_r63/TrafficControlBounds.h | 58 - .../asn_j2735_r63/TrafficControlDetail.h | 146 - .../asn_j2735_r63/TrafficControlGeometry.h | 66 - .../asn_j2735_r63/TrafficControlMessage.h | 59 - .../asn_j2735_r63/TrafficControlMessageV01.h | 61 - .../asn_j2735_r63/TrafficControlPackage.h | 49 - .../asn_j2735_r63/TrafficControlParams.h | 53 - .../asn_j2735_r63/TrafficControlPathPart.h | 56 - .../asn_j2735_r63/TrafficControlRequest.h | 59 - .../asn_j2735_r63/TrafficControlRequestV01.h | 57 - .../asn_j2735_r63/TrafficControlSchedule.h | 60 - .../asn_j2735_r63/TrafficControlType.h | 74 - .../asn_j2735_r63/TrafficControlValue.h | 113 - .../asn_j2735_r63/TrafficControlVehClass.h | 73 - .../include/asn_j2735_r63/TrailerData.h | 48 - .../asn_j2735_r63/TrailerHistoryPoint.h | 52 - .../asn_j2735_r63/TrailerHistoryPointList.h | 47 - .../include/asn_j2735_r63/TrailerMass.h | 46 - .../asn_j2735_r63/TrailerUnitDescription.h | 74 - .../TrailerUnitDescriptionList.h | 47 - .../include/asn_j2735_r63/TrailerWeight.h | 46 - .../include/asn_j2735_r63/TransitStatus.h | 55 - .../asn_j2735_r63/TransitVehicleOccupancy.h | 59 - .../asn_j2735_r63/TransitVehicleStatus.h | 56 - .../asn_j2735_r63/TransmissionAndSpeed.h | 42 - .../include/asn_j2735_r63/TransmissionState.h | 59 - .../include/asn_j2735_r63/TravelerDataFrame.h | 119 - .../asn_j2735_r63/TravelerDataFrameList.h | 47 - .../include/asn_j2735_r63/TravelerInfoType.h | 58 - .../asn_j2735_r63/TravelerInformation.h | 66 - .../include/asn_j2735_r63/URL-Base.h | 46 - .../include/asn_j2735_r63/URL-Link.h | 45 - .../include/asn_j2735_r63/URL-Short.h | 46 - .../Asn_J2735/include/asn_j2735_r63/UTCTime.h | 47 - .../include/asn_j2735_r63/UTF8String.h | 60 - .../include/asn_j2735_r63/UUIDType.h | 42 - .../include/asn_j2735_r63/UniqueMSGID.h | 46 - .../include/asn_j2735_r63/UniversalString.h | 35 - .../asn_j2735_r63/UserSizeAndBehaviour.h | 55 - .../include/asn_j2735_r63/VINstring.h | 46 - .../Asn_J2735/include/asn_j2735_r63/VType.h | 69 - .../include/asn_j2735_r63/ValidRegion.h | 65 - .../asn_j2735_r63/VehicleClassification.h | 72 - .../include/asn_j2735_r63/VehicleData.h | 55 - .../asn_j2735_r63/VehicleDescriptionType.h | 42 - .../include/asn_j2735_r63/VehicleEventFlags.h | 63 - .../asn_j2735_r63/VehicleGroupAffected.h | 89 - .../include/asn_j2735_r63/VehicleHeight.h | 46 - .../include/asn_j2735_r63/VehicleID.h | 53 - .../include/asn_j2735_r63/VehicleIdent.h | 80 - .../include/asn_j2735_r63/VehicleLength.h | 46 - .../include/asn_j2735_r63/VehicleMass.h | 46 - .../asn_j2735_r63/VehicleSafetyExtensions.h | 56 - .../include/asn_j2735_r63/VehicleSize.h | 42 - .../asn_j2735_r63/VehicleSizeConfidence.h | 42 - .../include/asn_j2735_r63/VehicleStatus.h | 157 - .../VehicleStatusDeviceTypeTag.h | 83 - .../asn_j2735_r63/VehicleStatusRequest.h | 50 - .../asn_j2735_r63/VehicleStatusRequestList.h | 47 - .../asn_j2735_r63/VehicleToLanePosition.h | 46 - .../asn_j2735_r63/VehicleToLanePositionList.h | 47 - .../include/asn_j2735_r63/VehicleType.h | 70 - .../include/asn_j2735_r63/VehicleWidth.h | 46 - .../include/asn_j2735_r63/Velocity.h | 46 - .../include/asn_j2735_r63/VertOffset-B07.h | 46 - .../include/asn_j2735_r63/VertOffset-B08.h | 46 - .../include/asn_j2735_r63/VertOffset-B09.h | 46 - .../include/asn_j2735_r63/VertOffset-B10.h | 46 - .../include/asn_j2735_r63/VertOffset-B11.h | 46 - .../include/asn_j2735_r63/VertOffset-B12.h | 46 - .../asn_j2735_r63/VerticalAcceleration.h | 46 - .../VerticalAccelerationThreshold.h | 55 - .../include/asn_j2735_r63/VerticalOffset.h | 68 - .../include/asn_j2735_r63/VideotexString.h | 34 - .../include/asn_j2735_r63/VisibleString.h | 36 - .../include/asn_j2735_r63/WaitOnStopline.h | 45 - .../include/asn_j2735_r63/WeatherProbe.h | 53 - .../include/asn_j2735_r63/WeatherReport.h | 54 - .../asn_j2735_r63/WheelEndElectFault.h | 55 - .../include/asn_j2735_r63/WheelSensorStatus.h | 55 - .../include/asn_j2735_r63/WiperRate.h | 46 - .../include/asn_j2735_r63/WiperSet.h | 44 - .../include/asn_j2735_r63/WiperStatus.h | 61 - .../include/asn_j2735_r63/WorkZone.h | 69 - .../include/asn_j2735_r63/YawDetected.h | 44 - .../Asn_J2735/include/asn_j2735_r63/YawRate.h | 46 - .../include/asn_j2735_r63/YawRateConfidence.h | 59 - .../Asn_J2735/include/asn_j2735_r63/Year.h | 46 - .../include/asn_j2735_r63/ZoneLength.h | 46 - .../Asn_J2735/include/asn_j2735_r63/Zoom.h | 46 - .../include/asn_j2735_r63/asn_SEQUENCE_OF.h | 52 - .../include/asn_j2735_r63/asn_SET_OF.h | 72 - .../include/asn_j2735_r63/asn_application.h | 171 - .../include/asn_j2735_r63/asn_bit_data.h | 83 - .../include/asn_j2735_r63/asn_codecs.h | 108 - .../include/asn_j2735_r63/asn_codecs_prim.h | 51 - .../include/asn_j2735_r63/asn_internal.h | 153 - .../Asn_J2735/include/asn_j2735_r63/asn_ioc.h | 51 - .../include/asn_j2735_r63/asn_random_fill.h | 51 - .../include/asn_j2735_r63/asn_system.h | 150 - .../include/asn_j2735_r63/ber_decoder.h | 66 - .../include/asn_j2735_r63/ber_tlv_length.h | 50 - .../include/asn_j2735_r63/ber_tlv_tag.h | 60 - .../include/asn_j2735_r63/constr_CHOICE.h | 80 - .../include/asn_j2735_r63/constr_SEQUENCE.h | 68 - .../asn_j2735_r63/constr_SEQUENCE_OF.h | 41 - .../include/asn_j2735_r63/constr_SET.h | 86 - .../include/asn_j2735_r63/constr_SET_OF.h | 49 - .../include/asn_j2735_r63/constr_TYPE.h | 262 - .../include/asn_j2735_r63/constraints.h | 62 - .../include/asn_j2735_r63/der_encoder.h | 68 - .../include/asn_j2735_r63/oer_decoder.h | 72 - .../include/asn_j2735_r63/oer_encoder.h | 70 - .../include/asn_j2735_r63/oer_support.h | 47 - .../include/asn_j2735_r63/per_decoder.h | 82 - .../include/asn_j2735_r63/per_encoder.h | 93 - .../include/asn_j2735_r63/per_opentype.h | 44 - .../include/asn_j2735_r63/per_support.h | 130 - .../Asn_J2735/include/asn_j2735_r63/version.h | 14 - .../include/asn_j2735_r63/xer_decoder.h | 106 - .../include/asn_j2735_r63/xer_encoder.h | 83 - .../include/asn_j2735_r63/xer_support.h | 55 - src/tmx/Asn_J2735/src/2020/ANY.c | 80 - src/tmx/Asn_J2735/src/2020/ANY_aper.c | 190 - src/tmx/Asn_J2735/src/2020/ANY_ber.c | 116 - src/tmx/Asn_J2735/src/2020/ANY_jer.c | 17 - src/tmx/Asn_J2735/src/2020/ANY_uper.c | 108 - src/tmx/Asn_J2735/src/2020/ANY_xer.c | 22 - .../src/2020/AccelSteerYawRateConfidence.c | 102 - src/tmx/Asn_J2735/src/2020/Acceleration.c | 76 - .../src/2020/AccelerationConfidence.c | 80 - .../Asn_J2735/src/2020/AccelerationSet4Way.c | 120 - src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c | 76 - .../Asn_J2735/src/2020/AddGrpB_Elevation.c | 76 - src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c | 76 - src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c | 228 - src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c | 262 - .../Asn_J2735/src/2020/AdvisorySpeedList.c | 73 - .../Asn_J2735/src/2020/AdvisorySpeedType.c | 74 - src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c | 82 - src/tmx/Asn_J2735/src/2020/Altitude.c | 84 - .../Asn_J2735/src/2020/AltitudeConfidence.c | 96 - src/tmx/Asn_J2735/src/2020/AltitudeValue.c | 76 - .../Asn_J2735/src/2020/AmbientAirPressure.c | 76 - .../src/2020/AmbientAirTemperature.c | 76 - .../Asn_J2735/src/2020/AnimalPropelledType.c | 74 - src/tmx/Asn_J2735/src/2020/AnimalType.c | 74 - src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c | 102 - .../Asn_J2735/src/2020/AntiLockBrakeStatus.c | 72 - src/tmx/Asn_J2735/src/2020/ApproachID.c | 76 - src/tmx/Asn_J2735/src/2020/ApproachOrLane.c | 93 - src/tmx/Asn_J2735/src/2020/Attachment.c | 80 - src/tmx/Asn_J2735/src/2020/AttachmentRadius.c | 76 - .../Asn_J2735/src/2020/AuxiliaryBrakeStatus.c | 72 - src/tmx/Asn_J2735/src/2020/AxleLocation.c | 76 - src/tmx/Asn_J2735/src/2020/AxleWeight.c | 76 - src/tmx/Asn_J2735/src/2020/AxleWeightList.c | 73 - src/tmx/Asn_J2735/src/2020/AxleWeightSet.c | 86 - src/tmx/Asn_J2735/src/2020/BIT_STRING.c | 213 - src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c | 60 - src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c | 168 - src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c | 69 - src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c | 124 - src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c | 244 - src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c | 70 - src/tmx/Asn_J2735/src/2020/BOOLEAN.c | 128 - src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c | 61 - src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c | 104 - src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c | 32 - src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c | 54 - src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c | 33 - src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c | 56 - src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c | 58 - src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c | 74 - src/tmx/Asn_J2735/src/2020/BSMcoreData.c | 300 - .../Asn_J2735/src/2020/BasicSafetyMessage.c | 312 - .../Asn_J2735/src/2020/BasicVehicleClass.c | 76 - src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c | 112 - .../Asn_J2735/src/2020/BrakeAppliedPressure.c | 96 - .../Asn_J2735/src/2020/BrakeAppliedStatus.c | 82 - .../Asn_J2735/src/2020/BrakeBoostApplied.c | 70 - .../Asn_J2735/src/2020/BrakeSystemStatus.c | 156 - src/tmx/Asn_J2735/src/2020/BumperHeight.c | 76 - src/tmx/Asn_J2735/src/2020/BumperHeights.c | 84 - src/tmx/Asn_J2735/src/2020/CargoWeight.c | 76 - src/tmx/Asn_J2735/src/2020/Circle.c | 102 - src/tmx/Asn_J2735/src/2020/CoarseHeading.c | 76 - src/tmx/Asn_J2735/src/2020/CodeWord.c | 77 - .../src/2020/CoefficientOfFriction.c | 76 - .../Asn_J2735/src/2020/CommonSafetyRequest.c | 244 - src/tmx/Asn_J2735/src/2020/Common_Angle.c | 76 - src/tmx/Asn_J2735/src/2020/Common_Elevation.c | 76 - src/tmx/Asn_J2735/src/2020/Common_MsgCount.c | 76 - src/tmx/Asn_J2735/src/2020/ComputedLane.c | 450 - src/tmx/Asn_J2735/src/2020/Confidence.c | 76 - src/tmx/Asn_J2735/src/2020/ConfidenceSet.c | 179 - src/tmx/Asn_J2735/src/2020/ConnectingLane.c | 86 - src/tmx/Asn_J2735/src/2020/Connection.c | 141 - .../2020/ConnectionManeuverAssist-addGrpC.c | 87 - .../src/2020/ConnectionManeuverAssist.c | 262 - src/tmx/Asn_J2735/src/2020/ConnectsToList.c | 73 - src/tmx/Asn_J2735/src/2020/Count.c | 76 - src/tmx/Asn_J2735/src/2020/DDate.c | 102 - src/tmx/Asn_J2735/src/2020/DDateTime.c | 176 - src/tmx/Asn_J2735/src/2020/DDay.c | 76 - src/tmx/Asn_J2735/src/2020/DFullTime.c | 138 - src/tmx/Asn_J2735/src/2020/DHour.c | 76 - src/tmx/Asn_J2735/src/2020/DMinute.c | 76 - src/tmx/Asn_J2735/src/2020/DMonth.c | 76 - src/tmx/Asn_J2735/src/2020/DMonthDay.c | 84 - src/tmx/Asn_J2735/src/2020/DOffset.c | 76 - src/tmx/Asn_J2735/src/2020/DSRCmsgID.c | 76 - src/tmx/Asn_J2735/src/2020/DSecond.c | 76 - src/tmx/Asn_J2735/src/2020/DTime.c | 122 - src/tmx/Asn_J2735/src/2020/DYear.c | 76 - src/tmx/Asn_J2735/src/2020/DYearMonth.c | 84 - src/tmx/Asn_J2735/src/2020/DataParameters.c | 330 - src/tmx/Asn_J2735/src/2020/Day.c | 76 - src/tmx/Asn_J2735/src/2020/DayOfWeek.c | 80 - src/tmx/Asn_J2735/src/2020/DegreesLat.c | 76 - src/tmx/Asn_J2735/src/2020/DegreesLong.c | 76 - src/tmx/Asn_J2735/src/2020/DeltaAngle.c | 76 - src/tmx/Asn_J2735/src/2020/DeltaTime.c | 76 - src/tmx/Asn_J2735/src/2020/DescriptiveName.c | 91 - src/tmx/Asn_J2735/src/2020/DirectionOfUse.c | 72 - src/tmx/Asn_J2735/src/2020/DisabledVehicle.c | 123 - src/tmx/Asn_J2735/src/2020/DistanceUnits.c | 80 - .../src/2020/DriveAxleLiftAirPressure.c | 76 - .../Asn_J2735/src/2020/DriveAxleLocation.c | 76 - .../src/2020/DriveAxleLubePressure.c | 76 - .../Asn_J2735/src/2020/DriveAxleTemperature.c | 76 - .../Asn_J2735/src/2020/DrivenLineOffsetLg.c | 76 - .../Asn_J2735/src/2020/DrivenLineOffsetSm.c | 76 - .../Asn_J2735/src/2020/DrivingWheelAngle.c | 76 - src/tmx/Asn_J2735/src/2020/Duration.c | 76 - src/tmx/Asn_J2735/src/2020/EXTERNAL.c | 228 - .../Asn_J2735/src/2020/ElevationConfidence.c | 96 - src/tmx/Asn_J2735/src/2020/EmergencyDetails.c | 159 - .../src/2020/EmergencyVehicleAlert.c | 353 - src/tmx/Asn_J2735/src/2020/EmissionType.c | 76 - src/tmx/Asn_J2735/src/2020/EnabledLaneList.c | 72 - .../Asn_J2735/src/2020/EssMobileFriction.c | 76 - src/tmx/Asn_J2735/src/2020/EssPrecipRate.c | 76 - .../Asn_J2735/src/2020/EssPrecipSituation.c | 94 - src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c | 70 - .../Asn_J2735/src/2020/EssSolarRadiation.c | 76 - src/tmx/Asn_J2735/src/2020/EventDescription.c | 365 - src/tmx/Asn_J2735/src/2020/ExitService.c | 215 - src/tmx/Asn_J2735/src/2020/Extent.c | 96 - src/tmx/Asn_J2735/src/2020/ExteriorLights.c | 82 - src/tmx/Asn_J2735/src/2020/FuelType.c | 76 - .../Asn_J2735/src/2020/FullPositionVector.c | 235 - src/tmx/Asn_J2735/src/2020/FurtherInfoID.c | 77 - src/tmx/Asn_J2735/src/2020/GNSSstatus.c | 82 - src/tmx/Asn_J2735/src/2020/GenericLane.c | 336 - src/tmx/Asn_J2735/src/2020/GenericLocations.c | 258 - src/tmx/Asn_J2735/src/2020/GenericSignage.c | 215 - src/tmx/Asn_J2735/src/2020/GeographicalPath.c | 421 - .../Asn_J2735/src/2020/GeometricProjection.c | 244 - src/tmx/Asn_J2735/src/2020/GraphicString.c | 91 - src/tmx/Asn_J2735/src/2020/GrossDistance.c | 76 - src/tmx/Asn_J2735/src/2020/GrossSpeed.c | 76 - src/tmx/Asn_J2735/src/2020/Header.c | 122 - src/tmx/Asn_J2735/src/2020/Heading.c | 76 - .../Asn_J2735/src/2020/HeadingConfidence.c | 80 - src/tmx/Asn_J2735/src/2020/HeadingSlice.c | 82 - src/tmx/Asn_J2735/src/2020/Holiday.c | 68 - src/tmx/Asn_J2735/src/2020/Hour.c | 76 - .../Asn_J2735/src/2020/HumanPropelledType.c | 78 - src/tmx/Asn_J2735/src/2020/IA5String.c | 133 - src/tmx/Asn_J2735/src/2020/INTEGER.c | 738 - src/tmx/Asn_J2735/src/2020/INTEGER_aper.c | 308 - src/tmx/Asn_J2735/src/2020/INTEGER_ber.c | 72 - src/tmx/Asn_J2735/src/2020/INTEGER_jer.c | 26 - src/tmx/Asn_J2735/src/2020/INTEGER_oer.c | 174 - src/tmx/Asn_J2735/src/2020/INTEGER_print.c | 26 - src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c | 92 - src/tmx/Asn_J2735/src/2020/INTEGER_uper.c | 236 - src/tmx/Asn_J2735/src/2020/INTEGER_xer.c | 351 - src/tmx/Asn_J2735/src/2020/ITIScodes.c | 76 - src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c | 215 - src/tmx/Asn_J2735/src/2020/ITIStext.c | 91 - src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c | 91 - .../src/2020/IncidentResponseEquipment.c | 210 - .../src/2020/IntersectionAccessPoint.c | 111 - .../src/2020/IntersectionCollision.c | 337 - .../Asn_J2735/src/2020/IntersectionGeometry.c | 318 - .../src/2020/IntersectionGeometryList.c | 73 - src/tmx/Asn_J2735/src/2020/IntersectionID.c | 76 - .../src/2020/IntersectionReferenceID.c | 86 - .../src/2020/IntersectionState-addGrpC.c | 69 - .../Asn_J2735/src/2020/IntersectionState.c | 336 - .../src/2020/IntersectionStateList.c | 73 - .../src/2020/IntersectionStatusObject.c | 82 - src/tmx/Asn_J2735/src/2020/IsDolly.c | 39 - .../Asn_J2735/src/2020/Iso3833VehicleType.c | 76 - src/tmx/Asn_J2735/src/2020/J1939data.c | 232 - .../src/2020/LaneAttributes-Barrier.c | 82 - .../Asn_J2735/src/2020/LaneAttributes-Bike.c | 82 - .../src/2020/LaneAttributes-Crosswalk.c | 82 - .../src/2020/LaneAttributes-Parking.c | 82 - .../src/2020/LaneAttributes-Sidewalk.c | 82 - .../src/2020/LaneAttributes-Striping.c | 82 - .../src/2020/LaneAttributes-TrackedVehicle.c | 82 - .../src/2020/LaneAttributes-Vehicle.c | 82 - src/tmx/Asn_J2735/src/2020/LaneAttributes.c | 123 - src/tmx/Asn_J2735/src/2020/LaneConnectionID.c | 76 - .../src/2020/LaneDataAttribute-addGrpB.c | 43 - .../Asn_J2735/src/2020/LaneDataAttribute.c | 287 - .../src/2020/LaneDataAttributeList.c | 73 - src/tmx/Asn_J2735/src/2020/LaneDirection.c | 82 - src/tmx/Asn_J2735/src/2020/LaneID.c | 76 - src/tmx/Asn_J2735/src/2020/LaneList.c | 73 - src/tmx/Asn_J2735/src/2020/LaneSharing.c | 82 - .../Asn_J2735/src/2020/LaneTypeAttributes.c | 201 - src/tmx/Asn_J2735/src/2020/LaneWidth.c | 76 - src/tmx/Asn_J2735/src/2020/Latitude.c | 76 - src/tmx/Asn_J2735/src/2020/LatitudeDMS.c | 76 - src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c | 102 - src/tmx/Asn_J2735/src/2020/LayerID.c | 76 - src/tmx/Asn_J2735/src/2020/LayerType.c | 82 - src/tmx/Asn_J2735/src/2020/LightbarInUse.c | 80 - src/tmx/Asn_J2735/src/2020/Location-quality.c | 80 - src/tmx/Asn_J2735/src/2020/Location-tech.c | 86 - src/tmx/Asn_J2735/src/2020/Longitude.c | 76 - src/tmx/Asn_J2735/src/2020/LongitudeDMS.c | 76 - src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c | 102 - src/tmx/Asn_J2735/src/2020/MUTCDCode.c | 80 - .../Asn_J2735/src/2020/ManeuverAssistList.c | 73 - src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c | 69 - src/tmx/Asn_J2735/src/2020/MapData.c | 320 - src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c | 76 - .../src/2020/MergeDivergeNodeAngle.c | 76 - src/tmx/Asn_J2735/src/2020/MessageBLOB.c | 77 - src/tmx/Asn_J2735/src/2020/MessageFrame.c | 872 -- src/tmx/Asn_J2735/src/2020/MinTimetoChange.c | 76 - src/tmx/Asn_J2735/src/2020/Minute.c | 76 - src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c | 76 - src/tmx/Asn_J2735/src/2020/MinutesAngle.c | 76 - src/tmx/Asn_J2735/src/2020/MinutesDuration.c | 76 - src/tmx/Asn_J2735/src/2020/Month.c | 76 - .../src/2020/MotorizedPropelledType.c | 78 - .../src/2020/MovementEvent-addGrpB.c | 158 - src/tmx/Asn_J2735/src/2020/MovementEvent.c | 228 - .../Asn_J2735/src/2020/MovementEventList.c | 73 - src/tmx/Asn_J2735/src/2020/MovementList.c | 73 - .../Asn_J2735/src/2020/MovementPhaseState.c | 84 - src/tmx/Asn_J2735/src/2020/MovementState.c | 245 - src/tmx/Asn_J2735/src/2020/MsgCRC.c | 77 - .../Asn_J2735/src/2020/MultiVehicleResponse.c | 72 - src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c | 76 - src/tmx/Asn_J2735/src/2020/NMEA-Payload.c | 77 - src/tmx/Asn_J2735/src/2020/NMEA-Revision.c | 80 - src/tmx/Asn_J2735/src/2020/NMEAcorrections.c | 262 - src/tmx/Asn_J2735/src/2020/NativeEnumerated.c | 108 - .../src/2020/NativeEnumerated_aper.c | 157 - .../Asn_J2735/src/2020/NativeEnumerated_jer.c | 36 - .../Asn_J2735/src/2020/NativeEnumerated_oer.c | 144 - .../src/2020/NativeEnumerated_uper.c | 135 - .../Asn_J2735/src/2020/NativeEnumerated_xer.c | 36 - src/tmx/Asn_J2735/src/2020/NativeInteger.c | 152 - .../Asn_J2735/src/2020/NativeInteger_aper.c | 69 - .../Asn_J2735/src/2020/NativeInteger_ber.c | 130 - .../Asn_J2735/src/2020/NativeInteger_jer.c | 32 - .../Asn_J2735/src/2020/NativeInteger_oer.c | 94 - .../Asn_J2735/src/2020/NativeInteger_print.c | 43 - .../Asn_J2735/src/2020/NativeInteger_rfill.c | 83 - .../Asn_J2735/src/2020/NativeInteger_uper.c | 70 - .../Asn_J2735/src/2020/NativeInteger_xer.c | 78 - src/tmx/Asn_J2735/src/2020/Node-LL-24B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LL-28B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LL-32B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LL-36B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LL-44B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LL-48B.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-20b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-22b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-24b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-26b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-28b.c | 84 - src/tmx/Asn_J2735/src/2020/Node-XY-32b.c | 84 - src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c | 90 - .../Asn_J2735/src/2020/NodeAttributeLLList.c | 72 - .../Asn_J2735/src/2020/NodeAttributeSetLL.c | 283 - .../Asn_J2735/src/2020/NodeAttributeSetXY.c | 283 - src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c | 90 - .../Asn_J2735/src/2020/NodeAttributeXYList.c | 72 - src/tmx/Asn_J2735/src/2020/NodeLL.c | 87 - src/tmx/Asn_J2735/src/2020/NodeListLL.c | 75 - src/tmx/Asn_J2735/src/2020/NodeListXY.c | 93 - .../Asn_J2735/src/2020/NodeOffsetPointLL.c | 201 - .../src/2020/NodeOffsetPointXY-addGrpB.c | 93 - .../Asn_J2735/src/2020/NodeOffsetPointXY.c | 201 - src/tmx/Asn_J2735/src/2020/NodeSetLL.c | 73 - src/tmx/Asn_J2735/src/2020/NodeSetXY.c | 73 - src/tmx/Asn_J2735/src/2020/NodeXY.c | 87 - .../src/2020/NumberOfParticipantsInCluster.c | 74 - .../Asn_J2735/src/2020/OBJECT_IDENTIFIER.c | 532 - .../src/2020/OBJECT_IDENTIFIER_jer.c | 28 - .../src/2020/OBJECT_IDENTIFIER_print.c | 30 - .../src/2020/OBJECT_IDENTIFIER_rfill.c | 73 - .../src/2020/OBJECT_IDENTIFIER_xer.c | 80 - src/tmx/Asn_J2735/src/2020/OCTET_STRING.c | 383 - .../Asn_J2735/src/2020/OCTET_STRING_aper.c | 414 - src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c | 525 - src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c | 148 - src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c | 166 - .../Asn_J2735/src/2020/OCTET_STRING_print.c | 65 - .../Asn_J2735/src/2020/OCTET_STRING_rfill.c | 209 - .../Asn_J2735/src/2020/OCTET_STRING_uper.c | 319 - src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c | 627 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c | 63 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c | 173 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c | 90 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c | 91 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c | 119 - src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c | 166 - src/tmx/Asn_J2735/src/2020/ObjectCount.c | 76 - src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c | 91 - .../Asn_J2735/src/2020/ObstacleDetection.c | 195 - .../Asn_J2735/src/2020/ObstacleDirection.c | 76 - src/tmx/Asn_J2735/src/2020/ObstacleDistance.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B09.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B10.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B11.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B12.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B13.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B14.c | 76 - src/tmx/Asn_J2735/src/2020/Offset-B16.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c | 76 - src/tmx/Asn_J2735/src/2020/OffsetSystem.c | 171 - src/tmx/Asn_J2735/src/2020/OverlayLaneList.c | 72 - src/tmx/Asn_J2735/src/2020/PartII-Id.c | 76 - src/tmx/Asn_J2735/src/2020/PartIIcontent.c | 284 - src/tmx/Asn_J2735/src/2020/PathHistory.c | 105 - src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c | 177 - .../Asn_J2735/src/2020/PathHistoryPointList.c | 73 - src/tmx/Asn_J2735/src/2020/PathPrediction.c | 84 - src/tmx/Asn_J2735/src/2020/PayloadData.c | 77 - .../src/2020/PedestrianBicycleDetect.c | 39 - .../Asn_J2735/src/2020/PersonalAssistive.c | 82 - .../src/2020/PersonalClusterRadius.c | 76 - .../src/2020/PersonalCrossingInProgress.c | 39 - .../src/2020/PersonalCrossingRequest.c | 39 - .../src/2020/PersonalDeviceUsageState.c | 82 - .../src/2020/PersonalDeviceUserType.c | 76 - .../src/2020/PersonalSafetyMessage.c | 626 - .../src/2020/PivotPointDescription.c | 102 - src/tmx/Asn_J2735/src/2020/PivotingAllowed.c | 39 - .../Asn_J2735/src/2020/Position3D-addGrpB.c | 102 - .../Asn_J2735/src/2020/Position3D-addGrpC.c | 66 - src/tmx/Asn_J2735/src/2020/Position3D.c | 226 - .../Asn_J2735/src/2020/PositionConfidence.c | 96 - .../src/2020/PositionConfidenceSet.c | 84 - .../Asn_J2735/src/2020/PositionalAccuracy.c | 102 - .../Asn_J2735/src/2020/PreemptPriorityList.c | 73 - .../src/2020/PrioritizationResponse.c | 102 - .../src/2020/PrioritizationResponseList.c | 73 - .../src/2020/PrioritizationResponseStatus.c | 82 - src/tmx/Asn_J2735/src/2020/Priority.c | 77 - .../Asn_J2735/src/2020/PriorityRequestType.c | 74 - .../Asn_J2735/src/2020/PrivilegedEventFlags.c | 82 - src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c | 84 - .../Asn_J2735/src/2020/ProbeDataManagement.c | 469 - .../Asn_J2735/src/2020/ProbeSegmentNumber.c | 76 - src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c | 385 - .../Asn_J2735/src/2020/PropelledInformation.c | 111 - .../2020/PublicSafetyAndRoadWorkerActivity.c | 82 - .../PublicSafetyDirectingTrafficSubType.c | 82 - .../PublicSafetyEventResponderWorkerType.c | 82 - src/tmx/Asn_J2735/src/2020/RTCM-Revision.c | 74 - src/tmx/Asn_J2735/src/2020/RTCMPackage.c | 87 - src/tmx/Asn_J2735/src/2020/RTCMcorrections.c | 282 - src/tmx/Asn_J2735/src/2020/RTCMheader.c | 84 - src/tmx/Asn_J2735/src/2020/RTCMmessage.c | 77 - src/tmx/Asn_J2735/src/2020/RTCMmessageList.c | 72 - src/tmx/Asn_J2735/src/2020/Radius-B12.c | 76 - .../Asn_J2735/src/2020/RadiusOfCurvature.c | 76 - src/tmx/Asn_J2735/src/2020/RainSensor.c | 80 - src/tmx/Asn_J2735/src/2020/RegionId.c | 76 - src/tmx/Asn_J2735/src/2020/RegionList.c | 73 - src/tmx/Asn_J2735/src/2020/RegionOffsets.c | 104 - src/tmx/Asn_J2735/src/2020/RegionPointSet.c | 105 - .../Asn_J2735/src/2020/RegionalExtension.c | 11120 ---------------- .../Asn_J2735/src/2020/RegulatorySpeedLimit.c | 84 - src/tmx/Asn_J2735/src/2020/RequestID.c | 76 - .../src/2020/RequestImportanceLevel.c | 96 - src/tmx/Asn_J2735/src/2020/RequestSubRole.c | 96 - src/tmx/Asn_J2735/src/2020/RequestedItem.c | 100 - .../Asn_J2735/src/2020/RequestedItemList.c | 72 - .../Asn_J2735/src/2020/RequestorDescription.c | 318 - .../src/2020/RequestorPositionVector.c | 105 - src/tmx/Asn_J2735/src/2020/RequestorType.c | 159 - .../src/2020/ResponderGroupAffected.c | 94 - src/tmx/Asn_J2735/src/2020/ResponseType.c | 80 - .../Asn_J2735/src/2020/RestrictionAppliesTo.c | 94 - .../src/2020/RestrictionClassAssignment.c | 84 - .../Asn_J2735/src/2020/RestrictionClassID.c | 76 - .../Asn_J2735/src/2020/RestrictionClassList.c | 73 - .../src/2020/RestrictionUserType-addGrpC.c | 68 - .../Asn_J2735/src/2020/RestrictionUserType.c | 197 - .../src/2020/RestrictionUserTypeList.c | 73 - src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c | 73 - src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c | 76 - src/tmx/Asn_J2735/src/2020/RoadSegment.c | 299 - src/tmx/Asn_J2735/src/2020/RoadSegmentID.c | 76 - src/tmx/Asn_J2735/src/2020/RoadSegmentList.c | 73 - .../src/2020/RoadSegmentReferenceID.c | 86 - src/tmx/Asn_J2735/src/2020/RoadSideAlert.c | 438 - src/tmx/Asn_J2735/src/2020/RoadSignID.c | 122 - .../Asn_J2735/src/2020/RoadwayCrownAngle.c | 76 - src/tmx/Asn_J2735/src/2020/SPAT.c | 226 - src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c | 76 - src/tmx/Asn_J2735/src/2020/SSPindex.c | 76 - src/tmx/Asn_J2735/src/2020/Sample.c | 158 - src/tmx/Asn_J2735/src/2020/Scale-B12.c | 76 - src/tmx/Asn_J2735/src/2020/Second.c | 76 - src/tmx/Asn_J2735/src/2020/SecondOfTime.c | 76 - src/tmx/Asn_J2735/src/2020/SecondsAngle.c | 76 - .../Asn_J2735/src/2020/SegmentAttributeLL.c | 142 - .../src/2020/SegmentAttributeLLList.c | 72 - .../Asn_J2735/src/2020/SegmentAttributeXY.c | 142 - .../src/2020/SegmentAttributeXYList.c | 72 - .../src/2020/SemiMajorAxisAccuracy.c | 76 - .../src/2020/SemiMajorAxisOrientation.c | 76 - .../src/2020/SemiMinorAxisAccuracy.c | 76 - src/tmx/Asn_J2735/src/2020/ShapePointSet.c | 123 - src/tmx/Asn_J2735/src/2020/SignPrority.c | 76 - .../Asn_J2735/src/2020/SignalControlZone.c | 66 - src/tmx/Asn_J2735/src/2020/SignalGroupID.c | 76 - .../Asn_J2735/src/2020/SignalHeadLocation.c | 84 - .../src/2020/SignalHeadLocationList.c | 73 - src/tmx/Asn_J2735/src/2020/SignalReqScheme.c | 77 - src/tmx/Asn_J2735/src/2020/SignalRequest.c | 263 - .../Asn_J2735/src/2020/SignalRequestList.c | 73 - .../Asn_J2735/src/2020/SignalRequestMessage.c | 263 - .../Asn_J2735/src/2020/SignalRequestPackage.c | 244 - .../Asn_J2735/src/2020/SignalRequesterInfo.c | 141 - src/tmx/Asn_J2735/src/2020/SignalStatus.c | 226 - src/tmx/Asn_J2735/src/2020/SignalStatusList.c | 73 - .../Asn_J2735/src/2020/SignalStatusMessage.c | 244 - .../Asn_J2735/src/2020/SignalStatusPackage.c | 300 - .../src/2020/SignalStatusPackageList.c | 73 - src/tmx/Asn_J2735/src/2020/SirenInUse.c | 72 - src/tmx/Asn_J2735/src/2020/Snapshot.c | 106 - src/tmx/Asn_J2735/src/2020/SnapshotDistance.c | 120 - src/tmx/Asn_J2735/src/2020/SnapshotTime.c | 120 - .../src/2020/SpecialVehicleExtensions.c | 107 - src/tmx/Asn_J2735/src/2020/Speed.c | 76 - src/tmx/Asn_J2735/src/2020/SpeedAdvice.c | 76 - src/tmx/Asn_J2735/src/2020/SpeedConfidence.c | 80 - src/tmx/Asn_J2735/src/2020/SpeedLimit.c | 215 - src/tmx/Asn_J2735/src/2020/SpeedLimitList.c | 73 - src/tmx/Asn_J2735/src/2020/SpeedLimitType.c | 92 - src/tmx/Asn_J2735/src/2020/SpeedProfile.c | 66 - .../src/2020/SpeedProfileMeasurement.c | 76 - .../src/2020/SpeedProfileMeasurementList.c | 72 - .../SpeedandHeadingandThrottleConfidence.c | 102 - .../src/2020/StabilityControlStatus.c | 72 - src/tmx/Asn_J2735/src/2020/StationID.c | 72 - .../src/2020/SteeringAxleLubePressure.c | 76 - .../src/2020/SteeringAxleTemperature.c | 76 - .../Asn_J2735/src/2020/SteeringWheelAngle.c | 76 - .../src/2020/SteeringWheelAngleConfidence.c | 72 - .../src/2020/SteeringWheelAngleRateOfChange.c | 76 - src/tmx/Asn_J2735/src/2020/SummerTime.c | 68 - src/tmx/Asn_J2735/src/2020/SunSensor.c | 76 - .../src/2020/SupplementalVehicleExtensions.c | 342 - src/tmx/Asn_J2735/src/2020/TemporaryID.c | 77 - src/tmx/Asn_J2735/src/2020/TenthSecond.c | 76 - src/tmx/Asn_J2735/src/2020/TermDistance.c | 76 - src/tmx/Asn_J2735/src/2020/TermTime.c | 76 - src/tmx/Asn_J2735/src/2020/TestMessage00.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage01.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage02.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage03.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage04.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage05.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage06.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage07.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage08.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage09.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage10.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage11.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage12.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage13.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage14.c | 88 - src/tmx/Asn_J2735/src/2020/TestMessage15.c | 88 - .../Asn_J2735/src/2020/ThrottleConfidence.c | 72 - src/tmx/Asn_J2735/src/2020/ThrottlePosition.c | 76 - .../Asn_J2735/src/2020/TimeChangeDetails.c | 158 - src/tmx/Asn_J2735/src/2020/TimeConfidence.c | 144 - .../src/2020/TimeIntervalConfidence.c | 76 - src/tmx/Asn_J2735/src/2020/TimeOffset.c | 76 - src/tmx/Asn_J2735/src/2020/TimeRemaining.c | 76 - src/tmx/Asn_J2735/src/2020/TireData.c | 176 - src/tmx/Asn_J2735/src/2020/TireDataList.c | 73 - src/tmx/Asn_J2735/src/2020/TireLeakageRate.c | 76 - src/tmx/Asn_J2735/src/2020/TireLocation.c | 76 - src/tmx/Asn_J2735/src/2020/TirePressure.c | 76 - .../src/2020/TirePressureThresholdDetection.c | 80 - src/tmx/Asn_J2735/src/2020/TireTemp.c | 76 - .../src/2020/TractionControlStatus.c | 72 - src/tmx/Asn_J2735/src/2020/TrailerData.c | 102 - .../Asn_J2735/src/2020/TrailerHistoryPoint.c | 140 - .../src/2020/TrailerHistoryPointList.c | 73 - src/tmx/Asn_J2735/src/2020/TrailerMass.c | 76 - .../src/2020/TrailerUnitDescription.c | 287 - .../src/2020/TrailerUnitDescriptionList.c | 73 - src/tmx/Asn_J2735/src/2020/TrailerWeight.c | 76 - src/tmx/Asn_J2735/src/2020/TransitStatus.c | 82 - .../src/2020/TransitVehicleOccupancy.c | 80 - .../Asn_J2735/src/2020/TransitVehicleStatus.c | 82 - .../Asn_J2735/src/2020/TransmissionAndSpeed.c | 84 - .../Asn_J2735/src/2020/TransmissionState.c | 80 - .../Asn_J2735/src/2020/TravelerDataFrame.c | 612 - .../src/2020/TravelerDataFrameList.c | 73 - src/tmx/Asn_J2735/src/2020/TravelerInfoType.c | 74 - .../Asn_J2735/src/2020/TravelerInformation.c | 262 - src/tmx/Asn_J2735/src/2020/URL-Base.c | 91 - src/tmx/Asn_J2735/src/2020/URL-Link.c | 91 - src/tmx/Asn_J2735/src/2020/URL-Short.c | 91 - src/tmx/Asn_J2735/src/2020/UniqueMSGID.c | 77 - .../Asn_J2735/src/2020/UserSizeAndBehaviour.c | 82 - src/tmx/Asn_J2735/src/2020/VINstring.c | 77 - src/tmx/Asn_J2735/src/2020/ValidRegion.c | 207 - .../src/2020/VehicleClassification.c | 316 - src/tmx/Asn_J2735/src/2020/VehicleData.c | 123 - .../Asn_J2735/src/2020/VehicleEventFlags.c | 82 - .../Asn_J2735/src/2020/VehicleGroupAffected.c | 136 - src/tmx/Asn_J2735/src/2020/VehicleHeight.c | 76 - src/tmx/Asn_J2735/src/2020/VehicleID.c | 93 - src/tmx/Asn_J2735/src/2020/VehicleIdent.c | 314 - src/tmx/Asn_J2735/src/2020/VehicleLength.c | 76 - src/tmx/Asn_J2735/src/2020/VehicleMass.c | 76 - .../src/2020/VehicleSafetyExtensions.c | 124 - src/tmx/Asn_J2735/src/2020/VehicleSize.c | 84 - src/tmx/Asn_J2735/src/2020/VehicleStatus.c | 1061 -- .../src/2020/VehicleStatusDeviceTypeTag.c | 124 - .../Asn_J2735/src/2020/VehicleStatusRequest.c | 251 - .../src/2020/VehicleStatusRequestList.c | 73 - .../src/2020/VehicleToLanePosition.c | 84 - .../src/2020/VehicleToLanePositionList.c | 73 - src/tmx/Asn_J2735/src/2020/VehicleType.c | 98 - src/tmx/Asn_J2735/src/2020/VehicleWidth.c | 76 - src/tmx/Asn_J2735/src/2020/Velocity.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B07.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B08.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B09.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B10.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B11.c | 76 - src/tmx/Asn_J2735/src/2020/VertOffset-B12.c | 76 - .../Asn_J2735/src/2020/VerticalAcceleration.c | 76 - .../src/2020/VerticalAccelerationThreshold.c | 82 - src/tmx/Asn_J2735/src/2020/VerticalOffset.c | 201 - src/tmx/Asn_J2735/src/2020/WaitOnStopline.c | 39 - src/tmx/Asn_J2735/src/2020/WeatherProbe.c | 105 - src/tmx/Asn_J2735/src/2020/WeatherReport.c | 158 - .../Asn_J2735/src/2020/WheelEndElectFault.c | 72 - .../Asn_J2735/src/2020/WheelSensorStatus.c | 72 - src/tmx/Asn_J2735/src/2020/WiperRate.c | 76 - src/tmx/Asn_J2735/src/2020/WiperSet.c | 122 - src/tmx/Asn_J2735/src/2020/WiperStatus.c | 80 - src/tmx/Asn_J2735/src/2020/WorkZone.c | 215 - src/tmx/Asn_J2735/src/2020/YawRate.c | 76 - .../Asn_J2735/src/2020/YawRateConfidence.c | 80 - src/tmx/Asn_J2735/src/2020/Year.c | 76 - src/tmx/Asn_J2735/src/2020/ZoneLength.c | 76 - src/tmx/Asn_J2735/src/2020/Zoom.c | 76 - src/tmx/Asn_J2735/src/2020/aper_decoder.c | 91 - src/tmx/Asn_J2735/src/2020/aper_encoder.c | 129 - src/tmx/Asn_J2735/src/2020/aper_opentype.c | 149 - src/tmx/Asn_J2735/src/2020/aper_support.c | 239 - src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c | 41 - src/tmx/Asn_J2735/src/2020/asn_SET_OF.c | 88 - src/tmx/Asn_J2735/src/2020/asn_application.c | 538 - src/tmx/Asn_J2735/src/2020/asn_bit_data.c | 333 - src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c | 31 - .../Asn_J2735/src/2020/asn_codecs_prim_ber.c | 115 - .../Asn_J2735/src/2020/asn_codecs_prim_xer.c | 184 - src/tmx/Asn_J2735/src/2020/asn_internal.c | 48 - src/tmx/Asn_J2735/src/2020/asn_random_fill.c | 66 - src/tmx/Asn_J2735/src/2020/ber_decoder.c | 283 - src/tmx/Asn_J2735/src/2020/ber_tlv_length.c | 168 - src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c | 144 - src/tmx/Asn_J2735/src/2020/constr_CHOICE.c | 358 - .../Asn_J2735/src/2020/constr_CHOICE_aper.c | 181 - .../Asn_J2735/src/2020/constr_CHOICE_ber.c | 447 - .../Asn_J2735/src/2020/constr_CHOICE_jer.c | 79 - .../Asn_J2735/src/2020/constr_CHOICE_oer.c | 375 - .../Asn_J2735/src/2020/constr_CHOICE_print.c | 48 - .../Asn_J2735/src/2020/constr_CHOICE_rfill.c | 60 - .../Asn_J2735/src/2020/constr_CHOICE_uper.c | 191 - .../Asn_J2735/src/2020/constr_CHOICE_xer.c | 316 - src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c | 197 - .../Asn_J2735/src/2020/constr_SEQUENCE_OF.c | 92 - .../src/2020/constr_SEQUENCE_OF_aper.c | 88 - .../src/2020/constr_SEQUENCE_OF_ber.c | 88 - .../src/2020/constr_SEQUENCE_OF_jer.c | 65 - .../src/2020/constr_SEQUENCE_OF_uper.c | 92 - .../src/2020/constr_SEQUENCE_OF_xer.c | 60 - .../Asn_J2735/src/2020/constr_SEQUENCE_aper.c | 457 - .../Asn_J2735/src/2020/constr_SEQUENCE_ber.c | 612 - .../Asn_J2735/src/2020/constr_SEQUENCE_jer.c | 84 - .../Asn_J2735/src/2020/constr_SEQUENCE_oer.c | 557 - .../src/2020/constr_SEQUENCE_print.c | 55 - .../src/2020/constr_SEQUENCE_rfill.c | 74 - .../Asn_J2735/src/2020/constr_SEQUENCE_uper.c | 429 - .../Asn_J2735/src/2020/constr_SEQUENCE_xer.c | 348 - src/tmx/Asn_J2735/src/2020/constr_SET_OF.c | 371 - .../Asn_J2735/src/2020/constr_SET_OF_aper.c | 186 - .../Asn_J2735/src/2020/constr_SET_OF_ber.c | 355 - .../Asn_J2735/src/2020/constr_SET_OF_jer.c | 144 - .../Asn_J2735/src/2020/constr_SET_OF_oer.c | 281 - .../Asn_J2735/src/2020/constr_SET_OF_print.c | 39 - .../Asn_J2735/src/2020/constr_SET_OF_rfill.c | 152 - .../Asn_J2735/src/2020/constr_SET_OF_uper.c | 201 - .../Asn_J2735/src/2020/constr_SET_OF_xer.c | 314 - src/tmx/Asn_J2735/src/2020/constr_TYPE.c | 80 - src/tmx/Asn_J2735/src/2020/constraints.c | 94 - src/tmx/Asn_J2735/src/2020/der_encoder.c | 194 - src/tmx/Asn_J2735/src/2020/jer_encoder.c | 69 - src/tmx/Asn_J2735/src/2020/oer_decoder.c | 152 - src/tmx/Asn_J2735/src/2020/oer_encoder.c | 141 - src/tmx/Asn_J2735/src/2020/oer_support.c | 122 - src/tmx/Asn_J2735/src/2020/pdu_collection.c | 58 - src/tmx/Asn_J2735/src/2020/per_decoder.c | 5 - src/tmx/Asn_J2735/src/2020/per_encoder.c | 35 - src/tmx/Asn_J2735/src/2020/per_opentype.c | 28 - src/tmx/Asn_J2735/src/2020/per_support.c | 9 - src/tmx/Asn_J2735/src/2020/uper_decoder.c | 96 - src/tmx/Asn_J2735/src/2020/uper_encoder.c | 127 - src/tmx/Asn_J2735/src/2020/uper_opentype.c | 372 - src/tmx/Asn_J2735/src/2020/uper_support.c | 311 - src/tmx/Asn_J2735/src/2020/xer_decoder.c | 369 - src/tmx/Asn_J2735/src/2020/xer_encoder.c | 237 - src/tmx/Asn_J2735/src/2020/xer_support.c | 227 - .../src/r41/AccelSteerYawRateConfidence.c | 80 - src/tmx/Asn_J2735/src/r41/Acceleration.c | 147 - .../src/r41/AccelerationConfidence.c | 159 - .../Asn_J2735/src/r41/AccelerationSet4Way.c | 148 - src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c | 112 - src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c | 58 - src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c | 153 - src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c | 153 - src/tmx/Asn_J2735/src/r41/Altitude.c | 70 - .../Asn_J2735/src/r41/AltitudeConfidence.c | 175 - src/tmx/Asn_J2735/src/r41/AltitudeValue.c | 147 - .../Asn_J2735/src/r41/AmbientAirPressure.c | 147 - .../Asn_J2735/src/r41/AmbientAirTemperature.c | 147 - src/tmx/Asn_J2735/src/r41/Angle.c | 147 - .../Asn_J2735/src/r41/AnimalPropelledType.c | 153 - src/tmx/Asn_J2735/src/r41/AnimalType.c | 153 - src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c | 148 - .../Asn_J2735/src/r41/AntiLockBrakeStatus.c | 151 - src/tmx/Asn_J2735/src/r41/ApproachID.c | 147 - src/tmx/Asn_J2735/src/r41/Attachment.c | 159 - src/tmx/Asn_J2735/src/r41/AttachmentRadius.c | 147 - .../Asn_J2735/src/r41/AuxiliaryBrakeStatus.c | 151 - src/tmx/Asn_J2735/src/r41/AxleLocation.c | 147 - src/tmx/Asn_J2735/src/r41/AxleWeight.c | 147 - src/tmx/Asn_J2735/src/r41/BIT_STRING.c | 189 - src/tmx/Asn_J2735/src/r41/BOOLEAN.c | 282 - src/tmx/Asn_J2735/src/r41/BSMblob.c | 148 - .../Asn_J2735/src/r41/BasicSafetyMessage.c | 92 - .../src/r41/BasicSafetyMessageVerbose.c | 212 - .../Asn_J2735/src/r41/BrakeAppliedPressure.c | 175 - .../Asn_J2735/src/r41/BrakeAppliedStatus.c | 125 - src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c | 149 - src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c | 148 - src/tmx/Asn_J2735/src/r41/BumperHeightFront.c | 147 - src/tmx/Asn_J2735/src/r41/BumperHeightRear.c | 147 - src/tmx/Asn_J2735/src/r41/BumperHeights.c | 70 - src/tmx/Asn_J2735/src/r41/CargoWeight.c | 147 - src/tmx/Asn_J2735/src/r41/Circle.c | 233 - src/tmx/Asn_J2735/src/r41/CodeWord.c | 148 - .../Asn_J2735/src/r41/CoefficientOfFriction.c | 147 - .../Asn_J2735/src/r41/CommonSafetyRequest.c | 174 - src/tmx/Asn_J2735/src/r41/ComputedLane.c | 248 - src/tmx/Asn_J2735/src/r41/ConfidenceSet.c | 112 - src/tmx/Asn_J2735/src/r41/ConnectingLane.c | 72 - src/tmx/Asn_J2735/src/r41/Connection.c | 102 - .../src/r41/ConnectionManeuverAssist.c | 112 - src/tmx/Asn_J2735/src/r41/ConnectsToList.c | 58 - src/tmx/Asn_J2735/src/r41/Count.c | 147 - src/tmx/Asn_J2735/src/r41/DDate.c | 80 - src/tmx/Asn_J2735/src/r41/DDateTime.c | 112 - src/tmx/Asn_J2735/src/r41/DDay.c | 147 - src/tmx/Asn_J2735/src/r41/DFullTime.c | 100 - src/tmx/Asn_J2735/src/r41/DHour.c | 147 - src/tmx/Asn_J2735/src/r41/DMinute.c | 147 - src/tmx/Asn_J2735/src/r41/DMonth.c | 147 - src/tmx/Asn_J2735/src/r41/DMonthDay.c | 70 - src/tmx/Asn_J2735/src/r41/DOffset.c | 147 - src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c | 125 - src/tmx/Asn_J2735/src/r41/DSRCmsgID.c | 179 - src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c | 147 - src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c | 147 - src/tmx/Asn_J2735/src/r41/DSecond.c | 147 - src/tmx/Asn_J2735/src/r41/DSecond2.c | 147 - src/tmx/Asn_J2735/src/r41/DTime.c | 80 - src/tmx/Asn_J2735/src/r41/DYear.c | 147 - src/tmx/Asn_J2735/src/r41/DYearMonth.c | 70 - src/tmx/Asn_J2735/src/r41/DataParameters.c | 272 - src/tmx/Asn_J2735/src/r41/Day.c | 147 - src/tmx/Asn_J2735/src/r41/DayOfWeek.c | 159 - src/tmx/Asn_J2735/src/r41/DegreesLat.c | 147 - src/tmx/Asn_J2735/src/r41/DegreesLong.c | 147 - src/tmx/Asn_J2735/src/r41/DeltaAngle.c | 147 - src/tmx/Asn_J2735/src/r41/DescriptiveName.c | 162 - src/tmx/Asn_J2735/src/r41/DestinationType.c | 70 - src/tmx/Asn_J2735/src/r41/DirectionOfUse.c | 151 - .../src/r41/DriveAxleLiftAirPressure.c | 147 - src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c | 147 - .../Asn_J2735/src/r41/DriveAxleLubePressure.c | 147 - .../Asn_J2735/src/r41/DriveAxleTemperature.c | 147 - .../Asn_J2735/src/r41/DrivenLineOffsetLg.c | 147 - .../Asn_J2735/src/r41/DrivenLineOffsetSm.c | 147 - src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c | 147 - .../src/r41/EU-Reg-ConnectionManeuverAssist.c | 72 - .../src/r41/EU-Reg-IntersectionState.c | 62 - src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c | 62 - src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c | 60 - .../src/r41/EU-Reg-RestrictionUserType.c | 62 - src/tmx/Asn_J2735/src/r41/Elevation.c | 148 - src/tmx/Asn_J2735/src/r41/Elevation2.c | 147 - .../Asn_J2735/src/r41/ElevationConfidence.c | 175 - src/tmx/Asn_J2735/src/r41/EmergencyDetails.c | 147 - .../Asn_J2735/src/r41/EmergencyVehicleAlert.c | 162 - src/tmx/Asn_J2735/src/r41/EmissionType.c | 155 - src/tmx/Asn_J2735/src/r41/EnabledLaneList.c | 58 - src/tmx/Asn_J2735/src/r41/EssMobileFriction.c | 147 - src/tmx/Asn_J2735/src/r41/EssPrecipRate.c | 147 - .../Asn_J2735/src/r41/EssPrecipSituation.c | 173 - src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c | 149 - src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c | 147 - src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c | 147 - src/tmx/Asn_J2735/src/r41/EventFlags.c | 147 - src/tmx/Asn_J2735/src/r41/ExitService.c | 218 - src/tmx/Asn_J2735/src/r41/Extent.c | 167 - src/tmx/Asn_J2735/src/r41/ExteriorLights.c | 147 - .../Asn_J2735/src/r41/FullPositionVector.c | 152 - src/tmx/Asn_J2735/src/r41/FurtherInfoID.c | 148 - src/tmx/Asn_J2735/src/r41/GPSstatus.c | 125 - src/tmx/Asn_J2735/src/r41/GenericLane.c | 152 - src/tmx/Asn_J2735/src/r41/GenericSignage.c | 218 - src/tmx/Asn_J2735/src/r41/Heading.c | 147 - src/tmx/Asn_J2735/src/r41/HeadingConfidence.c | 159 - src/tmx/Asn_J2735/src/r41/HeadingSlice.c | 148 - src/tmx/Asn_J2735/src/r41/Holiday.c | 147 - src/tmx/Asn_J2735/src/r41/Hour.c | 147 - .../Asn_J2735/src/r41/HumanPropelledType.c | 157 - src/tmx/Asn_J2735/src/r41/IA5String.c | 77 - src/tmx/Asn_J2735/src/r41/INTEGER.c | 1023 -- src/tmx/Asn_J2735/src/r41/ITIScodes.c | 147 - src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c | 173 - src/tmx/Asn_J2735/src/r41/ITIStext.c | 162 - .../src/r41/IncidentResponseEquipment.c | 289 - .../Asn_J2735/src/r41/IntersectionCollision.c | 132 - .../Asn_J2735/src/r41/IntersectionGeometry.c | 142 - .../src/r41/IntersectionGeometryList.c | 58 - src/tmx/Asn_J2735/src/r41/IntersectionID.c | 147 - .../src/r41/IntersectionReferenceID.c | 72 - src/tmx/Asn_J2735/src/r41/IntersectionState.c | 172 - .../Asn_J2735/src/r41/IntersectionStateList.c | 58 - .../src/r41/IntersectionStatusObject.c | 153 - src/tmx/Asn_J2735/src/r41/J1939data.c | 494 - src/tmx/Asn_J2735/src/r41/JPN-Angle.c | 147 - src/tmx/Asn_J2735/src/r41/JPN-Elevation.c | 147 - src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c | 147 - .../src/r41/JPN-Reg-LaneDataAttribute.c | 45 - .../Asn_J2735/src/r41/JPN-Reg-MovementEvent.c | 112 - .../src/r41/JPN-Reg-NodeOffsetPoint.c | 71 - .../Asn_J2735/src/r41/JPN-Reg-Position3D.c | 80 - src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c | 150 - .../src/r41/LaneAttributes-Barrier.c | 153 - .../Asn_J2735/src/r41/LaneAttributes-Bike.c | 153 - .../src/r41/LaneAttributes-Crosswalk.c | 153 - .../src/r41/LaneAttributes-Parking.c | 153 - .../src/r41/LaneAttributes-Sidewalk.c | 153 - .../src/r41/LaneAttributes-Striping.c | 153 - .../src/r41/LaneAttributes-TrackedVehicle.c | 153 - .../src/r41/LaneAttributes-Vehicle.c | 153 - src/tmx/Asn_J2735/src/r41/LaneAttributes.c | 92 - src/tmx/Asn_J2735/src/r41/LaneConnectionID.c | 147 - src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c | 121 - .../Asn_J2735/src/r41/LaneDataAttributeList.c | 58 - src/tmx/Asn_J2735/src/r41/LaneDirection.c | 153 - src/tmx/Asn_J2735/src/r41/LaneID.c | 147 - src/tmx/Asn_J2735/src/r41/LaneList.c | 58 - src/tmx/Asn_J2735/src/r41/LaneNumber.c | 148 - src/tmx/Asn_J2735/src/r41/LaneSharing.c | 153 - .../Asn_J2735/src/r41/LaneTypeAttributes.c | 131 - src/tmx/Asn_J2735/src/r41/LaneWidth.c | 147 - src/tmx/Asn_J2735/src/r41/Latitude.c | 147 - src/tmx/Asn_J2735/src/r41/LatitudeDMS.c | 147 - src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c | 80 - src/tmx/Asn_J2735/src/r41/LayerID.c | 147 - src/tmx/Asn_J2735/src/r41/LayerType.c | 161 - src/tmx/Asn_J2735/src/r41/LightbarInUse.c | 163 - src/tmx/Asn_J2735/src/r41/Location-quality.c | 159 - src/tmx/Asn_J2735/src/r41/Location-tech.c | 161 - src/tmx/Asn_J2735/src/r41/Longitude.c | 147 - src/tmx/Asn_J2735/src/r41/LongitudeDMS.c | 147 - src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c | 80 - src/tmx/Asn_J2735/src/r41/MUTCDCode.c | 159 - .../Asn_J2735/src/r41/ManeuverAssistList.c | 58 - src/tmx/Asn_J2735/src/r41/MapData.c | 162 - src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c | 147 - .../Asn_J2735/src/r41/MergeDivergeNodeAngle.c | 147 - src/tmx/Asn_J2735/src/r41/MinTimetoChange.c | 147 - src/tmx/Asn_J2735/src/r41/Minute.c | 147 - src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c | 147 - src/tmx/Asn_J2735/src/r41/MinutesAngle.c | 147 - src/tmx/Asn_J2735/src/r41/MinutesDuration.c | 147 - src/tmx/Asn_J2735/src/r41/MobilityNeeds.c | 70 - src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c | 59 - src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c | 149 - .../Asn_J2735/src/r41/ModeOfTransportType.c | 151 - src/tmx/Asn_J2735/src/r41/Month.c | 147 - .../src/r41/MotorizedPropelledType.c | 157 - src/tmx/Asn_J2735/src/r41/MovementEvent.c | 92 - src/tmx/Asn_J2735/src/r41/MovementEventList.c | 58 - src/tmx/Asn_J2735/src/r41/MovementList.c | 58 - .../Asn_J2735/src/r41/MovementPhaseState.c | 163 - src/tmx/Asn_J2735/src/r41/MovementState.c | 102 - src/tmx/Asn_J2735/src/r41/MsgCRC.c | 148 - src/tmx/Asn_J2735/src/r41/MsgCount.c | 147 - .../Asn_J2735/src/r41/MultiVehicleResponse.c | 151 - src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c | 130 - src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c | 147 - src/tmx/Asn_J2735/src/r41/NMEA-Payload.c | 148 - src/tmx/Asn_J2735/src/r41/NMEA-Revision.c | 159 - src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c | 148 - src/tmx/Asn_J2735/src/r41/NativeEnumerated.c | 207 - src/tmx/Asn_J2735/src/r41/NativeInteger.c | 332 - src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-20b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-22b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-24b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-26b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-28b.c | 70 - src/tmx/Asn_J2735/src/r41/Node-XY-32b.c | 70 - src/tmx/Asn_J2735/src/r41/Node.c | 72 - src/tmx/Asn_J2735/src/r41/NodeAttribute.c | 169 - src/tmx/Asn_J2735/src/r41/NodeAttributeList.c | 58 - src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c | 122 - src/tmx/Asn_J2735/src/r41/NodeList.c | 58 - src/tmx/Asn_J2735/src/r41/NodeList2.c | 71 - src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c | 131 - src/tmx/Asn_J2735/src/r41/NodeSet.c | 58 - .../src/r41/NumberOfParticipantsInCluster.c | 153 - src/tmx/Asn_J2735/src/r41/OCTET_STRING.c | 1805 --- src/tmx/Asn_J2735/src/r41/ObjectCount.c | 147 - src/tmx/Asn_J2735/src/r41/ObstacleDirection.c | 142 - src/tmx/Asn_J2735/src/r41/ObstacleDistance.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B10.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B11.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B12.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B13.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B14.c | 147 - src/tmx/Asn_J2735/src/r41/Offset-B16.c | 147 - src/tmx/Asn_J2735/src/r41/Offsets.c | 148 - src/tmx/Asn_J2735/src/r41/OverlayLaneList.c | 58 - src/tmx/Asn_J2735/src/r41/PathHistory.c | 596 - .../src/r41/PathHistoryPointType-01.c | 272 - .../src/r41/PathHistoryPointType-02.c | 148 - .../src/r41/PathHistoryPointType-03.c | 148 - .../src/r41/PathHistoryPointType-04.c | 148 - .../src/r41/PathHistoryPointType-05.c | 148 - .../src/r41/PathHistoryPointType-06.c | 148 - .../src/r41/PathHistoryPointType-07.c | 148 - .../src/r41/PathHistoryPointType-08.c | 148 - .../src/r41/PathHistoryPointType-09.c | 148 - .../src/r41/PathHistoryPointType-10.c | 148 - src/tmx/Asn_J2735/src/r41/PathPrediction.c | 130 - src/tmx/Asn_J2735/src/r41/Payload.c | 148 - src/tmx/Asn_J2735/src/r41/PayloadData.c | 148 - .../src/r41/PedestrianBicycleDetect.c | 125 - src/tmx/Asn_J2735/src/r41/PersonalAssistive.c | 153 - .../Asn_J2735/src/r41/PersonalClusterRadius.c | 147 - .../src/r41/PersonalCrossingInProgress.c | 125 - .../src/r41/PersonalCrossingRequest.c | 125 - .../src/r41/PersonalDeviceUsageState.c | 153 - .../src/r41/PersonalDeviceUserType.c | 155 - .../src/r41/PersonalMobilityMessage.c | 195 - .../r41/PersonalMobilityMessageStatusType.c | 155 - .../Asn_J2735/src/r41/PersonalSafetyMessage.c | 312 - src/tmx/Asn_J2735/src/r41/Position3D-2.c | 92 - src/tmx/Asn_J2735/src/r41/Position3D.c | 82 - .../Asn_J2735/src/r41/PositionConfidence.c | 175 - .../Asn_J2735/src/r41/PositionConfidenceSet.c | 148 - .../Asn_J2735/src/r41/PositionalAccuracy.c | 148 - .../Asn_J2735/src/r41/PreemptPriorityList.c | 58 - .../src/r41/PrioritizationResponse.c | 80 - .../src/r41/PrioritizationResponseList.c | 58 - .../src/r41/PrioritizationResponseStatus.c | 157 - src/tmx/Asn_J2735/src/r41/Priority.c | 148 - .../Asn_J2735/src/r41/ProbeDataManagement.c | 338 - .../Asn_J2735/src/r41/ProbeSegmentNumber.c | 147 - src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c | 204 - .../Asn_J2735/src/r41/PropelledInformation.c | 81 - .../r41/PublicSafetyAndRoadWorkerActivity.c | 153 - .../r41/PublicSafetyDirectingTrafficSubType.c | 153 - .../PublicSafetyEventResponderWorkerType.c | 161 - src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c | 194 - src/tmx/Asn_J2735/src/r41/RTCM-ID.c | 147 - src/tmx/Asn_J2735/src/r41/RTCM-Payload.c | 148 - src/tmx/Asn_J2735/src/r41/RTCM-Revision.c | 179 - src/tmx/Asn_J2735/src/r41/RTCMHeader.c | 148 - src/tmx/Asn_J2735/src/r41/RTCMPackage.c | 1302 -- src/tmx/Asn_J2735/src/r41/RTCMmsg.c | 82 - src/tmx/Asn_J2735/src/r41/RainSensor.c | 159 - src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c | 45 - .../src/r41/Reg-ConnectionManeuverAssist.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-Intersection.c | 45 - .../Asn_J2735/src/r41/Reg-IntersectionState.c | 45 - .../Asn_J2735/src/r41/Reg-LaneAttributes.c | 45 - .../Asn_J2735/src/r41/Reg-LaneDataAttribute.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-MapData.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-MovementState.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c | 45 - .../Asn_J2735/src/r41/Reg-NodeOffsetPoint.c | 45 - .../src/r41/Reg-PersonalMobilityMessage.c | 45 - .../src/r41/Reg-PersonalSafetyMessage.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-Position3D.c | 45 - .../src/r41/Reg-RestrictionUserType.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c | 45 - src/tmx/Asn_J2735/src/r41/Reg-SPAT.c | 45 - .../Asn_J2735/src/r41/Reg-SignalControlZone.c | 45 - src/tmx/Asn_J2735/src/r41/RegionList.c | 58 - src/tmx/Asn_J2735/src/r41/RegionOffsets.c | 172 - src/tmx/Asn_J2735/src/r41/RegionPointSet.c | 72 - .../Asn_J2735/src/r41/RegionalAdvisorySpeed.c | 125 - .../Asn_J2735/src/r41/RegionalComputedLane.c | 125 - .../r41/RegionalConnectionManeuverAssist.c | 125 - .../Asn_J2735/src/r41/RegionalGenericLane.c | 125 - .../Asn_J2735/src/r41/RegionalIntersection.c | 125 - .../src/r41/RegionalIntersectionState.c | 125 - .../src/r41/RegionalLaneAttributes.c | 125 - .../src/r41/RegionalLaneDataAttribute.c | 125 - src/tmx/Asn_J2735/src/r41/RegionalMapData.c | 125 - .../Asn_J2735/src/r41/RegionalMovementEvent.c | 125 - .../Asn_J2735/src/r41/RegionalMovementState.c | 125 - .../Asn_J2735/src/r41/RegionalNodeAttribute.c | 125 - .../src/r41/RegionalNodeAttributeList.c | 58 - .../src/r41/RegionalNodeOffsetPoint.c | 125 - .../src/r41/RegionalPersonalMobilityMessage.c | 125 - .../src/r41/RegionalPersonalSafetyMessage.c | 125 - .../Asn_J2735/src/r41/RegionalPosition3D.c | 125 - .../src/r41/RegionalRestrictionUserType.c | 125 - .../Asn_J2735/src/r41/RegionalRoadSegment.c | 125 - src/tmx/Asn_J2735/src/r41/RegionalSPAT.c | 125 - .../src/r41/RegionalSignalControlZone.c | 125 - .../Asn_J2735/src/r41/RegulatorySpeedLimit.c | 70 - src/tmx/Asn_J2735/src/r41/RequestID.c | 147 - src/tmx/Asn_J2735/src/r41/RequestedItem.c | 181 - .../src/r41/ResponderGroupAffected.c | 173 - src/tmx/Asn_J2735/src/r41/ResponseType.c | 151 - .../Asn_J2735/src/r41/RestrictionAppliesTo.c | 173 - .../src/r41/RestrictionClassAssignment.c | 70 - .../Asn_J2735/src/r41/RestrictionClassID.c | 147 - .../Asn_J2735/src/r41/RestrictionClassList.c | 58 - .../Asn_J2735/src/r41/RestrictionUserType.c | 71 - .../src/r41/RestrictionUserTypeList.c | 58 - src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c | 58 - src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c | 147 - src/tmx/Asn_J2735/src/r41/RoadSegment.c | 132 - src/tmx/Asn_J2735/src/r41/RoadSegmentID.c | 147 - src/tmx/Asn_J2735/src/r41/RoadSegmentList.c | 58 - .../src/r41/RoadSegmentReferenceID.c | 72 - src/tmx/Asn_J2735/src/r41/RoadSideAlert.c | 234 - src/tmx/Asn_J2735/src/r41/RoadSignID.c | 92 - src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c | 147 - src/tmx/Asn_J2735/src/r41/SPAT.c | 102 - src/tmx/Asn_J2735/src/r41/Sample.c | 130 - src/tmx/Asn_J2735/src/r41/Scale-B12.c | 147 - src/tmx/Asn_J2735/src/r41/SeatCount.c | 147 - src/tmx/Asn_J2735/src/r41/Second.c | 147 - src/tmx/Asn_J2735/src/r41/SecondsAngle.c | 147 - src/tmx/Asn_J2735/src/r41/SegmentAttribute.c | 221 - .../Asn_J2735/src/r41/SegmentAttributeList.c | 58 - src/tmx/Asn_J2735/src/r41/ShapePointSet.c | 92 - src/tmx/Asn_J2735/src/r41/SignPrority.c | 147 - .../Asn_J2735/src/r41/SignalControlState.c | 148 - src/tmx/Asn_J2735/src/r41/SignalControlZone.c | 465 - src/tmx/Asn_J2735/src/r41/SignalGroupID.c | 147 - .../Asn_J2735/src/r41/SignalHeadLocation.c | 70 - .../src/r41/SignalHeadLocationList.c | 58 - src/tmx/Asn_J2735/src/r41/SignalReqScheme.c | 148 - src/tmx/Asn_J2735/src/r41/SignalRequest.c | 122 - src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c | 142 - src/tmx/Asn_J2735/src/r41/SignalState.c | 148 - .../Asn_J2735/src/r41/SignalStatusMessage.c | 306 - src/tmx/Asn_J2735/src/r41/SirenInUse.c | 151 - src/tmx/Asn_J2735/src/r41/Snapshot.c | 82 - src/tmx/Asn_J2735/src/r41/SnapshotDistance.c | 210 - src/tmx/Asn_J2735/src/r41/SnapshotTime.c | 210 - src/tmx/Asn_J2735/src/r41/Speed.c | 147 - src/tmx/Asn_J2735/src/r41/SpeedAdvice.c | 147 - src/tmx/Asn_J2735/src/r41/SpeedConfidence.c | 159 - src/tmx/Asn_J2735/src/r41/SpeedLimit.c | 218 - src/tmx/Asn_J2735/src/r41/SpeedLimitList.c | 58 - src/tmx/Asn_J2735/src/r41/SpeedLimitType.c | 171 - .../SpeedandHeadingandThrottleConfidence.c | 148 - .../src/r41/StabilityControlStatus.c | 149 - src/tmx/Asn_J2735/src/r41/StationID.c | 143 - .../src/r41/SteeringAxleLubePressure.c | 147 - .../src/r41/SteeringAxleTemperature.c | 147 - .../Asn_J2735/src/r41/SteeringWheelAngle.c | 148 - .../src/r41/SteeringWheelAngleConfidence.c | 151 - .../src/r41/SteeringWheelAngleRateOfChange.c | 147 - src/tmx/Asn_J2735/src/r41/SummerTime.c | 147 - src/tmx/Asn_J2735/src/r41/SunSensor.c | 147 - src/tmx/Asn_J2735/src/r41/TemporaryID.c | 148 - src/tmx/Asn_J2735/src/r41/TenthSecond.c | 147 - src/tmx/Asn_J2735/src/r41/TermDistance.c | 147 - src/tmx/Asn_J2735/src/r41/TermTime.c | 147 - .../Asn_J2735/src/r41/ThrottleConfidence.c | 151 - src/tmx/Asn_J2735/src/r41/ThrottlePosition.c | 147 - src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c | 112 - src/tmx/Asn_J2735/src/r41/TimeConfidence.c | 223 - .../src/r41/TimeIntervalConfidence.c | 147 - src/tmx/Asn_J2735/src/r41/TimeMark.c | 147 - src/tmx/Asn_J2735/src/r41/TimeRemaining.c | 147 - src/tmx/Asn_J2735/src/r41/TireLeakageRate.c | 147 - src/tmx/Asn_J2735/src/r41/TireLocation.c | 147 - src/tmx/Asn_J2735/src/r41/TirePressure.c | 147 - .../src/r41/TirePressureThresholdDetection.c | 161 - src/tmx/Asn_J2735/src/r41/TireTemp.c | 147 - .../Asn_J2735/src/r41/TractionControlState.c | 151 - src/tmx/Asn_J2735/src/r41/TrailerWeight.c | 147 - src/tmx/Asn_J2735/src/r41/TransitStatus.c | 153 - .../Asn_J2735/src/r41/TransmissionAndSpeed.c | 148 - src/tmx/Asn_J2735/src/r41/TransmissionState.c | 161 - src/tmx/Asn_J2735/src/r41/TravelerInfoType.c | 153 - .../Asn_J2735/src/r41/TravelerInformation.c | 596 - src/tmx/Asn_J2735/src/r41/TxTime.c | 147 - src/tmx/Asn_J2735/src/r41/UPER-Blob.c | 148 - src/tmx/Asn_J2735/src/r41/UPERframe.c | 112 - src/tmx/Asn_J2735/src/r41/URL-Base.c | 162 - src/tmx/Asn_J2735/src/r41/URL-Link.c | 162 - src/tmx/Asn_J2735/src/r41/URL-Short.c | 162 - src/tmx/Asn_J2735/src/r41/UUIDType.c | 162 - src/tmx/Asn_J2735/src/r41/UniqueMSGID.c | 148 - .../Asn_J2735/src/r41/UserSizeAndBehaviour.c | 153 - src/tmx/Asn_J2735/src/r41/VINstring.c | 148 - src/tmx/Asn_J2735/src/r41/ValidRegion.c | 155 - .../src/r41/VehicleDescriptionType.c | 162 - .../Asn_J2735/src/r41/VehicleGroupAffected.c | 215 - src/tmx/Asn_J2735/src/r41/VehicleHeight.c | 147 - src/tmx/Asn_J2735/src/r41/VehicleIdent.c | 230 - src/tmx/Asn_J2735/src/r41/VehicleLength.c | 147 - src/tmx/Asn_J2735/src/r41/VehicleMass.c | 147 - .../Asn_J2735/src/r41/VehicleRequestStatus.c | 148 - .../src/r41/VehicleSafetyExtension.c | 92 - src/tmx/Asn_J2735/src/r41/VehicleSize.c | 70 - src/tmx/Asn_J2735/src/r41/VehicleStatus.c | 798 -- .../src/r41/VehicleStatusDeviceTypeTag.c | 203 - .../Asn_J2735/src/r41/VehicleStatusRequest.c | 192 - .../Asn_J2735/src/r41/VehicleToLanePosition.c | 70 - .../src/r41/VehicleToLanePositionList.c | 58 - src/tmx/Asn_J2735/src/r41/VehicleType.c | 177 - src/tmx/Asn_J2735/src/r41/VehicleWidth.c | 147 - src/tmx/Asn_J2735/src/r41/Velocity.c | 147 - .../Asn_J2735/src/r41/VerticalAcceleration.c | 147 - .../src/r41/VerticalAccelerationThreshold.c | 125 - src/tmx/Asn_J2735/src/r41/WaitOnStopline.c | 125 - .../Asn_J2735/src/r41/WheelEndElectFault.c | 125 - src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c | 151 - src/tmx/Asn_J2735/src/r41/WiperRate.c | 147 - src/tmx/Asn_J2735/src/r41/WiperStatus.c | 92 - src/tmx/Asn_J2735/src/r41/WiperStatusFront.c | 159 - src/tmx/Asn_J2735/src/r41/WiperStatusRear.c | 159 - src/tmx/Asn_J2735/src/r41/WorkZone.c | 218 - src/tmx/Asn_J2735/src/r41/YawRate.c | 147 - src/tmx/Asn_J2735/src/r41/YawRateConfidence.c | 159 - src/tmx/Asn_J2735/src/r41/Year.c | 147 - src/tmx/Asn_J2735/src/r41/ZoneLength.c | 147 - src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c | 41 - src/tmx/Asn_J2735/src/r41/asn_SET_OF.c | 88 - src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c | 312 - src/tmx/Asn_J2735/src/r41/ber_decoder.c | 283 - src/tmx/Asn_J2735/src/r41/ber_tlv_length.c | 178 - src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c | 144 - src/tmx/Asn_J2735/src/r41/constr_CHOICE.c | 1113 -- src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c | 1422 -- .../Asn_J2735/src/r41/constr_SEQUENCE_OF.c | 208 - src/tmx/Asn_J2735/src/r41/constr_SET_OF.c | 953 -- src/tmx/Asn_J2735/src/r41/constr_TYPE.c | 77 - src/tmx/Asn_J2735/src/r41/constraints.c | 93 - src/tmx/Asn_J2735/src/r41/der_encoder.c | 199 - src/tmx/Asn_J2735/src/r41/per_decoder.c | 93 - src/tmx/Asn_J2735/src/r41/per_encoder.c | 151 - src/tmx/Asn_J2735/src/r41/per_opentype.c | 378 - src/tmx/Asn_J2735/src/r41/per_support.c | 483 - src/tmx/Asn_J2735/src/r41/xer_decoder.c | 365 - src/tmx/Asn_J2735/src/r41/xer_encoder.c | 67 - src/tmx/Asn_J2735/src/r41/xer_support.c | 233 - src/tmx/Asn_J2735/src/r63/ANY.c | 450 - .../src/r63/AccelSteerYawRateConfidence.c | 70 - src/tmx/Asn_J2735/src/r63/Acceleration.c | 64 - .../src/r63/AccelerationConfidence.c | 68 - .../Asn_J2735/src/r63/AccelerationSet4Way.c | 80 - src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c | 64 - src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c | 68 - src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c | 64 - src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c | 64 - src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c | 140 - src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c | 181 - src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c | 52 - src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c | 62 - src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c | 70 - src/tmx/Asn_J2735/src/r63/Altitude.c | 60 - .../Asn_J2735/src/r63/AltitudeConfidence.c | 84 - src/tmx/Asn_J2735/src/r63/AltitudeValue.c | 64 - .../Asn_J2735/src/r63/AmbientAirPressure.c | 64 - .../Asn_J2735/src/r63/AmbientAirTemperature.c | 64 - src/tmx/Asn_J2735/src/r63/AngularVelocity.c | 60 - .../src/r63/AngularVelocityConfidence.c | 62 - .../Asn_J2735/src/r63/AnimalPropelledType.c | 62 - src/tmx/Asn_J2735/src/r63/AnimalType.c | 62 - src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c | 70 - .../Asn_J2735/src/r63/AntiLockBrakeStatus.c | 60 - src/tmx/Asn_J2735/src/r63/ApproachID.c | 64 - src/tmx/Asn_J2735/src/r63/ApproachOrLane.c | 65 - src/tmx/Asn_J2735/src/r63/Attachment.c | 68 - src/tmx/Asn_J2735/src/r63/AttachmentRadius.c | 64 - src/tmx/Asn_J2735/src/r63/Attitude.c | 70 - .../Asn_J2735/src/r63/AttitudeConfidence.c | 70 - .../Asn_J2735/src/r63/AuxiliaryBrakeStatus.c | 60 - src/tmx/Asn_J2735/src/r63/AxleLocation.c | 64 - src/tmx/Asn_J2735/src/r63/AxleWeight.c | 64 - src/tmx/Asn_J2735/src/r63/AxleWeightList.c | 52 - src/tmx/Asn_J2735/src/r63/AxleWeightSet.c | 62 - src/tmx/Asn_J2735/src/r63/BIT_STRING.c | 656 - src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c | 174 - src/tmx/Asn_J2735/src/r63/BOOLEAN.c | 492 - src/tmx/Asn_J2735/src/r63/BSMcoreData.c | 180 - .../src/r63/BasicSafetyMessage-addGrpCarma.c | 171 - .../Asn_J2735/src/r63/BasicSafetyMessage.c | 310 - src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c | 64 - src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c | 100 - .../Asn_J2735/src/r63/BrakeAppliedPressure.c | 84 - .../Asn_J2735/src/r63/BrakeAppliedStatus.c | 70 - src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c | 58 - src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c | 100 - src/tmx/Asn_J2735/src/r63/BumperHeight.c | 64 - src/tmx/Asn_J2735/src/r63/BumperHeights.c | 60 - src/tmx/Asn_J2735/src/r63/CargoWeight.c | 64 - src/tmx/Asn_J2735/src/r63/Circle.c | 70 - .../src/r63/ClassificationConfidence.c | 64 - src/tmx/Asn_J2735/src/r63/CoarseHeading.c | 64 - src/tmx/Asn_J2735/src/r63/CodeWord.c | 65 - .../Asn_J2735/src/r63/CoefficientOfFriction.c | 64 - .../Asn_J2735/src/r63/CommonSafetyRequest.c | 171 - src/tmx/Asn_J2735/src/r63/ComputedLane.c | 305 - src/tmx/Asn_J2735/src/r63/Confidence.c | 64 - src/tmx/Asn_J2735/src/r63/ConfidenceSet.c | 112 - src/tmx/Asn_J2735/src/r63/ConnectingLane.c | 62 - src/tmx/Asn_J2735/src/r63/Connection.c | 92 - .../r63/ConnectionManeuverAssist-addGrpC.c | 62 - .../src/r63/ConnectionManeuverAssist.c | 181 - src/tmx/Asn_J2735/src/r63/ConnectsToList.c | 52 - src/tmx/Asn_J2735/src/r63/Count.c | 64 - src/tmx/Asn_J2735/src/r63/DDate.c | 70 - src/tmx/Asn_J2735/src/r63/DDateTime.c | 112 - src/tmx/Asn_J2735/src/r63/DDay.c | 64 - src/tmx/Asn_J2735/src/r63/DFullTime.c | 90 - src/tmx/Asn_J2735/src/r63/DHour.c | 64 - src/tmx/Asn_J2735/src/r63/DMinute.c | 64 - src/tmx/Asn_J2735/src/r63/DMonth.c | 64 - src/tmx/Asn_J2735/src/r63/DMonthDay.c | 60 - src/tmx/Asn_J2735/src/r63/DOffset.c | 64 - src/tmx/Asn_J2735/src/r63/DSRC_Angle.c | 64 - src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c | 31 - src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c | 64 - src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c | 64 - src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c | 64 - src/tmx/Asn_J2735/src/r63/DSRCmsgID.c | 64 - src/tmx/Asn_J2735/src/r63/DSecond.c | 64 - src/tmx/Asn_J2735/src/r63/DTime.c | 82 - src/tmx/Asn_J2735/src/r63/DYear.c | 64 - src/tmx/Asn_J2735/src/r63/DYearMonth.c | 60 - src/tmx/Asn_J2735/src/r63/DailySchedule.c | 126 - src/tmx/Asn_J2735/src/r63/DataParameters.c | 274 - src/tmx/Asn_J2735/src/r63/Day.c | 64 - src/tmx/Asn_J2735/src/r63/DayOfWeek.c | 68 - src/tmx/Asn_J2735/src/r63/DaySchedule.c | 126 - src/tmx/Asn_J2735/src/r63/DegreesLat.c | 64 - src/tmx/Asn_J2735/src/r63/DegreesLong.c | 64 - src/tmx/Asn_J2735/src/r63/DeltaAngle.c | 64 - src/tmx/Asn_J2735/src/r63/DeltaTime.c | 64 - src/tmx/Asn_J2735/src/r63/DescriptiveName.c | 79 - .../src/r63/DetectedObjectCommonData.c | 222 - .../Asn_J2735/src/r63/DetectedObjectData.c | 62 - .../Asn_J2735/src/r63/DetectedObjectList.c | 52 - .../src/r63/DetectedObjectOptionalData.c | 75 - .../Asn_J2735/src/r63/DetectedObstacleData.c | 60 - src/tmx/Asn_J2735/src/r63/DetectedVRUData.c | 82 - .../Asn_J2735/src/r63/DetectedVehicleData.c | 142 - src/tmx/Asn_J2735/src/r63/DirectionOfUse.c | 60 - src/tmx/Asn_J2735/src/r63/DisabledVehicle.c | 95 - src/tmx/Asn_J2735/src/r63/DistanceUnits.c | 68 - .../src/r63/DriveAxleLiftAirPressure.c | 64 - src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c | 64 - .../Asn_J2735/src/r63/DriveAxleLubePressure.c | 64 - .../Asn_J2735/src/r63/DriveAxleTemperature.c | 64 - .../Asn_J2735/src/r63/DrivenLineOffsetLg.c | 64 - .../Asn_J2735/src/r63/DrivenLineOffsetSm.c | 64 - src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c | 64 - src/tmx/Asn_J2735/src/r63/Duration.c | 64 - src/tmx/Asn_J2735/src/r63/EXTERNAL.c | 152 - .../Asn_J2735/src/r63/ElevationConfidence.c | 84 - src/tmx/Asn_J2735/src/r63/EmergencyDetails.c | 102 - .../Asn_J2735/src/r63/EmergencyVehicleAlert.c | 231 - src/tmx/Asn_J2735/src/r63/EmissionType.c | 64 - src/tmx/Asn_J2735/src/r63/EnabledLaneList.c | 52 - src/tmx/Asn_J2735/src/r63/EpochMins.c | 70 - src/tmx/Asn_J2735/src/r63/EquipmentType.c | 62 - src/tmx/Asn_J2735/src/r63/EssMobileFriction.c | 64 - src/tmx/Asn_J2735/src/r63/EssPrecipRate.c | 64 - .../Asn_J2735/src/r63/EssPrecipSituation.c | 82 - src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c | 58 - src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c | 64 - src/tmx/Asn_J2735/src/r63/EventDescription.c | 260 - src/tmx/Asn_J2735/src/r63/ExitService.c | 151 - src/tmx/Asn_J2735/src/r63/Extent.c | 84 - src/tmx/Asn_J2735/src/r63/ExteriorLights.c | 70 - src/tmx/Asn_J2735/src/r63/FuelType.c | 64 - .../Asn_J2735/src/r63/FullPositionVector.c | 142 - src/tmx/Asn_J2735/src/r63/FurtherInfoID.c | 65 - src/tmx/Asn_J2735/src/r63/GNSSstatus.c | 70 - src/tmx/Asn_J2735/src/r63/GenericLane.c | 221 - src/tmx/Asn_J2735/src/r63/GenericLocations.c | 246 - src/tmx/Asn_J2735/src/r63/GenericSignage.c | 151 - src/tmx/Asn_J2735/src/r63/GeographicalPath.c | 278 - .../Asn_J2735/src/r63/GeometricProjection.c | 171 - src/tmx/Asn_J2735/src/r63/GraphicString.c | 58 - src/tmx/Asn_J2735/src/r63/GrossDistance.c | 64 - src/tmx/Asn_J2735/src/r63/GrossSpeed.c | 64 - src/tmx/Asn_J2735/src/r63/Header.c | 82 - src/tmx/Asn_J2735/src/r63/Heading.c | 64 - src/tmx/Asn_J2735/src/r63/HeadingConfidence.c | 68 - src/tmx/Asn_J2735/src/r63/HeadingSlice.c | 70 - src/tmx/Asn_J2735/src/r63/Holiday.c | 56 - src/tmx/Asn_J2735/src/r63/Hour.c | 64 - .../Asn_J2735/src/r63/HumanPropelledType.c | 66 - src/tmx/Asn_J2735/src/r63/IA5String.c | 97 - src/tmx/Asn_J2735/src/r63/INTEGER.c | 1752 --- src/tmx/Asn_J2735/src/r63/INTEGER_oer.c | 179 - src/tmx/Asn_J2735/src/r63/ITIScodes.c | 64 - src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c | 151 - src/tmx/Asn_J2735/src/r63/ITIStext.c | 79 - src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c | 79 - src/tmx/Asn_J2735/src/r63/Id128b.c | 65 - src/tmx/Asn_J2735/src/r63/Id64b.c | 65 - .../src/r63/IncidentResponseEquipment.c | 198 - .../src/r63/IntersectionAccessPoint.c | 75 - .../Asn_J2735/src/r63/IntersectionCollision.c | 221 - .../Asn_J2735/src/r63/IntersectionGeometry.c | 211 - .../src/r63/IntersectionGeometryList.c | 52 - src/tmx/Asn_J2735/src/r63/IntersectionID.c | 64 - .../src/r63/IntersectionReferenceID.c | 62 - .../src/r63/IntersectionState-addGrpC.c | 52 - src/tmx/Asn_J2735/src/r63/IntersectionState.c | 221 - .../Asn_J2735/src/r63/IntersectionStateList.c | 52 - .../src/r63/IntersectionStatusObject.c | 70 - src/tmx/Asn_J2735/src/r63/IsDolly.c | 31 - .../Asn_J2735/src/r63/Iso3833VehicleType.c | 64 - src/tmx/Asn_J2735/src/r63/J1939data.c | 142 - .../src/r63/LaneAttributes-Barrier.c | 70 - .../Asn_J2735/src/r63/LaneAttributes-Bike.c | 70 - .../src/r63/LaneAttributes-Crosswalk.c | 70 - .../src/r63/LaneAttributes-Parking.c | 70 - .../src/r63/LaneAttributes-Sidewalk.c | 70 - .../src/r63/LaneAttributes-Striping.c | 70 - .../src/r63/LaneAttributes-TrackedVehicle.c | 70 - .../src/r63/LaneAttributes-Vehicle.c | 70 - src/tmx/Asn_J2735/src/r63/LaneAttributes.c | 82 - src/tmx/Asn_J2735/src/r63/LaneConnectionID.c | 64 - .../src/r63/LaneDataAttribute-addGrpB.c | 35 - src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c | 194 - .../Asn_J2735/src/r63/LaneDataAttributeList.c | 52 - src/tmx/Asn_J2735/src/r63/LaneDirection.c | 70 - src/tmx/Asn_J2735/src/r63/LaneID.c | 64 - src/tmx/Asn_J2735/src/r63/LaneList.c | 52 - src/tmx/Asn_J2735/src/r63/LaneSharing.c | 70 - .../Asn_J2735/src/r63/LaneTypeAttributes.c | 125 - src/tmx/Asn_J2735/src/r63/LaneWidth.c | 64 - src/tmx/Asn_J2735/src/r63/Latitude.c | 64 - src/tmx/Asn_J2735/src/r63/LatitudeDMS.c | 64 - src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c | 70 - src/tmx/Asn_J2735/src/r63/LayerID.c | 64 - src/tmx/Asn_J2735/src/r63/LayerType.c | 70 - src/tmx/Asn_J2735/src/r63/LightbarInUse.c | 68 - src/tmx/Asn_J2735/src/r63/Location-quality.c | 68 - src/tmx/Asn_J2735/src/r63/Location-tech.c | 74 - src/tmx/Asn_J2735/src/r63/Longitude.c | 64 - src/tmx/Asn_J2735/src/r63/LongitudeDMS.c | 64 - src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c | 70 - src/tmx/Asn_J2735/src/r63/MUTCDCode.c | 68 - .../Asn_J2735/src/r63/ManeuverAssistList.c | 52 - src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c | 52 - src/tmx/Asn_J2735/src/r63/MapData.c | 211 - src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c | 64 - .../Asn_J2735/src/r63/MeasurementTimeOffset.c | 64 - .../Asn_J2735/src/r63/MergeDivergeNodeAngle.c | 64 - src/tmx/Asn_J2735/src/r63/MessageBLOB.c | 65 - src/tmx/Asn_J2735/src/r63/MessageFrame.c | 597 - src/tmx/Asn_J2735/src/r63/MinTimetoChange.c | 64 - src/tmx/Asn_J2735/src/r63/Minute.c | 64 - src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c | 64 - src/tmx/Asn_J2735/src/r63/MinutesAngle.c | 64 - src/tmx/Asn_J2735/src/r63/MinutesDuration.c | 64 - src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c | 79 - .../src/r63/MobilityECEFCoordinate.c | 64 - .../Asn_J2735/src/r63/MobilityECEFOffset.c | 70 - .../src/r63/MobilityECEFOffsetCoordinate.c | 64 - src/tmx/Asn_J2735/src/r63/MobilityGUID.c | 79 - src/tmx/Asn_J2735/src/r63/MobilityHeader.c | 90 - src/tmx/Asn_J2735/src/r63/MobilityLocation.c | 80 - .../src/r63/MobilityLocationOffsets.c | 52 - src/tmx/Asn_J2735/src/r63/MobilityOperation.c | 60 - .../Asn_J2735/src/r63/MobilityParameters.c | 79 - src/tmx/Asn_J2735/src/r63/MobilityPath.c | 60 - src/tmx/Asn_J2735/src/r63/MobilityPlanType.c | 64 - src/tmx/Asn_J2735/src/r63/MobilityRequest.c | 122 - src/tmx/Asn_J2735/src/r63/MobilityResponse.c | 60 - .../Asn_J2735/src/r63/MobilityResponseFlag.c | 31 - src/tmx/Asn_J2735/src/r63/MobilityStaticID.c | 79 - src/tmx/Asn_J2735/src/r63/MobilityStrategy.c | 79 - src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c | 79 - src/tmx/Asn_J2735/src/r63/MobilityUrgency.c | 64 - src/tmx/Asn_J2735/src/r63/Month.c | 64 - .../src/r63/MotorizedPropelledType.c | 66 - .../Asn_J2735/src/r63/MovementEvent-addGrpB.c | 102 - src/tmx/Asn_J2735/src/r63/MovementEvent.c | 161 - src/tmx/Asn_J2735/src/r63/MovementEventList.c | 52 - src/tmx/Asn_J2735/src/r63/MovementList.c | 52 - .../Asn_J2735/src/r63/MovementPhaseState.c | 72 - src/tmx/Asn_J2735/src/r63/MovementState.c | 171 - src/tmx/Asn_J2735/src/r63/MsgCRC.c | 65 - .../Asn_J2735/src/r63/MultiVehicleResponse.c | 60 - src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c | 64 - src/tmx/Asn_J2735/src/r63/NMEA-Payload.c | 65 - src/tmx/Asn_J2735/src/r63/NMEA-Revision.c | 68 - src/tmx/Asn_J2735/src/r63/NMEAcorrections.c | 181 - src/tmx/Asn_J2735/src/r63/NULL.c | 299 - src/tmx/Asn_J2735/src/r63/NativeEnumerated.c | 375 - .../Asn_J2735/src/r63/NativeEnumerated_oer.c | 149 - src/tmx/Asn_J2735/src/r63/NativeInteger.c | 550 - src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c | 99 - src/tmx/Asn_J2735/src/r63/Node-LL-24B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LL-28B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LL-32B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LL-36B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LL-44B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LL-48B.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-20b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-22b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-24b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-26b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-28b.c | 60 - src/tmx/Asn_J2735/src/r63/Node-XY-32b.c | 60 - src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c | 78 - .../Asn_J2735/src/r63/NodeAttributeLLList.c | 52 - .../Asn_J2735/src/r63/NodeAttributeSetLL.c | 191 - .../Asn_J2735/src/r63/NodeAttributeSetXY.c | 191 - src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c | 78 - .../Asn_J2735/src/r63/NodeAttributeXYList.c | 52 - src/tmx/Asn_J2735/src/r63/NodeLL.c | 62 - src/tmx/Asn_J2735/src/r63/NodeListLL.c | 55 - src/tmx/Asn_J2735/src/r63/NodeListXY.c | 65 - src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c | 125 - .../src/r63/NodeOffsetPointXY-addGrpB.c | 65 - src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c | 125 - src/tmx/Asn_J2735/src/r63/NodeSetLL.c | 52 - src/tmx/Asn_J2735/src/r63/NodeSetXY.c | 52 - src/tmx/Asn_J2735/src/r63/NodeXY.c | 62 - .../src/r63/NumberOfParticipantsInCluster.c | 62 - src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c | 656 - src/tmx/Asn_J2735/src/r63/OCTET_STRING.c | 2419 ---- src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c | 171 - src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c | 509 - src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c | 92 - src/tmx/Asn_J2735/src/r63/ObjectCount.c | 64 - src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c | 58 - src/tmx/Asn_J2735/src/r63/ObjectDistance.c | 64 - src/tmx/Asn_J2735/src/r63/ObjectID.c | 64 - src/tmx/Asn_J2735/src/r63/ObjectType.c | 62 - src/tmx/Asn_J2735/src/r63/ObstacleDetection.c | 135 - src/tmx/Asn_J2735/src/r63/ObstacleDirection.c | 64 - src/tmx/Asn_J2735/src/r63/ObstacleDistance.c | 64 - src/tmx/Asn_J2735/src/r63/ObstacleSize.c | 72 - .../src/r63/ObstacleSizeConfidence.c | 72 - src/tmx/Asn_J2735/src/r63/Offset-B09.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B10.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B11.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B12.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B13.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B14.c | 64 - src/tmx/Asn_J2735/src/r63/Offset-B16.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c | 64 - src/tmx/Asn_J2735/src/r63/OffsetPoint.c | 126 - src/tmx/Asn_J2735/src/r63/OffsetSystem.c | 119 - src/tmx/Asn_J2735/src/r63/OverlayLaneList.c | 52 - src/tmx/Asn_J2735/src/r63/PartII-Id.c | 64 - src/tmx/Asn_J2735/src/r63/PartIIcontent.c | 284 - src/tmx/Asn_J2735/src/r63/PathHistory.c | 72 - src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c | 112 - .../Asn_J2735/src/r63/PathHistoryPointList.c | 52 - src/tmx/Asn_J2735/src/r63/PathNode.c | 214 - src/tmx/Asn_J2735/src/r63/PathPrediction.c | 60 - src/tmx/Asn_J2735/src/r63/PayloadData.c | 65 - .../src/r63/PedestrianBicycleDetect.c | 31 - src/tmx/Asn_J2735/src/r63/PersonalAssistive.c | 70 - .../Asn_J2735/src/r63/PersonalClusterRadius.c | 64 - .../src/r63/PersonalCrossingInProgress.c | 31 - .../src/r63/PersonalCrossingRequest.c | 31 - .../src/r63/PersonalDeviceUsageState.c | 70 - .../src/r63/PersonalDeviceUserType.c | 64 - .../Asn_J2735/src/r63/PersonalSafetyMessage.c | 381 - src/tmx/Asn_J2735/src/r63/PitchDetected.c | 64 - src/tmx/Asn_J2735/src/r63/PitchRate.c | 64 - .../Asn_J2735/src/r63/PitchRateConfidence.c | 68 - .../Asn_J2735/src/r63/PivotPointDescription.c | 70 - src/tmx/Asn_J2735/src/r63/PivotingAllowed.c | 31 - src/tmx/Asn_J2735/src/r63/Point.c | 82 - .../Asn_J2735/src/r63/Position3D-addGrpB.c | 70 - .../Asn_J2735/src/r63/Position3D-addGrpC.c | 50 - .../src/r63/Position3D-addGrpCarma.c | 104 - src/tmx/Asn_J2735/src/r63/Position3D.c | 161 - .../Asn_J2735/src/r63/PositionConfidence.c | 84 - .../Asn_J2735/src/r63/PositionConfidenceSet.c | 60 - src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c | 72 - .../Asn_J2735/src/r63/PositionalAccuracy.c | 70 - .../Asn_J2735/src/r63/PreemptPriorityList.c | 52 - .../src/r63/PrioritizationResponse.c | 70 - .../src/r63/PrioritizationResponseList.c | 52 - .../src/r63/PrioritizationResponseStatus.c | 70 - src/tmx/Asn_J2735/src/r63/Priority.c | 65 - .../Asn_J2735/src/r63/PriorityRequestType.c | 62 - .../Asn_J2735/src/r63/PrivilegedEventFlags.c | 70 - src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c | 60 - .../Asn_J2735/src/r63/ProbeDataManagement.c | 315 - .../Asn_J2735/src/r63/ProbeSegmentNumber.c | 64 - src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c | 270 - .../Asn_J2735/src/r63/PropelledInformation.c | 75 - .../r63/PublicSafetyAndRoadWorkerActivity.c | 70 - .../r63/PublicSafetyDirectingTrafficSubType.c | 70 - .../PublicSafetyEventResponderWorkerType.c | 70 - src/tmx/Asn_J2735/src/r63/RTCM-Revision.c | 62 - src/tmx/Asn_J2735/src/r63/RTCMPackage.c | 62 - src/tmx/Asn_J2735/src/r63/RTCMcorrections.c | 191 - src/tmx/Asn_J2735/src/r63/RTCMheader.c | 60 - src/tmx/Asn_J2735/src/r63/RTCMmessage.c | 65 - src/tmx/Asn_J2735/src/r63/RTCMmessageList.c | 52 - src/tmx/Asn_J2735/src/r63/Radius-B12.c | 64 - src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c | 64 - src/tmx/Asn_J2735/src/r63/RainSensor.c | 68 - src/tmx/Asn_J2735/src/r63/RegionId.c | 64 - src/tmx/Asn_J2735/src/r63/RegionList.c | 52 - src/tmx/Asn_J2735/src/r63/RegionOffsets.c | 72 - src/tmx/Asn_J2735/src/r63/RegionPointSet.c | 72 - src/tmx/Asn_J2735/src/r63/RegionalExtension.c | 242 - .../Asn_J2735/src/r63/RegulatorySpeedLimit.c | 60 - src/tmx/Asn_J2735/src/r63/RepeatParams.c | 169 - src/tmx/Asn_J2735/src/r63/RequestID.c | 64 - .../src/r63/RequestImportanceLevel.c | 84 - src/tmx/Asn_J2735/src/r63/RequestSubRole.c | 84 - src/tmx/Asn_J2735/src/r63/RequestedItem.c | 88 - src/tmx/Asn_J2735/src/r63/RequestedItemList.c | 52 - .../Asn_J2735/src/r63/RequestorDescription.c | 211 - .../src/r63/RequestorPositionVector.c | 72 - src/tmx/Asn_J2735/src/r63/RequestorType.c | 102 - .../src/r63/ResponderGroupAffected.c | 82 - src/tmx/Asn_J2735/src/r63/ResponseType.c | 68 - .../Asn_J2735/src/r63/RestrictionAppliesTo.c | 82 - .../src/r63/RestrictionClassAssignment.c | 60 - .../Asn_J2735/src/r63/RestrictionClassID.c | 64 - .../Asn_J2735/src/r63/RestrictionClassList.c | 52 - .../src/r63/RestrictionUserType-addGrpC.c | 52 - .../Asn_J2735/src/r63/RestrictionUserType.c | 144 - .../src/r63/RestrictionUserTypeList.c | 52 - src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c | 52 - src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c | 64 - src/tmx/Asn_J2735/src/r63/RoadSegment.c | 201 - src/tmx/Asn_J2735/src/r63/RoadSegmentID.c | 64 - src/tmx/Asn_J2735/src/r63/RoadSegmentList.c | 52 - .../src/r63/RoadSegmentReferenceID.c | 62 - src/tmx/Asn_J2735/src/r63/RoadSideAlert.c | 300 - src/tmx/Asn_J2735/src/r63/RoadSignID.c | 82 - src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c | 64 - src/tmx/Asn_J2735/src/r63/RollDetected.c | 64 - src/tmx/Asn_J2735/src/r63/RollRate.c | 64 - .../Asn_J2735/src/r63/RollRateConfidence.c | 68 - src/tmx/Asn_J2735/src/r63/SPAT.c | 161 - src/tmx/Asn_J2735/src/r63/SSPindex.c | 64 - src/tmx/Asn_J2735/src/r63/Sample.c | 126 - src/tmx/Asn_J2735/src/r63/Scale-B12.c | 64 - src/tmx/Asn_J2735/src/r63/Schedule.c | 328 - src/tmx/Asn_J2735/src/r63/Second.c | 64 - src/tmx/Asn_J2735/src/r63/SecondOfTime.c | 64 - src/tmx/Asn_J2735/src/r63/SecondsAngle.c | 64 - .../Asn_J2735/src/r63/SegmentAttributeLL.c | 130 - .../src/r63/SegmentAttributeLLList.c | 52 - .../Asn_J2735/src/r63/SegmentAttributeXY.c | 130 - .../src/r63/SegmentAttributeXYList.c | 52 - .../Asn_J2735/src/r63/SemiMajorAxisAccuracy.c | 64 - .../src/r63/SemiMajorAxisOrientation.c | 64 - .../Asn_J2735/src/r63/SemiMinorAxisAccuracy.c | 64 - .../src/r63/SensorDataSharingMessage.c | 122 - src/tmx/Asn_J2735/src/r63/ShapePointSet.c | 82 - src/tmx/Asn_J2735/src/r63/SignPrority.c | 64 - src/tmx/Asn_J2735/src/r63/SignalControlZone.c | 50 - src/tmx/Asn_J2735/src/r63/SignalGroupID.c | 64 - .../Asn_J2735/src/r63/SignalHeadLocation.c | 60 - .../src/r63/SignalHeadLocationList.c | 52 - src/tmx/Asn_J2735/src/r63/SignalReqScheme.c | 65 - src/tmx/Asn_J2735/src/r63/SignalRequest.c | 181 - src/tmx/Asn_J2735/src/r63/SignalRequestList.c | 52 - .../Asn_J2735/src/r63/SignalRequestMessage.c | 181 - .../Asn_J2735/src/r63/SignalRequestPackage.c | 171 - .../Asn_J2735/src/r63/SignalRequesterInfo.c | 92 - src/tmx/Asn_J2735/src/r63/SignalStatus.c | 161 - src/tmx/Asn_J2735/src/r63/SignalStatusList.c | 52 - .../Asn_J2735/src/r63/SignalStatusMessage.c | 171 - .../Asn_J2735/src/r63/SignalStatusPackage.c | 201 - .../src/r63/SignalStatusPackageList.c | 52 - src/tmx/Asn_J2735/src/r63/SirenInUse.c | 60 - src/tmx/Asn_J2735/src/r63/SizeValue.c | 64 - .../Asn_J2735/src/r63/SizeValueConfidence.c | 80 - src/tmx/Asn_J2735/src/r63/Snapshot.c | 72 - src/tmx/Asn_J2735/src/r63/SnapshotDistance.c | 80 - src/tmx/Asn_J2735/src/r63/SnapshotTime.c | 80 - .../src/r63/SpecialVehicleExtensions.c | 72 - src/tmx/Asn_J2735/src/r63/Speed.c | 64 - src/tmx/Asn_J2735/src/r63/SpeedAdvice.c | 64 - src/tmx/Asn_J2735/src/r63/SpeedConfidence.c | 68 - src/tmx/Asn_J2735/src/r63/SpeedLimit.c | 151 - src/tmx/Asn_J2735/src/r63/SpeedLimitList.c | 52 - src/tmx/Asn_J2735/src/r63/SpeedLimitType.c | 80 - src/tmx/Asn_J2735/src/r63/SpeedProfile.c | 50 - .../src/r63/SpeedProfileMeasurement.c | 64 - .../src/r63/SpeedProfileMeasurementList.c | 52 - .../SpeedandHeadingandThrottleConfidence.c | 70 - .../src/r63/StabilityControlStatus.c | 60 - src/tmx/Asn_J2735/src/r63/StationID.c | 60 - .../src/r63/SteeringAxleLubePressure.c | 64 - .../src/r63/SteeringAxleTemperature.c | 64 - .../Asn_J2735/src/r63/SteeringWheelAngle.c | 64 - .../src/r63/SteeringWheelAngleConfidence.c | 60 - .../src/r63/SteeringWheelAngleRateOfChange.c | 64 - src/tmx/Asn_J2735/src/r63/SummerTime.c | 56 - src/tmx/Asn_J2735/src/r63/SunSensor.c | 64 - .../src/r63/SupplementalVehicleExtensions.c | 221 - src/tmx/Asn_J2735/src/r63/TemporaryID.c | 65 - src/tmx/Asn_J2735/src/r63/TenthSecond.c | 64 - src/tmx/Asn_J2735/src/r63/TermDistance.c | 64 - src/tmx/Asn_J2735/src/r63/TermTime.c | 64 - src/tmx/Asn_J2735/src/r63/TestMessage00.c | 61 - src/tmx/Asn_J2735/src/r63/TestMessage01.c | 61 - src/tmx/Asn_J2735/src/r63/TestMessage02.c | 60 - src/tmx/Asn_J2735/src/r63/TestMessage03.c | 60 - src/tmx/Asn_J2735/src/r63/TestMessage04.c | 50 - src/tmx/Asn_J2735/src/r63/TestMessage05.c | 50 - src/tmx/Asn_J2735/src/r63/TestMessage06.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage07.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage08.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage09.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage10.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage11.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage12.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage13.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage14.c | 62 - src/tmx/Asn_J2735/src/r63/TestMessage15.c | 62 - .../Asn_J2735/src/r63/ThrottleConfidence.c | 60 - src/tmx/Asn_J2735/src/r63/ThrottlePosition.c | 64 - src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c | 102 - src/tmx/Asn_J2735/src/r63/TimeConfidence.c | 132 - .../src/r63/TimeIntervalConfidence.c | 64 - src/tmx/Asn_J2735/src/r63/TimeOffset.c | 64 - src/tmx/Asn_J2735/src/r63/TimeRemaining.c | 64 - src/tmx/Asn_J2735/src/r63/TireData.c | 112 - src/tmx/Asn_J2735/src/r63/TireDataList.c | 52 - src/tmx/Asn_J2735/src/r63/TireLeakageRate.c | 64 - src/tmx/Asn_J2735/src/r63/TireLocation.c | 64 - src/tmx/Asn_J2735/src/r63/TirePressure.c | 64 - .../src/r63/TirePressureThresholdDetection.c | 68 - src/tmx/Asn_J2735/src/r63/TireTemp.c | 64 - .../Asn_J2735/src/r63/TractionControlStatus.c | 60 - .../Asn_J2735/src/r63/TrafficControlBounds.c | 159 - .../Asn_J2735/src/r63/TrafficControlDetail.c | 1053 -- .../src/r63/TrafficControlGeometry.c | 372 - .../Asn_J2735/src/r63/TrafficControlMessage.c | 65 - .../src/r63/TrafficControlMessageV01.c | 231 - .../Asn_J2735/src/r63/TrafficControlPackage.c | 189 - .../Asn_J2735/src/r63/TrafficControlParams.c | 159 - .../src/r63/TrafficControlPathPart.c | 265 - .../Asn_J2735/src/r63/TrafficControlRequest.c | 65 - .../src/r63/TrafficControlRequestV01.c | 225 - .../src/r63/TrafficControlSchedule.c | 171 - .../Asn_J2735/src/r63/TrafficControlType.c | 98 - .../Asn_J2735/src/r63/TrafficControlValue.c | 539 - .../src/r63/TrafficControlVehClass.c | 92 - src/tmx/Asn_J2735/src/r63/TrailerData.c | 70 - .../Asn_J2735/src/r63/TrailerHistoryPoint.c | 92 - .../src/r63/TrailerHistoryPointList.c | 52 - src/tmx/Asn_J2735/src/r63/TrailerMass.c | 64 - .../src/r63/TrailerUnitDescription.c | 172 - .../src/r63/TrailerUnitDescriptionList.c | 52 - src/tmx/Asn_J2735/src/r63/TrailerWeight.c | 64 - src/tmx/Asn_J2735/src/r63/TransitStatus.c | 70 - .../src/r63/TransitVehicleOccupancy.c | 68 - .../Asn_J2735/src/r63/TransitVehicleStatus.c | 70 - .../Asn_J2735/src/r63/TransmissionAndSpeed.c | 60 - src/tmx/Asn_J2735/src/r63/TransmissionState.c | 68 - src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c | 395 - .../Asn_J2735/src/r63/TravelerDataFrameList.c | 52 - src/tmx/Asn_J2735/src/r63/TravelerInfoType.c | 62 - .../Asn_J2735/src/r63/TravelerInformation.c | 181 - src/tmx/Asn_J2735/src/r63/URL-Base.c | 79 - src/tmx/Asn_J2735/src/r63/URL-Link.c | 79 - src/tmx/Asn_J2735/src/r63/URL-Short.c | 79 - src/tmx/Asn_J2735/src/r63/UniqueMSGID.c | 65 - .../Asn_J2735/src/r63/UserSizeAndBehaviour.c | 70 - src/tmx/Asn_J2735/src/r63/VINstring.c | 65 - src/tmx/Asn_J2735/src/r63/VType.c | 88 - src/tmx/Asn_J2735/src/r63/ValidRegion.c | 139 - .../Asn_J2735/src/r63/VehicleClassification.c | 211 - src/tmx/Asn_J2735/src/r63/VehicleData.c | 82 - src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c | 70 - .../Asn_J2735/src/r63/VehicleGroupAffected.c | 124 - src/tmx/Asn_J2735/src/r63/VehicleHeight.c | 64 - src/tmx/Asn_J2735/src/r63/VehicleID.c | 65 - src/tmx/Asn_J2735/src/r63/VehicleIdent.c | 217 - src/tmx/Asn_J2735/src/r63/VehicleLength.c | 64 - src/tmx/Asn_J2735/src/r63/VehicleMass.c | 64 - .../src/r63/VehicleSafetyExtensions.c | 82 - src/tmx/Asn_J2735/src/r63/VehicleSize.c | 60 - .../Asn_J2735/src/r63/VehicleSizeConfidence.c | 72 - src/tmx/Asn_J2735/src/r63/VehicleStatus.c | 653 - .../src/r63/VehicleStatusDeviceTypeTag.c | 112 - .../Asn_J2735/src/r63/VehicleStatusRequest.c | 191 - .../src/r63/VehicleStatusRequestList.c | 52 - .../Asn_J2735/src/r63/VehicleToLanePosition.c | 60 - .../src/r63/VehicleToLanePositionList.c | 52 - src/tmx/Asn_J2735/src/r63/VehicleType.c | 86 - src/tmx/Asn_J2735/src/r63/VehicleWidth.c | 64 - src/tmx/Asn_J2735/src/r63/Velocity.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B07.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B08.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B09.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B10.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B11.c | 64 - src/tmx/Asn_J2735/src/r63/VertOffset-B12.c | 64 - .../Asn_J2735/src/r63/VerticalAcceleration.c | 64 - .../src/r63/VerticalAccelerationThreshold.c | 70 - src/tmx/Asn_J2735/src/r63/VerticalOffset.c | 125 - src/tmx/Asn_J2735/src/r63/WaitOnStopline.c | 31 - src/tmx/Asn_J2735/src/r63/WeatherProbe.c | 72 - src/tmx/Asn_J2735/src/r63/WeatherReport.c | 102 - .../Asn_J2735/src/r63/WheelEndElectFault.c | 60 - src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c | 60 - src/tmx/Asn_J2735/src/r63/WiperRate.c | 64 - src/tmx/Asn_J2735/src/r63/WiperSet.c | 82 - src/tmx/Asn_J2735/src/r63/WiperStatus.c | 68 - src/tmx/Asn_J2735/src/r63/WorkZone.c | 151 - src/tmx/Asn_J2735/src/r63/YawDetected.c | 64 - src/tmx/Asn_J2735/src/r63/YawRate.c | 64 - src/tmx/Asn_J2735/src/r63/YawRateConfidence.c | 68 - src/tmx/Asn_J2735/src/r63/Year.c | 64 - src/tmx/Asn_J2735/src/r63/ZoneLength.c | 64 - src/tmx/Asn_J2735/src/r63/Zoom.c | 64 - src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c | 41 - src/tmx/Asn_J2735/src/r63/asn_SET_OF.c | 88 - src/tmx/Asn_J2735/src/r63/asn_application.c | 481 - src/tmx/Asn_J2735/src/r63/asn_bit_data.c | 333 - src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c | 317 - src/tmx/Asn_J2735/src/r63/asn_internal.c | 48 - src/tmx/Asn_J2735/src/r63/asn_random_fill.c | 56 - src/tmx/Asn_J2735/src/r63/ber_decoder.c | 283 - src/tmx/Asn_J2735/src/r63/ber_tlv_length.c | 168 - src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c | 144 - src/tmx/Asn_J2735/src/r63/constr_CHOICE.c | 1513 --- src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c | 380 - src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c | 2063 --- .../Asn_J2735/src/r63/constr_SEQUENCE_OF.c | 364 - .../Asn_J2735/src/r63/constr_SEQUENCE_oer.c | 561 - src/tmx/Asn_J2735/src/r63/constr_SET_OF.c | 1539 --- src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c | 285 - src/tmx/Asn_J2735/src/r63/constr_TYPE.c | 80 - src/tmx/Asn_J2735/src/r63/constraints.c | 93 - src/tmx/Asn_J2735/src/r63/der_encoder.c | 194 - src/tmx/Asn_J2735/src/r63/oer_decoder.c | 152 - src/tmx/Asn_J2735/src/r63/oer_encoder.c | 141 - src/tmx/Asn_J2735/src/r63/oer_support.c | 122 - src/tmx/Asn_J2735/src/r63/pdu_collection.c | 76 - src/tmx/Asn_J2735/src/r63/per_decoder.c | 185 - src/tmx/Asn_J2735/src/r63/per_encoder.c | 265 - src/tmx/Asn_J2735/src/r63/per_opentype.c | 538 - src/tmx/Asn_J2735/src/r63/per_support.c | 583 - src/tmx/Asn_J2735/src/r63/xer_decoder.c | 369 - src/tmx/Asn_J2735/src/r63/xer_encoder.c | 237 - src/tmx/Asn_J2735/src/r63/xer_support.c | 227 - src/tmx/Messages/include/rtcm/RTCM2.h | 50 +- src/tmx/Messages/include/rtcm/RTCM3.h | 50 +- src/tmx/TmxApi/tmx/TmxApiMessages.h | 4 +- .../tmx/j2735_messages/BasicSafetyMessage.hpp | 8 +- .../CommonSafetyRequestMessage.hpp | 8 +- .../EmergencyVehicleAlertMessage.hpp | 8 +- .../IntersectionCollisionMessage.hpp | 8 +- .../j2735_messages/J2735MessageFactory.hpp | 58 +- .../j2735_messages/J2735MessageTemplate.hpp | 64 +- .../tmx/j2735_messages/MessageFrame.hpp | 20 +- .../TmxApi/tmx/j2735_messages/NmeaMessage.hpp | 16 +- .../ProbeDataManagementMessage.hpp | 8 +- .../ProbeVehicleDataMessage.hpp | 18 +- .../TmxApi/tmx/j2735_messages/RtcmMessage.hpp | 16 +- .../SensorDataSharingMessage.hpp | 24 +- .../j2735_messages/SignalRequestMessage.hpp | 16 +- .../tmx/j2735_messages/testMessage00.hpp | 4 +- .../tmx/j2735_messages/testMessage01.hpp | 4 +- .../tmx/j2735_messages/testMessage02.hpp | 4 +- .../tmx/j2735_messages/testMessage03.hpp | 4 +- .../tmx/j2735_messages/testMessage04.hpp | 4 +- .../tmx/j2735_messages/testMessage05.hpp | 4 +- src/tmx/TmxApi/tmx/messages/IvpJ2735.c | 48 +- src/tmx/TmxApi/tmx/messages/IvpJ2735.h | 6 +- .../TmxApi/tmx/messages/SaeJ2735Traits.hpp | 2 +- src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp | 128 +- src/tmx/TmxUtils/src/BsmConverter.cpp | 342 +- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 633 +- src/tmx/tmx.doxyfile | 2 +- .../src/J3224ToSDSMJsonConverter.cpp | 322 +- .../src/J3224ToSDSMJsonConverter.h | 66 +- .../src/JsonToJ2735SpatConverter.cpp | 8 +- .../src/JsonToJ3224SDSMConverter.cpp | 692 +- .../src/JsonToJ3224SDSMConverter.h | 92 +- .../test/test_J2735MapToJsonConverter.cpp | 2 +- .../test/test_JsonToJ2735SpatConverter.cpp | 6 +- src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp | 4 +- src/v2i-hub/CswPlugin/src/DsrcBuilder.h | 12 +- .../ImmediateForwardPlugin/manifest.json | 2 +- .../MapPlugin/src/ConvertToJ2735r41.cpp | 6 +- src/v2i-hub/MapPlugin/src/MapPlugin.cpp | 6 +- .../src/inputs/isd/ISDDataAdaptor.hpp | 22 +- .../src/inputs/isd/ISDToJ2735r41.cpp | 6 +- src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp | 12 +- src/v2i-hub/TimPlugin/src/DsrcBuilder.h | 12 +- src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp | 32 +- 3403 files changed, 1450 insertions(+), 325623 deletions(-) delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/version.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralizedTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessageStatusType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RELATIVE-OID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TeletexString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/version.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ANY_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Acceleration.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Altitude.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AltitudeValue.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AnimalType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ApproachID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ApproachOrLane.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Attachment.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AttachmentRadius.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeight.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeightList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/AxleWeightSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BSMcoreData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BumperHeight.c delete mode 100644 src/tmx/Asn_J2735/src/2020/BumperHeights.c delete mode 100644 src/tmx/Asn_J2735/src/2020/CargoWeight.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Circle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/CoarseHeading.c delete mode 100644 src/tmx/Asn_J2735/src/2020/CodeWord.c delete mode 100644 src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c delete mode 100644 src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Common_Angle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Common_Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Common_MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ComputedLane.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Confidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ConnectingLane.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Connection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ConnectsToList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Count.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DDate.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DDateTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DDay.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DFullTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DHour.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DMinute.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DMonth.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DMonthDay.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DOffset.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DSRCmsgID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DSecond.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DYear.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DYearMonth.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DataParameters.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Day.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DayOfWeek.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DegreesLat.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DegreesLong.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DeltaAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DeltaTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DescriptiveName.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DirectionOfUse.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DisabledVehicle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DistanceUnits.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c delete mode 100644 src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Duration.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EXTERNAL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ElevationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EmergencyDetails.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EmissionType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EnabledLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EssMobileFriction.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipRate.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/EventDescription.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ExitService.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Extent.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ExteriorLights.c delete mode 100644 src/tmx/Asn_J2735/src/2020/FuelType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/FullPositionVector.c delete mode 100644 src/tmx/Asn_J2735/src/2020/FurtherInfoID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GNSSstatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GenericLane.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GenericLocations.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GenericSignage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GeographicalPath.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GeometricProjection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GraphicString.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GrossDistance.c delete mode 100644 src/tmx/Asn_J2735/src/2020/GrossSpeed.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Header.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Heading.c delete mode 100644 src/tmx/Asn_J2735/src/2020/HeadingConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/HeadingSlice.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Holiday.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Hour.c delete mode 100644 src/tmx/Asn_J2735/src/2020/HumanPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IA5String.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/INTEGER_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ITIScodes.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ITIStext.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionCollision.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionStateList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c delete mode 100644 src/tmx/Asn_J2735/src/2020/IsDolly.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/J1939data.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneConnectionID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneDirection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneSharing.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LaneWidth.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Latitude.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LatitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LayerID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LayerType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LightbarInUse.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Location-quality.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Location-tech.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Longitude.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LongitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MUTCDCode.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MapData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MessageBLOB.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MessageFrame.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MinTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Minute.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MinutesAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MinutesDuration.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Month.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementEventList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementPhaseState.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MovementState.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MsgCRC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-Payload.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NMEA-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NMEAcorrections.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-24B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-28B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-32B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-36B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-44B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LL-48B.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-20b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-22b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-24b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-26b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-28b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Node-XY-32b.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeListLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeListXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeSetLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeSetXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NodeXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ObjectCount.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDetection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDirection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ObstacleDistance.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B09.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B10.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B11.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B13.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B14.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Offset-B16.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OffsetSystem.c delete mode 100644 src/tmx/Asn_J2735/src/2020/OverlayLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PartII-Id.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PartIIcontent.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PathHistory.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PathPrediction.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PayloadData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalAssistive.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PivotPointDescription.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PivotingAllowed.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PositionConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Priority.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PriorityRequestType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PropelledInformation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCM-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCMPackage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCMcorrections.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCMheader.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCMmessage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RTCMmessageList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Radius-B12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RainSensor.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegionId.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegionList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegionOffsets.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegionPointSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegionalExtension.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestSubRole.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestedItem.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestedItemList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestorDescription.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RequestorType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ResponseType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionClassList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegment.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSideAlert.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadSignID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SPAT.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SSPindex.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Sample.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Scale-B12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Second.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SecondOfTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SecondsAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ShapePointSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignPrority.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalControlZone.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalGroupID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalReqScheme.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequest.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SirenInUse.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Snapshot.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SnapshotDistance.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SnapshotTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Speed.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedAdvice.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimitList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedLimitType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfile.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/StationID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SummerTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SunSensor.c delete mode 100644 src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TemporaryID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TenthSecond.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TermDistance.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TermTime.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage00.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage01.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage02.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage03.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage04.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage05.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage06.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage07.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage08.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage09.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage10.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage11.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage13.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage14.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TestMessage15.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ThrottlePosition.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TimeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TimeOffset.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TimeRemaining.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TireData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TireDataList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TireLeakageRate.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TireLocation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TirePressure.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TireTemp.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TractionControlStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerMass.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TrailerWeight.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TransitStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TransmissionState.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TravelerInfoType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/TravelerInformation.c delete mode 100644 src/tmx/Asn_J2735/src/2020/URL-Base.c delete mode 100644 src/tmx/Asn_J2735/src/2020/URL-Link.c delete mode 100644 src/tmx/Asn_J2735/src/2020/URL-Short.c delete mode 100644 src/tmx/Asn_J2735/src/2020/UniqueMSGID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VINstring.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ValidRegion.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleClassification.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleHeight.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleID.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleIdent.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleLength.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleMass.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleSize.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleType.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VehicleWidth.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Velocity.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B07.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B08.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B09.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B10.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B11.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VertOffset-B12.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c delete mode 100644 src/tmx/Asn_J2735/src/2020/VerticalOffset.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WaitOnStopline.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WeatherProbe.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WeatherReport.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WiperRate.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WiperSet.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WiperStatus.c delete mode 100644 src/tmx/Asn_J2735/src/2020/WorkZone.c delete mode 100644 src/tmx/Asn_J2735/src/2020/YawRate.c delete mode 100644 src/tmx/Asn_J2735/src/2020/YawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Year.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ZoneLength.c delete mode 100644 src/tmx/Asn_J2735/src/2020/Zoom.c delete mode 100644 src/tmx/Asn_J2735/src/2020/aper_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/aper_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/aper_opentype.c delete mode 100644 src/tmx/Asn_J2735/src/2020/aper_support.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_application.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_bit_data.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_internal.c delete mode 100644 src/tmx/Asn_J2735/src/2020/asn_random_fill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ber_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ber_tlv_length.c delete mode 100644 src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constr_TYPE.c delete mode 100644 src/tmx/Asn_J2735/src/2020/constraints.c delete mode 100644 src/tmx/Asn_J2735/src/2020/der_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/jer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/oer_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/oer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/oer_support.c delete mode 100644 src/tmx/Asn_J2735/src/2020/pdu_collection.c delete mode 100644 src/tmx/Asn_J2735/src/2020/per_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/per_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/per_opentype.c delete mode 100644 src/tmx/Asn_J2735/src/2020/per_support.c delete mode 100644 src/tmx/Asn_J2735/src/2020/uper_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/uper_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/uper_opentype.c delete mode 100644 src/tmx/Asn_J2735/src/2020/uper_support.c delete mode 100644 src/tmx/Asn_J2735/src/2020/xer_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/xer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/2020/xer_support.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Acceleration.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Altitude.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AltitudeValue.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Angle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AnimalType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ApproachID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Attachment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AttachmentRadius.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/AxleWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BIT_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BOOLEAN.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BSMblob.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeightFront.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeightRear.c delete mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeights.c delete mode 100644 src/tmx/Asn_J2735/src/r41/CargoWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Circle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/CodeWord.c delete mode 100644 src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c delete mode 100644 src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ComputedLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ConnectingLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Connection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ConnectsToList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Count.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DDate.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DDateTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DDay.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DFullTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DHour.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DMinute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DMonth.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DMonthDay.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSecond.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DSecond2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DYear.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DYearMonth.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DataParameters.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Day.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DayOfWeek.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DegreesLat.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DegreesLong.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DeltaAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DescriptiveName.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DestinationType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DirectionOfUse.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c delete mode 100644 src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Elevation2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ElevationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EmergencyDetails.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EmissionType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EnabledLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EssMobileFriction.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipRate.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/EventFlags.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ExitService.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Extent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ExteriorLights.c delete mode 100644 src/tmx/Asn_J2735/src/r41/FullPositionVector.c delete mode 100644 src/tmx/Asn_J2735/src/r41/FurtherInfoID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/GPSstatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/GenericLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/GenericSignage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Heading.c delete mode 100644 src/tmx/Asn_J2735/src/r41/HeadingConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/HeadingSlice.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Holiday.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Hour.c delete mode 100644 src/tmx/Asn_J2735/src/r41/HumanPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IA5String.c delete mode 100644 src/tmx/Asn_J2735/src/r41/INTEGER.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ITIScodes.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ITIStext.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionCollision.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionStateList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c delete mode 100644 src/tmx/Asn_J2735/src/r41/J1939data.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Angle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneConnectionID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneDirection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneNumber.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneSharing.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LaneWidth.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Latitude.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LatitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LayerID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LayerType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LightbarInUse.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Location-quality.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Location-tech.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Longitude.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LongitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MUTCDCode.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MapData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MinTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Minute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MinutesAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MinutesDuration.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeeds.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Month.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MovementEventList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MovementList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MovementPhaseState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MovementState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MsgCRC.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Payload.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NativeEnumerated.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NativeInteger.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-20b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-22b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-24b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-26b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-28b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-32b.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Node.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeList2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NodeSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c delete mode 100644 src/tmx/Asn_J2735/src/r41/OCTET_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ObjectCount.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ObstacleDirection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ObstacleDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B10.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B11.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B13.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B14.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B16.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Offsets.c delete mode 100644 src/tmx/Asn_J2735/src/r41/OverlayLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistory.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PathPrediction.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Payload.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PayloadData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalAssistive.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Position3D-2.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PositionConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Priority.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PropelledInformation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-ID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Payload.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCMHeader.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCMPackage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RTCMmsg.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RainSensor.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-Intersection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MapData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MovementState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-SPAT.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionOffsets.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionPointSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalIntersection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMapData.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMovementState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalSPAT.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RequestID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RequestedItem.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ResponseType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegment.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSideAlert.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadSignID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SPAT.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Sample.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Scale-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SeatCount.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Second.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SecondsAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SegmentAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ShapePointSet.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignPrority.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalControlState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalControlZone.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalGroupID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalReqScheme.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SirenInUse.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Snapshot.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SnapshotDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SnapshotTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Speed.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedAdvice.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimitList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimitType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/StationID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SummerTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/SunSensor.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TemporaryID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TenthSecond.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TermDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TermTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ThrottlePosition.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TimeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TimeRemaining.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TireLeakageRate.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TireLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TirePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TireTemp.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TractionControlState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TrailerWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TransitStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TransmissionState.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TravelerInfoType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TravelerInformation.c delete mode 100644 src/tmx/Asn_J2735/src/r41/TxTime.c delete mode 100644 src/tmx/Asn_J2735/src/r41/UPER-Blob.c delete mode 100644 src/tmx/Asn_J2735/src/r41/UPERframe.c delete mode 100644 src/tmx/Asn_J2735/src/r41/URL-Base.c delete mode 100644 src/tmx/Asn_J2735/src/r41/URL-Link.c delete mode 100644 src/tmx/Asn_J2735/src/r41/URL-Short.c delete mode 100644 src/tmx/Asn_J2735/src/r41/UUIDType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/UniqueMSGID.c delete mode 100644 src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VINstring.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ValidRegion.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleHeight.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleIdent.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleLength.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleMass.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleSize.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleType.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VehicleWidth.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Velocity.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c delete mode 100644 src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WaitOnStopline.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WiperRate.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatusFront.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatusRear.c delete mode 100644 src/tmx/Asn_J2735/src/r41/WorkZone.c delete mode 100644 src/tmx/Asn_J2735/src/r41/YawRate.c delete mode 100644 src/tmx/Asn_J2735/src/r41/YawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r41/Year.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ZoneLength.c delete mode 100644 src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r41/asn_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ber_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ber_tlv_length.c delete mode 100644 src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constr_CHOICE.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constr_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constr_TYPE.c delete mode 100644 src/tmx/Asn_J2735/src/r41/constraints.c delete mode 100644 src/tmx/Asn_J2735/src/r41/der_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/per_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/per_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/per_opentype.c delete mode 100644 src/tmx/Asn_J2735/src/r41/per_support.c delete mode 100644 src/tmx/Asn_J2735/src/r41/xer_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/xer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r41/xer_support.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ANY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Acceleration.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Altitude.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AltitudeValue.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AngularVelocity.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AnimalType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ApproachID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ApproachOrLane.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Attachment.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AttachmentRadius.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Attitude.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeightList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeightSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BIT_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BOOLEAN.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BSMcoreData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BumperHeight.c delete mode 100644 src/tmx/Asn_J2735/src/r63/BumperHeights.c delete mode 100644 src/tmx/Asn_J2735/src/r63/CargoWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Circle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/CoarseHeading.c delete mode 100644 src/tmx/Asn_J2735/src/r63/CodeWord.c delete mode 100644 src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c delete mode 100644 src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ComputedLane.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Confidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ConnectingLane.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Connection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ConnectsToList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Count.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DDate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DDateTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DDay.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DFullTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DHour.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DMinute.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DMonth.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DMonthDay.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_Angle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSRCmsgID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DSecond.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DYear.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DYearMonth.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DailySchedule.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DataParameters.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Day.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DayOfWeek.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DaySchedule.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DegreesLat.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DegreesLong.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DeltaAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DeltaTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DescriptiveName.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedVRUData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DirectionOfUse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DisabledVehicle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DistanceUnits.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c delete mode 100644 src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Duration.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EXTERNAL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ElevationConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EmergencyDetails.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EmissionType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EnabledLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EpochMins.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EquipmentType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EssMobileFriction.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/EventDescription.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ExitService.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Extent.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ExteriorLights.c delete mode 100644 src/tmx/Asn_J2735/src/r63/FuelType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/FullPositionVector.c delete mode 100644 src/tmx/Asn_J2735/src/r63/FurtherInfoID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GNSSstatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GenericLane.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GenericLocations.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GenericSignage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GeographicalPath.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GeometricProjection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GraphicString.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GrossDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r63/GrossSpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Header.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Heading.c delete mode 100644 src/tmx/Asn_J2735/src/r63/HeadingConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/HeadingSlice.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Holiday.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Hour.c delete mode 100644 src/tmx/Asn_J2735/src/r63/HumanPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IA5String.c delete mode 100644 src/tmx/Asn_J2735/src/r63/INTEGER.c delete mode 100644 src/tmx/Asn_J2735/src/r63/INTEGER_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ITIScodes.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ITIStext.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Id128b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Id64b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionCollision.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionState.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionStateList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c delete mode 100644 src/tmx/Asn_J2735/src/r63/IsDolly.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/J1939data.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneConnectionID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneDirection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneSharing.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LaneWidth.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Latitude.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LatitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LayerID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LayerType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LightbarInUse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Location-quality.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Location-tech.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Longitude.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LongitudeDMS.c delete mode 100644 src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MUTCDCode.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MapData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MessageBLOB.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MessageFrame.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MinTimetoChange.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Minute.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MinutesAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MinutesDuration.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityGUID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityHeader.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityOperation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityParameters.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityPath.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityPlanType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityResponse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityStaticID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityStrategy.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MobilityUrgency.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Month.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementEvent.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementEventList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementPhaseState.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MovementState.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MsgCRC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-Payload.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NMEAcorrections.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NULL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NativeEnumerated.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NativeInteger.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-24B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-28B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-32B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-36B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-44B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-48B.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-20b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-22b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-24b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-26b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-28b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-32b.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeListLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeListXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeSetLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeSetXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NodeXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OCTET_STRING.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObjectCount.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObjectDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObjectID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObjectType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDetection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDirection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleSize.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B09.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B10.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B11.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B13.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B14.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B16.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OffsetSystem.c delete mode 100644 src/tmx/Asn_J2735/src/r63/OverlayLaneList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PartII-Id.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PartIIcontent.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PathHistory.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PathNode.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PathPrediction.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PayloadData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalAssistive.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PitchDetected.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PitchRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PivotPointDescription.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PivotingAllowed.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Point.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Position3D.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PositionConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Priority.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PriorityRequestType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PropelledInformation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCM-Revision.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCMPackage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCMcorrections.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCMheader.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCMmessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RTCMmessageList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Radius-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RainSensor.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegionId.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegionList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegionOffsets.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegionPointSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegionalExtension.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RepeatParams.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestSubRole.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestedItem.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestedItemList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestorDescription.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RequestorType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ResponseType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegment.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSideAlert.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadSignID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RollDetected.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RollRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/RollRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SPAT.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SSPindex.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Sample.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Scale-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Schedule.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Second.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SecondOfTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SecondsAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ShapePointSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignPrority.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalControlZone.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalGroupID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalReqScheme.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SirenInUse.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SizeValue.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Snapshot.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SnapshotDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SnapshotTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Speed.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedAdvice.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimit.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimitList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimitType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfile.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/StationID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SummerTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SunSensor.c delete mode 100644 src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TemporaryID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TenthSecond.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TermDistance.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TermTime.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage00.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage01.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage02.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage03.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage04.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage05.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage06.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage07.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage08.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage09.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage10.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage11.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage13.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage14.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage15.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ThrottlePosition.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TimeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TimeOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TimeRemaining.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TireData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TireDataList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TireLeakageRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TireLocation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TirePressure.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TireTemp.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TractionControlStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlParams.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlValue.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerMass.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TrailerWeight.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TransitStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TransmissionState.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TravelerInfoType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/TravelerInformation.c delete mode 100644 src/tmx/Asn_J2735/src/r63/URL-Base.c delete mode 100644 src/tmx/Asn_J2735/src/r63/URL-Link.c delete mode 100644 src/tmx/Asn_J2735/src/r63/URL-Short.c delete mode 100644 src/tmx/Asn_J2735/src/r63/UniqueMSGID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VINstring.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ValidRegion.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleClassification.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleData.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleHeight.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleID.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleIdent.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleLength.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleMass.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSize.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleType.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VehicleWidth.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Velocity.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B07.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B08.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B09.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B10.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B11.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B12.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c delete mode 100644 src/tmx/Asn_J2735/src/r63/VerticalOffset.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WaitOnStopline.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WeatherProbe.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WeatherReport.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WiperRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WiperSet.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WiperStatus.c delete mode 100644 src/tmx/Asn_J2735/src/r63/WorkZone.c delete mode 100644 src/tmx/Asn_J2735/src/r63/YawDetected.c delete mode 100644 src/tmx/Asn_J2735/src/r63/YawRate.c delete mode 100644 src/tmx/Asn_J2735/src/r63/YawRateConfidence.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Year.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ZoneLength.c delete mode 100644 src/tmx/Asn_J2735/src/r63/Zoom.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_application.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_bit_data.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_internal.c delete mode 100644 src/tmx/Asn_J2735/src/r63/asn_random_fill.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ber_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ber_tlv_length.c delete mode 100644 src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_CHOICE.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_SET_OF.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constr_TYPE.c delete mode 100644 src/tmx/Asn_J2735/src/r63/constraints.c delete mode 100644 src/tmx/Asn_J2735/src/r63/der_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/oer_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/oer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/oer_support.c delete mode 100644 src/tmx/Asn_J2735/src/r63/pdu_collection.c delete mode 100644 src/tmx/Asn_J2735/src/r63/per_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/per_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/per_opentype.c delete mode 100644 src/tmx/Asn_J2735/src/r63/per_support.c delete mode 100644 src/tmx/Asn_J2735/src/r63/xer_decoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/xer_encoder.c delete mode 100644 src/tmx/Asn_J2735/src/r63/xer_support.c diff --git a/src/build.sh b/src/build.sh index 9bb3d4c4f..b085806a5 100755 --- a/src/build.sh +++ b/src/build.sh @@ -36,7 +36,7 @@ elif [ $RELEASE_BUILD -eq 0 ]; then BUILD_TYPE="Debug" fi pushd tmx -cmake -Bbuild -DCMAKE_PREFIX_PATH=\"/usr/local/share/tmx\;\/opt/carma/cmake\;\" -DCMAKE_CXX_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_C_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" . +cmake -Bbuild -DCMAKE_PREFIX_PATH=\"/usr/local/share/tmx\;\/opt/carma/cmake\;\" -DCMAKE_CXX_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_C_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_BUILD_TYPE=Debug . pushd build make -j${numCPU} make install diff --git a/src/tmx/Asn_J2735/CMakeLists.txt b/src/tmx/Asn_J2735/CMakeLists.txt index 4bda1b3b9..74d72fc13 100644 --- a/src/tmx/Asn_J2735/CMakeLists.txt +++ b/src/tmx/Asn_J2735/CMakeLists.txt @@ -16,7 +16,7 @@ FOREACH (SOURCE_DIR ${SOURCE_DIRS}) STRING (SUBSTRING ${SAEJ2735_SPEC} 1 -1 SAEJ2735_SPEC_DEF) ADD_LIBRARY (${LIBRARY_NAME} SHARED ${${LIBRARY_NAME}_SOURCES}) - TARGET_INCLUDE_DIRECTORIES (${LIBRARY_NAME} PUBLIC + TARGET_INCLUDE_DIRECTORIES (${LIBRARY_NAME} PUBLIC $ $) TARGET_COMPILE_DEFINITIONS (${LIBRARY_NAME} PUBLIC "-DSAEJ2735_SPEC=${SAEJ2735_SPEC_DEF}") diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h deleted file mode 100644 index 871ed5ed3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ANY.h +++ /dev/null @@ -1,84 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_TYPE_ANY_H -#define ASN_TYPE_ANY_H - -#include /* Implemented via OCTET STRING type */ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ANY { - uint8_t *buf; /* BER-encoded ANY contents */ - int size; /* Size of the above buffer */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} ANY_t; - -extern asn_TYPE_descriptor_t asn_DEF_ANY; -extern asn_TYPE_operation_t asn_OP_ANY; -extern asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs; - -#define ANY_free OCTET_STRING_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define ANY_print OCTET_STRING_print -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define ANY_compare OCTET_STRING_compare - -#define ANY_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define ANY_decode_ber OCTET_STRING_decode_ber -#define ANY_encode_der OCTET_STRING_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define ANY_decode_xer OCTET_STRING_decode_xer_hex -xer_type_encoder_f ANY_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f ANY_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f ANY_decode_uper; -per_type_encoder_f ANY_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f ANY_decode_aper; -per_type_encoder_f ANY_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -/****************************** - * Handy conversion routines. * - ******************************/ - -/* Convert another ASN.1 type into the ANY. This implies DER encoding. */ -int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr); -ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr); -#if !defined(ASN_DISABLE_APER_SUPPORT) -int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr); -ANY_t *ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr); -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -/* Convert the contents of the ANY type into the specified type. */ -int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); -#if !defined(ASN_DISABLE_APER_SUPPORT) -int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size)) -#define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \ - &asn_DEF_ANY, (buf), (size)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_TYPE_ANY_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h deleted file mode 100644 index 8fec9059e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelSteerYawRateConfidence.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AccelSteerYawRateConfidence_H_ -#define _AccelSteerYawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "SteeringWheelAngleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelSteerYawRateConfidence */ -typedef struct AccelSteerYawRateConfidence { - YawRateConfidence_t yawRate; - AccelerationConfidence_t acceleration; - SteeringWheelAngleConfidence_t steeringWheelAngle; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AccelSteerYawRateConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelSteerYawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h deleted file mode 100644 index 4abddc42b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Acceleration.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Acceleration_H_ -#define _Acceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Acceleration */ -typedef long Acceleration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Acceleration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Acceleration; -asn_struct_free_f Acceleration_free; -asn_struct_print_f Acceleration_print; -asn_constr_check_f Acceleration_constraint; -ber_type_decoder_f Acceleration_decode_ber; -der_type_encoder_f Acceleration_encode_der; -xer_type_decoder_f Acceleration_decode_xer; -xer_type_encoder_f Acceleration_encode_xer; -jer_type_encoder_f Acceleration_encode_jer; -oer_type_decoder_f Acceleration_decode_oer; -oer_type_encoder_f Acceleration_encode_oer; -per_type_decoder_f Acceleration_decode_uper; -per_type_encoder_f Acceleration_encode_uper; -per_type_decoder_f Acceleration_decode_aper; -per_type_encoder_f Acceleration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Acceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h deleted file mode 100644 index 50e9e6db4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationConfidence.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AccelerationConfidence_H_ -#define _AccelerationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AccelerationConfidence { - AccelerationConfidence_unavailable = 0, - AccelerationConfidence_accl_100_00 = 1, - AccelerationConfidence_accl_010_00 = 2, - AccelerationConfidence_accl_005_00 = 3, - AccelerationConfidence_accl_001_00 = 4, - AccelerationConfidence_accl_000_10 = 5, - AccelerationConfidence_accl_000_05 = 6, - AccelerationConfidence_accl_000_01 = 7 -} e_AccelerationConfidence; - -/* AccelerationConfidence */ -typedef long AccelerationConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1; -asn_struct_free_f AccelerationConfidence_free; -asn_struct_print_f AccelerationConfidence_print; -asn_constr_check_f AccelerationConfidence_constraint; -ber_type_decoder_f AccelerationConfidence_decode_ber; -der_type_encoder_f AccelerationConfidence_encode_der; -xer_type_decoder_f AccelerationConfidence_decode_xer; -xer_type_encoder_f AccelerationConfidence_encode_xer; -jer_type_encoder_f AccelerationConfidence_encode_jer; -oer_type_decoder_f AccelerationConfidence_decode_oer; -oer_type_encoder_f AccelerationConfidence_encode_oer; -per_type_decoder_f AccelerationConfidence_decode_uper; -per_type_encoder_f AccelerationConfidence_encode_uper; -per_type_decoder_f AccelerationConfidence_decode_aper; -per_type_encoder_f AccelerationConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h deleted file mode 100644 index 5f41c4e51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AccelerationSet4Way.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AccelerationSet4Way_H_ -#define _AccelerationSet4Way_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Acceleration.h" -#include "VerticalAcceleration.h" -#include "YawRate.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelerationSet4Way */ -typedef struct AccelerationSet4Way { - Acceleration_t Long; - Acceleration_t lat; - VerticalAcceleration_t vert; - YawRate_t yaw; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AccelerationSet4Way_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; -extern asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1; -extern asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationSet4Way_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h deleted file mode 100644 index f057e4788..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Angle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AddGrpB_Angle_H_ -#define _AddGrpB_Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_Angle */ -typedef long AddGrpB_Angle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle; -asn_struct_free_f AddGrpB_Angle_free; -asn_struct_print_f AddGrpB_Angle_print; -asn_constr_check_f AddGrpB_Angle_constraint; -ber_type_decoder_f AddGrpB_Angle_decode_ber; -der_type_encoder_f AddGrpB_Angle_encode_der; -xer_type_decoder_f AddGrpB_Angle_decode_xer; -xer_type_encoder_f AddGrpB_Angle_encode_xer; -jer_type_encoder_f AddGrpB_Angle_encode_jer; -oer_type_decoder_f AddGrpB_Angle_decode_oer; -oer_type_encoder_f AddGrpB_Angle_encode_oer; -per_type_decoder_f AddGrpB_Angle_decode_uper; -per_type_encoder_f AddGrpB_Angle_encode_uper; -per_type_decoder_f AddGrpB_Angle_decode_aper; -per_type_encoder_f AddGrpB_Angle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h deleted file mode 100644 index cd8e4fa81..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_Elevation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AddGrpB_Elevation_H_ -#define _AddGrpB_Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_Elevation */ -typedef long AddGrpB_Elevation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation; -asn_struct_free_f AddGrpB_Elevation_free; -asn_struct_print_f AddGrpB_Elevation_print; -asn_constr_check_f AddGrpB_Elevation_constraint; -ber_type_decoder_f AddGrpB_Elevation_decode_ber; -der_type_encoder_f AddGrpB_Elevation_encode_der; -xer_type_decoder_f AddGrpB_Elevation_decode_xer; -xer_type_encoder_f AddGrpB_Elevation_encode_xer; -jer_type_encoder_f AddGrpB_Elevation_encode_jer; -oer_type_decoder_f AddGrpB_Elevation_decode_oer; -oer_type_encoder_f AddGrpB_Elevation_encode_oer; -per_type_decoder_f AddGrpB_Elevation_decode_uper; -per_type_encoder_f AddGrpB_Elevation_encode_uper; -per_type_decoder_f AddGrpB_Elevation_decode_aper; -per_type_encoder_f AddGrpB_Elevation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h deleted file mode 100644 index 891ef20a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_MsgCount.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AddGrpB_MsgCount_H_ -#define _AddGrpB_MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_MsgCount */ -typedef long AddGrpB_MsgCount_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount; -asn_struct_free_f AddGrpB_MsgCount_free; -asn_struct_print_f AddGrpB_MsgCount_print; -asn_constr_check_f AddGrpB_MsgCount_constraint; -ber_type_decoder_f AddGrpB_MsgCount_decode_ber; -der_type_encoder_f AddGrpB_MsgCount_encode_der; -xer_type_decoder_f AddGrpB_MsgCount_decode_xer; -xer_type_encoder_f AddGrpB_MsgCount_encode_xer; -jer_type_encoder_f AddGrpB_MsgCount_encode_jer; -oer_type_decoder_f AddGrpB_MsgCount_decode_oer; -oer_type_encoder_f AddGrpB_MsgCount_encode_oer; -per_type_decoder_f AddGrpB_MsgCount_decode_uper; -per_type_encoder_f AddGrpB_MsgCount_encode_uper; -per_type_decoder_f AddGrpB_MsgCount_decode_aper; -per_type_encoder_f AddGrpB_MsgCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h deleted file mode 100644 index c18bf6929..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AddGrpB_TimeMark.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AddGrpB_TimeMark_H_ -#define _AddGrpB_TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Year.h" -#include "Month.h" -#include "Day.h" -#include "SummerTime.h" -#include "Holiday.h" -#include "DayOfWeek.h" -#include "Hour.h" -#include "Minute.h" -#include "Second.h" -#include "TenthSecond.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_TimeMark */ -typedef struct AddGrpB_TimeMark { - Year_t year; - Month_t month; - Day_t day; - SummerTime_t summerTime; - Holiday_t holiday; - DayOfWeek_t dayofWeek; - Hour_t hour; - Minute_t minute; - Second_t second; - TenthSecond_t tenthSecond; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AddGrpB_TimeMark_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h deleted file mode 100644 index deb8031f4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeed.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AdvisorySpeed_H_ -#define _AdvisorySpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AdvisorySpeedType.h" -#include "SpeedAdvice.h" -#include "SpeedConfidence.h" -#include "ZoneLength.h" -#include "RestrictionClassID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_AdvisorySpeed; - -/* AdvisorySpeed */ -typedef struct AdvisorySpeed { - AdvisorySpeedType_t type; - SpeedAdvice_t *speed; /* OPTIONAL */ - SpeedConfidence_t *confidence; /* OPTIONAL */ - ZoneLength_t *distance; /* OPTIONAL */ - RestrictionClassID_t *Class; /* OPTIONAL */ - struct AdvisorySpeed__regional { - A_SEQUENCE_OF(struct Reg_AdvisorySpeed) 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; -} AdvisorySpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; -extern asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1; -extern asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AdvisorySpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h deleted file mode 100644 index 5a6f807cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AdvisorySpeedList_H_ -#define _AdvisorySpeedList_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 AdvisorySpeed; - -/* AdvisorySpeedList */ -typedef struct AdvisorySpeedList { - A_SEQUENCE_OF(struct AdvisorySpeed) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AdvisorySpeedList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; -extern asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1; -extern asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[1]; -extern asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _AdvisorySpeedList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h deleted file mode 100644 index 2e65eafeb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AdvisorySpeedType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AdvisorySpeedType_H_ -#define _AdvisorySpeedType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AdvisorySpeedType { - AdvisorySpeedType_none = 0, - AdvisorySpeedType_greenwave = 1, - AdvisorySpeedType_ecoDrive = 2, - AdvisorySpeedType_transit = 3 - /* - * Enumeration is extensible - */ -} e_AdvisorySpeedType; - -/* AdvisorySpeedType */ -typedef long AdvisorySpeedType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; -extern const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1; -asn_struct_free_f AdvisorySpeedType_free; -asn_struct_print_f AdvisorySpeedType_print; -asn_constr_check_f AdvisorySpeedType_constraint; -ber_type_decoder_f AdvisorySpeedType_decode_ber; -der_type_encoder_f AdvisorySpeedType_encode_der; -xer_type_decoder_f AdvisorySpeedType_decode_xer; -xer_type_encoder_f AdvisorySpeedType_encode_xer; -jer_type_encoder_f AdvisorySpeedType_encode_jer; -oer_type_decoder_f AdvisorySpeedType_decode_oer; -oer_type_encoder_f AdvisorySpeedType_encode_oer; -per_type_decoder_f AdvisorySpeedType_decode_uper; -per_type_encoder_f AdvisorySpeedType_encode_uper; -per_type_decoder_f AdvisorySpeedType_decode_aper; -per_type_encoder_f AdvisorySpeedType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AdvisorySpeedType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h deleted file mode 100644 index a28b8ef42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AllowedManeuvers.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AllowedManeuvers_H_ -#define _AllowedManeuvers_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AllowedManeuvers { - AllowedManeuvers_maneuverStraightAllowed = 0, - AllowedManeuvers_maneuverLeftAllowed = 1, - AllowedManeuvers_maneuverRightAllowed = 2, - AllowedManeuvers_maneuverUTurnAllowed = 3, - AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, - AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, - AllowedManeuvers_maneuverLaneChangeAllowed = 6, - AllowedManeuvers_maneuverNoStoppingAllowed = 7, - AllowedManeuvers_yieldAllwaysRequired = 8, - AllowedManeuvers_goWithHalt = 9, - AllowedManeuvers_caution = 10, - AllowedManeuvers_reserved1 = 11 -} e_AllowedManeuvers; - -/* AllowedManeuvers */ -typedef BIT_STRING_t AllowedManeuvers_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; -asn_struct_free_f AllowedManeuvers_free; -asn_struct_print_f AllowedManeuvers_print; -asn_constr_check_f AllowedManeuvers_constraint; -ber_type_decoder_f AllowedManeuvers_decode_ber; -der_type_encoder_f AllowedManeuvers_encode_der; -xer_type_decoder_f AllowedManeuvers_decode_xer; -xer_type_encoder_f AllowedManeuvers_encode_xer; -jer_type_encoder_f AllowedManeuvers_encode_jer; -oer_type_decoder_f AllowedManeuvers_decode_oer; -oer_type_encoder_f AllowedManeuvers_encode_oer; -per_type_decoder_f AllowedManeuvers_decode_uper; -per_type_encoder_f AllowedManeuvers_encode_uper; -per_type_decoder_f AllowedManeuvers_decode_aper; -per_type_encoder_f AllowedManeuvers_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AllowedManeuvers_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h deleted file mode 100644 index 53f9f9c72..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Altitude.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Altitude_H_ -#define _Altitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AltitudeValue.h" -#include "AltitudeConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Altitude */ -typedef struct Altitude { - AltitudeValue_t value; - AltitudeConfidence_t confidence; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Altitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Altitude; -extern asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1; -extern asn_TYPE_member_t asn_MBR_Altitude_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Altitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h deleted file mode 100644 index f50f6166c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeConfidence.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AltitudeConfidence_H_ -#define _AltitudeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AltitudeConfidence { - AltitudeConfidence_alt_000_01 = 0, - AltitudeConfidence_alt_000_02 = 1, - AltitudeConfidence_alt_000_05 = 2, - AltitudeConfidence_alt_000_10 = 3, - AltitudeConfidence_alt_000_20 = 4, - AltitudeConfidence_alt_000_50 = 5, - AltitudeConfidence_alt_001_00 = 6, - AltitudeConfidence_alt_002_00 = 7, - AltitudeConfidence_alt_005_00 = 8, - AltitudeConfidence_alt_010_00 = 9, - AltitudeConfidence_alt_020_00 = 10, - AltitudeConfidence_alt_050_00 = 11, - AltitudeConfidence_alt_100_00 = 12, - AltitudeConfidence_alt_200_00 = 13, - AltitudeConfidence_outOfRange = 14, - AltitudeConfidence_unavailable = 15 -} e_AltitudeConfidence; - -/* AltitudeConfidence */ -typedef long AltitudeConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1; -asn_struct_free_f AltitudeConfidence_free; -asn_struct_print_f AltitudeConfidence_print; -asn_constr_check_f AltitudeConfidence_constraint; -ber_type_decoder_f AltitudeConfidence_decode_ber; -der_type_encoder_f AltitudeConfidence_encode_der; -xer_type_decoder_f AltitudeConfidence_decode_xer; -xer_type_encoder_f AltitudeConfidence_encode_xer; -jer_type_encoder_f AltitudeConfidence_encode_jer; -oer_type_decoder_f AltitudeConfidence_decode_oer; -oer_type_encoder_f AltitudeConfidence_encode_oer; -per_type_decoder_f AltitudeConfidence_decode_uper; -per_type_encoder_f AltitudeConfidence_encode_uper; -per_type_decoder_f AltitudeConfidence_decode_aper; -per_type_encoder_f AltitudeConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h deleted file mode 100644 index ac43c1d27..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AltitudeValue.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AltitudeValue_H_ -#define _AltitudeValue_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AltitudeValue */ -typedef long AltitudeValue_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; -asn_struct_free_f AltitudeValue_free; -asn_struct_print_f AltitudeValue_print; -asn_constr_check_f AltitudeValue_constraint; -ber_type_decoder_f AltitudeValue_decode_ber; -der_type_encoder_f AltitudeValue_encode_der; -xer_type_decoder_f AltitudeValue_decode_xer; -xer_type_encoder_f AltitudeValue_encode_xer; -jer_type_encoder_f AltitudeValue_encode_jer; -oer_type_decoder_f AltitudeValue_decode_oer; -oer_type_encoder_f AltitudeValue_encode_oer; -per_type_decoder_f AltitudeValue_decode_uper; -per_type_encoder_f AltitudeValue_encode_uper; -per_type_decoder_f AltitudeValue_decode_aper; -per_type_encoder_f AltitudeValue_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeValue_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h deleted file mode 100644 index 007db7042..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirPressure.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AmbientAirPressure_H_ -#define _AmbientAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirPressure */ -typedef long AmbientAirPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; -asn_struct_free_f AmbientAirPressure_free; -asn_struct_print_f AmbientAirPressure_print; -asn_constr_check_f AmbientAirPressure_constraint; -ber_type_decoder_f AmbientAirPressure_decode_ber; -der_type_encoder_f AmbientAirPressure_encode_der; -xer_type_decoder_f AmbientAirPressure_decode_xer; -xer_type_encoder_f AmbientAirPressure_encode_xer; -jer_type_encoder_f AmbientAirPressure_encode_jer; -oer_type_decoder_f AmbientAirPressure_decode_oer; -oer_type_encoder_f AmbientAirPressure_encode_oer; -per_type_decoder_f AmbientAirPressure_decode_uper; -per_type_encoder_f AmbientAirPressure_encode_uper; -per_type_decoder_f AmbientAirPressure_decode_aper; -per_type_encoder_f AmbientAirPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h deleted file mode 100644 index 11935cf9f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AmbientAirTemperature.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AmbientAirTemperature_H_ -#define _AmbientAirTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirTemperature */ -typedef long AmbientAirTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; -asn_struct_free_f AmbientAirTemperature_free; -asn_struct_print_f AmbientAirTemperature_print; -asn_constr_check_f AmbientAirTemperature_constraint; -ber_type_decoder_f AmbientAirTemperature_decode_ber; -der_type_encoder_f AmbientAirTemperature_encode_der; -xer_type_decoder_f AmbientAirTemperature_decode_xer; -xer_type_encoder_f AmbientAirTemperature_encode_xer; -jer_type_encoder_f AmbientAirTemperature_encode_jer; -oer_type_decoder_f AmbientAirTemperature_decode_oer; -oer_type_encoder_f AmbientAirTemperature_encode_oer; -per_type_decoder_f AmbientAirTemperature_decode_uper; -per_type_encoder_f AmbientAirTemperature_encode_uper; -per_type_decoder_f AmbientAirTemperature_decode_aper; -per_type_encoder_f AmbientAirTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h deleted file mode 100644 index b75c1bdcd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalPropelledType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AnimalPropelledType_H_ -#define _AnimalPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalPropelledType { - AnimalPropelledType_unavailable = 0, - AnimalPropelledType_otherTypes = 1, - AnimalPropelledType_animalMounted = 2, - AnimalPropelledType_animalDrawnCarriage = 3 - /* - * Enumeration is extensible - */ -} e_AnimalPropelledType; - -/* AnimalPropelledType */ -typedef long AnimalPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1; -asn_struct_free_f AnimalPropelledType_free; -asn_struct_print_f AnimalPropelledType_print; -asn_constr_check_f AnimalPropelledType_constraint; -ber_type_decoder_f AnimalPropelledType_decode_ber; -der_type_encoder_f AnimalPropelledType_encode_der; -xer_type_decoder_f AnimalPropelledType_decode_xer; -xer_type_encoder_f AnimalPropelledType_encode_xer; -jer_type_encoder_f AnimalPropelledType_encode_jer; -oer_type_decoder_f AnimalPropelledType_decode_oer; -oer_type_encoder_f AnimalPropelledType_encode_oer; -per_type_decoder_f AnimalPropelledType_decode_uper; -per_type_encoder_f AnimalPropelledType_encode_uper; -per_type_decoder_f AnimalPropelledType_decode_aper; -per_type_encoder_f AnimalPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h deleted file mode 100644 index 986848a32..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AnimalType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AnimalType_H_ -#define _AnimalType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalType { - AnimalType_unavailable = 0, - AnimalType_serviceUse = 1, - AnimalType_pet = 2, - AnimalType_farm = 3 - /* - * Enumeration is extensible - */ -} e_AnimalType; - -/* AnimalType */ -typedef long AnimalType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AnimalType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AnimalType; -extern const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1; -asn_struct_free_f AnimalType_free; -asn_struct_print_f AnimalType_print; -asn_constr_check_f AnimalType_constraint; -ber_type_decoder_f AnimalType_decode_ber; -der_type_encoder_f AnimalType_encode_der; -xer_type_decoder_f AnimalType_decode_xer; -xer_type_encoder_f AnimalType_encode_xer; -jer_type_encoder_f AnimalType_encode_jer; -oer_type_decoder_f AnimalType_decode_oer; -oer_type_encoder_f AnimalType_encode_oer; -per_type_decoder_f AnimalType_decode_uper; -per_type_encoder_f AnimalType_encode_uper; -per_type_decoder_f AnimalType_decode_aper; -per_type_encoder_f AnimalType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h deleted file mode 100644 index 49a4a130d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntennaOffsetSet.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AntennaOffsetSet_H_ -#define _AntennaOffsetSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B12.h" -#include "Offset-B09.h" -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AntennaOffsetSet */ -typedef struct AntennaOffsetSet { - Offset_B12_t antOffsetX; - Offset_B09_t antOffsetY; - Offset_B10_t antOffsetZ; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AntennaOffsetSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; -extern asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1; -extern asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntennaOffsetSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h deleted file mode 100644 index a7b997226..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AntiLockBrakeStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AntiLockBrakeStatus_H_ -#define _AntiLockBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AntiLockBrakeStatus { - AntiLockBrakeStatus_unavailable = 0, - AntiLockBrakeStatus_off = 1, - AntiLockBrakeStatus_on = 2, - AntiLockBrakeStatus_engaged = 3 -} e_AntiLockBrakeStatus; - -/* AntiLockBrakeStatus */ -typedef long AntiLockBrakeStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; -extern const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1; -asn_struct_free_f AntiLockBrakeStatus_free; -asn_struct_print_f AntiLockBrakeStatus_print; -asn_constr_check_f AntiLockBrakeStatus_constraint; -ber_type_decoder_f AntiLockBrakeStatus_decode_ber; -der_type_encoder_f AntiLockBrakeStatus_encode_der; -xer_type_decoder_f AntiLockBrakeStatus_decode_xer; -xer_type_encoder_f AntiLockBrakeStatus_encode_xer; -jer_type_encoder_f AntiLockBrakeStatus_encode_jer; -oer_type_decoder_f AntiLockBrakeStatus_decode_oer; -oer_type_encoder_f AntiLockBrakeStatus_encode_oer; -per_type_decoder_f AntiLockBrakeStatus_decode_uper; -per_type_encoder_f AntiLockBrakeStatus_encode_uper; -per_type_decoder_f AntiLockBrakeStatus_decode_aper; -per_type_encoder_f AntiLockBrakeStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntiLockBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h deleted file mode 100644 index b3bdd88f8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ApproachID_H_ -#define _ApproachID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ApproachID */ -typedef long ApproachID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ApproachID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ApproachID; -asn_struct_free_f ApproachID_free; -asn_struct_print_f ApproachID_print; -asn_constr_check_f ApproachID_constraint; -ber_type_decoder_f ApproachID_decode_ber; -der_type_encoder_f ApproachID_encode_der; -xer_type_decoder_f ApproachID_decode_xer; -xer_type_encoder_f ApproachID_encode_xer; -jer_type_encoder_f ApproachID_encode_jer; -oer_type_decoder_f ApproachID_decode_oer; -oer_type_encoder_f ApproachID_encode_oer; -per_type_decoder_f ApproachID_decode_uper; -per_type_encoder_f ApproachID_encode_uper; -per_type_decoder_f ApproachID_decode_aper; -per_type_encoder_f ApproachID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ApproachID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h deleted file mode 100644 index e3684972d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ApproachOrLane.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "IntersectionCollision" - * found in "J2735-IntersectionCollision.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ApproachOrLane_H_ -#define _ApproachOrLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ApproachID.h" -#include "LaneID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ApproachOrLane_PR { - ApproachOrLane_PR_NOTHING, /* No components present */ - ApproachOrLane_PR_approach, - ApproachOrLane_PR_lane -} ApproachOrLane_PR; - -/* ApproachOrLane */ -typedef struct ApproachOrLane { - ApproachOrLane_PR present; - union ApproachOrLane_u { - ApproachID_t approach; - LaneID_t lane; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ApproachOrLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ApproachOrLane; -extern asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ApproachOrLane_1[2]; -extern asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ApproachOrLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h deleted file mode 100644 index 300cb2804..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Attachment.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Attachment_H_ -#define _Attachment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Attachment { - Attachment_unavailable = 0, - Attachment_stroller = 1, - Attachment_bicycleTrailer = 2, - Attachment_cart = 3, - Attachment_wheelchair = 4, - Attachment_otherWalkAssistAttachments = 5, - Attachment_pet = 6 - /* - * Enumeration is extensible - */ -} e_Attachment; - -/* Attachment */ -typedef long Attachment_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Attachment_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Attachment; -extern const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1; -asn_struct_free_f Attachment_free; -asn_struct_print_f Attachment_print; -asn_constr_check_f Attachment_constraint; -ber_type_decoder_f Attachment_decode_ber; -der_type_encoder_f Attachment_encode_der; -xer_type_decoder_f Attachment_decode_xer; -xer_type_encoder_f Attachment_encode_xer; -jer_type_encoder_f Attachment_encode_jer; -oer_type_decoder_f Attachment_decode_oer; -oer_type_encoder_f Attachment_encode_oer; -per_type_decoder_f Attachment_decode_uper; -per_type_encoder_f Attachment_encode_uper; -per_type_decoder_f Attachment_decode_aper; -per_type_encoder_f Attachment_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Attachment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h deleted file mode 100644 index df9053a2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AttachmentRadius.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AttachmentRadius_H_ -#define _AttachmentRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AttachmentRadius */ -typedef long AttachmentRadius_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; -asn_struct_free_f AttachmentRadius_free; -asn_struct_print_f AttachmentRadius_print; -asn_constr_check_f AttachmentRadius_constraint; -ber_type_decoder_f AttachmentRadius_decode_ber; -der_type_encoder_f AttachmentRadius_encode_der; -xer_type_decoder_f AttachmentRadius_decode_xer; -xer_type_encoder_f AttachmentRadius_encode_xer; -jer_type_encoder_f AttachmentRadius_encode_jer; -oer_type_decoder_f AttachmentRadius_decode_oer; -oer_type_encoder_f AttachmentRadius_encode_oer; -per_type_decoder_f AttachmentRadius_decode_uper; -per_type_encoder_f AttachmentRadius_encode_uper; -per_type_decoder_f AttachmentRadius_decode_aper; -per_type_encoder_f AttachmentRadius_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AttachmentRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h deleted file mode 100644 index 01f47d009..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AuxiliaryBrakeStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AuxiliaryBrakeStatus_H_ -#define _AuxiliaryBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AuxiliaryBrakeStatus { - AuxiliaryBrakeStatus_unavailable = 0, - AuxiliaryBrakeStatus_off = 1, - AuxiliaryBrakeStatus_on = 2, - AuxiliaryBrakeStatus_reserved = 3 -} e_AuxiliaryBrakeStatus; - -/* AuxiliaryBrakeStatus */ -typedef long AuxiliaryBrakeStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; -extern const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1; -asn_struct_free_f AuxiliaryBrakeStatus_free; -asn_struct_print_f AuxiliaryBrakeStatus_print; -asn_constr_check_f AuxiliaryBrakeStatus_constraint; -ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; -der_type_encoder_f AuxiliaryBrakeStatus_encode_der; -xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; -xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; -jer_type_encoder_f AuxiliaryBrakeStatus_encode_jer; -oer_type_decoder_f AuxiliaryBrakeStatus_decode_oer; -oer_type_encoder_f AuxiliaryBrakeStatus_encode_oer; -per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; -per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; -per_type_decoder_f AuxiliaryBrakeStatus_decode_aper; -per_type_encoder_f AuxiliaryBrakeStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AuxiliaryBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h deleted file mode 100644 index bec5fc3be..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleLocation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AxleLocation_H_ -#define _AxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleLocation */ -typedef long AxleLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AxleLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; -asn_struct_free_f AxleLocation_free; -asn_struct_print_f AxleLocation_print; -asn_constr_check_f AxleLocation_constraint; -ber_type_decoder_f AxleLocation_decode_ber; -der_type_encoder_f AxleLocation_encode_der; -xer_type_decoder_f AxleLocation_decode_xer; -xer_type_encoder_f AxleLocation_encode_xer; -jer_type_encoder_f AxleLocation_encode_jer; -oer_type_decoder_f AxleLocation_decode_oer; -oer_type_encoder_f AxleLocation_encode_oer; -per_type_decoder_f AxleLocation_decode_uper; -per_type_encoder_f AxleLocation_encode_uper; -per_type_decoder_f AxleLocation_decode_aper; -per_type_encoder_f AxleLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h deleted file mode 100644 index 9e5c2ffbf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeight.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AxleWeight_H_ -#define _AxleWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleWeight */ -typedef long AxleWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AxleWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; -asn_struct_free_f AxleWeight_free; -asn_struct_print_f AxleWeight_print; -asn_constr_check_f AxleWeight_constraint; -ber_type_decoder_f AxleWeight_decode_ber; -der_type_encoder_f AxleWeight_encode_der; -xer_type_decoder_f AxleWeight_decode_xer; -xer_type_encoder_f AxleWeight_encode_xer; -jer_type_encoder_f AxleWeight_encode_jer; -oer_type_decoder_f AxleWeight_decode_oer; -oer_type_encoder_f AxleWeight_encode_oer; -per_type_decoder_f AxleWeight_decode_uper; -per_type_encoder_f AxleWeight_encode_uper; -per_type_decoder_f AxleWeight_decode_aper; -per_type_encoder_f AxleWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h deleted file mode 100644 index aaf56192c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AxleWeightList_H_ -#define _AxleWeightList_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 AxleWeightSet; - -/* AxleWeightList */ -typedef struct AxleWeightList { - A_SEQUENCE_OF(struct AxleWeightSet) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AxleWeightList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleWeightList; -extern asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1; -extern asn_TYPE_member_t asn_MBR_AxleWeightList_1[1]; -extern asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeightList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h deleted file mode 100644 index 1e2e6343d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/AxleWeightSet.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _AxleWeightSet_H_ -#define _AxleWeightSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AxleLocation.h" -#include "AxleWeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleWeightSet */ -typedef struct AxleWeightSet { - AxleLocation_t *location; /* OPTIONAL */ - AxleWeight_t *weight; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AxleWeightSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleWeightSet; -extern asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1; -extern asn_TYPE_member_t asn_MBR_AxleWeightSet_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeightSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h deleted file mode 100644 index e755fe9f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BIT_STRING.h +++ /dev/null @@ -1,75 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BIT_STRING_H_ -#define _BIT_STRING_H_ - -#include /* Some help from OCTET STRING */ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct BIT_STRING_s { - uint8_t *buf; /* BIT STRING body */ - size_t size; /* Size of the above buffer */ - - int bits_unused;/* Unused trailing bits in the last octet (0..7) */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} BIT_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; -extern asn_TYPE_operation_t asn_OP_BIT_STRING; -extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs; - -#define BIT_STRING_free OCTET_STRING_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f BIT_STRING_print; /* Human-readable output */ -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f BIT_STRING_compare; - -asn_constr_check_f BIT_STRING_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define BIT_STRING_decode_ber OCTET_STRING_decode_ber -#define BIT_STRING_encode_der OCTET_STRING_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary -xer_type_encoder_f BIT_STRING_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f BIT_STRING_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f BIT_STRING_decode_oer; -oer_type_encoder_f BIT_STRING_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f BIT_STRING_decode_uper; -per_type_encoder_f BIT_STRING_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define BIT_STRING_decode_aper OCTET_STRING_decode_aper -#define BIT_STRING_encode_aper OCTET_STRING_encode_aper -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f BIT_STRING_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -const BIT_STRING_t *BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp); - -#ifdef __cplusplus -} -#endif - -#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h deleted file mode 100644 index 2cbbe7101..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BOOLEAN.h +++ /dev/null @@ -1,70 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BOOLEAN_H_ -#define _BOOLEAN_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The underlying integer may contain various values, but everything - * non-zero is capped to 0xff by the DER encoder. The BER decoder may - * yield non-zero values different from 1, beware. - */ -typedef unsigned BOOLEAN_t; - -extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; -extern asn_TYPE_operation_t asn_OP_BOOLEAN; - -asn_struct_free_f BOOLEAN_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f BOOLEAN_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f BOOLEAN_compare; - -#define BOOLEAN_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f BOOLEAN_decode_ber; -der_type_encoder_f BOOLEAN_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f BOOLEAN_decode_xer; -xer_type_encoder_f BOOLEAN_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f BOOLEAN_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f BOOLEAN_decode_oer; -oer_type_encoder_f BOOLEAN_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f BOOLEAN_decode_uper; -per_type_encoder_f BOOLEAN_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f BOOLEAN_decode_aper; -per_type_encoder_f BOOLEAN_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f BOOLEAN_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h deleted file mode 100644 index 3f64b61e7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BSMcoreData.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BSMcoreData_H_ -#define _BSMcoreData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "TemporaryID.h" -#include "DSecond.h" -#include "Latitude.h" -#include "Longitude.h" -#include "Common_Elevation.h" -#include "PositionalAccuracy.h" -#include "TransmissionState.h" -#include "Speed.h" -#include "Heading.h" -#include "SteeringWheelAngle.h" -#include "AccelerationSet4Way.h" -#include "BrakeSystemStatus.h" -#include "VehicleSize.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BSMcoreData */ -typedef struct BSMcoreData { - Common_MsgCount_t msgCnt; - TemporaryID_t id; - DSecond_t secMark; - Latitude_t lat; - Longitude_t Long; - Common_Elevation_t elev; - PositionalAccuracy_t accuracy; - TransmissionState_t transmission; - Speed_t speed; - Heading_t heading; - SteeringWheelAngle_t angle; - AccelerationSet4Way_t accelSet; - BrakeSystemStatus_t brakes; - VehicleSize_t size; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BSMcoreData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BSMcoreData; -extern asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1; -extern asn_TYPE_member_t asn_MBR_BSMcoreData_1[14]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BSMcoreData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h deleted file mode 100644 index 025a9841a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicSafetyMessage.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BasicSafetyMessage_H_ -#define _BasicSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BSMcoreData.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BSMpartIIExtension; -struct Reg_BasicSafetyMessage; - -/* BasicSafetyMessage */ -typedef struct BasicSafetyMessage { - BSMcoreData_t coreData; - struct BasicSafetyMessage__partII { - A_SEQUENCE_OF(struct BSMpartIIExtension) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *partII; - struct BasicSafetyMessage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} BasicSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BasicSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h deleted file mode 100644 index c24dc93e7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleClass.h +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BasicVehicleClass_H_ -#define _BasicVehicleClass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BasicVehicleClass */ -typedef long BasicVehicleClass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass; -asn_struct_free_f BasicVehicleClass_free; -asn_struct_print_f BasicVehicleClass_print; -asn_constr_check_f BasicVehicleClass_constraint; -ber_type_decoder_f BasicVehicleClass_decode_ber; -der_type_encoder_f BasicVehicleClass_encode_der; -xer_type_decoder_f BasicVehicleClass_decode_xer; -xer_type_encoder_f BasicVehicleClass_encode_xer; -jer_type_encoder_f BasicVehicleClass_encode_jer; -oer_type_decoder_f BasicVehicleClass_decode_oer; -oer_type_encoder_f BasicVehicleClass_encode_oer; -per_type_decoder_f BasicVehicleClass_decode_uper; -per_type_encoder_f BasicVehicleClass_encode_uper; -per_type_decoder_f BasicVehicleClass_decode_aper; -per_type_encoder_f BasicVehicleClass_encode_aper; -#define BasicVehicleClass_unknownVehicleClass ((BasicVehicleClass_t)0) -#define BasicVehicleClass_specialVehicleClass ((BasicVehicleClass_t)1) -#define BasicVehicleClass_passenger_Vehicle_TypeUnknown ((BasicVehicleClass_t)10) -#define BasicVehicleClass_passenger_Vehicle_TypeOther ((BasicVehicleClass_t)11) -#define BasicVehicleClass_lightTruck_Vehicle_TypeUnknown ((BasicVehicleClass_t)20) -#define BasicVehicleClass_lightTruck_Vehicle_TypeOther ((BasicVehicleClass_t)21) -#define BasicVehicleClass_truck_Vehicle_TypeUnknown ((BasicVehicleClass_t)25) -#define BasicVehicleClass_truck_Vehicle_TypeOther ((BasicVehicleClass_t)26) -#define BasicVehicleClass_truck_axleCnt2 ((BasicVehicleClass_t)27) -#define BasicVehicleClass_truck_axleCnt3 ((BasicVehicleClass_t)28) -#define BasicVehicleClass_truck_axleCnt4 ((BasicVehicleClass_t)29) -#define BasicVehicleClass_truck_axleCnt4Trailer ((BasicVehicleClass_t)30) -#define BasicVehicleClass_truck_axleCnt5Trailer ((BasicVehicleClass_t)31) -#define BasicVehicleClass_truck_axleCnt6Trailer ((BasicVehicleClass_t)32) -#define BasicVehicleClass_truck_axleCnt5MultiTrailer ((BasicVehicleClass_t)33) -#define BasicVehicleClass_truck_axleCnt6MultiTrailer ((BasicVehicleClass_t)34) -#define BasicVehicleClass_truck_axleCnt7MultiTrailer ((BasicVehicleClass_t)35) -#define BasicVehicleClass_motorcycle_TypeUnknown ((BasicVehicleClass_t)40) -#define BasicVehicleClass_motorcycle_TypeOther ((BasicVehicleClass_t)41) -#define BasicVehicleClass_motorcycle_Cruiser_Standard ((BasicVehicleClass_t)42) -#define BasicVehicleClass_motorcycle_SportUnclad ((BasicVehicleClass_t)43) -#define BasicVehicleClass_motorcycle_SportTouring ((BasicVehicleClass_t)44) -#define BasicVehicleClass_motorcycle_SuperSport ((BasicVehicleClass_t)45) -#define BasicVehicleClass_motorcycle_Touring ((BasicVehicleClass_t)46) -#define BasicVehicleClass_motorcycle_Trike ((BasicVehicleClass_t)47) -#define BasicVehicleClass_motorcycle_wPassengers ((BasicVehicleClass_t)48) -#define BasicVehicleClass_transit_TypeUnknown ((BasicVehicleClass_t)50) -#define BasicVehicleClass_transit_TypeOther ((BasicVehicleClass_t)51) -#define BasicVehicleClass_transit_BRT ((BasicVehicleClass_t)52) -#define BasicVehicleClass_transit_ExpressBus ((BasicVehicleClass_t)53) -#define BasicVehicleClass_transit_LocalBus ((BasicVehicleClass_t)54) -#define BasicVehicleClass_transit_SchoolBus ((BasicVehicleClass_t)55) -#define BasicVehicleClass_transit_FixedGuideway ((BasicVehicleClass_t)56) -#define BasicVehicleClass_transit_Paratransit ((BasicVehicleClass_t)57) -#define BasicVehicleClass_transit_Paratransit_Ambulance ((BasicVehicleClass_t)58) -#define BasicVehicleClass_emergency_TypeUnknown ((BasicVehicleClass_t)60) -#define BasicVehicleClass_emergency_TypeOther ((BasicVehicleClass_t)61) -#define BasicVehicleClass_emergency_Fire_Light_Vehicle ((BasicVehicleClass_t)62) -#define BasicVehicleClass_emergency_Fire_Heavy_Vehicle ((BasicVehicleClass_t)63) -#define BasicVehicleClass_emergency_Fire_Paramedic_Vehicle ((BasicVehicleClass_t)64) -#define BasicVehicleClass_emergency_Fire_Ambulance_Vehicle ((BasicVehicleClass_t)65) -#define BasicVehicleClass_emergency_Police_Light_Vehicle ((BasicVehicleClass_t)66) -#define BasicVehicleClass_emergency_Police_Heavy_Vehicle ((BasicVehicleClass_t)67) -#define BasicVehicleClass_emergency_Other_Responder ((BasicVehicleClass_t)68) -#define BasicVehicleClass_emergency_Other_Ambulance ((BasicVehicleClass_t)69) -#define BasicVehicleClass_otherTraveler_TypeUnknown ((BasicVehicleClass_t)80) -#define BasicVehicleClass_otherTraveler_TypeOther ((BasicVehicleClass_t)81) -#define BasicVehicleClass_otherTraveler_Pedestrian ((BasicVehicleClass_t)82) -#define BasicVehicleClass_otherTraveler_Visually_Disabled ((BasicVehicleClass_t)83) -#define BasicVehicleClass_otherTraveler_Physically_Disabled ((BasicVehicleClass_t)84) -#define BasicVehicleClass_otherTraveler_Bicycle ((BasicVehicleClass_t)85) -#define BasicVehicleClass_otherTraveler_Vulnerable_Roadworker ((BasicVehicleClass_t)86) -#define BasicVehicleClass_infrastructure_TypeUnknown ((BasicVehicleClass_t)90) -#define BasicVehicleClass_infrastructure_Fixed ((BasicVehicleClass_t)91) -#define BasicVehicleClass_infrastructure_Movable ((BasicVehicleClass_t)92) -#define BasicVehicleClass_equipped_CargoTrailer ((BasicVehicleClass_t)93) - -#ifdef __cplusplus -} -#endif - -#endif /* _BasicVehicleClass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h deleted file mode 100644 index a29f6322e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BasicVehicleRole.h +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BasicVehicleRole_H_ -#define _BasicVehicleRole_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BasicVehicleRole { - BasicVehicleRole_basicVehicle = 0, - BasicVehicleRole_publicTransport = 1, - BasicVehicleRole_specialTransport = 2, - BasicVehicleRole_dangerousGoods = 3, - BasicVehicleRole_roadWork = 4, - BasicVehicleRole_roadRescue = 5, - BasicVehicleRole_emergency = 6, - BasicVehicleRole_safetyCar = 7, - BasicVehicleRole_none_unknown = 8, - BasicVehicleRole_truck = 9, - BasicVehicleRole_motorcycle = 10, - BasicVehicleRole_roadSideSource = 11, - BasicVehicleRole_police = 12, - BasicVehicleRole_fire = 13, - BasicVehicleRole_ambulance = 14, - BasicVehicleRole_dot = 15, - BasicVehicleRole_transit = 16, - BasicVehicleRole_slowMoving = 17, - BasicVehicleRole_stopNgo = 18, - BasicVehicleRole_cyclist = 19, - BasicVehicleRole_pedestrian = 20, - BasicVehicleRole_nonMotorized = 21, - BasicVehicleRole_military = 22 - /* - * Enumeration is extensible - */ -} e_BasicVehicleRole; - -/* BasicVehicleRole */ -typedef long BasicVehicleRole_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole; -extern const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1; -asn_struct_free_f BasicVehicleRole_free; -asn_struct_print_f BasicVehicleRole_print; -asn_constr_check_f BasicVehicleRole_constraint; -ber_type_decoder_f BasicVehicleRole_decode_ber; -der_type_encoder_f BasicVehicleRole_encode_der; -xer_type_decoder_f BasicVehicleRole_decode_xer; -xer_type_encoder_f BasicVehicleRole_encode_xer; -jer_type_encoder_f BasicVehicleRole_encode_jer; -oer_type_decoder_f BasicVehicleRole_decode_oer; -oer_type_encoder_f BasicVehicleRole_encode_oer; -per_type_decoder_f BasicVehicleRole_decode_uper; -per_type_encoder_f BasicVehicleRole_encode_uper; -per_type_decoder_f BasicVehicleRole_decode_aper; -per_type_encoder_f BasicVehicleRole_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BasicVehicleRole_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h deleted file mode 100644 index b40b95442..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedPressure.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BrakeAppliedPressure_H_ -#define _BrakeAppliedPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedPressure { - BrakeAppliedPressure_unavailable = 0, - BrakeAppliedPressure_minPressure = 1, - BrakeAppliedPressure_bkLvl_2 = 2, - BrakeAppliedPressure_bkLvl_3 = 3, - BrakeAppliedPressure_bkLvl_4 = 4, - BrakeAppliedPressure_bkLvl_5 = 5, - BrakeAppliedPressure_bkLvl_6 = 6, - BrakeAppliedPressure_bkLvl_7 = 7, - BrakeAppliedPressure_bkLvl_8 = 8, - BrakeAppliedPressure_bkLvl_9 = 9, - BrakeAppliedPressure_bkLvl_10 = 10, - BrakeAppliedPressure_bkLvl_11 = 11, - BrakeAppliedPressure_bkLvl_12 = 12, - BrakeAppliedPressure_bkLvl_13 = 13, - BrakeAppliedPressure_bkLvl_14 = 14, - BrakeAppliedPressure_maxPressure = 15 -} e_BrakeAppliedPressure; - -/* BrakeAppliedPressure */ -typedef long BrakeAppliedPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; -extern const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1; -asn_struct_free_f BrakeAppliedPressure_free; -asn_struct_print_f BrakeAppliedPressure_print; -asn_constr_check_f BrakeAppliedPressure_constraint; -ber_type_decoder_f BrakeAppliedPressure_decode_ber; -der_type_encoder_f BrakeAppliedPressure_encode_der; -xer_type_decoder_f BrakeAppliedPressure_decode_xer; -xer_type_encoder_f BrakeAppliedPressure_encode_xer; -jer_type_encoder_f BrakeAppliedPressure_encode_jer; -oer_type_decoder_f BrakeAppliedPressure_decode_oer; -oer_type_encoder_f BrakeAppliedPressure_encode_oer; -per_type_decoder_f BrakeAppliedPressure_decode_uper; -per_type_encoder_f BrakeAppliedPressure_encode_uper; -per_type_decoder_f BrakeAppliedPressure_decode_aper; -per_type_encoder_f BrakeAppliedPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h deleted file mode 100644 index 8cefc4b84..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeAppliedStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BrakeAppliedStatus_H_ -#define _BrakeAppliedStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedStatus { - BrakeAppliedStatus_unavailable = 0, - BrakeAppliedStatus_leftFront = 1, - BrakeAppliedStatus_leftRear = 2, - BrakeAppliedStatus_rightFront = 3, - BrakeAppliedStatus_rightRear = 4 -} e_BrakeAppliedStatus; - -/* BrakeAppliedStatus */ -typedef BIT_STRING_t BrakeAppliedStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; -asn_struct_free_f BrakeAppliedStatus_free; -asn_struct_print_f BrakeAppliedStatus_print; -asn_constr_check_f BrakeAppliedStatus_constraint; -ber_type_decoder_f BrakeAppliedStatus_decode_ber; -der_type_encoder_f BrakeAppliedStatus_encode_der; -xer_type_decoder_f BrakeAppliedStatus_decode_xer; -xer_type_encoder_f BrakeAppliedStatus_encode_xer; -jer_type_encoder_f BrakeAppliedStatus_encode_jer; -oer_type_decoder_f BrakeAppliedStatus_decode_oer; -oer_type_encoder_f BrakeAppliedStatus_encode_oer; -per_type_decoder_f BrakeAppliedStatus_decode_uper; -per_type_encoder_f BrakeAppliedStatus_encode_uper; -per_type_decoder_f BrakeAppliedStatus_decode_aper; -per_type_encoder_f BrakeAppliedStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h deleted file mode 100644 index 1fa8f9eac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeBoostApplied.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BrakeBoostApplied_H_ -#define _BrakeBoostApplied_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeBoostApplied { - BrakeBoostApplied_unavailable = 0, - BrakeBoostApplied_off = 1, - BrakeBoostApplied_on = 2 -} e_BrakeBoostApplied; - -/* BrakeBoostApplied */ -typedef long BrakeBoostApplied_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; -extern const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1; -asn_struct_free_f BrakeBoostApplied_free; -asn_struct_print_f BrakeBoostApplied_print; -asn_constr_check_f BrakeBoostApplied_constraint; -ber_type_decoder_f BrakeBoostApplied_decode_ber; -der_type_encoder_f BrakeBoostApplied_encode_der; -xer_type_decoder_f BrakeBoostApplied_decode_xer; -xer_type_encoder_f BrakeBoostApplied_encode_xer; -jer_type_encoder_f BrakeBoostApplied_encode_jer; -oer_type_decoder_f BrakeBoostApplied_decode_oer; -oer_type_encoder_f BrakeBoostApplied_encode_oer; -per_type_decoder_f BrakeBoostApplied_decode_uper; -per_type_encoder_f BrakeBoostApplied_encode_uper; -per_type_decoder_f BrakeBoostApplied_decode_aper; -per_type_encoder_f BrakeBoostApplied_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeBoostApplied_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h deleted file mode 100644 index 9702ff381..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BrakeSystemStatus.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BrakeSystemStatus_H_ -#define _BrakeSystemStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BrakeAppliedStatus.h" -#include "TractionControlStatus.h" -#include "AntiLockBrakeStatus.h" -#include "StabilityControlStatus.h" -#include "BrakeBoostApplied.h" -#include "AuxiliaryBrakeStatus.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BrakeSystemStatus */ -typedef struct BrakeSystemStatus { - BrakeAppliedStatus_t wheelBrakes; - TractionControlStatus_t traction; - AntiLockBrakeStatus_t abs; - StabilityControlStatus_t scs; - BrakeBoostApplied_t brakeBoost; - AuxiliaryBrakeStatus_t auxBrakes; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BrakeSystemStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeSystemStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h deleted file mode 100644 index 824df774c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeight.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BumperHeight_H_ -#define _BumperHeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeight */ -typedef long BumperHeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BumperHeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BumperHeight; -asn_struct_free_f BumperHeight_free; -asn_struct_print_f BumperHeight_print; -asn_constr_check_f BumperHeight_constraint; -ber_type_decoder_f BumperHeight_decode_ber; -der_type_encoder_f BumperHeight_encode_der; -xer_type_decoder_f BumperHeight_decode_xer; -xer_type_encoder_f BumperHeight_encode_xer; -jer_type_encoder_f BumperHeight_encode_jer; -oer_type_decoder_f BumperHeight_decode_oer; -oer_type_encoder_f BumperHeight_encode_oer; -per_type_decoder_f BumperHeight_decode_uper; -per_type_encoder_f BumperHeight_encode_uper; -per_type_decoder_f BumperHeight_decode_aper; -per_type_encoder_f BumperHeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h deleted file mode 100644 index b4b95b653..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/BumperHeights.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _BumperHeights_H_ -#define _BumperHeights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BumperHeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeights */ -typedef struct BumperHeights { - BumperHeight_t front; - BumperHeight_t rear; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BumperHeights_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; -extern asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1; -extern asn_TYPE_member_t asn_MBR_BumperHeights_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h deleted file mode 100644 index 71b20e206..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/CargoWeight.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _CargoWeight_H_ -#define _CargoWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CargoWeight */ -typedef long CargoWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CargoWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; -asn_struct_free_f CargoWeight_free; -asn_struct_print_f CargoWeight_print; -asn_constr_check_f CargoWeight_constraint; -ber_type_decoder_f CargoWeight_decode_ber; -der_type_encoder_f CargoWeight_encode_der; -xer_type_decoder_f CargoWeight_decode_xer; -xer_type_encoder_f CargoWeight_encode_xer; -jer_type_encoder_f CargoWeight_encode_jer; -oer_type_decoder_f CargoWeight_decode_oer; -oer_type_encoder_f CargoWeight_encode_oer; -per_type_decoder_f CargoWeight_decode_uper; -per_type_encoder_f CargoWeight_encode_uper; -per_type_decoder_f CargoWeight_decode_aper; -per_type_encoder_f CargoWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CargoWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h deleted file mode 100644 index 5a8858540..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Circle.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Circle_H_ -#define _Circle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "Radius-B12.h" -#include "DistanceUnits.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Circle */ -typedef struct Circle { - Position3D_t center; - Radius_B12_t radius; - DistanceUnits_t units; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Circle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Circle; -extern asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1; -extern asn_TYPE_member_t asn_MBR_Circle_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Circle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h deleted file mode 100644 index a1a741ee7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoarseHeading.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _CoarseHeading_H_ -#define _CoarseHeading_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CoarseHeading */ -typedef long CoarseHeading_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CoarseHeading; -asn_struct_free_f CoarseHeading_free; -asn_struct_print_f CoarseHeading_print; -asn_constr_check_f CoarseHeading_constraint; -ber_type_decoder_f CoarseHeading_decode_ber; -der_type_encoder_f CoarseHeading_encode_der; -xer_type_decoder_f CoarseHeading_decode_xer; -xer_type_encoder_f CoarseHeading_encode_xer; -jer_type_encoder_f CoarseHeading_encode_jer; -oer_type_decoder_f CoarseHeading_decode_oer; -oer_type_encoder_f CoarseHeading_encode_oer; -per_type_decoder_f CoarseHeading_decode_uper; -per_type_encoder_f CoarseHeading_encode_uper; -per_type_decoder_f CoarseHeading_decode_aper; -per_type_encoder_f CoarseHeading_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CoarseHeading_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h deleted file mode 100644 index 1732b87f3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/CodeWord.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _CodeWord_H_ -#define _CodeWord_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CodeWord */ -typedef OCTET_STRING_t CodeWord_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CodeWord; -asn_struct_free_f CodeWord_free; -asn_struct_print_f CodeWord_print; -asn_constr_check_f CodeWord_constraint; -ber_type_decoder_f CodeWord_decode_ber; -der_type_encoder_f CodeWord_encode_der; -xer_type_decoder_f CodeWord_decode_xer; -xer_type_encoder_f CodeWord_encode_xer; -jer_type_encoder_f CodeWord_encode_jer; -oer_type_decoder_f CodeWord_decode_oer; -oer_type_encoder_f CodeWord_encode_oer; -per_type_decoder_f CodeWord_decode_uper; -per_type_encoder_f CodeWord_encode_uper; -per_type_decoder_f CodeWord_decode_aper; -per_type_encoder_f CodeWord_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CodeWord_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h deleted file mode 100644 index 2e43875ec..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/CoefficientOfFriction.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _CoefficientOfFriction_H_ -#define _CoefficientOfFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CoefficientOfFriction */ -typedef long CoefficientOfFriction_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; -asn_struct_free_f CoefficientOfFriction_free; -asn_struct_print_f CoefficientOfFriction_print; -asn_constr_check_f CoefficientOfFriction_constraint; -ber_type_decoder_f CoefficientOfFriction_decode_ber; -der_type_encoder_f CoefficientOfFriction_encode_der; -xer_type_decoder_f CoefficientOfFriction_decode_xer; -xer_type_encoder_f CoefficientOfFriction_encode_xer; -jer_type_encoder_f CoefficientOfFriction_encode_jer; -oer_type_decoder_f CoefficientOfFriction_decode_oer; -oer_type_encoder_f CoefficientOfFriction_encode_oer; -per_type_decoder_f CoefficientOfFriction_decode_uper; -per_type_encoder_f CoefficientOfFriction_encode_uper; -per_type_decoder_f CoefficientOfFriction_decode_aper; -per_type_encoder_f CoefficientOfFriction_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CoefficientOfFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h deleted file mode 100644 index 9a5948b53..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/CommonSafetyRequest.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _CommonSafetyRequest_H_ -#define _CommonSafetyRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "Common_MsgCount.h" -#include "TemporaryID.h" -#include "RequestedItemList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_CommonSafetyRequest; - -/* CommonSafetyRequest */ -typedef struct CommonSafetyRequest { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - Common_MsgCount_t *msgCnt; /* OPTIONAL */ - TemporaryID_t *id; /* OPTIONAL */ - RequestedItemList_t requests; - struct CommonSafetyRequest__regional { - A_SEQUENCE_OF(struct Reg_CommonSafetyRequest) 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; -} CommonSafetyRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _CommonSafetyRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h deleted file mode 100644 index b8803c38f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Angle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Common_Angle_H_ -#define _Common_Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Common_Angle */ -typedef long Common_Angle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Common_Angle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Common_Angle; -asn_struct_free_f Common_Angle_free; -asn_struct_print_f Common_Angle_print; -asn_constr_check_f Common_Angle_constraint; -ber_type_decoder_f Common_Angle_decode_ber; -der_type_encoder_f Common_Angle_encode_der; -xer_type_decoder_f Common_Angle_decode_xer; -xer_type_encoder_f Common_Angle_encode_xer; -jer_type_encoder_f Common_Angle_encode_jer; -oer_type_decoder_f Common_Angle_decode_oer; -oer_type_encoder_f Common_Angle_encode_oer; -per_type_decoder_f Common_Angle_decode_uper; -per_type_encoder_f Common_Angle_encode_uper; -per_type_decoder_f Common_Angle_decode_aper; -per_type_encoder_f Common_Angle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Common_Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h deleted file mode 100644 index 99b55a74a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_Elevation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Common_Elevation_H_ -#define _Common_Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Common_Elevation */ -typedef long Common_Elevation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Common_Elevation; -asn_struct_free_f Common_Elevation_free; -asn_struct_print_f Common_Elevation_print; -asn_constr_check_f Common_Elevation_constraint; -ber_type_decoder_f Common_Elevation_decode_ber; -der_type_encoder_f Common_Elevation_encode_der; -xer_type_decoder_f Common_Elevation_decode_xer; -xer_type_encoder_f Common_Elevation_encode_xer; -jer_type_encoder_f Common_Elevation_encode_jer; -oer_type_decoder_f Common_Elevation_decode_oer; -oer_type_encoder_f Common_Elevation_encode_oer; -per_type_decoder_f Common_Elevation_decode_uper; -per_type_encoder_f Common_Elevation_encode_uper; -per_type_decoder_f Common_Elevation_decode_aper; -per_type_encoder_f Common_Elevation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Common_Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h deleted file mode 100644 index 28557855e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Common_MsgCount.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Common_MsgCount_H_ -#define _Common_MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Common_MsgCount */ -typedef long Common_MsgCount_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Common_MsgCount; -asn_struct_free_f Common_MsgCount_free; -asn_struct_print_f Common_MsgCount_print; -asn_constr_check_f Common_MsgCount_constraint; -ber_type_decoder_f Common_MsgCount_decode_ber; -der_type_encoder_f Common_MsgCount_encode_der; -xer_type_decoder_f Common_MsgCount_decode_xer; -xer_type_encoder_f Common_MsgCount_encode_xer; -jer_type_encoder_f Common_MsgCount_encode_jer; -oer_type_decoder_f Common_MsgCount_decode_oer; -oer_type_encoder_f Common_MsgCount_encode_oer; -per_type_decoder_f Common_MsgCount_decode_uper; -per_type_encoder_f Common_MsgCount_encode_uper; -per_type_decoder_f Common_MsgCount_decode_aper; -per_type_encoder_f Common_MsgCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Common_MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h deleted file mode 100644 index c45278d3c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ComputedLane.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ComputedLane_H_ -#define _ComputedLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "Common_Angle.h" -#include "Scale-B12.h" -#include "DrivenLineOffsetSm.h" -#include "DrivenLineOffsetLg.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ComputedLane__offsetXaxis_PR { - ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetXaxis_PR_small, - ComputedLane__offsetXaxis_PR_large -} ComputedLane__offsetXaxis_PR; -typedef enum ComputedLane__offsetYaxis_PR { - ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetYaxis_PR_small, - ComputedLane__offsetYaxis_PR_large -} ComputedLane__offsetYaxis_PR; - -/* Forward declarations */ -struct Reg_ComputedLane; - -/* ComputedLane */ -typedef struct ComputedLane { - LaneID_t referenceLaneId; - struct ComputedLane__offsetXaxis { - ComputedLane__offsetXaxis_PR present; - union ComputedLane__offsetXaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetXaxis; - struct ComputedLane__offsetYaxis { - ComputedLane__offsetYaxis_PR present; - union ComputedLane__offsetYaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetYaxis; - Common_Angle_t *rotateXY; /* OPTIONAL */ - Scale_B12_t *scaleXaxis; /* OPTIONAL */ - Scale_B12_t *scaleYaxis; /* OPTIONAL */ - struct ComputedLane__regional { - A_SEQUENCE_OF(struct Reg_ComputedLane) 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; -} ComputedLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; -extern asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ComputedLane_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ComputedLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h deleted file mode 100644 index 2dcc6bef1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Confidence.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Confidence_H_ -#define _Confidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Confidence */ -typedef long Confidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Confidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Confidence; -asn_struct_free_f Confidence_free; -asn_struct_print_f Confidence_print; -asn_constr_check_f Confidence_constraint; -ber_type_decoder_f Confidence_decode_ber; -der_type_encoder_f Confidence_encode_der; -xer_type_decoder_f Confidence_decode_xer; -xer_type_encoder_f Confidence_encode_xer; -jer_type_encoder_f Confidence_encode_jer; -oer_type_decoder_f Confidence_decode_oer; -oer_type_encoder_f Confidence_encode_oer; -per_type_decoder_f Confidence_decode_uper; -per_type_encoder_f Confidence_encode_uper; -per_type_decoder_f Confidence_decode_aper; -per_type_encoder_f Confidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Confidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h deleted file mode 100644 index d75c01021..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConfidenceSet.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ConfidenceSet_H_ -#define _ConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeConfidence.h" -#include "SteeringWheelAngleConfidence.h" -#include "HeadingConfidence.h" -#include "ThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelSteerYawRateConfidence; -struct SpeedandHeadingandThrottleConfidence; -struct PositionConfidenceSet; - -/* ConfidenceSet */ -typedef struct ConfidenceSet { - struct AccelSteerYawRateConfidence *accelConfidence; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ - TimeConfidence_t *timeConfidence; /* OPTIONAL */ - struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ - SteeringWheelAngleConfidence_t *steerConfidence; /* OPTIONAL */ - HeadingConfidence_t *headingConfidence; /* OPTIONAL */ - ThrottleConfidence_t *throttleConfidence; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; -extern asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1; -extern asn_TYPE_member_t asn_MBR_ConfidenceSet_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h deleted file mode 100644 index d4f1aa84d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectingLane.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ConnectingLane_H_ -#define _ConnectingLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "AllowedManeuvers.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ConnectingLane */ -typedef struct ConnectingLane { - LaneID_t lane; - AllowedManeuvers_t *maneuver; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectingLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; -extern asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectingLane_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectingLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h deleted file mode 100644 index 83a23ec31..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Connection.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Connection_H_ -#define _Connection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ConnectingLane.h" -#include "SignalGroupID.h" -#include "RestrictionClassID.h" -#include "LaneConnectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionReferenceID; - -/* Connection */ -typedef struct Connection { - ConnectingLane_t connectingLane; - struct IntersectionReferenceID *remoteIntersection; /* OPTIONAL */ - SignalGroupID_t *signalGroup; /* OPTIONAL */ - RestrictionClassID_t *userClass; /* OPTIONAL */ - LaneConnectionID_t *connectionID; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Connection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Connection; -extern asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1; -extern asn_TYPE_member_t asn_MBR_Connection_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Connection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h deleted file mode 100644 index 78ec41712..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist-addGrpC.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ConnectionManeuverAssist_addGrpC_H_ -#define _ConnectionManeuverAssist_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleToLanePositionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeOffsetPointXY; - -/* ConnectionManeuverAssist-addGrpC */ -typedef struct ConnectionManeuverAssist_addGrpC { - VehicleToLanePositionList_t vehicleToLanePositions; - struct NodeOffsetPointXY *rsuDistanceFromAnchor; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectionManeuverAssist_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC; -extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectionManeuverAssist_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h deleted file mode 100644 index 736974ef9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectionManeuverAssist.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ConnectionManeuverAssist_H_ -#define _ConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneConnectionID.h" -#include "ZoneLength.h" -#include "WaitOnStopline.h" -#include "PedestrianBicycleDetect.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_ConnectionManeuverAssist; - -/* ConnectionManeuverAssist */ -typedef struct ConnectionManeuverAssist { - LaneConnectionID_t connectionID; - ZoneLength_t *queueLength; /* OPTIONAL */ - ZoneLength_t *availableStorageLength; /* OPTIONAL */ - WaitOnStopline_t *waitOnStop; /* OPTIONAL */ - PedestrianBicycleDetect_t *pedBicycleDetect; /* OPTIONAL */ - struct ConnectionManeuverAssist__regional { - A_SEQUENCE_OF(struct Reg_ConnectionManeuverAssist) 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; -} ConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; -extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h deleted file mode 100644 index 3ca72f148..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ConnectsToList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ConnectsToList_H_ -#define _ConnectsToList_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 Connection; - -/* ConnectsToList */ -typedef struct ConnectsToList { - A_SEQUENCE_OF(struct Connection) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectsToList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; -extern asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectsToList_1[1]; -extern asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectsToList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h deleted file mode 100644 index 8380e9d6f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Count.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Count_H_ -#define _Count_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Count */ -typedef long Count_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Count; -asn_struct_free_f Count_free; -asn_struct_print_f Count_print; -asn_constr_check_f Count_constraint; -ber_type_decoder_f Count_decode_ber; -der_type_encoder_f Count_encode_der; -xer_type_decoder_f Count_decode_xer; -xer_type_encoder_f Count_encode_xer; -jer_type_encoder_f Count_encode_jer; -oer_type_decoder_f Count_decode_oer; -oer_type_encoder_f Count_encode_oer; -per_type_decoder_f Count_decode_uper; -per_type_encoder_f Count_encode_uper; -per_type_decoder_f Count_decode_aper; -per_type_encoder_f Count_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Count_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h deleted file mode 100644 index 7b53f777d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDate.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DDate_H_ -#define _DDate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDate */ -typedef struct DDate { - DYear_t year; - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDate; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h deleted file mode 100644 index 419943d86..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDateTime.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DDateTime_H_ -#define _DDateTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "DOffset.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDateTime */ -typedef struct DDateTime { - DYear_t *year; /* OPTIONAL */ - DMonth_t *month; /* OPTIONAL */ - DDay_t *day; /* OPTIONAL */ - DHour_t *hour; /* OPTIONAL */ - DMinute_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DOffset_t *offset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDateTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDateTime; -extern asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1; -extern asn_TYPE_member_t asn_MBR_DDateTime_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDateTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h deleted file mode 100644 index 4a42c80b7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DDay.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DDay_H_ -#define _DDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDay */ -typedef long DDay_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DDay_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DDay; -asn_struct_free_f DDay_free; -asn_struct_print_f DDay_print; -asn_constr_check_f DDay_constraint; -ber_type_decoder_f DDay_decode_ber; -der_type_encoder_f DDay_encode_der; -xer_type_decoder_f DDay_decode_xer; -xer_type_encoder_f DDay_encode_xer; -jer_type_encoder_f DDay_encode_jer; -oer_type_decoder_f DDay_decode_oer; -oer_type_encoder_f DDay_encode_oer; -per_type_decoder_f DDay_decode_uper; -per_type_encoder_f DDay_encode_uper; -per_type_decoder_f DDay_decode_aper; -per_type_encoder_f DDay_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h deleted file mode 100644 index 91065ab89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DFullTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DFullTime_H_ -#define _DFullTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DFullTime */ -typedef struct DFullTime { - DYear_t year; - DMonth_t month; - DDay_t day; - DHour_t hour; - DMinute_t minute; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DFullTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DFullTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DFullTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h deleted file mode 100644 index 6b974c3c8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DHour.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DHour_H_ -#define _DHour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DHour */ -typedef long DHour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DHour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DHour; -asn_struct_free_f DHour_free; -asn_struct_print_f DHour_print; -asn_constr_check_f DHour_constraint; -ber_type_decoder_f DHour_decode_ber; -der_type_encoder_f DHour_encode_der; -xer_type_decoder_f DHour_decode_xer; -xer_type_encoder_f DHour_encode_xer; -jer_type_encoder_f DHour_encode_jer; -oer_type_decoder_f DHour_decode_oer; -oer_type_encoder_f DHour_encode_oer; -per_type_decoder_f DHour_decode_uper; -per_type_encoder_f DHour_encode_uper; -per_type_decoder_f DHour_decode_aper; -per_type_encoder_f DHour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DHour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h deleted file mode 100644 index 714d33492..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMinute.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DMinute_H_ -#define _DMinute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMinute */ -typedef long DMinute_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DMinute_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DMinute; -asn_struct_free_f DMinute_free; -asn_struct_print_f DMinute_print; -asn_constr_check_f DMinute_constraint; -ber_type_decoder_f DMinute_decode_ber; -der_type_encoder_f DMinute_encode_der; -xer_type_decoder_f DMinute_decode_xer; -xer_type_encoder_f DMinute_encode_xer; -jer_type_encoder_f DMinute_encode_jer; -oer_type_decoder_f DMinute_decode_oer; -oer_type_encoder_f DMinute_encode_oer; -per_type_decoder_f DMinute_decode_uper; -per_type_encoder_f DMinute_encode_uper; -per_type_decoder_f DMinute_decode_aper; -per_type_encoder_f DMinute_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMinute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h deleted file mode 100644 index fb603619a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonth.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DMonth_H_ -#define _DMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonth */ -typedef long DMonth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DMonth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DMonth; -asn_struct_free_f DMonth_free; -asn_struct_print_f DMonth_print; -asn_constr_check_f DMonth_constraint; -ber_type_decoder_f DMonth_decode_ber; -der_type_encoder_f DMonth_encode_der; -xer_type_decoder_f DMonth_decode_xer; -xer_type_encoder_f DMonth_encode_xer; -jer_type_encoder_f DMonth_encode_jer; -oer_type_decoder_f DMonth_decode_oer; -oer_type_encoder_f DMonth_encode_oer; -per_type_decoder_f DMonth_decode_uper; -per_type_encoder_f DMonth_encode_uper; -per_type_decoder_f DMonth_decode_aper; -per_type_encoder_f DMonth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h deleted file mode 100644 index 33656c770..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DMonthDay.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DMonthDay_H_ -#define _DMonthDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonthDay */ -typedef struct DMonthDay { - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DMonthDay_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonthDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h deleted file mode 100644 index 38a00aaf8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DOffset.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DOffset_H_ -#define _DOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DOffset */ -typedef long DOffset_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DOffset_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DOffset; -asn_struct_free_f DOffset_free; -asn_struct_print_f DOffset_print; -asn_constr_check_f DOffset_constraint; -ber_type_decoder_f DOffset_decode_ber; -der_type_encoder_f DOffset_encode_der; -xer_type_decoder_f DOffset_decode_xer; -xer_type_encoder_f DOffset_encode_xer; -jer_type_encoder_f DOffset_encode_jer; -oer_type_decoder_f DOffset_decode_oer; -oer_type_encoder_f DOffset_encode_oer; -per_type_decoder_f DOffset_decode_uper; -per_type_encoder_f DOffset_encode_uper; -per_type_decoder_f DOffset_decode_aper; -per_type_encoder_f DOffset_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h deleted file mode 100644 index 6bbe29873..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSRCmsgID.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MessageFrame" - * found in "J2735-MessageFrame.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DSRCmsgID_H_ -#define _DSRCmsgID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCmsgID */ -typedef long DSRCmsgID_t; - -/* Implementation */ -#define DSRCmsgID_reservedMessageId_D ((DSRCmsgID_t)0) -#define DSRCmsgID_alaCarteMessage_D ((DSRCmsgID_t)1) -#define DSRCmsgID_basicSafetyMessage_D ((DSRCmsgID_t)2) -#define DSRCmsgID_basicSafetyMessageVerbose_D ((DSRCmsgID_t)3) -#define DSRCmsgID_commonSafetyRequest_D ((DSRCmsgID_t)4) -#define DSRCmsgID_emergencyVehicleAlert_D ((DSRCmsgID_t)5) -#define DSRCmsgID_intersectionCollision_D ((DSRCmsgID_t)6) -#define DSRCmsgID_mapData_D ((DSRCmsgID_t)7) -#define DSRCmsgID_nmeaCorrections_D ((DSRCmsgID_t)8) -#define DSRCmsgID_probeDataManagement_D ((DSRCmsgID_t)9) -#define DSRCmsgID_probeVehicleData_D ((DSRCmsgID_t)10) -#define DSRCmsgID_roadSideAlert_D ((DSRCmsgID_t)11) -#define DSRCmsgID_rtcmCorrections_D ((DSRCmsgID_t)12) -#define DSRCmsgID_signalPhaseAndTimingMessage_D ((DSRCmsgID_t)13) -#define DSRCmsgID_signalRequestMessage_D ((DSRCmsgID_t)14) -#define DSRCmsgID_signalStatusMessage_D ((DSRCmsgID_t)15) -#define DSRCmsgID_travelerInformation_D ((DSRCmsgID_t)16) -#define DSRCmsgID_uperFrame_D ((DSRCmsgID_t)17) -extern asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; -asn_struct_free_f DSRCmsgID_free; -asn_struct_print_f DSRCmsgID_print; -asn_constr_check_f DSRCmsgID_constraint; -ber_type_decoder_f DSRCmsgID_decode_ber; -der_type_encoder_f DSRCmsgID_encode_der; -xer_type_decoder_f DSRCmsgID_decode_xer; -xer_type_encoder_f DSRCmsgID_encode_xer; -jer_type_encoder_f DSRCmsgID_encode_jer; -oer_type_decoder_f DSRCmsgID_decode_oer; -oer_type_encoder_f DSRCmsgID_encode_oer; -per_type_decoder_f DSRCmsgID_decode_uper; -per_type_encoder_f DSRCmsgID_encode_uper; -per_type_decoder_f DSRCmsgID_decode_aper; -per_type_encoder_f DSRCmsgID_encode_aper; -#define DSRCmsgID_mapData ((DSRCmsgID_t)18) -#define DSRCmsgID_signalPhaseAndTimingMessage ((DSRCmsgID_t)19) -#define DSRCmsgID_basicSafetyMessage ((DSRCmsgID_t)20) -#define DSRCmsgID_commonSafetyRequest ((DSRCmsgID_t)21) -#define DSRCmsgID_emergencyVehicleAlert ((DSRCmsgID_t)22) -#define DSRCmsgID_intersectionCollision ((DSRCmsgID_t)23) -#define DSRCmsgID_nmeaCorrections ((DSRCmsgID_t)24) -#define DSRCmsgID_probeDataManagement ((DSRCmsgID_t)25) -#define DSRCmsgID_probeVehicleData ((DSRCmsgID_t)26) -#define DSRCmsgID_roadSideAlert ((DSRCmsgID_t)27) -#define DSRCmsgID_rtcmCorrections ((DSRCmsgID_t)28) -#define DSRCmsgID_signalRequestMessage ((DSRCmsgID_t)29) -#define DSRCmsgID_signalStatusMessage ((DSRCmsgID_t)30) -#define DSRCmsgID_travelerInformation ((DSRCmsgID_t)31) -#define DSRCmsgID_personalSafetyMessage ((DSRCmsgID_t)32) -#define DSRCmsgID_testMessage00 ((DSRCmsgID_t)240) -#define DSRCmsgID_testMessage01 ((DSRCmsgID_t)241) -#define DSRCmsgID_testMessage02 ((DSRCmsgID_t)242) -#define DSRCmsgID_testMessage03 ((DSRCmsgID_t)243) -#define DSRCmsgID_testMessage04 ((DSRCmsgID_t)244) -#define DSRCmsgID_testMessage05 ((DSRCmsgID_t)245) -#define DSRCmsgID_testMessage06 ((DSRCmsgID_t)246) -#define DSRCmsgID_testMessage07 ((DSRCmsgID_t)247) -#define DSRCmsgID_testMessage08 ((DSRCmsgID_t)248) -#define DSRCmsgID_testMessage09 ((DSRCmsgID_t)249) -#define DSRCmsgID_testMessage10 ((DSRCmsgID_t)250) -#define DSRCmsgID_testMessage11 ((DSRCmsgID_t)251) -#define DSRCmsgID_testMessage12 ((DSRCmsgID_t)252) -#define DSRCmsgID_testMessage13 ((DSRCmsgID_t)253) -#define DSRCmsgID_testMessage14 ((DSRCmsgID_t)254) -#define DSRCmsgID_testMessage15 ((DSRCmsgID_t)255) - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCmsgID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h deleted file mode 100644 index aaeeb20d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DSecond.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DSecond_H_ -#define _DSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSecond */ -typedef long DSecond_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSecond_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSecond; -asn_struct_free_f DSecond_free; -asn_struct_print_f DSecond_print; -asn_constr_check_f DSecond_constraint; -ber_type_decoder_f DSecond_decode_ber; -der_type_encoder_f DSecond_encode_der; -xer_type_decoder_f DSecond_decode_xer; -xer_type_encoder_f DSecond_encode_xer; -jer_type_encoder_f DSecond_encode_jer; -oer_type_decoder_f DSecond_decode_oer; -oer_type_encoder_f DSecond_encode_oer; -per_type_decoder_f DSecond_decode_uper; -per_type_encoder_f DSecond_encode_uper; -per_type_decoder_f DSecond_decode_aper; -per_type_encoder_f DSecond_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h deleted file mode 100644 index 8bb1b77df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DTime.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DTime_H_ -#define _DTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "DOffset.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DTime */ -typedef struct DTime { - DHour_t hour; - DMinute_t minute; - DSecond_t second; - DOffset_t *offset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h deleted file mode 100644 index 16149f0c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYear.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DYear_H_ -#define _DYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYear */ -typedef long DYear_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DYear_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DYear; -asn_struct_free_f DYear_free; -asn_struct_print_f DYear_print; -asn_constr_check_f DYear_constraint; -ber_type_decoder_f DYear_decode_ber; -der_type_encoder_f DYear_encode_der; -xer_type_decoder_f DYear_decode_xer; -xer_type_encoder_f DYear_encode_xer; -jer_type_encoder_f DYear_encode_jer; -oer_type_decoder_f DYear_decode_oer; -oer_type_encoder_f DYear_encode_oer; -per_type_decoder_f DYear_decode_uper; -per_type_encoder_f DYear_encode_uper; -per_type_decoder_f DYear_decode_aper; -per_type_encoder_f DYear_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h deleted file mode 100644 index e5b3c9ff9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DYearMonth.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DYearMonth_H_ -#define _DYearMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYearMonth */ -typedef struct DYearMonth { - DYear_t year; - DMonth_t month; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DYearMonth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYearMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h deleted file mode 100644 index 983bead30..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DataParameters.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DataParameters_H_ -#define _DataParameters_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DataParameters */ -typedef struct DataParameters { - IA5String_t *processMethod; /* OPTIONAL */ - IA5String_t *processAgency; /* OPTIONAL */ - IA5String_t *lastCheckedDate; /* OPTIONAL */ - IA5String_t *geoidUsed; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DataParameters_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DataParameters; -extern asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1; -extern asn_TYPE_member_t asn_MBR_DataParameters_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DataParameters_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h deleted file mode 100644 index 7c682d9a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Day.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Day_H_ -#define _Day_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Day */ -typedef long Day_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Day_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Day; -asn_struct_free_f Day_free; -asn_struct_print_f Day_print; -asn_constr_check_f Day_constraint; -ber_type_decoder_f Day_decode_ber; -der_type_encoder_f Day_encode_der; -xer_type_decoder_f Day_decode_xer; -xer_type_encoder_f Day_encode_xer; -jer_type_encoder_f Day_encode_jer; -oer_type_decoder_f Day_decode_oer; -oer_type_encoder_f Day_encode_oer; -per_type_decoder_f Day_decode_uper; -per_type_encoder_f Day_encode_uper; -per_type_decoder_f Day_decode_aper; -per_type_encoder_f Day_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Day_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h deleted file mode 100644 index c40b512b6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DayOfWeek.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DayOfWeek_H_ -#define _DayOfWeek_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DayOfWeek { - DayOfWeek_unknown = 0, - DayOfWeek_monday = 1, - DayOfWeek_tuesday = 2, - DayOfWeek_wednesday = 3, - DayOfWeek_thursday = 4, - DayOfWeek_friday = 5, - DayOfWeek_saturday = 6, - DayOfWeek_sunday = 7 -} e_DayOfWeek; - -/* DayOfWeek */ -typedef long DayOfWeek_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; -extern const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1; -asn_struct_free_f DayOfWeek_free; -asn_struct_print_f DayOfWeek_print; -asn_constr_check_f DayOfWeek_constraint; -ber_type_decoder_f DayOfWeek_decode_ber; -der_type_encoder_f DayOfWeek_encode_der; -xer_type_decoder_f DayOfWeek_decode_xer; -xer_type_encoder_f DayOfWeek_encode_xer; -jer_type_encoder_f DayOfWeek_encode_jer; -oer_type_decoder_f DayOfWeek_decode_oer; -oer_type_encoder_f DayOfWeek_encode_oer; -per_type_decoder_f DayOfWeek_decode_uper; -per_type_encoder_f DayOfWeek_encode_uper; -per_type_decoder_f DayOfWeek_decode_aper; -per_type_encoder_f DayOfWeek_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DayOfWeek_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h deleted file mode 100644 index 294b9dda2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLat.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DegreesLat_H_ -#define _DegreesLat_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLat */ -typedef long DegreesLat_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DegreesLat_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; -asn_struct_free_f DegreesLat_free; -asn_struct_print_f DegreesLat_print; -asn_constr_check_f DegreesLat_constraint; -ber_type_decoder_f DegreesLat_decode_ber; -der_type_encoder_f DegreesLat_encode_der; -xer_type_decoder_f DegreesLat_decode_xer; -xer_type_encoder_f DegreesLat_encode_xer; -jer_type_encoder_f DegreesLat_encode_jer; -oer_type_decoder_f DegreesLat_decode_oer; -oer_type_encoder_f DegreesLat_encode_oer; -per_type_decoder_f DegreesLat_decode_uper; -per_type_encoder_f DegreesLat_encode_uper; -per_type_decoder_f DegreesLat_decode_aper; -per_type_encoder_f DegreesLat_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLat_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h deleted file mode 100644 index 6ea26c16b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DegreesLong.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DegreesLong_H_ -#define _DegreesLong_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLong */ -typedef long DegreesLong_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DegreesLong_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; -asn_struct_free_f DegreesLong_free; -asn_struct_print_f DegreesLong_print; -asn_constr_check_f DegreesLong_constraint; -ber_type_decoder_f DegreesLong_decode_ber; -der_type_encoder_f DegreesLong_encode_der; -xer_type_decoder_f DegreesLong_decode_xer; -xer_type_encoder_f DegreesLong_encode_xer; -jer_type_encoder_f DegreesLong_encode_jer; -oer_type_decoder_f DegreesLong_decode_oer; -oer_type_encoder_f DegreesLong_encode_oer; -per_type_decoder_f DegreesLong_decode_uper; -per_type_encoder_f DegreesLong_encode_uper; -per_type_decoder_f DegreesLong_decode_aper; -per_type_encoder_f DegreesLong_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLong_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h deleted file mode 100644 index e5f4a50e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DeltaAngle_H_ -#define _DeltaAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DeltaAngle */ -typedef long DeltaAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; -asn_struct_free_f DeltaAngle_free; -asn_struct_print_f DeltaAngle_print; -asn_constr_check_f DeltaAngle_constraint; -ber_type_decoder_f DeltaAngle_decode_ber; -der_type_encoder_f DeltaAngle_encode_der; -xer_type_decoder_f DeltaAngle_decode_xer; -xer_type_encoder_f DeltaAngle_encode_xer; -jer_type_encoder_f DeltaAngle_encode_jer; -oer_type_decoder_f DeltaAngle_decode_oer; -oer_type_encoder_f DeltaAngle_encode_oer; -per_type_decoder_f DeltaAngle_decode_uper; -per_type_encoder_f DeltaAngle_encode_uper; -per_type_decoder_f DeltaAngle_decode_aper; -per_type_encoder_f DeltaAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DeltaAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h deleted file mode 100644 index 223e8ed56..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DeltaTime.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DeltaTime_H_ -#define _DeltaTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DeltaTime */ -typedef long DeltaTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DeltaTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DeltaTime; -asn_struct_free_f DeltaTime_free; -asn_struct_print_f DeltaTime_print; -asn_constr_check_f DeltaTime_constraint; -ber_type_decoder_f DeltaTime_decode_ber; -der_type_encoder_f DeltaTime_encode_der; -xer_type_decoder_f DeltaTime_decode_xer; -xer_type_encoder_f DeltaTime_encode_xer; -jer_type_encoder_f DeltaTime_encode_jer; -oer_type_decoder_f DeltaTime_decode_oer; -oer_type_encoder_f DeltaTime_encode_oer; -per_type_decoder_f DeltaTime_decode_uper; -per_type_encoder_f DeltaTime_encode_uper; -per_type_decoder_f DeltaTime_decode_aper; -per_type_encoder_f DeltaTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DeltaTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h deleted file mode 100644 index b731f0749..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DescriptiveName.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DescriptiveName_H_ -#define _DescriptiveName_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DescriptiveName */ -typedef IA5String_t DescriptiveName_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; -asn_struct_free_f DescriptiveName_free; -asn_struct_print_f DescriptiveName_print; -asn_constr_check_f DescriptiveName_constraint; -ber_type_decoder_f DescriptiveName_decode_ber; -der_type_encoder_f DescriptiveName_encode_der; -xer_type_decoder_f DescriptiveName_decode_xer; -xer_type_encoder_f DescriptiveName_encode_xer; -jer_type_encoder_f DescriptiveName_encode_jer; -oer_type_decoder_f DescriptiveName_decode_oer; -oer_type_encoder_f DescriptiveName_encode_oer; -per_type_decoder_f DescriptiveName_decode_uper; -per_type_encoder_f DescriptiveName_encode_uper; -per_type_decoder_f DescriptiveName_decode_aper; -per_type_encoder_f DescriptiveName_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DescriptiveName_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h deleted file mode 100644 index bc8274516..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DirectionOfUse.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DirectionOfUse_H_ -#define _DirectionOfUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DirectionOfUse { - DirectionOfUse_unavailable = 0, - DirectionOfUse_forward = 1, - DirectionOfUse_reverse = 2, - DirectionOfUse_both = 3 -} e_DirectionOfUse; - -/* DirectionOfUse */ -typedef long DirectionOfUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; -extern const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1; -asn_struct_free_f DirectionOfUse_free; -asn_struct_print_f DirectionOfUse_print; -asn_constr_check_f DirectionOfUse_constraint; -ber_type_decoder_f DirectionOfUse_decode_ber; -der_type_encoder_f DirectionOfUse_encode_der; -xer_type_decoder_f DirectionOfUse_decode_xer; -xer_type_encoder_f DirectionOfUse_encode_xer; -jer_type_encoder_f DirectionOfUse_encode_jer; -oer_type_decoder_f DirectionOfUse_decode_oer; -oer_type_encoder_f DirectionOfUse_encode_oer; -per_type_decoder_f DirectionOfUse_decode_uper; -per_type_encoder_f DirectionOfUse_encode_uper; -per_type_decoder_f DirectionOfUse_decode_aper; -per_type_encoder_f DirectionOfUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DirectionOfUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h deleted file mode 100644 index 06172bec3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DisabledVehicle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DisabledVehicle_H_ -#define _DisabledVehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ITIScodes.h" -#include "GenericLocations.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DisabledVehicle */ -typedef struct DisabledVehicle { - ITIScodes_t statusDetails; - GenericLocations_t *locationDetails; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DisabledVehicle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DisabledVehicle; -extern asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1; -extern asn_TYPE_member_t asn_MBR_DisabledVehicle_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DisabledVehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h deleted file mode 100644 index c6d925dbf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DistanceUnits.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DistanceUnits_H_ -#define _DistanceUnits_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DistanceUnits { - DistanceUnits_centimeter = 0, - DistanceUnits_cm2_5 = 1, - DistanceUnits_decimeter = 2, - DistanceUnits_meter = 3, - DistanceUnits_kilometer = 4, - DistanceUnits_foot = 5, - DistanceUnits_yard = 6, - DistanceUnits_mile = 7 -} e_DistanceUnits; - -/* DistanceUnits */ -typedef long DistanceUnits_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DistanceUnits; -extern const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1; -asn_struct_free_f DistanceUnits_free; -asn_struct_print_f DistanceUnits_print; -asn_constr_check_f DistanceUnits_constraint; -ber_type_decoder_f DistanceUnits_decode_ber; -der_type_encoder_f DistanceUnits_encode_der; -xer_type_decoder_f DistanceUnits_decode_xer; -xer_type_encoder_f DistanceUnits_encode_xer; -jer_type_encoder_f DistanceUnits_encode_jer; -oer_type_decoder_f DistanceUnits_decode_oer; -oer_type_encoder_f DistanceUnits_encode_oer; -per_type_decoder_f DistanceUnits_decode_uper; -per_type_encoder_f DistanceUnits_encode_uper; -per_type_decoder_f DistanceUnits_decode_aper; -per_type_encoder_f DistanceUnits_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DistanceUnits_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h deleted file mode 100644 index 17a7e6a16..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLiftAirPressure.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DriveAxleLiftAirPressure_H_ -#define _DriveAxleLiftAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLiftAirPressure */ -typedef long DriveAxleLiftAirPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; -asn_struct_free_f DriveAxleLiftAirPressure_free; -asn_struct_print_f DriveAxleLiftAirPressure_print; -asn_constr_check_f DriveAxleLiftAirPressure_constraint; -ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; -der_type_encoder_f DriveAxleLiftAirPressure_encode_der; -xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; -xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; -jer_type_encoder_f DriveAxleLiftAirPressure_encode_jer; -oer_type_decoder_f DriveAxleLiftAirPressure_decode_oer; -oer_type_encoder_f DriveAxleLiftAirPressure_encode_oer; -per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; -per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; -per_type_decoder_f DriveAxleLiftAirPressure_decode_aper; -per_type_encoder_f DriveAxleLiftAirPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLiftAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h deleted file mode 100644 index e6bf894e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLocation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DriveAxleLocation_H_ -#define _DriveAxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLocation */ -typedef long DriveAxleLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; -asn_struct_free_f DriveAxleLocation_free; -asn_struct_print_f DriveAxleLocation_print; -asn_constr_check_f DriveAxleLocation_constraint; -ber_type_decoder_f DriveAxleLocation_decode_ber; -der_type_encoder_f DriveAxleLocation_encode_der; -xer_type_decoder_f DriveAxleLocation_decode_xer; -xer_type_encoder_f DriveAxleLocation_encode_xer; -jer_type_encoder_f DriveAxleLocation_encode_jer; -oer_type_decoder_f DriveAxleLocation_decode_oer; -oer_type_encoder_f DriveAxleLocation_encode_oer; -per_type_decoder_f DriveAxleLocation_decode_uper; -per_type_encoder_f DriveAxleLocation_encode_uper; -per_type_decoder_f DriveAxleLocation_decode_aper; -per_type_encoder_f DriveAxleLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h deleted file mode 100644 index 77c3202cd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleLubePressure.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DriveAxleLubePressure_H_ -#define _DriveAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLubePressure */ -typedef long DriveAxleLubePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; -asn_struct_free_f DriveAxleLubePressure_free; -asn_struct_print_f DriveAxleLubePressure_print; -asn_constr_check_f DriveAxleLubePressure_constraint; -ber_type_decoder_f DriveAxleLubePressure_decode_ber; -der_type_encoder_f DriveAxleLubePressure_encode_der; -xer_type_decoder_f DriveAxleLubePressure_decode_xer; -xer_type_encoder_f DriveAxleLubePressure_encode_xer; -jer_type_encoder_f DriveAxleLubePressure_encode_jer; -oer_type_decoder_f DriveAxleLubePressure_decode_oer; -oer_type_encoder_f DriveAxleLubePressure_encode_oer; -per_type_decoder_f DriveAxleLubePressure_decode_uper; -per_type_encoder_f DriveAxleLubePressure_encode_uper; -per_type_decoder_f DriveAxleLubePressure_decode_aper; -per_type_encoder_f DriveAxleLubePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h deleted file mode 100644 index 1d62c1657..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DriveAxleTemperature.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DriveAxleTemperature_H_ -#define _DriveAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleTemperature */ -typedef long DriveAxleTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; -asn_struct_free_f DriveAxleTemperature_free; -asn_struct_print_f DriveAxleTemperature_print; -asn_constr_check_f DriveAxleTemperature_constraint; -ber_type_decoder_f DriveAxleTemperature_decode_ber; -der_type_encoder_f DriveAxleTemperature_encode_der; -xer_type_decoder_f DriveAxleTemperature_decode_xer; -xer_type_encoder_f DriveAxleTemperature_encode_xer; -jer_type_encoder_f DriveAxleTemperature_encode_jer; -oer_type_decoder_f DriveAxleTemperature_decode_oer; -oer_type_encoder_f DriveAxleTemperature_encode_oer; -per_type_decoder_f DriveAxleTemperature_decode_uper; -per_type_encoder_f DriveAxleTemperature_encode_uper; -per_type_decoder_f DriveAxleTemperature_decode_aper; -per_type_encoder_f DriveAxleTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h deleted file mode 100644 index c0cd4dd5f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetLg.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DrivenLineOffsetLg_H_ -#define _DrivenLineOffsetLg_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetLg */ -typedef long DrivenLineOffsetLg_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; -asn_struct_free_f DrivenLineOffsetLg_free; -asn_struct_print_f DrivenLineOffsetLg_print; -asn_constr_check_f DrivenLineOffsetLg_constraint; -ber_type_decoder_f DrivenLineOffsetLg_decode_ber; -der_type_encoder_f DrivenLineOffsetLg_encode_der; -xer_type_decoder_f DrivenLineOffsetLg_decode_xer; -xer_type_encoder_f DrivenLineOffsetLg_encode_xer; -jer_type_encoder_f DrivenLineOffsetLg_encode_jer; -oer_type_decoder_f DrivenLineOffsetLg_decode_oer; -oer_type_encoder_f DrivenLineOffsetLg_encode_oer; -per_type_decoder_f DrivenLineOffsetLg_decode_uper; -per_type_encoder_f DrivenLineOffsetLg_encode_uper; -per_type_decoder_f DrivenLineOffsetLg_decode_aper; -per_type_encoder_f DrivenLineOffsetLg_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetLg_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h deleted file mode 100644 index 4e6e8d820..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivenLineOffsetSm.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DrivenLineOffsetSm_H_ -#define _DrivenLineOffsetSm_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetSm */ -typedef long DrivenLineOffsetSm_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; -asn_struct_free_f DrivenLineOffsetSm_free; -asn_struct_print_f DrivenLineOffsetSm_print; -asn_constr_check_f DrivenLineOffsetSm_constraint; -ber_type_decoder_f DrivenLineOffsetSm_decode_ber; -der_type_encoder_f DrivenLineOffsetSm_encode_der; -xer_type_decoder_f DrivenLineOffsetSm_decode_xer; -xer_type_encoder_f DrivenLineOffsetSm_encode_xer; -jer_type_encoder_f DrivenLineOffsetSm_encode_jer; -oer_type_decoder_f DrivenLineOffsetSm_decode_oer; -oer_type_encoder_f DrivenLineOffsetSm_encode_oer; -per_type_decoder_f DrivenLineOffsetSm_decode_uper; -per_type_encoder_f DrivenLineOffsetSm_encode_uper; -per_type_decoder_f DrivenLineOffsetSm_decode_aper; -per_type_encoder_f DrivenLineOffsetSm_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetSm_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h deleted file mode 100644 index baae8abac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/DrivingWheelAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _DrivingWheelAngle_H_ -#define _DrivingWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivingWheelAngle */ -typedef long DrivingWheelAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; -asn_struct_free_f DrivingWheelAngle_free; -asn_struct_print_f DrivingWheelAngle_print; -asn_constr_check_f DrivingWheelAngle_constraint; -ber_type_decoder_f DrivingWheelAngle_decode_ber; -der_type_encoder_f DrivingWheelAngle_encode_der; -xer_type_decoder_f DrivingWheelAngle_decode_xer; -xer_type_encoder_f DrivingWheelAngle_encode_xer; -jer_type_encoder_f DrivingWheelAngle_encode_jer; -oer_type_decoder_f DrivingWheelAngle_decode_oer; -oer_type_encoder_f DrivingWheelAngle_encode_oer; -per_type_decoder_f DrivingWheelAngle_decode_uper; -per_type_encoder_f DrivingWheelAngle_encode_uper; -per_type_decoder_f DrivingWheelAngle_decode_aper; -per_type_encoder_f DrivingWheelAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivingWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h deleted file mode 100644 index 620815993..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Duration.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Duration_H_ -#define _Duration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Duration */ -typedef long Duration_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Duration; -asn_struct_free_f Duration_free; -asn_struct_print_f Duration_print; -asn_constr_check_f Duration_constraint; -ber_type_decoder_f Duration_decode_ber; -der_type_encoder_f Duration_encode_der; -xer_type_decoder_f Duration_decode_xer; -xer_type_encoder_f Duration_encode_xer; -jer_type_encoder_f Duration_encode_jer; -oer_type_decoder_f Duration_decode_oer; -oer_type_encoder_f Duration_encode_oer; -per_type_decoder_f Duration_decode_uper; -per_type_encoder_f Duration_encode_uper; -per_type_decoder_f Duration_decode_aper; -per_type_encoder_f Duration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Duration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h deleted file mode 100644 index b10ac11c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EXTERNAL.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" - * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EXTERNAL_H_ -#define _EXTERNAL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OBJECT_IDENTIFIER.h" -#include "NativeInteger.h" -#include "ObjectDescriptor.h" -#include "ANY.h" -#include "OCTET_STRING.h" -#include "BIT_STRING.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EXTERNAL__encoding_PR { - EXTERNAL__encoding_PR_NOTHING, /* No components present */ - EXTERNAL__encoding_PR_single_ASN1_type, - EXTERNAL__encoding_PR_octet_aligned, - EXTERNAL__encoding_PR_arbitrary -} EXTERNAL__encoding_PR; - -/* EXTERNAL */ -typedef struct EXTERNAL { - OBJECT_IDENTIFIER_t *direct_reference; /* OPTIONAL */ - long *indirect_reference; /* OPTIONAL */ - ObjectDescriptor_t *data_value_descriptor; /* OPTIONAL */ - struct EXTERNAL__encoding { - EXTERNAL__encoding_PR present; - union EXTERNAL__encoding_u { - ANY_t single_ASN1_type; - OCTET_STRING_t octet_aligned; - BIT_STRING_t arbitrary; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } encoding; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EXTERNAL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EXTERNAL; - -#ifdef __cplusplus -} -#endif - -#endif /* _EXTERNAL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h deleted file mode 100644 index 67c3b1586..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ElevationConfidence.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ElevationConfidence_H_ -#define _ElevationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ElevationConfidence { - ElevationConfidence_unavailable = 0, - ElevationConfidence_elev_500_00 = 1, - ElevationConfidence_elev_200_00 = 2, - ElevationConfidence_elev_100_00 = 3, - ElevationConfidence_elev_050_00 = 4, - ElevationConfidence_elev_020_00 = 5, - ElevationConfidence_elev_010_00 = 6, - ElevationConfidence_elev_005_00 = 7, - ElevationConfidence_elev_002_00 = 8, - ElevationConfidence_elev_001_00 = 9, - ElevationConfidence_elev_000_50 = 10, - ElevationConfidence_elev_000_20 = 11, - ElevationConfidence_elev_000_10 = 12, - ElevationConfidence_elev_000_05 = 13, - ElevationConfidence_elev_000_02 = 14, - ElevationConfidence_elev_000_01 = 15 -} e_ElevationConfidence; - -/* ElevationConfidence */ -typedef long ElevationConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1; -asn_struct_free_f ElevationConfidence_free; -asn_struct_print_f ElevationConfidence_print; -asn_constr_check_f ElevationConfidence_constraint; -ber_type_decoder_f ElevationConfidence_decode_ber; -der_type_encoder_f ElevationConfidence_encode_der; -xer_type_decoder_f ElevationConfidence_decode_xer; -xer_type_encoder_f ElevationConfidence_encode_xer; -jer_type_encoder_f ElevationConfidence_encode_jer; -oer_type_decoder_f ElevationConfidence_decode_oer; -oer_type_encoder_f ElevationConfidence_encode_oer; -per_type_decoder_f ElevationConfidence_decode_uper; -per_type_encoder_f ElevationConfidence_encode_uper; -per_type_decoder_f ElevationConfidence_decode_aper; -per_type_encoder_f ElevationConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ElevationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h deleted file mode 100644 index a27cda772..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyDetails.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EmergencyDetails_H_ -#define _EmergencyDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "SirenInUse.h" -#include "LightbarInUse.h" -#include "MultiVehicleResponse.h" -#include "ResponseType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PrivilegedEvents; - -/* EmergencyDetails */ -typedef struct EmergencyDetails { - SSPindex_t notUsed; - SirenInUse_t sirenUse; - LightbarInUse_t lightsUse; - MultiVehicleResponse_t multi; - struct PrivilegedEvents *events; /* OPTIONAL */ - ResponseType_t *responseType; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EmergencyDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; -extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1; -extern asn_TYPE_member_t asn_MBR_EmergencyDetails_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmergencyDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h deleted file mode 100644 index 9a7929621..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmergencyVehicleAlert.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "EmergencyVehicleAlert" - * found in "J2735-EmergencyVehicleAlert.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EmergencyVehicleAlert_H_ -#define _EmergencyVehicleAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "TemporaryID.h" -#include "RoadSideAlert.h" -#include "ResponseType.h" -#include "VehicleMass.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "ResponderGroupAffected.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EmergencyDetails; -struct Reg_EmergencyVehicleAlert; - -/* EmergencyVehicleAlert */ -typedef struct EmergencyVehicleAlert { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - TemporaryID_t *id; /* OPTIONAL */ - RoadSideAlert_t rsaMsg; - ResponseType_t *responseType; /* OPTIONAL */ - struct EmergencyDetails *details; /* OPTIONAL */ - VehicleMass_t *mass; /* OPTIONAL */ - VehicleType_t *basicType; /* OPTIONAL */ - VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ - IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ - ResponderGroupAffected_t *responderType; /* OPTIONAL */ - struct EmergencyVehicleAlert__regional { - A_SEQUENCE_OF(struct Reg_EmergencyVehicleAlert) 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; -} EmergencyVehicleAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1; -extern asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[11]; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmergencyVehicleAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h deleted file mode 100644 index ad8248a03..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EmissionType.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EmissionType_H_ -#define _EmissionType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EmissionType { - EmissionType_typeA = 0, - EmissionType_typeB = 1, - EmissionType_typeC = 2, - EmissionType_typeD = 3, - EmissionType_typeE = 4 - /* - * Enumeration is extensible - */ -} e_EmissionType; - -/* EmissionType */ -typedef long EmissionType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EmissionType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EmissionType; -extern const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1; -asn_struct_free_f EmissionType_free; -asn_struct_print_f EmissionType_print; -asn_constr_check_f EmissionType_constraint; -ber_type_decoder_f EmissionType_decode_ber; -der_type_encoder_f EmissionType_encode_der; -xer_type_decoder_f EmissionType_decode_xer; -xer_type_encoder_f EmissionType_encode_xer; -jer_type_encoder_f EmissionType_encode_jer; -oer_type_decoder_f EmissionType_decode_oer; -oer_type_encoder_f EmissionType_encode_oer; -per_type_decoder_f EmissionType_decode_uper; -per_type_encoder_f EmissionType_encode_uper; -per_type_decoder_f EmissionType_decode_aper; -per_type_encoder_f EmissionType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmissionType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h deleted file mode 100644 index 9239d2a2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EnabledLaneList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EnabledLaneList_H_ -#define _EnabledLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EnabledLaneList */ -typedef struct EnabledLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EnabledLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; -extern asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_EnabledLaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _EnabledLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h deleted file mode 100644 index 1445c8ece..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssMobileFriction.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EssMobileFriction_H_ -#define _EssMobileFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssMobileFriction */ -typedef long EssMobileFriction_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; -asn_struct_free_f EssMobileFriction_free; -asn_struct_print_f EssMobileFriction_print; -asn_constr_check_f EssMobileFriction_constraint; -ber_type_decoder_f EssMobileFriction_decode_ber; -der_type_encoder_f EssMobileFriction_encode_der; -xer_type_decoder_f EssMobileFriction_decode_xer; -xer_type_encoder_f EssMobileFriction_encode_xer; -jer_type_encoder_f EssMobileFriction_encode_jer; -oer_type_decoder_f EssMobileFriction_decode_oer; -oer_type_encoder_f EssMobileFriction_encode_oer; -per_type_decoder_f EssMobileFriction_decode_uper; -per_type_encoder_f EssMobileFriction_encode_uper; -per_type_decoder_f EssMobileFriction_decode_aper; -per_type_encoder_f EssMobileFriction_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssMobileFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h deleted file mode 100644 index 7094f16ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipRate.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EssPrecipRate_H_ -#define _EssPrecipRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssPrecipRate */ -typedef long EssPrecipRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; -asn_struct_free_f EssPrecipRate_free; -asn_struct_print_f EssPrecipRate_print; -asn_constr_check_f EssPrecipRate_constraint; -ber_type_decoder_f EssPrecipRate_decode_ber; -der_type_encoder_f EssPrecipRate_encode_der; -xer_type_decoder_f EssPrecipRate_decode_xer; -xer_type_encoder_f EssPrecipRate_encode_xer; -jer_type_encoder_f EssPrecipRate_encode_jer; -oer_type_decoder_f EssPrecipRate_decode_oer; -oer_type_encoder_f EssPrecipRate_encode_oer; -per_type_decoder_f EssPrecipRate_decode_uper; -per_type_encoder_f EssPrecipRate_encode_uper; -per_type_decoder_f EssPrecipRate_decode_aper; -per_type_encoder_f EssPrecipRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h deleted file mode 100644 index 4f33ef4e2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipSituation.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EssPrecipSituation_H_ -#define _EssPrecipSituation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipSituation { - EssPrecipSituation_other = 1, - EssPrecipSituation_unknown = 2, - EssPrecipSituation_noPrecipitation = 3, - EssPrecipSituation_unidentifiedSlight = 4, - EssPrecipSituation_unidentifiedModerate = 5, - EssPrecipSituation_unidentifiedHeavy = 6, - EssPrecipSituation_snowSlight = 7, - EssPrecipSituation_snowModerate = 8, - EssPrecipSituation_snowHeavy = 9, - EssPrecipSituation_rainSlight = 10, - EssPrecipSituation_rainModerate = 11, - EssPrecipSituation_rainHeavy = 12, - EssPrecipSituation_frozenPrecipitationSlight = 13, - EssPrecipSituation_frozenPrecipitationModerate = 14, - EssPrecipSituation_frozenPrecipitationHeavy = 15 -} e_EssPrecipSituation; - -/* EssPrecipSituation */ -typedef long EssPrecipSituation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; -extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1; -asn_struct_free_f EssPrecipSituation_free; -asn_struct_print_f EssPrecipSituation_print; -asn_constr_check_f EssPrecipSituation_constraint; -ber_type_decoder_f EssPrecipSituation_decode_ber; -der_type_encoder_f EssPrecipSituation_encode_der; -xer_type_decoder_f EssPrecipSituation_decode_xer; -xer_type_encoder_f EssPrecipSituation_encode_xer; -jer_type_encoder_f EssPrecipSituation_encode_jer; -oer_type_decoder_f EssPrecipSituation_decode_oer; -oer_type_encoder_f EssPrecipSituation_encode_oer; -per_type_decoder_f EssPrecipSituation_decode_uper; -per_type_encoder_f EssPrecipSituation_encode_uper; -per_type_decoder_f EssPrecipSituation_decode_aper; -per_type_encoder_f EssPrecipSituation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipSituation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h deleted file mode 100644 index e114ee243..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssPrecipYesNo.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EssPrecipYesNo_H_ -#define _EssPrecipYesNo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipYesNo { - EssPrecipYesNo_precip = 1, - EssPrecipYesNo_noPrecip = 2, - EssPrecipYesNo_error = 3 -} e_EssPrecipYesNo; - -/* EssPrecipYesNo */ -typedef long EssPrecipYesNo_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; -extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1; -asn_struct_free_f EssPrecipYesNo_free; -asn_struct_print_f EssPrecipYesNo_print; -asn_constr_check_f EssPrecipYesNo_constraint; -ber_type_decoder_f EssPrecipYesNo_decode_ber; -der_type_encoder_f EssPrecipYesNo_encode_der; -xer_type_decoder_f EssPrecipYesNo_decode_xer; -xer_type_encoder_f EssPrecipYesNo_encode_xer; -jer_type_encoder_f EssPrecipYesNo_encode_jer; -oer_type_decoder_f EssPrecipYesNo_decode_oer; -oer_type_encoder_f EssPrecipYesNo_encode_oer; -per_type_decoder_f EssPrecipYesNo_decode_uper; -per_type_encoder_f EssPrecipYesNo_encode_uper; -per_type_decoder_f EssPrecipYesNo_decode_aper; -per_type_encoder_f EssPrecipYesNo_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipYesNo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h deleted file mode 100644 index d6fb15dbd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EssSolarRadiation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EssSolarRadiation_H_ -#define _EssSolarRadiation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssSolarRadiation */ -typedef long EssSolarRadiation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; -asn_struct_free_f EssSolarRadiation_free; -asn_struct_print_f EssSolarRadiation_print; -asn_constr_check_f EssSolarRadiation_constraint; -ber_type_decoder_f EssSolarRadiation_decode_ber; -der_type_encoder_f EssSolarRadiation_encode_der; -xer_type_decoder_f EssSolarRadiation_decode_xer; -xer_type_encoder_f EssSolarRadiation_encode_xer; -jer_type_encoder_f EssSolarRadiation_encode_jer; -oer_type_decoder_f EssSolarRadiation_decode_oer; -oer_type_encoder_f EssSolarRadiation_encode_oer; -per_type_decoder_f EssSolarRadiation_decode_uper; -per_type_encoder_f EssSolarRadiation_encode_uper; -per_type_decoder_f EssSolarRadiation_decode_aper; -per_type_encoder_f EssSolarRadiation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssSolarRadiation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h deleted file mode 100644 index 0c6a9797b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/EventDescription.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _EventDescription_H_ -#define _EventDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ITIScodes.h" -#include "Priority.h" -#include "HeadingSlice.h" -#include "Extent.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_EventDescription; - -/* EventDescription */ -typedef struct EventDescription { - ITIScodes_t typeEvent; - struct EventDescription__description { - A_SEQUENCE_OF(ITIScodes_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - Priority_t *priority; /* OPTIONAL */ - HeadingSlice_t *heading; /* OPTIONAL */ - Extent_t *extent; /* OPTIONAL */ - struct EventDescription__regional { - A_SEQUENCE_OF(struct Reg_EventDescription) 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; -} EventDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EventDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_EventDescription_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _EventDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h deleted file mode 100644 index 1a0aec067..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExitService.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ExitService_H_ -#define _ExitService_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ExitService__Member__item_PR { - ExitService__Member__item_PR_NOTHING, /* No components present */ - ExitService__Member__item_PR_itis, - ExitService__Member__item_PR_text -} ExitService__Member__item_PR; - -/* Forward definitions */ -typedef struct ExitService__Member { - struct ExitService__Member__item { - ExitService__Member__item_PR present; - union ExitService__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ExitService__Member; - -/* ExitService */ -typedef struct ExitService { - A_SEQUENCE_OF(ExitService__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ExitService_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ExitService; -extern asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1; -extern asn_TYPE_member_t asn_MBR_ExitService_1[1]; -extern asn_per_constraints_t asn_PER_type_ExitService_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExitService_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h deleted file mode 100644 index 4f5067c78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Extent.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Extent_H_ -#define _Extent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Extent { - Extent_useInstantlyOnly = 0, - Extent_useFor3meters = 1, - Extent_useFor10meters = 2, - Extent_useFor50meters = 3, - Extent_useFor100meters = 4, - Extent_useFor500meters = 5, - Extent_useFor1000meters = 6, - Extent_useFor5000meters = 7, - Extent_useFor10000meters = 8, - Extent_useFor50000meters = 9, - Extent_useFor100000meters = 10, - Extent_useFor500000meters = 11, - Extent_useFor1000000meters = 12, - Extent_useFor5000000meters = 13, - Extent_useFor10000000meters = 14, - Extent_forever = 15 -} e_Extent; - -/* Extent */ -typedef long Extent_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Extent_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Extent; -extern const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1; -asn_struct_free_f Extent_free; -asn_struct_print_f Extent_print; -asn_constr_check_f Extent_constraint; -ber_type_decoder_f Extent_decode_ber; -der_type_encoder_f Extent_encode_der; -xer_type_decoder_f Extent_decode_xer; -xer_type_encoder_f Extent_encode_xer; -jer_type_encoder_f Extent_encode_jer; -oer_type_decoder_f Extent_decode_oer; -oer_type_encoder_f Extent_encode_oer; -per_type_decoder_f Extent_decode_uper; -per_type_encoder_f Extent_encode_uper; -per_type_decoder_f Extent_decode_aper; -per_type_encoder_f Extent_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Extent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h deleted file mode 100644 index 5be7493b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ExteriorLights.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ExteriorLights_H_ -#define _ExteriorLights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ExteriorLights { - ExteriorLights_lowBeamHeadlightsOn = 0, - ExteriorLights_highBeamHeadlightsOn = 1, - ExteriorLights_leftTurnSignalOn = 2, - ExteriorLights_rightTurnSignalOn = 3, - ExteriorLights_hazardSignalOn = 4, - ExteriorLights_automaticLightControlOn = 5, - ExteriorLights_daytimeRunningLightsOn = 6, - ExteriorLights_fogLightOn = 7, - ExteriorLights_parkingLightsOn = 8 -} e_ExteriorLights; - -/* ExteriorLights */ -typedef BIT_STRING_t ExteriorLights_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; -asn_struct_free_f ExteriorLights_free; -asn_struct_print_f ExteriorLights_print; -asn_constr_check_f ExteriorLights_constraint; -ber_type_decoder_f ExteriorLights_decode_ber; -der_type_encoder_f ExteriorLights_encode_der; -xer_type_decoder_f ExteriorLights_decode_xer; -xer_type_encoder_f ExteriorLights_encode_xer; -jer_type_encoder_f ExteriorLights_encode_jer; -oer_type_decoder_f ExteriorLights_decode_oer; -oer_type_encoder_f ExteriorLights_encode_oer; -per_type_decoder_f ExteriorLights_decode_uper; -per_type_encoder_f ExteriorLights_encode_uper; -per_type_decoder_f ExteriorLights_decode_aper; -per_type_encoder_f ExteriorLights_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExteriorLights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h deleted file mode 100644 index 60e0ec344..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/FuelType.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _FuelType_H_ -#define _FuelType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* FuelType */ -typedef long FuelType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_FuelType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_FuelType; -asn_struct_free_f FuelType_free; -asn_struct_print_f FuelType_print; -asn_constr_check_f FuelType_constraint; -ber_type_decoder_f FuelType_decode_ber; -der_type_encoder_f FuelType_encode_der; -xer_type_decoder_f FuelType_decode_xer; -xer_type_encoder_f FuelType_encode_xer; -jer_type_encoder_f FuelType_encode_jer; -oer_type_decoder_f FuelType_decode_oer; -oer_type_encoder_f FuelType_encode_oer; -per_type_decoder_f FuelType_decode_uper; -per_type_encoder_f FuelType_encode_uper; -per_type_decoder_f FuelType_decode_aper; -per_type_encoder_f FuelType_encode_aper; -#define FuelType_unknownFuel ((FuelType_t)0) -#define FuelType_gasoline ((FuelType_t)1) -#define FuelType_ethanol ((FuelType_t)2) -#define FuelType_diesel ((FuelType_t)3) -#define FuelType_electric ((FuelType_t)4) -#define FuelType_hybrid ((FuelType_t)5) -#define FuelType_hydrogen ((FuelType_t)6) -#define FuelType_natGasLiquid ((FuelType_t)7) -#define FuelType_natGasComp ((FuelType_t)8) -#define FuelType_propane ((FuelType_t)9) - -#ifdef __cplusplus -} -#endif - -#endif /* _FuelType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h deleted file mode 100644 index e2ee328a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/FullPositionVector.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _FullPositionVector_H_ -#define _FullPositionVector_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "Common_Elevation.h" -#include "Heading.h" -#include "TimeConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DDateTime; -struct TransmissionAndSpeed; -struct PositionalAccuracy; -struct PositionConfidenceSet; -struct SpeedandHeadingandThrottleConfidence; - -/* FullPositionVector */ -typedef struct FullPositionVector { - struct DDateTime *utcTime; /* OPTIONAL */ - Longitude_t Long; - Latitude_t lat; - Common_Elevation_t *elevation; /* OPTIONAL */ - Heading_t *heading; /* OPTIONAL */ - struct TransmissionAndSpeed *speed; /* OPTIONAL */ - struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ - TimeConfidence_t *timeConfidence; /* OPTIONAL */ - struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FullPositionVector_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; -extern asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1; -extern asn_TYPE_member_t asn_MBR_FullPositionVector_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _FullPositionVector_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h deleted file mode 100644 index 15fabd635..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/FurtherInfoID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _FurtherInfoID_H_ -#define _FurtherInfoID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* FurtherInfoID */ -typedef OCTET_STRING_t FurtherInfoID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; -asn_struct_free_f FurtherInfoID_free; -asn_struct_print_f FurtherInfoID_print; -asn_constr_check_f FurtherInfoID_constraint; -ber_type_decoder_f FurtherInfoID_decode_ber; -der_type_encoder_f FurtherInfoID_encode_der; -xer_type_decoder_f FurtherInfoID_decode_xer; -xer_type_encoder_f FurtherInfoID_encode_xer; -jer_type_encoder_f FurtherInfoID_encode_jer; -oer_type_decoder_f FurtherInfoID_decode_oer; -oer_type_encoder_f FurtherInfoID_encode_oer; -per_type_decoder_f FurtherInfoID_decode_uper; -per_type_encoder_f FurtherInfoID_encode_uper; -per_type_decoder_f FurtherInfoID_decode_aper; -per_type_encoder_f FurtherInfoID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _FurtherInfoID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h deleted file mode 100644 index 36585e125..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GNSSstatus.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GNSSstatus_H_ -#define _GNSSstatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GNSSstatus { - GNSSstatus_unavailable = 0, - GNSSstatus_isHealthy = 1, - GNSSstatus_isMonitored = 2, - GNSSstatus_baseStationType = 3, - GNSSstatus_aPDOPofUnder5 = 4, - GNSSstatus_inViewOfUnder5 = 5, - GNSSstatus_localCorrectionsPresent = 6, - GNSSstatus_networkCorrectionsPresent = 7 -} e_GNSSstatus; - -/* GNSSstatus */ -typedef BIT_STRING_t GNSSstatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GNSSstatus; -asn_struct_free_f GNSSstatus_free; -asn_struct_print_f GNSSstatus_print; -asn_constr_check_f GNSSstatus_constraint; -ber_type_decoder_f GNSSstatus_decode_ber; -der_type_encoder_f GNSSstatus_encode_der; -xer_type_decoder_f GNSSstatus_decode_xer; -xer_type_encoder_f GNSSstatus_encode_xer; -jer_type_encoder_f GNSSstatus_encode_jer; -oer_type_decoder_f GNSSstatus_decode_oer; -oer_type_encoder_f GNSSstatus_encode_oer; -per_type_decoder_f GNSSstatus_decode_uper; -per_type_encoder_f GNSSstatus_encode_uper; -per_type_decoder_f GNSSstatus_decode_aper; -per_type_encoder_f GNSSstatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GNSSstatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h deleted file mode 100644 index 95842d08d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLane.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GenericLane_H_ -#define _GenericLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "DescriptiveName.h" -#include "ApproachID.h" -#include "LaneAttributes.h" -#include "AllowedManeuvers.h" -#include "NodeListXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ConnectsToList; -struct OverlayLaneList; -struct Reg_GenericLane; - -/* GenericLane */ -typedef struct GenericLane { - LaneID_t laneID; - DescriptiveName_t *name; /* OPTIONAL */ - ApproachID_t *ingressApproach; /* OPTIONAL */ - ApproachID_t *egressApproach; /* OPTIONAL */ - LaneAttributes_t laneAttributes; - AllowedManeuvers_t *maneuvers; /* OPTIONAL */ - NodeListXY_t nodeList; - struct ConnectsToList *connectsTo; /* OPTIONAL */ - struct OverlayLaneList *overlays; /* OPTIONAL */ - struct GenericLane__regional { - A_SEQUENCE_OF(struct Reg_GenericLane) 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; -} GenericLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericLane; -extern asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1; -extern asn_TYPE_member_t asn_MBR_GenericLane_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h deleted file mode 100644 index c7cd3bd5b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericLocations.h +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GenericLocations_H_ -#define _GenericLocations_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GenericLocations { - GenericLocations_on_bridges = 7937, - GenericLocations_in_tunnels = 7938, - GenericLocations_entering_or_leaving_tunnels = 7939, - GenericLocations_on_ramps = 7940, - GenericLocations_in_road_construction_area = 7941, - GenericLocations_around_a_curve = 7942, - GenericLocations_on_curve = 8026, - GenericLocations_on_tracks = 8009, - GenericLocations_in_street = 8025, - GenericLocations_shoulder = 8027, - GenericLocations_on_minor_roads = 7943, - GenericLocations_in_the_opposing_lanes = 7944, - GenericLocations_adjacent_to_roadway = 7945, - GenericLocations_across_tracks = 8024, - GenericLocations_on_bend = 7946, - GenericLocations_intersection = 8032, - GenericLocations_entire_intersection = 7947, - GenericLocations_in_the_median = 7948, - GenericLocations_moved_to_side_of_road = 7949, - GenericLocations_moved_to_shoulder = 7950, - GenericLocations_on_the_roadway = 7951, - GenericLocations_dip = 8010, - GenericLocations_traffic_circle = 8011, - GenericLocations_crossover = 8028, - GenericLocations_cross_road = 8029, - GenericLocations_side_road = 8030, - GenericLocations_to = 8014, - GenericLocations_by = 8015, - GenericLocations_through = 8016, - GenericLocations_area_of = 8017, - GenericLocations_under = 8018, - GenericLocations_over = 8019, - GenericLocations_from = 8020, - GenericLocations_approaching = 8021, - GenericLocations_entering_at = 8022, - GenericLocations_exiting_at = 8023, - GenericLocations_in_shaded_areas = 7952, - GenericLocations_in_low_lying_areas = 7953, - GenericLocations_in_the_downtown_area = 7954, - GenericLocations_in_the_inner_city_area = 7955, - GenericLocations_in_parts = 7956, - GenericLocations_in_some_places = 7957, - GenericLocations_in_the_ditch = 7958, - GenericLocations_in_the_valley = 7959, - GenericLocations_on_hill_top = 7960, - GenericLocations_near_the_foothills = 7961, - GenericLocations_at_high_altitudes = 7962, - GenericLocations_near_the_lake = 7963, - GenericLocations_near_the_shore = 7964, - GenericLocations_nearby_basin = 8008, - GenericLocations_over_the_crest_of_a_hill = 7965, - GenericLocations_other_than_on_the_roadway = 7966, - GenericLocations_near_the_beach = 7967, - GenericLocations_near_beach_access_point = 7968, - GenericLocations_mountain_pass = 8006, - GenericLocations_lower_level = 7969, - GenericLocations_upper_level = 7970, - GenericLocations_airport = 7971, - GenericLocations_concourse = 7972, - GenericLocations_gate = 7973, - GenericLocations_baggage_claim = 7974, - GenericLocations_customs_point = 7975, - GenericLocations_reservation_center = 8007, - GenericLocations_station = 7976, - GenericLocations_platform = 7977, - GenericLocations_dock = 7978, - GenericLocations_depot = 7979, - GenericLocations_ev_charging_point = 7980, - GenericLocations_information_welcome_point = 7981, - GenericLocations_at_rest_area = 7982, - GenericLocations_at_service_area = 7983, - GenericLocations_at_weigh_station = 7984, - GenericLocations_roadside_park = 8033, - GenericLocations_picnic_areas = 7985, - GenericLocations_rest_area = 7986, - GenericLocations_service_stations = 7987, - GenericLocations_toilets = 7988, - GenericLocations_bus_stop = 8031, - GenericLocations_park_and_ride_lot = 8012, - GenericLocations_on_the_right = 7989, - GenericLocations_on_the_left = 7990, - GenericLocations_in_the_center = 7991, - GenericLocations_in_the_opposite_direction = 7992, - GenericLocations_cross_traffic = 7993, - GenericLocations_northbound_traffic = 7994, - GenericLocations_eastbound_traffic = 7995, - GenericLocations_southbound_traffic = 7996, - GenericLocations_westbound_traffic = 7997, - GenericLocations_north = 7998, - GenericLocations_south = 7999, - GenericLocations_east = 8000, - GenericLocations_west = 8001, - GenericLocations_northeast = 8002, - GenericLocations_northwest = 8003, - GenericLocations_southeast = 8004, - GenericLocations_southwest = 8005 - /* - * Enumeration is extensible - */ -} e_GenericLocations; - -/* GenericLocations */ -typedef long GenericLocations_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GenericLocations_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GenericLocations; -extern const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1; -asn_struct_free_f GenericLocations_free; -asn_struct_print_f GenericLocations_print; -asn_constr_check_f GenericLocations_constraint; -ber_type_decoder_f GenericLocations_decode_ber; -der_type_encoder_f GenericLocations_encode_der; -xer_type_decoder_f GenericLocations_decode_xer; -xer_type_encoder_f GenericLocations_encode_xer; -jer_type_encoder_f GenericLocations_encode_jer; -oer_type_decoder_f GenericLocations_decode_oer; -oer_type_encoder_f GenericLocations_encode_oer; -per_type_decoder_f GenericLocations_decode_uper; -per_type_encoder_f GenericLocations_encode_uper; -per_type_decoder_f GenericLocations_decode_aper; -per_type_encoder_f GenericLocations_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericLocations_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h deleted file mode 100644 index 74daf0c8d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GenericSignage.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GenericSignage_H_ -#define _GenericSignage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GenericSignage__Member__item_PR { - GenericSignage__Member__item_PR_NOTHING, /* No components present */ - GenericSignage__Member__item_PR_itis, - GenericSignage__Member__item_PR_text -} GenericSignage__Member__item_PR; - -/* Forward definitions */ -typedef struct GenericSignage__Member { - struct GenericSignage__Member__item { - GenericSignage__Member__item_PR present; - union GenericSignage__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericSignage__Member; - -/* GenericSignage */ -typedef struct GenericSignage { - A_SEQUENCE_OF(GenericSignage__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericSignage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; -extern asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1; -extern asn_TYPE_member_t asn_MBR_GenericSignage_1[1]; -extern asn_per_constraints_t asn_PER_type_GenericSignage_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericSignage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h deleted file mode 100644 index 504d0eeb0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeographicalPath.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GeographicalPath_H_ -#define _GeographicalPath_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "BOOLEAN.h" -#include "HeadingSlice.h" -#include "OffsetSystem.h" -#include "GeometricProjection.h" -#include "ValidRegion.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GeographicalPath__description_PR { - GeographicalPath__description_PR_NOTHING, /* No components present */ - GeographicalPath__description_PR_path, - GeographicalPath__description_PR_geometry, - GeographicalPath__description_PR_oldRegion - /* Extensions may appear below */ - -} GeographicalPath__description_PR; - -/* Forward declarations */ -struct RoadSegmentReferenceID; -struct Position3D; -struct Reg_GeographicalPath; - -/* GeographicalPath */ -typedef struct GeographicalPath { - DescriptiveName_t *name; /* OPTIONAL */ - struct RoadSegmentReferenceID *id; /* OPTIONAL */ - struct Position3D *anchor; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - DirectionOfUse_t *directionality; /* OPTIONAL */ - BOOLEAN_t *closedPath; /* OPTIONAL */ - HeadingSlice_t *direction; /* OPTIONAL */ - struct GeographicalPath__description { - GeographicalPath__description_PR present; - union GeographicalPath__description_u { - OffsetSystem_t path; - GeometricProjection_t geometry; - ValidRegion_t oldRegion; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - struct GeographicalPath__regional { - A_SEQUENCE_OF(struct Reg_GeographicalPath) 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; -} GeographicalPath_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GeographicalPath; -extern asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1; -extern asn_TYPE_member_t asn_MBR_GeographicalPath_1[9]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GeographicalPath_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h deleted file mode 100644 index 273e253fd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GeometricProjection.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GeometricProjection_H_ -#define _GeometricProjection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingSlice.h" -#include "Extent.h" -#include "LaneWidth.h" -#include "Circle.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_GeometricProjection; - -/* GeometricProjection */ -typedef struct GeometricProjection { - HeadingSlice_t direction; - Extent_t *extent; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - Circle_t circle; - struct GeometricProjection__regional { - A_SEQUENCE_OF(struct Reg_GeometricProjection) 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; -} GeometricProjection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GeometricProjection; -extern asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1; -extern asn_TYPE_member_t asn_MBR_GeometricProjection_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GeometricProjection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h deleted file mode 100644 index 807e9d6b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GraphicString.h +++ /dev/null @@ -1,56 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _GraphicString_H_ -#define _GraphicString_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t GraphicString_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_GraphicString; -extern asn_TYPE_operation_t asn_OP_GraphicString; - -#define GraphicString_free OCTET_STRING_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define GraphicString_print OCTET_STRING_print -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define GraphicString_compare OCTET_STRING_compare - -#define GraphicString_constraint asn_generic_unknown_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define GraphicString_decode_ber OCTET_STRING_decode_ber -#define GraphicString_encode_der OCTET_STRING_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define GraphicString_decode_xer OCTET_STRING_decode_xer_hex -#define GraphicString_encode_xer OCTET_STRING_encode_xer -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -#define GraphicString_encode_jer OCTET_STRING_encode_jer -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#define GraphicString_decode_uper OCTET_STRING_decode_uper -#define GraphicString_encode_uper OCTET_STRING_encode_uper -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define GraphicString_decode_aper OCTET_STRING_decode_aper -#define GraphicString_encode_aper OCTET_STRING_encode_aper -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _GraphicString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h deleted file mode 100644 index 128358170..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossDistance.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GrossDistance_H_ -#define _GrossDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* GrossDistance */ -typedef long GrossDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GrossDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GrossDistance; -asn_struct_free_f GrossDistance_free; -asn_struct_print_f GrossDistance_print; -asn_constr_check_f GrossDistance_constraint; -ber_type_decoder_f GrossDistance_decode_ber; -der_type_encoder_f GrossDistance_encode_der; -xer_type_decoder_f GrossDistance_decode_xer; -xer_type_encoder_f GrossDistance_encode_xer; -jer_type_encoder_f GrossDistance_encode_jer; -oer_type_decoder_f GrossDistance_decode_oer; -oer_type_encoder_f GrossDistance_encode_oer; -per_type_decoder_f GrossDistance_decode_uper; -per_type_encoder_f GrossDistance_encode_uper; -per_type_decoder_f GrossDistance_decode_aper; -per_type_encoder_f GrossDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GrossDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h deleted file mode 100644 index b040e072c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/GrossSpeed.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _GrossSpeed_H_ -#define _GrossSpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* GrossSpeed */ -typedef long GrossSpeed_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GrossSpeed; -asn_struct_free_f GrossSpeed_free; -asn_struct_print_f GrossSpeed_print; -asn_constr_check_f GrossSpeed_constraint; -ber_type_decoder_f GrossSpeed_decode_ber; -der_type_encoder_f GrossSpeed_encode_der; -xer_type_decoder_f GrossSpeed_decode_xer; -xer_type_encoder_f GrossSpeed_encode_xer; -jer_type_encoder_f GrossSpeed_encode_jer; -oer_type_decoder_f GrossSpeed_decode_oer; -oer_type_encoder_f GrossSpeed_encode_oer; -per_type_decoder_f GrossSpeed_decode_uper; -per_type_encoder_f GrossSpeed_encode_uper; -per_type_decoder_f GrossSpeed_decode_aper; -per_type_encoder_f GrossSpeed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GrossSpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h deleted file mode 100644 index d4ffe3877..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Header.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Header_H_ -#define _Header_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "Common_MsgCount.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Header */ -typedef struct Header { - DYear_t *year; /* OPTIONAL */ - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t *secMark; /* OPTIONAL */ - Common_MsgCount_t *msgIssueRevision; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Header_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Header; -extern asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1; -extern asn_TYPE_member_t asn_MBR_Header_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Header_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h deleted file mode 100644 index ff12fcc54..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Heading.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Heading_H_ -#define _Heading_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Heading */ -typedef long Heading_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Heading_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Heading; -asn_struct_free_f Heading_free; -asn_struct_print_f Heading_print; -asn_constr_check_f Heading_constraint; -ber_type_decoder_f Heading_decode_ber; -der_type_encoder_f Heading_encode_der; -xer_type_decoder_f Heading_decode_xer; -xer_type_encoder_f Heading_encode_xer; -jer_type_encoder_f Heading_encode_jer; -oer_type_decoder_f Heading_decode_oer; -oer_type_encoder_f Heading_encode_oer; -per_type_decoder_f Heading_decode_uper; -per_type_encoder_f Heading_encode_uper; -per_type_decoder_f Heading_decode_aper; -per_type_encoder_f Heading_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Heading_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h deleted file mode 100644 index dd32f6654..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingConfidence.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _HeadingConfidence_H_ -#define _HeadingConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HeadingConfidence { - HeadingConfidence_unavailable = 0, - HeadingConfidence_prec10deg = 1, - HeadingConfidence_prec05deg = 2, - HeadingConfidence_prec01deg = 3, - HeadingConfidence_prec0_1deg = 4, - HeadingConfidence_prec0_05deg = 5, - HeadingConfidence_prec0_01deg = 6, - HeadingConfidence_prec0_0125deg = 7 -} e_HeadingConfidence; - -/* HeadingConfidence */ -typedef long HeadingConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1; -asn_struct_free_f HeadingConfidence_free; -asn_struct_print_f HeadingConfidence_print; -asn_constr_check_f HeadingConfidence_constraint; -ber_type_decoder_f HeadingConfidence_decode_ber; -der_type_encoder_f HeadingConfidence_encode_der; -xer_type_decoder_f HeadingConfidence_decode_xer; -xer_type_encoder_f HeadingConfidence_encode_xer; -jer_type_encoder_f HeadingConfidence_encode_jer; -oer_type_decoder_f HeadingConfidence_decode_oer; -oer_type_encoder_f HeadingConfidence_encode_oer; -per_type_decoder_f HeadingConfidence_decode_uper; -per_type_encoder_f HeadingConfidence_encode_uper; -per_type_decoder_f HeadingConfidence_decode_aper; -per_type_encoder_f HeadingConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h deleted file mode 100644 index 6b61c69d0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/HeadingSlice.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _HeadingSlice_H_ -#define _HeadingSlice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HeadingSlice { - HeadingSlice_from000_0to022_5degrees = 0, - HeadingSlice_from022_5to045_0degrees = 1, - HeadingSlice_from045_0to067_5degrees = 2, - HeadingSlice_from067_5to090_0degrees = 3, - HeadingSlice_from090_0to112_5degrees = 4, - HeadingSlice_from112_5to135_0degrees = 5, - HeadingSlice_from135_0to157_5degrees = 6, - HeadingSlice_from157_5to180_0degrees = 7, - HeadingSlice_from180_0to202_5degrees = 8, - HeadingSlice_from202_5to225_0degrees = 9, - HeadingSlice_from225_0to247_5degrees = 10, - HeadingSlice_from247_5to270_0degrees = 11, - HeadingSlice_from270_0to292_5degrees = 12, - HeadingSlice_from292_5to315_0degrees = 13, - HeadingSlice_from315_0to337_5degrees = 14, - HeadingSlice_from337_5to360_0degrees = 15 -} e_HeadingSlice; - -/* HeadingSlice */ -typedef BIT_STRING_t HeadingSlice_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; -asn_struct_free_f HeadingSlice_free; -asn_struct_print_f HeadingSlice_print; -asn_constr_check_f HeadingSlice_constraint; -ber_type_decoder_f HeadingSlice_decode_ber; -der_type_encoder_f HeadingSlice_encode_der; -xer_type_decoder_f HeadingSlice_decode_xer; -xer_type_encoder_f HeadingSlice_encode_xer; -jer_type_encoder_f HeadingSlice_encode_jer; -oer_type_decoder_f HeadingSlice_decode_oer; -oer_type_encoder_f HeadingSlice_encode_oer; -per_type_decoder_f HeadingSlice_decode_uper; -per_type_encoder_f HeadingSlice_encode_uper; -per_type_decoder_f HeadingSlice_decode_aper; -per_type_encoder_f HeadingSlice_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingSlice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h deleted file mode 100644 index 2f9a68c5b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Holiday.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Holiday_H_ -#define _Holiday_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Holiday { - Holiday_weekday = 0, - Holiday_holiday = 1 -} e_Holiday; - -/* Holiday */ -typedef long Holiday_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Holiday_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Holiday; -extern const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1; -asn_struct_free_f Holiday_free; -asn_struct_print_f Holiday_print; -asn_constr_check_f Holiday_constraint; -ber_type_decoder_f Holiday_decode_ber; -der_type_encoder_f Holiday_encode_der; -xer_type_decoder_f Holiday_decode_xer; -xer_type_encoder_f Holiday_encode_xer; -jer_type_encoder_f Holiday_encode_jer; -oer_type_decoder_f Holiday_decode_oer; -oer_type_encoder_f Holiday_encode_oer; -per_type_decoder_f Holiday_decode_uper; -per_type_encoder_f Holiday_encode_uper; -per_type_decoder_f Holiday_decode_aper; -per_type_encoder_f Holiday_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Holiday_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h deleted file mode 100644 index dc9ed9a38..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Hour.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Hour_H_ -#define _Hour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Hour */ -typedef long Hour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Hour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Hour; -asn_struct_free_f Hour_free; -asn_struct_print_f Hour_print; -asn_constr_check_f Hour_constraint; -ber_type_decoder_f Hour_decode_ber; -der_type_encoder_f Hour_encode_der; -xer_type_decoder_f Hour_decode_xer; -xer_type_encoder_f Hour_encode_xer; -jer_type_encoder_f Hour_encode_jer; -oer_type_decoder_f Hour_decode_oer; -oer_type_encoder_f Hour_encode_oer; -per_type_decoder_f Hour_decode_uper; -per_type_encoder_f Hour_encode_uper; -per_type_decoder_f Hour_decode_aper; -per_type_encoder_f Hour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Hour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h deleted file mode 100644 index eade7e553..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/HumanPropelledType.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _HumanPropelledType_H_ -#define _HumanPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HumanPropelledType { - HumanPropelledType_unavailable = 0, - HumanPropelledType_otherTypes = 1, - HumanPropelledType_onFoot = 2, - HumanPropelledType_skateboard = 3, - HumanPropelledType_pushOrKickScooter = 4, - HumanPropelledType_wheelchair = 5 - /* - * Enumeration is extensible - */ -} e_HumanPropelledType; - -/* HumanPropelledType */ -typedef long HumanPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1; -asn_struct_free_f HumanPropelledType_free; -asn_struct_print_f HumanPropelledType_print; -asn_constr_check_f HumanPropelledType_constraint; -ber_type_decoder_f HumanPropelledType_decode_ber; -der_type_encoder_f HumanPropelledType_encode_der; -xer_type_decoder_f HumanPropelledType_decode_xer; -xer_type_encoder_f HumanPropelledType_encode_xer; -jer_type_encoder_f HumanPropelledType_encode_jer; -oer_type_decoder_f HumanPropelledType_decode_oer; -oer_type_encoder_f HumanPropelledType_encode_oer; -per_type_decoder_f HumanPropelledType_decode_uper; -per_type_encoder_f HumanPropelledType_encode_uper; -per_type_decoder_f HumanPropelledType_decode_aper; -per_type_encoder_f HumanPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HumanPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h deleted file mode 100644 index 195f474a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IA5String.h +++ /dev/null @@ -1,59 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _IA5String_H_ -#define _IA5String_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ - -/* - * IA5String ASN.1 type definition. - */ -extern asn_TYPE_descriptor_t asn_DEF_IA5String; -extern asn_TYPE_operation_t asn_OP_IA5String; - -#define IA5String_free OCTET_STRING_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define IA5String_print OCTET_STRING_print_utf8 -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define IA5String_compare OCTET_STRING_compare - -asn_constr_check_f IA5String_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define IA5String_decode_ber OCTET_STRING_decode_ber -#define IA5String_encode_der OCTET_STRING_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define IA5String_decode_xer OCTET_STRING_decode_xer_utf8 -#define IA5String_encode_xer OCTET_STRING_encode_xer_utf8 -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -#define IA5String_encode_jer OCTET_STRING_encode_jer_utf8 -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#define IA5String_decode_uper OCTET_STRING_decode_uper -#define IA5String_encode_uper OCTET_STRING_encode_uper -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define IA5String_decode_aper OCTET_STRING_decode_aper -#define IA5String_encode_aper OCTET_STRING_encode_aper -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h deleted file mode 100644 index 1666e0bce..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/INTEGER.h +++ /dev/null @@ -1,139 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _INTEGER_H_ -#define _INTEGER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; - -extern asn_TYPE_descriptor_t asn_DEF_INTEGER; -extern asn_TYPE_operation_t asn_OP_INTEGER; - -/* Map with to integer value association */ -typedef struct asn_INTEGER_enum_map_s { - long nat_value; /* associated native integer value */ - size_t enum_len; /* strlen("tag") */ - const char *enum_name; /* "tag" */ -} asn_INTEGER_enum_map_t; - -/* This type describes an enumeration for INTEGER and ENUMERATED types */ -typedef struct asn_INTEGER_specifics_s { - const asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ - const unsigned int *enum2value; /* "tag" => N; sorted by tag */ - int map_count; /* Elements in either map */ - int extension; /* This map is extensible */ - int strict_enumeration; /* Enumeration set is fixed */ - int field_width; /* Size of native integer */ - int field_unsigned; /* Signed=0, unsigned=1 */ -} asn_INTEGER_specifics_t; - -ssize_t INTEGER__dump(const asn_TYPE_descriptor_t *td, - const INTEGER_t *st, - asn_app_consume_bytes_f *cb, - void *app_key, int plainOrXER); - -#define INTEGER_free ASN__PRIMITIVE_TYPE_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f INTEGER_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f INTEGER_compare; - -#define INTEGER_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define INTEGER_decode_ber ber_decode_primitive -der_type_encoder_f INTEGER_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f INTEGER_decode_xer; -xer_type_encoder_f INTEGER_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f INTEGER_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f INTEGER_decode_oer; -oer_type_encoder_f INTEGER_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f INTEGER_decode_uper; -per_type_encoder_f INTEGER_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f INTEGER_decode_aper; -per_type_encoder_f INTEGER_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f INTEGER_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -/*********************************** - * Some handy conversion routines. * - ***********************************/ - -/* - * Natiwe size-independent conversion of native integers to/from INTEGER. - * (l_size) is in bytes. - * Returns 0 if it was possible to convert, -1 otherwise. - * -1/EINVAL: Mandatory argument missing - * -1/ERANGE: Value encoded is out of range for long representation - * -1/ENOMEM: Memory allocation failed (in asn_*2INTEGER()). - */ -int asn_INTEGER2imax(const INTEGER_t *i, intmax_t *l); -int asn_INTEGER2umax(const INTEGER_t *i, uintmax_t *l); -int asn_imax2INTEGER(INTEGER_t *i, intmax_t l); -int asn_umax2INTEGER(INTEGER_t *i, uintmax_t l); - -/* - * Size-specific conversion helpers. - */ -int asn_INTEGER2long(const INTEGER_t *i, long *l); -int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); -int asn_long2INTEGER(INTEGER_t *i, long l); -int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); -int asn_int642INTEGER(INTEGER_t *i, int64_t l); -int asn_uint642INTEGER(INTEGER_t *i, uint64_t l); - -/* A version of strtol/strtoimax(3) with nicer error reporting. */ -enum asn_strtox_result_e { - ASN_STRTOX_ERROR_RANGE = -3, /* Input outside of supported numeric range */ - ASN_STRTOX_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ - ASN_STRTOX_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ - ASN_STRTOX_OK = 0, /* Conversion succeeded, number ends at (*end) */ - ASN_STRTOX_EXTRA_DATA = 1 /* Conversion succeeded, but the string has extra stuff */ -}; -enum asn_strtox_result_e asn_strtol_lim(const char *str, const char **end, - long *l); -enum asn_strtox_result_e asn_strtoul_lim(const char *str, const char **end, - unsigned long *l); -enum asn_strtox_result_e asn_strtoimax_lim(const char *str, const char **end, - intmax_t *l); -enum asn_strtox_result_e asn_strtoumax_lim(const char *str, const char **end, - uintmax_t *l); - -/* - * Convert the integer value into the corresponding enumeration map entry. - */ -const asn_INTEGER_enum_map_t *INTEGER_map_value2enum( - const asn_INTEGER_specifics_t *specs, long value); - -#ifdef __cplusplus -} -#endif - -#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h deleted file mode 100644 index b4bcf8bb3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodes.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ITIScodes_H_ -#define _ITIScodes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIScodes */ -typedef long ITIScodes_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIScodes_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; -asn_struct_free_f ITIScodes_free; -asn_struct_print_f ITIScodes_print; -asn_constr_check_f ITIScodes_constraint; -ber_type_decoder_f ITIScodes_decode_ber; -der_type_encoder_f ITIScodes_encode_der; -xer_type_decoder_f ITIScodes_decode_xer; -xer_type_encoder_f ITIScodes_encode_xer; -jer_type_encoder_f ITIScodes_encode_jer; -oer_type_decoder_f ITIScodes_decode_oer; -oer_type_encoder_f ITIScodes_encode_oer; -per_type_decoder_f ITIScodes_decode_uper; -per_type_encoder_f ITIScodes_encode_uper; -per_type_decoder_f ITIScodes_decode_aper; -per_type_encoder_f ITIScodes_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h deleted file mode 100644 index eab1fa493..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIScodesAndText.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ITIScodesAndText_H_ -#define _ITIScodesAndText_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStext.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ITIScodesAndText__Member__item_PR { - ITIScodesAndText__Member__item_PR_NOTHING, /* No components present */ - ITIScodesAndText__Member__item_PR_itis, - ITIScodesAndText__Member__item_PR_text -} ITIScodesAndText__Member__item_PR; - -/* Forward definitions */ -typedef struct ITIScodesAndText__Member { - struct ITIScodesAndText__Member__item { - ITIScodesAndText__Member__item_PR present; - union ITIScodesAndText__Member__item_u { - ITIScodes_t itis; - ITIStext_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ITIScodesAndText__Member; - -/* ITIScodesAndText */ -typedef struct ITIScodesAndText { - A_SEQUENCE_OF(ITIScodesAndText__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ITIScodesAndText_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; -extern asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1; -extern asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[1]; -extern asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodesAndText_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h deleted file mode 100644 index cf9e66ad3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStext.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ITIStext_H_ -#define _ITIStext_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIStext */ -typedef IA5String_t ITIStext_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIStext_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIStext; -asn_struct_free_f ITIStext_free; -asn_struct_print_f ITIStext_print; -asn_constr_check_f ITIStext_constraint; -ber_type_decoder_f ITIStext_decode_ber; -der_type_encoder_f ITIStext_encode_der; -xer_type_decoder_f ITIStext_decode_xer; -xer_type_encoder_f ITIStext_encode_xer; -jer_type_encoder_f ITIStext_encode_jer; -oer_type_decoder_f ITIStext_decode_oer; -oer_type_encoder_f ITIStext_encode_oer; -per_type_decoder_f ITIStext_decode_uper; -per_type_encoder_f ITIStext_encode_uper; -per_type_decoder_f ITIStext_decode_aper; -per_type_encoder_f ITIStext_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIStext_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h deleted file mode 100644 index e76da80f9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ITIStextPhrase.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ITIStextPhrase_H_ -#define _ITIStextPhrase_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIStextPhrase */ -typedef IA5String_t ITIStextPhrase_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase; -asn_struct_free_f ITIStextPhrase_free; -asn_struct_print_f ITIStextPhrase_print; -asn_constr_check_f ITIStextPhrase_constraint; -ber_type_decoder_f ITIStextPhrase_decode_ber; -der_type_encoder_f ITIStextPhrase_encode_der; -xer_type_decoder_f ITIStextPhrase_decode_xer; -xer_type_encoder_f ITIStextPhrase_encode_xer; -jer_type_encoder_f ITIStextPhrase_encode_jer; -oer_type_decoder_f ITIStextPhrase_decode_oer; -oer_type_encoder_f ITIStextPhrase_encode_oer; -per_type_decoder_f ITIStextPhrase_decode_uper; -per_type_encoder_f ITIStextPhrase_encode_uper; -per_type_decoder_f ITIStextPhrase_decode_aper; -per_type_encoder_f ITIStextPhrase_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIStextPhrase_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h deleted file mode 100644 index 67ce89ff7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IncidentResponseEquipment.h +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IncidentResponseEquipment_H_ -#define _IncidentResponseEquipment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IncidentResponseEquipment { - IncidentResponseEquipment_ground_fire_suppression = 9985, - IncidentResponseEquipment_heavy_ground_equipment = 9986, - IncidentResponseEquipment_aircraft = 9988, - IncidentResponseEquipment_marine_equipment = 9989, - IncidentResponseEquipment_support_equipment = 9990, - IncidentResponseEquipment_medical_rescue_unit = 9991, - IncidentResponseEquipment_other = 9993, - IncidentResponseEquipment_ground_fire_suppression_other = 9994, - IncidentResponseEquipment_engine = 9995, - IncidentResponseEquipment_truck_or_aerial = 9996, - IncidentResponseEquipment_quint = 9997, - IncidentResponseEquipment_tanker_pumper_combination = 9998, - IncidentResponseEquipment_brush_truck = 10000, - IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, - IncidentResponseEquipment_heavy_ground_equipment_other = 10004, - IncidentResponseEquipment_dozer_or_plow = 10005, - IncidentResponseEquipment_tractor = 10006, - IncidentResponseEquipment_tanker_or_tender = 10008, - IncidentResponseEquipment_aircraft_other = 10024, - IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, - IncidentResponseEquipment_helitanker = 10026, - IncidentResponseEquipment_helicopter = 10027, - IncidentResponseEquipment_marine_equipment_other = 10034, - IncidentResponseEquipment_fire_boat_with_pump = 10035, - IncidentResponseEquipment_boat_no_pump = 10036, - IncidentResponseEquipment_support_apparatus_other = 10044, - IncidentResponseEquipment_breathing_apparatus_support = 10045, - IncidentResponseEquipment_light_and_air_unit = 10046, - IncidentResponseEquipment_medical_rescue_unit_other = 10054, - IncidentResponseEquipment_rescue_unit = 10055, - IncidentResponseEquipment_urban_search_rescue_unit = 10056, - IncidentResponseEquipment_high_angle_rescue = 10057, - IncidentResponseEquipment_crash_fire_rescue = 10058, - IncidentResponseEquipment_bLS_unit = 10059, - IncidentResponseEquipment_aLS_unit = 10060, - IncidentResponseEquipment_mobile_command_post = 10075, - IncidentResponseEquipment_chief_officer_car = 10076, - IncidentResponseEquipment_hAZMAT_unit = 10077, - IncidentResponseEquipment_type_i_hand_crew = 10078, - IncidentResponseEquipment_type_ii_hand_crew = 10079, - IncidentResponseEquipment_privately_owned_vehicle = 10083, - IncidentResponseEquipment_other_apparatus_resource = 10084, - IncidentResponseEquipment_ambulance = 10085, - IncidentResponseEquipment_bomb_squad_van = 10086, - IncidentResponseEquipment_combine_harvester = 10087, - IncidentResponseEquipment_construction_vehicle = 10088, - IncidentResponseEquipment_farm_tractor = 10089, - IncidentResponseEquipment_grass_cutting_machines = 10090, - IncidentResponseEquipment_hAZMAT_containment_tow = 10091, - IncidentResponseEquipment_heavy_tow = 10092, - IncidentResponseEquipment_light_tow = 10094, - IncidentResponseEquipment_flatbed_tow = 10114, - IncidentResponseEquipment_hedge_cutting_machines = 10093, - IncidentResponseEquipment_mobile_crane = 10095, - IncidentResponseEquipment_refuse_collection_vehicle = 10096, - IncidentResponseEquipment_resurfacing_vehicle = 10097, - IncidentResponseEquipment_road_sweeper = 10098, - IncidentResponseEquipment_roadside_litter_collection_crews = 10099, - IncidentResponseEquipment_salvage_vehicle = 10100, - IncidentResponseEquipment_sand_truck = 10101, - IncidentResponseEquipment_snowplow = 10102, - IncidentResponseEquipment_steam_roller = 10103, - IncidentResponseEquipment_swat_team_van = 10104, - IncidentResponseEquipment_track_laying_vehicle = 10105, - IncidentResponseEquipment_unknown_vehicle = 10106, - IncidentResponseEquipment_white_lining_vehicle = 10107, - IncidentResponseEquipment_dump_truck = 10108, - IncidentResponseEquipment_supervisor_vehicle = 10109, - IncidentResponseEquipment_snow_blower = 10110, - IncidentResponseEquipment_rotary_snow_blower = 10111, - IncidentResponseEquipment_road_grader = 10112, - IncidentResponseEquipment_steam_truck = 10113 - /* - * Enumeration is extensible - */ -} e_IncidentResponseEquipment; - -/* IncidentResponseEquipment */ -typedef long IncidentResponseEquipment_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; -extern const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1; -asn_struct_free_f IncidentResponseEquipment_free; -asn_struct_print_f IncidentResponseEquipment_print; -asn_constr_check_f IncidentResponseEquipment_constraint; -ber_type_decoder_f IncidentResponseEquipment_decode_ber; -der_type_encoder_f IncidentResponseEquipment_encode_der; -xer_type_decoder_f IncidentResponseEquipment_decode_xer; -xer_type_encoder_f IncidentResponseEquipment_encode_xer; -jer_type_encoder_f IncidentResponseEquipment_encode_jer; -oer_type_decoder_f IncidentResponseEquipment_decode_oer; -oer_type_encoder_f IncidentResponseEquipment_encode_oer; -per_type_decoder_f IncidentResponseEquipment_decode_uper; -per_type_encoder_f IncidentResponseEquipment_encode_uper; -per_type_decoder_f IncidentResponseEquipment_decode_aper; -per_type_encoder_f IncidentResponseEquipment_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IncidentResponseEquipment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h deleted file mode 100644 index 996db7e27..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionAccessPoint.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionAccessPoint_H_ -#define _IntersectionAccessPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "ApproachID.h" -#include "LaneConnectionID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IntersectionAccessPoint_PR { - IntersectionAccessPoint_PR_NOTHING, /* No components present */ - IntersectionAccessPoint_PR_lane, - IntersectionAccessPoint_PR_approach, - IntersectionAccessPoint_PR_connection - /* Extensions may appear below */ - -} IntersectionAccessPoint_PR; - -/* IntersectionAccessPoint */ -typedef struct IntersectionAccessPoint { - IntersectionAccessPoint_PR present; - union IntersectionAccessPoint_u { - LaneID_t lane; - ApproachID_t approach; - LaneConnectionID_t connection; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionAccessPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint; -extern asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[3]; -extern asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionAccessPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h deleted file mode 100644 index 5098291b4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionCollision.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "IntersectionCollision" - * found in "J2735-IntersectionCollision.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionCollision_H_ -#define _IntersectionCollision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "TemporaryID.h" -#include "MinuteOfTheYear.h" -#include "IntersectionReferenceID.h" -#include "ApproachOrLane.h" -#include "VehicleEventFlags.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BSMcoreData; -struct PathHistory; -struct PathPrediction; -struct Reg_IntersectionCollision; - -/* IntersectionCollision */ -typedef struct IntersectionCollision { - Common_MsgCount_t msgCnt; - TemporaryID_t id; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - struct BSMcoreData *partOne; /* OPTIONAL */ - struct PathHistory *path; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - IntersectionReferenceID_t intersectionID; - ApproachOrLane_t laneNumber; - VehicleEventFlags_t eventFlag; - struct IntersectionCollision__regional { - A_SEQUENCE_OF(struct Reg_IntersectionCollision) 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; -} IntersectionCollision_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionCollision_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionCollision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h deleted file mode 100644 index 01929f1ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometry.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionGeometry_H_ -#define _IntersectionGeometry_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "Common_MsgCount.h" -#include "Position3D.h" -#include "LaneWidth.h" -#include "LaneList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct PreemptPriorityList; -struct Reg_IntersectionGeometry; - -/* IntersectionGeometry */ -typedef struct IntersectionGeometry { - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionReferenceID_t id; - Common_MsgCount_t revision; - Position3D_t refPoint; - LaneWidth_t *laneWidth; /* OPTIONAL */ - struct SpeedLimitList *speedLimits; /* OPTIONAL */ - LaneList_t laneSet; - struct PreemptPriorityList *preemptPriorityData; /* OPTIONAL */ - struct IntersectionGeometry__regional { - A_SEQUENCE_OF(struct Reg_IntersectionGeometry) 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; -} IntersectionGeometry_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[9]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionGeometry_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h deleted file mode 100644 index 151596b0f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionGeometryList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionGeometryList_H_ -#define _IntersectionGeometryList_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 IntersectionGeometry; - -/* IntersectionGeometryList */ -typedef struct IntersectionGeometryList { - A_SEQUENCE_OF(struct IntersectionGeometry) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionGeometryList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; -extern asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[1]; -extern asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionGeometryList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h deleted file mode 100644 index ff0997db1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionID_H_ -#define _IntersectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionID */ -typedef long IntersectionID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IntersectionID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; -asn_struct_free_f IntersectionID_free; -asn_struct_print_f IntersectionID_print; -asn_constr_check_f IntersectionID_constraint; -ber_type_decoder_f IntersectionID_decode_ber; -der_type_encoder_f IntersectionID_encode_der; -xer_type_decoder_f IntersectionID_decode_xer; -xer_type_encoder_f IntersectionID_encode_xer; -jer_type_encoder_f IntersectionID_encode_jer; -oer_type_decoder_f IntersectionID_decode_oer; -oer_type_encoder_f IntersectionID_encode_oer; -per_type_decoder_f IntersectionID_decode_uper; -per_type_encoder_f IntersectionID_encode_uper; -per_type_decoder_f IntersectionID_decode_aper; -per_type_encoder_f IntersectionID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h deleted file mode 100644 index d3ea00216..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionReferenceID.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionReferenceID_H_ -#define _IntersectionReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "IntersectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionReferenceID */ -typedef struct IntersectionReferenceID { - RoadRegulatorID_t *region; /* OPTIONAL */ - IntersectionID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h deleted file mode 100644 index 60789c0f4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState-addGrpC.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionState_addGrpC_H_ -#define _IntersectionState_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PrioritizationResponseList; - -/* IntersectionState-addGrpC */ -typedef struct IntersectionState_addGrpC { - struct PrioritizationResponseList *activePrioritizations; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionState_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionState_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h deleted file mode 100644 index 85728055b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionState.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionState_H_ -#define _IntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "Common_MsgCount.h" -#include "IntersectionStatusObject.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "MovementList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EnabledLaneList; -struct ManeuverAssistList; -struct Reg_IntersectionState; - -/* IntersectionState */ -typedef struct IntersectionState { - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionReferenceID_t id; - Common_MsgCount_t revision; - IntersectionStatusObject_t status; - MinuteOfTheYear_t *moy; /* OPTIONAL */ - DSecond_t *timeStamp; /* OPTIONAL */ - struct EnabledLaneList *enabledLanes; /* OPTIONAL */ - MovementList_t states; - struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ - struct IntersectionState__regional { - A_SEQUENCE_OF(struct Reg_IntersectionState) 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; -} IntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionState_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h deleted file mode 100644 index 57cd0662c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStateList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionStateList_H_ -#define _IntersectionStateList_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 IntersectionState; - -/* IntersectionStateList */ -typedef struct IntersectionStateList { - A_SEQUENCE_OF(struct IntersectionState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionStateList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; -extern asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionStateList_1[1]; -extern asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionStateList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h deleted file mode 100644 index f1634f0a6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IntersectionStatusObject.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IntersectionStatusObject_H_ -#define _IntersectionStatusObject_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IntersectionStatusObject { - IntersectionStatusObject_manualControlIsEnabled = 0, - IntersectionStatusObject_stopTimeIsActivated = 1, - IntersectionStatusObject_failureFlash = 2, - IntersectionStatusObject_preemptIsActive = 3, - IntersectionStatusObject_signalPriorityIsActive = 4, - IntersectionStatusObject_fixedTimeOperation = 5, - IntersectionStatusObject_trafficDependentOperation = 6, - IntersectionStatusObject_standbyOperation = 7, - IntersectionStatusObject_failureMode = 8, - IntersectionStatusObject_off = 9, - IntersectionStatusObject_recentMAPmessageUpdate = 10, - IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, - IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, - IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 -} e_IntersectionStatusObject; - -/* IntersectionStatusObject */ -typedef BIT_STRING_t IntersectionStatusObject_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; -asn_struct_free_f IntersectionStatusObject_free; -asn_struct_print_f IntersectionStatusObject_print; -asn_constr_check_f IntersectionStatusObject_constraint; -ber_type_decoder_f IntersectionStatusObject_decode_ber; -der_type_encoder_f IntersectionStatusObject_encode_der; -xer_type_decoder_f IntersectionStatusObject_decode_xer; -xer_type_encoder_f IntersectionStatusObject_encode_xer; -jer_type_encoder_f IntersectionStatusObject_encode_jer; -oer_type_decoder_f IntersectionStatusObject_decode_oer; -oer_type_encoder_f IntersectionStatusObject_encode_oer; -per_type_decoder_f IntersectionStatusObject_decode_uper; -per_type_encoder_f IntersectionStatusObject_encode_uper; -per_type_decoder_f IntersectionStatusObject_decode_aper; -per_type_encoder_f IntersectionStatusObject_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionStatusObject_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h deleted file mode 100644 index e85806b19..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/IsDolly.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _IsDolly_H_ -#define _IsDolly_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IsDolly */ -typedef BOOLEAN_t IsDolly_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IsDolly; -asn_struct_free_f IsDolly_free; -asn_struct_print_f IsDolly_print; -asn_constr_check_f IsDolly_constraint; -ber_type_decoder_f IsDolly_decode_ber; -der_type_encoder_f IsDolly_encode_der; -xer_type_decoder_f IsDolly_decode_xer; -xer_type_encoder_f IsDolly_encode_xer; -jer_type_encoder_f IsDolly_encode_jer; -oer_type_decoder_f IsDolly_decode_oer; -oer_type_encoder_f IsDolly_encode_oer; -per_type_decoder_f IsDolly_decode_uper; -per_type_encoder_f IsDolly_encode_uper; -per_type_decoder_f IsDolly_decode_aper; -per_type_encoder_f IsDolly_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IsDolly_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h deleted file mode 100644 index e6ba88946..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Iso3833VehicleType.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Iso3833VehicleType_H_ -#define _Iso3833VehicleType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Iso3833VehicleType */ -typedef long Iso3833VehicleType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType; -asn_struct_free_f Iso3833VehicleType_free; -asn_struct_print_f Iso3833VehicleType_print; -asn_constr_check_f Iso3833VehicleType_constraint; -ber_type_decoder_f Iso3833VehicleType_decode_ber; -der_type_encoder_f Iso3833VehicleType_encode_der; -xer_type_decoder_f Iso3833VehicleType_decode_xer; -xer_type_encoder_f Iso3833VehicleType_encode_xer; -jer_type_encoder_f Iso3833VehicleType_encode_jer; -oer_type_decoder_f Iso3833VehicleType_decode_oer; -oer_type_encoder_f Iso3833VehicleType_encode_oer; -per_type_decoder_f Iso3833VehicleType_decode_uper; -per_type_encoder_f Iso3833VehicleType_encode_uper; -per_type_decoder_f Iso3833VehicleType_decode_aper; -per_type_encoder_f Iso3833VehicleType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Iso3833VehicleType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h deleted file mode 100644 index dceae1fd9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/J1939data.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _J1939data_H_ -#define _J1939data_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrailerWeight.h" -#include "CargoWeight.h" -#include "SteeringAxleTemperature.h" -#include "DriveAxleLocation.h" -#include "DriveAxleLiftAirPressure.h" -#include "DriveAxleTemperature.h" -#include "DriveAxleLubePressure.h" -#include "SteeringAxleLubePressure.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TireDataList; -struct AxleWeightList; - -/* J1939data */ -typedef struct J1939data { - struct TireDataList *tires; /* OPTIONAL */ - struct AxleWeightList *axles; /* OPTIONAL */ - TrailerWeight_t *trailerWeight; /* OPTIONAL */ - CargoWeight_t *cargoWeight; /* OPTIONAL */ - SteeringAxleTemperature_t *steeringAxleTemperature; /* OPTIONAL */ - DriveAxleLocation_t *driveAxleLocation; /* OPTIONAL */ - DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure; /* OPTIONAL */ - DriveAxleTemperature_t *driveAxleTemperature; /* OPTIONAL */ - DriveAxleLubePressure_t *driveAxleLubePressure; /* OPTIONAL */ - SteeringAxleLubePressure_t *steeringAxleLubePressure; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} J1939data_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_J1939data; -extern asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1; -extern asn_TYPE_member_t asn_MBR_J1939data_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _J1939data_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h deleted file mode 100644 index d82f5c472..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Barrier.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Barrier_H_ -#define _LaneAttributes_Barrier_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Barrier { - LaneAttributes_Barrier_median_RevocableLane = 0, - LaneAttributes_Barrier_median = 1, - LaneAttributes_Barrier_whiteLineHashing = 2, - LaneAttributes_Barrier_stripedLines = 3, - LaneAttributes_Barrier_doubleStripedLines = 4, - LaneAttributes_Barrier_trafficCones = 5, - LaneAttributes_Barrier_constructionBarrier = 6, - LaneAttributes_Barrier_trafficChannels = 7, - LaneAttributes_Barrier_lowCurbs = 8, - LaneAttributes_Barrier_highCurbs = 9 -} e_LaneAttributes_Barrier; - -/* LaneAttributes-Barrier */ -typedef BIT_STRING_t LaneAttributes_Barrier_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; -asn_struct_free_f LaneAttributes_Barrier_free; -asn_struct_print_f LaneAttributes_Barrier_print; -asn_constr_check_f LaneAttributes_Barrier_constraint; -ber_type_decoder_f LaneAttributes_Barrier_decode_ber; -der_type_encoder_f LaneAttributes_Barrier_encode_der; -xer_type_decoder_f LaneAttributes_Barrier_decode_xer; -xer_type_encoder_f LaneAttributes_Barrier_encode_xer; -jer_type_encoder_f LaneAttributes_Barrier_encode_jer; -oer_type_decoder_f LaneAttributes_Barrier_decode_oer; -oer_type_encoder_f LaneAttributes_Barrier_encode_oer; -per_type_decoder_f LaneAttributes_Barrier_decode_uper; -per_type_encoder_f LaneAttributes_Barrier_encode_uper; -per_type_decoder_f LaneAttributes_Barrier_decode_aper; -per_type_encoder_f LaneAttributes_Barrier_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Barrier_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h deleted file mode 100644 index a98e9aa42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Bike.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Bike_H_ -#define _LaneAttributes_Bike_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Bike { - LaneAttributes_Bike_bikeRevocableLane = 0, - LaneAttributes_Bike_pedestrianUseAllowed = 1, - LaneAttributes_Bike_isBikeFlyOverLane = 2, - LaneAttributes_Bike_fixedCycleTime = 3, - LaneAttributes_Bike_biDirectionalCycleTimes = 4, - LaneAttributes_Bike_isolatedByBarrier = 5, - LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 -} e_LaneAttributes_Bike; - -/* LaneAttributes-Bike */ -typedef BIT_STRING_t LaneAttributes_Bike_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; -asn_struct_free_f LaneAttributes_Bike_free; -asn_struct_print_f LaneAttributes_Bike_print; -asn_constr_check_f LaneAttributes_Bike_constraint; -ber_type_decoder_f LaneAttributes_Bike_decode_ber; -der_type_encoder_f LaneAttributes_Bike_encode_der; -xer_type_decoder_f LaneAttributes_Bike_decode_xer; -xer_type_encoder_f LaneAttributes_Bike_encode_xer; -jer_type_encoder_f LaneAttributes_Bike_encode_jer; -oer_type_decoder_f LaneAttributes_Bike_decode_oer; -oer_type_encoder_f LaneAttributes_Bike_encode_oer; -per_type_decoder_f LaneAttributes_Bike_decode_uper; -per_type_encoder_f LaneAttributes_Bike_encode_uper; -per_type_decoder_f LaneAttributes_Bike_decode_aper; -per_type_encoder_f LaneAttributes_Bike_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Bike_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h deleted file mode 100644 index e874875d1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Crosswalk.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Crosswalk_H_ -#define _LaneAttributes_Crosswalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Crosswalk { - LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, - LaneAttributes_Crosswalk_bicyleUseAllowed = 1, - LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, - LaneAttributes_Crosswalk_fixedCycleTime = 3, - LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, - LaneAttributes_Crosswalk_hasPushToWalkButton = 5, - LaneAttributes_Crosswalk_audioSupport = 6, - LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, - LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 -} e_LaneAttributes_Crosswalk; - -/* LaneAttributes-Crosswalk */ -typedef BIT_STRING_t LaneAttributes_Crosswalk_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; -asn_struct_free_f LaneAttributes_Crosswalk_free; -asn_struct_print_f LaneAttributes_Crosswalk_print; -asn_constr_check_f LaneAttributes_Crosswalk_constraint; -ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; -der_type_encoder_f LaneAttributes_Crosswalk_encode_der; -xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; -xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; -jer_type_encoder_f LaneAttributes_Crosswalk_encode_jer; -oer_type_decoder_f LaneAttributes_Crosswalk_decode_oer; -oer_type_encoder_f LaneAttributes_Crosswalk_encode_oer; -per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; -per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; -per_type_decoder_f LaneAttributes_Crosswalk_decode_aper; -per_type_encoder_f LaneAttributes_Crosswalk_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Crosswalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h deleted file mode 100644 index e69e25f6a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Parking.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Parking_H_ -#define _LaneAttributes_Parking_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Parking { - LaneAttributes_Parking_parkingRevocableLane = 0, - LaneAttributes_Parking_parallelParkingInUse = 1, - LaneAttributes_Parking_headInParkingInUse = 2, - LaneAttributes_Parking_doNotParkZone = 3, - LaneAttributes_Parking_parkingForBusUse = 4, - LaneAttributes_Parking_parkingForTaxiUse = 5, - LaneAttributes_Parking_noPublicParkingUse = 6 -} e_LaneAttributes_Parking; - -/* LaneAttributes-Parking */ -typedef BIT_STRING_t LaneAttributes_Parking_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; -asn_struct_free_f LaneAttributes_Parking_free; -asn_struct_print_f LaneAttributes_Parking_print; -asn_constr_check_f LaneAttributes_Parking_constraint; -ber_type_decoder_f LaneAttributes_Parking_decode_ber; -der_type_encoder_f LaneAttributes_Parking_encode_der; -xer_type_decoder_f LaneAttributes_Parking_decode_xer; -xer_type_encoder_f LaneAttributes_Parking_encode_xer; -jer_type_encoder_f LaneAttributes_Parking_encode_jer; -oer_type_decoder_f LaneAttributes_Parking_decode_oer; -oer_type_encoder_f LaneAttributes_Parking_encode_oer; -per_type_decoder_f LaneAttributes_Parking_decode_uper; -per_type_encoder_f LaneAttributes_Parking_encode_uper; -per_type_decoder_f LaneAttributes_Parking_decode_aper; -per_type_encoder_f LaneAttributes_Parking_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Parking_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h deleted file mode 100644 index 5497b7839..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Sidewalk.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Sidewalk_H_ -#define _LaneAttributes_Sidewalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Sidewalk { - LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, - LaneAttributes_Sidewalk_bicyleUseAllowed = 1, - LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, - LaneAttributes_Sidewalk_walkBikes = 3 -} e_LaneAttributes_Sidewalk; - -/* LaneAttributes-Sidewalk */ -typedef BIT_STRING_t LaneAttributes_Sidewalk_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; -asn_struct_free_f LaneAttributes_Sidewalk_free; -asn_struct_print_f LaneAttributes_Sidewalk_print; -asn_constr_check_f LaneAttributes_Sidewalk_constraint; -ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; -der_type_encoder_f LaneAttributes_Sidewalk_encode_der; -xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; -xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; -jer_type_encoder_f LaneAttributes_Sidewalk_encode_jer; -oer_type_decoder_f LaneAttributes_Sidewalk_decode_oer; -oer_type_encoder_f LaneAttributes_Sidewalk_encode_oer; -per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; -per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; -per_type_decoder_f LaneAttributes_Sidewalk_decode_aper; -per_type_encoder_f LaneAttributes_Sidewalk_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Sidewalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h deleted file mode 100644 index 722fc4e73..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Striping.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Striping_H_ -#define _LaneAttributes_Striping_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Striping { - LaneAttributes_Striping_stripeToConnectingLanesRevocableLane = 0, - LaneAttributes_Striping_stripeDrawOnLeft = 1, - LaneAttributes_Striping_stripeDrawOnRight = 2, - LaneAttributes_Striping_stripeToConnectingLanesLeft = 3, - LaneAttributes_Striping_stripeToConnectingLanesRight = 4, - LaneAttributes_Striping_stripeToConnectingLanesAhead = 5 -} e_LaneAttributes_Striping; - -/* LaneAttributes-Striping */ -typedef BIT_STRING_t LaneAttributes_Striping_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; -asn_struct_free_f LaneAttributes_Striping_free; -asn_struct_print_f LaneAttributes_Striping_print; -asn_constr_check_f LaneAttributes_Striping_constraint; -ber_type_decoder_f LaneAttributes_Striping_decode_ber; -der_type_encoder_f LaneAttributes_Striping_encode_der; -xer_type_decoder_f LaneAttributes_Striping_decode_xer; -xer_type_encoder_f LaneAttributes_Striping_encode_xer; -jer_type_encoder_f LaneAttributes_Striping_encode_jer; -oer_type_decoder_f LaneAttributes_Striping_decode_oer; -oer_type_encoder_f LaneAttributes_Striping_encode_oer; -per_type_decoder_f LaneAttributes_Striping_decode_uper; -per_type_encoder_f LaneAttributes_Striping_encode_uper; -per_type_decoder_f LaneAttributes_Striping_decode_aper; -per_type_encoder_f LaneAttributes_Striping_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Striping_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h deleted file mode 100644 index 06e52ced2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-TrackedVehicle.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_TrackedVehicle_H_ -#define _LaneAttributes_TrackedVehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_TrackedVehicle { - LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, - LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, - LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, - LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, - LaneAttributes_TrackedVehicle_spec_otherRailType = 4 -} e_LaneAttributes_TrackedVehicle; - -/* LaneAttributes-TrackedVehicle */ -typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; -asn_struct_free_f LaneAttributes_TrackedVehicle_free; -asn_struct_print_f LaneAttributes_TrackedVehicle_print; -asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; -ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; -der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; -xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; -xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; -jer_type_encoder_f LaneAttributes_TrackedVehicle_encode_jer; -oer_type_decoder_f LaneAttributes_TrackedVehicle_decode_oer; -oer_type_encoder_f LaneAttributes_TrackedVehicle_encode_oer; -per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; -per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; -per_type_decoder_f LaneAttributes_TrackedVehicle_decode_aper; -per_type_encoder_f LaneAttributes_TrackedVehicle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_TrackedVehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h deleted file mode 100644 index ac9e3cffa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes-Vehicle.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_Vehicle_H_ -#define _LaneAttributes_Vehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Vehicle { - LaneAttributes_Vehicle_isVehicleRevocableLane = 0, - LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, - LaneAttributes_Vehicle_hovLaneUseOnly = 2, - LaneAttributes_Vehicle_restrictedToBusUse = 3, - LaneAttributes_Vehicle_restrictedToTaxiUse = 4, - LaneAttributes_Vehicle_restrictedFromPublicUse = 5, - LaneAttributes_Vehicle_hasIRbeaconCoverage = 6, - LaneAttributes_Vehicle_permissionOnRequest = 7 -} e_LaneAttributes_Vehicle; - -/* LaneAttributes-Vehicle */ -typedef BIT_STRING_t LaneAttributes_Vehicle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; -asn_struct_free_f LaneAttributes_Vehicle_free; -asn_struct_print_f LaneAttributes_Vehicle_print; -asn_constr_check_f LaneAttributes_Vehicle_constraint; -ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; -der_type_encoder_f LaneAttributes_Vehicle_encode_der; -xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; -xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; -jer_type_encoder_f LaneAttributes_Vehicle_encode_jer; -oer_type_decoder_f LaneAttributes_Vehicle_decode_oer; -oer_type_encoder_f LaneAttributes_Vehicle_encode_oer; -per_type_decoder_f LaneAttributes_Vehicle_decode_uper; -per_type_encoder_f LaneAttributes_Vehicle_encode_uper; -per_type_decoder_f LaneAttributes_Vehicle_decode_aper; -per_type_encoder_f LaneAttributes_Vehicle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Vehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h deleted file mode 100644 index 2b3b18a96..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneAttributes.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneAttributes_H_ -#define _LaneAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneDirection.h" -#include "LaneSharing.h" -#include "LaneTypeAttributes.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_LaneAttributes; - -/* LaneAttributes */ -typedef struct LaneAttributes { - LaneDirection_t directionalUse; - LaneSharing_t sharedWith; - LaneTypeAttributes_t laneType; - struct Reg_LaneAttributes *regional; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; -extern asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneAttributes_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h deleted file mode 100644 index 9a661762e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneConnectionID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneConnectionID_H_ -#define _LaneConnectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneConnectionID */ -typedef long LaneConnectionID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; -asn_struct_free_f LaneConnectionID_free; -asn_struct_print_f LaneConnectionID_print; -asn_constr_check_f LaneConnectionID_constraint; -ber_type_decoder_f LaneConnectionID_decode_ber; -der_type_encoder_f LaneConnectionID_encode_der; -xer_type_decoder_f LaneConnectionID_decode_xer; -xer_type_encoder_f LaneConnectionID_encode_xer; -jer_type_encoder_f LaneConnectionID_encode_jer; -oer_type_decoder_f LaneConnectionID_decode_oer; -oer_type_encoder_f LaneConnectionID_encode_oer; -per_type_decoder_f LaneConnectionID_decode_uper; -per_type_encoder_f LaneConnectionID_encode_uper; -per_type_decoder_f LaneConnectionID_decode_aper; -per_type_encoder_f LaneConnectionID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneConnectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h deleted file mode 100644 index bc3283795..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute-addGrpB.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneDataAttribute_addGrpB_H_ -#define _LaneDataAttribute_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneDataAttribute-addGrpB */ -typedef struct LaneDataAttribute_addGrpB { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttribute_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB; -extern asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDataAttribute_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h deleted file mode 100644 index 94f22a44c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttribute.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneDataAttribute_H_ -#define _LaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DeltaAngle.h" -#include "RoadwayCrownAngle.h" -#include "MergeDivergeNodeAngle.h" -#include "SpeedLimitList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDataAttribute_PR { - LaneDataAttribute_PR_NOTHING, /* No components present */ - LaneDataAttribute_PR_pathEndPointAngle, - LaneDataAttribute_PR_laneCrownPointCenter, - LaneDataAttribute_PR_laneCrownPointLeft, - LaneDataAttribute_PR_laneCrownPointRight, - LaneDataAttribute_PR_laneAngle, - LaneDataAttribute_PR_speedLimits, - LaneDataAttribute_PR_regional - /* Extensions may appear below */ - -} LaneDataAttribute_PR; - -/* Forward declarations */ -struct Reg_LaneDataAttribute; - -/* LaneDataAttribute */ -typedef struct LaneDataAttribute { - LaneDataAttribute_PR present; - union LaneDataAttribute_u { - DeltaAngle_t pathEndPointAngle; - RoadwayCrownAngle_t laneCrownPointCenter; - RoadwayCrownAngle_t laneCrownPointLeft; - RoadwayCrownAngle_t laneCrownPointRight; - MergeDivergeNodeAngle_t laneAngle; - SpeedLimitList_t speedLimits; - struct LaneDataAttribute__regional { - A_SEQUENCE_OF(struct Reg_LaneDataAttribute) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regional; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; -extern asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[7]; -extern asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h deleted file mode 100644 index 05201b136..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDataAttributeList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneDataAttributeList_H_ -#define _LaneDataAttributeList_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 LaneDataAttribute; - -/* LaneDataAttributeList */ -typedef struct LaneDataAttributeList { - A_SEQUENCE_OF(struct LaneDataAttribute) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; -extern asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[1]; -extern asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDataAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h deleted file mode 100644 index b089eb897..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneDirection.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneDirection_H_ -#define _LaneDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDirection { - LaneDirection_ingressPath = 0, - LaneDirection_egressPath = 1 -} e_LaneDirection; - -/* LaneDirection */ -typedef BIT_STRING_t LaneDirection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneDirection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; -asn_struct_free_f LaneDirection_free; -asn_struct_print_f LaneDirection_print; -asn_constr_check_f LaneDirection_constraint; -ber_type_decoder_f LaneDirection_decode_ber; -der_type_encoder_f LaneDirection_encode_der; -xer_type_decoder_f LaneDirection_decode_xer; -xer_type_encoder_f LaneDirection_encode_xer; -jer_type_encoder_f LaneDirection_encode_jer; -oer_type_decoder_f LaneDirection_decode_oer; -oer_type_encoder_f LaneDirection_encode_oer; -per_type_decoder_f LaneDirection_decode_uper; -per_type_encoder_f LaneDirection_encode_uper; -per_type_decoder_f LaneDirection_decode_aper; -per_type_encoder_f LaneDirection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h deleted file mode 100644 index 7c9f28f78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneID_H_ -#define _LaneID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneID */ -typedef long LaneID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneID; -asn_struct_free_f LaneID_free; -asn_struct_print_f LaneID_print; -asn_constr_check_f LaneID_constraint; -ber_type_decoder_f LaneID_decode_ber; -der_type_encoder_f LaneID_encode_der; -xer_type_decoder_f LaneID_decode_xer; -xer_type_encoder_f LaneID_encode_xer; -jer_type_encoder_f LaneID_encode_jer; -oer_type_decoder_f LaneID_decode_oer; -oer_type_encoder_f LaneID_encode_oer; -per_type_decoder_f LaneID_decode_uper; -per_type_encoder_f LaneID_encode_uper; -per_type_decoder_f LaneID_decode_aper; -per_type_encoder_f LaneID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h deleted file mode 100644 index 3b6044d83..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneList_H_ -#define _LaneList_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 GenericLane; - -/* LaneList */ -typedef struct LaneList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneList; -extern asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_LaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h deleted file mode 100644 index 41086c933..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneSharing.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneSharing_H_ -#define _LaneSharing_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneSharing { - LaneSharing_overlappingLaneDescriptionProvided = 0, - LaneSharing_multipleLanesTreatedAsOneLane = 1, - LaneSharing_otherNonMotorizedTrafficTypes = 2, - LaneSharing_individualMotorizedVehicleTraffic = 3, - LaneSharing_busVehicleTraffic = 4, - LaneSharing_taxiVehicleTraffic = 5, - LaneSharing_pedestriansTraffic = 6, - LaneSharing_cyclistVehicleTraffic = 7, - LaneSharing_trackedVehicleTraffic = 8, - LaneSharing_reserved = 9 -} e_LaneSharing; - -/* LaneSharing */ -typedef BIT_STRING_t LaneSharing_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneSharing_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; -asn_struct_free_f LaneSharing_free; -asn_struct_print_f LaneSharing_print; -asn_constr_check_f LaneSharing_constraint; -ber_type_decoder_f LaneSharing_decode_ber; -der_type_encoder_f LaneSharing_encode_der; -xer_type_decoder_f LaneSharing_decode_xer; -xer_type_encoder_f LaneSharing_encode_xer; -jer_type_encoder_f LaneSharing_encode_jer; -oer_type_decoder_f LaneSharing_decode_oer; -oer_type_encoder_f LaneSharing_encode_oer; -per_type_decoder_f LaneSharing_decode_uper; -per_type_encoder_f LaneSharing_encode_uper; -per_type_decoder_f LaneSharing_decode_aper; -per_type_encoder_f LaneSharing_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneSharing_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h deleted file mode 100644 index 62312671e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneTypeAttributes.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneTypeAttributes_H_ -#define _LaneTypeAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneAttributes-Vehicle.h" -#include "LaneAttributes-Crosswalk.h" -#include "LaneAttributes-Bike.h" -#include "LaneAttributes-Sidewalk.h" -#include "LaneAttributes-Barrier.h" -#include "LaneAttributes-Striping.h" -#include "LaneAttributes-TrackedVehicle.h" -#include "LaneAttributes-Parking.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneTypeAttributes_PR { - LaneTypeAttributes_PR_NOTHING, /* No components present */ - LaneTypeAttributes_PR_vehicle, - LaneTypeAttributes_PR_crosswalk, - LaneTypeAttributes_PR_bikeLane, - LaneTypeAttributes_PR_sidewalk, - LaneTypeAttributes_PR_median, - LaneTypeAttributes_PR_striping, - LaneTypeAttributes_PR_trackedVehicle, - LaneTypeAttributes_PR_parking - /* Extensions may appear below */ - -} LaneTypeAttributes_PR; - -/* LaneTypeAttributes */ -typedef struct LaneTypeAttributes { - LaneTypeAttributes_PR present; - union LaneTypeAttributes_u { - LaneAttributes_Vehicle_t vehicle; - LaneAttributes_Crosswalk_t crosswalk; - LaneAttributes_Bike_t bikeLane; - LaneAttributes_Sidewalk_t sidewalk; - LaneAttributes_Barrier_t median; - LaneAttributes_Striping_t striping; - LaneAttributes_TrackedVehicle_t trackedVehicle; - LaneAttributes_Parking_t parking; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneTypeAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; -extern asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[8]; -extern asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneTypeAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h deleted file mode 100644 index 7fb4ae025..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LaneWidth.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LaneWidth_H_ -#define _LaneWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneWidth */ -typedef long LaneWidth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneWidth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; -asn_struct_free_f LaneWidth_free; -asn_struct_print_f LaneWidth_print; -asn_constr_check_f LaneWidth_constraint; -ber_type_decoder_f LaneWidth_decode_ber; -der_type_encoder_f LaneWidth_encode_der; -xer_type_decoder_f LaneWidth_decode_xer; -xer_type_encoder_f LaneWidth_encode_xer; -jer_type_encoder_f LaneWidth_encode_jer; -oer_type_decoder_f LaneWidth_decode_oer; -oer_type_encoder_f LaneWidth_encode_oer; -per_type_decoder_f LaneWidth_decode_uper; -per_type_encoder_f LaneWidth_encode_uper; -per_type_decoder_f LaneWidth_decode_aper; -per_type_encoder_f LaneWidth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h deleted file mode 100644 index f196bcc06..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Latitude.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Latitude_H_ -#define _Latitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Latitude */ -typedef long Latitude_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Latitude_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Latitude; -asn_struct_free_f Latitude_free; -asn_struct_print_f Latitude_print; -asn_constr_check_f Latitude_constraint; -ber_type_decoder_f Latitude_decode_ber; -der_type_encoder_f Latitude_encode_der; -xer_type_decoder_f Latitude_decode_xer; -xer_type_encoder_f Latitude_encode_xer; -jer_type_encoder_f Latitude_encode_jer; -oer_type_decoder_f Latitude_decode_oer; -oer_type_encoder_f Latitude_encode_oer; -per_type_decoder_f Latitude_decode_uper; -per_type_encoder_f Latitude_encode_uper; -per_type_decoder_f Latitude_decode_aper; -per_type_encoder_f Latitude_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Latitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h deleted file mode 100644 index a714c79c8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LatitudeDMS_H_ -#define _LatitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS */ -typedef long LatitudeDMS_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; -asn_struct_free_f LatitudeDMS_free; -asn_struct_print_f LatitudeDMS_print; -asn_constr_check_f LatitudeDMS_constraint; -ber_type_decoder_f LatitudeDMS_decode_ber; -der_type_encoder_f LatitudeDMS_encode_der; -xer_type_decoder_f LatitudeDMS_decode_xer; -xer_type_encoder_f LatitudeDMS_encode_xer; -jer_type_encoder_f LatitudeDMS_encode_jer; -oer_type_decoder_f LatitudeDMS_decode_oer; -oer_type_encoder_f LatitudeDMS_encode_oer; -per_type_decoder_f LatitudeDMS_decode_uper; -per_type_encoder_f LatitudeDMS_encode_uper; -per_type_decoder_f LatitudeDMS_decode_aper; -per_type_encoder_f LatitudeDMS_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h deleted file mode 100644 index fcb809b4d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LatitudeDMS2.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LatitudeDMS2_H_ -#define _LatitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLat.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS2 */ -typedef struct LatitudeDMS2 { - DegreesLat_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LatitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; -extern asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1; -extern asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h deleted file mode 100644 index 84f52e07b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LayerID_H_ -#define _LayerID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LayerID */ -typedef long LayerID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LayerID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LayerID; -asn_struct_free_f LayerID_free; -asn_struct_print_f LayerID_print; -asn_constr_check_f LayerID_constraint; -ber_type_decoder_f LayerID_decode_ber; -der_type_encoder_f LayerID_encode_der; -xer_type_decoder_f LayerID_decode_xer; -xer_type_encoder_f LayerID_encode_xer; -jer_type_encoder_f LayerID_encode_jer; -oer_type_decoder_f LayerID_decode_oer; -oer_type_encoder_f LayerID_encode_oer; -per_type_decoder_f LayerID_decode_uper; -per_type_encoder_f LayerID_encode_uper; -per_type_decoder_f LayerID_decode_aper; -per_type_encoder_f LayerID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h deleted file mode 100644 index 9ca374c9d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LayerType.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LayerType_H_ -#define _LayerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LayerType { - LayerType_none = 0, - LayerType_mixedContent = 1, - LayerType_generalMapData = 2, - LayerType_intersectionData = 3, - LayerType_curveData = 4, - LayerType_roadwaySectionData = 5, - LayerType_parkingAreaData = 6, - LayerType_sharedLaneData = 7 - /* - * Enumeration is extensible - */ -} e_LayerType; - -/* LayerType */ -typedef long LayerType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LayerType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LayerType; -extern const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1; -asn_struct_free_f LayerType_free; -asn_struct_print_f LayerType_print; -asn_constr_check_f LayerType_constraint; -ber_type_decoder_f LayerType_decode_ber; -der_type_encoder_f LayerType_encode_der; -xer_type_decoder_f LayerType_decode_xer; -xer_type_encoder_f LayerType_encode_xer; -jer_type_encoder_f LayerType_encode_jer; -oer_type_decoder_f LayerType_decode_oer; -oer_type_encoder_f LayerType_encode_oer; -per_type_decoder_f LayerType_decode_uper; -per_type_encoder_f LayerType_encode_uper; -per_type_decoder_f LayerType_decode_aper; -per_type_encoder_f LayerType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h deleted file mode 100644 index a1c3115ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LightbarInUse.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LightbarInUse_H_ -#define _LightbarInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LightbarInUse { - LightbarInUse_unavailable = 0, - LightbarInUse_notInUse = 1, - LightbarInUse_inUse = 2, - LightbarInUse_yellowCautionLights = 3, - LightbarInUse_schooldBusLights = 4, - LightbarInUse_arrowSignsActive = 5, - LightbarInUse_slowMovingVehicle = 6, - LightbarInUse_freqStops = 7 -} e_LightbarInUse; - -/* LightbarInUse */ -typedef long LightbarInUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; -extern const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1; -asn_struct_free_f LightbarInUse_free; -asn_struct_print_f LightbarInUse_print; -asn_constr_check_f LightbarInUse_constraint; -ber_type_decoder_f LightbarInUse_decode_ber; -der_type_encoder_f LightbarInUse_encode_der; -xer_type_decoder_f LightbarInUse_decode_xer; -xer_type_encoder_f LightbarInUse_encode_xer; -jer_type_encoder_f LightbarInUse_encode_jer; -oer_type_decoder_f LightbarInUse_decode_oer; -oer_type_encoder_f LightbarInUse_encode_oer; -per_type_decoder_f LightbarInUse_decode_uper; -per_type_encoder_f LightbarInUse_encode_uper; -per_type_decoder_f LightbarInUse_decode_aper; -per_type_encoder_f LightbarInUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LightbarInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h deleted file mode 100644 index f7b573534..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-quality.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Location_quality_H_ -#define _Location_quality_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_quality { - Location_quality_loc_qual_bt1m = 0, - Location_quality_loc_qual_bt5m = 1, - Location_quality_loc_qual_bt12m = 2, - Location_quality_loc_qual_bt50m = 3, - Location_quality_loc_qual_bt125m = 4, - Location_quality_loc_qual_bt500m = 5, - Location_quality_loc_qual_bt1250m = 6, - Location_quality_loc_qual_unknown = 7 -} e_Location_quality; - -/* Location-quality */ -typedef long Location_quality_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_quality; -asn_struct_free_f Location_quality_free; -asn_struct_print_f Location_quality_print; -asn_constr_check_f Location_quality_constraint; -ber_type_decoder_f Location_quality_decode_ber; -der_type_encoder_f Location_quality_encode_der; -xer_type_decoder_f Location_quality_decode_xer; -xer_type_encoder_f Location_quality_encode_xer; -jer_type_encoder_f Location_quality_encode_jer; -oer_type_decoder_f Location_quality_decode_oer; -oer_type_encoder_f Location_quality_encode_oer; -per_type_decoder_f Location_quality_decode_uper; -per_type_encoder_f Location_quality_encode_uper; -per_type_decoder_f Location_quality_decode_aper; -per_type_encoder_f Location_quality_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_quality_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h deleted file mode 100644 index 084797ea9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Location-tech.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Location_tech_H_ -#define _Location_tech_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_tech { - Location_tech_loc_tech_unknown = 0, - Location_tech_loc_tech_GNSS = 1, - Location_tech_loc_tech_DGPS = 2, - Location_tech_loc_tech_RTK = 3, - Location_tech_loc_tech_PPP = 4, - Location_tech_loc_tech_drGPS = 5, - Location_tech_loc_tech_drDGPS = 6, - Location_tech_loc_tech_dr = 7, - Location_tech_loc_tech_nav = 8, - Location_tech_loc_tech_fault = 9 - /* - * Enumeration is extensible - */ -} e_Location_tech; - -/* Location-tech */ -typedef long Location_tech_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_tech; -asn_struct_free_f Location_tech_free; -asn_struct_print_f Location_tech_print; -asn_constr_check_f Location_tech_constraint; -ber_type_decoder_f Location_tech_decode_ber; -der_type_encoder_f Location_tech_encode_der; -xer_type_decoder_f Location_tech_decode_xer; -xer_type_encoder_f Location_tech_encode_xer; -jer_type_encoder_f Location_tech_encode_jer; -oer_type_decoder_f Location_tech_decode_oer; -oer_type_encoder_f Location_tech_encode_oer; -per_type_decoder_f Location_tech_decode_uper; -per_type_encoder_f Location_tech_encode_uper; -per_type_decoder_f Location_tech_decode_aper; -per_type_encoder_f Location_tech_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_tech_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h deleted file mode 100644 index f46d83f38..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Longitude.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Longitude_H_ -#define _Longitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Longitude */ -typedef long Longitude_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Longitude_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Longitude; -asn_struct_free_f Longitude_free; -asn_struct_print_f Longitude_print; -asn_constr_check_f Longitude_constraint; -ber_type_decoder_f Longitude_decode_ber; -der_type_encoder_f Longitude_encode_der; -xer_type_decoder_f Longitude_decode_xer; -xer_type_encoder_f Longitude_encode_xer; -jer_type_encoder_f Longitude_encode_jer; -oer_type_decoder_f Longitude_decode_oer; -oer_type_encoder_f Longitude_encode_oer; -per_type_decoder_f Longitude_decode_uper; -per_type_encoder_f Longitude_encode_uper; -per_type_decoder_f Longitude_decode_aper; -per_type_encoder_f Longitude_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Longitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h deleted file mode 100644 index 4e472e868..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LongitudeDMS_H_ -#define _LongitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS */ -typedef long LongitudeDMS_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; -asn_struct_free_f LongitudeDMS_free; -asn_struct_print_f LongitudeDMS_print; -asn_constr_check_f LongitudeDMS_constraint; -ber_type_decoder_f LongitudeDMS_decode_ber; -der_type_encoder_f LongitudeDMS_encode_der; -xer_type_decoder_f LongitudeDMS_decode_xer; -xer_type_encoder_f LongitudeDMS_encode_xer; -jer_type_encoder_f LongitudeDMS_encode_jer; -oer_type_decoder_f LongitudeDMS_decode_oer; -oer_type_encoder_f LongitudeDMS_encode_oer; -per_type_decoder_f LongitudeDMS_decode_uper; -per_type_encoder_f LongitudeDMS_encode_uper; -per_type_decoder_f LongitudeDMS_decode_aper; -per_type_encoder_f LongitudeDMS_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h deleted file mode 100644 index 516f6532e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/LongitudeDMS2.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _LongitudeDMS2_H_ -#define _LongitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLong.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS2 */ -typedef struct LongitudeDMS2 { - DegreesLong_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LongitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; -extern asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1; -extern asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h deleted file mode 100644 index a2b273335..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MUTCDCode.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MUTCDCode_H_ -#define _MUTCDCode_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MUTCDCode { - MUTCDCode_none = 0, - MUTCDCode_regulatory = 1, - MUTCDCode_warning = 2, - MUTCDCode_maintenance = 3, - MUTCDCode_motoristService = 4, - MUTCDCode_guide = 5, - MUTCDCode_rec = 6 - /* - * Enumeration is extensible - */ -} e_MUTCDCode; - -/* MUTCDCode */ -typedef long MUTCDCode_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; -extern const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1; -asn_struct_free_f MUTCDCode_free; -asn_struct_print_f MUTCDCode_print; -asn_constr_check_f MUTCDCode_constraint; -ber_type_decoder_f MUTCDCode_decode_ber; -der_type_encoder_f MUTCDCode_encode_der; -xer_type_decoder_f MUTCDCode_decode_xer; -xer_type_encoder_f MUTCDCode_encode_xer; -jer_type_encoder_f MUTCDCode_encode_jer; -oer_type_decoder_f MUTCDCode_decode_oer; -oer_type_encoder_f MUTCDCode_encode_oer; -per_type_decoder_f MUTCDCode_decode_uper; -per_type_encoder_f MUTCDCode_encode_uper; -per_type_decoder_f MUTCDCode_decode_aper; -per_type_encoder_f MUTCDCode_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MUTCDCode_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h deleted file mode 100644 index 5e8f1f0f6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ManeuverAssistList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ManeuverAssistList_H_ -#define _ManeuverAssistList_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 ConnectionManeuverAssist; - -/* ManeuverAssistList */ -typedef struct ManeuverAssistList { - A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ManeuverAssistList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; -extern asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1; -extern asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[1]; -extern asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ManeuverAssistList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h deleted file mode 100644 index 79f1a2a10..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData-addGrpC.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MapData_addGrpC_H_ -#define _MapData_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalHeadLocationList; - -/* MapData-addGrpC */ -typedef struct MapData_addGrpC { - struct SignalHeadLocationList *signalHeadLocations; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MapData_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC; -extern asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1; -extern asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MapData_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h deleted file mode 100644 index 12bafc0bf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MapData.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MapData_H_ -#define _MapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "Common_MsgCount.h" -#include "LayerType.h" -#include "LayerID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionGeometryList; -struct RoadSegmentList; -struct DataParameters; -struct RestrictionClassList; -struct Reg_MapData; - -/* MapData */ -typedef struct MapData { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - Common_MsgCount_t msgIssueRevision; - LayerType_t *layerType; /* OPTIONAL */ - LayerID_t *layerID; /* OPTIONAL */ - struct IntersectionGeometryList *intersections; /* OPTIONAL */ - struct RoadSegmentList *roadSegments; /* OPTIONAL */ - struct DataParameters *dataParameters; /* OPTIONAL */ - struct RestrictionClassList *restrictionList; /* OPTIONAL */ - struct MapData__regional { - A_SEQUENCE_OF(struct Reg_MapData) 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; -} MapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MapData; -extern asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1; -extern asn_TYPE_member_t asn_MBR_MapData_1[9]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h deleted file mode 100644 index e61a7b71f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MaxTimetoChange.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MaxTimetoChange_H_ -#define _MaxTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MaxTimetoChange */ -typedef long MaxTimetoChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; -asn_struct_free_f MaxTimetoChange_free; -asn_struct_print_f MaxTimetoChange_print; -asn_constr_check_f MaxTimetoChange_constraint; -ber_type_decoder_f MaxTimetoChange_decode_ber; -der_type_encoder_f MaxTimetoChange_encode_der; -xer_type_decoder_f MaxTimetoChange_decode_xer; -xer_type_encoder_f MaxTimetoChange_encode_xer; -jer_type_encoder_f MaxTimetoChange_encode_jer; -oer_type_decoder_f MaxTimetoChange_decode_oer; -oer_type_encoder_f MaxTimetoChange_encode_oer; -per_type_decoder_f MaxTimetoChange_decode_uper; -per_type_encoder_f MaxTimetoChange_encode_uper; -per_type_decoder_f MaxTimetoChange_decode_aper; -per_type_encoder_f MaxTimetoChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MaxTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h deleted file mode 100644 index f908a394c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MergeDivergeNodeAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MergeDivergeNodeAngle_H_ -#define _MergeDivergeNodeAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MergeDivergeNodeAngle */ -typedef long MergeDivergeNodeAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; -asn_struct_free_f MergeDivergeNodeAngle_free; -asn_struct_print_f MergeDivergeNodeAngle_print; -asn_constr_check_f MergeDivergeNodeAngle_constraint; -ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; -der_type_encoder_f MergeDivergeNodeAngle_encode_der; -xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; -xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; -jer_type_encoder_f MergeDivergeNodeAngle_encode_jer; -oer_type_decoder_f MergeDivergeNodeAngle_decode_oer; -oer_type_encoder_f MergeDivergeNodeAngle_encode_oer; -per_type_decoder_f MergeDivergeNodeAngle_decode_uper; -per_type_encoder_f MergeDivergeNodeAngle_encode_uper; -per_type_decoder_f MergeDivergeNodeAngle_decode_aper; -per_type_encoder_f MergeDivergeNodeAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MergeDivergeNodeAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h deleted file mode 100644 index 406c6840b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageBLOB.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MessageBLOB_H_ -#define _MessageBLOB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MessageBLOB */ -typedef OCTET_STRING_t MessageBLOB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MessageBLOB; -asn_struct_free_f MessageBLOB_free; -asn_struct_print_f MessageBLOB_print; -asn_constr_check_f MessageBLOB_constraint; -ber_type_decoder_f MessageBLOB_decode_ber; -der_type_encoder_f MessageBLOB_encode_der; -xer_type_decoder_f MessageBLOB_decode_xer; -xer_type_encoder_f MessageBLOB_encode_xer; -jer_type_encoder_f MessageBLOB_encode_jer; -oer_type_decoder_f MessageBLOB_decode_oer; -oer_type_encoder_f MessageBLOB_encode_oer; -per_type_decoder_f MessageBLOB_decode_uper; -per_type_encoder_f MessageBLOB_encode_uper; -per_type_decoder_f MessageBLOB_decode_aper; -per_type_encoder_f MessageBLOB_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MessageBLOB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h deleted file mode 100644 index 08795d0b1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MessageFrame.h +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MessageFrame" - * found in "J2735-MessageFrame.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MessageFrame_H_ -#define _MessageFrame_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "ANY.h" -#include "asn_ioc.h" -#include "BasicSafetyMessage.h" -#include "MapData.h" -#include "SPAT.h" -#include "CommonSafetyRequest.h" -#include "EmergencyVehicleAlert.h" -#include "IntersectionCollision.h" -#include "NMEAcorrections.h" -#include "ProbeDataManagement.h" -#include "ProbeVehicleData.h" -#include "RoadSideAlert.h" -#include "RTCMcorrections.h" -#include "SignalRequestMessage.h" -#include "SignalStatusMessage.h" -#include "TravelerInformation.h" -#include "PersonalSafetyMessage.h" -#include "TestMessage00.h" -#include "TestMessage01.h" -#include "TestMessage02.h" -#include "TestMessage03.h" -#include "TestMessage04.h" -#include "TestMessage05.h" -#include "TestMessage06.h" -#include "TestMessage07.h" -#include "TestMessage08.h" -#include "TestMessage09.h" -#include "TestMessage10.h" -#include "TestMessage11.h" -#include "TestMessage12.h" -#include "TestMessage13.h" -#include "TestMessage14.h" -#include "TestMessage15.h" -#include "OPEN_TYPE.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MessageFrame__value_PR { - MessageFrame__value_PR_NOTHING, /* No components present */ - MessageFrame__value_PR_BasicSafetyMessage, - MessageFrame__value_PR_MapData, - MessageFrame__value_PR_SPAT, - MessageFrame__value_PR_CommonSafetyRequest, - MessageFrame__value_PR_EmergencyVehicleAlert, - MessageFrame__value_PR_IntersectionCollision, - MessageFrame__value_PR_NMEAcorrections, - MessageFrame__value_PR_ProbeDataManagement, - MessageFrame__value_PR_ProbeVehicleData, - MessageFrame__value_PR_RoadSideAlert, - MessageFrame__value_PR_RTCMcorrections, - MessageFrame__value_PR_SignalRequestMessage, - MessageFrame__value_PR_SignalStatusMessage, - MessageFrame__value_PR_TravelerInformation, - MessageFrame__value_PR_PersonalSafetyMessage, - MessageFrame__value_PR_TestMessage00, - MessageFrame__value_PR_TestMessage01, - MessageFrame__value_PR_TestMessage02, - MessageFrame__value_PR_TestMessage03, - MessageFrame__value_PR_TestMessage04, - MessageFrame__value_PR_TestMessage05, - MessageFrame__value_PR_TestMessage06, - MessageFrame__value_PR_TestMessage07, - MessageFrame__value_PR_TestMessage08, - MessageFrame__value_PR_TestMessage09, - MessageFrame__value_PR_TestMessage10, - MessageFrame__value_PR_TestMessage11, - MessageFrame__value_PR_TestMessage12, - MessageFrame__value_PR_TestMessage13, - MessageFrame__value_PR_TestMessage14, - MessageFrame__value_PR_TestMessage15 -} MessageFrame__value_PR; - -/* MessageFrame */ -typedef struct MessageFrame { - DSRCmsgID_t messageId; - struct MessageFrame__value { - MessageFrame__value_PR present; - union MessageFrame__value_u { - BasicSafetyMessage_t BasicSafetyMessage; - MapData_t MapData; - SPAT_t SPAT; - CommonSafetyRequest_t CommonSafetyRequest; - EmergencyVehicleAlert_t EmergencyVehicleAlert; - IntersectionCollision_t IntersectionCollision; - NMEAcorrections_t NMEAcorrections; - ProbeDataManagement_t ProbeDataManagement; - ProbeVehicleData_t ProbeVehicleData; - RoadSideAlert_t RoadSideAlert; - RTCMcorrections_t RTCMcorrections; - SignalRequestMessage_t SignalRequestMessage; - SignalStatusMessage_t SignalStatusMessage; - TravelerInformation_t TravelerInformation; - PersonalSafetyMessage_t PersonalSafetyMessage; - TestMessage00_t TestMessage00; - TestMessage01_t TestMessage01; - TestMessage02_t TestMessage02; - TestMessage03_t TestMessage03; - TestMessage04_t TestMessage04; - TestMessage05_t TestMessage05; - TestMessage06_t TestMessage06; - TestMessage07_t TestMessage07; - TestMessage08_t TestMessage08; - TestMessage09_t TestMessage09; - TestMessage10_t TestMessage10; - TestMessage11_t TestMessage11; - TestMessage12_t TestMessage12; - TestMessage13_t TestMessage13; - TestMessage14_t TestMessage14; - TestMessage15_t TestMessage15; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } value; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MessageFrame_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MessageFrame; - -#ifdef __cplusplus -} -#endif - -#endif /* _MessageFrame_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h deleted file mode 100644 index 3eb0d05a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinTimetoChange.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MinTimetoChange_H_ -#define _MinTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinTimetoChange */ -typedef long MinTimetoChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; -asn_struct_free_f MinTimetoChange_free; -asn_struct_print_f MinTimetoChange_print; -asn_constr_check_f MinTimetoChange_constraint; -ber_type_decoder_f MinTimetoChange_decode_ber; -der_type_encoder_f MinTimetoChange_encode_der; -xer_type_decoder_f MinTimetoChange_decode_xer; -xer_type_encoder_f MinTimetoChange_encode_xer; -jer_type_encoder_f MinTimetoChange_encode_jer; -oer_type_decoder_f MinTimetoChange_decode_oer; -oer_type_encoder_f MinTimetoChange_encode_oer; -per_type_decoder_f MinTimetoChange_decode_uper; -per_type_encoder_f MinTimetoChange_encode_uper; -per_type_decoder_f MinTimetoChange_decode_aper; -per_type_encoder_f MinTimetoChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h deleted file mode 100644 index 72459eb4a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Minute.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Minute_H_ -#define _Minute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Minute */ -typedef long Minute_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Minute_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Minute; -asn_struct_free_f Minute_free; -asn_struct_print_f Minute_print; -asn_constr_check_f Minute_constraint; -ber_type_decoder_f Minute_decode_ber; -der_type_encoder_f Minute_encode_der; -xer_type_decoder_f Minute_decode_xer; -xer_type_encoder_f Minute_encode_xer; -jer_type_encoder_f Minute_encode_jer; -oer_type_decoder_f Minute_decode_oer; -oer_type_encoder_f Minute_encode_oer; -per_type_decoder_f Minute_decode_uper; -per_type_encoder_f Minute_encode_uper; -per_type_decoder_f Minute_decode_aper; -per_type_encoder_f Minute_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Minute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h deleted file mode 100644 index a63d49b85..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinuteOfTheYear.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MinuteOfTheYear_H_ -#define _MinuteOfTheYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinuteOfTheYear */ -typedef long MinuteOfTheYear_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; -asn_struct_free_f MinuteOfTheYear_free; -asn_struct_print_f MinuteOfTheYear_print; -asn_constr_check_f MinuteOfTheYear_constraint; -ber_type_decoder_f MinuteOfTheYear_decode_ber; -der_type_encoder_f MinuteOfTheYear_encode_der; -xer_type_decoder_f MinuteOfTheYear_decode_xer; -xer_type_encoder_f MinuteOfTheYear_encode_xer; -jer_type_encoder_f MinuteOfTheYear_encode_jer; -oer_type_decoder_f MinuteOfTheYear_decode_oer; -oer_type_encoder_f MinuteOfTheYear_encode_oer; -per_type_decoder_f MinuteOfTheYear_decode_uper; -per_type_encoder_f MinuteOfTheYear_encode_uper; -per_type_decoder_f MinuteOfTheYear_decode_aper; -per_type_encoder_f MinuteOfTheYear_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinuteOfTheYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h deleted file mode 100644 index 4a85d114a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MinutesAngle_H_ -#define _MinutesAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesAngle */ -typedef long MinutesAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; -asn_struct_free_f MinutesAngle_free; -asn_struct_print_f MinutesAngle_print; -asn_constr_check_f MinutesAngle_constraint; -ber_type_decoder_f MinutesAngle_decode_ber; -der_type_encoder_f MinutesAngle_encode_der; -xer_type_decoder_f MinutesAngle_decode_xer; -xer_type_encoder_f MinutesAngle_encode_xer; -jer_type_encoder_f MinutesAngle_encode_jer; -oer_type_decoder_f MinutesAngle_decode_oer; -oer_type_encoder_f MinutesAngle_encode_oer; -per_type_decoder_f MinutesAngle_decode_uper; -per_type_encoder_f MinutesAngle_encode_uper; -per_type_decoder_f MinutesAngle_decode_aper; -per_type_encoder_f MinutesAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h deleted file mode 100644 index 368bac4f3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MinutesDuration.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MinutesDuration_H_ -#define _MinutesDuration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesDuration */ -typedef long MinutesDuration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; -asn_struct_free_f MinutesDuration_free; -asn_struct_print_f MinutesDuration_print; -asn_constr_check_f MinutesDuration_constraint; -ber_type_decoder_f MinutesDuration_decode_ber; -der_type_encoder_f MinutesDuration_encode_der; -xer_type_decoder_f MinutesDuration_decode_xer; -xer_type_encoder_f MinutesDuration_encode_xer; -jer_type_encoder_f MinutesDuration_encode_jer; -oer_type_decoder_f MinutesDuration_decode_oer; -oer_type_encoder_f MinutesDuration_encode_oer; -per_type_decoder_f MinutesDuration_decode_uper; -per_type_encoder_f MinutesDuration_encode_uper; -per_type_decoder_f MinutesDuration_decode_aper; -per_type_encoder_f MinutesDuration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesDuration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h deleted file mode 100644 index 8b8d0b613..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Month.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Month_H_ -#define _Month_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Month */ -typedef long Month_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Month_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Month; -asn_struct_free_f Month_free; -asn_struct_print_f Month_print; -asn_constr_check_f Month_constraint; -ber_type_decoder_f Month_decode_ber; -der_type_encoder_f Month_encode_der; -xer_type_decoder_f Month_decode_xer; -xer_type_encoder_f Month_encode_xer; -jer_type_encoder_f Month_encode_jer; -oer_type_decoder_f Month_decode_oer; -oer_type_encoder_f Month_encode_oer; -per_type_decoder_f Month_decode_uper; -per_type_encoder_f Month_encode_uper; -per_type_decoder_f Month_decode_aper; -per_type_encoder_f Month_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Month_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h deleted file mode 100644 index ac595ac7f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MotorizedPropelledType.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MotorizedPropelledType_H_ -#define _MotorizedPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MotorizedPropelledType { - MotorizedPropelledType_unavailable = 0, - MotorizedPropelledType_otherTypes = 1, - MotorizedPropelledType_wheelChair = 2, - MotorizedPropelledType_bicycle = 3, - MotorizedPropelledType_scooter = 4, - MotorizedPropelledType_selfBalancingDevice = 5 - /* - * Enumeration is extensible - */ -} e_MotorizedPropelledType; - -/* MotorizedPropelledType */ -typedef long MotorizedPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1; -asn_struct_free_f MotorizedPropelledType_free; -asn_struct_print_f MotorizedPropelledType_print; -asn_constr_check_f MotorizedPropelledType_constraint; -ber_type_decoder_f MotorizedPropelledType_decode_ber; -der_type_encoder_f MotorizedPropelledType_encode_der; -xer_type_decoder_f MotorizedPropelledType_decode_xer; -xer_type_encoder_f MotorizedPropelledType_encode_xer; -jer_type_encoder_f MotorizedPropelledType_encode_jer; -oer_type_decoder_f MotorizedPropelledType_decode_oer; -oer_type_encoder_f MotorizedPropelledType_encode_oer; -per_type_decoder_f MotorizedPropelledType_decode_uper; -per_type_encoder_f MotorizedPropelledType_encode_uper; -per_type_decoder_f MotorizedPropelledType_decode_aper; -per_type_encoder_f MotorizedPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MotorizedPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h deleted file mode 100644 index cfc2fe447..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent-addGrpB.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementEvent_addGrpB_H_ -#define _MovementEvent_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeRemaining.h" -#include "MinTimetoChange.h" -#include "MaxTimetoChange.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MovementEvent-addGrpB */ -typedef struct MovementEvent_addGrpB { - TimeRemaining_t *startTime; /* OPTIONAL */ - MinTimetoChange_t minEndTime; - MaxTimetoChange_t *maxEndTime; /* OPTIONAL */ - TimeRemaining_t *likelyTime; /* OPTIONAL */ - TimeIntervalConfidence_t *confidence; /* OPTIONAL */ - TimeRemaining_t *nextTime; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEvent_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB; -extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementEvent_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h deleted file mode 100644 index cea2d2ab8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEvent.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementEvent_H_ -#define _MovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MovementPhaseState.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TimeChangeDetails; -struct AdvisorySpeedList; -struct Reg_MovementEvent; - -/* MovementEvent */ -typedef struct MovementEvent { - MovementPhaseState_t eventState; - struct TimeChangeDetails *timing; /* OPTIONAL */ - struct AdvisorySpeedList *speeds; /* OPTIONAL */ - struct MovementEvent__regional { - A_SEQUENCE_OF(struct Reg_MovementEvent) 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; -} MovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; -extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementEvent_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h deleted file mode 100644 index c2e0f1e2b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementEventList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementEventList_H_ -#define _MovementEventList_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 MovementEvent; - -/* MovementEventList */ -typedef struct MovementEventList { - A_SEQUENCE_OF(struct MovementEvent) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEventList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; -extern asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementEventList_1[1]; -extern asn_per_constraints_t asn_PER_type_MovementEventList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementEventList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h deleted file mode 100644 index b713615a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementList_H_ -#define _MovementList_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 MovementState; - -/* MovementList */ -typedef struct MovementList { - A_SEQUENCE_OF(struct MovementState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementList; -extern asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementList_1[1]; -extern asn_per_constraints_t asn_PER_type_MovementList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h deleted file mode 100644 index 6cdcb0b52..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementPhaseState.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementPhaseState_H_ -#define _MovementPhaseState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MovementPhaseState { - MovementPhaseState_unavailable = 0, - MovementPhaseState_dark = 1, - MovementPhaseState_stop_Then_Proceed = 2, - MovementPhaseState_stop_And_Remain = 3, - MovementPhaseState_pre_Movement = 4, - MovementPhaseState_permissive_Movement_Allowed = 5, - MovementPhaseState_protected_Movement_Allowed = 6, - MovementPhaseState_permissive_clearance = 7, - MovementPhaseState_protected_clearance = 8, - MovementPhaseState_caution_Conflicting_Traffic = 9 -} e_MovementPhaseState; - -/* MovementPhaseState */ -typedef long MovementPhaseState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; -extern const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1; -asn_struct_free_f MovementPhaseState_free; -asn_struct_print_f MovementPhaseState_print; -asn_constr_check_f MovementPhaseState_constraint; -ber_type_decoder_f MovementPhaseState_decode_ber; -der_type_encoder_f MovementPhaseState_encode_der; -xer_type_decoder_f MovementPhaseState_decode_xer; -xer_type_encoder_f MovementPhaseState_encode_xer; -jer_type_encoder_f MovementPhaseState_encode_jer; -oer_type_decoder_f MovementPhaseState_decode_oer; -oer_type_encoder_f MovementPhaseState_encode_oer; -per_type_decoder_f MovementPhaseState_decode_uper; -per_type_encoder_f MovementPhaseState_encode_uper; -per_type_decoder_f MovementPhaseState_decode_aper; -per_type_encoder_f MovementPhaseState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementPhaseState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h deleted file mode 100644 index f74b54ef5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MovementState.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MovementState_H_ -#define _MovementState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "SignalGroupID.h" -#include "MovementEventList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ManeuverAssistList; -struct Reg_MovementState; - -/* MovementState */ -typedef struct MovementState { - DescriptiveName_t *movementName; /* OPTIONAL */ - SignalGroupID_t signalGroup; - MovementEventList_t state_time_speed; - struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ - struct MovementState__regional { - A_SEQUENCE_OF(struct Reg_MovementState) 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; -} MovementState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementState; -extern asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementState_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h deleted file mode 100644 index 6626f4a3c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MsgCRC.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MsgCRC_H_ -#define _MsgCRC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MsgCRC */ -typedef OCTET_STRING_t MsgCRC_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MsgCRC_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; -asn_struct_free_f MsgCRC_free; -asn_struct_print_f MsgCRC_print; -asn_constr_check_f MsgCRC_constraint; -ber_type_decoder_f MsgCRC_decode_ber; -der_type_encoder_f MsgCRC_encode_der; -xer_type_decoder_f MsgCRC_decode_xer; -xer_type_encoder_f MsgCRC_encode_xer; -jer_type_encoder_f MsgCRC_encode_jer; -oer_type_decoder_f MsgCRC_decode_oer; -oer_type_encoder_f MsgCRC_encode_oer; -per_type_decoder_f MsgCRC_decode_uper; -per_type_encoder_f MsgCRC_encode_uper; -per_type_decoder_f MsgCRC_decode_aper; -per_type_encoder_f MsgCRC_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MsgCRC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h deleted file mode 100644 index 8a0f64cb2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/MultiVehicleResponse.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _MultiVehicleResponse_H_ -#define _MultiVehicleResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MultiVehicleResponse { - MultiVehicleResponse_unavailable = 0, - MultiVehicleResponse_singleVehicle = 1, - MultiVehicleResponse_multiVehicle = 2, - MultiVehicleResponse_reserved = 3 -} e_MultiVehicleResponse; - -/* MultiVehicleResponse */ -typedef long MultiVehicleResponse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; -extern const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1; -asn_struct_free_f MultiVehicleResponse_free; -asn_struct_print_f MultiVehicleResponse_print; -asn_constr_check_f MultiVehicleResponse_constraint; -ber_type_decoder_f MultiVehicleResponse_decode_ber; -der_type_encoder_f MultiVehicleResponse_encode_der; -xer_type_decoder_f MultiVehicleResponse_decode_xer; -xer_type_encoder_f MultiVehicleResponse_encode_xer; -jer_type_encoder_f MultiVehicleResponse_encode_jer; -oer_type_decoder_f MultiVehicleResponse_decode_oer; -oer_type_encoder_f MultiVehicleResponse_encode_oer; -per_type_decoder_f MultiVehicleResponse_decode_uper; -per_type_encoder_f MultiVehicleResponse_encode_uper; -per_type_decoder_f MultiVehicleResponse_decode_aper; -per_type_encoder_f MultiVehicleResponse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MultiVehicleResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h deleted file mode 100644 index f2f401222..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-MsgType.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NMEA_MsgType_H_ -#define _NMEA_MsgType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-MsgType */ -typedef long NMEA_MsgType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; -asn_struct_free_f NMEA_MsgType_free; -asn_struct_print_f NMEA_MsgType_print; -asn_constr_check_f NMEA_MsgType_constraint; -ber_type_decoder_f NMEA_MsgType_decode_ber; -der_type_encoder_f NMEA_MsgType_encode_der; -xer_type_decoder_f NMEA_MsgType_decode_xer; -xer_type_encoder_f NMEA_MsgType_encode_xer; -jer_type_encoder_f NMEA_MsgType_encode_jer; -oer_type_decoder_f NMEA_MsgType_decode_oer; -oer_type_encoder_f NMEA_MsgType_encode_oer; -per_type_decoder_f NMEA_MsgType_decode_uper; -per_type_encoder_f NMEA_MsgType_encode_uper; -per_type_decoder_f NMEA_MsgType_decode_aper; -per_type_encoder_f NMEA_MsgType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_MsgType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h deleted file mode 100644 index 80ddfcd01..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Payload.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NMEA_Payload_H_ -#define _NMEA_Payload_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-Payload */ -typedef OCTET_STRING_t NMEA_Payload_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; -asn_struct_free_f NMEA_Payload_free; -asn_struct_print_f NMEA_Payload_print; -asn_constr_check_f NMEA_Payload_constraint; -ber_type_decoder_f NMEA_Payload_decode_ber; -der_type_encoder_f NMEA_Payload_encode_der; -xer_type_decoder_f NMEA_Payload_decode_xer; -xer_type_encoder_f NMEA_Payload_encode_xer; -jer_type_encoder_f NMEA_Payload_encode_jer; -oer_type_decoder_f NMEA_Payload_decode_oer; -oer_type_encoder_f NMEA_Payload_encode_oer; -per_type_decoder_f NMEA_Payload_decode_uper; -per_type_encoder_f NMEA_Payload_encode_uper; -per_type_decoder_f NMEA_Payload_decode_aper; -per_type_encoder_f NMEA_Payload_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Payload_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h deleted file mode 100644 index 384564b35..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEA-Revision.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NMEA_Revision_H_ -#define _NMEA_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NMEA_Revision { - NMEA_Revision_unknown = 0, - NMEA_Revision_reserved = 1, - NMEA_Revision_rev1 = 2, - NMEA_Revision_rev2 = 3, - NMEA_Revision_rev3 = 4, - NMEA_Revision_rev4 = 5, - NMEA_Revision_rev5 = 6 - /* - * Enumeration is extensible - */ -} e_NMEA_Revision; - -/* NMEA-Revision */ -typedef long NMEA_Revision_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; -extern const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1; -asn_struct_free_f NMEA_Revision_free; -asn_struct_print_f NMEA_Revision_print; -asn_constr_check_f NMEA_Revision_constraint; -ber_type_decoder_f NMEA_Revision_decode_ber; -der_type_encoder_f NMEA_Revision_encode_der; -xer_type_decoder_f NMEA_Revision_decode_xer; -xer_type_encoder_f NMEA_Revision_encode_xer; -jer_type_encoder_f NMEA_Revision_encode_jer; -oer_type_decoder_f NMEA_Revision_decode_oer; -oer_type_encoder_f NMEA_Revision_encode_oer; -per_type_decoder_f NMEA_Revision_decode_uper; -per_type_encoder_f NMEA_Revision_encode_uper; -per_type_decoder_f NMEA_Revision_decode_aper; -per_type_encoder_f NMEA_Revision_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h deleted file mode 100644 index 261c316c0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NMEAcorrections.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NMEAcorrections_H_ -#define _NMEAcorrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "NMEA-Revision.h" -#include "NMEA-MsgType.h" -#include "ObjectCount.h" -#include "NMEA-Payload.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_NMEAcorrections; - -/* NMEAcorrections */ -typedef struct NMEAcorrections { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - NMEA_Revision_t *rev; /* OPTIONAL */ - NMEA_MsgType_t *msg; /* OPTIONAL */ - ObjectCount_t *wdCount; /* OPTIONAL */ - NMEA_Payload_t payload; - struct NMEAcorrections__regional { - A_SEQUENCE_OF(struct Reg_NMEAcorrections) 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; -} NMEAcorrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEAcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1; -extern asn_TYPE_member_t asn_MBR_NMEAcorrections_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEAcorrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h deleted file mode 100644 index 0c711e3fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeEnumerated.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard ENUMERATED in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeEnumerated_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeEnumerated_H_ -#define _NativeEnumerated_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; -extern asn_TYPE_operation_t asn_OP_NativeEnumerated; - -#define NativeEnumerated_free NativeInteger_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define NativeEnumerated_print NativeInteger_print -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define NativeEnumerated_compare NativeInteger_compare - -#define NativeEnumerated_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define NativeEnumerated_decode_ber NativeInteger_decode_ber -#define NativeEnumerated_encode_der NativeInteger_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define NativeEnumerated_decode_xer NativeInteger_decode_xer -xer_type_encoder_f NativeEnumerated_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f NativeEnumerated_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f NativeEnumerated_decode_oer; -oer_type_encoder_f NativeEnumerated_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f NativeEnumerated_decode_uper; -per_type_encoder_f NativeEnumerated_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f NativeEnumerated_decode_aper; -per_type_encoder_f NativeEnumerated_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -#define NativeEnumerated_random_fill NativeInteger_random_fill -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -int NativeEnumerated__compar_value2enum( - const void *ap, - const void *bp); -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h deleted file mode 100644 index 3a47c11a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NativeInteger.h +++ /dev/null @@ -1,71 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard INTEGER in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeInteger_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeInteger_H_ -#define _NativeInteger_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; -extern asn_TYPE_operation_t asn_OP_NativeInteger; - -asn_struct_free_f NativeInteger_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f NativeInteger_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f NativeInteger_compare; - -#define NativeInteger_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f NativeInteger_decode_ber; -der_type_encoder_f NativeInteger_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f NativeInteger_decode_xer; -xer_type_encoder_f NativeInteger_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f NativeInteger_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f NativeInteger_decode_oer; -oer_type_encoder_f NativeInteger_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f NativeInteger_decode_uper; -per_type_encoder_f NativeInteger_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f NativeInteger_decode_aper; -per_type_encoder_f NativeInteger_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f NativeInteger_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h deleted file mode 100644 index e083db5d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-24B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_24B_H_ -#define _Node_LL_24B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B12.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-24B */ -typedef struct Node_LL_24B { - OffsetLL_B12_t lon; - OffsetLL_B12_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_24B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_24B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_24B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_24B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h deleted file mode 100644 index 17b7a2ad1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-28B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_28B_H_ -#define _Node_LL_28B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B14.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-28B */ -typedef struct Node_LL_28B { - OffsetLL_B14_t lon; - OffsetLL_B14_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_28B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_28B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_28B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_28B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h deleted file mode 100644 index 8cb729d4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-32B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_32B_H_ -#define _Node_LL_32B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-32B */ -typedef struct Node_LL_32B { - OffsetLL_B16_t lon; - OffsetLL_B16_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_32B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_32B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_32B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_32B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h deleted file mode 100644 index a384a4408..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-36B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_36B_H_ -#define _Node_LL_36B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B18.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-36B */ -typedef struct Node_LL_36B { - OffsetLL_B18_t lon; - OffsetLL_B18_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_36B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_36B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_36B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_36B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h deleted file mode 100644 index 46f8fe002..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-44B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_44B_H_ -#define _Node_LL_44B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B22.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-44B */ -typedef struct Node_LL_44B { - OffsetLL_B22_t lon; - OffsetLL_B22_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_44B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_44B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_44B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_44B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h deleted file mode 100644 index 838bd7655..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LL-48B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LL_48B_H_ -#define _Node_LL_48B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B24.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-48B */ -typedef struct Node_LL_48B { - OffsetLL_B24_t lon; - OffsetLL_B24_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_48B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_48B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_48B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_48B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h deleted file mode 100644 index 0720d15dc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-48b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LLdms_48b_H_ -#define _Node_LLdms_48b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS.h" -#include "LatitudeDMS.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-48b */ -typedef struct Node_LLdms_48b { - LongitudeDMS_t lon; - LatitudeDMS_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_48b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_48b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h deleted file mode 100644 index 608873b2f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLdms-80b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LLdms_80b_H_ -#define _Node_LLdms_80b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS2.h" -#include "LatitudeDMS2.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-80b */ -typedef struct Node_LLdms_80b { - LongitudeDMS2_t lon; - LatitudeDMS2_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_80b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_80b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h deleted file mode 100644 index 37a0cc84c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-LLmD-64b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_LLmD_64b_H_ -#define _Node_LLmD_64b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLmD-64b */ -typedef struct Node_LLmD_64b { - Longitude_t lon; - Latitude_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLmD_64b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLmD_64b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h deleted file mode 100644 index 4a041d80f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-20b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_20b_H_ -#define _Node_XY_20b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-20b */ -typedef struct Node_XY_20b { - Offset_B10_t x; - Offset_B10_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_20b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_20b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_20b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h deleted file mode 100644 index c47628e4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-22b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_22b_H_ -#define _Node_XY_22b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B11.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-22b */ -typedef struct Node_XY_22b { - Offset_B11_t x; - Offset_B11_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_22b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_22b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_22b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h deleted file mode 100644 index 4dc09366d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-24b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_24b_H_ -#define _Node_XY_24b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B12.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-24b */ -typedef struct Node_XY_24b { - Offset_B12_t x; - Offset_B12_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_24b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_24b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_24b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h deleted file mode 100644 index 083583472..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-26b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_26b_H_ -#define _Node_XY_26b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B13.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-26b */ -typedef struct Node_XY_26b { - Offset_B13_t x; - Offset_B13_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_26b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_26b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_26b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h deleted file mode 100644 index 6db5d9275..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-28b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_28b_H_ -#define _Node_XY_28b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B14.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-28b */ -typedef struct Node_XY_28b { - Offset_B14_t x; - Offset_B14_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_28b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_28b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_28b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h deleted file mode 100644 index 66ec54695..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Node-XY-32b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Node_XY_32b_H_ -#define _Node_XY_32b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-32b */ -typedef struct Node_XY_32b { - Offset_B16_t x; - Offset_B16_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_32b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_32b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_32b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h deleted file mode 100644 index 9ed0de31a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLL.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeLL_H_ -#define _NodeAttributeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeAttributeLL { - NodeAttributeLL_reserved = 0, - NodeAttributeLL_stopLine = 1, - NodeAttributeLL_roundedCapStyleA = 2, - NodeAttributeLL_roundedCapStyleB = 3, - NodeAttributeLL_mergePoint = 4, - NodeAttributeLL_divergePoint = 5, - NodeAttributeLL_downstreamStopLine = 6, - NodeAttributeLL_downstreamStartNode = 7, - NodeAttributeLL_closedToTraffic = 8, - NodeAttributeLL_safeIsland = 9, - NodeAttributeLL_curbPresentAtStepOff = 10, - NodeAttributeLL_hydrantPresent = 11 - /* - * Enumeration is extensible - */ -} e_NodeAttributeLL; - -/* NodeAttributeLL */ -typedef long NodeAttributeLL_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL; -extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1; -asn_struct_free_f NodeAttributeLL_free; -asn_struct_print_f NodeAttributeLL_print; -asn_constr_check_f NodeAttributeLL_constraint; -ber_type_decoder_f NodeAttributeLL_decode_ber; -der_type_encoder_f NodeAttributeLL_encode_der; -xer_type_decoder_f NodeAttributeLL_decode_xer; -xer_type_encoder_f NodeAttributeLL_encode_xer; -jer_type_encoder_f NodeAttributeLL_encode_jer; -oer_type_decoder_f NodeAttributeLL_decode_oer; -oer_type_encoder_f NodeAttributeLL_encode_oer; -per_type_decoder_f NodeAttributeLL_decode_uper; -per_type_encoder_f NodeAttributeLL_encode_uper; -per_type_decoder_f NodeAttributeLL_decode_aper; -per_type_encoder_f NodeAttributeLL_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h deleted file mode 100644 index 9bc0d4da3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeLLList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeLLList_H_ -#define _NodeAttributeLLList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeAttributeLL.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeAttributeLLList */ -typedef struct NodeAttributeLLList { - A_SEQUENCE_OF(NodeAttributeLL_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeLLList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList; -extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeLLList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h deleted file mode 100644 index cc072f141..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetLL.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeSetLL_H_ -#define _NodeAttributeSetLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeLLList; -struct SegmentAttributeLLList; -struct LaneDataAttributeList; -struct Reg_NodeAttributeSetLL; - -/* NodeAttributeSetLL */ -typedef struct NodeAttributeSetLL { - struct NodeAttributeLLList *localNode; /* OPTIONAL */ - struct SegmentAttributeLLList *disabled; /* OPTIONAL */ - struct SegmentAttributeLLList *enabled; /* OPTIONAL */ - struct LaneDataAttributeList *data; /* OPTIONAL */ - Offset_B10_t *dWidth; /* OPTIONAL */ - Offset_B10_t *dElevation; /* OPTIONAL */ - struct NodeAttributeSetLL__regional { - A_SEQUENCE_OF(struct Reg_NodeAttributeSetLL) 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; -} NodeAttributeSetLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeSetLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h deleted file mode 100644 index 0f98a8fb6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeSetXY.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeSetXY_H_ -#define _NodeAttributeSetXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeXYList; -struct SegmentAttributeXYList; -struct LaneDataAttributeList; -struct Reg_NodeAttributeSetXY; - -/* NodeAttributeSetXY */ -typedef struct NodeAttributeSetXY { - struct NodeAttributeXYList *localNode; /* OPTIONAL */ - struct SegmentAttributeXYList *disabled; /* OPTIONAL */ - struct SegmentAttributeXYList *enabled; /* OPTIONAL */ - struct LaneDataAttributeList *data; /* OPTIONAL */ - Offset_B10_t *dWidth; /* OPTIONAL */ - Offset_B10_t *dElevation; /* OPTIONAL */ - struct NodeAttributeSetXY__regional { - A_SEQUENCE_OF(struct Reg_NodeAttributeSetXY) 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; -} NodeAttributeSetXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeSetXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h deleted file mode 100644 index 9803927cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXY.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeXY_H_ -#define _NodeAttributeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeAttributeXY { - NodeAttributeXY_reserved = 0, - NodeAttributeXY_stopLine = 1, - NodeAttributeXY_roundedCapStyleA = 2, - NodeAttributeXY_roundedCapStyleB = 3, - NodeAttributeXY_mergePoint = 4, - NodeAttributeXY_divergePoint = 5, - NodeAttributeXY_downstreamStopLine = 6, - NodeAttributeXY_downstreamStartNode = 7, - NodeAttributeXY_closedToTraffic = 8, - NodeAttributeXY_safeIsland = 9, - NodeAttributeXY_curbPresentAtStepOff = 10, - NodeAttributeXY_hydrantPresent = 11 - /* - * Enumeration is extensible - */ -} e_NodeAttributeXY; - -/* NodeAttributeXY */ -typedef long NodeAttributeXY_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY; -extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1; -asn_struct_free_f NodeAttributeXY_free; -asn_struct_print_f NodeAttributeXY_print; -asn_constr_check_f NodeAttributeXY_constraint; -ber_type_decoder_f NodeAttributeXY_decode_ber; -der_type_encoder_f NodeAttributeXY_encode_der; -xer_type_decoder_f NodeAttributeXY_decode_xer; -xer_type_encoder_f NodeAttributeXY_encode_xer; -jer_type_encoder_f NodeAttributeXY_encode_jer; -oer_type_decoder_f NodeAttributeXY_decode_oer; -oer_type_encoder_f NodeAttributeXY_encode_oer; -per_type_decoder_f NodeAttributeXY_decode_uper; -per_type_encoder_f NodeAttributeXY_encode_uper; -per_type_decoder_f NodeAttributeXY_decode_aper; -per_type_encoder_f NodeAttributeXY_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h deleted file mode 100644 index af3e4be8d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeAttributeXYList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeAttributeXYList_H_ -#define _NodeAttributeXYList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeAttributeXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeAttributeXYList */ -typedef struct NodeAttributeXYList { - A_SEQUENCE_OF(NodeAttributeXY_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeXYList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList; -extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeXYList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h deleted file mode 100644 index c71625ba3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeLL.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeLL_H_ -#define _NodeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointLL.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeSetLL; - -/* NodeLL */ -typedef struct NodeLL { - NodeOffsetPointLL_t delta; - struct NodeAttributeSetLL *attributes; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeLL; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeLL_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h deleted file mode 100644 index 39c40dc3d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListLL.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeListLL_H_ -#define _NodeListLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeSetLL.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeListLL_PR { - NodeListLL_PR_NOTHING, /* No components present */ - NodeListLL_PR_nodes - /* Extensions may appear below */ - -} NodeListLL_PR; - -/* NodeListLL */ -typedef struct NodeListLL { - NodeListLL_PR present; - union NodeListLL_u { - NodeSetLL_t nodes; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeListLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeListLL; -extern asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeListLL_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeListLL_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeListLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h deleted file mode 100644 index 4ba01bfc4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeListXY.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeListXY_H_ -#define _NodeListXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeSetXY.h" -#include "ComputedLane.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeListXY_PR { - NodeListXY_PR_NOTHING, /* No components present */ - NodeListXY_PR_nodes, - NodeListXY_PR_computed - /* Extensions may appear below */ - -} NodeListXY_PR; - -/* NodeListXY */ -typedef struct NodeListXY { - NodeListXY_PR present; - union NodeListXY_u { - NodeSetXY_t nodes; - ComputedLane_t computed; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeListXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeListXY; -extern asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeListXY_1[2]; -extern asn_per_constraints_t asn_PER_type_NodeListXY_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeListXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h deleted file mode 100644 index a07d995ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointLL.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeOffsetPointLL_H_ -#define _NodeOffsetPointLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-LL-24B.h" -#include "Node-LL-28B.h" -#include "Node-LL-32B.h" -#include "Node-LL-36B.h" -#include "Node-LL-44B.h" -#include "Node-LL-48B.h" -#include "Node-LLmD-64b.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointLL_PR { - NodeOffsetPointLL_PR_NOTHING, /* No components present */ - NodeOffsetPointLL_PR_node_LL1, - NodeOffsetPointLL_PR_node_LL2, - NodeOffsetPointLL_PR_node_LL3, - NodeOffsetPointLL_PR_node_LL4, - NodeOffsetPointLL_PR_node_LL5, - NodeOffsetPointLL_PR_node_LL6, - NodeOffsetPointLL_PR_node_LatLon, - NodeOffsetPointLL_PR_regional -} NodeOffsetPointLL_PR; - -/* NodeOffsetPointLL */ -typedef struct NodeOffsetPointLL { - NodeOffsetPointLL_PR present; - union NodeOffsetPointLL_u { - Node_LL_24B_t node_LL1; - Node_LL_28B_t node_LL2; - Node_LL_32B_t node_LL3; - Node_LL_36B_t node_LL4; - Node_LL_44B_t node_LL5; - Node_LL_48B_t node_LL6; - Node_LLmD_64b_t node_LatLon; - Reg_NodeOffsetPointLL_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL; -extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[8]; -extern asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h deleted file mode 100644 index 5ac467a85..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY-addGrpB.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeOffsetPointXY_addGrpB_H_ -#define _NodeOffsetPointXY_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-LLdms-48b.h" -#include "Node-LLdms-80b.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointXY_addGrpB_PR { - NodeOffsetPointXY_addGrpB_PR_NOTHING, /* No components present */ - NodeOffsetPointXY_addGrpB_PR_posA, - NodeOffsetPointXY_addGrpB_PR_posB - /* Extensions may appear below */ - -} NodeOffsetPointXY_addGrpB_PR; - -/* NodeOffsetPointXY-addGrpB */ -typedef struct NodeOffsetPointXY_addGrpB { - NodeOffsetPointXY_addGrpB_PR present; - union NodeOffsetPointXY_addGrpB_u { - Node_LLdms_48b_t posA; - Node_LLdms_80b_t posB; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointXY_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB; -extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[2]; -extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointXY_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h deleted file mode 100644 index 4bb486225..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeOffsetPointXY.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeOffsetPointXY_H_ -#define _NodeOffsetPointXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-XY-20b.h" -#include "Node-XY-22b.h" -#include "Node-XY-24b.h" -#include "Node-XY-26b.h" -#include "Node-XY-28b.h" -#include "Node-XY-32b.h" -#include "Node-LLmD-64b.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointXY_PR { - NodeOffsetPointXY_PR_NOTHING, /* No components present */ - NodeOffsetPointXY_PR_node_XY1, - NodeOffsetPointXY_PR_node_XY2, - NodeOffsetPointXY_PR_node_XY3, - NodeOffsetPointXY_PR_node_XY4, - NodeOffsetPointXY_PR_node_XY5, - NodeOffsetPointXY_PR_node_XY6, - NodeOffsetPointXY_PR_node_LatLon, - NodeOffsetPointXY_PR_regional -} NodeOffsetPointXY_PR; - -/* NodeOffsetPointXY */ -typedef struct NodeOffsetPointXY { - NodeOffsetPointXY_PR present; - union NodeOffsetPointXY_u { - Node_XY_20b_t node_XY1; - Node_XY_22b_t node_XY2; - Node_XY_24b_t node_XY3; - Node_XY_26b_t node_XY4; - Node_XY_28b_t node_XY5; - Node_XY_32b_t node_XY6; - Node_LLmD_64b_t node_LatLon; - Reg_NodeOffsetPointXY_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY; -extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[8]; -extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h deleted file mode 100644 index 023d2252d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetLL.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeSetLL_H_ -#define _NodeSetLL_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 NodeLL; - -/* NodeSetLL */ -typedef struct NodeSetLL { - A_SEQUENCE_OF(struct NodeLL) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeSetLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeSetLL; -extern asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeSetLL_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeSetLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h deleted file mode 100644 index 5d1c49c49..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeSetXY.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeSetXY_H_ -#define _NodeSetXY_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 NodeXY; - -/* NodeSetXY */ -typedef struct NodeSetXY { - A_SEQUENCE_OF(struct NodeXY) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeSetXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeSetXY; -extern asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeSetXY_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeSetXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h deleted file mode 100644 index 164e75a84..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NodeXY.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NodeXY_H_ -#define _NodeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointXY.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeSetXY; - -/* NodeXY */ -typedef struct NodeXY { - NodeOffsetPointXY_t delta; - struct NodeAttributeSetXY *attributes; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeXY; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeXY_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h deleted file mode 100644 index 81e0bda68..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/NumberOfParticipantsInCluster.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _NumberOfParticipantsInCluster_H_ -#define _NumberOfParticipantsInCluster_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NumberOfParticipantsInCluster { - NumberOfParticipantsInCluster_unavailable = 0, - NumberOfParticipantsInCluster_small = 1, - NumberOfParticipantsInCluster_medium = 2, - NumberOfParticipantsInCluster_large = 3 - /* - * Enumeration is extensible - */ -} e_NumberOfParticipantsInCluster; - -/* NumberOfParticipantsInCluster */ -typedef long NumberOfParticipantsInCluster_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; -extern const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1; -asn_struct_free_f NumberOfParticipantsInCluster_free; -asn_struct_print_f NumberOfParticipantsInCluster_print; -asn_constr_check_f NumberOfParticipantsInCluster_constraint; -ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; -der_type_encoder_f NumberOfParticipantsInCluster_encode_der; -xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; -xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; -jer_type_encoder_f NumberOfParticipantsInCluster_encode_jer; -oer_type_decoder_f NumberOfParticipantsInCluster_decode_oer; -oer_type_encoder_f NumberOfParticipantsInCluster_encode_oer; -per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; -per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; -per_type_decoder_f NumberOfParticipantsInCluster_decode_aper; -per_type_encoder_f NumberOfParticipantsInCluster_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NumberOfParticipantsInCluster_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h deleted file mode 100644 index f878055c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OBJECT_IDENTIFIER.h +++ /dev/null @@ -1,184 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _OBJECT_IDENTIFIER_H_ -#define _OBJECT_IDENTIFIER_H_ - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef uint32_t asn_oid_arc_t; -#define ASN_OID_ARC_MAX (~((asn_oid_arc_t)0)) - -typedef ASN__PRIMITIVE_TYPE_t OBJECT_IDENTIFIER_t; - -extern asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER; -extern asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER; - -ssize_t OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, - asn_app_consume_bytes_f *cb, - void *app_key); - -#define OBJECT_IDENTIFIER_free ASN__PRIMITIVE_TYPE_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f OBJECT_IDENTIFIER_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define OBJECT_IDENTIFIER_compare OCTET_STRING_compare - -asn_constr_check_f OBJECT_IDENTIFIER_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define OBJECT_IDENTIFIER_decode_ber ber_decode_primitive -#define OBJECT_IDENTIFIER_encode_der der_encode_primitive -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f OBJECT_IDENTIFIER_decode_xer; -xer_type_encoder_f OBJECT_IDENTIFIER_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f OBJECT_IDENTIFIER_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -#define OBJECT_IDENTIFIER_decode_oer oer_decode_primitive -#define OBJECT_IDENTIFIER_encode_oer oer_encode_primitive -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#define OBJECT_IDENTIFIER_decode_uper OCTET_STRING_decode_uper -#define OBJECT_IDENTIFIER_encode_uper OCTET_STRING_encode_uper -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define OBJECT_IDENTIFIER_decode_aper OCTET_STRING_decode_aper -#define OBJECT_IDENTIFIER_encode_aper OCTET_STRING_encode_aper -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f OBJECT_IDENTIFIER_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -/********************************** - * Some handy conversion routines * - **********************************/ - -/* - * This function fills an (arcs) array with OBJECT IDENTIFIER arcs - * up to specified (arc_slots) elements. - * - * EXAMPLE: - * void print_arcs(OBJECT_IDENTIFIER_t *oid) { - * asn_oid_arc_t fixed_arcs[10]; // Try with fixed space first - * asn_oid_arc_t *arcs = fixed_arcs; - * size_t arc_slots = sizeof(fixed_arcs)/sizeof(fixed_arcs[0]); // 10 - * ssize_t count; // Real number of arcs. - * int i; - * - * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); - * // If necessary, reallocate arcs array and try again. - * if(count > arc_slots) { - * arc_slots = count; - * arcs = malloc(sizeof(asn_oid_arc_t) * arc_slots); - * if(!arcs) return; - * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); - * assert(count == arc_slots); - * } - * - * // Print the contents of the arcs array. - * for(i = 0; i < count; i++) - * printf("%"PRIu32"\n", arcs[i]); - * - * // Avoid memory leak. - * if(arcs != fixed_arcs) free(arcs); - * } - * - * RETURN VALUES: - * -1/EINVAL: Invalid arguments (oid is missing) - * -1/ERANGE: One or more arcs have value out of array cell type range. - * >=0: Number of arcs contained in the OBJECT IDENTIFIER - * - * WARNING: The function always returns the actual number of arcs, - * even if there is no sufficient (arc_slots) provided. - */ -ssize_t OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *oid, - asn_oid_arc_t *arcs, size_t arc_slots); - -/* - * This functions initializes the OBJECT IDENTIFIER object with - * the given set of arcs. - * The minimum of two arcs must be present; some restrictions apply. - * RETURN VALUES: - * -1/EINVAL: Invalid arguments - * -1/ERANGE: The first two arcs do not conform to ASN.1 restrictions. - * -1/ENOMEM: Memory allocation failed - * 0: The object was initialized with new arcs. - */ -int OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, - const asn_oid_arc_t *arcs, size_t arcs_count); - - -/* - * Parse the OBJECT IDENTIFIER textual representation ("1.3.6.1.4.1.9363"). - * No arc can exceed the (0..ASN_OID_ARC_MAX, which is the same as UINT32_MAX). - * This function is not specific to OBJECT IDENTIFIER, it may be used to parse - * the RELATIVE-OID data, or any other data consisting of dot-separated - * series of numeric values. - * - * If (oid_txt_length == -1), the strlen() will be invoked to determine the - * size of the (oid_text) string. - * - * After return, the optional (opt_oid_text_end) is set to the character after - * the last parsed one. (opt_oid_text_end) is never less than (oid_text). - * - * RETURN VALUES: - * -1: Parse error. - * >= 0: Number of arcs contained in the OBJECT IDENTIFIER. - * - * WARNING: The function always returns the real number of arcs, - * even if there is no sufficient (arc_slots) provided. - * This is useful for (arc_slots) value estimation. - */ -ssize_t OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, - ssize_t oid_txt_length, - asn_oid_arc_t *arcs, size_t arcs_count, - const char **opt_oid_text_end); - -/* - * Internal functions. - * Used by RELATIVE-OID implementation in particular. - */ - -/* - * Retrieve a single arc of size from the (arcbuf) buffer. - * RETURN VALUES: - * -1: Failed to retrieve the value from the (arcbuf). - * >0: Number of bytes consumed from the (arcbuf), <= (arcbuf_len). - */ -ssize_t OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, - size_t arcbuf_len, - asn_oid_arc_t *ret_value); - -/* - * Write the unterminated arc value into the (arcbuf) which has the size at - * least (arcbuf_len). - * RETURN VALUES: - * -1: (arcbuf_len) size is not sufficient to write the value. - * : Number of bytes appended to the arcbuf (<= arcbuf_len). - */ -ssize_t OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t arc_value); - -#ifdef __cplusplus -} -#endif - -#endif /* _OBJECT_IDENTIFIER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h deleted file mode 100644 index b1ace1409..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OCTET_STRING.h +++ /dev/null @@ -1,165 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _OCTET_STRING_H_ -#define _OCTET_STRING_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct OCTET_STRING { - uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ - size_t size; /* Size of the buffer */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} OCTET_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; -extern asn_TYPE_operation_t asn_OP_OCTET_STRING; - -asn_struct_free_f OCTET_STRING_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f OCTET_STRING_print; -asn_struct_print_f OCTET_STRING_print_utf8; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f OCTET_STRING_compare; - -#define OCTET_STRING_constraint asn_generic_no_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f OCTET_STRING_decode_ber; -der_type_encoder_f OCTET_STRING_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ -xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ -xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ -xer_type_encoder_f OCTET_STRING_encode_xer; -xer_type_encoder_f OCTET_STRING_encode_xer_utf8; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f OCTET_STRING_encode_jer; -jer_type_encoder_f OCTET_STRING_encode_jer_utf8; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f OCTET_STRING_decode_oer; -oer_type_encoder_f OCTET_STRING_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f OCTET_STRING_decode_uper; -per_type_encoder_f OCTET_STRING_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f OCTET_STRING_decode_aper; -per_type_encoder_f OCTET_STRING_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f OCTET_STRING_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -int OCTET_STRING_per_get_characters( - asn_per_data_t *po, - uint8_t *buf, - size_t units, - unsigned int bpc, - unsigned int unit_bits, - long lb, - long ub, - const asn_per_constraints_t *pc); - -int OCTET_STRING_per_put_characters( - asn_per_outp_t *po, - const uint8_t *buf, - size_t units, - unsigned int bpc, - unsigned int unit_bits, - long lb, - long ub, - const asn_per_constraints_t *pc); -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -/****************************** - * Handy conversion routines. * - ******************************/ - -/* - * This function clears the previous value of the OCTET STRING (if any) - * and then allocates a new memory with the specified content (str/size). - * If size = -1, the size of the original string will be determined - * using strlen(str). - * If str equals to NULL, the function will silently clear the - * current contents of the OCTET STRING. - * Returns 0 if it was possible to perform operation, -1 otherwise. - */ -int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); - -/* Handy conversion from the C string into the OCTET STRING. */ -#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) - -/* - * Allocate and fill the new OCTET STRING and return a pointer to the newly - * allocated object. NULL is permitted in str: the function will just allocate - * empty OCTET STRING. - */ -OCTET_STRING_t *OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, - const char *str, int size); - -/**************************** - * Internally useful stuff. * - ****************************/ - -typedef struct asn_OCTET_STRING_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the structure */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - enum asn_OS_Subvariant { - ASN_OSUBV_ANY, /* The open type (ANY) */ - ASN_OSUBV_BIT, /* BIT STRING */ - ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ - ASN_OSUBV_U16, /* 16-bit character (BMPString) */ - ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ - } subvariant; -} asn_OCTET_STRING_specifics_t; - -extern asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs; - -size_t OCTET_STRING_random_length_constrained( - const asn_TYPE_descriptor_t *, const asn_encoding_constraints_t *, - size_t max_length); - -#if !defined(ASN_DISABLE_BER_SUPPORT) -struct _stack_el { - ber_tlv_len_t left; /* What's left to read (or -1) */ - ber_tlv_len_t got; /* What was actually processed */ - unsigned cont_level; /* Depth of subcontainment */ - int want_nulls; /* Want null "end of content" octets? */ - int bits_chopped; /* Flag in BIT STRING mode */ - ber_tlv_tag_t tag; /* For debugging purposes */ - struct _stack_el *prev; - struct _stack_el *next; -}; -struct _stack { - struct _stack_el *tail; - struct _stack_el *cur_ptr; -}; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h deleted file mode 100644 index 5e979773e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OPEN_TYPE.h +++ /dev/null @@ -1,117 +0,0 @@ -/*- - * Copyright (c) 2017-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_OPEN_TYPE_H -#define ASN_OPEN_TYPE_H - -#include -///////////#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Decode an Open Type which is potentially constraiend - * by the other members of the parent structure. - */ - -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#define OPEN_TYPE_free CHOICE_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define OPEN_TYPE_print CHOICE_print -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define OPEN_TYPE_compare CHOICE_compare - -#define OPEN_TYPE_constraint CHOICE_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -asn_dec_rval_t OPEN_TYPE_ber_get( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - const void *ptr, size_t size); -#define OPEN_TYPE_decode_ber NULL -#define OPEN_TYPE_encode_der CHOICE_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -asn_dec_rval_t OPEN_TYPE_xer_get( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - const void *ptr, size_t size); -#define OPEN_TYPE_decode_xer NULL -#define OPEN_TYPE_encode_xer CHOICE_encode_xer -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -#define OPEN_TYPE_encode_jer CHOICE_encode_jer -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -asn_dec_rval_t OPEN_TYPE_oer_get( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - asn_TYPE_member_t *element, const void *ptr, - size_t size); -#define OPEN_TYPE_decode_oer NULL -#define OPEN_TYPE_encode_oer CHOICE_encode_oer -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -asn_dec_rval_t OPEN_TYPE_uper_get( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - asn_per_data_t *pd); -#define OPEN_TYPE_decode_uper NULL -asn_enc_rval_t OPEN_TYPE_encode_uper( - const asn_TYPE_descriptor_t *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -asn_dec_rval_t OPEN_TYPE_aper_get( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - asn_per_data_t *pd); -#define OPEN_TYPE_decode_aper NULL -asn_enc_rval_t OPEN_TYPE_encode_aper( - const asn_TYPE_descriptor_t *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); - -int OPEN_TYPE_aper_is_unknown_type( - const asn_TYPE_descriptor_t *td, - void *sptr, - const asn_TYPE_member_t *elm); - -asn_dec_rval_t OPEN_TYPE_aper_unknown_type_discard_bytes( - asn_per_data_t *pd); -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -extern asn_TYPE_operation_t asn_OP_OPEN_TYPE; - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_OPEN_TYPE_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h deleted file mode 100644 index ca03080ea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectCount.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ObjectCount_H_ -#define _ObjectCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObjectCount */ -typedef long ObjectCount_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObjectCount_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; -asn_struct_free_f ObjectCount_free; -asn_struct_print_f ObjectCount_print; -asn_constr_check_f ObjectCount_constraint; -ber_type_decoder_f ObjectCount_decode_ber; -der_type_encoder_f ObjectCount_encode_der; -xer_type_decoder_f ObjectCount_decode_xer; -xer_type_encoder_f ObjectCount_encode_xer; -jer_type_encoder_f ObjectCount_encode_jer; -oer_type_decoder_f ObjectCount_decode_oer; -oer_type_encoder_f ObjectCount_encode_oer; -per_type_decoder_f ObjectCount_decode_uper; -per_type_encoder_f ObjectCount_encode_uper; -per_type_decoder_f ObjectCount_decode_aper; -per_type_encoder_f ObjectCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h deleted file mode 100644 index 852c45d03..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObjectDescriptor.h +++ /dev/null @@ -1,54 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _ObjectDescriptor_H_ -#define _ObjectDescriptor_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef GraphicString_t ObjectDescriptor_t; /* Implemented via GraphicString */ - -extern asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor; -extern asn_TYPE_operation_t asn_OP_ObjectDescriptor; - -#define ObjectDescriptor_free OCTET_STRING_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define ObjectDescriptor_print OCTET_STRING_print_utf8 -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -#define ObjectDescriptor_constraint asn_generic_unknown_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define ObjectDescriptor_decode_ber OCTET_STRING_decode_ber -#define ObjectDescriptor_encode_der OCTET_STRING_encode_der -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define ObjectDescriptor_decode_xer OCTET_STRING_decode_xer_utf8 -#define ObjectDescriptor_encode_xer OCTET_STRING_encode_xer_utf8 -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -#define ObjectDescriptor_encode_jer OCTET_STRING_encode_jer_utf8 -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#define ObjectDescriptor_decode_uper OCTET_STRING_decode_uper -#define ObjectDescriptor_encode_uper OCTET_STRING_encode_uper -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define ObjectDescriptor_decode_aper OCTET_STRING_decode_aper -#define ObjectDescriptor_encode_aper OCTET_STRING_encode_aper -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectDescriptor_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h deleted file mode 100644 index c1f82ec7e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDetection.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ObstacleDetection_H_ -#define _ObstacleDetection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ObstacleDistance.h" -#include "ObstacleDirection.h" -#include "ITIScodes.h" -#include "GenericLocations.h" -#include "DDateTime.h" -#include "VerticalAccelerationThreshold.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDetection */ -typedef struct ObstacleDetection { - ObstacleDistance_t obDist; - ObstacleDirection_t obDirect; - ITIScodes_t *description; /* OPTIONAL */ - GenericLocations_t *locationDetails; /* OPTIONAL */ - DDateTime_t dateTime; - VerticalAccelerationThreshold_t *vertEvent; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ObstacleDetection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDetection; -extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1; -extern asn_TYPE_member_t asn_MBR_ObstacleDetection_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDetection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h deleted file mode 100644 index 607fd2f8a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDirection.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ObstacleDirection_H_ -#define _ObstacleDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_Angle.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDirection */ -typedef Common_Angle_t ObstacleDirection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; -asn_struct_free_f ObstacleDirection_free; -asn_struct_print_f ObstacleDirection_print; -asn_constr_check_f ObstacleDirection_constraint; -ber_type_decoder_f ObstacleDirection_decode_ber; -der_type_encoder_f ObstacleDirection_encode_der; -xer_type_decoder_f ObstacleDirection_decode_xer; -xer_type_encoder_f ObstacleDirection_encode_xer; -jer_type_encoder_f ObstacleDirection_encode_jer; -oer_type_decoder_f ObstacleDirection_decode_oer; -oer_type_encoder_f ObstacleDirection_encode_oer; -per_type_decoder_f ObstacleDirection_decode_uper; -per_type_encoder_f ObstacleDirection_encode_uper; -per_type_decoder_f ObstacleDirection_decode_aper; -per_type_encoder_f ObstacleDirection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h deleted file mode 100644 index 64a7727a4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ObstacleDistance.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ObstacleDistance_H_ -#define _ObstacleDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDistance */ -typedef long ObstacleDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; -asn_struct_free_f ObstacleDistance_free; -asn_struct_print_f ObstacleDistance_print; -asn_constr_check_f ObstacleDistance_constraint; -ber_type_decoder_f ObstacleDistance_decode_ber; -der_type_encoder_f ObstacleDistance_encode_der; -xer_type_decoder_f ObstacleDistance_decode_xer; -xer_type_encoder_f ObstacleDistance_encode_xer; -jer_type_encoder_f ObstacleDistance_encode_jer; -oer_type_decoder_f ObstacleDistance_decode_oer; -oer_type_encoder_f ObstacleDistance_encode_oer; -per_type_decoder_f ObstacleDistance_decode_uper; -per_type_encoder_f ObstacleDistance_encode_uper; -per_type_decoder_f ObstacleDistance_decode_aper; -per_type_encoder_f ObstacleDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h deleted file mode 100644 index a2a931cb8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B09.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B09_H_ -#define _Offset_B09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B09 */ -typedef long Offset_B09_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B09_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B09; -asn_struct_free_f Offset_B09_free; -asn_struct_print_f Offset_B09_print; -asn_constr_check_f Offset_B09_constraint; -ber_type_decoder_f Offset_B09_decode_ber; -der_type_encoder_f Offset_B09_encode_der; -xer_type_decoder_f Offset_B09_decode_xer; -xer_type_encoder_f Offset_B09_encode_xer; -jer_type_encoder_f Offset_B09_encode_jer; -oer_type_decoder_f Offset_B09_decode_oer; -oer_type_encoder_f Offset_B09_encode_oer; -per_type_decoder_f Offset_B09_decode_uper; -per_type_encoder_f Offset_B09_encode_uper; -per_type_decoder_f Offset_B09_decode_aper; -per_type_encoder_f Offset_B09_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h deleted file mode 100644 index 41c195daf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B10.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B10_H_ -#define _Offset_B10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B10 */ -typedef long Offset_B10_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B10_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; -asn_struct_free_f Offset_B10_free; -asn_struct_print_f Offset_B10_print; -asn_constr_check_f Offset_B10_constraint; -ber_type_decoder_f Offset_B10_decode_ber; -der_type_encoder_f Offset_B10_encode_der; -xer_type_decoder_f Offset_B10_decode_xer; -xer_type_encoder_f Offset_B10_encode_xer; -jer_type_encoder_f Offset_B10_encode_jer; -oer_type_decoder_f Offset_B10_decode_oer; -oer_type_encoder_f Offset_B10_encode_oer; -per_type_decoder_f Offset_B10_decode_uper; -per_type_encoder_f Offset_B10_encode_uper; -per_type_decoder_f Offset_B10_decode_aper; -per_type_encoder_f Offset_B10_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h deleted file mode 100644 index d848a87d2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B11.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B11_H_ -#define _Offset_B11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B11 */ -typedef long Offset_B11_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B11_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; -asn_struct_free_f Offset_B11_free; -asn_struct_print_f Offset_B11_print; -asn_constr_check_f Offset_B11_constraint; -ber_type_decoder_f Offset_B11_decode_ber; -der_type_encoder_f Offset_B11_encode_der; -xer_type_decoder_f Offset_B11_decode_xer; -xer_type_encoder_f Offset_B11_encode_xer; -jer_type_encoder_f Offset_B11_encode_jer; -oer_type_decoder_f Offset_B11_decode_oer; -oer_type_encoder_f Offset_B11_encode_oer; -per_type_decoder_f Offset_B11_decode_uper; -per_type_encoder_f Offset_B11_encode_uper; -per_type_decoder_f Offset_B11_decode_aper; -per_type_encoder_f Offset_B11_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h deleted file mode 100644 index 7452b84d6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B12.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B12_H_ -#define _Offset_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B12 */ -typedef long Offset_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; -asn_struct_free_f Offset_B12_free; -asn_struct_print_f Offset_B12_print; -asn_constr_check_f Offset_B12_constraint; -ber_type_decoder_f Offset_B12_decode_ber; -der_type_encoder_f Offset_B12_encode_der; -xer_type_decoder_f Offset_B12_decode_xer; -xer_type_encoder_f Offset_B12_encode_xer; -jer_type_encoder_f Offset_B12_encode_jer; -oer_type_decoder_f Offset_B12_decode_oer; -oer_type_encoder_f Offset_B12_encode_oer; -per_type_decoder_f Offset_B12_decode_uper; -per_type_encoder_f Offset_B12_encode_uper; -per_type_decoder_f Offset_B12_decode_aper; -per_type_encoder_f Offset_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h deleted file mode 100644 index aea3d4dc7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B13.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B13_H_ -#define _Offset_B13_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B13 */ -typedef long Offset_B13_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B13_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; -asn_struct_free_f Offset_B13_free; -asn_struct_print_f Offset_B13_print; -asn_constr_check_f Offset_B13_constraint; -ber_type_decoder_f Offset_B13_decode_ber; -der_type_encoder_f Offset_B13_encode_der; -xer_type_decoder_f Offset_B13_decode_xer; -xer_type_encoder_f Offset_B13_encode_xer; -jer_type_encoder_f Offset_B13_encode_jer; -oer_type_decoder_f Offset_B13_decode_oer; -oer_type_encoder_f Offset_B13_encode_oer; -per_type_decoder_f Offset_B13_decode_uper; -per_type_encoder_f Offset_B13_encode_uper; -per_type_decoder_f Offset_B13_decode_aper; -per_type_encoder_f Offset_B13_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B13_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h deleted file mode 100644 index 4374add10..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B14.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B14_H_ -#define _Offset_B14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B14 */ -typedef long Offset_B14_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B14_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; -asn_struct_free_f Offset_B14_free; -asn_struct_print_f Offset_B14_print; -asn_constr_check_f Offset_B14_constraint; -ber_type_decoder_f Offset_B14_decode_ber; -der_type_encoder_f Offset_B14_encode_der; -xer_type_decoder_f Offset_B14_decode_xer; -xer_type_encoder_f Offset_B14_encode_xer; -jer_type_encoder_f Offset_B14_encode_jer; -oer_type_decoder_f Offset_B14_decode_oer; -oer_type_encoder_f Offset_B14_encode_oer; -per_type_decoder_f Offset_B14_decode_uper; -per_type_encoder_f Offset_B14_encode_uper; -per_type_decoder_f Offset_B14_decode_aper; -per_type_encoder_f Offset_B14_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h deleted file mode 100644 index e5b490ae3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Offset-B16.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Offset_B16_H_ -#define _Offset_B16_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B16 */ -typedef long Offset_B16_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B16_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; -asn_struct_free_f Offset_B16_free; -asn_struct_print_f Offset_B16_print; -asn_constr_check_f Offset_B16_constraint; -ber_type_decoder_f Offset_B16_decode_ber; -der_type_encoder_f Offset_B16_encode_der; -xer_type_decoder_f Offset_B16_decode_xer; -xer_type_encoder_f Offset_B16_encode_xer; -jer_type_encoder_f Offset_B16_encode_jer; -oer_type_decoder_f Offset_B16_decode_oer; -oer_type_encoder_f Offset_B16_encode_oer; -per_type_decoder_f Offset_B16_decode_uper; -per_type_encoder_f Offset_B16_encode_uper; -per_type_decoder_f Offset_B16_decode_aper; -per_type_encoder_f Offset_B16_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B16_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h deleted file mode 100644 index c556ad938..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B12.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B12_H_ -#define _OffsetLL_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B12 */ -typedef long OffsetLL_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12; -asn_struct_free_f OffsetLL_B12_free; -asn_struct_print_f OffsetLL_B12_print; -asn_constr_check_f OffsetLL_B12_constraint; -ber_type_decoder_f OffsetLL_B12_decode_ber; -der_type_encoder_f OffsetLL_B12_encode_der; -xer_type_decoder_f OffsetLL_B12_decode_xer; -xer_type_encoder_f OffsetLL_B12_encode_xer; -jer_type_encoder_f OffsetLL_B12_encode_jer; -oer_type_decoder_f OffsetLL_B12_decode_oer; -oer_type_encoder_f OffsetLL_B12_encode_oer; -per_type_decoder_f OffsetLL_B12_decode_uper; -per_type_encoder_f OffsetLL_B12_encode_uper; -per_type_decoder_f OffsetLL_B12_decode_aper; -per_type_encoder_f OffsetLL_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h deleted file mode 100644 index a3b4d197f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B14.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B14_H_ -#define _OffsetLL_B14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B14 */ -typedef long OffsetLL_B14_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14; -asn_struct_free_f OffsetLL_B14_free; -asn_struct_print_f OffsetLL_B14_print; -asn_constr_check_f OffsetLL_B14_constraint; -ber_type_decoder_f OffsetLL_B14_decode_ber; -der_type_encoder_f OffsetLL_B14_encode_der; -xer_type_decoder_f OffsetLL_B14_decode_xer; -xer_type_encoder_f OffsetLL_B14_encode_xer; -jer_type_encoder_f OffsetLL_B14_encode_jer; -oer_type_decoder_f OffsetLL_B14_decode_oer; -oer_type_encoder_f OffsetLL_B14_encode_oer; -per_type_decoder_f OffsetLL_B14_decode_uper; -per_type_encoder_f OffsetLL_B14_encode_uper; -per_type_decoder_f OffsetLL_B14_decode_aper; -per_type_encoder_f OffsetLL_B14_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h deleted file mode 100644 index 5204b288a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B16.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B16_H_ -#define _OffsetLL_B16_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B16 */ -typedef long OffsetLL_B16_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16; -asn_struct_free_f OffsetLL_B16_free; -asn_struct_print_f OffsetLL_B16_print; -asn_constr_check_f OffsetLL_B16_constraint; -ber_type_decoder_f OffsetLL_B16_decode_ber; -der_type_encoder_f OffsetLL_B16_encode_der; -xer_type_decoder_f OffsetLL_B16_decode_xer; -xer_type_encoder_f OffsetLL_B16_encode_xer; -jer_type_encoder_f OffsetLL_B16_encode_jer; -oer_type_decoder_f OffsetLL_B16_decode_oer; -oer_type_encoder_f OffsetLL_B16_encode_oer; -per_type_decoder_f OffsetLL_B16_decode_uper; -per_type_encoder_f OffsetLL_B16_encode_uper; -per_type_decoder_f OffsetLL_B16_decode_aper; -per_type_encoder_f OffsetLL_B16_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B16_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h deleted file mode 100644 index f973847ce..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B18.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B18_H_ -#define _OffsetLL_B18_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B18 */ -typedef long OffsetLL_B18_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18; -asn_struct_free_f OffsetLL_B18_free; -asn_struct_print_f OffsetLL_B18_print; -asn_constr_check_f OffsetLL_B18_constraint; -ber_type_decoder_f OffsetLL_B18_decode_ber; -der_type_encoder_f OffsetLL_B18_encode_der; -xer_type_decoder_f OffsetLL_B18_decode_xer; -xer_type_encoder_f OffsetLL_B18_encode_xer; -jer_type_encoder_f OffsetLL_B18_encode_jer; -oer_type_decoder_f OffsetLL_B18_decode_oer; -oer_type_encoder_f OffsetLL_B18_encode_oer; -per_type_decoder_f OffsetLL_B18_decode_uper; -per_type_encoder_f OffsetLL_B18_encode_uper; -per_type_decoder_f OffsetLL_B18_decode_aper; -per_type_encoder_f OffsetLL_B18_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B18_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h deleted file mode 100644 index aca729929..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B22.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B22_H_ -#define _OffsetLL_B22_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B22 */ -typedef long OffsetLL_B22_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22; -asn_struct_free_f OffsetLL_B22_free; -asn_struct_print_f OffsetLL_B22_print; -asn_constr_check_f OffsetLL_B22_constraint; -ber_type_decoder_f OffsetLL_B22_decode_ber; -der_type_encoder_f OffsetLL_B22_encode_der; -xer_type_decoder_f OffsetLL_B22_decode_xer; -xer_type_encoder_f OffsetLL_B22_encode_xer; -jer_type_encoder_f OffsetLL_B22_encode_jer; -oer_type_decoder_f OffsetLL_B22_decode_oer; -oer_type_encoder_f OffsetLL_B22_encode_oer; -per_type_decoder_f OffsetLL_B22_decode_uper; -per_type_encoder_f OffsetLL_B22_encode_uper; -per_type_decoder_f OffsetLL_B22_decode_aper; -per_type_encoder_f OffsetLL_B22_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B22_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h deleted file mode 100644 index 486fbc757..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetLL-B24.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetLL_B24_H_ -#define _OffsetLL_B24_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B24 */ -typedef long OffsetLL_B24_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24; -asn_struct_free_f OffsetLL_B24_free; -asn_struct_print_f OffsetLL_B24_print; -asn_constr_check_f OffsetLL_B24_constraint; -ber_type_decoder_f OffsetLL_B24_decode_ber; -der_type_encoder_f OffsetLL_B24_encode_der; -xer_type_decoder_f OffsetLL_B24_decode_xer; -xer_type_encoder_f OffsetLL_B24_encode_xer; -jer_type_encoder_f OffsetLL_B24_encode_jer; -oer_type_decoder_f OffsetLL_B24_decode_oer; -oer_type_encoder_f OffsetLL_B24_encode_oer; -per_type_decoder_f OffsetLL_B24_decode_uper; -per_type_encoder_f OffsetLL_B24_encode_uper; -per_type_decoder_f OffsetLL_B24_decode_aper; -per_type_encoder_f OffsetLL_B24_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B24_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h deleted file mode 100644 index b1bcc6b86..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OffsetSystem.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OffsetSystem_H_ -#define _OffsetSystem_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Zoom.h" -#include "NodeListXY.h" -#include "NodeListLL.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum OffsetSystem__offset_PR { - OffsetSystem__offset_PR_NOTHING, /* No components present */ - OffsetSystem__offset_PR_xy, - OffsetSystem__offset_PR_ll -} OffsetSystem__offset_PR; - -/* OffsetSystem */ -typedef struct OffsetSystem { - Zoom_t *scale; /* OPTIONAL */ - struct OffsetSystem__offset { - OffsetSystem__offset_PR present; - union OffsetSystem__offset_u { - NodeListXY_t xy; - NodeListLL_t ll; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offset; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OffsetSystem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OffsetSystem; -extern asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1; -extern asn_TYPE_member_t asn_MBR_OffsetSystem_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetSystem_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h deleted file mode 100644 index b03fc5ccb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/OverlayLaneList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _OverlayLaneList_H_ -#define _OverlayLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OverlayLaneList */ -typedef struct OverlayLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OverlayLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; -extern asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_OverlayLaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _OverlayLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h deleted file mode 100644 index ebbe64ea4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartII-Id.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PartII_Id_H_ -#define _PartII_Id_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PartII-Id */ -typedef long PartII_Id_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PartII_Id_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PartII_Id; -asn_struct_free_f PartII_Id_free; -asn_struct_print_f PartII_Id_print; -asn_constr_check_f PartII_Id_constraint; -ber_type_decoder_f PartII_Id_decode_ber; -der_type_encoder_f PartII_Id_encode_der; -xer_type_decoder_f PartII_Id_decode_xer; -xer_type_encoder_f PartII_Id_encode_xer; -jer_type_encoder_f PartII_Id_encode_jer; -oer_type_decoder_f PartII_Id_decode_oer; -oer_type_encoder_f PartII_Id_encode_oer; -per_type_decoder_f PartII_Id_decode_uper; -per_type_encoder_f PartII_Id_encode_uper; -per_type_decoder_f PartII_Id_decode_aper; -per_type_encoder_f PartII_Id_encode_aper; -#define PartII_Id_vehicleSafetyExt ((PartII_Id_t)0) -#define PartII_Id_specialVehicleExt ((PartII_Id_t)1) -#define PartII_Id_supplementalVehicleExt ((PartII_Id_t)2) - -#ifdef __cplusplus -} -#endif - -#endif /* _PartII_Id_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h deleted file mode 100644 index 40ede0c9b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PartIIcontent.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PartIIcontent_H_ -#define _PartIIcontent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PartII-Id.h" -#include "ANY.h" -#include "asn_ioc.h" -#include "VehicleSafetyExtensions.h" -#include "SpecialVehicleExtensions.h" -#include "SupplementalVehicleExtensions.h" -#include "OPEN_TYPE.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BSMpartIIExtension__partII_Value_PR { - BSMpartIIExtension__partII_Value_PR_NOTHING, /* No components present */ - BSMpartIIExtension__partII_Value_PR_VehicleSafetyExtensions, - BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions, - BSMpartIIExtension__partII_Value_PR_SupplementalVehicleExtensions -} BSMpartIIExtension__partII_Value_PR; - -/* PartIIcontent */ -typedef struct BSMpartIIExtension { - PartII_Id_t partII_Id; - struct BSMpartIIExtension__partII_Value { - BSMpartIIExtension__partII_Value_PR present; - union BSMpartIIExtension__partII_Value_u { - VehicleSafetyExtensions_t VehicleSafetyExtensions; - SpecialVehicleExtensions_t SpecialVehicleExtensions; - SupplementalVehicleExtensions_t SupplementalVehicleExtensions; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } partII_Value; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BSMpartIIExtension_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension; -extern asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1; -extern asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PartIIcontent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h deleted file mode 100644 index 074a39b8f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistory.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PathHistory_H_ -#define _PathHistory_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GNSSstatus.h" -#include "PathHistoryPointList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; - -/* PathHistory */ -typedef struct PathHistory { - struct FullPositionVector *initialPosition; /* OPTIONAL */ - GNSSstatus_t *currGNSSstatus; /* OPTIONAL */ - PathHistoryPointList_t crumbData; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistory_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistory; -extern asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistory_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistory_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h deleted file mode 100644 index 7d2fa7fad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPoint.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PathHistoryPoint_H_ -#define _PathHistoryPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B18.h" -#include "VertOffset-B12.h" -#include "TimeOffset.h" -#include "Speed.h" -#include "CoarseHeading.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PositionalAccuracy; - -/* PathHistoryPoint */ -typedef struct PathHistoryPoint { - OffsetLL_B18_t latOffset; - OffsetLL_B18_t lonOffset; - VertOffset_B12_t elevationOffset; - TimeOffset_t timeOffset; - Speed_t *speed; /* OPTIONAL */ - struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ - CoarseHeading_t *heading; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistoryPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint; -extern asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h deleted file mode 100644 index f389a5c4c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathHistoryPointList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PathHistoryPointList_H_ -#define _PathHistoryPointList_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 PathHistoryPoint; - -/* PathHistoryPointList */ -typedef struct PathHistoryPointList { - A_SEQUENCE_OF(struct PathHistoryPoint) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistoryPointList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList; -extern asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[1]; -extern asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h deleted file mode 100644 index e427042c1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PathPrediction.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PathPrediction_H_ -#define _PathPrediction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RadiusOfCurvature.h" -#include "Confidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathPrediction */ -typedef struct PathPrediction { - RadiusOfCurvature_t radiusOfCurve; - Confidence_t confidence; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathPrediction_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; -extern asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1; -extern asn_TYPE_member_t asn_MBR_PathPrediction_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathPrediction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h deleted file mode 100644 index d4ae0f597..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PayloadData.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PayloadData_H_ -#define _PayloadData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PayloadData */ -typedef OCTET_STRING_t PayloadData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PayloadData; -asn_struct_free_f PayloadData_free; -asn_struct_print_f PayloadData_print; -asn_constr_check_f PayloadData_constraint; -ber_type_decoder_f PayloadData_decode_ber; -der_type_encoder_f PayloadData_encode_der; -xer_type_decoder_f PayloadData_decode_xer; -xer_type_encoder_f PayloadData_encode_xer; -jer_type_encoder_f PayloadData_encode_jer; -oer_type_decoder_f PayloadData_decode_oer; -oer_type_encoder_f PayloadData_encode_oer; -per_type_decoder_f PayloadData_decode_uper; -per_type_encoder_f PayloadData_encode_uper; -per_type_decoder_f PayloadData_decode_aper; -per_type_encoder_f PayloadData_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PayloadData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h deleted file mode 100644 index 29c1f0104..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PedestrianBicycleDetect.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PedestrianBicycleDetect_H_ -#define _PedestrianBicycleDetect_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PedestrianBicycleDetect */ -typedef BOOLEAN_t PedestrianBicycleDetect_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; -asn_struct_free_f PedestrianBicycleDetect_free; -asn_struct_print_f PedestrianBicycleDetect_print; -asn_constr_check_f PedestrianBicycleDetect_constraint; -ber_type_decoder_f PedestrianBicycleDetect_decode_ber; -der_type_encoder_f PedestrianBicycleDetect_encode_der; -xer_type_decoder_f PedestrianBicycleDetect_decode_xer; -xer_type_encoder_f PedestrianBicycleDetect_encode_xer; -jer_type_encoder_f PedestrianBicycleDetect_encode_jer; -oer_type_decoder_f PedestrianBicycleDetect_decode_oer; -oer_type_encoder_f PedestrianBicycleDetect_encode_oer; -per_type_decoder_f PedestrianBicycleDetect_decode_uper; -per_type_encoder_f PedestrianBicycleDetect_encode_uper; -per_type_decoder_f PedestrianBicycleDetect_decode_aper; -per_type_encoder_f PedestrianBicycleDetect_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PedestrianBicycleDetect_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h deleted file mode 100644 index 5946fba2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalAssistive.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalAssistive_H_ -#define _PersonalAssistive_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalAssistive { - PersonalAssistive_unavailable = 0, - PersonalAssistive_otherType = 1, - PersonalAssistive_vision = 2, - PersonalAssistive_hearing = 3, - PersonalAssistive_movement = 4, - PersonalAssistive_cognition = 5 -} e_PersonalAssistive; - -/* PersonalAssistive */ -typedef BIT_STRING_t PersonalAssistive_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; -asn_struct_free_f PersonalAssistive_free; -asn_struct_print_f PersonalAssistive_print; -asn_constr_check_f PersonalAssistive_constraint; -ber_type_decoder_f PersonalAssistive_decode_ber; -der_type_encoder_f PersonalAssistive_encode_der; -xer_type_decoder_f PersonalAssistive_decode_xer; -xer_type_encoder_f PersonalAssistive_encode_xer; -jer_type_encoder_f PersonalAssistive_encode_jer; -oer_type_decoder_f PersonalAssistive_decode_oer; -oer_type_encoder_f PersonalAssistive_encode_oer; -per_type_decoder_f PersonalAssistive_decode_uper; -per_type_encoder_f PersonalAssistive_encode_uper; -per_type_decoder_f PersonalAssistive_decode_aper; -per_type_encoder_f PersonalAssistive_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalAssistive_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h deleted file mode 100644 index f0ea600bc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalClusterRadius.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalClusterRadius_H_ -#define _PersonalClusterRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalClusterRadius */ -typedef long PersonalClusterRadius_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; -asn_struct_free_f PersonalClusterRadius_free; -asn_struct_print_f PersonalClusterRadius_print; -asn_constr_check_f PersonalClusterRadius_constraint; -ber_type_decoder_f PersonalClusterRadius_decode_ber; -der_type_encoder_f PersonalClusterRadius_encode_der; -xer_type_decoder_f PersonalClusterRadius_decode_xer; -xer_type_encoder_f PersonalClusterRadius_encode_xer; -jer_type_encoder_f PersonalClusterRadius_encode_jer; -oer_type_decoder_f PersonalClusterRadius_decode_oer; -oer_type_encoder_f PersonalClusterRadius_encode_oer; -per_type_decoder_f PersonalClusterRadius_decode_uper; -per_type_encoder_f PersonalClusterRadius_encode_uper; -per_type_decoder_f PersonalClusterRadius_decode_aper; -per_type_encoder_f PersonalClusterRadius_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalClusterRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h deleted file mode 100644 index 50196af7b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingInProgress.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalCrossingInProgress_H_ -#define _PersonalCrossingInProgress_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingInProgress */ -typedef BOOLEAN_t PersonalCrossingInProgress_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; -asn_struct_free_f PersonalCrossingInProgress_free; -asn_struct_print_f PersonalCrossingInProgress_print; -asn_constr_check_f PersonalCrossingInProgress_constraint; -ber_type_decoder_f PersonalCrossingInProgress_decode_ber; -der_type_encoder_f PersonalCrossingInProgress_encode_der; -xer_type_decoder_f PersonalCrossingInProgress_decode_xer; -xer_type_encoder_f PersonalCrossingInProgress_encode_xer; -jer_type_encoder_f PersonalCrossingInProgress_encode_jer; -oer_type_decoder_f PersonalCrossingInProgress_decode_oer; -oer_type_encoder_f PersonalCrossingInProgress_encode_oer; -per_type_decoder_f PersonalCrossingInProgress_decode_uper; -per_type_encoder_f PersonalCrossingInProgress_encode_uper; -per_type_decoder_f PersonalCrossingInProgress_decode_aper; -per_type_encoder_f PersonalCrossingInProgress_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingInProgress_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h deleted file mode 100644 index 15896cb2f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalCrossingRequest.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalCrossingRequest_H_ -#define _PersonalCrossingRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingRequest */ -typedef BOOLEAN_t PersonalCrossingRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; -asn_struct_free_f PersonalCrossingRequest_free; -asn_struct_print_f PersonalCrossingRequest_print; -asn_constr_check_f PersonalCrossingRequest_constraint; -ber_type_decoder_f PersonalCrossingRequest_decode_ber; -der_type_encoder_f PersonalCrossingRequest_encode_der; -xer_type_decoder_f PersonalCrossingRequest_decode_xer; -xer_type_encoder_f PersonalCrossingRequest_encode_xer; -jer_type_encoder_f PersonalCrossingRequest_encode_jer; -oer_type_decoder_f PersonalCrossingRequest_decode_oer; -oer_type_encoder_f PersonalCrossingRequest_encode_oer; -per_type_decoder_f PersonalCrossingRequest_decode_uper; -per_type_encoder_f PersonalCrossingRequest_encode_uper; -per_type_decoder_f PersonalCrossingRequest_decode_aper; -per_type_encoder_f PersonalCrossingRequest_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h deleted file mode 100644 index 008f9df06..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUsageState.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalDeviceUsageState_H_ -#define _PersonalDeviceUsageState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUsageState { - PersonalDeviceUsageState_unavailable = 0, - PersonalDeviceUsageState_other = 1, - PersonalDeviceUsageState_idle = 2, - PersonalDeviceUsageState_listeningToAudio = 3, - PersonalDeviceUsageState_typing = 4, - PersonalDeviceUsageState_calling = 5, - PersonalDeviceUsageState_playingGames = 6, - PersonalDeviceUsageState_reading = 7, - PersonalDeviceUsageState_viewing = 8 -} e_PersonalDeviceUsageState; - -/* PersonalDeviceUsageState */ -typedef BIT_STRING_t PersonalDeviceUsageState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; -asn_struct_free_f PersonalDeviceUsageState_free; -asn_struct_print_f PersonalDeviceUsageState_print; -asn_constr_check_f PersonalDeviceUsageState_constraint; -ber_type_decoder_f PersonalDeviceUsageState_decode_ber; -der_type_encoder_f PersonalDeviceUsageState_encode_der; -xer_type_decoder_f PersonalDeviceUsageState_decode_xer; -xer_type_encoder_f PersonalDeviceUsageState_encode_xer; -jer_type_encoder_f PersonalDeviceUsageState_encode_jer; -oer_type_decoder_f PersonalDeviceUsageState_decode_oer; -oer_type_encoder_f PersonalDeviceUsageState_encode_oer; -per_type_decoder_f PersonalDeviceUsageState_decode_uper; -per_type_encoder_f PersonalDeviceUsageState_encode_uper; -per_type_decoder_f PersonalDeviceUsageState_decode_aper; -per_type_encoder_f PersonalDeviceUsageState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUsageState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h deleted file mode 100644 index fea4a22e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalDeviceUserType.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalDeviceUserType_H_ -#define _PersonalDeviceUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUserType { - PersonalDeviceUserType_unavailable = 0, - PersonalDeviceUserType_aPEDESTRIAN = 1, - PersonalDeviceUserType_aPEDALCYCLIST = 2, - PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, - PersonalDeviceUserType_anANIMAL = 4 - /* - * Enumeration is extensible - */ -} e_PersonalDeviceUserType; - -/* PersonalDeviceUserType */ -typedef long PersonalDeviceUserType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; -extern const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1; -asn_struct_free_f PersonalDeviceUserType_free; -asn_struct_print_f PersonalDeviceUserType_print; -asn_constr_check_f PersonalDeviceUserType_constraint; -ber_type_decoder_f PersonalDeviceUserType_decode_ber; -der_type_encoder_f PersonalDeviceUserType_encode_der; -xer_type_decoder_f PersonalDeviceUserType_decode_xer; -xer_type_encoder_f PersonalDeviceUserType_encode_xer; -jer_type_encoder_f PersonalDeviceUserType_encode_jer; -oer_type_decoder_f PersonalDeviceUserType_decode_oer; -oer_type_encoder_f PersonalDeviceUserType_encode_oer; -per_type_decoder_f PersonalDeviceUserType_decode_uper; -per_type_encoder_f PersonalDeviceUserType_encode_uper; -per_type_decoder_f PersonalDeviceUserType_decode_aper; -per_type_encoder_f PersonalDeviceUserType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h deleted file mode 100644 index f73291d57..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PersonalSafetyMessage.h +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PersonalSafetyMessage_H_ -#define _PersonalSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PersonalDeviceUserType.h" -#include "DSecond.h" -#include "Common_MsgCount.h" -#include "TemporaryID.h" -#include "Position3D.h" -#include "PositionalAccuracy.h" -#include "Velocity.h" -#include "Heading.h" -#include "PersonalDeviceUsageState.h" -#include "PersonalCrossingRequest.h" -#include "PersonalCrossingInProgress.h" -#include "NumberOfParticipantsInCluster.h" -#include "PersonalClusterRadius.h" -#include "PublicSafetyEventResponderWorkerType.h" -#include "PublicSafetyAndRoadWorkerActivity.h" -#include "PublicSafetyDirectingTrafficSubType.h" -#include "PersonalAssistive.h" -#include "UserSizeAndBehaviour.h" -#include "Attachment.h" -#include "AttachmentRadius.h" -#include "AnimalType.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelerationSet4Way; -struct PathHistory; -struct PathPrediction; -struct PropelledInformation; -struct Reg_PersonalSafetyMessage; - -/* PersonalSafetyMessage */ -typedef struct PersonalSafetyMessage { - PersonalDeviceUserType_t basicType; - DSecond_t secMark; - Common_MsgCount_t msgCnt; - TemporaryID_t id; - Position3D_t position; - PositionalAccuracy_t accuracy; - Velocity_t speed; - Heading_t heading; - struct AccelerationSet4Way *accelSet; /* OPTIONAL */ - struct PathHistory *pathHistory; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - struct PropelledInformation *propulsion; /* OPTIONAL */ - PersonalDeviceUsageState_t *useState; /* OPTIONAL */ - PersonalCrossingRequest_t *crossRequest; /* OPTIONAL */ - PersonalCrossingInProgress_t *crossState; /* OPTIONAL */ - NumberOfParticipantsInCluster_t *clusterSize; /* OPTIONAL */ - PersonalClusterRadius_t *clusterRadius; /* OPTIONAL */ - PublicSafetyEventResponderWorkerType_t *eventResponderType; /* OPTIONAL */ - PublicSafetyAndRoadWorkerActivity_t *activityType; /* OPTIONAL */ - PublicSafetyDirectingTrafficSubType_t *activitySubType; /* OPTIONAL */ - PersonalAssistive_t *assistType; /* OPTIONAL */ - UserSizeAndBehaviour_t *sizing; /* OPTIONAL */ - Attachment_t *attachment; /* OPTIONAL */ - AttachmentRadius_t *attachmentRadius; /* OPTIONAL */ - AnimalType_t *animalType; /* OPTIONAL */ - struct PersonalSafetyMessage__regional { - A_SEQUENCE_OF(struct Reg_PersonalSafetyMessage) 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; -} PersonalSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[26]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h deleted file mode 100644 index 28bc15f9e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotPointDescription.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PivotPointDescription_H_ -#define _PivotPointDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B11.h" -#include "Common_Angle.h" -#include "PivotingAllowed.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PivotPointDescription */ -typedef struct PivotPointDescription { - Offset_B11_t pivotOffset; - Common_Angle_t pivotAngle; - PivotingAllowed_t pivots; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PivotPointDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PivotPointDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_PivotPointDescription_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PivotPointDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h deleted file mode 100644 index 59147de2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PivotingAllowed.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PivotingAllowed_H_ -#define _PivotingAllowed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PivotingAllowed */ -typedef BOOLEAN_t PivotingAllowed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PivotingAllowed; -asn_struct_free_f PivotingAllowed_free; -asn_struct_print_f PivotingAllowed_print; -asn_constr_check_f PivotingAllowed_constraint; -ber_type_decoder_f PivotingAllowed_decode_ber; -der_type_encoder_f PivotingAllowed_encode_der; -xer_type_decoder_f PivotingAllowed_decode_xer; -xer_type_encoder_f PivotingAllowed_encode_xer; -jer_type_encoder_f PivotingAllowed_encode_jer; -oer_type_decoder_f PivotingAllowed_decode_oer; -oer_type_encoder_f PivotingAllowed_encode_oer; -per_type_decoder_f PivotingAllowed_decode_uper; -per_type_encoder_f PivotingAllowed_encode_uper; -per_type_decoder_f PivotingAllowed_decode_aper; -per_type_encoder_f PivotingAllowed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PivotingAllowed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h deleted file mode 100644 index e45b49c35..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpB.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Position3D_addGrpB_H_ -#define _Position3D_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LatitudeDMS2.h" -#include "LongitudeDMS2.h" -#include "AddGrpB_Elevation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D-addGrpB */ -typedef struct Position3D_addGrpB { - LatitudeDMS2_t latitude; - LongitudeDMS2_t longitude; - AddGrpB_Elevation_t elevation; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB; -extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1; -extern asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h deleted file mode 100644 index face236f8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D-addGrpC.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Position3D_addGrpC_H_ -#define _Position3D_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Altitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D-addGrpC */ -typedef struct Position3D_addGrpC { - Altitude_t altitude; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC; -extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1; -extern asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h deleted file mode 100644 index 82f60bcc6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Position3D.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Position3D_H_ -#define _Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Latitude.h" -#include "Longitude.h" -#include "Common_Elevation.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_Position3D; - -/* Position3D */ -typedef struct Position3D { - Latitude_t lat; - Longitude_t Long; - Common_Elevation_t *elevation; /* OPTIONAL */ - struct Position3D__regional { - A_SEQUENCE_OF(struct Reg_Position3D) 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; -} Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D; -extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1; -extern asn_TYPE_member_t asn_MBR_Position3D_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h deleted file mode 100644 index 75239a186..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidence.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PositionConfidence_H_ -#define _PositionConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PositionConfidence { - PositionConfidence_unavailable = 0, - PositionConfidence_a500m = 1, - PositionConfidence_a200m = 2, - PositionConfidence_a100m = 3, - PositionConfidence_a50m = 4, - PositionConfidence_a20m = 5, - PositionConfidence_a10m = 6, - PositionConfidence_a5m = 7, - PositionConfidence_a2m = 8, - PositionConfidence_a1m = 9, - PositionConfidence_a50cm = 10, - PositionConfidence_a20cm = 11, - PositionConfidence_a10cm = 12, - PositionConfidence_a5cm = 13, - PositionConfidence_a2cm = 14, - PositionConfidence_a1cm = 15 -} e_PositionConfidence; - -/* PositionConfidence */ -typedef long PositionConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1; -asn_struct_free_f PositionConfidence_free; -asn_struct_print_f PositionConfidence_print; -asn_constr_check_f PositionConfidence_constraint; -ber_type_decoder_f PositionConfidence_decode_ber; -der_type_encoder_f PositionConfidence_encode_der; -xer_type_decoder_f PositionConfidence_decode_xer; -xer_type_encoder_f PositionConfidence_encode_xer; -jer_type_encoder_f PositionConfidence_encode_jer; -oer_type_decoder_f PositionConfidence_decode_oer; -oer_type_encoder_f PositionConfidence_encode_oer; -per_type_decoder_f PositionConfidence_decode_uper; -per_type_encoder_f PositionConfidence_encode_uper; -per_type_decoder_f PositionConfidence_decode_aper; -per_type_encoder_f PositionConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h deleted file mode 100644 index 22fbb9ef1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionConfidenceSet.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PositionConfidenceSet_H_ -#define _PositionConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PositionConfidence.h" -#include "ElevationConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionConfidenceSet */ -typedef struct PositionConfidenceSet { - PositionConfidence_t pos; - ElevationConfidence_t elevation; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PositionConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; -extern asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1; -extern asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h deleted file mode 100644 index 82931469c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PositionalAccuracy.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PositionalAccuracy_H_ -#define _PositionalAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SemiMajorAxisAccuracy.h" -#include "SemiMinorAxisAccuracy.h" -#include "SemiMajorAxisOrientation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionalAccuracy */ -typedef struct PositionalAccuracy { - SemiMajorAxisAccuracy_t semiMajor; - SemiMinorAxisAccuracy_t semiMinor; - SemiMajorAxisOrientation_t orientation; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PositionalAccuracy_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; -extern asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1; -extern asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionalAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h deleted file mode 100644 index 00724d458..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PreemptPriorityList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PreemptPriorityList_H_ -#define _PreemptPriorityList_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 SignalControlZone; - -/* PreemptPriorityList */ -typedef struct PreemptPriorityList { - A_SEQUENCE_OF(struct SignalControlZone) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PreemptPriorityList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; -extern asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1; -extern asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[1]; -extern asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PreemptPriorityList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h deleted file mode 100644 index 3a564a3a7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponse.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PrioritizationResponse_H_ -#define _PrioritizationResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "PrioritizationResponseStatus.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PrioritizationResponse */ -typedef struct PrioritizationResponse { - StationID_t stationID; - PrioritizationResponseStatus_t priorState; - SignalGroupID_t signalGroup; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; -extern asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1; -extern asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h deleted file mode 100644 index 61195562d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PrioritizationResponseList_H_ -#define _PrioritizationResponseList_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 PrioritizationResponse; - -/* PrioritizationResponseList */ -typedef struct PrioritizationResponseList { - A_SEQUENCE_OF(struct PrioritizationResponse) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponseList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; -extern asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1; -extern asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[1]; -extern asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponseList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h deleted file mode 100644 index 0fc8ca254..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrioritizationResponseStatus.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PrioritizationResponseStatus_H_ -#define _PrioritizationResponseStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PrioritizationResponseStatus { - PrioritizationResponseStatus_unknown = 0, - PrioritizationResponseStatus_requested = 1, - PrioritizationResponseStatus_processing = 2, - PrioritizationResponseStatus_watchOtherTraffic = 3, - PrioritizationResponseStatus_granted = 4, - PrioritizationResponseStatus_rejected = 5, - PrioritizationResponseStatus_maxPresence = 6, - PrioritizationResponseStatus_reserviceLocked = 7 - /* - * Enumeration is extensible - */ -} e_PrioritizationResponseStatus; - -/* PrioritizationResponseStatus */ -typedef long PrioritizationResponseStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; -extern const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1; -asn_struct_free_f PrioritizationResponseStatus_free; -asn_struct_print_f PrioritizationResponseStatus_print; -asn_constr_check_f PrioritizationResponseStatus_constraint; -ber_type_decoder_f PrioritizationResponseStatus_decode_ber; -der_type_encoder_f PrioritizationResponseStatus_encode_der; -xer_type_decoder_f PrioritizationResponseStatus_decode_xer; -xer_type_encoder_f PrioritizationResponseStatus_encode_xer; -jer_type_encoder_f PrioritizationResponseStatus_encode_jer; -oer_type_decoder_f PrioritizationResponseStatus_decode_oer; -oer_type_encoder_f PrioritizationResponseStatus_encode_oer; -per_type_decoder_f PrioritizationResponseStatus_decode_uper; -per_type_encoder_f PrioritizationResponseStatus_encode_uper; -per_type_decoder_f PrioritizationResponseStatus_decode_aper; -per_type_encoder_f PrioritizationResponseStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponseStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h deleted file mode 100644 index 983b43f42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Priority.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Priority_H_ -#define _Priority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Priority */ -typedef OCTET_STRING_t Priority_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Priority_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Priority; -asn_struct_free_f Priority_free; -asn_struct_print_f Priority_print; -asn_constr_check_f Priority_constraint; -ber_type_decoder_f Priority_decode_ber; -der_type_encoder_f Priority_encode_der; -xer_type_decoder_f Priority_decode_xer; -xer_type_encoder_f Priority_encode_xer; -jer_type_encoder_f Priority_encode_jer; -oer_type_decoder_f Priority_decode_oer; -oer_type_encoder_f Priority_encode_oer; -per_type_decoder_f Priority_decode_uper; -per_type_encoder_f Priority_encode_uper; -per_type_decoder_f Priority_decode_aper; -per_type_encoder_f Priority_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Priority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h deleted file mode 100644 index bc8c5f06f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PriorityRequestType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PriorityRequestType_H_ -#define _PriorityRequestType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PriorityRequestType { - PriorityRequestType_priorityRequestTypeReserved = 0, - PriorityRequestType_priorityRequest = 1, - PriorityRequestType_priorityRequestUpdate = 2, - PriorityRequestType_priorityCancellation = 3 - /* - * Enumeration is extensible - */ -} e_PriorityRequestType; - -/* PriorityRequestType */ -typedef long PriorityRequestType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PriorityRequestType; -extern const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1; -asn_struct_free_f PriorityRequestType_free; -asn_struct_print_f PriorityRequestType_print; -asn_constr_check_f PriorityRequestType_constraint; -ber_type_decoder_f PriorityRequestType_decode_ber; -der_type_encoder_f PriorityRequestType_encode_der; -xer_type_decoder_f PriorityRequestType_decode_xer; -xer_type_encoder_f PriorityRequestType_encode_xer; -jer_type_encoder_f PriorityRequestType_encode_jer; -oer_type_decoder_f PriorityRequestType_decode_oer; -oer_type_encoder_f PriorityRequestType_encode_oer; -per_type_decoder_f PriorityRequestType_decode_uper; -per_type_encoder_f PriorityRequestType_encode_uper; -per_type_decoder_f PriorityRequestType_decode_aper; -per_type_encoder_f PriorityRequestType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PriorityRequestType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h deleted file mode 100644 index 7c82834a4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEventFlags.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PrivilegedEventFlags_H_ -#define _PrivilegedEventFlags_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PrivilegedEventFlags { - PrivilegedEventFlags_peUnavailable = 0, - PrivilegedEventFlags_peEmergencyResponse = 1, - PrivilegedEventFlags_peEmergencyLightsActive = 2, - PrivilegedEventFlags_peEmergencySoundActive = 3, - PrivilegedEventFlags_peNonEmergencyLightsActive = 4, - PrivilegedEventFlags_peNonEmergencySoundActive = 5 -} e_PrivilegedEventFlags; - -/* PrivilegedEventFlags */ -typedef BIT_STRING_t PrivilegedEventFlags_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags; -asn_struct_free_f PrivilegedEventFlags_free; -asn_struct_print_f PrivilegedEventFlags_print; -asn_constr_check_f PrivilegedEventFlags_constraint; -ber_type_decoder_f PrivilegedEventFlags_decode_ber; -der_type_encoder_f PrivilegedEventFlags_encode_der; -xer_type_decoder_f PrivilegedEventFlags_decode_xer; -xer_type_encoder_f PrivilegedEventFlags_encode_xer; -jer_type_encoder_f PrivilegedEventFlags_encode_jer; -oer_type_decoder_f PrivilegedEventFlags_decode_oer; -oer_type_encoder_f PrivilegedEventFlags_encode_oer; -per_type_decoder_f PrivilegedEventFlags_decode_uper; -per_type_encoder_f PrivilegedEventFlags_encode_uper; -per_type_decoder_f PrivilegedEventFlags_decode_aper; -per_type_encoder_f PrivilegedEventFlags_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrivilegedEventFlags_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h deleted file mode 100644 index fd863a18c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PrivilegedEvents.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PrivilegedEvents_H_ -#define _PrivilegedEvents_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "PrivilegedEventFlags.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PrivilegedEvents */ -typedef struct PrivilegedEvents { - SSPindex_t notUsed; - PrivilegedEventFlags_t event; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrivilegedEvents_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents; -extern asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1; -extern asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrivilegedEvents_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h deleted file mode 100644 index d89525be5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeDataManagement.h +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ProbeDataManagement_H_ -#define _ProbeDataManagement_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "Sample.h" -#include "HeadingSlice.h" -#include "SecondOfTime.h" -#include "TermTime.h" -#include "TermDistance.h" -#include "constr_CHOICE.h" -#include "SnapshotTime.h" -#include "SnapshotDistance.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ProbeDataManagement__term_PR { - ProbeDataManagement__term_PR_NOTHING, /* No components present */ - ProbeDataManagement__term_PR_termtime, - ProbeDataManagement__term_PR_termDistance -} ProbeDataManagement__term_PR; -typedef enum ProbeDataManagement__snapshot_PR { - ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ - ProbeDataManagement__snapshot_PR_snapshotTime, - ProbeDataManagement__snapshot_PR_snapshotDistance -} ProbeDataManagement__snapshot_PR; - -/* Forward declarations */ -struct VehicleStatusRequestList; -struct Reg_ProbeDataManagement; - -/* ProbeDataManagement */ -typedef struct ProbeDataManagement { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - Sample_t sample; - HeadingSlice_t directions; - struct ProbeDataManagement__term { - ProbeDataManagement__term_PR present; - union ProbeDataManagement__term_u { - TermTime_t termtime; - TermDistance_t termDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } term; - struct ProbeDataManagement__snapshot { - ProbeDataManagement__snapshot_PR present; - union ProbeDataManagement__snapshot_u { - SnapshotTime_t snapshotTime; - SnapshotDistance_t snapshotDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshot; - SecondOfTime_t txInterval; - struct VehicleStatusRequestList *dataElements; /* OPTIONAL */ - struct ProbeDataManagement__regional { - A_SEQUENCE_OF(struct Reg_ProbeDataManagement) 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; -} ProbeDataManagement_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; -extern asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1; -extern asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[8]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProbeDataManagement_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h deleted file mode 100644 index bc7464dea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeSegmentNumber.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ProbeSegmentNumber_H_ -#define _ProbeSegmentNumber_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ProbeSegmentNumber */ -typedef long ProbeSegmentNumber_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; -asn_struct_free_f ProbeSegmentNumber_free; -asn_struct_print_f ProbeSegmentNumber_print; -asn_constr_check_f ProbeSegmentNumber_constraint; -ber_type_decoder_f ProbeSegmentNumber_decode_ber; -der_type_encoder_f ProbeSegmentNumber_encode_der; -xer_type_decoder_f ProbeSegmentNumber_decode_xer; -xer_type_encoder_f ProbeSegmentNumber_encode_xer; -jer_type_encoder_f ProbeSegmentNumber_encode_jer; -oer_type_decoder_f ProbeSegmentNumber_decode_oer; -oer_type_encoder_f ProbeSegmentNumber_encode_oer; -per_type_decoder_f ProbeSegmentNumber_decode_uper; -per_type_encoder_f ProbeSegmentNumber_encode_uper; -per_type_decoder_f ProbeSegmentNumber_decode_aper; -per_type_encoder_f ProbeSegmentNumber_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProbeSegmentNumber_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h deleted file mode 100644 index 6323acbb9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ProbeVehicleData.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ProbeVehicleData_H_ -#define _ProbeVehicleData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "ProbeSegmentNumber.h" -#include "FullPositionVector.h" -#include "VehicleClassification.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleIdent; -struct Snapshot; -struct Reg_ProbeVehicleData; - -/* ProbeVehicleData */ -typedef struct ProbeVehicleData { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - ProbeSegmentNumber_t *segNum; /* OPTIONAL */ - struct VehicleIdent *probeID; /* OPTIONAL */ - FullPositionVector_t startVector; - VehicleClassification_t vehicleType; - struct ProbeVehicleData__snapshots { - A_SEQUENCE_OF(struct Snapshot) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshots; - struct ProbeVehicleData__regional { - A_SEQUENCE_OF(struct Reg_ProbeVehicleData) 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; -} ProbeVehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1; -extern asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProbeVehicleData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h deleted file mode 100644 index 772efb148..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PropelledInformation.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PropelledInformation_H_ -#define _PropelledInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HumanPropelledType.h" -#include "AnimalPropelledType.h" -#include "MotorizedPropelledType.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PropelledInformation_PR { - PropelledInformation_PR_NOTHING, /* No components present */ - PropelledInformation_PR_human, - PropelledInformation_PR_animal, - PropelledInformation_PR_motor - /* Extensions may appear below */ - -} PropelledInformation_PR; - -/* PropelledInformation */ -typedef struct PropelledInformation { - PropelledInformation_PR present; - union PropelledInformation_u { - HumanPropelledType_t human; - AnimalPropelledType_t animal; - MotorizedPropelledType_t motor; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PropelledInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; -extern asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1; -extern asn_TYPE_member_t asn_MBR_PropelledInformation_1[3]; -extern asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PropelledInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h deleted file mode 100644 index fe22fa36d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyAndRoadWorkerActivity.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PublicSafetyAndRoadWorkerActivity_H_ -#define _PublicSafetyAndRoadWorkerActivity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyAndRoadWorkerActivity { - PublicSafetyAndRoadWorkerActivity_unavailable = 0, - PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, - PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, - PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, - PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, - PublicSafetyAndRoadWorkerActivity_otherActivities = 5 -} e_PublicSafetyAndRoadWorkerActivity; - -/* PublicSafetyAndRoadWorkerActivity */ -typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; -asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; -asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; -asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; -ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; -der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; -xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; -xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; -jer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_jer; -oer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_oer; -oer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_oer; -per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; -per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; -per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_aper; -per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h deleted file mode 100644 index e28e7e95b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyDirectingTrafficSubType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PublicSafetyDirectingTrafficSubType_H_ -#define _PublicSafetyDirectingTrafficSubType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyDirectingTrafficSubType { - PublicSafetyDirectingTrafficSubType_unavailable = 0, - PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, - PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, - PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, - PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, - PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, - PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 -} e_PublicSafetyDirectingTrafficSubType; - -/* PublicSafetyDirectingTrafficSubType */ -typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; -asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; -asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; -asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; -ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; -der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; -xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; -xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; -jer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_jer; -oer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_oer; -oer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_oer; -per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; -per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; -per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_aper; -per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h deleted file mode 100644 index cea1ebe44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/PublicSafetyEventResponderWorkerType.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _PublicSafetyEventResponderWorkerType_H_ -#define _PublicSafetyEventResponderWorkerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyEventResponderWorkerType { - PublicSafetyEventResponderWorkerType_unavailable = 0, - PublicSafetyEventResponderWorkerType_towOperater = 1, - PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, - PublicSafetyEventResponderWorkerType_aDOTWorker = 3, - PublicSafetyEventResponderWorkerType_lawEnforcement = 4, - PublicSafetyEventResponderWorkerType_hazmatResponder = 5, - PublicSafetyEventResponderWorkerType_animalControlWorker = 6, - PublicSafetyEventResponderWorkerType_otherPersonnel = 7 - /* - * Enumeration is extensible - */ -} e_PublicSafetyEventResponderWorkerType; - -/* PublicSafetyEventResponderWorkerType */ -typedef long PublicSafetyEventResponderWorkerType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; -extern const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1; -asn_struct_free_f PublicSafetyEventResponderWorkerType_free; -asn_struct_print_f PublicSafetyEventResponderWorkerType_print; -asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; -ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; -der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; -xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; -xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; -jer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_jer; -oer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_oer; -oer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_oer; -per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; -per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; -per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_aper; -per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyEventResponderWorkerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h deleted file mode 100644 index 19961578c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCM-Revision.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RTCMcorrections" - * found in "J2735-RTCMcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCM_Revision_H_ -#define _RTCM_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RTCM_Revision { - RTCM_Revision_unknown = 0, - RTCM_Revision_rtcmRev2 = 1, - RTCM_Revision_rtcmRev3 = 2, - RTCM_Revision_reserved = 3 - /* - * Enumeration is extensible - */ -} e_RTCM_Revision; - -/* RTCM-Revision */ -typedef long RTCM_Revision_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; -extern const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1; -asn_struct_free_f RTCM_Revision_free; -asn_struct_print_f RTCM_Revision_print; -asn_constr_check_f RTCM_Revision_constraint; -ber_type_decoder_f RTCM_Revision_decode_ber; -der_type_encoder_f RTCM_Revision_encode_der; -xer_type_decoder_f RTCM_Revision_decode_xer; -xer_type_encoder_f RTCM_Revision_encode_xer; -jer_type_encoder_f RTCM_Revision_encode_jer; -oer_type_decoder_f RTCM_Revision_decode_oer; -oer_type_encoder_f RTCM_Revision_encode_oer; -per_type_decoder_f RTCM_Revision_decode_uper; -per_type_encoder_f RTCM_Revision_encode_uper; -per_type_decoder_f RTCM_Revision_decode_aper; -per_type_encoder_f RTCM_Revision_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCM_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h deleted file mode 100644 index 21516a2af..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMPackage.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCMPackage_H_ -#define _RTCMPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCMmessageList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RTCMheader; - -/* RTCMPackage */ -typedef struct RTCMPackage { - struct RTCMheader *rtcmHeader; /* OPTIONAL */ - RTCMmessageList_t msgs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMPackage_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h deleted file mode 100644 index 49d93aaac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMcorrections.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RTCMcorrections" - * found in "J2735-RTCMcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCMcorrections_H_ -#define _RTCMcorrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "RTCM-Revision.h" -#include "MinuteOfTheYear.h" -#include "RTCMmessageList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct RTCMheader; -struct Reg_RTCMcorrections; - -/* RTCMcorrections */ -typedef struct RTCMcorrections { - Common_MsgCount_t msgCnt; - RTCM_Revision_t rev; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - struct FullPositionVector *anchorPoint; /* OPTIONAL */ - struct RTCMheader *rtcmHeader; /* OPTIONAL */ - RTCMmessageList_t msgs; - struct RTCMcorrections__regional { - A_SEQUENCE_OF(struct Reg_RTCMcorrections) 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; -} RTCMcorrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMcorrections_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMcorrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h deleted file mode 100644 index 4dcd9bc4d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMheader.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCMheader_H_ -#define _RTCMheader_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GNSSstatus.h" -#include "AntennaOffsetSet.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMheader */ -typedef struct RTCMheader { - GNSSstatus_t status; - AntennaOffsetSet_t offsetSet; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMheader_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMheader; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMheader_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMheader_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h deleted file mode 100644 index ab015abd9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessage.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCMmessage_H_ -#define _RTCMmessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMmessage */ -typedef OCTET_STRING_t RTCMmessage_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RTCMmessage; -asn_struct_free_f RTCMmessage_free; -asn_struct_print_f RTCMmessage_print; -asn_constr_check_f RTCMmessage_constraint; -ber_type_decoder_f RTCMmessage_decode_ber; -der_type_encoder_f RTCMmessage_encode_der; -xer_type_decoder_f RTCMmessage_decode_xer; -xer_type_encoder_f RTCMmessage_encode_xer; -jer_type_encoder_f RTCMmessage_encode_jer; -oer_type_decoder_f RTCMmessage_decode_oer; -oer_type_encoder_f RTCMmessage_encode_oer; -per_type_decoder_f RTCMmessage_decode_uper; -per_type_encoder_f RTCMmessage_encode_uper; -per_type_decoder_f RTCMmessage_decode_aper; -per_type_encoder_f RTCMmessage_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMmessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h deleted file mode 100644 index adb065744..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RTCMmessageList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RTCMmessageList_H_ -#define _RTCMmessageList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCMmessage.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMmessageList */ -typedef struct RTCMmessageList { - A_SEQUENCE_OF(RTCMmessage_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMmessageList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMmessageList; -extern asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMmessageList_1[1]; -extern asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMmessageList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h deleted file mode 100644 index e8c9d9c78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Radius-B12.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Radius_B12_H_ -#define _Radius_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Radius-B12 */ -typedef long Radius_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Radius_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Radius_B12; -asn_struct_free_f Radius_B12_free; -asn_struct_print_f Radius_B12_print; -asn_constr_check_f Radius_B12_constraint; -ber_type_decoder_f Radius_B12_decode_ber; -der_type_encoder_f Radius_B12_encode_der; -xer_type_decoder_f Radius_B12_decode_xer; -xer_type_encoder_f Radius_B12_encode_xer; -jer_type_encoder_f Radius_B12_encode_jer; -oer_type_decoder_f Radius_B12_decode_oer; -oer_type_encoder_f Radius_B12_encode_oer; -per_type_decoder_f Radius_B12_decode_uper; -per_type_encoder_f Radius_B12_encode_uper; -per_type_decoder_f Radius_B12_decode_aper; -per_type_encoder_f Radius_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Radius_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h deleted file mode 100644 index a7f996ff3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RadiusOfCurvature.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RadiusOfCurvature_H_ -#define _RadiusOfCurvature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RadiusOfCurvature */ -typedef long RadiusOfCurvature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature; -asn_struct_free_f RadiusOfCurvature_free; -asn_struct_print_f RadiusOfCurvature_print; -asn_constr_check_f RadiusOfCurvature_constraint; -ber_type_decoder_f RadiusOfCurvature_decode_ber; -der_type_encoder_f RadiusOfCurvature_encode_der; -xer_type_decoder_f RadiusOfCurvature_decode_xer; -xer_type_encoder_f RadiusOfCurvature_encode_xer; -jer_type_encoder_f RadiusOfCurvature_encode_jer; -oer_type_decoder_f RadiusOfCurvature_decode_oer; -oer_type_encoder_f RadiusOfCurvature_encode_oer; -per_type_decoder_f RadiusOfCurvature_decode_uper; -per_type_encoder_f RadiusOfCurvature_encode_uper; -per_type_decoder_f RadiusOfCurvature_decode_aper; -per_type_encoder_f RadiusOfCurvature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RadiusOfCurvature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h deleted file mode 100644 index 6adcdfe68..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RainSensor.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RainSensor_H_ -#define _RainSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RainSensor { - RainSensor_none = 0, - RainSensor_lightMist = 1, - RainSensor_heavyMist = 2, - RainSensor_lightRainOrDrizzle = 3, - RainSensor_rain = 4, - RainSensor_moderateRain = 5, - RainSensor_heavyRain = 6, - RainSensor_heavyDownpour = 7 -} e_RainSensor; - -/* RainSensor */ -typedef long RainSensor_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RainSensor_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RainSensor; -extern const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1; -asn_struct_free_f RainSensor_free; -asn_struct_print_f RainSensor_print; -asn_constr_check_f RainSensor_constraint; -ber_type_decoder_f RainSensor_decode_ber; -der_type_encoder_f RainSensor_encode_der; -xer_type_decoder_f RainSensor_decode_xer; -xer_type_encoder_f RainSensor_encode_xer; -jer_type_encoder_f RainSensor_encode_jer; -oer_type_decoder_f RainSensor_decode_oer; -oer_type_encoder_f RainSensor_encode_oer; -per_type_decoder_f RainSensor_decode_uper; -per_type_encoder_f RainSensor_encode_uper; -per_type_decoder_f RainSensor_decode_aper; -per_type_encoder_f RainSensor_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RainSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h deleted file mode 100644 index 0fb282aab..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionId.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegionId_H_ -#define _RegionId_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionId */ -typedef long RegionId_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RegionId_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RegionId; -asn_struct_free_f RegionId_free; -asn_struct_print_f RegionId_print; -asn_constr_check_f RegionId_constraint; -ber_type_decoder_f RegionId_decode_ber; -der_type_encoder_f RegionId_encode_der; -xer_type_decoder_f RegionId_decode_xer; -xer_type_encoder_f RegionId_encode_xer; -jer_type_encoder_f RegionId_encode_jer; -oer_type_decoder_f RegionId_decode_oer; -oer_type_encoder_f RegionId_encode_oer; -per_type_decoder_f RegionId_decode_uper; -per_type_encoder_f RegionId_encode_uper; -per_type_decoder_f RegionId_decode_aper; -per_type_encoder_f RegionId_encode_aper; -#define RegionId_noRegion ((RegionId_t)0) -#define RegionId_addGrpA ((RegionId_t)1) -#define RegionId_addGrpB ((RegionId_t)2) -#define RegionId_addGrpC ((RegionId_t)3) - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionId_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h deleted file mode 100644 index 50d145cf7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegionList_H_ -#define _RegionList_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 RegionOffsets; - -/* RegionList */ -typedef struct RegionList { - A_SEQUENCE_OF(struct RegionOffsets) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionList; -extern asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionList_1[1]; -extern asn_per_constraints_t asn_PER_type_RegionList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h deleted file mode 100644 index 0c6835963..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionOffsets.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegionOffsets_H_ -#define _RegionOffsets_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionOffsets */ -typedef struct RegionOffsets { - OffsetLL_B16_t xOffset; - OffsetLL_B16_t yOffset; - OffsetLL_B16_t *zOffset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionOffsets_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; -extern asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionOffsets_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionOffsets_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h deleted file mode 100644 index 4245466f9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionPointSet.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegionPointSet_H_ -#define _RegionPointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Zoom.h" -#include "RegionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* RegionPointSet */ -typedef struct RegionPointSet { - struct Position3D *anchor; /* OPTIONAL */ - Zoom_t *scale; /* OPTIONAL */ - RegionList_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionPointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; -extern asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionPointSet_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionPointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h deleted file mode 100644 index a981d7f10..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegionalExtension.h +++ /dev/null @@ -1,1337 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegionalExtension_H_ -#define _RegionalExtension_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RegionId.h" -#include "ANY.h" -#include "asn_ioc.h" -#include "OPEN_TYPE.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "LaneDataAttribute-addGrpB.h" -#include "NodeOffsetPointXY-addGrpB.h" -#include "Position3D-addGrpB.h" -#include "Position3D-addGrpC.h" -#include "MapData-addGrpC.h" -#include "RestrictionUserType-addGrpC.h" -#include "ConnectionManeuverAssist-addGrpC.h" -#include "IntersectionState-addGrpC.h" -#include "MovementEvent-addGrpB.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Reg_BasicSafetyMessage__regExtValue_PR { - Reg_BasicSafetyMessage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_BasicSafetyMessage__regExtValue_PR; -typedef enum Reg_EventDescription__regExtValue_PR { - Reg_EventDescription__regExtValue_PR_NOTHING /* No components present */ - -} Reg_EventDescription__regExtValue_PR; -typedef enum Reg_SupplementalVehicleExtensions__regExtValue_PR { - Reg_SupplementalVehicleExtensions__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SupplementalVehicleExtensions__regExtValue_PR; -typedef enum Reg_ComputedLane__regExtValue_PR { - Reg_ComputedLane__regExtValue_PR_NOTHING /* No components present */ - -} Reg_ComputedLane__regExtValue_PR; -typedef enum Reg_LaneDataAttribute__regExtValue_PR { - Reg_LaneDataAttribute__regExtValue_PR_NOTHING, /* No components present */ - Reg_LaneDataAttribute__regExtValue_PR_LaneDataAttribute_addGrpB -} Reg_LaneDataAttribute__regExtValue_PR; -typedef enum Reg_NodeAttributeSetXY__regExtValue_PR { - Reg_NodeAttributeSetXY__regExtValue_PR_NOTHING /* No components present */ - -} Reg_NodeAttributeSetXY__regExtValue_PR; -typedef enum Reg_NodeOffsetPointXY__regExtValue_PR { - Reg_NodeOffsetPointXY__regExtValue_PR_NOTHING, /* No components present */ - Reg_NodeOffsetPointXY__regExtValue_PR_NodeOffsetPointXY_addGrpB -} Reg_NodeOffsetPointXY__regExtValue_PR; -typedef enum Reg_Position3D__regExtValue_PR { - Reg_Position3D__regExtValue_PR_NOTHING, /* No components present */ - Reg_Position3D__regExtValue_PR_Position3D_addGrpB, - Reg_Position3D__regExtValue_PR_Position3D_addGrpC -} Reg_Position3D__regExtValue_PR; -typedef enum Reg_RequestorType__regExtValue_PR { - Reg_RequestorType__regExtValue_PR_NOTHING /* No components present */ - -} Reg_RequestorType__regExtValue_PR; -typedef enum Reg_VehicleClassification__regExtValue_PR { - Reg_VehicleClassification__regExtValue_PR_NOTHING /* No components present */ - -} Reg_VehicleClassification__regExtValue_PR; -typedef enum Reg_VerticalOffset__regExtValue_PR { - Reg_VerticalOffset__regExtValue_PR_NOTHING /* No components present */ - -} Reg_VerticalOffset__regExtValue_PR; -typedef enum Reg_CommonSafetyRequest__regExtValue_PR { - Reg_CommonSafetyRequest__regExtValue_PR_NOTHING /* No components present */ - -} Reg_CommonSafetyRequest__regExtValue_PR; -typedef enum Reg_EmergencyVehicleAlert__regExtValue_PR { - Reg_EmergencyVehicleAlert__regExtValue_PR_NOTHING /* No components present */ - -} Reg_EmergencyVehicleAlert__regExtValue_PR; -typedef enum Reg_IntersectionCollision__regExtValue_PR { - Reg_IntersectionCollision__regExtValue_PR_NOTHING /* No components present */ - -} Reg_IntersectionCollision__regExtValue_PR; -typedef enum Reg_MapData__regExtValue_PR { - Reg_MapData__regExtValue_PR_NOTHING, /* No components present */ - Reg_MapData__regExtValue_PR_MapData_addGrpC -} Reg_MapData__regExtValue_PR; -typedef enum Reg_GenericLane__regExtValue_PR { - Reg_GenericLane__regExtValue_PR_NOTHING /* No components present */ - -} Reg_GenericLane__regExtValue_PR; -typedef enum Reg_IntersectionGeometry__regExtValue_PR { - Reg_IntersectionGeometry__regExtValue_PR_NOTHING /* No components present */ - -} Reg_IntersectionGeometry__regExtValue_PR; -typedef enum Reg_LaneAttributes__regExtValue_PR { - Reg_LaneAttributes__regExtValue_PR_NOTHING /* No components present */ - -} Reg_LaneAttributes__regExtValue_PR; -typedef enum Reg_SignalControlZone__regExtValue_PR { - Reg_SignalControlZone__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalControlZone__regExtValue_PR; -typedef enum Reg_RestrictionUserType__regExtValue_PR { - Reg_RestrictionUserType__regExtValue_PR_NOTHING, /* No components present */ - Reg_RestrictionUserType__regExtValue_PR_RestrictionUserType_addGrpC -} Reg_RestrictionUserType__regExtValue_PR; -typedef enum Reg_RoadSegment__regExtValue_PR { - Reg_RoadSegment__regExtValue_PR_NOTHING /* No components present */ - -} Reg_RoadSegment__regExtValue_PR; -typedef enum Reg_NMEAcorrections__regExtValue_PR { - Reg_NMEAcorrections__regExtValue_PR_NOTHING /* No components present */ - -} Reg_NMEAcorrections__regExtValue_PR; -typedef enum Reg_PersonalSafetyMessage__regExtValue_PR { - Reg_PersonalSafetyMessage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_PersonalSafetyMessage__regExtValue_PR; -typedef enum Reg_ProbeDataManagement__regExtValue_PR { - Reg_ProbeDataManagement__regExtValue_PR_NOTHING /* No components present */ - -} Reg_ProbeDataManagement__regExtValue_PR; -typedef enum Reg_ProbeVehicleData__regExtValue_PR { - Reg_ProbeVehicleData__regExtValue_PR_NOTHING /* No components present */ - -} Reg_ProbeVehicleData__regExtValue_PR; -typedef enum Reg_RoadSideAlert__regExtValue_PR { - Reg_RoadSideAlert__regExtValue_PR_NOTHING /* No components present */ - -} Reg_RoadSideAlert__regExtValue_PR; -typedef enum Reg_RTCMcorrections__regExtValue_PR { - Reg_RTCMcorrections__regExtValue_PR_NOTHING /* No components present */ - -} Reg_RTCMcorrections__regExtValue_PR; -typedef enum Reg_SignalRequestMessage__regExtValue_PR { - Reg_SignalRequestMessage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalRequestMessage__regExtValue_PR; -typedef enum Reg_RequestorDescription__regExtValue_PR { - Reg_RequestorDescription__regExtValue_PR_NOTHING /* No components present */ - -} Reg_RequestorDescription__regExtValue_PR; -typedef enum Reg_SignalRequestPackage__regExtValue_PR { - Reg_SignalRequestPackage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalRequestPackage__regExtValue_PR; -typedef enum Reg_SignalRequest__regExtValue_PR { - Reg_SignalRequest__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalRequest__regExtValue_PR; -typedef enum Reg_SignalStatusMessage__regExtValue_PR { - Reg_SignalStatusMessage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalStatusMessage__regExtValue_PR; -typedef enum Reg_SignalStatusPackage__regExtValue_PR { - Reg_SignalStatusPackage__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalStatusPackage__regExtValue_PR; -typedef enum Reg_SignalStatus__regExtValue_PR { - Reg_SignalStatus__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SignalStatus__regExtValue_PR; -typedef enum Reg_SPAT__regExtValue_PR { - Reg_SPAT__regExtValue_PR_NOTHING /* No components present */ - -} Reg_SPAT__regExtValue_PR; -typedef enum Reg_AdvisorySpeed__regExtValue_PR { - Reg_AdvisorySpeed__regExtValue_PR_NOTHING /* No components present */ - -} Reg_AdvisorySpeed__regExtValue_PR; -typedef enum Reg_ConnectionManeuverAssist__regExtValue_PR { - Reg_ConnectionManeuverAssist__regExtValue_PR_NOTHING, /* No components present */ - Reg_ConnectionManeuverAssist__regExtValue_PR_ConnectionManeuverAssist_addGrpC -} Reg_ConnectionManeuverAssist__regExtValue_PR; -typedef enum Reg_IntersectionState__regExtValue_PR { - Reg_IntersectionState__regExtValue_PR_NOTHING, /* No components present */ - Reg_IntersectionState__regExtValue_PR_IntersectionState_addGrpC -} Reg_IntersectionState__regExtValue_PR; -typedef enum Reg_MovementEvent__regExtValue_PR { - Reg_MovementEvent__regExtValue_PR_NOTHING, /* No components present */ - Reg_MovementEvent__regExtValue_PR_MovementEvent_addGrpB -} Reg_MovementEvent__regExtValue_PR; -typedef enum Reg_MovementState__regExtValue_PR { - Reg_MovementState__regExtValue_PR_NOTHING /* No components present */ - -} Reg_MovementState__regExtValue_PR; -typedef enum Reg_TestMessage00__regExtValue_PR { - Reg_TestMessage00__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage00__regExtValue_PR; -typedef enum Reg_TestMessage01__regExtValue_PR { - Reg_TestMessage01__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage01__regExtValue_PR; -typedef enum Reg_TestMessage02__regExtValue_PR { - Reg_TestMessage02__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage02__regExtValue_PR; -typedef enum Reg_TestMessage03__regExtValue_PR { - Reg_TestMessage03__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage03__regExtValue_PR; -typedef enum Reg_TestMessage04__regExtValue_PR { - Reg_TestMessage04__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage04__regExtValue_PR; -typedef enum Reg_TestMessage05__regExtValue_PR { - Reg_TestMessage05__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage05__regExtValue_PR; -typedef enum Reg_TestMessage06__regExtValue_PR { - Reg_TestMessage06__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage06__regExtValue_PR; -typedef enum Reg_TestMessage07__regExtValue_PR { - Reg_TestMessage07__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage07__regExtValue_PR; -typedef enum Reg_TestMessage08__regExtValue_PR { - Reg_TestMessage08__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage08__regExtValue_PR; -typedef enum Reg_TestMessage09__regExtValue_PR { - Reg_TestMessage09__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage09__regExtValue_PR; -typedef enum Reg_TestMessage10__regExtValue_PR { - Reg_TestMessage10__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage10__regExtValue_PR; -typedef enum Reg_TestMessage11__regExtValue_PR { - Reg_TestMessage11__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage11__regExtValue_PR; -typedef enum Reg_TestMessage12__regExtValue_PR { - Reg_TestMessage12__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage12__regExtValue_PR; -typedef enum Reg_TestMessage13__regExtValue_PR { - Reg_TestMessage13__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage13__regExtValue_PR; -typedef enum Reg_TestMessage14__regExtValue_PR { - Reg_TestMessage14__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage14__regExtValue_PR; -typedef enum Reg_TestMessage15__regExtValue_PR { - Reg_TestMessage15__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TestMessage15__regExtValue_PR; -typedef enum Reg_TravelerInformation__regExtValue_PR { - Reg_TravelerInformation__regExtValue_PR_NOTHING /* No components present */ - -} Reg_TravelerInformation__regExtValue_PR; -typedef enum Reg_GeographicalPath__regExtValue_PR { - Reg_GeographicalPath__regExtValue_PR_NOTHING /* No components present */ - -} Reg_GeographicalPath__regExtValue_PR; -typedef enum Reg_GeometricProjection__regExtValue_PR { - Reg_GeometricProjection__regExtValue_PR_NOTHING /* No components present */ - -} Reg_GeometricProjection__regExtValue_PR; -typedef enum Reg_NodeAttributeSetLL__regExtValue_PR { - Reg_NodeAttributeSetLL__regExtValue_PR_NOTHING /* No components present */ - -} Reg_NodeAttributeSetLL__regExtValue_PR; -typedef enum Reg_NodeOffsetPointLL__regExtValue_PR { - Reg_NodeOffsetPointLL__regExtValue_PR_NOTHING /* No components present */ - -} Reg_NodeOffsetPointLL__regExtValue_PR; - -/* RegionalExtension */ -typedef struct Reg_BasicSafetyMessage { - RegionId_t regionId; - struct Reg_BasicSafetyMessage__regExtValue { - Reg_BasicSafetyMessage__regExtValue_PR present; - union Reg_BasicSafetyMessage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_BasicSafetyMessage_t; -typedef struct Reg_EventDescription { - RegionId_t regionId; - struct Reg_EventDescription__regExtValue { - Reg_EventDescription__regExtValue_PR present; - union Reg_EventDescription__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_EventDescription_t; -typedef struct Reg_SupplementalVehicleExtensions { - RegionId_t regionId; - struct Reg_SupplementalVehicleExtensions__regExtValue { - Reg_SupplementalVehicleExtensions__regExtValue_PR present; - union Reg_SupplementalVehicleExtensions__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SupplementalVehicleExtensions_t; -typedef struct Reg_ComputedLane { - RegionId_t regionId; - struct Reg_ComputedLane__regExtValue { - Reg_ComputedLane__regExtValue_PR present; - union Reg_ComputedLane__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ComputedLane_t; -typedef struct Reg_LaneDataAttribute { - RegionId_t regionId; - struct Reg_LaneDataAttribute__regExtValue { - Reg_LaneDataAttribute__regExtValue_PR present; - union Reg_LaneDataAttribute__regExtValue_u { - LaneDataAttribute_addGrpB_t LaneDataAttribute_addGrpB; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_LaneDataAttribute_t; -typedef struct Reg_NodeAttributeSetXY { - RegionId_t regionId; - struct Reg_NodeAttributeSetXY__regExtValue { - Reg_NodeAttributeSetXY__regExtValue_PR present; - union Reg_NodeAttributeSetXY__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeAttributeSetXY_t; -typedef struct Reg_NodeOffsetPointXY { - RegionId_t regionId; - struct Reg_NodeOffsetPointXY__regExtValue { - Reg_NodeOffsetPointXY__regExtValue_PR present; - union Reg_NodeOffsetPointXY__regExtValue_u { - NodeOffsetPointXY_addGrpB_t NodeOffsetPointXY_addGrpB; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeOffsetPointXY_t; -typedef struct Reg_Position3D { - RegionId_t regionId; - struct Reg_Position3D__regExtValue { - Reg_Position3D__regExtValue_PR present; - union Reg_Position3D__regExtValue_u { - Position3D_addGrpB_t Position3D_addGrpB; - Position3D_addGrpC_t Position3D_addGrpC; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_Position3D_t; -typedef struct Reg_RequestorType { - RegionId_t regionId; - struct Reg_RequestorType__regExtValue { - Reg_RequestorType__regExtValue_PR present; - union Reg_RequestorType__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RequestorType_t; -typedef struct Reg_VehicleClassification { - RegionId_t regionId; - struct Reg_VehicleClassification__regExtValue { - Reg_VehicleClassification__regExtValue_PR present; - union Reg_VehicleClassification__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_VehicleClassification_t; -typedef struct Reg_VerticalOffset { - RegionId_t regionId; - struct Reg_VerticalOffset__regExtValue { - Reg_VerticalOffset__regExtValue_PR present; - union Reg_VerticalOffset__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_VerticalOffset_t; -typedef struct Reg_CommonSafetyRequest { - RegionId_t regionId; - struct Reg_CommonSafetyRequest__regExtValue { - Reg_CommonSafetyRequest__regExtValue_PR present; - union Reg_CommonSafetyRequest__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_CommonSafetyRequest_t; -typedef struct Reg_EmergencyVehicleAlert { - RegionId_t regionId; - struct Reg_EmergencyVehicleAlert__regExtValue { - Reg_EmergencyVehicleAlert__regExtValue_PR present; - union Reg_EmergencyVehicleAlert__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_EmergencyVehicleAlert_t; -typedef struct Reg_IntersectionCollision { - RegionId_t regionId; - struct Reg_IntersectionCollision__regExtValue { - Reg_IntersectionCollision__regExtValue_PR present; - union Reg_IntersectionCollision__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_IntersectionCollision_t; -typedef struct Reg_MapData { - RegionId_t regionId; - struct Reg_MapData__regExtValue { - Reg_MapData__regExtValue_PR present; - union Reg_MapData__regExtValue_u { - MapData_addGrpC_t MapData_addGrpC; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MapData_t; -typedef struct Reg_GenericLane { - RegionId_t regionId; - struct Reg_GenericLane__regExtValue { - Reg_GenericLane__regExtValue_PR present; - union Reg_GenericLane__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_GenericLane_t; -typedef struct Reg_IntersectionGeometry { - RegionId_t regionId; - struct Reg_IntersectionGeometry__regExtValue { - Reg_IntersectionGeometry__regExtValue_PR present; - union Reg_IntersectionGeometry__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_IntersectionGeometry_t; -typedef struct Reg_LaneAttributes { - RegionId_t regionId; - struct Reg_LaneAttributes__regExtValue { - Reg_LaneAttributes__regExtValue_PR present; - union Reg_LaneAttributes__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_LaneAttributes_t; -typedef struct Reg_SignalControlZone { - RegionId_t regionId; - struct Reg_SignalControlZone__regExtValue { - Reg_SignalControlZone__regExtValue_PR present; - union Reg_SignalControlZone__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalControlZone_t; -typedef struct Reg_RestrictionUserType { - RegionId_t regionId; - struct Reg_RestrictionUserType__regExtValue { - Reg_RestrictionUserType__regExtValue_PR present; - union Reg_RestrictionUserType__regExtValue_u { - RestrictionUserType_addGrpC_t RestrictionUserType_addGrpC; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RestrictionUserType_t; -typedef struct Reg_RoadSegment { - RegionId_t regionId; - struct Reg_RoadSegment__regExtValue { - Reg_RoadSegment__regExtValue_PR present; - union Reg_RoadSegment__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RoadSegment_t; -typedef struct Reg_NMEAcorrections { - RegionId_t regionId; - struct Reg_NMEAcorrections__regExtValue { - Reg_NMEAcorrections__regExtValue_PR present; - union Reg_NMEAcorrections__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NMEAcorrections_t; -typedef struct Reg_PersonalSafetyMessage { - RegionId_t regionId; - struct Reg_PersonalSafetyMessage__regExtValue { - Reg_PersonalSafetyMessage__regExtValue_PR present; - union Reg_PersonalSafetyMessage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_PersonalSafetyMessage_t; -typedef struct Reg_ProbeDataManagement { - RegionId_t regionId; - struct Reg_ProbeDataManagement__regExtValue { - Reg_ProbeDataManagement__regExtValue_PR present; - union Reg_ProbeDataManagement__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ProbeDataManagement_t; -typedef struct Reg_ProbeVehicleData { - RegionId_t regionId; - struct Reg_ProbeVehicleData__regExtValue { - Reg_ProbeVehicleData__regExtValue_PR present; - union Reg_ProbeVehicleData__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ProbeVehicleData_t; -typedef struct Reg_RoadSideAlert { - RegionId_t regionId; - struct Reg_RoadSideAlert__regExtValue { - Reg_RoadSideAlert__regExtValue_PR present; - union Reg_RoadSideAlert__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RoadSideAlert_t; -typedef struct Reg_RTCMcorrections { - RegionId_t regionId; - struct Reg_RTCMcorrections__regExtValue { - Reg_RTCMcorrections__regExtValue_PR present; - union Reg_RTCMcorrections__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RTCMcorrections_t; -typedef struct Reg_SignalRequestMessage { - RegionId_t regionId; - struct Reg_SignalRequestMessage__regExtValue { - Reg_SignalRequestMessage__regExtValue_PR present; - union Reg_SignalRequestMessage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalRequestMessage_t; -typedef struct Reg_RequestorDescription { - RegionId_t regionId; - struct Reg_RequestorDescription__regExtValue { - Reg_RequestorDescription__regExtValue_PR present; - union Reg_RequestorDescription__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RequestorDescription_t; -typedef struct Reg_SignalRequestPackage { - RegionId_t regionId; - struct Reg_SignalRequestPackage__regExtValue { - Reg_SignalRequestPackage__regExtValue_PR present; - union Reg_SignalRequestPackage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalRequestPackage_t; -typedef struct Reg_SignalRequest { - RegionId_t regionId; - struct Reg_SignalRequest__regExtValue { - Reg_SignalRequest__regExtValue_PR present; - union Reg_SignalRequest__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalRequest_t; -typedef struct Reg_SignalStatusMessage { - RegionId_t regionId; - struct Reg_SignalStatusMessage__regExtValue { - Reg_SignalStatusMessage__regExtValue_PR present; - union Reg_SignalStatusMessage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalStatusMessage_t; -typedef struct Reg_SignalStatusPackage { - RegionId_t regionId; - struct Reg_SignalStatusPackage__regExtValue { - Reg_SignalStatusPackage__regExtValue_PR present; - union Reg_SignalStatusPackage__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalStatusPackage_t; -typedef struct Reg_SignalStatus { - RegionId_t regionId; - struct Reg_SignalStatus__regExtValue { - Reg_SignalStatus__regExtValue_PR present; - union Reg_SignalStatus__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalStatus_t; -typedef struct Reg_SPAT { - RegionId_t regionId; - struct Reg_SPAT__regExtValue { - Reg_SPAT__regExtValue_PR present; - union Reg_SPAT__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SPAT_t; -typedef struct Reg_AdvisorySpeed { - RegionId_t regionId; - struct Reg_AdvisorySpeed__regExtValue { - Reg_AdvisorySpeed__regExtValue_PR present; - union Reg_AdvisorySpeed__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_AdvisorySpeed_t; -typedef struct Reg_ConnectionManeuverAssist { - RegionId_t regionId; - struct Reg_ConnectionManeuverAssist__regExtValue { - Reg_ConnectionManeuverAssist__regExtValue_PR present; - union Reg_ConnectionManeuverAssist__regExtValue_u { - ConnectionManeuverAssist_addGrpC_t ConnectionManeuverAssist_addGrpC; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ConnectionManeuverAssist_t; -typedef struct Reg_IntersectionState { - RegionId_t regionId; - struct Reg_IntersectionState__regExtValue { - Reg_IntersectionState__regExtValue_PR present; - union Reg_IntersectionState__regExtValue_u { - IntersectionState_addGrpC_t IntersectionState_addGrpC; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_IntersectionState_t; -typedef struct Reg_MovementEvent { - RegionId_t regionId; - struct Reg_MovementEvent__regExtValue { - Reg_MovementEvent__regExtValue_PR present; - union Reg_MovementEvent__regExtValue_u { - MovementEvent_addGrpB_t MovementEvent_addGrpB; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MovementEvent_t; -typedef struct Reg_MovementState { - RegionId_t regionId; - struct Reg_MovementState__regExtValue { - Reg_MovementState__regExtValue_PR present; - union Reg_MovementState__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MovementState_t; -typedef struct Reg_TestMessage00 { - RegionId_t regionId; - struct Reg_TestMessage00__regExtValue { - Reg_TestMessage00__regExtValue_PR present; - union Reg_TestMessage00__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage00_t; -typedef struct Reg_TestMessage01 { - RegionId_t regionId; - struct Reg_TestMessage01__regExtValue { - Reg_TestMessage01__regExtValue_PR present; - union Reg_TestMessage01__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage01_t; -typedef struct Reg_TestMessage02 { - RegionId_t regionId; - struct Reg_TestMessage02__regExtValue { - Reg_TestMessage02__regExtValue_PR present; - union Reg_TestMessage02__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage02_t; -typedef struct Reg_TestMessage03 { - RegionId_t regionId; - struct Reg_TestMessage03__regExtValue { - Reg_TestMessage03__regExtValue_PR present; - union Reg_TestMessage03__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage03_t; -typedef struct Reg_TestMessage04 { - RegionId_t regionId; - struct Reg_TestMessage04__regExtValue { - Reg_TestMessage04__regExtValue_PR present; - union Reg_TestMessage04__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage04_t; -typedef struct Reg_TestMessage05 { - RegionId_t regionId; - struct Reg_TestMessage05__regExtValue { - Reg_TestMessage05__regExtValue_PR present; - union Reg_TestMessage05__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage05_t; -typedef struct Reg_TestMessage06 { - RegionId_t regionId; - struct Reg_TestMessage06__regExtValue { - Reg_TestMessage06__regExtValue_PR present; - union Reg_TestMessage06__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage06_t; -typedef struct Reg_TestMessage07 { - RegionId_t regionId; - struct Reg_TestMessage07__regExtValue { - Reg_TestMessage07__regExtValue_PR present; - union Reg_TestMessage07__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage07_t; -typedef struct Reg_TestMessage08 { - RegionId_t regionId; - struct Reg_TestMessage08__regExtValue { - Reg_TestMessage08__regExtValue_PR present; - union Reg_TestMessage08__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage08_t; -typedef struct Reg_TestMessage09 { - RegionId_t regionId; - struct Reg_TestMessage09__regExtValue { - Reg_TestMessage09__regExtValue_PR present; - union Reg_TestMessage09__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage09_t; -typedef struct Reg_TestMessage10 { - RegionId_t regionId; - struct Reg_TestMessage10__regExtValue { - Reg_TestMessage10__regExtValue_PR present; - union Reg_TestMessage10__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage10_t; -typedef struct Reg_TestMessage11 { - RegionId_t regionId; - struct Reg_TestMessage11__regExtValue { - Reg_TestMessage11__regExtValue_PR present; - union Reg_TestMessage11__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage11_t; -typedef struct Reg_TestMessage12 { - RegionId_t regionId; - struct Reg_TestMessage12__regExtValue { - Reg_TestMessage12__regExtValue_PR present; - union Reg_TestMessage12__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage12_t; -typedef struct Reg_TestMessage13 { - RegionId_t regionId; - struct Reg_TestMessage13__regExtValue { - Reg_TestMessage13__regExtValue_PR present; - union Reg_TestMessage13__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage13_t; -typedef struct Reg_TestMessage14 { - RegionId_t regionId; - struct Reg_TestMessage14__regExtValue { - Reg_TestMessage14__regExtValue_PR present; - union Reg_TestMessage14__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage14_t; -typedef struct Reg_TestMessage15 { - RegionId_t regionId; - struct Reg_TestMessage15__regExtValue { - Reg_TestMessage15__regExtValue_PR present; - union Reg_TestMessage15__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TestMessage15_t; -typedef struct Reg_TravelerInformation { - RegionId_t regionId; - struct Reg_TravelerInformation__regExtValue { - Reg_TravelerInformation__regExtValue_PR present; - union Reg_TravelerInformation__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_TravelerInformation_t; -typedef struct Reg_GeographicalPath { - RegionId_t regionId; - struct Reg_GeographicalPath__regExtValue { - Reg_GeographicalPath__regExtValue_PR present; - union Reg_GeographicalPath__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_GeographicalPath_t; -typedef struct Reg_GeometricProjection { - RegionId_t regionId; - struct Reg_GeometricProjection__regExtValue { - Reg_GeometricProjection__regExtValue_PR present; - union Reg_GeometricProjection__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_GeometricProjection_t; -typedef struct Reg_NodeAttributeSetLL { - RegionId_t regionId; - struct Reg_NodeAttributeSetLL__regExtValue { - Reg_NodeAttributeSetLL__regExtValue_PR present; - union Reg_NodeAttributeSetLL__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeAttributeSetLL_t; -typedef struct Reg_NodeOffsetPointLL { - RegionId_t regionId; - struct Reg_NodeOffsetPointLL__regExtValue { - Reg_NodeOffsetPointLL__regExtValue_PR present; - union Reg_NodeOffsetPointLL__regExtValue_u { - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeOffsetPointLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4; -extern asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7; -extern asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10; -extern asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13; -extern asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16; -extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19; -extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_Position3D; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22; -extern asn_TYPE_member_t asn_MBR_Reg_Position3D_22[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25; -extern asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28; -extern asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31; -extern asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34; -extern asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37; -extern asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40; -extern asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_MapData; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43; -extern asn_TYPE_member_t asn_MBR_Reg_MapData_43[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46; -extern asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49; -extern asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52; -extern asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55; -extern asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58; -extern asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61; -extern asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64; -extern asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67; -extern asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70; -extern asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73; -extern asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76; -extern asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79; -extern asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82; -extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85; -extern asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88; -extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91; -extern asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94; -extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97; -extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100; -extern asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_SPAT; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103; -extern asn_TYPE_member_t asn_MBR_Reg_SPAT_103[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106; -extern asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109; -extern asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112; -extern asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115; -extern asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementState; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118; -extern asn_TYPE_member_t asn_MBR_Reg_MovementState_118[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166; -extern asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169; -extern asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172; -extern asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175; -extern asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178; -extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[2]; -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181; -extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalExtension_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h deleted file mode 100644 index 8a461d2ae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RegulatorySpeedLimit.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RegulatorySpeedLimit_H_ -#define _RegulatorySpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedLimitType.h" -#include "Velocity.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegulatorySpeedLimit */ -typedef struct RegulatorySpeedLimit { - SpeedLimitType_t type; - Velocity_t speed; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegulatorySpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; -extern asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1; -extern asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegulatorySpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h deleted file mode 100644 index 4b19a8aaf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestID_H_ -#define _RequestID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RequestID */ -typedef long RequestID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestID; -asn_struct_free_f RequestID_free; -asn_struct_print_f RequestID_print; -asn_constr_check_f RequestID_constraint; -ber_type_decoder_f RequestID_decode_ber; -der_type_encoder_f RequestID_encode_der; -xer_type_decoder_f RequestID_decode_xer; -xer_type_encoder_f RequestID_encode_xer; -jer_type_encoder_f RequestID_encode_jer; -oer_type_decoder_f RequestID_decode_oer; -oer_type_encoder_f RequestID_encode_oer; -per_type_decoder_f RequestID_decode_uper; -per_type_encoder_f RequestID_encode_uper; -per_type_decoder_f RequestID_decode_aper; -per_type_encoder_f RequestID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h deleted file mode 100644 index 7ef476dd8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestImportanceLevel.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestImportanceLevel_H_ -#define _RequestImportanceLevel_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestImportanceLevel { - RequestImportanceLevel_requestImportanceLevelUnKnown = 0, - RequestImportanceLevel_requestImportanceLevel1 = 1, - RequestImportanceLevel_requestImportanceLevel2 = 2, - RequestImportanceLevel_requestImportanceLevel3 = 3, - RequestImportanceLevel_requestImportanceLevel4 = 4, - RequestImportanceLevel_requestImportanceLevel5 = 5, - RequestImportanceLevel_requestImportanceLevel6 = 6, - RequestImportanceLevel_requestImportanceLevel7 = 7, - RequestImportanceLevel_requestImportanceLevel8 = 8, - RequestImportanceLevel_requestImportanceLevel9 = 9, - RequestImportanceLevel_requestImportanceLevel10 = 10, - RequestImportanceLevel_requestImportanceLevel11 = 11, - RequestImportanceLevel_requestImportanceLevel12 = 12, - RequestImportanceLevel_requestImportanceLevel13 = 13, - RequestImportanceLevel_requestImportanceLevel14 = 14, - RequestImportanceLevel_requestImportanceReserved = 15 -} e_RequestImportanceLevel; - -/* RequestImportanceLevel */ -typedef long RequestImportanceLevel_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel; -extern const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1; -asn_struct_free_f RequestImportanceLevel_free; -asn_struct_print_f RequestImportanceLevel_print; -asn_constr_check_f RequestImportanceLevel_constraint; -ber_type_decoder_f RequestImportanceLevel_decode_ber; -der_type_encoder_f RequestImportanceLevel_encode_der; -xer_type_decoder_f RequestImportanceLevel_decode_xer; -xer_type_encoder_f RequestImportanceLevel_encode_xer; -jer_type_encoder_f RequestImportanceLevel_encode_jer; -oer_type_decoder_f RequestImportanceLevel_decode_oer; -oer_type_encoder_f RequestImportanceLevel_encode_oer; -per_type_decoder_f RequestImportanceLevel_decode_uper; -per_type_encoder_f RequestImportanceLevel_encode_uper; -per_type_decoder_f RequestImportanceLevel_decode_aper; -per_type_encoder_f RequestImportanceLevel_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestImportanceLevel_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h deleted file mode 100644 index 337c3962c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestSubRole.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestSubRole_H_ -#define _RequestSubRole_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestSubRole { - RequestSubRole_requestSubRoleUnKnown = 0, - RequestSubRole_requestSubRole1 = 1, - RequestSubRole_requestSubRole2 = 2, - RequestSubRole_requestSubRole3 = 3, - RequestSubRole_requestSubRole4 = 4, - RequestSubRole_requestSubRole5 = 5, - RequestSubRole_requestSubRole6 = 6, - RequestSubRole_requestSubRole7 = 7, - RequestSubRole_requestSubRole8 = 8, - RequestSubRole_requestSubRole9 = 9, - RequestSubRole_requestSubRole10 = 10, - RequestSubRole_requestSubRole11 = 11, - RequestSubRole_requestSubRole12 = 12, - RequestSubRole_requestSubRole13 = 13, - RequestSubRole_requestSubRole14 = 14, - RequestSubRole_requestSubRoleReserved = 15 -} e_RequestSubRole; - -/* RequestSubRole */ -typedef long RequestSubRole_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestSubRole; -extern const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1; -asn_struct_free_f RequestSubRole_free; -asn_struct_print_f RequestSubRole_print; -asn_constr_check_f RequestSubRole_constraint; -ber_type_decoder_f RequestSubRole_decode_ber; -der_type_encoder_f RequestSubRole_encode_der; -xer_type_decoder_f RequestSubRole_decode_xer; -xer_type_encoder_f RequestSubRole_encode_xer; -jer_type_encoder_f RequestSubRole_encode_jer; -oer_type_decoder_f RequestSubRole_decode_oer; -oer_type_encoder_f RequestSubRole_encode_oer; -per_type_decoder_f RequestSubRole_decode_uper; -per_type_encoder_f RequestSubRole_encode_uper; -per_type_decoder_f RequestSubRole_decode_aper; -per_type_encoder_f RequestSubRole_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestSubRole_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h deleted file mode 100644 index ee05f077b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItem.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestedItem_H_ -#define _RequestedItem_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestedItem { - RequestedItem_reserved = 0, - RequestedItem_itemA = 1, - RequestedItem_itemB = 2, - RequestedItem_itemC = 3, - RequestedItem_itemD = 4, - RequestedItem_itemE = 5, - RequestedItem_itemF = 6, - RequestedItem_itemG = 7, - RequestedItem_itemI = 8, - RequestedItem_itemJ = 9, - RequestedItem_itemK = 10, - RequestedItem_itemL = 11, - RequestedItem_itemM = 12, - RequestedItem_itemN = 13, - RequestedItem_itemO = 14, - RequestedItem_itemP = 15, - RequestedItem_itemQ = 16 - /* - * Enumeration is extensible - */ -} e_RequestedItem; - -/* RequestedItem */ -typedef long RequestedItem_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestedItem_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; -extern const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1; -asn_struct_free_f RequestedItem_free; -asn_struct_print_f RequestedItem_print; -asn_constr_check_f RequestedItem_constraint; -ber_type_decoder_f RequestedItem_decode_ber; -der_type_encoder_f RequestedItem_encode_der; -xer_type_decoder_f RequestedItem_decode_xer; -xer_type_encoder_f RequestedItem_encode_xer; -jer_type_encoder_f RequestedItem_encode_jer; -oer_type_decoder_f RequestedItem_decode_oer; -oer_type_encoder_f RequestedItem_encode_oer; -per_type_decoder_f RequestedItem_decode_uper; -per_type_encoder_f RequestedItem_encode_uper; -per_type_decoder_f RequestedItem_decode_aper; -per_type_encoder_f RequestedItem_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestedItem_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h deleted file mode 100644 index 9dd2a0774..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestedItemList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestedItemList_H_ -#define _RequestedItemList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RequestedItem.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RequestedItemList */ -typedef struct RequestedItemList { - A_SEQUENCE_OF(RequestedItem_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestedItemList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestedItemList; -extern asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestedItemList_1[1]; -extern asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestedItemList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h deleted file mode 100644 index ba1b69234..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorDescription.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestorDescription_H_ -#define _RequestorDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleID.h" -#include "DescriptiveName.h" -#include "TransitVehicleStatus.h" -#include "TransitVehicleOccupancy.h" -#include "DeltaTime.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RequestorType; -struct RequestorPositionVector; -struct Reg_RequestorDescription; - -/* RequestorDescription */ -typedef struct RequestorDescription { - VehicleID_t id; - struct RequestorType *type; /* OPTIONAL */ - struct RequestorPositionVector *position; /* OPTIONAL */ - DescriptiveName_t *name; /* OPTIONAL */ - DescriptiveName_t *routeName; /* OPTIONAL */ - TransitVehicleStatus_t *transitStatus; /* OPTIONAL */ - TransitVehicleOccupancy_t *transitOccupancy; /* OPTIONAL */ - DeltaTime_t *transitSchedule; /* OPTIONAL */ - struct RequestorDescription__regional { - A_SEQUENCE_OF(struct Reg_RequestorDescription) 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; -} RequestorDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorDescription_1[9]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestorDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h deleted file mode 100644 index a507b821b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorPositionVector.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestorPositionVector_H_ -#define _RequestorPositionVector_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "Common_Angle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TransmissionAndSpeed; - -/* RequestorPositionVector */ -typedef struct RequestorPositionVector { - Position3D_t position; - Common_Angle_t *heading; /* OPTIONAL */ - struct TransmissionAndSpeed *speed; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestorPositionVector_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestorPositionVector_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h deleted file mode 100644 index 44f832599..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RequestorType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RequestorType_H_ -#define _RequestorType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleRole.h" -#include "RequestSubRole.h" -#include "RequestImportanceLevel.h" -#include "Iso3833VehicleType.h" -#include "VehicleType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_RequestorType; - -/* RequestorType */ -typedef struct RequestorType { - BasicVehicleRole_t role; - RequestSubRole_t *subrole; /* OPTIONAL */ - RequestImportanceLevel_t *request; /* OPTIONAL */ - Iso3833VehicleType_t *iso3883; /* OPTIONAL */ - VehicleType_t *hpmsType; /* OPTIONAL */ - struct Reg_RequestorType *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestorType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorType; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorType_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestorType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h deleted file mode 100644 index ff471f2d4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponderGroupAffected.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ResponderGroupAffected_H_ -#define _ResponderGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponderGroupAffected { - ResponderGroupAffected_emergency_vehicle_units = 9729, - ResponderGroupAffected_federal_law_enforcement_units = 9730, - ResponderGroupAffected_state_police_units = 9731, - ResponderGroupAffected_county_police_units = 9732, - ResponderGroupAffected_local_police_units = 9733, - ResponderGroupAffected_ambulance_units = 9734, - ResponderGroupAffected_rescue_units = 9735, - ResponderGroupAffected_fire_units = 9736, - ResponderGroupAffected_hAZMAT_units = 9737, - ResponderGroupAffected_light_tow_unit = 9738, - ResponderGroupAffected_heavy_tow_unit = 9739, - ResponderGroupAffected_freeway_service_patrols = 9740, - ResponderGroupAffected_transportation_response_units = 9741, - ResponderGroupAffected_private_contractor_response_units = 9742 - /* - * Enumeration is extensible - */ -} e_ResponderGroupAffected; - -/* ResponderGroupAffected */ -typedef long ResponderGroupAffected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; -extern const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1; -asn_struct_free_f ResponderGroupAffected_free; -asn_struct_print_f ResponderGroupAffected_print; -asn_constr_check_f ResponderGroupAffected_constraint; -ber_type_decoder_f ResponderGroupAffected_decode_ber; -der_type_encoder_f ResponderGroupAffected_encode_der; -xer_type_decoder_f ResponderGroupAffected_decode_xer; -xer_type_encoder_f ResponderGroupAffected_encode_xer; -jer_type_encoder_f ResponderGroupAffected_encode_jer; -oer_type_decoder_f ResponderGroupAffected_decode_oer; -oer_type_encoder_f ResponderGroupAffected_encode_oer; -per_type_decoder_f ResponderGroupAffected_decode_uper; -per_type_encoder_f ResponderGroupAffected_encode_uper; -per_type_decoder_f ResponderGroupAffected_decode_aper; -per_type_encoder_f ResponderGroupAffected_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponderGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h deleted file mode 100644 index 0789df901..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ResponseType.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ResponseType_H_ -#define _ResponseType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponseType { - ResponseType_notInUseOrNotEquipped = 0, - ResponseType_emergency = 1, - ResponseType_nonEmergency = 2, - ResponseType_pursuit = 3, - ResponseType_stationary = 4, - ResponseType_slowMoving = 5, - ResponseType_stopAndGoMovement = 6 - /* - * Enumeration is extensible - */ -} e_ResponseType; - -/* ResponseType */ -typedef long ResponseType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ResponseType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ResponseType; -extern const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1; -asn_struct_free_f ResponseType_free; -asn_struct_print_f ResponseType_print; -asn_constr_check_f ResponseType_constraint; -ber_type_decoder_f ResponseType_decode_ber; -der_type_encoder_f ResponseType_encode_der; -xer_type_decoder_f ResponseType_decode_xer; -xer_type_encoder_f ResponseType_encode_xer; -jer_type_encoder_f ResponseType_encode_jer; -oer_type_decoder_f ResponseType_decode_oer; -oer_type_encoder_f ResponseType_encode_oer; -per_type_decoder_f ResponseType_decode_uper; -per_type_encoder_f ResponseType_encode_uper; -per_type_decoder_f ResponseType_decode_aper; -per_type_encoder_f ResponseType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponseType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h deleted file mode 100644 index df72ab00b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionAppliesTo.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionAppliesTo_H_ -#define _RestrictionAppliesTo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionAppliesTo { - RestrictionAppliesTo_none = 0, - RestrictionAppliesTo_equippedTransit = 1, - RestrictionAppliesTo_equippedTaxis = 2, - RestrictionAppliesTo_equippedOther = 3, - RestrictionAppliesTo_emissionCompliant = 4, - RestrictionAppliesTo_equippedBicycle = 5, - RestrictionAppliesTo_weightCompliant = 6, - RestrictionAppliesTo_heightCompliant = 7, - RestrictionAppliesTo_pedestrians = 8, - RestrictionAppliesTo_slowMovingPersons = 9, - RestrictionAppliesTo_wheelchairUsers = 10, - RestrictionAppliesTo_visualDisabilities = 11, - RestrictionAppliesTo_audioDisabilities = 12, - RestrictionAppliesTo_otherUnknownDisabilities = 13 - /* - * Enumeration is extensible - */ -} e_RestrictionAppliesTo; - -/* RestrictionAppliesTo */ -typedef long RestrictionAppliesTo_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; -extern const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1; -asn_struct_free_f RestrictionAppliesTo_free; -asn_struct_print_f RestrictionAppliesTo_print; -asn_constr_check_f RestrictionAppliesTo_constraint; -ber_type_decoder_f RestrictionAppliesTo_decode_ber; -der_type_encoder_f RestrictionAppliesTo_encode_der; -xer_type_decoder_f RestrictionAppliesTo_decode_xer; -xer_type_encoder_f RestrictionAppliesTo_encode_xer; -jer_type_encoder_f RestrictionAppliesTo_encode_jer; -oer_type_decoder_f RestrictionAppliesTo_decode_oer; -oer_type_encoder_f RestrictionAppliesTo_encode_oer; -per_type_decoder_f RestrictionAppliesTo_decode_uper; -per_type_encoder_f RestrictionAppliesTo_encode_uper; -per_type_decoder_f RestrictionAppliesTo_decode_aper; -per_type_encoder_f RestrictionAppliesTo_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionAppliesTo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h deleted file mode 100644 index a88bc7fce..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassAssignment.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionClassAssignment_H_ -#define _RestrictionClassAssignment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionClassID.h" -#include "RestrictionUserTypeList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassAssignment */ -typedef struct RestrictionClassAssignment { - RestrictionClassID_t id; - RestrictionUserTypeList_t users; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassAssignment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; -extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassAssignment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h deleted file mode 100644 index 0a2c49ff1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionClassID_H_ -#define _RestrictionClassID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassID */ -typedef long RestrictionClassID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; -asn_struct_free_f RestrictionClassID_free; -asn_struct_print_f RestrictionClassID_print; -asn_constr_check_f RestrictionClassID_constraint; -ber_type_decoder_f RestrictionClassID_decode_ber; -der_type_encoder_f RestrictionClassID_encode_der; -xer_type_decoder_f RestrictionClassID_decode_xer; -xer_type_encoder_f RestrictionClassID_encode_xer; -jer_type_encoder_f RestrictionClassID_encode_jer; -oer_type_decoder_f RestrictionClassID_decode_oer; -oer_type_encoder_f RestrictionClassID_encode_oer; -per_type_decoder_f RestrictionClassID_decode_uper; -per_type_encoder_f RestrictionClassID_encode_uper; -per_type_decoder_f RestrictionClassID_decode_aper; -per_type_encoder_f RestrictionClassID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h deleted file mode 100644 index 16a6a9d70..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionClassList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionClassList_H_ -#define _RestrictionClassList_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 RestrictionClassAssignment; - -/* RestrictionClassList */ -typedef struct RestrictionClassList { - A_SEQUENCE_OF(struct RestrictionClassAssignment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; -extern asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionClassList_1[1]; -extern asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h deleted file mode 100644 index fbb9638eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType-addGrpC.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionUserType_addGrpC_H_ -#define _RestrictionUserType_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EmissionType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionUserType-addGrpC */ -typedef struct RestrictionUserType_addGrpC { - EmissionType_t *emission; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserType_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC; -extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionUserType_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h deleted file mode 100644 index 0a054aab7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserType.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionUserType_H_ -#define _RestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionAppliesTo.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionUserType_PR { - RestrictionUserType_PR_NOTHING, /* No components present */ - RestrictionUserType_PR_basicType, - RestrictionUserType_PR_regional - /* Extensions may appear below */ - -} RestrictionUserType_PR; - -/* Forward declarations */ -struct Reg_RestrictionUserType; - -/* RestrictionUserType */ -typedef struct RestrictionUserType { - RestrictionUserType_PR present; - union RestrictionUserType_u { - RestrictionAppliesTo_t basicType; - struct RestrictionUserType__regional { - A_SEQUENCE_OF(struct Reg_RestrictionUserType) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regional; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; -extern asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionUserType_1[2]; -extern asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h deleted file mode 100644 index 987db4cd7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RestrictionUserTypeList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RestrictionUserTypeList_H_ -#define _RestrictionUserTypeList_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 RestrictionUserType; - -/* RestrictionUserTypeList */ -typedef struct RestrictionUserTypeList { - A_SEQUENCE_OF(struct RestrictionUserType) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserTypeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; -extern asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[1]; -extern asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionUserTypeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h deleted file mode 100644 index 891d89115..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadLaneSetList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadLaneSetList_H_ -#define _RoadLaneSetList_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 GenericLane; - -/* RoadLaneSetList */ -typedef struct RoadLaneSetList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadLaneSetList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; -extern asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[1]; -extern asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadLaneSetList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h deleted file mode 100644 index bd52cf99c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadRegulatorID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadRegulatorID_H_ -#define _RoadRegulatorID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadRegulatorID */ -typedef long RoadRegulatorID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; -asn_struct_free_f RoadRegulatorID_free; -asn_struct_print_f RoadRegulatorID_print; -asn_constr_check_f RoadRegulatorID_constraint; -ber_type_decoder_f RoadRegulatorID_decode_ber; -der_type_encoder_f RoadRegulatorID_encode_der; -xer_type_decoder_f RoadRegulatorID_decode_xer; -xer_type_encoder_f RoadRegulatorID_encode_xer; -jer_type_encoder_f RoadRegulatorID_encode_jer; -oer_type_decoder_f RoadRegulatorID_decode_oer; -oer_type_encoder_f RoadRegulatorID_encode_oer; -per_type_decoder_f RoadRegulatorID_decode_uper; -per_type_encoder_f RoadRegulatorID_encode_uper; -per_type_decoder_f RoadRegulatorID_decode_aper; -per_type_encoder_f RoadRegulatorID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadRegulatorID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h deleted file mode 100644 index de3176cce..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegment.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSegment_H_ -#define _RoadSegment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "RoadSegmentReferenceID.h" -#include "Common_MsgCount.h" -#include "Position3D.h" -#include "LaneWidth.h" -#include "RoadLaneSetList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct Reg_RoadSegment; - -/* RoadSegment */ -typedef struct RoadSegment { - DescriptiveName_t *name; /* OPTIONAL */ - RoadSegmentReferenceID_t id; - Common_MsgCount_t revision; - Position3D_t refPoint; - LaneWidth_t *laneWidth; /* OPTIONAL */ - struct SpeedLimitList *speedLimits; /* OPTIONAL */ - RoadLaneSetList_t roadLaneSet; - struct RoadSegment__regional { - A_SEQUENCE_OF(struct Reg_RoadSegment) 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; -} RoadSegment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegment_1[8]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h deleted file mode 100644 index 011edaabe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSegmentID_H_ -#define _RoadSegmentID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentID */ -typedef long RoadSegmentID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; -asn_struct_free_f RoadSegmentID_free; -asn_struct_print_f RoadSegmentID_print; -asn_constr_check_f RoadSegmentID_constraint; -ber_type_decoder_f RoadSegmentID_decode_ber; -der_type_encoder_f RoadSegmentID_encode_der; -xer_type_decoder_f RoadSegmentID_decode_xer; -xer_type_encoder_f RoadSegmentID_encode_xer; -jer_type_encoder_f RoadSegmentID_encode_jer; -oer_type_decoder_f RoadSegmentID_decode_oer; -oer_type_encoder_f RoadSegmentID_encode_oer; -per_type_decoder_f RoadSegmentID_decode_uper; -per_type_encoder_f RoadSegmentID_encode_uper; -per_type_decoder_f RoadSegmentID_decode_aper; -per_type_encoder_f RoadSegmentID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h deleted file mode 100644 index 32afed22e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSegmentList_H_ -#define _RoadSegmentList_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 RoadSegment; - -/* RoadSegmentList */ -typedef struct RoadSegmentList { - A_SEQUENCE_OF(struct RoadSegment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; -extern asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegmentList_1[1]; -extern asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h deleted file mode 100644 index 90311f564..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSegmentReferenceID.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSegmentReferenceID_H_ -#define _RoadSegmentReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "RoadSegmentID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentReferenceID */ -typedef struct RoadSegmentReferenceID { - RoadRegulatorID_t *region; /* OPTIONAL */ - RoadSegmentID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h deleted file mode 100644 index bf4ff9e61..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSideAlert.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RoadSideAlert" - * found in "J2735-RoadSideAlert.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSideAlert_H_ -#define _RoadSideAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "MinuteOfTheYear.h" -#include "ITIScodes.h" -#include "Priority.h" -#include "HeadingSlice.h" -#include "Extent.h" -#include "FurtherInfoID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct Reg_RoadSideAlert; - -/* RoadSideAlert */ -typedef struct RoadSideAlert { - Common_MsgCount_t msgCnt; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - ITIScodes_t typeEvent; - struct RoadSideAlert__description { - A_SEQUENCE_OF(ITIScodes_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - Priority_t *priority; /* OPTIONAL */ - HeadingSlice_t *heading; /* OPTIONAL */ - Extent_t *extent; /* OPTIONAL */ - struct FullPositionVector *position; /* OPTIONAL */ - FurtherInfoID_t *furtherInfoID; /* OPTIONAL */ - struct RoadSideAlert__regional { - A_SEQUENCE_OF(struct Reg_RoadSideAlert) 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; -} RoadSideAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSideAlert_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSideAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h deleted file mode 100644 index 2215220f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadSignID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadSignID_H_ -#define _RoadSignID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "HeadingSlice.h" -#include "MUTCDCode.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSignID */ -typedef struct RoadSignID { - Position3D_t position; - HeadingSlice_t viewAngle; - MUTCDCode_t *mutcdCode; /* OPTIONAL */ - MsgCRC_t *crc; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSignID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSignID_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSignID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h deleted file mode 100644 index d38be1eed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/RoadwayCrownAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _RoadwayCrownAngle_H_ -#define _RoadwayCrownAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadwayCrownAngle */ -typedef long RoadwayCrownAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; -asn_struct_free_f RoadwayCrownAngle_free; -asn_struct_print_f RoadwayCrownAngle_print; -asn_constr_check_f RoadwayCrownAngle_constraint; -ber_type_decoder_f RoadwayCrownAngle_decode_ber; -der_type_encoder_f RoadwayCrownAngle_encode_der; -xer_type_decoder_f RoadwayCrownAngle_decode_xer; -xer_type_encoder_f RoadwayCrownAngle_encode_xer; -jer_type_encoder_f RoadwayCrownAngle_encode_jer; -oer_type_decoder_f RoadwayCrownAngle_decode_oer; -oer_type_encoder_f RoadwayCrownAngle_encode_oer; -per_type_decoder_f RoadwayCrownAngle_decode_uper; -per_type_encoder_f RoadwayCrownAngle_encode_uper; -per_type_decoder_f RoadwayCrownAngle_decode_aper; -per_type_encoder_f RoadwayCrownAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadwayCrownAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h deleted file mode 100644 index 5c2f0145e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SPAT_H_ -#define _SPAT_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DescriptiveName.h" -#include "IntersectionStateList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_SPAT; - -/* SPAT */ -typedef struct SPAT { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionStateList_t intersections; - struct SPAT__regional { - A_SEQUENCE_OF(struct Reg_SPAT) 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; -} SPAT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SPAT; -extern asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1; -extern asn_TYPE_member_t asn_MBR_SPAT_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SPAT_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h deleted file mode 100644 index 021a5c2cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SPAT_TimeMark.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SPAT_TimeMark_H_ -#define _SPAT_TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SPAT_TimeMark */ -typedef long SPAT_TimeMark_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark; -asn_struct_free_f SPAT_TimeMark_free; -asn_struct_print_f SPAT_TimeMark_print; -asn_constr_check_f SPAT_TimeMark_constraint; -ber_type_decoder_f SPAT_TimeMark_decode_ber; -der_type_encoder_f SPAT_TimeMark_encode_der; -xer_type_decoder_f SPAT_TimeMark_decode_xer; -xer_type_encoder_f SPAT_TimeMark_encode_xer; -jer_type_encoder_f SPAT_TimeMark_encode_jer; -oer_type_decoder_f SPAT_TimeMark_decode_oer; -oer_type_encoder_f SPAT_TimeMark_encode_oer; -per_type_decoder_f SPAT_TimeMark_decode_uper; -per_type_encoder_f SPAT_TimeMark_encode_uper; -per_type_decoder_f SPAT_TimeMark_decode_aper; -per_type_encoder_f SPAT_TimeMark_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SPAT_TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h deleted file mode 100644 index 81eb2cb3f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SSPindex.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SSPindex_H_ -#define _SSPindex_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SSPindex */ -typedef long SSPindex_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SSPindex_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SSPindex; -asn_struct_free_f SSPindex_free; -asn_struct_print_f SSPindex_print; -asn_constr_check_f SSPindex_constraint; -ber_type_decoder_f SSPindex_decode_ber; -der_type_encoder_f SSPindex_encode_der; -xer_type_decoder_f SSPindex_decode_xer; -xer_type_encoder_f SSPindex_encode_xer; -jer_type_encoder_f SSPindex_encode_jer; -oer_type_decoder_f SSPindex_decode_oer; -oer_type_encoder_f SSPindex_encode_oer; -per_type_decoder_f SSPindex_decode_uper; -per_type_encoder_f SSPindex_encode_uper; -per_type_decoder_f SSPindex_decode_aper; -per_type_encoder_f SSPindex_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SSPindex_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h deleted file mode 100644 index 3afe1b9da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Sample.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Sample_H_ -#define _Sample_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Sample */ -typedef struct Sample { - long sampleStart; - long sampleEnd; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Sample_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Sample; -extern asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1; -extern asn_TYPE_member_t asn_MBR_Sample_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Sample_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h deleted file mode 100644 index 5b3502eb6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Scale-B12.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Scale_B12_H_ -#define _Scale_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Scale-B12 */ -typedef long Scale_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Scale_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; -asn_struct_free_f Scale_B12_free; -asn_struct_print_f Scale_B12_print; -asn_constr_check_f Scale_B12_constraint; -ber_type_decoder_f Scale_B12_decode_ber; -der_type_encoder_f Scale_B12_encode_der; -xer_type_decoder_f Scale_B12_decode_xer; -xer_type_encoder_f Scale_B12_encode_xer; -jer_type_encoder_f Scale_B12_encode_jer; -oer_type_decoder_f Scale_B12_decode_oer; -oer_type_encoder_f Scale_B12_encode_oer; -per_type_decoder_f Scale_B12_decode_uper; -per_type_encoder_f Scale_B12_encode_uper; -per_type_decoder_f Scale_B12_decode_aper; -per_type_encoder_f Scale_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Scale_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h deleted file mode 100644 index 4f2b7ef9e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Second.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Second_H_ -#define _Second_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Second */ -typedef long Second_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Second_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Second; -asn_struct_free_f Second_free; -asn_struct_print_f Second_print; -asn_constr_check_f Second_constraint; -ber_type_decoder_f Second_decode_ber; -der_type_encoder_f Second_encode_der; -xer_type_decoder_f Second_decode_xer; -xer_type_encoder_f Second_encode_xer; -jer_type_encoder_f Second_encode_jer; -oer_type_decoder_f Second_decode_oer; -oer_type_encoder_f Second_encode_oer; -per_type_decoder_f Second_decode_uper; -per_type_encoder_f Second_encode_uper; -per_type_decoder_f Second_decode_aper; -per_type_encoder_f Second_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Second_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h deleted file mode 100644 index d6ebce972..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondOfTime.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SecondOfTime_H_ -#define _SecondOfTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SecondOfTime */ -typedef long SecondOfTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SecondOfTime; -asn_struct_free_f SecondOfTime_free; -asn_struct_print_f SecondOfTime_print; -asn_constr_check_f SecondOfTime_constraint; -ber_type_decoder_f SecondOfTime_decode_ber; -der_type_encoder_f SecondOfTime_encode_der; -xer_type_decoder_f SecondOfTime_decode_xer; -xer_type_encoder_f SecondOfTime_encode_xer; -jer_type_encoder_f SecondOfTime_encode_jer; -oer_type_decoder_f SecondOfTime_decode_oer; -oer_type_encoder_f SecondOfTime_encode_oer; -per_type_decoder_f SecondOfTime_decode_uper; -per_type_encoder_f SecondOfTime_encode_uper; -per_type_decoder_f SecondOfTime_decode_aper; -per_type_encoder_f SecondOfTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SecondOfTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h deleted file mode 100644 index 0aa500f44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SecondsAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SecondsAngle_H_ -#define _SecondsAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SecondsAngle */ -typedef long SecondsAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; -asn_struct_free_f SecondsAngle_free; -asn_struct_print_f SecondsAngle_print; -asn_constr_check_f SecondsAngle_constraint; -ber_type_decoder_f SecondsAngle_decode_ber; -der_type_encoder_f SecondsAngle_encode_der; -xer_type_decoder_f SecondsAngle_decode_xer; -xer_type_encoder_f SecondsAngle_encode_xer; -jer_type_encoder_f SecondsAngle_encode_jer; -oer_type_decoder_f SecondsAngle_decode_oer; -oer_type_encoder_f SecondsAngle_encode_oer; -per_type_decoder_f SecondsAngle_decode_uper; -per_type_encoder_f SecondsAngle_encode_uper; -per_type_decoder_f SecondsAngle_decode_aper; -per_type_encoder_f SecondsAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SecondsAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h deleted file mode 100644 index 7cf1048d3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLL.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SegmentAttributeLL_H_ -#define _SegmentAttributeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SegmentAttributeLL { - SegmentAttributeLL_reserved = 0, - SegmentAttributeLL_doNotBlock = 1, - SegmentAttributeLL_whiteLine = 2, - SegmentAttributeLL_mergingLaneLeft = 3, - SegmentAttributeLL_mergingLaneRight = 4, - SegmentAttributeLL_curbOnLeft = 5, - SegmentAttributeLL_curbOnRight = 6, - SegmentAttributeLL_loadingzoneOnLeft = 7, - SegmentAttributeLL_loadingzoneOnRight = 8, - SegmentAttributeLL_turnOutPointOnLeft = 9, - SegmentAttributeLL_turnOutPointOnRight = 10, - SegmentAttributeLL_adjacentParkingOnLeft = 11, - SegmentAttributeLL_adjacentParkingOnRight = 12, - SegmentAttributeLL_adjacentBikeLaneOnLeft = 13, - SegmentAttributeLL_adjacentBikeLaneOnRight = 14, - SegmentAttributeLL_sharedBikeLane = 15, - SegmentAttributeLL_bikeBoxInFront = 16, - SegmentAttributeLL_transitStopOnLeft = 17, - SegmentAttributeLL_transitStopOnRight = 18, - SegmentAttributeLL_transitStopInLane = 19, - SegmentAttributeLL_sharedWithTrackedVehicle = 20, - SegmentAttributeLL_safeIsland = 21, - SegmentAttributeLL_lowCurbsPresent = 22, - SegmentAttributeLL_rumbleStripPresent = 23, - SegmentAttributeLL_audibleSignalingPresent = 24, - SegmentAttributeLL_adaptiveTimingPresent = 25, - SegmentAttributeLL_rfSignalRequestPresent = 26, - SegmentAttributeLL_partialCurbIntrusion = 27, - SegmentAttributeLL_taperToLeft = 28, - SegmentAttributeLL_taperToRight = 29, - SegmentAttributeLL_taperToCenterLine = 30, - SegmentAttributeLL_parallelParking = 31, - SegmentAttributeLL_headInParking = 32, - SegmentAttributeLL_freeParking = 33, - SegmentAttributeLL_timeRestrictionsOnParking = 34, - SegmentAttributeLL_costToPark = 35, - SegmentAttributeLL_midBlockCurbPresent = 36, - SegmentAttributeLL_unEvenPavementPresent = 37 - /* - * Enumeration is extensible - */ -} e_SegmentAttributeLL; - -/* SegmentAttributeLL */ -typedef long SegmentAttributeLL_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL; -extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1; -asn_struct_free_f SegmentAttributeLL_free; -asn_struct_print_f SegmentAttributeLL_print; -asn_constr_check_f SegmentAttributeLL_constraint; -ber_type_decoder_f SegmentAttributeLL_decode_ber; -der_type_encoder_f SegmentAttributeLL_encode_der; -xer_type_decoder_f SegmentAttributeLL_decode_xer; -xer_type_encoder_f SegmentAttributeLL_encode_xer; -jer_type_encoder_f SegmentAttributeLL_encode_jer; -oer_type_decoder_f SegmentAttributeLL_decode_oer; -oer_type_encoder_f SegmentAttributeLL_encode_oer; -per_type_decoder_f SegmentAttributeLL_decode_uper; -per_type_encoder_f SegmentAttributeLL_encode_uper; -per_type_decoder_f SegmentAttributeLL_decode_aper; -per_type_encoder_f SegmentAttributeLL_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h deleted file mode 100644 index 9218d9ada..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeLLList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SegmentAttributeLLList_H_ -#define _SegmentAttributeLLList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SegmentAttributeLL.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SegmentAttributeLLList */ -typedef struct SegmentAttributeLLList { - A_SEQUENCE_OF(SegmentAttributeLL_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SegmentAttributeLLList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList; -extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1; -extern asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[1]; -extern asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeLLList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h deleted file mode 100644 index 1185eb5ab..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXY.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SegmentAttributeXY_H_ -#define _SegmentAttributeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SegmentAttributeXY { - SegmentAttributeXY_reserved = 0, - SegmentAttributeXY_doNotBlock = 1, - SegmentAttributeXY_whiteLine = 2, - SegmentAttributeXY_mergingLaneLeft = 3, - SegmentAttributeXY_mergingLaneRight = 4, - SegmentAttributeXY_curbOnLeft = 5, - SegmentAttributeXY_curbOnRight = 6, - SegmentAttributeXY_loadingzoneOnLeft = 7, - SegmentAttributeXY_loadingzoneOnRight = 8, - SegmentAttributeXY_turnOutPointOnLeft = 9, - SegmentAttributeXY_turnOutPointOnRight = 10, - SegmentAttributeXY_adjacentParkingOnLeft = 11, - SegmentAttributeXY_adjacentParkingOnRight = 12, - SegmentAttributeXY_adjacentBikeLaneOnLeft = 13, - SegmentAttributeXY_adjacentBikeLaneOnRight = 14, - SegmentAttributeXY_sharedBikeLane = 15, - SegmentAttributeXY_bikeBoxInFront = 16, - SegmentAttributeXY_transitStopOnLeft = 17, - SegmentAttributeXY_transitStopOnRight = 18, - SegmentAttributeXY_transitStopInLane = 19, - SegmentAttributeXY_sharedWithTrackedVehicle = 20, - SegmentAttributeXY_safeIsland = 21, - SegmentAttributeXY_lowCurbsPresent = 22, - SegmentAttributeXY_rumbleStripPresent = 23, - SegmentAttributeXY_audibleSignalingPresent = 24, - SegmentAttributeXY_adaptiveTimingPresent = 25, - SegmentAttributeXY_rfSignalRequestPresent = 26, - SegmentAttributeXY_partialCurbIntrusion = 27, - SegmentAttributeXY_taperToLeft = 28, - SegmentAttributeXY_taperToRight = 29, - SegmentAttributeXY_taperToCenterLine = 30, - SegmentAttributeXY_parallelParking = 31, - SegmentAttributeXY_headInParking = 32, - SegmentAttributeXY_freeParking = 33, - SegmentAttributeXY_timeRestrictionsOnParking = 34, - SegmentAttributeXY_costToPark = 35, - SegmentAttributeXY_midBlockCurbPresent = 36, - SegmentAttributeXY_unEvenPavementPresent = 37 - /* - * Enumeration is extensible - */ -} e_SegmentAttributeXY; - -/* SegmentAttributeXY */ -typedef long SegmentAttributeXY_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY; -extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1; -asn_struct_free_f SegmentAttributeXY_free; -asn_struct_print_f SegmentAttributeXY_print; -asn_constr_check_f SegmentAttributeXY_constraint; -ber_type_decoder_f SegmentAttributeXY_decode_ber; -der_type_encoder_f SegmentAttributeXY_encode_der; -xer_type_decoder_f SegmentAttributeXY_decode_xer; -xer_type_encoder_f SegmentAttributeXY_encode_xer; -jer_type_encoder_f SegmentAttributeXY_encode_jer; -oer_type_decoder_f SegmentAttributeXY_decode_oer; -oer_type_encoder_f SegmentAttributeXY_encode_oer; -per_type_decoder_f SegmentAttributeXY_decode_uper; -per_type_encoder_f SegmentAttributeXY_encode_uper; -per_type_decoder_f SegmentAttributeXY_decode_aper; -per_type_encoder_f SegmentAttributeXY_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h deleted file mode 100644 index 5f7852d90..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SegmentAttributeXYList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SegmentAttributeXYList_H_ -#define _SegmentAttributeXYList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SegmentAttributeXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SegmentAttributeXYList */ -typedef struct SegmentAttributeXYList { - A_SEQUENCE_OF(SegmentAttributeXY_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SegmentAttributeXYList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList; -extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1; -extern asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[1]; -extern asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeXYList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h deleted file mode 100644 index 1e3602025..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisAccuracy.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SemiMajorAxisAccuracy_H_ -#define _SemiMajorAxisAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMajorAxisAccuracy */ -typedef long SemiMajorAxisAccuracy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy; -asn_struct_free_f SemiMajorAxisAccuracy_free; -asn_struct_print_f SemiMajorAxisAccuracy_print; -asn_constr_check_f SemiMajorAxisAccuracy_constraint; -ber_type_decoder_f SemiMajorAxisAccuracy_decode_ber; -der_type_encoder_f SemiMajorAxisAccuracy_encode_der; -xer_type_decoder_f SemiMajorAxisAccuracy_decode_xer; -xer_type_encoder_f SemiMajorAxisAccuracy_encode_xer; -jer_type_encoder_f SemiMajorAxisAccuracy_encode_jer; -oer_type_decoder_f SemiMajorAxisAccuracy_decode_oer; -oer_type_encoder_f SemiMajorAxisAccuracy_encode_oer; -per_type_decoder_f SemiMajorAxisAccuracy_decode_uper; -per_type_encoder_f SemiMajorAxisAccuracy_encode_uper; -per_type_decoder_f SemiMajorAxisAccuracy_decode_aper; -per_type_encoder_f SemiMajorAxisAccuracy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMajorAxisAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h deleted file mode 100644 index a4da71f26..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMajorAxisOrientation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SemiMajorAxisOrientation_H_ -#define _SemiMajorAxisOrientation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMajorAxisOrientation */ -typedef long SemiMajorAxisOrientation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation; -asn_struct_free_f SemiMajorAxisOrientation_free; -asn_struct_print_f SemiMajorAxisOrientation_print; -asn_constr_check_f SemiMajorAxisOrientation_constraint; -ber_type_decoder_f SemiMajorAxisOrientation_decode_ber; -der_type_encoder_f SemiMajorAxisOrientation_encode_der; -xer_type_decoder_f SemiMajorAxisOrientation_decode_xer; -xer_type_encoder_f SemiMajorAxisOrientation_encode_xer; -jer_type_encoder_f SemiMajorAxisOrientation_encode_jer; -oer_type_decoder_f SemiMajorAxisOrientation_decode_oer; -oer_type_encoder_f SemiMajorAxisOrientation_encode_oer; -per_type_decoder_f SemiMajorAxisOrientation_decode_uper; -per_type_encoder_f SemiMajorAxisOrientation_encode_uper; -per_type_decoder_f SemiMajorAxisOrientation_decode_aper; -per_type_encoder_f SemiMajorAxisOrientation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMajorAxisOrientation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h deleted file mode 100644 index 1e1aeae65..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SemiMinorAxisAccuracy.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SemiMinorAxisAccuracy_H_ -#define _SemiMinorAxisAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMinorAxisAccuracy */ -typedef long SemiMinorAxisAccuracy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy; -asn_struct_free_f SemiMinorAxisAccuracy_free; -asn_struct_print_f SemiMinorAxisAccuracy_print; -asn_constr_check_f SemiMinorAxisAccuracy_constraint; -ber_type_decoder_f SemiMinorAxisAccuracy_decode_ber; -der_type_encoder_f SemiMinorAxisAccuracy_encode_der; -xer_type_decoder_f SemiMinorAxisAccuracy_decode_xer; -xer_type_encoder_f SemiMinorAxisAccuracy_encode_xer; -jer_type_encoder_f SemiMinorAxisAccuracy_encode_jer; -oer_type_decoder_f SemiMinorAxisAccuracy_decode_oer; -oer_type_encoder_f SemiMinorAxisAccuracy_encode_oer; -per_type_decoder_f SemiMinorAxisAccuracy_decode_uper; -per_type_encoder_f SemiMinorAxisAccuracy_encode_uper; -per_type_decoder_f SemiMinorAxisAccuracy_decode_aper; -per_type_encoder_f SemiMinorAxisAccuracy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMinorAxisAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h deleted file mode 100644 index 3c99479f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ShapePointSet.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ShapePointSet_H_ -#define _ShapePointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "NodeListXY.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* ShapePointSet */ -typedef struct ShapePointSet { - struct Position3D *anchor; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - DirectionOfUse_t *directionality; /* OPTIONAL */ - NodeListXY_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ShapePointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; -extern asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1; -extern asn_TYPE_member_t asn_MBR_ShapePointSet_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ShapePointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h deleted file mode 100644 index c02578caf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignPrority.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignPrority_H_ -#define _SignPrority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignPrority */ -typedef long SignPrority_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SignPrority_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SignPrority; -asn_struct_free_f SignPrority_free; -asn_struct_print_f SignPrority_print; -asn_constr_check_f SignPrority_constraint; -ber_type_decoder_f SignPrority_decode_ber; -der_type_encoder_f SignPrority_encode_der; -xer_type_decoder_f SignPrority_decode_xer; -xer_type_encoder_f SignPrority_encode_xer; -jer_type_encoder_f SignPrority_encode_jer; -oer_type_decoder_f SignPrority_decode_oer; -oer_type_encoder_f SignPrority_encode_oer; -per_type_decoder_f SignPrority_decode_uper; -per_type_encoder_f SignPrority_encode_uper; -per_type_decoder_f SignPrority_decode_aper; -per_type_encoder_f SignPrority_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignPrority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h deleted file mode 100644 index 5308c92b7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalControlZone.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalControlZone_H_ -#define _SignalControlZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RegionalExtension.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalControlZone */ -typedef struct SignalControlZone { - Reg_SignalControlZone_t zone; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalControlZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalControlZone_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalControlZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h deleted file mode 100644 index 0f5ea9eef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalGroupID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalGroupID_H_ -#define _SignalGroupID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalGroupID */ -typedef long SignalGroupID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; -asn_struct_free_f SignalGroupID_free; -asn_struct_print_f SignalGroupID_print; -asn_constr_check_f SignalGroupID_constraint; -ber_type_decoder_f SignalGroupID_decode_ber; -der_type_encoder_f SignalGroupID_encode_der; -xer_type_decoder_f SignalGroupID_decode_xer; -xer_type_encoder_f SignalGroupID_encode_xer; -jer_type_encoder_f SignalGroupID_encode_jer; -oer_type_decoder_f SignalGroupID_decode_oer; -oer_type_encoder_f SignalGroupID_encode_oer; -per_type_decoder_f SignalGroupID_decode_uper; -per_type_encoder_f SignalGroupID_encode_uper; -per_type_decoder_f SignalGroupID_decode_aper; -per_type_encoder_f SignalGroupID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalGroupID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h deleted file mode 100644 index 063808245..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalHeadLocation_H_ -#define _SignalHeadLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointXY.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalHeadLocation */ -typedef struct SignalHeadLocation { - NodeOffsetPointXY_t node; - SignalGroupID_t signalGroupID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalHeadLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h deleted file mode 100644 index 7f827c8fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalHeadLocationList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalHeadLocationList_H_ -#define _SignalHeadLocationList_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 SignalHeadLocation; - -/* SignalHeadLocationList */ -typedef struct SignalHeadLocationList { - A_SEQUENCE_OF(struct SignalHeadLocation) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocationList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; -extern asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalHeadLocationList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h deleted file mode 100644 index af28c49eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalReqScheme.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalReqScheme_H_ -#define _SignalReqScheme_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalReqScheme */ -typedef OCTET_STRING_t SignalReqScheme_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; -asn_struct_free_f SignalReqScheme_free; -asn_struct_print_f SignalReqScheme_print; -asn_constr_check_f SignalReqScheme_constraint; -ber_type_decoder_f SignalReqScheme_decode_ber; -der_type_encoder_f SignalReqScheme_encode_der; -xer_type_decoder_f SignalReqScheme_decode_xer; -xer_type_encoder_f SignalReqScheme_encode_xer; -jer_type_encoder_f SignalReqScheme_encode_jer; -oer_type_decoder_f SignalReqScheme_decode_oer; -oer_type_encoder_f SignalReqScheme_encode_oer; -per_type_decoder_f SignalReqScheme_decode_uper; -per_type_encoder_f SignalReqScheme_encode_uper; -per_type_decoder_f SignalReqScheme_decode_aper; -per_type_encoder_f SignalReqScheme_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalReqScheme_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h deleted file mode 100644 index 5d984ae13..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequest.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalRequest_H_ -#define _SignalRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IntersectionReferenceID.h" -#include "RequestID.h" -#include "PriorityRequestType.h" -#include "IntersectionAccessPoint.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionAccessPoint; -struct Reg_SignalRequest; - -/* SignalRequest */ -typedef struct SignalRequest { - IntersectionReferenceID_t id; - RequestID_t requestID; - PriorityRequestType_t requestType; - IntersectionAccessPoint_t inBoundLane; - struct IntersectionAccessPoint *outBoundLane; /* OPTIONAL */ - struct SignalRequest__regional { - A_SEQUENCE_OF(struct Reg_SignalRequest) 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; -} SignalRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequest_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h deleted file mode 100644 index 845632c1c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalRequestList_H_ -#define _SignalRequestList_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 SignalRequestPackage; - -/* SignalRequestList */ -typedef struct SignalRequestList { - A_SEQUENCE_OF(struct SignalRequestPackage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequestList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestList; -extern asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequestList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h deleted file mode 100644 index fbf2bc7ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestMessage.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalRequestMessage_H_ -#define _SignalRequestMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "Common_MsgCount.h" -#include "RequestorDescription.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalRequestList; -struct Reg_SignalRequestMessage; - -/* SignalRequestMessage */ -typedef struct SignalRequestMessage { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t second; - Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ - struct SignalRequestList *requests; /* OPTIONAL */ - RequestorDescription_t requestor; - struct SignalRequestMessage__regional { - A_SEQUENCE_OF(struct Reg_SignalRequestMessage) 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; -} SignalRequestMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequestMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h deleted file mode 100644 index 01d2d3ed8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequestPackage.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalRequestPackage_H_ -#define _SignalRequestPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SignalRequest.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_SignalRequestPackage; - -/* SignalRequestPackage */ -typedef struct SignalRequestPackage { - SignalRequest_t request; - MinuteOfTheYear_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DSecond_t *duration; /* OPTIONAL */ - struct SignalRequestPackage__regional { - A_SEQUENCE_OF(struct Reg_SignalRequestPackage) 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; -} SignalRequestPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequestPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h deleted file mode 100644 index 9d05a6752..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalRequesterInfo.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalRequesterInfo_H_ -#define _SignalRequesterInfo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleID.h" -#include "RequestID.h" -#include "Common_MsgCount.h" -#include "BasicVehicleRole.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RequestorType; - -/* SignalRequesterInfo */ -typedef struct SignalRequesterInfo { - VehicleID_t id; - RequestID_t request; - Common_MsgCount_t sequenceNumber; - BasicVehicleRole_t *role; /* OPTIONAL */ - struct RequestorType *typeData; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequesterInfo_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequesterInfo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h deleted file mode 100644 index 814eedd4a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatus.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalStatus_H_ -#define _SignalStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "IntersectionReferenceID.h" -#include "SignalStatusPackageList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_SignalStatus; - -/* SignalStatus */ -typedef struct SignalStatus { - Common_MsgCount_t sequenceNumber; - IntersectionReferenceID_t id; - SignalStatusPackageList_t sigStatus; - struct SignalStatus__regional { - A_SEQUENCE_OF(struct Reg_SignalStatus) 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; -} SignalStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatus_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h deleted file mode 100644 index 10e86d63a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalStatusList_H_ -#define _SignalStatusList_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 SignalStatus; - -/* SignalStatusList */ -typedef struct SignalStatusList { - A_SEQUENCE_OF(struct SignalStatus) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalStatusList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusList; -extern asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalStatusList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h deleted file mode 100644 index ea87e3ce7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusMessage.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalStatusMessage_H_ -#define _SignalStatusMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "Common_MsgCount.h" -#include "SignalStatusList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_SignalStatusMessage; - -/* SignalStatusMessage */ -typedef struct SignalStatusMessage { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t second; - Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ - SignalStatusList_t status; - struct SignalStatusMessage__regional { - A_SEQUENCE_OF(struct Reg_SignalStatusMessage) 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; -} SignalStatusMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalStatusMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h deleted file mode 100644 index 9351d7de5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackage.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalStatusPackage_H_ -#define _SignalStatusPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IntersectionAccessPoint.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "PrioritizationResponseStatus.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalRequesterInfo; -struct IntersectionAccessPoint; -struct Reg_SignalStatusPackage; - -/* SignalStatusPackage */ -typedef struct SignalStatusPackage { - struct SignalRequesterInfo *requester; /* OPTIONAL */ - IntersectionAccessPoint_t inboundOn; - struct IntersectionAccessPoint *outboundOn; /* OPTIONAL */ - MinuteOfTheYear_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DSecond_t *duration; /* OPTIONAL */ - PrioritizationResponseStatus_t status; - struct SignalStatusPackage__regional { - A_SEQUENCE_OF(struct Reg_SignalStatusPackage) 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; -} SignalStatusPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[8]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalStatusPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h deleted file mode 100644 index 043cbe1df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SignalStatusPackageList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SignalStatusPackageList_H_ -#define _SignalStatusPackageList_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 SignalStatusPackage; - -/* SignalStatusPackageList */ -typedef struct SignalStatusPackageList { - A_SEQUENCE_OF(struct SignalStatusPackage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalStatusPackageList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList; -extern asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalStatusPackageList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h deleted file mode 100644 index d24a8bcaa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SirenInUse.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SirenInUse_H_ -#define _SirenInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SirenInUse { - SirenInUse_unavailable = 0, - SirenInUse_notInUse = 1, - SirenInUse_inUse = 2, - SirenInUse_reserved = 3 -} e_SirenInUse; - -/* SirenInUse */ -typedef long SirenInUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SirenInUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; -extern const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1; -asn_struct_free_f SirenInUse_free; -asn_struct_print_f SirenInUse_print; -asn_constr_check_f SirenInUse_constraint; -ber_type_decoder_f SirenInUse_decode_ber; -der_type_encoder_f SirenInUse_encode_der; -xer_type_decoder_f SirenInUse_decode_xer; -xer_type_encoder_f SirenInUse_encode_xer; -jer_type_encoder_f SirenInUse_encode_jer; -oer_type_decoder_f SirenInUse_decode_oer; -oer_type_encoder_f SirenInUse_encode_oer; -per_type_decoder_f SirenInUse_decode_uper; -per_type_encoder_f SirenInUse_encode_uper; -per_type_decoder_f SirenInUse_decode_aper; -per_type_encoder_f SirenInUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SirenInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h deleted file mode 100644 index 26723318d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Snapshot.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Snapshot_H_ -#define _Snapshot_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "FullPositionVector.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleSafetyExtensions; -struct VehicleStatus; - -/* Snapshot */ -typedef struct Snapshot { - FullPositionVector_t thePosition; - struct VehicleSafetyExtensions *safetyExt; /* OPTIONAL */ - struct VehicleStatus *dataSet; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Snapshot_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Snapshot; -extern asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1; -extern asn_TYPE_member_t asn_MBR_Snapshot_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Snapshot_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h deleted file mode 100644 index b6371ef0c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotDistance.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SnapshotDistance_H_ -#define _SnapshotDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossDistance.h" -#include "GrossSpeed.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotDistance */ -typedef struct SnapshotDistance { - GrossDistance_t distance1; - GrossSpeed_t speed1; - GrossDistance_t distance2; - GrossSpeed_t speed2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotDistance_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; -extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1; -extern asn_TYPE_member_t asn_MBR_SnapshotDistance_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h deleted file mode 100644 index fa8e83995..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SnapshotTime.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SnapshotTime_H_ -#define _SnapshotTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossSpeed.h" -#include "SecondOfTime.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotTime */ -typedef struct SnapshotTime { - GrossSpeed_t speed1; - SecondOfTime_t time1; - GrossSpeed_t speed2; - SecondOfTime_t time2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; -extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1; -extern asn_TYPE_member_t asn_MBR_SnapshotTime_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h deleted file mode 100644 index a2083c435..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpecialVehicleExtensions.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpecialVehicleExtensions_H_ -#define _SpecialVehicleExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EmergencyDetails; -struct EventDescription; -struct TrailerData; - -/* SpecialVehicleExtensions */ -typedef struct SpecialVehicleExtensions { - struct EmergencyDetails *vehicleAlerts; /* OPTIONAL */ - struct EventDescription *description; /* OPTIONAL */ - struct TrailerData *trailers; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpecialVehicleExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpecialVehicleExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h deleted file mode 100644 index e1e794315..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Speed.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Speed_H_ -#define _Speed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Speed */ -typedef long Speed_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Speed_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Speed; -asn_struct_free_f Speed_free; -asn_struct_print_f Speed_print; -asn_constr_check_f Speed_constraint; -ber_type_decoder_f Speed_decode_ber; -der_type_encoder_f Speed_encode_der; -xer_type_decoder_f Speed_decode_xer; -xer_type_encoder_f Speed_encode_xer; -jer_type_encoder_f Speed_encode_jer; -oer_type_decoder_f Speed_decode_oer; -oer_type_encoder_f Speed_encode_oer; -per_type_decoder_f Speed_decode_uper; -per_type_encoder_f Speed_encode_uper; -per_type_decoder_f Speed_decode_aper; -per_type_encoder_f Speed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Speed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h deleted file mode 100644 index 762d8fb46..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedAdvice.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedAdvice_H_ -#define _SpeedAdvice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedAdvice */ -typedef long SpeedAdvice_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; -asn_struct_free_f SpeedAdvice_free; -asn_struct_print_f SpeedAdvice_print; -asn_constr_check_f SpeedAdvice_constraint; -ber_type_decoder_f SpeedAdvice_decode_ber; -der_type_encoder_f SpeedAdvice_encode_der; -xer_type_decoder_f SpeedAdvice_decode_xer; -xer_type_encoder_f SpeedAdvice_encode_xer; -jer_type_encoder_f SpeedAdvice_encode_jer; -oer_type_decoder_f SpeedAdvice_decode_oer; -oer_type_encoder_f SpeedAdvice_encode_oer; -per_type_decoder_f SpeedAdvice_decode_uper; -per_type_encoder_f SpeedAdvice_encode_uper; -per_type_decoder_f SpeedAdvice_decode_aper; -per_type_encoder_f SpeedAdvice_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedAdvice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h deleted file mode 100644 index afeef9708..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedConfidence.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedConfidence_H_ -#define _SpeedConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedConfidence { - SpeedConfidence_unavailable = 0, - SpeedConfidence_prec100ms = 1, - SpeedConfidence_prec10ms = 2, - SpeedConfidence_prec5ms = 3, - SpeedConfidence_prec1ms = 4, - SpeedConfidence_prec0_1ms = 5, - SpeedConfidence_prec0_05ms = 6, - SpeedConfidence_prec0_01ms = 7 -} e_SpeedConfidence; - -/* SpeedConfidence */ -typedef long SpeedConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1; -asn_struct_free_f SpeedConfidence_free; -asn_struct_print_f SpeedConfidence_print; -asn_constr_check_f SpeedConfidence_constraint; -ber_type_decoder_f SpeedConfidence_decode_ber; -der_type_encoder_f SpeedConfidence_encode_der; -xer_type_decoder_f SpeedConfidence_decode_xer; -xer_type_encoder_f SpeedConfidence_encode_xer; -jer_type_encoder_f SpeedConfidence_encode_jer; -oer_type_decoder_f SpeedConfidence_decode_oer; -oer_type_encoder_f SpeedConfidence_encode_oer; -per_type_decoder_f SpeedConfidence_decode_uper; -per_type_encoder_f SpeedConfidence_encode_uper; -per_type_decoder_f SpeedConfidence_decode_aper; -per_type_encoder_f SpeedConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h deleted file mode 100644 index 092cda89d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimit.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedLimit_H_ -#define _SpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedLimit__Member__item_PR { - SpeedLimit__Member__item_PR_NOTHING, /* No components present */ - SpeedLimit__Member__item_PR_itis, - SpeedLimit__Member__item_PR_text -} SpeedLimit__Member__item_PR; - -/* Forward definitions */ -typedef struct SpeedLimit__Member { - struct SpeedLimit__Member__item { - SpeedLimit__Member__item_PR present; - union SpeedLimit__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimit__Member; - -/* SpeedLimit */ -typedef struct SpeedLimit { - A_SEQUENCE_OF(SpeedLimit__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; -extern asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedLimit_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h deleted file mode 100644 index 50be68c00..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedLimitList_H_ -#define _SpeedLimitList_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 RegulatorySpeedLimit; - -/* SpeedLimitList */ -typedef struct SpeedLimitList { - A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimitList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; -extern asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedLimitList_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimitList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h deleted file mode 100644 index 3ecede65d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedLimitType.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedLimitType_H_ -#define _SpeedLimitType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedLimitType { - SpeedLimitType_unknown = 0, - SpeedLimitType_maxSpeedInSchoolZone = 1, - SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, - SpeedLimitType_maxSpeedInConstructionZone = 3, - SpeedLimitType_vehicleMinSpeed = 4, - SpeedLimitType_vehicleMaxSpeed = 5, - SpeedLimitType_vehicleNightMaxSpeed = 6, - SpeedLimitType_truckMinSpeed = 7, - SpeedLimitType_truckMaxSpeed = 8, - SpeedLimitType_truckNightMaxSpeed = 9, - SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, - SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, - SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 - /* - * Enumeration is extensible - */ -} e_SpeedLimitType; - -/* SpeedLimitType */ -typedef long SpeedLimitType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; -extern const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1; -asn_struct_free_f SpeedLimitType_free; -asn_struct_print_f SpeedLimitType_print; -asn_constr_check_f SpeedLimitType_constraint; -ber_type_decoder_f SpeedLimitType_decode_ber; -der_type_encoder_f SpeedLimitType_encode_der; -xer_type_decoder_f SpeedLimitType_decode_xer; -xer_type_encoder_f SpeedLimitType_encode_xer; -jer_type_encoder_f SpeedLimitType_encode_jer; -oer_type_decoder_f SpeedLimitType_decode_oer; -oer_type_encoder_f SpeedLimitType_encode_oer; -per_type_decoder_f SpeedLimitType_decode_uper; -per_type_encoder_f SpeedLimitType_encode_uper; -per_type_decoder_f SpeedLimitType_decode_aper; -per_type_encoder_f SpeedLimitType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimitType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h deleted file mode 100644 index 4c4c122ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfile.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedProfile_H_ -#define _SpeedProfile_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedProfileMeasurementList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfile */ -typedef struct SpeedProfile { - SpeedProfileMeasurementList_t speedReports; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedProfile_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfile; -extern asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedProfile_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfile_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h deleted file mode 100644 index df04dbca0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurement.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedProfileMeasurement_H_ -#define _SpeedProfileMeasurement_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossSpeed.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfileMeasurement */ -typedef GrossSpeed_t SpeedProfileMeasurement_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement; -asn_struct_free_f SpeedProfileMeasurement_free; -asn_struct_print_f SpeedProfileMeasurement_print; -asn_constr_check_f SpeedProfileMeasurement_constraint; -ber_type_decoder_f SpeedProfileMeasurement_decode_ber; -der_type_encoder_f SpeedProfileMeasurement_encode_der; -xer_type_decoder_f SpeedProfileMeasurement_decode_xer; -xer_type_encoder_f SpeedProfileMeasurement_encode_xer; -jer_type_encoder_f SpeedProfileMeasurement_encode_jer; -oer_type_decoder_f SpeedProfileMeasurement_decode_oer; -oer_type_encoder_f SpeedProfileMeasurement_encode_oer; -per_type_decoder_f SpeedProfileMeasurement_decode_uper; -per_type_encoder_f SpeedProfileMeasurement_encode_uper; -per_type_decoder_f SpeedProfileMeasurement_decode_aper; -per_type_encoder_f SpeedProfileMeasurement_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfileMeasurement_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h deleted file mode 100644 index 7586f003b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedProfileMeasurementList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedProfileMeasurementList_H_ -#define _SpeedProfileMeasurementList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedProfileMeasurement.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfileMeasurementList */ -typedef struct SpeedProfileMeasurementList { - A_SEQUENCE_OF(SpeedProfileMeasurement_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedProfileMeasurementList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList; -extern asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfileMeasurementList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h deleted file mode 100644 index 4b0667a37..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SpeedandHeadingandThrottleConfidence.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SpeedandHeadingandThrottleConfidence_H_ -#define _SpeedandHeadingandThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingConfidence.h" -#include "SpeedConfidence.h" -#include "ThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedandHeadingandThrottleConfidence */ -typedef struct SpeedandHeadingandThrottleConfidence { - HeadingConfidence_t heading; - SpeedConfidence_t speed; - ThrottleConfidence_t throttle; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedandHeadingandThrottleConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h deleted file mode 100644 index b9f90c5bf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/StabilityControlStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _StabilityControlStatus_H_ -#define _StabilityControlStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum StabilityControlStatus { - StabilityControlStatus_unavailable = 0, - StabilityControlStatus_off = 1, - StabilityControlStatus_on = 2, - StabilityControlStatus_engaged = 3 -} e_StabilityControlStatus; - -/* StabilityControlStatus */ -typedef long StabilityControlStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; -extern const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1; -asn_struct_free_f StabilityControlStatus_free; -asn_struct_print_f StabilityControlStatus_print; -asn_constr_check_f StabilityControlStatus_constraint; -ber_type_decoder_f StabilityControlStatus_decode_ber; -der_type_encoder_f StabilityControlStatus_encode_der; -xer_type_decoder_f StabilityControlStatus_decode_xer; -xer_type_encoder_f StabilityControlStatus_encode_xer; -jer_type_encoder_f StabilityControlStatus_encode_jer; -oer_type_decoder_f StabilityControlStatus_decode_oer; -oer_type_encoder_f StabilityControlStatus_encode_oer; -per_type_decoder_f StabilityControlStatus_decode_uper; -per_type_encoder_f StabilityControlStatus_encode_uper; -per_type_decoder_f StabilityControlStatus_decode_aper; -per_type_encoder_f StabilityControlStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StabilityControlStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h deleted file mode 100644 index df8faaa6b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/StationID.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _StationID_H_ -#define _StationID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* StationID */ -typedef unsigned long StationID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_StationID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_StationID; -extern const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1; -asn_struct_free_f StationID_free; -asn_struct_print_f StationID_print; -asn_constr_check_f StationID_constraint; -ber_type_decoder_f StationID_decode_ber; -der_type_encoder_f StationID_encode_der; -xer_type_decoder_f StationID_decode_xer; -xer_type_encoder_f StationID_encode_xer; -jer_type_encoder_f StationID_encode_jer; -oer_type_decoder_f StationID_decode_oer; -oer_type_encoder_f StationID_encode_oer; -per_type_decoder_f StationID_decode_uper; -per_type_encoder_f StationID_encode_uper; -per_type_decoder_f StationID_decode_aper; -per_type_encoder_f StationID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StationID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h deleted file mode 100644 index 7e0886bd5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleLubePressure.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SteeringAxleLubePressure_H_ -#define _SteeringAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleLubePressure */ -typedef long SteeringAxleLubePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; -asn_struct_free_f SteeringAxleLubePressure_free; -asn_struct_print_f SteeringAxleLubePressure_print; -asn_constr_check_f SteeringAxleLubePressure_constraint; -ber_type_decoder_f SteeringAxleLubePressure_decode_ber; -der_type_encoder_f SteeringAxleLubePressure_encode_der; -xer_type_decoder_f SteeringAxleLubePressure_decode_xer; -xer_type_encoder_f SteeringAxleLubePressure_encode_xer; -jer_type_encoder_f SteeringAxleLubePressure_encode_jer; -oer_type_decoder_f SteeringAxleLubePressure_decode_oer; -oer_type_encoder_f SteeringAxleLubePressure_encode_oer; -per_type_decoder_f SteeringAxleLubePressure_decode_uper; -per_type_encoder_f SteeringAxleLubePressure_encode_uper; -per_type_decoder_f SteeringAxleLubePressure_decode_aper; -per_type_encoder_f SteeringAxleLubePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h deleted file mode 100644 index b3af8f6b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringAxleTemperature.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SteeringAxleTemperature_H_ -#define _SteeringAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleTemperature */ -typedef long SteeringAxleTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; -asn_struct_free_f SteeringAxleTemperature_free; -asn_struct_print_f SteeringAxleTemperature_print; -asn_constr_check_f SteeringAxleTemperature_constraint; -ber_type_decoder_f SteeringAxleTemperature_decode_ber; -der_type_encoder_f SteeringAxleTemperature_encode_der; -xer_type_decoder_f SteeringAxleTemperature_decode_xer; -xer_type_encoder_f SteeringAxleTemperature_encode_xer; -jer_type_encoder_f SteeringAxleTemperature_encode_jer; -oer_type_decoder_f SteeringAxleTemperature_decode_oer; -oer_type_encoder_f SteeringAxleTemperature_encode_oer; -per_type_decoder_f SteeringAxleTemperature_decode_uper; -per_type_encoder_f SteeringAxleTemperature_encode_uper; -per_type_decoder_f SteeringAxleTemperature_decode_aper; -per_type_encoder_f SteeringAxleTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h deleted file mode 100644 index 7e5f3e453..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngle.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SteeringWheelAngle_H_ -#define _SteeringWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngle */ -typedef long SteeringWheelAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; -asn_struct_free_f SteeringWheelAngle_free; -asn_struct_print_f SteeringWheelAngle_print; -asn_constr_check_f SteeringWheelAngle_constraint; -ber_type_decoder_f SteeringWheelAngle_decode_ber; -der_type_encoder_f SteeringWheelAngle_encode_der; -xer_type_decoder_f SteeringWheelAngle_decode_xer; -xer_type_encoder_f SteeringWheelAngle_encode_xer; -jer_type_encoder_f SteeringWheelAngle_encode_jer; -oer_type_decoder_f SteeringWheelAngle_decode_oer; -oer_type_encoder_f SteeringWheelAngle_encode_oer; -per_type_decoder_f SteeringWheelAngle_decode_uper; -per_type_encoder_f SteeringWheelAngle_encode_uper; -per_type_decoder_f SteeringWheelAngle_decode_aper; -per_type_encoder_f SteeringWheelAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h deleted file mode 100644 index 649017014..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleConfidence.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SteeringWheelAngleConfidence_H_ -#define _SteeringWheelAngleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SteeringWheelAngleConfidence { - SteeringWheelAngleConfidence_unavailable = 0, - SteeringWheelAngleConfidence_prec2deg = 1, - SteeringWheelAngleConfidence_prec1deg = 2, - SteeringWheelAngleConfidence_prec0_02deg = 3 -} e_SteeringWheelAngleConfidence; - -/* SteeringWheelAngleConfidence */ -typedef long SteeringWheelAngleConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1; -asn_struct_free_f SteeringWheelAngleConfidence_free; -asn_struct_print_f SteeringWheelAngleConfidence_print; -asn_constr_check_f SteeringWheelAngleConfidence_constraint; -ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; -der_type_encoder_f SteeringWheelAngleConfidence_encode_der; -xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; -xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; -jer_type_encoder_f SteeringWheelAngleConfidence_encode_jer; -oer_type_decoder_f SteeringWheelAngleConfidence_decode_oer; -oer_type_encoder_f SteeringWheelAngleConfidence_encode_oer; -per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; -per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; -per_type_decoder_f SteeringWheelAngleConfidence_decode_aper; -per_type_encoder_f SteeringWheelAngleConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h deleted file mode 100644 index 675477136..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SteeringWheelAngleRateOfChange.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SteeringWheelAngleRateOfChange_H_ -#define _SteeringWheelAngleRateOfChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngleRateOfChange */ -typedef long SteeringWheelAngleRateOfChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; -asn_struct_free_f SteeringWheelAngleRateOfChange_free; -asn_struct_print_f SteeringWheelAngleRateOfChange_print; -asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; -ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; -der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; -xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; -xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; -jer_type_encoder_f SteeringWheelAngleRateOfChange_encode_jer; -oer_type_decoder_f SteeringWheelAngleRateOfChange_decode_oer; -oer_type_encoder_f SteeringWheelAngleRateOfChange_encode_oer; -per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; -per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; -per_type_decoder_f SteeringWheelAngleRateOfChange_decode_aper; -per_type_encoder_f SteeringWheelAngleRateOfChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleRateOfChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h deleted file mode 100644 index 2ffb2313e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SummerTime.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SummerTime_H_ -#define _SummerTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SummerTime { - SummerTime_notInSummerTime = 0, - SummerTime_inSummerTime = 1 -} e_SummerTime; - -/* SummerTime */ -typedef long SummerTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SummerTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SummerTime; -extern const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1; -asn_struct_free_f SummerTime_free; -asn_struct_print_f SummerTime_print; -asn_constr_check_f SummerTime_constraint; -ber_type_decoder_f SummerTime_decode_ber; -der_type_encoder_f SummerTime_encode_der; -xer_type_decoder_f SummerTime_decode_xer; -xer_type_encoder_f SummerTime_encode_xer; -jer_type_encoder_f SummerTime_encode_jer; -oer_type_decoder_f SummerTime_decode_oer; -oer_type_encoder_f SummerTime_encode_oer; -per_type_decoder_f SummerTime_decode_uper; -per_type_encoder_f SummerTime_encode_uper; -per_type_decoder_f SummerTime_decode_aper; -per_type_encoder_f SummerTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SummerTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h deleted file mode 100644 index 32db7cef5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SunSensor.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SunSensor_H_ -#define _SunSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SunSensor */ -typedef long SunSensor_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SunSensor_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SunSensor; -asn_struct_free_f SunSensor_free; -asn_struct_print_f SunSensor_print; -asn_constr_check_f SunSensor_constraint; -ber_type_decoder_f SunSensor_decode_ber; -der_type_encoder_f SunSensor_encode_der; -xer_type_decoder_f SunSensor_decode_xer; -xer_type_encoder_f SunSensor_encode_xer; -jer_type_encoder_f SunSensor_encode_jer; -oer_type_decoder_f SunSensor_decode_oer; -oer_type_encoder_f SunSensor_encode_oer; -per_type_decoder_f SunSensor_decode_uper; -per_type_encoder_f SunSensor_encode_uper; -per_type_decoder_f SunSensor_decode_aper; -per_type_encoder_f SunSensor_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SunSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h deleted file mode 100644 index 0613f2274..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/SupplementalVehicleExtensions.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _SupplementalVehicleExtensions_H_ -#define _SupplementalVehicleExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleClass.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleClassification; -struct VehicleData; -struct WeatherReport; -struct WeatherProbe; -struct ObstacleDetection; -struct DisabledVehicle; -struct SpeedProfile; -struct RTCMPackage; -struct Reg_SupplementalVehicleExtensions; - -/* SupplementalVehicleExtensions */ -typedef struct SupplementalVehicleExtensions { - BasicVehicleClass_t *classification; /* OPTIONAL */ - struct VehicleClassification *classDetails; /* OPTIONAL */ - struct VehicleData *vehicleData; /* OPTIONAL */ - struct WeatherReport *weatherReport; /* OPTIONAL */ - struct WeatherProbe *weatherProbe; /* OPTIONAL */ - struct ObstacleDetection *obstacle; /* OPTIONAL */ - struct DisabledVehicle *status; /* OPTIONAL */ - struct SpeedProfile *speedProfile; /* OPTIONAL */ - struct RTCMPackage *theRTCM; /* OPTIONAL */ - struct SupplementalVehicleExtensions__regional { - A_SEQUENCE_OF(struct Reg_SupplementalVehicleExtensions) 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; -} SupplementalVehicleExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[10]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SupplementalVehicleExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h deleted file mode 100644 index 8c6b5c1ea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TemporaryID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TemporaryID_H_ -#define _TemporaryID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TemporaryID */ -typedef OCTET_STRING_t TemporaryID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TemporaryID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; -asn_struct_free_f TemporaryID_free; -asn_struct_print_f TemporaryID_print; -asn_constr_check_f TemporaryID_constraint; -ber_type_decoder_f TemporaryID_decode_ber; -der_type_encoder_f TemporaryID_encode_der; -xer_type_decoder_f TemporaryID_decode_xer; -xer_type_encoder_f TemporaryID_encode_xer; -jer_type_encoder_f TemporaryID_encode_jer; -oer_type_decoder_f TemporaryID_decode_oer; -oer_type_encoder_f TemporaryID_encode_oer; -per_type_decoder_f TemporaryID_decode_uper; -per_type_encoder_f TemporaryID_encode_uper; -per_type_decoder_f TemporaryID_decode_aper; -per_type_encoder_f TemporaryID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TemporaryID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h deleted file mode 100644 index 3c6bffef1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TenthSecond.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TenthSecond_H_ -#define _TenthSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TenthSecond */ -typedef long TenthSecond_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TenthSecond_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; -asn_struct_free_f TenthSecond_free; -asn_struct_print_f TenthSecond_print; -asn_constr_check_f TenthSecond_constraint; -ber_type_decoder_f TenthSecond_decode_ber; -der_type_encoder_f TenthSecond_encode_der; -xer_type_decoder_f TenthSecond_decode_xer; -xer_type_encoder_f TenthSecond_encode_xer; -jer_type_encoder_f TenthSecond_encode_jer; -oer_type_decoder_f TenthSecond_decode_oer; -oer_type_encoder_f TenthSecond_encode_oer; -per_type_decoder_f TenthSecond_decode_uper; -per_type_encoder_f TenthSecond_encode_uper; -per_type_decoder_f TenthSecond_decode_aper; -per_type_encoder_f TenthSecond_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TenthSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h deleted file mode 100644 index d56fb09ff..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermDistance.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TermDistance_H_ -#define _TermDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermDistance */ -typedef long TermDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TermDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TermDistance; -asn_struct_free_f TermDistance_free; -asn_struct_print_f TermDistance_print; -asn_constr_check_f TermDistance_constraint; -ber_type_decoder_f TermDistance_decode_ber; -der_type_encoder_f TermDistance_encode_der; -xer_type_decoder_f TermDistance_decode_xer; -xer_type_encoder_f TermDistance_encode_xer; -jer_type_encoder_f TermDistance_encode_jer; -oer_type_decoder_f TermDistance_decode_oer; -oer_type_encoder_f TermDistance_encode_oer; -per_type_decoder_f TermDistance_decode_uper; -per_type_encoder_f TermDistance_encode_uper; -per_type_decoder_f TermDistance_decode_aper; -per_type_encoder_f TermDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h deleted file mode 100644 index 71e251396..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TermTime.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TermTime_H_ -#define _TermTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermTime */ -typedef long TermTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TermTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TermTime; -asn_struct_free_f TermTime_free; -asn_struct_print_f TermTime_print; -asn_constr_check_f TermTime_constraint; -ber_type_decoder_f TermTime_decode_ber; -der_type_encoder_f TermTime_encode_der; -xer_type_decoder_f TermTime_decode_xer; -xer_type_encoder_f TermTime_encode_xer; -jer_type_encoder_f TermTime_encode_jer; -oer_type_decoder_f TermTime_decode_oer; -oer_type_encoder_f TermTime_encode_oer; -per_type_decoder_f TermTime_decode_uper; -per_type_encoder_f TermTime_encode_uper; -per_type_decoder_f TermTime_decode_aper; -per_type_encoder_f TermTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h deleted file mode 100644 index 0fa1b55b7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage00.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage00" - * found in "J2735-TestMessage00.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage00_H_ -#define _TestMessage00_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage00; - -/* TestMessage00 */ -typedef struct TestMessage00 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage00 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage00_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage00; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage00_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage00_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h deleted file mode 100644 index 3a0a3d41e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage01.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage01" - * found in "J2735-TestMessage01.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage01_H_ -#define _TestMessage01_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage01; - -/* TestMessage01 */ -typedef struct TestMessage01 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage01 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage01_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage01; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage01_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage01_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h deleted file mode 100644 index 311047d42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage02.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage02" - * found in "J2735-TestMessage02.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage02_H_ -#define _TestMessage02_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage02; - -/* TestMessage02 */ -typedef struct TestMessage02 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage02 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage02_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage02; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage02_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage02_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h deleted file mode 100644 index 18eb5f037..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage03.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage03" - * found in "J2735-TestMessage03.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage03_H_ -#define _TestMessage03_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage03; - -/* TestMessage03 */ -typedef struct TestMessage03 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage03 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage03_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage03; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage03_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage03_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h deleted file mode 100644 index db8c1f16f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage04.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage04" - * found in "J2735-TestMessage04.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage04_H_ -#define _TestMessage04_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage04; - -/* TestMessage04 */ -typedef struct TestMessage04 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage04 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage04_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage04; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage04_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage04_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h deleted file mode 100644 index 410efb258..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage05.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage05" - * found in "J2735-TestMessage05.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage05_H_ -#define _TestMessage05_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage05; - -/* TestMessage05 */ -typedef struct TestMessage05 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage05 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage05_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage05; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage05_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage05_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h deleted file mode 100644 index 883d2b24a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage06.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage06" - * found in "J2735-TestMessage06.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage06_H_ -#define _TestMessage06_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage06; - -/* TestMessage06 */ -typedef struct TestMessage06 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage06 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage06_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage06; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage06_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage06_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h deleted file mode 100644 index df20a799d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage07.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage07" - * found in "J2735-TestMessage07.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage07_H_ -#define _TestMessage07_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage07; - -/* TestMessage07 */ -typedef struct TestMessage07 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage07 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage07_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage07; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage07_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage07_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h deleted file mode 100644 index 463651549..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage08.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage08" - * found in "J2735-TestMessage08.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage08_H_ -#define _TestMessage08_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage08; - -/* TestMessage08 */ -typedef struct TestMessage08 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage08 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage08_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage08; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage08_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage08_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h deleted file mode 100644 index de124a4e8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage09.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage09" - * found in "J2735-TestMessage09.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage09_H_ -#define _TestMessage09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage09; - -/* TestMessage09 */ -typedef struct TestMessage09 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage09 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage09_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage09; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage09_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h deleted file mode 100644 index 429a20ffa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage10.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage10" - * found in "J2735-TestMessage10.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage10_H_ -#define _TestMessage10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage10; - -/* TestMessage10 */ -typedef struct TestMessage10 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage10 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage10_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage10; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage10_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h deleted file mode 100644 index ad94e5993..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage11.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage11" - * found in "J2735-TestMessage11.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage11_H_ -#define _TestMessage11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage11; - -/* TestMessage11 */ -typedef struct TestMessage11 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage11 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage11_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage11; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage11_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h deleted file mode 100644 index 4070ff599..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage12.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage12" - * found in "J2735-TestMessage12.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage12_H_ -#define _TestMessage12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage12; - -/* TestMessage12 */ -typedef struct TestMessage12 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage12 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage12_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage12; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage12_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h deleted file mode 100644 index ee96a87ae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage13.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage13" - * found in "J2735-TestMessage13.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage13_H_ -#define _TestMessage13_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage13; - -/* TestMessage13 */ -typedef struct TestMessage13 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage13 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage13_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage13; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage13_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage13_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h deleted file mode 100644 index 1a1e25836..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage14.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage14" - * found in "J2735-TestMessage14.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage14_H_ -#define _TestMessage14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage14; - -/* TestMessage14 */ -typedef struct TestMessage14 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage14 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage14_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage14; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage14_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h deleted file mode 100644 index 11eb96ff8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TestMessage15.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage15" - * found in "J2735-TestMessage15.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TestMessage15_H_ -#define _TestMessage15_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_TestMessage15; - -/* TestMessage15 */ -typedef struct TestMessage15 { - struct Header *header; /* OPTIONAL */ - struct Reg_TestMessage15 *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage15_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage15; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage15_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage15_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h deleted file mode 100644 index d3c9c5cf4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottleConfidence.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ThrottleConfidence_H_ -#define _ThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ThrottleConfidence { - ThrottleConfidence_unavailable = 0, - ThrottleConfidence_prec10percent = 1, - ThrottleConfidence_prec1percent = 2, - ThrottleConfidence_prec0_5percent = 3 -} e_ThrottleConfidence; - -/* ThrottleConfidence */ -typedef long ThrottleConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1; -asn_struct_free_f ThrottleConfidence_free; -asn_struct_print_f ThrottleConfidence_print; -asn_constr_check_f ThrottleConfidence_constraint; -ber_type_decoder_f ThrottleConfidence_decode_ber; -der_type_encoder_f ThrottleConfidence_encode_der; -xer_type_decoder_f ThrottleConfidence_decode_xer; -xer_type_encoder_f ThrottleConfidence_encode_xer; -jer_type_encoder_f ThrottleConfidence_encode_jer; -oer_type_decoder_f ThrottleConfidence_decode_oer; -oer_type_encoder_f ThrottleConfidence_encode_oer; -per_type_decoder_f ThrottleConfidence_decode_uper; -per_type_encoder_f ThrottleConfidence_encode_uper; -per_type_decoder_f ThrottleConfidence_decode_aper; -per_type_encoder_f ThrottleConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h deleted file mode 100644 index a0bb98064..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ThrottlePosition.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ThrottlePosition_H_ -#define _ThrottlePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ThrottlePosition */ -typedef long ThrottlePosition_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; -asn_struct_free_f ThrottlePosition_free; -asn_struct_print_f ThrottlePosition_print; -asn_constr_check_f ThrottlePosition_constraint; -ber_type_decoder_f ThrottlePosition_decode_ber; -der_type_encoder_f ThrottlePosition_encode_der; -xer_type_decoder_f ThrottlePosition_decode_xer; -xer_type_encoder_f ThrottlePosition_encode_xer; -jer_type_encoder_f ThrottlePosition_encode_jer; -oer_type_decoder_f ThrottlePosition_decode_oer; -oer_type_encoder_f ThrottlePosition_encode_oer; -per_type_decoder_f ThrottlePosition_decode_uper; -per_type_encoder_f ThrottlePosition_encode_uper; -per_type_decoder_f ThrottlePosition_decode_aper; -per_type_encoder_f ThrottlePosition_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottlePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h deleted file mode 100644 index f49265fef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeChangeDetails.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TimeChangeDetails_H_ -#define _TimeChangeDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SPAT_TimeMark.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeChangeDetails */ -typedef struct TimeChangeDetails { - SPAT_TimeMark_t *startTime; /* OPTIONAL */ - SPAT_TimeMark_t minEndTime; - SPAT_TimeMark_t *maxEndTime; /* OPTIONAL */ - SPAT_TimeMark_t *likelyTime; /* OPTIONAL */ - TimeIntervalConfidence_t *confidence; /* OPTIONAL */ - SPAT_TimeMark_t *nextTime; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TimeChangeDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; -extern asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1; -extern asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeChangeDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h deleted file mode 100644 index de951964a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeConfidence.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TimeConfidence_H_ -#define _TimeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TimeConfidence { - TimeConfidence_unavailable = 0, - TimeConfidence_time_100_000 = 1, - TimeConfidence_time_050_000 = 2, - TimeConfidence_time_020_000 = 3, - TimeConfidence_time_010_000 = 4, - TimeConfidence_time_002_000 = 5, - TimeConfidence_time_001_000 = 6, - TimeConfidence_time_000_500 = 7, - TimeConfidence_time_000_200 = 8, - TimeConfidence_time_000_100 = 9, - TimeConfidence_time_000_050 = 10, - TimeConfidence_time_000_020 = 11, - TimeConfidence_time_000_010 = 12, - TimeConfidence_time_000_005 = 13, - TimeConfidence_time_000_002 = 14, - TimeConfidence_time_000_001 = 15, - TimeConfidence_time_000_000_5 = 16, - TimeConfidence_time_000_000_2 = 17, - TimeConfidence_time_000_000_1 = 18, - TimeConfidence_time_000_000_05 = 19, - TimeConfidence_time_000_000_02 = 20, - TimeConfidence_time_000_000_01 = 21, - TimeConfidence_time_000_000_005 = 22, - TimeConfidence_time_000_000_002 = 23, - TimeConfidence_time_000_000_001 = 24, - TimeConfidence_time_000_000_000_5 = 25, - TimeConfidence_time_000_000_000_2 = 26, - TimeConfidence_time_000_000_000_1 = 27, - TimeConfidence_time_000_000_000_05 = 28, - TimeConfidence_time_000_000_000_02 = 29, - TimeConfidence_time_000_000_000_01 = 30, - TimeConfidence_time_000_000_000_005 = 31, - TimeConfidence_time_000_000_000_002 = 32, - TimeConfidence_time_000_000_000_001 = 33, - TimeConfidence_time_000_000_000_000_5 = 34, - TimeConfidence_time_000_000_000_000_2 = 35, - TimeConfidence_time_000_000_000_000_1 = 36, - TimeConfidence_time_000_000_000_000_05 = 37, - TimeConfidence_time_000_000_000_000_02 = 38, - TimeConfidence_time_000_000_000_000_01 = 39 -} e_TimeConfidence; - -/* TimeConfidence */ -typedef long TimeConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1; -asn_struct_free_f TimeConfidence_free; -asn_struct_print_f TimeConfidence_print; -asn_constr_check_f TimeConfidence_constraint; -ber_type_decoder_f TimeConfidence_decode_ber; -der_type_encoder_f TimeConfidence_encode_der; -xer_type_decoder_f TimeConfidence_decode_xer; -xer_type_encoder_f TimeConfidence_encode_xer; -jer_type_encoder_f TimeConfidence_encode_jer; -oer_type_decoder_f TimeConfidence_decode_oer; -oer_type_encoder_f TimeConfidence_encode_oer; -per_type_decoder_f TimeConfidence_decode_uper; -per_type_encoder_f TimeConfidence_encode_uper; -per_type_decoder_f TimeConfidence_decode_aper; -per_type_encoder_f TimeConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h deleted file mode 100644 index c70c9534e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeIntervalConfidence.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TimeIntervalConfidence_H_ -#define _TimeIntervalConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeIntervalConfidence */ -typedef long TimeIntervalConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; -asn_struct_free_f TimeIntervalConfidence_free; -asn_struct_print_f TimeIntervalConfidence_print; -asn_constr_check_f TimeIntervalConfidence_constraint; -ber_type_decoder_f TimeIntervalConfidence_decode_ber; -der_type_encoder_f TimeIntervalConfidence_encode_der; -xer_type_decoder_f TimeIntervalConfidence_decode_xer; -xer_type_encoder_f TimeIntervalConfidence_encode_xer; -jer_type_encoder_f TimeIntervalConfidence_encode_jer; -oer_type_decoder_f TimeIntervalConfidence_decode_oer; -oer_type_encoder_f TimeIntervalConfidence_encode_oer; -per_type_decoder_f TimeIntervalConfidence_decode_uper; -per_type_encoder_f TimeIntervalConfidence_encode_uper; -per_type_decoder_f TimeIntervalConfidence_decode_aper; -per_type_encoder_f TimeIntervalConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeIntervalConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h deleted file mode 100644 index 68566958c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeOffset.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TimeOffset_H_ -#define _TimeOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeOffset */ -typedef long TimeOffset_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeOffset_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeOffset; -asn_struct_free_f TimeOffset_free; -asn_struct_print_f TimeOffset_print; -asn_constr_check_f TimeOffset_constraint; -ber_type_decoder_f TimeOffset_decode_ber; -der_type_encoder_f TimeOffset_encode_der; -xer_type_decoder_f TimeOffset_decode_xer; -xer_type_encoder_f TimeOffset_encode_xer; -jer_type_encoder_f TimeOffset_encode_jer; -oer_type_decoder_f TimeOffset_decode_oer; -oer_type_encoder_f TimeOffset_encode_oer; -per_type_decoder_f TimeOffset_decode_uper; -per_type_encoder_f TimeOffset_encode_uper; -per_type_decoder_f TimeOffset_decode_aper; -per_type_encoder_f TimeOffset_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h deleted file mode 100644 index 4c97db2b6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TimeRemaining.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TimeRemaining_H_ -#define _TimeRemaining_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeRemaining */ -typedef long TimeRemaining_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; -asn_struct_free_f TimeRemaining_free; -asn_struct_print_f TimeRemaining_print; -asn_constr_check_f TimeRemaining_constraint; -ber_type_decoder_f TimeRemaining_decode_ber; -der_type_encoder_f TimeRemaining_encode_der; -xer_type_decoder_f TimeRemaining_decode_xer; -xer_type_encoder_f TimeRemaining_encode_xer; -jer_type_encoder_f TimeRemaining_encode_jer; -oer_type_decoder_f TimeRemaining_decode_oer; -oer_type_encoder_f TimeRemaining_encode_oer; -per_type_decoder_f TimeRemaining_decode_uper; -per_type_encoder_f TimeRemaining_encode_uper; -per_type_decoder_f TimeRemaining_decode_aper; -per_type_encoder_f TimeRemaining_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeRemaining_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h deleted file mode 100644 index 002437b60..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireData.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TireData_H_ -#define _TireData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TireLocation.h" -#include "TirePressure.h" -#include "TireTemp.h" -#include "WheelSensorStatus.h" -#include "WheelEndElectFault.h" -#include "TireLeakageRate.h" -#include "TirePressureThresholdDetection.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireData */ -typedef struct TireData { - TireLocation_t *location; /* OPTIONAL */ - TirePressure_t *pressure; /* OPTIONAL */ - TireTemp_t *temp; /* OPTIONAL */ - WheelSensorStatus_t *wheelSensorStatus; /* OPTIONAL */ - WheelEndElectFault_t *wheelEndElectFault; /* OPTIONAL */ - TireLeakageRate_t *leakageRate; /* OPTIONAL */ - TirePressureThresholdDetection_t *detection; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TireData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireData; -extern asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1; -extern asn_TYPE_member_t asn_MBR_TireData_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h deleted file mode 100644 index ca0900470..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireDataList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TireDataList_H_ -#define _TireDataList_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 TireData; - -/* TireDataList */ -typedef struct TireDataList { - A_SEQUENCE_OF(struct TireData) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TireDataList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireDataList; -extern asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1; -extern asn_TYPE_member_t asn_MBR_TireDataList_1[1]; -extern asn_per_constraints_t asn_PER_type_TireDataList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireDataList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h deleted file mode 100644 index 0dfa57721..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLeakageRate.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TireLeakageRate_H_ -#define _TireLeakageRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLeakageRate */ -typedef long TireLeakageRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; -asn_struct_free_f TireLeakageRate_free; -asn_struct_print_f TireLeakageRate_print; -asn_constr_check_f TireLeakageRate_constraint; -ber_type_decoder_f TireLeakageRate_decode_ber; -der_type_encoder_f TireLeakageRate_encode_der; -xer_type_decoder_f TireLeakageRate_decode_xer; -xer_type_encoder_f TireLeakageRate_encode_xer; -jer_type_encoder_f TireLeakageRate_encode_jer; -oer_type_decoder_f TireLeakageRate_decode_oer; -oer_type_encoder_f TireLeakageRate_encode_oer; -per_type_decoder_f TireLeakageRate_decode_uper; -per_type_encoder_f TireLeakageRate_encode_uper; -per_type_decoder_f TireLeakageRate_decode_aper; -per_type_encoder_f TireLeakageRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLeakageRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h deleted file mode 100644 index 37fba225c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireLocation.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TireLocation_H_ -#define _TireLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLocation */ -typedef long TireLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireLocation; -asn_struct_free_f TireLocation_free; -asn_struct_print_f TireLocation_print; -asn_constr_check_f TireLocation_constraint; -ber_type_decoder_f TireLocation_decode_ber; -der_type_encoder_f TireLocation_encode_der; -xer_type_decoder_f TireLocation_decode_xer; -xer_type_encoder_f TireLocation_encode_xer; -jer_type_encoder_f TireLocation_encode_jer; -oer_type_decoder_f TireLocation_decode_oer; -oer_type_encoder_f TireLocation_encode_oer; -per_type_decoder_f TireLocation_decode_uper; -per_type_encoder_f TireLocation_encode_uper; -per_type_decoder_f TireLocation_decode_aper; -per_type_encoder_f TireLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h deleted file mode 100644 index e80ffe4d6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressure.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TirePressure_H_ -#define _TirePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TirePressure */ -typedef long TirePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TirePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TirePressure; -asn_struct_free_f TirePressure_free; -asn_struct_print_f TirePressure_print; -asn_constr_check_f TirePressure_constraint; -ber_type_decoder_f TirePressure_decode_ber; -der_type_encoder_f TirePressure_encode_der; -xer_type_decoder_f TirePressure_decode_xer; -xer_type_encoder_f TirePressure_encode_xer; -jer_type_encoder_f TirePressure_encode_jer; -oer_type_decoder_f TirePressure_decode_oer; -oer_type_encoder_f TirePressure_encode_oer; -per_type_decoder_f TirePressure_decode_uper; -per_type_encoder_f TirePressure_encode_uper; -per_type_decoder_f TirePressure_decode_aper; -per_type_encoder_f TirePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h deleted file mode 100644 index 28282bb2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TirePressureThresholdDetection.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TirePressureThresholdDetection_H_ -#define _TirePressureThresholdDetection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TirePressureThresholdDetection { - TirePressureThresholdDetection_noData = 0, - TirePressureThresholdDetection_overPressure = 1, - TirePressureThresholdDetection_noWarningPressure = 2, - TirePressureThresholdDetection_underPressure = 3, - TirePressureThresholdDetection_extremeUnderPressure = 4, - TirePressureThresholdDetection_undefined = 5, - TirePressureThresholdDetection_errorIndicator = 6, - TirePressureThresholdDetection_notAvailable = 7 -} e_TirePressureThresholdDetection; - -/* TirePressureThresholdDetection */ -typedef long TirePressureThresholdDetection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; -extern const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1; -asn_struct_free_f TirePressureThresholdDetection_free; -asn_struct_print_f TirePressureThresholdDetection_print; -asn_constr_check_f TirePressureThresholdDetection_constraint; -ber_type_decoder_f TirePressureThresholdDetection_decode_ber; -der_type_encoder_f TirePressureThresholdDetection_encode_der; -xer_type_decoder_f TirePressureThresholdDetection_decode_xer; -xer_type_encoder_f TirePressureThresholdDetection_encode_xer; -jer_type_encoder_f TirePressureThresholdDetection_encode_jer; -oer_type_decoder_f TirePressureThresholdDetection_decode_oer; -oer_type_encoder_f TirePressureThresholdDetection_encode_oer; -per_type_decoder_f TirePressureThresholdDetection_decode_uper; -per_type_encoder_f TirePressureThresholdDetection_encode_uper; -per_type_decoder_f TirePressureThresholdDetection_decode_aper; -per_type_encoder_f TirePressureThresholdDetection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressureThresholdDetection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h deleted file mode 100644 index 40b5dc5da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TireTemp.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TireTemp_H_ -#define _TireTemp_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireTemp */ -typedef long TireTemp_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireTemp_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireTemp; -asn_struct_free_f TireTemp_free; -asn_struct_print_f TireTemp_print; -asn_constr_check_f TireTemp_constraint; -ber_type_decoder_f TireTemp_decode_ber; -der_type_encoder_f TireTemp_encode_der; -xer_type_decoder_f TireTemp_decode_xer; -xer_type_encoder_f TireTemp_encode_xer; -jer_type_encoder_f TireTemp_encode_jer; -oer_type_decoder_f TireTemp_decode_oer; -oer_type_encoder_f TireTemp_encode_oer; -per_type_decoder_f TireTemp_decode_uper; -per_type_encoder_f TireTemp_encode_uper; -per_type_decoder_f TireTemp_decode_aper; -per_type_encoder_f TireTemp_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireTemp_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h deleted file mode 100644 index 49a0bfb2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TractionControlStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TractionControlStatus_H_ -#define _TractionControlStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TractionControlStatus { - TractionControlStatus_unavailable = 0, - TractionControlStatus_off = 1, - TractionControlStatus_on = 2, - TractionControlStatus_engaged = 3 -} e_TractionControlStatus; - -/* TractionControlStatus */ -typedef long TractionControlStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TractionControlStatus; -extern const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1; -asn_struct_free_f TractionControlStatus_free; -asn_struct_print_f TractionControlStatus_print; -asn_constr_check_f TractionControlStatus_constraint; -ber_type_decoder_f TractionControlStatus_decode_ber; -der_type_encoder_f TractionControlStatus_encode_der; -xer_type_decoder_f TractionControlStatus_decode_xer; -xer_type_encoder_f TractionControlStatus_encode_xer; -jer_type_encoder_f TractionControlStatus_encode_jer; -oer_type_decoder_f TractionControlStatus_decode_oer; -oer_type_encoder_f TractionControlStatus_encode_oer; -per_type_decoder_f TractionControlStatus_decode_uper; -per_type_encoder_f TractionControlStatus_encode_uper; -per_type_decoder_f TractionControlStatus_decode_aper; -per_type_encoder_f TractionControlStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TractionControlStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h deleted file mode 100644 index 68a58f261..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerData.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerData_H_ -#define _TrailerData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "PivotPointDescription.h" -#include "TrailerUnitDescriptionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerData */ -typedef struct TrailerData { - SSPindex_t notUsed; - PivotPointDescription_t connection; - TrailerUnitDescriptionList_t units; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerData; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerData_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h deleted file mode 100644 index 906eaab87..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPoint.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerHistoryPoint_H_ -#define _TrailerHistoryPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_Angle.h" -#include "TimeOffset.h" -#include "Node-XY-24b.h" -#include "VertOffset-B07.h" -#include "CoarseHeading.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerHistoryPoint */ -typedef struct TrailerHistoryPoint { - Common_Angle_t pivotAngle; - TimeOffset_t timeOffset; - Node_XY_24b_t positionOffset; - VertOffset_B07_t *elevationOffset; /* OPTIONAL */ - CoarseHeading_t *heading; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerHistoryPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerHistoryPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h deleted file mode 100644 index 16f8ddc33..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerHistoryPointList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerHistoryPointList_H_ -#define _TrailerHistoryPointList_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 TrailerHistoryPoint; - -/* TrailerHistoryPointList */ -typedef struct TrailerHistoryPointList { - A_SEQUENCE_OF(struct TrailerHistoryPoint) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerHistoryPointList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList; -extern asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[1]; -extern asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerHistoryPointList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h deleted file mode 100644 index 2979288eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerMass.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerMass_H_ -#define _TrailerMass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerMass */ -typedef long TrailerMass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrailerMass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrailerMass; -asn_struct_free_f TrailerMass_free; -asn_struct_print_f TrailerMass_print; -asn_constr_check_f TrailerMass_constraint; -ber_type_decoder_f TrailerMass_decode_ber; -der_type_encoder_f TrailerMass_encode_der; -xer_type_decoder_f TrailerMass_decode_xer; -xer_type_encoder_f TrailerMass_encode_xer; -jer_type_encoder_f TrailerMass_encode_jer; -oer_type_decoder_f TrailerMass_decode_oer; -oer_type_encoder_f TrailerMass_encode_oer; -per_type_decoder_f TrailerMass_decode_uper; -per_type_encoder_f TrailerMass_encode_uper; -per_type_decoder_f TrailerMass_decode_aper; -per_type_encoder_f TrailerMass_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerMass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h deleted file mode 100644 index f1148cd06..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescription.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerUnitDescription_H_ -#define _TrailerUnitDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IsDolly.h" -#include "VehicleWidth.h" -#include "VehicleLength.h" -#include "VehicleHeight.h" -#include "TrailerMass.h" -#include "PivotPointDescription.h" -#include "Offset-B12.h" -#include "Node-XY-24b.h" -#include "VertOffset-B07.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BumperHeights; -struct PivotPointDescription; -struct TrailerHistoryPointList; - -/* TrailerUnitDescription */ -typedef struct TrailerUnitDescription { - IsDolly_t isDolly; - VehicleWidth_t width; - VehicleLength_t length; - VehicleHeight_t *height; /* OPTIONAL */ - TrailerMass_t *mass; /* OPTIONAL */ - struct BumperHeights *bumperHeights; /* OPTIONAL */ - VehicleHeight_t *centerOfGravity; /* OPTIONAL */ - PivotPointDescription_t frontPivot; - struct PivotPointDescription *rearPivot; /* OPTIONAL */ - Offset_B12_t *rearWheelOffset; /* OPTIONAL */ - Node_XY_24b_t positionOffset; - VertOffset_B07_t *elevationOffset; /* OPTIONAL */ - struct TrailerHistoryPointList *crumbData; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerUnitDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[13]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerUnitDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h deleted file mode 100644 index d54df3eb9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerUnitDescriptionList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerUnitDescriptionList_H_ -#define _TrailerUnitDescriptionList_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 TrailerUnitDescription; - -/* TrailerUnitDescriptionList */ -typedef struct TrailerUnitDescriptionList { - A_SEQUENCE_OF(struct TrailerUnitDescription) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerUnitDescriptionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList; -extern asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[1]; -extern asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerUnitDescriptionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h deleted file mode 100644 index 7e0e2a4c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TrailerWeight.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TrailerWeight_H_ -#define _TrailerWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerWeight */ -typedef long TrailerWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; -asn_struct_free_f TrailerWeight_free; -asn_struct_print_f TrailerWeight_print; -asn_constr_check_f TrailerWeight_constraint; -ber_type_decoder_f TrailerWeight_decode_ber; -der_type_encoder_f TrailerWeight_encode_der; -xer_type_decoder_f TrailerWeight_decode_xer; -xer_type_encoder_f TrailerWeight_encode_xer; -jer_type_encoder_f TrailerWeight_encode_jer; -oer_type_decoder_f TrailerWeight_decode_oer; -oer_type_encoder_f TrailerWeight_encode_oer; -per_type_decoder_f TrailerWeight_decode_uper; -per_type_encoder_f TrailerWeight_encode_uper; -per_type_decoder_f TrailerWeight_decode_aper; -per_type_encoder_f TrailerWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h deleted file mode 100644 index 040d25889..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TransitStatus_H_ -#define _TransitStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitStatus { - TransitStatus_none = 0, - TransitStatus_anADAuse = 1, - TransitStatus_aBikeLoad = 2, - TransitStatus_doorOpen = 3, - TransitStatus_occM = 4, - TransitStatus_occL = 5 -} e_TransitStatus; - -/* TransitStatus */ -typedef BIT_STRING_t TransitStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; -asn_struct_free_f TransitStatus_free; -asn_struct_print_f TransitStatus_print; -asn_constr_check_f TransitStatus_constraint; -ber_type_decoder_f TransitStatus_decode_ber; -der_type_encoder_f TransitStatus_encode_der; -xer_type_decoder_f TransitStatus_decode_xer; -xer_type_encoder_f TransitStatus_encode_xer; -jer_type_encoder_f TransitStatus_encode_jer; -oer_type_decoder_f TransitStatus_decode_oer; -oer_type_encoder_f TransitStatus_encode_oer; -per_type_decoder_f TransitStatus_decode_uper; -per_type_encoder_f TransitStatus_encode_uper; -per_type_decoder_f TransitStatus_decode_aper; -per_type_encoder_f TransitStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h deleted file mode 100644 index 3455673a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleOccupancy.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TransitVehicleOccupancy_H_ -#define _TransitVehicleOccupancy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitVehicleOccupancy { - TransitVehicleOccupancy_occupancyUnknown = 0, - TransitVehicleOccupancy_occupancyEmpty = 1, - TransitVehicleOccupancy_occupancyVeryLow = 2, - TransitVehicleOccupancy_occupancyLow = 3, - TransitVehicleOccupancy_occupancyMed = 4, - TransitVehicleOccupancy_occupancyHigh = 5, - TransitVehicleOccupancy_occupancyNearlyFull = 6, - TransitVehicleOccupancy_occupancyFull = 7 -} e_TransitVehicleOccupancy; - -/* TransitVehicleOccupancy */ -typedef long TransitVehicleOccupancy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy; -extern const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1; -asn_struct_free_f TransitVehicleOccupancy_free; -asn_struct_print_f TransitVehicleOccupancy_print; -asn_constr_check_f TransitVehicleOccupancy_constraint; -ber_type_decoder_f TransitVehicleOccupancy_decode_ber; -der_type_encoder_f TransitVehicleOccupancy_encode_der; -xer_type_decoder_f TransitVehicleOccupancy_decode_xer; -xer_type_encoder_f TransitVehicleOccupancy_encode_xer; -jer_type_encoder_f TransitVehicleOccupancy_encode_jer; -oer_type_decoder_f TransitVehicleOccupancy_decode_oer; -oer_type_encoder_f TransitVehicleOccupancy_encode_oer; -per_type_decoder_f TransitVehicleOccupancy_decode_uper; -per_type_encoder_f TransitVehicleOccupancy_encode_uper; -per_type_decoder_f TransitVehicleOccupancy_decode_aper; -per_type_encoder_f TransitVehicleOccupancy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitVehicleOccupancy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h deleted file mode 100644 index f275475a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransitVehicleStatus.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TransitVehicleStatus_H_ -#define _TransitVehicleStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitVehicleStatus { - TransitVehicleStatus_loading = 0, - TransitVehicleStatus_anADAuse = 1, - TransitVehicleStatus_aBikeLoad = 2, - TransitVehicleStatus_doorOpen = 3, - TransitVehicleStatus_charging = 4, - TransitVehicleStatus_atStopLine = 5 -} e_TransitVehicleStatus; - -/* TransitVehicleStatus */ -typedef BIT_STRING_t TransitVehicleStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus; -asn_struct_free_f TransitVehicleStatus_free; -asn_struct_print_f TransitVehicleStatus_print; -asn_constr_check_f TransitVehicleStatus_constraint; -ber_type_decoder_f TransitVehicleStatus_decode_ber; -der_type_encoder_f TransitVehicleStatus_encode_der; -xer_type_decoder_f TransitVehicleStatus_decode_xer; -xer_type_encoder_f TransitVehicleStatus_encode_xer; -jer_type_encoder_f TransitVehicleStatus_encode_jer; -oer_type_decoder_f TransitVehicleStatus_decode_oer; -oer_type_encoder_f TransitVehicleStatus_encode_oer; -per_type_decoder_f TransitVehicleStatus_decode_uper; -per_type_encoder_f TransitVehicleStatus_encode_uper; -per_type_decoder_f TransitVehicleStatus_decode_aper; -per_type_encoder_f TransitVehicleStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitVehicleStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h deleted file mode 100644 index 2be106538..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionAndSpeed.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TransmissionAndSpeed_H_ -#define _TransmissionAndSpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TransmissionState.h" -#include "Velocity.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TransmissionAndSpeed */ -typedef struct TransmissionAndSpeed { - TransmissionState_t transmisson; - Velocity_t speed; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TransmissionAndSpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; -extern asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1; -extern asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionAndSpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h deleted file mode 100644 index ac3536d91..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TransmissionState.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TransmissionState_H_ -#define _TransmissionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransmissionState { - TransmissionState_neutral = 0, - TransmissionState_park = 1, - TransmissionState_forwardGears = 2, - TransmissionState_reverseGears = 3, - TransmissionState_reserved1 = 4, - TransmissionState_reserved2 = 5, - TransmissionState_reserved3 = 6, - TransmissionState_unavailable = 7 -} e_TransmissionState; - -/* TransmissionState */ -typedef long TransmissionState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransmissionState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; -extern const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1; -asn_struct_free_f TransmissionState_free; -asn_struct_print_f TransmissionState_print; -asn_constr_check_f TransmissionState_constraint; -ber_type_decoder_f TransmissionState_decode_ber; -der_type_encoder_f TransmissionState_encode_der; -xer_type_decoder_f TransmissionState_decode_xer; -xer_type_encoder_f TransmissionState_encode_xer; -jer_type_encoder_f TransmissionState_encode_jer; -oer_type_decoder_f TransmissionState_decode_oer; -oer_type_encoder_f TransmissionState_encode_oer; -per_type_decoder_f TransmissionState_decode_uper; -per_type_encoder_f TransmissionState_encode_uper; -per_type_decoder_f TransmissionState_decode_aper; -per_type_encoder_f TransmissionState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h deleted file mode 100644 index 20c7fa22c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrame.h +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TravelerDataFrame_H_ -#define _TravelerDataFrame_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "TravelerInfoType.h" -#include "DYear.h" -#include "MinuteOfTheYear.h" -#include "MinutesDuration.h" -#include "SignPrority.h" -#include "URL-Short.h" -#include "FurtherInfoID.h" -#include "RoadSignID.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "ITIScodesAndText.h" -#include "WorkZone.h" -#include "GenericSignage.h" -#include "SpeedLimit.h" -#include "ExitService.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TravelerDataFrame__msgId_PR { - TravelerDataFrame__msgId_PR_NOTHING, /* No components present */ - TravelerDataFrame__msgId_PR_furtherInfoID, - TravelerDataFrame__msgId_PR_roadSignID -} TravelerDataFrame__msgId_PR; -typedef enum TravelerDataFrame__content_PR { - TravelerDataFrame__content_PR_NOTHING, /* No components present */ - TravelerDataFrame__content_PR_advisory, - TravelerDataFrame__content_PR_workZone, - TravelerDataFrame__content_PR_genericSign, - TravelerDataFrame__content_PR_speedLimit, - TravelerDataFrame__content_PR_exitService -} TravelerDataFrame__content_PR; - -/* Forward declarations */ -struct GeographicalPath; - -/* TravelerDataFrame */ -typedef struct TravelerDataFrame { - SSPindex_t notUsed; - TravelerInfoType_t frameType; - struct TravelerDataFrame__msgId { - TravelerDataFrame__msgId_PR present; - union TravelerDataFrame__msgId_u { - FurtherInfoID_t furtherInfoID; - RoadSignID_t roadSignID; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } msgId; - DYear_t *startYear; /* OPTIONAL */ - MinuteOfTheYear_t startTime; - MinutesDuration_t durationTime; - SignPrority_t priority; - SSPindex_t notUsed1; - struct TravelerDataFrame__regions { - A_SEQUENCE_OF(struct GeographicalPath) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regions; - SSPindex_t notUsed2; - SSPindex_t notUsed3; - struct TravelerDataFrame__content { - TravelerDataFrame__content_PR present; - union TravelerDataFrame__content_u { - ITIScodesAndText_t advisory; - WorkZone_t workZone; - GenericSignage_t genericSign; - SpeedLimit_t speedLimit; - ExitService_t exitService; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } content; - URL_Short_t *url; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TravelerDataFrame_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame; -extern asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[13]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerDataFrame_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h deleted file mode 100644 index f78af7801..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerDataFrameList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TravelerDataFrameList_H_ -#define _TravelerDataFrameList_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 TravelerDataFrame; - -/* TravelerDataFrameList */ -typedef struct TravelerDataFrameList { - A_SEQUENCE_OF(struct TravelerDataFrame) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TravelerDataFrameList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList; -extern asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[1]; -extern asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerDataFrameList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h deleted file mode 100644 index f0d8f31c4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInfoType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TravelerInfoType_H_ -#define _TravelerInfoType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TravelerInfoType { - TravelerInfoType_unknown = 0, - TravelerInfoType_advisory = 1, - TravelerInfoType_roadSignage = 2, - TravelerInfoType_commercialSignage = 3 - /* - * Enumeration is extensible - */ -} e_TravelerInfoType; - -/* TravelerInfoType */ -typedef long TravelerInfoType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; -extern const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1; -asn_struct_free_f TravelerInfoType_free; -asn_struct_print_f TravelerInfoType_print; -asn_constr_check_f TravelerInfoType_constraint; -ber_type_decoder_f TravelerInfoType_decode_ber; -der_type_encoder_f TravelerInfoType_encode_der; -xer_type_decoder_f TravelerInfoType_decode_xer; -xer_type_encoder_f TravelerInfoType_encode_xer; -jer_type_encoder_f TravelerInfoType_encode_jer; -oer_type_decoder_f TravelerInfoType_decode_oer; -oer_type_encoder_f TravelerInfoType_encode_oer; -per_type_decoder_f TravelerInfoType_decode_uper; -per_type_encoder_f TravelerInfoType_encode_uper; -per_type_decoder_f TravelerInfoType_decode_aper; -per_type_encoder_f TravelerInfoType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerInfoType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h deleted file mode 100644 index fc620d64f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/TravelerInformation.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _TravelerInformation_H_ -#define _TravelerInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Common_MsgCount.h" -#include "MinuteOfTheYear.h" -#include "UniqueMSGID.h" -#include "URL-Base.h" -#include "TravelerDataFrameList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_TravelerInformation; - -/* TravelerInformation */ -typedef struct TravelerInformation { - Common_MsgCount_t msgCnt; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - UniqueMSGID_t *packetID; /* OPTIONAL */ - URL_Base_t *urlB; /* OPTIONAL */ - TravelerDataFrameList_t dataFrames; - struct TravelerInformation__regional { - A_SEQUENCE_OF(struct Reg_TravelerInformation) 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; -} TravelerInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; -extern asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerInformation_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h deleted file mode 100644 index b59dd30a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Base.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _URL_Base_H_ -#define _URL_Base_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Base */ -typedef IA5String_t URL_Base_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_URL_Base_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_URL_Base; -asn_struct_free_f URL_Base_free; -asn_struct_print_f URL_Base_print; -asn_constr_check_f URL_Base_constraint; -ber_type_decoder_f URL_Base_decode_ber; -der_type_encoder_f URL_Base_encode_der; -xer_type_decoder_f URL_Base_decode_xer; -xer_type_encoder_f URL_Base_encode_xer; -jer_type_encoder_f URL_Base_encode_jer; -oer_type_decoder_f URL_Base_decode_oer; -oer_type_encoder_f URL_Base_encode_oer; -per_type_decoder_f URL_Base_decode_uper; -per_type_encoder_f URL_Base_encode_uper; -per_type_decoder_f URL_Base_decode_aper; -per_type_encoder_f URL_Base_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Base_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h deleted file mode 100644 index b353d8330..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Link.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _URL_Link_H_ -#define _URL_Link_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Link */ -typedef IA5String_t URL_Link_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_URL_Link; -asn_struct_free_f URL_Link_free; -asn_struct_print_f URL_Link_print; -asn_constr_check_f URL_Link_constraint; -ber_type_decoder_f URL_Link_decode_ber; -der_type_encoder_f URL_Link_encode_der; -xer_type_decoder_f URL_Link_decode_xer; -xer_type_encoder_f URL_Link_encode_xer; -jer_type_encoder_f URL_Link_encode_jer; -oer_type_decoder_f URL_Link_decode_oer; -oer_type_encoder_f URL_Link_encode_oer; -per_type_decoder_f URL_Link_decode_uper; -per_type_encoder_f URL_Link_encode_uper; -per_type_decoder_f URL_Link_decode_aper; -per_type_encoder_f URL_Link_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Link_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h deleted file mode 100644 index 667202f0f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/URL-Short.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _URL_Short_H_ -#define _URL_Short_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Short */ -typedef IA5String_t URL_Short_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_URL_Short_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_URL_Short; -asn_struct_free_f URL_Short_free; -asn_struct_print_f URL_Short_print; -asn_constr_check_f URL_Short_constraint; -ber_type_decoder_f URL_Short_decode_ber; -der_type_encoder_f URL_Short_encode_der; -xer_type_decoder_f URL_Short_decode_xer; -xer_type_encoder_f URL_Short_encode_xer; -jer_type_encoder_f URL_Short_encode_jer; -oer_type_decoder_f URL_Short_decode_oer; -oer_type_encoder_f URL_Short_encode_oer; -per_type_decoder_f URL_Short_decode_uper; -per_type_encoder_f URL_Short_encode_uper; -per_type_decoder_f URL_Short_decode_aper; -per_type_encoder_f URL_Short_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Short_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h deleted file mode 100644 index 763f51a2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/UniqueMSGID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _UniqueMSGID_H_ -#define _UniqueMSGID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* UniqueMSGID */ -typedef OCTET_STRING_t UniqueMSGID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; -asn_struct_free_f UniqueMSGID_free; -asn_struct_print_f UniqueMSGID_print; -asn_constr_check_f UniqueMSGID_constraint; -ber_type_decoder_f UniqueMSGID_decode_ber; -der_type_encoder_f UniqueMSGID_encode_der; -xer_type_decoder_f UniqueMSGID_decode_xer; -xer_type_encoder_f UniqueMSGID_encode_xer; -jer_type_encoder_f UniqueMSGID_encode_jer; -oer_type_decoder_f UniqueMSGID_decode_oer; -oer_type_encoder_f UniqueMSGID_encode_oer; -per_type_decoder_f UniqueMSGID_decode_uper; -per_type_encoder_f UniqueMSGID_encode_uper; -per_type_decoder_f UniqueMSGID_decode_aper; -per_type_encoder_f UniqueMSGID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UniqueMSGID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h deleted file mode 100644 index 0d4b29398..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/UserSizeAndBehaviour.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _UserSizeAndBehaviour_H_ -#define _UserSizeAndBehaviour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum UserSizeAndBehaviour { - UserSizeAndBehaviour_unavailable = 0, - UserSizeAndBehaviour_smallStature = 1, - UserSizeAndBehaviour_largeStature = 2, - UserSizeAndBehaviour_erraticMoving = 3, - UserSizeAndBehaviour_slowMoving = 4 -} e_UserSizeAndBehaviour; - -/* UserSizeAndBehaviour */ -typedef BIT_STRING_t UserSizeAndBehaviour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; -asn_struct_free_f UserSizeAndBehaviour_free; -asn_struct_print_f UserSizeAndBehaviour_print; -asn_constr_check_f UserSizeAndBehaviour_constraint; -ber_type_decoder_f UserSizeAndBehaviour_decode_ber; -der_type_encoder_f UserSizeAndBehaviour_encode_der; -xer_type_decoder_f UserSizeAndBehaviour_decode_xer; -xer_type_encoder_f UserSizeAndBehaviour_encode_xer; -jer_type_encoder_f UserSizeAndBehaviour_encode_jer; -oer_type_decoder_f UserSizeAndBehaviour_decode_oer; -oer_type_encoder_f UserSizeAndBehaviour_encode_oer; -per_type_decoder_f UserSizeAndBehaviour_decode_uper; -per_type_encoder_f UserSizeAndBehaviour_encode_uper; -per_type_decoder_f UserSizeAndBehaviour_decode_aper; -per_type_encoder_f UserSizeAndBehaviour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UserSizeAndBehaviour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h deleted file mode 100644 index 50e3f9ccf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VINstring.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VINstring_H_ -#define _VINstring_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VINstring */ -typedef OCTET_STRING_t VINstring_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VINstring_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VINstring; -asn_struct_free_f VINstring_free; -asn_struct_print_f VINstring_print; -asn_constr_check_f VINstring_constraint; -ber_type_decoder_f VINstring_decode_ber; -der_type_encoder_f VINstring_encode_der; -xer_type_decoder_f VINstring_decode_xer; -xer_type_encoder_f VINstring_encode_xer; -jer_type_encoder_f VINstring_encode_jer; -oer_type_decoder_f VINstring_decode_oer; -oer_type_encoder_f VINstring_encode_oer; -per_type_decoder_f VINstring_decode_uper; -per_type_encoder_f VINstring_encode_uper; -per_type_decoder_f VINstring_decode_aper; -per_type_encoder_f VINstring_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VINstring_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h deleted file mode 100644 index 267d102fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ValidRegion.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ValidRegion_H_ -#define _ValidRegion_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingSlice.h" -#include "Extent.h" -#include "ShapePointSet.h" -#include "Circle.h" -#include "RegionPointSet.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ValidRegion__area_PR { - ValidRegion__area_PR_NOTHING, /* No components present */ - ValidRegion__area_PR_shapePointSet, - ValidRegion__area_PR_circle, - ValidRegion__area_PR_regionPointSet -} ValidRegion__area_PR; - -/* ValidRegion */ -typedef struct ValidRegion { - HeadingSlice_t direction; - Extent_t *extent; /* OPTIONAL */ - struct ValidRegion__area { - ValidRegion__area_PR present; - union ValidRegion__area_u { - ShapePointSet_t shapePointSet; - Circle_t circle; - RegionPointSet_t regionPointSet; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } area; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ValidRegion_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; -extern asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1; -extern asn_TYPE_member_t asn_MBR_ValidRegion_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ValidRegion_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h deleted file mode 100644 index dfe2e29d1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleClassification.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleClassification_H_ -#define _VehicleClassification_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleClass.h" -#include "BasicVehicleRole.h" -#include "Iso3833VehicleType.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "ResponderGroupAffected.h" -#include "FuelType.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_VehicleClassification; - -/* VehicleClassification */ -typedef struct VehicleClassification { - BasicVehicleClass_t *keyType; /* OPTIONAL */ - BasicVehicleRole_t *role; /* OPTIONAL */ - Iso3833VehicleType_t *iso3883; /* OPTIONAL */ - VehicleType_t *hpmsType; /* OPTIONAL */ - VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ - IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ - ResponderGroupAffected_t *responderType; /* OPTIONAL */ - FuelType_t *fuelType; /* OPTIONAL */ - struct VehicleClassification__regional { - A_SEQUENCE_OF(struct Reg_VehicleClassification) 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; -} VehicleClassification_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleClassification; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleClassification_1[9]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleClassification_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h deleted file mode 100644 index 4bb2c2989..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleData.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleData_H_ -#define _VehicleData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleHeight.h" -#include "VehicleMass.h" -#include "TrailerWeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BumperHeights; - -/* VehicleData */ -typedef struct VehicleData { - VehicleHeight_t *height; /* OPTIONAL */ - struct BumperHeights *bumpers; /* OPTIONAL */ - VehicleMass_t *mass; /* OPTIONAL */ - TrailerWeight_t *trailerWeight; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleData_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h deleted file mode 100644 index ada863479..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleEventFlags.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleEventFlags_H_ -#define _VehicleEventFlags_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleEventFlags { - VehicleEventFlags_eventHazardLights = 0, - VehicleEventFlags_eventStopLineViolation = 1, - VehicleEventFlags_eventABSactivated = 2, - VehicleEventFlags_eventTractionControlLoss = 3, - VehicleEventFlags_eventStabilityControlactivated = 4, - VehicleEventFlags_eventHazardousMaterials = 5, - VehicleEventFlags_eventReserved1 = 6, - VehicleEventFlags_eventHardBraking = 7, - VehicleEventFlags_eventLightsChanged = 8, - VehicleEventFlags_eventWipersChanged = 9, - VehicleEventFlags_eventFlatTire = 10, - VehicleEventFlags_eventDisabledVehicle = 11, - VehicleEventFlags_eventAirBagDeployment = 12 -} e_VehicleEventFlags; - -/* VehicleEventFlags */ -typedef BIT_STRING_t VehicleEventFlags_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags; -asn_struct_free_f VehicleEventFlags_free; -asn_struct_print_f VehicleEventFlags_print; -asn_constr_check_f VehicleEventFlags_constraint; -ber_type_decoder_f VehicleEventFlags_decode_ber; -der_type_encoder_f VehicleEventFlags_encode_der; -xer_type_decoder_f VehicleEventFlags_decode_xer; -xer_type_encoder_f VehicleEventFlags_encode_xer; -jer_type_encoder_f VehicleEventFlags_encode_jer; -oer_type_decoder_f VehicleEventFlags_decode_oer; -oer_type_encoder_f VehicleEventFlags_encode_oer; -per_type_decoder_f VehicleEventFlags_decode_uper; -per_type_encoder_f VehicleEventFlags_encode_uper; -per_type_decoder_f VehicleEventFlags_decode_aper; -per_type_encoder_f VehicleEventFlags_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleEventFlags_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h deleted file mode 100644 index 6d9c86591..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleGroupAffected.h +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleGroupAffected_H_ -#define _VehicleGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleGroupAffected { - VehicleGroupAffected_all_vehicles = 9217, - VehicleGroupAffected_bicycles = 9218, - VehicleGroupAffected_motorcycles = 9219, - VehicleGroupAffected_cars = 9220, - VehicleGroupAffected_light_vehicles = 9221, - VehicleGroupAffected_cars_and_light_vehicles = 9222, - VehicleGroupAffected_cars_with_trailers = 9223, - VehicleGroupAffected_cars_with_recreational_trailers = 9224, - VehicleGroupAffected_vehicles_with_trailers = 9225, - VehicleGroupAffected_heavy_vehicles = 9226, - VehicleGroupAffected_trucks = 9227, - VehicleGroupAffected_buses = 9228, - VehicleGroupAffected_articulated_buses = 9229, - VehicleGroupAffected_school_buses = 9230, - VehicleGroupAffected_vehicles_with_semi_trailers = 9231, - VehicleGroupAffected_vehicles_with_double_trailers = 9232, - VehicleGroupAffected_high_profile_vehicles = 9233, - VehicleGroupAffected_wide_vehicles = 9234, - VehicleGroupAffected_long_vehicles = 9235, - VehicleGroupAffected_hazardous_loads = 9236, - VehicleGroupAffected_exceptional_loads = 9237, - VehicleGroupAffected_abnormal_loads = 9238, - VehicleGroupAffected_convoys = 9239, - VehicleGroupAffected_maintenance_vehicles = 9240, - VehicleGroupAffected_delivery_vehicles = 9241, - VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, - VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, - VehicleGroupAffected_vehicles_with_parking_permits = 9244, - VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, - VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, - VehicleGroupAffected_gas_powered_vehicles = 9247, - VehicleGroupAffected_diesel_powered_vehicles = 9248, - VehicleGroupAffected_lPG_vehicles = 9249, - VehicleGroupAffected_military_convoys = 9250, - VehicleGroupAffected_military_vehicles = 9251 - /* - * Enumeration is extensible - */ -} e_VehicleGroupAffected; - -/* VehicleGroupAffected */ -typedef long VehicleGroupAffected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1; -asn_struct_free_f VehicleGroupAffected_free; -asn_struct_print_f VehicleGroupAffected_print; -asn_constr_check_f VehicleGroupAffected_constraint; -ber_type_decoder_f VehicleGroupAffected_decode_ber; -der_type_encoder_f VehicleGroupAffected_encode_der; -xer_type_decoder_f VehicleGroupAffected_decode_xer; -xer_type_encoder_f VehicleGroupAffected_encode_xer; -jer_type_encoder_f VehicleGroupAffected_encode_jer; -oer_type_decoder_f VehicleGroupAffected_decode_oer; -oer_type_encoder_f VehicleGroupAffected_encode_oer; -per_type_decoder_f VehicleGroupAffected_decode_uper; -per_type_encoder_f VehicleGroupAffected_encode_uper; -per_type_decoder_f VehicleGroupAffected_decode_aper; -per_type_encoder_f VehicleGroupAffected_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h deleted file mode 100644 index b03d802aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleHeight.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleHeight_H_ -#define _VehicleHeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleHeight */ -typedef long VehicleHeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; -asn_struct_free_f VehicleHeight_free; -asn_struct_print_f VehicleHeight_print; -asn_constr_check_f VehicleHeight_constraint; -ber_type_decoder_f VehicleHeight_decode_ber; -der_type_encoder_f VehicleHeight_encode_der; -xer_type_decoder_f VehicleHeight_decode_xer; -xer_type_encoder_f VehicleHeight_encode_xer; -jer_type_encoder_f VehicleHeight_encode_jer; -oer_type_decoder_f VehicleHeight_decode_oer; -oer_type_encoder_f VehicleHeight_encode_oer; -per_type_decoder_f VehicleHeight_decode_uper; -per_type_encoder_f VehicleHeight_encode_uper; -per_type_decoder_f VehicleHeight_decode_aper; -per_type_encoder_f VehicleHeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleHeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h deleted file mode 100644 index 75ff324c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleID.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleID_H_ -#define _VehicleID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TemporaryID.h" -#include "StationID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleID_PR { - VehicleID_PR_NOTHING, /* No components present */ - VehicleID_PR_entityID, - VehicleID_PR_stationID -} VehicleID_PR; - -/* VehicleID */ -typedef struct VehicleID { - VehicleID_PR present; - union VehicleID_u { - TemporaryID_t entityID; - StationID_t stationID; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleID; -extern asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleID_1[2]; -extern asn_per_constraints_t asn_PER_type_VehicleID_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h deleted file mode 100644 index c115a0b2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleIdent.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleIdent_H_ -#define _VehicleIdent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "VINstring.h" -#include "IA5String.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "ResponderGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleIdent__vehicleClass_PR { - VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ - VehicleIdent__vehicleClass_PR_vGroup, - VehicleIdent__vehicleClass_PR_rGroup, - VehicleIdent__vehicleClass_PR_rEquip -} VehicleIdent__vehicleClass_PR; - -/* Forward declarations */ -struct VehicleID; - -/* VehicleIdent */ -typedef struct VehicleIdent { - DescriptiveName_t *name; /* OPTIONAL */ - VINstring_t *vin; /* OPTIONAL */ - IA5String_t *ownerCode; /* OPTIONAL */ - struct VehicleID *id; /* OPTIONAL */ - VehicleType_t *vehicleType; /* OPTIONAL */ - struct VehicleIdent__vehicleClass { - VehicleIdent__vehicleClass_PR present; - union VehicleIdent__vehicleClass_u { - VehicleGroupAffected_t vGroup; - ResponderGroupAffected_t rGroup; - IncidentResponseEquipment_t rEquip; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleClass; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleIdent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleIdent_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleIdent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h deleted file mode 100644 index 52f6a8ec3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleLength.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleLength_H_ -#define _VehicleLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleLength */ -typedef long VehicleLength_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleLength_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; -asn_struct_free_f VehicleLength_free; -asn_struct_print_f VehicleLength_print; -asn_constr_check_f VehicleLength_constraint; -ber_type_decoder_f VehicleLength_decode_ber; -der_type_encoder_f VehicleLength_encode_der; -xer_type_decoder_f VehicleLength_decode_xer; -xer_type_encoder_f VehicleLength_encode_xer; -jer_type_encoder_f VehicleLength_encode_jer; -oer_type_decoder_f VehicleLength_decode_oer; -oer_type_encoder_f VehicleLength_encode_oer; -per_type_decoder_f VehicleLength_decode_uper; -per_type_encoder_f VehicleLength_encode_uper; -per_type_decoder_f VehicleLength_decode_aper; -per_type_encoder_f VehicleLength_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h deleted file mode 100644 index 38e9f5f5e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleMass.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleMass_H_ -#define _VehicleMass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleMass */ -typedef long VehicleMass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleMass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; -asn_struct_free_f VehicleMass_free; -asn_struct_print_f VehicleMass_print; -asn_constr_check_f VehicleMass_constraint; -ber_type_decoder_f VehicleMass_decode_ber; -der_type_encoder_f VehicleMass_encode_der; -xer_type_decoder_f VehicleMass_decode_xer; -xer_type_encoder_f VehicleMass_encode_xer; -jer_type_encoder_f VehicleMass_encode_jer; -oer_type_decoder_f VehicleMass_decode_oer; -oer_type_encoder_f VehicleMass_encode_oer; -per_type_decoder_f VehicleMass_decode_uper; -per_type_encoder_f VehicleMass_encode_uper; -per_type_decoder_f VehicleMass_decode_aper; -per_type_encoder_f VehicleMass_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleMass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h deleted file mode 100644 index 4588e8f80..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSafetyExtensions.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleSafetyExtensions_H_ -#define _VehicleSafetyExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleEventFlags.h" -#include "ExteriorLights.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PathHistory; -struct PathPrediction; - -/* VehicleSafetyExtensions */ -typedef struct VehicleSafetyExtensions { - VehicleEventFlags_t *events; /* OPTIONAL */ - struct PathHistory *pathHistory; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - ExteriorLights_t *lights; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSafetyExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleSafetyExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h deleted file mode 100644 index 8853714a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleSize.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleSize_H_ -#define _VehicleSize_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleWidth.h" -#include "VehicleLength.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleSize */ -typedef struct VehicleSize { - VehicleWidth_t width; - VehicleLength_t length; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSize_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleSize_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleSize_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h deleted file mode 100644 index 3bc6bc47f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatus.h +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleStatus_H_ -#define _VehicleStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ExteriorLights.h" -#include "LightbarInUse.h" -#include "BrakeAppliedPressure.h" -#include "CoefficientOfFriction.h" -#include "SunSensor.h" -#include "RainSensor.h" -#include "AmbientAirTemperature.h" -#include "AmbientAirPressure.h" -#include "ThrottlePosition.h" -#include "SpeedConfidence.h" -#include "GNSSstatus.h" -#include "SteeringWheelAngle.h" -#include "SteeringWheelAngleConfidence.h" -#include "SteeringWheelAngleRateOfChange.h" -#include "DrivingWheelAngle.h" -#include "constr_SEQUENCE.h" -#include "VerticalAccelerationThreshold.h" -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "ObstacleDistance.h" -#include "Common_Angle.h" -#include "DDateTime.h" -#include "VehicleHeight.h" -#include "BumperHeights.h" -#include "VehicleMass.h" -#include "TrailerWeight.h" -#include "VehicleType.h" -#include "EssPrecipYesNo.h" -#include "EssPrecipRate.h" -#include "EssPrecipSituation.h" -#include "EssSolarRadiation.h" -#include "EssMobileFriction.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct WiperSet; -struct BrakeSystemStatus; -struct FullPositionVector; -struct SpeedandHeadingandThrottleConfidence; -struct VehicleIdent; -struct J1939data; -struct AccelerationSet4Way; -struct ConfidenceSet; - -/* VehicleStatus */ -typedef struct VehicleStatus { - ExteriorLights_t *lights; /* OPTIONAL */ - LightbarInUse_t *lightBar; /* OPTIONAL */ - struct WiperSet *wipers; /* OPTIONAL */ - struct BrakeSystemStatus *brakeStatus; /* OPTIONAL */ - BrakeAppliedPressure_t *brakePressure; /* OPTIONAL */ - CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ - SunSensor_t *sunData; /* OPTIONAL */ - RainSensor_t *rainData; /* OPTIONAL */ - AmbientAirTemperature_t *airTemp; /* OPTIONAL */ - AmbientAirPressure_t *airPres; /* OPTIONAL */ - struct VehicleStatus__steering { - SteeringWheelAngle_t angle; - SteeringWheelAngleConfidence_t *confidence; /* OPTIONAL */ - SteeringWheelAngleRateOfChange_t *rate; /* OPTIONAL */ - DrivingWheelAngle_t *wheels; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *steering; - struct VehicleStatus__accelSets { - struct AccelerationSet4Way *accel4way; /* OPTIONAL */ - VerticalAccelerationThreshold_t *vertAccelThres; /* OPTIONAL */ - YawRateConfidence_t *yawRateCon; /* OPTIONAL */ - AccelerationConfidence_t *hozAccelCon; /* OPTIONAL */ - struct ConfidenceSet *confidenceSet; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *accelSets; - struct VehicleStatus__object { - ObstacleDistance_t obDist; - Common_Angle_t obDirect; - DDateTime_t dateTime; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *object; - struct FullPositionVector *fullPos; /* OPTIONAL */ - ThrottlePosition_t *throttlePos; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedHeadC; /* OPTIONAL */ - SpeedConfidence_t *speedC; /* OPTIONAL */ - struct VehicleStatus__vehicleData { - VehicleHeight_t height; - BumperHeights_t bumpers; - VehicleMass_t mass; - TrailerWeight_t trailerWeight; - VehicleType_t type; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleData; - struct VehicleIdent *vehicleIdent; /* OPTIONAL */ - struct J1939data *j1939data; /* OPTIONAL */ - struct VehicleStatus__weatherReport { - EssPrecipYesNo_t isRaining; - EssPrecipRate_t *rainRate; /* OPTIONAL */ - EssPrecipSituation_t *precipSituation; /* OPTIONAL */ - EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ - EssMobileFriction_t *friction; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *weatherReport; - GNSSstatus_t *gnssStatus; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatus_1[22]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h deleted file mode 100644 index 66f639339..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusDeviceTypeTag.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleStatusDeviceTypeTag_H_ -#define _VehicleStatusDeviceTypeTag_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleStatusDeviceTypeTag { - VehicleStatusDeviceTypeTag_unknown = 0, - VehicleStatusDeviceTypeTag_lights = 1, - VehicleStatusDeviceTypeTag_wipers = 2, - VehicleStatusDeviceTypeTag_brakes = 3, - VehicleStatusDeviceTypeTag_stab = 4, - VehicleStatusDeviceTypeTag_trac = 5, - VehicleStatusDeviceTypeTag_abs = 6, - VehicleStatusDeviceTypeTag_sunS = 7, - VehicleStatusDeviceTypeTag_rainS = 8, - VehicleStatusDeviceTypeTag_airTemp = 9, - VehicleStatusDeviceTypeTag_steering = 10, - VehicleStatusDeviceTypeTag_vertAccelThres = 11, - VehicleStatusDeviceTypeTag_vertAccel = 12, - VehicleStatusDeviceTypeTag_hozAccelLong = 13, - VehicleStatusDeviceTypeTag_hozAccelLat = 14, - VehicleStatusDeviceTypeTag_hozAccelCon = 15, - VehicleStatusDeviceTypeTag_accel4way = 16, - VehicleStatusDeviceTypeTag_confidenceSet = 17, - VehicleStatusDeviceTypeTag_obDist = 18, - VehicleStatusDeviceTypeTag_obDirect = 19, - VehicleStatusDeviceTypeTag_yaw = 20, - VehicleStatusDeviceTypeTag_yawRateCon = 21, - VehicleStatusDeviceTypeTag_dateTime = 22, - VehicleStatusDeviceTypeTag_fullPos = 23, - VehicleStatusDeviceTypeTag_position2D = 24, - VehicleStatusDeviceTypeTag_position3D = 25, - VehicleStatusDeviceTypeTag_vehicle = 26, - VehicleStatusDeviceTypeTag_speedHeadC = 27, - VehicleStatusDeviceTypeTag_speedC = 28 - /* - * Enumeration is extensible - */ -} e_VehicleStatusDeviceTypeTag; - -/* VehicleStatusDeviceTypeTag */ -typedef long VehicleStatusDeviceTypeTag_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1; -asn_struct_free_f VehicleStatusDeviceTypeTag_free; -asn_struct_print_f VehicleStatusDeviceTypeTag_print; -asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; -ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; -der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; -xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; -xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; -jer_type_encoder_f VehicleStatusDeviceTypeTag_encode_jer; -oer_type_decoder_f VehicleStatusDeviceTypeTag_decode_oer; -oer_type_encoder_f VehicleStatusDeviceTypeTag_encode_oer; -per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; -per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; -per_type_decoder_f VehicleStatusDeviceTypeTag_decode_aper; -per_type_encoder_f VehicleStatusDeviceTypeTag_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusDeviceTypeTag_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h deleted file mode 100644 index 73f8aa038..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequest.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleStatusRequest_H_ -#define _VehicleStatusRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleStatusDeviceTypeTag.h" -#include "NativeInteger.h" -#include "BOOLEAN.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleStatusRequest */ -typedef struct VehicleStatusRequest { - VehicleStatusDeviceTypeTag_t dataType; - long *subType; /* OPTIONAL */ - long *sendOnLessThenValue; /* OPTIONAL */ - long *sendOnMoreThenValue; /* OPTIONAL */ - BOOLEAN_t *sendAll; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatusRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h deleted file mode 100644 index f04c09216..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleStatusRequestList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleStatusRequestList_H_ -#define _VehicleStatusRequestList_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 VehicleStatusRequest; - -/* VehicleStatusRequestList */ -typedef struct VehicleStatusRequestList { - A_SEQUENCE_OF(struct VehicleStatusRequest) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatusRequestList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList; -extern asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[1]; -extern asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusRequestList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h deleted file mode 100644 index 0a0a4f26c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePosition.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleToLanePosition_H_ -#define _VehicleToLanePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "LaneID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleToLanePosition */ -typedef struct VehicleToLanePosition { - StationID_t stationID; - LaneID_t laneID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePosition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleToLanePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h deleted file mode 100644 index c76aa2655..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleToLanePositionList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleToLanePositionList_H_ -#define _VehicleToLanePositionList_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 VehicleToLanePosition; - -/* VehicleToLanePositionList */ -typedef struct VehicleToLanePositionList { - A_SEQUENCE_OF(struct VehicleToLanePosition) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePositionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; -extern asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[1]; -extern asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleToLanePositionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h deleted file mode 100644 index a366fd9ff..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleType.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleType_H_ -#define _VehicleType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleType { - VehicleType_none = 0, - VehicleType_unknown = 1, - VehicleType_special = 2, - VehicleType_moto = 3, - VehicleType_car = 4, - VehicleType_carOther = 5, - VehicleType_bus = 6, - VehicleType_axleCnt2 = 7, - VehicleType_axleCnt3 = 8, - VehicleType_axleCnt4 = 9, - VehicleType_axleCnt4Trailer = 10, - VehicleType_axleCnt5Trailer = 11, - VehicleType_axleCnt6Trailer = 12, - VehicleType_axleCnt5MultiTrailer = 13, - VehicleType_axleCnt6MultiTrailer = 14, - VehicleType_axleCnt7MultiTrailer = 15 - /* - * Enumeration is extensible - */ -} e_VehicleType; - -/* VehicleType */ -typedef long VehicleType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleType; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1; -asn_struct_free_f VehicleType_free; -asn_struct_print_f VehicleType_print; -asn_constr_check_f VehicleType_constraint; -ber_type_decoder_f VehicleType_decode_ber; -der_type_encoder_f VehicleType_encode_der; -xer_type_decoder_f VehicleType_decode_xer; -xer_type_encoder_f VehicleType_encode_xer; -jer_type_encoder_f VehicleType_encode_jer; -oer_type_decoder_f VehicleType_decode_oer; -oer_type_encoder_f VehicleType_encode_oer; -per_type_decoder_f VehicleType_decode_uper; -per_type_encoder_f VehicleType_encode_uper; -per_type_decoder_f VehicleType_decode_aper; -per_type_encoder_f VehicleType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h deleted file mode 100644 index 99acc9c74..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VehicleWidth.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VehicleWidth_H_ -#define _VehicleWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleWidth */ -typedef long VehicleWidth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; -asn_struct_free_f VehicleWidth_free; -asn_struct_print_f VehicleWidth_print; -asn_constr_check_f VehicleWidth_constraint; -ber_type_decoder_f VehicleWidth_decode_ber; -der_type_encoder_f VehicleWidth_encode_der; -xer_type_decoder_f VehicleWidth_decode_xer; -xer_type_encoder_f VehicleWidth_encode_xer; -jer_type_encoder_f VehicleWidth_encode_jer; -oer_type_decoder_f VehicleWidth_decode_oer; -oer_type_encoder_f VehicleWidth_encode_oer; -per_type_decoder_f VehicleWidth_decode_uper; -per_type_encoder_f VehicleWidth_encode_uper; -per_type_decoder_f VehicleWidth_decode_aper; -per_type_encoder_f VehicleWidth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h deleted file mode 100644 index 6d914eda2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Velocity.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Velocity_H_ -#define _Velocity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Velocity */ -typedef long Velocity_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Velocity_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Velocity; -asn_struct_free_f Velocity_free; -asn_struct_print_f Velocity_print; -asn_constr_check_f Velocity_constraint; -ber_type_decoder_f Velocity_decode_ber; -der_type_encoder_f Velocity_encode_der; -xer_type_decoder_f Velocity_decode_xer; -xer_type_encoder_f Velocity_encode_xer; -jer_type_encoder_f Velocity_encode_jer; -oer_type_decoder_f Velocity_decode_oer; -oer_type_encoder_f Velocity_encode_oer; -per_type_decoder_f Velocity_decode_uper; -per_type_encoder_f Velocity_encode_uper; -per_type_decoder_f Velocity_decode_aper; -per_type_encoder_f Velocity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Velocity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h deleted file mode 100644 index 5a8ef60a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B07.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B07_H_ -#define _VertOffset_B07_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B07 */ -typedef long VertOffset_B07_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B07; -asn_struct_free_f VertOffset_B07_free; -asn_struct_print_f VertOffset_B07_print; -asn_constr_check_f VertOffset_B07_constraint; -ber_type_decoder_f VertOffset_B07_decode_ber; -der_type_encoder_f VertOffset_B07_encode_der; -xer_type_decoder_f VertOffset_B07_decode_xer; -xer_type_encoder_f VertOffset_B07_encode_xer; -jer_type_encoder_f VertOffset_B07_encode_jer; -oer_type_decoder_f VertOffset_B07_decode_oer; -oer_type_encoder_f VertOffset_B07_encode_oer; -per_type_decoder_f VertOffset_B07_decode_uper; -per_type_encoder_f VertOffset_B07_encode_uper; -per_type_decoder_f VertOffset_B07_decode_aper; -per_type_encoder_f VertOffset_B07_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B07_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h deleted file mode 100644 index 5b92ea593..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B08.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B08_H_ -#define _VertOffset_B08_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B08 */ -typedef long VertOffset_B08_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B08; -asn_struct_free_f VertOffset_B08_free; -asn_struct_print_f VertOffset_B08_print; -asn_constr_check_f VertOffset_B08_constraint; -ber_type_decoder_f VertOffset_B08_decode_ber; -der_type_encoder_f VertOffset_B08_encode_der; -xer_type_decoder_f VertOffset_B08_decode_xer; -xer_type_encoder_f VertOffset_B08_encode_xer; -jer_type_encoder_f VertOffset_B08_encode_jer; -oer_type_decoder_f VertOffset_B08_decode_oer; -oer_type_encoder_f VertOffset_B08_encode_oer; -per_type_decoder_f VertOffset_B08_decode_uper; -per_type_encoder_f VertOffset_B08_encode_uper; -per_type_decoder_f VertOffset_B08_decode_aper; -per_type_encoder_f VertOffset_B08_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B08_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h deleted file mode 100644 index 078306f71..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B09.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B09_H_ -#define _VertOffset_B09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B09 */ -typedef long VertOffset_B09_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B09; -asn_struct_free_f VertOffset_B09_free; -asn_struct_print_f VertOffset_B09_print; -asn_constr_check_f VertOffset_B09_constraint; -ber_type_decoder_f VertOffset_B09_decode_ber; -der_type_encoder_f VertOffset_B09_encode_der; -xer_type_decoder_f VertOffset_B09_decode_xer; -xer_type_encoder_f VertOffset_B09_encode_xer; -jer_type_encoder_f VertOffset_B09_encode_jer; -oer_type_decoder_f VertOffset_B09_decode_oer; -oer_type_encoder_f VertOffset_B09_encode_oer; -per_type_decoder_f VertOffset_B09_decode_uper; -per_type_encoder_f VertOffset_B09_encode_uper; -per_type_decoder_f VertOffset_B09_decode_aper; -per_type_encoder_f VertOffset_B09_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h deleted file mode 100644 index fa9da3257..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B10.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B10_H_ -#define _VertOffset_B10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B10 */ -typedef long VertOffset_B10_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B10; -asn_struct_free_f VertOffset_B10_free; -asn_struct_print_f VertOffset_B10_print; -asn_constr_check_f VertOffset_B10_constraint; -ber_type_decoder_f VertOffset_B10_decode_ber; -der_type_encoder_f VertOffset_B10_encode_der; -xer_type_decoder_f VertOffset_B10_decode_xer; -xer_type_encoder_f VertOffset_B10_encode_xer; -jer_type_encoder_f VertOffset_B10_encode_jer; -oer_type_decoder_f VertOffset_B10_decode_oer; -oer_type_encoder_f VertOffset_B10_encode_oer; -per_type_decoder_f VertOffset_B10_decode_uper; -per_type_encoder_f VertOffset_B10_encode_uper; -per_type_decoder_f VertOffset_B10_decode_aper; -per_type_encoder_f VertOffset_B10_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h deleted file mode 100644 index d7bba9209..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B11.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B11_H_ -#define _VertOffset_B11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B11 */ -typedef long VertOffset_B11_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B11; -asn_struct_free_f VertOffset_B11_free; -asn_struct_print_f VertOffset_B11_print; -asn_constr_check_f VertOffset_B11_constraint; -ber_type_decoder_f VertOffset_B11_decode_ber; -der_type_encoder_f VertOffset_B11_encode_der; -xer_type_decoder_f VertOffset_B11_decode_xer; -xer_type_encoder_f VertOffset_B11_encode_xer; -jer_type_encoder_f VertOffset_B11_encode_jer; -oer_type_decoder_f VertOffset_B11_decode_oer; -oer_type_encoder_f VertOffset_B11_encode_oer; -per_type_decoder_f VertOffset_B11_decode_uper; -per_type_encoder_f VertOffset_B11_encode_uper; -per_type_decoder_f VertOffset_B11_decode_aper; -per_type_encoder_f VertOffset_B11_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h deleted file mode 100644 index cc4134c77..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VertOffset-B12.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VertOffset_B12_H_ -#define _VertOffset_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B12 */ -typedef long VertOffset_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B12; -asn_struct_free_f VertOffset_B12_free; -asn_struct_print_f VertOffset_B12_print; -asn_constr_check_f VertOffset_B12_constraint; -ber_type_decoder_f VertOffset_B12_decode_ber; -der_type_encoder_f VertOffset_B12_encode_der; -xer_type_decoder_f VertOffset_B12_decode_xer; -xer_type_encoder_f VertOffset_B12_encode_xer; -jer_type_encoder_f VertOffset_B12_encode_jer; -oer_type_decoder_f VertOffset_B12_decode_oer; -oer_type_encoder_f VertOffset_B12_encode_oer; -per_type_decoder_f VertOffset_B12_decode_uper; -per_type_encoder_f VertOffset_B12_encode_uper; -per_type_decoder_f VertOffset_B12_decode_aper; -per_type_encoder_f VertOffset_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h deleted file mode 100644 index aa0ea8bd5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAcceleration.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VerticalAcceleration_H_ -#define _VerticalAcceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VerticalAcceleration */ -typedef long VerticalAcceleration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; -asn_struct_free_f VerticalAcceleration_free; -asn_struct_print_f VerticalAcceleration_print; -asn_constr_check_f VerticalAcceleration_constraint; -ber_type_decoder_f VerticalAcceleration_decode_ber; -der_type_encoder_f VerticalAcceleration_encode_der; -xer_type_decoder_f VerticalAcceleration_decode_xer; -xer_type_encoder_f VerticalAcceleration_encode_xer; -jer_type_encoder_f VerticalAcceleration_encode_jer; -oer_type_decoder_f VerticalAcceleration_decode_oer; -oer_type_encoder_f VerticalAcceleration_encode_oer; -per_type_decoder_f VerticalAcceleration_decode_uper; -per_type_encoder_f VerticalAcceleration_encode_uper; -per_type_decoder_f VerticalAcceleration_decode_aper; -per_type_encoder_f VerticalAcceleration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAcceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h deleted file mode 100644 index 8a54ea950..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalAccelerationThreshold.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VerticalAccelerationThreshold_H_ -#define _VerticalAccelerationThreshold_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VerticalAccelerationThreshold { - VerticalAccelerationThreshold_notEquipped = 0, - VerticalAccelerationThreshold_leftFront = 1, - VerticalAccelerationThreshold_leftRear = 2, - VerticalAccelerationThreshold_rightFront = 3, - VerticalAccelerationThreshold_rightRear = 4 -} e_VerticalAccelerationThreshold; - -/* VerticalAccelerationThreshold */ -typedef BIT_STRING_t VerticalAccelerationThreshold_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; -asn_struct_free_f VerticalAccelerationThreshold_free; -asn_struct_print_f VerticalAccelerationThreshold_print; -asn_constr_check_f VerticalAccelerationThreshold_constraint; -ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; -der_type_encoder_f VerticalAccelerationThreshold_encode_der; -xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; -xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; -jer_type_encoder_f VerticalAccelerationThreshold_encode_jer; -oer_type_decoder_f VerticalAccelerationThreshold_decode_oer; -oer_type_encoder_f VerticalAccelerationThreshold_encode_oer; -per_type_decoder_f VerticalAccelerationThreshold_decode_uper; -per_type_encoder_f VerticalAccelerationThreshold_encode_uper; -per_type_decoder_f VerticalAccelerationThreshold_decode_aper; -per_type_encoder_f VerticalAccelerationThreshold_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAccelerationThreshold_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h deleted file mode 100644 index abf7f1084..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/VerticalOffset.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _VerticalOffset_H_ -#define _VerticalOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VertOffset-B07.h" -#include "VertOffset-B08.h" -#include "VertOffset-B09.h" -#include "VertOffset-B10.h" -#include "VertOffset-B11.h" -#include "VertOffset-B12.h" -#include "Common_Elevation.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VerticalOffset_PR { - VerticalOffset_PR_NOTHING, /* No components present */ - VerticalOffset_PR_offset1, - VerticalOffset_PR_offset2, - VerticalOffset_PR_offset3, - VerticalOffset_PR_offset4, - VerticalOffset_PR_offset5, - VerticalOffset_PR_offset6, - VerticalOffset_PR_elevation, - VerticalOffset_PR_regional -} VerticalOffset_PR; - -/* VerticalOffset */ -typedef struct VerticalOffset { - VerticalOffset_PR present; - union VerticalOffset_u { - VertOffset_B07_t offset1; - VertOffset_B08_t offset2; - VertOffset_B09_t offset3; - VertOffset_B10_t offset4; - VertOffset_B11_t offset5; - VertOffset_B12_t offset6; - Common_Elevation_t elevation; - Reg_VerticalOffset_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VerticalOffset_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VerticalOffset; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h deleted file mode 100644 index c342bf3c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WaitOnStopline.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WaitOnStopline_H_ -#define _WaitOnStopline_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WaitOnStopline */ -typedef BOOLEAN_t WaitOnStopline_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; -asn_struct_free_f WaitOnStopline_free; -asn_struct_print_f WaitOnStopline_print; -asn_constr_check_f WaitOnStopline_constraint; -ber_type_decoder_f WaitOnStopline_decode_ber; -der_type_encoder_f WaitOnStopline_encode_der; -xer_type_decoder_f WaitOnStopline_decode_xer; -xer_type_encoder_f WaitOnStopline_encode_xer; -jer_type_encoder_f WaitOnStopline_encode_jer; -oer_type_decoder_f WaitOnStopline_decode_oer; -oer_type_encoder_f WaitOnStopline_encode_oer; -per_type_decoder_f WaitOnStopline_decode_uper; -per_type_encoder_f WaitOnStopline_encode_uper; -per_type_decoder_f WaitOnStopline_decode_aper; -per_type_encoder_f WaitOnStopline_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WaitOnStopline_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h deleted file mode 100644 index 6a8dcef10..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherProbe.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WeatherProbe_H_ -#define _WeatherProbe_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AmbientAirTemperature.h" -#include "AmbientAirPressure.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct WiperSet; - -/* WeatherProbe */ -typedef struct WeatherProbe { - AmbientAirTemperature_t *airTemp; /* OPTIONAL */ - AmbientAirPressure_t *airPressure; /* OPTIONAL */ - struct WiperSet *rainRates; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WeatherProbe_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WeatherProbe; -extern asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1; -extern asn_TYPE_member_t asn_MBR_WeatherProbe_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _WeatherProbe_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h deleted file mode 100644 index 7822dacd7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WeatherReport.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WeatherReport_H_ -#define _WeatherReport_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EssPrecipYesNo.h" -#include "EssPrecipRate.h" -#include "EssPrecipSituation.h" -#include "EssSolarRadiation.h" -#include "EssMobileFriction.h" -#include "CoefficientOfFriction.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WeatherReport */ -typedef struct WeatherReport { - EssPrecipYesNo_t isRaining; - EssPrecipRate_t *rainRate; /* OPTIONAL */ - EssPrecipSituation_t *precipSituation; /* OPTIONAL */ - EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ - EssMobileFriction_t *friction; /* OPTIONAL */ - CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WeatherReport_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WeatherReport; -extern asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1; -extern asn_TYPE_member_t asn_MBR_WeatherReport_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _WeatherReport_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h deleted file mode 100644 index 0704b2613..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelEndElectFault.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WheelEndElectFault_H_ -#define _WheelEndElectFault_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelEndElectFault { - WheelEndElectFault_isOk = 0, - WheelEndElectFault_isNotDefined = 1, - WheelEndElectFault_isError = 2, - WheelEndElectFault_isNotSupported = 3 -} e_WheelEndElectFault; - -/* WheelEndElectFault */ -typedef long WheelEndElectFault_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; -extern const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1; -asn_struct_free_f WheelEndElectFault_free; -asn_struct_print_f WheelEndElectFault_print; -asn_constr_check_f WheelEndElectFault_constraint; -ber_type_decoder_f WheelEndElectFault_decode_ber; -der_type_encoder_f WheelEndElectFault_encode_der; -xer_type_decoder_f WheelEndElectFault_decode_xer; -xer_type_encoder_f WheelEndElectFault_encode_xer; -jer_type_encoder_f WheelEndElectFault_encode_jer; -oer_type_decoder_f WheelEndElectFault_decode_oer; -oer_type_encoder_f WheelEndElectFault_encode_oer; -per_type_decoder_f WheelEndElectFault_decode_uper; -per_type_encoder_f WheelEndElectFault_encode_uper; -per_type_decoder_f WheelEndElectFault_decode_aper; -per_type_encoder_f WheelEndElectFault_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelEndElectFault_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h deleted file mode 100644 index c724205a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WheelSensorStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WheelSensorStatus_H_ -#define _WheelSensorStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelSensorStatus { - WheelSensorStatus_off = 0, - WheelSensorStatus_on = 1, - WheelSensorStatus_notDefined = 2, - WheelSensorStatus_notSupported = 3 -} e_WheelSensorStatus; - -/* WheelSensorStatus */ -typedef long WheelSensorStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; -extern const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1; -asn_struct_free_f WheelSensorStatus_free; -asn_struct_print_f WheelSensorStatus_print; -asn_constr_check_f WheelSensorStatus_constraint; -ber_type_decoder_f WheelSensorStatus_decode_ber; -der_type_encoder_f WheelSensorStatus_encode_der; -xer_type_decoder_f WheelSensorStatus_decode_xer; -xer_type_encoder_f WheelSensorStatus_encode_xer; -jer_type_encoder_f WheelSensorStatus_encode_jer; -oer_type_decoder_f WheelSensorStatus_decode_oer; -oer_type_encoder_f WheelSensorStatus_encode_oer; -per_type_decoder_f WheelSensorStatus_decode_uper; -per_type_encoder_f WheelSensorStatus_encode_uper; -per_type_decoder_f WheelSensorStatus_decode_aper; -per_type_encoder_f WheelSensorStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelSensorStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h deleted file mode 100644 index b22ffec59..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperRate.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WiperRate_H_ -#define _WiperRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperRate */ -typedef long WiperRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WiperRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WiperRate; -asn_struct_free_f WiperRate_free; -asn_struct_print_f WiperRate_print; -asn_constr_check_f WiperRate_constraint; -ber_type_decoder_f WiperRate_decode_ber; -der_type_encoder_f WiperRate_encode_der; -xer_type_decoder_f WiperRate_decode_xer; -xer_type_encoder_f WiperRate_encode_xer; -jer_type_encoder_f WiperRate_encode_jer; -oer_type_decoder_f WiperRate_decode_oer; -oer_type_encoder_f WiperRate_encode_oer; -per_type_decoder_f WiperRate_decode_uper; -per_type_encoder_f WiperRate_encode_uper; -per_type_decoder_f WiperRate_decode_aper; -per_type_encoder_f WiperRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h deleted file mode 100644 index a60c7ce05..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperSet.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WiperSet_H_ -#define _WiperSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "WiperStatus.h" -#include "WiperRate.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperSet */ -typedef struct WiperSet { - WiperStatus_t statusFront; - WiperRate_t rateFront; - WiperStatus_t *statusRear; /* OPTIONAL */ - WiperRate_t *rateRear; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WiperSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperSet; -extern asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1; -extern asn_TYPE_member_t asn_MBR_WiperSet_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h deleted file mode 100644 index 5bcf7f782..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WiperStatus.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WiperStatus_H_ -#define _WiperStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WiperStatus { - WiperStatus_unavailable = 0, - WiperStatus_off = 1, - WiperStatus_intermittent = 2, - WiperStatus_low = 3, - WiperStatus_high = 4, - WiperStatus_washerInUse = 5, - WiperStatus_automaticPresent = 6 - /* - * Enumeration is extensible - */ -} e_WiperStatus; - -/* WiperStatus */ -typedef long WiperStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WiperStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; -extern const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1; -asn_struct_free_f WiperStatus_free; -asn_struct_print_f WiperStatus_print; -asn_constr_check_f WiperStatus_constraint; -ber_type_decoder_f WiperStatus_decode_ber; -der_type_encoder_f WiperStatus_encode_der; -xer_type_decoder_f WiperStatus_decode_xer; -xer_type_encoder_f WiperStatus_encode_xer; -jer_type_encoder_f WiperStatus_encode_jer; -oer_type_decoder_f WiperStatus_decode_oer; -oer_type_encoder_f WiperStatus_encode_oer; -per_type_decoder_f WiperStatus_decode_uper; -per_type_encoder_f WiperStatus_encode_uper; -per_type_decoder_f WiperStatus_decode_aper; -per_type_encoder_f WiperStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h deleted file mode 100644 index a14da6e2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/WorkZone.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _WorkZone_H_ -#define _WorkZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WorkZone__Member__item_PR { - WorkZone__Member__item_PR_NOTHING, /* No components present */ - WorkZone__Member__item_PR_itis, - WorkZone__Member__item_PR_text -} WorkZone__Member__item_PR; - -/* Forward definitions */ -typedef struct WorkZone__Member { - struct WorkZone__Member__item { - WorkZone__Member__item_PR present; - union WorkZone__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WorkZone__Member; - -/* WorkZone */ -typedef struct WorkZone { - A_SEQUENCE_OF(WorkZone__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WorkZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WorkZone; -extern asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1; -extern asn_TYPE_member_t asn_MBR_WorkZone_1[1]; -extern asn_per_constraints_t asn_PER_type_WorkZone_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _WorkZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h deleted file mode 100644 index c8a28fc69..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRate.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _YawRate_H_ -#define _YawRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* YawRate */ -typedef long YawRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_YawRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_YawRate; -asn_struct_free_f YawRate_free; -asn_struct_print_f YawRate_print; -asn_constr_check_f YawRate_constraint; -ber_type_decoder_f YawRate_decode_ber; -der_type_encoder_f YawRate_encode_der; -xer_type_decoder_f YawRate_decode_xer; -xer_type_encoder_f YawRate_encode_xer; -jer_type_encoder_f YawRate_encode_jer; -oer_type_decoder_f YawRate_decode_oer; -oer_type_encoder_f YawRate_encode_oer; -per_type_decoder_f YawRate_decode_uper; -per_type_encoder_f YawRate_encode_uper; -per_type_decoder_f YawRate_decode_aper; -per_type_encoder_f YawRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h deleted file mode 100644 index 5543e29fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/YawRateConfidence.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _YawRateConfidence_H_ -#define _YawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum YawRateConfidence { - YawRateConfidence_unavailable = 0, - YawRateConfidence_degSec_100_00 = 1, - YawRateConfidence_degSec_010_00 = 2, - YawRateConfidence_degSec_005_00 = 3, - YawRateConfidence_degSec_001_00 = 4, - YawRateConfidence_degSec_000_10 = 5, - YawRateConfidence_degSec_000_05 = 6, - YawRateConfidence_degSec_000_01 = 7 -} e_YawRateConfidence; - -/* YawRateConfidence */ -typedef long YawRateConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1; -asn_struct_free_f YawRateConfidence_free; -asn_struct_print_f YawRateConfidence_print; -asn_constr_check_f YawRateConfidence_constraint; -ber_type_decoder_f YawRateConfidence_decode_ber; -der_type_encoder_f YawRateConfidence_encode_der; -xer_type_decoder_f YawRateConfidence_decode_xer; -xer_type_encoder_f YawRateConfidence_encode_xer; -jer_type_encoder_f YawRateConfidence_encode_jer; -oer_type_decoder_f YawRateConfidence_decode_oer; -oer_type_encoder_f YawRateConfidence_encode_oer; -per_type_decoder_f YawRateConfidence_decode_uper; -per_type_encoder_f YawRateConfidence_encode_uper; -per_type_decoder_f YawRateConfidence_decode_aper; -per_type_encoder_f YawRateConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h deleted file mode 100644 index 34b6a857e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Year.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Year_H_ -#define _Year_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Year */ -typedef long Year_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Year_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Year; -asn_struct_free_f Year_free; -asn_struct_print_f Year_print; -asn_constr_check_f Year_constraint; -ber_type_decoder_f Year_decode_ber; -der_type_encoder_f Year_encode_der; -xer_type_decoder_f Year_decode_xer; -xer_type_encoder_f Year_encode_xer; -jer_type_encoder_f Year_encode_jer; -oer_type_decoder_f Year_decode_oer; -oer_type_encoder_f Year_encode_oer; -per_type_decoder_f Year_decode_uper; -per_type_encoder_f Year_encode_uper; -per_type_decoder_f Year_decode_aper; -per_type_encoder_f Year_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Year_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h deleted file mode 100644 index d4f158436..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ZoneLength.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _ZoneLength_H_ -#define _ZoneLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ZoneLength */ -typedef long ZoneLength_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ZoneLength_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; -asn_struct_free_f ZoneLength_free; -asn_struct_print_f ZoneLength_print; -asn_constr_check_f ZoneLength_constraint; -ber_type_decoder_f ZoneLength_decode_ber; -der_type_encoder_f ZoneLength_encode_der; -xer_type_decoder_f ZoneLength_decode_xer; -xer_type_encoder_f ZoneLength_encode_xer; -jer_type_encoder_f ZoneLength_encode_jer; -oer_type_decoder_f ZoneLength_decode_oer; -oer_type_encoder_f ZoneLength_encode_oer; -per_type_decoder_f ZoneLength_decode_uper; -per_type_encoder_f ZoneLength_encode_uper; -per_type_decoder_f ZoneLength_decode_aper; -per_type_encoder_f ZoneLength_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ZoneLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h deleted file mode 100644 index 4715c24ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/Zoom.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#ifndef _Zoom_H_ -#define _Zoom_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Zoom */ -typedef long Zoom_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Zoom_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Zoom; -asn_struct_free_f Zoom_free; -asn_struct_print_f Zoom_print; -asn_constr_check_f Zoom_constraint; -ber_type_decoder_f Zoom_decode_ber; -der_type_encoder_f Zoom_encode_der; -xer_type_decoder_f Zoom_decode_xer; -xer_type_encoder_f Zoom_encode_xer; -jer_type_encoder_f Zoom_encode_jer; -oer_type_decoder_f Zoom_decode_oer; -oer_type_encoder_f Zoom_encode_oer; -per_type_decoder_f Zoom_decode_uper; -per_type_encoder_f Zoom_encode_uper; -per_type_decoder_f Zoom_decode_aper; -per_type_encoder_f Zoom_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Zoom_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h deleted file mode 100644 index 10352c710..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_decoder.h +++ /dev/null @@ -1,47 +0,0 @@ -/*- - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _APER_DECODER_H_ -#define _APER_DECODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Aligned PER decoder of a "complete encoding" as per X.691#10.1. - * On success, this call always returns (.consumed >= 1), in BITS, as per X.691#10.1.3. - */ -asn_dec_rval_t aper_decode_complete( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ - ); - -/* - * Aligned PER decoder of any ASN.1 type. May be invoked by the application. - * WARNING: This call returns the number of BITS read from the stream. Beware. - */ -asn_dec_rval_t aper_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size, /* Size of data buffer */ - int skip_bits, /* Number of unused leading bits, 0..7 */ - int unused_bits /* Number of unused tailing bits, 0..7 */ - ); - -#ifdef __cplusplus -} -#endif - -#endif /* _APER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h deleted file mode 100644 index 957b0bdbe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_encoder.h +++ /dev/null @@ -1,63 +0,0 @@ -/*- - * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _APER_ENCODER_H_ -#define _APER_ENCODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Aligned PER encoder of any ASN.1 type. May be invoked by the application. - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. Use the following formula to convert to bytes: - * bytes = ((.encoded + 7) / 8) - */ -asn_enc_rval_t aper_encode( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * A variant of aper_encode() which encodes data into the existing buffer - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. - */ -asn_enc_rval_t aper_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (max) */ -); - -/* - * A variant of aper_encode_to_buffer() which allocates buffer itself. - * Returns the number of bytes in the buffer or -1 in case of failure. - * WARNING: This function produces a "Production of the complete encoding", - * with length of at least one octet. Contrast this to precise bit-packing - * encoding of aper_encode() and aper_encode_to_buffer(). - */ -ssize_t -aper_encode_to_new_buffer( - const struct asn_TYPE_descriptor_s *td, - const asn_per_constraints_t *constraints, - const void *sptr, - void **buffer_r -); - -#ifdef __cplusplus -} -#endif - -#endif /* _APER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h deleted file mode 100644 index 451b01c3b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_opentype.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _APER_OPENTYPE_H_ -#define _APER_OPENTYPE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -asn_dec_rval_t aper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - - -int aper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); - -int aper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po); - -#ifdef __cplusplus -} -#endif - -#endif /* _APER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h deleted file mode 100644 index a3724455c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/aper_support.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _APER_SUPPORT_H_ -#define _APER_SUPPORT_H_ - -#include /* Platform-specific types */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Get the length "n" from the Aligned PER stream. - */ -ssize_t aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, - int effective_bound_bits, int *repeat); - -/* - * Get the normally small length "n". - */ -ssize_t aper_get_nslength(asn_per_data_t *pd); - -/* - * Get the normally small non-negative whole number. - */ -ssize_t aper_get_nsnnwn(asn_per_data_t *pd, int range); - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Put the length "n" to the Aligned PER stream. - * If (opt_need_eom) is given, it will be set to 1 if final 0-n is needed. - * In that case, invoke aper_put_length(po, -1, -1, 0, NULL) after encoding the - * last block. - * This function returns the number of units which may be flushed - * in the next units saving iteration. - */ -ssize_t aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, - int *opt_need_eom); - -/* Align the current bit position to octet bundary */ -int aper_put_align(asn_per_outp_t *po); -int32_t aper_get_align(asn_per_data_t *pd); - -/* - * Put the normally small length "n" to the Unaligned PER stream. - * Returns 0 or -1. - */ -int aper_put_nslength(asn_per_outp_t *po, size_t length); - -/* - * Put the normally small non-negative whole number. - */ -int aper_put_nsnnwn(asn_per_outp_t *po, int range, int number); - -#ifdef __cplusplus -} -#endif - -#endif /* _APER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h deleted file mode 100644 index e35bc447a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SEQUENCE_OF.h +++ /dev/null @@ -1,52 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SEQUENCE_OF_H -#define ASN_SEQUENCE_OF_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * SEQUENCE OF is the same as SET OF with a tiny difference: - * the delete operation preserves the initial order of elements - * and thus MAY operate in non-constant time. - */ -#define A_SEQUENCE_OF(type) A_SET_OF(type) - -#define ASN_SEQUENCE_ADD(headptr, ptr) \ - asn_sequence_add((headptr), (ptr)) - -/*********************************************** - * Implementation of the SEQUENCE OF structure. - */ - -#define asn_sequence_add asn_set_add -#define asn_sequence_empty asn_set_empty - -/* - * Delete the element from the set by its number (base 0). - * This is NOT a constant-time operation. - * The order of elements is preserved. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; -#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) -#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h deleted file mode 100644 index 882e1a47d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_SET_OF.h +++ /dev/null @@ -1,72 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SET_OF_H -#define ASN_SET_OF_H - -#ifdef __cplusplus -#define A_SET_OF(type) \ - struct { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(decltype(*array)); \ - } -#else /* C */ -#define A_SET_OF(type) \ - struct { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(type *); \ - } -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#define ASN_SET_ADD(headptr, ptr) \ - asn_set_add((headptr), (ptr)) - -/******************************************* - * Implementation of the SET OF structure. - */ - -/* - * Add another structure into the set by its pointer. - * RETURN VALUES: - * 0 for success and -1/errno for failure. - */ -int asn_set_add(void *asn_set_of_x, void *ptr); - -/* - * Delete the element from the set by its number (base 0). - * This is a constant-time operation. The order of elements before the - * deleted ones is guaranteed, the order of elements after the deleted - * one is NOT guaranteed. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_set_del(void *asn_set_of_x, int number, int _do_free); - -/* - * Empty the contents of the set. Will free the elements, if (*free) is given. - * Will NOT free the set itself. - */ -void asn_set_empty(void *asn_set_of_x); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SET_OF(void) asn_anonymous_set_; -#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) -#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h deleted file mode 100644 index bf10cd3e2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_application.h +++ /dev/null @@ -1,173 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Application-level ASN.1 callbacks. - */ -#ifndef ASN_APPLICATION_H -#define ASN_APPLICATION_H - -#include "asn_system.h" /* for platform-dependent types */ -#include "asn_codecs.h" /* for ASN.1 codecs specifics */ -#include "asn_config.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A selection of ASN.1 Transfer Syntaxes to use with generalized - * encoders and decoders declared further in this .h file. - */ -enum asn_transfer_syntax { - /* Avoid appearance of a default transfer syntax. */ - ATS_INVALID = 0, - /* Plaintext output (not conforming to any standard), for debugging. */ - ATS_NONSTANDARD_PLAINTEXT, - /* Returns a randomly generated structure. */ - ATS_RANDOM, - /* - * X.690: - * BER: Basic Encoding Rules. - * DER: Distinguished Encoding Rules. - * CER: Canonical Encoding Rules. - * DER and CER are more strict variants of BER. - */ - ATS_BER, - ATS_DER, - ATS_CER, /* Only decoding is supported */ - /* - * X.696: - * OER: Octet Encoding Rules. - * CANONICAL-OER is a more strict variant of BASIC-OER. - */ - ATS_BASIC_OER, - ATS_CANONICAL_OER, - /* - * X.691: - * PER: Packed Encoding Rules. - * CANONICAL-PER is a more strict variant of BASIC-PER. - * NOTE: Produces or consumes a complete encoding (X.691 (08/2015) #11.1). - */ - ATS_UNALIGNED_BASIC_PER, - ATS_UNALIGNED_CANONICAL_PER, - ATS_ALIGNED_BASIC_PER, - ATS_ALIGNED_CANONICAL_PER, - /* - * X.693: - * XER: XML Encoding Rules. - * CANONICAL-XER is a more strict variant of BASIC-XER. - */ - ATS_BASIC_XER, - ATS_CANONICAL_XER, - ATS_JER, -}; - -/* - * A generic encoder for any supported transfer syntax. - * RETURN VALUES: - * The (.encoded) field of the return value is REDEFINED to mean the following: - * >=0: The computed size of the encoded data. Can exceed the (buffer_size). - * -1: Error encoding the structure. See the error code in (errno): - * EINVAL: Incorrect parameters to the function, such as NULLs. - * ENOENT: Encoding transfer syntax is not defined (for this type). - * EBADF: The structure has invalid form or content constraint failed. - * The (.failed_type) and (.structure_ptr) MIGHT be set to the appropriate - * values at the place of failure, if at all possible. - * WARNING: The (.encoded) field of the return value can exceed the buffer_size. - * This is similar to snprintf(3) contract which might return values - * greater than the buffer size. - */ -asn_enc_rval_t asn_encode_to_buffer( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode, void *buffer, size_t buffer_size); - -/* - * A variant of asn_encode_to_buffer() with automatically allocated buffer. - * RETURN VALUES: - * On success, returns a newly allocated (.buffer) containing the whole message. - * The message size is returned in (.result.encoded). - * On failure: - * (.buffer) is NULL, - * (.result.encoded) as in asn_encode_to_buffer(), - * The errno codes as in asn_encode_to_buffer(), plus the following: - * ENOMEM: Memory allocation failed due to system or internal limits. - * The user is responsible for freeing the (.buffer). - */ -typedef struct asn_encode_to_new_buffer_result_s { - void *buffer; /* NULL if failed to encode. */ - asn_enc_rval_t result; -} asn_encode_to_new_buffer_result_t; -asn_encode_to_new_buffer_result_t asn_encode_to_new_buffer( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode); - - -/* - * Generic type of an application-defined callback to return various - * types of data to the application. - * EXPECTED RETURN VALUES: - * -1: Failed to consume bytes. Abort the mission. - * Non-negative return values indicate success, and ignored. - */ -typedef int(asn_app_consume_bytes_f)(const void *buffer, size_t size, - void *application_specific_key); - - -/* - * A generic encoder for any supported transfer syntax. - * Returns the comprehensive encoding result descriptor (see asn_codecs.h). - * RETURN VALUES: - * The negative (.encoded) field of the return values is accompanied with the - * following error codes (errno): - * EINVAL: Incorrect parameters to the function, such as NULLs. - * ENOENT: Encoding transfer syntax is not defined (for this type). - * EBADF: The structure has invalid form or content constraint failed. - * EIO: The (callback) has returned negative value during encoding. - */ -asn_enc_rval_t asn_encode( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode, - asn_app_consume_bytes_f *callback, void *callback_key); - - -/* - * A generic decoder for any supported transfer syntax. - */ -asn_dec_rval_t asn_decode( - const asn_codec_ctx_t *opt_codec_parameters, enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_decode, - void **structure_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ -); - - -/* - * A callback of this type is called whenever constraint validation fails - * on some ASN.1 type. See "constraints.h" for more details on constraint - * validation. - * This callback specifies a descriptor of the ASN.1 type which failed - * the constraint check, as well as human readable message on what - * particular constraint has failed. - */ -typedef void (asn_app_constraint_failed_f)(void *application_specific_key, - const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, - const void *structure_which_failed_ptr, - const char *error_message_format, ...) CC_PRINTFLIKE(4, 5); - - -#ifdef __cplusplus -} -#endif - -#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ - -#endif /* ASN_APPLICATION_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h deleted file mode 100644 index f14714bbd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_bit_data.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_BIT_DATA -#define ASN_BIT_DATA - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * This structure describes a position inside an incoming PER bit stream. - */ -typedef struct asn_bit_data_s { - const uint8_t *buffer; /* Pointer to the octet stream */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits in the stream */ - size_t moved; /* Number of bits moved through this bit stream */ - int (*refill)(struct asn_bit_data_s *); - void *refill_key; -} asn_bit_data_t; - -/* - * Create a contiguous non-refillable bit data structure. - * Can be freed by FREEMEM(). - */ -asn_bit_data_t *asn_bit_data_new_contiguous(const void *data, size_t size_bits); - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int32_t asn_get_few_bits(asn_bit_data_t *, int get_nbits); - -/* Undo the immediately preceding "get_few_bits" operation */ -void asn_get_undo(asn_bit_data_t *, int get_nbits); - -/* - * Extract a large number of bits from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int asn_get_many_bits(asn_bit_data_t *, uint8_t *dst, int right_align, - int get_nbits); - -/* Non-thread-safe debugging function, don't use it */ -char *asn_bit_data_string(asn_bit_data_t *); - -/* - * This structure supports forming bit output. - */ -typedef struct asn_bit_outp_s { - uint8_t *buffer; /* Pointer into the (tmpspace) */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits left in (tmpspace) */ - uint8_t tmpspace[32]; /* Preliminary storage to hold data */ - int (*output)(const void *data, size_t size, void *op_key); - void *op_key; /* Key for (output) data callback */ - size_t flushed_bytes; /* Bytes already flushed through (output) */ -} asn_bit_outp_t; - -/* Output a small number of bits (<= 31) */ -int asn_put_few_bits(asn_bit_outp_t *, uint32_t bits, int obits); - -/* Output a large number of bits */ -int asn_put_many_bits(asn_bit_outp_t *, const uint8_t *src, int put_nbits); - -/* - * Flush whole bytes (0 or more) through (outper) member. - * The least significant bits which are not used are guaranteed to be set to 0. - * Returns -1 if callback returns -1. Otherwise, 0. - */ -int asn_put_aligned_flush(asn_bit_outp_t *); - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_BIT_DATA */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h deleted file mode 100644 index e75c2709c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs.h +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_CODECS_H -#define ASN_CODECS_H - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * This structure defines a set of parameters that may be passed - * to every ASN.1 encoder or decoder function. - * WARNING: if max_stack_size member is set, and you are calling the - * function pointers of the asn_TYPE_descriptor_t directly, - * this structure must be ALLOCATED ON THE STACK! - * If you can't always satisfy this requirement, use ber_decode(), - * xer_decode() and uper_decode() functions instead. - */ -typedef struct asn_codec_ctx_s { - /* - * Limit the decoder routines to use no (much) more stack than a given - * number of bytes. Most of decoders are stack-based, and this - * would protect against stack overflows if the number of nested - * encodings is high. - * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, - * and are safe from this kind of overflow. - * A value from getrlimit(RLIMIT_STACK) may be used to initialize - * this variable. Be careful in multithreaded environments, as the - * stack size is rather limited. - */ - size_t max_stack_size; /* 0 disables stack bounds checking */ -} asn_codec_ctx_t; - -/* - * Type of the return value of the encoding functions (der_encode, xer_encode). - */ -typedef struct asn_enc_rval_s { - /* - * Number of bytes encoded. - * -1 indicates failure to encode the structure. - * In this case, the members below this one are meaningful. - */ - ssize_t encoded; - - /* - * Members meaningful when (encoded == -1), for post mortem analysis. - */ - - /* Type which cannot be encoded */ - const struct asn_TYPE_descriptor_s *failed_type; - - /* Pointer to the structure of that type */ - const void *structure_ptr; -} asn_enc_rval_t; -#define ASN__ENCODE_FAILED do { \ - asn_enc_rval_t tmp_error; \ - tmp_error.encoded = -1; \ - tmp_error.failed_type = td; \ - tmp_error.structure_ptr = sptr; \ - ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define ASN__ENCODED_OK(rval) do { \ - rval.structure_ptr = 0; \ - rval.failed_type = 0; \ - return rval; \ -} while(0) - -/* - * Type of the return value of the decoding functions (ber_decode, xer_decode) - * - * Please note that the number of consumed bytes is ALWAYS meaningful, - * even if code==RC_FAIL. This is to indicate the number of successfully - * decoded bytes, hence providing a possibility to fail with more diagnostics - * (i.e., print the offending remainder of the buffer). - */ -enum asn_dec_rval_code_e { - RC_OK, /* Decoded successfully */ - RC_WMORE, /* More data expected, call again */ - RC_FAIL /* Failure to decode data */ -}; -typedef struct asn_dec_rval_s { - enum asn_dec_rval_code_e code; /* Result code */ - size_t consumed; /* Number of bytes consumed */ -} asn_dec_rval_t; -#define ASN__DECODE_FAILED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_FAIL; \ - tmp_error.consumed = 0; \ - ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define ASN__DECODE_STARVED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_WMORE; \ - tmp_error.consumed = 0; \ - return tmp_error; \ -} while(0) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_CODECS_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h deleted file mode 100644 index 5bbd9cfbc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_codecs_prim.h +++ /dev/null @@ -1,56 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_CODECS_PRIM_H -#define ASN_CODECS_PRIM_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ASN__PRIMITIVE_TYPE_s { - uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ - size_t size; /* Size of the buffer */ -} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ - -asn_struct_free_f ASN__PRIMITIVE_TYPE_free; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f ber_decode_primitive; -der_type_encoder_f der_encode_primitive; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -/* - * A callback specification for the xer_decode_primitive() function below. - */ -enum xer_pbd_rval { - XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ - XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ - XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ - XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ - XPBD_BODY_CONSUMED /* Body is recognized and consumed */ -}; -typedef enum xer_pbd_rval(xer_primitive_body_decoder_f)( - const asn_TYPE_descriptor_t *td, void *struct_ptr, const void *chunk_buf, - size_t chunk_size); - -/* - * Specific function to decode simple primitive types. - * Also see xer_decode_general() in xer_decoder.h - */ -asn_dec_rval_t xer_decode_primitive( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - size_t struct_size, const char *opt_mname, const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder); -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h deleted file mode 100644 index 551bcc7fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_config.h +++ /dev/null @@ -1,2 +0,0 @@ -// Generated automatically. Don't edit manually! - diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h deleted file mode 100644 index cdd7ad7c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_constant.h +++ /dev/null @@ -1,308 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - */ - -#ifndef _ASN_CONSTANT_H -#define _ASN_CONSTANT_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define min_val_AddGrpB_Angle (0) -#define max_val_AddGrpB_Angle (239) -#define min_val_Day (0) -#define max_val_Day (255) -#define min_val_DegreesLat (-90) -#define max_val_DegreesLat (90) -#define min_val_DegreesLong (-180) -#define max_val_DegreesLong (180) -#define min_val_AddGrpB_Elevation (-32768) -#define max_val_AddGrpB_Elevation (32767) -#define min_val_Hour (0) -#define max_val_Hour (255) -#define min_val_LatitudeDMS (-32400000) -#define max_val_LatitudeDMS (32400000) -#define min_val_LongitudeDMS (-64800000) -#define max_val_LongitudeDMS (64800000) -#define min_val_MaxTimetoChange (0) -#define max_val_MaxTimetoChange (2402) -#define min_val_MinTimetoChange (0) -#define max_val_MinTimetoChange (2402) -#define min_val_Minute (0) -#define max_val_Minute (255) -#define min_val_MinutesAngle (0) -#define max_val_MinutesAngle (59) -#define min_val_Month (1) -#define max_val_Month (255) -#define min_val_AddGrpB_MsgCount (0) -#define max_val_AddGrpB_MsgCount (255) -#define min_val_Second (0) -#define max_val_Second (60) -#define min_val_SecondsAngle (0) -#define max_val_SecondsAngle (5999) -#define min_val_TenthSecond (0) -#define max_val_TenthSecond (9) -#define min_val_TimeRemaining (0) -#define max_val_TimeRemaining (9001) -#define min_val_Year (1) -#define max_val_Year (65535) -#define min_val_AltitudeValue (-100000) -#define max_val_AltitudeValue (800001) -#define min_val_PartII_Id (0) -#define max_val_PartII_Id (63) -#define min_val_TrailerMass (0) -#define max_val_TrailerMass (255) -#define min_val_VertOffset_B07 (-64) -#define max_val_VertOffset_B07 (63) -#define min_val_Acceleration (-2000) -#define max_val_Acceleration (2001) -#define min_val_AmbientAirPressure (0) -#define max_val_AmbientAirPressure (255) -#define min_val_AmbientAirTemperature (0) -#define max_val_AmbientAirTemperature (191) -#define min_val_Common_Angle (0) -#define max_val_Common_Angle (28800) -#define min_val_ApproachID (0) -#define max_val_ApproachID (15) -#define min_val_BasicVehicleClass (0) -#define max_val_BasicVehicleClass (255) -#define min_val_BumperHeight (0) -#define max_val_BumperHeight (127) -#define min_val_CoarseHeading (0) -#define max_val_CoarseHeading (240) -#define min_val_CoefficientOfFriction (0) -#define max_val_CoefficientOfFriction (50) -#define min_val_Confidence (0) -#define max_val_Confidence (200) -#define min_val_Count (0) -#define max_val_Count (32) -#define min_val_DDay (0) -#define max_val_DDay (31) -#define min_val_DeltaAngle (-150) -#define max_val_DeltaAngle (150) -#define min_val_DHour (0) -#define max_val_DHour (31) -#define min_val_DMinute (0) -#define max_val_DMinute (60) -#define min_val_DMonth (0) -#define max_val_DMonth (12) -#define min_val_DOffset (-840) -#define max_val_DOffset (840) -#define min_val_DrivenLineOffsetLg (-32767) -#define max_val_DrivenLineOffsetLg (32767) -#define min_val_DrivenLineOffsetSm (-2047) -#define max_val_DrivenLineOffsetSm (2047) -#define min_val_DSecond (0) -#define max_val_DSecond (65535) -#define min_val_Duration (0) -#define max_val_Duration (3600) -#define min_val_DYear (0) -#define max_val_DYear (4095) -#define min_val_Common_Elevation (-4096) -#define max_val_Common_Elevation (61439) -#define min_val_FuelType (0) -#define max_val_FuelType (15) -#define min_val_GrossSpeed (0) -#define max_val_GrossSpeed (31) -#define min_val_Heading (0) -#define max_val_Heading (28800) -#define min_val_IntersectionID (0) -#define max_val_IntersectionID (65535) -#define min_val_Iso3833VehicleType (0) -#define max_val_Iso3833VehicleType (100) -#define min_val_TrailerWeight (0) -#define max_val_TrailerWeight (64255) -#define min_val_LaneConnectionID (0) -#define max_val_LaneConnectionID (255) -#define min_val_LaneID (0) -#define max_val_LaneID (255) -#define min_val_LaneWidth (0) -#define max_val_LaneWidth (32767) -#define min_val_Latitude (-900000000) -#define max_val_Latitude (900000001) -#define min_val_Longitude (-1799999999) -#define max_val_Longitude (1800000001) -#define min_val_MergeDivergeNodeAngle (-180) -#define max_val_MergeDivergeNodeAngle (180) -#define min_val_MinuteOfTheYear (0) -#define max_val_MinuteOfTheYear (527040) -#define min_val_Common_MsgCount (0) -#define max_val_Common_MsgCount (127) -#define min_val_ObstacleDistance (0) -#define max_val_ObstacleDistance (32767) -#define min_val_Offset_B09 (-256) -#define max_val_Offset_B09 (255) -#define min_val_Offset_B10 (-512) -#define max_val_Offset_B10 (511) -#define min_val_Offset_B11 (-1024) -#define max_val_Offset_B11 (1023) -#define min_val_Offset_B12 (-2048) -#define max_val_Offset_B12 (2047) -#define min_val_Offset_B13 (-4096) -#define max_val_Offset_B13 (4095) -#define min_val_Offset_B14 (-8192) -#define max_val_Offset_B14 (8191) -#define min_val_Offset_B16 (-32768) -#define max_val_Offset_B16 (32767) -#define min_val_OffsetLL_B18 (-131072) -#define max_val_OffsetLL_B18 (131071) -#define min_val_RadiusOfCurvature (-32767) -#define max_val_RadiusOfCurvature (32767) -#define min_val_RegionId (0) -#define max_val_RegionId (255) -#define min_val_RequestID (0) -#define max_val_RequestID (255) -#define min_val_RestrictionClassID (0) -#define max_val_RestrictionClassID (255) -#define min_val_RoadRegulatorID (0) -#define max_val_RoadRegulatorID (65535) -#define min_val_RoadSegmentID (0) -#define max_val_RoadSegmentID (65535) -#define min_val_RoadwayCrownAngle (-128) -#define max_val_RoadwayCrownAngle (127) -#define min_val_Scale_B12 (-2048) -#define max_val_Scale_B12 (2047) -#define min_val_SemiMajorAxisAccuracy (0) -#define max_val_SemiMajorAxisAccuracy (255) -#define min_val_SemiMajorAxisOrientation (0) -#define max_val_SemiMajorAxisOrientation (65535) -#define min_val_SemiMinorAxisAccuracy (0) -#define max_val_SemiMinorAxisAccuracy (255) -#define min_val_SignalGroupID (0) -#define max_val_SignalGroupID (255) -#define min_val_Speed (0) -#define max_val_Speed (8191) -#define min_val_SSPindex (0) -#define max_val_SSPindex (31) -#define min_val_StationID (0) -#define max_val_StationID (4294967295) -#define min_val_SteeringWheelAngle (-126) -#define max_val_SteeringWheelAngle (127) -#define min_val_TimeOffset (1) -#define max_val_TimeOffset (65535) -#define min_val_VehicleHeight (0) -#define max_val_VehicleHeight (127) -#define min_val_VehicleLength (0) -#define max_val_VehicleLength (4095) -#define min_val_VehicleMass (0) -#define max_val_VehicleMass (255) -#define min_val_VehicleWidth (0) -#define max_val_VehicleWidth (1023) -#define min_val_Velocity (0) -#define max_val_Velocity (8191) -#define min_val_VerticalAcceleration (-127) -#define max_val_VerticalAcceleration (127) -#define min_val_VertOffset_B08 (-128) -#define max_val_VertOffset_B08 (127) -#define min_val_VertOffset_B09 (-256) -#define max_val_VertOffset_B09 (255) -#define min_val_VertOffset_B10 (-512) -#define max_val_VertOffset_B10 (511) -#define min_val_VertOffset_B11 (-1024) -#define max_val_VertOffset_B11 (1023) -#define min_val_VertOffset_B12 (-2048) -#define max_val_VertOffset_B12 (2047) -#define min_val_WiperRate (0) -#define max_val_WiperRate (127) -#define min_val_YawRate (-32767) -#define max_val_YawRate (32767) -#define min_val_ITIScodes (0) -#define max_val_ITIScodes (65535) -#define min_val_LayerID (0) -#define max_val_LayerID (100) -#define min_val_DSRCmsgID (0) -#define max_val_DSRCmsgID (32767) -#define min_val_NMEA_MsgType (0) -#define max_val_NMEA_MsgType (32767) -#define min_val_ObjectCount (0) -#define max_val_ObjectCount (1023) -#define min_val_EssMobileFriction (0) -#define max_val_EssMobileFriction (101) -#define min_val_EssPrecipRate (0) -#define max_val_EssPrecipRate (65535) -#define min_val_EssSolarRadiation (0) -#define max_val_EssSolarRadiation (65535) -#define min_val_AttachmentRadius (0) -#define max_val_AttachmentRadius (200) -#define min_val_PersonalClusterRadius (0) -#define max_val_PersonalClusterRadius (100) -#define min_val_GrossDistance (0) -#define max_val_GrossDistance (1023) -#define min_val_SecondOfTime (0) -#define max_val_SecondOfTime (61) -#define min_val_TermDistance (1) -#define max_val_TermDistance (30000) -#define min_val_TermTime (1) -#define max_val_TermTime (1800) -#define min_val_DrivingWheelAngle (-128) -#define max_val_DrivingWheelAngle (127) -#define min_val_AxleLocation (0) -#define max_val_AxleLocation (255) -#define min_val_AxleWeight (0) -#define max_val_AxleWeight (64255) -#define min_val_CargoWeight (0) -#define max_val_CargoWeight (64255) -#define min_val_DriveAxleLiftAirPressure (0) -#define max_val_DriveAxleLiftAirPressure (1000) -#define min_val_DriveAxleLocation (0) -#define max_val_DriveAxleLocation (255) -#define min_val_DriveAxleLubePressure (0) -#define max_val_DriveAxleLubePressure (250) -#define min_val_DriveAxleTemperature (-40) -#define max_val_DriveAxleTemperature (210) -#define min_val_SteeringAxleLubePressure (0) -#define max_val_SteeringAxleLubePressure (250) -#define min_val_SteeringAxleTemperature (-40) -#define max_val_SteeringAxleTemperature (210) -#define min_val_TireLeakageRate (0) -#define max_val_TireLeakageRate (64255) -#define min_val_TireLocation (0) -#define max_val_TireLocation (255) -#define min_val_TirePressure (0) -#define max_val_TirePressure (250) -#define min_val_TireTemp (-8736) -#define max_val_TireTemp (55519) -#define min_val_ProbeSegmentNumber (0) -#define max_val_ProbeSegmentNumber (32767) -#define min_val_SteeringWheelAngleRateOfChange (-127) -#define max_val_SteeringWheelAngleRateOfChange (127) -#define min_val_SunSensor (0) -#define max_val_SunSensor (1000) -#define min_val_ThrottlePosition (0) -#define max_val_ThrottlePosition (200) -#define min_val_DeltaTime (-122) -#define max_val_DeltaTime (121) -#define min_val_SpeedAdvice (0) -#define max_val_SpeedAdvice (500) -#define min_val_TimeIntervalConfidence (0) -#define max_val_TimeIntervalConfidence (15) -#define min_val_SPAT_TimeMark (0) -#define max_val_SPAT_TimeMark (36111) -#define min_val_ZoneLength (0) -#define max_val_ZoneLength (10000) -#define min_val_MinutesDuration (0) -#define max_val_MinutesDuration (32000) -#define min_val_OffsetLL_B12 (-2048) -#define max_val_OffsetLL_B12 (2047) -#define min_val_OffsetLL_B14 (-8192) -#define max_val_OffsetLL_B14 (8191) -#define min_val_OffsetLL_B16 (-32768) -#define max_val_OffsetLL_B16 (32767) -#define min_val_OffsetLL_B22 (-2097152) -#define max_val_OffsetLL_B22 (2097151) -#define min_val_OffsetLL_B24 (-8388608) -#define max_val_OffsetLL_B24 (8388607) -#define min_val_Radius_B12 (0) -#define max_val_Radius_B12 (4095) -#define min_val_SignPrority (0) -#define max_val_SignPrority (7) -#define min_val_Zoom (0) -#define max_val_Zoom (15) - - -#ifdef __cplusplus -} -#endif - -#endif /* _ASN_CONSTANT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h deleted file mode 100644 index d6ce61980..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_internal.h +++ /dev/null @@ -1,187 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Declarations internally useful for the ASN.1 support code. - */ -#ifndef ASN_INTERNAL_H -#define ASN_INTERNAL_H -#ifndef __EXTENSIONS__ -#define __EXTENSIONS__ /* for Sun */ -#endif - -#include "asn_application.h" /* Application-visible API */ - -#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ -#include /* for assert() macro */ -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#include -#include -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#include -#include -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -/* Environment version might be used to avoid running with the old library */ -#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ -int get_asn1c_environment_version(void); /* Run-time version */ - -#define CALLOC(nmemb, size) calloc(nmemb, size) -#define MALLOC(size) malloc(size) -#define REALLOC(oldptr, size) realloc(oldptr, size) -#define FREEMEM(ptr) free(ptr) - -#define asn_debug_indent 0 -#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) - -#ifdef EMIT_ASN_DEBUG -#warning "Use ASN_EMIT_DEBUG instead of EMIT_ASN_DEBUG" -#define ASN_EMIT_DEBUG EMIT_ASN_DEBUG -#endif - -/* - * A macro for debugging the ASN.1 internals. - * You may enable or override it. - */ -#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ -#if ASN_EMIT_DEBUG == 1 /* And it was asked to emit this code... */ -#if __STDC_VERSION__ >= 199901L -#ifdef ASN_THREAD_SAFE -/* Thread safety requires sacrifice in output indentation: - * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ -#else /* !ASN_THREAD_SAFE */ -#undef ASN_DEBUG_INDENT_ADD -#undef asn_debug_indent -int asn_debug_indent; -#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) -#endif /* ASN_THREAD_SAFE */ -#define ASN_DEBUG(fmt, args...) do { \ - int adi = asn_debug_indent; \ - while(adi--) fprintf(stderr, " "); \ - fprintf(stderr, fmt, ##args); \ - fprintf(stderr, " (%s:%d)\n", \ - __FILE__, __LINE__); \ - } while(0) -#else /* !C99 */ -void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); -#define ASN_DEBUG ASN_DEBUG_f -#endif /* C99 */ -#else /* ASN_EMIT_DEBUG != 1 */ -#if __STDC_VERSION__ >= 199901L -#define ASN_DEBUG(...) do{}while(0) -#else /* not C99 */ -static void CC_PRINTFLIKE(1, 2) ASN_DEBUG(const char *fmt, ...) { (void)fmt; } -#endif /* C99 or better */ -#endif /* ASN_EMIT_DEBUG */ -#endif /* ASN_DEBUG */ - -/* - * Print to a callback. - * The callback is expected to return negative values on error. - * 0 and positive values are treated as success. - * RETURN VALUES: - * -1: Failed to format or invoke the callback. - * >0: Size of the data that got delivered to the callback. - */ -ssize_t CC_PRINTFLIKE(3, 4) -asn__format_to_callback( - int (*callback)(const void *, size_t, void *key), void *key, - const char *fmt, ...); - -/* - * Invoke the application-supplied callback and fail, if something is wrong. - */ -#define ASN__E_cbc(buf, size) (cb((buf), (size), app_key) < 0) -#define ASN__E_CALLBACK(size, foo) \ - do { \ - if(foo) goto cb_failed; \ - er.encoded += (size); \ - } while(0) -#define ASN__CALLBACK(buf, size) ASN__E_CALLBACK(size, ASN__E_cbc(buf, size)) -#define ASN__CALLBACK2(buf1, size1, buf2, size2) \ - ASN__E_CALLBACK((size1) + (size2), \ - ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2)) -#define ASN__CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ - ASN__E_CALLBACK((size1) + (size2) + (size3), \ - ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2) \ - || ASN__E_cbc(buf3, size3)) - -#define ASN__TEXT_INDENT(nl, level) \ - do { \ - int tmp_level = (level); \ - int tmp_nl = ((nl) != 0); \ - int tmp_i; \ - if(tmp_nl) ASN__CALLBACK("\n", 1); \ - if(tmp_level < 0) tmp_level = 0; \ - for(tmp_i = 0; tmp_i < tmp_level; tmp_i++) ASN__CALLBACK(" ", 4); \ - } while(0) - -#define _i_INDENT(nl) do { \ - int tmp_i; \ - if((nl) && cb("\n", 1, app_key) < 0) \ - return -1; \ - for(tmp_i = 0; tmp_i < ilevel; tmp_i++) \ - if(cb(" ", 4, app_key) < 0) \ - return -1; \ - } while(0) - -/* - * Check stack against overflow, if limit is set. - */ - -/* Since GCC 13, AddressSanitizer started defaulting to -* ASAN_OPTIONS="detect_stack_use_after_return=1", which makes this check -* fail due to apparently jumping stack pointers. -* Hence, disable this check if building with ASan, as documented in: -* GCC: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html -* Clang: https://clang.llvm.org/docs/AddressSanitizer.html#conditional-compilation-with-has-feature-address-sanitizer -*/ -#if defined(__SANITIZE_ADDRESS__) - #define ASN__SANITIZE_ENABLED 1 -#elif defined(__has_feature) -#if __has_feature(address_sanitizer) - #define ASN__SANITIZE_ENABLED 1 -#endif -#endif - -#define ASN__DEFAULT_STACK_MAX (30000) - -#if defined(ASN__SANITIZE_ENABLED) || defined(ASN_DISABLE_STACK_OVERFLOW_CHECK) -static int CC_NOTUSED -ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { - (void)ctx; - return 0; -} -#else -static int CC_NOTUSED -ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { - if(ctx && ctx->max_stack_size) { - - /* ctx MUST be allocated on the stack */ - ptrdiff_t usedstack = ((const char *)ctx - (const char *)&ctx); - if(usedstack > 0) usedstack = -usedstack; /* grows up! */ - - /* double negative required to avoid int wrap-around */ - if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { - ASN_DEBUG("Stack limit %ld reached", - (long)ctx->max_stack_size); - return -1; - } - } - return 0; -} -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_INTERNAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h deleted file mode 100644 index 7de210ee0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_ioc.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Run-time support for Information Object Classes. - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_IOC_H -#define ASN_IOC_H - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; -struct asn_ioc_cell_s; - -/* - * X.681, #13 - */ -typedef struct asn_ioc_set_s { - size_t rows_count; - size_t columns_count; - const struct asn_ioc_cell_s *rows; -} asn_ioc_set_t; - - -typedef struct asn_ioc_cell_s { - const char *field_name; /* Is equal to corresponding column_name */ - enum { - aioc__undefined = 0, - aioc__value, - aioc__type, - aioc__open_type, - } cell_kind; - struct asn_TYPE_descriptor_s *type_descriptor; - const void *value_sptr; - struct { - size_t types_count; - struct { - unsigned choice_position; - } *types; - } open_type; -} asn_ioc_cell_t; - - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_IOC_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h deleted file mode 100644 index 47f9b8af0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_random_fill.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_RANDOM_FILL -#define ASN_RANDOM_FILL - -/* Forward declarations */ -struct asn_TYPE_descriptor_s; -struct asn_encoding_constraints_s; - -/* - * Initialize a structure with random data according to the type specification - * and optional member constraints. - * ARGUMENTS: - * (max_length) - See (approx_max_length_limit). - * (memb_constraints) - Member constraints, if exist. - * The type can be constrained differently according - * to PER and OER specifications, so we find a value - * at the intersection of these constraints. - * In case the return differs from ARFILL_OK, the (struct_ptr) contents - * and (current_length) value remain in their original state. - */ -typedef struct asn_random_fill_result_s { - enum { - ARFILL_FAILED = -1, /* System error (memory?) */ - ARFILL_OK = 0, /* Initialization succeeded */ - ARFILL_SKIPPED = 1 /* Not done due to (length?) constraint */ - } code; - size_t length; /* Approximate number of bytes created. */ -} asn_random_fill_result_t; -typedef asn_random_fill_result_t(asn_random_fill_f)( - const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - const struct asn_encoding_constraints_s *memb_constraints, - size_t max_length); - -/* - * Returns 0 if the structure was properly initialized, -1 otherwise. - * The (approx_max_length_limit) specifies the approximate limit of the - * resulting structure in units closely resembling bytes. The actual result - * might be several times larger or smaller than the length limit. - */ -int asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - size_t approx_max_length_limit); - -/* - * Returns a random number between min and max. - */ -intmax_t asn_random_between(intmax_t min, intmax_t max); - -#endif /* ASN_RANDOM_FILL */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h deleted file mode 100644 index 0f0d495b2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/asn_system.h +++ /dev/null @@ -1,169 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Miscellaneous system-dependent types. - */ -#ifndef ASN_SYSTEM_H -#define ASN_SYSTEM_H - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#ifndef _DEFAULT_SOURCE -#define _DEFAULT_SOURCE 1 -#endif - -#ifndef _BSD_SOURCE -#define _BSD_SOURCE /* for snprintf() on some linux systems */ -#endif - -#include /* For snprintf(3) */ -#include /* For *alloc(3) */ -#include /* For memcpy(3) */ -#include /* For size_t */ -#include /* For LONG_MAX */ -#include /* For va_start */ -#include /* for offsetof and ptrdiff_t */ -#include /* for PRIdMAX */ - -#ifdef _WIN32 - -#include -#ifndef __MINGW32__ -#define snprintf _snprintf -#define vsnprintf _vsnprintf -#endif - -/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ -#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ - | (((l) << 8) & 0xff0000) \ - | (((l) >> 8) & 0xff00) \ - | ((l >> 24) & 0xff)) - -#ifdef _MSC_VER /* MSVS.Net */ -#ifndef __cplusplus -#define inline __inline -#endif -#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ -#define ssize_t SSIZE_T -#if _MSC_VER < 1600 -typedef char int8_t; -typedef short int16_t; -typedef int int32_t; -typedef unsigned char uint8_t; -typedef unsigned short uint16_t; -typedef unsigned int uint32_t; -#else /* _MSC_VER >= 1600 */ -#include -#endif /* _MSC_VER < 1600 */ -#endif /* ASSUMESTDTYPES */ -#define WIN32_LEAN_AND_MEAN -#include -#include -#define isnan _isnan -#define finite _finite -#define copysign _copysign -#define ilogb _logb -#else /* !_MSC_VER */ -#include -#endif /* _MSC_VER */ - -#else /* !_WIN32 */ - -#if defined(__vxworks) -#include -#else /* !defined(__vxworks) */ - -#include /* C99 specifies this file */ -#ifdef HAVE_NETINET_IN_H -#include /* for ntohl() */ -#endif -#define sys_ntohl(foo) ntohl(foo) -#endif /* defined(__vxworks) */ - -#endif /* _WIN32 */ - -#if __GNUC__ >= 3 || defined(__clang__) -#define CC_ATTRIBUTE(attr) __attribute__((attr)) -#else -#define CC_ATTRIBUTE(attr) -#endif -#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__>= 4) || __GNUC__ > 4) -#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(gnu_printf, fmt, var)) -#elif defined(__GNUC__) -#if defined(ANDROID) -#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(__format__(__printf__, fmt, var)) -#else -#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(printf, fmt, var)) -#endif -#else -#define CC_PRINTFLIKE(fmt, var) -#endif -#define CC_NOTUSED CC_ATTRIBUTE(unused) -#ifndef CC_ATTR_NO_SANITIZE -#if __GNUC__ < 8 -#define CC_ATTR_NO_SANITIZE(what) -#else -#define CC_ATTR_NO_SANITIZE(what) CC_ATTRIBUTE(no_sanitize(what)) -#endif -#endif - -/* Figure out if thread safety is requested */ -#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) -#define ASN_THREAD_SAFE -#endif /* Thread safety */ - -#ifndef offsetof /* If not defined by */ -#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) -#endif /* offsetof */ - -#ifndef MIN /* Suitable for comparing primitive types (integers) */ -#if defined(__GNUC__) -#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ - ((_a)<(_b)?(_a):(_b)); }) -#else /* !__GNUC__ */ -#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ -#endif /* __GNUC__ */ -#endif /* MIN */ - -#if __STDC_VERSION__ >= 199901L -#ifndef SIZE_MAX -#define SIZE_MAX ((~((size_t)0)) >> 1) -#endif - -#ifndef RSIZE_MAX /* C11, Annex K */ -#define RSIZE_MAX (SIZE_MAX >> 1) -#endif -#ifndef RSSIZE_MAX /* Halve signed size even further than unsigned */ -#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) -#endif -#else /* Old compiler */ -#undef SIZE_MAX -#undef RSIZE_MAX -#undef RSSIZE_MAX -#define SIZE_MAX ((~((size_t)0)) >> 1) -#define RSIZE_MAX (SIZE_MAX >> 1) -#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) -#endif - -#if __STDC_VERSION__ >= 199901L -#define ASN_PRI_SIZE "zu" -#define ASN_PRI_SSIZE "zd" -#define ASN_PRIuMAX PRIuMAX -#define ASN_PRIdMAX PRIdMAX -#else -#define ASN_PRI_SIZE "lu" -#define ASN_PRI_SSIZE "ld" -#if LLONG_MAX > LONG_MAX -#define ASN_PRIuMAX "llu" -#define ASN_PRIdMAX "lld" -#else -#define ASN_PRIuMAX "lu" -#define ASN_PRIdMAX "ld" -#endif -#endif - -#endif /* ASN_SYSTEM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h deleted file mode 100644 index 1ac2a5ef0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_decoder.h +++ /dev/null @@ -1,66 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_DECODER_H_ -#define _BER_DECODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_codec_ctx_s; /* Forward declaration */ - -/* - * The BER decoder of any type. - * This function may be invoked directly from the application. - * Decodes BER, DER and CER data (DER and CER are different subsets of BER). - * - * NOTE: Use the der_encode() function (der_encoder.h) to produce encoding - * which is compliant with ber_decode(). - */ -asn_dec_rval_t ber_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ -); - -/* - * Type of generic function which decodes the byte stream into the structure. - */ -typedef asn_dec_rval_t(ber_type_decoder_f)( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, - const void *buf_ptr, size_t size, int tag_mode); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Check that all tags correspond to the type definition (as given in head). - * On return, last_length would contain either a non-negative length of the - * value part of the last TLV, or the negative number of expected - * "end of content" sequences. The number may only be negative if the - * head->last_tag_form is non-zero. - */ -asn_dec_rval_t ber_check_tags( - const struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ - const struct asn_TYPE_descriptor_s *type_descriptor, - asn_struct_ctx_t *opt_ctx, /* saved decoding context */ - const void *ptr, size_t size, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {-1,0:1}: any, primitive, constr */ - ber_tlv_len_t *last_length, int *opt_tlv_form /* optional tag form */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h deleted file mode 100644 index d1e4d48dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_length.h +++ /dev/null @@ -1,50 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_LENGTH_H_ -#define _BER_TLV_LENGTH_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ssize_t ber_tlv_len_t; - -/* - * This function tries to fetch the length of the BER TLV value and place it - * in *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - * On return with >0, len_r is constrained as -1..MAX, where -1 mean - * that the value is of indefinite length. - */ -ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r); - -/* - * This function expects bufptr to be positioned over L in TLV. - * It returns number of bytes occupied by L and V together, suitable - * for skipping. The function properly handles indefinite length. - * RETURN VALUES: - * Standard {-1,0,>0} convention. - */ -ssize_t ber_skip_length( - const struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ - int _is_constructed, const void *bufptr, size_t size); - -/* - * This function serializes the length (L from TLV) in DER format. - * It always returns number of bytes necessary to represent the length, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h deleted file mode 100644 index ce227add6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/ber_tlv_tag.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_TAG_H_ -#define _BER_TLV_TAG_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum asn_tag_class { - ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ - ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ - ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ - ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ -}; -typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ - -/* - * Tag class is encoded together with tag value for optimization purposes. - */ -#define BER_TAG_CLASS(tag) ((tag) & 0x3) -#define BER_TAG_VALUE(tag) ((tag) >> 2) -#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) - -#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) - -/* - * Several functions for printing the TAG in the canonical form - * (i.e. "[PRIVATE 0]"). - * Return values correspond to their libc counterparts (if any). - */ -ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); -ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); -char *ber_tlv_tag_string(ber_tlv_tag_t tag); - - -/* - * This function tries to fetch the tag from the input stream. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering tag. - * >0: Number of bytes used from bufptr. tag_r will contain the tag. - */ -ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); - -/* - * This function serializes the tag (T from TLV) in BER format. - * It always returns number of bytes necessary to represent the tag, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h deleted file mode 100644 index 03d606c88..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_CHOICE.h +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_CHOICE_H_ -#define _CONSTR_CHOICE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_CHOICE_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_codec_ctx_t member */ - unsigned pres_offset; /* Identifier of the present member */ - unsigned pres_size; /* Size of the identifier (enum) */ - - /* - * Tags to members mapping table. - */ - const asn_TYPE_tag2member_t *tag2el; - unsigned tag2el_count; - - /* Canonical ordering of CHOICE elements, for PER */ - const unsigned *to_canonical_order; - const unsigned *from_canonical_order; - - /* - * Extensions-related stuff. - */ - signed ext_start; /* First member of extensions, or -1 */ -} asn_CHOICE_specifics_t; - -/* - * A set specialized functions dealing with the CHOICE type. - */ -asn_struct_free_f CHOICE_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f CHOICE_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f CHOICE_compare; - -asn_constr_check_f CHOICE_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f CHOICE_decode_ber; -der_type_encoder_f CHOICE_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f CHOICE_decode_xer; -xer_type_encoder_f CHOICE_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f CHOICE_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f CHOICE_decode_oer; -oer_type_encoder_f CHOICE_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f CHOICE_decode_uper; -per_type_encoder_f CHOICE_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f CHOICE_decode_aper; -per_type_encoder_f CHOICE_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f CHOICE_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -asn_outmost_tag_f CHOICE_outmost_tag; - -extern asn_TYPE_operation_t asn_OP_CHOICE; - -unsigned _fetch_present_idx( - const void *struct_ptr, - unsigned off, - unsigned size); - -void _set_present_idx( - void *sptr, - unsigned offset, - unsigned size, - unsigned present); - -/* - * Return the 1-based choice variant presence index. - * Returns 0 in case of error. - */ -unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, - const void *structure_ptr); - -/* - * Sets or resets the 1-based choice variant presence index. - * In case a previous index is not zero, the currently selected structure - * member is freed and zeroed-out first. - * Returns 0 on success and -1 on error. - */ -int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, - void *structure_ptr, unsigned present); - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h deleted file mode 100644 index 5ecfd8f22..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE.h +++ /dev/null @@ -1,95 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_H_ -#define _CONSTR_SEQUENCE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SEQUENCE_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* - * Tags to members mapping table (sorted). - */ - const asn_TYPE_tag2member_t *tag2el; - unsigned tag2el_count; - - /* - * Optional members of the extensions root (roms) or additions (aoms). - * Meaningful for PER. - */ - const int *oms; /* Optional MemberS */ - unsigned roms_count; /* Root optional members count */ - unsigned aoms_count; /* Additions optional members count */ - - /* - * Description of an extensions group. - * Root components are clustered at the beginning of the structure, - * whereas extensions are clustered at the end. -1 means not extensible. - */ - signed first_extension; /* First extension addition */ -} asn_SEQUENCE_specifics_t; - - -/* - * A set specialized functions dealing with the SEQUENCE type. - */ -asn_struct_free_f SEQUENCE_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f SEQUENCE_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f SEQUENCE_compare; - -asn_constr_check_f SEQUENCE_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f SEQUENCE_decode_ber; -der_type_encoder_f SEQUENCE_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f SEQUENCE_decode_xer; -xer_type_encoder_f SEQUENCE_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f SEQUENCE_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f SEQUENCE_decode_oer; -oer_type_encoder_f SEQUENCE_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f SEQUENCE_decode_uper; -per_type_encoder_f SEQUENCE_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f SEQUENCE_decode_aper; -per_type_encoder_f SEQUENCE_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f SEQUENCE_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -extern asn_TYPE_operation_t asn_OP_SEQUENCE; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h deleted file mode 100644 index 1768582bf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SEQUENCE_OF.h +++ /dev/null @@ -1,67 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_OF_H_ -#define _CONSTR_SEQUENCE_OF_H_ - -#include -#include /* Implemented using SET OF */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A set specialized functions dealing with the SEQUENCE OF type. - * Generally implemented using SET OF. - */ -#define SEQUENCE_OF_free SET_OF_free - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -#define SEQUENCE_OF_print SET_OF_print -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f SEQUENCE_OF_compare; - -#define SEQUENCE_OF_constraint SET_OF_constraint - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#define SEQUENCE_OF_decode_ber SET_OF_decode_ber -der_type_encoder_f SEQUENCE_OF_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#define SEQUENCE_OF_decode_xer SET_OF_decode_xer -xer_type_encoder_f SEQUENCE_OF_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f SEQUENCE_OF_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -#define SEQUENCE_OF_decode_oer SET_OF_decode_oer -#define SEQUENCE_OF_encode_oer SET_OF_encode_oer -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -#define SEQUENCE_OF_decode_uper SET_OF_decode_uper -per_type_encoder_f SEQUENCE_OF_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -#define SEQUENCE_OF_decode_aper SET_OF_decode_aper -per_type_encoder_f SEQUENCE_OF_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -#define SEQUENCE_OF_random_fill SET_OF_random_fill -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -extern asn_TYPE_operation_t asn_OP_SEQUENCE_OF; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h deleted file mode 100644 index 0e9dd39a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_SET_OF.h +++ /dev/null @@ -1,102 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef CONSTR_SET_OF_H -#define CONSTR_SET_OF_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SET_OF_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* XER-specific stuff */ - int as_XMLValueList; /* The member type must be encoded like this */ -} asn_SET_OF_specifics_t; - -/* - * A set specialized functions dealing with the SET OF type. - */ -asn_struct_free_f SET_OF_free; - -#if !defined(ASN_DISABLE_PRINT_SUPPORT) -asn_struct_print_f SET_OF_print; -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - -asn_struct_compare_f SET_OF_compare; - -asn_constr_check_f SET_OF_constraint; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -ber_type_decoder_f SET_OF_decode_ber; -der_type_encoder_f SET_OF_encode_der; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -xer_type_decoder_f SET_OF_decode_xer; -xer_type_encoder_f SET_OF_encode_xer; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -jer_type_encoder_f SET_OF_encode_jer; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -oer_type_decoder_f SET_OF_decode_oer; -oer_type_encoder_f SET_OF_encode_oer; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) -per_type_decoder_f SET_OF_decode_uper; -per_type_encoder_f SET_OF_encode_uper; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) -per_type_decoder_f SET_OF_decode_aper; -per_type_encoder_f SET_OF_encode_aper; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -asn_random_fill_f SET_OF_random_fill; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -extern asn_TYPE_operation_t asn_OP_SET_OF; - -/* - * Internally visible buffer holding a single encoded element. - */ -struct _el_buffer { - uint8_t *buf; - size_t length; - size_t allocated_size; - unsigned bits_unused; -}; - -enum SET_OF__encode_method { - SOES_DER, /* Distinguished Encoding Rules */ - SOES_CUPER, /* Canonical Unaligned Packed Encoding Rules */ - SOES_CAPER /* Canonical Aligned Packed Encoding Rules */ -}; - -struct _el_buffer * SET_OF__encode_sorted( - const asn_TYPE_member_t *elm, - const asn_anonymous_set_ *list, - enum SET_OF__encode_method method); - -void SET_OF__encode_sorted_free( - struct _el_buffer *el_buf, - size_t count); - -#ifdef __cplusplus -} -#endif - -#endif /* CONSTR_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h deleted file mode 100644 index 55c2574a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constr_TYPE.h +++ /dev/null @@ -1,295 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This file contains the declaration structure called "ASN.1 Type Definition", - * which holds all information necessary for encoding and decoding routines. - * This structure even contains pointer to these encoding and decoding routines - * for each defined ASN.1 type. - */ -#ifndef _CONSTR_TYPE_H_ -#define _CONSTR_TYPE_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_TYPE_member_s; /* Forward declaration */ - -/* - * This type provides the context information for various ASN.1 routines, - * primarily ones doing decoding. A member _asn_ctx of this type must be - * included into certain target language's structures, such as compound types. - */ -typedef struct asn_struct_ctx_s { - short phase; /* Decoding phase */ - short step; /* Elementary step of a phase */ - int context; /* Other context information */ - void *ptr; /* Decoder-specific stuff (stack elements) */ - ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ -} asn_struct_ctx_t; - -#if !defined(ASN_DISABLE_BER_SUPPORT) -#include /* Basic Encoding Rules decoder */ -#include /* Distinguished Encoding Rules encoder */ -#else -typedef void (ber_type_decoder_f)(void); -typedef void (der_type_encoder_f)(void); -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) -#include /* Decoder of XER (XML, text) */ -#include /* Encoder into XER (XML, text) */ -#else -typedef void (xer_type_decoder_f)(void); -typedef void (xer_type_encoder_f)(void); -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) -#include /* Encoder into JER (JSON, text) */ -#else -typedef void (jer_type_encoder_f)(void); -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -#include /* Packet Encoding Rules decoder */ -#include /* Packet Encoding Rules encoder */ -#else -typedef void (per_type_decoder_f)(void); -typedef void (per_type_encoder_f)(void); -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - -#include /* Subtype constraints support */ - -#if !defined(ASN_DISABLE_RFILL_SUPPORT) -#include /* Random structures support */ -#else -typedef void (asn_random_fill_f)(void); -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) -#include /* Octet Encoding Rules encoder */ -#include /* Octet Encoding Rules encoder */ -#else -typedef void (oer_type_decoder_f)(void); -typedef void (oer_type_encoder_f)(void); -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -/* - * Free the structure according to its specification. - * Use one of ASN_STRUCT_{FREE,RESET,CONTENTS_ONLY} macros instead. - * Do not use directly. - */ -enum asn_struct_free_method { - ASFM_FREE_EVERYTHING, /* free(struct_ptr) and underlying members */ - ASFM_FREE_UNDERLYING, /* free underlying members */ - ASFM_FREE_UNDERLYING_AND_RESET /* FREE_UNDERLYING + memset(0) */ -}; -typedef void (asn_struct_free_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, enum asn_struct_free_method); - -/* - * Free the structure including freeing the memory pointed to by ptr itself. - */ -#define ASN_STRUCT_FREE(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_EVERYTHING) - -/* - * Free the memory used by the members of the structure without freeing the - * the structure pointer itself. - * ZERO-OUT the structure to the safe clean state. - * (Retaining the pointer may be useful in case the structure is allocated - * statically or arranged on the stack, yet its elements are dynamic.) - */ -#define ASN_STRUCT_RESET(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING_AND_RESET) - -/* - * Free memory used by the members of the structure without freeing - * the structure pointer itself. - * (Retaining the pointer may be useful in case the structure is allocated - * statically or arranged on the stack, yet its elements are dynamic.) - * AVOID using it in the application code; - * Use a safer ASN_STRUCT_RESET() instead. - */ -#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING) - -/* - * Print the structure according to its specification. - */ -typedef int(asn_struct_print_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, - int level, /* Indentation level */ - asn_app_consume_bytes_f *callback, void *app_key); - -/* - * Compare two structs between each other. - * Returns <0 if struct_A is "smaller" than struct_B, >0 if "greater", - * and =0 if "equal to", for some type-specific, stable definition of - * "smaller", "greater" and "equal to". - */ -typedef int (asn_struct_compare_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_A, - const void *struct_B); - -/* - * Return the outmost tag of the type. - * If the type is untagged CHOICE, the dynamic operation is performed. - * NOTE: This function pointer type is only useful internally. - * Do not use it in your application. - */ -typedef ber_tlv_tag_t (asn_outmost_tag_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); -/* The instance of the above function type; used internally. */ -asn_outmost_tag_f asn_TYPE_outmost_tag; - -/* - * Fetch the desired type of the Open Type based on the - * Information Object Set driven constraints. - */ -typedef struct asn_type_selector_result_s { - const struct asn_TYPE_descriptor_s *type_descriptor; /* Type encoded. */ - unsigned presence_index; /* Associated choice variant. */ -} asn_type_selector_result_t; -typedef asn_type_selector_result_t(asn_type_selector_f)( - const struct asn_TYPE_descriptor_s *parent_type_descriptor, - const void *parent_structure_ptr); - -/* - * Generalized functions for dealing with the speciic type. - * May be directly invoked by applications. - */ -typedef struct asn_TYPE_operation_s { - asn_struct_free_f *free_struct; /* Free the structure */ - asn_struct_print_f *print_struct; /* Human readable output */ - asn_struct_compare_f *compare_struct; /* Compare two structures */ - ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ - der_type_encoder_f *der_encoder; /* Canonical DER encoder */ - xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ - xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ - jer_type_encoder_f *jer_encoder; /* Generic JER encoder */ - oer_type_decoder_f *oer_decoder; /* Generic OER decoder */ - oer_type_encoder_f *oer_encoder; /* Canonical OER encoder */ - per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ - per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ - per_type_decoder_f *aper_decoder; /* Aligned PER decoder */ - per_type_encoder_f *aper_encoder; /* Aligned PER encoder */ - asn_random_fill_f *random_fill; /* Initialize with a random value */ - asn_outmost_tag_f *outmost_tag; /* */ -} asn_TYPE_operation_t; - -/* - * A constraints tuple specifying both the OER and PER constraints. - */ -typedef struct asn_encoding_constraints_s { -#if !defined(ASN_DISABLE_OER_SUPPORT) - const struct asn_oer_constraints_s *oer_constraints; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - const struct asn_per_constraints_s *per_constraints; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_constr_check_f *general_constraints; -} asn_encoding_constraints_t; - -/* - * The definitive description of the destination language's structure. - */ -typedef struct asn_TYPE_descriptor_s { - const char *name; /* A name of the ASN.1 type. "" in some cases. */ - const char *xml_tag; /* Name used in XML tag */ - - /* - * Generalized functions for dealing with the specific type. - * May be directly invoked by applications. - */ - asn_TYPE_operation_t *op; - - /*********************************************************************** - * Internally useful members. Not to be used by applications directly. * - **********************************************************************/ - - /* - * Tags that are expected to occur. - */ - const ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ - unsigned tags_count; /* Number of tags which are expected */ - const ber_tlv_tag_t *all_tags; /* Every tag for BER/containment */ - unsigned all_tags_count; /* Number of tags */ - - /* OER, PER, and general constraints */ - asn_encoding_constraints_t encoding_constraints; - - /* - * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). - */ - struct asn_TYPE_member_s *elements; - unsigned elements_count; - - /* - * Additional information describing the type, used by appropriate - * functions above. - */ - const void *specifics; -} asn_TYPE_descriptor_t; - -/* - * This type describes an element of the constructed type, - * i.e. SEQUENCE, SET, CHOICE, etc. - */ - enum asn_TYPE_flags_e { - ATF_NOFLAGS, - ATF_POINTER = 0x01, /* Represented by the pointer */ - ATF_OPEN_TYPE = 0x02, /* Open Type */ - ATF_ANY_TYPE = 0x04 /* ANY type (deprecated!) */ - }; -typedef struct asn_TYPE_member_s { - enum asn_TYPE_flags_e flags; /* Element's presentation flags */ - unsigned optional; /* Following optional members, including current */ - unsigned memb_offset; /* Offset of the element */ - ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ - int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ - asn_TYPE_descriptor_t *type; /* Member type descriptor */ - asn_type_selector_f *type_selector; /* IoS runtime type selector */ - asn_encoding_constraints_t encoding_constraints; - int (*default_value_cmp)(const void *sptr); /* Compare DEFAULT */ - int (*default_value_set)(void **sptr); /* Set DEFAULT */ - const char *name; /* ASN.1 identifier of the element */ -} asn_TYPE_member_t; - -/* - * BER tag to element number mapping. - */ -typedef struct asn_TYPE_tag2member_s { - ber_tlv_tag_t el_tag; /* Outmost tag of the member */ - unsigned el_no; /* Index of the associated member, base 0 */ - int toff_first; /* First occurrence of the el_tag, relative */ - int toff_last; /* Last occurrence of the el_tag, relative */ -} asn_TYPE_tag2member_t; - -/* - * This function prints out the contents of the target language's structure - * (struct_ptr) into the file pointer (stream) in human readable form. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem dumping the structure. - * (See also xer_fprint() in xer_encoder.h) - */ -int asn_fprint(FILE *stream, /* Destination stream descriptor */ - const asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ - const void *struct_ptr); /* Structure to be printed */ - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h deleted file mode 100644 index 0c093fa82..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/constraints.h +++ /dev/null @@ -1,63 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN1_CONSTRAINTS_VALIDATOR_H -#define ASN1_CONSTRAINTS_VALIDATOR_H - -#include /* Platform-dependent types */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Validate the structure according to the ASN.1 constraints. - * If errbuf and errlen are given, they shall be pointing to the appropriate - * buffer space and its length before calling this function. Alternatively, - * they could be passed as NULL's. If constraints validation fails, - * errlen will contain the actual number of bytes taken from the errbuf - * to encode an error message (properly 0-terminated). - * - * RETURN VALUES: - * This function returns 0 in case all ASN.1 constraints are met - * and -1 if one or more constraints were failed. - */ -int asn_check_constraints( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Target language's structure */ - char *errbuf, /* Returned error description */ - size_t *errlen /* Length of the error description */ -); - - -/* - * Generic type for constraint checking callback, - * associated with every type descriptor. - */ -typedef int(asn_constr_check_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct_ptr, - asn_app_constraint_failed_f *optional_callback, /* Log the error */ - void *optional_app_key /* Opaque key passed to a callback */ -); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ -asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ - -/* - * Invoke the callback with a complete error message. - */ -#define ASN__CTFAIL if(ctfailcb) ctfailcb - -#ifdef __cplusplus -} -#endif - -#endif /* ASN1_CONSTRAINTS_VALIDATOR_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h deleted file mode 100644 index e93944edc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/der_encoder.h +++ /dev/null @@ -1,68 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _DER_ENCODER_H_ -#define _DER_ENCODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The DER encoder of any type. May be invoked by the application. - * Produces DER- and BER-compliant encoding. (DER is a subset of BER). - * - * NOTE: Use the ber_decode() function (ber_decoder.h) to decode data - * produced by der_encode(). - */ -asn_enc_rval_t der_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* A variant of der_encode() which encodes data into the pre-allocated buffer */ -asn_enc_rval_t der_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -); - -/* - * Type of the generic DER encoder. - */ -typedef asn_enc_rval_t(der_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - ber_tlv_tag_t tag, asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t der_write_tags(const struct asn_TYPE_descriptor_s *type_descriptor, - size_t struct_length, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {0,!0}: prim, constructed */ - ber_tlv_tag_t tag, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key); - -#ifdef __cplusplus -} -#endif - -#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h deleted file mode 100644 index 672976d26..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/jer_encoder.h +++ /dev/null @@ -1,86 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _JER_ENCODER_H_ -#define _JER_ENCODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* Flags used by the jer_encode() and (*jer_type_encoder_f), defined below - * - * This isn't actually used, it might be used in the future to support - * both normal JSON and prettified JSON output or removed. - * It came from XER - */ -enum jer_encoder_flags_e { - /* Mode of encoding */ - JER_F = 0x01, /* JER (pretty-printing) */ -}; - -/* - * The JER encoder of any type. May be invoked by the application. - * Produces JER output. - */ -asn_enc_rval_t jer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* - * The variant of the above function which dumps the JER - * output into the chosen file pointer. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem printing the structure. - * WARNING: No sensible errno value is returned. - */ -int jer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, - const void *struct_ptr); - -/* - * A helper function that uses JER encoding/decoding to verify that: - * - Both structures encode into the same JER. - * - Both resulting JER byte streams can be decoded back. - * - Both decoded structures encode into the same JER (round-trip). - * All of this verifies equivalence between structures and a round-trip. - * ARGUMENTS: - * (opt_debug_stream) - If specified, prints ongoing details. - */ -enum jer_equivalence_e { - JEQ_SUCCESS, /* The only completely positive return value */ - JEQ_FAILURE, /* General failure */ - JEQ_ENCODE1_FAILED, /* First structure JER encoding failed */ - JEQ_ENCODE2_FAILED, /* Second structure JER encoding failed */ - JEQ_DIFFERENT, /* Structures encoded into different JER */ - JEQ_DECODE_FAILED, /* Decode of the JER data failed */ - JEQ_ROUND_TRIP_FAILED /* Bad round-trip */ -}; -enum jer_equivalence_e jer_equivalent( - const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, - const void *struct2, FILE *opt_debug_stream); - -/* - * Type of the generic JER encoder. - */ -typedef asn_enc_rval_t(jer_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - int ilevel, /* Level of indentation */ - enum jer_encoder_flags_e jer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _JER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h deleted file mode 100644 index 40992e948..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_decoder.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_DECODER_H -#define OER_DECODER_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_codec_ctx_s; /* Forward declaration */ - -/* - * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type. - * This function may be invoked directly by the application. - * Parses CANONICAL-OER and BASIC-OER. - */ -asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ - ); - -/* - * Type of generic function which decodes the byte stream into the structure. - */ -typedef asn_dec_rval_t(oer_type_decoder_f)( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - void **struct_ptr, - const void *buf_ptr, - size_t size); - -/* - * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null. - * RETURN VALUES: - * -1: Fatal error deciphering length. - * 0: More data expected than bufptr contains. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_open_type_skip(const void *bufptr, size_t size); - -/* - * Read the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, - void **struct_ptr, const void *bufptr, size_t size); - -/* - * Length-prefixed buffer decoding for primitive types. - */ -oer_type_decoder_f oer_decode_primitive; - - -#ifdef __cplusplus -} -#endif - -#endif /* OER_DECODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h deleted file mode 100644 index 6a7b68125..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_encoder.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_ENCODER_H -#define OER_ENCODER_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type. - * This function may be invoked directly by the application. - * Produces CANONICAL-OER output compatible with CANONICAL-OER - * and BASIC-OER decoders. - */ -asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* A variant of oer_encode() which encodes data into the pre-allocated buffer */ -asn_enc_rval_t oer_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -); - -/* - * Type of the generic OER encoder. - */ -typedef asn_enc_rval_t(oer_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * Write out the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * -1: Fatal error encoding the type. - * >0: Number of bytes serialized. - */ -ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key); - - -/* - * Length-prefixed buffer encoding for primitive types. - */ -oer_type_encoder_f oer_encode_primitive; - -#ifdef __cplusplus -} -#endif - -#endif /* OER_ENCODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h deleted file mode 100644 index dbc9b5fcf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/oer_support.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_SUPPORT_H -#define OER_SUPPORT_H - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Pre-computed OER constraints. - */ -typedef struct asn_oer_constraint_number_s { - unsigned width; /* ±8,4,2,1 fixed bytes */ - unsigned positive; /* 1 for unsigned number, 0 for signed */ -} asn_oer_constraint_number_t; -typedef struct asn_oer_constraints_s { - asn_oer_constraint_number_t value; - ssize_t size; /* -1 (no constraint) or >= 0 */ -} asn_oer_constraints_t; - - -/* - * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r); - -/* - * Serialize OER length. Returns the number of bytes serialized - * or -1 if a given callback returned with negative result. - */ -ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key); - - -#ifdef __cplusplus -} -#endif - -#endif /* OER_SUPPORT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h deleted file mode 100644 index 3cc0c6bf7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_decoder.h +++ /dev/null @@ -1,30 +0,0 @@ -/*- - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_DECODER_H_ -#define _PER_DECODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Type of the type-specific PER decoder function. - */ -typedef asn_dec_rval_t(per_type_decoder_f)( - const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, void **struct_ptr, - asn_per_data_t *per_data); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h deleted file mode 100644 index 8bb077170..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_encoder.h +++ /dev/null @@ -1,38 +0,0 @@ -/*- - * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_ENCODER_H_ -#define _PER_ENCODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Type of the generic PER encoder function. - */ -typedef asn_enc_rval_t(per_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); - -int ignore_output(const void *data, size_t size, void *app_key); - -typedef struct enc_dyn_arg { - void *buffer; - size_t length; - size_t allocated; -} enc_dyn_arg; -int encode_dyn_cb(const void *buffer, size_t size, void *key); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h deleted file mode 100644 index fc3785566..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_opentype.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_OPENTYPE_H_ -#define _PER_OPENTYPE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -asn_dec_rval_t uper_sot_suck( - const asn_codec_ctx_t *, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h deleted file mode 100644 index b3056a21a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/per_support.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_SUPPORT_H_ -#define _PER_SUPPORT_H_ - -#include /* Platform-specific types */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Pre-computed PER constraints. - */ -typedef struct asn_per_constraint_s { - enum asn_per_constraint_flags { - APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ - APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ - APC_CONSTRAINED = 0x2, /* Fully constrained */ - APC_EXTENSIBLE = 0x4 /* May have extension */ - } flags; - int range_bits; /* Full number of bits in the range */ - int effective_bits; /* Effective bits */ - intmax_t lower_bound; /* "lb" value */ - intmax_t upper_bound; /* "ub" value */ -} asn_per_constraint_t; -typedef struct asn_per_constraints_s { - asn_per_constraint_t value; - asn_per_constraint_t size; - int (*value2code)(unsigned int value); - int (*code2value)(unsigned int code); -} asn_per_constraints_t; - -/* Temporary compatibility layer. Will get removed. */ -typedef struct asn_bit_data_s asn_per_data_t; -#define per_get_few_bits(data, bits) asn_get_few_bits(data, bits) -#define per_get_undo(data, bits) asn_get_undo(data, bits) -#define per_get_many_bits(data, dst, align, bits) \ - asn_get_many_bits(data, dst, align, bits) - -/* Temporary compatibility layer. Will get removed. */ -typedef struct asn_bit_outp_s asn_per_outp_t; -#define per_put_few_bits(out, bits, obits) asn_put_few_bits(out, bits, obits) -#define per_put_many_bits(out, src, nbits) asn_put_many_bits(out, src, nbits) -#define per_put_aligned_flush(out) asn_put_aligned_flush(out) - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h deleted file mode 100644 index ded851565..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_decoder.h +++ /dev/null @@ -1,47 +0,0 @@ -/*- - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UPER_DECODER_H_ -#define _UPER_DECODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER decoder of a "complete encoding" as per X.691 (08/2015) #11.1. - * On success, this call always returns (.consumed >= 1), as per #11.1.3. - */ -asn_dec_rval_t uper_decode_complete( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ -); - -/* - * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. - * WARNING: This call returns the number of BITS read from the stream. Beware. - */ -asn_dec_rval_t uper_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size, /* Size of the input data buffer, in bytes */ - int skip_bits, /* Number of unused leading bits, 0..7 */ - int unused_bits /* Number of unused tailing bits, 0..7 */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _UPER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h deleted file mode 100644 index 8f73980c3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_encoder.h +++ /dev/null @@ -1,62 +0,0 @@ -/*- - * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UPER_ENCODER_H_ -#define _UPER_ENCODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. Use the following formula to convert to bytes: - * bytes = ((.encoded + 7) / 8) - */ -asn_enc_rval_t uper_encode( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * A variant of uper_encode() which encodes data into the existing buffer - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. - */ -asn_enc_rval_t uper_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (max) */ -); - -/* - * A variant of uper_encode_to_buffer() which allocates buffer itself. - * Returns the number of bytes in the buffer or -1 in case of failure. - * WARNING: This function produces a "Production of the complete encoding", - * with length of at least one octet. Contrast this to precise bit-packing - * encoding of uper_encode() and uper_encode_to_buffer(). - */ -ssize_t uper_encode_to_new_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void **buffer_r /* Buffer allocated and returned */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _UPER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h deleted file mode 100644 index 3a248225f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_opentype.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UPER_OPENTYPE_H_ -#define _UPER_OPENTYPE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -asn_dec_rval_t uper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - -int uper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, - asn_per_data_t *pd); - -/* - * X.691 (2015/08), #11.2 - * Returns -1 if error is encountered. 0 if all OK. - */ -int uper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po); - -#ifdef __cplusplus -} -#endif - -#endif /* _UPER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h deleted file mode 100644 index 6c9d4ea74..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/uper_support.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UPER_SUPPORT_H_ -#define _UPER_SUPPORT_H_ - -#include /* Platform-specific types */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Get the length "n" from the Unaligned PER stream. - */ -ssize_t uper_get_length(asn_per_data_t *pd, int effective_bound_bits, - size_t lower_bound, int *repeat); - -/* - * Get the normally small length "n". - */ -ssize_t uper_get_nslength(asn_per_data_t *pd); - -/* - * Get the normally small non-negative whole number. - */ -ssize_t uper_get_nsnnwn(asn_per_data_t *pd); - -/* X.691-2008/11, #11.5.6 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *v, int nbits); - -/* - * Rebase the given value as an offset into the range specified by the - * lower bound (lb) and upper bound (ub). - * RETURN VALUES: - * -1: Conversion failed due to range problems. - * 0: Conversion was successful. - */ -int per_long_range_rebase(long, intmax_t lb, intmax_t ub, unsigned long *output); -int per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output); -/* The inverse operation: restores the value by the offset and its bounds. */ -int per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp); -int per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp); - -/* X.691-2008/11, #11.5 */ -int uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, int nbits); - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Put the length "whole_length" to the Unaligned PER stream. - * If (opt_need_eom) is given, it will be set to 1 if final 0-length is needed. - * In that case, invoke uper_put_length(po, 0, 0) after encoding the last block. - * This function returns the number of units which may be flushed - * in the next units saving iteration. - */ -ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length, - int *opt_need_eom); - -/* - * Put the normally small length "n" to the Unaligned PER stream. - * Returns 0 or -1. - */ -int uper_put_nslength(asn_per_outp_t *po, size_t length); - -/* - * Put the normally small non-negative whole number. - */ -int uper_put_nsnnwn(asn_per_outp_t *po, int n); - -#ifdef __cplusplus -} -#endif - -#endif /* _UPER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h deleted file mode 100644 index b951c41d1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_decoder.h +++ /dev/null @@ -1,106 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_DECODER_H_ -#define _XER_DECODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The XER decoder of any ASN.1 type. May be invoked by the application. - * Decodes CANONICAL-XER and BASIC-XER. - */ -asn_dec_rval_t xer_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ -); - -/* - * Type of the type-specific XER decoder function. - */ -typedef asn_dec_rval_t(xer_type_decoder_f)( - const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, - const char *opt_mname, /* Member name */ - const void *buf_ptr, size_t size); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Generalized function for decoding the primitive values. - * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 - * and others. This function should not be used by applications, as its API - * is subject to changes. - */ -asn_dec_rval_t xer_decode_general( - const asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, /* Treated as opaque pointer */ - const char *xml_tag, /* Expected XML tag name */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder)(void *struct_key, const void *chunk_buf, - size_t chunk_size), - ssize_t (*body_receiver)(void *struct_key, const void *chunk_buf, - size_t chunk_size, int have_more)); - - -/* - * Fetch the next XER (XML) token from the stream. - * The function returns the number of bytes occupied by the chunk type, - * returned in the _ch_type. The _ch_type is only set (and valid) when - * the return value is >= 0. - */ - typedef enum pxer_chunk_type { - PXER_WMORE, /* Chunk type is not clear, more data expected. */ - PXER_TAG, /* Complete XER tag */ - PXER_TEXT, /* Plain text between XER tags */ - PXER_COMMENT /* A comment, may be part of */ - } pxer_chunk_type_e; -ssize_t xer_next_token(int *stateContext, - const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); - -/* - * This function checks the buffer against the tag name is expected to occur. - */ - typedef enum xer_check_tag { - XCT_BROKEN = 0, /* The tag is broken */ - XCT_OPENING = 1, /* This is the tag */ - XCT_CLOSING = 2, /* This is the tag */ - XCT_BOTH = 3, /* This is the tag */ - XCT__UNK__MASK = 4, /* Mask of everything unexpected */ - XCT_UNKNOWN_OP = 5, /* Unexpected tag */ - XCT_UNKNOWN_CL = 6, /* Unexpected tag */ - XCT_UNKNOWN_BO = 7 /* Unexpected tag */ - } xer_check_tag_e; -xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, - const char *need_tag); - -/* - * Get the number of bytes consisting entirely of XER whitespace characters. - * RETURN VALUES: - * >=0: Number of whitespace characters in the string. - */ -size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); - -/* - * Skip the series of anticipated extensions. - */ -int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h deleted file mode 100644 index 6cfc505fa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_encoder.h +++ /dev/null @@ -1,83 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_ENCODER_H_ -#define _XER_ENCODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ -enum xer_encoder_flags_e { - /* Mode of encoding */ - XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ - XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ -}; - -/* - * The XER encoder of any type. May be invoked by the application. - * Produces CANONICAL-XER and BASIC-XER depending on the (xer_flags). - */ -asn_enc_rval_t xer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* - * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) - * output into the chosen file pointer. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem printing the structure. - * WARNING: No sensible errno value is returned. - */ -int xer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, - const void *struct_ptr); - -/* - * A helper function that uses XER encoding/decoding to verify that: - * - Both structures encode into the same BASIC XER. - * - Both resulting XER byte streams can be decoded back. - * - Both decoded structures encode into the same BASIC XER (round-trip). - * All of this verifies equivalence between structures and a round-trip. - * ARGUMENTS: - * (opt_debug_stream) - If specified, prints ongoing details. - */ -enum xer_equivalence_e { - XEQ_SUCCESS, /* The only completely positive return value */ - XEQ_FAILURE, /* General failure */ - XEQ_ENCODE1_FAILED, /* First structure XER encoding failed */ - XEQ_ENCODE2_FAILED, /* Second structure XER encoding failed */ - XEQ_DIFFERENT, /* Structures encoded into different XER */ - XEQ_DECODE_FAILED, /* Decode of the XER data failed */ - XEQ_ROUND_TRIP_FAILED /* Bad round-trip */ -}; -enum xer_equivalence_e xer_equivalent( - const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, - const void *struct2, FILE *opt_debug_stream); - -/* - * Type of the generic XER encoder. - */ -typedef asn_enc_rval_t(xer_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - int ilevel, /* Level of indentation */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h deleted file mode 100644 index 2c3f369b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_2020/xer_support.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_SUPPORT_H_ -#define _XER_SUPPORT_H_ - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Types of data transferred to the application. - */ -typedef enum { - PXML_TEXT, /* Plain text between XML tags. */ - PXML_TAG, /* A tag, starting with '<'. */ - PXML_COMMENT, /* An XML comment, including "". */ - /* - * The following chunk types are reported if the chunk - * terminates the specified XML element. - */ - PXML_TAG_END, /* Tag ended */ - PXML_COMMENT_END /* Comment ended */ -} pxml_chunk_type_e; - -/* - * Callback function that is called by the parser when parsed data is - * available. The _opaque is the pointer to a field containing opaque user - * data specified in pxml_create() call. The chunk type is _type and the text - * data is the piece of buffer identified by _bufid (as supplied to - * pxml_feed() call) starting at offset _offset and of _size bytes size. - * The chunk is NOT '\0'-terminated. - */ -typedef int (pxml_callback_f)(pxml_chunk_type_e _type, - const void *_chunk_data, size_t _chunk_size, void *_key); - -/* - * Parse the given buffer as it were a chunk of XML data. - * Invoke the specified callback each time the meaningful data is found. - * This function returns number of bytes consumed from the buffer. - * It will always be lesser than or equal to the specified _size. - * The next invocation of this function must account the difference. - */ -ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, - pxml_callback_f *cb, void *_key); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h deleted file mode 100644 index af69d5233..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AccelSteerYawRateConfidence_H_ -#define _AccelSteerYawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "SteeringWheelAngleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelSteerYawRateConfidence */ -typedef struct AccelSteerYawRateConfidence { - YawRateConfidence_t yawRate; - AccelerationConfidence_t acceleration; - SteeringWheelAngleConfidence_t steeringWheelAngle; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AccelSteerYawRateConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelSteerYawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h deleted file mode 100644 index 9530a17dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Acceleration_H_ -#define _Acceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Acceleration */ -typedef long Acceleration_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Acceleration; -asn_struct_free_f Acceleration_free; -asn_struct_print_f Acceleration_print; -asn_constr_check_f Acceleration_constraint; -ber_type_decoder_f Acceleration_decode_ber; -der_type_encoder_f Acceleration_encode_der; -xer_type_decoder_f Acceleration_decode_xer; -xer_type_encoder_f Acceleration_encode_xer; -per_type_decoder_f Acceleration_decode_uper; -per_type_encoder_f Acceleration_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Acceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h deleted file mode 100644 index 391a3da92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AccelerationConfidence_H_ -#define _AccelerationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AccelerationConfidence { - AccelerationConfidence_unavailable = 0, - AccelerationConfidence_accl_100_00 = 1, - AccelerationConfidence_accl_010_00 = 2, - AccelerationConfidence_accl_005_00 = 3, - AccelerationConfidence_accl_001_00 = 4, - AccelerationConfidence_accl_000_10 = 5, - AccelerationConfidence_accl_000_05 = 6, - AccelerationConfidence_accl_000_01 = 7 -} e_AccelerationConfidence; - -/* AccelerationConfidence */ -typedef long AccelerationConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; -asn_struct_free_f AccelerationConfidence_free; -asn_struct_print_f AccelerationConfidence_print; -asn_constr_check_f AccelerationConfidence_constraint; -ber_type_decoder_f AccelerationConfidence_decode_ber; -der_type_encoder_f AccelerationConfidence_encode_der; -xer_type_decoder_f AccelerationConfidence_decode_xer; -xer_type_encoder_f AccelerationConfidence_encode_xer; -per_type_decoder_f AccelerationConfidence_decode_uper; -per_type_encoder_f AccelerationConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h deleted file mode 100644 index 64fd54b73..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AccelerationSet4Way_H_ -#define _AccelerationSet4Way_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelerationSet4Way */ -typedef OCTET_STRING_t AccelerationSet4Way_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; -asn_struct_free_f AccelerationSet4Way_free; -asn_struct_print_f AccelerationSet4Way_print; -asn_constr_check_f AccelerationSet4Way_constraint; -ber_type_decoder_f AccelerationSet4Way_decode_ber; -der_type_encoder_f AccelerationSet4Way_encode_der; -xer_type_decoder_f AccelerationSet4Way_decode_xer; -xer_type_encoder_f AccelerationSet4Way_encode_xer; -per_type_decoder_f AccelerationSet4Way_decode_uper; -per_type_encoder_f AccelerationSet4Way_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationSet4Way_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h deleted file mode 100644 index 242d91911..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AdvisorySpeed_H_ -#define _AdvisorySpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AdvisorySpeedType.h" -#include "SpeedAdvice.h" -#include "SpeedConfidence.h" -#include "ZoneLength.h" -#include "RestrictionClassID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_AdvisorySpeed; - -/* AdvisorySpeed */ -typedef struct AdvisorySpeed { - AdvisorySpeedType_t type; - SpeedAdvice_t *speed /* OPTIONAL */; - SpeedConfidence_t *confidence /* OPTIONAL */; - ZoneLength_t *distance /* OPTIONAL */; - RestrictionClassID_t *Class /* OPTIONAL */; - struct Reg_AdvisorySpeed *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AdvisorySpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalAdvisorySpeed.h" - -#endif /* _AdvisorySpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h deleted file mode 100644 index 707d5a4e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AdvisorySpeedList_H_ -#define _AdvisorySpeedList_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 AdvisorySpeed; - -/* AdvisorySpeedList */ -typedef struct AdvisorySpeedList { - A_SEQUENCE_OF(struct AdvisorySpeed) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AdvisorySpeedList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AdvisorySpeed.h" - -#endif /* _AdvisorySpeedList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h deleted file mode 100644 index 84bac56a9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AdvisorySpeedType_H_ -#define _AdvisorySpeedType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AdvisorySpeedType { - AdvisorySpeedType_none = 0, - AdvisorySpeedType_greenwave = 1, - AdvisorySpeedType_ecoDrive = 2, - AdvisorySpeedType_transit = 3 - /* - * Enumeration is extensible - */ -} e_AdvisorySpeedType; - -/* AdvisorySpeedType */ -typedef long AdvisorySpeedType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; -asn_struct_free_f AdvisorySpeedType_free; -asn_struct_print_f AdvisorySpeedType_print; -asn_constr_check_f AdvisorySpeedType_constraint; -ber_type_decoder_f AdvisorySpeedType_decode_ber; -der_type_encoder_f AdvisorySpeedType_encode_der; -xer_type_decoder_f AdvisorySpeedType_decode_xer; -xer_type_encoder_f AdvisorySpeedType_encode_xer; -per_type_decoder_f AdvisorySpeedType_decode_uper; -per_type_encoder_f AdvisorySpeedType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AdvisorySpeedType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h deleted file mode 100644 index 22c96e4fa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AllowedManeuvers_H_ -#define _AllowedManeuvers_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AllowedManeuvers { - AllowedManeuvers_maneuverStraightAllowed = 0, - AllowedManeuvers_maneuverLeftAllowed = 1, - AllowedManeuvers_maneuverRightAllowed = 2, - AllowedManeuvers_maneuverUTurnAllowed = 3, - AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, - AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, - AllowedManeuvers_maneuverLaneChangeAllowed = 6, - AllowedManeuvers_maneuverNoStoppingAllowed = 7, - AllowedManeuvers_yieldAllwaysRequired = 8, - AllowedManeuvers_goWithHalt = 9, - AllowedManeuvers_caution = 10, - AllowedManeuvers_reserved1 = 11 -} e_AllowedManeuvers; - -/* AllowedManeuvers */ -typedef BIT_STRING_t AllowedManeuvers_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; -asn_struct_free_f AllowedManeuvers_free; -asn_struct_print_f AllowedManeuvers_print; -asn_constr_check_f AllowedManeuvers_constraint; -ber_type_decoder_f AllowedManeuvers_decode_ber; -der_type_encoder_f AllowedManeuvers_encode_der; -xer_type_decoder_f AllowedManeuvers_decode_xer; -xer_type_encoder_f AllowedManeuvers_encode_xer; -per_type_decoder_f AllowedManeuvers_decode_uper; -per_type_encoder_f AllowedManeuvers_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AllowedManeuvers_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h deleted file mode 100644 index 09ed8b5c9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Altitude_H_ -#define _Altitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AltitudeValue.h" -#include "AltitudeConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Altitude */ -typedef struct Altitude { - AltitudeValue_t value; - AltitudeConfidence_t confidence; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Altitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Altitude; - -#ifdef __cplusplus -} -#endif - -#endif /* _Altitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h deleted file mode 100644 index 006ade96a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AltitudeConfidence_H_ -#define _AltitudeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AltitudeConfidence { - AltitudeConfidence_alt_000_01 = 0, - AltitudeConfidence_alt_000_02 = 1, - AltitudeConfidence_alt_000_05 = 2, - AltitudeConfidence_alt_000_10 = 3, - AltitudeConfidence_alt_000_20 = 4, - AltitudeConfidence_alt_000_50 = 5, - AltitudeConfidence_alt_001_00 = 6, - AltitudeConfidence_alt_002_00 = 7, - AltitudeConfidence_alt_005_00 = 8, - AltitudeConfidence_alt_010_00 = 9, - AltitudeConfidence_alt_020_00 = 10, - AltitudeConfidence_alt_050_00 = 11, - AltitudeConfidence_alt_100_00 = 12, - AltitudeConfidence_alt_200_00 = 13, - AltitudeConfidence_outOfRange = 14, - AltitudeConfidence_unavailable = 15 -} e_AltitudeConfidence; - -/* AltitudeConfidence */ -typedef long AltitudeConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; -asn_struct_free_f AltitudeConfidence_free; -asn_struct_print_f AltitudeConfidence_print; -asn_constr_check_f AltitudeConfidence_constraint; -ber_type_decoder_f AltitudeConfidence_decode_ber; -der_type_encoder_f AltitudeConfidence_encode_der; -xer_type_decoder_f AltitudeConfidence_decode_xer; -xer_type_encoder_f AltitudeConfidence_encode_xer; -per_type_decoder_f AltitudeConfidence_decode_uper; -per_type_encoder_f AltitudeConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h deleted file mode 100644 index 48cd544a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AltitudeValue_H_ -#define _AltitudeValue_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AltitudeValue */ -typedef long AltitudeValue_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; -asn_struct_free_f AltitudeValue_free; -asn_struct_print_f AltitudeValue_print; -asn_constr_check_f AltitudeValue_constraint; -ber_type_decoder_f AltitudeValue_decode_ber; -der_type_encoder_f AltitudeValue_encode_der; -xer_type_decoder_f AltitudeValue_decode_xer; -xer_type_encoder_f AltitudeValue_encode_xer; -per_type_decoder_f AltitudeValue_decode_uper; -per_type_encoder_f AltitudeValue_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeValue_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h deleted file mode 100644 index dc2c0b7da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AmbientAirPressure_H_ -#define _AmbientAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirPressure */ -typedef long AmbientAirPressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; -asn_struct_free_f AmbientAirPressure_free; -asn_struct_print_f AmbientAirPressure_print; -asn_constr_check_f AmbientAirPressure_constraint; -ber_type_decoder_f AmbientAirPressure_decode_ber; -der_type_encoder_f AmbientAirPressure_encode_der; -xer_type_decoder_f AmbientAirPressure_decode_xer; -xer_type_encoder_f AmbientAirPressure_encode_xer; -per_type_decoder_f AmbientAirPressure_decode_uper; -per_type_encoder_f AmbientAirPressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h deleted file mode 100644 index 395f45a9b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AmbientAirTemperature_H_ -#define _AmbientAirTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirTemperature */ -typedef long AmbientAirTemperature_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; -asn_struct_free_f AmbientAirTemperature_free; -asn_struct_print_f AmbientAirTemperature_print; -asn_constr_check_f AmbientAirTemperature_constraint; -ber_type_decoder_f AmbientAirTemperature_decode_ber; -der_type_encoder_f AmbientAirTemperature_encode_der; -xer_type_decoder_f AmbientAirTemperature_decode_xer; -xer_type_encoder_f AmbientAirTemperature_encode_xer; -per_type_decoder_f AmbientAirTemperature_decode_uper; -per_type_encoder_f AmbientAirTemperature_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h deleted file mode 100644 index d85ab337e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Angle_H_ -#define _Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Angle */ -typedef long Angle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Angle; -asn_struct_free_f Angle_free; -asn_struct_print_f Angle_print; -asn_constr_check_f Angle_constraint; -ber_type_decoder_f Angle_decode_ber; -der_type_encoder_f Angle_encode_der; -xer_type_decoder_f Angle_decode_xer; -xer_type_encoder_f Angle_encode_xer; -per_type_decoder_f Angle_decode_uper; -per_type_encoder_f Angle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h deleted file mode 100644 index aa2be8dfc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _AnimalPropelledType_H_ -#define _AnimalPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalPropelledType { - AnimalPropelledType_unavailable = 0, - AnimalPropelledType_otherTypes = 1, - AnimalPropelledType_animalMounted = 2, - AnimalPropelledType_animalDrawnCarriage = 3 - /* - * Enumeration is extensible - */ -} e_AnimalPropelledType; - -/* AnimalPropelledType */ -typedef long AnimalPropelledType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; -asn_struct_free_f AnimalPropelledType_free; -asn_struct_print_f AnimalPropelledType_print; -asn_constr_check_f AnimalPropelledType_constraint; -ber_type_decoder_f AnimalPropelledType_decode_ber; -der_type_encoder_f AnimalPropelledType_encode_der; -xer_type_decoder_f AnimalPropelledType_decode_xer; -xer_type_encoder_f AnimalPropelledType_encode_xer; -per_type_decoder_f AnimalPropelledType_decode_uper; -per_type_encoder_f AnimalPropelledType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h deleted file mode 100644 index f6b67c1cc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _AnimalType_H_ -#define _AnimalType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalType { - AnimalType_unavailable = 0, - AnimalType_serviceUse = 1, - AnimalType_pet = 2, - AnimalType_farm = 3 - /* - * Enumeration is extensible - */ -} e_AnimalType; - -/* AnimalType */ -typedef long AnimalType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AnimalType; -asn_struct_free_f AnimalType_free; -asn_struct_print_f AnimalType_print; -asn_constr_check_f AnimalType_constraint; -ber_type_decoder_f AnimalType_decode_ber; -der_type_encoder_f AnimalType_encode_der; -xer_type_decoder_f AnimalType_decode_xer; -xer_type_encoder_f AnimalType_encode_xer; -per_type_decoder_f AnimalType_decode_uper; -per_type_encoder_f AnimalType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h deleted file mode 100644 index 3a69eaef2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AntennaOffsetSet_H_ -#define _AntennaOffsetSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AntennaOffsetSet */ -typedef OCTET_STRING_t AntennaOffsetSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; -asn_struct_free_f AntennaOffsetSet_free; -asn_struct_print_f AntennaOffsetSet_print; -asn_constr_check_f AntennaOffsetSet_constraint; -ber_type_decoder_f AntennaOffsetSet_decode_ber; -der_type_encoder_f AntennaOffsetSet_encode_der; -xer_type_decoder_f AntennaOffsetSet_decode_xer; -xer_type_encoder_f AntennaOffsetSet_encode_xer; -per_type_decoder_f AntennaOffsetSet_decode_uper; -per_type_encoder_f AntennaOffsetSet_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntennaOffsetSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h deleted file mode 100644 index a729d525e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AntiLockBrakeStatus_H_ -#define _AntiLockBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AntiLockBrakeStatus { - AntiLockBrakeStatus_unavailable = 0, - AntiLockBrakeStatus_off = 1, - AntiLockBrakeStatus_on = 2, - AntiLockBrakeStatus_engaged = 3 -} e_AntiLockBrakeStatus; - -/* AntiLockBrakeStatus */ -typedef long AntiLockBrakeStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; -asn_struct_free_f AntiLockBrakeStatus_free; -asn_struct_print_f AntiLockBrakeStatus_print; -asn_constr_check_f AntiLockBrakeStatus_constraint; -ber_type_decoder_f AntiLockBrakeStatus_decode_ber; -der_type_encoder_f AntiLockBrakeStatus_encode_der; -xer_type_decoder_f AntiLockBrakeStatus_decode_xer; -xer_type_encoder_f AntiLockBrakeStatus_encode_xer; -per_type_decoder_f AntiLockBrakeStatus_decode_uper; -per_type_encoder_f AntiLockBrakeStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntiLockBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h deleted file mode 100644 index 64f908651..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ApproachID_H_ -#define _ApproachID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ApproachID */ -typedef long ApproachID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ApproachID; -asn_struct_free_f ApproachID_free; -asn_struct_print_f ApproachID_print; -asn_constr_check_f ApproachID_constraint; -ber_type_decoder_f ApproachID_decode_ber; -der_type_encoder_f ApproachID_encode_der; -xer_type_decoder_f ApproachID_decode_xer; -xer_type_encoder_f ApproachID_encode_xer; -per_type_decoder_f ApproachID_decode_uper; -per_type_encoder_f ApproachID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ApproachID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h deleted file mode 100644 index ab98b1a0c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _Attachment_H_ -#define _Attachment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Attachment { - Attachment_unavailable = 0, - Attachment_stroller = 1, - Attachment_bicycleTrailer = 2, - Attachment_cart = 3, - Attachment_wheelchair = 4, - Attachment_otherWalkAssistAttachments = 5, - Attachment_pet = 6 - /* - * Enumeration is extensible - */ -} e_Attachment; - -/* Attachment */ -typedef long Attachment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Attachment; -asn_struct_free_f Attachment_free; -asn_struct_print_f Attachment_print; -asn_constr_check_f Attachment_constraint; -ber_type_decoder_f Attachment_decode_ber; -der_type_encoder_f Attachment_encode_der; -xer_type_decoder_f Attachment_decode_xer; -xer_type_encoder_f Attachment_encode_xer; -per_type_decoder_f Attachment_decode_uper; -per_type_encoder_f Attachment_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Attachment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h deleted file mode 100644 index d279df415..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _AttachmentRadius_H_ -#define _AttachmentRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AttachmentRadius */ -typedef long AttachmentRadius_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; -asn_struct_free_f AttachmentRadius_free; -asn_struct_print_f AttachmentRadius_print; -asn_constr_check_f AttachmentRadius_constraint; -ber_type_decoder_f AttachmentRadius_decode_ber; -der_type_encoder_f AttachmentRadius_encode_der; -xer_type_decoder_f AttachmentRadius_decode_xer; -xer_type_encoder_f AttachmentRadius_encode_xer; -per_type_decoder_f AttachmentRadius_decode_uper; -per_type_encoder_f AttachmentRadius_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AttachmentRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h deleted file mode 100644 index 8f55485a4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AuxiliaryBrakeStatus_H_ -#define _AuxiliaryBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AuxiliaryBrakeStatus { - AuxiliaryBrakeStatus_unavailable = 0, - AuxiliaryBrakeStatus_off = 1, - AuxiliaryBrakeStatus_on = 2, - AuxiliaryBrakeStatus_reserved = 3 -} e_AuxiliaryBrakeStatus; - -/* AuxiliaryBrakeStatus */ -typedef long AuxiliaryBrakeStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; -asn_struct_free_f AuxiliaryBrakeStatus_free; -asn_struct_print_f AuxiliaryBrakeStatus_print; -asn_constr_check_f AuxiliaryBrakeStatus_constraint; -ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; -der_type_encoder_f AuxiliaryBrakeStatus_encode_der; -xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; -xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; -per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; -per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AuxiliaryBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h deleted file mode 100644 index 3af48dc26..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AxleLocation_H_ -#define _AxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleLocation */ -typedef long AxleLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; -asn_struct_free_f AxleLocation_free; -asn_struct_print_f AxleLocation_print; -asn_constr_check_f AxleLocation_constraint; -ber_type_decoder_f AxleLocation_decode_ber; -der_type_encoder_f AxleLocation_encode_der; -xer_type_decoder_f AxleLocation_decode_xer; -xer_type_encoder_f AxleLocation_encode_xer; -per_type_decoder_f AxleLocation_decode_uper; -per_type_encoder_f AxleLocation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h deleted file mode 100644 index d66a002db..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _AxleWeight_H_ -#define _AxleWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleWeight */ -typedef long AxleWeight_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; -asn_struct_free_f AxleWeight_free; -asn_struct_print_f AxleWeight_print; -asn_constr_check_f AxleWeight_constraint; -ber_type_decoder_f AxleWeight_decode_ber; -der_type_encoder_f AxleWeight_encode_der; -xer_type_decoder_f AxleWeight_decode_xer; -xer_type_encoder_f AxleWeight_encode_xer; -per_type_decoder_f AxleWeight_decode_uper; -per_type_encoder_f AxleWeight_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h deleted file mode 100644 index 75435b89d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h +++ /dev/null @@ -1,33 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BIT_STRING_H_ -#define _BIT_STRING_H_ - -#include "OCTET_STRING.h" /* Some help from OCTET STRING */ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct BIT_STRING_s { - uint8_t *buf; /* BIT STRING body */ - int size; /* Size of the above buffer */ - - int bits_unused;/* Unused trailing bits in the last octet (0..7) */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} BIT_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; - -asn_struct_print_f BIT_STRING_print; /* Human-readable output */ -asn_constr_check_f BIT_STRING_constraint; -xer_type_encoder_f BIT_STRING_encode_xer; - -#ifdef __cplusplus -} -#endif - -#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h deleted file mode 100644 index ebe5f8b44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h +++ /dev/null @@ -1,36 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BOOLEAN_H_ -#define _BOOLEAN_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The underlying integer may contain various values, but everything - * non-zero is capped to 0xff by the DER encoder. The BER decoder may - * yield non-zero values different from 1, beware. - */ -typedef int BOOLEAN_t; - -extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; - -asn_struct_free_f BOOLEAN_free; -asn_struct_print_f BOOLEAN_print; -ber_type_decoder_f BOOLEAN_decode_ber; -der_type_encoder_f BOOLEAN_encode_der; -xer_type_decoder_f BOOLEAN_decode_xer; -xer_type_encoder_f BOOLEAN_encode_xer; -per_type_decoder_f BOOLEAN_decode_uper; -per_type_encoder_f BOOLEAN_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h deleted file mode 100644 index 69dca1fe4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BSMblob_H_ -#define _BSMblob_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BSMblob */ -typedef OCTET_STRING_t BSMblob_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BSMblob; -asn_struct_free_f BSMblob_free; -asn_struct_print_f BSMblob_print; -asn_constr_check_f BSMblob_constraint; -ber_type_decoder_f BSMblob_decode_ber; -der_type_encoder_f BSMblob_encode_der; -xer_type_decoder_f BSMblob_decode_xer; -xer_type_encoder_f BSMblob_encode_xer; -per_type_decoder_f BSMblob_decode_uper; -per_type_encoder_f BSMblob_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BSMblob_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h deleted file mode 100644 index a53d6a479..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BasicSafetyMessage_H_ -#define _BasicSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "BSMblob.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleSafetyExtension; -struct VehicleStatus; - -/* BasicSafetyMessage */ -typedef struct BasicSafetyMessage { - DSRCmsgID_t msgID; - BSMblob_t blob1; - struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; - struct VehicleStatus *status /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BasicSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleSafetyExtension.h" -#include "VehicleStatus.h" - -#endif /* _BasicSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h deleted file mode 100644 index cd72fd2d0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BasicSafetyMessageVerbose_H_ -#define _BasicSafetyMessageVerbose_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "TemporaryID.h" -#include "DSecond.h" -#include "Latitude.h" -#include "Longitude.h" -#include "Elevation.h" -#include "PositionalAccuracy.h" -#include "TransmissionAndSpeed.h" -#include "Heading.h" -#include "SteeringWheelAngle.h" -#include "AccelerationSet4Way.h" -#include "BrakeSystemStatus.h" -#include "VehicleSize.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleSafetyExtension; -struct VehicleStatus; - -/* BasicSafetyMessageVerbose */ -typedef struct BasicSafetyMessageVerbose { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - TemporaryID_t id; - DSecond_t secMark; - Latitude_t lat; - Longitude_t Long; - Elevation_t elev; - PositionalAccuracy_t accuracy; - TransmissionAndSpeed_t speed; - Heading_t heading; - SteeringWheelAngle_t angle; - AccelerationSet4Way_t accelSet; - BrakeSystemStatus_t brakes; - VehicleSize_t size; - struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; - struct VehicleStatus *status /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BasicSafetyMessageVerbose_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessageVerbose; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleSafetyExtension.h" -#include "VehicleStatus.h" - -#endif /* _BasicSafetyMessageVerbose_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h deleted file mode 100644 index 4530e6051..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BrakeAppliedPressure_H_ -#define _BrakeAppliedPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedPressure { - BrakeAppliedPressure_unavailable = 0, - BrakeAppliedPressure_minPressure = 1, - BrakeAppliedPressure_bkLvl_2 = 2, - BrakeAppliedPressure_bkLvl_3 = 3, - BrakeAppliedPressure_bkLvl_4 = 4, - BrakeAppliedPressure_bkLvl_5 = 5, - BrakeAppliedPressure_bkLvl_6 = 6, - BrakeAppliedPressure_bkLvl_7 = 7, - BrakeAppliedPressure_bkLvl_8 = 8, - BrakeAppliedPressure_bkLvl_9 = 9, - BrakeAppliedPressure_bkLvl_10 = 10, - BrakeAppliedPressure_bkLvl_11 = 11, - BrakeAppliedPressure_bkLvl_12 = 12, - BrakeAppliedPressure_bkLvl_13 = 13, - BrakeAppliedPressure_bkLvl_14 = 14, - BrakeAppliedPressure_maxPressure = 15 -} e_BrakeAppliedPressure; - -/* BrakeAppliedPressure */ -typedef long BrakeAppliedPressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; -asn_struct_free_f BrakeAppliedPressure_free; -asn_struct_print_f BrakeAppliedPressure_print; -asn_constr_check_f BrakeAppliedPressure_constraint; -ber_type_decoder_f BrakeAppliedPressure_decode_ber; -der_type_encoder_f BrakeAppliedPressure_encode_der; -xer_type_decoder_f BrakeAppliedPressure_decode_xer; -xer_type_encoder_f BrakeAppliedPressure_encode_xer; -per_type_decoder_f BrakeAppliedPressure_decode_uper; -per_type_encoder_f BrakeAppliedPressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h deleted file mode 100644 index 69fd80985..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BrakeAppliedStatus_H_ -#define _BrakeAppliedStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedStatus { - BrakeAppliedStatus_allOff = 0, - BrakeAppliedStatus_leftFront = 1, - BrakeAppliedStatus_leftRear = 2, - BrakeAppliedStatus_rightFront = 4, - BrakeAppliedStatus_rightRear = 8 -} e_BrakeAppliedStatus; - -/* BrakeAppliedStatus */ -typedef BIT_STRING_t BrakeAppliedStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; -asn_struct_free_f BrakeAppliedStatus_free; -asn_struct_print_f BrakeAppliedStatus_print; -asn_constr_check_f BrakeAppliedStatus_constraint; -ber_type_decoder_f BrakeAppliedStatus_decode_ber; -der_type_encoder_f BrakeAppliedStatus_encode_der; -xer_type_decoder_f BrakeAppliedStatus_decode_xer; -xer_type_encoder_f BrakeAppliedStatus_encode_xer; -per_type_decoder_f BrakeAppliedStatus_decode_uper; -per_type_encoder_f BrakeAppliedStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h deleted file mode 100644 index e2c2d8abb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BrakeBoostApplied_H_ -#define _BrakeBoostApplied_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeBoostApplied { - BrakeBoostApplied_unavailable = 0, - BrakeBoostApplied_off = 1, - BrakeBoostApplied_on = 2 -} e_BrakeBoostApplied; - -/* BrakeBoostApplied */ -typedef long BrakeBoostApplied_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; -asn_struct_free_f BrakeBoostApplied_free; -asn_struct_print_f BrakeBoostApplied_print; -asn_constr_check_f BrakeBoostApplied_constraint; -ber_type_decoder_f BrakeBoostApplied_decode_ber; -der_type_encoder_f BrakeBoostApplied_encode_der; -xer_type_decoder_f BrakeBoostApplied_decode_xer; -xer_type_encoder_f BrakeBoostApplied_encode_xer; -per_type_decoder_f BrakeBoostApplied_decode_uper; -per_type_encoder_f BrakeBoostApplied_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeBoostApplied_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h deleted file mode 100644 index 7325ecc9a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BrakeSystemStatus_H_ -#define _BrakeSystemStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BrakeSystemStatus */ -typedef OCTET_STRING_t BrakeSystemStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; -asn_struct_free_f BrakeSystemStatus_free; -asn_struct_print_f BrakeSystemStatus_print; -asn_constr_check_f BrakeSystemStatus_constraint; -ber_type_decoder_f BrakeSystemStatus_decode_ber; -der_type_encoder_f BrakeSystemStatus_encode_der; -xer_type_decoder_f BrakeSystemStatus_decode_xer; -xer_type_encoder_f BrakeSystemStatus_encode_xer; -per_type_decoder_f BrakeSystemStatus_decode_uper; -per_type_encoder_f BrakeSystemStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeSystemStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h deleted file mode 100644 index 54c7ef8ae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BumperHeightFront_H_ -#define _BumperHeightFront_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeightFront */ -typedef long BumperHeightFront_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BumperHeightFront; -asn_struct_free_f BumperHeightFront_free; -asn_struct_print_f BumperHeightFront_print; -asn_constr_check_f BumperHeightFront_constraint; -ber_type_decoder_f BumperHeightFront_decode_ber; -der_type_encoder_f BumperHeightFront_encode_der; -xer_type_decoder_f BumperHeightFront_decode_xer; -xer_type_encoder_f BumperHeightFront_encode_xer; -per_type_decoder_f BumperHeightFront_decode_uper; -per_type_encoder_f BumperHeightFront_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeightFront_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h deleted file mode 100644 index be354dee2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BumperHeightRear_H_ -#define _BumperHeightRear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeightRear */ -typedef long BumperHeightRear_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BumperHeightRear; -asn_struct_free_f BumperHeightRear_free; -asn_struct_print_f BumperHeightRear_print; -asn_constr_check_f BumperHeightRear_constraint; -ber_type_decoder_f BumperHeightRear_decode_ber; -der_type_encoder_f BumperHeightRear_encode_der; -xer_type_decoder_f BumperHeightRear_decode_xer; -xer_type_encoder_f BumperHeightRear_encode_xer; -per_type_decoder_f BumperHeightRear_decode_uper; -per_type_encoder_f BumperHeightRear_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeightRear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h deleted file mode 100644 index ba8596003..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _BumperHeights_H_ -#define _BumperHeights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BumperHeightFront.h" -#include "BumperHeightRear.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeights */ -typedef struct BumperHeights { - BumperHeightFront_t frnt; - BumperHeightRear_t rear; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BumperHeights_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h deleted file mode 100644 index cc45695ef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _CargoWeight_H_ -#define _CargoWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CargoWeight */ -typedef long CargoWeight_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; -asn_struct_free_f CargoWeight_free; -asn_struct_print_f CargoWeight_print; -asn_constr_check_f CargoWeight_constraint; -ber_type_decoder_f CargoWeight_decode_ber; -der_type_encoder_f CargoWeight_encode_der; -xer_type_decoder_f CargoWeight_decode_xer; -xer_type_encoder_f CargoWeight_encode_xer; -per_type_decoder_f CargoWeight_decode_uper; -per_type_encoder_f CargoWeight_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CargoWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h deleted file mode 100644 index 7d3f2ffae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Circle_H_ -#define _Circle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "NativeInteger.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Circle__raduis_PR { - Circle__raduis_PR_NOTHING, /* No components present */ - Circle__raduis_PR_radiusSteps, - Circle__raduis_PR_miles, - Circle__raduis_PR_km -} Circle__raduis_PR; - -/* Circle */ -typedef struct Circle { - Position3D_t center; - struct Circle__raduis { - Circle__raduis_PR present; - union Circle__raduis_u { - long radiusSteps; - long miles; - long km; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } raduis; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Circle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Circle; - -#ifdef __cplusplus -} -#endif - -#endif /* _Circle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h deleted file mode 100644 index e95b6ceda..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _CodeWord_H_ -#define _CodeWord_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CodeWord */ -typedef OCTET_STRING_t CodeWord_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CodeWord; -asn_struct_free_f CodeWord_free; -asn_struct_print_f CodeWord_print; -asn_constr_check_f CodeWord_constraint; -ber_type_decoder_f CodeWord_decode_ber; -der_type_encoder_f CodeWord_encode_der; -xer_type_decoder_f CodeWord_decode_xer; -xer_type_encoder_f CodeWord_encode_xer; -per_type_decoder_f CodeWord_decode_uper; -per_type_encoder_f CodeWord_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CodeWord_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h deleted file mode 100644 index 115c99768..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _CoefficientOfFriction_H_ -#define _CoefficientOfFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CoefficientOfFriction */ -typedef long CoefficientOfFriction_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; -asn_struct_free_f CoefficientOfFriction_free; -asn_struct_print_f CoefficientOfFriction_print; -asn_constr_check_f CoefficientOfFriction_constraint; -ber_type_decoder_f CoefficientOfFriction_decode_ber; -der_type_encoder_f CoefficientOfFriction_encode_der; -xer_type_decoder_f CoefficientOfFriction_decode_xer; -xer_type_encoder_f CoefficientOfFriction_encode_xer; -per_type_decoder_f CoefficientOfFriction_decode_uper; -per_type_encoder_f CoefficientOfFriction_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CoefficientOfFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h deleted file mode 100644 index 78c43e2e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _CommonSafetyRequest_H_ -#define _CommonSafetyRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "TemporaryID.h" -#include "RequestedItem.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CommonSafetyRequest */ -typedef struct CommonSafetyRequest { - DSRCmsgID_t msgID; - MsgCount_t *msgCnt /* OPTIONAL */; - TemporaryID_t *id /* OPTIONAL */; - struct CommonSafetyRequest__requests { - A_SEQUENCE_OF(RequestedItem_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } requests; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} CommonSafetyRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; - -#ifdef __cplusplus -} -#endif - -#endif /* _CommonSafetyRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h deleted file mode 100644 index e4064f1c4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ComputedLane_H_ -#define _ComputedLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "Angle.h" -#include "Scale-B12.h" -#include "DrivenLineOffsetSm.h" -#include "DrivenLineOffsetLg.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ComputedLane__offsetXaxis_PR { - ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetXaxis_PR_small, - ComputedLane__offsetXaxis_PR_large -} ComputedLane__offsetXaxis_PR; -typedef enum ComputedLane__offsetYaxis_PR { - ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetYaxis_PR_small, - ComputedLane__offsetYaxis_PR_large -} ComputedLane__offsetYaxis_PR; - -/* Forward declarations */ -struct Reg_ComputedLane; - -/* ComputedLane */ -typedef struct ComputedLane { - LaneID_t referenceLaneId; - struct ComputedLane__offsetXaxis { - ComputedLane__offsetXaxis_PR present; - union ComputedLane__offsetXaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetXaxis; - struct ComputedLane__offsetYaxis { - ComputedLane__offsetYaxis_PR present; - union ComputedLane__offsetYaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetYaxis; - Angle_t *rotateXY /* OPTIONAL */; - Scale_B12_t *scaleXaxis /* OPTIONAL */; - Scale_B12_t *scaleYaxis /* OPTIONAL */; - struct Reg_ComputedLane *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ComputedLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalComputedLane.h" - -#endif /* _ComputedLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h deleted file mode 100644 index b7dfdd9a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ConfidenceSet_H_ -#define _ConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedandHeadingandThrottleConfidence.h" -#include "TimeConfidence.h" -#include "PositionConfidenceSet.h" -#include "SteeringWheelAngleConfidence.h" -#include "ThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelSteerYawRateConfidence; - -/* ConfidenceSet */ -typedef struct ConfidenceSet { - struct AccelSteerYawRateConfidence *accelConfidence /* OPTIONAL */; - SpeedandHeadingandThrottleConfidence_t *speedConfidence /* OPTIONAL */; - TimeConfidence_t *timeConfidence /* OPTIONAL */; - PositionConfidenceSet_t *posConfidence /* OPTIONAL */; - SteeringWheelAngleConfidence_t *steerConfidence /* OPTIONAL */; - ThrottleConfidence_t *throttleConfidence /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AccelSteerYawRateConfidence.h" - -#endif /* _ConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h deleted file mode 100644 index 3afa36a0a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ConnectingLane_H_ -#define _ConnectingLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "AllowedManeuvers.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ConnectingLane */ -typedef struct ConnectingLane { - LaneID_t lane; - AllowedManeuvers_t *maneuver /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectingLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectingLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h deleted file mode 100644 index 867a6783d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Connection_H_ -#define _Connection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ConnectingLane.h" -#include "SignalGroupID.h" -#include "RestrictionClassID.h" -#include "LaneConnectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionReferenceID; - -/* Connection */ -typedef struct Connection { - ConnectingLane_t connectingLane; - struct IntersectionReferenceID *remoteIntersection /* OPTIONAL */; - SignalGroupID_t *signalGroup /* OPTIONAL */; - RestrictionClassID_t *userClass /* OPTIONAL */; - LaneConnectionID_t *connectionID /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Connection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Connection; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionReferenceID.h" - -#endif /* _Connection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h deleted file mode 100644 index bfdafb0ac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ConnectionManeuverAssist_H_ -#define _ConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneConnectionID.h" -#include "ZoneLength.h" -#include "WaitOnStopline.h" -#include "PedestrianBicycleDetect.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_ConnectionManeuverAssist; - -/* ConnectionManeuverAssist */ -typedef struct ConnectionManeuverAssist { - LaneConnectionID_t connectionID; - ZoneLength_t *queueLength /* OPTIONAL */; - ZoneLength_t *availableStorageLength /* OPTIONAL */; - WaitOnStopline_t *waitOnStop /* OPTIONAL */; - PedestrianBicycleDetect_t *pedBicycleDetect /* OPTIONAL */; - struct Reg_ConnectionManeuverAssist *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalConnectionManeuverAssist.h" - -#endif /* _ConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h deleted file mode 100644 index 74d92e56d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ConnectsToList_H_ -#define _ConnectsToList_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 Connection; - -/* ConnectsToList */ -typedef struct ConnectsToList { - A_SEQUENCE_OF(struct Connection) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectsToList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Connection.h" - -#endif /* _ConnectsToList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h deleted file mode 100644 index beee9f0fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Count_H_ -#define _Count_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Count */ -typedef long Count_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Count; -asn_struct_free_f Count_free; -asn_struct_print_f Count_print; -asn_constr_check_f Count_constraint; -ber_type_decoder_f Count_decode_ber; -der_type_encoder_f Count_encode_der; -xer_type_decoder_f Count_decode_xer; -xer_type_encoder_f Count_encode_xer; -per_type_decoder_f Count_decode_uper; -per_type_encoder_f Count_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Count_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h deleted file mode 100644 index 2cbeb94a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DDate_H_ -#define _DDate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDate */ -typedef struct DDate { - DYear_t year; - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDate; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h deleted file mode 100644 index 602a1d44e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DDateTime_H_ -#define _DDateTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDateTime */ -typedef struct DDateTime { - DYear_t *year /* OPTIONAL */; - DMonth_t *month /* OPTIONAL */; - DDay_t *day /* OPTIONAL */; - DHour_t *hour /* OPTIONAL */; - DMinute_t *minute /* OPTIONAL */; - DSecond_t *second /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDateTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDateTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDateTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h deleted file mode 100644 index 6b9509913..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DDay_H_ -#define _DDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDay */ -typedef long DDay_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDay; -asn_struct_free_f DDay_free; -asn_struct_print_f DDay_print; -asn_constr_check_f DDay_constraint; -ber_type_decoder_f DDay_decode_ber; -der_type_encoder_f DDay_encode_der; -xer_type_decoder_f DDay_decode_xer; -xer_type_encoder_f DDay_encode_xer; -per_type_decoder_f DDay_decode_uper; -per_type_encoder_f DDay_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h deleted file mode 100644 index 6428edc89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DFullTime_H_ -#define _DFullTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DFullTime */ -typedef struct DFullTime { - DYear_t year; - DMonth_t month; - DDay_t day; - DHour_t hour; - DMinute_t minute; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DFullTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DFullTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DFullTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h deleted file mode 100644 index 3093ae5e1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DHour_H_ -#define _DHour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DHour */ -typedef long DHour_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DHour; -asn_struct_free_f DHour_free; -asn_struct_print_f DHour_print; -asn_constr_check_f DHour_constraint; -ber_type_decoder_f DHour_decode_ber; -der_type_encoder_f DHour_encode_der; -xer_type_decoder_f DHour_decode_xer; -xer_type_encoder_f DHour_encode_xer; -per_type_decoder_f DHour_decode_uper; -per_type_encoder_f DHour_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DHour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h deleted file mode 100644 index e4497f359..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DMinute_H_ -#define _DMinute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMinute */ -typedef long DMinute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DMinute; -asn_struct_free_f DMinute_free; -asn_struct_print_f DMinute_print; -asn_constr_check_f DMinute_constraint; -ber_type_decoder_f DMinute_decode_ber; -der_type_encoder_f DMinute_encode_der; -xer_type_decoder_f DMinute_decode_xer; -xer_type_encoder_f DMinute_encode_xer; -per_type_decoder_f DMinute_decode_uper; -per_type_encoder_f DMinute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMinute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h deleted file mode 100644 index 4c7cb99dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DMonth_H_ -#define _DMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonth */ -typedef long DMonth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DMonth; -asn_struct_free_f DMonth_free; -asn_struct_print_f DMonth_print; -asn_constr_check_f DMonth_constraint; -ber_type_decoder_f DMonth_decode_ber; -der_type_encoder_f DMonth_encode_der; -xer_type_decoder_f DMonth_decode_xer; -xer_type_encoder_f DMonth_encode_xer; -per_type_decoder_f DMonth_decode_uper; -per_type_encoder_f DMonth_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h deleted file mode 100644 index 70334867a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DMonthDay_H_ -#define _DMonthDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonthDay */ -typedef struct DMonthDay { - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DMonthDay_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonthDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h deleted file mode 100644 index c4f463ada..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DOffset_H_ -#define _DOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DOffset */ -typedef long DOffset_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DOffset; -asn_struct_free_f DOffset_free; -asn_struct_print_f DOffset_print; -asn_constr_check_f DOffset_constraint; -ber_type_decoder_f DOffset_decode_ber; -der_type_encoder_f DOffset_encode_der; -xer_type_decoder_f DOffset_decode_xer; -xer_type_encoder_f DOffset_encode_xer; -per_type_decoder_f DOffset_decode_uper; -per_type_encoder_f DOffset_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h deleted file mode 100644 index 4b12d57ff..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#ifndef _DSRCEquippedType_H_ -#define _DSRCEquippedType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCEquippedType */ -typedef BOOLEAN_t DSRCEquippedType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType; -asn_struct_free_f DSRCEquippedType_free; -asn_struct_print_f DSRCEquippedType_print; -asn_constr_check_f DSRCEquippedType_constraint; -ber_type_decoder_f DSRCEquippedType_decode_ber; -der_type_encoder_f DSRCEquippedType_encode_der; -xer_type_decoder_f DSRCEquippedType_decode_xer; -xer_type_encoder_f DSRCEquippedType_encode_xer; -per_type_decoder_f DSRCEquippedType_decode_uper; -per_type_encoder_f DSRCEquippedType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCEquippedType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h deleted file mode 100644 index 5dba485a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DSRCmsgID_H_ -#define _DSRCmsgID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DSRCmsgID { - DSRCmsgID_reserved = 0, - DSRCmsgID_alaCarteMessage = 1, - DSRCmsgID_basicSafetyMessage = 2, - DSRCmsgID_basicSafetyMessageVerbose = 3, - DSRCmsgID_commonSafetyRequest = 4, - DSRCmsgID_emergencyVehicleAlert = 5, - DSRCmsgID_intersectionCollisionAlert = 6, - DSRCmsgID_mapData = 7, - DSRCmsgID_nmeaCorrections = 8, - DSRCmsgID_probeDataManagement = 9, - DSRCmsgID_probeVehicleData = 10, - DSRCmsgID_roadSideAlert = 11, - DSRCmsgID_rtcmCorrections = 12, - DSRCmsgID_signalPhaseAndTimingMessage = 13, - DSRCmsgID_signalRequestMessage = 14, - DSRCmsgID_signalStatusMessage = 15, - DSRCmsgID_travelerInformation = 16 - /* - * Enumeration is extensible - */ -} e_DSRCmsgID; - -/* DSRCmsgID */ -typedef long DSRCmsgID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; -asn_struct_free_f DSRCmsgID_free; -asn_struct_print_f DSRCmsgID_print; -asn_constr_check_f DSRCmsgID_constraint; -ber_type_decoder_f DSRCmsgID_decode_ber; -der_type_encoder_f DSRCmsgID_encode_der; -xer_type_decoder_f DSRCmsgID_decode_xer; -xer_type_encoder_f DSRCmsgID_encode_xer; -per_type_decoder_f DSRCmsgID_decode_uper; -per_type_encoder_f DSRCmsgID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCmsgID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h deleted file mode 100644 index 1597fb1ac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DSRCmsgID2_H_ -#define _DSRCmsgID2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCmsgID2 */ -typedef long DSRCmsgID2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID2; -asn_struct_free_f DSRCmsgID2_free; -asn_struct_print_f DSRCmsgID2_print; -asn_constr_check_f DSRCmsgID2_constraint; -ber_type_decoder_f DSRCmsgID2_decode_ber; -der_type_encoder_f DSRCmsgID2_encode_der; -xer_type_decoder_f DSRCmsgID2_decode_xer; -xer_type_encoder_f DSRCmsgID2_encode_xer; -per_type_decoder_f DSRCmsgID2_decode_uper; -per_type_encoder_f DSRCmsgID2_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCmsgID2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h deleted file mode 100644 index 7f30523d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DSRCmsgSubID_H_ -#define _DSRCmsgSubID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCmsgSubID */ -typedef long DSRCmsgSubID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgSubID; -asn_struct_free_f DSRCmsgSubID_free; -asn_struct_print_f DSRCmsgSubID_print; -asn_constr_check_f DSRCmsgSubID_constraint; -ber_type_decoder_f DSRCmsgSubID_decode_ber; -der_type_encoder_f DSRCmsgSubID_encode_der; -xer_type_decoder_f DSRCmsgSubID_decode_xer; -xer_type_encoder_f DSRCmsgSubID_encode_xer; -per_type_decoder_f DSRCmsgSubID_decode_uper; -per_type_encoder_f DSRCmsgSubID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCmsgSubID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h deleted file mode 100644 index f10b0a6f9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DSecond_H_ -#define _DSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSecond */ -typedef long DSecond_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSecond; -asn_struct_free_f DSecond_free; -asn_struct_print_f DSecond_print; -asn_constr_check_f DSecond_constraint; -ber_type_decoder_f DSecond_decode_ber; -der_type_encoder_f DSecond_encode_der; -xer_type_decoder_f DSecond_decode_xer; -xer_type_encoder_f DSecond_encode_xer; -per_type_decoder_f DSecond_decode_uper; -per_type_encoder_f DSecond_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h deleted file mode 100644 index 69b29193f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DSecond2_H_ -#define _DSecond2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSecond2 */ -typedef long DSecond2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSecond2; -asn_struct_free_f DSecond2_free; -asn_struct_print_f DSecond2_print; -asn_constr_check_f DSecond2_constraint; -ber_type_decoder_f DSecond2_decode_ber; -der_type_encoder_f DSecond2_encode_der; -xer_type_decoder_f DSecond2_decode_xer; -xer_type_encoder_f DSecond2_encode_xer; -per_type_decoder_f DSecond2_decode_uper; -per_type_encoder_f DSecond2_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSecond2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h deleted file mode 100644 index 9fbdcb73e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DTime_H_ -#define _DTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DTime */ -typedef struct DTime { - DHour_t hour; - DMinute_t minute; - DSecond_t second; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h deleted file mode 100644 index e04d48154..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DYear_H_ -#define _DYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYear */ -typedef long DYear_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DYear; -asn_struct_free_f DYear_free; -asn_struct_print_f DYear_print; -asn_constr_check_f DYear_constraint; -ber_type_decoder_f DYear_decode_ber; -der_type_encoder_f DYear_encode_der; -xer_type_decoder_f DYear_decode_xer; -xer_type_encoder_f DYear_encode_xer; -per_type_decoder_f DYear_decode_uper; -per_type_encoder_f DYear_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h deleted file mode 100644 index 39985e725..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DYearMonth_H_ -#define _DYearMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYearMonth */ -typedef struct DYearMonth { - DYear_t year; - DMonth_t month; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DYearMonth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYearMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h deleted file mode 100644 index 5d38ab776..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DataParameters_H_ -#define _DataParameters_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DataParameters */ -typedef struct DataParameters { - IA5String_t *processMethod /* OPTIONAL */; - IA5String_t *processAgency /* OPTIONAL */; - IA5String_t *lastCheckedDate /* OPTIONAL */; - IA5String_t *geoidUsed /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DataParameters_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DataParameters; - -#ifdef __cplusplus -} -#endif - -#endif /* _DataParameters_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h deleted file mode 100644 index 07f2f731d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Day_H_ -#define _Day_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Day */ -typedef long Day_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Day; -asn_struct_free_f Day_free; -asn_struct_print_f Day_print; -asn_constr_check_f Day_constraint; -ber_type_decoder_f Day_decode_ber; -der_type_encoder_f Day_encode_der; -xer_type_decoder_f Day_decode_xer; -xer_type_encoder_f Day_encode_xer; -per_type_decoder_f Day_decode_uper; -per_type_encoder_f Day_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Day_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h deleted file mode 100644 index 19b00c105..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DayOfWeek_H_ -#define _DayOfWeek_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DayOfWeek { - DayOfWeek_unknown = 0, - DayOfWeek_monday = 1, - DayOfWeek_tuesday = 2, - DayOfWeek_wednesday = 3, - DayOfWeek_thursday = 4, - DayOfWeek_friday = 5, - DayOfWeek_saturday = 6, - DayOfWeek_sunday = 7 -} e_DayOfWeek; - -/* DayOfWeek */ -typedef long DayOfWeek_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; -asn_struct_free_f DayOfWeek_free; -asn_struct_print_f DayOfWeek_print; -asn_constr_check_f DayOfWeek_constraint; -ber_type_decoder_f DayOfWeek_decode_ber; -der_type_encoder_f DayOfWeek_encode_der; -xer_type_decoder_f DayOfWeek_decode_xer; -xer_type_encoder_f DayOfWeek_encode_xer; -per_type_decoder_f DayOfWeek_decode_uper; -per_type_encoder_f DayOfWeek_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DayOfWeek_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h deleted file mode 100644 index 8dcce8d46..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DegreesLat_H_ -#define _DegreesLat_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLat */ -typedef long DegreesLat_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; -asn_struct_free_f DegreesLat_free; -asn_struct_print_f DegreesLat_print; -asn_constr_check_f DegreesLat_constraint; -ber_type_decoder_f DegreesLat_decode_ber; -der_type_encoder_f DegreesLat_encode_der; -xer_type_decoder_f DegreesLat_decode_xer; -xer_type_encoder_f DegreesLat_encode_xer; -per_type_decoder_f DegreesLat_decode_uper; -per_type_encoder_f DegreesLat_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLat_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h deleted file mode 100644 index a094c99c5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DegreesLong_H_ -#define _DegreesLong_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLong */ -typedef long DegreesLong_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; -asn_struct_free_f DegreesLong_free; -asn_struct_print_f DegreesLong_print; -asn_constr_check_f DegreesLong_constraint; -ber_type_decoder_f DegreesLong_decode_ber; -der_type_encoder_f DegreesLong_encode_der; -xer_type_decoder_f DegreesLong_decode_xer; -xer_type_encoder_f DegreesLong_encode_xer; -per_type_decoder_f DegreesLong_decode_uper; -per_type_encoder_f DegreesLong_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLong_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h deleted file mode 100644 index 7a7962a2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DeltaAngle_H_ -#define _DeltaAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DeltaAngle */ -typedef long DeltaAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; -asn_struct_free_f DeltaAngle_free; -asn_struct_print_f DeltaAngle_print; -asn_constr_check_f DeltaAngle_constraint; -ber_type_decoder_f DeltaAngle_decode_ber; -der_type_encoder_f DeltaAngle_encode_der; -xer_type_decoder_f DeltaAngle_decode_xer; -xer_type_encoder_f DeltaAngle_encode_xer; -per_type_decoder_f DeltaAngle_decode_uper; -per_type_encoder_f DeltaAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DeltaAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h deleted file mode 100644 index 830bd82c1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DescriptiveName_H_ -#define _DescriptiveName_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DescriptiveName */ -typedef IA5String_t DescriptiveName_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; -asn_struct_free_f DescriptiveName_free; -asn_struct_print_f DescriptiveName_print; -asn_constr_check_f DescriptiveName_constraint; -ber_type_decoder_f DescriptiveName_decode_ber; -der_type_encoder_f DescriptiveName_encode_der; -xer_type_decoder_f DescriptiveName_decode_xer; -xer_type_encoder_f DescriptiveName_encode_xer; -per_type_decoder_f DescriptiveName_decode_uper; -per_type_encoder_f DescriptiveName_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DescriptiveName_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h deleted file mode 100644 index 1257d38ce..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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; - -#ifdef __cplusplus -} -#endif - -#endif /* _DestinationType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h deleted file mode 100644 index d0e03a277..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DirectionOfUse_H_ -#define _DirectionOfUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DirectionOfUse { - DirectionOfUse_forward = 0, - DirectionOfUse_reverse = 1, - DirectionOfUse_both = 2 - /* - * Enumeration is extensible - */ -} e_DirectionOfUse; - -/* DirectionOfUse */ -typedef long DirectionOfUse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; -asn_struct_free_f DirectionOfUse_free; -asn_struct_print_f DirectionOfUse_print; -asn_constr_check_f DirectionOfUse_constraint; -ber_type_decoder_f DirectionOfUse_decode_ber; -der_type_encoder_f DirectionOfUse_encode_der; -xer_type_decoder_f DirectionOfUse_decode_xer; -xer_type_encoder_f DirectionOfUse_encode_xer; -per_type_decoder_f DirectionOfUse_decode_uper; -per_type_encoder_f DirectionOfUse_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DirectionOfUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h deleted file mode 100644 index 2f9446928..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DriveAxleLiftAirPressure_H_ -#define _DriveAxleLiftAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLiftAirPressure */ -typedef long DriveAxleLiftAirPressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; -asn_struct_free_f DriveAxleLiftAirPressure_free; -asn_struct_print_f DriveAxleLiftAirPressure_print; -asn_constr_check_f DriveAxleLiftAirPressure_constraint; -ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; -der_type_encoder_f DriveAxleLiftAirPressure_encode_der; -xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; -xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; -per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; -per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLiftAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h deleted file mode 100644 index 2ac97805a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DriveAxleLocation_H_ -#define _DriveAxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLocation */ -typedef long DriveAxleLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; -asn_struct_free_f DriveAxleLocation_free; -asn_struct_print_f DriveAxleLocation_print; -asn_constr_check_f DriveAxleLocation_constraint; -ber_type_decoder_f DriveAxleLocation_decode_ber; -der_type_encoder_f DriveAxleLocation_encode_der; -xer_type_decoder_f DriveAxleLocation_decode_xer; -xer_type_encoder_f DriveAxleLocation_encode_xer; -per_type_decoder_f DriveAxleLocation_decode_uper; -per_type_encoder_f DriveAxleLocation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h deleted file mode 100644 index 42932faca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DriveAxleLubePressure_H_ -#define _DriveAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLubePressure */ -typedef long DriveAxleLubePressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; -asn_struct_free_f DriveAxleLubePressure_free; -asn_struct_print_f DriveAxleLubePressure_print; -asn_constr_check_f DriveAxleLubePressure_constraint; -ber_type_decoder_f DriveAxleLubePressure_decode_ber; -der_type_encoder_f DriveAxleLubePressure_encode_der; -xer_type_decoder_f DriveAxleLubePressure_decode_xer; -xer_type_encoder_f DriveAxleLubePressure_encode_xer; -per_type_decoder_f DriveAxleLubePressure_decode_uper; -per_type_encoder_f DriveAxleLubePressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h deleted file mode 100644 index c7f2b8292..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DriveAxleTemperature_H_ -#define _DriveAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleTemperature */ -typedef long DriveAxleTemperature_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; -asn_struct_free_f DriveAxleTemperature_free; -asn_struct_print_f DriveAxleTemperature_print; -asn_constr_check_f DriveAxleTemperature_constraint; -ber_type_decoder_f DriveAxleTemperature_decode_ber; -der_type_encoder_f DriveAxleTemperature_encode_der; -xer_type_decoder_f DriveAxleTemperature_decode_xer; -xer_type_encoder_f DriveAxleTemperature_encode_xer; -per_type_decoder_f DriveAxleTemperature_decode_uper; -per_type_encoder_f DriveAxleTemperature_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h deleted file mode 100644 index 6dca6dbb5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DrivenLineOffsetLg_H_ -#define _DrivenLineOffsetLg_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetLg */ -typedef long DrivenLineOffsetLg_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; -asn_struct_free_f DrivenLineOffsetLg_free; -asn_struct_print_f DrivenLineOffsetLg_print; -asn_constr_check_f DrivenLineOffsetLg_constraint; -ber_type_decoder_f DrivenLineOffsetLg_decode_ber; -der_type_encoder_f DrivenLineOffsetLg_encode_der; -xer_type_decoder_f DrivenLineOffsetLg_decode_xer; -xer_type_encoder_f DrivenLineOffsetLg_encode_xer; -per_type_decoder_f DrivenLineOffsetLg_decode_uper; -per_type_encoder_f DrivenLineOffsetLg_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetLg_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h deleted file mode 100644 index 897401671..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DrivenLineOffsetSm_H_ -#define _DrivenLineOffsetSm_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetSm */ -typedef long DrivenLineOffsetSm_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; -asn_struct_free_f DrivenLineOffsetSm_free; -asn_struct_print_f DrivenLineOffsetSm_print; -asn_constr_check_f DrivenLineOffsetSm_constraint; -ber_type_decoder_f DrivenLineOffsetSm_decode_ber; -der_type_encoder_f DrivenLineOffsetSm_encode_der; -xer_type_decoder_f DrivenLineOffsetSm_decode_xer; -xer_type_encoder_f DrivenLineOffsetSm_encode_xer; -per_type_decoder_f DrivenLineOffsetSm_decode_uper; -per_type_encoder_f DrivenLineOffsetSm_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetSm_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h deleted file mode 100644 index 2e667a538..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DrivingWheelAngle_H_ -#define _DrivingWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivingWheelAngle */ -typedef long DrivingWheelAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; -asn_struct_free_f DrivingWheelAngle_free; -asn_struct_print_f DrivingWheelAngle_print; -asn_constr_check_f DrivingWheelAngle_constraint; -ber_type_decoder_f DrivingWheelAngle_decode_ber; -der_type_encoder_f DrivingWheelAngle_encode_der; -xer_type_decoder_f DrivingWheelAngle_decode_xer; -xer_type_encoder_f DrivingWheelAngle_encode_xer; -per_type_decoder_f DrivingWheelAngle_decode_uper; -per_type_encoder_f DrivingWheelAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivingWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h deleted file mode 100644 index 9a29bf09a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EU_Reg_ConnectionManeuverAssist_H_ -#define _EU_Reg_ConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleToLanePositionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeOffsetPoint; - -/* EU-Reg-ConnectionManeuverAssist */ -typedef struct EU_Reg_ConnectionManeuverAssist { - VehicleToLanePositionList_t vehicleToLanePositions; - struct NodeOffsetPoint *rsuDistanceFromAnchor /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EU_Reg_ConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_ConnectionManeuverAssist; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeOffsetPoint.h" - -#endif /* _EU_Reg_ConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h deleted file mode 100644 index 508dd5ece..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EU_Reg_IntersectionState_H_ -#define _EU_Reg_IntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PrioritizationResponseList; - -/* EU-Reg-IntersectionState */ -typedef struct EU_Reg_IntersectionState { - struct PrioritizationResponseList *activePrioritizations /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EU_Reg_IntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_IntersectionState; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PrioritizationResponseList.h" - -#endif /* _EU_Reg_IntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h deleted file mode 100644 index 43daecaf8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EU_Reg_MapData_H_ -#define _EU_Reg_MapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalHeadLocationList; - -/* EU-Reg-MapData */ -typedef struct EU_Reg_MapData { - struct SignalHeadLocationList *signalHeadLocations /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EU_Reg_MapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_MapData; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalHeadLocationList.h" - -#endif /* _EU_Reg_MapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h deleted file mode 100644 index 914c3e842..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EU_Reg_Position3D_H_ -#define _EU_Reg_Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Altitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EU-Reg-Position3D */ -typedef struct EU_Reg_Position3D { - Altitude_t altitude; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EU_Reg_Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_Position3D; - -#ifdef __cplusplus -} -#endif - -#endif /* _EU_Reg_Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h deleted file mode 100644 index 5a601403b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EU_Reg_RestrictionUserType_H_ -#define _EU_Reg_RestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EmissionType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EU-Reg-RestrictionUserType */ -typedef struct EU_Reg_RestrictionUserType { - EmissionType_t *emission /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EU_Reg_RestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_RestrictionUserType; - -#ifdef __cplusplus -} -#endif - -#endif /* _EU_Reg_RestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h deleted file mode 100644 index 3984dd7f4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Elevation_H_ -#define _Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Elevation */ -typedef OCTET_STRING_t Elevation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Elevation; -asn_struct_free_f Elevation_free; -asn_struct_print_f Elevation_print; -asn_constr_check_f Elevation_constraint; -ber_type_decoder_f Elevation_decode_ber; -der_type_encoder_f Elevation_encode_der; -xer_type_decoder_f Elevation_decode_xer; -xer_type_encoder_f Elevation_encode_xer; -per_type_decoder_f Elevation_decode_uper; -per_type_encoder_f Elevation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h deleted file mode 100644 index ff1ddae8d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Elevation2_H_ -#define _Elevation2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Elevation2 */ -typedef long Elevation2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Elevation2; -asn_struct_free_f Elevation2_free; -asn_struct_print_f Elevation2_print; -asn_constr_check_f Elevation2_constraint; -ber_type_decoder_f Elevation2_decode_ber; -der_type_encoder_f Elevation2_encode_der; -xer_type_decoder_f Elevation2_decode_xer; -xer_type_encoder_f Elevation2_encode_xer; -per_type_decoder_f Elevation2_decode_uper; -per_type_encoder_f Elevation2_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Elevation2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h deleted file mode 100644 index 099ee70a2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ElevationConfidence_H_ -#define _ElevationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ElevationConfidence { - ElevationConfidence_unavailable = 0, - ElevationConfidence_elev_500_00 = 1, - ElevationConfidence_elev_200_00 = 2, - ElevationConfidence_elev_100_00 = 3, - ElevationConfidence_elev_050_00 = 4, - ElevationConfidence_elev_020_00 = 5, - ElevationConfidence_elev_010_00 = 6, - ElevationConfidence_elev_005_00 = 7, - ElevationConfidence_elev_002_00 = 8, - ElevationConfidence_elev_001_00 = 9, - ElevationConfidence_elev_000_50 = 10, - ElevationConfidence_elev_000_20 = 11, - ElevationConfidence_elev_000_10 = 12, - ElevationConfidence_elev_000_05 = 13, - ElevationConfidence_elev_000_02 = 14, - ElevationConfidence_elev_000_01 = 15 -} e_ElevationConfidence; - -/* ElevationConfidence */ -typedef long ElevationConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; -asn_struct_free_f ElevationConfidence_free; -asn_struct_print_f ElevationConfidence_print; -asn_constr_check_f ElevationConfidence_constraint; -ber_type_decoder_f ElevationConfidence_decode_ber; -der_type_encoder_f ElevationConfidence_encode_der; -xer_type_decoder_f ElevationConfidence_decode_xer; -xer_type_encoder_f ElevationConfidence_encode_xer; -per_type_decoder_f ElevationConfidence_decode_uper; -per_type_encoder_f ElevationConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ElevationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h deleted file mode 100644 index 0344fead1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EmergencyDetails_H_ -#define _EmergencyDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EmergencyDetails */ -typedef long EmergencyDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; -asn_struct_free_f EmergencyDetails_free; -asn_struct_print_f EmergencyDetails_print; -asn_constr_check_f EmergencyDetails_constraint; -ber_type_decoder_f EmergencyDetails_decode_ber; -der_type_encoder_f EmergencyDetails_encode_der; -xer_type_decoder_f EmergencyDetails_decode_xer; -xer_type_encoder_f EmergencyDetails_encode_xer; -per_type_decoder_f EmergencyDetails_decode_uper; -per_type_encoder_f EmergencyDetails_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmergencyDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h deleted file mode 100644 index 260049fb2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EmergencyVehicleAlert_H_ -#define _EmergencyVehicleAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "TemporaryID.h" -#include "RoadSideAlert.h" -#include "ResponseType.h" -#include "EmergencyDetails.h" -#include "VehicleMass.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "ResponderGroupAffected.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EmergencyVehicleAlert */ -typedef struct EmergencyVehicleAlert { - DSRCmsgID_t msgID; - TemporaryID_t *id /* OPTIONAL */; - RoadSideAlert_t rsaMsg; - ResponseType_t *responseType /* OPTIONAL */; - EmergencyDetails_t *details /* OPTIONAL */; - VehicleMass_t *mass /* OPTIONAL */; - VehicleType_t *basicType /* OPTIONAL */; - VehicleGroupAffected_t *vehicleType /* OPTIONAL */; - IncidentResponseEquipment_t *responseEquip /* OPTIONAL */; - ResponderGroupAffected_t *responderType /* OPTIONAL */; - MsgCRC_t crc; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EmergencyVehicleAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmergencyVehicleAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h deleted file mode 100644 index f54153ec6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EmissionType_H_ -#define _EmissionType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EmissionType { - EmissionType_typeA = 0, - EmissionType_typeB = 1, - EmissionType_typeC = 2, - EmissionType_typeD = 3, - EmissionType_typeE = 4 - /* - * Enumeration is extensible - */ -} e_EmissionType; - -/* EmissionType */ -typedef long EmissionType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmissionType; -asn_struct_free_f EmissionType_free; -asn_struct_print_f EmissionType_print; -asn_constr_check_f EmissionType_constraint; -ber_type_decoder_f EmissionType_decode_ber; -der_type_encoder_f EmissionType_encode_der; -xer_type_decoder_f EmissionType_decode_xer; -xer_type_encoder_f EmissionType_encode_xer; -per_type_decoder_f EmissionType_decode_uper; -per_type_encoder_f EmissionType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmissionType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h deleted file mode 100644 index b160a575a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EnabledLaneList_H_ -#define _EnabledLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EnabledLaneList */ -typedef struct EnabledLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EnabledLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; - -#ifdef __cplusplus -} -#endif - -#endif /* _EnabledLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h deleted file mode 100644 index 86af90896..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EssMobileFriction_H_ -#define _EssMobileFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssMobileFriction */ -typedef long EssMobileFriction_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; -asn_struct_free_f EssMobileFriction_free; -asn_struct_print_f EssMobileFriction_print; -asn_constr_check_f EssMobileFriction_constraint; -ber_type_decoder_f EssMobileFriction_decode_ber; -der_type_encoder_f EssMobileFriction_encode_der; -xer_type_decoder_f EssMobileFriction_decode_xer; -xer_type_encoder_f EssMobileFriction_encode_xer; -per_type_decoder_f EssMobileFriction_decode_uper; -per_type_encoder_f EssMobileFriction_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssMobileFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h deleted file mode 100644 index d66abfe65..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EssPrecipRate_H_ -#define _EssPrecipRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssPrecipRate */ -typedef long EssPrecipRate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; -asn_struct_free_f EssPrecipRate_free; -asn_struct_print_f EssPrecipRate_print; -asn_constr_check_f EssPrecipRate_constraint; -ber_type_decoder_f EssPrecipRate_decode_ber; -der_type_encoder_f EssPrecipRate_encode_der; -xer_type_decoder_f EssPrecipRate_decode_xer; -xer_type_encoder_f EssPrecipRate_encode_xer; -per_type_decoder_f EssPrecipRate_decode_uper; -per_type_encoder_f EssPrecipRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h deleted file mode 100644 index 5a7c717d7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EssPrecipSituation_H_ -#define _EssPrecipSituation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipSituation { - EssPrecipSituation_other = 1, - EssPrecipSituation_unknown = 2, - EssPrecipSituation_noPrecipitation = 3, - EssPrecipSituation_unidentifiedSlight = 4, - EssPrecipSituation_unidentifiedModerate = 5, - EssPrecipSituation_unidentifiedHeavy = 6, - EssPrecipSituation_snowSlight = 7, - EssPrecipSituation_snowModerate = 8, - EssPrecipSituation_snowHeavy = 9, - EssPrecipSituation_rainSlight = 10, - EssPrecipSituation_rainModerate = 11, - EssPrecipSituation_rainHeavy = 12, - EssPrecipSituation_frozenPrecipitationSlight = 13, - EssPrecipSituation_frozenPrecipitationModerate = 14, - EssPrecipSituation_frozenPrecipitationHeavy = 15 -} e_EssPrecipSituation; - -/* EssPrecipSituation */ -typedef long EssPrecipSituation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; -asn_struct_free_f EssPrecipSituation_free; -asn_struct_print_f EssPrecipSituation_print; -asn_constr_check_f EssPrecipSituation_constraint; -ber_type_decoder_f EssPrecipSituation_decode_ber; -der_type_encoder_f EssPrecipSituation_encode_der; -xer_type_decoder_f EssPrecipSituation_decode_xer; -xer_type_encoder_f EssPrecipSituation_encode_xer; -per_type_decoder_f EssPrecipSituation_decode_uper; -per_type_encoder_f EssPrecipSituation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipSituation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h deleted file mode 100644 index baba647fd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EssPrecipYesNo_H_ -#define _EssPrecipYesNo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipYesNo { - EssPrecipYesNo_precip = 1, - EssPrecipYesNo_noPrecip = 2, - EssPrecipYesNo_error = 3 -} e_EssPrecipYesNo; - -/* EssPrecipYesNo */ -typedef long EssPrecipYesNo_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; -asn_struct_free_f EssPrecipYesNo_free; -asn_struct_print_f EssPrecipYesNo_print; -asn_constr_check_f EssPrecipYesNo_constraint; -ber_type_decoder_f EssPrecipYesNo_decode_ber; -der_type_encoder_f EssPrecipYesNo_encode_der; -xer_type_decoder_f EssPrecipYesNo_decode_xer; -xer_type_encoder_f EssPrecipYesNo_encode_xer; -per_type_decoder_f EssPrecipYesNo_decode_uper; -per_type_encoder_f EssPrecipYesNo_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipYesNo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h deleted file mode 100644 index f385a2f8a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EssSolarRadiation_H_ -#define _EssSolarRadiation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssSolarRadiation */ -typedef long EssSolarRadiation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; -asn_struct_free_f EssSolarRadiation_free; -asn_struct_print_f EssSolarRadiation_print; -asn_constr_check_f EssSolarRadiation_constraint; -ber_type_decoder_f EssSolarRadiation_decode_ber; -der_type_encoder_f EssSolarRadiation_encode_der; -xer_type_decoder_f EssSolarRadiation_decode_xer; -xer_type_encoder_f EssSolarRadiation_encode_xer; -per_type_decoder_f EssSolarRadiation_decode_uper; -per_type_encoder_f EssSolarRadiation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssSolarRadiation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h deleted file mode 100644 index 2b577a15a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_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_r41/EventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h deleted file mode 100644 index 25ddc6f1f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _EventFlags_H_ -#define _EventFlags_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EventFlags */ -typedef long EventFlags_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EventFlags; -asn_struct_free_f EventFlags_free; -asn_struct_print_f EventFlags_print; -asn_constr_check_f EventFlags_constraint; -ber_type_decoder_f EventFlags_decode_ber; -der_type_encoder_f EventFlags_encode_der; -xer_type_decoder_f EventFlags_decode_xer; -xer_type_encoder_f EventFlags_encode_xer; -per_type_decoder_f EventFlags_decode_uper; -per_type_encoder_f EventFlags_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EventFlags_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h deleted file mode 100644 index 3dc97eeb4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ExitService_H_ -#define _ExitService_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "IA5String.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum item_es_PR { - item_es_PR_NOTHING, /* No components present */ - item_es_PR_itis, - item_es_PR_text -} item_es_PR; - -/* ExitService */ -typedef struct ExitService { - A_SEQUENCE_OF(struct ExitService__Member { - struct item_es { - item_es_PR present; - union item_es_u { - ITIScodes_t itis; - IA5String_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item_es; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ExitService_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ExitService; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExitService_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h deleted file mode 100644 index 69aecd09f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Extent_H_ -#define _Extent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Extent { - Extent_useInstantlyOnly = 0, - Extent_useFor3meters = 1, - Extent_useFor10meters = 2, - Extent_useFor50meters = 3, - Extent_useFor100meters = 4, - Extent_useFor500meters = 5, - Extent_useFor1000meters = 6, - Extent_useFor5000meters = 7, - Extent_useFor10000meters = 8, - Extent_useFor50000meters = 9, - Extent_useFor100000meters = 10, - Extent_forever = 127 -} e_Extent; - -/* Extent */ -typedef long Extent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Extent; -asn_struct_free_f Extent_free; -asn_struct_print_f Extent_print; -asn_constr_check_f Extent_constraint; -ber_type_decoder_f Extent_decode_ber; -der_type_encoder_f Extent_encode_der; -xer_type_decoder_f Extent_decode_xer; -xer_type_encoder_f Extent_encode_xer; -per_type_decoder_f Extent_decode_uper; -per_type_encoder_f Extent_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Extent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h deleted file mode 100644 index 4496c301d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ExteriorLights_H_ -#define _ExteriorLights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ExteriorLights */ -typedef long ExteriorLights_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; -asn_struct_free_f ExteriorLights_free; -asn_struct_print_f ExteriorLights_print; -asn_constr_check_f ExteriorLights_constraint; -ber_type_decoder_f ExteriorLights_decode_ber; -der_type_encoder_f ExteriorLights_encode_der; -xer_type_decoder_f ExteriorLights_decode_xer; -xer_type_encoder_f ExteriorLights_encode_xer; -per_type_decoder_f ExteriorLights_decode_uper; -per_type_encoder_f ExteriorLights_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExteriorLights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h deleted file mode 100644 index a329eabc6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _FullPositionVector_H_ -#define _FullPositionVector_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "Elevation.h" -#include "Heading.h" -#include "TransmissionAndSpeed.h" -#include "PositionalAccuracy.h" -#include "TimeConfidence.h" -#include "PositionConfidenceSet.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DDateTime; - -/* FullPositionVector */ -typedef struct FullPositionVector { - struct DDateTime *utcTime /* OPTIONAL */; - Longitude_t Long; - Latitude_t lat; - Elevation_t *elevation /* OPTIONAL */; - Heading_t *heading /* OPTIONAL */; - TransmissionAndSpeed_t *speed /* OPTIONAL */; - PositionalAccuracy_t *posAccuracy /* OPTIONAL */; - TimeConfidence_t *timeConfidence /* OPTIONAL */; - PositionConfidenceSet_t *posConfidence /* OPTIONAL */; - SpeedandHeadingandThrottleConfidence_t *speedConfidence /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FullPositionVector_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "DDateTime.h" - -#endif /* _FullPositionVector_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h deleted file mode 100644 index 55f75e6f8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _FurtherInfoID_H_ -#define _FurtherInfoID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* FurtherInfoID */ -typedef OCTET_STRING_t FurtherInfoID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; -asn_struct_free_f FurtherInfoID_free; -asn_struct_print_f FurtherInfoID_print; -asn_constr_check_f FurtherInfoID_constraint; -ber_type_decoder_f FurtherInfoID_decode_ber; -der_type_encoder_f FurtherInfoID_encode_der; -xer_type_decoder_f FurtherInfoID_decode_xer; -xer_type_encoder_f FurtherInfoID_encode_xer; -per_type_decoder_f FurtherInfoID_decode_uper; -per_type_encoder_f FurtherInfoID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _FurtherInfoID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h deleted file mode 100644 index 67a23a61c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _GPSstatus_H_ -#define _GPSstatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GPSstatus { - GPSstatus_unavailable = 0, - GPSstatus_isHealthy = 1, - GPSstatus_isMonitored = 2, - GPSstatus_baseStationType = 3, - GPSstatus_aPDOPofUnder5 = 4, - GPSstatus_inViewOfUnder5 = 5, - GPSstatus_localCorrectionsPresent = 6, - GPSstatus_networkCorrectionsPresent = 7 -} e_GPSstatus; - -/* GPSstatus */ -typedef BIT_STRING_t GPSstatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GPSstatus; -asn_struct_free_f GPSstatus_free; -asn_struct_print_f GPSstatus_print; -asn_constr_check_f GPSstatus_constraint; -ber_type_decoder_f GPSstatus_decode_ber; -der_type_encoder_f GPSstatus_encode_der; -xer_type_decoder_f GPSstatus_decode_xer; -xer_type_encoder_f GPSstatus_encode_xer; -per_type_decoder_f GPSstatus_decode_uper; -per_type_encoder_f GPSstatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GPSstatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h deleted file mode 100644 index d026198d5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _GenericLane_H_ -#define _GenericLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "DescriptiveName.h" -#include "ApproachID.h" -#include "LaneAttributes.h" -#include "AllowedManeuvers.h" -#include "NodeList2.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ConnectsToList; -struct OverlayLaneList; -struct Reg_GenericLane; - -/* GenericLane */ -typedef struct GenericLane { - LaneID_t laneID; - DescriptiveName_t *name /* OPTIONAL */; - ApproachID_t *ingressApproach /* OPTIONAL */; - ApproachID_t *egressApproach /* OPTIONAL */; - LaneAttributes_t laneAttributes; - AllowedManeuvers_t *maneuvers /* OPTIONAL */; - NodeList2_t nodeList; - struct ConnectsToList *connectsTo /* OPTIONAL */; - struct OverlayLaneList *overlays /* OPTIONAL */; - struct Reg_GenericLane *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericLane; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ConnectsToList.h" -#include "OverlayLaneList.h" -#include "RegionalGenericLane.h" - -#endif /* _GenericLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h deleted file mode 100644 index 5133f7586..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _GenericSignage_H_ -#define _GenericSignage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "IA5String.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum item_gs_PR { - item_gs_PR_NOTHING, /* No components present */ - item_gs_PR_itis, - item_gs_PR_text -} item_gs_PR; - -/* GenericSignage */ -typedef struct GenericSignage { - A_SEQUENCE_OF(struct GenericSignage__Member { - struct item_gs { - item_gs_PR present; - union item_gs_u { - ITIScodes_t itis; - IA5String_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item_gs; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericSignage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericSignage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h deleted file mode 100644 index e4578319e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Heading_H_ -#define _Heading_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Heading */ -typedef long Heading_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Heading; -asn_struct_free_f Heading_free; -asn_struct_print_f Heading_print; -asn_constr_check_f Heading_constraint; -ber_type_decoder_f Heading_decode_ber; -der_type_encoder_f Heading_encode_der; -xer_type_decoder_f Heading_decode_xer; -xer_type_encoder_f Heading_encode_xer; -per_type_decoder_f Heading_decode_uper; -per_type_encoder_f Heading_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Heading_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h deleted file mode 100644 index 7956d0c1c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _HeadingConfidence_H_ -#define _HeadingConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HeadingConfidence { - HeadingConfidence_unavailable = 0, - HeadingConfidence_prec45deg = 1, - HeadingConfidence_prec10deg = 2, - HeadingConfidence_prec05deg = 3, - HeadingConfidence_prec01deg = 4, - HeadingConfidence_prec0_1deg = 5, - HeadingConfidence_prec0_05deg = 6, - HeadingConfidence_prec0_01deg = 7 -} e_HeadingConfidence; - -/* HeadingConfidence */ -typedef long HeadingConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; -asn_struct_free_f HeadingConfidence_free; -asn_struct_print_f HeadingConfidence_print; -asn_constr_check_f HeadingConfidence_constraint; -ber_type_decoder_f HeadingConfidence_decode_ber; -der_type_encoder_f HeadingConfidence_encode_der; -xer_type_decoder_f HeadingConfidence_decode_xer; -xer_type_encoder_f HeadingConfidence_encode_xer; -per_type_decoder_f HeadingConfidence_decode_uper; -per_type_encoder_f HeadingConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h deleted file mode 100644 index d4bd48b6e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _HeadingSlice_H_ -#define _HeadingSlice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* HeadingSlice */ -typedef OCTET_STRING_t HeadingSlice_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; -asn_struct_free_f HeadingSlice_free; -asn_struct_print_f HeadingSlice_print; -asn_constr_check_f HeadingSlice_constraint; -ber_type_decoder_f HeadingSlice_decode_ber; -der_type_encoder_f HeadingSlice_encode_der; -xer_type_decoder_f HeadingSlice_decode_xer; -xer_type_encoder_f HeadingSlice_encode_xer; -per_type_decoder_f HeadingSlice_decode_uper; -per_type_encoder_f HeadingSlice_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingSlice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h deleted file mode 100644 index 9155a3ed8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Holiday_H_ -#define _Holiday_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Holiday { - Holiday_weekday = 0, - Holiday_holiday = 1 -} e_Holiday; - -/* Holiday */ -typedef long Holiday_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Holiday; -asn_struct_free_f Holiday_free; -asn_struct_print_f Holiday_print; -asn_constr_check_f Holiday_constraint; -ber_type_decoder_f Holiday_decode_ber; -der_type_encoder_f Holiday_encode_der; -xer_type_decoder_f Holiday_decode_xer; -xer_type_encoder_f Holiday_encode_xer; -per_type_decoder_f Holiday_decode_uper; -per_type_encoder_f Holiday_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Holiday_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h deleted file mode 100644 index a98c2d495..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Hour_H_ -#define _Hour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Hour */ -typedef long Hour_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Hour; -asn_struct_free_f Hour_free; -asn_struct_print_f Hour_print; -asn_constr_check_f Hour_constraint; -ber_type_decoder_f Hour_decode_ber; -der_type_encoder_f Hour_encode_der; -xer_type_decoder_f Hour_decode_xer; -xer_type_encoder_f Hour_encode_xer; -per_type_decoder_f Hour_decode_uper; -per_type_encoder_f Hour_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Hour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h deleted file mode 100644 index 0831cfe0d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _HumanPropelledType_H_ -#define _HumanPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HumanPropelledType { - HumanPropelledType_unavailable = 0, - HumanPropelledType_otherTypes = 1, - HumanPropelledType_onFoot = 2, - HumanPropelledType_skateboard = 3, - HumanPropelledType_pushOrKickScooter = 4, - HumanPropelledType_wheelchair = 5 - /* - * Enumeration is extensible - */ -} e_HumanPropelledType; - -/* HumanPropelledType */ -typedef long HumanPropelledType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; -asn_struct_free_f HumanPropelledType_free; -asn_struct_print_f HumanPropelledType_print; -asn_constr_check_f HumanPropelledType_constraint; -ber_type_decoder_f HumanPropelledType_decode_ber; -der_type_encoder_f HumanPropelledType_encode_der; -xer_type_decoder_f HumanPropelledType_decode_xer; -xer_type_encoder_f HumanPropelledType_encode_xer; -per_type_decoder_f HumanPropelledType_decode_uper; -per_type_encoder_f HumanPropelledType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HumanPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h deleted file mode 100644 index c5fd99e07..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h +++ /dev/null @@ -1,27 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _IA5String_H_ -#define _IA5String_H_ - -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ - -/* - * IA5String ASN.1 type definition. - */ -extern asn_TYPE_descriptor_t asn_DEF_IA5String; - -asn_constr_check_f IA5String_constraint; - -#ifdef __cplusplus -} -#endif - -#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h deleted file mode 100644 index 924ad5fae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h +++ /dev/null @@ -1,82 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _INTEGER_H_ -#define _INTEGER_H_ - -#include "asn_application.h" -#include "asn_codecs_prim.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; - -extern asn_TYPE_descriptor_t asn_DEF_INTEGER; - -/* Map with to integer value association */ -typedef struct asn_INTEGER_enum_map_s { - long nat_value; /* associated native integer value */ - size_t enum_len; /* strlen("tag") */ - const char *enum_name; /* "tag" */ -} asn_INTEGER_enum_map_t; - -/* This type describes an enumeration for INTEGER and ENUMERATED types */ -typedef struct asn_INTEGER_specifics_s { - asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ - unsigned int *enum2value; /* "tag" => N; sorted by tag */ - int map_count; /* Elements in either map */ - int extension; /* This map is extensible */ - int strict_enumeration; /* Enumeration set is fixed */ - int field_width; /* Size of native integer */ - int field_unsigned; /* Signed=0, unsigned=1 */ -} asn_INTEGER_specifics_t; - -asn_struct_print_f INTEGER_print; -ber_type_decoder_f INTEGER_decode_ber; -der_type_encoder_f INTEGER_encode_der; -xer_type_decoder_f INTEGER_decode_xer; -xer_type_encoder_f INTEGER_encode_xer; -per_type_decoder_f INTEGER_decode_uper; -per_type_encoder_f INTEGER_encode_uper; - -/*********************************** - * Some handy conversion routines. * - ***********************************/ - -/* - * Returns 0 if it was possible to convert, -1 otherwise. - * -1/EINVAL: Mandatory argument missing - * -1/ERANGE: Value encoded is out of range for long representation - * -1/ENOMEM: Memory allocation failed (in asn_long2INTEGER()). - */ -int asn_INTEGER2long(const INTEGER_t *i, long *l); -int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); -int asn_long2INTEGER(INTEGER_t *i, long l); -int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); - -/* A a reified version of strtol(3) with nicer error reporting. */ -enum asn_strtol_result_e { - ASN_STRTOL_ERROR_RANGE = -3, /* Input outside of numeric range for long type */ - ASN_STRTOL_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ - ASN_STRTOL_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ - ASN_STRTOL_OK = 0, /* Conversion succeded, number ends at (*end) */ - ASN_STRTOL_EXTRA_DATA = 1, /* Conversion succeded, but the string has extra stuff */ -}; -enum asn_strtol_result_e asn_strtol_lim(const char *str, const char **end, long *l); - -/* The asn_strtol is going to be DEPRECATED soon */ -enum asn_strtol_result_e asn_strtol(const char *str, const char *end, long *l); - -/* - * Convert the integer value into the corresponding enumeration map entry. - */ -const asn_INTEGER_enum_map_t *INTEGER_map_value2enum(asn_INTEGER_specifics_t *specs, long value); - -#ifdef __cplusplus -} -#endif - -#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h deleted file mode 100644 index c27920c69..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ITIScodes_H_ -#define _ITIScodes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIScodes */ -typedef long ITIScodes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; -asn_struct_free_f ITIScodes_free; -asn_struct_print_f ITIScodes_print; -asn_constr_check_f ITIScodes_constraint; -ber_type_decoder_f ITIScodes_decode_ber; -der_type_encoder_f ITIScodes_encode_der; -xer_type_decoder_f ITIScodes_decode_xer; -xer_type_encoder_f ITIScodes_encode_xer; -per_type_decoder_f ITIScodes_decode_uper; -per_type_encoder_f ITIScodes_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h deleted file mode 100644 index a2d8eb1ea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ITIScodesAndText_H_ -#define _ITIScodesAndText_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStext.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum item_itis_PR { - item_itis_PR_NOTHING, /* No components present */ - item_itis_PR_itis, - item_itis_PR_text -} item_itis_PR; - -/* ITIScodesAndText */ -typedef struct ITIScodesAndText { - A_SEQUENCE_OF2(ITIScodesAndText__List, struct ITIScodesAndText__Member { - struct item_itis { - item_itis_PR present; - union item_itis_u { - ITIScodes_t itis; - ITIStext_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item_itis; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ITIScodesAndText_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodesAndText_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h deleted file mode 100644 index 87467824e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ITIStext_H_ -#define _ITIStext_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIStext */ -typedef IA5String_t ITIStext_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ITIStext; -asn_struct_free_f ITIStext_free; -asn_struct_print_f ITIStext_print; -asn_constr_check_f ITIStext_constraint; -ber_type_decoder_f ITIStext_decode_ber; -der_type_encoder_f ITIStext_encode_der; -xer_type_decoder_f ITIStext_decode_xer; -xer_type_encoder_f ITIStext_encode_xer; -per_type_decoder_f ITIStext_decode_uper; -per_type_encoder_f ITIStext_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIStext_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h deleted file mode 100644 index 0a277ad53..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IncidentResponseEquipment_H_ -#define _IncidentResponseEquipment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IncidentResponseEquipment { - IncidentResponseEquipment_ground_fire_suppression = 9985, - IncidentResponseEquipment_heavy_ground_equipment = 9986, - IncidentResponseEquipment_aircraft = 9988, - IncidentResponseEquipment_marine_equipment = 9989, - IncidentResponseEquipment_support_equipment = 9990, - IncidentResponseEquipment_medical_rescue_unit = 9991, - IncidentResponseEquipment_other = 9993, - IncidentResponseEquipment_ground_fire_suppression_other = 9994, - IncidentResponseEquipment_engine = 9995, - IncidentResponseEquipment_truck_or_aerial = 9996, - IncidentResponseEquipment_quint = 9997, - IncidentResponseEquipment_tanker_pumper_combination = 9998, - IncidentResponseEquipment_brush_truck = 10000, - IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, - IncidentResponseEquipment_heavy_ground_equipment_other = 10004, - IncidentResponseEquipment_dozer_or_plow = 10005, - IncidentResponseEquipment_tractor = 10006, - IncidentResponseEquipment_tanker_or_tender = 10008, - IncidentResponseEquipment_aircraft_other = 10024, - IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, - IncidentResponseEquipment_helitanker = 10026, - IncidentResponseEquipment_helicopter = 10027, - IncidentResponseEquipment_marine_equipment_other = 10034, - IncidentResponseEquipment_fire_boat_with_pump = 10035, - IncidentResponseEquipment_boat_no_pump = 10036, - IncidentResponseEquipment_support_apparatus_other = 10044, - IncidentResponseEquipment_breathing_apparatus_support = 10045, - IncidentResponseEquipment_light_and_air_unit = 10046, - IncidentResponseEquipment_medical_rescue_unit_other = 10054, - IncidentResponseEquipment_rescue_unit = 10055, - IncidentResponseEquipment_urban_search_rescue_unit = 10056, - IncidentResponseEquipment_high_angle_rescue = 10057, - IncidentResponseEquipment_crash_fire_rescue = 10058, - IncidentResponseEquipment_bLS_unit = 10059, - IncidentResponseEquipment_aLS_unit = 10060, - IncidentResponseEquipment_mobile_command_post = 10075, - IncidentResponseEquipment_chief_officer_car = 10076, - IncidentResponseEquipment_hAZMAT_unit = 10077, - IncidentResponseEquipment_type_i_hand_crew = 10078, - IncidentResponseEquipment_type_ii_hand_crew = 10079, - IncidentResponseEquipment_privately_owned_vehicle = 10083, - IncidentResponseEquipment_other_apparatus_resource = 10084, - IncidentResponseEquipment_ambulance = 10085, - IncidentResponseEquipment_bomb_squad_van = 10086, - IncidentResponseEquipment_combine_harvester = 10087, - IncidentResponseEquipment_construction_vehicle = 10088, - IncidentResponseEquipment_farm_tractor = 10089, - IncidentResponseEquipment_grass_cutting_machines = 10090, - IncidentResponseEquipment_hAZMAT_containment_tow = 10091, - IncidentResponseEquipment_heavy_tow = 10092, - IncidentResponseEquipment_light_tow = 10094, - IncidentResponseEquipment_flatbed_tow = 10114, - IncidentResponseEquipment_hedge_cutting_machines = 10093, - IncidentResponseEquipment_mobile_crane = 10095, - IncidentResponseEquipment_refuse_collection_vehicle = 10096, - IncidentResponseEquipment_resurfacing_vehicle = 10097, - IncidentResponseEquipment_road_sweeper = 10098, - IncidentResponseEquipment_roadside_litter_collection_crews = 10099, - IncidentResponseEquipment_salvage_vehicle = 10100, - IncidentResponseEquipment_sand_truck = 10101, - IncidentResponseEquipment_snowplow = 10102, - IncidentResponseEquipment_steam_roller = 10103, - IncidentResponseEquipment_swat_team_van = 10104, - IncidentResponseEquipment_track_laying_vehicle = 10105, - IncidentResponseEquipment_unknown_vehicle = 10106, - IncidentResponseEquipment_white_lining_vehicle = 10107, - IncidentResponseEquipment_dump_truck = 10108, - IncidentResponseEquipment_supervisor_vehicle = 10109, - IncidentResponseEquipment_snow_blower = 10110, - IncidentResponseEquipment_rotary_snow_blower = 10111, - IncidentResponseEquipment_road_grader = 10112, - IncidentResponseEquipment_steam_truck = 10113 - /* - * Enumeration is extensible - */ -} e_IncidentResponseEquipment; - -/* IncidentResponseEquipment */ -typedef long IncidentResponseEquipment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; -asn_struct_free_f IncidentResponseEquipment_free; -asn_struct_print_f IncidentResponseEquipment_print; -asn_constr_check_f IncidentResponseEquipment_constraint; -ber_type_decoder_f IncidentResponseEquipment_decode_ber; -der_type_encoder_f IncidentResponseEquipment_encode_der; -xer_type_decoder_f IncidentResponseEquipment_decode_xer; -xer_type_encoder_f IncidentResponseEquipment_encode_xer; -per_type_decoder_f IncidentResponseEquipment_decode_uper; -per_type_encoder_f IncidentResponseEquipment_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IncidentResponseEquipment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h deleted file mode 100644 index 4eaf8b73f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionCollision_H_ -#define _IntersectionCollision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "TemporaryID.h" -#include "DSecond.h" -#include "PathHistory.h" -#include "IntersectionID.h" -#include "LaneNumber.h" -#include "EventFlags.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionCollision */ -typedef struct IntersectionCollision { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - TemporaryID_t id; - DSecond_t *secMark /* OPTIONAL */; - PathHistory_t path; - IntersectionID_t intersetionID; - LaneNumber_t laneNumber; - EventFlags_t eventFlag; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionCollision_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionCollision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h deleted file mode 100644 index f41b0ed57..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionGeometry_H_ -#define _IntersectionGeometry_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "MsgCount.h" -#include "Position3D-2.h" -#include "LaneWidth.h" -#include "LaneList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct PreemptPriorityList; -struct Reg_Intersection; - -/* IntersectionGeometry */ -typedef struct IntersectionGeometry { - DescriptiveName_t *name /* OPTIONAL */; - IntersectionReferenceID_t id; - MsgCount_t revision; - Position3D_2_t refPoint; - LaneWidth_t *laneWidth /* OPTIONAL */; - struct SpeedLimitList *speedLimits /* OPTIONAL */; - LaneList_t laneSet; - struct PreemptPriorityList *preemptPriorityData /* OPTIONAL */; - struct Reg_Intersection *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionGeometry_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SpeedLimitList.h" -#include "PreemptPriorityList.h" -#include "RegionalIntersection.h" - -#endif /* _IntersectionGeometry_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h deleted file mode 100644 index e1a1f8d2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionGeometryList_H_ -#define _IntersectionGeometryList_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 IntersectionGeometry; - -/* IntersectionGeometryList */ -typedef struct IntersectionGeometryList { - A_SEQUENCE_OF(struct IntersectionGeometry) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionGeometryList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionGeometry.h" - -#endif /* _IntersectionGeometryList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h deleted file mode 100644 index c4a10748e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionID_H_ -#define _IntersectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionID */ -typedef long IntersectionID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; -asn_struct_free_f IntersectionID_free; -asn_struct_print_f IntersectionID_print; -asn_constr_check_f IntersectionID_constraint; -ber_type_decoder_f IntersectionID_decode_ber; -der_type_encoder_f IntersectionID_encode_der; -xer_type_decoder_f IntersectionID_decode_xer; -xer_type_encoder_f IntersectionID_encode_xer; -per_type_decoder_f IntersectionID_decode_uper; -per_type_encoder_f IntersectionID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h deleted file mode 100644 index 2135d30c2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionReferenceID_H_ -#define _IntersectionReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "IntersectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionReferenceID */ -typedef struct IntersectionReferenceID { - RoadRegulatorID_t *region /* OPTIONAL */; - IntersectionID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h deleted file mode 100644 index 9f1fe3f87..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionState_H_ -#define _IntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "MsgCount.h" -#include "IntersectionStatusObject.h" -#include "MinuteOfTheYear.h" -#include "DSecond2.h" -#include "MovementList.h" -#include "SignalControlState.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EnabledLaneList; -struct ManeuverAssistList; -struct Reg_IntersectionState; - -/* IntersectionState */ -typedef struct IntersectionState { - DescriptiveName_t *name /* OPTIONAL */; - IntersectionReferenceID_t id; - MsgCount_t revision; - IntersectionStatusObject_t status; - MinuteOfTheYear_t *moy /* OPTIONAL */; - DSecond2_t *timeStamp /* OPTIONAL */; - struct EnabledLaneList *enabledLanes /* OPTIONAL */; - MovementList_t states; - struct ManeuverAssistList *maneuverAssistList /* OPTIONAL */; - SignalControlState_t *priority /* OPTIONAL */; - SignalControlState_t *preempt /* OPTIONAL */; - struct Reg_IntersectionState *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "EnabledLaneList.h" -#include "ManeuverAssistList.h" -#include "RegionalIntersectionState.h" - -#endif /* _IntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h deleted file mode 100644 index 4a9de2a3f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionStateList_H_ -#define _IntersectionStateList_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 IntersectionState; - -/* IntersectionStateList */ -typedef struct IntersectionStateList { - A_SEQUENCE_OF(struct IntersectionState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionStateList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionState.h" - -#endif /* _IntersectionStateList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h deleted file mode 100644 index 89bc6748b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _IntersectionStatusObject_H_ -#define _IntersectionStatusObject_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IntersectionStatusObject { - IntersectionStatusObject_manualControlIsEnabled = 0, - IntersectionStatusObject_stopTimeIsActivated = 1, - IntersectionStatusObject_failureFlash = 2, - IntersectionStatusObject_preemptIsActive = 3, - IntersectionStatusObject_transitSignalPriorityIsActive = 4, - IntersectionStatusObject_fixedTimeOperation = 5, - IntersectionStatusObject_trafficDependentOperation = 6, - IntersectionStatusObject_standbyOperation = 7, - IntersectionStatusObject_failureMode = 8, - IntersectionStatusObject_off = 9, - IntersectionStatusObject_recentMAPmessageUpdate = 10, - IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, - IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, - IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 -} e_IntersectionStatusObject; - -/* IntersectionStatusObject */ -typedef BIT_STRING_t IntersectionStatusObject_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; -asn_struct_free_f IntersectionStatusObject_free; -asn_struct_print_f IntersectionStatusObject_print; -asn_constr_check_f IntersectionStatusObject_constraint; -ber_type_decoder_f IntersectionStatusObject_decode_ber; -der_type_encoder_f IntersectionStatusObject_encode_der; -xer_type_decoder_f IntersectionStatusObject_decode_xer; -xer_type_encoder_f IntersectionStatusObject_encode_xer; -per_type_decoder_f IntersectionStatusObject_decode_uper; -per_type_encoder_f IntersectionStatusObject_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionStatusObject_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h deleted file mode 100644 index db67832d0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _J1939data_H_ -#define _J1939data_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrailerWeight.h" -#include "CargoWeight.h" -#include "SteeringAxleTemperature.h" -#include "DriveAxleLocation.h" -#include "DriveAxleLiftAirPressure.h" -#include "DriveAxleTemperature.h" -#include "DriveAxleLubePressure.h" -#include "SteeringAxleLubePressure.h" -#include "asn_SEQUENCE_OF.h" -#include "TireLocation.h" -#include "TirePressure.h" -#include "TireTemp.h" -#include "WheelSensorStatus.h" -#include "WheelEndElectFault.h" -#include "TireLeakageRate.h" -#include "TirePressureThresholdDetection.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" -#include "AxleLocation.h" -#include "AxleWeight.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* J1939data */ -typedef struct J1939data { - struct J1939data__tires { - A_SEQUENCE_OF(struct J1939data__tires__Member { - TireLocation_t *location /* OPTIONAL */; - TirePressure_t *pressure /* OPTIONAL */; - TireTemp_t *temp /* OPTIONAL */; - WheelSensorStatus_t *wheelSensorStatus /* OPTIONAL */; - WheelEndElectFault_t *wheelEndElectFault /* OPTIONAL */; - TireLeakageRate_t *leakageRate /* OPTIONAL */; - TirePressureThresholdDetection_t *detection /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *tires; - struct J1939data__axle { - A_SEQUENCE_OF(struct J1939data__axle__Member { - AxleLocation_t *location /* OPTIONAL */; - AxleWeight_t *weight /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *axle; - TrailerWeight_t *trailerWeight /* OPTIONAL */; - CargoWeight_t *cargoWeight /* OPTIONAL */; - SteeringAxleTemperature_t *steeringAxleTemperature /* OPTIONAL */; - DriveAxleLocation_t *driveAxleLocation /* OPTIONAL */; - DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure /* OPTIONAL */; - DriveAxleTemperature_t *driveAxleTemperature /* OPTIONAL */; - DriveAxleLubePressure_t *driveAxleLubePressure /* OPTIONAL */; - SteeringAxleLubePressure_t *steeringAxleLubePressure /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} J1939data_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_J1939data; - -#ifdef __cplusplus -} -#endif - -#endif /* _J1939data_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h deleted file mode 100644 index 5a55d011a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Angle_H_ -#define _JPN_Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-Angle */ -typedef long JPN_Angle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Angle; -asn_struct_free_f JPN_Angle_free; -asn_struct_print_f JPN_Angle_print; -asn_constr_check_f JPN_Angle_constraint; -ber_type_decoder_f JPN_Angle_decode_ber; -der_type_encoder_f JPN_Angle_encode_der; -xer_type_decoder_f JPN_Angle_decode_xer; -xer_type_encoder_f JPN_Angle_encode_xer; -per_type_decoder_f JPN_Angle_decode_uper; -per_type_encoder_f JPN_Angle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h deleted file mode 100644 index ed57dbf00..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Elevation_H_ -#define _JPN_Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-Elevation */ -typedef long JPN_Elevation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Elevation; -asn_struct_free_f JPN_Elevation_free; -asn_struct_print_f JPN_Elevation_print; -asn_constr_check_f JPN_Elevation_constraint; -ber_type_decoder_f JPN_Elevation_decode_ber; -der_type_encoder_f JPN_Elevation_encode_der; -xer_type_decoder_f JPN_Elevation_decode_xer; -xer_type_encoder_f JPN_Elevation_encode_xer; -per_type_decoder_f JPN_Elevation_decode_uper; -per_type_encoder_f JPN_Elevation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h deleted file mode 100644 index 6651a3b23..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_MsgCount_H_ -#define _JPN_MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-MsgCount */ -typedef long JPN_MsgCount_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_MsgCount; -asn_struct_free_f JPN_MsgCount_free; -asn_struct_print_f JPN_MsgCount_print; -asn_constr_check_f JPN_MsgCount_constraint; -ber_type_decoder_f JPN_MsgCount_decode_ber; -der_type_encoder_f JPN_MsgCount_encode_der; -xer_type_decoder_f JPN_MsgCount_decode_xer; -xer_type_encoder_f JPN_MsgCount_encode_xer; -per_type_decoder_f JPN_MsgCount_decode_uper; -per_type_encoder_f JPN_MsgCount_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h deleted file mode 100644 index 0f2186cb1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Reg_LaneDataAttribute_H_ -#define _JPN_Reg_LaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-Reg-LaneDataAttribute */ -typedef struct JPN_Reg_LaneDataAttribute { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} JPN_Reg_LaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_LaneDataAttribute; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Reg_LaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h deleted file mode 100644 index bc3d7462e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Reg_MovementEvent_H_ -#define _JPN_Reg_MovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeRemaining.h" -#include "MinTimetoChange.h" -#include "MaxTimetoChange.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-Reg-MovementEvent */ -typedef struct JPN_Reg_MovementEvent { - TimeRemaining_t *startTime /* OPTIONAL */; - MinTimetoChange_t minEndTime; - MaxTimetoChange_t *maxEndTime /* OPTIONAL */; - TimeRemaining_t *likelyTime /* OPTIONAL */; - TimeIntervalConfidence_t *confidence /* OPTIONAL */; - TimeRemaining_t *nextTime /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} JPN_Reg_MovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_MovementEvent; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Reg_MovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h deleted file mode 100644 index 1104bbc80..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Reg_NodeOffsetPoint_H_ -#define _JPN_Reg_NodeOffsetPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-LLdms-48b.h" -#include "Node-LLdms-80b.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum JPN_Reg_NodeOffsetPoint_PR { - JPN_Reg_NodeOffsetPoint_PR_NOTHING, /* No components present */ - JPN_Reg_NodeOffsetPoint_PR_posA, - JPN_Reg_NodeOffsetPoint_PR_posB, - /* Extensions may appear below */ - -} JPN_Reg_NodeOffsetPoint_PR; - -/* JPN-Reg-NodeOffsetPoint */ -typedef struct JPN_Reg_NodeOffsetPoint { - JPN_Reg_NodeOffsetPoint_PR present; - union JPN_Reg_NodeOffsetPoint_u { - Node_LLdms_48b_t posA; - Node_LLdms_80b_t posB; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} JPN_Reg_NodeOffsetPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_NodeOffsetPoint; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Reg_NodeOffsetPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h deleted file mode 100644 index d684c2e65..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_Reg_Position3D_H_ -#define _JPN_Reg_Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LatitudeDMS2.h" -#include "LongitudeDMS2.h" -#include "JPN-Elevation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-Reg-Position3D */ -typedef struct JPN_Reg_Position3D { - LatitudeDMS2_t latitude; - LongitudeDMS2_t longitude; - JPN_Elevation_t elevation; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} JPN_Reg_Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_Position3D; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_Reg_Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h deleted file mode 100644 index ea1658f55..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _JPN_TimeMark_H_ -#define _JPN_TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Year.h" -#include "Month.h" -#include "Day.h" -#include "SummerTime.h" -#include "Holiday.h" -#include "DayOfWeek.h" -#include "Hour.h" -#include "Minute.h" -#include "Second.h" -#include "TenthSecond.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* JPN-TimeMark */ -typedef struct JPN_TimeMark { - Year_t year; - Month_t month; - Day_t day; - SummerTime_t summerTime; - Holiday_t holiday; - DayOfWeek_t dayofWeek; - Hour_t hour; - Minute_t minute; - Second_t second; - TenthSecond_t tenthSecond; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} JPN_TimeMark_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_JPN_TimeMark; - -#ifdef __cplusplus -} -#endif - -#endif /* _JPN_TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h deleted file mode 100644 index 21510e466..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Barrier_H_ -#define _LaneAttributes_Barrier_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Barrier { - LaneAttributes_Barrier_median_RevocableLane = 0, - LaneAttributes_Barrier_median = 1, - LaneAttributes_Barrier_whiteLineHashing = 2, - LaneAttributes_Barrier_stripedLines = 3, - LaneAttributes_Barrier_doubleStripedLines = 4, - LaneAttributes_Barrier_trafficCones = 5, - LaneAttributes_Barrier_constructionBarrier = 6, - LaneAttributes_Barrier_trafficChannels = 7, - LaneAttributes_Barrier_lowCurbs = 8, - LaneAttributes_Barrier_highCurbs = 9 -} e_LaneAttributes_Barrier; - -/* LaneAttributes-Barrier */ -typedef BIT_STRING_t LaneAttributes_Barrier_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; -asn_struct_free_f LaneAttributes_Barrier_free; -asn_struct_print_f LaneAttributes_Barrier_print; -asn_constr_check_f LaneAttributes_Barrier_constraint; -ber_type_decoder_f LaneAttributes_Barrier_decode_ber; -der_type_encoder_f LaneAttributes_Barrier_encode_der; -xer_type_decoder_f LaneAttributes_Barrier_decode_xer; -xer_type_encoder_f LaneAttributes_Barrier_encode_xer; -per_type_decoder_f LaneAttributes_Barrier_decode_uper; -per_type_encoder_f LaneAttributes_Barrier_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Barrier_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h deleted file mode 100644 index 36b4e9184..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Bike_H_ -#define _LaneAttributes_Bike_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Bike { - LaneAttributes_Bike_bikeRevocableLane = 0, - LaneAttributes_Bike_pedestrianUseAllowed = 1, - LaneAttributes_Bike_isBikeFlyOverLane = 2, - LaneAttributes_Bike_fixedCycleTime = 3, - LaneAttributes_Bike_biDirectionalCycleTimes = 4, - LaneAttributes_Bike_isolatedByBarrier = 5, - LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 -} e_LaneAttributes_Bike; - -/* LaneAttributes-Bike */ -typedef BIT_STRING_t LaneAttributes_Bike_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; -asn_struct_free_f LaneAttributes_Bike_free; -asn_struct_print_f LaneAttributes_Bike_print; -asn_constr_check_f LaneAttributes_Bike_constraint; -ber_type_decoder_f LaneAttributes_Bike_decode_ber; -der_type_encoder_f LaneAttributes_Bike_encode_der; -xer_type_decoder_f LaneAttributes_Bike_decode_xer; -xer_type_encoder_f LaneAttributes_Bike_encode_xer; -per_type_decoder_f LaneAttributes_Bike_decode_uper; -per_type_encoder_f LaneAttributes_Bike_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Bike_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h deleted file mode 100644 index c6b255542..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Crosswalk_H_ -#define _LaneAttributes_Crosswalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Crosswalk { - LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, - LaneAttributes_Crosswalk_bicyleUseAllowed = 1, - LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, - LaneAttributes_Crosswalk_fixedCycleTime = 3, - LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, - LaneAttributes_Crosswalk_hasPushToWalkButton = 5, - LaneAttributes_Crosswalk_audioSupport = 6, - LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, - LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 -} e_LaneAttributes_Crosswalk; - -/* LaneAttributes-Crosswalk */ -typedef BIT_STRING_t LaneAttributes_Crosswalk_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; -asn_struct_free_f LaneAttributes_Crosswalk_free; -asn_struct_print_f LaneAttributes_Crosswalk_print; -asn_constr_check_f LaneAttributes_Crosswalk_constraint; -ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; -der_type_encoder_f LaneAttributes_Crosswalk_encode_der; -xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; -xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; -per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; -per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Crosswalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h deleted file mode 100644 index 91ad5142f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Parking_H_ -#define _LaneAttributes_Parking_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Parking { - LaneAttributes_Parking_parkingRevocableLane = 0, - LaneAttributes_Parking_parallelParkingInUse = 1, - LaneAttributes_Parking_headInParkingInUse = 2, - LaneAttributes_Parking_doNotParkZone = 3, - LaneAttributes_Parking_parkingForBusUse = 4, - LaneAttributes_Parking_parkingForTaxiUse = 5, - LaneAttributes_Parking_noPublicParkingUse = 6 -} e_LaneAttributes_Parking; - -/* LaneAttributes-Parking */ -typedef BIT_STRING_t LaneAttributes_Parking_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; -asn_struct_free_f LaneAttributes_Parking_free; -asn_struct_print_f LaneAttributes_Parking_print; -asn_constr_check_f LaneAttributes_Parking_constraint; -ber_type_decoder_f LaneAttributes_Parking_decode_ber; -der_type_encoder_f LaneAttributes_Parking_encode_der; -xer_type_decoder_f LaneAttributes_Parking_decode_xer; -xer_type_encoder_f LaneAttributes_Parking_encode_xer; -per_type_decoder_f LaneAttributes_Parking_decode_uper; -per_type_encoder_f LaneAttributes_Parking_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Parking_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h deleted file mode 100644 index b8fd7131f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Sidewalk_H_ -#define _LaneAttributes_Sidewalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Sidewalk { - LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, - LaneAttributes_Sidewalk_bicyleUseAllowed = 1, - LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, - LaneAttributes_Sidewalk_walkBikes = 3 -} e_LaneAttributes_Sidewalk; - -/* LaneAttributes-Sidewalk */ -typedef BIT_STRING_t LaneAttributes_Sidewalk_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; -asn_struct_free_f LaneAttributes_Sidewalk_free; -asn_struct_print_f LaneAttributes_Sidewalk_print; -asn_constr_check_f LaneAttributes_Sidewalk_constraint; -ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; -der_type_encoder_f LaneAttributes_Sidewalk_encode_der; -xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; -xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; -per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; -per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Sidewalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h deleted file mode 100644 index 267633e51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Striping_H_ -#define _LaneAttributes_Striping_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Striping { - LaneAttributes_Striping_stripToConnectingLanesRevocableLane = 0, - LaneAttributes_Striping_stripDrawOnLeft = 1, - LaneAttributes_Striping_stripDrawOnRight = 2, - LaneAttributes_Striping_stripToConnectingLanesLeft = 3, - LaneAttributes_Striping_stripToConnectingLanesRight = 4, - LaneAttributes_Striping_stripToConnectingLanesAhead = 5 -} e_LaneAttributes_Striping; - -/* LaneAttributes-Striping */ -typedef BIT_STRING_t LaneAttributes_Striping_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; -asn_struct_free_f LaneAttributes_Striping_free; -asn_struct_print_f LaneAttributes_Striping_print; -asn_constr_check_f LaneAttributes_Striping_constraint; -ber_type_decoder_f LaneAttributes_Striping_decode_ber; -der_type_encoder_f LaneAttributes_Striping_encode_der; -xer_type_decoder_f LaneAttributes_Striping_decode_xer; -xer_type_encoder_f LaneAttributes_Striping_encode_xer; -per_type_decoder_f LaneAttributes_Striping_decode_uper; -per_type_encoder_f LaneAttributes_Striping_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Striping_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h deleted file mode 100644 index 6a6887064..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_TrackedVehicle_H_ -#define _LaneAttributes_TrackedVehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_TrackedVehicle { - LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, - LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, - LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, - LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, - LaneAttributes_TrackedVehicle_spec_otherRailType = 4 -} e_LaneAttributes_TrackedVehicle; - -/* LaneAttributes-TrackedVehicle */ -typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; -asn_struct_free_f LaneAttributes_TrackedVehicle_free; -asn_struct_print_f LaneAttributes_TrackedVehicle_print; -asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; -ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; -der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; -xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; -xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; -per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; -per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_TrackedVehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h deleted file mode 100644 index 7717e4393..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_Vehicle_H_ -#define _LaneAttributes_Vehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Vehicle { - LaneAttributes_Vehicle_isVehicleRevocableLane = 0, - LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, - LaneAttributes_Vehicle_hovLaneUseOnly = 2, - LaneAttributes_Vehicle_restrictedToBusUse = 3, - LaneAttributes_Vehicle_restrictedToTaxiUse = 4, - LaneAttributes_Vehicle_restrictedFromPublicUse = 5, - LaneAttributes_Vehicle_hasIRbeaconCoverage = 6 -} e_LaneAttributes_Vehicle; - -/* LaneAttributes-Vehicle */ -typedef BIT_STRING_t LaneAttributes_Vehicle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; -asn_struct_free_f LaneAttributes_Vehicle_free; -asn_struct_print_f LaneAttributes_Vehicle_print; -asn_constr_check_f LaneAttributes_Vehicle_constraint; -ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; -der_type_encoder_f LaneAttributes_Vehicle_encode_der; -xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; -xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; -per_type_decoder_f LaneAttributes_Vehicle_decode_uper; -per_type_encoder_f LaneAttributes_Vehicle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Vehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h deleted file mode 100644 index fc290306a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneAttributes_H_ -#define _LaneAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneDirection.h" -#include "LaneSharing.h" -#include "LaneTypeAttributes.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_LaneAttributes; - -/* LaneAttributes */ -typedef struct LaneAttributes { - LaneDirection_t directionalUse; - LaneSharing_t sharedWith; - LaneTypeAttributes_t laneType; - struct Reg_LaneAttributes *regional /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalLaneAttributes.h" - -#endif /* _LaneAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h deleted file mode 100644 index 867df1465..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneConnectionID_H_ -#define _LaneConnectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneConnectionID */ -typedef long LaneConnectionID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; -asn_struct_free_f LaneConnectionID_free; -asn_struct_print_f LaneConnectionID_print; -asn_constr_check_f LaneConnectionID_constraint; -ber_type_decoder_f LaneConnectionID_decode_ber; -der_type_encoder_f LaneConnectionID_encode_der; -xer_type_decoder_f LaneConnectionID_decode_xer; -xer_type_encoder_f LaneConnectionID_encode_xer; -per_type_decoder_f LaneConnectionID_decode_uper; -per_type_encoder_f LaneConnectionID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneConnectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h deleted file mode 100644 index 771274aca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneDataAttribute_H_ -#define _LaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DeltaAngle.h" -#include "RoadwayCrownAngle.h" -#include "MergeDivergeNodeAngle.h" -#include "SpeedLimitList.h" -#include "RegionalLaneDataAttribute.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDataAttribute_PR { - LaneDataAttribute_PR_NOTHING, /* No components present */ - LaneDataAttribute_PR_pathEndPointAngle, - LaneDataAttribute_PR_laneCrownPointCenter, - LaneDataAttribute_PR_laneCrownPointLeft, - LaneDataAttribute_PR_laneCrownPointRight, - LaneDataAttribute_PR_laneAngle, - LaneDataAttribute_PR_speedLimits, - LaneDataAttribute_PR_regional, - /* Extensions may appear below */ - -} LaneDataAttribute_PR; - -/* LaneDataAttribute */ -typedef struct LaneDataAttribute { - LaneDataAttribute_PR present; - union LaneDataAttribute_u { - DeltaAngle_t pathEndPointAngle; - RoadwayCrownAngle_t laneCrownPointCenter; - RoadwayCrownAngle_t laneCrownPointLeft; - RoadwayCrownAngle_t laneCrownPointRight; - MergeDivergeNodeAngle_t laneAngle; - SpeedLimitList_t speedLimits; - RegionalLaneDataAttribute_t regional; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h deleted file mode 100644 index d72bfec93..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneDataAttributeList_H_ -#define _LaneDataAttributeList_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 LaneDataAttribute; - -/* LaneDataAttributeList */ -typedef struct LaneDataAttributeList { - A_SEQUENCE_OF(struct LaneDataAttribute) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "LaneDataAttribute.h" - -#endif /* _LaneDataAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h deleted file mode 100644 index e3097f4b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneDirection_H_ -#define _LaneDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDirection { - LaneDirection_ingressPath = 0, - LaneDirection_egressPath = 1 -} e_LaneDirection; - -/* LaneDirection */ -typedef BIT_STRING_t LaneDirection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; -asn_struct_free_f LaneDirection_free; -asn_struct_print_f LaneDirection_print; -asn_constr_check_f LaneDirection_constraint; -ber_type_decoder_f LaneDirection_decode_ber; -der_type_encoder_f LaneDirection_encode_der; -xer_type_decoder_f LaneDirection_decode_xer; -xer_type_encoder_f LaneDirection_encode_xer; -per_type_decoder_f LaneDirection_decode_uper; -per_type_encoder_f LaneDirection_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h deleted file mode 100644 index 1ee3c2de9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneID_H_ -#define _LaneID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneID */ -typedef long LaneID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneID; -asn_struct_free_f LaneID_free; -asn_struct_print_f LaneID_print; -asn_constr_check_f LaneID_constraint; -ber_type_decoder_f LaneID_decode_ber; -der_type_encoder_f LaneID_encode_der; -xer_type_decoder_f LaneID_decode_xer; -xer_type_encoder_f LaneID_encode_xer; -per_type_decoder_f LaneID_decode_uper; -per_type_encoder_f LaneID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h deleted file mode 100644 index e2ab5584c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneList_H_ -#define _LaneList_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 GenericLane; - -/* LaneList */ -typedef struct LaneList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "GenericLane.h" - -#endif /* _LaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h deleted file mode 100644 index 7a6a567cb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneNumber_H_ -#define _LaneNumber_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneNumber */ -typedef OCTET_STRING_t LaneNumber_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneNumber; -asn_struct_free_f LaneNumber_free; -asn_struct_print_f LaneNumber_print; -asn_constr_check_f LaneNumber_constraint; -ber_type_decoder_f LaneNumber_decode_ber; -der_type_encoder_f LaneNumber_encode_der; -xer_type_decoder_f LaneNumber_decode_xer; -xer_type_encoder_f LaneNumber_encode_xer; -per_type_decoder_f LaneNumber_decode_uper; -per_type_encoder_f LaneNumber_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneNumber_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h deleted file mode 100644 index 400a10c1e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneSharing_H_ -#define _LaneSharing_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneSharing { - LaneSharing_overlappingLaneDescriptionProvided = 0, - LaneSharing_multipleLanesTreatedAsOneLane = 1, - LaneSharing_otherNonMotorizedTrafficTypes = 2, - LaneSharing_individualMotorizedVehicleTraffic = 3, - LaneSharing_busVehicleTraffic = 4, - LaneSharing_taxiVehicleTraffic = 5, - LaneSharing_pedestriansTraffic = 6, - LaneSharing_cyclistVehicleTraffic = 7, - LaneSharing_trackedVehicleTraffic = 8, - LaneSharing_pedestrianTraffic = 9 -} e_LaneSharing; - -/* LaneSharing */ -typedef BIT_STRING_t LaneSharing_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; -asn_struct_free_f LaneSharing_free; -asn_struct_print_f LaneSharing_print; -asn_constr_check_f LaneSharing_constraint; -ber_type_decoder_f LaneSharing_decode_ber; -der_type_encoder_f LaneSharing_encode_der; -xer_type_decoder_f LaneSharing_decode_xer; -xer_type_encoder_f LaneSharing_encode_xer; -per_type_decoder_f LaneSharing_decode_uper; -per_type_encoder_f LaneSharing_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneSharing_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h deleted file mode 100644 index 11b016844..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneTypeAttributes_H_ -#define _LaneTypeAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneAttributes-Vehicle.h" -#include "LaneAttributes-Crosswalk.h" -#include "LaneAttributes-Bike.h" -#include "LaneAttributes-Sidewalk.h" -#include "LaneAttributes-Barrier.h" -#include "LaneAttributes-Striping.h" -#include "LaneAttributes-TrackedVehicle.h" -#include "LaneAttributes-Parking.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneTypeAttributes_PR { - LaneTypeAttributes_PR_NOTHING, /* No components present */ - LaneTypeAttributes_PR_vehicle, - LaneTypeAttributes_PR_crosswalk, - LaneTypeAttributes_PR_bikeLane, - LaneTypeAttributes_PR_sidewalk, - LaneTypeAttributes_PR_median, - LaneTypeAttributes_PR_striping, - LaneTypeAttributes_PR_trackedVehicle, - LaneTypeAttributes_PR_parking, - /* Extensions may appear below */ - -} LaneTypeAttributes_PR; - -/* LaneTypeAttributes */ -typedef struct LaneTypeAttributes { - LaneTypeAttributes_PR present; - union LaneTypeAttributes_u { - LaneAttributes_Vehicle_t vehicle; - LaneAttributes_Crosswalk_t crosswalk; - LaneAttributes_Bike_t bikeLane; - LaneAttributes_Sidewalk_t sidewalk; - LaneAttributes_Barrier_t median; - LaneAttributes_Striping_t striping; - LaneAttributes_TrackedVehicle_t trackedVehicle; - LaneAttributes_Parking_t parking; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneTypeAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneTypeAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h deleted file mode 100644 index 1b03f09aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LaneWidth_H_ -#define _LaneWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneWidth */ -typedef long LaneWidth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; -asn_struct_free_f LaneWidth_free; -asn_struct_print_f LaneWidth_print; -asn_constr_check_f LaneWidth_constraint; -ber_type_decoder_f LaneWidth_decode_ber; -der_type_encoder_f LaneWidth_encode_der; -xer_type_decoder_f LaneWidth_decode_xer; -xer_type_encoder_f LaneWidth_encode_xer; -per_type_decoder_f LaneWidth_decode_uper; -per_type_encoder_f LaneWidth_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h deleted file mode 100644 index 4c9cd93d0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Latitude_H_ -#define _Latitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Latitude */ -typedef long Latitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Latitude; -asn_struct_free_f Latitude_free; -asn_struct_print_f Latitude_print; -asn_constr_check_f Latitude_constraint; -ber_type_decoder_f Latitude_decode_ber; -der_type_encoder_f Latitude_encode_der; -xer_type_decoder_f Latitude_decode_xer; -xer_type_encoder_f Latitude_encode_xer; -per_type_decoder_f Latitude_decode_uper; -per_type_encoder_f Latitude_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Latitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h deleted file mode 100644 index bc0d0d9df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LatitudeDMS_H_ -#define _LatitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS */ -typedef long LatitudeDMS_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; -asn_struct_free_f LatitudeDMS_free; -asn_struct_print_f LatitudeDMS_print; -asn_constr_check_f LatitudeDMS_constraint; -ber_type_decoder_f LatitudeDMS_decode_ber; -der_type_encoder_f LatitudeDMS_encode_der; -xer_type_decoder_f LatitudeDMS_decode_xer; -xer_type_encoder_f LatitudeDMS_encode_xer; -per_type_decoder_f LatitudeDMS_decode_uper; -per_type_encoder_f LatitudeDMS_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h deleted file mode 100644 index b8ec914a5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LatitudeDMS2_H_ -#define _LatitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLat.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS2 */ -typedef struct LatitudeDMS2 { - DegreesLat_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LatitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h deleted file mode 100644 index e5919eba4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LayerID_H_ -#define _LayerID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LayerID */ -typedef long LayerID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LayerID; -asn_struct_free_f LayerID_free; -asn_struct_print_f LayerID_print; -asn_constr_check_f LayerID_constraint; -ber_type_decoder_f LayerID_decode_ber; -der_type_encoder_f LayerID_encode_der; -xer_type_decoder_f LayerID_decode_xer; -xer_type_encoder_f LayerID_encode_xer; -per_type_decoder_f LayerID_decode_uper; -per_type_encoder_f LayerID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h deleted file mode 100644 index d316610b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LayerType_H_ -#define _LayerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LayerType { - LayerType_none = 0, - LayerType_mixedContent = 1, - LayerType_generalMapData = 2, - LayerType_intersectionData = 3, - LayerType_curveData = 4, - LayerType_roadwaySectionData = 5, - LayerType_parkingAreaData = 6, - LayerType_sharedLaneData = 7 - /* - * Enumeration is extensible - */ -} e_LayerType; - -/* LayerType */ -typedef long LayerType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LayerType; -asn_struct_free_f LayerType_free; -asn_struct_print_f LayerType_print; -asn_constr_check_f LayerType_constraint; -ber_type_decoder_f LayerType_decode_ber; -der_type_encoder_f LayerType_encode_der; -xer_type_decoder_f LayerType_decode_xer; -xer_type_encoder_f LayerType_encode_xer; -per_type_decoder_f LayerType_decode_uper; -per_type_encoder_f LayerType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h deleted file mode 100644 index ea664cddc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LightbarInUse_H_ -#define _LightbarInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LightbarInUse { - LightbarInUse_unavailable = 0, - LightbarInUse_notInUse = 1, - LightbarInUse_inUse = 2, - LightbarInUse_sirenInUse = 3, - LightbarInUse_yellowCautionLights = 4, - LightbarInUse_schooldBusLights = 5, - LightbarInUse_arrowSignsActive = 6, - LightbarInUse_slowMovingVehicle = 7, - LightbarInUse_freqStops = 8, - LightbarInUse_reserved = 9 -} e_LightbarInUse; - -/* LightbarInUse */ -typedef long LightbarInUse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; -asn_struct_free_f LightbarInUse_free; -asn_struct_print_f LightbarInUse_print; -asn_constr_check_f LightbarInUse_constraint; -ber_type_decoder_f LightbarInUse_decode_ber; -der_type_encoder_f LightbarInUse_encode_der; -xer_type_decoder_f LightbarInUse_decode_xer; -xer_type_encoder_f LightbarInUse_encode_xer; -per_type_decoder_f LightbarInUse_decode_uper; -per_type_encoder_f LightbarInUse_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LightbarInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h deleted file mode 100644 index 7837284d3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Location_quality_H_ -#define _Location_quality_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_quality { - Location_quality_loc_qual_bt1m = 0, - Location_quality_loc_qual_bt5m = 1, - Location_quality_loc_qual_bt12m = 2, - Location_quality_loc_qual_bt50m = 3, - Location_quality_loc_qual_bt125m = 4, - Location_quality_loc_qual_bt500m = 5, - Location_quality_loc_qual_bt1250m = 6, - Location_quality_loc_qual_unknown = 7 -} e_Location_quality; - -/* Location-quality */ -typedef long Location_quality_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_quality; -asn_struct_free_f Location_quality_free; -asn_struct_print_f Location_quality_print; -asn_constr_check_f Location_quality_constraint; -ber_type_decoder_f Location_quality_decode_ber; -der_type_encoder_f Location_quality_encode_der; -xer_type_decoder_f Location_quality_decode_xer; -xer_type_encoder_f Location_quality_encode_xer; -per_type_decoder_f Location_quality_decode_uper; -per_type_encoder_f Location_quality_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_quality_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h deleted file mode 100644 index da4d7126d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Location_tech_H_ -#define _Location_tech_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_tech { - Location_tech_loc_tech_unknown = 0, - Location_tech_loc_tech_GPS = 1, - Location_tech_loc_tech_DGPS = 2, - Location_tech_loc_tech_drGPS = 3, - Location_tech_loc_tech_drDGPS = 4, - Location_tech_loc_tech_dr = 5, - Location_tech_loc_tech_nav = 6, - /* - * Enumeration is extensible - */ - Location_tech_loc_tech_fault = 31 -} e_Location_tech; - -/* Location-tech */ -typedef long Location_tech_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_tech; -asn_struct_free_f Location_tech_free; -asn_struct_print_f Location_tech_print; -asn_constr_check_f Location_tech_constraint; -ber_type_decoder_f Location_tech_decode_ber; -der_type_encoder_f Location_tech_encode_der; -xer_type_decoder_f Location_tech_decode_xer; -xer_type_encoder_f Location_tech_encode_xer; -per_type_decoder_f Location_tech_decode_uper; -per_type_encoder_f Location_tech_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_tech_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h deleted file mode 100644 index 6eadf0391..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Longitude_H_ -#define _Longitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Longitude */ -typedef long Longitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Longitude; -asn_struct_free_f Longitude_free; -asn_struct_print_f Longitude_print; -asn_constr_check_f Longitude_constraint; -ber_type_decoder_f Longitude_decode_ber; -der_type_encoder_f Longitude_encode_der; -xer_type_decoder_f Longitude_decode_xer; -xer_type_encoder_f Longitude_encode_xer; -per_type_decoder_f Longitude_decode_uper; -per_type_encoder_f Longitude_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Longitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h deleted file mode 100644 index 5fcb03f7e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LongitudeDMS_H_ -#define _LongitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS */ -typedef long LongitudeDMS_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; -asn_struct_free_f LongitudeDMS_free; -asn_struct_print_f LongitudeDMS_print; -asn_constr_check_f LongitudeDMS_constraint; -ber_type_decoder_f LongitudeDMS_decode_ber; -der_type_encoder_f LongitudeDMS_encode_der; -xer_type_decoder_f LongitudeDMS_decode_xer; -xer_type_encoder_f LongitudeDMS_encode_xer; -per_type_decoder_f LongitudeDMS_decode_uper; -per_type_encoder_f LongitudeDMS_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h deleted file mode 100644 index 0a7a0c61f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _LongitudeDMS2_H_ -#define _LongitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLong.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS2 */ -typedef struct LongitudeDMS2 { - DegreesLong_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LongitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h deleted file mode 100644 index b8a5ae19a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MUTCDCode_H_ -#define _MUTCDCode_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MUTCDCode { - MUTCDCode_none = 0, - MUTCDCode_regulatory = 1, - MUTCDCode_warning = 2, - MUTCDCode_maintenance = 3, - MUTCDCode_motoristService = 4, - MUTCDCode_guide = 5, - MUTCDCode_rec = 6 - /* - * Enumeration is extensible - */ -} e_MUTCDCode; - -/* MUTCDCode */ -typedef long MUTCDCode_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; -asn_struct_free_f MUTCDCode_free; -asn_struct_print_f MUTCDCode_print; -asn_constr_check_f MUTCDCode_constraint; -ber_type_decoder_f MUTCDCode_decode_ber; -der_type_encoder_f MUTCDCode_encode_der; -xer_type_decoder_f MUTCDCode_decode_xer; -xer_type_encoder_f MUTCDCode_encode_xer; -per_type_decoder_f MUTCDCode_decode_uper; -per_type_encoder_f MUTCDCode_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MUTCDCode_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h deleted file mode 100644 index f12680580..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ManeuverAssistList_H_ -#define _ManeuverAssistList_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 ConnectionManeuverAssist; - -/* ManeuverAssistList */ -typedef struct ManeuverAssistList { - A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ManeuverAssistList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ConnectionManeuverAssist.h" - -#endif /* _ManeuverAssistList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h deleted file mode 100644 index 62be9848a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MapData_H_ -#define _MapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID2.h" -#include "DSRCmsgSubID.h" -#include "MsgCount.h" -#include "LayerType.h" -#include "LayerID.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionGeometryList; -struct RoadSegmentList; -struct DataParameters; -struct RestrictionClassList; -struct Reg_MapData; - -/* MapData */ -typedef struct MapData { - DSRCmsgID2_t msgID; - DSRCmsgSubID_t *msgSubID /* OPTIONAL */; - MsgCount_t msgIssueRevision; - LayerType_t *layerType /* OPTIONAL */; - LayerID_t *layerID /* OPTIONAL */; - struct IntersectionGeometryList *intersections /* OPTIONAL */; - struct RoadSegmentList *roadSegments /* OPTIONAL */; - struct DataParameters *dataParameters /* OPTIONAL */; - struct RestrictionClassList *restrictionList /* OPTIONAL */; - struct Reg_MapData *regional /* OPTIONAL */; - MsgCRC_t *crc /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MapData; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionGeometryList.h" -#include "RoadSegmentList.h" -#include "DataParameters.h" -#include "RestrictionClassList.h" -#include "RegionalMapData.h" - -#endif /* _MapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h deleted file mode 100644 index 25b28bb87..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MaxTimetoChange_H_ -#define _MaxTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MaxTimetoChange */ -typedef long MaxTimetoChange_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; -asn_struct_free_f MaxTimetoChange_free; -asn_struct_print_f MaxTimetoChange_print; -asn_constr_check_f MaxTimetoChange_constraint; -ber_type_decoder_f MaxTimetoChange_decode_ber; -der_type_encoder_f MaxTimetoChange_encode_der; -xer_type_decoder_f MaxTimetoChange_decode_xer; -xer_type_encoder_f MaxTimetoChange_encode_xer; -per_type_decoder_f MaxTimetoChange_decode_uper; -per_type_encoder_f MaxTimetoChange_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MaxTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h deleted file mode 100644 index 262fa9185..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MergeDivergeNodeAngle_H_ -#define _MergeDivergeNodeAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MergeDivergeNodeAngle */ -typedef long MergeDivergeNodeAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; -asn_struct_free_f MergeDivergeNodeAngle_free; -asn_struct_print_f MergeDivergeNodeAngle_print; -asn_constr_check_f MergeDivergeNodeAngle_constraint; -ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; -der_type_encoder_f MergeDivergeNodeAngle_encode_der; -xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; -xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; -per_type_decoder_f MergeDivergeNodeAngle_decode_uper; -per_type_encoder_f MergeDivergeNodeAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MergeDivergeNodeAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h deleted file mode 100644 index 855c14989..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MinTimetoChange_H_ -#define _MinTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinTimetoChange */ -typedef long MinTimetoChange_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; -asn_struct_free_f MinTimetoChange_free; -asn_struct_print_f MinTimetoChange_print; -asn_constr_check_f MinTimetoChange_constraint; -ber_type_decoder_f MinTimetoChange_decode_ber; -der_type_encoder_f MinTimetoChange_encode_der; -xer_type_decoder_f MinTimetoChange_decode_xer; -xer_type_encoder_f MinTimetoChange_encode_xer; -per_type_decoder_f MinTimetoChange_decode_uper; -per_type_encoder_f MinTimetoChange_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h deleted file mode 100644 index 32fd05592..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Minute_H_ -#define _Minute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Minute */ -typedef long Minute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Minute; -asn_struct_free_f Minute_free; -asn_struct_print_f Minute_print; -asn_constr_check_f Minute_constraint; -ber_type_decoder_f Minute_decode_ber; -der_type_encoder_f Minute_encode_der; -xer_type_decoder_f Minute_decode_xer; -xer_type_encoder_f Minute_encode_xer; -per_type_decoder_f Minute_decode_uper; -per_type_encoder_f Minute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Minute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h deleted file mode 100644 index ad02e8d07..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MinuteOfTheYear_H_ -#define _MinuteOfTheYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinuteOfTheYear */ -typedef long MinuteOfTheYear_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; -asn_struct_free_f MinuteOfTheYear_free; -asn_struct_print_f MinuteOfTheYear_print; -asn_constr_check_f MinuteOfTheYear_constraint; -ber_type_decoder_f MinuteOfTheYear_decode_ber; -der_type_encoder_f MinuteOfTheYear_encode_der; -xer_type_decoder_f MinuteOfTheYear_decode_xer; -xer_type_encoder_f MinuteOfTheYear_encode_xer; -per_type_decoder_f MinuteOfTheYear_decode_uper; -per_type_encoder_f MinuteOfTheYear_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinuteOfTheYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h deleted file mode 100644 index c85ffd898..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MinutesAngle_H_ -#define _MinutesAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesAngle */ -typedef long MinutesAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; -asn_struct_free_f MinutesAngle_free; -asn_struct_print_f MinutesAngle_print; -asn_constr_check_f MinutesAngle_constraint; -ber_type_decoder_f MinutesAngle_decode_ber; -der_type_encoder_f MinutesAngle_encode_der; -xer_type_decoder_f MinutesAngle_decode_xer; -xer_type_encoder_f MinutesAngle_encode_xer; -per_type_decoder_f MinutesAngle_decode_uper; -per_type_encoder_f MinutesAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h deleted file mode 100644 index 4a2c9f884..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MinutesDuration_H_ -#define _MinutesDuration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesDuration */ -typedef long MinutesDuration_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; -asn_struct_free_f MinutesDuration_free; -asn_struct_print_f MinutesDuration_print; -asn_constr_check_f MinutesDuration_constraint; -ber_type_decoder_f MinutesDuration_decode_ber; -der_type_encoder_f MinutesDuration_encode_der; -xer_type_decoder_f MinutesDuration_decode_xer; -xer_type_encoder_f MinutesDuration_encode_xer; -per_type_decoder_f MinutesDuration_decode_uper; -per_type_encoder_f MinutesDuration_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesDuration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h deleted file mode 100644 index d9ceef9f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityNeeds_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h deleted file mode 100644 index bdf2d4505..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityNeedsList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h deleted file mode 100644 index 1e68c8733..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_TYPE_descriptor_t asn_DEF_MobilityNeedsType; -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_r41/ModeOfTransportType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h deleted file mode 100644 index 279aadbb0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_TYPE_descriptor_t asn_DEF_ModeOfTransportType; -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_r41/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h deleted file mode 100644 index 5064dd40d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Month_H_ -#define _Month_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Month */ -typedef long Month_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Month; -asn_struct_free_f Month_free; -asn_struct_print_f Month_print; -asn_constr_check_f Month_constraint; -ber_type_decoder_f Month_decode_ber; -der_type_encoder_f Month_encode_der; -xer_type_decoder_f Month_decode_xer; -xer_type_encoder_f Month_encode_xer; -per_type_decoder_f Month_decode_uper; -per_type_encoder_f Month_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Month_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h deleted file mode 100644 index 7d6d456ca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _MotorizedPropelledType_H_ -#define _MotorizedPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MotorizedPropelledType { - MotorizedPropelledType_unavailable = 0, - MotorizedPropelledType_otherTypes = 1, - MotorizedPropelledType_wheelChair = 2, - MotorizedPropelledType_bicycle = 3, - MotorizedPropelledType_scooter = 4, - MotorizedPropelledType_selfBalancingDevice = 5 - /* - * Enumeration is extensible - */ -} e_MotorizedPropelledType; - -/* MotorizedPropelledType */ -typedef long MotorizedPropelledType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; -asn_struct_free_f MotorizedPropelledType_free; -asn_struct_print_f MotorizedPropelledType_print; -asn_constr_check_f MotorizedPropelledType_constraint; -ber_type_decoder_f MotorizedPropelledType_decode_ber; -der_type_encoder_f MotorizedPropelledType_encode_der; -xer_type_decoder_f MotorizedPropelledType_decode_xer; -xer_type_encoder_f MotorizedPropelledType_encode_xer; -per_type_decoder_f MotorizedPropelledType_decode_uper; -per_type_encoder_f MotorizedPropelledType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MotorizedPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h deleted file mode 100644 index ca40d2944..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MovementEvent_H_ -#define _MovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MovementPhaseState.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TimeChangeDetails; -struct AdvisorySpeedList; -struct Reg_MovementEvent; - -/* MovementEvent */ -typedef struct MovementEvent { - MovementPhaseState_t eventState; - struct TimeChangeDetails *timing /* OPTIONAL */; - struct AdvisorySpeedList *speeds /* OPTIONAL */; - struct Reg_MovementEvent *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TimeChangeDetails.h" -#include "AdvisorySpeedList.h" -#include "RegionalMovementEvent.h" - -#endif /* _MovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h deleted file mode 100644 index ac07f65f0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MovementEventList_H_ -#define _MovementEventList_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 MovementEvent; - -/* MovementEventList */ -typedef struct MovementEventList { - A_SEQUENCE_OF(struct MovementEvent) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEventList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MovementEvent.h" - -#endif /* _MovementEventList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h deleted file mode 100644 index 09ff49b3f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MovementList_H_ -#define _MovementList_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 MovementState; - -/* MovementList */ -typedef struct MovementList { - A_SEQUENCE_OF(struct MovementState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MovementState.h" - -#endif /* _MovementList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h deleted file mode 100644 index d2ce3d06b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MovementPhaseState_H_ -#define _MovementPhaseState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MovementPhaseState { - MovementPhaseState_unavailable = 0, - MovementPhaseState_dark = 1, - MovementPhaseState_stop_Then_Proceed = 2, - MovementPhaseState_stop_And_Remain = 3, - MovementPhaseState_pre_Movement = 4, - MovementPhaseState_permissive_Movement_Allowed = 5, - MovementPhaseState_protected_Movement_Allowed = 6, - MovementPhaseState_permissive_clearance = 7, - MovementPhaseState_protected_clearance = 8, - MovementPhaseState_caution_Conflicting_Traffic = 9 -} e_MovementPhaseState; - -/* MovementPhaseState */ -typedef long MovementPhaseState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; -asn_struct_free_f MovementPhaseState_free; -asn_struct_print_f MovementPhaseState_print; -asn_constr_check_f MovementPhaseState_constraint; -ber_type_decoder_f MovementPhaseState_decode_ber; -der_type_encoder_f MovementPhaseState_encode_der; -xer_type_decoder_f MovementPhaseState_decode_xer; -xer_type_encoder_f MovementPhaseState_encode_xer; -per_type_decoder_f MovementPhaseState_decode_uper; -per_type_encoder_f MovementPhaseState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementPhaseState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h deleted file mode 100644 index 66ae7786e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MovementState_H_ -#define _MovementState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "SignalGroupID.h" -#include "MovementEventList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ManeuverAssistList; -struct Reg_MovementState; - -/* MovementState */ -typedef struct MovementState { - DescriptiveName_t *movementName /* OPTIONAL */; - SignalGroupID_t signalGroup; - MovementEventList_t state_time_speed; - struct ManeuverAssistList *maneuverAssistList /* OPTIONAL */; - struct Reg_MovementState *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementState; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ManeuverAssistList.h" -#include "RegionalMovementState.h" - -#endif /* _MovementState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h deleted file mode 100644 index e85e93587..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MsgCRC_H_ -#define _MsgCRC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MsgCRC */ -typedef OCTET_STRING_t MsgCRC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; -asn_struct_free_f MsgCRC_free; -asn_struct_print_f MsgCRC_print; -asn_constr_check_f MsgCRC_constraint; -ber_type_decoder_f MsgCRC_decode_ber; -der_type_encoder_f MsgCRC_encode_der; -xer_type_decoder_f MsgCRC_decode_xer; -xer_type_encoder_f MsgCRC_encode_xer; -per_type_decoder_f MsgCRC_decode_uper; -per_type_encoder_f MsgCRC_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MsgCRC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h deleted file mode 100644 index 3ac87acad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MsgCount_H_ -#define _MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MsgCount */ -typedef long MsgCount_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MsgCount; -asn_struct_free_f MsgCount_free; -asn_struct_print_f MsgCount_print; -asn_constr_check_f MsgCount_constraint; -ber_type_decoder_f MsgCount_decode_ber; -der_type_encoder_f MsgCount_encode_der; -xer_type_decoder_f MsgCount_decode_xer; -xer_type_encoder_f MsgCount_encode_xer; -per_type_decoder_f MsgCount_decode_uper; -per_type_encoder_f MsgCount_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h deleted file mode 100644 index ce7de231c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MultiVehicleResponse_H_ -#define _MultiVehicleResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MultiVehicleResponse { - MultiVehicleResponse_unavailable = 0, - MultiVehicleResponse_singleVehicle = 1, - MultiVehicleResponse_multiVehicle = 2, - MultiVehicleResponse_reserved = 3 -} e_MultiVehicleResponse; - -/* MultiVehicleResponse */ -typedef long MultiVehicleResponse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; -asn_struct_free_f MultiVehicleResponse_free; -asn_struct_print_f MultiVehicleResponse_print; -asn_constr_check_f MultiVehicleResponse_constraint; -ber_type_decoder_f MultiVehicleResponse_decode_ber; -der_type_encoder_f MultiVehicleResponse_encode_der; -xer_type_decoder_f MultiVehicleResponse_decode_xer; -xer_type_encoder_f MultiVehicleResponse_encode_xer; -per_type_decoder_f MultiVehicleResponse_decode_uper; -per_type_encoder_f MultiVehicleResponse_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MultiVehicleResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h deleted file mode 100644 index 83dda7819..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NMEA_Corrections_H_ -#define _NMEA_Corrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "NMEA-Revision.h" -#include "NMEA-MsgType.h" -#include "NativeInteger.h" -#include "NMEA-Payload.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-Corrections */ -typedef struct NMEA_Corrections { - DSRCmsgID_t msgID; - NMEA_Revision_t rev; - NMEA_MsgType_t msg; - long wdCount; - NMEA_Payload_t payload; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NMEA_Corrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Corrections; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Corrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h deleted file mode 100644 index a90c505c0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NMEA_MsgType_H_ -#define _NMEA_MsgType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-MsgType */ -typedef long NMEA_MsgType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; -asn_struct_free_f NMEA_MsgType_free; -asn_struct_print_f NMEA_MsgType_print; -asn_constr_check_f NMEA_MsgType_constraint; -ber_type_decoder_f NMEA_MsgType_decode_ber; -der_type_encoder_f NMEA_MsgType_encode_der; -xer_type_decoder_f NMEA_MsgType_decode_xer; -xer_type_encoder_f NMEA_MsgType_encode_xer; -per_type_decoder_f NMEA_MsgType_decode_uper; -per_type_encoder_f NMEA_MsgType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_MsgType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h deleted file mode 100644 index 09c47f519..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NMEA_Payload_H_ -#define _NMEA_Payload_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-Payload */ -typedef OCTET_STRING_t NMEA_Payload_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; -asn_struct_free_f NMEA_Payload_free; -asn_struct_print_f NMEA_Payload_print; -asn_constr_check_f NMEA_Payload_constraint; -ber_type_decoder_f NMEA_Payload_decode_ber; -der_type_encoder_f NMEA_Payload_encode_der; -xer_type_decoder_f NMEA_Payload_decode_xer; -xer_type_encoder_f NMEA_Payload_encode_xer; -per_type_decoder_f NMEA_Payload_decode_uper; -per_type_encoder_f NMEA_Payload_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Payload_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h deleted file mode 100644 index b9703d8dc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NMEA_Revision_H_ -#define _NMEA_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NMEA_Revision { - NMEA_Revision_unknown = 0, - NMEA_Revision_reserved = 1, - NMEA_Revision_rev1 = 10, - NMEA_Revision_rev2 = 20, - NMEA_Revision_rev3 = 30, - NMEA_Revision_rev4 = 40, - NMEA_Revision_rev5 = 50 - /* - * Enumeration is extensible - */ -} e_NMEA_Revision; - -/* NMEA-Revision */ -typedef long NMEA_Revision_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; -asn_struct_free_f NMEA_Revision_free; -asn_struct_print_f NMEA_Revision_print; -asn_constr_check_f NMEA_Revision_constraint; -ber_type_decoder_f NMEA_Revision_decode_ber; -der_type_encoder_f NMEA_Revision_encode_der; -xer_type_decoder_f NMEA_Revision_decode_xer; -xer_type_encoder_f NMEA_Revision_encode_xer; -per_type_decoder_f NMEA_Revision_decode_uper; -per_type_encoder_f NMEA_Revision_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h deleted file mode 100644 index 01d3e616a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NTCIPVehicleclass_H_ -#define _NTCIPVehicleclass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NTCIPVehicleclass */ -typedef OCTET_STRING_t NTCIPVehicleclass_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NTCIPVehicleclass; -asn_struct_free_f NTCIPVehicleclass_free; -asn_struct_print_f NTCIPVehicleclass_print; -asn_constr_check_f NTCIPVehicleclass_constraint; -ber_type_decoder_f NTCIPVehicleclass_decode_ber; -der_type_encoder_f NTCIPVehicleclass_encode_der; -xer_type_decoder_f NTCIPVehicleclass_decode_xer; -xer_type_encoder_f NTCIPVehicleclass_encode_xer; -per_type_decoder_f NTCIPVehicleclass_decode_uper; -per_type_encoder_f NTCIPVehicleclass_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NTCIPVehicleclass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h deleted file mode 100644 index 4006594b6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h +++ /dev/null @@ -1,32 +0,0 @@ -/*- - * Copyright (c) 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard ENUMERATED in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeEnumerated_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeEnumerated_H_ -#define _NativeEnumerated_H_ - -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; - -xer_type_encoder_f NativeEnumerated_encode_xer; -per_type_decoder_f NativeEnumerated_decode_uper; -per_type_encoder_f NativeEnumerated_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h deleted file mode 100644 index fb8ebec3a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h +++ /dev/null @@ -1,37 +0,0 @@ -/*- - * Copyright (c) 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard INTEGER in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeInteger_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeInteger_H_ -#define _NativeInteger_H_ - -#include "asn_application.h" -#include "INTEGER.h" - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; - -asn_struct_free_f NativeInteger_free; -asn_struct_print_f NativeInteger_print; -ber_type_decoder_f NativeInteger_decode_ber; -der_type_encoder_f NativeInteger_encode_der; -xer_type_decoder_f NativeInteger_decode_xer; -xer_type_encoder_f NativeInteger_encode_xer; -per_type_decoder_f NativeInteger_decode_uper; -per_type_encoder_f NativeInteger_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h deleted file mode 100644 index d9958286b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_LLdms_48b_H_ -#define _Node_LLdms_48b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS.h" -#include "LatitudeDMS.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-48b */ -typedef struct Node_LLdms_48b { - LongitudeDMS_t lon; - LatitudeDMS_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_48b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_48b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h deleted file mode 100644 index 6eb6d17b2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_LLdms_80b_H_ -#define _Node_LLdms_80b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS2.h" -#include "LatitudeDMS2.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-80b */ -typedef struct Node_LLdms_80b { - LongitudeDMS2_t lon; - LatitudeDMS2_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_80b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_80b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h deleted file mode 100644 index 27d53edb6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_LLmD_64b_H_ -#define _Node_LLmD_64b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLmD-64b */ -typedef struct Node_LLmD_64b { - Longitude_t lon; - Latitude_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLmD_64b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLmD_64b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h deleted file mode 100644 index 8397b16aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_20b_H_ -#define _Node_XY_20b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-20b */ -typedef struct Node_XY_20b { - Offset_B10_t x; - Offset_B10_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_20b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_20b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h deleted file mode 100644 index aca84c715..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_22b_H_ -#define _Node_XY_22b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B11.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-22b */ -typedef struct Node_XY_22b { - Offset_B11_t x; - Offset_B11_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_22b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_22b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h deleted file mode 100644 index ecf7a1c0d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_24b_H_ -#define _Node_XY_24b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B12.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-24b */ -typedef struct Node_XY_24b { - Offset_B12_t x; - Offset_B12_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_24b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_24b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h deleted file mode 100644 index 664c4d4dc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_26b_H_ -#define _Node_XY_26b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B13.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-26b */ -typedef struct Node_XY_26b { - Offset_B13_t x; - Offset_B13_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_26b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_26b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h deleted file mode 100644 index 3474b4c68..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_28b_H_ -#define _Node_XY_28b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B14.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-28b */ -typedef struct Node_XY_28b { - Offset_B14_t x; - Offset_B14_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_28b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_28b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h deleted file mode 100644 index 8343cd0a4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_XY_32b_H_ -#define _Node_XY_32b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-32b */ -typedef struct Node_XY_32b { - Offset_B16_t x; - Offset_B16_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_32b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_32b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h deleted file mode 100644 index 59343bc42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Node_H_ -#define _Node_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPoint.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeSet; - -/* Node */ -typedef struct Node { - NodeOffsetPoint_t delta; - struct NodeAttributeSet *attributes /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeSet.h" - -#endif /* _Node_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h deleted file mode 100644 index 5a3163ef9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeAttribute_H_ -#define _NodeAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeAttribute { - NodeAttribute_reserved = 0, - NodeAttribute_stopLine = 1, - NodeAttribute_roundedCapStyleA = 2, - NodeAttribute_roundedCapStyleB = 3, - NodeAttribute_mergePoint = 4, - NodeAttribute_divergePoint = 5, - NodeAttribute_downstreamStopLine = 6, - NodeAttribute_downstreamStartNode = 7, - NodeAttribute_closedToTraffic = 8, - NodeAttribute_safeIsland = 9, - NodeAttribute_curbPresentAtStepOff = 10, - NodeAttribute_hydrantPresent = 11 - /* - * Enumeration is extensible - */ -} e_NodeAttribute; - -/* NodeAttribute */ -typedef long NodeAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttribute; -asn_struct_free_f NodeAttribute_free; -asn_struct_print_f NodeAttribute_print; -asn_constr_check_f NodeAttribute_constraint; -ber_type_decoder_f NodeAttribute_decode_ber; -der_type_encoder_f NodeAttribute_encode_der; -xer_type_decoder_f NodeAttribute_decode_xer; -xer_type_encoder_f NodeAttribute_encode_xer; -per_type_decoder_f NodeAttribute_decode_uper; -per_type_encoder_f NodeAttribute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h deleted file mode 100644 index 91b35111e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeAttributeList_H_ -#define _NodeAttributeList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeAttribute.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeAttributeList */ -typedef struct NodeAttributeList { - A_SEQUENCE_OF(NodeAttribute_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeList; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h deleted file mode 100644 index 9557a78a9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeAttributeSet_H_ -#define _NodeAttributeSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeList; -struct SegmentAttributeList; -struct LaneDataAttributeList; -struct RegionalNodeAttributeList; - -/* NodeAttributeSet */ -typedef struct NodeAttributeSet { - struct NodeAttributeList *localNode /* OPTIONAL */; - struct SegmentAttributeList *disabled /* OPTIONAL */; - struct SegmentAttributeList *enabled /* OPTIONAL */; - struct LaneDataAttributeList *data /* OPTIONAL */; - struct RegionalNodeAttributeList *regional /* OPTIONAL */; - Offset_B10_t *dWidth /* OPTIONAL */; - Offset_B10_t *dElevation /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSet; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeList.h" -#include "SegmentAttributeList.h" -#include "LaneDataAttributeList.h" -#include "RegionalNodeAttributeList.h" - -#endif /* _NodeAttributeSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h deleted file mode 100644 index dd500bd16..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeList_H_ -#define _NodeList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offsets.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeList */ -typedef struct NodeList { - A_SEQUENCE_OF(Offsets_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeList; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h deleted file mode 100644 index c40de7c73..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeList2_H_ -#define _NodeList2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeSet.h" -#include "ComputedLane.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeList2_PR { - NodeList2_PR_NOTHING, /* No components present */ - NodeList2_PR_nodes, - NodeList2_PR_computed, - /* Extensions may appear below */ - -} NodeList2_PR; - -/* NodeList2 */ -typedef struct NodeList2 { - NodeList2_PR present; - union NodeList2_u { - NodeSet_t nodes; - ComputedLane_t computed; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeList2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeList2; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeList2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h deleted file mode 100644 index c0ee31f14..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeOffsetPoint_H_ -#define _NodeOffsetPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-XY-20b.h" -#include "Node-XY-22b.h" -#include "Node-XY-24b.h" -#include "Node-XY-26b.h" -#include "Node-XY-28b.h" -#include "Node-XY-32b.h" -#include "Node-LLmD-64b.h" -#include "RegionalNodeOffsetPoint.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPoint_PR { - NodeOffsetPoint_PR_NOTHING, /* No components present */ - NodeOffsetPoint_PR_node_XY1, - NodeOffsetPoint_PR_node_XY2, - NodeOffsetPoint_PR_node_XY3, - NodeOffsetPoint_PR_node_XY4, - NodeOffsetPoint_PR_node_XY5, - NodeOffsetPoint_PR_node_XY6, - NodeOffsetPoint_PR_node_LatLon, - NodeOffsetPoint_PR_node_Regional -} NodeOffsetPoint_PR; - -/* NodeOffsetPoint */ -typedef struct NodeOffsetPoint { - NodeOffsetPoint_PR present; - union NodeOffsetPoint_u { - Node_XY_20b_t node_XY1; - Node_XY_22b_t node_XY2; - Node_XY_24b_t node_XY3; - Node_XY_26b_t node_XY4; - Node_XY_28b_t node_XY5; - Node_XY_32b_t node_XY6; - Node_LLmD_64b_t node_LatLon; - RegionalNodeOffsetPoint_t node_Regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPoint; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h deleted file mode 100644 index 1a8f4fd66..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _NodeSet_H_ -#define _NodeSet_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 Node; - -/* NodeSet */ -typedef struct NodeSet { - A_SEQUENCE_OF(struct Node) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeSet; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Node.h" - -#endif /* _NodeSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h deleted file mode 100644 index d66d6084b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _NumberOfParticipantsInCluster_H_ -#define _NumberOfParticipantsInCluster_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NumberOfParticipantsInCluster { - NumberOfParticipantsInCluster_unavailable = 0, - NumberOfParticipantsInCluster_small = 1, - NumberOfParticipantsInCluster_medium = 2, - NumberOfParticipantsInCluster_large = 3 - /* - * Enumeration is extensible - */ -} e_NumberOfParticipantsInCluster; - -/* NumberOfParticipantsInCluster */ -typedef long NumberOfParticipantsInCluster_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; -asn_struct_free_f NumberOfParticipantsInCluster_free; -asn_struct_print_f NumberOfParticipantsInCluster_print; -asn_constr_check_f NumberOfParticipantsInCluster_constraint; -ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; -der_type_encoder_f NumberOfParticipantsInCluster_encode_der; -xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; -xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; -per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; -per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NumberOfParticipantsInCluster_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h deleted file mode 100644 index ab5561783..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h +++ /dev/null @@ -1,86 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _OCTET_STRING_H_ -#define _OCTET_STRING_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct OCTET_STRING { - uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ - int size; /* Size of the buffer */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} OCTET_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; - -asn_struct_free_f OCTET_STRING_free; -asn_struct_print_f OCTET_STRING_print; -asn_struct_print_f OCTET_STRING_print_utf8; -ber_type_decoder_f OCTET_STRING_decode_ber; -der_type_encoder_f OCTET_STRING_encode_der; -xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ -xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ -xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ -xer_type_encoder_f OCTET_STRING_encode_xer; -xer_type_encoder_f OCTET_STRING_encode_xer_utf8; -per_type_decoder_f OCTET_STRING_decode_uper; -per_type_encoder_f OCTET_STRING_encode_uper; - -/****************************** - * Handy conversion routines. * - ******************************/ - -/* - * This function clears the previous value of the OCTET STRING (if any) - * and then allocates a new memory with the specified content (str/size). - * If size = -1, the size of the original string will be determined - * using strlen(str). - * If str equals to NULL, the function will silently clear the - * current contents of the OCTET STRING. - * Returns 0 if it was possible to perform operation, -1 otherwise. - */ -int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); - -/* Handy conversion from the C string into the OCTET STRING. */ -#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) - -/* - * Allocate and fill the new OCTET STRING and return a pointer to the newly - * allocated object. NULL is permitted in str: the function will just allocate - * empty OCTET STRING. - */ -OCTET_STRING_t *OCTET_STRING_new_fromBuf(asn_TYPE_descriptor_t *td, - const char *str, int size); - -/**************************** - * Internally useful stuff. * - ****************************/ - -typedef struct asn_OCTET_STRING_specifics_s { - /* - * Target structure description. - */ - int struct_size; /* Size of the structure */ - int ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - enum asn_OS_Subvariant { - ASN_OSUBV_ANY, /* The open type (ANY) */ - ASN_OSUBV_BIT, /* BIT STRING */ - ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ - ASN_OSUBV_U16, /* 16-bit character (BMPString) */ - ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ - } subvariant; -} asn_OCTET_STRING_specifics_t; - -#ifdef __cplusplus -} -#endif - -#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h deleted file mode 100644 index 13d7904d3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ObjectCount_H_ -#define _ObjectCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObjectCount */ -typedef long ObjectCount_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; -asn_struct_free_f ObjectCount_free; -asn_struct_print_f ObjectCount_print; -asn_constr_check_f ObjectCount_constraint; -ber_type_decoder_f ObjectCount_decode_ber; -der_type_encoder_f ObjectCount_encode_der; -xer_type_decoder_f ObjectCount_decode_xer; -xer_type_encoder_f ObjectCount_encode_xer; -per_type_decoder_f ObjectCount_decode_uper; -per_type_encoder_f ObjectCount_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h deleted file mode 100644 index 76f4e989b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ObstacleDirection_H_ -#define _ObstacleDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Heading.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDirection */ -typedef Heading_t ObstacleDirection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; -asn_struct_free_f ObstacleDirection_free; -asn_struct_print_f ObstacleDirection_print; -asn_constr_check_f ObstacleDirection_constraint; -ber_type_decoder_f ObstacleDirection_decode_ber; -der_type_encoder_f ObstacleDirection_encode_der; -xer_type_decoder_f ObstacleDirection_decode_xer; -xer_type_encoder_f ObstacleDirection_encode_xer; -per_type_decoder_f ObstacleDirection_decode_uper; -per_type_encoder_f ObstacleDirection_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h deleted file mode 100644 index 38f5022c0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ObstacleDistance_H_ -#define _ObstacleDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDistance */ -typedef long ObstacleDistance_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; -asn_struct_free_f ObstacleDistance_free; -asn_struct_print_f ObstacleDistance_print; -asn_constr_check_f ObstacleDistance_constraint; -ber_type_decoder_f ObstacleDistance_decode_ber; -der_type_encoder_f ObstacleDistance_encode_der; -xer_type_decoder_f ObstacleDistance_decode_xer; -xer_type_encoder_f ObstacleDistance_encode_xer; -per_type_decoder_f ObstacleDistance_decode_uper; -per_type_encoder_f ObstacleDistance_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h deleted file mode 100644 index 949732d97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B10_H_ -#define _Offset_B10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B10 */ -typedef long Offset_B10_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; -asn_struct_free_f Offset_B10_free; -asn_struct_print_f Offset_B10_print; -asn_constr_check_f Offset_B10_constraint; -ber_type_decoder_f Offset_B10_decode_ber; -der_type_encoder_f Offset_B10_encode_der; -xer_type_decoder_f Offset_B10_decode_xer; -xer_type_encoder_f Offset_B10_encode_xer; -per_type_decoder_f Offset_B10_decode_uper; -per_type_encoder_f Offset_B10_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h deleted file mode 100644 index 127f88f7f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B11_H_ -#define _Offset_B11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B11 */ -typedef long Offset_B11_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; -asn_struct_free_f Offset_B11_free; -asn_struct_print_f Offset_B11_print; -asn_constr_check_f Offset_B11_constraint; -ber_type_decoder_f Offset_B11_decode_ber; -der_type_encoder_f Offset_B11_encode_der; -xer_type_decoder_f Offset_B11_decode_xer; -xer_type_encoder_f Offset_B11_encode_xer; -per_type_decoder_f Offset_B11_decode_uper; -per_type_encoder_f Offset_B11_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h deleted file mode 100644 index a46f6fc94..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B12_H_ -#define _Offset_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B12 */ -typedef long Offset_B12_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; -asn_struct_free_f Offset_B12_free; -asn_struct_print_f Offset_B12_print; -asn_constr_check_f Offset_B12_constraint; -ber_type_decoder_f Offset_B12_decode_ber; -der_type_encoder_f Offset_B12_encode_der; -xer_type_decoder_f Offset_B12_decode_xer; -xer_type_encoder_f Offset_B12_encode_xer; -per_type_decoder_f Offset_B12_decode_uper; -per_type_encoder_f Offset_B12_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h deleted file mode 100644 index 7be2f9f90..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B13_H_ -#define _Offset_B13_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B13 */ -typedef long Offset_B13_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; -asn_struct_free_f Offset_B13_free; -asn_struct_print_f Offset_B13_print; -asn_constr_check_f Offset_B13_constraint; -ber_type_decoder_f Offset_B13_decode_ber; -der_type_encoder_f Offset_B13_encode_der; -xer_type_decoder_f Offset_B13_decode_xer; -xer_type_encoder_f Offset_B13_encode_xer; -per_type_decoder_f Offset_B13_decode_uper; -per_type_encoder_f Offset_B13_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B13_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h deleted file mode 100644 index b19286d2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B14_H_ -#define _Offset_B14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B14 */ -typedef long Offset_B14_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; -asn_struct_free_f Offset_B14_free; -asn_struct_print_f Offset_B14_print; -asn_constr_check_f Offset_B14_constraint; -ber_type_decoder_f Offset_B14_decode_ber; -der_type_encoder_f Offset_B14_encode_der; -xer_type_decoder_f Offset_B14_decode_xer; -xer_type_encoder_f Offset_B14_encode_xer; -per_type_decoder_f Offset_B14_decode_uper; -per_type_encoder_f Offset_B14_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h deleted file mode 100644 index 7d6de9cd8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offset_B16_H_ -#define _Offset_B16_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B16 */ -typedef long Offset_B16_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; -asn_struct_free_f Offset_B16_free; -asn_struct_print_f Offset_B16_print; -asn_constr_check_f Offset_B16_constraint; -ber_type_decoder_f Offset_B16_decode_ber; -der_type_encoder_f Offset_B16_encode_der; -xer_type_decoder_f Offset_B16_decode_xer; -xer_type_encoder_f Offset_B16_encode_xer; -per_type_decoder_f Offset_B16_decode_uper; -per_type_encoder_f Offset_B16_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B16_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h deleted file mode 100644 index a806bd1ab..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Offsets_H_ -#define _Offsets_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offsets */ -typedef OCTET_STRING_t Offsets_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Offsets; -asn_struct_free_f Offsets_free; -asn_struct_print_f Offsets_print; -asn_constr_check_f Offsets_constraint; -ber_type_decoder_f Offsets_decode_ber; -der_type_encoder_f Offsets_encode_der; -xer_type_decoder_f Offsets_decode_xer; -xer_type_encoder_f Offsets_encode_xer; -per_type_decoder_f Offsets_decode_uper; -per_type_encoder_f Offsets_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offsets_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h deleted file mode 100644 index 03c9853cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _OverlayLaneList_H_ -#define _OverlayLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OverlayLaneList */ -typedef struct OverlayLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OverlayLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; - -#ifdef __cplusplus -} -#endif - -#endif /* _OverlayLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h deleted file mode 100644 index 449a85d0f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistory_H_ -#define _PathHistory_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GPSstatus.h" -#include "Count.h" -#include "OCTET_STRING.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PathHistory__crumbData_PR { - PathHistory__crumbData_PR_NOTHING, /* No components present */ - PathHistory__crumbData_PR_pathHistoryPointSets_01, - PathHistory__crumbData_PR_pathHistoryPointSets_02, - PathHistory__crumbData_PR_pathHistoryPointSets_03, - PathHistory__crumbData_PR_pathHistoryPointSets_04, - PathHistory__crumbData_PR_pathHistoryPointSets_05, - PathHistory__crumbData_PR_pathHistoryPointSets_06, - PathHistory__crumbData_PR_pathHistoryPointSets_07, - PathHistory__crumbData_PR_pathHistoryPointSets_08, - PathHistory__crumbData_PR_pathHistoryPointSets_09, - PathHistory__crumbData_PR_pathHistoryPointSets_10 -} PathHistory__crumbData_PR; - -/* Forward declarations */ -struct FullPositionVector; -struct PathHistoryPointType_01; - -/* PathHistory */ -typedef struct PathHistory { - struct FullPositionVector *initialPosition /* OPTIONAL */; - GPSstatus_t *currGPSstatus /* OPTIONAL */; - Count_t *itemCnt /* OPTIONAL */; - struct PathHistory__crumbData { - PathHistory__crumbData_PR present; - union PathHistory__crumbData_u { - struct PathHistory__crumbData__pathHistoryPointSets_01 { - A_SEQUENCE_OF(struct PathHistoryPointType_01) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } pathHistoryPointSets_01; - OCTET_STRING_t pathHistoryPointSets_02; - OCTET_STRING_t pathHistoryPointSets_03; - OCTET_STRING_t pathHistoryPointSets_04; - OCTET_STRING_t pathHistoryPointSets_05; - OCTET_STRING_t pathHistoryPointSets_06; - OCTET_STRING_t pathHistoryPointSets_07; - OCTET_STRING_t pathHistoryPointSets_08; - OCTET_STRING_t pathHistoryPointSets_09; - OCTET_STRING_t pathHistoryPointSets_10; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } crumbData; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistory_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistory; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" -#include "PathHistoryPointType-01.h" - -#endif /* _PathHistory_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h deleted file mode 100644 index 1a2e7487a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_01_H_ -#define _PathHistoryPointType_01_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "PositionalAccuracy.h" -#include "TransmissionAndSpeed.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-01 */ -typedef struct PathHistoryPointType_01 { - long latOffset; - long longOffset; - long *elevationOffset /* OPTIONAL */; - long *timeOffset /* OPTIONAL */; - PositionalAccuracy_t *posAccuracy /* OPTIONAL */; - long *heading /* OPTIONAL */; - TransmissionAndSpeed_t *speed /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistoryPointType_01_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_01; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_01_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h deleted file mode 100644 index f4104f6df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_02_H_ -#define _PathHistoryPointType_02_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-02 */ -typedef OCTET_STRING_t PathHistoryPointType_02_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_02; -asn_struct_free_f PathHistoryPointType_02_free; -asn_struct_print_f PathHistoryPointType_02_print; -asn_constr_check_f PathHistoryPointType_02_constraint; -ber_type_decoder_f PathHistoryPointType_02_decode_ber; -der_type_encoder_f PathHistoryPointType_02_encode_der; -xer_type_decoder_f PathHistoryPointType_02_decode_xer; -xer_type_encoder_f PathHistoryPointType_02_encode_xer; -per_type_decoder_f PathHistoryPointType_02_decode_uper; -per_type_encoder_f PathHistoryPointType_02_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_02_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h deleted file mode 100644 index 91e80170d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_03_H_ -#define _PathHistoryPointType_03_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-03 */ -typedef OCTET_STRING_t PathHistoryPointType_03_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_03; -asn_struct_free_f PathHistoryPointType_03_free; -asn_struct_print_f PathHistoryPointType_03_print; -asn_constr_check_f PathHistoryPointType_03_constraint; -ber_type_decoder_f PathHistoryPointType_03_decode_ber; -der_type_encoder_f PathHistoryPointType_03_encode_der; -xer_type_decoder_f PathHistoryPointType_03_decode_xer; -xer_type_encoder_f PathHistoryPointType_03_encode_xer; -per_type_decoder_f PathHistoryPointType_03_decode_uper; -per_type_encoder_f PathHistoryPointType_03_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_03_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h deleted file mode 100644 index 910d0001c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_04_H_ -#define _PathHistoryPointType_04_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-04 */ -typedef OCTET_STRING_t PathHistoryPointType_04_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_04; -asn_struct_free_f PathHistoryPointType_04_free; -asn_struct_print_f PathHistoryPointType_04_print; -asn_constr_check_f PathHistoryPointType_04_constraint; -ber_type_decoder_f PathHistoryPointType_04_decode_ber; -der_type_encoder_f PathHistoryPointType_04_encode_der; -xer_type_decoder_f PathHistoryPointType_04_decode_xer; -xer_type_encoder_f PathHistoryPointType_04_encode_xer; -per_type_decoder_f PathHistoryPointType_04_decode_uper; -per_type_encoder_f PathHistoryPointType_04_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_04_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h deleted file mode 100644 index 0813573f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_05_H_ -#define _PathHistoryPointType_05_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-05 */ -typedef OCTET_STRING_t PathHistoryPointType_05_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_05; -asn_struct_free_f PathHistoryPointType_05_free; -asn_struct_print_f PathHistoryPointType_05_print; -asn_constr_check_f PathHistoryPointType_05_constraint; -ber_type_decoder_f PathHistoryPointType_05_decode_ber; -der_type_encoder_f PathHistoryPointType_05_encode_der; -xer_type_decoder_f PathHistoryPointType_05_decode_xer; -xer_type_encoder_f PathHistoryPointType_05_encode_xer; -per_type_decoder_f PathHistoryPointType_05_decode_uper; -per_type_encoder_f PathHistoryPointType_05_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_05_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h deleted file mode 100644 index d170ab963..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_06_H_ -#define _PathHistoryPointType_06_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-06 */ -typedef OCTET_STRING_t PathHistoryPointType_06_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_06; -asn_struct_free_f PathHistoryPointType_06_free; -asn_struct_print_f PathHistoryPointType_06_print; -asn_constr_check_f PathHistoryPointType_06_constraint; -ber_type_decoder_f PathHistoryPointType_06_decode_ber; -der_type_encoder_f PathHistoryPointType_06_encode_der; -xer_type_decoder_f PathHistoryPointType_06_decode_xer; -xer_type_encoder_f PathHistoryPointType_06_encode_xer; -per_type_decoder_f PathHistoryPointType_06_decode_uper; -per_type_encoder_f PathHistoryPointType_06_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_06_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h deleted file mode 100644 index c24b8f679..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_07_H_ -#define _PathHistoryPointType_07_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-07 */ -typedef OCTET_STRING_t PathHistoryPointType_07_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_07; -asn_struct_free_f PathHistoryPointType_07_free; -asn_struct_print_f PathHistoryPointType_07_print; -asn_constr_check_f PathHistoryPointType_07_constraint; -ber_type_decoder_f PathHistoryPointType_07_decode_ber; -der_type_encoder_f PathHistoryPointType_07_encode_der; -xer_type_decoder_f PathHistoryPointType_07_decode_xer; -xer_type_encoder_f PathHistoryPointType_07_encode_xer; -per_type_decoder_f PathHistoryPointType_07_decode_uper; -per_type_encoder_f PathHistoryPointType_07_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_07_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h deleted file mode 100644 index dd4e8cb41..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_08_H_ -#define _PathHistoryPointType_08_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-08 */ -typedef OCTET_STRING_t PathHistoryPointType_08_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_08; -asn_struct_free_f PathHistoryPointType_08_free; -asn_struct_print_f PathHistoryPointType_08_print; -asn_constr_check_f PathHistoryPointType_08_constraint; -ber_type_decoder_f PathHistoryPointType_08_decode_ber; -der_type_encoder_f PathHistoryPointType_08_encode_der; -xer_type_decoder_f PathHistoryPointType_08_decode_xer; -xer_type_encoder_f PathHistoryPointType_08_encode_xer; -per_type_decoder_f PathHistoryPointType_08_decode_uper; -per_type_encoder_f PathHistoryPointType_08_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_08_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h deleted file mode 100644 index b3ed1128c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_09_H_ -#define _PathHistoryPointType_09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-09 */ -typedef OCTET_STRING_t PathHistoryPointType_09_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_09; -asn_struct_free_f PathHistoryPointType_09_free; -asn_struct_print_f PathHistoryPointType_09_print; -asn_constr_check_f PathHistoryPointType_09_constraint; -ber_type_decoder_f PathHistoryPointType_09_decode_ber; -der_type_encoder_f PathHistoryPointType_09_encode_der; -xer_type_decoder_f PathHistoryPointType_09_decode_xer; -xer_type_encoder_f PathHistoryPointType_09_encode_xer; -per_type_decoder_f PathHistoryPointType_09_decode_uper; -per_type_encoder_f PathHistoryPointType_09_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h deleted file mode 100644 index b9284aff4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathHistoryPointType_10_H_ -#define _PathHistoryPointType_10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathHistoryPointType-10 */ -typedef OCTET_STRING_t PathHistoryPointType_10_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_10; -asn_struct_free_f PathHistoryPointType_10_free; -asn_struct_print_f PathHistoryPointType_10_print; -asn_constr_check_f PathHistoryPointType_10_constraint; -ber_type_decoder_f PathHistoryPointType_10_decode_ber; -der_type_encoder_f PathHistoryPointType_10_encode_der; -xer_type_decoder_f PathHistoryPointType_10_decode_xer; -xer_type_encoder_f PathHistoryPointType_10_encode_xer; -per_type_decoder_f PathHistoryPointType_10_decode_uper; -per_type_encoder_f PathHistoryPointType_10_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathHistoryPointType_10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h deleted file mode 100644 index b32662c5b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PathPrediction_H_ -#define _PathPrediction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathPrediction */ -typedef struct PathPrediction { - long radiusOfCurve; - long confidence; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathPrediction_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathPrediction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h deleted file mode 100644 index a4ecef252..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Payload_H_ -#define _Payload_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Payload */ -typedef OCTET_STRING_t Payload_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Payload; -asn_struct_free_f Payload_free; -asn_struct_print_f Payload_print; -asn_constr_check_f Payload_constraint; -ber_type_decoder_f Payload_decode_ber; -der_type_encoder_f Payload_encode_der; -xer_type_decoder_f Payload_decode_xer; -xer_type_encoder_f Payload_encode_xer; -per_type_decoder_f Payload_decode_uper; -per_type_encoder_f Payload_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Payload_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h deleted file mode 100644 index 43e693039..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PayloadData_H_ -#define _PayloadData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PayloadData */ -typedef OCTET_STRING_t PayloadData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PayloadData; -asn_struct_free_f PayloadData_free; -asn_struct_print_f PayloadData_print; -asn_constr_check_f PayloadData_constraint; -ber_type_decoder_f PayloadData_decode_ber; -der_type_encoder_f PayloadData_encode_der; -xer_type_decoder_f PayloadData_decode_xer; -xer_type_encoder_f PayloadData_encode_xer; -per_type_decoder_f PayloadData_decode_uper; -per_type_encoder_f PayloadData_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PayloadData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h deleted file mode 100644 index 0002b4d0c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PedestrianBicycleDetect_H_ -#define _PedestrianBicycleDetect_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PedestrianBicycleDetect */ -typedef BOOLEAN_t PedestrianBicycleDetect_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; -asn_struct_free_f PedestrianBicycleDetect_free; -asn_struct_print_f PedestrianBicycleDetect_print; -asn_constr_check_f PedestrianBicycleDetect_constraint; -ber_type_decoder_f PedestrianBicycleDetect_decode_ber; -der_type_encoder_f PedestrianBicycleDetect_encode_der; -xer_type_decoder_f PedestrianBicycleDetect_decode_xer; -xer_type_encoder_f PedestrianBicycleDetect_encode_xer; -per_type_decoder_f PedestrianBicycleDetect_decode_uper; -per_type_encoder_f PedestrianBicycleDetect_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PedestrianBicycleDetect_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h deleted file mode 100644 index f75bc6319..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalAssistive_H_ -#define _PersonalAssistive_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalAssistive { - PersonalAssistive_unavailable = 0, - PersonalAssistive_otherType = 1, - PersonalAssistive_vision = 2, - PersonalAssistive_hearing = 3, - PersonalAssistive_movement = 4, - PersonalAssistive_cognition = 5 -} e_PersonalAssistive; - -/* PersonalAssistive */ -typedef BIT_STRING_t PersonalAssistive_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; -asn_struct_free_f PersonalAssistive_free; -asn_struct_print_f PersonalAssistive_print; -asn_constr_check_f PersonalAssistive_constraint; -ber_type_decoder_f PersonalAssistive_decode_ber; -der_type_encoder_f PersonalAssistive_encode_der; -xer_type_decoder_f PersonalAssistive_decode_xer; -xer_type_encoder_f PersonalAssistive_encode_xer; -per_type_decoder_f PersonalAssistive_decode_uper; -per_type_encoder_f PersonalAssistive_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalAssistive_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h deleted file mode 100644 index 10f948535..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalClusterRadius_H_ -#define _PersonalClusterRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalClusterRadius */ -typedef long PersonalClusterRadius_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; -asn_struct_free_f PersonalClusterRadius_free; -asn_struct_print_f PersonalClusterRadius_print; -asn_constr_check_f PersonalClusterRadius_constraint; -ber_type_decoder_f PersonalClusterRadius_decode_ber; -der_type_encoder_f PersonalClusterRadius_encode_der; -xer_type_decoder_f PersonalClusterRadius_decode_xer; -xer_type_encoder_f PersonalClusterRadius_encode_xer; -per_type_decoder_f PersonalClusterRadius_decode_uper; -per_type_encoder_f PersonalClusterRadius_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalClusterRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h deleted file mode 100644 index 530dfc396..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalCrossingInProgress_H_ -#define _PersonalCrossingInProgress_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingInProgress */ -typedef BOOLEAN_t PersonalCrossingInProgress_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; -asn_struct_free_f PersonalCrossingInProgress_free; -asn_struct_print_f PersonalCrossingInProgress_print; -asn_constr_check_f PersonalCrossingInProgress_constraint; -ber_type_decoder_f PersonalCrossingInProgress_decode_ber; -der_type_encoder_f PersonalCrossingInProgress_encode_der; -xer_type_decoder_f PersonalCrossingInProgress_decode_xer; -xer_type_encoder_f PersonalCrossingInProgress_encode_xer; -per_type_decoder_f PersonalCrossingInProgress_decode_uper; -per_type_encoder_f PersonalCrossingInProgress_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingInProgress_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h deleted file mode 100644 index 38fb3efcd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalCrossingRequest_H_ -#define _PersonalCrossingRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingRequest */ -typedef BOOLEAN_t PersonalCrossingRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; -asn_struct_free_f PersonalCrossingRequest_free; -asn_struct_print_f PersonalCrossingRequest_print; -asn_constr_check_f PersonalCrossingRequest_constraint; -ber_type_decoder_f PersonalCrossingRequest_decode_ber; -der_type_encoder_f PersonalCrossingRequest_encode_der; -xer_type_decoder_f PersonalCrossingRequest_decode_xer; -xer_type_encoder_f PersonalCrossingRequest_encode_xer; -per_type_decoder_f PersonalCrossingRequest_decode_uper; -per_type_encoder_f PersonalCrossingRequest_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h deleted file mode 100644 index 0aa4e2037..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalDeviceUsageState_H_ -#define _PersonalDeviceUsageState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUsageState { - PersonalDeviceUsageState_unavailable = 0, - PersonalDeviceUsageState_other = 1, - PersonalDeviceUsageState_idle = 2, - PersonalDeviceUsageState_listeningToAudio = 3, - PersonalDeviceUsageState_typing = 4, - PersonalDeviceUsageState_calling = 5, - PersonalDeviceUsageState_playingGames = 6, - PersonalDeviceUsageState_reading = 7, - PersonalDeviceUsageState_viewing = 8 -} e_PersonalDeviceUsageState; - -/* PersonalDeviceUsageState */ -typedef BIT_STRING_t PersonalDeviceUsageState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; -asn_struct_free_f PersonalDeviceUsageState_free; -asn_struct_print_f PersonalDeviceUsageState_print; -asn_constr_check_f PersonalDeviceUsageState_constraint; -ber_type_decoder_f PersonalDeviceUsageState_decode_ber; -der_type_encoder_f PersonalDeviceUsageState_encode_der; -xer_type_decoder_f PersonalDeviceUsageState_decode_xer; -xer_type_encoder_f PersonalDeviceUsageState_encode_xer; -per_type_decoder_f PersonalDeviceUsageState_decode_uper; -per_type_encoder_f PersonalDeviceUsageState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUsageState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h deleted file mode 100644 index fc85ae94a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalDeviceUserType_H_ -#define _PersonalDeviceUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUserType { - PersonalDeviceUserType_unavailable = 0, - PersonalDeviceUserType_aPEDESTRIAN = 1, - PersonalDeviceUserType_aPEDALCYCLIST = 2, - PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, - PersonalDeviceUserType_anANIMAL = 4 - /* - * Enumeration is extensible - */ -} e_PersonalDeviceUserType; - -/* PersonalDeviceUserType */ -typedef long PersonalDeviceUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; -asn_struct_free_f PersonalDeviceUserType_free; -asn_struct_print_f PersonalDeviceUserType_print; -asn_constr_check_f PersonalDeviceUserType_constraint; -ber_type_decoder_f PersonalDeviceUserType_decode_ber; -der_type_encoder_f PersonalDeviceUserType_encode_der; -xer_type_decoder_f PersonalDeviceUserType_decode_xer; -xer_type_encoder_f PersonalDeviceUserType_encode_xer; -per_type_decoder_f PersonalDeviceUserType_decode_uper; -per_type_encoder_f PersonalDeviceUserType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h deleted file mode 100644 index 1de817814..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#ifndef _PersonalMobilityMessage_H_ -#define _PersonalMobilityMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "UUIDType.h" -#include "RequestID.h" -#include "PersonalMobilityMessageStatusType.h" -#include "Position3D.h" -#include "PositionalAccuracy.h" -#include "ModeOfTransportType.h" -#include "EstimatedTimeType.h" -#include "DSRCEquippedType.h" -#include "VehicleDescriptionType.h" -#include "RegionalPersonalMobilityMessage.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DFullTime; -struct DestinationType; -struct MobilityNeedsList; - -/* PersonalMobilityMessage */ -typedef struct PersonalMobilityMessage { - UUIDType_t groupId; - RequestID_t requestId; - PersonalMobilityMessageStatusType_t status; - Position3D_t position; - PositionalAccuracy_t *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 */; - RegionalPersonalMobilityMessage_t regional; - - /* 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 - -#endif /* _PersonalMobilityMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h deleted file mode 100644 index 1cccb4935..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_cancel = 3, - PersonalMobilityMessageStatusType_arrival = 4, - PersonalMobilityMessageStatusType_completed = 5 -} e_PersonalMobilityMessageStatusType; - -/* PersonalMobilityMessageStatusType */ -typedef long PersonalMobilityMessageStatusType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessageStatusType; -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_r41/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h deleted file mode 100644 index 0d69ef537..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PersonalSafetyMessage_H_ -#define _PersonalSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PersonalDeviceUserType.h" -#include "DSecond.h" -#include "MsgCount.h" -#include "TemporaryID.h" -#include "Position3D.h" -#include "PositionalAccuracy.h" -#include "Velocity.h" -#include "Heading.h" -#include "AccelerationSet4Way.h" -#include "PersonalDeviceUsageState.h" -#include "PersonalCrossingRequest.h" -#include "PersonalCrossingInProgress.h" -#include "NumberOfParticipantsInCluster.h" -#include "PersonalClusterRadius.h" -#include "PublicSafetyEventResponderWorkerType.h" -#include "PublicSafetyAndRoadWorkerActivity.h" -#include "PublicSafetyDirectingTrafficSubType.h" -#include "PersonalAssistive.h" -#include "UserSizeAndBehaviour.h" -#include "Attachment.h" -#include "AttachmentRadius.h" -#include "AnimalType.h" -#include "RegionalPersonalSafetyMessage.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PathHistory; -struct PathPrediction; -struct PropelledInformation; - -/* PersonalSafetyMessage */ -typedef struct PersonalSafetyMessage { - PersonalDeviceUserType_t basicType; - DSecond_t secMark; - MsgCount_t msgCnt; - TemporaryID_t id; - Position3D_t position; - PositionalAccuracy_t accuracy; - Velocity_t speed; - Heading_t heading; - AccelerationSet4Way_t *accelSet /* OPTIONAL */; - struct PathHistory *pathHistory /* OPTIONAL */; - struct PathPrediction *pathPrediction /* OPTIONAL */; - struct PropelledInformation *propulsion /* OPTIONAL */; - PersonalDeviceUsageState_t *useState /* OPTIONAL */; - PersonalCrossingRequest_t *crossRequest /* OPTIONAL */; - PersonalCrossingInProgress_t *crossState /* OPTIONAL */; - NumberOfParticipantsInCluster_t *clusterSize /* OPTIONAL */; - PersonalClusterRadius_t *clusterRadius /* OPTIONAL */; - PublicSafetyEventResponderWorkerType_t *eventResponderType /* OPTIONAL */; - PublicSafetyAndRoadWorkerActivity_t *activityType /* OPTIONAL */; - PublicSafetyDirectingTrafficSubType_t *activitySubType /* OPTIONAL */; - PersonalAssistive_t *assistType /* OPTIONAL */; - UserSizeAndBehaviour_t *sizing /* OPTIONAL */; - Attachment_t *attachment /* OPTIONAL */; - AttachmentRadius_t *attachmentRadius /* OPTIONAL */; - AnimalType_t *animalType /* OPTIONAL */; - RegionalPersonalSafetyMessage_t regional; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PersonalSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PathHistory.h" -#include "PathPrediction.h" -#include "PropelledInformation.h" - -#endif /* _PersonalSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h deleted file mode 100644 index 36813c02d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Position3D_2_H_ -#define _Position3D_2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Latitude.h" -#include "Longitude.h" -#include "Elevation2.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_Position3D; - -/* Position3D-2 */ -typedef struct Position3D_2 { - Latitude_t lat; - Longitude_t Long; - Elevation2_t *elevation /* OPTIONAL */; - struct Reg_Position3D *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_2; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalPosition3D.h" - -#endif /* _Position3D_2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h deleted file mode 100644 index 81c200068..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Position3D_H_ -#define _Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Latitude.h" -#include "Longitude.h" -#include "Elevation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D */ -typedef struct Position3D { - Latitude_t lat; - Longitude_t Long; - Elevation_t *elevation /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h deleted file mode 100644 index 4b10e2c66..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PositionConfidence_H_ -#define _PositionConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PositionConfidence { - PositionConfidence_unavailable = 0, - PositionConfidence_a500m = 1, - PositionConfidence_a200m = 2, - PositionConfidence_a100m = 3, - PositionConfidence_a50m = 4, - PositionConfidence_a20m = 5, - PositionConfidence_a10m = 6, - PositionConfidence_a5m = 7, - PositionConfidence_a2m = 8, - PositionConfidence_a1m = 9, - PositionConfidence_a50cm = 10, - PositionConfidence_a20cm = 11, - PositionConfidence_a10cm = 12, - PositionConfidence_a5cm = 13, - PositionConfidence_a2cm = 14, - PositionConfidence_a1cm = 15 -} e_PositionConfidence; - -/* PositionConfidence */ -typedef long PositionConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; -asn_struct_free_f PositionConfidence_free; -asn_struct_print_f PositionConfidence_print; -asn_constr_check_f PositionConfidence_constraint; -ber_type_decoder_f PositionConfidence_decode_ber; -der_type_encoder_f PositionConfidence_encode_der; -xer_type_decoder_f PositionConfidence_decode_xer; -xer_type_encoder_f PositionConfidence_encode_xer; -per_type_decoder_f PositionConfidence_decode_uper; -per_type_encoder_f PositionConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h deleted file mode 100644 index f9fb59bda..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PositionConfidenceSet_H_ -#define _PositionConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionConfidenceSet */ -typedef OCTET_STRING_t PositionConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; -asn_struct_free_f PositionConfidenceSet_free; -asn_struct_print_f PositionConfidenceSet_print; -asn_constr_check_f PositionConfidenceSet_constraint; -ber_type_decoder_f PositionConfidenceSet_decode_ber; -der_type_encoder_f PositionConfidenceSet_encode_der; -xer_type_decoder_f PositionConfidenceSet_decode_xer; -xer_type_encoder_f PositionConfidenceSet_encode_xer; -per_type_decoder_f PositionConfidenceSet_decode_uper; -per_type_encoder_f PositionConfidenceSet_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h deleted file mode 100644 index 82535f84b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PositionalAccuracy_H_ -#define _PositionalAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionalAccuracy */ -typedef OCTET_STRING_t PositionalAccuracy_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; -asn_struct_free_f PositionalAccuracy_free; -asn_struct_print_f PositionalAccuracy_print; -asn_constr_check_f PositionalAccuracy_constraint; -ber_type_decoder_f PositionalAccuracy_decode_ber; -der_type_encoder_f PositionalAccuracy_encode_der; -xer_type_decoder_f PositionalAccuracy_decode_xer; -xer_type_encoder_f PositionalAccuracy_encode_xer; -per_type_decoder_f PositionalAccuracy_decode_uper; -per_type_encoder_f PositionalAccuracy_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionalAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h deleted file mode 100644 index f981b467a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PreemptPriorityList_H_ -#define _PreemptPriorityList_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 Reg_SignalControlZone; - -/* PreemptPriorityList */ -typedef struct PreemptPriorityList { - A_SEQUENCE_OF(struct Reg_SignalControlZone) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PreemptPriorityList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalSignalControlZone.h" - -#endif /* _PreemptPriorityList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h deleted file mode 100644 index da9f1f29d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PrioritizationResponse_H_ -#define _PrioritizationResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "PrioritizationResponseStatus.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PrioritizationResponse */ -typedef struct PrioritizationResponse { - StationID_t stationID; - PrioritizationResponseStatus_t priorState; - SignalGroupID_t signalGroup; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h deleted file mode 100644 index 5fb2b8785..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PrioritizationResponseList_H_ -#define _PrioritizationResponseList_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 PrioritizationResponse; - -/* PrioritizationResponseList */ -typedef struct PrioritizationResponseList { - A_SEQUENCE_OF(struct PrioritizationResponse) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponseList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PrioritizationResponse.h" - -#endif /* _PrioritizationResponseList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h deleted file mode 100644 index 792abf872..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PrioritizationResponseStatus_H_ -#define _PrioritizationResponseStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PrioritizationResponseStatus { - PrioritizationResponseStatus_unknown = 0, - PrioritizationResponseStatus_requested = 1, - PrioritizationResponseStatus_processing = 2, - PrioritizationResponseStatus_watchOtherTraffic = 3, - PrioritizationResponseStatus_granted = 4, - PrioritizationResponseStatus_rejected = 5, - PrioritizationResponseStatus_maxPresence = 6 -} e_PrioritizationResponseStatus; - -/* PrioritizationResponseStatus */ -typedef long PrioritizationResponseStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; -asn_struct_free_f PrioritizationResponseStatus_free; -asn_struct_print_f PrioritizationResponseStatus_print; -asn_constr_check_f PrioritizationResponseStatus_constraint; -ber_type_decoder_f PrioritizationResponseStatus_decode_ber; -der_type_encoder_f PrioritizationResponseStatus_encode_der; -xer_type_decoder_f PrioritizationResponseStatus_decode_xer; -xer_type_encoder_f PrioritizationResponseStatus_encode_xer; -per_type_decoder_f PrioritizationResponseStatus_decode_uper; -per_type_encoder_f PrioritizationResponseStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponseStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h deleted file mode 100644 index f8aae68f0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Priority_H_ -#define _Priority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Priority */ -typedef OCTET_STRING_t Priority_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Priority; -asn_struct_free_f Priority_free; -asn_struct_print_f Priority_print; -asn_constr_check_f Priority_constraint; -ber_type_decoder_f Priority_decode_ber; -der_type_encoder_f Priority_encode_der; -xer_type_decoder_f Priority_decode_xer; -xer_type_encoder_f Priority_encode_xer; -per_type_decoder_f Priority_decode_uper; -per_type_encoder_f Priority_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Priority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h deleted file mode 100644 index 1abaa8a40..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ProbeDataManagement_H_ -#define _ProbeDataManagement_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "Sample.h" -#include "HeadingSlice.h" -#include "TxTime.h" -#include "Count.h" -#include "TermTime.h" -#include "TermDistance.h" -#include "constr_CHOICE.h" -#include "SnapshotTime.h" -#include "SnapshotDistance.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ProbeDataManagement__term_PR { - ProbeDataManagement__term_PR_NOTHING, /* No components present */ - ProbeDataManagement__term_PR_termtime, - ProbeDataManagement__term_PR_termDistance -} ProbeDataManagement__term_PR; -typedef enum ProbeDataManagement__snapshot_PR { - ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ - ProbeDataManagement__snapshot_PR_snapshotTime, - ProbeDataManagement__snapshot_PR_snapshotDistance -} ProbeDataManagement__snapshot_PR; - -/* Forward declarations */ -struct VehicleStatusRequest; - -/* ProbeDataManagement */ -typedef struct ProbeDataManagement { - DSRCmsgID_t msgID; - Sample_t sample; - HeadingSlice_t directions; - struct ProbeDataManagement__term { - ProbeDataManagement__term_PR present; - union ProbeDataManagement__term_u { - TermTime_t termtime; - TermDistance_t termDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } term; - struct ProbeDataManagement__snapshot { - ProbeDataManagement__snapshot_PR present; - union ProbeDataManagement__snapshot_u { - SnapshotTime_t snapshotTime; - SnapshotDistance_t snapshotDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshot; - TxTime_t txInterval; - Count_t cntTthreshold; - struct ProbeDataManagement__dataElements { - A_SEQUENCE_OF(struct VehicleStatusRequest) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } dataElements; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ProbeDataManagement_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleStatusRequest.h" - -#endif /* _ProbeDataManagement_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h deleted file mode 100644 index f95890ecd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ProbeSegmentNumber_H_ -#define _ProbeSegmentNumber_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ProbeSegmentNumber */ -typedef long ProbeSegmentNumber_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; -asn_struct_free_f ProbeSegmentNumber_free; -asn_struct_print_f ProbeSegmentNumber_print; -asn_constr_check_f ProbeSegmentNumber_constraint; -ber_type_decoder_f ProbeSegmentNumber_decode_ber; -der_type_encoder_f ProbeSegmentNumber_encode_der; -xer_type_decoder_f ProbeSegmentNumber_decode_xer; -xer_type_encoder_f ProbeSegmentNumber_encode_xer; -per_type_decoder_f ProbeSegmentNumber_decode_uper; -per_type_encoder_f ProbeSegmentNumber_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProbeSegmentNumber_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h deleted file mode 100644 index 50aaa4f7f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ProbeVehicleData_H_ -#define _ProbeVehicleData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "ProbeSegmentNumber.h" -#include "FullPositionVector.h" -#include "VehicleType.h" -#include "Count.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleIdent; -struct Snapshot; - -/* ProbeVehicleData */ -typedef struct ProbeVehicleData { - DSRCmsgID_t msgID; - ProbeSegmentNumber_t *segNum /* OPTIONAL */; - struct VehicleIdent *probeID /* OPTIONAL */; - FullPositionVector_t startVector; - VehicleType_t vehicleType; - Count_t *cntSnapshots /* OPTIONAL */; - struct ProbeVehicleData__snapshots { - A_SEQUENCE_OF(struct Snapshot) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshots; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ProbeVehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleIdent.h" -#include "Snapshot.h" - -#endif /* _ProbeVehicleData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h deleted file mode 100644 index 027dd375e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PropelledInformation_H_ -#define _PropelledInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HumanPropelledType.h" -#include "AnimalPropelledType.h" -#include "MotorizedPropelledType.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PropelledInformation_PR { - PropelledInformation_PR_NOTHING, /* No components present */ - PropelledInformation_PR_human, - PropelledInformation_PR_animal, - PropelledInformation_PR_motor, - /* Extensions may appear below */ - -} PropelledInformation_PR; - -/* PropelledInformation */ -typedef struct PropelledInformation { - PropelledInformation_PR present; - union PropelledInformation_u { - HumanPropelledType_t human; - AnimalPropelledType_t animal; - MotorizedPropelledType_t motor; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PropelledInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; - -#ifdef __cplusplus -} -#endif - -#endif /* _PropelledInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h deleted file mode 100644 index 07a403708..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PublicSafetyAndRoadWorkerActivity_H_ -#define _PublicSafetyAndRoadWorkerActivity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyAndRoadWorkerActivity { - PublicSafetyAndRoadWorkerActivity_unavailable = 0, - PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, - PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, - PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, - PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, - PublicSafetyAndRoadWorkerActivity_otherActivities = 5 -} e_PublicSafetyAndRoadWorkerActivity; - -/* PublicSafetyAndRoadWorkerActivity */ -typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; -asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; -asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; -asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; -ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; -der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; -xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; -xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; -per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; -per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h deleted file mode 100644 index 0d2d880a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PublicSafetyDirectingTrafficSubType_H_ -#define _PublicSafetyDirectingTrafficSubType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyDirectingTrafficSubType { - PublicSafetyDirectingTrafficSubType_unavailable = 0, - PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, - PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, - PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, - PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, - PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, - PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 -} e_PublicSafetyDirectingTrafficSubType; - -/* PublicSafetyDirectingTrafficSubType */ -typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; -asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; -asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; -asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; -ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; -der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; -xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; -xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; -per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; -per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h deleted file mode 100644 index d5660dc4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _PublicSafetyEventResponderWorkerType_H_ -#define _PublicSafetyEventResponderWorkerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyEventResponderWorkerType { - PublicSafetyEventResponderWorkerType_unavailable = 0, - PublicSafetyEventResponderWorkerType_towOperater = 1, - PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, - PublicSafetyEventResponderWorkerType_aDOTWorker = 3, - PublicSafetyEventResponderWorkerType_lawEnforcement = 4, - PublicSafetyEventResponderWorkerType_hazmatResponder = 5, - PublicSafetyEventResponderWorkerType_animalControlWorker = 6, - PublicSafetyEventResponderWorkerType_otherPersonnel = 7 - /* - * Enumeration is extensible - */ -} e_PublicSafetyEventResponderWorkerType; - -/* PublicSafetyEventResponderWorkerType */ -typedef long PublicSafetyEventResponderWorkerType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; -asn_struct_free_f PublicSafetyEventResponderWorkerType_free; -asn_struct_print_f PublicSafetyEventResponderWorkerType_print; -asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; -ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; -der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; -xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; -xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; -per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; -per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyEventResponderWorkerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h deleted file mode 100644 index c9a253fe7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCM_Corrections_H_ -#define _RTCM_Corrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "RTCM-Revision.h" -#include "RTCMHeader.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct RTCMmsg; - -/* RTCM-Corrections */ -typedef struct RTCM_Corrections { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - RTCM_Revision_t rev; - struct FullPositionVector *anchorPoint /* OPTIONAL */; - RTCMHeader_t rtcmHeader; - struct RTCM_Corrections__rtcmSets { - A_SEQUENCE_OF(struct RTCMmsg) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } rtcmSets; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCM_Corrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCM_Corrections; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" -#include "RTCMmsg.h" - -#endif /* _RTCM_Corrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h deleted file mode 100644 index 4e39c4a63..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCM_ID_H_ -#define _RTCM_ID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCM-ID */ -typedef long RTCM_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCM_ID; -asn_struct_free_f RTCM_ID_free; -asn_struct_print_f RTCM_ID_print; -asn_constr_check_f RTCM_ID_constraint; -ber_type_decoder_f RTCM_ID_decode_ber; -der_type_encoder_f RTCM_ID_encode_der; -xer_type_decoder_f RTCM_ID_decode_xer; -xer_type_encoder_f RTCM_ID_encode_xer; -per_type_decoder_f RTCM_ID_decode_uper; -per_type_encoder_f RTCM_ID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCM_ID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h deleted file mode 100644 index 7df2b9c8b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCM_Payload_H_ -#define _RTCM_Payload_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCM-Payload */ -typedef OCTET_STRING_t RTCM_Payload_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCM_Payload; -asn_struct_free_f RTCM_Payload_free; -asn_struct_print_f RTCM_Payload_print; -asn_constr_check_f RTCM_Payload_constraint; -ber_type_decoder_f RTCM_Payload_decode_ber; -der_type_encoder_f RTCM_Payload_encode_der; -xer_type_decoder_f RTCM_Payload_decode_xer; -xer_type_encoder_f RTCM_Payload_encode_xer; -per_type_decoder_f RTCM_Payload_decode_uper; -per_type_encoder_f RTCM_Payload_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCM_Payload_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h deleted file mode 100644 index 6789b4569..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCM_Revision_H_ -#define _RTCM_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RTCM_Revision { - RTCM_Revision_unknown = 0, - RTCM_Revision_reserved = 1, - RTCM_Revision_rtcmCMR = 2, - RTCM_Revision_rtcmCMR_Plus = 3, - RTCM_Revision_rtcmSAPOS = 4, - RTCM_Revision_rtcmSAPOS_Adv = 5, - RTCM_Revision_rtcmRTCA = 6, - RTCM_Revision_rtcmRAW = 7, - RTCM_Revision_rtcmRINEX = 8, - RTCM_Revision_rtcmSP3 = 9, - RTCM_Revision_rtcmBINEX = 10, - RTCM_Revision_rtcmRev2_x = 19, - RTCM_Revision_rtcmRev2_0 = 20, - RTCM_Revision_rtcmRev2_1 = 21, - RTCM_Revision_rtcmRev2_3 = 23, - RTCM_Revision_rtcmRev3_0 = 30, - RTCM_Revision_rtcmRev3_1 = 31 - /* - * Enumeration is extensible - */ -} e_RTCM_Revision; - -/* RTCM-Revision */ -typedef long RTCM_Revision_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; -asn_struct_free_f RTCM_Revision_free; -asn_struct_print_f RTCM_Revision_print; -asn_constr_check_f RTCM_Revision_constraint; -ber_type_decoder_f RTCM_Revision_decode_ber; -der_type_encoder_f RTCM_Revision_encode_der; -xer_type_decoder_f RTCM_Revision_decode_xer; -xer_type_encoder_f RTCM_Revision_encode_xer; -per_type_decoder_f RTCM_Revision_decode_uper; -per_type_encoder_f RTCM_Revision_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCM_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h deleted file mode 100644 index da2ae37da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCMHeader_H_ -#define _RTCMHeader_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMHeader */ -typedef OCTET_STRING_t RTCMHeader_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMHeader; -asn_struct_free_f RTCMHeader_free; -asn_struct_print_f RTCMHeader_print; -asn_constr_check_f RTCMHeader_constraint; -ber_type_decoder_f RTCMHeader_decode_ber; -der_type_encoder_f RTCMHeader_encode_der; -xer_type_decoder_f RTCMHeader_decode_xer; -xer_type_encoder_f RTCMHeader_encode_xer; -per_type_decoder_f RTCMHeader_decode_uper; -per_type_encoder_f RTCMHeader_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMHeader_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h deleted file mode 100644 index 96c86bfe6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCMPackage_H_ -#define _RTCMPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCMHeader.h" -#include "OCTET_STRING.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; - -/* RTCMPackage */ -typedef struct RTCMPackage { - struct FullPositionVector *anchorPoint /* OPTIONAL */; - RTCMHeader_t rtcmHeader; - OCTET_STRING_t *msg1001 /* OPTIONAL */; - OCTET_STRING_t *msg1002 /* OPTIONAL */; - OCTET_STRING_t *msg1003 /* OPTIONAL */; - OCTET_STRING_t *msg1004 /* OPTIONAL */; - OCTET_STRING_t *msg1005 /* OPTIONAL */; - OCTET_STRING_t *msg1006 /* OPTIONAL */; - OCTET_STRING_t *msg1007 /* OPTIONAL */; - OCTET_STRING_t *msg1008 /* OPTIONAL */; - OCTET_STRING_t *msg1009 /* OPTIONAL */; - OCTET_STRING_t *msg1010 /* OPTIONAL */; - OCTET_STRING_t *msg1011 /* OPTIONAL */; - OCTET_STRING_t *msg1012 /* OPTIONAL */; - OCTET_STRING_t *msg1013 /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - OCTET_STRING_t *msg1014 /* OPTIONAL */; - OCTET_STRING_t *msg1015 /* OPTIONAL */; - OCTET_STRING_t *msg1016 /* OPTIONAL */; - OCTET_STRING_t *msg1017 /* OPTIONAL */; - OCTET_STRING_t *msg1019 /* OPTIONAL */; - OCTET_STRING_t *msg1020 /* OPTIONAL */; - OCTET_STRING_t *msg1021 /* OPTIONAL */; - OCTET_STRING_t *msg1022 /* OPTIONAL */; - OCTET_STRING_t *msg1023 /* OPTIONAL */; - OCTET_STRING_t *msg1024 /* OPTIONAL */; - OCTET_STRING_t *msg1025 /* OPTIONAL */; - OCTET_STRING_t *msg1026 /* OPTIONAL */; - OCTET_STRING_t *msg1027 /* OPTIONAL */; - OCTET_STRING_t *msg1029 /* OPTIONAL */; - OCTET_STRING_t *msg1030 /* OPTIONAL */; - OCTET_STRING_t *msg1031 /* OPTIONAL */; - OCTET_STRING_t *msg1032 /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" - -#endif /* _RTCMPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h deleted file mode 100644 index 5cb5ebd5b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RTCMmsg_H_ -#define _RTCMmsg_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCM-Revision.h" -#include "RTCM-ID.h" -#include "RTCM-Payload.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMmsg */ -typedef struct RTCMmsg { - RTCM_Revision_t *rev /* OPTIONAL */; - RTCM_ID_t *rtcmID /* OPTIONAL */; - RTCM_Payload_t payload; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMmsg_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMmsg; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMmsg_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h deleted file mode 100644 index 30f12caca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RainSensor_H_ -#define _RainSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RainSensor { - RainSensor_none = 0, - RainSensor_lightMist = 1, - RainSensor_heavyMist = 2, - RainSensor_lightRainOrDrizzle = 3, - RainSensor_rain = 4, - RainSensor_moderateRain = 5, - RainSensor_heavyRain = 6, - RainSensor_heavyDownpour = 7 -} e_RainSensor; - -/* RainSensor */ -typedef long RainSensor_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RainSensor; -asn_struct_free_f RainSensor_free; -asn_struct_print_f RainSensor_print; -asn_constr_check_f RainSensor_constraint; -ber_type_decoder_f RainSensor_decode_ber; -der_type_encoder_f RainSensor_encode_der; -xer_type_decoder_f RainSensor_decode_xer; -xer_type_encoder_f RainSensor_encode_xer; -per_type_decoder_f RainSensor_decode_uper; -per_type_encoder_f RainSensor_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RainSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h deleted file mode 100644 index 3b83921c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_AdvisorySpeed_H_ -#define _Reg_AdvisorySpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-AdvisorySpeed */ -typedef struct Reg_AdvisorySpeed { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_AdvisorySpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_AdvisorySpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h deleted file mode 100644 index 00c0143a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_ComputedLane_H_ -#define _Reg_ComputedLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-ComputedLane */ -typedef struct Reg_ComputedLane { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ComputedLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_ComputedLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h deleted file mode 100644 index 7efbb6987..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_ConnectionManeuverAssist_H_ -#define _Reg_ConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-ConnectionManeuverAssist */ -typedef struct Reg_ConnectionManeuverAssist { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_ConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_ConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h deleted file mode 100644 index eaecb4fd0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_GenericLane_H_ -#define _Reg_GenericLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-GenericLane */ -typedef struct Reg_GenericLane { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_GenericLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_GenericLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h deleted file mode 100644 index 4f28c1957..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_Intersection_H_ -#define _Reg_Intersection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-Intersection */ -typedef struct Reg_Intersection { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_Intersection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_Intersection; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_Intersection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h deleted file mode 100644 index d726a30bc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_IntersectionState_H_ -#define _Reg_IntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-IntersectionState */ -typedef struct Reg_IntersectionState { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_IntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_IntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h deleted file mode 100644 index 83d03c69a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_LaneAttributes_H_ -#define _Reg_LaneAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-LaneAttributes */ -typedef struct Reg_LaneAttributes { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_LaneAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_LaneAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h deleted file mode 100644 index 2bbcd69a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_LaneDataAttribute_H_ -#define _Reg_LaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-LaneDataAttribute */ -typedef struct Reg_LaneDataAttribute { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_LaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_LaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h deleted file mode 100644 index d2270fee9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_MapData_H_ -#define _Reg_MapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-MapData */ -typedef struct Reg_MapData { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_MapData; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_MapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h deleted file mode 100644 index aa4cd20c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_MovementEvent_H_ -#define _Reg_MovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-MovementEvent */ -typedef struct Reg_MovementEvent { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_MovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h deleted file mode 100644 index 09337ef28..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_MovementState_H_ -#define _Reg_MovementState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-MovementState */ -typedef struct Reg_MovementState { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_MovementState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementState; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_MovementState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h deleted file mode 100644 index a0ea5d0a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_NodeAttribute_H_ -#define _Reg_NodeAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-NodeAttribute */ -typedef struct Reg_NodeAttribute { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttribute; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_NodeAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h deleted file mode 100644 index c832f9801..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_NodeOffsetPoint_H_ -#define _Reg_NodeOffsetPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-NodeOffsetPoint */ -typedef struct Reg_NodeOffsetPoint { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_NodeOffsetPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPoint; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_NodeOffsetPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h deleted file mode 100644 index b78df158e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#ifndef _Reg_PersonalMobilityMessage_H_ -#define _Reg_PersonalMobilityMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-PersonalMobilityMessage */ -typedef struct Reg_PersonalMobilityMessage { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_PersonalMobilityMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalMobilityMessage; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_PersonalMobilityMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h deleted file mode 100644 index 3d67ac89f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _Reg_PersonalSafetyMessage_H_ -#define _Reg_PersonalSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-PersonalSafetyMessage */ -typedef struct Reg_PersonalSafetyMessage { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_PersonalSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_PersonalSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h deleted file mode 100644 index bec1c00b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_Position3D_H_ -#define _Reg_Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-Position3D */ -typedef struct Reg_Position3D { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_Position3D; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h deleted file mode 100644 index 622820163..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_RestrictionUserType_H_ -#define _Reg_RestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-RestrictionUserType */ -typedef struct Reg_RestrictionUserType { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_RestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h deleted file mode 100644 index 671690cda..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_RoadSegment_H_ -#define _Reg_RoadSegment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-RoadSegment */ -typedef struct Reg_RoadSegment { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_RoadSegment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_RoadSegment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h deleted file mode 100644 index 7ceb73c08..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_SPAT_H_ -#define _Reg_SPAT_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-SPAT */ -typedef struct Reg_SPAT { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SPAT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_SPAT; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_SPAT_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h deleted file mode 100644 index 27bdcfd07..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Reg_SignalControlZone_H_ -#define _Reg_SignalControlZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Reg-SignalControlZone */ -typedef struct Reg_SignalControlZone { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_SignalControlZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone; - -#ifdef __cplusplus -} -#endif - -#endif /* _Reg_SignalControlZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h deleted file mode 100644 index a843737c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionList_H_ -#define _RegionList_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 RegionOffsets; - -/* RegionList */ -typedef struct RegionList { - A_SEQUENCE_OF(struct RegionOffsets) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionOffsets.h" - -#endif /* _RegionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h deleted file mode 100644 index 9e1e490b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionOffsets_H_ -#define _RegionOffsets_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionOffsets */ -typedef struct RegionOffsets { - long xOffset; - long yOffset; - long *zOffset /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionOffsets_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionOffsets_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h deleted file mode 100644 index 6da053198..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionPointSet_H_ -#define _RegionPointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RegionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* RegionPointSet */ -typedef struct RegionPointSet { - struct Position3D *anchor /* OPTIONAL */; - RegionList_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionPointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D.h" - -#endif /* _RegionPointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h deleted file mode 100644 index 76c01b94e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalAdvisorySpeed_H_ -#define _RegionalAdvisorySpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-AdvisorySpeed.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalAdvisorySpeed */ -typedef Reg_AdvisorySpeed_t RegionalAdvisorySpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalAdvisorySpeed; -asn_struct_free_f RegionalAdvisorySpeed_free; -asn_struct_print_f RegionalAdvisorySpeed_print; -asn_constr_check_f RegionalAdvisorySpeed_constraint; -ber_type_decoder_f RegionalAdvisorySpeed_decode_ber; -der_type_encoder_f RegionalAdvisorySpeed_encode_der; -xer_type_decoder_f RegionalAdvisorySpeed_decode_xer; -xer_type_encoder_f RegionalAdvisorySpeed_encode_xer; -per_type_decoder_f RegionalAdvisorySpeed_decode_uper; -per_type_encoder_f RegionalAdvisorySpeed_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalAdvisorySpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h deleted file mode 100644 index 1f2bc8e20..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalComputedLane_H_ -#define _RegionalComputedLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-ComputedLane.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalComputedLane */ -typedef Reg_ComputedLane_t RegionalComputedLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalComputedLane; -asn_struct_free_f RegionalComputedLane_free; -asn_struct_print_f RegionalComputedLane_print; -asn_constr_check_f RegionalComputedLane_constraint; -ber_type_decoder_f RegionalComputedLane_decode_ber; -der_type_encoder_f RegionalComputedLane_encode_der; -xer_type_decoder_f RegionalComputedLane_decode_xer; -xer_type_encoder_f RegionalComputedLane_encode_xer; -per_type_decoder_f RegionalComputedLane_decode_uper; -per_type_encoder_f RegionalComputedLane_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalComputedLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h deleted file mode 100644 index 50929d583..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalConnectionManeuverAssist_H_ -#define _RegionalConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-ConnectionManeuverAssist.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalConnectionManeuverAssist */ -typedef Reg_ConnectionManeuverAssist_t RegionalConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalConnectionManeuverAssist; -asn_struct_free_f RegionalConnectionManeuverAssist_free; -asn_struct_print_f RegionalConnectionManeuverAssist_print; -asn_constr_check_f RegionalConnectionManeuverAssist_constraint; -ber_type_decoder_f RegionalConnectionManeuverAssist_decode_ber; -der_type_encoder_f RegionalConnectionManeuverAssist_encode_der; -xer_type_decoder_f RegionalConnectionManeuverAssist_decode_xer; -xer_type_encoder_f RegionalConnectionManeuverAssist_encode_xer; -per_type_decoder_f RegionalConnectionManeuverAssist_decode_uper; -per_type_encoder_f RegionalConnectionManeuverAssist_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h deleted file mode 100644 index b3326b035..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalGenericLane_H_ -#define _RegionalGenericLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-GenericLane.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalGenericLane */ -typedef Reg_GenericLane_t RegionalGenericLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalGenericLane; -asn_struct_free_f RegionalGenericLane_free; -asn_struct_print_f RegionalGenericLane_print; -asn_constr_check_f RegionalGenericLane_constraint; -ber_type_decoder_f RegionalGenericLane_decode_ber; -der_type_encoder_f RegionalGenericLane_encode_der; -xer_type_decoder_f RegionalGenericLane_decode_xer; -xer_type_encoder_f RegionalGenericLane_encode_xer; -per_type_decoder_f RegionalGenericLane_decode_uper; -per_type_encoder_f RegionalGenericLane_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalGenericLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h deleted file mode 100644 index 949f0c664..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalIntersection_H_ -#define _RegionalIntersection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-Intersection.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalIntersection */ -typedef Reg_Intersection_t RegionalIntersection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalIntersection; -asn_struct_free_f RegionalIntersection_free; -asn_struct_print_f RegionalIntersection_print; -asn_constr_check_f RegionalIntersection_constraint; -ber_type_decoder_f RegionalIntersection_decode_ber; -der_type_encoder_f RegionalIntersection_encode_der; -xer_type_decoder_f RegionalIntersection_decode_xer; -xer_type_encoder_f RegionalIntersection_encode_xer; -per_type_decoder_f RegionalIntersection_decode_uper; -per_type_encoder_f RegionalIntersection_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalIntersection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h deleted file mode 100644 index f132669c0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalIntersectionState_H_ -#define _RegionalIntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-IntersectionState.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalIntersectionState */ -typedef Reg_IntersectionState_t RegionalIntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalIntersectionState; -asn_struct_free_f RegionalIntersectionState_free; -asn_struct_print_f RegionalIntersectionState_print; -asn_constr_check_f RegionalIntersectionState_constraint; -ber_type_decoder_f RegionalIntersectionState_decode_ber; -der_type_encoder_f RegionalIntersectionState_encode_der; -xer_type_decoder_f RegionalIntersectionState_decode_xer; -xer_type_encoder_f RegionalIntersectionState_encode_xer; -per_type_decoder_f RegionalIntersectionState_decode_uper; -per_type_encoder_f RegionalIntersectionState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalIntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h deleted file mode 100644 index 770ca0e15..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalLaneAttributes_H_ -#define _RegionalLaneAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-LaneAttributes.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalLaneAttributes */ -typedef Reg_LaneAttributes_t RegionalLaneAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalLaneAttributes; -asn_struct_free_f RegionalLaneAttributes_free; -asn_struct_print_f RegionalLaneAttributes_print; -asn_constr_check_f RegionalLaneAttributes_constraint; -ber_type_decoder_f RegionalLaneAttributes_decode_ber; -der_type_encoder_f RegionalLaneAttributes_encode_der; -xer_type_decoder_f RegionalLaneAttributes_decode_xer; -xer_type_encoder_f RegionalLaneAttributes_encode_xer; -per_type_decoder_f RegionalLaneAttributes_decode_uper; -per_type_encoder_f RegionalLaneAttributes_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalLaneAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h deleted file mode 100644 index 7eeb13c44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalLaneDataAttribute_H_ -#define _RegionalLaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-LaneDataAttribute.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalLaneDataAttribute */ -typedef Reg_LaneDataAttribute_t RegionalLaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalLaneDataAttribute; -asn_struct_free_f RegionalLaneDataAttribute_free; -asn_struct_print_f RegionalLaneDataAttribute_print; -asn_constr_check_f RegionalLaneDataAttribute_constraint; -ber_type_decoder_f RegionalLaneDataAttribute_decode_ber; -der_type_encoder_f RegionalLaneDataAttribute_encode_der; -xer_type_decoder_f RegionalLaneDataAttribute_decode_xer; -xer_type_encoder_f RegionalLaneDataAttribute_encode_xer; -per_type_decoder_f RegionalLaneDataAttribute_decode_uper; -per_type_encoder_f RegionalLaneDataAttribute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalLaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h deleted file mode 100644 index d43194542..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalMapData_H_ -#define _RegionalMapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-MapData.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalMapData */ -typedef Reg_MapData_t RegionalMapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalMapData; -asn_struct_free_f RegionalMapData_free; -asn_struct_print_f RegionalMapData_print; -asn_constr_check_f RegionalMapData_constraint; -ber_type_decoder_f RegionalMapData_decode_ber; -der_type_encoder_f RegionalMapData_encode_der; -xer_type_decoder_f RegionalMapData_decode_xer; -xer_type_encoder_f RegionalMapData_encode_xer; -per_type_decoder_f RegionalMapData_decode_uper; -per_type_encoder_f RegionalMapData_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalMapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h deleted file mode 100644 index 75bc822e7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalMovementEvent_H_ -#define _RegionalMovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-MovementEvent.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalMovementEvent */ -typedef Reg_MovementEvent_t RegionalMovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalMovementEvent; -asn_struct_free_f RegionalMovementEvent_free; -asn_struct_print_f RegionalMovementEvent_print; -asn_constr_check_f RegionalMovementEvent_constraint; -ber_type_decoder_f RegionalMovementEvent_decode_ber; -der_type_encoder_f RegionalMovementEvent_encode_der; -xer_type_decoder_f RegionalMovementEvent_decode_xer; -xer_type_encoder_f RegionalMovementEvent_encode_xer; -per_type_decoder_f RegionalMovementEvent_decode_uper; -per_type_encoder_f RegionalMovementEvent_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalMovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h deleted file mode 100644 index 5a52492ea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalMovementState_H_ -#define _RegionalMovementState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-MovementState.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalMovementState */ -typedef Reg_MovementState_t RegionalMovementState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalMovementState; -asn_struct_free_f RegionalMovementState_free; -asn_struct_print_f RegionalMovementState_print; -asn_constr_check_f RegionalMovementState_constraint; -ber_type_decoder_f RegionalMovementState_decode_ber; -der_type_encoder_f RegionalMovementState_encode_der; -xer_type_decoder_f RegionalMovementState_decode_xer; -xer_type_encoder_f RegionalMovementState_encode_xer; -per_type_decoder_f RegionalMovementState_decode_uper; -per_type_encoder_f RegionalMovementState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalMovementState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h deleted file mode 100644 index 3fb2c2087..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalNodeAttribute_H_ -#define _RegionalNodeAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-NodeAttribute.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalNodeAttribute */ -typedef Reg_NodeAttribute_t RegionalNodeAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttribute; -asn_struct_free_f RegionalNodeAttribute_free; -asn_struct_print_f RegionalNodeAttribute_print; -asn_constr_check_f RegionalNodeAttribute_constraint; -ber_type_decoder_f RegionalNodeAttribute_decode_ber; -der_type_encoder_f RegionalNodeAttribute_encode_der; -xer_type_decoder_f RegionalNodeAttribute_decode_xer; -xer_type_encoder_f RegionalNodeAttribute_encode_xer; -per_type_decoder_f RegionalNodeAttribute_decode_uper; -per_type_encoder_f RegionalNodeAttribute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalNodeAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h deleted file mode 100644 index 036708ce0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalNodeAttributeList_H_ -#define _RegionalNodeAttributeList_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 Reg_NodeAttribute; - -/* RegionalNodeAttributeList */ -typedef struct RegionalNodeAttributeList { - A_SEQUENCE_OF(struct Reg_NodeAttribute) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionalNodeAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttributeList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalNodeAttribute.h" - -#endif /* _RegionalNodeAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h deleted file mode 100644 index 809882cbf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalNodeOffsetPoint_H_ -#define _RegionalNodeOffsetPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-NodeOffsetPoint.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalNodeOffsetPoint */ -typedef Reg_NodeOffsetPoint_t RegionalNodeOffsetPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeOffsetPoint; -asn_struct_free_f RegionalNodeOffsetPoint_free; -asn_struct_print_f RegionalNodeOffsetPoint_print; -asn_constr_check_f RegionalNodeOffsetPoint_constraint; -ber_type_decoder_f RegionalNodeOffsetPoint_decode_ber; -der_type_encoder_f RegionalNodeOffsetPoint_encode_der; -xer_type_decoder_f RegionalNodeOffsetPoint_decode_xer; -xer_type_encoder_f RegionalNodeOffsetPoint_encode_xer; -per_type_decoder_f RegionalNodeOffsetPoint_decode_uper; -per_type_encoder_f RegionalNodeOffsetPoint_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalNodeOffsetPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h deleted file mode 100644 index e9f9e5c97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#ifndef _RegionalPersonalMobilityMessage_H_ -#define _RegionalPersonalMobilityMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-PersonalMobilityMessage.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalPersonalMobilityMessage */ -typedef Reg_PersonalMobilityMessage_t RegionalPersonalMobilityMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalPersonalMobilityMessage; -asn_struct_free_f RegionalPersonalMobilityMessage_free; -asn_struct_print_f RegionalPersonalMobilityMessage_print; -asn_constr_check_f RegionalPersonalMobilityMessage_constraint; -ber_type_decoder_f RegionalPersonalMobilityMessage_decode_ber; -der_type_encoder_f RegionalPersonalMobilityMessage_encode_der; -xer_type_decoder_f RegionalPersonalMobilityMessage_decode_xer; -xer_type_encoder_f RegionalPersonalMobilityMessage_encode_xer; -per_type_decoder_f RegionalPersonalMobilityMessage_decode_uper; -per_type_encoder_f RegionalPersonalMobilityMessage_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalPersonalMobilityMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h deleted file mode 100644 index 552d92821..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _RegionalPersonalSafetyMessage_H_ -#define _RegionalPersonalSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-PersonalSafetyMessage.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalPersonalSafetyMessage */ -typedef Reg_PersonalSafetyMessage_t RegionalPersonalSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalPersonalSafetyMessage; -asn_struct_free_f RegionalPersonalSafetyMessage_free; -asn_struct_print_f RegionalPersonalSafetyMessage_print; -asn_constr_check_f RegionalPersonalSafetyMessage_constraint; -ber_type_decoder_f RegionalPersonalSafetyMessage_decode_ber; -der_type_encoder_f RegionalPersonalSafetyMessage_encode_der; -xer_type_decoder_f RegionalPersonalSafetyMessage_decode_xer; -xer_type_encoder_f RegionalPersonalSafetyMessage_encode_xer; -per_type_decoder_f RegionalPersonalSafetyMessage_decode_uper; -per_type_encoder_f RegionalPersonalSafetyMessage_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalPersonalSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h deleted file mode 100644 index cb236016a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalPosition3D_H_ -#define _RegionalPosition3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-Position3D.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalPosition3D */ -typedef Reg_Position3D_t RegionalPosition3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalPosition3D; -asn_struct_free_f RegionalPosition3D_free; -asn_struct_print_f RegionalPosition3D_print; -asn_constr_check_f RegionalPosition3D_constraint; -ber_type_decoder_f RegionalPosition3D_decode_ber; -der_type_encoder_f RegionalPosition3D_encode_der; -xer_type_decoder_f RegionalPosition3D_decode_xer; -xer_type_encoder_f RegionalPosition3D_encode_xer; -per_type_decoder_f RegionalPosition3D_decode_uper; -per_type_encoder_f RegionalPosition3D_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalPosition3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h deleted file mode 100644 index 3cacb95bd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalRestrictionUserType_H_ -#define _RegionalRestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-RestrictionUserType.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalRestrictionUserType */ -typedef Reg_RestrictionUserType_t RegionalRestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalRestrictionUserType; -asn_struct_free_f RegionalRestrictionUserType_free; -asn_struct_print_f RegionalRestrictionUserType_print; -asn_constr_check_f RegionalRestrictionUserType_constraint; -ber_type_decoder_f RegionalRestrictionUserType_decode_ber; -der_type_encoder_f RegionalRestrictionUserType_encode_der; -xer_type_decoder_f RegionalRestrictionUserType_decode_xer; -xer_type_encoder_f RegionalRestrictionUserType_encode_xer; -per_type_decoder_f RegionalRestrictionUserType_decode_uper; -per_type_encoder_f RegionalRestrictionUserType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalRestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h deleted file mode 100644 index 76f6e295e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalRoadSegment_H_ -#define _RegionalRoadSegment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-RoadSegment.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalRoadSegment */ -typedef Reg_RoadSegment_t RegionalRoadSegment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalRoadSegment; -asn_struct_free_f RegionalRoadSegment_free; -asn_struct_print_f RegionalRoadSegment_print; -asn_constr_check_f RegionalRoadSegment_constraint; -ber_type_decoder_f RegionalRoadSegment_decode_ber; -der_type_encoder_f RegionalRoadSegment_encode_der; -xer_type_decoder_f RegionalRoadSegment_decode_xer; -xer_type_encoder_f RegionalRoadSegment_encode_xer; -per_type_decoder_f RegionalRoadSegment_decode_uper; -per_type_encoder_f RegionalRoadSegment_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalRoadSegment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h deleted file mode 100644 index deb8fd264..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalSPAT_H_ -#define _RegionalSPAT_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-SPAT.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalSPAT */ -typedef Reg_SPAT_t RegionalSPAT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalSPAT; -asn_struct_free_f RegionalSPAT_free; -asn_struct_print_f RegionalSPAT_print; -asn_constr_check_f RegionalSPAT_constraint; -ber_type_decoder_f RegionalSPAT_decode_ber; -der_type_encoder_f RegionalSPAT_encode_der; -xer_type_decoder_f RegionalSPAT_decode_xer; -xer_type_encoder_f RegionalSPAT_encode_xer; -per_type_decoder_f RegionalSPAT_decode_uper; -per_type_encoder_f RegionalSPAT_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalSPAT_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h deleted file mode 100644 index ea78a47cc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegionalSignalControlZone_H_ -#define _RegionalSignalControlZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Reg-SignalControlZone.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionalSignalControlZone */ -typedef Reg_SignalControlZone_t RegionalSignalControlZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionalSignalControlZone; -asn_struct_free_f RegionalSignalControlZone_free; -asn_struct_print_f RegionalSignalControlZone_print; -asn_constr_check_f RegionalSignalControlZone_constraint; -ber_type_decoder_f RegionalSignalControlZone_decode_ber; -der_type_encoder_f RegionalSignalControlZone_encode_der; -xer_type_decoder_f RegionalSignalControlZone_decode_xer; -xer_type_encoder_f RegionalSignalControlZone_encode_xer; -per_type_decoder_f RegionalSignalControlZone_decode_uper; -per_type_encoder_f RegionalSignalControlZone_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalSignalControlZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h deleted file mode 100644 index 25c8c5c19..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RegulatorySpeedLimit_H_ -#define _RegulatorySpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedLimitType.h" -#include "Velocity.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegulatorySpeedLimit */ -typedef struct RegulatorySpeedLimit { - SpeedLimitType_t type; - Velocity_t speed; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegulatorySpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegulatorySpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h deleted file mode 100644 index d730ce154..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#ifndef _RequestID_H_ -#define _RequestID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RequestID */ -typedef long RequestID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestID; -asn_struct_free_f RequestID_free; -asn_struct_print_f RequestID_print; -asn_constr_check_f RequestID_constraint; -ber_type_decoder_f RequestID_decode_ber; -der_type_encoder_f RequestID_encode_der; -xer_type_decoder_f RequestID_decode_xer; -xer_type_encoder_f RequestID_encode_xer; -per_type_decoder_f RequestID_decode_uper; -per_type_encoder_f RequestID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h deleted file mode 100644 index 669e75a5e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RequestedItem_H_ -#define _RequestedItem_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestedItem { - RequestedItem_reserved = 0, - RequestedItem_itemA = 1, - RequestedItem_itemB = 2, - RequestedItem_itemC = 3, - RequestedItem_itemD = 4, - RequestedItem_itemE = 5, - RequestedItem_itemF = 6, - RequestedItem_itemG = 7, - RequestedItem_itemH = 8, - RequestedItem_itemI = 9, - RequestedItem_itemJ = 10, - RequestedItem_itemK = 11, - RequestedItem_itemL = 12, - RequestedItem_itemM = 13, - RequestedItem_itemN = 14, - RequestedItem_itemO = 15, - RequestedItem_itemP = 16, - RequestedItem_itemQ = 17 - /* - * Enumeration is extensible - */ -} e_RequestedItem; - -/* RequestedItem */ -typedef long RequestedItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; -asn_struct_free_f RequestedItem_free; -asn_struct_print_f RequestedItem_print; -asn_constr_check_f RequestedItem_constraint; -ber_type_decoder_f RequestedItem_decode_ber; -der_type_encoder_f RequestedItem_encode_der; -xer_type_decoder_f RequestedItem_decode_xer; -xer_type_encoder_f RequestedItem_encode_xer; -per_type_decoder_f RequestedItem_decode_uper; -per_type_encoder_f RequestedItem_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestedItem_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h deleted file mode 100644 index 2806b5e0d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ResponderGroupAffected_H_ -#define _ResponderGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponderGroupAffected { - ResponderGroupAffected_emergency_vehicle_units = 9729, - ResponderGroupAffected_federal_law_enforcement_units = 9730, - ResponderGroupAffected_state_police_units = 9731, - ResponderGroupAffected_county_police_units = 9732, - ResponderGroupAffected_local_police_units = 9733, - ResponderGroupAffected_ambulance_units = 9734, - ResponderGroupAffected_rescue_units = 9735, - ResponderGroupAffected_fire_units = 9736, - ResponderGroupAffected_hAZMAT_units = 9737, - ResponderGroupAffected_light_tow_unit = 9738, - ResponderGroupAffected_heavy_tow_unit = 9739, - ResponderGroupAffected_freeway_service_patrols = 9740, - ResponderGroupAffected_transportation_response_units = 9741, - ResponderGroupAffected_private_contractor_response_units = 9742 - /* - * Enumeration is extensible - */ -} e_ResponderGroupAffected; - -/* ResponderGroupAffected */ -typedef long ResponderGroupAffected_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; -asn_struct_free_f ResponderGroupAffected_free; -asn_struct_print_f ResponderGroupAffected_print; -asn_constr_check_f ResponderGroupAffected_constraint; -ber_type_decoder_f ResponderGroupAffected_decode_ber; -der_type_encoder_f ResponderGroupAffected_encode_der; -xer_type_decoder_f ResponderGroupAffected_decode_xer; -xer_type_encoder_f ResponderGroupAffected_encode_xer; -per_type_decoder_f ResponderGroupAffected_decode_uper; -per_type_encoder_f ResponderGroupAffected_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponderGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h deleted file mode 100644 index 28420593a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ResponseType_H_ -#define _ResponseType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponseType { - ResponseType_notInUseOrNotEquipped = 0, - ResponseType_emergency = 1, - ResponseType_nonEmergency = 2, - ResponseType_pursuit = 3 -} e_ResponseType; - -/* ResponseType */ -typedef long ResponseType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResponseType; -asn_struct_free_f ResponseType_free; -asn_struct_print_f ResponseType_print; -asn_constr_check_f ResponseType_constraint; -ber_type_decoder_f ResponseType_decode_ber; -der_type_encoder_f ResponseType_encode_der; -xer_type_decoder_f ResponseType_decode_xer; -xer_type_encoder_f ResponseType_encode_xer; -per_type_decoder_f ResponseType_decode_uper; -per_type_encoder_f ResponseType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponseType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h deleted file mode 100644 index 78380e8a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionAppliesTo_H_ -#define _RestrictionAppliesTo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionAppliesTo { - RestrictionAppliesTo_none = 0, - RestrictionAppliesTo_equippedTransit = 1, - RestrictionAppliesTo_equippedTaxis = 2, - RestrictionAppliesTo_equippedOther = 3, - RestrictionAppliesTo_emissionCompliant = 4, - RestrictionAppliesTo_equippedBicycle = 5, - RestrictionAppliesTo_weightCompliant = 6, - RestrictionAppliesTo_heightCompliant = 7, - RestrictionAppliesTo_pedestrians = 8, - RestrictionAppliesTo_slowMovingPersons = 9, - RestrictionAppliesTo_wheelchairUsers = 10, - RestrictionAppliesTo_visualDisabilities = 11, - RestrictionAppliesTo_audioDisabilities = 12, - RestrictionAppliesTo_otherUnknownDisabilities = 13 - /* - * Enumeration is extensible - */ -} e_RestrictionAppliesTo; - -/* RestrictionAppliesTo */ -typedef long RestrictionAppliesTo_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; -asn_struct_free_f RestrictionAppliesTo_free; -asn_struct_print_f RestrictionAppliesTo_print; -asn_constr_check_f RestrictionAppliesTo_constraint; -ber_type_decoder_f RestrictionAppliesTo_decode_ber; -der_type_encoder_f RestrictionAppliesTo_encode_der; -xer_type_decoder_f RestrictionAppliesTo_decode_xer; -xer_type_encoder_f RestrictionAppliesTo_encode_xer; -per_type_decoder_f RestrictionAppliesTo_decode_uper; -per_type_encoder_f RestrictionAppliesTo_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionAppliesTo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h deleted file mode 100644 index d3abe410e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionClassAssignment_H_ -#define _RestrictionClassAssignment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionClassID.h" -#include "RestrictionUserTypeList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassAssignment */ -typedef struct RestrictionClassAssignment { - RestrictionClassID_t id; - RestrictionUserTypeList_t users; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassAssignment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassAssignment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h deleted file mode 100644 index 9e9b37495..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionClassID_H_ -#define _RestrictionClassID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassID */ -typedef long RestrictionClassID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; -asn_struct_free_f RestrictionClassID_free; -asn_struct_print_f RestrictionClassID_print; -asn_constr_check_f RestrictionClassID_constraint; -ber_type_decoder_f RestrictionClassID_decode_ber; -der_type_encoder_f RestrictionClassID_encode_der; -xer_type_decoder_f RestrictionClassID_decode_xer; -xer_type_encoder_f RestrictionClassID_encode_xer; -per_type_decoder_f RestrictionClassID_decode_uper; -per_type_encoder_f RestrictionClassID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h deleted file mode 100644 index be21b6153..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionClassList_H_ -#define _RestrictionClassList_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 RestrictionClassAssignment; - -/* RestrictionClassList */ -typedef struct RestrictionClassList { - A_SEQUENCE_OF(struct RestrictionClassAssignment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RestrictionClassAssignment.h" - -#endif /* _RestrictionClassList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h deleted file mode 100644 index db0bebf97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionUserType_H_ -#define _RestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionAppliesTo.h" -#include "RegionalRestrictionUserType.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionUserType_PR { - RestrictionUserType_PR_NOTHING, /* No components present */ - RestrictionUserType_PR_basicType, - RestrictionUserType_PR_regional -} RestrictionUserType_PR; - -/* RestrictionUserType */ -typedef struct RestrictionUserType { - RestrictionUserType_PR present; - union RestrictionUserType_u { - RestrictionAppliesTo_t basicType; - RegionalRestrictionUserType_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h deleted file mode 100644 index dd16b5fa5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RestrictionUserTypeList_H_ -#define _RestrictionUserTypeList_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 RestrictionUserType; - -/* RestrictionUserTypeList */ -typedef struct RestrictionUserTypeList { - A_SEQUENCE_OF(struct RestrictionUserType) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserTypeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RestrictionUserType.h" - -#endif /* _RestrictionUserTypeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h deleted file mode 100644 index 1f9be8fd3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadLaneSetList_H_ -#define _RoadLaneSetList_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 GenericLane; - -/* RoadLaneSetList */ -typedef struct RoadLaneSetList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadLaneSetList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "GenericLane.h" - -#endif /* _RoadLaneSetList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h deleted file mode 100644 index 5e2ff31d4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadRegulatorID_H_ -#define _RoadRegulatorID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadRegulatorID */ -typedef long RoadRegulatorID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; -asn_struct_free_f RoadRegulatorID_free; -asn_struct_print_f RoadRegulatorID_print; -asn_constr_check_f RoadRegulatorID_constraint; -ber_type_decoder_f RoadRegulatorID_decode_ber; -der_type_encoder_f RoadRegulatorID_encode_der; -xer_type_decoder_f RoadRegulatorID_decode_xer; -xer_type_encoder_f RoadRegulatorID_encode_xer; -per_type_decoder_f RoadRegulatorID_decode_uper; -per_type_encoder_f RoadRegulatorID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadRegulatorID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h deleted file mode 100644 index b060367db..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSegment_H_ -#define _RoadSegment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "RoadSegmentReferenceID.h" -#include "MsgCount.h" -#include "Position3D-2.h" -#include "LaneWidth.h" -#include "RoadLaneSetList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct Reg_RoadSegment; - -/* RoadSegment */ -typedef struct RoadSegment { - DescriptiveName_t *name /* OPTIONAL */; - RoadSegmentReferenceID_t id; - MsgCount_t revision; - Position3D_2_t refPoint; - LaneWidth_t *laneWidth /* OPTIONAL */; - struct SpeedLimitList *speedLimits /* OPTIONAL */; - RoadLaneSetList_t roadLaneSet; - struct Reg_RoadSegment *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SpeedLimitList.h" -#include "RegionalRoadSegment.h" - -#endif /* _RoadSegment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h deleted file mode 100644 index 10e1ed89a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSegmentID_H_ -#define _RoadSegmentID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentID */ -typedef long RoadSegmentID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; -asn_struct_free_f RoadSegmentID_free; -asn_struct_print_f RoadSegmentID_print; -asn_constr_check_f RoadSegmentID_constraint; -ber_type_decoder_f RoadSegmentID_decode_ber; -der_type_encoder_f RoadSegmentID_encode_der; -xer_type_decoder_f RoadSegmentID_decode_xer; -xer_type_encoder_f RoadSegmentID_encode_xer; -per_type_decoder_f RoadSegmentID_decode_uper; -per_type_encoder_f RoadSegmentID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h deleted file mode 100644 index 5e67f4bf2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSegmentList_H_ -#define _RoadSegmentList_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 RoadSegment; - -/* RoadSegmentList */ -typedef struct RoadSegmentList { - A_SEQUENCE_OF(struct RoadSegment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RoadSegment.h" - -#endif /* _RoadSegmentList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h deleted file mode 100644 index 50823f7f7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSegmentReferenceID_H_ -#define _RoadSegmentReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "RoadSegmentID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentReferenceID */ -typedef struct RoadSegmentReferenceID { - RoadRegulatorID_t *region /* OPTIONAL */; - RoadSegmentID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h deleted file mode 100644 index 2a7ca1f20..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSideAlert_H_ -#define _RoadSideAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "ITIScodes.h" -#include "Priority.h" -#include "HeadingSlice.h" -#include "Extent.h" -#include "FurtherInfoID.h" -#include "MsgCRC.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; - -/* RoadSideAlert */ -typedef struct RoadSideAlert { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - ITIScodes_t typeEvent; - struct RoadSideAlert__description { - A_SEQUENCE_OF(ITIScodes_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - Priority_t *priority /* OPTIONAL */; - HeadingSlice_t *heading /* OPTIONAL */; - Extent_t *extent /* OPTIONAL */; - struct FullPositionVector *positon /* OPTIONAL */; - FurtherInfoID_t *furtherInfoID /* OPTIONAL */; - MsgCRC_t crc; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSideAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" - -#endif /* _RoadSideAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h deleted file mode 100644 index c1e0f4edf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadSignID_H_ -#define _RoadSignID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "HeadingSlice.h" -#include "MUTCDCode.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSignID */ -typedef struct RoadSignID { - Position3D_t position; - HeadingSlice_t viewAngle; - MUTCDCode_t *mutcdCode /* OPTIONAL */; - MsgCRC_t *crc /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSignID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSignID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h deleted file mode 100644 index e63e948a2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _RoadwayCrownAngle_H_ -#define _RoadwayCrownAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadwayCrownAngle */ -typedef long RoadwayCrownAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; -asn_struct_free_f RoadwayCrownAngle_free; -asn_struct_print_f RoadwayCrownAngle_print; -asn_constr_check_f RoadwayCrownAngle_constraint; -ber_type_decoder_f RoadwayCrownAngle_decode_ber; -der_type_encoder_f RoadwayCrownAngle_encode_der; -xer_type_decoder_f RoadwayCrownAngle_decode_xer; -xer_type_encoder_f RoadwayCrownAngle_encode_xer; -per_type_decoder_f RoadwayCrownAngle_decode_uper; -per_type_encoder_f RoadwayCrownAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadwayCrownAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h deleted file mode 100644 index 26bbb4e90..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SPAT_H_ -#define _SPAT_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID2.h" -#include "DSRCmsgSubID.h" -#include "DescriptiveName.h" -#include "IntersectionStateList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_SPAT; - -/* SPAT */ -typedef struct SPAT { - DSRCmsgID2_t msgID; - DSRCmsgSubID_t *msgSubID /* OPTIONAL */; - DescriptiveName_t *name /* OPTIONAL */; - IntersectionStateList_t intersections; - struct Reg_SPAT *regional /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SPAT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SPAT; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalSPAT.h" - -#endif /* _SPAT_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h deleted file mode 100644 index 5ff220885..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Sample_H_ -#define _Sample_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Sample */ -typedef struct Sample { - long sampleStart; - long sampleEnd; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Sample_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Sample; - -#ifdef __cplusplus -} -#endif - -#endif /* _Sample_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h deleted file mode 100644 index 34ffa0928..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Scale_B12_H_ -#define _Scale_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Scale-B12 */ -typedef long Scale_B12_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; -asn_struct_free_f Scale_B12_free; -asn_struct_print_f Scale_B12_print; -asn_constr_check_f Scale_B12_constraint; -ber_type_decoder_f Scale_B12_decode_ber; -der_type_encoder_f Scale_B12_encode_der; -xer_type_decoder_f Scale_B12_decode_xer; -xer_type_encoder_f Scale_B12_encode_xer; -per_type_decoder_f Scale_B12_decode_uper; -per_type_encoder_f Scale_B12_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Scale_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h deleted file mode 100644 index 9c78412c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_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_r41/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h deleted file mode 100644 index 782b19b69..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Second_H_ -#define _Second_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Second */ -typedef long Second_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Second; -asn_struct_free_f Second_free; -asn_struct_print_f Second_print; -asn_constr_check_f Second_constraint; -ber_type_decoder_f Second_decode_ber; -der_type_encoder_f Second_encode_der; -xer_type_decoder_f Second_decode_xer; -xer_type_encoder_f Second_encode_xer; -per_type_decoder_f Second_decode_uper; -per_type_encoder_f Second_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Second_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h deleted file mode 100644 index ab18ba73b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SecondsAngle_H_ -#define _SecondsAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SecondsAngle */ -typedef long SecondsAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; -asn_struct_free_f SecondsAngle_free; -asn_struct_print_f SecondsAngle_print; -asn_constr_check_f SecondsAngle_constraint; -ber_type_decoder_f SecondsAngle_decode_ber; -der_type_encoder_f SecondsAngle_encode_der; -xer_type_decoder_f SecondsAngle_decode_xer; -xer_type_encoder_f SecondsAngle_encode_xer; -per_type_decoder_f SecondsAngle_decode_uper; -per_type_encoder_f SecondsAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SecondsAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h deleted file mode 100644 index b820ee2cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SegmentAttribute_H_ -#define _SegmentAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SegmentAttribute { - SegmentAttribute_reserved = 0, - SegmentAttribute_doNotBlock = 1, - SegmentAttribute_whiteLine = 2, - SegmentAttribute_mergingLaneLeft = 3, - SegmentAttribute_mergingLaneRight = 4, - SegmentAttribute_curbOnLeft = 5, - SegmentAttribute_curbOnRight = 6, - SegmentAttribute_loadingzoneOnLeft = 7, - SegmentAttribute_loadingzoneOnRight = 8, - SegmentAttribute_turnOutPointOnLeft = 9, - SegmentAttribute_turnOutPointOnRight = 10, - SegmentAttribute_adjacentParkingOnLeft = 11, - SegmentAttribute_adjacentParkingOnRight = 12, - SegmentAttribute_adjacentBikeLaneOnLeft = 13, - SegmentAttribute_adjacentBikeLaneOnRight = 14, - SegmentAttribute_sharedBikeLane = 15, - SegmentAttribute_bikeBoxInFront = 16, - SegmentAttribute_transitStopOnLeft = 17, - SegmentAttribute_transitStopOnRight = 18, - SegmentAttribute_transitStopInLane = 19, - SegmentAttribute_sharedWithTrackedVehicle = 20, - SegmentAttribute_safeIsland = 21, - SegmentAttribute_lowCurbsPresent = 22, - SegmentAttribute_rumbleStripPresent = 23, - SegmentAttribute_audibleSignalingPresent = 24, - SegmentAttribute_adaptiveTimingPresent = 25, - SegmentAttribute_rfSignalRequestPresent = 26, - SegmentAttribute_partialCurbIntrusion = 27, - SegmentAttribute_taperToLeft = 28, - SegmentAttribute_taperToRight = 29, - SegmentAttribute_taperToCenterLine = 30, - SegmentAttribute_parallelParking = 31, - SegmentAttribute_headInParking = 32, - SegmentAttribute_freeParking = 33, - SegmentAttribute_timeRestrictionsOnParking = 34, - SegmentAttribute_costToPark = 35, - SegmentAttribute_midBlockCurbPresent = 36, - SegmentAttribute_unEvenPavementPresent = 37 - /* - * Enumeration is extensible - */ -} e_SegmentAttribute; - -/* SegmentAttribute */ -typedef long SegmentAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttribute; -asn_struct_free_f SegmentAttribute_free; -asn_struct_print_f SegmentAttribute_print; -asn_constr_check_f SegmentAttribute_constraint; -ber_type_decoder_f SegmentAttribute_decode_ber; -der_type_encoder_f SegmentAttribute_encode_der; -xer_type_decoder_f SegmentAttribute_decode_xer; -xer_type_encoder_f SegmentAttribute_encode_xer; -per_type_decoder_f SegmentAttribute_decode_uper; -per_type_encoder_f SegmentAttribute_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h deleted file mode 100644 index c46717c87..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SegmentAttributeList_H_ -#define _SegmentAttributeList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SegmentAttribute.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SegmentAttributeList */ -typedef struct SegmentAttributeList { - A_SEQUENCE_OF(SegmentAttribute_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SegmentAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeList; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h deleted file mode 100644 index f550251de..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ShapePointSet_H_ -#define _ShapePointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "NodeList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* ShapePointSet */ -typedef struct ShapePointSet { - struct Position3D *anchor /* OPTIONAL */; - LaneWidth_t *laneWidth /* OPTIONAL */; - DirectionOfUse_t *directionality /* OPTIONAL */; - NodeList_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ShapePointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D.h" - -#endif /* _ShapePointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h deleted file mode 100644 index d7df0a61d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignPrority_H_ -#define _SignPrority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignPrority */ -typedef long SignPrority_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignPrority; -asn_struct_free_f SignPrority_free; -asn_struct_print_f SignPrority_print; -asn_constr_check_f SignPrority_constraint; -ber_type_decoder_f SignPrority_decode_ber; -der_type_encoder_f SignPrority_encode_der; -xer_type_decoder_f SignPrority_decode_xer; -xer_type_encoder_f SignPrority_encode_xer; -per_type_decoder_f SignPrority_decode_uper; -per_type_encoder_f SignPrority_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignPrority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h deleted file mode 100644 index 7ed7c0403..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalControlState_H_ -#define _SignalControlState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalControlState */ -typedef OCTET_STRING_t SignalControlState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalControlState; -asn_struct_free_f SignalControlState_free; -asn_struct_print_f SignalControlState_print; -asn_constr_check_f SignalControlState_constraint; -ber_type_decoder_f SignalControlState_decode_ber; -der_type_encoder_f SignalControlState_encode_der; -xer_type_decoder_f SignalControlState_decode_xer; -xer_type_encoder_f SignalControlState_encode_xer; -per_type_decoder_f SignalControlState_decode_uper; -per_type_encoder_f SignalControlState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalControlState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h deleted file mode 100644 index 36c0f8092..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalControlZone_H_ -#define _SignalControlZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "SignalReqScheme.h" -#include "LaneNumber.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "LaneWidth.h" -#include "NodeList.h" -#include "constr_SEQUENCE.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SignalControlZone__data_PR { - SignalControlZone__data_PR_NOTHING, /* No components present */ - SignalControlZone__data_PR_laneSet, - SignalControlZone__data_PR_zones -} SignalControlZone__data_PR; - -/* SignalControlZone */ -typedef struct SignalControlZone { - DescriptiveName_t *name /* OPTIONAL */; - SignalReqScheme_t pValue; - struct SignalControlZone__data { - SignalControlZone__data_PR present; - union SignalControlZone__data_u { - struct SignalControlZone__data__laneSet { - A_SEQUENCE_OF(LaneNumber_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } laneSet; - struct SignalControlZone__data__zones { - A_SEQUENCE_OF(struct SignalControlZone__data__zones__Member { - struct enclosed { - A_SEQUENCE_OF(LaneNumber_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *enclosed; - LaneWidth_t *laneWidth /* OPTIONAL */; - NodeList_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } zones; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } data; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalControlZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalControlZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h deleted file mode 100644 index c005ef931..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalGroupID_H_ -#define _SignalGroupID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalGroupID */ -typedef long SignalGroupID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; -asn_struct_free_f SignalGroupID_free; -asn_struct_print_f SignalGroupID_print; -asn_constr_check_f SignalGroupID_constraint; -ber_type_decoder_f SignalGroupID_decode_ber; -der_type_encoder_f SignalGroupID_encode_der; -xer_type_decoder_f SignalGroupID_decode_xer; -xer_type_encoder_f SignalGroupID_encode_xer; -per_type_decoder_f SignalGroupID_decode_uper; -per_type_encoder_f SignalGroupID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalGroupID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h deleted file mode 100644 index d51d007b1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalHeadLocation_H_ -#define _SignalHeadLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPoint.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalHeadLocation */ -typedef struct SignalHeadLocation { - NodeOffsetPoint_t node; - SignalGroupID_t signalGroupID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalHeadLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h deleted file mode 100644 index 589018bbb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalHeadLocationList_H_ -#define _SignalHeadLocationList_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 SignalHeadLocation; - -/* SignalHeadLocationList */ -typedef struct SignalHeadLocationList { - A_SEQUENCE_OF(struct SignalHeadLocation) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocationList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalHeadLocation.h" - -#endif /* _SignalHeadLocationList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h deleted file mode 100644 index c44c62fe9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalReqScheme_H_ -#define _SignalReqScheme_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalReqScheme */ -typedef OCTET_STRING_t SignalReqScheme_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; -asn_struct_free_f SignalReqScheme_free; -asn_struct_print_f SignalReqScheme_print; -asn_constr_check_f SignalReqScheme_constraint; -ber_type_decoder_f SignalReqScheme_decode_ber; -der_type_encoder_f SignalReqScheme_encode_der; -xer_type_decoder_f SignalReqScheme_decode_xer; -xer_type_encoder_f SignalReqScheme_encode_xer; -per_type_decoder_f SignalReqScheme_decode_uper; -per_type_encoder_f SignalReqScheme_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalReqScheme_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h deleted file mode 100644 index 6748c71eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalRequest_H_ -#define _SignalRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IntersectionID.h" -#include "SignalReqScheme.h" -#include "LaneNumber.h" -#include "NTCIPVehicleclass.h" -#include "CodeWord.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalRequest */ -typedef struct SignalRequest { - IntersectionID_t id; - SignalReqScheme_t *isCancel /* OPTIONAL */; - SignalReqScheme_t *requestedAction /* OPTIONAL */; - LaneNumber_t *inLane /* OPTIONAL */; - LaneNumber_t *outLane /* OPTIONAL */; - NTCIPVehicleclass_t type; - CodeWord_t *codeWord /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h deleted file mode 100644 index 889c1c710..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalRequestMsg_H_ -#define _SignalRequestMsg_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "SignalRequest.h" -#include "TransitStatus.h" -#include "BSMblob.h" -#include "VehicleRequestStatus.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DTime; -struct VehicleIdent; - -/* SignalRequestMsg */ -typedef struct SignalRequestMsg { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - SignalRequest_t request; - struct DTime *timeOfService /* OPTIONAL */; - struct DTime *endOfService /* OPTIONAL */; - TransitStatus_t *transitStatus /* OPTIONAL */; - struct VehicleIdent *vehicleVIN /* OPTIONAL */; - BSMblob_t vehicleData; - VehicleRequestStatus_t *status /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequestMsg_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMsg; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "DTime.h" -#include "VehicleIdent.h" - -#endif /* _SignalRequestMsg_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h deleted file mode 100644 index a7acb3618..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalState_H_ -#define _SignalState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalState */ -typedef OCTET_STRING_t SignalState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalState; -asn_struct_free_f SignalState_free; -asn_struct_print_f SignalState_print; -asn_constr_check_f SignalState_constraint; -ber_type_decoder_f SignalState_decode_ber; -der_type_encoder_f SignalState_encode_der; -xer_type_decoder_f SignalState_decode_xer; -xer_type_encoder_f SignalState_encode_xer; -per_type_decoder_f SignalState_decode_uper; -per_type_encoder_f SignalState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h deleted file mode 100644 index 8c8ab6951..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SignalStatusMessage_H_ -#define _SignalStatusMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "MsgCount.h" -#include "IntersectionID.h" -#include "IntersectionStatusObject.h" -#include "TransitStatus.h" -#include "SignalState.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleIdent; - -/* SignalStatusMessage */ -typedef struct SignalStatusMessage { - DSRCmsgID_t msgID; - MsgCount_t msgCnt; - IntersectionID_t id; - IntersectionStatusObject_t status; - struct SignalStatusMessage__priority { - A_SEQUENCE_OF(SignalState_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *priority; - struct VehicleIdent *priorityCause /* OPTIONAL */; - struct SignalStatusMessage__prempt { - A_SEQUENCE_OF(SignalState_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *prempt; - struct VehicleIdent *preemptCause /* OPTIONAL */; - TransitStatus_t *transitStatus /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalStatusMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleIdent.h" - -#endif /* _SignalStatusMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h deleted file mode 100644 index 94261caae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SirenInUse_H_ -#define _SirenInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SirenInUse { - SirenInUse_unavailable = 0, - SirenInUse_notInUse = 1, - SirenInUse_inUse = 2, - SirenInUse_reserved = 3 -} e_SirenInUse; - -/* SirenInUse */ -typedef long SirenInUse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; -asn_struct_free_f SirenInUse_free; -asn_struct_print_f SirenInUse_print; -asn_constr_check_f SirenInUse_constraint; -ber_type_decoder_f SirenInUse_decode_ber; -der_type_encoder_f SirenInUse_encode_der; -xer_type_decoder_f SirenInUse_decode_xer; -xer_type_encoder_f SirenInUse_encode_xer; -per_type_decoder_f SirenInUse_decode_uper; -per_type_encoder_f SirenInUse_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SirenInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h deleted file mode 100644 index 55eb3bb53..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Snapshot_H_ -#define _Snapshot_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "FullPositionVector.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleSafetyExtension; -struct VehicleStatus; - -/* Snapshot */ -typedef struct Snapshot { - FullPositionVector_t thePosition; - struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; - struct VehicleStatus *datSet /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Snapshot_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Snapshot; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleSafetyExtension.h" -#include "VehicleStatus.h" - -#endif /* _Snapshot_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h deleted file mode 100644 index 46f00480e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SnapshotDistance_H_ -#define _SnapshotDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotDistance */ -typedef struct SnapshotDistance { - long d1; - long s1; - long d2; - long s2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotDistance_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h deleted file mode 100644 index 85de5c5e8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SnapshotTime_H_ -#define _SnapshotTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotTime */ -typedef struct SnapshotTime { - long t1; - long s1; - long t2; - long s2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h deleted file mode 100644 index 823595b1e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Speed_H_ -#define _Speed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Speed */ -typedef long Speed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Speed; -asn_struct_free_f Speed_free; -asn_struct_print_f Speed_print; -asn_constr_check_f Speed_constraint; -ber_type_decoder_f Speed_decode_ber; -der_type_encoder_f Speed_encode_der; -xer_type_decoder_f Speed_decode_xer; -xer_type_encoder_f Speed_encode_xer; -per_type_decoder_f Speed_decode_uper; -per_type_encoder_f Speed_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Speed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h deleted file mode 100644 index 07c681fcd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedAdvice_H_ -#define _SpeedAdvice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedAdvice */ -typedef long SpeedAdvice_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; -asn_struct_free_f SpeedAdvice_free; -asn_struct_print_f SpeedAdvice_print; -asn_constr_check_f SpeedAdvice_constraint; -ber_type_decoder_f SpeedAdvice_decode_ber; -der_type_encoder_f SpeedAdvice_encode_der; -xer_type_decoder_f SpeedAdvice_decode_xer; -xer_type_encoder_f SpeedAdvice_encode_xer; -per_type_decoder_f SpeedAdvice_decode_uper; -per_type_encoder_f SpeedAdvice_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedAdvice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h deleted file mode 100644 index a1c5d6c38..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedConfidence_H_ -#define _SpeedConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedConfidence { - SpeedConfidence_unavailable = 0, - SpeedConfidence_prec100ms = 1, - SpeedConfidence_prec10ms = 2, - SpeedConfidence_prec5ms = 3, - SpeedConfidence_prec1ms = 4, - SpeedConfidence_prec0_1ms = 5, - SpeedConfidence_prec0_05ms = 6, - SpeedConfidence_prec0_01ms = 7 -} e_SpeedConfidence; - -/* SpeedConfidence */ -typedef long SpeedConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; -asn_struct_free_f SpeedConfidence_free; -asn_struct_print_f SpeedConfidence_print; -asn_constr_check_f SpeedConfidence_constraint; -ber_type_decoder_f SpeedConfidence_decode_ber; -der_type_encoder_f SpeedConfidence_encode_der; -xer_type_decoder_f SpeedConfidence_decode_xer; -xer_type_encoder_f SpeedConfidence_encode_xer; -per_type_decoder_f SpeedConfidence_decode_uper; -per_type_encoder_f SpeedConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h deleted file mode 100644 index 50e883819..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedLimit_H_ -#define _SpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "IA5String.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum item_sl_PR { - item_sl_PR_NOTHING, /* No components present */ - item_sl_PR_itis, - item_sl_PR_text -} item_sl_PR; - -/* SpeedLimit */ -typedef struct SpeedLimit { - A_SEQUENCE_OF(struct SpeedLimit__Member { - struct item_sl { - item_sl_PR present; - union item_sl_u { - ITIScodes_t itis; - IA5String_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item_sl; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h deleted file mode 100644 index a183eaa67..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedLimitList_H_ -#define _SpeedLimitList_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 RegulatorySpeedLimit; - -/* SpeedLimitList */ -typedef struct SpeedLimitList { - A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimitList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegulatorySpeedLimit.h" - -#endif /* _SpeedLimitList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h deleted file mode 100644 index 32fc34010..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedLimitType_H_ -#define _SpeedLimitType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedLimitType { - SpeedLimitType_unknown = 0, - SpeedLimitType_maxSpeedInSchoolZone = 1, - SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, - SpeedLimitType_maxSpeedInConstructionZone = 3, - SpeedLimitType_vehicleMinSpeed = 4, - SpeedLimitType_vehicleMaxSpeed = 5, - SpeedLimitType_vehicleNightMaxSpeed = 6, - SpeedLimitType_truckMinSpeed = 7, - SpeedLimitType_truckMaxSpeed = 8, - SpeedLimitType_truckNightMaxSpeed = 9, - SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, - SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, - SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 - /* - * Enumeration is extensible - */ -} e_SpeedLimitType; - -/* SpeedLimitType */ -typedef long SpeedLimitType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; -asn_struct_free_f SpeedLimitType_free; -asn_struct_print_f SpeedLimitType_print; -asn_constr_check_f SpeedLimitType_constraint; -ber_type_decoder_f SpeedLimitType_decode_ber; -der_type_encoder_f SpeedLimitType_encode_der; -xer_type_decoder_f SpeedLimitType_decode_xer; -xer_type_encoder_f SpeedLimitType_encode_xer; -per_type_decoder_f SpeedLimitType_decode_uper; -per_type_encoder_f SpeedLimitType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimitType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h deleted file mode 100644 index 3fb27ac84..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpeedandHeadingandThrottleConfidence_H_ -#define _SpeedandHeadingandThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedandHeadingandThrottleConfidence */ -typedef OCTET_STRING_t SpeedandHeadingandThrottleConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; -asn_struct_free_f SpeedandHeadingandThrottleConfidence_free; -asn_struct_print_f SpeedandHeadingandThrottleConfidence_print; -asn_constr_check_f SpeedandHeadingandThrottleConfidence_constraint; -ber_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_ber; -der_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_der; -xer_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_xer; -xer_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_xer; -per_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_uper; -per_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h deleted file mode 100644 index c916960bb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _StabilityControlStatus_H_ -#define _StabilityControlStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum StabilityControlStatus { - StabilityControlStatus_unavailable = 0, - StabilityControlStatus_off = 1, - StabilityControlStatus_on = 2 -} e_StabilityControlStatus; - -/* StabilityControlStatus */ -typedef long StabilityControlStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; -asn_struct_free_f StabilityControlStatus_free; -asn_struct_print_f StabilityControlStatus_print; -asn_constr_check_f StabilityControlStatus_constraint; -ber_type_decoder_f StabilityControlStatus_decode_ber; -der_type_encoder_f StabilityControlStatus_encode_der; -xer_type_decoder_f StabilityControlStatus_decode_xer; -xer_type_encoder_f StabilityControlStatus_encode_xer; -per_type_decoder_f StabilityControlStatus_decode_uper; -per_type_encoder_f StabilityControlStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StabilityControlStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h deleted file mode 100644 index 8c8f3ba86..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _StationID_H_ -#define _StationID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* StationID */ -typedef unsigned long StationID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_StationID; -asn_struct_free_f StationID_free; -asn_struct_print_f StationID_print; -asn_constr_check_f StationID_constraint; -ber_type_decoder_f StationID_decode_ber; -der_type_encoder_f StationID_encode_der; -xer_type_decoder_f StationID_decode_xer; -xer_type_encoder_f StationID_encode_xer; -per_type_decoder_f StationID_decode_uper; -per_type_encoder_f StationID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StationID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h deleted file mode 100644 index 4ebbe95e8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SteeringAxleLubePressure_H_ -#define _SteeringAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleLubePressure */ -typedef long SteeringAxleLubePressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; -asn_struct_free_f SteeringAxleLubePressure_free; -asn_struct_print_f SteeringAxleLubePressure_print; -asn_constr_check_f SteeringAxleLubePressure_constraint; -ber_type_decoder_f SteeringAxleLubePressure_decode_ber; -der_type_encoder_f SteeringAxleLubePressure_encode_der; -xer_type_decoder_f SteeringAxleLubePressure_decode_xer; -xer_type_encoder_f SteeringAxleLubePressure_encode_xer; -per_type_decoder_f SteeringAxleLubePressure_decode_uper; -per_type_encoder_f SteeringAxleLubePressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h deleted file mode 100644 index f17ee9f75..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SteeringAxleTemperature_H_ -#define _SteeringAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleTemperature */ -typedef long SteeringAxleTemperature_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; -asn_struct_free_f SteeringAxleTemperature_free; -asn_struct_print_f SteeringAxleTemperature_print; -asn_constr_check_f SteeringAxleTemperature_constraint; -ber_type_decoder_f SteeringAxleTemperature_decode_ber; -der_type_encoder_f SteeringAxleTemperature_encode_der; -xer_type_decoder_f SteeringAxleTemperature_decode_xer; -xer_type_encoder_f SteeringAxleTemperature_encode_xer; -per_type_decoder_f SteeringAxleTemperature_decode_uper; -per_type_encoder_f SteeringAxleTemperature_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h deleted file mode 100644 index ba8c01d49..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SteeringWheelAngle_H_ -#define _SteeringWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngle */ -typedef OCTET_STRING_t SteeringWheelAngle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; -asn_struct_free_f SteeringWheelAngle_free; -asn_struct_print_f SteeringWheelAngle_print; -asn_constr_check_f SteeringWheelAngle_constraint; -ber_type_decoder_f SteeringWheelAngle_decode_ber; -der_type_encoder_f SteeringWheelAngle_encode_der; -xer_type_decoder_f SteeringWheelAngle_decode_xer; -xer_type_encoder_f SteeringWheelAngle_encode_xer; -per_type_decoder_f SteeringWheelAngle_decode_uper; -per_type_encoder_f SteeringWheelAngle_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h deleted file mode 100644 index e181bb3b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SteeringWheelAngleConfidence_H_ -#define _SteeringWheelAngleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SteeringWheelAngleConfidence { - SteeringWheelAngleConfidence_unavailable = 0, - SteeringWheelAngleConfidence_prec2deg = 1, - SteeringWheelAngleConfidence_prec1deg = 2, - SteeringWheelAngleConfidence_prec0_02deg = 3 -} e_SteeringWheelAngleConfidence; - -/* SteeringWheelAngleConfidence */ -typedef long SteeringWheelAngleConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; -asn_struct_free_f SteeringWheelAngleConfidence_free; -asn_struct_print_f SteeringWheelAngleConfidence_print; -asn_constr_check_f SteeringWheelAngleConfidence_constraint; -ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; -der_type_encoder_f SteeringWheelAngleConfidence_encode_der; -xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; -xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; -per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; -per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h deleted file mode 100644 index 237a24e64..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SteeringWheelAngleRateOfChange_H_ -#define _SteeringWheelAngleRateOfChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngleRateOfChange */ -typedef long SteeringWheelAngleRateOfChange_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; -asn_struct_free_f SteeringWheelAngleRateOfChange_free; -asn_struct_print_f SteeringWheelAngleRateOfChange_print; -asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; -ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; -der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; -xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; -xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; -per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; -per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleRateOfChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h deleted file mode 100644 index dce10daf1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SummerTime_H_ -#define _SummerTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SummerTime { - SummerTime_notInSummerTime = 0, - SummerTime_inSummerTime = 1 -} e_SummerTime; - -/* SummerTime */ -typedef long SummerTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SummerTime; -asn_struct_free_f SummerTime_free; -asn_struct_print_f SummerTime_print; -asn_constr_check_f SummerTime_constraint; -ber_type_decoder_f SummerTime_decode_ber; -der_type_encoder_f SummerTime_encode_der; -xer_type_decoder_f SummerTime_decode_xer; -xer_type_encoder_f SummerTime_encode_xer; -per_type_decoder_f SummerTime_decode_uper; -per_type_encoder_f SummerTime_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SummerTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h deleted file mode 100644 index a4adfd6de..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SunSensor_H_ -#define _SunSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SunSensor */ -typedef long SunSensor_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SunSensor; -asn_struct_free_f SunSensor_free; -asn_struct_print_f SunSensor_print; -asn_constr_check_f SunSensor_constraint; -ber_type_decoder_f SunSensor_decode_ber; -der_type_encoder_f SunSensor_encode_der; -xer_type_decoder_f SunSensor_decode_xer; -xer_type_encoder_f SunSensor_encode_xer; -per_type_decoder_f SunSensor_decode_uper; -per_type_encoder_f SunSensor_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SunSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h deleted file mode 100644 index 8e88d65b5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TemporaryID_H_ -#define _TemporaryID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TemporaryID */ -typedef OCTET_STRING_t TemporaryID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; -asn_struct_free_f TemporaryID_free; -asn_struct_print_f TemporaryID_print; -asn_constr_check_f TemporaryID_constraint; -ber_type_decoder_f TemporaryID_decode_ber; -der_type_encoder_f TemporaryID_encode_der; -xer_type_decoder_f TemporaryID_decode_xer; -xer_type_encoder_f TemporaryID_encode_xer; -per_type_decoder_f TemporaryID_decode_uper; -per_type_encoder_f TemporaryID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TemporaryID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h deleted file mode 100644 index 89ab555d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TenthSecond_H_ -#define _TenthSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TenthSecond */ -typedef long TenthSecond_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; -asn_struct_free_f TenthSecond_free; -asn_struct_print_f TenthSecond_print; -asn_constr_check_f TenthSecond_constraint; -ber_type_decoder_f TenthSecond_decode_ber; -der_type_encoder_f TenthSecond_encode_der; -xer_type_decoder_f TenthSecond_decode_xer; -xer_type_encoder_f TenthSecond_encode_xer; -per_type_decoder_f TenthSecond_decode_uper; -per_type_encoder_f TenthSecond_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TenthSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h deleted file mode 100644 index 492fde2ee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TermDistance_H_ -#define _TermDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermDistance */ -typedef long TermDistance_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TermDistance; -asn_struct_free_f TermDistance_free; -asn_struct_print_f TermDistance_print; -asn_constr_check_f TermDistance_constraint; -ber_type_decoder_f TermDistance_decode_ber; -der_type_encoder_f TermDistance_encode_der; -xer_type_decoder_f TermDistance_decode_xer; -xer_type_encoder_f TermDistance_encode_xer; -per_type_decoder_f TermDistance_decode_uper; -per_type_encoder_f TermDistance_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h deleted file mode 100644 index b2a30dac9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TermTime_H_ -#define _TermTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermTime */ -typedef long TermTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TermTime; -asn_struct_free_f TermTime_free; -asn_struct_print_f TermTime_print; -asn_constr_check_f TermTime_constraint; -ber_type_decoder_f TermTime_decode_ber; -der_type_encoder_f TermTime_encode_der; -xer_type_decoder_f TermTime_decode_xer; -xer_type_encoder_f TermTime_encode_xer; -per_type_decoder_f TermTime_decode_uper; -per_type_encoder_f TermTime_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h deleted file mode 100644 index b75595adc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ThrottleConfidence_H_ -#define _ThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ThrottleConfidence { - ThrottleConfidence_unavailable = 0, - ThrottleConfidence_prec10percent = 1, - ThrottleConfidence_prec1percent = 2, - ThrottleConfidence_prec0_5percent = 3 -} e_ThrottleConfidence; - -/* ThrottleConfidence */ -typedef long ThrottleConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; -asn_struct_free_f ThrottleConfidence_free; -asn_struct_print_f ThrottleConfidence_print; -asn_constr_check_f ThrottleConfidence_constraint; -ber_type_decoder_f ThrottleConfidence_decode_ber; -der_type_encoder_f ThrottleConfidence_encode_der; -xer_type_decoder_f ThrottleConfidence_decode_xer; -xer_type_encoder_f ThrottleConfidence_encode_xer; -per_type_decoder_f ThrottleConfidence_decode_uper; -per_type_encoder_f ThrottleConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h deleted file mode 100644 index 4601c3326..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ThrottlePosition_H_ -#define _ThrottlePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ThrottlePosition */ -typedef long ThrottlePosition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; -asn_struct_free_f ThrottlePosition_free; -asn_struct_print_f ThrottlePosition_print; -asn_constr_check_f ThrottlePosition_constraint; -ber_type_decoder_f ThrottlePosition_decode_ber; -der_type_encoder_f ThrottlePosition_encode_der; -xer_type_decoder_f ThrottlePosition_decode_xer; -xer_type_encoder_f ThrottlePosition_encode_xer; -per_type_decoder_f ThrottlePosition_decode_uper; -per_type_encoder_f ThrottlePosition_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottlePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h deleted file mode 100644 index 3c3c652d7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TimeChangeDetails_H_ -#define _TimeChangeDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeMark.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeChangeDetails */ -typedef struct TimeChangeDetails { - TimeMark_t *startTime /* OPTIONAL */; - TimeMark_t minEndTime; - TimeMark_t *maxEndTime /* OPTIONAL */; - TimeMark_t *likelyTime /* OPTIONAL */; - TimeIntervalConfidence_t *confidence /* OPTIONAL */; - TimeMark_t *nextTime /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TimeChangeDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeChangeDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h deleted file mode 100644 index fe2203edf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TimeConfidence_H_ -#define _TimeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TimeConfidence { - TimeConfidence_unavailable = 0, - TimeConfidence_time_100_000 = 1, - TimeConfidence_time_050_000 = 2, - TimeConfidence_time_020_000 = 3, - TimeConfidence_time_010_000 = 4, - TimeConfidence_time_002_000 = 5, - TimeConfidence_time_001_000 = 6, - TimeConfidence_time_000_500 = 7, - TimeConfidence_time_000_200 = 8, - TimeConfidence_time_000_100 = 9, - TimeConfidence_time_000_050 = 10, - TimeConfidence_time_000_020 = 11, - TimeConfidence_time_000_010 = 12, - TimeConfidence_time_000_005 = 13, - TimeConfidence_time_000_002 = 14, - TimeConfidence_time_000_001 = 15, - TimeConfidence_time_000_000_5 = 16, - TimeConfidence_time_000_000_2 = 17, - TimeConfidence_time_000_000_1 = 18, - TimeConfidence_time_000_000_05 = 19, - TimeConfidence_time_000_000_02 = 20, - TimeConfidence_time_000_000_01 = 21, - TimeConfidence_time_000_000_005 = 22, - TimeConfidence_time_000_000_002 = 23, - TimeConfidence_time_000_000_001 = 24, - TimeConfidence_time_000_000_000_5 = 25, - TimeConfidence_time_000_000_000_2 = 26, - TimeConfidence_time_000_000_000_1 = 27, - TimeConfidence_time_000_000_000_05 = 28, - TimeConfidence_time_000_000_000_02 = 29, - TimeConfidence_time_000_000_000_01 = 30, - TimeConfidence_time_000_000_000_005 = 31, - TimeConfidence_time_000_000_000_002 = 32, - TimeConfidence_time_000_000_000_001 = 33, - TimeConfidence_time_000_000_000_000_5 = 34, - TimeConfidence_time_000_000_000_000_2 = 35, - TimeConfidence_time_000_000_000_000_1 = 36, - TimeConfidence_time_000_000_000_000_05 = 37, - TimeConfidence_time_000_000_000_000_02 = 38, - TimeConfidence_time_000_000_000_000_01 = 39 -} e_TimeConfidence; - -/* TimeConfidence */ -typedef long TimeConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; -asn_struct_free_f TimeConfidence_free; -asn_struct_print_f TimeConfidence_print; -asn_constr_check_f TimeConfidence_constraint; -ber_type_decoder_f TimeConfidence_decode_ber; -der_type_encoder_f TimeConfidence_encode_der; -xer_type_decoder_f TimeConfidence_decode_xer; -xer_type_encoder_f TimeConfidence_encode_xer; -per_type_decoder_f TimeConfidence_decode_uper; -per_type_encoder_f TimeConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h deleted file mode 100644 index ea920f702..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TimeIntervalConfidence_H_ -#define _TimeIntervalConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeIntervalConfidence */ -typedef long TimeIntervalConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; -asn_struct_free_f TimeIntervalConfidence_free; -asn_struct_print_f TimeIntervalConfidence_print; -asn_constr_check_f TimeIntervalConfidence_constraint; -ber_type_decoder_f TimeIntervalConfidence_decode_ber; -der_type_encoder_f TimeIntervalConfidence_encode_der; -xer_type_decoder_f TimeIntervalConfidence_decode_xer; -xer_type_encoder_f TimeIntervalConfidence_encode_xer; -per_type_decoder_f TimeIntervalConfidence_decode_uper; -per_type_encoder_f TimeIntervalConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeIntervalConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h deleted file mode 100644 index 4012b4e4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TimeMark_H_ -#define _TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeMark */ -typedef long TimeMark_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeMark; -asn_struct_free_f TimeMark_free; -asn_struct_print_f TimeMark_print; -asn_constr_check_f TimeMark_constraint; -ber_type_decoder_f TimeMark_decode_ber; -der_type_encoder_f TimeMark_encode_der; -xer_type_decoder_f TimeMark_decode_xer; -xer_type_encoder_f TimeMark_encode_xer; -per_type_decoder_f TimeMark_decode_uper; -per_type_encoder_f TimeMark_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h deleted file mode 100644 index 08f888c8e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TimeRemaining_H_ -#define _TimeRemaining_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeRemaining */ -typedef long TimeRemaining_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; -asn_struct_free_f TimeRemaining_free; -asn_struct_print_f TimeRemaining_print; -asn_constr_check_f TimeRemaining_constraint; -ber_type_decoder_f TimeRemaining_decode_ber; -der_type_encoder_f TimeRemaining_encode_der; -xer_type_decoder_f TimeRemaining_decode_xer; -xer_type_encoder_f TimeRemaining_encode_xer; -per_type_decoder_f TimeRemaining_decode_uper; -per_type_encoder_f TimeRemaining_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeRemaining_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h deleted file mode 100644 index 0aaffc131..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TireLeakageRate_H_ -#define _TireLeakageRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLeakageRate */ -typedef long TireLeakageRate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; -asn_struct_free_f TireLeakageRate_free; -asn_struct_print_f TireLeakageRate_print; -asn_constr_check_f TireLeakageRate_constraint; -ber_type_decoder_f TireLeakageRate_decode_ber; -der_type_encoder_f TireLeakageRate_encode_der; -xer_type_decoder_f TireLeakageRate_decode_xer; -xer_type_encoder_f TireLeakageRate_encode_xer; -per_type_decoder_f TireLeakageRate_decode_uper; -per_type_encoder_f TireLeakageRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLeakageRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h deleted file mode 100644 index 91ac89775..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TireLocation_H_ -#define _TireLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLocation */ -typedef long TireLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireLocation; -asn_struct_free_f TireLocation_free; -asn_struct_print_f TireLocation_print; -asn_constr_check_f TireLocation_constraint; -ber_type_decoder_f TireLocation_decode_ber; -der_type_encoder_f TireLocation_encode_der; -xer_type_decoder_f TireLocation_decode_xer; -xer_type_encoder_f TireLocation_encode_xer; -per_type_decoder_f TireLocation_decode_uper; -per_type_encoder_f TireLocation_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h deleted file mode 100644 index 33fe2d946..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TirePressure_H_ -#define _TirePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TirePressure */ -typedef long TirePressure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TirePressure; -asn_struct_free_f TirePressure_free; -asn_struct_print_f TirePressure_print; -asn_constr_check_f TirePressure_constraint; -ber_type_decoder_f TirePressure_decode_ber; -der_type_encoder_f TirePressure_encode_der; -xer_type_decoder_f TirePressure_decode_xer; -xer_type_encoder_f TirePressure_encode_xer; -per_type_decoder_f TirePressure_decode_uper; -per_type_encoder_f TirePressure_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h deleted file mode 100644 index feedfc7d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TirePressureThresholdDetection_H_ -#define _TirePressureThresholdDetection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TirePressureThresholdDetection { - TirePressureThresholdDetection_noData = 0, - TirePressureThresholdDetection_overPressure = 1, - TirePressureThresholdDetection_noWarningPressure = 2, - TirePressureThresholdDetection_underPressure = 3, - TirePressureThresholdDetection_extremeUnderPressure = 4, - TirePressureThresholdDetection_undefined = 5, - TirePressureThresholdDetection_errorIndicator = 6, - TirePressureThresholdDetection_notAvailable = 7 - /* - * Enumeration is extensible - */ -} e_TirePressureThresholdDetection; - -/* TirePressureThresholdDetection */ -typedef long TirePressureThresholdDetection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; -asn_struct_free_f TirePressureThresholdDetection_free; -asn_struct_print_f TirePressureThresholdDetection_print; -asn_constr_check_f TirePressureThresholdDetection_constraint; -ber_type_decoder_f TirePressureThresholdDetection_decode_ber; -der_type_encoder_f TirePressureThresholdDetection_encode_der; -xer_type_decoder_f TirePressureThresholdDetection_decode_xer; -xer_type_encoder_f TirePressureThresholdDetection_encode_xer; -per_type_decoder_f TirePressureThresholdDetection_decode_uper; -per_type_encoder_f TirePressureThresholdDetection_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressureThresholdDetection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h deleted file mode 100644 index b55795b92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TireTemp_H_ -#define _TireTemp_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireTemp */ -typedef long TireTemp_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireTemp; -asn_struct_free_f TireTemp_free; -asn_struct_print_f TireTemp_print; -asn_constr_check_f TireTemp_constraint; -ber_type_decoder_f TireTemp_decode_ber; -der_type_encoder_f TireTemp_encode_der; -xer_type_decoder_f TireTemp_decode_xer; -xer_type_encoder_f TireTemp_encode_xer; -per_type_decoder_f TireTemp_decode_uper; -per_type_encoder_f TireTemp_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireTemp_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h deleted file mode 100644 index e0e061933..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TractionControlState_H_ -#define _TractionControlState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TractionControlState { - TractionControlState_unavailable = 0, - TractionControlState_off = 1, - TractionControlState_on = 2, - TractionControlState_engaged = 3 -} e_TractionControlState; - -/* TractionControlState */ -typedef long TractionControlState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TractionControlState; -asn_struct_free_f TractionControlState_free; -asn_struct_print_f TractionControlState_print; -asn_constr_check_f TractionControlState_constraint; -ber_type_decoder_f TractionControlState_decode_ber; -der_type_encoder_f TractionControlState_encode_der; -xer_type_decoder_f TractionControlState_decode_xer; -xer_type_encoder_f TractionControlState_encode_xer; -per_type_decoder_f TractionControlState_decode_uper; -per_type_encoder_f TractionControlState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TractionControlState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h deleted file mode 100644 index c3b49c216..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrailerWeight_H_ -#define _TrailerWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerWeight */ -typedef long TrailerWeight_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; -asn_struct_free_f TrailerWeight_free; -asn_struct_print_f TrailerWeight_print; -asn_constr_check_f TrailerWeight_constraint; -ber_type_decoder_f TrailerWeight_decode_ber; -der_type_encoder_f TrailerWeight_encode_der; -xer_type_decoder_f TrailerWeight_decode_xer; -xer_type_encoder_f TrailerWeight_encode_xer; -per_type_decoder_f TrailerWeight_decode_uper; -per_type_encoder_f TrailerWeight_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h deleted file mode 100644 index f8814f87e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TransitStatus_H_ -#define _TransitStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitStatus { - TransitStatus_none = 0, - TransitStatus_anADAuse = 1, - TransitStatus_aBikeLoad = 2, - TransitStatus_doorOpen = 3, - TransitStatus_occM = 4, - TransitStatus_occL = 5 -} e_TransitStatus; - -/* TransitStatus */ -typedef BIT_STRING_t TransitStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; -asn_struct_free_f TransitStatus_free; -asn_struct_print_f TransitStatus_print; -asn_constr_check_f TransitStatus_constraint; -ber_type_decoder_f TransitStatus_decode_ber; -der_type_encoder_f TransitStatus_encode_der; -xer_type_decoder_f TransitStatus_decode_xer; -xer_type_encoder_f TransitStatus_encode_xer; -per_type_decoder_f TransitStatus_decode_uper; -per_type_encoder_f TransitStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h deleted file mode 100644 index 5b4323556..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TransmissionAndSpeed_H_ -#define _TransmissionAndSpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TransmissionAndSpeed */ -typedef OCTET_STRING_t TransmissionAndSpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; -asn_struct_free_f TransmissionAndSpeed_free; -asn_struct_print_f TransmissionAndSpeed_print; -asn_constr_check_f TransmissionAndSpeed_constraint; -ber_type_decoder_f TransmissionAndSpeed_decode_ber; -der_type_encoder_f TransmissionAndSpeed_encode_der; -xer_type_decoder_f TransmissionAndSpeed_decode_xer; -xer_type_encoder_f TransmissionAndSpeed_encode_xer; -per_type_decoder_f TransmissionAndSpeed_decode_uper; -per_type_encoder_f TransmissionAndSpeed_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionAndSpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h deleted file mode 100644 index 279323c56..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TransmissionState_H_ -#define _TransmissionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransmissionState { - TransmissionState_neutral = 0, - TransmissionState_park = 1, - TransmissionState_forwardGears = 2, - TransmissionState_reverseGears = 3, - TransmissionState_reserved1 = 4, - TransmissionState_reserved2 = 5, - TransmissionState_reserved3 = 6, - TransmissionState_unavailable = 7 - /* - * Enumeration is extensible - */ -} e_TransmissionState; - -/* TransmissionState */ -typedef long TransmissionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; -asn_struct_free_f TransmissionState_free; -asn_struct_print_f TransmissionState_print; -asn_constr_check_f TransmissionState_constraint; -ber_type_decoder_f TransmissionState_decode_ber; -der_type_encoder_f TransmissionState_encode_der; -xer_type_decoder_f TransmissionState_decode_xer; -xer_type_encoder_f TransmissionState_encode_xer; -per_type_decoder_f TransmissionState_decode_uper; -per_type_encoder_f TransmissionState_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h deleted file mode 100644 index 93fbe3d08..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TravelerInfoType_H_ -#define _TravelerInfoType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TravelerInfoType { - TravelerInfoType_unknown = 0, - TravelerInfoType_advisory = 1, - TravelerInfoType_roadSignage = 2, - TravelerInfoType_commercialSignage = 3 - /* - * Enumeration is extensible - */ -} e_TravelerInfoType; - -/* TravelerInfoType */ -typedef long TravelerInfoType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; -asn_struct_free_f TravelerInfoType_free; -asn_struct_print_f TravelerInfoType_print; -asn_constr_check_f TravelerInfoType_constraint; -ber_type_decoder_f TravelerInfoType_decode_ber; -der_type_encoder_f TravelerInfoType_encode_der; -xer_type_decoder_f TravelerInfoType_decode_xer; -xer_type_encoder_f TravelerInfoType_encode_xer; -per_type_decoder_f TravelerInfoType_decode_uper; -per_type_encoder_f TravelerInfoType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerInfoType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h deleted file mode 100644 index e82f4db1e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h +++ /dev/null @@ -1,139 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TravelerInformation_H_ -#define _TravelerInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "UniqueMSGID.h" -#include "URL-Base.h" -#include "Count.h" -#include "MsgCRC.h" -#include "asn_SEQUENCE_OF.h" -#include "TravelerInfoType.h" -#include "DYear.h" -#include "MinuteOfTheYear.h" -#include "MinutesDuration.h" -#include "SignPrority.h" -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "URL-Short.h" -#include "FurtherInfoID.h" -#include "RoadSignID.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE_OF.h" -#include "ITIScodesAndText.h" -#include "WorkZone.h" -#include "GenericSignage.h" -#include "SpeedLimit.h" -#include "ExitService.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum msgId_PR { - msgId_PR_NOTHING, /* No components present */ - msgId_PR_furtherInfoID, - msgId_PR_roadSignID -} msgId_PR; -typedef enum content_PR { - content_PR_NOTHING, /* No components present */ - content_PR_advisory, - content_PR_workZone, - content_PR_genericSign, - content_PR_speedLimit, - content_PR_exitService -} content_PR; - -/* Forward declarations */ -struct Position3D; -struct ValidRegion; - -/* TravelerInformation */ -typedef struct TravelerInformation { - DSRCmsgID_t msgID; - UniqueMSGID_t *packetID /* OPTIONAL */; - URL_Base_t *urlB /* OPTIONAL */; - Count_t *dataFrameCount /* OPTIONAL */; - struct TravelerInformation__dataFrames { - A_SEQUENCE_OF2(TravelerInformation__dataFrames__List, struct TravelerInformation__dataFrames__Member { - TravelerInfoType_t frameType; - struct msgId { - msgId_PR present; - union msgId_u { - FurtherInfoID_t furtherInfoID; - RoadSignID_t roadSignID; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } msgId; - DYear_t *startYear /* OPTIONAL */; - MinuteOfTheYear_t startTime; - MinutesDuration_t duratonTime; - SignPrority_t priority; - struct Position3D *commonAnchor /* OPTIONAL */; - LaneWidth_t *commonLaneWidth /* OPTIONAL */; - DirectionOfUse_t *commonDirectionality /* OPTIONAL */; - struct regions { - A_SEQUENCE_OF(struct ValidRegion) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regions; - struct content { - content_PR present; - union content_u { - ITIScodesAndText_t advisory; - WorkZone_t workZone; - GenericSignage_t genericSign; - SpeedLimit_t speedLimit; - ExitService_t exitService; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } content; - URL_Short_t *url /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } dataFrames; - MsgCRC_t crc; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TravelerInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D.h" -#include "ValidRegion.h" - -#endif /* _TravelerInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h deleted file mode 100644 index e2f3d79a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TxTime_H_ -#define _TxTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TxTime */ -typedef long TxTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TxTime; -asn_struct_free_f TxTime_free; -asn_struct_print_f TxTime_print; -asn_constr_check_f TxTime_constraint; -ber_type_decoder_f TxTime_decode_ber; -der_type_encoder_f TxTime_encode_der; -xer_type_decoder_f TxTime_decode_xer; -xer_type_encoder_f TxTime_encode_xer; -per_type_decoder_f TxTime_decode_uper; -per_type_encoder_f TxTime_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TxTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h deleted file mode 100644 index face6e72b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _UPER_Blob_H_ -#define _UPER_Blob_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* UPER-Blob */ -typedef OCTET_STRING_t UPER_Blob_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_UPER_Blob; -asn_struct_free_f UPER_Blob_free; -asn_struct_print_f UPER_Blob_print; -asn_constr_check_f UPER_Blob_constraint; -ber_type_decoder_f UPER_Blob_decode_ber; -der_type_encoder_f UPER_Blob_encode_der; -xer_type_decoder_f UPER_Blob_decode_xer; -xer_type_encoder_f UPER_Blob_encode_xer; -per_type_decoder_f UPER_Blob_decode_uper; -per_type_encoder_f UPER_Blob_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UPER_Blob_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h deleted file mode 100644 index e4a468017..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _UPERframe_H_ -#define _UPERframe_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID2.h" -#include "DSRCmsgSubID.h" -#include "MinuteOfTheYear.h" -#include "UPER-Blob.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* UPERframe */ -typedef struct UPERframe { - DSRCmsgID2_t msgID; - DSRCmsgSubID_t *msgSubID /* OPTIONAL */; - MinuteOfTheYear_t *timeStamp /* OPTIONAL */; - DSRCmsgID2_t contentID; - UPER_Blob_t msgBlob; - /* - * This type is extensible, - * possible extensions are below. - */ - MsgCRC_t *crc /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} UPERframe_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_UPERframe; - -#ifdef __cplusplus -} -#endif - -#endif /* _UPERframe_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h deleted file mode 100644 index 5b10e94dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _URL_Base_H_ -#define _URL_Base_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Base */ -typedef IA5String_t URL_Base_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_URL_Base; -asn_struct_free_f URL_Base_free; -asn_struct_print_f URL_Base_print; -asn_constr_check_f URL_Base_constraint; -ber_type_decoder_f URL_Base_decode_ber; -der_type_encoder_f URL_Base_encode_der; -xer_type_decoder_f URL_Base_decode_xer; -xer_type_encoder_f URL_Base_encode_xer; -per_type_decoder_f URL_Base_decode_uper; -per_type_encoder_f URL_Base_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Base_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h deleted file mode 100644 index 3b9c2cb7d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _URL_Link_H_ -#define _URL_Link_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Link */ -typedef IA5String_t URL_Link_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_URL_Link; -asn_struct_free_f URL_Link_free; -asn_struct_print_f URL_Link_print; -asn_constr_check_f URL_Link_constraint; -ber_type_decoder_f URL_Link_decode_ber; -der_type_encoder_f URL_Link_encode_der; -xer_type_decoder_f URL_Link_decode_xer; -xer_type_encoder_f URL_Link_encode_xer; -per_type_decoder_f URL_Link_decode_uper; -per_type_encoder_f URL_Link_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Link_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h deleted file mode 100644 index 721afbc9f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _URL_Short_H_ -#define _URL_Short_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Short */ -typedef IA5String_t URL_Short_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_URL_Short; -asn_struct_free_f URL_Short_free; -asn_struct_print_f URL_Short_print; -asn_constr_check_f URL_Short_constraint; -ber_type_decoder_f URL_Short_decode_ber; -der_type_encoder_f URL_Short_encode_der; -xer_type_decoder_f URL_Short_decode_xer; -xer_type_encoder_f URL_Short_encode_xer; -per_type_decoder_f URL_Short_decode_uper; -per_type_encoder_f URL_Short_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Short_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h deleted file mode 100644 index 5e077e262..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_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_r41/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h deleted file mode 100644 index c55ff8c6f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _UniqueMSGID_H_ -#define _UniqueMSGID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* UniqueMSGID */ -typedef OCTET_STRING_t UniqueMSGID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; -asn_struct_free_f UniqueMSGID_free; -asn_struct_print_f UniqueMSGID_print; -asn_constr_check_f UniqueMSGID_constraint; -ber_type_decoder_f UniqueMSGID_decode_ber; -der_type_encoder_f UniqueMSGID_encode_der; -xer_type_decoder_f UniqueMSGID_decode_xer; -xer_type_encoder_f UniqueMSGID_encode_xer; -per_type_decoder_f UniqueMSGID_decode_uper; -per_type_encoder_f UniqueMSGID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UniqueMSGID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h deleted file mode 100644 index c755d83cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#ifndef _UserSizeAndBehaviour_H_ -#define _UserSizeAndBehaviour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum UserSizeAndBehaviour { - UserSizeAndBehaviour_unavailable = 0, - UserSizeAndBehaviour_smallStature = 1, - UserSizeAndBehaviour_largeStature = 2, - UserSizeAndBehaviour_erraticMoving = 3, - UserSizeAndBehaviour_slowMoving = 4 -} e_UserSizeAndBehaviour; - -/* UserSizeAndBehaviour */ -typedef BIT_STRING_t UserSizeAndBehaviour_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; -asn_struct_free_f UserSizeAndBehaviour_free; -asn_struct_print_f UserSizeAndBehaviour_print; -asn_constr_check_f UserSizeAndBehaviour_constraint; -ber_type_decoder_f UserSizeAndBehaviour_decode_ber; -der_type_encoder_f UserSizeAndBehaviour_encode_der; -xer_type_decoder_f UserSizeAndBehaviour_decode_xer; -xer_type_encoder_f UserSizeAndBehaviour_encode_xer; -per_type_decoder_f UserSizeAndBehaviour_decode_uper; -per_type_encoder_f UserSizeAndBehaviour_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UserSizeAndBehaviour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h deleted file mode 100644 index 179ea813b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VINstring_H_ -#define _VINstring_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VINstring */ -typedef OCTET_STRING_t VINstring_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VINstring; -asn_struct_free_f VINstring_free; -asn_struct_print_f VINstring_print; -asn_constr_check_f VINstring_constraint; -ber_type_decoder_f VINstring_decode_ber; -der_type_encoder_f VINstring_encode_der; -xer_type_decoder_f VINstring_decode_xer; -xer_type_encoder_f VINstring_encode_xer; -per_type_decoder_f VINstring_decode_uper; -per_type_encoder_f VINstring_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VINstring_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h deleted file mode 100644 index 9e3832330..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ValidRegion_H_ -#define _ValidRegion_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingSlice.h" -#include "Extent.h" -#include "ShapePointSet.h" -#include "Circle.h" -#include "RegionPointSet.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ValidRegion__area_PR { - ValidRegion__area_PR_NOTHING, /* No components present */ - ValidRegion__area_PR_shapePointSet, - ValidRegion__area_PR_circle, - ValidRegion__area_PR_regionPointSet -} ValidRegion__area_PR; - -/* ValidRegion */ -typedef struct ValidRegion { - HeadingSlice_t direction; - Extent_t *extent /* OPTIONAL */; - struct ValidRegion__area { - ValidRegion__area_PR present; - union ValidRegion__area_u { - ShapePointSet_t shapePointSet; - Circle_t circle; - RegionPointSet_t regionPointSet; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } area; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ValidRegion_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; - -#ifdef __cplusplus -} -#endif - -#endif /* _ValidRegion_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h deleted file mode 100644 index 85ba7cb1c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#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_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_r41/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h deleted file mode 100644 index 3124f65a9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleGroupAffected_H_ -#define _VehicleGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleGroupAffected { - VehicleGroupAffected_all_vehicles = 9217, - VehicleGroupAffected_bicycles = 9218, - VehicleGroupAffected_motorcycles = 9219, - VehicleGroupAffected_cars = 9220, - VehicleGroupAffected_light_vehicles = 9221, - VehicleGroupAffected_cars_and_light_vehicles = 9222, - VehicleGroupAffected_cars_with_trailers = 9223, - VehicleGroupAffected_cars_with_recreational_trailers = 9224, - VehicleGroupAffected_vehicles_with_trailers = 9225, - VehicleGroupAffected_heavy_vehicles = 9226, - VehicleGroupAffected_trucks = 9227, - VehicleGroupAffected_buses = 9228, - VehicleGroupAffected_articulated_buses = 9229, - VehicleGroupAffected_school_buses = 9230, - VehicleGroupAffected_vehicles_with_semi_trailers = 9231, - VehicleGroupAffected_vehicles_with_double_trailers = 9232, - VehicleGroupAffected_high_profile_vehicles = 9233, - VehicleGroupAffected_wide_vehicles = 9234, - VehicleGroupAffected_long_vehicles = 9235, - VehicleGroupAffected_hazardous_loads = 9236, - VehicleGroupAffected_exceptional_loads = 9237, - VehicleGroupAffected_abnormal_loads = 9238, - VehicleGroupAffected_convoys = 9239, - VehicleGroupAffected_maintenance_vehicles = 9240, - VehicleGroupAffected_delivery_vehicles = 9241, - VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, - VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, - VehicleGroupAffected_vehicles_with_parking_permits = 9244, - VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, - VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, - VehicleGroupAffected_gas_powered_vehicles = 9247, - VehicleGroupAffected_diesel_powered_vehicles = 9248, - VehicleGroupAffected_lPG_vehicles = 9249, - VehicleGroupAffected_military_convoys = 9250, - VehicleGroupAffected_military_vehicles = 9251 - /* - * Enumeration is extensible - */ -} e_VehicleGroupAffected; - -/* VehicleGroupAffected */ -typedef long VehicleGroupAffected_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; -asn_struct_free_f VehicleGroupAffected_free; -asn_struct_print_f VehicleGroupAffected_print; -asn_constr_check_f VehicleGroupAffected_constraint; -ber_type_decoder_f VehicleGroupAffected_decode_ber; -der_type_encoder_f VehicleGroupAffected_encode_der; -xer_type_decoder_f VehicleGroupAffected_decode_xer; -xer_type_encoder_f VehicleGroupAffected_encode_xer; -per_type_decoder_f VehicleGroupAffected_decode_uper; -per_type_encoder_f VehicleGroupAffected_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h deleted file mode 100644 index 0cac51208..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleHeight_H_ -#define _VehicleHeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleHeight */ -typedef long VehicleHeight_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; -asn_struct_free_f VehicleHeight_free; -asn_struct_print_f VehicleHeight_print; -asn_constr_check_f VehicleHeight_constraint; -ber_type_decoder_f VehicleHeight_decode_ber; -der_type_encoder_f VehicleHeight_encode_der; -xer_type_decoder_f VehicleHeight_decode_xer; -xer_type_encoder_f VehicleHeight_encode_xer; -per_type_decoder_f VehicleHeight_decode_uper; -per_type_encoder_f VehicleHeight_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleHeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h deleted file mode 100644 index 7662f9a97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleIdent_H_ -#define _VehicleIdent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "VINstring.h" -#include "IA5String.h" -#include "TemporaryID.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "ResponderGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleIdent__vehicleClass_PR { - VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ - VehicleIdent__vehicleClass_PR_vGroup, - VehicleIdent__vehicleClass_PR_rGroup, - VehicleIdent__vehicleClass_PR_rEquip -} VehicleIdent__vehicleClass_PR; - -/* VehicleIdent */ -typedef struct VehicleIdent { - DescriptiveName_t *name /* OPTIONAL */; - VINstring_t *vin /* OPTIONAL */; - IA5String_t *ownerCode /* OPTIONAL */; - TemporaryID_t *id /* OPTIONAL */; - VehicleType_t *vehicleType /* OPTIONAL */; - struct VehicleIdent__vehicleClass { - VehicleIdent__vehicleClass_PR present; - union VehicleIdent__vehicleClass_u { - VehicleGroupAffected_t vGroup; - ResponderGroupAffected_t rGroup; - IncidentResponseEquipment_t rEquip; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleClass; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleIdent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleIdent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h deleted file mode 100644 index c255648d6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleLength_H_ -#define _VehicleLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleLength */ -typedef long VehicleLength_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; -asn_struct_free_f VehicleLength_free; -asn_struct_print_f VehicleLength_print; -asn_constr_check_f VehicleLength_constraint; -ber_type_decoder_f VehicleLength_decode_ber; -der_type_encoder_f VehicleLength_encode_der; -xer_type_decoder_f VehicleLength_decode_xer; -xer_type_encoder_f VehicleLength_encode_xer; -per_type_decoder_f VehicleLength_decode_uper; -per_type_encoder_f VehicleLength_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h deleted file mode 100644 index 17b60d13b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleMass_H_ -#define _VehicleMass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleMass */ -typedef long VehicleMass_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; -asn_struct_free_f VehicleMass_free; -asn_struct_print_f VehicleMass_print; -asn_constr_check_f VehicleMass_constraint; -ber_type_decoder_f VehicleMass_decode_ber; -der_type_encoder_f VehicleMass_encode_der; -xer_type_decoder_f VehicleMass_decode_xer; -xer_type_encoder_f VehicleMass_encode_xer; -per_type_decoder_f VehicleMass_decode_uper; -per_type_encoder_f VehicleMass_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleMass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h deleted file mode 100644 index 032613652..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleRequestStatus_H_ -#define _VehicleRequestStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleRequestStatus */ -typedef OCTET_STRING_t VehicleRequestStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleRequestStatus; -asn_struct_free_f VehicleRequestStatus_free; -asn_struct_print_f VehicleRequestStatus_print; -asn_constr_check_f VehicleRequestStatus_constraint; -ber_type_decoder_f VehicleRequestStatus_decode_ber; -der_type_encoder_f VehicleRequestStatus_encode_der; -xer_type_decoder_f VehicleRequestStatus_decode_xer; -xer_type_encoder_f VehicleRequestStatus_encode_xer; -per_type_decoder_f VehicleRequestStatus_decode_uper; -per_type_encoder_f VehicleRequestStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleRequestStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h deleted file mode 100644 index d4ed1d6c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleSafetyExtension_H_ -#define _VehicleSafetyExtension_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EventFlags.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PathHistory; -struct PathPrediction; -struct RTCMPackage; - -/* VehicleSafetyExtension */ -typedef struct VehicleSafetyExtension { - EventFlags_t *events /* OPTIONAL */; - struct PathHistory *pathHistory /* OPTIONAL */; - struct PathPrediction *pathPrediction /* OPTIONAL */; - struct RTCMPackage *theRTCM /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSafetyExtension_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtension; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PathHistory.h" -#include "PathPrediction.h" -#include "RTCMPackage.h" - -#endif /* _VehicleSafetyExtension_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h deleted file mode 100644 index 0aeb41113..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleSize_H_ -#define _VehicleSize_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleWidth.h" -#include "VehicleLength.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleSize */ -typedef struct VehicleSize { - VehicleWidth_t width; - VehicleLength_t length; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSize_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleSize_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h deleted file mode 100644 index 4b2c0329c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleStatus_H_ -#define _VehicleStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ExteriorLights.h" -#include "LightbarInUse.h" -#include "BrakeSystemStatus.h" -#include "BrakeAppliedPressure.h" -#include "CoefficientOfFriction.h" -#include "SunSensor.h" -#include "RainSensor.h" -#include "AmbientAirTemperature.h" -#include "AmbientAirPressure.h" -#include "ThrottlePosition.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "SpeedConfidence.h" -#include "GPSstatus.h" -#include "WiperStatusFront.h" -#include "WiperRate.h" -#include "WiperStatusRear.h" -#include "constr_SEQUENCE.h" -#include "SteeringWheelAngle.h" -#include "SteeringWheelAngleConfidence.h" -#include "SteeringWheelAngleRateOfChange.h" -#include "DrivingWheelAngle.h" -#include "AccelerationSet4Way.h" -#include "VerticalAccelerationThreshold.h" -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "ObstacleDistance.h" -#include "ObstacleDirection.h" -#include "DDateTime.h" -#include "VehicleHeight.h" -#include "BumperHeights.h" -#include "VehicleMass.h" -#include "TrailerWeight.h" -#include "VehicleType.h" -#include "EssPrecipYesNo.h" -#include "EssPrecipRate.h" -#include "EssPrecipSituation.h" -#include "EssSolarRadiation.h" -#include "EssMobileFriction.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct VehicleIdent; -struct J1939data; -struct ConfidenceSet; - -/* VehicleStatus */ -typedef struct VehicleStatus { - ExteriorLights_t *lights /* OPTIONAL */; - LightbarInUse_t *lightBar /* OPTIONAL */; - struct VehicleStatus__wipers { - WiperStatusFront_t statusFront; - WiperRate_t rateFront; - WiperStatusRear_t *statusRear /* OPTIONAL */; - WiperRate_t *rateRear /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *wipers; - BrakeSystemStatus_t *brakeStatus /* OPTIONAL */; - BrakeAppliedPressure_t *brakePressure /* OPTIONAL */; - CoefficientOfFriction_t *roadFriction /* OPTIONAL */; - SunSensor_t *sunData /* OPTIONAL */; - RainSensor_t *rainData /* OPTIONAL */; - AmbientAirTemperature_t *airTemp /* OPTIONAL */; - AmbientAirPressure_t *airPres /* OPTIONAL */; - struct VehicleStatus__steering { - SteeringWheelAngle_t angle; - SteeringWheelAngleConfidence_t *confidence /* OPTIONAL */; - SteeringWheelAngleRateOfChange_t *rate /* OPTIONAL */; - DrivingWheelAngle_t *wheels /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *steering; - struct VehicleStatus__accelSets { - AccelerationSet4Way_t *accel4way /* OPTIONAL */; - VerticalAccelerationThreshold_t *vertAccelThres /* OPTIONAL */; - YawRateConfidence_t *yawRateCon /* OPTIONAL */; - AccelerationConfidence_t *hozAccelCon /* OPTIONAL */; - struct ConfidenceSet *confidenceSet /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *accelSets; - struct VehicleStatus__object { - ObstacleDistance_t obDist; - ObstacleDirection_t obDirect; - DDateTime_t dateTime; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *object; - struct FullPositionVector *fullPos /* OPTIONAL */; - ThrottlePosition_t *throttlePos /* OPTIONAL */; - SpeedandHeadingandThrottleConfidence_t *speedHeadC /* OPTIONAL */; - SpeedConfidence_t *speedC /* OPTIONAL */; - struct VehicleStatus__vehicleData { - VehicleHeight_t height; - BumperHeights_t bumpers; - VehicleMass_t mass; - TrailerWeight_t trailerWeight; - VehicleType_t type; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleData; - struct VehicleIdent *vehicleIdent /* OPTIONAL */; - struct J1939data *j1939data /* OPTIONAL */; - struct VehicleStatus__weatherReport { - EssPrecipYesNo_t isRaining; - EssPrecipRate_t *rainRate /* OPTIONAL */; - EssPrecipSituation_t *precipSituation /* OPTIONAL */; - EssSolarRadiation_t *solarRadiation /* OPTIONAL */; - EssMobileFriction_t *friction /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *weatherReport; - GPSstatus_t *gpsStatus /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" -#include "VehicleIdent.h" -#include "J1939data.h" -#include "ConfidenceSet.h" - -#endif /* _VehicleStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h deleted file mode 100644 index ff663f903..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleStatusDeviceTypeTag_H_ -#define _VehicleStatusDeviceTypeTag_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleStatusDeviceTypeTag { - VehicleStatusDeviceTypeTag_unknown = 0, - VehicleStatusDeviceTypeTag_lights = 1, - VehicleStatusDeviceTypeTag_wipers = 2, - VehicleStatusDeviceTypeTag_brakes = 3, - VehicleStatusDeviceTypeTag_stab = 4, - VehicleStatusDeviceTypeTag_trac = 5, - VehicleStatusDeviceTypeTag_abs = 6, - VehicleStatusDeviceTypeTag_sunS = 7, - VehicleStatusDeviceTypeTag_rainS = 8, - VehicleStatusDeviceTypeTag_airTemp = 9, - VehicleStatusDeviceTypeTag_steering = 10, - VehicleStatusDeviceTypeTag_vertAccelThres = 11, - VehicleStatusDeviceTypeTag_vertAccel = 12, - VehicleStatusDeviceTypeTag_hozAccelLong = 13, - VehicleStatusDeviceTypeTag_hozAccelLat = 14, - VehicleStatusDeviceTypeTag_hozAccelCon = 15, - VehicleStatusDeviceTypeTag_accel4way = 16, - VehicleStatusDeviceTypeTag_confidenceSet = 17, - VehicleStatusDeviceTypeTag_obDist = 18, - VehicleStatusDeviceTypeTag_obDirect = 19, - VehicleStatusDeviceTypeTag_yaw = 20, - VehicleStatusDeviceTypeTag_yawRateCon = 21, - VehicleStatusDeviceTypeTag_dateTime = 22, - VehicleStatusDeviceTypeTag_fullPos = 23, - VehicleStatusDeviceTypeTag_position2D = 24, - VehicleStatusDeviceTypeTag_position3D = 25, - VehicleStatusDeviceTypeTag_vehicle = 26, - VehicleStatusDeviceTypeTag_speedHeadC = 27, - VehicleStatusDeviceTypeTag_speedC = 28 - /* - * Enumeration is extensible - */ -} e_VehicleStatusDeviceTypeTag; - -/* VehicleStatusDeviceTypeTag */ -typedef long VehicleStatusDeviceTypeTag_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; -asn_struct_free_f VehicleStatusDeviceTypeTag_free; -asn_struct_print_f VehicleStatusDeviceTypeTag_print; -asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; -ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; -der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; -xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; -xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; -per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; -per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusDeviceTypeTag_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h deleted file mode 100644 index 1b5b852fb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleStatusRequest_H_ -#define _VehicleStatusRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleStatusDeviceTypeTag.h" -#include "NativeInteger.h" -#include "BOOLEAN.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleStatusRequest */ -typedef struct VehicleStatusRequest { - VehicleStatusDeviceTypeTag_t dataType; - long *subType /* OPTIONAL */; - long *sendOnLessThenValue /* OPTIONAL */; - long *sendOnMoreThenValue /* OPTIONAL */; - BOOLEAN_t *sendAll /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatusRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h deleted file mode 100644 index aeabec683..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleToLanePosition_H_ -#define _VehicleToLanePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "LaneID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleToLanePosition */ -typedef struct VehicleToLanePosition { - StationID_t stationID; - LaneID_t laneID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePosition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleToLanePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h deleted file mode 100644 index 64bd00549..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleToLanePositionList_H_ -#define _VehicleToLanePositionList_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 VehicleToLanePosition; - -/* VehicleToLanePositionList */ -typedef struct VehicleToLanePositionList { - A_SEQUENCE_OF(struct VehicleToLanePosition) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePositionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleToLanePosition.h" - -#endif /* _VehicleToLanePositionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h deleted file mode 100644 index 89cf022c8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleType_H_ -#define _VehicleType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleType { - VehicleType_none = 0, - VehicleType_unknown = 1, - VehicleType_special = 2, - VehicleType_moto = 3, - VehicleType_car = 4, - VehicleType_carOther = 5, - VehicleType_bus = 6, - VehicleType_axleCnt2 = 7, - VehicleType_axleCnt3 = 8, - VehicleType_axleCnt4 = 9, - VehicleType_axleCnt4Trailer = 10, - VehicleType_axleCnt5Trailer = 11, - VehicleType_axleCnt6Trailer = 12, - VehicleType_axleCnt5MultiTrailer = 13, - VehicleType_axleCnt6MultiTrailer = 14, - VehicleType_axleCnt7MultiTrailer = 15 - /* - * Enumeration is extensible - */ -} e_VehicleType; - -/* VehicleType */ -typedef long VehicleType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleType; -asn_struct_free_f VehicleType_free; -asn_struct_print_f VehicleType_print; -asn_constr_check_f VehicleType_constraint; -ber_type_decoder_f VehicleType_decode_ber; -der_type_encoder_f VehicleType_encode_der; -xer_type_decoder_f VehicleType_decode_xer; -xer_type_encoder_f VehicleType_encode_xer; -per_type_decoder_f VehicleType_decode_uper; -per_type_encoder_f VehicleType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h deleted file mode 100644 index a93dfa90e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleWidth_H_ -#define _VehicleWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleWidth */ -typedef long VehicleWidth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; -asn_struct_free_f VehicleWidth_free; -asn_struct_print_f VehicleWidth_print; -asn_constr_check_f VehicleWidth_constraint; -ber_type_decoder_f VehicleWidth_decode_ber; -der_type_encoder_f VehicleWidth_encode_der; -xer_type_decoder_f VehicleWidth_decode_xer; -xer_type_encoder_f VehicleWidth_encode_xer; -per_type_decoder_f VehicleWidth_decode_uper; -per_type_encoder_f VehicleWidth_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h deleted file mode 100644 index 538aa923e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Velocity_H_ -#define _Velocity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Velocity */ -typedef long Velocity_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Velocity; -asn_struct_free_f Velocity_free; -asn_struct_print_f Velocity_print; -asn_constr_check_f Velocity_constraint; -ber_type_decoder_f Velocity_decode_ber; -der_type_encoder_f Velocity_encode_der; -xer_type_decoder_f Velocity_decode_xer; -xer_type_encoder_f Velocity_encode_xer; -per_type_decoder_f Velocity_decode_uper; -per_type_encoder_f Velocity_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Velocity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h deleted file mode 100644 index 62aa57d8a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VerticalAcceleration_H_ -#define _VerticalAcceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VerticalAcceleration */ -typedef long VerticalAcceleration_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; -asn_struct_free_f VerticalAcceleration_free; -asn_struct_print_f VerticalAcceleration_print; -asn_constr_check_f VerticalAcceleration_constraint; -ber_type_decoder_f VerticalAcceleration_decode_ber; -der_type_encoder_f VerticalAcceleration_encode_der; -xer_type_decoder_f VerticalAcceleration_decode_xer; -xer_type_encoder_f VerticalAcceleration_encode_xer; -per_type_decoder_f VerticalAcceleration_decode_uper; -per_type_encoder_f VerticalAcceleration_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAcceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h deleted file mode 100644 index 7bd40a402..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VerticalAccelerationThreshold_H_ -#define _VerticalAccelerationThreshold_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VerticalAccelerationThreshold { - VerticalAccelerationThreshold_allOff = 0, - VerticalAccelerationThreshold_leftFront = 1, - VerticalAccelerationThreshold_leftRear = 2, - VerticalAccelerationThreshold_rightFront = 4, - VerticalAccelerationThreshold_rightRear = 8 -} e_VerticalAccelerationThreshold; - -/* VerticalAccelerationThreshold */ -typedef BIT_STRING_t VerticalAccelerationThreshold_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; -asn_struct_free_f VerticalAccelerationThreshold_free; -asn_struct_print_f VerticalAccelerationThreshold_print; -asn_constr_check_f VerticalAccelerationThreshold_constraint; -ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; -der_type_encoder_f VerticalAccelerationThreshold_encode_der; -xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; -xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; -per_type_decoder_f VerticalAccelerationThreshold_decode_uper; -per_type_encoder_f VerticalAccelerationThreshold_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAccelerationThreshold_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h deleted file mode 100644 index ad311f033..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WaitOnStopline_H_ -#define _WaitOnStopline_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WaitOnStopline */ -typedef BOOLEAN_t WaitOnStopline_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; -asn_struct_free_f WaitOnStopline_free; -asn_struct_print_f WaitOnStopline_print; -asn_constr_check_f WaitOnStopline_constraint; -ber_type_decoder_f WaitOnStopline_decode_ber; -der_type_encoder_f WaitOnStopline_encode_der; -xer_type_decoder_f WaitOnStopline_decode_xer; -xer_type_encoder_f WaitOnStopline_encode_xer; -per_type_decoder_f WaitOnStopline_decode_uper; -per_type_encoder_f WaitOnStopline_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WaitOnStopline_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h deleted file mode 100644 index b7ee6225b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WheelEndElectFault_H_ -#define _WheelEndElectFault_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelEndElectFault { - WheelEndElectFault_bitOne = 1, - WheelEndElectFault_bitTwo = 2, - WheelEndElectFault_bitThree = 3, - WheelEndElectFault_bitFour = 4 -} e_WheelEndElectFault; - -/* WheelEndElectFault */ -typedef BIT_STRING_t WheelEndElectFault_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; -asn_struct_free_f WheelEndElectFault_free; -asn_struct_print_f WheelEndElectFault_print; -asn_constr_check_f WheelEndElectFault_constraint; -ber_type_decoder_f WheelEndElectFault_decode_ber; -der_type_encoder_f WheelEndElectFault_encode_der; -xer_type_decoder_f WheelEndElectFault_decode_xer; -xer_type_encoder_f WheelEndElectFault_encode_xer; -per_type_decoder_f WheelEndElectFault_decode_uper; -per_type_encoder_f WheelEndElectFault_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelEndElectFault_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h deleted file mode 100644 index ceaf4e322..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WheelSensorStatus_H_ -#define _WheelSensorStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelSensorStatus { - WheelSensorStatus_off = 0, - WheelSensorStatus_on = 1, - WheelSensorStatus_notDefined = 2, - WheelSensorStatus_notSupoprted = 3 -} e_WheelSensorStatus; - -/* WheelSensorStatus */ -typedef long WheelSensorStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; -asn_struct_free_f WheelSensorStatus_free; -asn_struct_print_f WheelSensorStatus_print; -asn_constr_check_f WheelSensorStatus_constraint; -ber_type_decoder_f WheelSensorStatus_decode_ber; -der_type_encoder_f WheelSensorStatus_encode_der; -xer_type_decoder_f WheelSensorStatus_decode_xer; -xer_type_encoder_f WheelSensorStatus_encode_xer; -per_type_decoder_f WheelSensorStatus_decode_uper; -per_type_encoder_f WheelSensorStatus_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelSensorStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h deleted file mode 100644 index 94ed17183..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WiperRate_H_ -#define _WiperRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperRate */ -typedef long WiperRate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperRate; -asn_struct_free_f WiperRate_free; -asn_struct_print_f WiperRate_print; -asn_constr_check_f WiperRate_constraint; -ber_type_decoder_f WiperRate_decode_ber; -der_type_encoder_f WiperRate_encode_der; -xer_type_decoder_f WiperRate_decode_xer; -xer_type_encoder_f WiperRate_encode_xer; -per_type_decoder_f WiperRate_decode_uper; -per_type_encoder_f WiperRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h deleted file mode 100644 index d106d21d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WiperStatus_H_ -#define _WiperStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "WiperStatusFront.h" -#include "WiperRate.h" -#include "WiperStatusRear.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperStatus */ -typedef struct WiperStatus { - WiperStatusFront_t statusFront; - WiperRate_t rateFront; - WiperStatusRear_t *statusRear /* OPTIONAL */; - WiperRate_t *rateRear /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WiperStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h deleted file mode 100644 index f313de060..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WiperStatusFront_H_ -#define _WiperStatusFront_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WiperStatusFront { - WiperStatusFront_unavailable = 0, - WiperStatusFront_off = 1, - WiperStatusFront_intermittent = 2, - WiperStatusFront_low = 3, - WiperStatusFront_high = 4, - WiperStatusFront_washerInUse = 126, - WiperStatusFront_automaticPresent = 127 - /* - * Enumeration is extensible - */ -} e_WiperStatusFront; - -/* WiperStatusFront */ -typedef long WiperStatusFront_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperStatusFront; -asn_struct_free_f WiperStatusFront_free; -asn_struct_print_f WiperStatusFront_print; -asn_constr_check_f WiperStatusFront_constraint; -ber_type_decoder_f WiperStatusFront_decode_ber; -der_type_encoder_f WiperStatusFront_encode_der; -xer_type_decoder_f WiperStatusFront_decode_xer; -xer_type_encoder_f WiperStatusFront_encode_xer; -per_type_decoder_f WiperStatusFront_decode_uper; -per_type_encoder_f WiperStatusFront_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperStatusFront_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h deleted file mode 100644 index c493369cd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WiperStatusRear_H_ -#define _WiperStatusRear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WiperStatusRear { - WiperStatusRear_unavailable = 0, - WiperStatusRear_off = 1, - WiperStatusRear_intermittent = 2, - WiperStatusRear_low = 3, - WiperStatusRear_high = 4, - WiperStatusRear_washerInUse = 126, - WiperStatusRear_automaticPresent = 127 - /* - * Enumeration is extensible - */ -} e_WiperStatusRear; - -/* WiperStatusRear */ -typedef long WiperStatusRear_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperStatusRear; -asn_struct_free_f WiperStatusRear_free; -asn_struct_print_f WiperStatusRear_print; -asn_constr_check_f WiperStatusRear_constraint; -ber_type_decoder_f WiperStatusRear_decode_ber; -der_type_encoder_f WiperStatusRear_encode_der; -xer_type_decoder_f WiperStatusRear_decode_xer; -xer_type_encoder_f WiperStatusRear_encode_xer; -per_type_decoder_f WiperStatusRear_decode_uper; -per_type_encoder_f WiperStatusRear_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperStatusRear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h deleted file mode 100644 index 352fb810d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _WorkZone_H_ -#define _WorkZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "IA5String.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum item_wk_PR { - item_wk_PR_NOTHING, /* No components present */ - item_wk_PR_itis, - item_wk_PR_text -} item_wk_PR; - -/* WorkZone */ -typedef struct WorkZone { - A_SEQUENCE_OF(struct WorkZone__Member { - struct item_wk { - item_wk_PR present; - union item_wk_u { - ITIScodes_t itis; - IA5String_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item_wk; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } ) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WorkZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WorkZone; - -#ifdef __cplusplus -} -#endif - -#endif /* _WorkZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h deleted file mode 100644 index d8b1a9bc4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _YawRate_H_ -#define _YawRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* YawRate */ -typedef long YawRate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_YawRate; -asn_struct_free_f YawRate_free; -asn_struct_print_f YawRate_print; -asn_constr_check_f YawRate_constraint; -ber_type_decoder_f YawRate_decode_ber; -der_type_encoder_f YawRate_encode_der; -xer_type_decoder_f YawRate_decode_xer; -xer_type_encoder_f YawRate_encode_xer; -per_type_decoder_f YawRate_decode_uper; -per_type_encoder_f YawRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h deleted file mode 100644 index cad867249..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _YawRateConfidence_H_ -#define _YawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum YawRateConfidence { - YawRateConfidence_unavailable = 0, - YawRateConfidence_degSec_100_00 = 1, - YawRateConfidence_degSec_010_00 = 2, - YawRateConfidence_degSec_005_00 = 3, - YawRateConfidence_degSec_001_00 = 4, - YawRateConfidence_degSec_000_10 = 5, - YawRateConfidence_degSec_000_05 = 6, - YawRateConfidence_degSec_000_01 = 7 -} e_YawRateConfidence; - -/* YawRateConfidence */ -typedef long YawRateConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; -asn_struct_free_f YawRateConfidence_free; -asn_struct_print_f YawRateConfidence_print; -asn_constr_check_f YawRateConfidence_constraint; -ber_type_decoder_f YawRateConfidence_decode_ber; -der_type_encoder_f YawRateConfidence_encode_der; -xer_type_decoder_f YawRateConfidence_decode_xer; -xer_type_encoder_f YawRateConfidence_encode_xer; -per_type_decoder_f YawRateConfidence_decode_uper; -per_type_encoder_f YawRateConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h deleted file mode 100644 index b5301dd44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Year_H_ -#define _Year_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Year */ -typedef long Year_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Year; -asn_struct_free_f Year_free; -asn_struct_print_f Year_print; -asn_constr_check_f Year_constraint; -ber_type_decoder_f Year_decode_ber; -der_type_encoder_f Year_encode_der; -xer_type_decoder_f Year_decode_xer; -xer_type_encoder_f Year_encode_xer; -per_type_decoder_f Year_decode_uper; -per_type_encoder_f Year_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Year_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h deleted file mode 100644 index 92a020b8e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ZoneLength_H_ -#define _ZoneLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ZoneLength */ -typedef long ZoneLength_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; -asn_struct_free_f ZoneLength_free; -asn_struct_print_f ZoneLength_print; -asn_constr_check_f ZoneLength_constraint; -ber_type_decoder_f ZoneLength_decode_ber; -der_type_encoder_f ZoneLength_encode_der; -xer_type_decoder_f ZoneLength_decode_xer; -xer_type_encoder_f ZoneLength_encode_xer; -per_type_decoder_f ZoneLength_decode_uper; -per_type_encoder_f ZoneLength_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ZoneLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h deleted file mode 100644 index 10cc959d2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h +++ /dev/null @@ -1,54 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SEQUENCE_OF_H -#define ASN_SEQUENCE_OF_H - -#include "asn_SET_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * SEQUENCE OF is the same as SET OF with a tiny difference: - * the delete operation preserves the initial order of elements - * and thus MAY operate in non-constant time. - */ -#define A_SEQUENCE_OF(type) A_SET_OF(type) - -#define A_SEQUENCE_OF2(name, type) A_SET_OF2(name, type) - -#define ASN_SEQUENCE_ADD(headptr, ptr) \ - asn_sequence_add((headptr), (ptr)) - -/*********************************************** - * Implementation of the SEQUENCE OF structure. - */ - -#define asn_sequence_add asn_set_add -#define asn_sequence_empty asn_set_empty - -/* - * Delete the element from the set by its number (base 0). - * This is NOT a constant-time operation. - * The order of elements is preserved. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; -#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) -#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h deleted file mode 100644 index 168bf8bcd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h +++ /dev/null @@ -1,70 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SET_OF_H -#define ASN_SET_OF_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define A_SET_OF(type) \ - struct { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(void *); \ - } - -#define A_SET_OF2(name, type) \ - struct name { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(void *); \ - } - -#define ASN_SET_ADD(headptr, ptr) \ - asn_set_add((headptr), (ptr)) - -/******************************************* - * Implementation of the SET OF structure. - */ - -/* - * Add another structure into the set by its pointer. - * RETURN VALUES: - * 0 for success and -1/errno for failure. - */ -int asn_set_add(void *asn_set_of_x, void *ptr); - -/* - * Delete the element from the set by its number (base 0). - * This is a constant-time operation. The order of elements before the - * deleted ones is guaranteed, the order of elements after the deleted - * one is NOT guaranteed. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_set_del(void *asn_set_of_x, int number, int _do_free); - -/* - * Empty the contents of the set. Will free the elements, if (*free) is given. - * Will NOT free the set itself. - */ -void asn_set_empty(void *asn_set_of_x); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SET_OF(void) asn_anonymous_set_; -#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) -#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h deleted file mode 100644 index f40cd86ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h +++ /dev/null @@ -1,47 +0,0 @@ -/*- - * Copyright (c) 2004, 2006 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Application-level ASN.1 callbacks. - */ -#ifndef _ASN_APPLICATION_H_ -#define _ASN_APPLICATION_H_ - -#include "asn_system.h" /* for platform-dependent types */ -#include "asn_codecs.h" /* for ASN.1 codecs specifics */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Generic type of an application-defined callback to return various - * types of data to the application. - * EXPECTED RETURN VALUES: - * -1: Failed to consume bytes. Abort the mission. - * Non-negative return values indicate success, and ignored. - */ -typedef int (asn_app_consume_bytes_f)(const void *buffer, size_t size, - void *application_specific_key); - -/* - * A callback of this type is called whenever constraint validation fails - * on some ASN.1 type. See "constraints.h" for more details on constraint - * validation. - * This callback specifies a descriptor of the ASN.1 type which failed - * the constraint check, as well as human readable message on what - * particular constraint has failed. - */ -typedef void (asn_app_constraint_failed_f)(void *application_specific_key, - struct asn_TYPE_descriptor_s *type_descriptor_which_failed, - const void *structure_which_failed_ptr, - const char *error_message_format, ...) GCC_PRINTFLIKE(4, 5); - -#ifdef __cplusplus -} -#endif - -#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ - -#endif /* _ASN_APPLICATION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h deleted file mode 100644 index e5600142a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h +++ /dev/null @@ -1,109 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _ASN_CODECS_H_ -#define _ASN_CODECS_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * This structure defines a set of parameters that may be passed - * to every ASN.1 encoder or decoder function. - * WARNING: if max_stack_size member is set, and you are calling the - * function pointers of the asn_TYPE_descriptor_t directly, - * this structure must be ALLOCATED ON THE STACK! - * If you can't always satisfy this requirement, use ber_decode(), - * xer_decode() and uper_decode() functions instead. - */ -typedef struct asn_codec_ctx_s { - /* - * Limit the decoder routines to use no (much) more stack than a given - * number of bytes. Most of decoders are stack-based, and this - * would protect against stack overflows if the number of nested - * encodings is high. - * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, - * and are safe from this kind of overflow. - * A value from getrlimit(RLIMIT_STACK) may be used to initialize - * this variable. Be careful in multithreaded environments, as the - * stack size is rather limited. - */ - size_t max_stack_size; /* 0 disables stack bounds checking */ -} asn_codec_ctx_t; - -/* - * Type of the return value of the encoding functions (der_encode, xer_encode). - */ -typedef struct asn_enc_rval_s { - /* - * Number of bytes encoded. - * -1 indicates failure to encode the structure. - * In this case, the members below this one are meaningful. - */ - ssize_t encoded; - - /* - * Members meaningful when (encoded == -1), for post mortem analysis. - */ - - /* Type which cannot be encoded */ - struct asn_TYPE_descriptor_s *failed_type; - - /* Pointer to the structure of that type */ - void *structure_ptr; -} asn_enc_rval_t; -#define _ASN_ENCODE_FAILED do { \ - asn_enc_rval_t tmp_error; \ - tmp_error.encoded = -1; \ - tmp_error.failed_type = td; \ - tmp_error.structure_ptr = sptr; \ - ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define _ASN_ENCODED_OK(rval) do { \ - rval.structure_ptr = 0; \ - rval.failed_type = 0; \ - return rval; \ -} while(0) - -/* - * Type of the return value of the decoding functions (ber_decode, xer_decode) - * - * Please note that the number of consumed bytes is ALWAYS meaningful, - * even if code==RC_FAIL. This is to indicate the number of successfully - * decoded bytes, hence providing a possibility to fail with more diagnostics - * (i.e., print the offending remainder of the buffer). - */ -enum asn_dec_rval_code_e { - RC_OK, /* Decoded successfully */ - RC_WMORE, /* More data expected, call again */ - RC_FAIL /* Failure to decode data */ -}; -typedef struct asn_dec_rval_s { - enum asn_dec_rval_code_e code; /* Result code */ - size_t consumed; /* Number of bytes consumed */ -} asn_dec_rval_t; -#define _ASN_DECODE_FAILED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_FAIL; \ - tmp_error.consumed = 0; \ - ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define _ASN_DECODE_STARVED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_WMORE; \ - tmp_error.consumed = 0; \ - return tmp_error; \ -} while(0) - -#ifdef __cplusplus -} -#endif - -#endif /* _ASN_CODECS_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h deleted file mode 100644 index be673ba19..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h +++ /dev/null @@ -1,53 +0,0 @@ -/*- - * Copyright (c) 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_CODECS_PRIM_H -#define ASN_CODECS_PRIM_H - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ASN__PRIMITIVE_TYPE_s { - uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ - int size; /* Size of the buffer */ -} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ - -asn_struct_free_f ASN__PRIMITIVE_TYPE_free; -ber_type_decoder_f ber_decode_primitive; -der_type_encoder_f der_encode_primitive; - -/* - * A callback specification for the xer_decode_primitive() function below. - */ -enum xer_pbd_rval { - XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ - XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ - XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ - XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ - XPBD_BODY_CONSUMED /* Body is recognized and consumed */ -}; -typedef enum xer_pbd_rval (xer_primitive_body_decoder_f) - (asn_TYPE_descriptor_t *td, void *struct_ptr, - const void *chunk_buf, size_t chunk_size); - -/* - * Specific function to decode simple primitive types. - * Also see xer_decode_general() in xer_decoder.h - */ -asn_dec_rval_t xer_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *type_descriptor, - void **struct_ptr, size_t struct_size, - const char *opt_mname, - const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder -); - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h deleted file mode 100644 index f4f248dae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h +++ /dev/null @@ -1,126 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005, 2007 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Declarations internally useful for the ASN.1 support code. - */ -#ifndef _ASN_INTERNAL_H_ -#define _ASN_INTERNAL_H_ - -#include "asn_application.h" /* Application-visible API */ - -#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ -#include "assert.h" /* for assert() macro */ -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* Environment version might be used to avoid running with the old library */ -#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ -int get_asn1c_environment_version(void); /* Run-time version */ - -#define CALLOC(nmemb, size) calloc(nmemb, size) -#define MALLOC(size) malloc(size) -#define REALLOC(oldptr, size) realloc(oldptr, size) -#define FREEMEM(ptr) free(ptr) - -#define asn_debug_indent 0 -#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) - -/* - * A macro for debugging the ASN.1 internals. - * You may enable or override it. - */ -#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ -#if EMIT_ASN_DEBUG == 1 /* And it was asked to emit this code... */ -#ifdef __GNUC__ -#ifdef ASN_THREAD_SAFE -/* Thread safety requires sacrifice in output indentation: - * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ -#else /* !ASN_THREAD_SAFE */ -#undef ASN_DEBUG_INDENT_ADD -#undef asn_debug_indent -int asn_debug_indent; -#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) -#endif /* ASN_THREAD_SAFE */ -#define ASN_DEBUG(fmt, args...) do { \ - int adi = asn_debug_indent; \ - while(adi--) fprintf(stderr, " "); \ - fprintf(stderr, fmt, ##args); \ - fprintf(stderr, " (%s:%d)\n", \ - __FILE__, __LINE__); \ - } while(0) -#else /* !__GNUC__ */ -void ASN_DEBUG_f(const char *fmt, ...); -#define ASN_DEBUG ASN_DEBUG_f -#endif /* __GNUC__ */ -#else /* EMIT_ASN_DEBUG != 1 */ -static inline void ASN_DEBUG(const char *fmt, ...) { (void)fmt; } -#endif /* EMIT_ASN_DEBUG */ -#endif /* ASN_DEBUG */ - -/* - * Invoke the application-supplied callback and fail, if something is wrong. - */ -#define __ASN_E_cbc(buf, size) (cb((buf), (size), app_key) < 0) -#define _ASN_E_CALLBACK(foo) do { \ - if(foo) goto cb_failed; \ - } while(0) -#define _ASN_CALLBACK(buf, size) \ - _ASN_E_CALLBACK(__ASN_E_cbc(buf, size)) -#define _ASN_CALLBACK2(buf1, size1, buf2, size2) \ - _ASN_E_CALLBACK(__ASN_E_cbc(buf1, size1) || __ASN_E_cbc(buf2, size2)) -#define _ASN_CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ - _ASN_E_CALLBACK(__ASN_E_cbc(buf1, size1) \ - || __ASN_E_cbc(buf2, size2) \ - || __ASN_E_cbc(buf3, size3)) - -#define _i_ASN_TEXT_INDENT(nl, level) do { \ - int __level = (level); \ - int __nl = ((nl) != 0); \ - int __i; \ - if(__nl) _ASN_CALLBACK("\n", 1); \ - if(__level < 0) __level = 0; \ - for(__i = 0; __i < __level; __i++) \ - _ASN_CALLBACK(" ", 4); \ - er.encoded += __nl + 4 * __level; \ -} while(0) - -#define _i_INDENT(nl) do { \ - int __i; \ - if((nl) && cb("\n", 1, app_key) < 0) return -1; \ - for(__i = 0; __i < ilevel; __i++) \ - if(cb(" ", 4, app_key) < 0) return -1; \ -} while(0) - -/* - * Check stack against overflow, if limit is set. - */ -#define _ASN_DEFAULT_STACK_MAX (30000) -static inline int -_ASN_STACK_OVERFLOW_CHECK(asn_codec_ctx_t *ctx) { - if(ctx && ctx->max_stack_size) { - - /* ctx MUST be allocated on the stack */ - ptrdiff_t usedstack = ((char *)ctx - (char *)&ctx); - if(usedstack > 0) usedstack = -usedstack; /* grows up! */ - - /* double negative required to avoid int wrap-around */ - if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { - ASN_DEBUG("Stack limit %ld reached", - (long)ctx->max_stack_size); - return -1; - } - } - return 0; -} - -#ifdef __cplusplus -} -#endif - -#endif /* _ASN_INTERNAL_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h deleted file mode 100644 index 1e6e49f6a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h +++ /dev/null @@ -1,129 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2007 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Miscellaneous system-dependent types. - */ -#ifndef _ASN_SYSTEM_H_ -#define _ASN_SYSTEM_H_ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "stdio.h" /* For snprintf(3) */ -#include "stdlib.h" /* For *alloc(3) */ -#include "string.h" /* For memcpy(3) */ -#include "sys/types.h" /* For size_t */ -#include "limits.h" /* For LONG_MAX */ -#include "stdarg.h" /* For va_start */ -#include "stddef.h" /* for offsetof and ptrdiff_t */ - -#ifdef _WIN32 - -#include "malloc.h" -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ -#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ - | (((l) << 8) & 0xff0000) \ - | (((l) >> 8) & 0xff00) \ - | ((l >> 24) & 0xff)) - -#ifdef _MSC_VER /* MSVS.Net */ -#ifndef __cplusplus -#define inline __inline -#endif -#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ -#define ssize_t SSIZE_T -typedef char int8_t; -typedef short int16_t; -typedef int int32_t; -typedef unsigned char uint8_t; -typedef unsigned short uint16_t; -typedef unsigned int uint32_t; -#endif /* ASSUMESTDTYPES */ -#define WIN32_LEAN_AND_MEAN -#include "windows.h" -#include "float.h" -#define isnan _isnan -#define finite _finite -#define copysign _copysign -#define ilogb _logb -#else /* !_MSC_VER */ -#include "stdint.h" -#endif /* _MSC_VER */ - -#else /* !_WIN32 */ - -#if defined(__vxworks) -#include "types/vxTypes.h" -#else /* !defined(__vxworks) */ - -#include "inttypes.h" /* C99 specifies this file */ -/* - * 1. Earlier FreeBSD version didn't have , - * but was present. - * 2. Sun Solaris requires for alloca(3), - * but does not have . - */ -#if (!defined(__FreeBSD__) || !defined(_SYS_INTTYPES_H_)) -#if defined(sun) -#include "alloca.h" /* For alloca(3) */ -#include "ieeefp.h" /* for finite(3) */ -#elif defined(__hpux) -#ifdef __GNUC__ -#include "alloca.h" /* For alloca(3) */ -#else /* !__GNUC__ */ -#define inline -#endif /* __GNUC__ */ -#else -#include "stdint.h" /* SUSv2+ and C99 specify this file, for uintXX_t */ -#endif /* defined(sun) */ -#endif - -#include "netinet/in.h" /* for ntohl() */ -#define sys_ntohl(foo) ntohl(foo) - -#endif /* defined(__vxworks) */ - -#endif /* _WIN32 */ - -#if __GNUC__ >= 3 -#ifndef GCC_PRINTFLIKE -#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) -#endif -#ifndef GCC_NOTUSED -#define GCC_NOTUSED __attribute__((unused)) -#endif -#else -#ifndef GCC_PRINTFLIKE -#define GCC_PRINTFLIKE(fmt,var) /* nothing */ -#endif -#ifndef GCC_NOTUSED -#define GCC_NOTUSED -#endif -#endif - -/* Figure out if thread safety is requested */ -#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) -#define ASN_THREAD_SAFE -#endif /* Thread safety */ - -#ifndef offsetof /* If not defined by */ -#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) -#endif /* offsetof */ - -#ifndef MIN /* Suitable for comparing primitive types (integers) */ -#if defined(__GNUC__) -#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ - ((_a)<(_b)?(_a):(_b)); }) -#else /* !__GNUC__ */ -#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ -#endif /* __GNUC__ */ -#endif /* MIN */ - -#endif /* _ASN_SYSTEM_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h deleted file mode 100644 index a3e5c5a3d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h +++ /dev/null @@ -1,64 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_DECODER_H_ -#define _BER_DECODER_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_codec_ctx_s; /* Forward declaration */ - -/* - * The BER decoder of any type. - * This function may be invoked directly from the application. - * The der_encode() function (der_encoder.h) is an opposite to ber_decode(). - */ -asn_dec_rval_t ber_decode(struct asn_codec_ctx_s *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ - ); - -/* - * Type of generic function which decodes the byte stream into the structure. - */ -typedef asn_dec_rval_t (ber_type_decoder_f)( - struct asn_codec_ctx_s *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, const void *buf_ptr, size_t size, - int tag_mode); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Check that all tags correspond to the type definition (as given in head). - * On return, last_length would contain either a non-negative length of the - * value part of the last TLV, or the negative number of expected - * "end of content" sequences. The number may only be negative if the - * head->last_tag_form is non-zero. - */ -asn_dec_rval_t ber_check_tags( - struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ - struct asn_TYPE_descriptor_s *type_descriptor, - asn_struct_ctx_t *opt_ctx, /* saved decoding context */ - const void *ptr, size_t size, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {-1,0:1}: any, primitive, constr */ - ber_tlv_len_t *last_length, - int *opt_tlv_form /* optional tag form */ - ); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h deleted file mode 100644 index 349680224..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h +++ /dev/null @@ -1,50 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_LENGTH_H_ -#define _BER_TLV_LENGTH_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ssize_t ber_tlv_len_t; - -/* - * This function tries to fetch the length of the BER TLV value and place it - * in *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - * On return with >0, len_r is constrained as -1..MAX, where -1 mean - * that the value is of indefinite length. - */ -ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r); - -/* - * This function expects bufptr to be positioned over L in TLV. - * It returns number of bytes occupied by L and V together, suitable - * for skipping. The function properly handles indefinite length. - * RETURN VALUES: - * Standard {-1,0,>0} convention. - */ -ssize_t ber_skip_length( - struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ - int _is_constructed, const void *bufptr, size_t size); - -/* - * This function serializes the length (L from TLV) in DER format. - * It always returns number of bytes necessary to represent the length, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h deleted file mode 100644 index 60e866861..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_TAG_H_ -#define _BER_TLV_TAG_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum asn_tag_class { - ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ - ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ - ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ - ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ -}; -typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ - -/* - * Tag class is encoded together with tag value for optimization purposes. - */ -#define BER_TAG_CLASS(tag) ((tag) & 0x3) -#define BER_TAG_VALUE(tag) ((tag) >> 2) -#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) - -#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) - -/* - * Several functions for printing the TAG in the canonical form - * (i.e. "[PRIVATE 0]"). - * Return values correspond to their libc counterparts (if any). - */ -ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); -ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); -char *ber_tlv_tag_string(ber_tlv_tag_t tag); - - -/* - * This function tries to fetch the tag from the input stream. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering tag. - * >0: Number of bytes used from bufptr. tag_r will contain the tag. - */ -ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); - -/* - * This function serializes the tag (T from TLV) in BER format. - * It always returns number of bytes necessary to represent the tag, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h deleted file mode 100644 index 2fb40592b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h +++ /dev/null @@ -1,57 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_CHOICE_H_ -#define _CONSTR_CHOICE_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_CHOICE_specifics_s { - /* - * Target structure description. - */ - int struct_size; /* Size of the target structure. */ - int ctx_offset; /* Offset of the asn_codec_ctx_t member */ - int pres_offset; /* Identifier of the present member */ - int pres_size; /* Size of the identifier (enum) */ - - /* - * Tags to members mapping table. - */ - asn_TYPE_tag2member_t *tag2el; - int tag2el_count; - - /* Canonical ordering of CHOICE elements, for PER */ - int *canonical_order; - - /* - * Extensions-related stuff. - */ - int ext_start; /* First member of extensions, or -1 */ -} asn_CHOICE_specifics_t; - -/* - * A set specialized functions dealing with the CHOICE type. - */ -asn_struct_free_f CHOICE_free; -asn_struct_print_f CHOICE_print; -asn_constr_check_f CHOICE_constraint; -ber_type_decoder_f CHOICE_decode_ber; -der_type_encoder_f CHOICE_encode_der; -xer_type_decoder_f CHOICE_decode_xer; -xer_type_encoder_f CHOICE_encode_xer; -per_type_decoder_f CHOICE_decode_uper; -per_type_encoder_f CHOICE_encode_uper; -asn_outmost_tag_f CHOICE_outmost_tag; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h deleted file mode 100644 index ab07268a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_H_ -#define _CONSTR_SEQUENCE_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SEQUENCE_specifics_s { - /* - * Target structure description. - */ - int struct_size; /* Size of the target structure. */ - int ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* - * Tags to members mapping table (sorted). - */ - asn_TYPE_tag2member_t *tag2el; - int tag2el_count; - - /* - * Optional members of the extensions root (roms) or additions (aoms). - * Meaningful for PER. - */ - int *oms; /* Optional MemberS */ - int roms_count; /* Root optional members count */ - int aoms_count; /* Additions optional members count */ - - /* - * Description of an extensions group. - */ - int ext_after; /* Extensions start after this member */ - int ext_before; /* Extensions stop before this member */ -} asn_SEQUENCE_specifics_t; - - -/* - * A set specialized functions dealing with the SEQUENCE type. - */ -asn_struct_free_f SEQUENCE_free; -asn_struct_print_f SEQUENCE_print; -asn_constr_check_f SEQUENCE_constraint; -ber_type_decoder_f SEQUENCE_decode_ber; -der_type_encoder_f SEQUENCE_encode_der; -xer_type_decoder_f SEQUENCE_decode_xer; -xer_type_encoder_f SEQUENCE_encode_xer; -per_type_decoder_f SEQUENCE_decode_uper; -per_type_encoder_f SEQUENCE_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h deleted file mode 100644 index a8dae9625..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h +++ /dev/null @@ -1,33 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_OF_H_ -#define _CONSTR_SEQUENCE_OF_H_ - -#include "asn_application.h" -#include "constr_SET_OF.h" /* Implemented using SET OF */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A set specialized functions dealing with the SEQUENCE OF type. - * Generally implemented using SET OF. - */ -#define SEQUENCE_OF_free SET_OF_free -#define SEQUENCE_OF_print SET_OF_print -#define SEQUENCE_OF_constraint SET_OF_constraint -#define SEQUENCE_OF_decode_ber SET_OF_decode_ber -#define SEQUENCE_OF_decode_xer SET_OF_decode_xer -#define SEQUENCE_OF_decode_uper SET_OF_decode_uper -der_type_encoder_f SEQUENCE_OF_encode_der; -xer_type_encoder_f SEQUENCE_OF_encode_xer; -per_type_encoder_f SEQUENCE_OF_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h deleted file mode 100644 index 2ec2847c2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h +++ /dev/null @@ -1,42 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SET_OF_H_ -#define _CONSTR_SET_OF_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SET_OF_specifics_s { - /* - * Target structure description. - */ - int struct_size; /* Size of the target structure. */ - int ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* XER-specific stuff */ - int as_XMLValueList; /* The member type must be encoded like this */ -} asn_SET_OF_specifics_t; - -/* - * A set specialized functions dealing with the SET OF type. - */ -asn_struct_free_f SET_OF_free; -asn_struct_print_f SET_OF_print; -asn_constr_check_f SET_OF_constraint; -ber_type_decoder_f SET_OF_decode_ber; -der_type_encoder_f SET_OF_encode_der; -xer_type_decoder_f SET_OF_decode_xer; -xer_type_encoder_f SET_OF_encode_xer; -per_type_decoder_f SET_OF_decode_uper; -per_type_encoder_f SET_OF_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h deleted file mode 100644 index 92e25cadd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h +++ /dev/null @@ -1,180 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This file contains the declaration structure called "ASN.1 Type Definition", - * which holds all information necessary for encoding and decoding routines. - * This structure even contains pointer to these encoding and decoding routines - * for each defined ASN.1 type. - */ -#ifndef _CONSTR_TYPE_H_ -#define _CONSTR_TYPE_H_ - -#include "ber_tlv_length.h" -#include "ber_tlv_tag.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_TYPE_member_s; /* Forward declaration */ - -/* - * This type provides the context information for various ASN.1 routines, - * primarily ones doing decoding. A member _asn_ctx of this type must be - * included into certain target language's structures, such as compound types. - */ -typedef struct asn_struct_ctx_s { - short phase; /* Decoding phase */ - short step; /* Elementary step of a phase */ - int context; /* Other context information */ - void *ptr; /* Decoder-specific stuff (stack elements) */ - ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ -} asn_struct_ctx_t; - -#include "ber_decoder.h" /* Basic Encoding Rules decoder */ -#include "der_encoder.h" /* Distinguished Encoding Rules encoder */ -#include "xer_decoder.h" /* Decoder of XER (XML, text) */ -#include "xer_encoder.h" /* Encoder into XER (XML, text) */ -#include "per_decoder.h" /* Packet Encoding Rules decoder */ -#include "per_encoder.h" /* Packet Encoding Rules encoder */ -#include "constraints.h" /* Subtype constraints support */ - -/* - * Free the structure according to its specification. - * If (free_contents_only) is set, the wrapper structure itself (struct_ptr) - * will not be freed. (It may be useful in case the structure is allocated - * statically or arranged on the stack, yet its elements are allocated - * dynamically.) - */ -typedef void (asn_struct_free_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, int free_contents_only); -#define ASN_STRUCT_FREE(asn_DEF, ptr) (asn_DEF).free_struct(&(asn_DEF),ptr,0) -#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ - (asn_DEF).free_struct(&(asn_DEF),ptr,1) - -/* - * Print the structure according to its specification. - */ -typedef int (asn_struct_print_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, - int level, /* Indentation level */ - asn_app_consume_bytes_f *callback, void *app_key); - -/* - * Return the outmost tag of the type. - * If the type is untagged CHOICE, the dynamic operation is performed. - * NOTE: This function pointer type is only useful internally. - * Do not use it in your application. - */ -typedef ber_tlv_tag_t (asn_outmost_tag_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); -/* The instance of the above function type; used internally. */ -asn_outmost_tag_f asn_TYPE_outmost_tag; - - -/* - * The definitive description of the destination language's structure. - */ -typedef struct asn_TYPE_descriptor_s { - char *name; /* A name of the ASN.1 type. "" in some cases. */ - char *xml_tag; /* Name used in XML tag */ - - /* - * Generalized functions for dealing with the specific type. - * May be directly invoked by applications. - */ - asn_struct_free_f *free_struct; /* Free the structure */ - asn_struct_print_f *print_struct; /* Human readable output */ - asn_constr_check_f *check_constraints; /* Constraints validator */ - ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ - der_type_encoder_f *der_encoder; /* Canonical DER encoder */ - xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ - xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ - per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ - per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ - - /*********************************************************************** - * Internally useful members. Not to be used by applications directly. * - **********************************************************************/ - - /* - * Tags that are expected to occur. - */ - asn_outmost_tag_f *outmost_tag; /* */ - ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ - int tags_count; /* Number of tags which are expected */ - ber_tlv_tag_t *all_tags;/* Every tag for BER/containment */ - int all_tags_count; /* Number of tags */ - - asn_per_constraints_t *per_constraints; /* PER compiled constraints */ - - /* - * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). - */ - struct asn_TYPE_member_s *elements; - int elements_count; - - /* - * Additional information describing the type, used by appropriate - * functions above. - */ - void *specifics; -} asn_TYPE_descriptor_t; - -/* - * This type describes an element of the constructed type, - * i.e. SEQUENCE, SET, CHOICE, etc. - */ - enum asn_TYPE_flags_e { - ATF_NOFLAGS, - ATF_POINTER = 0x01, /* Represented by the pointer */ - ATF_OPEN_TYPE = 0x02 /* ANY type, without meaningful tag */ - }; -typedef struct asn_TYPE_member_s { - enum asn_TYPE_flags_e flags; /* Element's presentation flags */ - int optional; /* Following optional members, including current */ - int memb_offset; /* Offset of the element */ - ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ - int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ - asn_TYPE_descriptor_t *type; /* Member type descriptor */ - asn_constr_check_f *memb_constraints; /* Constraints validator */ - asn_per_constraints_t *per_constraints; /* PER compiled constraints */ - int (*default_value)(int setval, void **sptr); /* DEFAULT */ - char *name; /* ASN.1 identifier of the element */ -} asn_TYPE_member_t; - -/* - * BER tag to element number mapping. - */ -typedef struct asn_TYPE_tag2member_s { - ber_tlv_tag_t el_tag; /* Outmost tag of the member */ - int el_no; /* Index of the associated member, base 0 */ - int toff_first; /* First occurence of the el_tag, relative */ - int toff_last; /* Last occurence of the el_tag, relatvie */ -} asn_TYPE_tag2member_t; - -/* - * This function is a wrapper around (td)->print_struct, which prints out - * the contents of the target language's structure (struct_ptr) into the - * file pointer (stream) in human readable form. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem dumping the structure. - * (See also xer_fprint() in xer_encoder.h) - */ -int asn_fprint(FILE *stream, /* Destination stream descriptor */ - asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ - const void *struct_ptr); /* Structure to be printed */ - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h deleted file mode 100644 index e216d8107..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h +++ /dev/null @@ -1,63 +0,0 @@ -/*- - * Copyright (c) 2004, 2006 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _ASN1_CONSTRAINTS_VALIDATOR_H_ -#define _ASN1_CONSTRAINTS_VALIDATOR_H_ - -#include "asn_system.h" /* Platform-dependent types */ - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Validate the structure according to the ASN.1 constraints. - * If errbuf and errlen are given, they shall be pointing to the appropriate - * buffer space and its length before calling this function. Alternatively, - * they could be passed as NULL's. If constraints validation fails, - * errlen will contain the actual number of bytes taken from the errbuf - * to encode an error message (properly 0-terminated). - * - * RETURN VALUES: - * This function returns 0 in case all ASN.1 constraints are met - * and -1 if one or more constraints were failed. - */ -int -asn_check_constraints(struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Target language's structure */ - char *errbuf, /* Returned error description */ - size_t *errlen /* Length of the error description */ - ); - - -/* - * Generic type for constraint checking callback, - * associated with every type descriptor. - */ -typedef int (asn_constr_check_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, - asn_app_constraint_failed_f *optional_callback, /* Log the error */ - void *optional_app_key /* Opaque key passed to a callback */ - ); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ -asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ - -/* - * Invoke the callback with a complete error message. - */ -#define _ASN_CTFAIL if(ctfailcb) ctfailcb - -#ifdef __cplusplus -} -#endif - -#endif /* _ASN1_CONSTRAINTS_VALIDATOR_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h deleted file mode 100644 index b7debab3f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h +++ /dev/null @@ -1,68 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _DER_ENCODER_H_ -#define _DER_ENCODER_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The DER encoder of any type. May be invoked by the application. - * The ber_decode() function (ber_decoder.h) is an opposite of der_encode(). - */ -asn_enc_rval_t der_encode(struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ - ); - -/* A variant of der_encode() which encodes data into the pre-allocated buffer */ -asn_enc_rval_t der_encode_to_buffer( - struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ - ); - -/* - * Type of the generic DER encoder. - */ -typedef asn_enc_rval_t (der_type_encoder_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - ber_tlv_tag_t tag, - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ - ); - - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t der_write_tags( - struct asn_TYPE_descriptor_s *type_descriptor, - size_t struct_length, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {0,!0}: prim, constructed */ - ber_tlv_tag_t tag, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key - ); - -#ifdef __cplusplus -} -#endif - -#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h deleted file mode 100644 index 9fe08887a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h +++ /dev/null @@ -1,56 +0,0 @@ -/*- - * Copyright (c) 2005, 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_DECODER_H_ -#define _PER_DECODER_H_ - -#include "asn_application.h" -#include "per_support.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER decoder of a "complete encoding" as per X.691#10.1. - * On success, this call always returns (.consumed >= 1), as per X.691#10.1.3. - */ -asn_dec_rval_t uper_decode_complete(struct asn_codec_ctx_s *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ - ); - -/* - * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. - * WARNING: This call returns the number of BITS read from the stream. Beware. - */ -asn_dec_rval_t uper_decode(struct asn_codec_ctx_s *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size, /* Size of data buffer */ - int skip_bits, /* Number of unused leading bits, 0..7 */ - int unused_bits /* Number of unused tailing bits, 0..7 */ - ); - - -/* - * Type of the type-specific PER decoder function. - */ -typedef asn_dec_rval_t (per_type_decoder_f)(asn_codec_ctx_t *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, - asn_per_constraints_t *constraints, - void **struct_ptr, - asn_per_data_t *per_data - ); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h deleted file mode 100644 index 0c4501791..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h +++ /dev/null @@ -1,69 +0,0 @@ -/*- - * Copyright (c) 2006, 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_ENCODER_H_ -#define _PER_ENCODER_H_ - -#include "asn_application.h" -#include "per_support.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. Use the following formula to convert to bytes: - * bytes = ((.encoded + 7) / 8) - */ -asn_enc_rval_t uper_encode(struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * A variant of uper_encode() which encodes data into the existing buffer - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. - */ -asn_enc_rval_t uper_encode_to_buffer( - struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (max) */ -); - -/* - * A variant of uper_encode_to_buffer() which allocates buffer itself. - * Returns the number of bytes in the buffer or -1 in case of failure. - * WARNING: This function produces a "Production of the complete encoding", - * with length of at least one octet. Contrast this to precise bit-packing - * encoding of uper_encode() and uper_encode_to_buffer(). - */ -ssize_t uper_encode_to_new_buffer( - struct asn_TYPE_descriptor_s *type_descriptor, - asn_per_constraints_t *constraints, - void *struct_ptr, /* Structure to be encoded */ - void **buffer_r /* Buffer allocated and returned */ -); - -/* - * Type of the generic PER encoder function. - */ -typedef asn_enc_rval_t (per_type_encoder_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - asn_per_constraints_t *constraints, - void *struct_ptr, - asn_per_outp_t *per_output -); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h deleted file mode 100644 index facfaa637..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_OPENTYPE_H_ -#define _PER_OPENTYPE_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -asn_dec_rval_t uper_open_type_get(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd); - -int uper_open_type_skip(asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); - -int uper_open_type_put(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h deleted file mode 100644 index eb00c9b1e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Copyright (c) 2005-2014 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_SUPPORT_H_ -#define _PER_SUPPORT_H_ - -#include "asn_system.h" /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Pre-computed PER constraints. - */ -typedef struct asn_per_constraint_s { - enum asn_per_constraint_flags { - APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ - APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ - APC_CONSTRAINED = 0x2, /* Fully constrained */ - APC_EXTENSIBLE = 0x4 /* May have extension */ - } flags; - int range_bits; /* Full number of bits in the range */ - int effective_bits; /* Effective bits */ - long lower_bound; /* "lb" value */ - long upper_bound; /* "ub" value */ -} asn_per_constraint_t; - -typedef struct asn_per_constraints_s { - asn_per_constraint_t value; - asn_per_constraint_t size; - int (*value2code)(unsigned int value); - int (*code2value)(unsigned int code); -} asn_per_constraints_t; - -/* - * This structure describes a position inside an incoming PER bit stream. - */ -typedef struct asn_per_data_s { - const uint8_t *buffer; /* Pointer to the octet stream */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits in the stream */ - size_t moved; /* Number of bits moved through this bit stream */ - int (*refill)(struct asn_per_data_s *); - void *refill_key; -} asn_per_data_t; - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int32_t per_get_few_bits(asn_per_data_t *per_data, int get_nbits); - -/* Undo the immediately preceeding "get_few_bits" operation */ -void per_get_undo(asn_per_data_t *per_data, int get_nbits); - -/* - * Extract a large number of bits from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int per_get_many_bits(asn_per_data_t *pd, uint8_t *dst, int right_align, - int get_nbits); - -/* - * Get the length "n" from the Unaligned PER stream. - */ -ssize_t uper_get_length(asn_per_data_t *pd, - int effective_bound_bits, - int *repeat); - -/* - * Get the normally small length "n". - */ -ssize_t uper_get_nslength(asn_per_data_t *pd); - -/* - * Get the normally small non-negative whole number. - */ -ssize_t uper_get_nsnnwn(asn_per_data_t *pd); - -/* X.691-2008/11, #11.5.6 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, unsigned long *v, int nbits); - -/* Non-thread-safe debugging function, don't use it */ -char *per_data_string(asn_per_data_t *pd); - -/* - * This structure supports forming PER output. - */ -typedef struct asn_per_outp_s { - uint8_t *buffer; /* Pointer into the (tmpspace) */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits left in (tmpspace) */ - uint8_t tmpspace[32]; /* Preliminary storage to hold data */ - int (*outper)(const void *data, size_t size, void *op_key); - void *op_key; /* Key for (outper) data callback */ - size_t flushed_bytes; /* Bytes already flushed through (outper) */ -} asn_per_outp_t; - -/* Output a small number of bits (<= 31) */ -int per_put_few_bits(asn_per_outp_t *per_data, uint32_t bits, int obits); - -/* Output a large number of bits */ -int per_put_many_bits(asn_per_outp_t *po, const uint8_t *src, int put_nbits); - -/* X.691-2008/11, #11.5 */ -int uper_put_constrained_whole_number_s(asn_per_outp_t *po, long v, int nbits); -int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits); - -/* - * Put the length "n" to the Unaligned PER stream. - * This function returns the number of units which may be flushed - * in the next units saving iteration. - */ -ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length); - -/* - * Put the normally small length "n" to the Unaligned PER stream. - * Returns 0 or -1. - */ -int uper_put_nslength(asn_per_outp_t *po, size_t length); - -/* - * Put the normally small non-negative whole number. - */ -int uper_put_nsnnwn(asn_per_outp_t *po, int n); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h deleted file mode 100644 index 4224176db..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * version.h - * - * Created on: Aug 29, 2014 - * Author: ivp - */ - -#ifndef VERSION_H_ -#define VERSION_H_ - -#define TMXASN_VERSION "2.4.0" -#define TMXASN_SPEC "2015" - -#endif /* VERSION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h deleted file mode 100644 index c5c6b7f34..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h +++ /dev/null @@ -1,105 +0,0 @@ -/*- - * Copyright (c) 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_DECODER_H_ -#define _XER_DECODER_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The XER decoder of any ASN.1 type. May be invoked by the application. - */ -asn_dec_rval_t xer_decode(struct asn_codec_ctx_s *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ - ); - -/* - * Type of the type-specific XER decoder function. - */ -typedef asn_dec_rval_t (xer_type_decoder_f)(asn_codec_ctx_t *opt_codec_ctx, - struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, - const char *opt_mname, /* Member name */ - const void *buf_ptr, size_t size - ); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Generalized function for decoding the primitive values. - * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 - * and others. This function should not be used by applications, as its API - * is subject to changes. - */ -asn_dec_rval_t xer_decode_general(asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, /* Treated as opaque pointer */ - const char *xml_tag, /* Expected XML tag name */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder) - (void *struct_key, const void *chunk_buf, size_t chunk_size), - ssize_t (*body_receiver) - (void *struct_key, const void *chunk_buf, size_t chunk_size, - int have_more) - ); - - -/* - * Fetch the next XER (XML) token from the stream. - * The function returns the number of bytes occupied by the chunk type, - * returned in the _ch_type. The _ch_type is only set (and valid) when - * the return value is greater than 0. - */ - typedef enum pxer_chunk_type { - PXER_TAG, /* Complete XER tag */ - PXER_TEXT, /* Plain text between XER tags */ - PXER_COMMENT /* A comment, may be part of */ - } pxer_chunk_type_e; -ssize_t xer_next_token(int *stateContext, - const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); - -/* - * This function checks the buffer against the tag name is expected to occur. - */ - typedef enum xer_check_tag { - XCT_BROKEN = 0, /* The tag is broken */ - XCT_OPENING = 1, /* This is the tag */ - XCT_CLOSING = 2, /* This is the tag */ - XCT_BOTH = 3, /* This is the tag */ - XCT__UNK__MASK = 4, /* Mask of everything unexpected */ - XCT_UNKNOWN_OP = 5, /* Unexpected tag */ - XCT_UNKNOWN_CL = 6, /* Unexpected tag */ - XCT_UNKNOWN_BO = 7 /* Unexpected tag */ - } xer_check_tag_e; -xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, - const char *need_tag); - -/* - * Get the number of bytes consisting entirely of XER whitespace characters. - * RETURN VALUES: - * >=0: Number of whitespace characters in the string. - */ -size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); - -/* - * Skip the series of anticipated extensions. - */ -int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h deleted file mode 100644 index f86dc543e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h +++ /dev/null @@ -1,59 +0,0 @@ -/*- - * Copyright (c) 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_ENCODER_H_ -#define _XER_ENCODER_H_ - -#include "asn_application.h" - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ -enum xer_encoder_flags_e { - /* Mode of encoding */ - XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ - XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ -}; - -/* - * The XER encoder of any type. May be invoked by the application. - */ -asn_enc_rval_t xer_encode(struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ - ); - -/* - * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) - * output into the chosen file pointer. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem printing the structure. - * WARNING: No sensible errno value is returned. - */ -int xer_fprint(FILE *stream, struct asn_TYPE_descriptor_s *td, void *sptr); - -/* - * Type of the generic XER encoder. - */ -typedef asn_enc_rval_t (xer_type_encoder_f)( - struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, /* Structure to be encoded */ - int ilevel, /* Level of indentation */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ - ); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h deleted file mode 100644 index 39a748150..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_SUPPORT_H_ -#define _XER_SUPPORT_H_ - -#include "asn_system.h" /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Types of data transferred to the application. - */ -typedef enum { - PXML_TEXT, /* Plain text between XML tags. */ - PXML_TAG, /* A tag, starting with '<'. */ - PXML_COMMENT, /* An XML comment, including "". */ - /* - * The following chunk types are reported if the chunk - * terminates the specified XML element. - */ - PXML_TAG_END, /* Tag ended */ - PXML_COMMENT_END /* Comment ended */ -} pxml_chunk_type_e; - -/* - * Callback function that is called by the parser when parsed data is - * available. The _opaque is the pointer to a field containing opaque user - * data specified in pxml_create() call. The chunk type is _type and the text - * data is the piece of buffer identified by _bufid (as supplied to - * pxml_feed() call) starting at offset _offset and of _size bytes size. - * The chunk is NOT '\0'-terminated. - */ -typedef int (pxml_callback_f)(pxml_chunk_type_e _type, - const void *_chunk_data, size_t _chunk_size, void *_key); - -/* - * Parse the given buffer as it were a chunk of XML data. - * Invoke the specified callback each time the meaninful data is found. - * This function returns number of bytes consumed from the bufer. - * It will always be lesser than or equal to the specified _size. - * The next invocation of this function must account the difference. - */ -ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, - pxml_callback_f *cb, void *_key); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h deleted file mode 100644 index b30381fa1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h +++ /dev/null @@ -1,65 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_TYPE_ANY_H -#define ASN_TYPE_ANY_H - -#include /* Implemented via OCTET STRING type */ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ANY { - uint8_t *buf; /* BER-encoded ANY contents */ - int size; /* Size of the above buffer */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} ANY_t; - -extern asn_TYPE_descriptor_t asn_DEF_ANY; -extern asn_TYPE_operation_t asn_OP_ANY; -extern asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs; - -asn_struct_free_f ANY_free; -asn_struct_print_f ANY_print; -ber_type_decoder_f ANY_decode_ber; -der_type_encoder_f ANY_encode_der; -xer_type_encoder_f ANY_encode_xer; -per_type_decoder_f ANY_decode_uper; -per_type_encoder_f ANY_encode_uper; -per_type_decoder_f ANY_decode_aper; -per_type_encoder_f ANY_encode_aper; - -#define ANY_free OCTET_STRING_free -#define ANY_print OCTET_STRING_print -#define ANY_compare OCTET_STRING_compare -#define ANY_constraint asn_generic_no_constraint -#define ANY_decode_ber OCTET_STRING_decode_ber -#define ANY_encode_der OCTET_STRING_encode_der -#define ANY_decode_xer OCTET_STRING_decode_xer_hex - -/****************************** - * Handy conversion routines. * - ******************************/ - -/* Convert another ASN.1 type into the ANY. This implies DER encoding. */ -int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr); -int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr); -ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr); -ANY_t *ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr); - -/* Convert the contents of the ANY type into the specified type. */ -int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); -int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); - -#define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size)) -#define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \ - &asn_DEF_ANY, (buf), (size)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_TYPE_ANY_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h deleted file mode 100644 index ad2949712..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AccelSteerYawRateConfidence_H_ -#define _AccelSteerYawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "SteeringWheelAngleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelSteerYawRateConfidence */ -typedef struct AccelSteerYawRateConfidence { - YawRateConfidence_t yawRate; - AccelerationConfidence_t acceleration; - SteeringWheelAngleConfidence_t steeringWheelAngle; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AccelSteerYawRateConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelSteerYawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h deleted file mode 100644 index 396141a05..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Acceleration_H_ -#define _Acceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Acceleration */ -typedef long Acceleration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Acceleration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Acceleration; -asn_struct_free_f Acceleration_free; -asn_struct_print_f Acceleration_print; -asn_constr_check_f Acceleration_constraint; -ber_type_decoder_f Acceleration_decode_ber; -der_type_encoder_f Acceleration_encode_der; -xer_type_decoder_f Acceleration_decode_xer; -xer_type_encoder_f Acceleration_encode_xer; -oer_type_decoder_f Acceleration_decode_oer; -oer_type_encoder_f Acceleration_encode_oer; -per_type_decoder_f Acceleration_decode_uper; -per_type_encoder_f Acceleration_encode_uper; -per_type_decoder_f Acceleration_decode_aper; -per_type_encoder_f Acceleration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Acceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h deleted file mode 100644 index 6c80df08a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AccelerationConfidence_H_ -#define _AccelerationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AccelerationConfidence { - AccelerationConfidence_unavailable = 0, - AccelerationConfidence_accl_100_00 = 1, - AccelerationConfidence_accl_010_00 = 2, - AccelerationConfidence_accl_005_00 = 3, - AccelerationConfidence_accl_001_00 = 4, - AccelerationConfidence_accl_000_10 = 5, - AccelerationConfidence_accl_000_05 = 6, - AccelerationConfidence_accl_000_01 = 7 -} e_AccelerationConfidence; - -/* AccelerationConfidence */ -typedef long AccelerationConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1; -asn_struct_free_f AccelerationConfidence_free; -asn_struct_print_f AccelerationConfidence_print; -asn_constr_check_f AccelerationConfidence_constraint; -ber_type_decoder_f AccelerationConfidence_decode_ber; -der_type_encoder_f AccelerationConfidence_encode_der; -xer_type_decoder_f AccelerationConfidence_decode_xer; -xer_type_encoder_f AccelerationConfidence_encode_xer; -oer_type_decoder_f AccelerationConfidence_decode_oer; -oer_type_encoder_f AccelerationConfidence_encode_oer; -per_type_decoder_f AccelerationConfidence_decode_uper; -per_type_encoder_f AccelerationConfidence_encode_uper; -per_type_decoder_f AccelerationConfidence_decode_aper; -per_type_encoder_f AccelerationConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h deleted file mode 100644 index 612793be2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AccelerationSet4Way_H_ -#define _AccelerationSet4Way_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Acceleration.h" -#include "VerticalAcceleration.h" -#include "YawRate.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AccelerationSet4Way */ -typedef struct AccelerationSet4Way { - Acceleration_t Long; - Acceleration_t lat; - VerticalAcceleration_t vert; - YawRate_t yaw; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AccelerationSet4Way_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; -extern asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1; -extern asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AccelerationSet4Way_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h deleted file mode 100644 index f4e463591..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AddGrpB_Angle_H_ -#define _AddGrpB_Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_Angle */ -typedef long AddGrpB_Angle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle; -asn_struct_free_f AddGrpB_Angle_free; -asn_struct_print_f AddGrpB_Angle_print; -asn_constr_check_f AddGrpB_Angle_constraint; -ber_type_decoder_f AddGrpB_Angle_decode_ber; -der_type_encoder_f AddGrpB_Angle_encode_der; -xer_type_decoder_f AddGrpB_Angle_decode_xer; -xer_type_encoder_f AddGrpB_Angle_encode_xer; -oer_type_decoder_f AddGrpB_Angle_decode_oer; -oer_type_encoder_f AddGrpB_Angle_encode_oer; -per_type_decoder_f AddGrpB_Angle_decode_uper; -per_type_encoder_f AddGrpB_Angle_encode_uper; -per_type_decoder_f AddGrpB_Angle_decode_aper; -per_type_encoder_f AddGrpB_Angle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h deleted file mode 100644 index e60b82fee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AddGrpB_DayOfWeek_H_ -#define _AddGrpB_DayOfWeek_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AddGrpB_DayOfWeek { - AddGrpB_DayOfWeek_unknown = 0, - AddGrpB_DayOfWeek_monday = 1, - AddGrpB_DayOfWeek_tuesday = 2, - AddGrpB_DayOfWeek_wednesday = 3, - AddGrpB_DayOfWeek_thursday = 4, - AddGrpB_DayOfWeek_friday = 5, - AddGrpB_DayOfWeek_saturday = 6, - AddGrpB_DayOfWeek_sunday = 7 -} e_AddGrpB_DayOfWeek; - -/* AddGrpB_DayOfWeek */ -typedef long AddGrpB_DayOfWeek_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek; -extern const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1; -asn_struct_free_f AddGrpB_DayOfWeek_free; -asn_struct_print_f AddGrpB_DayOfWeek_print; -asn_constr_check_f AddGrpB_DayOfWeek_constraint; -ber_type_decoder_f AddGrpB_DayOfWeek_decode_ber; -der_type_encoder_f AddGrpB_DayOfWeek_encode_der; -xer_type_decoder_f AddGrpB_DayOfWeek_decode_xer; -xer_type_encoder_f AddGrpB_DayOfWeek_encode_xer; -oer_type_decoder_f AddGrpB_DayOfWeek_decode_oer; -oer_type_encoder_f AddGrpB_DayOfWeek_encode_oer; -per_type_decoder_f AddGrpB_DayOfWeek_decode_uper; -per_type_encoder_f AddGrpB_DayOfWeek_encode_uper; -per_type_decoder_f AddGrpB_DayOfWeek_decode_aper; -per_type_encoder_f AddGrpB_DayOfWeek_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_DayOfWeek_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h deleted file mode 100644 index 4ade1c06a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AddGrpB_Elevation_H_ -#define _AddGrpB_Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_Elevation */ -typedef long AddGrpB_Elevation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation; -asn_struct_free_f AddGrpB_Elevation_free; -asn_struct_print_f AddGrpB_Elevation_print; -asn_constr_check_f AddGrpB_Elevation_constraint; -ber_type_decoder_f AddGrpB_Elevation_decode_ber; -der_type_encoder_f AddGrpB_Elevation_encode_der; -xer_type_decoder_f AddGrpB_Elevation_decode_xer; -xer_type_encoder_f AddGrpB_Elevation_encode_xer; -oer_type_decoder_f AddGrpB_Elevation_decode_oer; -oer_type_encoder_f AddGrpB_Elevation_encode_oer; -per_type_decoder_f AddGrpB_Elevation_decode_uper; -per_type_encoder_f AddGrpB_Elevation_encode_uper; -per_type_decoder_f AddGrpB_Elevation_decode_aper; -per_type_encoder_f AddGrpB_Elevation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h deleted file mode 100644 index 64f57e889..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AddGrpB_MsgCount_H_ -#define _AddGrpB_MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_MsgCount */ -typedef long AddGrpB_MsgCount_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount; -asn_struct_free_f AddGrpB_MsgCount_free; -asn_struct_print_f AddGrpB_MsgCount_print; -asn_constr_check_f AddGrpB_MsgCount_constraint; -ber_type_decoder_f AddGrpB_MsgCount_decode_ber; -der_type_encoder_f AddGrpB_MsgCount_encode_der; -xer_type_decoder_f AddGrpB_MsgCount_decode_xer; -xer_type_encoder_f AddGrpB_MsgCount_encode_xer; -oer_type_decoder_f AddGrpB_MsgCount_decode_oer; -oer_type_encoder_f AddGrpB_MsgCount_encode_oer; -per_type_decoder_f AddGrpB_MsgCount_decode_uper; -per_type_encoder_f AddGrpB_MsgCount_encode_uper; -per_type_decoder_f AddGrpB_MsgCount_decode_aper; -per_type_encoder_f AddGrpB_MsgCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h deleted file mode 100644 index e58042735..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AddGrpB_TimeMark_H_ -#define _AddGrpB_TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Year.h" -#include "Month.h" -#include "Day.h" -#include "SummerTime.h" -#include "Holiday.h" -#include "AddGrpB_DayOfWeek.h" -#include "Hour.h" -#include "Minute.h" -#include "Second.h" -#include "TenthSecond.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AddGrpB_TimeMark */ -typedef struct AddGrpB_TimeMark { - Year_t year; - Month_t month; - Day_t day; - SummerTime_t summerTime; - Holiday_t holiday; - AddGrpB_DayOfWeek_t dayofWeek; - Hour_t hour; - Minute_t minute; - Second_t second; - TenthSecond_t tenthSecond; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AddGrpB_TimeMark_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark; - -#ifdef __cplusplus -} -#endif - -#endif /* _AddGrpB_TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h deleted file mode 100644 index 426596db4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AdvisorySpeed_H_ -#define _AdvisorySpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AdvisorySpeedType.h" -#include "SpeedAdvice.h" -#include "SpeedConfidence.h" -#include "ZoneLength.h" -#include "RestrictionClassID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* AdvisorySpeed */ -typedef struct AdvisorySpeed { - AdvisorySpeedType_t type; - SpeedAdvice_t *speed; /* OPTIONAL */ - SpeedConfidence_t *confidence; /* OPTIONAL */ - ZoneLength_t *distance; /* OPTIONAL */ - RestrictionClassID_t *Class; /* OPTIONAL */ - struct AdvisorySpeed__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} AdvisorySpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; -extern asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1; -extern asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _AdvisorySpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h deleted file mode 100644 index 8740b2207..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AdvisorySpeedList_H_ -#define _AdvisorySpeedList_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 AdvisorySpeed; - -/* AdvisorySpeedList */ -typedef struct AdvisorySpeedList { - A_SEQUENCE_OF(struct AdvisorySpeed) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AdvisorySpeedList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; -extern asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1; -extern asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[1]; -extern asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AdvisorySpeed.h" - -#endif /* _AdvisorySpeedList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h deleted file mode 100644 index 7943f9e2b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AdvisorySpeedType_H_ -#define _AdvisorySpeedType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AdvisorySpeedType { - AdvisorySpeedType_none = 0, - AdvisorySpeedType_greenwave = 1, - AdvisorySpeedType_ecoDrive = 2, - AdvisorySpeedType_transit = 3 - /* - * Enumeration is extensible - */ -} e_AdvisorySpeedType; - -/* AdvisorySpeedType */ -typedef long AdvisorySpeedType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; -extern const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1; -asn_struct_free_f AdvisorySpeedType_free; -asn_struct_print_f AdvisorySpeedType_print; -asn_constr_check_f AdvisorySpeedType_constraint; -ber_type_decoder_f AdvisorySpeedType_decode_ber; -der_type_encoder_f AdvisorySpeedType_encode_der; -xer_type_decoder_f AdvisorySpeedType_decode_xer; -xer_type_encoder_f AdvisorySpeedType_encode_xer; -oer_type_decoder_f AdvisorySpeedType_decode_oer; -oer_type_encoder_f AdvisorySpeedType_encode_oer; -per_type_decoder_f AdvisorySpeedType_decode_uper; -per_type_encoder_f AdvisorySpeedType_encode_uper; -per_type_decoder_f AdvisorySpeedType_decode_aper; -per_type_encoder_f AdvisorySpeedType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AdvisorySpeedType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h deleted file mode 100644 index 7b8c3d4f3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AllowedManeuvers_H_ -#define _AllowedManeuvers_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AllowedManeuvers { - AllowedManeuvers_maneuverStraightAllowed = 0, - AllowedManeuvers_maneuverLeftAllowed = 1, - AllowedManeuvers_maneuverRightAllowed = 2, - AllowedManeuvers_maneuverUTurnAllowed = 3, - AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, - AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, - AllowedManeuvers_maneuverLaneChangeAllowed = 6, - AllowedManeuvers_maneuverNoStoppingAllowed = 7, - AllowedManeuvers_yieldAllwaysRequired = 8, - AllowedManeuvers_goWithHalt = 9, - AllowedManeuvers_caution = 10, - AllowedManeuvers_reserved1 = 11 -} e_AllowedManeuvers; - -/* AllowedManeuvers */ -typedef BIT_STRING_t AllowedManeuvers_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; -asn_struct_free_f AllowedManeuvers_free; -asn_struct_print_f AllowedManeuvers_print; -asn_constr_check_f AllowedManeuvers_constraint; -ber_type_decoder_f AllowedManeuvers_decode_ber; -der_type_encoder_f AllowedManeuvers_encode_der; -xer_type_decoder_f AllowedManeuvers_decode_xer; -xer_type_encoder_f AllowedManeuvers_encode_xer; -oer_type_decoder_f AllowedManeuvers_decode_oer; -oer_type_encoder_f AllowedManeuvers_encode_oer; -per_type_decoder_f AllowedManeuvers_decode_uper; -per_type_encoder_f AllowedManeuvers_encode_uper; -per_type_decoder_f AllowedManeuvers_decode_aper; -per_type_encoder_f AllowedManeuvers_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AllowedManeuvers_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h deleted file mode 100644 index 56ed14e09..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Altitude_H_ -#define _Altitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AltitudeValue.h" -#include "AltitudeConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Altitude */ -typedef struct Altitude { - AltitudeValue_t value; - AltitudeConfidence_t confidence; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Altitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Altitude; -extern asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1; -extern asn_TYPE_member_t asn_MBR_Altitude_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Altitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h deleted file mode 100644 index c24557c92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AltitudeConfidence_H_ -#define _AltitudeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AltitudeConfidence { - AltitudeConfidence_alt_000_01 = 0, - AltitudeConfidence_alt_000_02 = 1, - AltitudeConfidence_alt_000_05 = 2, - AltitudeConfidence_alt_000_10 = 3, - AltitudeConfidence_alt_000_20 = 4, - AltitudeConfidence_alt_000_50 = 5, - AltitudeConfidence_alt_001_00 = 6, - AltitudeConfidence_alt_002_00 = 7, - AltitudeConfidence_alt_005_00 = 8, - AltitudeConfidence_alt_010_00 = 9, - AltitudeConfidence_alt_020_00 = 10, - AltitudeConfidence_alt_050_00 = 11, - AltitudeConfidence_alt_100_00 = 12, - AltitudeConfidence_alt_200_00 = 13, - AltitudeConfidence_outOfRange = 14, - AltitudeConfidence_unavailable = 15 -} e_AltitudeConfidence; - -/* AltitudeConfidence */ -typedef long AltitudeConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1; -asn_struct_free_f AltitudeConfidence_free; -asn_struct_print_f AltitudeConfidence_print; -asn_constr_check_f AltitudeConfidence_constraint; -ber_type_decoder_f AltitudeConfidence_decode_ber; -der_type_encoder_f AltitudeConfidence_encode_der; -xer_type_decoder_f AltitudeConfidence_decode_xer; -xer_type_encoder_f AltitudeConfidence_encode_xer; -oer_type_decoder_f AltitudeConfidence_decode_oer; -oer_type_encoder_f AltitudeConfidence_encode_oer; -per_type_decoder_f AltitudeConfidence_decode_uper; -per_type_encoder_f AltitudeConfidence_encode_uper; -per_type_decoder_f AltitudeConfidence_decode_aper; -per_type_encoder_f AltitudeConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h deleted file mode 100644 index d3d0959fb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AltitudeValue_H_ -#define _AltitudeValue_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AltitudeValue */ -typedef long AltitudeValue_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; -asn_struct_free_f AltitudeValue_free; -asn_struct_print_f AltitudeValue_print; -asn_constr_check_f AltitudeValue_constraint; -ber_type_decoder_f AltitudeValue_decode_ber; -der_type_encoder_f AltitudeValue_encode_der; -xer_type_decoder_f AltitudeValue_decode_xer; -xer_type_encoder_f AltitudeValue_encode_xer; -oer_type_decoder_f AltitudeValue_decode_oer; -oer_type_encoder_f AltitudeValue_encode_oer; -per_type_decoder_f AltitudeValue_decode_uper; -per_type_encoder_f AltitudeValue_encode_uper; -per_type_decoder_f AltitudeValue_decode_aper; -per_type_encoder_f AltitudeValue_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AltitudeValue_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h deleted file mode 100644 index 085a50db1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AmbientAirPressure_H_ -#define _AmbientAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirPressure */ -typedef long AmbientAirPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; -asn_struct_free_f AmbientAirPressure_free; -asn_struct_print_f AmbientAirPressure_print; -asn_constr_check_f AmbientAirPressure_constraint; -ber_type_decoder_f AmbientAirPressure_decode_ber; -der_type_encoder_f AmbientAirPressure_encode_der; -xer_type_decoder_f AmbientAirPressure_decode_xer; -xer_type_encoder_f AmbientAirPressure_encode_xer; -oer_type_decoder_f AmbientAirPressure_decode_oer; -oer_type_encoder_f AmbientAirPressure_encode_oer; -per_type_decoder_f AmbientAirPressure_decode_uper; -per_type_encoder_f AmbientAirPressure_encode_uper; -per_type_decoder_f AmbientAirPressure_decode_aper; -per_type_encoder_f AmbientAirPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h deleted file mode 100644 index 1250e7069..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AmbientAirTemperature_H_ -#define _AmbientAirTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AmbientAirTemperature */ -typedef long AmbientAirTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; -asn_struct_free_f AmbientAirTemperature_free; -asn_struct_print_f AmbientAirTemperature_print; -asn_constr_check_f AmbientAirTemperature_constraint; -ber_type_decoder_f AmbientAirTemperature_decode_ber; -der_type_encoder_f AmbientAirTemperature_encode_der; -xer_type_decoder_f AmbientAirTemperature_decode_xer; -xer_type_encoder_f AmbientAirTemperature_encode_xer; -oer_type_decoder_f AmbientAirTemperature_decode_oer; -oer_type_encoder_f AmbientAirTemperature_encode_oer; -per_type_decoder_f AmbientAirTemperature_decode_uper; -per_type_encoder_f AmbientAirTemperature_encode_uper; -per_type_decoder_f AmbientAirTemperature_decode_aper; -per_type_encoder_f AmbientAirTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AmbientAirTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h deleted file mode 100644 index 2cb35471e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _AngularVelocity_H_ -#define _AngularVelocity_H_ - - -#include - -/* Including external dependencies */ -#include "PitchRate.h" -#include "RollRate.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* AngularVelocity */ -typedef struct AngularVelocity { - PitchRate_t pitchRate; - RollRate_t rollRate; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AngularVelocity_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AngularVelocity; -extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1; -extern asn_TYPE_member_t asn_MBR_AngularVelocity_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AngularVelocity_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h deleted file mode 100644 index e1d1e73f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _AngularVelocityConfidence_H_ -#define _AngularVelocityConfidence_H_ - - -#include - -/* Including external dependencies */ -#include "PitchRateConfidence.h" -#include "RollRateConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* AngularVelocityConfidence */ -typedef struct AngularVelocityConfidence { - PitchRateConfidence_t *pitchRateConfidence /* OPTIONAL */; - RollRateConfidence_t *rollRateConfidence /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AngularVelocityConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AngularVelocityConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h deleted file mode 100644 index 6bf116c17..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AnimalPropelledType_H_ -#define _AnimalPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalPropelledType { - AnimalPropelledType_unavailable = 0, - AnimalPropelledType_otherTypes = 1, - AnimalPropelledType_animalMounted = 2, - AnimalPropelledType_animalDrawnCarriage = 3 - /* - * Enumeration is extensible - */ -} e_AnimalPropelledType; - -/* AnimalPropelledType */ -typedef long AnimalPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1; -asn_struct_free_f AnimalPropelledType_free; -asn_struct_print_f AnimalPropelledType_print; -asn_constr_check_f AnimalPropelledType_constraint; -ber_type_decoder_f AnimalPropelledType_decode_ber; -der_type_encoder_f AnimalPropelledType_encode_der; -xer_type_decoder_f AnimalPropelledType_decode_xer; -xer_type_encoder_f AnimalPropelledType_encode_xer; -oer_type_decoder_f AnimalPropelledType_decode_oer; -oer_type_encoder_f AnimalPropelledType_encode_oer; -per_type_decoder_f AnimalPropelledType_decode_uper; -per_type_encoder_f AnimalPropelledType_encode_uper; -per_type_decoder_f AnimalPropelledType_decode_aper; -per_type_encoder_f AnimalPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h deleted file mode 100644 index 8ce608ed6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AnimalType_H_ -#define _AnimalType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AnimalType { - AnimalType_unavailable = 0, - AnimalType_serviceUse = 1, - AnimalType_pet = 2, - AnimalType_farm = 3 - /* - * Enumeration is extensible - */ -} e_AnimalType; - -/* AnimalType */ -typedef long AnimalType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AnimalType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AnimalType; -extern const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1; -asn_struct_free_f AnimalType_free; -asn_struct_print_f AnimalType_print; -asn_constr_check_f AnimalType_constraint; -ber_type_decoder_f AnimalType_decode_ber; -der_type_encoder_f AnimalType_encode_der; -xer_type_decoder_f AnimalType_decode_xer; -xer_type_encoder_f AnimalType_encode_xer; -oer_type_decoder_f AnimalType_decode_oer; -oer_type_encoder_f AnimalType_encode_oer; -per_type_decoder_f AnimalType_decode_uper; -per_type_encoder_f AnimalType_encode_uper; -per_type_decoder_f AnimalType_decode_aper; -per_type_encoder_f AnimalType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AnimalType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h deleted file mode 100644 index 8574249b9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AntennaOffsetSet_H_ -#define _AntennaOffsetSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B12.h" -#include "Offset-B09.h" -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AntennaOffsetSet */ -typedef struct AntennaOffsetSet { - Offset_B12_t antOffsetX; - Offset_B09_t antOffsetY; - Offset_B10_t antOffsetZ; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AntennaOffsetSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; -extern asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1; -extern asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntennaOffsetSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h deleted file mode 100644 index 6d39edf30..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AntiLockBrakeStatus_H_ -#define _AntiLockBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AntiLockBrakeStatus { - AntiLockBrakeStatus_unavailable = 0, - AntiLockBrakeStatus_off = 1, - AntiLockBrakeStatus_on = 2, - AntiLockBrakeStatus_engaged = 3 -} e_AntiLockBrakeStatus; - -/* AntiLockBrakeStatus */ -typedef long AntiLockBrakeStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; -extern const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1; -asn_struct_free_f AntiLockBrakeStatus_free; -asn_struct_print_f AntiLockBrakeStatus_print; -asn_constr_check_f AntiLockBrakeStatus_constraint; -ber_type_decoder_f AntiLockBrakeStatus_decode_ber; -der_type_encoder_f AntiLockBrakeStatus_encode_der; -xer_type_decoder_f AntiLockBrakeStatus_decode_xer; -xer_type_encoder_f AntiLockBrakeStatus_encode_xer; -oer_type_decoder_f AntiLockBrakeStatus_decode_oer; -oer_type_encoder_f AntiLockBrakeStatus_encode_oer; -per_type_decoder_f AntiLockBrakeStatus_decode_uper; -per_type_encoder_f AntiLockBrakeStatus_encode_uper; -per_type_decoder_f AntiLockBrakeStatus_decode_aper; -per_type_encoder_f AntiLockBrakeStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AntiLockBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h deleted file mode 100644 index 385a80a5c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ApproachID_H_ -#define _ApproachID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ApproachID */ -typedef long ApproachID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ApproachID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ApproachID; -asn_struct_free_f ApproachID_free; -asn_struct_print_f ApproachID_print; -asn_constr_check_f ApproachID_constraint; -ber_type_decoder_f ApproachID_decode_ber; -der_type_encoder_f ApproachID_encode_der; -xer_type_decoder_f ApproachID_decode_xer; -xer_type_encoder_f ApproachID_encode_xer; -oer_type_decoder_f ApproachID_decode_oer; -oer_type_encoder_f ApproachID_encode_oer; -per_type_decoder_f ApproachID_decode_uper; -per_type_encoder_f ApproachID_encode_uper; -per_type_decoder_f ApproachID_decode_aper; -per_type_encoder_f ApproachID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ApproachID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h deleted file mode 100644 index e09d06979..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ApproachOrLane_H_ -#define _ApproachOrLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ApproachID.h" -#include "LaneID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ApproachOrLane_PR { - ApproachOrLane_PR_NOTHING, /* No components present */ - ApproachOrLane_PR_approach, - ApproachOrLane_PR_lane -} ApproachOrLane_PR; - -/* ApproachOrLane */ -typedef struct ApproachOrLane { - ApproachOrLane_PR present; - union ApproachOrLane_u { - ApproachID_t approach; - LaneID_t lane; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ApproachOrLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ApproachOrLane; -extern asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ApproachOrLane_1[2]; -extern asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ApproachOrLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h deleted file mode 100644 index 9cb397f60..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Attachment_H_ -#define _Attachment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Attachment { - Attachment_unavailable = 0, - Attachment_stroller = 1, - Attachment_bicycleTrailer = 2, - Attachment_cart = 3, - Attachment_wheelchair = 4, - Attachment_otherWalkAssistAttachments = 5, - Attachment_pet = 6 - /* - * Enumeration is extensible - */ -} e_Attachment; - -/* Attachment */ -typedef long Attachment_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Attachment_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Attachment; -extern const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1; -asn_struct_free_f Attachment_free; -asn_struct_print_f Attachment_print; -asn_constr_check_f Attachment_constraint; -ber_type_decoder_f Attachment_decode_ber; -der_type_encoder_f Attachment_encode_der; -xer_type_decoder_f Attachment_decode_xer; -xer_type_encoder_f Attachment_encode_xer; -oer_type_decoder_f Attachment_decode_oer; -oer_type_encoder_f Attachment_encode_oer; -per_type_decoder_f Attachment_decode_uper; -per_type_encoder_f Attachment_encode_uper; -per_type_decoder_f Attachment_decode_aper; -per_type_encoder_f Attachment_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Attachment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h deleted file mode 100644 index 0966c4538..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AttachmentRadius_H_ -#define _AttachmentRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AttachmentRadius */ -typedef long AttachmentRadius_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; -asn_struct_free_f AttachmentRadius_free; -asn_struct_print_f AttachmentRadius_print; -asn_constr_check_f AttachmentRadius_constraint; -ber_type_decoder_f AttachmentRadius_decode_ber; -der_type_encoder_f AttachmentRadius_encode_der; -xer_type_decoder_f AttachmentRadius_decode_xer; -xer_type_encoder_f AttachmentRadius_encode_xer; -oer_type_decoder_f AttachmentRadius_decode_oer; -oer_type_encoder_f AttachmentRadius_encode_oer; -per_type_decoder_f AttachmentRadius_decode_uper; -per_type_encoder_f AttachmentRadius_encode_uper; -per_type_decoder_f AttachmentRadius_decode_aper; -per_type_encoder_f AttachmentRadius_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AttachmentRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h deleted file mode 100644 index b2316ff61..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _Attitude_H_ -#define _Attitude_H_ - - -#include - -/* Including external dependencies */ -#include "PitchDetected.h" -#include "RollDetected.h" -#include "YawDetected.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Attitude */ -typedef struct Attitude { - PitchDetected_t pitch; - RollDetected_t roll; - YawDetected_t yaw; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Attitude_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Attitude; -extern asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1; -extern asn_TYPE_member_t asn_MBR_Attitude_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Attitude_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h deleted file mode 100644 index b6377270b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _AttitudeConfidence_H_ -#define _AttitudeConfidence_H_ - - -#include - -/* Including external dependencies */ -#include "HeadingConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* AttitudeConfidence */ -typedef struct AttitudeConfidence { - HeadingConfidence_t pitchConfidence; - HeadingConfidence_t rollConfidence; - HeadingConfidence_t yawConfidence; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AttitudeConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AttitudeConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h deleted file mode 100644 index e1aa96579..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AuxiliaryBrakeStatus_H_ -#define _AuxiliaryBrakeStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum AuxiliaryBrakeStatus { - AuxiliaryBrakeStatus_unavailable = 0, - AuxiliaryBrakeStatus_off = 1, - AuxiliaryBrakeStatus_on = 2, - AuxiliaryBrakeStatus_reserved = 3 -} e_AuxiliaryBrakeStatus; - -/* AuxiliaryBrakeStatus */ -typedef long AuxiliaryBrakeStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; -extern const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1; -asn_struct_free_f AuxiliaryBrakeStatus_free; -asn_struct_print_f AuxiliaryBrakeStatus_print; -asn_constr_check_f AuxiliaryBrakeStatus_constraint; -ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; -der_type_encoder_f AuxiliaryBrakeStatus_encode_der; -xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; -xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; -oer_type_decoder_f AuxiliaryBrakeStatus_decode_oer; -oer_type_encoder_f AuxiliaryBrakeStatus_encode_oer; -per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; -per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; -per_type_decoder_f AuxiliaryBrakeStatus_decode_aper; -per_type_encoder_f AuxiliaryBrakeStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AuxiliaryBrakeStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h deleted file mode 100644 index e7e48a127..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AxleLocation_H_ -#define _AxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleLocation */ -typedef long AxleLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AxleLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; -asn_struct_free_f AxleLocation_free; -asn_struct_print_f AxleLocation_print; -asn_constr_check_f AxleLocation_constraint; -ber_type_decoder_f AxleLocation_decode_ber; -der_type_encoder_f AxleLocation_encode_der; -xer_type_decoder_f AxleLocation_decode_xer; -xer_type_encoder_f AxleLocation_encode_xer; -oer_type_decoder_f AxleLocation_decode_oer; -oer_type_encoder_f AxleLocation_encode_oer; -per_type_decoder_f AxleLocation_decode_uper; -per_type_encoder_f AxleLocation_encode_uper; -per_type_decoder_f AxleLocation_decode_aper; -per_type_encoder_f AxleLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h deleted file mode 100644 index 433e1fd9e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AxleWeight_H_ -#define _AxleWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleWeight */ -typedef long AxleWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_AxleWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; -asn_struct_free_f AxleWeight_free; -asn_struct_print_f AxleWeight_print; -asn_constr_check_f AxleWeight_constraint; -ber_type_decoder_f AxleWeight_decode_ber; -der_type_encoder_f AxleWeight_encode_der; -xer_type_decoder_f AxleWeight_decode_xer; -xer_type_encoder_f AxleWeight_encode_xer; -oer_type_decoder_f AxleWeight_decode_oer; -oer_type_encoder_f AxleWeight_encode_oer; -per_type_decoder_f AxleWeight_decode_uper; -per_type_encoder_f AxleWeight_encode_uper; -per_type_decoder_f AxleWeight_decode_aper; -per_type_encoder_f AxleWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h deleted file mode 100644 index 424ef65be..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AxleWeightList_H_ -#define _AxleWeightList_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 AxleWeightSet; - -/* AxleWeightList */ -typedef struct AxleWeightList { - A_SEQUENCE_OF(struct AxleWeightSet) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AxleWeightList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleWeightList; -extern asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1; -extern asn_TYPE_member_t asn_MBR_AxleWeightList_1[1]; -extern asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AxleWeightSet.h" - -#endif /* _AxleWeightList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h deleted file mode 100644 index 345e92d4d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _AxleWeightSet_H_ -#define _AxleWeightSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AxleLocation.h" -#include "AxleWeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* AxleWeightSet */ -typedef struct AxleWeightSet { - AxleLocation_t *location; /* OPTIONAL */ - AxleWeight_t *weight; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} AxleWeightSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_AxleWeightSet; -extern asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1; -extern asn_TYPE_member_t asn_MBR_AxleWeightSet_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _AxleWeightSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h deleted file mode 100644 index c1bdbbcfb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h +++ /dev/null @@ -1,48 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BIT_STRING_H_ -#define _BIT_STRING_H_ - -#include /* Some help from OCTET STRING */ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct BIT_STRING_s { - uint8_t *buf; /* BIT STRING body */ - size_t size; /* Size of the above buffer */ - - int bits_unused;/* Unused trailing bits in the last octet (0..7) */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} BIT_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; -extern asn_TYPE_operation_t asn_OP_BIT_STRING; -extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs; - -asn_struct_print_f BIT_STRING_print; /* Human-readable output */ -asn_struct_compare_f BIT_STRING_compare; -asn_constr_check_f BIT_STRING_constraint; -xer_type_encoder_f BIT_STRING_encode_xer; -oer_type_decoder_f BIT_STRING_decode_oer; -oer_type_encoder_f BIT_STRING_encode_oer; -per_type_decoder_f BIT_STRING_decode_uper; -per_type_encoder_f BIT_STRING_encode_uper; -asn_random_fill_f BIT_STRING_random_fill; - -#define BIT_STRING_free OCTET_STRING_free -#define BIT_STRING_decode_ber OCTET_STRING_decode_ber -#define BIT_STRING_encode_der OCTET_STRING_encode_der -#define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary -#define BIT_STRING_decode_aper OCTET_STRING_decode_aper -#define BIT_STRING_encode_aper OCTET_STRING_encode_aper - -#ifdef __cplusplus -} -#endif - -#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h deleted file mode 100644 index 198b9e5e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h +++ /dev/null @@ -1,37 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BMPString_H_ -#define _BMPString_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t BMPString_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_BMPString; -extern asn_TYPE_operation_t asn_OP_BMPString; -extern asn_OCTET_STRING_specifics_t asn_SPC_BMPString_specs; - -asn_struct_print_f BMPString_print; /* Human-readable output */ -xer_type_decoder_f BMPString_decode_xer; -xer_type_encoder_f BMPString_encode_xer; - -#define BMPString_free OCTET_STRING_free -#define BMPString_print BMPString_print -#define BMPString_compare OCTET_STRING_compare -#define BMPString_constraint asn_generic_no_constraint -#define BMPString_decode_ber OCTET_STRING_decode_ber -#define BMPString_encode_der OCTET_STRING_encode_der -#define BMPString_decode_uper OCTET_STRING_decode_uper -#define BMPString_encode_uper OCTET_STRING_encode_uper - -#ifdef __cplusplus -} -#endif - -#endif /* _BMPString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h deleted file mode 100644 index 620acf7f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h +++ /dev/null @@ -1,45 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BOOLEAN_H_ -#define _BOOLEAN_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The underlying integer may contain various values, but everything - * non-zero is capped to 0xff by the DER encoder. The BER decoder may - * yield non-zero values different from 1, beware. - */ -typedef int BOOLEAN_t; - -extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; -extern asn_TYPE_operation_t asn_OP_BOOLEAN; - -asn_struct_free_f BOOLEAN_free; -asn_struct_print_f BOOLEAN_print; -asn_struct_compare_f BOOLEAN_compare; -ber_type_decoder_f BOOLEAN_decode_ber; -der_type_encoder_f BOOLEAN_encode_der; -oer_type_decoder_f BOOLEAN_decode_oer; -oer_type_encoder_f BOOLEAN_encode_oer; -per_type_decoder_f BOOLEAN_decode_uper; -per_type_encoder_f BOOLEAN_encode_uper; -per_type_decoder_f BOOLEAN_decode_aper; -per_type_encoder_f BOOLEAN_encode_aper; -xer_type_decoder_f BOOLEAN_decode_xer; -xer_type_encoder_f BOOLEAN_encode_xer; -asn_random_fill_f BOOLEAN_random_fill; - -#define BOOLEAN_constraint asn_generic_no_constraint - -#ifdef __cplusplus -} -#endif - -#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h deleted file mode 100644 index 44a91c329..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BSMcoreData_H_ -#define _BSMcoreData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "TemporaryID.h" -#include "DSecond.h" -#include "Latitude.h" -#include "Longitude.h" -#include "DSRC_Elevation.h" -#include "PositionalAccuracy.h" -#include "TransmissionState.h" -#include "Speed.h" -#include "Heading.h" -#include "SteeringWheelAngle.h" -#include "AccelerationSet4Way.h" -#include "BrakeSystemStatus.h" -#include "VehicleSize.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BSMcoreData */ -typedef struct BSMcoreData { - DSRC_MsgCount_t msgCnt; - TemporaryID_t id; - DSecond_t secMark; - Latitude_t lat; - Longitude_t Long; - DSRC_Elevation_t elev; - PositionalAccuracy_t accuracy; - TransmissionState_t transmission; - Speed_t speed; - Heading_t heading; - SteeringWheelAngle_t angle; - AccelerationSet4Way_t accelSet; - BrakeSystemStatus_t brakes; - VehicleSize_t size; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BSMcoreData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BSMcoreData; -extern asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1; -extern asn_TYPE_member_t asn_MBR_BSMcoreData_1[14]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BSMcoreData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h deleted file mode 100644 index 255eb247b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpCarma" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#ifndef _BasicSafetyMessage_addGrpCarma_H_ -#define _BasicSafetyMessage_addGrpCarma_H_ - - -#include - -/* Including external dependencies */ -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D_addGrpCarma; - -/* BasicSafetyMessage-addGrpCarma */ -typedef struct BasicSafetyMessage_addGrpCarma { - struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints { - A_SEQUENCE_OF(struct Position3D_addGrpCarma) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *routeDestinationPoints; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BasicSafetyMessage_addGrpCarma_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma; -extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1; -extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[1]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D-addGrpCarma.h" - -#endif /* _BasicSafetyMessage_addGrpCarma_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h deleted file mode 100644 index be9886d80..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#ifndef _BasicSafetyMessage_H_ -#define _BasicSafetyMessage_H_ - - -#include - -/* Including external dependencies */ -#include "BSMcoreData.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BSMpartIIExtension; -struct Reg_BasicSafetyMessage; - -/* BasicSafetyMessage */ -typedef struct BasicSafetyMessage { - BSMcoreData_t coreData; - struct BasicSafetyMessage__partII { - A_SEQUENCE_OF(struct BSMpartIIExtension) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *partII; - struct BasicSafetyMessage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} BasicSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PartIIcontent.h" -#include "RegionalExtension.h" - -#endif /* _BasicSafetyMessage_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h deleted file mode 100644 index 2d3a53ef6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BasicVehicleClass_H_ -#define _BasicVehicleClass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BasicVehicleClass */ -typedef long BasicVehicleClass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass; -asn_struct_free_f BasicVehicleClass_free; -asn_struct_print_f BasicVehicleClass_print; -asn_constr_check_f BasicVehicleClass_constraint; -ber_type_decoder_f BasicVehicleClass_decode_ber; -der_type_encoder_f BasicVehicleClass_encode_der; -xer_type_decoder_f BasicVehicleClass_decode_xer; -xer_type_encoder_f BasicVehicleClass_encode_xer; -oer_type_decoder_f BasicVehicleClass_decode_oer; -oer_type_encoder_f BasicVehicleClass_encode_oer; -per_type_decoder_f BasicVehicleClass_decode_uper; -per_type_encoder_f BasicVehicleClass_encode_uper; -per_type_decoder_f BasicVehicleClass_decode_aper; -per_type_encoder_f BasicVehicleClass_encode_aper; -#define BasicVehicleClass_unknownVehicleClass ((BasicVehicleClass_t)0) -#define BasicVehicleClass_specialVehicleClass ((BasicVehicleClass_t)1) -#define BasicVehicleClass_passenger_Vehicle_TypeUnknown ((BasicVehicleClass_t)10) -#define BasicVehicleClass_passenger_Vehicle_TypeOther ((BasicVehicleClass_t)11) -#define BasicVehicleClass_lightTruck_Vehicle_TypeUnknown ((BasicVehicleClass_t)20) -#define BasicVehicleClass_lightTruck_Vehicle_TypeOther ((BasicVehicleClass_t)21) -#define BasicVehicleClass_truck_Vehicle_TypeUnknown ((BasicVehicleClass_t)25) -#define BasicVehicleClass_truck_Vehicle_TypeOther ((BasicVehicleClass_t)26) -#define BasicVehicleClass_truck_axleCnt2 ((BasicVehicleClass_t)27) -#define BasicVehicleClass_truck_axleCnt3 ((BasicVehicleClass_t)28) -#define BasicVehicleClass_truck_axleCnt4 ((BasicVehicleClass_t)29) -#define BasicVehicleClass_truck_axleCnt4Trailer ((BasicVehicleClass_t)30) -#define BasicVehicleClass_truck_axleCnt5Trailer ((BasicVehicleClass_t)31) -#define BasicVehicleClass_truck_axleCnt6Trailer ((BasicVehicleClass_t)32) -#define BasicVehicleClass_truck_axleCnt5MultiTrailer ((BasicVehicleClass_t)33) -#define BasicVehicleClass_truck_axleCnt6MultiTrailer ((BasicVehicleClass_t)34) -#define BasicVehicleClass_truck_axleCnt7MultiTrailer ((BasicVehicleClass_t)35) -#define BasicVehicleClass_motorcycle_TypeUnknown ((BasicVehicleClass_t)40) -#define BasicVehicleClass_motorcycle_TypeOther ((BasicVehicleClass_t)41) -#define BasicVehicleClass_motorcycle_Cruiser_Standard ((BasicVehicleClass_t)42) -#define BasicVehicleClass_motorcycle_SportUnclad ((BasicVehicleClass_t)43) -#define BasicVehicleClass_motorcycle_SportTouring ((BasicVehicleClass_t)44) -#define BasicVehicleClass_motorcycle_SuperSport ((BasicVehicleClass_t)45) -#define BasicVehicleClass_motorcycle_Touring ((BasicVehicleClass_t)46) -#define BasicVehicleClass_motorcycle_Trike ((BasicVehicleClass_t)47) -#define BasicVehicleClass_motorcycle_wPassengers ((BasicVehicleClass_t)48) -#define BasicVehicleClass_transit_TypeUnknown ((BasicVehicleClass_t)50) -#define BasicVehicleClass_transit_TypeOther ((BasicVehicleClass_t)51) -#define BasicVehicleClass_transit_BRT ((BasicVehicleClass_t)52) -#define BasicVehicleClass_transit_ExpressBus ((BasicVehicleClass_t)53) -#define BasicVehicleClass_transit_LocalBus ((BasicVehicleClass_t)54) -#define BasicVehicleClass_transit_SchoolBus ((BasicVehicleClass_t)55) -#define BasicVehicleClass_transit_FixedGuideway ((BasicVehicleClass_t)56) -#define BasicVehicleClass_transit_Paratransit ((BasicVehicleClass_t)57) -#define BasicVehicleClass_transit_Paratransit_Ambulance ((BasicVehicleClass_t)58) -#define BasicVehicleClass_emergency_TypeUnknown ((BasicVehicleClass_t)60) -#define BasicVehicleClass_emergency_TypeOther ((BasicVehicleClass_t)61) -#define BasicVehicleClass_emergency_Fire_Light_Vehicle ((BasicVehicleClass_t)62) -#define BasicVehicleClass_emergency_Fire_Heavy_Vehicle ((BasicVehicleClass_t)63) -#define BasicVehicleClass_emergency_Fire_Paramedic_Vehicle ((BasicVehicleClass_t)64) -#define BasicVehicleClass_emergency_Fire_Ambulance_Vehicle ((BasicVehicleClass_t)65) -#define BasicVehicleClass_emergency_Police_Light_Vehicle ((BasicVehicleClass_t)66) -#define BasicVehicleClass_emergency_Police_Heavy_Vehicle ((BasicVehicleClass_t)67) -#define BasicVehicleClass_emergency_Other_Responder ((BasicVehicleClass_t)68) -#define BasicVehicleClass_emergency_Other_Ambulance ((BasicVehicleClass_t)69) -#define BasicVehicleClass_otherTraveler_TypeUnknown ((BasicVehicleClass_t)80) -#define BasicVehicleClass_otherTraveler_TypeOther ((BasicVehicleClass_t)81) -#define BasicVehicleClass_otherTraveler_Pedestrian ((BasicVehicleClass_t)82) -#define BasicVehicleClass_otherTraveler_Visually_Disabled ((BasicVehicleClass_t)83) -#define BasicVehicleClass_otherTraveler_Physically_Disabled ((BasicVehicleClass_t)84) -#define BasicVehicleClass_otherTraveler_Bicycle ((BasicVehicleClass_t)85) -#define BasicVehicleClass_otherTraveler_Vulnerable_Roadworker ((BasicVehicleClass_t)86) -#define BasicVehicleClass_infrastructure_TypeUnknown ((BasicVehicleClass_t)90) -#define BasicVehicleClass_infrastructure_Fixed ((BasicVehicleClass_t)91) -#define BasicVehicleClass_infrastructure_Movable ((BasicVehicleClass_t)92) -#define BasicVehicleClass_equipped_CargoTrailer ((BasicVehicleClass_t)93) - -#ifdef __cplusplus -} -#endif - -#endif /* _BasicVehicleClass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h deleted file mode 100644 index b6c6e6faa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BasicVehicleRole_H_ -#define _BasicVehicleRole_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BasicVehicleRole { - BasicVehicleRole_basicVehicle = 0, - BasicVehicleRole_publicTransport = 1, - BasicVehicleRole_specialTransport = 2, - BasicVehicleRole_dangerousGoods = 3, - BasicVehicleRole_roadWork = 4, - BasicVehicleRole_roadRescue = 5, - BasicVehicleRole_emergency = 6, - BasicVehicleRole_safetyCar = 7, - BasicVehicleRole_none_unknown = 8, - BasicVehicleRole_truck = 9, - BasicVehicleRole_motorcycle = 10, - BasicVehicleRole_roadSideSource = 11, - BasicVehicleRole_police = 12, - BasicVehicleRole_fire = 13, - BasicVehicleRole_ambulance = 14, - BasicVehicleRole_dot = 15, - BasicVehicleRole_transit = 16, - BasicVehicleRole_slowMoving = 17, - BasicVehicleRole_stopNgo = 18, - BasicVehicleRole_cyclist = 19, - BasicVehicleRole_pedestrian = 20, - BasicVehicleRole_nonMotorized = 21, - BasicVehicleRole_military = 22 - /* - * Enumeration is extensible - */ -} e_BasicVehicleRole; - -/* BasicVehicleRole */ -typedef long BasicVehicleRole_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole; -extern const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1; -asn_struct_free_f BasicVehicleRole_free; -asn_struct_print_f BasicVehicleRole_print; -asn_constr_check_f BasicVehicleRole_constraint; -ber_type_decoder_f BasicVehicleRole_decode_ber; -der_type_encoder_f BasicVehicleRole_encode_der; -xer_type_decoder_f BasicVehicleRole_decode_xer; -xer_type_encoder_f BasicVehicleRole_encode_xer; -oer_type_decoder_f BasicVehicleRole_decode_oer; -oer_type_encoder_f BasicVehicleRole_encode_oer; -per_type_decoder_f BasicVehicleRole_decode_uper; -per_type_encoder_f BasicVehicleRole_encode_uper; -per_type_decoder_f BasicVehicleRole_decode_aper; -per_type_encoder_f BasicVehicleRole_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BasicVehicleRole_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h deleted file mode 100644 index ba577ef3f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BrakeAppliedPressure_H_ -#define _BrakeAppliedPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedPressure { - BrakeAppliedPressure_unavailable = 0, - BrakeAppliedPressure_minPressure = 1, - BrakeAppliedPressure_bkLvl_2 = 2, - BrakeAppliedPressure_bkLvl_3 = 3, - BrakeAppliedPressure_bkLvl_4 = 4, - BrakeAppliedPressure_bkLvl_5 = 5, - BrakeAppliedPressure_bkLvl_6 = 6, - BrakeAppliedPressure_bkLvl_7 = 7, - BrakeAppliedPressure_bkLvl_8 = 8, - BrakeAppliedPressure_bkLvl_9 = 9, - BrakeAppliedPressure_bkLvl_10 = 10, - BrakeAppliedPressure_bkLvl_11 = 11, - BrakeAppliedPressure_bkLvl_12 = 12, - BrakeAppliedPressure_bkLvl_13 = 13, - BrakeAppliedPressure_bkLvl_14 = 14, - BrakeAppliedPressure_maxPressure = 15 -} e_BrakeAppliedPressure; - -/* BrakeAppliedPressure */ -typedef long BrakeAppliedPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; -extern const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1; -asn_struct_free_f BrakeAppliedPressure_free; -asn_struct_print_f BrakeAppliedPressure_print; -asn_constr_check_f BrakeAppliedPressure_constraint; -ber_type_decoder_f BrakeAppliedPressure_decode_ber; -der_type_encoder_f BrakeAppliedPressure_encode_der; -xer_type_decoder_f BrakeAppliedPressure_decode_xer; -xer_type_encoder_f BrakeAppliedPressure_encode_xer; -oer_type_decoder_f BrakeAppliedPressure_decode_oer; -oer_type_encoder_f BrakeAppliedPressure_encode_oer; -per_type_decoder_f BrakeAppliedPressure_decode_uper; -per_type_encoder_f BrakeAppliedPressure_encode_uper; -per_type_decoder_f BrakeAppliedPressure_decode_aper; -per_type_encoder_f BrakeAppliedPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h deleted file mode 100644 index d5a7d3225..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BrakeAppliedStatus_H_ -#define _BrakeAppliedStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeAppliedStatus { - BrakeAppliedStatus_unavailable = 0, - BrakeAppliedStatus_leftFront = 1, - BrakeAppliedStatus_leftRear = 2, - BrakeAppliedStatus_rightFront = 3, - BrakeAppliedStatus_rightRear = 4 -} e_BrakeAppliedStatus; - -/* BrakeAppliedStatus */ -typedef BIT_STRING_t BrakeAppliedStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; -asn_struct_free_f BrakeAppliedStatus_free; -asn_struct_print_f BrakeAppliedStatus_print; -asn_constr_check_f BrakeAppliedStatus_constraint; -ber_type_decoder_f BrakeAppliedStatus_decode_ber; -der_type_encoder_f BrakeAppliedStatus_encode_der; -xer_type_decoder_f BrakeAppliedStatus_decode_xer; -xer_type_encoder_f BrakeAppliedStatus_encode_xer; -oer_type_decoder_f BrakeAppliedStatus_decode_oer; -oer_type_encoder_f BrakeAppliedStatus_encode_oer; -per_type_decoder_f BrakeAppliedStatus_decode_uper; -per_type_encoder_f BrakeAppliedStatus_encode_uper; -per_type_decoder_f BrakeAppliedStatus_decode_aper; -per_type_encoder_f BrakeAppliedStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeAppliedStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h deleted file mode 100644 index 0248177eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BrakeBoostApplied_H_ -#define _BrakeBoostApplied_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BrakeBoostApplied { - BrakeBoostApplied_unavailable = 0, - BrakeBoostApplied_off = 1, - BrakeBoostApplied_on = 2 -} e_BrakeBoostApplied; - -/* BrakeBoostApplied */ -typedef long BrakeBoostApplied_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; -extern const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1; -asn_struct_free_f BrakeBoostApplied_free; -asn_struct_print_f BrakeBoostApplied_print; -asn_constr_check_f BrakeBoostApplied_constraint; -ber_type_decoder_f BrakeBoostApplied_decode_ber; -der_type_encoder_f BrakeBoostApplied_encode_der; -xer_type_decoder_f BrakeBoostApplied_decode_xer; -xer_type_encoder_f BrakeBoostApplied_encode_xer; -oer_type_decoder_f BrakeBoostApplied_decode_oer; -oer_type_encoder_f BrakeBoostApplied_encode_oer; -per_type_decoder_f BrakeBoostApplied_decode_uper; -per_type_encoder_f BrakeBoostApplied_encode_uper; -per_type_decoder_f BrakeBoostApplied_decode_aper; -per_type_encoder_f BrakeBoostApplied_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeBoostApplied_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h deleted file mode 100644 index f17d9c5ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BrakeSystemStatus_H_ -#define _BrakeSystemStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BrakeAppliedStatus.h" -#include "TractionControlStatus.h" -#include "AntiLockBrakeStatus.h" -#include "StabilityControlStatus.h" -#include "BrakeBoostApplied.h" -#include "AuxiliaryBrakeStatus.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BrakeSystemStatus */ -typedef struct BrakeSystemStatus { - BrakeAppliedStatus_t wheelBrakes; - TractionControlStatus_t traction; - AntiLockBrakeStatus_t abs; - StabilityControlStatus_t scs; - BrakeBoostApplied_t brakeBoost; - AuxiliaryBrakeStatus_t auxBrakes; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BrakeSystemStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BrakeSystemStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h deleted file mode 100644 index cf235ab96..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BumperHeight_H_ -#define _BumperHeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeight */ -typedef long BumperHeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_BumperHeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_BumperHeight; -asn_struct_free_f BumperHeight_free; -asn_struct_print_f BumperHeight_print; -asn_constr_check_f BumperHeight_constraint; -ber_type_decoder_f BumperHeight_decode_ber; -der_type_encoder_f BumperHeight_encode_der; -xer_type_decoder_f BumperHeight_decode_xer; -xer_type_encoder_f BumperHeight_encode_xer; -oer_type_decoder_f BumperHeight_decode_oer; -oer_type_encoder_f BumperHeight_encode_oer; -per_type_decoder_f BumperHeight_decode_uper; -per_type_encoder_f BumperHeight_encode_uper; -per_type_decoder_f BumperHeight_decode_aper; -per_type_encoder_f BumperHeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h deleted file mode 100644 index 7509130f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _BumperHeights_H_ -#define _BumperHeights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BumperHeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BumperHeights */ -typedef struct BumperHeights { - BumperHeight_t front; - BumperHeight_t rear; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BumperHeights_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; -extern asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1; -extern asn_TYPE_member_t asn_MBR_BumperHeights_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _BumperHeights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h deleted file mode 100644 index 623b16869..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _CargoWeight_H_ -#define _CargoWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CargoWeight */ -typedef long CargoWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CargoWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; -asn_struct_free_f CargoWeight_free; -asn_struct_print_f CargoWeight_print; -asn_constr_check_f CargoWeight_constraint; -ber_type_decoder_f CargoWeight_decode_ber; -der_type_encoder_f CargoWeight_encode_der; -xer_type_decoder_f CargoWeight_decode_xer; -xer_type_encoder_f CargoWeight_encode_xer; -oer_type_decoder_f CargoWeight_decode_oer; -oer_type_encoder_f CargoWeight_encode_oer; -per_type_decoder_f CargoWeight_decode_uper; -per_type_encoder_f CargoWeight_encode_uper; -per_type_decoder_f CargoWeight_decode_aper; -per_type_encoder_f CargoWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CargoWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h deleted file mode 100644 index a9ea7ad34..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Circle_H_ -#define _Circle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "Radius-B12.h" -#include "DistanceUnits.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Circle */ -typedef struct Circle { - Position3D_t center; - Radius_B12_t radius; - DistanceUnits_t units; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Circle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Circle; -extern asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1; -extern asn_TYPE_member_t asn_MBR_Circle_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Circle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h deleted file mode 100644 index 155280700..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ClassificationConfidence_H_ -#define _ClassificationConfidence_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ClassificationConfidence */ -typedef long ClassificationConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence; -asn_struct_free_f ClassificationConfidence_free; -asn_struct_print_f ClassificationConfidence_print; -asn_constr_check_f ClassificationConfidence_constraint; -ber_type_decoder_f ClassificationConfidence_decode_ber; -der_type_encoder_f ClassificationConfidence_encode_der; -xer_type_decoder_f ClassificationConfidence_decode_xer; -xer_type_encoder_f ClassificationConfidence_encode_xer; -oer_type_decoder_f ClassificationConfidence_decode_oer; -oer_type_encoder_f ClassificationConfidence_encode_oer; -per_type_decoder_f ClassificationConfidence_decode_uper; -per_type_encoder_f ClassificationConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ClassificationConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h deleted file mode 100644 index 604c03038..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _CoarseHeading_H_ -#define _CoarseHeading_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CoarseHeading */ -typedef long CoarseHeading_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CoarseHeading; -asn_struct_free_f CoarseHeading_free; -asn_struct_print_f CoarseHeading_print; -asn_constr_check_f CoarseHeading_constraint; -ber_type_decoder_f CoarseHeading_decode_ber; -der_type_encoder_f CoarseHeading_encode_der; -xer_type_decoder_f CoarseHeading_decode_xer; -xer_type_encoder_f CoarseHeading_encode_xer; -oer_type_decoder_f CoarseHeading_decode_oer; -oer_type_encoder_f CoarseHeading_encode_oer; -per_type_decoder_f CoarseHeading_decode_uper; -per_type_encoder_f CoarseHeading_encode_uper; -per_type_decoder_f CoarseHeading_decode_aper; -per_type_encoder_f CoarseHeading_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CoarseHeading_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h deleted file mode 100644 index 5afe7f9a9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _CodeWord_H_ -#define _CodeWord_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CodeWord */ -typedef OCTET_STRING_t CodeWord_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CodeWord; -asn_struct_free_f CodeWord_free; -asn_struct_print_f CodeWord_print; -asn_constr_check_f CodeWord_constraint; -ber_type_decoder_f CodeWord_decode_ber; -der_type_encoder_f CodeWord_encode_der; -xer_type_decoder_f CodeWord_decode_xer; -xer_type_encoder_f CodeWord_encode_xer; -oer_type_decoder_f CodeWord_decode_oer; -oer_type_encoder_f CodeWord_encode_oer; -per_type_decoder_f CodeWord_decode_uper; -per_type_encoder_f CodeWord_encode_uper; -per_type_decoder_f CodeWord_decode_aper; -per_type_encoder_f CodeWord_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CodeWord_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h deleted file mode 100644 index c8ade8838..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _CoefficientOfFriction_H_ -#define _CoefficientOfFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* CoefficientOfFriction */ -typedef long CoefficientOfFriction_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; -asn_struct_free_f CoefficientOfFriction_free; -asn_struct_print_f CoefficientOfFriction_print; -asn_constr_check_f CoefficientOfFriction_constraint; -ber_type_decoder_f CoefficientOfFriction_decode_ber; -der_type_encoder_f CoefficientOfFriction_encode_der; -xer_type_decoder_f CoefficientOfFriction_decode_xer; -xer_type_encoder_f CoefficientOfFriction_encode_xer; -oer_type_decoder_f CoefficientOfFriction_decode_oer; -oer_type_encoder_f CoefficientOfFriction_encode_oer; -per_type_decoder_f CoefficientOfFriction_decode_uper; -per_type_encoder_f CoefficientOfFriction_encode_uper; -per_type_decoder_f CoefficientOfFriction_decode_aper; -per_type_encoder_f CoefficientOfFriction_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CoefficientOfFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h deleted file mode 100644 index 0520b5082..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _CommonSafetyRequest_H_ -#define _CommonSafetyRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSRC_MsgCount.h" -#include "TemporaryID.h" -#include "RequestedItemList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* CommonSafetyRequest */ -typedef struct CommonSafetyRequest { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSRC_MsgCount_t *msgCnt; /* OPTIONAL */ - TemporaryID_t *id; /* OPTIONAL */ - RequestedItemList_t requests; - struct CommonSafetyRequest__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} CommonSafetyRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _CommonSafetyRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h deleted file mode 100644 index 25b7e9de8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ComputedLane_H_ -#define _ComputedLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "DSRC_Angle.h" -#include "Scale-B12.h" -#include "DrivenLineOffsetSm.h" -#include "DrivenLineOffsetLg.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ComputedLane__offsetXaxis_PR { - ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetXaxis_PR_small, - ComputedLane__offsetXaxis_PR_large -} ComputedLane__offsetXaxis_PR; -typedef enum ComputedLane__offsetYaxis_PR { - ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ - ComputedLane__offsetYaxis_PR_small, - ComputedLane__offsetYaxis_PR_large -} ComputedLane__offsetYaxis_PR; - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* ComputedLane */ -typedef struct ComputedLane { - LaneID_t referenceLaneId; - struct ComputedLane__offsetXaxis { - ComputedLane__offsetXaxis_PR present; - union ComputedLane__offsetXaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetXaxis; - struct ComputedLane__offsetYaxis { - ComputedLane__offsetYaxis_PR present; - union ComputedLane__offsetYaxis_u { - DrivenLineOffsetSm_t small; - DrivenLineOffsetLg_t large; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsetYaxis; - DSRC_Angle_t *rotateXY; /* OPTIONAL */ - Scale_B12_t *scaleXaxis; /* OPTIONAL */ - Scale_B12_t *scaleYaxis; /* OPTIONAL */ - struct ComputedLane__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} ComputedLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; -extern asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ComputedLane_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _ComputedLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h deleted file mode 100644 index 08e056145..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Confidence_H_ -#define _Confidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Confidence */ -typedef long Confidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Confidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Confidence; -asn_struct_free_f Confidence_free; -asn_struct_print_f Confidence_print; -asn_constr_check_f Confidence_constraint; -ber_type_decoder_f Confidence_decode_ber; -der_type_encoder_f Confidence_encode_der; -xer_type_decoder_f Confidence_decode_xer; -xer_type_encoder_f Confidence_encode_xer; -oer_type_decoder_f Confidence_decode_oer; -oer_type_encoder_f Confidence_encode_oer; -per_type_decoder_f Confidence_decode_uper; -per_type_encoder_f Confidence_encode_uper; -per_type_decoder_f Confidence_decode_aper; -per_type_encoder_f Confidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Confidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h deleted file mode 100644 index ef2958bb1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ConfidenceSet_H_ -#define _ConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeConfidence.h" -#include "SteeringWheelAngleConfidence.h" -#include "HeadingConfidence.h" -#include "ThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelSteerYawRateConfidence; -struct SpeedandHeadingandThrottleConfidence; -struct PositionConfidenceSet; - -/* ConfidenceSet */ -typedef struct ConfidenceSet { - struct AccelSteerYawRateConfidence *accelConfidence; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ - TimeConfidence_t *timeConfidence; /* OPTIONAL */ - struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ - SteeringWheelAngleConfidence_t *steerConfidence; /* OPTIONAL */ - HeadingConfidence_t *headingConfidence; /* OPTIONAL */ - ThrottleConfidence_t *throttleConfidence; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; -extern asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1; -extern asn_TYPE_member_t asn_MBR_ConfidenceSet_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AccelSteerYawRateConfidence.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "PositionConfidenceSet.h" - -#endif /* _ConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h deleted file mode 100644 index 8ba724afd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ConnectingLane_H_ -#define _ConnectingLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "AllowedManeuvers.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ConnectingLane */ -typedef struct ConnectingLane { - LaneID_t lane; - AllowedManeuvers_t *maneuver; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectingLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; -extern asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectingLane_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ConnectingLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h deleted file mode 100644 index 33c6a9d42..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Connection_H_ -#define _Connection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ConnectingLane.h" -#include "SignalGroupID.h" -#include "RestrictionClassID.h" -#include "LaneConnectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionReferenceID; - -/* Connection */ -typedef struct Connection { - ConnectingLane_t connectingLane; - struct IntersectionReferenceID *remoteIntersection; /* OPTIONAL */ - SignalGroupID_t *signalGroup; /* OPTIONAL */ - RestrictionClassID_t *userClass; /* OPTIONAL */ - LaneConnectionID_t *connectionID; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Connection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Connection; -extern asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1; -extern asn_TYPE_member_t asn_MBR_Connection_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionReferenceID.h" - -#endif /* _Connection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h deleted file mode 100644 index d7c556924..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ConnectionManeuverAssist_addGrpC_H_ -#define _ConnectionManeuverAssist_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleToLanePositionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeOffsetPointXY; - -/* ConnectionManeuverAssist-addGrpC */ -typedef struct ConnectionManeuverAssist_addGrpC { - VehicleToLanePositionList_t vehicleToLanePositions; - struct NodeOffsetPointXY *rsuDistanceFromAnchor; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectionManeuverAssist_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeOffsetPointXY.h" - -#endif /* _ConnectionManeuverAssist_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h deleted file mode 100644 index fd33e6319..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ConnectionManeuverAssist_H_ -#define _ConnectionManeuverAssist_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneConnectionID.h" -#include "ZoneLength.h" -#include "WaitOnStopline.h" -#include "PedestrianBicycleDetect.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* ConnectionManeuverAssist */ -typedef struct ConnectionManeuverAssist { - LaneConnectionID_t connectionID; - ZoneLength_t *queueLength; /* OPTIONAL */ - ZoneLength_t *availableStorageLength; /* OPTIONAL */ - WaitOnStopline_t *waitOnStop; /* OPTIONAL */ - PedestrianBicycleDetect_t *pedBicycleDetect; /* OPTIONAL */ - struct ConnectionManeuverAssist__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} ConnectionManeuverAssist_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; -extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _ConnectionManeuverAssist_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h deleted file mode 100644 index f824b5938..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ConnectsToList_H_ -#define _ConnectsToList_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 Connection; - -/* ConnectsToList */ -typedef struct ConnectsToList { - A_SEQUENCE_OF(struct Connection) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ConnectsToList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; -extern asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1; -extern asn_TYPE_member_t asn_MBR_ConnectsToList_1[1]; -extern asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Connection.h" - -#endif /* _ConnectsToList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h deleted file mode 100644 index 56e6b265e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Count_H_ -#define _Count_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Count */ -typedef long Count_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Count; -asn_struct_free_f Count_free; -asn_struct_print_f Count_print; -asn_constr_check_f Count_constraint; -ber_type_decoder_f Count_decode_ber; -der_type_encoder_f Count_encode_der; -xer_type_decoder_f Count_decode_xer; -xer_type_encoder_f Count_encode_xer; -oer_type_decoder_f Count_decode_oer; -oer_type_encoder_f Count_encode_oer; -per_type_decoder_f Count_decode_uper; -per_type_encoder_f Count_encode_uper; -per_type_decoder_f Count_decode_aper; -per_type_encoder_f Count_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Count_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h deleted file mode 100644 index 55a9cbbe6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DDate_H_ -#define _DDate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDate */ -typedef struct DDate { - DYear_t year; - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDate; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h deleted file mode 100644 index 1eebdbdfd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DDateTime_H_ -#define _DDateTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "DOffset.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDateTime */ -typedef struct DDateTime { - DYear_t *year; /* OPTIONAL */ - DMonth_t *month; /* OPTIONAL */ - DDay_t *day; /* OPTIONAL */ - DHour_t *hour; /* OPTIONAL */ - DMinute_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DOffset_t *offset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DDateTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DDateTime; -extern asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1; -extern asn_TYPE_member_t asn_MBR_DDateTime_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDateTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h deleted file mode 100644 index c961eb38c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DDay_H_ -#define _DDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DDay */ -typedef long DDay_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DDay_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DDay; -asn_struct_free_f DDay_free; -asn_struct_print_f DDay_print; -asn_constr_check_f DDay_constraint; -ber_type_decoder_f DDay_decode_ber; -der_type_encoder_f DDay_encode_der; -xer_type_decoder_f DDay_decode_xer; -xer_type_encoder_f DDay_encode_xer; -oer_type_decoder_f DDay_decode_oer; -oer_type_encoder_f DDay_encode_oer; -per_type_decoder_f DDay_decode_uper; -per_type_encoder_f DDay_encode_uper; -per_type_decoder_f DDay_decode_aper; -per_type_encoder_f DDay_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h deleted file mode 100644 index e29e919ec..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DFullTime_H_ -#define _DFullTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "DDay.h" -#include "DHour.h" -#include "DMinute.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DFullTime */ -typedef struct DFullTime { - DYear_t year; - DMonth_t month; - DDay_t day; - DHour_t hour; - DMinute_t minute; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DFullTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DFullTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DFullTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h deleted file mode 100644 index 2c51bda7b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DHour_H_ -#define _DHour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DHour */ -typedef long DHour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DHour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DHour; -asn_struct_free_f DHour_free; -asn_struct_print_f DHour_print; -asn_constr_check_f DHour_constraint; -ber_type_decoder_f DHour_decode_ber; -der_type_encoder_f DHour_encode_der; -xer_type_decoder_f DHour_decode_xer; -xer_type_encoder_f DHour_encode_xer; -oer_type_decoder_f DHour_decode_oer; -oer_type_encoder_f DHour_encode_oer; -per_type_decoder_f DHour_decode_uper; -per_type_encoder_f DHour_encode_uper; -per_type_decoder_f DHour_decode_aper; -per_type_encoder_f DHour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DHour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h deleted file mode 100644 index 85e6f241e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DMinute_H_ -#define _DMinute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMinute */ -typedef long DMinute_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DMinute_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DMinute; -asn_struct_free_f DMinute_free; -asn_struct_print_f DMinute_print; -asn_constr_check_f DMinute_constraint; -ber_type_decoder_f DMinute_decode_ber; -der_type_encoder_f DMinute_encode_der; -xer_type_decoder_f DMinute_decode_xer; -xer_type_encoder_f DMinute_encode_xer; -oer_type_decoder_f DMinute_decode_oer; -oer_type_encoder_f DMinute_encode_oer; -per_type_decoder_f DMinute_decode_uper; -per_type_encoder_f DMinute_encode_uper; -per_type_decoder_f DMinute_decode_aper; -per_type_encoder_f DMinute_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMinute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h deleted file mode 100644 index ec28cbfd4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DMonth_H_ -#define _DMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonth */ -typedef long DMonth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DMonth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DMonth; -asn_struct_free_f DMonth_free; -asn_struct_print_f DMonth_print; -asn_constr_check_f DMonth_constraint; -ber_type_decoder_f DMonth_decode_ber; -der_type_encoder_f DMonth_encode_der; -xer_type_decoder_f DMonth_decode_xer; -xer_type_encoder_f DMonth_encode_xer; -oer_type_decoder_f DMonth_decode_oer; -oer_type_encoder_f DMonth_encode_oer; -per_type_decoder_f DMonth_decode_uper; -per_type_encoder_f DMonth_encode_uper; -per_type_decoder_f DMonth_decode_aper; -per_type_encoder_f DMonth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h deleted file mode 100644 index 53ef31858..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DMonthDay_H_ -#define _DMonthDay_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DMonth.h" -#include "DDay.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DMonthDay */ -typedef struct DMonthDay { - DMonth_t month; - DDay_t day; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DMonthDay_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; - -#ifdef __cplusplus -} -#endif - -#endif /* _DMonthDay_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h deleted file mode 100644 index faf7a805c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DOffset_H_ -#define _DOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DOffset */ -typedef long DOffset_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DOffset_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DOffset; -asn_struct_free_f DOffset_free; -asn_struct_print_f DOffset_print; -asn_constr_check_f DOffset_constraint; -ber_type_decoder_f DOffset_decode_ber; -der_type_encoder_f DOffset_encode_der; -xer_type_decoder_f DOffset_decode_xer; -xer_type_encoder_f DOffset_encode_xer; -oer_type_decoder_f DOffset_decode_oer; -oer_type_encoder_f DOffset_encode_oer; -per_type_decoder_f DOffset_decode_uper; -per_type_encoder_f DOffset_encode_uper; -per_type_decoder_f DOffset_decode_aper; -per_type_encoder_f DOffset_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h deleted file mode 100644 index 310a0c081..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * 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 _DSRCEquippedType_H_ -#define _DSRCEquippedType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCEquippedType */ -typedef BOOLEAN_t DSRCEquippedType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType; -asn_struct_free_f DSRCEquippedType_free; -asn_struct_print_f DSRCEquippedType_print; -asn_constr_check_f DSRCEquippedType_constraint; -ber_type_decoder_f DSRCEquippedType_decode_ber; -der_type_encoder_f DSRCEquippedType_encode_der; -xer_type_decoder_f DSRCEquippedType_decode_xer; -xer_type_encoder_f DSRCEquippedType_encode_xer; -per_type_decoder_f DSRCEquippedType_decode_uper; -per_type_encoder_f DSRCEquippedType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCEquippedType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h deleted file mode 100644 index a74b2e1ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRC_Angle_H_ -#define _DSRC_Angle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRC_Angle */ -typedef long DSRC_Angle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSRC_Angle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRC_Angle; -asn_struct_free_f DSRC_Angle_free; -asn_struct_print_f DSRC_Angle_print; -asn_constr_check_f DSRC_Angle_constraint; -ber_type_decoder_f DSRC_Angle_decode_ber; -der_type_encoder_f DSRC_Angle_encode_der; -xer_type_decoder_f DSRC_Angle_decode_xer; -xer_type_encoder_f DSRC_Angle_encode_xer; -oer_type_decoder_f DSRC_Angle_decode_oer; -oer_type_encoder_f DSRC_Angle_encode_oer; -per_type_decoder_f DSRC_Angle_decode_uper; -per_type_encoder_f DSRC_Angle_encode_uper; -per_type_decoder_f DSRC_Angle_decode_aper; -per_type_encoder_f DSRC_Angle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRC_Angle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h deleted file mode 100644 index d826b978d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRC_DayOfWeek_H_ -#define _DSRC_DayOfWeek_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DSRC_DayOfWeek { - DSRC_DayOfWeek_sun = 6, - DSRC_DayOfWeek_mon = 5, - DSRC_DayOfWeek_tue = 4, - DSRC_DayOfWeek_wed = 3, - DSRC_DayOfWeek_thu = 2, - DSRC_DayOfWeek_fri = 1, - DSRC_DayOfWeek_sat = 0 -} e_DSRC_DayOfWeek; - -/* DSRC_DayOfWeek */ -typedef BIT_STRING_t DSRC_DayOfWeek_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek; -asn_struct_free_f DSRC_DayOfWeek_free; -asn_struct_print_f DSRC_DayOfWeek_print; -asn_constr_check_f DSRC_DayOfWeek_constraint; -ber_type_decoder_f DSRC_DayOfWeek_decode_ber; -der_type_encoder_f DSRC_DayOfWeek_encode_der; -xer_type_decoder_f DSRC_DayOfWeek_decode_xer; -xer_type_encoder_f DSRC_DayOfWeek_encode_xer; -oer_type_decoder_f DSRC_DayOfWeek_decode_oer; -oer_type_encoder_f DSRC_DayOfWeek_encode_oer; -per_type_decoder_f DSRC_DayOfWeek_decode_uper; -per_type_encoder_f DSRC_DayOfWeek_encode_uper; -per_type_decoder_f DSRC_DayOfWeek_decode_aper; -per_type_encoder_f DSRC_DayOfWeek_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRC_DayOfWeek_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h deleted file mode 100644 index ee074893e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRC_Elevation_H_ -#define _DSRC_Elevation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRC_Elevation */ -typedef long DSRC_Elevation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSRC_Elevation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRC_Elevation; -asn_struct_free_f DSRC_Elevation_free; -asn_struct_print_f DSRC_Elevation_print; -asn_constr_check_f DSRC_Elevation_constraint; -ber_type_decoder_f DSRC_Elevation_decode_ber; -der_type_encoder_f DSRC_Elevation_encode_der; -xer_type_decoder_f DSRC_Elevation_decode_xer; -xer_type_encoder_f DSRC_Elevation_encode_xer; -oer_type_decoder_f DSRC_Elevation_decode_oer; -oer_type_encoder_f DSRC_Elevation_encode_oer; -per_type_decoder_f DSRC_Elevation_decode_uper; -per_type_encoder_f DSRC_Elevation_encode_uper; -per_type_decoder_f DSRC_Elevation_decode_aper; -per_type_encoder_f DSRC_Elevation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRC_Elevation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h deleted file mode 100644 index 1b4ea8b2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRC_MsgCount_H_ -#define _DSRC_MsgCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRC_MsgCount */ -typedef long DSRC_MsgCount_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSRC_MsgCount_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRC_MsgCount; -asn_struct_free_f DSRC_MsgCount_free; -asn_struct_print_f DSRC_MsgCount_print; -asn_constr_check_f DSRC_MsgCount_constraint; -ber_type_decoder_f DSRC_MsgCount_decode_ber; -der_type_encoder_f DSRC_MsgCount_encode_der; -xer_type_decoder_f DSRC_MsgCount_decode_xer; -xer_type_encoder_f DSRC_MsgCount_encode_xer; -oer_type_decoder_f DSRC_MsgCount_decode_oer; -oer_type_encoder_f DSRC_MsgCount_encode_oer; -per_type_decoder_f DSRC_MsgCount_decode_uper; -per_type_encoder_f DSRC_MsgCount_encode_uper; -per_type_decoder_f DSRC_MsgCount_decode_aper; -per_type_encoder_f DSRC_MsgCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRC_MsgCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h deleted file mode 100644 index 4e8390a5f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRC_TimeMark_H_ -#define _DSRC_TimeMark_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRC_TimeMark */ -typedef long DSRC_TimeMark_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSRC_TimeMark_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRC_TimeMark; -asn_struct_free_f DSRC_TimeMark_free; -asn_struct_print_f DSRC_TimeMark_print; -asn_constr_check_f DSRC_TimeMark_constraint; -ber_type_decoder_f DSRC_TimeMark_decode_ber; -der_type_encoder_f DSRC_TimeMark_encode_der; -xer_type_decoder_f DSRC_TimeMark_decode_xer; -xer_type_encoder_f DSRC_TimeMark_encode_xer; -oer_type_decoder_f DSRC_TimeMark_decode_oer; -oer_type_encoder_f DSRC_TimeMark_encode_oer; -per_type_decoder_f DSRC_TimeMark_decode_uper; -per_type_encoder_f DSRC_TimeMark_encode_uper; -per_type_decoder_f DSRC_TimeMark_decode_aper; -per_type_encoder_f DSRC_TimeMark_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRC_TimeMark_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h deleted file mode 100644 index 10c7dc44f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSRCmsgID_H_ -#define _DSRCmsgID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSRCmsgID */ -typedef long DSRCmsgID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; -asn_struct_free_f DSRCmsgID_free; -asn_struct_print_f DSRCmsgID_print; -asn_constr_check_f DSRCmsgID_constraint; -ber_type_decoder_f DSRCmsgID_decode_ber; -der_type_encoder_f DSRCmsgID_encode_der; -xer_type_decoder_f DSRCmsgID_decode_xer; -xer_type_encoder_f DSRCmsgID_encode_xer; -oer_type_decoder_f DSRCmsgID_decode_oer; -oer_type_encoder_f DSRCmsgID_encode_oer; -per_type_decoder_f DSRCmsgID_decode_uper; -per_type_encoder_f DSRCmsgID_encode_uper; -per_type_decoder_f DSRCmsgID_decode_aper; -per_type_encoder_f DSRCmsgID_encode_aper; -// #define DSRCmsgID_reservedMessageId_D ((DSRCmsgID_t)0) -// #define DSRCmsgID_alaCarteMessage_D ((DSRCmsgID_t)1) -// #define DSRCmsgID_basicSafetyMessage_D ((DSRCmsgID_t)2) -// #define DSRCmsgID_basicSafetyMessageVerbose_D ((DSRCmsgID_t)3) -// #define DSRCmsgID_commonSafetyRequest_D ((DSRCmsgID_t)4) -// #define DSRCmsgID_emergencyVehicleAlert_D ((DSRCmsgID_t)5) -// #define DSRCmsgID_intersectionCollision_D ((DSRCmsgID_t)6) -// #define DSRCmsgID_mapData_D ((DSRCmsgID_t)7) -// #define DSRCmsgID_nmeaCorrections_D ((DSRCmsgID_t)8) -// #define DSRCmsgID_probeDataManagement_D ((DSRCmsgID_t)9) -// #define DSRCmsgID_probeVehicleData_D ((DSRCmsgID_t)10) -// #define DSRCmsgID_roadSideAlert_D ((DSRCmsgID_t)11) -// #define DSRCmsgID_rtcmCorrections_D ((DSRCmsgID_t)12) -// #define DSRCmsgID_signalPhaseAndTimingMessage_D ((DSRCmsgID_t)13) -// #define DSRCmsgID_signalRequestMessage_D ((DSRCmsgID_t)14) -// #define DSRCmsgID_signalStatusMessage_D ((DSRCmsgID_t)15) -// #define DSRCmsgID_travelerInformation_D ((DSRCmsgID_t)16) -// #define DSRCmsgID_uperFrame_D ((DSRCmsgID_t)17) -// #define DSRCmsgID_mapData ((DSRCmsgID_t)18) -// #define DSRCmsgID_signalPhaseAndTimingMessage ((DSRCmsgID_t)19) -// #define DSRCmsgID_basicSafetyMessage ((DSRCmsgID_t)20) -// #define DSRCmsgID_commonSafetyRequest ((DSRCmsgID_t)21) -// #define DSRCmsgID_emergencyVehicleAlert ((DSRCmsgID_t)22) -// #define DSRCmsgID_intersectionCollision ((DSRCmsgID_t)23) -// #define DSRCmsgID_nmeaCorrections ((DSRCmsgID_t)24) -// #define DSRCmsgID_probeDataManagement ((DSRCmsgID_t)25) -// #define DSRCmsgID_probeVehicleData ((DSRCmsgID_t)26) -// #define DSRCmsgID_roadSideAlert ((DSRCmsgID_t)27) -// #define DSRCmsgID_rtcmCorrections ((DSRCmsgID_t)28) -// #define DSRCmsgID_signalRequestMessage ((DSRCmsgID_t)29) -// #define DSRCmsgID_signalStatusMessage ((DSRCmsgID_t)30) -// #define DSRCmsgID_travelerInformation ((DSRCmsgID_t)31) -// #define DSRCmsgID_personalSafetyMessage ((DSRCmsgID_t)32) -// #define DSRCmsgID_testMessage00 ((DSRCmsgID_t)240) -// #define DSRCmsgID_testMessage01 ((DSRCmsgID_t)241) -// #define DSRCmsgID_testMessage02 ((DSRCmsgID_t)242) -// #define DSRCmsgID_testMessage03 ((DSRCmsgID_t)243) -// #define DSRCmsgID_testMessage04 ((DSRCmsgID_t)244) -// #define DSRCmsgID_testMessage05 ((DSRCmsgID_t)245) -// #define DSRCmsgID_testMessage06 ((DSRCmsgID_t)246) -// #define DSRCmsgID_testMessage07 ((DSRCmsgID_t)247) -// #define DSRCmsgID_testMessage08 ((DSRCmsgID_t)248) -// #define DSRCmsgID_testMessage09 ((DSRCmsgID_t)249) -// #define DSRCmsgID_testMessage10 ((DSRCmsgID_t)250) -// #define DSRCmsgID_testMessage11 ((DSRCmsgID_t)251) -// #define DSRCmsgID_testMessage12 ((DSRCmsgID_t)252) -// #define DSRCmsgID_testMessage13 ((DSRCmsgID_t)253) -// #define DSRCmsgID_testMessage14 ((DSRCmsgID_t)254) -// #define DSRCmsgID_testMessage15 ((DSRCmsgID_t)255) - -#ifdef __cplusplus -} -#endif - -#endif /* _DSRCmsgID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h deleted file mode 100644 index 9ff59e29e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DSecond_H_ -#define _DSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DSecond */ -typedef long DSecond_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DSecond_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DSecond; -asn_struct_free_f DSecond_free; -asn_struct_print_f DSecond_print; -asn_constr_check_f DSecond_constraint; -ber_type_decoder_f DSecond_decode_ber; -der_type_encoder_f DSecond_encode_der; -xer_type_decoder_f DSecond_decode_xer; -xer_type_encoder_f DSecond_encode_xer; -oer_type_decoder_f DSecond_decode_oer; -oer_type_encoder_f DSecond_encode_oer; -per_type_decoder_f DSecond_decode_uper; -per_type_encoder_f DSecond_encode_uper; -per_type_decoder_f DSecond_decode_aper; -per_type_encoder_f DSecond_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h deleted file mode 100644 index 13e17f4ef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DTime_H_ -#define _DTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DHour.h" -#include "DMinute.h" -#include "DSecond.h" -#include "DOffset.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DTime */ -typedef struct DTime { - DHour_t hour; - DMinute_t minute; - DSecond_t second; - DOffset_t *offset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DTime; - -#ifdef __cplusplus -} -#endif - -#endif /* _DTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h deleted file mode 100644 index 43ef8535b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DYear_H_ -#define _DYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYear */ -typedef long DYear_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DYear_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DYear; -asn_struct_free_f DYear_free; -asn_struct_print_f DYear_print; -asn_constr_check_f DYear_constraint; -ber_type_decoder_f DYear_decode_ber; -der_type_encoder_f DYear_encode_der; -xer_type_decoder_f DYear_decode_xer; -xer_type_encoder_f DYear_encode_xer; -oer_type_decoder_f DYear_decode_oer; -oer_type_encoder_f DYear_encode_oer; -per_type_decoder_f DYear_decode_uper; -per_type_encoder_f DYear_encode_uper; -per_type_decoder_f DYear_decode_aper; -per_type_encoder_f DYear_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h deleted file mode 100644 index b76d1e7bf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DYearMonth_H_ -#define _DYearMonth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "DMonth.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DYearMonth */ -typedef struct DYearMonth { - DYear_t year; - DMonth_t month; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DYearMonth_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; - -#ifdef __cplusplus -} -#endif - -#endif /* _DYearMonth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h deleted file mode 100644 index 43dddacdc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DailySchedule_H_ -#define _DailySchedule_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DailySchedule */ -typedef struct DailySchedule { - long begin; - long duration; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DailySchedule_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DailySchedule; -extern asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1; -extern asn_TYPE_member_t asn_MBR_DailySchedule_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DailySchedule_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h deleted file mode 100644 index f9b1381a5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DataParameters_H_ -#define _DataParameters_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DataParameters */ -typedef struct DataParameters { - IA5String_t *processMethod; /* OPTIONAL */ - IA5String_t *processAgency; /* OPTIONAL */ - IA5String_t *lastCheckedDate; /* OPTIONAL */ - IA5String_t *geoidUsed; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DataParameters_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DataParameters; -extern asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1; -extern asn_TYPE_member_t asn_MBR_DataParameters_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DataParameters_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h deleted file mode 100644 index 3c984c16f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Day_H_ -#define _Day_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Day */ -typedef long Day_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Day_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Day; -asn_struct_free_f Day_free; -asn_struct_print_f Day_print; -asn_constr_check_f Day_constraint; -ber_type_decoder_f Day_decode_ber; -der_type_encoder_f Day_encode_der; -xer_type_decoder_f Day_decode_xer; -xer_type_encoder_f Day_encode_xer; -oer_type_decoder_f Day_decode_oer; -oer_type_encoder_f Day_encode_oer; -per_type_decoder_f Day_decode_uper; -per_type_encoder_f Day_encode_uper; -per_type_decoder_f Day_decode_aper; -per_type_encoder_f Day_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Day_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h deleted file mode 100644 index ab125d84e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DayOfWeek_H_ -#define _DayOfWeek_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DayOfWeek { - DayOfWeek_unknown = 0, - DayOfWeek_monday = 1, - DayOfWeek_tuesday = 2, - DayOfWeek_wednesday = 3, - DayOfWeek_thursday = 4, - DayOfWeek_friday = 5, - DayOfWeek_saturday = 6, - DayOfWeek_sunday = 7 -} e_DayOfWeek; - -/* DayOfWeek */ -typedef long DayOfWeek_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; -extern const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1; -asn_struct_free_f DayOfWeek_free; -asn_struct_print_f DayOfWeek_print; -asn_constr_check_f DayOfWeek_constraint; -ber_type_decoder_f DayOfWeek_decode_ber; -der_type_encoder_f DayOfWeek_encode_der; -xer_type_decoder_f DayOfWeek_decode_xer; -xer_type_encoder_f DayOfWeek_encode_xer; -oer_type_decoder_f DayOfWeek_decode_oer; -oer_type_encoder_f DayOfWeek_encode_oer; -per_type_decoder_f DayOfWeek_decode_uper; -per_type_encoder_f DayOfWeek_encode_uper; -per_type_decoder_f DayOfWeek_decode_aper; -per_type_encoder_f DayOfWeek_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DayOfWeek_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h deleted file mode 100644 index 75c77a2f6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _DaySchedule_H_ -#define _DaySchedule_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DaySchedule */ -typedef struct DaySchedule { - long begin; - long duration; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DaySchedule_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DaySchedule; -extern asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1; -extern asn_TYPE_member_t asn_MBR_DaySchedule_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DaySchedule_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h deleted file mode 100644 index 1d0a68ea0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DegreesLat_H_ -#define _DegreesLat_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLat */ -typedef long DegreesLat_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DegreesLat_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; -asn_struct_free_f DegreesLat_free; -asn_struct_print_f DegreesLat_print; -asn_constr_check_f DegreesLat_constraint; -ber_type_decoder_f DegreesLat_decode_ber; -der_type_encoder_f DegreesLat_encode_der; -xer_type_decoder_f DegreesLat_decode_xer; -xer_type_encoder_f DegreesLat_encode_xer; -oer_type_decoder_f DegreesLat_decode_oer; -oer_type_encoder_f DegreesLat_encode_oer; -per_type_decoder_f DegreesLat_decode_uper; -per_type_encoder_f DegreesLat_encode_uper; -per_type_decoder_f DegreesLat_decode_aper; -per_type_encoder_f DegreesLat_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLat_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h deleted file mode 100644 index 46fd0ead3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DegreesLong_H_ -#define _DegreesLong_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DegreesLong */ -typedef long DegreesLong_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DegreesLong_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; -asn_struct_free_f DegreesLong_free; -asn_struct_print_f DegreesLong_print; -asn_constr_check_f DegreesLong_constraint; -ber_type_decoder_f DegreesLong_decode_ber; -der_type_encoder_f DegreesLong_encode_der; -xer_type_decoder_f DegreesLong_decode_xer; -xer_type_encoder_f DegreesLong_encode_xer; -oer_type_decoder_f DegreesLong_decode_oer; -oer_type_encoder_f DegreesLong_encode_oer; -per_type_decoder_f DegreesLong_decode_uper; -per_type_encoder_f DegreesLong_encode_uper; -per_type_decoder_f DegreesLong_decode_aper; -per_type_encoder_f DegreesLong_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DegreesLong_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h deleted file mode 100644 index 05ddac081..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DeltaAngle_H_ -#define _DeltaAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DeltaAngle */ -typedef long DeltaAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; -asn_struct_free_f DeltaAngle_free; -asn_struct_print_f DeltaAngle_print; -asn_constr_check_f DeltaAngle_constraint; -ber_type_decoder_f DeltaAngle_decode_ber; -der_type_encoder_f DeltaAngle_encode_der; -xer_type_decoder_f DeltaAngle_decode_xer; -xer_type_encoder_f DeltaAngle_encode_xer; -oer_type_decoder_f DeltaAngle_decode_oer; -oer_type_encoder_f DeltaAngle_encode_oer; -per_type_decoder_f DeltaAngle_decode_uper; -per_type_encoder_f DeltaAngle_encode_uper; -per_type_decoder_f DeltaAngle_decode_aper; -per_type_encoder_f DeltaAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DeltaAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h deleted file mode 100644 index 27afd0f92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DeltaTime_H_ -#define _DeltaTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DeltaTime */ -typedef long DeltaTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DeltaTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DeltaTime; -asn_struct_free_f DeltaTime_free; -asn_struct_print_f DeltaTime_print; -asn_constr_check_f DeltaTime_constraint; -ber_type_decoder_f DeltaTime_decode_ber; -der_type_encoder_f DeltaTime_encode_der; -xer_type_decoder_f DeltaTime_decode_xer; -xer_type_encoder_f DeltaTime_encode_xer; -oer_type_decoder_f DeltaTime_decode_oer; -oer_type_encoder_f DeltaTime_encode_oer; -per_type_decoder_f DeltaTime_decode_uper; -per_type_encoder_f DeltaTime_encode_uper; -per_type_decoder_f DeltaTime_decode_aper; -per_type_encoder_f DeltaTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DeltaTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h deleted file mode 100644 index 3208b5ed3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DescriptiveName_H_ -#define _DescriptiveName_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DescriptiveName */ -typedef IA5String_t DescriptiveName_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; -asn_struct_free_f DescriptiveName_free; -asn_struct_print_f DescriptiveName_print; -asn_constr_check_f DescriptiveName_constraint; -ber_type_decoder_f DescriptiveName_decode_ber; -der_type_encoder_f DescriptiveName_encode_der; -xer_type_decoder_f DescriptiveName_decode_xer; -xer_type_encoder_f DescriptiveName_encode_xer; -oer_type_decoder_f DescriptiveName_decode_oer; -oer_type_encoder_f DescriptiveName_encode_oer; -per_type_decoder_f DescriptiveName_decode_uper; -per_type_encoder_f DescriptiveName_encode_uper; -per_type_decoder_f DescriptiveName_decode_aper; -per_type_encoder_f DescriptiveName_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DescriptiveName_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h deleted file mode 100644 index 2fd84bf3e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/DetectedObjectCommonData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h deleted file mode 100644 index 47a21dd85..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedObjectCommonData_H_ -#define _DetectedObjectCommonData_H_ - - -#include - -/* Including external dependencies */ -#include "ObjectType.h" -#include "ClassificationConfidence.h" -#include "ObjectID.h" -#include "MeasurementTimeOffset.h" -#include "TimeConfidence.h" -#include "PositionOffsetXYZ.h" -#include "PositionConfidenceSet.h" -#include "Speed.h" -#include "SpeedConfidence.h" -#include "Heading.h" -#include "HeadingConfidence.h" -#include "AccelerationConfidence.h" -#include "YawRateConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelerationSet4Way; - -/* DetectedObjectCommonData */ -typedef struct DetectedObjectCommonData { - ObjectType_t objType; - ClassificationConfidence_t objTypeCfd; - ObjectID_t objectID; - MeasurementTimeOffset_t measurementTime; - TimeConfidence_t timeConfidence; - PositionOffsetXYZ_t pos; - PositionConfidenceSet_t posConfidence; - Speed_t speed; - SpeedConfidence_t speedConfidence; - Speed_t *speedZ /* OPTIONAL */; - SpeedConfidence_t *speedConfidenceZ /* OPTIONAL */; - Heading_t heading; - HeadingConfidence_t headingConf; - struct AccelerationSet4Way *accel4way /* OPTIONAL */; - AccelerationConfidence_t *accCfdX /* OPTIONAL */; - AccelerationConfidence_t *accCfdY /* OPTIONAL */; - AccelerationConfidence_t *accCfdZ /* OPTIONAL */; - YawRateConfidence_t *accCfdYaw /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedObjectCommonData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData; -extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[18]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AccelerationSet4Way.h" - -#endif /* _DetectedObjectCommonData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h deleted file mode 100644 index e856ddf5f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedObjectData_H_ -#define _DetectedObjectData_H_ - - -#include - -/* Including external dependencies */ -#include "DetectedObjectCommonData.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DetectedObjectOptionalData; - -/* DetectedObjectData */ -typedef struct DetectedObjectData { - DetectedObjectCommonData_t detObjCommon; - struct DetectedObjectOptionalData *detObjOptData /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedObjectData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectData; -extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedObjectData_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "DetectedObjectOptionalData.h" - -#endif /* _DetectedObjectData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h deleted file mode 100644 index c114380dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedObjectList_H_ -#define _DetectedObjectList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DetectedObjectData; - -/* DetectedObjectList */ -typedef struct DetectedObjectList { - A_SEQUENCE_OF(struct DetectedObjectData) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedObjectList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectList; -extern asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedObjectList_1[1]; -extern asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "DetectedObjectData.h" - -#endif /* _DetectedObjectList_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h deleted file mode 100644 index 97b9624cf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedObjectOptionalData_H_ -#define _DetectedObjectOptionalData_H_ - - -#include - -/* Including external dependencies */ -#include "DetectedVehicleData.h" -#include "DetectedVRUData.h" -#include "DetectedObstacleData.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DetectedObjectOptionalData_PR { - DetectedObjectOptionalData_PR_NOTHING, /* No components present */ - DetectedObjectOptionalData_PR_detVeh, - DetectedObjectOptionalData_PR_detVRU, - DetectedObjectOptionalData_PR_detObst -} DetectedObjectOptionalData_PR; - -/* DetectedObjectOptionalData */ -typedef struct DetectedObjectOptionalData { - DetectedObjectOptionalData_PR present; - union DetectedObjectOptionalData_u { - DetectedVehicleData_t detVeh; - DetectedVRUData_t detVRU; - DetectedObstacleData_t detObst; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedObjectOptionalData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData; -extern asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[3]; -extern asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _DetectedObjectOptionalData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h deleted file mode 100644 index b6f5ad78e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedObstacleData_H_ -#define _DetectedObstacleData_H_ - - -#include - -/* Including external dependencies */ -#include "ObstacleSize.h" -#include "ObstacleSizeConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* DetectedObstacleData */ -typedef struct DetectedObstacleData { - ObstacleSize_t obstSize; - ObstacleSizeConfidence_t obstSizeConfidence; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedObstacleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData; -extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DetectedObstacleData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h deleted file mode 100644 index 5bfaffda3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedVRUData_H_ -#define _DetectedVRUData_H_ - - -#include - -/* Including external dependencies */ -#include "PersonalDeviceUserType.h" -#include "Attachment.h" -#include "AttachmentRadius.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PropelledInformation; - -/* DetectedVRUData */ -typedef struct DetectedVRUData { - PersonalDeviceUserType_t *basicType /* OPTIONAL */; - struct PropelledInformation *propulsion /* OPTIONAL */; - Attachment_t *attachment /* OPTIONAL */; - AttachmentRadius_t *radius /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedVRUData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedVRUData; -extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedVRUData_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PropelledInformation.h" - -#endif /* _DetectedVRUData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h deleted file mode 100644 index 49a988e5d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _DetectedVehicleData_H_ -#define _DetectedVehicleData_H_ - - -#include - -/* Including external dependencies */ -#include "ExteriorLights.h" -#include "VehicleHeight.h" -#include "BasicVehicleClass.h" -#include "ClassificationConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Attitude; -struct AttitudeConfidence; -struct AngularVelocity; -struct AngularVelocityConfidence; -struct VehicleSize; -struct VehicleSizeConfidence; - -/* DetectedVehicleData */ -typedef struct DetectedVehicleData { - ExteriorLights_t *lights /* OPTIONAL */; - struct Attitude *vehAttitude /* OPTIONAL */; - struct AttitudeConfidence *vehAttitudeConfidence /* OPTIONAL */; - struct AngularVelocity *vehAngVel /* OPTIONAL */; - struct AngularVelocityConfidence *vehAngVelConfidence /* OPTIONAL */; - struct VehicleSize *size /* OPTIONAL */; - VehicleHeight_t *height /* OPTIONAL */; - struct VehicleSizeConfidence *vehicleSizeConfidence /* OPTIONAL */; - BasicVehicleClass_t *vehicleClass /* OPTIONAL */; - ClassificationConfidence_t *classConf /* OPTIONAL */; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DetectedVehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1; -extern asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Attitude.h" -#include "AttitudeConfidence.h" -#include "AngularVelocity.h" -#include "AngularVelocityConfidence.h" -#include "VehicleSize.h" -#include "VehicleSizeConfidence.h" - -#endif /* _DetectedVehicleData_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h deleted file mode 100644 index 908be36db..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DirectionOfUse_H_ -#define _DirectionOfUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DirectionOfUse { - DirectionOfUse_unavailable = 0, - DirectionOfUse_forward = 1, - DirectionOfUse_reverse = 2, - DirectionOfUse_both = 3 -} e_DirectionOfUse; - -/* DirectionOfUse */ -typedef long DirectionOfUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; -extern const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1; -asn_struct_free_f DirectionOfUse_free; -asn_struct_print_f DirectionOfUse_print; -asn_constr_check_f DirectionOfUse_constraint; -ber_type_decoder_f DirectionOfUse_decode_ber; -der_type_encoder_f DirectionOfUse_encode_der; -xer_type_decoder_f DirectionOfUse_decode_xer; -xer_type_encoder_f DirectionOfUse_encode_xer; -oer_type_decoder_f DirectionOfUse_decode_oer; -oer_type_encoder_f DirectionOfUse_encode_oer; -per_type_decoder_f DirectionOfUse_decode_uper; -per_type_encoder_f DirectionOfUse_encode_uper; -per_type_decoder_f DirectionOfUse_decode_aper; -per_type_encoder_f DirectionOfUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DirectionOfUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h deleted file mode 100644 index 4168c1771..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DisabledVehicle_H_ -#define _DisabledVehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ITIScodes.h" -#include "GenericLocations.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DisabledVehicle */ -typedef struct DisabledVehicle { - ITIScodes_t statusDetails; - GenericLocations_t *locationDetails; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} DisabledVehicle_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_DisabledVehicle; -extern asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1; -extern asn_TYPE_member_t asn_MBR_DisabledVehicle_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _DisabledVehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h deleted file mode 100644 index 9c767c8f0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DistanceUnits_H_ -#define _DistanceUnits_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum DistanceUnits { - DistanceUnits_centimeter = 0, - DistanceUnits_cm2_5 = 1, - DistanceUnits_decimeter = 2, - DistanceUnits_meter = 3, - DistanceUnits_kilometer = 4, - DistanceUnits_foot = 5, - DistanceUnits_yard = 6, - DistanceUnits_mile = 7 -} e_DistanceUnits; - -/* DistanceUnits */ -typedef long DistanceUnits_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DistanceUnits; -extern const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1; -asn_struct_free_f DistanceUnits_free; -asn_struct_print_f DistanceUnits_print; -asn_constr_check_f DistanceUnits_constraint; -ber_type_decoder_f DistanceUnits_decode_ber; -der_type_encoder_f DistanceUnits_encode_der; -xer_type_decoder_f DistanceUnits_decode_xer; -xer_type_encoder_f DistanceUnits_encode_xer; -oer_type_decoder_f DistanceUnits_decode_oer; -oer_type_encoder_f DistanceUnits_encode_oer; -per_type_decoder_f DistanceUnits_decode_uper; -per_type_encoder_f DistanceUnits_encode_uper; -per_type_decoder_f DistanceUnits_decode_aper; -per_type_encoder_f DistanceUnits_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DistanceUnits_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h deleted file mode 100644 index 89ad97717..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DriveAxleLiftAirPressure_H_ -#define _DriveAxleLiftAirPressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLiftAirPressure */ -typedef long DriveAxleLiftAirPressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; -asn_struct_free_f DriveAxleLiftAirPressure_free; -asn_struct_print_f DriveAxleLiftAirPressure_print; -asn_constr_check_f DriveAxleLiftAirPressure_constraint; -ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; -der_type_encoder_f DriveAxleLiftAirPressure_encode_der; -xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; -xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; -oer_type_decoder_f DriveAxleLiftAirPressure_decode_oer; -oer_type_encoder_f DriveAxleLiftAirPressure_encode_oer; -per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; -per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; -per_type_decoder_f DriveAxleLiftAirPressure_decode_aper; -per_type_encoder_f DriveAxleLiftAirPressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLiftAirPressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h deleted file mode 100644 index dd5c8c904..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DriveAxleLocation_H_ -#define _DriveAxleLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLocation */ -typedef long DriveAxleLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; -asn_struct_free_f DriveAxleLocation_free; -asn_struct_print_f DriveAxleLocation_print; -asn_constr_check_f DriveAxleLocation_constraint; -ber_type_decoder_f DriveAxleLocation_decode_ber; -der_type_encoder_f DriveAxleLocation_encode_der; -xer_type_decoder_f DriveAxleLocation_decode_xer; -xer_type_encoder_f DriveAxleLocation_encode_xer; -oer_type_decoder_f DriveAxleLocation_decode_oer; -oer_type_encoder_f DriveAxleLocation_encode_oer; -per_type_decoder_f DriveAxleLocation_decode_uper; -per_type_encoder_f DriveAxleLocation_encode_uper; -per_type_decoder_f DriveAxleLocation_decode_aper; -per_type_encoder_f DriveAxleLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h deleted file mode 100644 index a62542e19..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DriveAxleLubePressure_H_ -#define _DriveAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleLubePressure */ -typedef long DriveAxleLubePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; -asn_struct_free_f DriveAxleLubePressure_free; -asn_struct_print_f DriveAxleLubePressure_print; -asn_constr_check_f DriveAxleLubePressure_constraint; -ber_type_decoder_f DriveAxleLubePressure_decode_ber; -der_type_encoder_f DriveAxleLubePressure_encode_der; -xer_type_decoder_f DriveAxleLubePressure_decode_xer; -xer_type_encoder_f DriveAxleLubePressure_encode_xer; -oer_type_decoder_f DriveAxleLubePressure_decode_oer; -oer_type_encoder_f DriveAxleLubePressure_encode_oer; -per_type_decoder_f DriveAxleLubePressure_decode_uper; -per_type_encoder_f DriveAxleLubePressure_encode_uper; -per_type_decoder_f DriveAxleLubePressure_decode_aper; -per_type_encoder_f DriveAxleLubePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h deleted file mode 100644 index 5295c7fed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DriveAxleTemperature_H_ -#define _DriveAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DriveAxleTemperature */ -typedef long DriveAxleTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; -asn_struct_free_f DriveAxleTemperature_free; -asn_struct_print_f DriveAxleTemperature_print; -asn_constr_check_f DriveAxleTemperature_constraint; -ber_type_decoder_f DriveAxleTemperature_decode_ber; -der_type_encoder_f DriveAxleTemperature_encode_der; -xer_type_decoder_f DriveAxleTemperature_decode_xer; -xer_type_encoder_f DriveAxleTemperature_encode_xer; -oer_type_decoder_f DriveAxleTemperature_decode_oer; -oer_type_encoder_f DriveAxleTemperature_encode_oer; -per_type_decoder_f DriveAxleTemperature_decode_uper; -per_type_encoder_f DriveAxleTemperature_encode_uper; -per_type_decoder_f DriveAxleTemperature_decode_aper; -per_type_encoder_f DriveAxleTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DriveAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h deleted file mode 100644 index 022f842eb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DrivenLineOffsetLg_H_ -#define _DrivenLineOffsetLg_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetLg */ -typedef long DrivenLineOffsetLg_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; -asn_struct_free_f DrivenLineOffsetLg_free; -asn_struct_print_f DrivenLineOffsetLg_print; -asn_constr_check_f DrivenLineOffsetLg_constraint; -ber_type_decoder_f DrivenLineOffsetLg_decode_ber; -der_type_encoder_f DrivenLineOffsetLg_encode_der; -xer_type_decoder_f DrivenLineOffsetLg_decode_xer; -xer_type_encoder_f DrivenLineOffsetLg_encode_xer; -oer_type_decoder_f DrivenLineOffsetLg_decode_oer; -oer_type_encoder_f DrivenLineOffsetLg_encode_oer; -per_type_decoder_f DrivenLineOffsetLg_decode_uper; -per_type_encoder_f DrivenLineOffsetLg_encode_uper; -per_type_decoder_f DrivenLineOffsetLg_decode_aper; -per_type_encoder_f DrivenLineOffsetLg_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetLg_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h deleted file mode 100644 index c8e2c9b4e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DrivenLineOffsetSm_H_ -#define _DrivenLineOffsetSm_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivenLineOffsetSm */ -typedef long DrivenLineOffsetSm_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; -asn_struct_free_f DrivenLineOffsetSm_free; -asn_struct_print_f DrivenLineOffsetSm_print; -asn_constr_check_f DrivenLineOffsetSm_constraint; -ber_type_decoder_f DrivenLineOffsetSm_decode_ber; -der_type_encoder_f DrivenLineOffsetSm_encode_der; -xer_type_decoder_f DrivenLineOffsetSm_decode_xer; -xer_type_encoder_f DrivenLineOffsetSm_encode_xer; -oer_type_decoder_f DrivenLineOffsetSm_decode_oer; -oer_type_encoder_f DrivenLineOffsetSm_encode_oer; -per_type_decoder_f DrivenLineOffsetSm_decode_uper; -per_type_encoder_f DrivenLineOffsetSm_encode_uper; -per_type_decoder_f DrivenLineOffsetSm_decode_aper; -per_type_encoder_f DrivenLineOffsetSm_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivenLineOffsetSm_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h deleted file mode 100644 index 63060fdc9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _DrivingWheelAngle_H_ -#define _DrivingWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* DrivingWheelAngle */ -typedef long DrivingWheelAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; -asn_struct_free_f DrivingWheelAngle_free; -asn_struct_print_f DrivingWheelAngle_print; -asn_constr_check_f DrivingWheelAngle_constraint; -ber_type_decoder_f DrivingWheelAngle_decode_ber; -der_type_encoder_f DrivingWheelAngle_encode_der; -xer_type_decoder_f DrivingWheelAngle_decode_xer; -xer_type_encoder_f DrivingWheelAngle_encode_xer; -oer_type_decoder_f DrivingWheelAngle_decode_oer; -oer_type_encoder_f DrivingWheelAngle_encode_oer; -per_type_decoder_f DrivingWheelAngle_decode_uper; -per_type_encoder_f DrivingWheelAngle_encode_uper; -per_type_decoder_f DrivingWheelAngle_decode_aper; -per_type_encoder_f DrivingWheelAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _DrivingWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h deleted file mode 100644 index 958b4614a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Duration_H_ -#define _Duration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Duration */ -typedef long Duration_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Duration; -asn_struct_free_f Duration_free; -asn_struct_print_f Duration_print; -asn_constr_check_f Duration_constraint; -ber_type_decoder_f Duration_decode_ber; -der_type_encoder_f Duration_encode_der; -xer_type_decoder_f Duration_decode_xer; -xer_type_encoder_f Duration_encode_xer; -oer_type_decoder_f Duration_decode_oer; -oer_type_encoder_f Duration_encode_oer; -per_type_decoder_f Duration_decode_uper; -per_type_encoder_f Duration_encode_uper; -per_type_decoder_f Duration_decode_aper; -per_type_encoder_f Duration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Duration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h deleted file mode 100644 index e4df29b4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * 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_r63/EXTERNAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h deleted file mode 100644 index d6ec1c527..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" - * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EXTERNAL_H_ -#define _EXTERNAL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OBJECT_IDENTIFIER.h" -#include "NativeInteger.h" -#include "ObjectDescriptor.h" -#include "ANY.h" -#include "OCTET_STRING.h" -#include "BIT_STRING.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EXTERNAL__encoding_PR { - EXTERNAL__encoding_PR_NOTHING, /* No components present */ - EXTERNAL__encoding_PR_single_ASN1_type, - EXTERNAL__encoding_PR_octet_aligned, - EXTERNAL__encoding_PR_arbitrary -} EXTERNAL__encoding_PR; - -/* EXTERNAL */ -typedef struct EXTERNAL { - OBJECT_IDENTIFIER_t *direct_reference; /* OPTIONAL */ - long *indirect_reference; /* OPTIONAL */ - ObjectDescriptor_t *data_value_descriptor; /* OPTIONAL */ - struct EXTERNAL__encoding { - EXTERNAL__encoding_PR present; - union EXTERNAL__encoding_u { - ANY_t single_ASN1_type; - OCTET_STRING_t octet_aligned; - BIT_STRING_t arbitrary; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } encoding; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EXTERNAL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EXTERNAL; - -#ifdef __cplusplus -} -#endif - -#endif /* _EXTERNAL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h deleted file mode 100644 index 80e9d0e97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ElevationConfidence_H_ -#define _ElevationConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ElevationConfidence { - ElevationConfidence_unavailable = 0, - ElevationConfidence_elev_500_00 = 1, - ElevationConfidence_elev_200_00 = 2, - ElevationConfidence_elev_100_00 = 3, - ElevationConfidence_elev_050_00 = 4, - ElevationConfidence_elev_020_00 = 5, - ElevationConfidence_elev_010_00 = 6, - ElevationConfidence_elev_005_00 = 7, - ElevationConfidence_elev_002_00 = 8, - ElevationConfidence_elev_001_00 = 9, - ElevationConfidence_elev_000_50 = 10, - ElevationConfidence_elev_000_20 = 11, - ElevationConfidence_elev_000_10 = 12, - ElevationConfidence_elev_000_05 = 13, - ElevationConfidence_elev_000_02 = 14, - ElevationConfidence_elev_000_01 = 15 -} e_ElevationConfidence; - -/* ElevationConfidence */ -typedef long ElevationConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1; -asn_struct_free_f ElevationConfidence_free; -asn_struct_print_f ElevationConfidence_print; -asn_constr_check_f ElevationConfidence_constraint; -ber_type_decoder_f ElevationConfidence_decode_ber; -der_type_encoder_f ElevationConfidence_encode_der; -xer_type_decoder_f ElevationConfidence_decode_xer; -xer_type_encoder_f ElevationConfidence_encode_xer; -oer_type_decoder_f ElevationConfidence_decode_oer; -oer_type_encoder_f ElevationConfidence_encode_oer; -per_type_decoder_f ElevationConfidence_decode_uper; -per_type_encoder_f ElevationConfidence_encode_uper; -per_type_decoder_f ElevationConfidence_decode_aper; -per_type_encoder_f ElevationConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ElevationConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h deleted file mode 100644 index ee6226c4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EmergencyDetails_H_ -#define _EmergencyDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "SirenInUse.h" -#include "LightbarInUse.h" -#include "MultiVehicleResponse.h" -#include "ResponseType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PrivilegedEvents; - -/* EmergencyDetails */ -typedef struct EmergencyDetails { - SSPindex_t sspRights; - SirenInUse_t sirenUse; - LightbarInUse_t lightsUse; - MultiVehicleResponse_t multi; - struct PrivilegedEvents *events; /* OPTIONAL */ - ResponseType_t *responseType; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EmergencyDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; -extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1; -extern asn_TYPE_member_t asn_MBR_EmergencyDetails_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PrivilegedEvents.h" - -#endif /* _EmergencyDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h deleted file mode 100644 index e5eed12da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EmergencyVehicleAlert_H_ -#define _EmergencyVehicleAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "TemporaryID.h" -#include "RoadSideAlert.h" -#include "ResponseType.h" -#include "VehicleMass.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "ResponderGroupAffected.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EmergencyDetails; -struct Reg_BasicSafetyMessage; - -/* EmergencyVehicleAlert */ -typedef struct EmergencyVehicleAlert { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - TemporaryID_t *id; /* OPTIONAL */ - RoadSideAlert_t rsaMsg; - ResponseType_t *responseType; /* OPTIONAL */ - struct EmergencyDetails *details; /* OPTIONAL */ - VehicleMass_t *mass; /* OPTIONAL */ - VehicleType_t *basicType; /* OPTIONAL */ - VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ - IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ - ResponderGroupAffected_t *responderType; /* OPTIONAL */ - struct EmergencyVehicleAlert__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} EmergencyVehicleAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1; -extern asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[11]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "EmergencyDetails.h" -#include "RegionalExtension.h" - -#endif /* _EmergencyVehicleAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h deleted file mode 100644 index 00f166e51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EmissionType_H_ -#define _EmissionType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EmissionType { - EmissionType_typeA = 0, - EmissionType_typeB = 1, - EmissionType_typeC = 2, - EmissionType_typeD = 3, - EmissionType_typeE = 4 - /* - * Enumeration is extensible - */ -} e_EmissionType; - -/* EmissionType */ -typedef long EmissionType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EmissionType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EmissionType; -extern const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1; -asn_struct_free_f EmissionType_free; -asn_struct_print_f EmissionType_print; -asn_constr_check_f EmissionType_constraint; -ber_type_decoder_f EmissionType_decode_ber; -der_type_encoder_f EmissionType_encode_der; -xer_type_decoder_f EmissionType_decode_xer; -xer_type_encoder_f EmissionType_encode_xer; -oer_type_decoder_f EmissionType_decode_oer; -oer_type_encoder_f EmissionType_encode_oer; -per_type_decoder_f EmissionType_decode_uper; -per_type_encoder_f EmissionType_encode_uper; -per_type_decoder_f EmissionType_decode_aper; -per_type_encoder_f EmissionType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EmissionType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h deleted file mode 100644 index 4496b02c9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EnabledLaneList_H_ -#define _EnabledLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EnabledLaneList */ -typedef struct EnabledLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} EnabledLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; -extern asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_EnabledLaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _EnabledLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h deleted file mode 100644 index a116028f7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EpochMins_H_ -#define _EpochMins_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "INTEGER.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EpochMins */ -typedef INTEGER_t EpochMins_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EpochMins_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EpochMins; -asn_struct_free_f EpochMins_free; -asn_struct_print_f EpochMins_print; -asn_constr_check_f EpochMins_constraint; -ber_type_decoder_f EpochMins_decode_ber; -der_type_encoder_f EpochMins_encode_der; -xer_type_decoder_f EpochMins_decode_xer; -xer_type_encoder_f EpochMins_encode_xer; -oer_type_decoder_f EpochMins_decode_oer; -oer_type_encoder_f EpochMins_encode_oer; -per_type_decoder_f EpochMins_decode_uper; -per_type_encoder_f EpochMins_encode_uper; -per_type_decoder_f EpochMins_decode_aper; -per_type_encoder_f EpochMins_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EpochMins_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h deleted file mode 100644 index 2d1799bb4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _EquipmentType_H_ -#define _EquipmentType_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EquipmentType { - EquipmentType_unknown = 0, - EquipmentType_rsu = 1, - EquipmentType_obu = 2, - EquipmentType_vru = 3 - /* - * Enumeration is extensible - */ -} e_EquipmentType; - -/* EquipmentType */ -typedef long EquipmentType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EquipmentType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EquipmentType; -extern const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1; -asn_struct_free_f EquipmentType_free; -asn_struct_print_f EquipmentType_print; -asn_constr_check_f EquipmentType_constraint; -ber_type_decoder_f EquipmentType_decode_ber; -der_type_encoder_f EquipmentType_encode_der; -xer_type_decoder_f EquipmentType_decode_xer; -xer_type_encoder_f EquipmentType_encode_xer; -oer_type_decoder_f EquipmentType_decode_oer; -oer_type_encoder_f EquipmentType_encode_oer; -per_type_decoder_f EquipmentType_decode_uper; -per_type_encoder_f EquipmentType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EquipmentType_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h deleted file mode 100644 index 9009de37f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EssMobileFriction_H_ -#define _EssMobileFriction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssMobileFriction */ -typedef long EssMobileFriction_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; -asn_struct_free_f EssMobileFriction_free; -asn_struct_print_f EssMobileFriction_print; -asn_constr_check_f EssMobileFriction_constraint; -ber_type_decoder_f EssMobileFriction_decode_ber; -der_type_encoder_f EssMobileFriction_encode_der; -xer_type_decoder_f EssMobileFriction_decode_xer; -xer_type_encoder_f EssMobileFriction_encode_xer; -oer_type_decoder_f EssMobileFriction_decode_oer; -oer_type_encoder_f EssMobileFriction_encode_oer; -per_type_decoder_f EssMobileFriction_decode_uper; -per_type_encoder_f EssMobileFriction_encode_uper; -per_type_decoder_f EssMobileFriction_decode_aper; -per_type_encoder_f EssMobileFriction_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssMobileFriction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h deleted file mode 100644 index d8e276f44..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EssPrecipRate_H_ -#define _EssPrecipRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssPrecipRate */ -typedef long EssPrecipRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; -asn_struct_free_f EssPrecipRate_free; -asn_struct_print_f EssPrecipRate_print; -asn_constr_check_f EssPrecipRate_constraint; -ber_type_decoder_f EssPrecipRate_decode_ber; -der_type_encoder_f EssPrecipRate_encode_der; -xer_type_decoder_f EssPrecipRate_decode_xer; -xer_type_encoder_f EssPrecipRate_encode_xer; -oer_type_decoder_f EssPrecipRate_decode_oer; -oer_type_encoder_f EssPrecipRate_encode_oer; -per_type_decoder_f EssPrecipRate_decode_uper; -per_type_encoder_f EssPrecipRate_encode_uper; -per_type_decoder_f EssPrecipRate_decode_aper; -per_type_encoder_f EssPrecipRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h deleted file mode 100644 index 449b9d315..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EssPrecipSituation_H_ -#define _EssPrecipSituation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipSituation { - EssPrecipSituation_other = 1, - EssPrecipSituation_unknown = 2, - EssPrecipSituation_noPrecipitation = 3, - EssPrecipSituation_unidentifiedSlight = 4, - EssPrecipSituation_unidentifiedModerate = 5, - EssPrecipSituation_unidentifiedHeavy = 6, - EssPrecipSituation_snowSlight = 7, - EssPrecipSituation_snowModerate = 8, - EssPrecipSituation_snowHeavy = 9, - EssPrecipSituation_rainSlight = 10, - EssPrecipSituation_rainModerate = 11, - EssPrecipSituation_rainHeavy = 12, - EssPrecipSituation_frozenPrecipitationSlight = 13, - EssPrecipSituation_frozenPrecipitationModerate = 14, - EssPrecipSituation_frozenPrecipitationHeavy = 15 -} e_EssPrecipSituation; - -/* EssPrecipSituation */ -typedef long EssPrecipSituation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; -extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1; -asn_struct_free_f EssPrecipSituation_free; -asn_struct_print_f EssPrecipSituation_print; -asn_constr_check_f EssPrecipSituation_constraint; -ber_type_decoder_f EssPrecipSituation_decode_ber; -der_type_encoder_f EssPrecipSituation_encode_der; -xer_type_decoder_f EssPrecipSituation_decode_xer; -xer_type_encoder_f EssPrecipSituation_encode_xer; -oer_type_decoder_f EssPrecipSituation_decode_oer; -oer_type_encoder_f EssPrecipSituation_encode_oer; -per_type_decoder_f EssPrecipSituation_decode_uper; -per_type_encoder_f EssPrecipSituation_encode_uper; -per_type_decoder_f EssPrecipSituation_decode_aper; -per_type_encoder_f EssPrecipSituation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipSituation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h deleted file mode 100644 index e2b438348..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EssPrecipYesNo_H_ -#define _EssPrecipYesNo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum EssPrecipYesNo { - EssPrecipYesNo_precip = 1, - EssPrecipYesNo_noPrecip = 2, - EssPrecipYesNo_error = 3 -} e_EssPrecipYesNo; - -/* EssPrecipYesNo */ -typedef long EssPrecipYesNo_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; -extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1; -asn_struct_free_f EssPrecipYesNo_free; -asn_struct_print_f EssPrecipYesNo_print; -asn_constr_check_f EssPrecipYesNo_constraint; -ber_type_decoder_f EssPrecipYesNo_decode_ber; -der_type_encoder_f EssPrecipYesNo_encode_der; -xer_type_decoder_f EssPrecipYesNo_decode_xer; -xer_type_encoder_f EssPrecipYesNo_encode_xer; -oer_type_decoder_f EssPrecipYesNo_decode_oer; -oer_type_encoder_f EssPrecipYesNo_encode_oer; -per_type_decoder_f EssPrecipYesNo_decode_uper; -per_type_encoder_f EssPrecipYesNo_encode_uper; -per_type_decoder_f EssPrecipYesNo_decode_aper; -per_type_encoder_f EssPrecipYesNo_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssPrecipYesNo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h deleted file mode 100644 index 598be98fb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EssSolarRadiation_H_ -#define _EssSolarRadiation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* EssSolarRadiation */ -typedef long EssSolarRadiation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; -asn_struct_free_f EssSolarRadiation_free; -asn_struct_print_f EssSolarRadiation_print; -asn_constr_check_f EssSolarRadiation_constraint; -ber_type_decoder_f EssSolarRadiation_decode_ber; -der_type_encoder_f EssSolarRadiation_encode_der; -xer_type_decoder_f EssSolarRadiation_decode_xer; -xer_type_encoder_f EssSolarRadiation_encode_xer; -oer_type_decoder_f EssSolarRadiation_decode_oer; -oer_type_encoder_f EssSolarRadiation_encode_oer; -per_type_decoder_f EssSolarRadiation_decode_uper; -per_type_encoder_f EssSolarRadiation_encode_uper; -per_type_decoder_f EssSolarRadiation_decode_aper; -per_type_encoder_f EssSolarRadiation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _EssSolarRadiation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h deleted file mode 100644 index 3108b5319..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/EventDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h deleted file mode 100644 index c95d00b51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _EventDescription_H_ -#define _EventDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ITIScodes.h" -#include "Priority.h" -#include "HeadingSlice.h" -#include "Extent.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* EventDescription */ -typedef struct EventDescription { - ITIScodes_t typeEvent; - struct EventDescription__description { - A_SEQUENCE_OF(ITIScodes_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - Priority_t *priority; /* OPTIONAL */ - HeadingSlice_t *heading; /* OPTIONAL */ - Extent_t *extent; /* OPTIONAL */ - struct EventDescription__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} EventDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EventDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_EventDescription_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _EventDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h deleted file mode 100644 index 960e9e6a6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ExitService_H_ -#define _ExitService_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ExitService__Member__item_PR { - ExitService__Member__item_PR_NOTHING, /* No components present */ - ExitService__Member__item_PR_itis, - ExitService__Member__item_PR_text -} ExitService__Member__item_PR; - -/* Forward definitions */ -typedef struct ExitService__Member { - struct ExitService__Member__item { - ExitService__Member__item_PR present; - union ExitService__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ExitService__Member; - -/* ExitService */ -typedef struct ExitService { - A_SEQUENCE_OF(ExitService__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ExitService_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ExitService; -extern asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1; -extern asn_TYPE_member_t asn_MBR_ExitService_1[1]; -extern asn_per_constraints_t asn_PER_type_ExitService_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExitService_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h deleted file mode 100644 index 0c2b78bf2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Extent_H_ -#define _Extent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Extent { - Extent_useInstantlyOnly = 0, - Extent_useFor3meters = 1, - Extent_useFor10meters = 2, - Extent_useFor50meters = 3, - Extent_useFor100meters = 4, - Extent_useFor500meters = 5, - Extent_useFor1000meters = 6, - Extent_useFor5000meters = 7, - Extent_useFor10000meters = 8, - Extent_useFor50000meters = 9, - Extent_useFor100000meters = 10, - Extent_useFor500000meters = 11, - Extent_useFor1000000meters = 12, - Extent_useFor5000000meters = 13, - Extent_useFor10000000meters = 14, - Extent_forever = 15 -} e_Extent; - -/* Extent */ -typedef long Extent_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Extent_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Extent; -extern const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1; -asn_struct_free_f Extent_free; -asn_struct_print_f Extent_print; -asn_constr_check_f Extent_constraint; -ber_type_decoder_f Extent_decode_ber; -der_type_encoder_f Extent_encode_der; -xer_type_decoder_f Extent_decode_xer; -xer_type_encoder_f Extent_encode_xer; -oer_type_decoder_f Extent_decode_oer; -oer_type_encoder_f Extent_encode_oer; -per_type_decoder_f Extent_decode_uper; -per_type_encoder_f Extent_encode_uper; -per_type_decoder_f Extent_decode_aper; -per_type_encoder_f Extent_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Extent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h deleted file mode 100644 index 012cc9629..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ExteriorLights_H_ -#define _ExteriorLights_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ExteriorLights { - ExteriorLights_lowBeamHeadlightsOn = 0, - ExteriorLights_highBeamHeadlightsOn = 1, - ExteriorLights_leftTurnSignalOn = 2, - ExteriorLights_rightTurnSignalOn = 3, - ExteriorLights_hazardSignalOn = 4, - ExteriorLights_automaticLightControlOn = 5, - ExteriorLights_daytimeRunningLightsOn = 6, - ExteriorLights_fogLightOn = 7, - ExteriorLights_parkingLightsOn = 8 -} e_ExteriorLights; - -/* ExteriorLights */ -typedef BIT_STRING_t ExteriorLights_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; -asn_struct_free_f ExteriorLights_free; -asn_struct_print_f ExteriorLights_print; -asn_constr_check_f ExteriorLights_constraint; -ber_type_decoder_f ExteriorLights_decode_ber; -der_type_encoder_f ExteriorLights_encode_der; -xer_type_decoder_f ExteriorLights_decode_xer; -xer_type_encoder_f ExteriorLights_encode_xer; -oer_type_decoder_f ExteriorLights_decode_oer; -oer_type_encoder_f ExteriorLights_encode_oer; -per_type_decoder_f ExteriorLights_decode_uper; -per_type_encoder_f ExteriorLights_encode_uper; -per_type_decoder_f ExteriorLights_decode_aper; -per_type_encoder_f ExteriorLights_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ExteriorLights_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h deleted file mode 100644 index 079f8e0fd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _FuelType_H_ -#define _FuelType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* FuelType */ -typedef long FuelType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_FuelType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_FuelType; -asn_struct_free_f FuelType_free; -asn_struct_print_f FuelType_print; -asn_constr_check_f FuelType_constraint; -ber_type_decoder_f FuelType_decode_ber; -der_type_encoder_f FuelType_encode_der; -xer_type_decoder_f FuelType_decode_xer; -xer_type_encoder_f FuelType_encode_xer; -oer_type_decoder_f FuelType_decode_oer; -oer_type_encoder_f FuelType_encode_oer; -per_type_decoder_f FuelType_decode_uper; -per_type_encoder_f FuelType_encode_uper; -per_type_decoder_f FuelType_decode_aper; -per_type_encoder_f FuelType_encode_aper; -#define FuelType_unknownFuel ((FuelType_t)0) -#define FuelType_gasoline ((FuelType_t)1) -#define FuelType_ethanol ((FuelType_t)2) -#define FuelType_diesel ((FuelType_t)3) -#define FuelType_electric ((FuelType_t)4) -#define FuelType_hybrid ((FuelType_t)5) -#define FuelType_hydrogen ((FuelType_t)6) -#define FuelType_natGasLiquid ((FuelType_t)7) -#define FuelType_natGasComp ((FuelType_t)8) -#define FuelType_propane ((FuelType_t)9) - -#ifdef __cplusplus -} -#endif - -#endif /* _FuelType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h deleted file mode 100644 index b5ef418e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _FullPositionVector_H_ -#define _FullPositionVector_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "DSRC_Elevation.h" -#include "Heading.h" -#include "TimeConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct DDateTime; -struct TransmissionAndSpeed; -struct PositionalAccuracy; -struct PositionConfidenceSet; -struct SpeedandHeadingandThrottleConfidence; - -/* FullPositionVector */ -typedef struct FullPositionVector { - struct DDateTime *utcTime; /* OPTIONAL */ - Longitude_t Long; - Latitude_t lat; - DSRC_Elevation_t *elevation; /* OPTIONAL */ - Heading_t *heading; /* OPTIONAL */ - struct TransmissionAndSpeed *speed; /* OPTIONAL */ - struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ - TimeConfidence_t *timeConfidence; /* OPTIONAL */ - struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FullPositionVector_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; -extern asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1; -extern asn_TYPE_member_t asn_MBR_FullPositionVector_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "DDateTime.h" -#include "TransmissionAndSpeed.h" -#include "PositionalAccuracy.h" -#include "PositionConfidenceSet.h" -#include "SpeedandHeadingandThrottleConfidence.h" - -#endif /* _FullPositionVector_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h deleted file mode 100644 index 093c35cf6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _FurtherInfoID_H_ -#define _FurtherInfoID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* FurtherInfoID */ -typedef OCTET_STRING_t FurtherInfoID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; -asn_struct_free_f FurtherInfoID_free; -asn_struct_print_f FurtherInfoID_print; -asn_constr_check_f FurtherInfoID_constraint; -ber_type_decoder_f FurtherInfoID_decode_ber; -der_type_encoder_f FurtherInfoID_encode_der; -xer_type_decoder_f FurtherInfoID_decode_xer; -xer_type_encoder_f FurtherInfoID_encode_xer; -oer_type_decoder_f FurtherInfoID_decode_oer; -oer_type_encoder_f FurtherInfoID_encode_oer; -per_type_decoder_f FurtherInfoID_decode_uper; -per_type_encoder_f FurtherInfoID_encode_uper; -per_type_decoder_f FurtherInfoID_decode_aper; -per_type_encoder_f FurtherInfoID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _FurtherInfoID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h deleted file mode 100644 index 20d815eaa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GNSSstatus_H_ -#define _GNSSstatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GNSSstatus { - GNSSstatus_unavailable = 0, - GNSSstatus_isHealthy = 1, - GNSSstatus_isMonitored = 2, - GNSSstatus_baseStationType = 3, - GNSSstatus_aPDOPofUnder5 = 4, - GNSSstatus_inViewOfUnder5 = 5, - GNSSstatus_localCorrectionsPresent = 6, - GNSSstatus_networkCorrectionsPresent = 7 -} e_GNSSstatus; - -/* GNSSstatus */ -typedef BIT_STRING_t GNSSstatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GNSSstatus; -asn_struct_free_f GNSSstatus_free; -asn_struct_print_f GNSSstatus_print; -asn_constr_check_f GNSSstatus_constraint; -ber_type_decoder_f GNSSstatus_decode_ber; -der_type_encoder_f GNSSstatus_encode_der; -xer_type_decoder_f GNSSstatus_decode_xer; -xer_type_encoder_f GNSSstatus_encode_xer; -oer_type_decoder_f GNSSstatus_decode_oer; -oer_type_encoder_f GNSSstatus_encode_oer; -per_type_decoder_f GNSSstatus_decode_uper; -per_type_encoder_f GNSSstatus_encode_uper; -per_type_decoder_f GNSSstatus_decode_aper; -per_type_encoder_f GNSSstatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GNSSstatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h deleted file mode 100644 index 55b994fa3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * 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_r63/GeneralizedTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralizedTime.h deleted file mode 100644 index ace9c0271..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralizedTime.h +++ /dev/null @@ -1,77 +0,0 @@ -/*- - * 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_r63/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h deleted file mode 100644 index cfddbb9b5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GenericLane_H_ -#define _GenericLane_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "DescriptiveName.h" -#include "ApproachID.h" -#include "LaneAttributes.h" -#include "AllowedManeuvers.h" -#include "NodeListXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ConnectsToList; -struct OverlayLaneList; -struct Reg_BasicSafetyMessage; - -/* GenericLane */ -typedef struct GenericLane { - LaneID_t laneID; - DescriptiveName_t *name; /* OPTIONAL */ - ApproachID_t *ingressApproach; /* OPTIONAL */ - ApproachID_t *egressApproach; /* OPTIONAL */ - LaneAttributes_t laneAttributes; - AllowedManeuvers_t *maneuvers; /* OPTIONAL */ - NodeListXY_t nodeList; - struct ConnectsToList *connectsTo; /* OPTIONAL */ - struct OverlayLaneList *overlays; /* OPTIONAL */ - struct GenericLane__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} GenericLane_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericLane; -extern asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1; -extern asn_TYPE_member_t asn_MBR_GenericLane_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ConnectsToList.h" -#include "OverlayLaneList.h" -#include "RegionalExtension.h" - -#endif /* _GenericLane_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h deleted file mode 100644 index 68087735c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GenericLocations_H_ -#define _GenericLocations_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GenericLocations { - GenericLocations_on_bridges = 7937, - GenericLocations_in_tunnels = 7938, - GenericLocations_entering_or_leaving_tunnels = 7939, - GenericLocations_on_ramps = 7940, - GenericLocations_in_road_construction_area = 7941, - GenericLocations_around_a_curve = 7942, - GenericLocations_on_curve = 8026, - GenericLocations_on_tracks = 8009, - GenericLocations_in_street = 8025, - GenericLocations_shoulder = 8027, - GenericLocations_on_minor_roads = 7943, - GenericLocations_in_the_opposing_lanes = 7944, - GenericLocations_adjacent_to_roadway = 7945, - GenericLocations_across_tracks = 8024, - GenericLocations_on_bend = 7946, - GenericLocations_intersection = 8032, - GenericLocations_entire_intersection = 7947, - GenericLocations_in_the_median = 7948, - GenericLocations_moved_to_side_of_road = 7949, - GenericLocations_moved_to_shoulder = 7950, - GenericLocations_on_the_roadway = 7951, - GenericLocations_dip = 8010, - GenericLocations_traffic_circle = 8011, - GenericLocations_crossover = 8028, - GenericLocations_cross_road = 8029, - GenericLocations_side_road = 8030, - GenericLocations_to = 8014, - GenericLocations_by = 8015, - GenericLocations_through = 8016, - GenericLocations_area_of = 8017, - GenericLocations_under = 8018, - GenericLocations_over = 8019, - GenericLocations_from = 8020, - GenericLocations_approaching = 8021, - GenericLocations_entering_at = 8022, - GenericLocations_exiting_at = 8023, - GenericLocations_in_shaded_areas = 7952, - GenericLocations_in_low_lying_areas = 7953, - GenericLocations_in_the_downtown_area = 7954, - GenericLocations_in_the_inner_city_area = 7955, - GenericLocations_in_parts = 7956, - GenericLocations_in_some_places = 7957, - GenericLocations_in_the_ditch = 7958, - GenericLocations_in_the_valley = 7959, - GenericLocations_on_hill_top = 7960, - GenericLocations_near_the_foothills = 7961, - GenericLocations_at_high_altitudes = 7962, - GenericLocations_near_the_lake = 7963, - GenericLocations_near_the_shore = 7964, - GenericLocations_nearby_basin = 8008, - GenericLocations_over_the_crest_of_a_hill = 7965, - GenericLocations_other_than_on_the_roadway = 7966, - GenericLocations_near_the_beach = 7967, - GenericLocations_near_beach_access_point = 7968, - GenericLocations_mountain_pass = 8006, - GenericLocations_lower_level = 7969, - GenericLocations_upper_level = 7970, - GenericLocations_airport = 7971, - GenericLocations_concourse = 7972, - GenericLocations_gate = 7973, - GenericLocations_baggage_claim = 7974, - GenericLocations_customs_point = 7975, - GenericLocations_reservation_center = 8007, - GenericLocations_station = 7976, - GenericLocations_platform = 7977, - GenericLocations_dock = 7978, - GenericLocations_depot = 7979, - GenericLocations_ev_charging_point = 7980, - GenericLocations_information_welcome_point = 7981, - GenericLocations_at_rest_area = 7982, - GenericLocations_at_service_area = 7983, - GenericLocations_at_weigh_station = 7984, - GenericLocations_roadside_park = 8033, - GenericLocations_picnic_areas = 7985, - GenericLocations_rest_area = 7986, - GenericLocations_service_stations = 7987, - GenericLocations_toilets = 7988, - GenericLocations_bus_stop = 8031, - GenericLocations_park_and_ride_lot = 8012, - GenericLocations_on_the_right = 7989, - GenericLocations_on_the_left = 7990, - GenericLocations_in_the_center = 7991, - GenericLocations_in_the_opposite_direction = 7992, - GenericLocations_cross_traffic = 7993, - GenericLocations_northbound_traffic = 7994, - GenericLocations_eastbound_traffic = 7995, - GenericLocations_southbound_traffic = 7996, - GenericLocations_westbound_traffic = 7997, - GenericLocations_north = 7998, - GenericLocations_south = 7999, - GenericLocations_east = 8000, - GenericLocations_west = 8001, - GenericLocations_northeast = 8002, - GenericLocations_northwest = 8003, - GenericLocations_southeast = 8004, - GenericLocations_southwest = 8005 - /* - * Enumeration is extensible - */ -} e_GenericLocations; - -/* GenericLocations */ -typedef long GenericLocations_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GenericLocations_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GenericLocations; -extern const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1; -asn_struct_free_f GenericLocations_free; -asn_struct_print_f GenericLocations_print; -asn_constr_check_f GenericLocations_constraint; -ber_type_decoder_f GenericLocations_decode_ber; -der_type_encoder_f GenericLocations_encode_der; -xer_type_decoder_f GenericLocations_decode_xer; -xer_type_encoder_f GenericLocations_encode_xer; -oer_type_decoder_f GenericLocations_decode_oer; -oer_type_encoder_f GenericLocations_encode_oer; -per_type_decoder_f GenericLocations_decode_uper; -per_type_encoder_f GenericLocations_encode_uper; -per_type_decoder_f GenericLocations_decode_aper; -per_type_encoder_f GenericLocations_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericLocations_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h deleted file mode 100644 index 857ac60e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GenericSignage_H_ -#define _GenericSignage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GenericSignage__Member__item_PR { - GenericSignage__Member__item_PR_NOTHING, /* No components present */ - GenericSignage__Member__item_PR_itis, - GenericSignage__Member__item_PR_text -} GenericSignage__Member__item_PR; - -/* Forward definitions */ -typedef struct GenericSignage__Member { - struct GenericSignage__Member__item { - GenericSignage__Member__item_PR present; - union GenericSignage__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericSignage__Member; - -/* GenericSignage */ -typedef struct GenericSignage { - A_SEQUENCE_OF(GenericSignage__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GenericSignage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; -extern asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1; -extern asn_TYPE_member_t asn_MBR_GenericSignage_1[1]; -extern asn_per_constraints_t asn_PER_type_GenericSignage_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _GenericSignage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h deleted file mode 100644 index 61fc3f41d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GeographicalPath_H_ -#define _GeographicalPath_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "BOOLEAN.h" -#include "HeadingSlice.h" -#include "OffsetSystem.h" -#include "GeometricProjection.h" -#include "ValidRegion.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GeographicalPath__description_PR { - GeographicalPath__description_PR_NOTHING, /* No components present */ - GeographicalPath__description_PR_path, - GeographicalPath__description_PR_geometry, - GeographicalPath__description_PR_oldRegion - /* Extensions may appear below */ - -} GeographicalPath__description_PR; - -/* Forward declarations */ -struct RoadSegmentReferenceID; -struct Position3D; -struct Reg_BasicSafetyMessage; - -/* GeographicalPath */ -typedef struct GeographicalPath { - DescriptiveName_t *name; /* OPTIONAL */ - struct RoadSegmentReferenceID *id; /* OPTIONAL */ - struct Position3D *anchor; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - DirectionOfUse_t *directionality; /* OPTIONAL */ - BOOLEAN_t *closedPath; /* OPTIONAL */ - HeadingSlice_t *direction; /* OPTIONAL */ - struct GeographicalPath__description { - GeographicalPath__description_PR present; - union GeographicalPath__description_u { - OffsetSystem_t path; - GeometricProjection_t geometry; - ValidRegion_t oldRegion; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - struct GeographicalPath__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} GeographicalPath_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GeographicalPath; -extern asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1; -extern asn_TYPE_member_t asn_MBR_GeographicalPath_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RoadSegmentReferenceID.h" -#include "Position3D.h" -#include "RegionalExtension.h" - -#endif /* _GeographicalPath_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h deleted file mode 100644 index 2dc56a908..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GeometricProjection_H_ -#define _GeometricProjection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingSlice.h" -#include "Extent.h" -#include "LaneWidth.h" -#include "Circle.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* GeometricProjection */ -typedef struct GeometricProjection { - HeadingSlice_t direction; - Extent_t *extent; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - Circle_t circle; - struct GeometricProjection__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} GeometricProjection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GeometricProjection; -extern asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1; -extern asn_TYPE_member_t asn_MBR_GeometricProjection_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _GeometricProjection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h deleted file mode 100644 index 19cac6852..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h +++ /dev/null @@ -1,36 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _GraphicString_H_ -#define _GraphicString_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t GraphicString_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_GraphicString; -extern asn_TYPE_operation_t asn_OP_GraphicString; - -#define GraphicString_free OCTET_STRING_free -#define GraphicString_print OCTET_STRING_print -#define GraphicString_compare OCTET_STRING_compare -#define GraphicString_constraint asn_generic_unknown_constraint -#define GraphicString_decode_ber OCTET_STRING_decode_ber -#define GraphicString_encode_der OCTET_STRING_encode_der -#define GraphicString_decode_xer OCTET_STRING_decode_xer_hex -#define GraphicString_encode_xer OCTET_STRING_encode_xer -#define GraphicString_decode_uper OCTET_STRING_decode_uper -#define GraphicString_encode_uper OCTET_STRING_encode_uper -#define GraphicString_decode_aper OCTET_STRING_decode_aper -#define GraphicString_encode_aper OCTET_STRING_encode_aper - -#ifdef __cplusplus -} -#endif - -#endif /* _GraphicString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h deleted file mode 100644 index f7e7b3092..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GrossDistance_H_ -#define _GrossDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* GrossDistance */ -typedef long GrossDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GrossDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GrossDistance; -asn_struct_free_f GrossDistance_free; -asn_struct_print_f GrossDistance_print; -asn_constr_check_f GrossDistance_constraint; -ber_type_decoder_f GrossDistance_decode_ber; -der_type_encoder_f GrossDistance_encode_der; -xer_type_decoder_f GrossDistance_decode_xer; -xer_type_encoder_f GrossDistance_encode_xer; -oer_type_decoder_f GrossDistance_decode_oer; -oer_type_encoder_f GrossDistance_encode_oer; -per_type_decoder_f GrossDistance_decode_uper; -per_type_encoder_f GrossDistance_encode_uper; -per_type_decoder_f GrossDistance_decode_aper; -per_type_encoder_f GrossDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GrossDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h deleted file mode 100644 index 9d733f1f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _GrossSpeed_H_ -#define _GrossSpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* GrossSpeed */ -typedef long GrossSpeed_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_GrossSpeed; -asn_struct_free_f GrossSpeed_free; -asn_struct_print_f GrossSpeed_print; -asn_constr_check_f GrossSpeed_constraint; -ber_type_decoder_f GrossSpeed_decode_ber; -der_type_encoder_f GrossSpeed_encode_der; -xer_type_decoder_f GrossSpeed_decode_xer; -xer_type_encoder_f GrossSpeed_encode_xer; -oer_type_decoder_f GrossSpeed_decode_oer; -oer_type_encoder_f GrossSpeed_encode_oer; -per_type_decoder_f GrossSpeed_decode_uper; -per_type_encoder_f GrossSpeed_encode_uper; -per_type_decoder_f GrossSpeed_decode_aper; -per_type_encoder_f GrossSpeed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _GrossSpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h deleted file mode 100644 index dcc7776aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Header_H_ -#define _Header_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DYear.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "DSRC_MsgCount.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Header */ -typedef struct Header { - DYear_t *year; /* OPTIONAL */ - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t *secMark; /* OPTIONAL */ - DSRC_MsgCount_t *msgIssueRevision; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Header_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Header; -extern asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1; -extern asn_TYPE_member_t asn_MBR_Header_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Header_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h deleted file mode 100644 index a863ca24c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Heading_H_ -#define _Heading_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Heading */ -typedef long Heading_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Heading_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Heading; -asn_struct_free_f Heading_free; -asn_struct_print_f Heading_print; -asn_constr_check_f Heading_constraint; -ber_type_decoder_f Heading_decode_ber; -der_type_encoder_f Heading_encode_der; -xer_type_decoder_f Heading_decode_xer; -xer_type_encoder_f Heading_encode_xer; -oer_type_decoder_f Heading_decode_oer; -oer_type_encoder_f Heading_encode_oer; -per_type_decoder_f Heading_decode_uper; -per_type_encoder_f Heading_encode_uper; -per_type_decoder_f Heading_decode_aper; -per_type_encoder_f Heading_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Heading_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h deleted file mode 100644 index ef2a5ae0a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _HeadingConfidence_H_ -#define _HeadingConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HeadingConfidence { - HeadingConfidence_unavailable = 0, - HeadingConfidence_prec10deg = 1, - HeadingConfidence_prec05deg = 2, - HeadingConfidence_prec01deg = 3, - HeadingConfidence_prec0_1deg = 4, - HeadingConfidence_prec0_05deg = 5, - HeadingConfidence_prec0_01deg = 6, - HeadingConfidence_prec0_0125deg = 7 -} e_HeadingConfidence; - -/* HeadingConfidence */ -typedef long HeadingConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1; -asn_struct_free_f HeadingConfidence_free; -asn_struct_print_f HeadingConfidence_print; -asn_constr_check_f HeadingConfidence_constraint; -ber_type_decoder_f HeadingConfidence_decode_ber; -der_type_encoder_f HeadingConfidence_encode_der; -xer_type_decoder_f HeadingConfidence_decode_xer; -xer_type_encoder_f HeadingConfidence_encode_xer; -oer_type_decoder_f HeadingConfidence_decode_oer; -oer_type_encoder_f HeadingConfidence_encode_oer; -per_type_decoder_f HeadingConfidence_decode_uper; -per_type_encoder_f HeadingConfidence_encode_uper; -per_type_decoder_f HeadingConfidence_decode_aper; -per_type_encoder_f HeadingConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h deleted file mode 100644 index bd5c912c3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _HeadingSlice_H_ -#define _HeadingSlice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HeadingSlice { - HeadingSlice_from000_0to022_5degrees = 0, - HeadingSlice_from022_5to045_0degrees = 1, - HeadingSlice_from045_0to067_5degrees = 2, - HeadingSlice_from067_5to090_0degrees = 3, - HeadingSlice_from090_0to112_5degrees = 4, - HeadingSlice_from112_5to135_0degrees = 5, - HeadingSlice_from135_0to157_5degrees = 6, - HeadingSlice_from157_5to180_0degrees = 7, - HeadingSlice_from180_0to202_5degrees = 8, - HeadingSlice_from202_5to225_0degrees = 9, - HeadingSlice_from225_0to247_5degrees = 10, - HeadingSlice_from247_5to270_0degrees = 11, - HeadingSlice_from270_0to292_5degrees = 12, - HeadingSlice_from292_5to315_0degrees = 13, - HeadingSlice_from315_0to337_5degrees = 14, - HeadingSlice_from337_5to360_0degrees = 15 -} e_HeadingSlice; - -/* HeadingSlice */ -typedef BIT_STRING_t HeadingSlice_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; -asn_struct_free_f HeadingSlice_free; -asn_struct_print_f HeadingSlice_print; -asn_constr_check_f HeadingSlice_constraint; -ber_type_decoder_f HeadingSlice_decode_ber; -der_type_encoder_f HeadingSlice_encode_der; -xer_type_decoder_f HeadingSlice_decode_xer; -xer_type_encoder_f HeadingSlice_encode_xer; -oer_type_decoder_f HeadingSlice_decode_oer; -oer_type_encoder_f HeadingSlice_encode_oer; -per_type_decoder_f HeadingSlice_decode_uper; -per_type_encoder_f HeadingSlice_encode_uper; -per_type_decoder_f HeadingSlice_decode_aper; -per_type_encoder_f HeadingSlice_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HeadingSlice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h deleted file mode 100644 index 50cde1c08..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Holiday_H_ -#define _Holiday_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Holiday { - Holiday_weekday = 0, - Holiday_holiday = 1 -} e_Holiday; - -/* Holiday */ -typedef long Holiday_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Holiday_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Holiday; -extern const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1; -asn_struct_free_f Holiday_free; -asn_struct_print_f Holiday_print; -asn_constr_check_f Holiday_constraint; -ber_type_decoder_f Holiday_decode_ber; -der_type_encoder_f Holiday_encode_der; -xer_type_decoder_f Holiday_decode_xer; -xer_type_encoder_f Holiday_encode_xer; -oer_type_decoder_f Holiday_decode_oer; -oer_type_encoder_f Holiday_encode_oer; -per_type_decoder_f Holiday_decode_uper; -per_type_encoder_f Holiday_encode_uper; -per_type_decoder_f Holiday_decode_aper; -per_type_encoder_f Holiday_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Holiday_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h deleted file mode 100644 index 2bb6858dc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Hour_H_ -#define _Hour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Hour */ -typedef long Hour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Hour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Hour; -asn_struct_free_f Hour_free; -asn_struct_print_f Hour_print; -asn_constr_check_f Hour_constraint; -ber_type_decoder_f Hour_decode_ber; -der_type_encoder_f Hour_encode_der; -xer_type_decoder_f Hour_decode_xer; -xer_type_encoder_f Hour_encode_xer; -oer_type_decoder_f Hour_decode_oer; -oer_type_encoder_f Hour_encode_oer; -per_type_decoder_f Hour_decode_uper; -per_type_encoder_f Hour_encode_uper; -per_type_decoder_f Hour_decode_aper; -per_type_encoder_f Hour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Hour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h deleted file mode 100644 index b58cb8d62..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _HumanPropelledType_H_ -#define _HumanPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum HumanPropelledType { - HumanPropelledType_unavailable = 0, - HumanPropelledType_otherTypes = 1, - HumanPropelledType_onFoot = 2, - HumanPropelledType_skateboard = 3, - HumanPropelledType_pushOrKickScooter = 4, - HumanPropelledType_wheelchair = 5 - /* - * Enumeration is extensible - */ -} e_HumanPropelledType; - -/* HumanPropelledType */ -typedef long HumanPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1; -asn_struct_free_f HumanPropelledType_free; -asn_struct_print_f HumanPropelledType_print; -asn_constr_check_f HumanPropelledType_constraint; -ber_type_decoder_f HumanPropelledType_decode_ber; -der_type_encoder_f HumanPropelledType_encode_der; -xer_type_decoder_f HumanPropelledType_decode_xer; -xer_type_encoder_f HumanPropelledType_encode_xer; -oer_type_decoder_f HumanPropelledType_decode_oer; -oer_type_encoder_f HumanPropelledType_encode_oer; -per_type_decoder_f HumanPropelledType_decode_uper; -per_type_encoder_f HumanPropelledType_encode_uper; -per_type_decoder_f HumanPropelledType_decode_aper; -per_type_encoder_f HumanPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _HumanPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h deleted file mode 100644 index 321f0c7e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h +++ /dev/null @@ -1,40 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _IA5String_H_ -#define _IA5String_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ - -/* - * IA5String ASN.1 type definition. - */ -extern asn_TYPE_descriptor_t asn_DEF_IA5String; -extern asn_TYPE_operation_t asn_OP_IA5String; - -asn_constr_check_f IA5String_constraint; - -#define IA5String_free OCTET_STRING_free -#define IA5String_print OCTET_STRING_print_utf8 -#define IA5String_compare OCTET_STRING_compare -#define IA5String_decode_ber OCTET_STRING_decode_ber -#define IA5String_encode_der OCTET_STRING_encode_der -#define IA5String_decode_xer OCTET_STRING_decode_xer_utf8 -#define IA5String_encode_xer OCTET_STRING_encode_xer_utf8 -#define IA5String_decode_uper OCTET_STRING_decode_uper -#define IA5String_encode_uper OCTET_STRING_encode_uper -#define IA5String_decode_aper OCTET_STRING_decode_aper -#define IA5String_encode_aper OCTET_STRING_encode_aper - -#ifdef __cplusplus -} -#endif - -#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h deleted file mode 100644 index ca4bc1204..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h +++ /dev/null @@ -1,108 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _INTEGER_H_ -#define _INTEGER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; - -extern asn_TYPE_descriptor_t asn_DEF_INTEGER; -extern asn_TYPE_operation_t asn_OP_INTEGER; - -/* Map with to integer value association */ -typedef struct asn_INTEGER_enum_map_s { - long nat_value; /* associated native integer value */ - size_t enum_len; /* strlen("tag") */ - const char *enum_name; /* "tag" */ -} asn_INTEGER_enum_map_t; - -/* This type describes an enumeration for INTEGER and ENUMERATED types */ -typedef struct asn_INTEGER_specifics_s { - const asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ - const unsigned int *enum2value; /* "tag" => N; sorted by tag */ - int map_count; /* Elements in either map */ - int extension; /* This map is extensible */ - int strict_enumeration; /* Enumeration set is fixed */ - int field_width; /* Size of native integer */ - int field_unsigned; /* Signed=0, unsigned=1 */ -} asn_INTEGER_specifics_t; - -#define INTEGER_free ASN__PRIMITIVE_TYPE_free -#define INTEGER_decode_ber ber_decode_primitive -#define INTEGER_constraint asn_generic_no_constraint -asn_struct_print_f INTEGER_print; -asn_struct_compare_f INTEGER_compare; -der_type_encoder_f INTEGER_encode_der; -xer_type_decoder_f INTEGER_decode_xer; -xer_type_encoder_f INTEGER_encode_xer; -oer_type_decoder_f INTEGER_decode_oer; -oer_type_encoder_f INTEGER_encode_oer; -per_type_decoder_f INTEGER_decode_uper; -per_type_encoder_f INTEGER_encode_uper; -per_type_decoder_f INTEGER_decode_aper; -per_type_encoder_f INTEGER_encode_aper; -asn_random_fill_f INTEGER_random_fill; - -/*********************************** - * Some handy conversion routines. * - ***********************************/ - -/* - * Natiwe size-independent conversion of native integers to/from INTEGER. - * (l_size) is in bytes. - * Returns 0 if it was possible to convert, -1 otherwise. - * -1/EINVAL: Mandatory argument missing - * -1/ERANGE: Value encoded is out of range for long representation - * -1/ENOMEM: Memory allocation failed (in asn_*2INTEGER()). - */ -int asn_INTEGER2imax(const INTEGER_t *i, intmax_t *l); -int asn_INTEGER2umax(const INTEGER_t *i, uintmax_t *l); -int asn_imax2INTEGER(INTEGER_t *i, intmax_t l); -int asn_umax2INTEGER(INTEGER_t *i, uintmax_t l); - -/* - * Size-specific conversion helpers. - */ -int asn_INTEGER2long(const INTEGER_t *i, long *l); -int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); -int asn_long2INTEGER(INTEGER_t *i, long l); -int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); -int asn_int642INTEGER(INTEGER_t *i, int64_t l); -int asn_uint642INTEGER(INTEGER_t *i, uint64_t l); - -/* A version of strtol/strtoimax(3) with nicer error reporting. */ -enum asn_strtox_result_e { - ASN_STRTOX_ERROR_RANGE = -3, /* Input outside of supported numeric range */ - ASN_STRTOX_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ - ASN_STRTOX_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ - ASN_STRTOX_OK = 0, /* Conversion succeeded, number ends at (*end) */ - ASN_STRTOX_EXTRA_DATA = 1 /* Conversion succeeded, but the string has extra stuff */ -}; -enum asn_strtox_result_e asn_strtol_lim(const char *str, const char **end, - long *l); -enum asn_strtox_result_e asn_strtoul_lim(const char *str, const char **end, - unsigned long *l); -enum asn_strtox_result_e asn_strtoimax_lim(const char *str, const char **end, - intmax_t *l); -enum asn_strtox_result_e asn_strtoumax_lim(const char *str, const char **end, - uintmax_t *l); - -/* - * Convert the integer value into the corresponding enumeration map entry. - */ -const asn_INTEGER_enum_map_t *INTEGER_map_value2enum( - const asn_INTEGER_specifics_t *specs, long value); - -#ifdef __cplusplus -} -#endif - -#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h deleted file mode 100644 index 494831541..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _ISO646String_H_ -#define _ISO646String_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef VisibleString_t ISO646String_t; /* Implemented using VisibleString */ - -extern asn_TYPE_descriptor_t asn_DEF_ISO646String; -extern asn_TYPE_operation_t asn_OP_ISO646String; - -#define ISO646String_free OCTET_STRING_free -#define ISO646String_print OCTET_STRING_print_utf8 -#define ISO646String_compare OCTET_STRING_compare -#define ISO646String_constraint VisibleString_constraint -#define ISO646String_decode_ber OCTET_STRING_decode_ber -#define ISO646String_encode_der OCTET_STRING_encode_der -#define ISO646String_decode_xer OCTET_STRING_decode_xer_utf8 -#define ISO646String_encode_xer OCTET_STRING_encode_xer_utf8 -#define ISO646String_decode_uper OCTET_STRING_decode_uper -#define ISO646String_encode_uper OCTET_STRING_encode_uper - -#ifdef __cplusplus -} -#endif - -#endif /* _ISO646String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h deleted file mode 100644 index 6402c46d9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ITIScodes_H_ -#define _ITIScodes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIScodes */ -typedef long ITIScodes_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIScodes_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; -asn_struct_free_f ITIScodes_free; -asn_struct_print_f ITIScodes_print; -asn_constr_check_f ITIScodes_constraint; -ber_type_decoder_f ITIScodes_decode_ber; -der_type_encoder_f ITIScodes_encode_der; -xer_type_decoder_f ITIScodes_decode_xer; -xer_type_encoder_f ITIScodes_encode_xer; -oer_type_decoder_f ITIScodes_decode_oer; -oer_type_encoder_f ITIScodes_encode_oer; -per_type_decoder_f ITIScodes_decode_uper; -per_type_encoder_f ITIScodes_encode_uper; -per_type_decoder_f ITIScodes_decode_aper; -per_type_encoder_f ITIScodes_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h deleted file mode 100644 index 8560590bc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _ITIScodesAndText_H_ -#define _ITIScodesAndText_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStext.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ITIScodesAndText__Memberitem_PR { - ITIScodesAndText__Memberitem_PR_NOTHING, /* No components present */ - ITIScodesAndText__Memberitem_PR_itis, - ITIScodesAndText__Memberitem_PR_text -} ITIScodesAndText__Memberitem_PR; - -/* Forward definitions */ -typedef struct ITIScodesAndText__Member { - struct ITIScodesAndText__Memberitem { - ITIScodesAndText__Memberitem_PR present; - union ITIScodesAndText__Memberitem_u { - ITIScodes_t itis; - ITIStext_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ITIScodesAndText__Member; - -/* ITIScodesAndText */ -typedef struct ITIScodesAndText { - A_SEQUENCE_OF(ITIScodesAndText__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ITIScodesAndText_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; -extern asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1; -extern asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[1]; -extern asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIScodesAndText_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h deleted file mode 100644 index bba7abbfc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ITIStext_H_ -#define _ITIStext_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIStext */ -typedef IA5String_t ITIStext_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIStext_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIStext; -asn_struct_free_f ITIStext_free; -asn_struct_print_f ITIStext_print; -asn_constr_check_f ITIStext_constraint; -ber_type_decoder_f ITIStext_decode_ber; -der_type_encoder_f ITIStext_encode_der; -xer_type_decoder_f ITIStext_decode_xer; -xer_type_encoder_f ITIStext_encode_xer; -oer_type_decoder_f ITIStext_decode_oer; -oer_type_encoder_f ITIStext_encode_oer; -per_type_decoder_f ITIStext_decode_uper; -per_type_encoder_f ITIStext_encode_uper; -per_type_decoder_f ITIStext_decode_aper; -per_type_encoder_f ITIStext_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIStext_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h deleted file mode 100644 index 9e54197da..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ITIStextPhrase_H_ -#define _ITIStextPhrase_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ITIStextPhrase */ -typedef IA5String_t ITIStextPhrase_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase; -asn_struct_free_f ITIStextPhrase_free; -asn_struct_print_f ITIStextPhrase_print; -asn_constr_check_f ITIStextPhrase_constraint; -ber_type_decoder_f ITIStextPhrase_decode_ber; -der_type_encoder_f ITIStextPhrase_encode_der; -xer_type_decoder_f ITIStextPhrase_decode_xer; -xer_type_encoder_f ITIStextPhrase_encode_xer; -oer_type_decoder_f ITIStextPhrase_decode_oer; -oer_type_encoder_f ITIStextPhrase_encode_oer; -per_type_decoder_f ITIStextPhrase_decode_uper; -per_type_encoder_f ITIStextPhrase_encode_uper; -per_type_decoder_f ITIStextPhrase_decode_aper; -per_type_encoder_f ITIStextPhrase_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ITIStextPhrase_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h deleted file mode 100644 index 0c58f036d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Id128b_H_ -#define _Id128b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Id128b */ -typedef OCTET_STRING_t Id128b_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Id128b_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Id128b; -asn_struct_free_f Id128b_free; -asn_struct_print_f Id128b_print; -asn_constr_check_f Id128b_constraint; -ber_type_decoder_f Id128b_decode_ber; -der_type_encoder_f Id128b_encode_der; -xer_type_decoder_f Id128b_decode_xer; -xer_type_encoder_f Id128b_encode_xer; -oer_type_decoder_f Id128b_decode_oer; -oer_type_encoder_f Id128b_encode_oer; -per_type_decoder_f Id128b_decode_uper; -per_type_encoder_f Id128b_encode_uper; -per_type_decoder_f Id128b_decode_aper; -per_type_encoder_f Id128b_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Id128b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h deleted file mode 100644 index 703feb0f8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Id64b_H_ -#define _Id64b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Id64b */ -typedef OCTET_STRING_t Id64b_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Id64b_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Id64b; -asn_struct_free_f Id64b_free; -asn_struct_print_f Id64b_print; -asn_constr_check_f Id64b_constraint; -ber_type_decoder_f Id64b_decode_ber; -der_type_encoder_f Id64b_encode_der; -xer_type_decoder_f Id64b_decode_xer; -xer_type_encoder_f Id64b_encode_xer; -oer_type_decoder_f Id64b_decode_oer; -oer_type_encoder_f Id64b_encode_oer; -per_type_decoder_f Id64b_decode_uper; -per_type_encoder_f Id64b_encode_uper; -per_type_decoder_f Id64b_decode_aper; -per_type_encoder_f Id64b_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Id64b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h deleted file mode 100644 index 7c90de341..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IncidentResponseEquipment_H_ -#define _IncidentResponseEquipment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IncidentResponseEquipment { - IncidentResponseEquipment_ground_fire_suppression = 9985, - IncidentResponseEquipment_heavy_ground_equipment = 9986, - IncidentResponseEquipment_aircraft = 9988, - IncidentResponseEquipment_marine_equipment = 9989, - IncidentResponseEquipment_support_equipment = 9990, - IncidentResponseEquipment_medical_rescue_unit = 9991, - IncidentResponseEquipment_other = 9993, - IncidentResponseEquipment_ground_fire_suppression_other = 9994, - IncidentResponseEquipment_engine = 9995, - IncidentResponseEquipment_truck_or_aerial = 9996, - IncidentResponseEquipment_quint = 9997, - IncidentResponseEquipment_tanker_pumper_combination = 9998, - IncidentResponseEquipment_brush_truck = 10000, - IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, - IncidentResponseEquipment_heavy_ground_equipment_other = 10004, - IncidentResponseEquipment_dozer_or_plow = 10005, - IncidentResponseEquipment_tractor = 10006, - IncidentResponseEquipment_tanker_or_tender = 10008, - IncidentResponseEquipment_aircraft_other = 10024, - IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, - IncidentResponseEquipment_helitanker = 10026, - IncidentResponseEquipment_helicopter = 10027, - IncidentResponseEquipment_marine_equipment_other = 10034, - IncidentResponseEquipment_fire_boat_with_pump = 10035, - IncidentResponseEquipment_boat_no_pump = 10036, - IncidentResponseEquipment_support_apparatus_other = 10044, - IncidentResponseEquipment_breathing_apparatus_support = 10045, - IncidentResponseEquipment_light_and_air_unit = 10046, - IncidentResponseEquipment_medical_rescue_unit_other = 10054, - IncidentResponseEquipment_rescue_unit = 10055, - IncidentResponseEquipment_urban_search_rescue_unit = 10056, - IncidentResponseEquipment_high_angle_rescue = 10057, - IncidentResponseEquipment_crash_fire_rescue = 10058, - IncidentResponseEquipment_bLS_unit = 10059, - IncidentResponseEquipment_aLS_unit = 10060, - IncidentResponseEquipment_mobile_command_post = 10075, - IncidentResponseEquipment_chief_officer_car = 10076, - IncidentResponseEquipment_hAZMAT_unit = 10077, - IncidentResponseEquipment_type_i_hand_crew = 10078, - IncidentResponseEquipment_type_ii_hand_crew = 10079, - IncidentResponseEquipment_privately_owned_vehicle = 10083, - IncidentResponseEquipment_other_apparatus_resource = 10084, - IncidentResponseEquipment_ambulance = 10085, - IncidentResponseEquipment_bomb_squad_van = 10086, - IncidentResponseEquipment_combine_harvester = 10087, - IncidentResponseEquipment_construction_vehicle = 10088, - IncidentResponseEquipment_farm_tractor = 10089, - IncidentResponseEquipment_grass_cutting_machines = 10090, - IncidentResponseEquipment_hAZMAT_containment_tow = 10091, - IncidentResponseEquipment_heavy_tow = 10092, - IncidentResponseEquipment_light_tow = 10094, - IncidentResponseEquipment_flatbed_tow = 10114, - IncidentResponseEquipment_hedge_cutting_machines = 10093, - IncidentResponseEquipment_mobile_crane = 10095, - IncidentResponseEquipment_refuse_collection_vehicle = 10096, - IncidentResponseEquipment_resurfacing_vehicle = 10097, - IncidentResponseEquipment_road_sweeper = 10098, - IncidentResponseEquipment_roadside_litter_collection_crews = 10099, - IncidentResponseEquipment_salvage_vehicle = 10100, - IncidentResponseEquipment_sand_truck = 10101, - IncidentResponseEquipment_snowplow = 10102, - IncidentResponseEquipment_steam_roller = 10103, - IncidentResponseEquipment_swat_team_van = 10104, - IncidentResponseEquipment_track_laying_vehicle = 10105, - IncidentResponseEquipment_unknown_vehicle = 10106, - IncidentResponseEquipment_white_lining_vehicle = 10107, - IncidentResponseEquipment_dump_truck = 10108, - IncidentResponseEquipment_supervisor_vehicle = 10109, - IncidentResponseEquipment_snow_blower = 10110, - IncidentResponseEquipment_rotary_snow_blower = 10111, - IncidentResponseEquipment_road_grader = 10112, - IncidentResponseEquipment_steam_truck = 10113 - /* - * Enumeration is extensible - */ -} e_IncidentResponseEquipment; - -/* IncidentResponseEquipment */ -typedef long IncidentResponseEquipment_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; -extern const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1; -asn_struct_free_f IncidentResponseEquipment_free; -asn_struct_print_f IncidentResponseEquipment_print; -asn_constr_check_f IncidentResponseEquipment_constraint; -ber_type_decoder_f IncidentResponseEquipment_decode_ber; -der_type_encoder_f IncidentResponseEquipment_encode_der; -xer_type_decoder_f IncidentResponseEquipment_decode_xer; -xer_type_encoder_f IncidentResponseEquipment_encode_xer; -oer_type_decoder_f IncidentResponseEquipment_decode_oer; -oer_type_encoder_f IncidentResponseEquipment_encode_oer; -per_type_decoder_f IncidentResponseEquipment_decode_uper; -per_type_encoder_f IncidentResponseEquipment_encode_uper; -per_type_decoder_f IncidentResponseEquipment_decode_aper; -per_type_encoder_f IncidentResponseEquipment_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IncidentResponseEquipment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h deleted file mode 100644 index 1ad412203..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionAccessPoint_H_ -#define _IntersectionAccessPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "ApproachID.h" -#include "LaneConnectionID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IntersectionAccessPoint_PR { - IntersectionAccessPoint_PR_NOTHING, /* No components present */ - IntersectionAccessPoint_PR_lane, - IntersectionAccessPoint_PR_approach, - IntersectionAccessPoint_PR_connection - /* Extensions may appear below */ - -} IntersectionAccessPoint_PR; - -/* IntersectionAccessPoint */ -typedef struct IntersectionAccessPoint { - IntersectionAccessPoint_PR present; - union IntersectionAccessPoint_u { - LaneID_t lane; - ApproachID_t approach; - LaneConnectionID_t connection; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionAccessPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint; -extern asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[3]; -extern asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionAccessPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h deleted file mode 100644 index 36d3a0228..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionCollision_H_ -#define _IntersectionCollision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "TemporaryID.h" -#include "MinuteOfTheYear.h" -#include "IntersectionReferenceID.h" -#include "ApproachOrLane.h" -#include "VehicleEventFlags.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BSMcoreData; -struct PathHistory; -struct PathPrediction; -struct Reg_BasicSafetyMessage; - -/* IntersectionCollision */ -typedef struct IntersectionCollision { - DSRC_MsgCount_t msgCnt; - TemporaryID_t id; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - struct BSMcoreData *partOne; /* OPTIONAL */ - struct PathHistory *path; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - IntersectionReferenceID_t intersectionID; - ApproachOrLane_t laneNumber; - VehicleEventFlags_t eventFlag; - struct IntersectionCollision__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} IntersectionCollision_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionCollision_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "BSMcoreData.h" -#include "PathHistory.h" -#include "PathPrediction.h" -#include "RegionalExtension.h" - -#endif /* _IntersectionCollision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h deleted file mode 100644 index f9f087cd4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionGeometry_H_ -#define _IntersectionGeometry_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "DSRC_MsgCount.h" -#include "Position3D.h" -#include "LaneWidth.h" -#include "LaneList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct PreemptPriorityList; -struct Reg_BasicSafetyMessage; - -/* IntersectionGeometry */ -typedef struct IntersectionGeometry { - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionReferenceID_t id; - DSRC_MsgCount_t revision; - Position3D_t refPoint; - LaneWidth_t *laneWidth; /* OPTIONAL */ - struct SpeedLimitList *speedLimits; /* OPTIONAL */ - LaneList_t laneSet; - struct PreemptPriorityList *preemptPriorityData; /* OPTIONAL */ - struct IntersectionGeometry__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} IntersectionGeometry_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SpeedLimitList.h" -#include "PreemptPriorityList.h" -#include "RegionalExtension.h" - -#endif /* _IntersectionGeometry_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h deleted file mode 100644 index dd0e7ea89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionGeometryList_H_ -#define _IntersectionGeometryList_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 IntersectionGeometry; - -/* IntersectionGeometryList */ -typedef struct IntersectionGeometryList { - A_SEQUENCE_OF(struct IntersectionGeometry) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionGeometryList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; -extern asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[1]; -extern asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionGeometry.h" - -#endif /* _IntersectionGeometryList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h deleted file mode 100644 index e4356814e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionID_H_ -#define _IntersectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionID */ -typedef long IntersectionID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IntersectionID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; -asn_struct_free_f IntersectionID_free; -asn_struct_print_f IntersectionID_print; -asn_constr_check_f IntersectionID_constraint; -ber_type_decoder_f IntersectionID_decode_ber; -der_type_encoder_f IntersectionID_encode_der; -xer_type_decoder_f IntersectionID_decode_xer; -xer_type_encoder_f IntersectionID_encode_xer; -oer_type_decoder_f IntersectionID_decode_oer; -oer_type_encoder_f IntersectionID_encode_oer; -per_type_decoder_f IntersectionID_decode_uper; -per_type_encoder_f IntersectionID_encode_uper; -per_type_decoder_f IntersectionID_decode_aper; -per_type_encoder_f IntersectionID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h deleted file mode 100644 index f28f3a847..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionReferenceID_H_ -#define _IntersectionReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "IntersectionID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IntersectionReferenceID */ -typedef struct IntersectionReferenceID { - RoadRegulatorID_t *region; /* OPTIONAL */ - IntersectionID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h deleted file mode 100644 index 32fc3725f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionState_addGrpC_H_ -#define _IntersectionState_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PrioritizationResponseList; - -/* IntersectionState-addGrpC */ -typedef struct IntersectionState_addGrpC { - struct PrioritizationResponseList *activePrioritizations; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionState_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PrioritizationResponseList.h" - -#endif /* _IntersectionState_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h deleted file mode 100644 index 8092df39e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionState_H_ -#define _IntersectionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "IntersectionReferenceID.h" -#include "DSRC_MsgCount.h" -#include "IntersectionStatusObject.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "MovementList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EnabledLaneList; -struct ManeuverAssistList; -struct Reg_BasicSafetyMessage; - -/* IntersectionState */ -typedef struct IntersectionState { - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionReferenceID_t id; - DSRC_MsgCount_t revision; - IntersectionStatusObject_t status; - MinuteOfTheYear_t *moy; /* OPTIONAL */ - DSecond_t *timeStamp; /* OPTIONAL */ - struct EnabledLaneList *enabledLanes; /* OPTIONAL */ - MovementList_t states; - struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ - struct IntersectionState__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} IntersectionState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; -extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionState_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "EnabledLaneList.h" -#include "ManeuverAssistList.h" -#include "RegionalExtension.h" - -#endif /* _IntersectionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h deleted file mode 100644 index c37ab059c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionStateList_H_ -#define _IntersectionStateList_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 IntersectionState; - -/* IntersectionStateList */ -typedef struct IntersectionStateList { - A_SEQUENCE_OF(struct IntersectionState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} IntersectionStateList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; -extern asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1; -extern asn_TYPE_member_t asn_MBR_IntersectionStateList_1[1]; -extern asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionState.h" - -#endif /* _IntersectionStateList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h deleted file mode 100644 index ad87016b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IntersectionStatusObject_H_ -#define _IntersectionStatusObject_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum IntersectionStatusObject { - IntersectionStatusObject_manualControlIsEnabled = 0, - IntersectionStatusObject_stopTimeIsActivated = 1, - IntersectionStatusObject_failureFlash = 2, - IntersectionStatusObject_preemptIsActive = 3, - IntersectionStatusObject_signalPriorityIsActive = 4, - IntersectionStatusObject_fixedTimeOperation = 5, - IntersectionStatusObject_trafficDependentOperation = 6, - IntersectionStatusObject_standbyOperation = 7, - IntersectionStatusObject_failureMode = 8, - IntersectionStatusObject_off = 9, - IntersectionStatusObject_recentMAPmessageUpdate = 10, - IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, - IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, - IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 -} e_IntersectionStatusObject; - -/* IntersectionStatusObject */ -typedef BIT_STRING_t IntersectionStatusObject_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; -asn_struct_free_f IntersectionStatusObject_free; -asn_struct_print_f IntersectionStatusObject_print; -asn_constr_check_f IntersectionStatusObject_constraint; -ber_type_decoder_f IntersectionStatusObject_decode_ber; -der_type_encoder_f IntersectionStatusObject_encode_der; -xer_type_decoder_f IntersectionStatusObject_decode_xer; -xer_type_encoder_f IntersectionStatusObject_encode_xer; -oer_type_decoder_f IntersectionStatusObject_decode_oer; -oer_type_encoder_f IntersectionStatusObject_encode_oer; -per_type_decoder_f IntersectionStatusObject_decode_uper; -per_type_encoder_f IntersectionStatusObject_encode_uper; -per_type_decoder_f IntersectionStatusObject_decode_aper; -per_type_encoder_f IntersectionStatusObject_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IntersectionStatusObject_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h deleted file mode 100644 index 912773497..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _IsDolly_H_ -#define _IsDolly_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* IsDolly */ -typedef BOOLEAN_t IsDolly_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_IsDolly; -asn_struct_free_f IsDolly_free; -asn_struct_print_f IsDolly_print; -asn_constr_check_f IsDolly_constraint; -ber_type_decoder_f IsDolly_decode_ber; -der_type_encoder_f IsDolly_encode_der; -xer_type_decoder_f IsDolly_decode_xer; -xer_type_encoder_f IsDolly_encode_xer; -oer_type_decoder_f IsDolly_decode_oer; -oer_type_encoder_f IsDolly_encode_oer; -per_type_decoder_f IsDolly_decode_uper; -per_type_encoder_f IsDolly_encode_uper; -per_type_decoder_f IsDolly_decode_aper; -per_type_encoder_f IsDolly_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _IsDolly_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h deleted file mode 100644 index 204b63b69..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Iso3833VehicleType_H_ -#define _Iso3833VehicleType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Iso3833VehicleType */ -typedef long Iso3833VehicleType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType; -asn_struct_free_f Iso3833VehicleType_free; -asn_struct_print_f Iso3833VehicleType_print; -asn_constr_check_f Iso3833VehicleType_constraint; -ber_type_decoder_f Iso3833VehicleType_decode_ber; -der_type_encoder_f Iso3833VehicleType_encode_der; -xer_type_decoder_f Iso3833VehicleType_decode_xer; -xer_type_encoder_f Iso3833VehicleType_encode_xer; -oer_type_decoder_f Iso3833VehicleType_decode_oer; -oer_type_encoder_f Iso3833VehicleType_encode_oer; -per_type_decoder_f Iso3833VehicleType_decode_uper; -per_type_encoder_f Iso3833VehicleType_encode_uper; -per_type_decoder_f Iso3833VehicleType_decode_aper; -per_type_encoder_f Iso3833VehicleType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Iso3833VehicleType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h deleted file mode 100644 index aa579bbda..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _J1939data_H_ -#define _J1939data_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrailerWeight.h" -#include "CargoWeight.h" -#include "SteeringAxleTemperature.h" -#include "DriveAxleLocation.h" -#include "DriveAxleLiftAirPressure.h" -#include "DriveAxleTemperature.h" -#include "DriveAxleLubePressure.h" -#include "SteeringAxleLubePressure.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TireDataList; -struct AxleWeightList; - -/* J1939data */ -typedef struct J1939data { - struct TireDataList *tires; /* OPTIONAL */ - struct AxleWeightList *axles; /* OPTIONAL */ - TrailerWeight_t *trailerWeight; /* OPTIONAL */ - CargoWeight_t *cargoWeight; /* OPTIONAL */ - SteeringAxleTemperature_t *steeringAxleTemperature; /* OPTIONAL */ - DriveAxleLocation_t *driveAxleLocation; /* OPTIONAL */ - DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure; /* OPTIONAL */ - DriveAxleTemperature_t *driveAxleTemperature; /* OPTIONAL */ - DriveAxleLubePressure_t *driveAxleLubePressure; /* OPTIONAL */ - SteeringAxleLubePressure_t *steeringAxleLubePressure; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} J1939data_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_J1939data; -extern asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1; -extern asn_TYPE_member_t asn_MBR_J1939data_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TireDataList.h" -#include "AxleWeightList.h" - -#endif /* _J1939data_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h deleted file mode 100644 index 1fd94f263..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Barrier_H_ -#define _LaneAttributes_Barrier_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Barrier { - LaneAttributes_Barrier_median_RevocableLane = 0, - LaneAttributes_Barrier_median = 1, - LaneAttributes_Barrier_whiteLineHashing = 2, - LaneAttributes_Barrier_stripedLines = 3, - LaneAttributes_Barrier_doubleStripedLines = 4, - LaneAttributes_Barrier_trafficCones = 5, - LaneAttributes_Barrier_constructionBarrier = 6, - LaneAttributes_Barrier_trafficChannels = 7, - LaneAttributes_Barrier_lowCurbs = 8, - LaneAttributes_Barrier_highCurbs = 9 -} e_LaneAttributes_Barrier; - -/* LaneAttributes-Barrier */ -typedef BIT_STRING_t LaneAttributes_Barrier_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; -asn_struct_free_f LaneAttributes_Barrier_free; -asn_struct_print_f LaneAttributes_Barrier_print; -asn_constr_check_f LaneAttributes_Barrier_constraint; -ber_type_decoder_f LaneAttributes_Barrier_decode_ber; -der_type_encoder_f LaneAttributes_Barrier_encode_der; -xer_type_decoder_f LaneAttributes_Barrier_decode_xer; -xer_type_encoder_f LaneAttributes_Barrier_encode_xer; -oer_type_decoder_f LaneAttributes_Barrier_decode_oer; -oer_type_encoder_f LaneAttributes_Barrier_encode_oer; -per_type_decoder_f LaneAttributes_Barrier_decode_uper; -per_type_encoder_f LaneAttributes_Barrier_encode_uper; -per_type_decoder_f LaneAttributes_Barrier_decode_aper; -per_type_encoder_f LaneAttributes_Barrier_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Barrier_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h deleted file mode 100644 index e9bd475a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Bike_H_ -#define _LaneAttributes_Bike_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Bike { - LaneAttributes_Bike_bikeRevocableLane = 0, - LaneAttributes_Bike_pedestrianUseAllowed = 1, - LaneAttributes_Bike_isBikeFlyOverLane = 2, - LaneAttributes_Bike_fixedCycleTime = 3, - LaneAttributes_Bike_biDirectionalCycleTimes = 4, - LaneAttributes_Bike_isolatedByBarrier = 5, - LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 -} e_LaneAttributes_Bike; - -/* LaneAttributes-Bike */ -typedef BIT_STRING_t LaneAttributes_Bike_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; -asn_struct_free_f LaneAttributes_Bike_free; -asn_struct_print_f LaneAttributes_Bike_print; -asn_constr_check_f LaneAttributes_Bike_constraint; -ber_type_decoder_f LaneAttributes_Bike_decode_ber; -der_type_encoder_f LaneAttributes_Bike_encode_der; -xer_type_decoder_f LaneAttributes_Bike_decode_xer; -xer_type_encoder_f LaneAttributes_Bike_encode_xer; -oer_type_decoder_f LaneAttributes_Bike_decode_oer; -oer_type_encoder_f LaneAttributes_Bike_encode_oer; -per_type_decoder_f LaneAttributes_Bike_decode_uper; -per_type_encoder_f LaneAttributes_Bike_encode_uper; -per_type_decoder_f LaneAttributes_Bike_decode_aper; -per_type_encoder_f LaneAttributes_Bike_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Bike_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h deleted file mode 100644 index 7c6dde4e1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Crosswalk_H_ -#define _LaneAttributes_Crosswalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Crosswalk { - LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, - LaneAttributes_Crosswalk_bicyleUseAllowed = 1, - LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, - LaneAttributes_Crosswalk_fixedCycleTime = 3, - LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, - LaneAttributes_Crosswalk_hasPushToWalkButton = 5, - LaneAttributes_Crosswalk_audioSupport = 6, - LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, - LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 -} e_LaneAttributes_Crosswalk; - -/* LaneAttributes-Crosswalk */ -typedef BIT_STRING_t LaneAttributes_Crosswalk_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; -asn_struct_free_f LaneAttributes_Crosswalk_free; -asn_struct_print_f LaneAttributes_Crosswalk_print; -asn_constr_check_f LaneAttributes_Crosswalk_constraint; -ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; -der_type_encoder_f LaneAttributes_Crosswalk_encode_der; -xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; -xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; -oer_type_decoder_f LaneAttributes_Crosswalk_decode_oer; -oer_type_encoder_f LaneAttributes_Crosswalk_encode_oer; -per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; -per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; -per_type_decoder_f LaneAttributes_Crosswalk_decode_aper; -per_type_encoder_f LaneAttributes_Crosswalk_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Crosswalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h deleted file mode 100644 index de7bbc0aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Parking_H_ -#define _LaneAttributes_Parking_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Parking { - LaneAttributes_Parking_parkingRevocableLane = 0, - LaneAttributes_Parking_parallelParkingInUse = 1, - LaneAttributes_Parking_headInParkingInUse = 2, - LaneAttributes_Parking_doNotParkZone = 3, - LaneAttributes_Parking_parkingForBusUse = 4, - LaneAttributes_Parking_parkingForTaxiUse = 5, - LaneAttributes_Parking_noPublicParkingUse = 6 -} e_LaneAttributes_Parking; - -/* LaneAttributes-Parking */ -typedef BIT_STRING_t LaneAttributes_Parking_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; -asn_struct_free_f LaneAttributes_Parking_free; -asn_struct_print_f LaneAttributes_Parking_print; -asn_constr_check_f LaneAttributes_Parking_constraint; -ber_type_decoder_f LaneAttributes_Parking_decode_ber; -der_type_encoder_f LaneAttributes_Parking_encode_der; -xer_type_decoder_f LaneAttributes_Parking_decode_xer; -xer_type_encoder_f LaneAttributes_Parking_encode_xer; -oer_type_decoder_f LaneAttributes_Parking_decode_oer; -oer_type_encoder_f LaneAttributes_Parking_encode_oer; -per_type_decoder_f LaneAttributes_Parking_decode_uper; -per_type_encoder_f LaneAttributes_Parking_encode_uper; -per_type_decoder_f LaneAttributes_Parking_decode_aper; -per_type_encoder_f LaneAttributes_Parking_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Parking_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h deleted file mode 100644 index 664a940c7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Sidewalk_H_ -#define _LaneAttributes_Sidewalk_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Sidewalk { - LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, - LaneAttributes_Sidewalk_bicyleUseAllowed = 1, - LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, - LaneAttributes_Sidewalk_walkBikes = 3 -} e_LaneAttributes_Sidewalk; - -/* LaneAttributes-Sidewalk */ -typedef BIT_STRING_t LaneAttributes_Sidewalk_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; -asn_struct_free_f LaneAttributes_Sidewalk_free; -asn_struct_print_f LaneAttributes_Sidewalk_print; -asn_constr_check_f LaneAttributes_Sidewalk_constraint; -ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; -der_type_encoder_f LaneAttributes_Sidewalk_encode_der; -xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; -xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; -oer_type_decoder_f LaneAttributes_Sidewalk_decode_oer; -oer_type_encoder_f LaneAttributes_Sidewalk_encode_oer; -per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; -per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; -per_type_decoder_f LaneAttributes_Sidewalk_decode_aper; -per_type_encoder_f LaneAttributes_Sidewalk_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Sidewalk_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h deleted file mode 100644 index 76f22661f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Striping_H_ -#define _LaneAttributes_Striping_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Striping { - LaneAttributes_Striping_stripeToConnectingLanesRevocableLane = 0, - LaneAttributes_Striping_stripeDrawOnLeft = 1, - LaneAttributes_Striping_stripeDrawOnRight = 2, - LaneAttributes_Striping_stripeToConnectingLanesLeft = 3, - LaneAttributes_Striping_stripeToConnectingLanesRight = 4, - LaneAttributes_Striping_stripeToConnectingLanesAhead = 5 -} e_LaneAttributes_Striping; - -/* LaneAttributes-Striping */ -typedef BIT_STRING_t LaneAttributes_Striping_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; -asn_struct_free_f LaneAttributes_Striping_free; -asn_struct_print_f LaneAttributes_Striping_print; -asn_constr_check_f LaneAttributes_Striping_constraint; -ber_type_decoder_f LaneAttributes_Striping_decode_ber; -der_type_encoder_f LaneAttributes_Striping_encode_der; -xer_type_decoder_f LaneAttributes_Striping_decode_xer; -xer_type_encoder_f LaneAttributes_Striping_encode_xer; -oer_type_decoder_f LaneAttributes_Striping_decode_oer; -oer_type_encoder_f LaneAttributes_Striping_encode_oer; -per_type_decoder_f LaneAttributes_Striping_decode_uper; -per_type_encoder_f LaneAttributes_Striping_encode_uper; -per_type_decoder_f LaneAttributes_Striping_decode_aper; -per_type_encoder_f LaneAttributes_Striping_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Striping_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h deleted file mode 100644 index af0891051..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_TrackedVehicle_H_ -#define _LaneAttributes_TrackedVehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_TrackedVehicle { - LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, - LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, - LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, - LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, - LaneAttributes_TrackedVehicle_spec_otherRailType = 4 -} e_LaneAttributes_TrackedVehicle; - -/* LaneAttributes-TrackedVehicle */ -typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; -asn_struct_free_f LaneAttributes_TrackedVehicle_free; -asn_struct_print_f LaneAttributes_TrackedVehicle_print; -asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; -ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; -der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; -xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; -xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; -oer_type_decoder_f LaneAttributes_TrackedVehicle_decode_oer; -oer_type_encoder_f LaneAttributes_TrackedVehicle_encode_oer; -per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; -per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; -per_type_decoder_f LaneAttributes_TrackedVehicle_decode_aper; -per_type_encoder_f LaneAttributes_TrackedVehicle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_TrackedVehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h deleted file mode 100644 index 07c014417..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_Vehicle_H_ -#define _LaneAttributes_Vehicle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneAttributes_Vehicle { - LaneAttributes_Vehicle_isVehicleRevocableLane = 0, - LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, - LaneAttributes_Vehicle_hovLaneUseOnly = 2, - LaneAttributes_Vehicle_restrictedToBusUse = 3, - LaneAttributes_Vehicle_restrictedToTaxiUse = 4, - LaneAttributes_Vehicle_restrictedFromPublicUse = 5, - LaneAttributes_Vehicle_hasIRbeaconCoverage = 6, - LaneAttributes_Vehicle_permissionOnRequest = 7 -} e_LaneAttributes_Vehicle; - -/* LaneAttributes-Vehicle */ -typedef BIT_STRING_t LaneAttributes_Vehicle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; -asn_struct_free_f LaneAttributes_Vehicle_free; -asn_struct_print_f LaneAttributes_Vehicle_print; -asn_constr_check_f LaneAttributes_Vehicle_constraint; -ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; -der_type_encoder_f LaneAttributes_Vehicle_encode_der; -xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; -xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; -oer_type_decoder_f LaneAttributes_Vehicle_decode_oer; -oer_type_encoder_f LaneAttributes_Vehicle_encode_oer; -per_type_decoder_f LaneAttributes_Vehicle_decode_uper; -per_type_encoder_f LaneAttributes_Vehicle_encode_uper; -per_type_decoder_f LaneAttributes_Vehicle_decode_aper; -per_type_encoder_f LaneAttributes_Vehicle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneAttributes_Vehicle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h deleted file mode 100644 index 964b77d5c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneAttributes_H_ -#define _LaneAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneDirection.h" -#include "LaneSharing.h" -#include "LaneTypeAttributes.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* LaneAttributes */ -typedef struct LaneAttributes { - LaneDirection_t directionalUse; - LaneSharing_t sharedWith; - LaneTypeAttributes_t laneType; - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; -extern asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneAttributes_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _LaneAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h deleted file mode 100644 index 623fcd5db..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneConnectionID_H_ -#define _LaneConnectionID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneConnectionID */ -typedef long LaneConnectionID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; -asn_struct_free_f LaneConnectionID_free; -asn_struct_print_f LaneConnectionID_print; -asn_constr_check_f LaneConnectionID_constraint; -ber_type_decoder_f LaneConnectionID_decode_ber; -der_type_encoder_f LaneConnectionID_encode_der; -xer_type_decoder_f LaneConnectionID_decode_xer; -xer_type_encoder_f LaneConnectionID_encode_xer; -oer_type_decoder_f LaneConnectionID_decode_oer; -oer_type_encoder_f LaneConnectionID_encode_oer; -per_type_decoder_f LaneConnectionID_decode_uper; -per_type_encoder_f LaneConnectionID_encode_uper; -per_type_decoder_f LaneConnectionID_decode_aper; -per_type_encoder_f LaneConnectionID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneConnectionID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h deleted file mode 100644 index be6a5a704..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneDataAttribute_addGrpB_H_ -#define _LaneDataAttribute_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneDataAttribute-addGrpB */ -typedef struct LaneDataAttribute_addGrpB { - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttribute_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDataAttribute_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h deleted file mode 100644 index 5c6e0af78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneDataAttribute_H_ -#define _LaneDataAttribute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DeltaAngle.h" -#include "RoadwayCrownAngle.h" -#include "MergeDivergeNodeAngle.h" -#include "SpeedLimitList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDataAttribute_PR { - LaneDataAttribute_PR_NOTHING, /* No components present */ - LaneDataAttribute_PR_pathEndPointAngle, - LaneDataAttribute_PR_laneCrownPointCenter, - LaneDataAttribute_PR_laneCrownPointLeft, - LaneDataAttribute_PR_laneCrownPointRight, - LaneDataAttribute_PR_laneAngle, - LaneDataAttribute_PR_speedLimits, - LaneDataAttribute_PR_regional - /* Extensions may appear below */ - -} LaneDataAttribute_PR; - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* LaneDataAttribute */ -typedef struct LaneDataAttribute { - LaneDataAttribute_PR present; - union LaneDataAttribute_u { - DeltaAngle_t pathEndPointAngle; - RoadwayCrownAngle_t laneCrownPointCenter; - RoadwayCrownAngle_t laneCrownPointLeft; - RoadwayCrownAngle_t laneCrownPointRight; - MergeDivergeNodeAngle_t laneAngle; - SpeedLimitList_t speedLimits; - struct LaneDataAttribute__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regional; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttribute_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; -extern asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[7]; -extern asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _LaneDataAttribute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h deleted file mode 100644 index 4d9bc6f19..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneDataAttributeList_H_ -#define _LaneDataAttributeList_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 LaneDataAttribute; - -/* LaneDataAttributeList */ -typedef struct LaneDataAttributeList { - A_SEQUENCE_OF(struct LaneDataAttribute) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneDataAttributeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; -extern asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[1]; -extern asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "LaneDataAttribute.h" - -#endif /* _LaneDataAttributeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h deleted file mode 100644 index 6f6e9a911..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneDirection_H_ -#define _LaneDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneDirection { - LaneDirection_ingressPath = 0, - LaneDirection_egressPath = 1 -} e_LaneDirection; - -/* LaneDirection */ -typedef BIT_STRING_t LaneDirection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneDirection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; -asn_struct_free_f LaneDirection_free; -asn_struct_print_f LaneDirection_print; -asn_constr_check_f LaneDirection_constraint; -ber_type_decoder_f LaneDirection_decode_ber; -der_type_encoder_f LaneDirection_encode_der; -xer_type_decoder_f LaneDirection_decode_xer; -xer_type_encoder_f LaneDirection_encode_xer; -oer_type_decoder_f LaneDirection_decode_oer; -oer_type_encoder_f LaneDirection_encode_oer; -per_type_decoder_f LaneDirection_decode_uper; -per_type_encoder_f LaneDirection_encode_uper; -per_type_decoder_f LaneDirection_decode_aper; -per_type_encoder_f LaneDirection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h deleted file mode 100644 index c156fff6b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneID_H_ -#define _LaneID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneID */ -typedef long LaneID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneID; -asn_struct_free_f LaneID_free; -asn_struct_print_f LaneID_print; -asn_constr_check_f LaneID_constraint; -ber_type_decoder_f LaneID_decode_ber; -der_type_encoder_f LaneID_encode_der; -xer_type_decoder_f LaneID_decode_xer; -xer_type_encoder_f LaneID_encode_xer; -oer_type_decoder_f LaneID_decode_oer; -oer_type_encoder_f LaneID_encode_oer; -per_type_decoder_f LaneID_decode_uper; -per_type_encoder_f LaneID_encode_uper; -per_type_decoder_f LaneID_decode_aper; -per_type_encoder_f LaneID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h deleted file mode 100644 index 67993bfb1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneList_H_ -#define _LaneList_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 GenericLane; - -/* LaneList */ -typedef struct LaneList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneList; -extern asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_LaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "GenericLane.h" - -#endif /* _LaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h deleted file mode 100644 index 720267101..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneSharing_H_ -#define _LaneSharing_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneSharing { - LaneSharing_overlappingLaneDescriptionProvided = 0, - LaneSharing_multipleLanesTreatedAsOneLane = 1, - LaneSharing_otherNonMotorizedTrafficTypes = 2, - LaneSharing_individualMotorizedVehicleTraffic = 3, - LaneSharing_busVehicleTraffic = 4, - LaneSharing_taxiVehicleTraffic = 5, - LaneSharing_pedestriansTraffic = 6, - LaneSharing_cyclistVehicleTraffic = 7, - LaneSharing_trackedVehicleTraffic = 8, - LaneSharing_pedestrianTraffic = 9 -} e_LaneSharing; - -/* LaneSharing */ -typedef BIT_STRING_t LaneSharing_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneSharing_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; -asn_struct_free_f LaneSharing_free; -asn_struct_print_f LaneSharing_print; -asn_constr_check_f LaneSharing_constraint; -ber_type_decoder_f LaneSharing_decode_ber; -der_type_encoder_f LaneSharing_encode_der; -xer_type_decoder_f LaneSharing_decode_xer; -xer_type_encoder_f LaneSharing_encode_xer; -oer_type_decoder_f LaneSharing_decode_oer; -oer_type_encoder_f LaneSharing_encode_oer; -per_type_decoder_f LaneSharing_decode_uper; -per_type_encoder_f LaneSharing_encode_uper; -per_type_decoder_f LaneSharing_decode_aper; -per_type_encoder_f LaneSharing_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneSharing_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h deleted file mode 100644 index 81808eb0b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneTypeAttributes_H_ -#define _LaneTypeAttributes_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneAttributes-Vehicle.h" -#include "LaneAttributes-Crosswalk.h" -#include "LaneAttributes-Bike.h" -#include "LaneAttributes-Sidewalk.h" -#include "LaneAttributes-Barrier.h" -#include "LaneAttributes-Striping.h" -#include "LaneAttributes-TrackedVehicle.h" -#include "LaneAttributes-Parking.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LaneTypeAttributes_PR { - LaneTypeAttributes_PR_NOTHING, /* No components present */ - LaneTypeAttributes_PR_vehicle, - LaneTypeAttributes_PR_crosswalk, - LaneTypeAttributes_PR_bikeLane, - LaneTypeAttributes_PR_sidewalk, - LaneTypeAttributes_PR_median, - LaneTypeAttributes_PR_striping, - LaneTypeAttributes_PR_trackedVehicle, - LaneTypeAttributes_PR_parking - /* Extensions may appear below */ - -} LaneTypeAttributes_PR; - -/* LaneTypeAttributes */ -typedef struct LaneTypeAttributes { - LaneTypeAttributes_PR present; - union LaneTypeAttributes_u { - LaneAttributes_Vehicle_t vehicle; - LaneAttributes_Crosswalk_t crosswalk; - LaneAttributes_Bike_t bikeLane; - LaneAttributes_Sidewalk_t sidewalk; - LaneAttributes_Barrier_t median; - LaneAttributes_Striping_t striping; - LaneAttributes_TrackedVehicle_t trackedVehicle; - LaneAttributes_Parking_t parking; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LaneTypeAttributes_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; -extern asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1; -extern asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[8]; -extern asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneTypeAttributes_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h deleted file mode 100644 index 50d5fd190..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LaneWidth_H_ -#define _LaneWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LaneWidth */ -typedef long LaneWidth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LaneWidth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; -asn_struct_free_f LaneWidth_free; -asn_struct_print_f LaneWidth_print; -asn_constr_check_f LaneWidth_constraint; -ber_type_decoder_f LaneWidth_decode_ber; -der_type_encoder_f LaneWidth_encode_der; -xer_type_decoder_f LaneWidth_decode_xer; -xer_type_encoder_f LaneWidth_encode_xer; -oer_type_decoder_f LaneWidth_decode_oer; -oer_type_encoder_f LaneWidth_encode_oer; -per_type_decoder_f LaneWidth_decode_uper; -per_type_encoder_f LaneWidth_encode_uper; -per_type_decoder_f LaneWidth_decode_aper; -per_type_encoder_f LaneWidth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LaneWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h deleted file mode 100644 index dcdc3c7a5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Latitude_H_ -#define _Latitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Latitude */ -typedef long Latitude_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Latitude_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Latitude; -asn_struct_free_f Latitude_free; -asn_struct_print_f Latitude_print; -asn_constr_check_f Latitude_constraint; -ber_type_decoder_f Latitude_decode_ber; -der_type_encoder_f Latitude_encode_der; -xer_type_decoder_f Latitude_decode_xer; -xer_type_encoder_f Latitude_encode_xer; -oer_type_decoder_f Latitude_decode_oer; -oer_type_encoder_f Latitude_encode_oer; -per_type_decoder_f Latitude_decode_uper; -per_type_encoder_f Latitude_encode_uper; -per_type_decoder_f Latitude_decode_aper; -per_type_encoder_f Latitude_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Latitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h deleted file mode 100644 index 8af1a7f51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LatitudeDMS_H_ -#define _LatitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS */ -typedef long LatitudeDMS_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; -asn_struct_free_f LatitudeDMS_free; -asn_struct_print_f LatitudeDMS_print; -asn_constr_check_f LatitudeDMS_constraint; -ber_type_decoder_f LatitudeDMS_decode_ber; -der_type_encoder_f LatitudeDMS_encode_der; -xer_type_decoder_f LatitudeDMS_decode_xer; -xer_type_encoder_f LatitudeDMS_encode_xer; -oer_type_decoder_f LatitudeDMS_decode_oer; -oer_type_encoder_f LatitudeDMS_encode_oer; -per_type_decoder_f LatitudeDMS_decode_uper; -per_type_encoder_f LatitudeDMS_encode_uper; -per_type_decoder_f LatitudeDMS_decode_aper; -per_type_encoder_f LatitudeDMS_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h deleted file mode 100644 index 8e348b5fa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LatitudeDMS2_H_ -#define _LatitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLat.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LatitudeDMS2 */ -typedef struct LatitudeDMS2 { - DegreesLat_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LatitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; -extern asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1; -extern asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _LatitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h deleted file mode 100644 index 253716a10..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LayerID_H_ -#define _LayerID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LayerID */ -typedef long LayerID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LayerID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LayerID; -asn_struct_free_f LayerID_free; -asn_struct_print_f LayerID_print; -asn_constr_check_f LayerID_constraint; -ber_type_decoder_f LayerID_decode_ber; -der_type_encoder_f LayerID_encode_der; -xer_type_decoder_f LayerID_decode_xer; -xer_type_encoder_f LayerID_encode_xer; -oer_type_decoder_f LayerID_decode_oer; -oer_type_encoder_f LayerID_encode_oer; -per_type_decoder_f LayerID_decode_uper; -per_type_encoder_f LayerID_encode_uper; -per_type_decoder_f LayerID_decode_aper; -per_type_encoder_f LayerID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h deleted file mode 100644 index e2f59234c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LayerType_H_ -#define _LayerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LayerType { - LayerType_none = 0, - LayerType_mixedContent = 1, - LayerType_generalMapData = 2, - LayerType_intersectionData = 3, - LayerType_curveData = 4, - LayerType_roadwaySectionData = 5, - LayerType_parkingAreaData = 6, - LayerType_sharedLaneData = 7 - /* - * Enumeration is extensible - */ -} e_LayerType; - -/* LayerType */ -typedef long LayerType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LayerType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LayerType; -extern const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1; -asn_struct_free_f LayerType_free; -asn_struct_print_f LayerType_print; -asn_constr_check_f LayerType_constraint; -ber_type_decoder_f LayerType_decode_ber; -der_type_encoder_f LayerType_encode_der; -xer_type_decoder_f LayerType_decode_xer; -xer_type_encoder_f LayerType_encode_xer; -oer_type_decoder_f LayerType_decode_oer; -oer_type_encoder_f LayerType_encode_oer; -per_type_decoder_f LayerType_decode_uper; -per_type_encoder_f LayerType_encode_uper; -per_type_decoder_f LayerType_decode_aper; -per_type_encoder_f LayerType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LayerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h deleted file mode 100644 index bdf102f8b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LightbarInUse_H_ -#define _LightbarInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum LightbarInUse { - LightbarInUse_unavailable = 0, - LightbarInUse_notInUse = 1, - LightbarInUse_inUse = 2, - LightbarInUse_yellowCautionLights = 3, - LightbarInUse_schooldBusLights = 4, - LightbarInUse_arrowSignsActive = 5, - LightbarInUse_slowMovingVehicle = 6, - LightbarInUse_freqStops = 7 -} e_LightbarInUse; - -/* LightbarInUse */ -typedef long LightbarInUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; -extern const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1; -asn_struct_free_f LightbarInUse_free; -asn_struct_print_f LightbarInUse_print; -asn_constr_check_f LightbarInUse_constraint; -ber_type_decoder_f LightbarInUse_decode_ber; -der_type_encoder_f LightbarInUse_encode_der; -xer_type_decoder_f LightbarInUse_decode_xer; -xer_type_encoder_f LightbarInUse_encode_xer; -oer_type_decoder_f LightbarInUse_decode_oer; -oer_type_encoder_f LightbarInUse_encode_oer; -per_type_decoder_f LightbarInUse_decode_uper; -per_type_encoder_f LightbarInUse_encode_uper; -per_type_decoder_f LightbarInUse_decode_aper; -per_type_encoder_f LightbarInUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LightbarInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h deleted file mode 100644 index 4005d1946..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Location_quality_H_ -#define _Location_quality_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_quality { - Location_quality_loc_qual_bt1m = 0, - Location_quality_loc_qual_bt5m = 1, - Location_quality_loc_qual_bt12m = 2, - Location_quality_loc_qual_bt50m = 3, - Location_quality_loc_qual_bt125m = 4, - Location_quality_loc_qual_bt500m = 5, - Location_quality_loc_qual_bt1250m = 6, - Location_quality_loc_qual_unknown = 7 -} e_Location_quality; - -/* Location-quality */ -typedef long Location_quality_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_quality; -asn_struct_free_f Location_quality_free; -asn_struct_print_f Location_quality_print; -asn_constr_check_f Location_quality_constraint; -ber_type_decoder_f Location_quality_decode_ber; -der_type_encoder_f Location_quality_encode_der; -xer_type_decoder_f Location_quality_decode_xer; -xer_type_encoder_f Location_quality_encode_xer; -oer_type_decoder_f Location_quality_decode_oer; -oer_type_encoder_f Location_quality_encode_oer; -per_type_decoder_f Location_quality_decode_uper; -per_type_encoder_f Location_quality_encode_uper; -per_type_decoder_f Location_quality_decode_aper; -per_type_encoder_f Location_quality_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_quality_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h deleted file mode 100644 index a8f892b73..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Location_tech_H_ -#define _Location_tech_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Location_tech { - Location_tech_loc_tech_unknown = 0, - Location_tech_loc_tech_GNSS = 1, - Location_tech_loc_tech_DGPS = 2, - Location_tech_loc_tech_RTK = 3, - Location_tech_loc_tech_PPP = 4, - Location_tech_loc_tech_drGPS = 5, - Location_tech_loc_tech_drDGPS = 6, - Location_tech_loc_tech_dr = 7, - Location_tech_loc_tech_nav = 8, - Location_tech_loc_tech_fault = 9 - /* - * Enumeration is extensible - */ -} e_Location_tech; - -/* Location-tech */ -typedef long Location_tech_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Location_tech; -asn_struct_free_f Location_tech_free; -asn_struct_print_f Location_tech_print; -asn_constr_check_f Location_tech_constraint; -ber_type_decoder_f Location_tech_decode_ber; -der_type_encoder_f Location_tech_encode_der; -xer_type_decoder_f Location_tech_decode_xer; -xer_type_encoder_f Location_tech_encode_xer; -oer_type_decoder_f Location_tech_decode_oer; -oer_type_encoder_f Location_tech_encode_oer; -per_type_decoder_f Location_tech_decode_uper; -per_type_encoder_f Location_tech_encode_uper; -per_type_decoder_f Location_tech_decode_aper; -per_type_encoder_f Location_tech_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Location_tech_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h deleted file mode 100644 index ffb372cca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Longitude_H_ -#define _Longitude_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Longitude */ -typedef long Longitude_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Longitude_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Longitude; -asn_struct_free_f Longitude_free; -asn_struct_print_f Longitude_print; -asn_constr_check_f Longitude_constraint; -ber_type_decoder_f Longitude_decode_ber; -der_type_encoder_f Longitude_encode_der; -xer_type_decoder_f Longitude_decode_xer; -xer_type_encoder_f Longitude_encode_xer; -oer_type_decoder_f Longitude_decode_oer; -oer_type_encoder_f Longitude_encode_oer; -per_type_decoder_f Longitude_decode_uper; -per_type_encoder_f Longitude_encode_uper; -per_type_decoder_f Longitude_decode_aper; -per_type_encoder_f Longitude_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Longitude_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h deleted file mode 100644 index c91c6701c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LongitudeDMS_H_ -#define _LongitudeDMS_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS */ -typedef long LongitudeDMS_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; -asn_struct_free_f LongitudeDMS_free; -asn_struct_print_f LongitudeDMS_print; -asn_constr_check_f LongitudeDMS_constraint; -ber_type_decoder_f LongitudeDMS_decode_ber; -der_type_encoder_f LongitudeDMS_encode_der; -xer_type_decoder_f LongitudeDMS_decode_xer; -xer_type_encoder_f LongitudeDMS_encode_xer; -oer_type_decoder_f LongitudeDMS_decode_oer; -oer_type_encoder_f LongitudeDMS_encode_oer; -per_type_decoder_f LongitudeDMS_decode_uper; -per_type_encoder_f LongitudeDMS_encode_uper; -per_type_decoder_f LongitudeDMS_decode_aper; -per_type_encoder_f LongitudeDMS_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h deleted file mode 100644 index f1e77739e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _LongitudeDMS2_H_ -#define _LongitudeDMS2_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DegreesLong.h" -#include "MinutesAngle.h" -#include "SecondsAngle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* LongitudeDMS2 */ -typedef struct LongitudeDMS2 { - DegreesLong_t d; - MinutesAngle_t m; - SecondsAngle_t s; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} LongitudeDMS2_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; -extern asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1; -extern asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _LongitudeDMS2_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h deleted file mode 100644 index 2505866a9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MUTCDCode_H_ -#define _MUTCDCode_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MUTCDCode { - MUTCDCode_none = 0, - MUTCDCode_regulatory = 1, - MUTCDCode_warning = 2, - MUTCDCode_maintenance = 3, - MUTCDCode_motoristService = 4, - MUTCDCode_guide = 5, - MUTCDCode_rec = 6 - /* - * Enumeration is extensible - */ -} e_MUTCDCode; - -/* MUTCDCode */ -typedef long MUTCDCode_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; -extern const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1; -asn_struct_free_f MUTCDCode_free; -asn_struct_print_f MUTCDCode_print; -asn_constr_check_f MUTCDCode_constraint; -ber_type_decoder_f MUTCDCode_decode_ber; -der_type_encoder_f MUTCDCode_encode_der; -xer_type_decoder_f MUTCDCode_decode_xer; -xer_type_encoder_f MUTCDCode_encode_xer; -oer_type_decoder_f MUTCDCode_decode_oer; -oer_type_encoder_f MUTCDCode_encode_oer; -per_type_decoder_f MUTCDCode_decode_uper; -per_type_encoder_f MUTCDCode_encode_uper; -per_type_decoder_f MUTCDCode_decode_aper; -per_type_encoder_f MUTCDCode_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MUTCDCode_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h deleted file mode 100644 index 189f35f86..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ManeuverAssistList_H_ -#define _ManeuverAssistList_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 ConnectionManeuverAssist; - -/* ManeuverAssistList */ -typedef struct ManeuverAssistList { - A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ManeuverAssistList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; -extern asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1; -extern asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[1]; -extern asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ConnectionManeuverAssist.h" - -#endif /* _ManeuverAssistList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h deleted file mode 100644 index 1084d0ce3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MapData_addGrpC_H_ -#define _MapData_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalHeadLocationList; - -/* MapData-addGrpC */ -typedef struct MapData_addGrpC { - struct SignalHeadLocationList *signalHeadLocations; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MapData_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalHeadLocationList.h" - -#endif /* _MapData_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h deleted file mode 100644 index 5f85a36ba..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MapData_H_ -#define _MapData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSRC_MsgCount.h" -#include "LayerType.h" -#include "LayerID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionGeometryList; -struct RoadSegmentList; -struct DataParameters; -struct RestrictionClassList; -struct Reg_BasicSafetyMessage; - -/* MapData */ -typedef struct MapData { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSRC_MsgCount_t msgIssueRevision; - LayerType_t *layerType; /* OPTIONAL */ - LayerID_t *layerID; /* OPTIONAL */ - struct IntersectionGeometryList *intersections; /* OPTIONAL */ - struct RoadSegmentList *roadSegments; /* OPTIONAL */ - struct DataParameters *dataParameters; /* OPTIONAL */ - struct RestrictionClassList *restrictionList; /* OPTIONAL */ - struct MapData__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} MapData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MapData; -extern asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1; -extern asn_TYPE_member_t asn_MBR_MapData_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionGeometryList.h" -#include "RoadSegmentList.h" -#include "DataParameters.h" -#include "RestrictionClassList.h" -#include "RegionalExtension.h" - -#endif /* _MapData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h deleted file mode 100644 index b736c6387..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MaxTimetoChange_H_ -#define _MaxTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MaxTimetoChange */ -typedef long MaxTimetoChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; -asn_struct_free_f MaxTimetoChange_free; -asn_struct_print_f MaxTimetoChange_print; -asn_constr_check_f MaxTimetoChange_constraint; -ber_type_decoder_f MaxTimetoChange_decode_ber; -der_type_encoder_f MaxTimetoChange_encode_der; -xer_type_decoder_f MaxTimetoChange_decode_xer; -xer_type_encoder_f MaxTimetoChange_encode_xer; -oer_type_decoder_f MaxTimetoChange_decode_oer; -oer_type_encoder_f MaxTimetoChange_encode_oer; -per_type_decoder_f MaxTimetoChange_decode_uper; -per_type_encoder_f MaxTimetoChange_encode_uper; -per_type_decoder_f MaxTimetoChange_decode_aper; -per_type_encoder_f MaxTimetoChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MaxTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h deleted file mode 100644 index 59c1c0f1f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names` - */ - -#ifndef _MeasurementTimeOffset_H_ -#define _MeasurementTimeOffset_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasurementTimeOffset */ -typedef long MeasurementTimeOffset_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset; -asn_struct_free_f MeasurementTimeOffset_free; -asn_struct_print_f MeasurementTimeOffset_print; -asn_constr_check_f MeasurementTimeOffset_constraint; -ber_type_decoder_f MeasurementTimeOffset_decode_ber; -der_type_encoder_f MeasurementTimeOffset_encode_der; -xer_type_decoder_f MeasurementTimeOffset_decode_xer; -xer_type_encoder_f MeasurementTimeOffset_encode_xer; -oer_type_decoder_f MeasurementTimeOffset_decode_oer; -oer_type_encoder_f MeasurementTimeOffset_encode_oer; -per_type_decoder_f MeasurementTimeOffset_decode_uper; -per_type_encoder_f MeasurementTimeOffset_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementTimeOffset_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h deleted file mode 100644 index 1aed4a2ca..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MergeDivergeNodeAngle_H_ -#define _MergeDivergeNodeAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MergeDivergeNodeAngle */ -typedef long MergeDivergeNodeAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; -asn_struct_free_f MergeDivergeNodeAngle_free; -asn_struct_print_f MergeDivergeNodeAngle_print; -asn_constr_check_f MergeDivergeNodeAngle_constraint; -ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; -der_type_encoder_f MergeDivergeNodeAngle_encode_der; -xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; -xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; -oer_type_decoder_f MergeDivergeNodeAngle_decode_oer; -oer_type_encoder_f MergeDivergeNodeAngle_encode_oer; -per_type_decoder_f MergeDivergeNodeAngle_decode_uper; -per_type_encoder_f MergeDivergeNodeAngle_encode_uper; -per_type_decoder_f MergeDivergeNodeAngle_decode_aper; -per_type_encoder_f MergeDivergeNodeAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MergeDivergeNodeAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h deleted file mode 100644 index 9825b13b0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MessageBLOB_H_ -#define _MessageBLOB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MessageBLOB */ -typedef OCTET_STRING_t MessageBLOB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MessageBLOB; -asn_struct_free_f MessageBLOB_free; -asn_struct_print_f MessageBLOB_print; -asn_constr_check_f MessageBLOB_constraint; -ber_type_decoder_f MessageBLOB_decode_ber; -der_type_encoder_f MessageBLOB_encode_der; -xer_type_decoder_f MessageBLOB_decode_xer; -xer_type_encoder_f MessageBLOB_encode_xer; -oer_type_decoder_f MessageBLOB_decode_oer; -oer_type_encoder_f MessageBLOB_encode_oer; -per_type_decoder_f MessageBLOB_decode_uper; -per_type_encoder_f MessageBLOB_encode_uper; -per_type_decoder_f MessageBLOB_decode_aper; -per_type_encoder_f MessageBLOB_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MessageBLOB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h deleted file mode 100644 index 422fc814a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names` - */ - -#ifndef _MessageFrame_H_ -#define _MessageFrame_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRCmsgID.h" -#include "ANY.h" -#include "asn_ioc.h" -#include "BasicSafetyMessage.h" -#include "MapData.h" -#include "SPAT.h" -#include "CommonSafetyRequest.h" -#include "EmergencyVehicleAlert.h" -#include "IntersectionCollision.h" -#include "NMEAcorrections.h" -#include "ProbeDataManagement.h" -#include "ProbeVehicleData.h" -#include "RoadSideAlert.h" -#include "RTCMcorrections.h" -#include "SignalRequestMessage.h" -#include "SignalStatusMessage.h" -#include "TravelerInformation.h" -#include "PersonalSafetyMessage.h" -#include "TestMessage00.h" -#include "TestMessage01.h" -#include "TestMessage02.h" -#include "TestMessage03.h" -#include "TestMessage04.h" -#include "TestMessage05.h" -#include "TestMessage06.h" -#include "TestMessage07.h" -#include "TestMessage08.h" -#include "TestMessage09.h" -#include "TestMessage10.h" -#include "TestMessage11.h" -#include "TestMessage12.h" -#include "TestMessage13.h" -#include "TestMessage14.h" -#include "TestMessage15.h" -#include "SensorDataSharingMessage.h" -#include "OPEN_TYPE.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum value_PR { - value_PR_NOTHING, /* No components present */ - value_PR_BasicSafetyMessage, - value_PR_MapData, - value_PR_SPAT, - value_PR_CommonSafetyRequest, - value_PR_EmergencyVehicleAlert, - value_PR_IntersectionCollision, - value_PR_NMEAcorrections, - value_PR_ProbeDataManagement, - value_PR_ProbeVehicleData, - value_PR_RoadSideAlert, - value_PR_RTCMcorrections, - value_PR_SignalRequestMessage, - value_PR_SignalStatusMessage, - value_PR_TravelerInformation, - value_PR_PersonalSafetyMessage, - value_PR_TestMessage00, - value_PR_TestMessage01, - value_PR_TestMessage02, - value_PR_TestMessage03, - value_PR_TestMessage04, - value_PR_TestMessage05, - value_PR_TestMessage06, - value_PR_TestMessage07, - value_PR_TestMessage08, - value_PR_TestMessage09, - value_PR_TestMessage10, - value_PR_TestMessage11, - value_PR_TestMessage12, - value_PR_TestMessage13, - value_PR_TestMessage14, - value_PR_TestMessage15, - value_PR_SensorDataSharingMessage -} value_PR; - -/* MessageFrame */ -typedef struct MessageFrame { - DSRCmsgID_t messageId; - struct value { - value_PR present; - union value_u { - BasicSafetyMessage_t BasicSafetyMessage; - MapData_t MapData; - SPAT_t SPAT; - CommonSafetyRequest_t CommonSafetyRequest; - EmergencyVehicleAlert_t EmergencyVehicleAlert; - IntersectionCollision_t IntersectionCollision; - NMEAcorrections_t NMEAcorrections; - ProbeDataManagement_t ProbeDataManagement; - ProbeVehicleData_t ProbeVehicleData; - RoadSideAlert_t RoadSideAlert; - RTCMcorrections_t RTCMcorrections; - SignalRequestMessage_t SignalRequestMessage; - SignalStatusMessage_t SignalStatusMessage; - TravelerInformation_t TravelerInformation; - PersonalSafetyMessage_t PersonalSafetyMessage; - TestMessage00_t TestMessage00; - TestMessage01_t TestMessage01; - TestMessage02_t TestMessage02; - TestMessage03_t TestMessage03; - TestMessage04_t TestMessage04; - TestMessage05_t TestMessage05; - TestMessage06_t TestMessage06; - TestMessage07_t TestMessage07; - TestMessage08_t TestMessage08; - TestMessage09_t TestMessage09; - TestMessage10_t TestMessage10; - TestMessage11_t TestMessage11; - TestMessage12_t TestMessage12; - TestMessage13_t TestMessage13; - TestMessage14_t TestMessage14; - TestMessage15_t TestMessage15; - SensorDataSharingMessage_t SensorDataSharingMessage; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } value; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MessageFrame_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MessageFrame; - -#ifdef __cplusplus -} -#endif - -#endif /* _MessageFrame_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h deleted file mode 100644 index 8a8146ea3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MinTimetoChange_H_ -#define _MinTimetoChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinTimetoChange */ -typedef long MinTimetoChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; -asn_struct_free_f MinTimetoChange_free; -asn_struct_print_f MinTimetoChange_print; -asn_constr_check_f MinTimetoChange_constraint; -ber_type_decoder_f MinTimetoChange_decode_ber; -der_type_encoder_f MinTimetoChange_encode_der; -xer_type_decoder_f MinTimetoChange_decode_xer; -xer_type_encoder_f MinTimetoChange_encode_xer; -oer_type_decoder_f MinTimetoChange_decode_oer; -oer_type_encoder_f MinTimetoChange_encode_oer; -per_type_decoder_f MinTimetoChange_decode_uper; -per_type_encoder_f MinTimetoChange_encode_uper; -per_type_decoder_f MinTimetoChange_decode_aper; -per_type_encoder_f MinTimetoChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinTimetoChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h deleted file mode 100644 index dc2dedebe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Minute_H_ -#define _Minute_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Minute */ -typedef long Minute_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Minute_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Minute; -asn_struct_free_f Minute_free; -asn_struct_print_f Minute_print; -asn_constr_check_f Minute_constraint; -ber_type_decoder_f Minute_decode_ber; -der_type_encoder_f Minute_encode_der; -xer_type_decoder_f Minute_decode_xer; -xer_type_encoder_f Minute_encode_xer; -oer_type_decoder_f Minute_decode_oer; -oer_type_encoder_f Minute_encode_oer; -per_type_decoder_f Minute_decode_uper; -per_type_encoder_f Minute_encode_uper; -per_type_decoder_f Minute_decode_aper; -per_type_encoder_f Minute_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Minute_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h deleted file mode 100644 index a23f33684..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MinuteOfTheYear_H_ -#define _MinuteOfTheYear_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinuteOfTheYear */ -typedef long MinuteOfTheYear_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; -asn_struct_free_f MinuteOfTheYear_free; -asn_struct_print_f MinuteOfTheYear_print; -asn_constr_check_f MinuteOfTheYear_constraint; -ber_type_decoder_f MinuteOfTheYear_decode_ber; -der_type_encoder_f MinuteOfTheYear_encode_der; -xer_type_decoder_f MinuteOfTheYear_decode_xer; -xer_type_encoder_f MinuteOfTheYear_encode_xer; -oer_type_decoder_f MinuteOfTheYear_decode_oer; -oer_type_encoder_f MinuteOfTheYear_encode_oer; -per_type_decoder_f MinuteOfTheYear_decode_uper; -per_type_encoder_f MinuteOfTheYear_encode_uper; -per_type_decoder_f MinuteOfTheYear_decode_aper; -per_type_encoder_f MinuteOfTheYear_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinuteOfTheYear_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h deleted file mode 100644 index 0dd665595..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MinutesAngle_H_ -#define _MinutesAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesAngle */ -typedef long MinutesAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; -asn_struct_free_f MinutesAngle_free; -asn_struct_print_f MinutesAngle_print; -asn_constr_check_f MinutesAngle_constraint; -ber_type_decoder_f MinutesAngle_decode_ber; -der_type_encoder_f MinutesAngle_encode_der; -xer_type_decoder_f MinutesAngle_decode_xer; -xer_type_encoder_f MinutesAngle_encode_xer; -oer_type_decoder_f MinutesAngle_decode_oer; -oer_type_encoder_f MinutesAngle_encode_oer; -per_type_decoder_f MinutesAngle_decode_uper; -per_type_encoder_f MinutesAngle_encode_uper; -per_type_decoder_f MinutesAngle_decode_aper; -per_type_encoder_f MinutesAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h deleted file mode 100644 index 090dc2df1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MinutesDuration_H_ -#define _MinutesDuration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MinutesDuration */ -typedef long MinutesDuration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; -asn_struct_free_f MinutesDuration_free; -asn_struct_print_f MinutesDuration_print; -asn_constr_check_f MinutesDuration_constraint; -ber_type_decoder_f MinutesDuration_decode_ber; -der_type_encoder_f MinutesDuration_encode_der; -xer_type_decoder_f MinutesDuration_decode_xer; -xer_type_encoder_f MinutesDuration_encode_xer; -oer_type_decoder_f MinutesDuration_decode_oer; -oer_type_encoder_f MinutesDuration_encode_oer; -per_type_decoder_f MinutesDuration_decode_uper; -per_type_encoder_f MinutesDuration_encode_uper; -per_type_decoder_f MinutesDuration_decode_aper; -per_type_encoder_f MinutesDuration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MinutesDuration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h deleted file mode 100644 index 6585d54e0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityDynamicID_H_ -#define _MobilityDynamicID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityDynamicID */ -typedef IA5String_t MobilityDynamicID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID; -asn_struct_free_f MobilityDynamicID_free; -asn_struct_print_f MobilityDynamicID_print; -asn_constr_check_f MobilityDynamicID_constraint; -ber_type_decoder_f MobilityDynamicID_decode_ber; -der_type_encoder_f MobilityDynamicID_encode_der; -xer_type_decoder_f MobilityDynamicID_decode_xer; -xer_type_encoder_f MobilityDynamicID_encode_xer; -oer_type_decoder_f MobilityDynamicID_decode_oer; -oer_type_encoder_f MobilityDynamicID_encode_oer; -per_type_decoder_f MobilityDynamicID_decode_uper; -per_type_encoder_f MobilityDynamicID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityDynamicID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h deleted file mode 100644 index 886ddd37c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityECEFCoordinate_H_ -#define _MobilityECEFCoordinate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityECEFCoordinate */ -typedef long MobilityECEFCoordinate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate; -asn_struct_free_f MobilityECEFCoordinate_free; -asn_struct_print_f MobilityECEFCoordinate_print; -asn_constr_check_f MobilityECEFCoordinate_constraint; -ber_type_decoder_f MobilityECEFCoordinate_decode_ber; -der_type_encoder_f MobilityECEFCoordinate_encode_der; -xer_type_decoder_f MobilityECEFCoordinate_decode_xer; -xer_type_encoder_f MobilityECEFCoordinate_encode_xer; -oer_type_decoder_f MobilityECEFCoordinate_decode_oer; -oer_type_encoder_f MobilityECEFCoordinate_encode_oer; -per_type_decoder_f MobilityECEFCoordinate_decode_uper; -per_type_encoder_f MobilityECEFCoordinate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityECEFCoordinate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h deleted file mode 100644 index abdf4de36..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityECEFOffset_H_ -#define _MobilityECEFOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityECEFOffsetCoordinate.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityECEFOffset */ -typedef struct MobilityECEFOffset { - MobilityECEFOffsetCoordinate_t offsetX; - MobilityECEFOffsetCoordinate_t offsetY; - MobilityECEFOffsetCoordinate_t offsetZ; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityECEFOffset_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityECEFOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h deleted file mode 100644 index 0515352ed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityECEFOffsetCoordinate_H_ -#define _MobilityECEFOffsetCoordinate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityECEFOffsetCoordinate */ -typedef long MobilityECEFOffsetCoordinate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate; -asn_struct_free_f MobilityECEFOffsetCoordinate_free; -asn_struct_print_f MobilityECEFOffsetCoordinate_print; -asn_constr_check_f MobilityECEFOffsetCoordinate_constraint; -ber_type_decoder_f MobilityECEFOffsetCoordinate_decode_ber; -der_type_encoder_f MobilityECEFOffsetCoordinate_encode_der; -xer_type_decoder_f MobilityECEFOffsetCoordinate_decode_xer; -xer_type_encoder_f MobilityECEFOffsetCoordinate_encode_xer; -oer_type_decoder_f MobilityECEFOffsetCoordinate_decode_oer; -oer_type_encoder_f MobilityECEFOffsetCoordinate_encode_oer; -per_type_decoder_f MobilityECEFOffsetCoordinate_decode_uper; -per_type_encoder_f MobilityECEFOffsetCoordinate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityECEFOffsetCoordinate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h deleted file mode 100644 index b95a26e13..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityGUID_H_ -#define _MobilityGUID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityGUID */ -typedef IA5String_t MobilityGUID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityGUID; -asn_struct_free_f MobilityGUID_free; -asn_struct_print_f MobilityGUID_print; -asn_constr_check_f MobilityGUID_constraint; -ber_type_decoder_f MobilityGUID_decode_ber; -der_type_encoder_f MobilityGUID_encode_der; -xer_type_decoder_f MobilityGUID_decode_xer; -xer_type_encoder_f MobilityGUID_encode_xer; -oer_type_decoder_f MobilityGUID_decode_oer; -oer_type_encoder_f MobilityGUID_encode_oer; -per_type_decoder_f MobilityGUID_decode_uper; -per_type_encoder_f MobilityGUID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityGUID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h deleted file mode 100644 index 7b32562ec..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityHeader_H_ -#define _MobilityHeader_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityStaticID.h" -#include "MobilityDynamicID.h" -#include "MobilityGUID.h" -#include "MobilityTimestamp.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityHeader */ -typedef struct MobilityHeader { - MobilityStaticID_t hostStaticId; - MobilityStaticID_t targetStaticId; - MobilityDynamicID_t hostBSMId; - MobilityGUID_t planId; - MobilityTimestamp_t timestamp; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityHeader_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityHeader; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityHeader_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityHeader_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h deleted file mode 100644 index f73b68e2a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityLocation_H_ -#define _MobilityLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityECEFCoordinate.h" -#include "MobilityTimestamp.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityLocation */ -typedef struct MobilityLocation { - MobilityECEFCoordinate_t ecefX; - MobilityECEFCoordinate_t ecefY; - MobilityECEFCoordinate_t ecefZ; - MobilityTimestamp_t timestamp; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityLocation; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityLocation_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h deleted file mode 100644 index f40add688..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityLocationOffsets_H_ -#define _MobilityLocationOffsets_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 MobilityECEFOffset; - -/* MobilityLocationOffsets */ -typedef struct MobilityLocationOffsets { - A_SEQUENCE_OF(struct MobilityECEFOffset) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityLocationOffsets_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets; -extern asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[1]; -extern asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MobilityECEFOffset.h" - -#endif /* _MobilityLocationOffsets_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h deleted file mode 100644 index 4eceaa686..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/MobilityNeedsList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsList.h deleted file mode 100644 index 05421eb09..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * 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_r63/MobilityNeedsType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsType.h deleted file mode 100644 index 9da4492ee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsType.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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_r63/MobilityOperation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h deleted file mode 100644 index cf865e33b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityOperation_H_ -#define _MobilityOperation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityStrategy.h" -#include "MobilityParameters.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityOperation */ -typedef struct MobilityOperation { - MobilityStrategy_t strategy; - MobilityParameters_t operationParams; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityOperation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityOperation; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityOperation_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityOperation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h deleted file mode 100644 index 7db88393d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityParameters_H_ -#define _MobilityParameters_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityParameters */ -typedef IA5String_t MobilityParameters_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityParameters; -asn_struct_free_f MobilityParameters_free; -asn_struct_print_f MobilityParameters_print; -asn_constr_check_f MobilityParameters_constraint; -ber_type_decoder_f MobilityParameters_decode_ber; -der_type_encoder_f MobilityParameters_encode_der; -xer_type_decoder_f MobilityParameters_decode_xer; -xer_type_encoder_f MobilityParameters_encode_xer; -oer_type_decoder_f MobilityParameters_decode_oer; -oer_type_encoder_f MobilityParameters_encode_oer; -per_type_decoder_f MobilityParameters_decode_uper; -per_type_encoder_f MobilityParameters_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityParameters_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h deleted file mode 100644 index 2cab5ee68..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityPath_H_ -#define _MobilityPath_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityLocation.h" -#include "MobilityLocationOffsets.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityPath */ -typedef struct MobilityPath { - MobilityLocation_t location; - MobilityLocationOffsets_t trajectory; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityPath_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityPath; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityPath_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityPath_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h deleted file mode 100644 index 4e971e1aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityPlanType_H_ -#define _MobilityPlanType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MobilityPlanType { - MobilityPlanType_unknown = 0, - MobilityPlanType_changingLanesToTheLeft = 1, - MobilityPlanType_changingLanesToTheRight = 2, - MobilityPlanType_joinPlatoonAtRear = 3, - MobilityPlanType_platoonFollowerJoin = 4 - /* - * Enumeration is extensible - */ -} e_MobilityPlanType; - -/* MobilityPlanType */ -typedef long MobilityPlanType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityPlanType; -extern const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1; -asn_struct_free_f MobilityPlanType_free; -asn_struct_print_f MobilityPlanType_print; -asn_constr_check_f MobilityPlanType_constraint; -ber_type_decoder_f MobilityPlanType_decode_ber; -der_type_encoder_f MobilityPlanType_encode_der; -xer_type_decoder_f MobilityPlanType_decode_xer; -xer_type_encoder_f MobilityPlanType_encode_xer; -oer_type_decoder_f MobilityPlanType_decode_oer; -oer_type_encoder_f MobilityPlanType_encode_oer; -per_type_decoder_f MobilityPlanType_decode_uper; -per_type_encoder_f MobilityPlanType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityPlanType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h deleted file mode 100644 index 83580ddac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityRequest_H_ -#define _MobilityRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityStrategy.h" -#include "MobilityPlanType.h" -#include "MobilityUrgency.h" -#include "MobilityLocation.h" -#include "MobilityLocationOffsets.h" -#include "MobilityParameters.h" -#include "MobilityTimestamp.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MobilityLocation; -struct MobilityLocationOffsets; - -/* MobilityRequest */ -typedef struct MobilityRequest { - MobilityStrategy_t strategy; - MobilityPlanType_t planType; - MobilityUrgency_t urgency; - MobilityLocation_t location; - MobilityParameters_t strategyParams; - MobilityLocation_t trajectoryStart /* OPTIONAL */; - MobilityLocationOffsets_t trajectory /* OPTIONAL */; - MobilityTimestamp_t expiration /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityRequest_1[8]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MobilityLocation.h" -#include "MobilityLocationOffsets.h" - -#endif /* _MobilityRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h deleted file mode 100644 index 76f7004a4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityResponse_H_ -#define _MobilityResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityUrgency.h" -#include "MobilityResponseFlag.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityResponse */ -typedef struct MobilityResponse { - MobilityUrgency_t urgency; - MobilityResponseFlag_t isAccepted; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MobilityResponse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityResponse; -extern asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1; -extern asn_TYPE_member_t asn_MBR_MobilityResponse_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h deleted file mode 100644 index 30f71521b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityResponseFlag_H_ -#define _MobilityResponseFlag_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityResponseFlag */ -typedef BOOLEAN_t MobilityResponseFlag_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag; -asn_struct_free_f MobilityResponseFlag_free; -asn_struct_print_f MobilityResponseFlag_print; -asn_constr_check_f MobilityResponseFlag_constraint; -ber_type_decoder_f MobilityResponseFlag_decode_ber; -der_type_encoder_f MobilityResponseFlag_encode_der; -xer_type_decoder_f MobilityResponseFlag_decode_xer; -xer_type_encoder_f MobilityResponseFlag_encode_xer; -oer_type_decoder_f MobilityResponseFlag_decode_oer; -oer_type_encoder_f MobilityResponseFlag_encode_oer; -per_type_decoder_f MobilityResponseFlag_decode_uper; -per_type_encoder_f MobilityResponseFlag_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityResponseFlag_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h deleted file mode 100644 index 74a040938..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityStaticID_H_ -#define _MobilityStaticID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityStaticID */ -typedef IA5String_t MobilityStaticID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityStaticID; -asn_struct_free_f MobilityStaticID_free; -asn_struct_print_f MobilityStaticID_print; -asn_constr_check_f MobilityStaticID_constraint; -ber_type_decoder_f MobilityStaticID_decode_ber; -der_type_encoder_f MobilityStaticID_encode_der; -xer_type_decoder_f MobilityStaticID_decode_xer; -xer_type_encoder_f MobilityStaticID_encode_xer; -oer_type_decoder_f MobilityStaticID_decode_oer; -oer_type_encoder_f MobilityStaticID_encode_oer; -per_type_decoder_f MobilityStaticID_decode_uper; -per_type_encoder_f MobilityStaticID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityStaticID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h deleted file mode 100644 index e7c93479a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityStrategy_H_ -#define _MobilityStrategy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityStrategy */ -typedef IA5String_t MobilityStrategy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityStrategy; -asn_struct_free_f MobilityStrategy_free; -asn_struct_print_f MobilityStrategy_print; -asn_constr_check_f MobilityStrategy_constraint; -ber_type_decoder_f MobilityStrategy_decode_ber; -der_type_encoder_f MobilityStrategy_encode_der; -xer_type_decoder_f MobilityStrategy_decode_xer; -xer_type_encoder_f MobilityStrategy_encode_xer; -oer_type_decoder_f MobilityStrategy_decode_oer; -oer_type_encoder_f MobilityStrategy_encode_oer; -per_type_decoder_f MobilityStrategy_decode_uper; -per_type_encoder_f MobilityStrategy_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityStrategy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h deleted file mode 100644 index 17e94afb7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityTimestamp_H_ -#define _MobilityTimestamp_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityTimestamp */ -typedef IA5String_t MobilityTimestamp_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp; -asn_struct_free_f MobilityTimestamp_free; -asn_struct_print_f MobilityTimestamp_print; -asn_constr_check_f MobilityTimestamp_constraint; -ber_type_decoder_f MobilityTimestamp_decode_ber; -der_type_encoder_f MobilityTimestamp_encode_der; -xer_type_decoder_f MobilityTimestamp_decode_xer; -xer_type_encoder_f MobilityTimestamp_encode_xer; -oer_type_decoder_f MobilityTimestamp_decode_oer; -oer_type_encoder_f MobilityTimestamp_encode_oer; -per_type_decoder_f MobilityTimestamp_decode_uper; -per_type_encoder_f MobilityTimestamp_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityTimestamp_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h deleted file mode 100644 index eef5355ff..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _MobilityUrgency_H_ -#define _MobilityUrgency_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MobilityUrgency */ -typedef long MobilityUrgency_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MobilityUrgency; -asn_struct_free_f MobilityUrgency_free; -asn_struct_print_f MobilityUrgency_print; -asn_constr_check_f MobilityUrgency_constraint; -ber_type_decoder_f MobilityUrgency_decode_ber; -der_type_encoder_f MobilityUrgency_encode_der; -xer_type_decoder_f MobilityUrgency_decode_xer; -xer_type_encoder_f MobilityUrgency_encode_xer; -oer_type_decoder_f MobilityUrgency_decode_oer; -oer_type_encoder_f MobilityUrgency_encode_oer; -per_type_decoder_f MobilityUrgency_decode_uper; -per_type_encoder_f MobilityUrgency_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MobilityUrgency_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h deleted file mode 100644 index 8d7f72926..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * 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_r63/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h deleted file mode 100644 index de2fa7172..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Month_H_ -#define _Month_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Month */ -typedef long Month_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Month_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Month; -asn_struct_free_f Month_free; -asn_struct_print_f Month_print; -asn_constr_check_f Month_constraint; -ber_type_decoder_f Month_decode_ber; -der_type_encoder_f Month_encode_der; -xer_type_decoder_f Month_decode_xer; -xer_type_encoder_f Month_encode_xer; -oer_type_decoder_f Month_decode_oer; -oer_type_encoder_f Month_encode_oer; -per_type_decoder_f Month_decode_uper; -per_type_encoder_f Month_encode_uper; -per_type_decoder_f Month_decode_aper; -per_type_encoder_f Month_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Month_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h deleted file mode 100644 index 360fbbd24..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MotorizedPropelledType_H_ -#define _MotorizedPropelledType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MotorizedPropelledType { - MotorizedPropelledType_unavailable = 0, - MotorizedPropelledType_otherTypes = 1, - MotorizedPropelledType_wheelChair = 2, - MotorizedPropelledType_bicycle = 3, - MotorizedPropelledType_scooter = 4, - MotorizedPropelledType_selfBalancingDevice = 5 - /* - * Enumeration is extensible - */ -} e_MotorizedPropelledType; - -/* MotorizedPropelledType */ -typedef long MotorizedPropelledType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; -extern const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1; -asn_struct_free_f MotorizedPropelledType_free; -asn_struct_print_f MotorizedPropelledType_print; -asn_constr_check_f MotorizedPropelledType_constraint; -ber_type_decoder_f MotorizedPropelledType_decode_ber; -der_type_encoder_f MotorizedPropelledType_encode_der; -xer_type_decoder_f MotorizedPropelledType_decode_xer; -xer_type_encoder_f MotorizedPropelledType_encode_xer; -oer_type_decoder_f MotorizedPropelledType_decode_oer; -oer_type_encoder_f MotorizedPropelledType_encode_oer; -per_type_decoder_f MotorizedPropelledType_decode_uper; -per_type_encoder_f MotorizedPropelledType_encode_uper; -per_type_decoder_f MotorizedPropelledType_decode_aper; -per_type_encoder_f MotorizedPropelledType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MotorizedPropelledType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h deleted file mode 100644 index 591f753b4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementEvent_addGrpB_H_ -#define _MovementEvent_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TimeRemaining.h" -#include "MinTimetoChange.h" -#include "MaxTimetoChange.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MovementEvent-addGrpB */ -typedef struct MovementEvent_addGrpB { - TimeRemaining_t *startTime; /* OPTIONAL */ - MinTimetoChange_t minEndTime; - MaxTimetoChange_t *maxEndTime; /* OPTIONAL */ - TimeRemaining_t *likelyTime; /* OPTIONAL */ - TimeIntervalConfidence_t *confidence; /* OPTIONAL */ - TimeRemaining_t *nextTime; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEvent_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementEvent_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h deleted file mode 100644 index b7d557ada..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementEvent_H_ -#define _MovementEvent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MovementPhaseState.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TimeChangeDetails; -struct AdvisorySpeedList; -struct Reg_BasicSafetyMessage; - -/* MovementEvent */ -typedef struct MovementEvent { - MovementPhaseState_t eventState; - struct TimeChangeDetails *timing; /* OPTIONAL */ - struct AdvisorySpeedList *speeds; /* OPTIONAL */ - struct MovementEvent__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} MovementEvent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; -extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementEvent_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TimeChangeDetails.h" -#include "AdvisorySpeedList.h" -#include "RegionalExtension.h" - -#endif /* _MovementEvent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h deleted file mode 100644 index 92ac9e11b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementEventList_H_ -#define _MovementEventList_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 MovementEvent; - -/* MovementEventList */ -typedef struct MovementEventList { - A_SEQUENCE_OF(struct MovementEvent) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementEventList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; -extern asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementEventList_1[1]; -extern asn_per_constraints_t asn_PER_type_MovementEventList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MovementEvent.h" - -#endif /* _MovementEventList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h deleted file mode 100644 index de0a0c0f4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementList_H_ -#define _MovementList_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 MovementState; - -/* MovementList */ -typedef struct MovementList { - A_SEQUENCE_OF(struct MovementState) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MovementList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementList; -extern asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementList_1[1]; -extern asn_per_constraints_t asn_PER_type_MovementList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "MovementState.h" - -#endif /* _MovementList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h deleted file mode 100644 index e91612d64..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementPhaseState_H_ -#define _MovementPhaseState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MovementPhaseState { - MovementPhaseState_unavailable = 0, - MovementPhaseState_dark = 1, - MovementPhaseState_stop_Then_Proceed = 2, - MovementPhaseState_stop_And_Remain = 3, - MovementPhaseState_pre_Movement = 4, - MovementPhaseState_permissive_Movement_Allowed = 5, - MovementPhaseState_protected_Movement_Allowed = 6, - MovementPhaseState_permissive_clearance = 7, - MovementPhaseState_protected_clearance = 8, - MovementPhaseState_caution_Conflicting_Traffic = 9 -} e_MovementPhaseState; - -/* MovementPhaseState */ -typedef long MovementPhaseState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; -extern const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1; -asn_struct_free_f MovementPhaseState_free; -asn_struct_print_f MovementPhaseState_print; -asn_constr_check_f MovementPhaseState_constraint; -ber_type_decoder_f MovementPhaseState_decode_ber; -der_type_encoder_f MovementPhaseState_encode_der; -xer_type_decoder_f MovementPhaseState_decode_xer; -xer_type_encoder_f MovementPhaseState_encode_xer; -oer_type_decoder_f MovementPhaseState_decode_oer; -oer_type_encoder_f MovementPhaseState_encode_oer; -per_type_decoder_f MovementPhaseState_decode_uper; -per_type_encoder_f MovementPhaseState_encode_uper; -per_type_decoder_f MovementPhaseState_decode_aper; -per_type_encoder_f MovementPhaseState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MovementPhaseState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h deleted file mode 100644 index 1b540e37c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MovementState_H_ -#define _MovementState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "SignalGroupID.h" -#include "MovementEventList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ManeuverAssistList; -struct Reg_BasicSafetyMessage; - -/* MovementState */ -typedef struct MovementState { - DescriptiveName_t *movementName; /* OPTIONAL */ - SignalGroupID_t signalGroup; - MovementEventList_t state_time_speed; - struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ - struct MovementState__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} MovementState_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MovementState; -extern asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1; -extern asn_TYPE_member_t asn_MBR_MovementState_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "ManeuverAssistList.h" -#include "RegionalExtension.h" - -#endif /* _MovementState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h deleted file mode 100644 index 98784e1e2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MsgCRC_H_ -#define _MsgCRC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* MsgCRC */ -typedef OCTET_STRING_t MsgCRC_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MsgCRC_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; -asn_struct_free_f MsgCRC_free; -asn_struct_print_f MsgCRC_print; -asn_constr_check_f MsgCRC_constraint; -ber_type_decoder_f MsgCRC_decode_ber; -der_type_encoder_f MsgCRC_encode_der; -xer_type_decoder_f MsgCRC_decode_xer; -xer_type_encoder_f MsgCRC_encode_xer; -oer_type_decoder_f MsgCRC_decode_oer; -oer_type_encoder_f MsgCRC_encode_oer; -per_type_decoder_f MsgCRC_decode_uper; -per_type_encoder_f MsgCRC_encode_uper; -per_type_decoder_f MsgCRC_decode_aper; -per_type_encoder_f MsgCRC_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MsgCRC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h deleted file mode 100644 index b5f3a32ab..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _MultiVehicleResponse_H_ -#define _MultiVehicleResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MultiVehicleResponse { - MultiVehicleResponse_unavailable = 0, - MultiVehicleResponse_singleVehicle = 1, - MultiVehicleResponse_multiVehicle = 2, - MultiVehicleResponse_reserved = 3 -} e_MultiVehicleResponse; - -/* MultiVehicleResponse */ -typedef long MultiVehicleResponse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; -extern const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1; -asn_struct_free_f MultiVehicleResponse_free; -asn_struct_print_f MultiVehicleResponse_print; -asn_constr_check_f MultiVehicleResponse_constraint; -ber_type_decoder_f MultiVehicleResponse_decode_ber; -der_type_encoder_f MultiVehicleResponse_encode_der; -xer_type_decoder_f MultiVehicleResponse_decode_xer; -xer_type_encoder_f MultiVehicleResponse_encode_xer; -oer_type_decoder_f MultiVehicleResponse_decode_oer; -oer_type_encoder_f MultiVehicleResponse_encode_oer; -per_type_decoder_f MultiVehicleResponse_decode_uper; -per_type_encoder_f MultiVehicleResponse_encode_uper; -per_type_decoder_f MultiVehicleResponse_decode_aper; -per_type_encoder_f MultiVehicleResponse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MultiVehicleResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h deleted file mode 100644 index 7c76ebf35..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NMEA_MsgType_H_ -#define _NMEA_MsgType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-MsgType */ -typedef long NMEA_MsgType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; -asn_struct_free_f NMEA_MsgType_free; -asn_struct_print_f NMEA_MsgType_print; -asn_constr_check_f NMEA_MsgType_constraint; -ber_type_decoder_f NMEA_MsgType_decode_ber; -der_type_encoder_f NMEA_MsgType_encode_der; -xer_type_decoder_f NMEA_MsgType_decode_xer; -xer_type_encoder_f NMEA_MsgType_encode_xer; -oer_type_decoder_f NMEA_MsgType_decode_oer; -oer_type_encoder_f NMEA_MsgType_encode_oer; -per_type_decoder_f NMEA_MsgType_decode_uper; -per_type_encoder_f NMEA_MsgType_encode_uper; -per_type_decoder_f NMEA_MsgType_decode_aper; -per_type_encoder_f NMEA_MsgType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_MsgType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h deleted file mode 100644 index 6328e6313..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NMEA_Payload_H_ -#define _NMEA_Payload_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NMEA-Payload */ -typedef OCTET_STRING_t NMEA_Payload_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; -asn_struct_free_f NMEA_Payload_free; -asn_struct_print_f NMEA_Payload_print; -asn_constr_check_f NMEA_Payload_constraint; -ber_type_decoder_f NMEA_Payload_decode_ber; -der_type_encoder_f NMEA_Payload_encode_der; -xer_type_decoder_f NMEA_Payload_decode_xer; -xer_type_encoder_f NMEA_Payload_encode_xer; -oer_type_decoder_f NMEA_Payload_decode_oer; -oer_type_encoder_f NMEA_Payload_encode_oer; -per_type_decoder_f NMEA_Payload_decode_uper; -per_type_encoder_f NMEA_Payload_encode_uper; -per_type_decoder_f NMEA_Payload_decode_aper; -per_type_encoder_f NMEA_Payload_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Payload_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h deleted file mode 100644 index 584c4a602..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NMEA_Revision_H_ -#define _NMEA_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NMEA_Revision { - NMEA_Revision_unknown = 0, - NMEA_Revision_reserved = 1, - NMEA_Revision_rev1 = 2, - NMEA_Revision_rev2 = 3, - NMEA_Revision_rev3 = 4, - NMEA_Revision_rev4 = 5, - NMEA_Revision_rev5 = 6 - /* - * Enumeration is extensible - */ -} e_NMEA_Revision; - -/* NMEA-Revision */ -typedef long NMEA_Revision_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; -extern const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1; -asn_struct_free_f NMEA_Revision_free; -asn_struct_print_f NMEA_Revision_print; -asn_constr_check_f NMEA_Revision_constraint; -ber_type_decoder_f NMEA_Revision_decode_ber; -der_type_encoder_f NMEA_Revision_encode_der; -xer_type_decoder_f NMEA_Revision_decode_xer; -xer_type_encoder_f NMEA_Revision_encode_xer; -oer_type_decoder_f NMEA_Revision_decode_oer; -oer_type_encoder_f NMEA_Revision_encode_oer; -per_type_decoder_f NMEA_Revision_decode_uper; -per_type_encoder_f NMEA_Revision_encode_uper; -per_type_decoder_f NMEA_Revision_decode_aper; -per_type_encoder_f NMEA_Revision_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NMEA_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h deleted file mode 100644 index 2b8d14bb1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NMEAcorrections_H_ -#define _NMEAcorrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "NMEA-Revision.h" -#include "NMEA-MsgType.h" -#include "ObjectCount.h" -#include "NMEA-Payload.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* NMEAcorrections */ -typedef struct NMEAcorrections { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - NMEA_Revision_t *rev; /* OPTIONAL */ - NMEA_MsgType_t *msg; /* OPTIONAL */ - ObjectCount_t *wdCount; /* OPTIONAL */ - NMEA_Payload_t payload; - struct NMEAcorrections__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} NMEAcorrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NMEAcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1; -extern asn_TYPE_member_t asn_MBR_NMEAcorrections_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _NMEAcorrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h deleted file mode 100644 index 802d12c00..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h +++ /dev/null @@ -1,45 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_TYPE_NULL_H -#define ASN_TYPE_NULL_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The value of the NULL type is meaningless: see BOOLEAN if you want to - * carry true/false semantics. - */ -typedef int NULL_t; - -extern asn_TYPE_descriptor_t asn_DEF_NULL; -extern asn_TYPE_operation_t asn_OP_NULL; - -asn_struct_print_f NULL_print; -asn_struct_compare_f NULL_compare; -der_type_encoder_f NULL_encode_der; -xer_type_decoder_f NULL_decode_xer; -xer_type_encoder_f NULL_encode_xer; -oer_type_decoder_f NULL_decode_oer; -oer_type_encoder_f NULL_encode_oer; -per_type_decoder_f NULL_decode_uper; -per_type_encoder_f NULL_encode_uper; -per_type_decoder_f NULL_decode_aper; -per_type_encoder_f NULL_encode_aper; -asn_random_fill_f NULL_random_fill; - -#define NULL_free BOOLEAN_free -#define NULL_decode_ber BOOLEAN_decode_ber -#define NULL_constraint asn_generic_no_constraint - -#ifdef __cplusplus -} -#endif - -#endif /* NULL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h deleted file mode 100644 index 459f0e633..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard ENUMERATED in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeEnumerated_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeEnumerated_H_ -#define _NativeEnumerated_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; -extern asn_TYPE_operation_t asn_OP_NativeEnumerated; - -xer_type_encoder_f NativeEnumerated_encode_xer; -oer_type_decoder_f NativeEnumerated_decode_oer; -oer_type_encoder_f NativeEnumerated_encode_oer; -per_type_decoder_f NativeEnumerated_decode_uper; -per_type_encoder_f NativeEnumerated_encode_uper; -per_type_decoder_f NativeEnumerated_decode_aper; -per_type_encoder_f NativeEnumerated_encode_aper; - -#define NativeEnumerated_free NativeInteger_free -#define NativeEnumerated_print NativeInteger_print -#define NativeEnumerated_compare NativeInteger_compare -#define NativeEnumerated_random_fill NativeInteger_random_fill -#define NativeEnumerated_constraint asn_generic_no_constraint -#define NativeEnumerated_decode_ber NativeInteger_decode_ber -#define NativeEnumerated_encode_der NativeInteger_encode_der -#define NativeEnumerated_decode_xer NativeInteger_decode_xer - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h deleted file mode 100644 index c74406a8a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h +++ /dev/null @@ -1,46 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This type differs from the standard INTEGER in that it is modelled using - * the fixed machine type (long, int, short), so it can hold only values of - * limited length. There is no type (i.e., NativeInteger_t, any integer type - * will do). - * This type may be used when integer range is limited by subtype constraints. - */ -#ifndef _NativeInteger_H_ -#define _NativeInteger_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; -extern asn_TYPE_operation_t asn_OP_NativeInteger; - -asn_struct_free_f NativeInteger_free; -asn_struct_print_f NativeInteger_print; -asn_struct_compare_f NativeInteger_compare; -ber_type_decoder_f NativeInteger_decode_ber; -der_type_encoder_f NativeInteger_encode_der; -xer_type_decoder_f NativeInteger_decode_xer; -xer_type_encoder_f NativeInteger_encode_xer; -oer_type_decoder_f NativeInteger_decode_oer; -oer_type_encoder_f NativeInteger_encode_oer; -per_type_decoder_f NativeInteger_decode_uper; -per_type_encoder_f NativeInteger_encode_uper; -per_type_decoder_f NativeInteger_decode_aper; -per_type_encoder_f NativeInteger_encode_aper; -asn_random_fill_f NativeInteger_random_fill; - -#define NativeInteger_constraint asn_generic_no_constraint - -#ifdef __cplusplus -} -#endif - -#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h deleted file mode 100644 index cfdd1bd1c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h +++ /dev/null @@ -1,39 +0,0 @@ -/*- - * 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_r63/Node-LL-24B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h deleted file mode 100644 index 572a7faa3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_24B_H_ -#define _Node_LL_24B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B12.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-24B */ -typedef struct Node_LL_24B { - OffsetLL_B12_t lon; - OffsetLL_B12_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_24B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_24B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_24B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_24B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h deleted file mode 100644 index 4ae4ccfc5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_28B_H_ -#define _Node_LL_28B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B14.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-28B */ -typedef struct Node_LL_28B { - OffsetLL_B14_t lon; - OffsetLL_B14_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_28B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_28B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_28B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_28B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h deleted file mode 100644 index 36bd5b49e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_32B_H_ -#define _Node_LL_32B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-32B */ -typedef struct Node_LL_32B { - OffsetLL_B16_t lon; - OffsetLL_B16_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_32B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_32B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_32B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_32B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h deleted file mode 100644 index 3dbb6f11a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_36B_H_ -#define _Node_LL_36B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B18.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-36B */ -typedef struct Node_LL_36B { - OffsetLL_B18_t lon; - OffsetLL_B18_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_36B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_36B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_36B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_36B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h deleted file mode 100644 index 13b7580a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_44B_H_ -#define _Node_LL_44B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B22.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-44B */ -typedef struct Node_LL_44B { - OffsetLL_B22_t lon; - OffsetLL_B22_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_44B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_44B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_44B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_44B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h deleted file mode 100644 index fb2085c4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LL_48B_H_ -#define _Node_LL_48B_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B24.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LL-48B */ -typedef struct Node_LL_48B { - OffsetLL_B24_t lon; - OffsetLL_B24_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LL_48B_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LL_48B; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LL_48B_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LL_48B_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h deleted file mode 100644 index b6cd97e28..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LLdms_48b_H_ -#define _Node_LLdms_48b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS.h" -#include "LatitudeDMS.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-48b */ -typedef struct Node_LLdms_48b { - LongitudeDMS_t lon; - LatitudeDMS_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_48b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_48b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h deleted file mode 100644 index 41f2ffc21..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LLdms_80b_H_ -#define _Node_LLdms_80b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LongitudeDMS2.h" -#include "LatitudeDMS2.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLdms-80b */ -typedef struct Node_LLdms_80b { - LongitudeDMS2_t lon; - LatitudeDMS2_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLdms_80b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLdms_80b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h deleted file mode 100644 index da35ccf67..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_LLmD_64b_H_ -#define _Node_LLmD_64b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Longitude.h" -#include "Latitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-LLmD-64b */ -typedef struct Node_LLmD_64b { - Longitude_t lon; - Latitude_t lat; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_LLmD_64b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_LLmD_64b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h deleted file mode 100644 index 219b22e66..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_20b_H_ -#define _Node_XY_20b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-20b */ -typedef struct Node_XY_20b { - Offset_B10_t x; - Offset_B10_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_20b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_20b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_20b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h deleted file mode 100644 index 2543a9109..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_22b_H_ -#define _Node_XY_22b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B11.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-22b */ -typedef struct Node_XY_22b { - Offset_B11_t x; - Offset_B11_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_22b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_22b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_22b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h deleted file mode 100644 index 73d6a8eb2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_24b_H_ -#define _Node_XY_24b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B12.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-24b */ -typedef struct Node_XY_24b { - Offset_B12_t x; - Offset_B12_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_24b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_24b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_24b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h deleted file mode 100644 index 8e511952b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_26b_H_ -#define _Node_XY_26b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B13.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-26b */ -typedef struct Node_XY_26b { - Offset_B13_t x; - Offset_B13_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_26b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_26b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_26b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h deleted file mode 100644 index 52710aff4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_28b_H_ -#define _Node_XY_28b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B14.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-28b */ -typedef struct Node_XY_28b { - Offset_B14_t x; - Offset_B14_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_28b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_28b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_28b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h deleted file mode 100644 index ed1fdf0af..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Node_XY_32b_H_ -#define _Node_XY_32b_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Node-XY-32b */ -typedef struct Node_XY_32b { - Offset_B16_t x; - Offset_B16_t y; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Node_XY_32b_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; -extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1; -extern asn_TYPE_member_t asn_MBR_Node_XY_32b_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Node_XY_32b_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h deleted file mode 100644 index 12a1ea0a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeLL_H_ -#define _NodeAttributeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeAttributeLL { - NodeAttributeLL_reserved = 0, - NodeAttributeLL_stopLine = 1, - NodeAttributeLL_roundedCapStyleA = 2, - NodeAttributeLL_roundedCapStyleB = 3, - NodeAttributeLL_mergePoint = 4, - NodeAttributeLL_divergePoint = 5, - NodeAttributeLL_downstreamStopLine = 6, - NodeAttributeLL_downstreamStartNode = 7, - NodeAttributeLL_closedToTraffic = 8, - NodeAttributeLL_safeIsland = 9, - NodeAttributeLL_curbPresentAtStepOff = 10, - NodeAttributeLL_hydrantPresent = 11 - /* - * Enumeration is extensible - */ -} e_NodeAttributeLL; - -/* NodeAttributeLL */ -typedef long NodeAttributeLL_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL; -extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1; -asn_struct_free_f NodeAttributeLL_free; -asn_struct_print_f NodeAttributeLL_print; -asn_constr_check_f NodeAttributeLL_constraint; -ber_type_decoder_f NodeAttributeLL_decode_ber; -der_type_encoder_f NodeAttributeLL_encode_der; -xer_type_decoder_f NodeAttributeLL_decode_xer; -xer_type_encoder_f NodeAttributeLL_encode_xer; -oer_type_decoder_f NodeAttributeLL_decode_oer; -oer_type_encoder_f NodeAttributeLL_encode_oer; -per_type_decoder_f NodeAttributeLL_decode_uper; -per_type_encoder_f NodeAttributeLL_encode_uper; -per_type_decoder_f NodeAttributeLL_decode_aper; -per_type_encoder_f NodeAttributeLL_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h deleted file mode 100644 index 45a489926..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeLLList_H_ -#define _NodeAttributeLLList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeAttributeLL.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeAttributeLLList */ -typedef struct NodeAttributeLLList { - A_SEQUENCE_OF(NodeAttributeLL_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeLLList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList; -extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeLLList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h deleted file mode 100644 index dacae814f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeSetLL_H_ -#define _NodeAttributeSetLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeLLList; -struct SegmentAttributeLLList; -struct LaneDataAttributeList; -struct Reg_BasicSafetyMessage; - -/* NodeAttributeSetLL */ -typedef struct NodeAttributeSetLL { - struct NodeAttributeLLList *localNode; /* OPTIONAL */ - struct SegmentAttributeLLList *disabled; /* OPTIONAL */ - struct SegmentAttributeLLList *enabled; /* OPTIONAL */ - struct LaneDataAttributeList *data; /* OPTIONAL */ - Offset_B10_t *dWidth; /* OPTIONAL */ - Offset_B10_t *dElevation; /* OPTIONAL */ - struct NodeAttributeSetLL__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} NodeAttributeSetLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeLLList.h" -#include "SegmentAttributeLLList.h" -#include "LaneDataAttributeList.h" -#include "RegionalExtension.h" - -#endif /* _NodeAttributeSetLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h deleted file mode 100644 index 33bdfe84d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeSetXY_H_ -#define _NodeAttributeSetXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B10.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeXYList; -struct SegmentAttributeXYList; -struct LaneDataAttributeList; -struct Reg_BasicSafetyMessage; - -/* NodeAttributeSetXY */ -typedef struct NodeAttributeSetXY { - struct NodeAttributeXYList *localNode; /* OPTIONAL */ - struct SegmentAttributeXYList *disabled; /* OPTIONAL */ - struct SegmentAttributeXYList *enabled; /* OPTIONAL */ - struct LaneDataAttributeList *data; /* OPTIONAL */ - Offset_B10_t *dWidth; /* OPTIONAL */ - Offset_B10_t *dElevation; /* OPTIONAL */ - struct NodeAttributeSetXY__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} NodeAttributeSetXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeXYList.h" -#include "SegmentAttributeXYList.h" -#include "LaneDataAttributeList.h" -#include "RegionalExtension.h" - -#endif /* _NodeAttributeSetXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h deleted file mode 100644 index de034cf60..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeXY_H_ -#define _NodeAttributeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeAttributeXY { - NodeAttributeXY_reserved = 0, - NodeAttributeXY_stopLine = 1, - NodeAttributeXY_roundedCapStyleA = 2, - NodeAttributeXY_roundedCapStyleB = 3, - NodeAttributeXY_mergePoint = 4, - NodeAttributeXY_divergePoint = 5, - NodeAttributeXY_downstreamStopLine = 6, - NodeAttributeXY_downstreamStartNode = 7, - NodeAttributeXY_closedToTraffic = 8, - NodeAttributeXY_safeIsland = 9, - NodeAttributeXY_curbPresentAtStepOff = 10, - NodeAttributeXY_hydrantPresent = 11 - /* - * Enumeration is extensible - */ -} e_NodeAttributeXY; - -/* NodeAttributeXY */ -typedef long NodeAttributeXY_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY; -extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1; -asn_struct_free_f NodeAttributeXY_free; -asn_struct_print_f NodeAttributeXY_print; -asn_constr_check_f NodeAttributeXY_constraint; -ber_type_decoder_f NodeAttributeXY_decode_ber; -der_type_encoder_f NodeAttributeXY_encode_der; -xer_type_decoder_f NodeAttributeXY_decode_xer; -xer_type_encoder_f NodeAttributeXY_encode_xer; -oer_type_decoder_f NodeAttributeXY_decode_oer; -oer_type_encoder_f NodeAttributeXY_encode_oer; -per_type_decoder_f NodeAttributeXY_decode_uper; -per_type_encoder_f NodeAttributeXY_encode_uper; -per_type_decoder_f NodeAttributeXY_decode_aper; -per_type_encoder_f NodeAttributeXY_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h deleted file mode 100644 index dfcd30217..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeAttributeXYList_H_ -#define _NodeAttributeXYList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeAttributeXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* NodeAttributeXYList */ -typedef struct NodeAttributeXYList { - A_SEQUENCE_OF(NodeAttributeXY_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeAttributeXYList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList; -extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeAttributeXYList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h deleted file mode 100644 index dd267062b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeLL_H_ -#define _NodeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointLL.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeSetLL; - -/* NodeLL */ -typedef struct NodeLL { - NodeOffsetPointLL_t delta; - struct NodeAttributeSetLL *attributes; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeLL; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeLL_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeSetLL.h" - -#endif /* _NodeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h deleted file mode 100644 index a9c6d48e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeListLL_H_ -#define _NodeListLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeSetLL.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeListLL_PR { - NodeListLL_PR_NOTHING, /* No components present */ - NodeListLL_PR_nodes - /* Extensions may appear below */ - -} NodeListLL_PR; - -/* NodeListLL */ -typedef struct NodeListLL { - NodeListLL_PR present; - union NodeListLL_u { - NodeSetLL_t nodes; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeListLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeListLL; -extern asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeListLL_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeListLL_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeListLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h deleted file mode 100644 index d98e75cb1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeListXY_H_ -#define _NodeListXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeSetXY.h" -#include "ComputedLane.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeListXY_PR { - NodeListXY_PR_NOTHING, /* No components present */ - NodeListXY_PR_nodes, - NodeListXY_PR_computed - /* Extensions may appear below */ - -} NodeListXY_PR; - -/* NodeListXY */ -typedef struct NodeListXY { - NodeListXY_PR present; - union NodeListXY_u { - NodeSetXY_t nodes; - ComputedLane_t computed; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeListXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeListXY; -extern asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeListXY_1[2]; -extern asn_per_constraints_t asn_PER_type_NodeListXY_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeListXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h deleted file mode 100644 index 0c192356d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeOffsetPointLL_H_ -#define _NodeOffsetPointLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-LL-24B.h" -#include "Node-LL-28B.h" -#include "Node-LL-32B.h" -#include "Node-LL-36B.h" -#include "Node-LL-44B.h" -#include "Node-LL-48B.h" -#include "Node-LLmD-64b.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointLL_PR { - NodeOffsetPointLL_PR_NOTHING, /* No components present */ - NodeOffsetPointLL_PR_node_LL1, - NodeOffsetPointLL_PR_node_LL2, - NodeOffsetPointLL_PR_node_LL3, - NodeOffsetPointLL_PR_node_LL4, - NodeOffsetPointLL_PR_node_LL5, - NodeOffsetPointLL_PR_node_LL6, - NodeOffsetPointLL_PR_node_LatLon, - NodeOffsetPointLL_PR_regional -} NodeOffsetPointLL_PR; - -/* NodeOffsetPointLL */ -typedef struct NodeOffsetPointLL { - NodeOffsetPointLL_PR present; - union NodeOffsetPointLL_u { - Node_LL_24B_t node_LL1; - Node_LL_28B_t node_LL2; - Node_LL_32B_t node_LL3; - Node_LL_36B_t node_LL4; - Node_LL_44B_t node_LL5; - Node_LL_48B_t node_LL6; - Node_LLmD_64b_t node_LatLon; - Reg_BasicSafetyMessage_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL; -extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[8]; -extern asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h deleted file mode 100644 index 828e78ed8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeOffsetPointXY_addGrpB_H_ -#define _NodeOffsetPointXY_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-LLdms-48b.h" -#include "Node-LLdms-80b.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointXY_addGrpB_PR { - NodeOffsetPointXY_addGrpB_PR_NOTHING, /* No components present */ - NodeOffsetPointXY_addGrpB_PR_posA, - NodeOffsetPointXY_addGrpB_PR_posB - /* Extensions may appear below */ - -} NodeOffsetPointXY_addGrpB_PR; - -/* NodeOffsetPointXY-addGrpB */ -typedef struct NodeOffsetPointXY_addGrpB { - NodeOffsetPointXY_addGrpB_PR present; - union NodeOffsetPointXY_addGrpB_u { - Node_LLdms_48b_t posA; - Node_LLdms_80b_t posB; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointXY_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointXY_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h deleted file mode 100644 index 9f5a83ac5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeOffsetPointXY_H_ -#define _NodeOffsetPointXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Node-XY-20b.h" -#include "Node-XY-22b.h" -#include "Node-XY-24b.h" -#include "Node-XY-26b.h" -#include "Node-XY-28b.h" -#include "Node-XY-32b.h" -#include "Node-LLmD-64b.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NodeOffsetPointXY_PR { - NodeOffsetPointXY_PR_NOTHING, /* No components present */ - NodeOffsetPointXY_PR_node_XY1, - NodeOffsetPointXY_PR_node_XY2, - NodeOffsetPointXY_PR_node_XY3, - NodeOffsetPointXY_PR_node_XY4, - NodeOffsetPointXY_PR_node_XY5, - NodeOffsetPointXY_PR_node_XY6, - NodeOffsetPointXY_PR_node_LatLon, - NodeOffsetPointXY_PR_regional -} NodeOffsetPointXY_PR; - -/* NodeOffsetPointXY */ -typedef struct NodeOffsetPointXY { - NodeOffsetPointXY_PR present; - union NodeOffsetPointXY_u { - Node_XY_20b_t node_XY1; - Node_XY_22b_t node_XY2; - Node_XY_24b_t node_XY3; - Node_XY_26b_t node_XY4; - Node_XY_28b_t node_XY5; - Node_XY_32b_t node_XY6; - Node_LLmD_64b_t node_LatLon; - Reg_BasicSafetyMessage_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeOffsetPointXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY; -extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[8]; -extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _NodeOffsetPointXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h deleted file mode 100644 index 75d08cf79..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeSetLL_H_ -#define _NodeSetLL_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 NodeLL; - -/* NodeSetLL */ -typedef struct NodeSetLL { - A_SEQUENCE_OF(struct NodeLL) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeSetLL_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeSetLL; -extern asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeSetLL_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeLL.h" - -#endif /* _NodeSetLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h deleted file mode 100644 index ea9ab508d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeSetXY_H_ -#define _NodeSetXY_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 NodeXY; - -/* NodeSetXY */ -typedef struct NodeSetXY { - A_SEQUENCE_OF(struct NodeXY) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeSetXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeSetXY; -extern asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeSetXY_1[1]; -extern asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeXY.h" - -#endif /* _NodeSetXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h deleted file mode 100644 index 04bceb7d6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NodeXY_H_ -#define _NodeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointXY.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct NodeAttributeSetXY; - -/* NodeXY */ -typedef struct NodeXY { - NodeOffsetPointXY_t delta; - struct NodeAttributeSetXY *attributes; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} NodeXY_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NodeXY; -extern asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1; -extern asn_TYPE_member_t asn_MBR_NodeXY_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "NodeAttributeSetXY.h" - -#endif /* _NodeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h deleted file mode 100644 index 37386edfd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _NumberOfParticipantsInCluster_H_ -#define _NumberOfParticipantsInCluster_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NumberOfParticipantsInCluster { - NumberOfParticipantsInCluster_unavailable = 0, - NumberOfParticipantsInCluster_small = 1, - NumberOfParticipantsInCluster_medium = 2, - NumberOfParticipantsInCluster_large = 3 - /* - * Enumeration is extensible - */ -} e_NumberOfParticipantsInCluster; - -/* NumberOfParticipantsInCluster */ -typedef long NumberOfParticipantsInCluster_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; -extern const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1; -asn_struct_free_f NumberOfParticipantsInCluster_free; -asn_struct_print_f NumberOfParticipantsInCluster_print; -asn_constr_check_f NumberOfParticipantsInCluster_constraint; -ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; -der_type_encoder_f NumberOfParticipantsInCluster_encode_der; -xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; -xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; -oer_type_decoder_f NumberOfParticipantsInCluster_decode_oer; -oer_type_encoder_f NumberOfParticipantsInCluster_encode_oer; -per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; -per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; -per_type_decoder_f NumberOfParticipantsInCluster_decode_aper; -per_type_encoder_f NumberOfParticipantsInCluster_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NumberOfParticipantsInCluster_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h deleted file mode 100644 index 8e4f7ec9d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * 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_r63/OBJECT_IDENTIFIER.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h deleted file mode 100644 index 087c6fda1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _OBJECT_IDENTIFIER_H_ -#define _OBJECT_IDENTIFIER_H_ - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef uint32_t asn_oid_arc_t; -#define ASN_OID_ARC_MAX (~((asn_oid_arc_t)0)) - -typedef ASN__PRIMITIVE_TYPE_t OBJECT_IDENTIFIER_t; - -extern asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER; -extern asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER; - -asn_struct_print_f OBJECT_IDENTIFIER_print; -asn_constr_check_f OBJECT_IDENTIFIER_constraint; -der_type_encoder_f OBJECT_IDENTIFIER_encode_der; -xer_type_decoder_f OBJECT_IDENTIFIER_decode_xer; -xer_type_encoder_f OBJECT_IDENTIFIER_encode_xer; -asn_random_fill_f OBJECT_IDENTIFIER_random_fill; - -#define OBJECT_IDENTIFIER_free ASN__PRIMITIVE_TYPE_free -#define OBJECT_IDENTIFIER_compare OCTET_STRING_compare -#define OBJECT_IDENTIFIER_decode_ber ber_decode_primitive -#define OBJECT_IDENTIFIER_encode_der der_encode_primitive -#define OBJECT_IDENTIFIER_decode_oer oer_decode_primitive -#define OBJECT_IDENTIFIER_encode_oer oer_encode_primitive -#define OBJECT_IDENTIFIER_decode_uper OCTET_STRING_decode_uper -#define OBJECT_IDENTIFIER_encode_uper OCTET_STRING_encode_uper -#define OBJECT_IDENTIFIER_decode_aper OCTET_STRING_decode_aper -#define OBJECT_IDENTIFIER_encode_aper OCTET_STRING_encode_aper - -/********************************** - * Some handy conversion routines * - **********************************/ - -/* - * This function fills an (arcs) array with OBJECT IDENTIFIER arcs - * up to specified (arc_slots) elements. - * - * EXAMPLE: - * void print_arcs(OBJECT_IDENTIFIER_t *oid) { - * asn_oid_arc_t fixed_arcs[10]; // Try with fixed space first - * asn_oid_arc_t *arcs = fixed_arcs; - * size_t arc_slots = sizeof(fixed_arcs)/sizeof(fixed_arcs[0]); // 10 - * ssize_t count; // Real number of arcs. - * int i; - * - * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); - * // If necessary, reallocate arcs array and try again. - * if(count > arc_slots) { - * arc_slots = count; - * arcs = malloc(sizeof(asn_oid_arc_t) * arc_slots); - * if(!arcs) return; - * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); - * assert(count == arc_slots); - * } - * - * // Print the contents of the arcs array. - * for(i = 0; i < count; i++) - * printf("%"PRIu32"\n", arcs[i]); - * - * // Avoid memory leak. - * if(arcs != fixed_arcs) free(arcs); - * } - * - * RETURN VALUES: - * -1/EINVAL: Invalid arguments (oid is missing) - * -1/ERANGE: One or more arcs have value out of array cell type range. - * >=0: Number of arcs contained in the OBJECT IDENTIFIER - * - * WARNING: The function always returns the actual number of arcs, - * even if there is no sufficient (arc_slots) provided. - */ -ssize_t OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *oid, - asn_oid_arc_t *arcs, size_t arc_slots); - -/* - * This functions initializes the OBJECT IDENTIFIER object with - * the given set of arcs. - * The minimum of two arcs must be present; some restrictions apply. - * RETURN VALUES: - * -1/EINVAL: Invalid arguments - * -1/ERANGE: The first two arcs do not conform to ASN.1 restrictions. - * -1/ENOMEM: Memory allocation failed - * 0: The object was initialized with new arcs. - */ -int OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, - const asn_oid_arc_t *arcs, size_t arcs_count); - - -/* - * Parse the OBJECT IDENTIFIER textual representation ("1.3.6.1.4.1.9363"). - * No arc can exceed the (0..ASN_OID_ARC_MAX, which is the same as UINT32_MAX). - * This function is not specific to OBJECT IDENTIFIER, it may be used to parse - * the RELATIVE-OID data, or any other data consisting of dot-separated - * series of numeric values. - * - * If (oid_txt_length == -1), the strlen() will be invoked to determine the - * size of the (oid_text) string. - * - * After return, the optional (opt_oid_text_end) is set to the character after - * the last parsed one. (opt_oid_text_end) is never less than (oid_text). - * - * RETURN VALUES: - * -1: Parse error. - * >= 0: Number of arcs contained in the OBJECT IDENTIFIER. - * - * WARNING: The function always returns the real number of arcs, - * even if there is no sufficient (arc_slots) provided. - * This is useful for (arc_slots) value estimation. - */ -ssize_t OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, - ssize_t oid_txt_length, - asn_oid_arc_t *arcs, size_t arcs_count, - const char **opt_oid_text_end); - -/* - * Internal functions. - * Used by RELATIVE-OID implementation in particular. - */ - -/* - * Retrieve a single arc of size from the (arcbuf) buffer. - * RETURN VALUES: - * -1: Failed to retrieve the value from the (arcbuf). - * >0: Number of bytes consumed from the (arcbuf), <= (arcbuf_len). - */ -ssize_t OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, - size_t arcbuf_len, - asn_oid_arc_t *ret_value); - -/* - * Write the unterminated arc value into the (arcbuf) which has the size at - * least (arcbuf_len). - * RETURN VALUES: - * -1: (arcbuf_len) size is not sufficient to write the value. - * : Number of bytes appended to the arcbuf (<= arcbuf_len). - */ -ssize_t OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t arc_value); - -#ifdef __cplusplus -} -#endif - -#endif /* _OBJECT_IDENTIFIER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h deleted file mode 100644 index c2f8baed1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h +++ /dev/null @@ -1,102 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _OCTET_STRING_H_ -#define _OCTET_STRING_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct OCTET_STRING { - uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ - size_t size; /* Size of the buffer */ - - asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ -} OCTET_STRING_t; - -extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; -extern asn_TYPE_operation_t asn_OP_OCTET_STRING; - -asn_struct_free_f OCTET_STRING_free; -asn_struct_print_f OCTET_STRING_print; -asn_struct_print_f OCTET_STRING_print_utf8; -asn_struct_compare_f OCTET_STRING_compare; -ber_type_decoder_f OCTET_STRING_decode_ber; -der_type_encoder_f OCTET_STRING_encode_der; -xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ -xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ -xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ -xer_type_encoder_f OCTET_STRING_encode_xer; -xer_type_encoder_f OCTET_STRING_encode_xer_utf8; -oer_type_decoder_f OCTET_STRING_decode_oer; -oer_type_encoder_f OCTET_STRING_encode_oer; -per_type_decoder_f OCTET_STRING_decode_uper; -per_type_encoder_f OCTET_STRING_encode_uper; -per_type_decoder_f OCTET_STRING_decode_aper; -per_type_encoder_f OCTET_STRING_encode_aper; -asn_random_fill_f OCTET_STRING_random_fill; - -#define OCTET_STRING_constraint asn_generic_no_constraint -#define OCTET_STRING_decode_xer OCTET_STRING_decode_xer_hex - -/****************************** - * Handy conversion routines. * - ******************************/ - -/* - * This function clears the previous value of the OCTET STRING (if any) - * and then allocates a new memory with the specified content (str/size). - * If size = -1, the size of the original string will be determined - * using strlen(str). - * If str equals to NULL, the function will silently clear the - * current contents of the OCTET STRING. - * Returns 0 if it was possible to perform operation, -1 otherwise. - */ -int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); - -/* Handy conversion from the C string into the OCTET STRING. */ -#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) - -/* - * Allocate and fill the new OCTET STRING and return a pointer to the newly - * allocated object. NULL is permitted in str: the function will just allocate - * empty OCTET STRING. - */ -OCTET_STRING_t *OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, - const char *str, int size); - -/**************************** - * Internally useful stuff. * - ****************************/ - -typedef struct asn_OCTET_STRING_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the structure */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - enum asn_OS_Subvariant { - ASN_OSUBV_ANY, /* The open type (ANY) */ - ASN_OSUBV_BIT, /* BIT STRING */ - ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ - ASN_OSUBV_U16, /* 16-bit character (BMPString) */ - ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ - } subvariant; -} asn_OCTET_STRING_specifics_t; - -extern asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs; - -size_t OCTET_STRING_random_length_constrained( - const asn_TYPE_descriptor_t *, const asn_encoding_constraints_t *, - size_t max_length); - -#ifdef __cplusplus -} -#endif - -#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h deleted file mode 100644 index b0d023c1f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h +++ /dev/null @@ -1,77 +0,0 @@ -/*- - * Copyright (c) 2017-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_OPEN_TYPE_H -#define ASN_OPEN_TYPE_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -#define OPEN_TYPE_free CHOICE_free -#define OPEN_TYPE_print CHOICE_print -#define OPEN_TYPE_compare CHOICE_compare -#define OPEN_TYPE_constraint CHOICE_constraint -#define OPEN_TYPE_decode_ber NULL -#define OPEN_TYPE_encode_der CHOICE_encode_der -#define OPEN_TYPE_decode_xer NULL -#define OPEN_TYPE_encode_xer CHOICE_encode_xer -#define OPEN_TYPE_decode_oer NULL -#define OPEN_TYPE_encode_oer CHOICE_encode_oer -#define OPEN_TYPE_decode_uper NULL -#define OPEN_TYPE_decode_aper NULL - -extern asn_TYPE_operation_t asn_OP_OPEN_TYPE; - -/* - * Decode an Open Type which is potentially constraiend - * by the other members of the parent structure. - */ -asn_dec_rval_t OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - const void *ptr, size_t size); - -asn_dec_rval_t OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - const void *ptr, size_t size); - -asn_dec_rval_t OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - asn_TYPE_member_t *element, const void *ptr, - size_t size); - -asn_dec_rval_t OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - asn_per_data_t *pd); - -asn_dec_rval_t OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *parent_type, - void *parent_structure, - const asn_TYPE_member_t *element, - asn_per_data_t *pd); - -asn_enc_rval_t OPEN_TYPE_encode_uper( - const asn_TYPE_descriptor_t *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); - -asn_enc_rval_t OPEN_TYPE_encode_aper( - const asn_TYPE_descriptor_t *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_OPEN_TYPE_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h deleted file mode 100644 index 9001f36d7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ObjectCount_H_ -#define _ObjectCount_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObjectCount */ -typedef long ObjectCount_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObjectCount_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; -asn_struct_free_f ObjectCount_free; -asn_struct_print_f ObjectCount_print; -asn_constr_check_f ObjectCount_constraint; -ber_type_decoder_f ObjectCount_decode_ber; -der_type_encoder_f ObjectCount_encode_der; -xer_type_decoder_f ObjectCount_decode_xer; -xer_type_encoder_f ObjectCount_encode_xer; -oer_type_decoder_f ObjectCount_decode_oer; -oer_type_encoder_f ObjectCount_encode_oer; -per_type_decoder_f ObjectCount_decode_uper; -per_type_encoder_f ObjectCount_encode_uper; -per_type_decoder_f ObjectCount_decode_aper; -per_type_encoder_f ObjectCount_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectCount_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h deleted file mode 100644 index fa1c1fcc0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _ObjectDescriptor_H_ -#define _ObjectDescriptor_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef GraphicString_t ObjectDescriptor_t; /* Implemented via GraphicString */ - -extern asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor; -extern asn_TYPE_operation_t asn_OP_ObjectDescriptor; - -#define ObjectDescriptor_free OCTET_STRING_free -#define ObjectDescriptor_print OCTET_STRING_print_utf8 -#define ObjectDescriptor_constraint asn_generic_unknown_constraint -#define ObjectDescriptor_decode_ber OCTET_STRING_decode_ber -#define ObjectDescriptor_encode_der OCTET_STRING_encode_der -#define ObjectDescriptor_decode_xer OCTET_STRING_decode_xer_utf8 -#define ObjectDescriptor_encode_xer OCTET_STRING_encode_xer_utf8 -#define ObjectDescriptor_decode_uper OCTET_STRING_decode_uper -#define ObjectDescriptor_encode_uper OCTET_STRING_encode_uper -#define ObjectDescriptor_decode_aper OCTET_STRING_decode_aper -#define ObjectDescriptor_encode_aper OCTET_STRING_encode_aper - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectDescriptor_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h deleted file mode 100644 index db97608e2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ObjectDistance_H_ -#define _ObjectDistance_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObjectDistance */ -typedef long ObjectDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObjectDistance; -asn_struct_free_f ObjectDistance_free; -asn_struct_print_f ObjectDistance_print; -asn_constr_check_f ObjectDistance_constraint; -ber_type_decoder_f ObjectDistance_decode_ber; -der_type_encoder_f ObjectDistance_encode_der; -xer_type_decoder_f ObjectDistance_decode_xer; -xer_type_encoder_f ObjectDistance_encode_xer; -oer_type_decoder_f ObjectDistance_decode_oer; -oer_type_encoder_f ObjectDistance_encode_oer; -per_type_decoder_f ObjectDistance_decode_uper; -per_type_encoder_f ObjectDistance_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectDistance_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h deleted file mode 100644 index 3b0a53b78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ObjectID_H_ -#define _ObjectID_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObjectID */ -typedef long ObjectID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObjectID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObjectID; -asn_struct_free_f ObjectID_free; -asn_struct_print_f ObjectID_print; -asn_constr_check_f ObjectID_constraint; -ber_type_decoder_f ObjectID_decode_ber; -der_type_encoder_f ObjectID_encode_der; -xer_type_decoder_f ObjectID_decode_xer; -xer_type_encoder_f ObjectID_encode_xer; -oer_type_decoder_f ObjectID_decode_oer; -oer_type_encoder_f ObjectID_encode_oer; -per_type_decoder_f ObjectID_decode_uper; -per_type_encoder_f ObjectID_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectID_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h deleted file mode 100644 index 52837430b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ObjectType_H_ -#define _ObjectType_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ObjectType { - ObjectType_unknown = 0, - ObjectType_vehicle = 1, - ObjectType_vru = 2, - ObjectType_animal = 3 - /* - * Enumeration is extensible - */ -} e_ObjectType; - -/* ObjectType */ -typedef long ObjectType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObjectType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObjectType; -extern const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1; -asn_struct_free_f ObjectType_free; -asn_struct_print_f ObjectType_print; -asn_constr_check_f ObjectType_constraint; -ber_type_decoder_f ObjectType_decode_ber; -der_type_encoder_f ObjectType_encode_der; -xer_type_decoder_f ObjectType_decode_xer; -xer_type_encoder_f ObjectType_encode_xer; -oer_type_decoder_f ObjectType_decode_oer; -oer_type_encoder_f ObjectType_encode_oer; -per_type_decoder_f ObjectType_decode_uper; -per_type_encoder_f ObjectType_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObjectType_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h deleted file mode 100644 index 904897ddc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ObstacleDetection_H_ -#define _ObstacleDetection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ObstacleDistance.h" -#include "ObstacleDirection.h" -#include "ITIScodes.h" -#include "GenericLocations.h" -#include "DDateTime.h" -#include "VerticalAccelerationThreshold.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDetection */ -typedef struct ObstacleDetection { - ObstacleDistance_t obDist; - ObstacleDirection_t obDirect; - ITIScodes_t *description; /* OPTIONAL */ - GenericLocations_t *locationDetails; /* OPTIONAL */ - DDateTime_t dateTime; - VerticalAccelerationThreshold_t *vertEvent; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ObstacleDetection_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDetection; -extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1; -extern asn_TYPE_member_t asn_MBR_ObstacleDetection_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDetection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h deleted file mode 100644 index df1dba1fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ObstacleDirection_H_ -#define _ObstacleDirection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_Angle.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDirection */ -typedef DSRC_Angle_t ObstacleDirection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; -asn_struct_free_f ObstacleDirection_free; -asn_struct_print_f ObstacleDirection_print; -asn_constr_check_f ObstacleDirection_constraint; -ber_type_decoder_f ObstacleDirection_decode_ber; -der_type_encoder_f ObstacleDirection_encode_der; -xer_type_decoder_f ObstacleDirection_decode_xer; -xer_type_encoder_f ObstacleDirection_encode_xer; -oer_type_decoder_f ObstacleDirection_decode_oer; -oer_type_encoder_f ObstacleDirection_encode_oer; -per_type_decoder_f ObstacleDirection_decode_uper; -per_type_encoder_f ObstacleDirection_encode_uper; -per_type_decoder_f ObstacleDirection_decode_aper; -per_type_encoder_f ObstacleDirection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDirection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h deleted file mode 100644 index 3d4946269..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ObstacleDistance_H_ -#define _ObstacleDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleDistance */ -typedef long ObstacleDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; -asn_struct_free_f ObstacleDistance_free; -asn_struct_print_f ObstacleDistance_print; -asn_constr_check_f ObstacleDistance_constraint; -ber_type_decoder_f ObstacleDistance_decode_ber; -der_type_encoder_f ObstacleDistance_encode_der; -xer_type_decoder_f ObstacleDistance_decode_xer; -xer_type_encoder_f ObstacleDistance_encode_xer; -oer_type_decoder_f ObstacleDistance_decode_oer; -oer_type_encoder_f ObstacleDistance_encode_oer; -per_type_decoder_f ObstacleDistance_decode_uper; -per_type_encoder_f ObstacleDistance_encode_uper; -per_type_decoder_f ObstacleDistance_decode_aper; -per_type_encoder_f ObstacleDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h deleted file mode 100644 index 12206d92c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ObstacleSize_H_ -#define _ObstacleSize_H_ - - -#include - -/* Including external dependencies */ -#include "SizeValue.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleSize */ -typedef struct ObstacleSize { - SizeValue_t width; - SizeValue_t length; - SizeValue_t *height /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ObstacleSize_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleSize; -extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1; -extern asn_TYPE_member_t asn_MBR_ObstacleSize_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleSize_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h deleted file mode 100644 index 1ef36fbc5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _ObstacleSizeConfidence_H_ -#define _ObstacleSizeConfidence_H_ - - -#include - -/* Including external dependencies */ -#include "SizeValueConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ObstacleSizeConfidence */ -typedef struct ObstacleSizeConfidence { - SizeValueConfidence_t widthConfidence; - SizeValueConfidence_t lengthConfidence; - SizeValueConfidence_t *heightConfidence /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ObstacleSizeConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ObstacleSizeConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h deleted file mode 100644 index 1a603757e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B09_H_ -#define _Offset_B09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B09 */ -typedef long Offset_B09_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B09_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B09; -asn_struct_free_f Offset_B09_free; -asn_struct_print_f Offset_B09_print; -asn_constr_check_f Offset_B09_constraint; -ber_type_decoder_f Offset_B09_decode_ber; -der_type_encoder_f Offset_B09_encode_der; -xer_type_decoder_f Offset_B09_decode_xer; -xer_type_encoder_f Offset_B09_encode_xer; -oer_type_decoder_f Offset_B09_decode_oer; -oer_type_encoder_f Offset_B09_encode_oer; -per_type_decoder_f Offset_B09_decode_uper; -per_type_encoder_f Offset_B09_encode_uper; -per_type_decoder_f Offset_B09_decode_aper; -per_type_encoder_f Offset_B09_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h deleted file mode 100644 index 3deab0c89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B10_H_ -#define _Offset_B10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B10 */ -typedef long Offset_B10_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B10_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; -asn_struct_free_f Offset_B10_free; -asn_struct_print_f Offset_B10_print; -asn_constr_check_f Offset_B10_constraint; -ber_type_decoder_f Offset_B10_decode_ber; -der_type_encoder_f Offset_B10_encode_der; -xer_type_decoder_f Offset_B10_decode_xer; -xer_type_encoder_f Offset_B10_encode_xer; -oer_type_decoder_f Offset_B10_decode_oer; -oer_type_encoder_f Offset_B10_encode_oer; -per_type_decoder_f Offset_B10_decode_uper; -per_type_encoder_f Offset_B10_encode_uper; -per_type_decoder_f Offset_B10_decode_aper; -per_type_encoder_f Offset_B10_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h deleted file mode 100644 index 8eaeb1a05..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B11_H_ -#define _Offset_B11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B11 */ -typedef long Offset_B11_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B11_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; -asn_struct_free_f Offset_B11_free; -asn_struct_print_f Offset_B11_print; -asn_constr_check_f Offset_B11_constraint; -ber_type_decoder_f Offset_B11_decode_ber; -der_type_encoder_f Offset_B11_encode_der; -xer_type_decoder_f Offset_B11_decode_xer; -xer_type_encoder_f Offset_B11_encode_xer; -oer_type_decoder_f Offset_B11_decode_oer; -oer_type_encoder_f Offset_B11_encode_oer; -per_type_decoder_f Offset_B11_decode_uper; -per_type_encoder_f Offset_B11_encode_uper; -per_type_decoder_f Offset_B11_decode_aper; -per_type_encoder_f Offset_B11_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h deleted file mode 100644 index 259d798e3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B12_H_ -#define _Offset_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B12 */ -typedef long Offset_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; -asn_struct_free_f Offset_B12_free; -asn_struct_print_f Offset_B12_print; -asn_constr_check_f Offset_B12_constraint; -ber_type_decoder_f Offset_B12_decode_ber; -der_type_encoder_f Offset_B12_encode_der; -xer_type_decoder_f Offset_B12_decode_xer; -xer_type_encoder_f Offset_B12_encode_xer; -oer_type_decoder_f Offset_B12_decode_oer; -oer_type_encoder_f Offset_B12_encode_oer; -per_type_decoder_f Offset_B12_decode_uper; -per_type_encoder_f Offset_B12_encode_uper; -per_type_decoder_f Offset_B12_decode_aper; -per_type_encoder_f Offset_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h deleted file mode 100644 index d4136e536..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B13_H_ -#define _Offset_B13_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B13 */ -typedef long Offset_B13_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B13_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; -asn_struct_free_f Offset_B13_free; -asn_struct_print_f Offset_B13_print; -asn_constr_check_f Offset_B13_constraint; -ber_type_decoder_f Offset_B13_decode_ber; -der_type_encoder_f Offset_B13_encode_der; -xer_type_decoder_f Offset_B13_decode_xer; -xer_type_encoder_f Offset_B13_encode_xer; -oer_type_decoder_f Offset_B13_decode_oer; -oer_type_encoder_f Offset_B13_encode_oer; -per_type_decoder_f Offset_B13_decode_uper; -per_type_encoder_f Offset_B13_encode_uper; -per_type_decoder_f Offset_B13_decode_aper; -per_type_encoder_f Offset_B13_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B13_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h deleted file mode 100644 index 2654bb851..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B14_H_ -#define _Offset_B14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B14 */ -typedef long Offset_B14_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B14_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; -asn_struct_free_f Offset_B14_free; -asn_struct_print_f Offset_B14_print; -asn_constr_check_f Offset_B14_constraint; -ber_type_decoder_f Offset_B14_decode_ber; -der_type_encoder_f Offset_B14_encode_der; -xer_type_decoder_f Offset_B14_decode_xer; -xer_type_encoder_f Offset_B14_encode_xer; -oer_type_decoder_f Offset_B14_decode_oer; -oer_type_encoder_f Offset_B14_encode_oer; -per_type_decoder_f Offset_B14_decode_uper; -per_type_encoder_f Offset_B14_encode_uper; -per_type_decoder_f Offset_B14_decode_aper; -per_type_encoder_f Offset_B14_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h deleted file mode 100644 index 986245f1e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Offset_B16_H_ -#define _Offset_B16_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Offset-B16 */ -typedef long Offset_B16_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Offset_B16_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; -asn_struct_free_f Offset_B16_free; -asn_struct_print_f Offset_B16_print; -asn_constr_check_f Offset_B16_constraint; -ber_type_decoder_f Offset_B16_decode_ber; -der_type_encoder_f Offset_B16_encode_der; -xer_type_decoder_f Offset_B16_decode_xer; -xer_type_encoder_f Offset_B16_encode_xer; -oer_type_decoder_f Offset_B16_decode_oer; -oer_type_encoder_f Offset_B16_encode_oer; -per_type_decoder_f Offset_B16_decode_uper; -per_type_encoder_f Offset_B16_encode_uper; -per_type_decoder_f Offset_B16_decode_aper; -per_type_encoder_f Offset_B16_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Offset_B16_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h deleted file mode 100644 index 07e4ab338..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B12_H_ -#define _OffsetLL_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B12 */ -typedef long OffsetLL_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12; -asn_struct_free_f OffsetLL_B12_free; -asn_struct_print_f OffsetLL_B12_print; -asn_constr_check_f OffsetLL_B12_constraint; -ber_type_decoder_f OffsetLL_B12_decode_ber; -der_type_encoder_f OffsetLL_B12_encode_der; -xer_type_decoder_f OffsetLL_B12_decode_xer; -xer_type_encoder_f OffsetLL_B12_encode_xer; -oer_type_decoder_f OffsetLL_B12_decode_oer; -oer_type_encoder_f OffsetLL_B12_encode_oer; -per_type_decoder_f OffsetLL_B12_decode_uper; -per_type_encoder_f OffsetLL_B12_encode_uper; -per_type_decoder_f OffsetLL_B12_decode_aper; -per_type_encoder_f OffsetLL_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h deleted file mode 100644 index 3640f0308..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B14_H_ -#define _OffsetLL_B14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B14 */ -typedef long OffsetLL_B14_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14; -asn_struct_free_f OffsetLL_B14_free; -asn_struct_print_f OffsetLL_B14_print; -asn_constr_check_f OffsetLL_B14_constraint; -ber_type_decoder_f OffsetLL_B14_decode_ber; -der_type_encoder_f OffsetLL_B14_encode_der; -xer_type_decoder_f OffsetLL_B14_decode_xer; -xer_type_encoder_f OffsetLL_B14_encode_xer; -oer_type_decoder_f OffsetLL_B14_decode_oer; -oer_type_encoder_f OffsetLL_B14_encode_oer; -per_type_decoder_f OffsetLL_B14_decode_uper; -per_type_encoder_f OffsetLL_B14_encode_uper; -per_type_decoder_f OffsetLL_B14_decode_aper; -per_type_encoder_f OffsetLL_B14_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h deleted file mode 100644 index abf2dce98..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B16_H_ -#define _OffsetLL_B16_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B16 */ -typedef long OffsetLL_B16_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16; -asn_struct_free_f OffsetLL_B16_free; -asn_struct_print_f OffsetLL_B16_print; -asn_constr_check_f OffsetLL_B16_constraint; -ber_type_decoder_f OffsetLL_B16_decode_ber; -der_type_encoder_f OffsetLL_B16_encode_der; -xer_type_decoder_f OffsetLL_B16_decode_xer; -xer_type_encoder_f OffsetLL_B16_encode_xer; -oer_type_decoder_f OffsetLL_B16_decode_oer; -oer_type_encoder_f OffsetLL_B16_encode_oer; -per_type_decoder_f OffsetLL_B16_decode_uper; -per_type_encoder_f OffsetLL_B16_encode_uper; -per_type_decoder_f OffsetLL_B16_decode_aper; -per_type_encoder_f OffsetLL_B16_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B16_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h deleted file mode 100644 index e5d5521f5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B18_H_ -#define _OffsetLL_B18_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B18 */ -typedef long OffsetLL_B18_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18; -asn_struct_free_f OffsetLL_B18_free; -asn_struct_print_f OffsetLL_B18_print; -asn_constr_check_f OffsetLL_B18_constraint; -ber_type_decoder_f OffsetLL_B18_decode_ber; -der_type_encoder_f OffsetLL_B18_encode_der; -xer_type_decoder_f OffsetLL_B18_decode_xer; -xer_type_encoder_f OffsetLL_B18_encode_xer; -oer_type_decoder_f OffsetLL_B18_decode_oer; -oer_type_encoder_f OffsetLL_B18_encode_oer; -per_type_decoder_f OffsetLL_B18_decode_uper; -per_type_encoder_f OffsetLL_B18_encode_uper; -per_type_decoder_f OffsetLL_B18_decode_aper; -per_type_encoder_f OffsetLL_B18_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B18_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h deleted file mode 100644 index 8da0ed686..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B22_H_ -#define _OffsetLL_B22_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B22 */ -typedef long OffsetLL_B22_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22; -asn_struct_free_f OffsetLL_B22_free; -asn_struct_print_f OffsetLL_B22_print; -asn_constr_check_f OffsetLL_B22_constraint; -ber_type_decoder_f OffsetLL_B22_decode_ber; -der_type_encoder_f OffsetLL_B22_encode_der; -xer_type_decoder_f OffsetLL_B22_decode_xer; -xer_type_encoder_f OffsetLL_B22_encode_xer; -oer_type_decoder_f OffsetLL_B22_decode_oer; -oer_type_encoder_f OffsetLL_B22_encode_oer; -per_type_decoder_f OffsetLL_B22_decode_uper; -per_type_encoder_f OffsetLL_B22_encode_uper; -per_type_decoder_f OffsetLL_B22_decode_aper; -per_type_encoder_f OffsetLL_B22_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B22_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h deleted file mode 100644 index 8bef6fe3a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetLL_B24_H_ -#define _OffsetLL_B24_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetLL-B24 */ -typedef long OffsetLL_B24_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24; -asn_struct_free_f OffsetLL_B24_free; -asn_struct_print_f OffsetLL_B24_print; -asn_constr_check_f OffsetLL_B24_constraint; -ber_type_decoder_f OffsetLL_B24_decode_ber; -der_type_encoder_f OffsetLL_B24_encode_der; -xer_type_decoder_f OffsetLL_B24_decode_xer; -xer_type_encoder_f OffsetLL_B24_encode_xer; -oer_type_decoder_f OffsetLL_B24_decode_oer; -oer_type_encoder_f OffsetLL_B24_encode_oer; -per_type_decoder_f OffsetLL_B24_decode_uper; -per_type_encoder_f OffsetLL_B24_encode_uper; -per_type_decoder_f OffsetLL_B24_decode_aper; -per_type_encoder_f OffsetLL_B24_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetLL_B24_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h deleted file mode 100644 index d46ced7dc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetPoint_H_ -#define _OffsetPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OffsetPoint */ -typedef struct OffsetPoint { - long deltax; - long deltay; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OffsetPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OffsetPoint; -extern asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_OffsetPoint_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h deleted file mode 100644 index 5e4ba8bd4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OffsetSystem_H_ -#define _OffsetSystem_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Zoom.h" -#include "NodeListXY.h" -#include "NodeListLL.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum OffsetSystem__offset_PR { - OffsetSystem__offset_PR_NOTHING, /* No components present */ - OffsetSystem__offset_PR_xy, - OffsetSystem__offset_PR_ll -} OffsetSystem__offset_PR; - -/* OffsetSystem */ -typedef struct OffsetSystem { - Zoom_t *scale; /* OPTIONAL */ - struct OffsetSystem__offset { - OffsetSystem__offset_PR present; - union OffsetSystem__offset_u { - NodeListXY_t xy; - NodeListLL_t ll; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offset; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OffsetSystem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OffsetSystem; -extern asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1; -extern asn_TYPE_member_t asn_MBR_OffsetSystem_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _OffsetSystem_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h deleted file mode 100644 index 0065e65aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _OverlayLaneList_H_ -#define _OverlayLaneList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* OverlayLaneList */ -typedef struct OverlayLaneList { - A_SEQUENCE_OF(LaneID_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OverlayLaneList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; -extern asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1; -extern asn_TYPE_member_t asn_MBR_OverlayLaneList_1[1]; -extern asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _OverlayLaneList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h deleted file mode 100644 index 8676fcc89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _PartII_Id_H_ -#define _PartII_Id_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PartII-Id */ -typedef long PartII_Id_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PartII_Id_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PartII_Id; -asn_struct_free_f PartII_Id_free; -asn_struct_print_f PartII_Id_print; -asn_constr_check_f PartII_Id_constraint; -ber_type_decoder_f PartII_Id_decode_ber; -der_type_encoder_f PartII_Id_encode_der; -xer_type_decoder_f PartII_Id_decode_xer; -xer_type_encoder_f PartII_Id_encode_xer; -oer_type_decoder_f PartII_Id_decode_oer; -oer_type_encoder_f PartII_Id_encode_oer; -per_type_decoder_f PartII_Id_decode_uper; -per_type_encoder_f PartII_Id_encode_uper; -per_type_decoder_f PartII_Id_decode_aper; -per_type_encoder_f PartII_Id_encode_aper; -#define PartII_Id_vehicleSafetyExt ((PartII_Id_t)0) -#define PartII_Id_specialVehicleExt ((PartII_Id_t)1) -#define PartII_Id_supplementalVehicleExt ((PartII_Id_t)2) - -#ifdef __cplusplus -} -#endif - -#endif /* _PartII_Id_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h deleted file mode 100644 index 3a853e3df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#ifndef _PartIIcontent_H_ -#define _PartIIcontent_H_ - - -#include - -/* Including external dependencies */ -#include "PartII-Id.h" -#include -#include -#include "VehicleSafetyExtensions.h" -#include "SpecialVehicleExtensions.h" -#include "SupplementalVehicleExtensions.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum BSMpartIIExtension__partII_Value_PR { - BSMpartIIExtension__partII_Value_PR_NOTHING, /* No components present */ - BSMpartIIExtension__partII_Value_PR_VehicleSafetyExtensions, - BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions, - BSMpartIIExtension__partII_Value_PR_SupplementalVehicleExtensions -} BSMpartIIExtension__partII_Value_PR; - -/* PartIIcontent */ -typedef struct BSMpartIIExtension { - PartII_Id_t partII_Id; - struct BSMpartIIExtension__partII_Value { - BSMpartIIExtension__partII_Value_PR present; - union BSMpartIIExtension__partII_Value_u { - VehicleSafetyExtensions_t VehicleSafetyExtensions; - SpecialVehicleExtensions_t SpecialVehicleExtensions; - SupplementalVehicleExtensions_t SupplementalVehicleExtensions; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } partII_Value; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} BSMpartIIExtension_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension; -extern asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1; -extern asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PartIIcontent_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h deleted file mode 100644 index abf978c58..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PathHistory_H_ -#define _PathHistory_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GNSSstatus.h" -#include "PathHistoryPointList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; - -/* PathHistory */ -typedef struct PathHistory { - struct FullPositionVector *initialPosition; /* OPTIONAL */ - GNSSstatus_t *currGNSSstatus; /* OPTIONAL */ - PathHistoryPointList_t crumbData; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistory_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistory; -extern asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistory_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" - -#endif /* _PathHistory_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h deleted file mode 100644 index 733b8f2de..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PathHistoryPoint_H_ -#define _PathHistoryPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B18.h" -#include "VertOffset-B12.h" -#include "TimeOffset.h" -#include "Speed.h" -#include "CoarseHeading.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PositionalAccuracy; - -/* PathHistoryPoint */ -typedef struct PathHistoryPoint { - OffsetLL_B18_t latOffset; - OffsetLL_B18_t lonOffset; - VertOffset_B12_t elevationOffset; - TimeOffset_t timeOffset; - Speed_t *speed; /* OPTIONAL */ - struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ - CoarseHeading_t *heading; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistoryPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint; -extern asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PositionalAccuracy.h" - -#endif /* _PathHistoryPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h deleted file mode 100644 index 280db6a17..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PathHistoryPointList_H_ -#define _PathHistoryPointList_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 PathHistoryPoint; - -/* PathHistoryPointList */ -typedef struct PathHistoryPointList { - A_SEQUENCE_OF(struct PathHistoryPoint) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathHistoryPointList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList; -extern asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1; -extern asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[1]; -extern asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PathHistoryPoint.h" - -#endif /* _PathHistoryPointList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h deleted file mode 100644 index 8f92a2e4e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PathNode_H_ -#define _PathNode_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathNode */ -typedef struct PathNode { - long x; - long y; - long *z; /* OPTIONAL */ - long *width; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathNode_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathNode; -extern asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1; -extern asn_TYPE_member_t asn_MBR_PathNode_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathNode_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h deleted file mode 100644 index 695ca4341..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PathPrediction_H_ -#define _PathPrediction_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RadiusOfCurvature.h" -#include "Confidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PathPrediction */ -typedef struct PathPrediction { - RadiusOfCurvature_t radiusOfCurve; - Confidence_t confidence; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PathPrediction_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; -extern asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1; -extern asn_TYPE_member_t asn_MBR_PathPrediction_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PathPrediction_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h deleted file mode 100644 index e8a266310..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PayloadData_H_ -#define _PayloadData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PayloadData */ -typedef OCTET_STRING_t PayloadData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PayloadData; -asn_struct_free_f PayloadData_free; -asn_struct_print_f PayloadData_print; -asn_constr_check_f PayloadData_constraint; -ber_type_decoder_f PayloadData_decode_ber; -der_type_encoder_f PayloadData_encode_der; -xer_type_decoder_f PayloadData_decode_xer; -xer_type_encoder_f PayloadData_encode_xer; -oer_type_decoder_f PayloadData_decode_oer; -oer_type_encoder_f PayloadData_encode_oer; -per_type_decoder_f PayloadData_decode_uper; -per_type_encoder_f PayloadData_encode_uper; -per_type_decoder_f PayloadData_decode_aper; -per_type_encoder_f PayloadData_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PayloadData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h deleted file mode 100644 index 958c56db1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PedestrianBicycleDetect_H_ -#define _PedestrianBicycleDetect_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PedestrianBicycleDetect */ -typedef BOOLEAN_t PedestrianBicycleDetect_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; -asn_struct_free_f PedestrianBicycleDetect_free; -asn_struct_print_f PedestrianBicycleDetect_print; -asn_constr_check_f PedestrianBicycleDetect_constraint; -ber_type_decoder_f PedestrianBicycleDetect_decode_ber; -der_type_encoder_f PedestrianBicycleDetect_encode_der; -xer_type_decoder_f PedestrianBicycleDetect_decode_xer; -xer_type_encoder_f PedestrianBicycleDetect_encode_xer; -oer_type_decoder_f PedestrianBicycleDetect_decode_oer; -oer_type_encoder_f PedestrianBicycleDetect_encode_oer; -per_type_decoder_f PedestrianBicycleDetect_decode_uper; -per_type_encoder_f PedestrianBicycleDetect_encode_uper; -per_type_decoder_f PedestrianBicycleDetect_decode_aper; -per_type_encoder_f PedestrianBicycleDetect_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PedestrianBicycleDetect_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h deleted file mode 100644 index 877c1d4fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalAssistive_H_ -#define _PersonalAssistive_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalAssistive { - PersonalAssistive_unavailable = 0, - PersonalAssistive_otherType = 1, - PersonalAssistive_vision = 2, - PersonalAssistive_hearing = 3, - PersonalAssistive_movement = 4, - PersonalAssistive_cognition = 5 -} e_PersonalAssistive; - -/* PersonalAssistive */ -typedef BIT_STRING_t PersonalAssistive_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; -asn_struct_free_f PersonalAssistive_free; -asn_struct_print_f PersonalAssistive_print; -asn_constr_check_f PersonalAssistive_constraint; -ber_type_decoder_f PersonalAssistive_decode_ber; -der_type_encoder_f PersonalAssistive_encode_der; -xer_type_decoder_f PersonalAssistive_decode_xer; -xer_type_encoder_f PersonalAssistive_encode_xer; -oer_type_decoder_f PersonalAssistive_decode_oer; -oer_type_encoder_f PersonalAssistive_encode_oer; -per_type_decoder_f PersonalAssistive_decode_uper; -per_type_encoder_f PersonalAssistive_encode_uper; -per_type_decoder_f PersonalAssistive_decode_aper; -per_type_encoder_f PersonalAssistive_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalAssistive_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h deleted file mode 100644 index 6d65f75d1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalClusterRadius_H_ -#define _PersonalClusterRadius_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalClusterRadius */ -typedef long PersonalClusterRadius_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; -asn_struct_free_f PersonalClusterRadius_free; -asn_struct_print_f PersonalClusterRadius_print; -asn_constr_check_f PersonalClusterRadius_constraint; -ber_type_decoder_f PersonalClusterRadius_decode_ber; -der_type_encoder_f PersonalClusterRadius_encode_der; -xer_type_decoder_f PersonalClusterRadius_decode_xer; -xer_type_encoder_f PersonalClusterRadius_encode_xer; -oer_type_decoder_f PersonalClusterRadius_decode_oer; -oer_type_encoder_f PersonalClusterRadius_encode_oer; -per_type_decoder_f PersonalClusterRadius_decode_uper; -per_type_encoder_f PersonalClusterRadius_encode_uper; -per_type_decoder_f PersonalClusterRadius_decode_aper; -per_type_encoder_f PersonalClusterRadius_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalClusterRadius_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h deleted file mode 100644 index e617106f2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalCrossingInProgress_H_ -#define _PersonalCrossingInProgress_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingInProgress */ -typedef BOOLEAN_t PersonalCrossingInProgress_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; -asn_struct_free_f PersonalCrossingInProgress_free; -asn_struct_print_f PersonalCrossingInProgress_print; -asn_constr_check_f PersonalCrossingInProgress_constraint; -ber_type_decoder_f PersonalCrossingInProgress_decode_ber; -der_type_encoder_f PersonalCrossingInProgress_encode_der; -xer_type_decoder_f PersonalCrossingInProgress_decode_xer; -xer_type_encoder_f PersonalCrossingInProgress_encode_xer; -oer_type_decoder_f PersonalCrossingInProgress_decode_oer; -oer_type_encoder_f PersonalCrossingInProgress_encode_oer; -per_type_decoder_f PersonalCrossingInProgress_decode_uper; -per_type_encoder_f PersonalCrossingInProgress_encode_uper; -per_type_decoder_f PersonalCrossingInProgress_decode_aper; -per_type_encoder_f PersonalCrossingInProgress_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingInProgress_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h deleted file mode 100644 index d1b6635d2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalCrossingRequest_H_ -#define _PersonalCrossingRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PersonalCrossingRequest */ -typedef BOOLEAN_t PersonalCrossingRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; -asn_struct_free_f PersonalCrossingRequest_free; -asn_struct_print_f PersonalCrossingRequest_print; -asn_constr_check_f PersonalCrossingRequest_constraint; -ber_type_decoder_f PersonalCrossingRequest_decode_ber; -der_type_encoder_f PersonalCrossingRequest_encode_der; -xer_type_decoder_f PersonalCrossingRequest_decode_xer; -xer_type_encoder_f PersonalCrossingRequest_encode_xer; -oer_type_decoder_f PersonalCrossingRequest_decode_oer; -oer_type_encoder_f PersonalCrossingRequest_encode_oer; -per_type_decoder_f PersonalCrossingRequest_decode_uper; -per_type_encoder_f PersonalCrossingRequest_encode_uper; -per_type_decoder_f PersonalCrossingRequest_decode_aper; -per_type_encoder_f PersonalCrossingRequest_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalCrossingRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h deleted file mode 100644 index d153b1f84..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalDeviceUsageState_H_ -#define _PersonalDeviceUsageState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUsageState { - PersonalDeviceUsageState_unavailable = 0, - PersonalDeviceUsageState_other = 1, - PersonalDeviceUsageState_idle = 2, - PersonalDeviceUsageState_listeningToAudio = 3, - PersonalDeviceUsageState_typing = 4, - PersonalDeviceUsageState_calling = 5, - PersonalDeviceUsageState_playingGames = 6, - PersonalDeviceUsageState_reading = 7, - PersonalDeviceUsageState_viewing = 8 -} e_PersonalDeviceUsageState; - -/* PersonalDeviceUsageState */ -typedef BIT_STRING_t PersonalDeviceUsageState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; -asn_struct_free_f PersonalDeviceUsageState_free; -asn_struct_print_f PersonalDeviceUsageState_print; -asn_constr_check_f PersonalDeviceUsageState_constraint; -ber_type_decoder_f PersonalDeviceUsageState_decode_ber; -der_type_encoder_f PersonalDeviceUsageState_encode_der; -xer_type_decoder_f PersonalDeviceUsageState_decode_xer; -xer_type_encoder_f PersonalDeviceUsageState_encode_xer; -oer_type_decoder_f PersonalDeviceUsageState_decode_oer; -oer_type_encoder_f PersonalDeviceUsageState_encode_oer; -per_type_decoder_f PersonalDeviceUsageState_decode_uper; -per_type_encoder_f PersonalDeviceUsageState_encode_uper; -per_type_decoder_f PersonalDeviceUsageState_decode_aper; -per_type_encoder_f PersonalDeviceUsageState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUsageState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h deleted file mode 100644 index 75778b8a1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalDeviceUserType_H_ -#define _PersonalDeviceUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PersonalDeviceUserType { - PersonalDeviceUserType_unavailable = 0, - PersonalDeviceUserType_aPEDESTRIAN = 1, - PersonalDeviceUserType_aPEDALCYCLIST = 2, - PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, - PersonalDeviceUserType_anANIMAL = 4 - /* - * Enumeration is extensible - */ -} e_PersonalDeviceUserType; - -/* PersonalDeviceUserType */ -typedef long PersonalDeviceUserType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; -extern const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1; -asn_struct_free_f PersonalDeviceUserType_free; -asn_struct_print_f PersonalDeviceUserType_print; -asn_constr_check_f PersonalDeviceUserType_constraint; -ber_type_decoder_f PersonalDeviceUserType_decode_ber; -der_type_encoder_f PersonalDeviceUserType_encode_der; -xer_type_decoder_f PersonalDeviceUserType_decode_xer; -xer_type_encoder_f PersonalDeviceUserType_encode_xer; -oer_type_decoder_f PersonalDeviceUserType_decode_oer; -oer_type_encoder_f PersonalDeviceUserType_encode_oer; -per_type_decoder_f PersonalDeviceUserType_decode_uper; -per_type_encoder_f PersonalDeviceUserType_encode_uper; -per_type_decoder_f PersonalDeviceUserType_decode_aper; -per_type_encoder_f PersonalDeviceUserType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PersonalDeviceUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h deleted file mode 100644 index 5a1c80e51..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * 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_r63/PersonalMobilityMessageStatusType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessageStatusType.h deleted file mode 100644 index 2821b8fcc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessageStatusType.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * 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_r63/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h deleted file mode 100644 index 4641c0808..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PersonalSafetyMessage_H_ -#define _PersonalSafetyMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PersonalDeviceUserType.h" -#include "DSecond.h" -#include "DSRC_MsgCount.h" -#include "TemporaryID.h" -#include "Position3D.h" -#include "PositionalAccuracy.h" -#include "Velocity.h" -#include "Heading.h" -#include "PersonalDeviceUsageState.h" -#include "PersonalCrossingRequest.h" -#include "PersonalCrossingInProgress.h" -#include "NumberOfParticipantsInCluster.h" -#include "PersonalClusterRadius.h" -#include "PublicSafetyEventResponderWorkerType.h" -#include "PublicSafetyAndRoadWorkerActivity.h" -#include "PublicSafetyDirectingTrafficSubType.h" -#include "PersonalAssistive.h" -#include "UserSizeAndBehaviour.h" -#include "Attachment.h" -#include "AttachmentRadius.h" -#include "AnimalType.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct AccelerationSet4Way; -struct PathHistory; -struct PathPrediction; -struct PropelledInformation; -struct Reg_BasicSafetyMessage; - -/* PersonalSafetyMessage */ -typedef struct PersonalSafetyMessage { - PersonalDeviceUserType_t basicType; - DSecond_t secMark; - DSRC_MsgCount_t msgCnt; - TemporaryID_t id; - Position3D_t position; - PositionalAccuracy_t accuracy; - Velocity_t speed; - Heading_t heading; - struct AccelerationSet4Way *accelSet; /* OPTIONAL */ - struct PathHistory *pathHistory; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - struct PropelledInformation *propulsion; /* OPTIONAL */ - PersonalDeviceUsageState_t *useState; /* OPTIONAL */ - PersonalCrossingRequest_t *crossRequest; /* OPTIONAL */ - PersonalCrossingInProgress_t *crossState; /* OPTIONAL */ - NumberOfParticipantsInCluster_t *clusterSize; /* OPTIONAL */ - PersonalClusterRadius_t *clusterRadius; /* OPTIONAL */ - PublicSafetyEventResponderWorkerType_t *eventResponderType; /* OPTIONAL */ - PublicSafetyAndRoadWorkerActivity_t *activityType; /* OPTIONAL */ - PublicSafetyDirectingTrafficSubType_t *activitySubType; /* OPTIONAL */ - PersonalAssistive_t *assistType; /* OPTIONAL */ - UserSizeAndBehaviour_t *sizing; /* OPTIONAL */ - Attachment_t *attachment; /* OPTIONAL */ - AttachmentRadius_t *attachmentRadius; /* OPTIONAL */ - AnimalType_t *animalType; /* OPTIONAL */ - struct PersonalSafetyMessage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} PersonalSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[26]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "AccelerationSet4Way.h" -#include "PathHistory.h" -#include "PathPrediction.h" -#include "PropelledInformation.h" -#include "RegionalExtension.h" - -#endif /* _PersonalSafetyMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h deleted file mode 100644 index a028235b2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _PitchDetected_H_ -#define _PitchDetected_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PitchDetected */ -typedef long PitchDetected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PitchDetected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PitchDetected; -asn_struct_free_f PitchDetected_free; -asn_struct_print_f PitchDetected_print; -asn_constr_check_f PitchDetected_constraint; -ber_type_decoder_f PitchDetected_decode_ber; -der_type_encoder_f PitchDetected_encode_der; -xer_type_decoder_f PitchDetected_decode_xer; -xer_type_encoder_f PitchDetected_encode_xer; -oer_type_decoder_f PitchDetected_decode_oer; -oer_type_encoder_f PitchDetected_encode_oer; -per_type_decoder_f PitchDetected_decode_uper; -per_type_encoder_f PitchDetected_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PitchDetected_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h deleted file mode 100644 index 145045cd2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _PitchRate_H_ -#define _PitchRate_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PitchRate */ -typedef long PitchRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PitchRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PitchRate; -asn_struct_free_f PitchRate_free; -asn_struct_print_f PitchRate_print; -asn_constr_check_f PitchRate_constraint; -ber_type_decoder_f PitchRate_decode_ber; -der_type_encoder_f PitchRate_encode_der; -xer_type_decoder_f PitchRate_decode_xer; -xer_type_encoder_f PitchRate_encode_xer; -oer_type_decoder_f PitchRate_decode_oer; -oer_type_encoder_f PitchRate_encode_oer; -per_type_decoder_f PitchRate_decode_uper; -per_type_encoder_f PitchRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PitchRate_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h deleted file mode 100644 index df6f4e7a0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _PitchRateConfidence_H_ -#define _PitchRateConfidence_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PitchRateConfidence { - PitchRateConfidence_unavailable = 0, - PitchRateConfidence_degSec_100_00 = 1, - PitchRateConfidence_degSec_010_00 = 2, - PitchRateConfidence_degSec_005_00 = 3, - PitchRateConfidence_degSec_001_00 = 4, - PitchRateConfidence_degSec_000_10 = 5, - PitchRateConfidence_degSec_000_05 = 6, - PitchRateConfidence_degSec_000_01 = 7 -} e_PitchRateConfidence; - -/* PitchRateConfidence */ -typedef long PitchRateConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1; -asn_struct_free_f PitchRateConfidence_free; -asn_struct_print_f PitchRateConfidence_print; -asn_constr_check_f PitchRateConfidence_constraint; -ber_type_decoder_f PitchRateConfidence_decode_ber; -der_type_encoder_f PitchRateConfidence_encode_der; -xer_type_decoder_f PitchRateConfidence_decode_xer; -xer_type_encoder_f PitchRateConfidence_encode_xer; -oer_type_decoder_f PitchRateConfidence_decode_oer; -oer_type_encoder_f PitchRateConfidence_encode_oer; -per_type_decoder_f PitchRateConfidence_decode_uper; -per_type_encoder_f PitchRateConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PitchRateConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h deleted file mode 100644 index 009d288fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PivotPointDescription_H_ -#define _PivotPointDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Offset-B11.h" -#include "DSRC_Angle.h" -#include "PivotingAllowed.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PivotPointDescription */ -typedef struct PivotPointDescription { - Offset_B11_t pivotOffset; - DSRC_Angle_t pivotAngle; - PivotingAllowed_t pivots; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PivotPointDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PivotPointDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_PivotPointDescription_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PivotPointDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h deleted file mode 100644 index 91a581cea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PivotingAllowed_H_ -#define _PivotingAllowed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PivotingAllowed */ -typedef BOOLEAN_t PivotingAllowed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PivotingAllowed; -asn_struct_free_f PivotingAllowed_free; -asn_struct_print_f PivotingAllowed_print; -asn_constr_check_f PivotingAllowed_constraint; -ber_type_decoder_f PivotingAllowed_decode_ber; -der_type_encoder_f PivotingAllowed_encode_der; -xer_type_decoder_f PivotingAllowed_decode_xer; -xer_type_encoder_f PivotingAllowed_encode_xer; -oer_type_decoder_f PivotingAllowed_decode_oer; -oer_type_encoder_f PivotingAllowed_encode_oer; -per_type_decoder_f PivotingAllowed_decode_uper; -per_type_encoder_f PivotingAllowed_encode_uper; -per_type_decoder_f PivotingAllowed_decode_aper; -per_type_encoder_f PivotingAllowed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PivotingAllowed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h deleted file mode 100644 index 9b6129097..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Point_H_ -#define _Point_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Point */ -typedef struct Point { - long x; - long y; - long *z; /* OPTIONAL */ - long width; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Point_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Point; -extern asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1; -extern asn_TYPE_member_t asn_MBR_Point_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Point_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h deleted file mode 100644 index 7b7470c1b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Position3D_addGrpB_H_ -#define _Position3D_addGrpB_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LatitudeDMS2.h" -#include "LongitudeDMS2.h" -#include "AddGrpB_Elevation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D-addGrpB */ -typedef struct Position3D_addGrpB { - LatitudeDMS2_t latitude; - LongitudeDMS2_t longitude; - AddGrpB_Elevation_t elevation; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_addGrpB_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_addGrpB_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h deleted file mode 100644 index 0bc65e24a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Position3D_addGrpC_H_ -#define _Position3D_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Altitude.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D-addGrpC */ -typedef struct Position3D_addGrpC { - Altitude_t altitude; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h deleted file mode 100644 index 2033e4705..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpCarma" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#ifndef _Position3D_addGrpCarma_H_ -#define _Position3D_addGrpCarma_H_ - - -#include - -/* Including external dependencies */ -#include "Latitude.h" -#include "Longitude.h" -#include "DSRC_Elevation.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Position3D-addGrpCarma */ -typedef struct Position3D_addGrpCarma { - Latitude_t lat; - Longitude_t Long; - DSRC_Elevation_t *elevation; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Position3D_addGrpCarma_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma; -extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1; -extern asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Position3D_addGrpCarma_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h deleted file mode 100644 index ac4641bd3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Position3D_H_ -#define _Position3D_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Latitude.h" -#include "Longitude.h" -#include "DSRC_Elevation.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* Position3D */ -typedef struct Position3D { - Latitude_t lat; - Longitude_t Long; - DSRC_Elevation_t *elevation; /* OPTIONAL */ - struct Position3D__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} Position3D_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Position3D; -extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1; -extern asn_TYPE_member_t asn_MBR_Position3D_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _Position3D_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h deleted file mode 100644 index 6f6c51ac4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PositionConfidence_H_ -#define _PositionConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PositionConfidence { - PositionConfidence_unavailable = 0, - PositionConfidence_a500m = 1, - PositionConfidence_a200m = 2, - PositionConfidence_a100m = 3, - PositionConfidence_a50m = 4, - PositionConfidence_a20m = 5, - PositionConfidence_a10m = 6, - PositionConfidence_a5m = 7, - PositionConfidence_a2m = 8, - PositionConfidence_a1m = 9, - PositionConfidence_a50cm = 10, - PositionConfidence_a20cm = 11, - PositionConfidence_a10cm = 12, - PositionConfidence_a5cm = 13, - PositionConfidence_a2cm = 14, - PositionConfidence_a1cm = 15 -} e_PositionConfidence; - -/* PositionConfidence */ -typedef long PositionConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1; -asn_struct_free_f PositionConfidence_free; -asn_struct_print_f PositionConfidence_print; -asn_constr_check_f PositionConfidence_constraint; -ber_type_decoder_f PositionConfidence_decode_ber; -der_type_encoder_f PositionConfidence_encode_der; -xer_type_decoder_f PositionConfidence_decode_xer; -xer_type_encoder_f PositionConfidence_encode_xer; -oer_type_decoder_f PositionConfidence_decode_oer; -oer_type_encoder_f PositionConfidence_encode_oer; -per_type_decoder_f PositionConfidence_decode_uper; -per_type_encoder_f PositionConfidence_encode_uper; -per_type_decoder_f PositionConfidence_decode_aper; -per_type_encoder_f PositionConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h deleted file mode 100644 index f74f5fd7a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PositionConfidenceSet_H_ -#define _PositionConfidenceSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "PositionConfidence.h" -#include "ElevationConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionConfidenceSet */ -typedef struct PositionConfidenceSet { - PositionConfidence_t pos; - ElevationConfidence_t elevation; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PositionConfidenceSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; -extern asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1; -extern asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionConfidenceSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h deleted file mode 100644 index 9a9890818..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _PositionOffsetXYZ_H_ -#define _PositionOffsetXYZ_H_ - - -#include - -/* Including external dependencies */ -#include "ObjectDistance.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionOffsetXYZ */ -typedef struct PositionOffsetXYZ { - ObjectDistance_t offsetX; - ObjectDistance_t offsetY; - ObjectDistance_t *offsetZ /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PositionOffsetXYZ_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ; -extern asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1; -extern asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionOffsetXYZ_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h deleted file mode 100644 index 3a6b99d4f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PositionalAccuracy_H_ -#define _PositionalAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SemiMajorAxisAccuracy.h" -#include "SemiMinorAxisAccuracy.h" -#include "SemiMajorAxisOrientation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PositionalAccuracy */ -typedef struct PositionalAccuracy { - SemiMajorAxisAccuracy_t semiMajor; - SemiMinorAxisAccuracy_t semiMinor; - SemiMajorAxisOrientation_t orientation; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PositionalAccuracy_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; -extern asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1; -extern asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PositionalAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h deleted file mode 100644 index a33404445..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PreemptPriorityList_H_ -#define _PreemptPriorityList_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 SignalControlZone; - -/* PreemptPriorityList */ -typedef struct PreemptPriorityList { - A_SEQUENCE_OF(struct SignalControlZone) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PreemptPriorityList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; -extern asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1; -extern asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[1]; -extern asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalControlZone.h" - -#endif /* _PreemptPriorityList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h deleted file mode 100644 index d7889445b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * 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_r63/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h deleted file mode 100644 index 6011ce6fd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PrioritizationResponse_H_ -#define _PrioritizationResponse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "PrioritizationResponseStatus.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PrioritizationResponse */ -typedef struct PrioritizationResponse { - StationID_t stationID; - PrioritizationResponseStatus_t priorState; - SignalGroupID_t signalGroup; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponse_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; -extern asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1; -extern asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h deleted file mode 100644 index e098544b5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PrioritizationResponseList_H_ -#define _PrioritizationResponseList_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 PrioritizationResponse; - -/* PrioritizationResponseList */ -typedef struct PrioritizationResponseList { - A_SEQUENCE_OF(struct PrioritizationResponse) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrioritizationResponseList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; -extern asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1; -extern asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[1]; -extern asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PrioritizationResponse.h" - -#endif /* _PrioritizationResponseList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h deleted file mode 100644 index 6161936b6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PrioritizationResponseStatus_H_ -#define _PrioritizationResponseStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PrioritizationResponseStatus { - PrioritizationResponseStatus_unknown = 0, - PrioritizationResponseStatus_requested = 1, - PrioritizationResponseStatus_processing = 2, - PrioritizationResponseStatus_watchOtherTraffic = 3, - PrioritizationResponseStatus_granted = 4, - PrioritizationResponseStatus_rejected = 5, - PrioritizationResponseStatus_maxPresence = 6, - PrioritizationResponseStatus_reserviceLocked = 7 - /* - * Enumeration is extensible - */ -} e_PrioritizationResponseStatus; - -/* PrioritizationResponseStatus */ -typedef long PrioritizationResponseStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; -extern const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1; -asn_struct_free_f PrioritizationResponseStatus_free; -asn_struct_print_f PrioritizationResponseStatus_print; -asn_constr_check_f PrioritizationResponseStatus_constraint; -ber_type_decoder_f PrioritizationResponseStatus_decode_ber; -der_type_encoder_f PrioritizationResponseStatus_encode_der; -xer_type_decoder_f PrioritizationResponseStatus_decode_xer; -xer_type_encoder_f PrioritizationResponseStatus_encode_xer; -oer_type_decoder_f PrioritizationResponseStatus_decode_oer; -oer_type_encoder_f PrioritizationResponseStatus_encode_oer; -per_type_decoder_f PrioritizationResponseStatus_decode_uper; -per_type_encoder_f PrioritizationResponseStatus_encode_uper; -per_type_decoder_f PrioritizationResponseStatus_decode_aper; -per_type_encoder_f PrioritizationResponseStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrioritizationResponseStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h deleted file mode 100644 index ae82579b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Priority_H_ -#define _Priority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Priority */ -typedef OCTET_STRING_t Priority_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Priority_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Priority; -asn_struct_free_f Priority_free; -asn_struct_print_f Priority_print; -asn_constr_check_f Priority_constraint; -ber_type_decoder_f Priority_decode_ber; -der_type_encoder_f Priority_encode_der; -xer_type_decoder_f Priority_decode_xer; -xer_type_encoder_f Priority_encode_xer; -oer_type_decoder_f Priority_decode_oer; -oer_type_encoder_f Priority_encode_oer; -per_type_decoder_f Priority_decode_uper; -per_type_encoder_f Priority_encode_uper; -per_type_decoder_f Priority_decode_aper; -per_type_encoder_f Priority_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Priority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h deleted file mode 100644 index 7609eb750..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PriorityRequestType_H_ -#define _PriorityRequestType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PriorityRequestType { - PriorityRequestType_priorityRequestTypeReserved = 0, - PriorityRequestType_priorityRequest = 1, - PriorityRequestType_priorityRequestUpdate = 2, - PriorityRequestType_priorityCancellation = 3 - /* - * Enumeration is extensible - */ -} e_PriorityRequestType; - -/* PriorityRequestType */ -typedef long PriorityRequestType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PriorityRequestType; -extern const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1; -asn_struct_free_f PriorityRequestType_free; -asn_struct_print_f PriorityRequestType_print; -asn_constr_check_f PriorityRequestType_constraint; -ber_type_decoder_f PriorityRequestType_decode_ber; -der_type_encoder_f PriorityRequestType_encode_der; -xer_type_decoder_f PriorityRequestType_decode_xer; -xer_type_encoder_f PriorityRequestType_encode_xer; -oer_type_decoder_f PriorityRequestType_decode_oer; -oer_type_encoder_f PriorityRequestType_encode_oer; -per_type_decoder_f PriorityRequestType_decode_uper; -per_type_encoder_f PriorityRequestType_encode_uper; -per_type_decoder_f PriorityRequestType_decode_aper; -per_type_encoder_f PriorityRequestType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PriorityRequestType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h deleted file mode 100644 index d86e73e45..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PrivilegedEventFlags_H_ -#define _PrivilegedEventFlags_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PrivilegedEventFlags { - PrivilegedEventFlags_peUnavailable = 0, - PrivilegedEventFlags_peEmergencyResponse = 1, - PrivilegedEventFlags_peEmergencyLightsActive = 2, - PrivilegedEventFlags_peEmergencySoundActive = 3, - PrivilegedEventFlags_peNonEmergencyLightsActive = 4, - PrivilegedEventFlags_peNonEmergencySoundActive = 5 -} e_PrivilegedEventFlags; - -/* PrivilegedEventFlags */ -typedef BIT_STRING_t PrivilegedEventFlags_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags; -asn_struct_free_f PrivilegedEventFlags_free; -asn_struct_print_f PrivilegedEventFlags_print; -asn_constr_check_f PrivilegedEventFlags_constraint; -ber_type_decoder_f PrivilegedEventFlags_decode_ber; -der_type_encoder_f PrivilegedEventFlags_encode_der; -xer_type_decoder_f PrivilegedEventFlags_decode_xer; -xer_type_encoder_f PrivilegedEventFlags_encode_xer; -oer_type_decoder_f PrivilegedEventFlags_decode_oer; -oer_type_encoder_f PrivilegedEventFlags_encode_oer; -per_type_decoder_f PrivilegedEventFlags_decode_uper; -per_type_encoder_f PrivilegedEventFlags_encode_uper; -per_type_decoder_f PrivilegedEventFlags_decode_aper; -per_type_encoder_f PrivilegedEventFlags_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrivilegedEventFlags_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h deleted file mode 100644 index 1353144e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PrivilegedEvents_H_ -#define _PrivilegedEvents_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "PrivilegedEventFlags.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* PrivilegedEvents */ -typedef struct PrivilegedEvents { - SSPindex_t sspRights; - PrivilegedEventFlags_t event; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PrivilegedEvents_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents; -extern asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1; -extern asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PrivilegedEvents_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h deleted file mode 100644 index 6eb6b0748..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ProbeDataManagement_H_ -#define _ProbeDataManagement_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "Sample.h" -#include "HeadingSlice.h" -#include "SecondOfTime.h" -#include "TermTime.h" -#include "TermDistance.h" -#include "constr_CHOICE.h" -#include "SnapshotTime.h" -#include "SnapshotDistance.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ProbeDataManagement__term_PR { - ProbeDataManagement__term_PR_NOTHING, /* No components present */ - ProbeDataManagement__term_PR_termtime, - ProbeDataManagement__term_PR_termDistance -} ProbeDataManagement__term_PR; -typedef enum ProbeDataManagement__snapshot_PR { - ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ - ProbeDataManagement__snapshot_PR_snapshotTime, - ProbeDataManagement__snapshot_PR_snapshotDistance -} ProbeDataManagement__snapshot_PR; - -/* Forward declarations */ -struct VehicleStatusRequestList; -struct Reg_BasicSafetyMessage; - -/* ProbeDataManagement */ -typedef struct ProbeDataManagement { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - Sample_t sample; - HeadingSlice_t directions; - struct ProbeDataManagement__term { - ProbeDataManagement__term_PR present; - union ProbeDataManagement__term_u { - TermTime_t termtime; - TermDistance_t termDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } term; - struct ProbeDataManagement__snapshot { - ProbeDataManagement__snapshot_PR present; - union ProbeDataManagement__snapshot_u { - SnapshotTime_t snapshotTime; - SnapshotDistance_t snapshotDistance; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshot; - SecondOfTime_t txInterval; - struct VehicleStatusRequestList *dataElements; /* OPTIONAL */ - struct ProbeDataManagement__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} ProbeDataManagement_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; -extern asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1; -extern asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[8]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleStatusRequestList.h" -#include "RegionalExtension.h" - -#endif /* _ProbeDataManagement_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h deleted file mode 100644 index 8f88e706a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ProbeSegmentNumber_H_ -#define _ProbeSegmentNumber_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ProbeSegmentNumber */ -typedef long ProbeSegmentNumber_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; -asn_struct_free_f ProbeSegmentNumber_free; -asn_struct_print_f ProbeSegmentNumber_print; -asn_constr_check_f ProbeSegmentNumber_constraint; -ber_type_decoder_f ProbeSegmentNumber_decode_ber; -der_type_encoder_f ProbeSegmentNumber_encode_der; -xer_type_decoder_f ProbeSegmentNumber_decode_xer; -xer_type_encoder_f ProbeSegmentNumber_encode_xer; -oer_type_decoder_f ProbeSegmentNumber_decode_oer; -oer_type_encoder_f ProbeSegmentNumber_encode_oer; -per_type_decoder_f ProbeSegmentNumber_decode_uper; -per_type_encoder_f ProbeSegmentNumber_encode_uper; -per_type_decoder_f ProbeSegmentNumber_decode_aper; -per_type_encoder_f ProbeSegmentNumber_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProbeSegmentNumber_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h deleted file mode 100644 index e063c5e52..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ProbeVehicleData_H_ -#define _ProbeVehicleData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "ProbeSegmentNumber.h" -#include "FullPositionVector.h" -#include "VehicleClassification.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleIdent; -struct Snapshot; -struct Reg_BasicSafetyMessage; - -/* ProbeVehicleData */ -typedef struct ProbeVehicleData { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - ProbeSegmentNumber_t *segNum; /* OPTIONAL */ - struct VehicleIdent *probeID; /* OPTIONAL */ - FullPositionVector_t startVector; - VehicleClassification_t vehicleType; - struct ProbeVehicleData__snapshots { - A_SEQUENCE_OF(struct Snapshot) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } snapshots; - struct ProbeVehicleData__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} ProbeVehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1; -extern asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleIdent.h" -#include "Snapshot.h" -#include "RegionalExtension.h" - -#endif /* _ProbeVehicleData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h deleted file mode 100644 index e5202fc40..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PropelledInformation_H_ -#define _PropelledInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HumanPropelledType.h" -#include "AnimalPropelledType.h" -#include "MotorizedPropelledType.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PropelledInformation_PR { - PropelledInformation_PR_NOTHING, /* No components present */ - PropelledInformation_PR_human, - PropelledInformation_PR_animal, - PropelledInformation_PR_motor - /* Extensions may appear below */ - -} PropelledInformation_PR; - -/* PropelledInformation */ -typedef struct PropelledInformation { - PropelledInformation_PR present; - union PropelledInformation_u { - HumanPropelledType_t human; - AnimalPropelledType_t animal; - MotorizedPropelledType_t motor; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PropelledInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; -extern asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1; -extern asn_TYPE_member_t asn_MBR_PropelledInformation_1[3]; -extern asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PropelledInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h deleted file mode 100644 index 3e16c002e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PublicSafetyAndRoadWorkerActivity_H_ -#define _PublicSafetyAndRoadWorkerActivity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyAndRoadWorkerActivity { - PublicSafetyAndRoadWorkerActivity_unavailable = 0, - PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, - PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, - PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, - PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, - PublicSafetyAndRoadWorkerActivity_otherActivities = 5 -} e_PublicSafetyAndRoadWorkerActivity; - -/* PublicSafetyAndRoadWorkerActivity */ -typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; -asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; -asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; -asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; -ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; -der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; -xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; -xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; -oer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_oer; -oer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_oer; -per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; -per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; -per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_aper; -per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h deleted file mode 100644 index 22ea7e7c0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PublicSafetyDirectingTrafficSubType_H_ -#define _PublicSafetyDirectingTrafficSubType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyDirectingTrafficSubType { - PublicSafetyDirectingTrafficSubType_unavailable = 0, - PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, - PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, - PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, - PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, - PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, - PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 -} e_PublicSafetyDirectingTrafficSubType; - -/* PublicSafetyDirectingTrafficSubType */ -typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; -asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; -asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; -asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; -ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; -der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; -xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; -xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; -oer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_oer; -oer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_oer; -per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; -per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; -per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_aper; -per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h deleted file mode 100644 index 31f9b8d48..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _PublicSafetyEventResponderWorkerType_H_ -#define _PublicSafetyEventResponderWorkerType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PublicSafetyEventResponderWorkerType { - PublicSafetyEventResponderWorkerType_unavailable = 0, - PublicSafetyEventResponderWorkerType_towOperater = 1, - PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, - PublicSafetyEventResponderWorkerType_aDOTWorker = 3, - PublicSafetyEventResponderWorkerType_lawEnforcement = 4, - PublicSafetyEventResponderWorkerType_hazmatResponder = 5, - PublicSafetyEventResponderWorkerType_animalControlWorker = 6, - PublicSafetyEventResponderWorkerType_otherPersonnel = 7 - /* - * Enumeration is extensible - */ -} e_PublicSafetyEventResponderWorkerType; - -/* PublicSafetyEventResponderWorkerType */ -typedef long PublicSafetyEventResponderWorkerType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; -extern const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1; -asn_struct_free_f PublicSafetyEventResponderWorkerType_free; -asn_struct_print_f PublicSafetyEventResponderWorkerType_print; -asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; -ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; -der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; -xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; -xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; -oer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_oer; -oer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_oer; -per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; -per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; -per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_aper; -per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PublicSafetyEventResponderWorkerType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h deleted file mode 100644 index 8bc06230a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h +++ /dev/null @@ -1,51 +0,0 @@ -/*- - * 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_r63/RELATIVE-OID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RELATIVE-OID.h deleted file mode 100644 index 4a73d2787..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RELATIVE-OID.h +++ /dev/null @@ -1,48 +0,0 @@ -/*- - * 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_r63/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h deleted file mode 100644 index bc7ddf4f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCM_Revision_H_ -#define _RTCM_Revision_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RTCM_Revision { - RTCM_Revision_unknown = 0, - RTCM_Revision_rtcmRev2 = 1, - RTCM_Revision_rtcmRev3 = 2, - RTCM_Revision_reserved = 3 - /* - * Enumeration is extensible - */ -} e_RTCM_Revision; - -/* RTCM-Revision */ -typedef long RTCM_Revision_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; -extern const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1; -asn_struct_free_f RTCM_Revision_free; -asn_struct_print_f RTCM_Revision_print; -asn_constr_check_f RTCM_Revision_constraint; -ber_type_decoder_f RTCM_Revision_decode_ber; -der_type_encoder_f RTCM_Revision_encode_der; -xer_type_decoder_f RTCM_Revision_decode_xer; -xer_type_encoder_f RTCM_Revision_encode_xer; -oer_type_decoder_f RTCM_Revision_decode_oer; -oer_type_encoder_f RTCM_Revision_encode_oer; -per_type_decoder_f RTCM_Revision_decode_uper; -per_type_encoder_f RTCM_Revision_encode_uper; -per_type_decoder_f RTCM_Revision_decode_aper; -per_type_encoder_f RTCM_Revision_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCM_Revision_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h deleted file mode 100644 index a006e427f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCMPackage_H_ -#define _RTCMPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCMmessageList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RTCMheader; - -/* RTCMPackage */ -typedef struct RTCMPackage { - struct RTCMheader *rtcmHeader; /* OPTIONAL */ - RTCMmessageList_t msgs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMPackage_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RTCMheader.h" - -#endif /* _RTCMPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h deleted file mode 100644 index 8712ded80..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCMcorrections_H_ -#define _RTCMcorrections_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "RTCM-Revision.h" -#include "MinuteOfTheYear.h" -#include "RTCMmessageList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct RTCMheader; -struct Reg_BasicSafetyMessage; - -/* RTCMcorrections */ -typedef struct RTCMcorrections { - DSRC_MsgCount_t msgCnt; - RTCM_Revision_t rev; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - struct FullPositionVector *anchorPoint; /* OPTIONAL */ - struct RTCMheader *rtcmHeader; /* OPTIONAL */ - RTCMmessageList_t msgs; - struct RTCMcorrections__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} RTCMcorrections_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMcorrections; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMcorrections_1[7]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" -#include "RTCMheader.h" -#include "RegionalExtension.h" - -#endif /* _RTCMcorrections_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h deleted file mode 100644 index 4dfc71e74..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCMheader_H_ -#define _RTCMheader_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GNSSstatus.h" -#include "AntennaOffsetSet.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMheader */ -typedef struct RTCMheader { - GNSSstatus_t status; - AntennaOffsetSet_t offsetSet; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMheader_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMheader; -extern asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMheader_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMheader_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h deleted file mode 100644 index bdd7de653..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCMmessage_H_ -#define _RTCMmessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMmessage */ -typedef OCTET_STRING_t RTCMmessage_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RTCMmessage; -asn_struct_free_f RTCMmessage_free; -asn_struct_print_f RTCMmessage_print; -asn_constr_check_f RTCMmessage_constraint; -ber_type_decoder_f RTCMmessage_decode_ber; -der_type_encoder_f RTCMmessage_encode_der; -xer_type_decoder_f RTCMmessage_decode_xer; -xer_type_encoder_f RTCMmessage_encode_xer; -oer_type_decoder_f RTCMmessage_decode_oer; -oer_type_encoder_f RTCMmessage_encode_oer; -per_type_decoder_f RTCMmessage_decode_uper; -per_type_encoder_f RTCMmessage_encode_uper; -per_type_decoder_f RTCMmessage_decode_aper; -per_type_encoder_f RTCMmessage_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMmessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h deleted file mode 100644 index 5677363aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RTCMmessageList_H_ -#define _RTCMmessageList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RTCMmessage.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RTCMmessageList */ -typedef struct RTCMmessageList { - A_SEQUENCE_OF(RTCMmessage_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RTCMmessageList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RTCMmessageList; -extern asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1; -extern asn_TYPE_member_t asn_MBR_RTCMmessageList_1[1]; -extern asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RTCMmessageList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h deleted file mode 100644 index 658c677e9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Radius_B12_H_ -#define _Radius_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Radius-B12 */ -typedef long Radius_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Radius_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Radius_B12; -asn_struct_free_f Radius_B12_free; -asn_struct_print_f Radius_B12_print; -asn_constr_check_f Radius_B12_constraint; -ber_type_decoder_f Radius_B12_decode_ber; -der_type_encoder_f Radius_B12_encode_der; -xer_type_decoder_f Radius_B12_decode_xer; -xer_type_encoder_f Radius_B12_encode_xer; -oer_type_decoder_f Radius_B12_decode_oer; -oer_type_encoder_f Radius_B12_encode_oer; -per_type_decoder_f Radius_B12_decode_uper; -per_type_encoder_f Radius_B12_encode_uper; -per_type_decoder_f Radius_B12_decode_aper; -per_type_encoder_f Radius_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Radius_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h deleted file mode 100644 index 0842e51a3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RadiusOfCurvature_H_ -#define _RadiusOfCurvature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RadiusOfCurvature */ -typedef long RadiusOfCurvature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature; -asn_struct_free_f RadiusOfCurvature_free; -asn_struct_print_f RadiusOfCurvature_print; -asn_constr_check_f RadiusOfCurvature_constraint; -ber_type_decoder_f RadiusOfCurvature_decode_ber; -der_type_encoder_f RadiusOfCurvature_encode_der; -xer_type_decoder_f RadiusOfCurvature_decode_xer; -xer_type_encoder_f RadiusOfCurvature_encode_xer; -oer_type_decoder_f RadiusOfCurvature_decode_oer; -oer_type_encoder_f RadiusOfCurvature_encode_oer; -per_type_decoder_f RadiusOfCurvature_decode_uper; -per_type_encoder_f RadiusOfCurvature_encode_uper; -per_type_decoder_f RadiusOfCurvature_decode_aper; -per_type_encoder_f RadiusOfCurvature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RadiusOfCurvature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h deleted file mode 100644 index abd0aa897..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RainSensor_H_ -#define _RainSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RainSensor { - RainSensor_none = 0, - RainSensor_lightMist = 1, - RainSensor_heavyMist = 2, - RainSensor_lightRainOrDrizzle = 3, - RainSensor_rain = 4, - RainSensor_moderateRain = 5, - RainSensor_heavyRain = 6, - RainSensor_heavyDownpour = 7 -} e_RainSensor; - -/* RainSensor */ -typedef long RainSensor_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RainSensor_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RainSensor; -extern const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1; -asn_struct_free_f RainSensor_free; -asn_struct_print_f RainSensor_print; -asn_constr_check_f RainSensor_constraint; -ber_type_decoder_f RainSensor_decode_ber; -der_type_encoder_f RainSensor_encode_der; -xer_type_decoder_f RainSensor_decode_xer; -xer_type_encoder_f RainSensor_encode_xer; -oer_type_decoder_f RainSensor_decode_oer; -oer_type_encoder_f RainSensor_encode_oer; -per_type_decoder_f RainSensor_decode_uper; -per_type_encoder_f RainSensor_encode_uper; -per_type_decoder_f RainSensor_decode_aper; -per_type_encoder_f RainSensor_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RainSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h deleted file mode 100644 index 2f6fb4bf1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RegionId_H_ -#define _RegionId_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionId */ -typedef long RegionId_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RegionId_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RegionId; -asn_struct_free_f RegionId_free; -asn_struct_print_f RegionId_print; -asn_constr_check_f RegionId_constraint; -ber_type_decoder_f RegionId_decode_ber; -der_type_encoder_f RegionId_encode_der; -xer_type_decoder_f RegionId_decode_xer; -xer_type_encoder_f RegionId_encode_xer; -oer_type_decoder_f RegionId_decode_oer; -oer_type_encoder_f RegionId_encode_oer; -per_type_decoder_f RegionId_decode_uper; -per_type_encoder_f RegionId_encode_uper; -per_type_decoder_f RegionId_decode_aper; -per_type_encoder_f RegionId_encode_aper; -#define RegionId_noRegion ((RegionId_t)0) -#define RegionId_addGrpA ((RegionId_t)1) -#define RegionId_addGrpB ((RegionId_t)2) -#define RegionId_addGrpC ((RegionId_t)3) - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionId_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h deleted file mode 100644 index 322649479..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RegionList_H_ -#define _RegionList_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 RegionOffsets; - -/* RegionList */ -typedef struct RegionList { - A_SEQUENCE_OF(struct RegionOffsets) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionList; -extern asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionList_1[1]; -extern asn_per_constraints_t asn_PER_type_RegionList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionOffsets.h" - -#endif /* _RegionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h deleted file mode 100644 index ddfe1f093..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RegionOffsets_H_ -#define _RegionOffsets_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OffsetLL-B16.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegionOffsets */ -typedef struct RegionOffsets { - OffsetLL_B16_t xOffset; - OffsetLL_B16_t yOffset; - OffsetLL_B16_t *zOffset; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionOffsets_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; -extern asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionOffsets_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionOffsets_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h deleted file mode 100644 index 9040eefba..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RegionPointSet_H_ -#define _RegionPointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Zoom.h" -#include "RegionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* RegionPointSet */ -typedef struct RegionPointSet { - struct Position3D *anchor; /* OPTIONAL */ - Zoom_t *scale; /* OPTIONAL */ - RegionList_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegionPointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; -extern asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1; -extern asn_TYPE_member_t asn_MBR_RegionPointSet_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D.h" - -#endif /* _RegionPointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h deleted file mode 100644 index ac17e7561..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#ifndef _RegionalExtension_H_ -#define _RegionalExtension_H_ - - -#include - -/* Including external dependencies */ -#include "RegionId.h" -#include -#include -#include "BasicSafetyMessage-addGrpCarma.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Reg_BasicSafetyMessage__regExtValue_PR { - Reg_BasicSafetyMessage__regExtValue_PR_NOTHING, /* No components present */ - Reg_BasicSafetyMessage__regExtValue_PR_BasicSafetyMessage_addGrpCarma -} Reg_BasicSafetyMessage__regExtValue_PR; - -/* RegionalExtension */ -typedef struct Reg_BasicSafetyMessage { - RegionId_t regionId; - struct Reg_BasicSafetyMessage__regExtValue { - Reg_BasicSafetyMessage__regExtValue_PR present; - union Reg_BasicSafetyMessage__regExtValue_u { - BasicSafetyMessage_addGrpCarma_t BasicSafetyMessage_addGrpCarma; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regExtValue; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Reg_BasicSafetyMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegionalExtension_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h deleted file mode 100644 index c76d38fcd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RegulatorySpeedLimit_H_ -#define _RegulatorySpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedLimitType.h" -#include "Velocity.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RegulatorySpeedLimit */ -typedef struct RegulatorySpeedLimit { - SpeedLimitType_t type; - Velocity_t speed; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RegulatorySpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; -extern asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1; -extern asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RegulatorySpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h deleted file mode 100644 index 6f840bae7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RepeatParams_H_ -#define _RepeatParams_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RepeatParams */ -typedef struct RepeatParams { - long offset; - long period; - long span; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RepeatParams_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RepeatParams; -extern asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1; -extern asn_TYPE_member_t asn_MBR_RepeatParams_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RepeatParams_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h deleted file mode 100644 index e8447cfe5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestID_H_ -#define _RequestID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RequestID */ -typedef long RequestID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestID; -asn_struct_free_f RequestID_free; -asn_struct_print_f RequestID_print; -asn_constr_check_f RequestID_constraint; -ber_type_decoder_f RequestID_decode_ber; -der_type_encoder_f RequestID_encode_der; -xer_type_decoder_f RequestID_decode_xer; -xer_type_encoder_f RequestID_encode_xer; -oer_type_decoder_f RequestID_decode_oer; -oer_type_encoder_f RequestID_encode_oer; -per_type_decoder_f RequestID_decode_uper; -per_type_encoder_f RequestID_encode_uper; -per_type_decoder_f RequestID_decode_aper; -per_type_encoder_f RequestID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h deleted file mode 100644 index cb8e801dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestImportanceLevel_H_ -#define _RequestImportanceLevel_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestImportanceLevel { - RequestImportanceLevel_requestImportanceLevelUnKnown = 0, - RequestImportanceLevel_requestImportanceLevel1 = 1, - RequestImportanceLevel_requestImportanceLevel2 = 2, - RequestImportanceLevel_requestImportanceLevel3 = 3, - RequestImportanceLevel_requestImportanceLevel4 = 4, - RequestImportanceLevel_requestImportanceLevel5 = 5, - RequestImportanceLevel_requestImportanceLevel6 = 6, - RequestImportanceLevel_requestImportanceLevel7 = 7, - RequestImportanceLevel_requestImportanceLevel8 = 8, - RequestImportanceLevel_requestImportanceLevel9 = 9, - RequestImportanceLevel_requestImportanceLevel10 = 10, - RequestImportanceLevel_requestImportanceLevel11 = 11, - RequestImportanceLevel_requestImportanceLevel12 = 12, - RequestImportanceLevel_requestImportanceLevel13 = 13, - RequestImportanceLevel_requestImportanceLevel14 = 14, - RequestImportanceLevel_requestImportanceReserved = 15 -} e_RequestImportanceLevel; - -/* RequestImportanceLevel */ -typedef long RequestImportanceLevel_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel; -extern const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1; -asn_struct_free_f RequestImportanceLevel_free; -asn_struct_print_f RequestImportanceLevel_print; -asn_constr_check_f RequestImportanceLevel_constraint; -ber_type_decoder_f RequestImportanceLevel_decode_ber; -der_type_encoder_f RequestImportanceLevel_encode_der; -xer_type_decoder_f RequestImportanceLevel_decode_xer; -xer_type_encoder_f RequestImportanceLevel_encode_xer; -oer_type_decoder_f RequestImportanceLevel_decode_oer; -oer_type_encoder_f RequestImportanceLevel_encode_oer; -per_type_decoder_f RequestImportanceLevel_decode_uper; -per_type_encoder_f RequestImportanceLevel_encode_uper; -per_type_decoder_f RequestImportanceLevel_decode_aper; -per_type_encoder_f RequestImportanceLevel_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestImportanceLevel_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h deleted file mode 100644 index f2b9637ef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestSubRole_H_ -#define _RequestSubRole_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestSubRole { - RequestSubRole_requestSubRoleUnKnown = 0, - RequestSubRole_requestSubRole1 = 1, - RequestSubRole_requestSubRole2 = 2, - RequestSubRole_requestSubRole3 = 3, - RequestSubRole_requestSubRole4 = 4, - RequestSubRole_requestSubRole5 = 5, - RequestSubRole_requestSubRole6 = 6, - RequestSubRole_requestSubRole7 = 7, - RequestSubRole_requestSubRole8 = 8, - RequestSubRole_requestSubRole9 = 9, - RequestSubRole_requestSubRole10 = 10, - RequestSubRole_requestSubRole11 = 11, - RequestSubRole_requestSubRole12 = 12, - RequestSubRole_requestSubRole13 = 13, - RequestSubRole_requestSubRole14 = 14, - RequestSubRole_requestSubRoleReserved = 15 -} e_RequestSubRole; - -/* RequestSubRole */ -typedef long RequestSubRole_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestSubRole; -extern const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1; -asn_struct_free_f RequestSubRole_free; -asn_struct_print_f RequestSubRole_print; -asn_constr_check_f RequestSubRole_constraint; -ber_type_decoder_f RequestSubRole_decode_ber; -der_type_encoder_f RequestSubRole_encode_der; -xer_type_decoder_f RequestSubRole_decode_xer; -xer_type_encoder_f RequestSubRole_encode_xer; -oer_type_decoder_f RequestSubRole_decode_oer; -oer_type_encoder_f RequestSubRole_encode_oer; -per_type_decoder_f RequestSubRole_decode_uper; -per_type_encoder_f RequestSubRole_encode_uper; -per_type_decoder_f RequestSubRole_decode_aper; -per_type_encoder_f RequestSubRole_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestSubRole_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h deleted file mode 100644 index 53c81955c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestedItem_H_ -#define _RequestedItem_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RequestedItem { - RequestedItem_reserved = 0, - RequestedItem_itemA = 1, - RequestedItem_itemB = 2, - RequestedItem_itemC = 3, - RequestedItem_itemD = 4, - RequestedItem_itemE = 5, - RequestedItem_itemF = 6, - RequestedItem_itemG = 7, - RequestedItem_itemI = 8, - RequestedItem_itemJ = 9, - RequestedItem_itemK = 10, - RequestedItem_itemL = 11, - RequestedItem_itemM = 12, - RequestedItem_itemN = 13, - RequestedItem_itemO = 14, - RequestedItem_itemP = 15, - RequestedItem_itemQ = 16 - /* - * Enumeration is extensible - */ -} e_RequestedItem; - -/* RequestedItem */ -typedef long RequestedItem_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RequestedItem_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; -extern const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1; -asn_struct_free_f RequestedItem_free; -asn_struct_print_f RequestedItem_print; -asn_constr_check_f RequestedItem_constraint; -ber_type_decoder_f RequestedItem_decode_ber; -der_type_encoder_f RequestedItem_encode_der; -xer_type_decoder_f RequestedItem_decode_xer; -xer_type_encoder_f RequestedItem_encode_xer; -oer_type_decoder_f RequestedItem_decode_oer; -oer_type_encoder_f RequestedItem_encode_oer; -per_type_decoder_f RequestedItem_decode_uper; -per_type_encoder_f RequestedItem_encode_uper; -per_type_decoder_f RequestedItem_decode_aper; -per_type_encoder_f RequestedItem_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestedItem_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h deleted file mode 100644 index 9d3fc910a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestedItemList_H_ -#define _RequestedItemList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RequestedItem.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RequestedItemList */ -typedef struct RequestedItemList { - A_SEQUENCE_OF(RequestedItem_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestedItemList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestedItemList; -extern asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestedItemList_1[1]; -extern asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _RequestedItemList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h deleted file mode 100644 index e31f2a1ac..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestorDescription_H_ -#define _RequestorDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleID.h" -#include "DescriptiveName.h" -#include "TransitVehicleStatus.h" -#include "TransitVehicleOccupancy.h" -#include "DeltaTime.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RequestorType; -struct RequestorPositionVector; -struct Reg_BasicSafetyMessage; - -/* RequestorDescription */ -typedef struct RequestorDescription { - VehicleID_t id; - struct RequestorType *type; /* OPTIONAL */ - struct RequestorPositionVector *position; /* OPTIONAL */ - DescriptiveName_t *name; /* OPTIONAL */ - DescriptiveName_t *routeName; /* OPTIONAL */ - TransitVehicleStatus_t *transitStatus; /* OPTIONAL */ - TransitVehicleOccupancy_t *transitOccupancy; /* OPTIONAL */ - DeltaTime_t *transitSchedule; /* OPTIONAL */ - struct RequestorDescription__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} RequestorDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorDescription_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RequestorType.h" -#include "RequestorPositionVector.h" -#include "RegionalExtension.h" - -#endif /* _RequestorDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h deleted file mode 100644 index 85870f1f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestorPositionVector_H_ -#define _RequestorPositionVector_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "DSRC_Angle.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TransmissionAndSpeed; - -/* RequestorPositionVector */ -typedef struct RequestorPositionVector { - Position3D_t position; - DSRC_Angle_t *heading; /* OPTIONAL */ - struct TransmissionAndSpeed *speed; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestorPositionVector_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TransmissionAndSpeed.h" - -#endif /* _RequestorPositionVector_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h deleted file mode 100644 index 1fd8c506a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RequestorType_H_ -#define _RequestorType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleRole.h" -#include "RequestSubRole.h" -#include "RequestImportanceLevel.h" -#include "Iso3833VehicleType.h" -#include "VehicleType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* RequestorType */ -typedef struct RequestorType { - BasicVehicleRole_t role; - RequestSubRole_t *subrole; /* OPTIONAL */ - RequestImportanceLevel_t *request; /* OPTIONAL */ - Iso3833VehicleType_t *iso3883; /* OPTIONAL */ - VehicleType_t *hpmsType; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RequestorType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RequestorType; -extern asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1; -extern asn_TYPE_member_t asn_MBR_RequestorType_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _RequestorType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h deleted file mode 100644 index 7167916b4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ResponderGroupAffected_H_ -#define _ResponderGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponderGroupAffected { - ResponderGroupAffected_emergency_vehicle_units = 9729, - ResponderGroupAffected_federal_law_enforcement_units = 9730, - ResponderGroupAffected_state_police_units = 9731, - ResponderGroupAffected_county_police_units = 9732, - ResponderGroupAffected_local_police_units = 9733, - ResponderGroupAffected_ambulance_units = 9734, - ResponderGroupAffected_rescue_units = 9735, - ResponderGroupAffected_fire_units = 9736, - ResponderGroupAffected_hAZMAT_units = 9737, - ResponderGroupAffected_light_tow_unit = 9738, - ResponderGroupAffected_heavy_tow_unit = 9739, - ResponderGroupAffected_freeway_service_patrols = 9740, - ResponderGroupAffected_transportation_response_units = 9741, - ResponderGroupAffected_private_contractor_response_units = 9742 - /* - * Enumeration is extensible - */ -} e_ResponderGroupAffected; - -/* ResponderGroupAffected */ -typedef long ResponderGroupAffected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; -extern const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1; -asn_struct_free_f ResponderGroupAffected_free; -asn_struct_print_f ResponderGroupAffected_print; -asn_constr_check_f ResponderGroupAffected_constraint; -ber_type_decoder_f ResponderGroupAffected_decode_ber; -der_type_encoder_f ResponderGroupAffected_encode_der; -xer_type_decoder_f ResponderGroupAffected_decode_xer; -xer_type_encoder_f ResponderGroupAffected_encode_xer; -oer_type_decoder_f ResponderGroupAffected_decode_oer; -oer_type_encoder_f ResponderGroupAffected_encode_oer; -per_type_decoder_f ResponderGroupAffected_decode_uper; -per_type_encoder_f ResponderGroupAffected_encode_uper; -per_type_decoder_f ResponderGroupAffected_decode_aper; -per_type_encoder_f ResponderGroupAffected_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponderGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h deleted file mode 100644 index b7607f1cc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ResponseType_H_ -#define _ResponseType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ResponseType { - ResponseType_notInUseOrNotEquipped = 0, - ResponseType_emergency = 1, - ResponseType_nonEmergency = 2, - ResponseType_pursuit = 3, - ResponseType_stationary = 4, - ResponseType_slowMoving = 5, - ResponseType_stopAndGoMovement = 6 - /* - * Enumeration is extensible - */ -} e_ResponseType; - -/* ResponseType */ -typedef long ResponseType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ResponseType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ResponseType; -extern const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1; -asn_struct_free_f ResponseType_free; -asn_struct_print_f ResponseType_print; -asn_constr_check_f ResponseType_constraint; -ber_type_decoder_f ResponseType_decode_ber; -der_type_encoder_f ResponseType_encode_der; -xer_type_decoder_f ResponseType_decode_xer; -xer_type_encoder_f ResponseType_encode_xer; -oer_type_decoder_f ResponseType_decode_oer; -oer_type_encoder_f ResponseType_encode_oer; -per_type_decoder_f ResponseType_decode_uper; -per_type_encoder_f ResponseType_encode_uper; -per_type_decoder_f ResponseType_decode_aper; -per_type_encoder_f ResponseType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResponseType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h deleted file mode 100644 index 4d634ff53..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionAppliesTo_H_ -#define _RestrictionAppliesTo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionAppliesTo { - RestrictionAppliesTo_none = 0, - RestrictionAppliesTo_equippedTransit = 1, - RestrictionAppliesTo_equippedTaxis = 2, - RestrictionAppliesTo_equippedOther = 3, - RestrictionAppliesTo_emissionCompliant = 4, - RestrictionAppliesTo_equippedBicycle = 5, - RestrictionAppliesTo_weightCompliant = 6, - RestrictionAppliesTo_heightCompliant = 7, - RestrictionAppliesTo_pedestrians = 8, - RestrictionAppliesTo_slowMovingPersons = 9, - RestrictionAppliesTo_wheelchairUsers = 10, - RestrictionAppliesTo_visualDisabilities = 11, - RestrictionAppliesTo_audioDisabilities = 12, - RestrictionAppliesTo_otherUnknownDisabilities = 13 - /* - * Enumeration is extensible - */ -} e_RestrictionAppliesTo; - -/* RestrictionAppliesTo */ -typedef long RestrictionAppliesTo_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; -extern const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1; -asn_struct_free_f RestrictionAppliesTo_free; -asn_struct_print_f RestrictionAppliesTo_print; -asn_constr_check_f RestrictionAppliesTo_constraint; -ber_type_decoder_f RestrictionAppliesTo_decode_ber; -der_type_encoder_f RestrictionAppliesTo_encode_der; -xer_type_decoder_f RestrictionAppliesTo_decode_xer; -xer_type_encoder_f RestrictionAppliesTo_encode_xer; -oer_type_decoder_f RestrictionAppliesTo_decode_oer; -oer_type_encoder_f RestrictionAppliesTo_encode_oer; -per_type_decoder_f RestrictionAppliesTo_decode_uper; -per_type_encoder_f RestrictionAppliesTo_encode_uper; -per_type_decoder_f RestrictionAppliesTo_decode_aper; -per_type_encoder_f RestrictionAppliesTo_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionAppliesTo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h deleted file mode 100644 index 8d39f57d5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionClassAssignment_H_ -#define _RestrictionClassAssignment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionClassID.h" -#include "RestrictionUserTypeList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassAssignment */ -typedef struct RestrictionClassAssignment { - RestrictionClassID_t id; - RestrictionUserTypeList_t users; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassAssignment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; -extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassAssignment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h deleted file mode 100644 index 51f358bef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionClassID_H_ -#define _RestrictionClassID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionClassID */ -typedef long RestrictionClassID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; -asn_struct_free_f RestrictionClassID_free; -asn_struct_print_f RestrictionClassID_print; -asn_constr_check_f RestrictionClassID_constraint; -ber_type_decoder_f RestrictionClassID_decode_ber; -der_type_encoder_f RestrictionClassID_encode_der; -xer_type_decoder_f RestrictionClassID_decode_xer; -xer_type_encoder_f RestrictionClassID_encode_xer; -oer_type_decoder_f RestrictionClassID_decode_oer; -oer_type_encoder_f RestrictionClassID_encode_oer; -per_type_decoder_f RestrictionClassID_decode_uper; -per_type_encoder_f RestrictionClassID_encode_uper; -per_type_decoder_f RestrictionClassID_decode_aper; -per_type_encoder_f RestrictionClassID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionClassID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h deleted file mode 100644 index 0a948d2e7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionClassList_H_ -#define _RestrictionClassList_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 RestrictionClassAssignment; - -/* RestrictionClassList */ -typedef struct RestrictionClassList { - A_SEQUENCE_OF(struct RestrictionClassAssignment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionClassList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; -extern asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionClassList_1[1]; -extern asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RestrictionClassAssignment.h" - -#endif /* _RestrictionClassList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h deleted file mode 100644 index 0925bee97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionUserType_addGrpC_H_ -#define _RestrictionUserType_addGrpC_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EmissionType.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RestrictionUserType-addGrpC */ -typedef struct RestrictionUserType_addGrpC { - EmissionType_t *emission; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserType_addGrpC_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC; - -#ifdef __cplusplus -} -#endif - -#endif /* _RestrictionUserType_addGrpC_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h deleted file mode 100644 index b104d7c50..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionUserType_H_ -#define _RestrictionUserType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RestrictionAppliesTo.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RestrictionUserType_PR { - RestrictionUserType_PR_NOTHING, /* No components present */ - RestrictionUserType_PR_basicType, - RestrictionUserType_PR_regional - /* Extensions may appear below */ - -} RestrictionUserType_PR; - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* RestrictionUserType */ -typedef struct RestrictionUserType { - RestrictionUserType_PR present; - union RestrictionUserType_u { - RestrictionAppliesTo_t basicType; - struct RestrictionUserType__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regional; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; -extern asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionUserType_1[2]; -extern asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _RestrictionUserType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h deleted file mode 100644 index dd1d205fe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RestrictionUserTypeList_H_ -#define _RestrictionUserTypeList_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 RestrictionUserType; - -/* RestrictionUserTypeList */ -typedef struct RestrictionUserTypeList { - A_SEQUENCE_OF(struct RestrictionUserType) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RestrictionUserTypeList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; -extern asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1; -extern asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[1]; -extern asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RestrictionUserType.h" - -#endif /* _RestrictionUserTypeList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h deleted file mode 100644 index d4b57e79c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadLaneSetList_H_ -#define _RoadLaneSetList_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 GenericLane; - -/* RoadLaneSetList */ -typedef struct RoadLaneSetList { - A_SEQUENCE_OF(struct GenericLane) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadLaneSetList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; -extern asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[1]; -extern asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "GenericLane.h" - -#endif /* _RoadLaneSetList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h deleted file mode 100644 index 5dea18a89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadRegulatorID_H_ -#define _RoadRegulatorID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadRegulatorID */ -typedef long RoadRegulatorID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; -asn_struct_free_f RoadRegulatorID_free; -asn_struct_print_f RoadRegulatorID_print; -asn_constr_check_f RoadRegulatorID_constraint; -ber_type_decoder_f RoadRegulatorID_decode_ber; -der_type_encoder_f RoadRegulatorID_encode_der; -xer_type_decoder_f RoadRegulatorID_decode_xer; -xer_type_encoder_f RoadRegulatorID_encode_xer; -oer_type_decoder_f RoadRegulatorID_decode_oer; -oer_type_encoder_f RoadRegulatorID_encode_oer; -per_type_decoder_f RoadRegulatorID_decode_uper; -per_type_encoder_f RoadRegulatorID_encode_uper; -per_type_decoder_f RoadRegulatorID_decode_aper; -per_type_encoder_f RoadRegulatorID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadRegulatorID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h deleted file mode 100644 index 4be7bdf65..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSegment_H_ -#define _RoadSegment_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "RoadSegmentReferenceID.h" -#include "DSRC_MsgCount.h" -#include "Position3D.h" -#include "LaneWidth.h" -#include "RoadLaneSetList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SpeedLimitList; -struct Reg_BasicSafetyMessage; - -/* RoadSegment */ -typedef struct RoadSegment { - DescriptiveName_t *name; /* OPTIONAL */ - RoadSegmentReferenceID_t id; - DSRC_MsgCount_t revision; - Position3D_t refPoint; - LaneWidth_t *laneWidth; /* OPTIONAL */ - struct SpeedLimitList *speedLimits; /* OPTIONAL */ - RoadLaneSetList_t roadLaneSet; - struct RoadSegment__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} RoadSegment_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegment_1[8]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SpeedLimitList.h" -#include "RegionalExtension.h" - -#endif /* _RoadSegment_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h deleted file mode 100644 index 3db17d835..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSegmentID_H_ -#define _RoadSegmentID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentID */ -typedef long RoadSegmentID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; -asn_struct_free_f RoadSegmentID_free; -asn_struct_print_f RoadSegmentID_print; -asn_constr_check_f RoadSegmentID_constraint; -ber_type_decoder_f RoadSegmentID_decode_ber; -der_type_encoder_f RoadSegmentID_encode_der; -xer_type_decoder_f RoadSegmentID_decode_xer; -xer_type_encoder_f RoadSegmentID_encode_xer; -oer_type_decoder_f RoadSegmentID_decode_oer; -oer_type_encoder_f RoadSegmentID_encode_oer; -per_type_decoder_f RoadSegmentID_decode_uper; -per_type_encoder_f RoadSegmentID_encode_uper; -per_type_decoder_f RoadSegmentID_decode_aper; -per_type_encoder_f RoadSegmentID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h deleted file mode 100644 index 8f876ca06..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSegmentList_H_ -#define _RoadSegmentList_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 RoadSegment; - -/* RoadSegmentList */ -typedef struct RoadSegmentList { - A_SEQUENCE_OF(struct RoadSegment) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; -extern asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegmentList_1[1]; -extern asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RoadSegment.h" - -#endif /* _RoadSegmentList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h deleted file mode 100644 index 9170effd2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSegmentReferenceID_H_ -#define _RoadSegmentReferenceID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RoadRegulatorID.h" -#include "RoadSegmentID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSegmentReferenceID */ -typedef struct RoadSegmentReferenceID { - RoadRegulatorID_t *region; /* OPTIONAL */ - RoadSegmentID_t id; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSegmentReferenceID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSegmentReferenceID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h deleted file mode 100644 index 2999caec9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSideAlert_H_ -#define _RoadSideAlert_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "MinuteOfTheYear.h" -#include "ITIScodes.h" -#include "Priority.h" -#include "HeadingSlice.h" -#include "Extent.h" -#include "FurtherInfoID.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FullPositionVector; -struct Reg_BasicSafetyMessage; - -/* RoadSideAlert */ -typedef struct RoadSideAlert { - DSRC_MsgCount_t msgCnt; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - ITIScodes_t typeEvent; - struct RoadSideAlert__description { - A_SEQUENCE_OF(ITIScodes_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *description; - Priority_t *priority; /* OPTIONAL */ - HeadingSlice_t *heading; /* OPTIONAL */ - Extent_t *extent; /* OPTIONAL */ - struct FullPositionVector *position; /* OPTIONAL */ - FurtherInfoID_t *furtherInfoID; /* OPTIONAL */ - struct RoadSideAlert__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} RoadSideAlert_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSideAlert_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "FullPositionVector.h" -#include "RegionalExtension.h" - -#endif /* _RoadSideAlert_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h deleted file mode 100644 index a8f3938f4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadSignID_H_ -#define _RoadSignID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Position3D.h" -#include "HeadingSlice.h" -#include "MUTCDCode.h" -#include "MsgCRC.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadSignID */ -typedef struct RoadSignID { - Position3D_t position; - HeadingSlice_t viewAngle; - MUTCDCode_t *mutcdCode; /* OPTIONAL */ - MsgCRC_t *crc; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RoadSignID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; -extern asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1; -extern asn_TYPE_member_t asn_MBR_RoadSignID_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadSignID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h deleted file mode 100644 index b44368332..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _RoadwayCrownAngle_H_ -#define _RoadwayCrownAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* RoadwayCrownAngle */ -typedef long RoadwayCrownAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; -asn_struct_free_f RoadwayCrownAngle_free; -asn_struct_print_f RoadwayCrownAngle_print; -asn_constr_check_f RoadwayCrownAngle_constraint; -ber_type_decoder_f RoadwayCrownAngle_decode_ber; -der_type_encoder_f RoadwayCrownAngle_encode_der; -xer_type_decoder_f RoadwayCrownAngle_decode_xer; -xer_type_encoder_f RoadwayCrownAngle_encode_xer; -oer_type_decoder_f RoadwayCrownAngle_decode_oer; -oer_type_encoder_f RoadwayCrownAngle_encode_oer; -per_type_decoder_f RoadwayCrownAngle_decode_uper; -per_type_encoder_f RoadwayCrownAngle_encode_uper; -per_type_decoder_f RoadwayCrownAngle_decode_aper; -per_type_encoder_f RoadwayCrownAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RoadwayCrownAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h deleted file mode 100644 index 5326257bd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _RollDetected_H_ -#define _RollDetected_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RollDetected */ -typedef long RollDetected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RollDetected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RollDetected; -asn_struct_free_f RollDetected_free; -asn_struct_print_f RollDetected_print; -asn_constr_check_f RollDetected_constraint; -ber_type_decoder_f RollDetected_decode_ber; -der_type_encoder_f RollDetected_encode_der; -xer_type_decoder_f RollDetected_decode_xer; -xer_type_encoder_f RollDetected_encode_xer; -oer_type_decoder_f RollDetected_decode_oer; -oer_type_encoder_f RollDetected_encode_oer; -per_type_decoder_f RollDetected_decode_uper; -per_type_encoder_f RollDetected_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RollDetected_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h deleted file mode 100644 index 86d4d3b25..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _RollRate_H_ -#define _RollRate_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RollRate */ -typedef long RollRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RollRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RollRate; -asn_struct_free_f RollRate_free; -asn_struct_print_f RollRate_print; -asn_constr_check_f RollRate_constraint; -ber_type_decoder_f RollRate_decode_ber; -der_type_encoder_f RollRate_encode_der; -xer_type_decoder_f RollRate_decode_xer; -xer_type_encoder_f RollRate_encode_xer; -oer_type_decoder_f RollRate_decode_oer; -oer_type_encoder_f RollRate_encode_oer; -per_type_decoder_f RollRate_decode_uper; -per_type_encoder_f RollRate_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RollRate_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h deleted file mode 100644 index 9fbfec7fd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _RollRateConfidence_H_ -#define _RollRateConfidence_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RollRateConfidence { - RollRateConfidence_unavailable = 0, - RollRateConfidence_degSec_100_00 = 1, - RollRateConfidence_degSec_010_00 = 2, - RollRateConfidence_degSec_005_00 = 3, - RollRateConfidence_degSec_001_00 = 4, - RollRateConfidence_degSec_000_10 = 5, - RollRateConfidence_degSec_000_05 = 6, - RollRateConfidence_degSec_000_01 = 7 -} e_RollRateConfidence; - -/* RollRateConfidence */ -typedef long RollRateConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RollRateConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1; -asn_struct_free_f RollRateConfidence_free; -asn_struct_print_f RollRateConfidence_print; -asn_constr_check_f RollRateConfidence_constraint; -ber_type_decoder_f RollRateConfidence_decode_ber; -der_type_encoder_f RollRateConfidence_encode_der; -xer_type_decoder_f RollRateConfidence_decode_xer; -xer_type_encoder_f RollRateConfidence_encode_xer; -oer_type_decoder_f RollRateConfidence_decode_oer; -oer_type_encoder_f RollRateConfidence_encode_oer; -per_type_decoder_f RollRateConfidence_decode_uper; -per_type_encoder_f RollRateConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RollRateConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h deleted file mode 100644 index 484f4a152..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SPAT_H_ -#define _SPAT_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DescriptiveName.h" -#include "IntersectionStateList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* SPAT */ -typedef struct SPAT { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DescriptiveName_t *name; /* OPTIONAL */ - IntersectionStateList_t intersections; - struct SPAT__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SPAT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SPAT; -extern asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1; -extern asn_TYPE_member_t asn_MBR_SPAT_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _SPAT_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h deleted file mode 100644 index 418e7aa78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SSPindex_H_ -#define _SSPindex_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SSPindex */ -typedef long SSPindex_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SSPindex_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SSPindex; -asn_struct_free_f SSPindex_free; -asn_struct_print_f SSPindex_print; -asn_constr_check_f SSPindex_constraint; -ber_type_decoder_f SSPindex_decode_ber; -der_type_encoder_f SSPindex_encode_der; -xer_type_decoder_f SSPindex_decode_xer; -xer_type_encoder_f SSPindex_encode_xer; -oer_type_decoder_f SSPindex_decode_oer; -oer_type_encoder_f SSPindex_encode_oer; -per_type_decoder_f SSPindex_decode_uper; -per_type_encoder_f SSPindex_encode_uper; -per_type_decoder_f SSPindex_decode_aper; -per_type_encoder_f SSPindex_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SSPindex_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h deleted file mode 100644 index f109fe0c5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Sample_H_ -#define _Sample_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Sample */ -typedef struct Sample { - long sampleStart; - long sampleEnd; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Sample_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Sample; -extern asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1; -extern asn_TYPE_member_t asn_MBR_Sample_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Sample_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h deleted file mode 100644 index 554a09567..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Scale_B12_H_ -#define _Scale_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Scale-B12 */ -typedef long Scale_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Scale_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; -asn_struct_free_f Scale_B12_free; -asn_struct_print_f Scale_B12_print; -asn_constr_check_f Scale_B12_constraint; -ber_type_decoder_f Scale_B12_decode_ber; -der_type_encoder_f Scale_B12_encode_der; -xer_type_decoder_f Scale_B12_decode_xer; -xer_type_encoder_f Scale_B12_encode_xer; -oer_type_decoder_f Scale_B12_decode_oer; -oer_type_encoder_f Scale_B12_encode_oer; -per_type_decoder_f Scale_B12_decode_uper; -per_type_encoder_f Scale_B12_encode_uper; -per_type_decoder_f Scale_B12_decode_aper; -per_type_encoder_f Scale_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Scale_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h deleted file mode 100644 index e05936375..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _Schedule_H_ -#define _Schedule_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "INTEGER.h" -#include "BOOLEAN.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RepeatParams; -struct DaySchedule; - -/* Schedule */ -typedef struct Schedule { - INTEGER_t start; - INTEGER_t end; - struct Schedule__dow { - A_SEQUENCE_OF(BOOLEAN_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } dow; - struct Schedule__between { - A_SEQUENCE_OF(struct DaySchedule) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *between; - struct RepeatParams *repeat; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Schedule_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Schedule; -extern asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1; -extern asn_TYPE_member_t asn_MBR_Schedule_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RepeatParams.h" -#include "DaySchedule.h" - -#endif /* _Schedule_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h deleted file mode 100644 index 165ab16df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h deleted file mode 100644 index 63b2e27df..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Second_H_ -#define _Second_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Second */ -typedef long Second_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Second_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Second; -asn_struct_free_f Second_free; -asn_struct_print_f Second_print; -asn_constr_check_f Second_constraint; -ber_type_decoder_f Second_decode_ber; -der_type_encoder_f Second_encode_der; -xer_type_decoder_f Second_decode_xer; -xer_type_encoder_f Second_encode_xer; -oer_type_decoder_f Second_decode_oer; -oer_type_encoder_f Second_encode_oer; -per_type_decoder_f Second_decode_uper; -per_type_encoder_f Second_encode_uper; -per_type_decoder_f Second_decode_aper; -per_type_encoder_f Second_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Second_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h deleted file mode 100644 index 8763b4cee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SecondOfTime_H_ -#define _SecondOfTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SecondOfTime */ -typedef long SecondOfTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SecondOfTime; -asn_struct_free_f SecondOfTime_free; -asn_struct_print_f SecondOfTime_print; -asn_constr_check_f SecondOfTime_constraint; -ber_type_decoder_f SecondOfTime_decode_ber; -der_type_encoder_f SecondOfTime_encode_der; -xer_type_decoder_f SecondOfTime_decode_xer; -xer_type_encoder_f SecondOfTime_encode_xer; -oer_type_decoder_f SecondOfTime_decode_oer; -oer_type_encoder_f SecondOfTime_encode_oer; -per_type_decoder_f SecondOfTime_decode_uper; -per_type_encoder_f SecondOfTime_encode_uper; -per_type_decoder_f SecondOfTime_decode_aper; -per_type_encoder_f SecondOfTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SecondOfTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h deleted file mode 100644 index e64559f3d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SecondsAngle_H_ -#define _SecondsAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SecondsAngle */ -typedef long SecondsAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; -asn_struct_free_f SecondsAngle_free; -asn_struct_print_f SecondsAngle_print; -asn_constr_check_f SecondsAngle_constraint; -ber_type_decoder_f SecondsAngle_decode_ber; -der_type_encoder_f SecondsAngle_encode_der; -xer_type_decoder_f SecondsAngle_decode_xer; -xer_type_encoder_f SecondsAngle_encode_xer; -oer_type_decoder_f SecondsAngle_decode_oer; -oer_type_encoder_f SecondsAngle_encode_oer; -per_type_decoder_f SecondsAngle_decode_uper; -per_type_encoder_f SecondsAngle_encode_uper; -per_type_decoder_f SecondsAngle_decode_aper; -per_type_encoder_f SecondsAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SecondsAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h deleted file mode 100644 index 9684f00d6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SegmentAttributeLL_H_ -#define _SegmentAttributeLL_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SegmentAttributeLL { - SegmentAttributeLL_reserved = 0, - SegmentAttributeLL_doNotBlock = 1, - SegmentAttributeLL_whiteLine = 2, - SegmentAttributeLL_mergingLaneLeft = 3, - SegmentAttributeLL_mergingLaneRight = 4, - SegmentAttributeLL_curbOnLeft = 5, - SegmentAttributeLL_curbOnRight = 6, - SegmentAttributeLL_loadingzoneOnLeft = 7, - SegmentAttributeLL_loadingzoneOnRight = 8, - SegmentAttributeLL_turnOutPointOnLeft = 9, - SegmentAttributeLL_turnOutPointOnRight = 10, - SegmentAttributeLL_adjacentParkingOnLeft = 11, - SegmentAttributeLL_adjacentParkingOnRight = 12, - SegmentAttributeLL_adjacentBikeLaneOnLeft = 13, - SegmentAttributeLL_adjacentBikeLaneOnRight = 14, - SegmentAttributeLL_sharedBikeLane = 15, - SegmentAttributeLL_bikeBoxInFront = 16, - SegmentAttributeLL_transitStopOnLeft = 17, - SegmentAttributeLL_transitStopOnRight = 18, - SegmentAttributeLL_transitStopInLane = 19, - SegmentAttributeLL_sharedWithTrackedVehicle = 20, - SegmentAttributeLL_safeIsland = 21, - SegmentAttributeLL_lowCurbsPresent = 22, - SegmentAttributeLL_rumbleStripPresent = 23, - SegmentAttributeLL_audibleSignalingPresent = 24, - SegmentAttributeLL_adaptiveTimingPresent = 25, - SegmentAttributeLL_rfSignalRequestPresent = 26, - SegmentAttributeLL_partialCurbIntrusion = 27, - SegmentAttributeLL_taperToLeft = 28, - SegmentAttributeLL_taperToRight = 29, - SegmentAttributeLL_taperToCenterLine = 30, - SegmentAttributeLL_parallelParking = 31, - SegmentAttributeLL_headInParking = 32, - SegmentAttributeLL_freeParking = 33, - SegmentAttributeLL_timeRestrictionsOnParking = 34, - SegmentAttributeLL_costToPark = 35, - SegmentAttributeLL_midBlockCurbPresent = 36, - SegmentAttributeLL_unEvenPavementPresent = 37 - /* - * Enumeration is extensible - */ -} e_SegmentAttributeLL; - -/* SegmentAttributeLL */ -typedef long SegmentAttributeLL_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL; -extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1; -asn_struct_free_f SegmentAttributeLL_free; -asn_struct_print_f SegmentAttributeLL_print; -asn_constr_check_f SegmentAttributeLL_constraint; -ber_type_decoder_f SegmentAttributeLL_decode_ber; -der_type_encoder_f SegmentAttributeLL_encode_der; -xer_type_decoder_f SegmentAttributeLL_decode_xer; -xer_type_encoder_f SegmentAttributeLL_encode_xer; -oer_type_decoder_f SegmentAttributeLL_decode_oer; -oer_type_encoder_f SegmentAttributeLL_encode_oer; -per_type_decoder_f SegmentAttributeLL_decode_uper; -per_type_encoder_f SegmentAttributeLL_encode_uper; -per_type_decoder_f SegmentAttributeLL_decode_aper; -per_type_encoder_f SegmentAttributeLL_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeLL_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h deleted file mode 100644 index 27184759d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SegmentAttributeLLList_H_ -#define _SegmentAttributeLLList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SegmentAttributeLL.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SegmentAttributeLLList */ -typedef struct SegmentAttributeLLList { - A_SEQUENCE_OF(SegmentAttributeLL_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SegmentAttributeLLList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList; -extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1; -extern asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[1]; -extern asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeLLList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h deleted file mode 100644 index 78412f1fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SegmentAttributeXY_H_ -#define _SegmentAttributeXY_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SegmentAttributeXY { - SegmentAttributeXY_reserved = 0, - SegmentAttributeXY_doNotBlock = 1, - SegmentAttributeXY_whiteLine = 2, - SegmentAttributeXY_mergingLaneLeft = 3, - SegmentAttributeXY_mergingLaneRight = 4, - SegmentAttributeXY_curbOnLeft = 5, - SegmentAttributeXY_curbOnRight = 6, - SegmentAttributeXY_loadingzoneOnLeft = 7, - SegmentAttributeXY_loadingzoneOnRight = 8, - SegmentAttributeXY_turnOutPointOnLeft = 9, - SegmentAttributeXY_turnOutPointOnRight = 10, - SegmentAttributeXY_adjacentParkingOnLeft = 11, - SegmentAttributeXY_adjacentParkingOnRight = 12, - SegmentAttributeXY_adjacentBikeLaneOnLeft = 13, - SegmentAttributeXY_adjacentBikeLaneOnRight = 14, - SegmentAttributeXY_sharedBikeLane = 15, - SegmentAttributeXY_bikeBoxInFront = 16, - SegmentAttributeXY_transitStopOnLeft = 17, - SegmentAttributeXY_transitStopOnRight = 18, - SegmentAttributeXY_transitStopInLane = 19, - SegmentAttributeXY_sharedWithTrackedVehicle = 20, - SegmentAttributeXY_safeIsland = 21, - SegmentAttributeXY_lowCurbsPresent = 22, - SegmentAttributeXY_rumbleStripPresent = 23, - SegmentAttributeXY_audibleSignalingPresent = 24, - SegmentAttributeXY_adaptiveTimingPresent = 25, - SegmentAttributeXY_rfSignalRequestPresent = 26, - SegmentAttributeXY_partialCurbIntrusion = 27, - SegmentAttributeXY_taperToLeft = 28, - SegmentAttributeXY_taperToRight = 29, - SegmentAttributeXY_taperToCenterLine = 30, - SegmentAttributeXY_parallelParking = 31, - SegmentAttributeXY_headInParking = 32, - SegmentAttributeXY_freeParking = 33, - SegmentAttributeXY_timeRestrictionsOnParking = 34, - SegmentAttributeXY_costToPark = 35, - SegmentAttributeXY_midBlockCurbPresent = 36, - SegmentAttributeXY_unEvenPavementPresent = 37 - /* - * Enumeration is extensible - */ -} e_SegmentAttributeXY; - -/* SegmentAttributeXY */ -typedef long SegmentAttributeXY_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY; -extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1; -asn_struct_free_f SegmentAttributeXY_free; -asn_struct_print_f SegmentAttributeXY_print; -asn_constr_check_f SegmentAttributeXY_constraint; -ber_type_decoder_f SegmentAttributeXY_decode_ber; -der_type_encoder_f SegmentAttributeXY_encode_der; -xer_type_decoder_f SegmentAttributeXY_decode_xer; -xer_type_encoder_f SegmentAttributeXY_encode_xer; -oer_type_decoder_f SegmentAttributeXY_decode_oer; -oer_type_encoder_f SegmentAttributeXY_encode_oer; -per_type_decoder_f SegmentAttributeXY_decode_uper; -per_type_encoder_f SegmentAttributeXY_encode_uper; -per_type_decoder_f SegmentAttributeXY_decode_aper; -per_type_encoder_f SegmentAttributeXY_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeXY_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h deleted file mode 100644 index 0f7d31e89..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SegmentAttributeXYList_H_ -#define _SegmentAttributeXYList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SegmentAttributeXY.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SegmentAttributeXYList */ -typedef struct SegmentAttributeXYList { - A_SEQUENCE_OF(SegmentAttributeXY_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SegmentAttributeXYList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList; -extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1; -extern asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[1]; -extern asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SegmentAttributeXYList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h deleted file mode 100644 index 695d729a5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SemiMajorAxisAccuracy_H_ -#define _SemiMajorAxisAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMajorAxisAccuracy */ -typedef long SemiMajorAxisAccuracy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy; -asn_struct_free_f SemiMajorAxisAccuracy_free; -asn_struct_print_f SemiMajorAxisAccuracy_print; -asn_constr_check_f SemiMajorAxisAccuracy_constraint; -ber_type_decoder_f SemiMajorAxisAccuracy_decode_ber; -der_type_encoder_f SemiMajorAxisAccuracy_encode_der; -xer_type_decoder_f SemiMajorAxisAccuracy_decode_xer; -xer_type_encoder_f SemiMajorAxisAccuracy_encode_xer; -oer_type_decoder_f SemiMajorAxisAccuracy_decode_oer; -oer_type_encoder_f SemiMajorAxisAccuracy_encode_oer; -per_type_decoder_f SemiMajorAxisAccuracy_decode_uper; -per_type_encoder_f SemiMajorAxisAccuracy_encode_uper; -per_type_decoder_f SemiMajorAxisAccuracy_decode_aper; -per_type_encoder_f SemiMajorAxisAccuracy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMajorAxisAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h deleted file mode 100644 index a7598878b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SemiMajorAxisOrientation_H_ -#define _SemiMajorAxisOrientation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMajorAxisOrientation */ -typedef long SemiMajorAxisOrientation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation; -asn_struct_free_f SemiMajorAxisOrientation_free; -asn_struct_print_f SemiMajorAxisOrientation_print; -asn_constr_check_f SemiMajorAxisOrientation_constraint; -ber_type_decoder_f SemiMajorAxisOrientation_decode_ber; -der_type_encoder_f SemiMajorAxisOrientation_encode_der; -xer_type_decoder_f SemiMajorAxisOrientation_decode_xer; -xer_type_encoder_f SemiMajorAxisOrientation_encode_xer; -oer_type_decoder_f SemiMajorAxisOrientation_decode_oer; -oer_type_encoder_f SemiMajorAxisOrientation_encode_oer; -per_type_decoder_f SemiMajorAxisOrientation_decode_uper; -per_type_encoder_f SemiMajorAxisOrientation_encode_uper; -per_type_decoder_f SemiMajorAxisOrientation_decode_aper; -per_type_encoder_f SemiMajorAxisOrientation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMajorAxisOrientation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h deleted file mode 100644 index 0b696b25d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SemiMinorAxisAccuracy_H_ -#define _SemiMinorAxisAccuracy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SemiMinorAxisAccuracy */ -typedef long SemiMinorAxisAccuracy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy; -asn_struct_free_f SemiMinorAxisAccuracy_free; -asn_struct_print_f SemiMinorAxisAccuracy_print; -asn_constr_check_f SemiMinorAxisAccuracy_constraint; -ber_type_decoder_f SemiMinorAxisAccuracy_decode_ber; -der_type_encoder_f SemiMinorAxisAccuracy_encode_der; -xer_type_decoder_f SemiMinorAxisAccuracy_decode_xer; -xer_type_encoder_f SemiMinorAxisAccuracy_encode_xer; -oer_type_decoder_f SemiMinorAxisAccuracy_decode_oer; -oer_type_encoder_f SemiMinorAxisAccuracy_encode_oer; -per_type_decoder_f SemiMinorAxisAccuracy_decode_uper; -per_type_encoder_f SemiMinorAxisAccuracy_encode_uper; -per_type_decoder_f SemiMinorAxisAccuracy_decode_aper; -per_type_encoder_f SemiMinorAxisAccuracy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SemiMinorAxisAccuracy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h deleted file mode 100644 index 5a4d08db2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _SensorDataSharingMessage_H_ -#define _SensorDataSharingMessage_H_ - - -#include - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "TemporaryID.h" -#include "EquipmentType.h" -#include "DDateTime.h" -#include "Position3D.h" -#include "PositionalAccuracy.h" -#include "ElevationConfidence.h" -#include "DetectedObjectList.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* SensorDataSharingMessage */ -typedef struct SensorDataSharingMessage { - DSRC_MsgCount_t msgCnt; - TemporaryID_t sourceID; - EquipmentType_t equipmentType; - DDateTime_t sDSMTimeStamp; - Position3D_t refPos; - PositionalAccuracy_t refPosXYConf; - ElevationConfidence_t *refPosElConf /* OPTIONAL */; - DetectedObjectList_t objects; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SensorDataSharingMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[8]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SensorDataSharingMessage_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h deleted file mode 100644 index f6fcf5033..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ShapePointSet_H_ -#define _ShapePointSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "LaneWidth.h" -#include "DirectionOfUse.h" -#include "NodeListXY.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Position3D; - -/* ShapePointSet */ -typedef struct ShapePointSet { - struct Position3D *anchor; /* OPTIONAL */ - LaneWidth_t *laneWidth; /* OPTIONAL */ - DirectionOfUse_t *directionality; /* OPTIONAL */ - NodeListXY_t nodeList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ShapePointSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; -extern asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1; -extern asn_TYPE_member_t asn_MBR_ShapePointSet_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Position3D.h" - -#endif /* _ShapePointSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h deleted file mode 100644 index 92fe6b018..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignPrority_H_ -#define _SignPrority_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignPrority */ -typedef long SignPrority_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SignPrority_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SignPrority; -asn_struct_free_f SignPrority_free; -asn_struct_print_f SignPrority_print; -asn_constr_check_f SignPrority_constraint; -ber_type_decoder_f SignPrority_decode_ber; -der_type_encoder_f SignPrority_encode_der; -xer_type_decoder_f SignPrority_decode_xer; -xer_type_encoder_f SignPrority_encode_xer; -oer_type_decoder_f SignPrority_decode_oer; -oer_type_encoder_f SignPrority_encode_oer; -per_type_decoder_f SignPrority_decode_uper; -per_type_encoder_f SignPrority_encode_uper; -per_type_decoder_f SignPrority_decode_aper; -per_type_encoder_f SignPrority_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignPrority_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h deleted file mode 100644 index 872070a3c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalControlZone_H_ -#define _SignalControlZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "RegionalExtension.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalControlZone */ -typedef struct SignalControlZone { - Reg_BasicSafetyMessage_t zone; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalControlZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalControlZone_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalControlZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h deleted file mode 100644 index 25f977690..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalGroupID_H_ -#define _SignalGroupID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalGroupID */ -typedef long SignalGroupID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; -asn_struct_free_f SignalGroupID_free; -asn_struct_print_f SignalGroupID_print; -asn_constr_check_f SignalGroupID_constraint; -ber_type_decoder_f SignalGroupID_decode_ber; -der_type_encoder_f SignalGroupID_encode_der; -xer_type_decoder_f SignalGroupID_decode_xer; -xer_type_encoder_f SignalGroupID_encode_xer; -oer_type_decoder_f SignalGroupID_decode_oer; -oer_type_encoder_f SignalGroupID_encode_oer; -per_type_decoder_f SignalGroupID_decode_uper; -per_type_encoder_f SignalGroupID_encode_uper; -per_type_decoder_f SignalGroupID_decode_aper; -per_type_encoder_f SignalGroupID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalGroupID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h deleted file mode 100644 index b4d22021a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalHeadLocation_H_ -#define _SignalHeadLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NodeOffsetPointXY.h" -#include "SignalGroupID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalHeadLocation */ -typedef struct SignalHeadLocation { - NodeOffsetPointXY_t node; - SignalGroupID_t signalGroupID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalHeadLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h deleted file mode 100644 index c44a5f457..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalHeadLocationList_H_ -#define _SignalHeadLocationList_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 SignalHeadLocation; - -/* SignalHeadLocationList */ -typedef struct SignalHeadLocationList { - A_SEQUENCE_OF(struct SignalHeadLocation) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalHeadLocationList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; -extern asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalHeadLocation.h" - -#endif /* _SignalHeadLocationList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h deleted file mode 100644 index 8d35f517c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalReqScheme_H_ -#define _SignalReqScheme_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SignalReqScheme */ -typedef OCTET_STRING_t SignalReqScheme_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; -asn_struct_free_f SignalReqScheme_free; -asn_struct_print_f SignalReqScheme_print; -asn_constr_check_f SignalReqScheme_constraint; -ber_type_decoder_f SignalReqScheme_decode_ber; -der_type_encoder_f SignalReqScheme_encode_der; -xer_type_decoder_f SignalReqScheme_decode_xer; -xer_type_encoder_f SignalReqScheme_encode_xer; -oer_type_decoder_f SignalReqScheme_decode_oer; -oer_type_encoder_f SignalReqScheme_encode_oer; -per_type_decoder_f SignalReqScheme_decode_uper; -per_type_encoder_f SignalReqScheme_encode_uper; -per_type_decoder_f SignalReqScheme_decode_aper; -per_type_encoder_f SignalReqScheme_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SignalReqScheme_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h deleted file mode 100644 index 671eb3ada..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalRequest_H_ -#define _SignalRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IntersectionReferenceID.h" -#include "RequestID.h" -#include "PriorityRequestType.h" -#include "IntersectionAccessPoint.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct IntersectionAccessPoint; -struct Reg_BasicSafetyMessage; - -/* SignalRequest */ -typedef struct SignalRequest { - IntersectionReferenceID_t id; - RequestID_t requestID; - PriorityRequestType_t requestType; - IntersectionAccessPoint_t inBoundLane; - struct IntersectionAccessPoint *outBoundLane; /* OPTIONAL */ - struct SignalRequest__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequest_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "IntersectionAccessPoint.h" -#include "RegionalExtension.h" - -#endif /* _SignalRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h deleted file mode 100644 index 84bf74f73..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalRequestList_H_ -#define _SignalRequestList_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 SignalRequestPackage; - -/* SignalRequestList */ -typedef struct SignalRequestList { - A_SEQUENCE_OF(struct SignalRequestPackage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequestList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestList; -extern asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalRequestPackage.h" - -#endif /* _SignalRequestList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h deleted file mode 100644 index 936fb5cd2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalRequestMessage_H_ -#define _SignalRequestMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "DSRC_MsgCount.h" -#include "RequestorDescription.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalRequestList; -struct Reg_BasicSafetyMessage; - -/* SignalRequestMessage */ -typedef struct SignalRequestMessage { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t second; - DSRC_MsgCount_t *sequenceNumber; /* OPTIONAL */ - struct SignalRequestList *requests; /* OPTIONAL */ - RequestorDescription_t requestor; - struct SignalRequestMessage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalRequestMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalRequestList.h" -#include "RegionalExtension.h" - -#endif /* _SignalRequestMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h deleted file mode 100644 index 1ca5fe0e3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalRequestPackage_H_ -#define _SignalRequestPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SignalRequest.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* SignalRequestPackage */ -typedef struct SignalRequestPackage { - SignalRequest_t request; - MinuteOfTheYear_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DSecond_t *duration; /* OPTIONAL */ - struct SignalRequestPackage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalRequestPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _SignalRequestPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h deleted file mode 100644 index 13ce41038..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalRequesterInfo_H_ -#define _SignalRequesterInfo_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleID.h" -#include "RequestID.h" -#include "DSRC_MsgCount.h" -#include "BasicVehicleRole.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RequestorType; - -/* SignalRequesterInfo */ -typedef struct SignalRequesterInfo { - VehicleID_t id; - RequestID_t request; - DSRC_MsgCount_t sequenceNumber; - BasicVehicleRole_t *role; /* OPTIONAL */ - struct RequestorType *typeData; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalRequesterInfo_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RequestorType.h" - -#endif /* _SignalRequesterInfo_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h deleted file mode 100644 index 657943018..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalStatus_H_ -#define _SignalStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "IntersectionReferenceID.h" -#include "SignalStatusPackageList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* SignalStatus */ -typedef struct SignalStatus { - DSRC_MsgCount_t sequenceNumber; - IntersectionReferenceID_t id; - SignalStatusPackageList_t sigStatus; - struct SignalStatus__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatus_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _SignalStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h deleted file mode 100644 index 0893ab609..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalStatusList_H_ -#define _SignalStatusList_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 SignalStatus; - -/* SignalStatusList */ -typedef struct SignalStatusList { - A_SEQUENCE_OF(struct SignalStatus) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalStatusList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusList; -extern asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalStatus.h" - -#endif /* _SignalStatusList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h deleted file mode 100644 index 8e8229cde..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalStatusMessage_H_ -#define _SignalStatusMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "DSRC_MsgCount.h" -#include "SignalStatusList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* SignalStatusMessage */ -typedef struct SignalStatusMessage { - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - DSecond_t second; - DSRC_MsgCount_t *sequenceNumber; /* OPTIONAL */ - SignalStatusList_t status; - struct SignalStatusMessage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalStatusMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _SignalStatusMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h deleted file mode 100644 index bfade5473..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalStatusPackage_H_ -#define _SignalStatusPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IntersectionAccessPoint.h" -#include "MinuteOfTheYear.h" -#include "DSecond.h" -#include "PrioritizationResponseStatus.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SignalRequesterInfo; -struct IntersectionAccessPoint; -struct Reg_BasicSafetyMessage; - -/* SignalStatusPackage */ -typedef struct SignalStatusPackage { - struct SignalRequesterInfo *requester; /* OPTIONAL */ - IntersectionAccessPoint_t inboundOn; - struct IntersectionAccessPoint *outboundOn; /* OPTIONAL */ - MinuteOfTheYear_t *minute; /* OPTIONAL */ - DSecond_t *second; /* OPTIONAL */ - DSecond_t *duration; /* OPTIONAL */ - PrioritizationResponseStatus_t status; - struct SignalStatusPackage__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SignalStatusPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[8]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalRequesterInfo.h" -#include "IntersectionAccessPoint.h" -#include "RegionalExtension.h" - -#endif /* _SignalStatusPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h deleted file mode 100644 index 998de1e0c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SignalStatusPackageList_H_ -#define _SignalStatusPackageList_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 SignalStatusPackage; - -/* SignalStatusPackageList */ -typedef struct SignalStatusPackageList { - A_SEQUENCE_OF(struct SignalStatusPackage) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SignalStatusPackageList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList; -extern asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1; -extern asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[1]; -extern asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "SignalStatusPackage.h" - -#endif /* _SignalStatusPackageList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h deleted file mode 100644 index 0f5652418..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SirenInUse_H_ -#define _SirenInUse_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SirenInUse { - SirenInUse_unavailable = 0, - SirenInUse_notInUse = 1, - SirenInUse_inUse = 2, - SirenInUse_reserved = 3 -} e_SirenInUse; - -/* SirenInUse */ -typedef long SirenInUse_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SirenInUse_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; -extern const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1; -asn_struct_free_f SirenInUse_free; -asn_struct_print_f SirenInUse_print; -asn_constr_check_f SirenInUse_constraint; -ber_type_decoder_f SirenInUse_decode_ber; -der_type_encoder_f SirenInUse_encode_der; -xer_type_decoder_f SirenInUse_decode_xer; -xer_type_encoder_f SirenInUse_encode_xer; -oer_type_decoder_f SirenInUse_decode_oer; -oer_type_encoder_f SirenInUse_encode_oer; -per_type_decoder_f SirenInUse_decode_uper; -per_type_encoder_f SirenInUse_encode_uper; -per_type_decoder_f SirenInUse_decode_aper; -per_type_encoder_f SirenInUse_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SirenInUse_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h deleted file mode 100644 index 7b35e76ef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _SizeValue_H_ -#define _SizeValue_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* SizeValue */ -typedef long SizeValue_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SizeValue_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SizeValue; -asn_struct_free_f SizeValue_free; -asn_struct_print_f SizeValue_print; -asn_constr_check_f SizeValue_constraint; -ber_type_decoder_f SizeValue_decode_ber; -der_type_encoder_f SizeValue_encode_der; -xer_type_decoder_f SizeValue_decode_xer; -xer_type_encoder_f SizeValue_encode_xer; -oer_type_decoder_f SizeValue_decode_oer; -oer_type_encoder_f SizeValue_encode_oer; -per_type_decoder_f SizeValue_decode_uper; -per_type_encoder_f SizeValue_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SizeValue_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h deleted file mode 100644 index b719b5570..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _SizeValueConfidence_H_ -#define _SizeValueConfidence_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SizeValueConfidence { - SizeValueConfidence_unavailable = 0, - SizeValueConfidence_size_100_00 = 1, - SizeValueConfidence_size_050_00 = 2, - SizeValueConfidence_size_020_00 = 3, - SizeValueConfidence_size_010_00 = 4, - SizeValueConfidence_size_005_00 = 5, - SizeValueConfidence_size_002_00 = 6, - SizeValueConfidence_size_001_00 = 7, - SizeValueConfidence_size_000_50 = 8, - SizeValueConfidence_size_000_20 = 9, - SizeValueConfidence_size_000_10 = 10, - SizeValueConfidence_size_000_05 = 11, - SizeValueConfidence_size_000_02 = 12, - SizeValueConfidence_size_000_01 = 13 -} e_SizeValueConfidence; - -/* SizeValueConfidence */ -typedef long SizeValueConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1; -asn_struct_free_f SizeValueConfidence_free; -asn_struct_print_f SizeValueConfidence_print; -asn_constr_check_f SizeValueConfidence_constraint; -ber_type_decoder_f SizeValueConfidence_decode_ber; -der_type_encoder_f SizeValueConfidence_encode_der; -xer_type_decoder_f SizeValueConfidence_decode_xer; -xer_type_encoder_f SizeValueConfidence_encode_xer; -oer_type_decoder_f SizeValueConfidence_decode_oer; -oer_type_encoder_f SizeValueConfidence_encode_oer; -per_type_decoder_f SizeValueConfidence_decode_uper; -per_type_encoder_f SizeValueConfidence_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SizeValueConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h deleted file mode 100644 index 064db9f78..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Snapshot_H_ -#define _Snapshot_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "FullPositionVector.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleSafetyExtensions; -struct VehicleStatus; - -/* Snapshot */ -typedef struct Snapshot { - FullPositionVector_t thePosition; - struct VehicleSafetyExtensions *safetyExt; /* OPTIONAL */ - struct VehicleStatus *dataSet; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Snapshot_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Snapshot; -extern asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1; -extern asn_TYPE_member_t asn_MBR_Snapshot_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleSafetyExtensions.h" -#include "VehicleStatus.h" - -#endif /* _Snapshot_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h deleted file mode 100644 index 3e10e580b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SnapshotDistance_H_ -#define _SnapshotDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossDistance.h" -#include "GrossSpeed.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotDistance */ -typedef struct SnapshotDistance { - GrossDistance_t distance1; - GrossSpeed_t speed1; - GrossDistance_t distance2; - GrossSpeed_t speed2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotDistance_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; -extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1; -extern asn_TYPE_member_t asn_MBR_SnapshotDistance_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h deleted file mode 100644 index 044385102..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SnapshotTime_H_ -#define _SnapshotTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossSpeed.h" -#include "SecondOfTime.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SnapshotTime */ -typedef struct SnapshotTime { - GrossSpeed_t speed1; - SecondOfTime_t time1; - GrossSpeed_t speed2; - SecondOfTime_t time2; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SnapshotTime_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; -extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1; -extern asn_TYPE_member_t asn_MBR_SnapshotTime_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SnapshotTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h deleted file mode 100644 index 18bdb403f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SpecialVehicleExtensions_H_ -#define _SpecialVehicleExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct EmergencyDetails; -struct EventDescription; -struct TrailerData; - -/* SpecialVehicleExtensions */ -typedef struct SpecialVehicleExtensions { - struct EmergencyDetails *vehicleAlerts; /* OPTIONAL */ - struct EventDescription *description; /* OPTIONAL */ - struct TrailerData *trailers; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpecialVehicleExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "EmergencyDetails.h" -#include "EventDescription.h" -#include "TrailerData.h" - -#endif /* _SpecialVehicleExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h deleted file mode 100644 index cc26f0d53..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Speed_H_ -#define _Speed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Speed */ -typedef long Speed_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Speed_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Speed; -asn_struct_free_f Speed_free; -asn_struct_print_f Speed_print; -asn_constr_check_f Speed_constraint; -ber_type_decoder_f Speed_decode_ber; -der_type_encoder_f Speed_encode_der; -xer_type_decoder_f Speed_decode_xer; -xer_type_encoder_f Speed_encode_xer; -oer_type_decoder_f Speed_decode_oer; -oer_type_encoder_f Speed_encode_oer; -per_type_decoder_f Speed_decode_uper; -per_type_encoder_f Speed_encode_uper; -per_type_decoder_f Speed_decode_aper; -per_type_encoder_f Speed_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Speed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h deleted file mode 100644 index 7c0984a49..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedAdvice_H_ -#define _SpeedAdvice_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedAdvice */ -typedef long SpeedAdvice_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; -asn_struct_free_f SpeedAdvice_free; -asn_struct_print_f SpeedAdvice_print; -asn_constr_check_f SpeedAdvice_constraint; -ber_type_decoder_f SpeedAdvice_decode_ber; -der_type_encoder_f SpeedAdvice_encode_der; -xer_type_decoder_f SpeedAdvice_decode_xer; -xer_type_encoder_f SpeedAdvice_encode_xer; -oer_type_decoder_f SpeedAdvice_decode_oer; -oer_type_encoder_f SpeedAdvice_encode_oer; -per_type_decoder_f SpeedAdvice_decode_uper; -per_type_encoder_f SpeedAdvice_encode_uper; -per_type_decoder_f SpeedAdvice_decode_aper; -per_type_encoder_f SpeedAdvice_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedAdvice_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h deleted file mode 100644 index 6f116f33e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedConfidence_H_ -#define _SpeedConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedConfidence { - SpeedConfidence_unavailable = 0, - SpeedConfidence_prec100ms = 1, - SpeedConfidence_prec10ms = 2, - SpeedConfidence_prec5ms = 3, - SpeedConfidence_prec1ms = 4, - SpeedConfidence_prec0_1ms = 5, - SpeedConfidence_prec0_05ms = 6, - SpeedConfidence_prec0_01ms = 7 -} e_SpeedConfidence; - -/* SpeedConfidence */ -typedef long SpeedConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1; -asn_struct_free_f SpeedConfidence_free; -asn_struct_print_f SpeedConfidence_print; -asn_constr_check_f SpeedConfidence_constraint; -ber_type_decoder_f SpeedConfidence_decode_ber; -der_type_encoder_f SpeedConfidence_encode_der; -xer_type_decoder_f SpeedConfidence_decode_xer; -xer_type_encoder_f SpeedConfidence_encode_xer; -oer_type_decoder_f SpeedConfidence_decode_oer; -oer_type_encoder_f SpeedConfidence_encode_oer; -per_type_decoder_f SpeedConfidence_decode_uper; -per_type_encoder_f SpeedConfidence_encode_uper; -per_type_decoder_f SpeedConfidence_decode_aper; -per_type_encoder_f SpeedConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h deleted file mode 100644 index 2599afe50..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedLimit_H_ -#define _SpeedLimit_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedLimit__Member__item_PR { - SpeedLimit__Member__item_PR_NOTHING, /* No components present */ - SpeedLimit__Member__item_PR_itis, - SpeedLimit__Member__item_PR_text -} SpeedLimit__Member__item_PR; - -/* Forward definitions */ -typedef struct SpeedLimit__Member { - struct SpeedLimit__Member__item { - SpeedLimit__Member__item_PR present; - union SpeedLimit__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimit__Member; - -/* SpeedLimit */ -typedef struct SpeedLimit { - A_SEQUENCE_OF(SpeedLimit__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimit_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; -extern asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedLimit_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimit_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h deleted file mode 100644 index 637c48c2c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedLimitList_H_ -#define _SpeedLimitList_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 RegulatorySpeedLimit; - -/* SpeedLimitList */ -typedef struct SpeedLimitList { - A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedLimitList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; -extern asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedLimitList_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegulatorySpeedLimit.h" - -#endif /* _SpeedLimitList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h deleted file mode 100644 index fc3229f9d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedLimitType_H_ -#define _SpeedLimitType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SpeedLimitType { - SpeedLimitType_unknown = 0, - SpeedLimitType_maxSpeedInSchoolZone = 1, - SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, - SpeedLimitType_maxSpeedInConstructionZone = 3, - SpeedLimitType_vehicleMinSpeed = 4, - SpeedLimitType_vehicleMaxSpeed = 5, - SpeedLimitType_vehicleNightMaxSpeed = 6, - SpeedLimitType_truckMinSpeed = 7, - SpeedLimitType_truckMaxSpeed = 8, - SpeedLimitType_truckNightMaxSpeed = 9, - SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, - SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, - SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 - /* - * Enumeration is extensible - */ -} e_SpeedLimitType; - -/* SpeedLimitType */ -typedef long SpeedLimitType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; -extern const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1; -asn_struct_free_f SpeedLimitType_free; -asn_struct_print_f SpeedLimitType_print; -asn_constr_check_f SpeedLimitType_constraint; -ber_type_decoder_f SpeedLimitType_decode_ber; -der_type_encoder_f SpeedLimitType_encode_der; -xer_type_decoder_f SpeedLimitType_decode_xer; -xer_type_encoder_f SpeedLimitType_encode_xer; -oer_type_decoder_f SpeedLimitType_decode_oer; -oer_type_encoder_f SpeedLimitType_encode_oer; -per_type_decoder_f SpeedLimitType_decode_uper; -per_type_encoder_f SpeedLimitType_encode_uper; -per_type_decoder_f SpeedLimitType_decode_aper; -per_type_encoder_f SpeedLimitType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedLimitType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h deleted file mode 100644 index 6ccaa60d4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedProfile_H_ -#define _SpeedProfile_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedProfileMeasurementList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfile */ -typedef struct SpeedProfile { - SpeedProfileMeasurementList_t speedReports; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedProfile_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfile; -extern asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedProfile_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfile_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h deleted file mode 100644 index 4e86eccd7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedProfileMeasurement_H_ -#define _SpeedProfileMeasurement_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "GrossSpeed.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfileMeasurement */ -typedef GrossSpeed_t SpeedProfileMeasurement_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement; -asn_struct_free_f SpeedProfileMeasurement_free; -asn_struct_print_f SpeedProfileMeasurement_print; -asn_constr_check_f SpeedProfileMeasurement_constraint; -ber_type_decoder_f SpeedProfileMeasurement_decode_ber; -der_type_encoder_f SpeedProfileMeasurement_encode_der; -xer_type_decoder_f SpeedProfileMeasurement_decode_xer; -xer_type_encoder_f SpeedProfileMeasurement_encode_xer; -oer_type_decoder_f SpeedProfileMeasurement_decode_oer; -oer_type_encoder_f SpeedProfileMeasurement_encode_oer; -per_type_decoder_f SpeedProfileMeasurement_decode_uper; -per_type_encoder_f SpeedProfileMeasurement_encode_uper; -per_type_decoder_f SpeedProfileMeasurement_decode_aper; -per_type_encoder_f SpeedProfileMeasurement_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfileMeasurement_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h deleted file mode 100644 index 508ae694e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedProfileMeasurementList_H_ -#define _SpeedProfileMeasurementList_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SpeedProfileMeasurement.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedProfileMeasurementList */ -typedef struct SpeedProfileMeasurementList { - A_SEQUENCE_OF(SpeedProfileMeasurement_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedProfileMeasurementList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList; -extern asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[1]; -extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedProfileMeasurementList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h deleted file mode 100644 index 2efa2234b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SpeedandHeadingandThrottleConfidence_H_ -#define _SpeedandHeadingandThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingConfidence.h" -#include "SpeedConfidence.h" -#include "ThrottleConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SpeedandHeadingandThrottleConfidence */ -typedef struct SpeedandHeadingandThrottleConfidence { - HeadingConfidence_t heading; - SpeedConfidence_t speed; - ThrottleConfidence_t throttle; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SpeedandHeadingandThrottleConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h deleted file mode 100644 index 076654413..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _StabilityControlStatus_H_ -#define _StabilityControlStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum StabilityControlStatus { - StabilityControlStatus_unavailable = 0, - StabilityControlStatus_off = 1, - StabilityControlStatus_on = 2, - StabilityControlStatus_engaged = 3 -} e_StabilityControlStatus; - -/* StabilityControlStatus */ -typedef long StabilityControlStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; -extern const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1; -asn_struct_free_f StabilityControlStatus_free; -asn_struct_print_f StabilityControlStatus_print; -asn_constr_check_f StabilityControlStatus_constraint; -ber_type_decoder_f StabilityControlStatus_decode_ber; -der_type_encoder_f StabilityControlStatus_encode_der; -xer_type_decoder_f StabilityControlStatus_decode_xer; -xer_type_encoder_f StabilityControlStatus_encode_xer; -oer_type_decoder_f StabilityControlStatus_decode_oer; -oer_type_encoder_f StabilityControlStatus_encode_oer; -per_type_decoder_f StabilityControlStatus_decode_uper; -per_type_encoder_f StabilityControlStatus_encode_uper; -per_type_decoder_f StabilityControlStatus_decode_aper; -per_type_encoder_f StabilityControlStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StabilityControlStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h deleted file mode 100644 index 66ebd295c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _StationID_H_ -#define _StationID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* StationID */ -typedef unsigned long StationID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_StationID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_StationID; -extern const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1; -asn_struct_free_f StationID_free; -asn_struct_print_f StationID_print; -asn_constr_check_f StationID_constraint; -ber_type_decoder_f StationID_decode_ber; -der_type_encoder_f StationID_encode_der; -xer_type_decoder_f StationID_decode_xer; -xer_type_encoder_f StationID_encode_xer; -oer_type_decoder_f StationID_decode_oer; -oer_type_encoder_f StationID_encode_oer; -per_type_decoder_f StationID_decode_uper; -per_type_encoder_f StationID_encode_uper; -per_type_decoder_f StationID_decode_aper; -per_type_encoder_f StationID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _StationID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h deleted file mode 100644 index fa44e8b96..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SteeringAxleLubePressure_H_ -#define _SteeringAxleLubePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleLubePressure */ -typedef long SteeringAxleLubePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; -asn_struct_free_f SteeringAxleLubePressure_free; -asn_struct_print_f SteeringAxleLubePressure_print; -asn_constr_check_f SteeringAxleLubePressure_constraint; -ber_type_decoder_f SteeringAxleLubePressure_decode_ber; -der_type_encoder_f SteeringAxleLubePressure_encode_der; -xer_type_decoder_f SteeringAxleLubePressure_decode_xer; -xer_type_encoder_f SteeringAxleLubePressure_encode_xer; -oer_type_decoder_f SteeringAxleLubePressure_decode_oer; -oer_type_encoder_f SteeringAxleLubePressure_encode_oer; -per_type_decoder_f SteeringAxleLubePressure_decode_uper; -per_type_encoder_f SteeringAxleLubePressure_encode_uper; -per_type_decoder_f SteeringAxleLubePressure_decode_aper; -per_type_encoder_f SteeringAxleLubePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleLubePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h deleted file mode 100644 index 7baa2408f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SteeringAxleTemperature_H_ -#define _SteeringAxleTemperature_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringAxleTemperature */ -typedef long SteeringAxleTemperature_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; -asn_struct_free_f SteeringAxleTemperature_free; -asn_struct_print_f SteeringAxleTemperature_print; -asn_constr_check_f SteeringAxleTemperature_constraint; -ber_type_decoder_f SteeringAxleTemperature_decode_ber; -der_type_encoder_f SteeringAxleTemperature_encode_der; -xer_type_decoder_f SteeringAxleTemperature_decode_xer; -xer_type_encoder_f SteeringAxleTemperature_encode_xer; -oer_type_decoder_f SteeringAxleTemperature_decode_oer; -oer_type_encoder_f SteeringAxleTemperature_encode_oer; -per_type_decoder_f SteeringAxleTemperature_decode_uper; -per_type_encoder_f SteeringAxleTemperature_encode_uper; -per_type_decoder_f SteeringAxleTemperature_decode_aper; -per_type_encoder_f SteeringAxleTemperature_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringAxleTemperature_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h deleted file mode 100644 index 54e2770e2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SteeringWheelAngle_H_ -#define _SteeringWheelAngle_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngle */ -typedef long SteeringWheelAngle_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; -asn_struct_free_f SteeringWheelAngle_free; -asn_struct_print_f SteeringWheelAngle_print; -asn_constr_check_f SteeringWheelAngle_constraint; -ber_type_decoder_f SteeringWheelAngle_decode_ber; -der_type_encoder_f SteeringWheelAngle_encode_der; -xer_type_decoder_f SteeringWheelAngle_decode_xer; -xer_type_encoder_f SteeringWheelAngle_encode_xer; -oer_type_decoder_f SteeringWheelAngle_decode_oer; -oer_type_encoder_f SteeringWheelAngle_encode_oer; -per_type_decoder_f SteeringWheelAngle_decode_uper; -per_type_encoder_f SteeringWheelAngle_encode_uper; -per_type_decoder_f SteeringWheelAngle_decode_aper; -per_type_encoder_f SteeringWheelAngle_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngle_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h deleted file mode 100644 index a2c38b08e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SteeringWheelAngleConfidence_H_ -#define _SteeringWheelAngleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SteeringWheelAngleConfidence { - SteeringWheelAngleConfidence_unavailable = 0, - SteeringWheelAngleConfidence_prec2deg = 1, - SteeringWheelAngleConfidence_prec1deg = 2, - SteeringWheelAngleConfidence_prec0_02deg = 3 -} e_SteeringWheelAngleConfidence; - -/* SteeringWheelAngleConfidence */ -typedef long SteeringWheelAngleConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1; -asn_struct_free_f SteeringWheelAngleConfidence_free; -asn_struct_print_f SteeringWheelAngleConfidence_print; -asn_constr_check_f SteeringWheelAngleConfidence_constraint; -ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; -der_type_encoder_f SteeringWheelAngleConfidence_encode_der; -xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; -xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; -oer_type_decoder_f SteeringWheelAngleConfidence_decode_oer; -oer_type_encoder_f SteeringWheelAngleConfidence_encode_oer; -per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; -per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; -per_type_decoder_f SteeringWheelAngleConfidence_decode_aper; -per_type_encoder_f SteeringWheelAngleConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h deleted file mode 100644 index 7c6e8648f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SteeringWheelAngleRateOfChange_H_ -#define _SteeringWheelAngleRateOfChange_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SteeringWheelAngleRateOfChange */ -typedef long SteeringWheelAngleRateOfChange_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; -asn_struct_free_f SteeringWheelAngleRateOfChange_free; -asn_struct_print_f SteeringWheelAngleRateOfChange_print; -asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; -ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; -der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; -xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; -xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; -oer_type_decoder_f SteeringWheelAngleRateOfChange_decode_oer; -oer_type_encoder_f SteeringWheelAngleRateOfChange_encode_oer; -per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; -per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; -per_type_decoder_f SteeringWheelAngleRateOfChange_decode_aper; -per_type_encoder_f SteeringWheelAngleRateOfChange_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SteeringWheelAngleRateOfChange_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h deleted file mode 100644 index b3817ca2f..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SummerTime_H_ -#define _SummerTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum SummerTime { - SummerTime_notInSummerTime = 0, - SummerTime_inSummerTime = 1 -} e_SummerTime; - -/* SummerTime */ -typedef long SummerTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SummerTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SummerTime; -extern const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1; -asn_struct_free_f SummerTime_free; -asn_struct_print_f SummerTime_print; -asn_constr_check_f SummerTime_constraint; -ber_type_decoder_f SummerTime_decode_ber; -der_type_encoder_f SummerTime_encode_der; -xer_type_decoder_f SummerTime_decode_xer; -xer_type_encoder_f SummerTime_encode_xer; -oer_type_decoder_f SummerTime_decode_oer; -oer_type_encoder_f SummerTime_encode_oer; -per_type_decoder_f SummerTime_decode_uper; -per_type_encoder_f SummerTime_encode_uper; -per_type_decoder_f SummerTime_decode_aper; -per_type_encoder_f SummerTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SummerTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h deleted file mode 100644 index e5449f7fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _SunSensor_H_ -#define _SunSensor_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* SunSensor */ -typedef long SunSensor_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SunSensor_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SunSensor; -asn_struct_free_f SunSensor_free; -asn_struct_print_f SunSensor_print; -asn_constr_check_f SunSensor_constraint; -ber_type_decoder_f SunSensor_decode_ber; -der_type_encoder_f SunSensor_encode_der; -xer_type_decoder_f SunSensor_decode_xer; -xer_type_encoder_f SunSensor_encode_xer; -oer_type_decoder_f SunSensor_decode_oer; -oer_type_encoder_f SunSensor_encode_oer; -per_type_decoder_f SunSensor_decode_uper; -per_type_encoder_f SunSensor_encode_uper; -per_type_decoder_f SunSensor_decode_aper; -per_type_encoder_f SunSensor_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SunSensor_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h deleted file mode 100644 index 957361098..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _SupplementalVehicleExtensions_H_ -#define _SupplementalVehicleExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleClass.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct VehicleClassification; -struct VehicleData; -struct WeatherReport; -struct WeatherProbe; -struct ObstacleDetection; -struct DisabledVehicle; -struct SpeedProfile; -struct RTCMPackage; -struct Reg_BasicSafetyMessage; - -/* SupplementalVehicleExtensions */ -typedef struct SupplementalVehicleExtensions { - BasicVehicleClass_t *classification; /* OPTIONAL */ - struct VehicleClassification *classDetails; /* OPTIONAL */ - struct VehicleData *vehicleData; /* OPTIONAL */ - struct WeatherReport *weatherReport; /* OPTIONAL */ - struct WeatherProbe *weatherProbe; /* OPTIONAL */ - struct ObstacleDetection *obstacle; /* OPTIONAL */ - struct DisabledVehicle *status; /* OPTIONAL */ - struct SpeedProfile *speedProfile; /* OPTIONAL */ - struct RTCMPackage *theRTCM; /* OPTIONAL */ - struct SupplementalVehicleExtensions__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} SupplementalVehicleExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[10]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleClassification.h" -#include "VehicleData.h" -#include "WeatherReport.h" -#include "WeatherProbe.h" -#include "ObstacleDetection.h" -#include "DisabledVehicle.h" -#include "SpeedProfile.h" -#include "RTCMPackage.h" -#include "RegionalExtension.h" - -#endif /* _SupplementalVehicleExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h deleted file mode 100644 index 27f7cc6d3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * 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_r63/TeletexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TeletexString.h deleted file mode 100644 index 59d0ef79c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TeletexString.h +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * 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_r63/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h deleted file mode 100644 index 35a7f3fe4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TemporaryID_H_ -#define _TemporaryID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TemporaryID */ -typedef OCTET_STRING_t TemporaryID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TemporaryID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; -asn_struct_free_f TemporaryID_free; -asn_struct_print_f TemporaryID_print; -asn_constr_check_f TemporaryID_constraint; -ber_type_decoder_f TemporaryID_decode_ber; -der_type_encoder_f TemporaryID_encode_der; -xer_type_decoder_f TemporaryID_decode_xer; -xer_type_encoder_f TemporaryID_encode_xer; -oer_type_decoder_f TemporaryID_decode_oer; -oer_type_encoder_f TemporaryID_encode_oer; -per_type_decoder_f TemporaryID_decode_uper; -per_type_encoder_f TemporaryID_encode_uper; -per_type_decoder_f TemporaryID_decode_aper; -per_type_encoder_f TemporaryID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TemporaryID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h deleted file mode 100644 index 152e69bae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TenthSecond_H_ -#define _TenthSecond_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TenthSecond */ -typedef long TenthSecond_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TenthSecond_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; -asn_struct_free_f TenthSecond_free; -asn_struct_print_f TenthSecond_print; -asn_constr_check_f TenthSecond_constraint; -ber_type_decoder_f TenthSecond_decode_ber; -der_type_encoder_f TenthSecond_encode_der; -xer_type_decoder_f TenthSecond_decode_xer; -xer_type_encoder_f TenthSecond_encode_xer; -oer_type_decoder_f TenthSecond_decode_oer; -oer_type_encoder_f TenthSecond_encode_oer; -per_type_decoder_f TenthSecond_decode_uper; -per_type_encoder_f TenthSecond_encode_uper; -per_type_decoder_f TenthSecond_decode_aper; -per_type_encoder_f TenthSecond_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TenthSecond_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h deleted file mode 100644 index 0dafc2785..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TermDistance_H_ -#define _TermDistance_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermDistance */ -typedef long TermDistance_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TermDistance_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TermDistance; -asn_struct_free_f TermDistance_free; -asn_struct_print_f TermDistance_print; -asn_constr_check_f TermDistance_constraint; -ber_type_decoder_f TermDistance_decode_ber; -der_type_encoder_f TermDistance_encode_der; -xer_type_decoder_f TermDistance_decode_xer; -xer_type_encoder_f TermDistance_encode_xer; -oer_type_decoder_f TermDistance_decode_oer; -oer_type_encoder_f TermDistance_encode_oer; -per_type_decoder_f TermDistance_decode_uper; -per_type_encoder_f TermDistance_encode_uper; -per_type_decoder_f TermDistance_decode_aper; -per_type_encoder_f TermDistance_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermDistance_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h deleted file mode 100644 index f1bd4cfc3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TermTime_H_ -#define _TermTime_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TermTime */ -typedef long TermTime_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TermTime_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TermTime; -asn_struct_free_f TermTime_free; -asn_struct_print_f TermTime_print; -asn_constr_check_f TermTime_constraint; -ber_type_decoder_f TermTime_decode_ber; -der_type_encoder_f TermTime_encode_der; -xer_type_decoder_f TermTime_decode_xer; -xer_type_encoder_f TermTime_encode_xer; -oer_type_decoder_f TermTime_decode_oer; -oer_type_encoder_f TermTime_encode_oer; -per_type_decoder_f TermTime_decode_uper; -per_type_encoder_f TermTime_encode_uper; -per_type_decoder_f TermTime_decode_aper; -per_type_encoder_f TermTime_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TermTime_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h deleted file mode 100644 index a420a7fd3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage00_H_ -#define _TestMessage00_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityHeader.h" -#include "MobilityRequest.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -// struct Header; -// struct Reg_BasicSafetyMessage; - -/* TestMessage00 */ -typedef struct TestMessage00 { - MobilityHeader_t header; /* OPTIONAL */ - MobilityRequest_t body; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage00_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage00; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage00_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -// #include "Header.h" -// #include "RegionalExtension.h" - -#endif /* _TestMessage00_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h deleted file mode 100644 index 31f0bf377..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage01_H_ -#define _TestMessage01_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityHeader.h" -#include "MobilityResponse.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -// struct Header; -// struct Reg_BasicSafetyMessage; - -/* TestMessage01 */ -typedef struct TestMessage01 { - MobilityHeader_t header; /* OPTIONAL */ - MobilityResponse_t body; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage01_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage01; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage01_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -// #include "Header.h" -// #include "RegionalExtension.h" - -#endif /* _TestMessage01_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h deleted file mode 100644 index 1010456d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage02_H_ -#define _TestMessage02_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityHeader.h" -#include "MobilityPath.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -/* TestMessage02 */ -typedef struct TestMessage02 { - MobilityHeader_t header; /* OPTIONAL */ - MobilityPath_t body; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage02_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage02; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage02_1[2]; - -#ifdef __cplusplus -} -#endif - - -#endif /* _TestMessage02_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h deleted file mode 100644 index 9037ab733..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TestMessage03_H_ -#define _TestMessage03_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "MobilityHeader.h" -#include "MobilityOperation.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TestMessage03 */ -typedef struct TestMessage03 { - MobilityHeader_t header; - MobilityOperation_t body; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage03_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage03; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage03_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage03_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h deleted file mode 100644 index 49bd4749b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage04_H_ -#define _TestMessage04_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrafficControlRequest.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TestMessage04 */ -typedef struct TestMessage04 { - TrafficControlRequest_t body; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage04_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage04; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage04_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage04_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h deleted file mode 100644 index 1f59196ef..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage05_H_ -#define _TestMessage05_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrafficControlMessage.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TestMessage05 */ -typedef struct TestMessage05 { - TrafficControlMessage_t body; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage05_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage05; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage05_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TestMessage05_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h deleted file mode 100644 index 4b807ad71..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage06_H_ -#define _TestMessage06_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage06 */ -typedef struct TestMessage06 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage06_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage06; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage06_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage06_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h deleted file mode 100644 index 902a90c94..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage07_H_ -#define _TestMessage07_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage07 */ -typedef struct TestMessage07 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage07_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage07; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage07_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage07_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h deleted file mode 100644 index aaa4633cb..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage08_H_ -#define _TestMessage08_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage08 */ -typedef struct TestMessage08 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage08_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage08; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage08_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage08_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h deleted file mode 100644 index 317d05a2d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage09_H_ -#define _TestMessage09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage09 */ -typedef struct TestMessage09 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage09_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage09; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage09_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h deleted file mode 100644 index b4be46ed5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage10_H_ -#define _TestMessage10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage10 */ -typedef struct TestMessage10 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage10_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage10; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage10_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h deleted file mode 100644 index 38ac44dd7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage11_H_ -#define _TestMessage11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage11 */ -typedef struct TestMessage11 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage11_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage11; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage11_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h deleted file mode 100644 index 6078daae4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage12_H_ -#define _TestMessage12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage12 */ -typedef struct TestMessage12 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage12_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage12; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage12_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h deleted file mode 100644 index 659e64717..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage13_H_ -#define _TestMessage13_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage13 */ -typedef struct TestMessage13 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage13_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage13; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage13_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage13_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h deleted file mode 100644 index f8b33ddc4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage14_H_ -#define _TestMessage14_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage14 */ -typedef struct TestMessage14 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage14_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage14; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage14_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage14_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h deleted file mode 100644 index 843a92289..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TestMessage15_H_ -#define _TestMessage15_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Header; -struct Reg_BasicSafetyMessage; - -/* TestMessage15 */ -typedef struct TestMessage15 { - struct Header *header; /* OPTIONAL */ - struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TestMessage15_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TestMessage15; -extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1; -extern asn_TYPE_member_t asn_MBR_TestMessage15_1[2]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Header.h" -#include "RegionalExtension.h" - -#endif /* _TestMessage15_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h deleted file mode 100644 index 2ef0c8b54..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ThrottleConfidence_H_ -#define _ThrottleConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ThrottleConfidence { - ThrottleConfidence_unavailable = 0, - ThrottleConfidence_prec10percent = 1, - ThrottleConfidence_prec1percent = 2, - ThrottleConfidence_prec0_5percent = 3 -} e_ThrottleConfidence; - -/* ThrottleConfidence */ -typedef long ThrottleConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1; -asn_struct_free_f ThrottleConfidence_free; -asn_struct_print_f ThrottleConfidence_print; -asn_constr_check_f ThrottleConfidence_constraint; -ber_type_decoder_f ThrottleConfidence_decode_ber; -der_type_encoder_f ThrottleConfidence_encode_der; -xer_type_decoder_f ThrottleConfidence_decode_xer; -xer_type_encoder_f ThrottleConfidence_encode_xer; -oer_type_decoder_f ThrottleConfidence_decode_oer; -oer_type_encoder_f ThrottleConfidence_encode_oer; -per_type_decoder_f ThrottleConfidence_decode_uper; -per_type_encoder_f ThrottleConfidence_encode_uper; -per_type_decoder_f ThrottleConfidence_decode_aper; -per_type_encoder_f ThrottleConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottleConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h deleted file mode 100644 index ca06d4f65..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ThrottlePosition_H_ -#define _ThrottlePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ThrottlePosition */ -typedef long ThrottlePosition_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; -asn_struct_free_f ThrottlePosition_free; -asn_struct_print_f ThrottlePosition_print; -asn_constr_check_f ThrottlePosition_constraint; -ber_type_decoder_f ThrottlePosition_decode_ber; -der_type_encoder_f ThrottlePosition_encode_der; -xer_type_decoder_f ThrottlePosition_decode_xer; -xer_type_encoder_f ThrottlePosition_encode_xer; -oer_type_decoder_f ThrottlePosition_decode_oer; -oer_type_encoder_f ThrottlePosition_encode_oer; -per_type_decoder_f ThrottlePosition_decode_uper; -per_type_encoder_f ThrottlePosition_encode_uper; -per_type_decoder_f ThrottlePosition_decode_aper; -per_type_encoder_f ThrottlePosition_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ThrottlePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h deleted file mode 100644 index 67d768e98..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TimeChangeDetails_H_ -#define _TimeChangeDetails_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_TimeMark.h" -#include "TimeIntervalConfidence.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeChangeDetails */ -typedef struct TimeChangeDetails { - DSRC_TimeMark_t *startTime; /* OPTIONAL */ - DSRC_TimeMark_t minEndTime; - DSRC_TimeMark_t *maxEndTime; /* OPTIONAL */ - DSRC_TimeMark_t *likelyTime; /* OPTIONAL */ - TimeIntervalConfidence_t *confidence; /* OPTIONAL */ - DSRC_TimeMark_t *nextTime; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TimeChangeDetails_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; -extern asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1; -extern asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeChangeDetails_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h deleted file mode 100644 index efeae747a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TimeConfidence_H_ -#define _TimeConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TimeConfidence { - TimeConfidence_unavailable = 0, - TimeConfidence_time_100_000 = 1, - TimeConfidence_time_050_000 = 2, - TimeConfidence_time_020_000 = 3, - TimeConfidence_time_010_000 = 4, - TimeConfidence_time_002_000 = 5, - TimeConfidence_time_001_000 = 6, - TimeConfidence_time_000_500 = 7, - TimeConfidence_time_000_200 = 8, - TimeConfidence_time_000_100 = 9, - TimeConfidence_time_000_050 = 10, - TimeConfidence_time_000_020 = 11, - TimeConfidence_time_000_010 = 12, - TimeConfidence_time_000_005 = 13, - TimeConfidence_time_000_002 = 14, - TimeConfidence_time_000_001 = 15, - TimeConfidence_time_000_000_5 = 16, - TimeConfidence_time_000_000_2 = 17, - TimeConfidence_time_000_000_1 = 18, - TimeConfidence_time_000_000_05 = 19, - TimeConfidence_time_000_000_02 = 20, - TimeConfidence_time_000_000_01 = 21, - TimeConfidence_time_000_000_005 = 22, - TimeConfidence_time_000_000_002 = 23, - TimeConfidence_time_000_000_001 = 24, - TimeConfidence_time_000_000_000_5 = 25, - TimeConfidence_time_000_000_000_2 = 26, - TimeConfidence_time_000_000_000_1 = 27, - TimeConfidence_time_000_000_000_05 = 28, - TimeConfidence_time_000_000_000_02 = 29, - TimeConfidence_time_000_000_000_01 = 30, - TimeConfidence_time_000_000_000_005 = 31, - TimeConfidence_time_000_000_000_002 = 32, - TimeConfidence_time_000_000_000_001 = 33, - TimeConfidence_time_000_000_000_000_5 = 34, - TimeConfidence_time_000_000_000_000_2 = 35, - TimeConfidence_time_000_000_000_000_1 = 36, - TimeConfidence_time_000_000_000_000_05 = 37, - TimeConfidence_time_000_000_000_000_02 = 38, - TimeConfidence_time_000_000_000_000_01 = 39 -} e_TimeConfidence; - -/* TimeConfidence */ -typedef long TimeConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1; -asn_struct_free_f TimeConfidence_free; -asn_struct_print_f TimeConfidence_print; -asn_constr_check_f TimeConfidence_constraint; -ber_type_decoder_f TimeConfidence_decode_ber; -der_type_encoder_f TimeConfidence_encode_der; -xer_type_decoder_f TimeConfidence_decode_xer; -xer_type_encoder_f TimeConfidence_encode_xer; -oer_type_decoder_f TimeConfidence_decode_oer; -oer_type_encoder_f TimeConfidence_encode_oer; -per_type_decoder_f TimeConfidence_decode_uper; -per_type_encoder_f TimeConfidence_encode_uper; -per_type_decoder_f TimeConfidence_decode_aper; -per_type_encoder_f TimeConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h deleted file mode 100644 index b43e60794..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TimeIntervalConfidence_H_ -#define _TimeIntervalConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeIntervalConfidence */ -typedef long TimeIntervalConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; -asn_struct_free_f TimeIntervalConfidence_free; -asn_struct_print_f TimeIntervalConfidence_print; -asn_constr_check_f TimeIntervalConfidence_constraint; -ber_type_decoder_f TimeIntervalConfidence_decode_ber; -der_type_encoder_f TimeIntervalConfidence_encode_der; -xer_type_decoder_f TimeIntervalConfidence_decode_xer; -xer_type_encoder_f TimeIntervalConfidence_encode_xer; -oer_type_decoder_f TimeIntervalConfidence_decode_oer; -oer_type_encoder_f TimeIntervalConfidence_encode_oer; -per_type_decoder_f TimeIntervalConfidence_decode_uper; -per_type_encoder_f TimeIntervalConfidence_encode_uper; -per_type_decoder_f TimeIntervalConfidence_decode_aper; -per_type_encoder_f TimeIntervalConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeIntervalConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h deleted file mode 100644 index 76f17cdc7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TimeOffset_H_ -#define _TimeOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeOffset */ -typedef long TimeOffset_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeOffset_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeOffset; -asn_struct_free_f TimeOffset_free; -asn_struct_print_f TimeOffset_print; -asn_constr_check_f TimeOffset_constraint; -ber_type_decoder_f TimeOffset_decode_ber; -der_type_encoder_f TimeOffset_encode_der; -xer_type_decoder_f TimeOffset_decode_xer; -xer_type_encoder_f TimeOffset_encode_xer; -oer_type_decoder_f TimeOffset_decode_oer; -oer_type_encoder_f TimeOffset_encode_oer; -per_type_decoder_f TimeOffset_decode_uper; -per_type_encoder_f TimeOffset_encode_uper; -per_type_decoder_f TimeOffset_decode_aper; -per_type_encoder_f TimeOffset_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h deleted file mode 100644 index 0b5add3a8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TimeRemaining_H_ -#define _TimeRemaining_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeRemaining */ -typedef long TimeRemaining_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; -asn_struct_free_f TimeRemaining_free; -asn_struct_print_f TimeRemaining_print; -asn_constr_check_f TimeRemaining_constraint; -ber_type_decoder_f TimeRemaining_decode_ber; -der_type_encoder_f TimeRemaining_encode_der; -xer_type_decoder_f TimeRemaining_decode_xer; -xer_type_encoder_f TimeRemaining_encode_xer; -oer_type_decoder_f TimeRemaining_decode_oer; -oer_type_encoder_f TimeRemaining_encode_oer; -per_type_decoder_f TimeRemaining_decode_uper; -per_type_encoder_f TimeRemaining_encode_uper; -per_type_decoder_f TimeRemaining_decode_aper; -per_type_encoder_f TimeRemaining_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeRemaining_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h deleted file mode 100644 index 4f5a61e8b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TireData_H_ -#define _TireData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TireLocation.h" -#include "TirePressure.h" -#include "TireTemp.h" -#include "WheelSensorStatus.h" -#include "WheelEndElectFault.h" -#include "TireLeakageRate.h" -#include "TirePressureThresholdDetection.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireData */ -typedef struct TireData { - TireLocation_t *location; /* OPTIONAL */ - TirePressure_t *pressure; /* OPTIONAL */ - TireTemp_t *temp; /* OPTIONAL */ - WheelSensorStatus_t *wheelSensorStatus; /* OPTIONAL */ - WheelEndElectFault_t *wheelEndElectFault; /* OPTIONAL */ - TireLeakageRate_t *leakageRate; /* OPTIONAL */ - TirePressureThresholdDetection_t *detection; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TireData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireData; -extern asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1; -extern asn_TYPE_member_t asn_MBR_TireData_1[7]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h deleted file mode 100644 index edfa9a89a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TireDataList_H_ -#define _TireDataList_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 TireData; - -/* TireDataList */ -typedef struct TireDataList { - A_SEQUENCE_OF(struct TireData) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TireDataList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TireDataList; -extern asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1; -extern asn_TYPE_member_t asn_MBR_TireDataList_1[1]; -extern asn_per_constraints_t asn_PER_type_TireDataList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TireData.h" - -#endif /* _TireDataList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h deleted file mode 100644 index 966da62b2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TireLeakageRate_H_ -#define _TireLeakageRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLeakageRate */ -typedef long TireLeakageRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; -asn_struct_free_f TireLeakageRate_free; -asn_struct_print_f TireLeakageRate_print; -asn_constr_check_f TireLeakageRate_constraint; -ber_type_decoder_f TireLeakageRate_decode_ber; -der_type_encoder_f TireLeakageRate_encode_der; -xer_type_decoder_f TireLeakageRate_decode_xer; -xer_type_encoder_f TireLeakageRate_encode_xer; -oer_type_decoder_f TireLeakageRate_decode_oer; -oer_type_encoder_f TireLeakageRate_encode_oer; -per_type_decoder_f TireLeakageRate_decode_uper; -per_type_encoder_f TireLeakageRate_encode_uper; -per_type_decoder_f TireLeakageRate_decode_aper; -per_type_encoder_f TireLeakageRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLeakageRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h deleted file mode 100644 index 7ba534db0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TireLocation_H_ -#define _TireLocation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireLocation */ -typedef long TireLocation_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireLocation_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireLocation; -asn_struct_free_f TireLocation_free; -asn_struct_print_f TireLocation_print; -asn_constr_check_f TireLocation_constraint; -ber_type_decoder_f TireLocation_decode_ber; -der_type_encoder_f TireLocation_encode_der; -xer_type_decoder_f TireLocation_decode_xer; -xer_type_encoder_f TireLocation_encode_xer; -oer_type_decoder_f TireLocation_decode_oer; -oer_type_encoder_f TireLocation_encode_oer; -per_type_decoder_f TireLocation_decode_uper; -per_type_encoder_f TireLocation_encode_uper; -per_type_decoder_f TireLocation_decode_aper; -per_type_encoder_f TireLocation_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireLocation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h deleted file mode 100644 index ba35fe800..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TirePressure_H_ -#define _TirePressure_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TirePressure */ -typedef long TirePressure_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TirePressure_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TirePressure; -asn_struct_free_f TirePressure_free; -asn_struct_print_f TirePressure_print; -asn_constr_check_f TirePressure_constraint; -ber_type_decoder_f TirePressure_decode_ber; -der_type_encoder_f TirePressure_encode_der; -xer_type_decoder_f TirePressure_decode_xer; -xer_type_encoder_f TirePressure_encode_xer; -oer_type_decoder_f TirePressure_decode_oer; -oer_type_encoder_f TirePressure_encode_oer; -per_type_decoder_f TirePressure_decode_uper; -per_type_encoder_f TirePressure_encode_uper; -per_type_decoder_f TirePressure_decode_aper; -per_type_encoder_f TirePressure_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressure_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h deleted file mode 100644 index a232be801..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TirePressureThresholdDetection_H_ -#define _TirePressureThresholdDetection_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TirePressureThresholdDetection { - TirePressureThresholdDetection_noData = 0, - TirePressureThresholdDetection_overPressure = 1, - TirePressureThresholdDetection_noWarningPressure = 2, - TirePressureThresholdDetection_underPressure = 3, - TirePressureThresholdDetection_extremeUnderPressure = 4, - TirePressureThresholdDetection_undefined = 5, - TirePressureThresholdDetection_errorIndicator = 6, - TirePressureThresholdDetection_notAvailable = 7 -} e_TirePressureThresholdDetection; - -/* TirePressureThresholdDetection */ -typedef long TirePressureThresholdDetection_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; -extern const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1; -asn_struct_free_f TirePressureThresholdDetection_free; -asn_struct_print_f TirePressureThresholdDetection_print; -asn_constr_check_f TirePressureThresholdDetection_constraint; -ber_type_decoder_f TirePressureThresholdDetection_decode_ber; -der_type_encoder_f TirePressureThresholdDetection_encode_der; -xer_type_decoder_f TirePressureThresholdDetection_decode_xer; -xer_type_encoder_f TirePressureThresholdDetection_encode_xer; -oer_type_decoder_f TirePressureThresholdDetection_decode_oer; -oer_type_encoder_f TirePressureThresholdDetection_encode_oer; -per_type_decoder_f TirePressureThresholdDetection_decode_uper; -per_type_encoder_f TirePressureThresholdDetection_encode_uper; -per_type_decoder_f TirePressureThresholdDetection_decode_aper; -per_type_encoder_f TirePressureThresholdDetection_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TirePressureThresholdDetection_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h deleted file mode 100644 index 1bfff6cdc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TireTemp_H_ -#define _TireTemp_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TireTemp */ -typedef long TireTemp_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TireTemp_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TireTemp; -asn_struct_free_f TireTemp_free; -asn_struct_print_f TireTemp_print; -asn_constr_check_f TireTemp_constraint; -ber_type_decoder_f TireTemp_decode_ber; -der_type_encoder_f TireTemp_encode_der; -xer_type_decoder_f TireTemp_decode_xer; -xer_type_encoder_f TireTemp_encode_xer; -oer_type_decoder_f TireTemp_decode_oer; -oer_type_encoder_f TireTemp_encode_oer; -per_type_decoder_f TireTemp_decode_uper; -per_type_encoder_f TireTemp_encode_uper; -per_type_decoder_f TireTemp_decode_aper; -per_type_encoder_f TireTemp_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TireTemp_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h deleted file mode 100644 index f3ca7280e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TractionControlStatus_H_ -#define _TractionControlStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TractionControlStatus { - TractionControlStatus_unavailable = 0, - TractionControlStatus_off = 1, - TractionControlStatus_on = 2, - TractionControlStatus_engaged = 3 -} e_TractionControlStatus; - -/* TractionControlStatus */ -typedef long TractionControlStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TractionControlStatus; -extern const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1; -asn_struct_free_f TractionControlStatus_free; -asn_struct_print_f TractionControlStatus_print; -asn_constr_check_f TractionControlStatus_constraint; -ber_type_decoder_f TractionControlStatus_decode_ber; -der_type_encoder_f TractionControlStatus_encode_der; -xer_type_decoder_f TractionControlStatus_decode_xer; -xer_type_encoder_f TractionControlStatus_encode_xer; -oer_type_decoder_f TractionControlStatus_decode_oer; -oer_type_encoder_f TractionControlStatus_encode_oer; -per_type_decoder_f TractionControlStatus_decode_uper; -per_type_encoder_f TractionControlStatus_encode_uper; -per_type_decoder_f TractionControlStatus_decode_aper; -per_type_encoder_f TractionControlStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TractionControlStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h deleted file mode 100644 index 6bf623745..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlBounds_H_ -#define _TrafficControlBounds_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EpochMins.h" -#include "Longitude.h" -#include "Latitude.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct OffsetPoint; - -/* TrafficControlBounds */ -typedef struct TrafficControlBounds { - EpochMins_t oldest; - Longitude_t reflon; - Latitude_t reflat; - struct TrafficControlBounds__offsets { - A_SEQUENCE_OF(struct OffsetPoint) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } offsets; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlBounds_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "OffsetPoint.h" - -#endif /* _TrafficControlBounds_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h deleted file mode 100644 index e3bf5539c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "CARMA-CLOUD" - * found in "asn/cc_traffic_control_messages_asn1.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrafficControlDetail_H_ -#define _TrafficControlDetail_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" -#include "NULL.h" -#include "NativeEnumerated.h" -#include "NativeInteger.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlDetail_PR { - TrafficControlDetail_PR_NOTHING, /* No components present */ - TrafficControlDetail_PR_signal, - TrafficControlDetail_PR_stop, - TrafficControlDetail_PR_yield, - TrafficControlDetail_PR_notowing, - TrafficControlDetail_PR_restricted, - TrafficControlDetail_PR_closed, - TrafficControlDetail_PR_chains, - TrafficControlDetail_PR_direction, - TrafficControlDetail_PR_lataffinity, - TrafficControlDetail_PR_latperm, - TrafficControlDetail_PR_parking, - TrafficControlDetail_PR_minspeed, - TrafficControlDetail_PR_maxspeed, - TrafficControlDetail_PR_minhdwy, - TrafficControlDetail_PR_maxvehmass, - TrafficControlDetail_PR_maxvehheight, - TrafficControlDetail_PR_maxvehwidth, - TrafficControlDetail_PR_maxvehlength, - TrafficControlDetail_PR_maxvehaxles, - TrafficControlDetail_PR_minvehocc, - TrafficControlDetail_PR_maxplatoonsize, - TrafficControlDetail_PR_minplatoonhdwy, - /* Extensions may appear below */ - -} TrafficControlDetail_PR; -typedef enum TrafficControlDetail__closed { - TrafficControlDetail__closed_open = 0, - TrafficControlDetail__closed_closed = 1, - TrafficControlDetail__closed_taperleft = 2, - TrafficControlDetail__closed_taperright = 3, - TrafficControlDetail__closed_openleft = 4, - TrafficControlDetail__closed_openright = 5 -} e_TrafficControlDetail__closed; -typedef enum TrafficControlDetail__chains { - TrafficControlDetail__chains_no = 0, - TrafficControlDetail__chains_permitted = 1, - TrafficControlDetail__chains_required = 2 -} e_TrafficControlDetail__chains; -typedef enum TrafficControlDetail__direction { - TrafficControlDetail__direction_forward = 0, - TrafficControlDetail__direction_reverse = 1 -} e_TrafficControlDetail__direction; -typedef enum TrafficControlDetail__lataffinity { - TrafficControlDetail__lataffinity_left = 0, - TrafficControlDetail__lataffinity_right = 1 -} e_TrafficControlDetail__lataffinity; -typedef enum TrafficControlDetail__latperm__Member { - TrafficControlDetail__latperm__Member_none = 0, - TrafficControlDetail__latperm__Member_permitted = 1, - TrafficControlDetail__latperm__Member_passing_only = 2, - TrafficControlDetail__latperm__Member_emergency_only = 3 -} e_TrafficControlDetail__latperm__Member; -typedef enum TrafficControlDetail__parking { - TrafficControlDetail__parking_no = 0, - TrafficControlDetail__parking_parallel = 1, - TrafficControlDetail__parking_angled = 2 -} e_TrafficControlDetail__parking; - -/* TrafficControlDetail */ -typedef struct TrafficControlDetail { - TrafficControlDetail_PR present; - union TrafficControlDetail_u { - OCTET_STRING_t signal; - NULL_t stop; - NULL_t yield; - NULL_t notowing; - NULL_t restricted; - long closed; - long chains; - long direction; - long lataffinity; - struct TrafficControlDetail__latperm { - A_SEQUENCE_OF(long) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } latperm; - long parking; - long minspeed; - long maxspeed; - long minhdwy; - long maxvehmass; - long maxvehheight; - long maxvehwidth; - long maxvehlength; - long maxvehaxles; - long minvehocc; - long maxplatoonsize; - long minplatoonhdwy; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlDetail_t; - -/* Implementation */ -/* extern asn_TYPE_descriptor_t asn_DEF_closed_7; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_chains_14; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_direction_18; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_21; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_Member_25; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_parking_30; // (Use -fall-defs-global to expose) */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail; -extern asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[22]; -extern asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlDetail_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h deleted file mode 100644 index 587288aed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "CARMA-CLOUD" - * found in "asn/cc_traffic_control_messages_asn1.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrafficControlGeometry_H_ -#define _TrafficControlGeometry_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" -#include "EpochMins.h" -#include "Longitude.h" -#include "Latitude.h" -#include "DSRC_Elevation.h" -#include "NativeInteger.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PathNode; - -/* TrafficControlGeometry */ -typedef struct TrafficControlGeometry { - IA5String_t proj; - IA5String_t datum; - EpochMins_t reftime; - Longitude_t reflon; - Latitude_t reflat; - DSRC_Elevation_t refelv; - long *refwidth /* OPTIONAL */; - long heading; - struct TrafficControlGeometry__nodes { - A_SEQUENCE_OF(struct PathNode) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } nodes; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlGeometry_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PathNode.h" - -#endif /* _TrafficControlGeometry_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h deleted file mode 100644 index 2c0d35647..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlMessage_H_ -#define _TrafficControlMessage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NULL.h" -#include "TrafficControlMessageV01.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlMessage_PR { - TrafficControlMessage_PR_NOTHING, /* No components present */ - TrafficControlMessage_PR_reserved, - TrafficControlMessage_PR_tcmV01 - /* Extensions may appear below */ - -} TrafficControlMessage_PR; - -/* TrafficControlMessage */ -typedef struct TrafficControlMessage { - TrafficControlMessage_PR present; - union TrafficControlMessage_u { - NULL_t reserved; - TrafficControlMessageV01_t tcmV01; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage; -extern asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[2]; -extern asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlMessage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h deleted file mode 100644 index 2a77214c5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlMessageV01_H_ -#define _TrafficControlMessageV01_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Id64b.h" -#include "NativeInteger.h" -#include "Id128b.h" -#include "EpochMins.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TrafficControlPackage; -struct TrafficControlParams; -struct TrafficControlGeometry; - -/* TrafficControlMessageV01 */ -typedef struct TrafficControlMessageV01 { - Id64b_t reqid; - long reqseq; - long msgtot; - long msgnum; - Id128b_t id; - EpochMins_t updated; - struct TrafficControlPackage *package; /* OPTIONAL */ - struct TrafficControlParams *params; /* OPTIONAL */ - struct TrafficControlGeometry *geometry; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlMessageV01_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TrafficControlPackage.h" -#include "TrafficControlParams.h" -#include "TrafficControlGeometry.h" - -#endif /* _TrafficControlMessageV01_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h deleted file mode 100644 index e898b45f6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlPackage_H_ -#define _TrafficControlPackage_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" -#include "Id128b.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrafficControlPackage */ -typedef struct TrafficControlPackage { - IA5String_t *label; /* OPTIONAL */ - struct TrafficControlPackage__tcids { - A_SEQUENCE_OF(Id128b_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } tcids; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlPackage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlPackage_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h deleted file mode 100644 index 82aa4501c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlParams_H_ -#define _TrafficControlParams_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TrafficControlSchedule.h" -#include "BOOLEAN.h" -#include "TrafficControlDetail.h" -#include "TrafficControlVehClass.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrafficControlParams */ -typedef struct TrafficControlParams { - struct TrafficControlParams__vclasses { - A_SEQUENCE_OF(TrafficControlVehClass_t) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } vclasses; - TrafficControlSchedule_t schedule; - BOOLEAN_t regulatory; - TrafficControlDetail_t detail; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlParams_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlParams; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlParams_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlParams_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h deleted file mode 100644 index c0e8eaa5e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrafficControlPathPart_H_ -#define _TrafficControlPathPart_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" -#include "INTEGER.h" -#include "NativeInteger.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Point; - -/* TrafficControlPathPart */ -typedef struct TrafficControlPathPart { - OCTET_STRING_t id; - INTEGER_t updated; - long pathindex; - struct TrafficControlPathPart__points { - A_SEQUENCE_OF(struct Point) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } points; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlPathPart_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "Point.h" - -#endif /* _TrafficControlPathPart_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h deleted file mode 100644 index ae342fa87..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlRequest_H_ -#define _TrafficControlRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NULL.h" -#include "TrafficControlRequestV01.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlRequest_PR { - TrafficControlRequest_PR_NOTHING, /* No components present */ - TrafficControlRequest_PR_reserved, - TrafficControlRequest_PR_tcrV01 - /* Extensions may appear below */ - -} TrafficControlRequest_PR; - -/* TrafficControlRequest */ -typedef struct TrafficControlRequest { - TrafficControlRequest_PR present; - union TrafficControlRequest_u { - NULL_t reserved; - TrafficControlRequestV01_t tcrV01; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest; -extern asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[2]; -extern asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h deleted file mode 100644 index 093f9d0b1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlRequestV01_H_ -#define _TrafficControlRequestV01_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "Id64b.h" -#include "NativeInteger.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct TrafficControlBounds; - -/* TrafficControlRequestV01 */ -typedef struct TrafficControlRequestV01 { - Id64b_t reqid; - long reqseq; - long scale; - struct TrafficControlRequestV01__bounds { - A_SEQUENCE_OF(struct TrafficControlBounds) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } bounds; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlRequestV01_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TrafficControlBounds.h" - -#endif /* _TrafficControlRequestV01_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h deleted file mode 100644 index 1a985b63d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlSchedule_H_ -#define _TrafficControlSchedule_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EpochMins.h" -#include "DSRC_DayOfWeek.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RepeatParams; -struct DailySchedule; - -/* TrafficControlSchedule */ -typedef struct TrafficControlSchedule { - EpochMins_t start; - EpochMins_t *end; /* OPTIONAL */ - DSRC_DayOfWeek_t *dow; /* OPTIONAL */ - struct TrafficControlSchedule__between { - A_SEQUENCE_OF(struct DailySchedule) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *between; - struct RepeatParams *repeat; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlSchedule_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule; -extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[5]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RepeatParams.h" -#include "DailySchedule.h" - -#endif /* _TrafficControlSchedule_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h deleted file mode 100644 index 0bcd62292..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrafficControlType_H_ -#define _TrafficControlType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlType { - TrafficControlType_signal = 0, - TrafficControlType_stop = 1, - TrafficControlType_yield = 2, - TrafficControlType_notowing = 3, - TrafficControlType_restricted = 4, - TrafficControlType_closed = 5, - TrafficControlType_chains = 6, - TrafficControlType_direction = 7, - TrafficControlType_lataffinity = 8, - TrafficControlType_leftperm = 9, - TrafficControlType_rightperm = 10, - TrafficControlType_opening = 11, - TrafficControlType_closing = 12, - TrafficControlType_parking = 13, - TrafficControlType_minspeed = 14, - TrafficControlType_maxspeed = 15, - TrafficControlType_minhdwy = 16, - TrafficControlType_maxvehmass = 17, - TrafficControlType_maxvehheight = 18, - TrafficControlType_maxvehwidth = 19, - TrafficControlType_maxvehlength = 20, - TrafficControlType_maxaxles = 21, - TrafficControlType_minvehocc = 22 -} e_TrafficControlType; - -/* TrafficControlType */ -typedef long TrafficControlType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlType; -extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1; -asn_struct_free_f TrafficControlType_free; -asn_struct_print_f TrafficControlType_print; -asn_constr_check_f TrafficControlType_constraint; -ber_type_decoder_f TrafficControlType_decode_ber; -der_type_encoder_f TrafficControlType_encode_der; -xer_type_decoder_f TrafficControlType_decode_xer; -xer_type_encoder_f TrafficControlType_encode_xer; -oer_type_decoder_f TrafficControlType_decode_oer; -oer_type_encoder_f TrafficControlType_encode_oer; -per_type_decoder_f TrafficControlType_decode_uper; -per_type_encoder_f TrafficControlType_encode_uper; -per_type_decoder_f TrafficControlType_decode_aper; -per_type_encoder_f TrafficControlType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h deleted file mode 100644 index b7f0f87c6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _TrafficControlValue_H_ -#define _TrafficControlValue_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" -#include "NativeEnumerated.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlValue_PR { - TrafficControlValue_PR_NOTHING, /* No components present */ - TrafficControlValue_PR_value, - TrafficControlValue_PR_chains, - TrafficControlValue_PR_direction, - TrafficControlValue_PR_lataffinity, - TrafficControlValue_PR_leftperm, - TrafficControlValue_PR_rightperm, - TrafficControlValue_PR_opening, - TrafficControlValue_PR_closing, - TrafficControlValue_PR_parking -} TrafficControlValue_PR; -typedef enum TrafficControlValue__chains { - TrafficControlValue__chains_no = 0, - TrafficControlValue__chains_permitted = 1, - TrafficControlValue__chains_required = 2 -} e_TrafficControlValue__chains; -typedef enum TrafficControlValue__direction { - TrafficControlValue__direction_forward = 0, - TrafficControlValue__direction_reverse = 1 -} e_TrafficControlValue__direction; -typedef enum TrafficControlValue__lataffinity { - TrafficControlValue__lataffinity_left = 0, - TrafficControlValue__lataffinity_right = 1 -} e_TrafficControlValue__lataffinity; -typedef enum TrafficControlValue__leftperm { - TrafficControlValue__leftperm_none = 0, - TrafficControlValue__leftperm_permitted = 1, - TrafficControlValue__leftperm_passing_only = 2, - TrafficControlValue__leftperm_emergency_only = 3 -} e_TrafficControlValue__leftperm; -typedef enum TrafficControlValue__rightperm { - TrafficControlValue__rightperm_none = 0, - TrafficControlValue__rightperm_permitted = 1, - TrafficControlValue__rightperm_passing_only = 2, - TrafficControlValue__rightperm_emergency_only = 3 -} e_TrafficControlValue__rightperm; -typedef enum TrafficControlValue__opening { - TrafficControlValue__opening_left = 0, - TrafficControlValue__opening_right = 1 -} e_TrafficControlValue__opening; -typedef enum TrafficControlValue__closing { - TrafficControlValue__closing_left = 0, - TrafficControlValue__closing_right = 1 -} e_TrafficControlValue__closing; -typedef enum TrafficControlValue__parking { - TrafficControlValue__parking_no = 0, - TrafficControlValue__parking_parallel = 1, - TrafficControlValue__parking_angled = 2 -} e_TrafficControlValue__parking; - -/* TrafficControlValue */ -typedef struct TrafficControlValue { - TrafficControlValue_PR present; - union TrafficControlValue_u { - long value; - long chains; - long direction; - long lataffinity; - long leftperm; - long rightperm; - long opening; - long closing; - long parking; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrafficControlValue_t; - -/* Implementation */ -/* extern asn_TYPE_descriptor_t asn_DEF_chains_3; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_direction_7; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_10; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_leftperm_13; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_rightperm_18; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_opening_23; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_closing_26; // (Use -fall-defs-global to expose) */ -/* extern asn_TYPE_descriptor_t asn_DEF_parking_29; // (Use -fall-defs-global to expose) */ -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlValue; -extern asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1; -extern asn_TYPE_member_t asn_MBR_TrafficControlValue_1[9]; -extern asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlValue_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h deleted file mode 100644 index 45bce8529..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrafficControlVehClass_H_ -#define _TrafficControlVehClass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TrafficControlVehClass { - TrafficControlVehClass_any = 0, - TrafficControlVehClass_pedestrian = 1, - TrafficControlVehClass_bicycle = 2, - TrafficControlVehClass_micromobile = 3, - TrafficControlVehClass_motorcycle = 4, - TrafficControlVehClass_passenger_car = 5, - TrafficControlVehClass_light_truck_van = 6, - TrafficControlVehClass_bus = 7, - TrafficControlVehClass_two_axle_six_tire_single_unit_truck = 8, - TrafficControlVehClass_three_axle_single_unit_truck = 9, - TrafficControlVehClass_four_or_more_axle_single_unit_truck = 10, - TrafficControlVehClass_four_or_fewer_axle_single_trailer_truck = 11, - TrafficControlVehClass_five_axle_single_trailer_truck = 12, - TrafficControlVehClass_six_or_more_axle_single_trailer_truck = 13, - TrafficControlVehClass_five_or_fewer_axle_multi_trailer_truck = 14, - TrafficControlVehClass_six_axle_multi_trailer_truck = 15, - TrafficControlVehClass_seven_or_more_axle_multi_trailer_truck = 16, - TrafficControlVehClass_rail = 17, - TrafficControlVehClass_unclassified = 18 - /* - * Enumeration is extensible - */ -} e_TrafficControlVehClass; - -/* TrafficControlVehClass */ -typedef long TrafficControlVehClass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass; -extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1; -asn_struct_free_f TrafficControlVehClass_free; -asn_struct_print_f TrafficControlVehClass_print; -asn_constr_check_f TrafficControlVehClass_constraint; -ber_type_decoder_f TrafficControlVehClass_decode_ber; -der_type_encoder_f TrafficControlVehClass_encode_der; -xer_type_decoder_f TrafficControlVehClass_decode_xer; -xer_type_encoder_f TrafficControlVehClass_encode_xer; -oer_type_decoder_f TrafficControlVehClass_decode_oer; -oer_type_encoder_f TrafficControlVehClass_encode_oer; -per_type_decoder_f TrafficControlVehClass_decode_uper; -per_type_encoder_f TrafficControlVehClass_encode_uper; -per_type_decoder_f TrafficControlVehClass_decode_aper; -per_type_encoder_f TrafficControlVehClass_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrafficControlVehClass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h deleted file mode 100644 index 90ace7e97..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerData_H_ -#define _TrailerData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "PivotPointDescription.h" -#include "TrailerUnitDescriptionList.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerData */ -typedef struct TrailerData { - SSPindex_t sspRights; - PivotPointDescription_t connection; - TrailerUnitDescriptionList_t units; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerData; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerData_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h deleted file mode 100644 index d60da9f6a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerHistoryPoint_H_ -#define _TrailerHistoryPoint_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_Angle.h" -#include "TimeOffset.h" -#include "Node-XY-24b.h" -#include "VertOffset-B07.h" -#include "CoarseHeading.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerHistoryPoint */ -typedef struct TrailerHistoryPoint { - DSRC_Angle_t pivotAngle; - TimeOffset_t timeOffset; - Node_XY_24b_t positionOffset; - VertOffset_B07_t *elevationOffset; /* OPTIONAL */ - CoarseHeading_t *heading; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerHistoryPoint_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerHistoryPoint_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h deleted file mode 100644 index 40a493b13..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerHistoryPointList_H_ -#define _TrailerHistoryPointList_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 TrailerHistoryPoint; - -/* TrailerHistoryPointList */ -typedef struct TrailerHistoryPointList { - A_SEQUENCE_OF(struct TrailerHistoryPoint) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerHistoryPointList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList; -extern asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[1]; -extern asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TrailerHistoryPoint.h" - -#endif /* _TrailerHistoryPointList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h deleted file mode 100644 index be840bbaf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerMass_H_ -#define _TrailerMass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerMass */ -typedef long TrailerMass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrailerMass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrailerMass; -asn_struct_free_f TrailerMass_free; -asn_struct_print_f TrailerMass_print; -asn_constr_check_f TrailerMass_constraint; -ber_type_decoder_f TrailerMass_decode_ber; -der_type_encoder_f TrailerMass_encode_der; -xer_type_decoder_f TrailerMass_decode_xer; -xer_type_encoder_f TrailerMass_encode_xer; -oer_type_decoder_f TrailerMass_decode_oer; -oer_type_encoder_f TrailerMass_encode_oer; -per_type_decoder_f TrailerMass_decode_uper; -per_type_encoder_f TrailerMass_encode_uper; -per_type_decoder_f TrailerMass_decode_aper; -per_type_encoder_f TrailerMass_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerMass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h deleted file mode 100644 index 9be9933d4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerUnitDescription_H_ -#define _TrailerUnitDescription_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IsDolly.h" -#include "VehicleWidth.h" -#include "VehicleLength.h" -#include "VehicleHeight.h" -#include "TrailerMass.h" -#include "PivotPointDescription.h" -#include "Offset-B12.h" -#include "Node-XY-24b.h" -#include "VertOffset-B07.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BumperHeights; -struct PivotPointDescription; -struct TrailerHistoryPointList; - -/* TrailerUnitDescription */ -typedef struct TrailerUnitDescription { - IsDolly_t isDolly; - VehicleWidth_t width; - VehicleLength_t length; - VehicleHeight_t *height; /* OPTIONAL */ - TrailerMass_t *mass; /* OPTIONAL */ - struct BumperHeights *bumperHeights; /* OPTIONAL */ - VehicleHeight_t *centerOfGravity; /* OPTIONAL */ - PivotPointDescription_t frontPivot; - struct PivotPointDescription *rearPivot; /* OPTIONAL */ - Offset_B12_t *rearWheelOffset; /* OPTIONAL */ - Node_XY_24b_t positionOffset; - VertOffset_B07_t *elevationOffset; /* OPTIONAL */ - struct TrailerHistoryPointList *crumbData; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerUnitDescription_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription; -extern asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[13]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "BumperHeights.h" -#include "PivotPointDescription.h" -#include "TrailerHistoryPointList.h" - -#endif /* _TrailerUnitDescription_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h deleted file mode 100644 index 3f324eb92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerUnitDescriptionList_H_ -#define _TrailerUnitDescriptionList_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 TrailerUnitDescription; - -/* TrailerUnitDescriptionList */ -typedef struct TrailerUnitDescriptionList { - A_SEQUENCE_OF(struct TrailerUnitDescription) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TrailerUnitDescriptionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList; -extern asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1; -extern asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[1]; -extern asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TrailerUnitDescription.h" - -#endif /* _TrailerUnitDescriptionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h deleted file mode 100644 index 8412ef1e6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TrailerWeight_H_ -#define _TrailerWeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TrailerWeight */ -typedef long TrailerWeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; -asn_struct_free_f TrailerWeight_free; -asn_struct_print_f TrailerWeight_print; -asn_constr_check_f TrailerWeight_constraint; -ber_type_decoder_f TrailerWeight_decode_ber; -der_type_encoder_f TrailerWeight_encode_der; -xer_type_decoder_f TrailerWeight_decode_xer; -xer_type_encoder_f TrailerWeight_encode_xer; -oer_type_decoder_f TrailerWeight_decode_oer; -oer_type_encoder_f TrailerWeight_encode_oer; -per_type_decoder_f TrailerWeight_decode_uper; -per_type_encoder_f TrailerWeight_encode_uper; -per_type_decoder_f TrailerWeight_decode_aper; -per_type_encoder_f TrailerWeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TrailerWeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h deleted file mode 100644 index 3c80d5627..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TransitStatus_H_ -#define _TransitStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitStatus { - TransitStatus_none = 0, - TransitStatus_anADAuse = 1, - TransitStatus_aBikeLoad = 2, - TransitStatus_doorOpen = 3, - TransitStatus_occM = 4, - TransitStatus_occL = 5 -} e_TransitStatus; - -/* TransitStatus */ -typedef BIT_STRING_t TransitStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; -asn_struct_free_f TransitStatus_free; -asn_struct_print_f TransitStatus_print; -asn_constr_check_f TransitStatus_constraint; -ber_type_decoder_f TransitStatus_decode_ber; -der_type_encoder_f TransitStatus_encode_der; -xer_type_decoder_f TransitStatus_decode_xer; -xer_type_encoder_f TransitStatus_encode_xer; -oer_type_decoder_f TransitStatus_decode_oer; -oer_type_encoder_f TransitStatus_encode_oer; -per_type_decoder_f TransitStatus_decode_uper; -per_type_encoder_f TransitStatus_encode_uper; -per_type_decoder_f TransitStatus_decode_aper; -per_type_encoder_f TransitStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h deleted file mode 100644 index 60e640a52..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TransitVehicleOccupancy_H_ -#define _TransitVehicleOccupancy_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitVehicleOccupancy { - TransitVehicleOccupancy_occupancyUnknown = 0, - TransitVehicleOccupancy_occupancyEmpty = 1, - TransitVehicleOccupancy_occupancyVeryLow = 2, - TransitVehicleOccupancy_occupancyLow = 3, - TransitVehicleOccupancy_occupancyMed = 4, - TransitVehicleOccupancy_occupancyHigh = 5, - TransitVehicleOccupancy_occupancyNearlyFull = 6, - TransitVehicleOccupancy_occupancyFull = 7 -} e_TransitVehicleOccupancy; - -/* TransitVehicleOccupancy */ -typedef long TransitVehicleOccupancy_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy; -extern const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1; -asn_struct_free_f TransitVehicleOccupancy_free; -asn_struct_print_f TransitVehicleOccupancy_print; -asn_constr_check_f TransitVehicleOccupancy_constraint; -ber_type_decoder_f TransitVehicleOccupancy_decode_ber; -der_type_encoder_f TransitVehicleOccupancy_encode_der; -xer_type_decoder_f TransitVehicleOccupancy_decode_xer; -xer_type_encoder_f TransitVehicleOccupancy_encode_xer; -oer_type_decoder_f TransitVehicleOccupancy_decode_oer; -oer_type_encoder_f TransitVehicleOccupancy_encode_oer; -per_type_decoder_f TransitVehicleOccupancy_decode_uper; -per_type_encoder_f TransitVehicleOccupancy_encode_uper; -per_type_decoder_f TransitVehicleOccupancy_decode_aper; -per_type_encoder_f TransitVehicleOccupancy_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitVehicleOccupancy_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h deleted file mode 100644 index dc5a501af..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TransitVehicleStatus_H_ -#define _TransitVehicleStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransitVehicleStatus { - TransitVehicleStatus_loading = 0, - TransitVehicleStatus_anADAuse = 1, - TransitVehicleStatus_aBikeLoad = 2, - TransitVehicleStatus_doorOpen = 3, - TransitVehicleStatus_charging = 4, - TransitVehicleStatus_atStopLine = 5 -} e_TransitVehicleStatus; - -/* TransitVehicleStatus */ -typedef BIT_STRING_t TransitVehicleStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus; -asn_struct_free_f TransitVehicleStatus_free; -asn_struct_print_f TransitVehicleStatus_print; -asn_constr_check_f TransitVehicleStatus_constraint; -ber_type_decoder_f TransitVehicleStatus_decode_ber; -der_type_encoder_f TransitVehicleStatus_encode_der; -xer_type_decoder_f TransitVehicleStatus_decode_xer; -xer_type_encoder_f TransitVehicleStatus_encode_xer; -oer_type_decoder_f TransitVehicleStatus_decode_oer; -oer_type_encoder_f TransitVehicleStatus_encode_oer; -per_type_decoder_f TransitVehicleStatus_decode_uper; -per_type_encoder_f TransitVehicleStatus_encode_uper; -per_type_decoder_f TransitVehicleStatus_decode_aper; -per_type_encoder_f TransitVehicleStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransitVehicleStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h deleted file mode 100644 index 4c45062e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TransmissionAndSpeed_H_ -#define _TransmissionAndSpeed_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TransmissionState.h" -#include "Velocity.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* TransmissionAndSpeed */ -typedef struct TransmissionAndSpeed { - TransmissionState_t transmisson; - Velocity_t speed; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TransmissionAndSpeed_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; -extern asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1; -extern asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionAndSpeed_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h deleted file mode 100644 index c12fb0335..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TransmissionState_H_ -#define _TransmissionState_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TransmissionState { - TransmissionState_neutral = 0, - TransmissionState_park = 1, - TransmissionState_forwardGears = 2, - TransmissionState_reverseGears = 3, - TransmissionState_reserved1 = 4, - TransmissionState_reserved2 = 5, - TransmissionState_reserved3 = 6, - TransmissionState_unavailable = 7 -} e_TransmissionState; - -/* TransmissionState */ -typedef long TransmissionState_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TransmissionState_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; -extern const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1; -asn_struct_free_f TransmissionState_free; -asn_struct_print_f TransmissionState_print; -asn_constr_check_f TransmissionState_constraint; -ber_type_decoder_f TransmissionState_decode_ber; -der_type_encoder_f TransmissionState_encode_der; -xer_type_decoder_f TransmissionState_decode_xer; -xer_type_encoder_f TransmissionState_encode_xer; -oer_type_decoder_f TransmissionState_decode_oer; -oer_type_encoder_f TransmissionState_encode_oer; -per_type_decoder_f TransmissionState_decode_uper; -per_type_encoder_f TransmissionState_encode_uper; -per_type_decoder_f TransmissionState_decode_aper; -per_type_encoder_f TransmissionState_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TransmissionState_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h deleted file mode 100644 index d7215b7ae..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TravelerDataFrame_H_ -#define _TravelerDataFrame_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "SSPindex.h" -#include "TravelerInfoType.h" -#include "DYear.h" -#include "MinuteOfTheYear.h" -#include "MinutesDuration.h" -#include "SignPrority.h" -#include "URL-Short.h" -#include "FurtherInfoID.h" -#include "RoadSignID.h" -#include "constr_CHOICE.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "ITIScodesAndText.h" -#include "WorkZone.h" -#include "GenericSignage.h" -#include "SpeedLimit.h" -#include "ExitService.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TravelerDataFrame__msgId_PR { - TravelerDataFrame__msgId_PR_NOTHING, /* No components present */ - TravelerDataFrame__msgId_PR_furtherInfoID, - TravelerDataFrame__msgId_PR_roadSignID -} TravelerDataFrame__msgId_PR; -typedef enum TravelerDataFrame__content_PR { - TravelerDataFrame__content_PR_NOTHING, /* No components present */ - TravelerDataFrame__content_PR_advisory, - TravelerDataFrame__content_PR_workZone, - TravelerDataFrame__content_PR_genericSign, - TravelerDataFrame__content_PR_speedLimit, - TravelerDataFrame__content_PR_exitService -} TravelerDataFrame__content_PR; - -/* Forward declarations */ -struct GeographicalPath; - -/* TravelerDataFrame */ -typedef struct TravelerDataFrame { - SSPindex_t sspTimRights; - TravelerInfoType_t frameType; - struct TravelerDataFrame__msgId { - TravelerDataFrame__msgId_PR present; - union TravelerDataFrame__msgId_u { - FurtherInfoID_t furtherInfoID; - RoadSignID_t roadSignID; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } msgId; - DYear_t *startYear; /* OPTIONAL */ - MinuteOfTheYear_t startTime; - MinutesDuration_t duratonTime; - SignPrority_t priority; - SSPindex_t sspLocationRights; - struct TravelerDataFrame__regions { - A_SEQUENCE_OF(struct GeographicalPath) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } regions; - SSPindex_t sspMsgRights1; - SSPindex_t sspMsgRights2; - struct TravelerDataFrame__content { - TravelerDataFrame__content_PR present; - union TravelerDataFrame__content_u { - ITIScodesAndText_t advisory; - WorkZone_t workZone; - GenericSignage_t genericSign; - SpeedLimit_t speedLimit; - ExitService_t exitService; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } content; - URL_Short_t *url; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TravelerDataFrame_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame; -extern asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[13]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "GeographicalPath.h" - -#endif /* _TravelerDataFrame_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h deleted file mode 100644 index 7ee423803..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TravelerDataFrameList_H_ -#define _TravelerDataFrameList_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 TravelerDataFrame; - -/* TravelerDataFrameList */ -typedef struct TravelerDataFrameList { - A_SEQUENCE_OF(struct TravelerDataFrame) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} TravelerDataFrameList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList; -extern asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[1]; -extern asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "TravelerDataFrame.h" - -#endif /* _TravelerDataFrameList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h deleted file mode 100644 index f023a04c9..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TravelerInfoType_H_ -#define _TravelerInfoType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TravelerInfoType { - TravelerInfoType_unknown = 0, - TravelerInfoType_advisory = 1, - TravelerInfoType_roadSignage = 2, - TravelerInfoType_commercialSignage = 3 - /* - * Enumeration is extensible - */ -} e_TravelerInfoType; - -/* TravelerInfoType */ -typedef long TravelerInfoType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; -extern const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1; -asn_struct_free_f TravelerInfoType_free; -asn_struct_print_f TravelerInfoType_print; -asn_constr_check_f TravelerInfoType_constraint; -ber_type_decoder_f TravelerInfoType_decode_ber; -der_type_encoder_f TravelerInfoType_encode_der; -xer_type_decoder_f TravelerInfoType_decode_xer; -xer_type_encoder_f TravelerInfoType_encode_xer; -oer_type_decoder_f TravelerInfoType_decode_oer; -oer_type_encoder_f TravelerInfoType_encode_oer; -per_type_decoder_f TravelerInfoType_decode_uper; -per_type_encoder_f TravelerInfoType_encode_uper; -per_type_decoder_f TravelerInfoType_decode_aper; -per_type_encoder_f TravelerInfoType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TravelerInfoType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h deleted file mode 100644 index e22b4e9dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _TravelerInformation_H_ -#define _TravelerInformation_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DSRC_MsgCount.h" -#include "MinuteOfTheYear.h" -#include "UniqueMSGID.h" -#include "URL-Base.h" -#include "TravelerDataFrameList.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* TravelerInformation */ -typedef struct TravelerInformation { - DSRC_MsgCount_t msgCnt; - MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ - UniqueMSGID_t *packetID; /* OPTIONAL */ - URL_Base_t *urlB; /* OPTIONAL */ - TravelerDataFrameList_t dataFrames; - struct TravelerInformation__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} TravelerInformation_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; -extern asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1; -extern asn_TYPE_member_t asn_MBR_TravelerInformation_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _TravelerInformation_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h deleted file mode 100644 index 7c23f9ed8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _URL_Base_H_ -#define _URL_Base_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Base */ -typedef IA5String_t URL_Base_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_URL_Base_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_URL_Base; -asn_struct_free_f URL_Base_free; -asn_struct_print_f URL_Base_print; -asn_constr_check_f URL_Base_constraint; -ber_type_decoder_f URL_Base_decode_ber; -der_type_encoder_f URL_Base_encode_der; -xer_type_decoder_f URL_Base_decode_xer; -xer_type_encoder_f URL_Base_encode_xer; -oer_type_decoder_f URL_Base_decode_oer; -oer_type_encoder_f URL_Base_encode_oer; -per_type_decoder_f URL_Base_decode_uper; -per_type_encoder_f URL_Base_encode_uper; -per_type_decoder_f URL_Base_decode_aper; -per_type_encoder_f URL_Base_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Base_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h deleted file mode 100644 index 446d4d0e4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _URL_Link_H_ -#define _URL_Link_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Link */ -typedef IA5String_t URL_Link_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_URL_Link; -asn_struct_free_f URL_Link_free; -asn_struct_print_f URL_Link_print; -asn_constr_check_f URL_Link_constraint; -ber_type_decoder_f URL_Link_decode_ber; -der_type_encoder_f URL_Link_encode_der; -xer_type_decoder_f URL_Link_decode_xer; -xer_type_encoder_f URL_Link_encode_xer; -oer_type_decoder_f URL_Link_decode_oer; -oer_type_encoder_f URL_Link_encode_oer; -per_type_decoder_f URL_Link_decode_uper; -per_type_encoder_f URL_Link_encode_uper; -per_type_decoder_f URL_Link_decode_aper; -per_type_encoder_f URL_Link_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Link_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h deleted file mode 100644 index 7e807e9fc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _URL_Short_H_ -#define _URL_Short_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "IA5String.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* URL-Short */ -typedef IA5String_t URL_Short_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_URL_Short_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_URL_Short; -asn_struct_free_f URL_Short_free; -asn_struct_print_f URL_Short_print; -asn_constr_check_f URL_Short_constraint; -ber_type_decoder_f URL_Short_decode_ber; -der_type_encoder_f URL_Short_encode_der; -xer_type_decoder_f URL_Short_decode_xer; -xer_type_encoder_f URL_Short_encode_xer; -oer_type_decoder_f URL_Short_decode_oer; -oer_type_encoder_f URL_Short_encode_oer; -per_type_decoder_f URL_Short_decode_uper; -per_type_encoder_f URL_Short_encode_uper; -per_type_decoder_f URL_Short_decode_aper; -per_type_encoder_f URL_Short_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _URL_Short_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h deleted file mode 100644 index 553702013..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h +++ /dev/null @@ -1,47 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UTCTime_H_ -#define _UTCTime_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t UTCTime_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_UTCTime; -extern asn_TYPE_operation_t asn_OP_UTCTime; - -asn_struct_print_f UTCTime_print; -asn_constr_check_f UTCTime_constraint; -xer_type_encoder_f UTCTime_encode_xer; - -#define UTCTime_free OCTET_STRING_free -#define UTCTime_compare OCTET_STRING_compare -#define UTCTime_decode_ber OCTET_STRING_decode_ber -#define UTCTime_encode_der OCTET_STRING_encode_der -#define UTCTime_decode_xer OCTET_STRING_decode_xer_utf8 -#define UTCTime_decode_uper OCTET_STRING_decode_uper -#define UTCTime_encode_uper OCTET_STRING_encode_uper - -/*********************** - * Some handy helpers. * - ***********************/ - -struct tm; /* */ - -/* See asn_GT2time() in GeneralizedTime.h */ -time_t asn_UT2time(const UTCTime_t *, struct tm *_optional_tm4fill, int as_gmt); - -/* See asn_time2GT() in GeneralizedTime.h */ -UTCTime_t *asn_time2UT(UTCTime_t *__opt_ut, const struct tm *, int force_gmt); - -#ifdef __cplusplus -} -#endif - -#endif /* _UTCTime_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h deleted file mode 100644 index 1853573a7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UTF8String_H_ -#define _UTF8String_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t UTF8String_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_UTF8String; -extern asn_TYPE_operation_t asn_OP_UTF8String; - -asn_struct_print_f UTF8String_print; -asn_constr_check_f UTF8String_constraint; - -#define UTF8String_free OCTET_STRING_free -#define UTF8String_compare OCTET_STRING_compare -#define UTF8String_constraint UTF8String_constraint -#define UTF8String_decode_ber OCTET_STRING_decode_ber -#define UTF8String_encode_der OCTET_STRING_encode_der -#define UTF8String_decode_xer OCTET_STRING_decode_xer_utf8 -#define UTF8String_encode_xer OCTET_STRING_encode_xer_utf8 -#define UTF8String_decode_uper OCTET_STRING_decode_uper -#define UTF8String_encode_uper OCTET_STRING_encode_uper - -/* - * Returns length of the given UTF-8 string in characters, - * or a negative error code: - * -1: UTF-8 sequence truncated - * -2: Illegal UTF-8 sequence start - * -3: Continuation expectation failed - * -4: Not minimal length encoding - * -5: Invalid arguments - */ -ssize_t UTF8String_length(const UTF8String_t *st); - -/* - * Convert the UTF-8 string into a sequence of wide characters. - * Returns the number of characters necessary. - * Returned value might be greater than dstlen. - * In case of conversion error, 0 is returned. - * - * If st points to a valid UTF-8 string, calling - * UTF8String_to_wcs(st, 0, 0); - * is equivalent to - * UTF8String_length(const UTF8String_t *st); - */ -size_t UTF8String_to_wcs(const UTF8String_t *st, uint32_t *dst, size_t dstlen); - -#ifdef __cplusplus -} -#endif - -#endif /* _UTF8String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h deleted file mode 100644 index d0486182e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h deleted file mode 100644 index b8a6f6929..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _UniqueMSGID_H_ -#define _UniqueMSGID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* UniqueMSGID */ -typedef OCTET_STRING_t UniqueMSGID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; -asn_struct_free_f UniqueMSGID_free; -asn_struct_print_f UniqueMSGID_print; -asn_constr_check_f UniqueMSGID_constraint; -ber_type_decoder_f UniqueMSGID_decode_ber; -der_type_encoder_f UniqueMSGID_encode_der; -xer_type_decoder_f UniqueMSGID_decode_xer; -xer_type_encoder_f UniqueMSGID_encode_xer; -oer_type_decoder_f UniqueMSGID_decode_oer; -oer_type_encoder_f UniqueMSGID_encode_oer; -per_type_decoder_f UniqueMSGID_decode_uper; -per_type_encoder_f UniqueMSGID_encode_uper; -per_type_decoder_f UniqueMSGID_decode_aper; -per_type_encoder_f UniqueMSGID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UniqueMSGID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h deleted file mode 100644 index ff2253739..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h +++ /dev/null @@ -1,35 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _UniversalString_H_ -#define _UniversalString_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t UniversalString_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_UniversalString; -extern asn_TYPE_operation_t asn_OP_UniversalString; -extern asn_OCTET_STRING_specifics_t asn_SPC_UniversalString_specs; - -asn_struct_print_f UniversalString_print; /* Human-readable output */ -xer_type_decoder_f UniversalString_decode_xer; -xer_type_encoder_f UniversalString_encode_xer; - -#define UniversalString_free OCTET_STRING_free -#define UniversalString_compare OCTET_STRING_compare -#define UniversalString_decode_ber OCTET_STRING_decode_ber -#define UniversalString_encode_der OCTET_STRING_encode_der -#define UniversalString_decode_uper OCTET_STRING_decode_uper -#define UniversalString_encode_uper OCTET_STRING_encode_uper - -#ifdef __cplusplus -} -#endif - -#endif /* _UniversalString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h deleted file mode 100644 index 3b5e5e127..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _UserSizeAndBehaviour_H_ -#define _UserSizeAndBehaviour_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum UserSizeAndBehaviour { - UserSizeAndBehaviour_unavailable = 0, - UserSizeAndBehaviour_smallStature = 1, - UserSizeAndBehaviour_largeStature = 2, - UserSizeAndBehaviour_erraticMoving = 3, - UserSizeAndBehaviour_slowMoving = 4 -} e_UserSizeAndBehaviour; - -/* UserSizeAndBehaviour */ -typedef BIT_STRING_t UserSizeAndBehaviour_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; -asn_struct_free_f UserSizeAndBehaviour_free; -asn_struct_print_f UserSizeAndBehaviour_print; -asn_constr_check_f UserSizeAndBehaviour_constraint; -ber_type_decoder_f UserSizeAndBehaviour_decode_ber; -der_type_encoder_f UserSizeAndBehaviour_encode_der; -xer_type_decoder_f UserSizeAndBehaviour_decode_xer; -xer_type_encoder_f UserSizeAndBehaviour_encode_xer; -oer_type_decoder_f UserSizeAndBehaviour_decode_oer; -oer_type_encoder_f UserSizeAndBehaviour_encode_oer; -per_type_decoder_f UserSizeAndBehaviour_decode_uper; -per_type_encoder_f UserSizeAndBehaviour_encode_uper; -per_type_decoder_f UserSizeAndBehaviour_decode_aper; -per_type_encoder_f UserSizeAndBehaviour_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UserSizeAndBehaviour_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h deleted file mode 100644 index 816599783..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VINstring_H_ -#define _VINstring_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "OCTET_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VINstring */ -typedef OCTET_STRING_t VINstring_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VINstring_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VINstring; -asn_struct_free_f VINstring_free; -asn_struct_print_f VINstring_print; -asn_constr_check_f VINstring_constraint; -ber_type_decoder_f VINstring_decode_ber; -der_type_encoder_f VINstring_encode_der; -xer_type_decoder_f VINstring_decode_xer; -xer_type_encoder_f VINstring_encode_xer; -oer_type_decoder_f VINstring_decode_oer; -oer_type_encoder_f VINstring_encode_oer; -per_type_decoder_f VINstring_decode_uper; -per_type_encoder_f VINstring_encode_uper; -per_type_decoder_f VINstring_decode_aper; -per_type_encoder_f VINstring_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VINstring_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h deleted file mode 100644 index 6b8267016..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VType_H_ -#define _VType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VType { - VType_pedestrian = 0, - VType_bicycle = 1, - VType_micromobile = 2, - VType_motorcycle = 3, - VType_passenger_car = 4, - VType_light_truck_van = 5, - VType_bus = 6, - VType_two_axle_six_tire_single_unit_truck = 7, - VType_three_axle_single_unit_truck = 8, - VType_four_or_more_axle_single_unit_truck = 9, - VType_four_or_fewer_axle_single_trailer_truck = 10, - VType_five_axle_single_trailer_truck = 11, - VType_six_or_more_axle_single_trailer_truck = 12, - VType_five_or_fewer_axle_multi_trailer_truck = 13, - VType_six_axle_multi_trailer_truck = 14, - VType_seven_or_more_axle_multi_trailer_truck = 15, - VType_rail = 16, - VType_unclassified = 17 -} e_VType; - -/* VType */ -typedef long VType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VType; -extern const asn_INTEGER_specifics_t asn_SPC_VType_specs_1; -asn_struct_free_f VType_free; -asn_struct_print_f VType_print; -asn_constr_check_f VType_constraint; -ber_type_decoder_f VType_decode_ber; -der_type_encoder_f VType_encode_der; -xer_type_decoder_f VType_decode_xer; -xer_type_encoder_f VType_encode_xer; -oer_type_decoder_f VType_decode_oer; -oer_type_encoder_f VType_encode_oer; -per_type_decoder_f VType_decode_uper; -per_type_encoder_f VType_encode_uper; -per_type_decoder_f VType_decode_aper; -per_type_encoder_f VType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h deleted file mode 100644 index ca92a88b7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ValidRegion_H_ -#define _ValidRegion_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "HeadingSlice.h" -#include "Extent.h" -#include "ShapePointSet.h" -#include "Circle.h" -#include "RegionPointSet.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ValidRegion__area_PR { - ValidRegion__area_PR_NOTHING, /* No components present */ - ValidRegion__area_PR_shapePointSet, - ValidRegion__area_PR_circle, - ValidRegion__area_PR_regionPointSet -} ValidRegion__area_PR; - -/* ValidRegion */ -typedef struct ValidRegion { - HeadingSlice_t direction; - Extent_t *extent; /* OPTIONAL */ - struct ValidRegion__area { - ValidRegion__area_PR present; - union ValidRegion__area_u { - ShapePointSet_t shapePointSet; - Circle_t circle; - RegionPointSet_t regionPointSet; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } area; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ValidRegion_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; -extern asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1; -extern asn_TYPE_member_t asn_MBR_ValidRegion_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ValidRegion_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h deleted file mode 100644 index d541644f3..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleClassification_H_ -#define _VehicleClassification_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BasicVehicleClass.h" -#include "BasicVehicleRole.h" -#include "Iso3833VehicleType.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "ResponderGroupAffected.h" -#include "FuelType.h" -#include "asn_SEQUENCE_OF.h" -#include "constr_SEQUENCE_OF.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Reg_BasicSafetyMessage; - -/* VehicleClassification */ -typedef struct VehicleClassification { - BasicVehicleClass_t *keyType; /* OPTIONAL */ - BasicVehicleRole_t *role; /* OPTIONAL */ - Iso3833VehicleType_t *iso3883; /* OPTIONAL */ - VehicleType_t *hpmsType; /* OPTIONAL */ - VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ - IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ - ResponderGroupAffected_t *responderType; /* OPTIONAL */ - FuelType_t *fuelType; /* OPTIONAL */ - struct VehicleClassification__regional { - A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; -} VehicleClassification_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleClassification; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleClassification_1[9]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "RegionalExtension.h" - -#endif /* _VehicleClassification_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h deleted file mode 100644 index bc1a05562..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleData_H_ -#define _VehicleData_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleHeight.h" -#include "VehicleMass.h" -#include "TrailerWeight.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct BumperHeights; - -/* VehicleData */ -typedef struct VehicleData { - VehicleHeight_t *height; /* OPTIONAL */ - struct BumperHeights *bumpers; /* OPTIONAL */ - VehicleMass_t *mass; /* OPTIONAL */ - TrailerWeight_t *trailerWeight; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleData_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleData; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleData_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "BumperHeights.h" - -#endif /* _VehicleData_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h deleted file mode 100644 index d3daf790c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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_r63/VehicleEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h deleted file mode 100644 index d2fa83879..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleEventFlags_H_ -#define _VehicleEventFlags_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleEventFlags { - VehicleEventFlags_eventHazardLights = 0, - VehicleEventFlags_eventStopLineViolation = 1, - VehicleEventFlags_eventABSactivated = 2, - VehicleEventFlags_eventTractionControlLoss = 3, - VehicleEventFlags_eventStabilityControlactivated = 4, - VehicleEventFlags_eventHazardousMaterials = 5, - VehicleEventFlags_eventReserved1 = 6, - VehicleEventFlags_eventHardBraking = 7, - VehicleEventFlags_eventLightsChanged = 8, - VehicleEventFlags_eventWipersChanged = 9, - VehicleEventFlags_eventFlatTire = 10, - VehicleEventFlags_eventDisabledVehicle = 11, - VehicleEventFlags_eventAirBagDeployment = 12 -} e_VehicleEventFlags; - -/* VehicleEventFlags */ -typedef BIT_STRING_t VehicleEventFlags_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags; -asn_struct_free_f VehicleEventFlags_free; -asn_struct_print_f VehicleEventFlags_print; -asn_constr_check_f VehicleEventFlags_constraint; -ber_type_decoder_f VehicleEventFlags_decode_ber; -der_type_encoder_f VehicleEventFlags_encode_der; -xer_type_decoder_f VehicleEventFlags_decode_xer; -xer_type_encoder_f VehicleEventFlags_encode_xer; -oer_type_decoder_f VehicleEventFlags_decode_oer; -oer_type_encoder_f VehicleEventFlags_encode_oer; -per_type_decoder_f VehicleEventFlags_decode_uper; -per_type_encoder_f VehicleEventFlags_encode_uper; -per_type_decoder_f VehicleEventFlags_decode_aper; -per_type_encoder_f VehicleEventFlags_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleEventFlags_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h deleted file mode 100644 index 19ffd91f1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleGroupAffected_H_ -#define _VehicleGroupAffected_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleGroupAffected { - VehicleGroupAffected_all_vehicles = 9217, - VehicleGroupAffected_bicycles = 9218, - VehicleGroupAffected_motorcycles = 9219, - VehicleGroupAffected_cars = 9220, - VehicleGroupAffected_light_vehicles = 9221, - VehicleGroupAffected_cars_and_light_vehicles = 9222, - VehicleGroupAffected_cars_with_trailers = 9223, - VehicleGroupAffected_cars_with_recreational_trailers = 9224, - VehicleGroupAffected_vehicles_with_trailers = 9225, - VehicleGroupAffected_heavy_vehicles = 9226, - VehicleGroupAffected_trucks = 9227, - VehicleGroupAffected_buses = 9228, - VehicleGroupAffected_articulated_buses = 9229, - VehicleGroupAffected_school_buses = 9230, - VehicleGroupAffected_vehicles_with_semi_trailers = 9231, - VehicleGroupAffected_vehicles_with_double_trailers = 9232, - VehicleGroupAffected_high_profile_vehicles = 9233, - VehicleGroupAffected_wide_vehicles = 9234, - VehicleGroupAffected_long_vehicles = 9235, - VehicleGroupAffected_hazardous_loads = 9236, - VehicleGroupAffected_exceptional_loads = 9237, - VehicleGroupAffected_abnormal_loads = 9238, - VehicleGroupAffected_convoys = 9239, - VehicleGroupAffected_maintenance_vehicles = 9240, - VehicleGroupAffected_delivery_vehicles = 9241, - VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, - VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, - VehicleGroupAffected_vehicles_with_parking_permits = 9244, - VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, - VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, - VehicleGroupAffected_gas_powered_vehicles = 9247, - VehicleGroupAffected_diesel_powered_vehicles = 9248, - VehicleGroupAffected_lPG_vehicles = 9249, - VehicleGroupAffected_military_convoys = 9250, - VehicleGroupAffected_military_vehicles = 9251 - /* - * Enumeration is extensible - */ -} e_VehicleGroupAffected; - -/* VehicleGroupAffected */ -typedef long VehicleGroupAffected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1; -asn_struct_free_f VehicleGroupAffected_free; -asn_struct_print_f VehicleGroupAffected_print; -asn_constr_check_f VehicleGroupAffected_constraint; -ber_type_decoder_f VehicleGroupAffected_decode_ber; -der_type_encoder_f VehicleGroupAffected_encode_der; -xer_type_decoder_f VehicleGroupAffected_decode_xer; -xer_type_encoder_f VehicleGroupAffected_encode_xer; -oer_type_decoder_f VehicleGroupAffected_decode_oer; -oer_type_encoder_f VehicleGroupAffected_encode_oer; -per_type_decoder_f VehicleGroupAffected_decode_uper; -per_type_encoder_f VehicleGroupAffected_encode_uper; -per_type_decoder_f VehicleGroupAffected_decode_aper; -per_type_encoder_f VehicleGroupAffected_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleGroupAffected_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h deleted file mode 100644 index 7bb559d76..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleHeight_H_ -#define _VehicleHeight_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleHeight */ -typedef long VehicleHeight_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; -asn_struct_free_f VehicleHeight_free; -asn_struct_print_f VehicleHeight_print; -asn_constr_check_f VehicleHeight_constraint; -ber_type_decoder_f VehicleHeight_decode_ber; -der_type_encoder_f VehicleHeight_encode_der; -xer_type_decoder_f VehicleHeight_decode_xer; -xer_type_encoder_f VehicleHeight_encode_xer; -oer_type_decoder_f VehicleHeight_decode_oer; -oer_type_encoder_f VehicleHeight_encode_oer; -per_type_decoder_f VehicleHeight_decode_uper; -per_type_encoder_f VehicleHeight_encode_uper; -per_type_decoder_f VehicleHeight_decode_aper; -per_type_encoder_f VehicleHeight_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleHeight_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h deleted file mode 100644 index 8ef741b06..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleID_H_ -#define _VehicleID_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "TemporaryID.h" -#include "StationID.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleID_PR { - VehicleID_PR_NOTHING, /* No components present */ - VehicleID_PR_entityID, - VehicleID_PR_stationID -} VehicleID_PR; - -/* VehicleID */ -typedef struct VehicleID { - VehicleID_PR present; - union VehicleID_u { - TemporaryID_t entityID; - StationID_t stationID; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleID; -extern asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleID_1[2]; -extern asn_per_constraints_t asn_PER_type_VehicleID_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleID_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h deleted file mode 100644 index 2fcfcb812..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleIdent_H_ -#define _VehicleIdent_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "DescriptiveName.h" -#include "VINstring.h" -#include "IA5String.h" -#include "VehicleType.h" -#include "VehicleGroupAffected.h" -#include "ResponderGroupAffected.h" -#include "IncidentResponseEquipment.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleIdent__vehicleClass_PR { - VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ - VehicleIdent__vehicleClass_PR_vGroup, - VehicleIdent__vehicleClass_PR_rGroup, - VehicleIdent__vehicleClass_PR_rEquip -} VehicleIdent__vehicleClass_PR; - -/* Forward declarations */ -struct VehicleID; - -/* VehicleIdent */ -typedef struct VehicleIdent { - DescriptiveName_t *name; /* OPTIONAL */ - VINstring_t *vin; /* OPTIONAL */ - IA5String_t *ownerCode; /* OPTIONAL */ - struct VehicleID *id; /* OPTIONAL */ - VehicleType_t *vehicleType; /* OPTIONAL */ - struct VehicleIdent__vehicleClass { - VehicleIdent__vehicleClass_PR present; - union VehicleIdent__vehicleClass_u { - VehicleGroupAffected_t vGroup; - ResponderGroupAffected_t rGroup; - IncidentResponseEquipment_t rEquip; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleClass; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleIdent_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleIdent_1[6]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleID.h" - -#endif /* _VehicleIdent_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h deleted file mode 100644 index dbd4aeef7..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleLength_H_ -#define _VehicleLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleLength */ -typedef long VehicleLength_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleLength_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; -asn_struct_free_f VehicleLength_free; -asn_struct_print_f VehicleLength_print; -asn_constr_check_f VehicleLength_constraint; -ber_type_decoder_f VehicleLength_decode_ber; -der_type_encoder_f VehicleLength_encode_der; -xer_type_decoder_f VehicleLength_decode_xer; -xer_type_encoder_f VehicleLength_encode_xer; -oer_type_decoder_f VehicleLength_decode_oer; -oer_type_encoder_f VehicleLength_encode_oer; -per_type_decoder_f VehicleLength_decode_uper; -per_type_encoder_f VehicleLength_encode_uper; -per_type_decoder_f VehicleLength_decode_aper; -per_type_encoder_f VehicleLength_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h deleted file mode 100644 index a18268a37..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleMass_H_ -#define _VehicleMass_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleMass */ -typedef long VehicleMass_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleMass_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; -asn_struct_free_f VehicleMass_free; -asn_struct_print_f VehicleMass_print; -asn_constr_check_f VehicleMass_constraint; -ber_type_decoder_f VehicleMass_decode_ber; -der_type_encoder_f VehicleMass_encode_der; -xer_type_decoder_f VehicleMass_decode_xer; -xer_type_encoder_f VehicleMass_encode_xer; -oer_type_decoder_f VehicleMass_decode_oer; -oer_type_encoder_f VehicleMass_encode_oer; -per_type_decoder_f VehicleMass_decode_uper; -per_type_encoder_f VehicleMass_encode_uper; -per_type_decoder_f VehicleMass_decode_aper; -per_type_encoder_f VehicleMass_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleMass_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h deleted file mode 100644 index 7d147d14c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#ifndef _VehicleSafetyExtensions_H_ -#define _VehicleSafetyExtensions_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleEventFlags.h" -#include "ExteriorLights.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PathHistory; -struct PathPrediction; - -/* VehicleSafetyExtensions */ -typedef struct VehicleSafetyExtensions { - VehicleEventFlags_t *events; /* OPTIONAL */ - struct PathHistory *pathHistory; /* OPTIONAL */ - struct PathPrediction *pathPrediction; /* OPTIONAL */ - ExteriorLights_t *lights; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSafetyExtensions_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[4]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "PathHistory.h" -#include "PathPrediction.h" - -#endif /* _VehicleSafetyExtensions_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h deleted file mode 100644 index db7acf91c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleSize_H_ -#define _VehicleSize_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleWidth.h" -#include "VehicleLength.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleSize */ -typedef struct VehicleSize { - VehicleWidth_t width; - VehicleLength_t length; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSize_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleSize_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleSize_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h deleted file mode 100644 index 7ab00134d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _VehicleSizeConfidence_H_ -#define _VehicleSizeConfidence_H_ - - -#include - -/* Including external dependencies */ -#include "SizeValueConfidence.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleSizeConfidence */ -typedef struct VehicleSizeConfidence { - SizeValueConfidence_t vehicleWidthConfidence; - SizeValueConfidence_t vehicleLengthConfidence; - SizeValueConfidence_t *vehicleHeightConfidence /* OPTIONAL */; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleSizeConfidence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleSizeConfidence_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h deleted file mode 100644 index bca8ec1ab..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleStatus_H_ -#define _VehicleStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "ExteriorLights.h" -#include "LightbarInUse.h" -#include "BrakeAppliedPressure.h" -#include "CoefficientOfFriction.h" -#include "SunSensor.h" -#include "RainSensor.h" -#include "AmbientAirTemperature.h" -#include "AmbientAirPressure.h" -#include "ThrottlePosition.h" -#include "SpeedConfidence.h" -#include "GNSSstatus.h" -#include "SteeringWheelAngle.h" -#include "SteeringWheelAngleConfidence.h" -#include "SteeringWheelAngleRateOfChange.h" -#include "DrivingWheelAngle.h" -#include "constr_SEQUENCE.h" -#include "VerticalAccelerationThreshold.h" -#include "YawRateConfidence.h" -#include "AccelerationConfidence.h" -#include "ObstacleDistance.h" -#include "DSRC_Angle.h" -#include "DDateTime.h" -#include "VehicleHeight.h" -#include "BumperHeights.h" -#include "VehicleMass.h" -#include "TrailerWeight.h" -#include "VehicleType.h" -#include "EssPrecipYesNo.h" -#include "EssPrecipRate.h" -#include "EssPrecipSituation.h" -#include "EssSolarRadiation.h" -#include "EssMobileFriction.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct WiperSet; -struct BrakeSystemStatus; -struct FullPositionVector; -struct SpeedandHeadingandThrottleConfidence; -struct VehicleIdent; -struct J1939data; -struct AccelerationSet4Way; -struct ConfidenceSet; - -/* VehicleStatus */ -typedef struct VehicleStatus { - ExteriorLights_t *lights; /* OPTIONAL */ - LightbarInUse_t *lightBar; /* OPTIONAL */ - struct WiperSet *wipers; /* OPTIONAL */ - struct BrakeSystemStatus *brakeStatus; /* OPTIONAL */ - BrakeAppliedPressure_t *brakePressure; /* OPTIONAL */ - CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ - SunSensor_t *sunData; /* OPTIONAL */ - RainSensor_t *rainData; /* OPTIONAL */ - AmbientAirTemperature_t *airTemp; /* OPTIONAL */ - AmbientAirPressure_t *airPres; /* OPTIONAL */ - struct VehicleStatus__steering { - SteeringWheelAngle_t angle; - SteeringWheelAngleConfidence_t *confidence; /* OPTIONAL */ - SteeringWheelAngleRateOfChange_t *rate; /* OPTIONAL */ - DrivingWheelAngle_t *wheels; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *steering; - struct VehicleStatus__accelSets { - struct AccelerationSet4Way *accel4way; /* OPTIONAL */ - VerticalAccelerationThreshold_t *vertAccelThres; /* OPTIONAL */ - YawRateConfidence_t *yawRateCon; /* OPTIONAL */ - AccelerationConfidence_t *hozAccelCon; /* OPTIONAL */ - struct ConfidenceSet *confidenceSet; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *accelSets; - struct VehicleStatus__object { - ObstacleDistance_t obDist; - DSRC_Angle_t obDirect; - DDateTime_t dateTime; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *object; - struct FullPositionVector *fullPos; /* OPTIONAL */ - ThrottlePosition_t *throttlePos; /* OPTIONAL */ - struct SpeedandHeadingandThrottleConfidence *speedHeadC; /* OPTIONAL */ - SpeedConfidence_t *speedC; /* OPTIONAL */ - struct VehicleStatus__vehicleData { - VehicleHeight_t height; - BumperHeights_t bumpers; - VehicleMass_t mass; - TrailerWeight_t trailerWeight; - VehicleType_t type; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *vehicleData; - struct VehicleIdent *vehicleIdent; /* OPTIONAL */ - struct J1939data *j1939data; /* OPTIONAL */ - struct VehicleStatus__weatherReport { - EssPrecipYesNo_t isRaining; - EssPrecipRate_t *rainRate; /* OPTIONAL */ - EssPrecipSituation_t *precipSituation; /* OPTIONAL */ - EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ - EssMobileFriction_t *friction; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *weatherReport; - GNSSstatus_t *gnssStatus; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatus_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatus_1[22]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "WiperSet.h" -#include "BrakeSystemStatus.h" -#include "FullPositionVector.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "VehicleIdent.h" -#include "J1939data.h" -#include "AccelerationSet4Way.h" -#include "ConfidenceSet.h" - -#endif /* _VehicleStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h deleted file mode 100644 index 6799429aa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleStatusDeviceTypeTag_H_ -#define _VehicleStatusDeviceTypeTag_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleStatusDeviceTypeTag { - VehicleStatusDeviceTypeTag_unknown = 0, - VehicleStatusDeviceTypeTag_lights = 1, - VehicleStatusDeviceTypeTag_wipers = 2, - VehicleStatusDeviceTypeTag_brakes = 3, - VehicleStatusDeviceTypeTag_stab = 4, - VehicleStatusDeviceTypeTag_trac = 5, - VehicleStatusDeviceTypeTag_abs = 6, - VehicleStatusDeviceTypeTag_sunS = 7, - VehicleStatusDeviceTypeTag_rainS = 8, - VehicleStatusDeviceTypeTag_airTemp = 9, - VehicleStatusDeviceTypeTag_steering = 10, - VehicleStatusDeviceTypeTag_vertAccelThres = 11, - VehicleStatusDeviceTypeTag_vertAccel = 12, - VehicleStatusDeviceTypeTag_hozAccelLong = 13, - VehicleStatusDeviceTypeTag_hozAccelLat = 14, - VehicleStatusDeviceTypeTag_hozAccelCon = 15, - VehicleStatusDeviceTypeTag_accel4way = 16, - VehicleStatusDeviceTypeTag_confidenceSet = 17, - VehicleStatusDeviceTypeTag_obDist = 18, - VehicleStatusDeviceTypeTag_obDirect = 19, - VehicleStatusDeviceTypeTag_yaw = 20, - VehicleStatusDeviceTypeTag_yawRateCon = 21, - VehicleStatusDeviceTypeTag_dateTime = 22, - VehicleStatusDeviceTypeTag_fullPos = 23, - VehicleStatusDeviceTypeTag_position2D = 24, - VehicleStatusDeviceTypeTag_position3D = 25, - VehicleStatusDeviceTypeTag_vehicle = 26, - VehicleStatusDeviceTypeTag_speedHeadC = 27, - VehicleStatusDeviceTypeTag_speedC = 28 - /* - * Enumeration is extensible - */ -} e_VehicleStatusDeviceTypeTag; - -/* VehicleStatusDeviceTypeTag */ -typedef long VehicleStatusDeviceTypeTag_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1; -asn_struct_free_f VehicleStatusDeviceTypeTag_free; -asn_struct_print_f VehicleStatusDeviceTypeTag_print; -asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; -ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; -der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; -xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; -xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; -oer_type_decoder_f VehicleStatusDeviceTypeTag_decode_oer; -oer_type_encoder_f VehicleStatusDeviceTypeTag_encode_oer; -per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; -per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; -per_type_decoder_f VehicleStatusDeviceTypeTag_decode_aper; -per_type_encoder_f VehicleStatusDeviceTypeTag_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusDeviceTypeTag_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h deleted file mode 100644 index f75bc8eea..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleStatusRequest_H_ -#define _VehicleStatusRequest_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VehicleStatusDeviceTypeTag.h" -#include "NativeInteger.h" -#include "BOOLEAN.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleStatusRequest */ -typedef struct VehicleStatusRequest { - VehicleStatusDeviceTypeTag_t dataType; - long *subType; /* OPTIONAL */ - long *sendOnLessThenValue; /* OPTIONAL */ - long *sendOnMoreThenValue; /* OPTIONAL */ - BOOLEAN_t *sendAll; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatusRequest_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleStatusRequest_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h deleted file mode 100644 index 8251c836d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleStatusRequestList_H_ -#define _VehicleStatusRequestList_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 VehicleStatusRequest; - -/* VehicleStatusRequestList */ -typedef struct VehicleStatusRequestList { - A_SEQUENCE_OF(struct VehicleStatusRequest) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleStatusRequestList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList; -extern asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[1]; -extern asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleStatusRequest.h" - -#endif /* _VehicleStatusRequestList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h deleted file mode 100644 index a4447d060..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleToLanePosition_H_ -#define _VehicleToLanePosition_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "StationID.h" -#include "LaneID.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleToLanePosition */ -typedef struct VehicleToLanePosition { - StationID_t stationID; - LaneID_t laneID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePosition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; -extern asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleToLanePosition_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h deleted file mode 100644 index 1865e5a92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleToLanePositionList_H_ -#define _VehicleToLanePositionList_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 VehicleToLanePosition; - -/* VehicleToLanePositionList */ -typedef struct VehicleToLanePositionList { - A_SEQUENCE_OF(struct VehicleToLanePosition) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VehicleToLanePositionList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; -extern asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1; -extern asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[1]; -extern asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "VehicleToLanePosition.h" - -#endif /* _VehicleToLanePositionList_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h deleted file mode 100644 index a793e3735..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleType_H_ -#define _VehicleType_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VehicleType { - VehicleType_none = 0, - VehicleType_unknown = 1, - VehicleType_special = 2, - VehicleType_moto = 3, - VehicleType_car = 4, - VehicleType_carOther = 5, - VehicleType_bus = 6, - VehicleType_axleCnt2 = 7, - VehicleType_axleCnt3 = 8, - VehicleType_axleCnt4 = 9, - VehicleType_axleCnt4Trailer = 10, - VehicleType_axleCnt5Trailer = 11, - VehicleType_axleCnt6Trailer = 12, - VehicleType_axleCnt5MultiTrailer = 13, - VehicleType_axleCnt6MultiTrailer = 14, - VehicleType_axleCnt7MultiTrailer = 15 - /* - * Enumeration is extensible - */ -} e_VehicleType; - -/* VehicleType */ -typedef long VehicleType_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleType_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleType; -extern const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1; -asn_struct_free_f VehicleType_free; -asn_struct_print_f VehicleType_print; -asn_constr_check_f VehicleType_constraint; -ber_type_decoder_f VehicleType_decode_ber; -der_type_encoder_f VehicleType_encode_der; -xer_type_decoder_f VehicleType_decode_xer; -xer_type_encoder_f VehicleType_encode_xer; -oer_type_decoder_f VehicleType_decode_oer; -oer_type_encoder_f VehicleType_encode_oer; -per_type_decoder_f VehicleType_decode_uper; -per_type_encoder_f VehicleType_encode_uper; -per_type_decoder_f VehicleType_decode_aper; -per_type_encoder_f VehicleType_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleType_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h deleted file mode 100644 index e0bf0a82b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VehicleWidth_H_ -#define _VehicleWidth_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VehicleWidth */ -typedef long VehicleWidth_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; -asn_struct_free_f VehicleWidth_free; -asn_struct_print_f VehicleWidth_print; -asn_constr_check_f VehicleWidth_constraint; -ber_type_decoder_f VehicleWidth_decode_ber; -der_type_encoder_f VehicleWidth_encode_der; -xer_type_decoder_f VehicleWidth_decode_xer; -xer_type_encoder_f VehicleWidth_encode_xer; -oer_type_decoder_f VehicleWidth_decode_oer; -oer_type_encoder_f VehicleWidth_encode_oer; -per_type_decoder_f VehicleWidth_decode_uper; -per_type_encoder_f VehicleWidth_encode_uper; -per_type_decoder_f VehicleWidth_decode_aper; -per_type_encoder_f VehicleWidth_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VehicleWidth_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h deleted file mode 100644 index 7cb76fe22..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Velocity_H_ -#define _Velocity_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Velocity */ -typedef long Velocity_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Velocity_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Velocity; -asn_struct_free_f Velocity_free; -asn_struct_print_f Velocity_print; -asn_constr_check_f Velocity_constraint; -ber_type_decoder_f Velocity_decode_ber; -der_type_encoder_f Velocity_encode_der; -xer_type_decoder_f Velocity_decode_xer; -xer_type_encoder_f Velocity_encode_xer; -oer_type_decoder_f Velocity_decode_oer; -oer_type_encoder_f Velocity_encode_oer; -per_type_decoder_f Velocity_decode_uper; -per_type_encoder_f Velocity_encode_uper; -per_type_decoder_f Velocity_decode_aper; -per_type_encoder_f Velocity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Velocity_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h deleted file mode 100644 index bdc555719..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B07_H_ -#define _VertOffset_B07_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B07 */ -typedef long VertOffset_B07_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B07; -asn_struct_free_f VertOffset_B07_free; -asn_struct_print_f VertOffset_B07_print; -asn_constr_check_f VertOffset_B07_constraint; -ber_type_decoder_f VertOffset_B07_decode_ber; -der_type_encoder_f VertOffset_B07_encode_der; -xer_type_decoder_f VertOffset_B07_decode_xer; -xer_type_encoder_f VertOffset_B07_encode_xer; -oer_type_decoder_f VertOffset_B07_decode_oer; -oer_type_encoder_f VertOffset_B07_encode_oer; -per_type_decoder_f VertOffset_B07_decode_uper; -per_type_encoder_f VertOffset_B07_encode_uper; -per_type_decoder_f VertOffset_B07_decode_aper; -per_type_encoder_f VertOffset_B07_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B07_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h deleted file mode 100644 index 2f6e93460..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B08_H_ -#define _VertOffset_B08_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B08 */ -typedef long VertOffset_B08_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B08; -asn_struct_free_f VertOffset_B08_free; -asn_struct_print_f VertOffset_B08_print; -asn_constr_check_f VertOffset_B08_constraint; -ber_type_decoder_f VertOffset_B08_decode_ber; -der_type_encoder_f VertOffset_B08_encode_der; -xer_type_decoder_f VertOffset_B08_decode_xer; -xer_type_encoder_f VertOffset_B08_encode_xer; -oer_type_decoder_f VertOffset_B08_decode_oer; -oer_type_encoder_f VertOffset_B08_encode_oer; -per_type_decoder_f VertOffset_B08_decode_uper; -per_type_encoder_f VertOffset_B08_encode_uper; -per_type_decoder_f VertOffset_B08_decode_aper; -per_type_encoder_f VertOffset_B08_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B08_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h deleted file mode 100644 index 841a860ad..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B09_H_ -#define _VertOffset_B09_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B09 */ -typedef long VertOffset_B09_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B09; -asn_struct_free_f VertOffset_B09_free; -asn_struct_print_f VertOffset_B09_print; -asn_constr_check_f VertOffset_B09_constraint; -ber_type_decoder_f VertOffset_B09_decode_ber; -der_type_encoder_f VertOffset_B09_encode_der; -xer_type_decoder_f VertOffset_B09_decode_xer; -xer_type_encoder_f VertOffset_B09_encode_xer; -oer_type_decoder_f VertOffset_B09_decode_oer; -oer_type_encoder_f VertOffset_B09_encode_oer; -per_type_decoder_f VertOffset_B09_decode_uper; -per_type_encoder_f VertOffset_B09_encode_uper; -per_type_decoder_f VertOffset_B09_decode_aper; -per_type_encoder_f VertOffset_B09_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B09_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h deleted file mode 100644 index 8ce6f1bee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B10_H_ -#define _VertOffset_B10_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B10 */ -typedef long VertOffset_B10_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B10; -asn_struct_free_f VertOffset_B10_free; -asn_struct_print_f VertOffset_B10_print; -asn_constr_check_f VertOffset_B10_constraint; -ber_type_decoder_f VertOffset_B10_decode_ber; -der_type_encoder_f VertOffset_B10_encode_der; -xer_type_decoder_f VertOffset_B10_decode_xer; -xer_type_encoder_f VertOffset_B10_encode_xer; -oer_type_decoder_f VertOffset_B10_decode_oer; -oer_type_encoder_f VertOffset_B10_encode_oer; -per_type_decoder_f VertOffset_B10_decode_uper; -per_type_encoder_f VertOffset_B10_encode_uper; -per_type_decoder_f VertOffset_B10_decode_aper; -per_type_encoder_f VertOffset_B10_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B10_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h deleted file mode 100644 index 060aab625..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B11_H_ -#define _VertOffset_B11_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B11 */ -typedef long VertOffset_B11_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B11; -asn_struct_free_f VertOffset_B11_free; -asn_struct_print_f VertOffset_B11_print; -asn_constr_check_f VertOffset_B11_constraint; -ber_type_decoder_f VertOffset_B11_decode_ber; -der_type_encoder_f VertOffset_B11_encode_der; -xer_type_decoder_f VertOffset_B11_decode_xer; -xer_type_encoder_f VertOffset_B11_encode_xer; -oer_type_decoder_f VertOffset_B11_decode_oer; -oer_type_encoder_f VertOffset_B11_encode_oer; -per_type_decoder_f VertOffset_B11_decode_uper; -per_type_encoder_f VertOffset_B11_encode_uper; -per_type_decoder_f VertOffset_B11_decode_aper; -per_type_encoder_f VertOffset_B11_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B11_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h deleted file mode 100644 index 74b07b8cc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VertOffset_B12_H_ -#define _VertOffset_B12_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VertOffset-B12 */ -typedef long VertOffset_B12_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B12; -asn_struct_free_f VertOffset_B12_free; -asn_struct_print_f VertOffset_B12_print; -asn_constr_check_f VertOffset_B12_constraint; -ber_type_decoder_f VertOffset_B12_decode_ber; -der_type_encoder_f VertOffset_B12_encode_der; -xer_type_decoder_f VertOffset_B12_decode_xer; -xer_type_encoder_f VertOffset_B12_encode_xer; -oer_type_decoder_f VertOffset_B12_decode_oer; -oer_type_encoder_f VertOffset_B12_encode_oer; -per_type_decoder_f VertOffset_B12_decode_uper; -per_type_encoder_f VertOffset_B12_encode_uper; -per_type_decoder_f VertOffset_B12_decode_aper; -per_type_encoder_f VertOffset_B12_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VertOffset_B12_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h deleted file mode 100644 index 7c60fb9a5..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VerticalAcceleration_H_ -#define _VerticalAcceleration_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* VerticalAcceleration */ -typedef long VerticalAcceleration_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; -asn_struct_free_f VerticalAcceleration_free; -asn_struct_print_f VerticalAcceleration_print; -asn_constr_check_f VerticalAcceleration_constraint; -ber_type_decoder_f VerticalAcceleration_decode_ber; -der_type_encoder_f VerticalAcceleration_encode_der; -xer_type_decoder_f VerticalAcceleration_decode_xer; -xer_type_encoder_f VerticalAcceleration_encode_xer; -oer_type_decoder_f VerticalAcceleration_decode_oer; -oer_type_encoder_f VerticalAcceleration_encode_oer; -per_type_decoder_f VerticalAcceleration_decode_uper; -per_type_encoder_f VerticalAcceleration_encode_uper; -per_type_decoder_f VerticalAcceleration_decode_aper; -per_type_encoder_f VerticalAcceleration_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAcceleration_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h deleted file mode 100644 index 53b1f6a47..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VerticalAccelerationThreshold_H_ -#define _VerticalAccelerationThreshold_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BIT_STRING.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VerticalAccelerationThreshold { - VerticalAccelerationThreshold_notEquipped = 0, - VerticalAccelerationThreshold_leftFront = 1, - VerticalAccelerationThreshold_leftRear = 2, - VerticalAccelerationThreshold_rightFront = 3, - VerticalAccelerationThreshold_rightRear = 4 -} e_VerticalAccelerationThreshold; - -/* VerticalAccelerationThreshold */ -typedef BIT_STRING_t VerticalAccelerationThreshold_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; -asn_struct_free_f VerticalAccelerationThreshold_free; -asn_struct_print_f VerticalAccelerationThreshold_print; -asn_constr_check_f VerticalAccelerationThreshold_constraint; -ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; -der_type_encoder_f VerticalAccelerationThreshold_encode_der; -xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; -xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; -oer_type_decoder_f VerticalAccelerationThreshold_decode_oer; -oer_type_encoder_f VerticalAccelerationThreshold_encode_oer; -per_type_decoder_f VerticalAccelerationThreshold_decode_uper; -per_type_encoder_f VerticalAccelerationThreshold_encode_uper; -per_type_decoder_f VerticalAccelerationThreshold_decode_aper; -per_type_encoder_f VerticalAccelerationThreshold_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalAccelerationThreshold_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h deleted file mode 100644 index 00a2b6223..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _VerticalOffset_H_ -#define _VerticalOffset_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "VertOffset-B07.h" -#include "VertOffset-B08.h" -#include "VertOffset-B09.h" -#include "VertOffset-B10.h" -#include "VertOffset-B11.h" -#include "VertOffset-B12.h" -#include "DSRC_Elevation.h" -#include "RegionalExtension.h" -#include "constr_CHOICE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum VerticalOffset_PR { - VerticalOffset_PR_NOTHING, /* No components present */ - VerticalOffset_PR_offset1, - VerticalOffset_PR_offset2, - VerticalOffset_PR_offset3, - VerticalOffset_PR_offset4, - VerticalOffset_PR_offset5, - VerticalOffset_PR_offset6, - VerticalOffset_PR_elevation, - VerticalOffset_PR_regional -} VerticalOffset_PR; - -/* VerticalOffset */ -typedef struct VerticalOffset { - VerticalOffset_PR present; - union VerticalOffset_u { - VertOffset_B07_t offset1; - VertOffset_B08_t offset2; - VertOffset_B09_t offset3; - VertOffset_B10_t offset4; - VertOffset_B11_t offset5; - VertOffset_B12_t offset6; - DSRC_Elevation_t elevation; - Reg_BasicSafetyMessage_t regional; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} VerticalOffset_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_VerticalOffset; - -#ifdef __cplusplus -} -#endif - -#endif /* _VerticalOffset_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h deleted file mode 100644 index 1227f581d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * 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_r63/VisibleString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h deleted file mode 100644 index a8d278bed..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h +++ /dev/null @@ -1,36 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _VisibleString_H_ -#define _VisibleString_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef OCTET_STRING_t VisibleString_t; /* Implemented via OCTET STRING */ - -extern asn_TYPE_descriptor_t asn_DEF_VisibleString; -extern asn_TYPE_operation_t asn_OP_VisibleString; - -asn_constr_check_f VisibleString_constraint; - -#define VisibleString_free OCTET_STRING_free -#define VisibleString_print OCTET_STRING_print -#define VisibleString_compare OCTET_STRING_compare -#define VisibleString_constraint VisibleString_constraint -#define VisibleString_decode_ber OCTET_STRING_decode_ber -#define VisibleString_encode_der OCTET_STRING_encode_der -#define VisibleString_decode_xer OCTET_STRING_decode_xer_hex -#define VisibleString_encode_xer OCTET_STRING_encode_xer -#define VisibleString_decode_uper OCTET_STRING_decode_uper -#define VisibleString_encode_uper OCTET_STRING_encode_uper - -#ifdef __cplusplus -} -#endif - -#endif /* _VisibleString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h deleted file mode 100644 index 0b115f41c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WaitOnStopline_H_ -#define _WaitOnStopline_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "BOOLEAN.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WaitOnStopline */ -typedef BOOLEAN_t WaitOnStopline_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; -asn_struct_free_f WaitOnStopline_free; -asn_struct_print_f WaitOnStopline_print; -asn_constr_check_f WaitOnStopline_constraint; -ber_type_decoder_f WaitOnStopline_decode_ber; -der_type_encoder_f WaitOnStopline_encode_der; -xer_type_decoder_f WaitOnStopline_decode_xer; -xer_type_encoder_f WaitOnStopline_encode_xer; -oer_type_decoder_f WaitOnStopline_decode_oer; -oer_type_encoder_f WaitOnStopline_encode_oer; -per_type_decoder_f WaitOnStopline_decode_uper; -per_type_encoder_f WaitOnStopline_encode_uper; -per_type_decoder_f WaitOnStopline_decode_aper; -per_type_encoder_f WaitOnStopline_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WaitOnStopline_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h deleted file mode 100644 index 5ffd3feee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WeatherProbe_H_ -#define _WeatherProbe_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "AmbientAirTemperature.h" -#include "AmbientAirPressure.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct WiperSet; - -/* WeatherProbe */ -typedef struct WeatherProbe { - AmbientAirTemperature_t *airTemp; /* OPTIONAL */ - AmbientAirPressure_t *airPressure; /* OPTIONAL */ - struct WiperSet *rainRates; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WeatherProbe_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WeatherProbe; -extern asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1; -extern asn_TYPE_member_t asn_MBR_WeatherProbe_1[3]; - -#ifdef __cplusplus -} -#endif - -/* Referred external types */ -#include "WiperSet.h" - -#endif /* _WeatherProbe_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h deleted file mode 100644 index c3fd41335..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WeatherReport_H_ -#define _WeatherReport_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "EssPrecipYesNo.h" -#include "EssPrecipRate.h" -#include "EssPrecipSituation.h" -#include "EssSolarRadiation.h" -#include "EssMobileFriction.h" -#include "CoefficientOfFriction.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WeatherReport */ -typedef struct WeatherReport { - EssPrecipYesNo_t isRaining; - EssPrecipRate_t *rainRate; /* OPTIONAL */ - EssPrecipSituation_t *precipSituation; /* OPTIONAL */ - EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ - EssMobileFriction_t *friction; /* OPTIONAL */ - CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WeatherReport_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WeatherReport; -extern asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1; -extern asn_TYPE_member_t asn_MBR_WeatherReport_1[6]; - -#ifdef __cplusplus -} -#endif - -#endif /* _WeatherReport_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h deleted file mode 100644 index 023abecc2..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WheelEndElectFault_H_ -#define _WheelEndElectFault_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelEndElectFault { - WheelEndElectFault_isOk = 0, - WheelEndElectFault_isNotDefined = 1, - WheelEndElectFault_isError = 2, - WheelEndElectFault_isNotSupported = 3 -} e_WheelEndElectFault; - -/* WheelEndElectFault */ -typedef long WheelEndElectFault_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; -extern const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1; -asn_struct_free_f WheelEndElectFault_free; -asn_struct_print_f WheelEndElectFault_print; -asn_constr_check_f WheelEndElectFault_constraint; -ber_type_decoder_f WheelEndElectFault_decode_ber; -der_type_encoder_f WheelEndElectFault_encode_der; -xer_type_decoder_f WheelEndElectFault_decode_xer; -xer_type_encoder_f WheelEndElectFault_encode_xer; -oer_type_decoder_f WheelEndElectFault_decode_oer; -oer_type_encoder_f WheelEndElectFault_encode_oer; -per_type_decoder_f WheelEndElectFault_decode_uper; -per_type_encoder_f WheelEndElectFault_encode_uper; -per_type_decoder_f WheelEndElectFault_decode_aper; -per_type_encoder_f WheelEndElectFault_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelEndElectFault_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h deleted file mode 100644 index 5fa91a740..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WheelSensorStatus_H_ -#define _WheelSensorStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WheelSensorStatus { - WheelSensorStatus_off = 0, - WheelSensorStatus_on = 1, - WheelSensorStatus_notDefined = 2, - WheelSensorStatus_notSupported = 3 -} e_WheelSensorStatus; - -/* WheelSensorStatus */ -typedef long WheelSensorStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; -extern const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1; -asn_struct_free_f WheelSensorStatus_free; -asn_struct_print_f WheelSensorStatus_print; -asn_constr_check_f WheelSensorStatus_constraint; -ber_type_decoder_f WheelSensorStatus_decode_ber; -der_type_encoder_f WheelSensorStatus_encode_der; -xer_type_decoder_f WheelSensorStatus_decode_xer; -xer_type_encoder_f WheelSensorStatus_encode_xer; -oer_type_decoder_f WheelSensorStatus_decode_oer; -oer_type_encoder_f WheelSensorStatus_encode_oer; -per_type_decoder_f WheelSensorStatus_decode_uper; -per_type_encoder_f WheelSensorStatus_encode_uper; -per_type_decoder_f WheelSensorStatus_decode_aper; -per_type_encoder_f WheelSensorStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WheelSensorStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h deleted file mode 100644 index a17962823..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WiperRate_H_ -#define _WiperRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperRate */ -typedef long WiperRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WiperRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WiperRate; -asn_struct_free_f WiperRate_free; -asn_struct_print_f WiperRate_print; -asn_constr_check_f WiperRate_constraint; -ber_type_decoder_f WiperRate_decode_ber; -der_type_encoder_f WiperRate_encode_der; -xer_type_decoder_f WiperRate_decode_xer; -xer_type_encoder_f WiperRate_encode_xer; -oer_type_decoder_f WiperRate_decode_oer; -oer_type_encoder_f WiperRate_encode_oer; -per_type_decoder_f WiperRate_decode_uper; -per_type_encoder_f WiperRate_encode_uper; -per_type_decoder_f WiperRate_decode_aper; -per_type_encoder_f WiperRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h deleted file mode 100644 index 1b0597788..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WiperSet_H_ -#define _WiperSet_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "WiperStatus.h" -#include "WiperRate.h" -#include "constr_SEQUENCE.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* WiperSet */ -typedef struct WiperSet { - WiperStatus_t statusFront; - WiperRate_t rateFront; - WiperStatus_t *statusRear; /* OPTIONAL */ - WiperRate_t *rateRear; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WiperSet_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WiperSet; -extern asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1; -extern asn_TYPE_member_t asn_MBR_WiperSet_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperSet_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h deleted file mode 100644 index 56c90e94d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WiperStatus_H_ -#define _WiperStatus_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WiperStatus { - WiperStatus_unavailable = 0, - WiperStatus_off = 1, - WiperStatus_intermittent = 2, - WiperStatus_low = 3, - WiperStatus_high = 4, - WiperStatus_washerInUse = 5, - WiperStatus_automaticPresent = 6 - /* - * Enumeration is extensible - */ -} e_WiperStatus; - -/* WiperStatus */ -typedef long WiperStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_WiperStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; -extern const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1; -asn_struct_free_f WiperStatus_free; -asn_struct_print_f WiperStatus_print; -asn_constr_check_f WiperStatus_constraint; -ber_type_decoder_f WiperStatus_decode_ber; -der_type_encoder_f WiperStatus_encode_der; -xer_type_decoder_f WiperStatus_decode_xer; -xer_type_encoder_f WiperStatus_encode_xer; -oer_type_decoder_f WiperStatus_decode_oer; -oer_type_encoder_f WiperStatus_encode_oer; -per_type_decoder_f WiperStatus_decode_uper; -per_type_encoder_f WiperStatus_encode_uper; -per_type_decoder_f WiperStatus_decode_aper; -per_type_encoder_f WiperStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _WiperStatus_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h deleted file mode 100644 index 4e35e4236..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _WorkZone_H_ -#define _WorkZone_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "asn_SEQUENCE_OF.h" -#include "ITIScodes.h" -#include "ITIStextPhrase.h" -#include "constr_CHOICE.h" -#include "constr_SEQUENCE.h" -#include "constr_SEQUENCE_OF.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum WorkZone__Member__item_PR { - WorkZone__Member__item_PR_NOTHING, /* No components present */ - WorkZone__Member__item_PR_itis, - WorkZone__Member__item_PR_text -} WorkZone__Member__item_PR; - -/* Forward definitions */ -typedef struct WorkZone__Member { - struct WorkZone__Member__item { - WorkZone__Member__item_PR present; - union WorkZone__Member__item_u { - ITIScodes_t itis; - ITIStextPhrase_t text; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } item; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WorkZone__Member; - -/* WorkZone */ -typedef struct WorkZone { - A_SEQUENCE_OF(WorkZone__Member) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} WorkZone_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_WorkZone; -extern asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1; -extern asn_TYPE_member_t asn_MBR_WorkZone_1[1]; -extern asn_per_constraints_t asn_PER_type_WorkZone_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _WorkZone_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h deleted file mode 100644 index 394867a92..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#ifndef _YawDetected_H_ -#define _YawDetected_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* YawDetected */ -typedef long YawDetected_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_YawDetected_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_YawDetected; -asn_struct_free_f YawDetected_free; -asn_struct_print_f YawDetected_print; -asn_constr_check_f YawDetected_constraint; -ber_type_decoder_f YawDetected_decode_ber; -der_type_encoder_f YawDetected_encode_der; -xer_type_decoder_f YawDetected_decode_xer; -xer_type_encoder_f YawDetected_encode_xer; -oer_type_decoder_f YawDetected_decode_oer; -oer_type_encoder_f YawDetected_encode_oer; -per_type_decoder_f YawDetected_decode_uper; -per_type_encoder_f YawDetected_encode_uper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawDetected_H_ */ -#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h deleted file mode 100644 index 472aef2be..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _YawRate_H_ -#define _YawRate_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* YawRate */ -typedef long YawRate_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_YawRate_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_YawRate; -asn_struct_free_f YawRate_free; -asn_struct_print_f YawRate_print; -asn_constr_check_f YawRate_constraint; -ber_type_decoder_f YawRate_decode_ber; -der_type_encoder_f YawRate_encode_der; -xer_type_decoder_f YawRate_decode_xer; -xer_type_encoder_f YawRate_encode_xer; -oer_type_decoder_f YawRate_decode_oer; -oer_type_encoder_f YawRate_encode_oer; -per_type_decoder_f YawRate_decode_uper; -per_type_encoder_f YawRate_encode_uper; -per_type_decoder_f YawRate_decode_aper; -per_type_encoder_f YawRate_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRate_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h deleted file mode 100644 index 462a090d8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _YawRateConfidence_H_ -#define _YawRateConfidence_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeEnumerated.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum YawRateConfidence { - YawRateConfidence_unavailable = 0, - YawRateConfidence_degSec_100_00 = 1, - YawRateConfidence_degSec_010_00 = 2, - YawRateConfidence_degSec_005_00 = 3, - YawRateConfidence_degSec_001_00 = 4, - YawRateConfidence_degSec_000_10 = 5, - YawRateConfidence_degSec_000_05 = 6, - YawRateConfidence_degSec_000_01 = 7 -} e_YawRateConfidence; - -/* YawRateConfidence */ -typedef long YawRateConfidence_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; -extern const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1; -asn_struct_free_f YawRateConfidence_free; -asn_struct_print_f YawRateConfidence_print; -asn_constr_check_f YawRateConfidence_constraint; -ber_type_decoder_f YawRateConfidence_decode_ber; -der_type_encoder_f YawRateConfidence_encode_der; -xer_type_decoder_f YawRateConfidence_decode_xer; -xer_type_encoder_f YawRateConfidence_encode_xer; -oer_type_decoder_f YawRateConfidence_decode_oer; -oer_type_encoder_f YawRateConfidence_encode_oer; -per_type_decoder_f YawRateConfidence_decode_uper; -per_type_encoder_f YawRateConfidence_encode_uper; -per_type_decoder_f YawRateConfidence_decode_aper; -per_type_encoder_f YawRateConfidence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _YawRateConfidence_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h deleted file mode 100644 index 346110b83..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Year_H_ -#define _Year_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Year */ -typedef long Year_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Year_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Year; -asn_struct_free_f Year_free; -asn_struct_print_f Year_print; -asn_constr_check_f Year_constraint; -ber_type_decoder_f Year_decode_ber; -der_type_encoder_f Year_encode_der; -xer_type_decoder_f Year_decode_xer; -xer_type_encoder_f Year_encode_xer; -oer_type_decoder_f Year_decode_oer; -oer_type_encoder_f Year_encode_oer; -per_type_decoder_f Year_decode_uper; -per_type_encoder_f Year_encode_uper; -per_type_decoder_f Year_decode_aper; -per_type_encoder_f Year_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Year_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h deleted file mode 100644 index 9c942512c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _ZoneLength_H_ -#define _ZoneLength_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* ZoneLength */ -typedef long ZoneLength_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ZoneLength_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; -asn_struct_free_f ZoneLength_free; -asn_struct_print_f ZoneLength_print; -asn_constr_check_f ZoneLength_constraint; -ber_type_decoder_f ZoneLength_decode_ber; -der_type_encoder_f ZoneLength_encode_der; -xer_type_decoder_f ZoneLength_decode_xer; -xer_type_encoder_f ZoneLength_encode_xer; -oer_type_decoder_f ZoneLength_decode_oer; -oer_type_encoder_f ZoneLength_encode_oer; -per_type_decoder_f ZoneLength_decode_uper; -per_type_encoder_f ZoneLength_encode_uper; -per_type_decoder_f ZoneLength_decode_aper; -per_type_encoder_f ZoneLength_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ZoneLength_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h deleted file mode 100644 index 7c9756f67..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#ifndef _Zoom_H_ -#define _Zoom_H_ - - -#include "asn_application.h" - -/* Including external dependencies */ -#include "NativeInteger.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* Zoom */ -typedef long Zoom_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_Zoom_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_Zoom; -asn_struct_free_f Zoom_free; -asn_struct_print_f Zoom_print; -asn_constr_check_f Zoom_constraint; -ber_type_decoder_f Zoom_decode_ber; -der_type_encoder_f Zoom_encode_der; -xer_type_decoder_f Zoom_decode_xer; -xer_type_encoder_f Zoom_encode_xer; -oer_type_decoder_f Zoom_decode_oer; -oer_type_encoder_f Zoom_encode_oer; -per_type_decoder_f Zoom_decode_uper; -per_type_encoder_f Zoom_encode_uper; -per_type_decoder_f Zoom_decode_aper; -per_type_encoder_f Zoom_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Zoom_H_ */ -#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h deleted file mode 100644 index e35bc447a..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h +++ /dev/null @@ -1,52 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SEQUENCE_OF_H -#define ASN_SEQUENCE_OF_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * SEQUENCE OF is the same as SET OF with a tiny difference: - * the delete operation preserves the initial order of elements - * and thus MAY operate in non-constant time. - */ -#define A_SEQUENCE_OF(type) A_SET_OF(type) - -#define ASN_SEQUENCE_ADD(headptr, ptr) \ - asn_sequence_add((headptr), (ptr)) - -/*********************************************** - * Implementation of the SEQUENCE OF structure. - */ - -#define asn_sequence_add asn_set_add -#define asn_sequence_empty asn_set_empty - -/* - * Delete the element from the set by its number (base 0). - * This is NOT a constant-time operation. - * The order of elements is preserved. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; -#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) -#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h deleted file mode 100644 index 882e1a47d..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h +++ /dev/null @@ -1,72 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_SET_OF_H -#define ASN_SET_OF_H - -#ifdef __cplusplus -#define A_SET_OF(type) \ - struct { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(decltype(*array)); \ - } -#else /* C */ -#define A_SET_OF(type) \ - struct { \ - type **array; \ - int count; /* Meaningful size */ \ - int size; /* Allocated size */ \ - void (*free)(type *); \ - } -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#define ASN_SET_ADD(headptr, ptr) \ - asn_set_add((headptr), (ptr)) - -/******************************************* - * Implementation of the SET OF structure. - */ - -/* - * Add another structure into the set by its pointer. - * RETURN VALUES: - * 0 for success and -1/errno for failure. - */ -int asn_set_add(void *asn_set_of_x, void *ptr); - -/* - * Delete the element from the set by its number (base 0). - * This is a constant-time operation. The order of elements before the - * deleted ones is guaranteed, the order of elements after the deleted - * one is NOT guaranteed. - * If _do_free is given AND the (*free) is initialized, the element - * will be freed using the custom (*free) function as well. - */ -void asn_set_del(void *asn_set_of_x, int number, int _do_free); - -/* - * Empty the contents of the set. Will free the elements, if (*free) is given. - * Will NOT free the set itself. - */ -void asn_set_empty(void *asn_set_of_x); - -/* - * Cope with different conversions requirements to/from void in C and C++. - * This is mostly useful for support library. - */ -typedef A_SET_OF(void) asn_anonymous_set_; -#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) -#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h deleted file mode 100644 index 034f64612..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h +++ /dev/null @@ -1,171 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Application-level ASN.1 callbacks. - */ -#ifndef ASN_APPLICATION_H -#define ASN_APPLICATION_H - -#include "asn_system.h" /* for platform-dependent types */ -#include "asn_codecs.h" /* for ASN.1 codecs specifics */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A selection of ASN.1 Transfer Syntaxes to use with generalized - * encoders and decoders declared further in this .h file. - */ -enum asn_transfer_syntax { - /* Avoid appearance of a default transfer syntax. */ - ATS_INVALID = 0, - /* Plaintext output (not conforming to any standard), for debugging. */ - ATS_NONSTANDARD_PLAINTEXT, - /* Returns a randomly generated structure. */ - ATS_RANDOM, - /* - * X.690: - * BER: Basic Encoding Rules. - * DER: Distinguished Encoding Rules. - * CER: Canonical Encoding Rules. - * DER and CER are more strict variants of BER. - */ - ATS_BER, - ATS_DER, - ATS_CER, /* Only decoding is supported */ - /* - * X.696: - * OER: Octet Encoding Rules. - * CANONICAL-OER is a more strict variant of BASIC-OER. - */ - ATS_BASIC_OER, - ATS_CANONICAL_OER, - /* - * X.691: - * PER: Packed Encoding Rules. - * CANONICAL-PER is a more strict variant of BASIC-PER. - * NOTE: Produces or consumes a complete encoding (X.691 (08/2015) #11.1). - */ - ATS_UNALIGNED_BASIC_PER, - ATS_UNALIGNED_CANONICAL_PER, - ATS_ALIGNED_BASIC_PER, - ATS_ALIGNED_CANONICAL_PER, - /* - * X.693: - * XER: XML Encoding Rules. - * CANONICAL-XER is a more strict variant of BASIC-XER. - */ - ATS_BASIC_XER, - ATS_CANONICAL_XER -}; - -/* - * A generic encoder for any supported transfer syntax. - * RETURN VALUES: - * The (.encoded) field of the return value is REDEFINED to mean the following: - * >=0: The computed size of the encoded data. Can exceed the (buffer_size). - * -1: Error encoding the structure. See the error code in (errno): - * EINVAL: Incorrect parameters to the function, such as NULLs. - * ENOENT: Encoding transfer syntax is not defined (for this type). - * EBADF: The structure has invalid form or content constraint failed. - * The (.failed_type) and (.structure_ptr) MIGHT be set to the appropriate - * values at the place of failure, if at all possible. - * WARNING: The (.encoded) field of the return value can exceed the buffer_size. - * This is similar to snprintf(3) contract which might return values - * greater than the buffer size. - */ -asn_enc_rval_t asn_encode_to_buffer( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode, void *buffer, size_t buffer_size); - -/* - * A variant of asn_encode_to_buffer() with automatically allocated buffer. - * RETURN VALUES: - * On success, returns a newly allocated (.buffer) containing the whole message. - * The message size is returned in (.result.encoded). - * On failure: - * (.buffer) is NULL, - * (.result.encoded) as in asn_encode_to_buffer(), - * The errno codes as in asn_encode_to_buffer(), plus the following: - * ENOMEM: Memory allocation failed due to system or internal limits. - * The user is responsible for freeing the (.buffer). - */ -typedef struct asn_encode_to_new_buffer_result_s { - void *buffer; /* NULL if failed to encode. */ - asn_enc_rval_t result; -} asn_encode_to_new_buffer_result_t; -asn_encode_to_new_buffer_result_t asn_encode_to_new_buffer( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode); - - -/* - * Generic type of an application-defined callback to return various - * types of data to the application. - * EXPECTED RETURN VALUES: - * -1: Failed to consume bytes. Abort the mission. - * Non-negative return values indicate success, and ignored. - */ -typedef int(asn_app_consume_bytes_f)(const void *buffer, size_t size, - void *application_specific_key); - - -/* - * A generic encoder for any supported transfer syntax. - * Returns the comprehensive encoding result descriptor (see asn_codecs.h). - * RETURN VALUES: - * The negative (.encoded) field of the return values is accompanied with the - * following error codes (errno): - * EINVAL: Incorrect parameters to the function, such as NULLs. - * ENOENT: Encoding transfer syntax is not defined (for this type). - * EBADF: The structure has invalid form or content constraint failed. - * EIO: The (callback) has returned negative value during encoding. - */ -asn_enc_rval_t asn_encode( - const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ - enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_encode, - const void *structure_to_encode, - asn_app_consume_bytes_f *callback, void *callback_key); - - -/* - * A generic decoder for any supported transfer syntax. - */ -asn_dec_rval_t asn_decode( - const asn_codec_ctx_t *opt_codec_parameters, enum asn_transfer_syntax, - const struct asn_TYPE_descriptor_s *type_to_decode, - void **structure_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ -); - - -/* - * A callback of this type is called whenever constraint validation fails - * on some ASN.1 type. See "constraints.h" for more details on constraint - * validation. - * This callback specifies a descriptor of the ASN.1 type which failed - * the constraint check, as well as human readable message on what - * particular constraint has failed. - */ -typedef void (asn_app_constraint_failed_f)(void *application_specific_key, - const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, - const void *structure_which_failed_ptr, - const char *error_message_format, ...) CC_PRINTFLIKE(4, 5); - - -#ifdef __cplusplus -} -#endif - -#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ - -#endif /* ASN_APPLICATION_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h deleted file mode 100644 index f14714bbd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_BIT_DATA -#define ASN_BIT_DATA - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * This structure describes a position inside an incoming PER bit stream. - */ -typedef struct asn_bit_data_s { - const uint8_t *buffer; /* Pointer to the octet stream */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits in the stream */ - size_t moved; /* Number of bits moved through this bit stream */ - int (*refill)(struct asn_bit_data_s *); - void *refill_key; -} asn_bit_data_t; - -/* - * Create a contiguous non-refillable bit data structure. - * Can be freed by FREEMEM(). - */ -asn_bit_data_t *asn_bit_data_new_contiguous(const void *data, size_t size_bits); - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int32_t asn_get_few_bits(asn_bit_data_t *, int get_nbits); - -/* Undo the immediately preceding "get_few_bits" operation */ -void asn_get_undo(asn_bit_data_t *, int get_nbits); - -/* - * Extract a large number of bits from the specified PER data pointer. - * This function returns -1 if the specified number of bits could not be - * extracted due to EOD or other conditions. - */ -int asn_get_many_bits(asn_bit_data_t *, uint8_t *dst, int right_align, - int get_nbits); - -/* Non-thread-safe debugging function, don't use it */ -char *asn_bit_data_string(asn_bit_data_t *); - -/* - * This structure supports forming bit output. - */ -typedef struct asn_bit_outp_s { - uint8_t *buffer; /* Pointer into the (tmpspace) */ - size_t nboff; /* Bit offset to the meaningful bit */ - size_t nbits; /* Number of bits left in (tmpspace) */ - uint8_t tmpspace[32]; /* Preliminary storage to hold data */ - int (*output)(const void *data, size_t size, void *op_key); - void *op_key; /* Key for (output) data callback */ - size_t flushed_bytes; /* Bytes already flushed through (output) */ -} asn_bit_outp_t; - -/* Output a small number of bits (<= 31) */ -int asn_put_few_bits(asn_bit_outp_t *, uint32_t bits, int obits); - -/* Output a large number of bits */ -int asn_put_many_bits(asn_bit_outp_t *, const uint8_t *src, int put_nbits); - -/* - * Flush whole bytes (0 or more) through (outper) member. - * The least significant bits which are not used are guaranteed to be set to 0. - * Returns -1 if callback returns -1. Otherwise, 0. - */ -int asn_put_aligned_flush(asn_bit_outp_t *); - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_BIT_DATA */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h deleted file mode 100644 index e75c2709c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_CODECS_H -#define ASN_CODECS_H - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * This structure defines a set of parameters that may be passed - * to every ASN.1 encoder or decoder function. - * WARNING: if max_stack_size member is set, and you are calling the - * function pointers of the asn_TYPE_descriptor_t directly, - * this structure must be ALLOCATED ON THE STACK! - * If you can't always satisfy this requirement, use ber_decode(), - * xer_decode() and uper_decode() functions instead. - */ -typedef struct asn_codec_ctx_s { - /* - * Limit the decoder routines to use no (much) more stack than a given - * number of bytes. Most of decoders are stack-based, and this - * would protect against stack overflows if the number of nested - * encodings is high. - * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, - * and are safe from this kind of overflow. - * A value from getrlimit(RLIMIT_STACK) may be used to initialize - * this variable. Be careful in multithreaded environments, as the - * stack size is rather limited. - */ - size_t max_stack_size; /* 0 disables stack bounds checking */ -} asn_codec_ctx_t; - -/* - * Type of the return value of the encoding functions (der_encode, xer_encode). - */ -typedef struct asn_enc_rval_s { - /* - * Number of bytes encoded. - * -1 indicates failure to encode the structure. - * In this case, the members below this one are meaningful. - */ - ssize_t encoded; - - /* - * Members meaningful when (encoded == -1), for post mortem analysis. - */ - - /* Type which cannot be encoded */ - const struct asn_TYPE_descriptor_s *failed_type; - - /* Pointer to the structure of that type */ - const void *structure_ptr; -} asn_enc_rval_t; -#define ASN__ENCODE_FAILED do { \ - asn_enc_rval_t tmp_error; \ - tmp_error.encoded = -1; \ - tmp_error.failed_type = td; \ - tmp_error.structure_ptr = sptr; \ - ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define ASN__ENCODED_OK(rval) do { \ - rval.structure_ptr = 0; \ - rval.failed_type = 0; \ - return rval; \ -} while(0) - -/* - * Type of the return value of the decoding functions (ber_decode, xer_decode) - * - * Please note that the number of consumed bytes is ALWAYS meaningful, - * even if code==RC_FAIL. This is to indicate the number of successfully - * decoded bytes, hence providing a possibility to fail with more diagnostics - * (i.e., print the offending remainder of the buffer). - */ -enum asn_dec_rval_code_e { - RC_OK, /* Decoded successfully */ - RC_WMORE, /* More data expected, call again */ - RC_FAIL /* Failure to decode data */ -}; -typedef struct asn_dec_rval_s { - enum asn_dec_rval_code_e code; /* Result code */ - size_t consumed; /* Number of bytes consumed */ -} asn_dec_rval_t; -#define ASN__DECODE_FAILED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_FAIL; \ - tmp_error.consumed = 0; \ - ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ - return tmp_error; \ -} while(0) -#define ASN__DECODE_STARVED do { \ - asn_dec_rval_t tmp_error; \ - tmp_error.code = RC_WMORE; \ - tmp_error.consumed = 0; \ - return tmp_error; \ -} while(0) - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_CODECS_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h deleted file mode 100644 index fbc557648..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h +++ /dev/null @@ -1,51 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_CODECS_PRIM_H -#define ASN_CODECS_PRIM_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ASN__PRIMITIVE_TYPE_s { - uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ - size_t size; /* Size of the buffer */ -} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ - -asn_struct_free_f ASN__PRIMITIVE_TYPE_free; -ber_type_decoder_f ber_decode_primitive; -der_type_encoder_f der_encode_primitive; - -/* - * A callback specification for the xer_decode_primitive() function below. - */ -enum xer_pbd_rval { - XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ - XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ - XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ - XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ - XPBD_BODY_CONSUMED /* Body is recognized and consumed */ -}; -typedef enum xer_pbd_rval(xer_primitive_body_decoder_f)( - const asn_TYPE_descriptor_t *td, void *struct_ptr, const void *chunk_buf, - size_t chunk_size); - -/* - * Specific function to decode simple primitive types. - * Also see xer_decode_general() in xer_decoder.h - */ -asn_dec_rval_t xer_decode_primitive( - const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - size_t struct_size, const char *opt_mname, const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder); - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h deleted file mode 100644 index 77b270c35..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Declarations internally useful for the ASN.1 support code. - */ -#ifndef ASN_INTERNAL_H -#define ASN_INTERNAL_H -#ifndef __EXTENSIONS__ -#define __EXTENSIONS__ /* for Sun */ -#endif - -#include "asn_application.h" /* Application-visible API */ - -#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ -#include /* for assert() macro */ -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* Environment version might be used to avoid running with the old library */ -#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ -int get_asn1c_environment_version(void); /* Run-time version */ - -#define CALLOC(nmemb, size) calloc(nmemb, size) -#define MALLOC(size) malloc(size) -#define REALLOC(oldptr, size) realloc(oldptr, size) -#define FREEMEM(ptr) free(ptr) - -#define asn_debug_indent 0 -#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) - -#ifdef EMIT_ASN_DEBUG -#warning "Use ASN_EMIT_DEBUG instead of EMIT_ASN_DEBUG" -#define ASN_EMIT_DEBUG EMIT_ASN_DEBUG -#endif - -/* - * A macro for debugging the ASN.1 internals. - * You may enable or override it. - */ -#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ -#if ASN_EMIT_DEBUG == 1 /* And it was asked to emit this code... */ -#if __STDC_VERSION__ >= 199901L -#ifdef ASN_THREAD_SAFE -/* Thread safety requires sacrifice in output indentation: - * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ -#else /* !ASN_THREAD_SAFE */ -#undef ASN_DEBUG_INDENT_ADD -#undef asn_debug_indent -int asn_debug_indent; -#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) -#endif /* ASN_THREAD_SAFE */ -#define ASN_DEBUG(fmt, args...) do { \ - int adi = asn_debug_indent; \ - while(adi--) fprintf(stderr, " "); \ - fprintf(stderr, fmt, ##args); \ - fprintf(stderr, " (%s:%d)\n", \ - __FILE__, __LINE__); \ - } while(0) -#else /* !C99 */ -void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); -#define ASN_DEBUG ASN_DEBUG_f -#endif /* C99 */ -#else /* ASN_EMIT_DEBUG != 1 */ -#if __STDC_VERSION__ >= 199901L -#define ASN_DEBUG(...) do{}while(0) -#else /* not C99 */ -static void CC_PRINTFLIKE(1, 2) ASN_DEBUG(const char *fmt, ...) { (void)fmt; } -#endif /* C99 or better */ -#endif /* ASN_EMIT_DEBUG */ -#endif /* ASN_DEBUG */ - -/* - * Print to a callback. - * The callback is expected to return negative values on error. - * 0 and positive values are treated as success. - * RETURN VALUES: - * -1: Failed to format or invoke the callback. - * >0: Size of the data that got delivered to the callback. - */ -ssize_t CC_PRINTFLIKE(3, 4) -asn__format_to_callback( - int (*callback)(const void *, size_t, void *key), void *key, - const char *fmt, ...); - -/* - * Invoke the application-supplied callback and fail, if something is wrong. - */ -#define ASN__E_cbc(buf, size) (cb((buf), (size), app_key) < 0) -#define ASN__E_CALLBACK(size, foo) \ - do { \ - if(foo) goto cb_failed; \ - er.encoded += (size); \ - } while(0) -#define ASN__CALLBACK(buf, size) ASN__E_CALLBACK(size, ASN__E_cbc(buf, size)) -#define ASN__CALLBACK2(buf1, size1, buf2, size2) \ - ASN__E_CALLBACK((size1) + (size2), \ - ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2)) -#define ASN__CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ - ASN__E_CALLBACK((size1) + (size2) + (size3), \ - ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2) \ - || ASN__E_cbc(buf3, size3)) - -#define ASN__TEXT_INDENT(nl, level) \ - do { \ - int tmp_level = (level); \ - int tmp_nl = ((nl) != 0); \ - int tmp_i; \ - if(tmp_nl) ASN__CALLBACK("\n", 1); \ - if(tmp_level < 0) tmp_level = 0; \ - for(tmp_i = 0; tmp_i < tmp_level; tmp_i++) ASN__CALLBACK(" ", 4); \ - } while(0) - -#define _i_INDENT(nl) do { \ - int tmp_i; \ - if((nl) && cb("\n", 1, app_key) < 0) \ - return -1; \ - for(tmp_i = 0; tmp_i < ilevel; tmp_i++) \ - if(cb(" ", 4, app_key) < 0) \ - return -1; \ - } while(0) - -/* - * Check stack against overflow, if limit is set. - */ -#define ASN__DEFAULT_STACK_MAX (30000) -static int CC_NOTUSED -ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { - if(ctx && ctx->max_stack_size) { - - /* ctx MUST be allocated on the stack */ - ptrdiff_t usedstack = ((const char *)ctx - (const char *)&ctx); - if(usedstack > 0) usedstack = -usedstack; /* grows up! */ - - /* double negative required to avoid int wrap-around */ - if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { - ASN_DEBUG("Stack limit %ld reached", - (long)ctx->max_stack_size); - return -1; - } - } - return 0; -} - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_INTERNAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h deleted file mode 100644 index 7de210ee0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Run-time support for Information Object Classes. - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_IOC_H -#define ASN_IOC_H - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; -struct asn_ioc_cell_s; - -/* - * X.681, #13 - */ -typedef struct asn_ioc_set_s { - size_t rows_count; - size_t columns_count; - const struct asn_ioc_cell_s *rows; -} asn_ioc_set_t; - - -typedef struct asn_ioc_cell_s { - const char *field_name; /* Is equal to corresponding column_name */ - enum { - aioc__undefined = 0, - aioc__value, - aioc__type, - aioc__open_type, - } cell_kind; - struct asn_TYPE_descriptor_s *type_descriptor; - const void *value_sptr; - struct { - size_t types_count; - struct { - unsigned choice_position; - } *types; - } open_type; -} asn_ioc_cell_t; - - -#ifdef __cplusplus -} -#endif - -#endif /* ASN_IOC_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h deleted file mode 100644 index 47f9b8af0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_RANDOM_FILL -#define ASN_RANDOM_FILL - -/* Forward declarations */ -struct asn_TYPE_descriptor_s; -struct asn_encoding_constraints_s; - -/* - * Initialize a structure with random data according to the type specification - * and optional member constraints. - * ARGUMENTS: - * (max_length) - See (approx_max_length_limit). - * (memb_constraints) - Member constraints, if exist. - * The type can be constrained differently according - * to PER and OER specifications, so we find a value - * at the intersection of these constraints. - * In case the return differs from ARFILL_OK, the (struct_ptr) contents - * and (current_length) value remain in their original state. - */ -typedef struct asn_random_fill_result_s { - enum { - ARFILL_FAILED = -1, /* System error (memory?) */ - ARFILL_OK = 0, /* Initialization succeeded */ - ARFILL_SKIPPED = 1 /* Not done due to (length?) constraint */ - } code; - size_t length; /* Approximate number of bytes created. */ -} asn_random_fill_result_t; -typedef asn_random_fill_result_t(asn_random_fill_f)( - const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - const struct asn_encoding_constraints_s *memb_constraints, - size_t max_length); - -/* - * Returns 0 if the structure was properly initialized, -1 otherwise. - * The (approx_max_length_limit) specifies the approximate limit of the - * resulting structure in units closely resembling bytes. The actual result - * might be several times larger or smaller than the length limit. - */ -int asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - size_t approx_max_length_limit); - -/* - * Returns a random number between min and max. - */ -intmax_t asn_random_between(intmax_t min, intmax_t max); - -#endif /* ASN_RANDOM_FILL */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h deleted file mode 100644 index fa8cf1165..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Miscellaneous system-dependent types. - */ -#ifndef ASN_SYSTEM_H -#define ASN_SYSTEM_H - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#ifndef _DEFAULT_SOURCE -#define _DEFAULT_SOURCE 1 -#endif - -#ifndef _BSD_SOURCE -#define _BSD_SOURCE /* for snprintf() on some linux systems */ -#endif - -#include /* For snprintf(3) */ -#include /* For *alloc(3) */ -#include /* For memcpy(3) */ -#include /* For size_t */ -#include /* For LONG_MAX */ -#include /* For va_start */ -#include /* for offsetof and ptrdiff_t */ - -#ifdef _WIN32 - -#include -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ -#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ - | (((l) << 8) & 0xff0000) \ - | (((l) >> 8) & 0xff00) \ - | ((l >> 24) & 0xff)) - -#ifdef _MSC_VER /* MSVS.Net */ -#ifndef __cplusplus -#define inline __inline -#endif -#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ -#define ssize_t SSIZE_T -#if _MSC_VER < 1600 -typedef char int8_t; -typedef short int16_t; -typedef int int32_t; -typedef unsigned char uint8_t; -typedef unsigned short uint16_t; -typedef unsigned int uint32_t; -#else /* _MSC_VER >= 1600 */ -#include -#endif /* _MSC_VER < 1600 */ -#endif /* ASSUMESTDTYPES */ -#define WIN32_LEAN_AND_MEAN -#include -#include -#define isnan _isnan -#define finite _finite -#define copysign _copysign -#define ilogb _logb -#else /* !_MSC_VER */ -#include -#endif /* _MSC_VER */ - -#else /* !_WIN32 */ - -#if defined(__vxworks) -#include -#else /* !defined(__vxworks) */ - -#include /* C99 specifies this file */ -#include /* for ntohl() */ -#define sys_ntohl(foo) ntohl(foo) -#endif /* defined(__vxworks) */ - -#endif /* _WIN32 */ - -#if __GNUC__ >= 3 || defined(__clang__) -#define CC_ATTRIBUTE(attr) __attribute__((attr)) -#else -#define CC_ATTRIBUTE(attr) -#endif -#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(printf, fmt, var)) -#define CC_NOTUSED CC_ATTRIBUTE(unused) -#ifndef CC_ATTR_NO_SANITIZE -#define CC_ATTR_NO_SANITIZE(what) CC_ATTRIBUTE(no_sanitize(what)) -#endif - -/* Figure out if thread safety is requested */ -#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) -#define ASN_THREAD_SAFE -#endif /* Thread safety */ - -#ifndef offsetof /* If not defined by */ -#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) -#endif /* offsetof */ - -#ifndef MIN /* Suitable for comparing primitive types (integers) */ -#if defined(__GNUC__) -#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ - ((_a)<(_b)?(_a):(_b)); }) -#else /* !__GNUC__ */ -#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ -#endif /* __GNUC__ */ -#endif /* MIN */ - -#if __STDC_VERSION__ >= 199901L -#ifndef SIZE_MAX -#define SIZE_MAX ((~((size_t)0)) >> 1) -#endif - -#ifndef RSIZE_MAX /* C11, Annex K */ -#define RSIZE_MAX (SIZE_MAX >> 1) -#endif -#ifndef RSSIZE_MAX /* Halve signed size even further than unsigned */ -#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) -#endif -#else /* Old compiler */ -#undef SIZE_MAX -#undef RSIZE_MAX -#undef RSSIZE_MAX -#define SIZE_MAX ((~((size_t)0)) >> 1) -#define RSIZE_MAX (SIZE_MAX >> 1) -#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) -#endif - -#if __STDC_VERSION__ >= 199901L -#define ASN_PRI_SIZE "zu" -#define ASN_PRI_SSIZE "zd" -#define ASN_PRIuMAX PRIuMAX -#define ASN_PRIdMAX PRIdMAX -#else -#define ASN_PRI_SIZE "lu" -#define ASN_PRI_SSIZE "ld" -#if LLONG_MAX > LONG_MAX -#define ASN_PRIuMAX "llu" -#define ASN_PRIdMAX "lld" -#else -#define ASN_PRIuMAX "lu" -#define ASN_PRIdMAX "ld" -#endif -#endif - -#endif /* ASN_SYSTEM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h deleted file mode 100644 index 1ac2a5ef0..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h +++ /dev/null @@ -1,66 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_DECODER_H_ -#define _BER_DECODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_codec_ctx_s; /* Forward declaration */ - -/* - * The BER decoder of any type. - * This function may be invoked directly from the application. - * Decodes BER, DER and CER data (DER and CER are different subsets of BER). - * - * NOTE: Use the der_encode() function (der_encoder.h) to produce encoding - * which is compliant with ber_decode(). - */ -asn_dec_rval_t ber_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ -); - -/* - * Type of generic function which decodes the byte stream into the structure. - */ -typedef asn_dec_rval_t(ber_type_decoder_f)( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, - const void *buf_ptr, size_t size, int tag_mode); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Check that all tags correspond to the type definition (as given in head). - * On return, last_length would contain either a non-negative length of the - * value part of the last TLV, or the negative number of expected - * "end of content" sequences. The number may only be negative if the - * head->last_tag_form is non-zero. - */ -asn_dec_rval_t ber_check_tags( - const struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ - const struct asn_TYPE_descriptor_s *type_descriptor, - asn_struct_ctx_t *opt_ctx, /* saved decoding context */ - const void *ptr, size_t size, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {-1,0:1}: any, primitive, constr */ - ber_tlv_len_t *last_length, int *opt_tlv_form /* optional tag form */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h deleted file mode 100644 index d1e4d48dd..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h +++ /dev/null @@ -1,50 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_LENGTH_H_ -#define _BER_TLV_LENGTH_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef ssize_t ber_tlv_len_t; - -/* - * This function tries to fetch the length of the BER TLV value and place it - * in *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - * On return with >0, len_r is constrained as -1..MAX, where -1 mean - * that the value is of indefinite length. - */ -ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r); - -/* - * This function expects bufptr to be positioned over L in TLV. - * It returns number of bytes occupied by L and V together, suitable - * for skipping. The function properly handles indefinite length. - * RETURN VALUES: - * Standard {-1,0,>0} convention. - */ -ssize_t ber_skip_length( - const struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ - int _is_constructed, const void *bufptr, size_t size); - -/* - * This function serializes the length (L from TLV) in DER format. - * It always returns number of bytes necessary to represent the length, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h deleted file mode 100644 index ce227add6..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _BER_TLV_TAG_H_ -#define _BER_TLV_TAG_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -enum asn_tag_class { - ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ - ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ - ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ - ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ -}; -typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ - -/* - * Tag class is encoded together with tag value for optimization purposes. - */ -#define BER_TAG_CLASS(tag) ((tag) & 0x3) -#define BER_TAG_VALUE(tag) ((tag) >> 2) -#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) - -#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) - -/* - * Several functions for printing the TAG in the canonical form - * (i.e. "[PRIVATE 0]"). - * Return values correspond to their libc counterparts (if any). - */ -ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); -ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); -char *ber_tlv_tag_string(ber_tlv_tag_t tag); - - -/* - * This function tries to fetch the tag from the input stream. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering tag. - * >0: Number of bytes used from bufptr. tag_r will contain the tag. - */ -ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); - -/* - * This function serializes the tag (T from TLV) in BER format. - * It always returns number of bytes necessary to represent the tag, - * it is a caller's responsibility to check the return value - * against the supplied buffer's size. - */ -size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); - -#ifdef __cplusplus -} -#endif - -#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h deleted file mode 100644 index a1999edc4..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_CHOICE_H_ -#define _CONSTR_CHOICE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_CHOICE_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_codec_ctx_t member */ - unsigned pres_offset; /* Identifier of the present member */ - unsigned pres_size; /* Size of the identifier (enum) */ - - /* - * Tags to members mapping table. - */ - const asn_TYPE_tag2member_t *tag2el; - unsigned tag2el_count; - - /* Canonical ordering of CHOICE elements, for PER */ - const unsigned *to_canonical_order; - const unsigned *from_canonical_order; - - /* - * Extensions-related stuff. - */ - signed ext_start; /* First member of extensions, or -1 */ -} asn_CHOICE_specifics_t; - -/* - * A set specialized functions dealing with the CHOICE type. - */ -asn_struct_free_f CHOICE_free; -asn_struct_print_f CHOICE_print; -asn_struct_compare_f CHOICE_compare; -asn_constr_check_f CHOICE_constraint; -ber_type_decoder_f CHOICE_decode_ber; -der_type_encoder_f CHOICE_encode_der; -xer_type_decoder_f CHOICE_decode_xer; -xer_type_encoder_f CHOICE_encode_xer; -oer_type_decoder_f CHOICE_decode_oer; -oer_type_encoder_f CHOICE_encode_oer; -per_type_decoder_f CHOICE_decode_uper; -per_type_encoder_f CHOICE_encode_uper; -per_type_decoder_f CHOICE_decode_aper; -per_type_encoder_f CHOICE_encode_aper; -asn_outmost_tag_f CHOICE_outmost_tag; -asn_random_fill_f CHOICE_random_fill; -extern asn_TYPE_operation_t asn_OP_CHOICE; - -/* - * Return the 1-based choice variant presence index. - * Returns 0 in case of error. - */ -unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, - const void *structure_ptr); - -/* - * Sets or resets the 1-based choice variant presence index. - * In case a previous index is not zero, the currently selected structure - * member is freed and zeroed-out first. - * Returns 0 on success and -1 on error. - */ -int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, - void *structure_ptr, unsigned present); - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h deleted file mode 100644 index a22ed3a27..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h +++ /dev/null @@ -1,68 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_H_ -#define _CONSTR_SEQUENCE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SEQUENCE_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* - * Tags to members mapping table (sorted). - */ - const asn_TYPE_tag2member_t *tag2el; - unsigned tag2el_count; - - /* - * Optional members of the extensions root (roms) or additions (aoms). - * Meaningful for PER. - */ - const int *oms; /* Optional MemberS */ - unsigned roms_count; /* Root optional members count */ - unsigned aoms_count; /* Additions optional members count */ - - /* - * Description of an extensions group. - * Root components are clustered at the beginning of the structure, - * whereas extensions are clustered at the end. -1 means not extensible. - */ - signed first_extension; /* First extension addition */ -} asn_SEQUENCE_specifics_t; - - -/* - * A set specialized functions dealing with the SEQUENCE type. - */ -asn_struct_free_f SEQUENCE_free; -asn_struct_print_f SEQUENCE_print; -asn_struct_compare_f SEQUENCE_compare; -asn_constr_check_f SEQUENCE_constraint; -ber_type_decoder_f SEQUENCE_decode_ber; -der_type_encoder_f SEQUENCE_encode_der; -xer_type_decoder_f SEQUENCE_decode_xer; -xer_type_encoder_f SEQUENCE_encode_xer; -oer_type_decoder_f SEQUENCE_decode_oer; -oer_type_encoder_f SEQUENCE_encode_oer; -per_type_decoder_f SEQUENCE_decode_uper; -per_type_encoder_f SEQUENCE_encode_uper; -per_type_decoder_f SEQUENCE_decode_aper; -per_type_encoder_f SEQUENCE_encode_aper; -asn_random_fill_f SEQUENCE_random_fill; -extern asn_TYPE_operation_t asn_OP_SEQUENCE; - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h deleted file mode 100644 index 6857f0f0c..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h +++ /dev/null @@ -1,41 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SEQUENCE_OF_H_ -#define _CONSTR_SEQUENCE_OF_H_ - -#include -#include /* Implemented using SET OF */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * A set specialized functions dealing with the SEQUENCE OF type. - * Generally implemented using SET OF. - */ -asn_struct_compare_f SEQUENCE_OF_compare; -der_type_encoder_f SEQUENCE_OF_encode_der; -xer_type_encoder_f SEQUENCE_OF_encode_xer; -per_type_encoder_f SEQUENCE_OF_encode_uper; -per_type_encoder_f SEQUENCE_OF_encode_aper; -extern asn_TYPE_operation_t asn_OP_SEQUENCE_OF; - -#define SEQUENCE_OF_free SET_OF_free -#define SEQUENCE_OF_print SET_OF_print -#define SEQUENCE_OF_constraint SET_OF_constraint -#define SEQUENCE_OF_decode_ber SET_OF_decode_ber -#define SEQUENCE_OF_decode_xer SET_OF_decode_xer -#define SEQUENCE_OF_decode_oer SET_OF_decode_oer -#define SEQUENCE_OF_encode_oer SET_OF_encode_oer -#define SEQUENCE_OF_decode_uper SET_OF_decode_uper -#define SEQUENCE_OF_decode_aper SET_OF_decode_aper -#define SEQUENCE_OF_random_fill SET_OF_random_fill - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h deleted file mode 100644 index eb61b5a39..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h +++ /dev/null @@ -1,86 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _CONSTR_SET_H_ -#define _CONSTR_SET_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - - -typedef const struct asn_SET_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - unsigned pres_offset; /* Offset of _presence_map member */ - - /* - * Tags to members mapping table (sorted). - * Sometimes suitable for DER encoding (untagged CHOICE is present); - * if so, tag2el_count will be greater than td->elements_count. - */ - const asn_TYPE_tag2member_t *tag2el; - unsigned tag2el_count; - - /* - * Tags to members mapping table, second edition. - * Suitable for CANONICAL-XER encoding. - */ - const asn_TYPE_tag2member_t *tag2el_cxer; - unsigned tag2el_cxer_count; - - /* - * Extensions-related stuff. - */ - int extensible; /* Whether SET is extensible */ - const unsigned int *_mandatory_elements; /* Bitmask of mandatory ones */ -} asn_SET_specifics_t; - -/* - * A set specialized functions dealing with the SET type. - */ -asn_struct_free_f SET_free; -asn_struct_print_f SET_print; -asn_struct_compare_f SET_compare; -asn_constr_check_f SET_constraint; -ber_type_decoder_f SET_decode_ber; -der_type_encoder_f SET_encode_der; -xer_type_decoder_f SET_decode_xer; -xer_type_encoder_f SET_encode_xer; -per_type_decoder_f SET_decode_uper; -per_type_encoder_f SET_encode_uper; -extern asn_TYPE_operation_t asn_OP_SET; - -/*********************** - * Some handy helpers. * - ***********************/ - -/* - * Figure out whether the SET member indicated by PR_x has already been decoded. - * It is very simple bitfield test, despite its visual complexity. - */ -#define ASN_SET_ISPRESENT(set_ptr, PR_x) \ - ASN_SET_ISPRESENT2(&((set_ptr)->_presence_map), PR_x) -#define ASN_SET_ISPRESENT2(map_ptr, PR_x) \ - (((unsigned int *)(map_ptr)) \ - [(PR_x) / (8 * sizeof(unsigned int))] \ - & (1 << ((8 * sizeof(unsigned int)) - 1 \ - - ((PR_x) % (8 * sizeof(unsigned int)))))) - -#define ASN_SET_MKPRESENT(map_ptr, PR_x) \ - (((unsigned int *)(map_ptr)) \ - [(PR_x) / (8 * sizeof(unsigned int))] \ - |= (1 << ((8 * sizeof(unsigned int)) - 1 \ - - ((PR_x) % (8 * sizeof(unsigned int)))))) - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_SET_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h deleted file mode 100644 index 768106271..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h +++ /dev/null @@ -1,49 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef CONSTR_SET_OF_H -#define CONSTR_SET_OF_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct asn_SET_OF_specifics_s { - /* - * Target structure description. - */ - unsigned struct_size; /* Size of the target structure. */ - unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ - - /* XER-specific stuff */ - int as_XMLValueList; /* The member type must be encoded like this */ -} asn_SET_OF_specifics_t; - -/* - * A set specialized functions dealing with the SET OF type. - */ -asn_struct_free_f SET_OF_free; -asn_struct_print_f SET_OF_print; -asn_struct_compare_f SET_OF_compare; -asn_constr_check_f SET_OF_constraint; -ber_type_decoder_f SET_OF_decode_ber; -der_type_encoder_f SET_OF_encode_der; -xer_type_decoder_f SET_OF_decode_xer; -xer_type_encoder_f SET_OF_encode_xer; -oer_type_decoder_f SET_OF_decode_oer; -oer_type_encoder_f SET_OF_encode_oer; -per_type_decoder_f SET_OF_decode_uper; -per_type_encoder_f SET_OF_encode_uper; -per_type_decoder_f SET_OF_decode_aper; -per_type_encoder_f SET_OF_encode_aper; -asn_random_fill_f SET_OF_random_fill; -extern asn_TYPE_operation_t asn_OP_SET_OF; - -#ifdef __cplusplus -} -#endif - -#endif /* CONSTR_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h deleted file mode 100644 index 567a75cbe..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * This file contains the declaration structure called "ASN.1 Type Definition", - * which holds all information necessary for encoding and decoding routines. - * This structure even contains pointer to these encoding and decoding routines - * for each defined ASN.1 type. - */ -#ifndef _CONSTR_TYPE_H_ -#define _CONSTR_TYPE_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_TYPE_member_s; /* Forward declaration */ - -/* - * This type provides the context information for various ASN.1 routines, - * primarily ones doing decoding. A member _asn_ctx of this type must be - * included into certain target language's structures, such as compound types. - */ -typedef struct asn_struct_ctx_s { - short phase; /* Decoding phase */ - short step; /* Elementary step of a phase */ - int context; /* Other context information */ - void *ptr; /* Decoder-specific stuff (stack elements) */ - ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ -} asn_struct_ctx_t; - -#include /* Basic Encoding Rules decoder */ -#include /* Distinguished Encoding Rules encoder */ -#include /* Decoder of XER (XML, text) */ -#include /* Encoder into XER (XML, text) */ -#include /* Packet Encoding Rules decoder */ -#include /* Packet Encoding Rules encoder */ -#include /* Subtype constraints support */ -#include /* Random structures support */ - -#ifdef ASN_DISABLE_OER_SUPPORT -typedef void (oer_type_decoder_f)(void); -typedef void (oer_type_encoder_f)(void); -typedef void asn_oer_constraints_t; -#else -#include /* Octet Encoding Rules encoder */ -#include /* Octet Encoding Rules encoder */ -#endif - -/* - * Free the structure according to its specification. - * Use one of ASN_STRUCT_{FREE,RESET,CONTENTS_ONLY} macros instead. - * Do not use directly. - */ -enum asn_struct_free_method { - ASFM_FREE_EVERYTHING, /* free(struct_ptr) and underlying members */ - ASFM_FREE_UNDERLYING, /* free underlying members */ - ASFM_FREE_UNDERLYING_AND_RESET /* FREE_UNDERLYING + memset(0) */ -}; -typedef void (asn_struct_free_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - void *struct_ptr, enum asn_struct_free_method); - -/* - * Free the structure including freeing the memory pointed to by ptr itself. - */ -#define ASN_STRUCT_FREE(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_EVERYTHING) - -/* - * Free the memory used by the members of the structure without freeing the - * the structure pointer itself. - * ZERO-OUT the structure to the safe clean state. - * (Retaining the pointer may be useful in case the structure is allocated - * statically or arranged on the stack, yet its elements are dynamic.) - */ -#define ASN_STRUCT_RESET(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING_AND_RESET) - -/* - * Free memory used by the members of the structure without freeing - * the structure pointer itself. - * (Retaining the pointer may be useful in case the structure is allocated - * statically or arranged on the stack, yet its elements are dynamic.) - * AVOID using it in the application code; - * Use a safer ASN_STRUCT_RESET() instead. - */ -#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ - (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING) - -/* - * Print the structure according to its specification. - */ -typedef int(asn_struct_print_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, - int level, /* Indentation level */ - asn_app_consume_bytes_f *callback, void *app_key); - -/* - * Compare two structs between each other. - * Returns <0 if struct_A is "smaller" than struct_B, >0 if "greater", - * and =0 if "equal to", for some type-specific, stable definition of - * "smaller", "greater" and "equal to". - */ -typedef int (asn_struct_compare_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_A, - const void *struct_B); - -/* - * Return the outmost tag of the type. - * If the type is untagged CHOICE, the dynamic operation is performed. - * NOTE: This function pointer type is only useful internally. - * Do not use it in your application. - */ -typedef ber_tlv_tag_t (asn_outmost_tag_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); -/* The instance of the above function type; used internally. */ -asn_outmost_tag_f asn_TYPE_outmost_tag; - -/* - * Fetch the desired type of the Open Type based on the - * Information Object Set driven constraints. - */ -typedef struct asn_type_selector_result_s { - const struct asn_TYPE_descriptor_s *type_descriptor; /* Type encoded. */ - unsigned presence_index; /* Associated choice variant. */ -} asn_type_selector_result_t; -typedef asn_type_selector_result_t(asn_type_selector_f)( - const struct asn_TYPE_descriptor_s *parent_type_descriptor, - const void *parent_structure_ptr); - -/* - * Generalized functions for dealing with the speciic type. - * May be directly invoked by applications. - */ -typedef struct asn_TYPE_operation_s { - asn_struct_free_f *free_struct; /* Free the structure */ - asn_struct_print_f *print_struct; /* Human readable output */ - asn_struct_compare_f *compare_struct; /* Compare two structures */ - ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ - der_type_encoder_f *der_encoder; /* Canonical DER encoder */ - xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ - xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ - oer_type_decoder_f *oer_decoder; /* Generic OER decoder */ - oer_type_encoder_f *oer_encoder; /* Canonical OER encoder */ - per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ - per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ - per_type_decoder_f *aper_decoder; /* Aligned PER decoder */ - per_type_encoder_f *aper_encoder; /* Aligned PER encoder */ - asn_random_fill_f *random_fill; /* Initialize with a random value */ - asn_outmost_tag_f *outmost_tag; /* */ -} asn_TYPE_operation_t; - -/* - * A constraints tuple specifying both the OER and PER constraints. - */ -typedef struct asn_encoding_constraints_s { - const struct asn_oer_constraints_s *oer_constraints; - const struct asn_per_constraints_s *per_constraints; - asn_constr_check_f *general_constraints; -} asn_encoding_constraints_t; - -/* - * The definitive description of the destination language's structure. - */ -typedef struct asn_TYPE_descriptor_s { - const char *name; /* A name of the ASN.1 type. "" in some cases. */ - const char *xml_tag; /* Name used in XML tag */ - - /* - * Generalized functions for dealing with the specific type. - * May be directly invoked by applications. - */ - asn_TYPE_operation_t *op; - - /*********************************************************************** - * Internally useful members. Not to be used by applications directly. * - **********************************************************************/ - - /* - * Tags that are expected to occur. - */ - const ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ - unsigned tags_count; /* Number of tags which are expected */ - const ber_tlv_tag_t *all_tags; /* Every tag for BER/containment */ - unsigned all_tags_count; /* Number of tags */ - - /* OER, PER, and general constraints */ - asn_encoding_constraints_t encoding_constraints; - - /* - * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). - */ - struct asn_TYPE_member_s *elements; - unsigned elements_count; - - /* - * Additional information describing the type, used by appropriate - * functions above. - */ - const void *specifics; -} asn_TYPE_descriptor_t; - -/* - * This type describes an element of the constructed type, - * i.e. SEQUENCE, SET, CHOICE, etc. - */ - enum asn_TYPE_flags_e { - ATF_NOFLAGS, - ATF_POINTER = 0x01, /* Represented by the pointer */ - ATF_OPEN_TYPE = 0x02, /* Open Type */ - ATF_ANY_TYPE = 0x04 /* ANY type (deprecated!) */ - }; -typedef struct asn_TYPE_member_s { - enum asn_TYPE_flags_e flags; /* Element's presentation flags */ - unsigned optional; /* Following optional members, including current */ - unsigned memb_offset; /* Offset of the element */ - ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ - int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ - asn_TYPE_descriptor_t *type; /* Member type descriptor */ - asn_type_selector_f *type_selector; /* IoS runtime type selector */ - asn_encoding_constraints_t encoding_constraints; - int (*default_value_cmp)(const void *sptr); /* Compare DEFAULT */ - int (*default_value_set)(void **sptr); /* Set DEFAULT */ - const char *name; /* ASN.1 identifier of the element */ -} asn_TYPE_member_t; - -/* - * BER tag to element number mapping. - */ -typedef struct asn_TYPE_tag2member_s { - ber_tlv_tag_t el_tag; /* Outmost tag of the member */ - unsigned el_no; /* Index of the associated member, base 0 */ - int toff_first; /* First occurrence of the el_tag, relative */ - int toff_last; /* Last occurrence of the el_tag, relative */ -} asn_TYPE_tag2member_t; - -/* - * This function prints out the contents of the target language's structure - * (struct_ptr) into the file pointer (stream) in human readable form. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem dumping the structure. - * (See also xer_fprint() in xer_encoder.h) - */ -int asn_fprint(FILE *stream, /* Destination stream descriptor */ - const asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ - const void *struct_ptr); /* Structure to be printed */ - -#ifdef __cplusplus -} -#endif - -#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h deleted file mode 100644 index 0bd86a96b..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h +++ /dev/null @@ -1,62 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN1_CONSTRAINTS_VALIDATOR_H -#define ASN1_CONSTRAINTS_VALIDATOR_H - -#include /* Platform-dependent types */ - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Validate the structure according to the ASN.1 constraints. - * If errbuf and errlen are given, they shall be pointing to the appropriate - * buffer space and its length before calling this function. Alternatively, - * they could be passed as NULL's. If constraints validation fails, - * errlen will contain the actual number of bytes taken from the errbuf - * to encode an error message (properly 0-terminated). - * - * RETURN VALUES: - * This function returns 0 in case all ASN.1 constraints are met - * and -1 if one or more constraints were failed. - */ -int asn_check_constraints( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Target language's structure */ - char *errbuf, /* Returned error description */ - size_t *errlen /* Length of the error description */ -); - - -/* - * Generic type for constraint checking callback, - * associated with every type descriptor. - */ -typedef int(asn_constr_check_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct_ptr, - asn_app_constraint_failed_f *optional_callback, /* Log the error */ - void *optional_app_key /* Opaque key passed to a callback */ -); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ -asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ - -/* - * Invoke the callback with a complete error message. - */ -#define ASN__CTFAIL if(ctfailcb) ctfailcb - -#ifdef __cplusplus -} -#endif - -#endif /* ASN1_CONSTRAINTS_VALIDATOR_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h deleted file mode 100644 index e93944edc..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h +++ /dev/null @@ -1,68 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _DER_ENCODER_H_ -#define _DER_ENCODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The DER encoder of any type. May be invoked by the application. - * Produces DER- and BER-compliant encoding. (DER is a subset of BER). - * - * NOTE: Use the ber_decode() function (ber_decoder.h) to decode data - * produced by der_encode(). - */ -asn_enc_rval_t der_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* A variant of der_encode() which encodes data into the pre-allocated buffer */ -asn_enc_rval_t der_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -); - -/* - * Type of the generic DER encoder. - */ -typedef asn_enc_rval_t(der_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - ber_tlv_tag_t tag, asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t der_write_tags(const struct asn_TYPE_descriptor_s *type_descriptor, - size_t struct_length, - int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ - int last_tag_form, /* {0,!0}: prim, constructed */ - ber_tlv_tag_t tag, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key); - -#ifdef __cplusplus -} -#endif - -#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h deleted file mode 100644 index 40992e948..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_DECODER_H -#define OER_DECODER_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ -struct asn_codec_ctx_s; /* Forward declaration */ - -/* - * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type. - * This function may be invoked directly by the application. - * Parses CANONICAL-OER and BASIC-OER. - */ -asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of that buffer */ - ); - -/* - * Type of generic function which decodes the byte stream into the structure. - */ -typedef asn_dec_rval_t(oer_type_decoder_f)( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - void **struct_ptr, - const void *buf_ptr, - size_t size); - -/* - * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null. - * RETURN VALUES: - * -1: Fatal error deciphering length. - * 0: More data expected than bufptr contains. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_open_type_skip(const void *bufptr, size_t size); - -/* - * Read the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, - void **struct_ptr, const void *bufptr, size_t size); - -/* - * Length-prefixed buffer decoding for primitive types. - */ -oer_type_decoder_f oer_decode_primitive; - - -#ifdef __cplusplus -} -#endif - -#endif /* OER_DECODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h deleted file mode 100644 index 6a7b68125..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_ENCODER_H -#define OER_ENCODER_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type. - * This function may be invoked directly by the application. - * Produces CANONICAL-OER output compatible with CANONICAL-OER - * and BASIC-OER decoders. - */ -asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* A variant of oer_encode() which encodes data into the pre-allocated buffer */ -asn_enc_rval_t oer_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -); - -/* - * Type of the generic OER encoder. - */ -typedef asn_enc_rval_t(oer_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * Write out the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * -1: Fatal error encoding the type. - * >0: Number of bytes serialized. - */ -ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key); - - -/* - * Length-prefixed buffer encoding for primitive types. - */ -oer_type_encoder_f oer_encode_primitive; - -#ifdef __cplusplus -} -#endif - -#endif /* OER_ENCODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h deleted file mode 100644 index dbc9b5fcf..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef OER_SUPPORT_H -#define OER_SUPPORT_H - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Pre-computed OER constraints. - */ -typedef struct asn_oer_constraint_number_s { - unsigned width; /* ±8,4,2,1 fixed bytes */ - unsigned positive; /* 1 for unsigned number, 0 for signed */ -} asn_oer_constraint_number_t; -typedef struct asn_oer_constraints_s { - asn_oer_constraint_number_t value; - ssize_t size; /* -1 (no constraint) or >= 0 */ -} asn_oer_constraints_t; - - -/* - * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r); - -/* - * Serialize OER length. Returns the number of bytes serialized - * or -1 if a given callback returned with negative result. - */ -ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key); - - -#ifdef __cplusplus -} -#endif - -#endif /* OER_SUPPORT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h deleted file mode 100644 index eea474a9e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h +++ /dev/null @@ -1,82 +0,0 @@ -/*- - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_DECODER_H_ -#define _PER_DECODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER decoder of a "complete encoding" as per X.691 (08/2015) #11.1. - * On success, this call always returns (.consumed >= 1), as per #11.1.3. - */ -asn_dec_rval_t uper_decode_complete( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ -); - -/* - * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. - * WARNING: This call returns the number of BITS read from the stream. Beware. - */ -asn_dec_rval_t uper_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size, /* Size of the input data buffer, in bytes */ - int skip_bits, /* Number of unused leading bits, 0..7 */ - int unused_bits /* Number of unused tailing bits, 0..7 */ -); - -/* - * Aligned PER decoder of a "complete encoding" as per X.691#10.1. - * On success, this call always returns (.consumed >= 1), in BITS, as per X.691#10.1.3. - */ -asn_dec_rval_t aper_decode_complete( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ - ); - -/* - * Aligned PER decoder of any ASN.1 type. May be invoked by the application. - * WARNING: This call returns the number of BITS read from the stream. Beware. - */ -asn_dec_rval_t aper_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size, /* Size of data buffer */ - int skip_bits, /* Number of unused leading bits, 0..7 */ - int unused_bits /* Number of unused tailing bits, 0..7 */ - ); - -/* - * Type of the type-specific PER decoder function. - */ -typedef asn_dec_rval_t(per_type_decoder_f)( - const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, void **struct_ptr, - asn_per_data_t *per_data); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h deleted file mode 100644 index b615ef028..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h +++ /dev/null @@ -1,93 +0,0 @@ -/*- - * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_ENCODER_H_ -#define _PER_ENCODER_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. Use the following formula to convert to bytes: - * bytes = ((.encoded + 7) / 8) - */ -asn_enc_rval_t uper_encode( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ - void *app_key /* Arbitrary callback argument */ -); - -asn_enc_rval_t aper_encode( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ - void *app_key /* Arbitrary callback argument */ -); - -/* - * A variant of uper_encode() which encodes data into the existing buffer - * WARNING: This function returns the number of encoded bits in the .encoded - * field of the return value. - */ -asn_enc_rval_t uper_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (max) */ -); - -asn_enc_rval_t aper_encode_to_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (max) */ -); -/* - * A variant of uper_encode_to_buffer() which allocates buffer itself. - * Returns the number of bytes in the buffer or -1 in case of failure. - * WARNING: This function produces a "Production of the complete encoding", - * with length of at least one octet. Contrast this to precise bit-packing - * encoding of uper_encode() and uper_encode_to_buffer(). - */ -ssize_t uper_encode_to_new_buffer( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void **buffer_r /* Buffer allocated and returned */ -); - -ssize_t -aper_encode_to_new_buffer( - const struct asn_TYPE_descriptor_s *td, - const asn_per_constraints_t *constraints, - const void *sptr, - void **buffer_r -); - -/* - * Type of the generic PER encoder function. - */ -typedef asn_enc_rval_t(per_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const asn_per_constraints_t *constraints, const void *struct_ptr, - asn_per_outp_t *per_output); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h deleted file mode 100644 index 1493b2d8e..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_OPENTYPE_H_ -#define _PER_OPENTYPE_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -asn_dec_rval_t uper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - -int uper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, - asn_per_data_t *pd); - -/* - * X.691 (2015/08), #11.2 - * Returns -1 if error is encountered. 0 if all OK. - */ -int uper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po); - -asn_dec_rval_t aper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - - -int aper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); - -int aper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h deleted file mode 100644 index d13f50415..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _PER_SUPPORT_H_ -#define _PER_SUPPORT_H_ - -#include /* Platform-specific types */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Pre-computed PER constraints. - */ -typedef struct asn_per_constraint_s { - enum asn_per_constraint_flags { - APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ - APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ - APC_CONSTRAINED = 0x2, /* Fully constrained */ - APC_EXTENSIBLE = 0x4 /* May have extension */ - } flags; - int range_bits; /* Full number of bits in the range */ - int effective_bits; /* Effective bits */ - intmax_t lower_bound; /* "lb" value */ - intmax_t upper_bound; /* "ub" value */ -} asn_per_constraint_t; -typedef struct asn_per_constraints_s { - asn_per_constraint_t value; - asn_per_constraint_t size; - int (*value2code)(unsigned int value); - int (*code2value)(unsigned int code); -} asn_per_constraints_t; - -/* Temporary compatibility layer. Will get removed. */ -typedef struct asn_bit_data_s asn_per_data_t; -#define per_get_few_bits(data, bits) asn_get_few_bits(data, bits) -#define per_get_undo(data, bits) asn_get_undo(data, bits) -#define per_get_many_bits(data, dst, align, bits) \ - asn_get_many_bits(data, dst, align, bits) - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Get the length "n" from the Unaligned PER stream. - */ -ssize_t uper_get_length(asn_per_data_t *pd, int effective_bound_bits, - size_t lower_bound, int *repeat); - -ssize_t aper_get_length(asn_per_data_t *pd, int range, - int effective_bound_bits, int *repeat); - -/* - * Get the normally small length "n". - */ -ssize_t uper_get_nslength(asn_per_data_t *pd); -ssize_t aper_get_nslength(asn_per_data_t *pd); - -/* - * Get the normally small non-negative whole number. - */ -ssize_t uper_get_nsnnwn(asn_per_data_t *pd); -ssize_t aper_get_nsnnwn(asn_per_data_t *pd, int range); - -/* X.691-2008/11, #11.5.6 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *v, int nbits); - - -/* Temporary compatibility layer. Will get removed. */ -typedef struct asn_bit_outp_s asn_per_outp_t; -#define per_put_few_bits(out, bits, obits) asn_put_few_bits(out, bits, obits) -#define per_put_many_bits(out, src, nbits) asn_put_many_bits(out, src, nbits) -#define per_put_aligned_flush(out) asn_put_aligned_flush(out) - - -/* - * Rebase the given value as an offset into the range specified by the - * lower bound (lb) and upper bound (ub). - * RETURN VALUES: - * -1: Conversion failed due to range problems. - * 0: Conversion was successful. - */ -int per_long_range_rebase(long, intmax_t lb, intmax_t ub, unsigned long *output); -int per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output); -/* The inverse operation: restores the value by the offset and its bounds. */ -int per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp); -int per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp); - -/* X.691-2008/11, #11.5 */ -int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits); - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Put the length "whole_length" to the Unaligned PER stream. - * If (opt_need_eom) is given, it will be set to 1 if final 0-length is needed. - * In that case, invoke uper_put_length(po, 0, 0) after encoding the last block. - * This function returns the number of units which may be flushed - * in the next units saving iteration. - */ -ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length, - int *opt_need_eom); - -ssize_t aper_put_length(asn_per_outp_t *po, int range, size_t length, - int *opt_need_eom); - -/* Align the current bit position to octet bundary */ -int aper_put_align(asn_per_outp_t *po); -int32_t aper_get_align(asn_per_data_t *pd); - -/* - * Put the normally small length "n" to the Unaligned PER stream. - * Returns 0 or -1. - */ -int uper_put_nslength(asn_per_outp_t *po, size_t length); - -int aper_put_nslength(asn_per_outp_t *po, size_t length); - -/* - * Put the normally small non-negative whole number. - */ -int uper_put_nsnnwn(asn_per_outp_t *po, int n); - -int aper_put_nsnnwn(asn_per_outp_t *po, int range, int number); - -#ifdef __cplusplus -} -#endif - -#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h deleted file mode 100644 index f9d6fc209..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * version.h - * - * Created on: Aug 29, 2014 - * Author: ivp - */ - -#ifndef VERSION_H_ -#define VERSION_H_ - -#define TMXASN_VERSION "3.1.0" -#define TMXASN_SPEC "2016" - -#endif /* VERSION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h deleted file mode 100644 index b951c41d1..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h +++ /dev/null @@ -1,106 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_DECODER_H_ -#define _XER_DECODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* - * The XER decoder of any ASN.1 type. May be invoked by the application. - * Decodes CANONICAL-XER and BASIC-XER. - */ -asn_dec_rval_t xer_decode( - const struct asn_codec_ctx_s *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, - void **struct_ptr, /* Pointer to a target structure's pointer */ - const void *buffer, /* Data to be decoded */ - size_t size /* Size of data buffer */ -); - -/* - * Type of the type-specific XER decoder function. - */ -typedef asn_dec_rval_t(xer_type_decoder_f)( - const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, - const char *opt_mname, /* Member name */ - const void *buf_ptr, size_t size); - -/******************************* - * INTERNALLY USEFUL FUNCTIONS * - *******************************/ - -/* - * Generalized function for decoding the primitive values. - * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 - * and others. This function should not be used by applications, as its API - * is subject to changes. - */ -asn_dec_rval_t xer_decode_general( - const asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, /* Treated as opaque pointer */ - const char *xml_tag, /* Expected XML tag name */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder)(void *struct_key, const void *chunk_buf, - size_t chunk_size), - ssize_t (*body_receiver)(void *struct_key, const void *chunk_buf, - size_t chunk_size, int have_more)); - - -/* - * Fetch the next XER (XML) token from the stream. - * The function returns the number of bytes occupied by the chunk type, - * returned in the _ch_type. The _ch_type is only set (and valid) when - * the return value is >= 0. - */ - typedef enum pxer_chunk_type { - PXER_WMORE, /* Chunk type is not clear, more data expected. */ - PXER_TAG, /* Complete XER tag */ - PXER_TEXT, /* Plain text between XER tags */ - PXER_COMMENT /* A comment, may be part of */ - } pxer_chunk_type_e; -ssize_t xer_next_token(int *stateContext, - const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); - -/* - * This function checks the buffer against the tag name is expected to occur. - */ - typedef enum xer_check_tag { - XCT_BROKEN = 0, /* The tag is broken */ - XCT_OPENING = 1, /* This is the tag */ - XCT_CLOSING = 2, /* This is the tag */ - XCT_BOTH = 3, /* This is the tag */ - XCT__UNK__MASK = 4, /* Mask of everything unexpected */ - XCT_UNKNOWN_OP = 5, /* Unexpected tag */ - XCT_UNKNOWN_CL = 6, /* Unexpected tag */ - XCT_UNKNOWN_BO = 7 /* Unexpected tag */ - } xer_check_tag_e; -xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, - const char *need_tag); - -/* - * Get the number of bytes consisting entirely of XER whitespace characters. - * RETURN VALUES: - * >=0: Number of whitespace characters in the string. - */ -size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); - -/* - * Skip the series of anticipated extensions. - */ -int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h deleted file mode 100644 index 6cfc505fa..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h +++ /dev/null @@ -1,83 +0,0 @@ -/*- - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_ENCODER_H_ -#define _XER_ENCODER_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ -enum xer_encoder_flags_e { - /* Mode of encoding */ - XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ - XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ -}; - -/* - * The XER encoder of any type. May be invoked by the application. - * Produces CANONICAL-XER and BASIC-XER depending on the (xer_flags). - */ -asn_enc_rval_t xer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, - void *app_key /* Arbitrary callback argument */ -); - -/* - * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) - * output into the chosen file pointer. - * RETURN VALUES: - * 0: The structure is printed. - * -1: Problem printing the structure. - * WARNING: No sensible errno value is returned. - */ -int xer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, - const void *struct_ptr); - -/* - * A helper function that uses XER encoding/decoding to verify that: - * - Both structures encode into the same BASIC XER. - * - Both resulting XER byte streams can be decoded back. - * - Both decoded structures encode into the same BASIC XER (round-trip). - * All of this verifies equivalence between structures and a round-trip. - * ARGUMENTS: - * (opt_debug_stream) - If specified, prints ongoing details. - */ -enum xer_equivalence_e { - XEQ_SUCCESS, /* The only completely positive return value */ - XEQ_FAILURE, /* General failure */ - XEQ_ENCODE1_FAILED, /* First structure XER encoding failed */ - XEQ_ENCODE2_FAILED, /* Second structure XER encoding failed */ - XEQ_DIFFERENT, /* Structures encoded into different XER */ - XEQ_DECODE_FAILED, /* Decode of the XER data failed */ - XEQ_ROUND_TRIP_FAILED /* Bad round-trip */ -}; -enum xer_equivalence_e xer_equivalent( - const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, - const void *struct2, FILE *opt_debug_stream); - -/* - * Type of the generic XER encoder. - */ -typedef asn_enc_rval_t(xer_type_encoder_f)( - const struct asn_TYPE_descriptor_s *type_descriptor, - const void *struct_ptr, /* Structure to be encoded */ - int ilevel, /* Level of indentation */ - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ - void *app_key /* Arbitrary callback argument */ -); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h deleted file mode 100644 index 2c3f369b8..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef _XER_SUPPORT_H_ -#define _XER_SUPPORT_H_ - -#include /* Platform-specific types */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Types of data transferred to the application. - */ -typedef enum { - PXML_TEXT, /* Plain text between XML tags. */ - PXML_TAG, /* A tag, starting with '<'. */ - PXML_COMMENT, /* An XML comment, including "". */ - /* - * The following chunk types are reported if the chunk - * terminates the specified XML element. - */ - PXML_TAG_END, /* Tag ended */ - PXML_COMMENT_END /* Comment ended */ -} pxml_chunk_type_e; - -/* - * Callback function that is called by the parser when parsed data is - * available. The _opaque is the pointer to a field containing opaque user - * data specified in pxml_create() call. The chunk type is _type and the text - * data is the piece of buffer identified by _bufid (as supplied to - * pxml_feed() call) starting at offset _offset and of _size bytes size. - * The chunk is NOT '\0'-terminated. - */ -typedef int (pxml_callback_f)(pxml_chunk_type_e _type, - const void *_chunk_data, size_t _chunk_size, void *_key); - -/* - * Parse the given buffer as it were a chunk of XML data. - * Invoke the specified callback each time the meaningful data is found. - * This function returns number of bytes consumed from the buffer. - * It will always be lesser than or equal to the specified _size. - * The next invocation of this function must account the difference. - */ -ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, - pxml_callback_f *cb, void *_key); - -#ifdef __cplusplus -} -#endif - -#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/src/2020/ANY.c b/src/tmx/Asn_J2735/src/2020/ANY.c deleted file mode 100644 index bf988dbda..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs = { - sizeof(ANY_t), - offsetof(ANY_t, _asn_ctx), - ASN_OSUBV_ANY -}; -asn_TYPE_operation_t asn_OP_ANY = { - OCTET_STRING_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OCTET_STRING_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, - OCTET_STRING_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_hex, - ANY_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - ANY_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, - 0, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - ANY_decode_uper, - ANY_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - ANY_decode_aper, - ANY_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - 0, /* Random fill is not defined for ANY type */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_ANY = { - "ANY", - "ANY", - &asn_OP_ANY, - 0, 0, 0, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, /* No constraints */ - 0, 0, /* No members */ - &asn_SPC_ANY_specs, -}; diff --git a/src/tmx/Asn_J2735/src/2020/ANY_aper.c b/src/tmx/Asn_J2735/src/2020/ANY_aper.c deleted file mode 100644 index 91d727769..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY_aper.c +++ /dev/null @@ -1,190 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -int -ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { - uint8_t *buffer = NULL; - ssize_t erval; - - if(!st || !td) { - errno = EINVAL; - return -1; - } - - if(!sptr) { - if(st->buf) FREEMEM(st->buf); - st->size = 0; - return 0; - } - - erval = aper_encode_to_new_buffer(td, td->encoding_constraints.per_constraints, sptr, (void**)&buffer); - - if(erval == -1) { - if(buffer) FREEMEM(buffer); - return -1; - } - assert((size_t)erval > 0); - - if(st->buf) FREEMEM(st->buf); - st->buf = buffer; - st->size = erval; - - return 0; -} - -ANY_t * -ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr) { - ANY_t tmp; - ANY_t *st; - - if(!td || !sptr) { - errno = EINVAL; - return 0; - } - - memset(&tmp, 0, sizeof(tmp)); - - if(ANY_fromType_aper(&tmp, td, sptr)) return 0; - - st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); - if(st) { - *st = tmp; - return st; - } else { - FREEMEM(tmp.buf); - return 0; - } -} - -int -ANY_to_type_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { - asn_dec_rval_t rval; - void *newst = 0; - - if(!st || !td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - if(st->buf == 0) { - /* Nothing to convert, make it empty. */ - *struct_ptr = (void *)0; - return 0; - } - - rval = aper_decode(0, td, (void **)&newst, st->buf, st->size, 0, 0); - if(rval.code == RC_OK) { - *struct_ptr = newst; - return 0; - } else { - /* Remove possibly partially decoded data. */ - ASN_STRUCT_FREE(*td, newst); - return -1; - } -} - -asn_dec_rval_t -ANY_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_ANY_specs; - size_t consumed_myself = 0; - int repeat; - ANY_t *st = (ANY_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - - /* - * Allocate the structure. - */ - if(!st) { - st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("APER Decoding ANY type"); - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = aper_get_length(pd, -1, -1, 0, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len; - len_bits = len_bytes * 8; - - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += len_bits; - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - RETURN(RC_OK); -} - -asn_enc_rval_t -ANY_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const ANY_t *st = (const ANY_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - const uint8_t *buf; - size_t size; - int ret; - - (void)constraints; - - if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; - - buf = st->buf; - size = st->size; - do { - int need_eom = 0; - ssize_t may_save = aper_put_length(po, -1, -1, size, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ret = per_put_many_bits(po, buf, may_save * 8); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save; - size -= may_save; - assert(!(may_save & 0x07) || !size); - if(need_eom && aper_put_length(po, -1, -1, 0, NULL)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size); - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_ber.c b/src/tmx/Asn_J2735/src/2020/ANY_ber.c deleted file mode 100644 index 2ebe45bd7..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY_ber.c +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -struct _callback_arg { - uint8_t *buffer; - size_t offset; - size_t size; -}; - -static int ANY__consume_bytes(const void *buffer, size_t size, void *key) { - struct _callback_arg *arg = (struct _callback_arg *)key; - - if((arg->offset + size) >= arg->size) { - size_t nsize = (arg->size ? arg->size << 2 : 16) + size; - void *p = REALLOC(arg->buffer, nsize); - if(!p) return -1; - arg->buffer = (uint8_t *)p; - arg->size = nsize; - } - - memcpy(arg->buffer + arg->offset, buffer, size); - arg->offset += size; - assert(arg->offset < arg->size); - - return 0; -} - -int -ANY_fromType(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { - struct _callback_arg arg; - asn_enc_rval_t erval = {0,0,0}; - - if(!st || !td) { - errno = EINVAL; - return -1; - } - - if(!sptr) { - if(st->buf) FREEMEM(st->buf); - st->size = 0; - return 0; - } - - arg.offset = arg.size = 0; - arg.buffer = 0; - - erval = der_encode(td, sptr, ANY__consume_bytes, &arg); - if(erval.encoded == -1) { - if(arg.buffer) FREEMEM(arg.buffer); - return -1; - } - assert((size_t)erval.encoded == arg.offset); - - if(st->buf) FREEMEM(st->buf); - st->buf = arg.buffer; - st->size = arg.offset; - - return 0; -} - -ANY_t * -ANY_new_fromType(asn_TYPE_descriptor_t *td, void *sptr) { - ANY_t tmp; - ANY_t *st; - - if(!td || !sptr) { - errno = EINVAL; - return 0; - } - - memset(&tmp, 0, sizeof(tmp)); - - if(ANY_fromType(&tmp, td, sptr)) return 0; - - st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); - if(st) { - *st = tmp; - return st; - } else { - FREEMEM(tmp.buf); - return 0; - } -} - -int -ANY_to_type(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { - asn_dec_rval_t rval; - void *newst = 0; - - if(!st || !td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - if(st->buf == 0) { - /* Nothing to convert, make it empty. */ - *struct_ptr = (void *)0; - return 0; - } - - rval = ber_decode(0, td, (void **)&newst, st->buf, st->size); - if(rval.code == RC_OK) { - *struct_ptr = newst; - return 0; - } else { - /* Remove possibly partially decoded data. */ - ASN_STRUCT_FREE(*td, newst); - return -1; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_jer.c b/src/tmx/Asn_J2735/src/2020/ANY_jer.c deleted file mode 100644 index a86db9c73..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY_jer.c +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -ANY_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - ASN__ENCODE_FAILED; - - /* Dump as binary */ - return OCTET_STRING_encode_jer(td, sptr, ilevel, flags, cb, app_key); -} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_uper.c b/src/tmx/Asn_J2735/src/2020/ANY_uper.c deleted file mode 100644 index 65f1519bb..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY_uper.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -asn_dec_rval_t -ANY_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_ANY_specs; - size_t consumed_myself = 0; - int repeat; - ANY_t *st = (ANY_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - - /* - * Allocate the structure. - */ - if(!st) { - st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("UPER Decoding ANY type"); - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, -1, 0, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len; - len_bits = len_bytes * 8; - - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += len_bits; - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - RETURN(RC_OK); -} - -asn_enc_rval_t -ANY_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const ANY_t *st = (const ANY_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - const uint8_t *buf; - size_t size; - int ret; - - (void)constraints; - - if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; - - buf = st->buf; - size = st->size; - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ret = per_put_many_bits(po, buf, may_save * 8); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save; - size -= may_save; - assert(!(may_save & 0x07) || !size); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size); - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/ANY_xer.c b/src/tmx/Asn_J2735/src/2020/ANY_xer.c deleted file mode 100644 index 112c21328..000000000 --- a/src/tmx/Asn_J2735/src/2020/ANY_xer.c +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -ANY_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - if(flags & XER_F_CANONICAL) { - /* - * Canonical XER-encoding of ANY type is not supported. - */ - ASN__ENCODE_FAILED; - } - - /* Dump as binary */ - return OCTET_STRING_encode_xer(td, sptr, ilevel, flags, cb, app_key); -} diff --git a/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c deleted file mode 100644 index 69b76148d..000000000 --- a/src/tmx/Asn_J2735/src/2020/AccelSteerYawRateConfidence.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AccelSteerYawRateConfidence.h" - -asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "yawRate" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "acceleration" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "steeringWheelAngle" - }, -}; -static const ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { - sizeof(struct AccelSteerYawRateConfidence), - offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), - asn_MAP_AccelSteerYawRateConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { - "AccelSteerYawRateConfidence", - "AccelSteerYawRateConfidence", - &asn_OP_SEQUENCE, - asn_DEF_AccelSteerYawRateConfidence_tags_1, - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AccelSteerYawRateConfidence_1, - 3, /* Elements count */ - &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Acceleration.c b/src/tmx/Asn_J2735/src/2020/Acceleration.c deleted file mode 100644 index 4e8c53b8c..000000000 --- a/src/tmx/Asn_J2735/src/2020/Acceleration.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Acceleration.h" - -int -Acceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2000L && value <= 2001L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Acceleration_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2000..2001) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Acceleration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Acceleration = { - "Acceleration", - "Acceleration", - &asn_OP_NativeInteger, - asn_DEF_Acceleration_tags_1, - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - asn_DEF_Acceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Acceleration_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Acceleration_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Acceleration_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c deleted file mode 100644 index 44927873c..000000000 --- a/src/tmx/Asn_J2735/src/2020/AccelerationConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AccelerationConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "accl-100-00" }, - { 2, 11, "accl-010-00" }, - { 3, 11, "accl-005-00" }, - { 4, 11, "accl-001-00" }, - { 5, 11, "accl-000-10" }, - { 6, 11, "accl-000-05" }, - { 7, 11, "accl-000-01" } -}; -static const unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { - 7, /* accl-000-01(7) */ - 6, /* accl-000-05(6) */ - 5, /* accl-000-10(5) */ - 4, /* accl-001-00(4) */ - 3, /* accl-005-00(3) */ - 2, /* accl-010-00(2) */ - 1, /* accl-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { - asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { - "AccelerationConfidence", - "AccelerationConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_AccelerationConfidence_tags_1, - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AccelerationConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AccelerationConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c deleted file mode 100644 index ccf109f19..000000000 --- a/src/tmx/Asn_J2735/src/2020/AccelerationSet4Way.c +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AccelerationSet4Way.h" - -asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, Long), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Acceleration, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Acceleration, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, vert), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAcceleration, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vert" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, yaw), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "yaw" - }, -}; -static const ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AccelerationSet4Way_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vert */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* yaw */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1 = { - sizeof(struct AccelerationSet4Way), - offsetof(struct AccelerationSet4Way, _asn_ctx), - asn_MAP_AccelerationSet4Way_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { - "AccelerationSet4Way", - "AccelerationSet4Way", - &asn_OP_SEQUENCE, - asn_DEF_AccelerationSet4Way_tags_1, - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AccelerationSet4Way_1, - 4, /* Elements count */ - &asn_SPC_AccelerationSet4Way_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c deleted file mode 100644 index 188389be9..000000000 --- a/src/tmx/Asn_J2735/src/2020/AddGrpB_Angle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AddGrpB_Angle.h" - -int -AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 239L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..239) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { - "Angle", - "Angle", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_Angle_tags_1, - sizeof(asn_DEF_AddGrpB_Angle_tags_1) - /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_Angle_tags_1) - /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_Angle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c deleted file mode 100644 index 390ada0e0..000000000 --- a/src/tmx/Asn_J2735/src/2020/AddGrpB_Elevation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AddGrpB_Elevation.h" - -int -AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { - "Elevation", - "Elevation", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_Elevation_tags_1, - sizeof(asn_DEF_AddGrpB_Elevation_tags_1) - /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_Elevation_tags_1) - /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_Elevation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c deleted file mode 100644 index ad3b26c85..000000000 --- a/src/tmx/Asn_J2735/src/2020/AddGrpB_MsgCount.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AddGrpB_MsgCount.h" - -int -AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { - "MsgCount", - "MsgCount", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_MsgCount_tags_1, - sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) - /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) - /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_MsgCount_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c deleted file mode 100644 index e2c534c04..000000000 --- a/src/tmx/Asn_J2735/src/2020/AddGrpB_TimeMark.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AddGrpB_TimeMark.h" - -static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Year, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Month, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Day, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, summerTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SummerTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "summerTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, holiday), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Holiday, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "holiday" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DayOfWeek, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dayofWeek" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, hour), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Hour, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, minute), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Minute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, second), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Second, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, tenthSecond), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TenthSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "tenthSecond" - }, -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AddGrpB_TimeMark_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_AddGrpB_TimeMark_specs_1 = { - sizeof(struct AddGrpB_TimeMark), - offsetof(struct AddGrpB_TimeMark, _asn_ctx), - asn_MAP_AddGrpB_TimeMark_tag2el_1, - 10, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { - "TimeMark", - "TimeMark", - &asn_OP_SEQUENCE, - asn_DEF_AddGrpB_TimeMark_tags_1, - sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) - /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) - /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AddGrpB_TimeMark_1, - 10, /* Elements count */ - &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c deleted file mode 100644 index 75105fe42..000000000 --- a/src/tmx/Asn_J2735/src/2020/AdvisorySpeed.c +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AdvisorySpeed.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_AdvisorySpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct AdvisorySpeed__regional), - offsetof(struct AdvisorySpeed__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "type" - }, - { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedAdvice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "distance" - }, - { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "class" - }, - { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { - sizeof(struct AdvisorySpeed), - offsetof(struct AdvisorySpeed, _asn_ctx), - asn_MAP_AdvisorySpeed_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { - "AdvisorySpeed", - "AdvisorySpeed", - &asn_OP_SEQUENCE, - asn_DEF_AdvisorySpeed_tags_1, - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AdvisorySpeed_1, - 6, /* Elements count */ - &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c deleted file mode 100644 index b9977a459..000000000 --- a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AdvisorySpeedList.h" - -#include "AdvisorySpeed.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_AdvisorySpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { - sizeof(struct AdvisorySpeedList), - offsetof(struct AdvisorySpeedList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { - "AdvisorySpeedList", - "AdvisorySpeedList", - &asn_OP_SEQUENCE_OF, - asn_DEF_AdvisorySpeedList_tags_1, - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AdvisorySpeedList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AdvisorySpeedList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_AdvisorySpeedList_1, - 1, /* Single element */ - &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c deleted file mode 100644 index e8abc092a..000000000 --- a/src/tmx/Asn_J2735/src/2020/AdvisorySpeedType.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AdvisorySpeedType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "greenwave" }, - { 2, 8, "ecoDrive" }, - { 3, 7, "transit" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { - 2, /* ecoDrive(2) */ - 1, /* greenwave(1) */ - 0, /* none(0) */ - 3 /* transit(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { - asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { - "AdvisorySpeedType", - "AdvisorySpeedType", - &asn_OP_NativeEnumerated, - asn_DEF_AdvisorySpeedType_tags_1, - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AdvisorySpeedType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AdvisorySpeedType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c deleted file mode 100644 index 5b743709c..000000000 --- a/src/tmx/Asn_J2735/src/2020/AllowedManeuvers.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AllowedManeuvers.h" - -int -AllowedManeuvers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 12UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { - { 0, 0 }, - 12 /* (SIZE(12..12)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { - "AllowedManeuvers", - "AllowedManeuvers", - &asn_OP_BIT_STRING, - asn_DEF_AllowedManeuvers_tags_1, - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AllowedManeuvers_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AllowedManeuvers_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AllowedManeuvers_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Altitude.c b/src/tmx/Asn_J2735/src/2020/Altitude.c deleted file mode 100644 index 9b35698b6..000000000 --- a/src/tmx/Asn_J2735/src/2020/Altitude.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Altitude.h" - -asn_TYPE_member_t asn_MBR_Altitude_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeValue, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "value" - }, - { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { - sizeof(struct Altitude), - offsetof(struct Altitude, _asn_ctx), - asn_MAP_Altitude_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Altitude = { - "Altitude", - "Altitude", - &asn_OP_SEQUENCE, - asn_DEF_Altitude_tags_1, - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - asn_DEF_Altitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Altitude_1, - 2, /* Elements count */ - &asn_SPC_Altitude_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c deleted file mode 100644 index 0c8dc297e..000000000 --- a/src/tmx/Asn_J2735/src/2020/AltitudeConfidence.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AltitudeConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { - { 0, 10, "alt-000-01" }, - { 1, 10, "alt-000-02" }, - { 2, 10, "alt-000-05" }, - { 3, 10, "alt-000-10" }, - { 4, 10, "alt-000-20" }, - { 5, 10, "alt-000-50" }, - { 6, 10, "alt-001-00" }, - { 7, 10, "alt-002-00" }, - { 8, 10, "alt-005-00" }, - { 9, 10, "alt-010-00" }, - { 10, 10, "alt-020-00" }, - { 11, 10, "alt-050-00" }, - { 12, 10, "alt-100-00" }, - { 13, 10, "alt-200-00" }, - { 14, 10, "outOfRange" }, - { 15, 11, "unavailable" } -}; -static const unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { - 0, /* alt-000-01(0) */ - 1, /* alt-000-02(1) */ - 2, /* alt-000-05(2) */ - 3, /* alt-000-10(3) */ - 4, /* alt-000-20(4) */ - 5, /* alt-000-50(5) */ - 6, /* alt-001-00(6) */ - 7, /* alt-002-00(7) */ - 8, /* alt-005-00(8) */ - 9, /* alt-010-00(9) */ - 10, /* alt-020-00(10) */ - 11, /* alt-050-00(11) */ - 12, /* alt-100-00(12) */ - 13, /* alt-200-00(13) */ - 14, /* outOfRange(14) */ - 15 /* unavailable(15) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { - asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { - "AltitudeConfidence", - "AltitudeConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_AltitudeConfidence_tags_1, - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AltitudeConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AltitudeConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AltitudeValue.c b/src/tmx/Asn_J2735/src/2020/AltitudeValue.c deleted file mode 100644 index 657dbc0f5..000000000 --- a/src/tmx/Asn_J2735/src/2020/AltitudeValue.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AltitudeValue.h" - -int -AltitudeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -100000L && value <= 800001L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AltitudeValue_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-100000..800001) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { - "AltitudeValue", - "AltitudeValue", - &asn_OP_NativeInteger, - asn_DEF_AltitudeValue_tags_1, - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - asn_DEF_AltitudeValue_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AltitudeValue_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AltitudeValue_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AltitudeValue_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c deleted file mode 100644 index 45270b50b..000000000 --- a/src/tmx/Asn_J2735/src/2020/AmbientAirPressure.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AmbientAirPressure.h" - -int -AmbientAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { - "AmbientAirPressure", - "AmbientAirPressure", - &asn_OP_NativeInteger, - asn_DEF_AmbientAirPressure_tags_1, - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AmbientAirPressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AmbientAirPressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AmbientAirPressure_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c deleted file mode 100644 index 9b6cad33b..000000000 --- a/src/tmx/Asn_J2735/src/2020/AmbientAirTemperature.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AmbientAirTemperature.h" - -int -AmbientAirTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 191L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..191) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { - "AmbientAirTemperature", - "AmbientAirTemperature", - &asn_OP_NativeInteger, - asn_DEF_AmbientAirTemperature_tags_1, - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AmbientAirTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AmbientAirTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AmbientAirTemperature_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c deleted file mode 100644 index f65d7e018..000000000 --- a/src/tmx/Asn_J2735/src/2020/AnimalPropelledType.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AnimalPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 13, "animalMounted" }, - { 3, 19, "animalDrawnCarriage" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { - 3, /* animalDrawnCarriage(3) */ - 2, /* animalMounted(2) */ - 1, /* otherTypes(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { - asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { - "AnimalPropelledType", - "AnimalPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_AnimalPropelledType_tags_1, - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AnimalPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AnimalPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AnimalType.c b/src/tmx/Asn_J2735/src/2020/AnimalType.c deleted file mode 100644 index 2ed523a60..000000000 --- a/src/tmx/Asn_J2735/src/2020/AnimalType.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AnimalType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AnimalType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AnimalType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "serviceUse" }, - { 2, 3, "pet" }, - { 3, 4, "farm" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { - 3, /* farm(3) */ - 2, /* pet(2) */ - 1, /* serviceUse(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { - asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalType = { - "AnimalType", - "AnimalType", - &asn_OP_NativeEnumerated, - asn_DEF_AnimalType_tags_1, - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - asn_DEF_AnimalType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AnimalType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AnimalType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c deleted file mode 100644 index 48771f2cd..000000000 --- a/src/tmx/Asn_J2735/src/2020/AntennaOffsetSet.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AntennaOffsetSet.h" - -asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetX), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "antOffsetX" - }, - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetY), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B09, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "antOffsetY" - }, - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetZ), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "antOffsetZ" - }, -}; -static const ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AntennaOffsetSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* antOffsetX */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* antOffsetY */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* antOffsetZ */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1 = { - sizeof(struct AntennaOffsetSet), - offsetof(struct AntennaOffsetSet, _asn_ctx), - asn_MAP_AntennaOffsetSet_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { - "AntennaOffsetSet", - "AntennaOffsetSet", - &asn_OP_SEQUENCE, - asn_DEF_AntennaOffsetSet_tags_1, - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AntennaOffsetSet_1, - 3, /* Elements count */ - &asn_SPC_AntennaOffsetSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c deleted file mode 100644 index f5e5e182f..000000000 --- a/src/tmx/Asn_J2735/src/2020/AntiLockBrakeStatus.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AntiLockBrakeStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { - asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { - "AntiLockBrakeStatus", - "AntiLockBrakeStatus", - &asn_OP_NativeEnumerated, - asn_DEF_AntiLockBrakeStatus_tags_1, - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AntiLockBrakeStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AntiLockBrakeStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ApproachID.c b/src/tmx/Asn_J2735/src/2020/ApproachID.c deleted file mode 100644 index c7f375082..000000000 --- a/src/tmx/Asn_J2735/src/2020/ApproachID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ApproachID.h" - -int -ApproachID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 15L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ApproachID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ApproachID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ApproachID = { - "ApproachID", - "ApproachID", - &asn_OP_NativeInteger, - asn_DEF_ApproachID_tags_1, - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - asn_DEF_ApproachID_tags_1, /* Same as above */ - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ApproachID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ApproachID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ApproachID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c b/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c deleted file mode 100644 index 44465c865..000000000 --- a/src/tmx/Asn_J2735/src/2020/ApproachOrLane.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "IntersectionCollision" - * found in "J2735-IntersectionCollision.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ApproachOrLane.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ApproachOrLane_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_ApproachOrLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.approach), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "approach" - }, - { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.lane), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lane" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_ApproachOrLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* approach */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lane */ -}; -asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1 = { - sizeof(struct ApproachOrLane), - offsetof(struct ApproachOrLane, _asn_ctx), - offsetof(struct ApproachOrLane, present), - sizeof(((struct ApproachOrLane *)0)->present), - asn_MAP_ApproachOrLane_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_ApproachOrLane = { - "ApproachOrLane", - "ApproachOrLane", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ApproachOrLane_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ApproachOrLane_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_ApproachOrLane_1, - 2, /* Elements count */ - &asn_SPC_ApproachOrLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Attachment.c b/src/tmx/Asn_J2735/src/2020/Attachment.c deleted file mode 100644 index 972de18c3..000000000 --- a/src/tmx/Asn_J2735/src/2020/Attachment.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Attachment.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Attachment_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Attachment_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "stroller" }, - { 2, 14, "bicycleTrailer" }, - { 3, 4, "cart" }, - { 4, 10, "wheelchair" }, - { 5, 26, "otherWalkAssistAttachments" }, - { 6, 3, "pet" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_Attachment_enum2value_1[] = { - 2, /* bicycleTrailer(2) */ - 3, /* cart(3) */ - 5, /* otherWalkAssistAttachments(5) */ - 6, /* pet(6) */ - 1, /* stroller(1) */ - 0, /* unavailable(0) */ - 4 /* wheelchair(4) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { - asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Attachment = { - "Attachment", - "Attachment", - &asn_OP_NativeEnumerated, - asn_DEF_Attachment_tags_1, - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - asn_DEF_Attachment_tags_1, /* Same as above */ - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Attachment_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Attachment_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Attachment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c b/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c deleted file mode 100644 index 6d88c83d0..000000000 --- a/src/tmx/Asn_J2735/src/2020/AttachmentRadius.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AttachmentRadius.h" - -int -AttachmentRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 200L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AttachmentRadius_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { - "AttachmentRadius", - "AttachmentRadius", - &asn_OP_NativeInteger, - asn_DEF_AttachmentRadius_tags_1, - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - asn_DEF_AttachmentRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AttachmentRadius_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AttachmentRadius_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AttachmentRadius_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c deleted file mode 100644 index 143bd1fc0..000000000 --- a/src/tmx/Asn_J2735/src/2020/AuxiliaryBrakeStatus.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AuxiliaryBrakeStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { - asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { - "AuxiliaryBrakeStatus", - "AuxiliaryBrakeStatus", - &asn_OP_NativeEnumerated, - asn_DEF_AuxiliaryBrakeStatus_tags_1, - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AuxiliaryBrakeStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AuxiliaryBrakeStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AxleLocation.c b/src/tmx/Asn_J2735/src/2020/AxleLocation.c deleted file mode 100644 index 74caf918f..000000000 --- a/src/tmx/Asn_J2735/src/2020/AxleLocation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AxleLocation.h" - -int -AxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AxleLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleLocation = { - "AxleLocation", - "AxleLocation", - &asn_OP_NativeInteger, - asn_DEF_AxleLocation_tags_1, - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - asn_DEF_AxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AxleLocation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AxleLocation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AxleLocation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeight.c b/src/tmx/Asn_J2735/src/2020/AxleWeight.c deleted file mode 100644 index 23ae46e42..000000000 --- a/src/tmx/Asn_J2735/src/2020/AxleWeight.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AxleWeight.h" - -int -AxleWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 64255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AxleWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeight = { - "AxleWeight", - "AxleWeight", - &asn_OP_NativeInteger, - asn_DEF_AxleWeight_tags_1, - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - asn_DEF_AxleWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AxleWeight_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AxleWeight_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AxleWeight_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeightList.c b/src/tmx/Asn_J2735/src/2020/AxleWeightList.c deleted file mode 100644 index d656f6451..000000000 --- a/src/tmx/Asn_J2735/src/2020/AxleWeightList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AxleWeightList.h" - -#include "AxleWeightSet.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_AxleWeightList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_AxleWeightList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_AxleWeightSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_AxleWeightList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1 = { - sizeof(struct AxleWeightList), - offsetof(struct AxleWeightList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeightList = { - "AxleWeightList", - "AxleWeightList", - &asn_OP_SEQUENCE_OF, - asn_DEF_AxleWeightList_tags_1, - sizeof(asn_DEF_AxleWeightList_tags_1) - /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ - asn_DEF_AxleWeightList_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeightList_tags_1) - /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AxleWeightList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AxleWeightList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_AxleWeightList_1, - 1, /* Single element */ - &asn_SPC_AxleWeightList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c b/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c deleted file mode 100644 index 57952a502..000000000 --- a/src/tmx/Asn_J2735/src/2020/AxleWeightSet.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "AxleWeightSet.h" - -asn_TYPE_member_t asn_MBR_AxleWeightSet_1[] = { - { ATF_POINTER, 2, offsetof(struct AxleWeightSet, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleLocation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "location" - }, - { ATF_POINTER, 1, offsetof(struct AxleWeightSet, weight), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleWeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "weight" - }, -}; -static const int asn_MAP_AxleWeightSet_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_AxleWeightSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AxleWeightSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1 = { - sizeof(struct AxleWeightSet), - offsetof(struct AxleWeightSet, _asn_ctx), - asn_MAP_AxleWeightSet_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_AxleWeightSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeightSet = { - "AxleWeightSet", - "AxleWeightSet", - &asn_OP_SEQUENCE, - asn_DEF_AxleWeightSet_tags_1, - sizeof(asn_DEF_AxleWeightSet_tags_1) - /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ - asn_DEF_AxleWeightSet_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeightSet_tags_1) - /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_AxleWeightSet_1, - 2, /* Elements count */ - &asn_SPC_AxleWeightSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING.c deleted file mode 100644 index b5ba94017..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING.c +++ /dev/null @@ -1,213 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * BIT STRING basic type description. - */ -static const ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs = { - sizeof(BIT_STRING_t), - offsetof(BIT_STRING_t, _asn_ctx), - ASN_OSUBV_BIT -}; -asn_TYPE_operation_t asn_OP_BIT_STRING = { - OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - BIT_STRING_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - BIT_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_binary, - BIT_STRING_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - BIT_STRING_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - BIT_STRING_decode_oer, - BIT_STRING_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - BIT_STRING_decode_uper, /* Unaligned PER decoder */ - BIT_STRING_encode_uper, /* Unaligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, /* Aligned PER decoder */ - OCTET_STRING_encode_aper, /* Aligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - BIT_STRING_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { - "BIT STRING", - "BIT_STRING", - &asn_OP_BIT_STRING, - asn_DEF_BIT_STRING_tags, - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - asn_DEF_BIT_STRING_tags, /* Same as above */ - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BIT_STRING_constraint - }, - 0, 0, /* No members */ - &asn_SPC_BIT_STRING_specs -}; - -/* - * BIT STRING generic constraint. - */ -int -BIT_STRING_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - - if(st && st->buf) { - if((st->size == 0 && st->bits_unused) - || st->bits_unused < 0 || st->bits_unused > 7) { - ASN__CTFAIL(app_key, td, sptr, - "%s: invalid padding byte (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - -/* - * Non-destructively remove the trailing 0-bits from the given bit string. - */ -const BIT_STRING_t * -BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp) { - const uint8_t *b; - union { - const uint8_t *c_buf; - uint8_t *nc_buf; - } unconst; - - if(st->size == 0) { - assert(st->bits_unused == 0); - return st; - } else { - for(b = &st->buf[st->size - 1]; b > st->buf && *b == 0; b--) { - ; - } - /* b points to the last byte which may contain data */ - if(*b) { - int unused = 7; - uint8_t v = *b; - v &= -(int8_t)v; - if(v & 0x0F) unused -= 4; - if(v & 0x33) unused -= 2; - if(v & 0x55) unused -= 1; - tmp->size = b-st->buf + 1; - tmp->bits_unused = unused; - } else { - tmp->size = b-st->buf; - tmp->bits_unused = 0; - } - - assert(b >= st->buf); - } - - unconst.c_buf = st->buf; - tmp->buf = unconst.nc_buf; - return tmp; -} - -/* - * Lexicographically compare the common prefix of both strings, - * and if it is the same return -1 for the smallest string. - */ -int -BIT_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - /* - * Remove information about trailing bits, since - * X.680 (08/2015) #22.7 "ensure that different semantics are not" - * "associated with [values that differ only in] the trailing 0 bits." - */ - BIT_STRING_t compact_a, compact_b; - const BIT_STRING_t *a = BIT_STRING__compactify(aptr, &compact_a); - const BIT_STRING_t *b = BIT_STRING__compactify(bptr, &compact_b); - const asn_OCTET_STRING_specifics_t *specs = td->specifics; - - (void)specs; - assert(specs && specs->subvariant == ASN_OSUBV_BIT); - - if(a && b) { - size_t common_prefix_size = a->size <= b->size ? a->size : b->size; - int ret = memcmp(a->buf, b->buf, common_prefix_size); - if(ret == 0) { - /* Figure out which string with equal prefixes is longer. */ - if(a->size < b->size) { - return -1; - } else if(a->size > b->size) { - return 1; - } else { - /* Figure out how many unused bits */ - if(a->bits_unused > b->bits_unused) { - return -1; - } else if(a->bits_unused < b->bits_unused) { - return 1; - } else { - return 0; - } - } - } else { - return ret; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c deleted file mode 100644 index f66238dee..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_jer.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -BIT_STRING_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - const char * const h2c = "0123456789ABCDEF"; - char scratch[16 * 3 + 4]; - char *p = scratch; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - uint8_t *buf; - uint8_t *end; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size - 1; /* Last byte is special */ - - /* - * Hex dump - */ - *p++ = '"'; - for(int i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - ASN__CALLBACK(scratch, p-scratch); - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - } - - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - - if(buf == end) { - int ubits = st->bits_unused; - uint8_t v = *buf & (0xff << ubits); - *p++ = h2c[v >> 4]; - *p++ = h2c[v & 0x0F]; - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - } - *p++ = '"'; - ASN__CALLBACK(scratch, p - scratch); - ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c deleted file mode 100644 index 95c955896..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_oer.c +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - - (void)opt_codec_ctx; - - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(ct_size >= 0) { - expected_length = (ct_size + 7) >> 3; - st->bits_unused = (8 - (ct_size & 7)) & 7; - } else { - /* - * X.696 (08/2015) #13.3.1 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(expected_length < 1) { - ASN__DECODE_FAILED; - } else if(expected_length > size) { - ASN__DECODE_STARVED; - } - - st->bits_unused = ((const uint8_t *)ptr)[0]; - if(st->bits_unused & ~7) { - ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name); - ASN__DECODE_FAILED; - } - ptr = (const char *)ptr + 1; - size--; - expected_length--; - rval.consumed = len_len + 1; - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - if(expected_length > 0) { - buf[expected_length - 1] &= (0xff << st->bits_unused); - } - - rval.consumed += expected_length; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - asn_enc_rval_t erval = {0, 0, 0}; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - size_t trailing_zeros = 0; - int fix_last_byte = 0; - - if(!st) ASN__ENCODE_FAILED; - - if(st->bits_unused & ~7) { - ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range", - st->bits_unused); - ASN__ENCODE_FAILED; - } - if(st->bits_unused && !(st->size && st->buf)) { - ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name, - st->bits_unused); - ASN__ENCODE_FAILED; - } - - if(ct_size >= 0) { - size_t ct_bytes = (ct_size + 7) >> 3; - if(st->size > ct_bytes) { - ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "", - td->name, 8 * st->size - st->bits_unused, ct_size); - ASN__ENCODE_FAILED; - } - trailing_zeros = ct_bytes - st->size; /* Allow larger constraint */ - } else { - uint8_t ub = st->bits_unused & 7; - ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key); - if(len_len < 0) ASN__ENCODE_FAILED; - if(cb(&ub, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - erval.encoded += len_len + 1; - } - - if(st->bits_unused) { - if(st->buf[st->size - 1] & (0xff << st->bits_unused)) { - fix_last_byte = 1; - } - } - - if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) { - ASN__ENCODE_FAILED; - } - - if(fix_last_byte) { - uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused); - if(cb(&b, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - } - - erval.encoded += st->size; - - if(trailing_zeros) { - static uint8_t zeros[16]; - while(trailing_zeros > 0) { - int ret; - if(trailing_zeros < sizeof(zeros)) { - ret = cb(zeros, trailing_zeros, app_key); - erval.encoded += trailing_zeros; - } else { - ret = cb(zeros, sizeof(zeros), app_key); - erval.encoded += sizeof(zeros); - } - if(ret < 0) ASN__ENCODE_FAILED; - } - } - - return erval; -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c deleted file mode 100644 index bab1ea522..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_print.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * BIT STRING specific contents printer. - */ -int -BIT_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - char scratch[64]; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - uint8_t *buf; - uint8_t *end; - char *p = scratch; - - (void)td; /* Unused argument */ - - if(!st || !st->buf) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - ilevel++; - buf = st->buf; - end = buf + st->size; - - /* - * Hexadecimal dump. - */ - for(; buf < end; buf++) { - if((buf - st->buf) % 16 == 0 && (st->size > 16) - && buf != st->buf) { - _i_INDENT(1); - /* Dump the string */ - if(cb(scratch, p - scratch, app_key) < 0) return -1; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Eat the tailing space */ - - if((st->size > 16)) { - _i_INDENT(1); - } - - /* Dump the incomplete 16-bytes row */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - if(st->bits_unused) { - int ret = snprintf(scratch, sizeof(scratch), " (%d bit%s unused)", - st->bits_unused, st->bits_unused == 1 ? "" : "s"); - assert(ret > 0 && ret < (ssize_t)sizeof(scratch)); - if(ret > 0 && ret < (ssize_t)sizeof(scratch) - && cb(scratch, ret, app_key) < 0) - return -1; - } - - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c deleted file mode 100644 index a6e6a9544..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_rfill.c +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -BIT_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - static unsigned lengths[] = {0, 1, 2, 3, 4, 8, - 126, 127, 128, 16383, 16384, 16385, - 65534, 65535, 65536, 65537}; - uint8_t *buf; - uint8_t *bend; - uint8_t *b; - size_t rnd_bits, rnd_len; - BIT_STRING_t *st; - - if(max_length == 0) return result_skipped; - - switch(specs->subvariant) { - case ASN_OSUBV_ANY: - return result_failed; - case ASN_OSUBV_BIT: - break; - default: - break; - } - - /* Figure out how far we should go */ - rnd_bits = lengths[asn_random_between( - 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_CONSTRAINED) { - long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length - ? pc->upper_bound - : (ssize_t)max_length; - if(max_length < (size_t)pc->lower_bound) { - return result_skipped; - } - if(pc->flags & APC_EXTENSIBLE) { - switch(asn_random_between(0, 5)) { - case 0: - if(pc->lower_bound > 0) { - rnd_bits = pc->lower_bound - 1; - break; - } - /* Fall through */ - case 1: - rnd_bits = pc->upper_bound + 1; - break; - case 2: - /* Keep rnd_bits from the table */ - if(rnd_bits < max_length) { - break; - } - /* Fall through */ - default: - rnd_bits = asn_random_between(pc->lower_bound, - suggested_upper_bound); - } - } else { - rnd_bits = - asn_random_between(pc->lower_bound, suggested_upper_bound); - } - } else { - rnd_bits = asn_random_between(0, max_length - 1); - } - } else { -#else - if(!constraints) constraints = &td->encoding_constraints; - { -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - if(rnd_bits >= max_length) { - rnd_bits = asn_random_between(0, max_length - 1); - } - } - - rnd_len = (rnd_bits + 7) / 8; - buf = CALLOC(1, rnd_len + 1); - if(!buf) return result_failed; - - bend = &buf[rnd_len]; - - for(b = buf; b < bend; b++) { - *(uint8_t *)b = asn_random_between(0, 255); - } - *b = 0; /* Zero-terminate just in case. */ - - if(*sptr) { - st = *sptr; - FREEMEM(st->buf); - } else { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) { - FREEMEM(buf); - return result_failed; - } - } - - st->buf = buf; - st->size = rnd_len; - st->bits_unused = (8 - (rnd_bits & 0x7)) & 0x7; - if(st->bits_unused) { - assert(st->size > 0); - st->buf[st->size-1] &= 0xff << st->bits_unused; - } - - result_ok.length = st->size; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c deleted file mode 100644 index d82349eed..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_uper.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -static asn_per_constraint_t asn_DEF_BIT_STRING_constraint_size = { - APC_SEMI_CONSTRAINED, -1, -1, 0, 0}; - -asn_dec_rval_t -BIT_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - - (void)opt_codec_ctx; - - if(pc) { - csiz = &pc->size; - } else { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - - if(specs->subvariant != ASN_OSUBV_BIT) { - ASN_DEBUG("Subvariant %d is not BIT OSUBV_BIT", specs->subvariant); - RETURN(RC_FAIL); - } - - /* - * Allocate the string. - */ - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - st->size = (csiz->upper_bound + 7) >> 3; - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - ASN_DEBUG("Encoding BIT STRING size %ld", csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, csiz->upper_bound); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += csiz->upper_bound; - st->buf[st->size] = 0; - st->bits_unused = (8 - (csiz->upper_bound & 0x7)) & 0x7; - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, - &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - len_bits = raw_len; - len_bytes = (len_bits + 7) >> 3; - if(len_bits & 0x7) st->bits_unused = 8 - (len_bits & 0x7); - /* len_bits be multiple of 16K if repeat is set */ - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -BIT_STRING_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *csiz; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - BIT_STRING_t compact_bstr; /* Do not modify this directly! */ - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - size_t size_in_bits; - const uint8_t *buf; - int ret; - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(specs->subvariant == ASN_OSUBV_BIT) { - if((st->size == 0 && st->bits_unused) || (st->bits_unused & ~7)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - - if(pc) { - csiz = &pc->size; - } else { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - /* Figure out the size without the trailing bits */ - st = BIT_STRING__compactify(st, &compact_bstr); - size_in_bits = 8 * st->size - st->bits_unused; - - ASN_DEBUG( - "Encoding %s into %" ASN_PRI_SIZE " bits" - " (%ld..%ld, effective %d)%s", - td->name, size_in_bits, csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out whether size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((ssize_t)size_in_bits > csiz->upper_bound) { - if(ct_extensible) { - csiz = &asn_DEF_BIT_STRING_constraint_size; - inext = 1; - } else { - ASN__ENCODE_FAILED; - } - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - if(csiz->effective_bits >= 0 && !inext) { - int add_trailer = (ssize_t)size_in_bits < csiz->lower_bound; - ASN_DEBUG( - "Encoding %" ASN_PRI_SIZE " bytes (%ld), length (in %d bits) trailer %d; actual " - "value %" ASN_PRI_SSIZE "", - st->size, size_in_bits - csiz->lower_bound, csiz->effective_bits, - add_trailer, - add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound); - ret = per_put_few_bits( - po, add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound, - csiz->effective_bits); - if(ret) ASN__ENCODE_FAILED; - ret = per_put_many_bits(po, st->buf, size_in_bits); - if(ret) ASN__ENCODE_FAILED; - if(add_trailer) { - static const uint8_t zeros[16]; - size_t trailing_zero_bits = csiz->lower_bound - size_in_bits; - while(trailing_zero_bits > 0) { - if(trailing_zero_bits > 8 * sizeof(zeros)) { - ret = per_put_many_bits(po, zeros, 8 * sizeof(zeros)); - trailing_zero_bits -= 8 * sizeof(zeros); - } else { - ret = per_put_many_bits(po, zeros, trailing_zero_bits); - trailing_zero_bits = 0; - } - if(ret) ASN__ENCODE_FAILED; - } - } - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); - - buf = st->buf; - do { - int need_eom = 0; - ssize_t maySave = uper_put_length(po, size_in_bits, &need_eom); - if(maySave < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "", maySave, size_in_bits); - - ret = per_put_many_bits(po, buf, maySave); - if(ret) ASN__ENCODE_FAILED; - - buf += maySave >> 3; - size_in_bits -= maySave; - assert(!(maySave & 0x07) || !size_in_bits); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size_in_bits); - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c b/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c deleted file mode 100644 index 67d5cb8db..000000000 --- a/src/tmx/Asn_J2735/src/2020/BIT_STRING_xer.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static const char *_bit_pattern[16] = { - "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", - "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" -}; - -asn_enc_rval_t -BIT_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - char scratch[128]; - char *p = scratch; - char *scend = scratch + (sizeof(scratch) - 10); - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - int xcan = (flags & XER_F_CANONICAL); - uint8_t *buf; - uint8_t *end; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size - 1; /* Last byte is special */ - - /* - * Binary dump - */ - for(; buf < end; buf++) { - int v = *buf; - int nline = xcan?0:(((buf - st->buf) % 8) == 0); - if(p >= scend || nline) { - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - if(nline) ASN__TEXT_INDENT(1, ilevel); - } - memcpy(p + 0, _bit_pattern[v >> 4], 4); - memcpy(p + 4, _bit_pattern[v & 0x0f], 4); - p += 8; - } - - if(!xcan && ((buf - st->buf) % 8) == 0) - ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - - if(buf == end) { - int v = *buf; - int ubits = st->bits_unused; - int i; - for(i = 7; i >= ubits; i--) - *p++ = (v & (1 << i)) ? 0x31 : 0x30; - ASN__CALLBACK(scratch, p - scratch); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN.c deleted file mode 100644 index 1373a6f15..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN.c +++ /dev/null @@ -1,128 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * BOOLEAN basic type description. - */ -static const ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_operation_t asn_OP_BOOLEAN = { - BOOLEAN_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - BOOLEAN_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - BOOLEAN_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - BOOLEAN_decode_ber, - BOOLEAN_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - BOOLEAN_decode_xer, - BOOLEAN_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - BOOLEAN_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - BOOLEAN_decode_oer, - BOOLEAN_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - BOOLEAN_decode_uper, /* Unaligned PER decoder */ - BOOLEAN_encode_uper, /* Unaligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - BOOLEAN_decode_aper, /* Aligned PER decoder */ - BOOLEAN_encode_aper, /* Aligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - BOOLEAN_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { - "BOOLEAN", - "BOOLEAN", - &asn_OP_BOOLEAN, - asn_DEF_BOOLEAN_tags, - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - asn_DEF_BOOLEAN_tags, /* Same as above */ - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -void -BOOLEAN_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(td && ptr) { - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, sizeof(BOOLEAN_t)); - break; - } - } -} - -int -BOOLEAN_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const BOOLEAN_t *a = aptr; - const BOOLEAN_t *b = bptr; - - (void)td; - - if(a && b) { - if(!*a == !*b) { /* TRUE can be encoded by any non-zero byte. */ - return 0; - } else if(!*a) { - return -1; - } else { - return 1; - } - } else if(!a) { - return -1; - } else { - return 1; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c deleted file mode 100644 index d697cf571..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_aper.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -BOOLEAN_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - BOOLEAN_t *st = (BOOLEAN_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - (void)td; - - if(!st) { - st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - /* - * Extract a single bit - */ - switch(per_get_few_bits(pd, 1)) { - case 1: - *st = 1; - break; - case 0: - *st = 0; - break; - case -1: - default: - ASN__DECODE_STARVED; - } - - ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); - - rv.code = RC_OK; - rv.consumed = 1; - return rv; -} - -asn_enc_rval_t -BOOLEAN_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - if(per_put_few_bits(po, *st ? 1 : 0, 1)) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c deleted file mode 100644 index 176a4a4b7..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_ber.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Decode BOOLEAN type. - */ -asn_dec_rval_t -BOOLEAN_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **bool_value, - const void *buf_ptr, size_t size, int tag_mode) { - BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; - asn_dec_rval_t rval; - ber_tlv_len_t length; - ber_tlv_len_t lidx; - - if(st == NULL) { - st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); - if(st == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("Boolean length is %d bytes", (int)length); - - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * Compute boolean value. - */ - for(*st = 0, lidx = 0; - (lidx < length) && *st == 0; lidx++) { - /* - * Very simple approach: read bytes until the end or - * value is already TRUE. - * BOOLEAN is not supposed to contain meaningful data anyway. - */ - *st |= ((const uint8_t *)buf_ptr)[lidx]; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", - (long)rval.consumed, (long)length, - td->name, *st); - - return rval; -} - -asn_enc_rval_t -BOOLEAN_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - - erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb) { - uint8_t bool_value; - - bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ - - if(cb(&bool_value, 1, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } - - erval.encoded += 1; - - ASN__ENCODED_OK(erval); -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c deleted file mode 100644 index 6f4b0935f..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_jer.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -asn_enc_rval_t -BOOLEAN_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - - (void)ilevel; - (void)flags; - - if(!st) ASN__ENCODE_FAILED; - - if(*st) { - ASN__CALLBACK("true", 4); - } else { - ASN__CALLBACK("false", 5); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c deleted file mode 100644 index 0e92e602b..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_oer.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -BOOLEAN_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = { 1, 0, 0 }; - const BOOLEAN_t *st = sptr; - uint8_t bool_value = *st ? 0xff : 0; /* 0xff mandated by OER */ - - (void)td; - (void)constraints; /* Constraints are unused in OER */ - - if(cb(&bool_value, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} - -asn_dec_rval_t -BOOLEAN_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - asn_dec_rval_t ok = {RC_OK, 1}; - BOOLEAN_t *st; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; /* Constraints are unused in OER */ - - if(size < 1) { - ASN__DECODE_STARVED; - } - - if(!(st = *sptr)) { - st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - *st = *(const uint8_t *)ptr; - - return ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c deleted file mode 100644 index 23aaadea8..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_print.c +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -BOOLEAN_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - const char *buf; - size_t buflen; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st) { - if(*st) { - buf = "TRUE"; - buflen = 4; - } else { - buf = "FALSE"; - buflen = 5; - } - } else { - buf = ""; - buflen = 8; - } - - return (cb(buf, buflen, app_key) < 0) ? -1 : 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c deleted file mode 100644 index 5ec628bbf..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_rfill.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -BOOLEAN_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - BOOLEAN_t *st = *sptr; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(st == NULL) { - return result_failed; - } - } - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->value; - if(pc->flags & APC_CONSTRAINED) { - *st = asn_random_between(pc->lower_bound, pc->upper_bound); - return result_ok; - } - } -#else - if(!constraints) constraints = &td->encoding_constraints; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - - /* Simulate booleans that are sloppily set and biased. */ - switch(asn_random_between(0, 7)) { - case 0: - case 1: - case 2: - *st = 0; break; - case 3: *st = -1; break; - case 4: *st = 1; break; - case 5: *st = INT_MIN; break; - case 6: *st = INT_MAX; break; - default: - *st = asn_random_between(INT_MIN, INT_MAX); - break; - } - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c deleted file mode 100644 index 8181ec9ca..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_uper.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -BOOLEAN_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - BOOLEAN_t *st = (BOOLEAN_t *)*sptr; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - - if(!st) { - st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - /* - * Extract a single bit - */ - switch(per_get_few_bits(pd, 1)) { - case 1: *st = 1; break; - case 0: *st = 0; break; - case -1: default: ASN__DECODE_STARVED; - } - - ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); - - rv.code = RC_OK; - rv.consumed = 1; - return rv; -} - - -asn_enc_rval_t -BOOLEAN_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - if(per_put_few_bits(po, *st ? 1 : 0, 1)) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c b/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c deleted file mode 100644 index 7e9d8f853..000000000 --- a/src/tmx/Asn_J2735/src/2020/BOOLEAN_xer.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -BOOLEAN__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - BOOLEAN_t *st = (BOOLEAN_t *)sptr; - const char *p = (const char *)chunk_buf; - - (void)td; - - if(chunk_size && p[0] == 0x3c /* '<' */) { - switch(xer_check_tag(chunk_buf, chunk_size, "false")) { - case XCT_BOTH: - /* "" */ - *st = 0; - break; - case XCT_UNKNOWN_BO: - if(xer_check_tag(chunk_buf, chunk_size, "true") != XCT_BOTH) - return XPBD_BROKEN_ENCODING; - /* "" */ - *st = 1; /* Or 0xff as in DER?.. */ - break; - default: - return XPBD_BROKEN_ENCODING; - } - return XPBD_BODY_CONSUMED; - } else { - return XPBD_BROKEN_ENCODING; - } -} - - -asn_dec_rval_t -BOOLEAN_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, - BOOLEAN__xer_body_decode); -} - -asn_enc_rval_t -BOOLEAN_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - - (void)ilevel; - (void)flags; - - if(!st) ASN__ENCODE_FAILED; - - if(*st) { - ASN__CALLBACK("", 7); - } else { - ASN__CALLBACK("", 8); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/BSMcoreData.c b/src/tmx/Asn_J2735/src/2020/BSMcoreData.c deleted file mode 100644 index 58f4400b6..000000000 --- a/src/tmx/Asn_J2735/src/2020/BSMcoreData.c +++ /dev/null @@ -1,300 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BSMcoreData.h" - -asn_TYPE_member_t asn_MBR_BSMcoreData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, secMark), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, lat), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, Long), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, elev), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elev" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accuracy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, transmission), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "transmission" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, speed), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, heading), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, angle), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "angle" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accelSet), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accelSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, brakes), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "brakes" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, size), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSize, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "size" - }, -}; -static const ber_tlv_tag_t asn_DEF_BSMcoreData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BSMcoreData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* elev */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transmission */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* size */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1 = { - sizeof(struct BSMcoreData), - offsetof(struct BSMcoreData, _asn_ctx), - asn_MAP_BSMcoreData_tag2el_1, - 14, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BSMcoreData = { - "BSMcoreData", - "BSMcoreData", - &asn_OP_SEQUENCE, - asn_DEF_BSMcoreData_tags_1, - sizeof(asn_DEF_BSMcoreData_tags_1) - /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ - asn_DEF_BSMcoreData_tags_1, /* Same as above */ - sizeof(asn_DEF_BSMcoreData_tags_1) - /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BSMcoreData_1, - 14, /* Elements count */ - &asn_SPC_BSMcoreData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c deleted file mode 100644 index fc413535b..000000000 --- a/src/tmx/Asn_J2735/src/2020/BasicSafetyMessage.c +++ /dev/null @@ -1,312 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BasicSafetyMessage.h" - -#include "PartIIcontent.h" -#include "RegionalExtension.h" -static int -memb_partII_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 8UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_partII_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_partII_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_partII_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_BSMpartIIExtension, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_partII_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_partII_specs_3 = { - sizeof(struct BasicSafetyMessage__partII), - offsetof(struct BasicSafetyMessage__partII, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_partII_3 = { - "partII", - "partII", - &asn_OP_SEQUENCE_OF, - asn_DEF_partII_tags_3, - sizeof(asn_DEF_partII_tags_3) - /sizeof(asn_DEF_partII_tags_3[0]) - 1, /* 1 */ - asn_DEF_partII_tags_3, /* Same as above */ - sizeof(asn_DEF_partII_tags_3) - /sizeof(asn_DEF_partII_tags_3[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_partII_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_partII_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_partII_3, - 1, /* Single element */ - &asn_SPC_partII_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct BasicSafetyMessage__regional), - offsetof(struct BasicSafetyMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, coreData), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMcoreData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "coreData" - }, - { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, partII), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_partII_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_constraint_1 - }, - 0, 0, /* No default value */ - "partII" - }, - { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_BasicSafetyMessage_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* coreData */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* partII */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { - sizeof(struct BasicSafetyMessage), - offsetof(struct BasicSafetyMessage, _asn_ctx), - asn_MAP_BasicSafetyMessage_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { - "BasicSafetyMessage", - "BasicSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_BasicSafetyMessage_tags_1, - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BasicSafetyMessage_1, - 3, /* Elements count */ - &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c b/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c deleted file mode 100644 index 19240d328..000000000 --- a/src/tmx/Asn_J2735/src/2020/BasicVehicleClass.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BasicVehicleClass.h" - -int -BasicVehicleClass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_BasicVehicleClass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass = { - "BasicVehicleClass", - "BasicVehicleClass", - &asn_OP_NativeInteger, - asn_DEF_BasicVehicleClass_tags_1, - sizeof(asn_DEF_BasicVehicleClass_tags_1) - /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ - asn_DEF_BasicVehicleClass_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicVehicleClass_tags_1) - /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BasicVehicleClass_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BasicVehicleClass_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BasicVehicleClass_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c b/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c deleted file mode 100644 index 3971477fd..000000000 --- a/src/tmx/Asn_J2735/src/2020/BasicVehicleRole.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BasicVehicleRole.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 22 } /* (0..22,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_BasicVehicleRole_value2enum_1[] = { - { 0, 12, "basicVehicle" }, - { 1, 15, "publicTransport" }, - { 2, 16, "specialTransport" }, - { 3, 14, "dangerousGoods" }, - { 4, 8, "roadWork" }, - { 5, 10, "roadRescue" }, - { 6, 9, "emergency" }, - { 7, 9, "safetyCar" }, - { 8, 12, "none-unknown" }, - { 9, 5, "truck" }, - { 10, 10, "motorcycle" }, - { 11, 14, "roadSideSource" }, - { 12, 6, "police" }, - { 13, 4, "fire" }, - { 14, 9, "ambulance" }, - { 15, 3, "dot" }, - { 16, 7, "transit" }, - { 17, 10, "slowMoving" }, - { 18, 7, "stopNgo" }, - { 19, 7, "cyclist" }, - { 20, 10, "pedestrian" }, - { 21, 12, "nonMotorized" }, - { 22, 8, "military" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_BasicVehicleRole_enum2value_1[] = { - 14, /* ambulance(14) */ - 0, /* basicVehicle(0) */ - 19, /* cyclist(19) */ - 3, /* dangerousGoods(3) */ - 15, /* dot(15) */ - 6, /* emergency(6) */ - 13, /* fire(13) */ - 22, /* military(22) */ - 10, /* motorcycle(10) */ - 21, /* nonMotorized(21) */ - 8, /* none-unknown(8) */ - 20, /* pedestrian(20) */ - 12, /* police(12) */ - 1, /* publicTransport(1) */ - 5, /* roadRescue(5) */ - 11, /* roadSideSource(11) */ - 4, /* roadWork(4) */ - 7, /* safetyCar(7) */ - 17, /* slowMoving(17) */ - 2, /* specialTransport(2) */ - 18, /* stopNgo(18) */ - 16, /* transit(16) */ - 9 /* truck(9) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1 = { - asn_MAP_BasicVehicleRole_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BasicVehicleRole_enum2value_1, /* N => "tag"; sorted by N */ - 23, /* Number of elements in the maps */ - 24, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BasicVehicleRole_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole = { - "BasicVehicleRole", - "BasicVehicleRole", - &asn_OP_NativeEnumerated, - asn_DEF_BasicVehicleRole_tags_1, - sizeof(asn_DEF_BasicVehicleRole_tags_1) - /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ - asn_DEF_BasicVehicleRole_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicVehicleRole_tags_1) - /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BasicVehicleRole_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BasicVehicleRole_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BasicVehicleRole_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c deleted file mode 100644 index e23e68c2a..000000000 --- a/src/tmx/Asn_J2735/src/2020/BrakeAppliedPressure.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BrakeAppliedPressure.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "minPressure" }, - { 2, 7, "bkLvl-2" }, - { 3, 7, "bkLvl-3" }, - { 4, 7, "bkLvl-4" }, - { 5, 7, "bkLvl-5" }, - { 6, 7, "bkLvl-6" }, - { 7, 7, "bkLvl-7" }, - { 8, 7, "bkLvl-8" }, - { 9, 7, "bkLvl-9" }, - { 10, 8, "bkLvl-10" }, - { 11, 8, "bkLvl-11" }, - { 12, 8, "bkLvl-12" }, - { 13, 8, "bkLvl-13" }, - { 14, 8, "bkLvl-14" }, - { 15, 11, "maxPressure" } -}; -static const unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { - 10, /* bkLvl-10(10) */ - 11, /* bkLvl-11(11) */ - 12, /* bkLvl-12(12) */ - 13, /* bkLvl-13(13) */ - 14, /* bkLvl-14(14) */ - 2, /* bkLvl-2(2) */ - 3, /* bkLvl-3(3) */ - 4, /* bkLvl-4(4) */ - 5, /* bkLvl-5(5) */ - 6, /* bkLvl-6(6) */ - 7, /* bkLvl-7(7) */ - 8, /* bkLvl-8(8) */ - 9, /* bkLvl-9(9) */ - 15, /* maxPressure(15) */ - 1, /* minPressure(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { - asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { - "BrakeAppliedPressure", - "BrakeAppliedPressure", - &asn_OP_NativeEnumerated, - asn_DEF_BrakeAppliedPressure_tags_1, - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BrakeAppliedPressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BrakeAppliedPressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c deleted file mode 100644 index c51a80e94..000000000 --- a/src/tmx/Asn_J2735/src/2020/BrakeAppliedStatus.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BrakeAppliedStatus.h" - -int -BrakeAppliedStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 5 /* (SIZE(5..5)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { - "BrakeAppliedStatus", - "BrakeAppliedStatus", - &asn_OP_BIT_STRING, - asn_DEF_BrakeAppliedStatus_tags_1, - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BrakeAppliedStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BrakeAppliedStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BrakeAppliedStatus_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c deleted file mode 100644 index e56f1fa65..000000000 --- a/src/tmx/Asn_J2735/src/2020/BrakeBoostApplied.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BrakeBoostApplied.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" } -}; -static const unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { - asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { - "BrakeBoostApplied", - "BrakeBoostApplied", - &asn_OP_NativeEnumerated, - asn_DEF_BrakeBoostApplied_tags_1, - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BrakeBoostApplied_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BrakeBoostApplied_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c deleted file mode 100644 index 3b313dbde..000000000 --- a/src/tmx/Asn_J2735/src/2020/BrakeSystemStatus.c +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BrakeSystemStatus.h" - -asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, wheelBrakes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeAppliedStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wheelBrakes" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, traction), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TractionControlStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "traction" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, abs), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AntiLockBrakeStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "abs" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, scs), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StabilityControlStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "scs" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, brakeBoost), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeBoostApplied, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "brakeBoost" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, auxBrakes), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AuxiliaryBrakeStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "auxBrakes" - }, -}; -static const ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BrakeSystemStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* wheelBrakes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* traction */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* abs */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* scs */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakeBoost */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* auxBrakes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1 = { - sizeof(struct BrakeSystemStatus), - offsetof(struct BrakeSystemStatus, _asn_ctx), - asn_MAP_BrakeSystemStatus_tag2el_1, - 6, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { - "BrakeSystemStatus", - "BrakeSystemStatus", - &asn_OP_SEQUENCE, - asn_DEF_BrakeSystemStatus_tags_1, - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BrakeSystemStatus_1, - 6, /* Elements count */ - &asn_SPC_BrakeSystemStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BumperHeight.c b/src/tmx/Asn_J2735/src/2020/BumperHeight.c deleted file mode 100644 index e3177905a..000000000 --- a/src/tmx/Asn_J2735/src/2020/BumperHeight.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BumperHeight.h" - -int -BumperHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_BumperHeight_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_BumperHeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_BumperHeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeight = { - "BumperHeight", - "BumperHeight", - &asn_OP_NativeInteger, - asn_DEF_BumperHeight_tags_1, - sizeof(asn_DEF_BumperHeight_tags_1) - /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ - asn_DEF_BumperHeight_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeight_tags_1) - /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_BumperHeight_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_BumperHeight_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BumperHeight_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/BumperHeights.c b/src/tmx/Asn_J2735/src/2020/BumperHeights.c deleted file mode 100644 index ee98b5af9..000000000 --- a/src/tmx/Asn_J2735/src/2020/BumperHeights.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "BumperHeights.h" - -asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, front), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "front" - }, - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rear" - }, -}; -static const ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* front */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { - sizeof(struct BumperHeights), - offsetof(struct BumperHeights, _asn_ctx), - asn_MAP_BumperHeights_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeights = { - "BumperHeights", - "BumperHeights", - &asn_OP_SEQUENCE, - asn_DEF_BumperHeights_tags_1, - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - asn_DEF_BumperHeights_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BumperHeights_1, - 2, /* Elements count */ - &asn_SPC_BumperHeights_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/CargoWeight.c b/src/tmx/Asn_J2735/src/2020/CargoWeight.c deleted file mode 100644 index c7b2ff436..000000000 --- a/src/tmx/Asn_J2735/src/2020/CargoWeight.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "CargoWeight.h" - -int -CargoWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 64255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_CargoWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CargoWeight = { - "CargoWeight", - "CargoWeight", - &asn_OP_NativeInteger, - asn_DEF_CargoWeight_tags_1, - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - asn_DEF_CargoWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_CargoWeight_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_CargoWeight_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CargoWeight_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Circle.c b/src/tmx/Asn_J2735/src/2020/Circle.c deleted file mode 100644 index 49da2c4b3..000000000 --- a/src/tmx/Asn_J2735/src/2020/Circle.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Circle.h" - -asn_TYPE_member_t asn_MBR_Circle_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Circle, center), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "center" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle, radius), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Radius_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "radius" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle, units), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DistanceUnits, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "units" - }, -}; -static const ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* radius */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { - sizeof(struct Circle), - offsetof(struct Circle, _asn_ctx), - asn_MAP_Circle_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Circle = { - "Circle", - "Circle", - &asn_OP_SEQUENCE, - asn_DEF_Circle_tags_1, - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - asn_DEF_Circle_tags_1, /* Same as above */ - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Circle_1, - 3, /* Elements count */ - &asn_SPC_Circle_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/CoarseHeading.c b/src/tmx/Asn_J2735/src/2020/CoarseHeading.c deleted file mode 100644 index 3791ea679..000000000 --- a/src/tmx/Asn_J2735/src/2020/CoarseHeading.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "CoarseHeading.h" - -int -CoarseHeading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 240L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_CoarseHeading_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..240) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 240 } /* (0..240) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_CoarseHeading_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CoarseHeading = { - "CoarseHeading", - "CoarseHeading", - &asn_OP_NativeInteger, - asn_DEF_CoarseHeading_tags_1, - sizeof(asn_DEF_CoarseHeading_tags_1) - /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ - asn_DEF_CoarseHeading_tags_1, /* Same as above */ - sizeof(asn_DEF_CoarseHeading_tags_1) - /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_CoarseHeading_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_CoarseHeading_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CoarseHeading_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/CodeWord.c b/src/tmx/Asn_J2735/src/2020/CodeWord.c deleted file mode 100644 index 5bc8a9c73..000000000 --- a/src/tmx/Asn_J2735/src/2020/CodeWord.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "CodeWord.h" - -int -CodeWord_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_CodeWord_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CodeWord = { - "CodeWord", - "CodeWord", - &asn_OP_OCTET_STRING, - asn_DEF_CodeWord_tags_1, - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - asn_DEF_CodeWord_tags_1, /* Same as above */ - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_CodeWord_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_CodeWord_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CodeWord_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c deleted file mode 100644 index fa52baf11..000000000 --- a/src/tmx/Asn_J2735/src/2020/CoefficientOfFriction.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "CoefficientOfFriction.h" - -int -CoefficientOfFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 50L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..50) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { - "CoefficientOfFriction", - "CoefficientOfFriction", - &asn_OP_NativeInteger, - asn_DEF_CoefficientOfFriction_tags_1, - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_CoefficientOfFriction_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_CoefficientOfFriction_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CoefficientOfFriction_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c deleted file mode 100644 index 202821aed..000000000 --- a/src/tmx/Asn_J2735/src/2020/CommonSafetyRequest.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "CommonSafetyRequest.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_CommonSafetyRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct CommonSafetyRequest__regional), - offsetof(struct CommonSafetyRequest__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { - { ATF_POINTER, 3, offsetof(struct CommonSafetyRequest, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestedItemList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requests" - }, - { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_CommonSafetyRequest_oms_1[] = { 0, 1, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { - sizeof(struct CommonSafetyRequest), - offsetof(struct CommonSafetyRequest, _asn_ctx), - asn_MAP_CommonSafetyRequest_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { - "CommonSafetyRequest", - "CommonSafetyRequest", - &asn_OP_SEQUENCE, - asn_DEF_CommonSafetyRequest_tags_1, - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_CommonSafetyRequest_1, - 5, /* Elements count */ - &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Common_Angle.c b/src/tmx/Asn_J2735/src/2020/Common_Angle.c deleted file mode 100644 index 0b2a34295..000000000 --- a/src/tmx/Asn_J2735/src/2020/Common_Angle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Common_Angle.h" - -int -Common_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 28800L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Common_Angle_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Common_Angle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Common_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Common_Angle = { - "Angle", - "Angle", - &asn_OP_NativeInteger, - asn_DEF_Common_Angle_tags_1, - sizeof(asn_DEF_Common_Angle_tags_1) - /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ - asn_DEF_Common_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_Common_Angle_tags_1) - /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Common_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Common_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Common_Angle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Common_Elevation.c b/src/tmx/Asn_J2735/src/2020/Common_Elevation.c deleted file mode 100644 index f6a0ac83a..000000000 --- a/src/tmx/Asn_J2735/src/2020/Common_Elevation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Common_Elevation.h" - -int -Common_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096L && value <= 61439L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Common_Elevation_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-4096..61439) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Common_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Common_Elevation = { - "Elevation", - "Elevation", - &asn_OP_NativeInteger, - asn_DEF_Common_Elevation_tags_1, - sizeof(asn_DEF_Common_Elevation_tags_1) - /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ - asn_DEF_Common_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_Common_Elevation_tags_1) - /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Common_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Common_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Common_Elevation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c b/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c deleted file mode 100644 index 9510d6667..000000000 --- a/src/tmx/Asn_J2735/src/2020/Common_MsgCount.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Common_MsgCount.h" - -int -Common_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Common_MsgCount_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Common_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Common_MsgCount = { - "MsgCount", - "MsgCount", - &asn_OP_NativeInteger, - asn_DEF_Common_MsgCount_tags_1, - sizeof(asn_DEF_Common_MsgCount_tags_1) - /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_Common_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_Common_MsgCount_tags_1) - /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Common_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Common_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Common_MsgCount_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ComputedLane.c b/src/tmx/Asn_J2735/src/2020/ComputedLane.c deleted file mode 100644 index 24e8446d5..000000000 --- a/src/tmx/Asn_J2735/src/2020/ComputedLane.c +++ /dev/null @@ -1,450 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ComputedLane.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_offsetXaxis_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_offsetYaxis_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "large" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { - sizeof(struct ComputedLane__offsetXaxis), - offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetXaxis, present), - sizeof(((struct ComputedLane__offsetXaxis *)0)->present), - asn_MAP_offsetXaxis_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { - "offsetXaxis", - "offsetXaxis", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_offsetXaxis_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_offsetXaxis_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_offsetXaxis_3, - 2, /* Elements count */ - &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "large" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { - sizeof(struct ComputedLane__offsetYaxis), - offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetYaxis, present), - sizeof(((struct ComputedLane__offsetYaxis *)0)->present), - asn_MAP_offsetYaxis_tag2el_6, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { - "offsetYaxis", - "offsetYaxis", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_offsetYaxis_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_offsetYaxis_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_offsetYaxis_6, - 2, /* Elements count */ - &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_ComputedLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct ComputedLane__regional), - offsetof(struct ComputedLane__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "referenceLaneId" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetXaxis_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offsetXaxis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetYaxis_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offsetYaxis" - }, - { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Angle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rotateXY" - }, - { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "scaleXaxis" - }, - { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "scaleYaxis" - }, - { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { - sizeof(struct ComputedLane), - offsetof(struct ComputedLane, _asn_ctx), - asn_MAP_ComputedLane_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ComputedLane_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ComputedLane = { - "ComputedLane", - "ComputedLane", - &asn_OP_SEQUENCE, - asn_DEF_ComputedLane_tags_1, - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - asn_DEF_ComputedLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ComputedLane_1, - 7, /* Elements count */ - &asn_SPC_ComputedLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Confidence.c b/src/tmx/Asn_J2735/src/2020/Confidence.c deleted file mode 100644 index fc0af2311..000000000 --- a/src/tmx/Asn_J2735/src/2020/Confidence.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Confidence.h" - -int -Confidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 200L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Confidence_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Confidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Confidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Confidence = { - "Confidence", - "Confidence", - &asn_OP_NativeInteger, - asn_DEF_Confidence_tags_1, - sizeof(asn_DEF_Confidence_tags_1) - /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ - asn_DEF_Confidence_tags_1, /* Same as above */ - sizeof(asn_DEF_Confidence_tags_1) - /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Confidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Confidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Confidence_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c b/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c deleted file mode 100644 index e06a001fd..000000000 --- a/src/tmx/Asn_J2735/src/2020/ConfidenceSet.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ConfidenceSet.h" - -#include "AccelSteerYawRateConfidence.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "PositionConfidenceSet.h" -asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { - { ATF_POINTER, 7, offsetof(struct ConfidenceSet, accelConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelSteerYawRateConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accelConfidence" - }, - { ATF_POINTER, 6, offsetof(struct ConfidenceSet, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedConfidence" - }, - { ATF_POINTER, 5, offsetof(struct ConfidenceSet, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeConfidence" - }, - { ATF_POINTER, 4, offsetof(struct ConfidenceSet, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posConfidence" - }, - { ATF_POINTER, 3, offsetof(struct ConfidenceSet, steerConfidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "steerConfidence" - }, - { ATF_POINTER, 2, offsetof(struct ConfidenceSet, headingConfidence), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "headingConfidence" - }, - { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "throttleConfidence" - }, -}; -static const int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* headingConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* throttleConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { - sizeof(struct ConfidenceSet), - offsetof(struct ConfidenceSet, _asn_ctx), - asn_MAP_ConfidenceSet_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ConfidenceSet_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { - "ConfidenceSet", - "ConfidenceSet", - &asn_OP_SEQUENCE, - asn_DEF_ConfidenceSet_tags_1, - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_ConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ConfidenceSet_1, - 7, /* Elements count */ - &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ConnectingLane.c b/src/tmx/Asn_J2735/src/2020/ConnectingLane.c deleted file mode 100644 index 28f937ea5..000000000 --- a/src/tmx/Asn_J2735/src/2020/ConnectingLane.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ConnectingLane.h" - -asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lane" - }, - { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maneuver" - }, -}; -static const int asn_MAP_ConnectingLane_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { - sizeof(struct ConnectingLane), - offsetof(struct ConnectingLane, _asn_ctx), - asn_MAP_ConnectingLane_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ConnectingLane_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { - "ConnectingLane", - "ConnectingLane", - &asn_OP_SEQUENCE, - asn_DEF_ConnectingLane_tags_1, - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - asn_DEF_ConnectingLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ConnectingLane_1, - 2, /* Elements count */ - &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Connection.c b/src/tmx/Asn_J2735/src/2020/Connection.c deleted file mode 100644 index 97799b245..000000000 --- a/src/tmx/Asn_J2735/src/2020/Connection.c +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Connection.h" - -#include "IntersectionReferenceID.h" -asn_TYPE_member_t asn_MBR_Connection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectingLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connectingLane" - }, - { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "remoteIntersection" - }, - { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "signalGroup" - }, - { ATF_POINTER, 2, offsetof(struct Connection, userClass), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "userClass" - }, - { ATF_POINTER, 1, offsetof(struct Connection, connectionID), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connectionID" - }, -}; -static const int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { - sizeof(struct Connection), - offsetof(struct Connection, _asn_ctx), - asn_MAP_Connection_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_Connection_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Connection = { - "Connection", - "Connection", - &asn_OP_SEQUENCE, - asn_DEF_Connection_tags_1, - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - asn_DEF_Connection_tags_1, /* Same as above */ - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Connection_1, - 5, /* Elements count */ - &asn_SPC_Connection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c deleted file mode 100644 index 11562a60d..000000000 --- a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist-addGrpC.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ConnectionManeuverAssist-addGrpC.h" - -#include "NodeOffsetPointXY.h" -asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist_addGrpC, vehicleToLanePositions), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleToLanePositionList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleToLanePositions" - }, - { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist_addGrpC, rsuDistanceFromAnchor), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rsuDistanceFromAnchor" - }, -}; -static const int asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 = { - sizeof(struct ConnectionManeuverAssist_addGrpC), - offsetof(struct ConnectionManeuverAssist_addGrpC, _asn_ctx), - asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC = { - "ConnectionManeuverAssist-addGrpC", - "ConnectionManeuverAssist-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, - sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ConnectionManeuverAssist_addGrpC_1, - 2, /* Elements count */ - &asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c deleted file mode 100644 index c1b8a627b..000000000 --- a/src/tmx/Asn_J2735/src/2020/ConnectionManeuverAssist.c +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ConnectionManeuverAssist.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_ConnectionManeuverAssist, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct ConnectionManeuverAssist__regional), - offsetof(struct ConnectionManeuverAssist__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connectionID" - }, - { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "queueLength" - }, - { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "availableStorageLength" - }, - { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WaitOnStopline, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "waitOnStop" - }, - { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PedestrianBicycleDetect, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pedBicycleDetect" - }, - { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { - sizeof(struct ConnectionManeuverAssist), - offsetof(struct ConnectionManeuverAssist, _asn_ctx), - asn_MAP_ConnectionManeuverAssist_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { - "ConnectionManeuverAssist", - "ConnectionManeuverAssist", - &asn_OP_SEQUENCE, - asn_DEF_ConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ConnectionManeuverAssist_1, - 6, /* Elements count */ - &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ConnectsToList.c b/src/tmx/Asn_J2735/src/2020/ConnectsToList.c deleted file mode 100644 index da71ec49c..000000000 --- a/src/tmx/Asn_J2735/src/2020/ConnectsToList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ConnectsToList.h" - -#include "Connection.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ConnectsToList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Connection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { - sizeof(struct ConnectsToList), - offsetof(struct ConnectsToList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { - "ConnectsToList", - "ConnectsToList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ConnectsToList_tags_1, - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - asn_DEF_ConnectsToList_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ConnectsToList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ConnectsToList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_ConnectsToList_1, - 1, /* Single element */ - &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Count.c b/src/tmx/Asn_J2735/src/2020/Count.c deleted file mode 100644 index af449140e..000000000 --- a/src/tmx/Asn_J2735/src/2020/Count.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Count.h" - -int -Count_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Count_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..32) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_Count_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Count_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Count = { - "Count", - "Count", - &asn_OP_NativeInteger, - asn_DEF_Count_tags_1, - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - asn_DEF_Count_tags_1, /* Same as above */ - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Count_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Count_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Count_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DDate.c b/src/tmx/Asn_J2735/src/2020/DDate.c deleted file mode 100644 index 957a4fb7e..000000000 --- a/src/tmx/Asn_J2735/src/2020/DDate.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DDate.h" - -static asn_TYPE_member_t asn_MBR_DDate_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DDate, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "day" - }, -}; -static const ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { - sizeof(struct DDate), - offsetof(struct DDate, _asn_ctx), - asn_MAP_DDate_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DDate = { - "DDate", - "DDate", - &asn_OP_SEQUENCE, - asn_DEF_DDate_tags_1, - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - asn_DEF_DDate_tags_1, /* Same as above */ - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DDate_1, - 3, /* Elements count */ - &asn_SPC_DDate_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DDateTime.c b/src/tmx/Asn_J2735/src/2020/DDateTime.c deleted file mode 100644 index d6f4c9061..000000000 --- a/src/tmx/Asn_J2735/src/2020/DDateTime.c +++ /dev/null @@ -1,176 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DDateTime.h" - -asn_TYPE_member_t asn_MBR_DDateTime_1[] = { - { ATF_POINTER, 7, offsetof(struct DDateTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_POINTER, 6, offsetof(struct DDateTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, - { ATF_POINTER, 5, offsetof(struct DDateTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "day" - }, - { ATF_POINTER, 4, offsetof(struct DDateTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_POINTER, 3, offsetof(struct DDateTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 2, offsetof(struct DDateTime, second), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct DDateTime, offset), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DOffset, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* offset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { - sizeof(struct DDateTime), - offsetof(struct DDateTime, _asn_ctx), - asn_MAP_DDateTime_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_DDateTime_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DDateTime = { - "DDateTime", - "DDateTime", - &asn_OP_SEQUENCE, - asn_DEF_DDateTime_tags_1, - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - asn_DEF_DDateTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DDateTime_1, - 7, /* Elements count */ - &asn_SPC_DDateTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DDay.c b/src/tmx/Asn_J2735/src/2020/DDay.c deleted file mode 100644 index c957b7693..000000000 --- a/src/tmx/Asn_J2735/src/2020/DDay.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DDay.h" - -int -DDay_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 31L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DDay_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DDay_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DDay = { - "DDay", - "DDay", - &asn_OP_NativeInteger, - asn_DEF_DDay_tags_1, - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - asn_DEF_DDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DDay_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DDay_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DDay_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DFullTime.c b/src/tmx/Asn_J2735/src/2020/DFullTime.c deleted file mode 100644 index b27927546..000000000 --- a/src/tmx/Asn_J2735/src/2020/DFullTime.c +++ /dev/null @@ -1,138 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DFullTime.h" - -static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, -}; -static const ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { - sizeof(struct DFullTime), - offsetof(struct DFullTime, _asn_ctx), - asn_MAP_DFullTime_tag2el_1, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DFullTime = { - "DFullTime", - "DFullTime", - &asn_OP_SEQUENCE, - asn_DEF_DFullTime_tags_1, - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - asn_DEF_DFullTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DFullTime_1, - 5, /* Elements count */ - &asn_SPC_DFullTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DHour.c b/src/tmx/Asn_J2735/src/2020/DHour.c deleted file mode 100644 index cfb450ca2..000000000 --- a/src/tmx/Asn_J2735/src/2020/DHour.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DHour.h" - -int -DHour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 31L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DHour_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DHour_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DHour = { - "DHour", - "DHour", - &asn_OP_NativeInteger, - asn_DEF_DHour_tags_1, - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - asn_DEF_DHour_tags_1, /* Same as above */ - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DHour_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DHour_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DHour_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DMinute.c b/src/tmx/Asn_J2735/src/2020/DMinute.c deleted file mode 100644 index e29176e7f..000000000 --- a/src/tmx/Asn_J2735/src/2020/DMinute.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DMinute.h" - -int -DMinute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 60L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DMinute_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..60) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DMinute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMinute = { - "DMinute", - "DMinute", - &asn_OP_NativeInteger, - asn_DEF_DMinute_tags_1, - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - asn_DEF_DMinute_tags_1, /* Same as above */ - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DMinute_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DMinute_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DMinute_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DMonth.c b/src/tmx/Asn_J2735/src/2020/DMonth.c deleted file mode 100644 index 6f79a388b..000000000 --- a/src/tmx/Asn_J2735/src/2020/DMonth.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DMonth.h" - -int -DMonth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 12L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DMonth_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..12) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DMonth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 12 } /* (0..12) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMonth = { - "DMonth", - "DMonth", - &asn_OP_NativeInteger, - asn_DEF_DMonth_tags_1, - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - asn_DEF_DMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DMonth_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DMonth_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DMonth_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DMonthDay.c b/src/tmx/Asn_J2735/src/2020/DMonthDay.c deleted file mode 100644 index 5172f87dd..000000000 --- a/src/tmx/Asn_J2735/src/2020/DMonthDay.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DMonthDay.h" - -static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "day" - }, -}; -static const ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { - sizeof(struct DMonthDay), - offsetof(struct DMonthDay, _asn_ctx), - asn_MAP_DMonthDay_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DMonthDay = { - "DMonthDay", - "DMonthDay", - &asn_OP_SEQUENCE, - asn_DEF_DMonthDay_tags_1, - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - asn_DEF_DMonthDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DMonthDay_1, - 2, /* Elements count */ - &asn_SPC_DMonthDay_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DOffset.c b/src/tmx/Asn_J2735/src/2020/DOffset.c deleted file mode 100644 index 9848e4822..000000000 --- a/src/tmx/Asn_J2735/src/2020/DOffset.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DOffset.h" - -int -DOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -840L && value <= 840L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DOffset_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-840..840) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DOffset = { - "DOffset", - "DOffset", - &asn_OP_NativeInteger, - asn_DEF_DOffset_tags_1, - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - asn_DEF_DOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DOffset_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DOffset_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DOffset_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c b/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c deleted file mode 100644 index 9e196cd6f..000000000 --- a/src/tmx/Asn_J2735/src/2020/DSRCmsgID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MessageFrame" - * found in "J2735-MessageFrame.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DSRCmsgID.h" - -int -DSRCmsgID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DSRCmsgID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { - "DSRCmsgID", - "DSRCmsgID", - &asn_OP_NativeInteger, - asn_DEF_DSRCmsgID_tags_1, - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - asn_DEF_DSRCmsgID_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DSRCmsgID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DSRCmsgID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DSRCmsgID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DSecond.c b/src/tmx/Asn_J2735/src/2020/DSecond.c deleted file mode 100644 index 189aa3417..000000000 --- a/src/tmx/Asn_J2735/src/2020/DSecond.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DSecond.h" - -int -DSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DSecond_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DSecond_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSecond = { - "DSecond", - "DSecond", - &asn_OP_NativeInteger, - asn_DEF_DSecond_tags_1, - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - asn_DEF_DSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DSecond_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DSecond_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DSecond_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DTime.c b/src/tmx/Asn_J2735/src/2020/DTime.c deleted file mode 100644 index ce927312a..000000000 --- a/src/tmx/Asn_J2735/src/2020/DTime.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DTime.h" - -static asn_TYPE_member_t asn_MBR_DTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, second), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct DTime, offset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DOffset, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_DTime_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offset */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { - sizeof(struct DTime), - offsetof(struct DTime, _asn_ctx), - asn_MAP_DTime_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DTime_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DTime = { - "DTime", - "DTime", - &asn_OP_SEQUENCE, - asn_DEF_DTime_tags_1, - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - asn_DEF_DTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DTime_1, - 4, /* Elements count */ - &asn_SPC_DTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DYear.c b/src/tmx/Asn_J2735/src/2020/DYear.c deleted file mode 100644 index 7cb419da7..000000000 --- a/src/tmx/Asn_J2735/src/2020/DYear.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DYear.h" - -int -DYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 4095L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DYear_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DYear_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DYear = { - "DYear", - "DYear", - &asn_OP_NativeInteger, - asn_DEF_DYear_tags_1, - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - asn_DEF_DYear_tags_1, /* Same as above */ - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DYear_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DYear_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DYear_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DYearMonth.c b/src/tmx/Asn_J2735/src/2020/DYearMonth.c deleted file mode 100644 index 34df843d2..000000000 --- a/src/tmx/Asn_J2735/src/2020/DYearMonth.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DYearMonth.h" - -static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "month" - }, -}; -static const ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { - sizeof(struct DYearMonth), - offsetof(struct DYearMonth, _asn_ctx), - asn_MAP_DYearMonth_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DYearMonth = { - "DYearMonth", - "DYearMonth", - &asn_OP_SEQUENCE, - asn_DEF_DYearMonth_tags_1, - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - asn_DEF_DYearMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DYearMonth_1, - 2, /* Elements count */ - &asn_SPC_DYearMonth_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DataParameters.c b/src/tmx/Asn_J2735/src/2020/DataParameters.c deleted file mode 100644 index ffaf9fc72..000000000 --- a/src/tmx/Asn_J2735/src/2020/DataParameters.c +++ /dev/null @@ -1,330 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DataParameters.h" - -static int check_permitted_alphabet_2(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_3(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -static int -memb_processMethod_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 255UL) - && !check_permitted_alphabet_2(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_processAgency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 255UL) - && !check_permitted_alphabet_3(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_lastCheckedDate_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 255UL) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_geoidUsed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 255UL) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_processMethod_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_processAgency_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_geoidUsed_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_DataParameters_1[] = { - { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_processMethod_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_processMethod_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_processMethod_constraint_1 - }, - 0, 0, /* No default value */ - "processMethod" - }, - { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_processAgency_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_processAgency_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_processAgency_constraint_1 - }, - 0, 0, /* No default value */ - "processAgency" - }, - { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_lastCheckedDate_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_lastCheckedDate_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_lastCheckedDate_constraint_1 - }, - 0, 0, /* No default value */ - "lastCheckedDate" - }, - { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_geoidUsed_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_geoidUsed_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_geoidUsed_constraint_1 - }, - 0, 0, /* No default value */ - "geoidUsed" - }, -}; -static const int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { - sizeof(struct DataParameters), - offsetof(struct DataParameters, _asn_ctx), - asn_MAP_DataParameters_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DataParameters_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DataParameters = { - "DataParameters", - "DataParameters", - &asn_OP_SEQUENCE, - asn_DEF_DataParameters_tags_1, - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - asn_DEF_DataParameters_tags_1, /* Same as above */ - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DataParameters_1, - 4, /* Elements count */ - &asn_SPC_DataParameters_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Day.c b/src/tmx/Asn_J2735/src/2020/Day.c deleted file mode 100644 index 7b2d4caca..000000000 --- a/src/tmx/Asn_J2735/src/2020/Day.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Day.h" - -int -Day_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Day_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Day_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Day_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Day = { - "Day", - "Day", - &asn_OP_NativeInteger, - asn_DEF_Day_tags_1, - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - asn_DEF_Day_tags_1, /* Same as above */ - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Day_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Day_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Day_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DayOfWeek.c b/src/tmx/Asn_J2735/src/2020/DayOfWeek.c deleted file mode 100644 index 0c4e0ee8a..000000000 --- a/src/tmx/Asn_J2735/src/2020/DayOfWeek.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DayOfWeek.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DayOfWeek_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "monday" }, - { 2, 7, "tuesday" }, - { 3, 9, "wednesday" }, - { 4, 8, "thursday" }, - { 5, 6, "friday" }, - { 6, 8, "saturday" }, - { 7, 6, "sunday" } -}; -static const unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { - 5, /* friday(5) */ - 1, /* monday(1) */ - 6, /* saturday(6) */ - 7, /* sunday(7) */ - 4, /* thursday(4) */ - 2, /* tuesday(2) */ - 0, /* unknown(0) */ - 3 /* wednesday(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { - asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { - "DayOfWeek", - "DayOfWeek", - &asn_OP_NativeEnumerated, - asn_DEF_DayOfWeek_tags_1, - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - asn_DEF_DayOfWeek_tags_1, /* Same as above */ - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DayOfWeek_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DayOfWeek_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DegreesLat.c b/src/tmx/Asn_J2735/src/2020/DegreesLat.c deleted file mode 100644 index 439eefd71..000000000 --- a/src/tmx/Asn_J2735/src/2020/DegreesLat.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DegreesLat.h" - -int -DegreesLat_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -90L && value <= 90L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DegreesLat_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-90..90) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLat = { - "DegreesLat", - "DegreesLat", - &asn_OP_NativeInteger, - asn_DEF_DegreesLat_tags_1, - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - asn_DEF_DegreesLat_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DegreesLat_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DegreesLat_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DegreesLat_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DegreesLong.c b/src/tmx/Asn_J2735/src/2020/DegreesLong.c deleted file mode 100644 index 2ca1802ca..000000000 --- a/src/tmx/Asn_J2735/src/2020/DegreesLong.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DegreesLong.h" - -int -DegreesLong_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180L && value <= 180L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DegreesLong_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-180..180) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLong = { - "DegreesLong", - "DegreesLong", - &asn_OP_NativeInteger, - asn_DEF_DegreesLong_tags_1, - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - asn_DEF_DegreesLong_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DegreesLong_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DegreesLong_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DegreesLong_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DeltaAngle.c b/src/tmx/Asn_J2735/src/2020/DeltaAngle.c deleted file mode 100644 index e6de53b1b..000000000 --- a/src/tmx/Asn_J2735/src/2020/DeltaAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DeltaAngle.h" - -int -DeltaAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -150L && value <= 150L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DeltaAngle_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-150..150) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { - "DeltaAngle", - "DeltaAngle", - &asn_OP_NativeInteger, - asn_DEF_DeltaAngle_tags_1, - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - asn_DEF_DeltaAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DeltaAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DeltaAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DeltaAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DeltaTime.c b/src/tmx/Asn_J2735/src/2020/DeltaTime.c deleted file mode 100644 index fe9602188..000000000 --- a/src/tmx/Asn_J2735/src/2020/DeltaTime.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DeltaTime.h" - -int -DeltaTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -122L && value <= 121L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DeltaTime_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-122..121) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DeltaTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -122, 121 } /* (-122..121) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DeltaTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DeltaTime = { - "DeltaTime", - "DeltaTime", - &asn_OP_NativeInteger, - asn_DEF_DeltaTime_tags_1, - sizeof(asn_DEF_DeltaTime_tags_1) - /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ - asn_DEF_DeltaTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DeltaTime_tags_1) - /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DeltaTime_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DeltaTime_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DeltaTime_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DescriptiveName.c b/src/tmx/Asn_J2735/src/2020/DescriptiveName.c deleted file mode 100644 index 7288aff8b..000000000 --- a/src/tmx/Asn_J2735/src/2020/DescriptiveName.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DescriptiveName.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -DescriptiveName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 63UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DescriptiveName_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { - "DescriptiveName", - "DescriptiveName", - &asn_OP_IA5String, - asn_DEF_DescriptiveName_tags_1, - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - asn_DEF_DescriptiveName_tags_1, /* Same as above */ - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DescriptiveName_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DescriptiveName_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DescriptiveName_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c b/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c deleted file mode 100644 index e9f4313e6..000000000 --- a/src/tmx/Asn_J2735/src/2020/DirectionOfUse.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DirectionOfUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DirectionOfUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 7, "forward" }, - { 2, 7, "reverse" }, - { 3, 4, "both" } -}; -static const unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { - 3, /* both(3) */ - 1, /* forward(1) */ - 2, /* reverse(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { - asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { - "DirectionOfUse", - "DirectionOfUse", - &asn_OP_NativeEnumerated, - asn_DEF_DirectionOfUse_tags_1, - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - asn_DEF_DirectionOfUse_tags_1, /* Same as above */ - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DirectionOfUse_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DirectionOfUse_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c b/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c deleted file mode 100644 index aee0cdc98..000000000 --- a/src/tmx/Asn_J2735/src/2020/DisabledVehicle.c +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DisabledVehicle.h" - -static int -memb_statusDetails_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 523L && value <= 541L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_statusDetails_constr_2 CC_NOTUSED = { - { 2, 1 } /* (523..541) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_statusDetails_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_DisabledVehicle_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DisabledVehicle, statusDetails), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_statusDetails_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_statusDetails_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_statusDetails_constraint_1 - }, - 0, 0, /* No default value */ - "statusDetails" - }, - { ATF_POINTER, 1, offsetof(struct DisabledVehicle, locationDetails), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericLocations, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "locationDetails" - }, -}; -static const int asn_MAP_DisabledVehicle_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_DisabledVehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DisabledVehicle_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusDetails */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* locationDetails */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1 = { - sizeof(struct DisabledVehicle), - offsetof(struct DisabledVehicle, _asn_ctx), - asn_MAP_DisabledVehicle_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_DisabledVehicle_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DisabledVehicle = { - "DisabledVehicle", - "DisabledVehicle", - &asn_OP_SEQUENCE, - asn_DEF_DisabledVehicle_tags_1, - sizeof(asn_DEF_DisabledVehicle_tags_1) - /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ - asn_DEF_DisabledVehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_DisabledVehicle_tags_1) - /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_DisabledVehicle_1, - 2, /* Elements count */ - &asn_SPC_DisabledVehicle_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DistanceUnits.c b/src/tmx/Asn_J2735/src/2020/DistanceUnits.c deleted file mode 100644 index 8882fdc6b..000000000 --- a/src/tmx/Asn_J2735/src/2020/DistanceUnits.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DistanceUnits.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DistanceUnits_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_DistanceUnits_value2enum_1[] = { - { 0, 10, "centimeter" }, - { 1, 5, "cm2-5" }, - { 2, 9, "decimeter" }, - { 3, 5, "meter" }, - { 4, 9, "kilometer" }, - { 5, 4, "foot" }, - { 6, 4, "yard" }, - { 7, 4, "mile" } -}; -static const unsigned int asn_MAP_DistanceUnits_enum2value_1[] = { - 0, /* centimeter(0) */ - 1, /* cm2-5(1) */ - 2, /* decimeter(2) */ - 5, /* foot(5) */ - 4, /* kilometer(4) */ - 3, /* meter(3) */ - 7, /* mile(7) */ - 6 /* yard(6) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1 = { - asn_MAP_DistanceUnits_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DistanceUnits_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DistanceUnits_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DistanceUnits = { - "DistanceUnits", - "DistanceUnits", - &asn_OP_NativeEnumerated, - asn_DEF_DistanceUnits_tags_1, - sizeof(asn_DEF_DistanceUnits_tags_1) - /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ - asn_DEF_DistanceUnits_tags_1, /* Same as above */ - sizeof(asn_DEF_DistanceUnits_tags_1) - /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DistanceUnits_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DistanceUnits_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DistanceUnits_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c deleted file mode 100644 index 38fb19e2d..000000000 --- a/src/tmx/Asn_J2735/src/2020/DriveAxleLiftAirPressure.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DriveAxleLiftAirPressure.h" - -int -DriveAxleLiftAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 1000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { - "DriveAxleLiftAirPressure", - "DriveAxleLiftAirPressure", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLiftAirPressure_tags_1, - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DriveAxleLiftAirPressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DriveAxleLiftAirPressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DriveAxleLiftAirPressure_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c deleted file mode 100644 index 2f98b25f3..000000000 --- a/src/tmx/Asn_J2735/src/2020/DriveAxleLocation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DriveAxleLocation.h" - -int -DriveAxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { - "DriveAxleLocation", - "DriveAxleLocation", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLocation_tags_1, - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DriveAxleLocation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DriveAxleLocation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DriveAxleLocation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c deleted file mode 100644 index ac23b3cdc..000000000 --- a/src/tmx/Asn_J2735/src/2020/DriveAxleLubePressure.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DriveAxleLubePressure.h" - -int -DriveAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 250L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { - "DriveAxleLubePressure", - "DriveAxleLubePressure", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLubePressure_tags_1, - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DriveAxleLubePressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DriveAxleLubePressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DriveAxleLubePressure_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c deleted file mode 100644 index 84cdd7b85..000000000 --- a/src/tmx/Asn_J2735/src/2020/DriveAxleTemperature.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DriveAxleTemperature.h" - -int -DriveAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -40L && value <= 210L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-40..210) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { - "DriveAxleTemperature", - "DriveAxleTemperature", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleTemperature_tags_1, - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DriveAxleTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DriveAxleTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DriveAxleTemperature_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c deleted file mode 100644 index c709abc20..000000000 --- a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetLg.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DrivenLineOffsetLg.h" - -int -DrivenLineOffsetLg_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { - "DrivenLineOffsetLg", - "DrivenLineOffsetLg", - &asn_OP_NativeInteger, - asn_DEF_DrivenLineOffsetLg_tags_1, - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DrivenLineOffsetLg_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DrivenLineOffsetLg_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DrivenLineOffsetLg_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c deleted file mode 100644 index 74462a8d2..000000000 --- a/src/tmx/Asn_J2735/src/2020/DrivenLineOffsetSm.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DrivenLineOffsetSm.h" - -int -DrivenLineOffsetSm_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2047L && value <= 2047L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2047..2047) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { - "DrivenLineOffsetSm", - "DrivenLineOffsetSm", - &asn_OP_NativeInteger, - asn_DEF_DrivenLineOffsetSm_tags_1, - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DrivenLineOffsetSm_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DrivenLineOffsetSm_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DrivenLineOffsetSm_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c deleted file mode 100644 index 467354d50..000000000 --- a/src/tmx/Asn_J2735/src/2020/DrivingWheelAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "DrivingWheelAngle.h" - -int -DrivingWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { - "DrivingWheelAngle", - "DrivingWheelAngle", - &asn_OP_NativeInteger, - asn_DEF_DrivingWheelAngle_tags_1, - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_DrivingWheelAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_DrivingWheelAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - DrivingWheelAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Duration.c b/src/tmx/Asn_J2735/src/2020/Duration.c deleted file mode 100644 index c2f048916..000000000 --- a/src/tmx/Asn_J2735/src/2020/Duration.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Duration.h" - -int -Duration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 3600L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Duration_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..3600) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_Duration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 3600 } /* (0..3600) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Duration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Duration = { - "Duration", - "Duration", - &asn_OP_NativeInteger, - asn_DEF_Duration_tags_1, - sizeof(asn_DEF_Duration_tags_1) - /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ - asn_DEF_Duration_tags_1, /* Same as above */ - sizeof(asn_DEF_Duration_tags_1) - /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Duration_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Duration_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Duration_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EXTERNAL.c b/src/tmx/Asn_J2735/src/2020/EXTERNAL.c deleted file mode 100644 index 775cdcb73..000000000 --- a/src/tmx/Asn_J2735/src/2020/EXTERNAL.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" - * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EXTERNAL.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_encoding_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_encoding_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_encoding_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.single_ASN1_type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ANY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "single-ASN1-type" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.octet_aligned), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "octet-aligned" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.arbitrary), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BIT_STRING, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "arbitrary" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_encoding_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* single-ASN1-type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* octet-aligned */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* arbitrary */ -}; -static asn_CHOICE_specifics_t asn_SPC_encoding_specs_5 = { - sizeof(struct EXTERNAL__encoding), - offsetof(struct EXTERNAL__encoding, _asn_ctx), - offsetof(struct EXTERNAL__encoding, present), - sizeof(((struct EXTERNAL__encoding *)0)->present), - asn_MAP_encoding_tag2el_5, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_encoding_5 = { - "encoding", - "encoding", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_encoding_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_encoding_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_encoding_5, - 3, /* Elements count */ - &asn_SPC_encoding_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_EXTERNAL_1[] = { - { ATF_POINTER, 3, offsetof(struct EXTERNAL, direct_reference), - (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), - 0, - &asn_DEF_OBJECT_IDENTIFIER, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "direct-reference" - }, - { ATF_POINTER, 2, offsetof(struct EXTERNAL, indirect_reference), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "indirect-reference" - }, - { ATF_POINTER, 1, offsetof(struct EXTERNAL, data_value_descriptor), - (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), - 0, - &asn_DEF_ObjectDescriptor, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "data-value-descriptor" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL, encoding), - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_encoding_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "encoding" - }, -}; -static const int asn_MAP_EXTERNAL_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_EXTERNAL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EXTERNAL_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* indirect-reference */ - { (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), 0, 0, 0 }, /* direct-reference */ - { (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), 2, 0, 0 }, /* data-value-descriptor */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* single-ASN1-type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* octet-aligned */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 } /* arbitrary */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EXTERNAL_specs_1 = { - sizeof(struct EXTERNAL), - offsetof(struct EXTERNAL, _asn_ctx), - asn_MAP_EXTERNAL_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EXTERNAL_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EXTERNAL = { - "EXTERNAL", - "EXTERNAL", - &asn_OP_SEQUENCE, - asn_DEF_EXTERNAL_tags_1, - sizeof(asn_DEF_EXTERNAL_tags_1) - /sizeof(asn_DEF_EXTERNAL_tags_1[0]) - 1, /* 1 */ - asn_DEF_EXTERNAL_tags_1, /* Same as above */ - sizeof(asn_DEF_EXTERNAL_tags_1) - /sizeof(asn_DEF_EXTERNAL_tags_1[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_EXTERNAL_1, - 4, /* Elements count */ - &asn_SPC_EXTERNAL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c b/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c deleted file mode 100644 index 112fef1e2..000000000 --- a/src/tmx/Asn_J2735/src/2020/ElevationConfidence.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ElevationConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ElevationConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "elev-500-00" }, - { 2, 11, "elev-200-00" }, - { 3, 11, "elev-100-00" }, - { 4, 11, "elev-050-00" }, - { 5, 11, "elev-020-00" }, - { 6, 11, "elev-010-00" }, - { 7, 11, "elev-005-00" }, - { 8, 11, "elev-002-00" }, - { 9, 11, "elev-001-00" }, - { 10, 11, "elev-000-50" }, - { 11, 11, "elev-000-20" }, - { 12, 11, "elev-000-10" }, - { 13, 11, "elev-000-05" }, - { 14, 11, "elev-000-02" }, - { 15, 11, "elev-000-01" } -}; -static const unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { - 15, /* elev-000-01(15) */ - 14, /* elev-000-02(14) */ - 13, /* elev-000-05(13) */ - 12, /* elev-000-10(12) */ - 11, /* elev-000-20(11) */ - 10, /* elev-000-50(10) */ - 9, /* elev-001-00(9) */ - 8, /* elev-002-00(8) */ - 7, /* elev-005-00(7) */ - 6, /* elev-010-00(6) */ - 5, /* elev-020-00(5) */ - 4, /* elev-050-00(4) */ - 3, /* elev-100-00(3) */ - 2, /* elev-200-00(2) */ - 1, /* elev-500-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { - asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { - "ElevationConfidence", - "ElevationConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_ElevationConfidence_tags_1, - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - asn_DEF_ElevationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ElevationConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ElevationConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c b/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c deleted file mode 100644 index 7c7680397..000000000 --- a/src/tmx/Asn_J2735/src/2020/EmergencyDetails.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EmergencyDetails.h" - -#include "PrivilegedEvents.h" -asn_TYPE_member_t asn_MBR_EmergencyDetails_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, notUsed), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sirenUse), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SirenInUse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sirenUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, lightsUse), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LightbarInUse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lightsUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, multi), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MultiVehicleResponse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "multi" - }, - { ATF_POINTER, 2, offsetof(struct EmergencyDetails, events), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrivilegedEvents, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "events" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyDetails, responseType), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponseType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responseType" - }, -}; -static const int asn_MAP_EmergencyDetails_oms_1[] = { 4, 5 }; -static const ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EmergencyDetails_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sirenUse */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lightsUse */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* multi */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* events */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* responseType */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1 = { - sizeof(struct EmergencyDetails), - offsetof(struct EmergencyDetails, _asn_ctx), - asn_MAP_EmergencyDetails_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EmergencyDetails_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { - "EmergencyDetails", - "EmergencyDetails", - &asn_OP_SEQUENCE, - asn_DEF_EmergencyDetails_tags_1, - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - asn_DEF_EmergencyDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_EmergencyDetails_1, - 6, /* Elements count */ - &asn_SPC_EmergencyDetails_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c deleted file mode 100644 index 1cf133c96..000000000 --- a/src/tmx/Asn_J2735/src/2020/EmergencyVehicleAlert.c +++ /dev/null @@ -1,353 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "EmergencyVehicleAlert" - * found in "J2735-EmergencyVehicleAlert.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EmergencyVehicleAlert.h" - -#include "EmergencyDetails.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_EmergencyVehicleAlert, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct EmergencyVehicleAlert__regional), - offsetof(struct EmergencyVehicleAlert__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { - { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSideAlert, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rsaMsg" - }, - { ATF_POINTER, 8, offsetof(struct EmergencyVehicleAlert, responseType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponseType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responseType" - }, - { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, details), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmergencyDetails, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "details" - }, - { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, mass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, basicType), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, responseEquip), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responseEquip" - }, - { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responderType), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responderType" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, regional), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10 }; -static const ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { - sizeof(struct EmergencyVehicleAlert), - offsetof(struct EmergencyVehicleAlert, _asn_ctx), - asn_MAP_EmergencyVehicleAlert_tag2el_1, - 11, /* Count of tags in the map */ - asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 11, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { - "EmergencyVehicleAlert", - "EmergencyVehicleAlert", - &asn_OP_SEQUENCE, - asn_DEF_EmergencyVehicleAlert_tags_1, - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_EmergencyVehicleAlert_1, - 11, /* Elements count */ - &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EmissionType.c b/src/tmx/Asn_J2735/src/2020/EmissionType.c deleted file mode 100644 index 0581da271..000000000 --- a/src/tmx/Asn_J2735/src/2020/EmissionType.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EmissionType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EmissionType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EmissionType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { - { 0, 5, "typeA" }, - { 1, 5, "typeB" }, - { 2, 5, "typeC" }, - { 3, 5, "typeD" }, - { 4, 5, "typeE" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_EmissionType_enum2value_1[] = { - 0, /* typeA(0) */ - 1, /* typeB(1) */ - 2, /* typeC(2) */ - 3, /* typeD(3) */ - 4 /* typeE(4) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { - asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EmissionType = { - "EmissionType", - "EmissionType", - &asn_OP_NativeEnumerated, - asn_DEF_EmissionType_tags_1, - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - asn_DEF_EmissionType_tags_1, /* Same as above */ - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EmissionType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EmissionType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EmissionType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c b/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c deleted file mode 100644 index e7f265b28..000000000 --- a/src/tmx/Asn_J2735/src/2020/EnabledLaneList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EnabledLaneList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EnabledLaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { - sizeof(struct EnabledLaneList), - offsetof(struct EnabledLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { - "EnabledLaneList", - "EnabledLaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_EnabledLaneList_tags_1, - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - asn_DEF_EnabledLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EnabledLaneList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EnabledLaneList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_EnabledLaneList_1, - 1, /* Single element */ - &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c b/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c deleted file mode 100644 index d375581f4..000000000 --- a/src/tmx/Asn_J2735/src/2020/EssMobileFriction.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EssMobileFriction.h" - -int -EssMobileFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 101L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EssMobileFriction_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..101) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { - "EssMobileFriction", - "EssMobileFriction", - &asn_OP_NativeInteger, - asn_DEF_EssMobileFriction_tags_1, - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - asn_DEF_EssMobileFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EssMobileFriction_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EssMobileFriction_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - EssMobileFriction_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c b/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c deleted file mode 100644 index 109e1b352..000000000 --- a/src/tmx/Asn_J2735/src/2020/EssPrecipRate.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EssPrecipRate.h" - -int -EssPrecipRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EssPrecipRate_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { - "EssPrecipRate", - "EssPrecipRate", - &asn_OP_NativeInteger, - asn_DEF_EssPrecipRate_tags_1, - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipRate_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EssPrecipRate_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EssPrecipRate_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - EssPrecipRate_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c deleted file mode 100644 index 685ff08a3..000000000 --- a/src/tmx/Asn_J2735/src/2020/EssPrecipSituation.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EssPrecipSituation.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { - { 1, 5, "other" }, - { 2, 7, "unknown" }, - { 3, 15, "noPrecipitation" }, - { 4, 18, "unidentifiedSlight" }, - { 5, 20, "unidentifiedModerate" }, - { 6, 17, "unidentifiedHeavy" }, - { 7, 10, "snowSlight" }, - { 8, 12, "snowModerate" }, - { 9, 9, "snowHeavy" }, - { 10, 10, "rainSlight" }, - { 11, 12, "rainModerate" }, - { 12, 9, "rainHeavy" }, - { 13, 25, "frozenPrecipitationSlight" }, - { 14, 27, "frozenPrecipitationModerate" }, - { 15, 24, "frozenPrecipitationHeavy" } -}; -static const unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { - 14, /* frozenPrecipitationHeavy(15) */ - 13, /* frozenPrecipitationModerate(14) */ - 12, /* frozenPrecipitationSlight(13) */ - 2, /* noPrecipitation(3) */ - 0, /* other(1) */ - 11, /* rainHeavy(12) */ - 10, /* rainModerate(11) */ - 9, /* rainSlight(10) */ - 8, /* snowHeavy(9) */ - 7, /* snowModerate(8) */ - 6, /* snowSlight(7) */ - 5, /* unidentifiedHeavy(6) */ - 4, /* unidentifiedModerate(5) */ - 3, /* unidentifiedSlight(4) */ - 1 /* unknown(2) */ -}; -const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { - asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ - 15, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { - "EssPrecipSituation", - "EssPrecipSituation", - &asn_OP_NativeEnumerated, - asn_DEF_EssPrecipSituation_tags_1, - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EssPrecipSituation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EssPrecipSituation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c deleted file mode 100644 index 2f1fc7858..000000000 --- a/src/tmx/Asn_J2735/src/2020/EssPrecipYesNo.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EssPrecipYesNo.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { - { 1, 6, "precip" }, - { 2, 8, "noPrecip" }, - { 3, 5, "error" } -}; -static const unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { - 2, /* error(3) */ - 1, /* noPrecip(2) */ - 0 /* precip(1) */ -}; -const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { - asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { - "EssPrecipYesNo", - "EssPrecipYesNo", - &asn_OP_NativeEnumerated, - asn_DEF_EssPrecipYesNo_tags_1, - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EssPrecipYesNo_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EssPrecipYesNo_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c deleted file mode 100644 index e8de9242d..000000000 --- a/src/tmx/Asn_J2735/src/2020/EssSolarRadiation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735-NTCIP.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EssSolarRadiation.h" - -int -EssSolarRadiation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { - "EssSolarRadiation", - "EssSolarRadiation", - &asn_OP_NativeInteger, - asn_DEF_EssSolarRadiation_tags_1, - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_EssSolarRadiation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_EssSolarRadiation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - EssSolarRadiation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/EventDescription.c b/src/tmx/Asn_J2735/src/2020/EventDescription.c deleted file mode 100644 index 2359a5579..000000000 --- a/src/tmx/Asn_J2735/src/2020/EventDescription.c +++ /dev/null @@ -1,365 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "EventDescription.h" - -#include "RegionalExtension.h" -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 8UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_description_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_description_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_description_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_description_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_description_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_description_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_description_specs_3 = { - sizeof(struct EventDescription__description), - offsetof(struct EventDescription__description, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_3 = { - "description", - "description", - &asn_OP_SEQUENCE_OF, - asn_DEF_description_tags_3, - sizeof(asn_DEF_description_tags_3) - /sizeof(asn_DEF_description_tags_3[0]) - 1, /* 1 */ - asn_DEF_description_tags_3, /* Same as above */ - sizeof(asn_DEF_description_tags_3) - /sizeof(asn_DEF_description_tags_3[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_description_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_description_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_description_3, - 1, /* Single element */ - &asn_SPC_description_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_EventDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct EventDescription__regional), - offsetof(struct EventDescription__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EventDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EventDescription, typeEvent), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "typeEvent" - }, - { ATF_POINTER, 5, offsetof(struct EventDescription, description), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_description_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_description_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_description_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_description_constraint_1 - }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 4, offsetof(struct EventDescription, priority), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Priority, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_POINTER, 3, offsetof(struct EventDescription, heading), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 2, offsetof(struct EventDescription, extent), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 1, offsetof(struct EventDescription, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_EventDescription_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_EventDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EventDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeEvent */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1 = { - sizeof(struct EventDescription), - offsetof(struct EventDescription, _asn_ctx), - asn_MAP_EventDescription_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EventDescription_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EventDescription = { - "EventDescription", - "EventDescription", - &asn_OP_SEQUENCE, - asn_DEF_EventDescription_tags_1, - sizeof(asn_DEF_EventDescription_tags_1) - /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ - asn_DEF_EventDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_EventDescription_tags_1) - /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_EventDescription_1, - 6, /* Elements count */ - &asn_SPC_EventDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ExitService.c b/src/tmx/Asn_J2735/src/2020/ExitService.c deleted file mode 100644 index 1da97dcf8..000000000 --- a/src/tmx/Asn_J2735/src/2020/ExitService.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ExitService.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ExitService_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ExitService_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct ExitService__Member__item), - offsetof(struct ExitService__Member__item, _asn_ctx), - offsetof(struct ExitService__Member__item, present), - sizeof(((struct ExitService__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ExitService__Member), - offsetof(struct ExitService__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ExitService_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { - sizeof(struct ExitService), - offsetof(struct ExitService, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ExitService = { - "ExitService", - "ExitService", - &asn_OP_SEQUENCE_OF, - asn_DEF_ExitService_tags_1, - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - asn_DEF_ExitService_tags_1, /* Same as above */ - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ExitService_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ExitService_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_ExitService_1, - 1, /* Single element */ - &asn_SPC_ExitService_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Extent.c b/src/tmx/Asn_J2735/src/2020/Extent.c deleted file mode 100644 index 9cbacf48e..000000000 --- a/src/tmx/Asn_J2735/src/2020/Extent.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Extent.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Extent_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Extent_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { - { 0, 16, "useInstantlyOnly" }, - { 1, 13, "useFor3meters" }, - { 2, 14, "useFor10meters" }, - { 3, 14, "useFor50meters" }, - { 4, 15, "useFor100meters" }, - { 5, 15, "useFor500meters" }, - { 6, 16, "useFor1000meters" }, - { 7, 16, "useFor5000meters" }, - { 8, 17, "useFor10000meters" }, - { 9, 17, "useFor50000meters" }, - { 10, 18, "useFor100000meters" }, - { 11, 18, "useFor500000meters" }, - { 12, 19, "useFor1000000meters" }, - { 13, 19, "useFor5000000meters" }, - { 14, 20, "useFor10000000meters" }, - { 15, 7, "forever" } -}; -static const unsigned int asn_MAP_Extent_enum2value_1[] = { - 15, /* forever(15) */ - 14, /* useFor10000000meters(14) */ - 12, /* useFor1000000meters(12) */ - 10, /* useFor100000meters(10) */ - 8, /* useFor10000meters(8) */ - 6, /* useFor1000meters(6) */ - 4, /* useFor100meters(4) */ - 2, /* useFor10meters(2) */ - 1, /* useFor3meters(1) */ - 13, /* useFor5000000meters(13) */ - 11, /* useFor500000meters(11) */ - 9, /* useFor50000meters(9) */ - 7, /* useFor5000meters(7) */ - 5, /* useFor500meters(5) */ - 3, /* useFor50meters(3) */ - 0 /* useInstantlyOnly(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { - asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Extent = { - "Extent", - "Extent", - &asn_OP_NativeEnumerated, - asn_DEF_Extent_tags_1, - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - asn_DEF_Extent_tags_1, /* Same as above */ - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Extent_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Extent_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Extent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ExteriorLights.c b/src/tmx/Asn_J2735/src/2020/ExteriorLights.c deleted file mode 100644 index 00b597e11..000000000 --- a/src/tmx/Asn_J2735/src/2020/ExteriorLights.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ExteriorLights.h" - -int -ExteriorLights_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 9UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ExteriorLights_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { - "ExteriorLights", - "ExteriorLights", - &asn_OP_BIT_STRING, - asn_DEF_ExteriorLights_tags_1, - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - asn_DEF_ExteriorLights_tags_1, /* Same as above */ - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ExteriorLights_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ExteriorLights_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ExteriorLights_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/FuelType.c b/src/tmx/Asn_J2735/src/2020/FuelType.c deleted file mode 100644 index 4140c662c..000000000 --- a/src/tmx/Asn_J2735/src/2020/FuelType.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "FuelType.h" - -int -FuelType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 15L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_FuelType_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_FuelType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_FuelType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_FuelType = { - "FuelType", - "FuelType", - &asn_OP_NativeInteger, - asn_DEF_FuelType_tags_1, - sizeof(asn_DEF_FuelType_tags_1) - /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ - asn_DEF_FuelType_tags_1, /* Same as above */ - sizeof(asn_DEF_FuelType_tags_1) - /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_FuelType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_FuelType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - FuelType_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/FullPositionVector.c b/src/tmx/Asn_J2735/src/2020/FullPositionVector.c deleted file mode 100644 index c721c7205..000000000 --- a/src/tmx/Asn_J2735/src/2020/FullPositionVector.c +++ /dev/null @@ -1,235 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "FullPositionVector.h" - -#include "DDateTime.h" -#include "TransmissionAndSpeed.h" -#include "PositionalAccuracy.h" -#include "PositionConfidenceSet.h" -#include "SpeedandHeadingandThrottleConfidence.h" -asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { - { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "utcTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posAccuracy" - }, - { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeConfidence" - }, - { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posConfidence" - }, - { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedConfidence" - }, -}; -static const int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { - sizeof(struct FullPositionVector), - offsetof(struct FullPositionVector, _asn_ctx), - asn_MAP_FullPositionVector_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_FullPositionVector_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { - "FullPositionVector", - "FullPositionVector", - &asn_OP_SEQUENCE, - asn_DEF_FullPositionVector_tags_1, - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - asn_DEF_FullPositionVector_tags_1, /* Same as above */ - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_FullPositionVector_1, - 10, /* Elements count */ - &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c b/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c deleted file mode 100644 index c81907a32..000000000 --- a/src/tmx/Asn_J2735/src/2020/FurtherInfoID.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "FurtherInfoID.h" - -int -FurtherInfoID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_FurtherInfoID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { - "FurtherInfoID", - "FurtherInfoID", - &asn_OP_OCTET_STRING, - asn_DEF_FurtherInfoID_tags_1, - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - asn_DEF_FurtherInfoID_tags_1, /* Same as above */ - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_FurtherInfoID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_FurtherInfoID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - FurtherInfoID_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GNSSstatus.c b/src/tmx/Asn_J2735/src/2020/GNSSstatus.c deleted file mode 100644 index 9a4e74626..000000000 --- a/src/tmx/Asn_J2735/src/2020/GNSSstatus.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GNSSstatus.h" - -int -GNSSstatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_GNSSstatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_GNSSstatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GNSSstatus = { - "GNSSstatus", - "GNSSstatus", - &asn_OP_BIT_STRING, - asn_DEF_GNSSstatus_tags_1, - sizeof(asn_DEF_GNSSstatus_tags_1) - /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ - asn_DEF_GNSSstatus_tags_1, /* Same as above */ - sizeof(asn_DEF_GNSSstatus_tags_1) - /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_GNSSstatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_GNSSstatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - GNSSstatus_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GenericLane.c b/src/tmx/Asn_J2735/src/2020/GenericLane.c deleted file mode 100644 index 0bd8ab8c6..000000000 --- a/src/tmx/Asn_J2735/src/2020/GenericLane.c +++ /dev/null @@ -1,336 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GenericLane.h" - -#include "ConnectsToList.h" -#include "OverlayLaneList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_GenericLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct GenericLane__regional), - offsetof(struct GenericLane__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GenericLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneID" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "ingressApproach" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "egressApproach" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneAttributes" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maneuvers" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nodeList" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectsToList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connectsTo" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OverlayLaneList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "overlays" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { - sizeof(struct GenericLane), - offsetof(struct GenericLane, _asn_ctx), - asn_MAP_GenericLane_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_GenericLane_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericLane = { - "GenericLane", - "GenericLane", - &asn_OP_SEQUENCE, - asn_DEF_GenericLane_tags_1, - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - asn_DEF_GenericLane_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_GenericLane_1, - 10, /* Elements count */ - &asn_SPC_GenericLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GenericLocations.c b/src/tmx/Asn_J2735/src/2020/GenericLocations.c deleted file mode 100644 index fc5c21020..000000000 --- a/src/tmx/Asn_J2735/src/2020/GenericLocations.c +++ /dev/null @@ -1,258 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GenericLocations.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_GenericLocations_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_GenericLocations_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 95 } /* (0..95,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_GenericLocations_value2enum_1[] = { - { 7937, 10, "on-bridges" }, - { 7938, 10, "in-tunnels" }, - { 7939, 27, "entering-or-leaving-tunnels" }, - { 7940, 8, "on-ramps" }, - { 7941, 25, "in-road-construction-area" }, - { 7942, 14, "around-a-curve" }, - { 7943, 14, "on-minor-roads" }, - { 7944, 21, "in-the-opposing-lanes" }, - { 7945, 19, "adjacent-to-roadway" }, - { 7946, 7, "on-bend" }, - { 7947, 19, "entire-intersection" }, - { 7948, 13, "in-the-median" }, - { 7949, 21, "moved-to-side-of-road" }, - { 7950, 17, "moved-to-shoulder" }, - { 7951, 14, "on-the-roadway" }, - { 7952, 15, "in-shaded-areas" }, - { 7953, 18, "in-low-lying-areas" }, - { 7954, 20, "in-the-downtown-area" }, - { 7955, 22, "in-the-inner-city-area" }, - { 7956, 8, "in-parts" }, - { 7957, 14, "in-some-places" }, - { 7958, 12, "in-the-ditch" }, - { 7959, 13, "in-the-valley" }, - { 7960, 11, "on-hill-top" }, - { 7961, 18, "near-the-foothills" }, - { 7962, 17, "at-high-altitudes" }, - { 7963, 13, "near-the-lake" }, - { 7964, 14, "near-the-shore" }, - { 7965, 24, "over-the-crest-of-a-hill" }, - { 7966, 25, "other-than-on-the-roadway" }, - { 7967, 14, "near-the-beach" }, - { 7968, 23, "near-beach-access-point" }, - { 7969, 11, "lower-level" }, - { 7970, 11, "upper-level" }, - { 7971, 7, "airport" }, - { 7972, 9, "concourse" }, - { 7973, 4, "gate" }, - { 7974, 13, "baggage-claim" }, - { 7975, 13, "customs-point" }, - { 7976, 7, "station" }, - { 7977, 8, "platform" }, - { 7978, 4, "dock" }, - { 7979, 5, "depot" }, - { 7980, 17, "ev-charging-point" }, - { 7981, 25, "information-welcome-point" }, - { 7982, 12, "at-rest-area" }, - { 7983, 15, "at-service-area" }, - { 7984, 16, "at-weigh-station" }, - { 7985, 12, "picnic-areas" }, - { 7986, 9, "rest-area" }, - { 7987, 16, "service-stations" }, - { 7988, 7, "toilets" }, - { 7989, 12, "on-the-right" }, - { 7990, 11, "on-the-left" }, - { 7991, 13, "in-the-center" }, - { 7992, 25, "in-the-opposite-direction" }, - { 7993, 13, "cross-traffic" }, - { 7994, 18, "northbound-traffic" }, - { 7995, 17, "eastbound-traffic" }, - { 7996, 18, "southbound-traffic" }, - { 7997, 17, "westbound-traffic" }, - { 7998, 5, "north" }, - { 7999, 5, "south" }, - { 8000, 4, "east" }, - { 8001, 4, "west" }, - { 8002, 9, "northeast" }, - { 8003, 9, "northwest" }, - { 8004, 9, "southeast" }, - { 8005, 9, "southwest" }, - { 8006, 13, "mountain-pass" }, - { 8007, 18, "reservation-center" }, - { 8008, 12, "nearby-basin" }, - { 8009, 9, "on-tracks" }, - { 8010, 3, "dip" }, - { 8011, 14, "traffic-circle" }, - { 8012, 17, "park-and-ride-lot" }, - { 8014, 2, "to" }, - { 8015, 2, "by" }, - { 8016, 7, "through" }, - { 8017, 7, "area-of" }, - { 8018, 5, "under" }, - { 8019, 4, "over" }, - { 8020, 4, "from" }, - { 8021, 11, "approaching" }, - { 8022, 11, "entering-at" }, - { 8023, 10, "exiting-at" }, - { 8024, 13, "across-tracks" }, - { 8025, 9, "in-street" }, - { 8026, 8, "on-curve" }, - { 8027, 8, "shoulder" }, - { 8028, 9, "crossover" }, - { 8029, 10, "cross-road" }, - { 8030, 9, "side-road" }, - { 8031, 8, "bus-stop" }, - { 8032, 12, "intersection" }, - { 8033, 13, "roadside-park" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_GenericLocations_enum2value_1[] = { - 86, /* across-tracks(8024) */ - 8, /* adjacent-to-roadway(7945) */ - 34, /* airport(7971) */ - 83, /* approaching(8021) */ - 79, /* area-of(8017) */ - 5, /* around-a-curve(7942) */ - 25, /* at-high-altitudes(7962) */ - 45, /* at-rest-area(7982) */ - 46, /* at-service-area(7983) */ - 47, /* at-weigh-station(7984) */ - 37, /* baggage-claim(7974) */ - 93, /* bus-stop(8031) */ - 77, /* by(8015) */ - 35, /* concourse(7972) */ - 91, /* cross-road(8029) */ - 56, /* cross-traffic(7993) */ - 90, /* crossover(8028) */ - 38, /* customs-point(7975) */ - 42, /* depot(7979) */ - 73, /* dip(8010) */ - 41, /* dock(7978) */ - 63, /* east(8000) */ - 58, /* eastbound-traffic(7995) */ - 84, /* entering-at(8022) */ - 2, /* entering-or-leaving-tunnels(7939) */ - 10, /* entire-intersection(7947) */ - 43, /* ev-charging-point(7980) */ - 85, /* exiting-at(8023) */ - 82, /* from(8020) */ - 36, /* gate(7973) */ - 16, /* in-low-lying-areas(7953) */ - 19, /* in-parts(7956) */ - 4, /* in-road-construction-area(7941) */ - 15, /* in-shaded-areas(7952) */ - 20, /* in-some-places(7957) */ - 87, /* in-street(8025) */ - 54, /* in-the-center(7991) */ - 21, /* in-the-ditch(7958) */ - 17, /* in-the-downtown-area(7954) */ - 18, /* in-the-inner-city-area(7955) */ - 11, /* in-the-median(7948) */ - 7, /* in-the-opposing-lanes(7944) */ - 55, /* in-the-opposite-direction(7992) */ - 22, /* in-the-valley(7959) */ - 1, /* in-tunnels(7938) */ - 44, /* information-welcome-point(7981) */ - 94, /* intersection(8032) */ - 32, /* lower-level(7969) */ - 69, /* mountain-pass(8006) */ - 13, /* moved-to-shoulder(7950) */ - 12, /* moved-to-side-of-road(7949) */ - 31, /* near-beach-access-point(7968) */ - 30, /* near-the-beach(7967) */ - 24, /* near-the-foothills(7961) */ - 26, /* near-the-lake(7963) */ - 27, /* near-the-shore(7964) */ - 71, /* nearby-basin(8008) */ - 61, /* north(7998) */ - 57, /* northbound-traffic(7994) */ - 65, /* northeast(8002) */ - 66, /* northwest(8003) */ - 9, /* on-bend(7946) */ - 0, /* on-bridges(7937) */ - 88, /* on-curve(8026) */ - 23, /* on-hill-top(7960) */ - 6, /* on-minor-roads(7943) */ - 3, /* on-ramps(7940) */ - 53, /* on-the-left(7990) */ - 52, /* on-the-right(7989) */ - 14, /* on-the-roadway(7951) */ - 72, /* on-tracks(8009) */ - 29, /* other-than-on-the-roadway(7966) */ - 81, /* over(8019) */ - 28, /* over-the-crest-of-a-hill(7965) */ - 75, /* park-and-ride-lot(8012) */ - 48, /* picnic-areas(7985) */ - 40, /* platform(7977) */ - 70, /* reservation-center(8007) */ - 49, /* rest-area(7986) */ - 95, /* roadside-park(8033) */ - 50, /* service-stations(7987) */ - 89, /* shoulder(8027) */ - 92, /* side-road(8030) */ - 62, /* south(7999) */ - 59, /* southbound-traffic(7996) */ - 67, /* southeast(8004) */ - 68, /* southwest(8005) */ - 39, /* station(7976) */ - 78, /* through(8016) */ - 76, /* to(8014) */ - 51, /* toilets(7988) */ - 74, /* traffic-circle(8011) */ - 80, /* under(8018) */ - 33, /* upper-level(7970) */ - 64, /* west(8001) */ - 60 /* westbound-traffic(7997) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1 = { - asn_MAP_GenericLocations_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_GenericLocations_enum2value_1, /* N => "tag"; sorted by N */ - 96, /* Number of elements in the maps */ - 97, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_GenericLocations_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GenericLocations = { - "GenericLocations", - "GenericLocations", - &asn_OP_NativeEnumerated, - asn_DEF_GenericLocations_tags_1, - sizeof(asn_DEF_GenericLocations_tags_1) - /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ - asn_DEF_GenericLocations_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericLocations_tags_1) - /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_GenericLocations_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_GenericLocations_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_GenericLocations_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GenericSignage.c b/src/tmx/Asn_J2735/src/2020/GenericSignage.c deleted file mode 100644 index ee07419c6..000000000 --- a/src/tmx/Asn_J2735/src/2020/GenericSignage.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GenericSignage.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_GenericSignage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct GenericSignage__Member__item), - offsetof(struct GenericSignage__Member__item, _asn_ctx), - offsetof(struct GenericSignage__Member__item, present), - sizeof(((struct GenericSignage__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct GenericSignage__Member), - offsetof(struct GenericSignage__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { - sizeof(struct GenericSignage), - offsetof(struct GenericSignage, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericSignage = { - "GenericSignage", - "GenericSignage", - &asn_OP_SEQUENCE_OF, - asn_DEF_GenericSignage_tags_1, - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - asn_DEF_GenericSignage_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_GenericSignage_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_GenericSignage_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_GenericSignage_1, - 1, /* Single element */ - &asn_SPC_GenericSignage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GeographicalPath.c b/src/tmx/Asn_J2735/src/2020/GeographicalPath.c deleted file mode 100644 index 214cc8182..000000000 --- a/src/tmx/Asn_J2735/src/2020/GeographicalPath.c +++ /dev/null @@ -1,421 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GeographicalPath.h" - -#include "RoadSegmentReferenceID.h" -#include "Position3D.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_description_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_description_constr_9 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_14 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_14 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_14 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_14 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_description_9[] = { - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.path), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetSystem, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "path" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.geometry), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GeometricProjection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "geometry" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.oldRegion), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ValidRegion, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "oldRegion" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_description_tag2el_9[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* path */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* geometry */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oldRegion */ -}; -static asn_CHOICE_specifics_t asn_SPC_description_specs_9 = { - sizeof(struct GeographicalPath__description), - offsetof(struct GeographicalPath__description, _asn_ctx), - offsetof(struct GeographicalPath__description, present), - sizeof(((struct GeographicalPath__description *)0)->present), - asn_MAP_description_tag2el_9, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_9 = { - "description", - "description", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_description_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_description_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_description_9, - 3, /* Elements count */ - &asn_SPC_description_specs_9 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_14[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_GeographicalPath, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_14[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_14 = { - sizeof(struct GeographicalPath__regional), - offsetof(struct GeographicalPath__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_14 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_14, - sizeof(asn_DEF_regional_tags_14) - /sizeof(asn_DEF_regional_tags_14[0]) - 1, /* 1 */ - asn_DEF_regional_tags_14, /* Same as above */ - sizeof(asn_DEF_regional_tags_14) - /sizeof(asn_DEF_regional_tags_14[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_14, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_14, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_14, - 1, /* Single element */ - &asn_SPC_regional_specs_14 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GeographicalPath_1[] = { - { ATF_POINTER, 9, offsetof(struct GeographicalPath, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 8, offsetof(struct GeographicalPath, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 7, offsetof(struct GeographicalPath, anchor), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 6, offsetof(struct GeographicalPath, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 5, offsetof(struct GeographicalPath, directionality), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "directionality" - }, - { ATF_POINTER, 4, offsetof(struct GeographicalPath, closedPath), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "closedPath" - }, - { ATF_POINTER, 3, offsetof(struct GeographicalPath, direction), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 2, offsetof(struct GeographicalPath, description), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_description_9, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct GeographicalPath, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_14, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_14, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GeographicalPath_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_GeographicalPath_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GeographicalPath_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* directionality */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closedPath */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1 = { - sizeof(struct GeographicalPath), - offsetof(struct GeographicalPath, _asn_ctx), - asn_MAP_GeographicalPath_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_GeographicalPath_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GeographicalPath = { - "GeographicalPath", - "GeographicalPath", - &asn_OP_SEQUENCE, - asn_DEF_GeographicalPath_tags_1, - sizeof(asn_DEF_GeographicalPath_tags_1) - /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ - asn_DEF_GeographicalPath_tags_1, /* Same as above */ - sizeof(asn_DEF_GeographicalPath_tags_1) - /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_GeographicalPath_1, - 9, /* Elements count */ - &asn_SPC_GeographicalPath_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GeometricProjection.c b/src/tmx/Asn_J2735/src/2020/GeometricProjection.c deleted file mode 100644 index 23928ca81..000000000 --- a/src/tmx/Asn_J2735/src/2020/GeometricProjection.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GeometricProjection.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_GeometricProjection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct GeometricProjection__regional), - offsetof(struct GeometricProjection__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GeometricProjection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, direction), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 2, offsetof(struct GeometricProjection, extent), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 1, offsetof(struct GeometricProjection, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, circle), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Circle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "circle" - }, - { ATF_POINTER, 1, offsetof(struct GeometricProjection, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GeometricProjection_oms_1[] = { 1, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_GeometricProjection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GeometricProjection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* circle */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1 = { - sizeof(struct GeometricProjection), - offsetof(struct GeometricProjection, _asn_ctx), - asn_MAP_GeometricProjection_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_GeometricProjection_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GeometricProjection = { - "GeometricProjection", - "GeometricProjection", - &asn_OP_SEQUENCE, - asn_DEF_GeometricProjection_tags_1, - sizeof(asn_DEF_GeometricProjection_tags_1) - /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ - asn_DEF_GeometricProjection_tags_1, /* Same as above */ - sizeof(asn_DEF_GeometricProjection_tags_1) - /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_GeometricProjection_1, - 5, /* Elements count */ - &asn_SPC_GeometricProjection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GraphicString.c b/src/tmx/Asn_J2735/src/2020/GraphicString.c deleted file mode 100644 index b76118710..000000000 --- a/src/tmx/Asn_J2735/src/2020/GraphicString.c +++ /dev/null @@ -1,91 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * GraphicString basic type description. - */ -static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -asn_TYPE_operation_t asn_OP_GraphicString = { - OCTET_STRING_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OCTET_STRING_print, /* non-ascii string */ -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_hex, - OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OCTET_STRING_encode_jer, /* Can't expect it to be ASCII/UTF8 */ -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - OCTET_STRING_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_GraphicString = { - "GraphicString", - "GraphicString", - &asn_OP_GraphicString, - asn_DEF_GraphicString_tags, - sizeof(asn_DEF_GraphicString_tags) - / sizeof(asn_DEF_GraphicString_tags[0]) - 1, - asn_DEF_GraphicString_tags, - sizeof(asn_DEF_GraphicString_tags) - / sizeof(asn_DEF_GraphicString_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_unknown_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; diff --git a/src/tmx/Asn_J2735/src/2020/GrossDistance.c b/src/tmx/Asn_J2735/src/2020/GrossDistance.c deleted file mode 100644 index 09c1fcfeb..000000000 --- a/src/tmx/Asn_J2735/src/2020/GrossDistance.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GrossDistance.h" - -int -GrossDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 1023L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_GrossDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_GrossDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_GrossDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GrossDistance = { - "GrossDistance", - "GrossDistance", - &asn_OP_NativeInteger, - asn_DEF_GrossDistance_tags_1, - sizeof(asn_DEF_GrossDistance_tags_1) - /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ - asn_DEF_GrossDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_GrossDistance_tags_1) - /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_GrossDistance_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_GrossDistance_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - GrossDistance_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/GrossSpeed.c b/src/tmx/Asn_J2735/src/2020/GrossSpeed.c deleted file mode 100644 index b3a76a107..000000000 --- a/src/tmx/Asn_J2735/src/2020/GrossSpeed.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "GrossSpeed.h" - -int -GrossSpeed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 31L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_GrossSpeed_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_GrossSpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GrossSpeed = { - "GrossSpeed", - "GrossSpeed", - &asn_OP_NativeInteger, - asn_DEF_GrossSpeed_tags_1, - sizeof(asn_DEF_GrossSpeed_tags_1) - /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ - asn_DEF_GrossSpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_GrossSpeed_tags_1) - /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_GrossSpeed_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_GrossSpeed_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - GrossSpeed_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Header.c b/src/tmx/Asn_J2735/src/2020/Header.c deleted file mode 100644 index 3ff49d950..000000000 --- a/src/tmx/Asn_J2735/src/2020/Header.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Header.h" - -asn_TYPE_member_t asn_MBR_Header_1[] = { - { ATF_POINTER, 4, offsetof(struct Header, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "year" - }, - { ATF_POINTER, 3, offsetof(struct Header, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct Header, secMark), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_POINTER, 1, offsetof(struct Header, msgIssueRevision), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgIssueRevision" - }, -}; -static const int asn_MAP_Header_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_Header_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Header_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* msgIssueRevision */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1 = { - sizeof(struct Header), - offsetof(struct Header, _asn_ctx), - asn_MAP_Header_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Header_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Header = { - "Header", - "Header", - &asn_OP_SEQUENCE, - asn_DEF_Header_tags_1, - sizeof(asn_DEF_Header_tags_1) - /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ - asn_DEF_Header_tags_1, /* Same as above */ - sizeof(asn_DEF_Header_tags_1) - /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Header_1, - 4, /* Elements count */ - &asn_SPC_Header_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Heading.c b/src/tmx/Asn_J2735/src/2020/Heading.c deleted file mode 100644 index c33f8cd44..000000000 --- a/src/tmx/Asn_J2735/src/2020/Heading.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Heading.h" - -int -Heading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 28800L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Heading_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Heading_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Heading = { - "Heading", - "Heading", - &asn_OP_NativeInteger, - asn_DEF_Heading_tags_1, - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - asn_DEF_Heading_tags_1, /* Same as above */ - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Heading_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Heading_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Heading_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c b/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c deleted file mode 100644 index e5f1ecff1..000000000 --- a/src/tmx/Asn_J2735/src/2020/HeadingConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "HeadingConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_HeadingConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec10deg" }, - { 2, 9, "prec05deg" }, - { 3, 9, "prec01deg" }, - { 4, 10, "prec0-1deg" }, - { 5, 11, "prec0-05deg" }, - { 6, 11, "prec0-01deg" }, - { 7, 13, "prec0-0125deg" } -}; -static const unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { - 7, /* prec0-0125deg(7) */ - 6, /* prec0-01deg(6) */ - 5, /* prec0-05deg(5) */ - 4, /* prec0-1deg(4) */ - 3, /* prec01deg(3) */ - 2, /* prec05deg(2) */ - 1, /* prec10deg(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { - asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { - "HeadingConfidence", - "HeadingConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_HeadingConfidence_tags_1, - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - asn_DEF_HeadingConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_HeadingConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_HeadingConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/HeadingSlice.c b/src/tmx/Asn_J2735/src/2020/HeadingSlice.c deleted file mode 100644 index 52489a8c7..000000000 --- a/src/tmx/Asn_J2735/src/2020/HeadingSlice.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "HeadingSlice.h" - -int -HeadingSlice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_HeadingSlice_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { - "HeadingSlice", - "HeadingSlice", - &asn_OP_BIT_STRING, - asn_DEF_HeadingSlice_tags_1, - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - asn_DEF_HeadingSlice_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_HeadingSlice_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_HeadingSlice_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - HeadingSlice_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Holiday.c b/src/tmx/Asn_J2735/src/2020/Holiday.c deleted file mode 100644 index f750ffcbc..000000000 --- a/src/tmx/Asn_J2735/src/2020/Holiday.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Holiday.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Holiday_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Holiday_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { - { 0, 7, "weekday" }, - { 1, 7, "holiday" } -}; -static const unsigned int asn_MAP_Holiday_enum2value_1[] = { - 1, /* holiday(1) */ - 0 /* weekday(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { - asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Holiday = { - "Holiday", - "Holiday", - &asn_OP_NativeEnumerated, - asn_DEF_Holiday_tags_1, - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - asn_DEF_Holiday_tags_1, /* Same as above */ - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Holiday_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Holiday_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Holiday_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Hour.c b/src/tmx/Asn_J2735/src/2020/Hour.c deleted file mode 100644 index 95645ea9c..000000000 --- a/src/tmx/Asn_J2735/src/2020/Hour.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Hour.h" - -int -Hour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Hour_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Hour_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Hour = { - "Hour", - "Hour", - &asn_OP_NativeInteger, - asn_DEF_Hour_tags_1, - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - asn_DEF_Hour_tags_1, /* Same as above */ - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Hour_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Hour_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Hour_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c b/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c deleted file mode 100644 index db3857d7e..000000000 --- a/src/tmx/Asn_J2735/src/2020/HumanPropelledType.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "HumanPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_HumanPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 6, "onFoot" }, - { 3, 10, "skateboard" }, - { 4, 17, "pushOrKickScooter" }, - { 5, 10, "wheelchair" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { - 2, /* onFoot(2) */ - 1, /* otherTypes(1) */ - 4, /* pushOrKickScooter(4) */ - 3, /* skateboard(3) */ - 0, /* unavailable(0) */ - 5 /* wheelchair(5) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { - asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { - "HumanPropelledType", - "HumanPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_HumanPropelledType_tags_1, - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - asn_DEF_HumanPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_HumanPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_HumanPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IA5String.c b/src/tmx/Asn_J2735/src/2020/IA5String.c deleted file mode 100644 index 876142d39..000000000 --- a/src/tmx/Asn_J2735/src/2020/IA5String.c +++ /dev/null @@ -1,133 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * IA5String basic type description. - */ -static const ber_tlv_tag_t asn_DEF_IA5String_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_DEF_IA5String_per_constraints = { - { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ - 0, 0 -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_operation_t asn_OP_IA5String = { - OCTET_STRING_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OCTET_STRING_print_utf8, /* ASCII subset */ -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_utf8, - OCTET_STRING_encode_xer_utf8, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OCTET_STRING_encode_jer_utf8, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - OCTET_STRING_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_IA5String = { - "IA5String", - "IA5String", - &asn_OP_IA5String, - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]) - 1, - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_DEF_IA5String_per_constraints, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - IA5String_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -int -IA5String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - - if(st && st->buf) { - uint8_t *buf = st->buf; - uint8_t *end = buf + st->size; - /* - * IA5String is generally equivalent to 7bit ASCII. - * ISO/ITU-T T.50, 1963. - */ - for(; buf < end; buf++) { - if(*buf > 0x7F) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value byte %ld out of range: " - "%d > 127 (%s:%d)", - td->name, - (long)((buf - st->buf) + 1), - *buf, - __FILE__, __LINE__); - return -1; - } - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER.c b/src/tmx/Asn_J2735/src/2020/INTEGER.c deleted file mode 100644 index 095063fef..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER.c +++ /dev/null @@ -1,738 +0,0 @@ -/* - * Copyright (c) 2003-2019 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * INTEGER basic type description. - */ -static const ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_operation_t asn_OP_INTEGER = { - INTEGER_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - INTEGER_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - INTEGER_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - ber_decode_primitive, - INTEGER_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - INTEGER_decode_xer, - INTEGER_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - INTEGER_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - INTEGER_decode_oer, /* OER decoder */ - INTEGER_encode_oer, /* Canonical OER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - INTEGER_decode_uper, /* Unaligned PER decoder */ - INTEGER_encode_uper, /* Unaligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - INTEGER_decode_aper, /* Aligned PER decoder */ - INTEGER_encode_aper, /* Aligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - INTEGER_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ -0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_INTEGER = { - "INTEGER", - "INTEGER", - &asn_OP_INTEGER, - asn_DEF_INTEGER_tags, - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - asn_DEF_INTEGER_tags, /* Same as above */ - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * INTEGER specific human-readable output. - */ -ssize_t -INTEGER__dump(const asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; - uint8_t *buf = st->buf; - uint8_t *buf_end = st->buf + st->size; - intmax_t value; - ssize_t wrote = 0; - char *p; - int ret; - - if(specs && specs->field_unsigned) - ret = asn_INTEGER2umax(st, (uintmax_t *)&value); - else - ret = asn_INTEGER2imax(st, &value); - - /* Simple case: the integer size is small */ - if(ret == 0) { - const asn_INTEGER_enum_map_t *el; - el = (value >= 0 || !specs || !specs->field_unsigned) - ? INTEGER_map_value2enum(specs, value) : 0; - if(el) { - if(plainOrXER == 0) - return asn__format_to_callback(cb, app_key, - "%" ASN_PRIdMAX " (%s)", value, el->enum_name); - else - return asn__format_to_callback(cb, app_key, - "<%s/>", el->enum_name); - } else if(plainOrXER && specs && specs->strict_enumeration) { - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } else { - return asn__format_to_callback(cb, app_key, - (specs && specs->field_unsigned) - ? "%" ASN_PRIuMAX - : "%" ASN_PRIdMAX, - value); - } - } else if(plainOrXER && specs && specs->strict_enumeration) { - /* - * Here and earlier, we cannot encode the ENUMERATED values - * if there is no corresponding identifier. - */ - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } - - /* Output in the long xx:yy:zz... format */ - /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ - for(p = scratch; buf < buf_end; buf++) { - const char * const h2c = "0123456789ABCDEF"; - if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { - /* Flush buffer */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - wrote += p - scratch; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x3a; /* ":" */ - } - if(p != scratch) - p--; /* Remove the last ":" */ - - wrote += p - scratch; - return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; -} - -static int -INTEGER__compar_value2enum(const void *kp, const void *am) { - long a = *(const long *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - long b = el->nat_value; - if(a < b) return -1; - else if(a == b) return 0; - else return 1; -} - -const asn_INTEGER_enum_map_t * -INTEGER_map_value2enum(const asn_INTEGER_specifics_t *specs, long value) { - int count = specs ? specs->map_count : 0; - if(!count) return 0; - return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, - count, sizeof(specs->value2enum[0]), - INTEGER__compar_value2enum); -} - -static intmax_t -asn__integer_convert(const uint8_t *b, const uint8_t *end) { - uintmax_t value; - - /* Perform the sign initialization */ - /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ - if((*b >> 7)) { - value = (uintmax_t)(-1); - } else { - value = 0; - } - - /* Conversion engine */ - for(; b < end; b++) { - value = (value << 8) | *b; - } - - return value; -} - -int -asn_INTEGER2imax(const INTEGER_t *iptr, intmax_t *lptr) { - uint8_t *b, *end; - size_t size; - - /* Sanity checking */ - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - /* Cache the begin/end of the buffer */ - b = iptr->buf; /* Start of the INTEGER buffer */ - size = iptr->size; - end = b + size; /* Where to stop */ - - if(size > sizeof(intmax_t)) { - uint8_t *end1 = end - 1; - /* - * Slightly more advanced processing, - * able to process INTEGERs with >sizeof(intmax_t) bytes - * when the actual value is small, e.g. for intmax_t == int32_t - * (0x0000000000abcdef INTEGER would yield a fine 0x00abcdef int32_t) - */ - /* Skip out the insignificant leading bytes */ - for(; b < end1; b++) { - switch(*b) { - case 0x00: if((b[1] & 0x80) == 0) continue; break; - case 0xff: if((b[1] & 0x80) != 0) continue; break; - } - break; - } - - size = end - b; - if(size > sizeof(intmax_t)) { - /* Still cannot fit the sizeof(intmax_t) */ - errno = ERANGE; - return -1; - } - } - - /* Shortcut processing of a corner case */ - if(end == b) { - *lptr = 0; - return 0; - } - - *lptr = asn__integer_convert(b, end); - return 0; -} - -/* FIXME: negative INTEGER values are silently interpreted as large unsigned ones. */ -int -asn_INTEGER2umax(const INTEGER_t *iptr, uintmax_t *lptr) { - uint8_t *b, *end; - uintmax_t value; - size_t size; - - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - b = iptr->buf; - size = iptr->size; - end = b + size; - - /* If all extra leading bytes are zeroes, ignore them */ - for(; size > sizeof(value); b++, size--) { - if(*b) { - /* Value won't fit into uintmax_t */ - errno = ERANGE; - return -1; - } - } - - /* Conversion engine */ - for(value = 0; b < end; b++) - value = (value << 8) | *b; - - *lptr = value; - return 0; -} - -int -asn_umax2INTEGER(INTEGER_t *st, uintmax_t value) { - uint8_t *buf; - uint8_t *end; - uint8_t *b; - int shr; - - if(value <= ((~(uintmax_t)0) >> 1)) { - return asn_imax2INTEGER(st, value); - } - - buf = (uint8_t *)MALLOC(1 + sizeof(value)); - if(!buf) return -1; - - end = buf + (sizeof(value) + 1); - buf[0] = 0; /* INTEGERs are signed. 0-byte indicates positive. */ - for(b = buf + 1, shr = (sizeof(value) - 1) * 8; b < end; shr -= 8, b++) - *b = (uint8_t)(value >> shr); - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = 1 + sizeof(value); - - return 0; -} - -int -asn_imax2INTEGER(INTEGER_t *st, intmax_t value) { - uint8_t *buf, *bp; - uint8_t *p; - uint8_t *pstart; - uint8_t *pend1; - int littleEndian = 1; /* Run-time detection */ - int add; - - if(!st) { - errno = EINVAL; - return -1; - } - - buf = (uint8_t *)(long *)MALLOC(sizeof(value)); - if(!buf) return -1; - - if(*(char *)&littleEndian) { - pstart = (uint8_t *)&value + sizeof(value) - 1; - pend1 = (uint8_t *)&value; - add = -1; - } else { - pstart = (uint8_t *)&value; - pend1 = pstart + sizeof(value) - 1; - add = 1; - } - - /* - * If the contents octet consists of more than one octet, - * then bits of the first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - for(p = pstart; p != pend1; p += add) { - switch(*p) { - case 0x00: if((*(p+add) & 0x80) == 0) - continue; - break; - case 0xff: if((*(p+add) & 0x80)) - continue; - break; - } - break; - } - /* Copy the integer body */ - for(bp = buf, pend1 += add; p != pend1; p += add) - *bp++ = *p; - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = bp - buf; - - return 0; -} - -int -asn_INTEGER2long(const INTEGER_t *iptr, long *l) { - intmax_t v; - if(asn_INTEGER2imax(iptr, &v) == 0) { - if(v < LONG_MIN || v > LONG_MAX) { - errno = ERANGE; - return -1; - } - *l = v; - return 0; - } else { - return -1; - } -} - -int -asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *l) { - uintmax_t v; - if(asn_INTEGER2umax(iptr, &v) == 0) { - if(v > ULONG_MAX) { - errno = ERANGE; - return -1; - } - *l = v; - return 0; - } else { - return -1; - } -} - -int -asn_long2INTEGER(INTEGER_t *st, long value) { - return asn_imax2INTEGER(st, value); -} - -int -asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { - return asn_imax2INTEGER(st, value); -} - - -int -asn_uint642INTEGER(INTEGER_t *st, uint64_t value) { - uint8_t *buf; - uint8_t *end; - uint8_t *b; - int shr; - - if(value <= INT64_MAX) - return asn_int642INTEGER(st, value); - - buf = (uint8_t *)MALLOC(1 + sizeof(value)); - if(!buf) return -1; - - end = buf + (sizeof(value) + 1); - buf[0] = 0; - for(b = buf + 1, shr = (sizeof(value)-1)*8; b < end; shr -= 8, b++) - *b = (uint8_t)(value >> shr); - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = 1 + sizeof(value); - - return 0; -} - -int -asn_int642INTEGER(INTEGER_t *st, int64_t value) { - uint8_t *buf, *bp; - uint8_t *p; - uint8_t *pstart; - uint8_t *pend1; - int littleEndian = 1; /* Run-time detection */ - int add; - - if(!st) { - errno = EINVAL; - return -1; - } - - buf = (uint8_t *)MALLOC(sizeof(value)); - if(!buf) return -1; - - if(*(char *)&littleEndian) { - pstart = (uint8_t *)&value + sizeof(value) - 1; - pend1 = (uint8_t *)&value; - add = -1; - } else { - pstart = (uint8_t *)&value; - pend1 = pstart + sizeof(value) - 1; - add = 1; - } - - /* - * If the contents octet consists of more than one octet, - * then bits of the first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - for(p = pstart; p != pend1; p += add) { - switch(*p) { - case 0x00: if((*(p+add) & 0x80) == 0) - continue; - break; - case 0xff: if((*(p+add) & 0x80)) - continue; - break; - } - break; - } - /* Copy the integer body */ - for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) - *bp++ = *p; - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = bp - buf; - - return 0; -} - -/* - * Parse the number in the given string until the given *end position, - * returning the position after the last parsed character back using the - * same (*end) pointer. - * WARNING: This behavior is different from the standard strtol/strtoimax(3). - */ -enum asn_strtox_result_e -asn_strtoimax_lim(const char *str, const char **end, intmax_t *intp) { - int sign = 1; - intmax_t value; - - const intmax_t asn1_intmax_max = ((~(uintmax_t)0) >> 1); - const intmax_t upper_boundary = asn1_intmax_max / 10; - intmax_t last_digit_max = asn1_intmax_max % 10; - - if(str >= *end) return ASN_STRTOX_ERROR_INVAL; - - switch(*str) { - case '-': - last_digit_max++; - sign = -1; - /* FALL THROUGH */ - case '+': - str++; - if(str >= *end) { - *end = str; - return ASN_STRTOX_EXPECT_MORE; - } - } - - for(value = 0; str < (*end); str++) { - if(*str >= 0x30 && *str <= 0x39) { - int d = *str - '0'; - if(value < upper_boundary) { - value = value * 10 + d; - } else if(value == upper_boundary) { - if(d <= last_digit_max) { - if(sign > 0) { - value = value * 10 + d; - } else { - sign = 1; - value = -value * 10 - d; - } - str += 1; - if(str < *end) { - // If digits continue, we're guaranteed out of range. - *end = str; - if(*str >= 0x30 && *str <= 0x39) { - return ASN_STRTOX_ERROR_RANGE; - } else { - *intp = sign * value; - return ASN_STRTOX_EXTRA_DATA; - } - } - break; - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - *intp = sign * value; - return ASN_STRTOX_EXTRA_DATA; - } - } - - *end = str; - *intp = sign * value; - return ASN_STRTOX_OK; -} - -/* - * Parse the number in the given string until the given *end position, - * returning the position after the last parsed character back using the - * same (*end) pointer. - * WARNING: This behavior is different from the standard strtoul/strtoumax(3). - */ -enum asn_strtox_result_e -asn_strtoumax_lim(const char *str, const char **end, uintmax_t *uintp) { - uintmax_t value; - - const uintmax_t asn1_uintmax_max = ((~(uintmax_t)0)); - const uintmax_t upper_boundary = asn1_uintmax_max / 10; - uintmax_t last_digit_max = asn1_uintmax_max % 10; - - if(str >= *end) return ASN_STRTOX_ERROR_INVAL; - - switch(*str) { - case '-': - return ASN_STRTOX_ERROR_INVAL; - case '+': - str++; - if(str >= *end) { - *end = str; - return ASN_STRTOX_EXPECT_MORE; - } - } - - for(value = 0; str < (*end); str++) { - if(*str >= 0x30 && *str <= 0x39) { - unsigned int d = *str - '0'; - if(value < upper_boundary) { - value = value * 10 + d; - } else if(value == upper_boundary) { - if(d <= last_digit_max) { - value = value * 10 + d; - str += 1; - if(str < *end) { - // If digits continue, we're guaranteed out of range. - *end = str; - if(*str >= 0x30 && *str <= 0x39) { - return ASN_STRTOX_ERROR_RANGE; - } else { - *uintp = value; - return ASN_STRTOX_EXTRA_DATA; - } - } - break; - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - *uintp = value; - return ASN_STRTOX_EXTRA_DATA; - } - } - - *end = str; - *uintp = value; - return ASN_STRTOX_OK; -} - -enum asn_strtox_result_e -asn_strtol_lim(const char *str, const char **end, long *lp) { - intmax_t value; - switch(asn_strtoimax_lim(str, end, &value)) { - case ASN_STRTOX_ERROR_RANGE: - return ASN_STRTOX_ERROR_RANGE; - case ASN_STRTOX_ERROR_INVAL: - return ASN_STRTOX_ERROR_INVAL; - case ASN_STRTOX_EXPECT_MORE: - return ASN_STRTOX_EXPECT_MORE; - case ASN_STRTOX_OK: - if(value >= LONG_MIN && value <= LONG_MAX) { - *lp = value; - return ASN_STRTOX_OK; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - case ASN_STRTOX_EXTRA_DATA: - if(value >= LONG_MIN && value <= LONG_MAX) { - *lp = value; - return ASN_STRTOX_EXTRA_DATA; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - } - - assert(!"Unreachable"); - return ASN_STRTOX_ERROR_INVAL; -} - -enum asn_strtox_result_e -asn_strtoul_lim(const char *str, const char **end, unsigned long *ulp) { - uintmax_t value; - switch(asn_strtoumax_lim(str, end, &value)) { - case ASN_STRTOX_ERROR_RANGE: - return ASN_STRTOX_ERROR_RANGE; - case ASN_STRTOX_ERROR_INVAL: - return ASN_STRTOX_ERROR_INVAL; - case ASN_STRTOX_EXPECT_MORE: - return ASN_STRTOX_EXPECT_MORE; - case ASN_STRTOX_OK: - if(value <= ULONG_MAX) { - *ulp = value; - return ASN_STRTOX_OK; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - case ASN_STRTOX_EXTRA_DATA: - if(value <= ULONG_MAX) { - *ulp = value; - return ASN_STRTOX_EXTRA_DATA; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - } - - assert(!"Unreachable"); - return ASN_STRTOX_ERROR_INVAL; -} - -int -INTEGER_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const INTEGER_t *a = aptr; - const INTEGER_t *b = bptr; - - (void)td; - - if(a && b) { - if(a->size && b->size) { - int sign_a = (a->buf[0] & 0x80) ? -1 : 1; - int sign_b = (b->buf[0] & 0x80) ? -1 : 1; - - if(sign_a < sign_b) return -1; - if(sign_a > sign_b) return 1; - - /* The shortest integer wins, unless comparing negatives */ - if(a->size < b->size) { - return -1 * sign_a; - } else if(a->size > b->size) { - return 1 * sign_b; - } - - return sign_a * memcmp(a->buf, b->buf, a->size); - } else if(a->size) { - int sign = (a->buf[0] & 0x80) ? -1 : 1; - return (1) * sign; - } else if(b->size) { - int sign = (a->buf[0] & 0x80) ? -1 : 1; - return (-1) * sign; - } else { - return 0; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } - -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c b/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c deleted file mode 100644 index fc88268ef..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_aper.c +++ /dev/null @@ -1,308 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -INTEGER_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - INTEGER_t *st = (INTEGER_t *)*sptr; - const asn_per_constraint_t *ct; - int repeat; - - (void)opt_codec_ctx; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - if(ct) { - if(ct->flags & APC_SEMI_CONSTRAINED) { - st->buf = (uint8_t *)CALLOC(1, 2); - if(!st->buf) ASN__DECODE_FAILED; - st->size = 1; - } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { - size_t size = (ct->range_bits + 7) >> 3; - st->buf = (uint8_t *)MALLOC(1 + size + 1); - if(!st->buf) ASN__DECODE_FAILED; - st->size = size; - } - } - - /* X.691, #12.2.2 */ - if(ct && ct->flags != APC_UNCONSTRAINED) { - /* #10.5.6 */ - ASN_DEBUG("Integer with range %d bits", ct->range_bits); - if(ct->range_bits >= 0) { - if (ct->range_bits > 16) { - int max_range_bytes = (ct->range_bits >> 3) + - (((ct->range_bits % 8) > 0) ? 1 : 0); - int length = 0, i; - long value = 0; - - for (i = 1; ; i++) { - int upper = 1 << i; - if (upper >= max_range_bytes) - break; - } - ASN_DEBUG("Can encode %d (%d bytes) in %d bits", ct->range_bits, - max_range_bytes, i); - - if ((length = per_get_few_bits(pd, i)) < 0) - ASN__DECODE_FAILED; - - /* X.691 #12.2.6 length determinant + lb (1) */ - length += 1; - ASN_DEBUG("Got length %d", length); - if (aper_get_align(pd) != 0) - ASN__DECODE_FAILED; - while (length--) { - int buf = per_get_few_bits(pd, 8); - if (buf < 0) - ASN__DECODE_FAILED; - value += (((long)buf) << (8 * length)); - } - - value += ct->lower_bound; - if((specs && specs->field_unsigned) - ? asn_uint642INTEGER(st, (unsigned long)value) - : asn_int642INTEGER(st, value)) - ASN__DECODE_FAILED; - ASN_DEBUG("Got value %ld + low %lld", - value, (long long int)ct->lower_bound); - } else { - long value = 0; - if (ct->range_bits < 8) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - } else if (ct->range_bits == 8) { - if (aper_get_align(pd) < 0) - ASN__DECODE_FAILED; - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - } else { - /* Align */ - if (aper_get_align(pd) < 0) - ASN__DECODE_FAILED; - value = per_get_few_bits(pd, 16); - if(value < 0) ASN__DECODE_STARVED; - } - value += ct->lower_bound; - if((specs && specs->field_unsigned) - ? asn_ulong2INTEGER(st, value) - : asn_long2INTEGER(st, value)) - ASN__DECODE_FAILED; - ASN_DEBUG("Got value %ld + low %lld", - value, (long long int)ct->lower_bound); - } - return rval; - } else { - ASN__DECODE_FAILED; - } - } else { - ASN_DEBUG("Decoding unconstrained integer %s", td->name); - } - - /* X.691, #12.2.3, #12.2.4 */ - do { - ssize_t len; - void *p; - int ret; - - /* Get the PER length */ - len = aper_get_length(pd, -1, -1, -1, &repeat); - if(len < 0) ASN__DECODE_STARVED; - - p = REALLOC(st->buf, st->size + len + 1); - if(!p) ASN__DECODE_FAILED; - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); - if(ret < 0) ASN__DECODE_STARVED; - st->size += len; - } while(repeat); - st->buf[st->size] = 0; /* JIC */ - - /* #12.2.3 */ - if(ct && ct->lower_bound) { - /* - * TODO: replace by in-place arithmetics. - */ - long value; - if(asn_INTEGER2long(st, &value)) - ASN__DECODE_FAILED; - if(asn_long2INTEGER(st, value + ct->lower_bound)) - ASN__DECODE_FAILED; - } - - return rval; -} - -asn_enc_rval_t -INTEGER_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const INTEGER_t *st = (const INTEGER_t *)sptr; - const uint8_t *buf; - const uint8_t *end; - const asn_per_constraint_t *ct; - long value = 0; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - er.encoded = 0; - - if(ct) { - int inext = 0; - if(specs && specs->field_unsigned) { - unsigned long uval; - if(asn_INTEGER2ulong(st, &uval)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(uval < (unsigned long)ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(uval < (unsigned long)ct->lower_bound - || uval > (unsigned long)ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", - uval, st->buf[0], st->size, - (long long int)ct->lower_bound, - (long long int)ct->upper_bound, - inext ? "ext" : "fix"); - value = uval; - } else { - if(asn_INTEGER2long(st, &value)) ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value < ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value < ct->lower_bound - || value > ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", - value, st->buf[0], st->size, - (long long int)ct->lower_bound, - (long long int)ct->upper_bound, - inext ? "ext" : "fix"); - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - } - - /* X.691, #12.2.2 */ - if(ct && ct->range_bits >= 0) { - unsigned long v; - - /* #10.5.6 */ - ASN_DEBUG("Encoding integer %ld (%lld) with range %d bits", - value, (long long int)(value - ct->lower_bound), - ct->range_bits); - - v = value - ct->lower_bound; - - /* #12 <= 8 -> alignment ? */ - int range = ct->upper_bound - ct->lower_bound + 1; - if (ct->range_bits < 8 || (ct->range_bits == 8 && range < 256)) { - if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) - ASN__ENCODE_FAILED; - } else if (ct->range_bits == 8) { - if(aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) - ASN__ENCODE_FAILED; - } else if (ct->range_bits <= 16) { - /* Consume the bytes to align on octet */ - if(aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - if(per_put_few_bits(po, 0x0000 | v, 16)) - ASN__ENCODE_FAILED; - } else { - /* TODO: extend to >64 bits */ - int64_t v64 = v; - int i, j; - int max_range_bytes = (ct->range_bits >> 3) + - (((ct->range_bits % 8) > 0) ? 1 : 0); - - for (i = 1; ; i++) { - int upper = 1 << i; - if (upper >= max_range_bytes) - break; - } - - for (j = sizeof(int64_t) -1; j != 0; j--) { - int64_t val; - val = v64 >> (j * 8); - if (val != 0) - break; - } - - /* Putting length in the minimum number of bits ex: 5 = 3bits */ - if (per_put_few_bits(po, j, i)) - ASN__ENCODE_FAILED; - - /* Consume the bits to align on octet */ - if (aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - /* Put the value */ - for (i = 0; i <= j; i++) { - if(per_put_few_bits(po, (v64 >> (8 * (j - i))) & 0xff, 8)) - ASN__ENCODE_FAILED; - } - } - ASN__ENCODED_OK(er); - } - - if(ct && ct->lower_bound) { - ASN_DEBUG("Adjust lower bound to %lld", (long long int)ct->lower_bound); - /* TODO: adjust lower bound */ - ASN__ENCODE_FAILED; - } - - for(buf = st->buf, end = st->buf + st->size; buf < end;) { - int need_eom = 0; - ssize_t mayEncode = aper_put_length(po, -1, -1, end - buf, &need_eom); - if(mayEncode < 0) - ASN__ENCODE_FAILED; - if(per_put_many_bits(po, buf, 8 * mayEncode)) - ASN__ENCODE_FAILED; - buf += mayEncode; - if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) - ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c b/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c deleted file mode 100644 index 57bfe1e1e..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_ber.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Encode INTEGER type using DER. - */ -asn_enc_rval_t -INTEGER_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t rval; - INTEGER_t effective_integer; - - ASN_DEBUG("%s %s as INTEGER (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - /* - * Canonicalize integer in the buffer. - * (Remove too long sign extension, remove some first 0x00 bytes) - */ - if(st->buf) { - uint8_t *buf = st->buf; - uint8_t *end1 = buf + st->size - 1; - int shift; - - /* Compute the number of superfluous leading bytes */ - for(; buf < end1; buf++) { - /* - * If the contents octets of an integer value encoding - * consist of more than one octet, then the bits of the - * first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - switch(*buf) { - case 0x00: - if((buf[1] & 0x80) == 0) continue; - break; - case 0xff: - if((buf[1] & 0x80)) continue; - break; - } - break; - } - - /* Remove leading superfluous bytes from the integer */ - shift = buf - st->buf; - if(shift) { - union { - const uint8_t *c_buf; - uint8_t *nc_buf; - } unconst; - unconst.c_buf = st->buf; - effective_integer.buf = unconst.nc_buf + shift; - effective_integer.size = st->size - shift; - - st = &effective_integer; - } - } - - rval = der_encode_primitive(td, st, tag_mode, tag, cb, app_key); - if(rval.structure_ptr == &effective_integer) { - rval.structure_ptr = sptr; - } - return rval; -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c deleted file mode 100644 index 23d7c1285..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_jer.c +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -INTEGER_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = INTEGER__dump(td, st, cb, app_key, 1); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c deleted file mode 100644 index 19f276d54..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_oer.c +++ /dev/null @@ -1,174 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - INTEGER_t *st = (INTEGER_t *)*sptr; - struct asn_oer_constraint_number_s ct = {0, 0}; - size_t req_bytes; - - (void)opt_codec_ctx; - (void)specs; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - - if(!constraints) constraints = td->encoding_constraints.oer_constraints; - if(constraints) ct = constraints->value; - - if(ct.width) { - req_bytes = ct.width; - } else { - /* No lower bound and no upper bound, effectively */ - - ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes); - if(consumed == 0) { - ASN__DECODE_STARVED; - } else if(consumed == -1) { - ASN__DECODE_FAILED; - } - rval.consumed += consumed; - ptr = (const char *)ptr + consumed; - size -= consumed; - } - - if(req_bytes > size) { - ASN__DECODE_STARVED; - } - - if(ct.positive) { - /* X.969 08/2015 10.2(a) */ - unsigned msb; /* Most significant bit */ - size_t useful_size; - - /* Check most significant bit */ - msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */ - useful_size = msb + req_bytes; - st->buf = (uint8_t *)MALLOC(useful_size + 1); - if(!st->buf) { - ASN__DECODE_FAILED; - } - - /* - * Record a large unsigned in a way not to confuse it - * with signed value. - */ - st->buf[0] = '\0'; - memcpy(st->buf + msb, ptr, req_bytes); - st->buf[useful_size] = '\0'; /* Just in case, 0-terminate */ - st->size = useful_size; - - rval.consumed += req_bytes; - return rval; - } else { - /* X.969 08/2015 10.2(b) */ - st->buf = (uint8_t *)MALLOC(req_bytes + 1); - if(!st->buf) { - ASN__DECODE_FAILED; - } - - memcpy(st->buf, ptr, req_bytes); - st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */ - st->size = req_bytes; - - rval.consumed += req_bytes; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -INTEGER_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = sptr; - asn_enc_rval_t er = {0,0,0}; - struct asn_oer_constraint_number_s ct = {0, 0}; - const uint8_t *buf; - const uint8_t *end; - size_t useful_bytes; - size_t req_bytes = 0; - int sign = 0; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.oer_constraints; - if(constraints) ct = constraints->value; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size; - - sign = (buf && buf < end) ? buf[0] & 0x80 : 0; - - /* Ignore 9 leading zeroes or ones */ - if(ct.positive) { - if(sign) { - /* The value given is a signed value. Can't proceed. */ - ASN__ENCODE_FAILED; - } - /* Remove leading zeros. */ - for(; buf + 1 < end; buf++) { - if(buf[0] != 0x0) break; - } - } else { - for(; buf + 1 < end; buf++) { - if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) { - continue; - } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) { - continue; - } - break; - } - } - - useful_bytes = end - buf; - if(ct.width) { - req_bytes = ct.width; - } else { - ssize_t r = oer_serialize_length(useful_bytes, cb, app_key); - if(r < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += r; - req_bytes = useful_bytes; - } - - if(req_bytes < useful_bytes) { - ASN__ENCODE_FAILED; - } - - er.encoded += req_bytes; - - for(; req_bytes > useful_bytes; req_bytes--) { - if(cb(sign?"\xff":"\0", 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - } - - if(cb(buf, useful_bytes, app_key) < 0) { - ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_print.c b/src/tmx/Asn_J2735/src/2020/INTEGER_print.c deleted file mode 100644 index 2d37dee01..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_print.c +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * INTEGER specific human-readable output. - */ -int -INTEGER_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - ssize_t ret; - - (void)ilevel; - - if(!st || !st->buf) - ret = cb("", 8, app_key); - else - ret = INTEGER__dump(td, st, cb, app_key, 0); - - return (ret < 0) ? -1 : 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c b/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c deleted file mode 100644 index fab002385..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_rfill.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -INTEGER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - INTEGER_t *st = *sptr; - const asn_INTEGER_enum_map_t *emap; - size_t emap_len; - intmax_t value; - int find_inside_map; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (INTEGER_t *)CALLOC(1, sizeof(*st)); - if(st == NULL) { - return result_failed; - } - } - - if(specs) { - emap = specs->value2enum; - emap_len = specs->map_count; - if(specs->strict_enumeration) { - find_inside_map = emap_len > 0; - } else { - find_inside_map = emap_len ? asn_random_between(0, 1) : 0; - } - } else { - emap = 0; - emap_len = 0; - find_inside_map = 0; - } - - if(find_inside_map) { - assert(emap_len > 0); - value = emap[asn_random_between(0, emap_len - 1)].nat_value; - } else { - static const long variants[] = { - -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, - -16383, -257, -256, -255, -254, -129, -128, -127, - -126, -1, 0, 1, 126, 127, 128, 129, - 254, 255, 256, 257, 16383, 16384, 16385, 32767, - 32768, 32769, 65534, 65535, 65536, 65537}; - if(specs && specs->field_unsigned) { - assert(variants[18] == 0); - value = variants[asn_random_between( - 18, sizeof(variants) / sizeof(variants[0]) - 1)]; - } else { - value = variants[asn_random_between( - 0, sizeof(variants) / sizeof(variants[0]) - 1)]; - } - - if(!constraints) constraints = &td->encoding_constraints; -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - const asn_per_constraints_t *ct; - - ct = constraints ? constraints->per_constraints : 0; - if(ct && (ct->value.flags & APC_CONSTRAINED)) { - if(value < ct->value.lower_bound || value > ct->value.upper_bound) { - value = asn_random_between(ct->value.lower_bound, - ct->value.upper_bound); - } - } -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - } - - if(asn_imax2INTEGER(st, value)) { - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - return result_failed; - } else { - *sptr = st; - result_ok.length = st->size; - return result_ok; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c b/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c deleted file mode 100644 index ed65385fe..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_uper.c +++ /dev/null @@ -1,236 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -INTEGER_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - INTEGER_t *st = (INTEGER_t *)*sptr; - const asn_per_constraint_t *ct; - int repeat; - - (void)opt_codec_ctx; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - if(ct) { - if(ct->flags & APC_SEMI_CONSTRAINED) { - st->buf = (uint8_t *)CALLOC(1, 2); - if(!st->buf) ASN__DECODE_FAILED; - st->size = 1; - } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { - size_t size = (ct->range_bits + 7) >> 3; - st->buf = (uint8_t *)MALLOC(1 + size + 1); - if(!st->buf) ASN__DECODE_FAILED; - st->size = size; - } - } - - /* X.691-2008/11, #13.2.2, constrained whole number */ - if(ct && ct->flags != APC_UNCONSTRAINED) { - /* #11.5.6 */ - ASN_DEBUG("Integer with range %d bits", ct->range_bits); - if(ct->range_bits >= 0) { - if((size_t)ct->range_bits > 8 * sizeof(uintmax_t)) - ASN__DECODE_FAILED; - - if(specs && specs->field_unsigned) { - uintmax_t uvalue = 0; - if(uper_get_constrained_whole_number(pd, - &uvalue, ct->range_bits)) - ASN__DECODE_STARVED; - ASN_DEBUG("Got value %lu + low %ld", - uvalue, ct->lower_bound); - uvalue += ct->lower_bound; - if(asn_umax2INTEGER(st, uvalue)) - ASN__DECODE_FAILED; - } else { - uintmax_t uvalue = 0; - intmax_t svalue; - if(uper_get_constrained_whole_number(pd, - &uvalue, ct->range_bits)) - ASN__DECODE_STARVED; - ASN_DEBUG("Got value %lu + low %ld", - uvalue, ct->lower_bound); - if(per_imax_range_unrebase(uvalue, ct->lower_bound, - ct->upper_bound, &svalue) - || asn_imax2INTEGER(st, svalue)) { - ASN__DECODE_FAILED; - } - } - return rval; - } - } else { - ASN_DEBUG("Decoding unconstrained integer %s", td->name); - } - - /* X.691, #12.2.3, #12.2.4 */ - do { - ssize_t len = 0; - void *p = NULL; - int ret = 0; - - /* Get the PER length */ - len = uper_get_length(pd, -1, 0, &repeat); - if(len < 0) ASN__DECODE_STARVED; - - p = REALLOC(st->buf, st->size + len + 1); - if(!p) ASN__DECODE_FAILED; - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); - if(ret < 0) ASN__DECODE_STARVED; - st->size += len; - } while(repeat); - st->buf[st->size] = 0; /* JIC */ - - /* #12.2.3 */ - if(ct && ct->lower_bound) { - /* - * TODO: replace by in-place arithmetic. - */ - long value = 0; - if(asn_INTEGER2long(st, &value)) - ASN__DECODE_FAILED; - if(asn_imax2INTEGER(st, value + ct->lower_bound)) - ASN__DECODE_FAILED; - } - - return rval; -} - -asn_enc_rval_t -INTEGER_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const INTEGER_t *st = (const INTEGER_t *)sptr; - const uint8_t *buf; - const uint8_t *end; - const asn_per_constraint_t *ct; - union { - intmax_t s; - uintmax_t u; - } value; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - er.encoded = 0; - - if(ct) { - int inext = 0; - if(specs && specs->field_unsigned) { - if(asn_INTEGER2umax(st, &value.u)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value.u < (uintmax_t)ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value.u < (uintmax_t)ct->lower_bound - || value.u > (uintmax_t)ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%" ASN_PRI_SIZE ") lb %lu ub %lu %s", - value.u, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - } else { - if(asn_INTEGER2imax(st, &value.s)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value.s < ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value.s < ct->lower_bound - || value.s > ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %ld (%02x/%" ASN_PRI_SIZE ") lb %ld ub %ld %s", - value.s, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - } - - /* X.691-11/2008, #13.2.2, test if constrained whole number */ - if(ct && ct->range_bits >= 0) { - uintmax_t v; - /* #11.5.6 -> #11.3 */ - if(specs && specs->field_unsigned) { - if(((uintmax_t)ct->lower_bound > (uintmax_t)(ct->upper_bound) - || (value.u < (uintmax_t)ct->lower_bound)) - || (value.u > (uintmax_t)ct->upper_bound)) { - ASN_DEBUG("Value %lu to-be-encoded is outside the bounds [%lu, %lu]!", - value.u, ct->lower_bound, ct->upper_bound); - ASN__ENCODE_FAILED; - } - v = value.u - (uintmax_t)ct->lower_bound; - } else { - if(per_imax_range_rebase(value.s, ct->lower_bound, ct->upper_bound, &v)) { - ASN__ENCODE_FAILED; - } - } - ASN_DEBUG("Encoding integer %lu with range %d bits", - v, ct->range_bits); - if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(ct && ct->lower_bound) { - ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); - /* TODO: adjust lower bound */ - ASN__ENCODE_FAILED; - } - - for(buf = st->buf, end = st->buf + st->size; buf < end;) { - int need_eom = 0; - ssize_t mayEncode = uper_put_length(po, end - buf, &need_eom); - if(mayEncode < 0) - ASN__ENCODE_FAILED; - if(per_put_many_bits(po, buf, 8 * mayEncode)) - ASN__ENCODE_FAILED; - buf += mayEncode; - if(need_eom && uper_put_length(po, 0, 0)) ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c b/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c deleted file mode 100644 index 4f21c86a9..000000000 --- a/src/tmx/Asn_J2735/src/2020/INTEGER_xer.c +++ /dev/null @@ -1,351 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -struct e2v_key { - const char *start; - const char *stop; - const asn_INTEGER_enum_map_t *vemap; - const unsigned int *evmap; -}; -static int -INTEGER__compar_enum2value(const void *kp, const void *am) { - const struct e2v_key *key = (const struct e2v_key *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - const char *ptr, *end, *name; - - /* Remap the element (sort by different criterion) */ - el = key->vemap + key->evmap[el - key->vemap]; - - /* Compare strings */ - for(ptr = key->start, end = key->stop, name = el->enum_name; - ptr < end; ptr++, name++) { - if(*ptr != *name || !*name) - return *(const unsigned char *)ptr - *(const unsigned char *)name; - } - return name[0] ? -1 : 0; -} - -static const asn_INTEGER_enum_map_t * -INTEGER_map_enum2value(const asn_INTEGER_specifics_t *specs, const char *lstart, - const char *lstop) { - const asn_INTEGER_enum_map_t *el_found; - int count = specs ? specs->map_count : 0; - struct e2v_key key; - const char *lp; - - if(!count) return NULL; - - /* Guaranteed: assert(lstart < lstop); */ - /* Figure out the tag name */ - for(lstart++, lp = lstart; lp < lstop; lp++) { - switch(*lp) { - case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ - case 0x2f: /* '/' */ case 0x3e: /* '>' */ - break; - default: - continue; - } - break; - } - if(lp == lstop) return NULL; /* No tag found */ - lstop = lp; - - key.start = lstart; - key.stop = lstop; - key.vemap = specs->value2enum; - key.evmap = specs->enum2value; - el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, - specs->value2enum, count, sizeof(specs->value2enum[0]), - INTEGER__compar_enum2value); - if(el_found) { - /* Remap enum2value into value2enum */ - el_found = key.vemap + key.evmap[el_found - key.vemap]; - } - return el_found; -} - -static int -INTEGER_st_prealloc(INTEGER_t *st, int min_size) { - void *p = MALLOC(min_size + 1); - if(p) { - void *b = st->buf; - st->size = 0; - st->buf = p; - FREEMEM(b); - return 0; - } else { - return -1; - } -} - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -INTEGER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - INTEGER_t *st = (INTEGER_t *)sptr; - intmax_t dec_value; - intmax_t hex_value = 0; - const char *lp; - const char *lstart = (const char *)chunk_buf; - const char *lstop = lstart + chunk_size; - enum { - ST_LEADSPACE, - ST_SKIPSPHEX, - ST_WAITDIGITS, - ST_DIGITS, - ST_DIGITS_TRAILSPACE, - ST_HEXDIGIT1, - ST_HEXDIGIT2, - ST_HEXDIGITS_TRAILSPACE, - ST_HEXCOLON, - ST_END_ENUM, - ST_UNEXPECTED - } state = ST_LEADSPACE; - const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ - const char *dec_value_end = 0; - - if(chunk_size) - ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", - (long)chunk_size, *lstart, lstop[-1]); - - if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) - return XPBD_SYSTEM_FAILURE; - - /* - * We may have received a tag here. It will be processed inline. - * Use strtoul()-like code and serialize the result. - */ - for(lp = lstart; lp < lstop; lp++) { - int lv = *lp; - switch(lv) { - case 0x09: case 0x0a: case 0x0d: case 0x20: - switch(state) { - case ST_LEADSPACE: - case ST_DIGITS_TRAILSPACE: - case ST_HEXDIGITS_TRAILSPACE: - case ST_SKIPSPHEX: - continue; - case ST_DIGITS: - dec_value_end = lp; - state = ST_DIGITS_TRAILSPACE; - continue; - case ST_HEXCOLON: - state = ST_HEXDIGITS_TRAILSPACE; - continue; - default: - break; - } - break; - case 0x2d: /* '-' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x2b: /* '+' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: - switch(state) { - case ST_DIGITS: continue; - case ST_SKIPSPHEX: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = (lv - 0x30) << 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += (lv - 0x30); - state = ST_HEXCOLON; - st->buf[st->size++] = (uint8_t)hex_value; - continue; - case ST_HEXCOLON: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - dec_value = 0; - dec_value_start = lp; - /* FALL THROUGH */ - case ST_WAITDIGITS: - state = ST_DIGITS; - continue; - default: - break; - } - break; - case 0x3c: /* '<', start of XML encoded enumeration */ - if(state == ST_LEADSPACE) { - const asn_INTEGER_enum_map_t *el; - el = INTEGER_map_enum2value( - (const asn_INTEGER_specifics_t *) - td->specifics, lstart, lstop); - if(el) { - ASN_DEBUG("Found \"%s\" => %ld", - el->enum_name, el->nat_value); - dec_value = el->nat_value; - state = ST_END_ENUM; - lp = lstop - 1; - continue; - } - ASN_DEBUG("Unknown identifier for INTEGER"); - } - return XPBD_BROKEN_ENCODING; - case 0x3a: /* ':' */ - if(state == ST_HEXCOLON) { - /* This colon is expected */ - state = ST_HEXDIGIT1; - continue; - } else if(state == ST_DIGITS) { - /* The colon here means that we have - * decoded the first two hexadecimal - * places as a decimal value. - * Switch decoding mode. */ - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - } else { - ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); - break; - } - /* [A-Fa-f] */ - case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: - case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: - switch(state) { - case ST_SKIPSPHEX: - case ST_LEADSPACE: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - hex_value <<= 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - st->buf[st->size++] = (uint8_t)hex_value; - state = ST_HEXCOLON; - continue; - case ST_DIGITS: - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - default: - break; - } - break; - } - - /* Found extra non-numeric stuff */ - ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", - lv, (long)(lp - lstart)); - state = ST_UNEXPECTED; - break; - } - - switch(state) { - case ST_END_ENUM: - /* Got a complete and valid enumeration encoded as a tag. */ - break; - case ST_DIGITS: - dec_value_end = lstop; - /* FALL THROUGH */ - case ST_DIGITS_TRAILSPACE: - /* The last symbol encountered was a digit. */ - switch(asn_strtoimax_lim(dec_value_start, &dec_value_end, &dec_value)) { - case ASN_STRTOX_OK: - if(specs && specs->field_unsigned && (uintmax_t) dec_value <= ULONG_MAX) { - break; - } else if(dec_value >= LONG_MIN && dec_value <= LONG_MAX) { - break; - } else { - /* - * We model INTEGER on long for XER, - * to avoid rewriting all the tests at once. - */ - ASN_DEBUG("INTEGER exceeds long range"); - } - /* Fall through */ - case ASN_STRTOX_ERROR_RANGE: - ASN_DEBUG("INTEGER decode %s hit range limit", td->name); - return XPBD_DECODER_LIMIT; - case ASN_STRTOX_ERROR_INVAL: - case ASN_STRTOX_EXPECT_MORE: - case ASN_STRTOX_EXTRA_DATA: - return XPBD_BROKEN_ENCODING; - } - break; - case ST_HEXCOLON: - case ST_HEXDIGITS_TRAILSPACE: - st->buf[st->size] = 0; /* Just in case termination */ - return XPBD_BODY_CONSUMED; - case ST_HEXDIGIT1: - case ST_HEXDIGIT2: - case ST_SKIPSPHEX: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - /* Content not found */ - return XPBD_NOT_BODY_IGNORE; - case ST_WAITDIGITS: - case ST_UNEXPECTED: - ASN_DEBUG("INTEGER: No useful digits (state %d)", state); - return XPBD_BROKEN_ENCODING; /* No digits */ - } - - /* - * Convert the result of parsing of enumeration or a straight - * decimal value into a BER representation. - */ - if(asn_imax2INTEGER(st, dec_value)) { - ASN_DEBUG("INTEGER decode %s conversion failed", td->name); - return XPBD_SYSTEM_FAILURE; - } - - return XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -INTEGER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(INTEGER_t), opt_mname, - buf_ptr, size, INTEGER__xer_body_decode); -} - -asn_enc_rval_t -INTEGER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = INTEGER__dump(td, st, cb, app_key, 1); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/ITIScodes.c b/src/tmx/Asn_J2735/src/2020/ITIScodes.c deleted file mode 100644 index 2c2df3961..000000000 --- a/src/tmx/Asn_J2735/src/2020/ITIScodes.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ITIScodes.h" - -int -ITIScodes_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ITIScodes_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodes = { - "ITIScodes", - "ITIScodes", - &asn_OP_NativeInteger, - asn_DEF_ITIScodes_tags_1, - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - asn_DEF_ITIScodes_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ITIScodes_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ITIScodes_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ITIScodes_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c deleted file mode 100644 index 42bd10ff6..000000000 --- a/src/tmx/Asn_J2735/src/2020/ITIScodesAndText.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ITIScodesAndText.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..100)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStext, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct ITIScodesAndText__Member__item), - offsetof(struct ITIScodesAndText__Member__item, _asn_ctx), - offsetof(struct ITIScodesAndText__Member__item, present), - sizeof(((struct ITIScodesAndText__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ITIScodesAndText__Member), - offsetof(struct ITIScodesAndText__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { - sizeof(struct ITIScodesAndText), - offsetof(struct ITIScodesAndText, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { - "ITIScodesAndText", - "ITIScodesAndText", - &asn_OP_SEQUENCE_OF, - asn_DEF_ITIScodesAndText_tags_1, - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ITIScodesAndText_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ITIScodesAndText_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_ITIScodesAndText_1, - 1, /* Single element */ - &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ITIStext.c b/src/tmx/Asn_J2735/src/2020/ITIStext.c deleted file mode 100644 index 4f2e6c29e..000000000 --- a/src/tmx/Asn_J2735/src/2020/ITIStext.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ITIStext.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -ITIStext_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 500UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ITIStext_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..500)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ITIStext_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIStext = { - "ITIStext", - "ITIStext", - &asn_OP_IA5String, - asn_DEF_ITIStext_tags_1, - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - asn_DEF_ITIStext_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ITIStext_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ITIStext_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ITIStext_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c b/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c deleted file mode 100644 index a50f148ec..000000000 --- a/src/tmx/Asn_J2735/src/2020/ITIStextPhrase.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ITIStextPhrase.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -ITIStextPhrase_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 16UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ITIStextPhrase_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase = { - "ITIStextPhrase", - "ITIStextPhrase", - &asn_OP_IA5String, - asn_DEF_ITIStextPhrase_tags_1, - sizeof(asn_DEF_ITIStextPhrase_tags_1) - /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ - asn_DEF_ITIStextPhrase_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIStextPhrase_tags_1) - /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ITIStextPhrase_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ITIStextPhrase_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ITIStextPhrase_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c deleted file mode 100644 index 5ea878799..000000000 --- a/src/tmx/Asn_J2735/src/2020/IncidentResponseEquipment.c +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IncidentResponseEquipment.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { - { 9985, 23, "ground-fire-suppression" }, - { 9986, 22, "heavy-ground-equipment" }, - { 9988, 8, "aircraft" }, - { 9989, 16, "marine-equipment" }, - { 9990, 17, "support-equipment" }, - { 9991, 19, "medical-rescue-unit" }, - { 9993, 5, "other" }, - { 9994, 29, "ground-fire-suppression-other" }, - { 9995, 6, "engine" }, - { 9996, 15, "truck-or-aerial" }, - { 9997, 5, "quint" }, - { 9998, 25, "tanker-pumper-combination" }, - { 10000, 11, "brush-truck" }, - { 10001, 28, "aircraft-rescue-firefighting" }, - { 10004, 28, "heavy-ground-equipment-other" }, - { 10005, 13, "dozer-or-plow" }, - { 10006, 7, "tractor" }, - { 10008, 16, "tanker-or-tender" }, - { 10024, 14, "aircraft-other" }, - { 10025, 26, "aircraft-fixed-wing-tanker" }, - { 10026, 10, "helitanker" }, - { 10027, 10, "helicopter" }, - { 10034, 22, "marine-equipment-other" }, - { 10035, 19, "fire-boat-with-pump" }, - { 10036, 12, "boat-no-pump" }, - { 10044, 23, "support-apparatus-other" }, - { 10045, 27, "breathing-apparatus-support" }, - { 10046, 18, "light-and-air-unit" }, - { 10054, 25, "medical-rescue-unit-other" }, - { 10055, 11, "rescue-unit" }, - { 10056, 24, "urban-search-rescue-unit" }, - { 10057, 17, "high-angle-rescue" }, - { 10058, 17, "crash-fire-rescue" }, - { 10059, 8, "bLS-unit" }, - { 10060, 8, "aLS-unit" }, - { 10075, 19, "mobile-command-post" }, - { 10076, 17, "chief-officer-car" }, - { 10077, 11, "hAZMAT-unit" }, - { 10078, 16, "type-i-hand-crew" }, - { 10079, 17, "type-ii-hand-crew" }, - { 10083, 23, "privately-owned-vehicle" }, - { 10084, 24, "other-apparatus-resource" }, - { 10085, 9, "ambulance" }, - { 10086, 14, "bomb-squad-van" }, - { 10087, 17, "combine-harvester" }, - { 10088, 20, "construction-vehicle" }, - { 10089, 12, "farm-tractor" }, - { 10090, 22, "grass-cutting-machines" }, - { 10091, 22, "hAZMAT-containment-tow" }, - { 10092, 9, "heavy-tow" }, - { 10093, 22, "hedge-cutting-machines" }, - { 10094, 9, "light-tow" }, - { 10095, 12, "mobile-crane" }, - { 10096, 25, "refuse-collection-vehicle" }, - { 10097, 19, "resurfacing-vehicle" }, - { 10098, 12, "road-sweeper" }, - { 10099, 32, "roadside-litter-collection-crews" }, - { 10100, 15, "salvage-vehicle" }, - { 10101, 10, "sand-truck" }, - { 10102, 8, "snowplow" }, - { 10103, 12, "steam-roller" }, - { 10104, 13, "swat-team-van" }, - { 10105, 20, "track-laying-vehicle" }, - { 10106, 15, "unknown-vehicle" }, - { 10107, 20, "white-lining-vehicle" }, - { 10108, 10, "dump-truck" }, - { 10109, 18, "supervisor-vehicle" }, - { 10110, 11, "snow-blower" }, - { 10111, 18, "rotary-snow-blower" }, - { 10112, 11, "road-grader" }, - { 10113, 11, "steam-truck" }, - { 10114, 11, "flatbed-tow" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { - 34, /* aLS-unit(10060) */ - 2, /* aircraft(9988) */ - 19, /* aircraft-fixed-wing-tanker(10025) */ - 18, /* aircraft-other(10024) */ - 13, /* aircraft-rescue-firefighting(10001) */ - 42, /* ambulance(10085) */ - 33, /* bLS-unit(10059) */ - 24, /* boat-no-pump(10036) */ - 43, /* bomb-squad-van(10086) */ - 26, /* breathing-apparatus-support(10045) */ - 12, /* brush-truck(10000) */ - 36, /* chief-officer-car(10076) */ - 44, /* combine-harvester(10087) */ - 45, /* construction-vehicle(10088) */ - 32, /* crash-fire-rescue(10058) */ - 15, /* dozer-or-plow(10005) */ - 65, /* dump-truck(10108) */ - 8, /* engine(9995) */ - 46, /* farm-tractor(10089) */ - 23, /* fire-boat-with-pump(10035) */ - 71, /* flatbed-tow(10114) */ - 47, /* grass-cutting-machines(10090) */ - 0, /* ground-fire-suppression(9985) */ - 7, /* ground-fire-suppression-other(9994) */ - 48, /* hAZMAT-containment-tow(10091) */ - 37, /* hAZMAT-unit(10077) */ - 1, /* heavy-ground-equipment(9986) */ - 14, /* heavy-ground-equipment-other(10004) */ - 49, /* heavy-tow(10092) */ - 50, /* hedge-cutting-machines(10093) */ - 21, /* helicopter(10027) */ - 20, /* helitanker(10026) */ - 31, /* high-angle-rescue(10057) */ - 27, /* light-and-air-unit(10046) */ - 51, /* light-tow(10094) */ - 3, /* marine-equipment(9989) */ - 22, /* marine-equipment-other(10034) */ - 5, /* medical-rescue-unit(9991) */ - 28, /* medical-rescue-unit-other(10054) */ - 35, /* mobile-command-post(10075) */ - 52, /* mobile-crane(10095) */ - 6, /* other(9993) */ - 41, /* other-apparatus-resource(10084) */ - 40, /* privately-owned-vehicle(10083) */ - 10, /* quint(9997) */ - 53, /* refuse-collection-vehicle(10096) */ - 29, /* rescue-unit(10055) */ - 54, /* resurfacing-vehicle(10097) */ - 69, /* road-grader(10112) */ - 55, /* road-sweeper(10098) */ - 56, /* roadside-litter-collection-crews(10099) */ - 68, /* rotary-snow-blower(10111) */ - 57, /* salvage-vehicle(10100) */ - 58, /* sand-truck(10101) */ - 67, /* snow-blower(10110) */ - 59, /* snowplow(10102) */ - 60, /* steam-roller(10103) */ - 70, /* steam-truck(10113) */ - 66, /* supervisor-vehicle(10109) */ - 25, /* support-apparatus-other(10044) */ - 4, /* support-equipment(9990) */ - 61, /* swat-team-van(10104) */ - 17, /* tanker-or-tender(10008) */ - 11, /* tanker-pumper-combination(9998) */ - 62, /* track-laying-vehicle(10105) */ - 16, /* tractor(10006) */ - 9, /* truck-or-aerial(9996) */ - 38, /* type-i-hand-crew(10078) */ - 39, /* type-ii-hand-crew(10079) */ - 63, /* unknown-vehicle(10106) */ - 30, /* urban-search-rescue-unit(10056) */ - 64 /* white-lining-vehicle(10107) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { - asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ - 72, /* Number of elements in the maps */ - 73, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { - "IncidentResponseEquipment", - "IncidentResponseEquipment", - &asn_OP_NativeEnumerated, - asn_DEF_IncidentResponseEquipment_tags_1, - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IncidentResponseEquipment_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IncidentResponseEquipment_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c b/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c deleted file mode 100644 index 9a11cf9f7..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionAccessPoint.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionAccessPoint.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.lane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lane" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.approach), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "approach" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.connection), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connection" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionAccessPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* approach */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* connection */ -}; -asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1 = { - sizeof(struct IntersectionAccessPoint), - offsetof(struct IntersectionAccessPoint, _asn_ctx), - offsetof(struct IntersectionAccessPoint, present), - sizeof(((struct IntersectionAccessPoint *)0)->present), - asn_MAP_IntersectionAccessPoint_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint = { - "IntersectionAccessPoint", - "IntersectionAccessPoint", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IntersectionAccessPoint_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IntersectionAccessPoint_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_IntersectionAccessPoint_1, - 3, /* Elements count */ - &asn_SPC_IntersectionAccessPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c b/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c deleted file mode 100644 index 03e0ec91c..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionCollision.c +++ /dev/null @@ -1,337 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "IntersectionCollision" - * found in "J2735-IntersectionCollision.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionCollision.h" - -#include "BSMcoreData.h" -#include "PathHistory.h" -#include "PathPrediction.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_IntersectionCollision, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct IntersectionCollision__regional), - offsetof(struct IntersectionCollision__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 4, offsetof(struct IntersectionCollision, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionCollision, partOne), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMcoreData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "partOne" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionCollision, path), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "path" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionCollision, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersectionID), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "intersectionID" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ApproachOrLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleEventFlags, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "eventFlag" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionCollision, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionCollision_oms_1[] = { 2, 3, 4, 5, 9 }; -static const ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* partOne */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* intersectionID */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* laneNumber */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* eventFlag */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { - sizeof(struct IntersectionCollision), - offsetof(struct IntersectionCollision, _asn_ctx), - asn_MAP_IntersectionCollision_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_IntersectionCollision_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { - "IntersectionCollision", - "IntersectionCollision", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionCollision_tags_1, - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - asn_DEF_IntersectionCollision_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_IntersectionCollision_1, - 10, /* Elements count */ - &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c deleted file mode 100644 index a22e555ae..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionGeometry.c +++ /dev/null @@ -1,318 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionGeometry.h" - -#include "SpeedLimitList.h" -#include "PreemptPriorityList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_IntersectionGeometry, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct IntersectionGeometry__regional), - offsetof(struct IntersectionGeometry__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneSet" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PreemptPriorityList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "preemptPriorityData" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { - sizeof(struct IntersectionGeometry), - offsetof(struct IntersectionGeometry, _asn_ctx), - asn_MAP_IntersectionGeometry_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { - "IntersectionGeometry", - "IntersectionGeometry", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionGeometry_tags_1, - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_IntersectionGeometry_1, - 9, /* Elements count */ - &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c deleted file mode 100644 index ac670dc8c..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionGeometryList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionGeometryList.h" - -#include "IntersectionGeometry.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionGeometry, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { - sizeof(struct IntersectionGeometryList), - offsetof(struct IntersectionGeometryList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { - "IntersectionGeometryList", - "IntersectionGeometryList", - &asn_OP_SEQUENCE_OF, - asn_DEF_IntersectionGeometryList_tags_1, - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IntersectionGeometryList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IntersectionGeometryList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_IntersectionGeometryList_1, - 1, /* Single element */ - &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionID.c b/src/tmx/Asn_J2735/src/2020/IntersectionID.c deleted file mode 100644 index 51dc59f88..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionID.h" - -int -IntersectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IntersectionID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionID = { - "IntersectionID", - "IntersectionID", - &asn_OP_NativeInteger, - asn_DEF_IntersectionID_tags_1, - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IntersectionID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IntersectionID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - IntersectionID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c deleted file mode 100644 index 1f27c70c5..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionReferenceID.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionReferenceID.h" - -asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, -}; -static const int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { - sizeof(struct IntersectionReferenceID), - offsetof(struct IntersectionReferenceID, _asn_ctx), - asn_MAP_IntersectionReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { - "IntersectionReferenceID", - "IntersectionReferenceID", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionReferenceID_tags_1, - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_IntersectionReferenceID_1, - 2, /* Elements count */ - &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c b/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c deleted file mode 100644 index 4f3379fa6..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionState-addGrpC.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionState-addGrpC.h" - -#include "PrioritizationResponseList.h" -asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionState_addGrpC, activePrioritizations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "activePrioritizations" - }, -}; -static const int asn_MAP_IntersectionState_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_IntersectionState_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1 = { - sizeof(struct IntersectionState_addGrpC), - offsetof(struct IntersectionState_addGrpC, _asn_ctx), - asn_MAP_IntersectionState_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_IntersectionState_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC = { - "IntersectionState-addGrpC", - "IntersectionState-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionState_addGrpC_tags_1, - sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) - /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_IntersectionState_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) - /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_IntersectionState_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_IntersectionState_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionState.c b/src/tmx/Asn_J2735/src/2020/IntersectionState.c deleted file mode 100644 index ebbeff952..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionState.c +++ /dev/null @@ -1,336 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionState.h" - -#include "EnabledLaneList.h" -#include "ManeuverAssistList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_IntersectionState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct IntersectionState__regional), - offsetof(struct IntersectionState__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionState, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStatusObject, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "moy" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EnabledLaneList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "enabledLanes" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "states" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maneuverAssistList" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { - sizeof(struct IntersectionState), - offsetof(struct IntersectionState, _asn_ctx), - asn_MAP_IntersectionState_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_IntersectionState_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionState = { - "IntersectionState", - "IntersectionState", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionState_tags_1, - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - asn_DEF_IntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_IntersectionState_1, - 10, /* Elements count */ - &asn_SPC_IntersectionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c b/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c deleted file mode 100644 index 0ad68cf85..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionStateList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionStateList.h" - -#include "IntersectionState.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IntersectionStateList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { - sizeof(struct IntersectionStateList), - offsetof(struct IntersectionStateList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { - "IntersectionStateList", - "IntersectionStateList", - &asn_OP_SEQUENCE_OF, - asn_DEF_IntersectionStateList_tags_1, - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStateList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IntersectionStateList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IntersectionStateList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_IntersectionStateList_1, - 1, /* Single element */ - &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c deleted file mode 100644 index 2de1dc5fc..000000000 --- a/src/tmx/Asn_J2735/src/2020/IntersectionStatusObject.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IntersectionStatusObject.h" - -int -IntersectionStatusObject_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { - "IntersectionStatusObject", - "IntersectionStatusObject", - &asn_OP_BIT_STRING, - asn_DEF_IntersectionStatusObject_tags_1, - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_IntersectionStatusObject_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_IntersectionStatusObject_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - IntersectionStatusObject_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/IsDolly.c b/src/tmx/Asn_J2735/src/2020/IsDolly.c deleted file mode 100644 index a01864079..000000000 --- a/src/tmx/Asn_J2735/src/2020/IsDolly.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "IsDolly.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_IsDolly_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IsDolly = { - "IsDolly", - "IsDolly", - &asn_OP_BOOLEAN, - asn_DEF_IsDolly_tags_1, - sizeof(asn_DEF_IsDolly_tags_1) - /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ - asn_DEF_IsDolly_tags_1, /* Same as above */ - sizeof(asn_DEF_IsDolly_tags_1) - /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c b/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c deleted file mode 100644 index edcc91cec..000000000 --- a/src/tmx/Asn_J2735/src/2020/Iso3833VehicleType.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Iso3833VehicleType.h" - -int -Iso3833VehicleType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 100L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Iso3833VehicleType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType = { - "Iso3833VehicleType", - "Iso3833VehicleType", - &asn_OP_NativeInteger, - asn_DEF_Iso3833VehicleType_tags_1, - sizeof(asn_DEF_Iso3833VehicleType_tags_1) - /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ - asn_DEF_Iso3833VehicleType_tags_1, /* Same as above */ - sizeof(asn_DEF_Iso3833VehicleType_tags_1) - /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Iso3833VehicleType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Iso3833VehicleType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Iso3833VehicleType_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/J1939data.c b/src/tmx/Asn_J2735/src/2020/J1939data.c deleted file mode 100644 index ef05509ba..000000000 --- a/src/tmx/Asn_J2735/src/2020/J1939data.c +++ /dev/null @@ -1,232 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "J1939data.h" - -#include "TireDataList.h" -#include "AxleWeightList.h" -asn_TYPE_member_t asn_MBR_J1939data_1[] = { - { ATF_POINTER, 10, offsetof(struct J1939data, tires), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireDataList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "tires" - }, - { ATF_POINTER, 9, offsetof(struct J1939data, axles), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleWeightList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "axles" - }, - { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "trailerWeight" - }, - { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CargoWeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "cargoWeight" - }, - { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleTemperature, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "steeringAxleTemperature" - }, - { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLocation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "driveAxleLocation" - }, - { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLiftAirPressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "driveAxleLiftAirPressure" - }, - { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleTemperature, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "driveAxleTemperature" - }, - { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLubePressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "driveAxleLubePressure" - }, - { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleLubePressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "steeringAxleLubePressure" - }, -}; -static const int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axles */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ -}; -asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { - sizeof(struct J1939data), - offsetof(struct J1939data, _asn_ctx), - asn_MAP_J1939data_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_J1939data_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_J1939data = { - "J1939data", - "J1939data", - &asn_OP_SEQUENCE, - asn_DEF_J1939data_tags_1, - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - asn_DEF_J1939data_tags_1, /* Same as above */ - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_J1939data_1, - 10, /* Elements count */ - &asn_SPC_J1939data_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c deleted file mode 100644 index 0e31320f1..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Barrier.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Barrier.h" - -int -LaneAttributes_Barrier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { - "LaneAttributes-Barrier", - "LaneAttributes-Barrier", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Barrier_tags_1, - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Barrier_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Barrier_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Barrier_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c deleted file mode 100644 index d2e15552a..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Bike.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Bike.h" - -int -LaneAttributes_Bike_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { - "LaneAttributes-Bike", - "LaneAttributes-Bike", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Bike_tags_1, - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Bike_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Bike_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Bike_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c deleted file mode 100644 index 07ef319a6..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Crosswalk.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Crosswalk.h" - -int -LaneAttributes_Crosswalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { - "LaneAttributes-Crosswalk", - "LaneAttributes-Crosswalk", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Crosswalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Crosswalk_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Crosswalk_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Crosswalk_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c deleted file mode 100644 index 5d2b60989..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Parking.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Parking.h" - -int -LaneAttributes_Parking_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { - "LaneAttributes-Parking", - "LaneAttributes-Parking", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Parking_tags_1, - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Parking_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Parking_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Parking_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c deleted file mode 100644 index ccdabea46..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Sidewalk.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Sidewalk.h" - -int -LaneAttributes_Sidewalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { - "LaneAttributes-Sidewalk", - "LaneAttributes-Sidewalk", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Sidewalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Sidewalk_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Sidewalk_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Sidewalk_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c deleted file mode 100644 index cbe9458f2..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Striping.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Striping.h" - -int -LaneAttributes_Striping_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { - "LaneAttributes-Striping", - "LaneAttributes-Striping", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Striping_tags_1, - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Striping_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Striping_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Striping_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c deleted file mode 100644 index c94969954..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-TrackedVehicle.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-TrackedVehicle.h" - -int -LaneAttributes_TrackedVehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { - "LaneAttributes-TrackedVehicle", - "LaneAttributes-TrackedVehicle", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_TrackedVehicle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_TrackedVehicle_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c deleted file mode 100644 index 67e597058..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes-Vehicle.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes-Vehicle.h" - -int -LaneAttributes_Vehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 8, 8 } /* (SIZE(8..8,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { - "LaneAttributes-Vehicle", - "LaneAttributes-Vehicle", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Vehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneAttributes_Vehicle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneAttributes_Vehicle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneAttributes_Vehicle_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneAttributes.c b/src/tmx/Asn_J2735/src/2020/LaneAttributes.c deleted file mode 100644 index ba43b0bfb..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneAttributes.c +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneAttributes.h" - -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDirection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "directionalUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneSharing, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sharedWith" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_LaneTypeAttributes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneType" - }, - { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_LaneAttributes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_LaneAttributes_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { - sizeof(struct LaneAttributes), - offsetof(struct LaneAttributes, _asn_ctx), - asn_MAP_LaneAttributes_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_LaneAttributes_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { - "LaneAttributes", - "LaneAttributes", - &asn_OP_SEQUENCE, - asn_DEF_LaneAttributes_tags_1, - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_LaneAttributes_1, - 4, /* Elements count */ - &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c b/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c deleted file mode 100644 index fdb2b669a..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneConnectionID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneConnectionID.h" - -int -LaneConnectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneConnectionID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { - "LaneConnectionID", - "LaneConnectionID", - &asn_OP_NativeInteger, - asn_DEF_LaneConnectionID_tags_1, - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - asn_DEF_LaneConnectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneConnectionID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneConnectionID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneConnectionID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c deleted file mode 100644 index 188e48b7b..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute-addGrpB.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneDataAttribute-addGrpB.h" - -static const ber_tlv_tag_t asn_DEF_LaneDataAttribute_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1 = { - sizeof(struct LaneDataAttribute_addGrpB), - offsetof(struct LaneDataAttribute_addGrpB, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 0, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB = { - "LaneDataAttribute-addGrpB", - "LaneDataAttribute-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_LaneDataAttribute_addGrpB_tags_1, - sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) - /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_LaneDataAttribute_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) - /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_LaneDataAttribute_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c deleted file mode 100644 index 2f2bb5ec0..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneDataAttribute.c +++ /dev/null @@ -1,287 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneDataAttribute.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_LaneDataAttribute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct LaneDataAttribute__regional), - offsetof(struct LaneDataAttribute__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DeltaAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathEndPointAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneCrownPointCenter" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneCrownPointLeft" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneCrownPointRight" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MergeDivergeNodeAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { - sizeof(struct LaneDataAttribute), - offsetof(struct LaneDataAttribute, _asn_ctx), - offsetof(struct LaneDataAttribute, present), - sizeof(((struct LaneDataAttribute *)0)->present), - asn_MAP_LaneDataAttribute_tag2el_1, - 7, /* Count of tags in the map */ - 0, 0, - 7 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { - "LaneDataAttribute", - "LaneDataAttribute", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneDataAttribute_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneDataAttribute_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_LaneDataAttribute_1, - 7, /* Elements count */ - &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c deleted file mode 100644 index 2dd3488e2..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneDataAttributeList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneDataAttributeList.h" - -#include "LaneDataAttribute.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_LaneDataAttribute, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { - sizeof(struct LaneDataAttributeList), - offsetof(struct LaneDataAttributeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { - "LaneDataAttributeList", - "LaneDataAttributeList", - &asn_OP_SEQUENCE_OF, - asn_DEF_LaneDataAttributeList_tags_1, - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneDataAttributeList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneDataAttributeList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_LaneDataAttributeList_1, - 1, /* Single element */ - &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneDirection.c b/src/tmx/Asn_J2735/src/2020/LaneDirection.c deleted file mode 100644 index b0338e8ba..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneDirection.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneDirection.h" - -int -LaneDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 2UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneDirection_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneDirection = { - "LaneDirection", - "LaneDirection", - &asn_OP_BIT_STRING, - asn_DEF_LaneDirection_tags_1, - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - asn_DEF_LaneDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneDirection_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneDirection_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneDirection_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneID.c b/src/tmx/Asn_J2735/src/2020/LaneID.c deleted file mode 100644 index 28cd36ad4..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneID.h" - -int -LaneID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneID = { - "LaneID", - "LaneID", - &asn_OP_NativeInteger, - asn_DEF_LaneID_tags_1, - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - asn_DEF_LaneID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneList.c b/src/tmx/Asn_J2735/src/2020/LaneList.c deleted file mode 100644 index 84cd9fdc3..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneList.h" - -#include "GenericLane.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_LaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { - sizeof(struct LaneList), - offsetof(struct LaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneList = { - "LaneList", - "LaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_LaneList_tags_1, - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - asn_DEF_LaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_LaneList_1, - 1, /* Single element */ - &asn_SPC_LaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneSharing.c b/src/tmx/Asn_J2735/src/2020/LaneSharing.c deleted file mode 100644 index b9aa5a65b..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneSharing.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneSharing.h" - -int -LaneSharing_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 10UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneSharing_constr_1 CC_NOTUSED = { - { 0, 0 }, - 10 /* (SIZE(10..10)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneSharing = { - "LaneSharing", - "LaneSharing", - &asn_OP_BIT_STRING, - asn_DEF_LaneSharing_tags_1, - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - asn_DEF_LaneSharing_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneSharing_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneSharing_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneSharing_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c deleted file mode 100644 index 173244919..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneTypeAttributes.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneTypeAttributes.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Vehicle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Crosswalk, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crosswalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Bike, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "bikeLane" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Sidewalk, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sidewalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Barrier, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "median" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Striping, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "striping" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_TrackedVehicle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "trackedVehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Parking, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "parking" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ -}; -asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { - sizeof(struct LaneTypeAttributes), - offsetof(struct LaneTypeAttributes, _asn_ctx), - offsetof(struct LaneTypeAttributes, present), - sizeof(((struct LaneTypeAttributes *)0)->present), - asn_MAP_LaneTypeAttributes_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - 8 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { - "LaneTypeAttributes", - "LaneTypeAttributes", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneTypeAttributes_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneTypeAttributes_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_LaneTypeAttributes_1, - 8, /* Elements count */ - &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LaneWidth.c b/src/tmx/Asn_J2735/src/2020/LaneWidth.c deleted file mode 100644 index 6c2f65a00..000000000 --- a/src/tmx/Asn_J2735/src/2020/LaneWidth.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LaneWidth.h" - -int -LaneWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LaneWidth_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneWidth = { - "LaneWidth", - "LaneWidth", - &asn_OP_NativeInteger, - asn_DEF_LaneWidth_tags_1, - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - asn_DEF_LaneWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LaneWidth_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LaneWidth_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LaneWidth_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Latitude.c b/src/tmx/Asn_J2735/src/2020/Latitude.c deleted file mode 100644 index a7a44707b..000000000 --- a/src/tmx/Asn_J2735/src/2020/Latitude.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Latitude.h" - -int -Latitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -900000000L && value <= 900000001L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Latitude_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-900000000..900000001) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Latitude_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Latitude = { - "Latitude", - "Latitude", - &asn_OP_NativeInteger, - asn_DEF_Latitude_tags_1, - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - asn_DEF_Latitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Latitude_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Latitude_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Latitude_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c b/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c deleted file mode 100644 index 3ce590877..000000000 --- a/src/tmx/Asn_J2735/src/2020/LatitudeDMS.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LatitudeDMS.h" - -int -LatitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32400000L && value <= 32400000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LatitudeDMS_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-32400000..32400000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { - "LatitudeDMS", - "LatitudeDMS", - &asn_OP_NativeInteger, - asn_DEF_LatitudeDMS_tags_1, - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LatitudeDMS_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LatitudeDMS_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LatitudeDMS_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c deleted file mode 100644 index 0b4d8277e..000000000 --- a/src/tmx/Asn_J2735/src/2020/LatitudeDMS2.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LatitudeDMS2.h" - -asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLat, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "s" - }, -}; -static const ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { - sizeof(struct LatitudeDMS2), - offsetof(struct LatitudeDMS2, _asn_ctx), - asn_MAP_LatitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { - "LatitudeDMS2", - "LatitudeDMS2", - &asn_OP_SEQUENCE, - asn_DEF_LatitudeDMS2_tags_1, - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_LatitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LayerID.c b/src/tmx/Asn_J2735/src/2020/LayerID.c deleted file mode 100644 index 194de2eb5..000000000 --- a/src/tmx/Asn_J2735/src/2020/LayerID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LayerID.h" - -int -LayerID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 100L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LayerID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LayerID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerID = { - "LayerID", - "LayerID", - &asn_OP_NativeInteger, - asn_DEF_LayerID_tags_1, - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - asn_DEF_LayerID_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LayerID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LayerID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LayerID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LayerType.c b/src/tmx/Asn_J2735/src/2020/LayerType.c deleted file mode 100644 index 871222e53..000000000 --- a/src/tmx/Asn_J2735/src/2020/LayerType.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LayerType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LayerType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LayerType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 12, "mixedContent" }, - { 2, 14, "generalMapData" }, - { 3, 16, "intersectionData" }, - { 4, 9, "curveData" }, - { 5, 18, "roadwaySectionData" }, - { 6, 15, "parkingAreaData" }, - { 7, 14, "sharedLaneData" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_LayerType_enum2value_1[] = { - 4, /* curveData(4) */ - 2, /* generalMapData(2) */ - 3, /* intersectionData(3) */ - 1, /* mixedContent(1) */ - 0, /* none(0) */ - 6, /* parkingAreaData(6) */ - 5, /* roadwaySectionData(5) */ - 7 /* sharedLaneData(7) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { - asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerType = { - "LayerType", - "LayerType", - &asn_OP_NativeEnumerated, - asn_DEF_LayerType_tags_1, - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - asn_DEF_LayerType_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LayerType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LayerType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LayerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LightbarInUse.c b/src/tmx/Asn_J2735/src/2020/LightbarInUse.c deleted file mode 100644 index 92ea3f09d..000000000 --- a/src/tmx/Asn_J2735/src/2020/LightbarInUse.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LightbarInUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LightbarInUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 19, "yellowCautionLights" }, - { 4, 16, "schooldBusLights" }, - { 5, 16, "arrowSignsActive" }, - { 6, 17, "slowMovingVehicle" }, - { 7, 9, "freqStops" } -}; -static const unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { - 5, /* arrowSignsActive(5) */ - 7, /* freqStops(7) */ - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 4, /* schooldBusLights(4) */ - 6, /* slowMovingVehicle(6) */ - 0, /* unavailable(0) */ - 3 /* yellowCautionLights(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { - asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { - "LightbarInUse", - "LightbarInUse", - &asn_OP_NativeEnumerated, - asn_DEF_LightbarInUse_tags_1, - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - asn_DEF_LightbarInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LightbarInUse_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LightbarInUse_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Location-quality.c b/src/tmx/Asn_J2735/src/2020/Location-quality.c deleted file mode 100644 index 7ffa9baa5..000000000 --- a/src/tmx/Asn_J2735/src/2020/Location-quality.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Location-quality.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Location_quality_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { - { 0, 13, "loc-qual-bt1m" }, - { 1, 13, "loc-qual-bt5m" }, - { 2, 14, "loc-qual-bt12m" }, - { 3, 14, "loc-qual-bt50m" }, - { 4, 15, "loc-qual-bt125m" }, - { 5, 15, "loc-qual-bt500m" }, - { 6, 16, "loc-qual-bt1250m" }, - { 7, 16, "loc-qual-unknown" } -}; -static const unsigned int asn_MAP_Location_quality_enum2value_1[] = { - 6, /* loc-qual-bt1250m(6) */ - 4, /* loc-qual-bt125m(4) */ - 2, /* loc-qual-bt12m(2) */ - 0, /* loc-qual-bt1m(0) */ - 5, /* loc-qual-bt500m(5) */ - 3, /* loc-qual-bt50m(3) */ - 1, /* loc-qual-bt5m(1) */ - 7 /* loc-qual-unknown(7) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { - asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_quality = { - "Location-quality", - "Location-quality", - &asn_OP_NativeEnumerated, - asn_DEF_Location_quality_tags_1, - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - asn_DEF_Location_quality_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Location_quality_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Location_quality_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_quality_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Location-tech.c b/src/tmx/Asn_J2735/src/2020/Location-tech.c deleted file mode 100644 index fdde718c5..000000000 --- a/src/tmx/Asn_J2735/src/2020/Location-tech.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Location-tech.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Location_tech_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 9 } /* (0..9,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { - { 0, 16, "loc-tech-unknown" }, - { 1, 13, "loc-tech-GNSS" }, - { 2, 13, "loc-tech-DGPS" }, - { 3, 12, "loc-tech-RTK" }, - { 4, 12, "loc-tech-PPP" }, - { 5, 14, "loc-tech-drGPS" }, - { 6, 15, "loc-tech-drDGPS" }, - { 7, 11, "loc-tech-dr" }, - { 8, 12, "loc-tech-nav" }, - { 9, 14, "loc-tech-fault" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_Location_tech_enum2value_1[] = { - 2, /* loc-tech-DGPS(2) */ - 1, /* loc-tech-GNSS(1) */ - 4, /* loc-tech-PPP(4) */ - 3, /* loc-tech-RTK(3) */ - 7, /* loc-tech-dr(7) */ - 6, /* loc-tech-drDGPS(6) */ - 5, /* loc-tech-drGPS(5) */ - 9, /* loc-tech-fault(9) */ - 8, /* loc-tech-nav(8) */ - 0 /* loc-tech-unknown(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { - asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 11, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_tech = { - "Location-tech", - "Location-tech", - &asn_OP_NativeEnumerated, - asn_DEF_Location_tech_tags_1, - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - asn_DEF_Location_tech_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Location_tech_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Location_tech_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_tech_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Longitude.c b/src/tmx/Asn_J2735/src/2020/Longitude.c deleted file mode 100644 index 3e9855526..000000000 --- a/src/tmx/Asn_J2735/src/2020/Longitude.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Longitude.h" - -int -Longitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1799999999L && value <= 1800000001L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Longitude_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-1799999999..1800000001) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Longitude_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Longitude = { - "Longitude", - "Longitude", - &asn_OP_NativeInteger, - asn_DEF_Longitude_tags_1, - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - asn_DEF_Longitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Longitude_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Longitude_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Longitude_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c b/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c deleted file mode 100644 index ee6f12f53..000000000 --- a/src/tmx/Asn_J2735/src/2020/LongitudeDMS.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LongitudeDMS.h" - -int -LongitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -64800000L && value <= 64800000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_LongitudeDMS_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-64800000..64800000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { - "LongitudeDMS", - "LongitudeDMS", - &asn_OP_NativeInteger, - asn_DEF_LongitudeDMS_tags_1, - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_LongitudeDMS_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_LongitudeDMS_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - LongitudeDMS_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c deleted file mode 100644 index a519dff0e..000000000 --- a/src/tmx/Asn_J2735/src/2020/LongitudeDMS2.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "LongitudeDMS2.h" - -asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLong, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "s" - }, -}; -static const ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { - sizeof(struct LongitudeDMS2), - offsetof(struct LongitudeDMS2, _asn_ctx), - asn_MAP_LongitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { - "LongitudeDMS2", - "LongitudeDMS2", - &asn_OP_SEQUENCE, - asn_DEF_LongitudeDMS2_tags_1, - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_LongitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MUTCDCode.c b/src/tmx/Asn_J2735/src/2020/MUTCDCode.c deleted file mode 100644 index 7201e5b20..000000000 --- a/src/tmx/Asn_J2735/src/2020/MUTCDCode.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MUTCDCode.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MUTCDCode_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 10, "regulatory" }, - { 2, 7, "warning" }, - { 3, 11, "maintenance" }, - { 4, 15, "motoristService" }, - { 5, 5, "guide" }, - { 6, 3, "rec" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { - 5, /* guide(5) */ - 3, /* maintenance(3) */ - 4, /* motoristService(4) */ - 0, /* none(0) */ - 6, /* rec(6) */ - 1, /* regulatory(1) */ - 2 /* warning(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { - asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { - "MUTCDCode", - "MUTCDCode", - &asn_OP_NativeEnumerated, - asn_DEF_MUTCDCode_tags_1, - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - asn_DEF_MUTCDCode_tags_1, /* Same as above */ - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MUTCDCode_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MUTCDCode_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c deleted file mode 100644 index cc724b1b2..000000000 --- a/src/tmx/Asn_J2735/src/2020/ManeuverAssistList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ManeuverAssistList.h" - -#include "ConnectionManeuverAssist.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ConnectionManeuverAssist, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { - sizeof(struct ManeuverAssistList), - offsetof(struct ManeuverAssistList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { - "ManeuverAssistList", - "ManeuverAssistList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ManeuverAssistList_tags_1, - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ManeuverAssistList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ManeuverAssistList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_ManeuverAssistList_1, - 1, /* Single element */ - &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c b/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c deleted file mode 100644 index 33688b225..000000000 --- a/src/tmx/Asn_J2735/src/2020/MapData-addGrpC.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MapData-addGrpC.h" - -#include "SignalHeadLocationList.h" -asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct MapData_addGrpC, signalHeadLocations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalHeadLocationList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "signalHeadLocations" - }, -}; -static const int asn_MAP_MapData_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_MapData_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MapData_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1 = { - sizeof(struct MapData_addGrpC), - offsetof(struct MapData_addGrpC, _asn_ctx), - asn_MAP_MapData_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_MapData_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC = { - "MapData-addGrpC", - "MapData-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_MapData_addGrpC_tags_1, - sizeof(asn_DEF_MapData_addGrpC_tags_1) - /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_MapData_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_MapData_addGrpC_tags_1) - /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MapData_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_MapData_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MapData.c b/src/tmx/Asn_J2735/src/2020/MapData.c deleted file mode 100644 index 8595b19bf..000000000 --- a/src/tmx/Asn_J2735/src/2020/MapData.c +++ /dev/null @@ -1,320 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MapData.h" - -#include "IntersectionGeometryList.h" -#include "RoadSegmentList.h" -#include "DataParameters.h" -#include "RestrictionClassList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_MapData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct MapData__regional), - offsetof(struct MapData__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MapData_1[] = { - { ATF_POINTER, 1, offsetof(struct MapData, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgIssueRevision" - }, - { ATF_POINTER, 7, offsetof(struct MapData, layerType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "layerType" - }, - { ATF_POINTER, 6, offsetof(struct MapData, layerID), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "layerID" - }, - { ATF_POINTER, 5, offsetof(struct MapData, intersections), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionGeometryList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "intersections" - }, - { ATF_POINTER, 4, offsetof(struct MapData, roadSegments), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "roadSegments" - }, - { ATF_POINTER, 3, offsetof(struct MapData, dataParameters), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DataParameters, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dataParameters" - }, - { ATF_POINTER, 2, offsetof(struct MapData, restrictionList), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "restrictionList" - }, - { ATF_POINTER, 1, offsetof(struct MapData, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MapData_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgIssueRevision */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* layerType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerID */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadSegments */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataParameters */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* restrictionList */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { - sizeof(struct MapData), - offsetof(struct MapData, _asn_ctx), - asn_MAP_MapData_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_MapData_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MapData = { - "MapData", - "MapData", - &asn_OP_SEQUENCE, - asn_DEF_MapData_tags_1, - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - asn_DEF_MapData_tags_1, /* Same as above */ - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MapData_1, - 9, /* Elements count */ - &asn_SPC_MapData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c deleted file mode 100644 index c590cb20d..000000000 --- a/src/tmx/Asn_J2735/src/2020/MaxTimetoChange.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MaxTimetoChange.h" - -int -MaxTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 2402L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..2402) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { - "MaxTimetoChange", - "MaxTimetoChange", - &asn_OP_NativeInteger, - asn_DEF_MaxTimetoChange_tags_1, - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MaxTimetoChange_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MaxTimetoChange_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MaxTimetoChange_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c deleted file mode 100644 index cea87fe4b..000000000 --- a/src/tmx/Asn_J2735/src/2020/MergeDivergeNodeAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MergeDivergeNodeAngle.h" - -int -MergeDivergeNodeAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180L && value <= 180L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-180..180) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { - "MergeDivergeNodeAngle", - "MergeDivergeNodeAngle", - &asn_OP_NativeInteger, - asn_DEF_MergeDivergeNodeAngle_tags_1, - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MergeDivergeNodeAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MergeDivergeNodeAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MergeDivergeNodeAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MessageBLOB.c b/src/tmx/Asn_J2735/src/2020/MessageBLOB.c deleted file mode 100644 index 139d9f4c9..000000000 --- a/src/tmx/Asn_J2735/src/2020/MessageBLOB.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MessageBLOB.h" - -int -MessageBLOB_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 10UL && size <= 2000UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MessageBLOB_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(10..2000)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_MessageBLOB_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MessageBLOB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MessageBLOB = { - "MessageBLOB", - "MessageBLOB", - &asn_OP_OCTET_STRING, - asn_DEF_MessageBLOB_tags_1, - sizeof(asn_DEF_MessageBLOB_tags_1) - /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ - asn_DEF_MessageBLOB_tags_1, /* Same as above */ - sizeof(asn_DEF_MessageBLOB_tags_1) - /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MessageBLOB_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MessageBLOB_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MessageBLOB_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MessageFrame.c b/src/tmx/Asn_J2735/src/2020/MessageFrame.c deleted file mode 100644 index 8ca45438c..000000000 --- a/src/tmx/Asn_J2735/src/2020/MessageFrame.c +++ /dev/null @@ -1,872 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MessageFrame" - * found in "J2735-MessageFrame.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MessageFrame.h" - -static const long asn_VAL_1_basicSafetyMessage = 20; -static const long asn_VAL_2_mapData = 18; -static const long asn_VAL_3_signalPhaseAndTimingMessage = 19; -static const long asn_VAL_4_commonSafetyRequest = 21; -static const long asn_VAL_5_emergencyVehicleAlert = 22; -static const long asn_VAL_6_intersectionCollision = 23; -static const long asn_VAL_7_nmeaCorrections = 24; -static const long asn_VAL_8_probeDataManagement = 25; -static const long asn_VAL_9_probeVehicleData = 26; -static const long asn_VAL_10_roadSideAlert = 27; -static const long asn_VAL_11_rtcmCorrections = 28; -static const long asn_VAL_12_signalRequestMessage = 29; -static const long asn_VAL_13_signalStatusMessage = 30; -static const long asn_VAL_14_travelerInformation = 31; -static const long asn_VAL_15_personalSafetyMessage = 32; -static const long asn_VAL_16_testMessage00 = 240; -static const long asn_VAL_17_testMessage01 = 241; -static const long asn_VAL_18_testMessage02 = 242; -static const long asn_VAL_19_testMessage03 = 243; -static const long asn_VAL_20_testMessage04 = 244; -static const long asn_VAL_21_testMessage05 = 245; -static const long asn_VAL_22_testMessage06 = 246; -static const long asn_VAL_23_testMessage07 = 247; -static const long asn_VAL_24_testMessage08 = 248; -static const long asn_VAL_25_testMessage09 = 249; -static const long asn_VAL_26_testMessage10 = 250; -static const long asn_VAL_27_testMessage11 = 251; -static const long asn_VAL_28_testMessage12 = 252; -static const long asn_VAL_29_testMessage13 = 253; -static const long asn_VAL_30_testMessage14 = 254; -static const long asn_VAL_31_testMessage15 = 255; -static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, - { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_2_mapData }, - { "&Type", aioc__type, &asn_DEF_MapData }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_3_signalPhaseAndTimingMessage }, - { "&Type", aioc__type, &asn_DEF_SPAT }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_4_commonSafetyRequest }, - { "&Type", aioc__type, &asn_DEF_CommonSafetyRequest }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_5_emergencyVehicleAlert }, - { "&Type", aioc__type, &asn_DEF_EmergencyVehicleAlert }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_6_intersectionCollision }, - { "&Type", aioc__type, &asn_DEF_IntersectionCollision }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_7_nmeaCorrections }, - { "&Type", aioc__type, &asn_DEF_NMEAcorrections }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_8_probeDataManagement }, - { "&Type", aioc__type, &asn_DEF_ProbeDataManagement }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_9_probeVehicleData }, - { "&Type", aioc__type, &asn_DEF_ProbeVehicleData }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_10_roadSideAlert }, - { "&Type", aioc__type, &asn_DEF_RoadSideAlert }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_11_rtcmCorrections }, - { "&Type", aioc__type, &asn_DEF_RTCMcorrections }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_12_signalRequestMessage }, - { "&Type", aioc__type, &asn_DEF_SignalRequestMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_13_signalStatusMessage }, - { "&Type", aioc__type, &asn_DEF_SignalStatusMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_14_travelerInformation }, - { "&Type", aioc__type, &asn_DEF_TravelerInformation }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_15_personalSafetyMessage }, - { "&Type", aioc__type, &asn_DEF_PersonalSafetyMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_16_testMessage00 }, - { "&Type", aioc__type, &asn_DEF_TestMessage00 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_17_testMessage01 }, - { "&Type", aioc__type, &asn_DEF_TestMessage01 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_18_testMessage02 }, - { "&Type", aioc__type, &asn_DEF_TestMessage02 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_19_testMessage03 }, - { "&Type", aioc__type, &asn_DEF_TestMessage03 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_20_testMessage04 }, - { "&Type", aioc__type, &asn_DEF_TestMessage04 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_21_testMessage05 }, - { "&Type", aioc__type, &asn_DEF_TestMessage05 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_22_testMessage06 }, - { "&Type", aioc__type, &asn_DEF_TestMessage06 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_23_testMessage07 }, - { "&Type", aioc__type, &asn_DEF_TestMessage07 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_24_testMessage08 }, - { "&Type", aioc__type, &asn_DEF_TestMessage08 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_25_testMessage09 }, - { "&Type", aioc__type, &asn_DEF_TestMessage09 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_26_testMessage10 }, - { "&Type", aioc__type, &asn_DEF_TestMessage10 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_27_testMessage11 }, - { "&Type", aioc__type, &asn_DEF_TestMessage11 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_28_testMessage12 }, - { "&Type", aioc__type, &asn_DEF_TestMessage12 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_29_testMessage13 }, - { "&Type", aioc__type, &asn_DEF_TestMessage13 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, - { "&Type", aioc__type, &asn_DEF_TestMessage14 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, - { "&Type", aioc__type, &asn_DEF_TestMessage15 } -}; -static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { - { 31, 2, asn_IOS_MessageTypes_1_rows } -}; -static int -memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_MessageFrame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_MessageTypes_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MessageFrame, messageId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_messageId_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_messageId_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_value_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_value_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_value_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.BasicSafetyMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_BasicSafetyMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "BasicSafetyMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.MapData), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MapData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "MapData" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SPAT), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SPAT, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SPAT" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.CommonSafetyRequest), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_CommonSafetyRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "CommonSafetyRequest" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.EmergencyVehicleAlert), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_EmergencyVehicleAlert, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "EmergencyVehicleAlert" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.IntersectionCollision), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionCollision, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "IntersectionCollision" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.NMEAcorrections), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NMEAcorrections, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "NMEAcorrections" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeDataManagement), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ProbeDataManagement, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "ProbeDataManagement" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeVehicleData), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ProbeVehicleData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "ProbeVehicleData" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RoadSideAlert), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RoadSideAlert, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "RoadSideAlert" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RTCMcorrections), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RTCMcorrections, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "RTCMcorrections" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalRequestMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalRequestMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SignalRequestMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalStatusMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatusMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SignalStatusMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TravelerInformation), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TravelerInformation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TravelerInformation" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.PersonalSafetyMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PersonalSafetyMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "PersonalSafetyMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage00), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage00, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage00" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage01), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage01, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage01" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage02), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage02, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage02" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage03), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage03, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage03" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage04), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage04, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage04" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage05), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage05, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage05" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage06), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage06, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage06" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage07), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage07, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage07" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage08), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage08, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage08" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage09), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage09, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage09" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage10), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage10" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage11), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage11" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage12), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage12" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage13), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage13, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage13" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage14), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage14" - }, - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage15), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage15, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "TestMessage15" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 30 }, /* BasicSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 29 }, /* MapData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 28 }, /* SPAT */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 27 }, /* CommonSafetyRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 26 }, /* EmergencyVehicleAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 25 }, /* IntersectionCollision */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 24 }, /* NMEAcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 23 }, /* ProbeDataManagement */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 22 }, /* ProbeVehicleData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 21 }, /* RoadSideAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 20 }, /* RTCMcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 19 }, /* SignalRequestMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 18 }, /* SignalStatusMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 17 }, /* TravelerInformation */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 16 }, /* PersonalSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 15 }, /* TestMessage00 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 14 }, /* TestMessage01 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 13 }, /* TestMessage02 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 12 }, /* TestMessage03 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 11 }, /* TestMessage04 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 10 }, /* TestMessage05 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 9 }, /* TestMessage06 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 8 }, /* TestMessage07 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 7 }, /* TestMessage08 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 6 }, /* TestMessage09 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 5 }, /* TestMessage10 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 4 }, /* TestMessage11 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 3 }, /* TestMessage12 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 2 }, /* TestMessage13 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 1 }, /* TestMessage14 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 0 } /* TestMessage15 */ -}; -static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { - sizeof(struct MessageFrame__value), - offsetof(struct MessageFrame__value, _asn_ctx), - offsetof(struct MessageFrame__value, present), - sizeof(((struct MessageFrame__value *)0)->present), - asn_MAP_value_tag2el_3, - 31, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_3 = { - "value", - "value", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_value_3, - 31, /* Elements count */ - &asn_SPC_value_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_MessageFrame_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame, messageId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_messageId_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_messageId_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_messageId_constraint_1 - }, - 0, 0, /* No default value */ - "messageId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct MessageFrame, value), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_value_3, - select_MessageFrame_value_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_value_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_value_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_value_constraint_1 - }, - 0, 0, /* No default value */ - "value" - }, -}; -static const ber_tlv_tag_t asn_DEF_MessageFrame_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MessageFrame_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* value */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MessageFrame_specs_1 = { - sizeof(struct MessageFrame), - offsetof(struct MessageFrame, _asn_ctx), - asn_MAP_MessageFrame_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MessageFrame = { - "MessageFrame", - "MessageFrame", - &asn_OP_SEQUENCE, - asn_DEF_MessageFrame_tags_1, - sizeof(asn_DEF_MessageFrame_tags_1) - /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ - asn_DEF_MessageFrame_tags_1, /* Same as above */ - sizeof(asn_DEF_MessageFrame_tags_1) - /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MessageFrame_1, - 2, /* Elements count */ - &asn_SPC_MessageFrame_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c b/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c deleted file mode 100644 index 20dd30f1c..000000000 --- a/src/tmx/Asn_J2735/src/2020/MinTimetoChange.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MinTimetoChange.h" - -int -MinTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 2402L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MinTimetoChange_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..2402) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { - "MinTimetoChange", - "MinTimetoChange", - &asn_OP_NativeInteger, - asn_DEF_MinTimetoChange_tags_1, - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MinTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MinTimetoChange_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MinTimetoChange_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MinTimetoChange_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Minute.c b/src/tmx/Asn_J2735/src/2020/Minute.c deleted file mode 100644 index bb5f3459a..000000000 --- a/src/tmx/Asn_J2735/src/2020/Minute.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Minute.h" - -int -Minute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Minute_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Minute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Minute = { - "Minute", - "Minute", - &asn_OP_NativeInteger, - asn_DEF_Minute_tags_1, - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - asn_DEF_Minute_tags_1, /* Same as above */ - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Minute_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Minute_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Minute_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c deleted file mode 100644 index 0d046548e..000000000 --- a/src/tmx/Asn_J2735/src/2020/MinuteOfTheYear.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MinuteOfTheYear.h" - -int -MinuteOfTheYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 527040L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { - { 4, 1 } /* (0..527040) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { - "MinuteOfTheYear", - "MinuteOfTheYear", - &asn_OP_NativeInteger, - asn_DEF_MinuteOfTheYear_tags_1, - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MinuteOfTheYear_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MinuteOfTheYear_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MinuteOfTheYear_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MinutesAngle.c b/src/tmx/Asn_J2735/src/2020/MinutesAngle.c deleted file mode 100644 index f56577371..000000000 --- a/src/tmx/Asn_J2735/src/2020/MinutesAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MinutesAngle.h" - -int -MinutesAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 59L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MinutesAngle_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..59) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { - "MinutesAngle", - "MinutesAngle", - &asn_OP_NativeInteger, - asn_DEF_MinutesAngle_tags_1, - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - asn_DEF_MinutesAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MinutesAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MinutesAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MinutesAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MinutesDuration.c b/src/tmx/Asn_J2735/src/2020/MinutesDuration.c deleted file mode 100644 index ecda6c639..000000000 --- a/src/tmx/Asn_J2735/src/2020/MinutesDuration.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MinutesDuration.h" - -int -MinutesDuration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MinutesDuration_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { - "MinutesDuration", - "MinutesDuration", - &asn_OP_NativeInteger, - asn_DEF_MinutesDuration_tags_1, - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - asn_DEF_MinutesDuration_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MinutesDuration_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MinutesDuration_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MinutesDuration_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Month.c b/src/tmx/Asn_J2735/src/2020/Month.c deleted file mode 100644 index ec0f60f58..000000000 --- a/src/tmx/Asn_J2735/src/2020/Month.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Month.h" - -int -Month_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Month_constr_1 CC_NOTUSED = { - { 1, 1 } /* (1..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Month_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Month_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Month = { - "Month", - "Month", - &asn_OP_NativeInteger, - asn_DEF_Month_tags_1, - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - asn_DEF_Month_tags_1, /* Same as above */ - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Month_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Month_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Month_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c deleted file mode 100644 index 0949fdc50..000000000 --- a/src/tmx/Asn_J2735/src/2020/MotorizedPropelledType.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MotorizedPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 10, "wheelChair" }, - { 3, 7, "bicycle" }, - { 4, 7, "scooter" }, - { 5, 19, "selfBalancingDevice" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { - 3, /* bicycle(3) */ - 1, /* otherTypes(1) */ - 4, /* scooter(4) */ - 5, /* selfBalancingDevice(5) */ - 0, /* unavailable(0) */ - 2 /* wheelChair(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { - asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { - "MotorizedPropelledType", - "MotorizedPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_MotorizedPropelledType_tags_1, - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MotorizedPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MotorizedPropelledType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c b/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c deleted file mode 100644 index 3b1e3de10..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementEvent-addGrpB.c +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementEvent-addGrpB.h" - -asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[] = { - { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementEvent_addGrpB, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinTimetoChange, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct MovementEvent_addGrpB, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MaxTimetoChange, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct MovementEvent_addGrpB, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct MovementEvent_addGrpB, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nextTime" - }, -}; -static const int asn_MAP_MovementEvent_addGrpB_oms_1[] = { 0, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_MovementEvent_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1 = { - sizeof(struct MovementEvent_addGrpB), - offsetof(struct MovementEvent_addGrpB, _asn_ctx), - asn_MAP_MovementEvent_addGrpB_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_MovementEvent_addGrpB_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB = { - "MovementEvent-addGrpB", - "MovementEvent-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_MovementEvent_addGrpB_tags_1, - sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) - /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_MovementEvent_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) - /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MovementEvent_addGrpB_1, - 6, /* Elements count */ - &asn_SPC_MovementEvent_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementEvent.c b/src/tmx/Asn_J2735/src/2020/MovementEvent.c deleted file mode 100644 index f23d5313f..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementEvent.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementEvent.h" - -#include "TimeChangeDetails.h" -#include "AdvisorySpeedList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_MovementEvent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct MovementEvent__regional), - offsetof(struct MovementEvent__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementPhaseState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "eventState" - }, - { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeChangeDetails, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timing" - }, - { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speeds" - }, - { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { - sizeof(struct MovementEvent), - offsetof(struct MovementEvent, _asn_ctx), - asn_MAP_MovementEvent_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_MovementEvent_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEvent = { - "MovementEvent", - "MovementEvent", - &asn_OP_SEQUENCE, - asn_DEF_MovementEvent_tags_1, - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - asn_DEF_MovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MovementEvent_1, - 4, /* Elements count */ - &asn_SPC_MovementEvent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementEventList.c b/src/tmx/Asn_J2735/src/2020/MovementEventList.c deleted file mode 100644 index 5fba39574..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementEventList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementEventList.h" - -#include "MovementEvent.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MovementEventList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementEvent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { - sizeof(struct MovementEventList), - offsetof(struct MovementEventList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEventList = { - "MovementEventList", - "MovementEventList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MovementEventList_tags_1, - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - asn_DEF_MovementEventList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MovementEventList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MovementEventList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_MovementEventList_1, - 1, /* Single element */ - &asn_SPC_MovementEventList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementList.c b/src/tmx/Asn_J2735/src/2020/MovementList.c deleted file mode 100644 index e60662f88..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementList.h" - -#include "MovementState.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MovementList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MovementList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_MovementList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { - sizeof(struct MovementList), - offsetof(struct MovementList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementList = { - "MovementList", - "MovementList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MovementList_tags_1, - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - asn_DEF_MovementList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MovementList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MovementList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_MovementList_1, - 1, /* Single element */ - &asn_SPC_MovementList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c b/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c deleted file mode 100644 index eb047813b..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementPhaseState.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementPhaseState.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MovementPhaseState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 4, "dark" }, - { 2, 17, "stop-Then-Proceed" }, - { 3, 15, "stop-And-Remain" }, - { 4, 12, "pre-Movement" }, - { 5, 27, "permissive-Movement-Allowed" }, - { 6, 26, "protected-Movement-Allowed" }, - { 7, 20, "permissive-clearance" }, - { 8, 19, "protected-clearance" }, - { 9, 27, "caution-Conflicting-Traffic" } -}; -static const unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { - 9, /* caution-Conflicting-Traffic(9) */ - 1, /* dark(1) */ - 5, /* permissive-Movement-Allowed(5) */ - 7, /* permissive-clearance(7) */ - 4, /* pre-Movement(4) */ - 6, /* protected-Movement-Allowed(6) */ - 8, /* protected-clearance(8) */ - 3, /* stop-And-Remain(3) */ - 2, /* stop-Then-Proceed(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { - asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { - "MovementPhaseState", - "MovementPhaseState", - &asn_OP_NativeEnumerated, - asn_DEF_MovementPhaseState_tags_1, - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - asn_DEF_MovementPhaseState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MovementPhaseState_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MovementPhaseState_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MovementState.c b/src/tmx/Asn_J2735/src/2020/MovementState.c deleted file mode 100644 index 3dd195049..000000000 --- a/src/tmx/Asn_J2735/src/2020/MovementState.c +++ /dev/null @@ -1,245 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MovementState.h" - -#include "ManeuverAssistList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_MovementState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct MovementState__regional), - offsetof(struct MovementState__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MovementState_1[] = { - { ATF_POINTER, 1, offsetof(struct MovementState, movementName), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "movementName" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "signalGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementEventList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "state-time-speed" - }, - { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maneuverAssistList" - }, - { ATF_POINTER, 1, offsetof(struct MovementState, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { - sizeof(struct MovementState), - offsetof(struct MovementState, _asn_ctx), - asn_MAP_MovementState_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_MovementState_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementState = { - "MovementState", - "MovementState", - &asn_OP_SEQUENCE, - asn_DEF_MovementState_tags_1, - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - asn_DEF_MovementState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_MovementState_1, - 5, /* Elements count */ - &asn_SPC_MovementState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MsgCRC.c b/src/tmx/Asn_J2735/src/2020/MsgCRC.c deleted file mode 100644 index d0a8baefe..000000000 --- a/src/tmx/Asn_J2735/src/2020/MsgCRC.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MsgCRC.h" - -int -MsgCRC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MsgCRC_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MsgCRC = { - "MsgCRC", - "MsgCRC", - &asn_OP_OCTET_STRING, - asn_DEF_MsgCRC_tags_1, - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - asn_DEF_MsgCRC_tags_1, /* Same as above */ - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MsgCRC_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MsgCRC_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - MsgCRC_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c deleted file mode 100644 index 2113a68fc..000000000 --- a/src/tmx/Asn_J2735/src/2020/MultiVehicleResponse.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "MultiVehicleResponse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "singleVehicle" }, - { 2, 12, "multiVehicle" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { - 2, /* multiVehicle(2) */ - 3, /* reserved(3) */ - 1, /* singleVehicle(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { - asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { - "MultiVehicleResponse", - "MultiVehicleResponse", - &asn_OP_NativeEnumerated, - asn_DEF_MultiVehicleResponse_tags_1, - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_MultiVehicleResponse_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_MultiVehicleResponse_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c deleted file mode 100644 index feaef4206..000000000 --- a/src/tmx/Asn_J2735/src/2020/NMEA-MsgType.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NMEA-MsgType.h" - -int -NMEA_MsgType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { - "NMEA-MsgType", - "NMEA-MsgType", - &asn_OP_NativeInteger, - asn_DEF_NMEA_MsgType_tags_1, - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NMEA_MsgType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NMEA_MsgType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NMEA_MsgType_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c b/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c deleted file mode 100644 index 22ef9c27a..000000000 --- a/src/tmx/Asn_J2735/src/2020/NMEA-Payload.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NMEA-Payload.h" - -int -NMEA_Payload_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 1023UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NMEA_Payload_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1023)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { - "NMEA-Payload", - "NMEA-Payload", - &asn_OP_OCTET_STRING, - asn_DEF_NMEA_Payload_tags_1, - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Payload_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NMEA_Payload_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NMEA_Payload_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NMEA_Payload_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c b/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c deleted file mode 100644 index 3ac777642..000000000 --- a/src/tmx/Asn_J2735/src/2020/NMEA-Revision.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NMEA-Revision.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NMEA_Revision_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "reserved" }, - { 2, 4, "rev1" }, - { 3, 4, "rev2" }, - { 4, 4, "rev3" }, - { 5, 4, "rev4" }, - { 6, 4, "rev5" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { - 1, /* reserved(1) */ - 2, /* rev1(2) */ - 3, /* rev2(3) */ - 4, /* rev3(4) */ - 5, /* rev4(5) */ - 6, /* rev5(6) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { - asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { - "NMEA-Revision", - "NMEA-Revision", - &asn_OP_NativeEnumerated, - asn_DEF_NMEA_Revision_tags_1, - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NMEA_Revision_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NMEA_Revision_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c b/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c deleted file mode 100644 index 11e650c93..000000000 --- a/src/tmx/Asn_J2735/src/2020/NMEAcorrections.c +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NMEAcorrections.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_NMEAcorrections, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct NMEAcorrections__regional), - offsetof(struct NMEAcorrections__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NMEAcorrections_1[] = { - { ATF_POINTER, 4, offsetof(struct NMEAcorrections, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 3, offsetof(struct NMEAcorrections, rev), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Revision, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rev" - }, - { ATF_POINTER, 2, offsetof(struct NMEAcorrections, msg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_MsgType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msg" - }, - { ATF_POINTER, 1, offsetof(struct NMEAcorrections, wdCount), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wdCount" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEAcorrections, payload), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Payload, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "payload" - }, - { ATF_POINTER, 1, offsetof(struct NMEAcorrections, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NMEAcorrections_oms_1[] = { 0, 1, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_NMEAcorrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NMEAcorrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* payload */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1 = { - sizeof(struct NMEAcorrections), - offsetof(struct NMEAcorrections, _asn_ctx), - asn_MAP_NMEAcorrections_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_NMEAcorrections_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NMEAcorrections = { - "NMEAcorrections", - "NMEAcorrections", - &asn_OP_SEQUENCE, - asn_DEF_NMEAcorrections_tags_1, - sizeof(asn_DEF_NMEAcorrections_tags_1) - /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ - asn_DEF_NMEAcorrections_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEAcorrections_tags_1) - /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_NMEAcorrections_1, - 6, /* Elements count */ - &asn_SPC_NMEAcorrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c deleted file mode 100644 index aee450c17..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated.c +++ /dev/null @@ -1,108 +0,0 @@ -/*- - * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeEnumerated basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_operation_t asn_OP_NativeEnumerated = { - NativeInteger_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - NativeInteger_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - NativeInteger_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - NativeInteger_decode_ber, - NativeInteger_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - NativeInteger_decode_xer, - NativeEnumerated_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - NativeEnumerated_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - NativeEnumerated_decode_oer, - NativeEnumerated_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - NativeEnumerated_decode_uper, - NativeEnumerated_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - NativeEnumerated_decode_aper, - NativeEnumerated_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - NativeEnumerated_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { - "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ - "ENUMERATED", - &asn_OP_NativeEnumerated, - asn_DEF_NativeEnumerated_tags, - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - asn_DEF_NativeEnumerated_tags, /* Same as above */ - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -int -NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { - const asn_INTEGER_enum_map_t *a = ap; - const asn_INTEGER_enum_map_t *b = bp; - if(a->nat_value == b->nat_value) - return 0; - if(a->nat_value < b->nat_value) - return -1; - return 1; -} -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c deleted file mode 100644 index 5c4c2561d..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_aper.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -NativeEnumerated_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - long *native = (long *)*sptr; - const asn_per_constraint_t *ct; - long value; - - (void)opt_codec_ctx; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__DECODE_FAILED; /* Mandatory! */ - if(!specs) ASN__DECODE_FAILED; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); - - if(ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - /* Deal with APER padding */ - if(ct && ct->upper_bound >= 255) { - int padding = 0; - padding = (8 - (pd->moved % 8)) % 8; - ASN_DEBUG("For NativeEnumerated %s,offset = %zu Padding bits = %d", - td->name, pd->moved, padding); - ASN_DEBUG("For NativeEnumerated %s, upper bound = %llu", - td->name, (unsigned long long)ct->upper_bound); - if(padding > 0) - per_get_few_bits(pd, padding); - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - if(value >= (specs->extension - ? specs->extension - 1 : specs->map_count)) - ASN__DECODE_FAILED; - } else { - if(!specs->extension) - ASN__DECODE_FAILED; - /* - * X.691, #10.6: normally small non-negative whole number; - */ - - /* XXX handle indefinite index length > 64k */ - value = aper_get_nsnnwn(pd, 65537); - if(value < 0) ASN__DECODE_STARVED; - value += specs->extension - 1; - //if(value >= specs->map_count) - // ASN__DECODE_FAILED; - if(value >= specs->map_count) { - ASN_DEBUG("Decoded unknown index value %s = %ld", td->name, value); - /* unknown index. Workaround => set the first enumeration value */ - *native = specs->value2enum[0].nat_value; - return rval; - } - } - - *native = specs->value2enum[value].nat_value; - ASN_DEBUG("Decoded %s = %ld", td->name, *native); - - return rval; -} - -asn_enc_rval_t -NativeEnumerated_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native, value; - const asn_per_constraint_t *ct; - int inext = 0, range_bits = 1; - asn_INTEGER_enum_map_t key; - asn_INTEGER_enum_map_t *kf; - - if(!sptr) ASN__ENCODE_FAILED; - if(!specs) ASN__ENCODE_FAILED; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__ENCODE_FAILED; /* Mandatory! */ - - ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); - - er.encoded = 0; - - native = *(const long *)sptr; - if(native < 0) ASN__ENCODE_FAILED; - - key.nat_value = native; - kf = bsearch(&key, specs->value2enum, specs->map_count, - sizeof(key), NativeEnumerated__compar_value2enum); - if(!kf) { - ASN_DEBUG("No element corresponds to %ld", native); - ASN__ENCODE_FAILED; - } - value = kf - specs->value2enum; - - if(ct->range_bits >= 0) { - int cmpWith = specs->extension - ? specs->extension - 1 : specs->map_count; - if(value >= cmpWith) - inext = 1; - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) range_bits = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - - if(range_bits && ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, value, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(!specs->extension) - ASN__ENCODE_FAILED; - - /* - * X.691, #10.6: normally small non-negative whole number; - */ - ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", - value, specs->extension, inext, - value - (inext ? (specs->extension - 1) : 0)); - if(aper_put_nsnnwn(po, - ct->upper_bound - ct->lower_bound + 1, - value - (inext ? (specs->extension - 1) : 0))) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c deleted file mode 100644 index 046afe9e8..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_jer.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -NativeEnumerated_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - const asn_INTEGER_enum_map_t *el; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - el = INTEGER_map_value2enum(specs, *native); - if(el) { - er.encoded = - asn__format_to_callback(cb, app_key, "\"%s\"", el->enum_name); - if(er.encoded < 0) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } else { - ASN_DEBUG( - "ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - ASN__ENCODE_FAILED; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c deleted file mode 100644 index 52dbcb860..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_oer.c +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static long -asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) { - unsigned long value; - - /* Perform the sign initialization */ - /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ - if((*b >> 7)) { - value = (unsigned long)(-1); - } else { - value = 0; - } - - /* Conversion engine */ - for(; b < end; b++) { - value = (value << 8) | *b; - } - - return value; -} - -asn_dec_rval_t -NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - void **nint_ptr, const void *ptr, size_t size) { - asn_dec_rval_t rval = {RC_OK, 0}; - long *native = (long *)*nint_ptr; - const uint8_t *b = ptr; - - (void)opt_codec_ctx; - (void)constraints; - - if(size < 1) { - ASN__DECODE_STARVED; - } - - if((*b & 0x80) == 0) { - /* - * X.696 (08/2015) #11.2 Short form for Enumerated. - */ - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - *native = *b; - rval.consumed = 1; - } else { - /* - * X.696 (08/2015) #11.4 Long form for Enumerated. - */ - size_t length = *b & 0x7f; - const uint8_t *bend; - long value; - - if(length < 1 || length > sizeof(*native)) { - ASN__DECODE_FAILED; - } - if((1 + length) > size) { - ASN__DECODE_STARVED; - } - b++; - bend = b + length; - - value = asn__nativeenumerated_convert(b, bend); - if(value < 0) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - if(specs && specs->field_unsigned) { - ASN__DECODE_FAILED; - } - } - - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - *native = value; - - rval.consumed = (1 + length); - } - - return rval; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - long native; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - if(native >= 0 && native <= 127) { - /* #11.2 Short form */ - uint8_t b = native; - er.encoded = 1; - if(cb(&b, er.encoded, app_key) < 0) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } else { - /* #11.2 Long form */ - uint8_t buf[1 + sizeof(native)]; - uint8_t *b = &buf[sizeof(native)]; /* Last addressable */ - long final_pattern = -1 * (native < 0); - - for(;;) { - *b-- = native; - native >>= 8; - if(native == final_pattern) { - if(final_pattern) { - if((b[1] & 0x80)) break; - } else { - if(!(b[1] & 0x80)) break; - } - } - } - *b = 0x80 | (&buf[sizeof(native)] - b); - er.encoded = 1 + (&buf[sizeof(native)] - b); - if(cb(b, er.encoded, app_key) < 0) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c deleted file mode 100644 index e2f932a22..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_uper.c +++ /dev/null @@ -1,135 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -NativeEnumerated_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - long *native = (long *)*sptr; - const asn_per_constraint_t *ct; - long value; - - (void)opt_codec_ctx; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__DECODE_FAILED; /* Mandatory! */ - if(!specs) ASN__DECODE_FAILED; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); - - if(ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - if(value >= (specs->extension - ? specs->extension - 1 : specs->map_count)) - ASN__DECODE_FAILED; - } else { - if(!specs->extension) - ASN__DECODE_FAILED; - /* - * X.691, #10.6: normally small non-negative whole number; - */ - value = uper_get_nsnnwn(pd); - if(value < 0) ASN__DECODE_STARVED; - value += specs->extension - 1; - if(value >= specs->map_count) - ASN__DECODE_FAILED; - } - - *native = specs->value2enum[value].nat_value; - ASN_DEBUG("Decoded %s = %ld", td->name, *native); - - return rval; -} - -asn_enc_rval_t -NativeEnumerated_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native, value; - const asn_per_constraint_t *ct; - int inext = 0; - asn_INTEGER_enum_map_t key; - const asn_INTEGER_enum_map_t *kf; - - if(!sptr) ASN__ENCODE_FAILED; - if(!specs) ASN__ENCODE_FAILED; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__ENCODE_FAILED; /* Mandatory! */ - - ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); - - er.encoded = 0; - - native = *(const long *)sptr; - - key.nat_value = native; - kf = bsearch(&key, specs->value2enum, specs->map_count, - sizeof(key), NativeEnumerated__compar_value2enum); - if(!kf) { - ASN_DEBUG("No element corresponds to %ld", native); - ASN__ENCODE_FAILED; - } - value = kf - specs->value2enum; - - if(ct->range_bits >= 0) { - int cmpWith = specs->extension - ? specs->extension - 1 : specs->map_count; - if(value >= cmpWith) - inext = 1; - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, value, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(!specs->extension) - ASN__ENCODE_FAILED; - - /* - * X.691, #10.6: normally small non-negative whole number; - */ - ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", - value, specs->extension, inext, - value - (inext ? (specs->extension - 1) : 0)); - if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c b/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c deleted file mode 100644 index e8d6d0deb..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeEnumerated_xer.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -NativeEnumerated_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - const asn_INTEGER_enum_map_t *el; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - el = INTEGER_map_value2enum(specs, *native); - if(el) { - er.encoded = - asn__format_to_callback(cb, app_key, "<%s/>", el->enum_name); - if(er.encoded < 0) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } else { - ASN_DEBUG( - "ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - ASN__ENCODE_FAILED; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger.c b/src/tmx/Asn_J2735/src/2020/NativeInteger.c deleted file mode 100644 index f0309b0d2..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger.c +++ /dev/null @@ -1,152 +0,0 @@ -/*- - * Copyright (c) 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeInteger basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_operation_t asn_OP_NativeInteger = { - NativeInteger_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - NativeInteger_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - NativeInteger_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - NativeInteger_decode_ber, - NativeInteger_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - NativeInteger_decode_xer, - NativeInteger_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - NativeInteger_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - NativeInteger_decode_oer, /* OER decoder */ - NativeInteger_encode_oer, /* Canonical OER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - NativeInteger_decode_uper, /* Unaligned PER decoder */ - NativeInteger_encode_uper, /* Unaligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - NativeInteger_decode_aper, /* Aligned PER decoder */ - NativeInteger_encode_aper, /* Aligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - NativeInteger_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NativeInteger = { - "INTEGER", /* The ASN.1 type is still INTEGER */ - "INTEGER", - &asn_OP_NativeInteger, - asn_DEF_NativeInteger_tags, - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - asn_DEF_NativeInteger_tags, /* Same as above */ - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -void -NativeInteger_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", - td->name, method, ptr); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, sizeof(long)); - break; - } -} - -int -NativeInteger_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { - (void)td; - - if(aptr && bptr) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - if(specs && specs->field_unsigned) { - const unsigned long *a = aptr; - const unsigned long *b = bptr; - if(*a < *b) { - return -1; - } else if(*a > *b) { - return 1; - } else { - return 0; - } - } else { - const long *a = aptr; - const long *b = bptr; - if(*a < *b) { - return -1; - } else if(*a > *b) { - return 1; - } else { - return 0; - } - } - } else if(!aptr) { - return -1; - } else { - return 1; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c deleted file mode 100644 index 1d13070a3..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_aper.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -NativeInteger_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - long *native = (long *)*sptr; - INTEGER_t tmpint; - void *tmpintptr = &tmpint; - - (void)opt_codec_ctx; - ASN_DEBUG("Decoding NativeInteger %s (APER)", td->name); - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&tmpint, 0, sizeof tmpint); - rval = INTEGER_decode_aper(opt_codec_ctx, td, constraints, - &tmpintptr, pd); - if(rval.code == RC_OK) { - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) - : asn_INTEGER2long(&tmpint, native)) - rval.code = RC_FAIL; - else - ASN_DEBUG("NativeInteger %s got value %ld", - td->name, *native); - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - - return rval; -} - -asn_enc_rval_t -NativeInteger_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native; - INTEGER_t tmpint; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - ASN_DEBUG("Encoding NativeInteger %s %ld (APER)", td->name, native); - - memset(&tmpint, 0, sizeof(tmpint)); - if((specs&&specs->field_unsigned) - ? asn_ulong2INTEGER(&tmpint, (unsigned long)native) - : asn_long2INTEGER(&tmpint, native)) - ASN__ENCODE_FAILED; - er = INTEGER_encode_aper(td, constraints, &tmpint, po); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c deleted file mode 100644 index ed683625c..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_ber.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Decode INTEGER type. - */ -asn_dec_rval_t -NativeInteger_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **nint_ptr, - const void *buf_ptr, size_t size, int tag_mode) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - long *native = (long *)*nint_ptr; - asn_dec_rval_t rval; - ber_tlv_len_t length; - - /* - * If the structure is not there, allocate it. - */ - if(native == NULL) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(native == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * ASN.1 encoded INTEGER: buf_ptr, length - * Fill the native, at the same time checking for overflow. - * If overflow occurred, return with RC_FAIL. - */ - { - INTEGER_t tmp; - union { - const void *constbuf; - void *nonconstbuf; - } unconst_buf; - long l; - - unconst_buf.constbuf = buf_ptr; - tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; - tmp.size = length; - - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&tmp, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - - *native = l; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", - (long)rval.consumed, (long)length, td->name, (long)*native); - - return rval; -} - -/* - * Encode the NativeInteger using the standard INTEGER type DER encoder. - */ -asn_enc_rval_t -NativeInteger_encode_der(const asn_TYPE_descriptor_t *sd, const void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - unsigned long native = *(const unsigned long *)ptr; /* Disable sign ext. */ - asn_enc_rval_t erval = {0,0,0}; - INTEGER_t tmp; - -#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ - - tmp.buf = (uint8_t *)&native; - tmp.size = sizeof(native); - -#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ - uint8_t buf[sizeof(native)]; - uint8_t *p; - - /* Prepare a fake INTEGER */ - for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) - *p = (uint8_t)native; - - tmp.buf = buf; - tmp.size = sizeof(buf); -#endif /* WORDS_BIGENDIAN */ - - /* Encode fake INTEGER */ - erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); - if(erval.structure_ptr == &tmp) { - erval.structure_ptr = ptr; - } - return erval; -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c deleted file mode 100644 index f48f8ecff..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_jer.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -NativeInteger_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; /* Enough for 64-bit int */ - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - er.encoded = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) - ? "%lu" : "%ld", *native); - if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) - || cb(scratch, er.encoded, app_key) < 0) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c deleted file mode 100644 index 4e900462c..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_oer.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - void **nint_ptr, const void *ptr, size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - long *native = (long *)*nint_ptr; - INTEGER_t tmpint; - INTEGER_t *tmpintptr = &tmpint; - - memset(&tmpint, 0, sizeof(tmpint)); - - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - /* - * OPTIMIZATION: Encode directly rather than passing through INTEGER. - * Saves a memory allocation. - */ - rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints, - (void **)&tmpintptr, ptr, size); - if(rval.code != RC_OK) { - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return rval; - } - - if(specs && specs->field_unsigned) { - unsigned long ul; - int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0; - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - if(ok) { - *native = ul; - } else { - rval.code = RC_FAIL; - return rval; - } - } else { - long l; - int ok = asn_INTEGER2long(&tmpint, &l) == 0; - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - if(ok) { - *native = l; - } else { - rval.code = RC_FAIL; - return rval; - } - } - - return rval; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - INTEGER_t tmpint; - long native; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - memset(&tmpint, 0, sizeof(tmpint)); - - ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native); - - if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native) - : asn_long2INTEGER(&tmpint, native)) { - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - ASN__ENCODE_FAILED; - } else { - asn_enc_rval_t er = - INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c deleted file mode 100644 index 0602e0d20..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_print.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * INTEGER specific human-readable output. - */ -int -NativeInteger_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - const long *native = (const long *)sptr; - char scratch[32]; /* Enough for 64-bit int */ - int ret; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(native) { - long value = *native; - ret = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) ? "%lu" : "%ld", value); - assert(ret > 0 && (size_t)ret < sizeof(scratch)); - if(cb(scratch, ret, app_key) < 0) return -1; - if(specs && (value >= 0 || !specs->field_unsigned)) { - const asn_INTEGER_enum_map_t *el = - INTEGER_map_value2enum(specs, value); - if(el) { - if(cb(" (", 2, app_key) < 0) return -1; - if(cb(el->enum_name, el->enum_len, app_key) < 0) return -1; - if(cb(")", 1, app_key) < 0) return -1; - } - } - return 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c deleted file mode 100644 index 0e2cee8e4..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_rfill.c +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -NativeInteger_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - long *st = *sptr; - const asn_INTEGER_enum_map_t *emap; - size_t emap_len; - intmax_t value; - int find_inside_map; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (long *)CALLOC(1, sizeof(*st)); - if(st == NULL) { - return result_failed; - } - } - - if(specs) { - emap = specs->value2enum; - emap_len = specs->map_count; - if(specs->strict_enumeration) { - find_inside_map = emap_len > 0; - } else { - find_inside_map = emap_len ? asn_random_between(0, 1) : 0; - } - } else { - emap = 0; - emap_len = 0; - find_inside_map = 0; - } - - if(find_inside_map) { - assert(emap_len > 0); - value = emap[asn_random_between(0, emap_len - 1)].nat_value; - } else { - static const long variants[] = { - -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, - -16383, -257, -256, -255, -254, -129, -128, -127, - -126, -1, 0, 1, 126, 127, 128, 129, - 254, 255, 256, 257, 16383, 16384, 16385, 32767, - 32768, 32769, 65534, 65535, 65536, 65537}; - if(specs && specs->field_unsigned) { - assert(variants[18] == 0); - value = variants[asn_random_between( - 18, sizeof(variants) / sizeof(variants[0]) - 1)]; - } else { - value = variants[asn_random_between( - 0, sizeof(variants) / sizeof(variants[0]) - 1)]; - } - - if(!constraints) constraints = &td->encoding_constraints; -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - const asn_per_constraints_t *ct; - - ct = constraints ? constraints->per_constraints : 0; - if(ct && (ct->value.flags & APC_CONSTRAINED)) { - if(value < ct->value.lower_bound || value > ct->value.upper_bound) { - value = asn_random_between(ct->value.lower_bound, - ct->value.upper_bound); - } - } -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - } - - *sptr = st; - *st = value; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c deleted file mode 100644 index 4fc4ba177..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_uper.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -NativeInteger_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - long *native = (long *)*sptr; - INTEGER_t tmpint; - void *tmpintptr = &tmpint; - - (void)opt_codec_ctx; - ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&tmpint, 0, sizeof tmpint); - rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, - &tmpintptr, pd); - if(rval.code == RC_OK) { - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) - : asn_INTEGER2long(&tmpint, native)) - rval.code = RC_FAIL; - else - ASN_DEBUG("NativeInteger %s got value %ld", - td->name, *native); - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - - return rval; -} - -asn_enc_rval_t -NativeInteger_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native; - INTEGER_t tmpint; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); - - memset(&tmpint, 0, sizeof(tmpint)); - if((specs&&specs->field_unsigned) - ? asn_ulong2INTEGER(&tmpint, native) - : asn_long2INTEGER(&tmpint, native)) - ASN__ENCODE_FAILED; - er = INTEGER_encode_uper(td, constraints, &tmpint, po); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; -} diff --git a/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c b/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c deleted file mode 100644 index 18ec59af2..000000000 --- a/src/tmx/Asn_J2735/src/2020/NativeInteger_xer.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -asn_dec_rval_t -NativeInteger_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - INTEGER_t st; - void *st_ptr = (void *)&st; - long *native = (long *)*sptr; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&st, 0, sizeof(st)); - rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, - opt_mname, buf_ptr, size); - if(rval.code == RC_OK) { - long l; - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&st, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - } else { - *native = l; - } - } else { - /* - * Cannot restart from the middle; - * there is no place to save state in the native type. - * Request a continuation from the very beginning. - */ - rval.consumed = 0; - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); - return rval; -} - - -asn_enc_rval_t -NativeInteger_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; /* Enough for 64-bit int */ - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - er.encoded = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) - ? "%lu" : "%ld", *native); - if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) - || cb(scratch, er.encoded, app_key) < 0) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c deleted file mode 100644 index cbc309bd6..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-24B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-24B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_24B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_24B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_24B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1 = { - sizeof(struct Node_LL_24B), - offsetof(struct Node_LL_24B, _asn_ctx), - asn_MAP_Node_LL_24B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_24B = { - "Node-LL-24B", - "Node-LL-24B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_24B_tags_1, - sizeof(asn_DEF_Node_LL_24B_tags_1) - /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_24B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_24B_tags_1) - /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_24B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_24B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c deleted file mode 100644 index ab56589a7..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-28B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-28B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_28B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_28B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_28B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1 = { - sizeof(struct Node_LL_28B), - offsetof(struct Node_LL_28B, _asn_ctx), - asn_MAP_Node_LL_28B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_28B = { - "Node-LL-28B", - "Node-LL-28B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_28B_tags_1, - sizeof(asn_DEF_Node_LL_28B_tags_1) - /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_28B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_28B_tags_1) - /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_28B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_28B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c deleted file mode 100644 index 9db742f71..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-32B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-32B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_32B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_32B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_32B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1 = { - sizeof(struct Node_LL_32B), - offsetof(struct Node_LL_32B, _asn_ctx), - asn_MAP_Node_LL_32B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_32B = { - "Node-LL-32B", - "Node-LL-32B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_32B_tags_1, - sizeof(asn_DEF_Node_LL_32B_tags_1) - /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_32B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_32B_tags_1) - /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_32B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_32B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c deleted file mode 100644 index 01ce8b51c..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-36B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-36B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_36B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_36B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_36B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1 = { - sizeof(struct Node_LL_36B), - offsetof(struct Node_LL_36B, _asn_ctx), - asn_MAP_Node_LL_36B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_36B = { - "Node-LL-36B", - "Node-LL-36B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_36B_tags_1, - sizeof(asn_DEF_Node_LL_36B_tags_1) - /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_36B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_36B_tags_1) - /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_36B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_36B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c deleted file mode 100644 index 4098c7a11..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-44B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-44B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_44B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B22, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B22, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_44B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_44B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1 = { - sizeof(struct Node_LL_44B), - offsetof(struct Node_LL_44B, _asn_ctx), - asn_MAP_Node_LL_44B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_44B = { - "Node-LL-44B", - "Node-LL-44B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_44B_tags_1, - sizeof(asn_DEF_Node_LL_44B_tags_1) - /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_44B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_44B_tags_1) - /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_44B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_44B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c b/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c deleted file mode 100644 index 91a132e0d..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LL-48B.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LL-48B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_48B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B24, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B24, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_48B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_48B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1 = { - sizeof(struct Node_LL_48B), - offsetof(struct Node_LL_48B, _asn_ctx), - asn_MAP_Node_LL_48B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_48B = { - "Node-LL-48B", - "Node-LL-48B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_48B_tags_1, - sizeof(asn_DEF_Node_LL_48B_tags_1) - /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_48B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_48B_tags_1) - /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LL_48B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_48B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c deleted file mode 100644 index 20e127019..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LLdms-48b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LLdms-48b.h" - -asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { - sizeof(struct Node_LLdms_48b), - offsetof(struct Node_LLdms_48b, _asn_ctx), - asn_MAP_Node_LLdms_48b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { - "Node-LLdms-48b", - "Node-LLdms-48b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLdms_48b_tags_1, - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LLdms_48b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c deleted file mode 100644 index 9b5331e00..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LLdms-80b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LLdms-80b.h" - -asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { - sizeof(struct Node_LLdms_80b), - offsetof(struct Node_LLdms_80b, _asn_ctx), - asn_MAP_Node_LLdms_80b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { - "Node-LLdms-80b", - "Node-LLdms-80b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLdms_80b_tags_1, - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LLdms_80b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c deleted file mode 100644 index 37121eb18..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-LLmD-64b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-LLmD-64b.h" - -asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { - sizeof(struct Node_LLmD_64b), - offsetof(struct Node_LLmD_64b, _asn_ctx), - asn_MAP_Node_LLmD_64b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { - "Node-LLmD-64b", - "Node-LLmD-64b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLmD_64b_tags_1, - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_LLmD_64b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c deleted file mode 100644 index 18457d9ae..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-20b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-20b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { - sizeof(struct Node_XY_20b), - offsetof(struct Node_XY_20b, _asn_ctx), - asn_MAP_Node_XY_20b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { - "Node-XY-20b", - "Node-XY-20b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_20b_tags_1, - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_20b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_20b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c deleted file mode 100644 index cab823652..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-22b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-22b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { - sizeof(struct Node_XY_22b), - offsetof(struct Node_XY_22b, _asn_ctx), - asn_MAP_Node_XY_22b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { - "Node-XY-22b", - "Node-XY-22b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_22b_tags_1, - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_22b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_22b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c deleted file mode 100644 index 63ef07247..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-24b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-24b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { - sizeof(struct Node_XY_24b), - offsetof(struct Node_XY_24b, _asn_ctx), - asn_MAP_Node_XY_24b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { - "Node-XY-24b", - "Node-XY-24b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_24b_tags_1, - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_24b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_24b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c deleted file mode 100644 index 5b3b47c91..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-26b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-26b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { - sizeof(struct Node_XY_26b), - offsetof(struct Node_XY_26b, _asn_ctx), - asn_MAP_Node_XY_26b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { - "Node-XY-26b", - "Node-XY-26b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_26b_tags_1, - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_26b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_26b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c deleted file mode 100644 index c34cebb69..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-28b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-28b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { - sizeof(struct Node_XY_28b), - offsetof(struct Node_XY_28b, _asn_ctx), - asn_MAP_Node_XY_28b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { - "Node-XY-28b", - "Node-XY-28b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_28b_tags_1, - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_28b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_28b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c b/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c deleted file mode 100644 index a3897991e..000000000 --- a/src/tmx/Asn_J2735/src/2020/Node-XY-32b.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Node-XY-32b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { - sizeof(struct Node_XY_32b), - offsetof(struct Node_XY_32b, _asn_ctx), - asn_MAP_Node_XY_32b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { - "Node-XY-32b", - "Node-XY-32b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_32b_tags_1, - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_32b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Node_XY_32b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c deleted file mode 100644 index a9c7c26f6..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeLL.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeLL.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeLL_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 8, "stopLine" }, - { 2, 16, "roundedCapStyleA" }, - { 3, 16, "roundedCapStyleB" }, - { 4, 10, "mergePoint" }, - { 5, 12, "divergePoint" }, - { 6, 18, "downstreamStopLine" }, - { 7, 19, "downstreamStartNode" }, - { 8, 15, "closedToTraffic" }, - { 9, 10, "safeIsland" }, - { 10, 20, "curbPresentAtStepOff" }, - { 11, 14, "hydrantPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NodeAttributeLL_enum2value_1[] = { - 8, /* closedToTraffic(8) */ - 10, /* curbPresentAtStepOff(10) */ - 5, /* divergePoint(5) */ - 7, /* downstreamStartNode(7) */ - 6, /* downstreamStopLine(6) */ - 11, /* hydrantPresent(11) */ - 4, /* mergePoint(4) */ - 0, /* reserved(0) */ - 2, /* roundedCapStyleA(2) */ - 3, /* roundedCapStyleB(3) */ - 9, /* safeIsland(9) */ - 1 /* stopLine(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1 = { - asn_MAP_NodeAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NodeAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 13, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL = { - "NodeAttributeLL", - "NodeAttributeLL", - &asn_OP_NativeEnumerated, - asn_DEF_NodeAttributeLL_tags_1, - sizeof(asn_DEF_NodeAttributeLL_tags_1) - /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeLL_tags_1) - /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeAttributeLL_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeAttributeLL_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NodeAttributeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c deleted file mode 100644 index 3a21944e2..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeLLList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeLLList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_NodeAttributeLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeLLList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1 = { - sizeof(struct NodeAttributeLLList), - offsetof(struct NodeAttributeLLList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList = { - "NodeAttributeLLList", - "NodeAttributeLLList", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeAttributeLLList_tags_1, - sizeof(asn_DEF_NodeAttributeLLList_tags_1) - /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeLLList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeLLList_tags_1) - /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeAttributeLLList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeAttributeLLList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_NodeAttributeLLList_1, - 1, /* Single element */ - &asn_SPC_NodeAttributeLLList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c deleted file mode 100644 index 8a09886da..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetLL.c +++ /dev/null @@ -1,283 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeSetLL.h" - -#include "NodeAttributeLLList.h" -#include "SegmentAttributeLLList.h" -#include "LaneDataAttributeList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_NodeAttributeSetLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct NodeAttributeSetLL__regional), - offsetof(struct NodeAttributeSetLL__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[] = { - { ATF_POINTER, 7, offsetof(struct NodeAttributeSetLL, localNode), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeLLList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "localNode" - }, - { ATF_POINTER, 6, offsetof(struct NodeAttributeSetLL, disabled), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeLLList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "disabled" - }, - { ATF_POINTER, 5, offsetof(struct NodeAttributeSetLL, enabled), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeLLList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "enabled" - }, - { ATF_POINTER, 4, offsetof(struct NodeAttributeSetLL, data), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDataAttributeList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "data" - }, - { ATF_POINTER, 3, offsetof(struct NodeAttributeSetLL, dWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dWidth" - }, - { ATF_POINTER, 2, offsetof(struct NodeAttributeSetLL, dElevation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dElevation" - }, - { ATF_POINTER, 1, offsetof(struct NodeAttributeSetLL, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NodeAttributeSetLL_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_NodeAttributeSetLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1 = { - sizeof(struct NodeAttributeSetLL), - offsetof(struct NodeAttributeSetLL, _asn_ctx), - asn_MAP_NodeAttributeSetLL_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_NodeAttributeSetLL_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL = { - "NodeAttributeSetLL", - "NodeAttributeSetLL", - &asn_OP_SEQUENCE, - asn_DEF_NodeAttributeSetLL_tags_1, - sizeof(asn_DEF_NodeAttributeSetLL_tags_1) - /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeSetLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeSetLL_tags_1) - /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_NodeAttributeSetLL_1, - 7, /* Elements count */ - &asn_SPC_NodeAttributeSetLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c deleted file mode 100644 index bff41ae8c..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeSetXY.c +++ /dev/null @@ -1,283 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeSetXY.h" - -#include "NodeAttributeXYList.h" -#include "SegmentAttributeXYList.h" -#include "LaneDataAttributeList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_NodeAttributeSetXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct NodeAttributeSetXY__regional), - offsetof(struct NodeAttributeSetXY__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[] = { - { ATF_POINTER, 7, offsetof(struct NodeAttributeSetXY, localNode), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeXYList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "localNode" - }, - { ATF_POINTER, 6, offsetof(struct NodeAttributeSetXY, disabled), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeXYList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "disabled" - }, - { ATF_POINTER, 5, offsetof(struct NodeAttributeSetXY, enabled), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeXYList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "enabled" - }, - { ATF_POINTER, 4, offsetof(struct NodeAttributeSetXY, data), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDataAttributeList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "data" - }, - { ATF_POINTER, 3, offsetof(struct NodeAttributeSetXY, dWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dWidth" - }, - { ATF_POINTER, 2, offsetof(struct NodeAttributeSetXY, dElevation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dElevation" - }, - { ATF_POINTER, 1, offsetof(struct NodeAttributeSetXY, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NodeAttributeSetXY_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_NodeAttributeSetXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1 = { - sizeof(struct NodeAttributeSetXY), - offsetof(struct NodeAttributeSetXY, _asn_ctx), - asn_MAP_NodeAttributeSetXY_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_NodeAttributeSetXY_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY = { - "NodeAttributeSetXY", - "NodeAttributeSetXY", - &asn_OP_SEQUENCE, - asn_DEF_NodeAttributeSetXY_tags_1, - sizeof(asn_DEF_NodeAttributeSetXY_tags_1) - /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeSetXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeSetXY_tags_1) - /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_NodeAttributeSetXY_1, - 7, /* Elements count */ - &asn_SPC_NodeAttributeSetXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c deleted file mode 100644 index 80784df12..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeXY.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeXY.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeXY_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 8, "stopLine" }, - { 2, 16, "roundedCapStyleA" }, - { 3, 16, "roundedCapStyleB" }, - { 4, 10, "mergePoint" }, - { 5, 12, "divergePoint" }, - { 6, 18, "downstreamStopLine" }, - { 7, 19, "downstreamStartNode" }, - { 8, 15, "closedToTraffic" }, - { 9, 10, "safeIsland" }, - { 10, 20, "curbPresentAtStepOff" }, - { 11, 14, "hydrantPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NodeAttributeXY_enum2value_1[] = { - 8, /* closedToTraffic(8) */ - 10, /* curbPresentAtStepOff(10) */ - 5, /* divergePoint(5) */ - 7, /* downstreamStartNode(7) */ - 6, /* downstreamStopLine(6) */ - 11, /* hydrantPresent(11) */ - 4, /* mergePoint(4) */ - 0, /* reserved(0) */ - 2, /* roundedCapStyleA(2) */ - 3, /* roundedCapStyleB(3) */ - 9, /* safeIsland(9) */ - 1 /* stopLine(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1 = { - asn_MAP_NodeAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NodeAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 13, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY = { - "NodeAttributeXY", - "NodeAttributeXY", - &asn_OP_NativeEnumerated, - asn_DEF_NodeAttributeXY_tags_1, - sizeof(asn_DEF_NodeAttributeXY_tags_1) - /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeXY_tags_1) - /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeAttributeXY_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeAttributeXY_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NodeAttributeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c b/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c deleted file mode 100644 index 620e45a21..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeAttributeXYList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeAttributeXYList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_NodeAttributeXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeXYList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1 = { - sizeof(struct NodeAttributeXYList), - offsetof(struct NodeAttributeXYList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList = { - "NodeAttributeXYList", - "NodeAttributeXYList", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeAttributeXYList_tags_1, - sizeof(asn_DEF_NodeAttributeXYList_tags_1) - /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeXYList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeXYList_tags_1) - /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeAttributeXYList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeAttributeXYList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_NodeAttributeXYList_1, - 1, /* Single element */ - &asn_SPC_NodeAttributeXYList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeLL.c b/src/tmx/Asn_J2735/src/2020/NodeLL.c deleted file mode 100644 index a1e84362b..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeLL.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeLL.h" - -#include "NodeAttributeSetLL.h" -asn_TYPE_member_t asn_MBR_NodeLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeLL, delta), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "delta" - }, - { ATF_POINTER, 1, offsetof(struct NodeLL, attributes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeSetLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "attributes" - }, -}; -static const int asn_MAP_NodeLL_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_NodeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1 = { - sizeof(struct NodeLL), - offsetof(struct NodeLL, _asn_ctx), - asn_MAP_NodeLL_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_NodeLL_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeLL = { - "NodeLL", - "NodeLL", - &asn_OP_SEQUENCE, - asn_DEF_NodeLL_tags_1, - sizeof(asn_DEF_NodeLL_tags_1) - /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ - asn_DEF_NodeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeLL_tags_1) - /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_NodeLL_1, - 2, /* Elements count */ - &asn_SPC_NodeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeListLL.c b/src/tmx/Asn_J2735/src/2020/NodeListLL.c deleted file mode 100644 index edcee50fa..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeListLL.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeListLL.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeListLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeListLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeListLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeListLL, choice.nodes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeSetLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nodes" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeListLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodes */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1 = { - sizeof(struct NodeListLL), - offsetof(struct NodeListLL, _asn_ctx), - offsetof(struct NodeListLL, present), - sizeof(((struct NodeListLL *)0)->present), - asn_MAP_NodeListLL_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeListLL = { - "NodeListLL", - "NodeListLL", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeListLL_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeListLL_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_NodeListLL_1, - 1, /* Elements count */ - &asn_SPC_NodeListLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeListXY.c b/src/tmx/Asn_J2735/src/2020/NodeListXY.c deleted file mode 100644 index a11b4ecda..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeListXY.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeListXY.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeListXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeListXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeListXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.nodes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeSetXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nodes" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.computed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ComputedLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "computed" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeListXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1 = { - sizeof(struct NodeListXY), - offsetof(struct NodeListXY, _asn_ctx), - offsetof(struct NodeListXY, present), - sizeof(((struct NodeListXY *)0)->present), - asn_MAP_NodeListXY_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeListXY = { - "NodeListXY", - "NodeListXY", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeListXY_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeListXY_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_NodeListXY_1, - 2, /* Elements count */ - &asn_SPC_NodeListXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c deleted file mode 100644 index 378248396..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointLL.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeOffsetPointLL.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_24B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL1" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_28B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL2" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_32B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL3" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_36B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL4" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_44B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL5" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_48B, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LL6" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LatLon), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLmD_64b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LatLon" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_NodeOffsetPointLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-LL1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-LL2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-LL3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-LL4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-LL5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-LL6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1 = { - sizeof(struct NodeOffsetPointLL), - offsetof(struct NodeOffsetPointLL, _asn_ctx), - offsetof(struct NodeOffsetPointLL, present), - sizeof(((struct NodeOffsetPointLL *)0)->present), - asn_MAP_NodeOffsetPointLL_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL = { - "NodeOffsetPointLL", - "NodeOffsetPointLL", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeOffsetPointLL_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeOffsetPointLL_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_NodeOffsetPointLL_1, - 8, /* Elements count */ - &asn_SPC_NodeOffsetPointLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c deleted file mode 100644 index d85858a93..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY-addGrpB.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeOffsetPointXY-addGrpB.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posA), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_48b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posA" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posB), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_80b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 = { - sizeof(struct NodeOffsetPointXY_addGrpB), - offsetof(struct NodeOffsetPointXY_addGrpB, _asn_ctx), - offsetof(struct NodeOffsetPointXY_addGrpB, present), - sizeof(((struct NodeOffsetPointXY_addGrpB *)0)->present), - asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB = { - "NodeOffsetPointXY-addGrpB", - "NodeOffsetPointXY-addGrpB", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_NodeOffsetPointXY_addGrpB_1, - 2, /* Elements count */ - &asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c b/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c deleted file mode 100644 index d9291e5f4..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeOffsetPointXY.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeOffsetPointXY.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_20b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY1" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_22b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY2" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY3" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_26b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY4" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_28b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY5" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_32b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-XY6" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_LatLon), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLmD_64b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node-LatLon" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_NodeOffsetPointXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1 = { - sizeof(struct NodeOffsetPointXY), - offsetof(struct NodeOffsetPointXY, _asn_ctx), - offsetof(struct NodeOffsetPointXY, present), - sizeof(((struct NodeOffsetPointXY *)0)->present), - asn_MAP_NodeOffsetPointXY_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY = { - "NodeOffsetPointXY", - "NodeOffsetPointXY", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeOffsetPointXY_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeOffsetPointXY_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_NodeOffsetPointXY_1, - 8, /* Elements count */ - &asn_SPC_NodeOffsetPointXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeSetLL.c b/src/tmx/Asn_J2735/src/2020/NodeSetLL.c deleted file mode 100644 index 4b25eff3e..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeSetLL.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeSetLL.h" - -#include "NodeLL.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeSetLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..63)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeSetLL_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NodeLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeSetLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1 = { - sizeof(struct NodeSetLL), - offsetof(struct NodeSetLL, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeSetLL = { - "NodeSetLL", - "NodeSetLL", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeSetLL_tags_1, - sizeof(asn_DEF_NodeSetLL_tags_1) - /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ - asn_DEF_NodeSetLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeSetLL_tags_1) - /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeSetLL_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeSetLL_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_NodeSetLL_1, - 1, /* Single element */ - &asn_SPC_NodeSetLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeSetXY.c b/src/tmx/Asn_J2735/src/2020/NodeSetXY.c deleted file mode 100644 index d5ba891da..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeSetXY.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeSetXY.h" - -#include "NodeXY.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NodeSetXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..63)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_NodeSetXY_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NodeXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeSetXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1 = { - sizeof(struct NodeSetXY), - offsetof(struct NodeSetXY, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeSetXY = { - "NodeSetXY", - "NodeSetXY", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeSetXY_tags_1, - sizeof(asn_DEF_NodeSetXY_tags_1) - /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ - asn_DEF_NodeSetXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeSetXY_tags_1) - /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NodeSetXY_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NodeSetXY_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_NodeSetXY_1, - 1, /* Single element */ - &asn_SPC_NodeSetXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NodeXY.c b/src/tmx/Asn_J2735/src/2020/NodeXY.c deleted file mode 100644 index 3b1f67a55..000000000 --- a/src/tmx/Asn_J2735/src/2020/NodeXY.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NodeXY.h" - -#include "NodeAttributeSetXY.h" -asn_TYPE_member_t asn_MBR_NodeXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeXY, delta), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "delta" - }, - { ATF_POINTER, 1, offsetof(struct NodeXY, attributes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeSetXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "attributes" - }, -}; -static const int asn_MAP_NodeXY_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_NodeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1 = { - sizeof(struct NodeXY), - offsetof(struct NodeXY, _asn_ctx), - asn_MAP_NodeXY_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_NodeXY_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeXY = { - "NodeXY", - "NodeXY", - &asn_OP_SEQUENCE, - asn_DEF_NodeXY_tags_1, - sizeof(asn_DEF_NodeXY_tags_1) - /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ - asn_DEF_NodeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeXY_tags_1) - /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_NodeXY_1, - 2, /* Elements count */ - &asn_SPC_NodeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c deleted file mode 100644 index 7679697b1..000000000 --- a/src/tmx/Asn_J2735/src/2020/NumberOfParticipantsInCluster.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "NumberOfParticipantsInCluster.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "small" }, - { 2, 6, "medium" }, - { 3, 5, "large" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { - 3, /* large(3) */ - 2, /* medium(2) */ - 1, /* small(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { - asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { - "NumberOfParticipantsInCluster", - "NumberOfParticipantsInCluster", - &asn_OP_NativeEnumerated, - asn_DEF_NumberOfParticipantsInCluster_tags_1, - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_NumberOfParticipantsInCluster_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_NumberOfParticipantsInCluster_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c deleted file mode 100644 index 5cf2d6066..000000000 --- a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER.c +++ /dev/null @@ -1,532 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include -#include /* for CHAR_BIT */ -#include -#include - -/* - * OBJECT IDENTIFIER basic type description. - */ -static const ber_tlv_tag_t asn_DEF_OBJECT_IDENTIFIER_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)) -}; -asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER = { - ASN__PRIMITIVE_TYPE_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OBJECT_IDENTIFIER_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, /* Implemented in terms of a string comparison */ -#if !defined(ASN_DISABLE_BER_SUPPORT) - ber_decode_primitive, - der_encode_primitive, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OBJECT_IDENTIFIER_decode_xer, - OBJECT_IDENTIFIER_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OBJECT_IDENTIFIER_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - OBJECT_IDENTIFIER_decode_oer, - OBJECT_IDENTIFIER_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - OBJECT_IDENTIFIER_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER = { - "OBJECT IDENTIFIER", - "OBJECT_IDENTIFIER", - &asn_OP_OBJECT_IDENTIFIER, - asn_DEF_OBJECT_IDENTIFIER_tags, - sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) - / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), - asn_DEF_OBJECT_IDENTIFIER_tags, /* Same as above */ - sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) - / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OBJECT_IDENTIFIER_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -int -OBJECT_IDENTIFIER_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, - void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - - if(st && st->buf) { - if(st->size < 1) { - ASN__CTFAIL(app_key, td, sptr, - "%s: at least one numerical value " - "expected (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - -static ssize_t -OBJECT_IDENTIFIER_get_first_arcs(const uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t *arc0, asn_oid_arc_t *arc1) { - asn_oid_arc_t value; - - ssize_t rd = OBJECT_IDENTIFIER_get_single_arc(arcbuf, arcbuf_len, &value); - if(rd <= 0) return rd; - - if(value >= 80) { - *arc0 = 2; - *arc1 = value - 80; - } else if(value >= 40) { - *arc0 = 1; - *arc1 = value - 40; - } else { - *arc0 = 0; - *arc1 = value; - } - - return rd; -} - -ssize_t -OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t *ret_value) { - const uint8_t *b = arcbuf; - const uint8_t *arcend = arcbuf + arcbuf_len; /* End of arc */ - - if(arcbuf == arcend) { - return 0; - } else { - asn_oid_arc_t accum; - asn_oid_arc_t upper_limit = (ASN_OID_ARC_MAX >> 7); - /* When the value reaches "upper_limit", it can take */ - /* at most one more digit. If it exceeds "upper_limit" */ - /* but there are more digits - it's an Overflow condition */ - /* Gather all bits into the accumulator */ - for(accum = 0; b < arcend; b++) { - accum = (accum << 7) | (*b & ~0x80); - if((*b & 0x80) == 0) { // no more digits - if(accum <= ASN_OID_ARC_MAX) { - *ret_value = accum; - return 1 + (b - arcbuf); - } else { - errno = ERANGE; /* Overflow */ - return -1; - } - } else { // to make sure we aren't wrapping around - if(accum > upper_limit) { - errno = ERANGE; /* Overflow */ - return -1; - } - } - } - errno = EINVAL; - return -1; - } - -} - -ssize_t -OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, - asn_app_consume_bytes_f *cb, void *app_key) { - char scratch[32]; - asn_oid_arc_t arc0 = 0; - asn_oid_arc_t arc1 = 0; - size_t produced = 0; - size_t off = 0; - ssize_t rd; - int ret; - - rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); - if(rd <= 0) { - return -1; - } - - ret = snprintf(scratch, sizeof(scratch), "%"PRIu32".%"PRIu32, arc0, arc1); - if(ret >= (ssize_t)sizeof(scratch)) { - return -1; - } - produced += ret; - if(cb(scratch, ret, app_key) < 0) - return -1; - - for(off = rd; ; ) { - asn_oid_arc_t arc; - rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, - &arc); - if(rd < 0) { - return -1; - } else if(rd == 0) { - /* No more arcs. */ - break; - } else { - off += rd; - assert(off <= st->size); - ret = snprintf(scratch, sizeof(scratch), ".%" PRIu32, arc); - if(ret >= (ssize_t)sizeof(scratch)) { - return -1; - } - produced += ret; - if(cb(scratch, ret, app_key) < 0) return -1; - } - } - - if(off != st->size) { - ASN_DEBUG("Could not scan to the end of Object Identifier"); - return -1; - } - - return produced; -} - -ssize_t -OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *st, asn_oid_arc_t *arcs, - size_t arc_slots) { - asn_oid_arc_t arc0 = 0; - asn_oid_arc_t arc1 = 0; - size_t num_arcs = 0; - size_t off; - ssize_t rd; - - if(!st || !st->buf) { - errno = EINVAL; - return -1; - } - - rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); - if(rd <= 0) { - return -1; - } - num_arcs = 2; - switch(arc_slots) { - default: - case 2: - arcs[1] = arc1; - /* Fall through */ - case 1: - arcs[0] = arc0; - /* Fall through */ - case 0: - break; - } - - for(off = rd; ; ) { - asn_oid_arc_t arc; - rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, - &arc); - if(rd < 0) { - return -1; - } else if(rd == 0) { - /* No more arcs. */ - break; - } else { - off += rd; - if(num_arcs < arc_slots) { - arcs[num_arcs] = arc; - } - num_arcs++; - } - } - - if(off != st->size) { - return -1; - } - - return num_arcs; -} - - -/* - * Save the single value as an object identifier arc. - */ -ssize_t -OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t value) { - /* - * The following conditions must hold: - * assert(arcbuf); - */ - uint8_t scratch[((sizeof(value) * CHAR_BIT + 6) / 7)]; - uint8_t *scratch_end = &scratch[sizeof(scratch)-1]; - uint8_t *b; - size_t result_len; - uint8_t mask; - - for(b = scratch_end, mask = 0; ; mask = 0x80, b--) { - *b = mask | (value & 0x7f); - value >>= 7; - if(!value) { - break; - } - } - - result_len = (scratch_end - b) + 1; - - if(result_len > arcbuf_len) { - return -1; - } - - memcpy(arcbuf, b, result_len); - - return result_len; -} - -int -OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *st, const asn_oid_arc_t *arcs, - size_t arc_slots) { - uint8_t *buf; - uint8_t *bp; - ssize_t wrote; - asn_oid_arc_t arc0; - asn_oid_arc_t arc1; - size_t size; - size_t i; - - if(!st || !arcs || arc_slots < 2) { - errno = EINVAL; - return -1; - } - - arc0 = arcs[0]; - arc1 = arcs[1]; - - if(arc0 <= 1) { - if(arc1 >= 40) { - /* 8.19.4: At most 39 subsequent values (including 0) */ - errno = ERANGE; - return -1; - } - } else if(arc0 == 2) { - if(arc1 > ASN_OID_ARC_MAX - 80) { - errno = ERANGE; - return -1; - } - } else if(arc0 > 2) { - /* 8.19.4: Only three values are allocated from the root node */ - errno = ERANGE; - return -1; - } - - /* - * After above tests it is known that the value of arc0 is completely - * trustworthy (0..2). However, the arc1's value is still meaningless. - */ - - /* - * Roughly estimate the maximum size necessary to encode these arcs. - * This estimation implicitly takes in account the following facts, - * that cancel each other: - * * the first two arcs are encoded in a single value. - * * the first value may require more space (+1 byte) - * * the value of the first arc which is in range (0..2) - */ - size = ((sizeof(asn_oid_arc_t) * CHAR_BIT + 6) / 7) * arc_slots; - bp = buf = (uint8_t *)MALLOC(size + 1); - if(!buf) { - /* ENOMEM */ - return -1; - } - - wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arc0 * 40 + arc1); - if(wrote <= 0) { - FREEMEM(buf); - return -1; - } - assert((size_t)wrote <= size); - bp += wrote; - size -= wrote; - - for(i = 2; i < arc_slots; i++) { - wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arcs[i]); - if(wrote <= 0) { - FREEMEM(buf); - return -1; - } - assert((size_t)wrote <= size); - bp += wrote; - size -= wrote; - } - - /* - * Replace buffer. - */ - st->size = bp - buf; - bp = st->buf; - st->buf = buf; - st->buf[st->size] = '\0'; - if(bp) FREEMEM(bp); - - return 0; -} - -ssize_t -OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, - asn_oid_arc_t *arcs, size_t arcs_count, - const char **opt_oid_text_end) { - size_t num_arcs = 0; - const char *oid_end; - enum { - ST_LEADSPACE, - ST_TAILSPACE, - ST_AFTERVALUE, /* Next character ought to be '.' or a space */ - ST_WAITDIGITS /* Next character is expected to be a digit */ - } state = ST_LEADSPACE; - - if(!oid_text || oid_txt_length < -1 || (arcs_count && !arcs)) { - if(opt_oid_text_end) *opt_oid_text_end = oid_text; - errno = EINVAL; - return -1; - } - - if(oid_txt_length == -1) - oid_txt_length = strlen(oid_text); - -#define _OID_CAPTURE_ARC(oid_text, oid_end) \ - do { \ - const char *endp = oid_end; \ - unsigned long value; \ - switch(asn_strtoul_lim(oid_text, &endp, &value)) { \ - case ASN_STRTOX_EXTRA_DATA: \ - case ASN_STRTOX_OK: \ - if(value <= ASN_OID_ARC_MAX) { \ - if(num_arcs < arcs_count) arcs[num_arcs] = value; \ - num_arcs++; \ - oid_text = endp - 1; \ - break; \ - } \ - /* Fall through */ \ - case ASN_STRTOX_ERROR_RANGE: \ - if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ - errno = ERANGE; \ - return -1; \ - case ASN_STRTOX_ERROR_INVAL: \ - case ASN_STRTOX_EXPECT_MORE: \ - if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ - errno = EINVAL; \ - return -1; \ - } \ - } while(0) - - for(oid_end = oid_text + oid_txt_length; oid_text broken OID */ - return -1; - case ST_LEADSPACE: - case ST_WAITDIGITS: - _OID_CAPTURE_ARC(oid_text, oid_end); - state = ST_AFTERVALUE; - continue; - } - break; - default: - /* Unexpected symbols */ - state = ST_WAITDIGITS; - break; - } /* switch() */ - break; - } /* for() */ - - - if(opt_oid_text_end) *opt_oid_text_end = oid_text; - - /* Finalize last arc */ - switch(state) { - case ST_LEADSPACE: - return 0; /* No OID found in input data */ - case ST_WAITDIGITS: - errno = EINVAL; /* Broken OID */ - return -1; - case ST_AFTERVALUE: - case ST_TAILSPACE: - return num_arcs; - } - - errno = EINVAL; /* Broken OID */ - return -1; -} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c deleted file mode 100644 index f105f038e..000000000 --- a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_jer.c +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - - -asn_enc_rval_t -OBJECT_IDENTIFIER_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) { - ASN__ENCODE_FAILED; - } - - er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c deleted file mode 100644 index b0c3a9e84..000000000 --- a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_print.c +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -OBJECT_IDENTIFIER_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, - void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(!st || !st->buf) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb("{ ", 2, app_key) < 0) - return -1; - - if(OBJECT_IDENTIFIER__dump_body(st, cb, app_key) < 0) { - return -1; - } - - return (cb(" }", 2, app_key) < 0) ? -1 : 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c deleted file mode 100644 index 55093c8e1..000000000 --- a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_rfill.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Generate values from the list of interesting values, or just a random - * value up to the upper limit. - */ -static asn_oid_arc_t -OBJECT_IDENTIFIER__biased_random_arc(asn_oid_arc_t upper_bound) { - const asn_oid_arc_t values[] = {0, 1, 127, 128, 129, 254, 255, 256}; - size_t idx; - - switch(asn_random_between(0, 2)) { - case 0: - idx = asn_random_between(0, sizeof(values) / sizeof(values[0]) - 1); - if(values[idx] < upper_bound) { - return values[idx]; - } - /* Fall through */ - case 1: - return asn_random_between(0, upper_bound); - case 2: - default: - return upper_bound; - } -} - -asn_random_fill_result_t -OBJECT_IDENTIFIER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - OBJECT_IDENTIFIER_t *st; - asn_oid_arc_t arcs[5]; - size_t arcs_len = asn_random_between(2, 5); - size_t i; - - (void)constraints; - - if(max_length < arcs_len) return result_skipped; - - if(*sptr) { - st = *sptr; - } else { - st = CALLOC(1, sizeof(*st)); - } - - arcs[0] = asn_random_between(0, 2); - arcs[1] = OBJECT_IDENTIFIER__biased_random_arc( - arcs[0] <= 1 ? 39 : (ASN_OID_ARC_MAX - 80)); - for(i = 2; i < arcs_len; i++) { - arcs[i] = OBJECT_IDENTIFIER__biased_random_arc(ASN_OID_ARC_MAX); - } - - if(OBJECT_IDENTIFIER_set_arcs(st, arcs, arcs_len)) { - if(st != *sptr) { - ASN_STRUCT_FREE(*td, st); - } - return result_failed; - } - - *sptr = st; - - result_ok.length = st->size; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c b/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c deleted file mode 100644 index 706e51a94..000000000 --- a/src/tmx/Asn_J2735/src/2020/OBJECT_IDENTIFIER_xer.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static enum xer_pbd_rval -OBJECT_IDENTIFIER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - OBJECT_IDENTIFIER_t *st = (OBJECT_IDENTIFIER_t *)sptr; - const char *chunk_end = (const char *)chunk_buf + chunk_size; - const char *endptr; - asn_oid_arc_t s_arcs[10]; - asn_oid_arc_t *arcs = s_arcs; - ssize_t num_arcs; - ssize_t ret; - - (void)td; - - num_arcs = OBJECT_IDENTIFIER_parse_arcs( - (const char *)chunk_buf, chunk_size, arcs, - sizeof(s_arcs) / sizeof(s_arcs[0]), &endptr); - if(num_arcs < 0) { - /* Expecting more than zero arcs */ - return XPBD_BROKEN_ENCODING; - } else if(num_arcs == 0) { - return XPBD_NOT_BODY_IGNORE; - } - (void)chunk_end; - assert(endptr == chunk_end); - - if((size_t)num_arcs > sizeof(s_arcs)/sizeof(s_arcs[0])) { - arcs = (asn_oid_arc_t *)MALLOC(num_arcs * sizeof(asn_oid_arc_t)); - if(!arcs) return XPBD_SYSTEM_FAILURE; - ret = OBJECT_IDENTIFIER_parse_arcs((const char *)chunk_buf, chunk_size, - arcs, num_arcs, &endptr); - if(ret != num_arcs) - return XPBD_SYSTEM_FAILURE; /* assert?.. */ - } - - /* - * Convert arcs into BER representation. - */ - ret = OBJECT_IDENTIFIER_set_arcs(st, arcs, num_arcs); - if(arcs != s_arcs) FREEMEM(arcs); - - return ret ? XPBD_SYSTEM_FAILURE : XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -OBJECT_IDENTIFIER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname, - buf_ptr, size, OBJECT_IDENTIFIER__xer_body_decode); -} - -asn_enc_rval_t -OBJECT_IDENTIFIER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) { - ASN__ENCODE_FAILED; - } - - er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c deleted file mode 100644 index d0bdeade7..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING.c +++ /dev/null @@ -1,383 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * OCTET STRING basic type description. - */ -static const ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs = { - sizeof(OCTET_STRING_t), - offsetof(OCTET_STRING_t, _asn_ctx), - ASN_OSUBV_STR -}; -asn_TYPE_operation_t asn_OP_OCTET_STRING = { - OCTET_STRING_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OCTET_STRING_print, /* OCTET STRING generally means a non-ascii sequence */ -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, - OCTET_STRING_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_hex, - OCTET_STRING_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OCTET_STRING_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OCTET_STRING_decode_uper, /* Unaligned PER decoder */ - OCTET_STRING_encode_uper, /* Unaligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, /* Aligned PER decoder */ - OCTET_STRING_encode_aper, /* Aligned PER encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - OCTET_STRING_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { - "OCTET STRING", /* Canonical name */ - "OCTET_STRING", /* XML tag name */ - &asn_OP_OCTET_STRING, - asn_DEF_OCTET_STRING_tags, - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - asn_DEF_OCTET_STRING_tags, /* Same as above */ - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_no_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs -}; - -void -OCTET_STRING_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - - if(!td || !st) - return; - - ASN_DEBUG("Freeing %s as OCTET STRING", td->name); - - if(st->buf) { - FREEMEM(st->buf); - st->buf = 0; - } - -#if !defined(ASN_DISABLE_BER_SUPPORT) - const asn_OCTET_STRING_specifics_t *specs; - asn_struct_ctx_t *ctx; - - specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Remove decode-time stack. - */ - struct _stack *stck; - stck = (struct _stack *)ctx->ptr; - if(stck) { - while(stck->tail) { - struct _stack_el *sel = stck->tail; - stck->tail = sel->prev; - FREEMEM(sel); - } - FREEMEM(stck); - } -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(sptr, 0, - td->specifics - ? ((const asn_OCTET_STRING_specifics_t *)(td->specifics)) - ->struct_size - : sizeof(OCTET_STRING_t)); - break; - } -} - -/* - * Conversion routines. - */ -int -OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { - void *buf; - - if(st == 0 || (str == 0 && len)) { - errno = EINVAL; - return -1; - } - - /* - * Clear the OCTET STRING. - */ - if(str == NULL) { - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - return 0; - } - - /* Determine the original string size, if not explicitly given */ - if(len < 0) - len = strlen(str); - - /* Allocate and fill the memory */ - buf = MALLOC(len + 1); - if(buf == NULL) - return -1; - - memcpy(buf, str, len); - ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ - FREEMEM(st->buf); - st->buf = (uint8_t *)buf; - st->size = len; - - return 0; -} - -OCTET_STRING_t * -OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, const char *str, - int len) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - OCTET_STRING_t *st; - - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - if(st && str && OCTET_STRING_fromBuf(st, str, len)) { - FREEMEM(st); - st = NULL; - } - - return st; -} - -/* - * Lexicographically compare the common prefix of both strings, - * and if it is the same return -1 for the smallest string. - */ -int -OCTET_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics; - const OCTET_STRING_t *a = aptr; - const OCTET_STRING_t *b = bptr; - - (void)specs; - assert(!specs || specs->subvariant != ASN_OSUBV_BIT); - - if(a && b) { - size_t common_prefix_size = a->size <= b->size ? a->size : b->size; - int ret = memcmp(a->buf, b->buf, common_prefix_size); - if(ret == 0) { - /* Figure out which string with equal prefixes is longer. */ - if(a->size < b->size) { - return -1; - } else if(a->size > b->size) { - return 1; - } else { - return 0; - } - } else { - return ret < 0 ? -1 : 1; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } - -} - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -int -OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, const asn_per_constraints_t *pc) { - uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", - (int)units, lb, ub, unit_bits); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Decode without translation */ - lb = 0; - } else if(pc && pc->code2value) { - if(unit_bits > 16) - return 1; /* FATAL: can't have constrained - * UniversalString with more than - * 16 million code points */ - for(; buf < end; buf += bpc) { - int value; - int code = per_get_few_bits(po, unit_bits); - if(code < 0) return -1; /* WMORE */ - value = pc->code2value(code); - if(value < 0) { - ASN_DEBUG("Code %d (0x%02x) is" - " not in map (%ld..%ld)", - code, code, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = value; break; - case 2: buf[0] = value >> 8; buf[1] = value; break; - case 4: buf[0] = value >> 24; buf[1] = value >> 16; - buf[2] = value >> 8; buf[3] = value; break; - } - } - return 0; - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_get_many_bits(po, buf, 0, unit_bits * units); - } - - for(; buf < end; buf += bpc) { - int32_t code = per_get_few_bits(po, unit_bits); - int32_t ch = code + lb; - if(code < 0) return -1; /* WMORE */ - if(ch > ub) { - ASN_DEBUG("Code %d is out of range (%ld..%ld)", - ch, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = ch; break; - case 2: buf[0] = ch >> 8; buf[1] = ch; break; - case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; - buf[2] = ch >> 8; buf[3] = ch; break; - } - } - - return 0; -} - -int -OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, const asn_per_constraints_t *pc) { - const uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", - (int)units, lb, ub, unit_bits, bpc); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Encode as is */ - lb = 0; - } else if(pc && pc->value2code) { - for(; buf < end; buf += bpc) { - int code; - uint32_t value; - switch(bpc) { - case 1: value = *(const uint8_t *)buf; break; - case 2: value = (buf[0] << 8) | buf[1]; break; - case 4: value = (buf[0] << 24) | (buf[1] << 16) - | (buf[2] << 8) | buf[3]; break; - default: return -1; - } - code = pc->value2code(value); - if(code < 0) { - ASN_DEBUG("Character %d (0x%02x) is" - " not in map (%ld..%ld)", - *buf, *buf, lb, ub); - return -1; - } - if(per_put_few_bits(po, code, unit_bits)) - return -1; - } - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_put_many_bits(po, buf, unit_bits * units); - } - - for(ub -= lb; buf < end; buf += bpc) { - int ch; - uint32_t value; - switch(bpc) { - case 1: - value = *(const uint8_t *)buf; - break; - case 2: - value = (buf[0] << 8) | buf[1]; - break; - case 4: - value = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]; - break; - default: - return -1; - } - ch = value - lb; - if(ch < 0 || ch > ub) { - ASN_DEBUG("Character %d (0x%02x) is out of range (%ld..%ld)", *buf, - value, lb, ub + lb); - return -1; - } - if(per_put_few_bits(po, ch, unit_bits)) return -1; - } - - return 0; -} -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c deleted file mode 100644 index 0373fe6ad..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_aper.c +++ /dev/null @@ -1,414 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ - -#undef RETURN -#define RETURN(_code) do {\ - asn_dec_rval_t tmprval;\ - tmprval.code = _code;\ - tmprval.consumed = consumed_myself;\ - return tmprval;\ - } while(0) - -static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { - { APC_CONSTRAINED, 8, 8, 0, 255 }, - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, - 0, 0 -}; - -asn_dec_rval_t -OCTET_STRING_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints - ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - - (void)opt_codec_ctx; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - - switch(specs->subvariant) { - default: -/* - case ASN_OSUBV_ANY: - ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); - RETURN(RC_FAIL); -*/ - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - break; - case ASN_OSUBV_ANY: - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; -/* - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; -*/ - bpc = OS__BPC_CHAR; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - break; - } - - /* - * Allocate the string. - */ - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %lld .. %lld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - (long long int)csiz->lower_bound, (long long int)csiz->upper_bound, - csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - cval = &asn_DEF_OCTET_STRING_constraints.value; - unit_bits = canonical_unit_bits; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - if(bpc) { - st->size = csiz->upper_bound * bpc; - } else { - st->size = (csiz->upper_bound + 7) >> 3; - } - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - /* X.691 #16 NOTE 1 for fixed length (<= 16 bits) strings */ - if (st->size > 2 || csiz->range_bits != 0) { - if (aper_get_align(pd) < 0) - RETURN(RC_FAIL); - } - if(bpc) { - ASN_DEBUG("Decoding OCTET STRING size %lld", - (long long int)csiz->upper_bound); - ret = OCTET_STRING_per_get_characters(pd, st->buf, - csiz->upper_bound, - bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, - pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ASN_DEBUG("Decoding BIT STRING size %lld", - (long long int)csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, - unit_bits * csiz->upper_bound); - } - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += unit_bits * csiz->upper_bound; - st->buf[st->size] = 0; - if(bpc == 0) { - int ubs = (csiz->upper_bound & 0x7); - st->bits_unused = ubs ? 8 - ubs : 0; - } - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - repeat = 0; - /* Get the PER length */ - if (csiz->upper_bound - csiz->lower_bound == 0) - /* Indefinite length case */ - raw_len = aper_get_length(pd, -1, -1, csiz->effective_bits, &repeat); - else - raw_len = aper_get_length(pd, csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - raw_len += csiz->lower_bound; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - - /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings */ - if ((raw_len > 2) || (csiz->upper_bound > 2) || (csiz->range_bits != 0)) - { - if (aper_get_align(pd) < 0) - RETURN(RC_FAIL); - } - - if(bpc) { - len_bytes = raw_len * bpc; - len_bits = len_bytes * unit_bits; - } else { - len_bits = raw_len; - len_bytes = (len_bits + 7) >> 3; - if(len_bits & 0x7) - st->bits_unused = 8 - (len_bits & 0x7); - /* len_bits be multiple of 16K if repeat is set */ - } - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - if(bpc) { - ret = OCTET_STRING_per_get_characters(pd, - &st->buf[st->size], - raw_len, bpc, - unit_bits, - cval->lower_bound, - cval->upper_bound, - pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ret = per_get_many_bits(pd, &st->buf[st->size], - 0, len_bits); - } - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -OCTET_STRING_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints - ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - unsigned int sizeinunits; - const uint8_t *buf; - int ret; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - switch(specs->subvariant) { - default: -/* - case ASN_OSUBV_ANY: - ASN__ENCODE_FAILED; -*/ - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - sizeinunits = st->size * 8 - (st->bits_unused & 0x07); - ASN_DEBUG("BIT STRING of %d bytes", - sizeinunits); - break; - case ASN_OSUBV_ANY: - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; -/* - if(cval->flags & APC_CONSTRAINED) - unit_bits = 8; -*/ - bpc = OS__BPC_CHAR; - sizeinunits = st->size; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - sizeinunits = st->size / 2; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - sizeinunits = st->size / 4; - break; - } - - ASN_DEBUG("Encoding %s into %d units of %d bits" - " (%lld..%lld, effective %d)%s", - td->name, sizeinunits, unit_bits, - (long long int)csiz->lower_bound, - (long long int)csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out wheter size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((int)sizeinunits < csiz->lower_bound - || (int)sizeinunits > csiz->upper_bound) { - if(ct_extensible) { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - inext = 1; - } else - ASN__ENCODE_FAILED; - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits >= 0) { - ASN_DEBUG("Encoding %zu bytes (%lld), length in %d bits", - st->size, (long long int)(sizeinunits - csiz->lower_bound), - csiz->effective_bits); - if (csiz->effective_bits > 0) { - ret = aper_put_length(po, csiz->lower_bound, csiz->upper_bound, - sizeinunits - csiz->lower_bound, NULL); - if(ret < 0) ASN__ENCODE_FAILED; - } - if (csiz->effective_bits > 0 || (st->size > 2) - || (csiz->upper_bound > (2 * 8 / unit_bits)) - || (csiz->range_bits != 0)) - { /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings*/ - if (aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - } - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, st->buf, - sizeinunits, - bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, - pc); - } else { - ret = per_put_many_bits(po, st->buf, - sizeinunits * unit_bits); - } - if(ret) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %zu bytes", st->size); - - if(sizeinunits == 0) { - if(aper_put_length(po, -1, -1, 0, NULL) < 0) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - buf = st->buf; - while(sizeinunits) { - int need_eom = 0; - ssize_t maySave = aper_put_length(po, -1, -1, sizeinunits, &need_eom); - - if(maySave < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %ld of %ld", - (long)maySave, (long)sizeinunits); - - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, buf, maySave, - bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, - pc); - } else { - ret = per_put_many_bits(po, buf, maySave * unit_bits); - } - if(ret) ASN__ENCODE_FAILED; - - if(bpc) - buf += maySave * bpc; - else - buf += maySave >> 3; - sizeinunits -= maySave; - assert(!(maySave & 0x07) || !sizeinunits); - if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c deleted file mode 100644 index 9530eaedb..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_ber.c +++ /dev/null @@ -1,525 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ - -#undef _CH_PHASE -#define _CH_PHASE(ctx, inc) do {\ - if(ctx->phase == 0)\ - ctx->context = 0;\ - ctx->phase += inc;\ - } while(0) - -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) -#undef PREV_PHASE -#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) - -#undef ADVANCE -#define ADVANCE(num_bytes) do {\ - size_t num = (num_bytes);\ - buf_ptr = ((const char *)buf_ptr) + num;\ - size -= num;\ - consumed_myself += num;\ - } while(0) - -#undef RETURN -#define RETURN(_code) do {\ - asn_dec_rval_t tmprval;\ - tmprval.code = _code;\ - tmprval.consumed = consumed_myself;\ - return tmprval;\ - } while(0) - -#undef APPEND -#define APPEND(bufptr, bufsize) do {\ - size_t _bs = (bufsize); /* Append size */\ - size_t _ns = ctx->context; /* Allocated now */\ - size_t _es = st->size + _bs; /* Expected size */\ - /* int is really a typeof(st->size): */\ - if((int)_es < 0) RETURN(RC_FAIL);\ - if(_ns <= _es) {\ - void *ptr;\ - /* Be nice and round to the memory allocator */\ - do { _ns = _ns ? _ns << 1 : 16; }\ - while(_ns <= _es);\ - /* int is really a typeof(st->size): */\ - if((int)_ns < 0) RETURN(RC_FAIL);\ - ptr = REALLOC(st->buf, _ns);\ - if(ptr) {\ - st->buf = (uint8_t *)ptr;\ - ctx->context = _ns;\ - } else {\ - RETURN(RC_FAIL);\ - }\ - ASN_DEBUG("Reallocating into %ld", (long)_ns);\ - }\ - memcpy(st->buf + st->size, bufptr, _bs);\ - /* Convenient nul-termination */\ - st->buf[_es] = '\0';\ - st->size = _es;\ - } while(0) - -/* - * The main reason why ASN.1 is still alive is that too much time and effort - * is necessary for learning it more or less adequately, thus creating a gut - * necessity to demonstrate that acquired skill everywhere afterwards. - * No, I am not going to explain what the following stuff is. - */ -static struct _stack_el * -OS__add_stack_el(struct _stack *st) { - struct _stack_el *nel; - - /* - * Reuse the old stack frame or allocate a new one. - */ - if(st->cur_ptr && st->cur_ptr->next) { - nel = st->cur_ptr->next; - nel->bits_chopped = 0; - nel->got = 0; - /* Retain the nel->cont_level, it's correct. */ - } else { - nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); - if(nel == NULL) - return NULL; - - if(st->tail) { - /* Increase a subcontainment depth */ - nel->cont_level = st->tail->cont_level + 1; - st->tail->next = nel; - } - nel->prev = st->tail; - st->tail = nel; - } - - st->cur_ptr = nel; - - return nel; -} - -static struct _stack * -_new_stack(void) { - return (struct _stack *)CALLOC(1, sizeof(struct _stack)); -} - -/* - * Decode OCTET STRING type. - */ -asn_dec_rval_t -OCTET_STRING_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buf_ptr, size_t size, int tag_mode) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - asn_dec_rval_t rval; - asn_struct_ctx_t *ctx; - ssize_t consumed_myself = 0; - struct _stack *stck; /* Expectations stack structure */ - struct _stack_el *sel = 0; /* Stack element */ - int tlv_constr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - - ASN_DEBUG("Decoding %s as %s (frame %ld)", - td->name, - (type_variant == ASN_OSUBV_STR) ? - "OCTET STRING" : "OS-SpecialCase", - (long)size); - - /* - * Create the string if does not exist. - */ - if(st == NULL) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(st == NULL) RETURN(RC_FAIL); - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - switch(ctx->phase) { - case 0: - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, ctx, - buf_ptr, size, tag_mode, -1, - &ctx->left, &tlv_constr); - if(rval.code != RC_OK) - return rval; - - if(tlv_constr) { - /* - * Complex operation, requires stack of expectations. - */ - ctx->ptr = _new_stack(); - if(!ctx->ptr) { - RETURN(RC_FAIL); - } - } else { - /* - * Jump into stackless primitive decoding. - */ - _CH_PHASE(ctx, 3); - if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) - APPEND(buf_ptr, rval.consumed); - ADVANCE(rval.consumed); - goto phase3; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - phase1: - /* - * Fill the stack with expectations. - */ - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - do { - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_tag_t expected_tag; - ssize_t tl, ll, tlvl; - /* This one works even if (sel->left == -1) */ - size_t Left = ((!sel||(size_t)sel->left >= size) - ?size:(size_t)sel->left); - - - ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", (void *)sel, - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)(sel?sel->got:0) - ); - if(sel && sel->left <= 0 && sel->want_nulls == 0) { - if(sel->prev) { - struct _stack_el *prev = sel->prev; - if(prev->left != -1) { - if(prev->left < sel->got) - RETURN(RC_FAIL); - prev->left -= sel->got; - } - prev->got += sel->got; - sel = stck->cur_ptr = prev; - if(!sel) break; - tlv_constr = 1; - continue; - } else { - sel = stck->cur_ptr = 0; - break; /* Nothing to wait */ - } - } - - tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); - ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", - (long)size, (long)Left, sel?"":"!", - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)tl); - switch(tl) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); - - ll = ber_fetch_length(tlv_constr, - (const char *)buf_ptr + tl,Left - tl,&tlv_len); - ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", - ber_tlv_tag_string(tlv_tag), tlv_constr, - (long)Left, (long)tl, (long)tlv_len, (long)ll); - switch(ll) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - if(sel && sel->want_nulls - && ((const uint8_t *)buf_ptr)[0] == 0 - && ((const uint8_t *)buf_ptr)[1] == 0) - { - ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); - - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND("\0\0", 2); - - ADVANCE(2); - sel->got += 2; - if(sel->left != -1) { - sel->left -= 2; /* assert(sel->left >= 2) */ - } - - sel->want_nulls--; - if(sel->want_nulls == 0) { - /* Move to the next expectation */ - sel->left = 0; - tlv_constr = 1; - } - - continue; - } - - /* - * Set up expected tags, - * depending on ASN.1 type being decoded. - */ - switch(type_variant) { - case ASN_OSUBV_BIT: - /* X.690: 8.6.4.1, NOTE 2 */ - /* Fall through */ - case ASN_OSUBV_STR: - default: - if(sel) { - unsigned level = sel->cont_level; - if(level < td->all_tags_count) { - expected_tag = td->all_tags[level]; - break; - } else if(td->all_tags_count) { - expected_tag = td->all_tags - [td->all_tags_count - 1]; - break; - } - /* else, Fall through */ - } - /* Fall through */ - case ASN_OSUBV_ANY: - expected_tag = tlv_tag; - break; - } - - if(tlv_tag != expected_tag) { - char buf[2][32]; - ber_tlv_tag_snprint(tlv_tag, - buf[0], sizeof(buf[0])); - ber_tlv_tag_snprint(td->tags[td->tags_count-1], - buf[1], sizeof(buf[1])); - ASN_DEBUG("Tag does not match expectation: %s != %s", - buf[0], buf[1]); - RETURN(RC_FAIL); - } - - tlvl = tl + ll; /* Combined length of T and L encoding */ - if((tlv_len + tlvl) < 0) { - /* tlv_len value is too big */ - ASN_DEBUG("TLV encoding + length (%ld) is too big", - (long)tlv_len); - RETURN(RC_FAIL); - } - - /* - * Append a new expectation. - */ - sel = OS__add_stack_el(stck); - if(!sel) RETURN(RC_FAIL); - - sel->tag = tlv_tag; - - sel->want_nulls = (tlv_len==-1); - if(sel->prev && sel->prev->left != -1) { - /* Check that the parent frame is big enough */ - if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) - RETURN(RC_FAIL); - if(tlv_len == -1) - sel->left = sel->prev->left - tlvl; - else - sel->left = tlv_len; - } else { - sel->left = tlv_len; - } - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND(buf_ptr, tlvl); - sel->got += tlvl; - ADVANCE(tlvl); - - ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%u", - (long)sel->got, (long)sel->left, - sel->want_nulls, sel->cont_level); - - } while(tlv_constr); - if(sel == NULL) { - /* Finished operation, "phase out" */ - ASN_DEBUG("Phase out"); - _CH_PHASE(ctx, +3); - break; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 2: - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", - (long)sel->left, (long)size, (long)sel->got, - sel->want_nulls); - { - ber_tlv_len_t len; - - assert(sel->left >= 0); - - len = ((ber_tlv_len_t)size < sel->left) - ? (ber_tlv_len_t)size : sel->left; - if(len > 0) { - if(type_variant == ASN_OSUBV_BIT - && sel->bits_chopped == 0) { - /* Put the unused-bits-octet away */ - st->bits_unused = *(const uint8_t *)buf_ptr; - APPEND(((const char *)buf_ptr+1), (len - 1)); - sel->bits_chopped = 1; - } else { - APPEND(buf_ptr, len); - } - ADVANCE(len); - sel->left -= len; - sel->got += len; - } - - if(sel->left) { - ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", - (long)sel->left, (long)size, sel->want_nulls); - RETURN(RC_WMORE); - } - - PREV_PHASE(ctx); - goto phase1; - } - break; - case 3: - phase3: - /* - * Primitive form, no stack required. - */ - assert(ctx->left >= 0); - - if(size < (size_t)ctx->left) { - if(!size) RETURN(RC_WMORE); - if(type_variant == ASN_OSUBV_BIT && !ctx->context) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, size); - assert(ctx->context > 0); - ctx->left -= size; - ADVANCE(size); - RETURN(RC_WMORE); - } else { - if(type_variant == ASN_OSUBV_BIT - && !ctx->context && ctx->left) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, ctx->left); - ADVANCE(ctx->left); - ctx->left = 0; - - NEXT_PHASE(ctx); - } - break; - } - - if(sel) { - ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", - (void *)sel->prev, sel->want_nulls, - (long)sel->left, (long)sel->got, (long)size); - if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { - RETURN(RC_WMORE); - } - } - - /* - * BIT STRING-specific processing. - */ - if(type_variant == ASN_OSUBV_BIT) { - if(st->size) { - if(st->bits_unused < 0 || st->bits_unused > 7) { - RETURN(RC_FAIL); - } - /* Finalize BIT STRING: zero out unused bits. */ - st->buf[st->size-1] &= 0xff << st->bits_unused; - } else { - if(st->bits_unused) { - RETURN(RC_FAIL); - } - } - } - - ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", - (long)consumed_myself, td->name, - (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", - (long)st->size); - - - RETURN(RC_OK); -} - -/* - * Encode OCTET STRING type using DER. - */ -asn_enc_rval_t -OCTET_STRING_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = { 0, 0, 0 }; - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - int fix_last_byte = 0; - - ASN_DEBUG("%s %s as OCTET STRING", - cb?"Estimating":"Encoding", td->name); - - /* - * Write tags. - */ - if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { - er.encoded = der_write_tags(td, - (type_variant == ASN_OSUBV_BIT) + st->size, - tag_mode, type_variant == ASN_OSUBV_ANY, tag, - cb, app_key); - if(er.encoded == -1) { - er.failed_type = td; - er.structure_ptr = sptr; - return er; - } - } else { - /* Disallow: [] IMPLICIT ANY */ - assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); - er.encoded = 0; - } - - if(!cb) { - er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; - ASN__ENCODED_OK(er); - } - - /* - * Prepare to deal with the last octet of BIT STRING. - */ - if(type_variant == ASN_OSUBV_BIT) { - uint8_t b = st->bits_unused & 0x07; - if(b && st->size) fix_last_byte = 1; - ASN__CALLBACK(&b, 1); - } - - /* Invoke callback for the main part of the buffer */ - ASN__CALLBACK(st->buf, st->size - fix_last_byte); - - /* The last octet should be stripped off the unused bits */ - if(fix_last_byte) { - uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); - ASN__CALLBACK(&b, 1); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c deleted file mode 100644 index d744cc3e3..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_jer.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ - -asn_enc_rval_t -OCTET_STRING_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - ASN__CALLBACK("\"", 1); - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - ASN__CALLBACK(scratch, p-scratch); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - } - if(p - scratch) { - ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ - } - ASN__CALLBACK("\"", 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -static const struct OCTET_STRING__jer_escape_table_s { - const char *string; - int size; -} OCTET_STRING__jer_escape_table[] = { -#define OSXET(s) { s, sizeof(s) - 1 } - OSXET("\074\156\165\154\057\076"), /* */ - OSXET("\074\163\157\150\057\076"), /* */ - OSXET("\074\163\164\170\057\076"), /* */ - OSXET("\074\145\164\170\057\076"), /* */ - OSXET("\074\145\157\164\057\076"), /* */ - OSXET("\074\145\156\161\057\076"), /* */ - OSXET("\074\141\143\153\057\076"), /* */ - OSXET("\074\142\145\154\057\076"), /* */ - OSXET("\074\142\163\057\076"), /* */ - OSXET("\011"), /* \t */ - OSXET("\012"), /* \n */ - OSXET("\074\166\164\057\076"), /* */ - OSXET("\074\146\146\057\076"), /* */ - OSXET("\015"), /* \r */ - OSXET("\074\163\157\057\076"), /* */ - OSXET("\074\163\151\057\076"), /* */ - OSXET("\074\144\154\145\057\076"), /* */ - OSXET("\074\144\143\061\057\076"), /* */ - OSXET("\074\144\143\062\057\076"), /* */ - OSXET("\074\144\143\063\057\076"), /* */ - OSXET("\074\144\143\064\057\076"), /* */ - OSXET("\074\156\141\153\057\076"), /* */ - OSXET("\074\163\171\156\057\076"), /* */ - OSXET("\074\145\164\142\057\076"), /* */ - OSXET("\074\143\141\156\057\076"), /* */ - OSXET("\074\145\155\057\076"), /* */ - OSXET("\074\163\165\142\057\076"), /* */ - OSXET("\074\145\163\143\057\076"), /* */ - OSXET("\074\151\163\064\057\076"), /* */ - OSXET("\074\151\163\063\057\076"), /* */ - OSXET("\074\151\163\062\057\076"), /* */ - OSXET("\074\151\163\061\057\076"), /* */ - { 0, 0 }, /* " " */ - { 0, 0 }, /* ! */ - { 0, 0 }, /* \" */ - { 0, 0 }, /* # */ - { 0, 0 }, /* $ */ - { 0, 0 }, /* % */ - OSXET("\046\141\155\160\073"), /* & */ - { 0, 0 }, /* ' */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ - {0,0},{0,0},{0,0},{0,0}, /* 89:; */ - OSXET("\046\154\164\073"), /* < */ - { 0, 0 }, /* = */ - OSXET("\046\147\164\073"), /* > */ -}; - -asn_enc_rval_t -OCTET_STRING_encode_jer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - uint8_t *buf, *end; - uint8_t *ss; /* Sequence start */ - ssize_t encoded_len = 0; - - (void)ilevel; /* Unused argument */ - (void)flags; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - buf = st->buf; - end = buf + st->size; - for(ss = buf; buf < end; buf++) { - unsigned int ch = *buf; - int s_len; /* Special encoding sequence length */ - - /* - * Escape certain characters: X.680/11.15 - */ - if(ch < sizeof(OCTET_STRING__jer_escape_table) - / sizeof(OCTET_STRING__jer_escape_table[0]) - && (s_len = OCTET_STRING__jer_escape_table[ch].size)) { - if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) - || cb(OCTET_STRING__jer_escape_table[ch].string, s_len, app_key) < 0) - ASN__ENCODE_FAILED; - encoded_len += (buf - ss) + s_len; - ss = buf + 1; - } - } - - encoded_len += (buf - ss); - if((buf - ss) && cb(ss, buf - ss, app_key) < 0) - ASN__ENCODE_FAILED; - - er.encoded = encoded_len; - ASN__ENCODED_OK(er); -} - diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c deleted file mode 100644 index e69d0a6a4..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_oer.c +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - - size_t unit_bytes; - switch(specs->subvariant) { - default: - case ASN_OSUBV_BIT: - ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING"); - ASN__DECODE_FAILED; - case ASN_OSUBV_ANY: - /* Fall through */ - case ASN_OSUBV_STR: - unit_bytes = 1; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - break; - } - - (void)opt_codec_ctx; - - if(!st) { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) ASN__DECODE_FAILED; - } - - if(ct_size >= 0) { - expected_length = unit_bytes * ct_size; - } else { - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - rval.consumed = len_len; - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(expected_length % unit_bytes != 0) { - ASN_DEBUG( - "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "", - expected_length, unit_bytes); - ASN__DECODE_FAILED; - } - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - - rval.consumed += expected_length; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_enc_rval_t er = {0, 0, 0}; - - if(!st) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size); - - if(ct_size >= 0) { - /* - * Check that available data matches the constraint - */ - size_t unit_bytes; - switch(specs->subvariant) { - default: - case ASN_OSUBV_BIT: - ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING"); - ASN__ENCODE_FAILED; - case ASN_OSUBV_ANY: - /* Fall through */ - case ASN_OSUBV_STR: - unit_bytes = 1; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - break; - } - - if(st->size != unit_bytes * (size_t)ct_size) { - ASN_DEBUG( - "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE " - "constraint (%" ASN_PRI_SIZE ")", - td->name, st->size, ct_size); - ASN__ENCODE_FAILED; - } - } else { - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t ret = oer_serialize_length(st->size, cb, app_key); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += ret; - } - - er.encoded += st->size; - if(cb(st->buf, st->size, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c deleted file mode 100644 index 6daa33e9f..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_print.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -OCTET_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - (void)td; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = (buf == NULL)? NULL : buf + st->size; - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - _i_INDENT(1); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Remove the tail space */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - return 0; -} - -int -OCTET_STRING_print_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, - void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st && (st->buf || !st->size)) { - return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c deleted file mode 100644 index 5c8b0648e..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_rfill.c +++ /dev/null @@ -1,209 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Biased function for randomizing character values around their limits. - */ -static uint32_t -OCTET_STRING__random_char(unsigned long lb, unsigned long ub) { - assert(lb <= ub); - switch(asn_random_between(0, 16)) { - case 0: - if(lb < ub) return lb + 1; - /* Fall through */ - case 1: - return lb; - case 2: - if(lb < ub) return ub - 1; - /* Fall through */ - case 3: - return ub; - default: - return asn_random_between(lb, ub); - } -} - -asn_random_fill_result_t -OCTET_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - unsigned int unit_bytes = 1; - unsigned long clb = 0; /* Lower bound on char */ - unsigned long cub = 255; /* Higher bound on char value */ - uint8_t *buf; - uint8_t *bend; - uint8_t *b; - size_t rnd_len; - OCTET_STRING_t *st; - - if(max_length == 0 && !*sptr) return result_skipped; - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - return result_failed; - case ASN_OSUBV_BIT: - /* Handled by BIT_STRING itself. */ - return result_failed; - case ASN_OSUBV_STR: - unit_bytes = 1; - clb = 0; - cub = 255; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - clb = 0; - cub = 65535; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - clb = 0; - cub = 0x10FFFF; - break; - } - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->value; - if(pc->flags & APC_SEMI_CONSTRAINED) { - clb = pc->lower_bound; - } else if(pc->flags & APC_CONSTRAINED) { - clb = pc->lower_bound; - cub = pc->upper_bound; - } - } -#else - if(!constraints) constraints = &td->encoding_constraints; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - - rnd_len = - OCTET_STRING_random_length_constrained(td, constraints, max_length); - - buf = CALLOC(unit_bytes, rnd_len + 1); - if(!buf) return result_failed; - - bend = &buf[unit_bytes * rnd_len]; - - switch(unit_bytes) { - case 1: - for(b = buf; b < bend; b += unit_bytes) { - *(uint8_t *)b = OCTET_STRING__random_char(clb, cub); - } - *(uint8_t *)b = 0; - break; - case 2: - for(b = buf; b < bend; b += unit_bytes) { - uint32_t code = OCTET_STRING__random_char(clb, cub); - b[0] = code >> 8; - b[1] = code; - } - *(uint16_t *)b = 0; - break; - case 4: - for(b = buf; b < bend; b += unit_bytes) { - uint32_t code = OCTET_STRING__random_char(clb, cub); - b[0] = code >> 24; - b[1] = code >> 16; - b[2] = code >> 8; - b[3] = code; - } - *(uint32_t *)b = 0; - break; - } - - if(*sptr) { - st = *sptr; - FREEMEM(st->buf); - } else { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) { - FREEMEM(buf); - return result_failed; - } - } - - st->buf = buf; - st->size = unit_bytes * rnd_len; - - result_ok.length = st->size; - return result_ok; -} - -size_t -OCTET_STRING_random_length_constrained( - const asn_TYPE_descriptor_t *td, - const asn_encoding_constraints_t *constraints, size_t max_length) { - const unsigned lengths[] = {0, 1, 2, 3, 4, 8, - 126, 127, 128, 16383, 16384, 16385, - 65534, 65535, 65536, 65537}; - size_t rnd_len; - - /* Figure out how far we should go */ - rnd_len = lengths[asn_random_between( - 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_CONSTRAINED) { - long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length - ? pc->upper_bound - : (ssize_t)max_length; - if(max_length <= (size_t)pc->lower_bound) { - return pc->lower_bound; - } - if(pc->flags & APC_EXTENSIBLE) { - switch(asn_random_between(0, 5)) { - case 0: - if(pc->lower_bound > 0) { - rnd_len = pc->lower_bound - 1; - break; - } - /* Fall through */ - case 1: - rnd_len = pc->upper_bound + 1; - break; - case 2: - /* Keep rnd_len from the table */ - if(rnd_len <= max_length) { - break; - } - /* Fall through */ - default: - rnd_len = asn_random_between(pc->lower_bound, - suggested_upper_bound); - } - } else { - rnd_len = - asn_random_between(pc->lower_bound, suggested_upper_bound); - } - } else { - rnd_len = asn_random_between(0, max_length); - } - } else { -#else - if(!constraints) constraints = &td->encoding_constraints; - { -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - if(rnd_len > max_length) { - rnd_len = asn_random_between(0, max_length); - } - } - - return rnd_len; -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c deleted file mode 100644 index 80130cadc..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_uper.c +++ /dev/null @@ -1,319 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ - -#undef RETURN -#define RETURN(_code) do {\ - asn_dec_rval_t tmprval;\ - tmprval.code = _code;\ - tmprval.consumed = consumed_myself;\ - return tmprval;\ - } while(0) - -static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { - { APC_CONSTRAINED, 8, 8, 0, 255 }, - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, - 0, 0 -}; - -asn_dec_rval_t -OCTET_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - enum { - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - - (void)opt_codec_ctx; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - case ASN_OSUBV_BIT: - ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); - RETURN(RC_FAIL); - break; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - break; - } - - /* - * Allocate the string. - */ - if(!st) { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - if(bpc) { - st->size = csiz->upper_bound * bpc; - } else { - st->size = (csiz->upper_bound + 7) >> 3; - } - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - if(bpc) { - ASN_DEBUG("Encoding OCTET STRING size %ld", - csiz->upper_bound); - ret = OCTET_STRING_per_get_characters(pd, st->buf, - csiz->upper_bound, - bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, - pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ASN_DEBUG("Encoding BIT STRING size %ld", - csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, - unit_bits * csiz->upper_bound); - } - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += unit_bits * csiz->upper_bound; - st->buf[st->size] = 0; - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, - &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len * bpc; - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = OCTET_STRING_per_get_characters(pd, &st->buf[st->size], raw_len, - bpc, unit_bits, cval->lower_bound, - cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -OCTET_STRING_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints - ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - size_t size_in_units; - const uint8_t *buf; - int ret; - enum { - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - case ASN_OSUBV_BIT: - ASN__ENCODE_FAILED; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - size_in_units = st->size; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - size_in_units = st->size >> 1; - if(st->size & 1) { - ASN_DEBUG("%s string size is not modulo 2", td->name); - ASN__ENCODE_FAILED; - } - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - size_in_units = st->size >> 2; - if(st->size & 3) { - ASN_DEBUG("%s string size is not modulo 4", td->name); - ASN__ENCODE_FAILED; - } - break; - } - - ASN_DEBUG("Encoding %s into %" ASN_PRI_SIZE " units of %d bits" - " (%ld..%ld, effective %d)%s", - td->name, size_in_units, unit_bits, - csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out whether size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((ssize_t)size_in_units < csiz->lower_bound - || (ssize_t)size_in_units > csiz->upper_bound) { - if(ct_extensible) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - inext = 1; - } else { - ASN__ENCODE_FAILED; - } - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - if(csiz->effective_bits >= 0 && !inext) { - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes (%ld), length in %d bits", st->size, - size_in_units - csiz->lower_bound, csiz->effective_bits); - ret = per_put_few_bits(po, size_in_units - csiz->lower_bound, - csiz->effective_bits); - if(ret) ASN__ENCODE_FAILED; - ret = OCTET_STRING_per_put_characters(po, st->buf, size_in_units, bpc, - unit_bits, cval->lower_bound, - cval->upper_bound, pc); - if(ret) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); - - buf = st->buf; - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " in units", size_in_units); - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size_in_units, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "%s", may_save, size_in_units, - need_eom ? ",+EOM" : ""); - - ret = OCTET_STRING_per_put_characters(po, buf, may_save, bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, pc); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save * bpc; - size_in_units -= may_save; - assert(!(may_save & 0x07) || !size_in_units); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size_in_units); - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c b/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c deleted file mode 100644 index 490f362a9..000000000 --- a/src/tmx/Asn_J2735/src/2020/OCTET_STRING_xer.c +++ /dev/null @@ -1,627 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ - -asn_enc_rval_t -OCTET_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - if(flags & XER_F_CANONICAL) { - char *scend = scratch + (sizeof(scratch) - 2); - for(; buf < end; buf++) { - if(p >= scend) { - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - } - - ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ - } else { - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - ASN__CALLBACK(scratch, p-scratch); - p = scratch; - ASN__TEXT_INDENT(1, ilevel); - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - if(p - scratch) { - p--; /* Remove the tail space */ - ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ - if(st->size > 16) - ASN__TEXT_INDENT(1, ilevel-1); - } - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -static const struct OCTET_STRING__xer_escape_table_s { - const char *string; - int size; -} OCTET_STRING__xer_escape_table[] = { -#define OSXET(s) { s, sizeof(s) - 1 } - OSXET("\074\156\165\154\057\076"), /* */ - OSXET("\074\163\157\150\057\076"), /* */ - OSXET("\074\163\164\170\057\076"), /* */ - OSXET("\074\145\164\170\057\076"), /* */ - OSXET("\074\145\157\164\057\076"), /* */ - OSXET("\074\145\156\161\057\076"), /* */ - OSXET("\074\141\143\153\057\076"), /* */ - OSXET("\074\142\145\154\057\076"), /* */ - OSXET("\074\142\163\057\076"), /* */ - OSXET("\011"), /* \t */ - OSXET("\012"), /* \n */ - OSXET("\074\166\164\057\076"), /* */ - OSXET("\074\146\146\057\076"), /* */ - OSXET("\015"), /* \r */ - OSXET("\074\163\157\057\076"), /* */ - OSXET("\074\163\151\057\076"), /* */ - OSXET("\074\144\154\145\057\076"), /* */ - OSXET("\074\144\143\061\057\076"), /* */ - OSXET("\074\144\143\062\057\076"), /* */ - OSXET("\074\144\143\063\057\076"), /* */ - OSXET("\074\144\143\064\057\076"), /* */ - OSXET("\074\156\141\153\057\076"), /* */ - OSXET("\074\163\171\156\057\076"), /* */ - OSXET("\074\145\164\142\057\076"), /* */ - OSXET("\074\143\141\156\057\076"), /* */ - OSXET("\074\145\155\057\076"), /* */ - OSXET("\074\163\165\142\057\076"), /* */ - OSXET("\074\145\163\143\057\076"), /* */ - OSXET("\074\151\163\064\057\076"), /* */ - OSXET("\074\151\163\063\057\076"), /* */ - OSXET("\074\151\163\062\057\076"), /* */ - OSXET("\074\151\163\061\057\076"), /* */ - { 0, 0 }, /* " " */ - { 0, 0 }, /* ! */ - { 0, 0 }, /* \" */ - { 0, 0 }, /* # */ - { 0, 0 }, /* $ */ - { 0, 0 }, /* % */ - OSXET("\046\141\155\160\073"), /* & */ - { 0, 0 }, /* ' */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ - {0,0},{0,0},{0,0},{0,0}, /* 89:; */ - OSXET("\046\154\164\073"), /* < */ - { 0, 0 }, /* = */ - OSXET("\046\147\164\073"), /* > */ -}; - -static int -OS__check_escaped_control_char(const void *buf, int size) { - size_t i; - /* - * Inefficient algorithm which translates the escape sequences - * defined above into characters. Returns -1 if not found. - * TODO: replace by a faster algorithm (bsearch(), hash or - * nested table lookups). - */ - for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { - const struct OCTET_STRING__xer_escape_table_s *el; - el = &OCTET_STRING__xer_escape_table[i]; - if(el->size == size && memcmp(buf, el->string, size) == 0) - return i; - } - return -1; -} - -static int -OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { - /* - * This might be one of the escape sequences - * for control characters. Check it out. - * #11.15.5 - */ - int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); - if(control_char >= 0) { - OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; - void *p = REALLOC(st->buf, st->size + 2); - if(p) { - st->buf = (uint8_t *)p; - st->buf[st->size++] = control_char; - st->buf[st->size] = '\0'; /* nul-termination */ - return 0; - } - } - - return -1; /* No, it's not */ -} - -asn_enc_rval_t -OCTET_STRING_encode_xer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - uint8_t *buf, *end; - uint8_t *ss; /* Sequence start */ - ssize_t encoded_len = 0; - - (void)ilevel; /* Unused argument */ - (void)flags; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - buf = st->buf; - end = buf + st->size; - for(ss = buf; buf < end; buf++) { - unsigned int ch = *buf; - int s_len; /* Special encoding sequence length */ - - /* - * Escape certain characters: X.680/11.15 - */ - if(ch < sizeof(OCTET_STRING__xer_escape_table) - / sizeof(OCTET_STRING__xer_escape_table[0]) - && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { - if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) - || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, app_key) < 0) - ASN__ENCODE_FAILED; - encoded_len += (buf - ss) + s_len; - ss = buf + 1; - } - } - - encoded_len += (buf - ss); - if((buf - ss) && cb(ss, buf - ss, app_key) < 0) - ASN__ENCODE_FAILED; - - er.encoded = encoded_len; - ASN__ENCODED_OK(er); -} - -/* - * Convert from hexadecimal format (cstring): "AB CD EF" - */ -static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *chunk_stop = (const char *)chunk_buf; - const char *p = chunk_stop; - const char *pend = p + chunk_size; - unsigned int clv = 0; - int half = 0; /* Half bit */ - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - size_t new_size = st->size + (chunk_size + 1) / 2; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * If something like " a b c " appears here, the " a b":3 will be - * converted, and the rest skipped. That is, unless buf_size is greater - * than chunk_size, then it'll be equivalent to "ABC0". - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - continue; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - clv = (clv << 4) + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - clv = (clv << 4) + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - clv = (clv << 4) + (ch - 0x61 + 10); - break; - default: - *buf = 0; /* JIC */ - return -1; - } - if(half++) { - half = 0; - *buf++ = clv; - chunk_stop = p + 1; - } - } - - /* - * Check partial decoding. - */ - if(half) { - if(have_more) { - /* - * Partial specification is fine, - * because no more more PXER_TEXT data is available. - */ - *buf++ = clv << 4; - chunk_stop = p; - } - } else { - chunk_stop = p; - } - - st->size = buf - st->buf; /* Adjust the buffer size */ - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return (chunk_stop - (const char *)chunk_buf); /* Converted size */ -} - -/* - * Convert from binary format: "00101011101" - */ -static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - BIT_STRING_t *st = (BIT_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = (p == NULL)? NULL : p + chunk_size; - int bits_unused = st->bits_unused & 0x7; - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - size_t new_size = st->size + (chunk_size + 7) / 8; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - (void)have_more; - - if(bits_unused == 0) - bits_unused = 8; - else if(st->size) - buf--; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - break; - case 0x30: - case 0x31: - if(bits_unused-- <= 0) { - *++buf = 0; /* Clean the cell */ - bits_unused = 7; - } - *buf |= (ch&1) << bits_unused; - break; - default: - st->bits_unused = bits_unused; - return -1; - } - } - - if(bits_unused == 8) { - st->size = buf - st->buf; - st->bits_unused = 0; - } else { - st->size = buf - st->buf + 1; - st->bits_unused = bits_unused; - } - - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Something like strtod(), but with stricter rules. - */ -static int -OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { - const int32_t last_unicode_codepoint = 0x10ffff; - int32_t val = 0; - const char *p; - - for(p = buf; p < end; p++) { - int ch = *p; - - switch(ch) { - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - val = val * base + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - val = val * base + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - val = val * base + (ch - 0x61 + 10); - break; - case 0x3b: /* ';' */ - *ret_value = val; - return (p - buf) + 1; - default: - return -1; /* Character set error */ - } - - /* Value exceeds the Unicode range. */ - if(val > last_unicode_codepoint) { - return -1; - } - } - - *ret_value = -1; - return (p - buf); -} - -/* - * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" - */ -static ssize_t -OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, - size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - uint8_t *buf; - - /* Reallocate buffer */ - size_t new_size = st->size + chunk_size; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - int len; /* Length of the rest of the chunk */ - - if(ch != 0x26 /* '&' */) { - *buf++ = ch; - continue; /* That was easy... */ - } - - /* - * Process entity reference. - */ - len = chunk_size - (p - (const char *)chunk_buf); - if(len == 1 /* "&" */) goto want_more; - if(p[1] == 0x23 /* '#' */) { - const char *pval; /* Pointer to start of digits */ - int32_t val = 0; /* Entity reference value */ - int base; - - if(len == 2 /* "&#" */) goto want_more; - if(p[2] == 0x78 /* 'x' */) - pval = p + 3, base = 16; - else - pval = p + 2, base = 10; - len = OS__strtoent(base, pval, p + len, &val); - if(len == -1) { - /* Invalid charset. Just copy verbatim. */ - *buf++ = ch; - continue; - } - if(!len || pval[len-1] != 0x3b) goto want_more; - assert(val > 0); - p += (pval - p) + len - 1; /* Advance past entref */ - - if(val < 0x80) { - *buf++ = (char)val; - } else if(val < 0x800) { - *buf++ = 0xc0 | ((val >> 6)); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x10000) { - *buf++ = 0xe0 | ((val >> 12)); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x200000) { - *buf++ = 0xf0 | ((val >> 18)); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x4000000) { - *buf++ = 0xf8 | ((val >> 24)); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else { - *buf++ = 0xfc | ((val >> 30) & 0x1); - *buf++ = 0x80 | ((val >> 24) & 0x3f); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } - } else { - /* - * Ugly, limited parsing of & > < - */ - char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); - if(!sc) goto want_more; - if((sc - p) == 4 - && p[1] == 0x61 /* 'a' */ - && p[2] == 0x6d /* 'm' */ - && p[3] == 0x70 /* 'p' */) { - *buf++ = 0x26; - p = sc; - continue; - } - if((sc - p) == 3) { - if(p[1] == 0x6c) { - *buf = 0x3c; /* '<' */ - } else if(p[1] == 0x67) { - *buf = 0x3e; /* '>' */ - } else { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - if(p[2] != 0x74) { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - buf++; - p = sc; - continue; - } - /* Unsupported entity reference */ - *buf++ = ch; - } - - continue; - want_more: - if(have_more) { - /* - * We know that no more data (of the same type) - * is coming. Copy the rest verbatim. - */ - *buf++ = ch; - continue; - } - chunk_size = (p - (const char *)chunk_buf); - /* Processing stalled: need more data */ - break; - } - - st->size = buf - st->buf; - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Decode OCTET STRING from the XML element's body. - */ -static asn_dec_rval_t -OCTET_STRING__decode_xer( - const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, - void **sptr, const char *opt_mname, const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder)(void *struct_ptr, const void *chunk_buf, - size_t chunk_size), - ssize_t (*body_receiver)(void *struct_ptr, const void *chunk_buf, - size_t chunk_size, int have_more)) { - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t *ctx; /* Per-structure parser context */ - asn_dec_rval_t rval; /* Return value from the decoder */ - int st_allocated; - - /* - * Create the string if does not exist. - */ - if(!st) { - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - *sptr = (void *)st; - if(!st) goto sta_failed; - st_allocated = 1; - } else { - st_allocated = 0; - } - if(!st->buf) { - /* This is separate from above section */ - st->buf = (uint8_t *)CALLOC(1, 1); - if(!st->buf) { - if(st_allocated) { - *sptr = 0; - goto stb_failed; - } else { - goto sta_failed; - } - } - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); - - return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, - buf_ptr, size, - opt_unexpected_tag_decoder, - body_receiver); - -stb_failed: - FREEMEM(st); -sta_failed: - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; -} - -/* - * Decode OCTET STRING from the hexadecimal data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_hex(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, - OCTET_STRING__convert_hexadecimal); -} - -/* - * Decode OCTET STRING from the binary (0/1) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_binary(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, - OCTET_STRING__convert_binary); -} - -/* - * Decode OCTET STRING from the string (ASCII/UTF-8) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_utf8(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, - OCTET_STRING__handle_control_chars, - OCTET_STRING__convert_entrefs); -} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c deleted file mode 100644 index c9afecffe..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_TYPE_operation_t asn_OP_OPEN_TYPE = { - OPEN_TYPE_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OPEN_TYPE_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OPEN_TYPE_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OPEN_TYPE_decode_ber, - OPEN_TYPE_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OPEN_TYPE_decode_xer, - OPEN_TYPE_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OPEN_TYPE_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - OPEN_TYPE_decode_oer, - OPEN_TYPE_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OPEN_TYPE_decode_uper, - OPEN_TYPE_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OPEN_TYPE_decode_aper, - OPEN_TYPE_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - 0, /* Random fill is not supported for open type */ -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c deleted file mode 100644 index 3e2ab1888..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_aper.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, asn_per_data_t *pd) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = aper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, pd); - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_WMORE: - case RC_FAIL: - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - } - return rv; -} - -asn_enc_rval_t -OPEN_TYPE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const void *memb_ptr; /* Pointer to the member */ - asn_TYPE_member_t *elm; /* CHOICE's element */ - asn_enc_rval_t er = {0,0,0}; - unsigned present; - - (void)constraints; - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - present--; - } - - ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(aper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { - ASN__ENCODE_FAILED; - } - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - - -int OPEN_TYPE_aper_is_unknown_type(const asn_TYPE_descriptor_t *td, void *sptr, const asn_TYPE_member_t *elm) { - asn_type_selector_result_t selected; - - if(!elm->type_selector) { - return 1; - } - else { - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - return 1; - } - } - return 0; -} - -asn_dec_rval_t -OPEN_TYPE_aper_unknown_type_discard_bytes (asn_per_data_t *pd) { -#define ASN_DUMMY_BYTES 256 - unsigned char dummy[ASN_DUMMY_BYTES], *dummy_ptr = NULL; - ssize_t bytes; - int repeat; - asn_dec_rval_t rv; - - rv.consumed = 0; - rv.code = RC_FAIL; - - do { - bytes = aper_get_length(pd, -1, -1, -1, &repeat); - if (bytes > 10 * ASN_DUMMY_BYTES) - { - return rv; - } - else if (bytes > ASN_DUMMY_BYTES) - { - dummy_ptr = CALLOC(1, bytes); - if (!dummy_ptr) - return rv; - } - - per_get_many_bits(pd, (dummy_ptr ? dummy_ptr : dummy), 0, bytes << 3); - - if (dummy_ptr) - { - FREEMEM(dummy_ptr); - dummy_ptr = NULL; - } - } while (repeat); - - rv.code = RC_OK; - return rv; -#undef ASN_DUMMY_BYTES -} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c deleted file mode 100644 index 7d8948072..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_ber.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, const void *ptr, size_t size) { - size_t consumed_myself = 0; - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - ASN_DEBUG("presence %d\n", selected.presence_index); - - rv = selected.type_descriptor->op->ber_decoder( - opt_codec_ctx, selected.type_descriptor, &inner_value, ptr, size, - elm->tag_mode); - ADVANCE(rv.consumed); - rv.consumed = 0; - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - rv.code = RC_OK; - rv.consumed = consumed_myself; - return rv; - } else { - /* Oh, now a full-blown failure failure */ - } - /* Fall through */ - case RC_FAIL: - rv.consumed = consumed_myself; - /* Fall through */ - case RC_WMORE: - break; - } - - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - return rv; -} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c deleted file mode 100644 index 05a5eaad2..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_oer.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - asn_TYPE_member_t *elm, const void *ptr, size_t size) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - size_t ot_ret; - - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, ptr, size); - switch(ot_ret) { - default: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - rv.code = RC_OK; - rv.consumed = ot_ret; - return rv; - } else { - /* Oh, now a full-blown failure failure */ - } - /* Fall through */ - case -1: - rv.code = RC_FAIL; - rv.consumed = ot_ret; - break; - case 0: - rv.code = RC_WMORE; - rv.consumed = 0; - break; - } - - if(*memb_ptr2) { - const asn_CHOICE_specifics_t *specs = - selected.type_descriptor->specifics; - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor, - inner_value); - memset(*memb_ptr2, 0, specs->struct_size); - } - } - return rv; -} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c deleted file mode 100644 index 2f27bb904..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_uper.c +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, asn_per_data_t *pd) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = uper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, pd); - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_WMORE: - case RC_FAIL: - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - } - return rv; -} - -asn_enc_rval_t -OPEN_TYPE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const void *memb_ptr; /* Pointer to the member */ - asn_TYPE_member_t *elm; /* CHOICE's element */ - asn_enc_rval_t er = {0,0,0}; - unsigned present; - - (void)constraints; - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - present--; - } - - ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(uper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { - ASN__ENCODE_FAILED; - } - - er.encoded = 0; - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c b/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c deleted file mode 100644 index fc38562e9..000000000 --- a/src/tmx/Asn_J2735/src/2020/OPEN_TYPE_xer.c +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, const void *ptr, size_t size) { - size_t consumed_myself = 0; - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - int xer_context = 0; - ssize_t ch_size; - pxer_chunk_type_e ch_type; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - /* - * Confirm wrapper. - */ - for(;;) { - ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); - if(ch_size < 0) { - ASN__DECODE_FAILED; - } else { - switch(ch_type) { - case PXER_WMORE: - ASN__DECODE_STARVED; - case PXER_COMMENT: - case PXER_TEXT: - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; - } - break; - } - } - - /* - * Wrapper value confirmed. - */ - switch(xer_check_tag(ptr, ch_size, elm->name)) { - case XCT_OPENING: - ADVANCE(ch_size); - break; - case XCT_BROKEN: - default: - ASN__DECODE_FAILED; - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = selected.type_descriptor->op->xer_decoder( - opt_codec_ctx, selected.type_descriptor, &inner_value, NULL, ptr, size); - ADVANCE(rv.consumed); - rv.consumed = 0; - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_FAIL: - /* Point to a best position where failure occurred */ - rv.consumed = consumed_myself; - /* Fall through */ - case RC_WMORE: - /* Wrt. rv.consumed==0: - * In case a genuine RC_WMORE, the whole Open Type decoding - * will have to be restarted. - */ - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - return rv; - } - - /* - * Finalize wrapper. - */ - for(;;) { - ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); - if(ch_size < 0) { - ASN__DECODE_FAILED; - } else { - switch(ch_type) { - case PXER_WMORE: - ASN__DECODE_STARVED; - case PXER_COMMENT: - case PXER_TEXT: - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; - } - break; - } - } - - /* - * Wrapper value confirmed. - */ - switch(xer_check_tag(ptr, ch_size, elm->name)) { - case XCT_CLOSING: - ADVANCE(ch_size); - break; - case XCT_BROKEN: - default: - ASN__DECODE_FAILED; - } - - rv.consumed += consumed_myself; - - return rv; -} diff --git a/src/tmx/Asn_J2735/src/2020/ObjectCount.c b/src/tmx/Asn_J2735/src/2020/ObjectCount.c deleted file mode 100644 index 81a5bb8fd..000000000 --- a/src/tmx/Asn_J2735/src/2020/ObjectCount.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NMEAcorrections" - * found in "J2735-NMEAcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ObjectCount.h" - -int -ObjectCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 1023L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ObjectCount_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectCount = { - "ObjectCount", - "ObjectCount", - &asn_OP_NativeInteger, - asn_DEF_ObjectCount_tags_1, - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - asn_DEF_ObjectCount_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ObjectCount_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ObjectCount_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ObjectCount_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c b/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c deleted file mode 100644 index c311a9291..000000000 --- a/src/tmx/Asn_J2735/src/2020/ObjectDescriptor.c +++ /dev/null @@ -1,91 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * ObjectDescriptor basic type description. - */ -static const ber_tlv_tag_t asn_DEF_ObjectDescriptor_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), /* [UNIVERSAL 7] IMPLICIT ... */ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -asn_TYPE_operation_t asn_OP_ObjectDescriptor = { - OCTET_STRING_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - OCTET_STRING_print_utf8, /* Treat as ASCII subset (it's not) */ -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - OCTET_STRING_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - OCTET_STRING_decode_xer_utf8, - OCTET_STRING_encode_xer_utf8, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - OCTET_STRING_encode_jer_utf8, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, - 0, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - 0, /* Not supported for ObjectDescriptor */ -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor = { - "ObjectDescriptor", - "ObjectDescriptor", - &asn_OP_ObjectDescriptor, - asn_DEF_ObjectDescriptor_tags, - sizeof(asn_DEF_ObjectDescriptor_tags) - / sizeof(asn_DEF_ObjectDescriptor_tags[0]) - 1, - asn_DEF_ObjectDescriptor_tags, - sizeof(asn_DEF_ObjectDescriptor_tags) - / sizeof(asn_DEF_ObjectDescriptor_tags[0]), - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - asn_generic_unknown_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c b/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c deleted file mode 100644 index 1c82a7ec6..000000000 --- a/src/tmx/Asn_J2735/src/2020/ObstacleDetection.c +++ /dev/null @@ -1,195 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ObstacleDetection.h" - -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 523L && value <= 541L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_description_constr_4 CC_NOTUSED = { - { 2, 1 } /* (523..541) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_description_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_ObstacleDetection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDist), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "obDist" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDirect), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDirection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "obDirect" - }, - { ATF_POINTER, 2, offsetof(struct ObstacleDetection, description), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_description_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_description_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_description_constraint_1 - }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleDetection, locationDetails), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericLocations, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "locationDetails" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, dateTime), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dateTime" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleDetection, vertEvent), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAccelerationThreshold, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vertEvent" - }, -}; -static const int asn_MAP_ObstacleDetection_oms_1[] = { 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_ObstacleDetection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ObstacleDetection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* locationDetails */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dateTime */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vertEvent */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1 = { - sizeof(struct ObstacleDetection), - offsetof(struct ObstacleDetection, _asn_ctx), - asn_MAP_ObstacleDetection_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ObstacleDetection_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDetection = { - "ObstacleDetection", - "ObstacleDetection", - &asn_OP_SEQUENCE, - asn_DEF_ObstacleDetection_tags_1, - sizeof(asn_DEF_ObstacleDetection_tags_1) - /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDetection_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDetection_tags_1) - /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ObstacleDetection_1, - 6, /* Elements count */ - &asn_SPC_ObstacleDetection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c b/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c deleted file mode 100644 index a8f73bb60..000000000 --- a/src/tmx/Asn_J2735/src/2020/ObstacleDirection.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ObstacleDirection.h" - -int -ObstacleDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 28800L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using Common_Angle, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ObstacleDirection_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { - "ObstacleDirection", - "ObstacleDirection", - &asn_OP_NativeInteger, - asn_DEF_ObstacleDirection_tags_1, - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ObstacleDirection_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ObstacleDirection_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ObstacleDirection_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c b/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c deleted file mode 100644 index 166e68f83..000000000 --- a/src/tmx/Asn_J2735/src/2020/ObstacleDistance.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ObstacleDistance.h" - -int -ObstacleDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ObstacleDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { - "ObstacleDistance", - "ObstacleDistance", - &asn_OP_NativeInteger, - asn_DEF_ObstacleDistance_tags_1, - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ObstacleDistance_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ObstacleDistance_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ObstacleDistance_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B09.c b/src/tmx/Asn_J2735/src/2020/Offset-B09.c deleted file mode 100644 index b8d550cf6..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B09.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B09.h" - -int -Offset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -256L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B09_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-256..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B09_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B09 = { - "Offset-B09", - "Offset-B09", - &asn_OP_NativeInteger, - asn_DEF_Offset_B09_tags_1, - sizeof(asn_DEF_Offset_B09_tags_1) - /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ - asn_DEF_Offset_B09_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B09_tags_1) - /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B09_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B09_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B09_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B10.c b/src/tmx/Asn_J2735/src/2020/Offset-B10.c deleted file mode 100644 index a4d34fa4d..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B10.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B10.h" - -int -Offset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -512L && value <= 511L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B10_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-512..511) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { - "Offset-B10", - "Offset-B10", - &asn_OP_NativeInteger, - asn_DEF_Offset_B10_tags_1, - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - asn_DEF_Offset_B10_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B10_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B10_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B10_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B11.c b/src/tmx/Asn_J2735/src/2020/Offset-B11.c deleted file mode 100644 index b150777db..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B11.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B11.h" - -int -Offset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1024L && value <= 1023L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B11_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-1024..1023) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { - "Offset-B11", - "Offset-B11", - &asn_OP_NativeInteger, - asn_DEF_Offset_B11_tags_1, - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - asn_DEF_Offset_B11_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B11_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B11_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B11_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B12.c b/src/tmx/Asn_J2735/src/2020/Offset-B12.c deleted file mode 100644 index 561c0c956..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B12.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B12.h" - -int -Offset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048L && value <= 2047L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { - "Offset-B12", - "Offset-B12", - &asn_OP_NativeInteger, - asn_DEF_Offset_B12_tags_1, - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - asn_DEF_Offset_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B12_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B12_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B12_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B13.c b/src/tmx/Asn_J2735/src/2020/Offset-B13.c deleted file mode 100644 index 724859988..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B13.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B13.h" - -int -Offset_B13_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096L && value <= 4095L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B13_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-4096..4095) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { - "Offset-B13", - "Offset-B13", - &asn_OP_NativeInteger, - asn_DEF_Offset_B13_tags_1, - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - asn_DEF_Offset_B13_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B13_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B13_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B13_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B14.c b/src/tmx/Asn_J2735/src/2020/Offset-B14.c deleted file mode 100644 index 88abdd688..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B14.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B14.h" - -int -Offset_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8192L && value <= 8191L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B14_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-8192..8191) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { - "Offset-B14", - "Offset-B14", - &asn_OP_NativeInteger, - asn_DEF_Offset_B14_tags_1, - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - asn_DEF_Offset_B14_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B14_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B14_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B14_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Offset-B16.c b/src/tmx/Asn_J2735/src/2020/Offset-B16.c deleted file mode 100644 index 11f6360d1..000000000 --- a/src/tmx/Asn_J2735/src/2020/Offset-B16.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Offset-B16.h" - -int -Offset_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Offset_B16_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { - "Offset-B16", - "Offset-B16", - &asn_OP_NativeInteger, - asn_DEF_Offset_B16_tags_1, - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - asn_DEF_Offset_B16_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Offset_B16_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Offset_B16_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Offset_B16_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c deleted file mode 100644 index 5978a82f9..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B12.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B12.h" - -int -OffsetLL_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048L && value <= 2047L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12 = { - "OffsetLL-B12", - "OffsetLL-B12", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B12_tags_1, - sizeof(asn_DEF_OffsetLL_B12_tags_1) - /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B12_tags_1) - /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B12_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B12_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B12_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c deleted file mode 100644 index 1768f6e22..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B14.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B14.h" - -int -OffsetLL_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8192L && value <= 8191L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-8192..8191) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14 = { - "OffsetLL-B14", - "OffsetLL-B14", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B14_tags_1, - sizeof(asn_DEF_OffsetLL_B14_tags_1) - /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B14_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B14_tags_1) - /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B14_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B14_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B14_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c deleted file mode 100644 index 67ca46cc8..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B16.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B16.h" - -int -OffsetLL_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B16_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16 = { - "OffsetLL-B16", - "OffsetLL-B16", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B16_tags_1, - sizeof(asn_DEF_OffsetLL_B16_tags_1) - /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B16_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B16_tags_1) - /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B16_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B16_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B16_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c deleted file mode 100644 index e6681f1c9..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B18.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B18.h" - -int -OffsetLL_B18_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -131072L && value <= 131071L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-131072..131071) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B18_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18 = { - "OffsetLL-B18", - "OffsetLL-B18", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B18_tags_1, - sizeof(asn_DEF_OffsetLL_B18_tags_1) - /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B18_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B18_tags_1) - /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B18_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B18_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B18_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c deleted file mode 100644 index d9c6e35cc..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B22.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B22.h" - -int -OffsetLL_B22_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2097152L && value <= 2097151L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-2097152..2097151) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 22, -1, -2097152, 2097151 } /* (-2097152..2097151) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B22_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22 = { - "OffsetLL-B22", - "OffsetLL-B22", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B22_tags_1, - sizeof(asn_DEF_OffsetLL_B22_tags_1) - /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B22_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B22_tags_1) - /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B22_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B22_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B22_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c b/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c deleted file mode 100644 index cfa22a228..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetLL-B24.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetLL-B24.h" - -int -OffsetLL_B24_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8388608L && value <= 8388607L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-8388608..8388607) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 24, -1, -8388608, 8388607 } /* (-8388608..8388607) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_OffsetLL_B24_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24 = { - "OffsetLL-B24", - "OffsetLL-B24", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B24_tags_1, - sizeof(asn_DEF_OffsetLL_B24_tags_1) - /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B24_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B24_tags_1) - /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OffsetLL_B24_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OffsetLL_B24_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OffsetLL_B24_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OffsetSystem.c b/src/tmx/Asn_J2735/src/2020/OffsetSystem.c deleted file mode 100644 index 6f1d4d202..000000000 --- a/src/tmx/Asn_J2735/src/2020/OffsetSystem.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OffsetSystem.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_offset_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_offset_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_offset_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.xy), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "xy" - }, - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.ll), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "ll" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offset_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xy */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ll */ -}; -static asn_CHOICE_specifics_t asn_SPC_offset_specs_3 = { - sizeof(struct OffsetSystem__offset), - offsetof(struct OffsetSystem__offset, _asn_ctx), - offsetof(struct OffsetSystem__offset, present), - sizeof(((struct OffsetSystem__offset *)0)->present), - asn_MAP_offset_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offset_3 = { - "offset", - "offset", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_offset_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_offset_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_offset_3, - 2, /* Elements count */ - &asn_SPC_offset_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_OffsetSystem_1[] = { - { ATF_POINTER, 1, offsetof(struct OffsetSystem, scale), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Zoom, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "scale" - }, - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem, offset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offset_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_OffsetSystem_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_OffsetSystem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_OffsetSystem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scale */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1 = { - sizeof(struct OffsetSystem), - offsetof(struct OffsetSystem, _asn_ctx), - asn_MAP_OffsetSystem_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_OffsetSystem_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_OffsetSystem = { - "OffsetSystem", - "OffsetSystem", - &asn_OP_SEQUENCE, - asn_DEF_OffsetSystem_tags_1, - sizeof(asn_DEF_OffsetSystem_tags_1) - /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ - asn_DEF_OffsetSystem_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetSystem_tags_1) - /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_OffsetSystem_1, - 2, /* Elements count */ - &asn_SPC_OffsetSystem_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c b/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c deleted file mode 100644 index bc52dd6e0..000000000 --- a/src/tmx/Asn_J2735/src/2020/OverlayLaneList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "OverlayLaneList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_OverlayLaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { - sizeof(struct OverlayLaneList), - offsetof(struct OverlayLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { - "OverlayLaneList", - "OverlayLaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_OverlayLaneList_tags_1, - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - asn_DEF_OverlayLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_OverlayLaneList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_OverlayLaneList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_OverlayLaneList_1, - 1, /* Single element */ - &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PartII-Id.c b/src/tmx/Asn_J2735/src/2020/PartII-Id.c deleted file mode 100644 index e05557755..000000000 --- a/src/tmx/Asn_J2735/src/2020/PartII-Id.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PartII-Id.h" - -int -PartII_Id_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 63L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PartII_Id_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..63) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PartII_Id_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PartII_Id_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PartII_Id = { - "PartII-Id", - "PartII-Id", - &asn_OP_NativeInteger, - asn_DEF_PartII_Id_tags_1, - sizeof(asn_DEF_PartII_Id_tags_1) - /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ - asn_DEF_PartII_Id_tags_1, /* Same as above */ - sizeof(asn_DEF_PartII_Id_tags_1) - /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PartII_Id_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PartII_Id_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PartII_Id_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PartIIcontent.c b/src/tmx/Asn_J2735/src/2020/PartIIcontent.c deleted file mode 100644 index 0476382eb..000000000 --- a/src/tmx/Asn_J2735/src/2020/PartIIcontent.c +++ /dev/null @@ -1,284 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PartIIcontent.h" - -static const long asn_VAL_1_vehicleSafetyExt = 0; -static const long asn_VAL_2_specialVehicleExt = 1; -static const long asn_VAL_3_supplementalVehicleExt = 2; -static const asn_ioc_cell_t asn_IOS_BSMpartIIExtension_1_rows[] = { - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_1_vehicleSafetyExt }, - { "&Type", aioc__type, &asn_DEF_VehicleSafetyExtensions }, - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_2_specialVehicleExt }, - { "&Type", aioc__type, &asn_DEF_SpecialVehicleExtensions }, - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_3_supplementalVehicleExt }, - { "&Type", aioc__type, &asn_DEF_SupplementalVehicleExtensions } -}; -static const asn_ioc_set_t asn_IOS_BSMpartIIExtension_1[] = { - { 3, 2, asn_IOS_BSMpartIIExtension_1_rows } -}; -static int -memb_partII_Id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 63L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_BSMpartIIExtension_partII_Value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_BSMpartIIExtension_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct BSMpartIIExtension, partII_Id)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_partII_Value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_Id_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..63) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_Id_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_Value_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_Value_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_partII_Value_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.VehicleSafetyExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleSafetyExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "VehicleSafetyExtensions" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SpecialVehicleExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SpecialVehicleExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SpecialVehicleExtensions" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SupplementalVehicleExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SupplementalVehicleExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SupplementalVehicleExtensions" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_partII_Value_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* VehicleSafetyExtensions */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* SpecialVehicleExtensions */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* SupplementalVehicleExtensions */ -}; -static asn_CHOICE_specifics_t asn_SPC_partII_Value_specs_3 = { - sizeof(struct BSMpartIIExtension__partII_Value), - offsetof(struct BSMpartIIExtension__partII_Value, _asn_ctx), - offsetof(struct BSMpartIIExtension__partII_Value, present), - sizeof(((struct BSMpartIIExtension__partII_Value *)0)->present), - asn_MAP_partII_Value_tag2el_3, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_partII_Value_3 = { - "partII-Value", - "partII-Value", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_partII_Value_3, - 3, /* Elements count */ - &asn_SPC_partII_Value_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PartII_Id, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_Id_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_Id_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_Id_constraint_1 - }, - 0, 0, /* No default value */ - "partII-Id" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Value), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_partII_Value_3, - select_BSMpartIIExtension_partII_Value_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_Value_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_Value_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_Value_constraint_1 - }, - 0, 0, /* No default value */ - "partII-Value" - }, -}; -static const ber_tlv_tag_t asn_DEF_BSMpartIIExtension_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BSMpartIIExtension_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* partII-Id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* partII-Value */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1 = { - sizeof(struct BSMpartIIExtension), - offsetof(struct BSMpartIIExtension, _asn_ctx), - asn_MAP_BSMpartIIExtension_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension = { - "BSMpartIIExtension", - "BSMpartIIExtension", - &asn_OP_SEQUENCE, - asn_DEF_BSMpartIIExtension_tags_1, - sizeof(asn_DEF_BSMpartIIExtension_tags_1) - /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ - asn_DEF_BSMpartIIExtension_tags_1, /* Same as above */ - sizeof(asn_DEF_BSMpartIIExtension_tags_1) - /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BSMpartIIExtension_1, - 2, /* Elements count */ - &asn_SPC_BSMpartIIExtension_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PathHistory.c b/src/tmx/Asn_J2735/src/2020/PathHistory.c deleted file mode 100644 index 381f510ff..000000000 --- a/src/tmx/Asn_J2735/src/2020/PathHistory.c +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PathHistory.h" - -#include "FullPositionVector.h" -asn_TYPE_member_t asn_MBR_PathHistory_1[] = { - { ATF_POINTER, 2, offsetof(struct PathHistory, initialPosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "initialPosition" - }, - { ATF_POINTER, 1, offsetof(struct PathHistory, currGNSSstatus), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "currGNSSstatus" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistoryPointList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crumbData" - }, -}; -static const int asn_MAP_PathHistory_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGNSSstatus */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* crumbData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { - sizeof(struct PathHistory), - offsetof(struct PathHistory, _asn_ctx), - asn_MAP_PathHistory_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PathHistory_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistory = { - "PathHistory", - "PathHistory", - &asn_OP_SEQUENCE, - asn_DEF_PathHistory_tags_1, - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - asn_DEF_PathHistory_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PathHistory_1, - 3, /* Elements count */ - &asn_SPC_PathHistory_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c b/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c deleted file mode 100644 index 95721bbc3..000000000 --- a/src/tmx/Asn_J2735/src/2020/PathHistoryPoint.c +++ /dev/null @@ -1,177 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PathHistoryPoint.h" - -#include "PositionalAccuracy.h" -asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, latOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "latOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, lonOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lonOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, timeOffset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeOffset, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeOffset" - }, - { ATF_POINTER, 3, offsetof(struct PathHistoryPoint, speed), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 2, offsetof(struct PathHistoryPoint, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "posAccuracy" - }, - { ATF_POINTER, 1, offsetof(struct PathHistoryPoint, heading), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoarseHeading, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, -}; -static const int asn_MAP_PathHistoryPoint_oms_1[] = { 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_PathHistoryPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathHistoryPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lonOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* heading */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1 = { - sizeof(struct PathHistoryPoint), - offsetof(struct PathHistoryPoint, _asn_ctx), - asn_MAP_PathHistoryPoint_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_PathHistoryPoint_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint = { - "PathHistoryPoint", - "PathHistoryPoint", - &asn_OP_SEQUENCE, - asn_DEF_PathHistoryPoint_tags_1, - sizeof(asn_DEF_PathHistoryPoint_tags_1) - /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPoint_tags_1) - /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PathHistoryPoint_1, - 7, /* Elements count */ - &asn_SPC_PathHistoryPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c b/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c deleted file mode 100644 index 702f172a6..000000000 --- a/src/tmx/Asn_J2735/src/2020/PathHistoryPointList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PathHistoryPointList.h" - -#include "PathHistoryPoint.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..23)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PathHistoryPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PathHistoryPointList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1 = { - sizeof(struct PathHistoryPointList), - offsetof(struct PathHistoryPointList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList = { - "PathHistoryPointList", - "PathHistoryPointList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PathHistoryPointList_tags_1, - sizeof(asn_DEF_PathHistoryPointList_tags_1) - /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointList_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointList_tags_1) - /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PathHistoryPointList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PathHistoryPointList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_PathHistoryPointList_1, - 1, /* Single element */ - &asn_SPC_PathHistoryPointList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PathPrediction.c b/src/tmx/Asn_J2735/src/2020/PathPrediction.c deleted file mode 100644 index c056b0d97..000000000 --- a/src/tmx/Asn_J2735/src/2020/PathPrediction.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PathPrediction.h" - -asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RadiusOfCurvature, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "radiusOfCurve" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Confidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { - sizeof(struct PathPrediction), - offsetof(struct PathPrediction, _asn_ctx), - asn_MAP_PathPrediction_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathPrediction = { - "PathPrediction", - "PathPrediction", - &asn_OP_SEQUENCE, - asn_DEF_PathPrediction_tags_1, - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - asn_DEF_PathPrediction_tags_1, /* Same as above */ - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PathPrediction_1, - 2, /* Elements count */ - &asn_SPC_PathPrediction_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PayloadData.c b/src/tmx/Asn_J2735/src/2020/PayloadData.c deleted file mode 100644 index 7fb349dc0..000000000 --- a/src/tmx/Asn_J2735/src/2020/PayloadData.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PayloadData.h" - -int -PayloadData_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 2048UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PayloadData_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2048)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PayloadData = { - "PayloadData", - "PayloadData", - &asn_OP_OCTET_STRING, - asn_DEF_PayloadData_tags_1, - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - asn_DEF_PayloadData_tags_1, /* Same as above */ - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PayloadData_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PayloadData_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PayloadData_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c deleted file mode 100644 index 3c661ad95..000000000 --- a/src/tmx/Asn_J2735/src/2020/PedestrianBicycleDetect.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PedestrianBicycleDetect.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { - "PedestrianBicycleDetect", - "PedestrianBicycleDetect", - &asn_OP_BOOLEAN, - asn_DEF_PedestrianBicycleDetect_tags_1, - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c b/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c deleted file mode 100644 index f0fd72036..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalAssistive.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalAssistive.h" - -int -PersonalAssistive_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PersonalAssistive_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { - "PersonalAssistive", - "PersonalAssistive", - &asn_OP_BIT_STRING, - asn_DEF_PersonalAssistive_tags_1, - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - asn_DEF_PersonalAssistive_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PersonalAssistive_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PersonalAssistive_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PersonalAssistive_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c deleted file mode 100644 index f4b53def7..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalClusterRadius.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalClusterRadius.h" - -int -PersonalClusterRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 100L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { - "PersonalClusterRadius", - "PersonalClusterRadius", - &asn_OP_NativeInteger, - asn_DEF_PersonalClusterRadius_tags_1, - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PersonalClusterRadius_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PersonalClusterRadius_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PersonalClusterRadius_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c deleted file mode 100644 index d207fbd5e..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalCrossingInProgress.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalCrossingInProgress.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { - "PersonalCrossingInProgress", - "PersonalCrossingInProgress", - &asn_OP_BOOLEAN, - asn_DEF_PersonalCrossingInProgress_tags_1, - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c deleted file mode 100644 index 380017614..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalCrossingRequest.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalCrossingRequest.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { - "PersonalCrossingRequest", - "PersonalCrossingRequest", - &asn_OP_BOOLEAN, - asn_DEF_PersonalCrossingRequest_tags_1, - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c deleted file mode 100644 index def11d2b4..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUsageState.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalDeviceUsageState.h" - -int -PersonalDeviceUsageState_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 9UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { - "PersonalDeviceUsageState", - "PersonalDeviceUsageState", - &asn_OP_BIT_STRING, - asn_DEF_PersonalDeviceUsageState_tags_1, - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PersonalDeviceUsageState_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PersonalDeviceUsageState_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PersonalDeviceUsageState_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c deleted file mode 100644 index 764ee48ec..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalDeviceUserType.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalDeviceUserType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "aPEDESTRIAN" }, - { 2, 13, "aPEDALCYCLIST" }, - { 3, 19, "aPUBLICSAFETYWORKER" }, - { 4, 8, "anANIMAL" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { - 2, /* aPEDALCYCLIST(2) */ - 1, /* aPEDESTRIAN(1) */ - 3, /* aPUBLICSAFETYWORKER(3) */ - 4, /* anANIMAL(4) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { - asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { - "PersonalDeviceUserType", - "PersonalDeviceUserType", - &asn_OP_NativeEnumerated, - asn_DEF_PersonalDeviceUserType_tags_1, - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PersonalDeviceUserType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PersonalDeviceUserType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c deleted file mode 100644 index 474eede66..000000000 --- a/src/tmx/Asn_J2735/src/2020/PersonalSafetyMessage.c +++ /dev/null @@ -1,626 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PersonalSafetyMessage.h" - -#include "AccelerationSet4Way.h" -#include "PathHistory.h" -#include "PathPrediction.h" -#include "PropelledInformation.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_27 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_27 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_27[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_PersonalSafetyMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_27[] = { - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_27 = { - sizeof(struct PersonalSafetyMessage__regional), - offsetof(struct PersonalSafetyMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_27 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_27, - sizeof(asn_DEF_regional_tags_27) - /sizeof(asn_DEF_regional_tags_27[0]) - 1, /* 1 */ - asn_DEF_regional_tags_27, /* Same as above */ - sizeof(asn_DEF_regional_tags_27) - /sizeof(asn_DEF_regional_tags_27[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_27, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_27, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_27, - 1, /* Single element */ - &asn_SPC_regional_specs_27 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUserType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 18, offsetof(struct PersonalSafetyMessage, accelSet), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accelSet" - }, - { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathHistory" - }, - { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, propulsion), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_PropelledInformation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "propulsion" - }, - { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, useState), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUsageState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "useState" - }, - { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, crossRequest), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crossRequest" - }, - { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossState), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingInProgress, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crossState" - }, - { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, clusterSize), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NumberOfParticipantsInCluster, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "clusterSize" - }, - { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterRadius), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalClusterRadius, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "clusterRadius" - }, - { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, eventResponderType), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyEventResponderWorkerType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "eventResponderType" - }, - { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, activityType), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyAndRoadWorkerActivity, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "activityType" - }, - { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activitySubType), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyDirectingTrafficSubType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "activitySubType" - }, - { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, assistType), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalAssistive, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "assistType" - }, - { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, sizing), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UserSizeAndBehaviour, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sizing" - }, - { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, attachment), - (ASN_TAG_CLASS_CONTEXT | (22 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Attachment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "attachment" - }, - { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachmentRadius), - (ASN_TAG_CLASS_CONTEXT | (23 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AttachmentRadius, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "attachmentRadius" - }, - { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, animalType), - (ASN_TAG_CLASS_CONTEXT | (24 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "animalType" - }, - { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - 0, - &asn_DEF_regional_27, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_27, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_27, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }; -static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ - { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ - { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ - { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ - { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { - sizeof(struct PersonalSafetyMessage), - offsetof(struct PersonalSafetyMessage, _asn_ctx), - asn_MAP_PersonalSafetyMessage_tag2el_1, - 26, /* Count of tags in the map */ - asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ - 18, 0, /* Root/Additions */ - 26, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { - "PersonalSafetyMessage", - "PersonalSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_PersonalSafetyMessage_tags_1, - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PersonalSafetyMessage_1, - 26, /* Elements count */ - &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c b/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c deleted file mode 100644 index 4350032ab..000000000 --- a/src/tmx/Asn_J2735/src/2020/PivotPointDescription.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PivotPointDescription.h" - -asn_TYPE_member_t asn_MBR_PivotPointDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pivotOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotAngle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Angle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pivotAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivots), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotingAllowed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pivots" - }, -}; -static const ber_tlv_tag_t asn_DEF_PivotPointDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PivotPointDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pivotAngle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pivots */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1 = { - sizeof(struct PivotPointDescription), - offsetof(struct PivotPointDescription, _asn_ctx), - asn_MAP_PivotPointDescription_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PivotPointDescription = { - "PivotPointDescription", - "PivotPointDescription", - &asn_OP_SEQUENCE, - asn_DEF_PivotPointDescription_tags_1, - sizeof(asn_DEF_PivotPointDescription_tags_1) - /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ - asn_DEF_PivotPointDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_PivotPointDescription_tags_1) - /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PivotPointDescription_1, - 3, /* Elements count */ - &asn_SPC_PivotPointDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c b/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c deleted file mode 100644 index 2bffd7207..000000000 --- a/src/tmx/Asn_J2735/src/2020/PivotingAllowed.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PivotingAllowed.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PivotingAllowed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PivotingAllowed = { - "PivotingAllowed", - "PivotingAllowed", - &asn_OP_BOOLEAN, - asn_DEF_PivotingAllowed_tags_1, - sizeof(asn_DEF_PivotingAllowed_tags_1) - /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ - asn_DEF_PivotingAllowed_tags_1, /* Same as above */ - sizeof(asn_DEF_PivotingAllowed_tags_1) - /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c deleted file mode 100644 index 984da2f94..000000000 --- a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpB.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Position3D-addGrpB.h" - -asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, latitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "latitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, longitude), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "longitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AddGrpB_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, -}; -static const ber_tlv_tag_t asn_DEF_Position3D_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1 = { - sizeof(struct Position3D_addGrpB), - offsetof(struct Position3D_addGrpB, _asn_ctx), - asn_MAP_Position3D_addGrpB_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB = { - "Position3D-addGrpB", - "Position3D-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_addGrpB_tags_1, - sizeof(asn_DEF_Position3D_addGrpB_tags_1) - /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_Position3D_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_addGrpB_tags_1) - /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Position3D_addGrpB_1, - 3, /* Elements count */ - &asn_SPC_Position3D_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c b/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c deleted file mode 100644 index 5f939570e..000000000 --- a/src/tmx/Asn_J2735/src/2020/Position3D-addGrpC.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Position3D-addGrpC.h" - -asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpC, altitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Altitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "altitude" - }, -}; -static const ber_tlv_tag_t asn_DEF_Position3D_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1 = { - sizeof(struct Position3D_addGrpC), - offsetof(struct Position3D_addGrpC, _asn_ctx), - asn_MAP_Position3D_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC = { - "Position3D-addGrpC", - "Position3D-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_addGrpC_tags_1, - sizeof(asn_DEF_Position3D_addGrpC_tags_1) - /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_Position3D_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_addGrpC_tags_1) - /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Position3D_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_Position3D_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Position3D.c b/src/tmx/Asn_J2735/src/2020/Position3D.c deleted file mode 100644 index 5d0f1fd12..000000000 --- a/src/tmx/Asn_J2735/src/2020/Position3D.c +++ /dev/null @@ -1,226 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Position3D.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct Position3D__regional), - offsetof(struct Position3D__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Position3D_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "long" - }, - { ATF_POINTER, 2, offsetof(struct Position3D, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_POINTER, 1, offsetof(struct Position3D, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_Position3D_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { - sizeof(struct Position3D), - offsetof(struct Position3D, _asn_ctx), - asn_MAP_Position3D_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Position3D_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D = { - "Position3D", - "Position3D", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_tags_1, - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - asn_DEF_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Position3D_1, - 4, /* Elements count */ - &asn_SPC_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PositionConfidence.c b/src/tmx/Asn_J2735/src/2020/PositionConfidence.c deleted file mode 100644 index 7c31c5d65..000000000 --- a/src/tmx/Asn_J2735/src/2020/PositionConfidence.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PositionConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PositionConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "a500m" }, - { 2, 5, "a200m" }, - { 3, 5, "a100m" }, - { 4, 4, "a50m" }, - { 5, 4, "a20m" }, - { 6, 4, "a10m" }, - { 7, 3, "a5m" }, - { 8, 3, "a2m" }, - { 9, 3, "a1m" }, - { 10, 5, "a50cm" }, - { 11, 5, "a20cm" }, - { 12, 5, "a10cm" }, - { 13, 4, "a5cm" }, - { 14, 4, "a2cm" }, - { 15, 4, "a1cm" } -}; -static const unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { - 3, /* a100m(3) */ - 12, /* a10cm(12) */ - 6, /* a10m(6) */ - 15, /* a1cm(15) */ - 9, /* a1m(9) */ - 2, /* a200m(2) */ - 11, /* a20cm(11) */ - 5, /* a20m(5) */ - 14, /* a2cm(14) */ - 8, /* a2m(8) */ - 1, /* a500m(1) */ - 10, /* a50cm(10) */ - 4, /* a50m(4) */ - 13, /* a5cm(13) */ - 7, /* a5m(7) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { - asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { - "PositionConfidence", - "PositionConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_PositionConfidence_tags_1, - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PositionConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PositionConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c deleted file mode 100644 index 1bc94f224..000000000 --- a/src/tmx/Asn_J2735/src/2020/PositionConfidenceSet.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PositionConfidenceSet.h" - -asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, pos), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pos" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, elevation), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ElevationConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, -}; -static const ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PositionConfidenceSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pos */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* elevation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1 = { - sizeof(struct PositionConfidenceSet), - offsetof(struct PositionConfidenceSet, _asn_ctx), - asn_MAP_PositionConfidenceSet_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { - "PositionConfidenceSet", - "PositionConfidenceSet", - &asn_OP_SEQUENCE, - asn_DEF_PositionConfidenceSet_tags_1, - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PositionConfidenceSet_1, - 2, /* Elements count */ - &asn_SPC_PositionConfidenceSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c deleted file mode 100644 index 558ff4937..000000000 --- a/src/tmx/Asn_J2735/src/2020/PositionalAccuracy.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PositionalAccuracy.h" - -asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMajor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMajorAxisAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "semiMajor" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMinor), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMinorAxisAccuracy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "semiMinor" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, orientation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMajorAxisOrientation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "orientation" - }, -}; -static const ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PositionalAccuracy_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* semiMajor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiMinor */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* orientation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1 = { - sizeof(struct PositionalAccuracy), - offsetof(struct PositionalAccuracy, _asn_ctx), - asn_MAP_PositionalAccuracy_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { - "PositionalAccuracy", - "PositionalAccuracy", - &asn_OP_SEQUENCE, - asn_DEF_PositionalAccuracy_tags_1, - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PositionalAccuracy_1, - 3, /* Elements count */ - &asn_SPC_PositionalAccuracy_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c deleted file mode 100644 index 1c0ee9388..000000000 --- a/src/tmx/Asn_J2735/src/2020/PreemptPriorityList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PreemptPriorityList.h" - -#include "SignalControlZone.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalControlZone, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { - sizeof(struct PreemptPriorityList), - offsetof(struct PreemptPriorityList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { - "PreemptPriorityList", - "PreemptPriorityList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PreemptPriorityList_tags_1, - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PreemptPriorityList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PreemptPriorityList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_PreemptPriorityList_1, - 1, /* Single element */ - &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c deleted file mode 100644 index d81720c1c..000000000 --- a/src/tmx/Asn_J2735/src/2020/PrioritizationResponse.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PrioritizationResponse.h" - -asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "priorState" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "signalGroup" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { - sizeof(struct PrioritizationResponse), - offsetof(struct PrioritizationResponse, _asn_ctx), - asn_MAP_PrioritizationResponse_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { - "PrioritizationResponse", - "PrioritizationResponse", - &asn_OP_SEQUENCE, - asn_DEF_PrioritizationResponse_tags_1, - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PrioritizationResponse_1, - 3, /* Elements count */ - &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c deleted file mode 100644 index 6a948a18f..000000000 --- a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PrioritizationResponseList.h" - -#include "PrioritizationResponse.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..10)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PrioritizationResponse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { - sizeof(struct PrioritizationResponseList), - offsetof(struct PrioritizationResponseList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { - "PrioritizationResponseList", - "PrioritizationResponseList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PrioritizationResponseList_tags_1, - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PrioritizationResponseList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PrioritizationResponseList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_PrioritizationResponseList_1, - 1, /* Single element */ - &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c deleted file mode 100644 index 615d0c257..000000000 --- a/src/tmx/Asn_J2735/src/2020/PrioritizationResponseStatus.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PrioritizationResponseStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 9, "requested" }, - { 2, 10, "processing" }, - { 3, 17, "watchOtherTraffic" }, - { 4, 7, "granted" }, - { 5, 8, "rejected" }, - { 6, 11, "maxPresence" }, - { 7, 15, "reserviceLocked" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { - 4, /* granted(4) */ - 6, /* maxPresence(6) */ - 2, /* processing(2) */ - 5, /* rejected(5) */ - 1, /* requested(1) */ - 7, /* reserviceLocked(7) */ - 0, /* unknown(0) */ - 3 /* watchOtherTraffic(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { - asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { - "PrioritizationResponseStatus", - "PrioritizationResponseStatus", - &asn_OP_NativeEnumerated, - asn_DEF_PrioritizationResponseStatus_tags_1, - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PrioritizationResponseStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PrioritizationResponseStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Priority.c b/src/tmx/Asn_J2735/src/2020/Priority.c deleted file mode 100644 index 14ba90a89..000000000 --- a/src/tmx/Asn_J2735/src/2020/Priority.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Priority.h" - -int -Priority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Priority_constr_1 CC_NOTUSED = { - { 0, 0 }, - 1 /* (SIZE(1..1)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Priority_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Priority = { - "Priority", - "Priority", - &asn_OP_OCTET_STRING, - asn_DEF_Priority_tags_1, - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - asn_DEF_Priority_tags_1, /* Same as above */ - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Priority_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Priority_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Priority_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c b/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c deleted file mode 100644 index 32d2b2508..000000000 --- a/src/tmx/Asn_J2735/src/2020/PriorityRequestType.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PriorityRequestType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PriorityRequestType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_PriorityRequestType_value2enum_1[] = { - { 0, 27, "priorityRequestTypeReserved" }, - { 1, 15, "priorityRequest" }, - { 2, 21, "priorityRequestUpdate" }, - { 3, 20, "priorityCancellation" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PriorityRequestType_enum2value_1[] = { - 3, /* priorityCancellation(3) */ - 1, /* priorityRequest(1) */ - 0, /* priorityRequestTypeReserved(0) */ - 2 /* priorityRequestUpdate(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1 = { - asn_MAP_PriorityRequestType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PriorityRequestType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PriorityRequestType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PriorityRequestType = { - "PriorityRequestType", - "PriorityRequestType", - &asn_OP_NativeEnumerated, - asn_DEF_PriorityRequestType_tags_1, - sizeof(asn_DEF_PriorityRequestType_tags_1) - /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ - asn_DEF_PriorityRequestType_tags_1, /* Same as above */ - sizeof(asn_DEF_PriorityRequestType_tags_1) - /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PriorityRequestType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PriorityRequestType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PriorityRequestType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c b/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c deleted file mode 100644 index 675044fc5..000000000 --- a/src/tmx/Asn_J2735/src/2020/PrivilegedEventFlags.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PrivilegedEventFlags.h" - -int -PrivilegedEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PrivilegedEventFlags_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags = { - "PrivilegedEventFlags", - "PrivilegedEventFlags", - &asn_OP_BIT_STRING, - asn_DEF_PrivilegedEventFlags_tags_1, - sizeof(asn_DEF_PrivilegedEventFlags_tags_1) - /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ - asn_DEF_PrivilegedEventFlags_tags_1, /* Same as above */ - sizeof(asn_DEF_PrivilegedEventFlags_tags_1) - /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PrivilegedEventFlags_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PrivilegedEventFlags_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PrivilegedEventFlags_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c b/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c deleted file mode 100644 index f23c91d25..000000000 --- a/src/tmx/Asn_J2735/src/2020/PrivilegedEvents.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PrivilegedEvents.h" - -asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, notUsed), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, event), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrivilegedEventFlags, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "event" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrivilegedEvents_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PrivilegedEvents_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* event */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1 = { - sizeof(struct PrivilegedEvents), - offsetof(struct PrivilegedEvents, _asn_ctx), - asn_MAP_PrivilegedEvents_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents = { - "PrivilegedEvents", - "PrivilegedEvents", - &asn_OP_SEQUENCE, - asn_DEF_PrivilegedEvents_tags_1, - sizeof(asn_DEF_PrivilegedEvents_tags_1) - /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ - asn_DEF_PrivilegedEvents_tags_1, /* Same as above */ - sizeof(asn_DEF_PrivilegedEvents_tags_1) - /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_PrivilegedEvents_1, - 2, /* Elements count */ - &asn_SPC_PrivilegedEvents_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c deleted file mode 100644 index b3c4e6dd0..000000000 --- a/src/tmx/Asn_J2735/src/2020/ProbeDataManagement.c +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ProbeDataManagement.h" - -#include "VehicleStatusRequestList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_term_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_term_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_snapshot_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_snapshot_constr_8 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_13 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_13 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_13 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_13 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_term_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "termtime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "termDistance" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { - sizeof(struct ProbeDataManagement__term), - offsetof(struct ProbeDataManagement__term, _asn_ctx), - offsetof(struct ProbeDataManagement__term, present), - sizeof(((struct ProbeDataManagement__term *)0)->present), - asn_MAP_term_tag2el_5, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_term_5 = { - "term", - "term", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_term_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_term_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_term_5, - 2, /* Elements count */ - &asn_SPC_term_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_snapshot_8[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "snapshotTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "snapshotDistance" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { - sizeof(struct ProbeDataManagement__snapshot), - offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), - offsetof(struct ProbeDataManagement__snapshot, present), - sizeof(((struct ProbeDataManagement__snapshot *)0)->present), - asn_MAP_snapshot_tag2el_8, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { - "snapshot", - "snapshot", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_snapshot_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_snapshot_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_snapshot_8, - 2, /* Elements count */ - &asn_SPC_snapshot_specs_8 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_13[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_ProbeDataManagement, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_13[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_13 = { - sizeof(struct ProbeDataManagement__regional), - offsetof(struct ProbeDataManagement__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_13 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_13, - sizeof(asn_DEF_regional_tags_13) - /sizeof(asn_DEF_regional_tags_13[0]) - 1, /* 1 */ - asn_DEF_regional_tags_13, /* Same as above */ - sizeof(asn_DEF_regional_tags_13) - /sizeof(asn_DEF_regional_tags_13[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_13, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_13, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_13, - 1, /* Single element */ - &asn_SPC_regional_specs_13 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { - { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Sample, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sample" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "directions" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_term_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "term" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_snapshot_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "snapshot" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "txInterval" - }, - { ATF_POINTER, 2, offsetof(struct ProbeDataManagement, dataElements), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatusRequestList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dataElements" - }, - { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_13, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_13, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_13, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ProbeDataManagement_oms_1[] = { 0, 6, 7 }; -static const ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataElements */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { - sizeof(struct ProbeDataManagement), - offsetof(struct ProbeDataManagement, _asn_ctx), - asn_MAP_ProbeDataManagement_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_ProbeDataManagement_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { - "ProbeDataManagement", - "ProbeDataManagement", - &asn_OP_SEQUENCE, - asn_DEF_ProbeDataManagement_tags_1, - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ProbeDataManagement_1, - 8, /* Elements count */ - &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c deleted file mode 100644 index ef8b7b015..000000000 --- a/src/tmx/Asn_J2735/src/2020/ProbeSegmentNumber.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ProbeSegmentNumber.h" - -int -ProbeSegmentNumber_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { - "ProbeSegmentNumber", - "ProbeSegmentNumber", - &asn_OP_NativeInteger, - asn_DEF_ProbeSegmentNumber_tags_1, - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ProbeSegmentNumber_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ProbeSegmentNumber_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ProbeSegmentNumber_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c deleted file mode 100644 index 3ba525c4a..000000000 --- a/src/tmx/Asn_J2735/src/2020/ProbeVehicleData.c +++ /dev/null @@ -1,385 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ProbeVehicleData.h" - -#include "VehicleIdent.h" -#include "Snapshot.h" -#include "RegionalExtension.h" -static int -memb_snapshots_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 32UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_snapshots_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_snapshots_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_snapshots_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_snapshots_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_snapshots_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Snapshot, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_snapshots_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_7 = { - sizeof(struct ProbeVehicleData__snapshots), - offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshots_7 = { - "snapshots", - "snapshots", - &asn_OP_SEQUENCE_OF, - asn_DEF_snapshots_tags_7, - sizeof(asn_DEF_snapshots_tags_7) - /sizeof(asn_DEF_snapshots_tags_7[0]) - 1, /* 1 */ - asn_DEF_snapshots_tags_7, /* Same as above */ - sizeof(asn_DEF_snapshots_tags_7) - /sizeof(asn_DEF_snapshots_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_snapshots_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_snapshots_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_snapshots_7, - 1, /* Single element */ - &asn_SPC_snapshots_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_ProbeVehicleData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct ProbeVehicleData__regional), - offsetof(struct ProbeVehicleData__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { - { ATF_POINTER, 3, offsetof(struct ProbeVehicleData, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProbeSegmentNumber, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "segNum" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "probeID" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "startVector" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleClassification, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_snapshots_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_snapshots_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_snapshots_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_snapshots_constraint_1 - }, - 0, 0, /* No default value */ - "snapshots" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ProbeVehicleData_oms_1[] = { 0, 1, 2, 6 }; -static const ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* snapshots */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { - sizeof(struct ProbeVehicleData), - offsetof(struct ProbeVehicleData, _asn_ctx), - asn_MAP_ProbeVehicleData_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { - "ProbeVehicleData", - "ProbeVehicleData", - &asn_OP_SEQUENCE, - asn_DEF_ProbeVehicleData_tags_1, - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ProbeVehicleData_1, - 7, /* Elements count */ - &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PropelledInformation.c b/src/tmx/Asn_J2735/src/2020/PropelledInformation.c deleted file mode 100644 index 74597615e..000000000 --- a/src/tmx/Asn_J2735/src/2020/PropelledInformation.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PropelledInformation.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PropelledInformation_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HumanPropelledType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "human" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalPropelledType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "animal" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MotorizedPropelledType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "motor" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ -}; -asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { - sizeof(struct PropelledInformation), - offsetof(struct PropelledInformation, _asn_ctx), - offsetof(struct PropelledInformation, present), - sizeof(((struct PropelledInformation *)0)->present), - asn_MAP_PropelledInformation_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { - "PropelledInformation", - "PropelledInformation", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PropelledInformation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PropelledInformation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_PropelledInformation_1, - 3, /* Elements count */ - &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c deleted file mode 100644 index 3f0a124cd..000000000 --- a/src/tmx/Asn_J2735/src/2020/PublicSafetyAndRoadWorkerActivity.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PublicSafetyAndRoadWorkerActivity.h" - -int -PublicSafetyAndRoadWorkerActivity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { - "PublicSafetyAndRoadWorkerActivity", - "PublicSafetyAndRoadWorkerActivity", - &asn_OP_BIT_STRING, - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PublicSafetyAndRoadWorkerActivity_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c deleted file mode 100644 index 0736d68fd..000000000 --- a/src/tmx/Asn_J2735/src/2020/PublicSafetyDirectingTrafficSubType.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PublicSafetyDirectingTrafficSubType.h" - -int -PublicSafetyDirectingTrafficSubType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 7UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { - "PublicSafetyDirectingTrafficSubType", - "PublicSafetyDirectingTrafficSubType", - &asn_OP_BIT_STRING, - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - PublicSafetyDirectingTrafficSubType_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c deleted file mode 100644 index bb63c5061..000000000 --- a/src/tmx/Asn_J2735/src/2020/PublicSafetyEventResponderWorkerType.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "PublicSafetyEventResponderWorkerType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "towOperater" }, - { 2, 16, "fireAndEMSWorker" }, - { 3, 10, "aDOTWorker" }, - { 4, 14, "lawEnforcement" }, - { 5, 15, "hazmatResponder" }, - { 6, 19, "animalControlWorker" }, - { 7, 14, "otherPersonnel" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { - 3, /* aDOTWorker(3) */ - 6, /* animalControlWorker(6) */ - 2, /* fireAndEMSWorker(2) */ - 5, /* hazmatResponder(5) */ - 4, /* lawEnforcement(4) */ - 7, /* otherPersonnel(7) */ - 1, /* towOperater(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { - asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { - "PublicSafetyEventResponderWorkerType", - "PublicSafetyEventResponderWorkerType", - &asn_OP_NativeEnumerated, - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c b/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c deleted file mode 100644 index f3b94fdf9..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCM-Revision.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RTCMcorrections" - * found in "J2735-RTCMcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCM-Revision.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RTCM_Revision_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "rtcmRev2" }, - { 2, 8, "rtcmRev3" }, - { 3, 8, "reserved" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { - 3, /* reserved(3) */ - 1, /* rtcmRev2(1) */ - 2, /* rtcmRev3(2) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { - asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { - "RTCM-Revision", - "RTCM-Revision", - &asn_OP_NativeEnumerated, - asn_DEF_RTCM_Revision_tags_1, - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - asn_DEF_RTCM_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RTCM_Revision_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RTCM_Revision_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCMPackage.c b/src/tmx/Asn_J2735/src/2020/RTCMPackage.c deleted file mode 100644 index 62cff2c08..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCMPackage.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCMPackage.h" - -#include "RTCMheader.h" -asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct RTCMPackage, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMheader, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rtcmHeader" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, msgs), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMmessageList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgs" - }, -}; -static const int asn_MAP_RTCMPackage_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* msgs */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { - sizeof(struct RTCMPackage), - offsetof(struct RTCMPackage, _asn_ctx), - asn_MAP_RTCMPackage_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RTCMPackage_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { - "RTCMPackage", - "RTCMPackage", - &asn_OP_SEQUENCE, - asn_DEF_RTCMPackage_tags_1, - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - asn_DEF_RTCMPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RTCMPackage_1, - 2, /* Elements count */ - &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c b/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c deleted file mode 100644 index b63e8c6c9..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCMcorrections.c +++ /dev/null @@ -1,282 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RTCMcorrections" - * found in "J2735-RTCMcorrections.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCMcorrections.h" - -#include "FullPositionVector.h" -#include "RTCMheader.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_RTCMcorrections, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct RTCMcorrections__regional), - offsetof(struct RTCMcorrections__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RTCMcorrections_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, rev), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_Revision, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rev" - }, - { ATF_POINTER, 3, offsetof(struct RTCMcorrections, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct RTCMcorrections, anchorPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "anchorPoint" - }, - { ATF_POINTER, 1, offsetof(struct RTCMcorrections, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMheader, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rtcmHeader" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgs), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMmessageList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgs" - }, - { ATF_POINTER, 1, offsetof(struct RTCMcorrections, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RTCMcorrections_oms_1[] = { 2, 3, 4, 6 }; -static const ber_tlv_tag_t asn_DEF_RTCMcorrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMcorrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msgs */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1 = { - sizeof(struct RTCMcorrections), - offsetof(struct RTCMcorrections, _asn_ctx), - asn_MAP_RTCMcorrections_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_RTCMcorrections_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMcorrections = { - "RTCMcorrections", - "RTCMcorrections", - &asn_OP_SEQUENCE, - asn_DEF_RTCMcorrections_tags_1, - sizeof(asn_DEF_RTCMcorrections_tags_1) - /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ - asn_DEF_RTCMcorrections_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMcorrections_tags_1) - /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RTCMcorrections_1, - 7, /* Elements count */ - &asn_SPC_RTCMcorrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCMheader.c b/src/tmx/Asn_J2735/src/2020/RTCMheader.c deleted file mode 100644 index db12733bb..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCMheader.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCMheader.h" - -asn_TYPE_member_t asn_MBR_RTCMheader_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, status), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "status" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, offsetSet), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AntennaOffsetSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offsetSet" - }, -}; -static const ber_tlv_tag_t asn_DEF_RTCMheader_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMheader_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offsetSet */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1 = { - sizeof(struct RTCMheader), - offsetof(struct RTCMheader, _asn_ctx), - asn_MAP_RTCMheader_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMheader = { - "RTCMheader", - "RTCMheader", - &asn_OP_SEQUENCE, - asn_DEF_RTCMheader_tags_1, - sizeof(asn_DEF_RTCMheader_tags_1) - /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ - asn_DEF_RTCMheader_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMheader_tags_1) - /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RTCMheader_1, - 2, /* Elements count */ - &asn_SPC_RTCMheader_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCMmessage.c b/src/tmx/Asn_J2735/src/2020/RTCMmessage.c deleted file mode 100644 index 25ba103f5..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCMmessage.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCMmessage.h" - -int -RTCMmessage_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 1023UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RTCMmessage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1023)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RTCMmessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCMmessage = { - "RTCMmessage", - "RTCMmessage", - &asn_OP_OCTET_STRING, - asn_DEF_RTCMmessage_tags_1, - sizeof(asn_DEF_RTCMmessage_tags_1) - /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ - asn_DEF_RTCMmessage_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMmessage_tags_1) - /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RTCMmessage_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RTCMmessage_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RTCMmessage_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c b/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c deleted file mode 100644 index 4105a8159..000000000 --- a/src/tmx/Asn_J2735/src/2020/RTCMmessageList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RTCMmessageList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RTCMmessageList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RTCMmessageList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_RTCMmessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RTCMmessageList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1 = { - sizeof(struct RTCMmessageList), - offsetof(struct RTCMmessageList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMmessageList = { - "RTCMmessageList", - "RTCMmessageList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RTCMmessageList_tags_1, - sizeof(asn_DEF_RTCMmessageList_tags_1) - /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ - asn_DEF_RTCMmessageList_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMmessageList_tags_1) - /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RTCMmessageList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RTCMmessageList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RTCMmessageList_1, - 1, /* Single element */ - &asn_SPC_RTCMmessageList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Radius-B12.c b/src/tmx/Asn_J2735/src/2020/Radius-B12.c deleted file mode 100644 index ca3948dba..000000000 --- a/src/tmx/Asn_J2735/src/2020/Radius-B12.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Radius-B12.h" - -int -Radius_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 4095L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Radius_B12_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Radius_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Radius_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Radius_B12 = { - "Radius-B12", - "Radius-B12", - &asn_OP_NativeInteger, - asn_DEF_Radius_B12_tags_1, - sizeof(asn_DEF_Radius_B12_tags_1) - /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ - asn_DEF_Radius_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Radius_B12_tags_1) - /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Radius_B12_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Radius_B12_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Radius_B12_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c b/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c deleted file mode 100644 index e0ffeba25..000000000 --- a/src/tmx/Asn_J2735/src/2020/RadiusOfCurvature.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RadiusOfCurvature.h" - -int -RadiusOfCurvature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RadiusOfCurvature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature = { - "RadiusOfCurvature", - "RadiusOfCurvature", - &asn_OP_NativeInteger, - asn_DEF_RadiusOfCurvature_tags_1, - sizeof(asn_DEF_RadiusOfCurvature_tags_1) - /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ - asn_DEF_RadiusOfCurvature_tags_1, /* Same as above */ - sizeof(asn_DEF_RadiusOfCurvature_tags_1) - /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RadiusOfCurvature_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RadiusOfCurvature_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RadiusOfCurvature_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RainSensor.c b/src/tmx/Asn_J2735/src/2020/RainSensor.c deleted file mode 100644 index 475f94bcf..000000000 --- a/src/tmx/Asn_J2735/src/2020/RainSensor.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RainSensor.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RainSensor_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RainSensor_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "lightMist" }, - { 2, 9, "heavyMist" }, - { 3, 18, "lightRainOrDrizzle" }, - { 4, 4, "rain" }, - { 5, 12, "moderateRain" }, - { 6, 9, "heavyRain" }, - { 7, 13, "heavyDownpour" } -}; -static const unsigned int asn_MAP_RainSensor_enum2value_1[] = { - 7, /* heavyDownpour(7) */ - 2, /* heavyMist(2) */ - 6, /* heavyRain(6) */ - 1, /* lightMist(1) */ - 3, /* lightRainOrDrizzle(3) */ - 5, /* moderateRain(5) */ - 0, /* none(0) */ - 4 /* rain(4) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { - asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RainSensor = { - "RainSensor", - "RainSensor", - &asn_OP_NativeEnumerated, - asn_DEF_RainSensor_tags_1, - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - asn_DEF_RainSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RainSensor_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RainSensor_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RainSensor_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegionId.c b/src/tmx/Asn_J2735/src/2020/RegionId.c deleted file mode 100644 index 3a1cec8ed..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegionId.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegionId.h" - -int -RegionId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RegionId_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RegionId_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RegionId_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionId = { - "RegionId", - "RegionId", - &asn_OP_NativeInteger, - asn_DEF_RegionId_tags_1, - sizeof(asn_DEF_RegionId_tags_1) - /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ - asn_DEF_RegionId_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionId_tags_1) - /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RegionId_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RegionId_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RegionId_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegionList.c b/src/tmx/Asn_J2735/src/2020/RegionList.c deleted file mode 100644 index 5dc946ac0..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegionList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegionList.h" - -#include "RegionOffsets.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RegionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RegionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RegionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegionOffsets, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { - sizeof(struct RegionList), - offsetof(struct RegionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionList = { - "RegionList", - "RegionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RegionList_tags_1, - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - asn_DEF_RegionList_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RegionList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RegionList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RegionList_1, - 1, /* Single element */ - &asn_SPC_RegionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegionOffsets.c b/src/tmx/Asn_J2735/src/2020/RegionOffsets.c deleted file mode 100644 index f81e51583..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegionOffsets.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegionOffsets.h" - -asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "xOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "yOffset" - }, - { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "zOffset" - }, -}; -static const int asn_MAP_RegionOffsets_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { - sizeof(struct RegionOffsets), - offsetof(struct RegionOffsets, _asn_ctx), - asn_MAP_RegionOffsets_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RegionOffsets_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { - "RegionOffsets", - "RegionOffsets", - &asn_OP_SEQUENCE, - asn_DEF_RegionOffsets_tags_1, - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - asn_DEF_RegionOffsets_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RegionOffsets_1, - 3, /* Elements count */ - &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegionPointSet.c b/src/tmx/Asn_J2735/src/2020/RegionPointSet.c deleted file mode 100644 index 7e3822ba7..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegionPointSet.c +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegionPointSet.h" - -#include "Position3D.h" -asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { - { ATF_POINTER, 2, offsetof(struct RegionPointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 1, offsetof(struct RegionPointSet, scale), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Zoom, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "scale" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nodeList" - }, -}; -static const int asn_MAP_RegionPointSet_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scale */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { - sizeof(struct RegionPointSet), - offsetof(struct RegionPointSet, _asn_ctx), - asn_MAP_RegionPointSet_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RegionPointSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { - "RegionPointSet", - "RegionPointSet", - &asn_OP_SEQUENCE, - asn_DEF_RegionPointSet_tags_1, - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - asn_DEF_RegionPointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RegionPointSet_1, - 3, /* Elements count */ - &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/2020/RegionalExtension.c deleted file mode 100644 index 6c013e05b..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegionalExtension.c +++ /dev/null @@ -1,11120 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegionalExtension.h" - -static const long asn_VAL_3_addGrpB = 2; -static const asn_ioc_cell_t asn_IOS_Reg_LaneDataAttribute_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_3_addGrpB }, - { "&Type", aioc__type, &asn_DEF_LaneDataAttribute_addGrpB } -}; -static const asn_ioc_set_t asn_IOS_Reg_LaneDataAttribute_1[] = { - { 1, 2, asn_IOS_Reg_LaneDataAttribute_1_rows } -}; -static const long asn_VAL_5_addGrpB = 2; -static const asn_ioc_cell_t asn_IOS_Reg_NodeOffsetPointXY_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_5_addGrpB }, - { "&Type", aioc__type, &asn_DEF_NodeOffsetPointXY_addGrpB } -}; -static const asn_ioc_set_t asn_IOS_Reg_NodeOffsetPointXY_1[] = { - { 1, 2, asn_IOS_Reg_NodeOffsetPointXY_1_rows } -}; -static const long asn_VAL_6_addGrpB = 2; -static const long asn_VAL_7_addGrpC = 3; -static const asn_ioc_cell_t asn_IOS_Reg_Position3D_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_6_addGrpB }, - { "&Type", aioc__type, &asn_DEF_Position3D_addGrpB }, - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_7_addGrpC }, - { "&Type", aioc__type, &asn_DEF_Position3D_addGrpC } -}; -static const asn_ioc_set_t asn_IOS_Reg_Position3D_1[] = { - { 2, 2, asn_IOS_Reg_Position3D_1_rows } -}; -static const long asn_VAL_9_addGrpC = 3; -static const asn_ioc_cell_t asn_IOS_Reg_MapData_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_9_addGrpC }, - { "&Type", aioc__type, &asn_DEF_MapData_addGrpC } -}; -static const asn_ioc_set_t asn_IOS_Reg_MapData_1[] = { - { 1, 2, asn_IOS_Reg_MapData_1_rows } -}; -static const long asn_VAL_8_addGrpC = 3; -static const asn_ioc_cell_t asn_IOS_Reg_RestrictionUserType_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_8_addGrpC }, - { "&Type", aioc__type, &asn_DEF_RestrictionUserType_addGrpC } -}; -static const asn_ioc_set_t asn_IOS_Reg_RestrictionUserType_1[] = { - { 1, 2, asn_IOS_Reg_RestrictionUserType_1_rows } -}; -static const long asn_VAL_1_addGrpC = 3; -static const asn_ioc_cell_t asn_IOS_Reg_ConnectionManeuverAssist_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_1_addGrpC }, - { "&Type", aioc__type, &asn_DEF_ConnectionManeuverAssist_addGrpC } -}; -static const asn_ioc_set_t asn_IOS_Reg_ConnectionManeuverAssist_1[] = { - { 1, 2, asn_IOS_Reg_ConnectionManeuverAssist_1_rows } -}; -static const long asn_VAL_2_addGrpC = 3; -static const asn_ioc_cell_t asn_IOS_Reg_IntersectionState_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_2_addGrpC }, - { "&Type", aioc__type, &asn_DEF_IntersectionState_addGrpC } -}; -static const asn_ioc_set_t asn_IOS_Reg_IntersectionState_1[] = { - { 1, 2, asn_IOS_Reg_IntersectionState_1_rows } -}; -static const long asn_VAL_4_addGrpB = 2; -static const asn_ioc_cell_t asn_IOS_Reg_MovementEvent_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_4_addGrpB }, - { "&Type", aioc__type, &asn_DEF_MovementEvent_addGrpB } -}; -static const asn_ioc_set_t asn_IOS_Reg_MovementEvent_1[] = { - { 1, 2, asn_IOS_Reg_MovementEvent_1_rows } -}; -static int -memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_LaneDataAttribute_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_LaneDataAttribute_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_LaneDataAttribute, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_NodeOffsetPointXY_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_NodeOffsetPointXY_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_NodeOffsetPointXY, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_Position3D_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_Position3D_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_Position3D, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_MapData_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_MapData_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MapData, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_RestrictionUserType_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_RestrictionUserType_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_RestrictionUserType, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_ConnectionManeuverAssist_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_ConnectionManeuverAssist_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_ConnectionManeuverAssist, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_IntersectionState_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_IntersectionState_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_IntersectionState, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_MovementEvent_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_MovementEvent_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MovementEvent, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static int -memb_regionId_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regExtValue_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_5 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_8 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_8 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_11 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_11 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_14 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_14 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_15 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_15 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_17 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_17 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_18 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_18 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_20 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_20 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_21 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_21 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_23 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_23 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_24 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_24 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_26 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_26 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_27 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_29 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_29 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_30 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_30 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_32 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_32 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_33 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_33 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_35 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_35 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_36 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_36 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_38 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_38 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_39 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_39 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_41 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_41 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_42 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_42 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_44 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_44 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_45 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_45 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_47 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_47 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_48 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_48 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_50 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_50 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_51 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_51 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_53 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_53 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_54 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_54 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_56 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_56 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_57 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_57 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_59 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_59 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_60 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_60 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_62 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_62 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_63 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_63 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_65 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_65 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_66 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_66 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_68 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_68 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_69 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_69 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_71 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_71 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_72 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_72 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_74 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_74 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_75 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_75 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_77 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_77 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_78 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_78 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_80 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_80 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_81 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_81 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_83 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_83 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_84 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_84 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_86 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_86 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_87 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_87 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_89 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_89 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_90 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_90 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_92 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_92 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_93 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_93 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_95 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_95 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_96 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_96 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_98 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_98 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_99 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_99 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_101 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_101 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_102 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_102 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_104 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_104 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_105 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_105 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_107 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_107 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_108 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_108 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_110 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_110 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_111 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_111 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_113 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_113 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_114 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_114 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_116 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_116 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_117 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_117 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_119 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_119 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_120 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_120 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_122 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_122 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_123 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_123 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_125 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_125 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_126 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_126 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_128 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_128 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_129 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_129 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_131 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_131 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_132 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_132 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_134 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_134 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_135 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_135 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_137 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_137 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_138 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_138 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_140 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_140 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_141 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_141 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_143 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_143 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_144 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_144 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_146 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_146 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_147 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_147 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_149 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_149 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_150 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_150 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_152 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_152 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_153 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_153 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_155 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_155 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_156 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_156 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_158 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_158 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_159 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_159 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_161 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_161 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_162 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_162 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_164 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_164 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_165 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_165 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_167 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_167 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_168 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_168 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_170 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_170 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_171 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_171 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_173 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_173 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_174 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_174 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_176 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_176 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_177 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_177 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_179 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_179 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_180 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_180 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_182 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_182 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_183 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_183 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { - sizeof(struct Reg_BasicSafetyMessage__regExtValue), - 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 */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_1 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_1 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_BasicSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_BasicSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1 = { - sizeof(struct Reg_BasicSafetyMessage), - offsetof(struct Reg_BasicSafetyMessage, _asn_ctx), - asn_MAP_Reg_BasicSafetyMessage_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage = { - "Reg-BasicSafetyMessage", - "Reg-BasicSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_BasicSafetyMessage_tags_1, - sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_Reg_BasicSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_BasicSafetyMessage_1, - 2, /* Elements count */ - &asn_SPC_Reg_BasicSafetyMessage_specs_1 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_6 = { - sizeof(struct Reg_EventDescription__regExtValue), - offsetof(struct Reg_EventDescription__regExtValue, _asn_ctx), - offsetof(struct Reg_EventDescription__regExtValue, present), - sizeof(((struct Reg_EventDescription__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_6 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_4 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_4 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_EventDescription_tags_4[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_EventDescription_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4 = { - sizeof(struct Reg_EventDescription), - offsetof(struct Reg_EventDescription, _asn_ctx), - asn_MAP_Reg_EventDescription_tag2el_4, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription = { - "Reg-EventDescription", - "Reg-EventDescription", - &asn_OP_SEQUENCE, - asn_DEF_Reg_EventDescription_tags_4, - sizeof(asn_DEF_Reg_EventDescription_tags_4) - /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ - asn_DEF_Reg_EventDescription_tags_4, /* Same as above */ - sizeof(asn_DEF_Reg_EventDescription_tags_4) - /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_EventDescription_4, - 2, /* Elements count */ - &asn_SPC_Reg_EventDescription_specs_4 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_9 = { - sizeof(struct Reg_SupplementalVehicleExtensions__regExtValue), - offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, _asn_ctx), - offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, present), - sizeof(((struct Reg_SupplementalVehicleExtensions__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_9 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_8, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_8, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_7 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_9, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_7 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 = { - sizeof(struct Reg_SupplementalVehicleExtensions), - offsetof(struct Reg_SupplementalVehicleExtensions, _asn_ctx), - asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions = { - "Reg-SupplementalVehicleExtensions", - "Reg-SupplementalVehicleExtensions", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, - sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) - /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ - asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, /* Same as above */ - sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) - /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SupplementalVehicleExtensions_7, - 2, /* Elements count */ - &asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_12 = { - sizeof(struct Reg_ComputedLane__regExtValue), - offsetof(struct Reg_ComputedLane__regExtValue, _asn_ctx), - offsetof(struct Reg_ComputedLane__regExtValue, present), - sizeof(((struct Reg_ComputedLane__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_12 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_10 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_10 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_ComputedLane_tags_10[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_ComputedLane_tag2el_10[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10 = { - sizeof(struct Reg_ComputedLane), - offsetof(struct Reg_ComputedLane, _asn_ctx), - asn_MAP_Reg_ComputedLane_tag2el_10, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane = { - "Reg-ComputedLane", - "Reg-ComputedLane", - &asn_OP_SEQUENCE, - asn_DEF_Reg_ComputedLane_tags_10, - sizeof(asn_DEF_Reg_ComputedLane_tags_10) - /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ - asn_DEF_Reg_ComputedLane_tags_10, /* Same as above */ - sizeof(asn_DEF_Reg_ComputedLane_tags_10) - /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_ComputedLane_10, - 2, /* Elements count */ - &asn_SPC_Reg_ComputedLane_specs_10 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_15[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute__regExtValue, choice.LaneDataAttribute_addGrpB), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_LaneDataAttribute_addGrpB, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "LaneDataAttribute-addGrpB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_15[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* LaneDataAttribute-addGrpB */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_15 = { - sizeof(struct Reg_LaneDataAttribute__regExtValue), - offsetof(struct Reg_LaneDataAttribute__regExtValue, _asn_ctx), - offsetof(struct Reg_LaneDataAttribute__regExtValue, present), - sizeof(((struct Reg_LaneDataAttribute__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_15, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_15 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_15, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_15 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_14, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_14, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_13 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_15, - select_Reg_LaneDataAttribute_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_15, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_15, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_13 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_LaneDataAttribute_tags_13[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneDataAttribute_tag2el_13[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13 = { - sizeof(struct Reg_LaneDataAttribute), - offsetof(struct Reg_LaneDataAttribute, _asn_ctx), - asn_MAP_Reg_LaneDataAttribute_tag2el_13, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute = { - "Reg-LaneDataAttribute", - "Reg-LaneDataAttribute", - &asn_OP_SEQUENCE, - asn_DEF_Reg_LaneDataAttribute_tags_13, - sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) - /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ - asn_DEF_Reg_LaneDataAttribute_tags_13, /* Same as above */ - sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) - /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_LaneDataAttribute_13, - 2, /* Elements count */ - &asn_SPC_Reg_LaneDataAttribute_specs_13 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_18 = { - sizeof(struct Reg_NodeAttributeSetXY__regExtValue), - offsetof(struct Reg_NodeAttributeSetXY__regExtValue, _asn_ctx), - offsetof(struct Reg_NodeAttributeSetXY__regExtValue, present), - sizeof(((struct Reg_NodeAttributeSetXY__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_18 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_18 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_17, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_17, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_16 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_18, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_18, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_18, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_16 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetXY_tags_16[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetXY_tag2el_16[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16 = { - sizeof(struct Reg_NodeAttributeSetXY), - offsetof(struct Reg_NodeAttributeSetXY, _asn_ctx), - asn_MAP_Reg_NodeAttributeSetXY_tag2el_16, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY = { - "Reg-NodeAttributeSetXY", - "Reg-NodeAttributeSetXY", - &asn_OP_SEQUENCE, - asn_DEF_Reg_NodeAttributeSetXY_tags_16, - sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) - /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ - asn_DEF_Reg_NodeAttributeSetXY_tags_16, /* Same as above */ - sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) - /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_NodeAttributeSetXY_16, - 2, /* Elements count */ - &asn_SPC_Reg_NodeAttributeSetXY_specs_16 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_21[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY__regExtValue, choice.NodeOffsetPointXY_addGrpB), - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_NodeOffsetPointXY_addGrpB, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "NodeOffsetPointXY-addGrpB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_21[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 } /* posB */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_21 = { - sizeof(struct Reg_NodeOffsetPointXY__regExtValue), - offsetof(struct Reg_NodeOffsetPointXY__regExtValue, _asn_ctx), - offsetof(struct Reg_NodeOffsetPointXY__regExtValue, present), - sizeof(((struct Reg_NodeOffsetPointXY__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_21, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_21 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_21, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_21 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_20, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_20, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_19 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_21, - select_Reg_NodeOffsetPointXY_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_21, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_21, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_19 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointXY_tags_19[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointXY_tag2el_19[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19 = { - sizeof(struct Reg_NodeOffsetPointXY), - offsetof(struct Reg_NodeOffsetPointXY, _asn_ctx), - asn_MAP_Reg_NodeOffsetPointXY_tag2el_19, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY = { - "Reg-NodeOffsetPointXY", - "Reg-NodeOffsetPointXY", - &asn_OP_SEQUENCE, - asn_DEF_Reg_NodeOffsetPointXY_tags_19, - sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) - /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ - asn_DEF_Reg_NodeOffsetPointXY_tags_19, /* Same as above */ - sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) - /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_NodeOffsetPointXY_19, - 2, /* Elements count */ - &asn_SPC_Reg_NodeOffsetPointXY_specs_19 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_24[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpB), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Position3D_addGrpB, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "Position3D-addGrpB" - }, - { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpC), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Position3D_addGrpC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "Position3D-addGrpC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_24[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* Position3D-addGrpB */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* Position3D-addGrpC */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_24 = { - sizeof(struct Reg_Position3D__regExtValue), - offsetof(struct Reg_Position3D__regExtValue, _asn_ctx), - offsetof(struct Reg_Position3D__regExtValue, present), - sizeof(((struct Reg_Position3D__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_24, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_24 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_24, - 2, /* Elements count */ - &asn_SPC_regExtValue_specs_24 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_Position3D_22[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_23, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_23, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_22 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_24, - select_Reg_Position3D_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_24, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_24, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_22 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_Position3D_tags_22[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_Position3D_tag2el_22[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22 = { - sizeof(struct Reg_Position3D), - offsetof(struct Reg_Position3D, _asn_ctx), - asn_MAP_Reg_Position3D_tag2el_22, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_Position3D = { - "Reg-Position3D", - "Reg-Position3D", - &asn_OP_SEQUENCE, - asn_DEF_Reg_Position3D_tags_22, - sizeof(asn_DEF_Reg_Position3D_tags_22) - /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ - asn_DEF_Reg_Position3D_tags_22, /* Same as above */ - sizeof(asn_DEF_Reg_Position3D_tags_22) - /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_Position3D_22, - 2, /* Elements count */ - &asn_SPC_Reg_Position3D_specs_22 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_27 = { - sizeof(struct Reg_RequestorType__regExtValue), - offsetof(struct Reg_RequestorType__regExtValue, _asn_ctx), - offsetof(struct Reg_RequestorType__regExtValue, present), - sizeof(((struct Reg_RequestorType__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_27 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_27 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_26, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_26, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_25 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_27, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_27, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_27, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_25 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RequestorType_tags_25[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorType_tag2el_25[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25 = { - sizeof(struct Reg_RequestorType), - offsetof(struct Reg_RequestorType, _asn_ctx), - asn_MAP_Reg_RequestorType_tag2el_25, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType = { - "Reg-RequestorType", - "Reg-RequestorType", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RequestorType_tags_25, - sizeof(asn_DEF_Reg_RequestorType_tags_25) - /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ - asn_DEF_Reg_RequestorType_tags_25, /* Same as above */ - sizeof(asn_DEF_Reg_RequestorType_tags_25) - /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RequestorType_25, - 2, /* Elements count */ - &asn_SPC_Reg_RequestorType_specs_25 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_30 = { - sizeof(struct Reg_VehicleClassification__regExtValue), - offsetof(struct Reg_VehicleClassification__regExtValue, _asn_ctx), - offsetof(struct Reg_VehicleClassification__regExtValue, present), - sizeof(((struct Reg_VehicleClassification__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_30 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_30 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_29, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_29, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_28 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_30, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_30, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_30, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_28 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_VehicleClassification_tags_28[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_VehicleClassification_tag2el_28[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28 = { - sizeof(struct Reg_VehicleClassification), - offsetof(struct Reg_VehicleClassification, _asn_ctx), - asn_MAP_Reg_VehicleClassification_tag2el_28, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification = { - "Reg-VehicleClassification", - "Reg-VehicleClassification", - &asn_OP_SEQUENCE, - asn_DEF_Reg_VehicleClassification_tags_28, - sizeof(asn_DEF_Reg_VehicleClassification_tags_28) - /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ - asn_DEF_Reg_VehicleClassification_tags_28, /* Same as above */ - sizeof(asn_DEF_Reg_VehicleClassification_tags_28) - /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_VehicleClassification_28, - 2, /* Elements count */ - &asn_SPC_Reg_VehicleClassification_specs_28 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_33 = { - sizeof(struct Reg_VerticalOffset__regExtValue), - offsetof(struct Reg_VerticalOffset__regExtValue, _asn_ctx), - offsetof(struct Reg_VerticalOffset__regExtValue, present), - sizeof(((struct Reg_VerticalOffset__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_33 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_33 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_32, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_32, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_31 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_33, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_33, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_33, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_31 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_VerticalOffset_tags_31[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_VerticalOffset_tag2el_31[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31 = { - sizeof(struct Reg_VerticalOffset), - offsetof(struct Reg_VerticalOffset, _asn_ctx), - asn_MAP_Reg_VerticalOffset_tag2el_31, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset = { - "Reg-VerticalOffset", - "Reg-VerticalOffset", - &asn_OP_SEQUENCE, - asn_DEF_Reg_VerticalOffset_tags_31, - sizeof(asn_DEF_Reg_VerticalOffset_tags_31) - /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ - asn_DEF_Reg_VerticalOffset_tags_31, /* Same as above */ - sizeof(asn_DEF_Reg_VerticalOffset_tags_31) - /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_VerticalOffset_31, - 2, /* Elements count */ - &asn_SPC_Reg_VerticalOffset_specs_31 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_36 = { - sizeof(struct Reg_CommonSafetyRequest__regExtValue), - offsetof(struct Reg_CommonSafetyRequest__regExtValue, _asn_ctx), - offsetof(struct Reg_CommonSafetyRequest__regExtValue, present), - sizeof(((struct Reg_CommonSafetyRequest__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_36 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_36 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_35, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_35, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_34 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_36, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_36, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_36, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_34 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_CommonSafetyRequest_tags_34[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_CommonSafetyRequest_tag2el_34[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34 = { - sizeof(struct Reg_CommonSafetyRequest), - offsetof(struct Reg_CommonSafetyRequest, _asn_ctx), - asn_MAP_Reg_CommonSafetyRequest_tag2el_34, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest = { - "Reg-CommonSafetyRequest", - "Reg-CommonSafetyRequest", - &asn_OP_SEQUENCE, - asn_DEF_Reg_CommonSafetyRequest_tags_34, - sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) - /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ - asn_DEF_Reg_CommonSafetyRequest_tags_34, /* Same as above */ - sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) - /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_CommonSafetyRequest_34, - 2, /* Elements count */ - &asn_SPC_Reg_CommonSafetyRequest_specs_34 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_39 = { - sizeof(struct Reg_EmergencyVehicleAlert__regExtValue), - offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, _asn_ctx), - offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, present), - sizeof(((struct Reg_EmergencyVehicleAlert__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_39 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_39 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_38, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_38, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_37 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_39, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_39, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_39, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_37 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_EmergencyVehicleAlert_tags_37[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37 = { - sizeof(struct Reg_EmergencyVehicleAlert), - offsetof(struct Reg_EmergencyVehicleAlert, _asn_ctx), - asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert = { - "Reg-EmergencyVehicleAlert", - "Reg-EmergencyVehicleAlert", - &asn_OP_SEQUENCE, - asn_DEF_Reg_EmergencyVehicleAlert_tags_37, - sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) - /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ - asn_DEF_Reg_EmergencyVehicleAlert_tags_37, /* Same as above */ - sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) - /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_EmergencyVehicleAlert_37, - 2, /* Elements count */ - &asn_SPC_Reg_EmergencyVehicleAlert_specs_37 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_42 = { - sizeof(struct Reg_IntersectionCollision__regExtValue), - offsetof(struct Reg_IntersectionCollision__regExtValue, _asn_ctx), - offsetof(struct Reg_IntersectionCollision__regExtValue, present), - sizeof(((struct Reg_IntersectionCollision__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_42 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_42 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_41, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_41, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_40 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_42, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_42, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_42, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_40 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_IntersectionCollision_tags_40[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionCollision_tag2el_40[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40 = { - sizeof(struct Reg_IntersectionCollision), - offsetof(struct Reg_IntersectionCollision, _asn_ctx), - asn_MAP_Reg_IntersectionCollision_tag2el_40, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision = { - "Reg-IntersectionCollision", - "Reg-IntersectionCollision", - &asn_OP_SEQUENCE, - asn_DEF_Reg_IntersectionCollision_tags_40, - sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) - /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ - asn_DEF_Reg_IntersectionCollision_tags_40, /* Same as above */ - sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) - /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_IntersectionCollision_40, - 2, /* Elements count */ - &asn_SPC_Reg_IntersectionCollision_specs_40 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_45[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData__regExtValue, choice.MapData_addGrpC), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MapData_addGrpC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "MapData-addGrpC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_45[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MapData-addGrpC */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_45 = { - sizeof(struct Reg_MapData__regExtValue), - offsetof(struct Reg_MapData__regExtValue, _asn_ctx), - offsetof(struct Reg_MapData__regExtValue, present), - sizeof(((struct Reg_MapData__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_45, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_45 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_45, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_45 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_MapData_43[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_44, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_44, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_43 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_45, - select_Reg_MapData_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_45, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_45, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_43 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_MapData_tags_43[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_MapData_tag2el_43[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43 = { - sizeof(struct Reg_MapData), - offsetof(struct Reg_MapData, _asn_ctx), - asn_MAP_Reg_MapData_tag2el_43, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MapData = { - "Reg-MapData", - "Reg-MapData", - &asn_OP_SEQUENCE, - asn_DEF_Reg_MapData_tags_43, - sizeof(asn_DEF_Reg_MapData_tags_43) - /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ - asn_DEF_Reg_MapData_tags_43, /* Same as above */ - sizeof(asn_DEF_Reg_MapData_tags_43) - /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_MapData_43, - 2, /* Elements count */ - &asn_SPC_Reg_MapData_specs_43 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_48 = { - sizeof(struct Reg_GenericLane__regExtValue), - offsetof(struct Reg_GenericLane__regExtValue, _asn_ctx), - offsetof(struct Reg_GenericLane__regExtValue, present), - sizeof(((struct Reg_GenericLane__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_48 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_48 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_47, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_47, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_46 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_48, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_48, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_48, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_46 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_GenericLane_tags_46[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_GenericLane_tag2el_46[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46 = { - sizeof(struct Reg_GenericLane), - offsetof(struct Reg_GenericLane, _asn_ctx), - asn_MAP_Reg_GenericLane_tag2el_46, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane = { - "Reg-GenericLane", - "Reg-GenericLane", - &asn_OP_SEQUENCE, - asn_DEF_Reg_GenericLane_tags_46, - sizeof(asn_DEF_Reg_GenericLane_tags_46) - /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ - asn_DEF_Reg_GenericLane_tags_46, /* Same as above */ - sizeof(asn_DEF_Reg_GenericLane_tags_46) - /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_GenericLane_46, - 2, /* Elements count */ - &asn_SPC_Reg_GenericLane_specs_46 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_51 = { - sizeof(struct Reg_IntersectionGeometry__regExtValue), - offsetof(struct Reg_IntersectionGeometry__regExtValue, _asn_ctx), - offsetof(struct Reg_IntersectionGeometry__regExtValue, present), - sizeof(((struct Reg_IntersectionGeometry__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_51 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_51 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_50, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_50, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_49 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_51, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_51, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_51, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_49 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_IntersectionGeometry_tags_49[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionGeometry_tag2el_49[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49 = { - sizeof(struct Reg_IntersectionGeometry), - offsetof(struct Reg_IntersectionGeometry, _asn_ctx), - asn_MAP_Reg_IntersectionGeometry_tag2el_49, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry = { - "Reg-IntersectionGeometry", - "Reg-IntersectionGeometry", - &asn_OP_SEQUENCE, - asn_DEF_Reg_IntersectionGeometry_tags_49, - sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) - /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ - asn_DEF_Reg_IntersectionGeometry_tags_49, /* Same as above */ - sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) - /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_IntersectionGeometry_49, - 2, /* Elements count */ - &asn_SPC_Reg_IntersectionGeometry_specs_49 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_54 = { - sizeof(struct Reg_LaneAttributes__regExtValue), - offsetof(struct Reg_LaneAttributes__regExtValue, _asn_ctx), - offsetof(struct Reg_LaneAttributes__regExtValue, present), - sizeof(((struct Reg_LaneAttributes__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_54 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_54 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_53, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_53, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_52 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_54, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_54, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_54, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_52 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_LaneAttributes_tags_52[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneAttributes_tag2el_52[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52 = { - sizeof(struct Reg_LaneAttributes), - offsetof(struct Reg_LaneAttributes, _asn_ctx), - asn_MAP_Reg_LaneAttributes_tag2el_52, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes = { - "Reg-LaneAttributes", - "Reg-LaneAttributes", - &asn_OP_SEQUENCE, - asn_DEF_Reg_LaneAttributes_tags_52, - sizeof(asn_DEF_Reg_LaneAttributes_tags_52) - /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ - asn_DEF_Reg_LaneAttributes_tags_52, /* Same as above */ - sizeof(asn_DEF_Reg_LaneAttributes_tags_52) - /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_LaneAttributes_52, - 2, /* Elements count */ - &asn_SPC_Reg_LaneAttributes_specs_52 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_57 = { - sizeof(struct Reg_SignalControlZone__regExtValue), - offsetof(struct Reg_SignalControlZone__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalControlZone__regExtValue, present), - sizeof(((struct Reg_SignalControlZone__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_57 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_57 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_56, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_56, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_55 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_57, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_57, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_57, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_55 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalControlZone_tags_55[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalControlZone_tag2el_55[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55 = { - sizeof(struct Reg_SignalControlZone), - offsetof(struct Reg_SignalControlZone, _asn_ctx), - asn_MAP_Reg_SignalControlZone_tag2el_55, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone = { - "Reg-SignalControlZone", - "Reg-SignalControlZone", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalControlZone_tags_55, - sizeof(asn_DEF_Reg_SignalControlZone_tags_55) - /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ - asn_DEF_Reg_SignalControlZone_tags_55, /* Same as above */ - sizeof(asn_DEF_Reg_SignalControlZone_tags_55) - /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalControlZone_55, - 2, /* Elements count */ - &asn_SPC_Reg_SignalControlZone_specs_55 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_60[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType__regExtValue, choice.RestrictionUserType_addGrpC), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RestrictionUserType_addGrpC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "RestrictionUserType-addGrpC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_60[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RestrictionUserType-addGrpC */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_60 = { - sizeof(struct Reg_RestrictionUserType__regExtValue), - offsetof(struct Reg_RestrictionUserType__regExtValue, _asn_ctx), - offsetof(struct Reg_RestrictionUserType__regExtValue, present), - sizeof(((struct Reg_RestrictionUserType__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_60, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_60 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_60, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_60 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_59, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_59, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_58 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_60, - select_Reg_RestrictionUserType_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_60, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_60, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_58 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RestrictionUserType_tags_58[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RestrictionUserType_tag2el_58[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58 = { - sizeof(struct Reg_RestrictionUserType), - offsetof(struct Reg_RestrictionUserType, _asn_ctx), - asn_MAP_Reg_RestrictionUserType_tag2el_58, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType = { - "Reg-RestrictionUserType", - "Reg-RestrictionUserType", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RestrictionUserType_tags_58, - sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) - /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ - asn_DEF_Reg_RestrictionUserType_tags_58, /* Same as above */ - sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) - /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RestrictionUserType_58, - 2, /* Elements count */ - &asn_SPC_Reg_RestrictionUserType_specs_58 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_63 = { - sizeof(struct Reg_RoadSegment__regExtValue), - offsetof(struct Reg_RoadSegment__regExtValue, _asn_ctx), - offsetof(struct Reg_RoadSegment__regExtValue, present), - sizeof(((struct Reg_RoadSegment__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_63 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_63 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_62, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_62, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_61 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_63, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_63, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_63, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_61 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RoadSegment_tags_61[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSegment_tag2el_61[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61 = { - sizeof(struct Reg_RoadSegment), - offsetof(struct Reg_RoadSegment, _asn_ctx), - asn_MAP_Reg_RoadSegment_tag2el_61, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment = { - "Reg-RoadSegment", - "Reg-RoadSegment", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RoadSegment_tags_61, - sizeof(asn_DEF_Reg_RoadSegment_tags_61) - /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ - asn_DEF_Reg_RoadSegment_tags_61, /* Same as above */ - sizeof(asn_DEF_Reg_RoadSegment_tags_61) - /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RoadSegment_61, - 2, /* Elements count */ - &asn_SPC_Reg_RoadSegment_specs_61 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_66 = { - sizeof(struct Reg_NMEAcorrections__regExtValue), - offsetof(struct Reg_NMEAcorrections__regExtValue, _asn_ctx), - offsetof(struct Reg_NMEAcorrections__regExtValue, present), - sizeof(((struct Reg_NMEAcorrections__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_66 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_66 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_65, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_65, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_64 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_66, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_66, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_66, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_64 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_NMEAcorrections_tags_64[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_NMEAcorrections_tag2el_64[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64 = { - sizeof(struct Reg_NMEAcorrections), - offsetof(struct Reg_NMEAcorrections, _asn_ctx), - asn_MAP_Reg_NMEAcorrections_tag2el_64, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections = { - "Reg-NMEAcorrections", - "Reg-NMEAcorrections", - &asn_OP_SEQUENCE, - asn_DEF_Reg_NMEAcorrections_tags_64, - sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) - /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ - asn_DEF_Reg_NMEAcorrections_tags_64, /* Same as above */ - sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) - /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_NMEAcorrections_64, - 2, /* Elements count */ - &asn_SPC_Reg_NMEAcorrections_specs_64 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_69 = { - sizeof(struct Reg_PersonalSafetyMessage__regExtValue), - offsetof(struct Reg_PersonalSafetyMessage__regExtValue, _asn_ctx), - offsetof(struct Reg_PersonalSafetyMessage__regExtValue, present), - sizeof(((struct Reg_PersonalSafetyMessage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_69 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_69 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_68, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_68, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_67 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_69, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_69, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_69, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_67 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_PersonalSafetyMessage_tags_67[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_PersonalSafetyMessage_tag2el_67[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67 = { - sizeof(struct Reg_PersonalSafetyMessage), - offsetof(struct Reg_PersonalSafetyMessage, _asn_ctx), - asn_MAP_Reg_PersonalSafetyMessage_tag2el_67, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage = { - "Reg-PersonalSafetyMessage", - "Reg-PersonalSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_PersonalSafetyMessage_tags_67, - sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) - /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ - asn_DEF_Reg_PersonalSafetyMessage_tags_67, /* Same as above */ - sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) - /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_PersonalSafetyMessage_67, - 2, /* Elements count */ - &asn_SPC_Reg_PersonalSafetyMessage_specs_67 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_72 = { - sizeof(struct Reg_ProbeDataManagement__regExtValue), - offsetof(struct Reg_ProbeDataManagement__regExtValue, _asn_ctx), - offsetof(struct Reg_ProbeDataManagement__regExtValue, present), - sizeof(((struct Reg_ProbeDataManagement__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_72 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_72 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_71, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_71, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_70 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_72, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_72, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_72, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_70 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_ProbeDataManagement_tags_70[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeDataManagement_tag2el_70[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70 = { - sizeof(struct Reg_ProbeDataManagement), - offsetof(struct Reg_ProbeDataManagement, _asn_ctx), - asn_MAP_Reg_ProbeDataManagement_tag2el_70, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement = { - "Reg-ProbeDataManagement", - "Reg-ProbeDataManagement", - &asn_OP_SEQUENCE, - asn_DEF_Reg_ProbeDataManagement_tags_70, - sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) - /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ - asn_DEF_Reg_ProbeDataManagement_tags_70, /* Same as above */ - sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) - /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_ProbeDataManagement_70, - 2, /* Elements count */ - &asn_SPC_Reg_ProbeDataManagement_specs_70 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_75 = { - sizeof(struct Reg_ProbeVehicleData__regExtValue), - offsetof(struct Reg_ProbeVehicleData__regExtValue, _asn_ctx), - offsetof(struct Reg_ProbeVehicleData__regExtValue, present), - sizeof(((struct Reg_ProbeVehicleData__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_75 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_75 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_74, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_74, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_73 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_75, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_75, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_75, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_73 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_ProbeVehicleData_tags_73[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeVehicleData_tag2el_73[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73 = { - sizeof(struct Reg_ProbeVehicleData), - offsetof(struct Reg_ProbeVehicleData, _asn_ctx), - asn_MAP_Reg_ProbeVehicleData_tag2el_73, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData = { - "Reg-ProbeVehicleData", - "Reg-ProbeVehicleData", - &asn_OP_SEQUENCE, - asn_DEF_Reg_ProbeVehicleData_tags_73, - sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) - /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ - asn_DEF_Reg_ProbeVehicleData_tags_73, /* Same as above */ - sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) - /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_ProbeVehicleData_73, - 2, /* Elements count */ - &asn_SPC_Reg_ProbeVehicleData_specs_73 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_78 = { - sizeof(struct Reg_RoadSideAlert__regExtValue), - offsetof(struct Reg_RoadSideAlert__regExtValue, _asn_ctx), - offsetof(struct Reg_RoadSideAlert__regExtValue, present), - sizeof(((struct Reg_RoadSideAlert__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_78 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_78 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_77, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_77, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_76 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_78, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_78, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_78, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_76 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RoadSideAlert_tags_76[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSideAlert_tag2el_76[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76 = { - sizeof(struct Reg_RoadSideAlert), - offsetof(struct Reg_RoadSideAlert, _asn_ctx), - asn_MAP_Reg_RoadSideAlert_tag2el_76, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert = { - "Reg-RoadSideAlert", - "Reg-RoadSideAlert", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RoadSideAlert_tags_76, - sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) - /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ - asn_DEF_Reg_RoadSideAlert_tags_76, /* Same as above */ - sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) - /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RoadSideAlert_76, - 2, /* Elements count */ - &asn_SPC_Reg_RoadSideAlert_specs_76 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_81 = { - sizeof(struct Reg_RTCMcorrections__regExtValue), - offsetof(struct Reg_RTCMcorrections__regExtValue, _asn_ctx), - offsetof(struct Reg_RTCMcorrections__regExtValue, present), - sizeof(((struct Reg_RTCMcorrections__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_81 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_81 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_80, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_80, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_79 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_81, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_81, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_81, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_79 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RTCMcorrections_tags_79[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RTCMcorrections_tag2el_79[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79 = { - sizeof(struct Reg_RTCMcorrections), - offsetof(struct Reg_RTCMcorrections, _asn_ctx), - asn_MAP_Reg_RTCMcorrections_tag2el_79, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections = { - "Reg-RTCMcorrections", - "Reg-RTCMcorrections", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RTCMcorrections_tags_79, - sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) - /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ - asn_DEF_Reg_RTCMcorrections_tags_79, /* Same as above */ - sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) - /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RTCMcorrections_79, - 2, /* Elements count */ - &asn_SPC_Reg_RTCMcorrections_specs_79 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_84 = { - sizeof(struct Reg_SignalRequestMessage__regExtValue), - offsetof(struct Reg_SignalRequestMessage__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalRequestMessage__regExtValue, present), - sizeof(((struct Reg_SignalRequestMessage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_84 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_84 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_83, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_83, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_82 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_84, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_84, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_84, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_82 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestMessage_tags_82[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestMessage_tag2el_82[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82 = { - sizeof(struct Reg_SignalRequestMessage), - offsetof(struct Reg_SignalRequestMessage, _asn_ctx), - asn_MAP_Reg_SignalRequestMessage_tag2el_82, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage = { - "Reg-SignalRequestMessage", - "Reg-SignalRequestMessage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalRequestMessage_tags_82, - sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) - /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ - asn_DEF_Reg_SignalRequestMessage_tags_82, /* Same as above */ - sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) - /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalRequestMessage_82, - 2, /* Elements count */ - &asn_SPC_Reg_SignalRequestMessage_specs_82 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_87 = { - sizeof(struct Reg_RequestorDescription__regExtValue), - offsetof(struct Reg_RequestorDescription__regExtValue, _asn_ctx), - offsetof(struct Reg_RequestorDescription__regExtValue, present), - sizeof(((struct Reg_RequestorDescription__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_87 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_87 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_86, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_86, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_85 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_87, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_87, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_87, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_85 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_RequestorDescription_tags_85[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorDescription_tag2el_85[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85 = { - sizeof(struct Reg_RequestorDescription), - offsetof(struct Reg_RequestorDescription, _asn_ctx), - asn_MAP_Reg_RequestorDescription_tag2el_85, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription = { - "Reg-RequestorDescription", - "Reg-RequestorDescription", - &asn_OP_SEQUENCE, - asn_DEF_Reg_RequestorDescription_tags_85, - sizeof(asn_DEF_Reg_RequestorDescription_tags_85) - /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ - asn_DEF_Reg_RequestorDescription_tags_85, /* Same as above */ - sizeof(asn_DEF_Reg_RequestorDescription_tags_85) - /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_RequestorDescription_85, - 2, /* Elements count */ - &asn_SPC_Reg_RequestorDescription_specs_85 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_90 = { - sizeof(struct Reg_SignalRequestPackage__regExtValue), - offsetof(struct Reg_SignalRequestPackage__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalRequestPackage__regExtValue, present), - sizeof(((struct Reg_SignalRequestPackage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_90 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_90 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_89, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_89, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_88 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_90, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_90, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_90, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_88 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestPackage_tags_88[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestPackage_tag2el_88[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88 = { - sizeof(struct Reg_SignalRequestPackage), - offsetof(struct Reg_SignalRequestPackage, _asn_ctx), - asn_MAP_Reg_SignalRequestPackage_tag2el_88, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage = { - "Reg-SignalRequestPackage", - "Reg-SignalRequestPackage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalRequestPackage_tags_88, - sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) - /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ - asn_DEF_Reg_SignalRequestPackage_tags_88, /* Same as above */ - sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) - /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalRequestPackage_88, - 2, /* Elements count */ - &asn_SPC_Reg_SignalRequestPackage_specs_88 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_93 = { - sizeof(struct Reg_SignalRequest__regExtValue), - offsetof(struct Reg_SignalRequest__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalRequest__regExtValue, present), - sizeof(((struct Reg_SignalRequest__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_93 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_93 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_92, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_92, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_91 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_93, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_93, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_93, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_91 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalRequest_tags_91[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequest_tag2el_91[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91 = { - sizeof(struct Reg_SignalRequest), - offsetof(struct Reg_SignalRequest, _asn_ctx), - asn_MAP_Reg_SignalRequest_tag2el_91, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest = { - "Reg-SignalRequest", - "Reg-SignalRequest", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalRequest_tags_91, - sizeof(asn_DEF_Reg_SignalRequest_tags_91) - /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ - asn_DEF_Reg_SignalRequest_tags_91, /* Same as above */ - sizeof(asn_DEF_Reg_SignalRequest_tags_91) - /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalRequest_91, - 2, /* Elements count */ - &asn_SPC_Reg_SignalRequest_specs_91 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_96 = { - sizeof(struct Reg_SignalStatusMessage__regExtValue), - offsetof(struct Reg_SignalStatusMessage__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalStatusMessage__regExtValue, present), - sizeof(((struct Reg_SignalStatusMessage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_96 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_96 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_95, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_95, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_94 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_96, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_96, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_96, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_94 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusMessage_tags_94[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusMessage_tag2el_94[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94 = { - sizeof(struct Reg_SignalStatusMessage), - offsetof(struct Reg_SignalStatusMessage, _asn_ctx), - asn_MAP_Reg_SignalStatusMessage_tag2el_94, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage = { - "Reg-SignalStatusMessage", - "Reg-SignalStatusMessage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalStatusMessage_tags_94, - sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) - /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ - asn_DEF_Reg_SignalStatusMessage_tags_94, /* Same as above */ - sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) - /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalStatusMessage_94, - 2, /* Elements count */ - &asn_SPC_Reg_SignalStatusMessage_specs_94 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_99 = { - sizeof(struct Reg_SignalStatusPackage__regExtValue), - offsetof(struct Reg_SignalStatusPackage__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalStatusPackage__regExtValue, present), - sizeof(((struct Reg_SignalStatusPackage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_99 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_99 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_98, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_98, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_97 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_99, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_99, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_99, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_97 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusPackage_tags_97[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusPackage_tag2el_97[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97 = { - sizeof(struct Reg_SignalStatusPackage), - offsetof(struct Reg_SignalStatusPackage, _asn_ctx), - asn_MAP_Reg_SignalStatusPackage_tag2el_97, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage = { - "Reg-SignalStatusPackage", - "Reg-SignalStatusPackage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalStatusPackage_tags_97, - sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) - /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ - asn_DEF_Reg_SignalStatusPackage_tags_97, /* Same as above */ - sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) - /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalStatusPackage_97, - 2, /* Elements count */ - &asn_SPC_Reg_SignalStatusPackage_specs_97 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_102 = { - sizeof(struct Reg_SignalStatus__regExtValue), - offsetof(struct Reg_SignalStatus__regExtValue, _asn_ctx), - offsetof(struct Reg_SignalStatus__regExtValue, present), - sizeof(((struct Reg_SignalStatus__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_102 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_102 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_101, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_101, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_100 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_102, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_102, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_102, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_100 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SignalStatus_tags_100[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatus_tag2el_100[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100 = { - sizeof(struct Reg_SignalStatus), - offsetof(struct Reg_SignalStatus, _asn_ctx), - asn_MAP_Reg_SignalStatus_tag2el_100, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus = { - "Reg-SignalStatus", - "Reg-SignalStatus", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SignalStatus_tags_100, - sizeof(asn_DEF_Reg_SignalStatus_tags_100) - /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ - asn_DEF_Reg_SignalStatus_tags_100, /* Same as above */ - sizeof(asn_DEF_Reg_SignalStatus_tags_100) - /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SignalStatus_100, - 2, /* Elements count */ - &asn_SPC_Reg_SignalStatus_specs_100 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_105 = { - sizeof(struct Reg_SPAT__regExtValue), - offsetof(struct Reg_SPAT__regExtValue, _asn_ctx), - offsetof(struct Reg_SPAT__regExtValue, present), - sizeof(((struct Reg_SPAT__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_105 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_105 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_SPAT_103[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_104, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_104, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_103 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_105, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_105, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_105, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_103 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_SPAT_tags_103[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_SPAT_tag2el_103[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103 = { - sizeof(struct Reg_SPAT), - offsetof(struct Reg_SPAT, _asn_ctx), - asn_MAP_Reg_SPAT_tag2el_103, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SPAT = { - "Reg-SPAT", - "Reg-SPAT", - &asn_OP_SEQUENCE, - asn_DEF_Reg_SPAT_tags_103, - sizeof(asn_DEF_Reg_SPAT_tags_103) - /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ - asn_DEF_Reg_SPAT_tags_103, /* Same as above */ - sizeof(asn_DEF_Reg_SPAT_tags_103) - /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_SPAT_103, - 2, /* Elements count */ - &asn_SPC_Reg_SPAT_specs_103 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_108 = { - sizeof(struct Reg_AdvisorySpeed__regExtValue), - offsetof(struct Reg_AdvisorySpeed__regExtValue, _asn_ctx), - offsetof(struct Reg_AdvisorySpeed__regExtValue, present), - sizeof(((struct Reg_AdvisorySpeed__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_108 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_108 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_107, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_107, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_106 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_108, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_108, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_108, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_106 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_AdvisorySpeed_tags_106[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_AdvisorySpeed_tag2el_106[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106 = { - sizeof(struct Reg_AdvisorySpeed), - offsetof(struct Reg_AdvisorySpeed, _asn_ctx), - asn_MAP_Reg_AdvisorySpeed_tag2el_106, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed = { - "Reg-AdvisorySpeed", - "Reg-AdvisorySpeed", - &asn_OP_SEQUENCE, - asn_DEF_Reg_AdvisorySpeed_tags_106, - sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) - /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ - asn_DEF_Reg_AdvisorySpeed_tags_106, /* Same as above */ - sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) - /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_AdvisorySpeed_106, - 2, /* Elements count */ - &asn_SPC_Reg_AdvisorySpeed_specs_106 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_111[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, choice.ConnectionManeuverAssist_addGrpC), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ConnectionManeuverAssist_addGrpC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "ConnectionManeuverAssist-addGrpC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_111[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* ConnectionManeuverAssist-addGrpC */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_111 = { - sizeof(struct Reg_ConnectionManeuverAssist__regExtValue), - offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, _asn_ctx), - offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, present), - sizeof(((struct Reg_ConnectionManeuverAssist__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_111, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_111 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_111, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_111 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_110, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_110, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_109 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_111, - select_Reg_ConnectionManeuverAssist_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_111, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_111, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_109 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_ConnectionManeuverAssist_tags_109[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109 = { - sizeof(struct Reg_ConnectionManeuverAssist), - offsetof(struct Reg_ConnectionManeuverAssist, _asn_ctx), - asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist = { - "Reg-ConnectionManeuverAssist", - "Reg-ConnectionManeuverAssist", - &asn_OP_SEQUENCE, - asn_DEF_Reg_ConnectionManeuverAssist_tags_109, - sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) - /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ - asn_DEF_Reg_ConnectionManeuverAssist_tags_109, /* Same as above */ - sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) - /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_ConnectionManeuverAssist_109, - 2, /* Elements count */ - &asn_SPC_Reg_ConnectionManeuverAssist_specs_109 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_114[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState__regExtValue, choice.IntersectionState_addGrpC), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionState_addGrpC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "IntersectionState-addGrpC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_114[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* IntersectionState-addGrpC */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_114 = { - sizeof(struct Reg_IntersectionState__regExtValue), - offsetof(struct Reg_IntersectionState__regExtValue, _asn_ctx), - offsetof(struct Reg_IntersectionState__regExtValue, present), - sizeof(((struct Reg_IntersectionState__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_114, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_114 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_114, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_114 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_113, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_113, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_112 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_114, - select_Reg_IntersectionState_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_114, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_114, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_112 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_IntersectionState_tags_112[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionState_tag2el_112[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112 = { - sizeof(struct Reg_IntersectionState), - offsetof(struct Reg_IntersectionState, _asn_ctx), - asn_MAP_Reg_IntersectionState_tag2el_112, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState = { - "Reg-IntersectionState", - "Reg-IntersectionState", - &asn_OP_SEQUENCE, - asn_DEF_Reg_IntersectionState_tags_112, - sizeof(asn_DEF_Reg_IntersectionState_tags_112) - /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ - asn_DEF_Reg_IntersectionState_tags_112, /* Same as above */ - sizeof(asn_DEF_Reg_IntersectionState_tags_112) - /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_IntersectionState_112, - 2, /* Elements count */ - &asn_SPC_Reg_IntersectionState_specs_112 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regExtValue_117[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent__regExtValue, choice.MovementEvent_addGrpB), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementEvent_addGrpB, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "MovementEvent-addGrpB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_117[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MovementEvent-addGrpB */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_117 = { - sizeof(struct Reg_MovementEvent__regExtValue), - offsetof(struct Reg_MovementEvent__regExtValue, _asn_ctx), - offsetof(struct Reg_MovementEvent__regExtValue, present), - sizeof(((struct Reg_MovementEvent__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_117, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_117 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_117, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_117 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_116, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_116, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_115 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_117, - select_Reg_MovementEvent_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_117, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_117, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_115 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_MovementEvent_tags_115[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementEvent_tag2el_115[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115 = { - sizeof(struct Reg_MovementEvent), - offsetof(struct Reg_MovementEvent, _asn_ctx), - asn_MAP_Reg_MovementEvent_tag2el_115, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent = { - "Reg-MovementEvent", - "Reg-MovementEvent", - &asn_OP_SEQUENCE, - asn_DEF_Reg_MovementEvent_tags_115, - sizeof(asn_DEF_Reg_MovementEvent_tags_115) - /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ - asn_DEF_Reg_MovementEvent_tags_115, /* Same as above */ - sizeof(asn_DEF_Reg_MovementEvent_tags_115) - /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_MovementEvent_115, - 2, /* Elements count */ - &asn_SPC_Reg_MovementEvent_specs_115 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_120 = { - sizeof(struct Reg_MovementState__regExtValue), - offsetof(struct Reg_MovementState__regExtValue, _asn_ctx), - offsetof(struct Reg_MovementState__regExtValue, present), - sizeof(((struct Reg_MovementState__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_120 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_120 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_MovementState_118[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_119, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_119, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_118 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_120, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_120, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_120, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_118 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_MovementState_tags_118[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementState_tag2el_118[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118 = { - sizeof(struct Reg_MovementState), - offsetof(struct Reg_MovementState, _asn_ctx), - asn_MAP_Reg_MovementState_tag2el_118, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MovementState = { - "Reg-MovementState", - "Reg-MovementState", - &asn_OP_SEQUENCE, - asn_DEF_Reg_MovementState_tags_118, - sizeof(asn_DEF_Reg_MovementState_tags_118) - /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ - asn_DEF_Reg_MovementState_tags_118, /* Same as above */ - sizeof(asn_DEF_Reg_MovementState_tags_118) - /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_MovementState_118, - 2, /* Elements count */ - &asn_SPC_Reg_MovementState_specs_118 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_123 = { - sizeof(struct Reg_TestMessage00__regExtValue), - offsetof(struct Reg_TestMessage00__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage00__regExtValue, present), - sizeof(((struct Reg_TestMessage00__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_123 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_123 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_122, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_122, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_121 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_123, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_123, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_123, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_121 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage00_tags_121[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage00_tag2el_121[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121 = { - sizeof(struct Reg_TestMessage00), - offsetof(struct Reg_TestMessage00, _asn_ctx), - asn_MAP_Reg_TestMessage00_tag2el_121, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00 = { - "Reg-TestMessage00", - "Reg-TestMessage00", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage00_tags_121, - sizeof(asn_DEF_Reg_TestMessage00_tags_121) - /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ - asn_DEF_Reg_TestMessage00_tags_121, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage00_tags_121) - /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage00_121, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage00_specs_121 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_126 = { - sizeof(struct Reg_TestMessage01__regExtValue), - offsetof(struct Reg_TestMessage01__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage01__regExtValue, present), - sizeof(((struct Reg_TestMessage01__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_126 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_126 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_125, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_125, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_124 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_126, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_126, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_126, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_124 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage01_tags_124[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage01_tag2el_124[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124 = { - sizeof(struct Reg_TestMessage01), - offsetof(struct Reg_TestMessage01, _asn_ctx), - asn_MAP_Reg_TestMessage01_tag2el_124, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01 = { - "Reg-TestMessage01", - "Reg-TestMessage01", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage01_tags_124, - sizeof(asn_DEF_Reg_TestMessage01_tags_124) - /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ - asn_DEF_Reg_TestMessage01_tags_124, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage01_tags_124) - /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage01_124, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage01_specs_124 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_129 = { - sizeof(struct Reg_TestMessage02__regExtValue), - offsetof(struct Reg_TestMessage02__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage02__regExtValue, present), - sizeof(((struct Reg_TestMessage02__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_129 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_129 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_128, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_128, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_127 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_129, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_129, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_129, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_127 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage02_tags_127[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage02_tag2el_127[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127 = { - sizeof(struct Reg_TestMessage02), - offsetof(struct Reg_TestMessage02, _asn_ctx), - asn_MAP_Reg_TestMessage02_tag2el_127, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02 = { - "Reg-TestMessage02", - "Reg-TestMessage02", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage02_tags_127, - sizeof(asn_DEF_Reg_TestMessage02_tags_127) - /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ - asn_DEF_Reg_TestMessage02_tags_127, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage02_tags_127) - /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage02_127, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage02_specs_127 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_132 = { - sizeof(struct Reg_TestMessage03__regExtValue), - offsetof(struct Reg_TestMessage03__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage03__regExtValue, present), - sizeof(((struct Reg_TestMessage03__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_132 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_132 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_131, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_131, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_130 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_132, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_132, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_132, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_130 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage03_tags_130[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage03_tag2el_130[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130 = { - sizeof(struct Reg_TestMessage03), - offsetof(struct Reg_TestMessage03, _asn_ctx), - asn_MAP_Reg_TestMessage03_tag2el_130, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03 = { - "Reg-TestMessage03", - "Reg-TestMessage03", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage03_tags_130, - sizeof(asn_DEF_Reg_TestMessage03_tags_130) - /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ - asn_DEF_Reg_TestMessage03_tags_130, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage03_tags_130) - /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage03_130, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage03_specs_130 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_135 = { - sizeof(struct Reg_TestMessage04__regExtValue), - offsetof(struct Reg_TestMessage04__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage04__regExtValue, present), - sizeof(((struct Reg_TestMessage04__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_135 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_135 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_134, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_134, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_133 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_135, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_135, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_135, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_133 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage04_tags_133[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage04_tag2el_133[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133 = { - sizeof(struct Reg_TestMessage04), - offsetof(struct Reg_TestMessage04, _asn_ctx), - asn_MAP_Reg_TestMessage04_tag2el_133, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04 = { - "Reg-TestMessage04", - "Reg-TestMessage04", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage04_tags_133, - sizeof(asn_DEF_Reg_TestMessage04_tags_133) - /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ - asn_DEF_Reg_TestMessage04_tags_133, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage04_tags_133) - /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage04_133, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage04_specs_133 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_138 = { - sizeof(struct Reg_TestMessage05__regExtValue), - offsetof(struct Reg_TestMessage05__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage05__regExtValue, present), - sizeof(((struct Reg_TestMessage05__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_138 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_138 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_137, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_137, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_136 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_138, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_138, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_138, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_136 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage05_tags_136[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage05_tag2el_136[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136 = { - sizeof(struct Reg_TestMessage05), - offsetof(struct Reg_TestMessage05, _asn_ctx), - asn_MAP_Reg_TestMessage05_tag2el_136, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05 = { - "Reg-TestMessage05", - "Reg-TestMessage05", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage05_tags_136, - sizeof(asn_DEF_Reg_TestMessage05_tags_136) - /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ - asn_DEF_Reg_TestMessage05_tags_136, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage05_tags_136) - /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage05_136, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage05_specs_136 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_141 = { - sizeof(struct Reg_TestMessage06__regExtValue), - offsetof(struct Reg_TestMessage06__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage06__regExtValue, present), - sizeof(((struct Reg_TestMessage06__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_141 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_141 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_140, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_140, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_139 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_141, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_141, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_141, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_139 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage06_tags_139[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage06_tag2el_139[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139 = { - sizeof(struct Reg_TestMessage06), - offsetof(struct Reg_TestMessage06, _asn_ctx), - asn_MAP_Reg_TestMessage06_tag2el_139, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06 = { - "Reg-TestMessage06", - "Reg-TestMessage06", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage06_tags_139, - sizeof(asn_DEF_Reg_TestMessage06_tags_139) - /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ - asn_DEF_Reg_TestMessage06_tags_139, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage06_tags_139) - /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage06_139, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage06_specs_139 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_144 = { - sizeof(struct Reg_TestMessage07__regExtValue), - offsetof(struct Reg_TestMessage07__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage07__regExtValue, present), - sizeof(((struct Reg_TestMessage07__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_144 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_144 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_143, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_143, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_142 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_144, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_144, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_144, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_142 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage07_tags_142[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage07_tag2el_142[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142 = { - sizeof(struct Reg_TestMessage07), - offsetof(struct Reg_TestMessage07, _asn_ctx), - asn_MAP_Reg_TestMessage07_tag2el_142, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07 = { - "Reg-TestMessage07", - "Reg-TestMessage07", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage07_tags_142, - sizeof(asn_DEF_Reg_TestMessage07_tags_142) - /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ - asn_DEF_Reg_TestMessage07_tags_142, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage07_tags_142) - /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage07_142, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage07_specs_142 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_147 = { - sizeof(struct Reg_TestMessage08__regExtValue), - offsetof(struct Reg_TestMessage08__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage08__regExtValue, present), - sizeof(((struct Reg_TestMessage08__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_147 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_147 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_146, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_146, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_145 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_147, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_147, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_147, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_145 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage08_tags_145[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage08_tag2el_145[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145 = { - sizeof(struct Reg_TestMessage08), - offsetof(struct Reg_TestMessage08, _asn_ctx), - asn_MAP_Reg_TestMessage08_tag2el_145, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08 = { - "Reg-TestMessage08", - "Reg-TestMessage08", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage08_tags_145, - sizeof(asn_DEF_Reg_TestMessage08_tags_145) - /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ - asn_DEF_Reg_TestMessage08_tags_145, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage08_tags_145) - /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage08_145, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage08_specs_145 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_150 = { - sizeof(struct Reg_TestMessage09__regExtValue), - offsetof(struct Reg_TestMessage09__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage09__regExtValue, present), - sizeof(((struct Reg_TestMessage09__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_150 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_150 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_149, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_149, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_148 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_150, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_150, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_150, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_148 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage09_tags_148[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage09_tag2el_148[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148 = { - sizeof(struct Reg_TestMessage09), - offsetof(struct Reg_TestMessage09, _asn_ctx), - asn_MAP_Reg_TestMessage09_tag2el_148, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09 = { - "Reg-TestMessage09", - "Reg-TestMessage09", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage09_tags_148, - sizeof(asn_DEF_Reg_TestMessage09_tags_148) - /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ - asn_DEF_Reg_TestMessage09_tags_148, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage09_tags_148) - /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage09_148, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage09_specs_148 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_153 = { - sizeof(struct Reg_TestMessage10__regExtValue), - offsetof(struct Reg_TestMessage10__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage10__regExtValue, present), - sizeof(((struct Reg_TestMessage10__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_153 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_153 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_152, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_152, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_151 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_153, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_153, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_153, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_151 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage10_tags_151[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage10_tag2el_151[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151 = { - sizeof(struct Reg_TestMessage10), - offsetof(struct Reg_TestMessage10, _asn_ctx), - asn_MAP_Reg_TestMessage10_tag2el_151, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10 = { - "Reg-TestMessage10", - "Reg-TestMessage10", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage10_tags_151, - sizeof(asn_DEF_Reg_TestMessage10_tags_151) - /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ - asn_DEF_Reg_TestMessage10_tags_151, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage10_tags_151) - /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage10_151, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage10_specs_151 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_156 = { - sizeof(struct Reg_TestMessage11__regExtValue), - offsetof(struct Reg_TestMessage11__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage11__regExtValue, present), - sizeof(((struct Reg_TestMessage11__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_156 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_156 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_155, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_155, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_154 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_156, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_156, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_156, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_154 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage11_tags_154[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage11_tag2el_154[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154 = { - sizeof(struct Reg_TestMessage11), - offsetof(struct Reg_TestMessage11, _asn_ctx), - asn_MAP_Reg_TestMessage11_tag2el_154, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11 = { - "Reg-TestMessage11", - "Reg-TestMessage11", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage11_tags_154, - sizeof(asn_DEF_Reg_TestMessage11_tags_154) - /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ - asn_DEF_Reg_TestMessage11_tags_154, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage11_tags_154) - /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage11_154, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage11_specs_154 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_159 = { - sizeof(struct Reg_TestMessage12__regExtValue), - offsetof(struct Reg_TestMessage12__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage12__regExtValue, present), - sizeof(((struct Reg_TestMessage12__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_159 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_159 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_158, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_158, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_157 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_159, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_159, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_159, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_157 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage12_tags_157[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage12_tag2el_157[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157 = { - sizeof(struct Reg_TestMessage12), - offsetof(struct Reg_TestMessage12, _asn_ctx), - asn_MAP_Reg_TestMessage12_tag2el_157, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12 = { - "Reg-TestMessage12", - "Reg-TestMessage12", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage12_tags_157, - sizeof(asn_DEF_Reg_TestMessage12_tags_157) - /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ - asn_DEF_Reg_TestMessage12_tags_157, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage12_tags_157) - /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage12_157, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage12_specs_157 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_162 = { - sizeof(struct Reg_TestMessage13__regExtValue), - offsetof(struct Reg_TestMessage13__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage13__regExtValue, present), - sizeof(((struct Reg_TestMessage13__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_162 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_162 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_161, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_161, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_160 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_162, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_162, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_162, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_160 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage13_tags_160[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage13_tag2el_160[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160 = { - sizeof(struct Reg_TestMessage13), - offsetof(struct Reg_TestMessage13, _asn_ctx), - asn_MAP_Reg_TestMessage13_tag2el_160, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13 = { - "Reg-TestMessage13", - "Reg-TestMessage13", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage13_tags_160, - sizeof(asn_DEF_Reg_TestMessage13_tags_160) - /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ - asn_DEF_Reg_TestMessage13_tags_160, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage13_tags_160) - /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage13_160, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage13_specs_160 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_165 = { - sizeof(struct Reg_TestMessage14__regExtValue), - offsetof(struct Reg_TestMessage14__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage14__regExtValue, present), - sizeof(((struct Reg_TestMessage14__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_165 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_165 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_164, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_164, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_163 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_165, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_165, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_165, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_163 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage14_tags_163[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage14_tag2el_163[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163 = { - sizeof(struct Reg_TestMessage14), - offsetof(struct Reg_TestMessage14, _asn_ctx), - asn_MAP_Reg_TestMessage14_tag2el_163, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14 = { - "Reg-TestMessage14", - "Reg-TestMessage14", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage14_tags_163, - sizeof(asn_DEF_Reg_TestMessage14_tags_163) - /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ - asn_DEF_Reg_TestMessage14_tags_163, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage14_tags_163) - /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage14_163, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage14_specs_163 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_168 = { - sizeof(struct Reg_TestMessage15__regExtValue), - offsetof(struct Reg_TestMessage15__regExtValue, _asn_ctx), - offsetof(struct Reg_TestMessage15__regExtValue, present), - sizeof(((struct Reg_TestMessage15__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_168 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_168 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_167, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_167, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_166 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_168, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_168, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_168, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_166 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TestMessage15_tags_166[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage15_tag2el_166[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166 = { - sizeof(struct Reg_TestMessage15), - offsetof(struct Reg_TestMessage15, _asn_ctx), - asn_MAP_Reg_TestMessage15_tag2el_166, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15 = { - "Reg-TestMessage15", - "Reg-TestMessage15", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TestMessage15_tags_166, - sizeof(asn_DEF_Reg_TestMessage15_tags_166) - /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ - asn_DEF_Reg_TestMessage15_tags_166, /* Same as above */ - sizeof(asn_DEF_Reg_TestMessage15_tags_166) - /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TestMessage15_166, - 2, /* Elements count */ - &asn_SPC_Reg_TestMessage15_specs_166 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_171 = { - sizeof(struct Reg_TravelerInformation__regExtValue), - offsetof(struct Reg_TravelerInformation__regExtValue, _asn_ctx), - offsetof(struct Reg_TravelerInformation__regExtValue, present), - sizeof(((struct Reg_TravelerInformation__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_171 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_171 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_170, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_170, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_169 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_171, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_171, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_171, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_169 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_TravelerInformation_tags_169[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_TravelerInformation_tag2el_169[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169 = { - sizeof(struct Reg_TravelerInformation), - offsetof(struct Reg_TravelerInformation, _asn_ctx), - asn_MAP_Reg_TravelerInformation_tag2el_169, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation = { - "Reg-TravelerInformation", - "Reg-TravelerInformation", - &asn_OP_SEQUENCE, - asn_DEF_Reg_TravelerInformation_tags_169, - sizeof(asn_DEF_Reg_TravelerInformation_tags_169) - /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ - asn_DEF_Reg_TravelerInformation_tags_169, /* Same as above */ - sizeof(asn_DEF_Reg_TravelerInformation_tags_169) - /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_TravelerInformation_169, - 2, /* Elements count */ - &asn_SPC_Reg_TravelerInformation_specs_169 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_174 = { - sizeof(struct Reg_GeographicalPath__regExtValue), - offsetof(struct Reg_GeographicalPath__regExtValue, _asn_ctx), - offsetof(struct Reg_GeographicalPath__regExtValue, present), - sizeof(((struct Reg_GeographicalPath__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_174 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_174 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_173, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_173, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_172 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_174, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_174, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_174, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_172 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_GeographicalPath_tags_172[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_GeographicalPath_tag2el_172[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172 = { - sizeof(struct Reg_GeographicalPath), - offsetof(struct Reg_GeographicalPath, _asn_ctx), - asn_MAP_Reg_GeographicalPath_tag2el_172, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath = { - "Reg-GeographicalPath", - "Reg-GeographicalPath", - &asn_OP_SEQUENCE, - asn_DEF_Reg_GeographicalPath_tags_172, - sizeof(asn_DEF_Reg_GeographicalPath_tags_172) - /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ - asn_DEF_Reg_GeographicalPath_tags_172, /* Same as above */ - sizeof(asn_DEF_Reg_GeographicalPath_tags_172) - /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_GeographicalPath_172, - 2, /* Elements count */ - &asn_SPC_Reg_GeographicalPath_specs_172 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_177 = { - sizeof(struct Reg_GeometricProjection__regExtValue), - offsetof(struct Reg_GeometricProjection__regExtValue, _asn_ctx), - offsetof(struct Reg_GeometricProjection__regExtValue, present), - sizeof(((struct Reg_GeometricProjection__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_177 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_177 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_176, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_176, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_175 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_177, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_177, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_177, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_175 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_GeometricProjection_tags_175[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_GeometricProjection_tag2el_175[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175 = { - sizeof(struct Reg_GeometricProjection), - offsetof(struct Reg_GeometricProjection, _asn_ctx), - asn_MAP_Reg_GeometricProjection_tag2el_175, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection = { - "Reg-GeometricProjection", - "Reg-GeometricProjection", - &asn_OP_SEQUENCE, - asn_DEF_Reg_GeometricProjection_tags_175, - sizeof(asn_DEF_Reg_GeometricProjection_tags_175) - /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ - asn_DEF_Reg_GeometricProjection_tags_175, /* Same as above */ - sizeof(asn_DEF_Reg_GeometricProjection_tags_175) - /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_GeometricProjection_175, - 2, /* Elements count */ - &asn_SPC_Reg_GeometricProjection_specs_175 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_180 = { - sizeof(struct Reg_NodeAttributeSetLL__regExtValue), - offsetof(struct Reg_NodeAttributeSetLL__regExtValue, _asn_ctx), - offsetof(struct Reg_NodeAttributeSetLL__regExtValue, present), - sizeof(((struct Reg_NodeAttributeSetLL__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_180 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_180 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_179, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_179, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_178 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_180, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_180, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_180, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_178 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetLL_tags_178[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetLL_tag2el_178[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178 = { - sizeof(struct Reg_NodeAttributeSetLL), - offsetof(struct Reg_NodeAttributeSetLL, _asn_ctx), - asn_MAP_Reg_NodeAttributeSetLL_tag2el_178, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL = { - "Reg-NodeAttributeSetLL", - "Reg-NodeAttributeSetLL", - &asn_OP_SEQUENCE, - asn_DEF_Reg_NodeAttributeSetLL_tags_178, - sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) - /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ - asn_DEF_Reg_NodeAttributeSetLL_tags_178, /* Same as above */ - sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) - /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_NodeAttributeSetLL_178, - 2, /* Elements count */ - &asn_SPC_Reg_NodeAttributeSetLL_specs_178 /* Additional specs */ -}; - -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_183 = { - sizeof(struct Reg_NodeOffsetPointLL__regExtValue), - offsetof(struct Reg_NodeOffsetPointLL__regExtValue, _asn_ctx), - offsetof(struct Reg_NodeOffsetPointLL__regExtValue, present), - sizeof(((struct Reg_NodeOffsetPointLL__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_183 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - 0, 0, /* No members */ - &asn_SPC_regExtValue_specs_183 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regionId), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_182, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_182, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_181 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regExtValue), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_regExtValue_183, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_183, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_183, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_181 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointLL_tags_181[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointLL_tag2el_181[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181 = { - sizeof(struct Reg_NodeOffsetPointLL), - offsetof(struct Reg_NodeOffsetPointLL, _asn_ctx), - asn_MAP_Reg_NodeOffsetPointLL_tag2el_181, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL = { - "Reg-NodeOffsetPointLL", - "Reg-NodeOffsetPointLL", - &asn_OP_SEQUENCE, - asn_DEF_Reg_NodeOffsetPointLL_tags_181, - sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) - /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ - asn_DEF_Reg_NodeOffsetPointLL_tags_181, /* Same as above */ - sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) - /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_NodeOffsetPointLL_181, - 2, /* Elements count */ - &asn_SPC_Reg_NodeOffsetPointLL_specs_181 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c deleted file mode 100644 index 4cdb81795..000000000 --- a/src/tmx/Asn_J2735/src/2020/RegulatorySpeedLimit.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RegulatorySpeedLimit.h" - -asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { - sizeof(struct RegulatorySpeedLimit), - offsetof(struct RegulatorySpeedLimit, _asn_ctx), - asn_MAP_RegulatorySpeedLimit_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { - "RegulatorySpeedLimit", - "RegulatorySpeedLimit", - &asn_OP_SEQUENCE, - asn_DEF_RegulatorySpeedLimit_tags_1, - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RegulatorySpeedLimit_1, - 2, /* Elements count */ - &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestID.c b/src/tmx/Asn_J2735/src/2020/RequestID.c deleted file mode 100644 index 350e77b79..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestID.h" - -int -RequestID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RequestID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RequestID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestID = { - "RequestID", - "RequestID", - &asn_OP_NativeInteger, - asn_DEF_RequestID_tags_1, - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - asn_DEF_RequestID_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RequestID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RequestID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RequestID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c b/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c deleted file mode 100644 index ce9dcba82..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestImportanceLevel.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestImportanceLevel.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RequestImportanceLevel_value2enum_1[] = { - { 0, 29, "requestImportanceLevelUnKnown" }, - { 1, 23, "requestImportanceLevel1" }, - { 2, 23, "requestImportanceLevel2" }, - { 3, 23, "requestImportanceLevel3" }, - { 4, 23, "requestImportanceLevel4" }, - { 5, 23, "requestImportanceLevel5" }, - { 6, 23, "requestImportanceLevel6" }, - { 7, 23, "requestImportanceLevel7" }, - { 8, 23, "requestImportanceLevel8" }, - { 9, 23, "requestImportanceLevel9" }, - { 10, 24, "requestImportanceLevel10" }, - { 11, 24, "requestImportanceLevel11" }, - { 12, 24, "requestImportanceLevel12" }, - { 13, 24, "requestImportanceLevel13" }, - { 14, 24, "requestImportanceLevel14" }, - { 15, 25, "requestImportanceReserved" } -}; -static const unsigned int asn_MAP_RequestImportanceLevel_enum2value_1[] = { - 1, /* requestImportanceLevel1(1) */ - 10, /* requestImportanceLevel10(10) */ - 11, /* requestImportanceLevel11(11) */ - 12, /* requestImportanceLevel12(12) */ - 13, /* requestImportanceLevel13(13) */ - 14, /* requestImportanceLevel14(14) */ - 2, /* requestImportanceLevel2(2) */ - 3, /* requestImportanceLevel3(3) */ - 4, /* requestImportanceLevel4(4) */ - 5, /* requestImportanceLevel5(5) */ - 6, /* requestImportanceLevel6(6) */ - 7, /* requestImportanceLevel7(7) */ - 8, /* requestImportanceLevel8(8) */ - 9, /* requestImportanceLevel9(9) */ - 0, /* requestImportanceLevelUnKnown(0) */ - 15 /* requestImportanceReserved(15) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1 = { - asn_MAP_RequestImportanceLevel_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestImportanceLevel_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestImportanceLevel_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel = { - "RequestImportanceLevel", - "RequestImportanceLevel", - &asn_OP_NativeEnumerated, - asn_DEF_RequestImportanceLevel_tags_1, - sizeof(asn_DEF_RequestImportanceLevel_tags_1) - /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ - asn_DEF_RequestImportanceLevel_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestImportanceLevel_tags_1) - /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RequestImportanceLevel_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RequestImportanceLevel_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestImportanceLevel_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestSubRole.c b/src/tmx/Asn_J2735/src/2020/RequestSubRole.c deleted file mode 100644 index 306238b77..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestSubRole.c +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestSubRole.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RequestSubRole_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RequestSubRole_value2enum_1[] = { - { 0, 21, "requestSubRoleUnKnown" }, - { 1, 15, "requestSubRole1" }, - { 2, 15, "requestSubRole2" }, - { 3, 15, "requestSubRole3" }, - { 4, 15, "requestSubRole4" }, - { 5, 15, "requestSubRole5" }, - { 6, 15, "requestSubRole6" }, - { 7, 15, "requestSubRole7" }, - { 8, 15, "requestSubRole8" }, - { 9, 15, "requestSubRole9" }, - { 10, 16, "requestSubRole10" }, - { 11, 16, "requestSubRole11" }, - { 12, 16, "requestSubRole12" }, - { 13, 16, "requestSubRole13" }, - { 14, 16, "requestSubRole14" }, - { 15, 22, "requestSubRoleReserved" } -}; -static const unsigned int asn_MAP_RequestSubRole_enum2value_1[] = { - 1, /* requestSubRole1(1) */ - 10, /* requestSubRole10(10) */ - 11, /* requestSubRole11(11) */ - 12, /* requestSubRole12(12) */ - 13, /* requestSubRole13(13) */ - 14, /* requestSubRole14(14) */ - 2, /* requestSubRole2(2) */ - 3, /* requestSubRole3(3) */ - 4, /* requestSubRole4(4) */ - 5, /* requestSubRole5(5) */ - 6, /* requestSubRole6(6) */ - 7, /* requestSubRole7(7) */ - 8, /* requestSubRole8(8) */ - 9, /* requestSubRole9(9) */ - 15, /* requestSubRoleReserved(15) */ - 0 /* requestSubRoleUnKnown(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1 = { - asn_MAP_RequestSubRole_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestSubRole_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestSubRole_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestSubRole = { - "RequestSubRole", - "RequestSubRole", - &asn_OP_NativeEnumerated, - asn_DEF_RequestSubRole_tags_1, - sizeof(asn_DEF_RequestSubRole_tags_1) - /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ - asn_DEF_RequestSubRole_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestSubRole_tags_1) - /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RequestSubRole_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RequestSubRole_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestSubRole_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestedItem.c b/src/tmx/Asn_J2735/src/2020/RequestedItem.c deleted file mode 100644 index 6b0eb47f7..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestedItem.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestedItem.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RequestedItem_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 5, "itemA" }, - { 2, 5, "itemB" }, - { 3, 5, "itemC" }, - { 4, 5, "itemD" }, - { 5, 5, "itemE" }, - { 6, 5, "itemF" }, - { 7, 5, "itemG" }, - { 8, 5, "itemI" }, - { 9, 5, "itemJ" }, - { 10, 5, "itemK" }, - { 11, 5, "itemL" }, - { 12, 5, "itemM" }, - { 13, 5, "itemN" }, - { 14, 5, "itemO" }, - { 15, 5, "itemP" }, - { 16, 5, "itemQ" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RequestedItem_enum2value_1[] = { - 1, /* itemA(1) */ - 2, /* itemB(2) */ - 3, /* itemC(3) */ - 4, /* itemD(4) */ - 5, /* itemE(5) */ - 6, /* itemF(6) */ - 7, /* itemG(7) */ - 8, /* itemI(8) */ - 9, /* itemJ(9) */ - 10, /* itemK(10) */ - 11, /* itemL(11) */ - 12, /* itemM(12) */ - 13, /* itemN(13) */ - 14, /* itemO(14) */ - 15, /* itemP(15) */ - 16, /* itemQ(16) */ - 0 /* reserved(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { - asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ - 17, /* Number of elements in the maps */ - 18, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestedItem = { - "RequestedItem", - "RequestedItem", - &asn_OP_NativeEnumerated, - asn_DEF_RequestedItem_tags_1, - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - asn_DEF_RequestedItem_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RequestedItem_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RequestedItem_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestedItem_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestedItemList.c b/src/tmx/Asn_J2735/src/2020/RequestedItemList.c deleted file mode 100644 index 1e02afc73..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestedItemList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "CommonSafetyRequest" - * found in "J2735-CommonSafetyRequest.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestedItemList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RequestedItemList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RequestedItemList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_RequestedItem, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RequestedItemList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1 = { - sizeof(struct RequestedItemList), - offsetof(struct RequestedItemList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestedItemList = { - "RequestedItemList", - "RequestedItemList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RequestedItemList_tags_1, - sizeof(asn_DEF_RequestedItemList_tags_1) - /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ - asn_DEF_RequestedItemList_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestedItemList_tags_1) - /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RequestedItemList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RequestedItemList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RequestedItemList_1, - 1, /* Single element */ - &asn_SPC_RequestedItemList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestorDescription.c b/src/tmx/Asn_J2735/src/2020/RequestorDescription.c deleted file mode 100644 index 9606db3e4..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestorDescription.c +++ /dev/null @@ -1,318 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestorDescription.h" - -#include "RequestorType.h" -#include "RequestorPositionVector.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_RequestorDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct RequestorDescription__regional), - offsetof(struct RequestorDescription__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RequestorDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorDescription, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 8, offsetof(struct RequestorDescription, type), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "type" - }, - { ATF_POINTER, 7, offsetof(struct RequestorDescription, position), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 6, offsetof(struct RequestorDescription, name), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 5, offsetof(struct RequestorDescription, routeName), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "routeName" - }, - { ATF_POINTER, 4, offsetof(struct RequestorDescription, transitStatus), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitVehicleStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "transitStatus" - }, - { ATF_POINTER, 3, offsetof(struct RequestorDescription, transitOccupancy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitVehicleOccupancy, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "transitOccupancy" - }, - { ATF_POINTER, 2, offsetof(struct RequestorDescription, transitSchedule), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DeltaTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "transitSchedule" - }, - { ATF_POINTER, 1, offsetof(struct RequestorDescription, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RequestorDescription_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_RequestorDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* routeName */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transitOccupancy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transitSchedule */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1 = { - sizeof(struct RequestorDescription), - offsetof(struct RequestorDescription, _asn_ctx), - asn_MAP_RequestorDescription_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_RequestorDescription_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorDescription = { - "RequestorDescription", - "RequestorDescription", - &asn_OP_SEQUENCE, - asn_DEF_RequestorDescription_tags_1, - sizeof(asn_DEF_RequestorDescription_tags_1) - /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ - asn_DEF_RequestorDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorDescription_tags_1) - /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RequestorDescription_1, - 9, /* Elements count */ - &asn_SPC_RequestorDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c b/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c deleted file mode 100644 index 4e31c1b59..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestorPositionVector.c +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestorPositionVector.h" - -#include "TransmissionAndSpeed.h" -asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorPositionVector, position), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 2, offsetof(struct RequestorPositionVector, heading), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Angle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 1, offsetof(struct RequestorPositionVector, speed), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const int asn_MAP_RequestorPositionVector_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_RequestorPositionVector_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorPositionVector_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1 = { - sizeof(struct RequestorPositionVector), - offsetof(struct RequestorPositionVector, _asn_ctx), - asn_MAP_RequestorPositionVector_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RequestorPositionVector_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector = { - "RequestorPositionVector", - "RequestorPositionVector", - &asn_OP_SEQUENCE, - asn_DEF_RequestorPositionVector_tags_1, - sizeof(asn_DEF_RequestorPositionVector_tags_1) - /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ - asn_DEF_RequestorPositionVector_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorPositionVector_tags_1) - /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RequestorPositionVector_1, - 3, /* Elements count */ - &asn_SPC_RequestorPositionVector_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RequestorType.c b/src/tmx/Asn_J2735/src/2020/RequestorType.c deleted file mode 100644 index 965a6dc39..000000000 --- a/src/tmx/Asn_J2735/src/2020/RequestorType.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RequestorType.h" - -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_RequestorType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorType, role), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 5, offsetof(struct RequestorType, subrole), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestSubRole, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "subrole" - }, - { ATF_POINTER, 4, offsetof(struct RequestorType, request), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestImportanceLevel, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "request" - }, - { ATF_POINTER, 3, offsetof(struct RequestorType, iso3883), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Iso3833VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "iso3883" - }, - { ATF_POINTER, 2, offsetof(struct RequestorType, hpmsType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hpmsType" - }, - { ATF_POINTER, 1, offsetof(struct RequestorType, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_RequestorType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RequestorType_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_RequestorType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subrole */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iso3883 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* hpmsType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1 = { - sizeof(struct RequestorType), - offsetof(struct RequestorType, _asn_ctx), - asn_MAP_RequestorType_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_RequestorType_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorType = { - "RequestorType", - "RequestorType", - &asn_OP_SEQUENCE, - asn_DEF_RequestorType_tags_1, - sizeof(asn_DEF_RequestorType_tags_1) - /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ - asn_DEF_RequestorType_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorType_tags_1) - /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RequestorType_1, - 6, /* Elements count */ - &asn_SPC_RequestorType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c deleted file mode 100644 index 73658b471..000000000 --- a/src/tmx/Asn_J2735/src/2020/ResponderGroupAffected.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ResponderGroupAffected.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { - { 9729, 23, "emergency-vehicle-units" }, - { 9730, 29, "federal-law-enforcement-units" }, - { 9731, 18, "state-police-units" }, - { 9732, 19, "county-police-units" }, - { 9733, 18, "local-police-units" }, - { 9734, 15, "ambulance-units" }, - { 9735, 12, "rescue-units" }, - { 9736, 10, "fire-units" }, - { 9737, 12, "hAZMAT-units" }, - { 9738, 14, "light-tow-unit" }, - { 9739, 14, "heavy-tow-unit" }, - { 9740, 23, "freeway-service-patrols" }, - { 9741, 29, "transportation-response-units" }, - { 9742, 33, "private-contractor-response-units" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { - 5, /* ambulance-units(9734) */ - 3, /* county-police-units(9732) */ - 0, /* emergency-vehicle-units(9729) */ - 1, /* federal-law-enforcement-units(9730) */ - 7, /* fire-units(9736) */ - 11, /* freeway-service-patrols(9740) */ - 8, /* hAZMAT-units(9737) */ - 10, /* heavy-tow-unit(9739) */ - 9, /* light-tow-unit(9738) */ - 4, /* local-police-units(9733) */ - 13, /* private-contractor-response-units(9742) */ - 6, /* rescue-units(9735) */ - 2, /* state-police-units(9731) */ - 12 /* transportation-response-units(9741) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { - asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { - "ResponderGroupAffected", - "ResponderGroupAffected", - &asn_OP_NativeEnumerated, - asn_DEF_ResponderGroupAffected_tags_1, - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ResponderGroupAffected_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ResponderGroupAffected_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ResponseType.c b/src/tmx/Asn_J2735/src/2020/ResponseType.c deleted file mode 100644 index 4c8a4c8ff..000000000 --- a/src/tmx/Asn_J2735/src/2020/ResponseType.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ResponseType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ResponseType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ResponseType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { - { 0, 21, "notInUseOrNotEquipped" }, - { 1, 9, "emergency" }, - { 2, 12, "nonEmergency" }, - { 3, 7, "pursuit" }, - { 4, 10, "stationary" }, - { 5, 10, "slowMoving" }, - { 6, 17, "stopAndGoMovement" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_ResponseType_enum2value_1[] = { - 1, /* emergency(1) */ - 2, /* nonEmergency(2) */ - 0, /* notInUseOrNotEquipped(0) */ - 3, /* pursuit(3) */ - 5, /* slowMoving(5) */ - 4, /* stationary(4) */ - 6 /* stopAndGoMovement(6) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { - asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponseType = { - "ResponseType", - "ResponseType", - &asn_OP_NativeEnumerated, - asn_DEF_ResponseType_tags_1, - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - asn_DEF_ResponseType_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ResponseType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ResponseType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponseType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c deleted file mode 100644 index 449d63a4e..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionAppliesTo.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionAppliesTo.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 15, "equippedTransit" }, - { 2, 13, "equippedTaxis" }, - { 3, 13, "equippedOther" }, - { 4, 17, "emissionCompliant" }, - { 5, 15, "equippedBicycle" }, - { 6, 15, "weightCompliant" }, - { 7, 15, "heightCompliant" }, - { 8, 11, "pedestrians" }, - { 9, 17, "slowMovingPersons" }, - { 10, 15, "wheelchairUsers" }, - { 11, 18, "visualDisabilities" }, - { 12, 17, "audioDisabilities" }, - { 13, 24, "otherUnknownDisabilities" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { - 12, /* audioDisabilities(12) */ - 4, /* emissionCompliant(4) */ - 5, /* equippedBicycle(5) */ - 3, /* equippedOther(3) */ - 2, /* equippedTaxis(2) */ - 1, /* equippedTransit(1) */ - 7, /* heightCompliant(7) */ - 0, /* none(0) */ - 13, /* otherUnknownDisabilities(13) */ - 8, /* pedestrians(8) */ - 9, /* slowMovingPersons(9) */ - 11, /* visualDisabilities(11) */ - 6, /* weightCompliant(6) */ - 10 /* wheelchairUsers(10) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { - asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { - "RestrictionAppliesTo", - "RestrictionAppliesTo", - &asn_OP_NativeEnumerated, - asn_DEF_RestrictionAppliesTo_tags_1, - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RestrictionAppliesTo_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RestrictionAppliesTo_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c deleted file mode 100644 index 0f2af3a14..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionClassAssignment.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionClassAssignment.h" - -asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionUserTypeList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "users" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { - sizeof(struct RestrictionClassAssignment), - offsetof(struct RestrictionClassAssignment, _asn_ctx), - asn_MAP_RestrictionClassAssignment_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { - "RestrictionClassAssignment", - "RestrictionClassAssignment", - &asn_OP_SEQUENCE, - asn_DEF_RestrictionClassAssignment_tags_1, - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RestrictionClassAssignment_1, - 2, /* Elements count */ - &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c deleted file mode 100644 index 668210759..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionClassID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionClassID.h" - -int -RestrictionClassID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RestrictionClassID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { - "RestrictionClassID", - "RestrictionClassID", - &asn_OP_NativeInteger, - asn_DEF_RestrictionClassID_tags_1, - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassID_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RestrictionClassID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RestrictionClassID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RestrictionClassID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c b/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c deleted file mode 100644 index e6da234fd..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionClassList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionClassList.h" - -#include "RestrictionClassAssignment.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RestrictionClassList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..254)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RestrictionClassAssignment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { - sizeof(struct RestrictionClassList), - offsetof(struct RestrictionClassList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { - "RestrictionClassList", - "RestrictionClassList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RestrictionClassList_tags_1, - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RestrictionClassList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RestrictionClassList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RestrictionClassList_1, - 1, /* Single element */ - &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c deleted file mode 100644 index 55fd20ebe..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionUserType-addGrpC.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionUserType-addGrpC.h" - -asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct RestrictionUserType_addGrpC, emission), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmissionType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "emission" - }, -}; -static const int asn_MAP_RestrictionUserType_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RestrictionUserType_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1 = { - sizeof(struct RestrictionUserType_addGrpC), - offsetof(struct RestrictionUserType_addGrpC, _asn_ctx), - asn_MAP_RestrictionUserType_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_RestrictionUserType_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC = { - "RestrictionUserType-addGrpC", - "RestrictionUserType-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_RestrictionUserType_addGrpC_tags_1, - sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) - /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_RestrictionUserType_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) - /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RestrictionUserType_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_RestrictionUserType_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c deleted file mode 100644 index 853b8d5a7..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionUserType.c +++ /dev/null @@ -1,197 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionUserType.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RestrictionUserType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_RestrictionUserType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_3 = { - sizeof(struct RestrictionUserType__regional), - offsetof(struct RestrictionUserType__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_3 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_3, - sizeof(asn_DEF_regional_tags_3) - /sizeof(asn_DEF_regional_tags_3[0]) - 1, /* 1 */ - asn_DEF_regional_tags_3, /* Same as above */ - sizeof(asn_DEF_regional_tags_3) - /sizeof(asn_DEF_regional_tags_3[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_3, - 1, /* Single element */ - &asn_SPC_regional_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionAppliesTo, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_regional_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { - sizeof(struct RestrictionUserType), - offsetof(struct RestrictionUserType, _asn_ctx), - offsetof(struct RestrictionUserType, present), - sizeof(((struct RestrictionUserType *)0)->present), - asn_MAP_RestrictionUserType_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { - "RestrictionUserType", - "RestrictionUserType", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RestrictionUserType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RestrictionUserType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_RestrictionUserType_1, - 2, /* Elements count */ - &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c deleted file mode 100644 index 6c288b6d2..000000000 --- a/src/tmx/Asn_J2735/src/2020/RestrictionUserTypeList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RestrictionUserTypeList.h" - -#include "RestrictionUserType.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_RestrictionUserType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { - sizeof(struct RestrictionUserTypeList), - offsetof(struct RestrictionUserTypeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { - "RestrictionUserTypeList", - "RestrictionUserTypeList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RestrictionUserTypeList_tags_1, - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RestrictionUserTypeList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RestrictionUserTypeList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RestrictionUserTypeList_1, - 1, /* Single element */ - &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c deleted file mode 100644 index 31f194243..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadLaneSetList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadLaneSetList.h" - -#include "GenericLane.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { - sizeof(struct RoadLaneSetList), - offsetof(struct RoadLaneSetList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { - "RoadLaneSetList", - "RoadLaneSetList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RoadLaneSetList_tags_1, - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RoadLaneSetList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RoadLaneSetList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RoadLaneSetList_1, - 1, /* Single element */ - &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c deleted file mode 100644 index cff16e7cb..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadRegulatorID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadRegulatorID.h" - -int -RoadRegulatorID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { - "RoadRegulatorID", - "RoadRegulatorID", - &asn_OP_NativeInteger, - asn_DEF_RoadRegulatorID_tags_1, - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RoadRegulatorID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RoadRegulatorID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RoadRegulatorID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegment.c b/src/tmx/Asn_J2735/src/2020/RoadSegment.c deleted file mode 100644 index 98695f7ad..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSegment.c +++ /dev/null @@ -1,299 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSegment.h" - -#include "SpeedLimitList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_RoadSegment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct RoadSegment__regional), - offsetof(struct RoadSegment__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegment, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadLaneSetList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "roadLaneSet" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; -static const ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { - sizeof(struct RoadSegment), - offsetof(struct RoadSegment, _asn_ctx), - asn_MAP_RoadSegment_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_RoadSegment_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegment = { - "RoadSegment", - "RoadSegment", - &asn_OP_SEQUENCE, - asn_DEF_RoadSegment_tags_1, - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - asn_DEF_RoadSegment_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RoadSegment_1, - 8, /* Elements count */ - &asn_SPC_RoadSegment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c deleted file mode 100644 index c13931607..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSegmentID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSegmentID.h" - -int -RoadSegmentID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RoadSegmentID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { - "RoadSegmentID", - "RoadSegmentID", - &asn_OP_NativeInteger, - asn_DEF_RoadSegmentID_tags_1, - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RoadSegmentID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RoadSegmentID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RoadSegmentID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c deleted file mode 100644 index 3bff19c80..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSegmentList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSegmentList.h" - -#include "RoadSegment.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RoadSegmentList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RoadSegment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { - sizeof(struct RoadSegmentList), - offsetof(struct RoadSegmentList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { - "RoadSegmentList", - "RoadSegmentList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RoadSegmentList_tags_1, - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RoadSegmentList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RoadSegmentList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_RoadSegmentList_1, - 1, /* Single element */ - &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c deleted file mode 100644 index ea58c5a45..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSegmentReferenceID.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSegmentReferenceID.h" - -asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, -}; -static const int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { - sizeof(struct RoadSegmentReferenceID), - offsetof(struct RoadSegmentReferenceID, _asn_ctx), - asn_MAP_RoadSegmentReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { - "RoadSegmentReferenceID", - "RoadSegmentReferenceID", - &asn_OP_SEQUENCE, - asn_DEF_RoadSegmentReferenceID_tags_1, - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RoadSegmentReferenceID_1, - 2, /* Elements count */ - &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c b/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c deleted file mode 100644 index 038926cf4..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSideAlert.c +++ /dev/null @@ -1,438 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "RoadSideAlert" - * found in "J2735-RoadSideAlert.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSideAlert.h" - -#include "FullPositionVector.h" -#include "RegionalExtension.h" -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 8UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_description_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_description_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_description_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_description_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_description_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_description_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { - sizeof(struct RoadSideAlert__description), - offsetof(struct RoadSideAlert__description, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_5 = { - "description", - "description", - &asn_OP_SEQUENCE_OF, - asn_DEF_description_tags_5, - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ - asn_DEF_description_tags_5, /* Same as above */ - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_description_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_description_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_description_5, - 1, /* Single element */ - &asn_SPC_description_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_RoadSideAlert, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct RoadSideAlert__regional), - offsetof(struct RoadSideAlert__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 1, offsetof(struct RoadSideAlert, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "typeEvent" - }, - { ATF_POINTER, 7, offsetof(struct RoadSideAlert, description), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_description_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_description_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_description_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_description_constraint_1 - }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 6, offsetof(struct RoadSideAlert, priority), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Priority, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_POINTER, 5, offsetof(struct RoadSideAlert, heading), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 4, offsetof(struct RoadSideAlert, extent), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 3, offsetof(struct RoadSideAlert, position), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 2, offsetof(struct RoadSideAlert, furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "furtherInfoID" - }, - { ATF_POINTER, 1, offsetof(struct RoadSideAlert, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RoadSideAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { - sizeof(struct RoadSideAlert), - offsetof(struct RoadSideAlert, _asn_ctx), - asn_MAP_RoadSideAlert_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_RoadSideAlert_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { - "RoadSideAlert", - "RoadSideAlert", - &asn_OP_SEQUENCE, - asn_DEF_RoadSideAlert_tags_1, - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - asn_DEF_RoadSideAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RoadSideAlert_1, - 10, /* Elements count */ - &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadSignID.c b/src/tmx/Asn_J2735/src/2020/RoadSignID.c deleted file mode 100644 index 0f733aee1..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadSignID.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadSignID.h" - -asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "viewAngle" - }, - { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MUTCDCode, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "mutcdCode" - }, - { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crc" - }, -}; -static const int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { - sizeof(struct RoadSignID), - offsetof(struct RoadSignID, _asn_ctx), - asn_MAP_RoadSignID_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_RoadSignID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSignID = { - "RoadSignID", - "RoadSignID", - &asn_OP_SEQUENCE, - asn_DEF_RoadSignID_tags_1, - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - asn_DEF_RoadSignID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_RoadSignID_1, - 4, /* Elements count */ - &asn_SPC_RoadSignID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c deleted file mode 100644 index 369ce172b..000000000 --- a/src/tmx/Asn_J2735/src/2020/RoadwayCrownAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "RoadwayCrownAngle.h" - -int -RoadwayCrownAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { - "RoadwayCrownAngle", - "RoadwayCrownAngle", - &asn_OP_NativeInteger, - asn_DEF_RoadwayCrownAngle_tags_1, - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_RoadwayCrownAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_RoadwayCrownAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - RoadwayCrownAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SPAT.c b/src/tmx/Asn_J2735/src/2020/SPAT.c deleted file mode 100644 index 72f139b43..000000000 --- a/src/tmx/Asn_J2735/src/2020/SPAT.c +++ /dev/null @@ -1,226 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SPAT.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SPAT, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct SPAT__regional), - offsetof(struct SPAT__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SPAT_1[] = { - { ATF_POINTER, 2, offsetof(struct SPAT, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStateList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "intersections" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SPAT_oms_1[] = { 0, 1, 3 }; -static const ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { - sizeof(struct SPAT), - offsetof(struct SPAT, _asn_ctx), - asn_MAP_SPAT_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_SPAT_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SPAT = { - "SPAT", - "SPAT", - &asn_OP_SEQUENCE, - asn_DEF_SPAT_tags_1, - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - asn_DEF_SPAT_tags_1, /* Same as above */ - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SPAT_1, - 4, /* Elements count */ - &asn_SPC_SPAT_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c b/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c deleted file mode 100644 index efc5602f5..000000000 --- a/src/tmx/Asn_J2735/src/2020/SPAT_TimeMark.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SPAT_TimeMark.h" - -int -SPAT_TimeMark_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 36111L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..36111) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 36111 } /* (0..36111) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SPAT_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark = { - "TimeMark", - "TimeMark", - &asn_OP_NativeInteger, - asn_DEF_SPAT_TimeMark_tags_1, - sizeof(asn_DEF_SPAT_TimeMark_tags_1) - /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_SPAT_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_SPAT_TimeMark_tags_1) - /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SPAT_TimeMark_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SPAT_TimeMark_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SPAT_TimeMark_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SSPindex.c b/src/tmx/Asn_J2735/src/2020/SSPindex.c deleted file mode 100644 index afbab0186..000000000 --- a/src/tmx/Asn_J2735/src/2020/SSPindex.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SSPindex.h" - -int -SSPindex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 31L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SSPindex_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SSPindex_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SSPindex_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SSPindex = { - "SSPindex", - "SSPindex", - &asn_OP_NativeInteger, - asn_DEF_SSPindex_tags_1, - sizeof(asn_DEF_SSPindex_tags_1) - /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ - asn_DEF_SSPindex_tags_1, /* Same as above */ - sizeof(asn_DEF_SSPindex_tags_1) - /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SSPindex_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SSPindex_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SSPindex_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Sample.c b/src/tmx/Asn_J2735/src/2020/Sample.c deleted file mode 100644 index caf6a8e42..000000000 --- a/src/tmx/Asn_J2735/src/2020/Sample.c +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Sample.h" - -static int -memb_sampleStart_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sampleEnd_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_sampleStart_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_sampleEnd_constr_3 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_Sample_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_sampleStart_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_sampleStart_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_sampleStart_constraint_1 - }, - 0, 0, /* No default value */ - "sampleStart" - }, - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_sampleEnd_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_sampleEnd_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_sampleEnd_constraint_1 - }, - 0, 0, /* No default value */ - "sampleEnd" - }, -}; -static const ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { - sizeof(struct Sample), - offsetof(struct Sample, _asn_ctx), - asn_MAP_Sample_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Sample = { - "Sample", - "Sample", - &asn_OP_SEQUENCE, - asn_DEF_Sample_tags_1, - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - asn_DEF_Sample_tags_1, /* Same as above */ - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Sample_1, - 2, /* Elements count */ - &asn_SPC_Sample_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Scale-B12.c b/src/tmx/Asn_J2735/src/2020/Scale-B12.c deleted file mode 100644 index 2c4891109..000000000 --- a/src/tmx/Asn_J2735/src/2020/Scale-B12.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Scale-B12.h" - -int -Scale_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048L && value <= 2047L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Scale_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { - "Scale-B12", - "Scale-B12", - &asn_OP_NativeInteger, - asn_DEF_Scale_B12_tags_1, - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - asn_DEF_Scale_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Scale_B12_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Scale_B12_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Scale_B12_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Second.c b/src/tmx/Asn_J2735/src/2020/Second.c deleted file mode 100644 index 56f19387f..000000000 --- a/src/tmx/Asn_J2735/src/2020/Second.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Second.h" - -int -Second_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 60L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Second_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..60) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Second_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Second_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Second = { - "Second", - "Second", - &asn_OP_NativeInteger, - asn_DEF_Second_tags_1, - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - asn_DEF_Second_tags_1, /* Same as above */ - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Second_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Second_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Second_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SecondOfTime.c b/src/tmx/Asn_J2735/src/2020/SecondOfTime.c deleted file mode 100644 index 6f6738946..000000000 --- a/src/tmx/Asn_J2735/src/2020/SecondOfTime.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SecondOfTime.h" - -int -SecondOfTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 61L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SecondOfTime_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..61) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 61 } /* (0..61) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SecondOfTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SecondOfTime = { - "SecondOfTime", - "SecondOfTime", - &asn_OP_NativeInteger, - asn_DEF_SecondOfTime_tags_1, - sizeof(asn_DEF_SecondOfTime_tags_1) - /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ - asn_DEF_SecondOfTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SecondOfTime_tags_1) - /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SecondOfTime_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SecondOfTime_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SecondOfTime_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SecondsAngle.c b/src/tmx/Asn_J2735/src/2020/SecondsAngle.c deleted file mode 100644 index 0ecdd6e92..000000000 --- a/src/tmx/Asn_J2735/src/2020/SecondsAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SecondsAngle.h" - -int -SecondsAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 5999L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SecondsAngle_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..5999) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { - "SecondsAngle", - "SecondsAngle", - &asn_OP_NativeInteger, - asn_DEF_SecondsAngle_tags_1, - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - asn_DEF_SecondsAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SecondsAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SecondsAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SecondsAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c deleted file mode 100644 index 4f45da946..000000000 --- a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLL.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SegmentAttributeLL.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeLL_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 10, "doNotBlock" }, - { 2, 9, "whiteLine" }, - { 3, 15, "mergingLaneLeft" }, - { 4, 16, "mergingLaneRight" }, - { 5, 10, "curbOnLeft" }, - { 6, 11, "curbOnRight" }, - { 7, 17, "loadingzoneOnLeft" }, - { 8, 18, "loadingzoneOnRight" }, - { 9, 18, "turnOutPointOnLeft" }, - { 10, 19, "turnOutPointOnRight" }, - { 11, 21, "adjacentParkingOnLeft" }, - { 12, 22, "adjacentParkingOnRight" }, - { 13, 22, "adjacentBikeLaneOnLeft" }, - { 14, 23, "adjacentBikeLaneOnRight" }, - { 15, 14, "sharedBikeLane" }, - { 16, 14, "bikeBoxInFront" }, - { 17, 17, "transitStopOnLeft" }, - { 18, 18, "transitStopOnRight" }, - { 19, 17, "transitStopInLane" }, - { 20, 24, "sharedWithTrackedVehicle" }, - { 21, 10, "safeIsland" }, - { 22, 15, "lowCurbsPresent" }, - { 23, 18, "rumbleStripPresent" }, - { 24, 23, "audibleSignalingPresent" }, - { 25, 21, "adaptiveTimingPresent" }, - { 26, 22, "rfSignalRequestPresent" }, - { 27, 20, "partialCurbIntrusion" }, - { 28, 11, "taperToLeft" }, - { 29, 12, "taperToRight" }, - { 30, 17, "taperToCenterLine" }, - { 31, 15, "parallelParking" }, - { 32, 13, "headInParking" }, - { 33, 11, "freeParking" }, - { 34, 25, "timeRestrictionsOnParking" }, - { 35, 10, "costToPark" }, - { 36, 19, "midBlockCurbPresent" }, - { 37, 21, "unEvenPavementPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SegmentAttributeLL_enum2value_1[] = { - 25, /* adaptiveTimingPresent(25) */ - 13, /* adjacentBikeLaneOnLeft(13) */ - 14, /* adjacentBikeLaneOnRight(14) */ - 11, /* adjacentParkingOnLeft(11) */ - 12, /* adjacentParkingOnRight(12) */ - 24, /* audibleSignalingPresent(24) */ - 16, /* bikeBoxInFront(16) */ - 35, /* costToPark(35) */ - 5, /* curbOnLeft(5) */ - 6, /* curbOnRight(6) */ - 1, /* doNotBlock(1) */ - 33, /* freeParking(33) */ - 32, /* headInParking(32) */ - 7, /* loadingzoneOnLeft(7) */ - 8, /* loadingzoneOnRight(8) */ - 22, /* lowCurbsPresent(22) */ - 3, /* mergingLaneLeft(3) */ - 4, /* mergingLaneRight(4) */ - 36, /* midBlockCurbPresent(36) */ - 31, /* parallelParking(31) */ - 27, /* partialCurbIntrusion(27) */ - 0, /* reserved(0) */ - 26, /* rfSignalRequestPresent(26) */ - 23, /* rumbleStripPresent(23) */ - 21, /* safeIsland(21) */ - 15, /* sharedBikeLane(15) */ - 20, /* sharedWithTrackedVehicle(20) */ - 30, /* taperToCenterLine(30) */ - 28, /* taperToLeft(28) */ - 29, /* taperToRight(29) */ - 34, /* timeRestrictionsOnParking(34) */ - 19, /* transitStopInLane(19) */ - 17, /* transitStopOnLeft(17) */ - 18, /* transitStopOnRight(18) */ - 9, /* turnOutPointOnLeft(9) */ - 10, /* turnOutPointOnRight(10) */ - 37, /* unEvenPavementPresent(37) */ - 2 /* whiteLine(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1 = { - asn_MAP_SegmentAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SegmentAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ - 38, /* Number of elements in the maps */ - 39, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL = { - "SegmentAttributeLL", - "SegmentAttributeLL", - &asn_OP_NativeEnumerated, - asn_DEF_SegmentAttributeLL_tags_1, - sizeof(asn_DEF_SegmentAttributeLL_tags_1) - /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeLL_tags_1) - /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SegmentAttributeLL_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SegmentAttributeLL_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SegmentAttributeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c deleted file mode 100644 index c4588a9cb..000000000 --- a/src/tmx/Asn_J2735/src/2020/SegmentAttributeLLList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SegmentAttributeLLList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_SegmentAttributeLL, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeLLList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1 = { - sizeof(struct SegmentAttributeLLList), - offsetof(struct SegmentAttributeLLList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList = { - "SegmentAttributeLLList", - "SegmentAttributeLLList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SegmentAttributeLLList_tags_1, - sizeof(asn_DEF_SegmentAttributeLLList_tags_1) - /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeLLList_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeLLList_tags_1) - /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SegmentAttributeLLList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SegmentAttributeLLList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SegmentAttributeLLList_1, - 1, /* Single element */ - &asn_SPC_SegmentAttributeLLList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c deleted file mode 100644 index 3edb821c8..000000000 --- a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXY.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SegmentAttributeXY.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeXY_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 10, "doNotBlock" }, - { 2, 9, "whiteLine" }, - { 3, 15, "mergingLaneLeft" }, - { 4, 16, "mergingLaneRight" }, - { 5, 10, "curbOnLeft" }, - { 6, 11, "curbOnRight" }, - { 7, 17, "loadingzoneOnLeft" }, - { 8, 18, "loadingzoneOnRight" }, - { 9, 18, "turnOutPointOnLeft" }, - { 10, 19, "turnOutPointOnRight" }, - { 11, 21, "adjacentParkingOnLeft" }, - { 12, 22, "adjacentParkingOnRight" }, - { 13, 22, "adjacentBikeLaneOnLeft" }, - { 14, 23, "adjacentBikeLaneOnRight" }, - { 15, 14, "sharedBikeLane" }, - { 16, 14, "bikeBoxInFront" }, - { 17, 17, "transitStopOnLeft" }, - { 18, 18, "transitStopOnRight" }, - { 19, 17, "transitStopInLane" }, - { 20, 24, "sharedWithTrackedVehicle" }, - { 21, 10, "safeIsland" }, - { 22, 15, "lowCurbsPresent" }, - { 23, 18, "rumbleStripPresent" }, - { 24, 23, "audibleSignalingPresent" }, - { 25, 21, "adaptiveTimingPresent" }, - { 26, 22, "rfSignalRequestPresent" }, - { 27, 20, "partialCurbIntrusion" }, - { 28, 11, "taperToLeft" }, - { 29, 12, "taperToRight" }, - { 30, 17, "taperToCenterLine" }, - { 31, 15, "parallelParking" }, - { 32, 13, "headInParking" }, - { 33, 11, "freeParking" }, - { 34, 25, "timeRestrictionsOnParking" }, - { 35, 10, "costToPark" }, - { 36, 19, "midBlockCurbPresent" }, - { 37, 21, "unEvenPavementPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SegmentAttributeXY_enum2value_1[] = { - 25, /* adaptiveTimingPresent(25) */ - 13, /* adjacentBikeLaneOnLeft(13) */ - 14, /* adjacentBikeLaneOnRight(14) */ - 11, /* adjacentParkingOnLeft(11) */ - 12, /* adjacentParkingOnRight(12) */ - 24, /* audibleSignalingPresent(24) */ - 16, /* bikeBoxInFront(16) */ - 35, /* costToPark(35) */ - 5, /* curbOnLeft(5) */ - 6, /* curbOnRight(6) */ - 1, /* doNotBlock(1) */ - 33, /* freeParking(33) */ - 32, /* headInParking(32) */ - 7, /* loadingzoneOnLeft(7) */ - 8, /* loadingzoneOnRight(8) */ - 22, /* lowCurbsPresent(22) */ - 3, /* mergingLaneLeft(3) */ - 4, /* mergingLaneRight(4) */ - 36, /* midBlockCurbPresent(36) */ - 31, /* parallelParking(31) */ - 27, /* partialCurbIntrusion(27) */ - 0, /* reserved(0) */ - 26, /* rfSignalRequestPresent(26) */ - 23, /* rumbleStripPresent(23) */ - 21, /* safeIsland(21) */ - 15, /* sharedBikeLane(15) */ - 20, /* sharedWithTrackedVehicle(20) */ - 30, /* taperToCenterLine(30) */ - 28, /* taperToLeft(28) */ - 29, /* taperToRight(29) */ - 34, /* timeRestrictionsOnParking(34) */ - 19, /* transitStopInLane(19) */ - 17, /* transitStopOnLeft(17) */ - 18, /* transitStopOnRight(18) */ - 9, /* turnOutPointOnLeft(9) */ - 10, /* turnOutPointOnRight(10) */ - 37, /* unEvenPavementPresent(37) */ - 2 /* whiteLine(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1 = { - asn_MAP_SegmentAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SegmentAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ - 38, /* Number of elements in the maps */ - 39, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY = { - "SegmentAttributeXY", - "SegmentAttributeXY", - &asn_OP_NativeEnumerated, - asn_DEF_SegmentAttributeXY_tags_1, - sizeof(asn_DEF_SegmentAttributeXY_tags_1) - /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeXY_tags_1) - /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SegmentAttributeXY_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SegmentAttributeXY_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SegmentAttributeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c b/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c deleted file mode 100644 index 10f00d9a4..000000000 --- a/src/tmx/Asn_J2735/src/2020/SegmentAttributeXYList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SegmentAttributeXYList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_SegmentAttributeXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeXYList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1 = { - sizeof(struct SegmentAttributeXYList), - offsetof(struct SegmentAttributeXYList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList = { - "SegmentAttributeXYList", - "SegmentAttributeXYList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SegmentAttributeXYList_tags_1, - sizeof(asn_DEF_SegmentAttributeXYList_tags_1) - /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeXYList_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeXYList_tags_1) - /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SegmentAttributeXYList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SegmentAttributeXYList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SegmentAttributeXYList_1, - 1, /* Single element */ - &asn_SPC_SegmentAttributeXYList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c deleted file mode 100644 index bd7be619a..000000000 --- a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisAccuracy.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SemiMajorAxisAccuracy.h" - -int -SemiMajorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SemiMajorAxisAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy = { - "SemiMajorAxisAccuracy", - "SemiMajorAxisAccuracy", - &asn_OP_NativeInteger, - asn_DEF_SemiMajorAxisAccuracy_tags_1, - sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ - asn_DEF_SemiMajorAxisAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SemiMajorAxisAccuracy_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SemiMajorAxisAccuracy_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SemiMajorAxisAccuracy_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c b/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c deleted file mode 100644 index 340ca37bc..000000000 --- a/src/tmx/Asn_J2735/src/2020/SemiMajorAxisOrientation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SemiMajorAxisOrientation.h" - -int -SemiMajorAxisOrientation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SemiMajorAxisOrientation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation = { - "SemiMajorAxisOrientation", - "SemiMajorAxisOrientation", - &asn_OP_NativeInteger, - asn_DEF_SemiMajorAxisOrientation_tags_1, - sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) - /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ - asn_DEF_SemiMajorAxisOrientation_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) - /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SemiMajorAxisOrientation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SemiMajorAxisOrientation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SemiMajorAxisOrientation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c b/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c deleted file mode 100644 index 3fcf8e96d..000000000 --- a/src/tmx/Asn_J2735/src/2020/SemiMinorAxisAccuracy.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SemiMinorAxisAccuracy.h" - -int -SemiMinorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SemiMinorAxisAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy = { - "SemiMinorAxisAccuracy", - "SemiMinorAxisAccuracy", - &asn_OP_NativeInteger, - asn_DEF_SemiMinorAxisAccuracy_tags_1, - sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ - asn_DEF_SemiMinorAxisAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SemiMinorAxisAccuracy_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SemiMinorAxisAccuracy_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SemiMinorAxisAccuracy_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ShapePointSet.c b/src/tmx/Asn_J2735/src/2020/ShapePointSet.c deleted file mode 100644 index 4dd2c7e95..000000000 --- a/src/tmx/Asn_J2735/src/2020/ShapePointSet.c +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ShapePointSet.h" - -#include "Position3D.h" -asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { - { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "directionality" - }, - { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nodeList" - }, -}; -static const int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { - sizeof(struct ShapePointSet), - offsetof(struct ShapePointSet, _asn_ctx), - asn_MAP_ShapePointSet_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_ShapePointSet_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { - "ShapePointSet", - "ShapePointSet", - &asn_OP_SEQUENCE, - asn_DEF_ShapePointSet_tags_1, - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - asn_DEF_ShapePointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ShapePointSet_1, - 4, /* Elements count */ - &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignPrority.c b/src/tmx/Asn_J2735/src/2020/SignPrority.c deleted file mode 100644 index 5781c1d3d..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignPrority.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignPrority.h" - -int -SignPrority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 7L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignPrority_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..7) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignPrority_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignPrority = { - "SignPrority", - "SignPrority", - &asn_OP_NativeInteger, - asn_DEF_SignPrority_tags_1, - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - asn_DEF_SignPrority_tags_1, /* Same as above */ - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignPrority_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignPrority_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SignPrority_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalControlZone.c b/src/tmx/Asn_J2735/src/2020/SignalControlZone.c deleted file mode 100644 index 92fc0f02c..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalControlZone.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "MapData" - * found in "J2735-MapData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalControlZone.h" - -asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, zone), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_SignalControlZone, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "zone" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* zone */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { - sizeof(struct SignalControlZone), - offsetof(struct SignalControlZone, _asn_ctx), - asn_MAP_SignalControlZone_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { - "SignalControlZone", - "SignalControlZone", - &asn_OP_SEQUENCE, - asn_DEF_SignalControlZone_tags_1, - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - asn_DEF_SignalControlZone_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalControlZone_1, - 1, /* Elements count */ - &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalGroupID.c b/src/tmx/Asn_J2735/src/2020/SignalGroupID.c deleted file mode 100644 index 15877d604..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalGroupID.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalGroupID.h" - -int -SignalGroupID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalGroupID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { - "SignalGroupID", - "SignalGroupID", - &asn_OP_NativeInteger, - asn_DEF_SignalGroupID_tags_1, - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - asn_DEF_SignalGroupID_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalGroupID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalGroupID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SignalGroupID_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c deleted file mode 100644 index dc30697db..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalHeadLocation.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalHeadLocation.h" - -asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "node" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "signalGroupID" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { - sizeof(struct SignalHeadLocation), - offsetof(struct SignalHeadLocation, _asn_ctx), - asn_MAP_SignalHeadLocation_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { - "SignalHeadLocation", - "SignalHeadLocation", - &asn_OP_SEQUENCE, - asn_DEF_SignalHeadLocation_tags_1, - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalHeadLocation_1, - 2, /* Elements count */ - &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c deleted file mode 100644 index 8fc1adba8..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalHeadLocationList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalHeadLocationList.h" - -#include "SignalHeadLocation.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..20)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalHeadLocation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { - sizeof(struct SignalHeadLocationList), - offsetof(struct SignalHeadLocationList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { - "SignalHeadLocationList", - "SignalHeadLocationList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalHeadLocationList_tags_1, - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalHeadLocationList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalHeadLocationList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SignalHeadLocationList_1, - 1, /* Single element */ - &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c b/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c deleted file mode 100644 index 17fb2234e..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalReqScheme.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalReqScheme.h" - -int -SignalReqScheme_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalReqScheme_constr_1 CC_NOTUSED = { - { 0, 0 }, - 1 /* (SIZE(1..1)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { - "SignalReqScheme", - "SignalReqScheme", - &asn_OP_OCTET_STRING, - asn_DEF_SignalReqScheme_tags_1, - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - asn_DEF_SignalReqScheme_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalReqScheme_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalReqScheme_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SignalReqScheme_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequest.c b/src/tmx/Asn_J2735/src/2020/SignalRequest.c deleted file mode 100644 index a7afcfdb6..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalRequest.c +++ /dev/null @@ -1,263 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalRequest.h" - -#include "IntersectionAccessPoint.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct SignalRequest__regional), - offsetof(struct SignalRequest__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requestID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PriorityRequestType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requestType" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, inBoundLane), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "inBoundLane" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequest, outBoundLane), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "outBoundLane" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequest, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequest_oms_1[] = { 4, 5 }; -static const ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inBoundLane */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outBoundLane */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { - sizeof(struct SignalRequest), - offsetof(struct SignalRequest, _asn_ctx), - asn_MAP_SignalRequest_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_SignalRequest_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequest = { - "SignalRequest", - "SignalRequest", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequest_tags_1, - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - asn_DEF_SignalRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalRequest_1, - 6, /* Elements count */ - &asn_SPC_SignalRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestList.c b/src/tmx/Asn_J2735/src/2020/SignalRequestList.c deleted file mode 100644 index 42580157a..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalRequestList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalRequestList.h" - -#include "SignalRequestPackage.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalRequestList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SignalRequestList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalRequestPackage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalRequestList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1 = { - sizeof(struct SignalRequestList), - offsetof(struct SignalRequestList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestList = { - "SignalRequestList", - "SignalRequestList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalRequestList_tags_1, - sizeof(asn_DEF_SignalRequestList_tags_1) - /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestList_tags_1) - /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalRequestList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalRequestList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SignalRequestList_1, - 1, /* Single element */ - &asn_SPC_SignalRequestList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c b/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c deleted file mode 100644 index 34d6cf634..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalRequestMessage.c +++ /dev/null @@ -1,263 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalRequestMessage.h" - -#include "SignalRequestList.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalRequestMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct SignalRequestMessage__regional), - offsetof(struct SignalRequestMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, second), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequestMessage, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, requests), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequestList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requests" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, requestor), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requestor" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequestMessage_oms_1[] = { 0, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_SignalRequestMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequestMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* requestor */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1 = { - sizeof(struct SignalRequestMessage), - offsetof(struct SignalRequestMessage, _asn_ctx), - asn_MAP_SignalRequestMessage_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_SignalRequestMessage_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage = { - "SignalRequestMessage", - "SignalRequestMessage", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequestMessage_tags_1, - sizeof(asn_DEF_SignalRequestMessage_tags_1) - /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestMessage_tags_1) - /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalRequestMessage_1, - 6, /* Elements count */ - &asn_SPC_SignalRequestMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c b/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c deleted file mode 100644 index fbe012f51..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalRequestPackage.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalRequestPackage.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalRequestPackage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct SignalRequestPackage__regional), - offsetof(struct SignalRequestPackage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestPackage, request), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "request" - }, - { ATF_POINTER, 4, offsetof(struct SignalRequestPackage, minute), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 3, offsetof(struct SignalRequestPackage, second), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequestPackage, duration), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "duration" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestPackage, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequestPackage_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalRequestPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequestPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* duration */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1 = { - sizeof(struct SignalRequestPackage), - offsetof(struct SignalRequestPackage, _asn_ctx), - asn_MAP_SignalRequestPackage_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalRequestPackage_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage = { - "SignalRequestPackage", - "SignalRequestPackage", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequestPackage_tags_1, - sizeof(asn_DEF_SignalRequestPackage_tags_1) - /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestPackage_tags_1) - /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalRequestPackage_1, - 5, /* Elements count */ - &asn_SPC_SignalRequestPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c b/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c deleted file mode 100644 index f52d6e78d..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalRequesterInfo.c +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalRequesterInfo.h" - -#include "RequestorType.h" -asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, request), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "request" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequesterInfo, role), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequesterInfo, typeData), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "typeData" - }, -}; -static const int asn_MAP_SignalRequesterInfo_oms_1[] = { 3, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalRequesterInfo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequesterInfo_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* typeData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1 = { - sizeof(struct SignalRequesterInfo), - offsetof(struct SignalRequesterInfo, _asn_ctx), - asn_MAP_SignalRequesterInfo_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalRequesterInfo_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo = { - "SignalRequesterInfo", - "SignalRequesterInfo", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequesterInfo_tags_1, - sizeof(asn_DEF_SignalRequesterInfo_tags_1) - /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ - asn_DEF_SignalRequesterInfo_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequesterInfo_tags_1) - /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalRequesterInfo_1, - 5, /* Elements count */ - &asn_SPC_SignalRequesterInfo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatus.c b/src/tmx/Asn_J2735/src/2020/SignalStatus.c deleted file mode 100644 index 43816e59c..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalStatus.c +++ /dev/null @@ -1,226 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalStatus.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct SignalStatus__regional), - offsetof(struct SignalStatus__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatus_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sigStatus), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalStatusPackageList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sigStatus" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatus, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatus_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_SignalStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sigStatus */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1 = { - sizeof(struct SignalStatus), - offsetof(struct SignalStatus, _asn_ctx), - asn_MAP_SignalStatus_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_SignalStatus_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatus = { - "SignalStatus", - "SignalStatus", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatus_tags_1, - sizeof(asn_DEF_SignalStatus_tags_1) - /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ - asn_DEF_SignalStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatus_tags_1) - /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalStatus_1, - 4, /* Elements count */ - &asn_SPC_SignalStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusList.c b/src/tmx/Asn_J2735/src/2020/SignalStatusList.c deleted file mode 100644 index 45989284d..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalStatusList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalStatusList.h" - -#include "SignalStatus.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalStatusList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SignalStatusList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalStatusList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1 = { - sizeof(struct SignalStatusList), - offsetof(struct SignalStatusList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusList = { - "SignalStatusList", - "SignalStatusList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalStatusList_tags_1, - sizeof(asn_DEF_SignalStatusList_tags_1) - /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusList_tags_1) - /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalStatusList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalStatusList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SignalStatusList_1, - 1, /* Single element */ - &asn_SPC_SignalStatusList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c deleted file mode 100644 index 0f8d8db19..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalStatusMessage.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalStatusMessage.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalStatusMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct SignalStatusMessage__regional), - offsetof(struct SignalStatusMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, second), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalStatusList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_6, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatusMessage_oms_1[] = { 0, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { - sizeof(struct SignalStatusMessage), - offsetof(struct SignalStatusMessage, _asn_ctx), - asn_MAP_SignalStatusMessage_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { - "SignalStatusMessage", - "SignalStatusMessage", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatusMessage_tags_1, - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalStatusMessage_1, - 5, /* Elements count */ - &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c b/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c deleted file mode 100644 index 19253128a..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalStatusPackage.c +++ /dev/null @@ -1,300 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalStatusPackage.h" - -#include "SignalRequesterInfo.h" -#include "IntersectionAccessPoint.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SignalStatusPackage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct SignalStatusPackage__regional), - offsetof(struct SignalStatusPackage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, requester), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequesterInfo, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "requester" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, inboundOn), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "inboundOn" - }, - { ATF_POINTER, 4, offsetof(struct SignalStatusPackage, outboundOn), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "outboundOn" - }, - { ATF_POINTER, 3, offsetof(struct SignalStatusPackage, minute), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 2, offsetof(struct SignalStatusPackage, second), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, duration), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "duration" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, status), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_9, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatusPackage_oms_1[] = { 0, 2, 3, 4, 5, 7 }; -static const ber_tlv_tag_t asn_DEF_SignalStatusPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatusPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* requester */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* inboundOn */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* outboundOn */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duration */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1 = { - sizeof(struct SignalStatusPackage), - offsetof(struct SignalStatusPackage, _asn_ctx), - asn_MAP_SignalStatusPackage_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_SignalStatusPackage_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage = { - "SignalStatusPackage", - "SignalStatusPackage", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatusPackage_tags_1, - sizeof(asn_DEF_SignalStatusPackage_tags_1) - /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusPackage_tags_1) - /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SignalStatusPackage_1, - 8, /* Elements count */ - &asn_SPC_SignalStatusPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c b/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c deleted file mode 100644 index 62fe11137..000000000 --- a/src/tmx/Asn_J2735/src/2020/SignalStatusPackageList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalStatusMessage" - * found in "J2735-SignalStatusMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SignalStatusPackageList.h" - -#include "SignalStatusPackage.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatusPackage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalStatusPackageList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1 = { - sizeof(struct SignalStatusPackageList), - offsetof(struct SignalStatusPackageList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList = { - "SignalStatusPackageList", - "SignalStatusPackageList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalStatusPackageList_tags_1, - sizeof(asn_DEF_SignalStatusPackageList_tags_1) - /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusPackageList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusPackageList_tags_1) - /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SignalStatusPackageList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SignalStatusPackageList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SignalStatusPackageList_1, - 1, /* Single element */ - &asn_SPC_SignalStatusPackageList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SirenInUse.c b/src/tmx/Asn_J2735/src/2020/SirenInUse.c deleted file mode 100644 index c070cec58..000000000 --- a/src/tmx/Asn_J2735/src/2020/SirenInUse.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SirenInUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SirenInUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_SirenInUse_enum2value_1[] = { - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { - asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SirenInUse = { - "SirenInUse", - "SirenInUse", - &asn_OP_NativeEnumerated, - asn_DEF_SirenInUse_tags_1, - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - asn_DEF_SirenInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SirenInUse_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SirenInUse_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SirenInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Snapshot.c b/src/tmx/Asn_J2735/src/2020/Snapshot.c deleted file mode 100644 index 11886d210..000000000 --- a/src/tmx/Asn_J2735/src/2020/Snapshot.c +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Snapshot.h" - -#include "VehicleSafetyExtensions.h" -#include "VehicleStatus.h" -asn_TYPE_member_t asn_MBR_Snapshot_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "thePosition" - }, - { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSafetyExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "safetyExt" - }, - { ATF_POINTER, 1, offsetof(struct Snapshot, dataSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dataSet" - }, -}; -static const int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dataSet */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { - sizeof(struct Snapshot), - offsetof(struct Snapshot, _asn_ctx), - asn_MAP_Snapshot_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_Snapshot_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Snapshot = { - "Snapshot", - "Snapshot", - &asn_OP_SEQUENCE, - asn_DEF_Snapshot_tags_1, - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - asn_DEF_Snapshot_tags_1, /* Same as above */ - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Snapshot_1, - 3, /* Elements count */ - &asn_SPC_Snapshot_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c b/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c deleted file mode 100644 index 76c311b50..000000000 --- a/src/tmx/Asn_J2735/src/2020/SnapshotDistance.c +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SnapshotDistance.h" - -asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "distance1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "distance2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed2" - }, -}; -static const ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* distance1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* distance2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* speed2 */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { - sizeof(struct SnapshotDistance), - offsetof(struct SnapshotDistance, _asn_ctx), - asn_MAP_SnapshotDistance_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { - "SnapshotDistance", - "SnapshotDistance", - &asn_OP_SEQUENCE, - asn_DEF_SnapshotDistance_tags_1, - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - asn_DEF_SnapshotDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SnapshotDistance_1, - 4, /* Elements count */ - &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SnapshotTime.c b/src/tmx/Asn_J2735/src/2020/SnapshotTime.c deleted file mode 100644 index d06efce44..000000000 --- a/src/tmx/Asn_J2735/src/2020/SnapshotTime.c +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SnapshotTime.h" - -asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "time1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "time2" - }, -}; -static const ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* speed1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* time1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speed2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* time2 */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { - sizeof(struct SnapshotTime), - offsetof(struct SnapshotTime, _asn_ctx), - asn_MAP_SnapshotTime_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { - "SnapshotTime", - "SnapshotTime", - &asn_OP_SEQUENCE, - asn_DEF_SnapshotTime_tags_1, - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - asn_DEF_SnapshotTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SnapshotTime_1, - 4, /* Elements count */ - &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c b/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c deleted file mode 100644 index 277e69797..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpecialVehicleExtensions.c +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpecialVehicleExtensions.h" - -#include "EmergencyDetails.h" -#include "EventDescription.h" -#include "TrailerData.h" -asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[] = { - { ATF_POINTER, 3, offsetof(struct SpecialVehicleExtensions, vehicleAlerts), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmergencyDetails, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleAlerts" - }, - { ATF_POINTER, 2, offsetof(struct SpecialVehicleExtensions, description), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EventDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct SpecialVehicleExtensions, trailers), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "trailers" - }, -}; -static const int asn_MAP_SpecialVehicleExtensions_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_SpecialVehicleExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpecialVehicleExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleAlerts */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* trailers */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1 = { - sizeof(struct SpecialVehicleExtensions), - offsetof(struct SpecialVehicleExtensions, _asn_ctx), - asn_MAP_SpecialVehicleExtensions_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_SpecialVehicleExtensions_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions = { - "SpecialVehicleExtensions", - "SpecialVehicleExtensions", - &asn_OP_SEQUENCE, - asn_DEF_SpecialVehicleExtensions_tags_1, - sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) - /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ - asn_DEF_SpecialVehicleExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) - /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SpecialVehicleExtensions_1, - 3, /* Elements count */ - &asn_SPC_SpecialVehicleExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Speed.c b/src/tmx/Asn_J2735/src/2020/Speed.c deleted file mode 100644 index fa91fa267..000000000 --- a/src/tmx/Asn_J2735/src/2020/Speed.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Speed.h" - -int -Speed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 8191L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Speed_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..8191) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Speed_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Speed = { - "Speed", - "Speed", - &asn_OP_NativeInteger, - asn_DEF_Speed_tags_1, - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - asn_DEF_Speed_tags_1, /* Same as above */ - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Speed_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Speed_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Speed_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c b/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c deleted file mode 100644 index 4aea7f0c2..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedAdvice.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedAdvice.h" - -int -SpeedAdvice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 500L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedAdvice_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..500) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { - "SpeedAdvice", - "SpeedAdvice", - &asn_OP_NativeInteger, - asn_DEF_SpeedAdvice_tags_1, - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - asn_DEF_SpeedAdvice_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedAdvice_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedAdvice_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SpeedAdvice_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c b/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c deleted file mode 100644 index a18c8612d..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec100ms" }, - { 2, 8, "prec10ms" }, - { 3, 7, "prec5ms" }, - { 4, 7, "prec1ms" }, - { 5, 9, "prec0-1ms" }, - { 6, 10, "prec0-05ms" }, - { 7, 10, "prec0-01ms" } -}; -static const unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { - 7, /* prec0-01ms(7) */ - 6, /* prec0-05ms(6) */ - 5, /* prec0-1ms(5) */ - 1, /* prec100ms(1) */ - 2, /* prec10ms(2) */ - 4, /* prec1ms(4) */ - 3, /* prec5ms(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { - asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { - "SpeedConfidence", - "SpeedConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_SpeedConfidence_tags_1, - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimit.c b/src/tmx/Asn_J2735/src/2020/SpeedLimit.c deleted file mode 100644 index 8e857fd23..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedLimit.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedLimit.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedLimit_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct SpeedLimit__Member__item), - offsetof(struct SpeedLimit__Member__item, _asn_ctx), - offsetof(struct SpeedLimit__Member__item, present), - sizeof(((struct SpeedLimit__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct SpeedLimit__Member), - offsetof(struct SpeedLimit__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { - sizeof(struct SpeedLimit), - offsetof(struct SpeedLimit, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { - "SpeedLimit", - "SpeedLimit", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedLimit_tags_1, - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedLimit_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedLimit_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SpeedLimit_1, - 1, /* Single element */ - &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c b/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c deleted file mode 100644 index 1d925aa4a..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedLimitList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedLimitList.h" - -#include "RegulatorySpeedLimit.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedLimitList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..9)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegulatorySpeedLimit, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { - sizeof(struct SpeedLimitList), - offsetof(struct SpeedLimitList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { - "SpeedLimitList", - "SpeedLimitList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedLimitList_tags_1, - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitList_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedLimitList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedLimitList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SpeedLimitList_1, - 1, /* Single element */ - &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c b/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c deleted file mode 100644 index 75106d936..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedLimitType.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedLimitType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedLimitType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 20, "maxSpeedInSchoolZone" }, - { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, - { 3, 26, "maxSpeedInConstructionZone" }, - { 4, 15, "vehicleMinSpeed" }, - { 5, 15, "vehicleMaxSpeed" }, - { 6, 20, "vehicleNightMaxSpeed" }, - { 7, 13, "truckMinSpeed" }, - { 8, 13, "truckMaxSpeed" }, - { 9, 18, "truckNightMaxSpeed" }, - { 10, 28, "vehiclesWithTrailersMinSpeed" }, - { 11, 28, "vehiclesWithTrailersMaxSpeed" }, - { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { - 3, /* maxSpeedInConstructionZone(3) */ - 1, /* maxSpeedInSchoolZone(1) */ - 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ - 8, /* truckMaxSpeed(8) */ - 7, /* truckMinSpeed(7) */ - 9, /* truckNightMaxSpeed(9) */ - 0, /* unknown(0) */ - 5, /* vehicleMaxSpeed(5) */ - 4, /* vehicleMinSpeed(4) */ - 6, /* vehicleNightMaxSpeed(6) */ - 11, /* vehiclesWithTrailersMaxSpeed(11) */ - 10, /* vehiclesWithTrailersMinSpeed(10) */ - 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { - asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ - 13, /* Number of elements in the maps */ - 14, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { - "SpeedLimitType", - "SpeedLimitType", - &asn_OP_NativeEnumerated, - asn_DEF_SpeedLimitType_tags_1, - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitType_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedLimitType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedLimitType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfile.c b/src/tmx/Asn_J2735/src/2020/SpeedProfile.c deleted file mode 100644 index 266258ea1..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedProfile.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedProfile.h" - -asn_TYPE_member_t asn_MBR_SpeedProfile_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedProfile, speedReports), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedProfileMeasurementList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedReports" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedProfile_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpeedProfile_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* speedReports */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1 = { - sizeof(struct SpeedProfile), - offsetof(struct SpeedProfile, _asn_ctx), - asn_MAP_SpeedProfile_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfile = { - "SpeedProfile", - "SpeedProfile", - &asn_OP_SEQUENCE, - asn_DEF_SpeedProfile_tags_1, - sizeof(asn_DEF_SpeedProfile_tags_1) - /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfile_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfile_tags_1) - /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SpeedProfile_1, - 1, /* Elements count */ - &asn_SPC_SpeedProfile_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c deleted file mode 100644 index 7e323e967..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurement.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedProfileMeasurement.h" - -int -SpeedProfileMeasurement_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 31L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using GrossSpeed, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurement_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement = { - "SpeedProfileMeasurement", - "SpeedProfileMeasurement", - &asn_OP_NativeInteger, - asn_DEF_SpeedProfileMeasurement_tags_1, - sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfileMeasurement_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedProfileMeasurement_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedProfileMeasurement_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SpeedProfileMeasurement_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c b/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c deleted file mode 100644 index a6b3c574b..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedProfileMeasurementList.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedProfileMeasurementList.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..20)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_SpeedProfileMeasurement, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurementList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1 = { - sizeof(struct SpeedProfileMeasurementList), - offsetof(struct SpeedProfileMeasurementList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList = { - "SpeedProfileMeasurementList", - "SpeedProfileMeasurementList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedProfileMeasurementList_tags_1, - sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfileMeasurementList_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SpeedProfileMeasurementList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SpeedProfileMeasurementList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_SpeedProfileMeasurementList_1, - 1, /* Single element */ - &asn_SPC_SpeedProfileMeasurementList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c deleted file mode 100644 index dee7aaf5c..000000000 --- a/src/tmx/Asn_J2735/src/2020/SpeedandHeadingandThrottleConfidence.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SpeedandHeadingandThrottleConfidence.h" - -asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, heading), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, throttle), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "throttle" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* throttle */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 = { - sizeof(struct SpeedandHeadingandThrottleConfidence), - offsetof(struct SpeedandHeadingandThrottleConfidence, _asn_ctx), - asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { - "SpeedandHeadingandThrottleConfidence", - "SpeedandHeadingandThrottleConfidence", - &asn_OP_SEQUENCE, - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SpeedandHeadingandThrottleConfidence_1, - 3, /* Elements count */ - &asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c deleted file mode 100644 index f83991548..000000000 --- a/src/tmx/Asn_J2735/src/2020/StabilityControlStatus.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "StabilityControlStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { - asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { - "StabilityControlStatus", - "StabilityControlStatus", - &asn_OP_NativeEnumerated, - asn_DEF_StabilityControlStatus_tags_1, - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_StabilityControlStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_StabilityControlStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/StationID.c b/src/tmx/Asn_J2735/src/2020/StationID.c deleted file mode 100644 index 32abf2dc1..000000000 --- a/src/tmx/Asn_J2735/src/2020/StationID.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "StationID.h" - -int -StationID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - /* Constraint check succeeded */ - return 0; -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_StationID_constr_1 CC_NOTUSED = { - { 4, 1 } /* (0..4294967295) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_StationID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { - 0, 0, 0, 0, 0, - 0, /* Native long size */ - 1 /* Unsigned representation */ -}; -static const ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StationID = { - "StationID", - "StationID", - &asn_OP_NativeInteger, - asn_DEF_StationID_tags_1, - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - asn_DEF_StationID_tags_1, /* Same as above */ - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_StationID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_StationID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - StationID_constraint - }, - 0, 0, /* No members */ - &asn_SPC_StationID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c deleted file mode 100644 index 6d9dfcfea..000000000 --- a/src/tmx/Asn_J2735/src/2020/SteeringAxleLubePressure.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SteeringAxleLubePressure.h" - -int -SteeringAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 250L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { - "SteeringAxleLubePressure", - "SteeringAxleLubePressure", - &asn_OP_NativeInteger, - asn_DEF_SteeringAxleLubePressure_tags_1, - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SteeringAxleLubePressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SteeringAxleLubePressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SteeringAxleLubePressure_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c deleted file mode 100644 index 9bca56fa4..000000000 --- a/src/tmx/Asn_J2735/src/2020/SteeringAxleTemperature.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SteeringAxleTemperature.h" - -int -SteeringAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -40L && value <= 210L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-40..210) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { - "SteeringAxleTemperature", - "SteeringAxleTemperature", - &asn_OP_NativeInteger, - asn_DEF_SteeringAxleTemperature_tags_1, - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SteeringAxleTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SteeringAxleTemperature_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SteeringAxleTemperature_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c deleted file mode 100644 index 15c275a62..000000000 --- a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngle.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SteeringWheelAngle.h" - -int -SteeringWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -126L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-126..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -126, 127 } /* (-126..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { - "SteeringWheelAngle", - "SteeringWheelAngle", - &asn_OP_NativeInteger, - asn_DEF_SteeringWheelAngle_tags_1, - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SteeringWheelAngle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SteeringWheelAngle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SteeringWheelAngle_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c deleted file mode 100644 index 72297d57f..000000000 --- a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleConfidence.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SteeringWheelAngleConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "prec2deg" }, - { 2, 8, "prec1deg" }, - { 3, 11, "prec0-02deg" } -}; -static const unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { - 3, /* prec0-02deg(3) */ - 2, /* prec1deg(2) */ - 1, /* prec2deg(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { - asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { - "SteeringWheelAngleConfidence", - "SteeringWheelAngleConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_SteeringWheelAngleConfidence_tags_1, - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SteeringWheelAngleConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SteeringWheelAngleConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c deleted file mode 100644 index 09fdbc38c..000000000 --- a/src/tmx/Asn_J2735/src/2020/SteeringWheelAngleRateOfChange.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SteeringWheelAngleRateOfChange.h" - -int -SteeringWheelAngleRateOfChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-127..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { - "SteeringWheelAngleRateOfChange", - "SteeringWheelAngleRateOfChange", - &asn_OP_NativeInteger, - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SteeringWheelAngleRateOfChange_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SteeringWheelAngleRateOfChange_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SummerTime.c b/src/tmx/Asn_J2735/src/2020/SummerTime.c deleted file mode 100644 index 8790bda6a..000000000 --- a/src/tmx/Asn_J2735/src/2020/SummerTime.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SummerTime.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SummerTime_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SummerTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { - { 0, 15, "notInSummerTime" }, - { 1, 12, "inSummerTime" } -}; -static const unsigned int asn_MAP_SummerTime_enum2value_1[] = { - 1, /* inSummerTime(1) */ - 0 /* notInSummerTime(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { - asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SummerTime = { - "SummerTime", - "SummerTime", - &asn_OP_NativeEnumerated, - asn_DEF_SummerTime_tags_1, - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - asn_DEF_SummerTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SummerTime_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SummerTime_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SummerTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SunSensor.c b/src/tmx/Asn_J2735/src/2020/SunSensor.c deleted file mode 100644 index edb5ac980..000000000 --- a/src/tmx/Asn_J2735/src/2020/SunSensor.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SunSensor.h" - -int -SunSensor_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 1000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_SunSensor_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_SunSensor_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SunSensor = { - "SunSensor", - "SunSensor", - &asn_OP_NativeInteger, - asn_DEF_SunSensor_tags_1, - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - asn_DEF_SunSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_SunSensor_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_SunSensor_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SunSensor_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c b/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c deleted file mode 100644 index f3bddfac8..000000000 --- a/src/tmx/Asn_J2735/src/2020/SupplementalVehicleExtensions.c +++ /dev/null @@ -1,342 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "SupplementalVehicleExtensions.h" - -#include "VehicleClassification.h" -#include "VehicleData.h" -#include "WeatherReport.h" -#include "WeatherProbe.h" -#include "ObstacleDetection.h" -#include "DisabledVehicle.h" -#include "SpeedProfile.h" -#include "RTCMPackage.h" -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_SupplementalVehicleExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct SupplementalVehicleExtensions__regional), - offsetof(struct SupplementalVehicleExtensions__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[] = { - { ATF_POINTER, 10, offsetof(struct SupplementalVehicleExtensions, classification), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleClass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "classification" - }, - { ATF_POINTER, 9, offsetof(struct SupplementalVehicleExtensions, classDetails), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleClassification, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "classDetails" - }, - { ATF_POINTER, 8, offsetof(struct SupplementalVehicleExtensions, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleData" - }, - { ATF_POINTER, 7, offsetof(struct SupplementalVehicleExtensions, weatherReport), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WeatherReport, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "weatherReport" - }, - { ATF_POINTER, 6, offsetof(struct SupplementalVehicleExtensions, weatherProbe), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WeatherProbe, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "weatherProbe" - }, - { ATF_POINTER, 5, offsetof(struct SupplementalVehicleExtensions, obstacle), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDetection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "obstacle" - }, - { ATF_POINTER, 4, offsetof(struct SupplementalVehicleExtensions, status), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DisabledVehicle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 3, offsetof(struct SupplementalVehicleExtensions, speedProfile), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedProfile, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedProfile" - }, - { ATF_POINTER, 2, offsetof(struct SupplementalVehicleExtensions, theRTCM), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMPackage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "theRTCM" - }, - { ATF_POINTER, 1, offsetof(struct SupplementalVehicleExtensions, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_11, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SupplementalVehicleExtensions_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_SupplementalVehicleExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SupplementalVehicleExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* classification */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* classDetails */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* weatherReport */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* weatherProbe */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* obstacle */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speedProfile */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* theRTCM */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1 = { - sizeof(struct SupplementalVehicleExtensions), - offsetof(struct SupplementalVehicleExtensions, _asn_ctx), - asn_MAP_SupplementalVehicleExtensions_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_SupplementalVehicleExtensions_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions = { - "SupplementalVehicleExtensions", - "SupplementalVehicleExtensions", - &asn_OP_SEQUENCE, - asn_DEF_SupplementalVehicleExtensions_tags_1, - sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) - /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ - asn_DEF_SupplementalVehicleExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) - /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_SupplementalVehicleExtensions_1, - 10, /* Elements count */ - &asn_SPC_SupplementalVehicleExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TemporaryID.c b/src/tmx/Asn_J2735/src/2020/TemporaryID.c deleted file mode 100644 index 191a088f1..000000000 --- a/src/tmx/Asn_J2735/src/2020/TemporaryID.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TemporaryID.h" - -int -TemporaryID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 4UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TemporaryID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 4 /* (SIZE(4..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TemporaryID = { - "TemporaryID", - "TemporaryID", - &asn_OP_OCTET_STRING, - asn_DEF_TemporaryID_tags_1, - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - asn_DEF_TemporaryID_tags_1, /* Same as above */ - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TemporaryID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TemporaryID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TemporaryID_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TenthSecond.c b/src/tmx/Asn_J2735/src/2020/TenthSecond.c deleted file mode 100644 index 306c5017d..000000000 --- a/src/tmx/Asn_J2735/src/2020/TenthSecond.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TenthSecond.h" - -int -TenthSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 9L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TenthSecond_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..9) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TenthSecond = { - "TenthSecond", - "TenthSecond", - &asn_OP_NativeInteger, - asn_DEF_TenthSecond_tags_1, - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - asn_DEF_TenthSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TenthSecond_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TenthSecond_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TenthSecond_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TermDistance.c b/src/tmx/Asn_J2735/src/2020/TermDistance.c deleted file mode 100644 index 10846c34c..000000000 --- a/src/tmx/Asn_J2735/src/2020/TermDistance.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TermDistance.h" - -int -TermDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 30000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TermDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..30000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TermDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermDistance = { - "TermDistance", - "TermDistance", - &asn_OP_NativeInteger, - asn_DEF_TermDistance_tags_1, - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - asn_DEF_TermDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TermDistance_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TermDistance_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TermDistance_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TermTime.c b/src/tmx/Asn_J2735/src/2020/TermTime.c deleted file mode 100644 index add2de523..000000000 --- a/src/tmx/Asn_J2735/src/2020/TermTime.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TermTime.h" - -int -TermTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 1800L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TermTime_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..1800) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TermTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermTime = { - "TermTime", - "TermTime", - &asn_OP_NativeInteger, - asn_DEF_TermTime_tags_1, - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - asn_DEF_TermTime_tags_1, /* Same as above */ - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TermTime_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TermTime_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TermTime_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage00.c b/src/tmx/Asn_J2735/src/2020/TestMessage00.c deleted file mode 100644 index 29d08515b..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage00.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage00" - * found in "J2735-TestMessage00.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage00.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage00_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage00, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage00, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage00, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage00_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage00_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage00_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1 = { - sizeof(struct TestMessage00), - offsetof(struct TestMessage00, _asn_ctx), - asn_MAP_TestMessage00_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage00_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage00 = { - "TestMessage00", - "TestMessage00", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage00_tags_1, - sizeof(asn_DEF_TestMessage00_tags_1) - /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ - asn_DEF_TestMessage00_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage00_tags_1) - /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage00_1, - 2, /* Elements count */ - &asn_SPC_TestMessage00_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage01.c b/src/tmx/Asn_J2735/src/2020/TestMessage01.c deleted file mode 100644 index 546fa3c58..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage01.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage01" - * found in "J2735-TestMessage01.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage01.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage01_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage01, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage01, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage01, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage01_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage01_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage01_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1 = { - sizeof(struct TestMessage01), - offsetof(struct TestMessage01, _asn_ctx), - asn_MAP_TestMessage01_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage01_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage01 = { - "TestMessage01", - "TestMessage01", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage01_tags_1, - sizeof(asn_DEF_TestMessage01_tags_1) - /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ - asn_DEF_TestMessage01_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage01_tags_1) - /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage01_1, - 2, /* Elements count */ - &asn_SPC_TestMessage01_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage02.c b/src/tmx/Asn_J2735/src/2020/TestMessage02.c deleted file mode 100644 index f52bfe758..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage02.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage02" - * found in "J2735-TestMessage02.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage02.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage02_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage02, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage02, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage02, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage02_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage02_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage02_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1 = { - sizeof(struct TestMessage02), - offsetof(struct TestMessage02, _asn_ctx), - asn_MAP_TestMessage02_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage02_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage02 = { - "TestMessage02", - "TestMessage02", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage02_tags_1, - sizeof(asn_DEF_TestMessage02_tags_1) - /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ - asn_DEF_TestMessage02_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage02_tags_1) - /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage02_1, - 2, /* Elements count */ - &asn_SPC_TestMessage02_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage03.c b/src/tmx/Asn_J2735/src/2020/TestMessage03.c deleted file mode 100644 index 2cacf0043..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage03.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage03" - * found in "J2735-TestMessage03.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage03.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage03_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage03, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage03, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage03, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage03_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage03_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage03_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1 = { - sizeof(struct TestMessage03), - offsetof(struct TestMessage03, _asn_ctx), - asn_MAP_TestMessage03_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage03_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage03 = { - "TestMessage03", - "TestMessage03", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage03_tags_1, - sizeof(asn_DEF_TestMessage03_tags_1) - /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ - asn_DEF_TestMessage03_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage03_tags_1) - /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage03_1, - 2, /* Elements count */ - &asn_SPC_TestMessage03_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage04.c b/src/tmx/Asn_J2735/src/2020/TestMessage04.c deleted file mode 100644 index dbd1605ef..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage04.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage04" - * found in "J2735-TestMessage04.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage04.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage04_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage04, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage04, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage04, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage04_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage04_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage04_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1 = { - sizeof(struct TestMessage04), - offsetof(struct TestMessage04, _asn_ctx), - asn_MAP_TestMessage04_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage04_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage04 = { - "TestMessage04", - "TestMessage04", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage04_tags_1, - sizeof(asn_DEF_TestMessage04_tags_1) - /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ - asn_DEF_TestMessage04_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage04_tags_1) - /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage04_1, - 2, /* Elements count */ - &asn_SPC_TestMessage04_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage05.c b/src/tmx/Asn_J2735/src/2020/TestMessage05.c deleted file mode 100644 index 6233396d6..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage05.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage05" - * found in "J2735-TestMessage05.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage05.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage05_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage05, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage05, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage05, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage05_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage05_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage05_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1 = { - sizeof(struct TestMessage05), - offsetof(struct TestMessage05, _asn_ctx), - asn_MAP_TestMessage05_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage05_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage05 = { - "TestMessage05", - "TestMessage05", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage05_tags_1, - sizeof(asn_DEF_TestMessage05_tags_1) - /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ - asn_DEF_TestMessage05_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage05_tags_1) - /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage05_1, - 2, /* Elements count */ - &asn_SPC_TestMessage05_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage06.c b/src/tmx/Asn_J2735/src/2020/TestMessage06.c deleted file mode 100644 index 8f29ea681..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage06.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage06" - * found in "J2735-TestMessage06.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage06.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage06_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage06, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage06, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage06, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage06_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage06_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage06_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1 = { - sizeof(struct TestMessage06), - offsetof(struct TestMessage06, _asn_ctx), - asn_MAP_TestMessage06_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage06_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage06 = { - "TestMessage06", - "TestMessage06", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage06_tags_1, - sizeof(asn_DEF_TestMessage06_tags_1) - /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ - asn_DEF_TestMessage06_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage06_tags_1) - /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage06_1, - 2, /* Elements count */ - &asn_SPC_TestMessage06_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage07.c b/src/tmx/Asn_J2735/src/2020/TestMessage07.c deleted file mode 100644 index 31dd4ffc1..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage07.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage07" - * found in "J2735-TestMessage07.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage07.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage07_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage07, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage07, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage07, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage07_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage07_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage07_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1 = { - sizeof(struct TestMessage07), - offsetof(struct TestMessage07, _asn_ctx), - asn_MAP_TestMessage07_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage07_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage07 = { - "TestMessage07", - "TestMessage07", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage07_tags_1, - sizeof(asn_DEF_TestMessage07_tags_1) - /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ - asn_DEF_TestMessage07_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage07_tags_1) - /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage07_1, - 2, /* Elements count */ - &asn_SPC_TestMessage07_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage08.c b/src/tmx/Asn_J2735/src/2020/TestMessage08.c deleted file mode 100644 index 5fd007e7b..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage08.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage08" - * found in "J2735-TestMessage08.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage08.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage08_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage08, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage08, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage08, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage08_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage08_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage08_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1 = { - sizeof(struct TestMessage08), - offsetof(struct TestMessage08, _asn_ctx), - asn_MAP_TestMessage08_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage08_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage08 = { - "TestMessage08", - "TestMessage08", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage08_tags_1, - sizeof(asn_DEF_TestMessage08_tags_1) - /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ - asn_DEF_TestMessage08_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage08_tags_1) - /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage08_1, - 2, /* Elements count */ - &asn_SPC_TestMessage08_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage09.c b/src/tmx/Asn_J2735/src/2020/TestMessage09.c deleted file mode 100644 index 81db76bd7..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage09.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage09" - * found in "J2735-TestMessage09.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage09.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage09_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage09, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage09, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage09, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage09_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage09_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1 = { - sizeof(struct TestMessage09), - offsetof(struct TestMessage09, _asn_ctx), - asn_MAP_TestMessage09_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage09_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage09 = { - "TestMessage09", - "TestMessage09", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage09_tags_1, - sizeof(asn_DEF_TestMessage09_tags_1) - /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ - asn_DEF_TestMessage09_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage09_tags_1) - /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage09_1, - 2, /* Elements count */ - &asn_SPC_TestMessage09_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage10.c b/src/tmx/Asn_J2735/src/2020/TestMessage10.c deleted file mode 100644 index 15e8eb8f5..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage10.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage10" - * found in "J2735-TestMessage10.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage10.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage10_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage10, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage10, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage10_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage10_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1 = { - sizeof(struct TestMessage10), - offsetof(struct TestMessage10, _asn_ctx), - asn_MAP_TestMessage10_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage10_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage10 = { - "TestMessage10", - "TestMessage10", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage10_tags_1, - sizeof(asn_DEF_TestMessage10_tags_1) - /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ - asn_DEF_TestMessage10_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage10_tags_1) - /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage10_1, - 2, /* Elements count */ - &asn_SPC_TestMessage10_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage11.c b/src/tmx/Asn_J2735/src/2020/TestMessage11.c deleted file mode 100644 index c88d4f811..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage11.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage11" - * found in "J2735-TestMessage11.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage11.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage11_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage11, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage11, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage11_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage11_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1 = { - sizeof(struct TestMessage11), - offsetof(struct TestMessage11, _asn_ctx), - asn_MAP_TestMessage11_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage11_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage11 = { - "TestMessage11", - "TestMessage11", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage11_tags_1, - sizeof(asn_DEF_TestMessage11_tags_1) - /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ - asn_DEF_TestMessage11_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage11_tags_1) - /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage11_1, - 2, /* Elements count */ - &asn_SPC_TestMessage11_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage12.c b/src/tmx/Asn_J2735/src/2020/TestMessage12.c deleted file mode 100644 index 20b9d3c4f..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage12.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage12" - * found in "J2735-TestMessage12.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage12.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage12_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage12, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage12, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage12_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage12_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1 = { - sizeof(struct TestMessage12), - offsetof(struct TestMessage12, _asn_ctx), - asn_MAP_TestMessage12_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage12_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage12 = { - "TestMessage12", - "TestMessage12", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage12_tags_1, - sizeof(asn_DEF_TestMessage12_tags_1) - /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ - asn_DEF_TestMessage12_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage12_tags_1) - /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage12_1, - 2, /* Elements count */ - &asn_SPC_TestMessage12_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage13.c b/src/tmx/Asn_J2735/src/2020/TestMessage13.c deleted file mode 100644 index 32cb88d70..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage13.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage13" - * found in "J2735-TestMessage13.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage13.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage13_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage13, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage13, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage13, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage13_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage13_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage13_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1 = { - sizeof(struct TestMessage13), - offsetof(struct TestMessage13, _asn_ctx), - asn_MAP_TestMessage13_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage13_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage13 = { - "TestMessage13", - "TestMessage13", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage13_tags_1, - sizeof(asn_DEF_TestMessage13_tags_1) - /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ - asn_DEF_TestMessage13_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage13_tags_1) - /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage13_1, - 2, /* Elements count */ - &asn_SPC_TestMessage13_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage14.c b/src/tmx/Asn_J2735/src/2020/TestMessage14.c deleted file mode 100644 index 5cf216bb3..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage14.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage14" - * found in "J2735-TestMessage14.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage14.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage14_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage14, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage14, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage14, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage14_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage14_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1 = { - sizeof(struct TestMessage14), - offsetof(struct TestMessage14, _asn_ctx), - asn_MAP_TestMessage14_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage14_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage14 = { - "TestMessage14", - "TestMessage14", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage14_tags_1, - sizeof(asn_DEF_TestMessage14_tags_1) - /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ - asn_DEF_TestMessage14_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage14_tags_1) - /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage14_1, - 2, /* Elements count */ - &asn_SPC_TestMessage14_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TestMessage15.c b/src/tmx/Asn_J2735/src/2020/TestMessage15.c deleted file mode 100644 index c81c7a73a..000000000 --- a/src/tmx/Asn_J2735/src/2020/TestMessage15.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TestMessage15" - * found in "J2735-TestMessage15.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TestMessage15.h" - -#include "Header.h" -#include "RegionalExtension.h" -asn_TYPE_member_t asn_MBR_TestMessage15_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage15, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage15, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_TestMessage15, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage15_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage15_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage15_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1 = { - sizeof(struct TestMessage15), - offsetof(struct TestMessage15, _asn_ctx), - asn_MAP_TestMessage15_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage15_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage15 = { - "TestMessage15", - "TestMessage15", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage15_tags_1, - sizeof(asn_DEF_TestMessage15_tags_1) - /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ - asn_DEF_TestMessage15_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage15_tags_1) - /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TestMessage15_1, - 2, /* Elements count */ - &asn_SPC_TestMessage15_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c deleted file mode 100644 index 86187d3fb..000000000 --- a/src/tmx/Asn_J2735/src/2020/ThrottleConfidence.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ThrottleConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "prec10percent" }, - { 2, 12, "prec1percent" }, - { 3, 14, "prec0-5percent" } -}; -static const unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { - 3, /* prec0-5percent(3) */ - 1, /* prec10percent(1) */ - 2, /* prec1percent(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { - asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { - "ThrottleConfidence", - "ThrottleConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_ThrottleConfidence_tags_1, - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ThrottleConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ThrottleConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c b/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c deleted file mode 100644 index 74431f2a2..000000000 --- a/src/tmx/Asn_J2735/src/2020/ThrottlePosition.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ThrottlePosition.h" - -int -ThrottlePosition_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 200L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ThrottlePosition_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { - "ThrottlePosition", - "ThrottlePosition", - &asn_OP_NativeInteger, - asn_DEF_ThrottlePosition_tags_1, - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - asn_DEF_ThrottlePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ThrottlePosition_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ThrottlePosition_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ThrottlePosition_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c deleted file mode 100644 index 49f75ad04..000000000 --- a/src/tmx/Asn_J2735/src/2020/TimeChangeDetails.c +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TimeChangeDetails.h" - -asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SPAT_TimeMark, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SPAT_TimeMark, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SPAT_TimeMark, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SPAT_TimeMark, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SPAT_TimeMark, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "nextTime" - }, -}; -static const int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { - sizeof(struct TimeChangeDetails), - offsetof(struct TimeChangeDetails, _asn_ctx), - asn_MAP_TimeChangeDetails_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { - "TimeChangeDetails", - "TimeChangeDetails", - &asn_OP_SEQUENCE, - asn_DEF_TimeChangeDetails_tags_1, - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TimeChangeDetails_1, - 6, /* Elements count */ - &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TimeConfidence.c b/src/tmx/Asn_J2735/src/2020/TimeConfidence.c deleted file mode 100644 index 04354d577..000000000 --- a/src/tmx/Asn_J2735/src/2020/TimeConfidence.c +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TimeConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TimeConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 12, "time-100-000" }, - { 2, 12, "time-050-000" }, - { 3, 12, "time-020-000" }, - { 4, 12, "time-010-000" }, - { 5, 12, "time-002-000" }, - { 6, 12, "time-001-000" }, - { 7, 12, "time-000-500" }, - { 8, 12, "time-000-200" }, - { 9, 12, "time-000-100" }, - { 10, 12, "time-000-050" }, - { 11, 12, "time-000-020" }, - { 12, 12, "time-000-010" }, - { 13, 12, "time-000-005" }, - { 14, 12, "time-000-002" }, - { 15, 12, "time-000-001" }, - { 16, 14, "time-000-000-5" }, - { 17, 14, "time-000-000-2" }, - { 18, 14, "time-000-000-1" }, - { 19, 15, "time-000-000-05" }, - { 20, 15, "time-000-000-02" }, - { 21, 15, "time-000-000-01" }, - { 22, 16, "time-000-000-005" }, - { 23, 16, "time-000-000-002" }, - { 24, 16, "time-000-000-001" }, - { 25, 18, "time-000-000-000-5" }, - { 26, 18, "time-000-000-000-2" }, - { 27, 18, "time-000-000-000-1" }, - { 28, 19, "time-000-000-000-05" }, - { 29, 19, "time-000-000-000-02" }, - { 30, 19, "time-000-000-000-01" }, - { 31, 20, "time-000-000-000-005" }, - { 32, 20, "time-000-000-000-002" }, - { 33, 20, "time-000-000-000-001" }, - { 34, 22, "time-000-000-000-000-5" }, - { 35, 22, "time-000-000-000-000-2" }, - { 36, 22, "time-000-000-000-000-1" }, - { 37, 23, "time-000-000-000-000-05" }, - { 38, 23, "time-000-000-000-000-02" }, - { 39, 23, "time-000-000-000-000-01" } -}; -static const unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { - 39, /* time-000-000-000-000-01(39) */ - 38, /* time-000-000-000-000-02(38) */ - 37, /* time-000-000-000-000-05(37) */ - 36, /* time-000-000-000-000-1(36) */ - 35, /* time-000-000-000-000-2(35) */ - 34, /* time-000-000-000-000-5(34) */ - 33, /* time-000-000-000-001(33) */ - 32, /* time-000-000-000-002(32) */ - 31, /* time-000-000-000-005(31) */ - 30, /* time-000-000-000-01(30) */ - 29, /* time-000-000-000-02(29) */ - 28, /* time-000-000-000-05(28) */ - 27, /* time-000-000-000-1(27) */ - 26, /* time-000-000-000-2(26) */ - 25, /* time-000-000-000-5(25) */ - 24, /* time-000-000-001(24) */ - 23, /* time-000-000-002(23) */ - 22, /* time-000-000-005(22) */ - 21, /* time-000-000-01(21) */ - 20, /* time-000-000-02(20) */ - 19, /* time-000-000-05(19) */ - 18, /* time-000-000-1(18) */ - 17, /* time-000-000-2(17) */ - 16, /* time-000-000-5(16) */ - 15, /* time-000-001(15) */ - 14, /* time-000-002(14) */ - 13, /* time-000-005(13) */ - 12, /* time-000-010(12) */ - 11, /* time-000-020(11) */ - 10, /* time-000-050(10) */ - 9, /* time-000-100(9) */ - 8, /* time-000-200(8) */ - 7, /* time-000-500(7) */ - 6, /* time-001-000(6) */ - 5, /* time-002-000(5) */ - 4, /* time-010-000(4) */ - 3, /* time-020-000(3) */ - 2, /* time-050-000(2) */ - 1, /* time-100-000(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { - asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 40, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { - "TimeConfidence", - "TimeConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_TimeConfidence_tags_1, - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TimeConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TimeConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c deleted file mode 100644 index 8a00c80eb..000000000 --- a/src/tmx/Asn_J2735/src/2020/TimeIntervalConfidence.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TimeIntervalConfidence.h" - -int -TimeIntervalConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 15L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { - "TimeIntervalConfidence", - "TimeIntervalConfidence", - &asn_OP_NativeInteger, - asn_DEF_TimeIntervalConfidence_tags_1, - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TimeIntervalConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TimeIntervalConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TimeIntervalConfidence_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TimeOffset.c b/src/tmx/Asn_J2735/src/2020/TimeOffset.c deleted file mode 100644 index f0577b506..000000000 --- a/src/tmx/Asn_J2735/src/2020/TimeOffset.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TimeOffset.h" - -int -TimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TimeOffset_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TimeOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TimeOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeOffset = { - "TimeOffset", - "TimeOffset", - &asn_OP_NativeInteger, - asn_DEF_TimeOffset_tags_1, - sizeof(asn_DEF_TimeOffset_tags_1) - /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ - asn_DEF_TimeOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeOffset_tags_1) - /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TimeOffset_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TimeOffset_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TimeOffset_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TimeRemaining.c b/src/tmx/Asn_J2735/src/2020/TimeRemaining.c deleted file mode 100644 index e4fe0d726..000000000 --- a/src/tmx/Asn_J2735/src/2020/TimeRemaining.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TimeRemaining.h" - -int -TimeRemaining_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 9001L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TimeRemaining_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..9001) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { - "TimeRemaining", - "TimeRemaining", - &asn_OP_NativeInteger, - asn_DEF_TimeRemaining_tags_1, - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - asn_DEF_TimeRemaining_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TimeRemaining_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TimeRemaining_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TimeRemaining_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TireData.c b/src/tmx/Asn_J2735/src/2020/TireData.c deleted file mode 100644 index da2854113..000000000 --- a/src/tmx/Asn_J2735/src/2020/TireData.c +++ /dev/null @@ -1,176 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TireData.h" - -asn_TYPE_member_t asn_MBR_TireData_1[] = { - { ATF_POINTER, 7, offsetof(struct TireData, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLocation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "location" - }, - { ATF_POINTER, 6, offsetof(struct TireData, pressure), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pressure" - }, - { ATF_POINTER, 5, offsetof(struct TireData, temp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireTemp, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "temp" - }, - { ATF_POINTER, 4, offsetof(struct TireData, wheelSensorStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelSensorStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wheelSensorStatus" - }, - { ATF_POINTER, 3, offsetof(struct TireData, wheelEndElectFault), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelEndElectFault, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wheelEndElectFault" - }, - { ATF_POINTER, 2, offsetof(struct TireData, leakageRate), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLeakageRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "leakageRate" - }, - { ATF_POINTER, 1, offsetof(struct TireData, detection), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressureThresholdDetection, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "detection" - }, -}; -static const int asn_MAP_TireData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_TireData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TireData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1 = { - sizeof(struct TireData), - offsetof(struct TireData, _asn_ctx), - asn_MAP_TireData_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_TireData_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TireData = { - "TireData", - "TireData", - &asn_OP_SEQUENCE, - asn_DEF_TireData_tags_1, - sizeof(asn_DEF_TireData_tags_1) - /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ - asn_DEF_TireData_tags_1, /* Same as above */ - sizeof(asn_DEF_TireData_tags_1) - /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TireData_1, - 7, /* Elements count */ - &asn_SPC_TireData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TireDataList.c b/src/tmx/Asn_J2735/src/2020/TireDataList.c deleted file mode 100644 index c29f825f5..000000000 --- a/src/tmx/Asn_J2735/src/2020/TireDataList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TireDataList.h" - -#include "TireData.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TireDataList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TireDataList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_TireDataList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TireData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TireDataList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1 = { - sizeof(struct TireDataList), - offsetof(struct TireDataList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TireDataList = { - "TireDataList", - "TireDataList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TireDataList_tags_1, - sizeof(asn_DEF_TireDataList_tags_1) - /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ - asn_DEF_TireDataList_tags_1, /* Same as above */ - sizeof(asn_DEF_TireDataList_tags_1) - /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TireDataList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TireDataList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_TireDataList_1, - 1, /* Single element */ - &asn_SPC_TireDataList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c b/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c deleted file mode 100644 index 0d2019939..000000000 --- a/src/tmx/Asn_J2735/src/2020/TireLeakageRate.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TireLeakageRate.h" - -int -TireLeakageRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 64255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TireLeakageRate_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { - "TireLeakageRate", - "TireLeakageRate", - &asn_OP_NativeInteger, - asn_DEF_TireLeakageRate_tags_1, - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - asn_DEF_TireLeakageRate_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TireLeakageRate_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TireLeakageRate_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TireLeakageRate_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TireLocation.c b/src/tmx/Asn_J2735/src/2020/TireLocation.c deleted file mode 100644 index 07fb61509..000000000 --- a/src/tmx/Asn_J2735/src/2020/TireLocation.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TireLocation.h" - -int -TireLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TireLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TireLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLocation = { - "TireLocation", - "TireLocation", - &asn_OP_NativeInteger, - asn_DEF_TireLocation_tags_1, - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - asn_DEF_TireLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TireLocation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TireLocation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TireLocation_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TirePressure.c b/src/tmx/Asn_J2735/src/2020/TirePressure.c deleted file mode 100644 index c615cd2b4..000000000 --- a/src/tmx/Asn_J2735/src/2020/TirePressure.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TirePressure.h" - -int -TirePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 250L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TirePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TirePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressure = { - "TirePressure", - "TirePressure", - &asn_OP_NativeInteger, - asn_DEF_TirePressure_tags_1, - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - asn_DEF_TirePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TirePressure_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TirePressure_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TirePressure_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c deleted file mode 100644 index 68cbe20e0..000000000 --- a/src/tmx/Asn_J2735/src/2020/TirePressureThresholdDetection.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TirePressureThresholdDetection.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { - { 0, 6, "noData" }, - { 1, 12, "overPressure" }, - { 2, 17, "noWarningPressure" }, - { 3, 13, "underPressure" }, - { 4, 20, "extremeUnderPressure" }, - { 5, 9, "undefined" }, - { 6, 14, "errorIndicator" }, - { 7, 12, "notAvailable" } -}; -static const unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { - 6, /* errorIndicator(6) */ - 4, /* extremeUnderPressure(4) */ - 0, /* noData(0) */ - 2, /* noWarningPressure(2) */ - 7, /* notAvailable(7) */ - 1, /* overPressure(1) */ - 5, /* undefined(5) */ - 3 /* underPressure(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { - asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { - "TirePressureThresholdDetection", - "TirePressureThresholdDetection", - &asn_OP_NativeEnumerated, - asn_DEF_TirePressureThresholdDetection_tags_1, - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TirePressureThresholdDetection_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TirePressureThresholdDetection_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TireTemp.c b/src/tmx/Asn_J2735/src/2020/TireTemp.c deleted file mode 100644 index 48a5b6be5..000000000 --- a/src/tmx/Asn_J2735/src/2020/TireTemp.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TireTemp.h" - -int -TireTemp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8736L && value <= 55519L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TireTemp_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-8736..55519) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TireTemp_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -8736, 55519 } /* (-8736..55519) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireTemp = { - "TireTemp", - "TireTemp", - &asn_OP_NativeInteger, - asn_DEF_TireTemp_tags_1, - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - asn_DEF_TireTemp_tags_1, /* Same as above */ - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TireTemp_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TireTemp_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TireTemp_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c b/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c deleted file mode 100644 index 13cd1146f..000000000 --- a/src/tmx/Asn_J2735/src/2020/TractionControlStatus.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TractionControlStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TractionControlStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TractionControlStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_TractionControlStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1 = { - asn_MAP_TractionControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TractionControlStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TractionControlStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TractionControlStatus = { - "TractionControlStatus", - "TractionControlStatus", - &asn_OP_NativeEnumerated, - asn_DEF_TractionControlStatus_tags_1, - sizeof(asn_DEF_TractionControlStatus_tags_1) - /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ - asn_DEF_TractionControlStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TractionControlStatus_tags_1) - /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TractionControlStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TractionControlStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TractionControlStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerData.c b/src/tmx/Asn_J2735/src/2020/TrailerData.c deleted file mode 100644 index 98e2d1286..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerData.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerData.h" - -asn_TYPE_member_t asn_MBR_TrailerData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, notUsed), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, connection), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "connection" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, units), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerUnitDescriptionList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "units" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* connection */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1 = { - sizeof(struct TrailerData), - offsetof(struct TrailerData, _asn_ctx), - asn_MAP_TrailerData_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerData = { - "TrailerData", - "TrailerData", - &asn_OP_SEQUENCE, - asn_DEF_TrailerData_tags_1, - sizeof(asn_DEF_TrailerData_tags_1) - /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ - asn_DEF_TrailerData_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerData_tags_1) - /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TrailerData_1, - 3, /* Elements count */ - &asn_SPC_TrailerData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c deleted file mode 100644 index 046639a62..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPoint.c +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerHistoryPoint.h" - -asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, pivotAngle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Angle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pivotAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, timeOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeOffset, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, positionOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "positionOffset" - }, - { ATF_POINTER, 2, offsetof(struct TrailerHistoryPoint, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_POINTER, 1, offsetof(struct TrailerHistoryPoint, heading), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoarseHeading, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "heading" - }, -}; -static const int asn_MAP_TrailerHistoryPoint_oms_1[] = { 3, 4 }; -static const ber_tlv_tag_t asn_DEF_TrailerHistoryPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerHistoryPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotAngle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* positionOffset */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* heading */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1 = { - sizeof(struct TrailerHistoryPoint), - offsetof(struct TrailerHistoryPoint, _asn_ctx), - asn_MAP_TrailerHistoryPoint_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_TrailerHistoryPoint_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint = { - "TrailerHistoryPoint", - "TrailerHistoryPoint", - &asn_OP_SEQUENCE, - asn_DEF_TrailerHistoryPoint_tags_1, - sizeof(asn_DEF_TrailerHistoryPoint_tags_1) - /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ - asn_DEF_TrailerHistoryPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerHistoryPoint_tags_1) - /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TrailerHistoryPoint_1, - 5, /* Elements count */ - &asn_SPC_TrailerHistoryPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c b/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c deleted file mode 100644 index 3a38b7825..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerHistoryPointList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerHistoryPointList.h" - -#include "TrailerHistoryPoint.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..23)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TrailerHistoryPoint, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerHistoryPointList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1 = { - sizeof(struct TrailerHistoryPointList), - offsetof(struct TrailerHistoryPointList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList = { - "TrailerHistoryPointList", - "TrailerHistoryPointList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TrailerHistoryPointList_tags_1, - sizeof(asn_DEF_TrailerHistoryPointList_tags_1) - /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ - asn_DEF_TrailerHistoryPointList_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerHistoryPointList_tags_1) - /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TrailerHistoryPointList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TrailerHistoryPointList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_TrailerHistoryPointList_1, - 1, /* Single element */ - &asn_SPC_TrailerHistoryPointList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerMass.c b/src/tmx/Asn_J2735/src/2020/TrailerMass.c deleted file mode 100644 index a589f4b3d..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerMass.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerMass.h" - -int -TrailerMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TrailerMass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TrailerMass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TrailerMass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrailerMass = { - "TrailerMass", - "TrailerMass", - &asn_OP_NativeInteger, - asn_DEF_TrailerMass_tags_1, - sizeof(asn_DEF_TrailerMass_tags_1) - /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ - asn_DEF_TrailerMass_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerMass_tags_1) - /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TrailerMass_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TrailerMass_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TrailerMass_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c deleted file mode 100644 index 0f86ccf58..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescription.c +++ /dev/null @@ -1,287 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerUnitDescription.h" - -#include "BumperHeights.h" -#include "PivotPointDescription.h" -#include "TrailerHistoryPointList.h" -asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, isDolly), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IsDolly, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "isDolly" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, width), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, length), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleLength, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "length" - }, - { ATF_POINTER, 4, offsetof(struct TrailerUnitDescription, height), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "height" - }, - { ATF_POINTER, 3, offsetof(struct TrailerUnitDescription, mass), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerMass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, bumperHeights), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "bumperHeights" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, centerOfGravity), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "centerOfGravity" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, frontPivot), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "frontPivot" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, rearPivot), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rearPivot" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, rearWheelOffset), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rearWheelOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, positionOffset), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "positionOffset" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, crumbData), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerHistoryPointList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "crumbData" - }, -}; -static const int asn_MAP_TrailerUnitDescription_oms_1[] = { 3, 4, 5, 6, 8, 9, 11, 12 }; -static const ber_tlv_tag_t asn_DEF_TrailerUnitDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerUnitDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isDolly */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* length */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* bumperHeights */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* centerOfGravity */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* frontPivot */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* rearPivot */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* rearWheelOffset */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* positionOffset */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* crumbData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1 = { - sizeof(struct TrailerUnitDescription), - offsetof(struct TrailerUnitDescription, _asn_ctx), - asn_MAP_TrailerUnitDescription_tag2el_1, - 13, /* Count of tags in the map */ - asn_MAP_TrailerUnitDescription_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 13, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription = { - "TrailerUnitDescription", - "TrailerUnitDescription", - &asn_OP_SEQUENCE, - asn_DEF_TrailerUnitDescription_tags_1, - sizeof(asn_DEF_TrailerUnitDescription_tags_1) - /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ - asn_DEF_TrailerUnitDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerUnitDescription_tags_1) - /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TrailerUnitDescription_1, - 13, /* Elements count */ - &asn_SPC_TrailerUnitDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c b/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c deleted file mode 100644 index b9b35f37a..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerUnitDescriptionList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerUnitDescriptionList.h" - -#include "TrailerUnitDescription.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TrailerUnitDescription, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerUnitDescriptionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1 = { - sizeof(struct TrailerUnitDescriptionList), - offsetof(struct TrailerUnitDescriptionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList = { - "TrailerUnitDescriptionList", - "TrailerUnitDescriptionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TrailerUnitDescriptionList_tags_1, - sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) - /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ - asn_DEF_TrailerUnitDescriptionList_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) - /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TrailerUnitDescriptionList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TrailerUnitDescriptionList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_TrailerUnitDescriptionList_1, - 1, /* Single element */ - &asn_SPC_TrailerUnitDescriptionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TrailerWeight.c b/src/tmx/Asn_J2735/src/2020/TrailerWeight.c deleted file mode 100644 index 33182b9a1..000000000 --- a/src/tmx/Asn_J2735/src/2020/TrailerWeight.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TrailerWeight.h" - -int -TrailerWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 64255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TrailerWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { - "TrailerWeight", - "TrailerWeight", - &asn_OP_NativeInteger, - asn_DEF_TrailerWeight_tags_1, - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - asn_DEF_TrailerWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TrailerWeight_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TrailerWeight_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TrailerWeight_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TransitStatus.c b/src/tmx/Asn_J2735/src/2020/TransitStatus.c deleted file mode 100644 index 7d9203ca2..000000000 --- a/src/tmx/Asn_J2735/src/2020/TransitStatus.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TransitStatus.h" - -int -TransitStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TransitStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 6 /* (SIZE(6..6)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitStatus = { - "TransitStatus", - "TransitStatus", - &asn_OP_BIT_STRING, - asn_DEF_TransitStatus_tags_1, - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - asn_DEF_TransitStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TransitStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TransitStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TransitStatus_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c b/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c deleted file mode 100644 index 96352d996..000000000 --- a/src/tmx/Asn_J2735/src/2020/TransitVehicleOccupancy.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TransitVehicleOccupancy.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TransitVehicleOccupancy_value2enum_1[] = { - { 0, 16, "occupancyUnknown" }, - { 1, 14, "occupancyEmpty" }, - { 2, 16, "occupancyVeryLow" }, - { 3, 12, "occupancyLow" }, - { 4, 12, "occupancyMed" }, - { 5, 13, "occupancyHigh" }, - { 6, 19, "occupancyNearlyFull" }, - { 7, 13, "occupancyFull" } -}; -static const unsigned int asn_MAP_TransitVehicleOccupancy_enum2value_1[] = { - 1, /* occupancyEmpty(1) */ - 7, /* occupancyFull(7) */ - 5, /* occupancyHigh(5) */ - 3, /* occupancyLow(3) */ - 4, /* occupancyMed(4) */ - 6, /* occupancyNearlyFull(6) */ - 0, /* occupancyUnknown(0) */ - 2 /* occupancyVeryLow(2) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1 = { - asn_MAP_TransitVehicleOccupancy_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TransitVehicleOccupancy_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TransitVehicleOccupancy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy = { - "TransitVehicleOccupancy", - "TransitVehicleOccupancy", - &asn_OP_NativeEnumerated, - asn_DEF_TransitVehicleOccupancy_tags_1, - sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) - /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ - asn_DEF_TransitVehicleOccupancy_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) - /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TransitVehicleOccupancy_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TransitVehicleOccupancy_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TransitVehicleOccupancy_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c b/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c deleted file mode 100644 index 929498957..000000000 --- a/src/tmx/Asn_J2735/src/2020/TransitVehicleStatus.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SignalRequestMessage" - * found in "J2735-SignalRequestMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TransitVehicleStatus.h" - -int -TransitVehicleStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_TransitVehicleStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus = { - "TransitVehicleStatus", - "TransitVehicleStatus", - &asn_OP_BIT_STRING, - asn_DEF_TransitVehicleStatus_tags_1, - sizeof(asn_DEF_TransitVehicleStatus_tags_1) - /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ - asn_DEF_TransitVehicleStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitVehicleStatus_tags_1) - /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TransitVehicleStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TransitVehicleStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - TransitVehicleStatus_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c deleted file mode 100644 index f77b308ee..000000000 --- a/src/tmx/Asn_J2735/src/2020/TransmissionAndSpeed.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TransmissionAndSpeed.h" - -asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, transmisson), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionState, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "transmisson" - }, - { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TransmissionAndSpeed_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transmisson */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1 = { - sizeof(struct TransmissionAndSpeed), - offsetof(struct TransmissionAndSpeed, _asn_ctx), - asn_MAP_TransmissionAndSpeed_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { - "TransmissionAndSpeed", - "TransmissionAndSpeed", - &asn_OP_SEQUENCE, - asn_DEF_TransmissionAndSpeed_tags_1, - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TransmissionAndSpeed_1, - 2, /* Elements count */ - &asn_SPC_TransmissionAndSpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TransmissionState.c b/src/tmx/Asn_J2735/src/2020/TransmissionState.c deleted file mode 100644 index 7c165164e..000000000 --- a/src/tmx/Asn_J2735/src/2020/TransmissionState.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TransmissionState.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TransmissionState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { - { 0, 7, "neutral" }, - { 1, 4, "park" }, - { 2, 12, "forwardGears" }, - { 3, 12, "reverseGears" }, - { 4, 9, "reserved1" }, - { 5, 9, "reserved2" }, - { 6, 9, "reserved3" }, - { 7, 11, "unavailable" } -}; -static const unsigned int asn_MAP_TransmissionState_enum2value_1[] = { - 2, /* forwardGears(2) */ - 0, /* neutral(0) */ - 1, /* park(1) */ - 4, /* reserved1(4) */ - 5, /* reserved2(5) */ - 6, /* reserved3(6) */ - 3, /* reverseGears(3) */ - 7 /* unavailable(7) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { - asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionState = { - "TransmissionState", - "TransmissionState", - &asn_OP_NativeEnumerated, - asn_DEF_TransmissionState_tags_1, - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - asn_DEF_TransmissionState_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TransmissionState_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TransmissionState_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TransmissionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c b/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c deleted file mode 100644 index f51058a63..000000000 --- a/src/tmx/Asn_J2735/src/2020/TravelerDataFrame.c +++ /dev/null @@ -1,612 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TravelerDataFrame.h" - -#include "GeographicalPath.h" -static int -memb_regions_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 16UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_msgId_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_msgId_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regions_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regions_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_content_constr_16 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_content_constr_16 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regions_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regions_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_msgId_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "furtherInfoID" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.roadSignID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSignID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "roadSignID" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ -}; -static asn_CHOICE_specifics_t asn_SPC_msgId_specs_4 = { - sizeof(struct TravelerDataFrame__msgId), - offsetof(struct TravelerDataFrame__msgId, _asn_ctx), - offsetof(struct TravelerDataFrame__msgId, present), - sizeof(((struct TravelerDataFrame__msgId *)0)->present), - asn_MAP_msgId_tag2el_4, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_msgId_4 = { - "msgId", - "msgId", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_msgId_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_msgId_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_msgId_4, - 2, /* Elements count */ - &asn_SPC_msgId_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regions_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GeographicalPath, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regions_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regions_specs_12 = { - sizeof(struct TravelerDataFrame__regions), - offsetof(struct TravelerDataFrame__regions, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regions_12 = { - "regions", - "regions", - &asn_OP_SEQUENCE_OF, - asn_DEF_regions_tags_12, - sizeof(asn_DEF_regions_tags_12) - /sizeof(asn_DEF_regions_tags_12[0]) - 1, /* 1 */ - asn_DEF_regions_tags_12, /* Same as above */ - sizeof(asn_DEF_regions_tags_12) - /sizeof(asn_DEF_regions_tags_12[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regions_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regions_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regions_12, - 1, /* Single element */ - &asn_SPC_regions_specs_12 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_content_16[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.advisory), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodesAndText, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "advisory" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.workZone), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WorkZone, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "workZone" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.genericSign), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericSignage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "genericSign" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.speedLimit), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimit, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedLimit" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.exitService), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExitService, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "exitService" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_content_tag2el_16[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ -}; -static asn_CHOICE_specifics_t asn_SPC_content_specs_16 = { - sizeof(struct TravelerDataFrame__content), - offsetof(struct TravelerDataFrame__content, _asn_ctx), - offsetof(struct TravelerDataFrame__content, present), - sizeof(((struct TravelerDataFrame__content *)0)->present), - asn_MAP_content_tag2el_16, - 5, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_content_16 = { - "content", - "content", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_content_constr_16, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_content_constr_16, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_content_16, - 5, /* Elements count */ - &asn_SPC_content_specs_16 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, frameType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TravelerInfoType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "frameType" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, msgId), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_msgId_4, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgId" - }, - { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, startYear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "startYear" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, startTime), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, durationTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesDuration, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "durationTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, priority), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignPrority, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed1), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed1" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, regions), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regions_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regions_constr_12, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regions_constr_12, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regions_constraint_1 - }, - 0, 0, /* No default value */ - "regions" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed2), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed2" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed3), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "notUsed3" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, content), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_content_16, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "content" - }, - { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, url), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Short, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "url" - }, -}; -static const int asn_MAP_TravelerDataFrame_oms_1[] = { 3, 12 }; -static const ber_tlv_tag_t asn_DEF_TravelerDataFrame_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TravelerDataFrame_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frameType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgId */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startYear */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* durationTime */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* notUsed1 */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* regions */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* notUsed2 */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* notUsed3 */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* content */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* url */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1 = { - sizeof(struct TravelerDataFrame), - offsetof(struct TravelerDataFrame, _asn_ctx), - asn_MAP_TravelerDataFrame_tag2el_1, - 13, /* Count of tags in the map */ - asn_MAP_TravelerDataFrame_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 13, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame = { - "TravelerDataFrame", - "TravelerDataFrame", - &asn_OP_SEQUENCE, - asn_DEF_TravelerDataFrame_tags_1, - sizeof(asn_DEF_TravelerDataFrame_tags_1) - /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ - asn_DEF_TravelerDataFrame_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerDataFrame_tags_1) - /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TravelerDataFrame_1, - 13, /* Elements count */ - &asn_SPC_TravelerDataFrame_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c b/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c deleted file mode 100644 index 9985c3a22..000000000 --- a/src/tmx/Asn_J2735/src/2020/TravelerDataFrameList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TravelerDataFrameList.h" - -#include "TravelerDataFrame.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TravelerDataFrame, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TravelerDataFrameList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1 = { - sizeof(struct TravelerDataFrameList), - offsetof(struct TravelerDataFrameList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList = { - "TravelerDataFrameList", - "TravelerDataFrameList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TravelerDataFrameList_tags_1, - sizeof(asn_DEF_TravelerDataFrameList_tags_1) - /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ - asn_DEF_TravelerDataFrameList_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerDataFrameList_tags_1) - /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TravelerDataFrameList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TravelerDataFrameList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_TravelerDataFrameList_1, - 1, /* Single element */ - &asn_SPC_TravelerDataFrameList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c b/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c deleted file mode 100644 index a1536682f..000000000 --- a/src/tmx/Asn_J2735/src/2020/TravelerInfoType.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TravelerInfoType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_TravelerInfoType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "advisory" }, - { 2, 11, "roadSignage" }, - { 3, 17, "commercialSignage" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { - 1, /* advisory(1) */ - 3, /* commercialSignage(3) */ - 2, /* roadSignage(2) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { - asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { - "TravelerInfoType", - "TravelerInfoType", - &asn_OP_NativeEnumerated, - asn_DEF_TravelerInfoType_tags_1, - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - asn_DEF_TravelerInfoType_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_TravelerInfoType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_TravelerInfoType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/TravelerInformation.c b/src/tmx/Asn_J2735/src/2020/TravelerInformation.c deleted file mode 100644 index 6857f27ec..000000000 --- a/src/tmx/Asn_J2735/src/2020/TravelerInformation.c +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "TravelerInformation.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_TravelerInformation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct TravelerInformation__regional), - offsetof(struct TravelerInformation__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_MsgCount, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 3, offsetof(struct TravelerInformation, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct TravelerInformation, packetID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UniqueMSGID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "packetID" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation, urlB), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Base, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "urlB" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TravelerDataFrameList, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dataFrames" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* packetID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* urlB */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { - sizeof(struct TravelerInformation), - offsetof(struct TravelerInformation, _asn_ctx), - asn_MAP_TravelerInformation_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TravelerInformation_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { - "TravelerInformation", - "TravelerInformation", - &asn_OP_SEQUENCE, - asn_DEF_TravelerInformation_tags_1, - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - asn_DEF_TravelerInformation_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_TravelerInformation_1, - 6, /* Elements count */ - &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/URL-Base.c b/src/tmx/Asn_J2735/src/2020/URL-Base.c deleted file mode 100644 index dd236090f..000000000 --- a/src/tmx/Asn_J2735/src/2020/URL-Base.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "URL-Base.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -URL_Base_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 45UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_URL_Base_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..45)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_URL_Base_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Base = { - "URL-Base", - "URL-Base", - &asn_OP_IA5String, - asn_DEF_URL_Base_tags_1, - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - asn_DEF_URL_Base_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_URL_Base_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_URL_Base_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - URL_Base_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/URL-Link.c b/src/tmx/Asn_J2735/src/2020/URL-Link.c deleted file mode 100644 index a35ddeefd..000000000 --- a/src/tmx/Asn_J2735/src/2020/URL-Link.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "URL-Link.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -URL_Link_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 255UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_URL_Link_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Link = { - "URL-Link", - "URL-Link", - &asn_OP_IA5String, - asn_DEF_URL_Link_tags_1, - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - asn_DEF_URL_Link_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_URL_Link_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_URL_Link_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - URL_Link_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/URL-Short.c b/src/tmx/Asn_J2735/src/2020/URL-Short.c deleted file mode 100644 index 6476dcc40..000000000 --- a/src/tmx/Asn_J2735/src/2020/URL-Short.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "URL-Short.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -int -URL_Short_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 15UL) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_URL_Short_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..15)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_URL_Short_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Short = { - "URL-Short", - "URL-Short", - &asn_OP_IA5String, - asn_DEF_URL_Short_tags_1, - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - asn_DEF_URL_Short_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_URL_Short_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_URL_Short_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - URL_Short_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c b/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c deleted file mode 100644 index a9eab30bb..000000000 --- a/src/tmx/Asn_J2735/src/2020/UniqueMSGID.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "UniqueMSGID.h" - -int -UniqueMSGID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 9UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_UniqueMSGID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 9 /* (SIZE(9..9)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { - "UniqueMSGID", - "UniqueMSGID", - &asn_OP_OCTET_STRING, - asn_DEF_UniqueMSGID_tags_1, - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - asn_DEF_UniqueMSGID_tags_1, /* Same as above */ - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_UniqueMSGID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_UniqueMSGID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - UniqueMSGID_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c deleted file mode 100644 index 4fff71189..000000000 --- a/src/tmx/Asn_J2735/src/2020/UserSizeAndBehaviour.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "PersonalSafetyMessage" - * found in "J2735-PersonalSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "UserSizeAndBehaviour.h" - -int -UserSizeAndBehaviour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { - "UserSizeAndBehaviour", - "UserSizeAndBehaviour", - &asn_OP_BIT_STRING, - asn_DEF_UserSizeAndBehaviour_tags_1, - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_UserSizeAndBehaviour_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_UserSizeAndBehaviour_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - UserSizeAndBehaviour_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VINstring.c b/src/tmx/Asn_J2735/src/2020/VINstring.c deleted file mode 100644 index 1a0ecd229..000000000 --- a/src/tmx/Asn_J2735/src/2020/VINstring.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VINstring.h" - -int -VINstring_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 17UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VINstring_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..17)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VINstring_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VINstring = { - "VINstring", - "VINstring", - &asn_OP_OCTET_STRING, - asn_DEF_VINstring_tags_1, - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - asn_DEF_VINstring_tags_1, /* Same as above */ - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VINstring_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VINstring_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VINstring_constraint - }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ValidRegion.c b/src/tmx/Asn_J2735/src/2020/ValidRegion.c deleted file mode 100644 index 314d2ab93..000000000 --- a/src/tmx/Asn_J2735/src/2020/ValidRegion.c +++ /dev/null @@ -1,207 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ValidRegion.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_area_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_area_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_area_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ShapePointSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "shapePointSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Circle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "circle" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionPointSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regionPointSet" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ -}; -static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { - sizeof(struct ValidRegion__area), - offsetof(struct ValidRegion__area, _asn_ctx), - offsetof(struct ValidRegion__area, present), - sizeof(((struct ValidRegion__area *)0)->present), - asn_MAP_area_tag2el_4, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_area_4 = { - "area", - "area", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_area_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_area_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_area_4, - 3, /* Elements count */ - &asn_SPC_area_specs_4 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_area_4, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "area" - }, -}; -static const int asn_MAP_ValidRegion_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { - sizeof(struct ValidRegion), - offsetof(struct ValidRegion, _asn_ctx), - asn_MAP_ValidRegion_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ValidRegion_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ValidRegion = { - "ValidRegion", - "ValidRegion", - &asn_OP_SEQUENCE, - asn_DEF_ValidRegion_tags_1, - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - asn_DEF_ValidRegion_tags_1, /* Same as above */ - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_ValidRegion_1, - 3, /* Elements count */ - &asn_SPC_ValidRegion_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleClassification.c b/src/tmx/Asn_J2735/src/2020/VehicleClassification.c deleted file mode 100644 index e0875ef5e..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleClassification.c +++ /dev/null @@ -1,316 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleClassification.h" - -#include "RegionalExtension.h" -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_VehicleClassification, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct VehicleClassification__regional), - offsetof(struct VehicleClassification__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleClassification_1[] = { - { ATF_POINTER, 9, offsetof(struct VehicleClassification, keyType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleClass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "keyType" - }, - { ATF_POINTER, 8, offsetof(struct VehicleClassification, role), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 7, offsetof(struct VehicleClassification, iso3883), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Iso3833VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "iso3883" - }, - { ATF_POINTER, 6, offsetof(struct VehicleClassification, hpmsType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hpmsType" - }, - { ATF_POINTER, 5, offsetof(struct VehicleClassification, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 4, offsetof(struct VehicleClassification, responseEquip), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responseEquip" - }, - { ATF_POINTER, 3, offsetof(struct VehicleClassification, responderType), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "responderType" - }, - { ATF_POINTER, 2, offsetof(struct VehicleClassification, fuelType), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FuelType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "fuelType" - }, - { ATF_POINTER, 1, offsetof(struct VehicleClassification, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_10, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_VehicleClassification_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_VehicleClassification_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleClassification_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iso3883 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hpmsType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* responseEquip */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* responderType */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* fuelType */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1 = { - sizeof(struct VehicleClassification), - offsetof(struct VehicleClassification, _asn_ctx), - asn_MAP_VehicleClassification_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_VehicleClassification_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleClassification = { - "VehicleClassification", - "VehicleClassification", - &asn_OP_SEQUENCE, - asn_DEF_VehicleClassification_tags_1, - sizeof(asn_DEF_VehicleClassification_tags_1) - /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ - asn_DEF_VehicleClassification_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleClassification_tags_1) - /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleClassification_1, - 9, /* Elements count */ - &asn_SPC_VehicleClassification_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleData.c b/src/tmx/Asn_J2735/src/2020/VehicleData.c deleted file mode 100644 index 78a8c77e2..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleData.c +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleData.h" - -#include "BumperHeights.h" -asn_TYPE_member_t asn_MBR_VehicleData_1[] = { - { ATF_POINTER, 4, offsetof(struct VehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "height" - }, - { ATF_POINTER, 3, offsetof(struct VehicleData, bumpers), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "bumpers" - }, - { ATF_POINTER, 2, offsetof(struct VehicleData, mass), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 1, offsetof(struct VehicleData, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "trailerWeight" - }, -}; -static const int asn_MAP_VehicleData_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_VehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* trailerWeight */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1 = { - sizeof(struct VehicleData), - offsetof(struct VehicleData, _asn_ctx), - asn_MAP_VehicleData_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_VehicleData_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleData = { - "VehicleData", - "VehicleData", - &asn_OP_SEQUENCE, - asn_DEF_VehicleData_tags_1, - sizeof(asn_DEF_VehicleData_tags_1) - /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ - asn_DEF_VehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleData_tags_1) - /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleData_1, - 4, /* Elements count */ - &asn_SPC_VehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c b/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c deleted file mode 100644 index d7298f996..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleEventFlags.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleEventFlags.h" - -int -VehicleEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 13UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 13, 13 } /* (SIZE(13..13,...)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VehicleEventFlags_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags = { - "VehicleEventFlags", - "VehicleEventFlags", - &asn_OP_BIT_STRING, - asn_DEF_VehicleEventFlags_tags_1, - sizeof(asn_DEF_VehicleEventFlags_tags_1) - /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ - asn_DEF_VehicleEventFlags_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleEventFlags_tags_1) - /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleEventFlags_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleEventFlags_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VehicleEventFlags_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c deleted file mode 100644 index 54edad706..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleGroupAffected.c +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735-ITIS.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleGroupAffected.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { - { 9217, 12, "all-vehicles" }, - { 9218, 8, "bicycles" }, - { 9219, 11, "motorcycles" }, - { 9220, 4, "cars" }, - { 9221, 14, "light-vehicles" }, - { 9222, 23, "cars-and-light-vehicles" }, - { 9223, 18, "cars-with-trailers" }, - { 9224, 31, "cars-with-recreational-trailers" }, - { 9225, 22, "vehicles-with-trailers" }, - { 9226, 14, "heavy-vehicles" }, - { 9227, 6, "trucks" }, - { 9228, 5, "buses" }, - { 9229, 17, "articulated-buses" }, - { 9230, 12, "school-buses" }, - { 9231, 27, "vehicles-with-semi-trailers" }, - { 9232, 29, "vehicles-with-double-trailers" }, - { 9233, 21, "high-profile-vehicles" }, - { 9234, 13, "wide-vehicles" }, - { 9235, 13, "long-vehicles" }, - { 9236, 15, "hazardous-loads" }, - { 9237, 17, "exceptional-loads" }, - { 9238, 14, "abnormal-loads" }, - { 9239, 7, "convoys" }, - { 9240, 20, "maintenance-vehicles" }, - { 9241, 17, "delivery-vehicles" }, - { 9242, 42, "vehicles-with-even-numbered-license-plates" }, - { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, - { 9244, 29, "vehicles-with-parking-permits" }, - { 9245, 34, "vehicles-with-catalytic-converters" }, - { 9246, 37, "vehicles-without-catalytic-converters" }, - { 9247, 20, "gas-powered-vehicles" }, - { 9248, 23, "diesel-powered-vehicles" }, - { 9249, 12, "lPG-vehicles" }, - { 9250, 16, "military-convoys" }, - { 9251, 17, "military-vehicles" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { - 21, /* abnormal-loads(9238) */ - 0, /* all-vehicles(9217) */ - 12, /* articulated-buses(9229) */ - 1, /* bicycles(9218) */ - 11, /* buses(9228) */ - 3, /* cars(9220) */ - 5, /* cars-and-light-vehicles(9222) */ - 7, /* cars-with-recreational-trailers(9224) */ - 6, /* cars-with-trailers(9223) */ - 22, /* convoys(9239) */ - 24, /* delivery-vehicles(9241) */ - 31, /* diesel-powered-vehicles(9248) */ - 20, /* exceptional-loads(9237) */ - 30, /* gas-powered-vehicles(9247) */ - 19, /* hazardous-loads(9236) */ - 9, /* heavy-vehicles(9226) */ - 16, /* high-profile-vehicles(9233) */ - 32, /* lPG-vehicles(9249) */ - 4, /* light-vehicles(9221) */ - 18, /* long-vehicles(9235) */ - 23, /* maintenance-vehicles(9240) */ - 33, /* military-convoys(9250) */ - 34, /* military-vehicles(9251) */ - 2, /* motorcycles(9219) */ - 13, /* school-buses(9230) */ - 10, /* trucks(9227) */ - 28, /* vehicles-with-catalytic-converters(9245) */ - 15, /* vehicles-with-double-trailers(9232) */ - 25, /* vehicles-with-even-numbered-license-plates(9242) */ - 26, /* vehicles-with-odd-numbered-license-plates(9243) */ - 27, /* vehicles-with-parking-permits(9244) */ - 14, /* vehicles-with-semi-trailers(9231) */ - 8, /* vehicles-with-trailers(9225) */ - 29, /* vehicles-without-catalytic-converters(9246) */ - 17 /* wide-vehicles(9234) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { - asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 35, /* Number of elements in the maps */ - 36, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { - "VehicleGroupAffected", - "VehicleGroupAffected", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleGroupAffected_tags_1, - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleGroupAffected_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleGroupAffected_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleHeight.c b/src/tmx/Asn_J2735/src/2020/VehicleHeight.c deleted file mode 100644 index a3beef2a8..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleHeight.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleHeight.h" - -int -VehicleHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleHeight_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { - "VehicleHeight", - "VehicleHeight", - &asn_OP_NativeInteger, - asn_DEF_VehicleHeight_tags_1, - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - asn_DEF_VehicleHeight_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleHeight_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleHeight_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VehicleHeight_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleID.c b/src/tmx/Asn_J2735/src/2020/VehicleID.c deleted file mode 100644 index 20423f2b0..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleID.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleID.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleID_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_VehicleID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.entityID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "entityID" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.stationID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "stationID" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* entityID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* stationID */ -}; -asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1 = { - sizeof(struct VehicleID), - offsetof(struct VehicleID, _asn_ctx), - offsetof(struct VehicleID, present), - sizeof(((struct VehicleID *)0)->present), - asn_MAP_VehicleID_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleID = { - "VehicleID", - "VehicleID", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleID_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleID_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_VehicleID_1, - 2, /* Elements count */ - &asn_SPC_VehicleID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleIdent.c b/src/tmx/Asn_J2735/src/2020/VehicleIdent.c deleted file mode 100644 index a53b1db48..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleIdent.c +++ /dev/null @@ -1,314 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleIdent.h" - -#include "VehicleID.h" -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127UL)) return -1; - } - return 0; -} - -static int -memb_ownerCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1UL && size <= 32UL) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_vehicleClass_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_ownerCode_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER character map necessary */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rEquip" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ -}; -static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { - sizeof(struct VehicleIdent__vehicleClass), - offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), - offsetof(struct VehicleIdent__vehicleClass, present), - sizeof(((struct VehicleIdent__vehicleClass *)0)->present), - asn_MAP_vehicleClass_tag2el_7, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { - "vehicleClass", - "vehicleClass", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_vehicleClass_constr_7, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_vehicleClass_constr_7, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_vehicleClass_7, - 3, /* Elements count */ - &asn_SPC_vehicleClass_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { - { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VINstring, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vin" - }, - { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_ownerCode_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_ownerCode_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_ownerCode_constraint_1 - }, - 0, 0, /* No default value */ - "ownerCode" - }, - { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_vehicleClass_7, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleClass" - }, -}; -static const int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { - sizeof(struct VehicleIdent), - offsetof(struct VehicleIdent, _asn_ctx), - asn_MAP_VehicleIdent_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_VehicleIdent_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { - "VehicleIdent", - "VehicleIdent", - &asn_OP_SEQUENCE, - asn_DEF_VehicleIdent_tags_1, - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - asn_DEF_VehicleIdent_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleIdent_1, - 6, /* Elements count */ - &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleLength.c b/src/tmx/Asn_J2735/src/2020/VehicleLength.c deleted file mode 100644 index 777266c7c..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleLength.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleLength.h" - -int -VehicleLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 4095L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleLength_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleLength = { - "VehicleLength", - "VehicleLength", - &asn_OP_NativeInteger, - asn_DEF_VehicleLength_tags_1, - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - asn_DEF_VehicleLength_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleLength_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleLength_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VehicleLength_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleMass.c b/src/tmx/Asn_J2735/src/2020/VehicleMass.c deleted file mode 100644 index de3c08b0a..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleMass.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleMass.h" - -int -VehicleMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleMass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleMass = { - "VehicleMass", - "VehicleMass", - &asn_OP_NativeInteger, - asn_DEF_VehicleMass_tags_1, - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - asn_DEF_VehicleMass_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleMass_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleMass_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VehicleMass_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c b/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c deleted file mode 100644 index b6fc9e6a9..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleSafetyExtensions.c +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleSafetyExtensions.h" - -#include "PathHistory.h" -#include "PathPrediction.h" -asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[] = { - { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtensions, events), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleEventFlags, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "events" - }, - { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtensions, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathHistory" - }, - { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtensions, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtensions, lights), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lights" - }, -}; -static const int asn_MAP_VehicleSafetyExtensions_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_VehicleSafetyExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* lights */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1 = { - sizeof(struct VehicleSafetyExtensions), - offsetof(struct VehicleSafetyExtensions, _asn_ctx), - asn_MAP_VehicleSafetyExtensions_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_VehicleSafetyExtensions_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions = { - "VehicleSafetyExtensions", - "VehicleSafetyExtensions", - &asn_OP_SEQUENCE, - asn_DEF_VehicleSafetyExtensions_tags_1, - sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ - asn_DEF_VehicleSafetyExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleSafetyExtensions_1, - 4, /* Elements count */ - &asn_SPC_VehicleSafetyExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleSize.c b/src/tmx/Asn_J2735/src/2020/VehicleSize.c deleted file mode 100644 index d1c5b809b..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleSize.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleSize.h" - -asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleWidth, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleLength, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "length" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { - sizeof(struct VehicleSize), - offsetof(struct VehicleSize, _asn_ctx), - asn_MAP_VehicleSize_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSize = { - "VehicleSize", - "VehicleSize", - &asn_OP_SEQUENCE, - asn_DEF_VehicleSize_tags_1, - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - asn_DEF_VehicleSize_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleSize_1, - 2, /* Elements count */ - &asn_SPC_VehicleSize_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatus.c b/src/tmx/Asn_J2735/src/2020/VehicleStatus.c deleted file mode 100644 index 8a0330855..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleStatus.c +++ /dev/null @@ -1,1061 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleStatus.h" - -#include "WiperSet.h" -#include "BrakeSystemStatus.h" -#include "FullPositionVector.h" -#include "SpeedandHeadingandThrottleConfidence.h" -#include "VehicleIdent.h" -#include "J1939data.h" -#include "AccelerationSet4Way.h" -#include "ConfidenceSet.h" -static asn_TYPE_member_t asn_MBR_steering_12[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "angle" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleRateOfChange, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rate" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivingWheelAngle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wheels" - }, -}; -static const int asn_MAP_steering_oms_12[] = { 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_steering_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_steering_tag2el_12[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_12 = { - sizeof(struct VehicleStatus__steering), - offsetof(struct VehicleStatus__steering, _asn_ctx), - asn_MAP_steering_tag2el_12, - 4, /* Count of tags in the map */ - asn_MAP_steering_oms_12, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_steering_12 = { - "steering", - "steering", - &asn_OP_SEQUENCE, - asn_DEF_steering_tags_12, - sizeof(asn_DEF_steering_tags_12) - /sizeof(asn_DEF_steering_tags_12[0]) - 1, /* 1 */ - asn_DEF_steering_tags_12, /* Same as above */ - sizeof(asn_DEF_steering_tags_12) - /sizeof(asn_DEF_steering_tags_12[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_steering_12, - 4, /* Elements count */ - &asn_SPC_steering_specs_12 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_accelSets_17[] = { - { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accel4way" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAccelerationThreshold, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vertAccelThres" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "yawRateCon" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "hozAccelCon" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConfidenceSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "confidenceSet" - }, -}; -static const int asn_MAP_accelSets_oms_17[] = { 0, 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_accelSets_tags_17[] = { - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_17[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_17 = { - sizeof(struct VehicleStatus__accelSets), - offsetof(struct VehicleStatus__accelSets, _asn_ctx), - asn_MAP_accelSets_tag2el_17, - 5, /* Count of tags in the map */ - asn_MAP_accelSets_oms_17, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_accelSets_17 = { - "accelSets", - "accelSets", - &asn_OP_SEQUENCE, - asn_DEF_accelSets_tags_17, - sizeof(asn_DEF_accelSets_tags_17) - /sizeof(asn_DEF_accelSets_tags_17[0]) - 1, /* 1 */ - asn_DEF_accelSets_tags_17, /* Same as above */ - sizeof(asn_DEF_accelSets_tags_17) - /sizeof(asn_DEF_accelSets_tags_17[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_accelSets_17, - 5, /* Elements count */ - &asn_SPC_accelSets_specs_17 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_object_23[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDistance, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "obDist" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Angle, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "obDirect" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dateTime" - }, -}; -static const ber_tlv_tag_t asn_DEF_object_tags_23[] = { - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_object_tag2el_23[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_object_specs_23 = { - sizeof(struct VehicleStatus__object), - offsetof(struct VehicleStatus__object, _asn_ctx), - asn_MAP_object_tag2el_23, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_object_23 = { - "object", - "object", - &asn_OP_SEQUENCE, - asn_DEF_object_tags_23, - sizeof(asn_DEF_object_tags_23) - /sizeof(asn_DEF_object_tags_23[0]) - 1, /* 1 */ - asn_DEF_object_tags_23, /* Same as above */ - sizeof(asn_DEF_object_tags_23) - /sizeof(asn_DEF_object_tags_23[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_object_23, - 3, /* Elements count */ - &asn_SPC_object_specs_23 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_vehicleData_31[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "height" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "bumpers" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "trailerWeight" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "type" - }, -}; -static const ber_tlv_tag_t asn_DEF_vehicleData_tags_31[] = { - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_31[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_31 = { - sizeof(struct VehicleStatus__vehicleData), - offsetof(struct VehicleStatus__vehicleData, _asn_ctx), - asn_MAP_vehicleData_tag2el_31, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleData_31 = { - "vehicleData", - "vehicleData", - &asn_OP_SEQUENCE, - asn_DEF_vehicleData_tags_31, - sizeof(asn_DEF_vehicleData_tags_31) - /sizeof(asn_DEF_vehicleData_tags_31[0]) - 1, /* 1 */ - asn_DEF_vehicleData_tags_31, /* Same as above */ - sizeof(asn_DEF_vehicleData_tags_31) - /sizeof(asn_DEF_vehicleData_tags_31[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_vehicleData_31, - 5, /* Elements count */ - &asn_SPC_vehicleData_specs_31 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_weatherReport_39[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipYesNo, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "isRaining" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rainRate" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipSituation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "precipSituation" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssSolarRadiation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "solarRadiation" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssMobileFriction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "friction" - }, -}; -static const int asn_MAP_weatherReport_oms_39[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_weatherReport_tags_39[] = { - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_39[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_39 = { - sizeof(struct VehicleStatus__weatherReport), - offsetof(struct VehicleStatus__weatherReport, _asn_ctx), - asn_MAP_weatherReport_tag2el_39, - 5, /* Count of tags in the map */ - asn_MAP_weatherReport_oms_39, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_weatherReport_39 = { - "weatherReport", - "weatherReport", - &asn_OP_SEQUENCE, - asn_DEF_weatherReport_tags_39, - sizeof(asn_DEF_weatherReport_tags_39) - /sizeof(asn_DEF_weatherReport_tags_39[0]) - 1, /* 1 */ - asn_DEF_weatherReport_tags_39, /* Same as above */ - sizeof(asn_DEF_weatherReport_tags_39) - /sizeof(asn_DEF_weatherReport_tags_39[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_weatherReport_39, - 5, /* Elements count */ - &asn_SPC_weatherReport_specs_39 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { - { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lights" - }, - { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LightbarInUse, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lightBar" - }, - { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "wipers" - }, - { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "brakeStatus" - }, - { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeAppliedPressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "brakePressure" - }, - { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoefficientOfFriction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "roadFriction" - }, - { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SunSensor, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sunData" - }, - { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RainSensor, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rainData" - }, - { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirTemperature, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "airTemp" - }, - { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirPressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "airPres" - }, - { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - 0, - &asn_DEF_steering_12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "steering" - }, - { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - 0, - &asn_DEF_accelSets_17, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "accelSets" - }, - { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - 0, - &asn_DEF_object_23, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "object" - }, - { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "fullPos" - }, - { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottlePosition, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "throttlePos" - }, - { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedHeadC" - }, - { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "speedC" - }, - { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - 0, - &asn_DEF_vehicleData_31, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleData" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "vehicleIdent" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_J1939data, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "j1939data" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - 0, - &asn_DEF_weatherReport_39, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "weatherReport" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus, gnssStatus), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "gnssStatus" - }, -}; -static const int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; -static const ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gnssStatus */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { - sizeof(struct VehicleStatus), - offsetof(struct VehicleStatus, _asn_ctx), - asn_MAP_VehicleStatus_tag2el_1, - 22, /* Count of tags in the map */ - asn_MAP_VehicleStatus_oms_1, /* Optional members */ - 22, 0, /* Root/Additions */ - 22, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { - "VehicleStatus", - "VehicleStatus", - &asn_OP_SEQUENCE, - asn_DEF_VehicleStatus_tags_1, - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleStatus_1, - 22, /* Elements count */ - &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c deleted file mode 100644 index 04d278c8c..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleStatusDeviceTypeTag.c +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleStatusDeviceTypeTag.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "lights" }, - { 2, 6, "wipers" }, - { 3, 6, "brakes" }, - { 4, 4, "stab" }, - { 5, 4, "trac" }, - { 6, 3, "abs" }, - { 7, 4, "sunS" }, - { 8, 5, "rainS" }, - { 9, 7, "airTemp" }, - { 10, 8, "steering" }, - { 11, 14, "vertAccelThres" }, - { 12, 9, "vertAccel" }, - { 13, 12, "hozAccelLong" }, - { 14, 11, "hozAccelLat" }, - { 15, 11, "hozAccelCon" }, - { 16, 9, "accel4way" }, - { 17, 13, "confidenceSet" }, - { 18, 6, "obDist" }, - { 19, 8, "obDirect" }, - { 20, 3, "yaw" }, - { 21, 10, "yawRateCon" }, - { 22, 8, "dateTime" }, - { 23, 7, "fullPos" }, - { 24, 10, "position2D" }, - { 25, 10, "position3D" }, - { 26, 7, "vehicle" }, - { 27, 10, "speedHeadC" }, - { 28, 6, "speedC" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { - 6, /* abs(6) */ - 16, /* accel4way(16) */ - 9, /* airTemp(9) */ - 3, /* brakes(3) */ - 17, /* confidenceSet(17) */ - 22, /* dateTime(22) */ - 23, /* fullPos(23) */ - 15, /* hozAccelCon(15) */ - 14, /* hozAccelLat(14) */ - 13, /* hozAccelLong(13) */ - 1, /* lights(1) */ - 19, /* obDirect(19) */ - 18, /* obDist(18) */ - 24, /* position2D(24) */ - 25, /* position3D(25) */ - 8, /* rainS(8) */ - 28, /* speedC(28) */ - 27, /* speedHeadC(27) */ - 4, /* stab(4) */ - 10, /* steering(10) */ - 7, /* sunS(7) */ - 5, /* trac(5) */ - 0, /* unknown(0) */ - 26, /* vehicle(26) */ - 12, /* vertAccel(12) */ - 11, /* vertAccelThres(11) */ - 2, /* wipers(2) */ - 20, /* yaw(20) */ - 21 /* yawRateCon(21) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { - asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ - 29, /* Number of elements in the maps */ - 30, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { - "VehicleStatusDeviceTypeTag", - "VehicleStatusDeviceTypeTag", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleStatusDeviceTypeTag_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c deleted file mode 100644 index e58bd0630..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequest.c +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleStatusRequest.h" - -static int -memb_subType_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 15L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnLessThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnMoreThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_subType_constr_3 CC_NOTUSED = { - { 1, 1 } /* (1..15) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_subType_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatusDeviceTypeTag, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "dataType" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_subType_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_subType_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_subType_constraint_1 - }, - 0, 0, /* No default value */ - "subType" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_sendOnLessThenValue_constr_4, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_sendOnLessThenValue_constr_4, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_sendOnLessThenValue_constraint_1 - }, - 0, 0, /* No default value */ - "sendOnLessThenValue" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_sendOnMoreThenValue_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_sendOnMoreThenValue_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_sendOnMoreThenValue_constraint_1 - }, - 0, 0, /* No default value */ - "sendOnMoreThenValue" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "sendAll" - }, -}; -static const int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { - sizeof(struct VehicleStatusRequest), - offsetof(struct VehicleStatusRequest, _asn_ctx), - asn_MAP_VehicleStatusRequest_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { - "VehicleStatusRequest", - "VehicleStatusRequest", - &asn_OP_SEQUENCE, - asn_DEF_VehicleStatusRequest_tags_1, - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleStatusRequest_1, - 5, /* Elements count */ - &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c b/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c deleted file mode 100644 index b2c10f835..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleStatusRequestList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeDataManagement" - * found in "J2735-ProbeDataManagement.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleStatusRequestList.h" - -#include "VehicleStatusRequest.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleStatusRequest, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleStatusRequestList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1 = { - sizeof(struct VehicleStatusRequestList), - offsetof(struct VehicleStatusRequestList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList = { - "VehicleStatusRequestList", - "VehicleStatusRequestList", - &asn_OP_SEQUENCE_OF, - asn_DEF_VehicleStatusRequestList_tags_1, - sizeof(asn_DEF_VehicleStatusRequestList_tags_1) - /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusRequestList_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusRequestList_tags_1) - /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleStatusRequestList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleStatusRequestList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_VehicleStatusRequestList_1, - 1, /* Single element */ - &asn_SPC_VehicleStatusRequestList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c deleted file mode 100644 index 592275baf..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleToLanePosition.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleToLanePosition.h" - -asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "laneID" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { - sizeof(struct VehicleToLanePosition), - offsetof(struct VehicleToLanePosition, _asn_ctx), - asn_MAP_VehicleToLanePosition_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { - "VehicleToLanePosition", - "VehicleToLanePosition", - &asn_OP_SEQUENCE, - asn_DEF_VehicleToLanePosition_tags_1, - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_VehicleToLanePosition_1, - 2, /* Elements count */ - &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c deleted file mode 100644 index 36d77b44d..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleToLanePositionList.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735-AddGrpC.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleToLanePositionList.h" - -#include "VehicleToLanePosition.h" -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleToLanePosition, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { - sizeof(struct VehicleToLanePositionList), - offsetof(struct VehicleToLanePositionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { - "VehicleToLanePositionList", - "VehicleToLanePositionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_VehicleToLanePositionList_tags_1, - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleToLanePositionList_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleToLanePositionList_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_VehicleToLanePositionList_1, - 1, /* Single element */ - &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleType.c b/src/tmx/Asn_J2735/src/2020/VehicleType.c deleted file mode 100644 index a355e119a..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleType.c +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 7, "unknown" }, - { 2, 7, "special" }, - { 3, 4, "moto" }, - { 4, 3, "car" }, - { 5, 8, "carOther" }, - { 6, 3, "bus" }, - { 7, 8, "axleCnt2" }, - { 8, 8, "axleCnt3" }, - { 9, 8, "axleCnt4" }, - { 10, 15, "axleCnt4Trailer" }, - { 11, 15, "axleCnt5Trailer" }, - { 12, 15, "axleCnt6Trailer" }, - { 13, 20, "axleCnt5MultiTrailer" }, - { 14, 20, "axleCnt6MultiTrailer" }, - { 15, 20, "axleCnt7MultiTrailer" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleType_enum2value_1[] = { - 7, /* axleCnt2(7) */ - 8, /* axleCnt3(8) */ - 9, /* axleCnt4(9) */ - 10, /* axleCnt4Trailer(10) */ - 13, /* axleCnt5MultiTrailer(13) */ - 11, /* axleCnt5Trailer(11) */ - 14, /* axleCnt6MultiTrailer(14) */ - 12, /* axleCnt6Trailer(12) */ - 15, /* axleCnt7MultiTrailer(15) */ - 6, /* bus(6) */ - 4, /* car(4) */ - 5, /* carOther(5) */ - 3, /* moto(3) */ - 0, /* none(0) */ - 2, /* special(2) */ - 1 /* unknown(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { - asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 17, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleType = { - "VehicleType", - "VehicleType", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleType_tags_1, - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - asn_DEF_VehicleType_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleType_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleType_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VehicleWidth.c b/src/tmx/Asn_J2735/src/2020/VehicleWidth.c deleted file mode 100644 index 0d5a2b427..000000000 --- a/src/tmx/Asn_J2735/src/2020/VehicleWidth.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VehicleWidth.h" - -int -VehicleWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 1023L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VehicleWidth_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { - "VehicleWidth", - "VehicleWidth", - &asn_OP_NativeInteger, - asn_DEF_VehicleWidth_tags_1, - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - asn_DEF_VehicleWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VehicleWidth_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VehicleWidth_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VehicleWidth_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Velocity.c b/src/tmx/Asn_J2735/src/2020/Velocity.c deleted file mode 100644 index b7d35f73d..000000000 --- a/src/tmx/Asn_J2735/src/2020/Velocity.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Velocity.h" - -int -Velocity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 8191L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Velocity_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..8191) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Velocity_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Velocity = { - "Velocity", - "Velocity", - &asn_OP_NativeInteger, - asn_DEF_Velocity_tags_1, - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - asn_DEF_Velocity_tags_1, /* Same as above */ - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Velocity_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Velocity_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Velocity_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c deleted file mode 100644 index e851a8c09..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B07.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B07.h" - -int -VertOffset_B07_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -64L && value <= 63L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B07_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-64..63) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, -64, 63 } /* (-64..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B07_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B07 = { - "VertOffset-B07", - "VertOffset-B07", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B07_tags_1, - sizeof(asn_DEF_VertOffset_B07_tags_1) - /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B07_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B07_tags_1) - /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B07_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B07_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B07_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c deleted file mode 100644 index 19863bbbb..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B08.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B08.h" - -int -VertOffset_B08_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B08_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B08_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B08 = { - "VertOffset-B08", - "VertOffset-B08", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B08_tags_1, - sizeof(asn_DEF_VertOffset_B08_tags_1) - /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B08_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B08_tags_1) - /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B08_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B08_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B08_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c deleted file mode 100644 index cae6157c1..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B09.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B09.h" - -int -VertOffset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -256L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B09_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-256..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B09 = { - "VertOffset-B09", - "VertOffset-B09", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B09_tags_1, - sizeof(asn_DEF_VertOffset_B09_tags_1) - /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B09_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B09_tags_1) - /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B09_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B09_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B09_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c deleted file mode 100644 index 65606511b..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B10.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B10.h" - -int -VertOffset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -512L && value <= 511L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B10_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-512..511) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B10 = { - "VertOffset-B10", - "VertOffset-B10", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B10_tags_1, - sizeof(asn_DEF_VertOffset_B10_tags_1) - /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B10_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B10_tags_1) - /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B10_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B10_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B10_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c deleted file mode 100644 index 87702545b..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B11.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B11.h" - -int -VertOffset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1024L && value <= 1023L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B11_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-1024..1023) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B11 = { - "VertOffset-B11", - "VertOffset-B11", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B11_tags_1, - sizeof(asn_DEF_VertOffset_B11_tags_1) - /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B11_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B11_tags_1) - /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B11_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B11_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B11_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c b/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c deleted file mode 100644 index e6a132d23..000000000 --- a/src/tmx/Asn_J2735/src/2020/VertOffset-B12.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VertOffset-B12.h" - -int -VertOffset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048L && value <= 2047L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VertOffset_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VertOffset_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B12 = { - "VertOffset-B12", - "VertOffset-B12", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B12_tags_1, - sizeof(asn_DEF_VertOffset_B12_tags_1) - /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B12_tags_1) - /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VertOffset_B12_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VertOffset_B12_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VertOffset_B12_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c deleted file mode 100644 index b414f4afe..000000000 --- a/src/tmx/Asn_J2735/src/2020/VerticalAcceleration.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VerticalAcceleration.h" - -int -VerticalAcceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-127..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { - "VerticalAcceleration", - "VerticalAcceleration", - &asn_OP_NativeInteger, - asn_DEF_VerticalAcceleration_tags_1, - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VerticalAcceleration_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VerticalAcceleration_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VerticalAcceleration_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c deleted file mode 100644 index 1f4dd6de8..000000000 --- a/src/tmx/Asn_J2735/src/2020/VerticalAccelerationThreshold.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VerticalAccelerationThreshold.h" - -int -VerticalAccelerationThreshold_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5UL)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { - { 0, 0 }, - 5 /* (SIZE(5..5)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { - "VerticalAccelerationThreshold", - "VerticalAccelerationThreshold", - &asn_OP_BIT_STRING, - asn_DEF_VerticalAccelerationThreshold_tags_1, - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VerticalAccelerationThreshold_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VerticalAccelerationThreshold_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - VerticalAccelerationThreshold_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/VerticalOffset.c b/src/tmx/Asn_J2735/src/2020/VerticalOffset.c deleted file mode 100644 index 38cc90ad6..000000000 --- a/src/tmx/Asn_J2735/src/2020/VerticalOffset.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "VerticalOffset.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_VerticalOffset_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_VerticalOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_VerticalOffset_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset1" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B08, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset2" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B09, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset3" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B10, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset4" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B11, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset5" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B12, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "offset6" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.elevation), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Common_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_VerticalOffset, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_VerticalOffset_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offset2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offset3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* offset4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* offset5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* offset6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -static asn_CHOICE_specifics_t asn_SPC_VerticalOffset_specs_1 = { - sizeof(struct VerticalOffset), - offsetof(struct VerticalOffset, _asn_ctx), - offsetof(struct VerticalOffset, present), - sizeof(((struct VerticalOffset *)0)->present), - asn_MAP_VerticalOffset_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_VerticalOffset = { - "VerticalOffset", - "VerticalOffset", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_VerticalOffset_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_VerticalOffset_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_VerticalOffset_1, - 8, /* Elements count */ - &asn_SPC_VerticalOffset_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c b/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c deleted file mode 100644 index fba8670f9..000000000 --- a/src/tmx/Asn_J2735/src/2020/WaitOnStopline.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WaitOnStopline.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { - "WaitOnStopline", - "WaitOnStopline", - &asn_OP_BOOLEAN, - asn_DEF_WaitOnStopline_tags_1, - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - asn_DEF_WaitOnStopline_tags_1, /* Same as above */ - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - BOOLEAN_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WeatherProbe.c b/src/tmx/Asn_J2735/src/2020/WeatherProbe.c deleted file mode 100644 index 910c3a3ee..000000000 --- a/src/tmx/Asn_J2735/src/2020/WeatherProbe.c +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WeatherProbe.h" - -#include "WiperSet.h" -asn_TYPE_member_t asn_MBR_WeatherProbe_1[] = { - { ATF_POINTER, 3, offsetof(struct WeatherProbe, airTemp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirTemperature, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "airTemp" - }, - { ATF_POINTER, 2, offsetof(struct WeatherProbe, airPressure), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirPressure, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "airPressure" - }, - { ATF_POINTER, 1, offsetof(struct WeatherProbe, rainRates), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperSet, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rainRates" - }, -}; -static const int asn_MAP_WeatherProbe_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_WeatherProbe_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WeatherProbe_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* airTemp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* airPressure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rainRates */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1 = { - sizeof(struct WeatherProbe), - offsetof(struct WeatherProbe, _asn_ctx), - asn_MAP_WeatherProbe_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_WeatherProbe_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WeatherProbe = { - "WeatherProbe", - "WeatherProbe", - &asn_OP_SEQUENCE, - asn_DEF_WeatherProbe_tags_1, - sizeof(asn_DEF_WeatherProbe_tags_1) - /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ - asn_DEF_WeatherProbe_tags_1, /* Same as above */ - sizeof(asn_DEF_WeatherProbe_tags_1) - /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_WeatherProbe_1, - 3, /* Elements count */ - &asn_SPC_WeatherProbe_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WeatherReport.c b/src/tmx/Asn_J2735/src/2020/WeatherReport.c deleted file mode 100644 index 0a4410b22..000000000 --- a/src/tmx/Asn_J2735/src/2020/WeatherReport.c +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "BasicSafetyMessage" - * found in "J2735-BasicSafetyMessage.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WeatherReport.h" - -asn_TYPE_member_t asn_MBR_WeatherReport_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct WeatherReport, isRaining), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipYesNo, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "isRaining" - }, - { ATF_POINTER, 5, offsetof(struct WeatherReport, rainRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rainRate" - }, - { ATF_POINTER, 4, offsetof(struct WeatherReport, precipSituation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipSituation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "precipSituation" - }, - { ATF_POINTER, 3, offsetof(struct WeatherReport, solarRadiation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssSolarRadiation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "solarRadiation" - }, - { ATF_POINTER, 2, offsetof(struct WeatherReport, friction), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssMobileFriction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "friction" - }, - { ATF_POINTER, 1, offsetof(struct WeatherReport, roadFriction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoefficientOfFriction, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "roadFriction" - }, -}; -static const int asn_MAP_WeatherReport_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_WeatherReport_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WeatherReport_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* friction */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* roadFriction */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1 = { - sizeof(struct WeatherReport), - offsetof(struct WeatherReport, _asn_ctx), - asn_MAP_WeatherReport_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_WeatherReport_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WeatherReport = { - "WeatherReport", - "WeatherReport", - &asn_OP_SEQUENCE, - asn_DEF_WeatherReport_tags_1, - sizeof(asn_DEF_WeatherReport_tags_1) - /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ - asn_DEF_WeatherReport_tags_1, /* Same as above */ - sizeof(asn_DEF_WeatherReport_tags_1) - /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_WeatherReport_1, - 6, /* Elements count */ - &asn_SPC_WeatherReport_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c deleted file mode 100644 index a30894ab9..000000000 --- a/src/tmx/Asn_J2735/src/2020/WheelEndElectFault.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WheelEndElectFault.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_WheelEndElectFault_value2enum_1[] = { - { 0, 4, "isOk" }, - { 1, 12, "isNotDefined" }, - { 2, 7, "isError" }, - { 3, 14, "isNotSupported" } -}; -static const unsigned int asn_MAP_WheelEndElectFault_enum2value_1[] = { - 2, /* isError(2) */ - 1, /* isNotDefined(1) */ - 3, /* isNotSupported(3) */ - 0 /* isOk(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1 = { - asn_MAP_WheelEndElectFault_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WheelEndElectFault_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { - "WheelEndElectFault", - "WheelEndElectFault", - &asn_OP_NativeEnumerated, - asn_DEF_WheelEndElectFault_tags_1, - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_WheelEndElectFault_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_WheelEndElectFault_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WheelEndElectFault_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c deleted file mode 100644 index d634c0714..000000000 --- a/src/tmx/Asn_J2735/src/2020/WheelSensorStatus.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WheelSensorStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { - { 0, 3, "off" }, - { 1, 2, "on" }, - { 2, 10, "notDefined" }, - { 3, 12, "notSupported" } -}; -static const unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { - 2, /* notDefined(2) */ - 3, /* notSupported(3) */ - 0, /* off(0) */ - 1 /* on(1) */ -}; -const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { - asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { - "WheelSensorStatus", - "WheelSensorStatus", - &asn_OP_NativeEnumerated, - asn_DEF_WheelSensorStatus_tags_1, - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_WheelSensorStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_WheelSensorStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WiperRate.c b/src/tmx/Asn_J2735/src/2020/WiperRate.c deleted file mode 100644 index bc82976fb..000000000 --- a/src/tmx/Asn_J2735/src/2020/WiperRate.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WiperRate.h" - -int -WiperRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 127L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_WiperRate_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_WiperRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperRate = { - "WiperRate", - "WiperRate", - &asn_OP_NativeInteger, - asn_DEF_WiperRate_tags_1, - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - asn_DEF_WiperRate_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_WiperRate_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_WiperRate_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - WiperRate_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WiperSet.c b/src/tmx/Asn_J2735/src/2020/WiperSet.c deleted file mode 100644 index 7692e2b9d..000000000 --- a/src/tmx/Asn_J2735/src/2020/WiperSet.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WiperSet.h" - -asn_TYPE_member_t asn_MBR_WiperSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct WiperSet, statusFront), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "statusFront" - }, - { ATF_NOFLAGS, 0, offsetof(struct WiperSet, rateFront), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rateFront" - }, - { ATF_POINTER, 2, offsetof(struct WiperSet, statusRear), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatus, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "statusRear" - }, - { ATF_POINTER, 1, offsetof(struct WiperSet, rateRear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "rateRear" - }, -}; -static const int asn_MAP_WiperSet_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_WiperSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WiperSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1 = { - sizeof(struct WiperSet), - offsetof(struct WiperSet, _asn_ctx), - asn_MAP_WiperSet_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_WiperSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WiperSet = { - "WiperSet", - "WiperSet", - &asn_OP_SEQUENCE, - asn_DEF_WiperSet_tags_1, - sizeof(asn_DEF_WiperSet_tags_1) - /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ - asn_DEF_WiperSet_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperSet_tags_1) - /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_WiperSet_1, - 4, /* Elements count */ - &asn_SPC_WiperSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WiperStatus.c b/src/tmx/Asn_J2735/src/2020/WiperStatus.c deleted file mode 100644 index 9f0577217..000000000 --- a/src/tmx/Asn_J2735/src/2020/WiperStatus.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WiperStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_WiperStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_WiperStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_WiperStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 12, "intermittent" }, - { 3, 3, "low" }, - { 4, 4, "high" }, - { 5, 11, "washerInUse" }, - { 6, 16, "automaticPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_WiperStatus_enum2value_1[] = { - 6, /* automaticPresent(6) */ - 4, /* high(4) */ - 2, /* intermittent(2) */ - 3, /* low(3) */ - 1, /* off(1) */ - 0, /* unavailable(0) */ - 5 /* washerInUse(5) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1 = { - asn_MAP_WiperStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WiperStatus_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperStatus = { - "WiperStatus", - "WiperStatus", - &asn_OP_NativeEnumerated, - asn_DEF_WiperStatus_tags_1, - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - asn_DEF_WiperStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_WiperStatus_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_WiperStatus_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WiperStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/WorkZone.c b/src/tmx/Asn_J2735/src/2020/WorkZone.c deleted file mode 100644 index 48d5b00dd..000000000 --- a/src/tmx/Asn_J2735/src/2020/WorkZone.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "WorkZone.h" - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_WorkZone_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_WorkZone_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct WorkZone__Member__item), - offsetof(struct WorkZone__Member__item, _asn_ctx), - offsetof(struct WorkZone__Member__item, present), - sizeof(((struct WorkZone__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_item_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - CHOICE_constraint - }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct WorkZone__Member), - offsetof(struct WorkZone__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_WorkZone_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { - sizeof(struct WorkZone), - offsetof(struct WorkZone, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_WorkZone = { - "WorkZone", - "WorkZone", - &asn_OP_SEQUENCE_OF, - asn_DEF_WorkZone_tags_1, - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - asn_DEF_WorkZone_tags_1, /* Same as above */ - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_WorkZone_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_WorkZone_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_WorkZone_1, - 1, /* Single element */ - &asn_SPC_WorkZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/YawRate.c b/src/tmx/Asn_J2735/src/2020/YawRate.c deleted file mode 100644 index 8d422caa9..000000000 --- a/src/tmx/Asn_J2735/src/2020/YawRate.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "Common" - * found in "J2735-Common.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "YawRate.h" - -int -YawRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767L && value <= 32767L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_YawRate_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_YawRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRate = { - "YawRate", - "YawRate", - &asn_OP_NativeInteger, - asn_DEF_YawRate_tags_1, - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - asn_DEF_YawRate_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_YawRate_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_YawRate_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - YawRate_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c b/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c deleted file mode 100644 index 4cc4b7faf..000000000 --- a/src/tmx/Asn_J2735/src/2020/YawRateConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ProbeVehicleData" - * found in "J2735-ProbeVehicleData.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "YawRateConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_YawRateConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "degSec-100-00" }, - { 2, 13, "degSec-010-00" }, - { 3, 13, "degSec-005-00" }, - { 4, 13, "degSec-001-00" }, - { 5, 13, "degSec-000-10" }, - { 6, 13, "degSec-000-05" }, - { 7, 13, "degSec-000-01" } -}; -static const unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { - 7, /* degSec-000-01(7) */ - 6, /* degSec-000-05(6) */ - 5, /* degSec-000-10(5) */ - 4, /* degSec-001-00(4) */ - 3, /* degSec-005-00(3) */ - 2, /* degSec-010-00(2) */ - 1, /* degSec-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { - asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { - "YawRateConfidence", - "YawRateConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_YawRateConfidence_tags_1, - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_YawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_YawRateConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_YawRateConfidence_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - NativeEnumerated_constraint - }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Year.c b/src/tmx/Asn_J2735/src/2020/Year.c deleted file mode 100644 index 62be6ee57..000000000 --- a/src/tmx/Asn_J2735/src/2020/Year.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Year.h" - -int -Year_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1L && value <= 65535L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Year_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..65535) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Year_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Year_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Year = { - "Year", - "Year", - &asn_OP_NativeInteger, - asn_DEF_Year_tags_1, - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - asn_DEF_Year_tags_1, /* Same as above */ - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Year_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Year_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Year_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/ZoneLength.c b/src/tmx/Asn_J2735/src/2020/ZoneLength.c deleted file mode 100644 index efc43190c..000000000 --- a/src/tmx/Asn_J2735/src/2020/ZoneLength.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SPAT" - * found in "J2735-SPAT.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "ZoneLength.h" - -int -ZoneLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 10000L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_ZoneLength_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..10000) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ZoneLength = { - "ZoneLength", - "ZoneLength", - &asn_OP_NativeInteger, - asn_DEF_ZoneLength_tags_1, - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - asn_DEF_ZoneLength_tags_1, /* Same as above */ - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_ZoneLength_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_ZoneLength_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - ZoneLength_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/Zoom.c b/src/tmx/Asn_J2735/src/2020/Zoom.c deleted file mode 100644 index 963f37e7a..000000000 --- a/src/tmx/Asn_J2735/src/2020/Zoom.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "TravelerInformation" - * found in "J2735-TravelerInformation.asn" - * `asn1c -gen-UPER -fcompound-names -fincludes-quoted -fno-include-deps` - */ - -#include "Zoom.h" - -int -Zoom_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 15L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_Zoom_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -asn_per_constraints_t asn_PER_type_Zoom_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static const ber_tlv_tag_t asn_DEF_Zoom_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Zoom = { - "Zoom", - "Zoom", - &asn_OP_NativeInteger, - asn_DEF_Zoom_tags_1, - sizeof(asn_DEF_Zoom_tags_1) - /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ - asn_DEF_Zoom_tags_1, /* Same as above */ - sizeof(asn_DEF_Zoom_tags_1) - /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_Zoom_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_Zoom_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - Zoom_constraint - }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/2020/aper_decoder.c b/src/tmx/Asn_J2735/src/2020/aper_decoder.c deleted file mode 100644 index 0637b6a5a..000000000 --- a/src/tmx/Asn_J2735/src/2020/aper_decoder.c +++ /dev/null @@ -1,91 +0,0 @@ -#include -#include -#include - -asn_dec_rval_t -aper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buffer, size_t size) { - asn_dec_rval_t rval; - - rval = aper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); - if(rval.consumed) { - /* - * We've always given 8-aligned data, - * so convert bits to integral bytes. - */ - rval.consumed += 7; - rval.consumed >>= 3; - } else if(rval.code == RC_OK) { - if(size) { - if(((const uint8_t *)buffer)[0] == 0) { - rval.consumed = 1; /* 1 byte */ - } else { - ASN_DEBUG("Expecting single zeroed byte"); - rval.code = RC_FAIL; - } - } else { - /* Must contain at least 8 bits. */ - rval.code = RC_WMORE; - } - } - - return rval; -} - -asn_dec_rval_t -aper_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, - size_t size, int skip_bits, int unused_bits) { - asn_codec_ctx_t s_codec_ctx; - asn_dec_rval_t rval; - asn_per_data_t pd; - - if(skip_bits < 0 || skip_bits > 7 - || unused_bits < 0 || unused_bits > 7 - || (unused_bits > 0 && !size)) - ASN__DECODE_FAILED; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* Fill in the position indicator */ - memset(&pd, 0, sizeof(pd)); - pd.buffer = (const uint8_t *)buffer; - pd.nboff = skip_bits; - pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ - if(pd.nboff > pd.nbits) - ASN__DECODE_FAILED; - - /* - * Invoke type-specific decoder. - */ - if(!td->op->aper_decoder) - ASN__DECODE_FAILED; /* PER is not compiled in */ - rval = td->op->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd); - if(rval.code == RC_OK) { - /* Return the number of consumed bits */ - rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) - + pd.nboff - skip_bits; - ASN_DEBUG("PER decoding consumed %zu, counted %zu", - rval.consumed, pd.moved); - assert(rval.consumed == pd.moved); - } else { - /* PER codec is not a restartable */ - rval.consumed = 0; - } - return rval; -} diff --git a/src/tmx/Asn_J2735/src/2020/aper_encoder.c b/src/tmx/Asn_J2735/src/2020/aper_encoder.c deleted file mode 100644 index d9b1c1df1..000000000 --- a/src/tmx/Asn_J2735/src/2020/aper_encoder.c +++ /dev/null @@ -1,129 +0,0 @@ -#include -#include -#include - -/* - * Argument type and callback necessary for aper_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -asn_enc_rval_t -aper_encode_to_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg key; - - key.buffer = buffer; - key.left = buffer_size; - - if(td) ASN_DEBUG("Encoding \"%s\" using ALIGNED PER", td->name); - - return aper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); -} - -ssize_t -aper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void **buffer_r) { - asn_enc_rval_t er = {0,0,0}; - enc_dyn_arg key; - - memset(&key, 0, sizeof(key)); - - er = aper_encode(td, constraints, sptr, encode_dyn_cb, &key); - switch(er.encoded) { - case -1: - FREEMEM(key.buffer); - return -1; - case 0: - FREEMEM(key.buffer); - key.buffer = MALLOC(1); - if(key.buffer) { - *(char *)key.buffer = '\0'; - *buffer_r = key.buffer; - return 1; - } else { - return -1; - } - default: - *buffer_r = key.buffer; - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - return ((er.encoded + 7) >> 3); - } -} - -/* - * Internally useful functions. - */ - -/* Flush partially filled buffer */ -static int -_aper_encode_flush_outp(asn_per_outp_t *po) { - uint8_t *buf; - - if(po->nboff == 0 && po->buffer == po->tmpspace) - return 0; - - buf = po->buffer + (po->nboff >> 3); - /* Make sure we account for the last, partially filled */ - if(po->nboff & 0x07) { - buf[0] &= 0xff << (8 - (po->nboff & 0x07)); - buf++; - } - - if (po->output) { - return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); - } - return 0; -} - -asn_enc_rval_t -aper_encode(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { - asn_per_outp_t po; - asn_enc_rval_t er = {0,0,0}; - - /* - * Invoke type-specific encoder. - */ - if(!td || !td->op->aper_encoder) - ASN__ENCODE_FAILED; /* PER is not compiled in */ - - po.buffer = po.tmpspace; - po.nboff = 0; - po.nbits = 8 * sizeof(po.tmpspace); - po.output = cb ? cb : ignore_output; - po.op_key = app_key; - po.flushed_bytes = 0; - - er = td->op->aper_encoder(td, constraints, sptr, &po); - if(er.encoded != -1) { - size_t bits_to_flush; - - bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; - - /* Set number of bits encoded to a firm value */ - er.encoded = (po.flushed_bytes << 3) + bits_to_flush; - - if(_aper_encode_flush_outp(&po)) - ASN__ENCODE_FAILED; - } - - return er; -} diff --git a/src/tmx/Asn_J2735/src/2020/aper_opentype.c b/src/tmx/Asn_J2735/src/2020/aper_opentype.c deleted file mode 100644 index cdd5999b2..000000000 --- a/src/tmx/Asn_J2735/src/2020/aper_opentype.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -static asn_dec_rval_t -aper_open_type_get_simple(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - ssize_t chunk_bytes; - int repeat; - uint8_t *buf = 0; - size_t bufLen = 0; - size_t bufSize = 0; - asn_per_data_t spd; - size_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s...", td->name); - - do { - chunk_bytes = aper_get_length(pd, -1, -1, -1, &repeat); - if(chunk_bytes < 0) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - if(bufLen + chunk_bytes > bufSize) { - void *ptr; - bufSize = chunk_bytes + (bufSize << 2); - ptr = REALLOC(buf, bufSize); - if(!ptr) { - FREEMEM(buf); - ASN__DECODE_FAILED; - } - buf = ptr; - } - if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - bufLen += chunk_bytes; - } while(repeat); - - ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, - (long)bufLen); - - memset(&spd, 0, sizeof(spd)); - spd.buffer = buf; - spd.nbits = bufLen << 3; - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->aper_decoder(ctx, td, constraints, sptr, &spd); - ASN_DEBUG_INDENT_ADD(-4); - - if(rv.code == RC_OK) { - /* Check padding validity */ - padding = spd.nbits - spd.nboff; - if (((padding > 0 && padding < 8) || - /* X.691#10.1.3 */ - (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && - per_get_few_bits(&spd, padding) == 0) { - /* Everything is cool */ - FREEMEM(buf); - return rv; - } - FREEMEM(buf); - if(padding >= 8) { - ASN_DEBUG("Too large padding %d in open type", (int)padding); - ASN__DECODE_FAILED; - } else { - ASN_DEBUG("No padding"); - } - } else { - FREEMEM(buf); - /* rv.code could be RC_WMORE, nonsense in this context */ - rv.code = RC_FAIL; /* Noone would give us more */ - } - - return rv; -} - -int -aper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - void *buf; - void *bptr; - ssize_t size; - size_t toGo; - - ASN_DEBUG("Open type put %s ...", td->name); - - size = aper_encode_to_new_buffer(td, constraints, sptr, &buf); - if(size <= 0) return -1; - - for(bptr = buf, toGo = size; toGo;) { - int need_eom = 0; - ssize_t maySave = aper_put_length(po, -1, -1, toGo, &need_eom); - if(maySave < 0) break; - if(per_put_many_bits(po, bptr, maySave * 8)) break; - bptr = (char *)bptr + maySave; - toGo -= maySave; - if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) { - FREEMEM(buf); - return -1; - } - } - - FREEMEM(buf); - if(toGo) return -1; - - ASN_DEBUG("Open type put %s of length %zd + overhead (1byte?)", - td->name, size); - - return 0; -} - -asn_dec_rval_t -aper_open_type_get(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - - return aper_open_type_get_simple(ctx, td, constraints, sptr, pd); -} - -int -aper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { - asn_TYPE_descriptor_t s_td; - asn_dec_rval_t rv; - asn_TYPE_operation_t op_t; - - memset(&op_t, 0, sizeof(op_t)); - s_td.name = ""; - s_td.op = &op_t; - s_td.op->aper_decoder = uper_sot_suck; - - rv = aper_open_type_get(ctx, &s_td, 0, 0, pd); - if(rv.code != RC_OK) - return -1; - else - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/aper_support.c b/src/tmx/Asn_J2735/src/2020/aper_support.c deleted file mode 100644 index 1f34c60d6..000000000 --- a/src/tmx/Asn_J2735/src/2020/aper_support.c +++ /dev/null @@ -1,239 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -int32_t -aper_get_align(asn_per_data_t *pd) { - - if(pd->nboff & 0x7) { - ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)pd->nboff & 0x7)); - return per_get_few_bits(pd, 8 - (pd->nboff & 0x7)); - } - return 0; -} - -ssize_t -aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, - int ebits, int *repeat) { - int constrained = (lb >= 0) && (ub >= 0); - ssize_t value; - - *repeat = 0; - - if (constrained && ub < 65536) { - int range = ub - lb + 1; - return aper_get_nsnnwn(pd, range); - } - - if (aper_get_align(pd) < 0) - return -1; - - if(ebits >= 0) return per_get_few_bits(pd, ebits); - - value = per_get_few_bits(pd, 8); - if(value < 0) return -1; - if((value & 128) == 0) /* #11.9.3.6 */ - return (value & 0x7F); - if((value & 64) == 0) { /* #11.9.3.7 */ - value = ((value & 63) << 8) | per_get_few_bits(pd, 8); - if(value < 0) return -1; - return value; - } - value &= 63; /* this is "m" from X.691, #11.9.3.8 */ - if(value < 1 || value > 4) - return -1; - *repeat = 1; - return (16384 * value); -} - -ssize_t -aper_get_nslength(asn_per_data_t *pd) { - ssize_t length; - - ASN_DEBUG("Getting normally small length"); - - if(per_get_few_bits(pd, 1) == 0) { - length = per_get_few_bits(pd, 6) + 1; - if(length <= 0) return -1; - ASN_DEBUG("l=%zd", length); - return length; - } else { - int repeat; - length = aper_get_length(pd, -1, -1, -1, &repeat); - if(length >= 0 && !repeat) return length; - return -1; /* Error, or do not support >16K extensions */ - } -} - -ssize_t -aper_get_nsnnwn(asn_per_data_t *pd, int range) { - ssize_t value; - int bytes = 0; - - ASN_DEBUG("getting nsnnwn with range %d", range); - - if(range <= 255) { - int i; - - if (range < 0) return -1; - /* 1 -> 8 bits */ - for (i = 1; i <= 8; i++) { - int upper = 1 << i; - if (upper >= range) - break; - } - value = per_get_few_bits(pd, i); - return value; - } else if (range == 256){ - /* 1 byte */ - bytes = 1; - } else if (range <= 65536) { - /* 2 bytes */ - bytes = 2; - } else { - //return -1; - int length; - - /* handle indefinite range */ - length = per_get_few_bits(pd, 1); - if (length == 0) - return per_get_few_bits(pd, 6); - - if (aper_get_align(pd) < 0) - return -1; - - length = per_get_few_bits(pd, 8); - /* the length is not likely to be that big */ - if (length > 4) - return -1; - value = 0; - if (per_get_many_bits(pd, (uint8_t *)&value, 0, length * 8) < 0) - return -1; - return value; - } - if (aper_get_align(pd) < 0) - return -1; - value = per_get_few_bits(pd, 8 * bytes); - return value; -} - -int aper_put_align(asn_per_outp_t *po) { - - if(po->nboff & 0x7) { - ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)po->nboff & 0x7)); - if(per_put_few_bits(po, 0x00, (8 - (po->nboff & 0x7)))) - return -1; - } - return 0; -} - -ssize_t -aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, int *need_eom) { - int constrained = (lb >= 0) && (ub >= 0); - int dummy = 0; - if(!need_eom) need_eom = &dummy; - - *need_eom = 0; - - - ASN_DEBUG("APER put length %zu with range (%zd..%zd)", n, lb, ub); - - /* 11.9 X.691 Note 2 */ - if (constrained && ub < 65536) { - int range = ub - lb + 1; - return aper_put_nsnnwn(po, range, n) ? -1 : (ssize_t)n; - } - - if (aper_put_align(po) < 0) - return -1; - - if(n <= 127) { /* #11.9.3.6 */ - return per_put_few_bits(po, n, 8) - ? -1 : (ssize_t)n; - } - else if(n < 16384) /* #11.9.3.7 */ - return per_put_few_bits(po, n|0x8000, 16) - ? -1 : (ssize_t)n; - - *need_eom = 0 == (n & 16383); - n >>= 14; - if(n > 4) { - *need_eom = 0; - n = 4; - } - - return per_put_few_bits(po, 0xC0 | n, 8) - ? -1 : (ssize_t)(n << 14); -} - - -int -aper_put_nslength(asn_per_outp_t *po, size_t length) { - - if(length <= 64) { - /* #11.9.3.4 */ - if(length == 0) return -1; - return per_put_few_bits(po, length-1, 7) ? -1 : 0; - } else { - if(aper_put_length(po, -1, -1, length, NULL) != (ssize_t)length) { - /* This might happen in case of >16K extensions */ - return -1; - } - } - - return 0; -} - -int -aper_put_nsnnwn(asn_per_outp_t *po, int range, int number) { - int bytes; - - ASN_DEBUG("aper put nsnnwn %d with range %d", number, range); - /* 10.5.7.1 X.691 */ - if(range < 0) { - int i; - for (i = 1; ; i++) { - int bits = 1 << (8 * i); - if (number <= bits) - break; - } - bytes = i; - assert(i <= 4); - } - if(range <= 255) { - int i; - for (i = 1; i <= 8; i++) { - int bits = 1 << i; - if (range <= bits) - break; - } - return per_put_few_bits(po, number, i); - } else if(range == 256) { - if (number >= range) - return -1; - bytes = 1; - } else if(range <= 65536) { - if (number >= range) - return -1; - bytes = 2; - } else { /* Ranges > 64K */ - int i; - for (i = 1; ; i++) { - int bits = 1 << (8 * i); - if (range <= bits) - break; - } - assert(i <= 4); - bytes = i; - } - if(aper_put_align(po) < 0) /* Aligning on octet */ - return -1; -/* if(per_put_few_bits(po, bytes, 8)) - return -1; -*/ - return per_put_few_bits(po, number, 8 * bytes); -} diff --git a/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c deleted file mode 100644 index ec952fc99..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_SEQUENCE_OF.c +++ /dev/null @@ -1,41 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -typedef A_SEQUENCE_OF(void) asn_sequence; - -void -asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { - asn_sequence *as = (asn_sequence *)asn_sequence_of_x; - - if(as) { - void *ptr; - int n; - - if(number < 0 || number >= as->count) - return; /* Nothing to delete */ - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - /* - * Shift all elements to the left to hide the gap. - */ - --as->count; - for(n = number; n < as->count; n++) - as->array[n] = as->array[n+1]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - diff --git a/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c b/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c deleted file mode 100644 index 944f2cb8a..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_SET_OF.c +++ /dev/null @@ -1,88 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Add another element into the set. - */ -int -asn_set_add(void *asn_set_of_x, void *ptr) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as == 0 || ptr == 0) { - errno = EINVAL; /* Invalid arguments */ - return -1; - } - - /* - * Make sure there's enough space to insert an element. - */ - if(as->count == as->size) { - int _newsize = as->size ? (as->size << 1) : 4; - void *_new_arr; - _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); - if(_new_arr) { - as->array = (void **)_new_arr; - as->size = _newsize; - } else { - /* ENOMEM */ - return -1; - } - } - - as->array[as->count++] = ptr; - - return 0; -} - -void -asn_set_del(void *asn_set_of_x, int number, int _do_free) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - void *ptr; - if(number < 0 || number >= as->count) - return; - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - as->array[number] = as->array[--as->count]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - -/* - * Free the contents of the set, do not free the set itself. - */ -void -asn_set_empty(void *asn_set_of_x) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - if(as->array) { - if(as->free) { - while(as->count--) - as->free(as->array[as->count]); - } - FREEMEM(as->array); - as->array = 0; - } - as->count = 0; - as->size = 0; - } - -} - diff --git a/src/tmx/Asn_J2735/src/2020/asn_application.c b/src/tmx/Asn_J2735/src/2020/asn_application.c deleted file mode 100644 index 7992185b5..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_application.c +++ /dev/null @@ -1,538 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, - const void *sptr, - asn_app_consume_bytes_f *callback, - void *callback_key); - - -struct callback_count_bytes_key { - asn_app_consume_bytes_f *callback; - void *callback_key; - size_t computed_size; -}; - -/* - * Encoder which just counts bytes that come through it. - */ -static int -callback_count_bytes_cb(const void *data, size_t size, void *keyp) { - struct callback_count_bytes_key *key = keyp; - int ret; - - ret = key->callback(data, size, key->callback_key); - if(ret >= 0) { - key->computed_size += size; - } - - return ret; -} - -struct overrun_encoder_key { - void *buffer; - size_t buffer_size; - size_t computed_size; -}; - -struct dynamic_encoder_key { - void *buffer; - size_t buffer_size; - size_t computed_size; -}; - -struct callback_failure_catch_key { - asn_app_consume_bytes_f *callback; - void *callback_key; - int callback_failed; -}; - -/* - * Encoder which doesn't stop counting bytes - * even if it reaches the end of the buffer. - */ -static int -overrun_encoder_cb(const void *data, size_t size, void *keyp) { - struct overrun_encoder_key *key = keyp; - - if(key->computed_size + size > key->buffer_size) { - /* - * Avoid accident on the next call: - * stop adding bytes to the buffer. - */ - key->buffer_size = 0; - } else { - memcpy((char *)key->buffer + key->computed_size, data, size); - } - key->computed_size += size; - - return 0; -} - -/* - * Encoder which dynamically allocates output, and continues - * to count even if allocation failed. - */ -static int -dynamic_encoder_cb(const void *data, size_t size, void *keyp) { - struct dynamic_encoder_key *key = keyp; - - if(key->buffer) { - if(key->computed_size + size >= key->buffer_size) { - void *p; - size_t new_size = key->buffer_size; - - do { - new_size *= 2; - } while(new_size <= key->computed_size + size); - - p = REALLOC(key->buffer, new_size); - if(p) { - key->buffer = p; - key->buffer_size = new_size; - } else { - FREEMEM(key->buffer); - key->buffer = 0; - key->buffer_size = 0; - key->computed_size += size; - return 0; - } - } - memcpy((char *)key->buffer + key->computed_size, data, size); - } - - key->computed_size += size; - - return 0; -} - -/* - * Encoder which help convert the application level encoder failure into EIO. - */ -static int -callback_failure_catch_cb(const void *data, size_t size, void *keyp) { - struct callback_failure_catch_key *key = keyp; - int ret; - - ret = key->callback(data, size, key->callback_key); - if(ret < 0) { - key->callback_failed = 1; - } - - return ret; -} - -asn_enc_rval_t -asn_encode(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, - const void *sptr, asn_app_consume_bytes_f *callback, void *callback_key) { - struct callback_failure_catch_key cb_key; - asn_enc_rval_t er = {0,0,0}; - - if(!callback) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - cb_key.callback = callback; - cb_key.callback_key = callback_key; - cb_key.callback_failed = 0; - - er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - callback_failure_catch_cb, &cb_key); - if(cb_key.callback_failed) { - assert(er.encoded == -1); - assert(errno == EBADF); - errno = EIO; - } - - return er; -} - -asn_enc_rval_t -asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr, - void *buffer, size_t buffer_size) { - struct overrun_encoder_key buf_key; - asn_enc_rval_t er = {0,0,0}; - - if(buffer_size > 0 && !buffer) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - buf_key.buffer = buffer; - buf_key.buffer_size = buffer_size; - buf_key.computed_size = 0; - - er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - overrun_encoder_cb, &buf_key); - - if(er.encoded >= 0 && (size_t)er.encoded != buf_key.computed_size) { - ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE - " yet produced %" ASN_PRI_SIZE " bytes", - er.encoded, buf_key.computed_size); - assert(er.encoded < 0 || (size_t)er.encoded == buf_key.computed_size); - } - - return er; -} - -asn_encode_to_new_buffer_result_t -asn_encode_to_new_buffer(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr) { - struct dynamic_encoder_key buf_key; - asn_encode_to_new_buffer_result_t res; - - buf_key.buffer_size = 16; - buf_key.buffer = MALLOC(buf_key.buffer_size); - buf_key.computed_size = 0; - - res.result = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - dynamic_encoder_cb, &buf_key); - - if(res.result.encoded >= 0 - && (size_t)res.result.encoded != buf_key.computed_size) { - ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE - " yet produced %" ASN_PRI_SIZE " bytes", - res.result.encoded, buf_key.computed_size); - assert(res.result.encoded < 0 - || (size_t)res.result.encoded == buf_key.computed_size); - } - - res.buffer = buf_key.buffer; - - /* 0-terminate just in case. */ - if(res.buffer) { - assert(buf_key.computed_size < buf_key.buffer_size); - ((char *)res.buffer)[buf_key.computed_size] = '\0'; - } - - return res; -} - -static asn_enc_rval_t -asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_consume_bytes_f *callback, void *callback_key) { - asn_enc_rval_t er = {0,0,0}; -#if !defined(ASN_DISABLE_XER_SUPPORT) - enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - - (void)opt_codec_ctx; /* Parameters are not checked on encode yet. */ - - if(!td || !sptr) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - switch(syntax) { - case ATS_NONSTANDARD_PLAINTEXT: - if(td->op->print_struct) { - struct callback_count_bytes_key cb_key; - cb_key.callback = callback; - cb_key.callback_key = callback_key; - cb_key.computed_size = 0; - if(td->op->print_struct(td, sptr, 1, callback_count_bytes_cb, - &cb_key) - < 0 - || callback_count_bytes_cb("\n", 1, &cb_key) < 0) { - errno = EBADF; /* Structure has incorrect form. */ - er.encoded = -1; - er.failed_type = td; - er.structure_ptr = sptr; - } else { - er.encoded = cb_key.computed_size; - er.failed_type = 0; - er.structure_ptr = 0; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - - case ATS_RANDOM: - errno = ENOENT; /* Randomization doesn't make sense on output. */ - ASN__ENCODE_FAILED; - -#if !defined(ASN_DISABLE_BER_SUPPORT) - case ATS_BER: - /* BER is a superset of DER. */ - /* Fall through. */ - case ATS_DER: - if(td->op->der_encoder) { - er = der_encode(td, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->der_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* DER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - case ATS_CER: - errno = ENOENT; /* Transfer syntax is not defined for any type. */ - ASN__ENCODE_FAILED; -#else - case ATS_BER: - case ATS_DER: - case ATS_CER: - errno = ENOENT; /* BER is not defined. */ - ASN__ENCODE_FAILED; - -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - -#if !defined(ASN_DISABLE_OER_SUPPORT) - case ATS_BASIC_OER: - /* CANONICAL-OER is a superset of BASIC-OER. */ - /* Fall through. */ - case ATS_CANONICAL_OER: - if(td->op->oer_encoder) { - er = oer_encode(td, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->oer_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* OER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#else - case ATS_BASIC_OER: - case ATS_CANONICAL_OER: - errno = ENOENT; /* OER is not defined. */ - ASN__ENCODE_FAILED; - break; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - -#if !defined(ASN_DISABLE_UPER_SUPPORT) - case ATS_UNALIGNED_BASIC_PER: - /* CANONICAL-UPER is a superset of BASIC-UPER. */ - /* Fall through. */ - case ATS_UNALIGNED_CANONICAL_PER: - if(td->op->uper_encoder) { - er = uper_encode(td, 0, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->uper_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* UPER is not defined for this type. */ - } - } else { - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - if(er.encoded == 0) { - /* Enforce "Complete Encoding" of X.691 #11.1 */ - if(callback("\0", 1, callback_key) < 0) { - errno = EBADF; - ASN__ENCODE_FAILED; - } - er.encoded = 8; /* Exactly 8 zero bits is added. */ - } - /* Convert bits into bytes */ - er.encoded = (er.encoded + 7) >> 3; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#else - case ATS_UNALIGNED_BASIC_PER: - case ATS_UNALIGNED_CANONICAL_PER: - errno = ENOENT; /* UPER is not defined. */ - ASN__ENCODE_FAILED; - break; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - case ATS_ALIGNED_BASIC_PER: - /* CANONICAL-APER is a superset of BASIC-APER. */ - /* Fall through. */ - case ATS_ALIGNED_CANONICAL_PER: - if(td->op->aper_encoder) { - er = aper_encode(td, 0, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->aper_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* APER is not defined for this type. */ - } - } else { - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - if(er.encoded == 0) { - /* Enforce "Complete Encoding" of X.691 #11.1 */ - if(callback("\0", 1, callback_key) < 0) { - errno = EBADF; - ASN__ENCODE_FAILED; - } - er.encoded = 8; /* Exactly 8 zero bits is added. */ - } - /* Convert bits into bytes */ - er.encoded = (er.encoded + 7) >> 3; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#else - case ATS_ALIGNED_BASIC_PER: - case ATS_ALIGNED_CANONICAL_PER: - errno = ENOENT; /* APER is not defined. */ - ASN__ENCODE_FAILED; - break; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - -#if !defined(ASN_DISABLE_XER_SUPPORT) - case ATS_BASIC_XER: - /* CANONICAL-XER is a superset of BASIC-XER. */ - xer_flags &= ~XER_F_CANONICAL; - xer_flags |= XER_F_BASIC; - /* Fall through. */ - case ATS_CANONICAL_XER: - if(td->op->xer_encoder) { - er = xer_encode(td, sptr, xer_flags, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->xer_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* XER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#else - case ATS_BASIC_XER: - case ATS_CANONICAL_XER: - errno = ENOENT; /* XER is not defined. */ - ASN__ENCODE_FAILED; - break; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - -#if !defined(ASN_DISABLE_JER_SUPPORT) - case ATS_JER: - if(td->op->jer_encoder) { - er = jer_encode(td, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->jer_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* JER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ - default: - errno = ENOENT; - ASN__ENCODE_FAILED; - } - - return er; -} - -asn_dec_rval_t -asn_decode(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, - void **sptr, const void *buffer, size_t size) { - if(!td || !td->op || !sptr || (size && !buffer)) { - ASN__DECODE_FAILED; - } - - switch(syntax) { - case ATS_CER: - case ATS_NONSTANDARD_PLAINTEXT: - default: - errno = ENOENT; - ASN__DECODE_FAILED; - - case ATS_RANDOM: -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - if(!td->op->random_fill) { - ASN__DECODE_FAILED; - } else { - if(asn_random_fill(td, sptr, 16000) == 0) { - asn_dec_rval_t ret = {RC_OK, 0}; - return ret; - } else { - ASN__DECODE_FAILED; - } - } - break; -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - - case ATS_DER: - case ATS_BER: -#if !defined(ASN_DISABLE_BER_SUPPORT) - return ber_decode(opt_codec_ctx, td, sptr, buffer, size); -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ - - case ATS_BASIC_OER: - case ATS_CANONICAL_OER: -#if !defined(ASN_DISABLE_OER_SUPPORT) - return oer_decode(opt_codec_ctx, td, sptr, buffer, size); -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ - - case ATS_UNALIGNED_BASIC_PER: - case ATS_UNALIGNED_CANONICAL_PER: -#if !defined(ASN_DISABLE_UPER_SUPPORT) - return uper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ - - case ATS_ALIGNED_BASIC_PER: - case ATS_ALIGNED_CANONICAL_PER: -#if !defined(ASN_DISABLE_APER_SUPPORT) - return aper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - - case ATS_BASIC_XER: - case ATS_CANONICAL_XER: -#if !defined(ASN_DISABLE_XER_SUPPORT) - return xer_decode(opt_codec_ctx, td, sptr, buffer, size); -#else - errno = ENOENT; - ASN__DECODE_FAILED; -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ - } -} - diff --git a/src/tmx/Asn_J2735/src/2020/asn_bit_data.c b/src/tmx/Asn_J2735/src/2020/asn_bit_data.c deleted file mode 100644 index fe4b89ba7..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_bit_data.c +++ /dev/null @@ -1,333 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Create a contiguous non-refillable bit data structure. - * Can be freed by FREEMEM(). - */ -asn_bit_data_t * -asn_bit_data_new_contiguous(const void *data, size_t size_bits) { - size_t size_bytes = (size_bits + 7) / 8; - asn_bit_data_t *pd; - uint8_t *bytes; - - /* Get the extensions map */ - pd = CALLOC(1, sizeof(*pd) + size_bytes + 1); - if(!pd) { - return NULL; - } - bytes = (void *)(((char *)pd) + sizeof(*pd)); - memcpy(bytes, data, size_bytes); - bytes[size_bytes] = 0; - pd->buffer = bytes; - pd->nboff = 0; - pd->nbits = size_bits; - - return pd; -} - - -char * -asn_bit_data_string(asn_bit_data_t *pd) { - static char buf[2][32]; - static int n; - n = (n+1) % 2; - snprintf(buf[n], sizeof(buf[n]), - "{m=%" ASN_PRI_SIZE " span %" ASN_PRI_SIZE "[%" ASN_PRI_SIZE - "..%" ASN_PRI_SIZE "] (%" ASN_PRI_SIZE ")}", - pd->moved, ((uintptr_t)(pd->buffer) & 0xf), pd->nboff, pd->nbits, - pd->nbits - pd->nboff); - return buf[n]; -} - -void -asn_get_undo(asn_bit_data_t *pd, int nbits) { - if((ssize_t)pd->nboff < nbits) { - assert((ssize_t)pd->nboff < nbits); - } else { - pd->nboff -= nbits; - pd->moved -= nbits; - } -} - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - */ -int32_t -asn_get_few_bits(asn_bit_data_t *pd, int nbits) { - size_t off; /* Next after last bit offset */ - ssize_t nleft; /* Number of bits left in this stream */ - uint32_t accum; - const uint8_t *buf; - - if(nbits < 0) - return -1; - - nleft = pd->nbits - pd->nboff; - if(nbits > nleft) { - int32_t tailv, vhead; - if(!pd->refill || nbits > 31) return -1; - /* Accumulate unused bytes before refill */ - ASN_DEBUG("Obtain the rest %d bits (want %d)", - (int)nleft, (int)nbits); - tailv = asn_get_few_bits(pd, nleft); - if(tailv < 0) return -1; - /* Refill (replace pd contents with new data) */ - if(pd->refill(pd)) - return -1; - nbits -= nleft; - vhead = asn_get_few_bits(pd, nbits); - /* Combine the rest of previous pd with the head of new one */ - tailv = (tailv << nbits) | vhead; /* Could == -1 */ - return tailv; - } - - /* - * Normalize position indicator. - */ - if(pd->nboff >= 8) { - pd->buffer += (pd->nboff >> 3); - pd->nbits -= (pd->nboff & ~0x07); - pd->nboff &= 0x07; - } - pd->moved += nbits; - pd->nboff += nbits; - off = pd->nboff; - buf = pd->buffer; - - /* - * Extract specified number of bits. - */ - if(off <= 8) - accum = nbits ? (buf[0]) >> (8 - off) : 0; - else if(off <= 16) - accum = ((buf[0] << 8) + buf[1]) >> (16 - off); - else if(off <= 24) - accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); - else if(off <= 31) - accum = (((uint32_t)buf[0] << 24) + (buf[1] << 16) - + (buf[2] << 8) + (buf[3])) >> (32 - off); - else if(nbits <= 31) { - asn_bit_data_t tpd = *pd; - /* Here are we with our 31-bits limit plus 1..7 bits offset. */ - asn_get_undo(&tpd, nbits); - /* The number of available bits in the stream allow - * for the following operations to take place without - * invoking the ->refill() function */ - accum = asn_get_few_bits(&tpd, nbits - 24) << 24; - accum |= asn_get_few_bits(&tpd, 24); - } else { - asn_get_undo(pd, nbits); - return -1; - } - - accum &= (((uint32_t)1 << nbits) - 1); - - ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", - (int)nbits, (int)nleft, - (int)pd->moved, - (((long)pd->buffer) & 0xf), - (int)pd->nboff, (int)pd->nbits, - ((pd->buffer != NULL)?pd->buffer[0]:0), - (int)(pd->nbits - pd->nboff), - (int)accum); - - return accum; -} - -/* - * Extract a large number of bits from the specified PER data pointer. - */ -int -asn_get_many_bits(asn_bit_data_t *pd, uint8_t *dst, int alright, int nbits) { - int32_t value; - - if(alright && (nbits & 7)) { - /* Perform right alignment of a first few bits */ - value = asn_get_few_bits(pd, nbits & 0x07); - if(value < 0) return -1; - *dst++ = value; /* value is already right-aligned */ - nbits &= ~7; - } - - while(nbits) { - if(nbits >= 24) { - value = asn_get_few_bits(pd, 24); - if(value < 0) return -1; - *(dst++) = value >> 16; - *(dst++) = value >> 8; - *(dst++) = value; - nbits -= 24; - } else { - value = asn_get_few_bits(pd, nbits); - if(value < 0) return -1; - if(nbits & 7) { /* implies left alignment */ - value <<= 8 - (nbits & 7), - nbits += 8 - (nbits & 7); - if(nbits > 24) - *dst++ = value >> 24; - } - if(nbits > 16) - *dst++ = value >> 16; - if(nbits > 8) - *dst++ = value >> 8; - *dst++ = value; - break; - } - } - - return 0; -} - -/* - * Put a small number of bits (<= 31). - */ -int -asn_put_few_bits(asn_bit_outp_t *po, uint32_t bits, int obits) { - size_t off; /* Next after last bit offset */ - size_t omsk; /* Existing last byte meaningful bits mask */ - uint8_t *buf; - - if(obits <= 0 || obits >= 32) return obits ? -1 : 0; - - ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", - obits, (int)bits, (void *)po->buffer, (int)po->nboff); - - /* - * Normalize position indicator. - */ - if(po->nboff >= 8) { - po->buffer += (po->nboff >> 3); - po->nbits -= (po->nboff & ~0x07); - po->nboff &= 0x07; - } - - /* - * Flush whole-bytes output, if necessary. - */ - if(po->nboff + obits > po->nbits) { - size_t complete_bytes; - if(!po->buffer) po->buffer = po->tmpspace; - complete_bytes = (po->buffer - po->tmpspace); - ASN_DEBUG("[PER output %ld complete + %ld]", - (long)complete_bytes, (long)po->flushed_bytes); - if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) - return -1; - if(po->nboff) - po->tmpspace[0] = po->buffer[0]; - po->buffer = po->tmpspace; - po->nbits = 8 * sizeof(po->tmpspace); - po->flushed_bytes += complete_bytes; - } - - /* - * Now, due to sizeof(tmpspace), we are guaranteed large enough space. - */ - buf = po->buffer; - omsk = ~((1 << (8 - po->nboff)) - 1); - off = (po->nboff + obits); - - /* Clear data of debris before meaningful bits */ - bits &= (((uint32_t)1 << obits) - 1); - - ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, - (int)bits, (int)bits, - (int)po->nboff, (int)off, - buf[0], (int)(omsk&0xff), - (int)(buf[0] & omsk)); - - if(off <= 8) /* Completely within 1 byte */ - po->nboff = off, - bits <<= (8 - off), - buf[0] = (buf[0] & omsk) | bits; - else if(off <= 16) - po->nboff = off, - bits <<= (16 - off), - buf[0] = (buf[0] & omsk) | (bits >> 8), - buf[1] = bits; - else if(off <= 24) - po->nboff = off, - bits <<= (24 - off), - buf[0] = (buf[0] & omsk) | (bits >> 16), - buf[1] = bits >> 8, - buf[2] = bits; - else if(off <= 31) - po->nboff = off, - bits <<= (32 - off), - buf[0] = (buf[0] & omsk) | (bits >> 24), - buf[1] = bits >> 16, - buf[2] = bits >> 8, - buf[3] = bits; - else { - if(asn_put_few_bits(po, bits >> (obits - 24), 24)) return -1; - if(asn_put_few_bits(po, bits, obits - 24)) return -1; - } - - ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", - (int)bits, (int)bits, buf[0], - (long)(po->buffer - po->tmpspace)); - - return 0; -} - - -/* - * Output a large number of bits. - */ -int -asn_put_many_bits(asn_bit_outp_t *po, const uint8_t *src, int nbits) { - - while(nbits) { - uint32_t value; - - if(nbits >= 24) { - value = (src[0] << 16) | (src[1] << 8) | src[2]; - src += 3; - nbits -= 24; - if(asn_put_few_bits(po, value, 24)) - return -1; - } else { - value = src[0]; - if(nbits > 8) - value = (value << 8) | src[1]; - if(nbits > 16) - value = (value << 8) | src[2]; - if(nbits & 0x07) - value >>= (8 - (nbits & 0x07)); - if(asn_put_few_bits(po, value, nbits)) - return -1; - break; - } - } - - return 0; -} - - -int -asn_put_aligned_flush(asn_bit_outp_t *po) { - uint32_t unused_bits = (0x7 & (8 - (po->nboff & 0x07))); - size_t complete_bytes = - (po->buffer ? po->buffer - po->tmpspace : 0) + ((po->nboff + 7) >> 3); - - if(unused_bits) { - po->buffer[po->nboff >> 3] &= ~0u << unused_bits; - } - - if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) { - return -1; - } else { - po->buffer = po->tmpspace; - po->nboff = 0; - po->nbits = 8 * sizeof(po->tmpspace); - po->flushed_bytes += complete_bytes; - return 0; - } -} - diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c deleted file mode 100644 index f3fdbfd2b..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim.c +++ /dev/null @@ -1,31 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -void -ASN__PRIMITIVE_TYPE_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as a primitive type", td->name); - - if(st->buf) - FREEMEM(st->buf); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(sptr, 0, sizeof(ASN__PRIMITIVE_TYPE_t)); - break; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c deleted file mode 100644 index c5c2cef65..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_ber.c +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Decode an always-primitive type. - */ -asn_dec_rval_t -ber_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buf_ptr, size_t size, int tag_mode) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; - asn_dec_rval_t rval; - ber_tlv_len_t length = 0; /* =0 to avoid [incorrect] warning. */ - - /* - * If the structure is not there, allocate it. - */ - if(st == NULL) { - st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); - if(st == NULL) ASN__DECODE_FAILED; - *sptr = (void *)st; - } - - ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", - td->name, tag_mode); - - /* - * Check tags and extract value length. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - st->size = (int)length; - /* The following better be optimized away. */ - if(sizeof(st->size) != sizeof(length) - && (ber_tlv_len_t)st->size != length) { - st->size = 0; - ASN__DECODE_FAILED; - } - - st->buf = (uint8_t *)MALLOC(length + 1); - if(!st->buf) { - st->size = 0; - ASN__DECODE_FAILED; - } - - memcpy(st->buf, buf_ptr, length); - st->buf[length] = '\0'; /* Just in case */ - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s", - (long)rval.consumed, - (long)length, td->name); - - return rval; -} - -/* - * Encode an always-primitive type using DER. - */ -asn_enc_rval_t -der_encode_primitive(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; - - ASN_DEBUG("%s %s as a primitive type (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, - cb, app_key); - ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb && st->buf) { - if(cb(st->buf, st->size, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } else { - assert(st->buf || st->size == 0); - } - - erval.encoded += st->size; - ASN__ENCODED_OK(erval); -} diff --git a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c b/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c deleted file mode 100644 index 70c91bc26..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_codecs_prim_xer.c +++ /dev/null @@ -1,184 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Local internal type passed around as an argument. - */ -struct xdp_arg_s { - const asn_TYPE_descriptor_t *type_descriptor; - void *struct_key; - xer_primitive_body_decoder_f *prim_body_decoder; - int decoded_something; - int want_more; -}; - -/* - * Since some kinds of primitive values can be encoded using value-specific - * tags (, , etc), the primitive decoder must - * be supplied with such tags to parse them as needed. - */ -static int -xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - - /* - * The chunk_buf is guaranteed to start at '<'. - */ - assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); - - /* - * Decoding was performed once already. Prohibit doing it again. - */ - if(arg->decoded_something) - return -1; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, - chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return 0; - } - - return -1; -} - -static ssize_t -xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - size_t lead_wsp_size; - - if(arg->decoded_something) { - if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { - /* - * Example: - * "123 " - * ^- chunk_buf position. - */ - return chunk_size; - } - /* - * Decoding was done once already. Prohibit doing it again. - */ - return -1; - } - - if(!have_more) { - /* - * If we've received something like "1", we can't really - * tell whether it is really `1` or `123`, until we know - * that there is no more data coming. - * The have_more argument will be set to 1 once something - * like this is available to the caller of this callback: - * "1want_more = 1; - return -1; - } - - lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); - chunk_buf = (chunk_buf == NULL)? NULL : ((const char *)chunk_buf + lead_wsp_size); - chunk_size -= lead_wsp_size; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, - chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return lead_wsp_size + chunk_size; - } - - return -1; -} - -asn_dec_rval_t -xer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - size_t struct_size, const char *opt_mname, - const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder) { - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t s_ctx; - struct xdp_arg_s s_arg; - asn_dec_rval_t rc; - - /* - * Create the structure if does not exist. - */ - if(!*sptr) { - *sptr = CALLOC(1, struct_size); - if(!*sptr) ASN__DECODE_FAILED; - } - - memset(&s_ctx, 0, sizeof(s_ctx)); - s_arg.type_descriptor = td; - s_arg.struct_key = *sptr; - s_arg.prim_body_decoder = prim_body_decoder; - s_arg.decoded_something = 0; - s_arg.want_more = 0; - - rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, - xml_tag, buf_ptr, size, - xer_decode__unexpected_tag, - xer_decode__primitive_body); - switch(rc.code) { - case RC_OK: - if(!s_arg.decoded_something) { - char ch; - ASN_DEBUG("Primitive body is not recognized, " - "supplying empty one"); - /* - * Decoding opportunity has come and gone. - * Where's the result? - * Try to feed with empty body, see if it eats it. - */ - if(prim_body_decoder(s_arg.type_descriptor, - s_arg.struct_key, &ch, 0) - != XPBD_BODY_CONSUMED) { - /* - * This decoder does not like empty stuff. - */ - ASN__DECODE_FAILED; - } - } - break; - case RC_WMORE: - /* - * Redo the whole thing later. - * We don't have a context to save intermediate parsing state. - */ - rc.consumed = 0; - break; - case RC_FAIL: - rc.consumed = 0; - if(s_arg.want_more) - rc.code = RC_WMORE; - else - ASN__DECODE_FAILED; - break; - } - return rc; -} diff --git a/src/tmx/Asn_J2735/src/2020/asn_internal.c b/src/tmx/Asn_J2735/src/2020/asn_internal.c deleted file mode 100644 index c2a8108e7..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_internal.c +++ /dev/null @@ -1,48 +0,0 @@ -#include - -ssize_t -asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, - const char *fmt, ...) { - char scratch[64]; - char *buf = scratch; - size_t buf_size = sizeof(scratch); - int wrote; - int cb_ret; - - do { - va_list args; - va_start(args, fmt); - - wrote = vsnprintf(buf, buf_size, fmt, args); - va_end(args); - if(wrote < (ssize_t)buf_size) { - if(wrote < 0) { - if(buf != scratch) FREEMEM(buf); - return -1; - } - break; - } - - buf_size <<= 1; - if(buf == scratch) { - buf = MALLOC(buf_size); - if(!buf) return -1; - } else { - void *p = REALLOC(buf, buf_size); - if(!p) { - FREEMEM(buf); - return -1; - } - buf = p; - } - } while(1); - - cb_ret = cb(buf, wrote, key); - if(buf != scratch) FREEMEM(buf); - if(cb_ret < 0) { - return -1; - } - - return wrote; -} - diff --git a/src/tmx/Asn_J2735/src/2020/asn_random_fill.c b/src/tmx/Asn_J2735/src/2020/asn_random_fill.c deleted file mode 100644 index 15771b6c7..000000000 --- a/src/tmx/Asn_J2735/src/2020/asn_random_fill.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -int -asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - size_t length) { - - if(td && td->op->random_fill) { - asn_random_fill_result_t res = - td->op->random_fill(td, struct_ptr, 0, length); - return (res.code == ARFILL_OK) ? 0 : -1; - } else { - return -1; - } -} - -static uintmax_t -asn__intmax_range(intmax_t lb, intmax_t ub) { - assert(lb <= ub); - if((ub < 0) == (lb < 0)) { - return ub - lb; - } else if(lb < 0) { - return 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); - } else { - assert(!"Unreachable"); - return 0; - } -} - -intmax_t -asn_random_between(intmax_t lb, intmax_t rb) { - if(lb == rb) { - return lb; - } else { - const uintmax_t intmax_max = ((~(uintmax_t)0) >> 1); - uintmax_t range = asn__intmax_range(lb, rb); - uintmax_t value = 0; - uintmax_t got_entropy = 0; - (void)intmax_max; - int max = 0xffffff; - -#ifdef __WIN32__ - max = RAND_MAX-1; -#endif - - assert(RAND_MAX > max); /* Seen 7ffffffd! */ - assert(range < intmax_max); - - for(; got_entropy < range;) { - got_entropy = (got_entropy << 24) | max; -#ifdef HAVE_RANDOM - value = (value << 24) | (random() % max); -#else - value = (value << 24) | (rand() % max); -#endif - } - - return lb + (intmax_t)(value % (range + 1)); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/ber_decoder.c b/src/tmx/Asn_J2735/src/2020/ber_decoder.c deleted file mode 100644 index 75d601695..000000000 --- a/src/tmx/Asn_J2735/src/2020/ber_decoder.c +++ /dev/null @@ -1,283 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) -#undef RETURN -#define RETURN(_code) do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - if(opt_ctx) opt_ctx->step = step; /* Save context */ \ - if(_code == RC_OK || opt_ctx) \ - rval.consumed = consumed_myself; \ - else \ - rval.consumed = 0; /* Context-free */ \ - return rval; \ - } while(0) - -/* - * The BER decoder of any type. - */ -asn_dec_rval_t -ber_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - const void *ptr, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return type_descriptor->op->ber_decoder(opt_codec_ctx, type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - ptr, size, /* Buffer and its size */ - 0 /* Default tag mode is 0 */ - ); -} - -/* - * Check the set of >> tags matches the definition. - */ -asn_dec_rval_t -ber_check_tags(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, - const void *ptr, size_t size, int tag_mode, int last_tag_form, - ber_tlv_len_t *last_length, int *opt_tlv_form) { - ssize_t consumed_myself = 0; - ssize_t tag_len; - ssize_t len_len; - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_len_t limit_len = -1; - int expect_00_terminators = 0; - int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ - int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ - int tagno; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - RETURN(RC_FAIL); - - /* - * So what does all this implicit skip stuff mean? - * Imagine two types, - * A ::= [5] IMPLICIT T - * B ::= [2] EXPLICIT T - * Where T is defined as - * T ::= [4] IMPLICIT SEQUENCE { ... } - * - * Let's say, we are starting to decode type A, given the - * following TLV stream: <5> <0>. What does this mean? - * It means that the type A contains type T which is, - * in turn, empty. - * Remember though, that we are still in A. We cannot - * just pass control to the type T decoder. Why? Because - * the type T decoder expects <4> <0>, not <5> <0>. - * So, we must make sure we are going to receive <5> while - * still in A, then pass control to the T decoder, indicating - * that the tag <4> was implicitly skipped. The decoder of T - * hence will be prepared to treat <4> as valid tag, and decode - * it appropriately. - */ - - tagno = step /* Continuing where left previously */ - + (tag_mode==1?-1:0) - ; - ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", - td->name, (long)size, tag_mode, step, tagno); - /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ - - if(tag_mode == 0 && tagno == (int)td->tags_count) { - /* - * This must be the _untagged_ ANY type, - * which outermost tag isn't known in advance. - * Fetch the tag and length separately. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - ASN_DEBUG("Advancing %ld in ANY case", - (long)(tag_len + len_len)); - ADVANCE(tag_len + len_len); - } else { - assert(tagno < (int)td->tags_count); /* At least one loop */ - } - for((void)tagno; tagno < (int)td->tags_count; tagno++, step++) { - - /* - * Fetch and process T from TLV. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - ASN_DEBUG("Fetching tag from {%p,%ld}: " - "len %ld, step %d, tagno %d got %s", - ptr, (long)size, - (long)tag_len, step, tagno, - ber_tlv_tag_string(tlv_tag)); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - - /* - * If {I}, don't check anything. - * If {I,B,C}, check B and C unless we're at I. - */ - if(tag_mode != 0 && step == 0) { - /* - * We don't expect tag to match here. - * It's just because we don't know how the tag - * is supposed to look like. - */ - } else { - assert(tagno >= 0); /* Guaranteed by the code above */ - if(tlv_tag != td->tags[tagno]) { - /* - * Unexpected tag. Too bad. - */ - ASN_DEBUG("Expected: %s, " - "expectation failed (tn=%d, tm=%d)", - ber_tlv_tag_string(td->tags[tagno]), - tagno, tag_mode - ); - RETURN(RC_FAIL); - } - } - - /* - * Attention: if there are more tags expected, - * ensure that the current tag is presented - * in constructed form (it contains other tags!). - * If this one is the last one, check that the tag form - * matches the one given in descriptor. - */ - if(tagno < ((int)td->tags_count - 1)) { - if(tlv_constr == 0) { - ASN_DEBUG("tlv_constr = %d, expfail", - tlv_constr); - RETURN(RC_FAIL); - } - } else { - if(last_tag_form != tlv_constr - && last_tag_form != -1) { - ASN_DEBUG("last_tag_form %d != %d", - last_tag_form, tlv_constr); - RETURN(RC_FAIL); - } - } - - /* - * Fetch and process L from TLV. - */ - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - ASN_DEBUG("Fetching len = %ld", (long)len_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - /* - * FIXME - * As of today, the chain of tags - * must either contain several indefinite length TLVs, - * or several definite length ones. - * No mixing is allowed. - */ - if(tlv_len == -1) { - /* - * Indefinite length. - */ - if(limit_len == -1) { - expect_00_terminators++; - } else { - ASN_DEBUG("Unexpected indefinite length " - "in a chain of definite lengths"); - RETURN(RC_FAIL); - } - ADVANCE(tag_len + len_len); - continue; - } else { - if(expect_00_terminators) { - ASN_DEBUG("Unexpected definite length " - "in a chain of indefinite lengths"); - RETURN(RC_FAIL); - } - } - - /* - * Check that multiple TLVs specify ever decreasing length, - * which is consistent. - */ - if(limit_len == -1) { - limit_len = tlv_len + tag_len + len_len; - if(limit_len < 0) { - /* Too great tlv_len value? */ - RETURN(RC_FAIL); - } - } else if(limit_len != tlv_len + tag_len + len_len) { - /* - * Inner TLV specifies length which is inconsistent - * with the outer TLV's length value. - */ - ASN_DEBUG("Outer TLV is %ld and inner is %ld", - (long)limit_len, (long)tlv_len); - RETURN(RC_FAIL); - } - - ADVANCE(tag_len + len_len); - - limit_len -= (tag_len + len_len); - if((ssize_t)size > limit_len) { - /* - * Make sure that we won't consume more bytes - * from the parent frame than the inferred limit. - */ - size = limit_len; - } - } - - if(opt_tlv_form) - *opt_tlv_form = tlv_constr; - if(expect_00_terminators) - *last_length = -expect_00_terminators; - else - *last_length = tlv_len; - - RETURN(RC_OK); -} diff --git a/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c b/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c deleted file mode 100644 index 0a0deec1a..000000000 --- a/src/tmx/Asn_J2735/src/2020/ber_tlv_length.c +++ /dev/null @@ -1,168 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r) { - const uint8_t *buf = (const uint8_t *)bufptr; - unsigned oct; - - if(size == 0) - return 0; /* Want more */ - - oct = *(const uint8_t *)buf; - if((oct & 0x80) == 0) { - /* - * Short definite length. - */ - *len_r = oct; /* & 0x7F */ - return 1; - } else { - ber_tlv_len_t len; - size_t skipped; - - if(_is_constructed && oct == 0x80) { - *len_r = -1; /* Indefinite length */ - return 1; - } - - if(oct == 0xff) { - /* Reserved in standard for future use. */ - return -1; - } - - oct &= 0x7F; /* Leave only the 7 LS bits */ - for(len = 0, buf++, skipped = 1; - oct && (++skipped <= size); buf++, oct--) { - - /* Verify that we won't overflow. */ - if(!(len >> ((8 * sizeof(len)) - (8+1)))) { - len = (len << 8) | *buf; - } else { - /* Too large length value. */ - return -1; - } - } - - if(oct == 0) { - if(len < 0 || len > RSSIZE_MAX) { - /* Length value out of sane range. */ - return -1; - } - - *len_r = len; - return skipped; - } - - return 0; /* Want more */ - } - -} - -ssize_t -ber_skip_length(const asn_codec_ctx_t *opt_codec_ctx, - int _is_constructed, const void *ptr, size_t size) { - ber_tlv_len_t vlen; /* Length of V in TLV */ - ssize_t tl; /* Length of L in TLV */ - ssize_t ll; /* Length of L in TLV */ - size_t skip; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - return -1; - - /* - * Determine the size of L in TLV. - */ - ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); - if(ll <= 0) return ll; - - /* - * Definite length. - */ - if(vlen >= 0) { - skip = ll + vlen; - if(skip > size) - return 0; /* Want more */ - return skip; - } - - /* - * Indefinite length! - */ - ASN_DEBUG("Skipping indefinite length"); - for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { - ber_tlv_tag_t tag; - - /* Fetch the tag */ - tl = ber_fetch_tag(ptr, size, &tag); - if(tl <= 0) return tl; - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - ((const char *)ptr) + tl, size - tl); - if(ll <= 0) return ll; - - skip += tl + ll; - - /* - * This may be the end of the indefinite length structure, - * two consecutive 0 octets. - * Check if it is true. - */ - if(((const uint8_t *)ptr)[0] == 0 - && ((const uint8_t *)ptr)[1] == 0) - return skip; - - ptr = ((const char *)ptr) + tl + ll; - size -= tl + ll; - } - - /* UNREACHABLE */ -} - -size_t -der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { - size_t required_size; /* Size of len encoding */ - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - int i; - - if(len <= 127) { - /* Encoded in 1 octet */ - if(size) *buf = (uint8_t)len; - return 1; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 8; i < 8 * (int)sizeof(len); i += 8) { - if(len >> i) - required_size++; - else - break; - } - - if(size <= required_size) - return required_size + 1; - - *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ - - /* - * Produce the len encoding, space permitting. - */ - end = buf + required_size; - for(i -= 8; buf < end; i -= 8, buf++) - *buf = (uint8_t)(len >> i); - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c deleted file mode 100644 index 64ec14f07..000000000 --- a/src/tmx/Asn_J2735/src/2020/ber_tlv_tag.c +++ /dev/null @@ -1,144 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { - ber_tlv_tag_t val; - ber_tlv_tag_t tclass; - size_t skipped; - - if(size == 0) - return 0; - - val = *(const uint8_t *)ptr; - tclass = (val >> 6); - if((val &= 0x1F) != 0x1F) { - /* - * Simple form: everything encoded in a single octet. - * Tag Class is encoded using two least significant bits. - */ - *tag_r = (val << 2) | tclass; - return 1; - } - - /* - * Each octet contains 7 bits of useful information. - * The MSB is 0 if it is the last octet of the tag. - */ - for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; - skipped <= size; - ptr = ((const char *)ptr) + 1, skipped++) { - unsigned int oct = *(const uint8_t *)ptr; - if(oct & 0x80) { - val = (val << 7) | (oct & 0x7F); - /* - * Make sure there are at least 9 bits spare - * at the MS side of a value. - */ - if(val >> ((8 * sizeof(val)) - 9)) { - /* - * We would not be able to accommodate - * any more tag bits. - */ - return -1; - } - } else { - val = (val << 7) | oct; - *tag_r = (val << 2) | tclass; - return skipped; - } - } - - return 0; /* Want more */ -} - - -ssize_t -ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { - char buf[sizeof("[APPLICATION ]") + 32]; - ssize_t ret; - - ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - if(ret >= (ssize_t)sizeof(buf) || ret < 2) { - errno = EPERM; - return -1; - } - - return fwrite(buf, 1, ret, f); -} - -ssize_t -ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { - const char *type = 0; - int ret; - - switch(tag & 0x3) { - case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; - case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; - case ASN_TAG_CLASS_CONTEXT: type = ""; break; - case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; - } - - ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); - if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ - - return ret; -} - -char * -ber_tlv_tag_string(ber_tlv_tag_t tag) { - static char buf[sizeof("[APPLICATION ]") + 32]; - - (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - - return buf; -} - - -size_t -ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { - int tclass = BER_TAG_CLASS(tag); - ber_tlv_tag_t tval = BER_TAG_VALUE(tag); - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - size_t required_size; - size_t i; - - if(tval <= 30) { - /* Encoded in 1 octet */ - if(size) buf[0] = (tclass << 6) | tval; - return 1; - } else if(size) { - *buf++ = (tclass << 6) | 0x1F; - size--; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { - if(tval >> i) - required_size++; - else - break; - } - - if(size < required_size) - return required_size + 1; - - /* - * Fill in the buffer, space permitting. - */ - end = buf + required_size - 1; - for(i -= 7; buf < end; i -= 7, buf++) - *buf = 0x80 | ((tval >> i) & 0x7F); - *buf = (tval & 0x7F); /* Last octet without high bit */ - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c deleted file mode 100644 index 5f52e3d8b..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE.c +++ /dev/null @@ -1,358 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_TYPE_operation_t asn_OP_CHOICE = { - CHOICE_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - CHOICE_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - CHOICE_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - CHOICE_decode_ber, - CHOICE_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - CHOICE_decode_xer, - CHOICE_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - CHOICE_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - CHOICE_decode_oer, - CHOICE_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - CHOICE_decode_uper, - CHOICE_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - CHOICE_decode_aper, - CHOICE_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - CHOICE_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - CHOICE_outmost_tag -}; - -ber_tlv_tag_t -CHOICE_outmost_tag(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - assert(tag_mode == 0); (void)tag_mode; - assert(tag == 0); (void)tag; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - if(present > 0 && present <= td->elements_count) { - const asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *) - ((const char *)ptr + elm->memb_offset); - } else { - memb_ptr = (const void *) - ((const char *)ptr + elm->memb_offset); - } - - return asn_TYPE_outmost_tag(elm->type, memb_ptr, - elm->tag_mode, elm->tag); - } else { - return (ber_tlv_tag_t)-1; - } -} - -/* - * See the definitions. - */ -static const void *_get_member_ptr(const asn_TYPE_descriptor_t *, - const void *sptr, asn_TYPE_member_t **elm, - unsigned *present); - -int -CHOICE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - return 0; - ASN__CTFAIL(app_key, td, sptr, - "%s: mandatory CHOICE element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(elm->encoding_constraints.general_constraints) { - return elm->encoding_constraints.general_constraints(elm->type, memb_ptr, - ctfailcb, app_key); - } else { - return elm->type->encoding_constraints.general_constraints(elm->type, - memb_ptr, ctfailcb, app_key); - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: no CHOICE element given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -void -CHOICE_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as CHOICE", td->name); - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - /* - * Free that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)ptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)ptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, specs->struct_size); - break; - } -} - - -/* - * The following functions functions offer protection against -fshort-enums, - * compatible with little- and big-endian machines. - * If assertion is triggered, either disable -fshort-enums, or add an entry - * here with the ->pres_size of your target stracture. - * Unless the target structure is packed, the ".present" member - * is guaranteed to be aligned properly. ASN.1 compiler itself does not - * produce packed code. - */ -unsigned -_fetch_present_idx(const void *struct_ptr, unsigned pres_offset, - unsigned pres_size) { - const void *present_ptr; - unsigned present; - - present_ptr = ((const char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): present = *(const unsigned int *)present_ptr; break; - case sizeof(short): present = *(const unsigned short *)present_ptr; break; - case sizeof(char): present = *(const unsigned char *)present_ptr; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - return 0; /* If not aborted, pass back safe value */ - } - - return present; -} - -void -_set_present_idx(void *struct_ptr, unsigned pres_offset, unsigned pres_size, - unsigned present) { - void *present_ptr; - present_ptr = ((char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): *(unsigned int *)present_ptr = present; break; - case sizeof(short): *(unsigned short *)present_ptr = present; break; - case sizeof(char): *(unsigned char *)present_ptr = present; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - } -} - -static const void * -_get_member_ptr(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_TYPE_member_t **elm_ptr, unsigned *present_out) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) { - *elm_ptr = NULL; - *present_out = 0; - return NULL; - } - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - *present_out = present; - - /* - * The presence index is intentionally 1-based to avoid - * treating zeroed structure as a valid one. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *const elm = &td->elements[present - 1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - *elm_ptr = elm; - return memb_ptr; - } else { - *elm_ptr = NULL; - return NULL; - } - -} - -int -CHOICE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { - asn_TYPE_member_t *aelm; - asn_TYPE_member_t *belm; - unsigned apresent = 0; - unsigned bpresent = 0; - const void *amember = _get_member_ptr(td, aptr, &aelm, &apresent); - const void *bmember = _get_member_ptr(td, bptr, &belm, &bpresent); - - if(amember && bmember) { - if(apresent == bpresent) { - assert(aelm == belm); - return aelm->type->op->compare_struct(aelm->type, amember, bmember); - } else if(apresent < bpresent) { - return -1; - } else { - return 1; - } - } else if(!amember) { - return -1; - } else { - return 1; - } -} - -/* - * Return the 1-based choice variant presence index. - * Returns 0 in case of error. - */ -unsigned -CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, const void *sptr) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - return _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); -} - -/* - * Sets or resets the 1-based choice variant presence index. - * In case a previous index is not zero, the currently selected structure - * member is freed and zeroed-out first. - * Returns 0 on success and -1 on error. - */ -int -CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, void *sptr, - unsigned present) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned old_present; - - if(!sptr) { - return -1; - } - - if(present > td->elements_count) - return -1; - - old_present = - _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - if(present == old_present) - return 0; - - if(old_present != 0) { - assert(old_present <= td->elements_count); - ASN_STRUCT_RESET(*td, sptr); - } - - _set_present_idx(sptr, specs->pres_offset, specs->pres_size, present); - - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c deleted file mode 100644 index 41040aaee..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_aper.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_dec_rval_t -CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_dec_rval_t rv; - const asn_per_constraint_t *ct = NULL; - asn_TYPE_member_t *elm = NULL; /* CHOICE's element */ - void *memb_ptr = NULL; - void **memb_ptr2 = NULL; - void *st = *sptr; - int value = 0; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted */ - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - ASN_DEBUG("CHOICE %s got index %d in range %d", - td->name, value, ct->range_bits); - if(value > ct->upper_bound) - ASN__DECODE_FAILED; - } else { - if(specs->ext_start == -1) - ASN__DECODE_FAILED; - - if(specs && specs->tag2el_count > specs->ext_start) { - value = aper_get_nsnnwn(pd, specs->tag2el_count - specs->ext_start); /* extension elements range */ - if(value < 0) ASN__DECODE_STARVED; - value += specs->ext_start; - if((unsigned)value >= td->elements_count) - ASN__DECODE_FAILED; - } - } - - /* Adjust if canonical order is different from natural order */ - if(specs->from_canonical_order) - value = specs->from_canonical_order[value]; - - /* Set presence to be able to free it later */ - _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); - - elm = &td->elements[value]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); - - if(ct && ct->range_bits >= 0) { - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } else { - rv = aper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } - - if(rv.code != RC_OK) - ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", - elm->name, td->name, rv.code); - return rv; -} - -asn_enc_rval_t -CHOICE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm; /* CHOICE's element */ - const asn_per_constraint_t *ct; - const void *memb_ptr; - int present; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s as CHOICE using ALIGNED PER", td->name); - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized properly, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present <= 0 || (unsigned)present > td->elements_count) - ASN__ENCODE_FAILED; - else - present--; - - /* Adjust if canonical order is different from natural order */ - if(specs->to_canonical_order) - present = specs->to_canonical_order[present]; - - ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); - - if(ct && ct->range_bits >= 0) { - if(present < ct->lower_bound - || present > ct->upper_bound) { - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, 1, 1)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - ct = 0; - } - } - if(ct && ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, 0, 1)) - ASN__ENCODE_FAILED; - } - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, present, ct->range_bits)) - ASN__ENCODE_FAILED; - - return elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, - memb_ptr, po); - } else { - asn_enc_rval_t rval = {0,0,0}; - if(specs->ext_start == -1) - ASN__ENCODE_FAILED; - int n = present - specs->ext_start; - if(n <= 63) { - if(n < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n, 7)) ASN__ENCODE_FAILED; - } else - ASN__ENCODE_FAILED; - if(aper_open_type_put(elm->type, elm->encoding_constraints.per_constraints, - memb_ptr, po)) - ASN__ENCODE_FAILED; - rval.encoded = 0; - ASN__ENCODED_OK(rval); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c deleted file mode 100644 index 7ad42c763..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_ber.c +++ /dev/null @@ -1,447 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -/* - * Tags are canonically sorted in the tag to member table. - */ -static int -_search4tag(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) - return 0; - else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * The decoder of the CHOICE type. - */ -asn_dec_rval_t -CHOICE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - ssize_t tag_len; /* Length of TLV's T */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as CHOICE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - if(tag_mode || td->tags_count) { - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, -1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) { - /* ?Subtracted below! */ - ctx->left += rval.consumed; - } - ADVANCE(rval.consumed); - } else { - ctx->left = -1; - } - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - do { - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key; - - key.el_tag = tlv_tag; - t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _search4tag); - if(t2m) { - /* - * Found the element corresponding to the tag. - */ - NEXT_PHASE(ctx); - ctx->step = t2m->el_no; - break; - } else if(specs->ext_start == -1) { - ASN_DEBUG("Unexpected tag %s " - "in non-extensible CHOICE %s", - ber_tlv_tag_string(tlv_tag), td->name); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - - ASN_DEBUG("Skipping unknown tag %s", - ber_tlv_tag_string(tlv_tag)); - - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - RETURN(RC_OK); - } - } while(0); - - case 2: - /* - * PHASE 2. - * Read in the element. - */ - do { - asn_TYPE_member_t *elm;/* CHOICE's element */ - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &elements[ctx->step]; - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - /* Set presence to be able to free it properly at any time */ - _set_present_idx(st, specs->pres_offset, - specs->pres_size, ctx->step + 1); - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->op->ber_decoder(opt_codec_ctx, elm->type, - memb_ptr2, ptr, LEFT, - elm->tag_mode); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - RETURN(RC_FAIL); - case RC_FAIL: /* Fatal error */ - RETURN(rval.code); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } while(0); - - NEXT_PHASE(ctx); - - /* Fall through */ - case 3: - ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", - td->name, (long)ctx->left, (long)size, - tag_mode, td->tags_count); - - if(ctx->left > 0) { - /* - * The type must be fully decoded - * by the CHOICE member-specific decoder. - */ - RETURN(RC_FAIL); - } - - if(ctx->left == -1 - && !(tag_mode || td->tags_count)) { - /* - * This is an untagged CHOICE. - * It doesn't contain nothing - * except for the member itself, including all its tags. - * The decoding is completed. - */ - NEXT_PHASE(ctx); - break; - } - - /* - * Read in the "end of data chunks"'s. - */ - while(ctx->left < 0) { - ssize_t tl; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * Expected <0><0>... - */ - if(((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - continue; - } - } else { - ASN_DEBUG("Unexpected continuation in %s", - td->name); - RETURN(RC_FAIL); - } - - /* UNREACHABLE */ - } - - NEXT_PHASE(ctx); - case 4: - /* No meaningful work here */ - break; - } - - RETURN(RC_OK); -} - -asn_enc_rval_t -CHOICE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE element */ - asn_enc_rval_t erval = {0,0,0}; - const void *memb_ptr; - size_t computed_size = 0; - unsigned present; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("%s %s as CHOICE", - cb ? "Encoding" : "Estimating", td->name); - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present == 0 || present > td->elements_count) { - if(present == 0 && td->elements_count == 0) { - /* The CHOICE is empty?! */ - erval.encoded = 0; - ASN__ENCODED_OK(erval); - } - ASN__ENCODE_FAILED; - } - - /* - * Seek over the present member of the structure. - */ - elm = &td->elements[present-1]; - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(memb_ptr == 0) { - if(elm->optional) { - erval.encoded = 0; - ASN__ENCODED_OK(erval); - } - /* Mandatory element absent */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* - * If the CHOICE itself is tagged EXPLICIT: - * T ::= [2] EXPLICIT CHOICE { ... } - * Then emit the appropriate tags. - */ - if(tag_mode == 1 || td->tags_count) { - /* - * For this, we need to pre-compute the member. - */ - ssize_t ret; - - /* Encode member with its tag */ - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - elm->tag_mode, - elm->tag, 0, 0); - if(erval.encoded == -1) - return erval; - - /* Encode CHOICE with parent or my own tag */ - ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, - cb, app_key); - if(ret == -1) - ASN__ENCODE_FAILED; - computed_size += ret; - } - - /* - * Encode the single underlying member. - */ - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, - cb, app_key); - if(erval.encoded == -1) - return erval; - - ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", - (long)erval.encoded, (long)computed_size); - - erval.encoded += computed_size; - - return erval; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c deleted file mode 100644 index 22d5090d0..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_jer.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -#undef JER_ADVANCE -#define JER_ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -asn_enc_rval_t -CHOICE_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - unsigned present = 0; - - if(!sptr) - ASN__ENCODE_FAILED; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr = NULL; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - er.encoded = 0; - - ASN__CALLBACK3("{\n\"", 3, mname, mlen, "\": ", 2); - - tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK("}", 1); - // ASN__CALLBACK3("", 1); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c deleted file mode 100644 index bc71a01cd..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_oer.c +++ /dev/null @@ -1,375 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef SET_PHASE -#define SET_PHASE(ctx, value) \ - do { \ - ctx->phase = value; \ - ctx->step = 0; \ - } while(0) - -/* - * Tags are canonically sorted in the tag to member table. - */ -static int -_search4tag(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) - return 0; - else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * X.696 (08/2015) #8.7 Encoding of tags - */ -static ssize_t -oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { - ber_tlv_tag_t val; - ber_tlv_tag_t tclass; - size_t skipped; - - if(size == 0) - return 0; - - val = *(const uint8_t *)ptr; - tclass = (val >> 6); - if((val & 0x3F) != 0x3F) { - /* #8.7.1 */ - *tag_r = ((val & 0x3F) << 2) | tclass; - return 1; - } - - /* - * Each octet contains 7 bits of useful information. - * The MSB is 0 if it is the last octet of the tag. - */ - for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size; - ptr = ((const char *)ptr) + 1, skipped++) { - unsigned int oct = *(const uint8_t *)ptr; - if(oct & 0x80) { - val = (val << 7) | (oct & 0x7F); - /* - * Make sure there are at least 9 bits spare - * at the MS side of a value. - */ - if(val >> ((8 * sizeof(val)) - 9)) { - /* - * We would not be able to accommodate - * any more tag bits. - */ - return -1; - } - } else { - val = (val << 7) | oct; - *tag_r = (val << 2) | tclass; - return skipped; - } - } - - return 0; /* Want more */ -} - -asn_dec_rval_t -CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - (void)constraints; - - ASN_DEBUG("Decoding %s as CHOICE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - switch(ctx->phase) { - case 0: { - /* - * Discover the tag. - */ - ber_tlv_tag_t tlv_tag; /* T from TLV */ - ssize_t tag_len; /* Length of TLV's T */ - - tag_len = oer_fetch_tag(ptr, size, &tlv_tag); - switch(tag_len) { - case 0: - ASN__DECODE_STARVED; - case -1: - ASN__DECODE_FAILED; - } - - do { - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key = {0, 0, 0, 0}; - key.el_tag = tlv_tag; - - t2m = (const asn_TYPE_tag2member_t *)bsearch( - &key, specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _search4tag); - if(t2m) { - /* - * Found the element corresponding to the tag. - */ - NEXT_PHASE(ctx); - ctx->step = t2m->el_no; - break; - } else if(specs->ext_start == -1) { - ASN_DEBUG( - "Unexpected tag %s " - "in non-extensible CHOICE %s", - ber_tlv_tag_string(tlv_tag), td->name); - RETURN(RC_FAIL); - } else { - /* Skip open type extension */ - ASN_DEBUG( - "Not implemented skipping open type extension for tag %s", - ber_tlv_tag_string(tlv_tag)); - RETURN(RC_FAIL); - } - } while(0); - - - ADVANCE(tag_len); - } - /* Fall through */ - case 1: { - asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */ - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - asn_dec_rval_t rval = {0,0}; - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Set presence to be able to free it properly at any time */ - (void)CHOICE_variant_set_presence(td, st, ctx->step + 1); - - if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) { - ssize_t got = - oer_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr2, ptr, size); - if(got < 0) ASN__DECODE_FAILED; - if(got == 0) ASN__DECODE_STARVED; - rval.code = RC_OK; - rval.consumed = got; - } else { - rval = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, - size); - } - rval.consumed += consumed_myself; - switch(rval.code) { - case RC_OK: - NEXT_PHASE(ctx); - case RC_WMORE: - break; - case RC_FAIL: - SET_PHASE(ctx, 3); /* => 3 */ - } - return rval; - } - case 2: - /* Already decoded everything */ - RETURN(RC_OK); - case 3: - /* Failed to decode, after all */ - RETURN(RC_FAIL); - } - - RETURN(RC_FAIL); -} - -/* - * X.696 (08/2015) #8.7 Encoding of tags - */ -static ssize_t -oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { - uint8_t tclass = BER_TAG_CLASS(tag); - ber_tlv_tag_t tval = BER_TAG_VALUE(tag); - - if(tval < 0x3F) { - uint8_t b = (uint8_t)((tclass << 6) | tval); - if(cb(&b, 1, app_key) < 0) { - return -1; - } - return 1; - } else { - uint8_t buf[1 + 2 * sizeof(tval)]; - uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */ - size_t encoded; - for(; ; tval >>= 7) { - if(tval >> 7) { - *b-- = 0x80 | (tval & 0x7f); - } else { - *b-- = tval & 0x7f; - break; - } - } - *b = (uint8_t)((tclass << 6) | 0x3F); - encoded = sizeof(buf) - (b - buf); - if(cb(b, encoded, app_key) < 0) { - return -1; - } - return encoded; - } - -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -CHOICE_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE element */ - unsigned present; - const void *memb_ptr; - ber_tlv_tag_t tag; - ssize_t tag_len; - asn_enc_rval_t er = {0, 0, 0}; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("OER %s encoding as CHOICE", td->name); - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN_DEBUG("CHOICE %s member is not selected", td->name); - ASN__ENCODE_FAILED; - } - - elm = &td->elements[present-1]; - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(memb_ptr == 0) { - /* Mandatory element absent */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag); - if(tag == 0) { - ASN__ENCODE_FAILED; - } - - tag_len = oer_put_tag(tag, cb, app_key); - if(tag_len < 0) { - ASN__ENCODE_FAILED; - } - - if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) { - ssize_t encoded = oer_open_type_put(elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr, cb, app_key); - if(encoded < 0) ASN__ENCODE_FAILED; - er.encoded = tag_len + encoded; - } else { - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded >= 0) er.encoded += tag_len; - } - - return er; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c deleted file mode 100644 index a97202fc2..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_print.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -CHOICE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - /* - * Print that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Print member's name and stuff */ - if(0) { - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - } - - return elm->type->op->print_struct(elm->type, memb_ptr, ilevel, - cb, app_key); - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c deleted file mode 100644 index fd0a10163..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_rfill.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -CHOICE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_random_fill_result_t res; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - const asn_TYPE_member_t *elm; - unsigned present; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *st = *sptr; - - if(max_length == 0) return result_skipped; - - (void)constr; - - if(st == NULL) { - st = CALLOC(1, specs->struct_size); - if(st == NULL) { - return result_failed; - } - } - - present = asn_random_between(1, td->elements_count); - elm = &td->elements[present - 1]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - res = elm->type->op->random_fill(elm->type, memb_ptr2, - &elm->encoding_constraints, max_length); - _set_present_idx(st, specs->pres_offset, specs->pres_size, present); - if(res.code == ARFILL_OK) { - *sptr = st; - } else { - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - } - - return res; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c deleted file mode 100644 index 77aab6d6a..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_uper.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_dec_rval_t -CHOICE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_dec_rval_t rv; - const asn_per_constraint_t *ct; - asn_TYPE_member_t *elm; /* CHOICE's element */ - void *memb_ptr; - void **memb_ptr2; - void *st = *sptr; - int value; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted */ - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - ASN_DEBUG("CHOICE %s got index %d in range %d", - td->name, value, ct->range_bits); - if(value > ct->upper_bound) - ASN__DECODE_FAILED; - } else { - if(specs->ext_start == -1) - ASN__DECODE_FAILED; - value = uper_get_nsnnwn(pd); - if(value < 0) ASN__DECODE_STARVED; - value += specs->ext_start; - if((unsigned)value >= td->elements_count) - ASN__DECODE_FAILED; - } - - /* Adjust if canonical order is different from natural order */ - if(specs->from_canonical_order) { - ASN_DEBUG("CHOICE presence from wire %d", value); - value = specs->from_canonical_order[value]; - ASN_DEBUG("CHOICE presence index effective %d", value); - } - - /* Set presence to be able to free it later */ - _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); - - elm = &td->elements[value]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); - - if(ct && ct->range_bits >= 0) { - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - } else { - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - } - - if(rv.code != RC_OK) - ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", - elm->name, td->name, rv.code); - return rv; -} - -asn_enc_rval_t -CHOICE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE's element */ - const asn_per_constraint_t *ct; - const void *memb_ptr; - unsigned present; - int present_enc; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s as CHOICE", td->name); - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized properly, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present == 0 || present > td->elements_count) - ASN__ENCODE_FAILED; - else - present--; - - ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); - - /* Adjust if canonical order is different from natural order */ - if(specs->to_canonical_order) - present_enc = specs->to_canonical_order[present]; - else - present_enc = present; - - if(ct && ct->range_bits >= 0) { - if(present_enc < ct->lower_bound - || present_enc > ct->upper_bound) { - if(ct->flags & APC_EXTENSIBLE) { - ASN_DEBUG( - "CHOICE member %d (enc %d) is an extension (%ld..%ld)", - present, present_enc, ct->lower_bound, ct->upper_bound); - if(per_put_few_bits(po, 1, 1)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - ct = 0; - } - } - if(ct && ct->flags & APC_EXTENSIBLE) { - ASN_DEBUG("CHOICE member %d (enc %d) is not an extension (%ld..%ld)", - present, present_enc, ct->lower_bound, ct->upper_bound); - if(per_put_few_bits(po, 0, 1)) - ASN__ENCODE_FAILED; - } - - - elm = &td->elements[present]; - ASN_DEBUG("CHOICE member \"%s\" %d (as %d)", elm->name, present, - present_enc); - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, present_enc, ct->range_bits)) - ASN__ENCODE_FAILED; - - return elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, memb_ptr, po); - } else { - asn_enc_rval_t rval = {0,0,0}; - if(specs->ext_start == -1) ASN__ENCODE_FAILED; - if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) - ASN__ENCODE_FAILED; - if(uper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, po)) - ASN__ENCODE_FAILED; - rval.encoded = 0; - ASN__ENCODED_OK(rval); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c b/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c deleted file mode 100644 index 45b4290a8..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_CHOICE_xer.c +++ /dev/null @@ -1,316 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -CHOICE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value of a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* Element index */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - if(ctx->phase == 0 && !*xml_tag) - ctx->phase = 1; /* Skip the outer tag checking phase */ - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Only waiting for closing tag. - * Phase 4: Skipping unknown extensions. - * Phase 5: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 4;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - - /* - * Go inside the member. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - unsigned old_present; - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st - + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Start/Continue decoding the inner member */ - tmprval = elm->type->op->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, - elm->name, - buf_ptr, size); - XER_ADVANCE(tmprval.consumed); - ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", - elm->type->name, tmprval.code); - old_present = _fetch_present_idx(st, - specs->pres_offset, - specs->pres_size); - assert(old_present == 0 || old_present == edx + 1); - /* Record what we've got */ - _set_present_idx(st, - specs->pres_offset, - specs->pres_size, edx + 1); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - ctx->phase = 3; - /* Fall through */ - } - - /* No need to wait for closing tag; special mode. */ - if(ctx->phase == 3 && !*xml_tag) { - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - xml_tag, tcv); - - /* Skip the extensions section */ - if(ctx->phase == 4) { - ASN_DEBUG("skip_unknown(%d, %ld)", - tcv, (long)ctx->left); - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 5; - RETURN(RC_FAIL); - case 1: - ctx->phase = 3; - /* Fall through */ - case 0: - XER_ADVANCE(ch_size); - continue; - case 2: - ctx->phase = 3; - break; - } - } - - switch(tcv) { - case XCT_BOTH: - break; /* No CHOICE? */ - case XCT_CLOSING: - if(ctx->phase != 3) - break; - XER_ADVANCE(ch_size); - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - if(ctx->phase != 1) - break; /* Really unexpected */ - - /* - * Search which inner member corresponds to this tag. - */ - for(edx = 0; edx < td->elements_count; edx++) { - elm = &td->elements[edx]; - tcv = xer_check_tag(buf_ptr,ch_size,elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - edx = td->elements_count; - break; /* Phase out */ - } - break; - } - if(edx != td->elements_count) - continue; - - /* It is expected extension */ - if(specs->ext_start != -1) { - ASN_DEBUG("Got anticipated extension"); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - ctx->phase = 3; /* Terminating */ - } else { - ctx->left = 1; - ctx->phase = 4; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" - " (ph=%d, tag=%s)", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - td->name, ctx->phase, xml_tag); - break; - } - - ctx->phase = 5; /* Phase out, just in case */ - RETURN(RC_FAIL); -} - -asn_enc_rval_t -CHOICE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - unsigned present = 0; - - if(!sptr) - ASN__ENCODE_FAILED; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr = NULL; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - er.encoded = 0; - - if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("", 1); - } - - if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c deleted file mode 100644 index 8397d0c1b..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE.c +++ /dev/null @@ -1,197 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_TYPE_operation_t asn_OP_SEQUENCE = { - SEQUENCE_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - SEQUENCE_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - SEQUENCE_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - SEQUENCE_decode_ber, - SEQUENCE_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - SEQUENCE_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - SEQUENCE_decode_oer, - SEQUENCE_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - SEQUENCE_decode_aper, - SEQUENCE_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - SEQUENCE_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; - -void -SEQUENCE_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - size_t edx; - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_struct_ctx_t *ctx; /* Decoder context */ - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as SEQUENCE", td->name); - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - /* Clean parsing context */ - ctx = (asn_struct_ctx_t *)((char *)sptr + specs->ctx_offset); - FREEMEM(ctx->ptr); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset( - sptr, 0, - ((const asn_SEQUENCE_specifics_t *)(td->specifics))->struct_size); - break; - } -} - -int -SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t edx; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Iterate over structure members and check their validity. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - asn_constr_check_f *constr; - int ret; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - continue; - ASN__CTFAIL(app_key, td, sptr, - "%s: mandatory element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - constr = elm->encoding_constraints.general_constraints; - if(!constr) - constr = elm->type->encoding_constraints.general_constraints; - - ret = constr(elm->type, memb_ptr, ctfailcb, app_key); - if(ret) return ret; - } - - return 0; -} - -int -SEQUENCE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - size_t edx; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *amemb; - const void *bmemb; - int ret; - - if(elm->flags & ATF_POINTER) { - amemb = - *(const void *const *)((const char *)aptr + elm->memb_offset); - bmemb = - *(const void *const *)((const char *)bptr + elm->memb_offset); - if(!amemb) { - if(!bmemb) continue; - if(elm->default_value_cmp - && elm->default_value_cmp(bmemb) == 0) { - /* A is absent, but B is present and equal to DEFAULT */ - continue; - } - return -1; - } else if(!bmemb) { - if(elm->default_value_cmp - && elm->default_value_cmp(amemb) == 0) { - /* B is absent, but A is present and equal to DEFAULT */ - continue; - } - return 1; - } - } else { - amemb = (const void *)((const char *)aptr + elm->memb_offset); - bmemb = (const void *)((const char *)bptr + elm->memb_offset); - } - - ret = elm->type->op->compare_struct(elm->type, amemb, bmemb); - if(ret != 0) return ret; - } - - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c deleted file mode 100644 index 9c5d6cded..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF.c +++ /dev/null @@ -1,92 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_TYPE_operation_t asn_OP_SEQUENCE_OF = { - SEQUENCE_OF_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - SEQUENCE_OF_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - SEQUENCE_OF_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - SEQUENCE_OF_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - SEQUENCE_OF_decode_oer, /* Same as SET OF decoder. */ - SEQUENCE_OF_encode_oer, /* Same as SET OF encoder */ -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - SEQUENCE_OF_decode_uper, /* Same as SET OF decoder */ - SEQUENCE_OF_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - SEQUENCE_OF_decode_aper, - SEQUENCE_OF_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - SEQUENCE_OF_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; - -int -SEQUENCE_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_anonymous_sequence_ *a = _A_CSEQUENCE_FROM_VOID(aptr); - const asn_anonymous_sequence_ *b = _A_CSEQUENCE_FROM_VOID(bptr); - ssize_t idx; - - if(a && b) { - ssize_t common_length = (a->count < b->count ? a->count : b->count); - for(idx = 0; idx < common_length; idx++) { - int ret = td->elements->type->op->compare_struct( - td->elements->type, a->array[idx], b->array[idx]); - if(ret) return ret; - } - - if(idx < b->count) /* more elements in b */ - return -1; /* a is shorter, so put it first */ - if(idx < a->count) return 1; - - } else if(!a) { - return -1; - } else if(!b) { - return 1; - } - - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c deleted file mode 100644 index ff3ae8bc1..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_aper.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_enc_rval_t -SEQUENCE_OF_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_anonymous_sequence_ *list; - const asn_per_constraint_t *ct; - asn_enc_rval_t er = {0,0,0}; - asn_TYPE_member_t *elm = td->elements; - int seq; - - if(!sptr) ASN__ENCODE_FAILED; - list = _A_CSEQUENCE_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF size (%d) using ALIGNED PER", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = (list->count < ct->lower_bound - || list->count > ct->upper_bound); - ASN_DEBUG("lb %lld ub %lld %s", - (long long int)ct->lower_bound, - (long long int)ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) - ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) - ASN__ENCODE_FAILED; - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ -/* - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; -*/ - if (ct->lower_bound == ct->upper_bound && ct->upper_bound < 65536) { - /* No length determinant */ - } else if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) - ASN__ENCODE_FAILED; - } - - for(seq = -1; seq < list->count;) { - ssize_t mayEncode; - int need_eom = 0; - if(seq < 0) seq = 0; - if(ct && ct->effective_bits >= 0) { - mayEncode = list->count; - } else { - mayEncode = aper_put_length(po, -1, -1, list->count - seq, &need_eom); - if(mayEncode < 0) ASN__ENCODE_FAILED; - } - - while(mayEncode--) { - void *memb_ptr = list->array[seq++]; - if(!memb_ptr) ASN__ENCODE_FAILED; - er = elm->type->op->aper_encoder(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, po); - if(er.encoded == -1) - ASN__ENCODE_FAILED; - } - - if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c deleted file mode 100644 index 178f8654d..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_ber.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The DER encoder of the SEQUENCE OF type. - */ -asn_enc_rval_t -SEQUENCE_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(ptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - asn_enc_rval_t erval = {0,0,0}; - int edx; - - ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - } - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, - cb, app_key); - if(encoding_size == -1) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - - computed_size += encoding_size; - if(!cb) { - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } - - ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - cb, app_key); - if(erval.encoded == -1) - return erval; - encoding_size += erval.encoded; - } - - if(computed_size != (size_t)encoding_size) { - /* - * Encoded size is not equal to the computed size. - */ - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - } else { - erval.encoded = computed_size; - erval.structure_ptr = 0; - erval.failed_type = 0; - } - - return erval; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c deleted file mode 100644 index 4c366a6ff..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_jer.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_enc_rval_t -SEQUENCE_OF_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 - : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = 0; - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - ASN__CALLBACK("[", 1); - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("{\"", 2, mname, mlen, "\":", 2); - } - - tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); - ASN__CALLBACK3("\"", 1, name, len, "\"", 1); - } - - if(mname) { - ASN__CALLBACK("}", 1); - } - if (i != list->count - 1) { - ASN__CALLBACK(",", 1); - } - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - ASN__CALLBACK("]", 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c deleted file mode 100644 index eb20a0701..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_uper.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_enc_rval_t -SEQUENCE_OF_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_anonymous_sequence_ *list; - const asn_per_constraint_t *ct; - asn_enc_rval_t er = {0,0,0}; - const asn_TYPE_member_t *elm = td->elements; - size_t encoded_edx; - - if(!sptr) ASN__ENCODE_FAILED; - list = _A_CSEQUENCE_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; - } else if(list->count == 0) { - /* When the list is empty add only the length determinant - * X.691, #20.6 and #11.9.4.1 - */ - if (uper_put_length(po, 0, 0)) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } - - for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { - ssize_t may_encode; - size_t edx; - int need_eom = 0; - - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - uper_put_length(po, list->count - encoded_edx, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) ASN__ENCODE_FAILED; - er = elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, memb_ptr, - po); - if(er.encoded == -1) ASN__ENCODE_FAILED; - } - - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - - encoded_edx += may_encode; - } - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c deleted file mode 100644 index 7bd323677..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_OF_xer.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_enc_rval_t -SEQUENCE_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 - : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); - ASN__CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - ASN__CALLBACK3("", 1); - } - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c deleted file mode 100644 index 895b6daf3..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_aper.c +++ /dev/null @@ -1,457 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -asn_dec_rval_t -SEQUENCE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - void *st = *sptr; /* Target structure. */ - int extpresent; /* Extension additions are present */ - uint8_t *opres; /* Presence of optional root members */ - asn_per_data_t opmd; - asn_dec_rval_t rv; - size_t edx; - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as SEQUENCE (APER)", td->name); - - /* Handle extensions */ - if(specs->first_extension < 0) { - extpresent = 0; - } else { - extpresent = per_get_few_bits(pd, 1); - if(extpresent < 0) ASN__DECODE_STARVED; - } - - /* Prepare a place and read-in the presence bitmap */ - memset(&opmd, 0, sizeof(opmd)); - if(specs->roms_count) { - opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); - if(!opres) ASN__DECODE_FAILED; - /* Get the presence map */ - if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { - FREEMEM(opres); - ASN__DECODE_STARVED; - } - opmd.buffer = opres; - opmd.nbits = specs->roms_count; - ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", - td->name, specs->roms_count, *opres); - } else { - opres = 0; - } - - /* - * Get the sequence ROOT elements. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ -#if 0 - int padding; -#endif - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } -#if 0 - /* Get Padding */ - padding = (8 - (pd->moved % 8)) % 8; - if(padding > 0) - ASN_DEBUG("For element %s,offset= %ld Padding bits = %d", td->name, pd->moved, padding); -#if 0 /* old way of removing padding */ - per_get_few_bits(pd, padding); -#else /* Experimental fix proposed by @mhanna123 */ - if(edx != (td->elements_count-1)) - per_get_few_bits(pd, padding); - else { - if(specs->roms_count && (padding > 0)) - ASN_DEBUG(">>>>> not skipping padding of %d bits for element:%ld out of %d", padding, edx, td->elements_count); - else - per_get_few_bits(pd, padding); - } -#endif /* dealing with padding */ -#endif - /* Deal with optionality */ - if(elm->optional) { - int present = per_get_few_bits(&opmd, 1); - ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", - td->name, elm->name, present, - (int)opmd.nboff, (int)opmd.nbits); - if(present == 0) { - /* This element is not present */ - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - if(elm->default_value_set(memb_ptr2)) { - FREEMEM(opres); - ASN__DECODE_FAILED; - } - ASN_DEBUG("Filled-in default"); - } - /* The member is just not present */ - continue; - } - /* Fall through */ - } - - /* Fetch the member from the stream */ - ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); - - if(elm->flags & ATF_OPEN_TYPE) { - if (OPEN_TYPE_aper_is_unknown_type(td, st, elm)) { - rv = OPEN_TYPE_aper_unknown_type_discard_bytes(pd); - FREEMEM(opres); - return rv; - } - rv = OPEN_TYPE_aper_get(opt_codec_ctx, td, st, elm, pd); - } else { - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - } - if(rv.code != RC_OK) { - ASN_DEBUG("Failed decode %s in %s", - elm->name, td->name); - FREEMEM(opres); - return rv; - } - } - - /* Optionality map is not needed anymore */ - FREEMEM(opres); - - /* - * Deal with extensions. - */ - if(extpresent) { - ssize_t bmlength; - uint8_t *epres; /* Presence of extension members */ - asn_per_data_t epmd; - - bmlength = aper_get_nslength(pd); - if(bmlength < 0) ASN__DECODE_STARVED; - - ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); - - epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); - if(!epres) ASN__DECODE_STARVED; - - /* Get the extensions map */ - if(per_get_many_bits(pd, epres, 0, bmlength)) - ASN__DECODE_STARVED; - - memset(&epmd, 0, sizeof(epmd)); - epmd.buffer = epres; - epmd.nbits = bmlength; - ASN_DEBUG("Read in extensions bitmap for %s of %zd bits (%x..)", - td->name, bmlength, *epres); - - /* Deal with padding */ - if (aper_get_align(pd) < 0) - ASN__DECODE_STARVED; - - /* Go over extensions and read them in */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%zu is not extension", edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (void *)((char *)st + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - present = per_get_few_bits(&epmd, 1); - if(present <= 0) { - if(present < 0) break; /* No more extensions */ - continue; - } - - ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); - rv = aper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - if(rv.code != RC_OK) { - FREEMEM(epres); - return rv; - } - } - - /* Skip over overflow extensions which aren't present - * in this system's version of the protocol */ - for(;;) { - ASN_DEBUG("Getting overflow extensions"); - switch(per_get_few_bits(&epmd, 1)) { - case -1: - break; - case 0: - continue; - default: - if(aper_open_type_skip(opt_codec_ctx, pd)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - } - break; - } - - FREEMEM(epres); - } - - /* Fill DEFAULT members in extensions */ - for(edx = specs->roms_count; edx < specs->roms_count - + specs->aoms_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void **memb_ptr2; /* Pointer to member pointer */ - - if(!elm->default_value_set) continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - if(*memb_ptr2) continue; - } else { - continue; /* Extensions are all optionals */ - } - - /* Set default value */ - if(elm->default_value_set(memb_ptr2)) { - ASN__DECODE_FAILED; - } - } - - rv.consumed = 0; - rv.code = RC_OK; - return rv; -} - -static int -SEQUENCE_handle_extensions_aper(const asn_TYPE_descriptor_t *td, - const void *sptr, - asn_per_outp_t *po1, asn_per_outp_t *po2) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - int exts_present = 0; - int exts_count = 0; - size_t edx; - - if(specs->first_extension < 0) { - return 0; - } - - /* Find out which extensions are present */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%s (@%zu) is not extension", elm->type->name, edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - ASN_DEBUG("checking %s (@%zu) present => %d", - elm->type->name, edx, present); - exts_count++; - exts_present += present; - - /* Encode as presence marker */ - if(po1 && per_put_few_bits(po1, present, 1)) - return -1; - /* Encode as open type field */ - if(po2 && present && aper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, - *memb_ptr2, po2)) - return -1; - - } - - return exts_present ? exts_count : 0; -} - -asn_enc_rval_t -SEQUENCE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - int n_extensions; - size_t edx; - size_t i; - - (void)constraints; - - if(!sptr) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE (APER)", td->name); - - /* - * X.691#18.1 Whether structure is extensible - * and whether to encode extensions - */ - if(specs->first_extension < 0) { - n_extensions = 0; /* There are no extensions to encode */ - } else { - n_extensions = SEQUENCE_handle_extensions_aper(td, sptr, 0, 0); - if(n_extensions < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { - ASN__ENCODE_FAILED; - } - } - - /* Encode a presence bitmap */ - for(i = 0; i < specs->roms_count; i++) { - asn_TYPE_member_t *elm; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - int present; - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - /* Eliminate default values */ - if(present && elm->default_value_cmp - && elm->default_value_cmp(*memb_ptr2) == 0) - present = 0; - - ASN_DEBUG("Element %s %s %s->%s is %s", - elm->flags & ATF_POINTER ? "ptr" : "inline", - elm->default_value_cmp ? "def" : "wtv", - td->name, elm->name, present ? "present" : "absent"); - if(per_put_few_bits(po, present, 1)) - ASN__ENCODE_FAILED; - } - - /* - * Encode the sequence ROOT elements. - */ - ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, - td->elements_count); - for(edx = 0; - edx < ((specs->first_extension < 0) ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - ASN_DEBUG("About to encode %s", elm->type->name); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %zu not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - ASN_DEBUG("Encoding %s->%s", td->name, elm->name); - er = elm->type->op->aper_encoder(elm->type, - elm->encoding_constraints.per_constraints, - *memb_ptr2, po); - if(er.encoded == -1) - return er; - } - - /* No extensions to encode */ - if(!n_extensions) ASN__ENCODED_OK(er); - - ASN_DEBUG("Length of %d bit-map", n_extensions); - /* #18.8. Write down the presence bit-map length. */ - if(aper_put_nslength(po, n_extensions)) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Bit-map of %d elements", n_extensions); - /* #18.7. Encoding the extensions presence bit-map. */ - /* TODO: act upon NOTE in #18.7 for canonical PER */ - if(SEQUENCE_handle_extensions_aper(td, sptr, po, 0) != n_extensions) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Writing %d extensions", n_extensions); - /* #18.9. Encode extensions as open type fields. */ - if(SEQUENCE_handle_extensions_aper(td, sptr, 0, po) != n_extensions) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c deleted file mode 100644 index e982172d3..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_ber.c +++ /dev/null @@ -1,612 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef PHASE_OUT -#define PHASE_OUT(ctx) \ - do { \ - ctx->phase = 10; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -/* - * Tags are canonically sorted in the tag2element map. - */ -static int -_t2e_cmp(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) { - if(a->el_no > b->el_no) - return 1; - /* - * Important: we do not check - * for a->el_no <= b->el_no! - */ - return 0; - } else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * The decoder of the SEQUENCE type. - */ -asn_dec_rval_t -SEQUENCE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - const asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* SEQUENCE element's index */ - - ASN_DEBUG("Decoding %s as SEQUENCE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Subtracted below! */ - ADVANCE(rval.consumed); - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next member from the list of - * this structure's elements. - * (ctx->step) stores the member being processed - * between invocations and the microphase {0,1} of parsing - * that member: - * step = ( * 2 + ). - */ - for(edx = ((size_t)ctx->step >> 1); edx < td->elements_count; - edx++, ctx->step = (ctx->step & ~1) + 2) { - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - ssize_t tag_len; /* Length of TLV's T */ - size_t opt_edx_end; /* Next non-optional element */ - size_t n; - int use_bsearch; - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - ASN_DEBUG("In %s SEQUENCE left %d, edx=%" ASN_PRI_SIZE " flags=%d" - " opt=%d ec=%d", - td->name, (int)ctx->left, edx, - elements[edx].flags, elements[edx].optional, - td->elements_count); - - if(ctx->left == 0 /* No more stuff is expected */ - && ( - /* Explicit OPTIONAL specification reaches the end */ - (edx + elements[edx].optional == td->elements_count) || - /* All extensions are optional */ - IN_EXTENSION_GROUP(specs, edx))) { - ASN_DEBUG("End of SEQUENCE %s", td->name); - /* - * Found the legitimate end of the structure. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("Current tag in %s SEQUENCE for element %" ASN_PRI_SIZE " " - "(%s) is %s encoded in %d bytes, of frame %ld", - td->name, edx, elements[edx].name, - ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) { - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - } else if(((const uint8_t *)ptr)[1] == 0) { - ASN_DEBUG("edx = %" ASN_PRI_SIZE ", opt = %d, ec=%d", edx, - elements[edx].optional, td->elements_count); - if((edx + elements[edx].optional == td->elements_count) - || IN_EXTENSION_GROUP(specs, edx)) { - /* - * Yeah, baby! Found the terminator - * of the indefinite length structure. - */ - /* - * Proceed to the canonical - * finalization function. - * No advancing is necessary. - */ - goto phase3; - } - } - } - - /* - * Find the next available type with this tag. - */ - use_bsearch = 0; - opt_edx_end = edx + elements[edx].optional + 1; - if(opt_edx_end > td->elements_count) - opt_edx_end = td->elements_count; /* Cap */ - else if(opt_edx_end - edx > 8) { - /* Limit the scope of linear search... */ - opt_edx_end = edx + 8; - use_bsearch = 1; - /* ... and resort to bsearch() */ - } - for(n = edx; n < opt_edx_end; n++) { - if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { - /* - * Found element corresponding to the tag - * being looked at. - * Reposition over the right element. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].flags & ATF_ANY_TYPE) { - /* - * This is the ANY type, which may bear - * any flag whatsoever. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].tag == (ber_tlv_tag_t)-1) { - use_bsearch = 1; - break; - } - } - if(use_bsearch) { - /* - * Resort to a binary search over - * sorted array of tags. - */ - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key = {0, 0, 0, 0}; - key.el_tag = tlv_tag; - key.el_no = edx; - t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _t2e_cmp); - if(t2m) { - const asn_TYPE_tag2member_t *best = 0; - const asn_TYPE_tag2member_t *t2m_f, *t2m_l; - size_t edx_max = edx + elements[edx].optional; - /* - * Rewind to the first element with that tag, - * `cause bsearch() does not guarantee order. - */ - t2m_f = t2m + t2m->toff_first; - t2m_l = t2m + t2m->toff_last; - for(t2m = t2m_f; t2m <= t2m_l; t2m++) { - if(t2m->el_no > edx_max) break; - if(t2m->el_no < edx) continue; - best = t2m; - } - if(best) { - edx = best->el_no; - ctx->step = 1 + 2 * edx; - goto microphase2; - } - } - n = opt_edx_end; - } - if(n == opt_edx_end) { - /* - * If tag is unknown, it may be either - * an unknown (thus, incorrect) tag, - * or an extension (...), - * or an end of the indefinite-length structure. - */ - if(!IN_EXTENSION_GROUP(specs, - edx + elements[edx].optional)) { - ASN_DEBUG("Unexpected tag %s (at %" ASN_PRI_SIZE ")", - ber_tlv_tag_string(tlv_tag), edx); - ASN_DEBUG("Expected tag %s (%s)%s", - ber_tlv_tag_string(elements[edx].tag), - elements[edx].name, - elements[edx].optional ?" or alternatives":""); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - edx += elements[edx].optional; - - ASN_DEBUG("Skipping unexpected %s (at %" ASN_PRI_SIZE ")", - ber_tlv_tag_string(tlv_tag), edx); - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - ASN_DEBUG("Skip length %d in %s", - (int)skip, td->name); - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - ctx->step -= 2; - edx--; - continue; /* Try again with the next tag */ - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elements[edx].flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elements[edx].memb_offset; - memb_ptr2 = &memb_ptr; - } - /* - * Invoke the member fetch routine according to member's type - */ - if(elements[edx].flags & ATF_OPEN_TYPE) { - rval = OPEN_TYPE_ber_get(opt_codec_ctx, td, st, &elements[edx], ptr, LEFT); - } else { - rval = elements[edx].type->op->ber_decoder(opt_codec_ctx, - elements[edx].type, - memb_ptr2, ptr, LEFT, - elements[edx].tag_mode); - } - ASN_DEBUG("In %s SEQUENCE decoded %" ASN_PRI_SIZE " %s of %d " - "in %d bytes rval.code %d, size=%d", - td->name, edx, elements[edx].type->name, - (int)LEFT, (int)rval.consumed, rval.code, (int)size); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", - (long)ctx->left, (long)size); - /* Fall through */ - case RC_FAIL: /* Fatal error */ - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all structure members) */ - - phase3: - ctx->phase = 3; - /* Fall through */ - case 3: /* 00 and other tags expected */ - case 4: /* only 00's expected */ - - ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", - td->name, (long)ctx->left, (long)size); - - /* - * Skip everything until the end of the SEQUENCE. - */ - while(ctx->left) { - ssize_t tl, ll; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * If expected <0><0>... - */ - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - ctx->phase = 4; - continue; - } - } - - if(!IN_EXTENSION_GROUP(specs, td->elements_count) - || ctx->phase == 4) { - ASN_DEBUG("Unexpected continuation " - "of a non-extensible type " - "%s (SEQUENCE): %s", - td->name, - ber_tlv_tag_string(tlv_tag)); - RETURN(RC_FAIL); - } - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tl, LEFT - tl); - switch(ll) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(tl + ll); - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - - -/* - * The DER encoder of the SEQUENCE type. - */ -asn_enc_rval_t -SEQUENCE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t computed_size = 0; - asn_enc_rval_t erval = {0,0,0}; - ssize_t ret; - size_t edx; - - ASN_DEBUG("%s %s as SEQUENCE", - cb?"Encoding":"Estimating", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - erval = elm->type->op->der_encoder(elm->type, *memb_ptr2, - elm->tag_mode, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - ASN_DEBUG("Member %" ASN_PRI_SIZE " %s estimated %ld bytes", - edx, elm->name, (long)erval.encoded); - } - - /* - * Encode the TLV for the sequence itself. - */ - ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); - ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); - if(ret == -1) - ASN__ENCODE_FAILED; - erval.encoded = computed_size + ret; - - if(!cb) ASN__ENCODED_OK(erval); - - /* - * Encode all members. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - asn_enc_rval_t tmperval = {0,0,0}; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) continue; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - tmperval = elm->type->op->der_encoder(elm->type, *memb_ptr2, - elm->tag_mode, elm->tag, cb, app_key); - if(tmperval.encoded == -1) - return tmperval; - computed_size -= tmperval.encoded; - ASN_DEBUG("Member %" ASN_PRI_SIZE " %s of SEQUENCE %s encoded in %ld bytes", - edx, elm->name, td->name, (long)tmperval.encoded); - } - - if(computed_size != 0) - /* - * Encoded size is not equal to the computed size. - */ - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(erval); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c deleted file mode 100644 index 6451f0ca6..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_jer.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_enc_rval_t SEQUENCE_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum jer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - int xcan = 0; - asn_TYPE_descriptor_t *tmp_def_val_td = 0; - void *tmp_def_val = 0; - size_t edx; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - - int bAddComma = 0; - ASN__CALLBACK("{\n", 2); - for(edx = 0; edx < td->elements_count; edx++) { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - assert(tmp_def_val == 0); - if(elm->default_value_set) { - if(elm->default_value_set(&tmp_def_val)) { - ASN__ENCODE_FAILED; - } else { - memb_ptr = tmp_def_val; - tmp_def_val_td = elm->type; - } - } else if(elm->optional) { - continue; - } else { - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if (bAddComma == 1) { - ASN__CALLBACK(",", 1); - bAddComma = 0; - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("\"", 1, mname, mlen, "\": ", 3); - - /* Print the member itself */ - tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmp_def_val) { - ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - tmp_def_val = 0; - } - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if (edx != td->elements_count - 1) { - bAddComma = 1; - } - } - ASN__CALLBACK("}", 1); - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c deleted file mode 100644 index a3bdb7bda..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_oer.c +++ /dev/null @@ -1,557 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -#define IN_ROOT_GROUP_PRED(edx) \ - edx < (specs->first_extension < 0 ? td->elements_count \ - : (size_t)specs->first_extension) - -#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * Return pointer to a member. - */ -static void ** -element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) { - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - return (void **)((char *)struct_ptr + elm->memb_offset); - } else { - assert(tmp_save_ptr); - *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset); - return tmp_save_ptr; - } -} - -static const void * -element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) { - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - return *(const void *const *)((const char *)struct_ptr - + elm->memb_offset); - } else { - return (const void *)((const char *)struct_ptr + elm->memb_offset); - } -} - -asn_dec_rval_t -SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - void *st = *struct_ptr; /* Target structure */ - asn_struct_ctx_t *ctx; /* Decoder context */ - size_t consumed_myself = 0; /* Consumed bytes from ptr. */ - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously. - */ - switch(ctx->phase) { - case 0: { - /* - * Fetch preamble. - */ - asn_bit_data_t *preamble; - int has_extensions_bit = (specs->first_extension >= 0); - size_t preamble_bits = (has_extensions_bit + specs->roms_count); - size_t preamble_bytes = ((7 + preamble_bits) >> 3); - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name); - - ASN_DEBUG( - "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)", - preamble_bits, td->name, has_extensions_bit); - - if(preamble_bytes > size) { - ASN__DECODE_STARVED; - } - - preamble = asn_bit_data_new_contiguous(ptr, preamble_bits); - if(!preamble) { - RETURN(RC_FAIL); - } - preamble->nboff = has_extensions_bit; - ctx->ptr = preamble; - ADVANCE(preamble_bytes); - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 1: { - /* Decode components of the extension root */ - asn_bit_data_t *preamble = ctx->ptr; - size_t edx; - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name); - - assert(preamble); - - for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx); - edx++, ctx->step = (ctx->step & ~1) + 2) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - ASN_DEBUG("Decoding %s->%s", td->name, elm->name); - - assert(!IN_EXTENSION_GROUP(specs, edx)); - - if(ctx->step & 1) { - goto microphase2_decode_continues; - } - - - if(elm->optional) { - int32_t present = asn_get_few_bits(preamble, 1); - if(present < 0) { - ASN_DEBUG("Presence map ended prematurely: %d", present); - RETURN(RC_FAIL); - } else if(present == 0) { - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - void *tmp; - if(elm->default_value_set( - element_ptrptr(st, elm, &tmp))) { - RETURN(RC_FAIL); - } - } - /* The member is not present. */ - continue; - } - /* Present OPTIONAL or DEFAULT component. */ - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2_decode_continues: - if(elm->flags & ATF_OPEN_TYPE) { - rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size); - } else { - void *save_memb_ptr; /* Temporary reference. */ - void **memb_ptr2; /* Pointer to a pointer to a memmber */ - - memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr); - - rval = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, - size); - } - switch(rval.code) { - case RC_OK: - ADVANCE(rval.consumed); - break; - case RC_WMORE: - ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name, - elm->name); - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - case RC_FAIL: - ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name, - elm->name); - RETURN(RC_FAIL); - } - } /* for(all root members) */ - - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 2: - assert(ctx->ptr); - { - /* Cleanup preamble. */ - asn_bit_data_t *preamble = ctx->ptr; - asn_bit_data_t *extadds; - int has_extensions_bit = (specs->first_extension >= 0); - int extensions_present = - has_extensions_bit - && (preamble->buffer == NULL - || (((const uint8_t *)preamble->buffer)[0] & 0x80)); - uint8_t unused_bits; - size_t len = 0; - ssize_t len_len; - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name); - - preamble->buffer = 0; /* Will do extensions_present==1 next time. */ - - if(!extensions_present) { - ctx->phase = 10; - RETURN(RC_OK); - } - - /* - * X.696 (08/2015) #16.1 (c), #16.4 - * Read in the extension addition presence bitmap. - */ - - len_len = oer_fetch_length(ptr, size, &len); - if(len_len > 0) { - ADVANCE(len_len); - } else if(len_len < 0) { - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - - if(len == 0) { - /* 16.4.1-2 */ - RETURN(RC_FAIL); - } else if(len > size) { - RETURN(RC_WMORE); - } - - /* Account for unused bits */ - unused_bits = 0x7 & *(const uint8_t *)ptr; - ADVANCE(1); - len--; - if(unused_bits && len == 0) { - RETURN(RC_FAIL); - } - - /* Get the extensions map */ - extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits); - if(!extadds) { - RETURN(RC_FAIL); - } - FREEMEM(preamble); - ctx->ptr = extadds; - ADVANCE(len); - } - NEXT_PHASE(ctx); - ctx->step = - (specs->first_extension < 0 ? td->elements_count - : (size_t)specs->first_extension); - /* Fall through */ - case 3: - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name); - for(; ctx->step < (signed)td->elements_count; ctx->step++) { - asn_bit_data_t *extadds = ctx->ptr; - size_t edx = ctx->step; - asn_TYPE_member_t *elm = &td->elements[edx]; - void *tmp_memb_ptr; - void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr); - - switch(asn_get_few_bits(extadds, 1)) { - case -1: - /* - * Not every one of our extensions is known to the remote side. - * Continue filling in their defaults though. - */ - /* Fall through */ - case 0: - /* Fill-in DEFAULT */ - if(elm->default_value_set - && elm->default_value_set(memb_ptr2)) { - RETURN(RC_FAIL); - } - continue; - case 1: { - /* Read OER open type */ - ssize_t ot_size = - oer_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr2, ptr, size); - assert(ot_size <= (ssize_t)size); - if(ot_size > 0) { - ADVANCE(ot_size); - } else if(ot_size < 0) { - RETURN(RC_FAIL); - } else { - /* Roll back open type parsing */ - asn_get_undo(extadds, 1); - RETURN(RC_WMORE); - } - break; - } - default: - RETURN(RC_FAIL); - } - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 4: - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name); - /* Read in the rest of Open Types while ignoring them */ - for(;;) { - asn_bit_data_t *extadds = ctx->ptr; - switch(asn_get_few_bits(extadds, 1)) { - case 0: - continue; - case 1: { - ssize_t skipped = oer_open_type_skip(ptr, size); - if(skipped > 0) { - ADVANCE(skipped); - } else if(skipped < 0) { - RETURN(RC_FAIL); - } else { - asn_get_undo(extadds, 1); - RETURN(RC_WMORE); - } - continue; - } - case -1: - /* No more Open Type encoded components */ - break; - default: - RETURN(RC_FAIL); - } - break; - } - } - - RETURN(RC_OK); -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - size_t computed_size = 0; - int has_extensions_bit = (specs->first_extension >= 0); - size_t preamble_bits = (has_extensions_bit + specs->roms_count); - uint32_t has_extensions = 0; - size_t edx; - int ret; - - (void)constraints; - - if(preamble_bits) { - asn_bit_outp_t preamble; - - memset(&preamble, 0, sizeof(preamble)); - preamble.output = cb; - preamble.op_key = app_key; - - if(has_extensions_bit) { - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Do not encode default values in extensions */ - } else { - has_extensions = 1; - break; - } - } - } - ret = asn_put_few_bits(&preamble, has_extensions, 1); - assert(ret == 0); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - } - - /* - * Encode optional components bitmap. - */ - if(specs->roms_count) { - FOR_IN_ROOT_GROUP(edx) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - if(IN_EXTENSION_GROUP(specs, edx)) break; - - if(elm->optional) { - const void *memb_ptr = element_ptr(sptr, elm); - uint32_t has_component = memb_ptr != NULL; - if(has_component && elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - has_component = 0; - } - ret = asn_put_few_bits(&preamble, has_component, 1); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - } - } - } - - asn_put_aligned_flush(&preamble); - computed_size += preamble.flushed_bytes; - } /* if(preamble_bits) */ - - /* - * Put root components and extensions root. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - asn_enc_rval_t er = {0,0,0}; - const void *memb_ptr; - - if(IN_EXTENSION_GROUP(specs, edx)) break; - - memb_ptr = element_ptr(sptr, elm); - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Skip default values in encoding */ - continue; - } - } else { - if(elm->optional) continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - if(!elm->type->op->oer_encoder) { - ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name); - ASN__ENCODE_FAILED; - } - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded == -1) { - ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name, - elm->name); - return er; - } - computed_size += er.encoded; - } - - /* - * Before encode extensions, encode extensions additions presence bitmap - # X.696 (08/2015) #16.4. - */ - if(has_extensions) { - asn_bit_outp_t extadds; - - /* Special case allowing us to use exactly one byte for #8.6 */ - size_t aoms_length_bits = specs->aoms_count; - size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3; - uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07)); - - assert(1 + aoms_length_bytes <= 127); - - memset(&extadds, 0, sizeof(extadds)); - extadds.output = cb; - extadds.op_key = app_key; - - /* #8.6 length determinant */ - ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8); - if(ret < 0) ASN__ENCODE_FAILED; - - /* Number of unused bytes, #16.4.2 */ - ret = asn_put_few_bits(&extadds, unused_bits, 8); - if(ret < 0) ASN__ENCODE_FAILED; - - /* Encode presence bitmap #16.4.3 */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - if(memb_ptr && elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - memb_ptr = 0; /* Do not encode default value. */ - } - ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1); - } - if(ret < 0) ASN__ENCODE_FAILED; - - asn_put_aligned_flush(&extadds); - computed_size += extadds.flushed_bytes; - - /* Now, encode extensions */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Do not encode default value. */ - } else { - ssize_t wrote = oer_open_type_put( - elm->type, elm->encoding_constraints.oer_constraints, - memb_ptr, cb, app_key); - if(wrote == -1) { - ASN__ENCODE_FAILED; - } - computed_size += wrote; - } - } else if(!elm->optional) { - ASN__ENCODE_FAILED; - } - } - } /* if(has_extensions) */ - - - { - asn_enc_rval_t er = {0, 0, 0}; - er.encoded = computed_size; - ASN__ENCODED_OK(er); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c deleted file mode 100644 index 7f9e231a4..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_print.c +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -SEQUENCE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t edx; - int ret; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) continue; - /* Print line */ - /* Fall through */ - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Indentation */ - _i_INDENT(1); - - /* Print the member's name and stuff */ - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - - /* Print the member itself */ - ret = elm->type->op->print_struct(elm->type, memb_ptr, ilevel + 1, - cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c deleted file mode 100644 index b464f5722..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_rfill.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -SEQUENCE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 0}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - void *st = *sptr; - size_t edx; - - if(max_length == 0) return result_skipped; - - (void)constr; - - if(st == NULL) { - st = CALLOC(1, specs->struct_size); - if(st == NULL) { - return result_failed; - } - } - - for(edx = 0; edx < td->elements_count; edx++) { - const asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - asn_random_fill_result_t tmpres; - - if(elm->optional && asn_random_between(0, 4) == 2) { - /* Sometimes decide not to fill the optional value */ - continue; - } - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - tmpres = elm->type->op->random_fill( - elm->type, memb_ptr2, &elm->encoding_constraints, - max_length > result_ok.length ? max_length - result_ok.length : 0); - switch(tmpres.code) { - case ARFILL_OK: - result_ok.length += tmpres.length; - continue; - case ARFILL_SKIPPED: - assert(!(elm->flags & ATF_POINTER) || *memb_ptr2 == NULL); - continue; - case ARFILL_FAILED: - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - return tmpres; - } - } - - *sptr = st; - - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c deleted file mode 100644 index b235f4de9..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_uper.c +++ /dev/null @@ -1,429 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -asn_dec_rval_t -SEQUENCE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - void *st = *sptr; /* Target structure. */ - int extpresent; /* Extension additions are present */ - uint8_t *opres; /* Presence of optional root members */ - asn_per_data_t opmd; - asn_dec_rval_t rv; - size_t edx; - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); - - /* Handle extensions */ - if(specs->first_extension < 0) { - extpresent = 0; - } else { - extpresent = per_get_few_bits(pd, 1); - if(extpresent < 0) ASN__DECODE_STARVED; - } - - /* Prepare a place and read-in the presence bitmap */ - memset(&opmd, 0, sizeof(opmd)); - if(specs->roms_count) { - opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); - if(!opres) ASN__DECODE_FAILED; - /* Get the presence map */ - if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { - FREEMEM(opres); - ASN__DECODE_STARVED; - } - opmd.buffer = opres; - opmd.nbits = specs->roms_count; - ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", - td->name, specs->roms_count, *opres); - } else { - opres = 0; - } - - /* - * Get the sequence ROOT elements. - */ - for(edx = 0; - edx < (specs->first_extension < 0 ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - assert(!IN_EXTENSION_GROUP(specs, edx)); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Deal with optionality */ - if(elm->optional) { - int present = per_get_few_bits(&opmd, 1); - ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", - td->name, elm->name, present, - (int)opmd.nboff, (int)opmd.nbits); - if(present == 0) { - /* This element is not present */ - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - if(elm->default_value_set(memb_ptr2)) { - FREEMEM(opres); - ASN__DECODE_FAILED; - } - ASN_DEBUG("Filled-in default"); - } - /* The member is just not present */ - continue; - } - /* Fall through */ - } - - /* Fetch the member from the stream */ - ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); - - if(elm->flags & ATF_OPEN_TYPE) { - rv = OPEN_TYPE_uper_get(opt_codec_ctx, td, st, elm, pd); - } else { - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - } - if(rv.code != RC_OK) { - ASN_DEBUG("Failed decode %s in %s", - elm->name, td->name); - FREEMEM(opres); - return rv; - } - } - - /* Optionality map is not needed anymore */ - FREEMEM(opres); - - /* - * Deal with extensions. - */ - if(extpresent) { - ssize_t bmlength; - uint8_t *epres; /* Presence of extension members */ - asn_per_data_t epmd; - - bmlength = uper_get_nslength(pd); - if(bmlength < 0) ASN__DECODE_STARVED; - - ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); - - epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); - if(!epres) ASN__DECODE_STARVED; - - /* Get the extensions map */ - if(per_get_many_bits(pd, epres, 0, bmlength)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - - memset(&epmd, 0, sizeof(epmd)); - epmd.buffer = epres; - epmd.nbits = bmlength; - ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", - td->name, (long)bmlength, *epres); - - /* Go over extensions and read them in */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (void *)((char *)st + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - present = per_get_few_bits(&epmd, 1); - if(present <= 0) { - if(present < 0) break; /* No more extensions */ - continue; - } - - ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, - *memb_ptr2); - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - if(rv.code != RC_OK) { - FREEMEM(epres); - return rv; - } - } - - /* Skip over overflow extensions which aren't present - * in this system's version of the protocol */ - for(;;) { - ASN_DEBUG("Getting overflow extensions"); - switch(per_get_few_bits(&epmd, 1)) { - case -1: break; - case 0: continue; - default: - if(uper_open_type_skip(opt_codec_ctx, pd)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - ASN_DEBUG("Skipped overflow extension"); - continue; - } - break; - } - - FREEMEM(epres); - } - - if(specs->first_extension >= 0) { - unsigned i; - /* Fill DEFAULT members in extensions */ - for(i = specs->roms_count; i < specs->roms_count + specs->aoms_count; - i++) { - asn_TYPE_member_t *elm; - void **memb_ptr2; /* Pointer to member pointer */ - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - if(!elm->default_value_set) continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - if(*memb_ptr2) continue; - } else { - continue; /* Extensions are all optionals */ - } - - /* Set default value */ - if(elm->default_value_set(memb_ptr2)) { - ASN__DECODE_FAILED; - } - } - } - - rv.consumed = 0; - rv.code = RC_OK; - return rv; -} - -static int -SEQUENCE__handle_extensions(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_per_outp_t *po1, asn_per_outp_t *po2) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - int exts_present = 0; - int exts_count = 0; - size_t edx; - - if(specs->first_extension < 0) { - return 0; - } - - /* Find out which extensions are present */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - int present; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - ASN_DEBUG("checking %s:%s (@%" ASN_PRI_SIZE ") present => %d", elm->name, - elm->type->name, edx, present); - exts_count++; - exts_present += present; - - /* Encode as presence marker */ - if(po1 && per_put_few_bits(po1, present, 1)) { - return -1; - } - /* Encode as open type field */ - if(po2 && present - && uper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, - *memb_ptr2, po2)) - return -1; - } - - return exts_present ? exts_count : 0; -} - -asn_enc_rval_t -SEQUENCE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - int n_extensions; - size_t edx; - size_t i; - - (void)constraints; - - if(!sptr) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); - - /* - * X.691#18.1 Whether structure is extensible - * and whether to encode extensions - */ - if(specs->first_extension < 0) { - n_extensions = 0; /* There are no extensions to encode */ - } else { - n_extensions = SEQUENCE__handle_extensions(td, sptr, 0, 0); - if(n_extensions < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { - ASN__ENCODE_FAILED; - } - } - - /* Encode a presence bitmap */ - for(i = 0; i < specs->roms_count; i++) { - asn_TYPE_member_t *elm; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - int present; - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - /* Eliminate default values */ - if(present && elm->default_value_cmp - && elm->default_value_cmp(*memb_ptr2) == 0) - present = 0; - - ASN_DEBUG("Element %s %s %s->%s is %s", - elm->flags & ATF_POINTER ? "ptr" : "inline", - elm->default_value_cmp ? "def" : "wtv", - td->name, elm->name, present ? "present" : "absent"); - if(per_put_few_bits(po, present, 1)) - ASN__ENCODE_FAILED; - } - - /* - * Encode the sequence ROOT elements. - */ - ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, - td->elements_count); - for(edx = 0; - edx < ((specs->first_extension < 0) ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - ASN_DEBUG("About to encode %s", elm->type->name); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - ASN_DEBUG("Encoding %s->%s:%s", td->name, elm->name, elm->type->name); - er = elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, *memb_ptr2, - po); - if(er.encoded == -1) return er; - } - - /* No extensions to encode */ - if(!n_extensions) ASN__ENCODED_OK(er); - - ASN_DEBUG("Length of extensions %d bit-map", n_extensions); - /* #18.8. Write down the presence bit-map length. */ - if(uper_put_nslength(po, n_extensions)) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Bit-map of %d elements", n_extensions); - /* #18.7. Encoding the extensions presence bit-map. */ - /* TODO: act upon NOTE in #18.7 for canonical PER */ - if(SEQUENCE__handle_extensions(td, sptr, po, 0) != n_extensions) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Writing %d extensions", n_extensions); - /* #18.9. Encode extensions as open type fields. */ - if(SEQUENCE__handle_extensions(td, sptr, 0, po) != n_extensions) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c deleted file mode 100644 index c6475f78a..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SEQUENCE_xer.c +++ /dev/null @@ -1,348 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) \ - do { \ - size_t num = (num_bytes); \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SEQUENCE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* Element index */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Skipping unknown extensions. - * Phase 4: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 3;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - - /* - * Go inside the inner member of a sequence. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr_dontuse; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr_dontuse = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr_dontuse; /* Only use of memb_ptr_dontuse */ - } - - if(elm->flags & ATF_OPEN_TYPE) { - tmprval = OPEN_TYPE_xer_get(opt_codec_ctx, td, st, elm, ptr, size); - } else { - /* Invoke the inner type decoder, m.b. multiple times */ - tmprval = elm->type->op->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, elm->name, - ptr, size); - } - XER_ADVANCE(tmprval.consumed); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - ctx->phase = 1; /* Back to body processing */ - ctx->step = ++edx; - ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", - ctx->phase, ctx->step); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, ptr, size, - &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", - tcv, ctx->phase, xml_tag); - - /* Skip the extensions section */ - if(ctx->phase == 3) { - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 4; - RETURN(RC_FAIL); - case 0: - XER_ADVANCE(ch_size); - continue; - case 1: - XER_ADVANCE(ch_size); - ctx->phase = 1; - continue; - case 2: - ctx->phase = 1; - break; - } - } - - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - if(edx >= td->elements_count || - /* Explicit OPTIONAL specs reaches the end */ - (edx + elements[edx].optional == td->elements_count) || - /* All extensions are optional */ - IN_EXTENSION_GROUP(specs, edx)) { - XER_ADVANCE(ch_size); - ctx->phase = 4; /* Phase out */ - RETURN(RC_OK); - } else { - ASN_DEBUG("Premature end of XER SEQUENCE"); - RETURN(RC_FAIL); - } - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%" ASN_PRI_SIZE "", - tcv, ctx->phase, edx); - if(ctx->phase != 1) { - break; /* Really unexpected */ - } - - if(edx < td->elements_count) { - /* - * Search which member corresponds to this tag. - */ - size_t n; - size_t edx_end = edx + elements[edx].optional + 1; - if(edx_end > td->elements_count) - edx_end = td->elements_count; - for(n = edx; n < edx_end; n++) { - elm = &td->elements[n]; - tcv = xer_check_tag(ptr, ch_size, elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx = n; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - n = edx_end; - break; /* Phase out */ - } - break; - } - if(n != edx_end) - continue; - } else { - ASN_DEBUG("Out of defined members: %" ASN_PRI_SIZE "/%u", - edx, td->elements_count); - } - - /* It is expected extension */ - if(IN_EXTENSION_GROUP(specs, - edx + (edx < td->elements_count - ? elements[edx].optional : 0))) { - ASN_DEBUG("Got anticipated extension at %" ASN_PRI_SIZE "", - edx); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - } else { - ctx->left = 1; - ctx->phase = 3; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", - size>0?((const char *)ptr)[0]:'.', - size>1?((const char *)ptr)[1]:'.', - size>2?((const char *)ptr)[2]:'.', - size>3?((const char *)ptr)[3]:'.', - size>4?((const char *)ptr)[4]:'.', - size>5?((const char *)ptr)[5]:'.'); - break; - } - - ctx->phase = 4; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - -asn_enc_rval_t -SEQUENCE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - int xcan = (flags & XER_F_CANONICAL); - asn_TYPE_descriptor_t *tmp_def_val_td = 0; - void *tmp_def_val = 0; - size_t edx; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - assert(tmp_def_val == 0); - if(elm->default_value_set) { - if(elm->default_value_set(&tmp_def_val)) { - ASN__ENCODE_FAILED; - } else { - memb_ptr = tmp_def_val; - tmp_def_val_td = elm->type; - } - } else if(elm->optional) { - continue; - } else { - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - /* Print the member itself */ - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmp_def_val) { - ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - tmp_def_val = 0; - } - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("", 1); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - ASN__ENCODE_FAILED; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c deleted file mode 100644 index 97a7cac0c..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF.c +++ /dev/null @@ -1,371 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_TYPE_operation_t asn_OP_SET_OF = { - SET_OF_free, -#if !defined(ASN_DISABLE_PRINT_SUPPORT) - SET_OF_print, -#else - 0, -#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ - SET_OF_compare, -#if !defined(ASN_DISABLE_BER_SUPPORT) - SET_OF_decode_ber, - SET_OF_encode_der, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_XER_SUPPORT) - SET_OF_decode_xer, - SET_OF_encode_xer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ -#if !defined(ASN_DISABLE_JER_SUPPORT) - SET_OF_encode_jer, -#else - 0, -#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) - SET_OF_decode_oer, - SET_OF_encode_oer, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - SET_OF_decode_uper, - SET_OF_encode_uper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - SET_OF_decode_aper, - SET_OF_encode_aper, -#else - 0, - 0, -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_RFILL_SUPPORT) - SET_OF_random_fill, -#else - 0, -#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ - 0 /* Use generic outmost tag fetcher */ -}; - -/* Append bytes to the above structure */ -static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { - struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; - - if(el_buf->length + size > el_buf->allocated_size) { - size_t new_size = el_buf->allocated_size ? el_buf->allocated_size : 8; - void *p; - - do { - new_size <<= 2; - } while(el_buf->length + size > new_size); - - p = REALLOC(el_buf->buf, new_size); - if(p) { - el_buf->buf = p; - el_buf->allocated_size = new_size; - } else { - return -1; - } - } - - memcpy(el_buf->buf + el_buf->length, buffer, size); - - el_buf->length += size; - return 0; -} - -static void assert_unused_bits(const struct _el_buffer* p) { - if(p->length) { - assert((p->buf[p->length-1] & ~(0xff << p->bits_unused)) == 0); - } else { - assert(p->bits_unused == 0); - } -} - -static int _el_buf_cmp(const void *ap, const void *bp) { - const struct _el_buffer *a = (const struct _el_buffer *)ap; - const struct _el_buffer *b = (const struct _el_buffer *)bp; - size_t common_len; - int ret = 0; - - if(a->length < b->length) - common_len = a->length; - else - common_len = b->length; - - if (a->buf && b->buf) { - ret = memcmp(a->buf, b->buf, common_len); - } - if(ret == 0) { - if(a->length < b->length) - ret = -1; - else if(a->length > b->length) - ret = 1; - /* Ignore unused bits. */ - assert_unused_bits(a); - assert_unused_bits(b); - } - - return ret; -} - -void -SET_OF__encode_sorted_free(struct _el_buffer *el_buf, size_t count) { - size_t i; - - for(i = 0; i < count; i++) { - FREEMEM(el_buf[i].buf); - } - - FREEMEM(el_buf); -} - -struct _el_buffer * -SET_OF__encode_sorted(const asn_TYPE_member_t *elm, - const asn_anonymous_set_ *list, - enum SET_OF__encode_method method) { - struct _el_buffer *encoded_els; - int edx; - - encoded_els = - (struct _el_buffer *)CALLOC(list->count, sizeof(encoded_els[0])); - if(encoded_els == NULL) { - return NULL; - } - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - const void *memb_ptr = list->array[edx]; - struct _el_buffer *encoding_el = &encoded_els[edx]; - asn_enc_rval_t erval = {0,0,0}; - - if(!memb_ptr) break; - - /* - * Encode the member into the prepared space. - */ - switch(method) { -#if !defined(ASN_DISABLE_BER_SUPPORT) - case SOES_DER: - erval = elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, - _el_addbytes, encoding_el); - break; -#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) - case SOES_CUPER: - erval = uper_encode(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, _el_addbytes, encoding_el); - if(erval.encoded != -1) { - size_t extra_bits = erval.encoded % 8; - assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); - encoding_el->bits_unused = (8 - extra_bits) & 0x7; - } - break; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ -#if !defined(ASN_DISABLE_APER_SUPPORT) - case SOES_CAPER: - erval = aper_encode(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, _el_addbytes, encoding_el); - if(erval.encoded != -1) { - size_t extra_bits = erval.encoded % 8; - assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); - encoding_el->bits_unused = (8 - extra_bits) & 0x7; - } - break; -#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ - - default: - assert(!"Unreachable"); - break; - } - if(erval.encoded < 0) break; - } - - if(edx == list->count) { - /* - * Sort the encoded elements according to their encoding. - */ - qsort(encoded_els, list->count, sizeof(encoded_els[0]), _el_buf_cmp); - - return encoded_els; - } else { - SET_OF__encode_sorted_free(encoded_els, edx); - return NULL; - } -} - -void -SET_OF_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(td && ptr) { - const asn_SET_OF_specifics_t *specs; - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); - asn_struct_ctx_t *ctx; /* Decoder context */ - int i; - - /* - * Could not use set_of_empty() because of (*free) - * incompatibility. - */ - for(i = 0; i < list->count; i++) { - void *memb_ptr = list->array[i]; - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } - list->count = 0; /* No meaningful elements left */ - - asn_set_empty(list); /* Remove (list->array) */ - - specs = (const asn_SET_OF_specifics_t *)td->specifics; - ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); - if(ctx->ptr) { - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - } - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, specs->struct_size); - break; - } - } -} - -int -SET_OF_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const asn_TYPE_member_t *elm = td->elements; - asn_constr_check_f *constr; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int i; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - constr = elm->encoding_constraints.general_constraints; - if(!constr) constr = elm->type->encoding_constraints.general_constraints; - - /* - * Iterate over the members of an array. - * Validate each in turn, until one fails. - */ - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - int ret; - - if(!memb_ptr) continue; - - ret = constr(elm->type, memb_ptr, ctfailcb, app_key); - if(ret) return ret; - } - - return 0; -} - -struct comparable_ptr { - const asn_TYPE_descriptor_t *td; - const void *sptr; -}; - -static int -SET_OF__compare_cb(const void *aptr, const void *bptr) { - const struct comparable_ptr *a = aptr; - const struct comparable_ptr *b = bptr; - assert(a->td == b->td); - return a->td->op->compare_struct(a->td, a->sptr, b->sptr); -} - -int -SET_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_anonymous_set_ *a = _A_CSET_FROM_VOID(aptr); - const asn_anonymous_set_ *b = _A_CSET_FROM_VOID(bptr); - - if(a && b) { - struct comparable_ptr *asorted; - struct comparable_ptr *bsorted; - ssize_t common_length; - ssize_t idx; - - if(a->count == 0) { - if(b->count) return -1; - return 0; - } else if(b->count == 0) { - return 1; - } - - asorted = MALLOC(a->count * sizeof(asorted[0])); - bsorted = MALLOC(b->count * sizeof(bsorted[0])); - if(!asorted || !bsorted) { - FREEMEM(asorted); - FREEMEM(bsorted); - return -1; - } - - for(idx = 0; idx < a->count; idx++) { - asorted[idx].td = td->elements->type; - asorted[idx].sptr = a->array[idx]; - } - - for(idx = 0; idx < b->count; idx++) { - bsorted[idx].td = td->elements->type; - bsorted[idx].sptr = b->array[idx]; - } - - qsort(asorted, a->count, sizeof(asorted[0]), SET_OF__compare_cb); - qsort(bsorted, b->count, sizeof(bsorted[0]), SET_OF__compare_cb); - - common_length = (a->count < b->count ? a->count : b->count); - for(idx = 0; idx < common_length; idx++) { - int ret = td->elements->type->op->compare_struct( - td->elements->type, asorted[idx].sptr, bsorted[idx].sptr); - if(ret) { - FREEMEM(asorted); - FREEMEM(bsorted); - return ret; - } - } - - FREEMEM(asorted); - FREEMEM(bsorted); - - if(idx < b->count) /* more elements in b */ - return -1; /* a is shorter, so put it first */ - if(idx < a->count) return 1; - } else if(!a) { - return -1; - } else if(!b) { - return 1; - } - - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c deleted file mode 100644 index 87c341e0f..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_aper.c +++ /dev/null @@ -1,186 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_enc_rval_t -SET_OF_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - const asn_TYPE_member_t *elm = td->elements; - struct _el_buffer *encoded_els; - asn_enc_rval_t er = {0,0,0}; - int seq; - - if(!sptr) ASN__ENCODE_FAILED; - - list = _A_CSET_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SET OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %lld ub %lld %s", - (long long int)ct->lower_bound, - (long long int)ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - /*if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED;*/ - - if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) { - ASN__ENCODE_FAILED; - } - } - - /* - * Canonical PER #22.1 mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_CAPER); - - for(seq = 0; seq < list->count;) { - ssize_t may_encode; - int need_eom = 0; - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - aper_put_length(po, -1, -1, list->count - seq, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - while(may_encode--) { - const struct _el_buffer *el = &encoded_els[seq++]; - if(asn_put_many_bits(po, el->buf, - (8 * el->length) - el->bits_unused) < 0) { - break; - } - } - if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -SET_OF_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - void *st = *sptr; - asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - int repeat = 0; - ssize_t nelems; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - list = _A_SET_FROM_VOID(st); - - /* Figure out which constraints to use */ - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted! */ - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - nelems = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); - ASN_DEBUG("Preparing to fetch %ld+%lld elements from %s", - (long)nelems, (long long int)ct->lower_bound, td->name); - if(nelems < 0) ASN__DECODE_STARVED; - nelems += ct->lower_bound; - } else { - nelems = -1; - } - - do { - int i; - if(nelems < 0) { - if (ct) - nelems = aper_get_length(pd, ct->lower_bound, ct->upper_bound, - ct->effective_bits, &repeat); - else - nelems = aper_get_length(pd, -1, -1, -1, &repeat); - ASN_DEBUG("Got to decode %d elements (eff %d)", - (int)nelems, (int)(ct ? ct->effective_bits : -1)); - if(nelems < 0) ASN__DECODE_STARVED; - } - - for(i = 0; i < nelems; i++) { - void *ptr = 0; - ASN_DEBUG("SET OF %s decoding", elm->type->name); - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, &ptr, pd); - ASN_DEBUG("%s SET OF %s decoded %d, %p", - td->name, elm->type->name, rv.code, ptr); - if(rv.code == RC_OK) { - if(ASN_SET_ADD(list, ptr) == 0) - continue; - ASN_DEBUG("Failed to add element into %s", - td->name); - /* Fall through */ - rv.code = RC_FAIL; - } else { - ASN_DEBUG("Failed decoding %s of %s (SET OF)", - elm->type->name, td->name); - } - if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); - return rv; - } - - nelems = -1; /* Allow uper_get_length() */ - } while(repeat); - - ASN_DEBUG("Decoded %s as SET OF", td->name); - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c deleted file mode 100644 index 4187e2999..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_ber.c +++ /dev/null @@ -1,355 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef PHASE_OUT -#define PHASE_OUT(ctx) \ - do { \ - ctx->phase = 10; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -/* - * The decoder of the SET OF type. - */ -asn_dec_rval_t -SET_OF_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as SET OF", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Subtracted below! */ - ADVANCE(rval.consumed); - - ASN_DEBUG("Structure consumes %ld bytes, " - "buffer %ld", (long)ctx->left, (long)size); - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next item. - */ - for(;; ctx->step = 0) { - ssize_t tag_len; /* Length of TLV's T */ - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - - if(ctx->left == 0) { - ASN_DEBUG("End of SET OF %s", td->name); - /* - * No more things to decode. - * Exit out of here. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Found the terminator of the - * indefinite length structure. - */ - break; - } - } - - /* Outmost tag may be unknown and cannot be fetched/compared */ - if(elm->tag != (ber_tlv_tag_t)-1) { - if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { - /* - * The new list member of expected type has arrived. - */ - } else { - ASN_DEBUG("Unexpected tag %s fixed SET OF %s", - ber_tlv_tag_string(tlv_tag), td->name); - ASN_DEBUG("%s SET OF has tag %s", - td->name, ber_tlv_tag_string(elm->tag)); - RETURN(RC_FAIL); - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->op->ber_decoder(opt_codec_ctx, - elm->type, &ctx->ptr, - ptr, LEFT, 0); - ASN_DEBUG("In %s SET OF %s code %d consumed %d", - td->name, elm->type->name, - rval.code, (int)rval.consumed); - switch(rval.code) { - case RC_OK: - { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - else - ctx->ptr = 0; - } - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - /* Fall through */ - case RC_FAIL: /* Fatal error */ - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all list members) */ - - NEXT_PHASE(ctx); - case 2: - /* - * Read in all "end of content" TLVs. - */ - while(ctx->left < 0) { - if(LEFT < 2) { - if(LEFT > 0 && ((const char *)ptr)[0] != 0) { - /* Unexpected tag */ - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - } - if(((const char *)ptr)[0] == 0 - && ((const char *)ptr)[1] == 0) { - ADVANCE(2); - ctx->left++; - } else { - RETURN(RC_FAIL); - } - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - -/* - * The DER encoder of the SET OF type. - */ -asn_enc_rval_t -SET_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - struct _el_buffer *encoded_els; - int edx; - - ASN_DEBUG("Estimating size for SET OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - asn_enc_rval_t erval = {0,0,0}; - - if(!memb_ptr) ASN__ENCODE_FAILED; - - erval = - elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, 0, 0); - if(erval.encoded == -1) return erval; - computed_size += erval.encoded; - } - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = - der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); - if(encoding_size < 0) { - ASN__ENCODE_FAILED; - } - computed_size += encoding_size; - - if(!cb || list->count == 0) { - asn_enc_rval_t erval = {0,0,0}; - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } - - ASN_DEBUG("Encoding members of %s SET OF", td->name); - - /* - * DER mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the - * encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_DER); - - /* - * Report encoded elements to the application. - * Dispose of temporary sorted members table. - */ - for(edx = 0; edx < list->count; edx++) { - struct _el_buffer *encoded_el = &encoded_els[edx]; - /* Report encoded chunks to the application */ - if(cb(encoded_el->buf, encoded_el->length, app_key) < 0) { - break; - } else { - encoding_size += encoded_el->length; - } - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - if(edx == list->count) { - asn_enc_rval_t erval = {0,0,0}; - assert(computed_size == (size_t)encoding_size); - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } else { - ASN__ENCODE_FAILED; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c deleted file mode 100644 index a0c2adc5e..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_jer.c +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -typedef struct jer_tmp_enc_s { - void *buffer; - size_t offset; - size_t size; -} jer_tmp_enc_t; - -static int -SET_OF_encode_jer_callback(const void *buffer, size_t size, void *key) { - jer_tmp_enc_t *t = (jer_tmp_enc_t *)key; - if(t->offset + size >= t->size) { - size_t newsize = (t->size << 2) + size; - void *p = REALLOC(t->buffer, newsize); - if(!p) return -1; - t->buffer = p; - t->size = newsize; - } - memcpy((char *)t->buffer + t->offset, buffer, size); - t->offset += size; - return 0; -} - -static int -SET_OF_jer_order(const void *aptr, const void *bptr) { - const jer_tmp_enc_t *a = (const jer_tmp_enc_t *)aptr; - const jer_tmp_enc_t *b = (const jer_tmp_enc_t *)bptr; - size_t minlen = a->offset; - int ret; - if(b->offset < minlen) minlen = b->offset; - /* Well-formed UTF-8 has this nice lexicographical property... */ - ret = memcmp(a->buffer, b->buffer, minlen); - if(ret != 0) return ret; - if(a->offset == b->offset) - return 0; - if(a->offset == minlen) - return -1; - return 1; -} - -asn_enc_rval_t -SET_OF_encode_jer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum jer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = 0; - jer_tmp_enc_t *encs = 0; - size_t encs_count = 0; - void *original_app_key = app_key; - asn_app_consume_bytes_f *original_cb = cb; - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - if(xcan) { - encs = (jer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); - if(!encs) ASN__ENCODE_FAILED; - cb = SET_OF_encode_jer_callback; - } - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(encs) { - memset(&encs[encs_count], 0, sizeof(encs[0])); - app_key = &encs[encs_count]; - encs_count++; - } - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("\"", 1, mname, mlen, "\": ", 3); - } - - if(!xcan && specs->as_XMLValueList == 1) - ASN__TEXT_INDENT(1, ilevel + 1); - tmper = elm->type->op->jer_encoder(elm->type, memb_ptr, - ilevel + (specs->as_XMLValueList != 2), - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - ASN__CALLBACK3("<", 1, name, len, "/>", 2); - } - - /* if(mname) { */ - /* ASN__CALLBACK3("", 1); */ - /* } */ - - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - if(encs) { - jer_tmp_enc_t *enc = encs; - jer_tmp_enc_t *end = encs + encs_count; - ssize_t control_size = 0; - - er.encoded = 0; - cb = original_cb; - app_key = original_app_key; - qsort(encs, encs_count, sizeof(encs[0]), SET_OF_jer_order); - - for(; enc < end; enc++) { - ASN__CALLBACK(enc->buffer, enc->offset); - FREEMEM(enc->buffer); - enc->buffer = 0; - control_size += enc->offset; - } - assert(control_size == er.encoded); - } - - goto cleanup; -cb_failed: - ASN__ENCODE_FAILED; -cleanup: - if(encs) { - size_t n; - for(n = 0; n < encs_count; n++) { - FREEMEM(encs[n].buffer); - } - FREEMEM(encs); - } - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c deleted file mode 100644 index a0f0140dc..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_oer.c +++ /dev/null @@ -1,281 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef SET_PHASE -#define SET_PHASE(ctx, value) \ - do { \ - ctx->phase = value; \ - ctx->step = 0; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t _rval; \ - _rval.code = _code; \ - _rval.consumed = consumed_myself; \ - return _rval; \ - } while(0) - -/* - * The SEQUENCE OF and SET OF values utilize a "quantity field". - * It is is a pointless combination of #8.6 (length determinant, capable - * of encoding tiny and huge numbers in the shortest possible number of octets) - * and the variable sized integer. What could have been encoded by #8.6 alone - * is required to be encoded by #8.6 followed by that number of unsigned octets. - * This doesn't make too much sense. It seems that the original version of OER - * standard have been using the unconstrained unsigned integer as a quantity - * field, and this legacy have gone through ISO/ITU-T standardization process. - */ -static ssize_t -oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) { - const uint8_t *b; - const uint8_t *bend; - size_t len = 0; - size_t qty; - - ssize_t len_len = oer_fetch_length(ptr, size, &len); - if(len_len <= 0) { - *qty_r = 0; - return len_len; - } - - if((len_len + len) > size) { - *qty_r = 0; - return 0; - } - - b = (const uint8_t *)ptr + len_len; - bend = b + len; - - /* Skip the leading 0-bytes */ - for(; b < bend && *b == 0; b++) { - } - - if((bend - b) > (ssize_t)sizeof(size_t)) { - /* Length is not representable by the native size_t type */ - *qty_r = 0; - return -1; - } - - for(qty = 0; b < bend; b++) { - qty = (qty << 8) + *b; - } - - if(qty > RSIZE_MAX) { /* A bit of C11 validation */ - *qty_r = 0; - return -1; - } - - *qty_r = qty; - assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr)); - return len_len + len; -} - -asn_dec_rval_t -SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - void *st = *struct_ptr; /* Target structure */ - asn_struct_ctx_t *ctx; /* Decoder context */ - size_t consumed_myself = 0; /* Consumed bytes from ptr. */ - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously. - */ - switch(ctx->phase) { - case 0: { - /* - * Fetch number of elements to decode. - */ - size_t length = 0; - size_t len_size = oer_fetch_quantity(ptr, size, &length); - switch(len_size) { - case 0: - RETURN(RC_WMORE); - case -1: - RETURN(RC_FAIL); - default: - ADVANCE(len_size); - ctx->left = length; - } - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 1: { - /* Decode components of the extension root */ - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - const void *base_ptr = ptr; - ber_tlv_len_t base_ctx_left = ctx->left; - - assert(td->elements_count == 1); - - ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name); - - for(; ctx->left > 0; ctx->left--) { - asn_dec_rval_t rv = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr, - size); - ADVANCE(rv.consumed); - switch(rv.code) { - case RC_OK: - if(ASN_SET_ADD(list, ctx->ptr) != 0) { - RETURN(RC_FAIL); - } else { - ctx->ptr = 0; - /* - * This check is to avoid compression bomb with - * specs like SEQUENCE/SET OF NULL which don't - * consume data at all. - */ - if(rv.consumed == 0 && base_ptr == ptr - && (base_ctx_left - ctx->left) > 200) { - ASN__DECODE_FAILED; - } - break; - } - case RC_WMORE: - RETURN(RC_WMORE); - case RC_FAIL: - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - SET_PHASE(ctx, 3); - RETURN(RC_FAIL); - } - } - /* Decoded decently. */ - NEXT_PHASE(ctx); - } - /* Fall through */ - case 2: - /* Ignore fully decoded */ - assert(ctx->left == 0); - RETURN(RC_OK); - case 3: - /* Failed to decode. */ - RETURN(RC_FAIL); - } - - return rval; -} - -static ssize_t -oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) { - uint8_t buf[1 + sizeof(size_t)]; - uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */ - size_t encoded; - - do { - *b-- = qty; - qty >>= 8; - } while(qty); - - *b = sizeof(buf) - (b-buf) - 1; - encoded = sizeof(buf) - (b-buf); - if(cb(b, encoded, app_key) < 0) - return -1; - return encoded; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -SET_OF_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_TYPE_member_t *elm; - const asn_anonymous_set_ *list; - size_t computed_size = 0; - ssize_t qty_len; - int n; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - elm = td->elements; - list = _A_CSET_FROM_VOID(sptr); - - qty_len = oer_put_quantity(list->count, cb, app_key); - if(qty_len < 0) { - ASN__ENCODE_FAILED; - } - computed_size += qty_len; - - for(n = 0; n < list->count; n++) { - void *memb_ptr = list->array[n]; - asn_enc_rval_t er = {0,0,0}; - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded < 0) { - return er; - } else { - computed_size += er.encoded; - } - } - - { - asn_enc_rval_t erval = {0,0,0}; - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c deleted file mode 100644 index 748dba767..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_print.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -int -SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int ret; - int i; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - _i_INDENT(1); - - ret = elm->type->op->print_struct(elm->type, memb_ptr, - ilevel + 1, cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c deleted file mode 100644 index 9b2ac5ed2..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_rfill.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_random_fill_result_t -SET_OF_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_SET_OF_specifics_t *specs = - (const asn_SET_OF_specifics_t *)td->specifics; - asn_random_fill_result_t res_ok = {ARFILL_OK, 0}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - const asn_TYPE_member_t *elm = td->elements; - void *st = *sptr; - long max_elements = 5; - long slb = 0; /* Lower size bound */ - long sub = 0; /* Upper size bound */ - size_t rnd_len; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (*sptr = CALLOC(1, specs->struct_size)); - if(st == NULL) { - return result_failed; - } - } - - switch(asn_random_between(0, 6)) { - case 0: max_elements = 0; break; - case 1: max_elements = 1; break; - case 2: max_elements = 5; break; - case 3: max_elements = max_length; break; - case 4: max_elements = max_length / 2; break; - case 5: max_elements = max_length / 4; break; - default: break; - } - sub = slb + max_elements; - -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_SEMI_CONSTRAINED) { - slb = pc->lower_bound; - sub = pc->lower_bound + max_elements; - } else if(pc->flags & APC_CONSTRAINED) { - slb = pc->lower_bound; - sub = pc->upper_bound; - if(sub - slb > max_elements) sub = slb + max_elements; - } - } -#else - if(!constraints) constraints = &td->encoding_constraints; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - - /* Bias towards edges of allowed space */ - switch(asn_random_between(-1, 4)) { - default: - case -1: -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - /* Prepare lengths somewhat outside of constrained range. */ - if(constraints->per_constraints - && (constraints->per_constraints->size.flags & APC_EXTENSIBLE)) { - switch(asn_random_between(0, 5)) { - default: - case 0: - rnd_len = 0; - break; - case 1: - if(slb > 0) { - rnd_len = slb - 1; - } else { - rnd_len = 0; - } - break; - case 2: - rnd_len = asn_random_between(0, slb); - break; - case 3: - if(sub < (ssize_t)max_length) { - rnd_len = sub + 1; - } else { - rnd_len = max_length; - } - break; - case 4: - if(sub < (ssize_t)max_length) { - rnd_len = asn_random_between(sub + 1, max_length); - } else { - rnd_len = max_length; - } - break; - case 5: - rnd_len = max_length; - break; - } - break; - } -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - /* Fall through */ - case 0: - rnd_len = asn_random_between(slb, sub); - break; - case 1: - if(slb < sub) { - rnd_len = asn_random_between(slb + 1, sub); - break; - } - /* Fall through */ - case 2: - rnd_len = asn_random_between(slb, slb); - break; - case 3: - if(slb < sub) { - rnd_len = asn_random_between(slb, sub - 1); - break; - } - /* Fall through */ - case 4: - rnd_len = asn_random_between(sub, sub); - break; - } - - for(; rnd_len > 0; rnd_len--) { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - void *ptr = 0; - asn_random_fill_result_t tmpres = elm->type->op->random_fill( - elm->type, &ptr, &elm->encoding_constraints, - (max_length > res_ok.length ? max_length - res_ok.length : 0) - / rnd_len); - switch(tmpres.code) { - case ARFILL_OK: - ASN_SET_ADD(list, ptr); - res_ok.length += tmpres.length; - break; - case ARFILL_SKIPPED: - break; - case ARFILL_FAILED: - assert(ptr == 0); - return tmpres; - } - } - - return res_ok; -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c deleted file mode 100644 index b99a2449e..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_uper.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -asn_dec_rval_t -SET_OF_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - void *st = *sptr; - asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - int repeat = 0; - ssize_t nelems; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - list = _A_SET_FROM_VOID(st); - - /* Figure out which constraints to use */ - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted! */ - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - nelems = per_get_few_bits(pd, ct->effective_bits); - ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", - (long)nelems, ct->lower_bound, td->name); - if(nelems < 0) ASN__DECODE_STARVED; - nelems += ct->lower_bound; - } else { - nelems = -1; - } - - do { - int i; - if(nelems < 0) { - nelems = uper_get_length(pd, -1, 0, &repeat); - ASN_DEBUG("Got to decode %" ASN_PRI_SSIZE " elements (eff %d)", - nelems, (int)(ct ? ct->effective_bits : -1)); - if(nelems < 0) ASN__DECODE_STARVED; - } - - for(i = 0; i < nelems; i++) { - void *ptr = 0; - ASN_DEBUG("SET OF %s decoding", elm->type->name); - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - &ptr, pd); - ASN_DEBUG("%s SET OF %s decoded %d, %p", - td->name, elm->type->name, rv.code, ptr); - if(rv.code == RC_OK) { - if(ASN_SET_ADD(list, ptr) == 0) { - if(rv.consumed == 0 && nelems > 200) { - /* Protect from SET OF NULL compression bombs. */ - ASN__DECODE_FAILED; - } - continue; - } - ASN_DEBUG("Failed to add element into %s", - td->name); - /* Fall through */ - rv.code = RC_FAIL; - } else { - ASN_DEBUG("Failed decoding %s of %s (SET OF)", - elm->type->name, td->name); - } - if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); - return rv; - } - - nelems = -1; /* Allow uper_get_length() */ - } while(repeat); - - ASN_DEBUG("Decoded %s as SET OF", td->name); - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - -asn_enc_rval_t -SET_OF_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - const asn_TYPE_member_t *elm = td->elements; - struct _el_buffer *encoded_els; - asn_enc_rval_t er = {0,0,0}; - size_t encoded_edx; - - if(!sptr) ASN__ENCODE_FAILED; - - list = _A_CSET_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; - } else if(list->count == 0) { - /* When the list is empty add only the length determinant - * X.691, #20.6 and #11.9.4.1 - */ - if (uper_put_length(po, 0, 0)) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } - - - /* - * Canonical UPER #22.1 mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_CUPER); - - for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { - ssize_t may_encode; - size_t edx; - int need_eom = 0; - - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - uper_put_length(po, list->count - encoded_edx, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { - const struct _el_buffer *el = &encoded_els[edx]; - if(asn_put_many_bits(po, el->buf, - (8 * el->length) - el->bits_unused) < 0) { - break; - } - } - - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - - encoded_edx += may_encode; - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - if((ssize_t)encoded_edx == list->count) { - ASN__ENCODED_OK(er); - } else { - ASN__ENCODE_FAILED; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c b/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c deleted file mode 100644 index 1d97e5be3..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_SET_OF_xer.c +++ /dev/null @@ -1,314 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SET_OF_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *element = td->elements; - const char *elm_tag; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval = {RC_OK, 0}; /* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* Which tag is expected for the downstream */ - if(specs->as_XMLValueList) { - elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; - } else { - elm_tag = (*element->name) - ? element->name : element->type->xml_tag; - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - */ - for(; ctx->phase <= 2;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Go inside the inner member of a set. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval = {RC_OK, 0}; - - /* Invoke the inner type decoder, m.b. multiple times */ - ASN_DEBUG("XER/SET OF element [%s]", elm_tag); - tmprval = element->type->op->xer_decoder(opt_codec_ctx, - element->type, - &ctx->ptr, elm_tag, - buf_ptr, size); - if(tmprval.code == RC_OK) { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - ctx->ptr = 0; - XER_ADVANCE(tmprval.consumed); - } else { - XER_ADVANCE(tmprval.consumed); - RETURN(tmprval.code); - } - ctx->phase = 1; /* Back to body processing */ - ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, - buf_ptr, size, &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", - tcv, ctx->phase, xml_tag); - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - /* No more things to decode */ - XER_ADVANCE(ch_size); - ctx->phase = 3; /* Phase out */ - RETURN(RC_OK); - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); - if(ctx->phase == 1) { - /* - * Process a single possible member. - */ - ctx->phase = 2; - continue; - } - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SET OF"); - break; - } - - ctx->phase = 3; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - -typedef struct xer_tmp_enc_s { - void *buffer; - size_t offset; - size_t size; -} xer_tmp_enc_t; - -static int -SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { - xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; - if(t->offset + size >= t->size) { - size_t newsize = (t->size << 2) + size; - void *p = REALLOC(t->buffer, newsize); - if(!p) return -1; - t->buffer = p; - t->size = newsize; - } - memcpy((char *)t->buffer + t->offset, buffer, size); - t->offset += size; - return 0; -} - -static int -SET_OF_xer_order(const void *aptr, const void *bptr) { - const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; - const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; - size_t minlen = a->offset; - int ret; - if(b->offset < minlen) minlen = b->offset; - /* Well-formed UTF-8 has this nice lexicographical property... */ - ret = memcmp(a->buffer, b->buffer, minlen); - if(ret != 0) return ret; - if(a->offset == b->offset) - return 0; - if(a->offset == minlen) - return -1; - return 1; -} - -asn_enc_rval_t -SET_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - xer_tmp_enc_t *encs = 0; - size_t encs_count = 0; - void *original_app_key = app_key; - asn_app_consume_bytes_f *original_cb = cb; - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - if(xcan) { - encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); - if(!encs) ASN__ENCODE_FAILED; - cb = SET_OF_encode_xer_callback; - } - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(encs) { - memset(&encs[encs_count], 0, sizeof(encs[0])); - app_key = &encs[encs_count]; - encs_count++; - } - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - if(!xcan && specs->as_XMLValueList == 1) - ASN__TEXT_INDENT(1, ilevel + 1); - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, - ilevel + (specs->as_XMLValueList != 2), - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - ASN__CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - ASN__CALLBACK3("", 1); - } - - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - if(encs) { - xer_tmp_enc_t *enc = encs; - xer_tmp_enc_t *end = encs + encs_count; - ssize_t control_size = 0; - - er.encoded = 0; - cb = original_cb; - app_key = original_app_key; - qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); - - for(; enc < end; enc++) { - ASN__CALLBACK(enc->buffer, enc->offset); - FREEMEM(enc->buffer); - enc->buffer = 0; - control_size += enc->offset; - } - assert(control_size == er.encoded); - } - - goto cleanup; -cb_failed: - ASN__ENCODE_FAILED; -cleanup: - if(encs) { - size_t n; - for(n = 0; n < encs_count; n++) { - FREEMEM(encs[n].buffer); - } - FREEMEM(encs); - } - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/2020/constr_TYPE.c b/src/tmx/Asn_J2735/src/2020/constr_TYPE.c deleted file mode 100644 index e634e750f..000000000 --- a/src/tmx/Asn_J2735/src/2020/constr_TYPE.c +++ /dev/null @@ -1,80 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Version of the ASN.1 infrastructure shipped with compiler. - */ -int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } - -static asn_app_consume_bytes_f _print2fp; - -/* - * Return the outmost tag of the type. - */ -ber_tlv_tag_t -asn_TYPE_outmost_tag(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { - - if(tag_mode) - return tag; - - if(type_descriptor->tags_count) - return type_descriptor->tags[0]; - - return type_descriptor->op->outmost_tag(type_descriptor, struct_ptr, 0, 0); -} - -/* - * Print the target language's structure in human readable form. - */ -int -asn_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, - const void *struct_ptr) { - if(!stream) stream = stdout; - if(!td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - /* Invoke type-specific printer */ - if(td->op->print_struct(td, struct_ptr, 1, _print2fp, stream)) { - return -1; - } - - /* Terminate the output */ - if(_print2fp("\n", 1, stream)) { - return -1; - } - - return fflush(stream); -} - -/* Dump the data into the specified stdio stream */ -static int -_print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - - -/* - * Some compilers do not support variable args macros. - * This function is a replacement of ASN_DEBUG() macro. - */ -void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); -void ASN_DEBUG_f(const char *fmt, ...) { - va_list ap; - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - fprintf(stderr, "\n"); - va_end(ap); -} diff --git a/src/tmx/Asn_J2735/src/2020/constraints.c b/src/tmx/Asn_J2735/src/2020/constraints.c deleted file mode 100644 index 72137cc5c..000000000 --- a/src/tmx/Asn_J2735/src/2020/constraints.c +++ /dev/null @@ -1,94 +0,0 @@ -#include -#include - -int -asn_generic_no_constraint(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, - asn_app_constraint_failed_f *cb, void *key) { - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Nothing to check */ - return 0; -} - -int -asn_generic_unknown_constraint(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, - asn_app_constraint_failed_f *cb, void *key) { - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Unknown how to check */ - return 0; -} - -struct errbufDesc { - const asn_TYPE_descriptor_t *failed_type; - const void *failed_struct_ptr; - char *errbuf; - size_t errlen; -}; - -static void -CC_PRINTFLIKE(4, 5) -_asn_i_ctfailcb(void *key, const asn_TYPE_descriptor_t *td, const void *sptr, - const char *fmt, ...) { - struct errbufDesc *arg = key; - va_list ap; - ssize_t vlen; - ssize_t maxlen; - - arg->failed_type = td; - arg->failed_struct_ptr = sptr; - - maxlen = arg->errlen; - if(maxlen <= 0) - return; - - va_start(ap, fmt); - vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); - va_end(ap); - if(vlen >= maxlen) { - arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ - arg->errlen = maxlen - 1; /* Not counting termination */ - return; - } else if(vlen >= 0) { - arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ - arg->errlen = vlen; /* Not counting termination */ - } else { - /* - * The libc on this system is broken. - */ - vlen = sizeof("") - 1; - maxlen--; - arg->errlen = vlen < maxlen ? vlen : maxlen; - memcpy(arg->errbuf, "", arg->errlen); - arg->errbuf[arg->errlen] = 0; - } - - return; -} - -int -asn_check_constraints(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, char *errbuf, size_t *errlen) { - struct errbufDesc arg; - int ret; - - arg.failed_type = 0; - arg.failed_struct_ptr = 0; - arg.errbuf = errbuf; - arg.errlen = errlen ? *errlen : 0; - - ret = type_descriptor->encoding_constraints.general_constraints( - type_descriptor, struct_ptr, _asn_i_ctfailcb, &arg); - if(ret == -1 && errlen) *errlen = arg.errlen; - - return ret; -} - diff --git a/src/tmx/Asn_J2735/src/2020/der_encoder.c b/src/tmx/Asn_J2735/src/2020/der_encoder.c deleted file mode 100644 index 2c6a6f769..000000000 --- a/src/tmx/Asn_J2735/src/2020/der_encoder.c +++ /dev/null @@ -1,194 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, int constructed); - -/* - * The DER encoder of any type. - */ -asn_enc_rval_t -der_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes, void *app_key) { - ASN_DEBUG("DER encoder invoked for %s", - type_descriptor->name); - - /* - * Invoke type-specific encoder. - */ - return type_descriptor->op->der_encoder( - type_descriptor, struct_ptr, /* Pointer to the destination structure */ - 0, 0, consume_bytes, app_key); -} - -/* - * Argument type and callback necessary for der_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -/* - * A variant of the der_encode() which encodes the data into the provided buffer - */ -asn_enc_rval_t -der_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg arg; - asn_enc_rval_t ec; - - arg.buffer = buffer; - arg.left = buffer_size; - - ec = type_descriptor->op->der_encoder(type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - 0, 0, encode_to_buffer_cb, &arg); - if(ec.encoded != -1) { - assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); - /* Return the encoded contents size */ - } - return ec; -} - - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t -der_write_tags(const asn_TYPE_descriptor_t *sd, size_t struct_length, - int tag_mode, int last_tag_form, - ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ - asn_app_consume_bytes_f *cb, void *app_key) { -#define ASN1_DER_MAX_TAGS_COUNT 4 - ber_tlv_tag_t - tags_buf_scratch[ASN1_DER_MAX_TAGS_COUNT * sizeof(ber_tlv_tag_t)]; - ssize_t lens[ASN1_DER_MAX_TAGS_COUNT * sizeof(ssize_t)]; - const ber_tlv_tag_t *tags; /* Copy of tags stream */ - int tags_count; /* Number of tags */ - size_t overall_length; - int i; - - ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", - sd->name, tag_mode, sd->tags_count, - ber_tlv_tag_string(tag), - tag_mode - ?(sd->tags_count+1 - -((tag_mode == -1) && sd->tags_count)) - :sd->tags_count - ); - - if(sd->tags_count + 1 > ASN1_DER_MAX_TAGS_COUNT) { - ASN_DEBUG("System limit %d on tags count", ASN1_DER_MAX_TAGS_COUNT); - return -1; - } - - if(tag_mode) { - /* - * Instead of doing shaman dance like we do in ber_check_tags(), - * allocate a small array on the stack - * and initialize it appropriately. - */ - int stag_offset; - ber_tlv_tag_t *tags_buf = tags_buf_scratch; - tags_count = sd->tags_count - + 1 /* EXPLICIT or IMPLICIT tag is given */ - - ((tag_mode == -1) && sd->tags_count); - /* Copy tags over */ - tags_buf[0] = tag; - stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); - for(i = 1; i < tags_count; i++) - tags_buf[i] = sd->tags[i + stag_offset]; - tags = tags_buf; - } else { - tags = sd->tags; - tags_count = sd->tags_count; - } - - /* No tags to write */ - if(tags_count == 0) - return 0; - - /* - * Array of tags is initialized. - * Now, compute the size of the TLV pairs, from right to left. - */ - overall_length = struct_length; - for(i = tags_count - 1; i >= 0; --i) { - lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); - if(lens[i] == -1) return -1; - overall_length += lens[i]; - lens[i] = overall_length - lens[i]; - } - - if(!cb) return overall_length - struct_length; - - ASN_DEBUG("Encoding %s TL sequence (%d elements)", sd->name, - tags_count); - - /* - * Encode the TL sequence for real. - */ - for(i = 0; i < tags_count; i++) { - ssize_t len; - int _constr; - - /* Check if this tag happens to be constructed */ - _constr = (last_tag_form || i < (tags_count - 1)); - - len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); - if(len == -1) return -1; - } - - return overall_length - struct_length; -} - -static ssize_t -der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, - int constructed) { - uint8_t buf[32]; - size_t size = 0; - int buf_size = cb?sizeof(buf):0; - ssize_t tmp; - - /* Serialize tag (T from TLV) into possibly zero-length buffer */ - tmp = ber_tlv_tag_serialize(tag, buf, buf_size); - if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; - size += tmp; - - /* Serialize length (L from TLV) into possibly zero-length buffer */ - tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); - if(tmp == -1) return -1; - size += tmp; - - if(size > sizeof(buf)) - return -1; - - /* - * If callback is specified, invoke it, and check its return value. - */ - if(cb) { - if(constructed) *buf |= 0x20; - if(cb(buf, size, app_key) < 0) - return -1; - } - - return size; -} diff --git a/src/tmx/Asn_J2735/src/2020/jer_encoder.c b/src/tmx/Asn_J2735/src/2020/jer_encoder.c deleted file mode 100644 index 4fe5ce3a2..000000000 --- a/src/tmx/Asn_J2735/src/2020/jer_encoder.c +++ /dev/null @@ -1,69 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The JER encoder of any type. May be invoked by the application. - */ -asn_enc_rval_t -jer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - asn_enc_rval_t tmper; - const char *mname; - size_t mlen; - - if(!td || !sptr) goto cb_failed; - - mname = td->xml_tag; - mlen = strlen(mname); - - ASN__CALLBACK3("{\n\"", 3, mname, mlen, "\":", 2); - - int xFlag = 0; - tmper = td->op->jer_encoder(td, sptr, 1, xFlag, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK("}", 1); - // ASN__CALLBACK3("\n", xcan); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -/* - * This is a helper function for jer_fprint, which directs all incoming data - * into the provided file descriptor. - */ -static int -jer__print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - -int -jer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { - asn_enc_rval_t er = {0,0,0}; - - if(!stream) stream = stdout; - if(!td || !sptr) - return -1; - - er = jer_encode(td, sptr, jer__print2fp, stream); - if(er.encoded == -1) - return -1; - - return fflush(stream); -} - diff --git a/src/tmx/Asn_J2735/src/2020/oer_decoder.c b/src/tmx/Asn_J2735/src/2020/oer_decoder.c deleted file mode 100644 index 070173826..000000000 --- a/src/tmx/Asn_J2735/src/2020/oer_decoder.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * The OER decoder of any type. - */ -asn_dec_rval_t -oer_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - const void *ptr, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0, - struct_ptr, /* Pointer to the destination structure */ - ptr, size /* Buffer and its size */ - ); -} - -/* - * Open Type is encoded as a length (#8.6) followed by that number of bytes. - * Since we're just skipping, reading the length would be enough. - */ -ssize_t -oer_open_type_skip(const void *bufptr, size_t size) { - size_t len = 0; - return oer_fetch_length(bufptr, size, &len); -} - -/* - * Read the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t -oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *bufptr, size_t size) { - asn_dec_rval_t dr; - size_t container_len = 0; - ssize_t len_len; - enum asn_struct_free_method dispose_method = - (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING; - - /* Get the size of a length determinant */ - len_len = oer_fetch_length(bufptr, size, &container_len); - if(len_len <= 0) { - return len_len; /* Error or more data expected */ - } - - /* - * len_len can't be bigger than size, but size without len_len - * should be bigger or equal to container length - */ - if(size - len_len < container_len) { - /* More data is expected */ - return 0; - } - - dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr, - (const uint8_t *)bufptr + len_len, container_len); - if(dr.code == RC_OK) { - return len_len + container_len; - } else { - /* Even if RC_WMORE, we can't get more data into a closed container. */ - td->op->free_struct(td, *struct_ptr, dispose_method); - *struct_ptr = NULL; - return -1; - } -} - - -asn_dec_rval_t -oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - ssize_t len_len; - - (void)td; - (void)opt_codec_ctx; - (void)constraints; - - if(!st) { - st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC( - 1, sizeof(ASN__PRIMITIVE_TYPE_t))); - if(!st) ASN__DECODE_FAILED; - } - - - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - rval.consumed = len_len; - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - - rval.consumed += expected_length; - return rval; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/oer_encoder.c b/src/tmx/Asn_J2735/src/2020/oer_encoder.c deleted file mode 100644 index a284cc2f3..000000000 --- a/src/tmx/Asn_J2735/src/2020/oer_encoder.c +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * The OER encoder of any type. - */ -asn_enc_rval_t -oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes, void *app_key) { - ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name); - - /* - * Invoke type-specific encoder. - */ - return type_descriptor->op->oer_encoder( - type_descriptor, 0, - struct_ptr, /* Pointer to the destination structure */ - consume_bytes, app_key); -} - -/* - * Argument type and callback necessary for oer_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int -encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -/* - * A variant of the oer_encode() which encodes the data into the provided buffer - */ -asn_enc_rval_t -oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -) { - enc_to_buf_arg arg; - asn_enc_rval_t ec; - - arg.buffer = buffer; - arg.left = buffer_size; - - if(type_descriptor->op->oer_encoder == NULL) { - ec.encoded = -1; - ec.failed_type = type_descriptor; - ec.structure_ptr = struct_ptr; - ASN_DEBUG("OER encoder is not defined for %s", - type_descriptor->name); - } else { - ec = type_descriptor->op->oer_encoder( - type_descriptor, constraints, - struct_ptr, /* Pointer to the destination structure */ - encode_to_buffer_cb, &arg); - if(ec.encoded != -1) { - assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); - /* Return the encoded contents size */ - } - } - return ec; -} - -asn_enc_rval_t -oer_encode_primitive(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - ssize_t ret; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size); - - /* - * X.696 (08/2015) #27.2 - */ - ret = oer_serialize_length(st->size, cb, app_key); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += ret; - - er.encoded += st->size; - if(cb(st->buf, st->size, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} - -static int -oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) { - size_t *bytes = bytes_ptr; - (void)buffer; - *bytes += size; - return 0; -} - -ssize_t -oer_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t serialized_byte_count = 0; - asn_enc_rval_t er = {0,0,0}; - ssize_t len_len; - - er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes, - &serialized_byte_count); - if(er.encoded < 0) return -1; - assert(serialized_byte_count == (size_t)er.encoded); - - len_len = oer_serialize_length(serialized_byte_count, cb, app_key); - if(len_len == -1) return -1; - - er = td->op->oer_encoder(td, constraints, sptr, cb, app_key); - if(er.encoded < 0) return -1; - assert(serialized_byte_count == (size_t)er.encoded); - - return len_len + er.encoded; -} - diff --git a/src/tmx/Asn_J2735/src/2020/oer_support.c b/src/tmx/Asn_J2735/src/2020/oer_support.c deleted file mode 100644 index b15a3bc93..000000000 --- a/src/tmx/Asn_J2735/src/2020/oer_support.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -#include - -/* - * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t -oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) { - uint8_t first_byte; - size_t len_len; /* Length of the length determinant */ - const uint8_t *b; - const uint8_t *bend; - size_t len; - - if(size == 0) { - *len_r = 0; - return 0; - } - - first_byte = *(const uint8_t *)bufptr; - if((first_byte & 0x80) == 0) { /* Short form */ - *len_r = first_byte; /* 0..127 */ - return 1; - } - - len_len = (first_byte & 0x7f); - if((1 + len_len) > size) { - *len_r = 0; - return 0; - } - - b = (const uint8_t *)bufptr + 1; - bend = b + len_len; - - for(; b < bend && *b == 0; b++) { - /* Skip the leading 0-bytes */ - } - - if((bend - b) > (ssize_t)sizeof(size_t)) { - /* Length is not representable by the native size_t type */ - *len_r = 0; - return -1; - } - - for(len = 0; b < bend; b++) { - len = (len << 8) + *b; - } - - if(len > RSIZE_MAX) { /* A bit of C11 validation */ - *len_r = 0; - return -1; - } - - *len_r = len; - assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr)); - return len_len + 1; -} - - -/* - * Serialize OER length. Returns the number of bytes serialized - * or -1 if a given callback returned with negative result. - */ -ssize_t -oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, - void *app_key) { - uint8_t scratch[1 + sizeof(length)]; - uint8_t *sp = scratch; - int littleEndian = 1; /* Run-time detection */ - const uint8_t *pstart; - const uint8_t *pend; - const uint8_t *p; - int add; - - if(length <= 127) { - uint8_t b = length; - if(cb(&b, 1, app_key) < 0) { - return -1; - } - return 1; - } - - if(*(char *)&littleEndian) { - pstart = (const uint8_t *)&length + sizeof(length) - 1; - pend = (const uint8_t *)&length; - add = -1; - } else { - pstart = (const uint8_t *)&length; - pend = pstart + sizeof(length); - add = 1; - } - - for(p = pstart; p != pend; p += add) { - /* Skip leading zeros. */ - if(*p) break; - } - - for(sp = scratch + 1; ; p += add) { - *sp++ = *p; - if(p == pend) break; - } - assert((sp - scratch) - 1 <= 0x7f); - scratch[0] = 0x80 + ((sp - scratch) - 1); - - if(cb(scratch, sp - scratch, app_key) < 0) { - return -1; - } - - return sp - scratch; -} - diff --git a/src/tmx/Asn_J2735/src/2020/pdu_collection.c b/src/tmx/Asn_J2735/src/2020/pdu_collection.c deleted file mode 100644 index f84f60a4a..000000000 --- a/src/tmx/Asn_J2735/src/2020/pdu_collection.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - */ - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_Angle; -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_MsgCount; -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_TimeMark; -extern struct asn_TYPE_descriptor_s asn_DEF_DDate; -extern struct asn_TYPE_descriptor_s asn_DEF_DFullTime; -extern struct asn_TYPE_descriptor_s asn_DEF_DMonthDay; -extern struct asn_TYPE_descriptor_s asn_DEF_DTime; -extern struct asn_TYPE_descriptor_s asn_DEF_DYearMonth; -extern struct asn_TYPE_descriptor_s asn_DEF_VerticalOffset; -extern struct asn_TYPE_descriptor_s asn_DEF_CodeWord; -extern struct asn_TYPE_descriptor_s asn_DEF_Count; -extern struct asn_TYPE_descriptor_s asn_DEF_Duration; -extern struct asn_TYPE_descriptor_s asn_DEF_Location_quality; -extern struct asn_TYPE_descriptor_s asn_DEF_Location_tech; -extern struct asn_TYPE_descriptor_s asn_DEF_MessageBLOB; -extern struct asn_TYPE_descriptor_s asn_DEF_PayloadData; -extern struct asn_TYPE_descriptor_s asn_DEF_SignalReqScheme; -extern struct asn_TYPE_descriptor_s asn_DEF_TransitStatus; -extern struct asn_TYPE_descriptor_s asn_DEF_URL_Link; -extern struct asn_TYPE_descriptor_s asn_DEF_MessageFrame; -extern struct asn_TYPE_descriptor_s asn_DEF_EXTERNAL; - - -struct asn_TYPE_descriptor_s *asn_pdu_collection[] = { - /* From module AddGrpB in J2735-AddGrpB.asn */ - &asn_DEF_AddGrpB_Angle, - &asn_DEF_AddGrpB_MsgCount, - &asn_DEF_AddGrpB_TimeMark, - /* From module Common in J2735-Common.asn */ - &asn_DEF_DDate, - &asn_DEF_DFullTime, - &asn_DEF_DMonthDay, - &asn_DEF_DTime, - &asn_DEF_DYearMonth, - &asn_DEF_VerticalOffset, - &asn_DEF_CodeWord, - &asn_DEF_Count, - &asn_DEF_Duration, - &asn_DEF_Location_quality, - &asn_DEF_Location_tech, - &asn_DEF_MessageBLOB, - &asn_DEF_PayloadData, - &asn_DEF_SignalReqScheme, - &asn_DEF_TransitStatus, - &asn_DEF_URL_Link, - /* From module MessageFrame in J2735-MessageFrame.asn */ - &asn_DEF_MessageFrame, - /* From module ASN1C-UsefulInformationObjectClasses in /usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1 */ - &asn_DEF_EXTERNAL, - 0 -}; - diff --git a/src/tmx/Asn_J2735/src/2020/per_decoder.c b/src/tmx/Asn_J2735/src/2020/per_decoder.c deleted file mode 100644 index 42b92cacd..000000000 --- a/src/tmx/Asn_J2735/src/2020/per_decoder.c +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#include - -// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/2020/per_encoder.c b/src/tmx/Asn_J2735/src/2020/per_encoder.c deleted file mode 100644 index 01ab70b06..000000000 --- a/src/tmx/Asn_J2735/src/2020/per_encoder.c +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -int -ignore_output(const void *data, size_t size, void *app_key) { - (void)data; - (void)size; - (void)app_key; - return 0; -} - -int -encode_dyn_cb(const void *buffer, size_t size, void *key) { - enc_dyn_arg *arg = key; - if(arg->length + size >= arg->allocated) { - size_t new_size = arg->allocated ? arg->allocated : 8; - void *p; - - do { - new_size <<= 2; - } while(arg->length + size >= new_size); - - p = REALLOC(arg->buffer, new_size); - if(!p) { - FREEMEM(arg->buffer); - memset(arg, 0, sizeof(*arg)); - return -1; - } - arg->buffer = p; - arg->allocated = new_size; - } - memcpy(((char *)arg->buffer) + arg->length, buffer, size); - arg->length += size; - return 0; -} diff --git a/src/tmx/Asn_J2735/src/2020/per_opentype.c b/src/tmx/Asn_J2735/src/2020/per_opentype.c deleted file mode 100644 index 5620c5bb9..000000000 --- a/src/tmx/Asn_J2735/src/2020/per_opentype.c +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include - -/* - * Internal functions. - */ - -asn_dec_rval_t -uper_sot_suck(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - - (void)ctx; - (void)td; - (void)constraints; - (void)sptr; - - while(per_get_few_bits(pd, 1) >= 0); - - rv.code = RC_OK; - rv.consumed = pd->moved; - - return rv; -} diff --git a/src/tmx/Asn_J2735/src/2020/per_support.c b/src/tmx/Asn_J2735/src/2020/per_support.c deleted file mode 100644 index 62d343c74..000000000 --- a/src/tmx/Asn_J2735/src/2020/per_support.c +++ /dev/null @@ -1,9 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/2020/uper_decoder.c b/src/tmx/Asn_J2735/src/2020/uper_decoder.c deleted file mode 100644 index a88e95cfb..000000000 --- a/src/tmx/Asn_J2735/src/2020/uper_decoder.c +++ /dev/null @@ -1,96 +0,0 @@ -#include -#include -#include - -/* - * Decode a "Production of a complete encoding", X.691#10.1. - * The complete encoding contains at least one byte, and is an integral - * multiple of 8 bytes. - */ -asn_dec_rval_t -uper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buffer, size_t size) { - asn_dec_rval_t rval; - - rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); - if(rval.consumed) { - /* - * We've always given 8-aligned data, - * so convert bits to integral bytes. - */ - rval.consumed += 7; - rval.consumed >>= 3; - } else if(rval.code == RC_OK) { - if(size) { - if(((const uint8_t *)buffer)[0] == 0) { - rval.consumed = 1; /* 1 byte */ - } else { - ASN_DEBUG("Expecting single zeroed byte"); - rval.code = RC_FAIL; - } - } else { - /* Must contain at least 8 bits. */ - rval.code = RC_WMORE; - } - } - - return rval; -} - -asn_dec_rval_t -uper_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, - size_t size, int skip_bits, int unused_bits) { - asn_codec_ctx_t s_codec_ctx; - asn_dec_rval_t rval; - asn_per_data_t pd; - - if(skip_bits < 0 || skip_bits > 7 - || unused_bits < 0 || unused_bits > 7 - || (unused_bits > 0 && !size)) - ASN__DECODE_FAILED; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* Fill in the position indicator */ - memset(&pd, 0, sizeof(pd)); - pd.buffer = (const uint8_t *)buffer; - pd.nboff = skip_bits; - pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ - if(pd.nboff > pd.nbits) - ASN__DECODE_FAILED; - - /* - * Invoke type-specific decoder. - */ - if(!td->op->uper_decoder) - ASN__DECODE_FAILED; /* PER is not compiled in */ - rval = td->op->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); - if(rval.code == RC_OK) { - /* Return the number of consumed bits */ - rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) - + pd.nboff - skip_bits; - ASN_DEBUG("PER decoding consumed %ld, counted %ld", - (long)rval.consumed, (long)pd.moved); - assert(rval.consumed == pd.moved); - } else { - /* PER codec is not a restartable */ - rval.consumed = 0; - } - return rval; -} diff --git a/src/tmx/Asn_J2735/src/2020/uper_encoder.c b/src/tmx/Asn_J2735/src/2020/uper_encoder.c deleted file mode 100644 index 4c1d24a6c..000000000 --- a/src/tmx/Asn_J2735/src/2020/uper_encoder.c +++ /dev/null @@ -1,127 +0,0 @@ -#include -#include -#include - -static int _uper_encode_flush_outp(asn_per_outp_t *po); - -asn_enc_rval_t -uper_encode(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_per_outp_t po; - asn_enc_rval_t er = {0,0,0}; - - /* - * Invoke type-specific encoder. - */ - if(!td || !td->op->uper_encoder) - ASN__ENCODE_FAILED; /* PER is not compiled in */ - - po.buffer = po.tmpspace; - po.nboff = 0; - po.nbits = 8 * sizeof(po.tmpspace); - po.output = cb ? cb : ignore_output; - po.op_key = app_key; - po.flushed_bytes = 0; - - er = td->op->uper_encoder(td, constraints, sptr, &po); - if(er.encoded != -1) { - size_t bits_to_flush; - - bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; - - /* Set number of bits encoded to a firm value */ - er.encoded = (po.flushed_bytes << 3) + bits_to_flush; - - if(_uper_encode_flush_outp(&po)) ASN__ENCODE_FAILED; - } - - return er; -} - -/* - * Argument type and callback necessary for uper_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -asn_enc_rval_t -uper_encode_to_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg key; - - key.buffer = buffer; - key.left = buffer_size; - - if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); - - return uper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); -} - -ssize_t -uper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void **buffer_r) { - asn_enc_rval_t er = {0,0,0}; - enc_dyn_arg key; - - memset(&key, 0, sizeof(key)); - - er = uper_encode(td, constraints, sptr, encode_dyn_cb, &key); - switch(er.encoded) { - case -1: - FREEMEM(key.buffer); - return -1; - case 0: - FREEMEM(key.buffer); - key.buffer = MALLOC(1); - if(key.buffer) { - *(char *)key.buffer = '\0'; - *buffer_r = key.buffer; - return 1; - } else { - return -1; - } - default: - *buffer_r = key.buffer; - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - return ((er.encoded + 7) >> 3); - } -} - -/* - * Internally useful functions. - */ - -/* Flush partially filled buffer */ -static int -_uper_encode_flush_outp(asn_per_outp_t *po) { - uint8_t *buf; - - if(po->nboff == 0 && po->buffer == po->tmpspace) - return 0; - - buf = po->buffer + (po->nboff >> 3); - /* Make sure we account for the last, partially filled */ - if(po->nboff & 0x07) { - buf[0] &= 0xff << (8 - (po->nboff & 0x07)); - buf++; - } - - return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); -} diff --git a/src/tmx/Asn_J2735/src/2020/uper_opentype.c b/src/tmx/Asn_J2735/src/2020/uper_opentype.c deleted file mode 100644 index 17ee06416..000000000 --- a/src/tmx/Asn_J2735/src/2020/uper_opentype.c +++ /dev/null @@ -1,372 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -typedef struct uper_ugot_key { - asn_per_data_t oldpd; /* Old per data source */ - size_t unclaimed; - size_t ot_moved; /* Number of bits moved by OT processing */ - int repeat; -} uper_ugot_key; - -static int uper_ugot_refill(asn_per_data_t *pd); -static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); - -/* - * Encode an "open type field". - * #10.1, #10.2 - */ -int -uper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - void *buf; - void *bptr; - ssize_t size; - - ASN_DEBUG("Open type put %s ...", td->name); - - size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); - if(size <= 0) return -1; - - ASN_DEBUG("Open type put %s of length %" ASN_PRI_SSIZE " + overhead (1byte?)", td->name, - size); - - bptr = buf; - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size, &need_eom); - ASN_DEBUG("Prepending length %" ASN_PRI_SSIZE - " to %s and allowing to save %" ASN_PRI_SSIZE, - size, td->name, may_save); - if(may_save < 0) break; - if(per_put_many_bits(po, bptr, may_save * 8)) break; - bptr = (char *)bptr + may_save; - size -= may_save; - if(need_eom && uper_put_length(po, 0, 0)) { - FREEMEM(buf); - return -1; - } - } while(size); - - FREEMEM(buf); - if(size) return -1; - - return 0; -} - -static asn_dec_rval_t -uper_open_type_get_simple(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - ssize_t chunk_bytes; - int repeat; - uint8_t *buf = 0; - size_t bufLen = 0; - size_t bufSize = 0; - asn_per_data_t spd; - size_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s...", td->name); - - do { - chunk_bytes = uper_get_length(pd, -1, 0, &repeat); - if(chunk_bytes < 0) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - if(bufLen + chunk_bytes > bufSize) { - void *ptr; - bufSize = chunk_bytes + (bufSize << 2); - ptr = REALLOC(buf, bufSize); - if(!ptr) { - FREEMEM(buf); - ASN__DECODE_FAILED; - } - buf = ptr; - } - if(per_get_many_bits(pd, (buf == NULL)? NULL : buf + bufLen, 0, chunk_bytes << 3)) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - bufLen += chunk_bytes; - } while(repeat); - - ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, - (long)bufLen); - - memset(&spd, 0, sizeof(spd)); - spd.buffer = buf; - spd.nbits = bufLen << 3; - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->uper_decoder(ctx, td, constraints, sptr, &spd); - ASN_DEBUG_INDENT_ADD(-4); - - if(rv.code == RC_OK) { - /* Check padding validity */ - padding = spd.nbits - spd.nboff; - if (((padding > 0 && padding < 8) || - /* X.691#10.1.3 */ - (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && - per_get_few_bits(&spd, padding) == 0) { - /* Everything is cool */ - FREEMEM(buf); - return rv; - } - FREEMEM(buf); - if(padding >= 8) { - ASN_DEBUG("Too large padding %d in open type", (int)padding); - ASN__DECODE_FAILED; - } else { - ASN_DEBUG("No padding"); - } - } else { - FREEMEM(buf); - /* rv.code could be RC_WMORE, nonsense in this context */ - rv.code = RC_FAIL; /* No one would give us more */ - } - - return rv; -} - -static asn_dec_rval_t CC_NOTUSED -uper_open_type_get_complex(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - uper_ugot_key arg; - asn_dec_rval_t rv; - ssize_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s from %s", td->name, - asn_bit_data_string(pd)); - arg.oldpd = *pd; - arg.unclaimed = 0; - arg.ot_moved = 0; - arg.repeat = 1; - pd->refill = uper_ugot_refill; - pd->refill_key = &arg; - pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ - pd->moved = 0; /* This now counts the open type size in bits */ - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->uper_decoder(ctx, td, constraints, sptr, pd); - ASN_DEBUG_INDENT_ADD(-4); - -#define UPDRESTOREPD do { \ - /* buffer and nboff are valid, preserve them. */ \ - pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ - pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ - pd->refill = arg.oldpd.refill; \ - pd->refill_key = arg.oldpd.refill_key; \ - } while(0) - - if(rv.code != RC_OK) { - UPDRESTOREPD; - return rv; - } - - ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, - asn_bit_data_string(pd), - asn_bit_data_string(&arg.oldpd), - (int)arg.unclaimed, (int)arg.repeat); - - padding = pd->moved % 8; - if(padding) { - int32_t pvalue; - if(padding > 7) { - ASN_DEBUG("Too large padding %d in open type", - (int)padding); - rv.code = RC_FAIL; - UPDRESTOREPD; - return rv; - } - padding = 8 - padding; - ASN_DEBUG("Getting padding of %d bits", (int)padding); - pvalue = per_get_few_bits(pd, padding); - switch(pvalue) { - case -1: - ASN_DEBUG("Padding skip failed"); - UPDRESTOREPD; - ASN__DECODE_STARVED; - case 0: break; - default: - ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", - (int)padding, (int)pvalue); - UPDRESTOREPD; - ASN__DECODE_FAILED; - } - } - if(pd->nboff != pd->nbits) { - ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, - asn_bit_data_string(pd), asn_bit_data_string(&arg.oldpd)); - if(1) { - UPDRESTOREPD; - ASN__DECODE_FAILED; - } else { - arg.unclaimed += pd->nbits - pd->nboff; - } - } - - /* Adjust pd back so it points to original data */ - UPDRESTOREPD; - - /* Skip data not consumed by the decoder */ - if(arg.unclaimed) { - ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); - switch(per_skip_bits(pd, arg.unclaimed)) { - case -1: - ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); - ASN__DECODE_STARVED; - case 0: - ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); - break; - default: - /* Padding must be blank */ - ASN_DEBUG("Non-blank unconsumed padding"); - ASN__DECODE_FAILED; - } - arg.unclaimed = 0; - } - - if(arg.repeat) { - ASN_DEBUG("Not consumed the whole thing"); - rv.code = RC_FAIL; - return rv; - } - - return rv; -} - - -asn_dec_rval_t -uper_open_type_get(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); -} - -int -uper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { - asn_TYPE_descriptor_t s_td; - asn_TYPE_operation_t s_op; - asn_dec_rval_t rv; - - s_td.name = ""; - s_td.op = &s_op; - s_op.uper_decoder = uper_sot_suck; - - rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); - if(rv.code != RC_OK) - return -1; - else - return 0; -} - -/* - * Internal functions. - */ - -static int -uper_ugot_refill(asn_per_data_t *pd) { - uper_ugot_key *arg = pd->refill_key; - ssize_t next_chunk_bytes, next_chunk_bits; - ssize_t avail; - - asn_per_data_t *oldpd = &arg->oldpd; - - ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", - (long)pd->moved, (long)oldpd->moved); - - /* Advance our position to where pd is */ - oldpd->buffer = pd->buffer; - oldpd->nboff = pd->nboff; - oldpd->nbits -= pd->moved - arg->ot_moved; - oldpd->moved += pd->moved - arg->ot_moved; - arg->ot_moved = pd->moved; - - if(arg->unclaimed) { - /* Refill the container */ - if(per_get_few_bits(oldpd, 1)) - return -1; - if(oldpd->nboff == 0) { - assert(0); - return -1; - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff - 1; - pd->nbits = oldpd->nbits; - ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", - (long)pd->moved); - return 0; - } - - if(!arg->repeat) { - ASN_DEBUG("Want more but refill doesn't have it"); - return -1; - } - - next_chunk_bytes = uper_get_length(oldpd, -1, 0, &arg->repeat); - ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", - (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); - if(next_chunk_bytes < 0) return -1; - if(next_chunk_bytes == 0) { - pd->refill = 0; /* No more refills, naturally */ - assert(!arg->repeat); /* Implementation guarantee */ - } - next_chunk_bits = next_chunk_bytes << 3; - avail = oldpd->nbits - oldpd->nboff; - if(avail >= next_chunk_bits) { - pd->nbits = oldpd->nboff + next_chunk_bits; - arg->unclaimed = 0; - ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", - (long)next_chunk_bits, (long)oldpd->moved, - (long)oldpd->nboff, (long)oldpd->nbits, - (long)(oldpd->nbits - oldpd->nboff)); - } else { - pd->nbits = oldpd->nbits; - arg->unclaimed = next_chunk_bits - avail; - ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", - (long)avail, (long)next_chunk_bits, - (long)arg->unclaimed); - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff; - ASN_DEBUG("Refilled pd%s old%s", - asn_bit_data_string(pd), asn_bit_data_string(oldpd)); - return 0; -} - -static int -per_skip_bits(asn_per_data_t *pd, int skip_nbits) { - int hasNonZeroBits = 0; - while(skip_nbits > 0) { - int skip; - - /* per_get_few_bits() is more efficient when nbits <= 24 */ - if(skip_nbits < 24) - skip = skip_nbits; - else - skip = 24; - skip_nbits -= skip; - - switch(per_get_few_bits(pd, skip)) { - case -1: return -1; /* Starving */ - case 0: continue; /* Skipped empty space */ - default: hasNonZeroBits = 1; continue; - } - } - return hasNonZeroBits; -} diff --git a/src/tmx/Asn_J2735/src/2020/uper_support.c b/src/tmx/Asn_J2735/src/2020/uper_support.c deleted file mode 100644 index ce8adc5e7..000000000 --- a/src/tmx/Asn_J2735/src/2020/uper_support.c +++ /dev/null @@ -1,311 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * X.691-201508 #10.9 General rules for encoding a length determinant. - * Get the optionally constrained length "n" from the stream. - */ -ssize_t -uper_get_length(asn_per_data_t *pd, int ebits, size_t lower_bound, - int *repeat) { - ssize_t value; - - *repeat = 0; - - /* #11.9.4.1 Encoding if constrained (according to effective bits) */ - if(ebits >= 0 && ebits <= 16) { - value = per_get_few_bits(pd, ebits); - if(value >= 0) value += lower_bound; - return value; - } - - value = per_get_few_bits(pd, 8); - if((value & 0x80) == 0) { /* #11.9.3.6 */ - return (value & 0x7F); - } else if((value & 0x40) == 0) { /* #11.9.3.7 */ - /* bit 8 ... set to 1 and bit 7 ... set to zero */ - value = ((value & 0x3f) << 8) | per_get_few_bits(pd, 8); - return value; /* potential -1 from per_get_few_bits passes through. */ - } else if(value < 0) { - ASN_DEBUG("END of stream reached for PER"); - return -1; - } - value &= 0x3f; /* this is "m" from X.691, #11.9.3.8 */ - if(value < 1 || value > 4) { - return -1; /* Prohibited by #11.9.3.8 */ - } - *repeat = 1; - return (16384 * value); -} - -/* - * Get the normally small length "n". - * This procedure used to decode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -ssize_t -uper_get_nslength(asn_per_data_t *pd) { - ssize_t length; - - ASN_DEBUG("Getting normally small length"); - - if(per_get_few_bits(pd, 1) == 0) { - length = per_get_few_bits(pd, 6) + 1; - if(length <= 0) return -1; - ASN_DEBUG("l=%d", (int)length); - return length; - } else { - int repeat; - length = uper_get_length(pd, -1, 0, &repeat); - if(length >= 0 && !repeat) return length; - return -1; /* Error, or do not support >16K extensions */ - } -} - -/* - * Get the normally small non-negative whole number. - * X.691, #10.6 - */ -ssize_t -uper_get_nsnnwn(asn_per_data_t *pd) { - ssize_t value; - - value = per_get_few_bits(pd, 7); - if(value & 64) { /* implicit (value < 0) */ - value &= 63; - value <<= 2; - value |= per_get_few_bits(pd, 2); - if(value & 128) /* implicit (value < 0) */ - return -1; - if(value == 0) - return 0; - if(value >= 3) - return -1; - value = per_get_few_bits(pd, 8 * value); - return value; - } - - return value; -} - -/* - * X.691-11/2008, #11.6 - * Encoding of a normally small non-negative whole number - */ -int -uper_put_nsnnwn(asn_per_outp_t *po, int n) { - int bytes; - - if(n <= 63) { - if(n < 0) return -1; - return per_put_few_bits(po, n, 7); - } - if(n < 256) - bytes = 1; - else if(n < 65536) - bytes = 2; - else if(n < 256 * 65536) - bytes = 3; - else - return -1; /* This is not a "normally small" value */ - if(per_put_few_bits(po, bytes, 8)) - return -1; - - return per_put_few_bits(po, n, 8 * bytes); -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *out_value, int nbits) { - uintmax_t lhalf; /* Lower half of the number*/ - intmax_t half; - - if(nbits <= 31) { - half = per_get_few_bits(pd, nbits); - if(half < 0) return -1; - *out_value = half; - return 0; - } - - if((size_t)nbits > 8 * sizeof(*out_value)) - return -1; /* RANGE */ - - half = per_get_few_bits(pd, 31); - if(half < 0) return -1; - - if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) - return -1; - - *out_value = ((uintmax_t)half << (nbits - 31)) | lhalf; - return 0; -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int -uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, - int nbits) { - if(nbits <= 31) { - return per_put_few_bits(po, v, nbits); - } else { - /* Put higher portion first, followed by lower 31-bit */ - if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) - return -1; - return per_put_few_bits(po, v, 31); - } -} - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Put the length "n" (or part of it) into the stream. - */ -ssize_t -uper_put_length(asn_per_outp_t *po, size_t length, int *need_eom) { - int dummy = 0; - if(!need_eom) need_eom = &dummy; - - if(length <= 127) { /* #11.9.3.6 */ - *need_eom = 0; - return per_put_few_bits(po, length, 8) - ? -1 : (ssize_t)length; - } else if(length < 16384) { /* #10.9.3.7 */ - *need_eom = 0; - return per_put_few_bits(po, length|0x8000, 16) - ? -1 : (ssize_t)length; - } - - *need_eom = 0 == (length & 16383); - length >>= 14; - if(length > 4) { - *need_eom = 0; - length = 4; - } - - return per_put_few_bits(po, 0xC0 | length, 8) - ? -1 : (ssize_t)(length << 14); - -} - - -/* - * Put the normally small length "n" into the stream. - * This procedure used to encode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -int -uper_put_nslength(asn_per_outp_t *po, size_t length) { - if(length <= 64) { - /* #11.9.3.4 */ - if(length == 0) return -1; - return per_put_few_bits(po, length - 1, 7) ? -1 : 0; - } else { - int need_eom = 0; - if(uper_put_length(po, length, &need_eom) != (ssize_t)length - || need_eom) { - /* This might happen in case of >16K extensions */ - return -1; - } - } - - return 0; -} - -static int -per__imax_range(intmax_t lb, intmax_t ub, uintmax_t *range_r) { - uintmax_t bounds_range; - if((ub < 0) == (lb < 0)) { - bounds_range = ub - lb; - } else if(lb < 0) { - assert(ub >= 0); - bounds_range = 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); - } else { - assert(!"Unreachable"); - return -1; - } - *range_r = bounds_range; - return 0; -} - -int -per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output) { - uintmax_t range; - - assert(lb <= ub); - - if(v < lb || v > ub || per__imax_range(lb, ub, &range) < 0) { - /* Range error. */ - return -1; - } - - /* - * Fundamentally what we're doing is returning (v-lb). - * However, this triggers undefined behavior when the word width - * of signed (v) is the same as the size of unsigned (*output). - * In practice, it triggers the UndefinedSanitizer. Therefore we shall - * compute the ranges accurately to avoid C's undefined behavior. - */ - if((v < 0) == (lb < 0)) { - *output = v-lb; - return 0; - } else if(v < 0) { - uintmax_t rebased = 1 + (uintmax_t)-(v+1) + (uintmax_t)lb; - assert(rebased <= range); /* By construction */ - *output = rebased; - return 0; - } else if(lb < 0) { - uintmax_t rebased = 1 + (uintmax_t)-(lb+1) + (uintmax_t)v; - assert(rebased <= range); /* By construction */ - *output = rebased; - return 0; - } else { - assert(!"Unreachable"); - return -1; - } -} - -int -per_long_range_rebase(long v, intmax_t lb, intmax_t ub, unsigned long *output) { - uintmax_t tmp = *output; - int rc = per_imax_range_rebase((intmax_t)v, lb, ub, &tmp); - *output = tmp; - return rc; -} - -int -per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp) { - uintmax_t range; - - if(per__imax_range(lb, ub, &range) != 0) { - return -1; - } - - if(inp > range) { - /* - * We can encode something in the given number of bits that technically - * exceeds the range. This is an avenue for security errors, - * so we don't allow that. - */ - return -1; - } - - if(inp <= INTMAX_MAX) { - *outp = (intmax_t)inp + lb; - } else { - *outp = (lb + INTMAX_MAX + 1) + (intmax_t)((inp - INTMAX_MAX) - 1); - } - - return 0; -} - -int -per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp) { - intmax_t tmp = *outp; - int rc = per_imax_range_unrebase((uintmax_t)inp, lb, ub, &tmp); - *outp = tmp; - return rc; -} diff --git a/src/tmx/Asn_J2735/src/2020/xer_decoder.c b/src/tmx/Asn_J2735/src/2020/xer_decoder.c deleted file mode 100644 index 2a14557a6..000000000 --- a/src/tmx/Asn_J2735/src/2020/xer_decoder.c +++ /dev/null @@ -1,369 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* XER/XML parsing support */ - - -/* - * Decode the XER encoding of a given type. - */ -asn_dec_rval_t -xer_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *buffer, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return td->op->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); -} - - - -struct xer__cb_arg { - pxml_chunk_type_e chunk_type; - size_t chunk_size; - const void *chunk_buf; - int callback_not_invoked; -}; - -static int -xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { - struct xer__cb_arg *arg = (struct xer__cb_arg *)key; - arg->chunk_type = type; - arg->chunk_size = _chunk_size; - arg->chunk_buf = _chunk_data; - arg->callback_not_invoked = 0; - return -1; /* Terminate the XML parsing */ -} - -/* - * Fetch the next token from the XER/XML stream. - */ -ssize_t -xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { - struct xer__cb_arg arg; - int new_stateContext = *stateContext; - ssize_t ret; - - arg.callback_not_invoked = 1; - ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); - if(ret < 0) return -1; - if(arg.callback_not_invoked) { - assert(ret == 0); /* No data was consumed */ - *ch_type = PXER_WMORE; - return 0; /* Try again with more data */ - } else { - assert(arg.chunk_size); - assert(arg.chunk_buf == buffer); - } - - /* - * Translate the XML chunk types into more convenient ones. - */ - switch(arg.chunk_type) { - case PXML_TEXT: - *ch_type = PXER_TEXT; - break; - case PXML_TAG: - *ch_type = PXER_WMORE; - return 0; /* Want more */ - case PXML_TAG_END: - *ch_type = PXER_TAG; - break; - case PXML_COMMENT: - case PXML_COMMENT_END: - *ch_type = PXER_COMMENT; - break; - } - - *stateContext = new_stateContext; - return arg.chunk_size; -} - -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define RANGLE 0x3e /* '>' */ - -xer_check_tag_e -xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { - const char *buf = (const char *)buf_ptr; - const char *end; - xer_check_tag_e ct = XCT_OPENING; - - if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { - if(size >= 2) - ASN_DEBUG("Broken XML tag: \"%c...%c\"", - buf[0], buf[size - 1]); - return XCT_BROKEN; - } - - /* - * Determine the tag class. - */ - if(buf[1] == CSLASH) { - buf += 2; /* advance past "" */ - ct = XCT_CLOSING; - if(size > 0 && buf[size-1] == CSLASH) - return XCT_BROKEN; /* */ - } else { - buf++; /* advance past "<" */ - size -= 2; /* strip "<" and ">" */ - if(size > 0 && buf[size-1] == CSLASH) { - ct = XCT_BOTH; - size--; /* One more, for "/" */ - } - } - - /* Sometimes we don't care about the tag */ - if(!need_tag || !*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - /* - * Determine the tag name. - */ - for(end = buf + size; buf < end; buf++, need_tag++) { - int b = *buf, n = *need_tag; - if(b != n) { - if(n == 0) { - switch(b) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* "": whitespace is normal */ - return ct; - } - } - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - } - if(b == 0) - return XCT_BROKEN; /* Embedded 0 in buf?! */ - } - if(*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - return ct; -} - - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = (num_bytes); \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - if(rval.code != RC_OK) \ - ASN_DEBUG("Failed with %d", rval.code); \ - return rval; \ - } while(0) - -#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ - ssize_t converted_size = body_receiver \ - (struct_key, chunk_buf, chunk_size, \ - (size_t)chunk_size < size); \ - if(converted_size == -1) RETURN(RC_FAIL); \ - if(converted_size == 0 \ - && size == (size_t)chunk_size) \ - RETURN(RC_WMORE); \ - chunk_size = converted_size; \ - } while(0) -#define XER_GOT_EMPTY() do { \ - if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ - RETURN(RC_FAIL); \ - } while(0) - -/* - * Generalized function for decoding the primitive values. - */ -asn_dec_rval_t -xer_decode_general(const asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, - const char *xml_tag, /* Expected XML tag */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder) - (void *struct_key, const void *chunk_buf, size_t chunk_size), - ssize_t (*body_receiver) - (void *struct_key, const void *chunk_buf, size_t chunk_size, - int have_more) - ) { - - asn_dec_rval_t rval; - ssize_t consumed_myself = 0; - - (void)opt_codec_ctx; - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - */ - if(ctx->phase > 1) RETURN(RC_FAIL); - for(;;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, - &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TEXT: - if(ctx->phase == 0) { - /* - * We have to ignore whitespace here, - * but in order to be forward compatible - * with EXTENDED-XER (EMBED-VALUES, #25) - * any text is just ignored here. - */ - } else { - XER_GOT_BODY(buf_ptr, ch_size, size); - } - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - assert(ch_type == PXER_TAG && size); - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - /* - * Phase 0: - * Expecting the opening tag - * for the type being processed. - * Phase 1: - * Waiting for the closing XML tag. - */ - switch(tcv) { - case XCT_BOTH: - if(ctx->phase) break; - /* Finished decoding of an empty element */ - XER_GOT_EMPTY(); - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - case XCT_CLOSING: - if(!ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_UNKNOWN_BO: - /* - * Certain tags in the body may be expected. - */ - if(opt_unexpected_tag_decoder - && opt_unexpected_tag_decoder(struct_key, - buf_ptr, ch_size) >= 0) { - /* Tag's processed fine */ - ADVANCE(ch_size); - if(!ctx->phase) { - /* We are not expecting - * the closing tag anymore. */ - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - } - continue; - } - /* Fall through */ - default: - break; /* Unexpected tag */ - } - - ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); - break; /* Dark and mysterious things have just happened */ - } - - RETURN(RC_FAIL); -} - - -size_t -xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { - const char *p = (const char *)chunk_buf; - const char *pend = (p == NULL)? NULL : p + chunk_size; - - for(; p < pend; p++) { - switch(*p) { - /* X.693, #8.1.4 - * HORISONTAL TAB (9) - * LINE FEED (10) - * CARRIAGE RETURN (13) - * SPACE (32) - */ - case 0x09: case 0x0a: case 0x0d: case 0x20: - continue; - default: - break; - } - break; - } - return (p - (const char *)chunk_buf); -} - -/* - * This is a vastly simplified, non-validating XML tree skipper. - */ -int -xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { - assert(*depth > 0); - switch(tcv) { - case XCT_BOTH: - case XCT_UNKNOWN_BO: - /* These negate each other. */ - return 0; - case XCT_OPENING: - case XCT_UNKNOWN_OP: - ++(*depth); - return 0; - case XCT_CLOSING: - case XCT_UNKNOWN_CL: - if(--(*depth) == 0) - return (tcv == XCT_CLOSING) ? 2 : 1; - return 0; - default: - return -1; - } -} diff --git a/src/tmx/Asn_J2735/src/2020/xer_encoder.c b/src/tmx/Asn_J2735/src/2020/xer_encoder.c deleted file mode 100644 index 4177ede5c..000000000 --- a/src/tmx/Asn_J2735/src/2020/xer_encoder.c +++ /dev/null @@ -1,237 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The XER encoder of any type. May be invoked by the application. - */ -asn_enc_rval_t -xer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, - enum xer_encoder_flags_e xer_flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - asn_enc_rval_t tmper; - const char *mname; - size_t mlen; - int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; - - if(!td || !sptr) goto cb_failed; - - mname = td->xml_tag; - mlen = strlen(mname); - - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = td->op->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("\n", xcan); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -/* - * This is a helper function for xer_fprint, which directs all incoming data - * into the provided file descriptor. - */ -static int -xer__print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - -int -xer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { - asn_enc_rval_t er = {0,0,0}; - - if(!stream) stream = stdout; - if(!td || !sptr) - return -1; - - er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); - if(er.encoded == -1) - return -1; - - return fflush(stream); -} - -struct xer_buffer { - char *buffer; - size_t buffer_size; - size_t allocated_size; -}; - -static int -xer__buffer_append(const void *buffer, size_t size, void *app_key) { - struct xer_buffer *xb = app_key; - - while(xb->buffer_size + size + 1 > xb->allocated_size) { - size_t new_size = 2 * (xb->allocated_size ? xb->allocated_size : 64); - char *new_buf = MALLOC(new_size); - if(!new_buf) return -1; - if (xb->buffer) { - memcpy(new_buf, xb->buffer, xb->buffer_size); - } - FREEMEM(xb->buffer); - xb->buffer = new_buf; - xb->allocated_size = new_size; - } - - memcpy(xb->buffer + xb->buffer_size, buffer, size); - xb->buffer_size += size; - xb->buffer[xb->buffer_size] = '\0'; - return 0; -} - -enum xer_equivalence_e -xer_equivalent(const struct asn_TYPE_descriptor_s *td, const void *struct1, - const void *struct2, FILE *opt_debug_stream) { - struct xer_buffer xb1 = {0, 0, 0}; - struct xer_buffer xb2 = {0, 0, 0}; - asn_enc_rval_t e1, e2; - asn_dec_rval_t rval; - void *sptr = NULL; - - if(!td || !struct1 || !struct2) { - if(opt_debug_stream) { - if(!td) fprintf(opt_debug_stream, "Type descriptor missing\n"); - if(!struct1) fprintf(opt_debug_stream, "Structure 1 missing\n"); - if(!struct2) fprintf(opt_debug_stream, "Structure 2 missing\n"); - } - return XEQ_FAILURE; - } - - e1 = xer_encode(td, struct1, XER_F_BASIC, xer__buffer_append, &xb1); - if(e1.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of %s failed\n", td->name); - } - FREEMEM(xb1.buffer); - return XEQ_ENCODE1_FAILED; - } - - e2 = xer_encode(td, struct2, XER_F_BASIC, xer__buffer_append, &xb2); - if(e2.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of %s failed\n", td->name); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ENCODE1_FAILED; - } - - if(xb1.buffer_size != xb2.buffer_size - || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structures XER-encoded into different byte streams:\n=== " - "Structure 1 ===\n%s\n=== Structure 2 ===\n%s\n", - xb1.buffer, xb2.buffer); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_DIFFERENT; - } else { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Both structures encoded into the same XER byte stream " - "of size %" ASN_PRI_SIZE ":\n%s", - xb1.buffer_size, xb1.buffer); - } - } - - rval = xer_decode(NULL, td, (void **)&sptr, xb1.buffer, - xb1.buffer_size); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structure %s XER decode unexpectedly requires " - "more data:\n%s\n", - td->name, xb1.buffer); - } - /* Fall through */ - case RC_FAIL: - default: - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structure %s XER decoding resulted in failure.\n", - td->name); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_DECODE_FAILED; - } - - if(rval.consumed != xb1.buffer_size - && ((rval.consumed > xb1.buffer_size) - || xer_whitespace_span(xb1.buffer + rval.consumed, - xb1.buffer_size - rval.consumed) - != (xb1.buffer_size - rval.consumed))) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Round-trip decode of %s required less bytes (%" ASN_PRI_SIZE ") than " - "encoded (%" ASN_PRI_SIZE ")\n", - td->name, rval.consumed, xb1.buffer_size); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - /* - * Reuse xb2 to encode newly decoded structure. - */ - FREEMEM(xb2.buffer); - memset(&xb2, 0, sizeof(xb2)); - - e2 = xer_encode(td, sptr, XER_F_BASIC, xer__buffer_append, &xb2); - if(e2.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of round-trip decode of %s failed\n", - td->name); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - ASN_STRUCT_FREE(*td, sptr); - sptr = 0; - - if(xb1.buffer_size != xb2.buffer_size - || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "XER Encoding of round-trip decode of %s resulted in " - "different byte stream:\n" - "=== Original ===\n%s\n" - "=== Round-tripped ===\n%s\n", - xb1.buffer, xb2.buffer, td->name); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_SUCCESS; -} - diff --git a/src/tmx/Asn_J2735/src/2020/xer_support.c b/src/tmx/Asn_J2735/src/2020/xer_support.c deleted file mode 100644 index 36b4bfbfc..000000000 --- a/src/tmx/Asn_J2735/src/2020/xer_support.c +++ /dev/null @@ -1,227 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* Parser states */ -typedef enum { - ST_TEXT, - ST_TAG_START, - ST_TAG_BODY, - ST_TAG_QUOTE_WAIT, - ST_TAG_QUOTED_STRING, - ST_TAG_UNQUOTED_STRING, - ST_COMMENT_WAIT_DASH1, /* ""[0] */ - ST_COMMENT_CLO_RT /* "-->"[1] */ -} pstate_e; - -static const int -_charclass[256] = { - 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, - 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ -}; -#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) -#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) -#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) - -/* Aliases for characters, ASCII/UTF-8 */ -#define EXCLAM 0x21 /* '!' */ -#define CQUOTE 0x22 /* '"' */ -#define CDASH 0x2d /* '-' */ -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define CEQUAL 0x3d /* '=' */ -#define RANGLE 0x3e /* '>' */ -#define CQUEST 0x3f /* '?' */ - -/* Invoke token callback */ -#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ - int _ret; \ - pstate_e ns = _ns; \ - ssize_t _sz = (p - chunk_start) + _current_too; \ - if (!_sz) { \ - /* Shortcut */ \ - state = _ns; \ - break; \ - } \ - _ret = cb(type, chunk_start, _sz, key); \ - if(_ret < _sz) { \ - if(_current_too && _ret == -1) \ - state = ns; \ - goto finish; \ - } \ - chunk_start = p + _current_too; \ - state = ns; \ - } while(0) - -#define TOKEN_CB(_type, _ns, _current_too) \ - TOKEN_CB_CALL(_type, _ns, _current_too, 0) - -#define PXML_TAG_FINAL_CHUNK_TYPE PXML_TAG_END -#define PXML_COMMENT_FINAL_CHUNK_TYPE PXML_COMMENT_END - -#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ - TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1) - -/* - * Parser itself - */ -ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { - pstate_e state = (pstate_e)*stateContext; - const char *chunk_start = (const char *)xmlbuf; - const char *p = chunk_start; - const char *end = p + size; - - for(; p < end; p++) { - int C = *(const unsigned char *)p; - switch(state) { - case ST_TEXT: - /* - * Initial state: we're in the middle of some text, - * or just have started. - */ - if (C == LANGLE) - /* We're now in the tag, probably */ - TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); - break; - case ST_TAG_START: - if (ALPHA(C) || (C == CSLASH)) - state = ST_TAG_BODY; - else if (C == EXCLAM) - state = ST_COMMENT_WAIT_DASH1; - else - /* - * Not characters and not whitespace. - * Must be something like "3 < 4". - */ - TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ - break; - case ST_TAG_BODY: - switch(C) { - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - case LANGLE: - /* - * The previous tag wasn't completed, but still - * recognized as valid. (Mozilla-compatible) - */ - TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); - break; - case CEQUAL: - state = ST_TAG_QUOTE_WAIT; - break; - } - break; - case ST_TAG_QUOTE_WAIT: - /* - * State after the equal sign ("=") in the tag. - */ - switch(C) { - case CQUOTE: - state = ST_TAG_QUOTED_STRING; - break; - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - default: - if(!WHITESPACE(C)) - /* Unquoted string value */ - state = ST_TAG_UNQUOTED_STRING; - } - break; - case ST_TAG_QUOTED_STRING: - /* - * Tag attribute's string value in quotes. - */ - if(C == CQUOTE) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_TAG_UNQUOTED_STRING: - if(C == RANGLE) { - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - } else if(WHITESPACE(C)) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH1: - if(C == CDASH) { - state = ST_COMMENT_WAIT_DASH2; - } else { - /* Some ordinary tag. */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH2: - if(C == CDASH) { - /* Seen "<--" */ - state = ST_COMMENT; - } else { - /* Some ordinary tag */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT: - if(C == CDASH) { - state = ST_COMMENT_CLO_DASH2; - } - break; - case ST_COMMENT_CLO_DASH2: - if(C == CDASH) { - state = ST_COMMENT_CLO_RT; - } else { - /* This is not an end of a comment */ - state = ST_COMMENT; - } - break; - case ST_COMMENT_CLO_RT: - if(C == RANGLE) { - TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); - } else if(C == CDASH) { - /* Maintain current state, still waiting for '>' */ - } else { - state = ST_COMMENT; - } - break; - } /* switch(*ptr) */ - } /* for() */ - - /* - * Flush the partially processed chunk, state permitting. - */ - if(p - chunk_start) { - switch (state) { - case ST_COMMENT: - TOKEN_CB(PXML_COMMENT, state, 0); - break; - case ST_TEXT: - TOKEN_CB(PXML_TEXT, state, 0); - break; - default: break; /* a no-op */ - } - } - -finish: - *stateContext = (int)state; - return chunk_start - (const char *)xmlbuf; -} - diff --git a/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c deleted file mode 100644 index 4564e5209..000000000 --- a/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AccelSteerYawRateConfidence.h" - -static asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "yawRate" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "acceleration" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "steeringWheelAngle" - }, -}; -static ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { - sizeof(struct AccelSteerYawRateConfidence), - offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), - asn_MAP_AccelSteerYawRateConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { - "AccelSteerYawRateConfidence", - "AccelSteerYawRateConfidence", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AccelSteerYawRateConfidence_tags_1, - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_AccelSteerYawRateConfidence_1, - 3, /* Elements count */ - &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Acceleration.c b/src/tmx/Asn_J2735/src/r41/Acceleration.c deleted file mode 100644 index 1b3cc52ea..000000000 --- a/src/tmx/Asn_J2735/src/r41/Acceleration.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Acceleration.h" - -int -Acceleration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2000 && value <= 2001)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Acceleration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Acceleration_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Acceleration_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Acceleration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Acceleration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Acceleration_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Acceleration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Acceleration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Acceleration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Acceleration_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Acceleration_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Acceleration_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Acceleration = { - "Acceleration", - "Acceleration", - Acceleration_free, - Acceleration_print, - Acceleration_constraint, - Acceleration_decode_ber, - Acceleration_encode_der, - Acceleration_decode_xer, - Acceleration_encode_xer, - Acceleration_decode_uper, - Acceleration_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Acceleration_tags_1, - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - asn_DEF_Acceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - &asn_PER_type_Acceleration_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c deleted file mode 100644 index 0dc565129..000000000 --- a/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AccelerationConfidence.h" - -int -AccelerationConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AccelerationConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AccelerationConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AccelerationConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AccelerationConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AccelerationConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AccelerationConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AccelerationConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AccelerationConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AccelerationConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AccelerationConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "accl-100-00" }, - { 2, 11, "accl-010-00" }, - { 3, 11, "accl-005-00" }, - { 4, 11, "accl-001-00" }, - { 5, 11, "accl-000-10" }, - { 6, 11, "accl-000-05" }, - { 7, 11, "accl-000-01" } -}; -static unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { - 7, /* accl-000-01(7) */ - 6, /* accl-000-05(6) */ - 5, /* accl-000-10(5) */ - 4, /* accl-001-00(4) */ - 3, /* accl-005-00(3) */ - 2, /* accl-010-00(2) */ - 1, /* accl-100-00(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { - asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { - "AccelerationConfidence", - "AccelerationConfidence", - AccelerationConfidence_free, - AccelerationConfidence_print, - AccelerationConfidence_constraint, - AccelerationConfidence_decode_ber, - AccelerationConfidence_encode_der, - AccelerationConfidence_decode_xer, - AccelerationConfidence_encode_xer, - AccelerationConfidence_decode_uper, - AccelerationConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AccelerationConfidence_tags_1, - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_AccelerationConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c deleted file mode 100644 index 565a7ecef..000000000 --- a/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AccelerationSet4Way.h" - -int -AccelerationSet4Way_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 7)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -AccelerationSet4Way_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -AccelerationSet4Way_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AccelerationSet4Way_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AccelerationSet4Way_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AccelerationSet4Way_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AccelerationSet4Way_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AccelerationSet4Way_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AccelerationSet4Way_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AccelerationSet4Way_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AccelerationSet4Way_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AccelerationSet4Way_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { - "AccelerationSet4Way", - "AccelerationSet4Way", - AccelerationSet4Way_free, - AccelerationSet4Way_print, - AccelerationSet4Way_constraint, - AccelerationSet4Way_decode_ber, - AccelerationSet4Way_encode_der, - AccelerationSet4Way_decode_xer, - AccelerationSet4Way_encode_xer, - AccelerationSet4Way_decode_uper, - AccelerationSet4Way_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AccelerationSet4Way_tags_1, - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - &asn_PER_type_AccelerationSet4Way_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c deleted file mode 100644 index 536a52d4e..000000000 --- a/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AdvisorySpeed.h" - -static asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "type" - }, - { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedAdvice, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, - { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidence" - }, - { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "distance" - }, - { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "class" - }, - { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalAdvisorySpeed, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { - sizeof(struct AdvisorySpeed), - offsetof(struct AdvisorySpeed, _asn_ctx), - asn_MAP_AdvisorySpeed_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { - "AdvisorySpeed", - "AdvisorySpeed", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AdvisorySpeed_tags_1, - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_AdvisorySpeed_1, - 6, /* Elements count */ - &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c deleted file mode 100644 index eaed27d15..000000000 --- a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AdvisorySpeedList.h" - -static asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_AdvisorySpeed, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { - sizeof(struct AdvisorySpeedList), - offsetof(struct AdvisorySpeedList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { - "AdvisorySpeedList", - "AdvisorySpeedList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AdvisorySpeedList_tags_1, - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - &asn_PER_type_AdvisorySpeedList_constr_1, - asn_MBR_AdvisorySpeedList_1, - 1, /* Single element */ - &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c deleted file mode 100644 index 6ddc14d97..000000000 --- a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AdvisorySpeedType.h" - -int -AdvisorySpeedType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AdvisorySpeedType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AdvisorySpeedType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AdvisorySpeedType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AdvisorySpeedType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AdvisorySpeedType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AdvisorySpeedType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AdvisorySpeedType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AdvisorySpeedType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AdvisorySpeedType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AdvisorySpeedType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "greenwave" }, - { 2, 8, "ecoDrive" }, - { 3, 7, "transit" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { - 2, /* ecoDrive(2) */ - 1, /* greenwave(1) */ - 0, /* none(0) */ - 3 /* transit(3) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { - asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { - "AdvisorySpeedType", - "AdvisorySpeedType", - AdvisorySpeedType_free, - AdvisorySpeedType_print, - AdvisorySpeedType_constraint, - AdvisorySpeedType_decode_ber, - AdvisorySpeedType_encode_der, - AdvisorySpeedType_decode_xer, - AdvisorySpeedType_encode_xer, - AdvisorySpeedType_decode_uper, - AdvisorySpeedType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AdvisorySpeedType_tags_1, - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - &asn_PER_type_AdvisorySpeedType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c deleted file mode 100644 index 3fdc9e273..000000000 --- a/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AllowedManeuvers.h" - -int -AllowedManeuvers_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 12)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -AllowedManeuvers_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -AllowedManeuvers_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AllowedManeuvers_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AllowedManeuvers_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AllowedManeuvers_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AllowedManeuvers_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AllowedManeuvers_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AllowedManeuvers_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AllowedManeuvers_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AllowedManeuvers_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { - "AllowedManeuvers", - "AllowedManeuvers", - AllowedManeuvers_free, - AllowedManeuvers_print, - AllowedManeuvers_constraint, - AllowedManeuvers_decode_ber, - AllowedManeuvers_encode_der, - AllowedManeuvers_decode_xer, - AllowedManeuvers_encode_xer, - AllowedManeuvers_decode_uper, - AllowedManeuvers_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AllowedManeuvers_tags_1, - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - &asn_PER_type_AllowedManeuvers_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Altitude.c b/src/tmx/Asn_J2735/src/r41/Altitude.c deleted file mode 100644 index 1ed1e3abc..000000000 --- a/src/tmx/Asn_J2735/src/r41/Altitude.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Altitude.h" - -static asn_TYPE_member_t asn_MBR_Altitude_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeValue, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "value" - }, - { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidence" - }, -}; -static ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { - sizeof(struct Altitude), - offsetof(struct Altitude, _asn_ctx), - asn_MAP_Altitude_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Altitude = { - "Altitude", - "Altitude", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Altitude_tags_1, - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - asn_DEF_Altitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Altitude_1, - 2, /* Elements count */ - &asn_SPC_Altitude_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c deleted file mode 100644 index be7287409..000000000 --- a/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AltitudeConfidence.h" - -int -AltitudeConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AltitudeConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AltitudeConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AltitudeConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AltitudeConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AltitudeConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AltitudeConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AltitudeConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AltitudeConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AltitudeConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AltitudeConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { - { 0, 10, "alt-000-01" }, - { 1, 10, "alt-000-02" }, - { 2, 10, "alt-000-05" }, - { 3, 10, "alt-000-10" }, - { 4, 10, "alt-000-20" }, - { 5, 10, "alt-000-50" }, - { 6, 10, "alt-001-00" }, - { 7, 10, "alt-002-00" }, - { 8, 10, "alt-005-00" }, - { 9, 10, "alt-010-00" }, - { 10, 10, "alt-020-00" }, - { 11, 10, "alt-050-00" }, - { 12, 10, "alt-100-00" }, - { 13, 10, "alt-200-00" }, - { 14, 10, "outOfRange" }, - { 15, 11, "unavailable" } -}; -static unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { - 0, /* alt-000-01(0) */ - 1, /* alt-000-02(1) */ - 2, /* alt-000-05(2) */ - 3, /* alt-000-10(3) */ - 4, /* alt-000-20(4) */ - 5, /* alt-000-50(5) */ - 6, /* alt-001-00(6) */ - 7, /* alt-002-00(7) */ - 8, /* alt-005-00(8) */ - 9, /* alt-010-00(9) */ - 10, /* alt-020-00(10) */ - 11, /* alt-050-00(11) */ - 12, /* alt-100-00(12) */ - 13, /* alt-200-00(13) */ - 14, /* outOfRange(14) */ - 15 /* unavailable(15) */ -}; -static asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { - asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { - "AltitudeConfidence", - "AltitudeConfidence", - AltitudeConfidence_free, - AltitudeConfidence_print, - AltitudeConfidence_constraint, - AltitudeConfidence_decode_ber, - AltitudeConfidence_encode_der, - AltitudeConfidence_decode_xer, - AltitudeConfidence_encode_xer, - AltitudeConfidence_decode_uper, - AltitudeConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AltitudeConfidence_tags_1, - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_AltitudeConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AltitudeValue.c b/src/tmx/Asn_J2735/src/r41/AltitudeValue.c deleted file mode 100644 index 7f047cc9d..000000000 --- a/src/tmx/Asn_J2735/src/r41/AltitudeValue.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AltitudeValue.h" - -int -AltitudeValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -100000 && value <= 800001)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AltitudeValue_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AltitudeValue_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AltitudeValue_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AltitudeValue_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AltitudeValue_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AltitudeValue_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AltitudeValue_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AltitudeValue_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AltitudeValue_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AltitudeValue_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { - "AltitudeValue", - "AltitudeValue", - AltitudeValue_free, - AltitudeValue_print, - AltitudeValue_constraint, - AltitudeValue_decode_ber, - AltitudeValue_encode_der, - AltitudeValue_decode_xer, - AltitudeValue_encode_xer, - AltitudeValue_decode_uper, - AltitudeValue_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AltitudeValue_tags_1, - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - asn_DEF_AltitudeValue_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - &asn_PER_type_AltitudeValue_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c deleted file mode 100644 index c02c21208..000000000 --- a/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AmbientAirPressure.h" - -int -AmbientAirPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AmbientAirPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AmbientAirPressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AmbientAirPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AmbientAirPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AmbientAirPressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AmbientAirPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AmbientAirPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AmbientAirPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AmbientAirPressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AmbientAirPressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { - "AmbientAirPressure", - "AmbientAirPressure", - AmbientAirPressure_free, - AmbientAirPressure_print, - AmbientAirPressure_constraint, - AmbientAirPressure_decode_ber, - AmbientAirPressure_encode_der, - AmbientAirPressure_decode_xer, - AmbientAirPressure_encode_xer, - AmbientAirPressure_decode_uper, - AmbientAirPressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AmbientAirPressure_tags_1, - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - &asn_PER_type_AmbientAirPressure_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c deleted file mode 100644 index b42432616..000000000 --- a/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AmbientAirTemperature.h" - -int -AmbientAirTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 191)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AmbientAirTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AmbientAirTemperature_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AmbientAirTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AmbientAirTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AmbientAirTemperature_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AmbientAirTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AmbientAirTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AmbientAirTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AmbientAirTemperature_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AmbientAirTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { - "AmbientAirTemperature", - "AmbientAirTemperature", - AmbientAirTemperature_free, - AmbientAirTemperature_print, - AmbientAirTemperature_constraint, - AmbientAirTemperature_decode_ber, - AmbientAirTemperature_encode_der, - AmbientAirTemperature_decode_xer, - AmbientAirTemperature_encode_xer, - AmbientAirTemperature_decode_uper, - AmbientAirTemperature_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AmbientAirTemperature_tags_1, - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - &asn_PER_type_AmbientAirTemperature_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Angle.c b/src/tmx/Asn_J2735/src/r41/Angle.c deleted file mode 100644 index cf46bb91c..000000000 --- a/src/tmx/Asn_J2735/src/r41/Angle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Angle.h" - -int -Angle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Angle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Angle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Angle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Angle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Angle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Angle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Angle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Angle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Angle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Angle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Angle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Angle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Angle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Angle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Angle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Angle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Angle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Angle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Angle = { - "Angle", - "Angle", - Angle_free, - Angle_print, - Angle_constraint, - Angle_decode_ber, - Angle_encode_der, - Angle_decode_xer, - Angle_encode_xer, - Angle_decode_uper, - Angle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Angle_tags_1, - sizeof(asn_DEF_Angle_tags_1) - /sizeof(asn_DEF_Angle_tags_1[0]), /* 1 */ - asn_DEF_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_Angle_tags_1) - /sizeof(asn_DEF_Angle_tags_1[0]), /* 1 */ - &asn_PER_type_Angle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c deleted file mode 100644 index 6f779422c..000000000 --- a/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "AnimalPropelledType.h" - -int -AnimalPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AnimalPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AnimalPropelledType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AnimalPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AnimalPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AnimalPropelledType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AnimalPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AnimalPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AnimalPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AnimalPropelledType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AnimalPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 13, "animalMounted" }, - { 3, 19, "animalDrawnCarriage" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { - 3, /* animalDrawnCarriage(3) */ - 2, /* animalMounted(2) */ - 1, /* otherTypes(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { - asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { - "AnimalPropelledType", - "AnimalPropelledType", - AnimalPropelledType_free, - AnimalPropelledType_print, - AnimalPropelledType_constraint, - AnimalPropelledType_decode_ber, - AnimalPropelledType_encode_der, - AnimalPropelledType_decode_xer, - AnimalPropelledType_encode_xer, - AnimalPropelledType_decode_uper, - AnimalPropelledType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AnimalPropelledType_tags_1, - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - &asn_PER_type_AnimalPropelledType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AnimalType.c b/src/tmx/Asn_J2735/src/r41/AnimalType.c deleted file mode 100644 index 588ae5b4b..000000000 --- a/src/tmx/Asn_J2735/src/r41/AnimalType.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "AnimalType.h" - -int -AnimalType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AnimalType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AnimalType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AnimalType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AnimalType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AnimalType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AnimalType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AnimalType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AnimalType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AnimalType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AnimalType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AnimalType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AnimalType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "serviceUse" }, - { 2, 3, "pet" }, - { 3, 4, "farm" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { - 3, /* farm(3) */ - 2, /* pet(2) */ - 1, /* serviceUse(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { - asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalType = { - "AnimalType", - "AnimalType", - AnimalType_free, - AnimalType_print, - AnimalType_constraint, - AnimalType_decode_ber, - AnimalType_encode_der, - AnimalType_decode_xer, - AnimalType_encode_xer, - AnimalType_decode_uper, - AnimalType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AnimalType_tags_1, - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - asn_DEF_AnimalType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - &asn_PER_type_AnimalType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c deleted file mode 100644 index 9af931ecc..000000000 --- a/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AntennaOffsetSet.h" - -int -AntennaOffsetSet_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 4)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -AntennaOffsetSet_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -AntennaOffsetSet_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AntennaOffsetSet_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AntennaOffsetSet_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AntennaOffsetSet_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AntennaOffsetSet_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AntennaOffsetSet_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AntennaOffsetSet_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AntennaOffsetSet_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AntennaOffsetSet_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AntennaOffsetSet_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { - "AntennaOffsetSet", - "AntennaOffsetSet", - AntennaOffsetSet_free, - AntennaOffsetSet_print, - AntennaOffsetSet_constraint, - AntennaOffsetSet_decode_ber, - AntennaOffsetSet_encode_der, - AntennaOffsetSet_decode_xer, - AntennaOffsetSet_encode_xer, - AntennaOffsetSet_decode_uper, - AntennaOffsetSet_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AntennaOffsetSet_tags_1, - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - &asn_PER_type_AntennaOffsetSet_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c deleted file mode 100644 index f0d96379c..000000000 --- a/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AntiLockBrakeStatus.h" - -int -AntiLockBrakeStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AntiLockBrakeStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AntiLockBrakeStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AntiLockBrakeStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AntiLockBrakeStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AntiLockBrakeStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AntiLockBrakeStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AntiLockBrakeStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AntiLockBrakeStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AntiLockBrakeStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { - asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { - "AntiLockBrakeStatus", - "AntiLockBrakeStatus", - AntiLockBrakeStatus_free, - AntiLockBrakeStatus_print, - AntiLockBrakeStatus_constraint, - AntiLockBrakeStatus_decode_ber, - AntiLockBrakeStatus_encode_der, - AntiLockBrakeStatus_decode_xer, - AntiLockBrakeStatus_encode_xer, - AntiLockBrakeStatus_decode_uper, - AntiLockBrakeStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AntiLockBrakeStatus_tags_1, - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - &asn_PER_type_AntiLockBrakeStatus_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ApproachID.c b/src/tmx/Asn_J2735/src/r41/ApproachID.c deleted file mode 100644 index 14f57035b..000000000 --- a/src/tmx/Asn_J2735/src/r41/ApproachID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ApproachID.h" - -int -ApproachID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ApproachID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ApproachID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ApproachID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ApproachID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ApproachID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ApproachID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ApproachID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ApproachID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ApproachID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ApproachID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ApproachID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ApproachID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ApproachID = { - "ApproachID", - "ApproachID", - ApproachID_free, - ApproachID_print, - ApproachID_constraint, - ApproachID_decode_ber, - ApproachID_encode_der, - ApproachID_decode_xer, - ApproachID_encode_xer, - ApproachID_decode_uper, - ApproachID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ApproachID_tags_1, - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - asn_DEF_ApproachID_tags_1, /* Same as above */ - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - &asn_PER_type_ApproachID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Attachment.c b/src/tmx/Asn_J2735/src/r41/Attachment.c deleted file mode 100644 index 99c352e38..000000000 --- a/src/tmx/Asn_J2735/src/r41/Attachment.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "Attachment.h" - -int -Attachment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -Attachment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -Attachment_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Attachment_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Attachment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Attachment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Attachment_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Attachment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Attachment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Attachment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Attachment_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Attachment_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Attachment_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "stroller" }, - { 2, 14, "bicycleTrailer" }, - { 3, 4, "cart" }, - { 4, 10, "wheelchair" }, - { 5, 26, "otherWalkAssistAttachments" }, - { 6, 3, "pet" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_Attachment_enum2value_1[] = { - 2, /* bicycleTrailer(2) */ - 3, /* cart(3) */ - 5, /* otherWalkAssistAttachments(5) */ - 6, /* pet(6) */ - 1, /* stroller(1) */ - 0, /* unavailable(0) */ - 4 /* wheelchair(4) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { - asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Attachment = { - "Attachment", - "Attachment", - Attachment_free, - Attachment_print, - Attachment_constraint, - Attachment_decode_ber, - Attachment_encode_der, - Attachment_decode_xer, - Attachment_encode_xer, - Attachment_decode_uper, - Attachment_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Attachment_tags_1, - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - asn_DEF_Attachment_tags_1, /* Same as above */ - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - &asn_PER_type_Attachment_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Attachment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c b/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c deleted file mode 100644 index 5a37cb951..000000000 --- a/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "AttachmentRadius.h" - -int -AttachmentRadius_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AttachmentRadius_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AttachmentRadius_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AttachmentRadius_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AttachmentRadius_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AttachmentRadius_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AttachmentRadius_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AttachmentRadius_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AttachmentRadius_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AttachmentRadius_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AttachmentRadius_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { - "AttachmentRadius", - "AttachmentRadius", - AttachmentRadius_free, - AttachmentRadius_print, - AttachmentRadius_constraint, - AttachmentRadius_decode_ber, - AttachmentRadius_encode_der, - AttachmentRadius_decode_xer, - AttachmentRadius_encode_xer, - AttachmentRadius_decode_uper, - AttachmentRadius_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AttachmentRadius_tags_1, - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - asn_DEF_AttachmentRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - &asn_PER_type_AttachmentRadius_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c deleted file mode 100644 index 9c6edabac..000000000 --- a/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AuxiliaryBrakeStatus.h" - -int -AuxiliaryBrakeStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -AuxiliaryBrakeStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AuxiliaryBrakeStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AuxiliaryBrakeStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AuxiliaryBrakeStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AuxiliaryBrakeStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AuxiliaryBrakeStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AuxiliaryBrakeStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AuxiliaryBrakeStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 8, "reserved" } -}; -static unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { - asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { - "AuxiliaryBrakeStatus", - "AuxiliaryBrakeStatus", - AuxiliaryBrakeStatus_free, - AuxiliaryBrakeStatus_print, - AuxiliaryBrakeStatus_constraint, - AuxiliaryBrakeStatus_decode_ber, - AuxiliaryBrakeStatus_encode_der, - AuxiliaryBrakeStatus_decode_xer, - AuxiliaryBrakeStatus_encode_xer, - AuxiliaryBrakeStatus_decode_uper, - AuxiliaryBrakeStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AuxiliaryBrakeStatus_tags_1, - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - &asn_PER_type_AuxiliaryBrakeStatus_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AxleLocation.c b/src/tmx/Asn_J2735/src/r41/AxleLocation.c deleted file mode 100644 index efcb6fb34..000000000 --- a/src/tmx/Asn_J2735/src/r41/AxleLocation.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AxleLocation.h" - -int -AxleLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AxleLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AxleLocation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AxleLocation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AxleLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AxleLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AxleLocation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AxleLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AxleLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AxleLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AxleLocation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AxleLocation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleLocation = { - "AxleLocation", - "AxleLocation", - AxleLocation_free, - AxleLocation_print, - AxleLocation_constraint, - AxleLocation_decode_ber, - AxleLocation_encode_der, - AxleLocation_decode_xer, - AxleLocation_encode_xer, - AxleLocation_decode_uper, - AxleLocation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AxleLocation_tags_1, - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - asn_DEF_AxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - &asn_PER_type_AxleLocation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/AxleWeight.c b/src/tmx/Asn_J2735/src/r41/AxleWeight.c deleted file mode 100644 index 764552876..000000000 --- a/src/tmx/Asn_J2735/src/r41/AxleWeight.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "AxleWeight.h" - -int -AxleWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -AxleWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -AxleWeight_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - AxleWeight_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -AxleWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -AxleWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -AxleWeight_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -AxleWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -AxleWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -AxleWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -AxleWeight_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - AxleWeight_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeight = { - "AxleWeight", - "AxleWeight", - AxleWeight_free, - AxleWeight_print, - AxleWeight_constraint, - AxleWeight_decode_ber, - AxleWeight_encode_der, - AxleWeight_decode_xer, - AxleWeight_encode_xer, - AxleWeight_decode_uper, - AxleWeight_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_AxleWeight_tags_1, - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - asn_DEF_AxleWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - &asn_PER_type_AxleWeight_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BIT_STRING.c b/src/tmx/Asn_J2735/src/r41/BIT_STRING.c deleted file mode 100644 index 9b9827127..000000000 --- a/src/tmx/Asn_J2735/src/r41/BIT_STRING.c +++ /dev/null @@ -1,189 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * BIT STRING basic type description. - */ -static ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -static asn_OCTET_STRING_specifics_t asn_DEF_BIT_STRING_specs = { - sizeof(BIT_STRING_t), - offsetof(BIT_STRING_t, _asn_ctx), - ASN_OSUBV_BIT -}; -asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { - "BIT STRING", - "BIT_STRING", - OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ - BIT_STRING_print, - BIT_STRING_constraint, - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_decode_xer_binary, - BIT_STRING_encode_xer, - OCTET_STRING_decode_uper, /* Unaligned PER decoder */ - OCTET_STRING_encode_uper, /* Unaligned PER encoder */ - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BIT_STRING_tags, - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - asn_DEF_BIT_STRING_tags, /* Same as above */ - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_DEF_BIT_STRING_specs -}; - -/* - * BIT STRING generic constraint. - */ -int -BIT_STRING_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - - if(st && st->buf) { - if((st->size == 0 && st->bits_unused) - || st->bits_unused < 0 || st->bits_unused > 7) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: invalid padding byte (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - -static char *_bit_pattern[16] = { - "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", - "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" -}; - -asn_enc_rval_t -BIT_STRING_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er; - char scratch[128]; - char *p = scratch; - char *scend = scratch + (sizeof(scratch) - 10); - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - int xcan = (flags & XER_F_CANONICAL); - uint8_t *buf; - uint8_t *end; - - if(!st || !st->buf) - _ASN_ENCODE_FAILED; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size - 1; /* Last byte is special */ - - /* - * Binary dump - */ - for(; buf < end; buf++) { - int v = *buf; - int nline = xcan?0:(((buf - st->buf) % 8) == 0); - if(p >= scend || nline) { - er.encoded += p - scratch; - _ASN_CALLBACK(scratch, p - scratch); - p = scratch; - if(nline) _i_ASN_TEXT_INDENT(1, ilevel); - } - memcpy(p + 0, _bit_pattern[v >> 4], 4); - memcpy(p + 4, _bit_pattern[v & 0x0f], 4); - p += 8; - } - - if(!xcan && ((buf - st->buf) % 8) == 0) - _i_ASN_TEXT_INDENT(1, ilevel); - er.encoded += p - scratch; - _ASN_CALLBACK(scratch, p - scratch); - p = scratch; - - if(buf == end) { - int v = *buf; - int ubits = st->bits_unused; - int i; - for(i = 7; i >= ubits; i--) - *p++ = (v & (1 << i)) ? 0x31 : 0x30; - er.encoded += p - scratch; - _ASN_CALLBACK(scratch, p - scratch); - } - - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - - -/* - * BIT STRING specific contents printer. - */ -int -BIT_STRING_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - static const char *h2c = "0123456789ABCDEF"; - char scratch[64]; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - uint8_t *buf; - uint8_t *end; - char *p = scratch; - - (void)td; /* Unused argument */ - - if(!st || !st->buf) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - ilevel++; - buf = st->buf; - end = buf + st->size; - - /* - * Hexadecimal dump. - */ - for(; buf < end; buf++) { - if((buf - st->buf) % 16 == 0 && (st->size > 16) - && buf != st->buf) { - _i_INDENT(1); - /* Dump the string */ - if(cb(scratch, p - scratch, app_key) < 0) return -1; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Eat the tailing space */ - - if((st->size > 16)) { - _i_INDENT(1); - } - - /* Dump the incomplete 16-bytes row */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - return 0; -} - diff --git a/src/tmx/Asn_J2735/src/r41/BOOLEAN.c b/src/tmx/Asn_J2735/src/r41/BOOLEAN.c deleted file mode 100644 index 1b74ea1cd..000000000 --- a/src/tmx/Asn_J2735/src/r41/BOOLEAN.c +++ /dev/null @@ -1,282 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * BOOLEAN basic type description. - */ -static ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { - "BOOLEAN", - "BOOLEAN", - BOOLEAN_free, - BOOLEAN_print, - asn_generic_no_constraint, - BOOLEAN_decode_ber, - BOOLEAN_encode_der, - BOOLEAN_decode_xer, - BOOLEAN_encode_xer, - BOOLEAN_decode_uper, /* Unaligned PER decoder */ - BOOLEAN_encode_uper, /* Unaligned PER encoder */ - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BOOLEAN_tags, - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - asn_DEF_BOOLEAN_tags, /* Same as above */ - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Decode BOOLEAN type. - */ -asn_dec_rval_t -BOOLEAN_decode_ber(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - void **bool_value, const void *buf_ptr, size_t size, - int tag_mode) { - BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; - asn_dec_rval_t rval; - ber_tlv_len_t length; - ber_tlv_len_t lidx; - - if(st == NULL) { - st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); - if(st == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("Boolean length is %d bytes", (int)length); - - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * Compute boolean value. - */ - for(*st = 0, lidx = 0; - (lidx < length) && *st == 0; lidx++) { - /* - * Very simple approach: read bytes until the end or - * value is already TRUE. - * BOOLEAN is not supposed to contain meaningful data anyway. - */ - *st |= ((const uint8_t *)buf_ptr)[lidx]; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", - (long)rval.consumed, (long)length, - td->name, *st); - - return rval; -} - -asn_enc_rval_t -BOOLEAN_encode_der(asn_TYPE_descriptor_t *td, void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval; - BOOLEAN_t *st = (BOOLEAN_t *)sptr; - - erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb) { - uint8_t bool_value; - - bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ - - if(cb(&bool_value, 1, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } - - erval.encoded += 1; - - _ASN_ENCODED_OK(erval); -} - - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -BOOLEAN__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) { - BOOLEAN_t *st = (BOOLEAN_t *)sptr; - const char *p = (const char *)chunk_buf; - - (void)td; - - if(chunk_size && p[0] == 0x3c /* '<' */) { - switch(xer_check_tag(chunk_buf, chunk_size, "false")) { - case XCT_BOTH: - /* "" */ - *st = 0; - break; - case XCT_UNKNOWN_BO: - if(xer_check_tag(chunk_buf, chunk_size, "true") - != XCT_BOTH) - return XPBD_BROKEN_ENCODING; - /* "" */ - *st = 1; /* Or 0xff as in DER?.. */ - break; - default: - return XPBD_BROKEN_ENCODING; - } - return XPBD_BODY_CONSUMED; - } else { - return XPBD_BROKEN_ENCODING; - } -} - - -asn_dec_rval_t -BOOLEAN_decode_xer(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, - BOOLEAN__xer_body_decode); -} - -asn_enc_rval_t -BOOLEAN_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er; - - (void)ilevel; - (void)flags; - - if(!st) _ASN_ENCODE_FAILED; - - if(*st) { - _ASN_CALLBACK("", 7); - er.encoded = 7; - } else { - _ASN_CALLBACK("", 8); - er.encoded = 8; - } - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -int -BOOLEAN_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - const char *buf; - size_t buflen; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st) { - if(*st) { - buf = "TRUE"; - buflen = 4; - } else { - buf = "FALSE"; - buflen = 5; - } - } else { - buf = ""; - buflen = 8; - } - - return (cb(buf, buflen, app_key) < 0) ? -1 : 0; -} - -void -BOOLEAN_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { - if(td && ptr && !contents_only) { - FREEMEM(ptr); - } -} - -asn_dec_rval_t -BOOLEAN_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - BOOLEAN_t *st = (BOOLEAN_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - - if(!st) { - st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); - if(!st) _ASN_DECODE_FAILED; - } - - /* - * Extract a single bit - */ - switch(per_get_few_bits(pd, 1)) { - case 1: *st = 1; break; - case 0: *st = 0; break; - case -1: default: _ASN_DECODE_STARVED; - } - - ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); - - rv.code = RC_OK; - rv.consumed = 1; - return rv; -} - - -asn_enc_rval_t -BOOLEAN_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - - (void)constraints; - - if(!st) _ASN_ENCODE_FAILED; - - if(per_put_few_bits(po, *st ? 1 : 0, 1)) - _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/r41/BSMblob.c b/src/tmx/Asn_J2735/src/r41/BSMblob.c deleted file mode 100644 index 916d1ea95..000000000 --- a/src/tmx/Asn_J2735/src/r41/BSMblob.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BSMblob.h" - -int -BSMblob_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 38)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -BSMblob_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -BSMblob_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BSMblob_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BSMblob_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BSMblob_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BSMblob_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BSMblob_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BSMblob_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BSMblob_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BSMblob_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BSMblob_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BSMblob_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 38, 38 } /* (SIZE(38..38)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_BSMblob_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BSMblob = { - "BSMblob", - "BSMblob", - BSMblob_free, - BSMblob_print, - BSMblob_constraint, - BSMblob_decode_ber, - BSMblob_encode_der, - BSMblob_decode_xer, - BSMblob_encode_xer, - BSMblob_decode_uper, - BSMblob_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BSMblob_tags_1, - sizeof(asn_DEF_BSMblob_tags_1) - /sizeof(asn_DEF_BSMblob_tags_1[0]), /* 1 */ - asn_DEF_BSMblob_tags_1, /* Same as above */ - sizeof(asn_DEF_BSMblob_tags_1) - /sizeof(asn_DEF_BSMblob_tags_1[0]), /* 1 */ - &asn_PER_type_BSMblob_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c deleted file mode 100644 index b0da90bae..000000000 --- a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BasicSafetyMessage.h" - -static asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, blob1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMblob, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "blob1" - }, - { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, safetyExt), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSafetyExtension, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "safetyExt" - }, - { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, -}; -static int asn_MAP_BasicSafetyMessage_oms_1[] = { 2, 3 }; -static ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* blob1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* safetyExt */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* status */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { - sizeof(struct BasicSafetyMessage), - offsetof(struct BasicSafetyMessage, _asn_ctx), - asn_MAP_BasicSafetyMessage_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { - "BasicSafetyMessage", - "BasicSafetyMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BasicSafetyMessage_tags_1, - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_BasicSafetyMessage_1, - 4, /* Elements count */ - &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c deleted file mode 100644 index bfe6e0ad8..000000000 --- a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c +++ /dev/null @@ -1,212 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BasicSafetyMessageVerbose.h" - -static asn_TYPE_member_t asn_MBR_BasicSafetyMessageVerbose_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, secMark), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, lat), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, Long), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, elev), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Elevation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "elev" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, accuracy), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, speed), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, heading), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, angle), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "angle" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, accelSet), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accelSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, brakes), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "brakes" - }, - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, size), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSize, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "size" - }, - { ATF_POINTER, 2, offsetof(struct BasicSafetyMessageVerbose, safetyExt), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSafetyExtension, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "safetyExt" - }, - { ATF_POINTER, 1, offsetof(struct BasicSafetyMessageVerbose, status), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, -}; -static int asn_MAP_BasicSafetyMessageVerbose_oms_1[] = { 14, 15 }; -static ber_tlv_tag_t asn_DEF_BasicSafetyMessageVerbose_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessageVerbose_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elev */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* size */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* safetyExt */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 } /* status */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessageVerbose_specs_1 = { - sizeof(struct BasicSafetyMessageVerbose), - offsetof(struct BasicSafetyMessageVerbose, _asn_ctx), - asn_MAP_BasicSafetyMessageVerbose_tag2el_1, - 16, /* Count of tags in the map */ - asn_MAP_BasicSafetyMessageVerbose_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 15, /* Start extensions */ - 17 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessageVerbose = { - "BasicSafetyMessageVerbose", - "BasicSafetyMessageVerbose", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BasicSafetyMessageVerbose_tags_1, - sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1) - /sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1[0]), /* 1 */ - asn_DEF_BasicSafetyMessageVerbose_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1) - /sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_BasicSafetyMessageVerbose_1, - 16, /* Elements count */ - &asn_SPC_BasicSafetyMessageVerbose_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c deleted file mode 100644 index 6073f2a53..000000000 --- a/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BrakeAppliedPressure.h" - -int -BrakeAppliedPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -BrakeAppliedPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -BrakeAppliedPressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BrakeAppliedPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BrakeAppliedPressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BrakeAppliedPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BrakeAppliedPressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "minPressure" }, - { 2, 7, "bkLvl-2" }, - { 3, 7, "bkLvl-3" }, - { 4, 7, "bkLvl-4" }, - { 5, 7, "bkLvl-5" }, - { 6, 7, "bkLvl-6" }, - { 7, 7, "bkLvl-7" }, - { 8, 7, "bkLvl-8" }, - { 9, 7, "bkLvl-9" }, - { 10, 8, "bkLvl-10" }, - { 11, 8, "bkLvl-11" }, - { 12, 8, "bkLvl-12" }, - { 13, 8, "bkLvl-13" }, - { 14, 8, "bkLvl-14" }, - { 15, 11, "maxPressure" } -}; -static unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { - 10, /* bkLvl-10(10) */ - 11, /* bkLvl-11(11) */ - 12, /* bkLvl-12(12) */ - 13, /* bkLvl-13(13) */ - 14, /* bkLvl-14(14) */ - 2, /* bkLvl-2(2) */ - 3, /* bkLvl-3(3) */ - 4, /* bkLvl-4(4) */ - 5, /* bkLvl-5(5) */ - 6, /* bkLvl-6(6) */ - 7, /* bkLvl-7(7) */ - 8, /* bkLvl-8(8) */ - 9, /* bkLvl-9(9) */ - 15, /* maxPressure(15) */ - 1, /* minPressure(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { - asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { - "BrakeAppliedPressure", - "BrakeAppliedPressure", - BrakeAppliedPressure_free, - BrakeAppliedPressure_print, - BrakeAppliedPressure_constraint, - BrakeAppliedPressure_decode_ber, - BrakeAppliedPressure_encode_der, - BrakeAppliedPressure_decode_xer, - BrakeAppliedPressure_encode_xer, - BrakeAppliedPressure_decode_uper, - BrakeAppliedPressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BrakeAppliedPressure_tags_1, - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - &asn_PER_type_BrakeAppliedPressure_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c deleted file mode 100644 index ea6fbd349..000000000 --- a/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BrakeAppliedStatus.h" - -int -BrakeAppliedStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -BrakeAppliedStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -BrakeAppliedStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BrakeAppliedStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BrakeAppliedStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BrakeAppliedStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BrakeAppliedStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BrakeAppliedStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { - "BrakeAppliedStatus", - "BrakeAppliedStatus", - BrakeAppliedStatus_free, - BrakeAppliedStatus_print, - BrakeAppliedStatus_constraint, - BrakeAppliedStatus_decode_ber, - BrakeAppliedStatus_encode_der, - BrakeAppliedStatus_decode_xer, - BrakeAppliedStatus_encode_xer, - BrakeAppliedStatus_decode_uper, - BrakeAppliedStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BrakeAppliedStatus_tags_1, - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c deleted file mode 100644 index 5b8ae6068..000000000 --- a/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BrakeBoostApplied.h" - -int -BrakeBoostApplied_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -BrakeBoostApplied_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -BrakeBoostApplied_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BrakeBoostApplied_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BrakeBoostApplied_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BrakeBoostApplied_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BrakeBoostApplied_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BrakeBoostApplied_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BrakeBoostApplied_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BrakeBoostApplied_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BrakeBoostApplied_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" } -}; -static unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { - asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { - "BrakeBoostApplied", - "BrakeBoostApplied", - BrakeBoostApplied_free, - BrakeBoostApplied_print, - BrakeBoostApplied_constraint, - BrakeBoostApplied_decode_ber, - BrakeBoostApplied_encode_der, - BrakeBoostApplied_decode_xer, - BrakeBoostApplied_encode_xer, - BrakeBoostApplied_decode_uper, - BrakeBoostApplied_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BrakeBoostApplied_tags_1, - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - &asn_PER_type_BrakeBoostApplied_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c deleted file mode 100644 index e45cf3583..000000000 --- a/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BrakeSystemStatus.h" - -int -BrakeSystemStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -BrakeSystemStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -BrakeSystemStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BrakeSystemStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BrakeSystemStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BrakeSystemStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BrakeSystemStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BrakeSystemStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BrakeSystemStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BrakeSystemStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BrakeSystemStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BrakeSystemStatus_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { - "BrakeSystemStatus", - "BrakeSystemStatus", - BrakeSystemStatus_free, - BrakeSystemStatus_print, - BrakeSystemStatus_constraint, - BrakeSystemStatus_decode_ber, - BrakeSystemStatus_encode_der, - BrakeSystemStatus_decode_xer, - BrakeSystemStatus_encode_xer, - BrakeSystemStatus_decode_uper, - BrakeSystemStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BrakeSystemStatus_tags_1, - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - &asn_PER_type_BrakeSystemStatus_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c b/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c deleted file mode 100644 index 5c35946b5..000000000 --- a/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BumperHeightFront.h" - -int -BumperHeightFront_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -BumperHeightFront_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -BumperHeightFront_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BumperHeightFront_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BumperHeightFront_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BumperHeightFront_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BumperHeightFront_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BumperHeightFront_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BumperHeightFront_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BumperHeightFront_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BumperHeightFront_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BumperHeightFront_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_BumperHeightFront_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeightFront = { - "BumperHeightFront", - "BumperHeightFront", - BumperHeightFront_free, - BumperHeightFront_print, - BumperHeightFront_constraint, - BumperHeightFront_decode_ber, - BumperHeightFront_encode_der, - BumperHeightFront_decode_xer, - BumperHeightFront_encode_xer, - BumperHeightFront_decode_uper, - BumperHeightFront_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BumperHeightFront_tags_1, - sizeof(asn_DEF_BumperHeightFront_tags_1) - /sizeof(asn_DEF_BumperHeightFront_tags_1[0]), /* 1 */ - asn_DEF_BumperHeightFront_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeightFront_tags_1) - /sizeof(asn_DEF_BumperHeightFront_tags_1[0]), /* 1 */ - &asn_PER_type_BumperHeightFront_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c b/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c deleted file mode 100644 index d2207b7ff..000000000 --- a/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BumperHeightRear.h" - -int -BumperHeightRear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -BumperHeightRear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -BumperHeightRear_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -BumperHeightRear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -BumperHeightRear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -BumperHeightRear_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -BumperHeightRear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -BumperHeightRear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -BumperHeightRear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -BumperHeightRear_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - BumperHeightRear_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_BumperHeightRear_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_BumperHeightRear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeightRear = { - "BumperHeightRear", - "BumperHeightRear", - BumperHeightRear_free, - BumperHeightRear_print, - BumperHeightRear_constraint, - BumperHeightRear_decode_ber, - BumperHeightRear_encode_der, - BumperHeightRear_decode_xer, - BumperHeightRear_encode_xer, - BumperHeightRear_decode_uper, - BumperHeightRear_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BumperHeightRear_tags_1, - sizeof(asn_DEF_BumperHeightRear_tags_1) - /sizeof(asn_DEF_BumperHeightRear_tags_1[0]), /* 1 */ - asn_DEF_BumperHeightRear_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeightRear_tags_1) - /sizeof(asn_DEF_BumperHeightRear_tags_1[0]), /* 1 */ - &asn_PER_type_BumperHeightRear_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeights.c b/src/tmx/Asn_J2735/src/r41/BumperHeights.c deleted file mode 100644 index 3d9647fc1..000000000 --- a/src/tmx/Asn_J2735/src/r41/BumperHeights.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "BumperHeights.h" - -static asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, frnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeightFront, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "frnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeightRear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rear" - }, -}; -static ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { - sizeof(struct BumperHeights), - offsetof(struct BumperHeights, _asn_ctx), - asn_MAP_BumperHeights_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeights = { - "BumperHeights", - "BumperHeights", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_BumperHeights_tags_1, - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - asn_DEF_BumperHeights_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_BumperHeights_1, - 2, /* Elements count */ - &asn_SPC_BumperHeights_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/CargoWeight.c b/src/tmx/Asn_J2735/src/r41/CargoWeight.c deleted file mode 100644 index 0f3d9a6d7..000000000 --- a/src/tmx/Asn_J2735/src/r41/CargoWeight.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "CargoWeight.h" - -int -CargoWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -CargoWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -CargoWeight_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - CargoWeight_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -CargoWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -CargoWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -CargoWeight_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -CargoWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -CargoWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -CargoWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -CargoWeight_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - CargoWeight_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CargoWeight = { - "CargoWeight", - "CargoWeight", - CargoWeight_free, - CargoWeight_print, - CargoWeight_constraint, - CargoWeight_decode_ber, - CargoWeight_encode_der, - CargoWeight_decode_xer, - CargoWeight_encode_xer, - CargoWeight_decode_uper, - CargoWeight_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_CargoWeight_tags_1, - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - asn_DEF_CargoWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - &asn_PER_type_CargoWeight_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Circle.c b/src/tmx/Asn_J2735/src/r41/Circle.c deleted file mode 100644 index 788fd0969..000000000 --- a/src/tmx/Asn_J2735/src/r41/Circle.c +++ /dev/null @@ -1,233 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Circle.h" - -static int -memb_radiusSteps_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_miles_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 2000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_km_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 5000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_radiusSteps_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_miles_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 1, 2000 } /* (1..2000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_km_constr_6 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 1, 5000 } /* (1..5000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_raduis_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_raduis_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.radiusSteps), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_radiusSteps_constraint_3, - &asn_PER_memb_radiusSteps_constr_4, - 0, - "radiusSteps" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.miles), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_miles_constraint_3, - &asn_PER_memb_miles_constr_5, - 0, - "miles" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.km), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_km_constraint_3, - &asn_PER_memb_km_constr_6, - 0, - "km" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_raduis_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusSteps */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* miles */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* km */ -}; -static asn_CHOICE_specifics_t asn_SPC_raduis_specs_3 = { - sizeof(struct Circle__raduis), - offsetof(struct Circle__raduis, _asn_ctx), - offsetof(struct Circle__raduis, present), - sizeof(((struct Circle__raduis *)0)->present), - asn_MAP_raduis_tag2el_3, - 3, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_raduis_3 = { - "raduis", - "raduis", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_raduis_constr_3, - asn_MBR_raduis_3, - 3, /* Elements count */ - &asn_SPC_raduis_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Circle_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Circle, center), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "center" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle, raduis), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_raduis_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "raduis" - }, -}; -static ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* raduis */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { - sizeof(struct Circle), - offsetof(struct Circle, _asn_ctx), - asn_MAP_Circle_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Circle = { - "Circle", - "Circle", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Circle_tags_1, - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - asn_DEF_Circle_tags_1, /* Same as above */ - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Circle_1, - 2, /* Elements count */ - &asn_SPC_Circle_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/CodeWord.c b/src/tmx/Asn_J2735/src/r41/CodeWord.c deleted file mode 100644 index 0bc3a3901..000000000 --- a/src/tmx/Asn_J2735/src/r41/CodeWord.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "CodeWord.h" - -int -CodeWord_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -CodeWord_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -CodeWord_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - CodeWord_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -CodeWord_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -CodeWord_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -CodeWord_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -CodeWord_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -CodeWord_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -CodeWord_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -CodeWord_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - CodeWord_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CodeWord = { - "CodeWord", - "CodeWord", - CodeWord_free, - CodeWord_print, - CodeWord_constraint, - CodeWord_decode_ber, - CodeWord_encode_der, - CodeWord_decode_xer, - CodeWord_encode_xer, - CodeWord_decode_uper, - CodeWord_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_CodeWord_tags_1, - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - asn_DEF_CodeWord_tags_1, /* Same as above */ - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - &asn_PER_type_CodeWord_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c deleted file mode 100644 index 20c741356..000000000 --- a/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "CoefficientOfFriction.h" - -int -CoefficientOfFriction_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -CoefficientOfFriction_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -CoefficientOfFriction_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -CoefficientOfFriction_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -CoefficientOfFriction_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -CoefficientOfFriction_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -CoefficientOfFriction_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -CoefficientOfFriction_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -CoefficientOfFriction_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -CoefficientOfFriction_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - CoefficientOfFriction_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { - "CoefficientOfFriction", - "CoefficientOfFriction", - CoefficientOfFriction_free, - CoefficientOfFriction_print, - CoefficientOfFriction_constraint, - CoefficientOfFriction_decode_ber, - CoefficientOfFriction_encode_der, - CoefficientOfFriction_decode_xer, - CoefficientOfFriction_encode_xer, - CoefficientOfFriction_decode_uper, - CoefficientOfFriction_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_CoefficientOfFriction_tags_1, - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - &asn_PER_type_CoefficientOfFriction_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c deleted file mode 100644 index ad8feae5a..000000000 --- a/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c +++ /dev/null @@ -1,174 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "CommonSafetyRequest.h" - -static int -memb_requests_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_requests_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_requests_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_requests_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_RequestedItem, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_requests_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_requests_specs_5 = { - sizeof(struct CommonSafetyRequest__requests), - offsetof(struct CommonSafetyRequest__requests, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_requests_5 = { - "requests", - "requests", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_requests_tags_5, - sizeof(asn_DEF_requests_tags_5) - /sizeof(asn_DEF_requests_tags_5[0]) - 1, /* 1 */ - asn_DEF_requests_tags_5, /* Same as above */ - sizeof(asn_DEF_requests_tags_5) - /sizeof(asn_DEF_requests_tags_5[0]), /* 2 */ - &asn_PER_type_requests_constr_5, - asn_MBR_requests_5, - 1, /* Single element */ - &asn_SPC_requests_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_requests_5, - memb_requests_constraint_1, - &asn_PER_memb_requests_constr_5, - 0, - "requests" - }, -}; -static int asn_MAP_CommonSafetyRequest_oms_1[] = { 1, 2 }; -static ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* requests */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { - sizeof(struct CommonSafetyRequest), - offsetof(struct CommonSafetyRequest, _asn_ctx), - asn_MAP_CommonSafetyRequest_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { - "CommonSafetyRequest", - "CommonSafetyRequest", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_CommonSafetyRequest_tags_1, - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_CommonSafetyRequest_1, - 4, /* Elements count */ - &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ComputedLane.c b/src/tmx/Asn_J2735/src/r41/ComputedLane.c deleted file mode 100644 index 2c2ca6dba..000000000 --- a/src/tmx/Asn_J2735/src/r41/ComputedLane.c +++ /dev/null @@ -1,248 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ComputedLane.h" - -static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "large" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { - sizeof(struct ComputedLane__offsetXaxis), - offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetXaxis, present), - sizeof(((struct ComputedLane__offsetXaxis *)0)->present), - asn_MAP_offsetXaxis_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { - "offsetXaxis", - "offsetXaxis", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_offsetXaxis_constr_3, - asn_MBR_offsetXaxis_3, - 2, /* Elements count */ - &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "large" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { - sizeof(struct ComputedLane__offsetYaxis), - offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetYaxis, present), - sizeof(((struct ComputedLane__offsetYaxis *)0)->present), - asn_MAP_offsetYaxis_tag2el_6, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { - "offsetYaxis", - "offsetYaxis", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_offsetYaxis_constr_6, - asn_MBR_offsetYaxis_6, - 2, /* Elements count */ - &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "referenceLaneId" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetXaxis_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "offsetXaxis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetYaxis_6, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "offsetYaxis" - }, - { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Angle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rotateXY" - }, - { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "scaleXaxis" - }, - { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "scaleYaxis" - }, - { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalComputedLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; -static ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { - sizeof(struct ComputedLane), - offsetof(struct ComputedLane, _asn_ctx), - asn_MAP_ComputedLane_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ComputedLane_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 6, /* Start extensions */ - 8 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ComputedLane = { - "ComputedLane", - "ComputedLane", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ComputedLane_tags_1, - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - asn_DEF_ComputedLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ComputedLane_1, - 7, /* Elements count */ - &asn_SPC_ComputedLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c b/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c deleted file mode 100644 index 955310f35..000000000 --- a/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ConfidenceSet.h" - -static asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { - { ATF_POINTER, 6, offsetof(struct ConfidenceSet, accelConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelSteerYawRateConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accelConfidence" - }, - { ATF_POINTER, 5, offsetof(struct ConfidenceSet, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedConfidence" - }, - { ATF_POINTER, 4, offsetof(struct ConfidenceSet, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timeConfidence" - }, - { ATF_POINTER, 3, offsetof(struct ConfidenceSet, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posConfidence" - }, - { ATF_POINTER, 2, offsetof(struct ConfidenceSet, steerConfidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "steerConfidence" - }, - { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "throttleConfidence" - }, -}; -static int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* throttleConfidence */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { - sizeof(struct ConfidenceSet), - offsetof(struct ConfidenceSet, _asn_ctx), - asn_MAP_ConfidenceSet_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ConfidenceSet_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { - "ConfidenceSet", - "ConfidenceSet", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ConfidenceSet_tags_1, - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_ConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ConfidenceSet_1, - 6, /* Elements count */ - &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ConnectingLane.c b/src/tmx/Asn_J2735/src/r41/ConnectingLane.c deleted file mode 100644 index b372bb0df..000000000 --- a/src/tmx/Asn_J2735/src/r41/ConnectingLane.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ConnectingLane.h" - -static asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lane" - }, - { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maneuver" - }, -}; -static int asn_MAP_ConnectingLane_oms_1[] = { 1 }; -static ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { - sizeof(struct ConnectingLane), - offsetof(struct ConnectingLane, _asn_ctx), - asn_MAP_ConnectingLane_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ConnectingLane_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { - "ConnectingLane", - "ConnectingLane", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ConnectingLane_tags_1, - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - asn_DEF_ConnectingLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ConnectingLane_1, - 2, /* Elements count */ - &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Connection.c b/src/tmx/Asn_J2735/src/r41/Connection.c deleted file mode 100644 index cf2b00f0f..000000000 --- a/src/tmx/Asn_J2735/src/r41/Connection.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Connection.h" - -static asn_TYPE_member_t asn_MBR_Connection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectingLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "connectingLane" - }, - { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "remoteIntersection" - }, - { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "signalGroup" - }, - { ATF_POINTER, 2, offsetof(struct Connection, userClass), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "userClass" - }, - { ATF_POINTER, 1, offsetof(struct Connection, connectionID), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "connectionID" - }, -}; -static int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; -static ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { - sizeof(struct Connection), - offsetof(struct Connection, _asn_ctx), - asn_MAP_Connection_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_Connection_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Connection = { - "Connection", - "Connection", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Connection_tags_1, - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - asn_DEF_Connection_tags_1, /* Same as above */ - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Connection_1, - 5, /* Elements count */ - &asn_SPC_Connection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c deleted file mode 100644 index f2b38fc72..000000000 --- a/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ConnectionManeuverAssist.h" - -static asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "connectionID" - }, - { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "queueLength" - }, - { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "availableStorageLength" - }, - { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WaitOnStopline, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "waitOnStop" - }, - { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PedestrianBicycleDetect, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pedBicycleDetect" - }, - { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalConnectionManeuverAssist, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { - sizeof(struct ConnectionManeuverAssist), - offsetof(struct ConnectionManeuverAssist, _asn_ctx), - asn_MAP_ConnectionManeuverAssist_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { - "ConnectionManeuverAssist", - "ConnectionManeuverAssist", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ConnectionManeuverAssist_1, - 6, /* Elements count */ - &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ConnectsToList.c b/src/tmx/Asn_J2735/src/r41/ConnectsToList.c deleted file mode 100644 index 4aef6b8f2..000000000 --- a/src/tmx/Asn_J2735/src/r41/ConnectsToList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ConnectsToList.h" - -static asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Connection, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { - sizeof(struct ConnectsToList), - offsetof(struct ConnectsToList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { - "ConnectsToList", - "ConnectsToList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ConnectsToList_tags_1, - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - asn_DEF_ConnectsToList_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - &asn_PER_type_ConnectsToList_constr_1, - asn_MBR_ConnectsToList_1, - 1, /* Single element */ - &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Count.c b/src/tmx/Asn_J2735/src/r41/Count.c deleted file mode 100644 index 571747630..000000000 --- a/src/tmx/Asn_J2735/src/r41/Count.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Count.h" - -int -Count_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Count_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Count_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Count_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Count_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Count_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Count_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Count_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Count_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Count_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Count_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Count_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Count_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Count_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Count_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Count_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Count_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Count_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Count_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Count_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Count = { - "Count", - "Count", - Count_free, - Count_print, - Count_constraint, - Count_decode_ber, - Count_encode_der, - Count_decode_xer, - Count_encode_xer, - Count_decode_uper, - Count_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Count_tags_1, - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - asn_DEF_Count_tags_1, /* Same as above */ - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - &asn_PER_type_Count_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DDate.c b/src/tmx/Asn_J2735/src/r41/DDate.c deleted file mode 100644 index 47cd76e3e..000000000 --- a/src/tmx/Asn_J2735/src/r41/DDate.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DDate.h" - -static asn_TYPE_member_t asn_MBR_DDate_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DDate, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "day" - }, -}; -static ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { - sizeof(struct DDate), - offsetof(struct DDate, _asn_ctx), - asn_MAP_DDate_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DDate = { - "DDate", - "DDate", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DDate_tags_1, - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - asn_DEF_DDate_tags_1, /* Same as above */ - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DDate_1, - 3, /* Elements count */ - &asn_SPC_DDate_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DDateTime.c b/src/tmx/Asn_J2735/src/r41/DDateTime.c deleted file mode 100644 index 6fae387d9..000000000 --- a/src/tmx/Asn_J2735/src/r41/DDateTime.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DDateTime.h" - -static asn_TYPE_member_t asn_MBR_DDateTime_1[] = { - { ATF_POINTER, 6, offsetof(struct DDateTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "year" - }, - { ATF_POINTER, 5, offsetof(struct DDateTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, - { ATF_POINTER, 4, offsetof(struct DDateTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "day" - }, - { ATF_POINTER, 3, offsetof(struct DDateTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "hour" - }, - { ATF_POINTER, 2, offsetof(struct DDateTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minute" - }, - { ATF_POINTER, 1, offsetof(struct DDateTime, second), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "second" - }, -}; -static int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* second */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { - sizeof(struct DDateTime), - offsetof(struct DDateTime, _asn_ctx), - asn_MAP_DDateTime_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_DDateTime_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DDateTime = { - "DDateTime", - "DDateTime", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DDateTime_tags_1, - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - asn_DEF_DDateTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DDateTime_1, - 6, /* Elements count */ - &asn_SPC_DDateTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DDay.c b/src/tmx/Asn_J2735/src/r41/DDay.c deleted file mode 100644 index 6b5a39e78..000000000 --- a/src/tmx/Asn_J2735/src/r41/DDay.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DDay.h" - -int -DDay_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DDay_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DDay_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DDay_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DDay_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DDay_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DDay_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DDay_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DDay_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DDay_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DDay_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DDay_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DDay_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DDay_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DDay_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DDay_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DDay_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DDay_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DDay_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DDay = { - "DDay", - "DDay", - DDay_free, - DDay_print, - DDay_constraint, - DDay_decode_ber, - DDay_encode_der, - DDay_decode_xer, - DDay_encode_xer, - DDay_decode_uper, - DDay_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DDay_tags_1, - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - asn_DEF_DDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - &asn_PER_type_DDay_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DFullTime.c b/src/tmx/Asn_J2735/src/r41/DFullTime.c deleted file mode 100644 index 7cc23837d..000000000 --- a/src/tmx/Asn_J2735/src/r41/DFullTime.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DFullTime.h" - -static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minute" - }, -}; -static ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { - sizeof(struct DFullTime), - offsetof(struct DFullTime, _asn_ctx), - asn_MAP_DFullTime_tag2el_1, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DFullTime = { - "DFullTime", - "DFullTime", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DFullTime_tags_1, - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - asn_DEF_DFullTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DFullTime_1, - 5, /* Elements count */ - &asn_SPC_DFullTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DHour.c b/src/tmx/Asn_J2735/src/r41/DHour.c deleted file mode 100644 index 770068265..000000000 --- a/src/tmx/Asn_J2735/src/r41/DHour.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DHour.h" - -int -DHour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DHour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DHour_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DHour_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DHour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DHour_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DHour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DHour_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DHour_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DHour_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DHour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DHour_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DHour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DHour_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DHour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DHour_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DHour_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DHour_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DHour_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DHour = { - "DHour", - "DHour", - DHour_free, - DHour_print, - DHour_constraint, - DHour_decode_ber, - DHour_encode_der, - DHour_decode_xer, - DHour_encode_xer, - DHour_decode_uper, - DHour_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DHour_tags_1, - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - asn_DEF_DHour_tags_1, /* Same as above */ - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - &asn_PER_type_DHour_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DMinute.c b/src/tmx/Asn_J2735/src/r41/DMinute.c deleted file mode 100644 index be6baa92c..000000000 --- a/src/tmx/Asn_J2735/src/r41/DMinute.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DMinute.h" - -int -DMinute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DMinute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DMinute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DMinute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DMinute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DMinute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DMinute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DMinute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DMinute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DMinute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DMinute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DMinute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DMinute_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMinute = { - "DMinute", - "DMinute", - DMinute_free, - DMinute_print, - DMinute_constraint, - DMinute_decode_ber, - DMinute_encode_der, - DMinute_decode_xer, - DMinute_encode_xer, - DMinute_decode_uper, - DMinute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DMinute_tags_1, - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - asn_DEF_DMinute_tags_1, /* Same as above */ - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - &asn_PER_type_DMinute_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DMonth.c b/src/tmx/Asn_J2735/src/r41/DMonth.c deleted file mode 100644 index 9303b3c3d..000000000 --- a/src/tmx/Asn_J2735/src/r41/DMonth.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DMonth.h" - -int -DMonth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DMonth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DMonth_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DMonth_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DMonth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DMonth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DMonth_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DMonth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DMonth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DMonth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DMonth_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DMonth_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DMonth_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMonth = { - "DMonth", - "DMonth", - DMonth_free, - DMonth_print, - DMonth_constraint, - DMonth_decode_ber, - DMonth_encode_der, - DMonth_decode_xer, - DMonth_encode_xer, - DMonth_decode_uper, - DMonth_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DMonth_tags_1, - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - asn_DEF_DMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - &asn_PER_type_DMonth_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DMonthDay.c b/src/tmx/Asn_J2735/src/r41/DMonthDay.c deleted file mode 100644 index d215d4054..000000000 --- a/src/tmx/Asn_J2735/src/r41/DMonthDay.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DMonthDay.h" - -static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "day" - }, -}; -static ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { - sizeof(struct DMonthDay), - offsetof(struct DMonthDay, _asn_ctx), - asn_MAP_DMonthDay_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DMonthDay = { - "DMonthDay", - "DMonthDay", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DMonthDay_tags_1, - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - asn_DEF_DMonthDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DMonthDay_1, - 2, /* Elements count */ - &asn_SPC_DMonthDay_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DOffset.c b/src/tmx/Asn_J2735/src/r41/DOffset.c deleted file mode 100644 index 795aafeb8..000000000 --- a/src/tmx/Asn_J2735/src/r41/DOffset.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DOffset.h" - -int -DOffset_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -840 && value <= 840)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DOffset_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DOffset_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DOffset_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DOffset_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DOffset_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DOffset_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DOffset_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DOffset_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DOffset_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DOffset_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DOffset_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DOffset_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DOffset = { - "DOffset", - "DOffset", - DOffset_free, - DOffset_print, - DOffset_constraint, - DOffset_decode_ber, - DOffset_encode_der, - DOffset_decode_xer, - DOffset_encode_xer, - DOffset_decode_uper, - DOffset_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DOffset_tags_1, - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - asn_DEF_DOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - &asn_PER_type_DOffset_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c b/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c deleted file mode 100644 index 458d5e5d5..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "DSRCEquippedType.h" - -int -DSRCEquippedType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static void -DSRCEquippedType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BOOLEAN.free_struct; - td->print_struct = asn_DEF_BOOLEAN.print_struct; - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; - td->der_encoder = asn_DEF_BOOLEAN.der_encoder; - td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; - td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; - td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; - td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BOOLEAN.per_constraints; - td->elements = asn_DEF_BOOLEAN.elements; - td->elements_count = asn_DEF_BOOLEAN.elements_count; - td->specifics = asn_DEF_BOOLEAN.specifics; -} - -void -DSRCEquippedType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSRCEquippedType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSRCEquippedType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSRCEquippedType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSRCEquippedType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSRCEquippedType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSRCEquippedType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSRCEquippedType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSRCEquippedType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static const ber_tlv_tag_t asn_DEF_DSRCEquippedType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType = { - "DSRCEquippedType", - "DSRCEquippedType", - DSRCEquippedType_free, - DSRCEquippedType_print, - DSRCEquippedType_constraint, - DSRCEquippedType_decode_ber, - DSRCEquippedType_encode_der, - DSRCEquippedType_decode_xer, - DSRCEquippedType_encode_xer, - DSRCEquippedType_decode_uper, - DSRCEquippedType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSRCEquippedType_tags_1, - sizeof(asn_DEF_DSRCEquippedType_tags_1) - /sizeof(asn_DEF_DSRCEquippedType_tags_1[0]), /* 1 */ - asn_DEF_DSRCEquippedType_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCEquippedType_tags_1) - /sizeof(asn_DEF_DSRCEquippedType_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c deleted file mode 100644 index 88f7cbbfe..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DSRCmsgID.h" - -int -DSRCmsgID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -DSRCmsgID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -DSRCmsgID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSRCmsgID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSRCmsgID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSRCmsgID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSRCmsgID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSRCmsgID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_DSRCmsgID_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 15, "alaCarteMessage" }, - { 2, 18, "basicSafetyMessage" }, - { 3, 25, "basicSafetyMessageVerbose" }, - { 4, 19, "commonSafetyRequest" }, - { 5, 21, "emergencyVehicleAlert" }, - { 6, 26, "intersectionCollisionAlert" }, - { 7, 7, "mapData" }, - { 8, 15, "nmeaCorrections" }, - { 9, 19, "probeDataManagement" }, - { 10, 16, "probeVehicleData" }, - { 11, 13, "roadSideAlert" }, - { 12, 15, "rtcmCorrections" }, - { 13, 27, "signalPhaseAndTimingMessage" }, - { 14, 20, "signalRequestMessage" }, - { 15, 19, "signalStatusMessage" }, - { 16, 19, "travelerInformation" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_DSRCmsgID_enum2value_1[] = { - 1, /* alaCarteMessage(1) */ - 2, /* basicSafetyMessage(2) */ - 3, /* basicSafetyMessageVerbose(3) */ - 4, /* commonSafetyRequest(4) */ - 5, /* emergencyVehicleAlert(5) */ - 6, /* intersectionCollisionAlert(6) */ - 7, /* mapData(7) */ - 8, /* nmeaCorrections(8) */ - 9, /* probeDataManagement(9) */ - 10, /* probeVehicleData(10) */ - 0, /* reserved(0) */ - 11, /* roadSideAlert(11) */ - 12, /* rtcmCorrections(12) */ - 13, /* signalPhaseAndTimingMessage(13) */ - 14, /* signalRequestMessage(14) */ - 15, /* signalStatusMessage(15) */ - 16 /* travelerInformation(16) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_DSRCmsgID_specs_1 = { - asn_MAP_DSRCmsgID_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DSRCmsgID_enum2value_1, /* N => "tag"; sorted by N */ - 17, /* Number of elements in the maps */ - 18, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { - "DSRCmsgID", - "DSRCmsgID", - DSRCmsgID_free, - DSRCmsgID_print, - DSRCmsgID_constraint, - DSRCmsgID_decode_ber, - DSRCmsgID_encode_der, - DSRCmsgID_decode_xer, - DSRCmsgID_encode_xer, - DSRCmsgID_decode_uper, - DSRCmsgID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSRCmsgID_tags_1, - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - asn_DEF_DSRCmsgID_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - &asn_PER_type_DSRCmsgID_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DSRCmsgID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c deleted file mode 100644 index 803b6f481..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DSRCmsgID2.h" - -int -DSRCmsgID2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DSRCmsgID2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DSRCmsgID2_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSRCmsgID2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSRCmsgID2_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSRCmsgID2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgID2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSRCmsgID2_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSRCmsgID2_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DSRCmsgID2_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DSRCmsgID2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCmsgID2 = { - "DSRCmsgID2", - "DSRCmsgID2", - DSRCmsgID2_free, - DSRCmsgID2_print, - DSRCmsgID2_constraint, - DSRCmsgID2_decode_ber, - DSRCmsgID2_encode_der, - DSRCmsgID2_decode_xer, - DSRCmsgID2_encode_xer, - DSRCmsgID2_decode_uper, - DSRCmsgID2_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSRCmsgID2_tags_1, - sizeof(asn_DEF_DSRCmsgID2_tags_1) - /sizeof(asn_DEF_DSRCmsgID2_tags_1[0]), /* 1 */ - asn_DEF_DSRCmsgID2_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCmsgID2_tags_1) - /sizeof(asn_DEF_DSRCmsgID2_tags_1[0]), /* 1 */ - &asn_PER_type_DSRCmsgID2_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c deleted file mode 100644 index 8fb6a5188..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DSRCmsgSubID.h" - -int -DSRCmsgSubID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DSRCmsgSubID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DSRCmsgSubID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSRCmsgSubID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgSubID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSRCmsgSubID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgSubID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSRCmsgSubID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSRCmsgSubID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSRCmsgSubID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSRCmsgSubID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DSRCmsgSubID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DSRCmsgSubID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCmsgSubID = { - "DSRCmsgSubID", - "DSRCmsgSubID", - DSRCmsgSubID_free, - DSRCmsgSubID_print, - DSRCmsgSubID_constraint, - DSRCmsgSubID_decode_ber, - DSRCmsgSubID_encode_der, - DSRCmsgSubID_decode_xer, - DSRCmsgSubID_encode_xer, - DSRCmsgSubID_decode_uper, - DSRCmsgSubID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSRCmsgSubID_tags_1, - sizeof(asn_DEF_DSRCmsgSubID_tags_1) - /sizeof(asn_DEF_DSRCmsgSubID_tags_1[0]), /* 1 */ - asn_DEF_DSRCmsgSubID_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCmsgSubID_tags_1) - /sizeof(asn_DEF_DSRCmsgSubID_tags_1[0]), /* 1 */ - &asn_PER_type_DSRCmsgSubID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSecond.c b/src/tmx/Asn_J2735/src/r41/DSecond.c deleted file mode 100644 index 278f5ddf4..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSecond.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DSecond.h" - -int -DSecond_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DSecond_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DSecond_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSecond_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSecond_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSecond_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSecond_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSecond_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSecond_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSecond_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSecond_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSecond_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DSecond_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSecond = { - "DSecond", - "DSecond", - DSecond_free, - DSecond_print, - DSecond_constraint, - DSecond_decode_ber, - DSecond_encode_der, - DSecond_decode_xer, - DSecond_encode_xer, - DSecond_decode_uper, - DSecond_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSecond_tags_1, - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - asn_DEF_DSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - &asn_PER_type_DSecond_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DSecond2.c b/src/tmx/Asn_J2735/src/r41/DSecond2.c deleted file mode 100644 index 337733ba0..000000000 --- a/src/tmx/Asn_J2735/src/r41/DSecond2.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DSecond2.h" - -int -DSecond2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DSecond2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DSecond2_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DSecond2_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DSecond2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DSecond2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DSecond2_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DSecond2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DSecond2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DSecond2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DSecond2_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DSecond2_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DSecond2_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DSecond2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSecond2 = { - "DSecond2", - "DSecond2", - DSecond2_free, - DSecond2_print, - DSecond2_constraint, - DSecond2_decode_ber, - DSecond2_encode_der, - DSecond2_decode_xer, - DSecond2_encode_xer, - DSecond2_decode_uper, - DSecond2_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DSecond2_tags_1, - sizeof(asn_DEF_DSecond2_tags_1) - /sizeof(asn_DEF_DSecond2_tags_1[0]), /* 1 */ - asn_DEF_DSecond2_tags_1, /* Same as above */ - sizeof(asn_DEF_DSecond2_tags_1) - /sizeof(asn_DEF_DSecond2_tags_1[0]), /* 1 */ - &asn_PER_type_DSecond2_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DTime.c b/src/tmx/Asn_J2735/src/r41/DTime.c deleted file mode 100644 index 58d05cb88..000000000 --- a/src/tmx/Asn_J2735/src/r41/DTime.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DTime.h" - -static asn_TYPE_member_t asn_MBR_DTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, second), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "second" - }, -}; -static ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* second */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { - sizeof(struct DTime), - offsetof(struct DTime, _asn_ctx), - asn_MAP_DTime_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DTime = { - "DTime", - "DTime", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DTime_tags_1, - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - asn_DEF_DTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DTime_1, - 3, /* Elements count */ - &asn_SPC_DTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DYear.c b/src/tmx/Asn_J2735/src/r41/DYear.c deleted file mode 100644 index fe58abd53..000000000 --- a/src/tmx/Asn_J2735/src/r41/DYear.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DYear.h" - -int -DYear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 9999)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DYear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DYear_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DYear_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DYear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DYear_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DYear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DYear_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DYear_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DYear_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DYear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DYear_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DYear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DYear_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DYear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DYear_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DYear_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DYear_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DYear_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 9999 } /* (0..9999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DYear = { - "DYear", - "DYear", - DYear_free, - DYear_print, - DYear_constraint, - DYear_decode_ber, - DYear_encode_der, - DYear_decode_xer, - DYear_encode_xer, - DYear_decode_uper, - DYear_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DYear_tags_1, - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - asn_DEF_DYear_tags_1, /* Same as above */ - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - &asn_PER_type_DYear_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DYearMonth.c b/src/tmx/Asn_J2735/src/r41/DYearMonth.c deleted file mode 100644 index 3cc3a7827..000000000 --- a/src/tmx/Asn_J2735/src/r41/DYearMonth.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DYearMonth.h" - -static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, -}; -static ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { - sizeof(struct DYearMonth), - offsetof(struct DYearMonth, _asn_ctx), - asn_MAP_DYearMonth_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DYearMonth = { - "DYearMonth", - "DYearMonth", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DYearMonth_tags_1, - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - asn_DEF_DYearMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DYearMonth_1, - 2, /* Elements count */ - &asn_SPC_DYearMonth_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DataParameters.c b/src/tmx/Asn_J2735/src/r41/DataParameters.c deleted file mode 100644 index 86092d02c..000000000 --- a/src/tmx/Asn_J2735/src/r41/DataParameters.c +++ /dev/null @@ -1,272 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DataParameters.h" - -static int check_permitted_alphabet_2(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_3(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_processMethod_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_2(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_processAgency_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_3(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_lastCheckedDate_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_geoidUsed_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_TYPE_member_t asn_MBR_DataParameters_1[] = { - { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_processMethod_constraint_1, - &asn_PER_memb_processMethod_constr_2, - 0, - "processMethod" - }, - { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_processAgency_constraint_1, - &asn_PER_memb_processAgency_constr_3, - 0, - "processAgency" - }, - { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_lastCheckedDate_constraint_1, - &asn_PER_memb_lastCheckedDate_constr_4, - 0, - "lastCheckedDate" - }, - { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_geoidUsed_constraint_1, - &asn_PER_memb_geoidUsed_constr_5, - 0, - "geoidUsed" - }, -}; -static int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; -static ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { - sizeof(struct DataParameters), - offsetof(struct DataParameters, _asn_ctx), - asn_MAP_DataParameters_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DataParameters_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DataParameters = { - "DataParameters", - "DataParameters", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DataParameters_tags_1, - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - asn_DEF_DataParameters_tags_1, /* Same as above */ - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DataParameters_1, - 4, /* Elements count */ - &asn_SPC_DataParameters_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Day.c b/src/tmx/Asn_J2735/src/r41/Day.c deleted file mode 100644 index 545fb8651..000000000 --- a/src/tmx/Asn_J2735/src/r41/Day.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Day.h" - -int -Day_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Day_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Day_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Day_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Day_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Day_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Day_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Day_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Day_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Day_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Day_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Day_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Day_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Day_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Day_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Day_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Day_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Day_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Day_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Day_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Day = { - "Day", - "Day", - Day_free, - Day_print, - Day_constraint, - Day_decode_ber, - Day_encode_der, - Day_decode_xer, - Day_encode_xer, - Day_decode_uper, - Day_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Day_tags_1, - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - asn_DEF_Day_tags_1, /* Same as above */ - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - &asn_PER_type_Day_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DayOfWeek.c b/src/tmx/Asn_J2735/src/r41/DayOfWeek.c deleted file mode 100644 index 9a4eb85a4..000000000 --- a/src/tmx/Asn_J2735/src/r41/DayOfWeek.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DayOfWeek.h" - -int -DayOfWeek_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -DayOfWeek_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -DayOfWeek_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DayOfWeek_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DayOfWeek_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DayOfWeek_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DayOfWeek_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DayOfWeek_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DayOfWeek_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DayOfWeek_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DayOfWeek_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "monday" }, - { 2, 7, "tuesday" }, - { 3, 9, "wednesday" }, - { 4, 8, "thursday" }, - { 5, 6, "friday" }, - { 6, 8, "saturday" }, - { 7, 6, "sunday" } -}; -static unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { - 5, /* friday(5) */ - 1, /* monday(1) */ - 6, /* saturday(6) */ - 7, /* sunday(7) */ - 4, /* thursday(4) */ - 2, /* tuesday(2) */ - 0, /* unknown(0) */ - 3 /* wednesday(3) */ -}; -static asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { - asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { - "DayOfWeek", - "DayOfWeek", - DayOfWeek_free, - DayOfWeek_print, - DayOfWeek_constraint, - DayOfWeek_decode_ber, - DayOfWeek_encode_der, - DayOfWeek_decode_xer, - DayOfWeek_encode_xer, - DayOfWeek_decode_uper, - DayOfWeek_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DayOfWeek_tags_1, - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - asn_DEF_DayOfWeek_tags_1, /* Same as above */ - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - &asn_PER_type_DayOfWeek_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DegreesLat.c b/src/tmx/Asn_J2735/src/r41/DegreesLat.c deleted file mode 100644 index 0946268c2..000000000 --- a/src/tmx/Asn_J2735/src/r41/DegreesLat.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DegreesLat.h" - -int -DegreesLat_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -90 && value <= 90)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DegreesLat_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DegreesLat_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DegreesLat_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DegreesLat_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DegreesLat_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DegreesLat_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DegreesLat_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DegreesLat_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DegreesLat_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DegreesLat_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DegreesLat_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLat = { - "DegreesLat", - "DegreesLat", - DegreesLat_free, - DegreesLat_print, - DegreesLat_constraint, - DegreesLat_decode_ber, - DegreesLat_encode_der, - DegreesLat_decode_xer, - DegreesLat_encode_xer, - DegreesLat_decode_uper, - DegreesLat_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DegreesLat_tags_1, - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - asn_DEF_DegreesLat_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - &asn_PER_type_DegreesLat_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DegreesLong.c b/src/tmx/Asn_J2735/src/r41/DegreesLong.c deleted file mode 100644 index 18e1f4280..000000000 --- a/src/tmx/Asn_J2735/src/r41/DegreesLong.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DegreesLong.h" - -int -DegreesLong_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180 && value <= 180)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DegreesLong_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DegreesLong_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DegreesLong_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DegreesLong_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DegreesLong_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DegreesLong_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DegreesLong_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DegreesLong_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DegreesLong_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DegreesLong_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DegreesLong_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLong = { - "DegreesLong", - "DegreesLong", - DegreesLong_free, - DegreesLong_print, - DegreesLong_constraint, - DegreesLong_decode_ber, - DegreesLong_encode_der, - DegreesLong_decode_xer, - DegreesLong_encode_xer, - DegreesLong_decode_uper, - DegreesLong_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DegreesLong_tags_1, - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - asn_DEF_DegreesLong_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - &asn_PER_type_DegreesLong_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DeltaAngle.c b/src/tmx/Asn_J2735/src/r41/DeltaAngle.c deleted file mode 100644 index 44174e507..000000000 --- a/src/tmx/Asn_J2735/src/r41/DeltaAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DeltaAngle.h" - -int -DeltaAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -150 && value <= 150)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DeltaAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DeltaAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DeltaAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DeltaAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DeltaAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DeltaAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DeltaAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DeltaAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DeltaAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DeltaAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { - "DeltaAngle", - "DeltaAngle", - DeltaAngle_free, - DeltaAngle_print, - DeltaAngle_constraint, - DeltaAngle_decode_ber, - DeltaAngle_encode_der, - DeltaAngle_decode_xer, - DeltaAngle_encode_xer, - DeltaAngle_decode_uper, - DeltaAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DeltaAngle_tags_1, - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - asn_DEF_DeltaAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - &asn_PER_type_DeltaAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DescriptiveName.c b/src/tmx/Asn_J2735/src/r41/DescriptiveName.c deleted file mode 100644 index 528903913..000000000 --- a/src/tmx/Asn_J2735/src/r41/DescriptiveName.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DescriptiveName.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -DescriptiveName_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 63) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -DescriptiveName_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -DescriptiveName_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DescriptiveName_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DescriptiveName_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DescriptiveName_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DescriptiveName_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DescriptiveName_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DescriptiveName_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DescriptiveName_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DescriptiveName_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER character map necessary */ -}; -static ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { - "DescriptiveName", - "DescriptiveName", - DescriptiveName_free, - DescriptiveName_print, - DescriptiveName_constraint, - DescriptiveName_decode_ber, - DescriptiveName_encode_der, - DescriptiveName_decode_xer, - DescriptiveName_encode_xer, - DescriptiveName_decode_uper, - DescriptiveName_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DescriptiveName_tags_1, - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - asn_DEF_DescriptiveName_tags_1, /* Same as above */ - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - &asn_PER_type_DescriptiveName_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DestinationType.c b/src/tmx/Asn_J2735/src/r41/DestinationType.c deleted file mode 100644 index a578cf453..000000000 --- a/src/tmx/Asn_J2735/src/r41/DestinationType.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "DestinationType.h" - -static asn_TYPE_member_t asn_MBR_DestinationType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DestinationType, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct DestinationType, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_DestinationType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DestinationType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DestinationType_specs_1 = { - sizeof(struct DestinationType), - offsetof(struct DestinationType, _asn_ctx), - asn_MAP_DestinationType_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_DestinationType = { - "DestinationType", - "DestinationType", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DestinationType_tags_1, - sizeof(asn_DEF_DestinationType_tags_1) - /sizeof(asn_DEF_DestinationType_tags_1[0]), /* 1 */ - asn_DEF_DestinationType_tags_1, /* Same as above */ - sizeof(asn_DEF_DestinationType_tags_1) - /sizeof(asn_DEF_DestinationType_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_DestinationType_1, - 2, /* Elements count */ - &asn_SPC_DestinationType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c b/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c deleted file mode 100644 index 976af1c53..000000000 --- a/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DirectionOfUse.h" - -int -DirectionOfUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -DirectionOfUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -DirectionOfUse_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DirectionOfUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DirectionOfUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DirectionOfUse_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DirectionOfUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DirectionOfUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DirectionOfUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DirectionOfUse_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DirectionOfUse_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { - { 0, 7, "forward" }, - { 1, 7, "reverse" }, - { 2, 4, "both" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { - 2, /* both(2) */ - 0, /* forward(0) */ - 1 /* reverse(1) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { - asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 4, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { - "DirectionOfUse", - "DirectionOfUse", - DirectionOfUse_free, - DirectionOfUse_print, - DirectionOfUse_constraint, - DirectionOfUse_decode_ber, - DirectionOfUse_encode_der, - DirectionOfUse_decode_xer, - DirectionOfUse_encode_xer, - DirectionOfUse_decode_uper, - DirectionOfUse_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DirectionOfUse_tags_1, - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - asn_DEF_DirectionOfUse_tags_1, /* Same as above */ - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - &asn_PER_type_DirectionOfUse_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c deleted file mode 100644 index 191cb0707..000000000 --- a/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DriveAxleLiftAirPressure.h" - -int -DriveAxleLiftAirPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DriveAxleLiftAirPressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DriveAxleLiftAirPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLiftAirPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DriveAxleLiftAirPressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLiftAirPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DriveAxleLiftAirPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLiftAirPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DriveAxleLiftAirPressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { - "DriveAxleLiftAirPressure", - "DriveAxleLiftAirPressure", - DriveAxleLiftAirPressure_free, - DriveAxleLiftAirPressure_print, - DriveAxleLiftAirPressure_constraint, - DriveAxleLiftAirPressure_decode_ber, - DriveAxleLiftAirPressure_encode_der, - DriveAxleLiftAirPressure_decode_xer, - DriveAxleLiftAirPressure_encode_xer, - DriveAxleLiftAirPressure_decode_uper, - DriveAxleLiftAirPressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DriveAxleLiftAirPressure_tags_1, - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - &asn_PER_type_DriveAxleLiftAirPressure_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c deleted file mode 100644 index 31a6668e8..000000000 --- a/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DriveAxleLocation.h" - -int -DriveAxleLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DriveAxleLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DriveAxleLocation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DriveAxleLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DriveAxleLocation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DriveAxleLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DriveAxleLocation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DriveAxleLocation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { - "DriveAxleLocation", - "DriveAxleLocation", - DriveAxleLocation_free, - DriveAxleLocation_print, - DriveAxleLocation_constraint, - DriveAxleLocation_decode_ber, - DriveAxleLocation_encode_der, - DriveAxleLocation_decode_xer, - DriveAxleLocation_encode_xer, - DriveAxleLocation_decode_uper, - DriveAxleLocation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DriveAxleLocation_tags_1, - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - &asn_PER_type_DriveAxleLocation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c deleted file mode 100644 index e2d348f88..000000000 --- a/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DriveAxleLubePressure.h" - -int -DriveAxleLubePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DriveAxleLubePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DriveAxleLubePressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DriveAxleLubePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLubePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DriveAxleLubePressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLubePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DriveAxleLubePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DriveAxleLubePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DriveAxleLubePressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { - "DriveAxleLubePressure", - "DriveAxleLubePressure", - DriveAxleLubePressure_free, - DriveAxleLubePressure_print, - DriveAxleLubePressure_constraint, - DriveAxleLubePressure_decode_ber, - DriveAxleLubePressure_encode_der, - DriveAxleLubePressure_decode_xer, - DriveAxleLubePressure_encode_xer, - DriveAxleLubePressure_decode_uper, - DriveAxleLubePressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DriveAxleLubePressure_tags_1, - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - &asn_PER_type_DriveAxleLubePressure_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c deleted file mode 100644 index 446ee2e7f..000000000 --- a/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DriveAxleTemperature.h" - -int -DriveAxleTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -40 && value <= 210)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DriveAxleTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DriveAxleTemperature_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DriveAxleTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DriveAxleTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DriveAxleTemperature_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DriveAxleTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DriveAxleTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DriveAxleTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DriveAxleTemperature_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DriveAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { - "DriveAxleTemperature", - "DriveAxleTemperature", - DriveAxleTemperature_free, - DriveAxleTemperature_print, - DriveAxleTemperature_constraint, - DriveAxleTemperature_decode_ber, - DriveAxleTemperature_encode_der, - DriveAxleTemperature_decode_xer, - DriveAxleTemperature_encode_xer, - DriveAxleTemperature_decode_uper, - DriveAxleTemperature_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DriveAxleTemperature_tags_1, - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - &asn_PER_type_DriveAxleTemperature_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c deleted file mode 100644 index 814d6948a..000000000 --- a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DrivenLineOffsetLg.h" - -int -DrivenLineOffsetLg_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DrivenLineOffsetLg_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DrivenLineOffsetLg_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DrivenLineOffsetLg_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetLg_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DrivenLineOffsetLg_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetLg_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DrivenLineOffsetLg_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetLg_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DrivenLineOffsetLg_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { - "DrivenLineOffsetLg", - "DrivenLineOffsetLg", - DrivenLineOffsetLg_free, - DrivenLineOffsetLg_print, - DrivenLineOffsetLg_constraint, - DrivenLineOffsetLg_decode_ber, - DrivenLineOffsetLg_encode_der, - DrivenLineOffsetLg_decode_xer, - DrivenLineOffsetLg_encode_xer, - DrivenLineOffsetLg_decode_uper, - DrivenLineOffsetLg_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DrivenLineOffsetLg_tags_1, - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - &asn_PER_type_DrivenLineOffsetLg_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c deleted file mode 100644 index 66437c787..000000000 --- a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DrivenLineOffsetSm.h" - -int -DrivenLineOffsetSm_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2047 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DrivenLineOffsetSm_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DrivenLineOffsetSm_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DrivenLineOffsetSm_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetSm_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DrivenLineOffsetSm_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetSm_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DrivenLineOffsetSm_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DrivenLineOffsetSm_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DrivenLineOffsetSm_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { - "DrivenLineOffsetSm", - "DrivenLineOffsetSm", - DrivenLineOffsetSm_free, - DrivenLineOffsetSm_print, - DrivenLineOffsetSm_constraint, - DrivenLineOffsetSm_decode_ber, - DrivenLineOffsetSm_encode_der, - DrivenLineOffsetSm_decode_xer, - DrivenLineOffsetSm_encode_xer, - DrivenLineOffsetSm_decode_uper, - DrivenLineOffsetSm_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DrivenLineOffsetSm_tags_1, - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - &asn_PER_type_DrivenLineOffsetSm_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c deleted file mode 100644 index 8fbda12f5..000000000 --- a/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DrivingWheelAngle.h" - -int -DrivingWheelAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -DrivingWheelAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -DrivingWheelAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -DrivingWheelAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -DrivingWheelAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -DrivingWheelAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -DrivingWheelAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -DrivingWheelAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -DrivingWheelAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -DrivingWheelAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - DrivingWheelAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { - "DrivingWheelAngle", - "DrivingWheelAngle", - DrivingWheelAngle_free, - DrivingWheelAngle_print, - DrivingWheelAngle_constraint, - DrivingWheelAngle_decode_ber, - DrivingWheelAngle_encode_der, - DrivingWheelAngle_decode_xer, - DrivingWheelAngle_encode_xer, - DrivingWheelAngle_decode_uper, - DrivingWheelAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_DrivingWheelAngle_tags_1, - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - &asn_PER_type_DrivingWheelAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c deleted file mode 100644 index 5fe0bacb5..000000000 --- a/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EU-Reg-ConnectionManeuverAssist.h" - -static asn_TYPE_member_t asn_MBR_EU_Reg_ConnectionManeuverAssist_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EU_Reg_ConnectionManeuverAssist, vehicleToLanePositions), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleToLanePositionList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleToLanePositions" - }, - { ATF_POINTER, 1, offsetof(struct EU_Reg_ConnectionManeuverAssist, rsuDistanceFromAnchor), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPoint, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rsuDistanceFromAnchor" - }, -}; -static int asn_MAP_EU_Reg_ConnectionManeuverAssist_oms_1[] = { 1 }; -static ber_tlv_tag_t asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EU_Reg_ConnectionManeuverAssist_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_ConnectionManeuverAssist_specs_1 = { - sizeof(struct EU_Reg_ConnectionManeuverAssist), - offsetof(struct EU_Reg_ConnectionManeuverAssist, _asn_ctx), - asn_MAP_EU_Reg_ConnectionManeuverAssist_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_EU_Reg_ConnectionManeuverAssist_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EU_Reg_ConnectionManeuverAssist = { - "EU-Reg-ConnectionManeuverAssist", - "EU-Reg-ConnectionManeuverAssist", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EU_Reg_ConnectionManeuverAssist_1, - 2, /* Elements count */ - &asn_SPC_EU_Reg_ConnectionManeuverAssist_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c deleted file mode 100644 index 927b82500..000000000 --- a/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EU-Reg-IntersectionState.h" - -static asn_TYPE_member_t asn_MBR_EU_Reg_IntersectionState_1[] = { - { ATF_POINTER, 1, offsetof(struct EU_Reg_IntersectionState, activePrioritizations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "activePrioritizations" - }, -}; -static int asn_MAP_EU_Reg_IntersectionState_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_EU_Reg_IntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EU_Reg_IntersectionState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_IntersectionState_specs_1 = { - sizeof(struct EU_Reg_IntersectionState), - offsetof(struct EU_Reg_IntersectionState, _asn_ctx), - asn_MAP_EU_Reg_IntersectionState_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_EU_Reg_IntersectionState_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 0, /* Start extensions */ - 2 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EU_Reg_IntersectionState = { - "EU-Reg-IntersectionState", - "EU-Reg-IntersectionState", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EU_Reg_IntersectionState_tags_1, - sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1) - /sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1[0]), /* 1 */ - asn_DEF_EU_Reg_IntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1) - /sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EU_Reg_IntersectionState_1, - 1, /* Elements count */ - &asn_SPC_EU_Reg_IntersectionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c deleted file mode 100644 index 90422e102..000000000 --- a/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EU-Reg-MapData.h" - -static asn_TYPE_member_t asn_MBR_EU_Reg_MapData_1[] = { - { ATF_POINTER, 1, offsetof(struct EU_Reg_MapData, signalHeadLocations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalHeadLocationList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "signalHeadLocations" - }, -}; -static int asn_MAP_EU_Reg_MapData_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_EU_Reg_MapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EU_Reg_MapData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_MapData_specs_1 = { - sizeof(struct EU_Reg_MapData), - offsetof(struct EU_Reg_MapData, _asn_ctx), - asn_MAP_EU_Reg_MapData_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_EU_Reg_MapData_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 0, /* Start extensions */ - 2 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EU_Reg_MapData = { - "EU-Reg-MapData", - "EU-Reg-MapData", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EU_Reg_MapData_tags_1, - sizeof(asn_DEF_EU_Reg_MapData_tags_1) - /sizeof(asn_DEF_EU_Reg_MapData_tags_1[0]), /* 1 */ - asn_DEF_EU_Reg_MapData_tags_1, /* Same as above */ - sizeof(asn_DEF_EU_Reg_MapData_tags_1) - /sizeof(asn_DEF_EU_Reg_MapData_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EU_Reg_MapData_1, - 1, /* Elements count */ - &asn_SPC_EU_Reg_MapData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c deleted file mode 100644 index 583316ac2..000000000 --- a/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EU-Reg-Position3D.h" - -static asn_TYPE_member_t asn_MBR_EU_Reg_Position3D_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EU_Reg_Position3D, altitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Altitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "altitude" - }, -}; -static ber_tlv_tag_t asn_DEF_EU_Reg_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EU_Reg_Position3D_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_Position3D_specs_1 = { - sizeof(struct EU_Reg_Position3D), - offsetof(struct EU_Reg_Position3D, _asn_ctx), - asn_MAP_EU_Reg_Position3D_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 0, /* Start extensions */ - 2 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EU_Reg_Position3D = { - "EU-Reg-Position3D", - "EU-Reg-Position3D", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EU_Reg_Position3D_tags_1, - sizeof(asn_DEF_EU_Reg_Position3D_tags_1) - /sizeof(asn_DEF_EU_Reg_Position3D_tags_1[0]), /* 1 */ - asn_DEF_EU_Reg_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_EU_Reg_Position3D_tags_1) - /sizeof(asn_DEF_EU_Reg_Position3D_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EU_Reg_Position3D_1, - 1, /* Elements count */ - &asn_SPC_EU_Reg_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c deleted file mode 100644 index 25762e7a5..000000000 --- a/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EU-Reg-RestrictionUserType.h" - -static asn_TYPE_member_t asn_MBR_EU_Reg_RestrictionUserType_1[] = { - { ATF_POINTER, 1, offsetof(struct EU_Reg_RestrictionUserType, emission), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmissionType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "emission" - }, -}; -static int asn_MAP_EU_Reg_RestrictionUserType_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_EU_Reg_RestrictionUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EU_Reg_RestrictionUserType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_RestrictionUserType_specs_1 = { - sizeof(struct EU_Reg_RestrictionUserType), - offsetof(struct EU_Reg_RestrictionUserType, _asn_ctx), - asn_MAP_EU_Reg_RestrictionUserType_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_EU_Reg_RestrictionUserType_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 0, /* Start extensions */ - 2 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EU_Reg_RestrictionUserType = { - "EU-Reg-RestrictionUserType", - "EU-Reg-RestrictionUserType", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EU_Reg_RestrictionUserType_tags_1, - sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1) - /sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1[0]), /* 1 */ - asn_DEF_EU_Reg_RestrictionUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1) - /sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EU_Reg_RestrictionUserType_1, - 1, /* Elements count */ - &asn_SPC_EU_Reg_RestrictionUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Elevation.c b/src/tmx/Asn_J2735/src/r41/Elevation.c deleted file mode 100644 index 804266a0a..000000000 --- a/src/tmx/Asn_J2735/src/r41/Elevation.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Elevation.h" - -int -Elevation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -Elevation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -Elevation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Elevation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Elevation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Elevation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Elevation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Elevation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Elevation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Elevation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Elevation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Elevation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Elevation_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Elevation = { - "Elevation", - "Elevation", - Elevation_free, - Elevation_print, - Elevation_constraint, - Elevation_decode_ber, - Elevation_encode_der, - Elevation_decode_xer, - Elevation_encode_xer, - Elevation_decode_uper, - Elevation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Elevation_tags_1, - sizeof(asn_DEF_Elevation_tags_1) - /sizeof(asn_DEF_Elevation_tags_1[0]), /* 1 */ - asn_DEF_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_Elevation_tags_1) - /sizeof(asn_DEF_Elevation_tags_1[0]), /* 1 */ - &asn_PER_type_Elevation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Elevation2.c b/src/tmx/Asn_J2735/src/r41/Elevation2.c deleted file mode 100644 index 0ee3cdc9c..000000000 --- a/src/tmx/Asn_J2735/src/r41/Elevation2.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Elevation2.h" - -int -Elevation2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096 && value <= 61439)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Elevation2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Elevation2_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Elevation2_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Elevation2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Elevation2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Elevation2_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Elevation2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Elevation2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Elevation2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Elevation2_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Elevation2_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Elevation2_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Elevation2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Elevation2 = { - "Elevation2", - "Elevation2", - Elevation2_free, - Elevation2_print, - Elevation2_constraint, - Elevation2_decode_ber, - Elevation2_encode_der, - Elevation2_decode_xer, - Elevation2_encode_xer, - Elevation2_decode_uper, - Elevation2_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Elevation2_tags_1, - sizeof(asn_DEF_Elevation2_tags_1) - /sizeof(asn_DEF_Elevation2_tags_1[0]), /* 1 */ - asn_DEF_Elevation2_tags_1, /* Same as above */ - sizeof(asn_DEF_Elevation2_tags_1) - /sizeof(asn_DEF_Elevation2_tags_1[0]), /* 1 */ - &asn_PER_type_Elevation2_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c b/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c deleted file mode 100644 index 03a90d95c..000000000 --- a/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ElevationConfidence.h" - -int -ElevationConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -ElevationConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -ElevationConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ElevationConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ElevationConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ElevationConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ElevationConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ElevationConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ElevationConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ElevationConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ElevationConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "elev-500-00" }, - { 2, 11, "elev-200-00" }, - { 3, 11, "elev-100-00" }, - { 4, 11, "elev-050-00" }, - { 5, 11, "elev-020-00" }, - { 6, 11, "elev-010-00" }, - { 7, 11, "elev-005-00" }, - { 8, 11, "elev-002-00" }, - { 9, 11, "elev-001-00" }, - { 10, 11, "elev-000-50" }, - { 11, 11, "elev-000-20" }, - { 12, 11, "elev-000-10" }, - { 13, 11, "elev-000-05" }, - { 14, 11, "elev-000-02" }, - { 15, 11, "elev-000-01" } -}; -static unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { - 15, /* elev-000-01(15) */ - 14, /* elev-000-02(14) */ - 13, /* elev-000-05(13) */ - 12, /* elev-000-10(12) */ - 11, /* elev-000-20(11) */ - 10, /* elev-000-50(10) */ - 9, /* elev-001-00(9) */ - 8, /* elev-002-00(8) */ - 7, /* elev-005-00(7) */ - 6, /* elev-010-00(6) */ - 5, /* elev-020-00(5) */ - 4, /* elev-050-00(4) */ - 3, /* elev-100-00(3) */ - 2, /* elev-200-00(2) */ - 1, /* elev-500-00(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { - asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { - "ElevationConfidence", - "ElevationConfidence", - ElevationConfidence_free, - ElevationConfidence_print, - ElevationConfidence_constraint, - ElevationConfidence_decode_ber, - ElevationConfidence_encode_der, - ElevationConfidence_decode_xer, - ElevationConfidence_encode_xer, - ElevationConfidence_decode_uper, - ElevationConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ElevationConfidence_tags_1, - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - asn_DEF_ElevationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_ElevationConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c b/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c deleted file mode 100644 index b79ef9f85..000000000 --- a/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EmergencyDetails.h" - -int -EmergencyDetails_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EmergencyDetails_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EmergencyDetails_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EmergencyDetails_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EmergencyDetails_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EmergencyDetails_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EmergencyDetails_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EmergencyDetails_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EmergencyDetails_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EmergencyDetails_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EmergencyDetails_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EmergencyDetails_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { - "EmergencyDetails", - "EmergencyDetails", - EmergencyDetails_free, - EmergencyDetails_print, - EmergencyDetails_constraint, - EmergencyDetails_decode_ber, - EmergencyDetails_encode_der, - EmergencyDetails_decode_xer, - EmergencyDetails_encode_xer, - EmergencyDetails_decode_uper, - EmergencyDetails_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EmergencyDetails_tags_1, - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - asn_DEF_EmergencyDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - &asn_PER_type_EmergencyDetails_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c deleted file mode 100644 index 9f8306855..000000000 --- a/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EmergencyVehicleAlert.h" - -static asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSideAlert, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rsaMsg" - }, - { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, responseType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponseType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "responseType" - }, - { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, details), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmergencyDetails, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "details" - }, - { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, mass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "mass" - }, - { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, basicType), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "basicType" - }, - { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleType" - }, - { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responseEquip), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "responseEquip" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, responderType), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "responderType" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, crc), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; -static ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { - sizeof(struct EmergencyVehicleAlert), - offsetof(struct EmergencyVehicleAlert, _asn_ctx), - asn_MAP_EmergencyVehicleAlert_tag2el_1, - 11, /* Count of tags in the map */ - asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 10, /* Start extensions */ - 12 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { - "EmergencyVehicleAlert", - "EmergencyVehicleAlert", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EmergencyVehicleAlert_tags_1, - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_EmergencyVehicleAlert_1, - 11, /* Elements count */ - &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EmissionType.c b/src/tmx/Asn_J2735/src/r41/EmissionType.c deleted file mode 100644 index 09035f577..000000000 --- a/src/tmx/Asn_J2735/src/r41/EmissionType.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EmissionType.h" - -int -EmissionType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -EmissionType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -EmissionType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EmissionType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EmissionType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EmissionType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EmissionType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EmissionType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EmissionType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EmissionType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EmissionType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EmissionType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EmissionType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { - { 0, 5, "typeA" }, - { 1, 5, "typeB" }, - { 2, 5, "typeC" }, - { 3, 5, "typeD" }, - { 4, 5, "typeE" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_EmissionType_enum2value_1[] = { - 0, /* typeA(0) */ - 1, /* typeB(1) */ - 2, /* typeC(2) */ - 3, /* typeD(3) */ - 4 /* typeE(4) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { - asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EmissionType = { - "EmissionType", - "EmissionType", - EmissionType_free, - EmissionType_print, - EmissionType_constraint, - EmissionType_decode_ber, - EmissionType_encode_der, - EmissionType_decode_xer, - EmissionType_encode_xer, - EmissionType_decode_uper, - EmissionType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EmissionType_tags_1, - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - asn_DEF_EmissionType_tags_1, /* Same as above */ - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - &asn_PER_type_EmissionType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EmissionType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c b/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c deleted file mode 100644 index 69eef2088..000000000 --- a/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EnabledLaneList.h" - -static asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { - sizeof(struct EnabledLaneList), - offsetof(struct EnabledLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { - "EnabledLaneList", - "EnabledLaneList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EnabledLaneList_tags_1, - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - asn_DEF_EnabledLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - &asn_PER_type_EnabledLaneList_constr_1, - asn_MBR_EnabledLaneList_1, - 1, /* Single element */ - &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c b/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c deleted file mode 100644 index a539267d5..000000000 --- a/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EssMobileFriction.h" - -int -EssMobileFriction_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 101)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EssMobileFriction_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EssMobileFriction_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EssMobileFriction_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EssMobileFriction_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EssMobileFriction_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EssMobileFriction_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EssMobileFriction_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EssMobileFriction_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EssMobileFriction_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EssMobileFriction_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { - "EssMobileFriction", - "EssMobileFriction", - EssMobileFriction_free, - EssMobileFriction_print, - EssMobileFriction_constraint, - EssMobileFriction_decode_ber, - EssMobileFriction_encode_der, - EssMobileFriction_decode_xer, - EssMobileFriction_encode_xer, - EssMobileFriction_decode_uper, - EssMobileFriction_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EssMobileFriction_tags_1, - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - asn_DEF_EssMobileFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - &asn_PER_type_EssMobileFriction_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c b/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c deleted file mode 100644 index ef1aa5874..000000000 --- a/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EssPrecipRate.h" - -int -EssPrecipRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EssPrecipRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EssPrecipRate_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EssPrecipRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EssPrecipRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EssPrecipRate_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EssPrecipRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EssPrecipRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EssPrecipRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EssPrecipRate_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EssPrecipRate_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { - "EssPrecipRate", - "EssPrecipRate", - EssPrecipRate_free, - EssPrecipRate_print, - EssPrecipRate_constraint, - EssPrecipRate_decode_ber, - EssPrecipRate_encode_der, - EssPrecipRate_decode_xer, - EssPrecipRate_encode_xer, - EssPrecipRate_decode_uper, - EssPrecipRate_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EssPrecipRate_tags_1, - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipRate_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - &asn_PER_type_EssPrecipRate_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c deleted file mode 100644 index 6c7cfbb35..000000000 --- a/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EssPrecipSituation.h" - -int -EssPrecipSituation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -EssPrecipSituation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -EssPrecipSituation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EssPrecipSituation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EssPrecipSituation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EssPrecipSituation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EssPrecipSituation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EssPrecipSituation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EssPrecipSituation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EssPrecipSituation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EssPrecipSituation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { - { 1, 5, "other" }, - { 2, 7, "unknown" }, - { 3, 15, "noPrecipitation" }, - { 4, 18, "unidentifiedSlight" }, - { 5, 20, "unidentifiedModerate" }, - { 6, 17, "unidentifiedHeavy" }, - { 7, 10, "snowSlight" }, - { 8, 12, "snowModerate" }, - { 9, 9, "snowHeavy" }, - { 10, 10, "rainSlight" }, - { 11, 12, "rainModerate" }, - { 12, 9, "rainHeavy" }, - { 13, 25, "frozenPrecipitationSlight" }, - { 14, 27, "frozenPrecipitationModerate" }, - { 15, 24, "frozenPrecipitationHeavy" } -}; -static unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { - 14, /* frozenPrecipitationHeavy(15) */ - 13, /* frozenPrecipitationModerate(14) */ - 12, /* frozenPrecipitationSlight(13) */ - 2, /* noPrecipitation(3) */ - 0, /* other(1) */ - 11, /* rainHeavy(12) */ - 10, /* rainModerate(11) */ - 9, /* rainSlight(10) */ - 8, /* snowHeavy(9) */ - 7, /* snowModerate(8) */ - 6, /* snowSlight(7) */ - 5, /* unidentifiedHeavy(6) */ - 4, /* unidentifiedModerate(5) */ - 3, /* unidentifiedSlight(4) */ - 1 /* unknown(2) */ -}; -static asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { - asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ - 15, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { - "EssPrecipSituation", - "EssPrecipSituation", - EssPrecipSituation_free, - EssPrecipSituation_print, - EssPrecipSituation_constraint, - EssPrecipSituation_decode_ber, - EssPrecipSituation_encode_der, - EssPrecipSituation_decode_xer, - EssPrecipSituation_encode_xer, - EssPrecipSituation_decode_uper, - EssPrecipSituation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EssPrecipSituation_tags_1, - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - &asn_PER_type_EssPrecipSituation_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c deleted file mode 100644 index 834c0bf35..000000000 --- a/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EssPrecipYesNo.h" - -int -EssPrecipYesNo_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -EssPrecipYesNo_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -EssPrecipYesNo_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EssPrecipYesNo_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EssPrecipYesNo_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EssPrecipYesNo_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EssPrecipYesNo_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EssPrecipYesNo_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EssPrecipYesNo_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EssPrecipYesNo_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EssPrecipYesNo_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { - { 1, 6, "precip" }, - { 2, 8, "noPrecip" }, - { 3, 5, "error" } -}; -static unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { - 2, /* error(3) */ - 1, /* noPrecip(2) */ - 0 /* precip(1) */ -}; -static asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { - asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { - "EssPrecipYesNo", - "EssPrecipYesNo", - EssPrecipYesNo_free, - EssPrecipYesNo_print, - EssPrecipYesNo_constraint, - EssPrecipYesNo_decode_ber, - EssPrecipYesNo_encode_der, - EssPrecipYesNo_decode_xer, - EssPrecipYesNo_encode_xer, - EssPrecipYesNo_decode_uper, - EssPrecipYesNo_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EssPrecipYesNo_tags_1, - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - &asn_PER_type_EssPrecipYesNo_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c deleted file mode 100644 index f7bb0733e..000000000 --- a/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EssSolarRadiation.h" - -int -EssSolarRadiation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EssSolarRadiation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EssSolarRadiation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EssSolarRadiation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EssSolarRadiation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EssSolarRadiation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EssSolarRadiation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EssSolarRadiation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EssSolarRadiation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EssSolarRadiation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EssSolarRadiation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { - "EssSolarRadiation", - "EssSolarRadiation", - EssSolarRadiation_free, - EssSolarRadiation_print, - EssSolarRadiation_constraint, - EssSolarRadiation_decode_ber, - EssSolarRadiation_encode_der, - EssSolarRadiation_decode_xer, - EssSolarRadiation_encode_xer, - EssSolarRadiation_decode_uper, - EssSolarRadiation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EssSolarRadiation_tags_1, - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - &asn_PER_type_EssSolarRadiation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c b/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c deleted file mode 100644 index ee90e0acc..000000000 --- a/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "EstimatedTimeType.h" - -int -EstimatedTimeType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 3000000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EstimatedTimeType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EstimatedTimeType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EstimatedTimeType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EstimatedTimeType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EstimatedTimeType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EstimatedTimeType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EstimatedTimeType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EstimatedTimeType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EstimatedTimeType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EstimatedTimeType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EstimatedTimeType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 22, -1, 0, 3000000 } /* (0..3000000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_EstimatedTimeType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EstimatedTimeType = { - "EstimatedTimeType", - "EstimatedTimeType", - EstimatedTimeType_free, - EstimatedTimeType_print, - EstimatedTimeType_constraint, - EstimatedTimeType_decode_ber, - EstimatedTimeType_encode_der, - EstimatedTimeType_decode_xer, - EstimatedTimeType_encode_xer, - EstimatedTimeType_decode_uper, - EstimatedTimeType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EstimatedTimeType_tags_1, - sizeof(asn_DEF_EstimatedTimeType_tags_1) - /sizeof(asn_DEF_EstimatedTimeType_tags_1[0]), /* 1 */ - asn_DEF_EstimatedTimeType_tags_1, /* Same as above */ - sizeof(asn_DEF_EstimatedTimeType_tags_1) - /sizeof(asn_DEF_EstimatedTimeType_tags_1[0]), /* 1 */ - &asn_PER_type_EstimatedTimeType_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/EventFlags.c b/src/tmx/Asn_J2735/src/r41/EventFlags.c deleted file mode 100644 index 91ae574cb..000000000 --- a/src/tmx/Asn_J2735/src/r41/EventFlags.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "EventFlags.h" - -int -EventFlags_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 8192)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -EventFlags_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -EventFlags_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - EventFlags_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -EventFlags_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -EventFlags_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -EventFlags_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -EventFlags_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -EventFlags_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -EventFlags_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -EventFlags_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - EventFlags_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_EventFlags_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 8192 } /* (0..8192) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_EventFlags_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EventFlags = { - "EventFlags", - "EventFlags", - EventFlags_free, - EventFlags_print, - EventFlags_constraint, - EventFlags_decode_ber, - EventFlags_encode_der, - EventFlags_decode_xer, - EventFlags_encode_xer, - EventFlags_decode_uper, - EventFlags_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_EventFlags_tags_1, - sizeof(asn_DEF_EventFlags_tags_1) - /sizeof(asn_DEF_EventFlags_tags_1[0]), /* 1 */ - asn_DEF_EventFlags_tags_1, /* Same as above */ - sizeof(asn_DEF_EventFlags_tags_1) - /sizeof(asn_DEF_EventFlags_tags_1[0]), /* 1 */ - &asn_PER_type_EventFlags_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ExitService.c b/src/tmx/Asn_J2735/src/r41/ExitService.c deleted file mode 100644 index 221381ae8..000000000 --- a/src/tmx/Asn_J2735/src/r41/ExitService.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ExitService.h" - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_type_item_es_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_ExitService_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_es_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct item_es, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct item_es, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_text_constraint_3, - &asn_PER_memb_text_constr_5, - 0, - "text" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_item_es_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_es_specs_3 = { - sizeof(struct item_es), - offsetof(struct item_es, _asn_ctx), - offsetof(struct item_es, present), - sizeof(((struct item_es *)0)->present), - asn_MAP_item_es_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_es_3 = { - "item-es", - "item-es", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_item_es_constr_3, - asn_MBR_item_es_3, - 2, /* Elements count */ - &asn_SPC_item_es_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item_es), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_es_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "item-es" - }, -}; -static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-es */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ExitService__Member), - offsetof(struct ExitService__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ExitService_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { - sizeof(struct ExitService), - offsetof(struct ExitService, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ExitService = { - "ExitService", - "ExitService", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ExitService_tags_1, - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - asn_DEF_ExitService_tags_1, /* Same as above */ - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - &asn_PER_type_ExitService_constr_1, - asn_MBR_ExitService_1, - 1, /* Single element */ - &asn_SPC_ExitService_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Extent.c b/src/tmx/Asn_J2735/src/r41/Extent.c deleted file mode 100644 index 6a2a39fdc..000000000 --- a/src/tmx/Asn_J2735/src/r41/Extent.c +++ /dev/null @@ -1,167 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Extent.h" - -int -Extent_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -Extent_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -Extent_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Extent_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Extent_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Extent_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Extent_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Extent_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Extent_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Extent_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Extent_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Extent_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Extent_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Extent_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Extent_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Extent_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Extent_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Extent_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Extent_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 11 } /* (0..11) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { - { 0, 16, "useInstantlyOnly" }, - { 1, 13, "useFor3meters" }, - { 2, 14, "useFor10meters" }, - { 3, 14, "useFor50meters" }, - { 4, 15, "useFor100meters" }, - { 5, 15, "useFor500meters" }, - { 6, 16, "useFor1000meters" }, - { 7, 16, "useFor5000meters" }, - { 8, 17, "useFor10000meters" }, - { 9, 17, "useFor50000meters" }, - { 10, 18, "useFor100000meters" }, - { 127, 7, "forever" } -}; -static unsigned int asn_MAP_Extent_enum2value_1[] = { - 11, /* forever(127) */ - 10, /* useFor100000meters(10) */ - 8, /* useFor10000meters(8) */ - 6, /* useFor1000meters(6) */ - 4, /* useFor100meters(4) */ - 2, /* useFor10meters(2) */ - 1, /* useFor3meters(1) */ - 9, /* useFor50000meters(9) */ - 7, /* useFor5000meters(7) */ - 5, /* useFor500meters(5) */ - 3, /* useFor50meters(3) */ - 0 /* useInstantlyOnly(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { - asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Extent = { - "Extent", - "Extent", - Extent_free, - Extent_print, - Extent_constraint, - Extent_decode_ber, - Extent_encode_der, - Extent_decode_xer, - Extent_encode_xer, - Extent_decode_uper, - Extent_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Extent_tags_1, - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - asn_DEF_Extent_tags_1, /* Same as above */ - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - &asn_PER_type_Extent_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Extent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ExteriorLights.c b/src/tmx/Asn_J2735/src/r41/ExteriorLights.c deleted file mode 100644 index 6b3250b95..000000000 --- a/src/tmx/Asn_J2735/src/r41/ExteriorLights.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ExteriorLights.h" - -int -ExteriorLights_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 256)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ExteriorLights_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ExteriorLights_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ExteriorLights_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ExteriorLights_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ExteriorLights_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ExteriorLights_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ExteriorLights_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ExteriorLights_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ExteriorLights_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ExteriorLights_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 256 } /* (0..256) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { - "ExteriorLights", - "ExteriorLights", - ExteriorLights_free, - ExteriorLights_print, - ExteriorLights_constraint, - ExteriorLights_decode_ber, - ExteriorLights_encode_der, - ExteriorLights_decode_xer, - ExteriorLights_encode_xer, - ExteriorLights_decode_uper, - ExteriorLights_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ExteriorLights_tags_1, - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - asn_DEF_ExteriorLights_tags_1, /* Same as above */ - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - &asn_PER_type_ExteriorLights_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/FullPositionVector.c b/src/tmx/Asn_J2735/src/r41/FullPositionVector.c deleted file mode 100644 index 09a51566c..000000000 --- a/src/tmx/Asn_J2735/src/r41/FullPositionVector.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "FullPositionVector.h" - -static asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { - { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "utcTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, - { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Elevation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "elevation" - }, - { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "heading" - }, - { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, - { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posAccuracy" - }, - { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timeConfidence" - }, - { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posConfidence" - }, - { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedConfidence" - }, -}; -static int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; -static ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { - sizeof(struct FullPositionVector), - offsetof(struct FullPositionVector, _asn_ctx), - asn_MAP_FullPositionVector_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_FullPositionVector_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 9, /* Start extensions */ - 11 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { - "FullPositionVector", - "FullPositionVector", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_FullPositionVector_tags_1, - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - asn_DEF_FullPositionVector_tags_1, /* Same as above */ - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_FullPositionVector_1, - 10, /* Elements count */ - &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c b/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c deleted file mode 100644 index 99c4301f1..000000000 --- a/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "FurtherInfoID.h" - -int -FurtherInfoID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -FurtherInfoID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -FurtherInfoID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -FurtherInfoID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -FurtherInfoID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -FurtherInfoID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -FurtherInfoID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -FurtherInfoID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -FurtherInfoID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -FurtherInfoID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - FurtherInfoID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { - "FurtherInfoID", - "FurtherInfoID", - FurtherInfoID_free, - FurtherInfoID_print, - FurtherInfoID_constraint, - FurtherInfoID_decode_ber, - FurtherInfoID_encode_der, - FurtherInfoID_decode_xer, - FurtherInfoID_encode_xer, - FurtherInfoID_decode_uper, - FurtherInfoID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_FurtherInfoID_tags_1, - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - asn_DEF_FurtherInfoID_tags_1, /* Same as above */ - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - &asn_PER_type_FurtherInfoID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/GPSstatus.c b/src/tmx/Asn_J2735/src/r41/GPSstatus.c deleted file mode 100644 index f72e8b695..000000000 --- a/src/tmx/Asn_J2735/src/r41/GPSstatus.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "GPSstatus.h" - -int -GPSstatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -GPSstatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -GPSstatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - GPSstatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -GPSstatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -GPSstatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -GPSstatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -GPSstatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -GPSstatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -GPSstatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -GPSstatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - GPSstatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_GPSstatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GPSstatus = { - "GPSstatus", - "GPSstatus", - GPSstatus_free, - GPSstatus_print, - GPSstatus_constraint, - GPSstatus_decode_ber, - GPSstatus_encode_der, - GPSstatus_decode_xer, - GPSstatus_encode_xer, - GPSstatus_decode_uper, - GPSstatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_GPSstatus_tags_1, - sizeof(asn_DEF_GPSstatus_tags_1) - /sizeof(asn_DEF_GPSstatus_tags_1[0]), /* 1 */ - asn_DEF_GPSstatus_tags_1, /* Same as above */ - sizeof(asn_DEF_GPSstatus_tags_1) - /sizeof(asn_DEF_GPSstatus_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/GenericLane.c b/src/tmx/Asn_J2735/src/r41/GenericLane.c deleted file mode 100644 index 91857829c..000000000 --- a/src/tmx/Asn_J2735/src/r41/GenericLane.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "GenericLane.h" - -static asn_TYPE_member_t asn_MBR_GenericLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneID" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "ingressApproach" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "egressApproach" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneAttributes" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maneuvers" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeList2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nodeList" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectsToList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "connectsTo" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OverlayLaneList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "overlays" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalGenericLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; -static ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { - sizeof(struct GenericLane), - offsetof(struct GenericLane, _asn_ctx), - asn_MAP_GenericLane_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_GenericLane_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 9, /* Start extensions */ - 11 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericLane = { - "GenericLane", - "GenericLane", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_GenericLane_tags_1, - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - asn_DEF_GenericLane_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_GenericLane_1, - 10, /* Elements count */ - &asn_SPC_GenericLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/GenericSignage.c b/src/tmx/Asn_J2735/src/r41/GenericSignage.c deleted file mode 100644 index e6100577b..000000000 --- a/src/tmx/Asn_J2735/src/r41/GenericSignage.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "GenericSignage.h" - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_type_item_gs_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_gs_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct item_gs, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct item_gs, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_text_constraint_3, - &asn_PER_memb_text_constr_5, - 0, - "text" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_item_gs_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_gs_specs_3 = { - sizeof(struct item_gs), - offsetof(struct item_gs, _asn_ctx), - offsetof(struct item_gs, present), - sizeof(((struct item_gs *)0)->present), - asn_MAP_item_gs_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_gs_3 = { - "item-gs", - "item-gs", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_item_gs_constr_3, - asn_MBR_item_gs_3, - 2, /* Elements count */ - &asn_SPC_item_gs_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item_gs), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_gs_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "item-gs" - }, -}; -static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-gs */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct GenericSignage__Member), - offsetof(struct GenericSignage__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { - sizeof(struct GenericSignage), - offsetof(struct GenericSignage, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericSignage = { - "GenericSignage", - "GenericSignage", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_GenericSignage_tags_1, - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - asn_DEF_GenericSignage_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - &asn_PER_type_GenericSignage_constr_1, - asn_MBR_GenericSignage_1, - 1, /* Single element */ - &asn_SPC_GenericSignage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Heading.c b/src/tmx/Asn_J2735/src/r41/Heading.c deleted file mode 100644 index 37d108eb8..000000000 --- a/src/tmx/Asn_J2735/src/r41/Heading.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Heading.h" - -int -Heading_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Heading_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Heading_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Heading_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Heading_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Heading_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Heading_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Heading_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Heading_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Heading_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Heading_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Heading_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Heading_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Heading_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Heading_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Heading_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Heading_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Heading_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Heading_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Heading = { - "Heading", - "Heading", - Heading_free, - Heading_print, - Heading_constraint, - Heading_decode_ber, - Heading_encode_der, - Heading_decode_xer, - Heading_encode_xer, - Heading_decode_uper, - Heading_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Heading_tags_1, - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - asn_DEF_Heading_tags_1, /* Same as above */ - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - &asn_PER_type_Heading_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c b/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c deleted file mode 100644 index 92d2bdb51..000000000 --- a/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "HeadingConfidence.h" - -int -HeadingConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -HeadingConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -HeadingConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -HeadingConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -HeadingConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -HeadingConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -HeadingConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -HeadingConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -HeadingConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -HeadingConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - HeadingConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec45deg" }, - { 2, 9, "prec10deg" }, - { 3, 9, "prec05deg" }, - { 4, 9, "prec01deg" }, - { 5, 10, "prec0-1deg" }, - { 6, 11, "prec0-05deg" }, - { 7, 11, "prec0-01deg" } -}; -static unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { - 7, /* prec0-01deg(7) */ - 6, /* prec0-05deg(6) */ - 5, /* prec0-1deg(5) */ - 4, /* prec01deg(4) */ - 3, /* prec05deg(3) */ - 2, /* prec10deg(2) */ - 1, /* prec45deg(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { - asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { - "HeadingConfidence", - "HeadingConfidence", - HeadingConfidence_free, - HeadingConfidence_print, - HeadingConfidence_constraint, - HeadingConfidence_decode_ber, - HeadingConfidence_encode_der, - HeadingConfidence_decode_xer, - HeadingConfidence_encode_xer, - HeadingConfidence_decode_uper, - HeadingConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_HeadingConfidence_tags_1, - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - asn_DEF_HeadingConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_HeadingConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/HeadingSlice.c b/src/tmx/Asn_J2735/src/r41/HeadingSlice.c deleted file mode 100644 index 8bddc4afb..000000000 --- a/src/tmx/Asn_J2735/src/r41/HeadingSlice.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "HeadingSlice.h" - -int -HeadingSlice_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -HeadingSlice_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -HeadingSlice_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -HeadingSlice_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -HeadingSlice_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -HeadingSlice_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -HeadingSlice_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -HeadingSlice_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -HeadingSlice_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -HeadingSlice_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - HeadingSlice_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { - "HeadingSlice", - "HeadingSlice", - HeadingSlice_free, - HeadingSlice_print, - HeadingSlice_constraint, - HeadingSlice_decode_ber, - HeadingSlice_encode_der, - HeadingSlice_decode_xer, - HeadingSlice_encode_xer, - HeadingSlice_decode_uper, - HeadingSlice_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_HeadingSlice_tags_1, - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - asn_DEF_HeadingSlice_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - &asn_PER_type_HeadingSlice_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Holiday.c b/src/tmx/Asn_J2735/src/r41/Holiday.c deleted file mode 100644 index 50df1f8b5..000000000 --- a/src/tmx/Asn_J2735/src/r41/Holiday.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Holiday.h" - -int -Holiday_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -Holiday_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -Holiday_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Holiday_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Holiday_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Holiday_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Holiday_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Holiday_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Holiday_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Holiday_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Holiday_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Holiday_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Holiday_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { - { 0, 7, "weekday" }, - { 1, 7, "holiday" } -}; -static unsigned int asn_MAP_Holiday_enum2value_1[] = { - 1, /* holiday(1) */ - 0 /* weekday(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { - asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Holiday = { - "Holiday", - "Holiday", - Holiday_free, - Holiday_print, - Holiday_constraint, - Holiday_decode_ber, - Holiday_encode_der, - Holiday_decode_xer, - Holiday_encode_xer, - Holiday_decode_uper, - Holiday_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Holiday_tags_1, - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - asn_DEF_Holiday_tags_1, /* Same as above */ - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - &asn_PER_type_Holiday_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Holiday_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Hour.c b/src/tmx/Asn_J2735/src/r41/Hour.c deleted file mode 100644 index cc9dd2e21..000000000 --- a/src/tmx/Asn_J2735/src/r41/Hour.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Hour.h" - -int -Hour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Hour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Hour_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Hour_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Hour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Hour_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Hour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Hour_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Hour_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Hour_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Hour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Hour_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Hour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Hour_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Hour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Hour_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Hour_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Hour_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Hour_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Hour = { - "Hour", - "Hour", - Hour_free, - Hour_print, - Hour_constraint, - Hour_decode_ber, - Hour_encode_der, - Hour_decode_xer, - Hour_encode_xer, - Hour_decode_uper, - Hour_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Hour_tags_1, - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - asn_DEF_Hour_tags_1, /* Same as above */ - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - &asn_PER_type_Hour_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c b/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c deleted file mode 100644 index f0d7631d7..000000000 --- a/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "HumanPropelledType.h" - -int -HumanPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -HumanPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -HumanPropelledType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -HumanPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -HumanPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -HumanPropelledType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -HumanPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -HumanPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -HumanPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -HumanPropelledType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - HumanPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 6, "onFoot" }, - { 3, 10, "skateboard" }, - { 4, 17, "pushOrKickScooter" }, - { 5, 10, "wheelchair" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { - 2, /* onFoot(2) */ - 1, /* otherTypes(1) */ - 4, /* pushOrKickScooter(4) */ - 3, /* skateboard(3) */ - 0, /* unavailable(0) */ - 5 /* wheelchair(5) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { - asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { - "HumanPropelledType", - "HumanPropelledType", - HumanPropelledType_free, - HumanPropelledType_print, - HumanPropelledType_constraint, - HumanPropelledType_decode_ber, - HumanPropelledType_encode_der, - HumanPropelledType_decode_xer, - HumanPropelledType_encode_xer, - HumanPropelledType_decode_uper, - HumanPropelledType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_HumanPropelledType_tags_1, - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - asn_DEF_HumanPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - &asn_PER_type_HumanPropelledType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IA5String.c b/src/tmx/Asn_J2735/src/r41/IA5String.c deleted file mode 100644 index 02ecd3ee7..000000000 --- a/src/tmx/Asn_J2735/src/r41/IA5String.c +++ /dev/null @@ -1,77 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * IA5String basic type description. - */ -static ber_tlv_tag_t asn_DEF_IA5String_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -static asn_per_constraints_t asn_DEF_IA5String_constraints = { - { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ - 0, 0 -}; -asn_TYPE_descriptor_t asn_DEF_IA5String = { - "IA5String", - "IA5String", - OCTET_STRING_free, - OCTET_STRING_print_utf8, /* ASCII subset */ - IA5String_constraint, /* Constraint on the alphabet */ - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_utf8, - OCTET_STRING_encode_xer_utf8, - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]) - 1, - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]), - &asn_DEF_IA5String_constraints, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -int -IA5String_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - - if(st && st->buf) { - uint8_t *buf = st->buf; - uint8_t *end = buf + st->size; - /* - * IA5String is generally equivalent to 7bit ASCII. - * ISO/ITU-T T.50, 1963. - */ - for(; buf < end; buf++) { - if(*buf > 0x7F) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value byte %ld out of range: " - "%d > 127 (%s:%d)", - td->name, - (long)((buf - st->buf) + 1), - *buf, - __FILE__, __LINE__); - return -1; - } - } - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - diff --git a/src/tmx/Asn_J2735/src/r41/INTEGER.c b/src/tmx/Asn_J2735/src/r41/INTEGER.c deleted file mode 100644 index 38ddb60bd..000000000 --- a/src/tmx/Asn_J2735/src/r41/INTEGER.c +++ /dev/null @@ -1,1023 +0,0 @@ -/*- - * Copyright (c) 2003-2014 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* Encoder and decoder of a primitive type */ -#include - -/* - * INTEGER basic type description. - */ -static ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_INTEGER = { - "INTEGER", - "INTEGER", - ASN__PRIMITIVE_TYPE_free, - INTEGER_print, - asn_generic_no_constraint, - ber_decode_primitive, - INTEGER_encode_der, - INTEGER_decode_xer, - INTEGER_encode_xer, -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, -#else - INTEGER_decode_uper, /* Unaligned PER decoder */ - INTEGER_encode_uper, /* Unaligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - 0, /* Use generic outmost tag fetcher */ - asn_DEF_INTEGER_tags, - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - asn_DEF_INTEGER_tags, /* Same as above */ - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Encode INTEGER type using DER. - */ -asn_enc_rval_t -INTEGER_encode_der(asn_TYPE_descriptor_t *td, void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - INTEGER_t *st = (INTEGER_t *)sptr; - - ASN_DEBUG("%s %s as INTEGER (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - /* - * Canonicalize integer in the buffer. - * (Remove too long sign extension, remove some first 0x00 bytes) - */ - if(st->buf) { - uint8_t *buf = st->buf; - uint8_t *end1 = buf + st->size - 1; - int shift; - - /* Compute the number of superfluous leading bytes */ - for(; buf < end1; buf++) { - /* - * If the contents octets of an integer value encoding - * consist of more than one octet, then the bits of the - * first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - switch(*buf) { - case 0x00: if((buf[1] & 0x80) == 0) - continue; - break; - case 0xff: if((buf[1] & 0x80)) - continue; - break; - } - break; - } - - /* Remove leading superfluous bytes from the integer */ - shift = buf - st->buf; - if(shift) { - uint8_t *nb = st->buf; - uint8_t *end; - - st->size -= shift; /* New size, minus bad bytes */ - end = nb + st->size; - - for(; nb < end; nb++, buf++) - *nb = *buf; - } - - } /* if(1) */ - - return der_encode_primitive(td, sptr, tag_mode, tag, cb, app_key); -} - -static const asn_INTEGER_enum_map_t *INTEGER_map_enum2value(asn_INTEGER_specifics_t *specs, const char *lstart, const char *lstop); - -/* - * INTEGER specific human-readable output. - */ -static ssize_t -INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; /* Enough for 64-bit integer */ - uint8_t *buf = st->buf; - uint8_t *buf_end = st->buf + st->size; - signed long value; - ssize_t wrote = 0; - char *p; - int ret; - - if(specs && specs->field_unsigned) - ret = asn_INTEGER2ulong(st, (unsigned long *)&value); - else - ret = asn_INTEGER2long(st, &value); - - /* Simple case: the integer size is small */ - if(ret == 0) { - const asn_INTEGER_enum_map_t *el; - size_t scrsize; - char *scr; - - el = (value >= 0 || !specs || !specs->field_unsigned) - ? INTEGER_map_value2enum(specs, value) : 0; - if(el) { - scrsize = el->enum_len + 32; - scr = (char *)alloca(scrsize); - if(plainOrXER == 0) - ret = snprintf(scr, scrsize, - "%ld (%s)", value, el->enum_name); - else - ret = snprintf(scr, scrsize, - "<%s/>", el->enum_name); - } else if(plainOrXER && specs && specs->strict_enumeration) { - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } else { - scrsize = sizeof(scratch); - scr = scratch; - ret = snprintf(scr, scrsize, - (specs && specs->field_unsigned) - ?"%lu":"%ld", value); - } - assert(ret > 0 && (size_t)ret < scrsize); - return (cb(scr, ret, app_key) < 0) ? -1 : ret; - } else if(plainOrXER && specs && specs->strict_enumeration) { - /* - * Here and earlier, we cannot encode the ENUMERATED values - * if there is no corresponding identifier. - */ - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } - - /* Output in the long xx:yy:zz... format */ - /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ - for(p = scratch; buf < buf_end; buf++) { - static const char *h2c = "0123456789ABCDEF"; - if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { - /* Flush buffer */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - wrote += p - scratch; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x3a; /* ":" */ - } - if(p != scratch) - p--; /* Remove the last ":" */ - - wrote += p - scratch; - return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; -} - -/* - * INTEGER specific human-readable output. - */ -int -INTEGER_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - ssize_t ret; - - (void)td; - (void)ilevel; - - if(!st || !st->buf) - ret = cb("", 8, app_key); - else - ret = INTEGER__dump(td, st, cb, app_key, 0); - - return (ret < 0) ? -1 : 0; -} - -struct e2v_key { - const char *start; - const char *stop; - asn_INTEGER_enum_map_t *vemap; - unsigned int *evmap; -}; -static int -INTEGER__compar_enum2value(const void *kp, const void *am) { - const struct e2v_key *key = (const struct e2v_key *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - const char *ptr, *end, *name; - - /* Remap the element (sort by different criterion) */ - el = key->vemap + key->evmap[el - key->vemap]; - - /* Compare strings */ - for(ptr = key->start, end = key->stop, name = el->enum_name; - ptr < end; ptr++, name++) { - if(*ptr != *name) - return *(const unsigned char *)ptr - - *(const unsigned char *)name; - } - return name[0] ? -1 : 0; -} - -static const asn_INTEGER_enum_map_t * -INTEGER_map_enum2value(asn_INTEGER_specifics_t *specs, const char *lstart, const char *lstop) { - asn_INTEGER_enum_map_t *el_found; - int count = specs ? specs->map_count : 0; - struct e2v_key key; - const char *lp; - - if(!count) return NULL; - - /* Guaranteed: assert(lstart < lstop); */ - /* Figure out the tag name */ - for(lstart++, lp = lstart; lp < lstop; lp++) { - switch(*lp) { - case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ - case 0x2f: /* '/' */ case 0x3e: /* '>' */ - break; - default: - continue; - } - break; - } - if(lp == lstop) return NULL; /* No tag found */ - lstop = lp; - - key.start = lstart; - key.stop = lstop; - key.vemap = specs->value2enum; - key.evmap = specs->enum2value; - el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, - specs->value2enum, count, sizeof(specs->value2enum[0]), - INTEGER__compar_enum2value); - if(el_found) { - /* Remap enum2value into value2enum */ - el_found = key.vemap + key.evmap[el_found - key.vemap]; - } - return el_found; -} - -static int -INTEGER__compar_value2enum(const void *kp, const void *am) { - long a = *(const long *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - long b = el->nat_value; - if(a < b) return -1; - else if(a == b) return 0; - else return 1; -} - -const asn_INTEGER_enum_map_t * -INTEGER_map_value2enum(asn_INTEGER_specifics_t *specs, long value) { - int count = specs ? specs->map_count : 0; - if(!count) return 0; - return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, - count, sizeof(specs->value2enum[0]), - INTEGER__compar_value2enum); -} - -static int -INTEGER_st_prealloc(INTEGER_t *st, int min_size) { - void *p = MALLOC(min_size + 1); - if(p) { - void *b = st->buf; - st->size = 0; - st->buf = p; - FREEMEM(b); - return 0; - } else { - return -1; - } -} - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) { - INTEGER_t *st = (INTEGER_t *)sptr; - long dec_value; - long hex_value = 0; - const char *lp; - const char *lstart = (const char *)chunk_buf; - const char *lstop = lstart + chunk_size; - enum { - ST_LEADSPACE, - ST_SKIPSPHEX, - ST_WAITDIGITS, - ST_DIGITS, - ST_DIGITS_TRAILSPACE, - ST_HEXDIGIT1, - ST_HEXDIGIT2, - ST_HEXDIGITS_TRAILSPACE, - ST_HEXCOLON, - ST_END_ENUM, - ST_UNEXPECTED - } state = ST_LEADSPACE; - const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ - const char *dec_value_end = 0; - - if(chunk_size) - ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", - (long)chunk_size, *lstart, lstop[-1]); - - if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) - return XPBD_SYSTEM_FAILURE; - - /* - * We may have received a tag here. It will be processed inline. - * Use strtoul()-like code and serialize the result. - */ - for(lp = lstart; lp < lstop; lp++) { - int lv = *lp; - switch(lv) { - case 0x09: case 0x0a: case 0x0d: case 0x20: - switch(state) { - case ST_LEADSPACE: - case ST_DIGITS_TRAILSPACE: - case ST_HEXDIGITS_TRAILSPACE: - case ST_SKIPSPHEX: - continue; - case ST_DIGITS: - dec_value_end = lp; - state = ST_DIGITS_TRAILSPACE; - continue; - case ST_HEXCOLON: - state = ST_HEXDIGITS_TRAILSPACE; - continue; - default: - break; - } - break; - case 0x2d: /* '-' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x2b: /* '+' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: - switch(state) { - case ST_DIGITS: continue; - case ST_SKIPSPHEX: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = (lv - 0x30) << 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += (lv - 0x30); - state = ST_HEXCOLON; - st->buf[st->size++] = (uint8_t)hex_value; - continue; - case ST_HEXCOLON: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - dec_value = 0; - dec_value_start = lp; - /* FALL THROUGH */ - case ST_WAITDIGITS: - state = ST_DIGITS; - continue; - default: - break; - } - break; - case 0x3c: /* '<', start of XML encoded enumeration */ - if(state == ST_LEADSPACE) { - const asn_INTEGER_enum_map_t *el; - el = INTEGER_map_enum2value( - (asn_INTEGER_specifics_t *) - td->specifics, lstart, lstop); - if(el) { - ASN_DEBUG("Found \"%s\" => %ld", - el->enum_name, el->nat_value); - dec_value = el->nat_value; - state = ST_END_ENUM; - lp = lstop - 1; - continue; - } - ASN_DEBUG("Unknown identifier for INTEGER"); - } - return XPBD_BROKEN_ENCODING; - case 0x3a: /* ':' */ - if(state == ST_HEXCOLON) { - /* This colon is expected */ - state = ST_HEXDIGIT1; - continue; - } else if(state == ST_DIGITS) { - /* The colon here means that we have - * decoded the first two hexadecimal - * places as a decimal value. - * Switch decoding mode. */ - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - } else { - ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); - break; - } - /* [A-Fa-f] */ - case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: - case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: - switch(state) { - case ST_SKIPSPHEX: - case ST_LEADSPACE: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - hex_value <<= 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - st->buf[st->size++] = (uint8_t)hex_value; - state = ST_HEXCOLON; - continue; - case ST_DIGITS: - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - default: - break; - } - break; - } - - /* Found extra non-numeric stuff */ - ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", - lv, (long)(lp - lstart)); - state = ST_UNEXPECTED; - break; - } - - switch(state) { - case ST_END_ENUM: - /* Got a complete and valid enumeration encoded as a tag. */ - break; - case ST_DIGITS: - dec_value_end = lstop; - /* FALL THROUGH */ - case ST_DIGITS_TRAILSPACE: - /* The last symbol encountered was a digit. */ - switch(asn_strtol_lim(dec_value_start, &dec_value_end, &dec_value)) { - case ASN_STRTOL_OK: - break; - case ASN_STRTOL_ERROR_RANGE: - return XPBD_DECODER_LIMIT; - case ASN_STRTOL_ERROR_INVAL: - case ASN_STRTOL_EXPECT_MORE: - case ASN_STRTOL_EXTRA_DATA: - return XPBD_BROKEN_ENCODING; - } - break; - case ST_HEXCOLON: - case ST_HEXDIGITS_TRAILSPACE: - st->buf[st->size] = 0; /* Just in case termination */ - return XPBD_BODY_CONSUMED; - case ST_HEXDIGIT1: - case ST_HEXDIGIT2: - case ST_SKIPSPHEX: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - /* Content not found */ - return XPBD_NOT_BODY_IGNORE; - case ST_WAITDIGITS: - case ST_UNEXPECTED: - ASN_DEBUG("INTEGER: No useful digits (state %d)", state); - return XPBD_BROKEN_ENCODING; /* No digits */ - } - - /* - * Convert the result of parsing of enumeration or a straight - * decimal value into a BER representation. - */ - if(asn_long2INTEGER(st, dec_value)) - return XPBD_SYSTEM_FAILURE; - - return XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -INTEGER_decode_xer(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(INTEGER_t), opt_mname, - buf_ptr, size, INTEGER__xer_body_decode); -} - -asn_enc_rval_t -INTEGER_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t er; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) - _ASN_ENCODE_FAILED; - - er.encoded = INTEGER__dump(td, st, cb, app_key, 1); - if(er.encoded < 0) _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(er); -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -INTEGER_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - INTEGER_t *st = (INTEGER_t *)*sptr; - asn_per_constraint_t *ct; - int repeat; - - (void)opt_codec_ctx; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) _ASN_DECODE_FAILED; - } - - if(!constraints) constraints = td->per_constraints; - ct = constraints ? &constraints->value : 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) _ASN_DECODE_STARVED; - if(inext) ct = 0; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - if(ct) { - if(ct->flags & APC_SEMI_CONSTRAINED) { - st->buf = (uint8_t *)CALLOC(1, 2); - if(!st->buf) _ASN_DECODE_FAILED; - st->size = 1; - } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { - size_t size = (ct->range_bits + 7) >> 3; - st->buf = (uint8_t *)MALLOC(1 + size + 1); - if(!st->buf) _ASN_DECODE_FAILED; - st->size = size; - } - } - - /* X.691-2008/11, #13.2.2, constrained whole number */ - if(ct && ct->flags != APC_UNCONSTRAINED) { - /* #11.5.6 */ - ASN_DEBUG("Integer with range %d bits", ct->range_bits); - if(ct->range_bits >= 0) { - if((size_t)ct->range_bits > 8 * sizeof(unsigned long)) - _ASN_DECODE_FAILED; - - if(specs && specs->field_unsigned) { - unsigned long uvalue; - if(uper_get_constrained_whole_number(pd, - &uvalue, ct->range_bits)) - _ASN_DECODE_STARVED; - ASN_DEBUG("Got value %lu + low %ld", - uvalue, ct->lower_bound); - uvalue += ct->lower_bound; - if(asn_ulong2INTEGER(st, uvalue)) - _ASN_DECODE_FAILED; - } else { - unsigned long svalue; - if(uper_get_constrained_whole_number(pd, - &svalue, ct->range_bits)) - _ASN_DECODE_STARVED; - ASN_DEBUG("Got value %ld + low %ld", - svalue, ct->lower_bound); - svalue += ct->lower_bound; - if(asn_long2INTEGER(st, svalue)) - _ASN_DECODE_FAILED; - } - return rval; - } - } else { - ASN_DEBUG("Decoding unconstrained integer %s", td->name); - } - - /* X.691, #12.2.3, #12.2.4 */ - do { - ssize_t len; - void *p; - int ret; - - /* Get the PER length */ - len = uper_get_length(pd, -1, &repeat); - if(len < 0) _ASN_DECODE_STARVED; - - p = REALLOC(st->buf, st->size + len + 1); - if(!p) _ASN_DECODE_FAILED; - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); - if(ret < 0) _ASN_DECODE_STARVED; - st->size += len; - } while(repeat); - st->buf[st->size] = 0; /* JIC */ - - /* #12.2.3 */ - if(ct && ct->lower_bound) { - /* - * TODO: replace by in-place arithmetics. - */ - long value; - if(asn_INTEGER2long(st, &value)) - _ASN_DECODE_FAILED; - if(asn_long2INTEGER(st, value + ct->lower_bound)) - _ASN_DECODE_FAILED; - } - - return rval; -} - -asn_enc_rval_t -INTEGER_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er; - INTEGER_t *st = (INTEGER_t *)sptr; - const uint8_t *buf; - const uint8_t *end; - asn_per_constraint_t *ct; - long value = 0; - - if(!st || st->size == 0) _ASN_ENCODE_FAILED; - - if(!constraints) constraints = td->per_constraints; - ct = constraints ? &constraints->value : 0; - - er.encoded = 0; - - if(ct) { - int inext = 0; - if(specs && specs->field_unsigned) { - unsigned long uval; - if(asn_INTEGER2ulong(st, &uval)) - _ASN_ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(uval < (unsigned long)ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(uval < (unsigned long)ct->lower_bound - || uval > (unsigned long)ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%d) lb %lu ub %lu %s", - uval, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - value = uval; - } else { - if(asn_INTEGER2long(st, &value)) - _ASN_ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value < ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value < ct->lower_bound - || value > ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %ld (%02x/%d) lb %ld ub %ld %s", - value, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - _ASN_ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - _ASN_ENCODE_FAILED; - } - } - - - /* X.691-11/2008, #13.2.2, test if constrained whole number */ - if(ct && ct->range_bits >= 0) { - /* #11.5.6 -> #11.3 */ - ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", - value, value - ct->lower_bound, ct->range_bits); - unsigned long v = value - ct->lower_bound; - if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) - _ASN_ENCODE_FAILED; - _ASN_ENCODED_OK(er); - } - - if(ct && ct->lower_bound) { - ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); - /* TODO: adjust lower bound */ - _ASN_ENCODE_FAILED; - } - - for(buf = st->buf, end = st->buf + st->size; buf < end;) { - ssize_t mayEncode = uper_put_length(po, end - buf); - if(mayEncode < 0) - _ASN_ENCODE_FAILED; - if(per_put_many_bits(po, buf, 8 * mayEncode)) - _ASN_ENCODE_FAILED; - buf += mayEncode; - } - - _ASN_ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -int -asn_INTEGER2long(const INTEGER_t *iptr, long *lptr) { - uint8_t *b, *end; - size_t size; - long l; - - /* Sanity checking */ - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - /* Cache the begin/end of the buffer */ - b = iptr->buf; /* Start of the INTEGER buffer */ - size = iptr->size; - end = b + size; /* Where to stop */ - - if(size > sizeof(long)) { - uint8_t *end1 = end - 1; - /* - * Slightly more advanced processing, - * able to >sizeof(long) bytes, - * when the actual value is small - * (0x0000000000abcdef would yield a fine 0x00abcdef) - */ - /* Skip out the insignificant leading bytes */ - for(; b < end1; b++) { - switch(*b) { - case 0x00: if((b[1] & 0x80) == 0) continue; break; - case 0xff: if((b[1] & 0x80) != 0) continue; break; - } - break; - } - - size = end - b; - if(size > sizeof(long)) { - /* Still cannot fit the long */ - errno = ERANGE; - return -1; - } - } - - /* Shortcut processing of a corner case */ - if(end == b) { - *lptr = 0; - return 0; - } - - /* Perform the sign initialization */ - /* Actually l = -(*b >> 7); gains nothing, yet unreadable! */ - if((*b >> 7)) l = -1; else l = 0; - - /* Conversion engine */ - for(; b < end; b++) - l = (l << 8) | *b; - - *lptr = l; - return 0; -} - -int -asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *lptr) { - uint8_t *b, *end; - unsigned long l; - size_t size; - - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - b = iptr->buf; - size = iptr->size; - end = b + size; - - /* If all extra leading bytes are zeroes, ignore them */ - for(; size > sizeof(unsigned long); b++, size--) { - if(*b) { - /* Value won't fit unsigned long */ - errno = ERANGE; - return -1; - } - } - - /* Conversion engine */ - for(l = 0; b < end; b++) - l = (l << 8) | *b; - - *lptr = l; - return 0; -} - -int -asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { - uint8_t *buf; - uint8_t *end; - uint8_t *b; - int shr; - - if(value <= LONG_MAX) - return asn_long2INTEGER(st, value); - - buf = (uint8_t *)MALLOC(1 + sizeof(value)); - if(!buf) return -1; - - end = buf + (sizeof(value) + 1); - buf[0] = 0; - for(b = buf + 1, shr = (sizeof(long)-1)*8; b < end; shr -= 8, b++) - *b = (uint8_t)(value >> shr); - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = 1 + sizeof(value); - - return 0; -} - -int -asn_long2INTEGER(INTEGER_t *st, long value) { - uint8_t *buf, *bp; - uint8_t *p; - uint8_t *pstart; - uint8_t *pend1; - int littleEndian = 1; /* Run-time detection */ - int add; - - if(!st) { - errno = EINVAL; - return -1; - } - - buf = (uint8_t *)MALLOC(sizeof(value)); - if(!buf) return -1; - - if(*(char *)&littleEndian) { - pstart = (uint8_t *)&value + sizeof(value) - 1; - pend1 = (uint8_t *)&value; - add = -1; - } else { - pstart = (uint8_t *)&value; - pend1 = pstart + sizeof(value) - 1; - add = 1; - } - - /* - * If the contents octet consists of more than one octet, - * then bits of the first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - for(p = pstart; p != pend1; p += add) { - switch(*p) { - case 0x00: if((*(p+add) & 0x80) == 0) - continue; - break; - case 0xff: if((*(p+add) & 0x80)) - continue; - break; - } - break; - } - /* Copy the integer body */ - for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) - *bp++ = *p; - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = bp - buf; - - return 0; -} - -/* - * This function is going to be DEPRECATED soon. - */ -enum asn_strtol_result_e -asn_strtol(const char *str, const char *end, long *lp) { - const char *endp = end; - - switch(asn_strtol_lim(str, &endp, lp)) { - case ASN_STRTOL_ERROR_RANGE: - return ASN_STRTOL_ERROR_RANGE; - case ASN_STRTOL_ERROR_INVAL: - return ASN_STRTOL_ERROR_INVAL; - case ASN_STRTOL_EXPECT_MORE: - return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ - case ASN_STRTOL_OK: - return ASN_STRTOL_OK; - case ASN_STRTOL_EXTRA_DATA: - return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ - } - - return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ -} - -/* - * Parse the number in the given string until the given *end position, - * returning the position after the last parsed character back using the - * same (*end) pointer. - * WARNING: This behavior is different from the standard strtol(3). - */ -enum asn_strtol_result_e -asn_strtol_lim(const char *str, const char **end, long *lp) { - int sign = 1; - long l; - - const long upper_boundary = LONG_MAX / 10; - long last_digit_max = LONG_MAX % 10; - - if(str >= *end) return ASN_STRTOL_ERROR_INVAL; - - switch(*str) { - case '-': - last_digit_max++; - sign = -1; - case '+': - str++; - if(str >= *end) { - *end = str; - return ASN_STRTOL_EXPECT_MORE; - } - } - - for(l = 0; str < (*end); str++) { - switch(*str) { - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: { - int d = *str - '0'; - if(l < upper_boundary) { - l = l * 10 + d; - } else if(l == upper_boundary) { - if(d <= last_digit_max) { - if(sign > 0) { - l = l * 10 + d; - } else { - sign = 1; - l = -l * 10 - d; - } - } else { - *end = str; - return ASN_STRTOL_ERROR_RANGE; - } - } else { - *end = str; - return ASN_STRTOL_ERROR_RANGE; - } - } - continue; - default: - *end = str; - *lp = sign * l; - return ASN_STRTOL_EXTRA_DATA; - } - } - - *end = str; - *lp = sign * l; - return ASN_STRTOL_OK; -} - diff --git a/src/tmx/Asn_J2735/src/r41/ITIScodes.c b/src/tmx/Asn_J2735/src/r41/ITIScodes.c deleted file mode 100644 index 4d587806f..000000000 --- a/src/tmx/Asn_J2735/src/r41/ITIScodes.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ITIScodes.h" - -int -ITIScodes_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65565)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ITIScodes_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ITIScodes_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ITIScodes_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ITIScodes_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ITIScodes_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ITIScodes_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ITIScodes_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ITIScodes_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ITIScodes_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ITIScodes_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ITIScodes_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 17, -1, 0, 65565 } /* (0..65565) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodes = { - "ITIScodes", - "ITIScodes", - ITIScodes_free, - ITIScodes_print, - ITIScodes_constraint, - ITIScodes_decode_ber, - ITIScodes_encode_der, - ITIScodes_decode_xer, - ITIScodes_encode_xer, - ITIScodes_decode_uper, - ITIScodes_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ITIScodes_tags_1, - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - asn_DEF_ITIScodes_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - &asn_PER_type_ITIScodes_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c deleted file mode 100644 index 729aad043..000000000 --- a/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ITIScodesAndText.h" - -static asn_per_constraints_t asn_PER_type_item_itis_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_itis_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct item_itis, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct item_itis, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStext, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "text" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_item_itis_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_itis_specs_3 = { - sizeof(struct item_itis), - offsetof(struct item_itis, _asn_ctx), - offsetof(struct item_itis, present), - sizeof(((struct item_itis *)0)->present), - asn_MAP_item_itis_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_itis_3 = { - "item-itis", - "item-itis", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_item_itis_constr_3, - asn_MBR_item_itis_3, - 2, /* Elements count */ - &asn_SPC_item_itis_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item_itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_itis_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "item-itis" - }, -}; -static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-itis */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ITIScodesAndText__Member), - offsetof(struct ITIScodesAndText__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { - sizeof(struct ITIScodesAndText), - offsetof(struct ITIScodesAndText, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { - "ITIScodesAndText", - "ITIScodesAndText", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ITIScodesAndText_tags_1, - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - &asn_PER_type_ITIScodesAndText_constr_1, - asn_MBR_ITIScodesAndText_1, - 1, /* Single element */ - &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ITIStext.c b/src/tmx/Asn_J2735/src/r41/ITIStext.c deleted file mode 100644 index 53879eb3e..000000000 --- a/src/tmx/Asn_J2735/src/r41/ITIStext.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ITIStext.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -ITIStext_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 500) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -ITIStext_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -ITIStext_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ITIStext_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ITIStext_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ITIStext_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ITIStext_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ITIStext_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ITIStext_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ITIStext_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ITIStext_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ITIStext_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ITIStext_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, - 0, 0 /* No PER character map necessary */ -}; -static ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIStext = { - "ITIStext", - "ITIStext", - ITIStext_free, - ITIStext_print, - ITIStext_constraint, - ITIStext_decode_ber, - ITIStext_encode_der, - ITIStext_decode_xer, - ITIStext_encode_xer, - ITIStext_decode_uper, - ITIStext_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ITIStext_tags_1, - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - asn_DEF_ITIStext_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - &asn_PER_type_ITIStext_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c deleted file mode 100644 index f6ac407ce..000000000 --- a/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c +++ /dev/null @@ -1,289 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IncidentResponseEquipment.h" - -int -IncidentResponseEquipment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -IncidentResponseEquipment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -IncidentResponseEquipment_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -IncidentResponseEquipment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -IncidentResponseEquipment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -IncidentResponseEquipment_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -IncidentResponseEquipment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -IncidentResponseEquipment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -IncidentResponseEquipment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -IncidentResponseEquipment_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { - { 9985, 23, "ground-fire-suppression" }, - { 9986, 22, "heavy-ground-equipment" }, - { 9988, 8, "aircraft" }, - { 9989, 16, "marine-equipment" }, - { 9990, 17, "support-equipment" }, - { 9991, 19, "medical-rescue-unit" }, - { 9993, 5, "other" }, - { 9994, 29, "ground-fire-suppression-other" }, - { 9995, 6, "engine" }, - { 9996, 15, "truck-or-aerial" }, - { 9997, 5, "quint" }, - { 9998, 25, "tanker-pumper-combination" }, - { 10000, 11, "brush-truck" }, - { 10001, 28, "aircraft-rescue-firefighting" }, - { 10004, 28, "heavy-ground-equipment-other" }, - { 10005, 13, "dozer-or-plow" }, - { 10006, 7, "tractor" }, - { 10008, 16, "tanker-or-tender" }, - { 10024, 14, "aircraft-other" }, - { 10025, 26, "aircraft-fixed-wing-tanker" }, - { 10026, 10, "helitanker" }, - { 10027, 10, "helicopter" }, - { 10034, 22, "marine-equipment-other" }, - { 10035, 19, "fire-boat-with-pump" }, - { 10036, 12, "boat-no-pump" }, - { 10044, 23, "support-apparatus-other" }, - { 10045, 27, "breathing-apparatus-support" }, - { 10046, 18, "light-and-air-unit" }, - { 10054, 25, "medical-rescue-unit-other" }, - { 10055, 11, "rescue-unit" }, - { 10056, 24, "urban-search-rescue-unit" }, - { 10057, 17, "high-angle-rescue" }, - { 10058, 17, "crash-fire-rescue" }, - { 10059, 8, "bLS-unit" }, - { 10060, 8, "aLS-unit" }, - { 10075, 19, "mobile-command-post" }, - { 10076, 17, "chief-officer-car" }, - { 10077, 11, "hAZMAT-unit" }, - { 10078, 16, "type-i-hand-crew" }, - { 10079, 17, "type-ii-hand-crew" }, - { 10083, 23, "privately-owned-vehicle" }, - { 10084, 24, "other-apparatus-resource" }, - { 10085, 9, "ambulance" }, - { 10086, 14, "bomb-squad-van" }, - { 10087, 17, "combine-harvester" }, - { 10088, 20, "construction-vehicle" }, - { 10089, 12, "farm-tractor" }, - { 10090, 22, "grass-cutting-machines" }, - { 10091, 22, "hAZMAT-containment-tow" }, - { 10092, 9, "heavy-tow" }, - { 10093, 22, "hedge-cutting-machines" }, - { 10094, 9, "light-tow" }, - { 10095, 12, "mobile-crane" }, - { 10096, 25, "refuse-collection-vehicle" }, - { 10097, 19, "resurfacing-vehicle" }, - { 10098, 12, "road-sweeper" }, - { 10099, 32, "roadside-litter-collection-crews" }, - { 10100, 15, "salvage-vehicle" }, - { 10101, 10, "sand-truck" }, - { 10102, 8, "snowplow" }, - { 10103, 12, "steam-roller" }, - { 10104, 13, "swat-team-van" }, - { 10105, 20, "track-laying-vehicle" }, - { 10106, 15, "unknown-vehicle" }, - { 10107, 20, "white-lining-vehicle" }, - { 10108, 10, "dump-truck" }, - { 10109, 18, "supervisor-vehicle" }, - { 10110, 11, "snow-blower" }, - { 10111, 18, "rotary-snow-blower" }, - { 10112, 11, "road-grader" }, - { 10113, 11, "steam-truck" }, - { 10114, 11, "flatbed-tow" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { - 34, /* aLS-unit(10060) */ - 2, /* aircraft(9988) */ - 19, /* aircraft-fixed-wing-tanker(10025) */ - 18, /* aircraft-other(10024) */ - 13, /* aircraft-rescue-firefighting(10001) */ - 42, /* ambulance(10085) */ - 33, /* bLS-unit(10059) */ - 24, /* boat-no-pump(10036) */ - 43, /* bomb-squad-van(10086) */ - 26, /* breathing-apparatus-support(10045) */ - 12, /* brush-truck(10000) */ - 36, /* chief-officer-car(10076) */ - 44, /* combine-harvester(10087) */ - 45, /* construction-vehicle(10088) */ - 32, /* crash-fire-rescue(10058) */ - 15, /* dozer-or-plow(10005) */ - 65, /* dump-truck(10108) */ - 8, /* engine(9995) */ - 46, /* farm-tractor(10089) */ - 23, /* fire-boat-with-pump(10035) */ - 71, /* flatbed-tow(10114) */ - 47, /* grass-cutting-machines(10090) */ - 0, /* ground-fire-suppression(9985) */ - 7, /* ground-fire-suppression-other(9994) */ - 48, /* hAZMAT-containment-tow(10091) */ - 37, /* hAZMAT-unit(10077) */ - 1, /* heavy-ground-equipment(9986) */ - 14, /* heavy-ground-equipment-other(10004) */ - 49, /* heavy-tow(10092) */ - 50, /* hedge-cutting-machines(10093) */ - 21, /* helicopter(10027) */ - 20, /* helitanker(10026) */ - 31, /* high-angle-rescue(10057) */ - 27, /* light-and-air-unit(10046) */ - 51, /* light-tow(10094) */ - 3, /* marine-equipment(9989) */ - 22, /* marine-equipment-other(10034) */ - 5, /* medical-rescue-unit(9991) */ - 28, /* medical-rescue-unit-other(10054) */ - 35, /* mobile-command-post(10075) */ - 52, /* mobile-crane(10095) */ - 6, /* other(9993) */ - 41, /* other-apparatus-resource(10084) */ - 40, /* privately-owned-vehicle(10083) */ - 10, /* quint(9997) */ - 53, /* refuse-collection-vehicle(10096) */ - 29, /* rescue-unit(10055) */ - 54, /* resurfacing-vehicle(10097) */ - 69, /* road-grader(10112) */ - 55, /* road-sweeper(10098) */ - 56, /* roadside-litter-collection-crews(10099) */ - 68, /* rotary-snow-blower(10111) */ - 57, /* salvage-vehicle(10100) */ - 58, /* sand-truck(10101) */ - 67, /* snow-blower(10110) */ - 59, /* snowplow(10102) */ - 60, /* steam-roller(10103) */ - 70, /* steam-truck(10113) */ - 66, /* supervisor-vehicle(10109) */ - 25, /* support-apparatus-other(10044) */ - 4, /* support-equipment(9990) */ - 61, /* swat-team-van(10104) */ - 17, /* tanker-or-tender(10008) */ - 11, /* tanker-pumper-combination(9998) */ - 62, /* track-laying-vehicle(10105) */ - 16, /* tractor(10006) */ - 9, /* truck-or-aerial(9996) */ - 38, /* type-i-hand-crew(10078) */ - 39, /* type-ii-hand-crew(10079) */ - 63, /* unknown-vehicle(10106) */ - 30, /* urban-search-rescue-unit(10056) */ - 64 /* white-lining-vehicle(10107) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { - asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ - 72, /* Number of elements in the maps */ - 73, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { - "IncidentResponseEquipment", - "IncidentResponseEquipment", - IncidentResponseEquipment_free, - IncidentResponseEquipment_print, - IncidentResponseEquipment_constraint, - IncidentResponseEquipment_decode_ber, - IncidentResponseEquipment_encode_der, - IncidentResponseEquipment_decode_xer, - IncidentResponseEquipment_encode_xer, - IncidentResponseEquipment_decode_uper, - IncidentResponseEquipment_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IncidentResponseEquipment_tags_1, - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - &asn_PER_type_IncidentResponseEquipment_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c b/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c deleted file mode 100644 index 686675003..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionCollision.h" - -static asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionCollision, secMark), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, path), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "path" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersetionID), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "intersetionID" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EventFlags, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "eventFlag" - }, -}; -static int asn_MAP_IntersectionCollision_oms_1[] = { 3 }; -static ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* intersetionID */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneNumber */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* eventFlag */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { - sizeof(struct IntersectionCollision), - offsetof(struct IntersectionCollision, _asn_ctx), - asn_MAP_IntersectionCollision_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_IntersectionCollision_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 7, /* Start extensions */ - 9 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { - "IntersectionCollision", - "IntersectionCollision", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionCollision_tags_1, - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - asn_DEF_IntersectionCollision_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_IntersectionCollision_1, - 8, /* Elements count */ - &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c deleted file mode 100644 index 231564d85..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionGeometry.h" - -static asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneSet" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PreemptPriorityList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "preemptPriorityData" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalIntersection, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; -static ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { - sizeof(struct IntersectionGeometry), - offsetof(struct IntersectionGeometry, _asn_ctx), - asn_MAP_IntersectionGeometry_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 8, /* Start extensions */ - 10 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { - "IntersectionGeometry", - "IntersectionGeometry", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionGeometry_tags_1, - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_IntersectionGeometry_1, - 9, /* Elements count */ - &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c deleted file mode 100644 index 9c006a4bc..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionGeometryList.h" - -static asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionGeometry, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { - sizeof(struct IntersectionGeometryList), - offsetof(struct IntersectionGeometryList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { - "IntersectionGeometryList", - "IntersectionGeometryList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionGeometryList_tags_1, - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - &asn_PER_type_IntersectionGeometryList_constr_1, - asn_MBR_IntersectionGeometryList_1, - 1, /* Single element */ - &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionID.c b/src/tmx/Asn_J2735/src/r41/IntersectionID.c deleted file mode 100644 index be06f5545..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionID.h" - -int -IntersectionID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -IntersectionID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -IntersectionID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - IntersectionID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -IntersectionID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -IntersectionID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -IntersectionID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -IntersectionID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -IntersectionID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -IntersectionID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -IntersectionID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - IntersectionID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionID = { - "IntersectionID", - "IntersectionID", - IntersectionID_free, - IntersectionID_print, - IntersectionID_constraint, - IntersectionID_decode_ber, - IntersectionID_encode_der, - IntersectionID_decode_xer, - IntersectionID_encode_xer, - IntersectionID_decode_uper, - IntersectionID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionID_tags_1, - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - &asn_PER_type_IntersectionID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c deleted file mode 100644 index 76d332890..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionReferenceID.h" - -static asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, -}; -static int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { - sizeof(struct IntersectionReferenceID), - offsetof(struct IntersectionReferenceID, _asn_ctx), - asn_MAP_IntersectionReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { - "IntersectionReferenceID", - "IntersectionReferenceID", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionReferenceID_tags_1, - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_IntersectionReferenceID_1, - 2, /* Elements count */ - &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionState.c b/src/tmx/Asn_J2735/src/r41/IntersectionState.c deleted file mode 100644 index ba77d6bf1..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionState.c +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionState.h" - -static asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionState, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStatusObject, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "moy" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EnabledLaneList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "enabledLanes" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "states" - }, - { ATF_POINTER, 4, offsetof(struct IntersectionState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maneuverAssistList" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionState, priority), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalControlState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "priority" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, preempt), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalControlState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "preempt" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalIntersectionState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9, 10, 11 }; -static ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* preempt */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { - sizeof(struct IntersectionState), - offsetof(struct IntersectionState, _asn_ctx), - asn_MAP_IntersectionState_tag2el_1, - 12, /* Count of tags in the map */ - asn_MAP_IntersectionState_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 11, /* Start extensions */ - 13 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionState = { - "IntersectionState", - "IntersectionState", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionState_tags_1, - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - asn_DEF_IntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_IntersectionState_1, - 12, /* Elements count */ - &asn_SPC_IntersectionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c b/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c deleted file mode 100644 index 822c1eae9..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionStateList.h" - -static asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { - sizeof(struct IntersectionStateList), - offsetof(struct IntersectionStateList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { - "IntersectionStateList", - "IntersectionStateList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionStateList_tags_1, - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStateList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - &asn_PER_type_IntersectionStateList_constr_1, - asn_MBR_IntersectionStateList_1, - 1, /* Single element */ - &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c deleted file mode 100644 index d630c8f87..000000000 --- a/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "IntersectionStatusObject.h" - -int -IntersectionStatusObject_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -IntersectionStatusObject_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -IntersectionStatusObject_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -IntersectionStatusObject_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -IntersectionStatusObject_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -IntersectionStatusObject_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -IntersectionStatusObject_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -IntersectionStatusObject_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -IntersectionStatusObject_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -IntersectionStatusObject_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - IntersectionStatusObject_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { - "IntersectionStatusObject", - "IntersectionStatusObject", - IntersectionStatusObject_free, - IntersectionStatusObject_print, - IntersectionStatusObject_constraint, - IntersectionStatusObject_decode_ber, - IntersectionStatusObject_encode_der, - IntersectionStatusObject_decode_xer, - IntersectionStatusObject_encode_xer, - IntersectionStatusObject_decode_uper, - IntersectionStatusObject_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_IntersectionStatusObject_tags_1, - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - &asn_PER_type_IntersectionStatusObject_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/J1939data.c b/src/tmx/Asn_J2735/src/r41/J1939data.c deleted file mode 100644 index 00f6ffb47..000000000 --- a/src/tmx/Asn_J2735/src/r41/J1939data.c +++ /dev/null @@ -1,494 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "J1939data.h" - -static int -memb_tires_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size <= 16)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_axle_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size <= 16)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_tires_constr_2 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_axle_constr_12 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_tires_constr_2 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_axle_constr_12 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_Member_3[] = { - { ATF_POINTER, 7, offsetof(struct J1939data__tires__Member, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLocation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "location" - }, - { ATF_POINTER, 6, offsetof(struct J1939data__tires__Member, pressure), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pressure" - }, - { ATF_POINTER, 5, offsetof(struct J1939data__tires__Member, temp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireTemp, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "temp" - }, - { ATF_POINTER, 4, offsetof(struct J1939data__tires__Member, wheelSensorStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelSensorStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "wheelSensorStatus" - }, - { ATF_POINTER, 3, offsetof(struct J1939data__tires__Member, wheelEndElectFault), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelEndElectFault, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "wheelEndElectFault" - }, - { ATF_POINTER, 2, offsetof(struct J1939data__tires__Member, leakageRate), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLeakageRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "leakageRate" - }, - { ATF_POINTER, 1, offsetof(struct J1939data__tires__Member, detection), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressureThresholdDetection, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "detection" - }, -}; -static int asn_MAP_Member_oms_3[] = { 0, 1, 2, 3, 4, 5, 6 }; -static ber_tlv_tag_t asn_DEF_Member_tags_3[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_3 = { - sizeof(struct J1939data__tires__Member), - offsetof(struct J1939data__tires__Member, _asn_ctx), - asn_MAP_Member_tag2el_3, - 7, /* Count of tags in the map */ - asn_MAP_Member_oms_3, /* Optional members */ - 7, 0, /* Root/Additions */ - 6, /* Start extensions */ - 8 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_3 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_3, - sizeof(asn_DEF_Member_tags_3) - /sizeof(asn_DEF_Member_tags_3[0]), /* 1 */ - asn_DEF_Member_tags_3, /* Same as above */ - sizeof(asn_DEF_Member_tags_3) - /sizeof(asn_DEF_Member_tags_3[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_3, - 7, /* Elements count */ - &asn_SPC_Member_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_tires_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_tires_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_tires_specs_2 = { - sizeof(struct J1939data__tires), - offsetof(struct J1939data__tires, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_tires_2 = { - "tires", - "tires", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_tires_tags_2, - sizeof(asn_DEF_tires_tags_2) - /sizeof(asn_DEF_tires_tags_2[0]) - 1, /* 1 */ - asn_DEF_tires_tags_2, /* Same as above */ - sizeof(asn_DEF_tires_tags_2) - /sizeof(asn_DEF_tires_tags_2[0]), /* 2 */ - &asn_PER_type_tires_constr_2, - asn_MBR_tires_2, - 1, /* Single element */ - &asn_SPC_tires_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_13[] = { - { ATF_POINTER, 2, offsetof(struct J1939data__axle__Member, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleLocation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "location" - }, - { ATF_POINTER, 1, offsetof(struct J1939data__axle__Member, weight), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleWeight, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "weight" - }, -}; -static int asn_MAP_Member_oms_13[] = { 0, 1 }; -static ber_tlv_tag_t asn_DEF_Member_tags_13[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_13[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_13 = { - sizeof(struct J1939data__axle__Member), - offsetof(struct J1939data__axle__Member, _asn_ctx), - asn_MAP_Member_tag2el_13, - 2, /* Count of tags in the map */ - asn_MAP_Member_oms_13, /* Optional members */ - 2, 0, /* Root/Additions */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_13 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_13, - sizeof(asn_DEF_Member_tags_13) - /sizeof(asn_DEF_Member_tags_13[0]), /* 1 */ - asn_DEF_Member_tags_13, /* Same as above */ - sizeof(asn_DEF_Member_tags_13) - /sizeof(asn_DEF_Member_tags_13[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_13, - 2, /* Elements count */ - &asn_SPC_Member_specs_13 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_axle_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_13, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_axle_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_axle_specs_12 = { - sizeof(struct J1939data__axle), - offsetof(struct J1939data__axle, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_axle_12 = { - "axle", - "axle", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_axle_tags_12, - sizeof(asn_DEF_axle_tags_12) - /sizeof(asn_DEF_axle_tags_12[0]) - 1, /* 1 */ - asn_DEF_axle_tags_12, /* Same as above */ - sizeof(asn_DEF_axle_tags_12) - /sizeof(asn_DEF_axle_tags_12[0]), /* 2 */ - &asn_PER_type_axle_constr_12, - asn_MBR_axle_12, - 1, /* Single element */ - &asn_SPC_axle_specs_12 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_J1939data_1[] = { - { ATF_POINTER, 10, offsetof(struct J1939data, tires), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_tires_2, - memb_tires_constraint_1, - &asn_PER_memb_tires_constr_2, - 0, - "tires" - }, - { ATF_POINTER, 9, offsetof(struct J1939data, axle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_axle_12, - memb_axle_constraint_1, - &asn_PER_memb_axle_constr_12, - 0, - "axle" - }, - { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "trailerWeight" - }, - { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CargoWeight, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "cargoWeight" - }, - { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleTemperature, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "steeringAxleTemperature" - }, - { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLocation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "driveAxleLocation" - }, - { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLiftAirPressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "driveAxleLiftAirPressure" - }, - { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleTemperature, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "driveAxleTemperature" - }, - { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLubePressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "driveAxleLubePressure" - }, - { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleLubePressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "steeringAxleLubePressure" - }, -}; -static int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { - sizeof(struct J1939data), - offsetof(struct J1939data, _asn_ctx), - asn_MAP_J1939data_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_J1939data_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 9, /* Start extensions */ - 11 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_J1939data = { - "J1939data", - "J1939data", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_J1939data_tags_1, - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - asn_DEF_J1939data_tags_1, /* Same as above */ - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_J1939data_1, - 10, /* Elements count */ - &asn_SPC_J1939data_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Angle.c b/src/tmx/Asn_J2735/src/r41/JPN-Angle.c deleted file mode 100644 index 5bb5581d9..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Angle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Angle.h" - -int -JPN_Angle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 239)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -JPN_Angle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -JPN_Angle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -JPN_Angle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -JPN_Angle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -JPN_Angle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -JPN_Angle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -JPN_Angle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -JPN_Angle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -JPN_Angle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - JPN_Angle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_JPN_Angle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_JPN_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Angle = { - "JPN-Angle", - "JPN-Angle", - JPN_Angle_free, - JPN_Angle_print, - JPN_Angle_constraint, - JPN_Angle_decode_ber, - JPN_Angle_encode_der, - JPN_Angle_decode_xer, - JPN_Angle_encode_xer, - JPN_Angle_decode_uper, - JPN_Angle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_Angle_tags_1, - sizeof(asn_DEF_JPN_Angle_tags_1) - /sizeof(asn_DEF_JPN_Angle_tags_1[0]), /* 1 */ - asn_DEF_JPN_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_Angle_tags_1) - /sizeof(asn_DEF_JPN_Angle_tags_1[0]), /* 1 */ - &asn_PER_type_JPN_Angle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c b/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c deleted file mode 100644 index 306248691..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Elevation.h" - -int -JPN_Elevation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -JPN_Elevation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -JPN_Elevation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -JPN_Elevation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -JPN_Elevation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -JPN_Elevation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -JPN_Elevation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -JPN_Elevation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -JPN_Elevation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -JPN_Elevation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - JPN_Elevation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_JPN_Elevation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_JPN_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Elevation = { - "JPN-Elevation", - "JPN-Elevation", - JPN_Elevation_free, - JPN_Elevation_print, - JPN_Elevation_constraint, - JPN_Elevation_decode_ber, - JPN_Elevation_encode_der, - JPN_Elevation_decode_xer, - JPN_Elevation_encode_xer, - JPN_Elevation_decode_uper, - JPN_Elevation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_Elevation_tags_1, - sizeof(asn_DEF_JPN_Elevation_tags_1) - /sizeof(asn_DEF_JPN_Elevation_tags_1[0]), /* 1 */ - asn_DEF_JPN_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_Elevation_tags_1) - /sizeof(asn_DEF_JPN_Elevation_tags_1[0]), /* 1 */ - &asn_PER_type_JPN_Elevation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c b/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c deleted file mode 100644 index 48f5f9391..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-MsgCount.h" - -int -JPN_MsgCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -JPN_MsgCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -JPN_MsgCount_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -JPN_MsgCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -JPN_MsgCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -JPN_MsgCount_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -JPN_MsgCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -JPN_MsgCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -JPN_MsgCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -JPN_MsgCount_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - JPN_MsgCount_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_JPN_MsgCount_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_JPN_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_JPN_MsgCount = { - "JPN-MsgCount", - "JPN-MsgCount", - JPN_MsgCount_free, - JPN_MsgCount_print, - JPN_MsgCount_constraint, - JPN_MsgCount_decode_ber, - JPN_MsgCount_encode_der, - JPN_MsgCount_decode_xer, - JPN_MsgCount_encode_xer, - JPN_MsgCount_decode_uper, - JPN_MsgCount_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_MsgCount_tags_1, - sizeof(asn_DEF_JPN_MsgCount_tags_1) - /sizeof(asn_DEF_JPN_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_JPN_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_MsgCount_tags_1) - /sizeof(asn_DEF_JPN_MsgCount_tags_1[0]), /* 1 */ - &asn_PER_type_JPN_MsgCount_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c deleted file mode 100644 index 727cad892..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Reg-LaneDataAttribute.h" - -static ber_tlv_tag_t asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_LaneDataAttribute_specs_1 = { - sizeof(struct JPN_Reg_LaneDataAttribute), - offsetof(struct JPN_Reg_LaneDataAttribute, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Reg_LaneDataAttribute = { - "JPN-Reg-LaneDataAttribute", - "JPN-Reg-LaneDataAttribute", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_Reg_LaneDataAttribute_tags_1, - sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1) - /sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ - asn_DEF_JPN_Reg_LaneDataAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1) - /sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_JPN_Reg_LaneDataAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c deleted file mode 100644 index 5af92ca2d..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Reg-MovementEvent.h" - -static asn_TYPE_member_t asn_MBR_JPN_Reg_MovementEvent_1[] = { - { ATF_POINTER, 1, offsetof(struct JPN_Reg_MovementEvent, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_MovementEvent, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinTimetoChange, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct JPN_Reg_MovementEvent, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MaxTimetoChange, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct JPN_Reg_MovementEvent, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct JPN_Reg_MovementEvent, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct JPN_Reg_MovementEvent, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nextTime" - }, -}; -static int asn_MAP_JPN_Reg_MovementEvent_oms_1[] = { 0, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_JPN_Reg_MovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_MovementEvent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_MovementEvent_specs_1 = { - sizeof(struct JPN_Reg_MovementEvent), - offsetof(struct JPN_Reg_MovementEvent, _asn_ctx), - asn_MAP_JPN_Reg_MovementEvent_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_JPN_Reg_MovementEvent_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Reg_MovementEvent = { - "JPN-Reg-MovementEvent", - "JPN-Reg-MovementEvent", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_Reg_MovementEvent_tags_1, - sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1) - /sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1[0]), /* 1 */ - asn_DEF_JPN_Reg_MovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1) - /sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_JPN_Reg_MovementEvent_1, - 6, /* Elements count */ - &asn_SPC_JPN_Reg_MovementEvent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c deleted file mode 100644 index d3999efee..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Reg-NodeOffsetPoint.h" - -static asn_per_constraints_t asn_PER_type_JPN_Reg_NodeOffsetPoint_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_JPN_Reg_NodeOffsetPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_NodeOffsetPoint, choice.posA), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_48b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posA" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_NodeOffsetPoint, choice.posB), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_80b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posB" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_NodeOffsetPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ -}; -static asn_CHOICE_specifics_t asn_SPC_JPN_Reg_NodeOffsetPoint_specs_1 = { - sizeof(struct JPN_Reg_NodeOffsetPoint), - offsetof(struct JPN_Reg_NodeOffsetPoint, _asn_ctx), - offsetof(struct JPN_Reg_NodeOffsetPoint, present), - sizeof(((struct JPN_Reg_NodeOffsetPoint *)0)->present), - asn_MAP_JPN_Reg_NodeOffsetPoint_tag2el_1, - 2, /* Count of tags in the map */ - 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Reg_NodeOffsetPoint = { - "JPN-Reg-NodeOffsetPoint", - "JPN-Reg-NodeOffsetPoint", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_JPN_Reg_NodeOffsetPoint_constr_1, - asn_MBR_JPN_Reg_NodeOffsetPoint_1, - 2, /* Elements count */ - &asn_SPC_JPN_Reg_NodeOffsetPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c deleted file mode 100644 index 57a4bfd6d..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-Reg-Position3D.h" - -static asn_TYPE_member_t asn_MBR_JPN_Reg_Position3D_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, latitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "latitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, longitude), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "longitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_JPN_Elevation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "elevation" - }, -}; -static ber_tlv_tag_t asn_DEF_JPN_Reg_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_Position3D_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_Position3D_specs_1 = { - sizeof(struct JPN_Reg_Position3D), - offsetof(struct JPN_Reg_Position3D, _asn_ctx), - asn_MAP_JPN_Reg_Position3D_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_JPN_Reg_Position3D = { - "JPN-Reg-Position3D", - "JPN-Reg-Position3D", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_Reg_Position3D_tags_1, - sizeof(asn_DEF_JPN_Reg_Position3D_tags_1) - /sizeof(asn_DEF_JPN_Reg_Position3D_tags_1[0]), /* 1 */ - asn_DEF_JPN_Reg_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_Reg_Position3D_tags_1) - /sizeof(asn_DEF_JPN_Reg_Position3D_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_JPN_Reg_Position3D_1, - 3, /* Elements count */ - &asn_SPC_JPN_Reg_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c b/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c deleted file mode 100644 index 701ec0a9f..000000000 --- a/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "JPN-TimeMark.h" - -static asn_TYPE_member_t asn_MBR_JPN_TimeMark_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Year, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Month, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Day, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, summerTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SummerTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "summerTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, holiday), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Holiday, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "holiday" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, dayofWeek), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DayOfWeek, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dayofWeek" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, hour), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Hour, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, minute), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Minute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, second), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Second, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "second" - }, - { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, tenthSecond), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TenthSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "tenthSecond" - }, -}; -static ber_tlv_tag_t asn_DEF_JPN_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_JPN_TimeMark_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_JPN_TimeMark_specs_1 = { - sizeof(struct JPN_TimeMark), - offsetof(struct JPN_TimeMark, _asn_ctx), - asn_MAP_JPN_TimeMark_tag2el_1, - 10, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_JPN_TimeMark = { - "JPN-TimeMark", - "JPN-TimeMark", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_JPN_TimeMark_tags_1, - sizeof(asn_DEF_JPN_TimeMark_tags_1) - /sizeof(asn_DEF_JPN_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_JPN_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_JPN_TimeMark_tags_1) - /sizeof(asn_DEF_JPN_TimeMark_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_JPN_TimeMark_1, - 10, /* Elements count */ - &asn_SPC_JPN_TimeMark_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c deleted file mode 100644 index 5f5d4efcb..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Barrier.h" - -int -LaneAttributes_Barrier_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Barrier_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Barrier_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Barrier_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Barrier_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Barrier_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Barrier_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Barrier_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Barrier_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Barrier_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { - "LaneAttributes-Barrier", - "LaneAttributes-Barrier", - LaneAttributes_Barrier_free, - LaneAttributes_Barrier_print, - LaneAttributes_Barrier_constraint, - LaneAttributes_Barrier_decode_ber, - LaneAttributes_Barrier_encode_der, - LaneAttributes_Barrier_decode_xer, - LaneAttributes_Barrier_encode_xer, - LaneAttributes_Barrier_decode_uper, - LaneAttributes_Barrier_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Barrier_tags_1, - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Barrier_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c deleted file mode 100644 index b20c6b250..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Bike.h" - -int -LaneAttributes_Bike_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Bike_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Bike_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Bike_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Bike_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Bike_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Bike_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Bike_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Bike_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Bike_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { - "LaneAttributes-Bike", - "LaneAttributes-Bike", - LaneAttributes_Bike_free, - LaneAttributes_Bike_print, - LaneAttributes_Bike_constraint, - LaneAttributes_Bike_decode_ber, - LaneAttributes_Bike_encode_der, - LaneAttributes_Bike_decode_xer, - LaneAttributes_Bike_encode_xer, - LaneAttributes_Bike_decode_uper, - LaneAttributes_Bike_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Bike_tags_1, - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Bike_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c deleted file mode 100644 index 643257c42..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Crosswalk.h" - -int -LaneAttributes_Crosswalk_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Crosswalk_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Crosswalk_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Crosswalk_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Crosswalk_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Crosswalk_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Crosswalk_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Crosswalk_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Crosswalk_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { - "LaneAttributes-Crosswalk", - "LaneAttributes-Crosswalk", - LaneAttributes_Crosswalk_free, - LaneAttributes_Crosswalk_print, - LaneAttributes_Crosswalk_constraint, - LaneAttributes_Crosswalk_decode_ber, - LaneAttributes_Crosswalk_encode_der, - LaneAttributes_Crosswalk_decode_xer, - LaneAttributes_Crosswalk_encode_xer, - LaneAttributes_Crosswalk_decode_uper, - LaneAttributes_Crosswalk_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Crosswalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Crosswalk_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c deleted file mode 100644 index cc3012047..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Parking.h" - -int -LaneAttributes_Parking_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Parking_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Parking_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Parking_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Parking_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Parking_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Parking_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Parking_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Parking_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Parking_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { - "LaneAttributes-Parking", - "LaneAttributes-Parking", - LaneAttributes_Parking_free, - LaneAttributes_Parking_print, - LaneAttributes_Parking_constraint, - LaneAttributes_Parking_decode_ber, - LaneAttributes_Parking_encode_der, - LaneAttributes_Parking_decode_xer, - LaneAttributes_Parking_encode_xer, - LaneAttributes_Parking_decode_uper, - LaneAttributes_Parking_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Parking_tags_1, - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Parking_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c deleted file mode 100644 index 45dfd3944..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Sidewalk.h" - -int -LaneAttributes_Sidewalk_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Sidewalk_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Sidewalk_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Sidewalk_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Sidewalk_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Sidewalk_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Sidewalk_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Sidewalk_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Sidewalk_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { - "LaneAttributes-Sidewalk", - "LaneAttributes-Sidewalk", - LaneAttributes_Sidewalk_free, - LaneAttributes_Sidewalk_print, - LaneAttributes_Sidewalk_constraint, - LaneAttributes_Sidewalk_decode_ber, - LaneAttributes_Sidewalk_encode_der, - LaneAttributes_Sidewalk_decode_xer, - LaneAttributes_Sidewalk_encode_xer, - LaneAttributes_Sidewalk_decode_uper, - LaneAttributes_Sidewalk_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Sidewalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Sidewalk_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c deleted file mode 100644 index 2cc282482..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Striping.h" - -int -LaneAttributes_Striping_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Striping_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Striping_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Striping_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Striping_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Striping_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Striping_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Striping_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Striping_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Striping_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { - "LaneAttributes-Striping", - "LaneAttributes-Striping", - LaneAttributes_Striping_free, - LaneAttributes_Striping_print, - LaneAttributes_Striping_constraint, - LaneAttributes_Striping_decode_ber, - LaneAttributes_Striping_encode_der, - LaneAttributes_Striping_decode_xer, - LaneAttributes_Striping_encode_xer, - LaneAttributes_Striping_decode_uper, - LaneAttributes_Striping_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Striping_tags_1, - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Striping_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c deleted file mode 100644 index e0b6c6102..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-TrackedVehicle.h" - -int -LaneAttributes_TrackedVehicle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_TrackedVehicle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_TrackedVehicle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_TrackedVehicle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_TrackedVehicle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_TrackedVehicle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_TrackedVehicle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_TrackedVehicle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_TrackedVehicle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { - "LaneAttributes-TrackedVehicle", - "LaneAttributes-TrackedVehicle", - LaneAttributes_TrackedVehicle_free, - LaneAttributes_TrackedVehicle_print, - LaneAttributes_TrackedVehicle_constraint, - LaneAttributes_TrackedVehicle_decode_ber, - LaneAttributes_TrackedVehicle_encode_der, - LaneAttributes_TrackedVehicle_decode_xer, - LaneAttributes_TrackedVehicle_encode_xer, - LaneAttributes_TrackedVehicle_decode_uper, - LaneAttributes_TrackedVehicle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c deleted file mode 100644 index a596e8ff1..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes-Vehicle.h" - -int -LaneAttributes_Vehicle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneAttributes_Vehicle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneAttributes_Vehicle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Vehicle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneAttributes_Vehicle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Vehicle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneAttributes_Vehicle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneAttributes_Vehicle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneAttributes_Vehicle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { - "LaneAttributes-Vehicle", - "LaneAttributes-Vehicle", - LaneAttributes_Vehicle_free, - LaneAttributes_Vehicle_print, - LaneAttributes_Vehicle_constraint, - LaneAttributes_Vehicle_decode_ber, - LaneAttributes_Vehicle_encode_der, - LaneAttributes_Vehicle_decode_xer, - LaneAttributes_Vehicle_encode_xer, - LaneAttributes_Vehicle_decode_uper, - LaneAttributes_Vehicle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_Vehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - &asn_PER_type_LaneAttributes_Vehicle_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes.c deleted file mode 100644 index d892c2993..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneAttributes.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneAttributes.h" - -static asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDirection, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "directionalUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneSharing, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sharedWith" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_LaneTypeAttributes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneType" - }, - { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalLaneAttributes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_LaneAttributes_oms_1[] = { 3 }; -static ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { - sizeof(struct LaneAttributes), - offsetof(struct LaneAttributes, _asn_ctx), - asn_MAP_LaneAttributes_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_LaneAttributes_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { - "LaneAttributes", - "LaneAttributes", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneAttributes_tags_1, - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_LaneAttributes_1, - 4, /* Elements count */ - &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c b/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c deleted file mode 100644 index 6aed17efb..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneConnectionID.h" - -int -LaneConnectionID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LaneConnectionID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LaneConnectionID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneConnectionID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneConnectionID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneConnectionID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneConnectionID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneConnectionID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneConnectionID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneConnectionID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneConnectionID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { - "LaneConnectionID", - "LaneConnectionID", - LaneConnectionID_free, - LaneConnectionID_print, - LaneConnectionID_constraint, - LaneConnectionID_decode_ber, - LaneConnectionID_encode_der, - LaneConnectionID_decode_xer, - LaneConnectionID_encode_xer, - LaneConnectionID_decode_uper, - LaneConnectionID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneConnectionID_tags_1, - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - asn_DEF_LaneConnectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - &asn_PER_type_LaneConnectionID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c deleted file mode 100644 index 44824d4e4..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneDataAttribute.h" - -static asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DeltaAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pathEndPointAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneCrownPointCenter" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneCrownPointLeft" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneCrownPointRight" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MergeDivergeNodeAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalLaneDataAttribute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -static asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { - sizeof(struct LaneDataAttribute), - offsetof(struct LaneDataAttribute, _asn_ctx), - offsetof(struct LaneDataAttribute, present), - sizeof(((struct LaneDataAttribute *)0)->present), - asn_MAP_LaneDataAttribute_tag2el_1, - 7, /* Count of tags in the map */ - 0, - 7 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { - "LaneDataAttribute", - "LaneDataAttribute", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_LaneDataAttribute_constr_1, - asn_MBR_LaneDataAttribute_1, - 7, /* Elements count */ - &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c deleted file mode 100644 index 1c5b52a1d..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneDataAttributeList.h" - -static asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_LaneDataAttribute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { - sizeof(struct LaneDataAttributeList), - offsetof(struct LaneDataAttributeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { - "LaneDataAttributeList", - "LaneDataAttributeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneDataAttributeList_tags_1, - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - &asn_PER_type_LaneDataAttributeList_constr_1, - asn_MBR_LaneDataAttributeList_1, - 1, /* Single element */ - &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneDirection.c b/src/tmx/Asn_J2735/src/r41/LaneDirection.c deleted file mode 100644 index 7ca26e866..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneDirection.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneDirection.h" - -int -LaneDirection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneDirection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneDirection_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneDirection_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneDirection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneDirection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneDirection_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneDirection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneDirection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneDirection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneDirection_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneDirection_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneDirection = { - "LaneDirection", - "LaneDirection", - LaneDirection_free, - LaneDirection_print, - LaneDirection_constraint, - LaneDirection_decode_ber, - LaneDirection_encode_der, - LaneDirection_decode_xer, - LaneDirection_encode_xer, - LaneDirection_decode_uper, - LaneDirection_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneDirection_tags_1, - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - asn_DEF_LaneDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - &asn_PER_type_LaneDirection_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneID.c b/src/tmx/Asn_J2735/src/r41/LaneID.c deleted file mode 100644 index a4354d1b6..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneID.h" - -int -LaneID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LaneID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LaneID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneID = { - "LaneID", - "LaneID", - LaneID_free, - LaneID_print, - LaneID_constraint, - LaneID_decode_ber, - LaneID_encode_der, - LaneID_decode_xer, - LaneID_encode_xer, - LaneID_decode_uper, - LaneID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneID_tags_1, - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - asn_DEF_LaneID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - &asn_PER_type_LaneID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneList.c b/src/tmx/Asn_J2735/src/r41/LaneList.c deleted file mode 100644 index d3b2db84c..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneList.h" - -static asn_per_constraints_t asn_PER_type_LaneList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_LaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { - sizeof(struct LaneList), - offsetof(struct LaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneList = { - "LaneList", - "LaneList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneList_tags_1, - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - asn_DEF_LaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - &asn_PER_type_LaneList_constr_1, - asn_MBR_LaneList_1, - 1, /* Single element */ - &asn_SPC_LaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneNumber.c b/src/tmx/Asn_J2735/src/r41/LaneNumber.c deleted file mode 100644 index 33a6d80d9..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneNumber.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneNumber.h" - -int -LaneNumber_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneNumber_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -LaneNumber_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneNumber_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneNumber_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneNumber_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneNumber_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneNumber_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneNumber_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneNumber_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneNumber_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneNumber_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneNumber_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneNumber_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneNumber = { - "LaneNumber", - "LaneNumber", - LaneNumber_free, - LaneNumber_print, - LaneNumber_constraint, - LaneNumber_decode_ber, - LaneNumber_encode_der, - LaneNumber_decode_xer, - LaneNumber_encode_xer, - LaneNumber_decode_uper, - LaneNumber_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneNumber_tags_1, - sizeof(asn_DEF_LaneNumber_tags_1) - /sizeof(asn_DEF_LaneNumber_tags_1[0]), /* 1 */ - asn_DEF_LaneNumber_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneNumber_tags_1) - /sizeof(asn_DEF_LaneNumber_tags_1[0]), /* 1 */ - &asn_PER_type_LaneNumber_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneSharing.c b/src/tmx/Asn_J2735/src/r41/LaneSharing.c deleted file mode 100644 index e06b131dc..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneSharing.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneSharing.h" - -int -LaneSharing_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 10)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -LaneSharing_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -LaneSharing_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneSharing_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneSharing_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneSharing_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneSharing_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneSharing_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneSharing_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneSharing_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneSharing_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneSharing_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneSharing = { - "LaneSharing", - "LaneSharing", - LaneSharing_free, - LaneSharing_print, - LaneSharing_constraint, - LaneSharing_decode_ber, - LaneSharing_encode_der, - LaneSharing_decode_xer, - LaneSharing_encode_xer, - LaneSharing_decode_uper, - LaneSharing_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneSharing_tags_1, - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - asn_DEF_LaneSharing_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - &asn_PER_type_LaneSharing_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c deleted file mode 100644 index 78343df50..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneTypeAttributes.h" - -static asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Vehicle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Crosswalk, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crosswalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Bike, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "bikeLane" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Sidewalk, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sidewalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Barrier, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "median" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Striping, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "striping" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_TrackedVehicle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "trackedVehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Parking, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "parking" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ -}; -static asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { - sizeof(struct LaneTypeAttributes), - offsetof(struct LaneTypeAttributes, _asn_ctx), - offsetof(struct LaneTypeAttributes, present), - sizeof(((struct LaneTypeAttributes *)0)->present), - asn_MAP_LaneTypeAttributes_tag2el_1, - 8, /* Count of tags in the map */ - 0, - 8 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { - "LaneTypeAttributes", - "LaneTypeAttributes", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_LaneTypeAttributes_constr_1, - asn_MBR_LaneTypeAttributes_1, - 8, /* Elements count */ - &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LaneWidth.c b/src/tmx/Asn_J2735/src/r41/LaneWidth.c deleted file mode 100644 index 119112687..000000000 --- a/src/tmx/Asn_J2735/src/r41/LaneWidth.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LaneWidth.h" - -int -LaneWidth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LaneWidth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LaneWidth_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LaneWidth_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LaneWidth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LaneWidth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LaneWidth_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LaneWidth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LaneWidth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LaneWidth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LaneWidth_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LaneWidth_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneWidth = { - "LaneWidth", - "LaneWidth", - LaneWidth_free, - LaneWidth_print, - LaneWidth_constraint, - LaneWidth_decode_ber, - LaneWidth_encode_der, - LaneWidth_decode_xer, - LaneWidth_encode_xer, - LaneWidth_decode_uper, - LaneWidth_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LaneWidth_tags_1, - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - asn_DEF_LaneWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - &asn_PER_type_LaneWidth_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Latitude.c b/src/tmx/Asn_J2735/src/r41/Latitude.c deleted file mode 100644 index 0a67c84ba..000000000 --- a/src/tmx/Asn_J2735/src/r41/Latitude.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Latitude.h" - -int -Latitude_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -900000000 && value <= 900000001)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Latitude_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Latitude_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Latitude_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Latitude_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Latitude_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Latitude_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Latitude_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Latitude_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Latitude_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Latitude_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Latitude_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Latitude_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Latitude = { - "Latitude", - "Latitude", - Latitude_free, - Latitude_print, - Latitude_constraint, - Latitude_decode_ber, - Latitude_encode_der, - Latitude_decode_xer, - Latitude_encode_xer, - Latitude_decode_uper, - Latitude_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Latitude_tags_1, - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - asn_DEF_Latitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - &asn_PER_type_Latitude_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c b/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c deleted file mode 100644 index 4506602c3..000000000 --- a/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LatitudeDMS.h" - -int -LatitudeDMS_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32400000 && value <= 32400000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LatitudeDMS_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LatitudeDMS_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LatitudeDMS_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LatitudeDMS_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LatitudeDMS_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LatitudeDMS_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LatitudeDMS_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LatitudeDMS_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LatitudeDMS_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LatitudeDMS_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { - "LatitudeDMS", - "LatitudeDMS", - LatitudeDMS_free, - LatitudeDMS_print, - LatitudeDMS_constraint, - LatitudeDMS_decode_ber, - LatitudeDMS_encode_der, - LatitudeDMS_decode_xer, - LatitudeDMS_encode_xer, - LatitudeDMS_decode_uper, - LatitudeDMS_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LatitudeDMS_tags_1, - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - &asn_PER_type_LatitudeDMS_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c deleted file mode 100644 index b83fa19c1..000000000 --- a/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LatitudeDMS2.h" - -static asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLat, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "s" - }, -}; -static ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { - sizeof(struct LatitudeDMS2), - offsetof(struct LatitudeDMS2, _asn_ctx), - asn_MAP_LatitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { - "LatitudeDMS2", - "LatitudeDMS2", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LatitudeDMS2_tags_1, - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_LatitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LayerID.c b/src/tmx/Asn_J2735/src/r41/LayerID.c deleted file mode 100644 index 4936dea08..000000000 --- a/src/tmx/Asn_J2735/src/r41/LayerID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LayerID.h" - -int -LayerID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LayerID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LayerID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LayerID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LayerID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LayerID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LayerID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LayerID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LayerID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LayerID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LayerID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LayerID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LayerID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerID = { - "LayerID", - "LayerID", - LayerID_free, - LayerID_print, - LayerID_constraint, - LayerID_decode_ber, - LayerID_encode_der, - LayerID_decode_xer, - LayerID_encode_xer, - LayerID_decode_uper, - LayerID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LayerID_tags_1, - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - asn_DEF_LayerID_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - &asn_PER_type_LayerID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LayerType.c b/src/tmx/Asn_J2735/src/r41/LayerType.c deleted file mode 100644 index d0ddd886d..000000000 --- a/src/tmx/Asn_J2735/src/r41/LayerType.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LayerType.h" - -int -LayerType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -LayerType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -LayerType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LayerType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LayerType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LayerType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LayerType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LayerType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LayerType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LayerType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LayerType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LayerType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LayerType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 12, "mixedContent" }, - { 2, 14, "generalMapData" }, - { 3, 16, "intersectionData" }, - { 4, 9, "curveData" }, - { 5, 18, "roadwaySectionData" }, - { 6, 15, "parkingAreaData" }, - { 7, 14, "sharedLaneData" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_LayerType_enum2value_1[] = { - 4, /* curveData(4) */ - 2, /* generalMapData(2) */ - 3, /* intersectionData(3) */ - 1, /* mixedContent(1) */ - 0, /* none(0) */ - 6, /* parkingAreaData(6) */ - 5, /* roadwaySectionData(5) */ - 7 /* sharedLaneData(7) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { - asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerType = { - "LayerType", - "LayerType", - LayerType_free, - LayerType_print, - LayerType_constraint, - LayerType_decode_ber, - LayerType_encode_der, - LayerType_decode_xer, - LayerType_encode_xer, - LayerType_decode_uper, - LayerType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LayerType_tags_1, - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - asn_DEF_LayerType_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - &asn_PER_type_LayerType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LayerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LightbarInUse.c b/src/tmx/Asn_J2735/src/r41/LightbarInUse.c deleted file mode 100644 index bbf3c695e..000000000 --- a/src/tmx/Asn_J2735/src/r41/LightbarInUse.c +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LightbarInUse.h" - -int -LightbarInUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -LightbarInUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -LightbarInUse_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LightbarInUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LightbarInUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LightbarInUse_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LightbarInUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LightbarInUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LightbarInUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LightbarInUse_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LightbarInUse_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 10, "sirenInUse" }, - { 4, 19, "yellowCautionLights" }, - { 5, 16, "schooldBusLights" }, - { 6, 16, "arrowSignsActive" }, - { 7, 17, "slowMovingVehicle" }, - { 8, 9, "freqStops" }, - { 9, 8, "reserved" } -}; -static unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { - 6, /* arrowSignsActive(6) */ - 8, /* freqStops(8) */ - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 9, /* reserved(9) */ - 5, /* schooldBusLights(5) */ - 3, /* sirenInUse(3) */ - 7, /* slowMovingVehicle(7) */ - 0, /* unavailable(0) */ - 4 /* yellowCautionLights(4) */ -}; -static asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { - asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { - "LightbarInUse", - "LightbarInUse", - LightbarInUse_free, - LightbarInUse_print, - LightbarInUse_constraint, - LightbarInUse_decode_ber, - LightbarInUse_encode_der, - LightbarInUse_decode_xer, - LightbarInUse_encode_xer, - LightbarInUse_decode_uper, - LightbarInUse_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LightbarInUse_tags_1, - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - asn_DEF_LightbarInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - &asn_PER_type_LightbarInUse_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Location-quality.c b/src/tmx/Asn_J2735/src/r41/Location-quality.c deleted file mode 100644 index ab0edafb2..000000000 --- a/src/tmx/Asn_J2735/src/r41/Location-quality.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Location-quality.h" - -int -Location_quality_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -Location_quality_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -Location_quality_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Location_quality_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Location_quality_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Location_quality_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Location_quality_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Location_quality_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Location_quality_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Location_quality_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Location_quality_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Location_quality_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { - { 0, 13, "loc-qual-bt1m" }, - { 1, 13, "loc-qual-bt5m" }, - { 2, 14, "loc-qual-bt12m" }, - { 3, 14, "loc-qual-bt50m" }, - { 4, 15, "loc-qual-bt125m" }, - { 5, 15, "loc-qual-bt500m" }, - { 6, 16, "loc-qual-bt1250m" }, - { 7, 16, "loc-qual-unknown" } -}; -static unsigned int asn_MAP_Location_quality_enum2value_1[] = { - 6, /* loc-qual-bt1250m(6) */ - 4, /* loc-qual-bt125m(4) */ - 2, /* loc-qual-bt12m(2) */ - 0, /* loc-qual-bt1m(0) */ - 5, /* loc-qual-bt500m(5) */ - 3, /* loc-qual-bt50m(3) */ - 1, /* loc-qual-bt5m(1) */ - 7 /* loc-qual-unknown(7) */ -}; -static asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { - asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_quality = { - "Location-quality", - "Location-quality", - Location_quality_free, - Location_quality_print, - Location_quality_constraint, - Location_quality_decode_ber, - Location_quality_encode_der, - Location_quality_decode_xer, - Location_quality_encode_xer, - Location_quality_decode_uper, - Location_quality_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Location_quality_tags_1, - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - asn_DEF_Location_quality_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - &asn_PER_type_Location_quality_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_quality_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Location-tech.c b/src/tmx/Asn_J2735/src/r41/Location-tech.c deleted file mode 100644 index 167e89be6..000000000 --- a/src/tmx/Asn_J2735/src/r41/Location-tech.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Location-tech.h" - -int -Location_tech_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -Location_tech_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -Location_tech_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Location_tech_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Location_tech_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Location_tech_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Location_tech_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Location_tech_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Location_tech_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Location_tech_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Location_tech_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Location_tech_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { - { 0, 16, "loc-tech-unknown" }, - { 1, 12, "loc-tech-GPS" }, - { 2, 13, "loc-tech-DGPS" }, - { 3, 14, "loc-tech-drGPS" }, - { 4, 15, "loc-tech-drDGPS" }, - { 5, 11, "loc-tech-dr" }, - { 6, 12, "loc-tech-nav" }, - { 31, 14, "loc-tech-fault" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_Location_tech_enum2value_1[] = { - 2, /* loc-tech-DGPS(2) */ - 1, /* loc-tech-GPS(1) */ - 5, /* loc-tech-dr(5) */ - 4, /* loc-tech-drDGPS(4) */ - 3, /* loc-tech-drGPS(3) */ - 7, /* loc-tech-fault(31) */ - 6, /* loc-tech-nav(6) */ - 0 /* loc-tech-unknown(0) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { - asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_tech = { - "Location-tech", - "Location-tech", - Location_tech_free, - Location_tech_print, - Location_tech_constraint, - Location_tech_decode_ber, - Location_tech_encode_der, - Location_tech_decode_xer, - Location_tech_encode_xer, - Location_tech_decode_uper, - Location_tech_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Location_tech_tags_1, - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - asn_DEF_Location_tech_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - &asn_PER_type_Location_tech_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_tech_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Longitude.c b/src/tmx/Asn_J2735/src/r41/Longitude.c deleted file mode 100644 index 7e627d2bf..000000000 --- a/src/tmx/Asn_J2735/src/r41/Longitude.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Longitude.h" - -int -Longitude_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1799999999 && value <= 1800000001)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Longitude_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Longitude_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Longitude_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Longitude_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Longitude_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Longitude_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Longitude_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Longitude_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Longitude_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Longitude_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Longitude_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Longitude_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Longitude = { - "Longitude", - "Longitude", - Longitude_free, - Longitude_print, - Longitude_constraint, - Longitude_decode_ber, - Longitude_encode_der, - Longitude_decode_xer, - Longitude_encode_xer, - Longitude_decode_uper, - Longitude_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Longitude_tags_1, - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - asn_DEF_Longitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - &asn_PER_type_Longitude_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c b/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c deleted file mode 100644 index 201a1cb71..000000000 --- a/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LongitudeDMS.h" - -int -LongitudeDMS_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -64800000 && value <= 64800000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -LongitudeDMS_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -LongitudeDMS_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -LongitudeDMS_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -LongitudeDMS_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -LongitudeDMS_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -LongitudeDMS_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -LongitudeDMS_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -LongitudeDMS_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -LongitudeDMS_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - LongitudeDMS_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { - "LongitudeDMS", - "LongitudeDMS", - LongitudeDMS_free, - LongitudeDMS_print, - LongitudeDMS_constraint, - LongitudeDMS_decode_ber, - LongitudeDMS_encode_der, - LongitudeDMS_decode_xer, - LongitudeDMS_encode_xer, - LongitudeDMS_decode_uper, - LongitudeDMS_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LongitudeDMS_tags_1, - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - &asn_PER_type_LongitudeDMS_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c deleted file mode 100644 index fa04d4ba7..000000000 --- a/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "LongitudeDMS2.h" - -static asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLong, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "s" - }, -}; -static ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { - sizeof(struct LongitudeDMS2), - offsetof(struct LongitudeDMS2, _asn_ctx), - asn_MAP_LongitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { - "LongitudeDMS2", - "LongitudeDMS2", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_LongitudeDMS2_tags_1, - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_LongitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MUTCDCode.c b/src/tmx/Asn_J2735/src/r41/MUTCDCode.c deleted file mode 100644 index fa91b7f2c..000000000 --- a/src/tmx/Asn_J2735/src/r41/MUTCDCode.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MUTCDCode.h" - -int -MUTCDCode_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -MUTCDCode_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -MUTCDCode_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MUTCDCode_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MUTCDCode_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MUTCDCode_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MUTCDCode_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MUTCDCode_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MUTCDCode_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MUTCDCode_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MUTCDCode_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 10, "regulatory" }, - { 2, 7, "warning" }, - { 3, 11, "maintenance" }, - { 4, 15, "motoristService" }, - { 5, 5, "guide" }, - { 6, 3, "rec" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { - 5, /* guide(5) */ - 3, /* maintenance(3) */ - 4, /* motoristService(4) */ - 0, /* none(0) */ - 6, /* rec(6) */ - 1, /* regulatory(1) */ - 2 /* warning(2) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { - asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { - "MUTCDCode", - "MUTCDCode", - MUTCDCode_free, - MUTCDCode_print, - MUTCDCode_constraint, - MUTCDCode_decode_ber, - MUTCDCode_encode_der, - MUTCDCode_decode_xer, - MUTCDCode_encode_xer, - MUTCDCode_decode_uper, - MUTCDCode_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MUTCDCode_tags_1, - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - asn_DEF_MUTCDCode_tags_1, /* Same as above */ - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - &asn_PER_type_MUTCDCode_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c deleted file mode 100644 index c9b7a407e..000000000 --- a/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ManeuverAssistList.h" - -static asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ConnectionManeuverAssist, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { - sizeof(struct ManeuverAssistList), - offsetof(struct ManeuverAssistList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { - "ManeuverAssistList", - "ManeuverAssistList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ManeuverAssistList_tags_1, - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - &asn_PER_type_ManeuverAssistList_constr_1, - asn_MBR_ManeuverAssistList_1, - 1, /* Single element */ - &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MapData.c b/src/tmx/Asn_J2735/src/r41/MapData.c deleted file mode 100644 index b5a92d3fc..000000000 --- a/src/tmx/Asn_J2735/src/r41/MapData.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MapData.h" - -static asn_TYPE_member_t asn_MBR_MapData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MapData, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 1, offsetof(struct MapData, msgSubID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgSubID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgSubID" - }, - { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgIssueRevision" - }, - { ATF_POINTER, 8, offsetof(struct MapData, layerType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "layerType" - }, - { ATF_POINTER, 7, offsetof(struct MapData, layerID), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "layerID" - }, - { ATF_POINTER, 6, offsetof(struct MapData, intersections), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionGeometryList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "intersections" - }, - { ATF_POINTER, 5, offsetof(struct MapData, roadSegments), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "roadSegments" - }, - { ATF_POINTER, 4, offsetof(struct MapData, dataParameters), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DataParameters, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dataParameters" - }, - { ATF_POINTER, 3, offsetof(struct MapData, restrictionList), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "restrictionList" - }, - { ATF_POINTER, 2, offsetof(struct MapData, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalMapData, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, - { ATF_POINTER, 1, offsetof(struct MapData, crc), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_MapData_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9, 10 }; -static ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgIssueRevision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* layerID */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadSegments */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* dataParameters */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* restrictionList */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* regional */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { - sizeof(struct MapData), - offsetof(struct MapData, _asn_ctx), - asn_MAP_MapData_tag2el_1, - 11, /* Count of tags in the map */ - asn_MAP_MapData_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - 10, /* Start extensions */ - 12 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_MapData = { - "MapData", - "MapData", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MapData_tags_1, - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - asn_DEF_MapData_tags_1, /* Same as above */ - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_MapData_1, - 11, /* Elements count */ - &asn_SPC_MapData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c deleted file mode 100644 index 811a46f44..000000000 --- a/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MaxTimetoChange.h" - -int -MaxTimetoChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2402)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MaxTimetoChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MaxTimetoChange_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MaxTimetoChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MaxTimetoChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MaxTimetoChange_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MaxTimetoChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MaxTimetoChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MaxTimetoChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MaxTimetoChange_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MaxTimetoChange_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { - "MaxTimetoChange", - "MaxTimetoChange", - MaxTimetoChange_free, - MaxTimetoChange_print, - MaxTimetoChange_constraint, - MaxTimetoChange_decode_ber, - MaxTimetoChange_encode_der, - MaxTimetoChange_decode_xer, - MaxTimetoChange_encode_xer, - MaxTimetoChange_decode_uper, - MaxTimetoChange_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MaxTimetoChange_tags_1, - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - &asn_PER_type_MaxTimetoChange_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c deleted file mode 100644 index 13f51e970..000000000 --- a/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MergeDivergeNodeAngle.h" - -int -MergeDivergeNodeAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180 && value <= 180)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MergeDivergeNodeAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MergeDivergeNodeAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MergeDivergeNodeAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MergeDivergeNodeAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MergeDivergeNodeAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MergeDivergeNodeAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MergeDivergeNodeAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MergeDivergeNodeAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { - "MergeDivergeNodeAngle", - "MergeDivergeNodeAngle", - MergeDivergeNodeAngle_free, - MergeDivergeNodeAngle_print, - MergeDivergeNodeAngle_constraint, - MergeDivergeNodeAngle_decode_ber, - MergeDivergeNodeAngle_encode_der, - MergeDivergeNodeAngle_decode_xer, - MergeDivergeNodeAngle_encode_xer, - MergeDivergeNodeAngle_decode_uper, - MergeDivergeNodeAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MergeDivergeNodeAngle_tags_1, - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - &asn_PER_type_MergeDivergeNodeAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c b/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c deleted file mode 100644 index b32329e14..000000000 --- a/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MinTimetoChange.h" - -int -MinTimetoChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2402)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MinTimetoChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MinTimetoChange_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MinTimetoChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MinTimetoChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MinTimetoChange_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MinTimetoChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MinTimetoChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MinTimetoChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MinTimetoChange_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MinTimetoChange_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { - "MinTimetoChange", - "MinTimetoChange", - MinTimetoChange_free, - MinTimetoChange_print, - MinTimetoChange_constraint, - MinTimetoChange_decode_ber, - MinTimetoChange_encode_der, - MinTimetoChange_decode_xer, - MinTimetoChange_encode_xer, - MinTimetoChange_decode_uper, - MinTimetoChange_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MinTimetoChange_tags_1, - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MinTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - &asn_PER_type_MinTimetoChange_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Minute.c b/src/tmx/Asn_J2735/src/r41/Minute.c deleted file mode 100644 index 3122f6bd4..000000000 --- a/src/tmx/Asn_J2735/src/r41/Minute.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Minute.h" - -int -Minute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Minute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Minute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Minute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Minute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Minute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Minute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Minute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Minute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Minute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Minute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Minute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Minute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Minute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Minute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Minute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Minute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Minute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Minute_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Minute = { - "Minute", - "Minute", - Minute_free, - Minute_print, - Minute_constraint, - Minute_decode_ber, - Minute_encode_der, - Minute_decode_xer, - Minute_encode_xer, - Minute_decode_uper, - Minute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Minute_tags_1, - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - asn_DEF_Minute_tags_1, /* Same as above */ - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - &asn_PER_type_Minute_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c deleted file mode 100644 index 1fb58ab19..000000000 --- a/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MinuteOfTheYear.h" - -int -MinuteOfTheYear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 527040)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MinuteOfTheYear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MinuteOfTheYear_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MinuteOfTheYear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MinuteOfTheYear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MinuteOfTheYear_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MinuteOfTheYear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MinuteOfTheYear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MinuteOfTheYear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MinuteOfTheYear_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MinuteOfTheYear_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { - "MinuteOfTheYear", - "MinuteOfTheYear", - MinuteOfTheYear_free, - MinuteOfTheYear_print, - MinuteOfTheYear_constraint, - MinuteOfTheYear_decode_ber, - MinuteOfTheYear_encode_der, - MinuteOfTheYear_decode_xer, - MinuteOfTheYear_encode_xer, - MinuteOfTheYear_decode_uper, - MinuteOfTheYear_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MinuteOfTheYear_tags_1, - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - &asn_PER_type_MinuteOfTheYear_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MinutesAngle.c b/src/tmx/Asn_J2735/src/r41/MinutesAngle.c deleted file mode 100644 index 0325ce70a..000000000 --- a/src/tmx/Asn_J2735/src/r41/MinutesAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MinutesAngle.h" - -int -MinutesAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 59)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MinutesAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MinutesAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MinutesAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MinutesAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MinutesAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MinutesAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MinutesAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MinutesAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MinutesAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MinutesAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { - "MinutesAngle", - "MinutesAngle", - MinutesAngle_free, - MinutesAngle_print, - MinutesAngle_constraint, - MinutesAngle_decode_ber, - MinutesAngle_encode_der, - MinutesAngle_decode_xer, - MinutesAngle_encode_xer, - MinutesAngle_decode_uper, - MinutesAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MinutesAngle_tags_1, - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - asn_DEF_MinutesAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - &asn_PER_type_MinutesAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MinutesDuration.c b/src/tmx/Asn_J2735/src/r41/MinutesDuration.c deleted file mode 100644 index 4300a6f09..000000000 --- a/src/tmx/Asn_J2735/src/r41/MinutesDuration.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MinutesDuration.h" - -int -MinutesDuration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MinutesDuration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MinutesDuration_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MinutesDuration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MinutesDuration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MinutesDuration_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MinutesDuration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MinutesDuration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MinutesDuration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MinutesDuration_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MinutesDuration_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { - "MinutesDuration", - "MinutesDuration", - MinutesDuration_free, - MinutesDuration_print, - MinutesDuration_constraint, - MinutesDuration_decode_ber, - MinutesDuration_encode_der, - MinutesDuration_decode_xer, - MinutesDuration_encode_xer, - MinutesDuration_decode_uper, - MinutesDuration_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MinutesDuration_tags_1, - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - asn_DEF_MinutesDuration_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - &asn_PER_type_MinutesDuration_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c b/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c deleted file mode 100644 index 3654a439e..000000000 --- a/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "MobilityNeeds.h" - -static asn_TYPE_member_t asn_MBR_MobilityNeeds_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityNeeds, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityNeedsType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "type" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityNeeds, count), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SeatCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "count" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityNeeds_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityNeeds_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* count */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MobilityNeeds_specs_1 = { - sizeof(struct MobilityNeeds), - offsetof(struct MobilityNeeds, _asn_ctx), - asn_MAP_MobilityNeeds_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityNeeds = { - "MobilityNeeds", - "MobilityNeeds", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MobilityNeeds_tags_1, - sizeof(asn_DEF_MobilityNeeds_tags_1) - /sizeof(asn_DEF_MobilityNeeds_tags_1[0]), /* 1 */ - asn_DEF_MobilityNeeds_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityNeeds_tags_1) - /sizeof(asn_DEF_MobilityNeeds_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_MobilityNeeds_1, - 2, /* Elements count */ - &asn_SPC_MobilityNeeds_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c b/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c deleted file mode 100644 index a4a6f936e..000000000 --- a/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "MobilityNeedsList.h" - -#include "MobilityNeeds.h" -static asn_per_constraints_t asn_PER_type_MobilityNeedsList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_MobilityNeedsList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MobilityNeeds, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityNeedsList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_MobilityNeedsList_specs_1 = { - sizeof(struct MobilityNeedsList), - offsetof(struct MobilityNeedsList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityNeedsList = { - "MobilityNeedsList", - "MobilityNeedsList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MobilityNeedsList_tags_1, - sizeof(asn_DEF_MobilityNeedsList_tags_1) - /sizeof(asn_DEF_MobilityNeedsList_tags_1[0]), /* 1 */ - asn_DEF_MobilityNeedsList_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityNeedsList_tags_1) - /sizeof(asn_DEF_MobilityNeedsList_tags_1[0]), /* 1 */ - &asn_PER_type_MobilityNeedsList_constr_1, - asn_MBR_MobilityNeedsList_1, - 1, /* Single element */ - &asn_SPC_MobilityNeedsList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c b/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c deleted file mode 100644 index d3809087e..000000000 --- a/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "MobilityNeedsType.h" - -int -MobilityNeedsType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -MobilityNeedsType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -MobilityNeedsType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MobilityNeedsType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MobilityNeedsType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MobilityNeedsType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MobilityNeedsType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MobilityNeedsType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MobilityNeedsType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MobilityNeedsType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MobilityNeedsType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MobilityNeedsType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MobilityNeedsType_value2enum_1[] = { - { 0, 14, "noSpecialNeeds" }, - { 1, 10, "wheelchair" }, - { 2, 9, "needsSeat" } -}; -static const unsigned int asn_MAP_MobilityNeedsType_enum2value_1[] = { - 2, /* needsSeat(2) */ - 0, /* noSpecialNeeds(0) */ - 1 /* wheelchair(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_MobilityNeedsType_specs_1 = { - asn_MAP_MobilityNeedsType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MobilityNeedsType_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MobilityNeedsType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityNeedsType = { - "MobilityNeedsType", - "MobilityNeedsType", - MobilityNeedsType_free, - MobilityNeedsType_print, - MobilityNeedsType_constraint, - MobilityNeedsType_decode_ber, - MobilityNeedsType_encode_der, - MobilityNeedsType_decode_xer, - MobilityNeedsType_encode_xer, - MobilityNeedsType_decode_uper, - MobilityNeedsType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MobilityNeedsType_tags_1, - sizeof(asn_DEF_MobilityNeedsType_tags_1) - /sizeof(asn_DEF_MobilityNeedsType_tags_1[0]), /* 1 */ - asn_DEF_MobilityNeedsType_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityNeedsType_tags_1) - /sizeof(asn_DEF_MobilityNeedsType_tags_1[0]), /* 1 */ - &asn_PER_type_MobilityNeedsType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MobilityNeedsType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c b/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c deleted file mode 100644 index 8e2425543..000000000 --- a/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "ModeOfTransportType.h" - -int -ModeOfTransportType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -ModeOfTransportType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -ModeOfTransportType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ModeOfTransportType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ModeOfTransportType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ModeOfTransportType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ModeOfTransportType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ModeOfTransportType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ModeOfTransportType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ModeOfTransportType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ModeOfTransportType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ModeOfTransportType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ModeOfTransportType_value2enum_1[] = { - { 0, 12, "noPreference" }, - { 1, 7, "transit" }, - { 2, 4, "taxi" }, - { 3, 9, "rideShare" } -}; -static const unsigned int asn_MAP_ModeOfTransportType_enum2value_1[] = { - 0, /* noPreference(0) */ - 3, /* rideShare(3) */ - 2, /* taxi(2) */ - 1 /* transit(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_ModeOfTransportType_specs_1 = { - asn_MAP_ModeOfTransportType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ModeOfTransportType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ModeOfTransportType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ModeOfTransportType = { - "ModeOfTransportType", - "ModeOfTransportType", - ModeOfTransportType_free, - ModeOfTransportType_print, - ModeOfTransportType_constraint, - ModeOfTransportType_decode_ber, - ModeOfTransportType_encode_der, - ModeOfTransportType_decode_xer, - ModeOfTransportType_encode_xer, - ModeOfTransportType_decode_uper, - ModeOfTransportType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ModeOfTransportType_tags_1, - sizeof(asn_DEF_ModeOfTransportType_tags_1) - /sizeof(asn_DEF_ModeOfTransportType_tags_1[0]), /* 1 */ - asn_DEF_ModeOfTransportType_tags_1, /* Same as above */ - sizeof(asn_DEF_ModeOfTransportType_tags_1) - /sizeof(asn_DEF_ModeOfTransportType_tags_1[0]), /* 1 */ - &asn_PER_type_ModeOfTransportType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ModeOfTransportType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Month.c b/src/tmx/Asn_J2735/src/r41/Month.c deleted file mode 100644 index 68157f677..000000000 --- a/src/tmx/Asn_J2735/src/r41/Month.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Month.h" - -int -Month_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Month_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Month_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Month_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Month_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Month_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Month_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Month_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Month_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Month_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Month_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Month_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Month_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Month_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Month_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Month_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Month_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Month_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Month_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Month_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Month = { - "Month", - "Month", - Month_free, - Month_print, - Month_constraint, - Month_decode_ber, - Month_encode_der, - Month_decode_xer, - Month_encode_xer, - Month_decode_uper, - Month_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Month_tags_1, - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - asn_DEF_Month_tags_1, /* Same as above */ - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - &asn_PER_type_Month_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c deleted file mode 100644 index e2d0795fe..000000000 --- a/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "MotorizedPropelledType.h" - -int -MotorizedPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -MotorizedPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -MotorizedPropelledType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MotorizedPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MotorizedPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MotorizedPropelledType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MotorizedPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MotorizedPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MotorizedPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MotorizedPropelledType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MotorizedPropelledType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 10, "wheelChair" }, - { 3, 7, "bicycle" }, - { 4, 7, "scooter" }, - { 5, 19, "selfBalancingDevice" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { - 3, /* bicycle(3) */ - 1, /* otherTypes(1) */ - 4, /* scooter(4) */ - 5, /* selfBalancingDevice(5) */ - 0, /* unavailable(0) */ - 2 /* wheelChair(2) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { - asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { - "MotorizedPropelledType", - "MotorizedPropelledType", - MotorizedPropelledType_free, - MotorizedPropelledType_print, - MotorizedPropelledType_constraint, - MotorizedPropelledType_decode_ber, - MotorizedPropelledType_encode_der, - MotorizedPropelledType_decode_xer, - MotorizedPropelledType_encode_xer, - MotorizedPropelledType_decode_uper, - MotorizedPropelledType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MotorizedPropelledType_tags_1, - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - &asn_PER_type_MotorizedPropelledType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MovementEvent.c b/src/tmx/Asn_J2735/src/r41/MovementEvent.c deleted file mode 100644 index a295790b7..000000000 --- a/src/tmx/Asn_J2735/src/r41/MovementEvent.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MovementEvent.h" - -static asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementPhaseState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "eventState" - }, - { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeChangeDetails, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timing" - }, - { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speeds" - }, - { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalMovementEvent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; -static ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { - sizeof(struct MovementEvent), - offsetof(struct MovementEvent, _asn_ctx), - asn_MAP_MovementEvent_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_MovementEvent_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEvent = { - "MovementEvent", - "MovementEvent", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MovementEvent_tags_1, - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - asn_DEF_MovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_MovementEvent_1, - 4, /* Elements count */ - &asn_SPC_MovementEvent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MovementEventList.c b/src/tmx/Asn_J2735/src/r41/MovementEventList.c deleted file mode 100644 index 62fe0ef7b..000000000 --- a/src/tmx/Asn_J2735/src/r41/MovementEventList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MovementEventList.h" - -static asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementEvent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { - sizeof(struct MovementEventList), - offsetof(struct MovementEventList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEventList = { - "MovementEventList", - "MovementEventList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MovementEventList_tags_1, - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - asn_DEF_MovementEventList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - &asn_PER_type_MovementEventList_constr_1, - asn_MBR_MovementEventList_1, - 1, /* Single element */ - &asn_SPC_MovementEventList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MovementList.c b/src/tmx/Asn_J2735/src/r41/MovementList.c deleted file mode 100644 index c5ace2564..000000000 --- a/src/tmx/Asn_J2735/src/r41/MovementList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MovementList.h" - -static asn_per_constraints_t asn_PER_type_MovementList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_MovementList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { - sizeof(struct MovementList), - offsetof(struct MovementList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementList = { - "MovementList", - "MovementList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MovementList_tags_1, - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - asn_DEF_MovementList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - &asn_PER_type_MovementList_constr_1, - asn_MBR_MovementList_1, - 1, /* Single element */ - &asn_SPC_MovementList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c b/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c deleted file mode 100644 index e19e2b69c..000000000 --- a/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MovementPhaseState.h" - -int -MovementPhaseState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -MovementPhaseState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -MovementPhaseState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MovementPhaseState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MovementPhaseState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MovementPhaseState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MovementPhaseState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MovementPhaseState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MovementPhaseState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MovementPhaseState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MovementPhaseState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 4, "dark" }, - { 2, 17, "stop-Then-Proceed" }, - { 3, 15, "stop-And-Remain" }, - { 4, 12, "pre-Movement" }, - { 5, 27, "permissive-Movement-Allowed" }, - { 6, 26, "protected-Movement-Allowed" }, - { 7, 20, "permissive-clearance" }, - { 8, 19, "protected-clearance" }, - { 9, 27, "caution-Conflicting-Traffic" } -}; -static unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { - 9, /* caution-Conflicting-Traffic(9) */ - 1, /* dark(1) */ - 5, /* permissive-Movement-Allowed(5) */ - 7, /* permissive-clearance(7) */ - 4, /* pre-Movement(4) */ - 6, /* protected-Movement-Allowed(6) */ - 8, /* protected-clearance(8) */ - 3, /* stop-And-Remain(3) */ - 2, /* stop-Then-Proceed(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { - asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { - "MovementPhaseState", - "MovementPhaseState", - MovementPhaseState_free, - MovementPhaseState_print, - MovementPhaseState_constraint, - MovementPhaseState_decode_ber, - MovementPhaseState_encode_der, - MovementPhaseState_decode_xer, - MovementPhaseState_encode_xer, - MovementPhaseState_decode_uper, - MovementPhaseState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MovementPhaseState_tags_1, - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - asn_DEF_MovementPhaseState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - &asn_PER_type_MovementPhaseState_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MovementState.c b/src/tmx/Asn_J2735/src/r41/MovementState.c deleted file mode 100644 index 4f26c599a..000000000 --- a/src/tmx/Asn_J2735/src/r41/MovementState.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MovementState.h" - -static asn_TYPE_member_t asn_MBR_MovementState_1[] = { - { ATF_POINTER, 1, offsetof(struct MovementState, movementName), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "movementName" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "signalGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementEventList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "state-time-speed" - }, - { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maneuverAssistList" - }, - { ATF_POINTER, 1, offsetof(struct MovementState, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalMovementState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; -static ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { - sizeof(struct MovementState), - offsetof(struct MovementState, _asn_ctx), - asn_MAP_MovementState_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_MovementState_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* Start extensions */ - 6 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementState = { - "MovementState", - "MovementState", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MovementState_tags_1, - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - asn_DEF_MovementState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_MovementState_1, - 5, /* Elements count */ - &asn_SPC_MovementState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MsgCRC.c b/src/tmx/Asn_J2735/src/r41/MsgCRC.c deleted file mode 100644 index ba56537d1..000000000 --- a/src/tmx/Asn_J2735/src/r41/MsgCRC.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MsgCRC.h" - -int -MsgCRC_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -MsgCRC_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -MsgCRC_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MsgCRC_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MsgCRC_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MsgCRC_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MsgCRC_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MsgCRC_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MsgCRC_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MsgCRC_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MsgCRC_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MsgCRC_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MsgCRC = { - "MsgCRC", - "MsgCRC", - MsgCRC_free, - MsgCRC_print, - MsgCRC_constraint, - MsgCRC_decode_ber, - MsgCRC_encode_der, - MsgCRC_decode_xer, - MsgCRC_encode_xer, - MsgCRC_decode_uper, - MsgCRC_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MsgCRC_tags_1, - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - asn_DEF_MsgCRC_tags_1, /* Same as above */ - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - &asn_PER_type_MsgCRC_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MsgCount.c b/src/tmx/Asn_J2735/src/r41/MsgCount.c deleted file mode 100644 index 122b7d68f..000000000 --- a/src/tmx/Asn_J2735/src/r41/MsgCount.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MsgCount.h" - -int -MsgCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -MsgCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -MsgCount_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MsgCount_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MsgCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MsgCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MsgCount_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MsgCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MsgCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MsgCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MsgCount_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MsgCount_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MsgCount_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MsgCount = { - "MsgCount", - "MsgCount", - MsgCount_free, - MsgCount_print, - MsgCount_constraint, - MsgCount_decode_ber, - MsgCount_encode_der, - MsgCount_decode_xer, - MsgCount_encode_xer, - MsgCount_decode_uper, - MsgCount_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MsgCount_tags_1, - sizeof(asn_DEF_MsgCount_tags_1) - /sizeof(asn_DEF_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_MsgCount_tags_1) - /sizeof(asn_DEF_MsgCount_tags_1[0]), /* 1 */ - &asn_PER_type_MsgCount_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c deleted file mode 100644 index 7a2fb00b1..000000000 --- a/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MultiVehicleResponse.h" - -int -MultiVehicleResponse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -MultiVehicleResponse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -MultiVehicleResponse_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -MultiVehicleResponse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -MultiVehicleResponse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -MultiVehicleResponse_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -MultiVehicleResponse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -MultiVehicleResponse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -MultiVehicleResponse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -MultiVehicleResponse_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - MultiVehicleResponse_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "singleVehicle" }, - { 2, 12, "multiVehicle" }, - { 3, 8, "reserved" } -}; -static unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { - 2, /* multiVehicle(2) */ - 3, /* reserved(3) */ - 1, /* singleVehicle(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { - asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { - "MultiVehicleResponse", - "MultiVehicleResponse", - MultiVehicleResponse_free, - MultiVehicleResponse_print, - MultiVehicleResponse_constraint, - MultiVehicleResponse_decode_ber, - MultiVehicleResponse_encode_der, - MultiVehicleResponse_decode_xer, - MultiVehicleResponse_encode_xer, - MultiVehicleResponse_decode_uper, - MultiVehicleResponse_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_MultiVehicleResponse_tags_1, - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - &asn_PER_type_MultiVehicleResponse_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c b/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c deleted file mode 100644 index 57e3a54d1..000000000 --- a/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NMEA-Corrections.h" - -static int -memb_wdCount_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_wdCount_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NMEA_Corrections_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, rev), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Revision, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rev" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, msg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_MsgType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msg" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, wdCount), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_wdCount_constraint_1, - &asn_PER_memb_wdCount_constr_5, - 0, - "wdCount" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, payload), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Payload, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "payload" - }, -}; -static ber_tlv_tag_t asn_DEF_NMEA_Corrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_NMEA_Corrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* payload */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_NMEA_Corrections_specs_1 = { - sizeof(struct NMEA_Corrections), - offsetof(struct NMEA_Corrections, _asn_ctx), - asn_MAP_NMEA_Corrections_tag2el_1, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 4, /* Start extensions */ - 6 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Corrections = { - "NMEA-Corrections", - "NMEA-Corrections", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NMEA_Corrections_tags_1, - sizeof(asn_DEF_NMEA_Corrections_tags_1) - /sizeof(asn_DEF_NMEA_Corrections_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Corrections_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Corrections_tags_1) - /sizeof(asn_DEF_NMEA_Corrections_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_NMEA_Corrections_1, - 5, /* Elements count */ - &asn_SPC_NMEA_Corrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c deleted file mode 100644 index f667cf655..000000000 --- a/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NMEA-MsgType.h" - -int -NMEA_MsgType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -NMEA_MsgType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -NMEA_MsgType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NMEA_MsgType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NMEA_MsgType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NMEA_MsgType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NMEA_MsgType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NMEA_MsgType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NMEA_MsgType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NMEA_MsgType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NMEA_MsgType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { - "NMEA-MsgType", - "NMEA-MsgType", - NMEA_MsgType_free, - NMEA_MsgType_print, - NMEA_MsgType_constraint, - NMEA_MsgType_decode_ber, - NMEA_MsgType_encode_der, - NMEA_MsgType_decode_xer, - NMEA_MsgType_encode_xer, - NMEA_MsgType_decode_uper, - NMEA_MsgType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NMEA_MsgType_tags_1, - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - &asn_PER_type_NMEA_MsgType_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c b/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c deleted file mode 100644 index e128bf077..000000000 --- a/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NMEA-Payload.h" - -int -NMEA_Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -NMEA_Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -NMEA_Payload_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NMEA_Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NMEA_Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NMEA_Payload_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NMEA_Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NMEA_Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NMEA_Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NMEA_Payload_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NMEA_Payload_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { - "NMEA-Payload", - "NMEA-Payload", - NMEA_Payload_free, - NMEA_Payload_print, - NMEA_Payload_constraint, - NMEA_Payload_decode_ber, - NMEA_Payload_encode_der, - NMEA_Payload_decode_xer, - NMEA_Payload_encode_xer, - NMEA_Payload_decode_uper, - NMEA_Payload_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NMEA_Payload_tags_1, - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Payload_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - &asn_PER_type_NMEA_Payload_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c b/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c deleted file mode 100644 index 2caca3085..000000000 --- a/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NMEA-Revision.h" - -int -NMEA_Revision_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -NMEA_Revision_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -NMEA_Revision_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NMEA_Revision_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NMEA_Revision_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NMEA_Revision_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NMEA_Revision_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NMEA_Revision_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NMEA_Revision_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NMEA_Revision_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NMEA_Revision_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "reserved" }, - { 10, 4, "rev1" }, - { 20, 4, "rev2" }, - { 30, 4, "rev3" }, - { 40, 4, "rev4" }, - { 50, 4, "rev5" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { - 1, /* reserved(1) */ - 2, /* rev1(10) */ - 3, /* rev2(20) */ - 4, /* rev3(30) */ - 5, /* rev4(40) */ - 6, /* rev5(50) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { - asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { - "NMEA-Revision", - "NMEA-Revision", - NMEA_Revision_free, - NMEA_Revision_print, - NMEA_Revision_constraint, - NMEA_Revision_decode_ber, - NMEA_Revision_encode_der, - NMEA_Revision_decode_xer, - NMEA_Revision_encode_xer, - NMEA_Revision_decode_uper, - NMEA_Revision_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NMEA_Revision_tags_1, - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - &asn_PER_type_NMEA_Revision_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c b/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c deleted file mode 100644 index 881b308b9..000000000 --- a/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NTCIPVehicleclass.h" - -int -NTCIPVehicleclass_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -NTCIPVehicleclass_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -NTCIPVehicleclass_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NTCIPVehicleclass_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NTCIPVehicleclass_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NTCIPVehicleclass_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NTCIPVehicleclass_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NTCIPVehicleclass_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NTCIPVehicleclass_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NTCIPVehicleclass_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NTCIPVehicleclass_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_NTCIPVehicleclass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NTCIPVehicleclass = { - "NTCIPVehicleclass", - "NTCIPVehicleclass", - NTCIPVehicleclass_free, - NTCIPVehicleclass_print, - NTCIPVehicleclass_constraint, - NTCIPVehicleclass_decode_ber, - NTCIPVehicleclass_encode_der, - NTCIPVehicleclass_decode_xer, - NTCIPVehicleclass_encode_xer, - NTCIPVehicleclass_decode_uper, - NTCIPVehicleclass_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NTCIPVehicleclass_tags_1, - sizeof(asn_DEF_NTCIPVehicleclass_tags_1) - /sizeof(asn_DEF_NTCIPVehicleclass_tags_1[0]), /* 1 */ - asn_DEF_NTCIPVehicleclass_tags_1, /* Same as above */ - sizeof(asn_DEF_NTCIPVehicleclass_tags_1) - /sizeof(asn_DEF_NTCIPVehicleclass_tags_1[0]), /* 1 */ - &asn_PER_type_NTCIPVehicleclass_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c b/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c deleted file mode 100644 index 1554220f8..000000000 --- a/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c +++ /dev/null @@ -1,207 +0,0 @@ -/*- - * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeEnumerated basic type description. - */ -static ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { - "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ - "ENUMERATED", - NativeInteger_free, - NativeInteger_print, - asn_generic_no_constraint, - NativeInteger_decode_ber, - NativeInteger_encode_der, - NativeInteger_decode_xer, - NativeEnumerated_encode_xer, - NativeEnumerated_decode_uper, - NativeEnumerated_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NativeEnumerated_tags, - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - asn_DEF_NativeEnumerated_tags, /* Same as above */ - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -asn_enc_rval_t -NativeEnumerated_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er; - const long *native = (const long *)sptr; - const asn_INTEGER_enum_map_t *el; - - (void)ilevel; - (void)flags; - - if(!native) _ASN_ENCODE_FAILED; - - el = INTEGER_map_value2enum(specs, *native); - if(el) { - size_t srcsize = el->enum_len + 5; - char *src = (char *)alloca(srcsize); - - er.encoded = snprintf(src, srcsize, "<%s/>", el->enum_name); - assert(er.encoded > 0 && (size_t)er.encoded < srcsize); - if(cb(src, er.encoded, app_key) < 0) _ASN_ENCODE_FAILED; - _ASN_ENCODED_OK(er); - } else { - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - _ASN_ENCODE_FAILED; - } -} - -asn_dec_rval_t -NativeEnumerated_decode_uper(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - asn_INTEGER_specifics_t *specs = (asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - long *native = (long *)*sptr; - asn_per_constraint_t *ct; - long value; - - (void)opt_codec_ctx; - - if(constraints) ct = &constraints->value; - else if(td->per_constraints) ct = &td->per_constraints->value; - else _ASN_DECODE_FAILED; /* Mandatory! */ - if(!specs) _ASN_DECODE_FAILED; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) _ASN_DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); - - if(ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) _ASN_DECODE_STARVED; - if(inext) ct = 0; - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) _ASN_DECODE_STARVED; - if(value >= (specs->extension - ? specs->extension - 1 : specs->map_count)) - _ASN_DECODE_FAILED; - } else { - if(!specs->extension) - _ASN_DECODE_FAILED; - /* - * X.691, #10.6: normally small non-negative whole number; - */ - value = uper_get_nsnnwn(pd); - if(value < 0) _ASN_DECODE_STARVED; - value += specs->extension - 1; - if(value >= specs->map_count) - _ASN_DECODE_FAILED; - } - - *native = specs->value2enum[value].nat_value; - ASN_DEBUG("Decoded %s = %ld", td->name, *native); - - return rval; -} - -static int -NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { - const asn_INTEGER_enum_map_t *a = ap; - const asn_INTEGER_enum_map_t *b = bp; - if(a->nat_value == b->nat_value) - return 0; - if(a->nat_value < b->nat_value) - return -1; - return 1; -} - -asn_enc_rval_t -NativeEnumerated_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_INTEGER_specifics_t *specs = (asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er; - long native, value; - asn_per_constraint_t *ct; - int inext = 0; - asn_INTEGER_enum_map_t key; - asn_INTEGER_enum_map_t *kf; - - if(!sptr) _ASN_ENCODE_FAILED; - if(!specs) _ASN_ENCODE_FAILED; - - if(constraints) ct = &constraints->value; - else if(td->per_constraints) ct = &td->per_constraints->value; - else _ASN_ENCODE_FAILED; /* Mandatory! */ - - ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); - - er.encoded = 0; - - native = *(long *)sptr; - if(native < 0) _ASN_ENCODE_FAILED; - - key.nat_value = native; - kf = bsearch(&key, specs->value2enum, specs->map_count, - sizeof(key), NativeEnumerated__compar_value2enum); - if(!kf) { - ASN_DEBUG("No element corresponds to %ld", native); - _ASN_ENCODE_FAILED; - } - value = kf - specs->value2enum; - - if(ct->range_bits >= 0) { - int cmpWith = specs->extension - ? specs->extension - 1 : specs->map_count; - if(value >= cmpWith) - inext = 1; - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - _ASN_ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - _ASN_ENCODE_FAILED; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, value, ct->range_bits)) - _ASN_ENCODE_FAILED; - _ASN_ENCODED_OK(er); - } - - if(!specs->extension) - _ASN_ENCODE_FAILED; - - /* - * X.691, #10.6: normally small non-negative whole number; - */ - ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", - value, specs->extension, inext, - value - (inext ? (specs->extension - 1) : 0)); - if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) - _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(er); -} - diff --git a/src/tmx/Asn_J2735/src/r41/NativeInteger.c b/src/tmx/Asn_J2735/src/r41/NativeInteger.c deleted file mode 100644 index cffd0be8e..000000000 --- a/src/tmx/Asn_J2735/src/r41/NativeInteger.c +++ /dev/null @@ -1,332 +0,0 @@ -/*- - * Copyright (c) 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeInteger basic type description. - */ -static ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NativeInteger = { - "INTEGER", /* The ASN.1 type is still INTEGER */ - "INTEGER", - NativeInteger_free, - NativeInteger_print, - asn_generic_no_constraint, - NativeInteger_decode_ber, - NativeInteger_encode_der, - NativeInteger_decode_xer, - NativeInteger_encode_xer, - NativeInteger_decode_uper, /* Unaligned PER decoder */ - NativeInteger_encode_uper, /* Unaligned PER encoder */ - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NativeInteger_tags, - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - asn_DEF_NativeInteger_tags, /* Same as above */ - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Decode INTEGER type. - */ -asn_dec_rval_t -NativeInteger_decode_ber(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - void **nint_ptr, const void *buf_ptr, size_t size, int tag_mode) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - long *native = (long *)*nint_ptr; - asn_dec_rval_t rval; - ber_tlv_len_t length; - - /* - * If the structure is not there, allocate it. - */ - if(native == NULL) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(native == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * ASN.1 encoded INTEGER: buf_ptr, length - * Fill the native, at the same time checking for overflow. - * If overflow occured, return with RC_FAIL. - */ - { - INTEGER_t tmp; - union { - const void *constbuf; - void *nonconstbuf; - } unconst_buf; - long l; - - unconst_buf.constbuf = buf_ptr; - tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; - tmp.size = length; - - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&tmp, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - - *native = l; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", - (long)rval.consumed, (long)length, td->name, (long)*native); - - return rval; -} - -/* - * Encode the NativeInteger using the standard INTEGER type DER encoder. - */ -asn_enc_rval_t -NativeInteger_encode_der(asn_TYPE_descriptor_t *sd, void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - unsigned long native = *(unsigned long *)ptr; /* Disable sign ext. */ - asn_enc_rval_t erval; - INTEGER_t tmp; - -#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ - - tmp.buf = (uint8_t *)&native; - tmp.size = sizeof(native); - -#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ - uint8_t buf[sizeof(native)]; - uint8_t *p; - - /* Prepare a fake INTEGER */ - for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) - *p = (uint8_t)native; - - tmp.buf = buf; - tmp.size = sizeof(buf); -#endif /* WORDS_BIGENDIAN */ - - /* Encode fake INTEGER */ - erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); - if(erval.encoded == -1) { - assert(erval.structure_ptr == &tmp); - erval.structure_ptr = ptr; - } - return erval; -} - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -asn_dec_rval_t -NativeInteger_decode_xer(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - INTEGER_t st; - void *st_ptr = (void *)&st; - long *native = (long *)*sptr; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) _ASN_DECODE_FAILED; - } - - memset(&st, 0, sizeof(st)); - rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, - opt_mname, buf_ptr, size); - if(rval.code == RC_OK) { - long l; - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&st, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - } else { - *native = l; - } - } else { - /* - * Cannot restart from the middle; - * there is no place to save state in the native type. - * Request a continuation from the very beginning. - */ - rval.consumed = 0; - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); - return rval; -} - - -asn_enc_rval_t -NativeInteger_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; /* Enough for 64-bit int */ - asn_enc_rval_t er; - const long *native = (const long *)sptr; - - (void)ilevel; - (void)flags; - - if(!native) _ASN_ENCODE_FAILED; - - er.encoded = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) - ? "%lu" : "%ld", *native); - if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) - || cb(scratch, er.encoded, app_key) < 0) - _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(er); -} - -asn_dec_rval_t -NativeInteger_decode_uper(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - long *native = (long *)*sptr; - INTEGER_t tmpint; - void *tmpintptr = &tmpint; - - (void)opt_codec_ctx; - ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) _ASN_DECODE_FAILED; - } - - memset(&tmpint, 0, sizeof tmpint); - rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, - &tmpintptr, pd); - if(rval.code == RC_OK) { - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) - : asn_INTEGER2long(&tmpint, native)) - rval.code = RC_FAIL; - else - ASN_DEBUG("NativeInteger %s got value %ld", - td->name, *native); - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - - return rval; -} - -asn_enc_rval_t -NativeInteger_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er; - long native; - INTEGER_t tmpint; - - if(!sptr) _ASN_ENCODE_FAILED; - - native = *(long *)sptr; - - ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); - - memset(&tmpint, 0, sizeof(tmpint)); - if((specs&&specs->field_unsigned) - ? asn_ulong2INTEGER(&tmpint, native) - : asn_long2INTEGER(&tmpint, native)) - _ASN_ENCODE_FAILED; - er = INTEGER_encode_uper(td, constraints, &tmpint, po); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; -} - -/* - * INTEGER specific human-readable output. - */ -int -NativeInteger_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; - const long *native = (const long *)sptr; - char scratch[32]; /* Enough for 64-bit int */ - int ret; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(native) { - ret = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) - ? "%lu" : "%ld", *native); - assert(ret > 0 && (size_t)ret < sizeof(scratch)); - return (cb(scratch, ret, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -NativeInteger_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { - - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", - td->name, contents_only, ptr); - - if(!contents_only) { - FREEMEM(ptr); - } -} - diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c deleted file mode 100644 index 7039148a6..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-LLdms-48b.h" - -static asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { - sizeof(struct Node_LLdms_48b), - offsetof(struct Node_LLdms_48b, _asn_ctx), - asn_MAP_Node_LLdms_48b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { - "Node-LLdms-48b", - "Node-LLdms-48b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_LLdms_48b_tags_1, - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_LLdms_48b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c deleted file mode 100644 index a39433577..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-LLdms-80b.h" - -static asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { - sizeof(struct Node_LLdms_80b), - offsetof(struct Node_LLdms_80b, _asn_ctx), - asn_MAP_Node_LLdms_80b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { - "Node-LLdms-80b", - "Node-LLdms-80b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_LLdms_80b_tags_1, - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_LLdms_80b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c deleted file mode 100644 index 23c1f4e13..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-LLmD-64b.h" - -static asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { - sizeof(struct Node_LLmD_64b), - offsetof(struct Node_LLmD_64b, _asn_ctx), - asn_MAP_Node_LLmD_64b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { - "Node-LLmD-64b", - "Node-LLmD-64b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_LLmD_64b_tags_1, - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_LLmD_64b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c deleted file mode 100644 index 63dbb7f73..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-20b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { - sizeof(struct Node_XY_20b), - offsetof(struct Node_XY_20b, _asn_ctx), - asn_MAP_Node_XY_20b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { - "Node-XY-20b", - "Node-XY-20b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_20b_tags_1, - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_20b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_20b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c deleted file mode 100644 index f8ed57a6d..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-22b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { - sizeof(struct Node_XY_22b), - offsetof(struct Node_XY_22b, _asn_ctx), - asn_MAP_Node_XY_22b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { - "Node-XY-22b", - "Node-XY-22b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_22b_tags_1, - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_22b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_22b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c deleted file mode 100644 index 62a13e852..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-24b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { - sizeof(struct Node_XY_24b), - offsetof(struct Node_XY_24b, _asn_ctx), - asn_MAP_Node_XY_24b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { - "Node-XY-24b", - "Node-XY-24b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_24b_tags_1, - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_24b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_24b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c deleted file mode 100644 index 5a15d3093..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-26b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { - sizeof(struct Node_XY_26b), - offsetof(struct Node_XY_26b, _asn_ctx), - asn_MAP_Node_XY_26b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { - "Node-XY-26b", - "Node-XY-26b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_26b_tags_1, - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_26b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_26b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c deleted file mode 100644 index ad9837eee..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-28b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { - sizeof(struct Node_XY_28b), - offsetof(struct Node_XY_28b, _asn_ctx), - asn_MAP_Node_XY_28b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { - "Node-XY-28b", - "Node-XY-28b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_28b_tags_1, - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_28b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_28b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c deleted file mode 100644 index 629ad4793..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node-XY-32b.h" - -static asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "y" - }, -}; -static ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { - sizeof(struct Node_XY_32b), - offsetof(struct Node_XY_32b, _asn_ctx), - asn_MAP_Node_XY_32b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { - "Node-XY-32b", - "Node-XY-32b", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_XY_32b_tags_1, - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_32b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_XY_32b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Node.c b/src/tmx/Asn_J2735/src/r41/Node.c deleted file mode 100644 index 083d8c234..000000000 --- a/src/tmx/Asn_J2735/src/r41/Node.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Node.h" - -static asn_TYPE_member_t asn_MBR_Node_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node, delta), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPoint, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "delta" - }, - { ATF_POINTER, 1, offsetof(struct Node, attributes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "attributes" - }, -}; -static int asn_MAP_Node_oms_1[] = { 1 }; -static ber_tlv_tag_t asn_DEF_Node_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Node_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Node_specs_1 = { - sizeof(struct Node), - offsetof(struct Node, _asn_ctx), - asn_MAP_Node_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_Node_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Node = { - "Node", - "Node", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Node_tags_1, - sizeof(asn_DEF_Node_tags_1) - /sizeof(asn_DEF_Node_tags_1[0]), /* 1 */ - asn_DEF_Node_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_tags_1) - /sizeof(asn_DEF_Node_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Node_1, - 2, /* Elements count */ - &asn_SPC_Node_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttribute.c b/src/tmx/Asn_J2735/src/r41/NodeAttribute.c deleted file mode 100644 index 11a1999d4..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeAttribute.c +++ /dev/null @@ -1,169 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeAttribute.h" - -int -NodeAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -NodeAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -NodeAttribute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NodeAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NodeAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NodeAttribute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NodeAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NodeAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NodeAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NodeAttribute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NodeAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NodeAttribute_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_NodeAttribute_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 8, "stopLine" }, - { 2, 16, "roundedCapStyleA" }, - { 3, 16, "roundedCapStyleB" }, - { 4, 10, "mergePoint" }, - { 5, 12, "divergePoint" }, - { 6, 18, "downstreamStopLine" }, - { 7, 19, "downstreamStartNode" }, - { 8, 15, "closedToTraffic" }, - { 9, 10, "safeIsland" }, - { 10, 20, "curbPresentAtStepOff" }, - { 11, 14, "hydrantPresent" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_NodeAttribute_enum2value_1[] = { - 8, /* closedToTraffic(8) */ - 10, /* curbPresentAtStepOff(10) */ - 5, /* divergePoint(5) */ - 7, /* downstreamStartNode(7) */ - 6, /* downstreamStopLine(6) */ - 11, /* hydrantPresent(11) */ - 4, /* mergePoint(4) */ - 0, /* reserved(0) */ - 2, /* roundedCapStyleA(2) */ - 3, /* roundedCapStyleB(3) */ - 9, /* safeIsland(9) */ - 1 /* stopLine(1) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_NodeAttribute_specs_1 = { - asn_MAP_NodeAttribute_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NodeAttribute_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 13, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_NodeAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttribute = { - "NodeAttribute", - "NodeAttribute", - NodeAttribute_free, - NodeAttribute_print, - NodeAttribute_constraint, - NodeAttribute_decode_ber, - NodeAttribute_encode_der, - NodeAttribute_decode_xer, - NodeAttribute_encode_xer, - NodeAttribute_decode_uper, - NodeAttribute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NodeAttribute_tags_1, - sizeof(asn_DEF_NodeAttribute_tags_1) - /sizeof(asn_DEF_NodeAttribute_tags_1[0]), /* 1 */ - asn_DEF_NodeAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttribute_tags_1) - /sizeof(asn_DEF_NodeAttribute_tags_1[0]), /* 1 */ - &asn_PER_type_NodeAttribute_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NodeAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c b/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c deleted file mode 100644 index 54fff39dd..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeAttributeList.h" - -static asn_per_constraints_t asn_PER_type_NodeAttributeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeAttributeList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_NodeAttribute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_NodeAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_NodeAttributeList_specs_1 = { - sizeof(struct NodeAttributeList), - offsetof(struct NodeAttributeList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeList = { - "NodeAttributeList", - "NodeAttributeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NodeAttributeList_tags_1, - sizeof(asn_DEF_NodeAttributeList_tags_1) - /sizeof(asn_DEF_NodeAttributeList_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeList_tags_1) - /sizeof(asn_DEF_NodeAttributeList_tags_1[0]), /* 1 */ - &asn_PER_type_NodeAttributeList_constr_1, - asn_MBR_NodeAttributeList_1, - 1, /* Single element */ - &asn_SPC_NodeAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c b/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c deleted file mode 100644 index f7296461d..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeAttributeSet.h" - -static asn_TYPE_member_t asn_MBR_NodeAttributeSet_1[] = { - { ATF_POINTER, 7, offsetof(struct NodeAttributeSet, localNode), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "localNode" - }, - { ATF_POINTER, 6, offsetof(struct NodeAttributeSet, disabled), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "disabled" - }, - { ATF_POINTER, 5, offsetof(struct NodeAttributeSet, enabled), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "enabled" - }, - { ATF_POINTER, 4, offsetof(struct NodeAttributeSet, data), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDataAttributeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "data" - }, - { ATF_POINTER, 3, offsetof(struct NodeAttributeSet, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalNodeAttributeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, - { ATF_POINTER, 2, offsetof(struct NodeAttributeSet, dWidth), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dWidth" - }, - { ATF_POINTER, 1, offsetof(struct NodeAttributeSet, dElevation), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dElevation" - }, -}; -static int asn_MAP_NodeAttributeSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static ber_tlv_tag_t asn_DEF_NodeAttributeSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_NodeAttributeSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* regional */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dWidth */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* dElevation */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSet_specs_1 = { - sizeof(struct NodeAttributeSet), - offsetof(struct NodeAttributeSet, _asn_ctx), - asn_MAP_NodeAttributeSet_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_NodeAttributeSet_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 6, /* Start extensions */ - 8 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeSet = { - "NodeAttributeSet", - "NodeAttributeSet", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NodeAttributeSet_tags_1, - sizeof(asn_DEF_NodeAttributeSet_tags_1) - /sizeof(asn_DEF_NodeAttributeSet_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeSet_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeSet_tags_1) - /sizeof(asn_DEF_NodeAttributeSet_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_NodeAttributeSet_1, - 7, /* Elements count */ - &asn_SPC_NodeAttributeSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeList.c b/src/tmx/Asn_J2735/src/r41/NodeList.c deleted file mode 100644 index f2e840486..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeList.h" - -static asn_per_constraints_t asn_PER_type_NodeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_Offsets, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_NodeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_NodeList_specs_1 = { - sizeof(struct NodeList), - offsetof(struct NodeList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeList = { - "NodeList", - "NodeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NodeList_tags_1, - sizeof(asn_DEF_NodeList_tags_1) - /sizeof(asn_DEF_NodeList_tags_1[0]), /* 1 */ - asn_DEF_NodeList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeList_tags_1) - /sizeof(asn_DEF_NodeList_tags_1[0]), /* 1 */ - &asn_PER_type_NodeList_constr_1, - asn_MBR_NodeList_1, - 1, /* Single element */ - &asn_SPC_NodeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeList2.c b/src/tmx/Asn_J2735/src/r41/NodeList2.c deleted file mode 100644 index 70360a712..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeList2.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeList2.h" - -static asn_per_constraints_t asn_PER_type_NodeList2_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeList2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeList2, choice.nodes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nodes" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeList2, choice.computed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ComputedLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "computed" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_NodeList2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ -}; -static asn_CHOICE_specifics_t asn_SPC_NodeList2_specs_1 = { - sizeof(struct NodeList2), - offsetof(struct NodeList2, _asn_ctx), - offsetof(struct NodeList2, present), - sizeof(((struct NodeList2 *)0)->present), - asn_MAP_NodeList2_tag2el_1, - 2, /* Count of tags in the map */ - 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeList2 = { - "NodeList2", - "NodeList2", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_NodeList2_constr_1, - asn_MBR_NodeList2_1, - 2, /* Elements count */ - &asn_SPC_NodeList2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c deleted file mode 100644 index 537b9e2a3..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeOffsetPoint.h" - -static asn_per_constraints_t asn_PER_type_NodeOffsetPoint_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeOffsetPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_20b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY1" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_22b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY2" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY3" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_26b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY4" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_28b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY5" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_32b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-XY6" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_LatLon), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLmD_64b, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-LatLon" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_Regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalNodeOffsetPoint, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node-Regional" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_NodeOffsetPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* node-Regional */ -}; -static asn_CHOICE_specifics_t asn_SPC_NodeOffsetPoint_specs_1 = { - sizeof(struct NodeOffsetPoint), - offsetof(struct NodeOffsetPoint, _asn_ctx), - offsetof(struct NodeOffsetPoint, present), - sizeof(((struct NodeOffsetPoint *)0)->present), - asn_MAP_NodeOffsetPoint_tag2el_1, - 8, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPoint = { - "NodeOffsetPoint", - "NodeOffsetPoint", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_NodeOffsetPoint_constr_1, - asn_MBR_NodeOffsetPoint_1, - 8, /* Elements count */ - &asn_SPC_NodeOffsetPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NodeSet.c b/src/tmx/Asn_J2735/src/r41/NodeSet.c deleted file mode 100644 index f8cd69c31..000000000 --- a/src/tmx/Asn_J2735/src/r41/NodeSet.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "NodeSet.h" - -static asn_per_constraints_t asn_PER_type_NodeSet_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeSet_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Node, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_NodeSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_NodeSet_specs_1 = { - sizeof(struct NodeSet), - offsetof(struct NodeSet, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeSet = { - "NodeSet", - "NodeSet", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NodeSet_tags_1, - sizeof(asn_DEF_NodeSet_tags_1) - /sizeof(asn_DEF_NodeSet_tags_1[0]), /* 1 */ - asn_DEF_NodeSet_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeSet_tags_1) - /sizeof(asn_DEF_NodeSet_tags_1[0]), /* 1 */ - &asn_PER_type_NodeSet_constr_1, - asn_MBR_NodeSet_1, - 1, /* Single element */ - &asn_SPC_NodeSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c deleted file mode 100644 index 95a2fa378..000000000 --- a/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "NumberOfParticipantsInCluster.h" - -int -NumberOfParticipantsInCluster_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -NumberOfParticipantsInCluster_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -NumberOfParticipantsInCluster_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -NumberOfParticipantsInCluster_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -NumberOfParticipantsInCluster_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -NumberOfParticipantsInCluster_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -NumberOfParticipantsInCluster_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -NumberOfParticipantsInCluster_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -NumberOfParticipantsInCluster_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "small" }, - { 2, 6, "medium" }, - { 3, 5, "large" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { - 3, /* large(3) */ - 2, /* medium(2) */ - 1, /* small(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { - asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { - "NumberOfParticipantsInCluster", - "NumberOfParticipantsInCluster", - NumberOfParticipantsInCluster_free, - NumberOfParticipantsInCluster_print, - NumberOfParticipantsInCluster_constraint, - NumberOfParticipantsInCluster_decode_ber, - NumberOfParticipantsInCluster_encode_der, - NumberOfParticipantsInCluster_decode_xer, - NumberOfParticipantsInCluster_encode_xer, - NumberOfParticipantsInCluster_decode_uper, - NumberOfParticipantsInCluster_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_NumberOfParticipantsInCluster_tags_1, - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - &asn_PER_type_NumberOfParticipantsInCluster_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c b/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c deleted file mode 100644 index f2eec13aa..000000000 --- a/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c +++ /dev/null @@ -1,1805 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ -#include - -/* - * OCTET STRING basic type description. - */ -static ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -static asn_OCTET_STRING_specifics_t asn_DEF_OCTET_STRING_specs = { - sizeof(OCTET_STRING_t), - offsetof(OCTET_STRING_t, _asn_ctx), - ASN_OSUBV_STR -}; -static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { - { APC_CONSTRAINED, 8, 8, 0, 255 }, - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, - 0, 0 -}; -asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { - "OCTET STRING", /* Canonical name */ - "OCTET_STRING", /* XML tag name */ - OCTET_STRING_free, - OCTET_STRING_print, /* non-ascii stuff, generally */ - asn_generic_no_constraint, - OCTET_STRING_decode_ber, - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_hex, - OCTET_STRING_encode_xer, - OCTET_STRING_decode_uper, /* Unaligned PER decoder */ - OCTET_STRING_encode_uper, /* Unaligned PER encoder */ - 0, /* Use generic outmost tag fetcher */ - asn_DEF_OCTET_STRING_tags, - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - asn_DEF_OCTET_STRING_tags, /* Same as above */ - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_DEF_OCTET_STRING_specs -}; - -#undef _CH_PHASE -#undef NEXT_PHASE -#undef PREV_PHASE -#define _CH_PHASE(ctx, inc) do { \ - if(ctx->phase == 0) \ - ctx->context = 0; \ - ctx->phase += inc; \ - } while(0) -#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) -#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = (num_bytes); \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#undef RETURN -#define RETURN(_code) do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -#undef APPEND -#define APPEND(bufptr, bufsize) do { \ - size_t _bs = (bufsize); /* Append size */ \ - size_t _ns = ctx->context; /* Allocated now */ \ - size_t _es = st->size + _bs; /* Expected size */ \ - /* int is really a typeof(st->size): */ \ - if((int)_es < 0) RETURN(RC_FAIL); \ - if(_ns <= _es) { \ - void *ptr; \ - /* Be nice and round to the memory allocator */ \ - do { _ns = _ns ? _ns << 1 : 16; } \ - while(_ns <= _es); \ - /* int is really a typeof(st->size): */ \ - if((int)_ns < 0) RETURN(RC_FAIL); \ - ptr = REALLOC(st->buf, _ns); \ - if(ptr) { \ - st->buf = (uint8_t *)ptr; \ - ctx->context = _ns; \ - } else { \ - RETURN(RC_FAIL); \ - } \ - ASN_DEBUG("Reallocating into %ld", (long)_ns); \ - } \ - memcpy(st->buf + st->size, bufptr, _bs); \ - /* Convenient nul-termination */ \ - st->buf[_es] = '\0'; \ - st->size = _es; \ - } while(0) - -/* - * The main reason why ASN.1 is still alive is that too much time and effort - * is necessary for learning it more or less adequately, thus creating a gut - * necessity to demonstrate that aquired skill everywhere afterwards. - * No, I am not going to explain what the following stuff is. - */ -struct _stack_el { - ber_tlv_len_t left; /* What's left to read (or -1) */ - ber_tlv_len_t got; /* What was actually processed */ - int cont_level; /* Depth of subcontainment */ - int want_nulls; /* Want null "end of content" octets? */ - int bits_chopped; /* Flag in BIT STRING mode */ - ber_tlv_tag_t tag; /* For debugging purposes */ - struct _stack_el *prev; - struct _stack_el *next; -}; -struct _stack { - struct _stack_el *tail; - struct _stack_el *cur_ptr; -}; - -static struct _stack_el * -OS__add_stack_el(struct _stack *st) { - struct _stack_el *nel; - - /* - * Reuse the old stack frame or allocate a new one. - */ - if(st->cur_ptr && st->cur_ptr->next) { - nel = st->cur_ptr->next; - nel->bits_chopped = 0; - nel->got = 0; - /* Retain the nel->cont_level, it's correct. */ - } else { - nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); - if(nel == NULL) - return NULL; - - if(st->tail) { - /* Increase a subcontainment depth */ - nel->cont_level = st->tail->cont_level + 1; - st->tail->next = nel; - } - nel->prev = st->tail; - st->tail = nel; - } - - st->cur_ptr = nel; - - return nel; -} - -static struct _stack * -_new_stack() { - return (struct _stack *)CALLOC(1, sizeof(struct _stack)); -} - -/* - * Decode OCTET STRING type. - */ -asn_dec_rval_t -OCTET_STRING_decode_ber(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - void **sptr, const void *buf_ptr, size_t size, int tag_mode) { - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - asn_dec_rval_t rval; - asn_struct_ctx_t *ctx; - ssize_t consumed_myself = 0; - struct _stack *stck; /* Expectations stack structure */ - struct _stack_el *sel = 0; /* Stack element */ - int tlv_constr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - - ASN_DEBUG("Decoding %s as %s (frame %ld)", - td->name, - (type_variant == ASN_OSUBV_STR) ? - "OCTET STRING" : "OS-SpecialCase", - (long)size); - - /* - * Create the string if does not exist. - */ - if(st == NULL) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(st == NULL) RETURN(RC_FAIL); - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - switch(ctx->phase) { - case 0: - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, ctx, - buf_ptr, size, tag_mode, -1, - &ctx->left, &tlv_constr); - if(rval.code != RC_OK) - return rval; - - if(tlv_constr) { - /* - * Complex operation, requires stack of expectations. - */ - ctx->ptr = _new_stack(); - if(ctx->ptr) { - stck = (struct _stack *)ctx->ptr; - } else { - RETURN(RC_FAIL); - } - } else { - /* - * Jump into stackless primitive decoding. - */ - _CH_PHASE(ctx, 3); - if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) - APPEND(buf_ptr, rval.consumed); - ADVANCE(rval.consumed); - goto phase3; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - phase1: - /* - * Fill the stack with expectations. - */ - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - do { - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_tag_t expected_tag; - ssize_t tl, ll, tlvl; - /* This one works even if (sel->left == -1) */ - ssize_t Left = ((!sel||(size_t)sel->left >= size) - ?(ssize_t)size:sel->left); - - - ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", sel, - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)(sel?sel->got:0) - ); - if(sel && sel->left <= 0 && sel->want_nulls == 0) { - if(sel->prev) { - struct _stack_el *prev = sel->prev; - if(prev->left != -1) { - if(prev->left < sel->got) - RETURN(RC_FAIL); - prev->left -= sel->got; - } - prev->got += sel->got; - sel = stck->cur_ptr = prev; - if(!sel) break; - tlv_constr = 1; - continue; - } else { - sel = stck->cur_ptr = 0; - break; /* Nothing to wait */ - } - } - - tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); - ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", - (long)size, (long)Left, sel?"":"!", - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)tl); - switch(tl) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); - - ll = ber_fetch_length(tlv_constr, - (const char *)buf_ptr + tl,Left - tl,&tlv_len); - ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", - ber_tlv_tag_string(tlv_tag), tlv_constr, - (long)Left, (long)tl, (long)tlv_len, (long)ll); - switch(ll) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - if(sel && sel->want_nulls - && ((const uint8_t *)buf_ptr)[0] == 0 - && ((const uint8_t *)buf_ptr)[1] == 0) - { - - ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); - - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND("\0\0", 2); - - ADVANCE(2); - sel->got += 2; - if(sel->left != -1) { - sel->left -= 2; /* assert(sel->left >= 2) */ - } - - sel->want_nulls--; - if(sel->want_nulls == 0) { - /* Move to the next expectation */ - sel->left = 0; - tlv_constr = 1; - } - - continue; - } - - /* - * Set up expected tags, - * depending on ASN.1 type being decoded. - */ - switch(type_variant) { - case ASN_OSUBV_BIT: - /* X.690: 8.6.4.1, NOTE 2 */ - /* Fall through */ - case ASN_OSUBV_STR: - default: - if(sel) { - int level = sel->cont_level; - if(level < td->all_tags_count) { - expected_tag = td->all_tags[level]; - break; - } else if(td->all_tags_count) { - expected_tag = td->all_tags - [td->all_tags_count - 1]; - break; - } - /* else, Fall through */ - } - /* Fall through */ - case ASN_OSUBV_ANY: - expected_tag = tlv_tag; - break; - } - - - if(tlv_tag != expected_tag) { - char buf[2][32]; - ber_tlv_tag_snprint(tlv_tag, - buf[0], sizeof(buf[0])); - ber_tlv_tag_snprint(td->tags[td->tags_count-1], - buf[1], sizeof(buf[1])); - ASN_DEBUG("Tag does not match expectation: %s != %s", - buf[0], buf[1]); - RETURN(RC_FAIL); - } - - tlvl = tl + ll; /* Combined length of T and L encoding */ - if((tlv_len + tlvl) < 0) { - /* tlv_len value is too big */ - ASN_DEBUG("TLV encoding + length (%ld) is too big", - (long)tlv_len); - RETURN(RC_FAIL); - } - - /* - * Append a new expectation. - */ - sel = OS__add_stack_el(stck); - if(!sel) RETURN(RC_FAIL); - - sel->tag = tlv_tag; - - sel->want_nulls = (tlv_len==-1); - if(sel->prev && sel->prev->left != -1) { - /* Check that the parent frame is big enough */ - if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) - RETURN(RC_FAIL); - if(tlv_len == -1) - sel->left = sel->prev->left - tlvl; - else - sel->left = tlv_len; - } else { - sel->left = tlv_len; - } - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND(buf_ptr, tlvl); - sel->got += tlvl; - ADVANCE(tlvl); - - ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%d", - (long)sel->got, (long)sel->left, - sel->want_nulls, sel->cont_level); - - } while(tlv_constr); - if(sel == NULL) { - /* Finished operation, "phase out" */ - ASN_DEBUG("Phase out"); - _CH_PHASE(ctx, +3); - break; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 2: - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", - (long)sel->left, (long)size, (long)sel->got, - sel->want_nulls); - { - ber_tlv_len_t len; - - assert(sel->left >= 0); - - len = ((ber_tlv_len_t)size < sel->left) - ? (ber_tlv_len_t)size : sel->left; - if(len > 0) { - if(type_variant == ASN_OSUBV_BIT - && sel->bits_chopped == 0) { - /* Put the unused-bits-octet away */ - st->bits_unused = *(const uint8_t *)buf_ptr; - APPEND(((const char *)buf_ptr+1), (len - 1)); - sel->bits_chopped = 1; - } else { - APPEND(buf_ptr, len); - } - ADVANCE(len); - sel->left -= len; - sel->got += len; - } - - if(sel->left) { - ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", - (long)sel->left, (long)size, sel->want_nulls); - RETURN(RC_WMORE); - } - - PREV_PHASE(ctx); - goto phase1; - } - break; - case 3: - phase3: - /* - * Primitive form, no stack required. - */ - assert(ctx->left >= 0); - - if(size < (size_t)ctx->left) { - if(!size) RETURN(RC_WMORE); - if(type_variant == ASN_OSUBV_BIT && !ctx->context) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, size); - assert(ctx->context > 0); - ctx->left -= size; - ADVANCE(size); - RETURN(RC_WMORE); - } else { - if(type_variant == ASN_OSUBV_BIT - && !ctx->context && ctx->left) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, ctx->left); - ADVANCE(ctx->left); - ctx->left = 0; - - NEXT_PHASE(ctx); - } - break; - } - - if(sel) { - ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", - sel->prev, sel->want_nulls, - (long)sel->left, (long)sel->got, (long)size); - if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { - RETURN(RC_WMORE); - } - } - - /* - * BIT STRING-specific processing. - */ - if(type_variant == ASN_OSUBV_BIT && st->size) { - /* Finalize BIT STRING: zero out unused bits. */ - st->buf[st->size-1] &= 0xff << st->bits_unused; - } - - ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", - (long)consumed_myself, td->name, - (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", - (long)st->size); - - - RETURN(RC_OK); -} - -/* - * Encode OCTET STRING type using DER. - */ -asn_enc_rval_t -OCTET_STRING_encode_der(asn_TYPE_descriptor_t *td, void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er; - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - BIT_STRING_t *st = (BIT_STRING_t *)sptr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - int fix_last_byte = 0; - - ASN_DEBUG("%s %s as OCTET STRING", - cb?"Estimating":"Encoding", td->name); - - /* - * Write tags. - */ - if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { - er.encoded = der_write_tags(td, - (type_variant == ASN_OSUBV_BIT) + st->size, - tag_mode, type_variant == ASN_OSUBV_ANY, tag, - cb, app_key); - if(er.encoded == -1) { - er.failed_type = td; - er.structure_ptr = sptr; - return er; - } - } else { - /* Disallow: [] IMPLICIT ANY */ - assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); - er.encoded = 0; - } - - if(!cb) { - er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; - _ASN_ENCODED_OK(er); - } - - /* - * Prepare to deal with the last octet of BIT STRING. - */ - if(type_variant == ASN_OSUBV_BIT) { - uint8_t b = st->bits_unused & 0x07; - if(b && st->size) fix_last_byte = 1; - _ASN_CALLBACK(&b, 1); - er.encoded++; - } - - /* Invoke callback for the main part of the buffer */ - _ASN_CALLBACK(st->buf, st->size - fix_last_byte); - - /* The last octet should be stripped off the unused bits */ - if(fix_last_byte) { - uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); - _ASN_CALLBACK(&b, 1); - } - - er.encoded += st->size; - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -asn_enc_rval_t -OCTET_STRING_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - static const char *h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - if(!st || (!st->buf && st->size)) - _ASN_ENCODE_FAILED; - - er.encoded = 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - if(flags & XER_F_CANONICAL) { - char *scend = scratch + (sizeof(scratch) - 2); - for(; buf < end; buf++) { - if(p >= scend) { - _ASN_CALLBACK(scratch, p - scratch); - er.encoded += p - scratch; - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - } - - _ASN_CALLBACK(scratch, p-scratch); /* Dump the rest */ - er.encoded += p - scratch; - } else { - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - _ASN_CALLBACK(scratch, p-scratch); - er.encoded += (p-scratch); - p = scratch; - _i_ASN_TEXT_INDENT(1, ilevel); - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - if(p - scratch) { - p--; /* Remove the tail space */ - _ASN_CALLBACK(scratch, p-scratch); /* Dump the rest */ - er.encoded += p - scratch; - if(st->size > 16) - _i_ASN_TEXT_INDENT(1, ilevel-1); - } - } - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -static struct OCTET_STRING__xer_escape_table_s { - char *string; - int size; -} OCTET_STRING__xer_escape_table[] = { -#define OSXET(s) { s, sizeof(s) - 1 } - OSXET("\074\156\165\154\057\076"), /* */ - OSXET("\074\163\157\150\057\076"), /* */ - OSXET("\074\163\164\170\057\076"), /* */ - OSXET("\074\145\164\170\057\076"), /* */ - OSXET("\074\145\157\164\057\076"), /* */ - OSXET("\074\145\156\161\057\076"), /* */ - OSXET("\074\141\143\153\057\076"), /* */ - OSXET("\074\142\145\154\057\076"), /* */ - OSXET("\074\142\163\057\076"), /* */ - OSXET("\011"), /* \t */ - OSXET("\012"), /* \n */ - OSXET("\074\166\164\057\076"), /* */ - OSXET("\074\146\146\057\076"), /* */ - OSXET("\015"), /* \r */ - OSXET("\074\163\157\057\076"), /* */ - OSXET("\074\163\151\057\076"), /* */ - OSXET("\074\144\154\145\057\076"), /* */ - OSXET("\074\144\143\061\057\076"), /* */ - OSXET("\074\144\143\062\057\076"), /* */ - OSXET("\074\144\143\063\057\076"), /* */ - OSXET("\074\144\143\064\057\076"), /* */ - OSXET("\074\156\141\153\057\076"), /* */ - OSXET("\074\163\171\156\057\076"), /* */ - OSXET("\074\145\164\142\057\076"), /* */ - OSXET("\074\143\141\156\057\076"), /* */ - OSXET("\074\145\155\057\076"), /* */ - OSXET("\074\163\165\142\057\076"), /* */ - OSXET("\074\145\163\143\057\076"), /* */ - OSXET("\074\151\163\064\057\076"), /* */ - OSXET("\074\151\163\063\057\076"), /* */ - OSXET("\074\151\163\062\057\076"), /* */ - OSXET("\074\151\163\061\057\076"), /* */ - { 0, 0 }, /* " " */ - { 0, 0 }, /* ! */ - { 0, 0 }, /* \" */ - { 0, 0 }, /* # */ - { 0, 0 }, /* $ */ - { 0, 0 }, /* % */ - OSXET("\046\141\155\160\073"), /* & */ - { 0, 0 }, /* ' */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ - {0,0},{0,0},{0,0},{0,0}, /* 89:; */ - OSXET("\046\154\164\073"), /* < */ - { 0, 0 }, /* = */ - OSXET("\046\147\164\073"), /* > */ -}; - -static int -OS__check_escaped_control_char(const void *buf, int size) { - size_t i; - /* - * Inefficient algorithm which translates the escape sequences - * defined above into characters. Returns -1 if not found. - * TODO: replace by a faster algorithm (bsearch(), hash or - * nested table lookups). - */ - for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { - struct OCTET_STRING__xer_escape_table_s *el; - el = &OCTET_STRING__xer_escape_table[i]; - if(el->size == size && memcmp(buf, el->string, size) == 0) - return i; - } - return -1; -} - -static int -OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { - /* - * This might be one of the escape sequences - * for control characters. Check it out. - * #11.15.5 - */ - int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); - if(control_char >= 0) { - OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; - void *p = REALLOC(st->buf, st->size + 2); - if(p) { - st->buf = (uint8_t *)p; - st->buf[st->size++] = control_char; - st->buf[st->size] = '\0'; /* nul-termination */ - return 0; - } - } - - return -1; /* No, it's not */ -} - -asn_enc_rval_t -OCTET_STRING_encode_xer_utf8(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er; - uint8_t *buf, *end; - uint8_t *ss; /* Sequence start */ - ssize_t encoded_len = 0; - - (void)ilevel; /* Unused argument */ - (void)flags; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - _ASN_ENCODE_FAILED; - - buf = st->buf; - end = buf + st->size; - for(ss = buf; buf < end; buf++) { - unsigned int ch = *buf; - int s_len; /* Special encoding sequence length */ - - /* - * Escape certain characters: X.680/11.15 - */ - if(ch < sizeof(OCTET_STRING__xer_escape_table) - /sizeof(OCTET_STRING__xer_escape_table[0]) - && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { - if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) - || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, - app_key) < 0) - _ASN_ENCODE_FAILED; - encoded_len += (buf - ss) + s_len; - ss = buf + 1; - } - } - - encoded_len += (buf - ss); - if((buf - ss) && cb(ss, buf - ss, app_key) < 0) - _ASN_ENCODE_FAILED; - - er.encoded = encoded_len; - _ASN_ENCODED_OK(er); -} - -/* - * Convert from hexadecimal format (cstring): "AB CD EF" - */ -static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *chunk_stop = (const char *)chunk_buf; - const char *p = chunk_stop; - const char *pend = p + chunk_size; - unsigned int clv = 0; - int half = 0; /* Half bit */ - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - ssize_t _ns = st->size + (chunk_size + 1) / 2; - void *nptr = REALLOC(st->buf, _ns + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * If something like " a b c " appears here, the " a b":3 will be - * converted, and the rest skipped. That is, unless buf_size is greater - * than chunk_size, then it'll be equivalent to "ABC0". - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - continue; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - clv = (clv << 4) + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - clv = (clv << 4) + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - clv = (clv << 4) + (ch - 0x61 + 10); - break; - default: - *buf = 0; /* JIC */ - return -1; - } - if(half++) { - half = 0; - *buf++ = clv; - chunk_stop = p + 1; - } - } - - /* - * Check partial decoding. - */ - if(half) { - if(have_more) { - /* - * Partial specification is fine, - * because no more more PXER_TEXT data is available. - */ - *buf++ = clv << 4; - chunk_stop = p; - } - } else { - chunk_stop = p; - } - - st->size = buf - st->buf; /* Adjust the buffer size */ - assert(st->size <= _ns); - st->buf[st->size] = 0; /* Courtesy termination */ - - return (chunk_stop - (const char *)chunk_buf); /* Converted size */ -} - -/* - * Convert from binary format: "00101011101" - */ -static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - BIT_STRING_t *st = (BIT_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - int bits_unused = st->bits_unused & 0x7; - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - ssize_t _ns = st->size + (chunk_size + 7) / 8; - void *nptr = REALLOC(st->buf, _ns + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - (void)have_more; - - if(bits_unused == 0) - bits_unused = 8; - else if(st->size) - buf--; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - break; - case 0x30: - case 0x31: - if(bits_unused-- <= 0) { - *++buf = 0; /* Clean the cell */ - bits_unused = 7; - } - *buf |= (ch&1) << bits_unused; - break; - default: - st->bits_unused = bits_unused; - return -1; - } - } - - if(bits_unused == 8) { - st->size = buf - st->buf; - st->bits_unused = 0; - } else { - st->size = buf - st->buf + 1; - st->bits_unused = bits_unused; - } - - assert(st->size <= _ns); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Something like strtod(), but with stricter rules. - */ -static int -OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { - int32_t val = 0; - const char *p; - - for(p = buf; p < end; p++) { - int ch = *p; - - /* Strange huge value */ - if((val * base + base) < 0) - return -1; - - switch(ch) { - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - val = val * base + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - val = val * base + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - val = val * base + (ch - 0x61 + 10); - break; - case 0x3b: /* ';' */ - *ret_value = val; - return (p - buf) + 1; - default: - return -1; /* Character set error */ - } - } - - *ret_value = -1; - return (p - buf); -} - -/* - * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" - */ -static ssize_t OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - uint8_t *buf; - - /* Reallocate buffer */ - ssize_t _ns = st->size + chunk_size; - void *nptr = REALLOC(st->buf, _ns + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - int len; /* Length of the rest of the chunk */ - - if(ch != 0x26 /* '&' */) { - *buf++ = ch; - continue; /* That was easy... */ - } - - /* - * Process entity reference. - */ - len = chunk_size - (p - (const char *)chunk_buf); - if(len == 1 /* "&" */) goto want_more; - if(p[1] == 0x23 /* '#' */) { - const char *pval; /* Pointer to start of digits */ - int32_t val = 0; /* Entity reference value */ - int base; - - if(len == 2 /* "&#" */) goto want_more; - if(p[2] == 0x78 /* 'x' */) - pval = p + 3, base = 16; - else - pval = p + 2, base = 10; - len = OS__strtoent(base, pval, p + len, &val); - if(len == -1) { - /* Invalid charset. Just copy verbatim. */ - *buf++ = ch; - continue; - } - if(!len || pval[len-1] != 0x3b) goto want_more; - assert(val > 0); - p += (pval - p) + len - 1; /* Advance past entref */ - - if(val < 0x80) { - *buf++ = (char)val; - } else if(val < 0x800) { - *buf++ = 0xc0 | ((val >> 6)); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x10000) { - *buf++ = 0xe0 | ((val >> 12)); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x200000) { - *buf++ = 0xf0 | ((val >> 18)); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x4000000) { - *buf++ = 0xf8 | ((val >> 24)); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else { - *buf++ = 0xfc | ((val >> 30) & 0x1); - *buf++ = 0x80 | ((val >> 24) & 0x3f); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } - } else { - /* - * Ugly, limited parsing of & > < - */ - char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); - if(!sc) goto want_more; - if((sc - p) == 4 - && p[1] == 0x61 /* 'a' */ - && p[2] == 0x6d /* 'm' */ - && p[3] == 0x70 /* 'p' */) { - *buf++ = 0x26; - p = sc; - continue; - } - if((sc - p) == 3) { - if(p[1] == 0x6c) { - *buf = 0x3c; /* '<' */ - } else if(p[1] == 0x67) { - *buf = 0x3e; /* '>' */ - } else { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - if(p[2] != 0x74) { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - buf++; - p = sc; - continue; - } - /* Unsupported entity reference */ - *buf++ = ch; - } - - continue; - want_more: - if(have_more) { - /* - * We know that no more data (of the same type) - * is coming. Copy the rest verbatim. - */ - *buf++ = ch; - continue; - } - chunk_size = (p - (const char *)chunk_buf); - /* Processing stalled: need more data */ - break; - } - - st->size = buf - st->buf; - assert(st->size <= _ns); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Decode OCTET STRING from the XML element's body. - */ -static asn_dec_rval_t -OCTET_STRING__decode_xer(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder) - (void *struct_ptr, const void *chunk_buf, size_t chunk_size), - ssize_t (*body_receiver) - (void *struct_ptr, const void *chunk_buf, size_t chunk_size, - int have_more) -) { - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t *ctx; /* Per-structure parser context */ - asn_dec_rval_t rval; /* Return value from the decoder */ - int st_allocated; - - /* - * Create the string if does not exist. - */ - if(!st) { - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - *sptr = (void *)st; - if(!st) goto sta_failed; - st_allocated = 1; - } else { - st_allocated = 0; - } - if(!st->buf) { - /* This is separate from above section */ - st->buf = (uint8_t *)CALLOC(1, 1); - if(!st->buf) { - if(st_allocated) { - *sptr = 0; - goto stb_failed; - } else { - goto sta_failed; - } - } - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); - - return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, - buf_ptr, size, opt_unexpected_tag_decoder, body_receiver); - -stb_failed: - FREEMEM(st); -sta_failed: - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; -} - -/* - * Decode OCTET STRING from the hexadecimal data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_hex(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, OCTET_STRING__convert_hexadecimal); -} - -/* - * Decode OCTET STRING from the binary (0/1) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_binary(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, OCTET_STRING__convert_binary); -} - -/* - * Decode OCTET STRING from the string (ASCII/UTF-8) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_utf8(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, - OCTET_STRING__handle_control_chars, - OCTET_STRING__convert_entrefs); -} - -static int -OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, asn_per_constraints_t *pc) { - uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", - (int)units, lb, ub, unit_bits); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Decode without translation */ - lb = 0; - } else if(pc && pc->code2value) { - if(unit_bits > 16) - return 1; /* FATAL: can't have constrained - * UniversalString with more than - * 16 million code points */ - for(; buf < end; buf += bpc) { - int value; - int code = per_get_few_bits(po, unit_bits); - if(code < 0) return -1; /* WMORE */ - value = pc->code2value(code); - if(value < 0) { - ASN_DEBUG("Code %d (0x%02x) is" - " not in map (%ld..%ld)", - code, code, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = value; break; - case 2: buf[0] = value >> 8; buf[1] = value; break; - case 4: buf[0] = value >> 24; buf[1] = value >> 16; - buf[2] = value >> 8; buf[3] = value; break; - } - } - return 0; - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_get_many_bits(po, buf, 0, unit_bits * units); - } - - for(; buf < end; buf += bpc) { - int code = per_get_few_bits(po, unit_bits); - int ch = code + lb; - if(code < 0) return -1; /* WMORE */ - if(ch > ub) { - ASN_DEBUG("Code %d is out of range (%ld..%ld)", - ch, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = ch; break; - case 2: buf[0] = ch >> 8; buf[1] = ch; break; - case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; - buf[2] = ch >> 8; buf[3] = ch; break; - } - } - - return 0; -} - -static int -OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, asn_per_constraints_t *pc) { - const uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", - (int)units, lb, ub, unit_bits, bpc); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Encode as is */ - lb = 0; - } else if(pc && pc->value2code) { - for(; buf < end; buf += bpc) { - int code; - uint32_t value; - switch(bpc) { - case 1: value = *(const uint8_t *)buf; break; - case 2: value = (buf[0] << 8) | buf[1]; break; - case 4: value = (buf[0] << 24) | (buf[1] << 16) - | (buf[2] << 8) | buf[3]; break; - default: return -1; - } - code = pc->value2code(value); - if(code < 0) { - ASN_DEBUG("Character %d (0x%02x) is" - " not in map (%ld..%ld)", - *buf, *buf, lb, ub); - return -1; - } - if(per_put_few_bits(po, code, unit_bits)) - return -1; - } - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_put_many_bits(po, buf, unit_bits * units); - } - - for(ub -= lb; buf < end; buf += bpc) { - int ch; - uint32_t value; - switch(bpc) { - case 1: value = *(const uint8_t *)buf; break; - case 2: value = (buf[0] << 8) | buf[1]; break; - case 4: value = (buf[0] << 24) | (buf[1] << 16) - | (buf[2] << 8) | buf[3]; break; - default: return -1; - } - ch = value - lb; - if(ch < 0 || ch > ub) { - ASN_DEBUG("Character %d (0x%02x)" - " is out of range (%ld..%ld)", - *buf, *buf, lb, ub + lb); - return -1; - } - if(per_put_few_bits(po, ch, unit_bits)) - return -1; - } - - return 0; -} - -asn_dec_rval_t -OCTET_STRING_decode_uper(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - asn_per_constraints_t *pc = constraints ? constraints - : td->per_constraints; - asn_per_constraint_t *cval; - asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - - (void)opt_codec_ctx; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); - RETURN(RC_FAIL); - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - break; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - break; - } - - /* - * Allocate the string. - */ - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - cval = &asn_DEF_OCTET_STRING_constraints.value; - unit_bits = canonical_unit_bits; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - if(bpc) { - st->size = csiz->upper_bound * bpc; - } else { - st->size = (csiz->upper_bound + 7) >> 3; - } - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - if(bpc) { - ASN_DEBUG("Encoding OCTET STRING size %ld", - csiz->upper_bound); - ret = OCTET_STRING_per_get_characters(pd, st->buf, - csiz->upper_bound, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ASN_DEBUG("Encoding BIT STRING size %ld", - csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, - unit_bits * csiz->upper_bound); - } - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += unit_bits * csiz->upper_bound; - st->buf[st->size] = 0; - if(bpc == 0) { - int ubs = (csiz->upper_bound & 0x7); - st->bits_unused = ubs ? 8 - ubs : 0; - } - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, csiz->effective_bits, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - raw_len += csiz->lower_bound; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - if(bpc) { - len_bytes = raw_len * bpc; - len_bits = len_bytes * unit_bits; - } else { - len_bits = raw_len; - len_bytes = (len_bits + 7) >> 3; - if(len_bits & 0x7) - st->bits_unused = 8 - (len_bits & 0x7); - /* len_bits be multiple of 16K if repeat is set */ - } - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - if(bpc) { - ret = OCTET_STRING_per_get_characters(pd, - &st->buf[st->size], raw_len, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ret = per_get_many_bits(pd, &st->buf[st->size], - 0, len_bits); - } - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -OCTET_STRING_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - asn_per_constraints_t *pc = constraints ? constraints - : td->per_constraints; - asn_per_constraint_t *cval; - asn_per_constraint_t *csiz; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - unsigned int sizeinunits; - const uint8_t *buf; - int ret; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - int ct_extensible; - - if(!st || (!st->buf && st->size)) - _ASN_ENCODE_FAILED; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - _ASN_ENCODE_FAILED; - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - sizeinunits = st->size * 8 - (st->bits_unused & 0x07); - ASN_DEBUG("BIT STRING of %d bytes, %d bits unused", - sizeinunits, st->bits_unused); - break; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - sizeinunits = st->size; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - sizeinunits = st->size / 2; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - sizeinunits = st->size / 4; - break; - } - - ASN_DEBUG("Encoding %s into %d units of %d bits" - " (%ld..%ld, effective %d)%s", - td->name, sizeinunits, unit_bits, - csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out whether size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((int)sizeinunits < csiz->lower_bound - || (int)sizeinunits > csiz->upper_bound) { - if(ct_extensible) { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - inext = 1; - } else - _ASN_ENCODE_FAILED; - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - _ASN_ENCODE_FAILED; - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits >= 0) { - ASN_DEBUG("Encoding %d bytes (%ld), length in %d bits", - st->size, sizeinunits - csiz->lower_bound, - csiz->effective_bits); - ret = per_put_few_bits(po, sizeinunits - csiz->lower_bound, - csiz->effective_bits); - if(ret) _ASN_ENCODE_FAILED; - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, st->buf, - sizeinunits, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - } else { - ret = per_put_many_bits(po, st->buf, - sizeinunits * unit_bits); - } - if(ret) _ASN_ENCODE_FAILED; - _ASN_ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %d bytes", st->size); - - if(sizeinunits == 0) { - if(uper_put_length(po, 0)) - _ASN_ENCODE_FAILED; - _ASN_ENCODED_OK(er); - } - - buf = st->buf; - while(sizeinunits) { - ssize_t maySave = uper_put_length(po, sizeinunits); - if(maySave < 0) _ASN_ENCODE_FAILED; - - ASN_DEBUG("Encoding %ld of %ld", - (long)maySave, (long)sizeinunits); - - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, buf, - maySave, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - } else { - ret = per_put_many_bits(po, buf, maySave * unit_bits); - } - if(ret) _ASN_ENCODE_FAILED; - - if(bpc) - buf += maySave * bpc; - else - buf += maySave >> 3; - sizeinunits -= maySave; - assert(!(maySave & 0x07) || !sizeinunits); - } - - _ASN_ENCODED_OK(er); -} - -int -OCTET_STRING_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - static const char *h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - (void)td; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - _i_INDENT(1); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Remove the tail space */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - return 0; -} - -int -OCTET_STRING_print_utf8(asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st && (st->buf || !st->size)) { - return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -OCTET_STRING_free(asn_TYPE_descriptor_t *td, void *sptr, int contents_only) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - asn_struct_ctx_t *ctx = (asn_struct_ctx_t *) - ((char *)st + specs->ctx_offset); - struct _stack *stck; - - if(!td || !st) - return; - - ASN_DEBUG("Freeing %s as OCTET STRING", td->name); - - if(st->buf) { - FREEMEM(st->buf); - st->buf = 0; - } - - /* - * Remove decode-time stack. - */ - stck = (struct _stack *)ctx->ptr; - if(stck) { - while(stck->tail) { - struct _stack_el *sel = stck->tail; - stck->tail = sel->prev; - FREEMEM(sel); - } - FREEMEM(stck); - } - - if(!contents_only) { - FREEMEM(st); - } -} - -/* - * Conversion routines. - */ -int -OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { - void *buf; - - if(st == 0 || (str == 0 && len)) { - errno = EINVAL; - return -1; - } - - /* - * Clear the OCTET STRING. - */ - if(str == NULL) { - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - return 0; - } - - /* Determine the original string size, if not explicitly given */ - if(len < 0) - len = strlen(str); - - /* Allocate and fill the memory */ - buf = MALLOC(len + 1); - if(buf == NULL) - return -1; - - memcpy(buf, str, len); - ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ - FREEMEM(st->buf); - st->buf = (uint8_t *)buf; - st->size = len; - - return 0; -} - -OCTET_STRING_t * -OCTET_STRING_new_fromBuf(asn_TYPE_descriptor_t *td, const char *str, int len) { - asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_DEF_OCTET_STRING_specs; - OCTET_STRING_t *st; - - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - if(st && str && OCTET_STRING_fromBuf(st, str, len)) { - FREEMEM(st); - st = NULL; - } - - return st; -} - diff --git a/src/tmx/Asn_J2735/src/r41/ObjectCount.c b/src/tmx/Asn_J2735/src/r41/ObjectCount.c deleted file mode 100644 index b62cad6f7..000000000 --- a/src/tmx/Asn_J2735/src/r41/ObjectCount.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ObjectCount.h" - -int -ObjectCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 6000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ObjectCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ObjectCount_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ObjectCount_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ObjectCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ObjectCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ObjectCount_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ObjectCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ObjectCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ObjectCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ObjectCount_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ObjectCount_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 6000 } /* (0..6000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectCount = { - "ObjectCount", - "ObjectCount", - ObjectCount_free, - ObjectCount_print, - ObjectCount_constraint, - ObjectCount_decode_ber, - ObjectCount_encode_der, - ObjectCount_decode_xer, - ObjectCount_encode_xer, - ObjectCount_decode_uper, - ObjectCount_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ObjectCount_tags_1, - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - asn_DEF_ObjectCount_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - &asn_PER_type_ObjectCount_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c b/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c deleted file mode 100644 index 6c9eee7ca..000000000 --- a/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ObstacleDirection.h" - -int -ObstacleDirection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using Heading, - * so here we adjust the DEF accordingly. - */ -static void -ObstacleDirection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Heading.free_struct; - td->print_struct = asn_DEF_Heading.print_struct; - td->check_constraints = asn_DEF_Heading.check_constraints; - td->ber_decoder = asn_DEF_Heading.ber_decoder; - td->der_encoder = asn_DEF_Heading.der_encoder; - td->xer_decoder = asn_DEF_Heading.xer_decoder; - td->xer_encoder = asn_DEF_Heading.xer_encoder; - td->uper_decoder = asn_DEF_Heading.uper_decoder; - td->uper_encoder = asn_DEF_Heading.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Heading.per_constraints; - td->elements = asn_DEF_Heading.elements; - td->elements_count = asn_DEF_Heading.elements_count; - td->specifics = asn_DEF_Heading.specifics; -} - -void -ObstacleDirection_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ObstacleDirection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ObstacleDirection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ObstacleDirection_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ObstacleDirection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ObstacleDirection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ObstacleDirection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ObstacleDirection_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ObstacleDirection_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { - "ObstacleDirection", - "ObstacleDirection", - ObstacleDirection_free, - ObstacleDirection_print, - ObstacleDirection_constraint, - ObstacleDirection_decode_ber, - ObstacleDirection_encode_der, - ObstacleDirection_decode_xer, - ObstacleDirection_encode_xer, - ObstacleDirection_decode_uper, - ObstacleDirection_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ObstacleDirection_tags_1, - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c b/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c deleted file mode 100644 index e1067370f..000000000 --- a/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ObstacleDistance.h" - -int -ObstacleDistance_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ObstacleDistance_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ObstacleDistance_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ObstacleDistance_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ObstacleDistance_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ObstacleDistance_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ObstacleDistance_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ObstacleDistance_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ObstacleDistance_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ObstacleDistance_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ObstacleDistance_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { - "ObstacleDistance", - "ObstacleDistance", - ObstacleDistance_free, - ObstacleDistance_print, - ObstacleDistance_constraint, - ObstacleDistance_decode_ber, - ObstacleDistance_encode_der, - ObstacleDistance_decode_xer, - ObstacleDistance_encode_xer, - ObstacleDistance_decode_uper, - ObstacleDistance_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ObstacleDistance_tags_1, - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - &asn_PER_type_ObstacleDistance_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B10.c b/src/tmx/Asn_J2735/src/r41/Offset-B10.c deleted file mode 100644 index 53c6c424f..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B10.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B10.h" - -int -Offset_B10_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -512 && value <= 511)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B10_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B10_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B10_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B10_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B10_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B10_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B10_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B10_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B10_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B10_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B10_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { - "Offset-B10", - "Offset-B10", - Offset_B10_free, - Offset_B10_print, - Offset_B10_constraint, - Offset_B10_decode_ber, - Offset_B10_encode_der, - Offset_B10_decode_xer, - Offset_B10_encode_xer, - Offset_B10_decode_uper, - Offset_B10_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B10_tags_1, - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - asn_DEF_Offset_B10_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B10_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B11.c b/src/tmx/Asn_J2735/src/r41/Offset-B11.c deleted file mode 100644 index b2133136e..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B11.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B11.h" - -int -Offset_B11_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1024 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B11_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B11_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B11_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B11_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B11_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B11_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B11_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B11_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B11_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B11_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B11_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { - "Offset-B11", - "Offset-B11", - Offset_B11_free, - Offset_B11_print, - Offset_B11_constraint, - Offset_B11_decode_ber, - Offset_B11_encode_der, - Offset_B11_decode_xer, - Offset_B11_encode_xer, - Offset_B11_decode_uper, - Offset_B11_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B11_tags_1, - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - asn_DEF_Offset_B11_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B11_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B12.c b/src/tmx/Asn_J2735/src/r41/Offset-B12.c deleted file mode 100644 index d793673cb..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B12.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B12.h" - -int -Offset_B12_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B12_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B12_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B12_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B12_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B12_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B12_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B12_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B12_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B12_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B12_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B12_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { - "Offset-B12", - "Offset-B12", - Offset_B12_free, - Offset_B12_print, - Offset_B12_constraint, - Offset_B12_decode_ber, - Offset_B12_encode_der, - Offset_B12_decode_xer, - Offset_B12_encode_xer, - Offset_B12_decode_uper, - Offset_B12_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B12_tags_1, - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - asn_DEF_Offset_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B12_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B13.c b/src/tmx/Asn_J2735/src/r41/Offset-B13.c deleted file mode 100644 index c8a08a24b..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B13.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B13.h" - -int -Offset_B13_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096 && value <= 4095)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B13_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B13_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B13_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B13_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B13_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B13_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B13_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B13_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B13_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B13_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B13_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { - "Offset-B13", - "Offset-B13", - Offset_B13_free, - Offset_B13_print, - Offset_B13_constraint, - Offset_B13_decode_ber, - Offset_B13_encode_der, - Offset_B13_decode_xer, - Offset_B13_encode_xer, - Offset_B13_decode_uper, - Offset_B13_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B13_tags_1, - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - asn_DEF_Offset_B13_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B13_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B14.c b/src/tmx/Asn_J2735/src/r41/Offset-B14.c deleted file mode 100644 index f69a4355e..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B14.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B14.h" - -int -Offset_B14_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8192 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B14_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B14_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B14_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B14_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B14_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B14_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B14_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B14_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B14_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B14_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B14_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { - "Offset-B14", - "Offset-B14", - Offset_B14_free, - Offset_B14_print, - Offset_B14_constraint, - Offset_B14_decode_ber, - Offset_B14_encode_der, - Offset_B14_decode_xer, - Offset_B14_encode_xer, - Offset_B14_decode_uper, - Offset_B14_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B14_tags_1, - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - asn_DEF_Offset_B14_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B14_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B16.c b/src/tmx/Asn_J2735/src/r41/Offset-B16.c deleted file mode 100644 index e20d64d97..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offset-B16.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offset-B16.h" - -int -Offset_B16_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Offset_B16_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Offset_B16_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offset_B16_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offset_B16_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offset_B16_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offset_B16_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offset_B16_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offset_B16_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offset_B16_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offset_B16_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offset_B16_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { - "Offset-B16", - "Offset-B16", - Offset_B16_free, - Offset_B16_print, - Offset_B16_constraint, - Offset_B16_decode_ber, - Offset_B16_encode_der, - Offset_B16_decode_xer, - Offset_B16_encode_xer, - Offset_B16_decode_uper, - Offset_B16_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offset_B16_tags_1, - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - asn_DEF_Offset_B16_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - &asn_PER_type_Offset_B16_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Offsets.c b/src/tmx/Asn_J2735/src/r41/Offsets.c deleted file mode 100644 index 48a0c05ba..000000000 --- a/src/tmx/Asn_J2735/src/r41/Offsets.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Offsets.h" - -int -Offsets_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 4 && size <= 8)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -Offsets_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -Offsets_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Offsets_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Offsets_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Offsets_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Offsets_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Offsets_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Offsets_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Offsets_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Offsets_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Offsets_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Offsets_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 4, 8 } /* (SIZE(4..8)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Offsets_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offsets = { - "Offsets", - "Offsets", - Offsets_free, - Offsets_print, - Offsets_constraint, - Offsets_decode_ber, - Offsets_encode_der, - Offsets_decode_xer, - Offsets_encode_xer, - Offsets_decode_uper, - Offsets_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Offsets_tags_1, - sizeof(asn_DEF_Offsets_tags_1) - /sizeof(asn_DEF_Offsets_tags_1[0]), /* 1 */ - asn_DEF_Offsets_tags_1, /* Same as above */ - sizeof(asn_DEF_Offsets_tags_1) - /sizeof(asn_DEF_Offsets_tags_1[0]), /* 1 */ - &asn_PER_type_Offsets_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c b/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c deleted file mode 100644 index 457e0da7d..000000000 --- a/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "OverlayLaneList.h" - -static asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { - sizeof(struct OverlayLaneList), - offsetof(struct OverlayLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { - "OverlayLaneList", - "OverlayLaneList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_OverlayLaneList_tags_1, - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - asn_DEF_OverlayLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - &asn_PER_type_OverlayLaneList_constr_1, - asn_MBR_OverlayLaneList_1, - 1, /* Single element */ - &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistory.c b/src/tmx/Asn_J2735/src/r41/PathHistory.c deleted file mode 100644 index 9a8ef892c..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistory.c +++ /dev/null @@ -1,596 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistory.h" - -static int -memb_pathHistoryPointSets_01_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 23)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_02_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 15 && size <= 345)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_03_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 12 && size <= 276)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_04_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 8 && size <= 184)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_05_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 10 && size <= 230)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_06_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 6 && size <= 138)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_07_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 11 && size <= 242)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_08_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 7 && size <= 161)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_09_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 9 && size <= 196)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathHistoryPointSets_10_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 5 && size <= 104)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_pathHistoryPointSets_01_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_01_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_02_constr_8 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 15, 345 } /* (SIZE(15..345)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_03_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 12, 276 } /* (SIZE(12..276)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_04_constr_10 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 8, 184 } /* (SIZE(8..184)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_05_constr_11 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 10, 230 } /* (SIZE(10..230)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_06_constr_12 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 6, 138 } /* (SIZE(6..138)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_07_constr_13 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 11, 242 } /* (SIZE(11..242)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_08_constr_14 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 7, 161 } /* (SIZE(7..161)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_09_constr_15 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 9, 196 } /* (SIZE(9..196)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_10_constr_16 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 5, 104 } /* (SIZE(5..104)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_crumbData_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_pathHistoryPointSets_01_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PathHistoryPointType_01, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_pathHistoryPointSets_01_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_pathHistoryPointSets_01_specs_6 = { - sizeof(struct PathHistory__crumbData__pathHistoryPointSets_01), - offsetof(struct PathHistory__crumbData__pathHistoryPointSets_01, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_pathHistoryPointSets_01_6 = { - "pathHistoryPointSets-01", - "pathHistoryPointSets-01", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_pathHistoryPointSets_01_tags_6, - sizeof(asn_DEF_pathHistoryPointSets_01_tags_6) - /sizeof(asn_DEF_pathHistoryPointSets_01_tags_6[0]) - 1, /* 1 */ - asn_DEF_pathHistoryPointSets_01_tags_6, /* Same as above */ - sizeof(asn_DEF_pathHistoryPointSets_01_tags_6) - /sizeof(asn_DEF_pathHistoryPointSets_01_tags_6[0]), /* 2 */ - &asn_PER_type_pathHistoryPointSets_01_constr_6, - asn_MBR_pathHistoryPointSets_01_6, - 1, /* Single element */ - &asn_SPC_pathHistoryPointSets_01_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_crumbData_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_01), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_pathHistoryPointSets_01_6, - memb_pathHistoryPointSets_01_constraint_5, - &asn_PER_memb_pathHistoryPointSets_01_constr_6, - 0, - "pathHistoryPointSets-01" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_02), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_02_constraint_5, - &asn_PER_memb_pathHistoryPointSets_02_constr_8, - 0, - "pathHistoryPointSets-02" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_03), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_03_constraint_5, - &asn_PER_memb_pathHistoryPointSets_03_constr_9, - 0, - "pathHistoryPointSets-03" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_04), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_04_constraint_5, - &asn_PER_memb_pathHistoryPointSets_04_constr_10, - 0, - "pathHistoryPointSets-04" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_05), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_05_constraint_5, - &asn_PER_memb_pathHistoryPointSets_05_constr_11, - 0, - "pathHistoryPointSets-05" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_06), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_06_constraint_5, - &asn_PER_memb_pathHistoryPointSets_06_constr_12, - 0, - "pathHistoryPointSets-06" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_07), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_07_constraint_5, - &asn_PER_memb_pathHistoryPointSets_07_constr_13, - 0, - "pathHistoryPointSets-07" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_08), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_08_constraint_5, - &asn_PER_memb_pathHistoryPointSets_08_constr_14, - 0, - "pathHistoryPointSets-08" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_09), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_09_constraint_5, - &asn_PER_memb_pathHistoryPointSets_09_constr_15, - 0, - "pathHistoryPointSets-09" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_10), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_pathHistoryPointSets_10_constraint_5, - &asn_PER_memb_pathHistoryPointSets_10_constr_16, - 0, - "pathHistoryPointSets-10" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_crumbData_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathHistoryPointSets-01 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistoryPointSets-02 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathHistoryPointSets-03 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* pathHistoryPointSets-04 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pathHistoryPointSets-05 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathHistoryPointSets-06 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* pathHistoryPointSets-07 */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* pathHistoryPointSets-08 */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* pathHistoryPointSets-09 */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* pathHistoryPointSets-10 */ -}; -static asn_CHOICE_specifics_t asn_SPC_crumbData_specs_5 = { - sizeof(struct PathHistory__crumbData), - offsetof(struct PathHistory__crumbData, _asn_ctx), - offsetof(struct PathHistory__crumbData, present), - sizeof(((struct PathHistory__crumbData *)0)->present), - asn_MAP_crumbData_tag2el_5, - 10, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_crumbData_5 = { - "crumbData", - "crumbData", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_crumbData_constr_5, - asn_MBR_crumbData_5, - 10, /* Elements count */ - &asn_SPC_crumbData_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_PathHistory_1[] = { - { ATF_POINTER, 3, offsetof(struct PathHistory, initialPosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "initialPosition" - }, - { ATF_POINTER, 2, offsetof(struct PathHistory, currGPSstatus), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GPSstatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "currGPSstatus" - }, - { ATF_POINTER, 1, offsetof(struct PathHistory, itemCnt), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Count, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itemCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_crumbData_5, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crumbData" - }, -}; -static int asn_MAP_PathHistory_oms_1[] = { 0, 1, 2 }; -static ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGPSstatus */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* itemCnt */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crumbData */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { - sizeof(struct PathHistory), - offsetof(struct PathHistory, _asn_ctx), - asn_MAP_PathHistory_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_PathHistory_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistory = { - "PathHistory", - "PathHistory", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistory_tags_1, - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - asn_DEF_PathHistory_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PathHistory_1, - 4, /* Elements count */ - &asn_SPC_PathHistory_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c deleted file mode 100644 index 656df14c8..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c +++ /dev/null @@ -1,272 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-01.h" - -static int -memb_latOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -131072 && value <= 131071)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_longOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -131072 && value <= 131071)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_elevationOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_timeOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_heading_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_latOffset_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_longOffset_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_elevationOffset_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_timeOffset_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_heading_constr_7 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_PathHistoryPointType_01_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPointType_01, latOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_latOffset_constraint_1, - &asn_PER_memb_latOffset_constr_2, - 0, - "latOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPointType_01, longOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_longOffset_constraint_1, - &asn_PER_memb_longOffset_constr_3, - 0, - "longOffset" - }, - { ATF_POINTER, 5, offsetof(struct PathHistoryPointType_01, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_elevationOffset_constraint_1, - &asn_PER_memb_elevationOffset_constr_4, - 0, - "elevationOffset" - }, - { ATF_POINTER, 4, offsetof(struct PathHistoryPointType_01, timeOffset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_timeOffset_constraint_1, - &asn_PER_memb_timeOffset_constr_5, - 0, - "timeOffset" - }, - { ATF_POINTER, 3, offsetof(struct PathHistoryPointType_01, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "posAccuracy" - }, - { ATF_POINTER, 2, offsetof(struct PathHistoryPointType_01, heading), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_heading_constraint_1, - &asn_PER_memb_heading_constr_7, - 0, - "heading" - }, - { ATF_POINTER, 1, offsetof(struct PathHistoryPointType_01, speed), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, -}; -static int asn_MAP_PathHistoryPointType_01_oms_1[] = { 2, 3, 4, 5, 6 }; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_01_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_PathHistoryPointType_01_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* speed */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPointType_01_specs_1 = { - sizeof(struct PathHistoryPointType_01), - offsetof(struct PathHistoryPointType_01, _asn_ctx), - asn_MAP_PathHistoryPointType_01_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_PathHistoryPointType_01_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_01 = { - "PathHistoryPointType-01", - "PathHistoryPointType-01", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_01_tags_1, - sizeof(asn_DEF_PathHistoryPointType_01_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_01_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_01_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_01_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_01_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PathHistoryPointType_01_1, - 7, /* Elements count */ - &asn_SPC_PathHistoryPointType_01_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c deleted file mode 100644 index de3e95a03..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-02.h" - -int -PathHistoryPointType_02_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_02_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_02_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_02_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_02_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_02_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_02_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_02_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_02_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_02_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_02_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 15, 15 } /* (SIZE(15..15)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_02_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_02 = { - "PathHistoryPointType-02", - "PathHistoryPointType-02", - PathHistoryPointType_02_free, - PathHistoryPointType_02_print, - PathHistoryPointType_02_constraint, - PathHistoryPointType_02_decode_ber, - PathHistoryPointType_02_encode_der, - PathHistoryPointType_02_decode_xer, - PathHistoryPointType_02_encode_xer, - PathHistoryPointType_02_decode_uper, - PathHistoryPointType_02_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_02_tags_1, - sizeof(asn_DEF_PathHistoryPointType_02_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_02_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_02_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_02_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_02_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_02_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c deleted file mode 100644 index e8780e6dc..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-03.h" - -int -PathHistoryPointType_03_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 12)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_03_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_03_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_03_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_03_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_03_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_03_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_03_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_03_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_03_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_03_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_03_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_03 = { - "PathHistoryPointType-03", - "PathHistoryPointType-03", - PathHistoryPointType_03_free, - PathHistoryPointType_03_print, - PathHistoryPointType_03_constraint, - PathHistoryPointType_03_decode_ber, - PathHistoryPointType_03_encode_der, - PathHistoryPointType_03_decode_xer, - PathHistoryPointType_03_encode_xer, - PathHistoryPointType_03_decode_uper, - PathHistoryPointType_03_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_03_tags_1, - sizeof(asn_DEF_PathHistoryPointType_03_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_03_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_03_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_03_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_03_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_03_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c deleted file mode 100644 index 4a07afd89..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-04.h" - -int -PathHistoryPointType_04_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 8)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_04_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_04_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_04_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_04_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_04_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_04_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_04_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_04_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_04_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_04_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_04_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_04 = { - "PathHistoryPointType-04", - "PathHistoryPointType-04", - PathHistoryPointType_04_free, - PathHistoryPointType_04_print, - PathHistoryPointType_04_constraint, - PathHistoryPointType_04_decode_ber, - PathHistoryPointType_04_encode_der, - PathHistoryPointType_04_decode_xer, - PathHistoryPointType_04_encode_xer, - PathHistoryPointType_04_decode_uper, - PathHistoryPointType_04_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_04_tags_1, - sizeof(asn_DEF_PathHistoryPointType_04_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_04_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_04_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_04_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_04_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_04_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c deleted file mode 100644 index 219d2e17f..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-05.h" - -int -PathHistoryPointType_05_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 10)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_05_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_05_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_05_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_05_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_05_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_05_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_05_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_05_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_05_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_05_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_05_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_05 = { - "PathHistoryPointType-05", - "PathHistoryPointType-05", - PathHistoryPointType_05_free, - PathHistoryPointType_05_print, - PathHistoryPointType_05_constraint, - PathHistoryPointType_05_decode_ber, - PathHistoryPointType_05_encode_der, - PathHistoryPointType_05_decode_xer, - PathHistoryPointType_05_encode_xer, - PathHistoryPointType_05_decode_uper, - PathHistoryPointType_05_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_05_tags_1, - sizeof(asn_DEF_PathHistoryPointType_05_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_05_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_05_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_05_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_05_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_05_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c deleted file mode 100644 index 329dca594..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-06.h" - -int -PathHistoryPointType_06_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_06_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_06_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_06_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_06_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_06_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_06_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_06_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_06_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_06_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_06_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_06_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_06 = { - "PathHistoryPointType-06", - "PathHistoryPointType-06", - PathHistoryPointType_06_free, - PathHistoryPointType_06_print, - PathHistoryPointType_06_constraint, - PathHistoryPointType_06_decode_ber, - PathHistoryPointType_06_encode_der, - PathHistoryPointType_06_decode_xer, - PathHistoryPointType_06_encode_xer, - PathHistoryPointType_06_decode_uper, - PathHistoryPointType_06_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_06_tags_1, - sizeof(asn_DEF_PathHistoryPointType_06_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_06_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_06_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_06_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_06_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_06_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c deleted file mode 100644 index 427056b6b..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-07.h" - -int -PathHistoryPointType_07_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 11)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_07_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_07_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_07_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_07_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_07_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_07_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_07_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_07_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_07_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_07_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 11, 11 } /* (SIZE(11..11)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_07_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_07 = { - "PathHistoryPointType-07", - "PathHistoryPointType-07", - PathHistoryPointType_07_free, - PathHistoryPointType_07_print, - PathHistoryPointType_07_constraint, - PathHistoryPointType_07_decode_ber, - PathHistoryPointType_07_encode_der, - PathHistoryPointType_07_decode_xer, - PathHistoryPointType_07_encode_xer, - PathHistoryPointType_07_decode_uper, - PathHistoryPointType_07_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_07_tags_1, - sizeof(asn_DEF_PathHistoryPointType_07_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_07_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_07_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_07_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_07_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_07_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c deleted file mode 100644 index 83da71b0f..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-08.h" - -int -PathHistoryPointType_08_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 7)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_08_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_08_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_08_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_08_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_08_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_08_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_08_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_08_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_08_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_08_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_08_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_08 = { - "PathHistoryPointType-08", - "PathHistoryPointType-08", - PathHistoryPointType_08_free, - PathHistoryPointType_08_print, - PathHistoryPointType_08_constraint, - PathHistoryPointType_08_decode_ber, - PathHistoryPointType_08_encode_der, - PathHistoryPointType_08_decode_xer, - PathHistoryPointType_08_encode_xer, - PathHistoryPointType_08_decode_uper, - PathHistoryPointType_08_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_08_tags_1, - sizeof(asn_DEF_PathHistoryPointType_08_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_08_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_08_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_08_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_08_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_08_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c deleted file mode 100644 index 063ed3f53..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-09.h" - -int -PathHistoryPointType_09_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_09_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_09_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_09_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_09_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_09_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_09_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_09_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_09_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_09_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_09_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_09 = { - "PathHistoryPointType-09", - "PathHistoryPointType-09", - PathHistoryPointType_09_free, - PathHistoryPointType_09_print, - PathHistoryPointType_09_constraint, - PathHistoryPointType_09_decode_ber, - PathHistoryPointType_09_encode_der, - PathHistoryPointType_09_decode_xer, - PathHistoryPointType_09_encode_xer, - PathHistoryPointType_09_decode_uper, - PathHistoryPointType_09_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_09_tags_1, - sizeof(asn_DEF_PathHistoryPointType_09_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_09_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_09_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_09_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_09_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_09_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c deleted file mode 100644 index cf1af02c6..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathHistoryPointType-10.h" - -int -PathHistoryPointType_10_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PathHistoryPointType_10_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PathHistoryPointType_10_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PathHistoryPointType_10_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_10_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PathHistoryPointType_10_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_10_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PathHistoryPointType_10_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PathHistoryPointType_10_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PathHistoryPointType_10_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PathHistoryPointType_10_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PathHistoryPointType_10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_10 = { - "PathHistoryPointType-10", - "PathHistoryPointType-10", - PathHistoryPointType_10_free, - PathHistoryPointType_10_print, - PathHistoryPointType_10_constraint, - PathHistoryPointType_10_decode_ber, - PathHistoryPointType_10_encode_der, - PathHistoryPointType_10_decode_xer, - PathHistoryPointType_10_encode_xer, - PathHistoryPointType_10_decode_uper, - PathHistoryPointType_10_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathHistoryPointType_10_tags_1, - sizeof(asn_DEF_PathHistoryPointType_10_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_10_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointType_10_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointType_10_tags_1) - /sizeof(asn_DEF_PathHistoryPointType_10_tags_1[0]), /* 1 */ - &asn_PER_type_PathHistoryPointType_10_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PathPrediction.c b/src/tmx/Asn_J2735/src/r41/PathPrediction.c deleted file mode 100644 index 96fdccb1e..000000000 --- a/src/tmx/Asn_J2735/src/r41/PathPrediction.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PathPrediction.h" - -static int -memb_radiusOfCurve_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_confidence_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_radiusOfCurve_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_confidence_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_radiusOfCurve_constraint_1, - &asn_PER_memb_radiusOfCurve_constr_2, - 0, - "radiusOfCurve" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_confidence_constraint_1, - &asn_PER_memb_confidence_constr_3, - 0, - "confidence" - }, -}; -static ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { - sizeof(struct PathPrediction), - offsetof(struct PathPrediction, _asn_ctx), - asn_MAP_PathPrediction_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PathPrediction = { - "PathPrediction", - "PathPrediction", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PathPrediction_tags_1, - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - asn_DEF_PathPrediction_tags_1, /* Same as above */ - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PathPrediction_1, - 2, /* Elements count */ - &asn_SPC_PathPrediction_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Payload.c b/src/tmx/Asn_J2735/src/r41/Payload.c deleted file mode 100644 index 1cdb7b75c..000000000 --- a/src/tmx/Asn_J2735/src/r41/Payload.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Payload.h" - -int -Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 64)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -Payload_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Payload_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Payload_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Payload_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Payload_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Payload_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Payload_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Payload_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Payload_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Payload_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Payload_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Payload_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Payload_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Payload = { - "Payload", - "Payload", - Payload_free, - Payload_print, - Payload_constraint, - Payload_decode_ber, - Payload_encode_der, - Payload_decode_xer, - Payload_encode_xer, - Payload_decode_uper, - Payload_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Payload_tags_1, - sizeof(asn_DEF_Payload_tags_1) - /sizeof(asn_DEF_Payload_tags_1[0]), /* 1 */ - asn_DEF_Payload_tags_1, /* Same as above */ - sizeof(asn_DEF_Payload_tags_1) - /sizeof(asn_DEF_Payload_tags_1[0]), /* 1 */ - &asn_PER_type_Payload_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PayloadData.c b/src/tmx/Asn_J2735/src/r41/PayloadData.c deleted file mode 100644 index 9099c5570..000000000 --- a/src/tmx/Asn_J2735/src/r41/PayloadData.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PayloadData.h" - -int -PayloadData_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 2048)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PayloadData_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PayloadData_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PayloadData_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PayloadData_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PayloadData_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PayloadData_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PayloadData_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PayloadData_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PayloadData_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PayloadData_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PayloadData_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PayloadData = { - "PayloadData", - "PayloadData", - PayloadData_free, - PayloadData_print, - PayloadData_constraint, - PayloadData_decode_ber, - PayloadData_encode_der, - PayloadData_decode_xer, - PayloadData_encode_xer, - PayloadData_decode_uper, - PayloadData_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PayloadData_tags_1, - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - asn_DEF_PayloadData_tags_1, /* Same as above */ - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - &asn_PER_type_PayloadData_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c deleted file mode 100644 index 0135b5f36..000000000 --- a/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PedestrianBicycleDetect.h" - -int -PedestrianBicycleDetect_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static void -PedestrianBicycleDetect_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BOOLEAN.free_struct; - td->print_struct = asn_DEF_BOOLEAN.print_struct; - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; - td->der_encoder = asn_DEF_BOOLEAN.der_encoder; - td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; - td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; - td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; - td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BOOLEAN.per_constraints; - td->elements = asn_DEF_BOOLEAN.elements; - td->elements_count = asn_DEF_BOOLEAN.elements_count; - td->specifics = asn_DEF_BOOLEAN.specifics; -} - -void -PedestrianBicycleDetect_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PedestrianBicycleDetect_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PedestrianBicycleDetect_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PedestrianBicycleDetect_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PedestrianBicycleDetect_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PedestrianBicycleDetect_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PedestrianBicycleDetect_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PedestrianBicycleDetect_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { - "PedestrianBicycleDetect", - "PedestrianBicycleDetect", - PedestrianBicycleDetect_free, - PedestrianBicycleDetect_print, - PedestrianBicycleDetect_constraint, - PedestrianBicycleDetect_decode_ber, - PedestrianBicycleDetect_encode_der, - PedestrianBicycleDetect_decode_xer, - PedestrianBicycleDetect_encode_xer, - PedestrianBicycleDetect_decode_uper, - PedestrianBicycleDetect_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PedestrianBicycleDetect_tags_1, - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c b/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c deleted file mode 100644 index 981e1d3c7..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalAssistive.h" - -int -PersonalAssistive_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PersonalAssistive_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -PersonalAssistive_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalAssistive_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalAssistive_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalAssistive_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalAssistive_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalAssistive_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalAssistive_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalAssistive_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalAssistive_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { - "PersonalAssistive", - "PersonalAssistive", - PersonalAssistive_free, - PersonalAssistive_print, - PersonalAssistive_constraint, - PersonalAssistive_decode_ber, - PersonalAssistive_encode_der, - PersonalAssistive_decode_xer, - PersonalAssistive_encode_xer, - PersonalAssistive_decode_uper, - PersonalAssistive_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalAssistive_tags_1, - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - asn_DEF_PersonalAssistive_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - &asn_PER_type_PersonalAssistive_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c deleted file mode 100644 index 34c180cff..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalClusterRadius.h" - -int -PersonalClusterRadius_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -PersonalClusterRadius_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -PersonalClusterRadius_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalClusterRadius_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalClusterRadius_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalClusterRadius_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalClusterRadius_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalClusterRadius_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalClusterRadius_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalClusterRadius_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalClusterRadius_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { - "PersonalClusterRadius", - "PersonalClusterRadius", - PersonalClusterRadius_free, - PersonalClusterRadius_print, - PersonalClusterRadius_constraint, - PersonalClusterRadius_decode_ber, - PersonalClusterRadius_encode_der, - PersonalClusterRadius_decode_xer, - PersonalClusterRadius_encode_xer, - PersonalClusterRadius_decode_uper, - PersonalClusterRadius_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalClusterRadius_tags_1, - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - &asn_PER_type_PersonalClusterRadius_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c deleted file mode 100644 index a95df47b1..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalCrossingInProgress.h" - -int -PersonalCrossingInProgress_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static void -PersonalCrossingInProgress_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BOOLEAN.free_struct; - td->print_struct = asn_DEF_BOOLEAN.print_struct; - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; - td->der_encoder = asn_DEF_BOOLEAN.der_encoder; - td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; - td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; - td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; - td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BOOLEAN.per_constraints; - td->elements = asn_DEF_BOOLEAN.elements; - td->elements_count = asn_DEF_BOOLEAN.elements_count; - td->specifics = asn_DEF_BOOLEAN.specifics; -} - -void -PersonalCrossingInProgress_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalCrossingInProgress_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingInProgress_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalCrossingInProgress_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingInProgress_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalCrossingInProgress_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingInProgress_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalCrossingInProgress_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { - "PersonalCrossingInProgress", - "PersonalCrossingInProgress", - PersonalCrossingInProgress_free, - PersonalCrossingInProgress_print, - PersonalCrossingInProgress_constraint, - PersonalCrossingInProgress_decode_ber, - PersonalCrossingInProgress_encode_der, - PersonalCrossingInProgress_decode_xer, - PersonalCrossingInProgress_encode_xer, - PersonalCrossingInProgress_decode_uper, - PersonalCrossingInProgress_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalCrossingInProgress_tags_1, - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c deleted file mode 100644 index c95dbc8c6..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalCrossingRequest.h" - -int -PersonalCrossingRequest_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static void -PersonalCrossingRequest_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BOOLEAN.free_struct; - td->print_struct = asn_DEF_BOOLEAN.print_struct; - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; - td->der_encoder = asn_DEF_BOOLEAN.der_encoder; - td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; - td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; - td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; - td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BOOLEAN.per_constraints; - td->elements = asn_DEF_BOOLEAN.elements; - td->elements_count = asn_DEF_BOOLEAN.elements_count; - td->specifics = asn_DEF_BOOLEAN.specifics; -} - -void -PersonalCrossingRequest_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalCrossingRequest_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingRequest_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalCrossingRequest_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingRequest_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalCrossingRequest_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalCrossingRequest_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalCrossingRequest_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { - "PersonalCrossingRequest", - "PersonalCrossingRequest", - PersonalCrossingRequest_free, - PersonalCrossingRequest_print, - PersonalCrossingRequest_constraint, - PersonalCrossingRequest_decode_ber, - PersonalCrossingRequest_encode_der, - PersonalCrossingRequest_decode_xer, - PersonalCrossingRequest_encode_xer, - PersonalCrossingRequest_decode_uper, - PersonalCrossingRequest_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalCrossingRequest_tags_1, - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c deleted file mode 100644 index a5c987766..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalDeviceUsageState.h" - -int -PersonalDeviceUsageState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PersonalDeviceUsageState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -PersonalDeviceUsageState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalDeviceUsageState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUsageState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalDeviceUsageState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUsageState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalDeviceUsageState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUsageState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalDeviceUsageState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { - "PersonalDeviceUsageState", - "PersonalDeviceUsageState", - PersonalDeviceUsageState_free, - PersonalDeviceUsageState_print, - PersonalDeviceUsageState_constraint, - PersonalDeviceUsageState_decode_ber, - PersonalDeviceUsageState_encode_der, - PersonalDeviceUsageState_decode_xer, - PersonalDeviceUsageState_encode_xer, - PersonalDeviceUsageState_decode_uper, - PersonalDeviceUsageState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalDeviceUsageState_tags_1, - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - &asn_PER_type_PersonalDeviceUsageState_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c deleted file mode 100644 index 03e30ee4f..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalDeviceUserType.h" - -int -PersonalDeviceUserType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -PersonalDeviceUserType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -PersonalDeviceUserType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalDeviceUserType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUserType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalDeviceUserType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUserType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalDeviceUserType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalDeviceUserType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalDeviceUserType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "aPEDESTRIAN" }, - { 2, 13, "aPEDALCYCLIST" }, - { 3, 19, "aPUBLICSAFETYWORKER" }, - { 4, 8, "anANIMAL" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { - 2, /* aPEDALCYCLIST(2) */ - 1, /* aPEDESTRIAN(1) */ - 3, /* aPUBLICSAFETYWORKER(3) */ - 4, /* anANIMAL(4) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { - asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { - "PersonalDeviceUserType", - "PersonalDeviceUserType", - PersonalDeviceUserType_free, - PersonalDeviceUserType_print, - PersonalDeviceUserType_constraint, - PersonalDeviceUserType_decode_ber, - PersonalDeviceUserType_encode_der, - PersonalDeviceUserType_decode_xer, - PersonalDeviceUserType_encode_xer, - PersonalDeviceUserType_decode_uper, - PersonalDeviceUserType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalDeviceUserType_tags_1, - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - &asn_PER_type_PersonalDeviceUserType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c deleted file mode 100644 index d3bbdaa0f..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c +++ /dev/null @@ -1,195 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "PersonalMobilityMessage.h" - -#include "DFullTime.h" -#include "DestinationType.h" -#include "MobilityNeedsList.h" -static asn_TYPE_member_t asn_MBR_PersonalMobilityMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, groupId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UUIDType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "groupId" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, requestId), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "requestId" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, status), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalMobilityMessageStatusType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, position), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "position" - }, - { ATF_POINTER, 9, offsetof(struct PersonalMobilityMessage, accuracy), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accuracy" - }, - { ATF_POINTER, 8, offsetof(struct PersonalMobilityMessage, requestDate), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DFullTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "requestDate" - }, - { ATF_POINTER, 7, offsetof(struct PersonalMobilityMessage, pickupDate), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DFullTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pickupDate" - }, - { ATF_POINTER, 6, offsetof(struct PersonalMobilityMessage, destination), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DestinationType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "destination" - }, - { ATF_POINTER, 5, offsetof(struct PersonalMobilityMessage, mobilityNeeds), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityNeedsList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "mobilityNeeds" - }, - { ATF_POINTER, 4, offsetof(struct PersonalMobilityMessage, modeOfTransport), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ModeOfTransportType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "modeOfTransport" - }, - { ATF_POINTER, 3, offsetof(struct PersonalMobilityMessage, eta), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EstimatedTimeType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "eta" - }, - { ATF_POINTER, 2, offsetof(struct PersonalMobilityMessage, isDSRCEquipped), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCEquippedType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "isDSRCEquipped" - }, - { ATF_POINTER, 1, offsetof(struct PersonalMobilityMessage, vehicleDesc), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleDescriptionType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleDesc" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalPersonalMobilityMessage, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static const int asn_MAP_PersonalMobilityMessage_oms_1[] = { 4, 5, 6, 7, 8, 9, 10, 11, 12 }; -static const ber_tlv_tag_t asn_DEF_PersonalMobilityMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PersonalMobilityMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* groupId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestId */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* requestDate */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* pickupDate */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* destination */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* mobilityNeeds */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* modeOfTransport */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* eta */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* isDSRCEquipped */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* vehicleDesc */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PersonalMobilityMessage_specs_1 = { - sizeof(struct PersonalMobilityMessage), - offsetof(struct PersonalMobilityMessage, _asn_ctx), - asn_MAP_PersonalMobilityMessage_tag2el_1, - 14, /* Count of tags in the map */ - asn_MAP_PersonalMobilityMessage_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessage = { - "PersonalMobilityMessage", - "PersonalMobilityMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalMobilityMessage_tags_1, - sizeof(asn_DEF_PersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_PersonalMobilityMessage_tags_1[0]), /* 1 */ - asn_DEF_PersonalMobilityMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_PersonalMobilityMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PersonalMobilityMessage_1, - 14, /* Elements count */ - &asn_SPC_PersonalMobilityMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c deleted file mode 100644 index 30b7e9562..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "PersonalMobilityMessageStatusType.h" - -int -PersonalMobilityMessageStatusType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -PersonalMobilityMessageStatusType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PersonalMobilityMessageStatusType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PersonalMobilityMessageStatusType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PersonalMobilityMessageStatusType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PersonalMobilityMessageStatusType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PersonalMobilityMessageStatusType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PersonalMobilityMessageStatusType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PersonalMobilityMessageStatusType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PersonalMobilityMessageStatusType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PersonalMobilityMessageStatusType_value2enum_1[] = { - { 0, 3, "new" }, - { 1, 6, "update" }, - { 2, 8, "response" }, - { 3, 6, "cancel" }, - { 4, 7, "arrival" }, - { 5, 9, "completed" } -}; -static const unsigned int asn_MAP_PersonalMobilityMessageStatusType_enum2value_1[] = { - 4, /* arrival(4) */ - 3, /* cancel(3) */ - 5, /* completed(5) */ - 0, /* new(0) */ - 2, /* response(2) */ - 1 /* update(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_PersonalMobilityMessageStatusType_specs_1 = { - asn_MAP_PersonalMobilityMessageStatusType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PersonalMobilityMessageStatusType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PersonalMobilityMessageStatusType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessageStatusType = { - "PersonalMobilityMessageStatusType", - "PersonalMobilityMessageStatusType", - PersonalMobilityMessageStatusType_free, - PersonalMobilityMessageStatusType_print, - PersonalMobilityMessageStatusType_constraint, - PersonalMobilityMessageStatusType_decode_ber, - PersonalMobilityMessageStatusType_encode_der, - PersonalMobilityMessageStatusType_decode_xer, - PersonalMobilityMessageStatusType_encode_xer, - PersonalMobilityMessageStatusType_decode_uper, - PersonalMobilityMessageStatusType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalMobilityMessageStatusType_tags_1, - sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1) - /sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1[0]), /* 1 */ - asn_DEF_PersonalMobilityMessageStatusType_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1) - /sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1[0]), /* 1 */ - &asn_PER_type_PersonalMobilityMessageStatusType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PersonalMobilityMessageStatusType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c deleted file mode 100644 index 862972046..000000000 --- a/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c +++ /dev/null @@ -1,312 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PersonalSafetyMessage.h" - -static asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUserType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "heading" - }, - { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, accelSet), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accelSet" - }, - { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pathHistory" - }, - { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pathPrediction" - }, - { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, propulsion), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_PropelledInformation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "propulsion" - }, - { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, useState), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUsageState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "useState" - }, - { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossRequest), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingRequest, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crossRequest" - }, - { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, crossState), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingInProgress, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crossState" - }, - { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterSize), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NumberOfParticipantsInCluster, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "clusterSize" - }, - { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, clusterRadius), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalClusterRadius, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "clusterRadius" - }, - { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, eventResponderType), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyEventResponderWorkerType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "eventResponderType" - }, - { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activityType), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyAndRoadWorkerActivity, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "activityType" - }, - { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, activitySubType), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyDirectingTrafficSubType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "activitySubType" - }, - { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, assistType), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalAssistive, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "assistType" - }, - { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, sizing), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UserSizeAndBehaviour, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sizing" - }, - { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachment), - (ASN_TAG_CLASS_CONTEXT | (22 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Attachment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "attachment" - }, - { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, attachmentRadius), - (ASN_TAG_CLASS_CONTEXT | (23 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AttachmentRadius, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "attachmentRadius" - }, - { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, animalType), - (ASN_TAG_CLASS_CONTEXT | (24 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "animalType" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalPersonalSafetyMessage, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 }; -static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ - { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ - { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ - { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ - { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { - sizeof(struct PersonalSafetyMessage), - offsetof(struct PersonalSafetyMessage, _asn_ctx), - asn_MAP_PersonalSafetyMessage_tag2el_1, - 26, /* Count of tags in the map */ - asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ - 17, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { - "PersonalSafetyMessage", - "PersonalSafetyMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PersonalSafetyMessage_tags_1, - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PersonalSafetyMessage_1, - 26, /* Elements count */ - &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Position3D-2.c b/src/tmx/Asn_J2735/src/r41/Position3D-2.c deleted file mode 100644 index e6fa1e060..000000000 --- a/src/tmx/Asn_J2735/src/r41/Position3D-2.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Position3D-2.h" - -static asn_TYPE_member_t asn_MBR_Position3D_2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_2, lat), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_2, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "long" - }, - { ATF_POINTER, 2, offsetof(struct Position3D_2, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Elevation2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "elevation" - }, - { ATF_POINTER, 1, offsetof(struct Position3D_2, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalPosition3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_Position3D_2_oms_1[] = { 2, 3 }; -static ber_tlv_tag_t asn_DEF_Position3D_2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Position3D_2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Position3D_2_specs_1 = { - sizeof(struct Position3D_2), - offsetof(struct Position3D_2, _asn_ctx), - asn_MAP_Position3D_2_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Position3D_2_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_2 = { - "Position3D-2", - "Position3D-2", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Position3D_2_tags_1, - sizeof(asn_DEF_Position3D_2_tags_1) - /sizeof(asn_DEF_Position3D_2_tags_1[0]), /* 1 */ - asn_DEF_Position3D_2_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_2_tags_1) - /sizeof(asn_DEF_Position3D_2_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Position3D_2_1, - 4, /* Elements count */ - &asn_SPC_Position3D_2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Position3D.c b/src/tmx/Asn_J2735/src/r41/Position3D.c deleted file mode 100644 index 93c1eb810..000000000 --- a/src/tmx/Asn_J2735/src/r41/Position3D.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Position3D.h" - -static asn_TYPE_member_t asn_MBR_Position3D_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "long" - }, - { ATF_POINTER, 1, offsetof(struct Position3D, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Elevation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "elevation" - }, -}; -static int asn_MAP_Position3D_oms_1[] = { 2 }; -static ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { - sizeof(struct Position3D), - offsetof(struct Position3D, _asn_ctx), - asn_MAP_Position3D_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_Position3D_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D = { - "Position3D", - "Position3D", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Position3D_tags_1, - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - asn_DEF_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Position3D_1, - 3, /* Elements count */ - &asn_SPC_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PositionConfidence.c b/src/tmx/Asn_J2735/src/r41/PositionConfidence.c deleted file mode 100644 index cf749f712..000000000 --- a/src/tmx/Asn_J2735/src/r41/PositionConfidence.c +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PositionConfidence.h" - -int -PositionConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -PositionConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -PositionConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PositionConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PositionConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PositionConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PositionConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PositionConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PositionConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PositionConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PositionConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "a500m" }, - { 2, 5, "a200m" }, - { 3, 5, "a100m" }, - { 4, 4, "a50m" }, - { 5, 4, "a20m" }, - { 6, 4, "a10m" }, - { 7, 3, "a5m" }, - { 8, 3, "a2m" }, - { 9, 3, "a1m" }, - { 10, 5, "a50cm" }, - { 11, 5, "a20cm" }, - { 12, 5, "a10cm" }, - { 13, 4, "a5cm" }, - { 14, 4, "a2cm" }, - { 15, 4, "a1cm" } -}; -static unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { - 3, /* a100m(3) */ - 12, /* a10cm(12) */ - 6, /* a10m(6) */ - 15, /* a1cm(15) */ - 9, /* a1m(9) */ - 2, /* a200m(2) */ - 11, /* a20cm(11) */ - 5, /* a20m(5) */ - 14, /* a2cm(14) */ - 8, /* a2m(8) */ - 1, /* a500m(1) */ - 10, /* a50cm(10) */ - 4, /* a50m(4) */ - 13, /* a5cm(13) */ - 7, /* a5m(7) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { - asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { - "PositionConfidence", - "PositionConfidence", - PositionConfidence_free, - PositionConfidence_print, - PositionConfidence_constraint, - PositionConfidence_decode_ber, - PositionConfidence_encode_der, - PositionConfidence_decode_xer, - PositionConfidence_encode_xer, - PositionConfidence_decode_uper, - PositionConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PositionConfidence_tags_1, - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_PositionConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c deleted file mode 100644 index 49b38d368..000000000 --- a/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PositionConfidenceSet.h" - -int -PositionConfidenceSet_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PositionConfidenceSet_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PositionConfidenceSet_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PositionConfidenceSet_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PositionConfidenceSet_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PositionConfidenceSet_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PositionConfidenceSet_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PositionConfidenceSet_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PositionConfidenceSet_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PositionConfidenceSet_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PositionConfidenceSet_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PositionConfidenceSet_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { - "PositionConfidenceSet", - "PositionConfidenceSet", - PositionConfidenceSet_free, - PositionConfidenceSet_print, - PositionConfidenceSet_constraint, - PositionConfidenceSet_decode_ber, - PositionConfidenceSet_encode_der, - PositionConfidenceSet_decode_xer, - PositionConfidenceSet_encode_xer, - PositionConfidenceSet_decode_uper, - PositionConfidenceSet_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PositionConfidenceSet_tags_1, - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - &asn_PER_type_PositionConfidenceSet_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c deleted file mode 100644 index b5b3c679d..000000000 --- a/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PositionalAccuracy.h" - -int -PositionalAccuracy_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 4)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PositionalAccuracy_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -PositionalAccuracy_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PositionalAccuracy_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PositionalAccuracy_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PositionalAccuracy_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PositionalAccuracy_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PositionalAccuracy_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PositionalAccuracy_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PositionalAccuracy_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PositionalAccuracy_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PositionalAccuracy_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { - "PositionalAccuracy", - "PositionalAccuracy", - PositionalAccuracy_free, - PositionalAccuracy_print, - PositionalAccuracy_constraint, - PositionalAccuracy_decode_ber, - PositionalAccuracy_encode_der, - PositionalAccuracy_decode_xer, - PositionalAccuracy_encode_xer, - PositionalAccuracy_decode_uper, - PositionalAccuracy_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PositionalAccuracy_tags_1, - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - &asn_PER_type_PositionalAccuracy_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c deleted file mode 100644 index a4f0c6c96..000000000 --- a/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PreemptPriorityList.h" - -static asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegionalSignalControlZone, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { - sizeof(struct PreemptPriorityList), - offsetof(struct PreemptPriorityList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { - "PreemptPriorityList", - "PreemptPriorityList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PreemptPriorityList_tags_1, - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - &asn_PER_type_PreemptPriorityList_constr_1, - asn_MBR_PreemptPriorityList_1, - 1, /* Single element */ - &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c deleted file mode 100644 index 85f1f4bb2..000000000 --- a/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PrioritizationResponse.h" - -static asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "priorState" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "signalGroup" - }, -}; -static ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { - sizeof(struct PrioritizationResponse), - offsetof(struct PrioritizationResponse, _asn_ctx), - asn_MAP_PrioritizationResponse_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { - "PrioritizationResponse", - "PrioritizationResponse", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PrioritizationResponse_tags_1, - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_PrioritizationResponse_1, - 3, /* Elements count */ - &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c deleted file mode 100644 index 0023ae0cc..000000000 --- a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PrioritizationResponseList.h" - -static asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PrioritizationResponse, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { - sizeof(struct PrioritizationResponseList), - offsetof(struct PrioritizationResponseList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { - "PrioritizationResponseList", - "PrioritizationResponseList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PrioritizationResponseList_tags_1, - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - &asn_PER_type_PrioritizationResponseList_constr_1, - asn_MBR_PrioritizationResponseList_1, - 1, /* Single element */ - &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c deleted file mode 100644 index 207cae4f0..000000000 --- a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PrioritizationResponseStatus.h" - -int -PrioritizationResponseStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -PrioritizationResponseStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -PrioritizationResponseStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PrioritizationResponseStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PrioritizationResponseStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PrioritizationResponseStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PrioritizationResponseStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PrioritizationResponseStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PrioritizationResponseStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PrioritizationResponseStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 9, "requested" }, - { 2, 10, "processing" }, - { 3, 17, "watchOtherTraffic" }, - { 4, 7, "granted" }, - { 5, 8, "rejected" }, - { 6, 11, "maxPresence" } -}; -static unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { - 4, /* granted(4) */ - 6, /* maxPresence(6) */ - 2, /* processing(2) */ - 5, /* rejected(5) */ - 1, /* requested(1) */ - 0, /* unknown(0) */ - 3 /* watchOtherTraffic(3) */ -}; -static asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { - asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { - "PrioritizationResponseStatus", - "PrioritizationResponseStatus", - PrioritizationResponseStatus_free, - PrioritizationResponseStatus_print, - PrioritizationResponseStatus_constraint, - PrioritizationResponseStatus_decode_ber, - PrioritizationResponseStatus_encode_der, - PrioritizationResponseStatus_decode_xer, - PrioritizationResponseStatus_encode_xer, - PrioritizationResponseStatus_decode_uper, - PrioritizationResponseStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PrioritizationResponseStatus_tags_1, - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - &asn_PER_type_PrioritizationResponseStatus_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Priority.c b/src/tmx/Asn_J2735/src/r41/Priority.c deleted file mode 100644 index d9df55293..000000000 --- a/src/tmx/Asn_J2735/src/r41/Priority.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Priority.h" - -int -Priority_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -Priority_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -Priority_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Priority_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Priority_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Priority_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Priority_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Priority_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Priority_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Priority_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Priority_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Priority_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Priority_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Priority_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Priority_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Priority_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Priority_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Priority_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Priority_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Priority = { - "Priority", - "Priority", - Priority_free, - Priority_print, - Priority_constraint, - Priority_decode_ber, - Priority_encode_der, - Priority_decode_xer, - Priority_encode_xer, - Priority_decode_uper, - Priority_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Priority_tags_1, - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - asn_DEF_Priority_tags_1, /* Same as above */ - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - &asn_PER_type_Priority_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c deleted file mode 100644 index 6fc7d4761..000000000 --- a/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c +++ /dev/null @@ -1,338 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ProbeDataManagement.h" - -static int -memb_dataElements_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_term_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_snapshot_constr_8 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_dataElements_constr_13 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_dataElements_constr_13 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_term_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "termtime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermDistance, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "termDistance" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { - sizeof(struct ProbeDataManagement__term), - offsetof(struct ProbeDataManagement__term, _asn_ctx), - offsetof(struct ProbeDataManagement__term, present), - sizeof(((struct ProbeDataManagement__term *)0)->present), - asn_MAP_term_tag2el_5, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_term_5 = { - "term", - "term", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_term_constr_5, - asn_MBR_term_5, - 2, /* Elements count */ - &asn_SPC_term_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_snapshot_8[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "snapshotTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotDistance, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "snapshotDistance" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { - sizeof(struct ProbeDataManagement__snapshot), - offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), - offsetof(struct ProbeDataManagement__snapshot, present), - sizeof(((struct ProbeDataManagement__snapshot *)0)->present), - asn_MAP_snapshot_tag2el_8, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { - "snapshot", - "snapshot", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_snapshot_constr_8, - asn_MBR_snapshot_8, - 2, /* Elements count */ - &asn_SPC_snapshot_specs_8 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_dataElements_13[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleStatusRequest, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_dataElements_tags_13[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_dataElements_specs_13 = { - sizeof(struct ProbeDataManagement__dataElements), - offsetof(struct ProbeDataManagement__dataElements, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_dataElements_13 = { - "dataElements", - "dataElements", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_dataElements_tags_13, - sizeof(asn_DEF_dataElements_tags_13) - /sizeof(asn_DEF_dataElements_tags_13[0]) - 1, /* 1 */ - asn_DEF_dataElements_tags_13, /* Same as above */ - sizeof(asn_DEF_dataElements_tags_13) - /sizeof(asn_DEF_dataElements_tags_13[0]), /* 2 */ - &asn_PER_type_dataElements_constr_13, - asn_MBR_dataElements_13, - 1, /* Single element */ - &asn_SPC_dataElements_specs_13 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Sample, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sample" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "directions" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_term_5, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "term" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_snapshot_8, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "snapshot" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TxTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "txInterval" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, cntTthreshold), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Count, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "cntTthreshold" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, dataElements), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_dataElements_13, - memb_dataElements_constraint_1, - &asn_PER_memb_dataElements_constr_13, - 0, - "dataElements" - }, -}; -static ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* cntTthreshold */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* dataElements */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { - sizeof(struct ProbeDataManagement), - offsetof(struct ProbeDataManagement, _asn_ctx), - asn_MAP_ProbeDataManagement_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 7, /* Start extensions */ - 9 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { - "ProbeDataManagement", - "ProbeDataManagement", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ProbeDataManagement_tags_1, - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ProbeDataManagement_1, - 8, /* Elements count */ - &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c deleted file mode 100644 index 0f25ffa73..000000000 --- a/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ProbeSegmentNumber.h" - -int -ProbeSegmentNumber_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ProbeSegmentNumber_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ProbeSegmentNumber_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ProbeSegmentNumber_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ProbeSegmentNumber_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ProbeSegmentNumber_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ProbeSegmentNumber_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ProbeSegmentNumber_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ProbeSegmentNumber_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ProbeSegmentNumber_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { - "ProbeSegmentNumber", - "ProbeSegmentNumber", - ProbeSegmentNumber_free, - ProbeSegmentNumber_print, - ProbeSegmentNumber_constraint, - ProbeSegmentNumber_decode_ber, - ProbeSegmentNumber_encode_der, - ProbeSegmentNumber_decode_xer, - ProbeSegmentNumber_encode_xer, - ProbeSegmentNumber_decode_uper, - ProbeSegmentNumber_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ProbeSegmentNumber_tags_1, - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - &asn_PER_type_ProbeSegmentNumber_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c deleted file mode 100644 index cb943ee9d..000000000 --- a/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c +++ /dev/null @@ -1,204 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ProbeVehicleData.h" - -static int -memb_snapshots_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_snapshots_constr_8 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_snapshots_constr_8 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_snapshots_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Snapshot, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_snapshots_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_8 = { - sizeof(struct ProbeVehicleData__snapshots), - offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshots_8 = { - "snapshots", - "snapshots", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_snapshots_tags_8, - sizeof(asn_DEF_snapshots_tags_8) - /sizeof(asn_DEF_snapshots_tags_8[0]) - 1, /* 1 */ - asn_DEF_snapshots_tags_8, /* Same as above */ - sizeof(asn_DEF_snapshots_tags_8) - /sizeof(asn_DEF_snapshots_tags_8[0]), /* 2 */ - &asn_PER_type_snapshots_constr_8, - asn_MBR_snapshots_8, - 1, /* Single element */ - &asn_SPC_snapshots_specs_8 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProbeSegmentNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "segNum" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "probeID" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "startVector" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleType" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, cntSnapshots), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Count, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "cntSnapshots" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_snapshots_8, - memb_snapshots_constraint_1, - &asn_PER_memb_snapshots_constr_8, - 0, - "snapshots" - }, -}; -static int asn_MAP_ProbeVehicleData_oms_1[] = { 1, 2, 5 }; -static ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* cntSnapshots */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* snapshots */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { - sizeof(struct ProbeVehicleData), - offsetof(struct ProbeVehicleData, _asn_ctx), - asn_MAP_ProbeVehicleData_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 6, /* Start extensions */ - 8 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { - "ProbeVehicleData", - "ProbeVehicleData", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ProbeVehicleData_tags_1, - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ProbeVehicleData_1, - 7, /* Elements count */ - &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PropelledInformation.c b/src/tmx/Asn_J2735/src/r41/PropelledInformation.c deleted file mode 100644 index 58038a70c..000000000 --- a/src/tmx/Asn_J2735/src/r41/PropelledInformation.c +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PropelledInformation.h" - -static asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HumanPropelledType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "human" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalPropelledType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "animal" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MotorizedPropelledType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "motor" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ -}; -static asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { - sizeof(struct PropelledInformation), - offsetof(struct PropelledInformation, _asn_ctx), - offsetof(struct PropelledInformation, present), - sizeof(((struct PropelledInformation *)0)->present), - asn_MAP_PropelledInformation_tag2el_1, - 3, /* Count of tags in the map */ - 0, - 3 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { - "PropelledInformation", - "PropelledInformation", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_PropelledInformation_constr_1, - asn_MBR_PropelledInformation_1, - 3, /* Elements count */ - &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c deleted file mode 100644 index baeba2c95..000000000 --- a/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PublicSafetyAndRoadWorkerActivity.h" - -int -PublicSafetyAndRoadWorkerActivity_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -PublicSafetyAndRoadWorkerActivity_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PublicSafetyAndRoadWorkerActivity_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyAndRoadWorkerActivity_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PublicSafetyAndRoadWorkerActivity_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyAndRoadWorkerActivity_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PublicSafetyAndRoadWorkerActivity_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyAndRoadWorkerActivity_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PublicSafetyAndRoadWorkerActivity_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { - "PublicSafetyAndRoadWorkerActivity", - "PublicSafetyAndRoadWorkerActivity", - PublicSafetyAndRoadWorkerActivity_free, - PublicSafetyAndRoadWorkerActivity_print, - PublicSafetyAndRoadWorkerActivity_constraint, - PublicSafetyAndRoadWorkerActivity_decode_ber, - PublicSafetyAndRoadWorkerActivity_encode_der, - PublicSafetyAndRoadWorkerActivity_decode_xer, - PublicSafetyAndRoadWorkerActivity_encode_xer, - PublicSafetyAndRoadWorkerActivity_decode_uper, - PublicSafetyAndRoadWorkerActivity_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c deleted file mode 100644 index f0a2946ba..000000000 --- a/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PublicSafetyDirectingTrafficSubType.h" - -int -PublicSafetyDirectingTrafficSubType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 7)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -PublicSafetyDirectingTrafficSubType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PublicSafetyDirectingTrafficSubType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyDirectingTrafficSubType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PublicSafetyDirectingTrafficSubType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyDirectingTrafficSubType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PublicSafetyDirectingTrafficSubType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyDirectingTrafficSubType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PublicSafetyDirectingTrafficSubType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { - "PublicSafetyDirectingTrafficSubType", - "PublicSafetyDirectingTrafficSubType", - PublicSafetyDirectingTrafficSubType_free, - PublicSafetyDirectingTrafficSubType_print, - PublicSafetyDirectingTrafficSubType_constraint, - PublicSafetyDirectingTrafficSubType_decode_ber, - PublicSafetyDirectingTrafficSubType_encode_der, - PublicSafetyDirectingTrafficSubType_decode_xer, - PublicSafetyDirectingTrafficSubType_encode_xer, - PublicSafetyDirectingTrafficSubType_decode_uper, - PublicSafetyDirectingTrafficSubType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c deleted file mode 100644 index 9e5e94783..000000000 --- a/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "PublicSafetyEventResponderWorkerType.h" - -int -PublicSafetyEventResponderWorkerType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -PublicSafetyEventResponderWorkerType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -PublicSafetyEventResponderWorkerType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyEventResponderWorkerType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -PublicSafetyEventResponderWorkerType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyEventResponderWorkerType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -PublicSafetyEventResponderWorkerType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -PublicSafetyEventResponderWorkerType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -PublicSafetyEventResponderWorkerType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "towOperater" }, - { 2, 16, "fireAndEMSWorker" }, - { 3, 10, "aDOTWorker" }, - { 4, 14, "lawEnforcement" }, - { 5, 15, "hazmatResponder" }, - { 6, 19, "animalControlWorker" }, - { 7, 14, "otherPersonnel" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { - 3, /* aDOTWorker(3) */ - 6, /* animalControlWorker(6) */ - 2, /* fireAndEMSWorker(2) */ - 5, /* hazmatResponder(5) */ - 4, /* lawEnforcement(4) */ - 7, /* otherPersonnel(7) */ - 1, /* towOperater(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { - asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { - "PublicSafetyEventResponderWorkerType", - "PublicSafetyEventResponderWorkerType", - PublicSafetyEventResponderWorkerType_free, - PublicSafetyEventResponderWorkerType_print, - PublicSafetyEventResponderWorkerType_constraint, - PublicSafetyEventResponderWorkerType_decode_ber, - PublicSafetyEventResponderWorkerType_encode_der, - PublicSafetyEventResponderWorkerType_decode_xer, - PublicSafetyEventResponderWorkerType_encode_xer, - PublicSafetyEventResponderWorkerType_decode_uper, - PublicSafetyEventResponderWorkerType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c b/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c deleted file mode 100644 index f7d7c7779..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c +++ /dev/null @@ -1,194 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCM-Corrections.h" - -static int -memb_rtcmSets_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 5)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_rtcmSets_constr_7 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_rtcmSets_constr_7 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_rtcmSets_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RTCMmsg, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_rtcmSets_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_rtcmSets_specs_7 = { - sizeof(struct RTCM_Corrections__rtcmSets), - offsetof(struct RTCM_Corrections__rtcmSets, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_rtcmSets_7 = { - "rtcmSets", - "rtcmSets", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_rtcmSets_tags_7, - sizeof(asn_DEF_rtcmSets_tags_7) - /sizeof(asn_DEF_rtcmSets_tags_7[0]) - 1, /* 1 */ - asn_DEF_rtcmSets_tags_7, /* Same as above */ - sizeof(asn_DEF_rtcmSets_tags_7) - /sizeof(asn_DEF_rtcmSets_tags_7[0]), /* 2 */ - &asn_PER_type_rtcmSets_constr_7, - asn_MBR_rtcmSets_7, - 1, /* Single element */ - &asn_SPC_rtcmSets_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_RTCM_Corrections_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rev), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_Revision, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rev" - }, - { ATF_POINTER, 1, offsetof(struct RTCM_Corrections, anchorPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "anchorPoint" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMHeader, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rtcmHeader" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rtcmSets), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_rtcmSets_7, - memb_rtcmSets_constraint_1, - &asn_PER_memb_rtcmSets_constr_7, - 0, - "rtcmSets" - }, -}; -static int asn_MAP_RTCM_Corrections_oms_1[] = { 3 }; -static ber_tlv_tag_t asn_DEF_RTCM_Corrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RTCM_Corrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* rtcmSets */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RTCM_Corrections_specs_1 = { - sizeof(struct RTCM_Corrections), - offsetof(struct RTCM_Corrections, _asn_ctx), - asn_MAP_RTCM_Corrections_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_RTCM_Corrections_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_Corrections = { - "RTCM-Corrections", - "RTCM-Corrections", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCM_Corrections_tags_1, - sizeof(asn_DEF_RTCM_Corrections_tags_1) - /sizeof(asn_DEF_RTCM_Corrections_tags_1[0]), /* 1 */ - asn_DEF_RTCM_Corrections_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_Corrections_tags_1) - /sizeof(asn_DEF_RTCM_Corrections_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RTCM_Corrections_1, - 6, /* Elements count */ - &asn_SPC_RTCM_Corrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-ID.c b/src/tmx/Asn_J2735/src/r41/RTCM-ID.c deleted file mode 100644 index d56e0259c..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCM-ID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCM-ID.h" - -int -RTCM_ID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RTCM_ID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RTCM_ID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RTCM_ID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RTCM_ID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RTCM_ID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RTCM_ID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RTCM_ID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RTCM_ID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RTCM_ID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RTCM_ID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RTCM_ID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RTCM_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_ID = { - "RTCM-ID", - "RTCM-ID", - RTCM_ID_free, - RTCM_ID_print, - RTCM_ID_constraint, - RTCM_ID_decode_ber, - RTCM_ID_encode_der, - RTCM_ID_decode_xer, - RTCM_ID_encode_xer, - RTCM_ID_decode_uper, - RTCM_ID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCM_ID_tags_1, - sizeof(asn_DEF_RTCM_ID_tags_1) - /sizeof(asn_DEF_RTCM_ID_tags_1[0]), /* 1 */ - asn_DEF_RTCM_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_ID_tags_1) - /sizeof(asn_DEF_RTCM_ID_tags_1[0]), /* 1 */ - &asn_PER_type_RTCM_ID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c b/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c deleted file mode 100644 index c87e06958..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCM-Payload.h" - -int -RTCM_Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -RTCM_Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -RTCM_Payload_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RTCM_Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RTCM_Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RTCM_Payload_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RTCM_Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RTCM_Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RTCM_Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RTCM_Payload_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RTCM_Payload_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RTCM_Payload_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RTCM_Payload_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_Payload = { - "RTCM-Payload", - "RTCM-Payload", - RTCM_Payload_free, - RTCM_Payload_print, - RTCM_Payload_constraint, - RTCM_Payload_decode_ber, - RTCM_Payload_encode_der, - RTCM_Payload_decode_xer, - RTCM_Payload_encode_xer, - RTCM_Payload_decode_uper, - RTCM_Payload_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCM_Payload_tags_1, - sizeof(asn_DEF_RTCM_Payload_tags_1) - /sizeof(asn_DEF_RTCM_Payload_tags_1[0]), /* 1 */ - asn_DEF_RTCM_Payload_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_Payload_tags_1) - /sizeof(asn_DEF_RTCM_Payload_tags_1[0]), /* 1 */ - &asn_PER_type_RTCM_Payload_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c b/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c deleted file mode 100644 index 4f0f400d3..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCM-Revision.h" - -int -RTCM_Revision_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -RTCM_Revision_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -RTCM_Revision_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RTCM_Revision_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RTCM_Revision_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RTCM_Revision_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RTCM_Revision_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RTCM_Revision_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RTCM_Revision_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RTCM_Revision_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RTCM_Revision_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "reserved" }, - { 2, 7, "rtcmCMR" }, - { 3, 12, "rtcmCMR-Plus" }, - { 4, 9, "rtcmSAPOS" }, - { 5, 13, "rtcmSAPOS-Adv" }, - { 6, 8, "rtcmRTCA" }, - { 7, 7, "rtcmRAW" }, - { 8, 9, "rtcmRINEX" }, - { 9, 7, "rtcmSP3" }, - { 10, 9, "rtcmBINEX" }, - { 19, 10, "rtcmRev2-x" }, - { 20, 10, "rtcmRev2-0" }, - { 21, 10, "rtcmRev2-1" }, - { 23, 10, "rtcmRev2-3" }, - { 30, 10, "rtcmRev3-0" }, - { 31, 10, "rtcmRev3-1" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { - 1, /* reserved(1) */ - 10, /* rtcmBINEX(10) */ - 2, /* rtcmCMR(2) */ - 3, /* rtcmCMR-Plus(3) */ - 7, /* rtcmRAW(7) */ - 8, /* rtcmRINEX(8) */ - 6, /* rtcmRTCA(6) */ - 12, /* rtcmRev2-0(20) */ - 13, /* rtcmRev2-1(21) */ - 14, /* rtcmRev2-3(23) */ - 11, /* rtcmRev2-x(19) */ - 15, /* rtcmRev3-0(30) */ - 16, /* rtcmRev3-1(31) */ - 4, /* rtcmSAPOS(4) */ - 5, /* rtcmSAPOS-Adv(5) */ - 9, /* rtcmSP3(9) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { - asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 17, /* Number of elements in the maps */ - 18, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { - "RTCM-Revision", - "RTCM-Revision", - RTCM_Revision_free, - RTCM_Revision_print, - RTCM_Revision_constraint, - RTCM_Revision_decode_ber, - RTCM_Revision_encode_der, - RTCM_Revision_decode_xer, - RTCM_Revision_encode_xer, - RTCM_Revision_decode_uper, - RTCM_Revision_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCM_Revision_tags_1, - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - asn_DEF_RTCM_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - &asn_PER_type_RTCM_Revision_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCMHeader.c b/src/tmx/Asn_J2735/src/r41/RTCMHeader.c deleted file mode 100644 index 2ccd59962..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCMHeader.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCMHeader.h" - -int -RTCMHeader_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -RTCMHeader_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -RTCMHeader_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RTCMHeader_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RTCMHeader_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RTCMHeader_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RTCMHeader_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RTCMHeader_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RTCMHeader_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RTCMHeader_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RTCMHeader_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RTCMHeader_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RTCMHeader_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCMHeader = { - "RTCMHeader", - "RTCMHeader", - RTCMHeader_free, - RTCMHeader_print, - RTCMHeader_constraint, - RTCMHeader_decode_ber, - RTCMHeader_encode_der, - RTCMHeader_decode_xer, - RTCMHeader_encode_xer, - RTCMHeader_decode_uper, - RTCMHeader_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCMHeader_tags_1, - sizeof(asn_DEF_RTCMHeader_tags_1) - /sizeof(asn_DEF_RTCMHeader_tags_1[0]), /* 1 */ - asn_DEF_RTCMHeader_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMHeader_tags_1) - /sizeof(asn_DEF_RTCMHeader_tags_1[0]), /* 1 */ - &asn_PER_type_RTCMHeader_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCMPackage.c b/src/tmx/Asn_J2735/src/r41/RTCMPackage.c deleted file mode 100644 index 57b4f7a35..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCMPackage.c +++ /dev/null @@ -1,1302 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCMPackage.h" - -static int -memb_msg1001_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 16 && size <= 124)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1002_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 18 && size <= 156)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1003_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 21 && size <= 210)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1004_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 24 && size <= 258)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1005_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 19)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1006_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 21)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1007_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 5 && size <= 36)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1008_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 6 && size <= 68)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1009_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 16 && size <= 136)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1010_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 18 && size <= 166)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1011_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 21 && size <= 222)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1012_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 24 && size <= 268)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1013_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 13 && size <= 27)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1014_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1015_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 13 && size <= 69)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1016_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 14 && size <= 81)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1017_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 16 && size <= 115)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1019_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 62)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1020_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 45)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1021_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 62)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1022_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 75)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1023_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 73)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1024_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 74)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1025_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 25)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1026_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 30)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1027_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 33)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1029_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 10 && size <= 69)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1030_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 14 && size <= 105)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1031_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 15 && size <= 107)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msg1032_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 20)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_msg1001_constr_4 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 16, 124 } /* (SIZE(16..124)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1002_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 18, 156 } /* (SIZE(18..156)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1003_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 21, 210 } /* (SIZE(21..210)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1004_constr_7 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 24, 258 } /* (SIZE(24..258)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1005_constr_8 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1006_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 21, 21 } /* (SIZE(21..21)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1007_constr_10 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 5, 36 } /* (SIZE(5..36)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1008_constr_11 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 6, 68 } /* (SIZE(6..68)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1009_constr_12 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 16, 136 } /* (SIZE(16..136)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1010_constr_13 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 18, 166 } /* (SIZE(18..166)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1011_constr_14 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 21, 222 } /* (SIZE(21..222)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1012_constr_15 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 24, 268 } /* (SIZE(24..268)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1013_constr_16 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 13, 27 } /* (SIZE(13..27)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1014_constr_18 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 15, 15 } /* (SIZE(15..15)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1015_constr_19 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 13, 69 } /* (SIZE(13..69)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1016_constr_20 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 14, 81 } /* (SIZE(14..81)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1017_constr_21 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 16, 115 } /* (SIZE(16..115)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1019_constr_22 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 62, 62 } /* (SIZE(62..62)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1020_constr_23 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 45, 45 } /* (SIZE(45..45)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1021_constr_24 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 62, 62 } /* (SIZE(62..62)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1022_constr_25 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 75, 75 } /* (SIZE(75..75)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1023_constr_26 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 73, 73 } /* (SIZE(73..73)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1024_constr_27 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 74, 74 } /* (SIZE(74..74)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1025_constr_28 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 25, 25 } /* (SIZE(25..25)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1026_constr_29 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 30, 30 } /* (SIZE(30..30)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1027_constr_30 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 33, 33 } /* (SIZE(33..33)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1029_constr_31 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 10, 69 } /* (SIZE(10..69)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1030_constr_32 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 14, 105 } /* (SIZE(14..105)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1031_constr_33 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 15, 107 } /* (SIZE(15..107)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_msg1032_constr_34 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 20, 20 } /* (SIZE(20..20)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct RTCMPackage, anchorPoint), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "anchorPoint" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMHeader, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rtcmHeader" - }, - { ATF_POINTER, 30, offsetof(struct RTCMPackage, msg1001), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1001_constraint_1, - &asn_PER_memb_msg1001_constr_4, - 0, - "msg1001" - }, - { ATF_POINTER, 29, offsetof(struct RTCMPackage, msg1002), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1002_constraint_1, - &asn_PER_memb_msg1002_constr_5, - 0, - "msg1002" - }, - { ATF_POINTER, 28, offsetof(struct RTCMPackage, msg1003), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1003_constraint_1, - &asn_PER_memb_msg1003_constr_6, - 0, - "msg1003" - }, - { ATF_POINTER, 27, offsetof(struct RTCMPackage, msg1004), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1004_constraint_1, - &asn_PER_memb_msg1004_constr_7, - 0, - "msg1004" - }, - { ATF_POINTER, 26, offsetof(struct RTCMPackage, msg1005), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1005_constraint_1, - &asn_PER_memb_msg1005_constr_8, - 0, - "msg1005" - }, - { ATF_POINTER, 25, offsetof(struct RTCMPackage, msg1006), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1006_constraint_1, - &asn_PER_memb_msg1006_constr_9, - 0, - "msg1006" - }, - { ATF_POINTER, 24, offsetof(struct RTCMPackage, msg1007), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1007_constraint_1, - &asn_PER_memb_msg1007_constr_10, - 0, - "msg1007" - }, - { ATF_POINTER, 23, offsetof(struct RTCMPackage, msg1008), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1008_constraint_1, - &asn_PER_memb_msg1008_constr_11, - 0, - "msg1008" - }, - { ATF_POINTER, 22, offsetof(struct RTCMPackage, msg1009), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1009_constraint_1, - &asn_PER_memb_msg1009_constr_12, - 0, - "msg1009" - }, - { ATF_POINTER, 21, offsetof(struct RTCMPackage, msg1010), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1010_constraint_1, - &asn_PER_memb_msg1010_constr_13, - 0, - "msg1010" - }, - { ATF_POINTER, 20, offsetof(struct RTCMPackage, msg1011), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1011_constraint_1, - &asn_PER_memb_msg1011_constr_14, - 0, - "msg1011" - }, - { ATF_POINTER, 19, offsetof(struct RTCMPackage, msg1012), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1012_constraint_1, - &asn_PER_memb_msg1012_constr_15, - 0, - "msg1012" - }, - { ATF_POINTER, 18, offsetof(struct RTCMPackage, msg1013), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1013_constraint_1, - &asn_PER_memb_msg1013_constr_16, - 0, - "msg1013" - }, - { ATF_POINTER, 17, offsetof(struct RTCMPackage, msg1014), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1014_constraint_1, - &asn_PER_memb_msg1014_constr_18, - 0, - "msg1014" - }, - { ATF_POINTER, 16, offsetof(struct RTCMPackage, msg1015), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1015_constraint_1, - &asn_PER_memb_msg1015_constr_19, - 0, - "msg1015" - }, - { ATF_POINTER, 15, offsetof(struct RTCMPackage, msg1016), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1016_constraint_1, - &asn_PER_memb_msg1016_constr_20, - 0, - "msg1016" - }, - { ATF_POINTER, 14, offsetof(struct RTCMPackage, msg1017), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1017_constraint_1, - &asn_PER_memb_msg1017_constr_21, - 0, - "msg1017" - }, - { ATF_POINTER, 13, offsetof(struct RTCMPackage, msg1019), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1019_constraint_1, - &asn_PER_memb_msg1019_constr_22, - 0, - "msg1019" - }, - { ATF_POINTER, 12, offsetof(struct RTCMPackage, msg1020), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1020_constraint_1, - &asn_PER_memb_msg1020_constr_23, - 0, - "msg1020" - }, - { ATF_POINTER, 11, offsetof(struct RTCMPackage, msg1021), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1021_constraint_1, - &asn_PER_memb_msg1021_constr_24, - 0, - "msg1021" - }, - { ATF_POINTER, 10, offsetof(struct RTCMPackage, msg1022), - (ASN_TAG_CLASS_CONTEXT | (22 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1022_constraint_1, - &asn_PER_memb_msg1022_constr_25, - 0, - "msg1022" - }, - { ATF_POINTER, 9, offsetof(struct RTCMPackage, msg1023), - (ASN_TAG_CLASS_CONTEXT | (23 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1023_constraint_1, - &asn_PER_memb_msg1023_constr_26, - 0, - "msg1023" - }, - { ATF_POINTER, 8, offsetof(struct RTCMPackage, msg1024), - (ASN_TAG_CLASS_CONTEXT | (24 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1024_constraint_1, - &asn_PER_memb_msg1024_constr_27, - 0, - "msg1024" - }, - { ATF_POINTER, 7, offsetof(struct RTCMPackage, msg1025), - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1025_constraint_1, - &asn_PER_memb_msg1025_constr_28, - 0, - "msg1025" - }, - { ATF_POINTER, 6, offsetof(struct RTCMPackage, msg1026), - (ASN_TAG_CLASS_CONTEXT | (26 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1026_constraint_1, - &asn_PER_memb_msg1026_constr_29, - 0, - "msg1026" - }, - { ATF_POINTER, 5, offsetof(struct RTCMPackage, msg1027), - (ASN_TAG_CLASS_CONTEXT | (27 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1027_constraint_1, - &asn_PER_memb_msg1027_constr_30, - 0, - "msg1027" - }, - { ATF_POINTER, 4, offsetof(struct RTCMPackage, msg1029), - (ASN_TAG_CLASS_CONTEXT | (28 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1029_constraint_1, - &asn_PER_memb_msg1029_constr_31, - 0, - "msg1029" - }, - { ATF_POINTER, 3, offsetof(struct RTCMPackage, msg1030), - (ASN_TAG_CLASS_CONTEXT | (29 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1030_constraint_1, - &asn_PER_memb_msg1030_constr_32, - 0, - "msg1030" - }, - { ATF_POINTER, 2, offsetof(struct RTCMPackage, msg1031), - (ASN_TAG_CLASS_CONTEXT | (30 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1031_constraint_1, - &asn_PER_memb_msg1031_constr_33, - 0, - "msg1031" - }, - { ATF_POINTER, 1, offsetof(struct RTCMPackage, msg1032), - (ASN_TAG_CLASS_CONTEXT | (31 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - memb_msg1032_constraint_1, - &asn_PER_memb_msg1032_constr_34, - 0, - "msg1032" - }, -}; -static int asn_MAP_RTCMPackage_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 }; -static ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchorPoint */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg1001 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* msg1002 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* msg1003 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msg1004 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* msg1005 */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* msg1006 */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* msg1007 */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* msg1008 */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* msg1009 */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* msg1010 */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* msg1011 */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* msg1012 */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* msg1013 */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* msg1014 */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* msg1015 */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* msg1016 */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* msg1017 */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* msg1019 */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* msg1020 */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* msg1021 */ - { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* msg1022 */ - { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* msg1023 */ - { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* msg1024 */ - { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 }, /* msg1025 */ - { (ASN_TAG_CLASS_CONTEXT | (26 << 2)), 26, 0, 0 }, /* msg1026 */ - { (ASN_TAG_CLASS_CONTEXT | (27 << 2)), 27, 0, 0 }, /* msg1027 */ - { (ASN_TAG_CLASS_CONTEXT | (28 << 2)), 28, 0, 0 }, /* msg1029 */ - { (ASN_TAG_CLASS_CONTEXT | (29 << 2)), 29, 0, 0 }, /* msg1030 */ - { (ASN_TAG_CLASS_CONTEXT | (30 << 2)), 30, 0, 0 }, /* msg1031 */ - { (ASN_TAG_CLASS_CONTEXT | (31 << 2)), 31, 0, 0 } /* msg1032 */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { - sizeof(struct RTCMPackage), - offsetof(struct RTCMPackage, _asn_ctx), - asn_MAP_RTCMPackage_tag2el_1, - 32, /* Count of tags in the map */ - asn_MAP_RTCMPackage_oms_1, /* Optional members */ - 14, 17, /* Root/Additions */ - 14, /* Start extensions */ - 33 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { - "RTCMPackage", - "RTCMPackage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCMPackage_tags_1, - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - asn_DEF_RTCMPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RTCMPackage_1, - 32, /* Elements count */ - &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RTCMmsg.c b/src/tmx/Asn_J2735/src/r41/RTCMmsg.c deleted file mode 100644 index 2643389e5..000000000 --- a/src/tmx/Asn_J2735/src/r41/RTCMmsg.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RTCMmsg.h" - -static asn_TYPE_member_t asn_MBR_RTCMmsg_1[] = { - { ATF_POINTER, 2, offsetof(struct RTCMmsg, rev), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_Revision, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rev" - }, - { ATF_POINTER, 1, offsetof(struct RTCMmsg, rtcmID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_ID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rtcmID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMmsg, payload), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_Payload, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "payload" - }, -}; -static int asn_MAP_RTCMmsg_oms_1[] = { 0, 1 }; -static ber_tlv_tag_t asn_DEF_RTCMmsg_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RTCMmsg_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rtcmID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* payload */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RTCMmsg_specs_1 = { - sizeof(struct RTCMmsg), - offsetof(struct RTCMmsg, _asn_ctx), - asn_MAP_RTCMmsg_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RTCMmsg_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMmsg = { - "RTCMmsg", - "RTCMmsg", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RTCMmsg_tags_1, - sizeof(asn_DEF_RTCMmsg_tags_1) - /sizeof(asn_DEF_RTCMmsg_tags_1[0]), /* 1 */ - asn_DEF_RTCMmsg_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMmsg_tags_1) - /sizeof(asn_DEF_RTCMmsg_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RTCMmsg_1, - 3, /* Elements count */ - &asn_SPC_RTCMmsg_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RainSensor.c b/src/tmx/Asn_J2735/src/r41/RainSensor.c deleted file mode 100644 index 5e1d219a4..000000000 --- a/src/tmx/Asn_J2735/src/r41/RainSensor.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RainSensor.h" - -int -RainSensor_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -RainSensor_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -RainSensor_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RainSensor_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RainSensor_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RainSensor_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RainSensor_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RainSensor_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RainSensor_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RainSensor_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RainSensor_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RainSensor_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RainSensor_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "lightMist" }, - { 2, 9, "heavyMist" }, - { 3, 18, "lightRainOrDrizzle" }, - { 4, 4, "rain" }, - { 5, 12, "moderateRain" }, - { 6, 9, "heavyRain" }, - { 7, 13, "heavyDownpour" } -}; -static unsigned int asn_MAP_RainSensor_enum2value_1[] = { - 7, /* heavyDownpour(7) */ - 2, /* heavyMist(2) */ - 6, /* heavyRain(6) */ - 1, /* lightMist(1) */ - 3, /* lightRainOrDrizzle(3) */ - 5, /* moderateRain(5) */ - 0, /* none(0) */ - 4 /* rain(4) */ -}; -static asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { - asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RainSensor = { - "RainSensor", - "RainSensor", - RainSensor_free, - RainSensor_print, - RainSensor_constraint, - RainSensor_decode_ber, - RainSensor_encode_der, - RainSensor_decode_xer, - RainSensor_encode_xer, - RainSensor_decode_uper, - RainSensor_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RainSensor_tags_1, - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - asn_DEF_RainSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - &asn_PER_type_RainSensor_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RainSensor_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c deleted file mode 100644 index 03b2ccd91..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-AdvisorySpeed.h" - -static ber_tlv_tag_t asn_DEF_Reg_AdvisorySpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_1 = { - sizeof(struct Reg_AdvisorySpeed), - offsetof(struct Reg_AdvisorySpeed, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed = { - "Reg-AdvisorySpeed", - "Reg-AdvisorySpeed", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_AdvisorySpeed_tags_1, - sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1[0]), /* 1 */ - asn_DEF_Reg_AdvisorySpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_AdvisorySpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c b/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c deleted file mode 100644 index a372ab5f0..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-ComputedLane.h" - -static ber_tlv_tag_t asn_DEF_Reg_ComputedLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_1 = { - sizeof(struct Reg_ComputedLane), - offsetof(struct Reg_ComputedLane, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane = { - "Reg-ComputedLane", - "Reg-ComputedLane", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_ComputedLane_tags_1, - sizeof(asn_DEF_Reg_ComputedLane_tags_1) - /sizeof(asn_DEF_Reg_ComputedLane_tags_1[0]), /* 1 */ - asn_DEF_Reg_ComputedLane_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_ComputedLane_tags_1) - /sizeof(asn_DEF_Reg_ComputedLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_ComputedLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c deleted file mode 100644 index 608c744e3..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-ConnectionManeuverAssist.h" - -static ber_tlv_tag_t asn_DEF_Reg_ConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_1 = { - sizeof(struct Reg_ConnectionManeuverAssist), - offsetof(struct Reg_ConnectionManeuverAssist, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist = { - "Reg-ConnectionManeuverAssist", - "Reg-ConnectionManeuverAssist", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_ConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_Reg_ConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_ConnectionManeuverAssist_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c b/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c deleted file mode 100644 index 37d1269b2..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-GenericLane.h" - -static ber_tlv_tag_t asn_DEF_Reg_GenericLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_1 = { - sizeof(struct Reg_GenericLane), - offsetof(struct Reg_GenericLane, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane = { - "Reg-GenericLane", - "Reg-GenericLane", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_GenericLane_tags_1, - sizeof(asn_DEF_Reg_GenericLane_tags_1) - /sizeof(asn_DEF_Reg_GenericLane_tags_1[0]), /* 1 */ - asn_DEF_Reg_GenericLane_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_GenericLane_tags_1) - /sizeof(asn_DEF_Reg_GenericLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_GenericLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c b/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c deleted file mode 100644 index e4c86abb3..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-Intersection.h" - -static ber_tlv_tag_t asn_DEF_Reg_Intersection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_Intersection_specs_1 = { - sizeof(struct Reg_Intersection), - offsetof(struct Reg_Intersection, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_Intersection = { - "Reg-Intersection", - "Reg-Intersection", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_Intersection_tags_1, - sizeof(asn_DEF_Reg_Intersection_tags_1) - /sizeof(asn_DEF_Reg_Intersection_tags_1[0]), /* 1 */ - asn_DEF_Reg_Intersection_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_Intersection_tags_1) - /sizeof(asn_DEF_Reg_Intersection_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_Intersection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c b/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c deleted file mode 100644 index 52483a6f1..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-IntersectionState.h" - -static ber_tlv_tag_t asn_DEF_Reg_IntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_1 = { - sizeof(struct Reg_IntersectionState), - offsetof(struct Reg_IntersectionState, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState = { - "Reg-IntersectionState", - "Reg-IntersectionState", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_IntersectionState_tags_1, - sizeof(asn_DEF_Reg_IntersectionState_tags_1) - /sizeof(asn_DEF_Reg_IntersectionState_tags_1[0]), /* 1 */ - asn_DEF_Reg_IntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_IntersectionState_tags_1) - /sizeof(asn_DEF_Reg_IntersectionState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_IntersectionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c b/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c deleted file mode 100644 index d0150ff47..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-LaneAttributes.h" - -static ber_tlv_tag_t asn_DEF_Reg_LaneAttributes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_1 = { - sizeof(struct Reg_LaneAttributes), - offsetof(struct Reg_LaneAttributes, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes = { - "Reg-LaneAttributes", - "Reg-LaneAttributes", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_LaneAttributes_tags_1, - sizeof(asn_DEF_Reg_LaneAttributes_tags_1) - /sizeof(asn_DEF_Reg_LaneAttributes_tags_1[0]), /* 1 */ - asn_DEF_Reg_LaneAttributes_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_LaneAttributes_tags_1) - /sizeof(asn_DEF_Reg_LaneAttributes_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_LaneAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c deleted file mode 100644 index 0af1e39b4..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-LaneDataAttribute.h" - -static ber_tlv_tag_t asn_DEF_Reg_LaneDataAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_1 = { - sizeof(struct Reg_LaneDataAttribute), - offsetof(struct Reg_LaneDataAttribute, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute = { - "Reg-LaneDataAttribute", - "Reg-LaneDataAttribute", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_LaneDataAttribute_tags_1, - sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1) - /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ - asn_DEF_Reg_LaneDataAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1) - /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_LaneDataAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MapData.c b/src/tmx/Asn_J2735/src/r41/Reg-MapData.c deleted file mode 100644 index 5c1d1cf6b..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-MapData.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-MapData.h" - -static ber_tlv_tag_t asn_DEF_Reg_MapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_1 = { - sizeof(struct Reg_MapData), - offsetof(struct Reg_MapData, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MapData = { - "Reg-MapData", - "Reg-MapData", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_MapData_tags_1, - sizeof(asn_DEF_Reg_MapData_tags_1) - /sizeof(asn_DEF_Reg_MapData_tags_1[0]), /* 1 */ - asn_DEF_Reg_MapData_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_MapData_tags_1) - /sizeof(asn_DEF_Reg_MapData_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_MapData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c b/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c deleted file mode 100644 index a63b5d598..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-MovementEvent.h" - -static ber_tlv_tag_t asn_DEF_Reg_MovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_1 = { - sizeof(struct Reg_MovementEvent), - offsetof(struct Reg_MovementEvent, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent = { - "Reg-MovementEvent", - "Reg-MovementEvent", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_MovementEvent_tags_1, - sizeof(asn_DEF_Reg_MovementEvent_tags_1) - /sizeof(asn_DEF_Reg_MovementEvent_tags_1[0]), /* 1 */ - asn_DEF_Reg_MovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_MovementEvent_tags_1) - /sizeof(asn_DEF_Reg_MovementEvent_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_MovementEvent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c b/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c deleted file mode 100644 index 1925bbf35..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-MovementState.h" - -static ber_tlv_tag_t asn_DEF_Reg_MovementState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_1 = { - sizeof(struct Reg_MovementState), - offsetof(struct Reg_MovementState, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_MovementState = { - "Reg-MovementState", - "Reg-MovementState", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_MovementState_tags_1, - sizeof(asn_DEF_Reg_MovementState_tags_1) - /sizeof(asn_DEF_Reg_MovementState_tags_1[0]), /* 1 */ - asn_DEF_Reg_MovementState_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_MovementState_tags_1) - /sizeof(asn_DEF_Reg_MovementState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_MovementState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c b/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c deleted file mode 100644 index 99923fcac..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-NodeAttribute.h" - -static ber_tlv_tag_t asn_DEF_Reg_NodeAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttribute_specs_1 = { - sizeof(struct Reg_NodeAttribute), - offsetof(struct Reg_NodeAttribute, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttribute = { - "Reg-NodeAttribute", - "Reg-NodeAttribute", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_NodeAttribute_tags_1, - sizeof(asn_DEF_Reg_NodeAttribute_tags_1) - /sizeof(asn_DEF_Reg_NodeAttribute_tags_1[0]), /* 1 */ - asn_DEF_Reg_NodeAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_NodeAttribute_tags_1) - /sizeof(asn_DEF_Reg_NodeAttribute_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_NodeAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c deleted file mode 100644 index 697cba849..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-NodeOffsetPoint.h" - -static ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPoint_specs_1 = { - sizeof(struct Reg_NodeOffsetPoint), - offsetof(struct Reg_NodeOffsetPoint, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPoint = { - "Reg-NodeOffsetPoint", - "Reg-NodeOffsetPoint", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_NodeOffsetPoint_tags_1, - sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1) - /sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1[0]), /* 1 */ - asn_DEF_Reg_NodeOffsetPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1) - /sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_NodeOffsetPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c deleted file mode 100644 index 8890985f7..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "Reg-PersonalMobilityMessage.h" - -static const ber_tlv_tag_t asn_DEF_Reg_PersonalMobilityMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalMobilityMessage_specs_1 = { - sizeof(struct Reg_PersonalMobilityMessage), - offsetof(struct Reg_PersonalMobilityMessage, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_PersonalMobilityMessage = { - "Reg-PersonalMobilityMessage", - "Reg-PersonalMobilityMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_PersonalMobilityMessage_tags_1, - sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1[0]), /* 1 */ - asn_DEF_Reg_PersonalMobilityMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_PersonalMobilityMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c deleted file mode 100644 index cb4cd9fa3..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "Reg-PersonalSafetyMessage.h" - -static const ber_tlv_tag_t asn_DEF_Reg_PersonalSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_1 = { - sizeof(struct Reg_PersonalSafetyMessage), - offsetof(struct Reg_PersonalSafetyMessage, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage = { - "Reg-PersonalSafetyMessage", - "Reg-PersonalSafetyMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_PersonalSafetyMessage_tags_1, - sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_Reg_PersonalSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_PersonalSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c deleted file mode 100644 index af1fb0e0c..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-Position3D.h" - -static ber_tlv_tag_t asn_DEF_Reg_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_1 = { - sizeof(struct Reg_Position3D), - offsetof(struct Reg_Position3D, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_Position3D = { - "Reg-Position3D", - "Reg-Position3D", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_Position3D_tags_1, - sizeof(asn_DEF_Reg_Position3D_tags_1) - /sizeof(asn_DEF_Reg_Position3D_tags_1[0]), /* 1 */ - asn_DEF_Reg_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_Position3D_tags_1) - /sizeof(asn_DEF_Reg_Position3D_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c deleted file mode 100644 index f6915ed03..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-RestrictionUserType.h" - -static ber_tlv_tag_t asn_DEF_Reg_RestrictionUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_1 = { - sizeof(struct Reg_RestrictionUserType), - offsetof(struct Reg_RestrictionUserType, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType = { - "Reg-RestrictionUserType", - "Reg-RestrictionUserType", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_RestrictionUserType_tags_1, - sizeof(asn_DEF_Reg_RestrictionUserType_tags_1) - /sizeof(asn_DEF_Reg_RestrictionUserType_tags_1[0]), /* 1 */ - asn_DEF_Reg_RestrictionUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_RestrictionUserType_tags_1) - /sizeof(asn_DEF_Reg_RestrictionUserType_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_RestrictionUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c b/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c deleted file mode 100644 index 55c0e89f6..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-RoadSegment.h" - -static ber_tlv_tag_t asn_DEF_Reg_RoadSegment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_1 = { - sizeof(struct Reg_RoadSegment), - offsetof(struct Reg_RoadSegment, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment = { - "Reg-RoadSegment", - "Reg-RoadSegment", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_RoadSegment_tags_1, - sizeof(asn_DEF_Reg_RoadSegment_tags_1) - /sizeof(asn_DEF_Reg_RoadSegment_tags_1[0]), /* 1 */ - asn_DEF_Reg_RoadSegment_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_RoadSegment_tags_1) - /sizeof(asn_DEF_Reg_RoadSegment_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_RoadSegment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c b/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c deleted file mode 100644 index cf3024414..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-SPAT.h" - -static ber_tlv_tag_t asn_DEF_Reg_SPAT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_1 = { - sizeof(struct Reg_SPAT), - offsetof(struct Reg_SPAT, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SPAT = { - "Reg-SPAT", - "Reg-SPAT", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_SPAT_tags_1, - sizeof(asn_DEF_Reg_SPAT_tags_1) - /sizeof(asn_DEF_Reg_SPAT_tags_1[0]), /* 1 */ - asn_DEF_Reg_SPAT_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_SPAT_tags_1) - /sizeof(asn_DEF_Reg_SPAT_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_SPAT_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c b/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c deleted file mode 100644 index 1c6e4d383..000000000 --- a/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "REGION" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Reg-SignalControlZone.h" - -static ber_tlv_tag_t asn_DEF_Reg_SignalControlZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_1 = { - sizeof(struct Reg_SignalControlZone), - offsetof(struct Reg_SignalControlZone, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone = { - "Reg-SignalControlZone", - "Reg-SignalControlZone", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Reg_SignalControlZone_tags_1, - sizeof(asn_DEF_Reg_SignalControlZone_tags_1) - /sizeof(asn_DEF_Reg_SignalControlZone_tags_1[0]), /* 1 */ - asn_DEF_Reg_SignalControlZone_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_SignalControlZone_tags_1) - /sizeof(asn_DEF_Reg_SignalControlZone_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - &asn_SPC_Reg_SignalControlZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionList.c b/src/tmx/Asn_J2735/src/r41/RegionList.c deleted file mode 100644 index ff9390ff1..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionList.h" - -static asn_per_constraints_t asn_PER_type_RegionList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RegionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegionOffsets, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { - sizeof(struct RegionList), - offsetof(struct RegionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionList = { - "RegionList", - "RegionList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionList_tags_1, - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - asn_DEF_RegionList_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - &asn_PER_type_RegionList_constr_1, - asn_MBR_RegionList_1, - 1, /* Single element */ - &asn_SPC_RegionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionOffsets.c b/src/tmx/Asn_J2735/src/r41/RegionOffsets.c deleted file mode 100644 index 3d15ad0cb..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionOffsets.c +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionOffsets.h" - -static int -memb_xOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_yOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_zOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_xOffset_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_yOffset_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_zOffset_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_xOffset_constraint_1, - &asn_PER_memb_xOffset_constr_2, - 0, - "xOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_yOffset_constraint_1, - &asn_PER_memb_yOffset_constr_3, - 0, - "yOffset" - }, - { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_zOffset_constraint_1, - &asn_PER_memb_zOffset_constr_4, - 0, - "zOffset" - }, -}; -static int asn_MAP_RegionOffsets_oms_1[] = { 2 }; -static ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { - sizeof(struct RegionOffsets), - offsetof(struct RegionOffsets, _asn_ctx), - asn_MAP_RegionOffsets_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RegionOffsets_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { - "RegionOffsets", - "RegionOffsets", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionOffsets_tags_1, - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - asn_DEF_RegionOffsets_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RegionOffsets_1, - 3, /* Elements count */ - &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionPointSet.c b/src/tmx/Asn_J2735/src/r41/RegionPointSet.c deleted file mode 100644 index bb1575274..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionPointSet.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionPointSet.h" - -static asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { - { ATF_POINTER, 1, offsetof(struct RegionPointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "anchor" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nodeList" - }, -}; -static int asn_MAP_RegionPointSet_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* nodeList */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { - sizeof(struct RegionPointSet), - offsetof(struct RegionPointSet, _asn_ctx), - asn_MAP_RegionPointSet_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RegionPointSet_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { - "RegionPointSet", - "RegionPointSet", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionPointSet_tags_1, - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - asn_DEF_RegionPointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RegionPointSet_1, - 2, /* Elements count */ - &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c deleted file mode 100644 index 1e306af44..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalAdvisorySpeed.h" - -int -RegionalAdvisorySpeed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_AdvisorySpeed.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_AdvisorySpeed, - * so here we adjust the DEF accordingly. - */ -static void -RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_AdvisorySpeed.free_struct; - td->print_struct = asn_DEF_Reg_AdvisorySpeed.print_struct; - td->check_constraints = asn_DEF_Reg_AdvisorySpeed.check_constraints; - td->ber_decoder = asn_DEF_Reg_AdvisorySpeed.ber_decoder; - td->der_encoder = asn_DEF_Reg_AdvisorySpeed.der_encoder; - td->xer_decoder = asn_DEF_Reg_AdvisorySpeed.xer_decoder; - td->xer_encoder = asn_DEF_Reg_AdvisorySpeed.xer_encoder; - td->uper_decoder = asn_DEF_Reg_AdvisorySpeed.uper_decoder; - td->uper_encoder = asn_DEF_Reg_AdvisorySpeed.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_AdvisorySpeed.per_constraints; - td->elements = asn_DEF_Reg_AdvisorySpeed.elements; - td->elements_count = asn_DEF_Reg_AdvisorySpeed.elements_count; - td->specifics = asn_DEF_Reg_AdvisorySpeed.specifics; -} - -void -RegionalAdvisorySpeed_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalAdvisorySpeed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalAdvisorySpeed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalAdvisorySpeed_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalAdvisorySpeed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalAdvisorySpeed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalAdvisorySpeed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalAdvisorySpeed_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalAdvisorySpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalAdvisorySpeed = { - "RegionalAdvisorySpeed", - "RegionalAdvisorySpeed", - RegionalAdvisorySpeed_free, - RegionalAdvisorySpeed_print, - RegionalAdvisorySpeed_constraint, - RegionalAdvisorySpeed_decode_ber, - RegionalAdvisorySpeed_encode_der, - RegionalAdvisorySpeed_decode_xer, - RegionalAdvisorySpeed_encode_xer, - RegionalAdvisorySpeed_decode_uper, - RegionalAdvisorySpeed_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalAdvisorySpeed_tags_1, - sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1) - /sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1[0]), /* 1 */ - asn_DEF_RegionalAdvisorySpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1) - /sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c b/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c deleted file mode 100644 index 40cdd783e..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalComputedLane.h" - -int -RegionalComputedLane_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_ComputedLane.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_ComputedLane, - * so here we adjust the DEF accordingly. - */ -static void -RegionalComputedLane_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_ComputedLane.free_struct; - td->print_struct = asn_DEF_Reg_ComputedLane.print_struct; - td->check_constraints = asn_DEF_Reg_ComputedLane.check_constraints; - td->ber_decoder = asn_DEF_Reg_ComputedLane.ber_decoder; - td->der_encoder = asn_DEF_Reg_ComputedLane.der_encoder; - td->xer_decoder = asn_DEF_Reg_ComputedLane.xer_decoder; - td->xer_encoder = asn_DEF_Reg_ComputedLane.xer_encoder; - td->uper_decoder = asn_DEF_Reg_ComputedLane.uper_decoder; - td->uper_encoder = asn_DEF_Reg_ComputedLane.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_ComputedLane.per_constraints; - td->elements = asn_DEF_Reg_ComputedLane.elements; - td->elements_count = asn_DEF_Reg_ComputedLane.elements_count; - td->specifics = asn_DEF_Reg_ComputedLane.specifics; -} - -void -RegionalComputedLane_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalComputedLane_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalComputedLane_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalComputedLane_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalComputedLane_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalComputedLane_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalComputedLane_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalComputedLane_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalComputedLane_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalComputedLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalComputedLane = { - "RegionalComputedLane", - "RegionalComputedLane", - RegionalComputedLane_free, - RegionalComputedLane_print, - RegionalComputedLane_constraint, - RegionalComputedLane_decode_ber, - RegionalComputedLane_encode_der, - RegionalComputedLane_decode_xer, - RegionalComputedLane_encode_xer, - RegionalComputedLane_decode_uper, - RegionalComputedLane_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalComputedLane_tags_1, - sizeof(asn_DEF_RegionalComputedLane_tags_1) - /sizeof(asn_DEF_RegionalComputedLane_tags_1[0]), /* 1 */ - asn_DEF_RegionalComputedLane_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalComputedLane_tags_1) - /sizeof(asn_DEF_RegionalComputedLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c deleted file mode 100644 index 65ebd4a98..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalConnectionManeuverAssist.h" - -int -RegionalConnectionManeuverAssist_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_ConnectionManeuverAssist.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_ConnectionManeuverAssist, - * so here we adjust the DEF accordingly. - */ -static void -RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_ConnectionManeuverAssist.free_struct; - td->print_struct = asn_DEF_Reg_ConnectionManeuverAssist.print_struct; - td->check_constraints = asn_DEF_Reg_ConnectionManeuverAssist.check_constraints; - td->ber_decoder = asn_DEF_Reg_ConnectionManeuverAssist.ber_decoder; - td->der_encoder = asn_DEF_Reg_ConnectionManeuverAssist.der_encoder; - td->xer_decoder = asn_DEF_Reg_ConnectionManeuverAssist.xer_decoder; - td->xer_encoder = asn_DEF_Reg_ConnectionManeuverAssist.xer_encoder; - td->uper_decoder = asn_DEF_Reg_ConnectionManeuverAssist.uper_decoder; - td->uper_encoder = asn_DEF_Reg_ConnectionManeuverAssist.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_ConnectionManeuverAssist.per_constraints; - td->elements = asn_DEF_Reg_ConnectionManeuverAssist.elements; - td->elements_count = asn_DEF_Reg_ConnectionManeuverAssist.elements_count; - td->specifics = asn_DEF_Reg_ConnectionManeuverAssist.specifics; -} - -void -RegionalConnectionManeuverAssist_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalConnectionManeuverAssist_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalConnectionManeuverAssist_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalConnectionManeuverAssist_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalConnectionManeuverAssist_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalConnectionManeuverAssist_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalConnectionManeuverAssist_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalConnectionManeuverAssist_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalConnectionManeuverAssist = { - "RegionalConnectionManeuverAssist", - "RegionalConnectionManeuverAssist", - RegionalConnectionManeuverAssist_free, - RegionalConnectionManeuverAssist_print, - RegionalConnectionManeuverAssist_constraint, - RegionalConnectionManeuverAssist_decode_ber, - RegionalConnectionManeuverAssist_encode_der, - RegionalConnectionManeuverAssist_decode_xer, - RegionalConnectionManeuverAssist_encode_xer, - RegionalConnectionManeuverAssist_decode_uper, - RegionalConnectionManeuverAssist_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_RegionalConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c b/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c deleted file mode 100644 index f571b51d5..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalGenericLane.h" - -int -RegionalGenericLane_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_GenericLane.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_GenericLane, - * so here we adjust the DEF accordingly. - */ -static void -RegionalGenericLane_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_GenericLane.free_struct; - td->print_struct = asn_DEF_Reg_GenericLane.print_struct; - td->check_constraints = asn_DEF_Reg_GenericLane.check_constraints; - td->ber_decoder = asn_DEF_Reg_GenericLane.ber_decoder; - td->der_encoder = asn_DEF_Reg_GenericLane.der_encoder; - td->xer_decoder = asn_DEF_Reg_GenericLane.xer_decoder; - td->xer_encoder = asn_DEF_Reg_GenericLane.xer_encoder; - td->uper_decoder = asn_DEF_Reg_GenericLane.uper_decoder; - td->uper_encoder = asn_DEF_Reg_GenericLane.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_GenericLane.per_constraints; - td->elements = asn_DEF_Reg_GenericLane.elements; - td->elements_count = asn_DEF_Reg_GenericLane.elements_count; - td->specifics = asn_DEF_Reg_GenericLane.specifics; -} - -void -RegionalGenericLane_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalGenericLane_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalGenericLane_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalGenericLane_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalGenericLane_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalGenericLane_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalGenericLane_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalGenericLane_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalGenericLane_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalGenericLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalGenericLane = { - "RegionalGenericLane", - "RegionalGenericLane", - RegionalGenericLane_free, - RegionalGenericLane_print, - RegionalGenericLane_constraint, - RegionalGenericLane_decode_ber, - RegionalGenericLane_encode_der, - RegionalGenericLane_decode_xer, - RegionalGenericLane_encode_xer, - RegionalGenericLane_decode_uper, - RegionalGenericLane_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalGenericLane_tags_1, - sizeof(asn_DEF_RegionalGenericLane_tags_1) - /sizeof(asn_DEF_RegionalGenericLane_tags_1[0]), /* 1 */ - asn_DEF_RegionalGenericLane_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalGenericLane_tags_1) - /sizeof(asn_DEF_RegionalGenericLane_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c b/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c deleted file mode 100644 index 73c340e3c..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalIntersection.h" - -int -RegionalIntersection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_Intersection.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_Intersection, - * so here we adjust the DEF accordingly. - */ -static void -RegionalIntersection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_Intersection.free_struct; - td->print_struct = asn_DEF_Reg_Intersection.print_struct; - td->check_constraints = asn_DEF_Reg_Intersection.check_constraints; - td->ber_decoder = asn_DEF_Reg_Intersection.ber_decoder; - td->der_encoder = asn_DEF_Reg_Intersection.der_encoder; - td->xer_decoder = asn_DEF_Reg_Intersection.xer_decoder; - td->xer_encoder = asn_DEF_Reg_Intersection.xer_encoder; - td->uper_decoder = asn_DEF_Reg_Intersection.uper_decoder; - td->uper_encoder = asn_DEF_Reg_Intersection.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_Intersection.per_constraints; - td->elements = asn_DEF_Reg_Intersection.elements; - td->elements_count = asn_DEF_Reg_Intersection.elements_count; - td->specifics = asn_DEF_Reg_Intersection.specifics; -} - -void -RegionalIntersection_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalIntersection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalIntersection_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalIntersection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalIntersection_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalIntersection_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalIntersection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalIntersection = { - "RegionalIntersection", - "RegionalIntersection", - RegionalIntersection_free, - RegionalIntersection_print, - RegionalIntersection_constraint, - RegionalIntersection_decode_ber, - RegionalIntersection_encode_der, - RegionalIntersection_decode_xer, - RegionalIntersection_encode_xer, - RegionalIntersection_decode_uper, - RegionalIntersection_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalIntersection_tags_1, - sizeof(asn_DEF_RegionalIntersection_tags_1) - /sizeof(asn_DEF_RegionalIntersection_tags_1[0]), /* 1 */ - asn_DEF_RegionalIntersection_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalIntersection_tags_1) - /sizeof(asn_DEF_RegionalIntersection_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c b/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c deleted file mode 100644 index 76dc29cf6..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalIntersectionState.h" - -int -RegionalIntersectionState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_IntersectionState.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_IntersectionState, - * so here we adjust the DEF accordingly. - */ -static void -RegionalIntersectionState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_IntersectionState.free_struct; - td->print_struct = asn_DEF_Reg_IntersectionState.print_struct; - td->check_constraints = asn_DEF_Reg_IntersectionState.check_constraints; - td->ber_decoder = asn_DEF_Reg_IntersectionState.ber_decoder; - td->der_encoder = asn_DEF_Reg_IntersectionState.der_encoder; - td->xer_decoder = asn_DEF_Reg_IntersectionState.xer_decoder; - td->xer_encoder = asn_DEF_Reg_IntersectionState.xer_encoder; - td->uper_decoder = asn_DEF_Reg_IntersectionState.uper_decoder; - td->uper_encoder = asn_DEF_Reg_IntersectionState.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_IntersectionState.per_constraints; - td->elements = asn_DEF_Reg_IntersectionState.elements; - td->elements_count = asn_DEF_Reg_IntersectionState.elements_count; - td->specifics = asn_DEF_Reg_IntersectionState.specifics; -} - -void -RegionalIntersectionState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalIntersectionState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersectionState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalIntersectionState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersectionState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalIntersectionState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalIntersectionState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalIntersectionState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalIntersectionState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalIntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalIntersectionState = { - "RegionalIntersectionState", - "RegionalIntersectionState", - RegionalIntersectionState_free, - RegionalIntersectionState_print, - RegionalIntersectionState_constraint, - RegionalIntersectionState_decode_ber, - RegionalIntersectionState_encode_der, - RegionalIntersectionState_decode_xer, - RegionalIntersectionState_encode_xer, - RegionalIntersectionState_decode_uper, - RegionalIntersectionState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalIntersectionState_tags_1, - sizeof(asn_DEF_RegionalIntersectionState_tags_1) - /sizeof(asn_DEF_RegionalIntersectionState_tags_1[0]), /* 1 */ - asn_DEF_RegionalIntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalIntersectionState_tags_1) - /sizeof(asn_DEF_RegionalIntersectionState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c b/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c deleted file mode 100644 index cc3ad6fb3..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalLaneAttributes.h" - -int -RegionalLaneAttributes_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_LaneAttributes.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_LaneAttributes, - * so here we adjust the DEF accordingly. - */ -static void -RegionalLaneAttributes_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_LaneAttributes.free_struct; - td->print_struct = asn_DEF_Reg_LaneAttributes.print_struct; - td->check_constraints = asn_DEF_Reg_LaneAttributes.check_constraints; - td->ber_decoder = asn_DEF_Reg_LaneAttributes.ber_decoder; - td->der_encoder = asn_DEF_Reg_LaneAttributes.der_encoder; - td->xer_decoder = asn_DEF_Reg_LaneAttributes.xer_decoder; - td->xer_encoder = asn_DEF_Reg_LaneAttributes.xer_encoder; - td->uper_decoder = asn_DEF_Reg_LaneAttributes.uper_decoder; - td->uper_encoder = asn_DEF_Reg_LaneAttributes.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_LaneAttributes.per_constraints; - td->elements = asn_DEF_Reg_LaneAttributes.elements; - td->elements_count = asn_DEF_Reg_LaneAttributes.elements_count; - td->specifics = asn_DEF_Reg_LaneAttributes.specifics; -} - -void -RegionalLaneAttributes_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalLaneAttributes_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneAttributes_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalLaneAttributes_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneAttributes_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalLaneAttributes_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneAttributes_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalLaneAttributes_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalLaneAttributes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalLaneAttributes = { - "RegionalLaneAttributes", - "RegionalLaneAttributes", - RegionalLaneAttributes_free, - RegionalLaneAttributes_print, - RegionalLaneAttributes_constraint, - RegionalLaneAttributes_decode_ber, - RegionalLaneAttributes_encode_der, - RegionalLaneAttributes_decode_xer, - RegionalLaneAttributes_encode_xer, - RegionalLaneAttributes_decode_uper, - RegionalLaneAttributes_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalLaneAttributes_tags_1, - sizeof(asn_DEF_RegionalLaneAttributes_tags_1) - /sizeof(asn_DEF_RegionalLaneAttributes_tags_1[0]), /* 1 */ - asn_DEF_RegionalLaneAttributes_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalLaneAttributes_tags_1) - /sizeof(asn_DEF_RegionalLaneAttributes_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c deleted file mode 100644 index 80e23be1d..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalLaneDataAttribute.h" - -int -RegionalLaneDataAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_LaneDataAttribute.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_LaneDataAttribute, - * so here we adjust the DEF accordingly. - */ -static void -RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_LaneDataAttribute.free_struct; - td->print_struct = asn_DEF_Reg_LaneDataAttribute.print_struct; - td->check_constraints = asn_DEF_Reg_LaneDataAttribute.check_constraints; - td->ber_decoder = asn_DEF_Reg_LaneDataAttribute.ber_decoder; - td->der_encoder = asn_DEF_Reg_LaneDataAttribute.der_encoder; - td->xer_decoder = asn_DEF_Reg_LaneDataAttribute.xer_decoder; - td->xer_encoder = asn_DEF_Reg_LaneDataAttribute.xer_encoder; - td->uper_decoder = asn_DEF_Reg_LaneDataAttribute.uper_decoder; - td->uper_encoder = asn_DEF_Reg_LaneDataAttribute.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_LaneDataAttribute.per_constraints; - td->elements = asn_DEF_Reg_LaneDataAttribute.elements; - td->elements_count = asn_DEF_Reg_LaneDataAttribute.elements_count; - td->specifics = asn_DEF_Reg_LaneDataAttribute.specifics; -} - -void -RegionalLaneDataAttribute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalLaneDataAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneDataAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalLaneDataAttribute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneDataAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalLaneDataAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalLaneDataAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalLaneDataAttribute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalLaneDataAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalLaneDataAttribute = { - "RegionalLaneDataAttribute", - "RegionalLaneDataAttribute", - RegionalLaneDataAttribute_free, - RegionalLaneDataAttribute_print, - RegionalLaneDataAttribute_constraint, - RegionalLaneDataAttribute_decode_ber, - RegionalLaneDataAttribute_encode_der, - RegionalLaneDataAttribute_decode_xer, - RegionalLaneDataAttribute_encode_xer, - RegionalLaneDataAttribute_decode_uper, - RegionalLaneDataAttribute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalLaneDataAttribute_tags_1, - sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1) - /sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1[0]), /* 1 */ - asn_DEF_RegionalLaneDataAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1) - /sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMapData.c b/src/tmx/Asn_J2735/src/r41/RegionalMapData.c deleted file mode 100644 index 59f8f1fd9..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalMapData.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalMapData.h" - -int -RegionalMapData_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_MapData.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_MapData, - * so here we adjust the DEF accordingly. - */ -static void -RegionalMapData_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_MapData.free_struct; - td->print_struct = asn_DEF_Reg_MapData.print_struct; - td->check_constraints = asn_DEF_Reg_MapData.check_constraints; - td->ber_decoder = asn_DEF_Reg_MapData.ber_decoder; - td->der_encoder = asn_DEF_Reg_MapData.der_encoder; - td->xer_decoder = asn_DEF_Reg_MapData.xer_decoder; - td->xer_encoder = asn_DEF_Reg_MapData.xer_encoder; - td->uper_decoder = asn_DEF_Reg_MapData.uper_decoder; - td->uper_encoder = asn_DEF_Reg_MapData.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_MapData.per_constraints; - td->elements = asn_DEF_Reg_MapData.elements; - td->elements_count = asn_DEF_Reg_MapData.elements_count; - td->specifics = asn_DEF_Reg_MapData.specifics; -} - -void -RegionalMapData_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalMapData_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalMapData_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalMapData_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalMapData_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalMapData_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalMapData_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalMapData_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalMapData_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalMapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalMapData = { - "RegionalMapData", - "RegionalMapData", - RegionalMapData_free, - RegionalMapData_print, - RegionalMapData_constraint, - RegionalMapData_decode_ber, - RegionalMapData_encode_der, - RegionalMapData_decode_xer, - RegionalMapData_encode_xer, - RegionalMapData_decode_uper, - RegionalMapData_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalMapData_tags_1, - sizeof(asn_DEF_RegionalMapData_tags_1) - /sizeof(asn_DEF_RegionalMapData_tags_1[0]), /* 1 */ - asn_DEF_RegionalMapData_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalMapData_tags_1) - /sizeof(asn_DEF_RegionalMapData_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c b/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c deleted file mode 100644 index 1c54437cc..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalMovementEvent.h" - -int -RegionalMovementEvent_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_MovementEvent.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_MovementEvent, - * so here we adjust the DEF accordingly. - */ -static void -RegionalMovementEvent_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_MovementEvent.free_struct; - td->print_struct = asn_DEF_Reg_MovementEvent.print_struct; - td->check_constraints = asn_DEF_Reg_MovementEvent.check_constraints; - td->ber_decoder = asn_DEF_Reg_MovementEvent.ber_decoder; - td->der_encoder = asn_DEF_Reg_MovementEvent.der_encoder; - td->xer_decoder = asn_DEF_Reg_MovementEvent.xer_decoder; - td->xer_encoder = asn_DEF_Reg_MovementEvent.xer_encoder; - td->uper_decoder = asn_DEF_Reg_MovementEvent.uper_decoder; - td->uper_encoder = asn_DEF_Reg_MovementEvent.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_MovementEvent.per_constraints; - td->elements = asn_DEF_Reg_MovementEvent.elements; - td->elements_count = asn_DEF_Reg_MovementEvent.elements_count; - td->specifics = asn_DEF_Reg_MovementEvent.specifics; -} - -void -RegionalMovementEvent_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalMovementEvent_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementEvent_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalMovementEvent_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementEvent_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalMovementEvent_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementEvent_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalMovementEvent_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalMovementEvent_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalMovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalMovementEvent = { - "RegionalMovementEvent", - "RegionalMovementEvent", - RegionalMovementEvent_free, - RegionalMovementEvent_print, - RegionalMovementEvent_constraint, - RegionalMovementEvent_decode_ber, - RegionalMovementEvent_encode_der, - RegionalMovementEvent_decode_xer, - RegionalMovementEvent_encode_xer, - RegionalMovementEvent_decode_uper, - RegionalMovementEvent_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalMovementEvent_tags_1, - sizeof(asn_DEF_RegionalMovementEvent_tags_1) - /sizeof(asn_DEF_RegionalMovementEvent_tags_1[0]), /* 1 */ - asn_DEF_RegionalMovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalMovementEvent_tags_1) - /sizeof(asn_DEF_RegionalMovementEvent_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c b/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c deleted file mode 100644 index 368b064f3..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalMovementState.h" - -int -RegionalMovementState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_MovementState.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_MovementState, - * so here we adjust the DEF accordingly. - */ -static void -RegionalMovementState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_MovementState.free_struct; - td->print_struct = asn_DEF_Reg_MovementState.print_struct; - td->check_constraints = asn_DEF_Reg_MovementState.check_constraints; - td->ber_decoder = asn_DEF_Reg_MovementState.ber_decoder; - td->der_encoder = asn_DEF_Reg_MovementState.der_encoder; - td->xer_decoder = asn_DEF_Reg_MovementState.xer_decoder; - td->xer_encoder = asn_DEF_Reg_MovementState.xer_encoder; - td->uper_decoder = asn_DEF_Reg_MovementState.uper_decoder; - td->uper_encoder = asn_DEF_Reg_MovementState.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_MovementState.per_constraints; - td->elements = asn_DEF_Reg_MovementState.elements; - td->elements_count = asn_DEF_Reg_MovementState.elements_count; - td->specifics = asn_DEF_Reg_MovementState.specifics; -} - -void -RegionalMovementState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalMovementState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalMovementState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalMovementState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalMovementState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalMovementState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalMovementState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalMovementState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalMovementState = { - "RegionalMovementState", - "RegionalMovementState", - RegionalMovementState_free, - RegionalMovementState_print, - RegionalMovementState_constraint, - RegionalMovementState_decode_ber, - RegionalMovementState_encode_der, - RegionalMovementState_decode_xer, - RegionalMovementState_encode_xer, - RegionalMovementState_decode_uper, - RegionalMovementState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalMovementState_tags_1, - sizeof(asn_DEF_RegionalMovementState_tags_1) - /sizeof(asn_DEF_RegionalMovementState_tags_1[0]), /* 1 */ - asn_DEF_RegionalMovementState_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalMovementState_tags_1) - /sizeof(asn_DEF_RegionalMovementState_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c deleted file mode 100644 index 2b4389e78..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalNodeAttribute.h" - -int -RegionalNodeAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_NodeAttribute.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_NodeAttribute, - * so here we adjust the DEF accordingly. - */ -static void -RegionalNodeAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_NodeAttribute.free_struct; - td->print_struct = asn_DEF_Reg_NodeAttribute.print_struct; - td->check_constraints = asn_DEF_Reg_NodeAttribute.check_constraints; - td->ber_decoder = asn_DEF_Reg_NodeAttribute.ber_decoder; - td->der_encoder = asn_DEF_Reg_NodeAttribute.der_encoder; - td->xer_decoder = asn_DEF_Reg_NodeAttribute.xer_decoder; - td->xer_encoder = asn_DEF_Reg_NodeAttribute.xer_encoder; - td->uper_decoder = asn_DEF_Reg_NodeAttribute.uper_decoder; - td->uper_encoder = asn_DEF_Reg_NodeAttribute.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_NodeAttribute.per_constraints; - td->elements = asn_DEF_Reg_NodeAttribute.elements; - td->elements_count = asn_DEF_Reg_NodeAttribute.elements_count; - td->specifics = asn_DEF_Reg_NodeAttribute.specifics; -} - -void -RegionalNodeAttribute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalNodeAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalNodeAttribute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalNodeAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalNodeAttribute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalNodeAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttribute = { - "RegionalNodeAttribute", - "RegionalNodeAttribute", - RegionalNodeAttribute_free, - RegionalNodeAttribute_print, - RegionalNodeAttribute_constraint, - RegionalNodeAttribute_decode_ber, - RegionalNodeAttribute_encode_der, - RegionalNodeAttribute_decode_xer, - RegionalNodeAttribute_encode_xer, - RegionalNodeAttribute_decode_uper, - RegionalNodeAttribute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalNodeAttribute_tags_1, - sizeof(asn_DEF_RegionalNodeAttribute_tags_1) - /sizeof(asn_DEF_RegionalNodeAttribute_tags_1[0]), /* 1 */ - asn_DEF_RegionalNodeAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalNodeAttribute_tags_1) - /sizeof(asn_DEF_RegionalNodeAttribute_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c deleted file mode 100644 index c28461123..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalNodeAttributeList.h" - -static asn_per_constraints_t asn_PER_type_RegionalNodeAttributeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RegionalNodeAttributeList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegionalNodeAttribute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RegionalNodeAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RegionalNodeAttributeList_specs_1 = { - sizeof(struct RegionalNodeAttributeList), - offsetof(struct RegionalNodeAttributeList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttributeList = { - "RegionalNodeAttributeList", - "RegionalNodeAttributeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalNodeAttributeList_tags_1, - sizeof(asn_DEF_RegionalNodeAttributeList_tags_1) - /sizeof(asn_DEF_RegionalNodeAttributeList_tags_1[0]), /* 1 */ - asn_DEF_RegionalNodeAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalNodeAttributeList_tags_1) - /sizeof(asn_DEF_RegionalNodeAttributeList_tags_1[0]), /* 1 */ - &asn_PER_type_RegionalNodeAttributeList_constr_1, - asn_MBR_RegionalNodeAttributeList_1, - 1, /* Single element */ - &asn_SPC_RegionalNodeAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c deleted file mode 100644 index 09c946274..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalNodeOffsetPoint.h" - -int -RegionalNodeOffsetPoint_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_NodeOffsetPoint.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_NodeOffsetPoint, - * so here we adjust the DEF accordingly. - */ -static void -RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_NodeOffsetPoint.free_struct; - td->print_struct = asn_DEF_Reg_NodeOffsetPoint.print_struct; - td->check_constraints = asn_DEF_Reg_NodeOffsetPoint.check_constraints; - td->ber_decoder = asn_DEF_Reg_NodeOffsetPoint.ber_decoder; - td->der_encoder = asn_DEF_Reg_NodeOffsetPoint.der_encoder; - td->xer_decoder = asn_DEF_Reg_NodeOffsetPoint.xer_decoder; - td->xer_encoder = asn_DEF_Reg_NodeOffsetPoint.xer_encoder; - td->uper_decoder = asn_DEF_Reg_NodeOffsetPoint.uper_decoder; - td->uper_encoder = asn_DEF_Reg_NodeOffsetPoint.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_NodeOffsetPoint.per_constraints; - td->elements = asn_DEF_Reg_NodeOffsetPoint.elements; - td->elements_count = asn_DEF_Reg_NodeOffsetPoint.elements_count; - td->specifics = asn_DEF_Reg_NodeOffsetPoint.specifics; -} - -void -RegionalNodeOffsetPoint_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalNodeOffsetPoint_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeOffsetPoint_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalNodeOffsetPoint_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeOffsetPoint_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalNodeOffsetPoint_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalNodeOffsetPoint_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalNodeOffsetPoint_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalNodeOffsetPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalNodeOffsetPoint = { - "RegionalNodeOffsetPoint", - "RegionalNodeOffsetPoint", - RegionalNodeOffsetPoint_free, - RegionalNodeOffsetPoint_print, - RegionalNodeOffsetPoint_constraint, - RegionalNodeOffsetPoint_decode_ber, - RegionalNodeOffsetPoint_encode_der, - RegionalNodeOffsetPoint_decode_xer, - RegionalNodeOffsetPoint_encode_xer, - RegionalNodeOffsetPoint_decode_uper, - RegionalNodeOffsetPoint_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalNodeOffsetPoint_tags_1, - sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1) - /sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1[0]), /* 1 */ - asn_DEF_RegionalNodeOffsetPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1) - /sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c deleted file mode 100644 index 63253099c..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "RegionalPersonalMobilityMessage.h" - -int -RegionalPersonalMobilityMessage_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_PersonalMobilityMessage.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_PersonalMobilityMessage, - * so here we adjust the DEF accordingly. - */ -static void -RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_PersonalMobilityMessage.free_struct; - td->print_struct = asn_DEF_Reg_PersonalMobilityMessage.print_struct; - td->check_constraints = asn_DEF_Reg_PersonalMobilityMessage.check_constraints; - td->ber_decoder = asn_DEF_Reg_PersonalMobilityMessage.ber_decoder; - td->der_encoder = asn_DEF_Reg_PersonalMobilityMessage.der_encoder; - td->xer_decoder = asn_DEF_Reg_PersonalMobilityMessage.xer_decoder; - td->xer_encoder = asn_DEF_Reg_PersonalMobilityMessage.xer_encoder; - td->uper_decoder = asn_DEF_Reg_PersonalMobilityMessage.uper_decoder; - td->uper_encoder = asn_DEF_Reg_PersonalMobilityMessage.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_PersonalMobilityMessage.per_constraints; - td->elements = asn_DEF_Reg_PersonalMobilityMessage.elements; - td->elements_count = asn_DEF_Reg_PersonalMobilityMessage.elements_count; - td->specifics = asn_DEF_Reg_PersonalMobilityMessage.specifics; -} - -void -RegionalPersonalMobilityMessage_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalPersonalMobilityMessage_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalMobilityMessage_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalPersonalMobilityMessage_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalMobilityMessage_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalPersonalMobilityMessage_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalMobilityMessage_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalPersonalMobilityMessage_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static const ber_tlv_tag_t asn_DEF_RegionalPersonalMobilityMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalPersonalMobilityMessage = { - "RegionalPersonalMobilityMessage", - "RegionalPersonalMobilityMessage", - RegionalPersonalMobilityMessage_free, - RegionalPersonalMobilityMessage_print, - RegionalPersonalMobilityMessage_constraint, - RegionalPersonalMobilityMessage_decode_ber, - RegionalPersonalMobilityMessage_encode_der, - RegionalPersonalMobilityMessage_decode_xer, - RegionalPersonalMobilityMessage_encode_xer, - RegionalPersonalMobilityMessage_decode_uper, - RegionalPersonalMobilityMessage_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalPersonalMobilityMessage_tags_1, - sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1[0]), /* 1 */ - asn_DEF_RegionalPersonalMobilityMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1) - /sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c deleted file mode 100644 index ed95f33ed..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "RegionalPersonalSafetyMessage.h" - -int -RegionalPersonalSafetyMessage_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_PersonalSafetyMessage.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_PersonalSafetyMessage, - * so here we adjust the DEF accordingly. - */ -static void -RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_PersonalSafetyMessage.free_struct; - td->print_struct = asn_DEF_Reg_PersonalSafetyMessage.print_struct; - td->check_constraints = asn_DEF_Reg_PersonalSafetyMessage.check_constraints; - td->ber_decoder = asn_DEF_Reg_PersonalSafetyMessage.ber_decoder; - td->der_encoder = asn_DEF_Reg_PersonalSafetyMessage.der_encoder; - td->xer_decoder = asn_DEF_Reg_PersonalSafetyMessage.xer_decoder; - td->xer_encoder = asn_DEF_Reg_PersonalSafetyMessage.xer_encoder; - td->uper_decoder = asn_DEF_Reg_PersonalSafetyMessage.uper_decoder; - td->uper_encoder = asn_DEF_Reg_PersonalSafetyMessage.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_PersonalSafetyMessage.per_constraints; - td->elements = asn_DEF_Reg_PersonalSafetyMessage.elements; - td->elements_count = asn_DEF_Reg_PersonalSafetyMessage.elements_count; - td->specifics = asn_DEF_Reg_PersonalSafetyMessage.specifics; -} - -void -RegionalPersonalSafetyMessage_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalPersonalSafetyMessage_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalSafetyMessage_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalPersonalSafetyMessage_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalSafetyMessage_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalPersonalSafetyMessage_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalPersonalSafetyMessage_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalPersonalSafetyMessage_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static const ber_tlv_tag_t asn_DEF_RegionalPersonalSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalPersonalSafetyMessage = { - "RegionalPersonalSafetyMessage", - "RegionalPersonalSafetyMessage", - RegionalPersonalSafetyMessage_free, - RegionalPersonalSafetyMessage_print, - RegionalPersonalSafetyMessage_constraint, - RegionalPersonalSafetyMessage_decode_ber, - RegionalPersonalSafetyMessage_encode_der, - RegionalPersonalSafetyMessage_decode_xer, - RegionalPersonalSafetyMessage_encode_xer, - RegionalPersonalSafetyMessage_decode_uper, - RegionalPersonalSafetyMessage_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalPersonalSafetyMessage_tags_1, - sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_RegionalPersonalSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c b/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c deleted file mode 100644 index 48ac2a4c3..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalPosition3D.h" - -int -RegionalPosition3D_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_Position3D.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_Position3D, - * so here we adjust the DEF accordingly. - */ -static void -RegionalPosition3D_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_Position3D.free_struct; - td->print_struct = asn_DEF_Reg_Position3D.print_struct; - td->check_constraints = asn_DEF_Reg_Position3D.check_constraints; - td->ber_decoder = asn_DEF_Reg_Position3D.ber_decoder; - td->der_encoder = asn_DEF_Reg_Position3D.der_encoder; - td->xer_decoder = asn_DEF_Reg_Position3D.xer_decoder; - td->xer_encoder = asn_DEF_Reg_Position3D.xer_encoder; - td->uper_decoder = asn_DEF_Reg_Position3D.uper_decoder; - td->uper_encoder = asn_DEF_Reg_Position3D.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_Position3D.per_constraints; - td->elements = asn_DEF_Reg_Position3D.elements; - td->elements_count = asn_DEF_Reg_Position3D.elements_count; - td->specifics = asn_DEF_Reg_Position3D.specifics; -} - -void -RegionalPosition3D_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalPosition3D_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalPosition3D_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalPosition3D_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalPosition3D_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalPosition3D_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalPosition3D_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalPosition3D_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalPosition3D_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalPosition3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalPosition3D = { - "RegionalPosition3D", - "RegionalPosition3D", - RegionalPosition3D_free, - RegionalPosition3D_print, - RegionalPosition3D_constraint, - RegionalPosition3D_decode_ber, - RegionalPosition3D_encode_der, - RegionalPosition3D_decode_xer, - RegionalPosition3D_encode_xer, - RegionalPosition3D_decode_uper, - RegionalPosition3D_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalPosition3D_tags_1, - sizeof(asn_DEF_RegionalPosition3D_tags_1) - /sizeof(asn_DEF_RegionalPosition3D_tags_1[0]), /* 1 */ - asn_DEF_RegionalPosition3D_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalPosition3D_tags_1) - /sizeof(asn_DEF_RegionalPosition3D_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c deleted file mode 100644 index 9f289eeab..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalRestrictionUserType.h" - -int -RegionalRestrictionUserType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_RestrictionUserType.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_RestrictionUserType, - * so here we adjust the DEF accordingly. - */ -static void -RegionalRestrictionUserType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_RestrictionUserType.free_struct; - td->print_struct = asn_DEF_Reg_RestrictionUserType.print_struct; - td->check_constraints = asn_DEF_Reg_RestrictionUserType.check_constraints; - td->ber_decoder = asn_DEF_Reg_RestrictionUserType.ber_decoder; - td->der_encoder = asn_DEF_Reg_RestrictionUserType.der_encoder; - td->xer_decoder = asn_DEF_Reg_RestrictionUserType.xer_decoder; - td->xer_encoder = asn_DEF_Reg_RestrictionUserType.xer_encoder; - td->uper_decoder = asn_DEF_Reg_RestrictionUserType.uper_decoder; - td->uper_encoder = asn_DEF_Reg_RestrictionUserType.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_RestrictionUserType.per_constraints; - td->elements = asn_DEF_Reg_RestrictionUserType.elements; - td->elements_count = asn_DEF_Reg_RestrictionUserType.elements_count; - td->specifics = asn_DEF_Reg_RestrictionUserType.specifics; -} - -void -RegionalRestrictionUserType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalRestrictionUserType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalRestrictionUserType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalRestrictionUserType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalRestrictionUserType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalRestrictionUserType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalRestrictionUserType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalRestrictionUserType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalRestrictionUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalRestrictionUserType = { - "RegionalRestrictionUserType", - "RegionalRestrictionUserType", - RegionalRestrictionUserType_free, - RegionalRestrictionUserType_print, - RegionalRestrictionUserType_constraint, - RegionalRestrictionUserType_decode_ber, - RegionalRestrictionUserType_encode_der, - RegionalRestrictionUserType_decode_xer, - RegionalRestrictionUserType_encode_xer, - RegionalRestrictionUserType_decode_uper, - RegionalRestrictionUserType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalRestrictionUserType_tags_1, - sizeof(asn_DEF_RegionalRestrictionUserType_tags_1) - /sizeof(asn_DEF_RegionalRestrictionUserType_tags_1[0]), /* 1 */ - asn_DEF_RegionalRestrictionUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalRestrictionUserType_tags_1) - /sizeof(asn_DEF_RegionalRestrictionUserType_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c b/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c deleted file mode 100644 index 48a7d2ffa..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalRoadSegment.h" - -int -RegionalRoadSegment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_RoadSegment.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_RoadSegment, - * so here we adjust the DEF accordingly. - */ -static void -RegionalRoadSegment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_RoadSegment.free_struct; - td->print_struct = asn_DEF_Reg_RoadSegment.print_struct; - td->check_constraints = asn_DEF_Reg_RoadSegment.check_constraints; - td->ber_decoder = asn_DEF_Reg_RoadSegment.ber_decoder; - td->der_encoder = asn_DEF_Reg_RoadSegment.der_encoder; - td->xer_decoder = asn_DEF_Reg_RoadSegment.xer_decoder; - td->xer_encoder = asn_DEF_Reg_RoadSegment.xer_encoder; - td->uper_decoder = asn_DEF_Reg_RoadSegment.uper_decoder; - td->uper_encoder = asn_DEF_Reg_RoadSegment.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_RoadSegment.per_constraints; - td->elements = asn_DEF_Reg_RoadSegment.elements; - td->elements_count = asn_DEF_Reg_RoadSegment.elements_count; - td->specifics = asn_DEF_Reg_RoadSegment.specifics; -} - -void -RegionalRoadSegment_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalRoadSegment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalRoadSegment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalRoadSegment_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalRoadSegment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalRoadSegment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalRoadSegment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalRoadSegment_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalRoadSegment_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalRoadSegment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalRoadSegment = { - "RegionalRoadSegment", - "RegionalRoadSegment", - RegionalRoadSegment_free, - RegionalRoadSegment_print, - RegionalRoadSegment_constraint, - RegionalRoadSegment_decode_ber, - RegionalRoadSegment_encode_der, - RegionalRoadSegment_decode_xer, - RegionalRoadSegment_encode_xer, - RegionalRoadSegment_decode_uper, - RegionalRoadSegment_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalRoadSegment_tags_1, - sizeof(asn_DEF_RegionalRoadSegment_tags_1) - /sizeof(asn_DEF_RegionalRoadSegment_tags_1[0]), /* 1 */ - asn_DEF_RegionalRoadSegment_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalRoadSegment_tags_1) - /sizeof(asn_DEF_RegionalRoadSegment_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c b/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c deleted file mode 100644 index 52df66e1e..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalSPAT.h" - -int -RegionalSPAT_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_SPAT.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_SPAT, - * so here we adjust the DEF accordingly. - */ -static void -RegionalSPAT_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_SPAT.free_struct; - td->print_struct = asn_DEF_Reg_SPAT.print_struct; - td->check_constraints = asn_DEF_Reg_SPAT.check_constraints; - td->ber_decoder = asn_DEF_Reg_SPAT.ber_decoder; - td->der_encoder = asn_DEF_Reg_SPAT.der_encoder; - td->xer_decoder = asn_DEF_Reg_SPAT.xer_decoder; - td->xer_encoder = asn_DEF_Reg_SPAT.xer_encoder; - td->uper_decoder = asn_DEF_Reg_SPAT.uper_decoder; - td->uper_encoder = asn_DEF_Reg_SPAT.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_SPAT.per_constraints; - td->elements = asn_DEF_Reg_SPAT.elements; - td->elements_count = asn_DEF_Reg_SPAT.elements_count; - td->specifics = asn_DEF_Reg_SPAT.specifics; -} - -void -RegionalSPAT_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalSPAT_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalSPAT_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalSPAT_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalSPAT_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalSPAT_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalSPAT_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalSPAT_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalSPAT_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalSPAT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalSPAT = { - "RegionalSPAT", - "RegionalSPAT", - RegionalSPAT_free, - RegionalSPAT_print, - RegionalSPAT_constraint, - RegionalSPAT_decode_ber, - RegionalSPAT_encode_der, - RegionalSPAT_decode_xer, - RegionalSPAT_encode_xer, - RegionalSPAT_decode_uper, - RegionalSPAT_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalSPAT_tags_1, - sizeof(asn_DEF_RegionalSPAT_tags_1) - /sizeof(asn_DEF_RegionalSPAT_tags_1[0]), /* 1 */ - asn_DEF_RegionalSPAT_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalSPAT_tags_1) - /sizeof(asn_DEF_RegionalSPAT_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c b/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c deleted file mode 100644 index a21403970..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegionalSignalControlZone.h" - -int -RegionalSignalControlZone_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_Reg_SignalControlZone.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using Reg_SignalControlZone, - * so here we adjust the DEF accordingly. - */ -static void -RegionalSignalControlZone_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_Reg_SignalControlZone.free_struct; - td->print_struct = asn_DEF_Reg_SignalControlZone.print_struct; - td->check_constraints = asn_DEF_Reg_SignalControlZone.check_constraints; - td->ber_decoder = asn_DEF_Reg_SignalControlZone.ber_decoder; - td->der_encoder = asn_DEF_Reg_SignalControlZone.der_encoder; - td->xer_decoder = asn_DEF_Reg_SignalControlZone.xer_decoder; - td->xer_encoder = asn_DEF_Reg_SignalControlZone.xer_encoder; - td->uper_decoder = asn_DEF_Reg_SignalControlZone.uper_decoder; - td->uper_encoder = asn_DEF_Reg_SignalControlZone.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_Reg_SignalControlZone.per_constraints; - td->elements = asn_DEF_Reg_SignalControlZone.elements; - td->elements_count = asn_DEF_Reg_SignalControlZone.elements_count; - td->specifics = asn_DEF_Reg_SignalControlZone.specifics; -} - -void -RegionalSignalControlZone_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RegionalSignalControlZone_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RegionalSignalControlZone_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RegionalSignalControlZone_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RegionalSignalControlZone_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RegionalSignalControlZone_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RegionalSignalControlZone_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RegionalSignalControlZone_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_RegionalSignalControlZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionalSignalControlZone = { - "RegionalSignalControlZone", - "RegionalSignalControlZone", - RegionalSignalControlZone_free, - RegionalSignalControlZone_print, - RegionalSignalControlZone_constraint, - RegionalSignalControlZone_decode_ber, - RegionalSignalControlZone_encode_der, - RegionalSignalControlZone_decode_xer, - RegionalSignalControlZone_encode_xer, - RegionalSignalControlZone_decode_uper, - RegionalSignalControlZone_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegionalSignalControlZone_tags_1, - sizeof(asn_DEF_RegionalSignalControlZone_tags_1) - /sizeof(asn_DEF_RegionalSignalControlZone_tags_1[0]), /* 1 */ - asn_DEF_RegionalSignalControlZone_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionalSignalControlZone_tags_1) - /sizeof(asn_DEF_RegionalSignalControlZone_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c deleted file mode 100644 index cb01d134e..000000000 --- a/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RegulatorySpeedLimit.h" - -static asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speed" - }, -}; -static ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { - sizeof(struct RegulatorySpeedLimit), - offsetof(struct RegulatorySpeedLimit, _asn_ctx), - asn_MAP_RegulatorySpeedLimit_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { - "RegulatorySpeedLimit", - "RegulatorySpeedLimit", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RegulatorySpeedLimit_tags_1, - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RegulatorySpeedLimit_1, - 2, /* Elements count */ - &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RequestID.c b/src/tmx/Asn_J2735/src/r41/RequestID.c deleted file mode 100644 index 47c21d23a..000000000 --- a/src/tmx/Asn_J2735/src/r41/RequestID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "RequestID.h" - -int -RequestID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RequestID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RequestID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RequestID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RequestID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RequestID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RequestID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RequestID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RequestID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RequestID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RequestID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RequestID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RequestID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 1, 100 } /* (1..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestID = { - "RequestID", - "RequestID", - RequestID_free, - RequestID_print, - RequestID_constraint, - RequestID_decode_ber, - RequestID_encode_der, - RequestID_decode_xer, - RequestID_encode_xer, - RequestID_decode_uper, - RequestID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RequestID_tags_1, - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - asn_DEF_RequestID_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - &asn_PER_type_RequestID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RequestedItem.c b/src/tmx/Asn_J2735/src/r41/RequestedItem.c deleted file mode 100644 index d4ebdda21..000000000 --- a/src/tmx/Asn_J2735/src/r41/RequestedItem.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RequestedItem.h" - -int -RequestedItem_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -RequestedItem_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -RequestedItem_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RequestedItem_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RequestedItem_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RequestedItem_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RequestedItem_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RequestedItem_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RequestedItem_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RequestedItem_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RequestedItem_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RequestedItem_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 17 } /* (0..17,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 5, "itemA" }, - { 2, 5, "itemB" }, - { 3, 5, "itemC" }, - { 4, 5, "itemD" }, - { 5, 5, "itemE" }, - { 6, 5, "itemF" }, - { 7, 5, "itemG" }, - { 8, 5, "itemH" }, - { 9, 5, "itemI" }, - { 10, 5, "itemJ" }, - { 11, 5, "itemK" }, - { 12, 5, "itemL" }, - { 13, 5, "itemM" }, - { 14, 5, "itemN" }, - { 15, 5, "itemO" }, - { 16, 5, "itemP" }, - { 17, 5, "itemQ" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_RequestedItem_enum2value_1[] = { - 1, /* itemA(1) */ - 2, /* itemB(2) */ - 3, /* itemC(3) */ - 4, /* itemD(4) */ - 5, /* itemE(5) */ - 6, /* itemF(6) */ - 7, /* itemG(7) */ - 8, /* itemH(8) */ - 9, /* itemI(9) */ - 10, /* itemJ(10) */ - 11, /* itemK(11) */ - 12, /* itemL(12) */ - 13, /* itemM(13) */ - 14, /* itemN(14) */ - 15, /* itemO(15) */ - 16, /* itemP(16) */ - 17, /* itemQ(17) */ - 0 /* reserved(0) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { - asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ - 18, /* Number of elements in the maps */ - 19, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestedItem = { - "RequestedItem", - "RequestedItem", - RequestedItem_free, - RequestedItem_print, - RequestedItem_constraint, - RequestedItem_decode_ber, - RequestedItem_encode_der, - RequestedItem_decode_xer, - RequestedItem_encode_xer, - RequestedItem_decode_uper, - RequestedItem_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RequestedItem_tags_1, - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - asn_DEF_RequestedItem_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - &asn_PER_type_RequestedItem_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestedItem_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c deleted file mode 100644 index d66a3ee7f..000000000 --- a/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ResponderGroupAffected.h" - -int -ResponderGroupAffected_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -ResponderGroupAffected_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -ResponderGroupAffected_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ResponderGroupAffected_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ResponderGroupAffected_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ResponderGroupAffected_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ResponderGroupAffected_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ResponderGroupAffected_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ResponderGroupAffected_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ResponderGroupAffected_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ResponderGroupAffected_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { - { 9729, 23, "emergency-vehicle-units" }, - { 9730, 29, "federal-law-enforcement-units" }, - { 9731, 18, "state-police-units" }, - { 9732, 19, "county-police-units" }, - { 9733, 18, "local-police-units" }, - { 9734, 15, "ambulance-units" }, - { 9735, 12, "rescue-units" }, - { 9736, 10, "fire-units" }, - { 9737, 12, "hAZMAT-units" }, - { 9738, 14, "light-tow-unit" }, - { 9739, 14, "heavy-tow-unit" }, - { 9740, 23, "freeway-service-patrols" }, - { 9741, 29, "transportation-response-units" }, - { 9742, 33, "private-contractor-response-units" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { - 5, /* ambulance-units(9734) */ - 3, /* county-police-units(9732) */ - 0, /* emergency-vehicle-units(9729) */ - 1, /* federal-law-enforcement-units(9730) */ - 7, /* fire-units(9736) */ - 11, /* freeway-service-patrols(9740) */ - 8, /* hAZMAT-units(9737) */ - 10, /* heavy-tow-unit(9739) */ - 9, /* light-tow-unit(9738) */ - 4, /* local-police-units(9733) */ - 13, /* private-contractor-response-units(9742) */ - 6, /* rescue-units(9735) */ - 2, /* state-police-units(9731) */ - 12 /* transportation-response-units(9741) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { - asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { - "ResponderGroupAffected", - "ResponderGroupAffected", - ResponderGroupAffected_free, - ResponderGroupAffected_print, - ResponderGroupAffected_constraint, - ResponderGroupAffected_decode_ber, - ResponderGroupAffected_encode_der, - ResponderGroupAffected_decode_xer, - ResponderGroupAffected_encode_xer, - ResponderGroupAffected_decode_uper, - ResponderGroupAffected_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ResponderGroupAffected_tags_1, - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - &asn_PER_type_ResponderGroupAffected_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ResponseType.c b/src/tmx/Asn_J2735/src/r41/ResponseType.c deleted file mode 100644 index 43927d044..000000000 --- a/src/tmx/Asn_J2735/src/r41/ResponseType.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ResponseType.h" - -int -ResponseType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -ResponseType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -ResponseType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ResponseType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ResponseType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ResponseType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ResponseType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ResponseType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ResponseType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ResponseType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ResponseType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ResponseType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ResponseType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { - { 0, 21, "notInUseOrNotEquipped" }, - { 1, 9, "emergency" }, - { 2, 12, "nonEmergency" }, - { 3, 7, "pursuit" } -}; -static unsigned int asn_MAP_ResponseType_enum2value_1[] = { - 1, /* emergency(1) */ - 2, /* nonEmergency(2) */ - 0, /* notInUseOrNotEquipped(0) */ - 3 /* pursuit(3) */ -}; -static asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { - asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponseType = { - "ResponseType", - "ResponseType", - ResponseType_free, - ResponseType_print, - ResponseType_constraint, - ResponseType_decode_ber, - ResponseType_encode_der, - ResponseType_decode_xer, - ResponseType_encode_xer, - ResponseType_decode_uper, - ResponseType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ResponseType_tags_1, - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - asn_DEF_ResponseType_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - &asn_PER_type_ResponseType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponseType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c deleted file mode 100644 index acb174e0c..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionAppliesTo.h" - -int -RestrictionAppliesTo_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -RestrictionAppliesTo_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -RestrictionAppliesTo_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RestrictionAppliesTo_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RestrictionAppliesTo_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RestrictionAppliesTo_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RestrictionAppliesTo_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RestrictionAppliesTo_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RestrictionAppliesTo_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RestrictionAppliesTo_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 15, "equippedTransit" }, - { 2, 13, "equippedTaxis" }, - { 3, 13, "equippedOther" }, - { 4, 17, "emissionCompliant" }, - { 5, 15, "equippedBicycle" }, - { 6, 15, "weightCompliant" }, - { 7, 15, "heightCompliant" }, - { 8, 11, "pedestrians" }, - { 9, 17, "slowMovingPersons" }, - { 10, 15, "wheelchairUsers" }, - { 11, 18, "visualDisabilities" }, - { 12, 17, "audioDisabilities" }, - { 13, 24, "otherUnknownDisabilities" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { - 12, /* audioDisabilities(12) */ - 4, /* emissionCompliant(4) */ - 5, /* equippedBicycle(5) */ - 3, /* equippedOther(3) */ - 2, /* equippedTaxis(2) */ - 1, /* equippedTransit(1) */ - 7, /* heightCompliant(7) */ - 0, /* none(0) */ - 13, /* otherUnknownDisabilities(13) */ - 8, /* pedestrians(8) */ - 9, /* slowMovingPersons(9) */ - 11, /* visualDisabilities(11) */ - 6, /* weightCompliant(6) */ - 10 /* wheelchairUsers(10) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { - asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { - "RestrictionAppliesTo", - "RestrictionAppliesTo", - RestrictionAppliesTo_free, - RestrictionAppliesTo_print, - RestrictionAppliesTo_constraint, - RestrictionAppliesTo_decode_ber, - RestrictionAppliesTo_encode_der, - RestrictionAppliesTo_decode_xer, - RestrictionAppliesTo_encode_xer, - RestrictionAppliesTo_decode_uper, - RestrictionAppliesTo_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RestrictionAppliesTo_tags_1, - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - &asn_PER_type_RestrictionAppliesTo_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c deleted file mode 100644 index cccae4c1b..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionClassAssignment.h" - -static asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionUserTypeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "users" - }, -}; -static ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { - sizeof(struct RestrictionClassAssignment), - offsetof(struct RestrictionClassAssignment, _asn_ctx), - asn_MAP_RestrictionClassAssignment_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { - "RestrictionClassAssignment", - "RestrictionClassAssignment", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RestrictionClassAssignment_tags_1, - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RestrictionClassAssignment_1, - 2, /* Elements count */ - &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c deleted file mode 100644 index 4ce491747..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionClassID.h" - -int -RestrictionClassID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RestrictionClassID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RestrictionClassID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RestrictionClassID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RestrictionClassID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RestrictionClassID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RestrictionClassID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RestrictionClassID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RestrictionClassID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RestrictionClassID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RestrictionClassID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { - "RestrictionClassID", - "RestrictionClassID", - RestrictionClassID_free, - RestrictionClassID_print, - RestrictionClassID_constraint, - RestrictionClassID_decode_ber, - RestrictionClassID_encode_der, - RestrictionClassID_decode_xer, - RestrictionClassID_encode_xer, - RestrictionClassID_decode_uper, - RestrictionClassID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RestrictionClassID_tags_1, - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassID_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - &asn_PER_type_RestrictionClassID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c deleted file mode 100644 index 603d11ad9..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionClassList.h" - -static asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RestrictionClassAssignment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { - sizeof(struct RestrictionClassList), - offsetof(struct RestrictionClassList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { - "RestrictionClassList", - "RestrictionClassList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RestrictionClassList_tags_1, - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - &asn_PER_type_RestrictionClassList_constr_1, - asn_MBR_RestrictionClassList_1, - 1, /* Single element */ - &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c deleted file mode 100644 index b7ca48f78..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionUserType.h" - -static asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionAppliesTo, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalRestrictionUserType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -static asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { - sizeof(struct RestrictionUserType), - offsetof(struct RestrictionUserType, _asn_ctx), - offsetof(struct RestrictionUserType, present), - sizeof(((struct RestrictionUserType *)0)->present), - asn_MAP_RestrictionUserType_tag2el_1, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { - "RestrictionUserType", - "RestrictionUserType", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_RestrictionUserType_constr_1, - asn_MBR_RestrictionUserType_1, - 2, /* Elements count */ - &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c deleted file mode 100644 index 37e899313..000000000 --- a/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RestrictionUserTypeList.h" - -static asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_RestrictionUserType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { - sizeof(struct RestrictionUserTypeList), - offsetof(struct RestrictionUserTypeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { - "RestrictionUserTypeList", - "RestrictionUserTypeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RestrictionUserTypeList_tags_1, - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - &asn_PER_type_RestrictionUserTypeList_constr_1, - asn_MBR_RestrictionUserTypeList_1, - 1, /* Single element */ - &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c deleted file mode 100644 index 501064acf..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadLaneSetList.h" - -static asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { - sizeof(struct RoadLaneSetList), - offsetof(struct RoadLaneSetList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { - "RoadLaneSetList", - "RoadLaneSetList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadLaneSetList_tags_1, - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - &asn_PER_type_RoadLaneSetList_constr_1, - asn_MBR_RoadLaneSetList_1, - 1, /* Single element */ - &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c deleted file mode 100644 index b9fee5399..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadRegulatorID.h" - -int -RoadRegulatorID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RoadRegulatorID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RoadRegulatorID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RoadRegulatorID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RoadRegulatorID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RoadRegulatorID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RoadRegulatorID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RoadRegulatorID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RoadRegulatorID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RoadRegulatorID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RoadRegulatorID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { - "RoadRegulatorID", - "RoadRegulatorID", - RoadRegulatorID_free, - RoadRegulatorID_print, - RoadRegulatorID_constraint, - RoadRegulatorID_decode_ber, - RoadRegulatorID_encode_der, - RoadRegulatorID_decode_xer, - RoadRegulatorID_encode_xer, - RoadRegulatorID_decode_uper, - RoadRegulatorID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadRegulatorID_tags_1, - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - &asn_PER_type_RoadRegulatorID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegment.c b/src/tmx/Asn_J2735/src/r41/RoadSegment.c deleted file mode 100644 index 1036ba713..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSegment.c +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSegment.h" - -static asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegment, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentReferenceID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadLaneSetList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "roadLaneSet" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalRoadSegment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; -static ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { - sizeof(struct RoadSegment), - offsetof(struct RoadSegment, _asn_ctx), - asn_MAP_RoadSegment_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_RoadSegment_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* Start extensions */ - 9 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegment = { - "RoadSegment", - "RoadSegment", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSegment_tags_1, - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - asn_DEF_RoadSegment_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RoadSegment_1, - 8, /* Elements count */ - &asn_SPC_RoadSegment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c deleted file mode 100644 index 44d178e1b..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSegmentID.h" - -int -RoadSegmentID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RoadSegmentID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RoadSegmentID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RoadSegmentID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RoadSegmentID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RoadSegmentID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RoadSegmentID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RoadSegmentID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RoadSegmentID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RoadSegmentID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RoadSegmentID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { - "RoadSegmentID", - "RoadSegmentID", - RoadSegmentID_free, - RoadSegmentID_print, - RoadSegmentID_constraint, - RoadSegmentID_decode_ber, - RoadSegmentID_encode_der, - RoadSegmentID_decode_xer, - RoadSegmentID_encode_xer, - RoadSegmentID_decode_uper, - RoadSegmentID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSegmentID_tags_1, - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - &asn_PER_type_RoadSegmentID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c deleted file mode 100644 index a96cf890d..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSegmentList.h" - -static asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RoadSegment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { - sizeof(struct RoadSegmentList), - offsetof(struct RoadSegmentList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { - "RoadSegmentList", - "RoadSegmentList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSegmentList_tags_1, - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - &asn_PER_type_RoadSegmentList_constr_1, - asn_MBR_RoadSegmentList_1, - 1, /* Single element */ - &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c deleted file mode 100644 index 35ff934f0..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSegmentReferenceID.h" - -static asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, -}; -static int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { - sizeof(struct RoadSegmentReferenceID), - offsetof(struct RoadSegmentReferenceID, _asn_ctx), - asn_MAP_RoadSegmentReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { - "RoadSegmentReferenceID", - "RoadSegmentReferenceID", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSegmentReferenceID_tags_1, - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RoadSegmentReferenceID_1, - 2, /* Elements count */ - &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c b/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c deleted file mode 100644 index 1b736789a..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSideAlert.h" - -static int -memb_description_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 8)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_description_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_description_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_description_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_description_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { - sizeof(struct RoadSideAlert__description), - offsetof(struct RoadSideAlert__description, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_5 = { - "description", - "description", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_description_tags_5, - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ - asn_DEF_description_tags_5, /* Same as above */ - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ - &asn_PER_type_description_constr_5, - asn_MBR_description_5, - 1, /* Single element */ - &asn_SPC_description_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "typeEvent" - }, - { ATF_POINTER, 6, offsetof(struct RoadSideAlert, description), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_description_5, - memb_description_constraint_1, - &asn_PER_memb_description_constr_5, - 0, - "description" - }, - { ATF_POINTER, 5, offsetof(struct RoadSideAlert, priority), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Priority, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "priority" - }, - { ATF_POINTER, 4, offsetof(struct RoadSideAlert, heading), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "heading" - }, - { ATF_POINTER, 3, offsetof(struct RoadSideAlert, extent), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "extent" - }, - { ATF_POINTER, 2, offsetof(struct RoadSideAlert, positon), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "positon" - }, - { ATF_POINTER, 1, offsetof(struct RoadSideAlert, furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "furtherInfoID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, crc), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_RoadSideAlert_oms_1[] = { 3, 4, 5, 6, 7, 8 }; -static ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* positon */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { - sizeof(struct RoadSideAlert), - offsetof(struct RoadSideAlert, _asn_ctx), - asn_MAP_RoadSideAlert_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_RoadSideAlert_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { - "RoadSideAlert", - "RoadSideAlert", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSideAlert_tags_1, - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - asn_DEF_RoadSideAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RoadSideAlert_1, - 10, /* Elements count */ - &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadSignID.c b/src/tmx/Asn_J2735/src/r41/RoadSignID.c deleted file mode 100644 index 03f394270..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadSignID.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadSignID.h" - -static asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "viewAngle" - }, - { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MUTCDCode, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "mutcdCode" - }, - { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; -static ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { - sizeof(struct RoadSignID), - offsetof(struct RoadSignID, _asn_ctx), - asn_MAP_RoadSignID_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_RoadSignID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSignID = { - "RoadSignID", - "RoadSignID", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadSignID_tags_1, - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - asn_DEF_RoadSignID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_RoadSignID_1, - 4, /* Elements count */ - &asn_SPC_RoadSignID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c deleted file mode 100644 index 0c593b9a1..000000000 --- a/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "RoadwayCrownAngle.h" - -int -RoadwayCrownAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -RoadwayCrownAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -RoadwayCrownAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -RoadwayCrownAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -RoadwayCrownAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -RoadwayCrownAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -RoadwayCrownAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -RoadwayCrownAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -RoadwayCrownAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -RoadwayCrownAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { - "RoadwayCrownAngle", - "RoadwayCrownAngle", - RoadwayCrownAngle_free, - RoadwayCrownAngle_print, - RoadwayCrownAngle_constraint, - RoadwayCrownAngle_decode_ber, - RoadwayCrownAngle_encode_der, - RoadwayCrownAngle_decode_xer, - RoadwayCrownAngle_encode_xer, - RoadwayCrownAngle_decode_uper, - RoadwayCrownAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_RoadwayCrownAngle_tags_1, - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - &asn_PER_type_RoadwayCrownAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SPAT.c b/src/tmx/Asn_J2735/src/r41/SPAT.c deleted file mode 100644 index bc37a493b..000000000 --- a/src/tmx/Asn_J2735/src/r41/SPAT.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SPAT.h" - -static asn_TYPE_member_t asn_MBR_SPAT_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SPAT, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 2, offsetof(struct SPAT, msgSubID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgSubID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgSubID" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, name), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStateList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "intersections" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionalSPAT, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regional" - }, -}; -static int asn_MAP_SPAT_oms_1[] = { 1, 2, 4 }; -static ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { - sizeof(struct SPAT), - offsetof(struct SPAT, _asn_ctx), - asn_MAP_SPAT_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SPAT_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* Start extensions */ - 6 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SPAT = { - "SPAT", - "SPAT", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SPAT_tags_1, - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - asn_DEF_SPAT_tags_1, /* Same as above */ - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SPAT_1, - 5, /* Elements count */ - &asn_SPC_SPAT_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Sample.c b/src/tmx/Asn_J2735/src/r41/Sample.c deleted file mode 100644 index 5a07b1de9..000000000 --- a/src/tmx/Asn_J2735/src/r41/Sample.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Sample.h" - -static int -memb_sampleStart_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sampleEnd_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_Sample_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_sampleStart_constraint_1, - &asn_PER_memb_sampleStart_constr_2, - 0, - "sampleStart" - }, - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_sampleEnd_constraint_1, - &asn_PER_memb_sampleEnd_constr_3, - 0, - "sampleEnd" - }, -}; -static ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { - sizeof(struct Sample), - offsetof(struct Sample, _asn_ctx), - asn_MAP_Sample_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Sample = { - "Sample", - "Sample", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Sample_tags_1, - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - asn_DEF_Sample_tags_1, /* Same as above */ - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Sample_1, - 2, /* Elements count */ - &asn_SPC_Sample_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Scale-B12.c b/src/tmx/Asn_J2735/src/r41/Scale-B12.c deleted file mode 100644 index 55984dfb5..000000000 --- a/src/tmx/Asn_J2735/src/r41/Scale-B12.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Scale-B12.h" - -int -Scale_B12_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Scale_B12_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Scale_B12_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Scale_B12_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Scale_B12_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Scale_B12_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Scale_B12_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Scale_B12_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Scale_B12_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Scale_B12_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Scale_B12_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Scale_B12_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { - "Scale-B12", - "Scale-B12", - Scale_B12_free, - Scale_B12_print, - Scale_B12_constraint, - Scale_B12_decode_ber, - Scale_B12_encode_der, - Scale_B12_decode_xer, - Scale_B12_encode_xer, - Scale_B12_decode_uper, - Scale_B12_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Scale_B12_tags_1, - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - asn_DEF_Scale_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - &asn_PER_type_Scale_B12_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SeatCount.c b/src/tmx/Asn_J2735/src/r41/SeatCount.c deleted file mode 100644 index b2b18b67b..000000000 --- a/src/tmx/Asn_J2735/src/r41/SeatCount.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "SeatCount.h" - -int -SeatCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 999)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SeatCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SeatCount_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SeatCount_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SeatCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SeatCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SeatCount_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SeatCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SeatCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SeatCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SeatCount_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SeatCount_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SeatCount_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SeatCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SeatCount = { - "SeatCount", - "SeatCount", - SeatCount_free, - SeatCount_print, - SeatCount_constraint, - SeatCount_decode_ber, - SeatCount_encode_der, - SeatCount_decode_xer, - SeatCount_encode_xer, - SeatCount_decode_uper, - SeatCount_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SeatCount_tags_1, - sizeof(asn_DEF_SeatCount_tags_1) - /sizeof(asn_DEF_SeatCount_tags_1[0]), /* 1 */ - asn_DEF_SeatCount_tags_1, /* Same as above */ - sizeof(asn_DEF_SeatCount_tags_1) - /sizeof(asn_DEF_SeatCount_tags_1[0]), /* 1 */ - &asn_PER_type_SeatCount_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Second.c b/src/tmx/Asn_J2735/src/r41/Second.c deleted file mode 100644 index 3347c06ea..000000000 --- a/src/tmx/Asn_J2735/src/r41/Second.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Second.h" - -int -Second_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 60)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Second_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Second_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Second_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Second_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Second_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Second_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Second_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Second_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Second_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Second_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Second_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Second_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Second_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Second_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Second_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Second_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Second_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Second_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Second_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Second = { - "Second", - "Second", - Second_free, - Second_print, - Second_constraint, - Second_decode_ber, - Second_encode_der, - Second_decode_xer, - Second_encode_xer, - Second_decode_uper, - Second_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Second_tags_1, - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - asn_DEF_Second_tags_1, /* Same as above */ - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - &asn_PER_type_Second_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SecondsAngle.c b/src/tmx/Asn_J2735/src/r41/SecondsAngle.c deleted file mode 100644 index b8e4eaae5..000000000 --- a/src/tmx/Asn_J2735/src/r41/SecondsAngle.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SecondsAngle.h" - -int -SecondsAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 5999)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SecondsAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SecondsAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SecondsAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SecondsAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SecondsAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SecondsAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SecondsAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SecondsAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SecondsAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SecondsAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { - "SecondsAngle", - "SecondsAngle", - SecondsAngle_free, - SecondsAngle_print, - SecondsAngle_constraint, - SecondsAngle_decode_ber, - SecondsAngle_encode_der, - SecondsAngle_decode_xer, - SecondsAngle_encode_xer, - SecondsAngle_decode_uper, - SecondsAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SecondsAngle_tags_1, - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - asn_DEF_SecondsAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - &asn_PER_type_SecondsAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c b/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c deleted file mode 100644 index acef5b815..000000000 --- a/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SegmentAttribute.h" - -int -SegmentAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SegmentAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SegmentAttribute_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SegmentAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SegmentAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SegmentAttribute_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SegmentAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SegmentAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SegmentAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SegmentAttribute_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SegmentAttribute_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SegmentAttribute_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SegmentAttribute_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 10, "doNotBlock" }, - { 2, 9, "whiteLine" }, - { 3, 15, "mergingLaneLeft" }, - { 4, 16, "mergingLaneRight" }, - { 5, 10, "curbOnLeft" }, - { 6, 11, "curbOnRight" }, - { 7, 17, "loadingzoneOnLeft" }, - { 8, 18, "loadingzoneOnRight" }, - { 9, 18, "turnOutPointOnLeft" }, - { 10, 19, "turnOutPointOnRight" }, - { 11, 21, "adjacentParkingOnLeft" }, - { 12, 22, "adjacentParkingOnRight" }, - { 13, 22, "adjacentBikeLaneOnLeft" }, - { 14, 23, "adjacentBikeLaneOnRight" }, - { 15, 14, "sharedBikeLane" }, - { 16, 14, "bikeBoxInFront" }, - { 17, 17, "transitStopOnLeft" }, - { 18, 18, "transitStopOnRight" }, - { 19, 17, "transitStopInLane" }, - { 20, 24, "sharedWithTrackedVehicle" }, - { 21, 10, "safeIsland" }, - { 22, 15, "lowCurbsPresent" }, - { 23, 18, "rumbleStripPresent" }, - { 24, 23, "audibleSignalingPresent" }, - { 25, 21, "adaptiveTimingPresent" }, - { 26, 22, "rfSignalRequestPresent" }, - { 27, 20, "partialCurbIntrusion" }, - { 28, 11, "taperToLeft" }, - { 29, 12, "taperToRight" }, - { 30, 17, "taperToCenterLine" }, - { 31, 15, "parallelParking" }, - { 32, 13, "headInParking" }, - { 33, 11, "freeParking" }, - { 34, 25, "timeRestrictionsOnParking" }, - { 35, 10, "costToPark" }, - { 36, 19, "midBlockCurbPresent" }, - { 37, 21, "unEvenPavementPresent" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_SegmentAttribute_enum2value_1[] = { - 25, /* adaptiveTimingPresent(25) */ - 13, /* adjacentBikeLaneOnLeft(13) */ - 14, /* adjacentBikeLaneOnRight(14) */ - 11, /* adjacentParkingOnLeft(11) */ - 12, /* adjacentParkingOnRight(12) */ - 24, /* audibleSignalingPresent(24) */ - 16, /* bikeBoxInFront(16) */ - 35, /* costToPark(35) */ - 5, /* curbOnLeft(5) */ - 6, /* curbOnRight(6) */ - 1, /* doNotBlock(1) */ - 33, /* freeParking(33) */ - 32, /* headInParking(32) */ - 7, /* loadingzoneOnLeft(7) */ - 8, /* loadingzoneOnRight(8) */ - 22, /* lowCurbsPresent(22) */ - 3, /* mergingLaneLeft(3) */ - 4, /* mergingLaneRight(4) */ - 36, /* midBlockCurbPresent(36) */ - 31, /* parallelParking(31) */ - 27, /* partialCurbIntrusion(27) */ - 0, /* reserved(0) */ - 26, /* rfSignalRequestPresent(26) */ - 23, /* rumbleStripPresent(23) */ - 21, /* safeIsland(21) */ - 15, /* sharedBikeLane(15) */ - 20, /* sharedWithTrackedVehicle(20) */ - 30, /* taperToCenterLine(30) */ - 28, /* taperToLeft(28) */ - 29, /* taperToRight(29) */ - 34, /* timeRestrictionsOnParking(34) */ - 19, /* transitStopInLane(19) */ - 17, /* transitStopOnLeft(17) */ - 18, /* transitStopOnRight(18) */ - 9, /* turnOutPointOnLeft(9) */ - 10, /* turnOutPointOnRight(10) */ - 37, /* unEvenPavementPresent(37) */ - 2 /* whiteLine(2) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_SegmentAttribute_specs_1 = { - asn_MAP_SegmentAttribute_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SegmentAttribute_enum2value_1, /* N => "tag"; sorted by N */ - 38, /* Number of elements in the maps */ - 39, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SegmentAttribute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttribute = { - "SegmentAttribute", - "SegmentAttribute", - SegmentAttribute_free, - SegmentAttribute_print, - SegmentAttribute_constraint, - SegmentAttribute_decode_ber, - SegmentAttribute_encode_der, - SegmentAttribute_decode_xer, - SegmentAttribute_encode_xer, - SegmentAttribute_decode_uper, - SegmentAttribute_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SegmentAttribute_tags_1, - sizeof(asn_DEF_SegmentAttribute_tags_1) - /sizeof(asn_DEF_SegmentAttribute_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttribute_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttribute_tags_1) - /sizeof(asn_DEF_SegmentAttribute_tags_1[0]), /* 1 */ - &asn_PER_type_SegmentAttribute_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SegmentAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c b/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c deleted file mode 100644 index 62e93534e..000000000 --- a/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SegmentAttributeList.h" - -static asn_per_constraints_t asn_PER_type_SegmentAttributeList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_SegmentAttributeList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_SegmentAttribute, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_SegmentAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_SegmentAttributeList_specs_1 = { - sizeof(struct SegmentAttributeList), - offsetof(struct SegmentAttributeList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeList = { - "SegmentAttributeList", - "SegmentAttributeList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SegmentAttributeList_tags_1, - sizeof(asn_DEF_SegmentAttributeList_tags_1) - /sizeof(asn_DEF_SegmentAttributeList_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeList_tags_1) - /sizeof(asn_DEF_SegmentAttributeList_tags_1[0]), /* 1 */ - &asn_PER_type_SegmentAttributeList_constr_1, - asn_MBR_SegmentAttributeList_1, - 1, /* Single element */ - &asn_SPC_SegmentAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ShapePointSet.c b/src/tmx/Asn_J2735/src/r41/ShapePointSet.c deleted file mode 100644 index 61640cba1..000000000 --- a/src/tmx/Asn_J2735/src/r41/ShapePointSet.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ShapePointSet.h" - -static asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { - { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "anchor" - }, - { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "directionality" - }, - { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nodeList" - }, -}; -static int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; -static ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { - sizeof(struct ShapePointSet), - offsetof(struct ShapePointSet, _asn_ctx), - asn_MAP_ShapePointSet_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_ShapePointSet_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { - "ShapePointSet", - "ShapePointSet", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ShapePointSet_tags_1, - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - asn_DEF_ShapePointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ShapePointSet_1, - 4, /* Elements count */ - &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignPrority.c b/src/tmx/Asn_J2735/src/r41/SignPrority.c deleted file mode 100644 index 6eb6523cf..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignPrority.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignPrority.h" - -int -SignPrority_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 7)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SignPrority_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SignPrority_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SignPrority_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SignPrority_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SignPrority_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SignPrority_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SignPrority_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SignPrority_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SignPrority_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SignPrority_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SignPrority_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SignPrority_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignPrority = { - "SignPrority", - "SignPrority", - SignPrority_free, - SignPrority_print, - SignPrority_constraint, - SignPrority_decode_ber, - SignPrority_encode_der, - SignPrority_decode_xer, - SignPrority_encode_xer, - SignPrority_decode_uper, - SignPrority_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignPrority_tags_1, - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - asn_DEF_SignPrority_tags_1, /* Same as above */ - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - &asn_PER_type_SignPrority_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalControlState.c b/src/tmx/Asn_J2735/src/r41/SignalControlState.c deleted file mode 100644 index dc6c92c74..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalControlState.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalControlState.h" - -int -SignalControlState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -SignalControlState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -SignalControlState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SignalControlState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SignalControlState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SignalControlState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SignalControlState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SignalControlState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SignalControlState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SignalControlState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SignalControlState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SignalControlState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SignalControlState_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SignalControlState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalControlState = { - "SignalControlState", - "SignalControlState", - SignalControlState_free, - SignalControlState_print, - SignalControlState_constraint, - SignalControlState_decode_ber, - SignalControlState_encode_der, - SignalControlState_decode_xer, - SignalControlState_encode_xer, - SignalControlState_decode_uper, - SignalControlState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalControlState_tags_1, - sizeof(asn_DEF_SignalControlState_tags_1) - /sizeof(asn_DEF_SignalControlState_tags_1[0]), /* 1 */ - asn_DEF_SignalControlState_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalControlState_tags_1) - /sizeof(asn_DEF_SignalControlState_tags_1[0]), /* 1 */ - &asn_PER_type_SignalControlState_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalControlZone.c b/src/tmx/Asn_J2735/src/r41/SignalControlZone.c deleted file mode 100644 index 69ff4ba9b..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalControlZone.c +++ /dev/null @@ -1,465 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalControlZone.h" - -static int -memb_enclosed_constraint_8(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_laneSet_constraint_4(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_zones_constraint_4(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_laneSet_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_enclosed_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_enclosed_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_zones_constr_7 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_laneSet_constr_5 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_zones_constr_7 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_data_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_laneSet_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_LaneNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_laneSet_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_laneSet_specs_5 = { - sizeof(struct SignalControlZone__data__laneSet), - offsetof(struct SignalControlZone__data__laneSet, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_laneSet_5 = { - "laneSet", - "laneSet", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_laneSet_tags_5, - sizeof(asn_DEF_laneSet_tags_5) - /sizeof(asn_DEF_laneSet_tags_5[0]) - 1, /* 1 */ - asn_DEF_laneSet_tags_5, /* Same as above */ - sizeof(asn_DEF_laneSet_tags_5) - /sizeof(asn_DEF_laneSet_tags_5[0]), /* 2 */ - &asn_PER_type_laneSet_constr_5, - asn_MBR_laneSet_5, - 1, /* Single element */ - &asn_SPC_laneSet_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_enclosed_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_LaneNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_enclosed_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_enclosed_specs_9 = { - sizeof(struct enclosed), - offsetof(struct enclosed, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_enclosed_9 = { - "enclosed", - "enclosed", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_enclosed_tags_9, - sizeof(asn_DEF_enclosed_tags_9) - /sizeof(asn_DEF_enclosed_tags_9[0]) - 1, /* 1 */ - asn_DEF_enclosed_tags_9, /* Same as above */ - sizeof(asn_DEF_enclosed_tags_9) - /sizeof(asn_DEF_enclosed_tags_9[0]), /* 2 */ - &asn_PER_type_enclosed_constr_9, - asn_MBR_enclosed_9, - 1, /* Single element */ - &asn_SPC_enclosed_specs_9 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_8[] = { - { ATF_POINTER, 2, offsetof(struct SignalControlZone__data__zones__Member, enclosed), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_enclosed_9, - memb_enclosed_constraint_8, - &asn_PER_memb_enclosed_constr_9, - 0, - "enclosed" - }, - { ATF_POINTER, 1, offsetof(struct SignalControlZone__data__zones__Member, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneWidth" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data__zones__Member, nodeList), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeList, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nodeList" - }, -}; -static int asn_MAP_Member_oms_8[] = { 0, 1 }; -static ber_tlv_tag_t asn_DEF_Member_tags_8[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_8[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* enclosed */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_8 = { - sizeof(struct SignalControlZone__data__zones__Member), - offsetof(struct SignalControlZone__data__zones__Member, _asn_ctx), - asn_MAP_Member_tag2el_8, - 3, /* Count of tags in the map */ - asn_MAP_Member_oms_8, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_8 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_8, - sizeof(asn_DEF_Member_tags_8) - /sizeof(asn_DEF_Member_tags_8[0]), /* 1 */ - asn_DEF_Member_tags_8, /* Same as above */ - sizeof(asn_DEF_Member_tags_8) - /sizeof(asn_DEF_Member_tags_8[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_8, - 3, /* Elements count */ - &asn_SPC_Member_specs_8 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_zones_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_8, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_zones_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_zones_specs_7 = { - sizeof(struct SignalControlZone__data__zones), - offsetof(struct SignalControlZone__data__zones, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_zones_7 = { - "zones", - "zones", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_zones_tags_7, - sizeof(asn_DEF_zones_tags_7) - /sizeof(asn_DEF_zones_tags_7[0]) - 1, /* 1 */ - asn_DEF_zones_tags_7, /* Same as above */ - sizeof(asn_DEF_zones_tags_7) - /sizeof(asn_DEF_zones_tags_7[0]), /* 2 */ - &asn_PER_type_zones_constr_7, - asn_MBR_zones_7, - 1, /* Single element */ - &asn_SPC_zones_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_data_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data, choice.laneSet), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_laneSet_5, - memb_laneSet_constraint_4, - &asn_PER_memb_laneSet_constr_5, - 0, - "laneSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data, choice.zones), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_zones_7, - memb_zones_constraint_4, - &asn_PER_memb_zones_constr_7, - 0, - "zones" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_data_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneSet */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* zones */ -}; -static asn_CHOICE_specifics_t asn_SPC_data_specs_4 = { - sizeof(struct SignalControlZone__data), - offsetof(struct SignalControlZone__data, _asn_ctx), - offsetof(struct SignalControlZone__data, present), - sizeof(((struct SignalControlZone__data *)0)->present), - asn_MAP_data_tag2el_4, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_data_4 = { - "data", - "data", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_data_constr_4, - asn_MBR_data_4, - 2, /* Elements count */ - &asn_SPC_data_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalControlZone, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, pValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalReqScheme, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pValue" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, data), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_data_4, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "data" - }, -}; -static int asn_MAP_SignalControlZone_oms_1[] = { 0 }; -static ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pValue */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* data */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { - sizeof(struct SignalControlZone), - offsetof(struct SignalControlZone, _asn_ctx), - asn_MAP_SignalControlZone_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_SignalControlZone_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { - "SignalControlZone", - "SignalControlZone", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalControlZone_tags_1, - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - asn_DEF_SignalControlZone_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SignalControlZone_1, - 3, /* Elements count */ - &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalGroupID.c b/src/tmx/Asn_J2735/src/r41/SignalGroupID.c deleted file mode 100644 index dbf9564bf..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalGroupID.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalGroupID.h" - -int -SignalGroupID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SignalGroupID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SignalGroupID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SignalGroupID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SignalGroupID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SignalGroupID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SignalGroupID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SignalGroupID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SignalGroupID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SignalGroupID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SignalGroupID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { - "SignalGroupID", - "SignalGroupID", - SignalGroupID_free, - SignalGroupID_print, - SignalGroupID_constraint, - SignalGroupID_decode_ber, - SignalGroupID_encode_der, - SignalGroupID_decode_xer, - SignalGroupID_encode_xer, - SignalGroupID_decode_uper, - SignalGroupID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalGroupID_tags_1, - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - asn_DEF_SignalGroupID_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - &asn_PER_type_SignalGroupID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c deleted file mode 100644 index 1e56cd513..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalHeadLocation.h" - -static asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPoint, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "node" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "signalGroupID" - }, -}; -static ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { - sizeof(struct SignalHeadLocation), - offsetof(struct SignalHeadLocation, _asn_ctx), - asn_MAP_SignalHeadLocation_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { - "SignalHeadLocation", - "SignalHeadLocation", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalHeadLocation_tags_1, - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SignalHeadLocation_1, - 2, /* Elements count */ - &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c deleted file mode 100644 index b60f8700a..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalHeadLocationList.h" - -static asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalHeadLocation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { - sizeof(struct SignalHeadLocationList), - offsetof(struct SignalHeadLocationList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { - "SignalHeadLocationList", - "SignalHeadLocationList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalHeadLocationList_tags_1, - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - &asn_PER_type_SignalHeadLocationList_constr_1, - asn_MBR_SignalHeadLocationList_1, - 1, /* Single element */ - &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c b/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c deleted file mode 100644 index 444f192a8..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalReqScheme.h" - -int -SignalReqScheme_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -SignalReqScheme_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -SignalReqScheme_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SignalReqScheme_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SignalReqScheme_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SignalReqScheme_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SignalReqScheme_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SignalReqScheme_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SignalReqScheme_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SignalReqScheme_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SignalReqScheme_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { - "SignalReqScheme", - "SignalReqScheme", - SignalReqScheme_free, - SignalReqScheme_print, - SignalReqScheme_constraint, - SignalReqScheme_decode_ber, - SignalReqScheme_encode_der, - SignalReqScheme_decode_xer, - SignalReqScheme_encode_xer, - SignalReqScheme_decode_uper, - SignalReqScheme_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalReqScheme_tags_1, - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - asn_DEF_SignalReqScheme_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - &asn_PER_type_SignalReqScheme_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalRequest.c b/src/tmx/Asn_J2735/src/r41/SignalRequest.c deleted file mode 100644 index 7c555aa14..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalRequest.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalRequest.h" - -static asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_POINTER, 4, offsetof(struct SignalRequest, isCancel), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalReqScheme, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "isCancel" - }, - { ATF_POINTER, 3, offsetof(struct SignalRequest, requestedAction), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalReqScheme, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "requestedAction" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequest, inLane), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "inLane" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequest, outLane), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneNumber, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "outLane" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, type), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NTCIPVehicleclass, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "type" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequest, codeWord), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CodeWord, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "codeWord" - }, -}; -static int asn_MAP_SignalRequest_oms_1[] = { 1, 2, 3, 4, 6 }; -static ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* isCancel */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestedAction */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inLane */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outLane */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* codeWord */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { - sizeof(struct SignalRequest), - offsetof(struct SignalRequest, _asn_ctx), - asn_MAP_SignalRequest_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_SignalRequest_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* Start extensions */ - 8 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequest = { - "SignalRequest", - "SignalRequest", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalRequest_tags_1, - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - asn_DEF_SignalRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SignalRequest_1, - 7, /* Elements count */ - &asn_SPC_SignalRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c b/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c deleted file mode 100644 index 2784f11c8..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalRequestMsg.h" - -static asn_TYPE_member_t asn_MBR_SignalRequestMsg_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, request), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequest, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "request" - }, - { ATF_POINTER, 4, offsetof(struct SignalRequestMsg, timeOfService), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timeOfService" - }, - { ATF_POINTER, 3, offsetof(struct SignalRequestMsg, endOfService), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "endOfService" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequestMsg, transitStatus), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "transitStatus" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMsg, vehicleVIN), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleVIN" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMblob, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleData" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMsg, status), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleRequestStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, -}; -static int asn_MAP_SignalRequestMsg_oms_1[] = { 3, 4, 5, 6, 8 }; -static ber_tlv_tag_t asn_DEF_SignalRequestMsg_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SignalRequestMsg_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOfService */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* endOfService */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* vehicleVIN */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* status */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMsg_specs_1 = { - sizeof(struct SignalRequestMsg), - offsetof(struct SignalRequestMsg, _asn_ctx), - asn_MAP_SignalRequestMsg_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_SignalRequestMsg_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 8, /* Start extensions */ - 10 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestMsg = { - "SignalRequestMsg", - "SignalRequestMsg", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalRequestMsg_tags_1, - sizeof(asn_DEF_SignalRequestMsg_tags_1) - /sizeof(asn_DEF_SignalRequestMsg_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestMsg_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestMsg_tags_1) - /sizeof(asn_DEF_SignalRequestMsg_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SignalRequestMsg_1, - 9, /* Elements count */ - &asn_SPC_SignalRequestMsg_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalState.c b/src/tmx/Asn_J2735/src/r41/SignalState.c deleted file mode 100644 index 577e81839..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalState.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalState.h" - -int -SignalState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -SignalState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -SignalState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SignalState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SignalState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SignalState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SignalState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SignalState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SignalState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SignalState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SignalState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SignalState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SignalState_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SignalState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalState = { - "SignalState", - "SignalState", - SignalState_free, - SignalState_print, - SignalState_constraint, - SignalState_decode_ber, - SignalState_encode_der, - SignalState_decode_xer, - SignalState_encode_xer, - SignalState_decode_uper, - SignalState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalState_tags_1, - sizeof(asn_DEF_SignalState_tags_1) - /sizeof(asn_DEF_SignalState_tags_1[0]), /* 1 */ - asn_DEF_SignalState_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalState_tags_1) - /sizeof(asn_DEF_SignalState_tags_1[0]), /* 1 */ - &asn_PER_type_SignalState_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c deleted file mode 100644 index 06c29945f..000000000 --- a/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c +++ /dev/null @@ -1,306 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SignalStatusMessage.h" - -static int -memb_priority_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 7)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_prempt_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 7)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_priority_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_prempt_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_priority_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_prempt_constr_9 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_priority_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_SignalState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_priority_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_priority_specs_6 = { - sizeof(struct SignalStatusMessage__priority), - offsetof(struct SignalStatusMessage__priority, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_priority_6 = { - "priority", - "priority", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_priority_tags_6, - sizeof(asn_DEF_priority_tags_6) - /sizeof(asn_DEF_priority_tags_6[0]) - 1, /* 1 */ - asn_DEF_priority_tags_6, /* Same as above */ - sizeof(asn_DEF_priority_tags_6) - /sizeof(asn_DEF_priority_tags_6[0]), /* 2 */ - &asn_PER_type_priority_constr_6, - asn_MBR_priority_6, - 1, /* Single element */ - &asn_SPC_priority_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_prempt_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_SignalState, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_prempt_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_prempt_specs_9 = { - sizeof(struct SignalStatusMessage__prempt), - offsetof(struct SignalStatusMessage__prempt, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_prempt_9 = { - "prempt", - "prempt", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_prempt_tags_9, - sizeof(asn_DEF_prempt_tags_9) - /sizeof(asn_DEF_prempt_tags_9[0]) - 1, /* 1 */ - asn_DEF_prempt_tags_9, /* Same as above */ - sizeof(asn_DEF_prempt_tags_9) - /sizeof(asn_DEF_prempt_tags_9[0]), /* 2 */ - &asn_PER_type_prempt_constr_9, - asn_MBR_prempt_9, - 1, /* Single element */ - &asn_SPC_prempt_specs_9 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCount, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStatusObject, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "status" - }, - { ATF_POINTER, 5, offsetof(struct SignalStatusMessage, priority), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_priority_6, - memb_priority_constraint_1, - &asn_PER_memb_priority_constr_6, - 0, - "priority" - }, - { ATF_POINTER, 4, offsetof(struct SignalStatusMessage, priorityCause), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "priorityCause" - }, - { ATF_POINTER, 3, offsetof(struct SignalStatusMessage, prempt), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_prempt_9, - memb_prempt_constraint_1, - &asn_PER_memb_prempt_constr_9, - 0, - "prempt" - }, - { ATF_POINTER, 2, offsetof(struct SignalStatusMessage, preemptCause), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "preemptCause" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, transitStatus), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "transitStatus" - }, -}; -static int asn_MAP_SignalStatusMessage_oms_1[] = { 4, 5, 6, 7, 8 }; -static ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* priorityCause */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* prempt */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptCause */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* transitStatus */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { - sizeof(struct SignalStatusMessage), - offsetof(struct SignalStatusMessage, _asn_ctx), - asn_MAP_SignalStatusMessage_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 8, /* Start extensions */ - 10 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { - "SignalStatusMessage", - "SignalStatusMessage", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SignalStatusMessage_tags_1, - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SignalStatusMessage_1, - 9, /* Elements count */ - &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SirenInUse.c b/src/tmx/Asn_J2735/src/r41/SirenInUse.c deleted file mode 100644 index 80b59a1d7..000000000 --- a/src/tmx/Asn_J2735/src/r41/SirenInUse.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SirenInUse.h" - -int -SirenInUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SirenInUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SirenInUse_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SirenInUse_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SirenInUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SirenInUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SirenInUse_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SirenInUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SirenInUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SirenInUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SirenInUse_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SirenInUse_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 8, "reserved" } -}; -static unsigned int asn_MAP_SirenInUse_enum2value_1[] = { - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { - asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SirenInUse = { - "SirenInUse", - "SirenInUse", - SirenInUse_free, - SirenInUse_print, - SirenInUse_constraint, - SirenInUse_decode_ber, - SirenInUse_encode_der, - SirenInUse_decode_xer, - SirenInUse_encode_xer, - SirenInUse_decode_uper, - SirenInUse_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SirenInUse_tags_1, - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - asn_DEF_SirenInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - &asn_PER_type_SirenInUse_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SirenInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Snapshot.c b/src/tmx/Asn_J2735/src/r41/Snapshot.c deleted file mode 100644 index 1582ac3b6..000000000 --- a/src/tmx/Asn_J2735/src/r41/Snapshot.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Snapshot.h" - -static asn_TYPE_member_t asn_MBR_Snapshot_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "thePosition" - }, - { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSafetyExtension, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "safetyExt" - }, - { ATF_POINTER, 1, offsetof(struct Snapshot, datSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "datSet" - }, -}; -static int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; -static ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* datSet */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { - sizeof(struct Snapshot), - offsetof(struct Snapshot, _asn_ctx), - asn_MAP_Snapshot_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_Snapshot_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* Start extensions */ - 4 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_Snapshot = { - "Snapshot", - "Snapshot", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Snapshot_tags_1, - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - asn_DEF_Snapshot_tags_1, /* Same as above */ - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Snapshot_1, - 3, /* Elements count */ - &asn_SPC_Snapshot_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c b/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c deleted file mode 100644 index caaa7e683..000000000 --- a/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SnapshotDistance.h" - -static int -memb_d1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 999)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_s1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_d2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 999)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_s2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_d1_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_s1_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_d2_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_s2_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, d1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_d1_constraint_1, - &asn_PER_memb_d1_constr_2, - 0, - "d1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, s1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_s1_constraint_1, - &asn_PER_memb_s1_constr_3, - 0, - "s1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, d2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_d2_constraint_1, - &asn_PER_memb_d2_constr_4, - 0, - "d2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, s2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_s2_constraint_1, - &asn_PER_memb_s2_constr_5, - 0, - "s2" - }, -}; -static ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* s1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* d2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* s2 */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { - sizeof(struct SnapshotDistance), - offsetof(struct SnapshotDistance, _asn_ctx), - asn_MAP_SnapshotDistance_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { - "SnapshotDistance", - "SnapshotDistance", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SnapshotDistance_tags_1, - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - asn_DEF_SnapshotDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SnapshotDistance_1, - 4, /* Elements count */ - &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SnapshotTime.c b/src/tmx/Asn_J2735/src/r41/SnapshotTime.c deleted file mode 100644 index 3f2e2fec4..000000000 --- a/src/tmx/Asn_J2735/src/r41/SnapshotTime.c +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SnapshotTime.h" - -static int -memb_t1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 99)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_s1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_t2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 99)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_s2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_t1_constr_2 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 1, 99 } /* (1..99) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_s1_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_t2_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 1, 99 } /* (1..99) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_s2_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, t1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_t1_constraint_1, - &asn_PER_memb_t1_constr_2, - 0, - "t1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, s1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_s1_constraint_1, - &asn_PER_memb_s1_constr_3, - 0, - "s1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, t2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_t2_constraint_1, - &asn_PER_memb_t2_constr_4, - 0, - "t2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, s2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_s2_constraint_1, - &asn_PER_memb_s2_constr_5, - 0, - "s2" - }, -}; -static ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* t1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* s1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* t2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* s2 */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { - sizeof(struct SnapshotTime), - offsetof(struct SnapshotTime, _asn_ctx), - asn_MAP_SnapshotTime_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { - "SnapshotTime", - "SnapshotTime", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SnapshotTime_tags_1, - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - asn_DEF_SnapshotTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_SnapshotTime_1, - 4, /* Elements count */ - &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Speed.c b/src/tmx/Asn_J2735/src/r41/Speed.c deleted file mode 100644 index 5657ea36d..000000000 --- a/src/tmx/Asn_J2735/src/r41/Speed.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Speed.h" - -int -Speed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Speed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Speed_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Speed_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Speed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Speed_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Speed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Speed_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Speed_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Speed_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Speed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Speed_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Speed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Speed_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Speed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Speed_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Speed_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Speed_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Speed_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Speed = { - "Speed", - "Speed", - Speed_free, - Speed_print, - Speed_constraint, - Speed_decode_ber, - Speed_encode_der, - Speed_decode_xer, - Speed_encode_xer, - Speed_decode_uper, - Speed_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Speed_tags_1, - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - asn_DEF_Speed_tags_1, /* Same as above */ - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - &asn_PER_type_Speed_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c b/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c deleted file mode 100644 index 136578963..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedAdvice.h" - -int -SpeedAdvice_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 500)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SpeedAdvice_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SpeedAdvice_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SpeedAdvice_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SpeedAdvice_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SpeedAdvice_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SpeedAdvice_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SpeedAdvice_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SpeedAdvice_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SpeedAdvice_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SpeedAdvice_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { - "SpeedAdvice", - "SpeedAdvice", - SpeedAdvice_free, - SpeedAdvice_print, - SpeedAdvice_constraint, - SpeedAdvice_decode_ber, - SpeedAdvice_encode_der, - SpeedAdvice_decode_xer, - SpeedAdvice_encode_xer, - SpeedAdvice_decode_uper, - SpeedAdvice_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedAdvice_tags_1, - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - asn_DEF_SpeedAdvice_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedAdvice_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c b/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c deleted file mode 100644 index ff96b4d46..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedConfidence.h" - -int -SpeedConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SpeedConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SpeedConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SpeedConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SpeedConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SpeedConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SpeedConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SpeedConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SpeedConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SpeedConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SpeedConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec100ms" }, - { 2, 8, "prec10ms" }, - { 3, 7, "prec5ms" }, - { 4, 7, "prec1ms" }, - { 5, 9, "prec0-1ms" }, - { 6, 10, "prec0-05ms" }, - { 7, 10, "prec0-01ms" } -}; -static unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { - 7, /* prec0-01ms(7) */ - 6, /* prec0-05ms(6) */ - 5, /* prec0-1ms(5) */ - 1, /* prec100ms(1) */ - 2, /* prec10ms(2) */ - 4, /* prec1ms(4) */ - 3, /* prec5ms(3) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { - asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { - "SpeedConfidence", - "SpeedConfidence", - SpeedConfidence_free, - SpeedConfidence_print, - SpeedConfidence_constraint, - SpeedConfidence_decode_ber, - SpeedConfidence_encode_der, - SpeedConfidence_decode_xer, - SpeedConfidence_encode_xer, - SpeedConfidence_decode_uper, - SpeedConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedConfidence_tags_1, - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimit.c b/src/tmx/Asn_J2735/src/r41/SpeedLimit.c deleted file mode 100644 index 83c854290..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedLimit.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedLimit.h" - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_type_item_sl_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_sl_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct item_sl, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct item_sl, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_text_constraint_3, - &asn_PER_memb_text_constr_5, - 0, - "text" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_item_sl_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_sl_specs_3 = { - sizeof(struct item_sl), - offsetof(struct item_sl, _asn_ctx), - offsetof(struct item_sl, present), - sizeof(((struct item_sl *)0)->present), - asn_MAP_item_sl_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_sl_3 = { - "item-sl", - "item-sl", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_item_sl_constr_3, - asn_MBR_item_sl_3, - 2, /* Elements count */ - &asn_SPC_item_sl_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item_sl), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_sl_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "item-sl" - }, -}; -static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-sl */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct SpeedLimit__Member), - offsetof(struct SpeedLimit__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { - sizeof(struct SpeedLimit), - offsetof(struct SpeedLimit, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { - "SpeedLimit", - "SpeedLimit", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedLimit_tags_1, - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedLimit_constr_1, - asn_MBR_SpeedLimit_1, - 1, /* Single element */ - &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c b/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c deleted file mode 100644 index 5e7cd20cb..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedLimitList.h" - -static asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegulatorySpeedLimit, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { - sizeof(struct SpeedLimitList), - offsetof(struct SpeedLimitList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { - "SpeedLimitList", - "SpeedLimitList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedLimitList_tags_1, - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitList_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedLimitList_constr_1, - asn_MBR_SpeedLimitList_1, - 1, /* Single element */ - &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c b/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c deleted file mode 100644 index f112a45e6..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedLimitType.h" - -int -SpeedLimitType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SpeedLimitType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SpeedLimitType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SpeedLimitType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SpeedLimitType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SpeedLimitType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SpeedLimitType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SpeedLimitType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SpeedLimitType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SpeedLimitType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SpeedLimitType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 20, "maxSpeedInSchoolZone" }, - { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, - { 3, 26, "maxSpeedInConstructionZone" }, - { 4, 15, "vehicleMinSpeed" }, - { 5, 15, "vehicleMaxSpeed" }, - { 6, 20, "vehicleNightMaxSpeed" }, - { 7, 13, "truckMinSpeed" }, - { 8, 13, "truckMaxSpeed" }, - { 9, 18, "truckNightMaxSpeed" }, - { 10, 28, "vehiclesWithTrailersMinSpeed" }, - { 11, 28, "vehiclesWithTrailersMaxSpeed" }, - { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { - 3, /* maxSpeedInConstructionZone(3) */ - 1, /* maxSpeedInSchoolZone(1) */ - 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ - 8, /* truckMaxSpeed(8) */ - 7, /* truckMinSpeed(7) */ - 9, /* truckNightMaxSpeed(9) */ - 0, /* unknown(0) */ - 5, /* vehicleMaxSpeed(5) */ - 4, /* vehicleMinSpeed(4) */ - 6, /* vehicleNightMaxSpeed(6) */ - 11, /* vehiclesWithTrailersMaxSpeed(11) */ - 10, /* vehiclesWithTrailersMinSpeed(10) */ - 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { - asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ - 13, /* Number of elements in the maps */ - 14, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { - "SpeedLimitType", - "SpeedLimitType", - SpeedLimitType_free, - SpeedLimitType_print, - SpeedLimitType_constraint, - SpeedLimitType_decode_ber, - SpeedLimitType_encode_der, - SpeedLimitType_decode_xer, - SpeedLimitType_encode_xer, - SpeedLimitType_decode_uper, - SpeedLimitType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedLimitType_tags_1, - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitType_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedLimitType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c deleted file mode 100644 index f5cb5ec6f..000000000 --- a/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpeedandHeadingandThrottleConfidence.h" - -int -SpeedandHeadingandThrottleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -SpeedandHeadingandThrottleConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SpeedandHeadingandThrottleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SpeedandHeadingandThrottleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SpeedandHeadingandThrottleConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SpeedandHeadingandThrottleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SpeedandHeadingandThrottleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SpeedandHeadingandThrottleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SpeedandHeadingandThrottleConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SpeedandHeadingandThrottleConfidence_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { - "SpeedandHeadingandThrottleConfidence", - "SpeedandHeadingandThrottleConfidence", - SpeedandHeadingandThrottleConfidence_free, - SpeedandHeadingandThrottleConfidence_print, - SpeedandHeadingandThrottleConfidence_constraint, - SpeedandHeadingandThrottleConfidence_decode_ber, - SpeedandHeadingandThrottleConfidence_encode_der, - SpeedandHeadingandThrottleConfidence_decode_xer, - SpeedandHeadingandThrottleConfidence_encode_xer, - SpeedandHeadingandThrottleConfidence_decode_uper, - SpeedandHeadingandThrottleConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_SpeedandHeadingandThrottleConfidence_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c deleted file mode 100644 index 9874d7847..000000000 --- a/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "StabilityControlStatus.h" - -int -StabilityControlStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -StabilityControlStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -StabilityControlStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -StabilityControlStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -StabilityControlStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -StabilityControlStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -StabilityControlStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -StabilityControlStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -StabilityControlStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -StabilityControlStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - StabilityControlStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" } -}; -static unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { - asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { - "StabilityControlStatus", - "StabilityControlStatus", - StabilityControlStatus_free, - StabilityControlStatus_print, - StabilityControlStatus_constraint, - StabilityControlStatus_decode_ber, - StabilityControlStatus_encode_der, - StabilityControlStatus_decode_xer, - StabilityControlStatus_encode_xer, - StabilityControlStatus_decode_uper, - StabilityControlStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_StabilityControlStatus_tags_1, - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - &asn_PER_type_StabilityControlStatus_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/StationID.c b/src/tmx/Asn_J2735/src/r41/StationID.c deleted file mode 100644 index ddedfaadb..000000000 --- a/src/tmx/Asn_J2735/src/r41/StationID.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "StationID.h" - -int -StationID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - /* Constraint check succeeded */ - return 0; -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -StationID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */ -} - -void -StationID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - StationID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -StationID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - StationID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -StationID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - StationID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -StationID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - StationID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -StationID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - StationID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -StationID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - StationID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -StationID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - StationID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -StationID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - StationID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_StationID_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { - 0, 0, 0, 0, 0, - 0, /* Native long size */ - 1 /* Unsigned representation */ -}; -static ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StationID = { - "StationID", - "StationID", - StationID_free, - StationID_print, - StationID_constraint, - StationID_decode_ber, - StationID_encode_der, - StationID_decode_xer, - StationID_encode_xer, - StationID_decode_uper, - StationID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_StationID_tags_1, - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - asn_DEF_StationID_tags_1, /* Same as above */ - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - &asn_PER_type_StationID_constr_1, - 0, 0, /* No members */ - &asn_SPC_StationID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c deleted file mode 100644 index 76aeb3ba8..000000000 --- a/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SteeringAxleLubePressure.h" - -int -SteeringAxleLubePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SteeringAxleLubePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SteeringAxleLubePressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SteeringAxleLubePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleLubePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SteeringAxleLubePressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleLubePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SteeringAxleLubePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleLubePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SteeringAxleLubePressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { - "SteeringAxleLubePressure", - "SteeringAxleLubePressure", - SteeringAxleLubePressure_free, - SteeringAxleLubePressure_print, - SteeringAxleLubePressure_constraint, - SteeringAxleLubePressure_decode_ber, - SteeringAxleLubePressure_encode_der, - SteeringAxleLubePressure_decode_xer, - SteeringAxleLubePressure_encode_xer, - SteeringAxleLubePressure_decode_uper, - SteeringAxleLubePressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SteeringAxleLubePressure_tags_1, - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - &asn_PER_type_SteeringAxleLubePressure_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c deleted file mode 100644 index a7c50dd5f..000000000 --- a/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SteeringAxleTemperature.h" - -int -SteeringAxleTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SteeringAxleTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SteeringAxleTemperature_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SteeringAxleTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SteeringAxleTemperature_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SteeringAxleTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SteeringAxleTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SteeringAxleTemperature_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { - "SteeringAxleTemperature", - "SteeringAxleTemperature", - SteeringAxleTemperature_free, - SteeringAxleTemperature_print, - SteeringAxleTemperature_constraint, - SteeringAxleTemperature_decode_ber, - SteeringAxleTemperature_encode_der, - SteeringAxleTemperature_decode_xer, - SteeringAxleTemperature_encode_xer, - SteeringAxleTemperature_decode_uper, - SteeringAxleTemperature_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SteeringAxleTemperature_tags_1, - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - &asn_PER_type_SteeringAxleTemperature_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c deleted file mode 100644 index 59331caa8..000000000 --- a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SteeringWheelAngle.h" - -int -SteeringWheelAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -SteeringWheelAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -SteeringWheelAngle_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SteeringWheelAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SteeringWheelAngle_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SteeringWheelAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SteeringWheelAngle_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SteeringWheelAngle_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { - "SteeringWheelAngle", - "SteeringWheelAngle", - SteeringWheelAngle_free, - SteeringWheelAngle_print, - SteeringWheelAngle_constraint, - SteeringWheelAngle_decode_ber, - SteeringWheelAngle_encode_der, - SteeringWheelAngle_decode_xer, - SteeringWheelAngle_encode_xer, - SteeringWheelAngle_decode_uper, - SteeringWheelAngle_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SteeringWheelAngle_tags_1, - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - &asn_PER_type_SteeringWheelAngle_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c deleted file mode 100644 index ee46a8aa5..000000000 --- a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SteeringWheelAngleConfidence.h" - -int -SteeringWheelAngleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SteeringWheelAngleConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SteeringWheelAngleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SteeringWheelAngleConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SteeringWheelAngleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SteeringWheelAngleConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "prec2deg" }, - { 2, 8, "prec1deg" }, - { 3, 11, "prec0-02deg" } -}; -static unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { - 3, /* prec0-02deg(3) */ - 2, /* prec1deg(2) */ - 1, /* prec2deg(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { - asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { - "SteeringWheelAngleConfidence", - "SteeringWheelAngleConfidence", - SteeringWheelAngleConfidence_free, - SteeringWheelAngleConfidence_print, - SteeringWheelAngleConfidence_constraint, - SteeringWheelAngleConfidence_decode_ber, - SteeringWheelAngleConfidence_encode_der, - SteeringWheelAngleConfidence_decode_xer, - SteeringWheelAngleConfidence_encode_xer, - SteeringWheelAngleConfidence_decode_uper, - SteeringWheelAngleConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SteeringWheelAngleConfidence_tags_1, - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_SteeringWheelAngleConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c deleted file mode 100644 index 720d3f2a0..000000000 --- a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SteeringWheelAngleRateOfChange.h" - -int -SteeringWheelAngleRateOfChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SteeringWheelAngleRateOfChange_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SteeringWheelAngleRateOfChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleRateOfChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SteeringWheelAngleRateOfChange_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleRateOfChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SteeringWheelAngleRateOfChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SteeringWheelAngleRateOfChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SteeringWheelAngleRateOfChange_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { - "SteeringWheelAngleRateOfChange", - "SteeringWheelAngleRateOfChange", - SteeringWheelAngleRateOfChange_free, - SteeringWheelAngleRateOfChange_print, - SteeringWheelAngleRateOfChange_constraint, - SteeringWheelAngleRateOfChange_decode_ber, - SteeringWheelAngleRateOfChange_encode_der, - SteeringWheelAngleRateOfChange_decode_xer, - SteeringWheelAngleRateOfChange_encode_xer, - SteeringWheelAngleRateOfChange_decode_uper, - SteeringWheelAngleRateOfChange_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SummerTime.c b/src/tmx/Asn_J2735/src/r41/SummerTime.c deleted file mode 100644 index 9bfa20bea..000000000 --- a/src/tmx/Asn_J2735/src/r41/SummerTime.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SummerTime.h" - -int -SummerTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -SummerTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -SummerTime_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SummerTime_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SummerTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SummerTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SummerTime_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SummerTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SummerTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SummerTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SummerTime_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SummerTime_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SummerTime_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { - { 0, 15, "notInSummerTime" }, - { 1, 12, "inSummerTime" } -}; -static unsigned int asn_MAP_SummerTime_enum2value_1[] = { - 1, /* inSummerTime(1) */ - 0 /* notInSummerTime(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { - asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SummerTime = { - "SummerTime", - "SummerTime", - SummerTime_free, - SummerTime_print, - SummerTime_constraint, - SummerTime_decode_ber, - SummerTime_encode_der, - SummerTime_decode_xer, - SummerTime_encode_xer, - SummerTime_decode_uper, - SummerTime_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SummerTime_tags_1, - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - asn_DEF_SummerTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - &asn_PER_type_SummerTime_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SummerTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/SunSensor.c b/src/tmx/Asn_J2735/src/r41/SunSensor.c deleted file mode 100644 index b94bdf771..000000000 --- a/src/tmx/Asn_J2735/src/r41/SunSensor.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SunSensor.h" - -int -SunSensor_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -SunSensor_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -SunSensor_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - SunSensor_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -SunSensor_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -SunSensor_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -SunSensor_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -SunSensor_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -SunSensor_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -SunSensor_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -SunSensor_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - SunSensor_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_SunSensor_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SunSensor = { - "SunSensor", - "SunSensor", - SunSensor_free, - SunSensor_print, - SunSensor_constraint, - SunSensor_decode_ber, - SunSensor_encode_der, - SunSensor_decode_xer, - SunSensor_encode_xer, - SunSensor_decode_uper, - SunSensor_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_SunSensor_tags_1, - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - asn_DEF_SunSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - &asn_PER_type_SunSensor_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TemporaryID.c b/src/tmx/Asn_J2735/src/r41/TemporaryID.c deleted file mode 100644 index 7cb94e610..000000000 --- a/src/tmx/Asn_J2735/src/r41/TemporaryID.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TemporaryID.h" - -int -TemporaryID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 4)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -TemporaryID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -TemporaryID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TemporaryID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TemporaryID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TemporaryID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TemporaryID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TemporaryID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TemporaryID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TemporaryID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TemporaryID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TemporaryID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TemporaryID = { - "TemporaryID", - "TemporaryID", - TemporaryID_free, - TemporaryID_print, - TemporaryID_constraint, - TemporaryID_decode_ber, - TemporaryID_encode_der, - TemporaryID_decode_xer, - TemporaryID_encode_xer, - TemporaryID_decode_uper, - TemporaryID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TemporaryID_tags_1, - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - asn_DEF_TemporaryID_tags_1, /* Same as above */ - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - &asn_PER_type_TemporaryID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TenthSecond.c b/src/tmx/Asn_J2735/src/r41/TenthSecond.c deleted file mode 100644 index 339f74f3c..000000000 --- a/src/tmx/Asn_J2735/src/r41/TenthSecond.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TenthSecond.h" - -int -TenthSecond_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 9)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TenthSecond_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TenthSecond_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TenthSecond_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TenthSecond_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TenthSecond_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TenthSecond_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TenthSecond_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TenthSecond_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TenthSecond_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TenthSecond_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TenthSecond_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TenthSecond = { - "TenthSecond", - "TenthSecond", - TenthSecond_free, - TenthSecond_print, - TenthSecond_constraint, - TenthSecond_decode_ber, - TenthSecond_encode_der, - TenthSecond_decode_xer, - TenthSecond_encode_xer, - TenthSecond_decode_uper, - TenthSecond_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TenthSecond_tags_1, - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - asn_DEF_TenthSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - &asn_PER_type_TenthSecond_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TermDistance.c b/src/tmx/Asn_J2735/src/r41/TermDistance.c deleted file mode 100644 index 098fe7661..000000000 --- a/src/tmx/Asn_J2735/src/r41/TermDistance.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TermDistance.h" - -int -TermDistance_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 30000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TermDistance_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TermDistance_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TermDistance_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TermDistance_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TermDistance_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TermDistance_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TermDistance_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TermDistance_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TermDistance_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TermDistance_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TermDistance_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TermDistance_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermDistance = { - "TermDistance", - "TermDistance", - TermDistance_free, - TermDistance_print, - TermDistance_constraint, - TermDistance_decode_ber, - TermDistance_encode_der, - TermDistance_decode_xer, - TermDistance_encode_xer, - TermDistance_decode_uper, - TermDistance_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TermDistance_tags_1, - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - asn_DEF_TermDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - &asn_PER_type_TermDistance_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TermTime.c b/src/tmx/Asn_J2735/src/r41/TermTime.c deleted file mode 100644 index bd7592d9e..000000000 --- a/src/tmx/Asn_J2735/src/r41/TermTime.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TermTime.h" - -int -TermTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 1800)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TermTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TermTime_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TermTime_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TermTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TermTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TermTime_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TermTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TermTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TermTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TermTime_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TermTime_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TermTime_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermTime = { - "TermTime", - "TermTime", - TermTime_free, - TermTime_print, - TermTime_constraint, - TermTime_decode_ber, - TermTime_encode_der, - TermTime_decode_xer, - TermTime_encode_xer, - TermTime_decode_uper, - TermTime_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TermTime_tags_1, - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - asn_DEF_TermTime_tags_1, /* Same as above */ - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - &asn_PER_type_TermTime_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c deleted file mode 100644 index 8988990bb..000000000 --- a/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ThrottleConfidence.h" - -int -ThrottleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -ThrottleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -ThrottleConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ThrottleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ThrottleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ThrottleConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ThrottleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ThrottleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ThrottleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ThrottleConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ThrottleConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "prec10percent" }, - { 2, 12, "prec1percent" }, - { 3, 14, "prec0-5percent" } -}; -static unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { - 3, /* prec0-5percent(3) */ - 1, /* prec10percent(1) */ - 2, /* prec1percent(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { - asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { - "ThrottleConfidence", - "ThrottleConfidence", - ThrottleConfidence_free, - ThrottleConfidence_print, - ThrottleConfidence_constraint, - ThrottleConfidence_decode_ber, - ThrottleConfidence_encode_der, - ThrottleConfidence_decode_xer, - ThrottleConfidence_encode_xer, - ThrottleConfidence_decode_uper, - ThrottleConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ThrottleConfidence_tags_1, - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_ThrottleConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c b/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c deleted file mode 100644 index 6631ed9f5..000000000 --- a/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ThrottlePosition.h" - -int -ThrottlePosition_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ThrottlePosition_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ThrottlePosition_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ThrottlePosition_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ThrottlePosition_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ThrottlePosition_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ThrottlePosition_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ThrottlePosition_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ThrottlePosition_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ThrottlePosition_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ThrottlePosition_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { - "ThrottlePosition", - "ThrottlePosition", - ThrottlePosition_free, - ThrottlePosition_print, - ThrottlePosition_constraint, - ThrottlePosition_decode_ber, - ThrottlePosition_encode_der, - ThrottlePosition_decode_xer, - ThrottlePosition_encode_xer, - ThrottlePosition_decode_uper, - ThrottlePosition_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ThrottlePosition_tags_1, - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - asn_DEF_ThrottlePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - &asn_PER_type_ThrottlePosition_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c deleted file mode 100644 index 7ac97c06b..000000000 --- a/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TimeChangeDetails.h" - -static asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeMark, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeMark, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeMark, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeMark, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeMark, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "nextTime" - }, -}; -static int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { - sizeof(struct TimeChangeDetails), - offsetof(struct TimeChangeDetails, _asn_ctx), - asn_MAP_TimeChangeDetails_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { - "TimeChangeDetails", - "TimeChangeDetails", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TimeChangeDetails_tags_1, - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_TimeChangeDetails_1, - 6, /* Elements count */ - &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TimeConfidence.c b/src/tmx/Asn_J2735/src/r41/TimeConfidence.c deleted file mode 100644 index 8a836d098..000000000 --- a/src/tmx/Asn_J2735/src/r41/TimeConfidence.c +++ /dev/null @@ -1,223 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TimeConfidence.h" - -int -TimeConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -TimeConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -TimeConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TimeConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TimeConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TimeConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TimeConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TimeConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TimeConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TimeConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TimeConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 12, "time-100-000" }, - { 2, 12, "time-050-000" }, - { 3, 12, "time-020-000" }, - { 4, 12, "time-010-000" }, - { 5, 12, "time-002-000" }, - { 6, 12, "time-001-000" }, - { 7, 12, "time-000-500" }, - { 8, 12, "time-000-200" }, - { 9, 12, "time-000-100" }, - { 10, 12, "time-000-050" }, - { 11, 12, "time-000-020" }, - { 12, 12, "time-000-010" }, - { 13, 12, "time-000-005" }, - { 14, 12, "time-000-002" }, - { 15, 12, "time-000-001" }, - { 16, 14, "time-000-000-5" }, - { 17, 14, "time-000-000-2" }, - { 18, 14, "time-000-000-1" }, - { 19, 15, "time-000-000-05" }, - { 20, 15, "time-000-000-02" }, - { 21, 15, "time-000-000-01" }, - { 22, 16, "time-000-000-005" }, - { 23, 16, "time-000-000-002" }, - { 24, 16, "time-000-000-001" }, - { 25, 18, "time-000-000-000-5" }, - { 26, 18, "time-000-000-000-2" }, - { 27, 18, "time-000-000-000-1" }, - { 28, 19, "time-000-000-000-05" }, - { 29, 19, "time-000-000-000-02" }, - { 30, 19, "time-000-000-000-01" }, - { 31, 20, "time-000-000-000-005" }, - { 32, 20, "time-000-000-000-002" }, - { 33, 20, "time-000-000-000-001" }, - { 34, 22, "time-000-000-000-000-5" }, - { 35, 22, "time-000-000-000-000-2" }, - { 36, 22, "time-000-000-000-000-1" }, - { 37, 23, "time-000-000-000-000-05" }, - { 38, 23, "time-000-000-000-000-02" }, - { 39, 23, "time-000-000-000-000-01" } -}; -static unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { - 39, /* time-000-000-000-000-01(39) */ - 38, /* time-000-000-000-000-02(38) */ - 37, /* time-000-000-000-000-05(37) */ - 36, /* time-000-000-000-000-1(36) */ - 35, /* time-000-000-000-000-2(35) */ - 34, /* time-000-000-000-000-5(34) */ - 33, /* time-000-000-000-001(33) */ - 32, /* time-000-000-000-002(32) */ - 31, /* time-000-000-000-005(31) */ - 30, /* time-000-000-000-01(30) */ - 29, /* time-000-000-000-02(29) */ - 28, /* time-000-000-000-05(28) */ - 27, /* time-000-000-000-1(27) */ - 26, /* time-000-000-000-2(26) */ - 25, /* time-000-000-000-5(25) */ - 24, /* time-000-000-001(24) */ - 23, /* time-000-000-002(23) */ - 22, /* time-000-000-005(22) */ - 21, /* time-000-000-01(21) */ - 20, /* time-000-000-02(20) */ - 19, /* time-000-000-05(19) */ - 18, /* time-000-000-1(18) */ - 17, /* time-000-000-2(17) */ - 16, /* time-000-000-5(16) */ - 15, /* time-000-001(15) */ - 14, /* time-000-002(14) */ - 13, /* time-000-005(13) */ - 12, /* time-000-010(12) */ - 11, /* time-000-020(11) */ - 10, /* time-000-050(10) */ - 9, /* time-000-100(9) */ - 8, /* time-000-200(8) */ - 7, /* time-000-500(7) */ - 6, /* time-001-000(6) */ - 5, /* time-002-000(5) */ - 4, /* time-010-000(4) */ - 3, /* time-020-000(3) */ - 2, /* time-050-000(2) */ - 1, /* time-100-000(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { - asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 40, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { - "TimeConfidence", - "TimeConfidence", - TimeConfidence_free, - TimeConfidence_print, - TimeConfidence_constraint, - TimeConfidence_decode_ber, - TimeConfidence_encode_der, - TimeConfidence_decode_xer, - TimeConfidence_encode_xer, - TimeConfidence_decode_uper, - TimeConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TimeConfidence_tags_1, - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_TimeConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c deleted file mode 100644 index 403c07347..000000000 --- a/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TimeIntervalConfidence.h" - -int -TimeIntervalConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TimeIntervalConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TimeIntervalConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TimeIntervalConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TimeIntervalConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TimeIntervalConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TimeIntervalConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TimeIntervalConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TimeIntervalConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TimeIntervalConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { - "TimeIntervalConfidence", - "TimeIntervalConfidence", - TimeIntervalConfidence_free, - TimeIntervalConfidence_print, - TimeIntervalConfidence_constraint, - TimeIntervalConfidence_decode_ber, - TimeIntervalConfidence_encode_der, - TimeIntervalConfidence_decode_xer, - TimeIntervalConfidence_encode_xer, - TimeIntervalConfidence_decode_uper, - TimeIntervalConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TimeIntervalConfidence_tags_1, - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_TimeIntervalConfidence_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TimeMark.c b/src/tmx/Asn_J2735/src/r41/TimeMark.c deleted file mode 100644 index 99ad19a4e..000000000 --- a/src/tmx/Asn_J2735/src/r41/TimeMark.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TimeMark.h" - -int -TimeMark_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 36002)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TimeMark_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TimeMark_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TimeMark_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TimeMark_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TimeMark_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TimeMark_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TimeMark_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TimeMark_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TimeMark_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TimeMark_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TimeMark_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TimeMark_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 36002 } /* (0..36002) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeMark = { - "TimeMark", - "TimeMark", - TimeMark_free, - TimeMark_print, - TimeMark_constraint, - TimeMark_decode_ber, - TimeMark_encode_der, - TimeMark_decode_xer, - TimeMark_encode_xer, - TimeMark_decode_uper, - TimeMark_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TimeMark_tags_1, - sizeof(asn_DEF_TimeMark_tags_1) - /sizeof(asn_DEF_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeMark_tags_1) - /sizeof(asn_DEF_TimeMark_tags_1[0]), /* 1 */ - &asn_PER_type_TimeMark_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TimeRemaining.c b/src/tmx/Asn_J2735/src/r41/TimeRemaining.c deleted file mode 100644 index c9e0a2ff9..000000000 --- a/src/tmx/Asn_J2735/src/r41/TimeRemaining.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TimeRemaining.h" - -int -TimeRemaining_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 9001)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TimeRemaining_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TimeRemaining_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TimeRemaining_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TimeRemaining_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TimeRemaining_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TimeRemaining_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TimeRemaining_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TimeRemaining_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TimeRemaining_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TimeRemaining_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { - "TimeRemaining", - "TimeRemaining", - TimeRemaining_free, - TimeRemaining_print, - TimeRemaining_constraint, - TimeRemaining_decode_ber, - TimeRemaining_encode_der, - TimeRemaining_decode_xer, - TimeRemaining_encode_xer, - TimeRemaining_decode_uper, - TimeRemaining_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TimeRemaining_tags_1, - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - asn_DEF_TimeRemaining_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - &asn_PER_type_TimeRemaining_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c b/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c deleted file mode 100644 index e5ad540e1..000000000 --- a/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TireLeakageRate.h" - -int -TireLeakageRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TireLeakageRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TireLeakageRate_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TireLeakageRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TireLeakageRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TireLeakageRate_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TireLeakageRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TireLeakageRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TireLeakageRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TireLeakageRate_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TireLeakageRate_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { - "TireLeakageRate", - "TireLeakageRate", - TireLeakageRate_free, - TireLeakageRate_print, - TireLeakageRate_constraint, - TireLeakageRate_decode_ber, - TireLeakageRate_encode_der, - TireLeakageRate_decode_xer, - TireLeakageRate_encode_xer, - TireLeakageRate_decode_uper, - TireLeakageRate_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TireLeakageRate_tags_1, - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - asn_DEF_TireLeakageRate_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - &asn_PER_type_TireLeakageRate_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TireLocation.c b/src/tmx/Asn_J2735/src/r41/TireLocation.c deleted file mode 100644 index 828a728b1..000000000 --- a/src/tmx/Asn_J2735/src/r41/TireLocation.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TireLocation.h" - -int -TireLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TireLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TireLocation_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TireLocation_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TireLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TireLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TireLocation_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TireLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TireLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TireLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TireLocation_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TireLocation_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TireLocation_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLocation = { - "TireLocation", - "TireLocation", - TireLocation_free, - TireLocation_print, - TireLocation_constraint, - TireLocation_decode_ber, - TireLocation_encode_der, - TireLocation_decode_xer, - TireLocation_encode_xer, - TireLocation_decode_uper, - TireLocation_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TireLocation_tags_1, - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - asn_DEF_TireLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - &asn_PER_type_TireLocation_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TirePressure.c b/src/tmx/Asn_J2735/src/r41/TirePressure.c deleted file mode 100644 index 17082f3db..000000000 --- a/src/tmx/Asn_J2735/src/r41/TirePressure.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TirePressure.h" - -int -TirePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TirePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TirePressure_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TirePressure_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TirePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TirePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TirePressure_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TirePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TirePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TirePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TirePressure_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TirePressure_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TirePressure_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressure = { - "TirePressure", - "TirePressure", - TirePressure_free, - TirePressure_print, - TirePressure_constraint, - TirePressure_decode_ber, - TirePressure_encode_der, - TirePressure_decode_xer, - TirePressure_encode_xer, - TirePressure_decode_uper, - TirePressure_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TirePressure_tags_1, - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - asn_DEF_TirePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - &asn_PER_type_TirePressure_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c deleted file mode 100644 index 9f6739ab9..000000000 --- a/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TirePressureThresholdDetection.h" - -int -TirePressureThresholdDetection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -TirePressureThresholdDetection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -TirePressureThresholdDetection_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TirePressureThresholdDetection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TirePressureThresholdDetection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TirePressureThresholdDetection_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TirePressureThresholdDetection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TirePressureThresholdDetection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TirePressureThresholdDetection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TirePressureThresholdDetection_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { - { 0, 6, "noData" }, - { 1, 12, "overPressure" }, - { 2, 17, "noWarningPressure" }, - { 3, 13, "underPressure" }, - { 4, 20, "extremeUnderPressure" }, - { 5, 9, "undefined" }, - { 6, 14, "errorIndicator" }, - { 7, 12, "notAvailable" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { - 6, /* errorIndicator(6) */ - 4, /* extremeUnderPressure(4) */ - 0, /* noData(0) */ - 2, /* noWarningPressure(2) */ - 7, /* notAvailable(7) */ - 1, /* overPressure(1) */ - 5, /* undefined(5) */ - 3 /* underPressure(3) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { - asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { - "TirePressureThresholdDetection", - "TirePressureThresholdDetection", - TirePressureThresholdDetection_free, - TirePressureThresholdDetection_print, - TirePressureThresholdDetection_constraint, - TirePressureThresholdDetection_decode_ber, - TirePressureThresholdDetection_encode_der, - TirePressureThresholdDetection_decode_xer, - TirePressureThresholdDetection_encode_xer, - TirePressureThresholdDetection_decode_uper, - TirePressureThresholdDetection_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TirePressureThresholdDetection_tags_1, - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - &asn_PER_type_TirePressureThresholdDetection_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TireTemp.c b/src/tmx/Asn_J2735/src/r41/TireTemp.c deleted file mode 100644 index f11b2f019..000000000 --- a/src/tmx/Asn_J2735/src/r41/TireTemp.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TireTemp.h" - -int -TireTemp_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TireTemp_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TireTemp_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TireTemp_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TireTemp_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TireTemp_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TireTemp_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TireTemp_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TireTemp_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TireTemp_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TireTemp_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TireTemp_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TireTemp_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireTemp = { - "TireTemp", - "TireTemp", - TireTemp_free, - TireTemp_print, - TireTemp_constraint, - TireTemp_decode_ber, - TireTemp_encode_der, - TireTemp_decode_xer, - TireTemp_encode_xer, - TireTemp_decode_uper, - TireTemp_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TireTemp_tags_1, - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - asn_DEF_TireTemp_tags_1, /* Same as above */ - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - &asn_PER_type_TireTemp_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TractionControlState.c b/src/tmx/Asn_J2735/src/r41/TractionControlState.c deleted file mode 100644 index 079c663da..000000000 --- a/src/tmx/Asn_J2735/src/r41/TractionControlState.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TractionControlState.h" - -int -TractionControlState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -TractionControlState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -TractionControlState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TractionControlState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TractionControlState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TractionControlState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TractionControlState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TractionControlState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TractionControlState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TractionControlState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TractionControlState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TractionControlState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TractionControlState_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_TractionControlState_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static unsigned int asn_MAP_TractionControlState_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_TractionControlState_specs_1 = { - asn_MAP_TractionControlState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TractionControlState_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_TractionControlState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TractionControlState = { - "TractionControlState", - "TractionControlState", - TractionControlState_free, - TractionControlState_print, - TractionControlState_constraint, - TractionControlState_decode_ber, - TractionControlState_encode_der, - TractionControlState_decode_xer, - TractionControlState_encode_xer, - TractionControlState_decode_uper, - TractionControlState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TractionControlState_tags_1, - sizeof(asn_DEF_TractionControlState_tags_1) - /sizeof(asn_DEF_TractionControlState_tags_1[0]), /* 1 */ - asn_DEF_TractionControlState_tags_1, /* Same as above */ - sizeof(asn_DEF_TractionControlState_tags_1) - /sizeof(asn_DEF_TractionControlState_tags_1[0]), /* 1 */ - &asn_PER_type_TractionControlState_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TractionControlState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TrailerWeight.c b/src/tmx/Asn_J2735/src/r41/TrailerWeight.c deleted file mode 100644 index 858dc68b9..000000000 --- a/src/tmx/Asn_J2735/src/r41/TrailerWeight.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrailerWeight.h" - -int -TrailerWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TrailerWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TrailerWeight_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TrailerWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TrailerWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TrailerWeight_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TrailerWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TrailerWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TrailerWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TrailerWeight_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TrailerWeight_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { - "TrailerWeight", - "TrailerWeight", - TrailerWeight_free, - TrailerWeight_print, - TrailerWeight_constraint, - TrailerWeight_decode_ber, - TrailerWeight_encode_der, - TrailerWeight_decode_xer, - TrailerWeight_encode_xer, - TrailerWeight_decode_uper, - TrailerWeight_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TrailerWeight_tags_1, - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - asn_DEF_TrailerWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - &asn_PER_type_TrailerWeight_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TransitStatus.c b/src/tmx/Asn_J2735/src/r41/TransitStatus.c deleted file mode 100644 index 9633b4ecb..000000000 --- a/src/tmx/Asn_J2735/src/r41/TransitStatus.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TransitStatus.h" - -int -TransitStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -TransitStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -TransitStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TransitStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TransitStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TransitStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TransitStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TransitStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TransitStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TransitStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TransitStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TransitStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitStatus = { - "TransitStatus", - "TransitStatus", - TransitStatus_free, - TransitStatus_print, - TransitStatus_constraint, - TransitStatus_decode_ber, - TransitStatus_encode_der, - TransitStatus_decode_xer, - TransitStatus_encode_xer, - TransitStatus_decode_uper, - TransitStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TransitStatus_tags_1, - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - asn_DEF_TransitStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - &asn_PER_type_TransitStatus_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c deleted file mode 100644 index 83a6c2d92..000000000 --- a/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TransmissionAndSpeed.h" - -int -TransmissionAndSpeed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -TransmissionAndSpeed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -TransmissionAndSpeed_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TransmissionAndSpeed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TransmissionAndSpeed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TransmissionAndSpeed_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TransmissionAndSpeed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TransmissionAndSpeed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TransmissionAndSpeed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TransmissionAndSpeed_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TransmissionAndSpeed_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { - "TransmissionAndSpeed", - "TransmissionAndSpeed", - TransmissionAndSpeed_free, - TransmissionAndSpeed_print, - TransmissionAndSpeed_constraint, - TransmissionAndSpeed_decode_ber, - TransmissionAndSpeed_encode_der, - TransmissionAndSpeed_decode_xer, - TransmissionAndSpeed_encode_xer, - TransmissionAndSpeed_decode_uper, - TransmissionAndSpeed_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TransmissionAndSpeed_tags_1, - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - &asn_PER_type_TransmissionAndSpeed_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TransmissionState.c b/src/tmx/Asn_J2735/src/r41/TransmissionState.c deleted file mode 100644 index 86716cef8..000000000 --- a/src/tmx/Asn_J2735/src/r41/TransmissionState.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TransmissionState.h" - -int -TransmissionState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -TransmissionState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -TransmissionState_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TransmissionState_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TransmissionState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TransmissionState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TransmissionState_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TransmissionState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TransmissionState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TransmissionState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TransmissionState_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TransmissionState_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { - { 0, 7, "neutral" }, - { 1, 4, "park" }, - { 2, 12, "forwardGears" }, - { 3, 12, "reverseGears" }, - { 4, 9, "reserved1" }, - { 5, 9, "reserved2" }, - { 6, 9, "reserved3" }, - { 7, 11, "unavailable" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_TransmissionState_enum2value_1[] = { - 2, /* forwardGears(2) */ - 0, /* neutral(0) */ - 1, /* park(1) */ - 4, /* reserved1(4) */ - 5, /* reserved2(5) */ - 6, /* reserved3(6) */ - 3, /* reverseGears(3) */ - 7 /* unavailable(7) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { - asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionState = { - "TransmissionState", - "TransmissionState", - TransmissionState_free, - TransmissionState_print, - TransmissionState_constraint, - TransmissionState_decode_ber, - TransmissionState_encode_der, - TransmissionState_decode_xer, - TransmissionState_encode_xer, - TransmissionState_decode_uper, - TransmissionState_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TransmissionState_tags_1, - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - asn_DEF_TransmissionState_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - &asn_PER_type_TransmissionState_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TransmissionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c b/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c deleted file mode 100644 index bcb2131a3..000000000 --- a/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TravelerInfoType.h" - -int -TravelerInfoType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -TravelerInfoType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -TravelerInfoType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TravelerInfoType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TravelerInfoType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TravelerInfoType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TravelerInfoType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TravelerInfoType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TravelerInfoType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TravelerInfoType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TravelerInfoType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "advisory" }, - { 2, 11, "roadSignage" }, - { 3, 17, "commercialSignage" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { - 1, /* advisory(1) */ - 3, /* commercialSignage(3) */ - 2, /* roadSignage(2) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { - asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { - "TravelerInfoType", - "TravelerInfoType", - TravelerInfoType_free, - TravelerInfoType_print, - TravelerInfoType_constraint, - TravelerInfoType_decode_ber, - TravelerInfoType_encode_der, - TravelerInfoType_decode_xer, - TravelerInfoType_encode_xer, - TravelerInfoType_decode_uper, - TravelerInfoType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TravelerInfoType_tags_1, - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - asn_DEF_TravelerInfoType_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - &asn_PER_type_TravelerInfoType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TravelerInformation.c b/src/tmx/Asn_J2735/src/r41/TravelerInformation.c deleted file mode 100644 index bc6aaff1e..000000000 --- a/src/tmx/Asn_J2735/src/r41/TravelerInformation.c +++ /dev/null @@ -1,596 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TravelerInformation.h" - -static int -memb_regions_constraint_7(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 16)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_dataFrames_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 8)) { - /* Perform validation of the inner elements */ - return td->check_constraints(td, sptr, ctfailcb, app_key); - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_msgId_constr_9 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_regions_constr_19 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_content_constr_21 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_regions_constr_19 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_dataFrames_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_dataFrames_constr_6 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_msgId_9[] = { - { ATF_NOFLAGS, 0, offsetof(struct msgId, choice.furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "furtherInfoID" - }, - { ATF_NOFLAGS, 0, offsetof(struct msgId, choice.roadSignID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSignID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "roadSignID" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_9[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ -}; -static asn_CHOICE_specifics_t asn_SPC_msgId_specs_9 = { - sizeof(struct msgId), - offsetof(struct msgId, _asn_ctx), - offsetof(struct msgId, present), - sizeof(((struct msgId *)0)->present), - asn_MAP_msgId_tag2el_9, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_msgId_9 = { - "msgId", - "msgId", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_msgId_constr_9, - asn_MBR_msgId_9, - 2, /* Elements count */ - &asn_SPC_msgId_specs_9 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regions_19[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ValidRegion, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_regions_tags_19[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regions_specs_19 = { - sizeof(struct regions), - offsetof(struct regions, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regions_19 = { - "regions", - "regions", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_regions_tags_19, - sizeof(asn_DEF_regions_tags_19) - /sizeof(asn_DEF_regions_tags_19[0]) - 1, /* 1 */ - asn_DEF_regions_tags_19, /* Same as above */ - sizeof(asn_DEF_regions_tags_19) - /sizeof(asn_DEF_regions_tags_19[0]), /* 2 */ - &asn_PER_type_regions_constr_19, - asn_MBR_regions_19, - 1, /* Single element */ - &asn_SPC_regions_specs_19 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_content_21[] = { - { ATF_NOFLAGS, 0, offsetof(struct content, choice.advisory), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodesAndText, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "advisory" - }, - { ATF_NOFLAGS, 0, offsetof(struct content, choice.workZone), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WorkZone, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "workZone" - }, - { ATF_NOFLAGS, 0, offsetof(struct content, choice.genericSign), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericSignage, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "genericSign" - }, - { ATF_NOFLAGS, 0, offsetof(struct content, choice.speedLimit), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimit, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedLimit" - }, - { ATF_NOFLAGS, 0, offsetof(struct content, choice.exitService), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExitService, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "exitService" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_content_tag2el_21[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ -}; -static asn_CHOICE_specifics_t asn_SPC_content_specs_21 = { - sizeof(struct content), - offsetof(struct content, _asn_ctx), - offsetof(struct content, present), - sizeof(((struct content *)0)->present), - asn_MAP_content_tag2el_21, - 5, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_content_21 = { - "content", - "content", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_content_constr_21, - asn_MBR_content_21, - 5, /* Elements count */ - &asn_SPC_content_specs_21 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_7[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, frameType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TravelerInfoType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "frameType" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, msgId), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_msgId_9, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgId" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, startYear), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "startYear" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, startTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, duratonTime), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesDuration, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "duratonTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, priority), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignPrority, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "priority" - }, - { ATF_POINTER, 3, offsetof(struct TravelerInformation__dataFrames__Member, commonAnchor), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "commonAnchor" - }, - { ATF_POINTER, 2, offsetof(struct TravelerInformation__dataFrames__Member, commonLaneWidth), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "commonLaneWidth" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, commonDirectionality), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "commonDirectionality" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, regions), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regions_19, - memb_regions_constraint_7, - &asn_PER_memb_regions_constr_19, - 0, - "regions" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, content), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_content_21, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "content" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, url), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Short, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "url" - }, -}; -static int asn_MAP_Member_oms_7[] = { 2, 6, 7, 8, 11 }; -static ber_tlv_tag_t asn_DEF_Member_tags_7[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frameType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgId */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* startYear */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* duratonTime */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* commonAnchor */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* commonLaneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* commonDirectionality */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* regions */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* content */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 } /* url */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_7 = { - sizeof(struct TravelerInformation__dataFrames__Member), - offsetof(struct TravelerInformation__dataFrames__Member, _asn_ctx), - asn_MAP_Member_tag2el_7, - 12, /* Count of tags in the map */ - asn_MAP_Member_oms_7, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_7 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_7, - sizeof(asn_DEF_Member_tags_7) - /sizeof(asn_DEF_Member_tags_7[0]), /* 1 */ - asn_DEF_Member_tags_7, /* Same as above */ - sizeof(asn_DEF_Member_tags_7) - /sizeof(asn_DEF_Member_tags_7[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_7, - 12, /* Elements count */ - &asn_SPC_Member_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_dataFrames_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_7, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_dataFrames_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_dataFrames_specs_6 = { - sizeof(struct TravelerInformation__dataFrames), - offsetof(struct TravelerInformation__dataFrames, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_dataFrames_6 = { - "dataFrames", - "dataFrames", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_dataFrames_tags_6, - sizeof(asn_DEF_dataFrames_tags_6) - /sizeof(asn_DEF_dataFrames_tags_6[0]) - 1, /* 1 */ - asn_DEF_dataFrames_tags_6, /* Same as above */ - sizeof(asn_DEF_dataFrames_tags_6) - /sizeof(asn_DEF_dataFrames_tags_6[0]), /* 2 */ - &asn_PER_type_dataFrames_constr_6, - asn_MBR_dataFrames_6, - 1, /* Single element */ - &asn_SPC_dataFrames_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 3, offsetof(struct TravelerInformation, packetID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UniqueMSGID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "packetID" - }, - { ATF_POINTER, 2, offsetof(struct TravelerInformation, urlB), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Base, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "urlB" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation, dataFrameCount), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Count, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dataFrameCount" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_dataFrames_6, - memb_dataFrames_constraint_1, - &asn_PER_memb_dataFrames_constr_6, - 0, - "dataFrames" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, crc), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3 }; -static ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* packetID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* urlB */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dataFrameCount */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { - sizeof(struct TravelerInformation), - offsetof(struct TravelerInformation, _asn_ctx), - asn_MAP_TravelerInformation_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TravelerInformation_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { - "TravelerInformation", - "TravelerInformation", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TravelerInformation_tags_1, - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - asn_DEF_TravelerInformation_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_TravelerInformation_1, - 6, /* Elements count */ - &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/TxTime.c b/src/tmx/Asn_J2735/src/r41/TxTime.c deleted file mode 100644 index 7883fcd1f..000000000 --- a/src/tmx/Asn_J2735/src/r41/TxTime.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TxTime.h" - -int -TxTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 20)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -TxTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -TxTime_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - TxTime_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -TxTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -TxTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -TxTime_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -TxTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -TxTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -TxTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -TxTime_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - TxTime_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_TxTime_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (1..20) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_TxTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TxTime = { - "TxTime", - "TxTime", - TxTime_free, - TxTime_print, - TxTime_constraint, - TxTime_decode_ber, - TxTime_encode_der, - TxTime_decode_xer, - TxTime_encode_xer, - TxTime_decode_uper, - TxTime_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_TxTime_tags_1, - sizeof(asn_DEF_TxTime_tags_1) - /sizeof(asn_DEF_TxTime_tags_1[0]), /* 1 */ - asn_DEF_TxTime_tags_1, /* Same as above */ - sizeof(asn_DEF_TxTime_tags_1) - /sizeof(asn_DEF_TxTime_tags_1[0]), /* 1 */ - &asn_PER_type_TxTime_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/UPER-Blob.c b/src/tmx/Asn_J2735/src/r41/UPER-Blob.c deleted file mode 100644 index 5d6b176b5..000000000 --- a/src/tmx/Asn_J2735/src/r41/UPER-Blob.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "UPER-Blob.h" - -int -UPER_Blob_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 10 && size <= 2000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -UPER_Blob_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -UPER_Blob_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -UPER_Blob_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -UPER_Blob_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -UPER_Blob_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -UPER_Blob_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -UPER_Blob_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -UPER_Blob_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -UPER_Blob_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - UPER_Blob_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_UPER_Blob_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_UPER_Blob_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UPER_Blob = { - "UPER-Blob", - "UPER-Blob", - UPER_Blob_free, - UPER_Blob_print, - UPER_Blob_constraint, - UPER_Blob_decode_ber, - UPER_Blob_encode_der, - UPER_Blob_decode_xer, - UPER_Blob_encode_xer, - UPER_Blob_decode_uper, - UPER_Blob_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_UPER_Blob_tags_1, - sizeof(asn_DEF_UPER_Blob_tags_1) - /sizeof(asn_DEF_UPER_Blob_tags_1[0]), /* 1 */ - asn_DEF_UPER_Blob_tags_1, /* Same as above */ - sizeof(asn_DEF_UPER_Blob_tags_1) - /sizeof(asn_DEF_UPER_Blob_tags_1[0]), /* 1 */ - &asn_PER_type_UPER_Blob_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/UPERframe.c b/src/tmx/Asn_J2735/src/r41/UPERframe.c deleted file mode 100644 index 2f321228c..000000000 --- a/src/tmx/Asn_J2735/src/r41/UPERframe.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "UPERframe.h" - -static asn_TYPE_member_t asn_MBR_UPERframe_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct UPERframe, msgID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgID" - }, - { ATF_POINTER, 2, offsetof(struct UPERframe, msgSubID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgSubID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgSubID" - }, - { ATF_POINTER, 1, offsetof(struct UPERframe, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct UPERframe, contentID), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "contentID" - }, - { ATF_NOFLAGS, 0, offsetof(struct UPERframe, msgBlob), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UPER_Blob, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "msgBlob" - }, - { ATF_POINTER, 1, offsetof(struct UPERframe, crc), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "crc" - }, -}; -static int asn_MAP_UPERframe_oms_1[] = { 1, 2, 5 }; -static ber_tlv_tag_t asn_DEF_UPERframe_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_UPERframe_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* contentID */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* msgBlob */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* crc */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_UPERframe_specs_1 = { - sizeof(struct UPERframe), - offsetof(struct UPERframe, _asn_ctx), - asn_MAP_UPERframe_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_UPERframe_oms_1, /* Optional members */ - 2, 1, /* Root/Additions */ - 4, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_UPERframe = { - "UPERframe", - "UPERframe", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_UPERframe_tags_1, - sizeof(asn_DEF_UPERframe_tags_1) - /sizeof(asn_DEF_UPERframe_tags_1[0]), /* 1 */ - asn_DEF_UPERframe_tags_1, /* Same as above */ - sizeof(asn_DEF_UPERframe_tags_1) - /sizeof(asn_DEF_UPERframe_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_UPERframe_1, - 6, /* Elements count */ - &asn_SPC_UPERframe_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/URL-Base.c b/src/tmx/Asn_J2735/src/r41/URL-Base.c deleted file mode 100644 index 29ef6152b..000000000 --- a/src/tmx/Asn_J2735/src/r41/URL-Base.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "URL-Base.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Base_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 45) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -URL_Base_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -URL_Base_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - URL_Base_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -URL_Base_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -URL_Base_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -URL_Base_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -URL_Base_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -URL_Base_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -URL_Base_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -URL_Base_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - URL_Base_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_URL_Base_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, - 0, 0 /* No PER character map necessary */ -}; -static ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Base = { - "URL-Base", - "URL-Base", - URL_Base_free, - URL_Base_print, - URL_Base_constraint, - URL_Base_decode_ber, - URL_Base_encode_der, - URL_Base_decode_xer, - URL_Base_encode_xer, - URL_Base_decode_uper, - URL_Base_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_URL_Base_tags_1, - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - asn_DEF_URL_Base_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - &asn_PER_type_URL_Base_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/URL-Link.c b/src/tmx/Asn_J2735/src/r41/URL-Link.c deleted file mode 100644 index 46d813569..000000000 --- a/src/tmx/Asn_J2735/src/r41/URL-Link.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "URL-Link.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Link_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -URL_Link_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -URL_Link_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - URL_Link_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -URL_Link_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -URL_Link_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -URL_Link_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -URL_Link_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -URL_Link_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -URL_Link_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -URL_Link_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - URL_Link_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Link = { - "URL-Link", - "URL-Link", - URL_Link_free, - URL_Link_print, - URL_Link_constraint, - URL_Link_decode_ber, - URL_Link_encode_der, - URL_Link_decode_xer, - URL_Link_encode_xer, - URL_Link_decode_uper, - URL_Link_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_URL_Link_tags_1, - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - asn_DEF_URL_Link_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - &asn_PER_type_URL_Link_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/URL-Short.c b/src/tmx/Asn_J2735/src/r41/URL-Short.c deleted file mode 100644 index 448207faa..000000000 --- a/src/tmx/Asn_J2735/src/r41/URL-Short.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "URL-Short.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Short_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 15) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -URL_Short_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -URL_Short_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - URL_Short_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -URL_Short_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -URL_Short_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -URL_Short_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -URL_Short_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -URL_Short_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -URL_Short_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -URL_Short_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - URL_Short_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_URL_Short_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, - 0, 0 /* No PER character map necessary */ -}; -static ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Short = { - "URL-Short", - "URL-Short", - URL_Short_free, - URL_Short_print, - URL_Short_constraint, - URL_Short_decode_ber, - URL_Short_encode_der, - URL_Short_decode_xer, - URL_Short_encode_xer, - URL_Short_decode_uper, - URL_Short_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_URL_Short_tags_1, - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - asn_DEF_URL_Short_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - &asn_PER_type_URL_Short_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/UUIDType.c b/src/tmx/Asn_J2735/src/r41/UUIDType.c deleted file mode 100644 index 53f233ca7..000000000 --- a/src/tmx/Asn_J2735/src/r41/UUIDType.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "UUIDType.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -UUIDType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 128) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -UUIDType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -UUIDType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - UUIDType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -UUIDType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -UUIDType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -UUIDType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -UUIDType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -UUIDType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -UUIDType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -UUIDType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - UUIDType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_UUIDType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 7, 7, 1, 128 } /* (SIZE(1..128)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_UUIDType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UUIDType = { - "UUIDType", - "UUIDType", - UUIDType_free, - UUIDType_print, - UUIDType_constraint, - UUIDType_decode_ber, - UUIDType_encode_der, - UUIDType_decode_xer, - UUIDType_encode_xer, - UUIDType_decode_uper, - UUIDType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_UUIDType_tags_1, - sizeof(asn_DEF_UUIDType_tags_1) - /sizeof(asn_DEF_UUIDType_tags_1[0]), /* 1 */ - asn_DEF_UUIDType_tags_1, /* Same as above */ - sizeof(asn_DEF_UUIDType_tags_1) - /sizeof(asn_DEF_UUIDType_tags_1[0]), /* 1 */ - &asn_PER_type_UUIDType_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c b/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c deleted file mode 100644 index 87f2f38e7..000000000 --- a/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "UniqueMSGID.h" - -int -UniqueMSGID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -UniqueMSGID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -UniqueMSGID_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -UniqueMSGID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -UniqueMSGID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -UniqueMSGID_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -UniqueMSGID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -UniqueMSGID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -UniqueMSGID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -UniqueMSGID_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - UniqueMSGID_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { - "UniqueMSGID", - "UniqueMSGID", - UniqueMSGID_free, - UniqueMSGID_print, - UniqueMSGID_constraint, - UniqueMSGID_decode_ber, - UniqueMSGID_encode_der, - UniqueMSGID_decode_xer, - UniqueMSGID_encode_xer, - UniqueMSGID_decode_uper, - UniqueMSGID_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_UniqueMSGID_tags_1, - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - asn_DEF_UniqueMSGID_tags_1, /* Same as above */ - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - &asn_PER_type_UniqueMSGID_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c deleted file mode 100644 index 10f406dd7..000000000 --- a/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fcompound-names` - */ - -#include "UserSizeAndBehaviour.h" - -int -UserSizeAndBehaviour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -UserSizeAndBehaviour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -UserSizeAndBehaviour_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -UserSizeAndBehaviour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -UserSizeAndBehaviour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -UserSizeAndBehaviour_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -UserSizeAndBehaviour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -UserSizeAndBehaviour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -UserSizeAndBehaviour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -UserSizeAndBehaviour_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { - "UserSizeAndBehaviour", - "UserSizeAndBehaviour", - UserSizeAndBehaviour_free, - UserSizeAndBehaviour_print, - UserSizeAndBehaviour_constraint, - UserSizeAndBehaviour_decode_ber, - UserSizeAndBehaviour_encode_der, - UserSizeAndBehaviour_decode_xer, - UserSizeAndBehaviour_encode_xer, - UserSizeAndBehaviour_decode_uper, - UserSizeAndBehaviour_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_UserSizeAndBehaviour_tags_1, - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - &asn_PER_type_UserSizeAndBehaviour_constr_1, - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VINstring.c b/src/tmx/Asn_J2735/src/r41/VINstring.c deleted file mode 100644 index ee5530431..000000000 --- a/src/tmx/Asn_J2735/src/r41/VINstring.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VINstring.h" - -int -VINstring_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 17)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -VINstring_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -VINstring_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VINstring_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VINstring_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VINstring_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VINstring_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VINstring_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VINstring_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VINstring_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VINstring_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VINstring_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VINstring_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VINstring = { - "VINstring", - "VINstring", - VINstring_free, - VINstring_print, - VINstring_constraint, - VINstring_decode_ber, - VINstring_encode_der, - VINstring_decode_xer, - VINstring_encode_xer, - VINstring_decode_uper, - VINstring_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VINstring_tags_1, - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - asn_DEF_VINstring_tags_1, /* Same as above */ - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - &asn_PER_type_VINstring_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ValidRegion.c b/src/tmx/Asn_J2735/src/r41/ValidRegion.c deleted file mode 100644 index df42c5758..000000000 --- a/src/tmx/Asn_J2735/src/r41/ValidRegion.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ValidRegion.h" - -static asn_per_constraints_t asn_PER_type_area_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_area_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ShapePointSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "shapePointSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Circle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "circle" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionPointSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "regionPointSet" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ -}; -static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { - sizeof(struct ValidRegion__area), - offsetof(struct ValidRegion__area, _asn_ctx), - offsetof(struct ValidRegion__area, present), - sizeof(((struct ValidRegion__area *)0)->present), - asn_MAP_area_tag2el_4, - 3, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_area_4 = { - "area", - "area", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_area_constr_4, - asn_MBR_area_4, - 3, /* Elements count */ - &asn_SPC_area_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "direction" - }, - { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "extent" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_area_4, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "area" - }, -}; -static int asn_MAP_ValidRegion_oms_1[] = { 1 }; -static ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { - sizeof(struct ValidRegion), - offsetof(struct ValidRegion, _asn_ctx), - asn_MAP_ValidRegion_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ValidRegion_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_ValidRegion = { - "ValidRegion", - "ValidRegion", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ValidRegion_tags_1, - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - asn_DEF_ValidRegion_tags_1, /* Same as above */ - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_ValidRegion_1, - 3, /* Elements count */ - &asn_SPC_ValidRegion_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c b/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c deleted file mode 100644 index 93a8b6047..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod_with_PSM.ASN" - * `asn1c -gen-PER -fno-include-deps` - */ - -#include "VehicleDescriptionType.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -VehicleDescriptionType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 80) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static void -VehicleDescriptionType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_IA5String.free_struct; - td->print_struct = asn_DEF_IA5String.print_struct; - td->check_constraints = asn_DEF_IA5String.check_constraints; - td->ber_decoder = asn_DEF_IA5String.ber_decoder; - td->der_encoder = asn_DEF_IA5String.der_encoder; - td->xer_decoder = asn_DEF_IA5String.xer_decoder; - td->xer_encoder = asn_DEF_IA5String.xer_encoder; - td->uper_decoder = asn_DEF_IA5String.uper_decoder; - td->uper_encoder = asn_DEF_IA5String.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_IA5String.per_constraints; - td->elements = asn_DEF_IA5String.elements; - td->elements_count = asn_DEF_IA5String.elements_count; - td->specifics = asn_DEF_IA5String.specifics; -} - -void -VehicleDescriptionType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleDescriptionType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleDescriptionType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleDescriptionType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleDescriptionType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleDescriptionType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleDescriptionType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleDescriptionType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleDescriptionType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleDescriptionType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 7, 7, 1, 80 } /* (SIZE(1..80)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleDescriptionType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleDescriptionType = { - "VehicleDescriptionType", - "VehicleDescriptionType", - VehicleDescriptionType_free, - VehicleDescriptionType_print, - VehicleDescriptionType_constraint, - VehicleDescriptionType_decode_ber, - VehicleDescriptionType_encode_der, - VehicleDescriptionType_decode_xer, - VehicleDescriptionType_encode_xer, - VehicleDescriptionType_decode_uper, - VehicleDescriptionType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleDescriptionType_tags_1, - sizeof(asn_DEF_VehicleDescriptionType_tags_1) - /sizeof(asn_DEF_VehicleDescriptionType_tags_1[0]), /* 1 */ - asn_DEF_VehicleDescriptionType_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleDescriptionType_tags_1) - /sizeof(asn_DEF_VehicleDescriptionType_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleDescriptionType_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c deleted file mode 100644 index 763221a61..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleGroupAffected.h" - -int -VehicleGroupAffected_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -VehicleGroupAffected_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -VehicleGroupAffected_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleGroupAffected_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleGroupAffected_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleGroupAffected_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleGroupAffected_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleGroupAffected_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleGroupAffected_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleGroupAffected_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleGroupAffected_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { - { 9217, 12, "all-vehicles" }, - { 9218, 8, "bicycles" }, - { 9219, 11, "motorcycles" }, - { 9220, 4, "cars" }, - { 9221, 14, "light-vehicles" }, - { 9222, 23, "cars-and-light-vehicles" }, - { 9223, 18, "cars-with-trailers" }, - { 9224, 31, "cars-with-recreational-trailers" }, - { 9225, 22, "vehicles-with-trailers" }, - { 9226, 14, "heavy-vehicles" }, - { 9227, 6, "trucks" }, - { 9228, 5, "buses" }, - { 9229, 17, "articulated-buses" }, - { 9230, 12, "school-buses" }, - { 9231, 27, "vehicles-with-semi-trailers" }, - { 9232, 29, "vehicles-with-double-trailers" }, - { 9233, 21, "high-profile-vehicles" }, - { 9234, 13, "wide-vehicles" }, - { 9235, 13, "long-vehicles" }, - { 9236, 15, "hazardous-loads" }, - { 9237, 17, "exceptional-loads" }, - { 9238, 14, "abnormal-loads" }, - { 9239, 7, "convoys" }, - { 9240, 20, "maintenance-vehicles" }, - { 9241, 17, "delivery-vehicles" }, - { 9242, 42, "vehicles-with-even-numbered-license-plates" }, - { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, - { 9244, 29, "vehicles-with-parking-permits" }, - { 9245, 34, "vehicles-with-catalytic-converters" }, - { 9246, 37, "vehicles-without-catalytic-converters" }, - { 9247, 20, "gas-powered-vehicles" }, - { 9248, 23, "diesel-powered-vehicles" }, - { 9249, 12, "lPG-vehicles" }, - { 9250, 16, "military-convoys" }, - { 9251, 17, "military-vehicles" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { - 21, /* abnormal-loads(9238) */ - 0, /* all-vehicles(9217) */ - 12, /* articulated-buses(9229) */ - 1, /* bicycles(9218) */ - 11, /* buses(9228) */ - 3, /* cars(9220) */ - 5, /* cars-and-light-vehicles(9222) */ - 7, /* cars-with-recreational-trailers(9224) */ - 6, /* cars-with-trailers(9223) */ - 22, /* convoys(9239) */ - 24, /* delivery-vehicles(9241) */ - 31, /* diesel-powered-vehicles(9248) */ - 20, /* exceptional-loads(9237) */ - 30, /* gas-powered-vehicles(9247) */ - 19, /* hazardous-loads(9236) */ - 9, /* heavy-vehicles(9226) */ - 16, /* high-profile-vehicles(9233) */ - 32, /* lPG-vehicles(9249) */ - 4, /* light-vehicles(9221) */ - 18, /* long-vehicles(9235) */ - 23, /* maintenance-vehicles(9240) */ - 33, /* military-convoys(9250) */ - 34, /* military-vehicles(9251) */ - 2, /* motorcycles(9219) */ - 13, /* school-buses(9230) */ - 10, /* trucks(9227) */ - 28, /* vehicles-with-catalytic-converters(9245) */ - 15, /* vehicles-with-double-trailers(9232) */ - 25, /* vehicles-with-even-numbered-license-plates(9242) */ - 26, /* vehicles-with-odd-numbered-license-plates(9243) */ - 27, /* vehicles-with-parking-permits(9244) */ - 14, /* vehicles-with-semi-trailers(9231) */ - 8, /* vehicles-with-trailers(9225) */ - 29, /* vehicles-without-catalytic-converters(9246) */ - 17 /* wide-vehicles(9234) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { - asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 35, /* Number of elements in the maps */ - 36, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { - "VehicleGroupAffected", - "VehicleGroupAffected", - VehicleGroupAffected_free, - VehicleGroupAffected_print, - VehicleGroupAffected_constraint, - VehicleGroupAffected_decode_ber, - VehicleGroupAffected_encode_der, - VehicleGroupAffected_decode_xer, - VehicleGroupAffected_encode_xer, - VehicleGroupAffected_decode_uper, - VehicleGroupAffected_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleGroupAffected_tags_1, - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleGroupAffected_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleHeight.c b/src/tmx/Asn_J2735/src/r41/VehicleHeight.c deleted file mode 100644 index 0dc852371..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleHeight.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleHeight.h" - -int -VehicleHeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -VehicleHeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -VehicleHeight_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleHeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleHeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleHeight_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleHeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleHeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleHeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleHeight_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleHeight_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { - "VehicleHeight", - "VehicleHeight", - VehicleHeight_free, - VehicleHeight_print, - VehicleHeight_constraint, - VehicleHeight_decode_ber, - VehicleHeight_encode_der, - VehicleHeight_decode_xer, - VehicleHeight_encode_xer, - VehicleHeight_decode_uper, - VehicleHeight_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleHeight_tags_1, - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - asn_DEF_VehicleHeight_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleHeight_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleIdent.c b/src/tmx/Asn_J2735/src/r41/VehicleIdent.c deleted file mode 100644 index 7d7dadf87..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleIdent.c +++ /dev/null @@ -1,230 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleIdent.h" - -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_ownerCode_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 32) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rEquip" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ -}; -static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { - sizeof(struct VehicleIdent__vehicleClass), - offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), - offsetof(struct VehicleIdent__vehicleClass, present), - sizeof(((struct VehicleIdent__vehicleClass *)0)->present), - asn_MAP_vehicleClass_tag2el_7, - 3, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { - "vehicleClass", - "vehicleClass", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_vehicleClass_constr_7, - asn_MBR_vehicleClass_7, - 3, /* Elements count */ - &asn_SPC_vehicleClass_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { - { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "name" - }, - { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VINstring, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vin" - }, - { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_ownerCode_constraint_1, - &asn_PER_memb_ownerCode_constr_4, - 0, - "ownerCode" - }, - { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "id" - }, - { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleType" - }, - { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_vehicleClass_7, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleClass" - }, -}; -static int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; -static ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { - sizeof(struct VehicleIdent), - offsetof(struct VehicleIdent, _asn_ctx), - asn_MAP_VehicleIdent_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_VehicleIdent_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 5, /* Start extensions */ - 7 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { - "VehicleIdent", - "VehicleIdent", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleIdent_tags_1, - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - asn_DEF_VehicleIdent_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleIdent_1, - 6, /* Elements count */ - &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleLength.c b/src/tmx/Asn_J2735/src/r41/VehicleLength.c deleted file mode 100644 index 8dbcbd9e2..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleLength.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleLength.h" - -int -VehicleLength_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 16383)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -VehicleLength_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -VehicleLength_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleLength_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleLength_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleLength_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleLength_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleLength_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleLength_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleLength_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleLength_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleLength_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 16383 } /* (0..16383) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleLength = { - "VehicleLength", - "VehicleLength", - VehicleLength_free, - VehicleLength_print, - VehicleLength_constraint, - VehicleLength_decode_ber, - VehicleLength_encode_der, - VehicleLength_decode_xer, - VehicleLength_encode_xer, - VehicleLength_decode_uper, - VehicleLength_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleLength_tags_1, - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - asn_DEF_VehicleLength_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleLength_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleMass.c b/src/tmx/Asn_J2735/src/r41/VehicleMass.c deleted file mode 100644 index 86c9e7f2d..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleMass.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleMass.h" - -int -VehicleMass_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -VehicleMass_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -VehicleMass_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleMass_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleMass_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleMass_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleMass_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleMass_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleMass_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleMass_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleMass_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleMass_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 1, 127 } /* (1..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleMass = { - "VehicleMass", - "VehicleMass", - VehicleMass_free, - VehicleMass_print, - VehicleMass_constraint, - VehicleMass_decode_ber, - VehicleMass_encode_der, - VehicleMass_decode_xer, - VehicleMass_encode_xer, - VehicleMass_decode_uper, - VehicleMass_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleMass_tags_1, - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - asn_DEF_VehicleMass_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleMass_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c b/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c deleted file mode 100644 index 911909628..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleRequestStatus.h" - -int -VehicleRequestStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static void -VehicleRequestStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_OCTET_STRING.free_struct; - td->print_struct = asn_DEF_OCTET_STRING.print_struct; - td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; - td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; - td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; - td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; - td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; - td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; - td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; - td->elements = asn_DEF_OCTET_STRING.elements; - td->elements_count = asn_DEF_OCTET_STRING.elements_count; - td->specifics = asn_DEF_OCTET_STRING.specifics; -} - -void -VehicleRequestStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleRequestStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleRequestStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleRequestStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleRequestStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleRequestStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleRequestStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleRequestStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleRequestStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleRequestStatus_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VehicleRequestStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleRequestStatus = { - "VehicleRequestStatus", - "VehicleRequestStatus", - VehicleRequestStatus_free, - VehicleRequestStatus_print, - VehicleRequestStatus_constraint, - VehicleRequestStatus_decode_ber, - VehicleRequestStatus_encode_der, - VehicleRequestStatus_decode_xer, - VehicleRequestStatus_encode_xer, - VehicleRequestStatus_decode_uper, - VehicleRequestStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleRequestStatus_tags_1, - sizeof(asn_DEF_VehicleRequestStatus_tags_1) - /sizeof(asn_DEF_VehicleRequestStatus_tags_1[0]), /* 1 */ - asn_DEF_VehicleRequestStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleRequestStatus_tags_1) - /sizeof(asn_DEF_VehicleRequestStatus_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleRequestStatus_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c b/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c deleted file mode 100644 index 9f36c6630..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleSafetyExtension.h" - -static asn_TYPE_member_t asn_MBR_VehicleSafetyExtension_1[] = { - { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtension, events), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EventFlags, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "events" - }, - { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtension, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pathHistory" - }, - { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtension, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "pathPrediction" - }, - { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtension, theRTCM), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMPackage, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "theRTCM" - }, -}; -static int asn_MAP_VehicleSafetyExtension_oms_1[] = { 0, 1, 2, 3 }; -static ber_tlv_tag_t asn_DEF_VehicleSafetyExtension_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtension_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* theRTCM */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtension_specs_1 = { - sizeof(struct VehicleSafetyExtension), - offsetof(struct VehicleSafetyExtension, _asn_ctx), - asn_MAP_VehicleSafetyExtension_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_VehicleSafetyExtension_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 3, /* Start extensions */ - 5 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtension = { - "VehicleSafetyExtension", - "VehicleSafetyExtension", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleSafetyExtension_tags_1, - sizeof(asn_DEF_VehicleSafetyExtension_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtension_tags_1[0]), /* 1 */ - asn_DEF_VehicleSafetyExtension_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSafetyExtension_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtension_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleSafetyExtension_1, - 4, /* Elements count */ - &asn_SPC_VehicleSafetyExtension_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleSize.c b/src/tmx/Asn_J2735/src/r41/VehicleSize.c deleted file mode 100644 index c1862466e..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleSize.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleSize.h" - -static asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleWidth, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleLength, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "length" - }, -}; -static ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { - sizeof(struct VehicleSize), - offsetof(struct VehicleSize, _asn_ctx), - asn_MAP_VehicleSize_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSize = { - "VehicleSize", - "VehicleSize", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleSize_tags_1, - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - asn_DEF_VehicleSize_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleSize_1, - 2, /* Elements count */ - &asn_SPC_VehicleSize_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatus.c b/src/tmx/Asn_J2735/src/r41/VehicleStatus.c deleted file mode 100644 index baabcd693..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleStatus.c +++ /dev/null @@ -1,798 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleStatus.h" - -static asn_TYPE_member_t asn_MBR_wipers_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__wipers, statusFront), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatusFront, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "statusFront" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__wipers, rateFront), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rateFront" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__wipers, statusRear), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatusRear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "statusRear" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__wipers, rateRear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rateRear" - }, -}; -static int asn_MAP_wipers_oms_4[] = { 2, 3 }; -static ber_tlv_tag_t asn_DEF_wipers_tags_4[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_wipers_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_wipers_specs_4 = { - sizeof(struct VehicleStatus__wipers), - offsetof(struct VehicleStatus__wipers, _asn_ctx), - asn_MAP_wipers_tag2el_4, - 4, /* Count of tags in the map */ - asn_MAP_wipers_oms_4, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_wipers_4 = { - "wipers", - "wipers", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_wipers_tags_4, - sizeof(asn_DEF_wipers_tags_4) - /sizeof(asn_DEF_wipers_tags_4[0]) - 1, /* 1 */ - asn_DEF_wipers_tags_4, /* Same as above */ - sizeof(asn_DEF_wipers_tags_4) - /sizeof(asn_DEF_wipers_tags_4[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_wipers_4, - 4, /* Elements count */ - &asn_SPC_wipers_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_steering_16[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "angle" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidence" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleRateOfChange, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rate" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivingWheelAngle, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "wheels" - }, -}; -static int asn_MAP_steering_oms_16[] = { 1, 2, 3 }; -static ber_tlv_tag_t asn_DEF_steering_tags_16[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_steering_tag2el_16[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_16 = { - sizeof(struct VehicleStatus__steering), - offsetof(struct VehicleStatus__steering, _asn_ctx), - asn_MAP_steering_tag2el_16, - 4, /* Count of tags in the map */ - asn_MAP_steering_oms_16, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_steering_16 = { - "steering", - "steering", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_steering_tags_16, - sizeof(asn_DEF_steering_tags_16) - /sizeof(asn_DEF_steering_tags_16[0]) - 1, /* 1 */ - asn_DEF_steering_tags_16, /* Same as above */ - sizeof(asn_DEF_steering_tags_16) - /sizeof(asn_DEF_steering_tags_16[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_steering_16, - 4, /* Elements count */ - &asn_SPC_steering_specs_16 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_accelSets_21[] = { - { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accel4way" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAccelerationThreshold, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vertAccelThres" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "yawRateCon" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "hozAccelCon" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConfidenceSet, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "confidenceSet" - }, -}; -static int asn_MAP_accelSets_oms_21[] = { 0, 1, 2, 3, 4 }; -static ber_tlv_tag_t asn_DEF_accelSets_tags_21[] = { - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_21[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_21 = { - sizeof(struct VehicleStatus__accelSets), - offsetof(struct VehicleStatus__accelSets, _asn_ctx), - asn_MAP_accelSets_tag2el_21, - 5, /* Count of tags in the map */ - asn_MAP_accelSets_oms_21, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_accelSets_21 = { - "accelSets", - "accelSets", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_accelSets_tags_21, - sizeof(asn_DEF_accelSets_tags_21) - /sizeof(asn_DEF_accelSets_tags_21[0]) - 1, /* 1 */ - asn_DEF_accelSets_tags_21, /* Same as above */ - sizeof(asn_DEF_accelSets_tags_21) - /sizeof(asn_DEF_accelSets_tags_21[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_accelSets_21, - 5, /* Elements count */ - &asn_SPC_accelSets_specs_21 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_object_27[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDistance, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "obDist" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDirection, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "obDirect" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dateTime" - }, -}; -static ber_tlv_tag_t asn_DEF_object_tags_27[] = { - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_object_tag2el_27[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_object_specs_27 = { - sizeof(struct VehicleStatus__object), - offsetof(struct VehicleStatus__object, _asn_ctx), - asn_MAP_object_tag2el_27, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_object_27 = { - "object", - "object", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_object_tags_27, - sizeof(asn_DEF_object_tags_27) - /sizeof(asn_DEF_object_tags_27[0]) - 1, /* 1 */ - asn_DEF_object_tags_27, /* Same as above */ - sizeof(asn_DEF_object_tags_27) - /sizeof(asn_DEF_object_tags_27[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_object_27, - 3, /* Elements count */ - &asn_SPC_object_specs_27 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_vehicleData_35[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "height" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "bumpers" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "mass" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "trailerWeight" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "type" - }, -}; -static ber_tlv_tag_t asn_DEF_vehicleData_tags_35[] = { - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_35[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_35 = { - sizeof(struct VehicleStatus__vehicleData), - offsetof(struct VehicleStatus__vehicleData, _asn_ctx), - asn_MAP_vehicleData_tag2el_35, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleData_35 = { - "vehicleData", - "vehicleData", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_vehicleData_tags_35, - sizeof(asn_DEF_vehicleData_tags_35) - /sizeof(asn_DEF_vehicleData_tags_35[0]) - 1, /* 1 */ - asn_DEF_vehicleData_tags_35, /* Same as above */ - sizeof(asn_DEF_vehicleData_tags_35) - /sizeof(asn_DEF_vehicleData_tags_35[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_vehicleData_35, - 5, /* Elements count */ - &asn_SPC_vehicleData_specs_35 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_weatherReport_43[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipYesNo, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "isRaining" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rainRate" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipSituation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "precipSituation" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssSolarRadiation, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "solarRadiation" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssMobileFriction, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "friction" - }, -}; -static int asn_MAP_weatherReport_oms_43[] = { 1, 2, 3, 4 }; -static ber_tlv_tag_t asn_DEF_weatherReport_tags_43[] = { - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_43[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_43 = { - sizeof(struct VehicleStatus__weatherReport), - offsetof(struct VehicleStatus__weatherReport, _asn_ctx), - asn_MAP_weatherReport_tag2el_43, - 5, /* Count of tags in the map */ - asn_MAP_weatherReport_oms_43, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_weatherReport_43 = { - "weatherReport", - "weatherReport", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_weatherReport_tags_43, - sizeof(asn_DEF_weatherReport_tags_43) - /sizeof(asn_DEF_weatherReport_tags_43[0]) - 1, /* 1 */ - asn_DEF_weatherReport_tags_43, /* Same as above */ - sizeof(asn_DEF_weatherReport_tags_43) - /sizeof(asn_DEF_weatherReport_tags_43[0]), /* 2 */ - 0, /* No PER visible constraints */ - asn_MBR_weatherReport_43, - 5, /* Elements count */ - &asn_SPC_weatherReport_specs_43 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { - { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lights" - }, - { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LightbarInUse, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "lightBar" - }, - { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_wipers_4, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "wipers" - }, - { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "brakeStatus" - }, - { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeAppliedPressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "brakePressure" - }, - { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoefficientOfFriction, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "roadFriction" - }, - { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SunSensor, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sunData" - }, - { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RainSensor, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rainData" - }, - { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirTemperature, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "airTemp" - }, - { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirPressure, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "airPres" - }, - { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - 0, - &asn_DEF_steering_16, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "steering" - }, - { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - 0, - &asn_DEF_accelSets_21, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "accelSets" - }, - { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - 0, - &asn_DEF_object_27, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "object" - }, - { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "fullPos" - }, - { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottlePosition, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "throttlePos" - }, - { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedHeadC" - }, - { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "speedC" - }, - { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - 0, - &asn_DEF_vehicleData_35, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleData" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "vehicleIdent" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_J1939data, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "j1939data" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - 0, - &asn_DEF_weatherReport_43, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "weatherReport" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus, gpsStatus), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GPSstatus, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "gpsStatus" - }, -}; -static int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; -static ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gpsStatus */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { - sizeof(struct VehicleStatus), - offsetof(struct VehicleStatus, _asn_ctx), - asn_MAP_VehicleStatus_tag2el_1, - 22, /* Count of tags in the map */ - asn_MAP_VehicleStatus_oms_1, /* Optional members */ - 22, 0, /* Root/Additions */ - 21, /* Start extensions */ - 23 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { - "VehicleStatus", - "VehicleStatus", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleStatus_tags_1, - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleStatus_1, - 22, /* Elements count */ - &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c deleted file mode 100644 index 6f93022bb..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c +++ /dev/null @@ -1,203 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleStatusDeviceTypeTag.h" - -int -VehicleStatusDeviceTypeTag_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -VehicleStatusDeviceTypeTag_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleStatusDeviceTypeTag_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleStatusDeviceTypeTag_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleStatusDeviceTypeTag_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleStatusDeviceTypeTag_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleStatusDeviceTypeTag_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleStatusDeviceTypeTag_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleStatusDeviceTypeTag_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "lights" }, - { 2, 6, "wipers" }, - { 3, 6, "brakes" }, - { 4, 4, "stab" }, - { 5, 4, "trac" }, - { 6, 3, "abs" }, - { 7, 4, "sunS" }, - { 8, 5, "rainS" }, - { 9, 7, "airTemp" }, - { 10, 8, "steering" }, - { 11, 14, "vertAccelThres" }, - { 12, 9, "vertAccel" }, - { 13, 12, "hozAccelLong" }, - { 14, 11, "hozAccelLat" }, - { 15, 11, "hozAccelCon" }, - { 16, 9, "accel4way" }, - { 17, 13, "confidenceSet" }, - { 18, 6, "obDist" }, - { 19, 8, "obDirect" }, - { 20, 3, "yaw" }, - { 21, 10, "yawRateCon" }, - { 22, 8, "dateTime" }, - { 23, 7, "fullPos" }, - { 24, 10, "position2D" }, - { 25, 10, "position3D" }, - { 26, 7, "vehicle" }, - { 27, 10, "speedHeadC" }, - { 28, 6, "speedC" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { - 6, /* abs(6) */ - 16, /* accel4way(16) */ - 9, /* airTemp(9) */ - 3, /* brakes(3) */ - 17, /* confidenceSet(17) */ - 22, /* dateTime(22) */ - 23, /* fullPos(23) */ - 15, /* hozAccelCon(15) */ - 14, /* hozAccelLat(14) */ - 13, /* hozAccelLong(13) */ - 1, /* lights(1) */ - 19, /* obDirect(19) */ - 18, /* obDist(18) */ - 24, /* position2D(24) */ - 25, /* position3D(25) */ - 8, /* rainS(8) */ - 28, /* speedC(28) */ - 27, /* speedHeadC(27) */ - 4, /* stab(4) */ - 10, /* steering(10) */ - 7, /* sunS(7) */ - 5, /* trac(5) */ - 0, /* unknown(0) */ - 26, /* vehicle(26) */ - 12, /* vertAccel(12) */ - 11, /* vertAccelThres(11) */ - 2, /* wipers(2) */ - 20, /* yaw(20) */ - 21 /* yawRateCon(21) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { - asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ - 29, /* Number of elements in the maps */ - 30, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { - "VehicleStatusDeviceTypeTag", - "VehicleStatusDeviceTypeTag", - VehicleStatusDeviceTypeTag_free, - VehicleStatusDeviceTypeTag_print, - VehicleStatusDeviceTypeTag_constraint, - VehicleStatusDeviceTypeTag_decode_ber, - VehicleStatusDeviceTypeTag_encode_der, - VehicleStatusDeviceTypeTag_decode_xer, - VehicleStatusDeviceTypeTag_encode_xer, - VehicleStatusDeviceTypeTag_decode_uper, - VehicleStatusDeviceTypeTag_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c deleted file mode 100644 index 290379a66..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c +++ /dev/null @@ -1,192 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleStatusRequest.h" - -static int -memb_subType_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnLessThenValue_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnMoreThenValue_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_subType_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatusDeviceTypeTag, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "dataType" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_subType_constraint_1, - &asn_PER_memb_subType_constr_3, - 0, - "subType" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_sendOnLessThenValue_constraint_1, - &asn_PER_memb_sendOnLessThenValue_constr_4, - 0, - "sendOnLessThenValue" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - memb_sendOnMoreThenValue_constraint_1, - &asn_PER_memb_sendOnMoreThenValue_constr_5, - 0, - "sendOnMoreThenValue" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "sendAll" - }, -}; -static int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; -static ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { - sizeof(struct VehicleStatusRequest), - offsetof(struct VehicleStatusRequest, _asn_ctx), - asn_MAP_VehicleStatusRequest_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* Start extensions */ - 6 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { - "VehicleStatusRequest", - "VehicleStatusRequest", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleStatusRequest_tags_1, - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleStatusRequest_1, - 5, /* Elements count */ - &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c deleted file mode 100644 index f6de7e84e..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleToLanePosition.h" - -static asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "laneID" - }, -}; -static ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { - sizeof(struct VehicleToLanePosition), - offsetof(struct VehicleToLanePosition, _asn_ctx), - asn_MAP_VehicleToLanePosition_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* Start extensions */ - 3 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { - "VehicleToLanePosition", - "VehicleToLanePosition", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleToLanePosition_tags_1, - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_VehicleToLanePosition_1, - 2, /* Elements count */ - &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c deleted file mode 100644 index a9b3ace3b..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "EU" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleToLanePositionList.h" - -static asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleToLanePosition, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { - sizeof(struct VehicleToLanePositionList), - offsetof(struct VehicleToLanePositionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { - "VehicleToLanePositionList", - "VehicleToLanePositionList", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleToLanePositionList_tags_1, - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleToLanePositionList_constr_1, - asn_MBR_VehicleToLanePositionList_1, - 1, /* Single element */ - &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleType.c b/src/tmx/Asn_J2735/src/r41/VehicleType.c deleted file mode 100644 index eecf7c649..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleType.c +++ /dev/null @@ -1,177 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleType.h" - -int -VehicleType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -VehicleType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -VehicleType_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleType_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleType_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleType_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleType_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleType_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 7, "unknown" }, - { 2, 7, "special" }, - { 3, 4, "moto" }, - { 4, 3, "car" }, - { 5, 8, "carOther" }, - { 6, 3, "bus" }, - { 7, 8, "axleCnt2" }, - { 8, 8, "axleCnt3" }, - { 9, 8, "axleCnt4" }, - { 10, 15, "axleCnt4Trailer" }, - { 11, 15, "axleCnt5Trailer" }, - { 12, 15, "axleCnt6Trailer" }, - { 13, 20, "axleCnt5MultiTrailer" }, - { 14, 20, "axleCnt6MultiTrailer" }, - { 15, 20, "axleCnt7MultiTrailer" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_VehicleType_enum2value_1[] = { - 7, /* axleCnt2(7) */ - 8, /* axleCnt3(8) */ - 9, /* axleCnt4(9) */ - 10, /* axleCnt4Trailer(10) */ - 13, /* axleCnt5MultiTrailer(13) */ - 11, /* axleCnt5Trailer(11) */ - 14, /* axleCnt6MultiTrailer(14) */ - 12, /* axleCnt6Trailer(12) */ - 15, /* axleCnt7MultiTrailer(15) */ - 6, /* bus(6) */ - 4, /* car(4) */ - 5, /* carOther(5) */ - 3, /* moto(3) */ - 0, /* none(0) */ - 2, /* special(2) */ - 1 /* unknown(1) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { - asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 17, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleType = { - "VehicleType", - "VehicleType", - VehicleType_free, - VehicleType_print, - VehicleType_constraint, - VehicleType_decode_ber, - VehicleType_encode_der, - VehicleType_decode_xer, - VehicleType_encode_xer, - VehicleType_decode_uper, - VehicleType_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleType_tags_1, - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - asn_DEF_VehicleType_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleType_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VehicleWidth.c b/src/tmx/Asn_J2735/src/r41/VehicleWidth.c deleted file mode 100644 index 68f46c04e..000000000 --- a/src/tmx/Asn_J2735/src/r41/VehicleWidth.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleWidth.h" - -int -VehicleWidth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -VehicleWidth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -VehicleWidth_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VehicleWidth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VehicleWidth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VehicleWidth_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VehicleWidth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VehicleWidth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VehicleWidth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VehicleWidth_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VehicleWidth_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { - "VehicleWidth", - "VehicleWidth", - VehicleWidth_free, - VehicleWidth_print, - VehicleWidth_constraint, - VehicleWidth_decode_ber, - VehicleWidth_encode_der, - VehicleWidth_decode_xer, - VehicleWidth_encode_xer, - VehicleWidth_decode_uper, - VehicleWidth_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VehicleWidth_tags_1, - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - asn_DEF_VehicleWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - &asn_PER_type_VehicleWidth_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Velocity.c b/src/tmx/Asn_J2735/src/r41/Velocity.c deleted file mode 100644 index 397c8a7f7..000000000 --- a/src/tmx/Asn_J2735/src/r41/Velocity.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Velocity.h" - -int -Velocity_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Velocity_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Velocity_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Velocity_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Velocity_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Velocity_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Velocity_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Velocity_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Velocity_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Velocity_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Velocity_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Velocity_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Velocity_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Velocity = { - "Velocity", - "Velocity", - Velocity_free, - Velocity_print, - Velocity_constraint, - Velocity_decode_ber, - Velocity_encode_der, - Velocity_decode_xer, - Velocity_encode_xer, - Velocity_decode_uper, - Velocity_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Velocity_tags_1, - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - asn_DEF_Velocity_tags_1, /* Same as above */ - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - &asn_PER_type_Velocity_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c deleted file mode 100644 index 2a4c4f2b5..000000000 --- a/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VerticalAcceleration.h" - -int -VerticalAcceleration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -VerticalAcceleration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -VerticalAcceleration_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VerticalAcceleration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VerticalAcceleration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VerticalAcceleration_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VerticalAcceleration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VerticalAcceleration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VerticalAcceleration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VerticalAcceleration_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VerticalAcceleration_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { - "VerticalAcceleration", - "VerticalAcceleration", - VerticalAcceleration_free, - VerticalAcceleration_print, - VerticalAcceleration_constraint, - VerticalAcceleration_decode_ber, - VerticalAcceleration_encode_der, - VerticalAcceleration_decode_xer, - VerticalAcceleration_encode_xer, - VerticalAcceleration_decode_uper, - VerticalAcceleration_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VerticalAcceleration_tags_1, - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - &asn_PER_type_VerticalAcceleration_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c deleted file mode 100644 index a300f7a11..000000000 --- a/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VerticalAccelerationThreshold.h" - -int -VerticalAccelerationThreshold_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -VerticalAccelerationThreshold_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -VerticalAccelerationThreshold_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -VerticalAccelerationThreshold_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -VerticalAccelerationThreshold_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -VerticalAccelerationThreshold_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -VerticalAccelerationThreshold_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -VerticalAccelerationThreshold_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -VerticalAccelerationThreshold_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { - "VerticalAccelerationThreshold", - "VerticalAccelerationThreshold", - VerticalAccelerationThreshold_free, - VerticalAccelerationThreshold_print, - VerticalAccelerationThreshold_constraint, - VerticalAccelerationThreshold_decode_ber, - VerticalAccelerationThreshold_encode_der, - VerticalAccelerationThreshold_decode_xer, - VerticalAccelerationThreshold_encode_xer, - VerticalAccelerationThreshold_decode_uper, - VerticalAccelerationThreshold_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_VerticalAccelerationThreshold_tags_1, - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c b/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c deleted file mode 100644 index b5252c340..000000000 --- a/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WaitOnStopline.h" - -int -WaitOnStopline_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static void -WaitOnStopline_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BOOLEAN.free_struct; - td->print_struct = asn_DEF_BOOLEAN.print_struct; - td->check_constraints = asn_DEF_BOOLEAN.check_constraints; - td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; - td->der_encoder = asn_DEF_BOOLEAN.der_encoder; - td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; - td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; - td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; - td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BOOLEAN.per_constraints; - td->elements = asn_DEF_BOOLEAN.elements; - td->elements_count = asn_DEF_BOOLEAN.elements_count; - td->specifics = asn_DEF_BOOLEAN.specifics; -} - -void -WaitOnStopline_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WaitOnStopline_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WaitOnStopline_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WaitOnStopline_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WaitOnStopline_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WaitOnStopline_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WaitOnStopline_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WaitOnStopline_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WaitOnStopline_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { - "WaitOnStopline", - "WaitOnStopline", - WaitOnStopline_free, - WaitOnStopline_print, - WaitOnStopline_constraint, - WaitOnStopline_decode_ber, - WaitOnStopline_encode_der, - WaitOnStopline_decode_xer, - WaitOnStopline_encode_xer, - WaitOnStopline_decode_uper, - WaitOnStopline_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WaitOnStopline_tags_1, - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - asn_DEF_WaitOnStopline_tags_1, /* Same as above */ - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c deleted file mode 100644 index ed5a19f4c..000000000 --- a/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WheelEndElectFault.h" - -int -WheelEndElectFault_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static void -WheelEndElectFault_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_BIT_STRING.free_struct; - td->print_struct = asn_DEF_BIT_STRING.print_struct; - td->check_constraints = asn_DEF_BIT_STRING.check_constraints; - td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; - td->der_encoder = asn_DEF_BIT_STRING.der_encoder; - td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; - td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; - td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; - td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_BIT_STRING.per_constraints; - td->elements = asn_DEF_BIT_STRING.elements; - td->elements_count = asn_DEF_BIT_STRING.elements_count; - td->specifics = asn_DEF_BIT_STRING.specifics; -} - -void -WheelEndElectFault_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WheelEndElectFault_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WheelEndElectFault_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WheelEndElectFault_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WheelEndElectFault_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WheelEndElectFault_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WheelEndElectFault_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WheelEndElectFault_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WheelEndElectFault_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { - "WheelEndElectFault", - "WheelEndElectFault", - WheelEndElectFault_free, - WheelEndElectFault_print, - WheelEndElectFault_constraint, - WheelEndElectFault_decode_ber, - WheelEndElectFault_encode_der, - WheelEndElectFault_decode_xer, - WheelEndElectFault_encode_xer, - WheelEndElectFault_decode_uper, - WheelEndElectFault_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WheelEndElectFault_tags_1, - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - 0, 0, /* Defined elsewhere */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c deleted file mode 100644 index c4af7ca99..000000000 --- a/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WheelSensorStatus.h" - -int -WheelSensorStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -WheelSensorStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -WheelSensorStatus_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WheelSensorStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WheelSensorStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WheelSensorStatus_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WheelSensorStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WheelSensorStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WheelSensorStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WheelSensorStatus_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WheelSensorStatus_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { - { 0, 3, "off" }, - { 1, 2, "on" }, - { 2, 10, "notDefined" }, - { 3, 12, "notSupoprted" } -}; -static unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { - 2, /* notDefined(2) */ - 3, /* notSupoprted(3) */ - 0, /* off(0) */ - 1 /* on(1) */ -}; -static asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { - asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { - "WheelSensorStatus", - "WheelSensorStatus", - WheelSensorStatus_free, - WheelSensorStatus_print, - WheelSensorStatus_constraint, - WheelSensorStatus_decode_ber, - WheelSensorStatus_encode_der, - WheelSensorStatus_decode_xer, - WheelSensorStatus_encode_xer, - WheelSensorStatus_decode_uper, - WheelSensorStatus_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WheelSensorStatus_tags_1, - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - &asn_PER_type_WheelSensorStatus_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WiperRate.c b/src/tmx/Asn_J2735/src/r41/WiperRate.c deleted file mode 100644 index ba306373a..000000000 --- a/src/tmx/Asn_J2735/src/r41/WiperRate.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WiperRate.h" - -int -WiperRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -WiperRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -WiperRate_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WiperRate_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WiperRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WiperRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WiperRate_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WiperRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WiperRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WiperRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WiperRate_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WiperRate_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_WiperRate_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperRate = { - "WiperRate", - "WiperRate", - WiperRate_free, - WiperRate_print, - WiperRate_constraint, - WiperRate_decode_ber, - WiperRate_encode_der, - WiperRate_decode_xer, - WiperRate_encode_xer, - WiperRate_decode_uper, - WiperRate_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WiperRate_tags_1, - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - asn_DEF_WiperRate_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - &asn_PER_type_WiperRate_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatus.c b/src/tmx/Asn_J2735/src/r41/WiperStatus.c deleted file mode 100644 index 20fd9f648..000000000 --- a/src/tmx/Asn_J2735/src/r41/WiperStatus.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WiperStatus.h" - -static asn_TYPE_member_t asn_MBR_WiperStatus_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct WiperStatus, statusFront), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatusFront, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "statusFront" - }, - { ATF_NOFLAGS, 0, offsetof(struct WiperStatus, rateFront), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rateFront" - }, - { ATF_POINTER, 2, offsetof(struct WiperStatus, statusRear), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatusRear, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "statusRear" - }, - { ATF_POINTER, 1, offsetof(struct WiperStatus, rateRear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "rateRear" - }, -}; -static int asn_MAP_WiperStatus_oms_1[] = { 2, 3 }; -static ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_WiperStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_WiperStatus_specs_1 = { - sizeof(struct WiperStatus), - offsetof(struct WiperStatus, _asn_ctx), - asn_MAP_WiperStatus_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_WiperStatus_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -asn_TYPE_descriptor_t asn_DEF_WiperStatus = { - "WiperStatus", - "WiperStatus", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WiperStatus_tags_1, - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - asn_DEF_WiperStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_WiperStatus_1, - 4, /* Elements count */ - &asn_SPC_WiperStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c b/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c deleted file mode 100644 index a17757ef0..000000000 --- a/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WiperStatusFront.h" - -int -WiperStatusFront_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -WiperStatusFront_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -WiperStatusFront_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WiperStatusFront_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WiperStatusFront_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WiperStatusFront_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WiperStatusFront_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WiperStatusFront_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WiperStatusFront_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WiperStatusFront_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WiperStatusFront_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_WiperStatusFront_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_WiperStatusFront_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 12, "intermittent" }, - { 3, 3, "low" }, - { 4, 4, "high" }, - { 126, 11, "washerInUse" }, - { 127, 16, "automaticPresent" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_WiperStatusFront_enum2value_1[] = { - 6, /* automaticPresent(127) */ - 4, /* high(4) */ - 2, /* intermittent(2) */ - 3, /* low(3) */ - 1, /* off(1) */ - 0, /* unavailable(0) */ - 5 /* washerInUse(126) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_WiperStatusFront_specs_1 = { - asn_MAP_WiperStatusFront_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WiperStatusFront_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_WiperStatusFront_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperStatusFront = { - "WiperStatusFront", - "WiperStatusFront", - WiperStatusFront_free, - WiperStatusFront_print, - WiperStatusFront_constraint, - WiperStatusFront_decode_ber, - WiperStatusFront_encode_der, - WiperStatusFront_decode_xer, - WiperStatusFront_encode_xer, - WiperStatusFront_decode_uper, - WiperStatusFront_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WiperStatusFront_tags_1, - sizeof(asn_DEF_WiperStatusFront_tags_1) - /sizeof(asn_DEF_WiperStatusFront_tags_1[0]), /* 1 */ - asn_DEF_WiperStatusFront_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperStatusFront_tags_1) - /sizeof(asn_DEF_WiperStatusFront_tags_1[0]), /* 1 */ - &asn_PER_type_WiperStatusFront_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WiperStatusFront_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c b/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c deleted file mode 100644 index 1650420f1..000000000 --- a/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WiperStatusRear.h" - -int -WiperStatusRear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -WiperStatusRear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -WiperStatusRear_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -WiperStatusRear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -WiperStatusRear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -WiperStatusRear_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -WiperStatusRear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -WiperStatusRear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -WiperStatusRear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -WiperStatusRear_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - WiperStatusRear_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_WiperStatusRear_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_WiperStatusRear_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 12, "intermittent" }, - { 3, 3, "low" }, - { 4, 4, "high" }, - { 126, 11, "washerInUse" }, - { 127, 16, "automaticPresent" } - /* This list is extensible */ -}; -static unsigned int asn_MAP_WiperStatusRear_enum2value_1[] = { - 6, /* automaticPresent(127) */ - 4, /* high(4) */ - 2, /* intermittent(2) */ - 3, /* low(3) */ - 1, /* off(1) */ - 0, /* unavailable(0) */ - 5 /* washerInUse(126) */ - /* This list is extensible */ -}; -static asn_INTEGER_specifics_t asn_SPC_WiperStatusRear_specs_1 = { - asn_MAP_WiperStatusRear_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WiperStatusRear_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_WiperStatusRear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperStatusRear = { - "WiperStatusRear", - "WiperStatusRear", - WiperStatusRear_free, - WiperStatusRear_print, - WiperStatusRear_constraint, - WiperStatusRear_decode_ber, - WiperStatusRear_encode_der, - WiperStatusRear_decode_xer, - WiperStatusRear_encode_xer, - WiperStatusRear_decode_uper, - WiperStatusRear_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WiperStatusRear_tags_1, - sizeof(asn_DEF_WiperStatusRear_tags_1) - /sizeof(asn_DEF_WiperStatusRear_tags_1[0]), /* 1 */ - asn_DEF_WiperStatusRear_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperStatusRear_tags_1) - /sizeof(asn_DEF_WiperStatusRear_tags_1[0]), /* 1 */ - &asn_PER_type_WiperStatusRear_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WiperStatusRear_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/WorkZone.c b/src/tmx/Asn_J2735/src/r41/WorkZone.c deleted file mode 100644 index 9c6a06912..000000000 --- a/src/tmx/Asn_J2735/src/r41/WorkZone.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "WorkZone.h" - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_per_constraints_t asn_PER_type_item_wk_constr_3 GCC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_per_constraints_t asn_PER_type_WorkZone_constr_1 GCC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_wk_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct item_wk, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct item_wk, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - memb_text_constraint_3, - &asn_PER_memb_text_constr_5, - 0, - "text" - }, -}; -static asn_TYPE_tag2member_t asn_MAP_item_wk_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_wk_specs_3 = { - sizeof(struct item_wk), - offsetof(struct item_wk, _asn_ctx), - offsetof(struct item_wk, present), - sizeof(((struct item_wk *)0)->present), - asn_MAP_item_wk_tag2el_3, - 2, /* Count of tags in the map */ - 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_wk_3 = { - "item-wk", - "item-wk", - CHOICE_free, - CHOICE_print, - CHOICE_constraint, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_outmost_tag, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - &asn_PER_type_item_wk_constr_3, - asn_MBR_item_wk_3, - 2, /* Elements count */ - &asn_SPC_item_wk_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item_wk), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_wk_3, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "item-wk" - }, -}; -static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-wk */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct WorkZone__Member), - offsetof(struct WorkZone__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* Start extensions */ - -1 /* Stop extensions */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_constraint, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - 0, /* No PER visible constraints */ - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_WorkZone_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, /* Defer constraints checking to the member type */ - 0, /* No PER visible constraints */ - 0, - "" - }, -}; -static ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { - sizeof(struct WorkZone), - offsetof(struct WorkZone, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_WorkZone = { - "WorkZone", - "WorkZone", - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_constraint, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, - SEQUENCE_OF_decode_uper, - SEQUENCE_OF_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_WorkZone_tags_1, - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - asn_DEF_WorkZone_tags_1, /* Same as above */ - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - &asn_PER_type_WorkZone_constr_1, - asn_MBR_WorkZone_1, - 1, /* Single element */ - &asn_SPC_WorkZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/YawRate.c b/src/tmx/Asn_J2735/src/r41/YawRate.c deleted file mode 100644 index 855b8fa7f..000000000 --- a/src/tmx/Asn_J2735/src/r41/YawRate.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "YawRate.h" - -int -YawRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -YawRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -YawRate_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - YawRate_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -YawRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -YawRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -YawRate_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -YawRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -YawRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -YawRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -YawRate_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - YawRate_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_YawRate_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRate = { - "YawRate", - "YawRate", - YawRate_free, - YawRate_print, - YawRate_constraint, - YawRate_decode_ber, - YawRate_encode_der, - YawRate_decode_xer, - YawRate_encode_xer, - YawRate_decode_uper, - YawRate_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_YawRate_tags_1, - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - asn_DEF_YawRate_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - &asn_PER_type_YawRate_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c b/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c deleted file mode 100644 index e977df430..000000000 --- a/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "YawRateConfidence.h" - -int -YawRateConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - /* Replace with underlying type checker */ - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - return td->check_constraints(td, sptr, ctfailcb, app_key); -} - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static void -YawRateConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeEnumerated.free_struct; - td->print_struct = asn_DEF_NativeEnumerated.print_struct; - td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; - td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; - td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; - td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; - td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; - td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; - td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; - td->elements = asn_DEF_NativeEnumerated.elements; - td->elements_count = asn_DEF_NativeEnumerated.elements_count; - /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ -} - -void -YawRateConfidence_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -YawRateConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -YawRateConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -YawRateConfidence_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -YawRateConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -YawRateConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -YawRateConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -YawRateConfidence_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - YawRateConfidence_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "degSec-100-00" }, - { 2, 13, "degSec-010-00" }, - { 3, 13, "degSec-005-00" }, - { 4, 13, "degSec-001-00" }, - { 5, 13, "degSec-000-10" }, - { 6, 13, "degSec-000-05" }, - { 7, 13, "degSec-000-01" } -}; -static unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { - 7, /* degSec-000-01(7) */ - 6, /* degSec-000-05(6) */ - 5, /* degSec-000-10(5) */ - 4, /* degSec-001-00(4) */ - 3, /* degSec-005-00(3) */ - 2, /* degSec-010-00(2) */ - 1, /* degSec-100-00(1) */ - 0 /* unavailable(0) */ -}; -static asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { - asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { - "YawRateConfidence", - "YawRateConfidence", - YawRateConfidence_free, - YawRateConfidence_print, - YawRateConfidence_constraint, - YawRateConfidence_decode_ber, - YawRateConfidence_encode_der, - YawRateConfidence_decode_xer, - YawRateConfidence_encode_xer, - YawRateConfidence_decode_uper, - YawRateConfidence_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_YawRateConfidence_tags_1, - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_YawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - &asn_PER_type_YawRateConfidence_constr_1, - 0, 0, /* Defined elsewhere */ - &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/Year.c b/src/tmx/Asn_J2735/src/r41/Year.c deleted file mode 100644 index ef91fcf96..000000000 --- a/src/tmx/Asn_J2735/src/r41/Year.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "JPN" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Year.h" - -int -Year_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -Year_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -Year_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - Year_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -Year_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - Year_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -Year_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - Year_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -Year_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - Year_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -Year_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - Year_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -Year_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - Year_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -Year_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - Year_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -Year_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - Year_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_Year_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_Year_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Year = { - "Year", - "Year", - Year_free, - Year_print, - Year_constraint, - Year_decode_ber, - Year_encode_der, - Year_decode_xer, - Year_encode_xer, - Year_decode_uper, - Year_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_Year_tags_1, - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - asn_DEF_Year_tags_1, /* Same as above */ - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - &asn_PER_type_Year_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/ZoneLength.c b/src/tmx/Asn_J2735/src/r41/ZoneLength.c deleted file mode 100644 index 62e2d8f56..000000000 --- a/src/tmx/Asn_J2735/src/r41/ZoneLength.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "../J2735_R41_Source_mod.ASN" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ZoneLength.h" - -int -ZoneLength_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 10000)) { - /* Constraint check succeeded */ - return 0; - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static void -ZoneLength_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { - td->free_struct = asn_DEF_NativeInteger.free_struct; - td->print_struct = asn_DEF_NativeInteger.print_struct; - td->check_constraints = asn_DEF_NativeInteger.check_constraints; - td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; - td->der_encoder = asn_DEF_NativeInteger.der_encoder; - td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; - td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; - td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; - td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; - if(!td->per_constraints) - td->per_constraints = asn_DEF_NativeInteger.per_constraints; - td->elements = asn_DEF_NativeInteger.elements; - td->elements_count = asn_DEF_NativeInteger.elements_count; - td->specifics = asn_DEF_NativeInteger.specifics; -} - -void -ZoneLength_free(asn_TYPE_descriptor_t *td, - void *struct_ptr, int contents_only) { - ZoneLength_1_inherit_TYPE_descriptor(td); - td->free_struct(td, struct_ptr, contents_only); -} - -int -ZoneLength_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->print_struct(td, struct_ptr, ilevel, cb, app_key); -} - -asn_dec_rval_t -ZoneLength_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const void *bufptr, size_t size, int tag_mode) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); -} - -asn_enc_rval_t -ZoneLength_encode_der(asn_TYPE_descriptor_t *td, - void *structure, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); -} - -asn_dec_rval_t -ZoneLength_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **structure, const char *opt_mname, const void *bufptr, size_t size) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); -} - -asn_enc_rval_t -ZoneLength_encode_xer(asn_TYPE_descriptor_t *td, void *structure, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); -} - -asn_dec_rval_t -ZoneLength_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); -} - -asn_enc_rval_t -ZoneLength_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, - void *structure, asn_per_outp_t *per_out) { - ZoneLength_1_inherit_TYPE_descriptor(td); - return td->uper_encoder(td, constraints, structure, per_out); -} - -static asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 GCC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ZoneLength = { - "ZoneLength", - "ZoneLength", - ZoneLength_free, - ZoneLength_print, - ZoneLength_constraint, - ZoneLength_decode_ber, - ZoneLength_encode_der, - ZoneLength_decode_xer, - ZoneLength_encode_xer, - ZoneLength_decode_uper, - ZoneLength_encode_uper, - 0, /* Use generic outmost tag fetcher */ - asn_DEF_ZoneLength_tags_1, - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - asn_DEF_ZoneLength_tags_1, /* Same as above */ - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - &asn_PER_type_ZoneLength_constr_1, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c deleted file mode 100644 index ec952fc99..000000000 --- a/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c +++ /dev/null @@ -1,41 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -typedef A_SEQUENCE_OF(void) asn_sequence; - -void -asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { - asn_sequence *as = (asn_sequence *)asn_sequence_of_x; - - if(as) { - void *ptr; - int n; - - if(number < 0 || number >= as->count) - return; /* Nothing to delete */ - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - /* - * Shift all elements to the left to hide the gap. - */ - --as->count; - for(n = number; n < as->count; n++) - as->array[n] = as->array[n+1]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - diff --git a/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c b/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c deleted file mode 100644 index 944f2cb8a..000000000 --- a/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c +++ /dev/null @@ -1,88 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Add another element into the set. - */ -int -asn_set_add(void *asn_set_of_x, void *ptr) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as == 0 || ptr == 0) { - errno = EINVAL; /* Invalid arguments */ - return -1; - } - - /* - * Make sure there's enough space to insert an element. - */ - if(as->count == as->size) { - int _newsize = as->size ? (as->size << 1) : 4; - void *_new_arr; - _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); - if(_new_arr) { - as->array = (void **)_new_arr; - as->size = _newsize; - } else { - /* ENOMEM */ - return -1; - } - } - - as->array[as->count++] = ptr; - - return 0; -} - -void -asn_set_del(void *asn_set_of_x, int number, int _do_free) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - void *ptr; - if(number < 0 || number >= as->count) - return; - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - as->array[number] = as->array[--as->count]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - -/* - * Free the contents of the set, do not free the set itself. - */ -void -asn_set_empty(void *asn_set_of_x) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - if(as->array) { - if(as->free) { - while(as->count--) - as->free(as->array[as->count]); - } - FREEMEM(as->array); - as->array = 0; - } - as->count = 0; - as->size = 0; - } - -} - diff --git a/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c deleted file mode 100644 index 8e604a492..000000000 --- a/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c +++ /dev/null @@ -1,312 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Decode an always-primitive type. - */ -asn_dec_rval_t -ber_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - void **sptr, const void *buf_ptr, size_t size, int tag_mode) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; - asn_dec_rval_t rval; - ber_tlv_len_t length = 0; // =0 to avoid [incorrect] warning. - - /* - * If the structure is not there, allocate it. - */ - if(st == NULL) { - st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); - if(st == NULL) _ASN_DECODE_FAILED; - *sptr = (void *)st; - } - - ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", - td->name, tag_mode); - - /* - * Check tags and extract value length. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - st->size = (int)length; - /* The following better be optimized away. */ - if(sizeof(st->size) != sizeof(length) - && (ber_tlv_len_t)st->size != length) { - st->size = 0; - _ASN_DECODE_FAILED; - } - - st->buf = (uint8_t *)MALLOC(length + 1); - if(!st->buf) { - st->size = 0; - _ASN_DECODE_FAILED; - } - - memcpy(st->buf, buf_ptr, length); - st->buf[length] = '\0'; /* Just in case */ - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s", - (long)rval.consumed, - (long)length, td->name); - - return rval; -} - -/* - * Encode an always-primitive type using DER. - */ -asn_enc_rval_t -der_encode_primitive(asn_TYPE_descriptor_t *td, void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval; - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; - - ASN_DEBUG("%s %s as a primitive type (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, - cb, app_key); - ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb && st->buf) { - if(cb(st->buf, st->size, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } else { - assert(st->buf || st->size == 0); - } - - erval.encoded += st->size; - _ASN_ENCODED_OK(erval); -} - -void -ASN__PRIMITIVE_TYPE_free(asn_TYPE_descriptor_t *td, void *sptr, - int contents_only) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as a primitive type", td->name); - - if(st->buf) - FREEMEM(st->buf); - - if(!contents_only) - FREEMEM(st); -} - - -/* - * Local internal type passed around as an argument. - */ -struct xdp_arg_s { - asn_TYPE_descriptor_t *type_descriptor; - void *struct_key; - xer_primitive_body_decoder_f *prim_body_decoder; - int decoded_something; - int want_more; -}; - -/* - * Since some kinds of primitive values can be encoded using value-specific - * tags (, , etc), the primitive decoder must - * be supplied with such tags to parse them as needed. - */ -static int -xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - - /* - * The chunk_buf is guaranteed to start at '<'. - */ - assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); - - /* - * Decoding was performed once already. Prohibit doing it again. - */ - if(arg->decoded_something) - return -1; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return 0; - } - - return -1; -} - -static ssize_t -xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - size_t lead_wsp_size; - - if(arg->decoded_something) { - if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { - /* - * Example: - * "123 " - * ^- chunk_buf position. - */ - return chunk_size; - } - /* - * Decoding was done once already. Prohibit doing it again. - */ - return -1; - } - - if(!have_more) { - /* - * If we've received something like "1", we can't really - * tell whether it is really `1` or `123`, until we know - * that there is no more data coming. - * The have_more argument will be set to 1 once something - * like this is available to the caller of this callback: - * "1want_more = 1; - return -1; - } - - lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); - chunk_buf = (const char *)chunk_buf + lead_wsp_size; - chunk_size -= lead_wsp_size; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return lead_wsp_size + chunk_size; - } - - return -1; -} - - -asn_dec_rval_t -xer_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, - void **sptr, - size_t struct_size, - const char *opt_mname, - const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder -) { - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t s_ctx; - struct xdp_arg_s s_arg; - asn_dec_rval_t rc; - - /* - * Create the structure if does not exist. - */ - if(!*sptr) { - *sptr = CALLOC(1, struct_size); - if(!*sptr) _ASN_DECODE_FAILED; - } - - memset(&s_ctx, 0, sizeof(s_ctx)); - s_arg.type_descriptor = td; - s_arg.struct_key = *sptr; - s_arg.prim_body_decoder = prim_body_decoder; - s_arg.decoded_something = 0; - s_arg.want_more = 0; - - rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, - xml_tag, buf_ptr, size, - xer_decode__unexpected_tag, xer_decode__primitive_body); - switch(rc.code) { - case RC_OK: - if(!s_arg.decoded_something) { - char ch; - ASN_DEBUG("Primitive body is not recognized, " - "supplying empty one"); - /* - * Decoding opportunity has come and gone. - * Where's the result? - * Try to feed with empty body, see if it eats it. - */ - if(prim_body_decoder(s_arg.type_descriptor, - s_arg.struct_key, &ch, 0) - != XPBD_BODY_CONSUMED) { - /* - * This decoder does not like empty stuff. - */ - _ASN_DECODE_FAILED; - } - } - break; - case RC_WMORE: - /* - * Redo the whole thing later. - * We don't have a context to save intermediate parsing state. - */ - rc.consumed = 0; - break; - case RC_FAIL: - rc.consumed = 0; - if(s_arg.want_more) - rc.code = RC_WMORE; - else - _ASN_DECODE_FAILED; - break; - } - return rc; -} - diff --git a/src/tmx/Asn_J2735/src/r41/ber_decoder.c b/src/tmx/Asn_J2735/src/r41/ber_decoder.c deleted file mode 100644 index 0f9940090..000000000 --- a/src/tmx/Asn_J2735/src/r41/ber_decoder.c +++ /dev/null @@ -1,283 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) -#undef RETURN -#define RETURN(_code) do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - if(opt_ctx) opt_ctx->step = step; /* Save context */ \ - if(_code == RC_OK || opt_ctx) \ - rval.consumed = consumed_myself; \ - else \ - rval.consumed = 0; /* Context-free */ \ - return rval; \ - } while(0) - -/* - * The BER decoder of any type. - */ -asn_dec_rval_t -ber_decode(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *type_descriptor, - void **struct_ptr, const void *ptr, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return type_descriptor->ber_decoder(opt_codec_ctx, type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - ptr, size, /* Buffer and its size */ - 0 /* Default tag mode is 0 */ - ); -} - -/* - * Check the set of >> tags matches the definition. - */ -asn_dec_rval_t -ber_check_tags(asn_codec_ctx_t *opt_codec_ctx, - asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, - const void *ptr, size_t size, int tag_mode, int last_tag_form, - ber_tlv_len_t *last_length, int *opt_tlv_form) { - ssize_t consumed_myself = 0; - ssize_t tag_len; - ssize_t len_len; - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_len_t limit_len = -1; - int expect_00_terminators = 0; - int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ - int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ - int tagno; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) - RETURN(RC_FAIL); - - /* - * So what does all this implicit skip stuff mean? - * Imagine two types, - * A ::= [5] IMPLICIT T - * B ::= [2] EXPLICIT T - * Where T is defined as - * T ::= [4] IMPLICIT SEQUENCE { ... } - * - * Let's say, we are starting to decode type A, given the - * following TLV stream: <5> <0>. What does this mean? - * It means that the type A contains type T which is, - * in turn, empty. - * Remember though, that we are still in A. We cannot - * just pass control to the type T decoder. Why? Because - * the type T decoder expects <4> <0>, not <5> <0>. - * So, we must make sure we are going to receive <5> while - * still in A, then pass control to the T decoder, indicating - * that the tag <4> was implicitly skipped. The decoder of T - * hence will be prepared to treat <4> as valid tag, and decode - * it appropriately. - */ - - tagno = step /* Continuing where left previously */ - + (tag_mode==1?-1:0) - ; - ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", - td->name, (long)size, tag_mode, step, tagno); - /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ - - if(tag_mode == 0 && tagno == td->tags_count) { - /* - * This must be the _untagged_ ANY type, - * which outermost tag isn't known in advance. - * Fetch the tag and length separately. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - ASN_DEBUG("Advancing %ld in ANY case", - (long)(tag_len + len_len)); - ADVANCE(tag_len + len_len); - } else { - assert(tagno < td->tags_count); /* At least one loop */ - } - for((void)tagno; tagno < td->tags_count; tagno++, step++) { - - /* - * Fetch and process T from TLV. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - ASN_DEBUG("Fetching tag from {%p,%ld}: " - "len %ld, step %d, tagno %d got %s", - ptr, (long)size, - (long)tag_len, step, tagno, - ber_tlv_tag_string(tlv_tag)); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - - /* - * If {I}, don't check anything. - * If {I,B,C}, check B and C unless we're at I. - */ - if(tag_mode != 0 && step == 0) { - /* - * We don't expect tag to match here. - * It's just because we don't know how the tag - * is supposed to look like. - */ - } else { - assert(tagno >= 0); /* Guaranteed by the code above */ - if(tlv_tag != td->tags[tagno]) { - /* - * Unexpected tag. Too bad. - */ - ASN_DEBUG("Expected: %s, " - "expectation failed (tn=%d, tm=%d)", - ber_tlv_tag_string(td->tags[tagno]), - tagno, tag_mode - ); - RETURN(RC_FAIL); - } - } - - /* - * Attention: if there are more tags expected, - * ensure that the current tag is presented - * in constructed form (it contains other tags!). - * If this one is the last one, check that the tag form - * matches the one given in descriptor. - */ - if(tagno < (td->tags_count - 1)) { - if(tlv_constr == 0) { - ASN_DEBUG("tlv_constr = %d, expfail", - tlv_constr); - RETURN(RC_FAIL); - } - } else { - if(last_tag_form != tlv_constr - && last_tag_form != -1) { - ASN_DEBUG("last_tag_form %d != %d", - last_tag_form, tlv_constr); - RETURN(RC_FAIL); - } - } - - /* - * Fetch and process L from TLV. - */ - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - ASN_DEBUG("Fetching len = %ld", (long)len_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - /* - * FIXME - * As of today, the chain of tags - * must either contain several indefinite length TLVs, - * or several definite length ones. - * No mixing is allowed. - */ - if(tlv_len == -1) { - /* - * Indefinite length. - */ - if(limit_len == -1) { - expect_00_terminators++; - } else { - ASN_DEBUG("Unexpected indefinite length " - "in a chain of definite lengths"); - RETURN(RC_FAIL); - } - ADVANCE(tag_len + len_len); - continue; - } else { - if(expect_00_terminators) { - ASN_DEBUG("Unexpected definite length " - "in a chain of indefinite lengths"); - RETURN(RC_FAIL); - } - } - - /* - * Check that multiple TLVs specify ever decreasing length, - * which is consistent. - */ - if(limit_len == -1) { - limit_len = tlv_len + tag_len + len_len; - if(limit_len < 0) { - /* Too great tlv_len value? */ - RETURN(RC_FAIL); - } - } else if(limit_len != tlv_len + tag_len + len_len) { - /* - * Inner TLV specifies length which is inconsistent - * with the outer TLV's length value. - */ - ASN_DEBUG("Outer TLV is %ld and inner is %ld", - (long)limit_len, (long)tlv_len); - RETURN(RC_FAIL); - } - - ADVANCE(tag_len + len_len); - - limit_len -= (tag_len + len_len); - if((ssize_t)size > limit_len) { - /* - * Make sure that we won't consume more bytes - * from the parent frame than the inferred limit. - */ - size = limit_len; - } - } - - if(opt_tlv_form) - *opt_tlv_form = tlv_constr; - if(expect_00_terminators) - *last_length = -expect_00_terminators; - else - *last_length = tlv_len; - - RETURN(RC_OK); -} diff --git a/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c b/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c deleted file mode 100644 index b87e75e04..000000000 --- a/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c +++ /dev/null @@ -1,178 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r) { - const uint8_t *buf = (const uint8_t *)bufptr; - unsigned oct; - - if(size == 0) - return 0; /* Want more */ - - oct = *(const uint8_t *)buf; - if((oct & 0x80) == 0) { - /* - * Short definite length. - */ - *len_r = oct; /* & 0x7F */ - return 1; - } else { - ber_tlv_len_t len; - size_t skipped; - - if(_is_constructed && oct == 0x80) { - *len_r = -1; /* Indefinite length */ - return 1; - } - - if(oct == 0xff) { - /* Reserved in standard for future use. */ - return -1; - } - - oct &= 0x7F; /* Leave only the 7 LS bits */ - for(len = 0, buf++, skipped = 1; - oct && (++skipped <= size); buf++, oct--) { - - len = (len << 8) | *buf; - if(len < 0 - || (len >> ((8 * sizeof(len)) - 8) && oct > 1)) { - /* - * Too large length value. - */ - return -1; - } - } - - if(oct == 0) { - ber_tlv_len_t lenplusepsilon = (size_t)len + 1024; - /* - * Here length may be very close or equal to 2G. - * However, the arithmetics used in some decoders - * may add some (small) quantities to the length, - * to check the resulting value against some limits. - * This may result in integer wrap-around, which - * we try to avoid by checking it earlier here. - */ - if(lenplusepsilon < 0) { - /* Too large length value */ - return -1; - } - - *len_r = len; - return skipped; - } - - return 0; /* Want more */ - } - -} - -ssize_t -ber_skip_length(asn_codec_ctx_t *opt_codec_ctx, - int _is_constructed, const void *ptr, size_t size) { - ber_tlv_len_t vlen; /* Length of V in TLV */ - ssize_t tl; /* Length of L in TLV */ - ssize_t ll; /* Length of L in TLV */ - size_t skip; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) - return -1; - - /* - * Determine the size of L in TLV. - */ - ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); - if(ll <= 0) return ll; - - /* - * Definite length. - */ - if(vlen >= 0) { - skip = ll + vlen; - if(skip > size) - return 0; /* Want more */ - return skip; - } - - /* - * Indefinite length! - */ - ASN_DEBUG("Skipping indefinite length"); - for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { - ber_tlv_tag_t tag; - - /* Fetch the tag */ - tl = ber_fetch_tag(ptr, size, &tag); - if(tl <= 0) return tl; - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - ((const char *)ptr) + tl, size - tl); - if(ll <= 0) return ll; - - skip += tl + ll; - - /* - * This may be the end of the indefinite length structure, - * two consecutive 0 octets. - * Check if it is true. - */ - if(((const uint8_t *)ptr)[0] == 0 - && ((const uint8_t *)ptr)[1] == 0) - return skip; - - ptr = ((const char *)ptr) + tl + ll; - size -= tl + ll; - } - - /* UNREACHABLE */ -} - -size_t -der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { - size_t required_size; /* Size of len encoding */ - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - size_t i; - - if(len <= 127) { - /* Encoded in 1 octet */ - if(size) *buf = (uint8_t)len; - return 1; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 8; i < 8 * sizeof(len); i += 8) { - if(len >> i) - required_size++; - else - break; - } - - if(size <= required_size) - return required_size + 1; - - *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ - - /* - * Produce the len encoding, space permitting. - */ - end = buf + required_size; - for(i -= 8; buf < end; i -= 8, buf++) - *buf = (uint8_t)(len >> i); - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c deleted file mode 100644 index 42708760e..000000000 --- a/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c +++ /dev/null @@ -1,144 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { - ber_tlv_tag_t val; - ber_tlv_tag_t tclass; - size_t skipped; - - if(size == 0) - return 0; - - val = *(const uint8_t *)ptr; - tclass = (val >> 6); - if((val &= 0x1F) != 0x1F) { - /* - * Simple form: everything encoded in a single octet. - * Tag Class is encoded using two least significant bits. - */ - *tag_r = (val << 2) | tclass; - return 1; - } - - /* - * Each octet contains 7 bits of useful information. - * The MSB is 0 if it is the last octet of the tag. - */ - for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; - skipped <= size; - ptr = ((const char *)ptr) + 1, skipped++) { - unsigned int oct = *(const uint8_t *)ptr; - if(oct & 0x80) { - val = (val << 7) | (oct & 0x7F); - /* - * Make sure there are at least 9 bits spare - * at the MS side of a value. - */ - if(val >> ((8 * sizeof(val)) - 9)) { - /* - * We would not be able to accomodate - * any more tag bits. - */ - return -1; - } - } else { - val = (val << 7) | oct; - *tag_r = (val << 2) | tclass; - return skipped; - } - } - - return 0; /* Want more */ -} - - -ssize_t -ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { - char buf[sizeof("[APPLICATION ]") + 32]; - ssize_t ret; - - ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - if(ret >= (ssize_t)sizeof(buf) || ret < 2) { - errno = EPERM; - return -1; - } - - return fwrite(buf, 1, ret, f); -} - -ssize_t -ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { - char *type = 0; - int ret; - - switch(tag & 0x3) { - case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; - case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; - case ASN_TAG_CLASS_CONTEXT: type = ""; break; - case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; - } - - ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); - if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ - - return ret; -} - -char * -ber_tlv_tag_string(ber_tlv_tag_t tag) { - static char buf[sizeof("[APPLICATION ]") + 32]; - - (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - - return buf; -} - - -size_t -ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { - int tclass = BER_TAG_CLASS(tag); - ber_tlv_tag_t tval = BER_TAG_VALUE(tag); - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - size_t required_size; - size_t i; - - if(tval <= 30) { - /* Encoded in 1 octet */ - if(size) buf[0] = (tclass << 6) | tval; - return 1; - } else if(size) { - *buf++ = (tclass << 6) | 0x1F; - size--; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { - if(tval >> i) - required_size++; - else - break; - } - - if(size < required_size) - return required_size + 1; - - /* - * Fill in the buffer, space permitting. - */ - end = buf + required_size - 1; - for(i -= 7; buf < end; i -= 7, buf++) - *buf = 0x80 | ((tval >> i) & 0x7F); - *buf = (tval & 0x7F); /* Last octet without high bit */ - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c b/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c deleted file mode 100644 index 5a1e0d386..000000000 --- a/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c +++ /dev/null @@ -1,1113 +0,0 @@ -/* - * Copyright (c) 2003, 2004, 2005, 2006, 2007 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num;\ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * See the definitions. - */ -static int _fetch_present_idx(const void *struct_ptr, int off, int size); -static void _set_present_idx(void *sptr, int offset, int size, int pres); - -/* - * Tags are canonically sorted in the tag to member table. - */ -static int -_search4tag(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) - return 0; - else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * The decoder of the CHOICE type. - */ -asn_dec_rval_t -CHOICE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - ssize_t tag_len; /* Length of TLV's T */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as CHOICE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - if(tag_mode || td->tags_count) { - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, -1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) { - /* ?Substracted below! */ - ctx->left += rval.consumed; - } - ADVANCE(rval.consumed); - } else { - ctx->left = -1; - } - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - do { - asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key; - - key.el_tag = tlv_tag; - t2m = (asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _search4tag); - if(t2m) { - /* - * Found the element corresponding to the tag. - */ - NEXT_PHASE(ctx); - ctx->step = t2m->el_no; - break; - } else if(specs->ext_start == -1) { - ASN_DEBUG("Unexpected tag %s " - "in non-extensible CHOICE %s", - ber_tlv_tag_string(tlv_tag), td->name); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - - ASN_DEBUG("Skipping unknown tag %s", - ber_tlv_tag_string(tlv_tag)); - - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - RETURN(RC_OK); - } - } while(0); - - case 2: - /* - * PHASE 2. - * Read in the element. - */ - do { - asn_TYPE_member_t *elm;/* CHOICE's element */ - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &elements[ctx->step]; - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - /* Set presence to be able to free it properly at any time */ - _set_present_idx(st, specs->pres_offset, - specs->pres_size, ctx->step + 1); - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->ber_decoder(opt_codec_ctx, elm->type, - memb_ptr2, ptr, LEFT, elm->tag_mode); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - RETURN(RC_FAIL); - case RC_FAIL: /* Fatal error */ - RETURN(rval.code); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } while(0); - - NEXT_PHASE(ctx); - - /* Fall through */ - case 3: - ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", - td->name, (long)ctx->left, (long)size, - tag_mode, td->tags_count); - - if(ctx->left > 0) { - /* - * The type must be fully decoded - * by the CHOICE member-specific decoder. - */ - RETURN(RC_FAIL); - } - - if(ctx->left == -1 - && !(tag_mode || td->tags_count)) { - /* - * This is an untagged CHOICE. - * It doesn't contain nothing - * except for the member itself, including all its tags. - * The decoding is completed. - */ - NEXT_PHASE(ctx); - break; - } - - /* - * Read in the "end of data chunks"'s. - */ - while(ctx->left < 0) { - ssize_t tl; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * Expected <0><0>... - */ - if(((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - continue; - } - } else { - ASN_DEBUG("Unexpected continuation in %s", - td->name); - RETURN(RC_FAIL); - } - - /* UNREACHABLE */ - } - - NEXT_PHASE(ctx); - case 4: - /* No meaningful work here */ - break; - } - - RETURN(RC_OK); -} - -asn_enc_rval_t -CHOICE_encode_der(asn_TYPE_descriptor_t *td, void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE element */ - asn_enc_rval_t erval; - void *memb_ptr; - size_t computed_size = 0; - int present; - - if(!sptr) _ASN_ENCODE_FAILED; - - ASN_DEBUG("%s %s as CHOICE", - cb?"Encoding":"Estimating", td->name); - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present <= 0 || present > td->elements_count) { - if(present == 0 && td->elements_count == 0) { - /* The CHOICE is empty?! */ - erval.encoded = 0; - _ASN_ENCODED_OK(erval); - } - _ASN_ENCODE_FAILED; - } - - /* - * Seek over the present member of the structure. - */ - elm = &td->elements[present-1]; - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(memb_ptr == 0) { - if(elm->optional) { - erval.encoded = 0; - _ASN_ENCODED_OK(erval); - } - /* Mandatory element absent */ - _ASN_ENCODE_FAILED; - } - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - } - - /* - * If the CHOICE itself is tagged EXPLICIT: - * T ::= [2] EXPLICIT CHOICE { ... } - * Then emit the appropriate tags. - */ - if(tag_mode == 1 || td->tags_count) { - /* - * For this, we need to pre-compute the member. - */ - ssize_t ret; - - /* Encode member with its tag */ - erval = elm->type->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, 0, 0); - if(erval.encoded == -1) - return erval; - - /* Encode CHOICE with parent or my own tag */ - ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, - cb, app_key); - if(ret == -1) - _ASN_ENCODE_FAILED; - computed_size += ret; - } - - /* - * Encode the single underlying member. - */ - erval = elm->type->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, cb, app_key); - if(erval.encoded == -1) - return erval; - - ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", - (long)erval.encoded, (long)computed_size); - - erval.encoded += computed_size; - - return erval; -} - -ber_tlv_tag_t -CHOICE_outmost_tag(asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - int present; - - assert(tag_mode == 0); (void)tag_mode; - assert(tag == 0); (void)tag; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - if(present > 0 || present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *) - ((const char *)ptr + elm->memb_offset); - } else { - memb_ptr = (const void *) - ((const char *)ptr + elm->memb_offset); - } - - return asn_TYPE_outmost_tag(elm->type, memb_ptr, - elm->tag_mode, elm->tag); - } else { - return (ber_tlv_tag_t)-1; - } -} - -int -CHOICE_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - int present; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - return 0; - _ASN_CTFAIL(app_key, td, sptr, - "%s: mandatory CHOICE element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(elm->memb_constraints) { - return elm->memb_constraints(elm->type, memb_ptr, - ctfailcb, app_key); - } else { - int ret = elm->type->check_constraints(elm->type, - memb_ptr, ctfailcb, app_key); - /* - * Cannot inherit it eralier: - * need to make sure we get the updated version. - */ - elm->memb_constraints = elm->type->check_constraints; - return ret; - } - } else { - _ASN_CTFAIL(app_key, td, sptr, - "%s: no CHOICE element given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -CHOICE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value of a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - int edx; /* Element index */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - if(ctx->phase == 0 && !*xml_tag) - ctx->phase = 1; /* Skip the outer tag checking phase */ - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Only waiting for closing tag. - * Phase 4: Skipping unknown extensions. - * Phase 5: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 4;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - - /* - * Go inside the member. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st - + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Start/Continue decoding the inner member */ - tmprval = elm->type->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, elm->name, - buf_ptr, size); - XER_ADVANCE(tmprval.consumed); - ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", - elm->type->name, tmprval.code); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - assert(_fetch_present_idx(st, - specs->pres_offset, specs->pres_size) == 0); - /* Record what we've got */ - _set_present_idx(st, - specs->pres_offset, specs->pres_size, edx + 1); - ctx->phase = 3; - /* Fall through */ - } - - /* No need to wait for closing tag; special mode. */ - if(ctx->phase == 3 && !*xml_tag) { - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); - switch(ch_size) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - default: - switch(ch_type) { - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - xml_tag, tcv); - - /* Skip the extensions section */ - if(ctx->phase == 4) { - ASN_DEBUG("skip_unknown(%d, %ld)", - tcv, (long)ctx->left); - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 5; - RETURN(RC_FAIL); - continue; - case 1: - ctx->phase = 3; - /* Fall through */ - case 0: - XER_ADVANCE(ch_size); - continue; - case 2: - ctx->phase = 3; - break; - } - } - - switch(tcv) { - case XCT_BOTH: - break; /* No CHOICE? */ - case XCT_CLOSING: - if(ctx->phase != 3) - break; - XER_ADVANCE(ch_size); - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - if(ctx->phase != 1) - break; /* Really unexpected */ - - /* - * Search which inner member corresponds to this tag. - */ - for(edx = 0; edx < td->elements_count; edx++) { - elm = &td->elements[edx]; - tcv = xer_check_tag(buf_ptr,ch_size,elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - edx = td->elements_count; - break; /* Phase out */ - } - break; - } - if(edx != td->elements_count) - continue; - - /* It is expected extension */ - if(specs->ext_start != -1) { - ASN_DEBUG("Got anticipated extension"); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - ctx->phase = 3; /* Terminating */ - } else { - ctx->left = 1; - ctx->phase = 4; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" - " (ph=%d, tag=%s)", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - td->name, ctx->phase, xml_tag); - break; - } - - ctx->phase = 5; /* Phase out, just in case */ - RETURN(RC_FAIL); -} - - -asn_enc_rval_t -CHOICE_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_CHOICE_specifics_t *specs=(asn_CHOICE_specifics_t *)td->specifics; - asn_enc_rval_t er; - int present; - - if(!sptr) - _ASN_ENCODE_FAILED; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - if(present <= 0 || present > td->elements_count) { - _ASN_ENCODE_FAILED; - } else { - asn_enc_rval_t tmper; - asn_TYPE_member_t *elm = &td->elements[present-1]; - void *memb_ptr; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(!memb_ptr) _ASN_ENCODE_FAILED; - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - } - - er.encoded = 0; - - if(!(flags & XER_F_CANONICAL)) _i_ASN_TEXT_INDENT(1, ilevel); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = elm->type->xer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - - _ASN_CALLBACK3("", 1); - - er.encoded += 5 + (2 * mlen) + tmper.encoded; - } - - if(!(flags & XER_F_CANONICAL)) _i_ASN_TEXT_INDENT(1, ilevel - 1); - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -asn_dec_rval_t -CHOICE_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - asn_dec_rval_t rv; - asn_per_constraint_t *ct; - asn_TYPE_member_t *elm; /* CHOICE's element */ - void *memb_ptr; - void **memb_ptr2; - void *st = *sptr; - int value; - - if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) - _ASN_DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) _ASN_DECODE_FAILED; - } - - if(constraints) ct = &constraints->value; - else if(td->per_constraints) ct = &td->per_constraints->value; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - value = per_get_few_bits(pd, 1); - if(value < 0) _ASN_DECODE_STARVED; - if(value) ct = 0; /* Not restricted */ - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) _ASN_DECODE_STARVED; - ASN_DEBUG("CHOICE %s got index %d in range %d", - td->name, value, ct->range_bits); - if(value > ct->upper_bound) - _ASN_DECODE_FAILED; - } else { - if(specs->ext_start == -1) - _ASN_DECODE_FAILED; - value = uper_get_nsnnwn(pd); - if(value < 0) _ASN_DECODE_STARVED; - value += specs->ext_start; - if(value >= td->elements_count) - _ASN_DECODE_FAILED; - } - - /* Adjust if canonical order is different from natural order */ - if(specs->canonical_order) - value = specs->canonical_order[value]; - - /* Set presence to be able to free it later */ - _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); - - elm = &td->elements[value]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); - - if(ct && ct->range_bits >= 0) { - rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, - elm->per_constraints, memb_ptr2, pd); - } else { - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->per_constraints, memb_ptr2, pd); - } - - if(rv.code != RC_OK) - ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", - elm->name, td->name, rv.code); - return rv; -} - -asn_enc_rval_t -CHOICE_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE's element */ - asn_per_constraint_t *ct; - void *memb_ptr; - int present; - int present_enc; - - if(!sptr) _ASN_ENCODE_FAILED; - - ASN_DEBUG("Encoding %s as CHOICE", td->name); - - if(constraints) ct = &constraints->value; - else if(td->per_constraints) ct = &td->per_constraints->value; - else ct = 0; - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized properly, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present <= 0 || present > td->elements_count) - _ASN_ENCODE_FAILED; - else - present--; - - ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); - - /* Adjust if canonical order is different from natural order */ - if(specs->canonical_order) - present_enc = specs->canonical_order[present]; - else - present_enc = present; - - if(ct && ct->range_bits >= 0) { - if(present_enc < ct->lower_bound - || present_enc > ct->upper_bound) { - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, 1, 1)) - _ASN_ENCODE_FAILED; - } else { - _ASN_ENCODE_FAILED; - } - ct = 0; - } - } - if(ct && ct->flags & APC_EXTENSIBLE) - if(per_put_few_bits(po, 0, 1)) - _ASN_ENCODE_FAILED; - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(!memb_ptr) _ASN_ENCODE_FAILED; - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, present_enc, ct->range_bits)) - _ASN_ENCODE_FAILED; - - return elm->type->uper_encoder(elm->type, elm->per_constraints, - memb_ptr, po); - } else { - asn_enc_rval_t rval; - if(specs->ext_start == -1) - _ASN_ENCODE_FAILED; - if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) - _ASN_ENCODE_FAILED; - if(uper_open_type_put(elm->type, elm->per_constraints, - memb_ptr, po)) - _ASN_ENCODE_FAILED; - rval.encoded = 0; - _ASN_ENCODED_OK(rval); - } -} - - -int -CHOICE_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - int present; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - /* - * Print that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Print member's name and stuff */ - if(0) { - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - } - - return elm->type->print_struct(elm->type, memb_ptr, ilevel, - cb, app_key); - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -CHOICE_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { - asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; - int present; - - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as CHOICE", td->name); - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - /* - * Free that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)ptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)ptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - if(!contents_only) { - FREEMEM(ptr); - } -} - - -/* - * The following functions functions offer protection against -fshort-enums, - * compatible with little- and big-endian machines. - * If assertion is triggered, either disable -fshort-enums, or add an entry - * here with the ->pres_size of your target stracture. - * Unless the target structure is packed, the ".present" member - * is guaranteed to be aligned properly. ASN.1 compiler itself does not - * produce packed code. - */ -static int -_fetch_present_idx(const void *struct_ptr, int pres_offset, int pres_size) { - const void *present_ptr; - int present; - - present_ptr = ((const char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): present = *(const int *)present_ptr; break; - case sizeof(short): present = *(const short *)present_ptr; break; - case sizeof(char): present = *(const char *)present_ptr; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - return 0; /* If not aborted, pass back safe value */ - } - - return present; -} - -static void -_set_present_idx(void *struct_ptr, int pres_offset, int pres_size, int present) { - void *present_ptr; - present_ptr = ((char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): *(int *)present_ptr = present; break; - case sizeof(short): *(short *)present_ptr = present; break; - case sizeof(char): *(char *)present_ptr = present; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - } -} diff --git a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c deleted file mode 100644 index c405a18f0..000000000 --- a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c +++ /dev/null @@ -1,1422 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005, 2006, 2007 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ( ((memb_idx) > (specs)->ext_after) \ - &&((memb_idx) < (specs)->ext_before)) - - -/* - * Tags are canonically sorted in the tag2element map. - */ -static int -_t2e_cmp(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) { - if(a->el_no > b->el_no) - return 1; - /* - * Important: we do not check - * for a->el_no <= b->el_no! - */ - return 0; - } else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - - -/* - * The decoder of the SEQUENCE type. - */ -asn_dec_rval_t -SEQUENCE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - asn_SEQUENCE_specifics_t *specs = (asn_SEQUENCE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - int edx; /* SEQUENCE element's index */ - - ASN_DEBUG("Decoding %s as SEQUENCE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Substracted below! */ - ADVANCE(rval.consumed); - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next member from the list of - * this structure's elements. - * (ctx->step) stores the member being processed - * between invocations and the microphase {0,1} of parsing - * that member: - * step = ( * 2 + ). - */ - for(edx = (ctx->step >> 1); edx < td->elements_count; - edx++, ctx->step = (ctx->step & ~1) + 2) { - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - ssize_t tag_len; /* Length of TLV's T */ - int opt_edx_end; /* Next non-optional element */ - int use_bsearch; - int n; - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - ASN_DEBUG("In %s SEQUENCE left %d, edx=%d flags=%d" - " opt=%d ec=%d", - td->name, (int)ctx->left, edx, - elements[edx].flags, elements[edx].optional, - td->elements_count); - - if(ctx->left == 0 /* No more stuff is expected */ - && ( - /* Explicit OPTIONAL specification reaches the end */ - (edx + elements[edx].optional - == td->elements_count) - || - /* All extensions are optional */ - (IN_EXTENSION_GROUP(specs, edx) - && specs->ext_before > td->elements_count) - ) - ) { - ASN_DEBUG("End of SEQUENCE %s", td->name); - /* - * Found the legitimate end of the structure. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("Current tag in %s SEQUENCE for element %d " - "(%s) is %s encoded in %d bytes, of frame %ld", - td->name, edx, elements[edx].name, - ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - ASN_DEBUG("edx = %d, opt = %d, ec=%d", - edx, elements[edx].optional, - td->elements_count); - if((edx + elements[edx].optional - == td->elements_count) - || (IN_EXTENSION_GROUP(specs, edx) - && specs->ext_before - > td->elements_count)) { - /* - * Yeah, baby! Found the terminator - * of the indefinite length structure. - */ - /* - * Proceed to the canonical - * finalization function. - * No advancing is necessary. - */ - goto phase3; - } - } - } - - /* - * Find the next available type with this tag. - */ - use_bsearch = 0; - opt_edx_end = edx + elements[edx].optional + 1; - if(opt_edx_end > td->elements_count) - opt_edx_end = td->elements_count; /* Cap */ - else if(opt_edx_end - edx > 8) { - /* Limit the scope of linear search... */ - opt_edx_end = edx + 8; - use_bsearch = 1; - /* ... and resort to bsearch() */ - } - for(n = edx; n < opt_edx_end; n++) { - if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { - /* - * Found element corresponding to the tag - * being looked at. - * Reposition over the right element. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].flags & ATF_OPEN_TYPE) { - /* - * This is the ANY type, which may bear - * any flag whatsoever. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].tag == (ber_tlv_tag_t)-1) { - use_bsearch = 1; - break; - } - } - if(use_bsearch) { - /* - * Resort to a binary search over - * sorted array of tags. - */ - asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key; - key.el_tag = tlv_tag; - key.el_no = edx; - t2m = (asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _t2e_cmp); - if(t2m) { - asn_TYPE_tag2member_t *best = 0; - asn_TYPE_tag2member_t *t2m_f, *t2m_l; - int edx_max = edx + elements[edx].optional; - /* - * Rewind to the first element with that tag, - * `cause bsearch() does not guarantee order. - */ - t2m_f = t2m + t2m->toff_first; - t2m_l = t2m + t2m->toff_last; - for(t2m = t2m_f; t2m <= t2m_l; t2m++) { - if(t2m->el_no > edx_max) break; - if(t2m->el_no < edx) continue; - best = t2m; - } - if(best) { - edx = best->el_no; - ctx->step = 1 + 2 * edx; - goto microphase2; - } - } - n = opt_edx_end; - } - if(n == opt_edx_end) { - /* - * If tag is unknown, it may be either - * an unknown (thus, incorrect) tag, - * or an extension (...), - * or an end of the indefinite-length structure. - */ - if(!IN_EXTENSION_GROUP(specs, - edx + elements[edx].optional)) { - ASN_DEBUG("Unexpected tag %s (at %d)", - ber_tlv_tag_string(tlv_tag), edx); - ASN_DEBUG("Expected tag %s (%s)%s", - ber_tlv_tag_string(elements[edx].tag), - elements[edx].name, - elements[edx].optional - ?" or alternatives":""); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - edx += elements[edx].optional; - - ASN_DEBUG("Skipping unexpected %s (at %d)", - ber_tlv_tag_string(tlv_tag), edx); - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - ASN_DEBUG("Skip length %d in %s", - (int)skip, td->name); - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - ctx->step -= 2; - edx--; - continue; /* Try again with the next tag */ - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elements[edx].flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elements[edx].memb_offset; - memb_ptr2 = &memb_ptr; - } - /* - * Invoke the member fetch routine according to member's type - */ - rval = elements[edx].type->ber_decoder(opt_codec_ctx, - elements[edx].type, - memb_ptr2, ptr, LEFT, - elements[edx].tag_mode); - ASN_DEBUG("In %s SEQUENCE decoded %d %s of %d " - "in %d bytes rval.code %d, size=%d", - td->name, edx, elements[edx].type->name, - (int)LEFT, (int)rval.consumed, rval.code, (int)size); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", - (long)ctx->left, (long)size); - /* Fall through */ - case RC_FAIL: /* Fatal error */ - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all structure members) */ - - phase3: - ctx->phase = 3; - case 3: /* 00 and other tags expected */ - case 4: /* only 00's expected */ - - ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", - td->name, (long)ctx->left, (long)size); - - /* - * Skip everything until the end of the SEQUENCE. - */ - while(ctx->left) { - ssize_t tl, ll; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * If expected <0><0>... - */ - if(ctx->left < 0 - && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - ctx->phase = 4; - continue; - } - } - - if(!IN_EXTENSION_GROUP(specs, td->elements_count) - || ctx->phase == 4) { - ASN_DEBUG("Unexpected continuation " - "of a non-extensible type " - "%s (SEQUENCE): %s", - td->name, - ber_tlv_tag_string(tlv_tag)); - RETURN(RC_FAIL); - } - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tl, LEFT - tl); - switch(ll) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(tl + ll); - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - - -/* - * The DER encoder of the SEQUENCE type. - */ -asn_enc_rval_t -SEQUENCE_encode_der(asn_TYPE_descriptor_t *td, - void *sptr, int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t computed_size = 0; - asn_enc_rval_t erval; - ssize_t ret; - int edx; - - ASN_DEBUG("%s %s as SEQUENCE", - cb?"Encoding":"Estimating", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) continue; - /* Mandatory element is missing */ - _ASN_ENCODE_FAILED; - } - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - } - erval = elm->type->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - ASN_DEBUG("Member %d %s estimated %ld bytes", - edx, elm->name, (long)erval.encoded); - } - - /* - * Encode the TLV for the sequence itself. - */ - ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); - ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); - if(ret == -1) - _ASN_ENCODE_FAILED; - erval.encoded = computed_size + ret; - - if(!cb) _ASN_ENCODED_OK(erval); - - /* - * Encode all members. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - asn_enc_rval_t tmperval; - void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(!memb_ptr) continue; - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - } - tmperval = elm->type->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, - cb, app_key); - if(tmperval.encoded == -1) - return tmperval; - computed_size -= tmperval.encoded; - ASN_DEBUG("Member %d %s of SEQUENCE %s encoded in %ld bytes", - edx, elm->name, td->name, (long)tmperval.encoded); - } - - if(computed_size != 0) - /* - * Encoded size is not equal to the computed size. - */ - _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(erval); -} - - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - buf_ptr = ((const char *)buf_ptr) + num;\ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SEQUENCE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - asn_SEQUENCE_specifics_t *specs - = (asn_SEQUENCE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - int edx; /* Element index */ - int edx_end; - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Skipping unknown extensions. - * Phase 4: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 3;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - int n; - - /* - * Go inside the inner member of a sequence. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Invoke the inner type decoder, m.b. multiple times */ - tmprval = elm->type->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, elm->name, - buf_ptr, size); - XER_ADVANCE(tmprval.consumed); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - ctx->phase = 1; /* Back to body processing */ - ctx->step = ++edx; - ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", - ctx->phase, ctx->step); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, - &ch_type); - switch(ch_size) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - default: - switch(ch_type) { - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", - tcv, ctx->phase, xml_tag); - - /* Skip the extensions section */ - if(ctx->phase == 3) { - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 4; - RETURN(RC_FAIL); - case 0: - XER_ADVANCE(ch_size); - continue; - case 1: - XER_ADVANCE(ch_size); - ctx->phase = 1; - continue; - case 2: - ctx->phase = 1; - break; - } - } - - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - if(edx >= td->elements_count - || - /* Explicit OPTIONAL specs reaches the end */ - (edx + elements[edx].optional - == td->elements_count) - || - /* All extensions are optional */ - (IN_EXTENSION_GROUP(specs, edx) - && specs->ext_before - > td->elements_count) - ) { - XER_ADVANCE(ch_size); - ctx->phase = 4; /* Phase out */ - RETURN(RC_OK); - } else { - ASN_DEBUG("Premature end of XER SEQUENCE"); - RETURN(RC_FAIL); - } - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%d", - tcv, ctx->phase, edx); - if(ctx->phase != 1) { - break; /* Really unexpected */ - } - - if(edx < td->elements_count) { - /* - * Search which member corresponds to this tag. - */ - edx_end = edx + elements[edx].optional + 1; - if(edx_end > td->elements_count) - edx_end = td->elements_count; - for(n = edx; n < edx_end; n++) { - elm = &td->elements[n]; - tcv = xer_check_tag(buf_ptr, - ch_size, elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx = n; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - n = edx_end; - break; /* Phase out */ - } - break; - } - if(n != edx_end) - continue; - } else { - ASN_DEBUG("Out of defined members: %d/%d", - edx, td->elements_count); - } - - /* It is expected extension */ - if(IN_EXTENSION_GROUP(specs, - edx + (edx < td->elements_count - ? elements[edx].optional : 0))) { - ASN_DEBUG("Got anticipated extension at %d", - edx); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - } else { - ctx->left = 1; - ctx->phase = 3; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", - size>0?((const char *)buf_ptr)[0]:'.', - size>1?((const char *)buf_ptr)[1]:'.', - size>2?((const char *)buf_ptr)[2]:'.', - size>3?((const char *)buf_ptr)[3]:'.', - size>4?((const char *)buf_ptr)[4]:'.', - size>5?((const char *)buf_ptr)[5]:'.'); - break; - } - - ctx->phase = 4; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - -asn_enc_rval_t -SEQUENCE_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er; - int xcan = (flags & XER_F_CANONICAL); - int edx; - - if(!sptr) - _ASN_ENCODE_FAILED; - - er.encoded = 0; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_enc_rval_t tmper; - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - continue; - /* Mandatory element is missing */ - _ASN_ENCODE_FAILED; - } - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - } - - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); - - /* Print the member itself */ - tmper = elm->type->xer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - - _ASN_CALLBACK3("", 1); - er.encoded += 5 + (2 * mlen) + tmper.encoded; - } - - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -int -SEQUENCE_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - int edx; - int ret; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) continue; - /* Print line */ - /* Fall through */ - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Indentation */ - _i_INDENT(1); - - /* Print the member's name and stuff */ - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - - /* Print the member itself */ - ret = elm->type->print_struct(elm->type, memb_ptr, ilevel + 1, - cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} - -void -SEQUENCE_free(asn_TYPE_descriptor_t *td, void *sptr, int contents_only) { - int edx; - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as SEQUENCE", td->name); - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - if(!contents_only) { - FREEMEM(sptr); - } -} - -int -SEQUENCE_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - int edx; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Iterate over structure members and check their validity. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - continue; - _ASN_CTFAIL(app_key, td, sptr, - "%s: mandatory element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(elm->memb_constraints) { - int ret = elm->memb_constraints(elm->type, memb_ptr, - ctfailcb, app_key); - if(ret) return ret; - } else { - int ret = elm->type->check_constraints(elm->type, - memb_ptr, ctfailcb, app_key); - if(ret) return ret; - /* - * Cannot inherit it earlier: - * need to make sure we get the updated version. - */ - elm->memb_constraints = elm->type->check_constraints; - } - } - - return 0; -} - -asn_dec_rval_t -SEQUENCE_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_SEQUENCE_specifics_t *specs = (asn_SEQUENCE_specifics_t *)td->specifics; - void *st = *sptr; /* Target structure. */ - int extpresent; /* Extension additions are present */ - uint8_t *opres; /* Presence of optional root members */ - asn_per_data_t opmd; - asn_dec_rval_t rv; - int edx; - - (void)constraints; - - if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) - _ASN_DECODE_FAILED; - - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) _ASN_DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); - - /* Handle extensions */ - if(specs->ext_before >= 0) { - extpresent = per_get_few_bits(pd, 1); - if(extpresent < 0) _ASN_DECODE_STARVED; - } else { - extpresent = 0; - } - - /* Prepare a place and read-in the presence bitmap */ - memset(&opmd, 0, sizeof(opmd)); - if(specs->roms_count) { - opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); - if(!opres) _ASN_DECODE_FAILED; - /* Get the presence map */ - if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { - FREEMEM(opres); - _ASN_DECODE_STARVED; - } - opmd.buffer = opres; - opmd.nbits = specs->roms_count; - ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", - td->name, specs->roms_count, *opres); - } else { - opres = 0; - } - - /* - * Get the sequence ROOT elements. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Deal with optionality */ - if(elm->optional) { - int present = per_get_few_bits(&opmd, 1); - ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", - td->name, elm->name, present, - (int)opmd.nboff, (int)opmd.nbits); - if(present == 0) { - /* This element is not present */ - if(elm->default_value) { - /* Fill-in DEFAULT */ - if(elm->default_value(1, memb_ptr2)) { - FREEMEM(opres); - _ASN_DECODE_FAILED; - } - ASN_DEBUG("Filled-in default"); - } - /* The member is just not present */ - continue; - } - /* Fall through */ - } - - /* Fetch the member from the stream */ - ASN_DEBUG("Decoding member %s in %s", elm->name, td->name); - rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, - elm->per_constraints, memb_ptr2, pd); - if(rv.code != RC_OK) { - ASN_DEBUG("Failed decode %s in %s", - elm->name, td->name); - FREEMEM(opres); - return rv; - } - } - - /* Optionality map is not needed anymore */ - FREEMEM(opres); - - /* - * Deal with extensions. - */ - if(extpresent) { - ssize_t bmlength; - uint8_t *epres; /* Presence of extension members */ - asn_per_data_t epmd; - - bmlength = uper_get_nslength(pd); - if(bmlength < 0) _ASN_DECODE_STARVED; - - ASN_DEBUG("Extensions %ld present in %s", (long)bmlength, td->name); - - epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); - if(!epres) _ASN_DECODE_STARVED; - - /* Get the extensions map */ - if(per_get_many_bits(pd, epres, 0, bmlength)) - _ASN_DECODE_STARVED; - - memset(&epmd, 0, sizeof(epmd)); - epmd.buffer = epres; - epmd.nbits = bmlength; - ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", - td->name, (long)bmlength, *epres); - - /* Go over extensions and read them in */ - for(edx = specs->ext_after + 1; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%d is not extension", edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (void *)((char *)st + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - present = per_get_few_bits(&epmd, 1); - if(present <= 0) { - if(present < 0) break; /* No more extensions */ - continue; - } - - ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->per_constraints, memb_ptr2, pd); - if(rv.code != RC_OK) { - FREEMEM(epres); - return rv; - } - } - - /* Skip over overflow extensions which aren't present - * in this system's version of the protocol */ - for(;;) { - ASN_DEBUG("Getting overflow extensions"); - switch(per_get_few_bits(&epmd, 1)) { - case -1: break; - case 0: continue; - default: - if(uper_open_type_skip(opt_codec_ctx, pd)) { - FREEMEM(epres); - _ASN_DECODE_STARVED; - } - } - break; - } - - FREEMEM(epres); - } - - /* Fill DEFAULT members in extensions */ - for(edx = specs->roms_count; edx < specs->roms_count - + specs->aoms_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void **memb_ptr2; /* Pointer to member pointer */ - - if(!elm->default_value) continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st - + elm->memb_offset); - if(*memb_ptr2) continue; - } else { - continue; /* Extensions are all optionals */ - } - - /* Set default value */ - if(elm->default_value(1, memb_ptr2)) { - _ASN_DECODE_FAILED; - } - } - - rv.consumed = 0; - rv.code = RC_OK; - return rv; -} - -static int -SEQUENCE_handle_extensions(asn_TYPE_descriptor_t *td, void *sptr, - asn_per_outp_t *po1, asn_per_outp_t *po2) { - asn_SEQUENCE_specifics_t *specs - = (asn_SEQUENCE_specifics_t *)td->specifics; - int exts_present = 0; - int exts_count = 0; - int edx; - - if(specs->ext_before < 0) - return 0; - - /* Find out which extensions are present */ - for(edx = specs->ext_after + 1; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%s (@%d) is not extension", elm->type->name, edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - ASN_DEBUG("checking %s (@%d) present => %d", - elm->type->name, edx, present); - exts_count++; - exts_present += present; - - /* Encode as presence marker */ - if(po1 && per_put_few_bits(po1, present, 1)) - return -1; - /* Encode as open type field */ - if(po2 && present && uper_open_type_put(elm->type, - elm->per_constraints, *memb_ptr2, po2)) - return -1; - - } - - return exts_present ? exts_count : 0; -} - -asn_enc_rval_t -SEQUENCE_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_SEQUENCE_specifics_t *specs - = (asn_SEQUENCE_specifics_t *)td->specifics; - asn_enc_rval_t er; - int n_extensions; - int edx; - int i; - - (void)constraints; - - if(!sptr) - _ASN_ENCODE_FAILED; - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); - - - /* - * X.691#18.1 Whether structure is extensible - * and whether to encode extensions - */ - if(specs->ext_before >= 0) { - n_extensions = SEQUENCE_handle_extensions(td, sptr, 0, 0); - per_put_few_bits(po, n_extensions ? 1 : 0, 1); - } else { - n_extensions = 0; /* There are no extensions to encode */ - } - - /* Encode a presence bitmap */ - for(i = 0; i < specs->roms_count; i++) { - asn_TYPE_member_t *elm; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - /* Eliminate default values */ - if(present && elm->default_value - && elm->default_value(0, memb_ptr2) == 1) - present = 0; - - ASN_DEBUG("Element %s %s %s->%s is %s", - elm->flags & ATF_POINTER ? "ptr" : "inline", - elm->default_value ? "def" : "wtv", - td->name, elm->name, present ? "present" : "absent"); - if(per_put_few_bits(po, present, 1)) - _ASN_ENCODE_FAILED; - } - - /* - * Encode the sequence ROOT elements. - */ - ASN_DEBUG("ext_after = %d, ec = %d, eb = %d", specs->ext_after, td->elements_count, specs->ext_before); - for(edx = 0; edx < ((specs->ext_after < 0) - ? td->elements_count : specs->ext_before - 1); edx++) { - - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - ASN_DEBUG("About to encode %s", elm->type->name); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %d not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - _ASN_ENCODE_FAILED; - } - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value && elm->default_value(0, memb_ptr2) == 1) - continue; - - ASN_DEBUG("Encoding %s->%s", td->name, elm->name); - er = elm->type->uper_encoder(elm->type, elm->per_constraints, - *memb_ptr2, po); - if(er.encoded == -1) - return er; - } - - /* No extensions to encode */ - if(!n_extensions) _ASN_ENCODED_OK(er); - - ASN_DEBUG("Length of %d bit-map", n_extensions); - /* #18.8. Write down the presence bit-map length. */ - if(uper_put_nslength(po, n_extensions)) - _ASN_ENCODE_FAILED; - - ASN_DEBUG("Bit-map of %d elements", n_extensions); - /* #18.7. Encoding the extensions presence bit-map. */ - /* TODO: act upon NOTE in #18.7 for canonical PER */ - if(SEQUENCE_handle_extensions(td, sptr, po, 0) != n_extensions) - _ASN_ENCODE_FAILED; - - ASN_DEBUG("Writing %d extensions", n_extensions); - /* #18.9. Encode extensions as open type fields. */ - if(SEQUENCE_handle_extensions(td, sptr, 0, po) != n_extensions) - _ASN_ENCODE_FAILED; - - _ASN_ENCODED_OK(er); -} - diff --git a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c deleted file mode 100644 index aa101176d..000000000 --- a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c +++ /dev/null @@ -1,208 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The DER encoder of the SEQUENCE OF type. - */ -asn_enc_rval_t -SEQUENCE_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_sequence_ *list = _A_SEQUENCE_FROM_VOID(ptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - asn_enc_rval_t erval; - int edx; - - ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - } - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, - cb, app_key); - if(encoding_size == -1) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - - computed_size += encoding_size; - if(!cb) { - erval.encoded = computed_size; - _ASN_ENCODED_OK(erval); - } - - ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - cb, app_key); - if(erval.encoded == -1) - return erval; - encoding_size += erval.encoded; - } - - if(computed_size != (size_t)encoding_size) { - /* - * Encoded size is not equal to the computed size. - */ - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - } else { - erval.encoded = computed_size; - erval.structure_ptr = 0; - erval.failed_type = 0; - } - - return erval; -} - -asn_enc_rval_t -SEQUENCE_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er; - asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_sequence_ *list = _A_SEQUENCE_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); - unsigned int mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - int i; - - if(!sptr) _ASN_ENCODE_FAILED; - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper; - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(mname) { - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - tmper = elm->type->xer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel + 1); - _ASN_CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - _ASN_CALLBACK3("", 1); - er.encoded += 5; - } - - er.encoded += (2 * mlen) + tmper.encoded; - } - - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -asn_enc_rval_t -SEQUENCE_OF_encode_uper(asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - asn_anonymous_sequence_ *list; - asn_per_constraint_t *ct; - asn_enc_rval_t er; - asn_TYPE_member_t *elm = td->elements; - int seq; - - if(!sptr) _ASN_ENCODE_FAILED; - list = _A_SEQUENCE_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->per_constraints) ct = &td->per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = (list->count < ct->lower_bound - || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", - ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) - _ASN_ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) - _ASN_ENCODE_FAILED; - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - _ASN_ENCODE_FAILED; - } - - for(seq = -1; seq < list->count;) { - ssize_t mayEncode; - if(seq < 0) seq = 0; - if(ct && ct->effective_bits >= 0) { - mayEncode = list->count; - } else { - mayEncode = uper_put_length(po, list->count - seq); - if(mayEncode < 0) _ASN_ENCODE_FAILED; - } - - while(mayEncode--) { - void *memb_ptr = list->array[seq++]; - if(!memb_ptr) _ASN_ENCODE_FAILED; - er = elm->type->uper_encoder(elm->type, - elm->per_constraints, memb_ptr, po); - if(er.encoded == -1) - _ASN_ENCODE_FAILED; - } - } - - _ASN_ENCODED_OK(er); -} - diff --git a/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c b/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c deleted file mode 100644 index b68d7ca1b..000000000 --- a/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c +++ /dev/null @@ -1,953 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num;\ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * The decoder of the SET OF type. - */ -asn_dec_rval_t -SET_OF_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; - asn_TYPE_member_t *elm = td->elements; /* Single one */ - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as SET OF", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Substracted below! */ - ADVANCE(rval.consumed); - - ASN_DEBUG("Structure consumes %ld bytes, " - "buffer %ld", (long)ctx->left, (long)size); - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next item. - */ - for(;; ctx->step = 0) { - ssize_t tag_len; /* Length of TLV's T */ - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - - if(ctx->left == 0) { - ASN_DEBUG("End of SET OF %s", td->name); - /* - * No more things to decode. - * Exit out of here. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Found the terminator of the - * indefinite length structure. - */ - break; - } - } - - /* Outmost tag may be unknown and cannot be fetched/compared */ - if(elm->tag != (ber_tlv_tag_t)-1) { - if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { - /* - * The new list member of expected type has arrived. - */ - } else { - ASN_DEBUG("Unexpected tag %s fixed SET OF %s", - ber_tlv_tag_string(tlv_tag), td->name); - ASN_DEBUG("%s SET OF has tag %s", - td->name, ber_tlv_tag_string(elm->tag)); - RETURN(RC_FAIL); - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->ber_decoder(opt_codec_ctx, - elm->type, &ctx->ptr, ptr, LEFT, 0); - ASN_DEBUG("In %s SET OF %s code %d consumed %d", - td->name, elm->type->name, - rval.code, (int)rval.consumed); - switch(rval.code) { - case RC_OK: - { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - else - ctx->ptr = 0; - } - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - /* Fall through */ - case RC_FAIL: /* Fatal error */ - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all list members) */ - - NEXT_PHASE(ctx); - case 2: - /* - * Read in all "end of content" TLVs. - */ - while(ctx->left < 0) { - if(LEFT < 2) { - if(LEFT > 0 && ((const char *)ptr)[0] != 0) { - /* Unexpected tag */ - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - } - if(((const char *)ptr)[0] == 0 - && ((const char *)ptr)[1] == 0) { - ADVANCE(2); - ctx->left++; - } else { - RETURN(RC_FAIL); - } - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - -/* - * Internally visible buffer holding a single encoded element. - */ -struct _el_buffer { - uint8_t *buf; - size_t length; - size_t size; -}; -/* Append bytes to the above structure */ -static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { - struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; - - if(el_buf->length + size > el_buf->size) - return -1; - - memcpy(el_buf->buf + el_buf->length, buffer, size); - - el_buf->length += size; - return 0; -} -static int _el_buf_cmp(const void *ap, const void *bp) { - const struct _el_buffer *a = (const struct _el_buffer *)ap; - const struct _el_buffer *b = (const struct _el_buffer *)bp; - int ret; - size_t common_len; - - if(a->length < b->length) - common_len = a->length; - else - common_len = b->length; - - ret = memcmp(a->buf, b->buf, common_len); - if(ret == 0) { - if(a->length < b->length) - ret = -1; - else if(a->length > b->length) - ret = 1; - } - - return ret; -} - -/* - * The DER encoder of the SET OF type. - */ -asn_enc_rval_t -SET_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - asn_TYPE_descriptor_t *elm_type = elm->type; - der_type_encoder_f *der_encoder = elm_type->der_encoder; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - struct _el_buffer *encoded_els; - ssize_t eels_count = 0; - size_t max_encoded_len = 1; - asn_enc_rval_t erval; - int ret; - int edx; - - ASN_DEBUG("Estimating size for SET OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = der_encoder(elm_type, memb_ptr, 0, elm->tag, 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - - /* Compute maximum encoding's size */ - if(max_encoded_len < (size_t)erval.encoded) - max_encoded_len = erval.encoded; - } - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, - cb, app_key); - if(encoding_size == -1) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - computed_size += encoding_size; - - if(!cb || list->count == 0) { - erval.encoded = computed_size; - _ASN_ENCODED_OK(erval); - } - - /* - * DER mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the - * encoded elements. - */ - encoded_els = (struct _el_buffer *)MALLOC( - list->count * sizeof(encoded_els[0])); - if(encoded_els == NULL) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - - ASN_DEBUG("Encoding members of %s SET OF", td->name); - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - struct _el_buffer *encoded_el = &encoded_els[eels_count]; - - if(!memb_ptr) continue; - - /* - * Prepare space for encoding. - */ - encoded_el->buf = (uint8_t *)MALLOC(max_encoded_len); - if(encoded_el->buf) { - encoded_el->length = 0; - encoded_el->size = max_encoded_len; - } else { - for(edx--; edx >= 0; edx--) - FREEMEM(encoded_els[edx].buf); - FREEMEM(encoded_els); - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - - /* - * Encode the member into the prepared space. - */ - erval = der_encoder(elm_type, memb_ptr, 0, elm->tag, - _el_addbytes, encoded_el); - if(erval.encoded == -1) { - for(; edx >= 0; edx--) - FREEMEM(encoded_els[edx].buf); - FREEMEM(encoded_els); - return erval; - } - encoding_size += erval.encoded; - eels_count++; - } - - /* - * Sort the encoded elements according to their encoding. - */ - qsort(encoded_els, eels_count, sizeof(encoded_els[0]), _el_buf_cmp); - - /* - * Report encoded elements to the application. - * Dispose of temporary sorted members table. - */ - ret = 0; - for(edx = 0; edx < eels_count; edx++) { - struct _el_buffer *encoded_el = &encoded_els[edx]; - /* Report encoded chunks to the application */ - if(ret == 0 - && cb(encoded_el->buf, encoded_el->length, app_key) < 0) - ret = -1; - FREEMEM(encoded_el->buf); - } - FREEMEM(encoded_els); - - if(ret || computed_size != (size_t)encoding_size) { - /* - * Standard callback failed, or - * encoded size is not equal to the computed size. - */ - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - } else { - erval.encoded = computed_size; - } - - _ASN_ENCODED_OK(erval); -} - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - buf_ptr = ((const char *)buf_ptr) + num;\ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SET_OF_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const char *opt_mname, - const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; - asn_TYPE_member_t *element = td->elements; - const char *elm_tag; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* Which tag is expected for the downstream */ - if(specs->as_XMLValueList) { - elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; - } else { - elm_tag = (*element->name) - ? element->name : element->type->xml_tag; - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - */ - for(; ctx->phase <= 2;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Go inside the inner member of a set. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - - /* Invoke the inner type decoder, m.b. multiple times */ - ASN_DEBUG("XER/SET OF element [%s]", elm_tag); - tmprval = element->type->xer_decoder(opt_codec_ctx, - element->type, &ctx->ptr, elm_tag, - buf_ptr, size); - if(tmprval.code == RC_OK) { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - ctx->ptr = 0; - XER_ADVANCE(tmprval.consumed); - } else { - XER_ADVANCE(tmprval.consumed); - RETURN(tmprval.code); - } - ctx->phase = 1; /* Back to body processing */ - ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, - buf_ptr, size, &ch_type); - switch(ch_size) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - default: - switch(ch_type) { - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", - tcv, ctx->phase, xml_tag); - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - /* No more things to decode */ - XER_ADVANCE(ch_size); - ctx->phase = 3; /* Phase out */ - RETURN(RC_OK); - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); - if(ctx->phase == 1) { - /* - * Process a single possible member. - */ - ctx->phase = 2; - continue; - } - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SET OF"); - break; - } - - ctx->phase = 3; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - - - -typedef struct xer_tmp_enc_s { - void *buffer; - size_t offset; - size_t size; -} xer_tmp_enc_t; -static int -SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { - xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; - if(t->offset + size >= t->size) { - size_t newsize = (t->size << 2) + size; - void *p = REALLOC(t->buffer, newsize); - if(!p) return -1; - t->buffer = p; - t->size = newsize; - } - memcpy((char *)t->buffer + t->offset, buffer, size); - t->offset += size; - return 0; -} -static int -SET_OF_xer_order(const void *aptr, const void *bptr) { - const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; - const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; - size_t minlen = a->offset; - int ret; - if(b->offset < minlen) minlen = b->offset; - /* Well-formed UTF-8 has this nice lexicographical property... */ - ret = memcmp(a->buffer, b->buffer, minlen); - if(ret != 0) return ret; - if(a->offset == b->offset) - return 0; - if(a->offset == minlen) - return -1; - return 1; -} - - -asn_enc_rval_t -SET_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er; - asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - xer_tmp_enc_t *encs = 0; - size_t encs_count = 0; - void *original_app_key = app_key; - asn_app_consume_bytes_f *original_cb = cb; - int i; - - if(!sptr) _ASN_ENCODE_FAILED; - - if(xcan) { - encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); - if(!encs) _ASN_ENCODE_FAILED; - cb = SET_OF_encode_xer_callback; - } - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper; - - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(encs) { - memset(&encs[encs_count], 0, sizeof(encs[0])); - app_key = &encs[encs_count]; - encs_count++; - } - - if(mname) { - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - if(!xcan && specs->as_XMLValueList == 1) - _i_ASN_TEXT_INDENT(1, ilevel + 1); - tmper = elm->type->xer_encoder(elm->type, memb_ptr, - ilevel + (specs->as_XMLValueList != 2), - flags, cb, app_key); - if(tmper.encoded == -1) { - td = tmper.failed_type; - sptr = tmper.structure_ptr; - goto cb_failed; - } - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - _ASN_CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - _ASN_CALLBACK3("", 1); - er.encoded += 5; - } - - er.encoded += (2 * mlen) + tmper.encoded; - } - - if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); - - if(encs) { - xer_tmp_enc_t *enc = encs; - xer_tmp_enc_t *end = encs + encs_count; - ssize_t control_size = 0; - - cb = original_cb; - app_key = original_app_key; - qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); - - for(; enc < end; enc++) { - _ASN_CALLBACK(enc->buffer, enc->offset); - FREEMEM(enc->buffer); - enc->buffer = 0; - control_size += enc->offset; - } - assert(control_size == er.encoded); - } - - goto cleanup; -cb_failed: - er.encoded = -1; - er.failed_type = td; - er.structure_ptr = sptr; -cleanup: - if(encs) { - while(encs_count-- > 0) { - if(encs[encs_count].buffer) - FREEMEM(encs[encs_count].buffer); - } - FREEMEM(encs); - } - _ASN_ENCODED_OK(er); -} - -int -SET_OF_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int ret; - int i; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - _i_INDENT(1); - - ret = elm->type->print_struct(elm->type, memb_ptr, - ilevel + 1, cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} - -void -SET_OF_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { - if(td && ptr) { - asn_SET_OF_specifics_t *specs; - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); - asn_struct_ctx_t *ctx; /* Decoder context */ - int i; - - /* - * Could not use set_of_empty() because of (*free) - * incompatibility. - */ - for(i = 0; i < list->count; i++) { - void *memb_ptr = list->array[i]; - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } - list->count = 0; /* No meaningful elements left */ - - asn_set_empty(list); /* Remove (list->array) */ - - specs = (asn_SET_OF_specifics_t *)td->specifics; - ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); - if(ctx->ptr) { - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - } - - if(!contents_only) { - FREEMEM(ptr); - } - } -} - -int -SET_OF_constraint(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - asn_constr_check_f *constr; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int i; - - if(!sptr) { - _ASN_CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - constr = elm->memb_constraints; - if(!constr) constr = elm->type->check_constraints; - - /* - * Iterate over the members of an array. - * Validate each in turn, until one fails. - */ - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - int ret; - - if(!memb_ptr) continue; - - ret = constr(elm->type, memb_ptr, ctfailcb, app_key); - if(ret) return ret; - } - - /* - * Cannot inherit it eralier: - * need to make sure we get the updated version. - */ - if(!elm->memb_constraints) - elm->memb_constraints = elm->type->check_constraints; - - return 0; -} - -asn_dec_rval_t -SET_OF_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; - asn_TYPE_member_t *elm = td->elements; /* Single one */ - void *st = *sptr; - asn_anonymous_set_ *list; - asn_per_constraint_t *ct; - int repeat = 0; - ssize_t nelems; - - if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) - _ASN_DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) _ASN_DECODE_FAILED; - } - list = _A_SET_FROM_VOID(st); - - /* Figure out which constraints to use */ - if(constraints) ct = &constraints->size; - else if(td->per_constraints) ct = &td->per_constraints->size; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int value = per_get_few_bits(pd, 1); - if(value < 0) _ASN_DECODE_STARVED; - if(value) ct = 0; /* Not restricted! */ - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - nelems = per_get_few_bits(pd, ct->effective_bits); - ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", - (long)nelems, ct->lower_bound, td->name); - if(nelems < 0) _ASN_DECODE_STARVED; - nelems += ct->lower_bound; - } else { - nelems = -1; - } - - do { - int i; - if(nelems < 0) { - nelems = uper_get_length(pd, - ct ? ct->effective_bits : -1, &repeat); - ASN_DEBUG("Got to decode %d elements (eff %d)", - (int)nelems, (int)(ct ? ct->effective_bits : -1)); - if(nelems < 0) _ASN_DECODE_STARVED; - } - - for(i = 0; i < nelems; i++) { - void *ptr = 0; - ASN_DEBUG("SET OF %s decoding", elm->type->name); - rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, - elm->per_constraints, &ptr, pd); - ASN_DEBUG("%s SET OF %s decoded %d, %p", - td->name, elm->type->name, rv.code, ptr); - if(rv.code == RC_OK) { - if(ASN_SET_ADD(list, ptr) == 0) - continue; - ASN_DEBUG("Failed to add element into %s", - td->name); - /* Fall through */ - rv.code = RC_FAIL; - } else { - ASN_DEBUG("Failed decoding %s of %s (SET OF)", - elm->type->name, td->name); - } - if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); - return rv; - } - - nelems = -1; /* Allow uper_get_length() */ - } while(repeat); - - ASN_DEBUG("Decoded %s as SET OF", td->name); - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - diff --git a/src/tmx/Asn_J2735/src/r41/constr_TYPE.c b/src/tmx/Asn_J2735/src/r41/constr_TYPE.c deleted file mode 100644 index 4bc88d44f..000000000 --- a/src/tmx/Asn_J2735/src/r41/constr_TYPE.c +++ /dev/null @@ -1,77 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Version of the ASN.1 infrastructure shipped with compiler. - */ -int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } - -static asn_app_consume_bytes_f _print2fp; - -/* - * Return the outmost tag of the type. - */ -ber_tlv_tag_t -asn_TYPE_outmost_tag(asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { - - if(tag_mode) - return tag; - - if(type_descriptor->tags_count) - return type_descriptor->tags[0]; - - return type_descriptor->outmost_tag(type_descriptor, struct_ptr, 0, 0); -} - -/* - * Print the target language's structure in human readable form. - */ -int -asn_fprint(FILE *stream, asn_TYPE_descriptor_t *td, const void *struct_ptr) { - if(!stream) stream = stdout; - if(!td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - /* Invoke type-specific printer */ - if(td->print_struct(td, struct_ptr, 1, _print2fp, stream)) - return -1; - - /* Terminate the output */ - if(_print2fp("\n", 1, stream)) - return -1; - - return fflush(stream); -} - -/* Dump the data into the specified stdio stream */ -static int -_print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - - -/* - * Some compilers do not support variable args macros. - * This function is a replacement of ASN_DEBUG() macro. - */ -void ASN_DEBUG_f(const char *fmt, ...); -void ASN_DEBUG_f(const char *fmt, ...) { - va_list ap; - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - fprintf(stderr, "\n"); - va_end(ap); -} diff --git a/src/tmx/Asn_J2735/src/r41/constraints.c b/src/tmx/Asn_J2735/src/r41/constraints.c deleted file mode 100644 index 1bdda73e5..000000000 --- a/src/tmx/Asn_J2735/src/r41/constraints.c +++ /dev/null @@ -1,93 +0,0 @@ -#include "asn_internal.h" -#include "constraints.h" - -int -asn_generic_no_constraint(asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, asn_app_constraint_failed_f *cb, void *key) { - - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Nothing to check */ - return 0; -} - -int -asn_generic_unknown_constraint(asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, asn_app_constraint_failed_f *cb, void *key) { - - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Unknown how to check */ - return 0; -} - -struct errbufDesc { - asn_TYPE_descriptor_t *failed_type; - const void *failed_struct_ptr; - char *errbuf; - size_t errlen; -}; - -static void -_asn_i_ctfailcb(void *key, asn_TYPE_descriptor_t *td, const void *sptr, const char *fmt, ...) { - struct errbufDesc *arg = key; - va_list ap; - ssize_t vlen; - ssize_t maxlen; - - arg->failed_type = td; - arg->failed_struct_ptr = sptr; - - maxlen = arg->errlen; - if(maxlen <= 0) - return; - - va_start(ap, fmt); - vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); - va_end(ap); - if(vlen >= maxlen) { - arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ - arg->errlen = maxlen - 1; /* Not counting termination */ - return; - } else if(vlen >= 0) { - arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ - arg->errlen = vlen; /* Not counting termination */ - } else { - /* - * The libc on this system is broken. - */ - vlen = sizeof("") - 1; - maxlen--; - arg->errlen = vlen < maxlen ? vlen : maxlen; - memcpy(arg->errbuf, "", arg->errlen); - arg->errbuf[arg->errlen] = 0; - } - - return; -} - -int -asn_check_constraints(asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, char *errbuf, size_t *errlen) { - struct errbufDesc arg; - int ret; - - arg.failed_type = 0; - arg.failed_struct_ptr = 0; - arg.errbuf = errbuf; - arg.errlen = errlen ? *errlen : 0; - - ret = type_descriptor->check_constraints(type_descriptor, - struct_ptr, _asn_i_ctfailcb, &arg); - if(ret == -1 && errlen) - *errlen = arg.errlen; - - return ret; -} - diff --git a/src/tmx/Asn_J2735/src/r41/der_encoder.c b/src/tmx/Asn_J2735/src/r41/der_encoder.c deleted file mode 100644 index 6c859e1b0..000000000 --- a/src/tmx/Asn_J2735/src/r41/der_encoder.c +++ /dev/null @@ -1,199 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, int constructed); - -/* - * The DER encoder of any type. - */ -asn_enc_rval_t -der_encode(asn_TYPE_descriptor_t *type_descriptor, void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes, void *app_key) { - - ASN_DEBUG("DER encoder invoked for %s", - type_descriptor->name); - - /* - * Invoke type-specific encoder. - */ - return type_descriptor->der_encoder(type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - 0, 0, - consume_bytes, app_key); -} - -/* - * Argument type and callback necessary for der_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -/* - * A variant of the der_encode() which encodes the data into the provided buffer - */ -asn_enc_rval_t -der_encode_to_buffer(asn_TYPE_descriptor_t *type_descriptor, void *struct_ptr, - void *buffer, size_t buffer_size) { - enc_to_buf_arg arg; - asn_enc_rval_t ec; - - arg.buffer = buffer; - arg.left = buffer_size; - - ec = type_descriptor->der_encoder(type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - 0, 0, encode_to_buffer_cb, &arg); - if(ec.encoded != -1) { - assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); - /* Return the encoded contents size */ - } - return ec; -} - - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t -der_write_tags(asn_TYPE_descriptor_t *sd, - size_t struct_length, - int tag_mode, int last_tag_form, - ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ - asn_app_consume_bytes_f *cb, - void *app_key) { - ber_tlv_tag_t *tags; /* Copy of tags stream */ - int tags_count; /* Number of tags */ - size_t overall_length; - ssize_t *lens; - int i; - - ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", - sd->name, tag_mode, sd->tags_count, - ber_tlv_tag_string(tag), - tag_mode - ?(sd->tags_count+1 - -((tag_mode == -1) && sd->tags_count)) - :sd->tags_count - ); - - if(tag_mode) { - /* - * Instead of doing shaman dance like we do in ber_check_tags(), - * allocate a small array on the stack - * and initialize it appropriately. - */ - int stag_offset; - tags = (ber_tlv_tag_t *)alloca((sd->tags_count + 1) * sizeof(ber_tlv_tag_t)); - if(!tags) { /* Can fail on !x86 */ - errno = ENOMEM; - return -1; - } - tags_count = sd->tags_count - + 1 /* EXPLICIT or IMPLICIT tag is given */ - - ((tag_mode == -1) && sd->tags_count); - /* Copy tags over */ - tags[0] = tag; - stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); - for(i = 1; i < tags_count; i++) - tags[i] = sd->tags[i + stag_offset]; - } else { - tags = sd->tags; - tags_count = sd->tags_count; - } - - /* No tags to write */ - if(tags_count == 0) - return 0; - - lens = (ssize_t *)alloca(tags_count * sizeof(lens[0])); - if(!lens) { - errno = ENOMEM; - return -1; - } - - /* - * Array of tags is initialized. - * Now, compute the size of the TLV pairs, from right to left. - */ - overall_length = struct_length; - for(i = tags_count - 1; i >= 0; --i) { - lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); - if(lens[i] == -1) return -1; - overall_length += lens[i]; - lens[i] = overall_length - lens[i]; - } - - if(!cb) return overall_length - struct_length; - - ASN_DEBUG("%s %s TL sequence (%d elements)", - cb?"Encoding":"Estimating", sd->name, tags_count); - - /* - * Encode the TL sequence for real. - */ - for(i = 0; i < tags_count; i++) { - ssize_t len; - int _constr; - - /* Check if this tag happens to be constructed */ - _constr = (last_tag_form || i < (tags_count - 1)); - - len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); - if(len == -1) return -1; - } - - return overall_length - struct_length; -} - -static ssize_t -der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, - int constructed) { - uint8_t buf[32]; - size_t size = 0; - int buf_size = cb?sizeof(buf):0; - ssize_t tmp; - - /* Serialize tag (T from TLV) into possibly zero-length buffer */ - tmp = ber_tlv_tag_serialize(tag, buf, buf_size); - if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; - size += tmp; - - /* Serialize length (L from TLV) into possibly zero-length buffer */ - tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); - if(tmp == -1) return -1; - size += tmp; - - if(size > sizeof(buf)) - return -1; - - /* - * If callback is specified, invoke it, and check its return value. - */ - if(cb) { - if(constructed) *buf |= 0x20; - if(cb(buf, size, app_key) < 0) - return -1; - } - - return size; -} diff --git a/src/tmx/Asn_J2735/src/r41/per_decoder.c b/src/tmx/Asn_J2735/src/r41/per_decoder.c deleted file mode 100644 index 220d7f9f7..000000000 --- a/src/tmx/Asn_J2735/src/r41/per_decoder.c +++ /dev/null @@ -1,93 +0,0 @@ -#include -#include -#include - -/* - * Decode a "Production of a complete encoding", X.691#10.1. - * The complete encoding contains at least one byte, and is an integral - * multiple of 8 bytes. - */ -asn_dec_rval_t -uper_decode_complete(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, size_t size) { - asn_dec_rval_t rval; - - rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); - if(rval.consumed) { - /* - * We've always given 8-aligned data, - * so convert bits to integral bytes. - */ - rval.consumed += 7; - rval.consumed >>= 3; - } else if(rval.code == RC_OK) { - if(size) { - if(((const uint8_t *)buffer)[0] == 0) { - rval.consumed = 1; /* 1 byte */ - } else { - ASN_DEBUG("Expecting single zeroed byte"); - rval.code = RC_FAIL; - } - } else { - /* Must contain at least 8 bits. */ - rval.code = RC_WMORE; - } - } - - return rval; -} - -asn_dec_rval_t -uper_decode(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, size_t size, int skip_bits, int unused_bits) { - asn_codec_ctx_t s_codec_ctx; - asn_dec_rval_t rval; - asn_per_data_t pd; - - if(skip_bits < 0 || skip_bits > 7 - || unused_bits < 0 || unused_bits > 7 - || (unused_bits > 0 && !size)) - _ASN_DECODE_FAILED; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* Fill in the position indicator */ - memset(&pd, 0, sizeof(pd)); - pd.buffer = (const uint8_t *)buffer; - pd.nboff = skip_bits; - pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ - if(pd.nboff > pd.nbits) - _ASN_DECODE_FAILED; - - /* - * Invoke type-specific decoder. - */ - if(!td->uper_decoder) - _ASN_DECODE_FAILED; /* PER is not compiled in */ - rval = td->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); - if(rval.code == RC_OK) { - /* Return the number of consumed bits */ - rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) - + pd.nboff - skip_bits; - ASN_DEBUG("PER decoding consumed %ld, counted %ld", - (long)rval.consumed, (long)pd.moved); - assert(rval.consumed == pd.moved); - } else { - /* PER codec is not a restartable */ - rval.consumed = 0; - } - return rval; -} - diff --git a/src/tmx/Asn_J2735/src/r41/per_encoder.c b/src/tmx/Asn_J2735/src/r41/per_encoder.c deleted file mode 100644 index e76ef74a9..000000000 --- a/src/tmx/Asn_J2735/src/r41/per_encoder.c +++ /dev/null @@ -1,151 +0,0 @@ -#include -#include -#include - -static asn_enc_rval_t uper_encode_internal(asn_TYPE_descriptor_t *td, asn_per_constraints_t *, void *sptr, asn_app_consume_bytes_f *cb, void *app_key); - -asn_enc_rval_t -uper_encode(asn_TYPE_descriptor_t *td, void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { - return uper_encode_internal(td, 0, sptr, cb, app_key); -} - -/* - * Argument type and callback necessary for uper_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -asn_enc_rval_t -uper_encode_to_buffer(asn_TYPE_descriptor_t *td, void *sptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg key; - - key.buffer = buffer; - key.left = buffer_size; - - if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); - - return uper_encode_internal(td, 0, sptr, encode_to_buffer_cb, &key); -} - -typedef struct enc_dyn_arg { - void *buffer; - size_t length; - size_t allocated; -} enc_dyn_arg; -static int -encode_dyn_cb(const void *buffer, size_t size, void *key) { - enc_dyn_arg *arg = key; - if(arg->length + size >= arg->allocated) { - void *p; - arg->allocated = arg->allocated ? (arg->allocated << 2) : size; - p = REALLOC(arg->buffer, arg->allocated); - if(!p) { - FREEMEM(arg->buffer); - memset(arg, 0, sizeof(*arg)); - return -1; - } - arg->buffer = p; - } - memcpy(((char *)arg->buffer) + arg->length, buffer, size); - arg->length += size; - return 0; -} -ssize_t -uper_encode_to_new_buffer(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, void **buffer_r) { - asn_enc_rval_t er; - enc_dyn_arg key; - - memset(&key, 0, sizeof(key)); - - er = uper_encode_internal(td, constraints, sptr, encode_dyn_cb, &key); - switch(er.encoded) { - case -1: - FREEMEM(key.buffer); - return -1; - case 0: - FREEMEM(key.buffer); - key.buffer = MALLOC(1); - if(key.buffer) { - *(char *)key.buffer = '\0'; - *buffer_r = key.buffer; - return 1; - } else { - return -1; - } - default: - *buffer_r = key.buffer; - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - return ((er.encoded + 7) >> 3); - } -} - -/* - * Internally useful functions. - */ - -/* Flush partially filled buffer */ -static int -_uper_encode_flush_outp(asn_per_outp_t *po) { - uint8_t *buf; - - if(po->nboff == 0 && po->buffer == po->tmpspace) - return 0; - - buf = po->buffer + (po->nboff >> 3); - /* Make sure we account for the last, partially filled */ - if(po->nboff & 0x07) { - buf[0] &= 0xff << (8 - (po->nboff & 0x07)); - buf++; - } - - return po->outper(po->tmpspace, buf - po->tmpspace, po->op_key); -} - -static asn_enc_rval_t -uper_encode_internal(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { - asn_per_outp_t po; - asn_enc_rval_t er; - - /* - * Invoke type-specific encoder. - */ - if(!td || !td->uper_encoder) - _ASN_ENCODE_FAILED; /* PER is not compiled in */ - - po.buffer = po.tmpspace; - po.nboff = 0; - po.nbits = 8 * sizeof(po.tmpspace); - po.outper = cb; - po.op_key = app_key; - po.flushed_bytes = 0; - - er = td->uper_encoder(td, constraints, sptr, &po); - if(er.encoded != -1) { - size_t bits_to_flush; - - bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; - - /* Set number of bits encoded to a firm value */ - er.encoded = (po.flushed_bytes << 3) + bits_to_flush; - - if(_uper_encode_flush_outp(&po)) - _ASN_ENCODE_FAILED; - } - - return er; -} - diff --git a/src/tmx/Asn_J2735/src/r41/per_opentype.c b/src/tmx/Asn_J2735/src/r41/per_opentype.c deleted file mode 100644 index ec404cf9b..000000000 --- a/src/tmx/Asn_J2735/src/r41/per_opentype.c +++ /dev/null @@ -1,378 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -typedef struct uper_ugot_key { - asn_per_data_t oldpd; /* Old per data source */ - size_t unclaimed; - size_t ot_moved; /* Number of bits moved by OT processing */ - int repeat; -} uper_ugot_key; - -static int uper_ugot_refill(asn_per_data_t *pd); -static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); -static asn_dec_rval_t uper_sot_suck(asn_codec_ctx_t *, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd); - -/* - * Encode an "open type field". - * #10.1, #10.2 - */ -int -uper_open_type_put(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { - void *buf; - void *bptr; - ssize_t size; - size_t toGo; - - ASN_DEBUG("Open type put %s ...", td->name); - - size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); - if(size <= 0) return -1; - - for(bptr = buf, toGo = size; toGo;) { - ssize_t maySave = uper_put_length(po, toGo); - ASN_DEBUG("Prepending length %d to %s and allowing to save %d", - (int)size, td->name, (int)maySave); - if(maySave < 0) break; - if(per_put_many_bits(po, bptr, maySave * 8)) break; - bptr = (char *)bptr + maySave; - toGo -= maySave; - } - - FREEMEM(buf); - if(toGo) return -1; - - ASN_DEBUG("Open type put %s of length %ld + overhead (1byte?)", - td->name, (long)size); - - return 0; -} - -static asn_dec_rval_t -uper_open_type_get_simple(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - ssize_t chunk_bytes; - int repeat; - uint8_t *buf = 0; - size_t bufLen = 0; - size_t bufSize = 0; - asn_per_data_t spd; - size_t padding; - - _ASN_STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s...", td->name); - - do { - chunk_bytes = uper_get_length(pd, -1, &repeat); - if(chunk_bytes < 0) { - FREEMEM(buf); - _ASN_DECODE_STARVED; - } - if(bufLen + chunk_bytes > bufSize) { - void *ptr; - bufSize = chunk_bytes + (bufSize << 2); - ptr = REALLOC(buf, bufSize); - if(!ptr) { - FREEMEM(buf); - _ASN_DECODE_FAILED; - } - buf = ptr; - } - if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { - FREEMEM(buf); - _ASN_DECODE_STARVED; - } - bufLen += chunk_bytes; - } while(repeat); - - ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, - (long)bufLen); - - memset(&spd, 0, sizeof(spd)); - spd.buffer = buf; - spd.nbits = bufLen << 3; - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->uper_decoder(ctx, td, constraints, sptr, &spd); - ASN_DEBUG_INDENT_ADD(-4); - - if(rv.code == RC_OK) { - /* Check padding validity */ - padding = spd.nbits - spd.nboff; - if ((padding < 8 || - /* X.691#10.1.3 */ - (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && - per_get_few_bits(&spd, padding) == 0) { - /* Everything is cool */ - FREEMEM(buf); - return rv; - } - FREEMEM(buf); - if(padding >= 8) { - ASN_DEBUG("Too large padding %d in open type", (int)padding); - _ASN_DECODE_FAILED; - } else { - ASN_DEBUG("Non-zero padding"); - _ASN_DECODE_FAILED; - } - } else { - FREEMEM(buf); - /* rv.code could be RC_WMORE, nonsense in this context */ - rv.code = RC_FAIL; /* Noone would give us more */ - } - - return rv; -} - -static asn_dec_rval_t GCC_NOTUSED -uper_open_type_get_complex(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - uper_ugot_key arg; - asn_dec_rval_t rv; - ssize_t padding; - - _ASN_STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s from %s", td->name, - per_data_string(pd)); - arg.oldpd = *pd; - arg.unclaimed = 0; - arg.ot_moved = 0; - arg.repeat = 1; - pd->refill = uper_ugot_refill; - pd->refill_key = &arg; - pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ - pd->moved = 0; /* This now counts the open type size in bits */ - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->uper_decoder(ctx, td, constraints, sptr, pd); - ASN_DEBUG_INDENT_ADD(-4); - -#define UPDRESTOREPD do { \ - /* buffer and nboff are valid, preserve them. */ \ - pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ - pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ - pd->refill = arg.oldpd.refill; \ - pd->refill_key = arg.oldpd.refill_key; \ - } while(0) - - if(rv.code != RC_OK) { - UPDRESTOREPD; - return rv; - } - - ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, - per_data_string(pd), - per_data_string(&arg.oldpd), - (int)arg.unclaimed, (int)arg.repeat); - - padding = pd->moved % 8; - if(padding) { - int32_t pvalue; - if(padding > 7) { - ASN_DEBUG("Too large padding %d in open type", - (int)padding); - rv.code = RC_FAIL; - UPDRESTOREPD; - return rv; - } - padding = 8 - padding; - ASN_DEBUG("Getting padding of %d bits", (int)padding); - pvalue = per_get_few_bits(pd, padding); - switch(pvalue) { - case -1: - ASN_DEBUG("Padding skip failed"); - UPDRESTOREPD; - _ASN_DECODE_STARVED; - case 0: break; - default: - ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", - (int)padding, (int)pvalue); - UPDRESTOREPD; - _ASN_DECODE_FAILED; - } - } - if(pd->nboff != pd->nbits) { - ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, - per_data_string(pd), per_data_string(&arg.oldpd)); - if(1) { - UPDRESTOREPD; - _ASN_DECODE_FAILED; - } else { - arg.unclaimed += pd->nbits - pd->nboff; - } - } - - /* Adjust pd back so it points to original data */ - UPDRESTOREPD; - - /* Skip data not consumed by the decoder */ - if(arg.unclaimed) { - ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); - switch(per_skip_bits(pd, arg.unclaimed)) { - case -1: - ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); - _ASN_DECODE_STARVED; - case 0: - ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); - break; - default: - /* Padding must be blank */ - ASN_DEBUG("Non-blank unconsumed padding"); - _ASN_DECODE_FAILED; - } - arg.unclaimed = 0; - } - - if(arg.repeat) { - ASN_DEBUG("Not consumed the whole thing"); - rv.code = RC_FAIL; - return rv; - } - - return rv; -} - - -asn_dec_rval_t -uper_open_type_get(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - - return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); -} - -int -uper_open_type_skip(asn_codec_ctx_t *ctx, asn_per_data_t *pd) { - asn_TYPE_descriptor_t s_td; - asn_dec_rval_t rv; - - s_td.name = ""; - s_td.uper_decoder = uper_sot_suck; - - rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); - if(rv.code != RC_OK) - return -1; - else - return 0; -} - -/* - * Internal functions. - */ - -static asn_dec_rval_t -uper_sot_suck(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - - (void)ctx; - (void)td; - (void)constraints; - (void)sptr; - - while(per_get_few_bits(pd, 24) >= 0); - - rv.code = RC_OK; - rv.consumed = pd->moved; - - return rv; -} - -static int -uper_ugot_refill(asn_per_data_t *pd) { - uper_ugot_key *arg = pd->refill_key; - ssize_t next_chunk_bytes, next_chunk_bits; - ssize_t avail; - - asn_per_data_t *oldpd = &arg->oldpd; - - ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", - (long)pd->moved, (long)oldpd->moved); - - /* Advance our position to where pd is */ - oldpd->buffer = pd->buffer; - oldpd->nboff = pd->nboff; - oldpd->nbits -= pd->moved - arg->ot_moved; - oldpd->moved += pd->moved - arg->ot_moved; - arg->ot_moved = pd->moved; - - if(arg->unclaimed) { - /* Refill the container */ - if(per_get_few_bits(oldpd, 1)) - return -1; - if(oldpd->nboff == 0) { - assert(0); - return -1; - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff - 1; - pd->nbits = oldpd->nbits; - ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", - (long)pd->moved); - return 0; - } - - if(!arg->repeat) { - ASN_DEBUG("Want more but refill doesn't have it"); - return -1; - } - - next_chunk_bytes = uper_get_length(oldpd, -1, &arg->repeat); - ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", - (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); - if(next_chunk_bytes < 0) return -1; - if(next_chunk_bytes == 0) { - pd->refill = 0; /* No more refills, naturally */ - assert(!arg->repeat); /* Implementation guarantee */ - } - next_chunk_bits = next_chunk_bytes << 3; - avail = oldpd->nbits - oldpd->nboff; - if(avail >= next_chunk_bits) { - pd->nbits = oldpd->nboff + next_chunk_bits; - arg->unclaimed = 0; - ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", - (long)next_chunk_bits, (long)oldpd->moved, - (long)oldpd->nboff, (long)oldpd->nbits, - (long)(oldpd->nbits - oldpd->nboff)); - } else { - pd->nbits = oldpd->nbits; - arg->unclaimed = next_chunk_bits - avail; - ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", - (long)avail, (long)next_chunk_bits, - (long)arg->unclaimed); - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff; - ASN_DEBUG("Refilled pd%s old%s", - per_data_string(pd), per_data_string(oldpd)); - return 0; -} - -static int -per_skip_bits(asn_per_data_t *pd, int skip_nbits) { - int hasNonZeroBits = 0; - while(skip_nbits > 0) { - int skip; - - /* per_get_few_bits() is more efficient when nbits <= 24 */ - if(skip_nbits < 24) - skip = skip_nbits; - else - skip = 24; - skip_nbits -= skip; - - switch(per_get_few_bits(pd, skip)) { - case -1: return -1; /* Starving */ - case 0: continue; /* Skipped empty space */ - default: hasNonZeroBits = 1; continue; - } - } - return hasNonZeroBits; -} diff --git a/src/tmx/Asn_J2735/src/r41/per_support.c b/src/tmx/Asn_J2735/src/r41/per_support.c deleted file mode 100644 index 0d089f495..000000000 --- a/src/tmx/Asn_J2735/src/r41/per_support.c +++ /dev/null @@ -1,483 +0,0 @@ -/* - * Copyright (c) 2005-2014 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -char * -per_data_string(asn_per_data_t *pd) { - static char buf[2][32]; - static int n; - n = (n+1) % 2; - snprintf(buf[n], sizeof(buf), - "{m=%ld span %+ld[%d..%d] (%d)}", - (long)pd->moved, - (((long)pd->buffer) & 0xf), - (int)pd->nboff, (int)pd->nbits, - (int)(pd->nbits - pd->nboff)); - return buf[n]; -} - -void -per_get_undo(asn_per_data_t *pd, int nbits) { - if((ssize_t)pd->nboff < nbits) { - assert((ssize_t)pd->nboff < nbits); - } else { - pd->nboff -= nbits; - pd->moved -= nbits; - } -} - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - */ -int32_t -per_get_few_bits(asn_per_data_t *pd, int nbits) { - size_t off; /* Next after last bit offset */ - ssize_t nleft; /* Number of bits left in this stream */ - uint32_t accum; - const uint8_t *buf; - - if(nbits < 0) - return -1; - - nleft = pd->nbits - pd->nboff; - if(nbits > nleft) { - int32_t tailv, vhead; - if(!pd->refill || nbits > 31) return -1; - /* Accumulate unused bytes before refill */ - ASN_DEBUG("Obtain the rest %d bits (want %d)", - (int)nleft, (int)nbits); - tailv = per_get_few_bits(pd, nleft); - if(tailv < 0) return -1; - /* Refill (replace pd contents with new data) */ - if(pd->refill(pd)) - return -1; - nbits -= nleft; - vhead = per_get_few_bits(pd, nbits); - /* Combine the rest of previous pd with the head of new one */ - tailv = (tailv << nbits) | vhead; /* Could == -1 */ - return tailv; - } - - /* - * Normalize position indicator. - */ - if(pd->nboff >= 8) { - pd->buffer += (pd->nboff >> 3); - pd->nbits -= (pd->nboff & ~0x07); - pd->nboff &= 0x07; - } - pd->moved += nbits; - pd->nboff += nbits; - off = pd->nboff; - buf = pd->buffer; - - /* - * Extract specified number of bits. - */ - if(off <= 8) - accum = nbits ? (buf[0]) >> (8 - off) : 0; - else if(off <= 16) - accum = ((buf[0] << 8) + buf[1]) >> (16 - off); - else if(off <= 24) - accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); - else if(off <= 31) - accum = ((buf[0] << 24) + (buf[1] << 16) - + (buf[2] << 8) + (buf[3])) >> (32 - off); - else if(nbits <= 31) { - asn_per_data_t tpd = *pd; - /* Here are we with our 31-bits limit plus 1..7 bits offset. */ - per_get_undo(&tpd, nbits); - /* The number of available bits in the stream allow - * for the following operations to take place without - * invoking the ->refill() function */ - accum = per_get_few_bits(&tpd, nbits - 24) << 24; - accum |= per_get_few_bits(&tpd, 24); - } else { - per_get_undo(pd, nbits); - return -1; - } - - accum &= (((uint32_t)1 << nbits) - 1); - - ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", - (int)nbits, (int)nleft, - (int)pd->moved, - (((long)pd->buffer) & 0xf), - (int)pd->nboff, (int)pd->nbits, - pd->buffer[0], - (int)(pd->nbits - pd->nboff), - (int)accum); - - return accum; -} - -/* - * Extract a large number of bits from the specified PER data pointer. - */ -int -per_get_many_bits(asn_per_data_t *pd, uint8_t *dst, int alright, int nbits) { - int32_t value; - - if(alright && (nbits & 7)) { - /* Perform right alignment of a first few bits */ - value = per_get_few_bits(pd, nbits & 0x07); - if(value < 0) return -1; - *dst++ = value; /* value is already right-aligned */ - nbits &= ~7; - } - - while(nbits) { - if(nbits >= 24) { - value = per_get_few_bits(pd, 24); - if(value < 0) return -1; - *(dst++) = value >> 16; - *(dst++) = value >> 8; - *(dst++) = value; - nbits -= 24; - } else { - value = per_get_few_bits(pd, nbits); - if(value < 0) return -1; - if(nbits & 7) { /* implies left alignment */ - value <<= 8 - (nbits & 7), - nbits += 8 - (nbits & 7); - if(nbits > 24) - *dst++ = value >> 24; - } - if(nbits > 16) - *dst++ = value >> 16; - if(nbits > 8) - *dst++ = value >> 8; - *dst++ = value; - break; - } - } - - return 0; -} - -/* - * Get the length "n" from the stream. - */ -ssize_t -uper_get_length(asn_per_data_t *pd, int ebits, int *repeat) { - ssize_t value; - - *repeat = 0; - - if(ebits >= 0) return per_get_few_bits(pd, ebits); - - value = per_get_few_bits(pd, 8); - if(value < 0) return -1; - if((value & 128) == 0) /* #10.9.3.6 */ - return (value & 0x7F); - if((value & 64) == 0) { /* #10.9.3.7 */ - value = ((value & 63) << 8) | per_get_few_bits(pd, 8); - if(value < 0) return -1; - return value; - } - value &= 63; /* this is "m" from X.691, #10.9.3.8 */ - if(value < 1 || value > 4) - return -1; - *repeat = 1; - return (16384 * value); -} - -/* - * Get the normally small length "n". - * This procedure used to decode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -ssize_t -uper_get_nslength(asn_per_data_t *pd) { - ssize_t length; - - ASN_DEBUG("Getting normally small length"); - - if(per_get_few_bits(pd, 1) == 0) { - length = per_get_few_bits(pd, 6) + 1; - if(length <= 0) return -1; - ASN_DEBUG("l=%d", (int)length); - return length; - } else { - int repeat; - length = uper_get_length(pd, -1, &repeat); - if(length >= 0 && !repeat) return length; - return -1; /* Error, or do not support >16K extensions */ - } -} - -/* - * Get the normally small non-negative whole number. - * X.691, #10.6 - */ -ssize_t -uper_get_nsnnwn(asn_per_data_t *pd) { - ssize_t value; - - value = per_get_few_bits(pd, 7); - if(value & 64) { /* implicit (value < 0) */ - value &= 63; - value <<= 2; - value |= per_get_few_bits(pd, 2); - if(value & 128) /* implicit (value < 0) */ - return -1; - if(value == 0) - return 0; - if(value >= 3) - return -1; - value = per_get_few_bits(pd, 8 * value); - return value; - } - - return value; -} - -/* - * X.691-11/2008, #11.6 - * Encoding of a normally small non-negative whole number - */ -int -uper_put_nsnnwn(asn_per_outp_t *po, int n) { - int bytes; - - if(n <= 63) { - if(n < 0) return -1; - return per_put_few_bits(po, n, 7); - } - if(n < 256) - bytes = 1; - else if(n < 65536) - bytes = 2; - else if(n < 256 * 65536) - bytes = 3; - else - return -1; /* This is not a "normally small" value */ - if(per_put_few_bits(po, bytes, 8)) - return -1; - - return per_put_few_bits(po, n, 8 * bytes); -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, unsigned long *out_value, int nbits) { - unsigned long lhalf; /* Lower half of the number*/ - long half; - - if(nbits <= 31) { - half = per_get_few_bits(pd, nbits); - if(half < 0) return -1; - *out_value = half; - return 0; - } - - if((size_t)nbits > 8 * sizeof(*out_value)) - return -1; /* RANGE */ - - half = per_get_few_bits(pd, 31); - if(half < 0) return -1; - - if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) - return -1; - - *out_value = ((unsigned long)half << (nbits - 31)) | lhalf; - return 0; -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int uper_put_constrained_whole_number_s(asn_per_outp_t *po, long v, int nbits) { - /* - * Assume signed number can be safely coerced into - * unsigned of the same range. - * The following testing code will likely be optimized out - * by compiler if it is true. - */ - unsigned long uvalue1 = ULONG_MAX; - long svalue = uvalue1; - unsigned long uvalue2 = svalue; - assert(uvalue1 == uvalue2); - return uper_put_constrained_whole_number_u(po, v, nbits); -} - -int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits) { - if(nbits <= 31) { - return per_put_few_bits(po, v, nbits); - } else { - /* Put higher portion first, followed by lower 31-bit */ - if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) - return -1; - return per_put_few_bits(po, v, 31); - } -} - -/* - * Put a small number of bits (<= 31). - */ -int -per_put_few_bits(asn_per_outp_t *po, uint32_t bits, int obits) { - size_t off; /* Next after last bit offset */ - size_t omsk; /* Existing last byte meaningful bits mask */ - uint8_t *buf; - - if(obits <= 0 || obits >= 32) return obits ? -1 : 0; - - ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", - obits, (int)bits, po->buffer, (int)po->nboff); - - /* - * Normalize position indicator. - */ - if(po->nboff >= 8) { - po->buffer += (po->nboff >> 3); - po->nbits -= (po->nboff & ~0x07); - po->nboff &= 0x07; - } - - /* - * Flush whole-bytes output, if necessary. - */ - if(po->nboff + obits > po->nbits) { - int complete_bytes = (po->buffer - po->tmpspace); - ASN_DEBUG("[PER output %ld complete + %ld]", - (long)complete_bytes, (long)po->flushed_bytes); - if(po->outper(po->tmpspace, complete_bytes, po->op_key) < 0) - return -1; - if(po->nboff) - po->tmpspace[0] = po->buffer[0]; - po->buffer = po->tmpspace; - po->nbits = 8 * sizeof(po->tmpspace); - po->flushed_bytes += complete_bytes; - } - - /* - * Now, due to sizeof(tmpspace), we are guaranteed large enough space. - */ - buf = po->buffer; - omsk = ~((1 << (8 - po->nboff)) - 1); - off = (po->nboff + obits); - - /* Clear data of debris before meaningful bits */ - bits &= (((uint32_t)1 << obits) - 1); - - ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, - (int)bits, (int)bits, - (int)po->nboff, (int)off, - buf[0], (int)(omsk&0xff), - (int)(buf[0] & omsk)); - - if(off <= 8) /* Completely within 1 byte */ - po->nboff = off, - bits <<= (8 - off), - buf[0] = (buf[0] & omsk) | bits; - else if(off <= 16) - po->nboff = off, - bits <<= (16 - off), - buf[0] = (buf[0] & omsk) | (bits >> 8), - buf[1] = bits; - else if(off <= 24) - po->nboff = off, - bits <<= (24 - off), - buf[0] = (buf[0] & omsk) | (bits >> 16), - buf[1] = bits >> 8, - buf[2] = bits; - else if(off <= 31) - po->nboff = off, - bits <<= (32 - off), - buf[0] = (buf[0] & omsk) | (bits >> 24), - buf[1] = bits >> 16, - buf[2] = bits >> 8, - buf[3] = bits; - else { - per_put_few_bits(po, bits >> (obits - 24), 24); - per_put_few_bits(po, bits, obits - 24); - } - - ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", - (int)bits, (int)bits, buf[0], - (long)(po->buffer - po->tmpspace)); - - return 0; -} - - -/* - * Output a large number of bits. - */ -int -per_put_many_bits(asn_per_outp_t *po, const uint8_t *src, int nbits) { - - while(nbits) { - uint32_t value; - - if(nbits >= 24) { - value = (src[0] << 16) | (src[1] << 8) | src[2]; - src += 3; - nbits -= 24; - if(per_put_few_bits(po, value, 24)) - return -1; - } else { - value = src[0]; - if(nbits > 8) - value = (value << 8) | src[1]; - if(nbits > 16) - value = (value << 8) | src[2]; - if(nbits & 0x07) - value >>= (8 - (nbits & 0x07)); - if(per_put_few_bits(po, value, nbits)) - return -1; - break; - } - } - - return 0; -} - -/* - * Put the length "n" (or part of it) into the stream. - */ -ssize_t -uper_put_length(asn_per_outp_t *po, size_t length) { - - if(length <= 127) /* #10.9.3.6 */ - return per_put_few_bits(po, length, 8) - ? -1 : (ssize_t)length; - else if(length < 16384) /* #10.9.3.7 */ - return per_put_few_bits(po, length|0x8000, 16) - ? -1 : (ssize_t)length; - - length >>= 14; - if(length > 4) length = 4; - - return per_put_few_bits(po, 0xC0 | length, 8) - ? -1 : (ssize_t)(length << 14); -} - - -/* - * Put the normally small length "n" into the stream. - * This procedure used to encode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -int -uper_put_nslength(asn_per_outp_t *po, size_t length) { - - if(length <= 64) { - /* #10.9.3.4 */ - if(length == 0) return -1; - return per_put_few_bits(po, length-1, 7) ? -1 : 0; - } else { - if(uper_put_length(po, length) != (ssize_t)length) { - /* This might happen in case of >16K extensions */ - return -1; - } - } - - return 0; -} - diff --git a/src/tmx/Asn_J2735/src/r41/xer_decoder.c b/src/tmx/Asn_J2735/src/r41/xer_decoder.c deleted file mode 100644 index cb4b5f878..000000000 --- a/src/tmx/Asn_J2735/src/r41/xer_decoder.c +++ /dev/null @@ -1,365 +0,0 @@ -/* - * Copyright (c) 2004, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* XER/XML parsing support */ - - -/* - * Decode the XER encoding of a given type. - */ -asn_dec_rval_t -xer_decode(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, - void **struct_ptr, const void *buffer, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return td->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); -} - - - -struct xer__cb_arg { - pxml_chunk_type_e chunk_type; - size_t chunk_size; - const void *chunk_buf; - int callback_not_invoked; -}; - -static int -xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { - struct xer__cb_arg *arg = (struct xer__cb_arg *)key; - arg->chunk_type = type; - arg->chunk_size = _chunk_size; - arg->chunk_buf = _chunk_data; - arg->callback_not_invoked = 0; - return -1; /* Terminate the XML parsing */ -} - -/* - * Fetch the next token from the XER/XML stream. - */ -ssize_t -xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { - struct xer__cb_arg arg; - int new_stateContext = *stateContext; - ssize_t ret; - - arg.callback_not_invoked = 1; - ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); - if(ret < 0) return -1; - if(arg.callback_not_invoked) { - assert(ret == 0); /* No data was consumed */ - return 0; /* Try again with more data */ - } else { - assert(arg.chunk_size); - assert(arg.chunk_buf == buffer); - } - - /* - * Translate the XML chunk types into more convenient ones. - */ - switch(arg.chunk_type) { - case PXML_TEXT: - *ch_type = PXER_TEXT; - break; - case PXML_TAG: return 0; /* Want more */ - case PXML_TAG_END: - *ch_type = PXER_TAG; - break; - case PXML_COMMENT: - case PXML_COMMENT_END: - *ch_type = PXER_COMMENT; - break; - } - - *stateContext = new_stateContext; - return arg.chunk_size; -} - -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define RANGLE 0x3e /* '>' */ - -xer_check_tag_e -xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { - const char *buf = (const char *)buf_ptr; - const char *end; - xer_check_tag_e ct = XCT_OPENING; - - if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { - if(size >= 2) - ASN_DEBUG("Broken XML tag: \"%c...%c\"", - buf[0], buf[size - 1]); - return XCT_BROKEN; - } - - /* - * Determine the tag class. - */ - if(buf[1] == CSLASH) { - buf += 2; /* advance past "" */ - ct = XCT_CLOSING; - if(size > 0 && buf[size-1] == CSLASH) - return XCT_BROKEN; /* */ - } else { - buf++; /* advance past "<" */ - size -= 2; /* strip "<" and ">" */ - if(size > 0 && buf[size-1] == CSLASH) { - ct = XCT_BOTH; - size--; /* One more, for "/" */ - } - } - - /* Sometimes we don't care about the tag */ - if(!need_tag || !*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - /* - * Determine the tag name. - */ - for(end = buf + size; buf < end; buf++, need_tag++) { - int b = *buf, n = *need_tag; - if(b != n) { - if(n == 0) { - switch(b) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* "": whitespace is normal */ - return ct; - } - } - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - } - if(b == 0) - return XCT_BROKEN; /* Embedded 0 in buf?! */ - } - if(*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - return ct; -} - - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = (num_bytes); \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - if(rval.code != RC_OK) \ - ASN_DEBUG("Failed with %d", rval.code); \ - return rval; \ - } while(0) - -#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ - ssize_t converted_size = body_receiver \ - (struct_key, chunk_buf, chunk_size, \ - (size_t)chunk_size < size); \ - if(converted_size == -1) RETURN(RC_FAIL); \ - if(converted_size == 0 \ - && size == (size_t)chunk_size) \ - RETURN(RC_WMORE); \ - chunk_size = converted_size; \ - } while(0) -#define XER_GOT_EMPTY() do { \ - if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ - RETURN(RC_FAIL); \ - } while(0) - -/* - * Generalized function for decoding the primitive values. - */ -asn_dec_rval_t -xer_decode_general(asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, - const char *xml_tag, /* Expected XML tag */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder) - (void *struct_key, const void *chunk_buf, size_t chunk_size), - ssize_t (*body_receiver) - (void *struct_key, const void *chunk_buf, size_t chunk_size, - int have_more) - ) { - - asn_dec_rval_t rval; - ssize_t consumed_myself = 0; - - (void)opt_codec_ctx; - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - */ - if(ctx->phase > 1) RETURN(RC_FAIL); - for(;;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, - &ch_type); - switch(ch_size) { - case -1: RETURN(RC_FAIL); - case 0: - RETURN(RC_WMORE); - default: - switch(ch_type) { - case PXER_COMMENT: /* Got XML comment */ - ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TEXT: - if(ctx->phase == 0) { - /* - * We have to ignore whitespace here, - * but in order to be forward compatible - * with EXTENDED-XER (EMBED-VALUES, #25) - * any text is just ignored here. - */ - } else { - XER_GOT_BODY(buf_ptr, ch_size, size); - } - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - assert(ch_type == PXER_TAG && size); - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - /* - * Phase 0: - * Expecting the opening tag - * for the type being processed. - * Phase 1: - * Waiting for the closing XML tag. - */ - switch(tcv) { - case XCT_BOTH: - if(ctx->phase) break; - /* Finished decoding of an empty element */ - XER_GOT_EMPTY(); - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - case XCT_CLOSING: - if(!ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_UNKNOWN_BO: - /* - * Certain tags in the body may be expected. - */ - if(opt_unexpected_tag_decoder - && opt_unexpected_tag_decoder(struct_key, - buf_ptr, ch_size) >= 0) { - /* Tag's processed fine */ - ADVANCE(ch_size); - if(!ctx->phase) { - /* We are not expecting - * the closing tag anymore. */ - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - } - continue; - } - /* Fall through */ - default: - break; /* Unexpected tag */ - } - - ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); - break; /* Dark and mysterious things have just happened */ - } - - RETURN(RC_FAIL); -} - - -size_t -xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - - for(; p < pend; p++) { - switch(*p) { - /* X.693, #8.1.4 - * HORISONTAL TAB (9) - * LINE FEED (10) - * CARRIAGE RETURN (13) - * SPACE (32) - */ - case 0x09: case 0x0a: case 0x0d: case 0x20: - continue; - default: - break; - } - break; - } - return (p - (const char *)chunk_buf); -} - -/* - * This is a vastly simplified, non-validating XML tree skipper. - */ -int -xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { - assert(*depth > 0); - switch(tcv) { - case XCT_BOTH: - case XCT_UNKNOWN_BO: - /* These negate each other. */ - return 0; - case XCT_OPENING: - case XCT_UNKNOWN_OP: - ++(*depth); - return 0; - case XCT_CLOSING: - case XCT_UNKNOWN_CL: - if(--(*depth) == 0) - return (tcv == XCT_CLOSING) ? 2 : 1; - return 0; - default: - return -1; - } -} diff --git a/src/tmx/Asn_J2735/src/r41/xer_encoder.c b/src/tmx/Asn_J2735/src/r41/xer_encoder.c deleted file mode 100644 index aa7cf040a..000000000 --- a/src/tmx/Asn_J2735/src/r41/xer_encoder.c +++ /dev/null @@ -1,67 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The XER encoder of any type. May be invoked by the application. - */ -asn_enc_rval_t -xer_encode(asn_TYPE_descriptor_t *td, void *sptr, - enum xer_encoder_flags_e xer_flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er, tmper; - const char *mname; - size_t mlen; - int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; - - if(!td || !sptr) goto cb_failed; - - mname = td->xml_tag; - mlen = strlen(mname); - - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = td->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - - _ASN_CALLBACK3("\n", xcan); - - er.encoded = 4 + xcan + (2 * mlen) + tmper.encoded; - - _ASN_ENCODED_OK(er); -cb_failed: - _ASN_ENCODE_FAILED; -} - -/* - * This is a helper function for xer_fprint, which directs all incoming data - * into the provided file descriptor. - */ -static int -xer__print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - -int -xer_fprint(FILE *stream, asn_TYPE_descriptor_t *td, void *sptr) { - asn_enc_rval_t er; - - if(!stream) stream = stdout; - if(!td || !sptr) - return -1; - - er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); - if(er.encoded == -1) - return -1; - - return fflush(stream); -} diff --git a/src/tmx/Asn_J2735/src/r41/xer_support.c b/src/tmx/Asn_J2735/src/r41/xer_support.c deleted file mode 100644 index 9e34e6923..000000000 --- a/src/tmx/Asn_J2735/src/r41/xer_support.c +++ /dev/null @@ -1,233 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* Parser states */ -typedef enum { - ST_TEXT, - ST_TAG_START, - ST_TAG_BODY, - ST_TAG_QUOTE_WAIT, - ST_TAG_QUOTED_STRING, - ST_TAG_UNQUOTED_STRING, - ST_COMMENT_WAIT_DASH1, /* ""[0] */ - ST_COMMENT_CLO_RT /* "-->"[1] */ -} pstate_e; - -static pxml_chunk_type_e final_chunk_type[] = { - PXML_TEXT, - PXML_TAG_END, - PXML_COMMENT_END, - PXML_TAG_END, - PXML_COMMENT_END, -}; - - -static int -_charclass[256] = { - 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, - 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ -}; -#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) -#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) -#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) - -/* Aliases for characters, ASCII/UTF-8 */ -#define EXCLAM 0x21 /* '!' */ -#define CQUOTE 0x22 /* '"' */ -#define CDASH 0x2d /* '-' */ -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define CEQUAL 0x3d /* '=' */ -#define RANGLE 0x3e /* '>' */ -#define CQUEST 0x3f /* '?' */ - -/* Invoke token callback */ -#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ - int _ret; \ - pstate_e ns = _ns; \ - ssize_t _sz = (p - chunk_start) + _current_too; \ - if (!_sz) { \ - /* Shortcut */ \ - state = _ns; \ - break; \ - } \ - _ret = cb(type, chunk_start, _sz, key); \ - if(_ret < _sz) { \ - if(_current_too && _ret == -1) \ - state = ns; \ - goto finish; \ - } \ - chunk_start = p + _current_too; \ - state = ns; \ - } while(0) - -#define TOKEN_CB(_type, _ns, _current_too) \ - TOKEN_CB_CALL(_type, _ns, _current_too, 0) - -#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ - TOKEN_CB_CALL(final_chunk_type[_type], _ns, _current_too, 1) - -/* - * Parser itself - */ -ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { - pstate_e state = (pstate_e)*stateContext; - const char *chunk_start = (const char *)xmlbuf; - const char *p = chunk_start; - const char *end = p + size; - - for(; p < end; p++) { - int C = *(const unsigned char *)p; - switch(state) { - case ST_TEXT: - /* - * Initial state: we're in the middle of some text, - * or just have started. - */ - if (C == LANGLE) - /* We're now in the tag, probably */ - TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); - break; - case ST_TAG_START: - if (ALPHA(C) || (C == CSLASH)) - state = ST_TAG_BODY; - else if (C == EXCLAM) - state = ST_COMMENT_WAIT_DASH1; - else - /* - * Not characters and not whitespace. - * Must be something like "3 < 4". - */ - TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ - break; - case ST_TAG_BODY: - switch(C) { - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - case LANGLE: - /* - * The previous tag wasn't completed, but still - * recognized as valid. (Mozilla-compatible) - */ - TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); - break; - case CEQUAL: - state = ST_TAG_QUOTE_WAIT; - break; - } - break; - case ST_TAG_QUOTE_WAIT: - /* - * State after the equal sign ("=") in the tag. - */ - switch(C) { - case CQUOTE: - state = ST_TAG_QUOTED_STRING; - break; - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - default: - if(!WHITESPACE(C)) - /* Unquoted string value */ - state = ST_TAG_UNQUOTED_STRING; - } - break; - case ST_TAG_QUOTED_STRING: - /* - * Tag attribute's string value in quotes. - */ - if(C == CQUOTE) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_TAG_UNQUOTED_STRING: - if(C == RANGLE) { - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - } else if(WHITESPACE(C)) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH1: - if(C == CDASH) { - state = ST_COMMENT_WAIT_DASH2; - } else { - /* Some ordinary tag. */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH2: - if(C == CDASH) { - /* Seen "<--" */ - state = ST_COMMENT; - } else { - /* Some ordinary tag */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT: - if(C == CDASH) { - state = ST_COMMENT_CLO_DASH2; - } - break; - case ST_COMMENT_CLO_DASH2: - if(C == CDASH) { - state = ST_COMMENT_CLO_RT; - } else { - /* This is not an end of a comment */ - state = ST_COMMENT; - } - break; - case ST_COMMENT_CLO_RT: - if(C == RANGLE) { - TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); - } else if(C == CDASH) { - /* Maintain current state, still waiting for '>' */ - } else { - state = ST_COMMENT; - } - break; - } /* switch(*ptr) */ - } /* for() */ - - /* - * Flush the partially processed chunk, state permitting. - */ - if(p - chunk_start) { - switch (state) { - case ST_COMMENT: - TOKEN_CB(PXML_COMMENT, state, 0); - break; - case ST_TEXT: - TOKEN_CB(PXML_TEXT, state, 0); - break; - default: break; /* a no-op */ - } - } - -finish: - *stateContext = (int)state; - return chunk_start - (const char *)xmlbuf; -} - diff --git a/src/tmx/Asn_J2735/src/r63/ANY.c b/src/tmx/Asn_J2735/src/r63/ANY.c deleted file mode 100644 index 0b815577e..000000000 --- a/src/tmx/Asn_J2735/src/r63/ANY.c +++ /dev/null @@ -1,450 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs = { - sizeof(ANY_t), - offsetof(ANY_t, _asn_ctx), - ASN_OSUBV_ANY -}; -asn_TYPE_operation_t asn_OP_ANY = { - OCTET_STRING_free, - OCTET_STRING_print, - OCTET_STRING_compare, - OCTET_STRING_decode_ber, - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_hex, - ANY_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - 0, - 0, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, 0, 0, 0, -#else - ANY_decode_uper, - ANY_encode_uper, - ANY_decode_aper, - ANY_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - 0, /* Random fill is not defined for ANY type */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_ANY = { - "ANY", - "ANY", - &asn_OP_ANY, - 0, 0, 0, 0, - { 0, 0, asn_generic_no_constraint }, /* No constraints */ - 0, 0, /* No members */ - &asn_SPC_ANY_specs, -}; - -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -asn_enc_rval_t -ANY_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - if(flags & XER_F_CANONICAL) { - /* - * Canonical XER-encoding of ANY type is not supported. - */ - ASN__ENCODE_FAILED; - } - - /* Dump as binary */ - return OCTET_STRING_encode_xer(td, sptr, ilevel, flags, cb, app_key); -} - -struct _callback_arg { - uint8_t *buffer; - size_t offset; - size_t size; -}; - -static int ANY__consume_bytes(const void *buffer, size_t size, void *key); - -int -ANY_fromType(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { - struct _callback_arg arg; - asn_enc_rval_t erval = {0,0,0}; - - if(!st || !td) { - errno = EINVAL; - return -1; - } - - if(!sptr) { - if(st->buf) FREEMEM(st->buf); - st->size = 0; - return 0; - } - - arg.offset = arg.size = 0; - arg.buffer = 0; - - erval = der_encode(td, sptr, ANY__consume_bytes, &arg); - if(erval.encoded == -1) { - if(arg.buffer) FREEMEM(arg.buffer); - return -1; - } - assert((size_t)erval.encoded == arg.offset); - - if(st->buf) FREEMEM(st->buf); - st->buf = arg.buffer; - st->size = arg.offset; - - return 0; -} - -int -ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { - uint8_t *buffer = NULL; - ssize_t erval; - - if(!st || !td) { - errno = EINVAL; - return -1; - } - - if(!sptr) { - if(st->buf) FREEMEM(st->buf); - st->size = 0; - return 0; - } - - erval = aper_encode_to_new_buffer(td, td->encoding_constraints.per_constraints, sptr, (void**)&buffer); - - if(erval == -1) { - if(buffer) FREEMEM(buffer); - return -1; - } - assert((size_t)erval > 0); - - if(st->buf) FREEMEM(st->buf); - st->buf = buffer; - st->size = erval; - - return 0; -} - -ANY_t * -ANY_new_fromType(asn_TYPE_descriptor_t *td, void *sptr) { - ANY_t tmp; - ANY_t *st; - - if(!td || !sptr) { - errno = EINVAL; - return 0; - } - - memset(&tmp, 0, sizeof(tmp)); - - if(ANY_fromType(&tmp, td, sptr)) return 0; - - st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); - if(st) { - *st = tmp; - return st; - } else { - FREEMEM(tmp.buf); - return 0; - } -} - -ANY_t * -ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr) { - ANY_t tmp; - ANY_t *st; - - if(!td || !sptr) { - errno = EINVAL; - return 0; - } - - memset(&tmp, 0, sizeof(tmp)); - - if(ANY_fromType_aper(&tmp, td, sptr)) return 0; - - st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); - if(st) { - *st = tmp; - return st; - } else { - FREEMEM(tmp.buf); - return 0; - } -} - -int -ANY_to_type(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { - asn_dec_rval_t rval; - void *newst = 0; - - if(!st || !td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - if(st->buf == 0) { - /* Nothing to convert, make it empty. */ - *struct_ptr = (void *)0; - return 0; - } - - rval = ber_decode(0, td, (void **)&newst, st->buf, st->size); - if(rval.code == RC_OK) { - *struct_ptr = newst; - return 0; - } else { - /* Remove possibly partially decoded data. */ - ASN_STRUCT_FREE(*td, newst); - return -1; - } -} - -int -ANY_to_type_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { - asn_dec_rval_t rval; - void *newst = 0; - - if(!st || !td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - if(st->buf == 0) { - /* Nothing to convert, make it empty. */ - *struct_ptr = (void *)0; - return 0; - } - - rval = aper_decode(0, td, (void **)&newst, st->buf, st->size, 0, 0); - if(rval.code == RC_OK) { - *struct_ptr = newst; - return 0; - } else { - /* Remove possibly partially decoded data. */ - ASN_STRUCT_FREE(*td, newst); - return -1; - } -} - -static int ANY__consume_bytes(const void *buffer, size_t size, void *key) { - struct _callback_arg *arg = (struct _callback_arg *)key; - - if((arg->offset + size) >= arg->size) { - size_t nsize = (arg->size ? arg->size << 2 : 16) + size; - void *p = REALLOC(arg->buffer, nsize); - if(!p) return -1; - arg->buffer = (uint8_t *)p; - arg->size = nsize; - } - - memcpy(arg->buffer + arg->offset, buffer, size); - arg->offset += size; - assert(arg->offset < arg->size); - - return 0; -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -ANY_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_ANY_specs; - size_t consumed_myself = 0; - int repeat; - ANY_t *st = (ANY_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - - /* - * Allocate the structure. - */ - if(!st) { - st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("UPER Decoding ANY type"); - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, -1, 0, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len; - len_bits = len_bytes * 8; - - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += len_bits; - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - RETURN(RC_OK); -} - -asn_enc_rval_t -ANY_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const ANY_t *st = (const ANY_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - const uint8_t *buf; - size_t size; - int ret; - - (void)constraints; - - if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; - - buf = st->buf; - size = st->size; - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ret = per_put_many_bits(po, buf, may_save * 8); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save; - size -= may_save; - assert(!(may_save & 0x07) || !size); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size); - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -ANY_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_ANY_specs; - size_t consumed_myself = 0; - int repeat; - ANY_t *st = (ANY_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - - /* - * Allocate the structure. - */ - if(!st) { - st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("APER Decoding ANY type"); - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = aper_get_length(pd, -1, 0, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len; - len_bits = len_bytes * 8; - - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += len_bits; - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - RETURN(RC_OK); -} - -asn_enc_rval_t -ANY_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const ANY_t *st = (const ANY_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - const uint8_t *buf; - size_t size; - int ret; - - (void)constraints; - - if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; - - buf = st->buf; - size = st->size; - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ret = per_put_many_bits(po, buf, may_save * 8); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save; - size -= may_save; - assert(!(may_save & 0x07) || !size); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size); - - ASN__ENCODED_OK(er); -} -#endif /* ASN_DISABLE_PER_SUPPORT */ - diff --git a/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c deleted file mode 100644 index e09906326..000000000 --- a/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AccelSteerYawRateConfidence.h" - -asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yawRate" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "acceleration" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "steeringWheelAngle" - }, -}; -static const ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { - sizeof(struct AccelSteerYawRateConfidence), - offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), - asn_MAP_AccelSteerYawRateConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { - "AccelSteerYawRateConfidence", - "AccelSteerYawRateConfidence", - &asn_OP_SEQUENCE, - asn_DEF_AccelSteerYawRateConfidence_tags_1, - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) - /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AccelSteerYawRateConfidence_1, - 3, /* Elements count */ - &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Acceleration.c b/src/tmx/Asn_J2735/src/r63/Acceleration.c deleted file mode 100644 index b5c8b5e88..000000000 --- a/src/tmx/Asn_J2735/src/r63/Acceleration.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Acceleration.h" - -int -Acceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2000 && value <= 2001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Acceleration_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2000..2001) */, - -1}; -asn_per_constraints_t asn_PER_type_Acceleration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Acceleration = { - "Acceleration", - "Acceleration", - &asn_OP_NativeInteger, - asn_DEF_Acceleration_tags_1, - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - asn_DEF_Acceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_Acceleration_tags_1) - /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ - { &asn_OER_type_Acceleration_constr_1, &asn_PER_type_Acceleration_constr_1, Acceleration_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c deleted file mode 100644 index 68c6da8c0..000000000 --- a/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AccelerationConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "accl-100-00" }, - { 2, 11, "accl-010-00" }, - { 3, 11, "accl-005-00" }, - { 4, 11, "accl-001-00" }, - { 5, 11, "accl-000-10" }, - { 6, 11, "accl-000-05" }, - { 7, 11, "accl-000-01" } -}; -static const unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { - 7, /* accl-000-01(7) */ - 6, /* accl-000-05(6) */ - 5, /* accl-000-10(5) */ - 4, /* accl-001-00(4) */ - 3, /* accl-005-00(3) */ - 2, /* accl-010-00(2) */ - 1, /* accl-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { - asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { - "AccelerationConfidence", - "AccelerationConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_AccelerationConfidence_tags_1, - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationConfidence_tags_1) - /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_AccelerationConfidence_constr_1, &asn_PER_type_AccelerationConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c deleted file mode 100644 index 58666b3c8..000000000 --- a/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AccelerationSet4Way.h" - -asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, Long), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Acceleration, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Acceleration, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, vert), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAcceleration, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vert" - }, - { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, yaw), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yaw" - }, -}; -static const ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AccelerationSet4Way_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vert */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* yaw */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1 = { - sizeof(struct AccelerationSet4Way), - offsetof(struct AccelerationSet4Way, _asn_ctx), - asn_MAP_AccelerationSet4Way_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { - "AccelerationSet4Way", - "AccelerationSet4Way", - &asn_OP_SEQUENCE, - asn_DEF_AccelerationSet4Way_tags_1, - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ - sizeof(asn_DEF_AccelerationSet4Way_tags_1) - /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AccelerationSet4Way_1, - 4, /* Elements count */ - &asn_SPC_AccelerationSet4Way_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c deleted file mode 100644 index f4c63efa6..000000000 --- a/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AddGrpB_Angle.h" - -int -AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 239)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..239) */, - -1}; -static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { - "Angle", - "Angle", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_Angle_tags_1, - sizeof(asn_DEF_AddGrpB_Angle_tags_1) - /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_Angle_tags_1) - /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ - { &asn_OER_type_AddGrpB_Angle_constr_1, &asn_PER_type_AddGrpB_Angle_constr_1, AddGrpB_Angle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c deleted file mode 100644 index a441d8fd9..000000000 --- a/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AddGrpB_DayOfWeek.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AddGrpB_DayOfWeek_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "monday" }, - { 2, 7, "tuesday" }, - { 3, 9, "wednesday" }, - { 4, 8, "thursday" }, - { 5, 6, "friday" }, - { 6, 8, "saturday" }, - { 7, 6, "sunday" } -}; -static const unsigned int asn_MAP_AddGrpB_DayOfWeek_enum2value_1[] = { - 5, /* friday(5) */ - 1, /* monday(1) */ - 6, /* saturday(6) */ - 7, /* sunday(7) */ - 4, /* thursday(4) */ - 2, /* tuesday(2) */ - 0, /* unknown(0) */ - 3 /* wednesday(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1 = { - asn_MAP_AddGrpB_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AddGrpB_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_DayOfWeek_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek = { - "DayOfWeek", - "DayOfWeek", - &asn_OP_NativeEnumerated, - asn_DEF_AddGrpB_DayOfWeek_tags_1, - sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) - /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_DayOfWeek_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) - /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ - { &asn_OER_type_AddGrpB_DayOfWeek_constr_1, &asn_PER_type_AddGrpB_DayOfWeek_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AddGrpB_DayOfWeek_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c deleted file mode 100644 index aad6c0a6b..000000000 --- a/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AddGrpB_Elevation.h" - -int -AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { - "Elevation", - "Elevation", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_Elevation_tags_1, - sizeof(asn_DEF_AddGrpB_Elevation_tags_1) - /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_Elevation_tags_1) - /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ - { &asn_OER_type_AddGrpB_Elevation_constr_1, &asn_PER_type_AddGrpB_Elevation_constr_1, AddGrpB_Elevation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c deleted file mode 100644 index 0c4d81493..000000000 --- a/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AddGrpB_MsgCount.h" - -int -AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { - "MsgCount", - "MsgCount", - &asn_OP_NativeInteger, - asn_DEF_AddGrpB_MsgCount_tags_1, - sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) - /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) - /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ - { &asn_OER_type_AddGrpB_MsgCount_constr_1, &asn_PER_type_AddGrpB_MsgCount_constr_1, AddGrpB_MsgCount_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c deleted file mode 100644 index 1e42c3ca6..000000000 --- a/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AddGrpB_TimeMark.h" - -static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Year, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Month, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Day, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, summerTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SummerTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "summerTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, holiday), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Holiday, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "holiday" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AddGrpB_DayOfWeek, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dayofWeek" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, hour), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Hour, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, minute), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Minute, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, second), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Second, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, tenthSecond), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TenthSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "tenthSecond" - }, -}; -static const ber_tlv_tag_t asn_DEF_AddGrpB_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AddGrpB_TimeMark_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_AddGrpB_TimeMark_specs_1 = { - sizeof(struct AddGrpB_TimeMark), - offsetof(struct AddGrpB_TimeMark, _asn_ctx), - asn_MAP_AddGrpB_TimeMark_tag2el_1, - 10, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { - "TimeMark", - "TimeMark", - &asn_OP_SEQUENCE, - asn_DEF_AddGrpB_TimeMark_tags_1, - sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) - /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) - /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AddGrpB_TimeMark_1, - 10, /* Elements count */ - &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c deleted file mode 100644 index 7de5ed6bf..000000000 --- a/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AdvisorySpeed.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct AdvisorySpeed__regional), - offsetof(struct AdvisorySpeed__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "type" - }, - { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedAdvice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "distance" - }, - { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "class" - }, - { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { - sizeof(struct AdvisorySpeed), - offsetof(struct AdvisorySpeed, _asn_ctx), - asn_MAP_AdvisorySpeed_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { - "AdvisorySpeed", - "AdvisorySpeed", - &asn_OP_SEQUENCE, - asn_DEF_AdvisorySpeed_tags_1, - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeed_tags_1) - /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AdvisorySpeed_1, - 6, /* Elements count */ - &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c deleted file mode 100644 index a7d2b676e..000000000 --- a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AdvisorySpeedList.h" - -static asn_oer_constraints_t asn_OER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_AdvisorySpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { - sizeof(struct AdvisorySpeedList), - offsetof(struct AdvisorySpeedList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { - "AdvisorySpeedList", - "AdvisorySpeedList", - &asn_OP_SEQUENCE_OF, - asn_DEF_AdvisorySpeedList_tags_1, - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedList_tags_1) - /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ - { &asn_OER_type_AdvisorySpeedList_constr_1, &asn_PER_type_AdvisorySpeedList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_AdvisorySpeedList_1, - 1, /* Single element */ - &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c deleted file mode 100644 index 80a7b9d88..000000000 --- a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AdvisorySpeedType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "greenwave" }, - { 2, 8, "ecoDrive" }, - { 3, 7, "transit" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { - 2, /* ecoDrive(2) */ - 1, /* greenwave(1) */ - 0, /* none(0) */ - 3 /* transit(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { - asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { - "AdvisorySpeedType", - "AdvisorySpeedType", - &asn_OP_NativeEnumerated, - asn_DEF_AdvisorySpeedType_tags_1, - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ - sizeof(asn_DEF_AdvisorySpeedType_tags_1) - /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ - { &asn_OER_type_AdvisorySpeedType_constr_1, &asn_PER_type_AdvisorySpeedType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c deleted file mode 100644 index 162ee75b8..000000000 --- a/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AllowedManeuvers.h" - -int -AllowedManeuvers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 12)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { - { 0, 0 }, - 12 /* (SIZE(12..12)) */}; -asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { - "AllowedManeuvers", - "AllowedManeuvers", - &asn_OP_BIT_STRING, - asn_DEF_AllowedManeuvers_tags_1, - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ - sizeof(asn_DEF_AllowedManeuvers_tags_1) - /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ - { &asn_OER_type_AllowedManeuvers_constr_1, &asn_PER_type_AllowedManeuvers_constr_1, AllowedManeuvers_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Altitude.c b/src/tmx/Asn_J2735/src/r63/Altitude.c deleted file mode 100644 index cc01be1f4..000000000 --- a/src/tmx/Asn_J2735/src/r63/Altitude.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Altitude.h" - -asn_TYPE_member_t asn_MBR_Altitude_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeValue, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "value" - }, - { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AltitudeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { - sizeof(struct Altitude), - offsetof(struct Altitude, _asn_ctx), - asn_MAP_Altitude_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Altitude = { - "Altitude", - "Altitude", - &asn_OP_SEQUENCE, - asn_DEF_Altitude_tags_1, - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - asn_DEF_Altitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Altitude_tags_1) - /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Altitude_1, - 2, /* Elements count */ - &asn_SPC_Altitude_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c deleted file mode 100644 index c662ef1a8..000000000 --- a/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AltitudeConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { - { 0, 10, "alt-000-01" }, - { 1, 10, "alt-000-02" }, - { 2, 10, "alt-000-05" }, - { 3, 10, "alt-000-10" }, - { 4, 10, "alt-000-20" }, - { 5, 10, "alt-000-50" }, - { 6, 10, "alt-001-00" }, - { 7, 10, "alt-002-00" }, - { 8, 10, "alt-005-00" }, - { 9, 10, "alt-010-00" }, - { 10, 10, "alt-020-00" }, - { 11, 10, "alt-050-00" }, - { 12, 10, "alt-100-00" }, - { 13, 10, "alt-200-00" }, - { 14, 10, "outOfRange" }, - { 15, 11, "unavailable" } -}; -static const unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { - 0, /* alt-000-01(0) */ - 1, /* alt-000-02(1) */ - 2, /* alt-000-05(2) */ - 3, /* alt-000-10(3) */ - 4, /* alt-000-20(4) */ - 5, /* alt-000-50(5) */ - 6, /* alt-001-00(6) */ - 7, /* alt-002-00(7) */ - 8, /* alt-005-00(8) */ - 9, /* alt-010-00(9) */ - 10, /* alt-020-00(10) */ - 11, /* alt-050-00(11) */ - 12, /* alt-100-00(12) */ - 13, /* alt-200-00(13) */ - 14, /* outOfRange(14) */ - 15 /* unavailable(15) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { - asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { - "AltitudeConfidence", - "AltitudeConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_AltitudeConfidence_tags_1, - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeConfidence_tags_1) - /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_AltitudeConfidence_constr_1, &asn_PER_type_AltitudeConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AltitudeValue.c b/src/tmx/Asn_J2735/src/r63/AltitudeValue.c deleted file mode 100644 index f5475b8e7..000000000 --- a/src/tmx/Asn_J2735/src/r63/AltitudeValue.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AltitudeValue.h" - -int -AltitudeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -100000 && value <= 800001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AltitudeValue_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-100000..800001) */, - -1}; -asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { - "AltitudeValue", - "AltitudeValue", - &asn_OP_NativeInteger, - asn_DEF_AltitudeValue_tags_1, - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - asn_DEF_AltitudeValue_tags_1, /* Same as above */ - sizeof(asn_DEF_AltitudeValue_tags_1) - /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ - { &asn_OER_type_AltitudeValue_constr_1, &asn_PER_type_AltitudeValue_constr_1, AltitudeValue_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c deleted file mode 100644 index 60ab54971..000000000 --- a/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AmbientAirPressure.h" - -int -AmbientAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { - "AmbientAirPressure", - "AmbientAirPressure", - &asn_OP_NativeInteger, - asn_DEF_AmbientAirPressure_tags_1, - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirPressure_tags_1) - /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ - { &asn_OER_type_AmbientAirPressure_constr_1, &asn_PER_type_AmbientAirPressure_constr_1, AmbientAirPressure_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c deleted file mode 100644 index 6c2241667..000000000 --- a/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AmbientAirTemperature.h" - -int -AmbientAirTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 191)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..191) */, - -1}; -asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { - "AmbientAirTemperature", - "AmbientAirTemperature", - &asn_OP_NativeInteger, - asn_DEF_AmbientAirTemperature_tags_1, - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_AmbientAirTemperature_tags_1) - /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ - { &asn_OER_type_AmbientAirTemperature_constr_1, &asn_PER_type_AmbientAirTemperature_constr_1, AmbientAirTemperature_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AngularVelocity.c b/src/tmx/Asn_J2735/src/r63/AngularVelocity.c deleted file mode 100644 index eedd75054..000000000 --- a/src/tmx/Asn_J2735/src/r63/AngularVelocity.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "AngularVelocity.h" - -asn_TYPE_member_t asn_MBR_AngularVelocity_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, pitchRate), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PitchRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pitchRate" - }, - { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, rollRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RollRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rollRate" - }, -}; -static const ber_tlv_tag_t asn_DEF_AngularVelocity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AngularVelocity_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRate */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRate */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1 = { - sizeof(struct AngularVelocity), - offsetof(struct AngularVelocity, _asn_ctx), - asn_MAP_AngularVelocity_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AngularVelocity = { - "AngularVelocity", - "AngularVelocity", - &asn_OP_SEQUENCE, - asn_DEF_AngularVelocity_tags_1, - sizeof(asn_DEF_AngularVelocity_tags_1) - /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ - asn_DEF_AngularVelocity_tags_1, /* Same as above */ - sizeof(asn_DEF_AngularVelocity_tags_1) - /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AngularVelocity_1, - 2, /* Elements count */ - &asn_SPC_AngularVelocity_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c b/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c deleted file mode 100644 index 8ff44510f..000000000 --- a/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "AngularVelocityConfidence.h" - -asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[] = { - { ATF_POINTER, 2, offsetof(struct AngularVelocityConfidence, pitchRateConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PitchRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pitchRateConfidence" - }, - { ATF_POINTER, 1, offsetof(struct AngularVelocityConfidence, rollRateConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RollRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rollRateConfidence" - }, -}; -static const int asn_MAP_AngularVelocityConfidence_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_AngularVelocityConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AngularVelocityConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRateConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRateConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1 = { - sizeof(struct AngularVelocityConfidence), - offsetof(struct AngularVelocityConfidence, _asn_ctx), - asn_MAP_AngularVelocityConfidence_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_AngularVelocityConfidence_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence = { - "AngularVelocityConfidence", - "AngularVelocityConfidence", - &asn_OP_SEQUENCE, - asn_DEF_AngularVelocityConfidence_tags_1, - sizeof(asn_DEF_AngularVelocityConfidence_tags_1) - /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ - asn_DEF_AngularVelocityConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AngularVelocityConfidence_tags_1) - /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AngularVelocityConfidence_1, - 2, /* Elements count */ - &asn_SPC_AngularVelocityConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c deleted file mode 100644 index 381663afe..000000000 --- a/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AnimalPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 13, "animalMounted" }, - { 3, 19, "animalDrawnCarriage" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { - 3, /* animalDrawnCarriage(3) */ - 2, /* animalMounted(2) */ - 1, /* otherTypes(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { - asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { - "AnimalPropelledType", - "AnimalPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_AnimalPropelledType_tags_1, - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalPropelledType_tags_1) - /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ - { &asn_OER_type_AnimalPropelledType_constr_1, &asn_PER_type_AnimalPropelledType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AnimalType.c b/src/tmx/Asn_J2735/src/r63/AnimalType.c deleted file mode 100644 index 525b3e61b..000000000 --- a/src/tmx/Asn_J2735/src/r63/AnimalType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AnimalType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AnimalType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AnimalType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "serviceUse" }, - { 2, 3, "pet" }, - { 3, 4, "farm" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { - 3, /* farm(3) */ - 2, /* pet(2) */ - 1, /* serviceUse(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { - asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AnimalType = { - "AnimalType", - "AnimalType", - &asn_OP_NativeEnumerated, - asn_DEF_AnimalType_tags_1, - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - asn_DEF_AnimalType_tags_1, /* Same as above */ - sizeof(asn_DEF_AnimalType_tags_1) - /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ - { &asn_OER_type_AnimalType_constr_1, &asn_PER_type_AnimalType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AnimalType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c deleted file mode 100644 index dd488fd52..000000000 --- a/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AntennaOffsetSet.h" - -asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetX), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "antOffsetX" - }, - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetY), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B09, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "antOffsetY" - }, - { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetZ), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "antOffsetZ" - }, -}; -static const ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AntennaOffsetSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* antOffsetX */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* antOffsetY */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* antOffsetZ */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1 = { - sizeof(struct AntennaOffsetSet), - offsetof(struct AntennaOffsetSet, _asn_ctx), - asn_MAP_AntennaOffsetSet_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { - "AntennaOffsetSet", - "AntennaOffsetSet", - &asn_OP_SEQUENCE, - asn_DEF_AntennaOffsetSet_tags_1, - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ - sizeof(asn_DEF_AntennaOffsetSet_tags_1) - /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AntennaOffsetSet_1, - 3, /* Elements count */ - &asn_SPC_AntennaOffsetSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c deleted file mode 100644 index f68ae2220..000000000 --- a/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AntiLockBrakeStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { - asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { - "AntiLockBrakeStatus", - "AntiLockBrakeStatus", - &asn_OP_NativeEnumerated, - asn_DEF_AntiLockBrakeStatus_tags_1, - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) - /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_AntiLockBrakeStatus_constr_1, &asn_PER_type_AntiLockBrakeStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ApproachID.c b/src/tmx/Asn_J2735/src/r63/ApproachID.c deleted file mode 100644 index a4b3e8951..000000000 --- a/src/tmx/Asn_J2735/src/r63/ApproachID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ApproachID.h" - -int -ApproachID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ApproachID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -asn_per_constraints_t asn_PER_type_ApproachID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ApproachID = { - "ApproachID", - "ApproachID", - &asn_OP_NativeInteger, - asn_DEF_ApproachID_tags_1, - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - asn_DEF_ApproachID_tags_1, /* Same as above */ - sizeof(asn_DEF_ApproachID_tags_1) - /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ - { &asn_OER_type_ApproachID_constr_1, &asn_PER_type_ApproachID_constr_1, ApproachID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c b/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c deleted file mode 100644 index c86811bbd..000000000 --- a/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ApproachOrLane.h" - -static asn_oer_constraints_t asn_OER_type_ApproachOrLane_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ApproachOrLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.approach), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "approach" - }, - { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.lane), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lane" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_ApproachOrLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* approach */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lane */ -}; -asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1 = { - sizeof(struct ApproachOrLane), - offsetof(struct ApproachOrLane, _asn_ctx), - offsetof(struct ApproachOrLane, present), - sizeof(((struct ApproachOrLane *)0)->present), - asn_MAP_ApproachOrLane_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_ApproachOrLane = { - "ApproachOrLane", - "ApproachOrLane", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_ApproachOrLane_constr_1, &asn_PER_type_ApproachOrLane_constr_1, CHOICE_constraint }, - asn_MBR_ApproachOrLane_1, - 2, /* Elements count */ - &asn_SPC_ApproachOrLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Attachment.c b/src/tmx/Asn_J2735/src/r63/Attachment.c deleted file mode 100644 index 3a11c3dd4..000000000 --- a/src/tmx/Asn_J2735/src/r63/Attachment.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Attachment.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Attachment_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_Attachment_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "stroller" }, - { 2, 14, "bicycleTrailer" }, - { 3, 4, "cart" }, - { 4, 10, "wheelchair" }, - { 5, 26, "otherWalkAssistAttachments" }, - { 6, 3, "pet" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_Attachment_enum2value_1[] = { - 2, /* bicycleTrailer(2) */ - 3, /* cart(3) */ - 5, /* otherWalkAssistAttachments(5) */ - 6, /* pet(6) */ - 1, /* stroller(1) */ - 0, /* unavailable(0) */ - 4 /* wheelchair(4) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { - asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Attachment = { - "Attachment", - "Attachment", - &asn_OP_NativeEnumerated, - asn_DEF_Attachment_tags_1, - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - asn_DEF_Attachment_tags_1, /* Same as above */ - sizeof(asn_DEF_Attachment_tags_1) - /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ - { &asn_OER_type_Attachment_constr_1, &asn_PER_type_Attachment_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Attachment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c b/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c deleted file mode 100644 index bf3a0e020..000000000 --- a/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AttachmentRadius.h" - -int -AttachmentRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AttachmentRadius_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { - "AttachmentRadius", - "AttachmentRadius", - &asn_OP_NativeInteger, - asn_DEF_AttachmentRadius_tags_1, - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - asn_DEF_AttachmentRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_AttachmentRadius_tags_1) - /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ - { &asn_OER_type_AttachmentRadius_constr_1, &asn_PER_type_AttachmentRadius_constr_1, AttachmentRadius_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Attitude.c b/src/tmx/Asn_J2735/src/r63/Attitude.c deleted file mode 100644 index 4af80a825..000000000 --- a/src/tmx/Asn_J2735/src/r63/Attitude.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "Attitude.h" - -asn_TYPE_member_t asn_MBR_Attitude_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Attitude, pitch), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PitchDetected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pitch" - }, - { ATF_NOFLAGS, 0, offsetof(struct Attitude, roll), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RollDetected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roll" - }, - { ATF_NOFLAGS, 0, offsetof(struct Attitude, yaw), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawDetected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yaw" - }, -}; -static const ber_tlv_tag_t asn_DEF_Attitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Attitude_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitch */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* roll */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yaw */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1 = { - sizeof(struct Attitude), - offsetof(struct Attitude, _asn_ctx), - asn_MAP_Attitude_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Attitude = { - "Attitude", - "Attitude", - &asn_OP_SEQUENCE, - asn_DEF_Attitude_tags_1, - sizeof(asn_DEF_Attitude_tags_1) - /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ - asn_DEF_Attitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Attitude_tags_1) - /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Attitude_1, - 3, /* Elements count */ - &asn_SPC_Attitude_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c b/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c deleted file mode 100644 index f521222c5..000000000 --- a/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "AttitudeConfidence.h" - -asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, pitchConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pitchConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, rollConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rollConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, yawConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yawConfidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_AttitudeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AttitudeConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rollConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yawConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1 = { - sizeof(struct AttitudeConfidence), - offsetof(struct AttitudeConfidence, _asn_ctx), - asn_MAP_AttitudeConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence = { - "AttitudeConfidence", - "AttitudeConfidence", - &asn_OP_SEQUENCE, - asn_DEF_AttitudeConfidence_tags_1, - sizeof(asn_DEF_AttitudeConfidence_tags_1) - /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ - asn_DEF_AttitudeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_AttitudeConfidence_tags_1) - /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AttitudeConfidence_1, - 3, /* Elements count */ - &asn_SPC_AttitudeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c deleted file mode 100644 index 9a8075e5a..000000000 --- a/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AuxiliaryBrakeStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { - asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { - "AuxiliaryBrakeStatus", - "AuxiliaryBrakeStatus", - &asn_OP_NativeEnumerated, - asn_DEF_AuxiliaryBrakeStatus_tags_1, - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) - /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_AuxiliaryBrakeStatus_constr_1, &asn_PER_type_AuxiliaryBrakeStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AxleLocation.c b/src/tmx/Asn_J2735/src/r63/AxleLocation.c deleted file mode 100644 index 0945bc6ab..000000000 --- a/src/tmx/Asn_J2735/src/r63/AxleLocation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AxleLocation.h" - -int -AxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AxleLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleLocation = { - "AxleLocation", - "AxleLocation", - &asn_OP_NativeInteger, - asn_DEF_AxleLocation_tags_1, - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - asn_DEF_AxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleLocation_tags_1) - /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ - { &asn_OER_type_AxleLocation_constr_1, &asn_PER_type_AxleLocation_constr_1, AxleLocation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeight.c b/src/tmx/Asn_J2735/src/r63/AxleWeight.c deleted file mode 100644 index 162199755..000000000 --- a/src/tmx/Asn_J2735/src/r63/AxleWeight.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AxleWeight.h" - -int -AxleWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 64255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_AxleWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeight = { - "AxleWeight", - "AxleWeight", - &asn_OP_NativeInteger, - asn_DEF_AxleWeight_tags_1, - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - asn_DEF_AxleWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeight_tags_1) - /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ - { &asn_OER_type_AxleWeight_constr_1, &asn_PER_type_AxleWeight_constr_1, AxleWeight_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeightList.c b/src/tmx/Asn_J2735/src/r63/AxleWeightList.c deleted file mode 100644 index b55198f92..000000000 --- a/src/tmx/Asn_J2735/src/r63/AxleWeightList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AxleWeightList.h" - -static asn_oer_constraints_t asn_OER_type_AxleWeightList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_AxleWeightList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_AxleWeightSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_AxleWeightList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1 = { - sizeof(struct AxleWeightList), - offsetof(struct AxleWeightList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeightList = { - "AxleWeightList", - "AxleWeightList", - &asn_OP_SEQUENCE_OF, - asn_DEF_AxleWeightList_tags_1, - sizeof(asn_DEF_AxleWeightList_tags_1) - /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ - asn_DEF_AxleWeightList_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeightList_tags_1) - /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ - { &asn_OER_type_AxleWeightList_constr_1, &asn_PER_type_AxleWeightList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_AxleWeightList_1, - 1, /* Single element */ - &asn_SPC_AxleWeightList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c b/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c deleted file mode 100644 index ec283f9e3..000000000 --- a/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "AxleWeightSet.h" - -asn_TYPE_member_t asn_MBR_AxleWeightSet_1[] = { - { ATF_POINTER, 2, offsetof(struct AxleWeightSet, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "location" - }, - { ATF_POINTER, 1, offsetof(struct AxleWeightSet, weight), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleWeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "weight" - }, -}; -static const int asn_MAP_AxleWeightSet_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_AxleWeightSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_AxleWeightSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ -}; -asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1 = { - sizeof(struct AxleWeightSet), - offsetof(struct AxleWeightSet, _asn_ctx), - asn_MAP_AxleWeightSet_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_AxleWeightSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_AxleWeightSet = { - "AxleWeightSet", - "AxleWeightSet", - &asn_OP_SEQUENCE, - asn_DEF_AxleWeightSet_tags_1, - sizeof(asn_DEF_AxleWeightSet_tags_1) - /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ - asn_DEF_AxleWeightSet_tags_1, /* Same as above */ - sizeof(asn_DEF_AxleWeightSet_tags_1) - /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_AxleWeightSet_1, - 2, /* Elements count */ - &asn_SPC_AxleWeightSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BIT_STRING.c b/src/tmx/Asn_J2735/src/r63/BIT_STRING.c deleted file mode 100644 index e8d7354c8..000000000 --- a/src/tmx/Asn_J2735/src/r63/BIT_STRING.c +++ /dev/null @@ -1,656 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * BIT STRING basic type description. - */ -static const ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs = { - sizeof(BIT_STRING_t), - offsetof(BIT_STRING_t, _asn_ctx), - ASN_OSUBV_BIT -}; -asn_TYPE_operation_t asn_OP_BIT_STRING = { - OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ - BIT_STRING_print, - BIT_STRING_compare, - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_decode_xer_binary, - BIT_STRING_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - BIT_STRING_decode_oer, - BIT_STRING_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - BIT_STRING_decode_uper, /* Unaligned PER decoder */ - BIT_STRING_encode_uper, /* Unaligned PER encoder */ - OCTET_STRING_decode_aper, /* Aligned PER decoder */ - OCTET_STRING_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - BIT_STRING_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { - "BIT STRING", - "BIT_STRING", - &asn_OP_BIT_STRING, - asn_DEF_BIT_STRING_tags, - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - asn_DEF_BIT_STRING_tags, /* Same as above */ - sizeof(asn_DEF_BIT_STRING_tags) - / sizeof(asn_DEF_BIT_STRING_tags[0]), - { 0, 0, BIT_STRING_constraint }, - 0, 0, /* No members */ - &asn_SPC_BIT_STRING_specs -}; - -/* - * BIT STRING generic constraint. - */ -int -BIT_STRING_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - - if(st && st->buf) { - if((st->size == 0 && st->bits_unused) - || st->bits_unused < 0 || st->bits_unused > 7) { - ASN__CTFAIL(app_key, td, sptr, - "%s: invalid padding byte (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - -static const char *_bit_pattern[16] = { - "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", - "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" -}; - -asn_enc_rval_t -BIT_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - char scratch[128]; - char *p = scratch; - char *scend = scratch + (sizeof(scratch) - 10); - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - int xcan = (flags & XER_F_CANONICAL); - uint8_t *buf; - uint8_t *end; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size - 1; /* Last byte is special */ - - /* - * Binary dump - */ - for(; buf < end; buf++) { - int v = *buf; - int nline = xcan?0:(((buf - st->buf) % 8) == 0); - if(p >= scend || nline) { - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - if(nline) ASN__TEXT_INDENT(1, ilevel); - } - memcpy(p + 0, _bit_pattern[v >> 4], 4); - memcpy(p + 4, _bit_pattern[v & 0x0f], 4); - p += 8; - } - - if(!xcan && ((buf - st->buf) % 8) == 0) - ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - - if(buf == end) { - int v = *buf; - int ubits = st->bits_unused; - int i; - for(i = 7; i >= ubits; i--) - *p++ = (v & (1 << i)) ? 0x31 : 0x30; - ASN__CALLBACK(scratch, p - scratch); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - - -/* - * BIT STRING specific contents printer. - */ -int -BIT_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - char scratch[64]; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - uint8_t *buf; - uint8_t *end; - char *p = scratch; - - (void)td; /* Unused argument */ - - if(!st || !st->buf) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - ilevel++; - buf = st->buf; - end = buf + st->size; - - /* - * Hexadecimal dump. - */ - for(; buf < end; buf++) { - if((buf - st->buf) % 16 == 0 && (st->size > 16) - && buf != st->buf) { - _i_INDENT(1); - /* Dump the string */ - if(cb(scratch, p - scratch, app_key) < 0) return -1; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Eat the tailing space */ - - if((st->size > 16)) { - _i_INDENT(1); - } - - /* Dump the incomplete 16-bytes row */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - if(st->bits_unused) { - int ret = snprintf(scratch, sizeof(scratch), " (%d bit%s unused)", - st->bits_unused, st->bits_unused == 1 ? "" : "s"); - assert(ret > 0 && ret < (ssize_t)sizeof(scratch)); - if(ret > 0 && ret < (ssize_t)sizeof(scratch) - && cb(scratch, ret, app_key) < 0) - return -1; - } - - return 0; -} - -/* - * Non-destructively remove the trailing 0-bits from the given bit string. - */ -static const BIT_STRING_t * -BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp) { - const uint8_t *b; - union { - const uint8_t *c_buf; - uint8_t *nc_buf; - } unconst; - - if(st->size == 0) { - assert(st->bits_unused == 0); - return st; - } else { - for(b = &st->buf[st->size - 1]; b > st->buf && *b == 0; b--) { - ; - } - /* b points to the last byte which may contain data */ - if(*b) { - int unused = 7; - uint8_t v = *b; - v &= -(int8_t)v; - if(v & 0x0F) unused -= 4; - if(v & 0x33) unused -= 2; - if(v & 0x55) unused -= 1; - tmp->size = b-st->buf + 1; - tmp->bits_unused = unused; - } else { - tmp->size = b-st->buf; - tmp->bits_unused = 0; - } - - assert(b >= st->buf); - } - - unconst.c_buf = st->buf; - tmp->buf = unconst.nc_buf; - return tmp; -} - -/* - * Lexicographically compare the common prefix of both strings, - * and if it is the same return -1 for the smallest string. - */ -int -BIT_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - /* - * Remove information about trailing bits, since - * X.680 (08/2015) #22.7 "ensure that different semantics are not" - * "associated with [values that differ only in] the trailing 0 bits." - */ - BIT_STRING_t compact_a, compact_b; - const BIT_STRING_t *a = BIT_STRING__compactify(aptr, &compact_a); - const BIT_STRING_t *b = BIT_STRING__compactify(bptr, &compact_b); - const asn_OCTET_STRING_specifics_t *specs = td->specifics; - - assert(specs && specs->subvariant == ASN_OSUBV_BIT); - - if(a && b) { - size_t common_prefix_size = a->size <= b->size ? a->size : b->size; - int ret = memcmp(a->buf, b->buf, common_prefix_size); - if(ret == 0) { - /* Figure out which string with equal prefixes is longer. */ - if(a->size < b->size) { - return -1; - } else if(a->size > b->size) { - return 1; - } else { - /* Figure out how many unused bits */ - if(a->bits_unused > b->bits_unused) { - return -1; - } else if(a->bits_unused < b->bits_unused) { - return 1; - } else { - return 0; - } - } - } else { - return ret; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -static asn_per_constraint_t asn_DEF_BIT_STRING_constraint_size = { - APC_SEMI_CONSTRAINED, -1, -1, 0, 0}; - -asn_dec_rval_t -BIT_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - - (void)opt_codec_ctx; - - if(pc) { - csiz = &pc->size; - } else { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - - if(specs->subvariant != ASN_OSUBV_BIT) { - ASN_DEBUG("Subvariant %d is not BIT OSUBV_BIT", specs->subvariant); - RETURN(RC_FAIL); - } - - /* - * Allocate the string. - */ - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - st->size = (csiz->upper_bound + 7) >> 3; - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - ASN_DEBUG("Encoding BIT STRING size %ld", csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, csiz->upper_bound); - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += csiz->upper_bound; - st->buf[st->size] = 0; - st->bits_unused = (8 - (csiz->upper_bound & 0x7)) & 0x7; - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, - &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - len_bits = raw_len; - len_bytes = (len_bits + 7) >> 3; - if(len_bits & 0x7) st->bits_unused = 8 - (len_bits & 0x7); - /* len_bits be multiple of 16K if repeat is set */ - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -BIT_STRING_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *csiz; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - BIT_STRING_t compact_bstr; /* Do not modify this directly! */ - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - size_t size_in_bits; - const uint8_t *buf; - int ret; - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(specs->subvariant == ASN_OSUBV_BIT) { - if((st->size == 0 && st->bits_unused) || (st->bits_unused & ~7)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - - if(pc) { - csiz = &pc->size; - } else { - csiz = &asn_DEF_BIT_STRING_constraint_size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - /* Figure out the size without the trailing bits */ - st = BIT_STRING__compactify(st, &compact_bstr); - size_in_bits = 8 * st->size - st->bits_unused; - - ASN_DEBUG( - "Encoding %s into %" ASN_PRI_SIZE " bits" - " (%ld..%ld, effective %d)%s", - td->name, size_in_bits, csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out whether size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((ssize_t)size_in_bits > csiz->upper_bound) { - if(ct_extensible) { - csiz = &asn_DEF_BIT_STRING_constraint_size; - inext = 1; - } else { - ASN__ENCODE_FAILED; - } - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - if(csiz->effective_bits >= 0 && !inext) { - int add_trailer = (ssize_t)size_in_bits < csiz->lower_bound; - ASN_DEBUG( - "Encoding %" ASN_PRI_SIZE " bytes (%ld), length (in %d bits) trailer %d; actual " - "value %" ASN_PRI_SSIZE "", - st->size, size_in_bits - csiz->lower_bound, csiz->effective_bits, - add_trailer, - add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound); - ret = per_put_few_bits( - po, add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound, - csiz->effective_bits); - if(ret) ASN__ENCODE_FAILED; - ret = per_put_many_bits(po, st->buf, size_in_bits); - if(ret) ASN__ENCODE_FAILED; - if(add_trailer) { - static const uint8_t zeros[16]; - size_t trailing_zero_bits = csiz->lower_bound - size_in_bits; - while(trailing_zero_bits > 0) { - if(trailing_zero_bits > 8 * sizeof(zeros)) { - ret = per_put_many_bits(po, zeros, 8 * sizeof(zeros)); - trailing_zero_bits -= 8 * sizeof(zeros); - } else { - ret = per_put_many_bits(po, zeros, trailing_zero_bits); - trailing_zero_bits = 0; - } - if(ret) ASN__ENCODE_FAILED; - } - } - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); - - buf = st->buf; - do { - int need_eom = 0; - ssize_t maySave = uper_put_length(po, size_in_bits, &need_eom); - if(maySave < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "", maySave, size_in_bits); - - ret = per_put_many_bits(po, buf, maySave); - if(ret) ASN__ENCODE_FAILED; - - buf += maySave >> 3; - size_in_bits -= maySave; - assert(!(maySave & 0x07) || !size_in_bits); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size_in_bits); - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -asn_random_fill_result_t -BIT_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_BIT_STRING_specs; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - static unsigned lengths[] = {0, 1, 2, 3, 4, 8, - 126, 127, 128, 16383, 16384, 16385, - 65534, 65535, 65536, 65537}; - uint8_t *buf; - uint8_t *bend; - uint8_t *b; - size_t rnd_bits, rnd_len; - BIT_STRING_t *st; - - if(max_length == 0) return result_skipped; - - switch(specs->subvariant) { - case ASN_OSUBV_ANY: - return result_failed; - case ASN_OSUBV_BIT: - break; - default: - break; - } - - /* Figure out how far we should go */ - rnd_bits = lengths[asn_random_between( - 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_CONSTRAINED) { - long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length - ? pc->upper_bound - : (ssize_t)max_length; - if(max_length < (size_t)pc->lower_bound) { - return result_skipped; - } - if(pc->flags & APC_EXTENSIBLE) { - switch(asn_random_between(0, 5)) { - case 0: - if(pc->lower_bound > 0) { - rnd_bits = pc->lower_bound - 1; - break; - } - /* Fall through */ - case 1: - rnd_bits = pc->upper_bound + 1; - break; - case 2: - /* Keep rnd_bits from the table */ - if(rnd_bits < max_length) { - break; - } - /* Fall through */ - default: - rnd_bits = asn_random_between(pc->lower_bound, - suggested_upper_bound); - } - } else { - rnd_bits = - asn_random_between(pc->lower_bound, suggested_upper_bound); - } - } else { - rnd_bits = asn_random_between(0, max_length - 1); - } - } else if(rnd_bits >= max_length) { - rnd_bits = asn_random_between(0, max_length - 1); - } - - rnd_len = (rnd_bits + 7) / 8; - buf = CALLOC(1, rnd_len + 1); - if(!buf) return result_failed; - - bend = &buf[rnd_len]; - - for(b = buf; b < bend; b++) { - *(uint8_t *)b = asn_random_between(0, 255); - } - *b = 0; /* Zero-terminate just in case. */ - - if(*sptr) { - st = *sptr; - FREEMEM(st->buf); - } else { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) { - FREEMEM(buf); - return result_failed; - } - } - - st->buf = buf; - st->size = rnd_len; - st->bits_unused = (8 - (rnd_bits & 0x7)) & 0x7; - if(st->bits_unused) { - assert(st->size > 0); - st->buf[st->size-1] &= 0xff << st->bits_unused; - } - - result_ok.length = st->size; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c deleted file mode 100644 index aff5075cd..000000000 --- a/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c +++ /dev/null @@ -1,174 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -asn_dec_rval_t -BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - - (void)opt_codec_ctx; - - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(ct_size >= 0) { - expected_length = (ct_size + 7) >> 3; - st->bits_unused = (8 - (ct_size & 7)) & 7; - } else { - /* - * X.696 (08/2015) #13.3.1 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(expected_length < 1) { - ASN__DECODE_FAILED; - } else if(expected_length > size) { - ASN__DECODE_STARVED; - } - - st->bits_unused = ((const uint8_t *)ptr)[0]; - if(st->bits_unused & ~7) { - ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name); - ASN__DECODE_FAILED; - } - ptr = (const char *)ptr + 1; - size--; - expected_length--; - rval.consumed = len_len + 1; - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - if(expected_length > 0) { - buf[expected_length - 1] &= (0xff << st->bits_unused); - } - - rval.consumed += expected_length; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - asn_enc_rval_t erval = {0, 0, 0}; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - size_t trailing_zeros = 0; - int fix_last_byte = 0; - - if(!st) ASN__ENCODE_FAILED; - - if(st->bits_unused & ~7) { - ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range", - st->bits_unused); - ASN__ENCODE_FAILED; - } - if(st->bits_unused && !(st->size && st->buf)) { - ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name, - st->bits_unused); - ASN__ENCODE_FAILED; - } - - if(ct_size >= 0) { - size_t ct_bytes = (ct_size + 7) >> 3; - if(st->size > ct_bytes) { - ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "", - td->name, 8 * st->size - st->bits_unused, ct_size); - ASN__ENCODE_FAILED; - } - trailing_zeros = ct_bytes - st->size; /* Allow larger constraint */ - } else { - uint8_t ub = st->bits_unused & 7; - ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key); - if(len_len < 0) ASN__ENCODE_FAILED; - if(cb(&ub, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - erval.encoded += len_len + 1; - } - - if(st->bits_unused) { - if(st->buf[st->size - 1] & (0xff << st->bits_unused)) { - fix_last_byte = 1; - } - } - - if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) { - ASN__ENCODE_FAILED; - } - - if(fix_last_byte) { - uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused); - if(cb(&b, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - } - - erval.encoded += st->size; - - if(trailing_zeros) { - static uint8_t zeros[16]; - while(trailing_zeros > 0) { - int ret; - if(trailing_zeros < sizeof(zeros)) { - ret = cb(zeros, trailing_zeros, app_key); - erval.encoded += trailing_zeros; - } else { - ret = cb(zeros, sizeof(zeros), app_key); - erval.encoded += sizeof(zeros); - } - if(ret < 0) ASN__ENCODE_FAILED; - } - } - - return erval; -} - - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/BOOLEAN.c b/src/tmx/Asn_J2735/src/r63/BOOLEAN.c deleted file mode 100644 index 25831e2b6..000000000 --- a/src/tmx/Asn_J2735/src/r63/BOOLEAN.c +++ /dev/null @@ -1,492 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * BOOLEAN basic type description. - */ -static const ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_operation_t asn_OP_BOOLEAN = { - BOOLEAN_free, - BOOLEAN_print, - BOOLEAN_compare, - BOOLEAN_decode_ber, - BOOLEAN_encode_der, - BOOLEAN_decode_xer, - BOOLEAN_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - BOOLEAN_decode_oer, - BOOLEAN_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - BOOLEAN_decode_uper, /* Unaligned PER decoder */ - BOOLEAN_encode_uper, /* Unaligned PER encoder */ - BOOLEAN_decode_aper, /* Aligned PER decoder */ - BOOLEAN_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - BOOLEAN_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { - "BOOLEAN", - "BOOLEAN", - &asn_OP_BOOLEAN, - asn_DEF_BOOLEAN_tags, - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - asn_DEF_BOOLEAN_tags, /* Same as above */ - sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Decode BOOLEAN type. - */ -asn_dec_rval_t -BOOLEAN_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **bool_value, - const void *buf_ptr, size_t size, int tag_mode) { - BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; - asn_dec_rval_t rval; - ber_tlv_len_t length; - ber_tlv_len_t lidx; - - if(st == NULL) { - st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); - if(st == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("Boolean length is %d bytes", (int)length); - - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * Compute boolean value. - */ - for(*st = 0, lidx = 0; - (lidx < length) && *st == 0; lidx++) { - /* - * Very simple approach: read bytes until the end or - * value is already TRUE. - * BOOLEAN is not supposed to contain meaningful data anyway. - */ - *st |= ((const uint8_t *)buf_ptr)[lidx]; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", - (long)rval.consumed, (long)length, - td->name, *st); - - return rval; -} - -asn_enc_rval_t -BOOLEAN_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - - erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb) { - uint8_t bool_value; - - bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ - - if(cb(&bool_value, 1, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } - - erval.encoded += 1; - - ASN__ENCODED_OK(erval); -} - - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -BOOLEAN__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - BOOLEAN_t *st = (BOOLEAN_t *)sptr; - const char *p = (const char *)chunk_buf; - - (void)td; - - if(chunk_size && p[0] == 0x3c /* '<' */) { - switch(xer_check_tag(chunk_buf, chunk_size, "false")) { - case XCT_BOTH: - /* "" */ - *st = 0; - break; - case XCT_UNKNOWN_BO: - if(xer_check_tag(chunk_buf, chunk_size, "true") - != XCT_BOTH) - return XPBD_BROKEN_ENCODING; - /* "" */ - *st = 1; /* Or 0xff as in DER?.. */ - break; - default: - return XPBD_BROKEN_ENCODING; - } - return XPBD_BODY_CONSUMED; - } else { - return XPBD_BROKEN_ENCODING; - } -} - - -asn_dec_rval_t -BOOLEAN_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, - BOOLEAN__xer_body_decode); -} - -asn_enc_rval_t -BOOLEAN_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - - (void)ilevel; - (void)flags; - - if(!st) ASN__ENCODE_FAILED; - - if(*st) { - ASN__CALLBACK("", 7); - } else { - ASN__CALLBACK("", 8); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -int -BOOLEAN_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - const char *buf; - size_t buflen; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st) { - if(*st) { - buf = "TRUE"; - buflen = 4; - } else { - buf = "FALSE"; - buflen = 5; - } - } else { - buf = ""; - buflen = 8; - } - - return (cb(buf, buflen, app_key) < 0) ? -1 : 0; -} - -void -BOOLEAN_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(td && ptr) { - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, sizeof(BOOLEAN_t)); - break; - } - } -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -BOOLEAN_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - BOOLEAN_t *st = (BOOLEAN_t *)*sptr; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - - if(!st) { - st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - /* - * Extract a single bit - */ - switch(per_get_few_bits(pd, 1)) { - case 1: *st = 1; break; - case 0: *st = 0; break; - case -1: default: ASN__DECODE_STARVED; - } - - ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); - - rv.code = RC_OK; - rv.consumed = 1; - return rv; -} - - -asn_enc_rval_t -BOOLEAN_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - if(per_put_few_bits(po, *st ? 1 : 0, 1)) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -BOOLEAN_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - BOOLEAN_t *st = (BOOLEAN_t *)*sptr; - - (void)opt_codec_ctx; - (void)constraints; - (void)td; - - if(!st) { - st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - /* - * Extract a single bit - */ - switch(per_get_few_bits(pd, 1)) { - case 1: - *st = 1; - break; - case 0: - *st = 0; - break; - case -1: - default: - ASN__DECODE_STARVED; - } - - ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); - - rv.code = RC_OK; - rv.consumed = 1; - return rv; -} - -asn_enc_rval_t -BOOLEAN_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - if(per_put_few_bits(po, *st ? 1 : 0, 1)) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -#ifndef ASN_DISABLE_OER_SUPPORT - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -BOOLEAN_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = { 1, 0, 0 }; - const BOOLEAN_t *st = sptr; - uint8_t bool_value = *st ? 0xff : 0; /* 0xff mandated by OER */ - - (void)td; - (void)constraints; /* Constraints are unused in OER */ - - if(cb(&bool_value, 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} - -asn_dec_rval_t -BOOLEAN_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - asn_dec_rval_t ok = {RC_OK, 1}; - BOOLEAN_t *st; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; /* Constraints are unused in OER */ - - if(size < 1) { - ASN__DECODE_STARVED; - } - - if(!(st = *sptr)) { - st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - *st = *(const uint8_t *)ptr; - - return ok; -} - - - -#endif - -int -BOOLEAN_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const BOOLEAN_t *a = aptr; - const BOOLEAN_t *b = bptr; - - (void)td; - - if(a && b) { - if(!*a == !*b) { /* TRUE can be encoded by any non-zero byte. */ - return 0; - } else if(!*a) { - return -1; - } else { - return 1; - } - } else if(!a) { - return -1; - } else { - return 1; - } -} - -asn_random_fill_result_t -BOOLEAN_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - BOOLEAN_t *st = *sptr; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(st == NULL) { - return result_failed; - } - } - - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->value; - if(pc->flags & APC_CONSTRAINED) { - *st = asn_random_between(pc->lower_bound, pc->upper_bound); - return result_ok; - } - } - - /* Simulate booleans that are sloppily set and biased. */ - switch(asn_random_between(0, 7)) { - case 0: - case 1: - case 2: - *st = 0; break; - case 3: *st = -1; break; - case 4: *st = 1; break; - case 5: *st = INT_MIN; break; - case 6: *st = INT_MAX; break; - default: - *st = asn_random_between(INT_MIN, INT_MAX); - break; - } - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/r63/BSMcoreData.c b/src/tmx/Asn_J2735/src/r63/BSMcoreData.c deleted file mode 100644 index 276602b05..000000000 --- a/src/tmx/Asn_J2735/src/r63/BSMcoreData.c +++ /dev/null @@ -1,180 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BSMcoreData.h" - -asn_TYPE_member_t asn_MBR_BSMcoreData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, secMark), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, lat), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, Long), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, elev), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elev" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accuracy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, transmission), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "transmission" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, speed), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, heading), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, angle), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "angle" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accelSet), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accelSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, brakes), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "brakes" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, size), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSize, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "size" - }, -}; -static const ber_tlv_tag_t asn_DEF_BSMcoreData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BSMcoreData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* elev */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transmission */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* size */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1 = { - sizeof(struct BSMcoreData), - offsetof(struct BSMcoreData, _asn_ctx), - asn_MAP_BSMcoreData_tag2el_1, - 14, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BSMcoreData = { - "BSMcoreData", - "BSMcoreData", - &asn_OP_SEQUENCE, - asn_DEF_BSMcoreData_tags_1, - sizeof(asn_DEF_BSMcoreData_tags_1) - /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ - asn_DEF_BSMcoreData_tags_1, /* Same as above */ - sizeof(asn_DEF_BSMcoreData_tags_1) - /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_BSMcoreData_1, - 14, /* Elements count */ - &asn_SPC_BSMcoreData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c deleted file mode 100644 index d4a4cadb1..000000000 --- a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpCarma" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#include "BasicSafetyMessage-addGrpCarma.h" - -static int -memb_routeDestinationPoints_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 8UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_routeDestinationPoints_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Position3D_addGrpCarma, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_routeDestinationPoints_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_routeDestinationPoints_specs_2 = { - sizeof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints), - offsetof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_routeDestinationPoints_2 = { - "routeDestinationPoints", - "routeDestinationPoints", - &asn_OP_SEQUENCE_OF, - asn_DEF_routeDestinationPoints_tags_2, - sizeof(asn_DEF_routeDestinationPoints_tags_2) - /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]) - 1, /* 1 */ - asn_DEF_routeDestinationPoints_tags_2, /* Same as above */ - sizeof(asn_DEF_routeDestinationPoints_tags_2) - /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_routeDestinationPoints_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_routeDestinationPoints_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_routeDestinationPoints_2, - 1, /* Single element */ - &asn_SPC_routeDestinationPoints_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[] = { - { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage_addGrpCarma, routeDestinationPoints), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_routeDestinationPoints_2, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_routeDestinationPoints_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_routeDestinationPoints_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_routeDestinationPoints_constraint_1 - }, - 0, 0, /* No default value */ - "routeDestinationPoints" - }, -}; -static const int asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routeDestinationPoints */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 = { - sizeof(struct BasicSafetyMessage_addGrpCarma), - offsetof(struct BasicSafetyMessage_addGrpCarma, _asn_ctx), - asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma = { - "BasicSafetyMessage-addGrpCarma", - "BasicSafetyMessage-addGrpCarma", - &asn_OP_SEQUENCE, - asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, - sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ - asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BasicSafetyMessage_addGrpCarma_1, - 1, /* Elements count */ - &asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c deleted file mode 100644 index 1090c478d..000000000 --- a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c +++ /dev/null @@ -1,310 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#include "BasicSafetyMessage.h" - -static int -memb_partII_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 8UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1UL && size <= 4UL)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_partII_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_partII_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_partII_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_BSMpartIIExtension, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_partII_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_partII_specs_3 = { - sizeof(struct BasicSafetyMessage__partII), - offsetof(struct BasicSafetyMessage__partII, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_partII_3 = { - "partII", - "partII", - &asn_OP_SEQUENCE_OF, - asn_DEF_partII_tags_3, - sizeof(asn_DEF_partII_tags_3) - /sizeof(asn_DEF_partII_tags_3[0]) - 1, /* 1 */ - asn_DEF_partII_tags_3, /* Same as above */ - sizeof(asn_DEF_partII_tags_3) - /sizeof(asn_DEF_partII_tags_3[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_partII_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_partII_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_partII_3, - 1, /* Single element */ - &asn_SPC_partII_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct BasicSafetyMessage__regional), - offsetof(struct BasicSafetyMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_OF_constraint - }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, coreData), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMcoreData, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "coreData" - }, - { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, partII), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_partII_3, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_constraint_1 - }, - 0, 0, /* No default value */ - "partII" - }, - { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regional_constr_5, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regional_constraint_1 - }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_BasicSafetyMessage_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* coreData */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* partII */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { - sizeof(struct BasicSafetyMessage), - offsetof(struct BasicSafetyMessage, _asn_ctx), - asn_MAP_BasicSafetyMessage_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { - "BasicSafetyMessage", - "BasicSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_BasicSafetyMessage_tags_1, - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BasicSafetyMessage_1, - 3, /* Elements count */ - &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c b/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c deleted file mode 100644 index daf20838c..000000000 --- a/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BasicVehicleClass.h" - -int -BasicVehicleClass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_BasicVehicleClass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass = { - "BasicVehicleClass", - "BasicVehicleClass", - &asn_OP_NativeInteger, - asn_DEF_BasicVehicleClass_tags_1, - sizeof(asn_DEF_BasicVehicleClass_tags_1) - /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ - asn_DEF_BasicVehicleClass_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicVehicleClass_tags_1) - /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ - { &asn_OER_type_BasicVehicleClass_constr_1, &asn_PER_type_BasicVehicleClass_constr_1, BasicVehicleClass_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c b/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c deleted file mode 100644 index 6ec89742e..000000000 --- a/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BasicVehicleRole.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 22 } /* (0..22,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_BasicVehicleRole_value2enum_1[] = { - { 0, 12, "basicVehicle" }, - { 1, 15, "publicTransport" }, - { 2, 16, "specialTransport" }, - { 3, 14, "dangerousGoods" }, - { 4, 8, "roadWork" }, - { 5, 10, "roadRescue" }, - { 6, 9, "emergency" }, - { 7, 9, "safetyCar" }, - { 8, 12, "none-unknown" }, - { 9, 5, "truck" }, - { 10, 10, "motorcycle" }, - { 11, 14, "roadSideSource" }, - { 12, 6, "police" }, - { 13, 4, "fire" }, - { 14, 9, "ambulance" }, - { 15, 3, "dot" }, - { 16, 7, "transit" }, - { 17, 10, "slowMoving" }, - { 18, 7, "stopNgo" }, - { 19, 7, "cyclist" }, - { 20, 10, "pedestrian" }, - { 21, 12, "nonMotorized" }, - { 22, 8, "military" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_BasicVehicleRole_enum2value_1[] = { - 14, /* ambulance(14) */ - 0, /* basicVehicle(0) */ - 19, /* cyclist(19) */ - 3, /* dangerousGoods(3) */ - 15, /* dot(15) */ - 6, /* emergency(6) */ - 13, /* fire(13) */ - 22, /* military(22) */ - 10, /* motorcycle(10) */ - 21, /* nonMotorized(21) */ - 8, /* none-unknown(8) */ - 20, /* pedestrian(20) */ - 12, /* police(12) */ - 1, /* publicTransport(1) */ - 5, /* roadRescue(5) */ - 11, /* roadSideSource(11) */ - 4, /* roadWork(4) */ - 7, /* safetyCar(7) */ - 17, /* slowMoving(17) */ - 2, /* specialTransport(2) */ - 18, /* stopNgo(18) */ - 16, /* transit(16) */ - 9 /* truck(9) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1 = { - asn_MAP_BasicVehicleRole_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BasicVehicleRole_enum2value_1, /* N => "tag"; sorted by N */ - 23, /* Number of elements in the maps */ - 24, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BasicVehicleRole_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole = { - "BasicVehicleRole", - "BasicVehicleRole", - &asn_OP_NativeEnumerated, - asn_DEF_BasicVehicleRole_tags_1, - sizeof(asn_DEF_BasicVehicleRole_tags_1) - /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ - asn_DEF_BasicVehicleRole_tags_1, /* Same as above */ - sizeof(asn_DEF_BasicVehicleRole_tags_1) - /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ - { &asn_OER_type_BasicVehicleRole_constr_1, &asn_PER_type_BasicVehicleRole_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BasicVehicleRole_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c deleted file mode 100644 index b337b154e..000000000 --- a/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BrakeAppliedPressure.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "minPressure" }, - { 2, 7, "bkLvl-2" }, - { 3, 7, "bkLvl-3" }, - { 4, 7, "bkLvl-4" }, - { 5, 7, "bkLvl-5" }, - { 6, 7, "bkLvl-6" }, - { 7, 7, "bkLvl-7" }, - { 8, 7, "bkLvl-8" }, - { 9, 7, "bkLvl-9" }, - { 10, 8, "bkLvl-10" }, - { 11, 8, "bkLvl-11" }, - { 12, 8, "bkLvl-12" }, - { 13, 8, "bkLvl-13" }, - { 14, 8, "bkLvl-14" }, - { 15, 11, "maxPressure" } -}; -static const unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { - 10, /* bkLvl-10(10) */ - 11, /* bkLvl-11(11) */ - 12, /* bkLvl-12(12) */ - 13, /* bkLvl-13(13) */ - 14, /* bkLvl-14(14) */ - 2, /* bkLvl-2(2) */ - 3, /* bkLvl-3(3) */ - 4, /* bkLvl-4(4) */ - 5, /* bkLvl-5(5) */ - 6, /* bkLvl-6(6) */ - 7, /* bkLvl-7(7) */ - 8, /* bkLvl-8(8) */ - 9, /* bkLvl-9(9) */ - 15, /* maxPressure(15) */ - 1, /* minPressure(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { - asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { - "BrakeAppliedPressure", - "BrakeAppliedPressure", - &asn_OP_NativeEnumerated, - asn_DEF_BrakeAppliedPressure_tags_1, - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedPressure_tags_1) - /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ - { &asn_OER_type_BrakeAppliedPressure_constr_1, &asn_PER_type_BrakeAppliedPressure_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c deleted file mode 100644 index 7fe2fa19a..000000000 --- a/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BrakeAppliedStatus.h" - -int -BrakeAppliedStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 5 /* (SIZE(5..5)) */}; -asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { - "BrakeAppliedStatus", - "BrakeAppliedStatus", - &asn_OP_BIT_STRING, - asn_DEF_BrakeAppliedStatus_tags_1, - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeAppliedStatus_tags_1) - /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_BrakeAppliedStatus_constr_1, &asn_PER_type_BrakeAppliedStatus_constr_1, BrakeAppliedStatus_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c deleted file mode 100644 index 8f67bdbfa..000000000 --- a/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BrakeBoostApplied.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" } -}; -static const unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { - asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { - "BrakeBoostApplied", - "BrakeBoostApplied", - &asn_OP_NativeEnumerated, - asn_DEF_BrakeBoostApplied_tags_1, - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeBoostApplied_tags_1) - /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ - { &asn_OER_type_BrakeBoostApplied_constr_1, &asn_PER_type_BrakeBoostApplied_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c deleted file mode 100644 index 54d708b9d..000000000 --- a/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BrakeSystemStatus.h" - -asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, wheelBrakes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeAppliedStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wheelBrakes" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, traction), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TractionControlStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "traction" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, abs), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AntiLockBrakeStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "abs" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, scs), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StabilityControlStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "scs" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, brakeBoost), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeBoostApplied, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "brakeBoost" - }, - { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, auxBrakes), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AuxiliaryBrakeStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "auxBrakes" - }, -}; -static const ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BrakeSystemStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* wheelBrakes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* traction */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* abs */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* scs */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakeBoost */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* auxBrakes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1 = { - sizeof(struct BrakeSystemStatus), - offsetof(struct BrakeSystemStatus, _asn_ctx), - asn_MAP_BrakeSystemStatus_tag2el_1, - 6, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { - "BrakeSystemStatus", - "BrakeSystemStatus", - &asn_OP_SEQUENCE, - asn_DEF_BrakeSystemStatus_tags_1, - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_BrakeSystemStatus_tags_1) - /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_BrakeSystemStatus_1, - 6, /* Elements count */ - &asn_SPC_BrakeSystemStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BumperHeight.c b/src/tmx/Asn_J2735/src/r63/BumperHeight.c deleted file mode 100644 index fc68b2bd9..000000000 --- a/src/tmx/Asn_J2735/src/r63/BumperHeight.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BumperHeight.h" - -int -BumperHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_BumperHeight_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_BumperHeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_BumperHeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeight = { - "BumperHeight", - "BumperHeight", - &asn_OP_NativeInteger, - asn_DEF_BumperHeight_tags_1, - sizeof(asn_DEF_BumperHeight_tags_1) - /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ - asn_DEF_BumperHeight_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeight_tags_1) - /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ - { &asn_OER_type_BumperHeight_constr_1, &asn_PER_type_BumperHeight_constr_1, BumperHeight_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/BumperHeights.c b/src/tmx/Asn_J2735/src/r63/BumperHeights.c deleted file mode 100644 index 994d88a7b..000000000 --- a/src/tmx/Asn_J2735/src/r63/BumperHeights.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "BumperHeights.h" - -asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, front), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "front" - }, - { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rear" - }, -}; -static const ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* front */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { - sizeof(struct BumperHeights), - offsetof(struct BumperHeights, _asn_ctx), - asn_MAP_BumperHeights_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BumperHeights = { - "BumperHeights", - "BumperHeights", - &asn_OP_SEQUENCE, - asn_DEF_BumperHeights_tags_1, - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - asn_DEF_BumperHeights_tags_1, /* Same as above */ - sizeof(asn_DEF_BumperHeights_tags_1) - /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_BumperHeights_1, - 2, /* Elements count */ - &asn_SPC_BumperHeights_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/CargoWeight.c b/src/tmx/Asn_J2735/src/r63/CargoWeight.c deleted file mode 100644 index 611f6d454..000000000 --- a/src/tmx/Asn_J2735/src/r63/CargoWeight.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "CargoWeight.h" - -int -CargoWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 64255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CargoWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CargoWeight = { - "CargoWeight", - "CargoWeight", - &asn_OP_NativeInteger, - asn_DEF_CargoWeight_tags_1, - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - asn_DEF_CargoWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_CargoWeight_tags_1) - /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ - { &asn_OER_type_CargoWeight_constr_1, &asn_PER_type_CargoWeight_constr_1, CargoWeight_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Circle.c b/src/tmx/Asn_J2735/src/r63/Circle.c deleted file mode 100644 index d3f96888a..000000000 --- a/src/tmx/Asn_J2735/src/r63/Circle.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Circle.h" - -asn_TYPE_member_t asn_MBR_Circle_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Circle, center), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "center" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle, radius), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Radius_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "radius" - }, - { ATF_NOFLAGS, 0, offsetof(struct Circle, units), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DistanceUnits, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "units" - }, -}; -static const ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* radius */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { - sizeof(struct Circle), - offsetof(struct Circle, _asn_ctx), - asn_MAP_Circle_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Circle = { - "Circle", - "Circle", - &asn_OP_SEQUENCE, - asn_DEF_Circle_tags_1, - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - asn_DEF_Circle_tags_1, /* Same as above */ - sizeof(asn_DEF_Circle_tags_1) - /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Circle_1, - 3, /* Elements count */ - &asn_SPC_Circle_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c b/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c deleted file mode 100644 index 423fdca04..000000000 --- a/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ClassificationConfidence.h" - -int -ClassificationConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 101)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..101) */, - -1}; -asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ClassificationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence = { - "ClassificationConfidence", - "ClassificationConfidence", - &asn_OP_NativeInteger, - asn_DEF_ClassificationConfidence_tags_1, - sizeof(asn_DEF_ClassificationConfidence_tags_1) - /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ - asn_DEF_ClassificationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ClassificationConfidence_tags_1) - /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_ClassificationConfidence_constr_1, &asn_PER_type_ClassificationConfidence_constr_1, ClassificationConfidence_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/CoarseHeading.c b/src/tmx/Asn_J2735/src/r63/CoarseHeading.c deleted file mode 100644 index de6a9969a..000000000 --- a/src/tmx/Asn_J2735/src/r63/CoarseHeading.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "CoarseHeading.h" - -int -CoarseHeading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 240)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CoarseHeading_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..240) */, - -1}; -asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 240 } /* (0..240) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_CoarseHeading_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CoarseHeading = { - "CoarseHeading", - "CoarseHeading", - &asn_OP_NativeInteger, - asn_DEF_CoarseHeading_tags_1, - sizeof(asn_DEF_CoarseHeading_tags_1) - /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ - asn_DEF_CoarseHeading_tags_1, /* Same as above */ - sizeof(asn_DEF_CoarseHeading_tags_1) - /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ - { &asn_OER_type_CoarseHeading_constr_1, &asn_PER_type_CoarseHeading_constr_1, CoarseHeading_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/CodeWord.c b/src/tmx/Asn_J2735/src/r63/CodeWord.c deleted file mode 100644 index 86abda0df..000000000 --- a/src/tmx/Asn_J2735/src/r63/CodeWord.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "CodeWord.h" - -int -CodeWord_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CodeWord_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CodeWord = { - "CodeWord", - "CodeWord", - &asn_OP_OCTET_STRING, - asn_DEF_CodeWord_tags_1, - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - asn_DEF_CodeWord_tags_1, /* Same as above */ - sizeof(asn_DEF_CodeWord_tags_1) - /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ - { &asn_OER_type_CodeWord_constr_1, &asn_PER_type_CodeWord_constr_1, CodeWord_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c deleted file mode 100644 index 573f1f3d2..000000000 --- a/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "CoefficientOfFriction.h" - -int -CoefficientOfFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 50)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..50) */, - -1}; -asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { - "CoefficientOfFriction", - "CoefficientOfFriction", - &asn_OP_NativeInteger, - asn_DEF_CoefficientOfFriction_tags_1, - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_CoefficientOfFriction_tags_1) - /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ - { &asn_OER_type_CoefficientOfFriction_constr_1, &asn_PER_type_CoefficientOfFriction_constr_1, CoefficientOfFriction_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c deleted file mode 100644 index 83a5e8e44..000000000 --- a/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "CommonSafetyRequest.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct CommonSafetyRequest__regional), - offsetof(struct CommonSafetyRequest__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { - { ATF_POINTER, 3, offsetof(struct CommonSafetyRequest, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestedItemList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requests" - }, - { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_CommonSafetyRequest_oms_1[] = { 0, 1, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { - sizeof(struct CommonSafetyRequest), - offsetof(struct CommonSafetyRequest, _asn_ctx), - asn_MAP_CommonSafetyRequest_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { - "CommonSafetyRequest", - "CommonSafetyRequest", - &asn_OP_SEQUENCE, - asn_DEF_CommonSafetyRequest_tags_1, - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_CommonSafetyRequest_tags_1) - /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_CommonSafetyRequest_1, - 5, /* Elements count */ - &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ComputedLane.c b/src/tmx/Asn_J2735/src/r63/ComputedLane.c deleted file mode 100644 index 5a31bf6bd..000000000 --- a/src/tmx/Asn_J2735/src/r63/ComputedLane.c +++ /dev/null @@ -1,305 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ComputedLane.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_offsetXaxis_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_offsetYaxis_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "large" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { - sizeof(struct ComputedLane__offsetXaxis), - offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetXaxis, present), - sizeof(((struct ComputedLane__offsetXaxis *)0)->present), - asn_MAP_offsetXaxis_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { - "offsetXaxis", - "offsetXaxis", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_offsetXaxis_constr_3, &asn_PER_type_offsetXaxis_constr_3, CHOICE_constraint }, - asn_MBR_offsetXaxis_3, - 2, /* Elements count */ - &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetSm, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "small" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivenLineOffsetLg, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "large" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ -}; -static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { - sizeof(struct ComputedLane__offsetYaxis), - offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), - offsetof(struct ComputedLane__offsetYaxis, present), - sizeof(((struct ComputedLane__offsetYaxis *)0)->present), - asn_MAP_offsetYaxis_tag2el_6, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { - "offsetYaxis", - "offsetYaxis", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_offsetYaxis_constr_6, &asn_PER_type_offsetYaxis_constr_6, CHOICE_constraint }, - asn_MBR_offsetYaxis_6, - 2, /* Elements count */ - &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct ComputedLane__regional), - offsetof(struct ComputedLane__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "referenceLaneId" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetXaxis_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetXaxis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offsetYaxis_6, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetYaxis" - }, - { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Angle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rotateXY" - }, - { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "scaleXaxis" - }, - { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Scale_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "scaleYaxis" - }, - { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { - sizeof(struct ComputedLane), - offsetof(struct ComputedLane, _asn_ctx), - asn_MAP_ComputedLane_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ComputedLane_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ComputedLane = { - "ComputedLane", - "ComputedLane", - &asn_OP_SEQUENCE, - asn_DEF_ComputedLane_tags_1, - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - asn_DEF_ComputedLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ComputedLane_tags_1) - /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ComputedLane_1, - 7, /* Elements count */ - &asn_SPC_ComputedLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Confidence.c b/src/tmx/Asn_J2735/src/r63/Confidence.c deleted file mode 100644 index cb47864d4..000000000 --- a/src/tmx/Asn_J2735/src/r63/Confidence.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Confidence.h" - -int -Confidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Confidence_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -asn_per_constraints_t asn_PER_type_Confidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Confidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Confidence = { - "Confidence", - "Confidence", - &asn_OP_NativeInteger, - asn_DEF_Confidence_tags_1, - sizeof(asn_DEF_Confidence_tags_1) - /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ - asn_DEF_Confidence_tags_1, /* Same as above */ - sizeof(asn_DEF_Confidence_tags_1) - /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ - { &asn_OER_type_Confidence_constr_1, &asn_PER_type_Confidence_constr_1, Confidence_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c b/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c deleted file mode 100644 index 1b97b9b3e..000000000 --- a/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ConfidenceSet.h" - -asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { - { ATF_POINTER, 7, offsetof(struct ConfidenceSet, accelConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelSteerYawRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accelConfidence" - }, - { ATF_POINTER, 6, offsetof(struct ConfidenceSet, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedConfidence" - }, - { ATF_POINTER, 5, offsetof(struct ConfidenceSet, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeConfidence" - }, - { ATF_POINTER, 4, offsetof(struct ConfidenceSet, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posConfidence" - }, - { ATF_POINTER, 3, offsetof(struct ConfidenceSet, steerConfidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "steerConfidence" - }, - { ATF_POINTER, 2, offsetof(struct ConfidenceSet, headingConfidence), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "headingConfidence" - }, - { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "throttleConfidence" - }, -}; -static const int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* headingConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* throttleConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { - sizeof(struct ConfidenceSet), - offsetof(struct ConfidenceSet, _asn_ctx), - asn_MAP_ConfidenceSet_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ConfidenceSet_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { - "ConfidenceSet", - "ConfidenceSet", - &asn_OP_SEQUENCE, - asn_DEF_ConfidenceSet_tags_1, - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_ConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ConfidenceSet_tags_1) - /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ConfidenceSet_1, - 7, /* Elements count */ - &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ConnectingLane.c b/src/tmx/Asn_J2735/src/r63/ConnectingLane.c deleted file mode 100644 index dc0fa6986..000000000 --- a/src/tmx/Asn_J2735/src/r63/ConnectingLane.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ConnectingLane.h" - -asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lane" - }, - { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maneuver" - }, -}; -static const int asn_MAP_ConnectingLane_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { - sizeof(struct ConnectingLane), - offsetof(struct ConnectingLane, _asn_ctx), - asn_MAP_ConnectingLane_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ConnectingLane_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { - "ConnectingLane", - "ConnectingLane", - &asn_OP_SEQUENCE, - asn_DEF_ConnectingLane_tags_1, - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - asn_DEF_ConnectingLane_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectingLane_tags_1) - /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ConnectingLane_1, - 2, /* Elements count */ - &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Connection.c b/src/tmx/Asn_J2735/src/r63/Connection.c deleted file mode 100644 index bb1df0c41..000000000 --- a/src/tmx/Asn_J2735/src/r63/Connection.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Connection.h" - -asn_TYPE_member_t asn_MBR_Connection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectingLane, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connectingLane" - }, - { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "remoteIntersection" - }, - { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "signalGroup" - }, - { ATF_POINTER, 2, offsetof(struct Connection, userClass), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "userClass" - }, - { ATF_POINTER, 1, offsetof(struct Connection, connectionID), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connectionID" - }, -}; -static const int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { - sizeof(struct Connection), - offsetof(struct Connection, _asn_ctx), - asn_MAP_Connection_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_Connection_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Connection = { - "Connection", - "Connection", - &asn_OP_SEQUENCE, - asn_DEF_Connection_tags_1, - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - asn_DEF_Connection_tags_1, /* Same as above */ - sizeof(asn_DEF_Connection_tags_1) - /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Connection_1, - 5, /* Elements count */ - &asn_SPC_Connection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c deleted file mode 100644 index 3ed6e79a3..000000000 --- a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ConnectionManeuverAssist-addGrpC.h" - -static asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist_addGrpC, vehicleToLanePositions), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleToLanePositionList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleToLanePositions" - }, - { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist_addGrpC, rsuDistanceFromAnchor), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsuDistanceFromAnchor" - }, -}; -static const int asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 = { - sizeof(struct ConnectionManeuverAssist_addGrpC), - offsetof(struct ConnectionManeuverAssist_addGrpC, _asn_ctx), - asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC = { - "ConnectionManeuverAssist-addGrpC", - "ConnectionManeuverAssist-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, - sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ConnectionManeuverAssist_addGrpC_1, - 2, /* Elements count */ - &asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c deleted file mode 100644 index 9198d94b1..000000000 --- a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ConnectionManeuverAssist.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct ConnectionManeuverAssist__regional), - offsetof(struct ConnectionManeuverAssist__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connectionID" - }, - { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "queueLength" - }, - { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ZoneLength, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "availableStorageLength" - }, - { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WaitOnStopline, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "waitOnStop" - }, - { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PedestrianBicycleDetect, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pedBicycleDetect" - }, - { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { - sizeof(struct ConnectionManeuverAssist), - offsetof(struct ConnectionManeuverAssist, _asn_ctx), - asn_MAP_ConnectionManeuverAssist_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { - "ConnectionManeuverAssist", - "ConnectionManeuverAssist", - &asn_OP_SEQUENCE, - asn_DEF_ConnectionManeuverAssist_tags_1, - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) - /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ConnectionManeuverAssist_1, - 6, /* Elements count */ - &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ConnectsToList.c b/src/tmx/Asn_J2735/src/r63/ConnectsToList.c deleted file mode 100644 index 5c6b41fa2..000000000 --- a/src/tmx/Asn_J2735/src/r63/ConnectsToList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ConnectsToList.h" - -static asn_oer_constraints_t asn_OER_type_ConnectsToList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Connection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { - sizeof(struct ConnectsToList), - offsetof(struct ConnectsToList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { - "ConnectsToList", - "ConnectsToList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ConnectsToList_tags_1, - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - asn_DEF_ConnectsToList_tags_1, /* Same as above */ - sizeof(asn_DEF_ConnectsToList_tags_1) - /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ - { &asn_OER_type_ConnectsToList_constr_1, &asn_PER_type_ConnectsToList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ConnectsToList_1, - 1, /* Single element */ - &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Count.c b/src/tmx/Asn_J2735/src/r63/Count.c deleted file mode 100644 index 7efa6b9b7..000000000 --- a/src/tmx/Asn_J2735/src/r63/Count.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Count.h" - -int -Count_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Count_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..32) */, - -1}; -static asn_per_constraints_t asn_PER_type_Count_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Count_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Count = { - "Count", - "Count", - &asn_OP_NativeInteger, - asn_DEF_Count_tags_1, - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - asn_DEF_Count_tags_1, /* Same as above */ - sizeof(asn_DEF_Count_tags_1) - /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ - { &asn_OER_type_Count_constr_1, &asn_PER_type_Count_constr_1, Count_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DDate.c b/src/tmx/Asn_J2735/src/r63/DDate.c deleted file mode 100644 index 9d1767489..000000000 --- a/src/tmx/Asn_J2735/src/r63/DDate.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DDate.h" - -static asn_TYPE_member_t asn_MBR_DDate_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DDate, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DDate, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "day" - }, -}; -static const ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { - sizeof(struct DDate), - offsetof(struct DDate, _asn_ctx), - asn_MAP_DDate_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DDate = { - "DDate", - "DDate", - &asn_OP_SEQUENCE, - asn_DEF_DDate_tags_1, - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - asn_DEF_DDate_tags_1, /* Same as above */ - sizeof(asn_DEF_DDate_tags_1) - /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DDate_1, - 3, /* Elements count */ - &asn_SPC_DDate_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DDateTime.c b/src/tmx/Asn_J2735/src/r63/DDateTime.c deleted file mode 100644 index ba4c46c44..000000000 --- a/src/tmx/Asn_J2735/src/r63/DDateTime.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DDateTime.h" - -asn_TYPE_member_t asn_MBR_DDateTime_1[] = { - { ATF_POINTER, 7, offsetof(struct DDateTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_POINTER, 6, offsetof(struct DDateTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, - { ATF_POINTER, 5, offsetof(struct DDateTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "day" - }, - { ATF_POINTER, 4, offsetof(struct DDateTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_POINTER, 3, offsetof(struct DDateTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 2, offsetof(struct DDateTime, second), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct DDateTime, offset), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* offset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { - sizeof(struct DDateTime), - offsetof(struct DDateTime, _asn_ctx), - asn_MAP_DDateTime_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_DDateTime_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DDateTime = { - "DDateTime", - "DDateTime", - &asn_OP_SEQUENCE, - asn_DEF_DDateTime_tags_1, - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - asn_DEF_DDateTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DDateTime_tags_1) - /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DDateTime_1, - 7, /* Elements count */ - &asn_SPC_DDateTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DDay.c b/src/tmx/Asn_J2735/src/r63/DDay.c deleted file mode 100644 index b01fcfe9b..000000000 --- a/src/tmx/Asn_J2735/src/r63/DDay.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DDay.h" - -int -DDay_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DDay_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_DDay_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DDay = { - "DDay", - "DDay", - &asn_OP_NativeInteger, - asn_DEF_DDay_tags_1, - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - asn_DEF_DDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DDay_tags_1) - /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ - { &asn_OER_type_DDay_constr_1, &asn_PER_type_DDay_constr_1, DDay_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DFullTime.c b/src/tmx/Asn_J2735/src/r63/DFullTime.c deleted file mode 100644 index ef4476a05..000000000 --- a/src/tmx/Asn_J2735/src/r63/DFullTime.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DFullTime.h" - -static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "day" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, -}; -static const ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { - sizeof(struct DFullTime), - offsetof(struct DFullTime, _asn_ctx), - asn_MAP_DFullTime_tag2el_1, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DFullTime = { - "DFullTime", - "DFullTime", - &asn_OP_SEQUENCE, - asn_DEF_DFullTime_tags_1, - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - asn_DEF_DFullTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DFullTime_tags_1) - /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DFullTime_1, - 5, /* Elements count */ - &asn_SPC_DFullTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DHour.c b/src/tmx/Asn_J2735/src/r63/DHour.c deleted file mode 100644 index a45233f81..000000000 --- a/src/tmx/Asn_J2735/src/r63/DHour.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DHour.h" - -int -DHour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DHour_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_DHour_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DHour = { - "DHour", - "DHour", - &asn_OP_NativeInteger, - asn_DEF_DHour_tags_1, - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - asn_DEF_DHour_tags_1, /* Same as above */ - sizeof(asn_DEF_DHour_tags_1) - /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ - { &asn_OER_type_DHour_constr_1, &asn_PER_type_DHour_constr_1, DHour_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DMinute.c b/src/tmx/Asn_J2735/src/r63/DMinute.c deleted file mode 100644 index 31136aa48..000000000 --- a/src/tmx/Asn_J2735/src/r63/DMinute.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DMinute.h" - -int -DMinute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 60)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DMinute_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..60) */, - -1}; -asn_per_constraints_t asn_PER_type_DMinute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMinute = { - "DMinute", - "DMinute", - &asn_OP_NativeInteger, - asn_DEF_DMinute_tags_1, - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - asn_DEF_DMinute_tags_1, /* Same as above */ - sizeof(asn_DEF_DMinute_tags_1) - /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ - { &asn_OER_type_DMinute_constr_1, &asn_PER_type_DMinute_constr_1, DMinute_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DMonth.c b/src/tmx/Asn_J2735/src/r63/DMonth.c deleted file mode 100644 index 526651e1f..000000000 --- a/src/tmx/Asn_J2735/src/r63/DMonth.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DMonth.h" - -int -DMonth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 12)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DMonth_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..12) */, - -1}; -asn_per_constraints_t asn_PER_type_DMonth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 12 } /* (0..12) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DMonth = { - "DMonth", - "DMonth", - &asn_OP_NativeInteger, - asn_DEF_DMonth_tags_1, - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - asn_DEF_DMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonth_tags_1) - /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ - { &asn_OER_type_DMonth_constr_1, &asn_PER_type_DMonth_constr_1, DMonth_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DMonthDay.c b/src/tmx/Asn_J2735/src/r63/DMonthDay.c deleted file mode 100644 index 37e039ff1..000000000 --- a/src/tmx/Asn_J2735/src/r63/DMonthDay.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DMonthDay.h" - -static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, - { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDay, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "day" - }, -}; -static const ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { - sizeof(struct DMonthDay), - offsetof(struct DMonthDay, _asn_ctx), - asn_MAP_DMonthDay_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DMonthDay = { - "DMonthDay", - "DMonthDay", - &asn_OP_SEQUENCE, - asn_DEF_DMonthDay_tags_1, - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - asn_DEF_DMonthDay_tags_1, /* Same as above */ - sizeof(asn_DEF_DMonthDay_tags_1) - /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DMonthDay_1, - 2, /* Elements count */ - &asn_SPC_DMonthDay_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DOffset.c b/src/tmx/Asn_J2735/src/r63/DOffset.c deleted file mode 100644 index b9da04733..000000000 --- a/src/tmx/Asn_J2735/src/r63/DOffset.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DOffset.h" - -int -DOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -840 && value <= 840)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DOffset_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-840..840) */, - -1}; -asn_per_constraints_t asn_PER_type_DOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DOffset = { - "DOffset", - "DOffset", - &asn_OP_NativeInteger, - asn_DEF_DOffset_tags_1, - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - asn_DEF_DOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_DOffset_tags_1) - /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ - { &asn_OER_type_DOffset_constr_1, &asn_PER_type_DOffset_constr_1, DOffset_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c b/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c deleted file mode 100644 index 30d0c4c5d..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRC_Angle.h" - -int -DSRC_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSRC_Angle_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -asn_per_constraints_t asn_PER_type_DSRC_Angle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSRC_Angle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRC_Angle = { - "Angle", - "Angle", - &asn_OP_NativeInteger, - asn_DEF_DSRC_Angle_tags_1, - sizeof(asn_DEF_DSRC_Angle_tags_1) - /sizeof(asn_DEF_DSRC_Angle_tags_1[0]), /* 1 */ - asn_DEF_DSRC_Angle_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRC_Angle_tags_1) - /sizeof(asn_DEF_DSRC_Angle_tags_1[0]), /* 1 */ - { &asn_OER_type_DSRC_Angle_constr_1, &asn_PER_type_DSRC_Angle_constr_1, DSRC_Angle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c deleted file mode 100644 index d2958927b..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRC_DayOfWeek.h" - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_DSRC_DayOfWeek_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek = { - "DayOfWeek", - "DayOfWeek", - &asn_OP_BIT_STRING, - asn_DEF_DSRC_DayOfWeek_tags_1, - sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) - /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ - asn_DEF_DSRC_DayOfWeek_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) - /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ - { 0, 0, BIT_STRING_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c b/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c deleted file mode 100644 index f36c5ffa0..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRC_Elevation.h" - -int -DSRC_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096 && value <= 61439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSRC_Elevation_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-4096..61439) */, - -1}; -asn_per_constraints_t asn_PER_type_DSRC_Elevation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSRC_Elevation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRC_Elevation = { - "Elevation", - "Elevation", - &asn_OP_NativeInteger, - asn_DEF_DSRC_Elevation_tags_1, - sizeof(asn_DEF_DSRC_Elevation_tags_1) - /sizeof(asn_DEF_DSRC_Elevation_tags_1[0]), /* 1 */ - asn_DEF_DSRC_Elevation_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRC_Elevation_tags_1) - /sizeof(asn_DEF_DSRC_Elevation_tags_1[0]), /* 1 */ - { &asn_OER_type_DSRC_Elevation_constr_1, &asn_PER_type_DSRC_Elevation_constr_1, DSRC_Elevation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c b/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c deleted file mode 100644 index 1a70c3bf6..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRC_MsgCount.h" - -int -DSRC_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSRC_MsgCount_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_DSRC_MsgCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSRC_MsgCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRC_MsgCount = { - "MsgCount", - "MsgCount", - &asn_OP_NativeInteger, - asn_DEF_DSRC_MsgCount_tags_1, - sizeof(asn_DEF_DSRC_MsgCount_tags_1) - /sizeof(asn_DEF_DSRC_MsgCount_tags_1[0]), /* 1 */ - asn_DEF_DSRC_MsgCount_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRC_MsgCount_tags_1) - /sizeof(asn_DEF_DSRC_MsgCount_tags_1[0]), /* 1 */ - { &asn_OER_type_DSRC_MsgCount_constr_1, &asn_PER_type_DSRC_MsgCount_constr_1, DSRC_MsgCount_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c b/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c deleted file mode 100644 index 5a2cbb04f..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRC_TimeMark.h" - -int -DSRC_TimeMark_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 36001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSRC_TimeMark_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..36001) */, - -1}; -asn_per_constraints_t asn_PER_type_DSRC_TimeMark_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 36001 } /* (0..36001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSRC_TimeMark_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRC_TimeMark = { - "TimeMark", - "TimeMark", - &asn_OP_NativeInteger, - asn_DEF_DSRC_TimeMark_tags_1, - sizeof(asn_DEF_DSRC_TimeMark_tags_1) - /sizeof(asn_DEF_DSRC_TimeMark_tags_1[0]), /* 1 */ - asn_DEF_DSRC_TimeMark_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRC_TimeMark_tags_1) - /sizeof(asn_DEF_DSRC_TimeMark_tags_1[0]), /* 1 */ - { &asn_OER_type_DSRC_TimeMark_constr_1, &asn_PER_type_DSRC_TimeMark_constr_1, DSRC_TimeMark_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c b/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c deleted file mode 100644 index df12e48d3..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSRCmsgID.h" - -int -DSRCmsgID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSRCmsgID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { - "DSRCmsgID", - "DSRCmsgID", - &asn_OP_NativeInteger, - asn_DEF_DSRCmsgID_tags_1, - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - asn_DEF_DSRCmsgID_tags_1, /* Same as above */ - sizeof(asn_DEF_DSRCmsgID_tags_1) - /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ - { &asn_OER_type_DSRCmsgID_constr_1, &asn_PER_type_DSRCmsgID_constr_1, DSRCmsgID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DSecond.c b/src/tmx/Asn_J2735/src/r63/DSecond.c deleted file mode 100644 index 87a84b30f..000000000 --- a/src/tmx/Asn_J2735/src/r63/DSecond.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DSecond.h" - -int -DSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DSecond_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_DSecond_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DSecond = { - "DSecond", - "DSecond", - &asn_OP_NativeInteger, - asn_DEF_DSecond_tags_1, - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - asn_DEF_DSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_DSecond_tags_1) - /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ - { &asn_OER_type_DSecond_constr_1, &asn_PER_type_DSecond_constr_1, DSecond_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DTime.c b/src/tmx/Asn_J2735/src/r63/DTime.c deleted file mode 100644 index 642441f3b..000000000 --- a/src/tmx/Asn_J2735/src/r63/DTime.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DTime.h" - -static asn_TYPE_member_t asn_MBR_DTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DHour, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hour" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMinute, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_NOFLAGS, 0, offsetof(struct DTime, second), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct DTime, offset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_DTime_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offset */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { - sizeof(struct DTime), - offsetof(struct DTime, _asn_ctx), - asn_MAP_DTime_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DTime_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DTime = { - "DTime", - "DTime", - &asn_OP_SEQUENCE, - asn_DEF_DTime_tags_1, - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - asn_DEF_DTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DTime_tags_1) - /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DTime_1, - 4, /* Elements count */ - &asn_SPC_DTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DYear.c b/src/tmx/Asn_J2735/src/r63/DYear.c deleted file mode 100644 index 8a7f689cc..000000000 --- a/src/tmx/Asn_J2735/src/r63/DYear.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DYear.h" - -int -DYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 4095)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DYear_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -asn_per_constraints_t asn_PER_type_DYear_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DYear = { - "DYear", - "DYear", - &asn_OP_NativeInteger, - asn_DEF_DYear_tags_1, - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - asn_DEF_DYear_tags_1, /* Same as above */ - sizeof(asn_DEF_DYear_tags_1) - /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ - { &asn_OER_type_DYear_constr_1, &asn_PER_type_DYear_constr_1, DYear_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DYearMonth.c b/src/tmx/Asn_J2735/src/r63/DYearMonth.c deleted file mode 100644 index dad3e3008..000000000 --- a/src/tmx/Asn_J2735/src/r63/DYearMonth.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DYearMonth.h" - -static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DMonth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "month" - }, -}; -static const ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { - sizeof(struct DYearMonth), - offsetof(struct DYearMonth, _asn_ctx), - asn_MAP_DYearMonth_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DYearMonth = { - "DYearMonth", - "DYearMonth", - &asn_OP_SEQUENCE, - asn_DEF_DYearMonth_tags_1, - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - asn_DEF_DYearMonth_tags_1, /* Same as above */ - sizeof(asn_DEF_DYearMonth_tags_1) - /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DYearMonth_1, - 2, /* Elements count */ - &asn_SPC_DYearMonth_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DailySchedule.c b/src/tmx/Asn_J2735/src/r63/DailySchedule.c deleted file mode 100644 index 4c6671ab3..000000000 --- a/src/tmx/Asn_J2735/src/r63/DailySchedule.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DailySchedule.h" - -static int -memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_DailySchedule_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, begin), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, - 0, 0, /* No default value */ - "begin" - }, - { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, duration), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, - 0, 0, /* No default value */ - "duration" - }, -}; -static const ber_tlv_tag_t asn_DEF_DailySchedule_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DailySchedule_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1 = { - sizeof(struct DailySchedule), - offsetof(struct DailySchedule, _asn_ctx), - asn_MAP_DailySchedule_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DailySchedule = { - "DailySchedule", - "DailySchedule", - &asn_OP_SEQUENCE, - asn_DEF_DailySchedule_tags_1, - sizeof(asn_DEF_DailySchedule_tags_1) - /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ - asn_DEF_DailySchedule_tags_1, /* Same as above */ - sizeof(asn_DEF_DailySchedule_tags_1) - /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DailySchedule_1, - 2, /* Elements count */ - &asn_SPC_DailySchedule_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DataParameters.c b/src/tmx/Asn_J2735/src/r63/DataParameters.c deleted file mode 100644 index 0d35ff098..000000000 --- a/src/tmx/Asn_J2735/src/r63/DataParameters.c +++ /dev/null @@ -1,274 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DataParameters.h" - -static int check_permitted_alphabet_2(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_3(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_5(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_processMethod_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_2(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_processAgency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_3(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_lastCheckedDate_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_geoidUsed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_5(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_processMethod_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_processAgency_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_geoidUsed_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -asn_TYPE_member_t asn_MBR_DataParameters_1[] = { - { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_processMethod_constr_2, &asn_PER_memb_processMethod_constr_2, memb_processMethod_constraint_1 }, - 0, 0, /* No default value */ - "processMethod" - }, - { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_processAgency_constr_3, &asn_PER_memb_processAgency_constr_3, memb_processAgency_constraint_1 }, - 0, 0, /* No default value */ - "processAgency" - }, - { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_lastCheckedDate_constr_4, &asn_PER_memb_lastCheckedDate_constr_4, memb_lastCheckedDate_constraint_1 }, - 0, 0, /* No default value */ - "lastCheckedDate" - }, - { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_geoidUsed_constr_5, &asn_PER_memb_geoidUsed_constr_5, memb_geoidUsed_constraint_1 }, - 0, 0, /* No default value */ - "geoidUsed" - }, -}; -static const int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { - sizeof(struct DataParameters), - offsetof(struct DataParameters, _asn_ctx), - asn_MAP_DataParameters_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DataParameters_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DataParameters = { - "DataParameters", - "DataParameters", - &asn_OP_SEQUENCE, - asn_DEF_DataParameters_tags_1, - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - asn_DEF_DataParameters_tags_1, /* Same as above */ - sizeof(asn_DEF_DataParameters_tags_1) - /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DataParameters_1, - 4, /* Elements count */ - &asn_SPC_DataParameters_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Day.c b/src/tmx/Asn_J2735/src/r63/Day.c deleted file mode 100644 index 0bd5197ac..000000000 --- a/src/tmx/Asn_J2735/src/r63/Day.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Day.h" - -int -Day_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Day_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_Day_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Day_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Day = { - "Day", - "Day", - &asn_OP_NativeInteger, - asn_DEF_Day_tags_1, - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - asn_DEF_Day_tags_1, /* Same as above */ - sizeof(asn_DEF_Day_tags_1) - /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ - { &asn_OER_type_Day_constr_1, &asn_PER_type_Day_constr_1, Day_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/DayOfWeek.c deleted file mode 100644 index 8d35c8b23..000000000 --- a/src/tmx/Asn_J2735/src/r63/DayOfWeek.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DayOfWeek.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DayOfWeek_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "monday" }, - { 2, 7, "tuesday" }, - { 3, 9, "wednesday" }, - { 4, 8, "thursday" }, - { 5, 6, "friday" }, - { 6, 8, "saturday" }, - { 7, 6, "sunday" } -}; -static const unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { - 5, /* friday(5) */ - 1, /* monday(1) */ - 6, /* saturday(6) */ - 7, /* sunday(7) */ - 4, /* thursday(4) */ - 2, /* tuesday(2) */ - 0, /* unknown(0) */ - 3 /* wednesday(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { - asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { - "DayOfWeek", - "DayOfWeek", - &asn_OP_NativeEnumerated, - asn_DEF_DayOfWeek_tags_1, - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - asn_DEF_DayOfWeek_tags_1, /* Same as above */ - sizeof(asn_DEF_DayOfWeek_tags_1) - /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ - { &asn_OER_type_DayOfWeek_constr_1, &asn_PER_type_DayOfWeek_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DaySchedule.c b/src/tmx/Asn_J2735/src/r63/DaySchedule.c deleted file mode 100644 index 9b915fccc..000000000 --- a/src/tmx/Asn_J2735/src/r63/DaySchedule.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "DaySchedule.h" - -static int -memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_DaySchedule_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, begin), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, - 0, 0, /* No default value */ - "begin" - }, - { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, duration), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, - 0, 0, /* No default value */ - "duration" - }, -}; -static const ber_tlv_tag_t asn_DEF_DaySchedule_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DaySchedule_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1 = { - sizeof(struct DaySchedule), - offsetof(struct DaySchedule, _asn_ctx), - asn_MAP_DaySchedule_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DaySchedule = { - "DaySchedule", - "DaySchedule", - &asn_OP_SEQUENCE, - asn_DEF_DaySchedule_tags_1, - sizeof(asn_DEF_DaySchedule_tags_1) - /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ - asn_DEF_DaySchedule_tags_1, /* Same as above */ - sizeof(asn_DEF_DaySchedule_tags_1) - /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DaySchedule_1, - 2, /* Elements count */ - &asn_SPC_DaySchedule_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DegreesLat.c b/src/tmx/Asn_J2735/src/r63/DegreesLat.c deleted file mode 100644 index 01fe51b76..000000000 --- a/src/tmx/Asn_J2735/src/r63/DegreesLat.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DegreesLat.h" - -int -DegreesLat_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -90 && value <= 90)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DegreesLat_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-90..90) */, - -1}; -asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLat = { - "DegreesLat", - "DegreesLat", - &asn_OP_NativeInteger, - asn_DEF_DegreesLat_tags_1, - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - asn_DEF_DegreesLat_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLat_tags_1) - /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ - { &asn_OER_type_DegreesLat_constr_1, &asn_PER_type_DegreesLat_constr_1, DegreesLat_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DegreesLong.c b/src/tmx/Asn_J2735/src/r63/DegreesLong.c deleted file mode 100644 index 5ed0b14a5..000000000 --- a/src/tmx/Asn_J2735/src/r63/DegreesLong.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DegreesLong.h" - -int -DegreesLong_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180 && value <= 180)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DegreesLong_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-180..180) */, - -1}; -asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DegreesLong = { - "DegreesLong", - "DegreesLong", - &asn_OP_NativeInteger, - asn_DEF_DegreesLong_tags_1, - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - asn_DEF_DegreesLong_tags_1, /* Same as above */ - sizeof(asn_DEF_DegreesLong_tags_1) - /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ - { &asn_OER_type_DegreesLong_constr_1, &asn_PER_type_DegreesLong_constr_1, DegreesLong_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DeltaAngle.c b/src/tmx/Asn_J2735/src/r63/DeltaAngle.c deleted file mode 100644 index 0362f2cad..000000000 --- a/src/tmx/Asn_J2735/src/r63/DeltaAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DeltaAngle.h" - -int -DeltaAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -150 && value <= 150)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DeltaAngle_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-150..150) */, - -1}; -asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { - "DeltaAngle", - "DeltaAngle", - &asn_OP_NativeInteger, - asn_DEF_DeltaAngle_tags_1, - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - asn_DEF_DeltaAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DeltaAngle_tags_1) - /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_DeltaAngle_constr_1, &asn_PER_type_DeltaAngle_constr_1, DeltaAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DeltaTime.c b/src/tmx/Asn_J2735/src/r63/DeltaTime.c deleted file mode 100644 index d270ffd7b..000000000 --- a/src/tmx/Asn_J2735/src/r63/DeltaTime.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DeltaTime.h" - -int -DeltaTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -122 && value <= 121)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DeltaTime_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-122..121) */, - -1}; -asn_per_constraints_t asn_PER_type_DeltaTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -122, 121 } /* (-122..121) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DeltaTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DeltaTime = { - "DeltaTime", - "DeltaTime", - &asn_OP_NativeInteger, - asn_DEF_DeltaTime_tags_1, - sizeof(asn_DEF_DeltaTime_tags_1) - /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ - asn_DEF_DeltaTime_tags_1, /* Same as above */ - sizeof(asn_DEF_DeltaTime_tags_1) - /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ - { &asn_OER_type_DeltaTime_constr_1, &asn_PER_type_DeltaTime_constr_1, DeltaTime_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DescriptiveName.c b/src/tmx/Asn_J2735/src/r63/DescriptiveName.c deleted file mode 100644 index 7a896feec..000000000 --- a/src/tmx/Asn_J2735/src/r63/DescriptiveName.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DescriptiveName.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -DescriptiveName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 63) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DescriptiveName_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { - "DescriptiveName", - "DescriptiveName", - &asn_OP_IA5String, - asn_DEF_DescriptiveName_tags_1, - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - asn_DEF_DescriptiveName_tags_1, /* Same as above */ - sizeof(asn_DEF_DescriptiveName_tags_1) - /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ - { &asn_OER_type_DescriptiveName_constr_1, &asn_PER_type_DescriptiveName_constr_1, DescriptiveName_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c deleted file mode 100644 index d22ee61a2..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedObjectCommonData.h" - -asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "objType" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objTypeCfd), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ClassificationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "objTypeCfd" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objectID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "objectID" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, measurementTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasurementTimeOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measurementTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, pos), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionOffsetXYZ, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pos" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speed), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedConfidence" - }, - { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, speedZ), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedZ" - }, - { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, speedConfidenceZ), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedConfidenceZ" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, heading), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, headingConf), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "headingConf" - }, - { ATF_POINTER, 5, offsetof(struct DetectedObjectCommonData, accel4way), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accel4way" - }, - { ATF_POINTER, 4, offsetof(struct DetectedObjectCommonData, accCfdX), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accCfdX" - }, - { ATF_POINTER, 3, offsetof(struct DetectedObjectCommonData, accCfdY), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accCfdY" - }, - { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, accCfdZ), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accCfdZ" - }, - { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, accCfdYaw), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accCfdYaw" - }, -}; -static const int asn_MAP_DetectedObjectCommonData_oms_1[] = { 9, 10, 13, 14, 15, 16, 17 }; -static const ber_tlv_tag_t asn_DEF_DetectedObjectCommonData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectCommonData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* objType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* objTypeCfd */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* objectID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* measurementTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pos */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speedConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* speedZ */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* speedConfidenceZ */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* headingConf */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* accel4way */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* accCfdX */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* accCfdY */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* accCfdZ */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 } /* accCfdYaw */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1 = { - sizeof(struct DetectedObjectCommonData), - offsetof(struct DetectedObjectCommonData, _asn_ctx), - asn_MAP_DetectedObjectCommonData_tag2el_1, - 18, /* Count of tags in the map */ - asn_MAP_DetectedObjectCommonData_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 18, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData = { - "DetectedObjectCommonData", - "DetectedObjectCommonData", - &asn_OP_SEQUENCE, - asn_DEF_DetectedObjectCommonData_tags_1, - sizeof(asn_DEF_DetectedObjectCommonData_tags_1) - /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ - asn_DEF_DetectedObjectCommonData_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedObjectCommonData_tags_1) - /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DetectedObjectCommonData_1, - 18, /* Elements count */ - &asn_SPC_DetectedObjectCommonData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c deleted file mode 100644 index f15b14725..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedObjectData.h" - -asn_TYPE_member_t asn_MBR_DetectedObjectData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectData, detObjCommon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DetectedObjectCommonData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detObjCommon" - }, - { ATF_POINTER, 1, offsetof(struct DetectedObjectData, detObjOptData), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_DetectedObjectOptionalData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detObjOptData" - }, -}; -static const int asn_MAP_DetectedObjectData_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_DetectedObjectData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detObjCommon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* detObjOptData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1 = { - sizeof(struct DetectedObjectData), - offsetof(struct DetectedObjectData, _asn_ctx), - asn_MAP_DetectedObjectData_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_DetectedObjectData_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedObjectData = { - "DetectedObjectData", - "DetectedObjectData", - &asn_OP_SEQUENCE, - asn_DEF_DetectedObjectData_tags_1, - sizeof(asn_DEF_DetectedObjectData_tags_1) - /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ - asn_DEF_DetectedObjectData_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedObjectData_tags_1) - /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DetectedObjectData_1, - 2, /* Elements count */ - &asn_SPC_DetectedObjectData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c deleted file mode 100644 index 9cf444254..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedObjectList.h" - -static asn_oer_constraints_t asn_OER_type_DetectedObjectList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..256)) */}; -asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_DetectedObjectList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_DetectedObjectData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_DetectedObjectList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1 = { - sizeof(struct DetectedObjectList), - offsetof(struct DetectedObjectList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedObjectList = { - "DetectedObjectList", - "DetectedObjectList", - &asn_OP_SEQUENCE_OF, - asn_DEF_DetectedObjectList_tags_1, - sizeof(asn_DEF_DetectedObjectList_tags_1) - /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ - asn_DEF_DetectedObjectList_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedObjectList_tags_1) - /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ - { &asn_OER_type_DetectedObjectList_constr_1, &asn_PER_type_DetectedObjectList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_DetectedObjectList_1, - 1, /* Single element */ - &asn_SPC_DetectedObjectList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c deleted file mode 100644 index c00b24eeb..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedObjectOptionalData.h" - -static asn_oer_constraints_t asn_OER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVeh), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DetectedVehicleData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detVeh" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVRU), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DetectedVRUData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detVRU" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detObst), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DetectedObstacleData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detObst" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectOptionalData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detVeh */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* detVRU */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* detObst */ -}; -asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1 = { - sizeof(struct DetectedObjectOptionalData), - offsetof(struct DetectedObjectOptionalData, _asn_ctx), - offsetof(struct DetectedObjectOptionalData, present), - sizeof(((struct DetectedObjectOptionalData *)0)->present), - asn_MAP_DetectedObjectOptionalData_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData = { - "DetectedObjectOptionalData", - "DetectedObjectOptionalData", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_DetectedObjectOptionalData_constr_1, &asn_PER_type_DetectedObjectOptionalData_constr_1, CHOICE_constraint }, - asn_MBR_DetectedObjectOptionalData_1, - 3, /* Elements count */ - &asn_SPC_DetectedObjectOptionalData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c b/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c deleted file mode 100644 index fafab50a5..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedObstacleData.h" - -asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSize), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleSize, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obstSize" - }, - { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSizeConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleSizeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obstSizeConfidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_DetectedObstacleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedObstacleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obstSize */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* obstSizeConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1 = { - sizeof(struct DetectedObstacleData), - offsetof(struct DetectedObstacleData, _asn_ctx), - asn_MAP_DetectedObstacleData_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData = { - "DetectedObstacleData", - "DetectedObstacleData", - &asn_OP_SEQUENCE, - asn_DEF_DetectedObstacleData_tags_1, - sizeof(asn_DEF_DetectedObstacleData_tags_1) - /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ - asn_DEF_DetectedObstacleData_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedObstacleData_tags_1) - /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DetectedObstacleData_1, - 2, /* Elements count */ - &asn_SPC_DetectedObstacleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c b/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c deleted file mode 100644 index 29d981cbe..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedVRUData.h" - -asn_TYPE_member_t asn_MBR_DetectedVRUData_1[] = { - { ATF_POINTER, 4, offsetof(struct DetectedVRUData, basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUserType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_POINTER, 3, offsetof(struct DetectedVRUData, propulsion), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_PropelledInformation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "propulsion" - }, - { ATF_POINTER, 2, offsetof(struct DetectedVRUData, attachment), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Attachment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "attachment" - }, - { ATF_POINTER, 1, offsetof(struct DetectedVRUData, radius), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AttachmentRadius, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "radius" - }, -}; -static const int asn_MAP_DetectedVRUData_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_DetectedVRUData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedVRUData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* propulsion */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* attachment */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* radius */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1 = { - sizeof(struct DetectedVRUData), - offsetof(struct DetectedVRUData, _asn_ctx), - asn_MAP_DetectedVRUData_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_DetectedVRUData_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedVRUData = { - "DetectedVRUData", - "DetectedVRUData", - &asn_OP_SEQUENCE, - asn_DEF_DetectedVRUData_tags_1, - sizeof(asn_DEF_DetectedVRUData_tags_1) - /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ - asn_DEF_DetectedVRUData_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedVRUData_tags_1) - /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DetectedVRUData_1, - 4, /* Elements count */ - &asn_SPC_DetectedVRUData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c b/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c deleted file mode 100644 index 6fdf3e2e1..000000000 --- a/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "DetectedVehicleData.h" - -asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[] = { - { ATF_POINTER, 10, offsetof(struct DetectedVehicleData, lights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lights" - }, - { ATF_POINTER, 9, offsetof(struct DetectedVehicleData, vehAttitude), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Attitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehAttitude" - }, - { ATF_POINTER, 8, offsetof(struct DetectedVehicleData, vehAttitudeConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AttitudeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehAttitudeConfidence" - }, - { ATF_POINTER, 7, offsetof(struct DetectedVehicleData, vehAngVel), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AngularVelocity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehAngVel" - }, - { ATF_POINTER, 6, offsetof(struct DetectedVehicleData, vehAngVelConfidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AngularVelocityConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehAngVelConfidence" - }, - { ATF_POINTER, 5, offsetof(struct DetectedVehicleData, size), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSize, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "size" - }, - { ATF_POINTER, 4, offsetof(struct DetectedVehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "height" - }, - { ATF_POINTER, 3, offsetof(struct DetectedVehicleData, vehicleSizeConfidence), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSizeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleSizeConfidence" - }, - { ATF_POINTER, 2, offsetof(struct DetectedVehicleData, vehicleClass), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleClass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleClass" - }, - { ATF_POINTER, 1, offsetof(struct DetectedVehicleData, classConf), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ClassificationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "classConf" - }, -}; -static const int asn_MAP_DetectedVehicleData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_DetectedVehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DetectedVehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehAttitude */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehAttitudeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* vehAngVel */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehAngVelConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* size */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleSizeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* vehicleClass */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* classConf */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1 = { - sizeof(struct DetectedVehicleData), - offsetof(struct DetectedVehicleData, _asn_ctx), - asn_MAP_DetectedVehicleData_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_DetectedVehicleData_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData = { - "DetectedVehicleData", - "DetectedVehicleData", - &asn_OP_SEQUENCE, - asn_DEF_DetectedVehicleData_tags_1, - sizeof(asn_DEF_DetectedVehicleData_tags_1) - /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ - asn_DEF_DetectedVehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_DetectedVehicleData_tags_1) - /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DetectedVehicleData_1, - 10, /* Elements count */ - &asn_SPC_DetectedVehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c b/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c deleted file mode 100644 index e830c5fff..000000000 --- a/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DirectionOfUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DirectionOfUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 7, "forward" }, - { 2, 7, "reverse" }, - { 3, 4, "both" } -}; -static const unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { - 3, /* both(3) */ - 1, /* forward(1) */ - 2, /* reverse(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { - asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { - "DirectionOfUse", - "DirectionOfUse", - &asn_OP_NativeEnumerated, - asn_DEF_DirectionOfUse_tags_1, - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - asn_DEF_DirectionOfUse_tags_1, /* Same as above */ - sizeof(asn_DEF_DirectionOfUse_tags_1) - /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ - { &asn_OER_type_DirectionOfUse_constr_1, &asn_PER_type_DirectionOfUse_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c b/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c deleted file mode 100644 index 660f14778..000000000 --- a/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DisabledVehicle.h" - -static int -memb_statusDetails_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 523 && value <= 541)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_statusDetails_constr_2 CC_NOTUSED = { - { 2, 1 } /* (523..541) */, - -1}; -static asn_per_constraints_t asn_PER_memb_statusDetails_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_DisabledVehicle_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct DisabledVehicle, statusDetails), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { &asn_OER_memb_statusDetails_constr_2, &asn_PER_memb_statusDetails_constr_2, memb_statusDetails_constraint_1 }, - 0, 0, /* No default value */ - "statusDetails" - }, - { ATF_POINTER, 1, offsetof(struct DisabledVehicle, locationDetails), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericLocations, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "locationDetails" - }, -}; -static const int asn_MAP_DisabledVehicle_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_DisabledVehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_DisabledVehicle_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusDetails */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* locationDetails */ -}; -asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1 = { - sizeof(struct DisabledVehicle), - offsetof(struct DisabledVehicle, _asn_ctx), - asn_MAP_DisabledVehicle_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_DisabledVehicle_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_DisabledVehicle = { - "DisabledVehicle", - "DisabledVehicle", - &asn_OP_SEQUENCE, - asn_DEF_DisabledVehicle_tags_1, - sizeof(asn_DEF_DisabledVehicle_tags_1) - /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ - asn_DEF_DisabledVehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_DisabledVehicle_tags_1) - /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_DisabledVehicle_1, - 2, /* Elements count */ - &asn_SPC_DisabledVehicle_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DistanceUnits.c b/src/tmx/Asn_J2735/src/r63/DistanceUnits.c deleted file mode 100644 index e9d68ed93..000000000 --- a/src/tmx/Asn_J2735/src/r63/DistanceUnits.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DistanceUnits.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DistanceUnits_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_DistanceUnits_value2enum_1[] = { - { 0, 10, "centimeter" }, - { 1, 5, "cm2-5" }, - { 2, 9, "decimeter" }, - { 3, 5, "meter" }, - { 4, 9, "kilometer" }, - { 5, 4, "foot" }, - { 6, 4, "yard" }, - { 7, 4, "mile" } -}; -static const unsigned int asn_MAP_DistanceUnits_enum2value_1[] = { - 0, /* centimeter(0) */ - 1, /* cm2-5(1) */ - 2, /* decimeter(2) */ - 5, /* foot(5) */ - 4, /* kilometer(4) */ - 3, /* meter(3) */ - 7, /* mile(7) */ - 6 /* yard(6) */ -}; -const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1 = { - asn_MAP_DistanceUnits_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_DistanceUnits_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_DistanceUnits_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DistanceUnits = { - "DistanceUnits", - "DistanceUnits", - &asn_OP_NativeEnumerated, - asn_DEF_DistanceUnits_tags_1, - sizeof(asn_DEF_DistanceUnits_tags_1) - /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ - asn_DEF_DistanceUnits_tags_1, /* Same as above */ - sizeof(asn_DEF_DistanceUnits_tags_1) - /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ - { &asn_OER_type_DistanceUnits_constr_1, &asn_PER_type_DistanceUnits_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_DistanceUnits_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c deleted file mode 100644 index f204eae88..000000000 --- a/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DriveAxleLiftAirPressure.h" - -int -DriveAxleLiftAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1000) */, - -1}; -asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { - "DriveAxleLiftAirPressure", - "DriveAxleLiftAirPressure", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLiftAirPressure_tags_1, - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) - /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ - { &asn_OER_type_DriveAxleLiftAirPressure_constr_1, &asn_PER_type_DriveAxleLiftAirPressure_constr_1, DriveAxleLiftAirPressure_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c deleted file mode 100644 index 5ac72d25f..000000000 --- a/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DriveAxleLocation.h" - -int -DriveAxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { - "DriveAxleLocation", - "DriveAxleLocation", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLocation_tags_1, - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLocation_tags_1) - /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ - { &asn_OER_type_DriveAxleLocation_constr_1, &asn_PER_type_DriveAxleLocation_constr_1, DriveAxleLocation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c deleted file mode 100644 index bcc52459f..000000000 --- a/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DriveAxleLubePressure.h" - -int -DriveAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 250)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { - "DriveAxleLubePressure", - "DriveAxleLubePressure", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleLubePressure_tags_1, - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleLubePressure_tags_1) - /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ - { &asn_OER_type_DriveAxleLubePressure_constr_1, &asn_PER_type_DriveAxleLubePressure_constr_1, DriveAxleLubePressure_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c deleted file mode 100644 index d3e8870a3..000000000 --- a/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DriveAxleTemperature.h" - -int -DriveAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -40 && value <= 210)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-40..210) */, - -1}; -asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { - "DriveAxleTemperature", - "DriveAxleTemperature", - &asn_OP_NativeInteger, - asn_DEF_DriveAxleTemperature_tags_1, - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_DriveAxleTemperature_tags_1) - /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ - { &asn_OER_type_DriveAxleTemperature_constr_1, &asn_PER_type_DriveAxleTemperature_constr_1, DriveAxleTemperature_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c deleted file mode 100644 index 8e32dfffc..000000000 --- a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DrivenLineOffsetLg.h" - -int -DrivenLineOffsetLg_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { - "DrivenLineOffsetLg", - "DrivenLineOffsetLg", - &asn_OP_NativeInteger, - asn_DEF_DrivenLineOffsetLg_tags_1, - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ - { &asn_OER_type_DrivenLineOffsetLg_constr_1, &asn_PER_type_DrivenLineOffsetLg_constr_1, DrivenLineOffsetLg_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c deleted file mode 100644 index 2cc7388de..000000000 --- a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DrivenLineOffsetSm.h" - -int -DrivenLineOffsetSm_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2047 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2047..2047) */, - -1}; -asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { - "DrivenLineOffsetSm", - "DrivenLineOffsetSm", - &asn_OP_NativeInteger, - asn_DEF_DrivenLineOffsetSm_tags_1, - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) - /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ - { &asn_OER_type_DrivenLineOffsetSm_constr_1, &asn_PER_type_DrivenLineOffsetSm_constr_1, DrivenLineOffsetSm_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c deleted file mode 100644 index f65d3b82c..000000000 --- a/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "DrivingWheelAngle.h" - -int -DrivingWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { - "DrivingWheelAngle", - "DrivingWheelAngle", - &asn_OP_NativeInteger, - asn_DEF_DrivingWheelAngle_tags_1, - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_DrivingWheelAngle_tags_1) - /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_DrivingWheelAngle_constr_1, &asn_PER_type_DrivingWheelAngle_constr_1, DrivingWheelAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Duration.c b/src/tmx/Asn_J2735/src/r63/Duration.c deleted file mode 100644 index 23dded69e..000000000 --- a/src/tmx/Asn_J2735/src/r63/Duration.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Duration.h" - -int -Duration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 3600)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Duration_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..3600) */, - -1}; -static asn_per_constraints_t asn_PER_type_Duration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 3600 } /* (0..3600) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Duration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Duration = { - "Duration", - "Duration", - &asn_OP_NativeInteger, - asn_DEF_Duration_tags_1, - sizeof(asn_DEF_Duration_tags_1) - /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ - asn_DEF_Duration_tags_1, /* Same as above */ - sizeof(asn_DEF_Duration_tags_1) - /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ - { &asn_OER_type_Duration_constr_1, &asn_PER_type_Duration_constr_1, Duration_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EXTERNAL.c b/src/tmx/Asn_J2735/src/r63/EXTERNAL.c deleted file mode 100644 index c6bb518b5..000000000 --- a/src/tmx/Asn_J2735/src/r63/EXTERNAL.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" - * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EXTERNAL.h" - -static asn_oer_constraints_t asn_OER_type_encoding_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_encoding_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_encoding_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.single_ASN1_type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ANY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "single-ASN1-type" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.octet_aligned), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "octet-aligned" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.arbitrary), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BIT_STRING, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "arbitrary" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_encoding_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* single-ASN1-type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* octet-aligned */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* arbitrary */ -}; -static asn_CHOICE_specifics_t asn_SPC_encoding_specs_5 = { - sizeof(struct EXTERNAL__encoding), - offsetof(struct EXTERNAL__encoding, _asn_ctx), - offsetof(struct EXTERNAL__encoding, present), - sizeof(((struct EXTERNAL__encoding *)0)->present), - asn_MAP_encoding_tag2el_5, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_encoding_5 = { - "encoding", - "encoding", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_encoding_constr_5, &asn_PER_type_encoding_constr_5, CHOICE_constraint }, - asn_MBR_encoding_5, - 3, /* Elements count */ - &asn_SPC_encoding_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_EXTERNAL_1[] = { - { ATF_POINTER, 3, offsetof(struct EXTERNAL, direct_reference), - (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), - 0, - &asn_DEF_OBJECT_IDENTIFIER, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direct-reference" - }, - { ATF_POINTER, 2, offsetof(struct EXTERNAL, indirect_reference), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "indirect-reference" - }, - { ATF_POINTER, 1, offsetof(struct EXTERNAL, data_value_descriptor), - (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), - 0, - &asn_DEF_ObjectDescriptor, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "data-value-descriptor" - }, - { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL, encoding), - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_encoding_5, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "encoding" - }, -}; -static const int asn_MAP_EXTERNAL_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_EXTERNAL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EXTERNAL_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* indirect-reference */ - { (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), 0, 0, 0 }, /* direct-reference */ - { (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), 2, 0, 0 }, /* data-value-descriptor */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* single-ASN1-type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* octet-aligned */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 } /* arbitrary */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_EXTERNAL_specs_1 = { - sizeof(struct EXTERNAL), - offsetof(struct EXTERNAL, _asn_ctx), - asn_MAP_EXTERNAL_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EXTERNAL_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EXTERNAL = { - "EXTERNAL", - "EXTERNAL", - &asn_OP_SEQUENCE, - asn_DEF_EXTERNAL_tags_1, - sizeof(asn_DEF_EXTERNAL_tags_1) - /sizeof(asn_DEF_EXTERNAL_tags_1[0]) - 1, /* 1 */ - asn_DEF_EXTERNAL_tags_1, /* Same as above */ - sizeof(asn_DEF_EXTERNAL_tags_1) - /sizeof(asn_DEF_EXTERNAL_tags_1[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EXTERNAL_1, - 4, /* Elements count */ - &asn_SPC_EXTERNAL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c b/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c deleted file mode 100644 index c4e4e1943..000000000 --- a/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ElevationConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ElevationConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "elev-500-00" }, - { 2, 11, "elev-200-00" }, - { 3, 11, "elev-100-00" }, - { 4, 11, "elev-050-00" }, - { 5, 11, "elev-020-00" }, - { 6, 11, "elev-010-00" }, - { 7, 11, "elev-005-00" }, - { 8, 11, "elev-002-00" }, - { 9, 11, "elev-001-00" }, - { 10, 11, "elev-000-50" }, - { 11, 11, "elev-000-20" }, - { 12, 11, "elev-000-10" }, - { 13, 11, "elev-000-05" }, - { 14, 11, "elev-000-02" }, - { 15, 11, "elev-000-01" } -}; -static const unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { - 15, /* elev-000-01(15) */ - 14, /* elev-000-02(14) */ - 13, /* elev-000-05(13) */ - 12, /* elev-000-10(12) */ - 11, /* elev-000-20(11) */ - 10, /* elev-000-50(10) */ - 9, /* elev-001-00(9) */ - 8, /* elev-002-00(8) */ - 7, /* elev-005-00(7) */ - 6, /* elev-010-00(6) */ - 5, /* elev-020-00(5) */ - 4, /* elev-050-00(4) */ - 3, /* elev-100-00(3) */ - 2, /* elev-200-00(2) */ - 1, /* elev-500-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { - asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { - "ElevationConfidence", - "ElevationConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_ElevationConfidence_tags_1, - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - asn_DEF_ElevationConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ElevationConfidence_tags_1) - /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_ElevationConfidence_constr_1, &asn_PER_type_ElevationConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c b/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c deleted file mode 100644 index 313c518f6..000000000 --- a/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EmergencyDetails.h" - -asn_TYPE_member_t asn_MBR_EmergencyDetails_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sspRights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspRights" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sirenUse), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SirenInUse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sirenUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, lightsUse), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LightbarInUse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lightsUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, multi), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MultiVehicleResponse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "multi" - }, - { ATF_POINTER, 2, offsetof(struct EmergencyDetails, events), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrivilegedEvents, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "events" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyDetails, responseType), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponseType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responseType" - }, -}; -static const int asn_MAP_EmergencyDetails_oms_1[] = { 4, 5 }; -static const ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EmergencyDetails_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sirenUse */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lightsUse */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* multi */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* events */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* responseType */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1 = { - sizeof(struct EmergencyDetails), - offsetof(struct EmergencyDetails, _asn_ctx), - asn_MAP_EmergencyDetails_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EmergencyDetails_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { - "EmergencyDetails", - "EmergencyDetails", - &asn_OP_SEQUENCE, - asn_DEF_EmergencyDetails_tags_1, - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - asn_DEF_EmergencyDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyDetails_tags_1) - /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EmergencyDetails_1, - 6, /* Elements count */ - &asn_SPC_EmergencyDetails_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c deleted file mode 100644 index 02c57db90..000000000 --- a/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c +++ /dev/null @@ -1,231 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EmergencyVehicleAlert.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct EmergencyVehicleAlert__regional), - offsetof(struct EmergencyVehicleAlert__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { - { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSideAlert, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsaMsg" - }, - { ATF_POINTER, 8, offsetof(struct EmergencyVehicleAlert, responseType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponseType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responseType" - }, - { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, details), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmergencyDetails, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "details" - }, - { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, mass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, basicType), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, responseEquip), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responseEquip" - }, - { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responderType), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responderType" - }, - { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, regional), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10 }; -static const ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { - sizeof(struct EmergencyVehicleAlert), - offsetof(struct EmergencyVehicleAlert, _asn_ctx), - asn_MAP_EmergencyVehicleAlert_tag2el_1, - 11, /* Count of tags in the map */ - asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 11, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { - "EmergencyVehicleAlert", - "EmergencyVehicleAlert", - &asn_OP_SEQUENCE, - asn_DEF_EmergencyVehicleAlert_tags_1, - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) - /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EmergencyVehicleAlert_1, - 11, /* Elements count */ - &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EmissionType.c b/src/tmx/Asn_J2735/src/r63/EmissionType.c deleted file mode 100644 index 1cbdda68f..000000000 --- a/src/tmx/Asn_J2735/src/r63/EmissionType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EmissionType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EmissionType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_EmissionType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { - { 0, 5, "typeA" }, - { 1, 5, "typeB" }, - { 2, 5, "typeC" }, - { 3, 5, "typeD" }, - { 4, 5, "typeE" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_EmissionType_enum2value_1[] = { - 0, /* typeA(0) */ - 1, /* typeB(1) */ - 2, /* typeC(2) */ - 3, /* typeD(3) */ - 4 /* typeE(4) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { - asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EmissionType = { - "EmissionType", - "EmissionType", - &asn_OP_NativeEnumerated, - asn_DEF_EmissionType_tags_1, - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - asn_DEF_EmissionType_tags_1, /* Same as above */ - sizeof(asn_DEF_EmissionType_tags_1) - /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ - { &asn_OER_type_EmissionType_constr_1, &asn_PER_type_EmissionType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EmissionType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c b/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c deleted file mode 100644 index 36b928837..000000000 --- a/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EnabledLaneList.h" - -static asn_oer_constraints_t asn_OER_type_EnabledLaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { - sizeof(struct EnabledLaneList), - offsetof(struct EnabledLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { - "EnabledLaneList", - "EnabledLaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_EnabledLaneList_tags_1, - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - asn_DEF_EnabledLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_EnabledLaneList_tags_1) - /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ - { &asn_OER_type_EnabledLaneList_constr_1, &asn_PER_type_EnabledLaneList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_EnabledLaneList_1, - 1, /* Single element */ - &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EpochMins.c b/src/tmx/Asn_J2735/src/r63/EpochMins.c deleted file mode 100644 index 2c289fae8..000000000 --- a/src/tmx/Asn_J2735/src/r63/EpochMins.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EpochMins.h" - -int -EpochMins_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 153722867280912)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using INTEGER, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EpochMins_constr_1 CC_NOTUSED = { - { 8, 1 } /* (0..153722867280912) */, - -1}; -asn_per_constraints_t asn_PER_type_EpochMins_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 48, -1, 0, 153722867280912 } /* (0..153722867280912) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_EpochMins_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EpochMins = { - "EpochMins", - "EpochMins", - &asn_OP_INTEGER, - asn_DEF_EpochMins_tags_1, - sizeof(asn_DEF_EpochMins_tags_1) - /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ - asn_DEF_EpochMins_tags_1, /* Same as above */ - sizeof(asn_DEF_EpochMins_tags_1) - /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ - { &asn_OER_type_EpochMins_constr_1, &asn_PER_type_EpochMins_constr_1, EpochMins_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EquipmentType.c b/src/tmx/Asn_J2735/src/r63/EquipmentType.c deleted file mode 100644 index 7707fbfe9..000000000 --- a/src/tmx/Asn_J2735/src/r63/EquipmentType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "EquipmentType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EquipmentType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_EquipmentType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_EquipmentType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 3, "rsu" }, - { 2, 3, "obu" }, - { 3, 3, "vru" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_EquipmentType_enum2value_1[] = { - 2, /* obu(2) */ - 1, /* rsu(1) */ - 0, /* unknown(0) */ - 3 /* vru(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1 = { - asn_MAP_EquipmentType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EquipmentType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EquipmentType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EquipmentType = { - "EquipmentType", - "EquipmentType", - &asn_OP_NativeEnumerated, - asn_DEF_EquipmentType_tags_1, - sizeof(asn_DEF_EquipmentType_tags_1) - /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ - asn_DEF_EquipmentType_tags_1, /* Same as above */ - sizeof(asn_DEF_EquipmentType_tags_1) - /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ - { &asn_OER_type_EquipmentType_constr_1, &asn_PER_type_EquipmentType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EquipmentType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c b/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c deleted file mode 100644 index 5b0603e06..000000000 --- a/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EssMobileFriction.h" - -int -EssMobileFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 101)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EssMobileFriction_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..101) */, - -1}; -asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { - "EssMobileFriction", - "EssMobileFriction", - &asn_OP_NativeInteger, - asn_DEF_EssMobileFriction_tags_1, - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - asn_DEF_EssMobileFriction_tags_1, /* Same as above */ - sizeof(asn_DEF_EssMobileFriction_tags_1) - /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ - { &asn_OER_type_EssMobileFriction_constr_1, &asn_PER_type_EssMobileFriction_constr_1, EssMobileFriction_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c b/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c deleted file mode 100644 index 027197c33..000000000 --- a/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EssPrecipRate.h" - -int -EssPrecipRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EssPrecipRate_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { - "EssPrecipRate", - "EssPrecipRate", - &asn_OP_NativeInteger, - asn_DEF_EssPrecipRate_tags_1, - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipRate_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipRate_tags_1) - /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ - { &asn_OER_type_EssPrecipRate_constr_1, &asn_PER_type_EssPrecipRate_constr_1, EssPrecipRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c deleted file mode 100644 index 0cf1b0fa4..000000000 --- a/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EssPrecipSituation.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { - { 1, 5, "other" }, - { 2, 7, "unknown" }, - { 3, 15, "noPrecipitation" }, - { 4, 18, "unidentifiedSlight" }, - { 5, 20, "unidentifiedModerate" }, - { 6, 17, "unidentifiedHeavy" }, - { 7, 10, "snowSlight" }, - { 8, 12, "snowModerate" }, - { 9, 9, "snowHeavy" }, - { 10, 10, "rainSlight" }, - { 11, 12, "rainModerate" }, - { 12, 9, "rainHeavy" }, - { 13, 25, "frozenPrecipitationSlight" }, - { 14, 27, "frozenPrecipitationModerate" }, - { 15, 24, "frozenPrecipitationHeavy" } -}; -static const unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { - 14, /* frozenPrecipitationHeavy(15) */ - 13, /* frozenPrecipitationModerate(14) */ - 12, /* frozenPrecipitationSlight(13) */ - 2, /* noPrecipitation(3) */ - 0, /* other(1) */ - 11, /* rainHeavy(12) */ - 10, /* rainModerate(11) */ - 9, /* rainSlight(10) */ - 8, /* snowHeavy(9) */ - 7, /* snowModerate(8) */ - 6, /* snowSlight(7) */ - 5, /* unidentifiedHeavy(6) */ - 4, /* unidentifiedModerate(5) */ - 3, /* unidentifiedSlight(4) */ - 1 /* unknown(2) */ -}; -const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { - asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ - 15, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { - "EssPrecipSituation", - "EssPrecipSituation", - &asn_OP_NativeEnumerated, - asn_DEF_EssPrecipSituation_tags_1, - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipSituation_tags_1) - /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ - { &asn_OER_type_EssPrecipSituation_constr_1, &asn_PER_type_EssPrecipSituation_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c deleted file mode 100644 index 0eb20477e..000000000 --- a/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EssPrecipYesNo.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { - { 1, 6, "precip" }, - { 2, 8, "noPrecip" }, - { 3, 5, "error" } -}; -static const unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { - 2, /* error(3) */ - 1, /* noPrecip(2) */ - 0 /* precip(1) */ -}; -const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { - asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { - "EssPrecipYesNo", - "EssPrecipYesNo", - &asn_OP_NativeEnumerated, - asn_DEF_EssPrecipYesNo_tags_1, - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ - sizeof(asn_DEF_EssPrecipYesNo_tags_1) - /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ - { &asn_OER_type_EssPrecipYesNo_constr_1, &asn_PER_type_EssPrecipYesNo_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c deleted file mode 100644 index e38320e9e..000000000 --- a/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "NTCIP" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EssSolarRadiation.h" - -int -EssSolarRadiation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { - "EssSolarRadiation", - "EssSolarRadiation", - &asn_OP_NativeInteger, - asn_DEF_EssSolarRadiation_tags_1, - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ - sizeof(asn_DEF_EssSolarRadiation_tags_1) - /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ - { &asn_OER_type_EssSolarRadiation_constr_1, &asn_PER_type_EssSolarRadiation_constr_1, EssSolarRadiation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/EventDescription.c b/src/tmx/Asn_J2735/src/r63/EventDescription.c deleted file mode 100644 index 9c1e2fd6a..000000000 --- a/src/tmx/Asn_J2735/src/r63/EventDescription.c +++ /dev/null @@ -1,260 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "EventDescription.h" - -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 8)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_description_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_type_description_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_description_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_memb_description_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_description_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_description_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_description_specs_3 = { - sizeof(struct EventDescription__description), - offsetof(struct EventDescription__description, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_3 = { - "description", - "description", - &asn_OP_SEQUENCE_OF, - asn_DEF_description_tags_3, - sizeof(asn_DEF_description_tags_3) - /sizeof(asn_DEF_description_tags_3[0]) - 1, /* 1 */ - asn_DEF_description_tags_3, /* Same as above */ - sizeof(asn_DEF_description_tags_3) - /sizeof(asn_DEF_description_tags_3[0]), /* 2 */ - { &asn_OER_type_description_constr_3, &asn_PER_type_description_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_description_3, - 1, /* Single element */ - &asn_SPC_description_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct EventDescription__regional), - offsetof(struct EventDescription__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EventDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EventDescription, typeEvent), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "typeEvent" - }, - { ATF_POINTER, 5, offsetof(struct EventDescription, description), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_description_3, - 0, - { &asn_OER_memb_description_constr_3, &asn_PER_memb_description_constr_3, memb_description_constraint_1 }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 4, offsetof(struct EventDescription, priority), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Priority, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_POINTER, 3, offsetof(struct EventDescription, heading), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 2, offsetof(struct EventDescription, extent), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 1, offsetof(struct EventDescription, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_EventDescription_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_EventDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EventDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeEvent */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1 = { - sizeof(struct EventDescription), - offsetof(struct EventDescription, _asn_ctx), - asn_MAP_EventDescription_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_EventDescription_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EventDescription = { - "EventDescription", - "EventDescription", - &asn_OP_SEQUENCE, - asn_DEF_EventDescription_tags_1, - sizeof(asn_DEF_EventDescription_tags_1) - /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ - asn_DEF_EventDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_EventDescription_tags_1) - /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EventDescription_1, - 6, /* Elements count */ - &asn_SPC_EventDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ExitService.c b/src/tmx/Asn_J2735/src/r63/ExitService.c deleted file mode 100644 index c17a5f4ae..000000000 --- a/src/tmx/Asn_J2735/src/r63/ExitService.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ExitService.h" - -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_ExitService_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_ExitService_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct ExitService__Member__item), - offsetof(struct ExitService__Member__item, _asn_ctx), - offsetof(struct ExitService__Member__item, present), - sizeof(((struct ExitService__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ExitService__Member), - offsetof(struct ExitService__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ExitService_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { - sizeof(struct ExitService), - offsetof(struct ExitService, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ExitService = { - "ExitService", - "ExitService", - &asn_OP_SEQUENCE_OF, - asn_DEF_ExitService_tags_1, - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - asn_DEF_ExitService_tags_1, /* Same as above */ - sizeof(asn_DEF_ExitService_tags_1) - /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ - { &asn_OER_type_ExitService_constr_1, &asn_PER_type_ExitService_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ExitService_1, - 1, /* Single element */ - &asn_SPC_ExitService_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Extent.c b/src/tmx/Asn_J2735/src/r63/Extent.c deleted file mode 100644 index cb65fdde9..000000000 --- a/src/tmx/Asn_J2735/src/r63/Extent.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Extent.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Extent_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_Extent_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { - { 0, 16, "useInstantlyOnly" }, - { 1, 13, "useFor3meters" }, - { 2, 14, "useFor10meters" }, - { 3, 14, "useFor50meters" }, - { 4, 15, "useFor100meters" }, - { 5, 15, "useFor500meters" }, - { 6, 16, "useFor1000meters" }, - { 7, 16, "useFor5000meters" }, - { 8, 17, "useFor10000meters" }, - { 9, 17, "useFor50000meters" }, - { 10, 18, "useFor100000meters" }, - { 11, 18, "useFor500000meters" }, - { 12, 19, "useFor1000000meters" }, - { 13, 19, "useFor5000000meters" }, - { 14, 20, "useFor10000000meters" }, - { 15, 7, "forever" } -}; -static const unsigned int asn_MAP_Extent_enum2value_1[] = { - 15, /* forever(15) */ - 14, /* useFor10000000meters(14) */ - 12, /* useFor1000000meters(12) */ - 10, /* useFor100000meters(10) */ - 8, /* useFor10000meters(8) */ - 6, /* useFor1000meters(6) */ - 4, /* useFor100meters(4) */ - 2, /* useFor10meters(2) */ - 1, /* useFor3meters(1) */ - 13, /* useFor5000000meters(13) */ - 11, /* useFor500000meters(11) */ - 9, /* useFor50000meters(9) */ - 7, /* useFor5000meters(7) */ - 5, /* useFor500meters(5) */ - 3, /* useFor50meters(3) */ - 0 /* useInstantlyOnly(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { - asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Extent = { - "Extent", - "Extent", - &asn_OP_NativeEnumerated, - asn_DEF_Extent_tags_1, - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - asn_DEF_Extent_tags_1, /* Same as above */ - sizeof(asn_DEF_Extent_tags_1) - /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ - { &asn_OER_type_Extent_constr_1, &asn_PER_type_Extent_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Extent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ExteriorLights.c b/src/tmx/Asn_J2735/src/r63/ExteriorLights.c deleted file mode 100644 index fad1993b6..000000000 --- a/src/tmx/Asn_J2735/src/r63/ExteriorLights.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ExteriorLights.h" - -int -ExteriorLights_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ExteriorLights_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { - "ExteriorLights", - "ExteriorLights", - &asn_OP_BIT_STRING, - asn_DEF_ExteriorLights_tags_1, - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - asn_DEF_ExteriorLights_tags_1, /* Same as above */ - sizeof(asn_DEF_ExteriorLights_tags_1) - /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ - { &asn_OER_type_ExteriorLights_constr_1, &asn_PER_type_ExteriorLights_constr_1, ExteriorLights_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/FuelType.c b/src/tmx/Asn_J2735/src/r63/FuelType.c deleted file mode 100644 index 301ed513c..000000000 --- a/src/tmx/Asn_J2735/src/r63/FuelType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "FuelType.h" - -int -FuelType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_FuelType_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -asn_per_constraints_t asn_PER_type_FuelType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_FuelType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_FuelType = { - "FuelType", - "FuelType", - &asn_OP_NativeInteger, - asn_DEF_FuelType_tags_1, - sizeof(asn_DEF_FuelType_tags_1) - /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ - asn_DEF_FuelType_tags_1, /* Same as above */ - sizeof(asn_DEF_FuelType_tags_1) - /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ - { &asn_OER_type_FuelType_constr_1, &asn_PER_type_FuelType_constr_1, FuelType_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/FullPositionVector.c b/src/tmx/Asn_J2735/src/r63/FullPositionVector.c deleted file mode 100644 index cfad9fe61..000000000 --- a/src/tmx/Asn_J2735/src/r63/FullPositionVector.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "FullPositionVector.h" - -asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { - { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "utcTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "long" - }, - { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posAccuracy" - }, - { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeConfidence" - }, - { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidenceSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posConfidence" - }, - { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedConfidence" - }, -}; -static const int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { - sizeof(struct FullPositionVector), - offsetof(struct FullPositionVector, _asn_ctx), - asn_MAP_FullPositionVector_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_FullPositionVector_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { - "FullPositionVector", - "FullPositionVector", - &asn_OP_SEQUENCE, - asn_DEF_FullPositionVector_tags_1, - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - asn_DEF_FullPositionVector_tags_1, /* Same as above */ - sizeof(asn_DEF_FullPositionVector_tags_1) - /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_FullPositionVector_1, - 10, /* Elements count */ - &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c b/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c deleted file mode 100644 index 832211635..000000000 --- a/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "FurtherInfoID.h" - -int -FurtherInfoID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_FurtherInfoID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { - "FurtherInfoID", - "FurtherInfoID", - &asn_OP_OCTET_STRING, - asn_DEF_FurtherInfoID_tags_1, - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - asn_DEF_FurtherInfoID_tags_1, /* Same as above */ - sizeof(asn_DEF_FurtherInfoID_tags_1) - /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ - { &asn_OER_type_FurtherInfoID_constr_1, &asn_PER_type_FurtherInfoID_constr_1, FurtherInfoID_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GNSSstatus.c b/src/tmx/Asn_J2735/src/r63/GNSSstatus.c deleted file mode 100644 index 390afecfb..000000000 --- a/src/tmx/Asn_J2735/src/r63/GNSSstatus.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GNSSstatus.h" - -int -GNSSstatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_GNSSstatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_GNSSstatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GNSSstatus = { - "GNSSstatus", - "GNSSstatus", - &asn_OP_BIT_STRING, - asn_DEF_GNSSstatus_tags_1, - sizeof(asn_DEF_GNSSstatus_tags_1) - /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ - asn_DEF_GNSSstatus_tags_1, /* Same as above */ - sizeof(asn_DEF_GNSSstatus_tags_1) - /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ - { &asn_OER_type_GNSSstatus_constr_1, &asn_PER_type_GNSSstatus_constr_1, GNSSstatus_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GenericLane.c b/src/tmx/Asn_J2735/src/r63/GenericLane.c deleted file mode 100644 index 868910cde..000000000 --- a/src/tmx/Asn_J2735/src/r63/GenericLane.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GenericLane.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct GenericLane__regional), - offsetof(struct GenericLane__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GenericLane_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneID" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ingressApproach" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "egressApproach" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneAttributes" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AllowedManeuvers, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maneuvers" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nodeList" - }, - { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConnectsToList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connectsTo" - }, - { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OverlayLaneList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "overlays" - }, - { ATF_POINTER, 1, offsetof(struct GenericLane, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { - sizeof(struct GenericLane), - offsetof(struct GenericLane, _asn_ctx), - asn_MAP_GenericLane_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_GenericLane_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericLane = { - "GenericLane", - "GenericLane", - &asn_OP_SEQUENCE, - asn_DEF_GenericLane_tags_1, - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - asn_DEF_GenericLane_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericLane_tags_1) - /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GenericLane_1, - 10, /* Elements count */ - &asn_SPC_GenericLane_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GenericLocations.c b/src/tmx/Asn_J2735/src/r63/GenericLocations.c deleted file mode 100644 index ede6aac95..000000000 --- a/src/tmx/Asn_J2735/src/r63/GenericLocations.c +++ /dev/null @@ -1,246 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GenericLocations.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_GenericLocations_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_GenericLocations_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 95 } /* (0..95,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_GenericLocations_value2enum_1[] = { - { 7937, 10, "on-bridges" }, - { 7938, 10, "in-tunnels" }, - { 7939, 27, "entering-or-leaving-tunnels" }, - { 7940, 8, "on-ramps" }, - { 7941, 25, "in-road-construction-area" }, - { 7942, 14, "around-a-curve" }, - { 7943, 14, "on-minor-roads" }, - { 7944, 21, "in-the-opposing-lanes" }, - { 7945, 19, "adjacent-to-roadway" }, - { 7946, 7, "on-bend" }, - { 7947, 19, "entire-intersection" }, - { 7948, 13, "in-the-median" }, - { 7949, 21, "moved-to-side-of-road" }, - { 7950, 17, "moved-to-shoulder" }, - { 7951, 14, "on-the-roadway" }, - { 7952, 15, "in-shaded-areas" }, - { 7953, 18, "in-low-lying-areas" }, - { 7954, 20, "in-the-downtown-area" }, - { 7955, 22, "in-the-inner-city-area" }, - { 7956, 8, "in-parts" }, - { 7957, 14, "in-some-places" }, - { 7958, 12, "in-the-ditch" }, - { 7959, 13, "in-the-valley" }, - { 7960, 11, "on-hill-top" }, - { 7961, 18, "near-the-foothills" }, - { 7962, 17, "at-high-altitudes" }, - { 7963, 13, "near-the-lake" }, - { 7964, 14, "near-the-shore" }, - { 7965, 24, "over-the-crest-of-a-hill" }, - { 7966, 25, "other-than-on-the-roadway" }, - { 7967, 14, "near-the-beach" }, - { 7968, 23, "near-beach-access-point" }, - { 7969, 11, "lower-level" }, - { 7970, 11, "upper-level" }, - { 7971, 7, "airport" }, - { 7972, 9, "concourse" }, - { 7973, 4, "gate" }, - { 7974, 13, "baggage-claim" }, - { 7975, 13, "customs-point" }, - { 7976, 7, "station" }, - { 7977, 8, "platform" }, - { 7978, 4, "dock" }, - { 7979, 5, "depot" }, - { 7980, 17, "ev-charging-point" }, - { 7981, 25, "information-welcome-point" }, - { 7982, 12, "at-rest-area" }, - { 7983, 15, "at-service-area" }, - { 7984, 16, "at-weigh-station" }, - { 7985, 12, "picnic-areas" }, - { 7986, 9, "rest-area" }, - { 7987, 16, "service-stations" }, - { 7988, 7, "toilets" }, - { 7989, 12, "on-the-right" }, - { 7990, 11, "on-the-left" }, - { 7991, 13, "in-the-center" }, - { 7992, 25, "in-the-opposite-direction" }, - { 7993, 13, "cross-traffic" }, - { 7994, 18, "northbound-traffic" }, - { 7995, 17, "eastbound-traffic" }, - { 7996, 18, "southbound-traffic" }, - { 7997, 17, "westbound-traffic" }, - { 7998, 5, "north" }, - { 7999, 5, "south" }, - { 8000, 4, "east" }, - { 8001, 4, "west" }, - { 8002, 9, "northeast" }, - { 8003, 9, "northwest" }, - { 8004, 9, "southeast" }, - { 8005, 9, "southwest" }, - { 8006, 13, "mountain-pass" }, - { 8007, 18, "reservation-center" }, - { 8008, 12, "nearby-basin" }, - { 8009, 9, "on-tracks" }, - { 8010, 3, "dip" }, - { 8011, 14, "traffic-circle" }, - { 8012, 17, "park-and-ride-lot" }, - { 8014, 2, "to" }, - { 8015, 2, "by" }, - { 8016, 7, "through" }, - { 8017, 7, "area-of" }, - { 8018, 5, "under" }, - { 8019, 4, "over" }, - { 8020, 4, "from" }, - { 8021, 11, "approaching" }, - { 8022, 11, "entering-at" }, - { 8023, 10, "exiting-at" }, - { 8024, 13, "across-tracks" }, - { 8025, 9, "in-street" }, - { 8026, 8, "on-curve" }, - { 8027, 8, "shoulder" }, - { 8028, 9, "crossover" }, - { 8029, 10, "cross-road" }, - { 8030, 9, "side-road" }, - { 8031, 8, "bus-stop" }, - { 8032, 12, "intersection" }, - { 8033, 13, "roadside-park" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_GenericLocations_enum2value_1[] = { - 86, /* across-tracks(8024) */ - 8, /* adjacent-to-roadway(7945) */ - 34, /* airport(7971) */ - 83, /* approaching(8021) */ - 79, /* area-of(8017) */ - 5, /* around-a-curve(7942) */ - 25, /* at-high-altitudes(7962) */ - 45, /* at-rest-area(7982) */ - 46, /* at-service-area(7983) */ - 47, /* at-weigh-station(7984) */ - 37, /* baggage-claim(7974) */ - 93, /* bus-stop(8031) */ - 77, /* by(8015) */ - 35, /* concourse(7972) */ - 91, /* cross-road(8029) */ - 56, /* cross-traffic(7993) */ - 90, /* crossover(8028) */ - 38, /* customs-point(7975) */ - 42, /* depot(7979) */ - 73, /* dip(8010) */ - 41, /* dock(7978) */ - 63, /* east(8000) */ - 58, /* eastbound-traffic(7995) */ - 84, /* entering-at(8022) */ - 2, /* entering-or-leaving-tunnels(7939) */ - 10, /* entire-intersection(7947) */ - 43, /* ev-charging-point(7980) */ - 85, /* exiting-at(8023) */ - 82, /* from(8020) */ - 36, /* gate(7973) */ - 16, /* in-low-lying-areas(7953) */ - 19, /* in-parts(7956) */ - 4, /* in-road-construction-area(7941) */ - 15, /* in-shaded-areas(7952) */ - 20, /* in-some-places(7957) */ - 87, /* in-street(8025) */ - 54, /* in-the-center(7991) */ - 21, /* in-the-ditch(7958) */ - 17, /* in-the-downtown-area(7954) */ - 18, /* in-the-inner-city-area(7955) */ - 11, /* in-the-median(7948) */ - 7, /* in-the-opposing-lanes(7944) */ - 55, /* in-the-opposite-direction(7992) */ - 22, /* in-the-valley(7959) */ - 1, /* in-tunnels(7938) */ - 44, /* information-welcome-point(7981) */ - 94, /* intersection(8032) */ - 32, /* lower-level(7969) */ - 69, /* mountain-pass(8006) */ - 13, /* moved-to-shoulder(7950) */ - 12, /* moved-to-side-of-road(7949) */ - 31, /* near-beach-access-point(7968) */ - 30, /* near-the-beach(7967) */ - 24, /* near-the-foothills(7961) */ - 26, /* near-the-lake(7963) */ - 27, /* near-the-shore(7964) */ - 71, /* nearby-basin(8008) */ - 61, /* north(7998) */ - 57, /* northbound-traffic(7994) */ - 65, /* northeast(8002) */ - 66, /* northwest(8003) */ - 9, /* on-bend(7946) */ - 0, /* on-bridges(7937) */ - 88, /* on-curve(8026) */ - 23, /* on-hill-top(7960) */ - 6, /* on-minor-roads(7943) */ - 3, /* on-ramps(7940) */ - 53, /* on-the-left(7990) */ - 52, /* on-the-right(7989) */ - 14, /* on-the-roadway(7951) */ - 72, /* on-tracks(8009) */ - 29, /* other-than-on-the-roadway(7966) */ - 81, /* over(8019) */ - 28, /* over-the-crest-of-a-hill(7965) */ - 75, /* park-and-ride-lot(8012) */ - 48, /* picnic-areas(7985) */ - 40, /* platform(7977) */ - 70, /* reservation-center(8007) */ - 49, /* rest-area(7986) */ - 95, /* roadside-park(8033) */ - 50, /* service-stations(7987) */ - 89, /* shoulder(8027) */ - 92, /* side-road(8030) */ - 62, /* south(7999) */ - 59, /* southbound-traffic(7996) */ - 67, /* southeast(8004) */ - 68, /* southwest(8005) */ - 39, /* station(7976) */ - 78, /* through(8016) */ - 76, /* to(8014) */ - 51, /* toilets(7988) */ - 74, /* traffic-circle(8011) */ - 80, /* under(8018) */ - 33, /* upper-level(7970) */ - 64, /* west(8001) */ - 60 /* westbound-traffic(7997) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1 = { - asn_MAP_GenericLocations_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_GenericLocations_enum2value_1, /* N => "tag"; sorted by N */ - 96, /* Number of elements in the maps */ - 97, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_GenericLocations_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GenericLocations = { - "GenericLocations", - "GenericLocations", - &asn_OP_NativeEnumerated, - asn_DEF_GenericLocations_tags_1, - sizeof(asn_DEF_GenericLocations_tags_1) - /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ - asn_DEF_GenericLocations_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericLocations_tags_1) - /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ - { &asn_OER_type_GenericLocations_constr_1, &asn_PER_type_GenericLocations_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_GenericLocations_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GenericSignage.c b/src/tmx/Asn_J2735/src/r63/GenericSignage.c deleted file mode 100644 index 2235eb076..000000000 --- a/src/tmx/Asn_J2735/src/r63/GenericSignage.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GenericSignage.h" - -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_GenericSignage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct GenericSignage__Member__item), - offsetof(struct GenericSignage__Member__item, _asn_ctx), - offsetof(struct GenericSignage__Member__item, present), - sizeof(((struct GenericSignage__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct GenericSignage__Member), - offsetof(struct GenericSignage__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { - sizeof(struct GenericSignage), - offsetof(struct GenericSignage, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_GenericSignage = { - "GenericSignage", - "GenericSignage", - &asn_OP_SEQUENCE_OF, - asn_DEF_GenericSignage_tags_1, - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - asn_DEF_GenericSignage_tags_1, /* Same as above */ - sizeof(asn_DEF_GenericSignage_tags_1) - /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ - { &asn_OER_type_GenericSignage_constr_1, &asn_PER_type_GenericSignage_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_GenericSignage_1, - 1, /* Single element */ - &asn_SPC_GenericSignage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GeographicalPath.c b/src/tmx/Asn_J2735/src/r63/GeographicalPath.c deleted file mode 100644 index fe2af3be1..000000000 --- a/src/tmx/Asn_J2735/src/r63/GeographicalPath.c +++ /dev/null @@ -1,278 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GeographicalPath.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_description_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_description_constr_9 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_14 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_14 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_14 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_14 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_description_9[] = { - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.path), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetSystem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "path" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.geometry), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GeometricProjection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "geometry" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.oldRegion), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ValidRegion, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "oldRegion" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_description_tag2el_9[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* path */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* geometry */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oldRegion */ -}; -static asn_CHOICE_specifics_t asn_SPC_description_specs_9 = { - sizeof(struct GeographicalPath__description), - offsetof(struct GeographicalPath__description, _asn_ctx), - offsetof(struct GeographicalPath__description, present), - sizeof(((struct GeographicalPath__description *)0)->present), - asn_MAP_description_tag2el_9, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_9 = { - "description", - "description", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_description_constr_9, &asn_PER_type_description_constr_9, CHOICE_constraint }, - asn_MBR_description_9, - 3, /* Elements count */ - &asn_SPC_description_specs_9 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_14[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_14[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_14 = { - sizeof(struct GeographicalPath__regional), - offsetof(struct GeographicalPath__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_14 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_14, - sizeof(asn_DEF_regional_tags_14) - /sizeof(asn_DEF_regional_tags_14[0]) - 1, /* 1 */ - asn_DEF_regional_tags_14, /* Same as above */ - sizeof(asn_DEF_regional_tags_14) - /sizeof(asn_DEF_regional_tags_14[0]), /* 2 */ - { &asn_OER_type_regional_constr_14, &asn_PER_type_regional_constr_14, SEQUENCE_OF_constraint }, - asn_MBR_regional_14, - 1, /* Single element */ - &asn_SPC_regional_specs_14 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GeographicalPath_1[] = { - { ATF_POINTER, 9, offsetof(struct GeographicalPath, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 8, offsetof(struct GeographicalPath, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 7, offsetof(struct GeographicalPath, anchor), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 6, offsetof(struct GeographicalPath, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 5, offsetof(struct GeographicalPath, directionality), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "directionality" - }, - { ATF_POINTER, 4, offsetof(struct GeographicalPath, closedPath), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "closedPath" - }, - { ATF_POINTER, 3, offsetof(struct GeographicalPath, direction), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 2, offsetof(struct GeographicalPath, description), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_description_9, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct GeographicalPath, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_14, - 0, - { &asn_OER_memb_regional_constr_14, &asn_PER_memb_regional_constr_14, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GeographicalPath_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_GeographicalPath_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GeographicalPath_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* directionality */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closedPath */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1 = { - sizeof(struct GeographicalPath), - offsetof(struct GeographicalPath, _asn_ctx), - asn_MAP_GeographicalPath_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_GeographicalPath_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GeographicalPath = { - "GeographicalPath", - "GeographicalPath", - &asn_OP_SEQUENCE, - asn_DEF_GeographicalPath_tags_1, - sizeof(asn_DEF_GeographicalPath_tags_1) - /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ - asn_DEF_GeographicalPath_tags_1, /* Same as above */ - sizeof(asn_DEF_GeographicalPath_tags_1) - /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GeographicalPath_1, - 9, /* Elements count */ - &asn_SPC_GeographicalPath_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GeometricProjection.c b/src/tmx/Asn_J2735/src/r63/GeometricProjection.c deleted file mode 100644 index 7c163f4e4..000000000 --- a/src/tmx/Asn_J2735/src/r63/GeometricProjection.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GeometricProjection.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct GeometricProjection__regional), - offsetof(struct GeometricProjection__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_GeometricProjection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, direction), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 2, offsetof(struct GeometricProjection, extent), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 1, offsetof(struct GeometricProjection, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, circle), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Circle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "circle" - }, - { ATF_POINTER, 1, offsetof(struct GeometricProjection, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_GeometricProjection_oms_1[] = { 1, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_GeometricProjection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GeometricProjection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* circle */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1 = { - sizeof(struct GeometricProjection), - offsetof(struct GeometricProjection, _asn_ctx), - asn_MAP_GeometricProjection_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_GeometricProjection_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GeometricProjection = { - "GeometricProjection", - "GeometricProjection", - &asn_OP_SEQUENCE, - asn_DEF_GeometricProjection_tags_1, - sizeof(asn_DEF_GeometricProjection_tags_1) - /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ - asn_DEF_GeometricProjection_tags_1, /* Same as above */ - sizeof(asn_DEF_GeometricProjection_tags_1) - /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GeometricProjection_1, - 5, /* Elements count */ - &asn_SPC_GeometricProjection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GraphicString.c b/src/tmx/Asn_J2735/src/r63/GraphicString.c deleted file mode 100644 index e6642c9ae..000000000 --- a/src/tmx/Asn_J2735/src/r63/GraphicString.c +++ /dev/null @@ -1,58 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * GraphicString basic type description. - */ -static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -asn_TYPE_operation_t asn_OP_GraphicString = { - OCTET_STRING_free, - OCTET_STRING_print, /* non-ascii string */ - OCTET_STRING_compare, - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_hex, - OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */ -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_uper, - OCTET_STRING_decode_aper, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - OCTET_STRING_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_GraphicString = { - "GraphicString", - "GraphicString", - &asn_OP_GraphicString, - asn_DEF_GraphicString_tags, - sizeof(asn_DEF_GraphicString_tags) - / sizeof(asn_DEF_GraphicString_tags[0]) - 1, - asn_DEF_GraphicString_tags, - sizeof(asn_DEF_GraphicString_tags) - / sizeof(asn_DEF_GraphicString_tags[0]), - { 0, 0, asn_generic_unknown_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GrossDistance.c b/src/tmx/Asn_J2735/src/r63/GrossDistance.c deleted file mode 100644 index 921377318..000000000 --- a/src/tmx/Asn_J2735/src/r63/GrossDistance.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GrossDistance.h" - -int -GrossDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_GrossDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_GrossDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_GrossDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GrossDistance = { - "GrossDistance", - "GrossDistance", - &asn_OP_NativeInteger, - asn_DEF_GrossDistance_tags_1, - sizeof(asn_DEF_GrossDistance_tags_1) - /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ - asn_DEF_GrossDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_GrossDistance_tags_1) - /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ - { &asn_OER_type_GrossDistance_constr_1, &asn_PER_type_GrossDistance_constr_1, GrossDistance_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/GrossSpeed.c b/src/tmx/Asn_J2735/src/r63/GrossSpeed.c deleted file mode 100644 index 2ef1604ae..000000000 --- a/src/tmx/Asn_J2735/src/r63/GrossSpeed.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "GrossSpeed.h" - -int -GrossSpeed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_GrossSpeed_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_GrossSpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_GrossSpeed = { - "GrossSpeed", - "GrossSpeed", - &asn_OP_NativeInteger, - asn_DEF_GrossSpeed_tags_1, - sizeof(asn_DEF_GrossSpeed_tags_1) - /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ - asn_DEF_GrossSpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_GrossSpeed_tags_1) - /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ - { &asn_OER_type_GrossSpeed_constr_1, &asn_PER_type_GrossSpeed_constr_1, GrossSpeed_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Header.c b/src/tmx/Asn_J2735/src/r63/Header.c deleted file mode 100644 index 5b5c9c36d..000000000 --- a/src/tmx/Asn_J2735/src/r63/Header.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Header.h" - -asn_TYPE_member_t asn_MBR_Header_1[] = { - { ATF_POINTER, 4, offsetof(struct Header, year), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "year" - }, - { ATF_POINTER, 3, offsetof(struct Header, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct Header, secMark), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_POINTER, 1, offsetof(struct Header, msgIssueRevision), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgIssueRevision" - }, -}; -static const int asn_MAP_Header_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_Header_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Header_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* msgIssueRevision */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1 = { - sizeof(struct Header), - offsetof(struct Header, _asn_ctx), - asn_MAP_Header_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Header_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Header = { - "Header", - "Header", - &asn_OP_SEQUENCE, - asn_DEF_Header_tags_1, - sizeof(asn_DEF_Header_tags_1) - /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ - asn_DEF_Header_tags_1, /* Same as above */ - sizeof(asn_DEF_Header_tags_1) - /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Header_1, - 4, /* Elements count */ - &asn_SPC_Header_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Heading.c b/src/tmx/Asn_J2735/src/r63/Heading.c deleted file mode 100644 index 28b459e1f..000000000 --- a/src/tmx/Asn_J2735/src/r63/Heading.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Heading.h" - -int -Heading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Heading_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -asn_per_constraints_t asn_PER_type_Heading_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Heading = { - "Heading", - "Heading", - &asn_OP_NativeInteger, - asn_DEF_Heading_tags_1, - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - asn_DEF_Heading_tags_1, /* Same as above */ - sizeof(asn_DEF_Heading_tags_1) - /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ - { &asn_OER_type_Heading_constr_1, &asn_PER_type_Heading_constr_1, Heading_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c b/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c deleted file mode 100644 index 9dc9ec183..000000000 --- a/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "HeadingConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_HeadingConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec10deg" }, - { 2, 9, "prec05deg" }, - { 3, 9, "prec01deg" }, - { 4, 10, "prec0-1deg" }, - { 5, 11, "prec0-05deg" }, - { 6, 11, "prec0-01deg" }, - { 7, 13, "prec0-0125deg" } -}; -static const unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { - 7, /* prec0-0125deg(7) */ - 6, /* prec0-01deg(6) */ - 5, /* prec0-05deg(5) */ - 4, /* prec0-1deg(4) */ - 3, /* prec01deg(3) */ - 2, /* prec05deg(2) */ - 1, /* prec10deg(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { - asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { - "HeadingConfidence", - "HeadingConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_HeadingConfidence_tags_1, - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - asn_DEF_HeadingConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingConfidence_tags_1) - /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_HeadingConfidence_constr_1, &asn_PER_type_HeadingConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/HeadingSlice.c b/src/tmx/Asn_J2735/src/r63/HeadingSlice.c deleted file mode 100644 index f22662942..000000000 --- a/src/tmx/Asn_J2735/src/r63/HeadingSlice.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "HeadingSlice.h" - -int -HeadingSlice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_HeadingSlice_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { - "HeadingSlice", - "HeadingSlice", - &asn_OP_BIT_STRING, - asn_DEF_HeadingSlice_tags_1, - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - asn_DEF_HeadingSlice_tags_1, /* Same as above */ - sizeof(asn_DEF_HeadingSlice_tags_1) - /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ - { &asn_OER_type_HeadingSlice_constr_1, &asn_PER_type_HeadingSlice_constr_1, HeadingSlice_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Holiday.c b/src/tmx/Asn_J2735/src/r63/Holiday.c deleted file mode 100644 index 21b96702b..000000000 --- a/src/tmx/Asn_J2735/src/r63/Holiday.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Holiday.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Holiday_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_Holiday_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { - { 0, 7, "weekday" }, - { 1, 7, "holiday" } -}; -static const unsigned int asn_MAP_Holiday_enum2value_1[] = { - 1, /* holiday(1) */ - 0 /* weekday(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { - asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Holiday = { - "Holiday", - "Holiday", - &asn_OP_NativeEnumerated, - asn_DEF_Holiday_tags_1, - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - asn_DEF_Holiday_tags_1, /* Same as above */ - sizeof(asn_DEF_Holiday_tags_1) - /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ - { &asn_OER_type_Holiday_constr_1, &asn_PER_type_Holiday_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Holiday_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Hour.c b/src/tmx/Asn_J2735/src/r63/Hour.c deleted file mode 100644 index 6e7eb67b0..000000000 --- a/src/tmx/Asn_J2735/src/r63/Hour.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Hour.h" - -int -Hour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Hour_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_Hour_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Hour = { - "Hour", - "Hour", - &asn_OP_NativeInteger, - asn_DEF_Hour_tags_1, - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - asn_DEF_Hour_tags_1, /* Same as above */ - sizeof(asn_DEF_Hour_tags_1) - /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ - { &asn_OER_type_Hour_constr_1, &asn_PER_type_Hour_constr_1, Hour_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c b/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c deleted file mode 100644 index fbfc32578..000000000 --- a/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "HumanPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_HumanPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 6, "onFoot" }, - { 3, 10, "skateboard" }, - { 4, 17, "pushOrKickScooter" }, - { 5, 10, "wheelchair" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { - 2, /* onFoot(2) */ - 1, /* otherTypes(1) */ - 4, /* pushOrKickScooter(4) */ - 3, /* skateboard(3) */ - 0, /* unavailable(0) */ - 5 /* wheelchair(5) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { - asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { - "HumanPropelledType", - "HumanPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_HumanPropelledType_tags_1, - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - asn_DEF_HumanPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_HumanPropelledType_tags_1) - /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ - { &asn_OER_type_HumanPropelledType_constr_1, &asn_PER_type_HumanPropelledType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IA5String.c b/src/tmx/Asn_J2735/src/r63/IA5String.c deleted file mode 100644 index 1aeebf41b..000000000 --- a/src/tmx/Asn_J2735/src/r63/IA5String.c +++ /dev/null @@ -1,97 +0,0 @@ -/*- - * Copyright (c) 2003 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * IA5String basic type description. - */ -static const ber_tlv_tag_t asn_DEF_IA5String_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -static asn_per_constraints_t asn_DEF_IA5String_per_constraints = { - { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ - 0, 0 -}; -asn_TYPE_operation_t asn_OP_IA5String = { - OCTET_STRING_free, - OCTET_STRING_print_utf8, /* ASCII subset */ - OCTET_STRING_compare, - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_utf8, - OCTET_STRING_encode_xer_utf8, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - OCTET_STRING_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_IA5String = { - "IA5String", - "IA5String", - &asn_OP_IA5String, - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]) - 1, - asn_DEF_IA5String_tags, - sizeof(asn_DEF_IA5String_tags) - / sizeof(asn_DEF_IA5String_tags[0]), - { 0, &asn_DEF_IA5String_per_constraints, IA5String_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -int -IA5String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - - if(st && st->buf) { - uint8_t *buf = st->buf; - uint8_t *end = buf + st->size; - /* - * IA5String is generally equivalent to 7bit ASCII. - * ISO/ITU-T T.50, 1963. - */ - for(; buf < end; buf++) { - if(*buf > 0x7F) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value byte %ld out of range: " - "%d > 127 (%s:%d)", - td->name, - (long)((buf - st->buf) + 1), - *buf, - __FILE__, __LINE__); - return -1; - } - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - diff --git a/src/tmx/Asn_J2735/src/r63/INTEGER.c b/src/tmx/Asn_J2735/src/r63/INTEGER.c deleted file mode 100644 index beb572e35..000000000 --- a/src/tmx/Asn_J2735/src/r63/INTEGER.c +++ /dev/null @@ -1,1752 +0,0 @@ -/* - * Copyright (c) 2003-2019 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* Encoder and decoder of a primitive type */ -#include - -/* - * INTEGER basic type description. - */ -static const ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_operation_t asn_OP_INTEGER = { - INTEGER_free, - INTEGER_print, - INTEGER_compare, - ber_decode_primitive, - INTEGER_encode_der, - INTEGER_decode_xer, - INTEGER_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - INTEGER_decode_oer, /* OER decoder */ - INTEGER_encode_oer, /* Canonical OER encoder */ -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - INTEGER_decode_uper, /* Unaligned PER decoder */ - INTEGER_encode_uper, /* Unaligned PER encoder */ - INTEGER_decode_aper, /* Aligned PER decoder */ - INTEGER_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - INTEGER_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_INTEGER = { - "INTEGER", - "INTEGER", - &asn_OP_INTEGER, - asn_DEF_INTEGER_tags, - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - asn_DEF_INTEGER_tags, /* Same as above */ - sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Encode INTEGER type using DER. - */ -asn_enc_rval_t -INTEGER_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t rval; - INTEGER_t effective_integer; - - ASN_DEBUG("%s %s as INTEGER (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - /* - * Canonicalize integer in the buffer. - * (Remove too long sign extension, remove some first 0x00 bytes) - */ - if(st->buf) { - uint8_t *buf = st->buf; - uint8_t *end1 = buf + st->size - 1; - int shift; - - /* Compute the number of superfluous leading bytes */ - for(; buf < end1; buf++) { - /* - * If the contents octets of an integer value encoding - * consist of more than one octet, then the bits of the - * first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - switch(*buf) { - case 0x00: if((buf[1] & 0x80) == 0) - continue; - break; - case 0xff: if((buf[1] & 0x80)) - continue; - break; - } - break; - } - - /* Remove leading superfluous bytes from the integer */ - shift = buf - st->buf; - if(shift) { - union { - const uint8_t *c_buf; - uint8_t *nc_buf; - } unconst; - unconst.c_buf = st->buf; - effective_integer.buf = unconst.nc_buf + shift; - effective_integer.size = st->size - shift; - - st = &effective_integer; - } - } - - rval = der_encode_primitive(td, st, tag_mode, tag, cb, app_key); - if(rval.structure_ptr == &effective_integer) { - rval.structure_ptr = sptr; - } - return rval; -} - -static const asn_INTEGER_enum_map_t *INTEGER_map_enum2value( - const asn_INTEGER_specifics_t *specs, const char *lstart, - const char *lstop); - -/* - * INTEGER specific human-readable output. - */ -static ssize_t -INTEGER__dump(const asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; - uint8_t *buf = st->buf; - uint8_t *buf_end = st->buf + st->size; - intmax_t value; - ssize_t wrote = 0; - char *p; - int ret; - - if(specs && specs->field_unsigned) - ret = asn_INTEGER2umax(st, (uintmax_t *)&value); - else - ret = asn_INTEGER2imax(st, &value); - - /* Simple case: the integer size is small */ - if(ret == 0) { - const asn_INTEGER_enum_map_t *el; - el = (value >= 0 || !specs || !specs->field_unsigned) - ? INTEGER_map_value2enum(specs, value) : 0; - if(el) { - if(plainOrXER == 0) - return asn__format_to_callback(cb, app_key, - "%" ASN_PRIdMAX " (%s)", value, el->enum_name); - else - return asn__format_to_callback(cb, app_key, - "<%s/>", el->enum_name); - } else if(plainOrXER && specs && specs->strict_enumeration) { - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } else { - return asn__format_to_callback(cb, app_key, - (specs && specs->field_unsigned) - ? "%" ASN_PRIuMAX - : "%" ASN_PRIdMAX, - value); - } - } else if(plainOrXER && specs && specs->strict_enumeration) { - /* - * Here and earlier, we cannot encode the ENUMERATED values - * if there is no corresponding identifier. - */ - ASN_DEBUG("ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - errno = EPERM; - return -1; - } - - /* Output in the long xx:yy:zz... format */ - /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ - for(p = scratch; buf < buf_end; buf++) { - const char * const h2c = "0123456789ABCDEF"; - if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { - /* Flush buffer */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - wrote += p - scratch; - p = scratch; - } - *p++ = h2c[*buf >> 4]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x3a; /* ":" */ - } - if(p != scratch) - p--; /* Remove the last ":" */ - - wrote += p - scratch; - return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; -} - -/* - * INTEGER specific human-readable output. - */ -int -INTEGER_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - ssize_t ret; - - (void)ilevel; - - if(!st || !st->buf) - ret = cb("", 8, app_key); - else - ret = INTEGER__dump(td, st, cb, app_key, 0); - - return (ret < 0) ? -1 : 0; -} - -struct e2v_key { - const char *start; - const char *stop; - const asn_INTEGER_enum_map_t *vemap; - const unsigned int *evmap; -}; -static int -INTEGER__compar_enum2value(const void *kp, const void *am) { - const struct e2v_key *key = (const struct e2v_key *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - const char *ptr, *end, *name; - - /* Remap the element (sort by different criterion) */ - el = key->vemap + key->evmap[el - key->vemap]; - - /* Compare strings */ - for(ptr = key->start, end = key->stop, name = el->enum_name; - ptr < end; ptr++, name++) { - if(*ptr != *name || !*name) - return *(const unsigned char *)ptr - - *(const unsigned char *)name; - } - return name[0] ? -1 : 0; -} - -static const asn_INTEGER_enum_map_t * -INTEGER_map_enum2value(const asn_INTEGER_specifics_t *specs, const char *lstart, - const char *lstop) { - const asn_INTEGER_enum_map_t *el_found; - int count = specs ? specs->map_count : 0; - struct e2v_key key; - const char *lp; - - if(!count) return NULL; - - /* Guaranteed: assert(lstart < lstop); */ - /* Figure out the tag name */ - for(lstart++, lp = lstart; lp < lstop; lp++) { - switch(*lp) { - case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ - case 0x2f: /* '/' */ case 0x3e: /* '>' */ - break; - default: - continue; - } - break; - } - if(lp == lstop) return NULL; /* No tag found */ - lstop = lp; - - key.start = lstart; - key.stop = lstop; - key.vemap = specs->value2enum; - key.evmap = specs->enum2value; - el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, - specs->value2enum, count, sizeof(specs->value2enum[0]), - INTEGER__compar_enum2value); - if(el_found) { - /* Remap enum2value into value2enum */ - el_found = key.vemap + key.evmap[el_found - key.vemap]; - } - return el_found; -} - -static int -INTEGER__compar_value2enum(const void *kp, const void *am) { - long a = *(const long *)kp; - const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; - long b = el->nat_value; - if(a < b) return -1; - else if(a == b) return 0; - else return 1; -} - -const asn_INTEGER_enum_map_t * -INTEGER_map_value2enum(const asn_INTEGER_specifics_t *specs, long value) { - int count = specs ? specs->map_count : 0; - if(!count) return 0; - return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, - count, sizeof(specs->value2enum[0]), - INTEGER__compar_value2enum); -} - -static int -INTEGER_st_prealloc(INTEGER_t *st, int min_size) { - void *p = MALLOC(min_size + 1); - if(p) { - void *b = st->buf; - st->size = 0; - st->buf = p; - FREEMEM(b); - return 0; - } else { - return -1; - } -} - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -static enum xer_pbd_rval -INTEGER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - INTEGER_t *st = (INTEGER_t *)sptr; - intmax_t dec_value; - intmax_t hex_value = 0; - const char *lp; - const char *lstart = (const char *)chunk_buf; - const char *lstop = lstart + chunk_size; - enum { - ST_LEADSPACE, - ST_SKIPSPHEX, - ST_WAITDIGITS, - ST_DIGITS, - ST_DIGITS_TRAILSPACE, - ST_HEXDIGIT1, - ST_HEXDIGIT2, - ST_HEXDIGITS_TRAILSPACE, - ST_HEXCOLON, - ST_END_ENUM, - ST_UNEXPECTED - } state = ST_LEADSPACE; - const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ - const char *dec_value_end = 0; - - if(chunk_size) - ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", - (long)chunk_size, *lstart, lstop[-1]); - - if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) - return XPBD_SYSTEM_FAILURE; - - /* - * We may have received a tag here. It will be processed inline. - * Use strtoul()-like code and serialize the result. - */ - for(lp = lstart; lp < lstop; lp++) { - int lv = *lp; - switch(lv) { - case 0x09: case 0x0a: case 0x0d: case 0x20: - switch(state) { - case ST_LEADSPACE: - case ST_DIGITS_TRAILSPACE: - case ST_HEXDIGITS_TRAILSPACE: - case ST_SKIPSPHEX: - continue; - case ST_DIGITS: - dec_value_end = lp; - state = ST_DIGITS_TRAILSPACE; - continue; - case ST_HEXCOLON: - state = ST_HEXDIGITS_TRAILSPACE; - continue; - default: - break; - } - break; - case 0x2d: /* '-' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x2b: /* '+' */ - if(state == ST_LEADSPACE) { - dec_value = 0; - dec_value_start = lp; - state = ST_WAITDIGITS; - continue; - } - break; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: - switch(state) { - case ST_DIGITS: continue; - case ST_SKIPSPHEX: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = (lv - 0x30) << 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += (lv - 0x30); - state = ST_HEXCOLON; - st->buf[st->size++] = (uint8_t)hex_value; - continue; - case ST_HEXCOLON: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - dec_value = 0; - dec_value_start = lp; - /* FALL THROUGH */ - case ST_WAITDIGITS: - state = ST_DIGITS; - continue; - default: - break; - } - break; - case 0x3c: /* '<', start of XML encoded enumeration */ - if(state == ST_LEADSPACE) { - const asn_INTEGER_enum_map_t *el; - el = INTEGER_map_enum2value( - (const asn_INTEGER_specifics_t *) - td->specifics, lstart, lstop); - if(el) { - ASN_DEBUG("Found \"%s\" => %ld", - el->enum_name, el->nat_value); - dec_value = el->nat_value; - state = ST_END_ENUM; - lp = lstop - 1; - continue; - } - ASN_DEBUG("Unknown identifier for INTEGER"); - } - return XPBD_BROKEN_ENCODING; - case 0x3a: /* ':' */ - if(state == ST_HEXCOLON) { - /* This colon is expected */ - state = ST_HEXDIGIT1; - continue; - } else if(state == ST_DIGITS) { - /* The colon here means that we have - * decoded the first two hexadecimal - * places as a decimal value. - * Switch decoding mode. */ - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - } else { - ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); - break; - } - /* [A-Fa-f] */ - case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: - case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: - switch(state) { - case ST_SKIPSPHEX: - case ST_LEADSPACE: /* Fall through */ - case ST_HEXDIGIT1: - hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - hex_value <<= 4; - state = ST_HEXDIGIT2; - continue; - case ST_HEXDIGIT2: - hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); - hex_value += 10; - st->buf[st->size++] = (uint8_t)hex_value; - state = ST_HEXCOLON; - continue; - case ST_DIGITS: - ASN_DEBUG("INTEGER re-evaluate as hex form"); - state = ST_SKIPSPHEX; - dec_value_start = 0; - lp = lstart - 1; - continue; - default: - break; - } - break; - } - - /* Found extra non-numeric stuff */ - ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", - lv, (long)(lp - lstart)); - state = ST_UNEXPECTED; - break; - } - - switch(state) { - case ST_END_ENUM: - /* Got a complete and valid enumeration encoded as a tag. */ - break; - case ST_DIGITS: - dec_value_end = lstop; - /* FALL THROUGH */ - case ST_DIGITS_TRAILSPACE: - /* The last symbol encountered was a digit. */ - switch(asn_strtoimax_lim(dec_value_start, &dec_value_end, &dec_value)) { - case ASN_STRTOX_OK: - if(specs && specs->field_unsigned && (uintmax_t) dec_value <= ULONG_MAX) { - break; - } else if(dec_value >= LONG_MIN && dec_value <= LONG_MAX) { - break; - } else { - /* - * We model INTEGER on long for XER, - * to avoid rewriting all the tests at once. - */ - ASN_DEBUG("INTEGER exceeds long range"); - } - /* Fall through */ - case ASN_STRTOX_ERROR_RANGE: - ASN_DEBUG("INTEGER decode %s hit range limit", td->name); - return XPBD_DECODER_LIMIT; - case ASN_STRTOX_ERROR_INVAL: - case ASN_STRTOX_EXPECT_MORE: - case ASN_STRTOX_EXTRA_DATA: - return XPBD_BROKEN_ENCODING; - } - break; - case ST_HEXCOLON: - case ST_HEXDIGITS_TRAILSPACE: - st->buf[st->size] = 0; /* Just in case termination */ - return XPBD_BODY_CONSUMED; - case ST_HEXDIGIT1: - case ST_HEXDIGIT2: - case ST_SKIPSPHEX: - return XPBD_BROKEN_ENCODING; - case ST_LEADSPACE: - /* Content not found */ - return XPBD_NOT_BODY_IGNORE; - case ST_WAITDIGITS: - case ST_UNEXPECTED: - ASN_DEBUG("INTEGER: No useful digits (state %d)", state); - return XPBD_BROKEN_ENCODING; /* No digits */ - } - - /* - * Convert the result of parsing of enumeration or a straight - * decimal value into a BER representation. - */ - if(asn_imax2INTEGER(st, dec_value)) { - ASN_DEBUG("INTEGER decode %s conversion failed", td->name); - return XPBD_SYSTEM_FAILURE; - } - - return XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -INTEGER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(INTEGER_t), opt_mname, - buf_ptr, size, INTEGER__xer_body_decode); -} - -asn_enc_rval_t -INTEGER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) - ASN__ENCODE_FAILED; - - er.encoded = INTEGER__dump(td, st, cb, app_key, 1); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -INTEGER_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - INTEGER_t *st = (INTEGER_t *)*sptr; - const asn_per_constraint_t *ct; - int repeat; - - (void)opt_codec_ctx; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - if(ct) { - if(ct->flags & APC_SEMI_CONSTRAINED) { - st->buf = (uint8_t *)CALLOC(1, 2); - if(!st->buf) ASN__DECODE_FAILED; - st->size = 1; - } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { - size_t size = (ct->range_bits + 7) >> 3; - st->buf = (uint8_t *)MALLOC(1 + size + 1); - if(!st->buf) ASN__DECODE_FAILED; - st->size = size; - } - } - - /* X.691-2008/11, #13.2.2, constrained whole number */ - if(ct && ct->flags != APC_UNCONSTRAINED) { - /* #11.5.6 */ - ASN_DEBUG("Integer with range %d bits", ct->range_bits); - if(ct->range_bits >= 0) { - if((size_t)ct->range_bits > 8 * sizeof(uintmax_t)) - ASN__DECODE_FAILED; - - if(specs && specs->field_unsigned) { - uintmax_t uvalue = 0; - if(uper_get_constrained_whole_number(pd, - &uvalue, ct->range_bits)) - ASN__DECODE_STARVED; - ASN_DEBUG("Got value %lu + low %ld", - uvalue, ct->lower_bound); - uvalue += ct->lower_bound; - if(asn_ulong2INTEGER(st, uvalue)) - ASN__DECODE_FAILED; - } else { - uintmax_t uvalue = 0; - intmax_t svalue; - if(uper_get_constrained_whole_number(pd, - &uvalue, ct->range_bits)) - ASN__DECODE_STARVED; - ASN_DEBUG("Got value %lu + low %ld", - uvalue, ct->lower_bound); - if(per_imax_range_unrebase(uvalue, ct->lower_bound, - ct->upper_bound, &svalue) - || asn_imax2INTEGER(st, svalue)) { - ASN__DECODE_FAILED; - } - } - return rval; - } - } else { - ASN_DEBUG("Decoding unconstrained integer %s", td->name); - } - - /* X.691, #12.2.3, #12.2.4 */ - do { - ssize_t len = 0; - void *p = NULL; - int ret = 0; - - /* Get the PER length */ - len = uper_get_length(pd, -1, 0, &repeat); - if(len < 0) ASN__DECODE_STARVED; - - p = REALLOC(st->buf, st->size + len + 1); - if(!p) ASN__DECODE_FAILED; - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); - if(ret < 0) ASN__DECODE_STARVED; - st->size += len; - } while(repeat); - st->buf[st->size] = 0; /* JIC */ - - /* #12.2.3 */ - if(ct && ct->lower_bound) { - /* - * TODO: replace by in-place arithmetic. - */ - long value = 0; - if(asn_INTEGER2long(st, &value)) - ASN__DECODE_FAILED; - if(asn_imax2INTEGER(st, value + ct->lower_bound)) - ASN__DECODE_FAILED; - } - - return rval; -} - -asn_enc_rval_t -INTEGER_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const INTEGER_t *st = (const INTEGER_t *)sptr; - const uint8_t *buf; - const uint8_t *end; - const asn_per_constraint_t *ct; - intmax_t value = 0; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - er.encoded = 0; - - if(ct) { - int inext = 0; - if(specs && specs->field_unsigned) { - uintmax_t uval; - if(asn_INTEGER2umax(st, &uval)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(uval < (uintmax_t)ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(uval < (uintmax_t)ct->lower_bound - || uval > (uintmax_t)ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%" ASN_PRI_SIZE ") lb %lu ub %lu %s", - uval, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - value = uval; - } else { - if(asn_INTEGER2imax(st, &value)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value < ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value < ct->lower_bound - || value > ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %ld (%02x/%" ASN_PRI_SIZE ") lb %ld ub %ld %s", - value, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - } - - - /* X.691-11/2008, #13.2.2, test if constrained whole number */ - if(ct && ct->range_bits >= 0) { - uintmax_t v; - /* #11.5.6 -> #11.3 */ - ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", - value, value - ct->lower_bound, ct->range_bits); - if(specs && specs->field_unsigned) { - if ( ((uintmax_t)ct->lower_bound > (uintmax_t)(ct->upper_bound) - || ((uintmax_t)value < (uintmax_t)ct->lower_bound)) - || ((uintmax_t)value > (uintmax_t)ct->upper_bound) - ) { - ASN_DEBUG("Value %lu to-be-encoded is outside the bounds [%lu, %lu]!", - value, ct->lower_bound, ct->upper_bound); - ASN__ENCODE_FAILED; - } - v = (uintmax_t)value - (uintmax_t)ct->lower_bound; - } else { - if(per_imax_range_rebase(value, ct->lower_bound, ct->upper_bound, &v)) { - ASN__ENCODE_FAILED; - } - } - if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(ct && ct->lower_bound) { - ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); - /* TODO: adjust lower bound */ - ASN__ENCODE_FAILED; - } - - for(buf = st->buf, end = st->buf + st->size; buf < end;) { - int need_eom = 0; - ssize_t mayEncode = uper_put_length(po, end - buf, &need_eom); - if(mayEncode < 0) - ASN__ENCODE_FAILED; - if(per_put_many_bits(po, buf, 8 * mayEncode)) - ASN__ENCODE_FAILED; - buf += mayEncode; - if(need_eom && uper_put_length(po, 0, 0)) ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -INTEGER_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - INTEGER_t *st = (INTEGER_t *)*sptr; - const asn_per_constraint_t *ct; - int repeat; - - (void)opt_codec_ctx; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - if(ct) { - if(ct->flags & APC_SEMI_CONSTRAINED) { - st->buf = (uint8_t *)CALLOC(1, 2); - if(!st->buf) ASN__DECODE_FAILED; - st->size = 1; - } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { - size_t size = (ct->range_bits + 7) >> 3; - st->buf = (uint8_t *)MALLOC(1 + size + 1); - if(!st->buf) ASN__DECODE_FAILED; - st->size = size; - } - } - - /* X.691, #12.2.2 */ - if(ct && ct->flags != APC_UNCONSTRAINED) { - /* #10.5.6 */ - ASN_DEBUG("Integer with range %d bits", ct->range_bits); - if(ct->range_bits >= 0) { - if (ct->range_bits > 16) { - int max_range_bytes = (ct->range_bits >> 3) + - (((ct->range_bits % 8) > 0) ? 1 : 0); - int length = 0, i; - long value = 0; - - for (i = 1; ; i++) { - int upper = 1 << i; - if (upper >= max_range_bytes) - break; - } - ASN_DEBUG("Can encode %d (%d bytes) in %d bits", ct->range_bits, - max_range_bytes, i); - - if ((length = per_get_few_bits(pd, i)) < 0) - ASN__DECODE_FAILED; - - /* X.691 #12.2.6 length determinant + lb (1) */ - length += 1; - ASN_DEBUG("Got length %d", length); - if (aper_get_align(pd) != 0) - ASN__DECODE_FAILED; - while (length--) { - int buf = per_get_few_bits(pd, 8); - if (buf < 0) - ASN__DECODE_FAILED; - value += (((long)buf) << (8 * length)); - } - - value += ct->lower_bound; - if((specs && specs->field_unsigned) - ? asn_uint642INTEGER(st, (unsigned long)value) - : asn_int642INTEGER(st, value)) - ASN__DECODE_FAILED; - ASN_DEBUG("Got value %ld + low %ld", - value, ct->lower_bound); - } else { - long value = 0; - if (ct->range_bits < 8) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - } else if (ct->range_bits == 8) { - if (aper_get_align(pd) < 0) - ASN__DECODE_FAILED; - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - } else { - /* Align */ - if (aper_get_align(pd) < 0) - ASN__DECODE_FAILED; - value = per_get_few_bits(pd, 16); - if(value < 0) ASN__DECODE_STARVED; - } - value += ct->lower_bound; - if((specs && specs->field_unsigned) - ? asn_ulong2INTEGER(st, value) - : asn_long2INTEGER(st, value)) - ASN__DECODE_FAILED; - ASN_DEBUG("Got value %ld + low %ld", - value, ct->lower_bound); - } - return rval; - } else { - ASN__DECODE_FAILED; - } - } else { - ASN_DEBUG("Decoding unconstrained integer %s", td->name); - } - - /* X.691, #12.2.3, #12.2.4 */ - do { - ssize_t len; - void *p; - int ret; - - /* Get the PER length */ - len = aper_get_length(pd, -1, -1, &repeat); - if(len < 0) ASN__DECODE_STARVED; - - p = REALLOC(st->buf, st->size + len + 1); - if(!p) ASN__DECODE_FAILED; - st->buf = (uint8_t *)p; - - ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); - if(ret < 0) ASN__DECODE_STARVED; - st->size += len; - } while(repeat); - st->buf[st->size] = 0; /* JIC */ - - /* #12.2.3 */ - if(ct && ct->lower_bound) { - /* - * TODO: replace by in-place arithmetics. - */ - long value; - if(asn_INTEGER2long(st, &value)) - ASN__DECODE_FAILED; - if(asn_long2INTEGER(st, value + ct->lower_bound)) - ASN__DECODE_FAILED; - } - - return rval; -} - -asn_enc_rval_t -INTEGER_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const INTEGER_t *st = (const INTEGER_t *)sptr; - const uint8_t *buf; - const uint8_t *end; - const asn_per_constraint_t *ct; - long value = 0; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.per_constraints; - ct = constraints ? &constraints->value : 0; - - er.encoded = 0; - - if(ct) { - int inext = 0; - if(specs && specs->field_unsigned) { - unsigned long uval; - if(asn_INTEGER2ulong(st, &uval)) - ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(uval < (unsigned long)ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(uval < (unsigned long)ct->lower_bound - || uval > (unsigned long)ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%lu) lb %ld ub %ld %s", - uval, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - value = uval; - } else { - if(asn_INTEGER2long(st, &value)) ASN__ENCODE_FAILED; - /* Check proper range */ - if(ct->flags & APC_SEMI_CONSTRAINED) { - if(value < ct->lower_bound) - inext = 1; - } else if(ct->range_bits >= 0) { - if(value < ct->lower_bound - || value > ct->upper_bound) - inext = 1; - } - ASN_DEBUG("Value %lu (%02x/%lu) lb %ld ub %ld %s", - value, st->buf[0], st->size, - ct->lower_bound, ct->upper_bound, - inext ? "ext" : "fix"); - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - } - - /* X.691, #12.2.2 */ - if(ct && ct->range_bits >= 0) { - unsigned long v; - - /* #10.5.6 */ - ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", - value, value - ct->lower_bound, ct->range_bits); - - v = value - ct->lower_bound; - - /* #12 <= 8 -> alignment ? */ - int range = ct->upper_bound - ct->lower_bound + 1; - if (ct->range_bits < 8 || (ct->range_bits == 8 && range < 256)) { - if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) - ASN__ENCODE_FAILED; - } else if (ct->range_bits == 8) { - if(aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) - ASN__ENCODE_FAILED; - } else if (ct->range_bits <= 16) { - /* Consume the bytes to align on octet */ - if(aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - if(per_put_few_bits(po, 0x0000 | v, - 16)) - ASN__ENCODE_FAILED; - } else { - /* TODO: extend to >64 bits */ - int64_t v64 = v; - int i, j; - int max_range_bytes = (ct->range_bits >> 3) + - (((ct->range_bits % 8) > 0) ? 1 : 0); - - for (i = 1; ; i++) { - int upper = 1 << i; - if (upper >= max_range_bytes) - break; - } - - for (j = sizeof(int64_t) -1; j != 0; j--) { - int64_t val; - val = v64 >> (j * 8); - if (val != 0) - break; - } - - /* Putting length in the minimum number of bits ex: 5 = 3bits */ - if (per_put_few_bits(po, j, i)) - ASN__ENCODE_FAILED; - - /* Consume the bits to align on octet */ - if (aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - /* Put the value */ - for (i = 0; i <= j; i++) { - if(per_put_few_bits(po, (v64 >> (8 * (j - i))) & 0xff, 8)) - ASN__ENCODE_FAILED; - } - } - ASN__ENCODED_OK(er); - } - - if(ct && ct->lower_bound) { - ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); - /* TODO: adjust lower bound */ - ASN__ENCODE_FAILED; - } - - for(buf = st->buf, end = st->buf + st->size; buf < end;) { - int need_eom = 0; - ssize_t mayEncode = aper_put_length(po, -1, end - buf, &need_eom); - if(mayEncode < 0) - ASN__ENCODE_FAILED; - if(per_put_many_bits(po, buf, 8 * mayEncode)) - ASN__ENCODE_FAILED; - buf += mayEncode; - if(need_eom && aper_put_length(po, -1, 0, 0)) ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -static intmax_t -asn__integer_convert(const uint8_t *b, const uint8_t *end) { - uintmax_t value; - - /* Perform the sign initialization */ - /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ - if((*b >> 7)) { - value = (uintmax_t)(-1); - } else { - value = 0; - } - - /* Conversion engine */ - for(; b < end; b++) { - value = (value << 8) | *b; - } - - return value; -} - -int -asn_INTEGER2imax(const INTEGER_t *iptr, intmax_t *lptr) { - uint8_t *b, *end; - size_t size; - - /* Sanity checking */ - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - /* Cache the begin/end of the buffer */ - b = iptr->buf; /* Start of the INTEGER buffer */ - size = iptr->size; - end = b + size; /* Where to stop */ - - if(size > sizeof(intmax_t)) { - uint8_t *end1 = end - 1; - /* - * Slightly more advanced processing, - * able to process INTEGERs with >sizeof(intmax_t) bytes - * when the actual value is small, e.g. for intmax_t == int32_t - * (0x0000000000abcdef INTEGER would yield a fine 0x00abcdef int32_t) - */ - /* Skip out the insignificant leading bytes */ - for(; b < end1; b++) { - switch(*b) { - case 0x00: if((b[1] & 0x80) == 0) continue; break; - case 0xff: if((b[1] & 0x80) != 0) continue; break; - } - break; - } - - size = end - b; - if(size > sizeof(intmax_t)) { - /* Still cannot fit the sizeof(intmax_t) */ - errno = ERANGE; - return -1; - } - } - - /* Shortcut processing of a corner case */ - if(end == b) { - *lptr = 0; - return 0; - } - - *lptr = asn__integer_convert(b, end); - return 0; -} - -/* FIXME: negative INTEGER values are silently interpreted as large unsigned ones. */ -int -asn_INTEGER2umax(const INTEGER_t *iptr, uintmax_t *lptr) { - uint8_t *b, *end; - uintmax_t value; - size_t size; - - if(!iptr || !iptr->buf || !lptr) { - errno = EINVAL; - return -1; - } - - b = iptr->buf; - size = iptr->size; - end = b + size; - - /* If all extra leading bytes are zeroes, ignore them */ - for(; size > sizeof(value); b++, size--) { - if(*b) { - /* Value won't fit into uintmax_t */ - errno = ERANGE; - return -1; - } - } - - /* Conversion engine */ - for(value = 0; b < end; b++) - value = (value << 8) | *b; - - *lptr = value; - return 0; -} - -int -asn_umax2INTEGER(INTEGER_t *st, uintmax_t value) { - uint8_t *buf; - uint8_t *end; - uint8_t *b; - int shr; - - if(value <= ((~(uintmax_t)0) >> 1)) { - return asn_imax2INTEGER(st, value); - } - - buf = (uint8_t *)MALLOC(1 + sizeof(value)); - if(!buf) return -1; - - end = buf + (sizeof(value) + 1); - buf[0] = 0; /* INTEGERs are signed. 0-byte indicates positive. */ - for(b = buf + 1, shr = (sizeof(value) - 1) * 8; b < end; shr -= 8, b++) - *b = (uint8_t)(value >> shr); - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = 1 + sizeof(value); - - return 0; -} - -int -asn_imax2INTEGER(INTEGER_t *st, intmax_t value) { - uint8_t *buf, *bp; - uint8_t *p; - uint8_t *pstart; - uint8_t *pend1; - int littleEndian = 1; /* Run-time detection */ - int add; - - if(!st) { - errno = EINVAL; - return -1; - } - - buf = (uint8_t *)(long *)MALLOC(sizeof(value)); - if(!buf) return -1; - - if(*(char *)&littleEndian) { - pstart = (uint8_t *)&value + sizeof(value) - 1; - pend1 = (uint8_t *)&value; - add = -1; - } else { - pstart = (uint8_t *)&value; - pend1 = pstart + sizeof(value) - 1; - add = 1; - } - - /* - * If the contents octet consists of more than one octet, - * then bits of the first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - for(p = pstart; p != pend1; p += add) { - switch(*p) { - case 0x00: if((*(p+add) & 0x80) == 0) - continue; - break; - case 0xff: if((*(p+add) & 0x80)) - continue; - break; - } - break; - } - /* Copy the integer body */ - for(bp = buf, pend1 += add; p != pend1; p += add) - *bp++ = *p; - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = bp - buf; - - return 0; -} - -int -asn_INTEGER2long(const INTEGER_t *iptr, long *l) { - intmax_t v; - if(asn_INTEGER2imax(iptr, &v) == 0) { - if(v < LONG_MIN || v > LONG_MAX) { - errno = ERANGE; - return -1; - } - *l = v; - return 0; - } else { - return -1; - } -} - -int -asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *l) { - uintmax_t v; - if(asn_INTEGER2umax(iptr, &v) == 0) { - if(v > ULONG_MAX) { - errno = ERANGE; - return -1; - } - *l = v; - return 0; - } else { - return -1; - } -} - -int -asn_long2INTEGER(INTEGER_t *st, long value) { - return asn_imax2INTEGER(st, value); -} - -int -asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { - return asn_imax2INTEGER(st, value); -} - - -int -asn_uint642INTEGER(INTEGER_t *st, uint64_t value) { - uint8_t *buf; - uint8_t *end; - uint8_t *b; - int shr; - - if(value <= INT64_MAX) - return asn_int642INTEGER(st, value); - - buf = (uint8_t *)MALLOC(1 + sizeof(value)); - if(!buf) return -1; - - end = buf + (sizeof(value) + 1); - buf[0] = 0; - for(b = buf + 1, shr = (sizeof(value)-1)*8; b < end; shr -= 8, b++) - *b = (uint8_t)(value >> shr); - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = 1 + sizeof(value); - - return 0; -} - -int -asn_int642INTEGER(INTEGER_t *st, int64_t value) { - uint8_t *buf, *bp; - uint8_t *p; - uint8_t *pstart; - uint8_t *pend1; - int littleEndian = 1; /* Run-time detection */ - int add; - - if(!st) { - errno = EINVAL; - return -1; - } - - buf = (uint8_t *)MALLOC(sizeof(value)); - if(!buf) return -1; - - if(*(char *)&littleEndian) { - pstart = (uint8_t *)&value + sizeof(value) - 1; - pend1 = (uint8_t *)&value; - add = -1; - } else { - pstart = (uint8_t *)&value; - pend1 = pstart + sizeof(value) - 1; - add = 1; - } - - /* - * If the contents octet consists of more than one octet, - * then bits of the first octet and bit 8 of the second octet: - * a) shall not all be ones; and - * b) shall not all be zero. - */ - for(p = pstart; p != pend1; p += add) { - switch(*p) { - case 0x00: if((*(p+add) & 0x80) == 0) - continue; - break; - case 0xff: if((*(p+add) & 0x80)) - continue; - break; - } - break; - } - /* Copy the integer body */ - for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) - *bp++ = *p; - - if(st->buf) FREEMEM(st->buf); - st->buf = buf; - st->size = bp - buf; - - return 0; -} - -/* - * Parse the number in the given string until the given *end position, - * returning the position after the last parsed character back using the - * same (*end) pointer. - * WARNING: This behavior is different from the standard strtol/strtoimax(3). - */ -enum asn_strtox_result_e -asn_strtoimax_lim(const char *str, const char **end, intmax_t *intp) { - int sign = 1; - intmax_t value; - - const intmax_t asn1_intmax_max = ((~(uintmax_t)0) >> 1); - const intmax_t upper_boundary = asn1_intmax_max / 10; - intmax_t last_digit_max = asn1_intmax_max % 10; - - if(str >= *end) return ASN_STRTOX_ERROR_INVAL; - - switch(*str) { - case '-': - last_digit_max++; - sign = -1; - /* FALL THROUGH */ - case '+': - str++; - if(str >= *end) { - *end = str; - return ASN_STRTOX_EXPECT_MORE; - } - } - - for(value = 0; str < (*end); str++) { - if(*str >= 0x30 && *str <= 0x39) { - int d = *str - '0'; - if(value < upper_boundary) { - value = value * 10 + d; - } else if(value == upper_boundary) { - if(d <= last_digit_max) { - if(sign > 0) { - value = value * 10 + d; - } else { - sign = 1; - value = -value * 10 - d; - } - str += 1; - if(str < *end) { - // If digits continue, we're guaranteed out of range. - *end = str; - if(*str >= 0x30 && *str <= 0x39) { - return ASN_STRTOX_ERROR_RANGE; - } else { - *intp = sign * value; - return ASN_STRTOX_EXTRA_DATA; - } - } - break; - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - *intp = sign * value; - return ASN_STRTOX_EXTRA_DATA; - } - } - - *end = str; - *intp = sign * value; - return ASN_STRTOX_OK; -} - -/* - * Parse the number in the given string until the given *end position, - * returning the position after the last parsed character back using the - * same (*end) pointer. - * WARNING: This behavior is different from the standard strtoul/strtoumax(3). - */ -enum asn_strtox_result_e -asn_strtoumax_lim(const char *str, const char **end, uintmax_t *uintp) { - uintmax_t value; - - const uintmax_t asn1_uintmax_max = ((~(uintmax_t)0)); - const uintmax_t upper_boundary = asn1_uintmax_max / 10; - uintmax_t last_digit_max = asn1_uintmax_max % 10; - - if(str >= *end) return ASN_STRTOX_ERROR_INVAL; - - switch(*str) { - case '-': - return ASN_STRTOX_ERROR_INVAL; - case '+': - str++; - if(str >= *end) { - *end = str; - return ASN_STRTOX_EXPECT_MORE; - } - } - - for(value = 0; str < (*end); str++) { - if(*str >= 0x30 && *str <= 0x39) { - unsigned int d = *str - '0'; - if(value < upper_boundary) { - value = value * 10 + d; - } else if(value == upper_boundary) { - if(d <= last_digit_max) { - value = value * 10 + d; - str += 1; - if(str < *end) { - // If digits continue, we're guaranteed out of range. - *end = str; - if(*str >= 0x30 && *str <= 0x39) { - return ASN_STRTOX_ERROR_RANGE; - } else { - *uintp = value; - return ASN_STRTOX_EXTRA_DATA; - } - } - break; - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - return ASN_STRTOX_ERROR_RANGE; - } - } else { - *end = str; - *uintp = value; - return ASN_STRTOX_EXTRA_DATA; - } - } - - *end = str; - *uintp = value; - return ASN_STRTOX_OK; -} - -enum asn_strtox_result_e -asn_strtol_lim(const char *str, const char **end, long *lp) { - intmax_t value; - switch(asn_strtoimax_lim(str, end, &value)) { - case ASN_STRTOX_ERROR_RANGE: - return ASN_STRTOX_ERROR_RANGE; - case ASN_STRTOX_ERROR_INVAL: - return ASN_STRTOX_ERROR_INVAL; - case ASN_STRTOX_EXPECT_MORE: - return ASN_STRTOX_EXPECT_MORE; - case ASN_STRTOX_OK: - if(value >= LONG_MIN && value <= LONG_MAX) { - *lp = value; - return ASN_STRTOX_OK; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - case ASN_STRTOX_EXTRA_DATA: - if(value >= LONG_MIN && value <= LONG_MAX) { - *lp = value; - return ASN_STRTOX_EXTRA_DATA; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - } - - assert(!"Unreachable"); - return ASN_STRTOX_ERROR_INVAL; -} - -enum asn_strtox_result_e -asn_strtoul_lim(const char *str, const char **end, unsigned long *ulp) { - uintmax_t value; - switch(asn_strtoumax_lim(str, end, &value)) { - case ASN_STRTOX_ERROR_RANGE: - return ASN_STRTOX_ERROR_RANGE; - case ASN_STRTOX_ERROR_INVAL: - return ASN_STRTOX_ERROR_INVAL; - case ASN_STRTOX_EXPECT_MORE: - return ASN_STRTOX_EXPECT_MORE; - case ASN_STRTOX_OK: - if(value <= ULONG_MAX) { - *ulp = value; - return ASN_STRTOX_OK; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - case ASN_STRTOX_EXTRA_DATA: - if(value <= ULONG_MAX) { - *ulp = value; - return ASN_STRTOX_EXTRA_DATA; - } else { - return ASN_STRTOX_ERROR_RANGE; - } - } - - assert(!"Unreachable"); - return ASN_STRTOX_ERROR_INVAL; -} - -int -INTEGER_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const INTEGER_t *a = aptr; - const INTEGER_t *b = bptr; - - (void)td; - - if(a && b) { - if(a->size && b->size) { - int sign_a = (a->buf[0] & 0x80) ? -1 : 1; - int sign_b = (b->buf[0] & 0x80) ? -1 : 1; - - if(sign_a < sign_b) return -1; - if(sign_a > sign_b) return 1; - - /* The shortest integer wins, unless comparing negatives */ - if(a->size < b->size) { - return -1 * sign_a; - } else if(a->size > b->size) { - return 1 * sign_b; - } - - return sign_a * memcmp(a->buf, b->buf, a->size); - } else if(a->size) { - int sign = (a->buf[0] & 0x80) ? -1 : 1; - return (1) * sign; - } else if(b->size) { - int sign = (a->buf[0] & 0x80) ? -1 : 1; - return (-1) * sign; - } else { - return 0; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } - -} - -asn_random_fill_result_t -INTEGER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - INTEGER_t *st = *sptr; - const asn_INTEGER_enum_map_t *emap; - size_t emap_len; - intmax_t value; - int find_inside_map; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (INTEGER_t *)CALLOC(1, sizeof(*st)); - if(st == NULL) { - return result_failed; - } - } - - if(specs) { - emap = specs->value2enum; - emap_len = specs->map_count; - if(specs->strict_enumeration) { - find_inside_map = emap_len > 0; - } else { - find_inside_map = emap_len ? asn_random_between(0, 1) : 0; - } - } else { - emap = 0; - emap_len = 0; - find_inside_map = 0; - } - - if(find_inside_map) { - assert(emap_len > 0); - value = emap[asn_random_between(0, emap_len - 1)].nat_value; - } else { - const asn_per_constraints_t *ct; - - static const long variants[] = { - -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, - -16383, -257, -256, -255, -254, -129, -128, -127, - -126, -1, 0, 1, 126, 127, 128, 129, - 254, 255, 256, 257, 16383, 16384, 16385, 32767, - 32768, 32769, 65534, 65535, 65536, 65537}; - if(specs && specs->field_unsigned) { - assert(variants[18] == 0); - value = variants[asn_random_between( - 18, sizeof(variants) / sizeof(variants[0]) - 1)]; - } else { - value = variants[asn_random_between( - 0, sizeof(variants) / sizeof(variants[0]) - 1)]; - } - - if(!constraints) constraints = &td->encoding_constraints; - ct = constraints ? constraints->per_constraints : 0; - if(ct && (ct->value.flags & APC_CONSTRAINED)) { - if(value < ct->value.lower_bound || value > ct->value.upper_bound) { - value = asn_random_between(ct->value.lower_bound, - ct->value.upper_bound); - } - } - } - - if(asn_imax2INTEGER(st, value)) { - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - return result_failed; - } else { - *sptr = st; - result_ok.length = st->size; - return result_ok; - } -} diff --git a/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c b/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c deleted file mode 100644 index 110689b2d..000000000 --- a/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -asn_dec_rval_t -INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - INTEGER_t *st = (INTEGER_t *)*sptr; - struct asn_oer_constraint_number_s ct = {0, 0}; - size_t req_bytes; - - (void)opt_codec_ctx; - (void)specs; - - if(!st) { - st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(!st) ASN__DECODE_FAILED; - } - - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - - if(!constraints) constraints = td->encoding_constraints.oer_constraints; - if(constraints) ct = constraints->value; - - if(ct.width) { - req_bytes = ct.width; - } else { - /* No lower bound and no upper bound, effectively */ - - ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes); - if(consumed == 0) { - ASN__DECODE_STARVED; - } else if(consumed == -1) { - ASN__DECODE_FAILED; - } - rval.consumed += consumed; - ptr = (const char *)ptr + consumed; - size -= consumed; - } - - if(req_bytes > size) { - ASN__DECODE_STARVED; - } - - if(ct.positive) { - /* X.969 08/2015 10.2(a) */ - unsigned msb; /* Most significant bit */ - size_t useful_size; - - /* Check most significant bit */ - msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */ - useful_size = msb + req_bytes; - st->buf = (uint8_t *)MALLOC(useful_size + 1); - if(!st->buf) { - ASN__DECODE_FAILED; - } - - /* - * Record a large unsigned in a way not to confuse it - * with signed value. - */ - st->buf[0] = '\0'; - memcpy(st->buf + msb, ptr, req_bytes); - st->buf[useful_size] = '\0'; /* Just in case, 0-terminate */ - st->size = useful_size; - - rval.consumed += req_bytes; - return rval; - } else { - /* X.969 08/2015 10.2(b) */ - st->buf = (uint8_t *)MALLOC(req_bytes + 1); - if(!st->buf) { - ASN__DECODE_FAILED; - } - - memcpy(st->buf, ptr, req_bytes); - st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */ - st->size = req_bytes; - - rval.consumed += req_bytes; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -INTEGER_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const INTEGER_t *st = sptr; - asn_enc_rval_t er = {0,0,0}; - struct asn_oer_constraint_number_s ct = {0, 0}; - const uint8_t *buf; - const uint8_t *end; - size_t useful_bytes; - size_t req_bytes = 0; - int sign = 0; - - if(!st || st->size == 0) ASN__ENCODE_FAILED; - - if(!constraints) constraints = td->encoding_constraints.oer_constraints; - if(constraints) ct = constraints->value; - - er.encoded = 0; - - buf = st->buf; - end = buf + st->size; - - sign = (buf && buf < end) ? buf[0] & 0x80 : 0; - - /* Ignore 9 leading zeroes or ones */ - if(ct.positive) { - if(sign) { - /* The value given is a signed value. Can't proceed. */ - ASN__ENCODE_FAILED; - } - /* Remove leading zeros. */ - for(; buf + 1 < end; buf++) { - if(buf[0] != 0x0) break; - } - } else { - for(; buf + 1 < end; buf++) { - if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) { - continue; - } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) { - continue; - } - break; - } - } - - useful_bytes = end - buf; - if(ct.width) { - req_bytes = ct.width; - } else { - ssize_t r = oer_serialize_length(useful_bytes, cb, app_key); - if(r < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += r; - req_bytes = useful_bytes; - } - - if(req_bytes < useful_bytes) { - ASN__ENCODE_FAILED; - } - - er.encoded += req_bytes; - - for(; req_bytes > useful_bytes; req_bytes--) { - if(cb(sign?"\xff":"\0", 1, app_key) < 0) { - ASN__ENCODE_FAILED; - } - } - - if(cb(buf, useful_bytes, app_key) < 0) { - ASN__ENCODE_FAILED; - } - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/ITIScodes.c b/src/tmx/Asn_J2735/src/r63/ITIScodes.c deleted file mode 100644 index 002835f93..000000000 --- a/src/tmx/Asn_J2735/src/r63/ITIScodes.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ITIScodes.h" - -int -ITIScodes_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ITIScodes_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodes = { - "ITIScodes", - "ITIScodes", - &asn_OP_NativeInteger, - asn_DEF_ITIScodes_tags_1, - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - asn_DEF_ITIScodes_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodes_tags_1) - /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ - { &asn_OER_type_ITIScodes_constr_1, &asn_PER_type_ITIScodes_constr_1, ITIScodes_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c deleted file mode 100644 index 68d5f9eac..000000000 --- a/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "ITIScodesAndText.h" - -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..100)) */}; -asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Memberitem, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Memberitem, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStext, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct ITIScodesAndText__Memberitem), - offsetof(struct ITIScodesAndText__Memberitem, _asn_ctx), - offsetof(struct ITIScodesAndText__Memberitem, present), - sizeof(((struct ITIScodesAndText__Memberitem *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct ITIScodesAndText__Member), - offsetof(struct ITIScodesAndText__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { - sizeof(struct ITIScodesAndText), - offsetof(struct ITIScodesAndText, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { - "ITIScodesAndText", - "ITIScodesAndText", - &asn_OP_SEQUENCE_OF, - asn_DEF_ITIScodesAndText_tags_1, - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIScodesAndText_tags_1) - /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ - { &asn_OER_type_ITIScodesAndText_constr_1, &asn_PER_type_ITIScodesAndText_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ITIScodesAndText_1, - 1, /* Single element */ - &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ITIStext.c b/src/tmx/Asn_J2735/src/r63/ITIStext.c deleted file mode 100644 index 687f9751f..000000000 --- a/src/tmx/Asn_J2735/src/r63/ITIStext.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ITIStext.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -ITIStext_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 500) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ITIStext_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..500)) */}; -asn_per_constraints_t asn_PER_type_ITIStext_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIStext = { - "ITIStext", - "ITIStext", - &asn_OP_IA5String, - asn_DEF_ITIStext_tags_1, - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - asn_DEF_ITIStext_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIStext_tags_1) - /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ - { &asn_OER_type_ITIStext_constr_1, &asn_PER_type_ITIStext_constr_1, ITIStext_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c b/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c deleted file mode 100644 index b4e844fa8..000000000 --- a/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ITIStextPhrase.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -ITIStextPhrase_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 16) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_ITIStextPhrase_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase = { - "ITIStextPhrase", - "ITIStextPhrase", - &asn_OP_IA5String, - asn_DEF_ITIStextPhrase_tags_1, - sizeof(asn_DEF_ITIStextPhrase_tags_1) - /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ - asn_DEF_ITIStextPhrase_tags_1, /* Same as above */ - sizeof(asn_DEF_ITIStextPhrase_tags_1) - /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ - { &asn_OER_type_ITIStextPhrase_constr_1, &asn_PER_type_ITIStextPhrase_constr_1, ITIStextPhrase_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Id128b.c b/src/tmx/Asn_J2735/src/r63/Id128b.c deleted file mode 100644 index 69d7d562a..000000000 --- a/src/tmx/Asn_J2735/src/r63/Id128b.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Id128b.h" - -int -Id128b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Id128b_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_Id128b_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Id128b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Id128b = { - "Id128b", - "Id128b", - &asn_OP_OCTET_STRING, - asn_DEF_Id128b_tags_1, - sizeof(asn_DEF_Id128b_tags_1) - /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ - asn_DEF_Id128b_tags_1, /* Same as above */ - sizeof(asn_DEF_Id128b_tags_1) - /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ - { &asn_OER_type_Id128b_constr_1, &asn_PER_type_Id128b_constr_1, Id128b_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Id64b.c b/src/tmx/Asn_J2735/src/r63/Id64b.c deleted file mode 100644 index 0b7d291d9..000000000 --- a/src/tmx/Asn_J2735/src/r63/Id64b.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Id64b.h" - -int -Id64b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 8)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Id64b_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -asn_per_constraints_t asn_PER_type_Id64b_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Id64b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Id64b = { - "Id64b", - "Id64b", - &asn_OP_OCTET_STRING, - asn_DEF_Id64b_tags_1, - sizeof(asn_DEF_Id64b_tags_1) - /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ - asn_DEF_Id64b_tags_1, /* Same as above */ - sizeof(asn_DEF_Id64b_tags_1) - /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ - { &asn_OER_type_Id64b_constr_1, &asn_PER_type_Id64b_constr_1, Id64b_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c deleted file mode 100644 index 41442bbf3..000000000 --- a/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c +++ /dev/null @@ -1,198 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IncidentResponseEquipment.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { - { 9985, 23, "ground-fire-suppression" }, - { 9986, 22, "heavy-ground-equipment" }, - { 9988, 8, "aircraft" }, - { 9989, 16, "marine-equipment" }, - { 9990, 17, "support-equipment" }, - { 9991, 19, "medical-rescue-unit" }, - { 9993, 5, "other" }, - { 9994, 29, "ground-fire-suppression-other" }, - { 9995, 6, "engine" }, - { 9996, 15, "truck-or-aerial" }, - { 9997, 5, "quint" }, - { 9998, 25, "tanker-pumper-combination" }, - { 10000, 11, "brush-truck" }, - { 10001, 28, "aircraft-rescue-firefighting" }, - { 10004, 28, "heavy-ground-equipment-other" }, - { 10005, 13, "dozer-or-plow" }, - { 10006, 7, "tractor" }, - { 10008, 16, "tanker-or-tender" }, - { 10024, 14, "aircraft-other" }, - { 10025, 26, "aircraft-fixed-wing-tanker" }, - { 10026, 10, "helitanker" }, - { 10027, 10, "helicopter" }, - { 10034, 22, "marine-equipment-other" }, - { 10035, 19, "fire-boat-with-pump" }, - { 10036, 12, "boat-no-pump" }, - { 10044, 23, "support-apparatus-other" }, - { 10045, 27, "breathing-apparatus-support" }, - { 10046, 18, "light-and-air-unit" }, - { 10054, 25, "medical-rescue-unit-other" }, - { 10055, 11, "rescue-unit" }, - { 10056, 24, "urban-search-rescue-unit" }, - { 10057, 17, "high-angle-rescue" }, - { 10058, 17, "crash-fire-rescue" }, - { 10059, 8, "bLS-unit" }, - { 10060, 8, "aLS-unit" }, - { 10075, 19, "mobile-command-post" }, - { 10076, 17, "chief-officer-car" }, - { 10077, 11, "hAZMAT-unit" }, - { 10078, 16, "type-i-hand-crew" }, - { 10079, 17, "type-ii-hand-crew" }, - { 10083, 23, "privately-owned-vehicle" }, - { 10084, 24, "other-apparatus-resource" }, - { 10085, 9, "ambulance" }, - { 10086, 14, "bomb-squad-van" }, - { 10087, 17, "combine-harvester" }, - { 10088, 20, "construction-vehicle" }, - { 10089, 12, "farm-tractor" }, - { 10090, 22, "grass-cutting-machines" }, - { 10091, 22, "hAZMAT-containment-tow" }, - { 10092, 9, "heavy-tow" }, - { 10093, 22, "hedge-cutting-machines" }, - { 10094, 9, "light-tow" }, - { 10095, 12, "mobile-crane" }, - { 10096, 25, "refuse-collection-vehicle" }, - { 10097, 19, "resurfacing-vehicle" }, - { 10098, 12, "road-sweeper" }, - { 10099, 32, "roadside-litter-collection-crews" }, - { 10100, 15, "salvage-vehicle" }, - { 10101, 10, "sand-truck" }, - { 10102, 8, "snowplow" }, - { 10103, 12, "steam-roller" }, - { 10104, 13, "swat-team-van" }, - { 10105, 20, "track-laying-vehicle" }, - { 10106, 15, "unknown-vehicle" }, - { 10107, 20, "white-lining-vehicle" }, - { 10108, 10, "dump-truck" }, - { 10109, 18, "supervisor-vehicle" }, - { 10110, 11, "snow-blower" }, - { 10111, 18, "rotary-snow-blower" }, - { 10112, 11, "road-grader" }, - { 10113, 11, "steam-truck" }, - { 10114, 11, "flatbed-tow" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { - 34, /* aLS-unit(10060) */ - 2, /* aircraft(9988) */ - 19, /* aircraft-fixed-wing-tanker(10025) */ - 18, /* aircraft-other(10024) */ - 13, /* aircraft-rescue-firefighting(10001) */ - 42, /* ambulance(10085) */ - 33, /* bLS-unit(10059) */ - 24, /* boat-no-pump(10036) */ - 43, /* bomb-squad-van(10086) */ - 26, /* breathing-apparatus-support(10045) */ - 12, /* brush-truck(10000) */ - 36, /* chief-officer-car(10076) */ - 44, /* combine-harvester(10087) */ - 45, /* construction-vehicle(10088) */ - 32, /* crash-fire-rescue(10058) */ - 15, /* dozer-or-plow(10005) */ - 65, /* dump-truck(10108) */ - 8, /* engine(9995) */ - 46, /* farm-tractor(10089) */ - 23, /* fire-boat-with-pump(10035) */ - 71, /* flatbed-tow(10114) */ - 47, /* grass-cutting-machines(10090) */ - 0, /* ground-fire-suppression(9985) */ - 7, /* ground-fire-suppression-other(9994) */ - 48, /* hAZMAT-containment-tow(10091) */ - 37, /* hAZMAT-unit(10077) */ - 1, /* heavy-ground-equipment(9986) */ - 14, /* heavy-ground-equipment-other(10004) */ - 49, /* heavy-tow(10092) */ - 50, /* hedge-cutting-machines(10093) */ - 21, /* helicopter(10027) */ - 20, /* helitanker(10026) */ - 31, /* high-angle-rescue(10057) */ - 27, /* light-and-air-unit(10046) */ - 51, /* light-tow(10094) */ - 3, /* marine-equipment(9989) */ - 22, /* marine-equipment-other(10034) */ - 5, /* medical-rescue-unit(9991) */ - 28, /* medical-rescue-unit-other(10054) */ - 35, /* mobile-command-post(10075) */ - 52, /* mobile-crane(10095) */ - 6, /* other(9993) */ - 41, /* other-apparatus-resource(10084) */ - 40, /* privately-owned-vehicle(10083) */ - 10, /* quint(9997) */ - 53, /* refuse-collection-vehicle(10096) */ - 29, /* rescue-unit(10055) */ - 54, /* resurfacing-vehicle(10097) */ - 69, /* road-grader(10112) */ - 55, /* road-sweeper(10098) */ - 56, /* roadside-litter-collection-crews(10099) */ - 68, /* rotary-snow-blower(10111) */ - 57, /* salvage-vehicle(10100) */ - 58, /* sand-truck(10101) */ - 67, /* snow-blower(10110) */ - 59, /* snowplow(10102) */ - 60, /* steam-roller(10103) */ - 70, /* steam-truck(10113) */ - 66, /* supervisor-vehicle(10109) */ - 25, /* support-apparatus-other(10044) */ - 4, /* support-equipment(9990) */ - 61, /* swat-team-van(10104) */ - 17, /* tanker-or-tender(10008) */ - 11, /* tanker-pumper-combination(9998) */ - 62, /* track-laying-vehicle(10105) */ - 16, /* tractor(10006) */ - 9, /* truck-or-aerial(9996) */ - 38, /* type-i-hand-crew(10078) */ - 39, /* type-ii-hand-crew(10079) */ - 63, /* unknown-vehicle(10106) */ - 30, /* urban-search-rescue-unit(10056) */ - 64 /* white-lining-vehicle(10107) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { - asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ - 72, /* Number of elements in the maps */ - 73, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { - "IncidentResponseEquipment", - "IncidentResponseEquipment", - &asn_OP_NativeEnumerated, - asn_DEF_IncidentResponseEquipment_tags_1, - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ - sizeof(asn_DEF_IncidentResponseEquipment_tags_1) - /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ - { &asn_OER_type_IncidentResponseEquipment_constr_1, &asn_PER_type_IncidentResponseEquipment_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c b/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c deleted file mode 100644 index ae199275b..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionAccessPoint.h" - -static asn_oer_constraints_t asn_OER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.lane), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lane" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.approach), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ApproachID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "approach" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.connection), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneConnectionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connection" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionAccessPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* approach */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* connection */ -}; -asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1 = { - sizeof(struct IntersectionAccessPoint), - offsetof(struct IntersectionAccessPoint, _asn_ctx), - offsetof(struct IntersectionAccessPoint, present), - sizeof(((struct IntersectionAccessPoint *)0)->present), - asn_MAP_IntersectionAccessPoint_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint = { - "IntersectionAccessPoint", - "IntersectionAccessPoint", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_IntersectionAccessPoint_constr_1, &asn_PER_type_IntersectionAccessPoint_constr_1, CHOICE_constraint }, - asn_MBR_IntersectionAccessPoint_1, - 3, /* Elements count */ - &asn_SPC_IntersectionAccessPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c b/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c deleted file mode 100644 index 3fe7c1079..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionCollision.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct IntersectionCollision__regional), - offsetof(struct IntersectionCollision__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 4, offsetof(struct IntersectionCollision, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionCollision, partOne), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BSMcoreData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "partOne" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionCollision, path), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "path" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionCollision, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersectionID), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "intersectionID" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ApproachOrLane, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleEventFlags, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eventFlag" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionCollision, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionCollision_oms_1[] = { 2, 3, 4, 5, 9 }; -static const ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* partOne */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* intersectionID */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* laneNumber */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* eventFlag */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { - sizeof(struct IntersectionCollision), - offsetof(struct IntersectionCollision, _asn_ctx), - asn_MAP_IntersectionCollision_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_IntersectionCollision_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { - "IntersectionCollision", - "IntersectionCollision", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionCollision_tags_1, - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - asn_DEF_IntersectionCollision_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionCollision_tags_1) - /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_IntersectionCollision_1, - 10, /* Elements count */ - &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c deleted file mode 100644 index 71bd4819e..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c +++ /dev/null @@ -1,211 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionGeometry.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct IntersectionGeometry__regional), - offsetof(struct IntersectionGeometry__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneSet" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PreemptPriorityList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "preemptPriorityData" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { - sizeof(struct IntersectionGeometry), - offsetof(struct IntersectionGeometry, _asn_ctx), - asn_MAP_IntersectionGeometry_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { - "IntersectionGeometry", - "IntersectionGeometry", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionGeometry_tags_1, - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometry_tags_1) - /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_IntersectionGeometry_1, - 9, /* Elements count */ - &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c deleted file mode 100644 index 6baeb8df1..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionGeometryList.h" - -static asn_oer_constraints_t asn_OER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionGeometry, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { - sizeof(struct IntersectionGeometryList), - offsetof(struct IntersectionGeometryList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { - "IntersectionGeometryList", - "IntersectionGeometryList", - &asn_OP_SEQUENCE_OF, - asn_DEF_IntersectionGeometryList_tags_1, - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionGeometryList_tags_1) - /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ - { &asn_OER_type_IntersectionGeometryList_constr_1, &asn_PER_type_IntersectionGeometryList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_IntersectionGeometryList_1, - 1, /* Single element */ - &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionID.c b/src/tmx/Asn_J2735/src/r63/IntersectionID.c deleted file mode 100644 index a66dd5c9d..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionID.h" - -int -IntersectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_IntersectionID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionID = { - "IntersectionID", - "IntersectionID", - &asn_OP_NativeInteger, - asn_DEF_IntersectionID_tags_1, - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionID_tags_1) - /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ - { &asn_OER_type_IntersectionID_constr_1, &asn_PER_type_IntersectionID_constr_1, IntersectionID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c deleted file mode 100644 index cc5fddd83..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionReferenceID.h" - -asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, -}; -static const int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { - sizeof(struct IntersectionReferenceID), - offsetof(struct IntersectionReferenceID, _asn_ctx), - asn_MAP_IntersectionReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { - "IntersectionReferenceID", - "IntersectionReferenceID", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionReferenceID_tags_1, - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionReferenceID_tags_1) - /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_IntersectionReferenceID_1, - 2, /* Elements count */ - &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c b/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c deleted file mode 100644 index 3ab253464..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionState-addGrpC.h" - -static asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionState_addGrpC, activePrioritizations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "activePrioritizations" - }, -}; -static const int asn_MAP_IntersectionState_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_IntersectionState_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1 = { - sizeof(struct IntersectionState_addGrpC), - offsetof(struct IntersectionState_addGrpC, _asn_ctx), - asn_MAP_IntersectionState_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_IntersectionState_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC = { - "IntersectionState-addGrpC", - "IntersectionState-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionState_addGrpC_tags_1, - sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) - /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_IntersectionState_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) - /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_IntersectionState_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_IntersectionState_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionState.c b/src/tmx/Asn_J2735/src/r63/IntersectionState.c deleted file mode 100644 index 44f3f9dda..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionState.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionState.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct IntersectionState__regional), - offsetof(struct IntersectionState__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { - { ATF_POINTER, 1, offsetof(struct IntersectionState, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStatusObject, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "moy" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EnabledLaneList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "enabledLanes" - }, - { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "states" - }, - { ATF_POINTER, 2, offsetof(struct IntersectionState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maneuverAssistList" - }, - { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { - sizeof(struct IntersectionState), - offsetof(struct IntersectionState, _asn_ctx), - asn_MAP_IntersectionState_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_IntersectionState_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionState = { - "IntersectionState", - "IntersectionState", - &asn_OP_SEQUENCE, - asn_DEF_IntersectionState_tags_1, - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - asn_DEF_IntersectionState_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionState_tags_1) - /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_IntersectionState_1, - 10, /* Elements count */ - &asn_SPC_IntersectionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c b/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c deleted file mode 100644 index afa2ccb7e..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionStateList.h" - -static asn_oer_constraints_t asn_OER_type_IntersectionStateList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { - sizeof(struct IntersectionStateList), - offsetof(struct IntersectionStateList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { - "IntersectionStateList", - "IntersectionStateList", - &asn_OP_SEQUENCE_OF, - asn_DEF_IntersectionStateList_tags_1, - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStateList_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStateList_tags_1) - /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ - { &asn_OER_type_IntersectionStateList_constr_1, &asn_PER_type_IntersectionStateList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_IntersectionStateList_1, - 1, /* Single element */ - &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c deleted file mode 100644 index c77019ee8..000000000 --- a/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IntersectionStatusObject.h" - -int -IntersectionStatusObject_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { - "IntersectionStatusObject", - "IntersectionStatusObject", - &asn_OP_BIT_STRING, - asn_DEF_IntersectionStatusObject_tags_1, - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ - sizeof(asn_DEF_IntersectionStatusObject_tags_1) - /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ - { &asn_OER_type_IntersectionStatusObject_constr_1, &asn_PER_type_IntersectionStatusObject_constr_1, IntersectionStatusObject_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/IsDolly.c b/src/tmx/Asn_J2735/src/r63/IsDolly.c deleted file mode 100644 index 92ffa43f2..000000000 --- a/src/tmx/Asn_J2735/src/r63/IsDolly.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "IsDolly.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_IsDolly_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_IsDolly = { - "IsDolly", - "IsDolly", - &asn_OP_BOOLEAN, - asn_DEF_IsDolly_tags_1, - sizeof(asn_DEF_IsDolly_tags_1) - /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ - asn_DEF_IsDolly_tags_1, /* Same as above */ - sizeof(asn_DEF_IsDolly_tags_1) - /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c b/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c deleted file mode 100644 index 3e489e311..000000000 --- a/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Iso3833VehicleType.h" - -int -Iso3833VehicleType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Iso3833VehicleType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType = { - "Iso3833VehicleType", - "Iso3833VehicleType", - &asn_OP_NativeInteger, - asn_DEF_Iso3833VehicleType_tags_1, - sizeof(asn_DEF_Iso3833VehicleType_tags_1) - /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ - asn_DEF_Iso3833VehicleType_tags_1, /* Same as above */ - sizeof(asn_DEF_Iso3833VehicleType_tags_1) - /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ - { &asn_OER_type_Iso3833VehicleType_constr_1, &asn_PER_type_Iso3833VehicleType_constr_1, Iso3833VehicleType_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/J1939data.c b/src/tmx/Asn_J2735/src/r63/J1939data.c deleted file mode 100644 index b0f2e2dad..000000000 --- a/src/tmx/Asn_J2735/src/r63/J1939data.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "J1939data.h" - -asn_TYPE_member_t asn_MBR_J1939data_1[] = { - { ATF_POINTER, 10, offsetof(struct J1939data, tires), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireDataList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "tires" - }, - { ATF_POINTER, 9, offsetof(struct J1939data, axles), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AxleWeightList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "axles" - }, - { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trailerWeight" - }, - { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CargoWeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cargoWeight" - }, - { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleTemperature, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "steeringAxleTemperature" - }, - { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "driveAxleLocation" - }, - { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLiftAirPressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "driveAxleLiftAirPressure" - }, - { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleTemperature, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "driveAxleTemperature" - }, - { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DriveAxleLubePressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "driveAxleLubePressure" - }, - { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringAxleLubePressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "steeringAxleLubePressure" - }, -}; -static const int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axles */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ -}; -asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { - sizeof(struct J1939data), - offsetof(struct J1939data, _asn_ctx), - asn_MAP_J1939data_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_J1939data_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_J1939data = { - "J1939data", - "J1939data", - &asn_OP_SEQUENCE, - asn_DEF_J1939data_tags_1, - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - asn_DEF_J1939data_tags_1, /* Same as above */ - sizeof(asn_DEF_J1939data_tags_1) - /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_J1939data_1, - 10, /* Elements count */ - &asn_SPC_J1939data_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c deleted file mode 100644 index 683c14abb..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Barrier.h" - -int -LaneAttributes_Barrier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { - "LaneAttributes-Barrier", - "LaneAttributes-Barrier", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Barrier_tags_1, - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) - /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Barrier_constr_1, &asn_PER_type_LaneAttributes_Barrier_constr_1, LaneAttributes_Barrier_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c deleted file mode 100644 index ad77e995e..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Bike.h" - -int -LaneAttributes_Bike_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { - "LaneAttributes-Bike", - "LaneAttributes-Bike", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Bike_tags_1, - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Bike_tags_1) - /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Bike_constr_1, &asn_PER_type_LaneAttributes_Bike_constr_1, LaneAttributes_Bike_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c deleted file mode 100644 index 9824539a9..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Crosswalk.h" - -int -LaneAttributes_Crosswalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { - "LaneAttributes-Crosswalk", - "LaneAttributes-Crosswalk", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Crosswalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Crosswalk_constr_1, &asn_PER_type_LaneAttributes_Crosswalk_constr_1, LaneAttributes_Crosswalk_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c deleted file mode 100644 index 774505618..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Parking.h" - -int -LaneAttributes_Parking_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { - "LaneAttributes-Parking", - "LaneAttributes-Parking", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Parking_tags_1, - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Parking_tags_1) - /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Parking_constr_1, &asn_PER_type_LaneAttributes_Parking_constr_1, LaneAttributes_Parking_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c deleted file mode 100644 index 98d171e04..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Sidewalk.h" - -int -LaneAttributes_Sidewalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { - "LaneAttributes-Sidewalk", - "LaneAttributes-Sidewalk", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Sidewalk_tags_1, - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) - /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Sidewalk_constr_1, &asn_PER_type_LaneAttributes_Sidewalk_constr_1, LaneAttributes_Sidewalk_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c deleted file mode 100644 index a5b497db6..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Striping.h" - -int -LaneAttributes_Striping_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { - "LaneAttributes-Striping", - "LaneAttributes-Striping", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Striping_tags_1, - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Striping_tags_1) - /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Striping_constr_1, &asn_PER_type_LaneAttributes_Striping_constr_1, LaneAttributes_Striping_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c deleted file mode 100644 index 022343b98..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-TrackedVehicle.h" - -int -LaneAttributes_TrackedVehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { - "LaneAttributes-TrackedVehicle", - "LaneAttributes-TrackedVehicle", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_TrackedVehicle_constr_1, &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, LaneAttributes_TrackedVehicle_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c deleted file mode 100644 index c6b91a677..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes-Vehicle.h" - -int -LaneAttributes_Vehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 8, 8 } /* (SIZE(8..8,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { - "LaneAttributes-Vehicle", - "LaneAttributes-Vehicle", - &asn_OP_BIT_STRING, - asn_DEF_LaneAttributes_Vehicle_tags_1, - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) - /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneAttributes_Vehicle_constr_1, &asn_PER_type_LaneAttributes_Vehicle_constr_1, LaneAttributes_Vehicle_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes.c deleted file mode 100644 index 32fde7bf0..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneAttributes.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneAttributes.h" - -asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDirection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "directionalUse" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneSharing, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sharedWith" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_LaneTypeAttributes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneType" - }, - { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_LaneAttributes_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { - sizeof(struct LaneAttributes), - offsetof(struct LaneAttributes, _asn_ctx), - asn_MAP_LaneAttributes_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_LaneAttributes_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { - "LaneAttributes", - "LaneAttributes", - &asn_OP_SEQUENCE, - asn_DEF_LaneAttributes_tags_1, - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - asn_DEF_LaneAttributes_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneAttributes_tags_1) - /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_LaneAttributes_1, - 4, /* Elements count */ - &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c b/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c deleted file mode 100644 index 95bf955fe..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneConnectionID.h" - -int -LaneConnectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneConnectionID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { - "LaneConnectionID", - "LaneConnectionID", - &asn_OP_NativeInteger, - asn_DEF_LaneConnectionID_tags_1, - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - asn_DEF_LaneConnectionID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneConnectionID_tags_1) - /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneConnectionID_constr_1, &asn_PER_type_LaneConnectionID_constr_1, LaneConnectionID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c deleted file mode 100644 index f54e35cff..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneDataAttribute-addGrpB.h" - -static const ber_tlv_tag_t asn_DEF_LaneDataAttribute_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1 = { - sizeof(struct LaneDataAttribute_addGrpB), - offsetof(struct LaneDataAttribute_addGrpB, _asn_ctx), - 0, /* No top level tags */ - 0, /* No tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 0, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB = { - "LaneDataAttribute-addGrpB", - "LaneDataAttribute-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_LaneDataAttribute_addGrpB_tags_1, - sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) - /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_LaneDataAttribute_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) - /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - 0, 0, /* No members */ - &asn_SPC_LaneDataAttribute_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c deleted file mode 100644 index f6afade0e..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c +++ /dev/null @@ -1,194 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneDataAttribute.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct LaneDataAttribute__regional), - offsetof(struct LaneDataAttribute__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DeltaAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathEndPointAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneCrownPointCenter" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneCrownPointLeft" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadwayCrownAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneCrownPointRight" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MergeDivergeNodeAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { - sizeof(struct LaneDataAttribute), - offsetof(struct LaneDataAttribute, _asn_ctx), - offsetof(struct LaneDataAttribute, present), - sizeof(((struct LaneDataAttribute *)0)->present), - asn_MAP_LaneDataAttribute_tag2el_1, - 7, /* Count of tags in the map */ - 0, 0, - 7 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { - "LaneDataAttribute", - "LaneDataAttribute", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_LaneDataAttribute_constr_1, &asn_PER_type_LaneDataAttribute_constr_1, CHOICE_constraint }, - asn_MBR_LaneDataAttribute_1, - 7, /* Elements count */ - &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c deleted file mode 100644 index a78358fda..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneDataAttributeList.h" - -static asn_oer_constraints_t asn_OER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_LaneDataAttribute, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { - sizeof(struct LaneDataAttributeList), - offsetof(struct LaneDataAttributeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { - "LaneDataAttributeList", - "LaneDataAttributeList", - &asn_OP_SEQUENCE_OF, - asn_DEF_LaneDataAttributeList_tags_1, - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDataAttributeList_tags_1) - /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneDataAttributeList_constr_1, &asn_PER_type_LaneDataAttributeList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_LaneDataAttributeList_1, - 1, /* Single element */ - &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneDirection.c b/src/tmx/Asn_J2735/src/r63/LaneDirection.c deleted file mode 100644 index a7e992f7d..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneDirection.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneDirection.h" - -int -LaneDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneDirection_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneDirection = { - "LaneDirection", - "LaneDirection", - &asn_OP_BIT_STRING, - asn_DEF_LaneDirection_tags_1, - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - asn_DEF_LaneDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneDirection_tags_1) - /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneDirection_constr_1, &asn_PER_type_LaneDirection_constr_1, LaneDirection_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneID.c b/src/tmx/Asn_J2735/src/r63/LaneID.c deleted file mode 100644 index 749835d2f..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneID.h" - -int -LaneID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_LaneID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneID = { - "LaneID", - "LaneID", - &asn_OP_NativeInteger, - asn_DEF_LaneID_tags_1, - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - asn_DEF_LaneID_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneID_tags_1) - /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneID_constr_1, &asn_PER_type_LaneID_constr_1, LaneID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneList.c b/src/tmx/Asn_J2735/src/r63/LaneList.c deleted file mode 100644 index 173958241..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneList.h" - -static asn_oer_constraints_t asn_OER_type_LaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -asn_per_constraints_t asn_PER_type_LaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_LaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { - sizeof(struct LaneList), - offsetof(struct LaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneList = { - "LaneList", - "LaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_LaneList_tags_1, - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - asn_DEF_LaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneList_tags_1) - /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneList_constr_1, &asn_PER_type_LaneList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_LaneList_1, - 1, /* Single element */ - &asn_SPC_LaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneSharing.c b/src/tmx/Asn_J2735/src/r63/LaneSharing.c deleted file mode 100644 index 968ebb6d6..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneSharing.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneSharing.h" - -int -LaneSharing_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 10)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneSharing_constr_1 CC_NOTUSED = { - { 0, 0 }, - 10 /* (SIZE(10..10)) */}; -asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneSharing = { - "LaneSharing", - "LaneSharing", - &asn_OP_BIT_STRING, - asn_DEF_LaneSharing_tags_1, - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - asn_DEF_LaneSharing_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneSharing_tags_1) - /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneSharing_constr_1, &asn_PER_type_LaneSharing_constr_1, LaneSharing_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c deleted file mode 100644 index effe77a26..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneTypeAttributes.h" - -static asn_oer_constraints_t asn_OER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Vehicle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Crosswalk, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crosswalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Bike, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "bikeLane" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Sidewalk, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sidewalk" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Barrier, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "median" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Striping, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "striping" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_TrackedVehicle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trackedVehicle" - }, - { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneAttributes_Parking, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "parking" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ -}; -asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { - sizeof(struct LaneTypeAttributes), - offsetof(struct LaneTypeAttributes, _asn_ctx), - offsetof(struct LaneTypeAttributes, present), - sizeof(((struct LaneTypeAttributes *)0)->present), - asn_MAP_LaneTypeAttributes_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - 8 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { - "LaneTypeAttributes", - "LaneTypeAttributes", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_LaneTypeAttributes_constr_1, &asn_PER_type_LaneTypeAttributes_constr_1, CHOICE_constraint }, - asn_MBR_LaneTypeAttributes_1, - 8, /* Elements count */ - &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LaneWidth.c b/src/tmx/Asn_J2735/src/r63/LaneWidth.c deleted file mode 100644 index 30f9972b2..000000000 --- a/src/tmx/Asn_J2735/src/r63/LaneWidth.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LaneWidth.h" - -int -LaneWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LaneWidth_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LaneWidth = { - "LaneWidth", - "LaneWidth", - &asn_OP_NativeInteger, - asn_DEF_LaneWidth_tags_1, - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - asn_DEF_LaneWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_LaneWidth_tags_1) - /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ - { &asn_OER_type_LaneWidth_constr_1, &asn_PER_type_LaneWidth_constr_1, LaneWidth_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Latitude.c b/src/tmx/Asn_J2735/src/r63/Latitude.c deleted file mode 100644 index b38dc236c..000000000 --- a/src/tmx/Asn_J2735/src/r63/Latitude.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Latitude.h" - -int -Latitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -900000000 && value <= 900000001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Latitude_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-900000000..900000001) */, - -1}; -asn_per_constraints_t asn_PER_type_Latitude_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Latitude = { - "Latitude", - "Latitude", - &asn_OP_NativeInteger, - asn_DEF_Latitude_tags_1, - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - asn_DEF_Latitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Latitude_tags_1) - /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ - { &asn_OER_type_Latitude_constr_1, &asn_PER_type_Latitude_constr_1, Latitude_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c b/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c deleted file mode 100644 index 891024c54..000000000 --- a/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LatitudeDMS.h" - -int -LatitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32400000 && value <= 32400000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LatitudeDMS_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-32400000..32400000) */, - -1}; -asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { - "LatitudeDMS", - "LatitudeDMS", - &asn_OP_NativeInteger, - asn_DEF_LatitudeDMS_tags_1, - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS_tags_1) - /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ - { &asn_OER_type_LatitudeDMS_constr_1, &asn_PER_type_LatitudeDMS_constr_1, LatitudeDMS_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c deleted file mode 100644 index 8308268fc..000000000 --- a/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LatitudeDMS2.h" - -asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLat, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "s" - }, -}; -static const ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { - sizeof(struct LatitudeDMS2), - offsetof(struct LatitudeDMS2, _asn_ctx), - asn_MAP_LatitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { - "LatitudeDMS2", - "LatitudeDMS2", - &asn_OP_SEQUENCE, - asn_DEF_LatitudeDMS2_tags_1, - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LatitudeDMS2_tags_1) - /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_LatitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LayerID.c b/src/tmx/Asn_J2735/src/r63/LayerID.c deleted file mode 100644 index 31a98b092..000000000 --- a/src/tmx/Asn_J2735/src/r63/LayerID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LayerID.h" - -int -LayerID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LayerID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -asn_per_constraints_t asn_PER_type_LayerID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerID = { - "LayerID", - "LayerID", - &asn_OP_NativeInteger, - asn_DEF_LayerID_tags_1, - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - asn_DEF_LayerID_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerID_tags_1) - /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ - { &asn_OER_type_LayerID_constr_1, &asn_PER_type_LayerID_constr_1, LayerID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LayerType.c b/src/tmx/Asn_J2735/src/r63/LayerType.c deleted file mode 100644 index a0b83afb3..000000000 --- a/src/tmx/Asn_J2735/src/r63/LayerType.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LayerType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LayerType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_LayerType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 12, "mixedContent" }, - { 2, 14, "generalMapData" }, - { 3, 16, "intersectionData" }, - { 4, 9, "curveData" }, - { 5, 18, "roadwaySectionData" }, - { 6, 15, "parkingAreaData" }, - { 7, 14, "sharedLaneData" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_LayerType_enum2value_1[] = { - 4, /* curveData(4) */ - 2, /* generalMapData(2) */ - 3, /* intersectionData(3) */ - 1, /* mixedContent(1) */ - 0, /* none(0) */ - 6, /* parkingAreaData(6) */ - 5, /* roadwaySectionData(5) */ - 7 /* sharedLaneData(7) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { - asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LayerType = { - "LayerType", - "LayerType", - &asn_OP_NativeEnumerated, - asn_DEF_LayerType_tags_1, - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - asn_DEF_LayerType_tags_1, /* Same as above */ - sizeof(asn_DEF_LayerType_tags_1) - /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ - { &asn_OER_type_LayerType_constr_1, &asn_PER_type_LayerType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LayerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LightbarInUse.c b/src/tmx/Asn_J2735/src/r63/LightbarInUse.c deleted file mode 100644 index 6d4821e95..000000000 --- a/src/tmx/Asn_J2735/src/r63/LightbarInUse.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LightbarInUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LightbarInUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 19, "yellowCautionLights" }, - { 4, 16, "schooldBusLights" }, - { 5, 16, "arrowSignsActive" }, - { 6, 17, "slowMovingVehicle" }, - { 7, 9, "freqStops" } -}; -static const unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { - 5, /* arrowSignsActive(5) */ - 7, /* freqStops(7) */ - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 4, /* schooldBusLights(4) */ - 6, /* slowMovingVehicle(6) */ - 0, /* unavailable(0) */ - 3 /* yellowCautionLights(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { - asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { - "LightbarInUse", - "LightbarInUse", - &asn_OP_NativeEnumerated, - asn_DEF_LightbarInUse_tags_1, - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - asn_DEF_LightbarInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_LightbarInUse_tags_1) - /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ - { &asn_OER_type_LightbarInUse_constr_1, &asn_PER_type_LightbarInUse_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Location-quality.c b/src/tmx/Asn_J2735/src/r63/Location-quality.c deleted file mode 100644 index 3c8845caf..000000000 --- a/src/tmx/Asn_J2735/src/r63/Location-quality.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Location-quality.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Location_quality_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { - { 0, 13, "loc-qual-bt1m" }, - { 1, 13, "loc-qual-bt5m" }, - { 2, 14, "loc-qual-bt12m" }, - { 3, 14, "loc-qual-bt50m" }, - { 4, 15, "loc-qual-bt125m" }, - { 5, 15, "loc-qual-bt500m" }, - { 6, 16, "loc-qual-bt1250m" }, - { 7, 16, "loc-qual-unknown" } -}; -static const unsigned int asn_MAP_Location_quality_enum2value_1[] = { - 6, /* loc-qual-bt1250m(6) */ - 4, /* loc-qual-bt125m(4) */ - 2, /* loc-qual-bt12m(2) */ - 0, /* loc-qual-bt1m(0) */ - 5, /* loc-qual-bt500m(5) */ - 3, /* loc-qual-bt50m(3) */ - 1, /* loc-qual-bt5m(1) */ - 7 /* loc-qual-unknown(7) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { - asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_quality = { - "Location-quality", - "Location-quality", - &asn_OP_NativeEnumerated, - asn_DEF_Location_quality_tags_1, - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - asn_DEF_Location_quality_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_quality_tags_1) - /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ - { &asn_OER_type_Location_quality_constr_1, &asn_PER_type_Location_quality_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_quality_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Location-tech.c b/src/tmx/Asn_J2735/src/r63/Location-tech.c deleted file mode 100644 index 033863412..000000000 --- a/src/tmx/Asn_J2735/src/r63/Location-tech.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Location-tech.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Location_tech_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 9 } /* (0..9,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { - { 0, 16, "loc-tech-unknown" }, - { 1, 13, "loc-tech-GNSS" }, - { 2, 13, "loc-tech-DGPS" }, - { 3, 12, "loc-tech-RTK" }, - { 4, 12, "loc-tech-PPP" }, - { 5, 14, "loc-tech-drGPS" }, - { 6, 15, "loc-tech-drDGPS" }, - { 7, 11, "loc-tech-dr" }, - { 8, 12, "loc-tech-nav" }, - { 9, 14, "loc-tech-fault" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_Location_tech_enum2value_1[] = { - 2, /* loc-tech-DGPS(2) */ - 1, /* loc-tech-GNSS(1) */ - 4, /* loc-tech-PPP(4) */ - 3, /* loc-tech-RTK(3) */ - 7, /* loc-tech-dr(7) */ - 6, /* loc-tech-drDGPS(6) */ - 5, /* loc-tech-drGPS(5) */ - 9, /* loc-tech-fault(9) */ - 8, /* loc-tech-nav(8) */ - 0 /* loc-tech-unknown(0) */ - /* This list is extensible */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { - asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 11, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Location_tech = { - "Location-tech", - "Location-tech", - &asn_OP_NativeEnumerated, - asn_DEF_Location_tech_tags_1, - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - asn_DEF_Location_tech_tags_1, /* Same as above */ - sizeof(asn_DEF_Location_tech_tags_1) - /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ - { &asn_OER_type_Location_tech_constr_1, &asn_PER_type_Location_tech_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Location_tech_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Longitude.c b/src/tmx/Asn_J2735/src/r63/Longitude.c deleted file mode 100644 index ab60f8917..000000000 --- a/src/tmx/Asn_J2735/src/r63/Longitude.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Longitude.h" - -int -Longitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1799999999 && value <= 1800000001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Longitude_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-1799999999..1800000001) */, - -1}; -asn_per_constraints_t asn_PER_type_Longitude_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Longitude = { - "Longitude", - "Longitude", - &asn_OP_NativeInteger, - asn_DEF_Longitude_tags_1, - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - asn_DEF_Longitude_tags_1, /* Same as above */ - sizeof(asn_DEF_Longitude_tags_1) - /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ - { &asn_OER_type_Longitude_constr_1, &asn_PER_type_Longitude_constr_1, Longitude_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c b/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c deleted file mode 100644 index b2134a078..000000000 --- a/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LongitudeDMS.h" - -int -LongitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -64800000 && value <= 64800000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_LongitudeDMS_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-64800000..64800000) */, - -1}; -asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { - "LongitudeDMS", - "LongitudeDMS", - &asn_OP_NativeInteger, - asn_DEF_LongitudeDMS_tags_1, - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS_tags_1) - /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ - { &asn_OER_type_LongitudeDMS_constr_1, &asn_PER_type_LongitudeDMS_constr_1, LongitudeDMS_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c deleted file mode 100644 index 461728ca4..000000000 --- a/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "LongitudeDMS2.h" - -asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DegreesLong, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "d" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "m" - }, - { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondsAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "s" - }, -}; -static const ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ -}; -asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { - sizeof(struct LongitudeDMS2), - offsetof(struct LongitudeDMS2, _asn_ctx), - asn_MAP_LongitudeDMS2_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { - "LongitudeDMS2", - "LongitudeDMS2", - &asn_OP_SEQUENCE, - asn_DEF_LongitudeDMS2_tags_1, - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ - sizeof(asn_DEF_LongitudeDMS2_tags_1) - /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_LongitudeDMS2_1, - 3, /* Elements count */ - &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MUTCDCode.c b/src/tmx/Asn_J2735/src/r63/MUTCDCode.c deleted file mode 100644 index 59b8a8892..000000000 --- a/src/tmx/Asn_J2735/src/r63/MUTCDCode.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MUTCDCode.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MUTCDCode_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 10, "regulatory" }, - { 2, 7, "warning" }, - { 3, 11, "maintenance" }, - { 4, 15, "motoristService" }, - { 5, 5, "guide" }, - { 6, 3, "rec" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { - 5, /* guide(5) */ - 3, /* maintenance(3) */ - 4, /* motoristService(4) */ - 0, /* none(0) */ - 6, /* rec(6) */ - 1, /* regulatory(1) */ - 2 /* warning(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { - asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { - "MUTCDCode", - "MUTCDCode", - &asn_OP_NativeEnumerated, - asn_DEF_MUTCDCode_tags_1, - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - asn_DEF_MUTCDCode_tags_1, /* Same as above */ - sizeof(asn_DEF_MUTCDCode_tags_1) - /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ - { &asn_OER_type_MUTCDCode_constr_1, &asn_PER_type_MUTCDCode_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c deleted file mode 100644 index 35165b9b2..000000000 --- a/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ManeuverAssistList.h" - -static asn_oer_constraints_t asn_OER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ConnectionManeuverAssist, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { - sizeof(struct ManeuverAssistList), - offsetof(struct ManeuverAssistList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { - "ManeuverAssistList", - "ManeuverAssistList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ManeuverAssistList_tags_1, - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ - sizeof(asn_DEF_ManeuverAssistList_tags_1) - /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ - { &asn_OER_type_ManeuverAssistList_constr_1, &asn_PER_type_ManeuverAssistList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ManeuverAssistList_1, - 1, /* Single element */ - &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c b/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c deleted file mode 100644 index 6a7b31956..000000000 --- a/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MapData-addGrpC.h" - -static asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct MapData_addGrpC, signalHeadLocations), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalHeadLocationList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "signalHeadLocations" - }, -}; -static const int asn_MAP_MapData_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_MapData_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MapData_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1 = { - sizeof(struct MapData_addGrpC), - offsetof(struct MapData_addGrpC, _asn_ctx), - asn_MAP_MapData_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_MapData_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC = { - "MapData-addGrpC", - "MapData-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_MapData_addGrpC_tags_1, - sizeof(asn_DEF_MapData_addGrpC_tags_1) - /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_MapData_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_MapData_addGrpC_tags_1) - /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MapData_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_MapData_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MapData.c b/src/tmx/Asn_J2735/src/r63/MapData.c deleted file mode 100644 index ccec51ebe..000000000 --- a/src/tmx/Asn_J2735/src/r63/MapData.c +++ /dev/null @@ -1,211 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MapData.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct MapData__regional), - offsetof(struct MapData__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MapData_1[] = { - { ATF_POINTER, 1, offsetof(struct MapData, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgIssueRevision" - }, - { ATF_POINTER, 7, offsetof(struct MapData, layerType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "layerType" - }, - { ATF_POINTER, 6, offsetof(struct MapData, layerID), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LayerID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "layerID" - }, - { ATF_POINTER, 5, offsetof(struct MapData, intersections), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionGeometryList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "intersections" - }, - { ATF_POINTER, 4, offsetof(struct MapData, roadSegments), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roadSegments" - }, - { ATF_POINTER, 3, offsetof(struct MapData, dataParameters), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DataParameters, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dataParameters" - }, - { ATF_POINTER, 2, offsetof(struct MapData, restrictionList), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "restrictionList" - }, - { ATF_POINTER, 1, offsetof(struct MapData, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MapData_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgIssueRevision */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* layerType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerID */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadSegments */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataParameters */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* restrictionList */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { - sizeof(struct MapData), - offsetof(struct MapData, _asn_ctx), - asn_MAP_MapData_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_MapData_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MapData = { - "MapData", - "MapData", - &asn_OP_SEQUENCE, - asn_DEF_MapData_tags_1, - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - asn_DEF_MapData_tags_1, /* Same as above */ - sizeof(asn_DEF_MapData_tags_1) - /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MapData_1, - 9, /* Elements count */ - &asn_SPC_MapData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c deleted file mode 100644 index 71d94721b..000000000 --- a/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MaxTimetoChange.h" - -int -MaxTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2402)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..2402) */, - -1}; -asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { - "MaxTimetoChange", - "MaxTimetoChange", - &asn_OP_NativeInteger, - asn_DEF_MaxTimetoChange_tags_1, - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MaxTimetoChange_tags_1) - /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ - { &asn_OER_type_MaxTimetoChange_constr_1, &asn_PER_type_MaxTimetoChange_constr_1, MaxTimetoChange_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c b/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c deleted file mode 100644 index 604caf91c..000000000 --- a/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "MeasurementTimeOffset.h" - -int -MeasurementTimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1500 && value <= 1500)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-1500..1500) */, - -1}; -asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -1500, 1500 } /* (-1500..1500) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MeasurementTimeOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset = { - "MeasurementTimeOffset", - "MeasurementTimeOffset", - &asn_OP_NativeInteger, - asn_DEF_MeasurementTimeOffset_tags_1, - sizeof(asn_DEF_MeasurementTimeOffset_tags_1) - /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ - asn_DEF_MeasurementTimeOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasurementTimeOffset_tags_1) - /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasurementTimeOffset_constr_1, &asn_PER_type_MeasurementTimeOffset_constr_1, MeasurementTimeOffset_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c deleted file mode 100644 index a10060f8d..000000000 --- a/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MergeDivergeNodeAngle.h" - -int -MergeDivergeNodeAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -180 && value <= 180)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-180..180) */, - -1}; -asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { - "MergeDivergeNodeAngle", - "MergeDivergeNodeAngle", - &asn_OP_NativeInteger, - asn_DEF_MergeDivergeNodeAngle_tags_1, - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) - /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_MergeDivergeNodeAngle_constr_1, &asn_PER_type_MergeDivergeNodeAngle_constr_1, MergeDivergeNodeAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MessageBLOB.c b/src/tmx/Asn_J2735/src/r63/MessageBLOB.c deleted file mode 100644 index cf9279ff8..000000000 --- a/src/tmx/Asn_J2735/src/r63/MessageBLOB.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MessageBLOB.h" - -int -MessageBLOB_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 10 && size <= 2000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MessageBLOB_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(10..2000)) */}; -static asn_per_constraints_t asn_PER_type_MessageBLOB_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MessageBLOB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MessageBLOB = { - "MessageBLOB", - "MessageBLOB", - &asn_OP_OCTET_STRING, - asn_DEF_MessageBLOB_tags_1, - sizeof(asn_DEF_MessageBLOB_tags_1) - /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ - asn_DEF_MessageBLOB_tags_1, /* Same as above */ - sizeof(asn_DEF_MessageBLOB_tags_1) - /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ - { &asn_OER_type_MessageBLOB_constr_1, &asn_PER_type_MessageBLOB_constr_1, MessageBLOB_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MessageFrame.c b/src/tmx/Asn_J2735/src/r63/MessageFrame.c deleted file mode 100644 index b3925827e..000000000 --- a/src/tmx/Asn_J2735/src/r63/MessageFrame.c +++ /dev/null @@ -1,597 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names` - */ - -#include "MessageFrame.h" - -static const long asn_VAL_1_basicSafetyMessage = 20; -static const long asn_VAL_2_mapData = 18; -static const long asn_VAL_3_signalPhaseAndTimingMessage = 19; -static const long asn_VAL_4_commonSafetyRequest = 21; -static const long asn_VAL_5_emergencyVehicleAlert = 22; -static const long asn_VAL_6_intersectionCollision = 23; -static const long asn_VAL_7_nmeaCorrections = 24; -static const long asn_VAL_8_probeDataManagement = 25; -static const long asn_VAL_9_probeVehicleData = 26; -static const long asn_VAL_10_roadSideAlert = 27; -static const long asn_VAL_11_rtcmCorrections = 28; -static const long asn_VAL_12_signalRequestMessage = 29; -static const long asn_VAL_13_signalStatusMessage = 30; -static const long asn_VAL_14_travelerInformation = 31; -static const long asn_VAL_15_personalSafetyMessage = 32; -static const long asn_VAL_16_testMessage00 = 240; -static const long asn_VAL_17_testMessage01 = 241; -static const long asn_VAL_18_testMessage02 = 242; -static const long asn_VAL_19_testMessage03 = 243; -static const long asn_VAL_20_testMessage04 = 244; -static const long asn_VAL_21_testMessage05 = 245; -static const long asn_VAL_22_testMessage06 = 246; -static const long asn_VAL_23_testMessage07 = 247; -static const long asn_VAL_24_testMessage08 = 248; -static const long asn_VAL_25_testMessage09 = 249; -static const long asn_VAL_26_testMessage10 = 250; -static const long asn_VAL_27_testMessage11 = 251; -static const long asn_VAL_28_testMessage12 = 252; -static const long asn_VAL_29_testMessage13 = 253; -static const long asn_VAL_30_testMessage14 = 254; -static const long asn_VAL_31_testMessage15 = 255; -static const long asn_VAL_32_sensorDataSharingMessage = 41; -static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, - { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_2_mapData }, - { "&Type", aioc__type, &asn_DEF_MapData }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_3_signalPhaseAndTimingMessage }, - { "&Type", aioc__type, &asn_DEF_SPAT }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_4_commonSafetyRequest }, - { "&Type", aioc__type, &asn_DEF_CommonSafetyRequest }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_5_emergencyVehicleAlert }, - { "&Type", aioc__type, &asn_DEF_EmergencyVehicleAlert }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_6_intersectionCollision }, - { "&Type", aioc__type, &asn_DEF_IntersectionCollision }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_7_nmeaCorrections }, - { "&Type", aioc__type, &asn_DEF_NMEAcorrections }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_8_probeDataManagement }, - { "&Type", aioc__type, &asn_DEF_ProbeDataManagement }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_9_probeVehicleData }, - { "&Type", aioc__type, &asn_DEF_ProbeVehicleData }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_10_roadSideAlert }, - { "&Type", aioc__type, &asn_DEF_RoadSideAlert }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_11_rtcmCorrections }, - { "&Type", aioc__type, &asn_DEF_RTCMcorrections }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_12_signalRequestMessage }, - { "&Type", aioc__type, &asn_DEF_SignalRequestMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_13_signalStatusMessage }, - { "&Type", aioc__type, &asn_DEF_SignalStatusMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_14_travelerInformation }, - { "&Type", aioc__type, &asn_DEF_TravelerInformation }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_15_personalSafetyMessage }, - { "&Type", aioc__type, &asn_DEF_PersonalSafetyMessage }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_16_testMessage00 }, - { "&Type", aioc__type, &asn_DEF_TestMessage00 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_17_testMessage01 }, - { "&Type", aioc__type, &asn_DEF_TestMessage01 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_18_testMessage02 }, - { "&Type", aioc__type, &asn_DEF_TestMessage02 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_19_testMessage03 }, - { "&Type", aioc__type, &asn_DEF_TestMessage03 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_20_testMessage04 }, - { "&Type", aioc__type, &asn_DEF_TestMessage04 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_21_testMessage05 }, - { "&Type", aioc__type, &asn_DEF_TestMessage05 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_22_testMessage06 }, - { "&Type", aioc__type, &asn_DEF_TestMessage06 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_23_testMessage07 }, - { "&Type", aioc__type, &asn_DEF_TestMessage07 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_24_testMessage08 }, - { "&Type", aioc__type, &asn_DEF_TestMessage08 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_25_testMessage09 }, - { "&Type", aioc__type, &asn_DEF_TestMessage09 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_26_testMessage10 }, - { "&Type", aioc__type, &asn_DEF_TestMessage10 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_27_testMessage11 }, - { "&Type", aioc__type, &asn_DEF_TestMessage11 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_28_testMessage12 }, - { "&Type", aioc__type, &asn_DEF_TestMessage12 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_29_testMessage13 }, - { "&Type", aioc__type, &asn_DEF_TestMessage13 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, - { "&Type", aioc__type, &asn_DEF_TestMessage14 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, - { "&Type", aioc__type, &asn_DEF_TestMessage15 }, - { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_32_sensorDataSharingMessage }, - { "&Type", aioc__type, &asn_DEF_SensorDataSharingMessage } -}; -static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { - 32, 2, asn_IOS_MessageTypes_1_rows -}; -static int -memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_MessageTypes_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MessageFrame, messageId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -static asn_oer_constraints_t asn_OER_memb_messageId_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_messageId_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_value_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct value, choice.BasicSafetyMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "BasicSafetyMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.MapData), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MapData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "MapData" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.SPAT), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SPAT, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "SPAT" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.CommonSafetyRequest), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_CommonSafetyRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "CommonSafetyRequest" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.EmergencyVehicleAlert), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_EmergencyVehicleAlert, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "EmergencyVehicleAlert" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.IntersectionCollision), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_IntersectionCollision, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "IntersectionCollision" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.NMEAcorrections), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NMEAcorrections, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "NMEAcorrections" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.ProbeDataManagement), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ProbeDataManagement, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ProbeDataManagement" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.ProbeVehicleData), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ProbeVehicleData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ProbeVehicleData" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.RoadSideAlert), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RoadSideAlert, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RoadSideAlert" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.RTCMcorrections), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RTCMcorrections, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RTCMcorrections" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.SignalRequestMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalRequestMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "SignalRequestMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.SignalStatusMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatusMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "SignalStatusMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TravelerInformation), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TravelerInformation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TravelerInformation" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.PersonalSafetyMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PersonalSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "PersonalSafetyMessage" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage00), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage00, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage00" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage01), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage01, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage01" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage02), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage02, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage02" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage03), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage03, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage03" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage04), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage04, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage04" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage05), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage05, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage05" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage06), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage06, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage06" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage07), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage07, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage07" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage08), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage08, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage08" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage09), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage09, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage09" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage10), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage10" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage11), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage11, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage11" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage12), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage12" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage13), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage13, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage13" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage14), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage14" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage15), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TestMessage15, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "TestMessage15" - }, - { ATF_NOFLAGS, 0, offsetof(struct value, choice.SensorDataSharingMessage), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SensorDataSharingMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "SensorDataSharingMessage" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 31 }, /* BasicSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 30 }, /* MapData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 29 }, /* SPAT */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 28 }, /* CommonSafetyRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 27 }, /* EmergencyVehicleAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 26 }, /* IntersectionCollision */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 25 }, /* NMEAcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 24 }, /* ProbeDataManagement */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 23 }, /* ProbeVehicleData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 22 }, /* RoadSideAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 21 }, /* RTCMcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 20 }, /* SignalRequestMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 19 }, /* SignalStatusMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 18 }, /* TravelerInformation */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 17 }, /* PersonalSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 16 }, /* TestMessage00 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 15 }, /* TestMessage01 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 14 }, /* TestMessage02 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 13 }, /* TestMessage03 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 12 }, /* TestMessage04 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 11 }, /* TestMessage05 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 10 }, /* TestMessage06 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 9 }, /* TestMessage07 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 8 }, /* TestMessage08 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 7 }, /* TestMessage09 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 6 }, /* TestMessage10 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 5 }, /* TestMessage11 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 4 }, /* TestMessage12 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 3 }, /* TestMessage13 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 2 }, /* TestMessage14 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 1 }, /* TestMessage15 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 31, -31, 0 } /* SensorDataSharingMessage */ -}; -static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { - sizeof(struct value), - offsetof(struct value, _asn_ctx), - offsetof(struct value, present), - sizeof(((struct value *)0)->present), - asn_MAP_value_tag2el_3, - 32, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_3 = { - "value", - "value", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_3, - 32, /* Elements count */ - &asn_SPC_value_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_MessageFrame_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MessageFrame, messageId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRCmsgID, - 0, - { &asn_OER_memb_messageId_constr_2, &asn_PER_memb_messageId_constr_2, memb_messageId_constraint_1 }, - 0, 0, /* No default value */ - "messageId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct MessageFrame, value), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_value_3, - select_value_type, - { &asn_OER_memb_value_constr_3, &asn_PER_memb_value_constr_3, memb_value_constraint_1 }, - 0, 0, /* No default value */ - "value" - }, -}; -static const ber_tlv_tag_t asn_DEF_MessageFrame_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MessageFrame_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* value */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MessageFrame_specs_1 = { - sizeof(struct MessageFrame), - offsetof(struct MessageFrame, _asn_ctx), - asn_MAP_MessageFrame_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MessageFrame = { - "MessageFrame", - "MessageFrame", - &asn_OP_SEQUENCE, - asn_DEF_MessageFrame_tags_1, - sizeof(asn_DEF_MessageFrame_tags_1) - /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ - asn_DEF_MessageFrame_tags_1, /* Same as above */ - sizeof(asn_DEF_MessageFrame_tags_1) - /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MessageFrame_1, - 2, /* Elements count */ - &asn_SPC_MessageFrame_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c b/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c deleted file mode 100644 index e7ecaf7c1..000000000 --- a/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MinTimetoChange.h" - -int -MinTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2402)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MinTimetoChange_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..2402) */, - -1}; -asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { - "MinTimetoChange", - "MinTimetoChange", - &asn_OP_NativeInteger, - asn_DEF_MinTimetoChange_tags_1, - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - asn_DEF_MinTimetoChange_tags_1, /* Same as above */ - sizeof(asn_DEF_MinTimetoChange_tags_1) - /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ - { &asn_OER_type_MinTimetoChange_constr_1, &asn_PER_type_MinTimetoChange_constr_1, MinTimetoChange_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Minute.c b/src/tmx/Asn_J2735/src/r63/Minute.c deleted file mode 100644 index 10db11bdc..000000000 --- a/src/tmx/Asn_J2735/src/r63/Minute.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Minute.h" - -int -Minute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Minute_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_Minute_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Minute = { - "Minute", - "Minute", - &asn_OP_NativeInteger, - asn_DEF_Minute_tags_1, - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - asn_DEF_Minute_tags_1, /* Same as above */ - sizeof(asn_DEF_Minute_tags_1) - /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ - { &asn_OER_type_Minute_constr_1, &asn_PER_type_Minute_constr_1, Minute_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c deleted file mode 100644 index cde423870..000000000 --- a/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MinuteOfTheYear.h" - -int -MinuteOfTheYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 527040)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { - { 4, 1 } /* (0..527040) */, - -1}; -asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { - "MinuteOfTheYear", - "MinuteOfTheYear", - &asn_OP_NativeInteger, - asn_DEF_MinuteOfTheYear_tags_1, - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ - sizeof(asn_DEF_MinuteOfTheYear_tags_1) - /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ - { &asn_OER_type_MinuteOfTheYear_constr_1, &asn_PER_type_MinuteOfTheYear_constr_1, MinuteOfTheYear_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MinutesAngle.c b/src/tmx/Asn_J2735/src/r63/MinutesAngle.c deleted file mode 100644 index 19d447fc1..000000000 --- a/src/tmx/Asn_J2735/src/r63/MinutesAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MinutesAngle.h" - -int -MinutesAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 59)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MinutesAngle_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..59) */, - -1}; -asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { - "MinutesAngle", - "MinutesAngle", - &asn_OP_NativeInteger, - asn_DEF_MinutesAngle_tags_1, - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - asn_DEF_MinutesAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesAngle_tags_1) - /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_MinutesAngle_constr_1, &asn_PER_type_MinutesAngle_constr_1, MinutesAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MinutesDuration.c b/src/tmx/Asn_J2735/src/r63/MinutesDuration.c deleted file mode 100644 index 2debd988a..000000000 --- a/src/tmx/Asn_J2735/src/r63/MinutesDuration.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MinutesDuration.h" - -int -MinutesDuration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MinutesDuration_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32000) */, - -1}; -asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { - "MinutesDuration", - "MinutesDuration", - &asn_OP_NativeInteger, - asn_DEF_MinutesDuration_tags_1, - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - asn_DEF_MinutesDuration_tags_1, /* Same as above */ - sizeof(asn_DEF_MinutesDuration_tags_1) - /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ - { &asn_OER_type_MinutesDuration_constr_1, &asn_PER_type_MinutesDuration_constr_1, MinutesDuration_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c b/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c deleted file mode 100644 index 740cd9403..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityDynamicID.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityDynamicID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 8) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityDynamicID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID = { - "MobilityDynamicID", - "MobilityDynamicID", - &asn_OP_IA5String, - asn_DEF_MobilityDynamicID_tags_1, - sizeof(asn_DEF_MobilityDynamicID_tags_1) - /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ - asn_DEF_MobilityDynamicID_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityDynamicID_tags_1) - /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityDynamicID_constr_1, &asn_PER_type_MobilityDynamicID_constr_1, MobilityDynamicID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c deleted file mode 100644 index 0ccbbe2e2..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityECEFCoordinate.h" - -int -MobilityECEFCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -638363700 && value <= 638363700)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-638363700..638363700) */, - -1}; -asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 31, -1, -638363700, 638363700 } /* (-638363700..638363700) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityECEFCoordinate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate = { - "MobilityECEFCoordinate", - "MobilityECEFCoordinate", - &asn_OP_NativeInteger, - asn_DEF_MobilityECEFCoordinate_tags_1, - sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) - /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ - asn_DEF_MobilityECEFCoordinate_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) - /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityECEFCoordinate_constr_1, &asn_PER_type_MobilityECEFCoordinate_constr_1, MobilityECEFCoordinate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c deleted file mode 100644 index 3f2f36cc0..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityECEFOffset.h" - -asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetX), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFOffsetCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetX" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetY), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFOffsetCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetY" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetZ), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFOffsetCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetZ" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityECEFOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityECEFOffset_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1 = { - sizeof(struct MobilityECEFOffset), - offsetof(struct MobilityECEFOffset, _asn_ctx), - asn_MAP_MobilityECEFOffset_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset = { - "MobilityECEFOffset", - "MobilityECEFOffset", - &asn_OP_SEQUENCE, - asn_DEF_MobilityECEFOffset_tags_1, - sizeof(asn_DEF_MobilityECEFOffset_tags_1) - /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ - asn_DEF_MobilityECEFOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityECEFOffset_tags_1) - /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityECEFOffset_1, - 3, /* Elements count */ - &asn_SPC_MobilityECEFOffset_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c deleted file mode 100644 index 0e2b37baf..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityECEFOffsetCoordinate.h" - -int -MobilityECEFOffsetCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -500 && value <= 501)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-500..501) */, - -1}; -asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -500, 501 } /* (-500..501) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityECEFOffsetCoordinate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate = { - "MobilityECEFOffsetCoordinate", - "MobilityECEFOffsetCoordinate", - &asn_OP_NativeInteger, - asn_DEF_MobilityECEFOffsetCoordinate_tags_1, - sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) - /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ - asn_DEF_MobilityECEFOffsetCoordinate_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) - /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityECEFOffsetCoordinate_constr_1, &asn_PER_type_MobilityECEFOffsetCoordinate_constr_1, MobilityECEFOffsetCoordinate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityGUID.c b/src/tmx/Asn_J2735/src/r63/MobilityGUID.c deleted file mode 100644 index 8cac1275f..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityGUID.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityGUID.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityGUID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 36) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityGUID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 36 /* (SIZE(36..36)) */}; -asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 0, 0, 36, 36 } /* (SIZE(36..36)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityGUID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityGUID = { - "MobilityGUID", - "MobilityGUID", - &asn_OP_IA5String, - asn_DEF_MobilityGUID_tags_1, - sizeof(asn_DEF_MobilityGUID_tags_1) - /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ - asn_DEF_MobilityGUID_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityGUID_tags_1) - /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityGUID_constr_1, &asn_PER_type_MobilityGUID_constr_1, MobilityGUID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityHeader.c b/src/tmx/Asn_J2735/src/r63/MobilityHeader.c deleted file mode 100644 index b7c8d550c..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityHeader.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityHeader.h" - -asn_TYPE_member_t asn_MBR_MobilityHeader_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostStaticId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityStaticID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hostStaticId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, targetStaticId), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityStaticID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "targetStaticId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostBSMId), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityDynamicID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hostBSMId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, planId), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityGUID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "planId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, timestamp), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityTimestamp, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timestamp" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityHeader_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityHeader_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hostStaticId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* targetStaticId */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* hostBSMId */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* planId */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* timestamp */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1 = { - sizeof(struct MobilityHeader), - offsetof(struct MobilityHeader, _asn_ctx), - asn_MAP_MobilityHeader_tag2el_1, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityHeader = { - "MobilityHeader", - "MobilityHeader", - &asn_OP_SEQUENCE, - asn_DEF_MobilityHeader_tags_1, - sizeof(asn_DEF_MobilityHeader_tags_1) - /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ - asn_DEF_MobilityHeader_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityHeader_tags_1) - /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityHeader_1, - 5, /* Elements count */ - &asn_SPC_MobilityHeader_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityLocation.c b/src/tmx/Asn_J2735/src/r63/MobilityLocation.c deleted file mode 100644 index e967c0d3a..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityLocation.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityLocation.h" - -asn_TYPE_member_t asn_MBR_MobilityLocation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefX), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ecefX" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefY), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ecefY" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefZ), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityECEFCoordinate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ecefZ" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, timestamp), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityTimestamp, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timestamp" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityLocation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ecefX */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ecefY */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ecefZ */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* timestamp */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1 = { - sizeof(struct MobilityLocation), - offsetof(struct MobilityLocation, _asn_ctx), - asn_MAP_MobilityLocation_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityLocation = { - "MobilityLocation", - "MobilityLocation", - &asn_OP_SEQUENCE, - asn_DEF_MobilityLocation_tags_1, - sizeof(asn_DEF_MobilityLocation_tags_1) - /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ - asn_DEF_MobilityLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityLocation_tags_1) - /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityLocation_1, - 4, /* Elements count */ - &asn_SPC_MobilityLocation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c b/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c deleted file mode 100644 index 336af15ca..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityLocationOffsets.h" - -static asn_oer_constraints_t asn_OER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..60)) */}; -asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (SIZE(0..60)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[] = { - { ATF_NOFLAGS, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MobilityECEFOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityLocationOffsets_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1 = { - sizeof(struct MobilityLocationOffsets), - offsetof(struct MobilityLocationOffsets, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets = { - "MobilityLocationOffsets", - "MobilityLocationOffsets", - &asn_OP_SEQUENCE_OF, - asn_DEF_MobilityLocationOffsets_tags_1, - sizeof(asn_DEF_MobilityLocationOffsets_tags_1) - /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ - asn_DEF_MobilityLocationOffsets_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityLocationOffsets_tags_1) - /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityLocationOffsets_constr_1, &asn_PER_type_MobilityLocationOffsets_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MobilityLocationOffsets_1, - 1, /* Single element */ - &asn_SPC_MobilityLocationOffsets_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityOperation.c b/src/tmx/Asn_J2735/src/r63/MobilityOperation.c deleted file mode 100644 index bccd960cd..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityOperation.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityOperation.h" - -asn_TYPE_member_t asn_MBR_MobilityOperation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, strategy), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityStrategy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "strategy" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, operationParams), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityParameters, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "operationParams" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityOperation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityOperation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* operationParams */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1 = { - sizeof(struct MobilityOperation), - offsetof(struct MobilityOperation, _asn_ctx), - asn_MAP_MobilityOperation_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityOperation = { - "MobilityOperation", - "MobilityOperation", - &asn_OP_SEQUENCE, - asn_DEF_MobilityOperation_tags_1, - sizeof(asn_DEF_MobilityOperation_tags_1) - /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ - asn_DEF_MobilityOperation_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityOperation_tags_1) - /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityOperation_1, - 2, /* Elements count */ - &asn_SPC_MobilityOperation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityParameters.c b/src/tmx/Asn_J2735/src/r63/MobilityParameters.c deleted file mode 100644 index ca4cd5d13..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityParameters.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityParameters.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityParameters_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 2 && size <= 1000) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityParameters_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..1000)) */}; -asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 10, 10, 2, 1000 } /* (SIZE(2..1000)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityParameters_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityParameters = { - "MobilityParameters", - "MobilityParameters", - &asn_OP_IA5String, - asn_DEF_MobilityParameters_tags_1, - sizeof(asn_DEF_MobilityParameters_tags_1) - /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ - asn_DEF_MobilityParameters_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityParameters_tags_1) - /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityParameters_constr_1, &asn_PER_type_MobilityParameters_constr_1, MobilityParameters_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityPath.c b/src/tmx/Asn_J2735/src/r63/MobilityPath.c deleted file mode 100644 index 92134c978..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityPath.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityPath.h" - -asn_TYPE_member_t asn_MBR_MobilityPath_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "location" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, trajectory), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityLocationOffsets, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trajectory" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityPath_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityPath_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* trajectory */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1 = { - sizeof(struct MobilityPath), - offsetof(struct MobilityPath, _asn_ctx), - asn_MAP_MobilityPath_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityPath = { - "MobilityPath", - "MobilityPath", - &asn_OP_SEQUENCE, - asn_DEF_MobilityPath_tags_1, - sizeof(asn_DEF_MobilityPath_tags_1) - /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ - asn_DEF_MobilityPath_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityPath_tags_1) - /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityPath_1, - 2, /* Elements count */ - &asn_SPC_MobilityPath_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c b/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c deleted file mode 100644 index f275b2807..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityPlanType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityPlanType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MobilityPlanType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 22, "changingLanesToTheLeft" }, - { 2, 23, "changingLanesToTheRight" }, - { 3, 17, "joinPlatoonAtRear" }, - { 4, 19, "platoonFollowerJoin" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MobilityPlanType_enum2value_1[] = { - 1, /* changingLanesToTheLeft(1) */ - 2, /* changingLanesToTheRight(2) */ - 3, /* joinPlatoonAtRear(3) */ - 4, /* platoonFollowerJoin(4) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1 = { - asn_MAP_MobilityPlanType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MobilityPlanType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MobilityPlanType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityPlanType = { - "MobilityPlanType", - "MobilityPlanType", - &asn_OP_NativeEnumerated, - asn_DEF_MobilityPlanType_tags_1, - sizeof(asn_DEF_MobilityPlanType_tags_1) - /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ - asn_DEF_MobilityPlanType_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityPlanType_tags_1) - /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityPlanType_constr_1, &asn_PER_type_MobilityPlanType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MobilityPlanType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityRequest.c b/src/tmx/Asn_J2735/src/r63/MobilityRequest.c deleted file mode 100644 index 987679861..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityRequest.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityRequest.h" - -asn_TYPE_member_t asn_MBR_MobilityRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategy), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityStrategy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "strategy" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, planType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityPlanType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "planType" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, urgency), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityUrgency, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "urgency" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, location), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "location" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategyParams), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityParameters, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "strategyParams" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectoryStart), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trajectoryStart" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectory), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityLocationOffsets, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trajectory" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, expiration), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityTimestamp, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "expiration" - }, -}; -static const int asn_MAP_MobilityRequest_oms_1[] = { 5, 6, 7 }; -static const ber_tlv_tag_t asn_DEF_MobilityRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* planType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* urgency */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* strategyParams */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* trajectoryStart */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trajectory */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* expiration */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1 = { - sizeof(struct MobilityRequest), - offsetof(struct MobilityRequest, _asn_ctx), - asn_MAP_MobilityRequest_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_MobilityRequest_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityRequest = { - "MobilityRequest", - "MobilityRequest", - &asn_OP_SEQUENCE, - asn_DEF_MobilityRequest_tags_1, - sizeof(asn_DEF_MobilityRequest_tags_1) - /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ - asn_DEF_MobilityRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityRequest_tags_1) - /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityRequest_1, - 8, /* Elements count */ - &asn_SPC_MobilityRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityResponse.c b/src/tmx/Asn_J2735/src/r63/MobilityResponse.c deleted file mode 100644 index d6335ccbc..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityResponse.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityResponse.h" - -asn_TYPE_member_t asn_MBR_MobilityResponse_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, urgency), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityUrgency, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "urgency" - }, - { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, isAccepted), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityResponseFlag, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "isAccepted" - }, -}; -static const ber_tlv_tag_t asn_DEF_MobilityResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MobilityResponse_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* urgency */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* isAccepted */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1 = { - sizeof(struct MobilityResponse), - offsetof(struct MobilityResponse, _asn_ctx), - asn_MAP_MobilityResponse_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MobilityResponse = { - "MobilityResponse", - "MobilityResponse", - &asn_OP_SEQUENCE, - asn_DEF_MobilityResponse_tags_1, - sizeof(asn_DEF_MobilityResponse_tags_1) - /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ - asn_DEF_MobilityResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityResponse_tags_1) - /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MobilityResponse_1, - 2, /* Elements count */ - &asn_SPC_MobilityResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c b/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c deleted file mode 100644 index b43d1876d..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityResponseFlag.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_MobilityResponseFlag_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag = { - "MobilityResponseFlag", - "MobilityResponseFlag", - &asn_OP_BOOLEAN, - asn_DEF_MobilityResponseFlag_tags_1, - sizeof(asn_DEF_MobilityResponseFlag_tags_1) - /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ - asn_DEF_MobilityResponseFlag_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityResponseFlag_tags_1) - /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c b/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c deleted file mode 100644 index 792fc2807..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityStaticID.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityStaticID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 2 && size <= 16) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityStaticID_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..16)) */}; -asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 2, 16 } /* (SIZE(2..16)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityStaticID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityStaticID = { - "MobilityStaticID", - "MobilityStaticID", - &asn_OP_IA5String, - asn_DEF_MobilityStaticID_tags_1, - sizeof(asn_DEF_MobilityStaticID_tags_1) - /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ - asn_DEF_MobilityStaticID_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityStaticID_tags_1) - /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityStaticID_constr_1, &asn_PER_type_MobilityStaticID_constr_1, MobilityStaticID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c b/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c deleted file mode 100644 index 419539af0..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityStrategy.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityStrategy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 2 && size <= 50) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityStrategy_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..50)) */}; -asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 2, 50 } /* (SIZE(2..50)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityStrategy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityStrategy = { - "MobilityStrategy", - "MobilityStrategy", - &asn_OP_IA5String, - asn_DEF_MobilityStrategy_tags_1, - sizeof(asn_DEF_MobilityStrategy_tags_1) - /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ - asn_DEF_MobilityStrategy_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityStrategy_tags_1) - /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityStrategy_constr_1, &asn_PER_type_MobilityStrategy_constr_1, MobilityStrategy_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c b/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c deleted file mode 100644 index c95dd6d6b..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityTimestamp.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -MobilityTimestamp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 19) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { - { 0, 0 }, - 19 /* (SIZE(19..19)) */}; -asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityTimestamp_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp = { - "MobilityTimestamp", - "MobilityTimestamp", - &asn_OP_IA5String, - asn_DEF_MobilityTimestamp_tags_1, - sizeof(asn_DEF_MobilityTimestamp_tags_1) - /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ - asn_DEF_MobilityTimestamp_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityTimestamp_tags_1) - /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityTimestamp_constr_1, &asn_PER_type_MobilityTimestamp_constr_1, MobilityTimestamp_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c b/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c deleted file mode 100644 index a85d87e4a..000000000 --- a/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "MobilityUrgency.h" - -int -MobilityUrgency_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MobilityUrgency_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1000) */, - -1}; -asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MobilityUrgency_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MobilityUrgency = { - "MobilityUrgency", - "MobilityUrgency", - &asn_OP_NativeInteger, - asn_DEF_MobilityUrgency_tags_1, - sizeof(asn_DEF_MobilityUrgency_tags_1) - /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ - asn_DEF_MobilityUrgency_tags_1, /* Same as above */ - sizeof(asn_DEF_MobilityUrgency_tags_1) - /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ - { &asn_OER_type_MobilityUrgency_constr_1, &asn_PER_type_MobilityUrgency_constr_1, MobilityUrgency_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Month.c b/src/tmx/Asn_J2735/src/r63/Month.c deleted file mode 100644 index 55b6962e9..000000000 --- a/src/tmx/Asn_J2735/src/r63/Month.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Month.h" - -int -Month_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Month_constr_1 CC_NOTUSED = { - { 1, 1 } /* (1..255) */, - -1}; -asn_per_constraints_t asn_PER_type_Month_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Month_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Month = { - "Month", - "Month", - &asn_OP_NativeInteger, - asn_DEF_Month_tags_1, - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - asn_DEF_Month_tags_1, /* Same as above */ - sizeof(asn_DEF_Month_tags_1) - /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ - { &asn_OER_type_Month_constr_1, &asn_PER_type_Month_constr_1, Month_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c deleted file mode 100644 index 00c773404..000000000 --- a/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MotorizedPropelledType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 10, "otherTypes" }, - { 2, 10, "wheelChair" }, - { 3, 7, "bicycle" }, - { 4, 7, "scooter" }, - { 5, 19, "selfBalancingDevice" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { - 3, /* bicycle(3) */ - 1, /* otherTypes(1) */ - 4, /* scooter(4) */ - 5, /* selfBalancingDevice(5) */ - 0, /* unavailable(0) */ - 2 /* wheelChair(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { - asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 7, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { - "MotorizedPropelledType", - "MotorizedPropelledType", - &asn_OP_NativeEnumerated, - asn_DEF_MotorizedPropelledType_tags_1, - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ - sizeof(asn_DEF_MotorizedPropelledType_tags_1) - /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ - { &asn_OER_type_MotorizedPropelledType_constr_1, &asn_PER_type_MotorizedPropelledType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c b/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c deleted file mode 100644 index 4cab10dea..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementEvent-addGrpB.h" - -static asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[] = { - { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementEvent_addGrpB, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinTimetoChange, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct MovementEvent_addGrpB, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MaxTimetoChange, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct MovementEvent_addGrpB, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct MovementEvent_addGrpB, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeRemaining, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nextTime" - }, -}; -static const int asn_MAP_MovementEvent_addGrpB_oms_1[] = { 0, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_MovementEvent_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1 = { - sizeof(struct MovementEvent_addGrpB), - offsetof(struct MovementEvent_addGrpB, _asn_ctx), - asn_MAP_MovementEvent_addGrpB_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_MovementEvent_addGrpB_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB = { - "MovementEvent-addGrpB", - "MovementEvent-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_MovementEvent_addGrpB_tags_1, - sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) - /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_MovementEvent_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) - /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MovementEvent_addGrpB_1, - 6, /* Elements count */ - &asn_SPC_MovementEvent_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementEvent.c b/src/tmx/Asn_J2735/src/r63/MovementEvent.c deleted file mode 100644 index a1737abee..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementEvent.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementEvent.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct MovementEvent__regional), - offsetof(struct MovementEvent__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementPhaseState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eventState" - }, - { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeChangeDetails, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timing" - }, - { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AdvisorySpeedList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speeds" - }, - { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { - sizeof(struct MovementEvent), - offsetof(struct MovementEvent, _asn_ctx), - asn_MAP_MovementEvent_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_MovementEvent_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEvent = { - "MovementEvent", - "MovementEvent", - &asn_OP_SEQUENCE, - asn_DEF_MovementEvent_tags_1, - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - asn_DEF_MovementEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEvent_tags_1) - /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MovementEvent_1, - 4, /* Elements count */ - &asn_SPC_MovementEvent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementEventList.c b/src/tmx/Asn_J2735/src/r63/MovementEventList.c deleted file mode 100644 index 66f78a113..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementEventList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementEventList.h" - -static asn_oer_constraints_t asn_OER_type_MovementEventList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementEvent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { - sizeof(struct MovementEventList), - offsetof(struct MovementEventList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementEventList = { - "MovementEventList", - "MovementEventList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MovementEventList_tags_1, - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - asn_DEF_MovementEventList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementEventList_tags_1) - /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ - { &asn_OER_type_MovementEventList_constr_1, &asn_PER_type_MovementEventList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MovementEventList_1, - 1, /* Single element */ - &asn_SPC_MovementEventList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementList.c b/src/tmx/Asn_J2735/src/r63/MovementList.c deleted file mode 100644 index 996762004..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementList.h" - -static asn_oer_constraints_t asn_OER_type_MovementList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -asn_per_constraints_t asn_PER_type_MovementList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MovementList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MovementState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { - sizeof(struct MovementList), - offsetof(struct MovementList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementList = { - "MovementList", - "MovementList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MovementList_tags_1, - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - asn_DEF_MovementList_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementList_tags_1) - /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ - { &asn_OER_type_MovementList_constr_1, &asn_PER_type_MovementList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MovementList_1, - 1, /* Single element */ - &asn_SPC_MovementList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c b/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c deleted file mode 100644 index ead87b580..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementPhaseState.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MovementPhaseState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 4, "dark" }, - { 2, 17, "stop-Then-Proceed" }, - { 3, 15, "stop-And-Remain" }, - { 4, 12, "pre-Movement" }, - { 5, 27, "permissive-Movement-Allowed" }, - { 6, 26, "protected-Movement-Allowed" }, - { 7, 20, "permissive-clearance" }, - { 8, 19, "protected-clearance" }, - { 9, 27, "caution-Conflicting-Traffic" } -}; -static const unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { - 9, /* caution-Conflicting-Traffic(9) */ - 1, /* dark(1) */ - 5, /* permissive-Movement-Allowed(5) */ - 7, /* permissive-clearance(7) */ - 4, /* pre-Movement(4) */ - 6, /* protected-Movement-Allowed(6) */ - 8, /* protected-clearance(8) */ - 3, /* stop-And-Remain(3) */ - 2, /* stop-Then-Proceed(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { - asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ - 10, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { - "MovementPhaseState", - "MovementPhaseState", - &asn_OP_NativeEnumerated, - asn_DEF_MovementPhaseState_tags_1, - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - asn_DEF_MovementPhaseState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementPhaseState_tags_1) - /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ - { &asn_OER_type_MovementPhaseState_constr_1, &asn_PER_type_MovementPhaseState_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MovementState.c b/src/tmx/Asn_J2735/src/r63/MovementState.c deleted file mode 100644 index cee088350..000000000 --- a/src/tmx/Asn_J2735/src/r63/MovementState.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MovementState.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct MovementState__regional), - offsetof(struct MovementState__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MovementState_1[] = { - { ATF_POINTER, 1, offsetof(struct MovementState, movementName), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "movementName" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "signalGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MovementEventList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "state-time-speed" - }, - { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ManeuverAssistList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maneuverAssistList" - }, - { ATF_POINTER, 1, offsetof(struct MovementState, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { - sizeof(struct MovementState), - offsetof(struct MovementState, _asn_ctx), - asn_MAP_MovementState_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_MovementState_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MovementState = { - "MovementState", - "MovementState", - &asn_OP_SEQUENCE, - asn_DEF_MovementState_tags_1, - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - asn_DEF_MovementState_tags_1, /* Same as above */ - sizeof(asn_DEF_MovementState_tags_1) - /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MovementState_1, - 5, /* Elements count */ - &asn_SPC_MovementState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MsgCRC.c b/src/tmx/Asn_J2735/src/r63/MsgCRC.c deleted file mode 100644 index e02ab7288..000000000 --- a/src/tmx/Asn_J2735/src/r63/MsgCRC.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MsgCRC.h" - -int -MsgCRC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 2)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MsgCRC_constr_1 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MsgCRC = { - "MsgCRC", - "MsgCRC", - &asn_OP_OCTET_STRING, - asn_DEF_MsgCRC_tags_1, - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - asn_DEF_MsgCRC_tags_1, /* Same as above */ - sizeof(asn_DEF_MsgCRC_tags_1) - /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ - { &asn_OER_type_MsgCRC_constr_1, &asn_PER_type_MsgCRC_constr_1, MsgCRC_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c deleted file mode 100644 index 3f0e93fa0..000000000 --- a/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "MultiVehicleResponse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "singleVehicle" }, - { 2, 12, "multiVehicle" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { - 2, /* multiVehicle(2) */ - 3, /* reserved(3) */ - 1, /* singleVehicle(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { - asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { - "MultiVehicleResponse", - "MultiVehicleResponse", - &asn_OP_NativeEnumerated, - asn_DEF_MultiVehicleResponse_tags_1, - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_MultiVehicleResponse_tags_1) - /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ - { &asn_OER_type_MultiVehicleResponse_constr_1, &asn_PER_type_MultiVehicleResponse_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c deleted file mode 100644 index 89d1db075..000000000 --- a/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NMEA-MsgType.h" - -int -NMEA_MsgType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { - "NMEA-MsgType", - "NMEA-MsgType", - &asn_OP_NativeInteger, - asn_DEF_NMEA_MsgType_tags_1, - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_MsgType_tags_1) - /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ - { &asn_OER_type_NMEA_MsgType_constr_1, &asn_PER_type_NMEA_MsgType_constr_1, NMEA_MsgType_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c b/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c deleted file mode 100644 index a22833248..000000000 --- a/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NMEA-Payload.h" - -int -NMEA_Payload_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NMEA_Payload_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1023)) */}; -asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { - "NMEA-Payload", - "NMEA-Payload", - &asn_OP_OCTET_STRING, - asn_DEF_NMEA_Payload_tags_1, - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Payload_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Payload_tags_1) - /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ - { &asn_OER_type_NMEA_Payload_constr_1, &asn_PER_type_NMEA_Payload_constr_1, NMEA_Payload_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c b/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c deleted file mode 100644 index 237e56d19..000000000 --- a/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NMEA-Revision.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NMEA_Revision_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "reserved" }, - { 2, 4, "rev1" }, - { 3, 4, "rev2" }, - { 4, 4, "rev3" }, - { 5, 4, "rev4" }, - { 6, 4, "rev5" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { - 1, /* reserved(1) */ - 2, /* rev1(2) */ - 3, /* rev2(3) */ - 4, /* rev3(4) */ - 5, /* rev4(5) */ - 6, /* rev5(6) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { - asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { - "NMEA-Revision", - "NMEA-Revision", - &asn_OP_NativeEnumerated, - asn_DEF_NMEA_Revision_tags_1, - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - asn_DEF_NMEA_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEA_Revision_tags_1) - /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ - { &asn_OER_type_NMEA_Revision_constr_1, &asn_PER_type_NMEA_Revision_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c b/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c deleted file mode 100644 index f72c1b693..000000000 --- a/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NMEAcorrections.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct NMEAcorrections__regional), - offsetof(struct NMEAcorrections__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NMEAcorrections_1[] = { - { ATF_POINTER, 4, offsetof(struct NMEAcorrections, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 3, offsetof(struct NMEAcorrections, rev), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Revision, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rev" - }, - { ATF_POINTER, 2, offsetof(struct NMEAcorrections, msg), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_MsgType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msg" - }, - { ATF_POINTER, 1, offsetof(struct NMEAcorrections, wdCount), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wdCount" - }, - { ATF_NOFLAGS, 0, offsetof(struct NMEAcorrections, payload), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NMEA_Payload, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "payload" - }, - { ATF_POINTER, 1, offsetof(struct NMEAcorrections, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NMEAcorrections_oms_1[] = { 0, 1, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_NMEAcorrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NMEAcorrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* payload */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1 = { - sizeof(struct NMEAcorrections), - offsetof(struct NMEAcorrections, _asn_ctx), - asn_MAP_NMEAcorrections_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_NMEAcorrections_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NMEAcorrections = { - "NMEAcorrections", - "NMEAcorrections", - &asn_OP_SEQUENCE, - asn_DEF_NMEAcorrections_tags_1, - sizeof(asn_DEF_NMEAcorrections_tags_1) - /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ - asn_DEF_NMEAcorrections_tags_1, /* Same as above */ - sizeof(asn_DEF_NMEAcorrections_tags_1) - /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NMEAcorrections_1, - 6, /* Elements count */ - &asn_SPC_NMEAcorrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NULL.c b/src/tmx/Asn_J2735/src/r63/NULL.c deleted file mode 100644 index 4a2914f4b..000000000 --- a/src/tmx/Asn_J2735/src/r63/NULL.c +++ /dev/null @@ -1,299 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include /* Implemented in terms of BOOLEAN type */ - -/* - * NULL basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NULL_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)) -}; -asn_TYPE_operation_t asn_OP_NULL = { - BOOLEAN_free, - NULL_print, - NULL_compare, - BOOLEAN_decode_ber, /* Implemented in terms of BOOLEAN */ - NULL_encode_der, /* Special handling of DER encoding */ - NULL_decode_xer, - NULL_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - NULL_decode_oer, - NULL_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - NULL_decode_uper, /* Unaligned PER decoder */ - NULL_encode_uper, /* Unaligned PER encoder */ - NULL_decode_aper, /* Aligned PER decoder */ - NULL_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - NULL_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NULL = { - "NULL", - "NULL", - &asn_OP_NULL, - asn_DEF_NULL_tags, - sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), - asn_DEF_NULL_tags, /* Same as above */ - sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -asn_enc_rval_t -NULL_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, - ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - - erval.encoded = der_write_tags(td, 0, tag_mode, 0, tag, cb, app_key); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = ptr; - } - - ASN__ENCODED_OK(erval); -} - -asn_enc_rval_t -NULL_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)sptr; - (void)ilevel; - (void)flags; - (void)cb; - (void)app_key; - - /* XMLNullValue is empty */ - er.encoded = 0; - ASN__ENCODED_OK(er); -} - - -static enum xer_pbd_rval -NULL__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - (void)td; - (void)sptr; - (void)chunk_buf; /* Going to be empty according to the rules below. */ - - /* - * There must be no content in self-terminating tag. - */ - if(chunk_size) - return XPBD_BROKEN_ENCODING; - else - return XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -NULL_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(NULL_t), opt_mname, buf_ptr, size, - NULL__xer_body_decode); -} - -int -NULL_compare(const asn_TYPE_descriptor_t *td, const void *a, const void *b) { - (void)td; - (void)a; - (void)b; - return 0; -} - -int -NULL_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(sptr) { - return (cb("", 9, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -#ifndef ASN_DISABLE_OER_SUPPORT - -asn_dec_rval_t -NULL_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - asn_dec_rval_t rv = {RC_OK, 0}; - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)ptr; - (void)size; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - return rv; -} - -asn_enc_rval_t -NULL_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)sptr; - (void)constraints; - (void)cb; - (void)app_key; - - er.encoded = 0; /* Encoding in 0 bytes. */ - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -NULL_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)pd; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - /* - * NULL type does not have content octets. - */ - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - -asn_enc_rval_t -NULL_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)constraints; - (void)sptr; - (void)po; - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -NULL_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)pd; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - /* - * NULL type does not have content octets. - */ - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - - -asn_enc_rval_t -NULL_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)constraints; - (void)sptr; - (void)po; - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -asn_random_fill_result_t -NULL_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - NULL_t *st = *sptr; - - (void)td; - (void)constr; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (NULL_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(st == NULL) { - return result_failed; - } - } - - return result_ok; -} - diff --git a/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c b/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c deleted file mode 100644 index 33e75bb66..000000000 --- a/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c +++ /dev/null @@ -1,375 +0,0 @@ -/*- - * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeEnumerated basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_operation_t asn_OP_NativeEnumerated = { - NativeInteger_free, - NativeInteger_print, - NativeInteger_compare, - NativeInteger_decode_ber, - NativeInteger_encode_der, - NativeInteger_decode_xer, - NativeEnumerated_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - NativeEnumerated_decode_oer, - NativeEnumerated_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - NativeEnumerated_decode_uper, - NativeEnumerated_encode_uper, - NativeEnumerated_decode_aper, - NativeEnumerated_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - NativeEnumerated_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { - "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ - "ENUMERATED", - &asn_OP_NativeEnumerated, - asn_DEF_NativeEnumerated_tags, - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - asn_DEF_NativeEnumerated_tags, /* Same as above */ - sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -asn_enc_rval_t -NativeEnumerated_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - const asn_INTEGER_enum_map_t *el; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - el = INTEGER_map_value2enum(specs, *native); - if(el) { - er.encoded = - asn__format_to_callback(cb, app_key, "<%s/>", el->enum_name); - if(er.encoded < 0) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } else { - ASN_DEBUG( - "ASN.1 forbids dealing with " - "unknown value of ENUMERATED type"); - ASN__ENCODE_FAILED; - } -} - -asn_dec_rval_t -NativeEnumerated_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - long *native = (long *)*sptr; - const asn_per_constraint_t *ct; - long value; - - (void)opt_codec_ctx; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__DECODE_FAILED; /* Mandatory! */ - if(!specs) ASN__DECODE_FAILED; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); - - if(ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - if(value >= (specs->extension - ? specs->extension - 1 : specs->map_count)) - ASN__DECODE_FAILED; - } else { - if(!specs->extension) - ASN__DECODE_FAILED; - /* - * X.691, #10.6: normally small non-negative whole number; - */ - value = uper_get_nsnnwn(pd); - if(value < 0) ASN__DECODE_STARVED; - value += specs->extension - 1; - if(value >= specs->map_count) - ASN__DECODE_FAILED; - } - - *native = specs->value2enum[value].nat_value; - ASN_DEBUG("Decoded %s = %ld", td->name, *native); - - return rval; -} - -static int -NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { - const asn_INTEGER_enum_map_t *a = ap; - const asn_INTEGER_enum_map_t *b = bp; - if(a->nat_value == b->nat_value) - return 0; - if(a->nat_value < b->nat_value) - return -1; - return 1; -} - -asn_enc_rval_t -NativeEnumerated_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native, value; - const asn_per_constraint_t *ct; - int inext = 0; - asn_INTEGER_enum_map_t key; - const asn_INTEGER_enum_map_t *kf; - - if(!sptr) ASN__ENCODE_FAILED; - if(!specs) ASN__ENCODE_FAILED; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__ENCODE_FAILED; /* Mandatory! */ - - ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); - - er.encoded = 0; - - native = *(const long *)sptr; - - key.nat_value = native; - kf = bsearch(&key, specs->value2enum, specs->map_count, - sizeof(key), NativeEnumerated__compar_value2enum); - if(!kf) { - ASN_DEBUG("No element corresponds to %ld", native); - ASN__ENCODE_FAILED; - } - value = kf - specs->value2enum; - - if(ct->range_bits >= 0) { - int cmpWith = specs->extension - ? specs->extension - 1 : specs->map_count; - if(value >= cmpWith) - inext = 1; - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, value, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(!specs->extension) - ASN__ENCODE_FAILED; - - /* - * X.691, #10.6: normally small non-negative whole number; - */ - ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", - value, specs->extension, inext, - value - (inext ? (specs->extension - 1) : 0)); - if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -NativeEnumerated_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = { RC_OK, 0 }; - long *native = (long *)*sptr; - const asn_per_constraint_t *ct; - long value; - - (void)opt_codec_ctx; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__DECODE_FAILED; /* Mandatory! */ - if(!specs) ASN__DECODE_FAILED; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); - - if(ct->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) ASN__DECODE_STARVED; - if(inext) ct = 0; - } - - /* Deal with APER padding */ - if(ct && ct->upper_bound >= 255) { - int padding = 0; - padding = (8 - (pd->moved % 8)) % 8; - ASN_DEBUG("For NativeEnumerated %s,offset= %lu Padding bits = %d", td->name, pd->moved, padding); - ASN_DEBUG("For NativeEnumerated %s, upper bound = %lu", td->name, ct->upper_bound); - if(padding > 0) - per_get_few_bits(pd, padding); - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - if(value >= (specs->extension - ? specs->extension - 1 : specs->map_count)) - ASN__DECODE_FAILED; - } else { - if(!specs->extension) - ASN__DECODE_FAILED; - /* - * X.691, #10.6: normally small non-negative whole number; - */ - - /* XXX handle indefinite index length > 64k */ - value = aper_get_nsnnwn(pd, 65537); - if(value < 0) ASN__DECODE_STARVED; - value += specs->extension - 1; - //if(value >= specs->map_count) - // ASN__DECODE_FAILED; - if(value >= specs->map_count) { - ASN_DEBUG("Decoded unknown index value %s = %ld", td->name, value); - /* unknown index. Workaround => set the first enumeration value */ - *native = specs->value2enum[0].nat_value; - return rval; - } - } - - *native = specs->value2enum[value].nat_value; - ASN_DEBUG("Decoded %s = %ld", td->name, *native); - - return rval; -} - -asn_enc_rval_t -NativeEnumerated_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native, value; - const asn_per_constraint_t *ct; - int inext = 0; - asn_INTEGER_enum_map_t key; - asn_INTEGER_enum_map_t *kf; - - if(!sptr) ASN__ENCODE_FAILED; - if(!specs) ASN__ENCODE_FAILED; - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ASN__ENCODE_FAILED; /* Mandatory! */ - - ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); - - er.encoded = 0; - - native = *(const long *)sptr; - if(native < 0) ASN__ENCODE_FAILED; - - key.nat_value = native; - kf = bsearch(&key, specs->value2enum, specs->map_count, - sizeof(key), NativeEnumerated__compar_value2enum); - if(!kf) { - ASN_DEBUG("No element corresponds to %ld", native); - ASN__ENCODE_FAILED; - } - value = kf - specs->value2enum; - - if(ct->range_bits >= 0) { - int cmpWith = specs->extension - ? specs->extension - 1 : specs->map_count; - if(value >= cmpWith) - inext = 1; - } - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - if(inext) ct = 0; - } else if(inext) { - ASN__ENCODE_FAILED; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, value, ct->range_bits)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - if(!specs->extension) - ASN__ENCODE_FAILED; - - /* - * X.691, #10.6: normally small non-negative whole number; - */ - ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", - value, specs->extension, inext, - value - (inext ? (specs->extension - 1) : 0)); - if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} diff --git a/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c deleted file mode 100644 index ee3c1895e..000000000 --- a/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -static long -asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) { - unsigned long value; - - /* Perform the sign initialization */ - /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ - if((*b >> 7)) { - value = (unsigned long)(-1); - } else { - value = 0; - } - - /* Conversion engine */ - for(; b < end; b++) { - value = (value << 8) | *b; - } - - return value; -} - -asn_dec_rval_t -NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - void **nint_ptr, const void *ptr, size_t size) { - asn_dec_rval_t rval = {RC_OK, 0}; - long *native = (long *)*nint_ptr; - const uint8_t *b = ptr; - - (void)opt_codec_ctx; - (void)constraints; - - if(size < 1) { - ASN__DECODE_STARVED; - } - - if((*b & 0x80) == 0) { - /* - * X.696 (08/2015) #11.2 Short form for Enumerated. - */ - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - *native = *b; - rval.consumed = 1; - } else { - /* - * X.696 (08/2015) #11.4 Long form for Enumerated. - */ - size_t length = *b & 0x7f; - const uint8_t *bend; - long value; - - if(length < 1 || length > sizeof(*native)) { - ASN__DECODE_FAILED; - } - if((1 + length) > size) { - ASN__DECODE_STARVED; - } - b++; - bend = b + length; - - value = asn__nativeenumerated_convert(b, bend); - if(value < 0) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - if(specs && specs->field_unsigned) { - ASN__DECODE_FAILED; - } - } - - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - *native = value; - - rval.consumed = (1 + length); - } - - return rval; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - long native; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - if(native >= 0 && native <= 127) { - /* #11.2 Short form */ - uint8_t b = native; - er.encoded = 1; - if(cb(&b, er.encoded, app_key) < 0) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } else { - /* #11.2 Long form */ - uint8_t buf[1 + sizeof(native)]; - uint8_t *b = &buf[sizeof(native)]; /* Last addressable */ - long final_pattern = -1 * (native < 0); - - for(;;) { - *b-- = native; - native >>= 8; - if(native == final_pattern) { - if(final_pattern) { - if((b[1] & 0x80)) break; - } else { - if(!(b[1] & 0x80)) break; - } - } - } - *b = 0x80 | (&buf[sizeof(native)] - b); - er.encoded = 1 + (&buf[sizeof(native)] - b); - if(cb(b, er.encoded, app_key) < 0) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/NativeInteger.c b/src/tmx/Asn_J2735/src/r63/NativeInteger.c deleted file mode 100644 index c344b7c9f..000000000 --- a/src/tmx/Asn_J2735/src/r63/NativeInteger.c +++ /dev/null @@ -1,550 +0,0 @@ -/*- - * Copyright (c) 2004, 2005, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -/* - * Read the NativeInteger.h for the explanation wrt. differences between - * INTEGER and NativeInteger. - * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this - * implementation deals with the standard (machine-specific) representation - * of them instead of using the platform-independent buffer. - */ -#include -#include - -/* - * NativeInteger basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_operation_t asn_OP_NativeInteger = { - NativeInteger_free, - NativeInteger_print, - NativeInteger_compare, - NativeInteger_decode_ber, - NativeInteger_encode_der, - NativeInteger_decode_xer, - NativeInteger_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - NativeInteger_decode_oer, /* OER decoder */ - NativeInteger_encode_oer, /* Canonical OER encoder */ -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - NativeInteger_decode_uper, /* Unaligned PER decoder */ - NativeInteger_encode_uper, /* Unaligned PER encoder */ - NativeInteger_decode_aper, /* Aligned PER decoder */ - NativeInteger_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - NativeInteger_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NativeInteger = { - "INTEGER", /* The ASN.1 type is still INTEGER */ - "INTEGER", - &asn_OP_NativeInteger, - asn_DEF_NativeInteger_tags, - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - asn_DEF_NativeInteger_tags, /* Same as above */ - sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -/* - * Decode INTEGER type. - */ -asn_dec_rval_t -NativeInteger_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **nint_ptr, - const void *buf_ptr, size_t size, int tag_mode) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - long *native = (long *)*nint_ptr; - asn_dec_rval_t rval; - ber_tlv_len_t length; - - /* - * If the structure is not there, allocate it. - */ - if(native == NULL) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(native == NULL) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - } - - ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", - td->name, tag_mode); - - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - /* - * ASN.1 encoded INTEGER: buf_ptr, length - * Fill the native, at the same time checking for overflow. - * If overflow occurred, return with RC_FAIL. - */ - { - INTEGER_t tmp; - union { - const void *constbuf; - void *nonconstbuf; - } unconst_buf; - long l; - - unconst_buf.constbuf = buf_ptr; - tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; - tmp.size = length; - - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&tmp, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; - } - - *native = l; - } - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", - (long)rval.consumed, (long)length, td->name, (long)*native); - - return rval; -} - -/* - * Encode the NativeInteger using the standard INTEGER type DER encoder. - */ -asn_enc_rval_t -NativeInteger_encode_der(const asn_TYPE_descriptor_t *sd, const void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - unsigned long native = *(const unsigned long *)ptr; /* Disable sign ext. */ - asn_enc_rval_t erval = {0,0,0}; - INTEGER_t tmp; - -#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ - - tmp.buf = (uint8_t *)&native; - tmp.size = sizeof(native); - -#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ - uint8_t buf[sizeof(native)]; - uint8_t *p; - - /* Prepare a fake INTEGER */ - for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) - *p = (uint8_t)native; - - tmp.buf = buf; - tmp.size = sizeof(buf); -#endif /* WORDS_BIGENDIAN */ - - /* Encode fake INTEGER */ - erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); - if(erval.structure_ptr == &tmp) { - erval.structure_ptr = ptr; - } - return erval; -} - -/* - * Decode the chunk of XML text encoding INTEGER. - */ -asn_dec_rval_t -NativeInteger_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - INTEGER_t st; - void *st_ptr = (void *)&st; - long *native = (long *)*sptr; - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&st, 0, sizeof(st)); - rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, - opt_mname, buf_ptr, size); - if(rval.code == RC_OK) { - long l; - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ - : asn_INTEGER2long(&st, &l)) { - rval.code = RC_FAIL; - rval.consumed = 0; - } else { - *native = l; - } - } else { - /* - * Cannot restart from the middle; - * there is no place to save state in the native type. - * Request a continuation from the very beginning. - */ - rval.consumed = 0; - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); - return rval; -} - - -asn_enc_rval_t -NativeInteger_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - char scratch[32]; /* Enough for 64-bit int */ - asn_enc_rval_t er = {0,0,0}; - const long *native = (const long *)sptr; - - (void)ilevel; - (void)flags; - - if(!native) ASN__ENCODE_FAILED; - - er.encoded = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) - ? "%lu" : "%ld", *native); - if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) - || cb(scratch, er.encoded, app_key) < 0) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -NativeInteger_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - long *native = (long *)*sptr; - INTEGER_t tmpint; - void *tmpintptr = &tmpint; - - (void)opt_codec_ctx; - ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&tmpint, 0, sizeof tmpint); - rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, - &tmpintptr, pd); - if(rval.code == RC_OK) { - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) - : asn_INTEGER2long(&tmpint, native)) - rval.code = RC_FAIL; - else - ASN_DEBUG("NativeInteger %s got value %ld", - td->name, *native); - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - - return rval; -} - -asn_enc_rval_t -NativeInteger_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native; - INTEGER_t tmpint; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); - - memset(&tmpint, 0, sizeof(tmpint)); - if((specs&&specs->field_unsigned) - ? asn_ulong2INTEGER(&tmpint, native) - : asn_long2INTEGER(&tmpint, native)) - ASN__ENCODE_FAILED; - er = INTEGER_encode_uper(td, constraints, &tmpint, po); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; -} - -asn_dec_rval_t -NativeInteger_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval; - long *native = (long *)*sptr; - INTEGER_t tmpint; - void *tmpintptr = &tmpint; - - (void)opt_codec_ctx; - ASN_DEBUG("Decoding NativeInteger %s (APER)", td->name); - - if(!native) { - native = (long *)(*sptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - memset(&tmpint, 0, sizeof tmpint); - rval = INTEGER_decode_aper(opt_codec_ctx, td, constraints, - &tmpintptr, pd); - if(rval.code == RC_OK) { - if((specs&&specs->field_unsigned) - ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) - : asn_INTEGER2long(&tmpint, native)) - rval.code = RC_FAIL; - else - ASN_DEBUG("NativeInteger %s got value %ld", - td->name, *native); - } - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - - return rval; -} - -asn_enc_rval_t -NativeInteger_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - - const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - long native; - INTEGER_t tmpint; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - - ASN_DEBUG("Encoding NativeInteger %s %ld (APER)", td->name, native); - - memset(&tmpint, 0, sizeof(tmpint)); - if((specs&&specs->field_unsigned) - ? asn_ulong2INTEGER(&tmpint, (unsigned long)native) - : asn_long2INTEGER(&tmpint, native)) - ASN__ENCODE_FAILED; - er = INTEGER_encode_aper(td, constraints, &tmpint, po); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -/* - * INTEGER specific human-readable output. - */ -int -NativeInteger_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - const long *native = (const long *)sptr; - char scratch[32]; /* Enough for 64-bit int */ - int ret; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(native) { - long value = *native; - ret = snprintf(scratch, sizeof(scratch), - (specs && specs->field_unsigned) ? "%lu" : "%ld", value); - assert(ret > 0 && (size_t)ret < sizeof(scratch)); - if(cb(scratch, ret, app_key) < 0) return -1; - if(specs && (value >= 0 || !specs->field_unsigned)) { - const asn_INTEGER_enum_map_t *el = - INTEGER_map_value2enum(specs, value); - if(el) { - if(cb(" (", 2, app_key) < 0) return -1; - if(cb(el->enum_name, el->enum_len, app_key) < 0) return -1; - if(cb(")", 1, app_key) < 0) return -1; - } - } - return 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -NativeInteger_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", - td->name, method, ptr); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, sizeof(long)); - break; - } -} - -int -NativeInteger_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { - (void)td; - - if(aptr && bptr) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - if(specs && specs->field_unsigned) { - const unsigned long *a = aptr; - const unsigned long *b = bptr; - if(*a < *b) { - return -1; - } else if(*a > *b) { - return 1; - } else { - return 0; - } - } else { - const long *a = aptr; - const long *b = bptr; - if(*a < *b) { - return -1; - } else if(*a > *b) { - return 1; - } else { - return 0; - } - } - } else if(!aptr) { - return -1; - } else { - return 1; - } -} - -asn_random_fill_result_t -NativeInteger_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - long *st = *sptr; - const asn_INTEGER_enum_map_t *emap; - size_t emap_len; - intmax_t value; - int find_inside_map; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (long *)CALLOC(1, sizeof(*st)); - if(st == NULL) { - return result_failed; - } - } - - if(specs) { - emap = specs->value2enum; - emap_len = specs->map_count; - if(specs->strict_enumeration) { - find_inside_map = emap_len > 0; - } else { - find_inside_map = emap_len ? asn_random_between(0, 1) : 0; - } - } else { - emap = 0; - emap_len = 0; - find_inside_map = 0; - } - - if(find_inside_map) { - assert(emap_len > 0); - value = emap[asn_random_between(0, emap_len - 1)].nat_value; - } else { - const asn_per_constraints_t *ct; - - static const long variants[] = { - -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, - -16383, -257, -256, -255, -254, -129, -128, -127, - -126, -1, 0, 1, 126, 127, 128, 129, - 254, 255, 256, 257, 16383, 16384, 16385, 32767, - 32768, 32769, 65534, 65535, 65536, 65537}; - if(specs && specs->field_unsigned) { - assert(variants[18] == 0); - value = variants[asn_random_between( - 18, sizeof(variants) / sizeof(variants[0]) - 1)]; - } else { - value = variants[asn_random_between( - 0, sizeof(variants) / sizeof(variants[0]) - 1)]; - } - - if(!constraints) constraints = &td->encoding_constraints; - ct = constraints ? constraints->per_constraints : 0; - if(ct && (ct->value.flags & APC_CONSTRAINED)) { - if(value < ct->value.lower_bound || value > ct->value.upper_bound) { - value = asn_random_between(ct->value.lower_bound, - ct->value.upper_bound); - } - } - } - - *sptr = st; - *st = value; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c deleted file mode 100644 index 411413a24..000000000 --- a/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -asn_dec_rval_t -NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - void **nint_ptr, const void *ptr, size_t size) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - long *native = (long *)*nint_ptr; - INTEGER_t tmpint; - INTEGER_t *tmpintptr = &tmpint; - - memset(&tmpint, 0, sizeof(tmpint)); - - if(!native) { - native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); - if(!native) ASN__DECODE_FAILED; - } - - /* - * OPTIMIZATION: Encode directly rather than passing through INTEGER. - * Saves a memory allocation. - */ - rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints, - (void **)&tmpintptr, ptr, size); - if(rval.code != RC_OK) { - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return rval; - } - - if(specs && specs->field_unsigned) { - unsigned long ul; - int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0; - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - if(ok) { - *native = ul; - } else { - rval.code = RC_FAIL; - return rval; - } - } else { - long l; - int ok = asn_INTEGER2long(&tmpint, &l) == 0; - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - if(ok) { - *native = l; - } else { - rval.code = RC_FAIL; - return rval; - } - } - - return rval; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_INTEGER_specifics_t *specs = - (const asn_INTEGER_specifics_t *)td->specifics; - INTEGER_t tmpint; - long native; - - if(!sptr) ASN__ENCODE_FAILED; - - native = *(const long *)sptr; - memset(&tmpint, 0, sizeof(tmpint)); - - ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native); - - if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native) - : asn_long2INTEGER(&tmpint, native)) { - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - ASN__ENCODE_FAILED; - } else { - asn_enc_rval_t er = - INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key); - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); - return er; - } -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c deleted file mode 100644 index f9cef92e4..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-24B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_24B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_24B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_24B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1 = { - sizeof(struct Node_LL_24B), - offsetof(struct Node_LL_24B, _asn_ctx), - asn_MAP_Node_LL_24B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_24B = { - "Node-LL-24B", - "Node-LL-24B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_24B_tags_1, - sizeof(asn_DEF_Node_LL_24B_tags_1) - /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_24B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_24B_tags_1) - /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_24B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_24B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c deleted file mode 100644 index d1d7876e5..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-28B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_28B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_28B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_28B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1 = { - sizeof(struct Node_LL_28B), - offsetof(struct Node_LL_28B, _asn_ctx), - asn_MAP_Node_LL_28B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_28B = { - "Node-LL-28B", - "Node-LL-28B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_28B_tags_1, - sizeof(asn_DEF_Node_LL_28B_tags_1) - /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_28B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_28B_tags_1) - /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_28B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_28B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c deleted file mode 100644 index a5d91ab25..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-32B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_32B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_32B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_32B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1 = { - sizeof(struct Node_LL_32B), - offsetof(struct Node_LL_32B, _asn_ctx), - asn_MAP_Node_LL_32B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_32B = { - "Node-LL-32B", - "Node-LL-32B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_32B_tags_1, - sizeof(asn_DEF_Node_LL_32B_tags_1) - /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_32B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_32B_tags_1) - /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_32B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_32B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c deleted file mode 100644 index 44f2daf38..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-36B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_36B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_36B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_36B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1 = { - sizeof(struct Node_LL_36B), - offsetof(struct Node_LL_36B, _asn_ctx), - asn_MAP_Node_LL_36B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_36B = { - "Node-LL-36B", - "Node-LL-36B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_36B_tags_1, - sizeof(asn_DEF_Node_LL_36B_tags_1) - /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_36B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_36B_tags_1) - /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_36B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_36B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c deleted file mode 100644 index 44d292a01..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-44B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_44B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B22, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B22, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_44B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_44B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1 = { - sizeof(struct Node_LL_44B), - offsetof(struct Node_LL_44B, _asn_ctx), - asn_MAP_Node_LL_44B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_44B = { - "Node-LL-44B", - "Node-LL-44B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_44B_tags_1, - sizeof(asn_DEF_Node_LL_44B_tags_1) - /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_44B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_44B_tags_1) - /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_44B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_44B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c deleted file mode 100644 index 0cb9d18a3..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LL-48B.h" - -asn_TYPE_member_t asn_MBR_Node_LL_48B_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B24, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B24, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LL_48B_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LL_48B_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1 = { - sizeof(struct Node_LL_48B), - offsetof(struct Node_LL_48B, _asn_ctx), - asn_MAP_Node_LL_48B_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LL_48B = { - "Node-LL-48B", - "Node-LL-48B", - &asn_OP_SEQUENCE, - asn_DEF_Node_LL_48B_tags_1, - sizeof(asn_DEF_Node_LL_48B_tags_1) - /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ - asn_DEF_Node_LL_48B_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LL_48B_tags_1) - /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LL_48B_1, - 2, /* Elements count */ - &asn_SPC_Node_LL_48B_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c deleted file mode 100644 index 06443b3f7..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LLdms-48b.h" - -asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { - sizeof(struct Node_LLdms_48b), - offsetof(struct Node_LLdms_48b, _asn_ctx), - asn_MAP_Node_LLdms_48b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { - "Node-LLdms-48b", - "Node-LLdms-48b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLdms_48b_tags_1, - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_48b_tags_1) - /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LLdms_48b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c deleted file mode 100644 index 1e95fddad..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LLdms-80b.h" - -asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { - sizeof(struct Node_LLdms_80b), - offsetof(struct Node_LLdms_80b, _asn_ctx), - asn_MAP_Node_LLdms_80b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { - "Node-LLdms-80b", - "Node-LLdms-80b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLdms_80b_tags_1, - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLdms_80b_tags_1) - /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LLdms_80b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c deleted file mode 100644 index 1596c4083..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-LLmD-64b.h" - -asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lon" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { - sizeof(struct Node_LLmD_64b), - offsetof(struct Node_LLmD_64b, _asn_ctx), - asn_MAP_Node_LLmD_64b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { - "Node-LLmD-64b", - "Node-LLmD-64b", - &asn_OP_SEQUENCE, - asn_DEF_Node_LLmD_64b_tags_1, - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_LLmD_64b_tags_1) - /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_LLmD_64b_1, - 2, /* Elements count */ - &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c deleted file mode 100644 index ef8f1239b..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-20b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { - sizeof(struct Node_XY_20b), - offsetof(struct Node_XY_20b, _asn_ctx), - asn_MAP_Node_XY_20b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { - "Node-XY-20b", - "Node-XY-20b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_20b_tags_1, - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_20b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_20b_tags_1) - /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_20b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c deleted file mode 100644 index 13cfb2d27..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-22b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { - sizeof(struct Node_XY_22b), - offsetof(struct Node_XY_22b, _asn_ctx), - asn_MAP_Node_XY_22b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { - "Node-XY-22b", - "Node-XY-22b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_22b_tags_1, - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_22b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_22b_tags_1) - /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_22b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c deleted file mode 100644 index eca7381d0..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-24b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { - sizeof(struct Node_XY_24b), - offsetof(struct Node_XY_24b, _asn_ctx), - asn_MAP_Node_XY_24b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { - "Node-XY-24b", - "Node-XY-24b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_24b_tags_1, - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_24b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_24b_tags_1) - /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_24b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c deleted file mode 100644 index a1325faca..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-26b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B13, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { - sizeof(struct Node_XY_26b), - offsetof(struct Node_XY_26b, _asn_ctx), - asn_MAP_Node_XY_26b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { - "Node-XY-26b", - "Node-XY-26b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_26b_tags_1, - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_26b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_26b_tags_1) - /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_26b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c deleted file mode 100644 index 57b478223..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-28b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { - sizeof(struct Node_XY_28b), - offsetof(struct Node_XY_28b, _asn_ctx), - asn_MAP_Node_XY_28b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { - "Node-XY-28b", - "Node-XY-28b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_28b_tags_1, - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_28b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_28b_tags_1) - /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_28b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c deleted file mode 100644 index bd3ae9611..000000000 --- a/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Node-XY-32b.h" - -asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, -}; -static const ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { - sizeof(struct Node_XY_32b), - offsetof(struct Node_XY_32b, _asn_ctx), - asn_MAP_Node_XY_32b_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { - "Node-XY-32b", - "Node-XY-32b", - &asn_OP_SEQUENCE, - asn_DEF_Node_XY_32b_tags_1, - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - asn_DEF_Node_XY_32b_tags_1, /* Same as above */ - sizeof(asn_DEF_Node_XY_32b_tags_1) - /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Node_XY_32b_1, - 2, /* Elements count */ - &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c deleted file mode 100644 index d4d9f8f80..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeLL.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeLL_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 8, "stopLine" }, - { 2, 16, "roundedCapStyleA" }, - { 3, 16, "roundedCapStyleB" }, - { 4, 10, "mergePoint" }, - { 5, 12, "divergePoint" }, - { 6, 18, "downstreamStopLine" }, - { 7, 19, "downstreamStartNode" }, - { 8, 15, "closedToTraffic" }, - { 9, 10, "safeIsland" }, - { 10, 20, "curbPresentAtStepOff" }, - { 11, 14, "hydrantPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NodeAttributeLL_enum2value_1[] = { - 8, /* closedToTraffic(8) */ - 10, /* curbPresentAtStepOff(10) */ - 5, /* divergePoint(5) */ - 7, /* downstreamStartNode(7) */ - 6, /* downstreamStopLine(6) */ - 11, /* hydrantPresent(11) */ - 4, /* mergePoint(4) */ - 0, /* reserved(0) */ - 2, /* roundedCapStyleA(2) */ - 3, /* roundedCapStyleB(3) */ - 9, /* safeIsland(9) */ - 1 /* stopLine(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1 = { - asn_MAP_NodeAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NodeAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 13, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL = { - "NodeAttributeLL", - "NodeAttributeLL", - &asn_OP_NativeEnumerated, - asn_DEF_NodeAttributeLL_tags_1, - sizeof(asn_DEF_NodeAttributeLL_tags_1) - /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeLL_tags_1) - /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeAttributeLL_constr_1, &asn_PER_type_NodeAttributeLL_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NodeAttributeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c deleted file mode 100644 index 9986eaa94..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeLLList.h" - -static asn_oer_constraints_t asn_OER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_NodeAttributeLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeLLList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1 = { - sizeof(struct NodeAttributeLLList), - offsetof(struct NodeAttributeLLList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList = { - "NodeAttributeLLList", - "NodeAttributeLLList", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeAttributeLLList_tags_1, - sizeof(asn_DEF_NodeAttributeLLList_tags_1) - /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeLLList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeLLList_tags_1) - /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeAttributeLLList_constr_1, &asn_PER_type_NodeAttributeLLList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_NodeAttributeLLList_1, - 1, /* Single element */ - &asn_SPC_NodeAttributeLLList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c deleted file mode 100644 index ac9f20903..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeSetLL.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct NodeAttributeSetLL__regional), - offsetof(struct NodeAttributeSetLL__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[] = { - { ATF_POINTER, 7, offsetof(struct NodeAttributeSetLL, localNode), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeLLList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "localNode" - }, - { ATF_POINTER, 6, offsetof(struct NodeAttributeSetLL, disabled), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeLLList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "disabled" - }, - { ATF_POINTER, 5, offsetof(struct NodeAttributeSetLL, enabled), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeLLList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "enabled" - }, - { ATF_POINTER, 4, offsetof(struct NodeAttributeSetLL, data), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDataAttributeList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "data" - }, - { ATF_POINTER, 3, offsetof(struct NodeAttributeSetLL, dWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dWidth" - }, - { ATF_POINTER, 2, offsetof(struct NodeAttributeSetLL, dElevation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dElevation" - }, - { ATF_POINTER, 1, offsetof(struct NodeAttributeSetLL, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NodeAttributeSetLL_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_NodeAttributeSetLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1 = { - sizeof(struct NodeAttributeSetLL), - offsetof(struct NodeAttributeSetLL, _asn_ctx), - asn_MAP_NodeAttributeSetLL_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_NodeAttributeSetLL_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL = { - "NodeAttributeSetLL", - "NodeAttributeSetLL", - &asn_OP_SEQUENCE, - asn_DEF_NodeAttributeSetLL_tags_1, - sizeof(asn_DEF_NodeAttributeSetLL_tags_1) - /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeSetLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeSetLL_tags_1) - /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NodeAttributeSetLL_1, - 7, /* Elements count */ - &asn_SPC_NodeAttributeSetLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c deleted file mode 100644 index 86c1cbee7..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeSetXY.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct NodeAttributeSetXY__regional), - offsetof(struct NodeAttributeSetXY__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[] = { - { ATF_POINTER, 7, offsetof(struct NodeAttributeSetXY, localNode), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeXYList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "localNode" - }, - { ATF_POINTER, 6, offsetof(struct NodeAttributeSetXY, disabled), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeXYList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "disabled" - }, - { ATF_POINTER, 5, offsetof(struct NodeAttributeSetXY, enabled), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SegmentAttributeXYList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "enabled" - }, - { ATF_POINTER, 4, offsetof(struct NodeAttributeSetXY, data), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneDataAttributeList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "data" - }, - { ATF_POINTER, 3, offsetof(struct NodeAttributeSetXY, dWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dWidth" - }, - { ATF_POINTER, 2, offsetof(struct NodeAttributeSetXY, dElevation), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dElevation" - }, - { ATF_POINTER, 1, offsetof(struct NodeAttributeSetXY, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_NodeAttributeSetXY_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_NodeAttributeSetXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1 = { - sizeof(struct NodeAttributeSetXY), - offsetof(struct NodeAttributeSetXY, _asn_ctx), - asn_MAP_NodeAttributeSetXY_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_NodeAttributeSetXY_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY = { - "NodeAttributeSetXY", - "NodeAttributeSetXY", - &asn_OP_SEQUENCE, - asn_DEF_NodeAttributeSetXY_tags_1, - sizeof(asn_DEF_NodeAttributeSetXY_tags_1) - /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeSetXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeSetXY_tags_1) - /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NodeAttributeSetXY_1, - 7, /* Elements count */ - &asn_SPC_NodeAttributeSetXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c deleted file mode 100644 index 5e2fb6115..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeXY.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeXY_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 8, "stopLine" }, - { 2, 16, "roundedCapStyleA" }, - { 3, 16, "roundedCapStyleB" }, - { 4, 10, "mergePoint" }, - { 5, 12, "divergePoint" }, - { 6, 18, "downstreamStopLine" }, - { 7, 19, "downstreamStartNode" }, - { 8, 15, "closedToTraffic" }, - { 9, 10, "safeIsland" }, - { 10, 20, "curbPresentAtStepOff" }, - { 11, 14, "hydrantPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NodeAttributeXY_enum2value_1[] = { - 8, /* closedToTraffic(8) */ - 10, /* curbPresentAtStepOff(10) */ - 5, /* divergePoint(5) */ - 7, /* downstreamStartNode(7) */ - 6, /* downstreamStopLine(6) */ - 11, /* hydrantPresent(11) */ - 4, /* mergePoint(4) */ - 0, /* reserved(0) */ - 2, /* roundedCapStyleA(2) */ - 3, /* roundedCapStyleB(3) */ - 9, /* safeIsland(9) */ - 1 /* stopLine(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1 = { - asn_MAP_NodeAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NodeAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ - 12, /* Number of elements in the maps */ - 13, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY = { - "NodeAttributeXY", - "NodeAttributeXY", - &asn_OP_NativeEnumerated, - asn_DEF_NodeAttributeXY_tags_1, - sizeof(asn_DEF_NodeAttributeXY_tags_1) - /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeXY_tags_1) - /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeAttributeXY_constr_1, &asn_PER_type_NodeAttributeXY_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NodeAttributeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c deleted file mode 100644 index 43558a513..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeAttributeXYList.h" - -static asn_oer_constraints_t asn_OER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_NodeAttributeXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeAttributeXYList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1 = { - sizeof(struct NodeAttributeXYList), - offsetof(struct NodeAttributeXYList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList = { - "NodeAttributeXYList", - "NodeAttributeXYList", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeAttributeXYList_tags_1, - sizeof(asn_DEF_NodeAttributeXYList_tags_1) - /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ - asn_DEF_NodeAttributeXYList_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeAttributeXYList_tags_1) - /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeAttributeXYList_constr_1, &asn_PER_type_NodeAttributeXYList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_NodeAttributeXYList_1, - 1, /* Single element */ - &asn_SPC_NodeAttributeXYList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeLL.c b/src/tmx/Asn_J2735/src/r63/NodeLL.c deleted file mode 100644 index 170ad7b5c..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeLL.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeLL.h" - -asn_TYPE_member_t asn_MBR_NodeLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeLL, delta), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "delta" - }, - { ATF_POINTER, 1, offsetof(struct NodeLL, attributes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeSetLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "attributes" - }, -}; -static const int asn_MAP_NodeLL_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_NodeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1 = { - sizeof(struct NodeLL), - offsetof(struct NodeLL, _asn_ctx), - asn_MAP_NodeLL_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_NodeLL_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeLL = { - "NodeLL", - "NodeLL", - &asn_OP_SEQUENCE, - asn_DEF_NodeLL_tags_1, - sizeof(asn_DEF_NodeLL_tags_1) - /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ - asn_DEF_NodeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeLL_tags_1) - /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NodeLL_1, - 2, /* Elements count */ - &asn_SPC_NodeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeListLL.c b/src/tmx/Asn_J2735/src/r63/NodeListLL.c deleted file mode 100644 index 1ee941b50..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeListLL.c +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeListLL.h" - -static asn_oer_constraints_t asn_OER_type_NodeListLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeListLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeListLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeListLL, choice.nodes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeSetLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nodes" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeListLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodes */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1 = { - sizeof(struct NodeListLL), - offsetof(struct NodeListLL, _asn_ctx), - offsetof(struct NodeListLL, present), - sizeof(((struct NodeListLL *)0)->present), - asn_MAP_NodeListLL_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeListLL = { - "NodeListLL", - "NodeListLL", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_NodeListLL_constr_1, &asn_PER_type_NodeListLL_constr_1, CHOICE_constraint }, - asn_MBR_NodeListLL_1, - 1, /* Elements count */ - &asn_SPC_NodeListLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeListXY.c b/src/tmx/Asn_J2735/src/r63/NodeListXY.c deleted file mode 100644 index d4645bb9a..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeListXY.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeListXY.h" - -static asn_oer_constraints_t asn_OER_type_NodeListXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeListXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeListXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.nodes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeSetXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nodes" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.computed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ComputedLane, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "computed" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeListXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1 = { - sizeof(struct NodeListXY), - offsetof(struct NodeListXY, _asn_ctx), - offsetof(struct NodeListXY, present), - sizeof(((struct NodeListXY *)0)->present), - asn_MAP_NodeListXY_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeListXY = { - "NodeListXY", - "NodeListXY", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_NodeListXY_constr_1, &asn_PER_type_NodeListXY_constr_1, CHOICE_constraint }, - asn_MBR_NodeListXY_1, - 2, /* Elements count */ - &asn_SPC_NodeListXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c deleted file mode 100644 index d03c0a204..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeOffsetPointLL.h" - -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_24B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL1" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_28B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL2" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_32B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL3" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_36B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL4" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_44B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL5" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LL_48B, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LL6" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LatLon), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLmD_64b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LatLon" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointLL_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-LL1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-LL2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-LL3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-LL4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-LL5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-LL6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1 = { - sizeof(struct NodeOffsetPointLL), - offsetof(struct NodeOffsetPointLL, _asn_ctx), - offsetof(struct NodeOffsetPointLL, present), - sizeof(((struct NodeOffsetPointLL *)0)->present), - asn_MAP_NodeOffsetPointLL_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL = { - "NodeOffsetPointLL", - "NodeOffsetPointLL", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_NodeOffsetPointLL_constr_1, &asn_PER_type_NodeOffsetPointLL_constr_1, CHOICE_constraint }, - asn_MBR_NodeOffsetPointLL_1, - 8, /* Elements count */ - &asn_SPC_NodeOffsetPointLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c deleted file mode 100644 index b462423a7..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeOffsetPointXY-addGrpB.h" - -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posA), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_48b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posA" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posB), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLdms_80b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ -}; -static asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 = { - sizeof(struct NodeOffsetPointXY_addGrpB), - offsetof(struct NodeOffsetPointXY_addGrpB, _asn_ctx), - offsetof(struct NodeOffsetPointXY_addGrpB, present), - sizeof(((struct NodeOffsetPointXY_addGrpB *)0)->present), - asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB = { - "NodeOffsetPointXY-addGrpB", - "NodeOffsetPointXY-addGrpB", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1, &asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1, CHOICE_constraint }, - asn_MBR_NodeOffsetPointXY_addGrpB_1, - 2, /* Elements count */ - &asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c deleted file mode 100644 index 29f8cda68..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeOffsetPointXY.h" - -static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_20b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY1" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_22b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY2" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY3" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_26b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY4" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_28b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY5" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_32b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-XY6" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_LatLon), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_LLmD_64b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node-LatLon" - }, - { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1 = { - sizeof(struct NodeOffsetPointXY), - offsetof(struct NodeOffsetPointXY, _asn_ctx), - offsetof(struct NodeOffsetPointXY, present), - sizeof(((struct NodeOffsetPointXY *)0)->present), - asn_MAP_NodeOffsetPointXY_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY = { - "NodeOffsetPointXY", - "NodeOffsetPointXY", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_NodeOffsetPointXY_constr_1, &asn_PER_type_NodeOffsetPointXY_constr_1, CHOICE_constraint }, - asn_MBR_NodeOffsetPointXY_1, - 8, /* Elements count */ - &asn_SPC_NodeOffsetPointXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeSetLL.c b/src/tmx/Asn_J2735/src/r63/NodeSetLL.c deleted file mode 100644 index 52dcf8ba6..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeSetLL.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeSetLL.h" - -static asn_oer_constraints_t asn_OER_type_NodeSetLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..63)) */}; -asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeSetLL_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NodeLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeSetLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1 = { - sizeof(struct NodeSetLL), - offsetof(struct NodeSetLL, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeSetLL = { - "NodeSetLL", - "NodeSetLL", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeSetLL_tags_1, - sizeof(asn_DEF_NodeSetLL_tags_1) - /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ - asn_DEF_NodeSetLL_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeSetLL_tags_1) - /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeSetLL_constr_1, &asn_PER_type_NodeSetLL_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_NodeSetLL_1, - 1, /* Single element */ - &asn_SPC_NodeSetLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeSetXY.c b/src/tmx/Asn_J2735/src/r63/NodeSetXY.c deleted file mode 100644 index c92a433d1..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeSetXY.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeSetXY.h" - -static asn_oer_constraints_t asn_OER_type_NodeSetXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(2..63)) */}; -asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_NodeSetXY_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_NodeXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_NodeSetXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1 = { - sizeof(struct NodeSetXY), - offsetof(struct NodeSetXY, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeSetXY = { - "NodeSetXY", - "NodeSetXY", - &asn_OP_SEQUENCE_OF, - asn_DEF_NodeSetXY_tags_1, - sizeof(asn_DEF_NodeSetXY_tags_1) - /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ - asn_DEF_NodeSetXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeSetXY_tags_1) - /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ - { &asn_OER_type_NodeSetXY_constr_1, &asn_PER_type_NodeSetXY_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_NodeSetXY_1, - 1, /* Single element */ - &asn_SPC_NodeSetXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NodeXY.c b/src/tmx/Asn_J2735/src/r63/NodeXY.c deleted file mode 100644 index 684fa5934..000000000 --- a/src/tmx/Asn_J2735/src/r63/NodeXY.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NodeXY.h" - -asn_TYPE_member_t asn_MBR_NodeXY_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NodeXY, delta), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "delta" - }, - { ATF_POINTER, 1, offsetof(struct NodeXY, attributes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NodeAttributeSetXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "attributes" - }, -}; -static const int asn_MAP_NodeXY_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_NodeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NodeXY_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1 = { - sizeof(struct NodeXY), - offsetof(struct NodeXY, _asn_ctx), - asn_MAP_NodeXY_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_NodeXY_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NodeXY = { - "NodeXY", - "NodeXY", - &asn_OP_SEQUENCE, - asn_DEF_NodeXY_tags_1, - sizeof(asn_DEF_NodeXY_tags_1) - /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ - asn_DEF_NodeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_NodeXY_tags_1) - /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NodeXY_1, - 2, /* Elements count */ - &asn_SPC_NodeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c deleted file mode 100644 index c5aa6e5bc..000000000 --- a/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "NumberOfParticipantsInCluster.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "small" }, - { 2, 6, "medium" }, - { 3, 5, "large" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { - 3, /* large(3) */ - 2, /* medium(2) */ - 1, /* small(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { - asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { - "NumberOfParticipantsInCluster", - "NumberOfParticipantsInCluster", - &asn_OP_NativeEnumerated, - asn_DEF_NumberOfParticipantsInCluster_tags_1, - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ - sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) - /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ - { &asn_OER_type_NumberOfParticipantsInCluster_constr_1, &asn_PER_type_NumberOfParticipantsInCluster_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c b/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c deleted file mode 100644 index 8dccf01e3..000000000 --- a/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c +++ /dev/null @@ -1,656 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include -#include /* for CHAR_BIT */ -#include - -/* - * OBJECT IDENTIFIER basic type description. - */ -static const ber_tlv_tag_t asn_DEF_OBJECT_IDENTIFIER_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)) -}; -asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER = { - ASN__PRIMITIVE_TYPE_free, - OBJECT_IDENTIFIER_print, - OCTET_STRING_compare, /* Implemented in terms of a string comparison */ - ber_decode_primitive, - der_encode_primitive, - OBJECT_IDENTIFIER_decode_xer, - OBJECT_IDENTIFIER_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - OBJECT_IDENTIFIER_decode_oer, - OBJECT_IDENTIFIER_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - OBJECT_IDENTIFIER_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER = { - "OBJECT IDENTIFIER", - "OBJECT_IDENTIFIER", - &asn_OP_OBJECT_IDENTIFIER, - asn_DEF_OBJECT_IDENTIFIER_tags, - sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) - / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), - asn_DEF_OBJECT_IDENTIFIER_tags, /* Same as above */ - sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) - / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), - { 0, 0, OBJECT_IDENTIFIER_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -int -OBJECT_IDENTIFIER_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, - void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - - if(st && st->buf) { - if(st->size < 1) { - ASN__CTFAIL(app_key, td, sptr, - "%s: at least one numerical value " - "expected (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - return 0; -} - -static ssize_t -OBJECT_IDENTIFIER_get_first_arcs(const uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t *arc0, asn_oid_arc_t *arc1) { - asn_oid_arc_t value; - - ssize_t rd = OBJECT_IDENTIFIER_get_single_arc(arcbuf, arcbuf_len, &value); - if(rd <= 0) return rd; - - if(value >= 80) { - *arc0 = 2; - *arc1 = value - 80; - } else if(value >= 40) { - *arc0 = 1; - *arc1 = value - 40; - } else { - *arc0 = 0; - *arc1 = value; - } - - return rd; -} - -ssize_t -OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t *ret_value) { - const uint8_t *b = arcbuf; - const uint8_t *arcend = arcbuf + arcbuf_len; /* End of arc */ - - if(arcbuf == arcend) { - return 0; - } else { - asn_oid_arc_t accum; - asn_oid_arc_t upper_limit = (ASN_OID_ARC_MAX >> 7); - /* When the value reaches "upper_limit", it can take */ - /* at most one more digit. If it exceeds "upper_limit" */ - /* but there are more digits - it's an Overflow condition */ - /* Gather all bits into the accumulator */ - for(accum = 0; b < arcend; b++) { - accum = (accum << 7) | (*b & ~0x80); - if((*b & 0x80) == 0) { // no more digits - if(accum <= ASN_OID_ARC_MAX) { - *ret_value = accum; - return 1 + (b - arcbuf); - } else { - errno = ERANGE; /* Overflow */ - return -1; - } - } else { // to make sure we aren't wrapping around - if(accum > upper_limit) { - errno = ERANGE; /* Overflow */ - return -1; - } - } - } - errno = EINVAL; - return -1; - } - -} - -static ssize_t -OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, - asn_app_consume_bytes_f *cb, void *app_key) { - char scratch[32]; - asn_oid_arc_t arc0, arc1; - size_t produced = 0; - size_t off = 0; - ssize_t rd; - int ret; - - rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); - if(rd <= 0) { - return -1; - } - - ret = snprintf(scratch, sizeof(scratch), "%"PRIu32".%"PRIu32, arc0, arc1); - if(ret >= (ssize_t)sizeof(scratch)) { - return -1; - } - produced += ret; - if(cb(scratch, ret, app_key) < 0) - return -1; - - for(off = rd; ; ) { - asn_oid_arc_t arc; - rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, - &arc); - if(rd < 0) { - return -1; - } else if(rd == 0) { - /* No more arcs. */ - break; - } else { - off += rd; - assert(off <= st->size); - ret = snprintf(scratch, sizeof(scratch), ".%" PRIu32, arc); - if(ret >= (ssize_t)sizeof(scratch)) { - return -1; - } - produced += ret; - if(cb(scratch, ret, app_key) < 0) return -1; - } - } - - if(off != st->size) { - ASN_DEBUG("Could not scan to the end of Object Identifier"); - return -1; - } - - return produced; -} - -static enum xer_pbd_rval -OBJECT_IDENTIFIER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - OBJECT_IDENTIFIER_t *st = (OBJECT_IDENTIFIER_t *)sptr; - const char *chunk_end = (const char *)chunk_buf + chunk_size; - const char *endptr; - asn_oid_arc_t s_arcs[10]; - asn_oid_arc_t *arcs = s_arcs; - ssize_t num_arcs; - ssize_t ret; - - (void)td; - - num_arcs = OBJECT_IDENTIFIER_parse_arcs( - (const char *)chunk_buf, chunk_size, arcs, - sizeof(s_arcs) / sizeof(s_arcs[0]), &endptr); - if(num_arcs < 0) { - /* Expecting more than zero arcs */ - return XPBD_BROKEN_ENCODING; - } else if(num_arcs == 0) { - return XPBD_NOT_BODY_IGNORE; - } - assert(endptr == chunk_end); - - if((size_t)num_arcs > sizeof(s_arcs)/sizeof(s_arcs[0])) { - arcs = (asn_oid_arc_t *)MALLOC(num_arcs * sizeof(asn_oid_arc_t)); - if(!arcs) return XPBD_SYSTEM_FAILURE; - ret = OBJECT_IDENTIFIER_parse_arcs((const char *)chunk_buf, chunk_size, - arcs, num_arcs, &endptr); - if(ret != num_arcs) - return XPBD_SYSTEM_FAILURE; /* assert?.. */ - } - - /* - * Convert arcs into BER representation. - */ - ret = OBJECT_IDENTIFIER_set_arcs(st, arcs, num_arcs); - if(arcs != s_arcs) FREEMEM(arcs); - - return ret ? XPBD_SYSTEM_FAILURE : XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -OBJECT_IDENTIFIER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname, - buf_ptr, size, OBJECT_IDENTIFIER__xer_body_decode); -} - -asn_enc_rval_t -OBJECT_IDENTIFIER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - asn_enc_rval_t er = {0,0,0}; - - (void)ilevel; - (void)flags; - - if(!st || !st->buf) { - ASN__ENCODE_FAILED; - } - - er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); - if(er.encoded < 0) ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -int -OBJECT_IDENTIFIER_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, - void *app_key) { - const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(!st || !st->buf) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb("{ ", 2, app_key) < 0) - return -1; - - if(OBJECT_IDENTIFIER__dump_body(st, cb, app_key) < 0) { - return -1; - } - - return (cb(" }", 2, app_key) < 0) ? -1 : 0; -} - -ssize_t -OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *st, asn_oid_arc_t *arcs, - size_t arc_slots) { - asn_oid_arc_t arc0, arc1; - size_t num_arcs = 0; - size_t off; - ssize_t rd; - - if(!st || !st->buf) { - errno = EINVAL; - return -1; - } - - rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); - if(rd <= 0) { - return -1; - } - num_arcs = 2; - switch(arc_slots) { - default: - case 2: - arcs[1] = arc1; - /* Fall through */ - case 1: - arcs[0] = arc0; - /* Fall through */ - case 0: - break; - } - - for(off = rd; ; ) { - asn_oid_arc_t arc; - rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, - &arc); - if(rd < 0) { - return -1; - } else if(rd == 0) { - /* No more arcs. */ - break; - } else { - off += rd; - if(num_arcs < arc_slots) { - arcs[num_arcs] = arc; - } - num_arcs++; - } - } - - if(off != st->size) { - return -1; - } - - return num_arcs; -} - - -/* - * Save the single value as an object identifier arc. - */ -ssize_t -OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, - asn_oid_arc_t value) { - /* - * The following conditions must hold: - * assert(arcbuf); - */ - uint8_t scratch[((sizeof(value) * CHAR_BIT + 6) / 7)]; - uint8_t *scratch_end = &scratch[sizeof(scratch)-1]; - uint8_t *b; - size_t result_len; - uint8_t mask; - - for(b = scratch_end, mask = 0; ; mask = 0x80, b--) { - *b = mask | (value & 0x7f); - value >>= 7; - if(!value) { - break; - } - } - - result_len = (scratch_end - b) + 1; - - if(result_len > arcbuf_len) { - return -1; - } - - memcpy(arcbuf, b, result_len); - - return result_len; -} - -int -OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *st, const asn_oid_arc_t *arcs, - size_t arc_slots) { - uint8_t *buf; - uint8_t *bp; - ssize_t wrote; - asn_oid_arc_t arc0; - asn_oid_arc_t arc1; - size_t size; - size_t i; - - if(!st || !arcs || arc_slots < 2) { - errno = EINVAL; - return -1; - } - - arc0 = arcs[0]; - arc1 = arcs[1]; - - if(arc0 <= 1) { - if(arc1 >= 40) { - /* 8.19.4: At most 39 subsequent values (including 0) */ - errno = ERANGE; - return -1; - } - } else if(arc0 == 2) { - if(arc1 > ASN_OID_ARC_MAX - 80) { - errno = ERANGE; - return -1; - } - } else if(arc0 > 2) { - /* 8.19.4: Only three values are allocated from the root node */ - errno = ERANGE; - return -1; - } - - /* - * After above tests it is known that the value of arc0 is completely - * trustworthy (0..2). However, the arc1's value is still meaningless. - */ - - /* - * Roughly estimate the maximum size necessary to encode these arcs. - * This estimation implicitly takes in account the following facts, - * that cancel each other: - * * the first two arcs are encoded in a single value. - * * the first value may require more space (+1 byte) - * * the value of the first arc which is in range (0..2) - */ - size = ((sizeof(asn_oid_arc_t) * CHAR_BIT + 6) / 7) * arc_slots; - bp = buf = (uint8_t *)MALLOC(size + 1); - if(!buf) { - /* ENOMEM */ - return -1; - } - - wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arc0 * 40 + arc1); - if(wrote <= 0) { - FREEMEM(buf); - return -1; - } - assert((size_t)wrote <= size); - bp += wrote; - size -= wrote; - - for(i = 2; i < arc_slots; i++) { - wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arcs[i]); - if(wrote <= 0) { - FREEMEM(buf); - return -1; - } - assert((size_t)wrote <= size); - bp += wrote; - size -= wrote; - } - - /* - * Replace buffer. - */ - st->size = bp - buf; - bp = st->buf; - st->buf = buf; - st->buf[st->size] = '\0'; - if(bp) FREEMEM(bp); - - return 0; -} - -ssize_t -OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, - asn_oid_arc_t *arcs, size_t arcs_count, - const char **opt_oid_text_end) { - size_t num_arcs = 0; - const char *oid_end; - enum { - ST_LEADSPACE, - ST_TAILSPACE, - ST_AFTERVALUE, /* Next character ought to be '.' or a space */ - ST_WAITDIGITS /* Next character is expected to be a digit */ - } state = ST_LEADSPACE; - - if(!oid_text || oid_txt_length < -1 || (arcs_count && !arcs)) { - if(opt_oid_text_end) *opt_oid_text_end = oid_text; - errno = EINVAL; - return -1; - } - - if(oid_txt_length == -1) - oid_txt_length = strlen(oid_text); - -#define _OID_CAPTURE_ARC(oid_text, oid_end) \ - do { \ - const char *endp = oid_end; \ - unsigned long value; \ - switch(asn_strtoul_lim(oid_text, &endp, &value)) { \ - case ASN_STRTOX_EXTRA_DATA: \ - case ASN_STRTOX_OK: \ - if(value <= ASN_OID_ARC_MAX) { \ - if(num_arcs < arcs_count) arcs[num_arcs] = value; \ - num_arcs++; \ - oid_text = endp - 1; \ - break; \ - } \ - /* Fall through */ \ - case ASN_STRTOX_ERROR_RANGE: \ - if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ - errno = ERANGE; \ - return -1; \ - case ASN_STRTOX_ERROR_INVAL: \ - case ASN_STRTOX_EXPECT_MORE: \ - if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ - errno = EINVAL; \ - return -1; \ - } \ - } while(0) - - for(oid_end = oid_text + oid_txt_length; oid_text broken OID */ - return -1; - case ST_LEADSPACE: - case ST_WAITDIGITS: - _OID_CAPTURE_ARC(oid_text, oid_end); - state = ST_AFTERVALUE; - continue; - } - break; - default: - /* Unexpected symbols */ - state = ST_WAITDIGITS; - break; - } /* switch() */ - break; - } /* for() */ - - - if(opt_oid_text_end) *opt_oid_text_end = oid_text; - - /* Finalize last arc */ - switch(state) { - case ST_LEADSPACE: - return 0; /* No OID found in input data */ - case ST_WAITDIGITS: - errno = EINVAL; /* Broken OID */ - return -1; - case ST_AFTERVALUE: - case ST_TAILSPACE: - return num_arcs; - } - - errno = EINVAL; /* Broken OID */ - return -1; -} - -/* - * Generate values from the list of interesting values, or just a random - * value up to the upper limit. - */ -static asn_oid_arc_t -OBJECT_IDENTIFIER__biased_random_arc(asn_oid_arc_t upper_bound) { - const asn_oid_arc_t values[] = {0, 1, 127, 128, 129, 254, 255, 256}; - size_t idx; - - switch(asn_random_between(0, 2)) { - case 0: - idx = asn_random_between(0, sizeof(values) / sizeof(values[0]) - 1); - if(values[idx] < upper_bound) { - return values[idx]; - } - /* Fall through */ - case 1: - return asn_random_between(0, upper_bound); - case 2: - default: - return upper_bound; - } -} - -asn_random_fill_result_t -OBJECT_IDENTIFIER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - OBJECT_IDENTIFIER_t *st; - asn_oid_arc_t arcs[5]; - size_t arcs_len = asn_random_between(2, 5); - size_t i; - - (void)constraints; - - if(max_length < arcs_len) return result_skipped; - - if(*sptr) { - st = *sptr; - } else { - st = CALLOC(1, sizeof(*st)); - } - - arcs[0] = asn_random_between(0, 2); - arcs[1] = OBJECT_IDENTIFIER__biased_random_arc( - arcs[0] <= 1 ? 39 : (ASN_OID_ARC_MAX - 80)); - for(i = 2; i < arcs_len; i++) { - arcs[i] = OBJECT_IDENTIFIER__biased_random_arc(ASN_OID_ARC_MAX); - } - - if(OBJECT_IDENTIFIER_set_arcs(st, arcs, arcs_len)) { - if(st != *sptr) { - ASN_STRUCT_FREE(*td, st); - } - return result_failed; - } - - *sptr = st; - - result_ok.length = st->size; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c b/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c deleted file mode 100644 index 469c906df..000000000 --- a/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c +++ /dev/null @@ -1,2419 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* for .bits_unused member */ -#include - -/* - * OCTET STRING basic type description. - */ -static const ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs = { - sizeof(OCTET_STRING_t), - offsetof(OCTET_STRING_t, _asn_ctx), - ASN_OSUBV_STR -}; - -asn_TYPE_operation_t asn_OP_OCTET_STRING = { - OCTET_STRING_free, - OCTET_STRING_print, /* OCTET STRING generally means a non-ascii sequence */ - OCTET_STRING_compare, - OCTET_STRING_decode_ber, - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_hex, - OCTET_STRING_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - OCTET_STRING_decode_oer, - OCTET_STRING_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - OCTET_STRING_decode_uper, /* Unaligned PER decoder */ - OCTET_STRING_encode_uper, /* Unaligned PER encoder */ - OCTET_STRING_decode_aper, /* Aligned PER decoder */ - OCTET_STRING_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - OCTET_STRING_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { - "OCTET STRING", /* Canonical name */ - "OCTET_STRING", /* XML tag name */ - &asn_OP_OCTET_STRING, - asn_DEF_OCTET_STRING_tags, - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - asn_DEF_OCTET_STRING_tags, /* Same as above */ - sizeof(asn_DEF_OCTET_STRING_tags) - / sizeof(asn_DEF_OCTET_STRING_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs -}; - -#undef _CH_PHASE -#undef NEXT_PHASE -#undef PREV_PHASE -#define _CH_PHASE(ctx, inc) do { \ - if(ctx->phase == 0) \ - ctx->context = 0; \ - ctx->phase += inc; \ - } while(0) -#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) -#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = (num_bytes); \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#undef RETURN -#define RETURN(_code) do { \ - asn_dec_rval_t tmprval; \ - tmprval.code = _code; \ - tmprval.consumed = consumed_myself; \ - return tmprval; \ - } while(0) - -#undef APPEND -#define APPEND(bufptr, bufsize) do { \ - size_t _bs = (bufsize); /* Append size */ \ - size_t _ns = ctx->context; /* Allocated now */ \ - size_t _es = st->size + _bs; /* Expected size */ \ - /* int is really a typeof(st->size): */ \ - if((int)_es < 0) RETURN(RC_FAIL); \ - if(_ns <= _es) { \ - void *ptr; \ - /* Be nice and round to the memory allocator */ \ - do { _ns = _ns ? _ns << 1 : 16; } \ - while(_ns <= _es); \ - /* int is really a typeof(st->size): */ \ - if((int)_ns < 0) RETURN(RC_FAIL); \ - ptr = REALLOC(st->buf, _ns); \ - if(ptr) { \ - st->buf = (uint8_t *)ptr; \ - ctx->context = _ns; \ - } else { \ - RETURN(RC_FAIL); \ - } \ - ASN_DEBUG("Reallocating into %ld", (long)_ns); \ - } \ - memcpy(st->buf + st->size, bufptr, _bs); \ - /* Convenient nul-termination */ \ - st->buf[_es] = '\0'; \ - st->size = _es; \ - } while(0) - -/* - * The main reason why ASN.1 is still alive is that too much time and effort - * is necessary for learning it more or less adequately, thus creating a gut - * necessity to demonstrate that acquired skill everywhere afterwards. - * No, I am not going to explain what the following stuff is. - */ -struct _stack_el { - ber_tlv_len_t left; /* What's left to read (or -1) */ - ber_tlv_len_t got; /* What was actually processed */ - unsigned cont_level; /* Depth of subcontainment */ - int want_nulls; /* Want null "end of content" octets? */ - int bits_chopped; /* Flag in BIT STRING mode */ - ber_tlv_tag_t tag; /* For debugging purposes */ - struct _stack_el *prev; - struct _stack_el *next; -}; -struct _stack { - struct _stack_el *tail; - struct _stack_el *cur_ptr; -}; - -static struct _stack_el * -OS__add_stack_el(struct _stack *st) { - struct _stack_el *nel; - - /* - * Reuse the old stack frame or allocate a new one. - */ - if(st->cur_ptr && st->cur_ptr->next) { - nel = st->cur_ptr->next; - nel->bits_chopped = 0; - nel->got = 0; - /* Retain the nel->cont_level, it's correct. */ - } else { - nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); - if(nel == NULL) - return NULL; - - if(st->tail) { - /* Increase a subcontainment depth */ - nel->cont_level = st->tail->cont_level + 1; - st->tail->next = nel; - } - nel->prev = st->tail; - st->tail = nel; - } - - st->cur_ptr = nel; - - return nel; -} - -static struct _stack * -_new_stack(void) { - return (struct _stack *)CALLOC(1, sizeof(struct _stack)); -} - -/* - * Decode OCTET STRING type. - */ -asn_dec_rval_t -OCTET_STRING_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buf_ptr, size_t size, int tag_mode) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - asn_dec_rval_t rval; - asn_struct_ctx_t *ctx; - ssize_t consumed_myself = 0; - struct _stack *stck; /* Expectations stack structure */ - struct _stack_el *sel = 0; /* Stack element */ - int tlv_constr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - - ASN_DEBUG("Decoding %s as %s (frame %ld)", - td->name, - (type_variant == ASN_OSUBV_STR) ? - "OCTET STRING" : "OS-SpecialCase", - (long)size); - - /* - * Create the string if does not exist. - */ - if(st == NULL) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(st == NULL) RETURN(RC_FAIL); - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - switch(ctx->phase) { - case 0: - /* - * Check tags. - */ - rval = ber_check_tags(opt_codec_ctx, td, ctx, - buf_ptr, size, tag_mode, -1, - &ctx->left, &tlv_constr); - if(rval.code != RC_OK) - return rval; - - if(tlv_constr) { - /* - * Complex operation, requires stack of expectations. - */ - ctx->ptr = _new_stack(); - if(!ctx->ptr) { - RETURN(RC_FAIL); - } - } else { - /* - * Jump into stackless primitive decoding. - */ - _CH_PHASE(ctx, 3); - if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) - APPEND(buf_ptr, rval.consumed); - ADVANCE(rval.consumed); - goto phase3; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - phase1: - /* - * Fill the stack with expectations. - */ - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - do { - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_tag_t expected_tag; - ssize_t tl, ll, tlvl; - /* This one works even if (sel->left == -1) */ - size_t Left = ((!sel||(size_t)sel->left >= size) - ?size:(size_t)sel->left); - - - ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", (void *)sel, - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)(sel?sel->got:0) - ); - if(sel && sel->left <= 0 && sel->want_nulls == 0) { - if(sel->prev) { - struct _stack_el *prev = sel->prev; - if(prev->left != -1) { - if(prev->left < sel->got) - RETURN(RC_FAIL); - prev->left -= sel->got; - } - prev->got += sel->got; - sel = stck->cur_ptr = prev; - if(!sel) break; - tlv_constr = 1; - continue; - } else { - sel = stck->cur_ptr = 0; - break; /* Nothing to wait */ - } - } - - tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); - ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", - (long)size, (long)Left, sel?"":"!", - (long)(sel?sel->left:0), - (long)(sel?sel->want_nulls:0), - (long)tl); - switch(tl) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); - - ll = ber_fetch_length(tlv_constr, - (const char *)buf_ptr + tl,Left - tl,&tlv_len); - ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", - ber_tlv_tag_string(tlv_tag), tlv_constr, - (long)Left, (long)tl, (long)tlv_len, (long)ll); - switch(ll) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - if(sel && sel->want_nulls - && ((const uint8_t *)buf_ptr)[0] == 0 - && ((const uint8_t *)buf_ptr)[1] == 0) - { - - ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); - - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND("\0\0", 2); - - ADVANCE(2); - sel->got += 2; - if(sel->left != -1) { - sel->left -= 2; /* assert(sel->left >= 2) */ - } - - sel->want_nulls--; - if(sel->want_nulls == 0) { - /* Move to the next expectation */ - sel->left = 0; - tlv_constr = 1; - } - - continue; - } - - /* - * Set up expected tags, - * depending on ASN.1 type being decoded. - */ - switch(type_variant) { - case ASN_OSUBV_BIT: - /* X.690: 8.6.4.1, NOTE 2 */ - /* Fall through */ - case ASN_OSUBV_STR: - default: - if(sel) { - unsigned level = sel->cont_level; - if(level < td->all_tags_count) { - expected_tag = td->all_tags[level]; - break; - } else if(td->all_tags_count) { - expected_tag = td->all_tags - [td->all_tags_count - 1]; - break; - } - /* else, Fall through */ - } - /* Fall through */ - case ASN_OSUBV_ANY: - expected_tag = tlv_tag; - break; - } - - - if(tlv_tag != expected_tag) { - char buf[2][32]; - ber_tlv_tag_snprint(tlv_tag, - buf[0], sizeof(buf[0])); - ber_tlv_tag_snprint(td->tags[td->tags_count-1], - buf[1], sizeof(buf[1])); - ASN_DEBUG("Tag does not match expectation: %s != %s", - buf[0], buf[1]); - RETURN(RC_FAIL); - } - - tlvl = tl + ll; /* Combined length of T and L encoding */ - if((tlv_len + tlvl) < 0) { - /* tlv_len value is too big */ - ASN_DEBUG("TLV encoding + length (%ld) is too big", - (long)tlv_len); - RETURN(RC_FAIL); - } - - /* - * Append a new expectation. - */ - sel = OS__add_stack_el(stck); - if(!sel) RETURN(RC_FAIL); - - sel->tag = tlv_tag; - - sel->want_nulls = (tlv_len==-1); - if(sel->prev && sel->prev->left != -1) { - /* Check that the parent frame is big enough */ - if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) - RETURN(RC_FAIL); - if(tlv_len == -1) - sel->left = sel->prev->left - tlvl; - else - sel->left = tlv_len; - } else { - sel->left = tlv_len; - } - if(type_variant == ASN_OSUBV_ANY - && (tag_mode != 1 || sel->cont_level)) - APPEND(buf_ptr, tlvl); - sel->got += tlvl; - ADVANCE(tlvl); - - ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%u", - (long)sel->got, (long)sel->left, - sel->want_nulls, sel->cont_level); - - } while(tlv_constr); - if(sel == NULL) { - /* Finished operation, "phase out" */ - ASN_DEBUG("Phase out"); - _CH_PHASE(ctx, +3); - break; - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 2: - stck = (struct _stack *)ctx->ptr; - sel = stck->cur_ptr; - ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", - (long)sel->left, (long)size, (long)sel->got, - sel->want_nulls); - { - ber_tlv_len_t len; - - assert(sel->left >= 0); - - len = ((ber_tlv_len_t)size < sel->left) - ? (ber_tlv_len_t)size : sel->left; - if(len > 0) { - if(type_variant == ASN_OSUBV_BIT - && sel->bits_chopped == 0) { - /* Put the unused-bits-octet away */ - st->bits_unused = *(const uint8_t *)buf_ptr; - APPEND(((const char *)buf_ptr+1), (len - 1)); - sel->bits_chopped = 1; - } else { - APPEND(buf_ptr, len); - } - ADVANCE(len); - sel->left -= len; - sel->got += len; - } - - if(sel->left) { - ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", - (long)sel->left, (long)size, sel->want_nulls); - RETURN(RC_WMORE); - } - - PREV_PHASE(ctx); - goto phase1; - } - break; - case 3: - phase3: - /* - * Primitive form, no stack required. - */ - assert(ctx->left >= 0); - - if(size < (size_t)ctx->left) { - if(!size) RETURN(RC_WMORE); - if(type_variant == ASN_OSUBV_BIT && !ctx->context) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, size); - assert(ctx->context > 0); - ctx->left -= size; - ADVANCE(size); - RETURN(RC_WMORE); - } else { - if(type_variant == ASN_OSUBV_BIT - && !ctx->context && ctx->left) { - st->bits_unused = *(const uint8_t *)buf_ptr; - ctx->left--; - ADVANCE(1); - } - APPEND(buf_ptr, ctx->left); - ADVANCE(ctx->left); - ctx->left = 0; - - NEXT_PHASE(ctx); - } - break; - } - - if(sel) { - ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", - (void *)sel->prev, sel->want_nulls, - (long)sel->left, (long)sel->got, (long)size); - if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { - RETURN(RC_WMORE); - } - } - - /* - * BIT STRING-specific processing. - */ - if(type_variant == ASN_OSUBV_BIT) { - if(st->size) { - if(st->bits_unused < 0 || st->bits_unused > 7) { - RETURN(RC_FAIL); - } - /* Finalize BIT STRING: zero out unused bits. */ - st->buf[st->size-1] &= 0xff << st->bits_unused; - } else { - if(st->bits_unused) { - RETURN(RC_FAIL); - } - } - } - - ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", - (long)consumed_myself, td->name, - (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", - (long)st->size); - - - RETURN(RC_OK); -} - -/* - * Encode OCTET STRING type using DER. - */ -asn_enc_rval_t -OCTET_STRING_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = { 0, 0, 0 }; - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - enum asn_OS_Subvariant type_variant = specs->subvariant; - int fix_last_byte = 0; - - ASN_DEBUG("%s %s as OCTET STRING", - cb?"Estimating":"Encoding", td->name); - - /* - * Write tags. - */ - if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { - er.encoded = der_write_tags(td, - (type_variant == ASN_OSUBV_BIT) + st->size, - tag_mode, type_variant == ASN_OSUBV_ANY, tag, - cb, app_key); - if(er.encoded == -1) { - er.failed_type = td; - er.structure_ptr = sptr; - return er; - } - } else { - /* Disallow: [] IMPLICIT ANY */ - assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); - er.encoded = 0; - } - - if(!cb) { - er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; - ASN__ENCODED_OK(er); - } - - /* - * Prepare to deal with the last octet of BIT STRING. - */ - if(type_variant == ASN_OSUBV_BIT) { - uint8_t b = st->bits_unused & 0x07; - if(b && st->size) fix_last_byte = 1; - ASN__CALLBACK(&b, 1); - } - - /* Invoke callback for the main part of the buffer */ - ASN__CALLBACK(st->buf, st->size - fix_last_byte); - - /* The last octet should be stripped off the unused bits */ - if(fix_last_byte) { - uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); - ASN__CALLBACK(&b, 1); - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -asn_enc_rval_t -OCTET_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - if(flags & XER_F_CANONICAL) { - char *scend = scratch + (sizeof(scratch) - 2); - for(; buf < end; buf++) { - if(p >= scend) { - ASN__CALLBACK(scratch, p - scratch); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - } - - ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ - } else { - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - ASN__CALLBACK(scratch, p-scratch); - p = scratch; - ASN__TEXT_INDENT(1, ilevel); - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - if(p - scratch) { - p--; /* Remove the tail space */ - ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ - if(st->size > 16) - ASN__TEXT_INDENT(1, ilevel-1); - } - } - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -static const struct OCTET_STRING__xer_escape_table_s { - const char *string; - int size; -} OCTET_STRING__xer_escape_table[] = { -#define OSXET(s) { s, sizeof(s) - 1 } - OSXET("\074\156\165\154\057\076"), /* */ - OSXET("\074\163\157\150\057\076"), /* */ - OSXET("\074\163\164\170\057\076"), /* */ - OSXET("\074\145\164\170\057\076"), /* */ - OSXET("\074\145\157\164\057\076"), /* */ - OSXET("\074\145\156\161\057\076"), /* */ - OSXET("\074\141\143\153\057\076"), /* */ - OSXET("\074\142\145\154\057\076"), /* */ - OSXET("\074\142\163\057\076"), /* */ - OSXET("\011"), /* \t */ - OSXET("\012"), /* \n */ - OSXET("\074\166\164\057\076"), /* */ - OSXET("\074\146\146\057\076"), /* */ - OSXET("\015"), /* \r */ - OSXET("\074\163\157\057\076"), /* */ - OSXET("\074\163\151\057\076"), /* */ - OSXET("\074\144\154\145\057\076"), /* */ - OSXET("\074\144\143\061\057\076"), /* */ - OSXET("\074\144\143\062\057\076"), /* */ - OSXET("\074\144\143\063\057\076"), /* */ - OSXET("\074\144\143\064\057\076"), /* */ - OSXET("\074\156\141\153\057\076"), /* */ - OSXET("\074\163\171\156\057\076"), /* */ - OSXET("\074\145\164\142\057\076"), /* */ - OSXET("\074\143\141\156\057\076"), /* */ - OSXET("\074\145\155\057\076"), /* */ - OSXET("\074\163\165\142\057\076"), /* */ - OSXET("\074\145\163\143\057\076"), /* */ - OSXET("\074\151\163\064\057\076"), /* */ - OSXET("\074\151\163\063\057\076"), /* */ - OSXET("\074\151\163\062\057\076"), /* */ - OSXET("\074\151\163\061\057\076"), /* */ - { 0, 0 }, /* " " */ - { 0, 0 }, /* ! */ - { 0, 0 }, /* \" */ - { 0, 0 }, /* # */ - { 0, 0 }, /* $ */ - { 0, 0 }, /* % */ - OSXET("\046\141\155\160\073"), /* & */ - { 0, 0 }, /* ' */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ - {0,0},{0,0},{0,0},{0,0}, /* 89:; */ - OSXET("\046\154\164\073"), /* < */ - { 0, 0 }, /* = */ - OSXET("\046\147\164\073"), /* > */ -}; - -static int -OS__check_escaped_control_char(const void *buf, int size) { - size_t i; - /* - * Inefficient algorithm which translates the escape sequences - * defined above into characters. Returns -1 if not found. - * TODO: replace by a faster algorithm (bsearch(), hash or - * nested table lookups). - */ - for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { - const struct OCTET_STRING__xer_escape_table_s *el; - el = &OCTET_STRING__xer_escape_table[i]; - if(el->size == size && memcmp(buf, el->string, size) == 0) - return i; - } - return -1; -} - -static int -OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { - /* - * This might be one of the escape sequences - * for control characters. Check it out. - * #11.15.5 - */ - int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); - if(control_char >= 0) { - OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; - void *p = REALLOC(st->buf, st->size + 2); - if(p) { - st->buf = (uint8_t *)p; - st->buf[st->size++] = control_char; - st->buf[st->size] = '\0'; /* nul-termination */ - return 0; - } - } - - return -1; /* No, it's not */ -} - -asn_enc_rval_t -OCTET_STRING_encode_xer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - uint8_t *buf, *end; - uint8_t *ss; /* Sequence start */ - ssize_t encoded_len = 0; - - (void)ilevel; /* Unused argument */ - (void)flags; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - buf = st->buf; - end = buf + st->size; - for(ss = buf; buf < end; buf++) { - unsigned int ch = *buf; - int s_len; /* Special encoding sequence length */ - - /* - * Escape certain characters: X.680/11.15 - */ - if(ch < sizeof(OCTET_STRING__xer_escape_table) - /sizeof(OCTET_STRING__xer_escape_table[0]) - && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { - if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) - || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, - app_key) < 0) - ASN__ENCODE_FAILED; - encoded_len += (buf - ss) + s_len; - ss = buf + 1; - } - } - - encoded_len += (buf - ss); - if((buf - ss) && cb(ss, buf - ss, app_key) < 0) - ASN__ENCODE_FAILED; - - er.encoded = encoded_len; - ASN__ENCODED_OK(er); -} - -/* - * Convert from hexadecimal format (cstring): "AB CD EF" - */ -static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *chunk_stop = (const char *)chunk_buf; - const char *p = chunk_stop; - const char *pend = p + chunk_size; - unsigned int clv = 0; - int half = 0; /* Half bit */ - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - size_t new_size = st->size + (chunk_size + 1) / 2; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * If something like " a b c " appears here, the " a b":3 will be - * converted, and the rest skipped. That is, unless buf_size is greater - * than chunk_size, then it'll be equivalent to "ABC0". - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - continue; - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - clv = (clv << 4) + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - clv = (clv << 4) + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - clv = (clv << 4) + (ch - 0x61 + 10); - break; - default: - *buf = 0; /* JIC */ - return -1; - } - if(half++) { - half = 0; - *buf++ = clv; - chunk_stop = p + 1; - } - } - - /* - * Check partial decoding. - */ - if(half) { - if(have_more) { - /* - * Partial specification is fine, - * because no more more PXER_TEXT data is available. - */ - *buf++ = clv << 4; - chunk_stop = p; - } - } else { - chunk_stop = p; - } - - st->size = buf - st->buf; /* Adjust the buffer size */ - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return (chunk_stop - (const char *)chunk_buf); /* Converted size */ -} - -/* - * Convert from binary format: "00101011101" - */ -static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { - BIT_STRING_t *st = (BIT_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - int bits_unused = st->bits_unused & 0x7; - uint8_t *buf; - - /* Reallocate buffer according to high cap estimation */ - size_t new_size = st->size + (chunk_size + 7) / 8; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - (void)have_more; - - if(bits_unused == 0) - bits_unused = 8; - else if(st->size) - buf--; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - switch(ch) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* Ignore whitespace */ - break; - case 0x30: - case 0x31: - if(bits_unused-- <= 0) { - *++buf = 0; /* Clean the cell */ - bits_unused = 7; - } - *buf |= (ch&1) << bits_unused; - break; - default: - st->bits_unused = bits_unused; - return -1; - } - } - - if(bits_unused == 8) { - st->size = buf - st->buf; - st->bits_unused = 0; - } else { - st->size = buf - st->buf + 1; - st->bits_unused = bits_unused; - } - - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Something like strtod(), but with stricter rules. - */ -static int -OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { - const int32_t last_unicode_codepoint = 0x10ffff; - int32_t val = 0; - const char *p; - - for(p = buf; p < end; p++) { - int ch = *p; - - switch(ch) { - case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ - case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ - val = val * base + (ch - 0x30); - break; - case 0x41: case 0x42: case 0x43: /* ABC */ - case 0x44: case 0x45: case 0x46: /* DEF */ - val = val * base + (ch - 0x41 + 10); - break; - case 0x61: case 0x62: case 0x63: /* abc */ - case 0x64: case 0x65: case 0x66: /* def */ - val = val * base + (ch - 0x61 + 10); - break; - case 0x3b: /* ';' */ - *ret_value = val; - return (p - buf) + 1; - default: - return -1; /* Character set error */ - } - - /* Value exceeds the Unicode range. */ - if(val > last_unicode_codepoint) { - return -1; - } - } - - *ret_value = -1; - return (p - buf); -} - -/* - * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" - */ -static ssize_t -OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, - size_t chunk_size, int have_more) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - uint8_t *buf; - - /* Reallocate buffer */ - size_t new_size = st->size + chunk_size; - void *nptr = REALLOC(st->buf, new_size + 1); - if(!nptr) return -1; - st->buf = (uint8_t *)nptr; - buf = st->buf + st->size; - - /* - * Convert series of 0 and 1 into the octet string. - */ - for(; p < pend; p++) { - int ch = *(const unsigned char *)p; - int len; /* Length of the rest of the chunk */ - - if(ch != 0x26 /* '&' */) { - *buf++ = ch; - continue; /* That was easy... */ - } - - /* - * Process entity reference. - */ - len = chunk_size - (p - (const char *)chunk_buf); - if(len == 1 /* "&" */) goto want_more; - if(p[1] == 0x23 /* '#' */) { - const char *pval; /* Pointer to start of digits */ - int32_t val = 0; /* Entity reference value */ - int base; - - if(len == 2 /* "&#" */) goto want_more; - if(p[2] == 0x78 /* 'x' */) - pval = p + 3, base = 16; - else - pval = p + 2, base = 10; - len = OS__strtoent(base, pval, p + len, &val); - if(len == -1) { - /* Invalid charset. Just copy verbatim. */ - *buf++ = ch; - continue; - } - if(!len || pval[len-1] != 0x3b) goto want_more; - assert(val > 0); - p += (pval - p) + len - 1; /* Advance past entref */ - - if(val < 0x80) { - *buf++ = (char)val; - } else if(val < 0x800) { - *buf++ = 0xc0 | ((val >> 6)); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x10000) { - *buf++ = 0xe0 | ((val >> 12)); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x200000) { - *buf++ = 0xf0 | ((val >> 18)); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else if(val < 0x4000000) { - *buf++ = 0xf8 | ((val >> 24)); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } else { - *buf++ = 0xfc | ((val >> 30) & 0x1); - *buf++ = 0x80 | ((val >> 24) & 0x3f); - *buf++ = 0x80 | ((val >> 18) & 0x3f); - *buf++ = 0x80 | ((val >> 12) & 0x3f); - *buf++ = 0x80 | ((val >> 6) & 0x3f); - *buf++ = 0x80 | ((val & 0x3f)); - } - } else { - /* - * Ugly, limited parsing of & > < - */ - char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); - if(!sc) goto want_more; - if((sc - p) == 4 - && p[1] == 0x61 /* 'a' */ - && p[2] == 0x6d /* 'm' */ - && p[3] == 0x70 /* 'p' */) { - *buf++ = 0x26; - p = sc; - continue; - } - if((sc - p) == 3) { - if(p[1] == 0x6c) { - *buf = 0x3c; /* '<' */ - } else if(p[1] == 0x67) { - *buf = 0x3e; /* '>' */ - } else { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - if(p[2] != 0x74) { - /* Unsupported entity reference */ - *buf++ = ch; - continue; - } - buf++; - p = sc; - continue; - } - /* Unsupported entity reference */ - *buf++ = ch; - } - - continue; - want_more: - if(have_more) { - /* - * We know that no more data (of the same type) - * is coming. Copy the rest verbatim. - */ - *buf++ = ch; - continue; - } - chunk_size = (p - (const char *)chunk_buf); - /* Processing stalled: need more data */ - break; - } - - st->size = buf - st->buf; - assert(st->size <= new_size); - st->buf[st->size] = 0; /* Courtesy termination */ - - return chunk_size; /* Converted in full */ -} - -/* - * Decode OCTET STRING from the XML element's body. - */ -static asn_dec_rval_t -OCTET_STRING__decode_xer( - const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, - void **sptr, const char *opt_mname, const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder)(void *struct_ptr, const void *chunk_buf, - size_t chunk_size), - ssize_t (*body_receiver)(void *struct_ptr, const void *chunk_buf, - size_t chunk_size, int have_more)) { - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t *ctx; /* Per-structure parser context */ - asn_dec_rval_t rval; /* Return value from the decoder */ - int st_allocated; - - /* - * Create the string if does not exist. - */ - if(!st) { - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - *sptr = (void *)st; - if(!st) goto sta_failed; - st_allocated = 1; - } else { - st_allocated = 0; - } - if(!st->buf) { - /* This is separate from above section */ - st->buf = (uint8_t *)CALLOC(1, 1); - if(!st->buf) { - if(st_allocated) { - *sptr = 0; - goto stb_failed; - } else { - goto sta_failed; - } - } - } - - /* Restore parsing context */ - ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); - - return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, - buf_ptr, size, opt_unexpected_tag_decoder, body_receiver); - -stb_failed: - FREEMEM(st); -sta_failed: - rval.code = RC_FAIL; - rval.consumed = 0; - return rval; -} - -/* - * Decode OCTET STRING from the hexadecimal data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_hex(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, OCTET_STRING__convert_hexadecimal); -} - -/* - * Decode OCTET STRING from the binary (0/1) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_binary(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, 0, OCTET_STRING__convert_binary); -} - -/* - * Decode OCTET STRING from the string (ASCII/UTF-8) data. - */ -asn_dec_rval_t -OCTET_STRING_decode_xer_utf8(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, - size_t size) { - return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, - buf_ptr, size, - OCTET_STRING__handle_control_chars, - OCTET_STRING__convert_entrefs); -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -static int -OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, const asn_per_constraints_t *pc) { - uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", - (int)units, lb, ub, unit_bits); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Decode without translation */ - lb = 0; - } else if(pc && pc->code2value) { - if(unit_bits > 16) - return 1; /* FATAL: can't have constrained - * UniversalString with more than - * 16 million code points */ - for(; buf < end; buf += bpc) { - int value; - int code = per_get_few_bits(po, unit_bits); - if(code < 0) return -1; /* WMORE */ - value = pc->code2value(code); - if(value < 0) { - ASN_DEBUG("Code %d (0x%02x) is" - " not in map (%ld..%ld)", - code, code, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = value; break; - case 2: buf[0] = value >> 8; buf[1] = value; break; - case 4: buf[0] = value >> 24; buf[1] = value >> 16; - buf[2] = value >> 8; buf[3] = value; break; - } - } - return 0; - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_get_many_bits(po, buf, 0, unit_bits * units); - } - - for(; buf < end; buf += bpc) { - int32_t code = per_get_few_bits(po, unit_bits); - int32_t ch = code + lb; - if(code < 0) return -1; /* WMORE */ - if(ch > ub) { - ASN_DEBUG("Code %d is out of range (%ld..%ld)", - ch, lb, ub); - return 1; /* FATAL */ - } - switch(bpc) { - case 1: *buf = ch; break; - case 2: buf[0] = ch >> 8; buf[1] = ch; break; - case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; - buf[2] = ch >> 8; buf[3] = ch; break; - } - } - - return 0; -} - -static int -OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, - size_t units, unsigned int bpc, unsigned int unit_bits, - long lb, long ub, const asn_per_constraints_t *pc) { - const uint8_t *end = buf + units * bpc; - - ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", - (int)units, lb, ub, unit_bits, bpc); - - /* X.691: 27.5.4 */ - if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { - /* Encode as is */ - lb = 0; - } else if(pc && pc->value2code) { - for(; buf < end; buf += bpc) { - int code; - uint32_t value; - switch(bpc) { - case 1: value = *(const uint8_t *)buf; break; - case 2: value = (buf[0] << 8) | buf[1]; break; - case 4: value = (buf[0] << 24) | (buf[1] << 16) - | (buf[2] << 8) | buf[3]; break; - default: return -1; - } - code = pc->value2code(value); - if(code < 0) { - ASN_DEBUG("Character %d (0x%02x) is" - " not in map (%ld..%ld)", - *buf, *buf, lb, ub); - return -1; - } - if(per_put_few_bits(po, code, unit_bits)) - return -1; - } - } - - /* Shortcut the no-op copying to the aligned structure */ - if(lb == 0 && (unit_bits == 8 * bpc)) { - return per_put_many_bits(po, buf, unit_bits * units); - } - - for(ub -= lb; buf < end; buf += bpc) { - int ch; - uint32_t value; - switch(bpc) { - case 1: - value = *(const uint8_t *)buf; - break; - case 2: - value = (buf[0] << 8) | buf[1]; - break; - case 4: - value = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]; - break; - default: - return -1; - } - ch = value - lb; - if(ch < 0 || ch > ub) { - ASN_DEBUG("Character %d (0x%02x) is out of range (%ld..%ld)", *buf, - value, lb, ub + lb); - return -1; - } - if(per_put_few_bits(po, ch, unit_bits)) return -1; - } - - return 0; -} - -static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { - { APC_CONSTRAINED, 8, 8, 0, 255 }, - { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, - 0, 0 -}; - -asn_dec_rval_t -OCTET_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = - constraints ? constraints : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - enum { - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - - (void)opt_codec_ctx; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - case ASN_OSUBV_BIT: - ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); - RETURN(RC_FAIL); - break; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - break; - } - - /* - * Allocate the string. - */ - if(!st) { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - if(bpc) { - st->size = csiz->upper_bound * bpc; - } else { - st->size = (csiz->upper_bound + 7) >> 3; - } - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - if(bpc) { - ASN_DEBUG("Encoding OCTET STRING size %ld", - csiz->upper_bound); - ret = OCTET_STRING_per_get_characters(pd, st->buf, - csiz->upper_bound, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ASN_DEBUG("Encoding BIT STRING size %ld", - csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, - unit_bits * csiz->upper_bound); - } - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += unit_bits * csiz->upper_bound; - st->buf[st->size] = 0; - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - void *p; - int ret; - - /* Get the PER length */ - raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, - &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - if(raw_len == 0 && st->buf) break; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - len_bytes = raw_len * bpc; - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - ret = OCTET_STRING_per_get_characters(pd, &st->buf[st->size], raw_len, - bpc, unit_bits, cval->lower_bound, - cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -OCTET_STRING_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - size_t size_in_units; - const uint8_t *buf; - int ret; - enum { - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - case ASN_OSUBV_BIT: - ASN__ENCODE_FAILED; - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_CHAR; - size_in_units = st->size; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - size_in_units = st->size >> 1; - if(st->size & 1) { - ASN_DEBUG("%s string size is not modulo 2", td->name); - ASN__ENCODE_FAILED; - } - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - size_in_units = st->size >> 2; - if(st->size & 3) { - ASN_DEBUG("%s string size is not modulo 4", td->name); - ASN__ENCODE_FAILED; - } - break; - } - - ASN_DEBUG("Encoding %s into %" ASN_PRI_SIZE " units of %d bits" - " (%ld..%ld, effective %d)%s", - td->name, size_in_units, unit_bits, - csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out whether size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((ssize_t)size_in_units < csiz->lower_bound - || (ssize_t)size_in_units > csiz->upper_bound) { - if(ct_extensible) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - inext = 1; - } else { - ASN__ENCODE_FAILED; - } - } - } else { - inext = 0; - } - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - if(csiz->effective_bits >= 0 && !inext) { - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes (%ld), length in %d bits", st->size, - size_in_units - csiz->lower_bound, csiz->effective_bits); - ret = per_put_few_bits(po, size_in_units - csiz->lower_bound, - csiz->effective_bits); - if(ret) ASN__ENCODE_FAILED; - ret = OCTET_STRING_per_put_characters(po, st->buf, size_in_units, bpc, - unit_bits, cval->lower_bound, - cval->upper_bound, pc); - if(ret) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); - - buf = st->buf; - ASN_DEBUG("Encoding %" ASN_PRI_SIZE " in units", size_in_units); - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size_in_units, &need_eom); - if(may_save < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "%s", may_save, size_in_units, - need_eom ? ",+EOM" : ""); - - ret = OCTET_STRING_per_put_characters(po, buf, may_save, bpc, unit_bits, - cval->lower_bound, - cval->upper_bound, pc); - if(ret) ASN__ENCODE_FAILED; - - buf += may_save * bpc; - size_in_units -= may_save; - assert(!(may_save & 0x07) || !size_in_units); - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } while(size_in_units); - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -OCTET_STRING_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - asn_dec_rval_t rval = { RC_OK, 0 }; - BIT_STRING_t *st = (BIT_STRING_t *)*sptr; - ssize_t consumed_myself = 0; - int repeat; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - - (void)opt_codec_ctx; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - - switch(specs->subvariant) { - default: -/* case ASN_OSUBV_ANY: - ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); - RETURN(RC_FAIL); -*/ - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - break; - case ASN_OSUBV_ANY: - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; -/* if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; -*/ - bpc = OS__BPC_CHAR; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - break; - } - - /* - * Allocate the string. - */ - if(!st) { - st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) RETURN(RC_FAIL); - } - - ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", - csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", - csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); - - if(csiz->flags & APC_EXTENSIBLE) { - int inext = per_get_few_bits(pd, 1); - if(inext < 0) RETURN(RC_WMORE); - if(inext) { - csiz = &asn_DEF_OCTET_STRING_constraints.size; - cval = &asn_DEF_OCTET_STRING_constraints.value; - unit_bits = canonical_unit_bits; - } - } - - if(csiz->effective_bits >= 0) { - FREEMEM(st->buf); - if(bpc) { - st->size = csiz->upper_bound * bpc; - } else { - st->size = (csiz->upper_bound + 7) >> 3; - } - st->buf = (uint8_t *)MALLOC(st->size + 1); - if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits == 0) { - int ret; - /* X.691 #16 NOTE 1 for fixed length (<= 16 bits) strings */ - if (st->size > 2 || csiz->range_bits != 0) { - if (aper_get_align(pd) < 0) - RETURN(RC_FAIL); - } - if(bpc) { - ASN_DEBUG("Decoding OCTET STRING size %ld", - csiz->upper_bound); - ret = OCTET_STRING_per_get_characters(pd, st->buf, - csiz->upper_bound, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ASN_DEBUG("Decoding BIT STRING size %ld", - csiz->upper_bound); - ret = per_get_many_bits(pd, st->buf, 0, - unit_bits * csiz->upper_bound); - } - if(ret < 0) RETURN(RC_WMORE); - consumed_myself += unit_bits * csiz->upper_bound; - st->buf[st->size] = 0; - if(bpc == 0) { - int ubs = (csiz->upper_bound & 0x7); - st->bits_unused = ubs ? 8 - ubs : 0; - } - RETURN(RC_OK); - } - - st->size = 0; - do { - ssize_t raw_len; - ssize_t len_bytes; - ssize_t len_bits; - void *p; - int ret; - - repeat = 0; - /* Get the PER length */ - if (csiz->upper_bound - csiz->lower_bound == 0) - /* Indefinite length case */ - raw_len = aper_get_length(pd, -1, csiz->effective_bits, &repeat); - else - raw_len = aper_get_length(pd, csiz->upper_bound - csiz->lower_bound + 1, csiz->effective_bits, &repeat); - if(raw_len < 0) RETURN(RC_WMORE); - raw_len += csiz->lower_bound; - - ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", - (long)csiz->effective_bits, (long)raw_len, - repeat ? "repeat" : "once", td->name); - - /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings */ - if ((raw_len > 2) || (csiz->upper_bound > 2) || (csiz->range_bits != 0)) - { - if (aper_get_align(pd) < 0) - RETURN(RC_FAIL); - } - - if(bpc) { - len_bytes = raw_len * bpc; - len_bits = len_bytes * unit_bits; - } else { - len_bits = raw_len; - len_bytes = (len_bits + 7) >> 3; - if(len_bits & 0x7) - st->bits_unused = 8 - (len_bits & 0x7); - /* len_bits be multiple of 16K if repeat is set */ - } - p = REALLOC(st->buf, st->size + len_bytes + 1); - if(!p) RETURN(RC_FAIL); - st->buf = (uint8_t *)p; - - if(bpc) { - ret = OCTET_STRING_per_get_characters(pd, - &st->buf[st->size], raw_len, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - if(ret > 0) RETURN(RC_FAIL); - } else { - ret = per_get_many_bits(pd, &st->buf[st->size], - 0, len_bits); - } - if(ret < 0) RETURN(RC_WMORE); - st->size += len_bytes; - } while(repeat); - st->buf[st->size] = 0; /* nul-terminate */ - - return rval; -} - -asn_enc_rval_t -OCTET_STRING_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const asn_per_constraints_t *pc = constraints ? constraints - : td->encoding_constraints.per_constraints; - const asn_per_constraint_t *cval; - const asn_per_constraint_t *csiz; - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - asn_enc_rval_t er = { 0, 0, 0 }; - int inext = 0; /* Lies not within extension root */ - unsigned int unit_bits; - unsigned int canonical_unit_bits; - unsigned int sizeinunits; - const uint8_t *buf; - int ret; - enum { - OS__BPC_BIT = 0, - OS__BPC_CHAR = 1, - OS__BPC_U16 = 2, - OS__BPC_U32 = 4 - } bpc; /* Bytes per character */ - int ct_extensible; - - if(!st || (!st->buf && st->size)) - ASN__ENCODE_FAILED; - - if(pc) { - cval = &pc->value; - csiz = &pc->size; - } else { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - } - ct_extensible = csiz->flags & APC_EXTENSIBLE; - - switch(specs->subvariant) { - default: - /* case ASN_OSUBV_ANY: - ASN__ENCODE_FAILED; - */ - case ASN_OSUBV_BIT: - canonical_unit_bits = unit_bits = 1; - bpc = OS__BPC_BIT; - sizeinunits = st->size * 8 - (st->bits_unused & 0x07); - ASN_DEBUG("BIT STRING of %d bytes", - sizeinunits); - break; - case ASN_OSUBV_ANY: - case ASN_OSUBV_STR: - canonical_unit_bits = unit_bits = 8; -/* if(cval->flags & APC_CONSTRAINED) - unit_bits = 8; -*/ - bpc = OS__BPC_CHAR; - sizeinunits = st->size; - break; - case ASN_OSUBV_U16: - canonical_unit_bits = unit_bits = 16; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U16; - sizeinunits = st->size / 2; - break; - case ASN_OSUBV_U32: - canonical_unit_bits = unit_bits = 32; - if(cval->flags & APC_CONSTRAINED) - unit_bits = cval->range_bits; - bpc = OS__BPC_U32; - sizeinunits = st->size / 4; - break; - } - - ASN_DEBUG("Encoding %s into %d units of %d bits" - " (%ld..%ld, effective %d)%s", - td->name, sizeinunits, unit_bits, - csiz->lower_bound, csiz->upper_bound, - csiz->effective_bits, ct_extensible ? " EXT" : ""); - - /* Figure out wheter size lies within PER visible constraint */ - - if(csiz->effective_bits >= 0) { - if((int)sizeinunits < csiz->lower_bound - || (int)sizeinunits > csiz->upper_bound) { - if(ct_extensible) { - cval = &asn_DEF_OCTET_STRING_constraints.value; - csiz = &asn_DEF_OCTET_STRING_constraints.size; - unit_bits = canonical_unit_bits; - inext = 1; - } else - ASN__ENCODE_FAILED; - } - } else { - inext = 0; - } - - - if(ct_extensible) { - /* Declare whether length is [not] within extension root */ - if(per_put_few_bits(po, inext, 1)) - ASN__ENCODE_FAILED; - } - - /* X.691, #16.5: zero-length encoding */ - /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ - /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ - if(csiz->effective_bits >= 0) { - ASN_DEBUG("Encoding %lu bytes (%ld), length in %d bits", - st->size, sizeinunits - csiz->lower_bound, - csiz->effective_bits); - if (csiz->effective_bits > 0) { - ret = aper_put_length(po, csiz->upper_bound - csiz->lower_bound + 1, sizeinunits - csiz->lower_bound, 0); - if(ret) ASN__ENCODE_FAILED; - } - if (csiz->effective_bits > 0 || (st->size > 2) - || (csiz->upper_bound > (2 * 8 / unit_bits)) - || (csiz->range_bits != 0) - ) - { /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings*/ - if (aper_put_align(po) < 0) - ASN__ENCODE_FAILED; - } - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, st->buf, - sizeinunits, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - } else { - ret = per_put_many_bits(po, st->buf, - sizeinunits * unit_bits); - } - if(ret) ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - ASN_DEBUG("Encoding %lu bytes", st->size); - - if(sizeinunits == 0) { - if(aper_put_length(po, -1, 0, 0)) - ASN__ENCODE_FAILED; - ASN__ENCODED_OK(er); - } - - buf = st->buf; - while(sizeinunits) { - int need_eom = 0; - ssize_t maySave = aper_put_length(po, -1, sizeinunits, &need_eom); - - if(maySave < 0) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %ld of %ld", - (long)maySave, (long)sizeinunits); - - if(bpc) { - ret = OCTET_STRING_per_put_characters(po, buf, - maySave, bpc, unit_bits, - cval->lower_bound, cval->upper_bound, pc); - } else { - ret = per_put_many_bits(po, buf, maySave * unit_bits); - } - if(ret) ASN__ENCODE_FAILED; - - if(bpc) - buf += maySave * bpc; - else - buf += maySave >> 3; - sizeinunits -= maySave; - assert(!(maySave & 0x07) || !sizeinunits); - if(need_eom && aper_put_length(po, -1, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -int -OCTET_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { - const char * const h2c = "0123456789ABCDEF"; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - char scratch[16 * 3 + 4]; - char *p = scratch; - uint8_t *buf; - uint8_t *end; - size_t i; - - (void)td; /* Unused argument */ - - if(!st || (!st->buf && st->size)) - return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Dump the contents of the buffer in hexadecimal. - */ - buf = st->buf; - end = buf + st->size; - for(i = 0; buf < end; buf++, i++) { - if(!(i % 16) && (i || st->size > 16)) { - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - _i_INDENT(1); - p = scratch; - } - *p++ = h2c[(*buf >> 4) & 0x0F]; - *p++ = h2c[*buf & 0x0F]; - *p++ = 0x20; - } - - if(p > scratch) { - p--; /* Remove the tail space */ - if(cb(scratch, p - scratch, app_key) < 0) - return -1; - } - - return 0; -} - -int -OCTET_STRING_print_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, asn_app_consume_bytes_f *cb, - void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(st && (st->buf || !st->size)) { - return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -OCTET_STRING_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; - const asn_OCTET_STRING_specifics_t *specs; - asn_struct_ctx_t *ctx; - struct _stack *stck; - - if(!td || !st) - return; - - specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - ASN_DEBUG("Freeing %s as OCTET STRING", td->name); - - if(st->buf) { - FREEMEM(st->buf); - st->buf = 0; - } - - /* - * Remove decode-time stack. - */ - stck = (struct _stack *)ctx->ptr; - if(stck) { - while(stck->tail) { - struct _stack_el *sel = stck->tail; - stck->tail = sel->prev; - FREEMEM(sel); - } - FREEMEM(stck); - } - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(sptr, 0, - td->specifics - ? ((const asn_OCTET_STRING_specifics_t *)(td->specifics)) - ->struct_size - : sizeof(OCTET_STRING_t)); - break; - } -} - -/* - * Conversion routines. - */ -int -OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { - void *buf; - - if(st == 0 || (str == 0 && len)) { - errno = EINVAL; - return -1; - } - - /* - * Clear the OCTET STRING. - */ - if(str == NULL) { - FREEMEM(st->buf); - st->buf = 0; - st->size = 0; - return 0; - } - - /* Determine the original string size, if not explicitly given */ - if(len < 0) - len = strlen(str); - - /* Allocate and fill the memory */ - buf = MALLOC(len + 1); - if(buf == NULL) - return -1; - - memcpy(buf, str, len); - ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ - FREEMEM(st->buf); - st->buf = (uint8_t *)buf; - st->size = len; - - return 0; -} - -OCTET_STRING_t * -OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, const char *str, - int len) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - OCTET_STRING_t *st; - - st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); - if(st && str && OCTET_STRING_fromBuf(st, str, len)) { - FREEMEM(st); - st = NULL; - } - - return st; -} - -/* - * Lexicographically compare the common prefix of both strings, - * and if it is the same return -1 for the smallest string. - */ -int -OCTET_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics; - const OCTET_STRING_t *a = aptr; - const OCTET_STRING_t *b = bptr; - - assert(!specs || specs->subvariant != ASN_OSUBV_BIT); - - if(a && b) { - size_t common_prefix_size = a->size <= b->size ? a->size : b->size; - int ret = memcmp(a->buf, b->buf, common_prefix_size); - if(ret == 0) { - /* Figure out which string with equal prefixes is longer. */ - if(a->size < b->size) { - return -1; - } else if(a->size > b->size) { - return 1; - } else { - return 0; - } - } else { - return ret < 0 ? -1 : 1; - } - } else if(!a && !b) { - return 0; - } else if(!a) { - return -1; - } else { - return 1; - } - -} - -/* - * Biased function for randomizing character values around their limits. - */ -static uint32_t -OCTET_STRING__random_char(unsigned long lb, unsigned long ub) { - assert(lb <= ub); - switch(asn_random_between(0, 16)) { - case 0: - if(lb < ub) return lb + 1; - /* Fall through */ - case 1: - return lb; - case 2: - if(lb < ub) return ub - 1; - /* Fall through */ - case 3: - return ub; - default: - return asn_random_between(lb, ub); - } -} - - -size_t -OCTET_STRING_random_length_constrained( - const asn_TYPE_descriptor_t *td, - const asn_encoding_constraints_t *constraints, size_t max_length) { - const unsigned lengths[] = {0, 1, 2, 3, 4, 8, - 126, 127, 128, 16383, 16384, 16385, - 65534, 65535, 65536, 65537}; - size_t rnd_len; - - /* Figure out how far we should go */ - rnd_len = lengths[asn_random_between( - 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; - - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_CONSTRAINED) { - long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length - ? pc->upper_bound - : (ssize_t)max_length; - if(max_length <= (size_t)pc->lower_bound) { - return pc->lower_bound; - } - if(pc->flags & APC_EXTENSIBLE) { - switch(asn_random_between(0, 5)) { - case 0: - if(pc->lower_bound > 0) { - rnd_len = pc->lower_bound - 1; - break; - } - /* Fall through */ - case 1: - rnd_len = pc->upper_bound + 1; - break; - case 2: - /* Keep rnd_len from the table */ - if(rnd_len <= max_length) { - break; - } - /* Fall through */ - default: - rnd_len = asn_random_between(pc->lower_bound, - suggested_upper_bound); - } - } else { - rnd_len = - asn_random_between(pc->lower_bound, suggested_upper_bound); - } - } else { - rnd_len = asn_random_between(0, max_length); - } - } else if(rnd_len > max_length) { - rnd_len = asn_random_between(0, max_length); - } - - return rnd_len; -} - -asn_random_fill_result_t -OCTET_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_OCTET_STRING_specifics_t *specs = td->specifics - ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - unsigned int unit_bytes = 1; - unsigned long clb = 0; /* Lower bound on char */ - unsigned long cub = 255; /* Higher bound on char value */ - uint8_t *buf; - uint8_t *bend; - uint8_t *b; - size_t rnd_len; - OCTET_STRING_t *st; - - if(max_length == 0 && !*sptr) return result_skipped; - - switch(specs->subvariant) { - default: - case ASN_OSUBV_ANY: - return result_failed; - case ASN_OSUBV_BIT: - /* Handled by BIT_STRING itself. */ - return result_failed; - case ASN_OSUBV_STR: - unit_bytes = 1; - clb = 0; - cub = 255; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - clb = 0; - cub = 65535; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - clb = 0; - cub = 0x10FFFF; - break; - } - - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->value; - if(pc->flags & APC_SEMI_CONSTRAINED) { - clb = pc->lower_bound; - } else if(pc->flags & APC_CONSTRAINED) { - clb = pc->lower_bound; - cub = pc->upper_bound; - } - } - - rnd_len = - OCTET_STRING_random_length_constrained(td, constraints, max_length); - - buf = CALLOC(unit_bytes, rnd_len + 1); - if(!buf) return result_failed; - - bend = &buf[unit_bytes * rnd_len]; - - switch(unit_bytes) { - case 1: - for(b = buf; b < bend; b += unit_bytes) { - *(uint8_t *)b = OCTET_STRING__random_char(clb, cub); - } - *(uint8_t *)b = 0; - break; - case 2: - for(b = buf; b < bend; b += unit_bytes) { - uint32_t code = OCTET_STRING__random_char(clb, cub); - b[0] = code >> 8; - b[1] = code; - } - *(uint16_t *)b = 0; - break; - case 4: - for(b = buf; b < bend; b += unit_bytes) { - uint32_t code = OCTET_STRING__random_char(clb, cub); - b[0] = code >> 24; - b[1] = code >> 16; - b[2] = code >> 8; - b[3] = code; - } - *(uint32_t *)b = 0; - break; - } - - if(*sptr) { - st = *sptr; - FREEMEM(st->buf); - } else { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) { - FREEMEM(buf); - return result_failed; - } - } - - st->buf = buf; - st->size = unit_bytes * rnd_len; - - result_ok.length = st->size; - return result_ok; -} diff --git a/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c deleted file mode 100644 index c16faeafb..000000000 --- a/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -asn_dec_rval_t -OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - - size_t unit_bytes; - switch(specs->subvariant) { - default: - case ASN_OSUBV_BIT: - ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING"); - ASN__DECODE_FAILED; - case ASN_OSUBV_ANY: - /* Fall through */ - case ASN_OSUBV_STR: - unit_bytes = 1; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - break; - } - - (void)opt_codec_ctx; - - if(!st) { - st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); - if(!st) ASN__DECODE_FAILED; - } - - if(ct_size >= 0) { - expected_length = unit_bytes * ct_size; - } else { - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - rval.consumed = len_len; - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(expected_length % unit_bytes != 0) { - ASN_DEBUG( - "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "", - expected_length, unit_bytes); - ASN__DECODE_FAILED; - } - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - - rval.consumed += expected_length; - return rval; - } -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_OCTET_STRING_specifics_t *specs = - td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics - : &asn_SPC_OCTET_STRING_specs; - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - const asn_oer_constraints_t *cts = - constraints ? constraints : td->encoding_constraints.oer_constraints; - ssize_t ct_size = cts ? cts->size : -1; - asn_enc_rval_t er = {0, 0, 0}; - - if(!st) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size); - - if(ct_size >= 0) { - /* - * Check that available data matches the constraint - */ - size_t unit_bytes; - switch(specs->subvariant) { - default: - case ASN_OSUBV_BIT: - ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING"); - ASN__ENCODE_FAILED; - case ASN_OSUBV_ANY: - /* Fall through */ - case ASN_OSUBV_STR: - unit_bytes = 1; - break; - case ASN_OSUBV_U16: - unit_bytes = 2; - break; - case ASN_OSUBV_U32: - unit_bytes = 4; - break; - } - - if(st->size != unit_bytes * (size_t)ct_size) { - ASN_DEBUG( - "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE " - "constraint (%" ASN_PRI_SIZE ")", - td->name, st->size, ct_size); - ASN__ENCODE_FAILED; - } - } else { - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - ssize_t ret = oer_serialize_length(st->size, cb, app_key); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += ret; - } - - er.encoded += st->size; - if(cb(st->buf, st->size, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c deleted file mode 100644 index a54e99c3c..000000000 --- a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c +++ /dev/null @@ -1,509 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include -#include - -asn_TYPE_operation_t asn_OP_OPEN_TYPE = { - OPEN_TYPE_free, - OPEN_TYPE_print, - OPEN_TYPE_compare, - OPEN_TYPE_decode_ber, - OPEN_TYPE_encode_der, - OPEN_TYPE_decode_xer, - OPEN_TYPE_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, 0, /* No OER support, use "-gen-OER" to enable */ -#else - OPEN_TYPE_decode_oer, - OPEN_TYPE_encode_oer, -#endif -#ifdef ASN_DISABLE_PER_SUPPORT - 0, 0, 0, 0, -#else - OPEN_TYPE_decode_uper, - OPEN_TYPE_encode_uper, - OPEN_TYPE_decode_aper, - OPEN_TYPE_encode_aper, -#endif - 0, /* Random fill is not supported for open type */ - 0 /* Use generic outmost tag fetcher */ -}; - -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -asn_dec_rval_t -OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, const void *ptr, size_t size) { - size_t consumed_myself = 0; - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - ASN_DEBUG("presence %d\n", selected.presence_index); - - rv = selected.type_descriptor->op->ber_decoder( - opt_codec_ctx, selected.type_descriptor, &inner_value, ptr, size, - elm->tag_mode); - ADVANCE(rv.consumed); - rv.consumed = 0; - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - rv.code = RC_OK; - rv.consumed = consumed_myself; - return rv; - } else { - /* Oh, now a full-blown failure failure */ - } - /* Fall through */ - case RC_FAIL: - rv.consumed = consumed_myself; - /* Fall through */ - case RC_WMORE: - break; - } - - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - return rv; -} - -asn_dec_rval_t -OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, const void *ptr, size_t size) { - size_t consumed_myself = 0; - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - int xer_context = 0; - ssize_t ch_size; - pxer_chunk_type_e ch_type; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - /* - * Confirm wrapper. - */ - for(;;) { - ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); - if(ch_size < 0) { - ASN__DECODE_FAILED; - } else { - switch(ch_type) { - case PXER_WMORE: - ASN__DECODE_STARVED; - case PXER_COMMENT: - case PXER_TEXT: - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; - } - break; - } - } - - /* - * Wrapper value confirmed. - */ - switch(xer_check_tag(ptr, ch_size, elm->name)) { - case XCT_OPENING: - ADVANCE(ch_size); - break; - case XCT_BROKEN: - default: - ASN__DECODE_FAILED; - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = selected.type_descriptor->op->xer_decoder( - opt_codec_ctx, selected.type_descriptor, &inner_value, NULL, ptr, size); - ADVANCE(rv.consumed); - rv.consumed = 0; - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_FAIL: - /* Point to a best position where failure occurred */ - rv.consumed = consumed_myself; - /* Fall through */ - case RC_WMORE: - /* Wrt. rv.consumed==0: - * In case a genuine RC_WMORE, the whole Open Type decoding - * will have to be restarted. - */ - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - return rv; - } - - /* - * Finalize wrapper. - */ - for(;;) { - ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); - if(ch_size < 0) { - ASN__DECODE_FAILED; - } else { - switch(ch_type) { - case PXER_WMORE: - ASN__DECODE_STARVED; - case PXER_COMMENT: - case PXER_TEXT: - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; - } - break; - } - } - - /* - * Wrapper value confirmed. - */ - switch(xer_check_tag(ptr, ch_size, elm->name)) { - case XCT_CLOSING: - ADVANCE(ch_size); - break; - case XCT_BROKEN: - default: - ASN__DECODE_FAILED; - } - - rv.consumed += consumed_myself; - - return rv; -} - - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, asn_per_data_t *pd) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = uper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, pd); - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_WMORE: - case RC_FAIL: - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - } - return rv; -} - -asn_enc_rval_t -OPEN_TYPE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const void *memb_ptr; /* Pointer to the member */ - asn_TYPE_member_t *elm; /* CHOICE's element */ - asn_enc_rval_t er = {0,0,0}; - unsigned present; - - (void)constraints; - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - present--; - } - - ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(uper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { - ASN__ENCODE_FAILED; - } - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - const asn_TYPE_member_t *elm, asn_per_data_t *pd) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - assert(elm->flags == ATF_OPEN_TYPE); - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) - != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - rv = aper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, pd); - switch(rv.code) { - case RC_OK: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - break; - } else { - rv.code = RC_FAIL; - } - /* Fall through */ - case RC_WMORE: - case RC_FAIL: - if(*memb_ptr2) { - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_RESET(*selected.type_descriptor, - inner_value); - } - } - } - return rv; -} - -asn_enc_rval_t -OPEN_TYPE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const void *memb_ptr; /* Pointer to the member */ - asn_TYPE_member_t *elm; /* CHOICE's element */ - asn_enc_rval_t er = {0,0,0}; - unsigned present; - - (void)constraints; - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - present--; - } - - ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(aper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { - ASN__ENCODE_FAILED; - } - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c deleted file mode 100644 index dd2f5c644..000000000 --- a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -asn_dec_rval_t -OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void *sptr, - asn_TYPE_member_t *elm, const void *ptr, size_t size) { - asn_type_selector_result_t selected; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *inner_value; - asn_dec_rval_t rv; - size_t ot_ret; - - - if(!(elm->flags & ATF_OPEN_TYPE)) { - ASN__DECODE_FAILED; - } - - if(!elm->type_selector) { - ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", - td->name, elm->name, elm->type->name); - ASN__DECODE_FAILED; - } - - selected = elm->type_selector(td, sptr); - if(!selected.presence_index) { - ASN__DECODE_FAILED; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); - } else { - memb_ptr = (char *)sptr + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - if(*memb_ptr2 != NULL) { - /* Make sure we reset the structure first before encoding */ - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { - ASN__DECODE_FAILED; - } - } - - inner_value = - (char *)*memb_ptr2 - + elm->type->elements[selected.presence_index - 1].memb_offset; - - ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, - &inner_value, ptr, size); - switch(ot_ret) { - default: - if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, - selected.presence_index) - == 0) { - rv.code = RC_OK; - rv.consumed = ot_ret; - return rv; - } else { - /* Oh, now a full-blown failure failure */ - } - /* Fall through */ - case -1: - rv.code = RC_FAIL; - rv.consumed = ot_ret; - break; - case 0: - rv.code = RC_WMORE; - rv.consumed = 0; - break; - } - - if(*memb_ptr2) { - const asn_CHOICE_specifics_t *specs = - selected.type_descriptor->specifics; - if(elm->flags & ATF_POINTER) { - ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); - *memb_ptr2 = NULL; - } else { - ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor, - inner_value); - memset(*memb_ptr2, 0, specs->struct_size); - } - } - return rv; -} diff --git a/src/tmx/Asn_J2735/src/r63/ObjectCount.c b/src/tmx/Asn_J2735/src/r63/ObjectCount.c deleted file mode 100644 index ba3f94f64..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObjectCount.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ObjectCount.h" - -int -ObjectCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObjectCount_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectCount = { - "ObjectCount", - "ObjectCount", - &asn_OP_NativeInteger, - asn_DEF_ObjectCount_tags_1, - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - asn_DEF_ObjectCount_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectCount_tags_1) - /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ - { &asn_OER_type_ObjectCount_constr_1, &asn_PER_type_ObjectCount_constr_1, ObjectCount_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c b/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c deleted file mode 100644 index 5d8bfb2d6..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c +++ /dev/null @@ -1,58 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * ObjectDescriptor basic type description. - */ -static const ber_tlv_tag_t asn_DEF_ObjectDescriptor_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), /* [UNIVERSAL 7] IMPLICIT ... */ - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ -}; -asn_TYPE_operation_t asn_OP_ObjectDescriptor = { - OCTET_STRING_free, - OCTET_STRING_print_utf8, /* Treat as ASCII subset (it's not) */ - OCTET_STRING_compare, - OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ - OCTET_STRING_encode_der, - OCTET_STRING_decode_xer_utf8, - OCTET_STRING_encode_xer_utf8, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - 0, - 0, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - OCTET_STRING_decode_uper, - OCTET_STRING_encode_uper, - OCTET_STRING_decode_aper, - OCTET_STRING_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - 0, /* Not supported for ObjectDescriptor */ - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor = { - "ObjectDescriptor", - "ObjectDescriptor", - &asn_OP_ObjectDescriptor, - asn_DEF_ObjectDescriptor_tags, - sizeof(asn_DEF_ObjectDescriptor_tags) - / sizeof(asn_DEF_ObjectDescriptor_tags[0]) - 1, - asn_DEF_ObjectDescriptor_tags, - sizeof(asn_DEF_ObjectDescriptor_tags) - / sizeof(asn_DEF_ObjectDescriptor_tags[0]), - { 0, 0, asn_generic_unknown_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObjectDistance.c b/src/tmx/Asn_J2735/src/r63/ObjectDistance.c deleted file mode 100644 index 79ec8c88b..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObjectDistance.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ObjectDistance.h" - -int -ObjectDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObjectDistance_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ObjectDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectDistance = { - "ObjectDistance", - "ObjectDistance", - &asn_OP_NativeInteger, - asn_DEF_ObjectDistance_tags_1, - sizeof(asn_DEF_ObjectDistance_tags_1) - /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ - asn_DEF_ObjectDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectDistance_tags_1) - /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ - { &asn_OER_type_ObjectDistance_constr_1, &asn_PER_type_ObjectDistance_constr_1, ObjectDistance_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObjectID.c b/src/tmx/Asn_J2735/src/r63/ObjectID.c deleted file mode 100644 index 5b46a3671..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObjectID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ObjectID.h" - -int -ObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObjectID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_ObjectID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ObjectID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectID = { - "ObjectID", - "ObjectID", - &asn_OP_NativeInteger, - asn_DEF_ObjectID_tags_1, - sizeof(asn_DEF_ObjectID_tags_1) - /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ - asn_DEF_ObjectID_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectID_tags_1) - /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ - { &asn_OER_type_ObjectID_constr_1, &asn_PER_type_ObjectID_constr_1, ObjectID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObjectType.c b/src/tmx/Asn_J2735/src/r63/ObjectType.c deleted file mode 100644 index 43ce3726e..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObjectType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ObjectType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObjectType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ObjectType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ObjectType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 7, "vehicle" }, - { 2, 3, "vru" }, - { 3, 6, "animal" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_ObjectType_enum2value_1[] = { - 3, /* animal(3) */ - 0, /* unknown(0) */ - 1, /* vehicle(1) */ - 2 /* vru(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1 = { - asn_MAP_ObjectType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ObjectType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ObjectType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObjectType = { - "ObjectType", - "ObjectType", - &asn_OP_NativeEnumerated, - asn_DEF_ObjectType_tags_1, - sizeof(asn_DEF_ObjectType_tags_1) - /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ - asn_DEF_ObjectType_tags_1, /* Same as above */ - sizeof(asn_DEF_ObjectType_tags_1) - /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ - { &asn_OER_type_ObjectType_constr_1, &asn_PER_type_ObjectType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ObjectType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c b/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c deleted file mode 100644 index d325a4bf0..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c +++ /dev/null @@ -1,135 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ObstacleDetection.h" - -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 523 && value <= 541)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_description_constr_4 CC_NOTUSED = { - { 2, 1 } /* (523..541) */, - -1}; -static asn_per_constraints_t asn_PER_memb_description_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ObstacleDetection_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDist), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obDist" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDirect), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDirection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obDirect" - }, - { ATF_POINTER, 2, offsetof(struct ObstacleDetection, description), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { &asn_OER_memb_description_constr_4, &asn_PER_memb_description_constr_4, memb_description_constraint_1 }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleDetection, locationDetails), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericLocations, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "locationDetails" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, dateTime), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dateTime" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleDetection, vertEvent), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAccelerationThreshold, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vertEvent" - }, -}; -static const int asn_MAP_ObstacleDetection_oms_1[] = { 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_ObstacleDetection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ObstacleDetection_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* locationDetails */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dateTime */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vertEvent */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1 = { - sizeof(struct ObstacleDetection), - offsetof(struct ObstacleDetection, _asn_ctx), - asn_MAP_ObstacleDetection_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_ObstacleDetection_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDetection = { - "ObstacleDetection", - "ObstacleDetection", - &asn_OP_SEQUENCE, - asn_DEF_ObstacleDetection_tags_1, - sizeof(asn_DEF_ObstacleDetection_tags_1) - /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDetection_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDetection_tags_1) - /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ObstacleDetection_1, - 6, /* Elements count */ - &asn_SPC_ObstacleDetection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c b/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c deleted file mode 100644 index a37bf1861..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ObstacleDirection.h" - -int -ObstacleDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 28800)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using DSRC_Angle, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObstacleDirection_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..28800) */, - -1}; -asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { - "ObstacleDirection", - "ObstacleDirection", - &asn_OP_NativeInteger, - asn_DEF_ObstacleDirection_tags_1, - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDirection_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDirection_tags_1) - /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ - { &asn_OER_type_ObstacleDirection_constr_1, &asn_PER_type_ObstacleDirection_constr_1, ObstacleDirection_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c b/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c deleted file mode 100644 index efddfb853..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ObstacleDistance.h" - -int -ObstacleDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ObstacleDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { - "ObstacleDistance", - "ObstacleDistance", - &asn_OP_NativeInteger, - asn_DEF_ObstacleDistance_tags_1, - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - asn_DEF_ObstacleDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleDistance_tags_1) - /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ - { &asn_OER_type_ObstacleDistance_constr_1, &asn_PER_type_ObstacleDistance_constr_1, ObstacleDistance_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleSize.c b/src/tmx/Asn_J2735/src/r63/ObstacleSize.c deleted file mode 100644 index 8edc1baf8..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObstacleSize.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ObstacleSize.h" - -asn_TYPE_member_t asn_MBR_ObstacleSize_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, width), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValue, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, length), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValue, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "length" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleSize, height), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValue, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "height" - }, -}; -static const int asn_MAP_ObstacleSize_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_ObstacleSize_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ObstacleSize_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* length */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* height */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1 = { - sizeof(struct ObstacleSize), - offsetof(struct ObstacleSize, _asn_ctx), - asn_MAP_ObstacleSize_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ObstacleSize_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleSize = { - "ObstacleSize", - "ObstacleSize", - &asn_OP_SEQUENCE, - asn_DEF_ObstacleSize_tags_1, - sizeof(asn_DEF_ObstacleSize_tags_1) - /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ - asn_DEF_ObstacleSize_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleSize_tags_1) - /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ObstacleSize_1, - 3, /* Elements count */ - &asn_SPC_ObstacleSize_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c b/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c deleted file mode 100644 index d5ddfbc43..000000000 --- a/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "ObstacleSizeConfidence.h" - -asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, widthConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "widthConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, lengthConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lengthConfidence" - }, - { ATF_POINTER, 1, offsetof(struct ObstacleSizeConfidence, heightConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heightConfidence" - }, -}; -static const int asn_MAP_ObstacleSizeConfidence_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_ObstacleSizeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ObstacleSizeConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* widthConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lengthConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* heightConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1 = { - sizeof(struct ObstacleSizeConfidence), - offsetof(struct ObstacleSizeConfidence, _asn_ctx), - asn_MAP_ObstacleSizeConfidence_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ObstacleSizeConfidence_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence = { - "ObstacleSizeConfidence", - "ObstacleSizeConfidence", - &asn_OP_SEQUENCE, - asn_DEF_ObstacleSizeConfidence_tags_1, - sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) - /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ - asn_DEF_ObstacleSizeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) - /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ObstacleSizeConfidence_1, - 3, /* Elements count */ - &asn_SPC_ObstacleSizeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B09.c b/src/tmx/Asn_J2735/src/r63/Offset-B09.c deleted file mode 100644 index 703c64119..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B09.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B09.h" - -int -Offset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -256 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B09_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-256..255) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B09_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B09 = { - "Offset-B09", - "Offset-B09", - &asn_OP_NativeInteger, - asn_DEF_Offset_B09_tags_1, - sizeof(asn_DEF_Offset_B09_tags_1) - /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ - asn_DEF_Offset_B09_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B09_tags_1) - /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B09_constr_1, &asn_PER_type_Offset_B09_constr_1, Offset_B09_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B10.c b/src/tmx/Asn_J2735/src/r63/Offset-B10.c deleted file mode 100644 index 2d72cb65a..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B10.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B10.h" - -int -Offset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -512 && value <= 511)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B10_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-512..511) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { - "Offset-B10", - "Offset-B10", - &asn_OP_NativeInteger, - asn_DEF_Offset_B10_tags_1, - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - asn_DEF_Offset_B10_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B10_tags_1) - /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B10_constr_1, &asn_PER_type_Offset_B10_constr_1, Offset_B10_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B11.c b/src/tmx/Asn_J2735/src/r63/Offset-B11.c deleted file mode 100644 index 10da634fd..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B11.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B11.h" - -int -Offset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1024 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B11_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-1024..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { - "Offset-B11", - "Offset-B11", - &asn_OP_NativeInteger, - asn_DEF_Offset_B11_tags_1, - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - asn_DEF_Offset_B11_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B11_tags_1) - /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B11_constr_1, &asn_PER_type_Offset_B11_constr_1, Offset_B11_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B12.c b/src/tmx/Asn_J2735/src/r63/Offset-B12.c deleted file mode 100644 index 05988da7e..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B12.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B12.h" - -int -Offset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { - "Offset-B12", - "Offset-B12", - &asn_OP_NativeInteger, - asn_DEF_Offset_B12_tags_1, - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - asn_DEF_Offset_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B12_tags_1) - /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B12_constr_1, &asn_PER_type_Offset_B12_constr_1, Offset_B12_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B13.c b/src/tmx/Asn_J2735/src/r63/Offset-B13.c deleted file mode 100644 index e2fbe471d..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B13.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B13.h" - -int -Offset_B13_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -4096 && value <= 4095)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B13_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-4096..4095) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { - "Offset-B13", - "Offset-B13", - &asn_OP_NativeInteger, - asn_DEF_Offset_B13_tags_1, - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - asn_DEF_Offset_B13_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B13_tags_1) - /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B13_constr_1, &asn_PER_type_Offset_B13_constr_1, Offset_B13_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B14.c b/src/tmx/Asn_J2735/src/r63/Offset-B14.c deleted file mode 100644 index 43d4fa2a0..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B14.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B14.h" - -int -Offset_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8192 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B14_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-8192..8191) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { - "Offset-B14", - "Offset-B14", - &asn_OP_NativeInteger, - asn_DEF_Offset_B14_tags_1, - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - asn_DEF_Offset_B14_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B14_tags_1) - /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B14_constr_1, &asn_PER_type_Offset_B14_constr_1, Offset_B14_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B16.c b/src/tmx/Asn_J2735/src/r63/Offset-B16.c deleted file mode 100644 index 9419138d8..000000000 --- a/src/tmx/Asn_J2735/src/r63/Offset-B16.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Offset-B16.h" - -int -Offset_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Offset_B16_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { - "Offset-B16", - "Offset-B16", - &asn_OP_NativeInteger, - asn_DEF_Offset_B16_tags_1, - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - asn_DEF_Offset_B16_tags_1, /* Same as above */ - sizeof(asn_DEF_Offset_B16_tags_1) - /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ - { &asn_OER_type_Offset_B16_constr_1, &asn_PER_type_Offset_B16_constr_1, Offset_B16_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c deleted file mode 100644 index b80d55b0d..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B12.h" - -int -OffsetLL_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12 = { - "OffsetLL-B12", - "OffsetLL-B12", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B12_tags_1, - sizeof(asn_DEF_OffsetLL_B12_tags_1) - /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B12_tags_1) - /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B12_constr_1, &asn_PER_type_OffsetLL_B12_constr_1, OffsetLL_B12_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c deleted file mode 100644 index 7e620ed68..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B14.h" - -int -OffsetLL_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8192 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-8192..8191) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14 = { - "OffsetLL-B14", - "OffsetLL-B14", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B14_tags_1, - sizeof(asn_DEF_OffsetLL_B14_tags_1) - /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B14_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B14_tags_1) - /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B14_constr_1, &asn_PER_type_OffsetLL_B14_constr_1, OffsetLL_B14_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c deleted file mode 100644 index 93ec83d52..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B16.h" - -int -OffsetLL_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B16_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16 = { - "OffsetLL-B16", - "OffsetLL-B16", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B16_tags_1, - sizeof(asn_DEF_OffsetLL_B16_tags_1) - /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B16_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B16_tags_1) - /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B16_constr_1, &asn_PER_type_OffsetLL_B16_constr_1, OffsetLL_B16_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c deleted file mode 100644 index 274bc112e..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B18.h" - -int -OffsetLL_B18_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -131072 && value <= 131071)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-131072..131071) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B18_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18 = { - "OffsetLL-B18", - "OffsetLL-B18", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B18_tags_1, - sizeof(asn_DEF_OffsetLL_B18_tags_1) - /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B18_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B18_tags_1) - /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B18_constr_1, &asn_PER_type_OffsetLL_B18_constr_1, OffsetLL_B18_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c deleted file mode 100644 index ac971b818..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B22.h" - -int -OffsetLL_B22_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2097152 && value <= 2097151)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-2097152..2097151) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 22, -1, -2097152, 2097151 } /* (-2097152..2097151) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B22_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22 = { - "OffsetLL-B22", - "OffsetLL-B22", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B22_tags_1, - sizeof(asn_DEF_OffsetLL_B22_tags_1) - /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B22_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B22_tags_1) - /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B22_constr_1, &asn_PER_type_OffsetLL_B22_constr_1, OffsetLL_B22_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c deleted file mode 100644 index 1912fbf48..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetLL-B24.h" - -int -OffsetLL_B24_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8388608 && value <= 8388607)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-8388608..8388607) */, - -1}; -asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 24, -1, -8388608, 8388607 } /* (-8388608..8388607) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_OffsetLL_B24_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24 = { - "OffsetLL-B24", - "OffsetLL-B24", - &asn_OP_NativeInteger, - asn_DEF_OffsetLL_B24_tags_1, - sizeof(asn_DEF_OffsetLL_B24_tags_1) - /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ - asn_DEF_OffsetLL_B24_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetLL_B24_tags_1) - /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ - { &asn_OER_type_OffsetLL_B24_constr_1, &asn_PER_type_OffsetLL_B24_constr_1, OffsetLL_B24_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetPoint.c b/src/tmx/Asn_J2735/src/r63/OffsetPoint.c deleted file mode 100644 index 3572ed0d9..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetPoint.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetPoint.h" - -static int -memb_deltax_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_deltay_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_deltax_constr_2 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_deltax_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_deltay_constr_3 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_deltay_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_OffsetPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltax), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_deltax_constr_2, &asn_PER_memb_deltax_constr_2, memb_deltax_constraint_1 }, - 0, 0, /* No default value */ - "deltax" - }, - { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltay), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_deltay_constr_3, &asn_PER_memb_deltay_constr_3, memb_deltay_constraint_1 }, - 0, 0, /* No default value */ - "deltay" - }, -}; -static const ber_tlv_tag_t asn_DEF_OffsetPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_OffsetPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* deltax */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* deltay */ -}; -asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1 = { - sizeof(struct OffsetPoint), - offsetof(struct OffsetPoint, _asn_ctx), - asn_MAP_OffsetPoint_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_OffsetPoint = { - "OffsetPoint", - "OffsetPoint", - &asn_OP_SEQUENCE, - asn_DEF_OffsetPoint_tags_1, - sizeof(asn_DEF_OffsetPoint_tags_1) - /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ - asn_DEF_OffsetPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetPoint_tags_1) - /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_OffsetPoint_1, - 2, /* Elements count */ - &asn_SPC_OffsetPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OffsetSystem.c b/src/tmx/Asn_J2735/src/r63/OffsetSystem.c deleted file mode 100644 index 40ce5a4cc..000000000 --- a/src/tmx/Asn_J2735/src/r63/OffsetSystem.c +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OffsetSystem.h" - -static asn_oer_constraints_t asn_OER_type_offset_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_offset_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_offset_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.xy), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "xy" - }, - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.ll), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ll" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_offset_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xy */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ll */ -}; -static asn_CHOICE_specifics_t asn_SPC_offset_specs_3 = { - sizeof(struct OffsetSystem__offset), - offsetof(struct OffsetSystem__offset, _asn_ctx), - offsetof(struct OffsetSystem__offset, present), - sizeof(((struct OffsetSystem__offset *)0)->present), - asn_MAP_offset_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offset_3 = { - "offset", - "offset", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_offset_constr_3, &asn_PER_type_offset_constr_3, CHOICE_constraint }, - asn_MBR_offset_3, - 2, /* Elements count */ - &asn_SPC_offset_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_OffsetSystem_1[] = { - { ATF_POINTER, 1, offsetof(struct OffsetSystem, scale), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Zoom, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "scale" - }, - { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem, offset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_offset_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset" - }, -}; -static const int asn_MAP_OffsetSystem_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_OffsetSystem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_OffsetSystem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scale */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1 = { - sizeof(struct OffsetSystem), - offsetof(struct OffsetSystem, _asn_ctx), - asn_MAP_OffsetSystem_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_OffsetSystem_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_OffsetSystem = { - "OffsetSystem", - "OffsetSystem", - &asn_OP_SEQUENCE, - asn_DEF_OffsetSystem_tags_1, - sizeof(asn_DEF_OffsetSystem_tags_1) - /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ - asn_DEF_OffsetSystem_tags_1, /* Same as above */ - sizeof(asn_DEF_OffsetSystem_tags_1) - /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_OffsetSystem_1, - 2, /* Elements count */ - &asn_SPC_OffsetSystem_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c b/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c deleted file mode 100644 index 98e79ad99..000000000 --- a/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "OverlayLaneList.h" - -static asn_oer_constraints_t asn_OER_type_OverlayLaneList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { - sizeof(struct OverlayLaneList), - offsetof(struct OverlayLaneList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { - "OverlayLaneList", - "OverlayLaneList", - &asn_OP_SEQUENCE_OF, - asn_DEF_OverlayLaneList_tags_1, - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - asn_DEF_OverlayLaneList_tags_1, /* Same as above */ - sizeof(asn_DEF_OverlayLaneList_tags_1) - /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ - { &asn_OER_type_OverlayLaneList_constr_1, &asn_PER_type_OverlayLaneList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_OverlayLaneList_1, - 1, /* Single element */ - &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PartII-Id.c b/src/tmx/Asn_J2735/src/r63/PartII-Id.c deleted file mode 100644 index 167dc3b56..000000000 --- a/src/tmx/Asn_J2735/src/r63/PartII-Id.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "PartII-Id.h" - -int -PartII_Id_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PartII_Id_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..63) */, - -1}; -asn_per_constraints_t asn_PER_type_PartII_Id_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PartII_Id_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PartII_Id = { - "PartII-Id", - "PartII-Id", - &asn_OP_NativeInteger, - asn_DEF_PartII_Id_tags_1, - sizeof(asn_DEF_PartII_Id_tags_1) - /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ - asn_DEF_PartII_Id_tags_1, /* Same as above */ - sizeof(asn_DEF_PartII_Id_tags_1) - /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ - { &asn_OER_type_PartII_Id_constr_1, &asn_PER_type_PartII_Id_constr_1, PartII_Id_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PartIIcontent.c b/src/tmx/Asn_J2735/src/r63/PartIIcontent.c deleted file mode 100644 index 0b65b3a17..000000000 --- a/src/tmx/Asn_J2735/src/r63/PartIIcontent.c +++ /dev/null @@ -1,284 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#include "PartIIcontent.h" - -static const long asn_VAL_1_vehicleSafetyExt = 0; -static const long asn_VAL_2_specialVehicleExt = 1; -static const long asn_VAL_3_supplementalVehicleExt = 2; -static const asn_ioc_cell_t asn_IOS_BSMpartIIExtension_1_rows[] = { - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_1_vehicleSafetyExt }, - { "&Type", aioc__type, &asn_DEF_VehicleSafetyExtensions }, - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_2_specialVehicleExt }, - { "&Type", aioc__type, &asn_DEF_SpecialVehicleExtensions }, - { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_3_supplementalVehicleExt }, - { "&Type", aioc__type, &asn_DEF_SupplementalVehicleExtensions } -}; -static const asn_ioc_set_t asn_IOS_BSMpartIIExtension_1[] = { - { 3, 2, asn_IOS_BSMpartIIExtension_1_rows } -}; -static int -memb_partII_Id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 63L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_BSMpartIIExtension_partII_Value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_BSMpartIIExtension_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct BSMpartIIExtension, partII_Id)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_partII_Value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_Id_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..63) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_Id_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_partII_Value_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_partII_Value_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_partII_Value_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.VehicleSafetyExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleSafetyExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "VehicleSafetyExtensions" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SpecialVehicleExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SpecialVehicleExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SpecialVehicleExtensions" - }, - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SupplementalVehicleExtensions), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SupplementalVehicleExtensions, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "SupplementalVehicleExtensions" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_partII_Value_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* VehicleSafetyExtensions */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* SpecialVehicleExtensions */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* SupplementalVehicleExtensions */ -}; -static asn_CHOICE_specifics_t asn_SPC_partII_Value_specs_3 = { - sizeof(struct BSMpartIIExtension__partII_Value), - offsetof(struct BSMpartIIExtension__partII_Value, _asn_ctx), - offsetof(struct BSMpartIIExtension__partII_Value, present), - sizeof(((struct BSMpartIIExtension__partII_Value *)0)->present), - asn_MAP_partII_Value_tag2el_3, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_partII_Value_3 = { - "partII-Value", - "partII-Value", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_partII_Value_3, - 3, /* Elements count */ - &asn_SPC_partII_Value_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PartII_Id, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_Id_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_Id_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_Id_constraint_1 - }, - 0, 0, /* No default value */ - "partII-Id" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Value), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_partII_Value_3, - select_BSMpartIIExtension_partII_Value_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_partII_Value_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_partII_Value_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_partII_Value_constraint_1 - }, - 0, 0, /* No default value */ - "partII-Value" - }, -}; -static const ber_tlv_tag_t asn_DEF_BSMpartIIExtension_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_BSMpartIIExtension_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* partII-Id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* partII-Value */ -}; -asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1 = { - sizeof(struct BSMpartIIExtension), - offsetof(struct BSMpartIIExtension, _asn_ctx), - asn_MAP_BSMpartIIExtension_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension = { - "BSMpartIIExtension", - "BSMpartIIExtension", - &asn_OP_SEQUENCE, - asn_DEF_BSMpartIIExtension_tags_1, - sizeof(asn_DEF_BSMpartIIExtension_tags_1) - /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ - asn_DEF_BSMpartIIExtension_tags_1, /* Same as above */ - sizeof(asn_DEF_BSMpartIIExtension_tags_1) - /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_BSMpartIIExtension_1, - 2, /* Elements count */ - &asn_SPC_BSMpartIIExtension_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PathHistory.c b/src/tmx/Asn_J2735/src/r63/PathHistory.c deleted file mode 100644 index 1356924a7..000000000 --- a/src/tmx/Asn_J2735/src/r63/PathHistory.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PathHistory.h" - -asn_TYPE_member_t asn_MBR_PathHistory_1[] = { - { ATF_POINTER, 2, offsetof(struct PathHistory, initialPosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "initialPosition" - }, - { ATF_POINTER, 1, offsetof(struct PathHistory, currGNSSstatus), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "currGNSSstatus" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistoryPointList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crumbData" - }, -}; -static const int asn_MAP_PathHistory_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGNSSstatus */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* crumbData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { - sizeof(struct PathHistory), - offsetof(struct PathHistory, _asn_ctx), - asn_MAP_PathHistory_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PathHistory_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistory = { - "PathHistory", - "PathHistory", - &asn_OP_SEQUENCE, - asn_DEF_PathHistory_tags_1, - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - asn_DEF_PathHistory_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistory_tags_1) - /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PathHistory_1, - 3, /* Elements count */ - &asn_SPC_PathHistory_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c b/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c deleted file mode 100644 index 5d0b2e7c6..000000000 --- a/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PathHistoryPoint.h" - -asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, latOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "latOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, lonOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lonOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, timeOffset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeOffset" - }, - { ATF_POINTER, 3, offsetof(struct PathHistoryPoint, speed), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Speed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_POINTER, 2, offsetof(struct PathHistoryPoint, posAccuracy), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "posAccuracy" - }, - { ATF_POINTER, 1, offsetof(struct PathHistoryPoint, heading), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoarseHeading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, -}; -static const int asn_MAP_PathHistoryPoint_oms_1[] = { 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_PathHistoryPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathHistoryPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lonOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* posAccuracy */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* heading */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1 = { - sizeof(struct PathHistoryPoint), - offsetof(struct PathHistoryPoint, _asn_ctx), - asn_MAP_PathHistoryPoint_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_PathHistoryPoint_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint = { - "PathHistoryPoint", - "PathHistoryPoint", - &asn_OP_SEQUENCE, - asn_DEF_PathHistoryPoint_tags_1, - sizeof(asn_DEF_PathHistoryPoint_tags_1) - /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPoint_tags_1) - /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PathHistoryPoint_1, - 7, /* Elements count */ - &asn_SPC_PathHistoryPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c b/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c deleted file mode 100644 index c71ca4e64..000000000 --- a/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PathHistoryPointList.h" - -static asn_oer_constraints_t asn_OER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..23)) */}; -asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PathHistoryPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PathHistoryPointList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1 = { - sizeof(struct PathHistoryPointList), - offsetof(struct PathHistoryPointList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList = { - "PathHistoryPointList", - "PathHistoryPointList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PathHistoryPointList_tags_1, - sizeof(asn_DEF_PathHistoryPointList_tags_1) - /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ - asn_DEF_PathHistoryPointList_tags_1, /* Same as above */ - sizeof(asn_DEF_PathHistoryPointList_tags_1) - /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ - { &asn_OER_type_PathHistoryPointList_constr_1, &asn_PER_type_PathHistoryPointList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_PathHistoryPointList_1, - 1, /* Single element */ - &asn_SPC_PathHistoryPointList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PathNode.c b/src/tmx/Asn_J2735/src/r63/PathNode.c deleted file mode 100644 index 4e36b9467..000000000 --- a/src/tmx/Asn_J2735/src/r63/PathNode.c +++ /dev/null @@ -1,214 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PathNode.h" - -static int -memb_x_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_y_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_z_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32768 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_width_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_x_constr_2 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_x_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_y_constr_3 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_y_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_z_constr_4 CC_NOTUSED = { - { 2, 0 } /* (-32768..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_z_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_width_constr_5 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -static asn_per_constraints_t asn_PER_memb_width_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PathNode_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathNode, x), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_x_constr_2, &asn_PER_memb_x_constr_2, memb_x_constraint_1 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathNode, y), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_y_constr_3, &asn_PER_memb_y_constr_3, memb_y_constraint_1 }, - 0, 0, /* No default value */ - "y" - }, - { ATF_POINTER, 2, offsetof(struct PathNode, z), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_z_constr_4, &asn_PER_memb_z_constr_4, memb_z_constraint_1 }, - 0, 0, /* No default value */ - "z" - }, - { ATF_POINTER, 1, offsetof(struct PathNode, width), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_width_constr_5, &asn_PER_memb_width_constr_5, memb_width_constraint_1 }, - 0, 0, /* No default value */ - "width" - }, -}; -static const int asn_MAP_PathNode_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_PathNode_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathNode_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* x */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, -1, 0 }, /* y */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* z */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 } /* width */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1 = { - sizeof(struct PathNode), - offsetof(struct PathNode, _asn_ctx), - asn_MAP_PathNode_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_PathNode_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathNode = { - "PathNode", - "PathNode", - &asn_OP_SEQUENCE, - asn_DEF_PathNode_tags_1, - sizeof(asn_DEF_PathNode_tags_1) - /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ - asn_DEF_PathNode_tags_1, /* Same as above */ - sizeof(asn_DEF_PathNode_tags_1) - /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PathNode_1, - 4, /* Elements count */ - &asn_SPC_PathNode_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PathPrediction.c b/src/tmx/Asn_J2735/src/r63/PathPrediction.c deleted file mode 100644 index 129312014..000000000 --- a/src/tmx/Asn_J2735/src/r63/PathPrediction.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PathPrediction.h" - -asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RadiusOfCurvature, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "radiusOfCurve" - }, - { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Confidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, -}; -static const ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { - sizeof(struct PathPrediction), - offsetof(struct PathPrediction, _asn_ctx), - asn_MAP_PathPrediction_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PathPrediction = { - "PathPrediction", - "PathPrediction", - &asn_OP_SEQUENCE, - asn_DEF_PathPrediction_tags_1, - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - asn_DEF_PathPrediction_tags_1, /* Same as above */ - sizeof(asn_DEF_PathPrediction_tags_1) - /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PathPrediction_1, - 2, /* Elements count */ - &asn_SPC_PathPrediction_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PayloadData.c b/src/tmx/Asn_J2735/src/r63/PayloadData.c deleted file mode 100644 index 1db29915c..000000000 --- a/src/tmx/Asn_J2735/src/r63/PayloadData.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PayloadData.h" - -int -PayloadData_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 2048)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PayloadData_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2048)) */}; -static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PayloadData = { - "PayloadData", - "PayloadData", - &asn_OP_OCTET_STRING, - asn_DEF_PayloadData_tags_1, - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - asn_DEF_PayloadData_tags_1, /* Same as above */ - sizeof(asn_DEF_PayloadData_tags_1) - /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ - { &asn_OER_type_PayloadData_constr_1, &asn_PER_type_PayloadData_constr_1, PayloadData_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c deleted file mode 100644 index c488c7f87..000000000 --- a/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PedestrianBicycleDetect.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { - "PedestrianBicycleDetect", - "PedestrianBicycleDetect", - &asn_OP_BOOLEAN, - asn_DEF_PedestrianBicycleDetect_tags_1, - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ - sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) - /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c b/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c deleted file mode 100644 index 1e1abf1ea..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalAssistive.h" - -int -PersonalAssistive_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PersonalAssistive_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { - "PersonalAssistive", - "PersonalAssistive", - &asn_OP_BIT_STRING, - asn_DEF_PersonalAssistive_tags_1, - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - asn_DEF_PersonalAssistive_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalAssistive_tags_1) - /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ - { &asn_OER_type_PersonalAssistive_constr_1, &asn_PER_type_PersonalAssistive_constr_1, PersonalAssistive_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c deleted file mode 100644 index 490f0ccfc..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalClusterRadius.h" - -int -PersonalClusterRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { - "PersonalClusterRadius", - "PersonalClusterRadius", - &asn_OP_NativeInteger, - asn_DEF_PersonalClusterRadius_tags_1, - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalClusterRadius_tags_1) - /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ - { &asn_OER_type_PersonalClusterRadius_constr_1, &asn_PER_type_PersonalClusterRadius_constr_1, PersonalClusterRadius_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c deleted file mode 100644 index 918dd6011..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalCrossingInProgress.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { - "PersonalCrossingInProgress", - "PersonalCrossingInProgress", - &asn_OP_BOOLEAN, - asn_DEF_PersonalCrossingInProgress_tags_1, - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) - /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c deleted file mode 100644 index fb82da6e8..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalCrossingRequest.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { - "PersonalCrossingRequest", - "PersonalCrossingRequest", - &asn_OP_BOOLEAN, - asn_DEF_PersonalCrossingRequest_tags_1, - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalCrossingRequest_tags_1) - /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c deleted file mode 100644 index 9ed3525f1..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalDeviceUsageState.h" - -int -PersonalDeviceUsageState_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { - "PersonalDeviceUsageState", - "PersonalDeviceUsageState", - &asn_OP_BIT_STRING, - asn_DEF_PersonalDeviceUsageState_tags_1, - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) - /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ - { &asn_OER_type_PersonalDeviceUsageState_constr_1, &asn_PER_type_PersonalDeviceUsageState_constr_1, PersonalDeviceUsageState_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c deleted file mode 100644 index 9492d3e0b..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalDeviceUserType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "aPEDESTRIAN" }, - { 2, 13, "aPEDALCYCLIST" }, - { 3, 19, "aPUBLICSAFETYWORKER" }, - { 4, 8, "anANIMAL" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { - 2, /* aPEDALCYCLIST(2) */ - 1, /* aPEDESTRIAN(1) */ - 3, /* aPUBLICSAFETYWORKER(3) */ - 4, /* anANIMAL(4) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { - asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ - 5, /* Number of elements in the maps */ - 6, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { - "PersonalDeviceUserType", - "PersonalDeviceUserType", - &asn_OP_NativeEnumerated, - asn_DEF_PersonalDeviceUserType_tags_1, - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalDeviceUserType_tags_1) - /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ - { &asn_OER_type_PersonalDeviceUserType_constr_1, &asn_PER_type_PersonalDeviceUserType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c deleted file mode 100644 index a73dc46fd..000000000 --- a/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c +++ /dev/null @@ -1,381 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PersonalSafetyMessage.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_27 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_27 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_27[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_27[] = { - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_27 = { - sizeof(struct PersonalSafetyMessage__regional), - offsetof(struct PersonalSafetyMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_27 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_27, - sizeof(asn_DEF_regional_tags_27) - /sizeof(asn_DEF_regional_tags_27[0]) - 1, /* 1 */ - asn_DEF_regional_tags_27, /* Same as above */ - sizeof(asn_DEF_regional_tags_27) - /sizeof(asn_DEF_regional_tags_27[0]), /* 2 */ - { &asn_OER_type_regional_constr_27, &asn_PER_type_regional_constr_27, SEQUENCE_OF_constraint }, - asn_MBR_regional_27, - 1, /* Single element */ - &asn_SPC_regional_specs_27 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUserType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "secMark" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accuracy" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Heading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 18, offsetof(struct PersonalSafetyMessage, accelSet), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accelSet" - }, - { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathHistory" - }, - { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, propulsion), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_PropelledInformation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "propulsion" - }, - { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, useState), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalDeviceUsageState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "useState" - }, - { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, crossRequest), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crossRequest" - }, - { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossState), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalCrossingInProgress, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crossState" - }, - { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, clusterSize), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NumberOfParticipantsInCluster, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "clusterSize" - }, - { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterRadius), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalClusterRadius, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "clusterRadius" - }, - { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, eventResponderType), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyEventResponderWorkerType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eventResponderType" - }, - { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, activityType), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyAndRoadWorkerActivity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "activityType" - }, - { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activitySubType), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PublicSafetyDirectingTrafficSubType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "activitySubType" - }, - { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, assistType), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PersonalAssistive, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "assistType" - }, - { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, sizing), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UserSizeAndBehaviour, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sizing" - }, - { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, attachment), - (ASN_TAG_CLASS_CONTEXT | (22 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Attachment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "attachment" - }, - { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachmentRadius), - (ASN_TAG_CLASS_CONTEXT | (23 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AttachmentRadius, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "attachmentRadius" - }, - { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, animalType), - (ASN_TAG_CLASS_CONTEXT | (24 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "animalType" - }, - { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (25 << 2)), - 0, - &asn_DEF_regional_27, - 0, - { &asn_OER_memb_regional_constr_27, &asn_PER_memb_regional_constr_27, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }; -static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ - { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ - { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ - { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ - { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { - sizeof(struct PersonalSafetyMessage), - offsetof(struct PersonalSafetyMessage, _asn_ctx), - asn_MAP_PersonalSafetyMessage_tag2el_1, - 26, /* Count of tags in the map */ - asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ - 18, 0, /* Root/Additions */ - 26, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { - "PersonalSafetyMessage", - "PersonalSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_PersonalSafetyMessage_tags_1, - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_PersonalSafetyMessage_tags_1) - /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PersonalSafetyMessage_1, - 26, /* Elements count */ - &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PitchDetected.c b/src/tmx/Asn_J2735/src/r63/PitchDetected.c deleted file mode 100644 index 531398fb6..000000000 --- a/src/tmx/Asn_J2735/src/r63/PitchDetected.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "PitchDetected.h" - -int -PitchDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -7200 && value <= 7200)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PitchDetected_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-7200..7200) */, - -1}; -asn_per_constraints_t asn_PER_type_PitchDetected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, -7200, 7200 } /* (-7200..7200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PitchDetected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PitchDetected = { - "PitchDetected", - "PitchDetected", - &asn_OP_NativeInteger, - asn_DEF_PitchDetected_tags_1, - sizeof(asn_DEF_PitchDetected_tags_1) - /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ - asn_DEF_PitchDetected_tags_1, /* Same as above */ - sizeof(asn_DEF_PitchDetected_tags_1) - /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ - { &asn_OER_type_PitchDetected_constr_1, &asn_PER_type_PitchDetected_constr_1, PitchDetected_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PitchRate.c b/src/tmx/Asn_J2735/src/r63/PitchRate.c deleted file mode 100644 index 368ba352d..000000000 --- a/src/tmx/Asn_J2735/src/r63/PitchRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "PitchRate.h" - -int -PitchRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PitchRate_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_PitchRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PitchRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PitchRate = { - "PitchRate", - "PitchRate", - &asn_OP_NativeInteger, - asn_DEF_PitchRate_tags_1, - sizeof(asn_DEF_PitchRate_tags_1) - /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ - asn_DEF_PitchRate_tags_1, /* Same as above */ - sizeof(asn_DEF_PitchRate_tags_1) - /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ - { &asn_OER_type_PitchRate_constr_1, &asn_PER_type_PitchRate_constr_1, PitchRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c b/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c deleted file mode 100644 index d510e4c1f..000000000 --- a/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "PitchRateConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PitchRateConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "degSec-100-00" }, - { 2, 13, "degSec-010-00" }, - { 3, 13, "degSec-005-00" }, - { 4, 13, "degSec-001-00" }, - { 5, 13, "degSec-000-10" }, - { 6, 13, "degSec-000-05" }, - { 7, 13, "degSec-000-01" } -}; -static const unsigned int asn_MAP_PitchRateConfidence_enum2value_1[] = { - 7, /* degSec-000-01(7) */ - 6, /* degSec-000-05(6) */ - 5, /* degSec-000-10(5) */ - 4, /* degSec-001-00(4) */ - 3, /* degSec-005-00(3) */ - 2, /* degSec-010-00(2) */ - 1, /* degSec-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1 = { - asn_MAP_PitchRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PitchRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PitchRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence = { - "PitchRateConfidence", - "PitchRateConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_PitchRateConfidence_tags_1, - sizeof(asn_DEF_PitchRateConfidence_tags_1) - /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_PitchRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_PitchRateConfidence_tags_1) - /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_PitchRateConfidence_constr_1, &asn_PER_type_PitchRateConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PitchRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c b/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c deleted file mode 100644 index ffcda06c5..000000000 --- a/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PivotPointDescription.h" - -asn_TYPE_member_t asn_MBR_PivotPointDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B11, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pivotOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotAngle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Angle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pivotAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivots), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotingAllowed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pivots" - }, -}; -static const ber_tlv_tag_t asn_DEF_PivotPointDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PivotPointDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pivotAngle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pivots */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1 = { - sizeof(struct PivotPointDescription), - offsetof(struct PivotPointDescription, _asn_ctx), - asn_MAP_PivotPointDescription_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PivotPointDescription = { - "PivotPointDescription", - "PivotPointDescription", - &asn_OP_SEQUENCE, - asn_DEF_PivotPointDescription_tags_1, - sizeof(asn_DEF_PivotPointDescription_tags_1) - /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ - asn_DEF_PivotPointDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_PivotPointDescription_tags_1) - /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PivotPointDescription_1, - 3, /* Elements count */ - &asn_SPC_PivotPointDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c b/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c deleted file mode 100644 index 3652b7068..000000000 --- a/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PivotingAllowed.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_PivotingAllowed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PivotingAllowed = { - "PivotingAllowed", - "PivotingAllowed", - &asn_OP_BOOLEAN, - asn_DEF_PivotingAllowed_tags_1, - sizeof(asn_DEF_PivotingAllowed_tags_1) - /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ - asn_DEF_PivotingAllowed_tags_1, /* Same as above */ - sizeof(asn_DEF_PivotingAllowed_tags_1) - /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Point.c b/src/tmx/Asn_J2735/src/r63/Point.c deleted file mode 100644 index 3b58c196d..000000000 --- a/src/tmx/Asn_J2735/src/r63/Point.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Point.h" - -asn_TYPE_member_t asn_MBR_Point_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Point, x), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "x" - }, - { ATF_NOFLAGS, 0, offsetof(struct Point, y), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "y" - }, - { ATF_POINTER, 1, offsetof(struct Point, z), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "z" - }, - { ATF_NOFLAGS, 0, offsetof(struct Point, width), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "width" - }, -}; -static const int asn_MAP_Point_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_Point_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Point_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* y */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* z */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* width */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1 = { - sizeof(struct Point), - offsetof(struct Point, _asn_ctx), - asn_MAP_Point_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Point_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Point = { - "Point", - "Point", - &asn_OP_SEQUENCE, - asn_DEF_Point_tags_1, - sizeof(asn_DEF_Point_tags_1) - /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ - asn_DEF_Point_tags_1, /* Same as above */ - sizeof(asn_DEF_Point_tags_1) - /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Point_1, - 4, /* Elements count */ - &asn_SPC_Point_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c deleted file mode 100644 index 6d8f62659..000000000 --- a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Position3D-addGrpB.h" - -static asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, latitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LatitudeDMS2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "latitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, longitude), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LongitudeDMS2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "longitude" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AddGrpB_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevation" - }, -}; -static const ber_tlv_tag_t asn_DEF_Position3D_addGrpB_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpB_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1 = { - sizeof(struct Position3D_addGrpB), - offsetof(struct Position3D_addGrpB, _asn_ctx), - asn_MAP_Position3D_addGrpB_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB = { - "Position3D-addGrpB", - "Position3D-addGrpB", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_addGrpB_tags_1, - sizeof(asn_DEF_Position3D_addGrpB_tags_1) - /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ - asn_DEF_Position3D_addGrpB_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_addGrpB_tags_1) - /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Position3D_addGrpB_1, - 3, /* Elements count */ - &asn_SPC_Position3D_addGrpB_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c deleted file mode 100644 index 146730c60..000000000 --- a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Position3D-addGrpC.h" - -static asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpC, altitude), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Altitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "altitude" - }, -}; -static const ber_tlv_tag_t asn_DEF_Position3D_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1 = { - sizeof(struct Position3D_addGrpC), - offsetof(struct Position3D_addGrpC, _asn_ctx), - asn_MAP_Position3D_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC = { - "Position3D-addGrpC", - "Position3D-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_addGrpC_tags_1, - sizeof(asn_DEF_Position3D_addGrpC_tags_1) - /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_Position3D_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_addGrpC_tags_1) - /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Position3D_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_Position3D_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c deleted file mode 100644 index 67422080d..000000000 --- a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpCarma" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#include "Position3D-addGrpCarma.h" - -asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, lat), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "long" - }, - { ATF_POINTER, 1, offsetof(struct Position3D_addGrpCarma, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "elevation" - }, -}; -static const int asn_MAP_Position3D_addGrpCarma_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_Position3D_addGrpCarma_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpCarma_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1 = { - sizeof(struct Position3D_addGrpCarma), - offsetof(struct Position3D_addGrpCarma, _asn_ctx), - asn_MAP_Position3D_addGrpCarma_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_Position3D_addGrpCarma_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma = { - "Position3D-addGrpCarma", - "Position3D-addGrpCarma", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_addGrpCarma_tags_1, - sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) - /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ - asn_DEF_Position3D_addGrpCarma_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) - /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Position3D_addGrpCarma_1, - 3, /* Elements count */ - &asn_SPC_Position3D_addGrpCarma_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Position3D.c b/src/tmx/Asn_J2735/src/r63/Position3D.c deleted file mode 100644 index 4d093646c..000000000 --- a/src/tmx/Asn_J2735/src/r63/Position3D.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Position3D.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct Position3D__regional), - offsetof(struct Position3D__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Position3D_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lat" - }, - { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "long" - }, - { ATF_POINTER, 2, offsetof(struct Position3D, elevation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_POINTER, 1, offsetof(struct Position3D, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_Position3D_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { - sizeof(struct Position3D), - offsetof(struct Position3D, _asn_ctx), - asn_MAP_Position3D_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_Position3D_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Position3D = { - "Position3D", - "Position3D", - &asn_OP_SEQUENCE, - asn_DEF_Position3D_tags_1, - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - asn_DEF_Position3D_tags_1, /* Same as above */ - sizeof(asn_DEF_Position3D_tags_1) - /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Position3D_1, - 4, /* Elements count */ - &asn_SPC_Position3D_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PositionConfidence.c b/src/tmx/Asn_J2735/src/r63/PositionConfidence.c deleted file mode 100644 index 691168dd9..000000000 --- a/src/tmx/Asn_J2735/src/r63/PositionConfidence.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PositionConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PositionConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 5, "a500m" }, - { 2, 5, "a200m" }, - { 3, 5, "a100m" }, - { 4, 4, "a50m" }, - { 5, 4, "a20m" }, - { 6, 4, "a10m" }, - { 7, 3, "a5m" }, - { 8, 3, "a2m" }, - { 9, 3, "a1m" }, - { 10, 5, "a50cm" }, - { 11, 5, "a20cm" }, - { 12, 5, "a10cm" }, - { 13, 4, "a5cm" }, - { 14, 4, "a2cm" }, - { 15, 4, "a1cm" } -}; -static const unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { - 3, /* a100m(3) */ - 12, /* a10cm(12) */ - 6, /* a10m(6) */ - 15, /* a1cm(15) */ - 9, /* a1m(9) */ - 2, /* a200m(2) */ - 11, /* a20cm(11) */ - 5, /* a20m(5) */ - 14, /* a2cm(14) */ - 8, /* a2m(8) */ - 1, /* a500m(1) */ - 10, /* a50cm(10) */ - 4, /* a50m(4) */ - 13, /* a5cm(13) */ - 7, /* a5m(7) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { - asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { - "PositionConfidence", - "PositionConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_PositionConfidence_tags_1, - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidence_tags_1) - /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_PositionConfidence_constr_1, &asn_PER_type_PositionConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c deleted file mode 100644 index 54e822b94..000000000 --- a/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PositionConfidenceSet.h" - -asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, pos), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pos" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, elevation), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ElevationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevation" - }, -}; -static const ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PositionConfidenceSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pos */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* elevation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1 = { - sizeof(struct PositionConfidenceSet), - offsetof(struct PositionConfidenceSet, _asn_ctx), - asn_MAP_PositionConfidenceSet_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { - "PositionConfidenceSet", - "PositionConfidenceSet", - &asn_OP_SEQUENCE, - asn_DEF_PositionConfidenceSet_tags_1, - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionConfidenceSet_tags_1) - /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PositionConfidenceSet_1, - 2, /* Elements count */ - &asn_SPC_PositionConfidenceSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c b/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c deleted file mode 100644 index fd2d344d1..000000000 --- a/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "PositionOffsetXYZ.h" - -asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetX), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetX" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetY), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetY" - }, - { ATF_POINTER, 1, offsetof(struct PositionOffsetXYZ, offsetZ), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObjectDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetZ" - }, -}; -static const int asn_MAP_PositionOffsetXYZ_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_PositionOffsetXYZ_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PositionOffsetXYZ_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1 = { - sizeof(struct PositionOffsetXYZ), - offsetof(struct PositionOffsetXYZ, _asn_ctx), - asn_MAP_PositionOffsetXYZ_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PositionOffsetXYZ_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ = { - "PositionOffsetXYZ", - "PositionOffsetXYZ", - &asn_OP_SEQUENCE, - asn_DEF_PositionOffsetXYZ_tags_1, - sizeof(asn_DEF_PositionOffsetXYZ_tags_1) - /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ - asn_DEF_PositionOffsetXYZ_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionOffsetXYZ_tags_1) - /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PositionOffsetXYZ_1, - 3, /* Elements count */ - &asn_SPC_PositionOffsetXYZ_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c deleted file mode 100644 index 2292b379b..000000000 --- a/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PositionalAccuracy.h" - -asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMajor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMajorAxisAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "semiMajor" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMinor), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMinorAxisAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "semiMinor" - }, - { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, orientation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SemiMajorAxisOrientation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "orientation" - }, -}; -static const ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PositionalAccuracy_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* semiMajor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiMinor */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* orientation */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1 = { - sizeof(struct PositionalAccuracy), - offsetof(struct PositionalAccuracy, _asn_ctx), - asn_MAP_PositionalAccuracy_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { - "PositionalAccuracy", - "PositionalAccuracy", - &asn_OP_SEQUENCE, - asn_DEF_PositionalAccuracy_tags_1, - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_PositionalAccuracy_tags_1) - /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PositionalAccuracy_1, - 3, /* Elements count */ - &asn_SPC_PositionalAccuracy_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c deleted file mode 100644 index 11a977ee3..000000000 --- a/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PreemptPriorityList.h" - -static asn_oer_constraints_t asn_OER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalControlZone, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { - sizeof(struct PreemptPriorityList), - offsetof(struct PreemptPriorityList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { - "PreemptPriorityList", - "PreemptPriorityList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PreemptPriorityList_tags_1, - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ - sizeof(asn_DEF_PreemptPriorityList_tags_1) - /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ - { &asn_OER_type_PreemptPriorityList_constr_1, &asn_PER_type_PreemptPriorityList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_PreemptPriorityList_1, - 1, /* Single element */ - &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c deleted file mode 100644 index 39118bdc3..000000000 --- a/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PrioritizationResponse.h" - -asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "priorState" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "signalGroup" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { - sizeof(struct PrioritizationResponse), - offsetof(struct PrioritizationResponse, _asn_ctx), - asn_MAP_PrioritizationResponse_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { - "PrioritizationResponse", - "PrioritizationResponse", - &asn_OP_SEQUENCE, - asn_DEF_PrioritizationResponse_tags_1, - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponse_tags_1) - /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PrioritizationResponse_1, - 3, /* Elements count */ - &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c deleted file mode 100644 index 7092944cb..000000000 --- a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PrioritizationResponseList.h" - -static asn_oer_constraints_t asn_OER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..10)) */}; -asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PrioritizationResponse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { - sizeof(struct PrioritizationResponseList), - offsetof(struct PrioritizationResponseList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { - "PrioritizationResponseList", - "PrioritizationResponseList", - &asn_OP_SEQUENCE_OF, - asn_DEF_PrioritizationResponseList_tags_1, - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseList_tags_1) - /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ - { &asn_OER_type_PrioritizationResponseList_constr_1, &asn_PER_type_PrioritizationResponseList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_PrioritizationResponseList_1, - 1, /* Single element */ - &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c deleted file mode 100644 index b99f6dd7d..000000000 --- a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PrioritizationResponseStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 9, "requested" }, - { 2, 10, "processing" }, - { 3, 17, "watchOtherTraffic" }, - { 4, 7, "granted" }, - { 5, 8, "rejected" }, - { 6, 11, "maxPresence" }, - { 7, 15, "reserviceLocked" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { - 4, /* granted(4) */ - 6, /* maxPresence(6) */ - 2, /* processing(2) */ - 5, /* rejected(5) */ - 1, /* requested(1) */ - 7, /* reserviceLocked(7) */ - 0, /* unknown(0) */ - 3 /* watchOtherTraffic(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { - asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { - "PrioritizationResponseStatus", - "PrioritizationResponseStatus", - &asn_OP_NativeEnumerated, - asn_DEF_PrioritizationResponseStatus_tags_1, - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) - /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_PrioritizationResponseStatus_constr_1, &asn_PER_type_PrioritizationResponseStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Priority.c b/src/tmx/Asn_J2735/src/r63/Priority.c deleted file mode 100644 index 9371e8f30..000000000 --- a/src/tmx/Asn_J2735/src/r63/Priority.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Priority.h" - -int -Priority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Priority_constr_1 CC_NOTUSED = { - { 0, 0 }, - 1 /* (SIZE(1..1)) */}; -asn_per_constraints_t asn_PER_type_Priority_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Priority = { - "Priority", - "Priority", - &asn_OP_OCTET_STRING, - asn_DEF_Priority_tags_1, - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - asn_DEF_Priority_tags_1, /* Same as above */ - sizeof(asn_DEF_Priority_tags_1) - /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ - { &asn_OER_type_Priority_constr_1, &asn_PER_type_Priority_constr_1, Priority_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c b/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c deleted file mode 100644 index aafc0441a..000000000 --- a/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PriorityRequestType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PriorityRequestType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PriorityRequestType_value2enum_1[] = { - { 0, 27, "priorityRequestTypeReserved" }, - { 1, 15, "priorityRequest" }, - { 2, 21, "priorityRequestUpdate" }, - { 3, 20, "priorityCancellation" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PriorityRequestType_enum2value_1[] = { - 3, /* priorityCancellation(3) */ - 1, /* priorityRequest(1) */ - 0, /* priorityRequestTypeReserved(0) */ - 2 /* priorityRequestUpdate(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1 = { - asn_MAP_PriorityRequestType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PriorityRequestType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PriorityRequestType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PriorityRequestType = { - "PriorityRequestType", - "PriorityRequestType", - &asn_OP_NativeEnumerated, - asn_DEF_PriorityRequestType_tags_1, - sizeof(asn_DEF_PriorityRequestType_tags_1) - /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ - asn_DEF_PriorityRequestType_tags_1, /* Same as above */ - sizeof(asn_DEF_PriorityRequestType_tags_1) - /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ - { &asn_OER_type_PriorityRequestType_constr_1, &asn_PER_type_PriorityRequestType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PriorityRequestType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c b/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c deleted file mode 100644 index e8e102c11..000000000 --- a/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PrivilegedEventFlags.h" - -int -PrivilegedEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PrivilegedEventFlags_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags = { - "PrivilegedEventFlags", - "PrivilegedEventFlags", - &asn_OP_BIT_STRING, - asn_DEF_PrivilegedEventFlags_tags_1, - sizeof(asn_DEF_PrivilegedEventFlags_tags_1) - /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ - asn_DEF_PrivilegedEventFlags_tags_1, /* Same as above */ - sizeof(asn_DEF_PrivilegedEventFlags_tags_1) - /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ - { &asn_OER_type_PrivilegedEventFlags_constr_1, &asn_PER_type_PrivilegedEventFlags_constr_1, PrivilegedEventFlags_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c b/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c deleted file mode 100644 index 7e61b1cbe..000000000 --- a/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PrivilegedEvents.h" - -asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, sspRights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspRights" - }, - { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, event), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrivilegedEventFlags, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "event" - }, -}; -static const ber_tlv_tag_t asn_DEF_PrivilegedEvents_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PrivilegedEvents_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* event */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1 = { - sizeof(struct PrivilegedEvents), - offsetof(struct PrivilegedEvents, _asn_ctx), - asn_MAP_PrivilegedEvents_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents = { - "PrivilegedEvents", - "PrivilegedEvents", - &asn_OP_SEQUENCE, - asn_DEF_PrivilegedEvents_tags_1, - sizeof(asn_DEF_PrivilegedEvents_tags_1) - /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ - asn_DEF_PrivilegedEvents_tags_1, /* Same as above */ - sizeof(asn_DEF_PrivilegedEvents_tags_1) - /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PrivilegedEvents_1, - 2, /* Elements count */ - &asn_SPC_PrivilegedEvents_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c deleted file mode 100644 index 1ce82f64d..000000000 --- a/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c +++ /dev/null @@ -1,315 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ProbeDataManagement.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_term_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_term_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_snapshot_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_snapshot_constr_8 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_13 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_13 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_13 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_13 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_term_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "termtime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TermDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "termDistance" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { - sizeof(struct ProbeDataManagement__term), - offsetof(struct ProbeDataManagement__term, _asn_ctx), - offsetof(struct ProbeDataManagement__term, present), - sizeof(((struct ProbeDataManagement__term *)0)->present), - asn_MAP_term_tag2el_5, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_term_5 = { - "term", - "term", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_term_constr_5, &asn_PER_type_term_constr_5, CHOICE_constraint }, - asn_MBR_term_5, - 2, /* Elements count */ - &asn_SPC_term_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_snapshot_8[] = { - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "snapshotTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SnapshotDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "snapshotDistance" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ -}; -static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { - sizeof(struct ProbeDataManagement__snapshot), - offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), - offsetof(struct ProbeDataManagement__snapshot, present), - sizeof(((struct ProbeDataManagement__snapshot *)0)->present), - asn_MAP_snapshot_tag2el_8, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { - "snapshot", - "snapshot", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_snapshot_constr_8, &asn_PER_type_snapshot_constr_8, CHOICE_constraint }, - asn_MBR_snapshot_8, - 2, /* Elements count */ - &asn_SPC_snapshot_specs_8 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_13[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_13[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_13 = { - sizeof(struct ProbeDataManagement__regional), - offsetof(struct ProbeDataManagement__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_13 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_13, - sizeof(asn_DEF_regional_tags_13) - /sizeof(asn_DEF_regional_tags_13[0]) - 1, /* 1 */ - asn_DEF_regional_tags_13, /* Same as above */ - sizeof(asn_DEF_regional_tags_13) - /sizeof(asn_DEF_regional_tags_13[0]), /* 2 */ - { &asn_OER_type_regional_constr_13, &asn_PER_type_regional_constr_13, SEQUENCE_OF_constraint }, - asn_MBR_regional_13, - 1, /* Single element */ - &asn_SPC_regional_specs_13 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { - { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Sample, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sample" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "directions" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_term_5, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "term" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_snapshot_8, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "snapshot" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "txInterval" - }, - { ATF_POINTER, 2, offsetof(struct ProbeDataManagement, dataElements), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatusRequestList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dataElements" - }, - { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_13, - 0, - { &asn_OER_memb_regional_constr_13, &asn_PER_memb_regional_constr_13, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ProbeDataManagement_oms_1[] = { 0, 6, 7 }; -static const ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataElements */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { - sizeof(struct ProbeDataManagement), - offsetof(struct ProbeDataManagement, _asn_ctx), - asn_MAP_ProbeDataManagement_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_ProbeDataManagement_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { - "ProbeDataManagement", - "ProbeDataManagement", - &asn_OP_SEQUENCE, - asn_DEF_ProbeDataManagement_tags_1, - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeDataManagement_tags_1) - /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ProbeDataManagement_1, - 8, /* Elements count */ - &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c deleted file mode 100644 index f5863d363..000000000 --- a/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ProbeSegmentNumber.h" - -int -ProbeSegmentNumber_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { - "ProbeSegmentNumber", - "ProbeSegmentNumber", - &asn_OP_NativeInteger, - asn_DEF_ProbeSegmentNumber_tags_1, - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeSegmentNumber_tags_1) - /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ - { &asn_OER_type_ProbeSegmentNumber_constr_1, &asn_PER_type_ProbeSegmentNumber_constr_1, ProbeSegmentNumber_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c deleted file mode 100644 index b2ea46570..000000000 --- a/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c +++ /dev/null @@ -1,270 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ProbeVehicleData.h" - -static int -memb_snapshots_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 32)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_snapshots_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -static asn_per_constraints_t asn_PER_type_snapshots_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_snapshots_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -static asn_per_constraints_t asn_PER_memb_snapshots_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_snapshots_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Snapshot, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_snapshots_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_7 = { - sizeof(struct ProbeVehicleData__snapshots), - offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_snapshots_7 = { - "snapshots", - "snapshots", - &asn_OP_SEQUENCE_OF, - asn_DEF_snapshots_tags_7, - sizeof(asn_DEF_snapshots_tags_7) - /sizeof(asn_DEF_snapshots_tags_7[0]) - 1, /* 1 */ - asn_DEF_snapshots_tags_7, /* Same as above */ - sizeof(asn_DEF_snapshots_tags_7) - /sizeof(asn_DEF_snapshots_tags_7[0]), /* 2 */ - { &asn_OER_type_snapshots_constr_7, &asn_PER_type_snapshots_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_snapshots_7, - 1, /* Single element */ - &asn_SPC_snapshots_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct ProbeVehicleData__regional), - offsetof(struct ProbeVehicleData__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { - { ATF_POINTER, 3, offsetof(struct ProbeVehicleData, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProbeSegmentNumber, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "segNum" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "probeID" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "startVector" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleClassification, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_snapshots_7, - 0, - { &asn_OER_memb_snapshots_constr_7, &asn_PER_memb_snapshots_constr_7, memb_snapshots_constraint_1 }, - 0, 0, /* No default value */ - "snapshots" - }, - { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_ProbeVehicleData_oms_1[] = { 0, 1, 2, 6 }; -static const ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* snapshots */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { - sizeof(struct ProbeVehicleData), - offsetof(struct ProbeVehicleData, _asn_ctx), - asn_MAP_ProbeVehicleData_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { - "ProbeVehicleData", - "ProbeVehicleData", - &asn_OP_SEQUENCE, - asn_DEF_ProbeVehicleData_tags_1, - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_ProbeVehicleData_tags_1) - /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ProbeVehicleData_1, - 7, /* Elements count */ - &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PropelledInformation.c b/src/tmx/Asn_J2735/src/r63/PropelledInformation.c deleted file mode 100644 index b7fe1ba2a..000000000 --- a/src/tmx/Asn_J2735/src/r63/PropelledInformation.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PropelledInformation.h" - -static asn_oer_constraints_t asn_OER_type_PropelledInformation_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HumanPropelledType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "human" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AnimalPropelledType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "animal" - }, - { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MotorizedPropelledType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "motor" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ -}; -asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { - sizeof(struct PropelledInformation), - offsetof(struct PropelledInformation, _asn_ctx), - offsetof(struct PropelledInformation, present), - sizeof(((struct PropelledInformation *)0)->present), - asn_MAP_PropelledInformation_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - 3 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { - "PropelledInformation", - "PropelledInformation", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_PropelledInformation_constr_1, &asn_PER_type_PropelledInformation_constr_1, CHOICE_constraint }, - asn_MBR_PropelledInformation_1, - 3, /* Elements count */ - &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c deleted file mode 100644 index 23f386344..000000000 --- a/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PublicSafetyAndRoadWorkerActivity.h" - -int -PublicSafetyAndRoadWorkerActivity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { - "PublicSafetyAndRoadWorkerActivity", - "PublicSafetyAndRoadWorkerActivity", - &asn_OP_BIT_STRING, - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) - /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ - { &asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1, &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, PublicSafetyAndRoadWorkerActivity_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c deleted file mode 100644 index b14241a22..000000000 --- a/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PublicSafetyDirectingTrafficSubType.h" - -int -PublicSafetyDirectingTrafficSubType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 7)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { - "PublicSafetyDirectingTrafficSubType", - "PublicSafetyDirectingTrafficSubType", - &asn_OP_BIT_STRING, - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) - /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ - { &asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1, &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, PublicSafetyDirectingTrafficSubType_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c deleted file mode 100644 index 49961c177..000000000 --- a/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "PublicSafetyEventResponderWorkerType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "towOperater" }, - { 2, 16, "fireAndEMSWorker" }, - { 3, 10, "aDOTWorker" }, - { 4, 14, "lawEnforcement" }, - { 5, 15, "hazmatResponder" }, - { 6, 19, "animalControlWorker" }, - { 7, 14, "otherPersonnel" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { - 3, /* aDOTWorker(3) */ - 6, /* animalControlWorker(6) */ - 2, /* fireAndEMSWorker(2) */ - 5, /* hazmatResponder(5) */ - 4, /* lawEnforcement(4) */ - 7, /* otherPersonnel(7) */ - 1, /* towOperater(1) */ - 0 /* unavailable(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { - asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 9, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { - "PublicSafetyEventResponderWorkerType", - "PublicSafetyEventResponderWorkerType", - &asn_OP_NativeEnumerated, - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ - sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) - /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ - { &asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1, &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c b/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c deleted file mode 100644 index 8b30fa08d..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCM-Revision.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RTCM_Revision_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "rtcmRev2" }, - { 2, 8, "rtcmRev3" }, - { 3, 8, "reserved" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { - 3, /* reserved(3) */ - 1, /* rtcmRev2(1) */ - 2, /* rtcmRev3(2) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { - asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { - "RTCM-Revision", - "RTCM-Revision", - &asn_OP_NativeEnumerated, - asn_DEF_RTCM_Revision_tags_1, - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - asn_DEF_RTCM_Revision_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCM_Revision_tags_1) - /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ - { &asn_OER_type_RTCM_Revision_constr_1, &asn_PER_type_RTCM_Revision_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCMPackage.c b/src/tmx/Asn_J2735/src/r63/RTCMPackage.c deleted file mode 100644 index 5a9b610d9..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCMPackage.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCMPackage.h" - -asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct RTCMPackage, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMheader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rtcmHeader" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, msgs), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMmessageList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgs" - }, -}; -static const int asn_MAP_RTCMPackage_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* msgs */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { - sizeof(struct RTCMPackage), - offsetof(struct RTCMPackage, _asn_ctx), - asn_MAP_RTCMPackage_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RTCMPackage_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { - "RTCMPackage", - "RTCMPackage", - &asn_OP_SEQUENCE, - asn_DEF_RTCMPackage_tags_1, - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - asn_DEF_RTCMPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMPackage_tags_1) - /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RTCMPackage_1, - 2, /* Elements count */ - &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c b/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c deleted file mode 100644 index 8c35dd78a..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCMcorrections.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_8[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { - sizeof(struct RTCMcorrections__regional), - offsetof(struct RTCMcorrections__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_8 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_8, - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ - asn_DEF_regional_tags_8, /* Same as above */ - sizeof(asn_DEF_regional_tags_8) - /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ - { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, - asn_MBR_regional_8, - 1, /* Single element */ - &asn_SPC_regional_specs_8 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RTCMcorrections_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, rev), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCM_Revision, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rev" - }, - { ATF_POINTER, 3, offsetof(struct RTCMcorrections, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct RTCMcorrections, anchorPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "anchorPoint" - }, - { ATF_POINTER, 1, offsetof(struct RTCMcorrections, rtcmHeader), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMheader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rtcmHeader" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgs), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMmessageList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgs" - }, - { ATF_POINTER, 1, offsetof(struct RTCMcorrections, regional), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - 0, - &asn_DEF_regional_8, - 0, - { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RTCMcorrections_oms_1[] = { 2, 3, 4, 6 }; -static const ber_tlv_tag_t asn_DEF_RTCMcorrections_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMcorrections_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msgs */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1 = { - sizeof(struct RTCMcorrections), - offsetof(struct RTCMcorrections, _asn_ctx), - asn_MAP_RTCMcorrections_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_RTCMcorrections_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMcorrections = { - "RTCMcorrections", - "RTCMcorrections", - &asn_OP_SEQUENCE, - asn_DEF_RTCMcorrections_tags_1, - sizeof(asn_DEF_RTCMcorrections_tags_1) - /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ - asn_DEF_RTCMcorrections_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMcorrections_tags_1) - /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RTCMcorrections_1, - 7, /* Elements count */ - &asn_SPC_RTCMcorrections_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCMheader.c b/src/tmx/Asn_J2735/src/r63/RTCMheader.c deleted file mode 100644 index 43a3622e5..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCMheader.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCMheader.h" - -asn_TYPE_member_t asn_MBR_RTCMheader_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, status), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "status" - }, - { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, offsetSet), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AntennaOffsetSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offsetSet" - }, -}; -static const ber_tlv_tag_t asn_DEF_RTCMheader_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RTCMheader_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offsetSet */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1 = { - sizeof(struct RTCMheader), - offsetof(struct RTCMheader, _asn_ctx), - asn_MAP_RTCMheader_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMheader = { - "RTCMheader", - "RTCMheader", - &asn_OP_SEQUENCE, - asn_DEF_RTCMheader_tags_1, - sizeof(asn_DEF_RTCMheader_tags_1) - /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ - asn_DEF_RTCMheader_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMheader_tags_1) - /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RTCMheader_1, - 2, /* Elements count */ - &asn_SPC_RTCMheader_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCMmessage.c b/src/tmx/Asn_J2735/src/r63/RTCMmessage.c deleted file mode 100644 index 5d4a80812..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCMmessage.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCMmessage.h" - -int -RTCMmessage_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RTCMmessage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1023)) */}; -asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RTCMmessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RTCMmessage = { - "RTCMmessage", - "RTCMmessage", - &asn_OP_OCTET_STRING, - asn_DEF_RTCMmessage_tags_1, - sizeof(asn_DEF_RTCMmessage_tags_1) - /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ - asn_DEF_RTCMmessage_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMmessage_tags_1) - /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ - { &asn_OER_type_RTCMmessage_constr_1, &asn_PER_type_RTCMmessage_constr_1, RTCMmessage_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c b/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c deleted file mode 100644 index d2a380d10..000000000 --- a/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RTCMmessageList.h" - -static asn_oer_constraints_t asn_OER_type_RTCMmessageList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RTCMmessageList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_RTCMmessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RTCMmessageList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1 = { - sizeof(struct RTCMmessageList), - offsetof(struct RTCMmessageList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RTCMmessageList = { - "RTCMmessageList", - "RTCMmessageList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RTCMmessageList_tags_1, - sizeof(asn_DEF_RTCMmessageList_tags_1) - /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ - asn_DEF_RTCMmessageList_tags_1, /* Same as above */ - sizeof(asn_DEF_RTCMmessageList_tags_1) - /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ - { &asn_OER_type_RTCMmessageList_constr_1, &asn_PER_type_RTCMmessageList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RTCMmessageList_1, - 1, /* Single element */ - &asn_SPC_RTCMmessageList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Radius-B12.c b/src/tmx/Asn_J2735/src/r63/Radius-B12.c deleted file mode 100644 index 099c59e40..000000000 --- a/src/tmx/Asn_J2735/src/r63/Radius-B12.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Radius-B12.h" - -int -Radius_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 4095)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Radius_B12_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -asn_per_constraints_t asn_PER_type_Radius_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Radius_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Radius_B12 = { - "Radius-B12", - "Radius-B12", - &asn_OP_NativeInteger, - asn_DEF_Radius_B12_tags_1, - sizeof(asn_DEF_Radius_B12_tags_1) - /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ - asn_DEF_Radius_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Radius_B12_tags_1) - /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ - { &asn_OER_type_Radius_B12_constr_1, &asn_PER_type_Radius_B12_constr_1, Radius_B12_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c b/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c deleted file mode 100644 index 0b8e1e784..000000000 --- a/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RadiusOfCurvature.h" - -int -RadiusOfCurvature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RadiusOfCurvature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature = { - "RadiusOfCurvature", - "RadiusOfCurvature", - &asn_OP_NativeInteger, - asn_DEF_RadiusOfCurvature_tags_1, - sizeof(asn_DEF_RadiusOfCurvature_tags_1) - /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ - asn_DEF_RadiusOfCurvature_tags_1, /* Same as above */ - sizeof(asn_DEF_RadiusOfCurvature_tags_1) - /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ - { &asn_OER_type_RadiusOfCurvature_constr_1, &asn_PER_type_RadiusOfCurvature_constr_1, RadiusOfCurvature_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RainSensor.c b/src/tmx/Asn_J2735/src/r63/RainSensor.c deleted file mode 100644 index bbdd002e6..000000000 --- a/src/tmx/Asn_J2735/src/r63/RainSensor.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RainSensor.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RainSensor_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RainSensor_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 9, "lightMist" }, - { 2, 9, "heavyMist" }, - { 3, 18, "lightRainOrDrizzle" }, - { 4, 4, "rain" }, - { 5, 12, "moderateRain" }, - { 6, 9, "heavyRain" }, - { 7, 13, "heavyDownpour" } -}; -static const unsigned int asn_MAP_RainSensor_enum2value_1[] = { - 7, /* heavyDownpour(7) */ - 2, /* heavyMist(2) */ - 6, /* heavyRain(6) */ - 1, /* lightMist(1) */ - 3, /* lightRainOrDrizzle(3) */ - 5, /* moderateRain(5) */ - 0, /* none(0) */ - 4 /* rain(4) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { - asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RainSensor = { - "RainSensor", - "RainSensor", - &asn_OP_NativeEnumerated, - asn_DEF_RainSensor_tags_1, - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - asn_DEF_RainSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_RainSensor_tags_1) - /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ - { &asn_OER_type_RainSensor_constr_1, &asn_PER_type_RainSensor_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RainSensor_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegionId.c b/src/tmx/Asn_J2735/src/r63/RegionId.c deleted file mode 100644 index dff1b7a9d..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegionId.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RegionId.h" - -int -RegionId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RegionId_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_RegionId_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RegionId_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RegionId = { - "RegionId", - "RegionId", - &asn_OP_NativeInteger, - asn_DEF_RegionId_tags_1, - sizeof(asn_DEF_RegionId_tags_1) - /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ - asn_DEF_RegionId_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionId_tags_1) - /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ - { &asn_OER_type_RegionId_constr_1, &asn_PER_type_RegionId_constr_1, RegionId_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegionList.c b/src/tmx/Asn_J2735/src/r63/RegionList.c deleted file mode 100644 index cf10441e2..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegionList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RegionList.h" - -static asn_oer_constraints_t asn_OER_type_RegionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -asn_per_constraints_t asn_PER_type_RegionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RegionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegionOffsets, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { - sizeof(struct RegionList), - offsetof(struct RegionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionList = { - "RegionList", - "RegionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RegionList_tags_1, - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - asn_DEF_RegionList_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionList_tags_1) - /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ - { &asn_OER_type_RegionList_constr_1, &asn_PER_type_RegionList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RegionList_1, - 1, /* Single element */ - &asn_SPC_RegionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegionOffsets.c b/src/tmx/Asn_J2735/src/r63/RegionOffsets.c deleted file mode 100644 index c290f5c16..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegionOffsets.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RegionOffsets.h" - -asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "xOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yOffset" - }, - { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OffsetLL_B16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "zOffset" - }, -}; -static const int asn_MAP_RegionOffsets_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { - sizeof(struct RegionOffsets), - offsetof(struct RegionOffsets, _asn_ctx), - asn_MAP_RegionOffsets_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RegionOffsets_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { - "RegionOffsets", - "RegionOffsets", - &asn_OP_SEQUENCE, - asn_DEF_RegionOffsets_tags_1, - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - asn_DEF_RegionOffsets_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionOffsets_tags_1) - /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RegionOffsets_1, - 3, /* Elements count */ - &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegionPointSet.c b/src/tmx/Asn_J2735/src/r63/RegionPointSet.c deleted file mode 100644 index e35608874..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegionPointSet.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RegionPointSet.h" - -asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { - { ATF_POINTER, 2, offsetof(struct RegionPointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 1, offsetof(struct RegionPointSet, scale), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Zoom, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "scale" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nodeList" - }, -}; -static const int asn_MAP_RegionPointSet_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scale */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { - sizeof(struct RegionPointSet), - offsetof(struct RegionPointSet, _asn_ctx), - asn_MAP_RegionPointSet_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RegionPointSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { - "RegionPointSet", - "RegionPointSet", - &asn_OP_SEQUENCE, - asn_DEF_RegionPointSet_tags_1, - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - asn_DEF_RegionPointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_RegionPointSet_tags_1) - /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RegionPointSet_1, - 3, /* Elements count */ - &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegionalExtension.c b/src/tmx/Asn_J2735/src/r63/RegionalExtension.c deleted file mode 100644 index dad4e67ad..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegionalExtension.c +++ /dev/null @@ -1,242 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_2022-11-21.asn" - * `asn1c -fcompound-names -D ../include/generated/` - */ - -#include "RegionalExtension.h" - -static const long asn_VAL_10_DSRC_addGrpCarma = 128; -static const asn_ioc_cell_t asn_IOS_Reg_BasicSafetyMessage_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_10_DSRC_addGrpCarma }, - { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage_addGrpCarma } -}; -static const asn_ioc_set_t asn_IOS_Reg_BasicSafetyMessage_1[] = { - { 1, 2, asn_IOS_Reg_BasicSafetyMessage_1_rows } -}; -static int -memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0L && value <= 255L)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_type_selector_result_t -select_Reg_BasicSafetyMessage_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { - asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_Reg_BasicSafetyMessage_1; - size_t constraining_column = 0; /* &id */ - size_t for_column = 1; /* &Type */ - size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_BasicSafetyMessage, regionId)); - - for(row=0; row < itable->rows_count; row++) { - const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; - const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; - - if(type_cell->cell_kind == aioc__undefined) - continue; - - presence_index++; - if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { - result.type_descriptor = type_cell->type_descriptor; - result.presence_index = presence_index; - break; - } - } - - return result; -} - -static int -memb_regExtValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - if(1 /* No applicable constraints whatsoever */) { - /* Nothing is here. See below */ - } - - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); -} - -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regionId_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regionId_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -#if !defined(ASN_DISABLE_OER_SUPPORT) -static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) -static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ -static asn_TYPE_member_t asn_MBR_regExtValue_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage__regExtValue, choice.BasicSafetyMessage_addGrpCarma), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_BasicSafetyMessage_addGrpCarma, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, - 0, 0, /* No default value */ - "BasicSafetyMessage-addGrpCarma" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* BasicSafetyMessage-addGrpCarma */ -}; -static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { - sizeof(struct Reg_BasicSafetyMessage__regExtValue), - offsetof(struct Reg_BasicSafetyMessage__regExtValue, _asn_ctx), - offsetof(struct Reg_BasicSafetyMessage__regExtValue, present), - sizeof(((struct Reg_BasicSafetyMessage__regExtValue *)0)->present), - asn_MAP_regExtValue_tag2el_3, - 1, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { - "regExtValue", - "regExtValue", - &asn_OP_OPEN_TYPE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - OPEN_TYPE_constraint - }, - asn_MBR_regExtValue_3, - 1, /* Elements count */ - &asn_SPC_regExtValue_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regionId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionId, - 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regionId_constr_2, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regionId_constr_2, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regionId_constraint_1 - }, - 0, 0, /* No default value */ - "regionId" - }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regExtValue), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_regExtValue_3, - select_Reg_BasicSafetyMessage_regExtValue_type, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_memb_regExtValue_constr_3, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_memb_regExtValue_constr_3, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - memb_regExtValue_constraint_1 - }, - 0, 0, /* No default value */ - "regExtValue" - }, -}; -static const ber_tlv_tag_t asn_DEF_Reg_BasicSafetyMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Reg_BasicSafetyMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1 = { - sizeof(struct Reg_BasicSafetyMessage), - offsetof(struct Reg_BasicSafetyMessage, _asn_ctx), - asn_MAP_Reg_BasicSafetyMessage_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage = { - "Reg-BasicSafetyMessage", - "Reg-BasicSafetyMessage", - &asn_OP_SEQUENCE, - asn_DEF_Reg_BasicSafetyMessage_tags_1, - sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ - asn_DEF_Reg_BasicSafetyMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) - /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, - asn_MBR_Reg_BasicSafetyMessage_1, - 2, /* Elements count */ - &asn_SPC_Reg_BasicSafetyMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c deleted file mode 100644 index 16367650f..000000000 --- a/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RegulatorySpeedLimit.h" - -asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { - sizeof(struct RegulatorySpeedLimit), - offsetof(struct RegulatorySpeedLimit, _asn_ctx), - asn_MAP_RegulatorySpeedLimit_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { - "RegulatorySpeedLimit", - "RegulatorySpeedLimit", - &asn_OP_SEQUENCE, - asn_DEF_RegulatorySpeedLimit_tags_1, - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) - /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RegulatorySpeedLimit_1, - 2, /* Elements count */ - &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RepeatParams.c b/src/tmx/Asn_J2735/src/r63/RepeatParams.c deleted file mode 100644 index e83580572..000000000 --- a/src/tmx/Asn_J2735/src/r63/RepeatParams.c +++ /dev/null @@ -1,169 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RepeatParams.h" - -static int -memb_offset_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_period_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_span_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1439)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_offset_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_offset_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_period_constr_3 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_period_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_span_constr_4 CC_NOTUSED = { - { 2, 1 } /* (0..1439) */, - -1}; -static asn_per_constraints_t asn_PER_memb_span_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RepeatParams_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, offset), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_offset_constr_2, &asn_PER_memb_offset_constr_2, memb_offset_constraint_1 }, - 0, 0, /* No default value */ - "offset" - }, - { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, period), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_period_constr_3, &asn_PER_memb_period_constr_3, memb_period_constraint_1 }, - 0, 0, /* No default value */ - "period" - }, - { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, span), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_span_constr_4, &asn_PER_memb_span_constr_4, memb_span_constraint_1 }, - 0, 0, /* No default value */ - "span" - }, -}; -static const ber_tlv_tag_t asn_DEF_RepeatParams_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RepeatParams_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* period */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* span */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1 = { - sizeof(struct RepeatParams), - offsetof(struct RepeatParams, _asn_ctx), - asn_MAP_RepeatParams_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RepeatParams = { - "RepeatParams", - "RepeatParams", - &asn_OP_SEQUENCE, - asn_DEF_RepeatParams_tags_1, - sizeof(asn_DEF_RepeatParams_tags_1) - /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ - asn_DEF_RepeatParams_tags_1, /* Same as above */ - sizeof(asn_DEF_RepeatParams_tags_1) - /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RepeatParams_1, - 3, /* Elements count */ - &asn_SPC_RepeatParams_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestID.c b/src/tmx/Asn_J2735/src/r63/RequestID.c deleted file mode 100644 index 892048ca9..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestID.h" - -int -RequestID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RequestID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_RequestID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestID = { - "RequestID", - "RequestID", - &asn_OP_NativeInteger, - asn_DEF_RequestID_tags_1, - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - asn_DEF_RequestID_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestID_tags_1) - /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ - { &asn_OER_type_RequestID_constr_1, &asn_PER_type_RequestID_constr_1, RequestID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c b/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c deleted file mode 100644 index 58b9da3ac..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestImportanceLevel.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RequestImportanceLevel_value2enum_1[] = { - { 0, 29, "requestImportanceLevelUnKnown" }, - { 1, 23, "requestImportanceLevel1" }, - { 2, 23, "requestImportanceLevel2" }, - { 3, 23, "requestImportanceLevel3" }, - { 4, 23, "requestImportanceLevel4" }, - { 5, 23, "requestImportanceLevel5" }, - { 6, 23, "requestImportanceLevel6" }, - { 7, 23, "requestImportanceLevel7" }, - { 8, 23, "requestImportanceLevel8" }, - { 9, 23, "requestImportanceLevel9" }, - { 10, 24, "requestImportanceLevel10" }, - { 11, 24, "requestImportanceLevel11" }, - { 12, 24, "requestImportanceLevel12" }, - { 13, 24, "requestImportanceLevel13" }, - { 14, 24, "requestImportanceLevel14" }, - { 15, 25, "requestImportanceReserved" } -}; -static const unsigned int asn_MAP_RequestImportanceLevel_enum2value_1[] = { - 1, /* requestImportanceLevel1(1) */ - 10, /* requestImportanceLevel10(10) */ - 11, /* requestImportanceLevel11(11) */ - 12, /* requestImportanceLevel12(12) */ - 13, /* requestImportanceLevel13(13) */ - 14, /* requestImportanceLevel14(14) */ - 2, /* requestImportanceLevel2(2) */ - 3, /* requestImportanceLevel3(3) */ - 4, /* requestImportanceLevel4(4) */ - 5, /* requestImportanceLevel5(5) */ - 6, /* requestImportanceLevel6(6) */ - 7, /* requestImportanceLevel7(7) */ - 8, /* requestImportanceLevel8(8) */ - 9, /* requestImportanceLevel9(9) */ - 0, /* requestImportanceLevelUnKnown(0) */ - 15 /* requestImportanceReserved(15) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1 = { - asn_MAP_RequestImportanceLevel_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestImportanceLevel_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestImportanceLevel_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel = { - "RequestImportanceLevel", - "RequestImportanceLevel", - &asn_OP_NativeEnumerated, - asn_DEF_RequestImportanceLevel_tags_1, - sizeof(asn_DEF_RequestImportanceLevel_tags_1) - /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ - asn_DEF_RequestImportanceLevel_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestImportanceLevel_tags_1) - /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ - { &asn_OER_type_RequestImportanceLevel_constr_1, &asn_PER_type_RequestImportanceLevel_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestImportanceLevel_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestSubRole.c b/src/tmx/Asn_J2735/src/r63/RequestSubRole.c deleted file mode 100644 index 6a93bd1f2..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestSubRole.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestSubRole.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RequestSubRole_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RequestSubRole_value2enum_1[] = { - { 0, 21, "requestSubRoleUnKnown" }, - { 1, 15, "requestSubRole1" }, - { 2, 15, "requestSubRole2" }, - { 3, 15, "requestSubRole3" }, - { 4, 15, "requestSubRole4" }, - { 5, 15, "requestSubRole5" }, - { 6, 15, "requestSubRole6" }, - { 7, 15, "requestSubRole7" }, - { 8, 15, "requestSubRole8" }, - { 9, 15, "requestSubRole9" }, - { 10, 16, "requestSubRole10" }, - { 11, 16, "requestSubRole11" }, - { 12, 16, "requestSubRole12" }, - { 13, 16, "requestSubRole13" }, - { 14, 16, "requestSubRole14" }, - { 15, 22, "requestSubRoleReserved" } -}; -static const unsigned int asn_MAP_RequestSubRole_enum2value_1[] = { - 1, /* requestSubRole1(1) */ - 10, /* requestSubRole10(10) */ - 11, /* requestSubRole11(11) */ - 12, /* requestSubRole12(12) */ - 13, /* requestSubRole13(13) */ - 14, /* requestSubRole14(14) */ - 2, /* requestSubRole2(2) */ - 3, /* requestSubRole3(3) */ - 4, /* requestSubRole4(4) */ - 5, /* requestSubRole5(5) */ - 6, /* requestSubRole6(6) */ - 7, /* requestSubRole7(7) */ - 8, /* requestSubRole8(8) */ - 9, /* requestSubRole9(9) */ - 15, /* requestSubRoleReserved(15) */ - 0 /* requestSubRoleUnKnown(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1 = { - asn_MAP_RequestSubRole_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestSubRole_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestSubRole_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestSubRole = { - "RequestSubRole", - "RequestSubRole", - &asn_OP_NativeEnumerated, - asn_DEF_RequestSubRole_tags_1, - sizeof(asn_DEF_RequestSubRole_tags_1) - /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ - asn_DEF_RequestSubRole_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestSubRole_tags_1) - /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ - { &asn_OER_type_RequestSubRole_constr_1, &asn_PER_type_RequestSubRole_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestSubRole_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestedItem.c b/src/tmx/Asn_J2735/src/r63/RequestedItem.c deleted file mode 100644 index 6c5345a36..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestedItem.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestedItem.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RequestedItem_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 5, "itemA" }, - { 2, 5, "itemB" }, - { 3, 5, "itemC" }, - { 4, 5, "itemD" }, - { 5, 5, "itemE" }, - { 6, 5, "itemF" }, - { 7, 5, "itemG" }, - { 8, 5, "itemI" }, - { 9, 5, "itemJ" }, - { 10, 5, "itemK" }, - { 11, 5, "itemL" }, - { 12, 5, "itemM" }, - { 13, 5, "itemN" }, - { 14, 5, "itemO" }, - { 15, 5, "itemP" }, - { 16, 5, "itemQ" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RequestedItem_enum2value_1[] = { - 1, /* itemA(1) */ - 2, /* itemB(2) */ - 3, /* itemC(3) */ - 4, /* itemD(4) */ - 5, /* itemE(5) */ - 6, /* itemF(6) */ - 7, /* itemG(7) */ - 8, /* itemI(8) */ - 9, /* itemJ(9) */ - 10, /* itemK(10) */ - 11, /* itemL(11) */ - 12, /* itemM(12) */ - 13, /* itemN(13) */ - 14, /* itemO(14) */ - 15, /* itemP(15) */ - 16, /* itemQ(16) */ - 0 /* reserved(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { - asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ - 17, /* Number of elements in the maps */ - 18, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RequestedItem = { - "RequestedItem", - "RequestedItem", - &asn_OP_NativeEnumerated, - asn_DEF_RequestedItem_tags_1, - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - asn_DEF_RequestedItem_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestedItem_tags_1) - /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ - { &asn_OER_type_RequestedItem_constr_1, &asn_PER_type_RequestedItem_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RequestedItem_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestedItemList.c b/src/tmx/Asn_J2735/src/r63/RequestedItemList.c deleted file mode 100644 index 584d72dbb..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestedItemList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestedItemList.h" - -static asn_oer_constraints_t asn_OER_type_RequestedItemList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RequestedItemList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_RequestedItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RequestedItemList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1 = { - sizeof(struct RequestedItemList), - offsetof(struct RequestedItemList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestedItemList = { - "RequestedItemList", - "RequestedItemList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RequestedItemList_tags_1, - sizeof(asn_DEF_RequestedItemList_tags_1) - /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ - asn_DEF_RequestedItemList_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestedItemList_tags_1) - /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ - { &asn_OER_type_RequestedItemList_constr_1, &asn_PER_type_RequestedItemList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RequestedItemList_1, - 1, /* Single element */ - &asn_SPC_RequestedItemList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestorDescription.c b/src/tmx/Asn_J2735/src/r63/RequestorDescription.c deleted file mode 100644 index 6df49147d..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestorDescription.c +++ /dev/null @@ -1,211 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestorDescription.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct RequestorDescription__regional), - offsetof(struct RequestorDescription__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RequestorDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorDescription, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 8, offsetof(struct RequestorDescription, type), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "type" - }, - { ATF_POINTER, 7, offsetof(struct RequestorDescription, position), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 6, offsetof(struct RequestorDescription, name), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 5, offsetof(struct RequestorDescription, routeName), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "routeName" - }, - { ATF_POINTER, 4, offsetof(struct RequestorDescription, transitStatus), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitVehicleStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "transitStatus" - }, - { ATF_POINTER, 3, offsetof(struct RequestorDescription, transitOccupancy), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransitVehicleOccupancy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "transitOccupancy" - }, - { ATF_POINTER, 2, offsetof(struct RequestorDescription, transitSchedule), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DeltaTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "transitSchedule" - }, - { ATF_POINTER, 1, offsetof(struct RequestorDescription, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RequestorDescription_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_RequestorDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* type */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* routeName */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transitOccupancy */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transitSchedule */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1 = { - sizeof(struct RequestorDescription), - offsetof(struct RequestorDescription, _asn_ctx), - asn_MAP_RequestorDescription_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_RequestorDescription_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorDescription = { - "RequestorDescription", - "RequestorDescription", - &asn_OP_SEQUENCE, - asn_DEF_RequestorDescription_tags_1, - sizeof(asn_DEF_RequestorDescription_tags_1) - /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ - asn_DEF_RequestorDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorDescription_tags_1) - /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RequestorDescription_1, - 9, /* Elements count */ - &asn_SPC_RequestorDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c b/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c deleted file mode 100644 index b155c6983..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestorPositionVector.h" - -asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorPositionVector, position), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 2, offsetof(struct RequestorPositionVector, heading), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Angle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 1, offsetof(struct RequestorPositionVector, speed), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionAndSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const int asn_MAP_RequestorPositionVector_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_RequestorPositionVector_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorPositionVector_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1 = { - sizeof(struct RequestorPositionVector), - offsetof(struct RequestorPositionVector, _asn_ctx), - asn_MAP_RequestorPositionVector_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RequestorPositionVector_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector = { - "RequestorPositionVector", - "RequestorPositionVector", - &asn_OP_SEQUENCE, - asn_DEF_RequestorPositionVector_tags_1, - sizeof(asn_DEF_RequestorPositionVector_tags_1) - /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ - asn_DEF_RequestorPositionVector_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorPositionVector_tags_1) - /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RequestorPositionVector_1, - 3, /* Elements count */ - &asn_SPC_RequestorPositionVector_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RequestorType.c b/src/tmx/Asn_J2735/src/r63/RequestorType.c deleted file mode 100644 index 5f6f1dab2..000000000 --- a/src/tmx/Asn_J2735/src/r63/RequestorType.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RequestorType.h" - -asn_TYPE_member_t asn_MBR_RequestorType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RequestorType, role), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 5, offsetof(struct RequestorType, subrole), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestSubRole, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "subrole" - }, - { ATF_POINTER, 4, offsetof(struct RequestorType, request), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestImportanceLevel, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "request" - }, - { ATF_POINTER, 3, offsetof(struct RequestorType, iso3883), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Iso3833VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "iso3883" - }, - { ATF_POINTER, 2, offsetof(struct RequestorType, hpmsType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hpmsType" - }, - { ATF_POINTER, 1, offsetof(struct RequestorType, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RequestorType_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_RequestorType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RequestorType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subrole */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iso3883 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* hpmsType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1 = { - sizeof(struct RequestorType), - offsetof(struct RequestorType, _asn_ctx), - asn_MAP_RequestorType_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_RequestorType_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RequestorType = { - "RequestorType", - "RequestorType", - &asn_OP_SEQUENCE, - asn_DEF_RequestorType_tags_1, - sizeof(asn_DEF_RequestorType_tags_1) - /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ - asn_DEF_RequestorType_tags_1, /* Same as above */ - sizeof(asn_DEF_RequestorType_tags_1) - /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RequestorType_1, - 6, /* Elements count */ - &asn_SPC_RequestorType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c deleted file mode 100644 index 6ba1ecaee..000000000 --- a/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ResponderGroupAffected.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { - { 9729, 23, "emergency-vehicle-units" }, - { 9730, 29, "federal-law-enforcement-units" }, - { 9731, 18, "state-police-units" }, - { 9732, 19, "county-police-units" }, - { 9733, 18, "local-police-units" }, - { 9734, 15, "ambulance-units" }, - { 9735, 12, "rescue-units" }, - { 9736, 10, "fire-units" }, - { 9737, 12, "hAZMAT-units" }, - { 9738, 14, "light-tow-unit" }, - { 9739, 14, "heavy-tow-unit" }, - { 9740, 23, "freeway-service-patrols" }, - { 9741, 29, "transportation-response-units" }, - { 9742, 33, "private-contractor-response-units" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { - 5, /* ambulance-units(9734) */ - 3, /* county-police-units(9732) */ - 0, /* emergency-vehicle-units(9729) */ - 1, /* federal-law-enforcement-units(9730) */ - 7, /* fire-units(9736) */ - 11, /* freeway-service-patrols(9740) */ - 8, /* hAZMAT-units(9737) */ - 10, /* heavy-tow-unit(9739) */ - 9, /* light-tow-unit(9738) */ - 4, /* local-police-units(9733) */ - 13, /* private-contractor-response-units(9742) */ - 6, /* rescue-units(9735) */ - 2, /* state-police-units(9731) */ - 12 /* transportation-response-units(9741) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { - asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { - "ResponderGroupAffected", - "ResponderGroupAffected", - &asn_OP_NativeEnumerated, - asn_DEF_ResponderGroupAffected_tags_1, - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponderGroupAffected_tags_1) - /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ - { &asn_OER_type_ResponderGroupAffected_constr_1, &asn_PER_type_ResponderGroupAffected_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ResponseType.c b/src/tmx/Asn_J2735/src/r63/ResponseType.c deleted file mode 100644 index 3f7d5a7d2..000000000 --- a/src/tmx/Asn_J2735/src/r63/ResponseType.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ResponseType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ResponseType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ResponseType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { - { 0, 21, "notInUseOrNotEquipped" }, - { 1, 9, "emergency" }, - { 2, 12, "nonEmergency" }, - { 3, 7, "pursuit" }, - { 4, 10, "stationary" }, - { 5, 10, "slowMoving" }, - { 6, 17, "stopAndGoMovement" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_ResponseType_enum2value_1[] = { - 1, /* emergency(1) */ - 2, /* nonEmergency(2) */ - 0, /* notInUseOrNotEquipped(0) */ - 3, /* pursuit(3) */ - 5, /* slowMoving(5) */ - 4, /* stationary(4) */ - 6 /* stopAndGoMovement(6) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { - asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ResponseType = { - "ResponseType", - "ResponseType", - &asn_OP_NativeEnumerated, - asn_DEF_ResponseType_tags_1, - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - asn_DEF_ResponseType_tags_1, /* Same as above */ - sizeof(asn_DEF_ResponseType_tags_1) - /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ - { &asn_OER_type_ResponseType_constr_1, &asn_PER_type_ResponseType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ResponseType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c deleted file mode 100644 index 0b3d48eda..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionAppliesTo.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 15, "equippedTransit" }, - { 2, 13, "equippedTaxis" }, - { 3, 13, "equippedOther" }, - { 4, 17, "emissionCompliant" }, - { 5, 15, "equippedBicycle" }, - { 6, 15, "weightCompliant" }, - { 7, 15, "heightCompliant" }, - { 8, 11, "pedestrians" }, - { 9, 17, "slowMovingPersons" }, - { 10, 15, "wheelchairUsers" }, - { 11, 18, "visualDisabilities" }, - { 12, 17, "audioDisabilities" }, - { 13, 24, "otherUnknownDisabilities" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { - 12, /* audioDisabilities(12) */ - 4, /* emissionCompliant(4) */ - 5, /* equippedBicycle(5) */ - 3, /* equippedOther(3) */ - 2, /* equippedTaxis(2) */ - 1, /* equippedTransit(1) */ - 7, /* heightCompliant(7) */ - 0, /* none(0) */ - 13, /* otherUnknownDisabilities(13) */ - 8, /* pedestrians(8) */ - 9, /* slowMovingPersons(9) */ - 11, /* visualDisabilities(11) */ - 6, /* weightCompliant(6) */ - 10 /* wheelchairUsers(10) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { - asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 15, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { - "RestrictionAppliesTo", - "RestrictionAppliesTo", - &asn_OP_NativeEnumerated, - asn_DEF_RestrictionAppliesTo_tags_1, - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionAppliesTo_tags_1) - /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ - { &asn_OER_type_RestrictionAppliesTo_constr_1, &asn_PER_type_RestrictionAppliesTo_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c deleted file mode 100644 index 5f94d21a5..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionClassAssignment.h" - -asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionClassID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionUserTypeList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "users" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { - sizeof(struct RestrictionClassAssignment), - offsetof(struct RestrictionClassAssignment, _asn_ctx), - asn_MAP_RestrictionClassAssignment_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { - "RestrictionClassAssignment", - "RestrictionClassAssignment", - &asn_OP_SEQUENCE, - asn_DEF_RestrictionClassAssignment_tags_1, - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassAssignment_tags_1) - /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RestrictionClassAssignment_1, - 2, /* Elements count */ - &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c deleted file mode 100644 index 3cc7a0584..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionClassID.h" - -int -RestrictionClassID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RestrictionClassID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { - "RestrictionClassID", - "RestrictionClassID", - &asn_OP_NativeInteger, - asn_DEF_RestrictionClassID_tags_1, - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassID_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassID_tags_1) - /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ - { &asn_OER_type_RestrictionClassID_constr_1, &asn_PER_type_RestrictionClassID_constr_1, RestrictionClassID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c deleted file mode 100644 index 230c52911..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionClassList.h" - -static asn_oer_constraints_t asn_OER_type_RestrictionClassList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..254)) */}; -asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RestrictionClassAssignment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { - sizeof(struct RestrictionClassList), - offsetof(struct RestrictionClassList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { - "RestrictionClassList", - "RestrictionClassList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RestrictionClassList_tags_1, - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionClassList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionClassList_tags_1) - /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ - { &asn_OER_type_RestrictionClassList_constr_1, &asn_PER_type_RestrictionClassList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RestrictionClassList_1, - 1, /* Single element */ - &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c deleted file mode 100644 index 4acc2646f..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionUserType-addGrpC.h" - -static asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[] = { - { ATF_POINTER, 1, offsetof(struct RestrictionUserType_addGrpC, emission), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmissionType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "emission" - }, -}; -static const int asn_MAP_RestrictionUserType_addGrpC_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RestrictionUserType_addGrpC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_addGrpC_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1 = { - sizeof(struct RestrictionUserType_addGrpC), - offsetof(struct RestrictionUserType_addGrpC, _asn_ctx), - asn_MAP_RestrictionUserType_addGrpC_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_RestrictionUserType_addGrpC_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC = { - "RestrictionUserType-addGrpC", - "RestrictionUserType-addGrpC", - &asn_OP_SEQUENCE, - asn_DEF_RestrictionUserType_addGrpC_tags_1, - sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) - /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ - asn_DEF_RestrictionUserType_addGrpC_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) - /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RestrictionUserType_addGrpC_1, - 1, /* Elements count */ - &asn_SPC_RestrictionUserType_addGrpC_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c deleted file mode 100644 index 6b2deb0fb..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionUserType.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_RestrictionUserType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_3 = { - sizeof(struct RestrictionUserType__regional), - offsetof(struct RestrictionUserType__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_3 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_3, - sizeof(asn_DEF_regional_tags_3) - /sizeof(asn_DEF_regional_tags_3[0]) - 1, /* 1 */ - asn_DEF_regional_tags_3, /* Same as above */ - sizeof(asn_DEF_regional_tags_3) - /sizeof(asn_DEF_regional_tags_3[0]), /* 2 */ - { &asn_OER_type_regional_constr_3, &asn_PER_type_regional_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_regional_3, - 1, /* Single element */ - &asn_SPC_regional_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RestrictionAppliesTo, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "basicType" - }, - { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_regional_3, - 0, - { &asn_OER_memb_regional_constr_3, &asn_PER_memb_regional_constr_3, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { - sizeof(struct RestrictionUserType), - offsetof(struct RestrictionUserType, _asn_ctx), - offsetof(struct RestrictionUserType, present), - sizeof(((struct RestrictionUserType *)0)->present), - asn_MAP_RestrictionUserType_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { - "RestrictionUserType", - "RestrictionUserType", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_RestrictionUserType_constr_1, &asn_PER_type_RestrictionUserType_constr_1, CHOICE_constraint }, - asn_MBR_RestrictionUserType_1, - 2, /* Elements count */ - &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c deleted file mode 100644 index 1b152a2a7..000000000 --- a/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RestrictionUserTypeList.h" - -static asn_oer_constraints_t asn_OER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { - { ATF_POINTER, 0, 0, - -1 /* Ambiguous tag (CHOICE?) */, - 0, - &asn_DEF_RestrictionUserType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { - sizeof(struct RestrictionUserTypeList), - offsetof(struct RestrictionUserTypeList, _asn_ctx), - 2, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { - "RestrictionUserTypeList", - "RestrictionUserTypeList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RestrictionUserTypeList_tags_1, - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ - sizeof(asn_DEF_RestrictionUserTypeList_tags_1) - /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ - { &asn_OER_type_RestrictionUserTypeList_constr_1, &asn_PER_type_RestrictionUserTypeList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RestrictionUserTypeList_1, - 1, /* Single element */ - &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c deleted file mode 100644 index c41eeb3f7..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadLaneSetList.h" - -static asn_oer_constraints_t asn_OER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GenericLane, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { - sizeof(struct RoadLaneSetList), - offsetof(struct RoadLaneSetList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { - "RoadLaneSetList", - "RoadLaneSetList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RoadLaneSetList_tags_1, - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadLaneSetList_tags_1) - /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ - { &asn_OER_type_RoadLaneSetList_constr_1, &asn_PER_type_RoadLaneSetList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RoadLaneSetList_1, - 1, /* Single element */ - &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c deleted file mode 100644 index 00f98f6ed..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadRegulatorID.h" - -int -RoadRegulatorID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { - "RoadRegulatorID", - "RoadRegulatorID", - &asn_OP_NativeInteger, - asn_DEF_RoadRegulatorID_tags_1, - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadRegulatorID_tags_1) - /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ - { &asn_OER_type_RoadRegulatorID_constr_1, &asn_PER_type_RoadRegulatorID_constr_1, RoadRegulatorID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegment.c b/src/tmx/Asn_J2735/src/r63/RoadSegment.c deleted file mode 100644 index 7d1945a46..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSegment.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSegment.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct RoadSegment__regional), - offsetof(struct RoadSegment__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegment, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "revision" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refPoint" - }, - { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimitList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedLimits" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadLaneSetList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roadLaneSet" - }, - { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; -static const ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { - sizeof(struct RoadSegment), - offsetof(struct RoadSegment, _asn_ctx), - asn_MAP_RoadSegment_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_RoadSegment_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegment = { - "RoadSegment", - "RoadSegment", - &asn_OP_SEQUENCE, - asn_DEF_RoadSegment_tags_1, - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - asn_DEF_RoadSegment_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegment_tags_1) - /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RoadSegment_1, - 8, /* Elements count */ - &asn_SPC_RoadSegment_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c deleted file mode 100644 index fcc29ae9d..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSegmentID.h" - -int -RoadSegmentID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RoadSegmentID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { - "RoadSegmentID", - "RoadSegmentID", - &asn_OP_NativeInteger, - asn_DEF_RoadSegmentID_tags_1, - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentID_tags_1) - /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ - { &asn_OER_type_RoadSegmentID_constr_1, &asn_PER_type_RoadSegmentID_constr_1, RoadSegmentID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c deleted file mode 100644 index 4494e8602..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSegmentList.h" - -static asn_oer_constraints_t asn_OER_type_RoadSegmentList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RoadSegment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { - sizeof(struct RoadSegmentList), - offsetof(struct RoadSegmentList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { - "RoadSegmentList", - "RoadSegmentList", - &asn_OP_SEQUENCE_OF, - asn_DEF_RoadSegmentList_tags_1, - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentList_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentList_tags_1) - /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ - { &asn_OER_type_RoadSegmentList_constr_1, &asn_PER_type_RoadSegmentList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_RoadSegmentList_1, - 1, /* Single element */ - &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c deleted file mode 100644 index 87701eda0..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSegmentReferenceID.h" - -asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { - { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadRegulatorID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "region" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSegmentID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, -}; -static const int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { - sizeof(struct RoadSegmentReferenceID), - offsetof(struct RoadSegmentReferenceID, _asn_ctx), - asn_MAP_RoadSegmentReferenceID_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { - "RoadSegmentReferenceID", - "RoadSegmentReferenceID", - &asn_OP_SEQUENCE, - asn_DEF_RoadSegmentReferenceID_tags_1, - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) - /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RoadSegmentReferenceID_1, - 2, /* Elements count */ - &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c b/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c deleted file mode 100644 index d150f992c..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c +++ /dev/null @@ -1,300 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSideAlert.h" - -static int -memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 8)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_description_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_type_description_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_description_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_memb_description_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_description_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_description_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { - sizeof(struct RoadSideAlert__description), - offsetof(struct RoadSideAlert__description, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_description_5 = { - "description", - "description", - &asn_OP_SEQUENCE_OF, - asn_DEF_description_tags_5, - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ - asn_DEF_description_tags_5, /* Same as above */ - sizeof(asn_DEF_description_tags_5) - /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ - { &asn_OER_type_description_constr_5, &asn_PER_type_description_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_description_5, - 1, /* Single element */ - &asn_SPC_description_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regional_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { - sizeof(struct RoadSideAlert__regional), - offsetof(struct RoadSideAlert__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_12 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_12, - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ - asn_DEF_regional_tags_12, /* Same as above */ - sizeof(asn_DEF_regional_tags_12) - /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ - { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, - asn_MBR_regional_12, - 1, /* Single element */ - &asn_SPC_regional_specs_12 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 1, offsetof(struct RoadSideAlert, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "typeEvent" - }, - { ATF_POINTER, 7, offsetof(struct RoadSideAlert, description), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_description_5, - 0, - { &asn_OER_memb_description_constr_5, &asn_PER_memb_description_constr_5, memb_description_constraint_1 }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 6, offsetof(struct RoadSideAlert, priority), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Priority, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_POINTER, 5, offsetof(struct RoadSideAlert, heading), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_POINTER, 4, offsetof(struct RoadSideAlert, extent), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_POINTER, 3, offsetof(struct RoadSideAlert, position), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "position" - }, - { ATF_POINTER, 2, offsetof(struct RoadSideAlert, furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "furtherInfoID" - }, - { ATF_POINTER, 1, offsetof(struct RoadSideAlert, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_12, - 0, - { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_RoadSideAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { - sizeof(struct RoadSideAlert), - offsetof(struct RoadSideAlert, _asn_ctx), - asn_MAP_RoadSideAlert_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_RoadSideAlert_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { - "RoadSideAlert", - "RoadSideAlert", - &asn_OP_SEQUENCE, - asn_DEF_RoadSideAlert_tags_1, - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - asn_DEF_RoadSideAlert_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSideAlert_tags_1) - /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RoadSideAlert_1, - 10, /* Elements count */ - &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadSignID.c b/src/tmx/Asn_J2735/src/r63/RoadSignID.c deleted file mode 100644 index c2cdbd616..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadSignID.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadSignID.h" - -asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "position" - }, - { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "viewAngle" - }, - { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MUTCDCode, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "mutcdCode" - }, - { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MsgCRC, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crc" - }, -}; -static const int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { - sizeof(struct RoadSignID), - offsetof(struct RoadSignID, _asn_ctx), - asn_MAP_RoadSignID_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_RoadSignID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RoadSignID = { - "RoadSignID", - "RoadSignID", - &asn_OP_SEQUENCE, - asn_DEF_RoadSignID_tags_1, - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - asn_DEF_RoadSignID_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadSignID_tags_1) - /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RoadSignID_1, - 4, /* Elements count */ - &asn_SPC_RoadSignID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c deleted file mode 100644 index 6232e0740..000000000 --- a/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "RoadwayCrownAngle.h" - -int -RoadwayCrownAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { - "RoadwayCrownAngle", - "RoadwayCrownAngle", - &asn_OP_NativeInteger, - asn_DEF_RoadwayCrownAngle_tags_1, - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_RoadwayCrownAngle_tags_1) - /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_RoadwayCrownAngle_constr_1, &asn_PER_type_RoadwayCrownAngle_constr_1, RoadwayCrownAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RollDetected.c b/src/tmx/Asn_J2735/src/r63/RollDetected.c deleted file mode 100644 index 017e10e77..000000000 --- a/src/tmx/Asn_J2735/src/r63/RollDetected.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "RollDetected.h" - -int -RollDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -14400 && value <= 14400)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RollDetected_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-14400..14400) */, - -1}; -asn_per_constraints_t asn_PER_type_RollDetected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RollDetected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RollDetected = { - "RollDetected", - "RollDetected", - &asn_OP_NativeInteger, - asn_DEF_RollDetected_tags_1, - sizeof(asn_DEF_RollDetected_tags_1) - /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ - asn_DEF_RollDetected_tags_1, /* Same as above */ - sizeof(asn_DEF_RollDetected_tags_1) - /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ - { &asn_OER_type_RollDetected_constr_1, &asn_PER_type_RollDetected_constr_1, RollDetected_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RollRate.c b/src/tmx/Asn_J2735/src/r63/RollRate.c deleted file mode 100644 index d5c525e3a..000000000 --- a/src/tmx/Asn_J2735/src/r63/RollRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "RollRate.h" - -int -RollRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RollRate_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_RollRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RollRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RollRate = { - "RollRate", - "RollRate", - &asn_OP_NativeInteger, - asn_DEF_RollRate_tags_1, - sizeof(asn_DEF_RollRate_tags_1) - /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ - asn_DEF_RollRate_tags_1, /* Same as above */ - sizeof(asn_DEF_RollRate_tags_1) - /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ - { &asn_OER_type_RollRate_constr_1, &asn_PER_type_RollRate_constr_1, RollRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c b/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c deleted file mode 100644 index 3b578a211..000000000 --- a/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "RollRateConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RollRateConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RollRateConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "degSec-100-00" }, - { 2, 13, "degSec-010-00" }, - { 3, 13, "degSec-005-00" }, - { 4, 13, "degSec-001-00" }, - { 5, 13, "degSec-000-10" }, - { 6, 13, "degSec-000-05" }, - { 7, 13, "degSec-000-01" } -}; -static const unsigned int asn_MAP_RollRateConfidence_enum2value_1[] = { - 7, /* degSec-000-01(7) */ - 6, /* degSec-000-05(6) */ - 5, /* degSec-000-10(5) */ - 4, /* degSec-001-00(4) */ - 3, /* degSec-005-00(3) */ - 2, /* degSec-010-00(2) */ - 1, /* degSec-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1 = { - asn_MAP_RollRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RollRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RollRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RollRateConfidence = { - "RollRateConfidence", - "RollRateConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_RollRateConfidence_tags_1, - sizeof(asn_DEF_RollRateConfidence_tags_1) - /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_RollRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_RollRateConfidence_tags_1) - /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_RollRateConfidence_constr_1, &asn_PER_type_RollRateConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RollRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SPAT.c b/src/tmx/Asn_J2735/src/r63/SPAT.c deleted file mode 100644 index 141e9211c..000000000 --- a/src/tmx/Asn_J2735/src/r63/SPAT.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SPAT.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct SPAT__regional), - offsetof(struct SPAT__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SPAT_1[] = { - { ATF_POINTER, 2, offsetof(struct SPAT, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionStateList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "intersections" - }, - { ATF_POINTER, 1, offsetof(struct SPAT, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SPAT_oms_1[] = { 0, 1, 3 }; -static const ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* intersections */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { - sizeof(struct SPAT), - offsetof(struct SPAT, _asn_ctx), - asn_MAP_SPAT_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_SPAT_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SPAT = { - "SPAT", - "SPAT", - &asn_OP_SEQUENCE, - asn_DEF_SPAT_tags_1, - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - asn_DEF_SPAT_tags_1, /* Same as above */ - sizeof(asn_DEF_SPAT_tags_1) - /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SPAT_1, - 4, /* Elements count */ - &asn_SPC_SPAT_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SSPindex.c b/src/tmx/Asn_J2735/src/r63/SSPindex.c deleted file mode 100644 index cb6113930..000000000 --- a/src/tmx/Asn_J2735/src/r63/SSPindex.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SSPindex.h" - -int -SSPindex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SSPindex_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_SSPindex_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SSPindex_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SSPindex = { - "SSPindex", - "SSPindex", - &asn_OP_NativeInteger, - asn_DEF_SSPindex_tags_1, - sizeof(asn_DEF_SSPindex_tags_1) - /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ - asn_DEF_SSPindex_tags_1, /* Same as above */ - sizeof(asn_DEF_SSPindex_tags_1) - /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ - { &asn_OER_type_SSPindex_constr_1, &asn_PER_type_SSPindex_constr_1, SSPindex_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Sample.c b/src/tmx/Asn_J2735/src/r63/Sample.c deleted file mode 100644 index 9f5a8478d..000000000 --- a/src/tmx/Asn_J2735/src/r63/Sample.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Sample.h" - -static int -memb_sampleStart_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sampleEnd_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_sampleStart_constr_2 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_sampleEnd_constr_3 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_Sample_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_sampleStart_constr_2, &asn_PER_memb_sampleStart_constr_2, memb_sampleStart_constraint_1 }, - 0, 0, /* No default value */ - "sampleStart" - }, - { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_sampleEnd_constr_3, &asn_PER_memb_sampleEnd_constr_3, memb_sampleEnd_constraint_1 }, - 0, 0, /* No default value */ - "sampleEnd" - }, -}; -static const ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { - sizeof(struct Sample), - offsetof(struct Sample, _asn_ctx), - asn_MAP_Sample_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Sample = { - "Sample", - "Sample", - &asn_OP_SEQUENCE, - asn_DEF_Sample_tags_1, - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - asn_DEF_Sample_tags_1, /* Same as above */ - sizeof(asn_DEF_Sample_tags_1) - /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Sample_1, - 2, /* Elements count */ - &asn_SPC_Sample_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Scale-B12.c b/src/tmx/Asn_J2735/src/r63/Scale-B12.c deleted file mode 100644 index b98a85efc..000000000 --- a/src/tmx/Asn_J2735/src/r63/Scale-B12.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Scale-B12.h" - -int -Scale_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Scale_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { - "Scale-B12", - "Scale-B12", - &asn_OP_NativeInteger, - asn_DEF_Scale_B12_tags_1, - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - asn_DEF_Scale_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_Scale_B12_tags_1) - /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ - { &asn_OER_type_Scale_B12_constr_1, &asn_PER_type_Scale_B12_constr_1, Scale_B12_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Schedule.c b/src/tmx/Asn_J2735/src/r63/Schedule.c deleted file mode 100644 index 5af708a5e..000000000 --- a/src/tmx/Asn_J2735/src/r63/Schedule.c +++ /dev/null @@ -1,328 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "Schedule.h" - -static int -memb_start_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 9223372036854775807)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_end_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 9223372036854775807)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_dow_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size == 7)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size <= 32)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_dow_constr_4 CC_NOTUSED = { - { 0, 0 }, - 7 /* (SIZE(7..7)) */}; -static asn_per_constraints_t asn_PER_type_dow_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_between_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..32)) */}; -static asn_per_constraints_t asn_PER_type_between_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_start_constr_2 CC_NOTUSED = { - { 8, 1 } /* (0..9223372036854775807) */, - -1}; -static asn_per_constraints_t asn_PER_memb_start_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_end_constr_3 CC_NOTUSED = { - { 8, 1 } /* (0..9223372036854775807) */, - -1}; -static asn_per_constraints_t asn_PER_memb_end_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_dow_constr_4 CC_NOTUSED = { - { 0, 0 }, - 7 /* (SIZE(7..7)) */}; -static asn_per_constraints_t asn_PER_memb_dow_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_between_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..32)) */}; -static asn_per_constraints_t asn_PER_memb_between_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_dow_4[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)), - 0, - &asn_DEF_BOOLEAN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_dow_tags_4[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_dow_specs_4 = { - sizeof(struct Schedule__dow), - offsetof(struct Schedule__dow, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_dow_4 = { - "dow", - "dow", - &asn_OP_SEQUENCE_OF, - asn_DEF_dow_tags_4, - sizeof(asn_DEF_dow_tags_4) - /sizeof(asn_DEF_dow_tags_4[0]) - 1, /* 1 */ - asn_DEF_dow_tags_4, /* Same as above */ - sizeof(asn_DEF_dow_tags_4) - /sizeof(asn_DEF_dow_tags_4[0]), /* 2 */ - { &asn_OER_type_dow_constr_4, &asn_PER_type_dow_constr_4, SEQUENCE_OF_constraint }, - asn_MBR_dow_4, - 1, /* Single element */ - &asn_SPC_dow_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_between_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_DaySchedule, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_between_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_between_specs_6 = { - sizeof(struct Schedule__between), - offsetof(struct Schedule__between, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_between_6 = { - "between", - "between", - &asn_OP_SEQUENCE_OF, - asn_DEF_between_tags_6, - sizeof(asn_DEF_between_tags_6) - /sizeof(asn_DEF_between_tags_6[0]) - 1, /* 1 */ - asn_DEF_between_tags_6, /* Same as above */ - sizeof(asn_DEF_between_tags_6) - /sizeof(asn_DEF_between_tags_6[0]), /* 2 */ - { &asn_OER_type_between_constr_6, &asn_PER_type_between_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_between_6, - 1, /* Single element */ - &asn_SPC_between_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_Schedule_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Schedule, start), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_start_constr_2, &asn_PER_memb_start_constr_2, memb_start_constraint_1 }, - 0, 0, /* No default value */ - "start" - }, - { ATF_NOFLAGS, 0, offsetof(struct Schedule, end), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_end_constr_3, &asn_PER_memb_end_constr_3, memb_end_constraint_1 }, - 0, 0, /* No default value */ - "end" - }, - { ATF_NOFLAGS, 0, offsetof(struct Schedule, dow), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_dow_4, - 0, - { &asn_OER_memb_dow_constr_4, &asn_PER_memb_dow_constr_4, memb_dow_constraint_1 }, - 0, 0, /* No default value */ - "dow" - }, - { ATF_POINTER, 2, offsetof(struct Schedule, between), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_between_6, - 0, - { &asn_OER_memb_between_constr_6, &asn_PER_memb_between_constr_6, memb_between_constraint_1 }, - 0, 0, /* No default value */ - "between" - }, - { ATF_POINTER, 1, offsetof(struct Schedule, repeat), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RepeatParams, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "repeat" - }, -}; -static const int asn_MAP_Schedule_oms_1[] = { 3, 4 }; -static const ber_tlv_tag_t asn_DEF_Schedule_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Schedule_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* start */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* end */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dow */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* between */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* repeat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1 = { - sizeof(struct Schedule), - offsetof(struct Schedule, _asn_ctx), - asn_MAP_Schedule_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_Schedule_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Schedule = { - "Schedule", - "Schedule", - &asn_OP_SEQUENCE, - asn_DEF_Schedule_tags_1, - sizeof(asn_DEF_Schedule_tags_1) - /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ - asn_DEF_Schedule_tags_1, /* Same as above */ - sizeof(asn_DEF_Schedule_tags_1) - /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Schedule_1, - 5, /* Elements count */ - &asn_SPC_Schedule_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Second.c b/src/tmx/Asn_J2735/src/r63/Second.c deleted file mode 100644 index 886936adc..000000000 --- a/src/tmx/Asn_J2735/src/r63/Second.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Second.h" - -int -Second_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 60)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Second_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..60) */, - -1}; -asn_per_constraints_t asn_PER_type_Second_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Second_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Second = { - "Second", - "Second", - &asn_OP_NativeInteger, - asn_DEF_Second_tags_1, - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - asn_DEF_Second_tags_1, /* Same as above */ - sizeof(asn_DEF_Second_tags_1) - /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ - { &asn_OER_type_Second_constr_1, &asn_PER_type_Second_constr_1, Second_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SecondOfTime.c b/src/tmx/Asn_J2735/src/r63/SecondOfTime.c deleted file mode 100644 index 0f790d9b9..000000000 --- a/src/tmx/Asn_J2735/src/r63/SecondOfTime.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SecondOfTime.h" - -int -SecondOfTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 61)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SecondOfTime_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..61) */, - -1}; -asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 61 } /* (0..61) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SecondOfTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SecondOfTime = { - "SecondOfTime", - "SecondOfTime", - &asn_OP_NativeInteger, - asn_DEF_SecondOfTime_tags_1, - sizeof(asn_DEF_SecondOfTime_tags_1) - /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ - asn_DEF_SecondOfTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SecondOfTime_tags_1) - /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ - { &asn_OER_type_SecondOfTime_constr_1, &asn_PER_type_SecondOfTime_constr_1, SecondOfTime_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SecondsAngle.c b/src/tmx/Asn_J2735/src/r63/SecondsAngle.c deleted file mode 100644 index e2d4da7f4..000000000 --- a/src/tmx/Asn_J2735/src/r63/SecondsAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SecondsAngle.h" - -int -SecondsAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 5999)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SecondsAngle_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..5999) */, - -1}; -asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { - "SecondsAngle", - "SecondsAngle", - &asn_OP_NativeInteger, - asn_DEF_SecondsAngle_tags_1, - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - asn_DEF_SecondsAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SecondsAngle_tags_1) - /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_SecondsAngle_constr_1, &asn_PER_type_SecondsAngle_constr_1, SecondsAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c deleted file mode 100644 index 3db3a8407..000000000 --- a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SegmentAttributeLL.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeLL_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 10, "doNotBlock" }, - { 2, 9, "whiteLine" }, - { 3, 15, "mergingLaneLeft" }, - { 4, 16, "mergingLaneRight" }, - { 5, 10, "curbOnLeft" }, - { 6, 11, "curbOnRight" }, - { 7, 17, "loadingzoneOnLeft" }, - { 8, 18, "loadingzoneOnRight" }, - { 9, 18, "turnOutPointOnLeft" }, - { 10, 19, "turnOutPointOnRight" }, - { 11, 21, "adjacentParkingOnLeft" }, - { 12, 22, "adjacentParkingOnRight" }, - { 13, 22, "adjacentBikeLaneOnLeft" }, - { 14, 23, "adjacentBikeLaneOnRight" }, - { 15, 14, "sharedBikeLane" }, - { 16, 14, "bikeBoxInFront" }, - { 17, 17, "transitStopOnLeft" }, - { 18, 18, "transitStopOnRight" }, - { 19, 17, "transitStopInLane" }, - { 20, 24, "sharedWithTrackedVehicle" }, - { 21, 10, "safeIsland" }, - { 22, 15, "lowCurbsPresent" }, - { 23, 18, "rumbleStripPresent" }, - { 24, 23, "audibleSignalingPresent" }, - { 25, 21, "adaptiveTimingPresent" }, - { 26, 22, "rfSignalRequestPresent" }, - { 27, 20, "partialCurbIntrusion" }, - { 28, 11, "taperToLeft" }, - { 29, 12, "taperToRight" }, - { 30, 17, "taperToCenterLine" }, - { 31, 15, "parallelParking" }, - { 32, 13, "headInParking" }, - { 33, 11, "freeParking" }, - { 34, 25, "timeRestrictionsOnParking" }, - { 35, 10, "costToPark" }, - { 36, 19, "midBlockCurbPresent" }, - { 37, 21, "unEvenPavementPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SegmentAttributeLL_enum2value_1[] = { - 25, /* adaptiveTimingPresent(25) */ - 13, /* adjacentBikeLaneOnLeft(13) */ - 14, /* adjacentBikeLaneOnRight(14) */ - 11, /* adjacentParkingOnLeft(11) */ - 12, /* adjacentParkingOnRight(12) */ - 24, /* audibleSignalingPresent(24) */ - 16, /* bikeBoxInFront(16) */ - 35, /* costToPark(35) */ - 5, /* curbOnLeft(5) */ - 6, /* curbOnRight(6) */ - 1, /* doNotBlock(1) */ - 33, /* freeParking(33) */ - 32, /* headInParking(32) */ - 7, /* loadingzoneOnLeft(7) */ - 8, /* loadingzoneOnRight(8) */ - 22, /* lowCurbsPresent(22) */ - 3, /* mergingLaneLeft(3) */ - 4, /* mergingLaneRight(4) */ - 36, /* midBlockCurbPresent(36) */ - 31, /* parallelParking(31) */ - 27, /* partialCurbIntrusion(27) */ - 0, /* reserved(0) */ - 26, /* rfSignalRequestPresent(26) */ - 23, /* rumbleStripPresent(23) */ - 21, /* safeIsland(21) */ - 15, /* sharedBikeLane(15) */ - 20, /* sharedWithTrackedVehicle(20) */ - 30, /* taperToCenterLine(30) */ - 28, /* taperToLeft(28) */ - 29, /* taperToRight(29) */ - 34, /* timeRestrictionsOnParking(34) */ - 19, /* transitStopInLane(19) */ - 17, /* transitStopOnLeft(17) */ - 18, /* transitStopOnRight(18) */ - 9, /* turnOutPointOnLeft(9) */ - 10, /* turnOutPointOnRight(10) */ - 37, /* unEvenPavementPresent(37) */ - 2 /* whiteLine(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1 = { - asn_MAP_SegmentAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SegmentAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ - 38, /* Number of elements in the maps */ - 39, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeLL_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL = { - "SegmentAttributeLL", - "SegmentAttributeLL", - &asn_OP_NativeEnumerated, - asn_DEF_SegmentAttributeLL_tags_1, - sizeof(asn_DEF_SegmentAttributeLL_tags_1) - /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeLL_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeLL_tags_1) - /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ - { &asn_OER_type_SegmentAttributeLL_constr_1, &asn_PER_type_SegmentAttributeLL_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SegmentAttributeLL_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c deleted file mode 100644 index 97efd0c6f..000000000 --- a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SegmentAttributeLLList.h" - -static asn_oer_constraints_t asn_OER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_SegmentAttributeLL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeLLList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1 = { - sizeof(struct SegmentAttributeLLList), - offsetof(struct SegmentAttributeLLList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList = { - "SegmentAttributeLLList", - "SegmentAttributeLLList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SegmentAttributeLLList_tags_1, - sizeof(asn_DEF_SegmentAttributeLLList_tags_1) - /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeLLList_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeLLList_tags_1) - /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ - { &asn_OER_type_SegmentAttributeLLList_constr_1, &asn_PER_type_SegmentAttributeLLList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SegmentAttributeLLList_1, - 1, /* Single element */ - &asn_SPC_SegmentAttributeLLList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c deleted file mode 100644 index 5af4267af..000000000 --- a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SegmentAttributeXY.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeXY_value2enum_1[] = { - { 0, 8, "reserved" }, - { 1, 10, "doNotBlock" }, - { 2, 9, "whiteLine" }, - { 3, 15, "mergingLaneLeft" }, - { 4, 16, "mergingLaneRight" }, - { 5, 10, "curbOnLeft" }, - { 6, 11, "curbOnRight" }, - { 7, 17, "loadingzoneOnLeft" }, - { 8, 18, "loadingzoneOnRight" }, - { 9, 18, "turnOutPointOnLeft" }, - { 10, 19, "turnOutPointOnRight" }, - { 11, 21, "adjacentParkingOnLeft" }, - { 12, 22, "adjacentParkingOnRight" }, - { 13, 22, "adjacentBikeLaneOnLeft" }, - { 14, 23, "adjacentBikeLaneOnRight" }, - { 15, 14, "sharedBikeLane" }, - { 16, 14, "bikeBoxInFront" }, - { 17, 17, "transitStopOnLeft" }, - { 18, 18, "transitStopOnRight" }, - { 19, 17, "transitStopInLane" }, - { 20, 24, "sharedWithTrackedVehicle" }, - { 21, 10, "safeIsland" }, - { 22, 15, "lowCurbsPresent" }, - { 23, 18, "rumbleStripPresent" }, - { 24, 23, "audibleSignalingPresent" }, - { 25, 21, "adaptiveTimingPresent" }, - { 26, 22, "rfSignalRequestPresent" }, - { 27, 20, "partialCurbIntrusion" }, - { 28, 11, "taperToLeft" }, - { 29, 12, "taperToRight" }, - { 30, 17, "taperToCenterLine" }, - { 31, 15, "parallelParking" }, - { 32, 13, "headInParking" }, - { 33, 11, "freeParking" }, - { 34, 25, "timeRestrictionsOnParking" }, - { 35, 10, "costToPark" }, - { 36, 19, "midBlockCurbPresent" }, - { 37, 21, "unEvenPavementPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SegmentAttributeXY_enum2value_1[] = { - 25, /* adaptiveTimingPresent(25) */ - 13, /* adjacentBikeLaneOnLeft(13) */ - 14, /* adjacentBikeLaneOnRight(14) */ - 11, /* adjacentParkingOnLeft(11) */ - 12, /* adjacentParkingOnRight(12) */ - 24, /* audibleSignalingPresent(24) */ - 16, /* bikeBoxInFront(16) */ - 35, /* costToPark(35) */ - 5, /* curbOnLeft(5) */ - 6, /* curbOnRight(6) */ - 1, /* doNotBlock(1) */ - 33, /* freeParking(33) */ - 32, /* headInParking(32) */ - 7, /* loadingzoneOnLeft(7) */ - 8, /* loadingzoneOnRight(8) */ - 22, /* lowCurbsPresent(22) */ - 3, /* mergingLaneLeft(3) */ - 4, /* mergingLaneRight(4) */ - 36, /* midBlockCurbPresent(36) */ - 31, /* parallelParking(31) */ - 27, /* partialCurbIntrusion(27) */ - 0, /* reserved(0) */ - 26, /* rfSignalRequestPresent(26) */ - 23, /* rumbleStripPresent(23) */ - 21, /* safeIsland(21) */ - 15, /* sharedBikeLane(15) */ - 20, /* sharedWithTrackedVehicle(20) */ - 30, /* taperToCenterLine(30) */ - 28, /* taperToLeft(28) */ - 29, /* taperToRight(29) */ - 34, /* timeRestrictionsOnParking(34) */ - 19, /* transitStopInLane(19) */ - 17, /* transitStopOnLeft(17) */ - 18, /* transitStopOnRight(18) */ - 9, /* turnOutPointOnLeft(9) */ - 10, /* turnOutPointOnRight(10) */ - 37, /* unEvenPavementPresent(37) */ - 2 /* whiteLine(2) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1 = { - asn_MAP_SegmentAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SegmentAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ - 38, /* Number of elements in the maps */ - 39, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeXY_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY = { - "SegmentAttributeXY", - "SegmentAttributeXY", - &asn_OP_NativeEnumerated, - asn_DEF_SegmentAttributeXY_tags_1, - sizeof(asn_DEF_SegmentAttributeXY_tags_1) - /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeXY_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeXY_tags_1) - /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ - { &asn_OER_type_SegmentAttributeXY_constr_1, &asn_PER_type_SegmentAttributeXY_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SegmentAttributeXY_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c deleted file mode 100644 index 2f9175c54..000000000 --- a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SegmentAttributeXYList.h" - -static asn_oer_constraints_t asn_OER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_SegmentAttributeXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SegmentAttributeXYList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1 = { - sizeof(struct SegmentAttributeXYList), - offsetof(struct SegmentAttributeXYList, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList = { - "SegmentAttributeXYList", - "SegmentAttributeXYList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SegmentAttributeXYList_tags_1, - sizeof(asn_DEF_SegmentAttributeXYList_tags_1) - /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ - asn_DEF_SegmentAttributeXYList_tags_1, /* Same as above */ - sizeof(asn_DEF_SegmentAttributeXYList_tags_1) - /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ - { &asn_OER_type_SegmentAttributeXYList_constr_1, &asn_PER_type_SegmentAttributeXYList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SegmentAttributeXYList_1, - 1, /* Single element */ - &asn_SPC_SegmentAttributeXYList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c deleted file mode 100644 index 67e14c954..000000000 --- a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SemiMajorAxisAccuracy.h" - -int -SemiMajorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SemiMajorAxisAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy = { - "SemiMajorAxisAccuracy", - "SemiMajorAxisAccuracy", - &asn_OP_NativeInteger, - asn_DEF_SemiMajorAxisAccuracy_tags_1, - sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ - asn_DEF_SemiMajorAxisAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ - { &asn_OER_type_SemiMajorAxisAccuracy_constr_1, &asn_PER_type_SemiMajorAxisAccuracy_constr_1, SemiMajorAxisAccuracy_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c deleted file mode 100644 index 03add30b7..000000000 --- a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SemiMajorAxisOrientation.h" - -int -SemiMajorAxisOrientation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SemiMajorAxisOrientation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation = { - "SemiMajorAxisOrientation", - "SemiMajorAxisOrientation", - &asn_OP_NativeInteger, - asn_DEF_SemiMajorAxisOrientation_tags_1, - sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) - /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ - asn_DEF_SemiMajorAxisOrientation_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) - /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ - { &asn_OER_type_SemiMajorAxisOrientation_constr_1, &asn_PER_type_SemiMajorAxisOrientation_constr_1, SemiMajorAxisOrientation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c deleted file mode 100644 index e780dd015..000000000 --- a/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SemiMinorAxisAccuracy.h" - -int -SemiMinorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SemiMinorAxisAccuracy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy = { - "SemiMinorAxisAccuracy", - "SemiMinorAxisAccuracy", - &asn_OP_NativeInteger, - asn_DEF_SemiMinorAxisAccuracy_tags_1, - sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ - asn_DEF_SemiMinorAxisAccuracy_tags_1, /* Same as above */ - sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) - /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ - { &asn_OER_type_SemiMinorAxisAccuracy_constr_1, &asn_PER_type_SemiMinorAxisAccuracy_constr_1, SemiMinorAxisAccuracy_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c b/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c deleted file mode 100644 index d45d92e5a..000000000 --- a/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "SensorDataSharingMessage.h" - -asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sourceID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sourceID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, equipmentType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EquipmentType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "equipmentType" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sDSMTimeStamp), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sDSMTimeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPos), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refPos" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPosXYConf), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PositionalAccuracy, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refPosXYConf" - }, - { ATF_POINTER, 1, offsetof(struct SensorDataSharingMessage, refPosElConf), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ElevationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refPosElConf" - }, - { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, objects), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DetectedObjectList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "objects" - }, -}; -static const int asn_MAP_SensorDataSharingMessage_oms_1[] = { 6 }; -static const ber_tlv_tag_t asn_DEF_SensorDataSharingMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SensorDataSharingMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sourceID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* equipmentType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sDSMTimeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* refPos */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refPosXYConf */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refPosElConf */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* objects */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1 = { - sizeof(struct SensorDataSharingMessage), - offsetof(struct SensorDataSharingMessage, _asn_ctx), - asn_MAP_SensorDataSharingMessage_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_SensorDataSharingMessage_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage = { - "SensorDataSharingMessage", - "SensorDataSharingMessage", - &asn_OP_SEQUENCE, - asn_DEF_SensorDataSharingMessage_tags_1, - sizeof(asn_DEF_SensorDataSharingMessage_tags_1) - /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ - asn_DEF_SensorDataSharingMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SensorDataSharingMessage_tags_1) - /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SensorDataSharingMessage_1, - 8, /* Elements count */ - &asn_SPC_SensorDataSharingMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ShapePointSet.c b/src/tmx/Asn_J2735/src/r63/ShapePointSet.c deleted file mode 100644 index b6447d9d5..000000000 --- a/src/tmx/Asn_J2735/src/r63/ShapePointSet.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ShapePointSet.h" - -asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { - { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Position3D, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "anchor" - }, - { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneWidth" - }, - { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DirectionOfUse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "directionality" - }, - { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeListXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nodeList" - }, -}; -static const int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { - sizeof(struct ShapePointSet), - offsetof(struct ShapePointSet, _asn_ctx), - asn_MAP_ShapePointSet_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_ShapePointSet_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { - "ShapePointSet", - "ShapePointSet", - &asn_OP_SEQUENCE, - asn_DEF_ShapePointSet_tags_1, - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - asn_DEF_ShapePointSet_tags_1, /* Same as above */ - sizeof(asn_DEF_ShapePointSet_tags_1) - /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ShapePointSet_1, - 4, /* Elements count */ - &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignPrority.c b/src/tmx/Asn_J2735/src/r63/SignPrority.c deleted file mode 100644 index 2f69bbfe0..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignPrority.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignPrority.h" - -int -SignPrority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 7)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SignPrority_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..7) */, - -1}; -asn_per_constraints_t asn_PER_type_SignPrority_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignPrority = { - "SignPrority", - "SignPrority", - &asn_OP_NativeInteger, - asn_DEF_SignPrority_tags_1, - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - asn_DEF_SignPrority_tags_1, /* Same as above */ - sizeof(asn_DEF_SignPrority_tags_1) - /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ - { &asn_OER_type_SignPrority_constr_1, &asn_PER_type_SignPrority_constr_1, SignPrority_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalControlZone.c b/src/tmx/Asn_J2735/src/r63/SignalControlZone.c deleted file mode 100644 index 01ab8054c..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalControlZone.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalControlZone.h" - -asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, zone), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "zone" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* zone */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { - sizeof(struct SignalControlZone), - offsetof(struct SignalControlZone, _asn_ctx), - asn_MAP_SignalControlZone_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { - "SignalControlZone", - "SignalControlZone", - &asn_OP_SEQUENCE, - asn_DEF_SignalControlZone_tags_1, - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - asn_DEF_SignalControlZone_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalControlZone_tags_1) - /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalControlZone_1, - 1, /* Elements count */ - &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalGroupID.c b/src/tmx/Asn_J2735/src/r63/SignalGroupID.c deleted file mode 100644 index 5d006a35f..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalGroupID.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalGroupID.h" - -int -SignalGroupID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SignalGroupID_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { - "SignalGroupID", - "SignalGroupID", - &asn_OP_NativeInteger, - asn_DEF_SignalGroupID_tags_1, - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - asn_DEF_SignalGroupID_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalGroupID_tags_1) - /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalGroupID_constr_1, &asn_PER_type_SignalGroupID_constr_1, SignalGroupID_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c deleted file mode 100644 index b49249b50..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalHeadLocation.h" - -asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_NodeOffsetPointXY, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "node" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalGroupID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "signalGroupID" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { - sizeof(struct SignalHeadLocation), - offsetof(struct SignalHeadLocation, _asn_ctx), - asn_MAP_SignalHeadLocation_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { - "SignalHeadLocation", - "SignalHeadLocation", - &asn_OP_SEQUENCE, - asn_DEF_SignalHeadLocation_tags_1, - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocation_tags_1) - /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalHeadLocation_1, - 2, /* Elements count */ - &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c deleted file mode 100644 index c9c5678da..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalHeadLocationList.h" - -static asn_oer_constraints_t asn_OER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..20)) */}; -asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalHeadLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { - sizeof(struct SignalHeadLocationList), - offsetof(struct SignalHeadLocationList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { - "SignalHeadLocationList", - "SignalHeadLocationList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalHeadLocationList_tags_1, - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalHeadLocationList_tags_1) - /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalHeadLocationList_constr_1, &asn_PER_type_SignalHeadLocationList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SignalHeadLocationList_1, - 1, /* Single element */ - &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c b/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c deleted file mode 100644 index 178bb4733..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalReqScheme.h" - -int -SignalReqScheme_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SignalReqScheme_constr_1 CC_NOTUSED = { - { 0, 0 }, - 1 /* (SIZE(1..1)) */}; -static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { - "SignalReqScheme", - "SignalReqScheme", - &asn_OP_OCTET_STRING, - asn_DEF_SignalReqScheme_tags_1, - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - asn_DEF_SignalReqScheme_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalReqScheme_tags_1) - /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalReqScheme_constr_1, &asn_PER_type_SignalReqScheme_constr_1, SignalReqScheme_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequest.c b/src/tmx/Asn_J2735/src/r63/SignalRequest.c deleted file mode 100644 index 0b1f6e615..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalRequest.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalRequest.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct SignalRequest__regional), - offsetof(struct SignalRequest__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requestID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestType), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PriorityRequestType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requestType" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, inBoundLane), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "inBoundLane" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequest, outBoundLane), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "outBoundLane" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequest, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequest_oms_1[] = { 4, 5 }; -static const ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestType */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inBoundLane */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outBoundLane */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { - sizeof(struct SignalRequest), - offsetof(struct SignalRequest, _asn_ctx), - asn_MAP_SignalRequest_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_SignalRequest_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequest = { - "SignalRequest", - "SignalRequest", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequest_tags_1, - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - asn_DEF_SignalRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequest_tags_1) - /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalRequest_1, - 6, /* Elements count */ - &asn_SPC_SignalRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestList.c b/src/tmx/Asn_J2735/src/r63/SignalRequestList.c deleted file mode 100644 index b669afba9..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalRequestList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalRequestList.h" - -static asn_oer_constraints_t asn_OER_type_SignalRequestList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SignalRequestList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalRequestPackage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalRequestList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1 = { - sizeof(struct SignalRequestList), - offsetof(struct SignalRequestList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestList = { - "SignalRequestList", - "SignalRequestList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalRequestList_tags_1, - sizeof(asn_DEF_SignalRequestList_tags_1) - /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestList_tags_1) - /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalRequestList_constr_1, &asn_PER_type_SignalRequestList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SignalRequestList_1, - 1, /* Single element */ - &asn_SPC_SignalRequestList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c b/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c deleted file mode 100644 index d924c57af..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalRequestMessage.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct SignalRequestMessage__regional), - offsetof(struct SignalRequestMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, second), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequestMessage, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, requests), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequestList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requests" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, requestor), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requestor" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequestMessage_oms_1[] = { 0, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_SignalRequestMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequestMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* requestor */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1 = { - sizeof(struct SignalRequestMessage), - offsetof(struct SignalRequestMessage, _asn_ctx), - asn_MAP_SignalRequestMessage_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_SignalRequestMessage_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage = { - "SignalRequestMessage", - "SignalRequestMessage", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequestMessage_tags_1, - sizeof(asn_DEF_SignalRequestMessage_tags_1) - /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestMessage_tags_1) - /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalRequestMessage_1, - 6, /* Elements count */ - &asn_SPC_SignalRequestMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c b/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c deleted file mode 100644 index 696448741..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalRequestPackage.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct SignalRequestPackage__regional), - offsetof(struct SignalRequestPackage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequestPackage, request), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "request" - }, - { ATF_POINTER, 4, offsetof(struct SignalRequestPackage, minute), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 3, offsetof(struct SignalRequestPackage, second), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequestPackage, duration), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "duration" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequestPackage, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalRequestPackage_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalRequestPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequestPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* duration */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1 = { - sizeof(struct SignalRequestPackage), - offsetof(struct SignalRequestPackage, _asn_ctx), - asn_MAP_SignalRequestPackage_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalRequestPackage_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage = { - "SignalRequestPackage", - "SignalRequestPackage", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequestPackage_tags_1, - sizeof(asn_DEF_SignalRequestPackage_tags_1) - /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ - asn_DEF_SignalRequestPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequestPackage_tags_1) - /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalRequestPackage_1, - 5, /* Elements count */ - &asn_SPC_SignalRequestPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c b/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c deleted file mode 100644 index a9484cb18..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalRequesterInfo.h" - -asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, request), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "request" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_POINTER, 2, offsetof(struct SignalRequesterInfo, role), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 1, offsetof(struct SignalRequesterInfo, typeData), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RequestorType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "typeData" - }, -}; -static const int asn_MAP_SignalRequesterInfo_oms_1[] = { 3, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalRequesterInfo_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalRequesterInfo_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* request */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* typeData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1 = { - sizeof(struct SignalRequesterInfo), - offsetof(struct SignalRequesterInfo, _asn_ctx), - asn_MAP_SignalRequesterInfo_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalRequesterInfo_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo = { - "SignalRequesterInfo", - "SignalRequesterInfo", - &asn_OP_SEQUENCE, - asn_DEF_SignalRequesterInfo_tags_1, - sizeof(asn_DEF_SignalRequesterInfo_tags_1) - /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ - asn_DEF_SignalRequesterInfo_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalRequesterInfo_tags_1) - /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalRequesterInfo_1, - 5, /* Elements count */ - &asn_SPC_SignalRequesterInfo_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatus.c b/src/tmx/Asn_J2735/src/r63/SignalStatus.c deleted file mode 100644 index 0a2a843dd..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalStatus.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalStatus.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { - sizeof(struct SignalStatus__regional), - offsetof(struct SignalStatus__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_5 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_5, - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ - asn_DEF_regional_tags_5, /* Same as above */ - sizeof(asn_DEF_regional_tags_5) - /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ - { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_regional_5, - 1, /* Single element */ - &asn_SPC_regional_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatus_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IntersectionReferenceID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sigStatus), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalStatusPackageList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sigStatus" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatus, regional), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_regional_5, - 0, - { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatus_oms_1[] = { 3 }; -static const ber_tlv_tag_t asn_DEF_SignalStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sigStatus */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1 = { - sizeof(struct SignalStatus), - offsetof(struct SignalStatus, _asn_ctx), - asn_MAP_SignalStatus_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_SignalStatus_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatus = { - "SignalStatus", - "SignalStatus", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatus_tags_1, - sizeof(asn_DEF_SignalStatus_tags_1) - /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ - asn_DEF_SignalStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatus_tags_1) - /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalStatus_1, - 4, /* Elements count */ - &asn_SPC_SignalStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusList.c b/src/tmx/Asn_J2735/src/r63/SignalStatusList.c deleted file mode 100644 index 194391425..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalStatusList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalStatusList.h" - -static asn_oer_constraints_t asn_OER_type_SignalStatusList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SignalStatusList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalStatusList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1 = { - sizeof(struct SignalStatusList), - offsetof(struct SignalStatusList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusList = { - "SignalStatusList", - "SignalStatusList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalStatusList_tags_1, - sizeof(asn_DEF_SignalStatusList_tags_1) - /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusList_tags_1) - /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalStatusList_constr_1, &asn_PER_type_SignalStatusList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SignalStatusList_1, - 1, /* Single element */ - &asn_SPC_SignalStatusList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c deleted file mode 100644 index 804f4f2f9..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalStatusMessage.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_6[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { - sizeof(struct SignalStatusMessage__regional), - offsetof(struct SignalStatusMessage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_6 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_6, - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ - asn_DEF_regional_tags_6, /* Same as above */ - sizeof(asn_DEF_regional_tags_6) - /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ - { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, - asn_MBR_regional_6, - 1, /* Single element */ - &asn_SPC_regional_specs_6 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, second), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, sequenceNumber), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sequenceNumber" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalStatusList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, regional), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - 0, - &asn_DEF_regional_6, - 0, - { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatusMessage_oms_1[] = { 0, 2, 4 }; -static const ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { - sizeof(struct SignalStatusMessage), - offsetof(struct SignalStatusMessage, _asn_ctx), - asn_MAP_SignalStatusMessage_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { - "SignalStatusMessage", - "SignalStatusMessage", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatusMessage_tags_1, - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusMessage_tags_1) - /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalStatusMessage_1, - 5, /* Elements count */ - &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c b/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c deleted file mode 100644 index d30ee5efb..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c +++ /dev/null @@ -1,201 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalStatusPackage.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_9[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { - sizeof(struct SignalStatusPackage__regional), - offsetof(struct SignalStatusPackage__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_9 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_9, - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ - asn_DEF_regional_tags_9, /* Same as above */ - sizeof(asn_DEF_regional_tags_9) - /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ - { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, - asn_MBR_regional_9, - 1, /* Single element */ - &asn_SPC_regional_specs_9 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, requester), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignalRequesterInfo, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "requester" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, inboundOn), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "inboundOn" - }, - { ATF_POINTER, 4, offsetof(struct SignalStatusPackage, outboundOn), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_IntersectionAccessPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "outboundOn" - }, - { ATF_POINTER, 3, offsetof(struct SignalStatusPackage, minute), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minute" - }, - { ATF_POINTER, 2, offsetof(struct SignalStatusPackage, second), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "second" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, duration), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSecond, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "duration" - }, - { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, status), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PrioritizationResponseStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - 0, - &asn_DEF_regional_9, - 0, - { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SignalStatusPackage_oms_1[] = { 0, 2, 3, 4, 5, 7 }; -static const ber_tlv_tag_t asn_DEF_SignalStatusPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SignalStatusPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* requester */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* inboundOn */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* outboundOn */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* minute */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* second */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duration */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1 = { - sizeof(struct SignalStatusPackage), - offsetof(struct SignalStatusPackage, _asn_ctx), - asn_MAP_SignalStatusPackage_tag2el_1, - 8, /* Count of tags in the map */ - asn_MAP_SignalStatusPackage_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 8, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage = { - "SignalStatusPackage", - "SignalStatusPackage", - &asn_OP_SEQUENCE, - asn_DEF_SignalStatusPackage_tags_1, - sizeof(asn_DEF_SignalStatusPackage_tags_1) - /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusPackage_tags_1) - /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SignalStatusPackage_1, - 8, /* Elements count */ - &asn_SPC_SignalStatusPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c b/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c deleted file mode 100644 index 82ccbb44f..000000000 --- a/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SignalStatusPackageList.h" - -static asn_oer_constraints_t asn_OER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SignalStatusPackage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SignalStatusPackageList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1 = { - sizeof(struct SignalStatusPackageList), - offsetof(struct SignalStatusPackageList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList = { - "SignalStatusPackageList", - "SignalStatusPackageList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SignalStatusPackageList_tags_1, - sizeof(asn_DEF_SignalStatusPackageList_tags_1) - /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ - asn_DEF_SignalStatusPackageList_tags_1, /* Same as above */ - sizeof(asn_DEF_SignalStatusPackageList_tags_1) - /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ - { &asn_OER_type_SignalStatusPackageList_constr_1, &asn_PER_type_SignalStatusPackageList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SignalStatusPackageList_1, - 1, /* Single element */ - &asn_SPC_SignalStatusPackageList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SirenInUse.c b/src/tmx/Asn_J2735/src/r63/SirenInUse.c deleted file mode 100644 index 285c01fe2..000000000 --- a/src/tmx/Asn_J2735/src/r63/SirenInUse.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SirenInUse.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SirenInUse_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "notInUse" }, - { 2, 5, "inUse" }, - { 3, 8, "reserved" } -}; -static const unsigned int asn_MAP_SirenInUse_enum2value_1[] = { - 2, /* inUse(2) */ - 1, /* notInUse(1) */ - 3, /* reserved(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { - asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SirenInUse = { - "SirenInUse", - "SirenInUse", - &asn_OP_NativeEnumerated, - asn_DEF_SirenInUse_tags_1, - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - asn_DEF_SirenInUse_tags_1, /* Same as above */ - sizeof(asn_DEF_SirenInUse_tags_1) - /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ - { &asn_OER_type_SirenInUse_constr_1, &asn_PER_type_SirenInUse_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SirenInUse_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SizeValue.c b/src/tmx/Asn_J2735/src/r63/SizeValue.c deleted file mode 100644 index 19ec9d837..000000000 --- a/src/tmx/Asn_J2735/src/r63/SizeValue.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "SizeValue.h" - -int -SizeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SizeValue_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_SizeValue_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SizeValue_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SizeValue = { - "SizeValue", - "SizeValue", - &asn_OP_NativeInteger, - asn_DEF_SizeValue_tags_1, - sizeof(asn_DEF_SizeValue_tags_1) - /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ - asn_DEF_SizeValue_tags_1, /* Same as above */ - sizeof(asn_DEF_SizeValue_tags_1) - /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ - { &asn_OER_type_SizeValue_constr_1, &asn_PER_type_SizeValue_constr_1, SizeValue_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c b/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c deleted file mode 100644 index ac70f8af5..000000000 --- a/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "SizeValueConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 13 } /* (0..13) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SizeValueConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 11, "size-100-00" }, - { 2, 11, "size-050-00" }, - { 3, 11, "size-020-00" }, - { 4, 11, "size-010-00" }, - { 5, 11, "size-005-00" }, - { 6, 11, "size-002-00" }, - { 7, 11, "size-001-00" }, - { 8, 11, "size-000-50" }, - { 9, 11, "size-000-20" }, - { 10, 11, "size-000-10" }, - { 11, 11, "size-000-05" }, - { 12, 11, "size-000-02" }, - { 13, 11, "size-000-01" } -}; -static const unsigned int asn_MAP_SizeValueConfidence_enum2value_1[] = { - 13, /* size-000-01(13) */ - 12, /* size-000-02(12) */ - 11, /* size-000-05(11) */ - 10, /* size-000-10(10) */ - 9, /* size-000-20(9) */ - 8, /* size-000-50(8) */ - 7, /* size-001-00(7) */ - 6, /* size-002-00(6) */ - 5, /* size-005-00(5) */ - 4, /* size-010-00(4) */ - 3, /* size-020-00(3) */ - 2, /* size-050-00(2) */ - 1, /* size-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1 = { - asn_MAP_SizeValueConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SizeValueConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 14, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SizeValueConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence = { - "SizeValueConfidence", - "SizeValueConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_SizeValueConfidence_tags_1, - sizeof(asn_DEF_SizeValueConfidence_tags_1) - /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ - asn_DEF_SizeValueConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SizeValueConfidence_tags_1) - /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_SizeValueConfidence_constr_1, &asn_PER_type_SizeValueConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SizeValueConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Snapshot.c b/src/tmx/Asn_J2735/src/r63/Snapshot.c deleted file mode 100644 index f6daab67a..000000000 --- a/src/tmx/Asn_J2735/src/r63/Snapshot.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Snapshot.h" - -asn_TYPE_member_t asn_MBR_Snapshot_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "thePosition" - }, - { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleSafetyExtensions, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "safetyExt" - }, - { ATF_POINTER, 1, offsetof(struct Snapshot, dataSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dataSet" - }, -}; -static const int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dataSet */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { - sizeof(struct Snapshot), - offsetof(struct Snapshot, _asn_ctx), - asn_MAP_Snapshot_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_Snapshot_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Snapshot = { - "Snapshot", - "Snapshot", - &asn_OP_SEQUENCE, - asn_DEF_Snapshot_tags_1, - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - asn_DEF_Snapshot_tags_1, /* Same as above */ - sizeof(asn_DEF_Snapshot_tags_1) - /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Snapshot_1, - 3, /* Elements count */ - &asn_SPC_Snapshot_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c b/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c deleted file mode 100644 index 2dca9aa30..000000000 --- a/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SnapshotDistance.h" - -asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "distance1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "distance2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed2" - }, -}; -static const ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* distance1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* distance2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* speed2 */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { - sizeof(struct SnapshotDistance), - offsetof(struct SnapshotDistance, _asn_ctx), - asn_MAP_SnapshotDistance_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { - "SnapshotDistance", - "SnapshotDistance", - &asn_OP_SEQUENCE, - asn_DEF_SnapshotDistance_tags_1, - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - asn_DEF_SnapshotDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotDistance_tags_1) - /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SnapshotDistance_1, - 4, /* Elements count */ - &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SnapshotTime.c b/src/tmx/Asn_J2735/src/r63/SnapshotTime.c deleted file mode 100644 index 8a70093b8..000000000 --- a/src/tmx/Asn_J2735/src/r63/SnapshotTime.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SnapshotTime.h" - -asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time1), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "time1" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed2), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GrossSpeed, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed2" - }, - { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time2), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SecondOfTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "time2" - }, -}; -static const ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* speed1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* time1 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speed2 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* time2 */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { - sizeof(struct SnapshotTime), - offsetof(struct SnapshotTime, _asn_ctx), - asn_MAP_SnapshotTime_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { - "SnapshotTime", - "SnapshotTime", - &asn_OP_SEQUENCE, - asn_DEF_SnapshotTime_tags_1, - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - asn_DEF_SnapshotTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SnapshotTime_tags_1) - /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SnapshotTime_1, - 4, /* Elements count */ - &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c b/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c deleted file mode 100644 index 4c2ab50e9..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SpecialVehicleExtensions.h" - -asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[] = { - { ATF_POINTER, 3, offsetof(struct SpecialVehicleExtensions, vehicleAlerts), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EmergencyDetails, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleAlerts" - }, - { ATF_POINTER, 2, offsetof(struct SpecialVehicleExtensions, description), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EventDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "description" - }, - { ATF_POINTER, 1, offsetof(struct SpecialVehicleExtensions, trailers), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trailers" - }, -}; -static const int asn_MAP_SpecialVehicleExtensions_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_SpecialVehicleExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpecialVehicleExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleAlerts */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* trailers */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1 = { - sizeof(struct SpecialVehicleExtensions), - offsetof(struct SpecialVehicleExtensions, _asn_ctx), - asn_MAP_SpecialVehicleExtensions_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_SpecialVehicleExtensions_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions = { - "SpecialVehicleExtensions", - "SpecialVehicleExtensions", - &asn_OP_SEQUENCE, - asn_DEF_SpecialVehicleExtensions_tags_1, - sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) - /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ - asn_DEF_SpecialVehicleExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) - /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SpecialVehicleExtensions_1, - 3, /* Elements count */ - &asn_SPC_SpecialVehicleExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Speed.c b/src/tmx/Asn_J2735/src/r63/Speed.c deleted file mode 100644 index e88a1841c..000000000 --- a/src/tmx/Asn_J2735/src/r63/Speed.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Speed.h" - -int -Speed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Speed_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..8191) */, - -1}; -asn_per_constraints_t asn_PER_type_Speed_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Speed = { - "Speed", - "Speed", - &asn_OP_NativeInteger, - asn_DEF_Speed_tags_1, - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - asn_DEF_Speed_tags_1, /* Same as above */ - sizeof(asn_DEF_Speed_tags_1) - /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ - { &asn_OER_type_Speed_constr_1, &asn_PER_type_Speed_constr_1, Speed_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c b/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c deleted file mode 100644 index 871a7a84d..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedAdvice.h" - -int -SpeedAdvice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 500)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SpeedAdvice_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..500) */, - -1}; -asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { - "SpeedAdvice", - "SpeedAdvice", - &asn_OP_NativeInteger, - asn_DEF_SpeedAdvice_tags_1, - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - asn_DEF_SpeedAdvice_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedAdvice_tags_1) - /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedAdvice_constr_1, &asn_PER_type_SpeedAdvice_constr_1, SpeedAdvice_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c b/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c deleted file mode 100644 index 48581ac94..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SpeedConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 9, "prec100ms" }, - { 2, 8, "prec10ms" }, - { 3, 7, "prec5ms" }, - { 4, 7, "prec1ms" }, - { 5, 9, "prec0-1ms" }, - { 6, 10, "prec0-05ms" }, - { 7, 10, "prec0-01ms" } -}; -static const unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { - 7, /* prec0-01ms(7) */ - 6, /* prec0-05ms(6) */ - 5, /* prec0-1ms(5) */ - 1, /* prec100ms(1) */ - 2, /* prec10ms(2) */ - 4, /* prec1ms(4) */ - 3, /* prec5ms(3) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { - asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { - "SpeedConfidence", - "SpeedConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_SpeedConfidence_tags_1, - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedConfidence_tags_1) - /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedConfidence_constr_1, &asn_PER_type_SpeedConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimit.c b/src/tmx/Asn_J2735/src/r63/SpeedLimit.c deleted file mode 100644 index 18d088aac..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedLimit.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedLimit.h" - -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_SpeedLimit_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct SpeedLimit__Member__item), - offsetof(struct SpeedLimit__Member__item, _asn_ctx), - offsetof(struct SpeedLimit__Member__item, present), - sizeof(((struct SpeedLimit__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct SpeedLimit__Member), - offsetof(struct SpeedLimit__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { - sizeof(struct SpeedLimit), - offsetof(struct SpeedLimit, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { - "SpeedLimit", - "SpeedLimit", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedLimit_tags_1, - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimit_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimit_tags_1) - /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedLimit_constr_1, &asn_PER_type_SpeedLimit_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SpeedLimit_1, - 1, /* Single element */ - &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c b/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c deleted file mode 100644 index 587280e8a..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedLimitList.h" - -static asn_oer_constraints_t asn_OER_type_SpeedLimitList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..9)) */}; -asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RegulatorySpeedLimit, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { - sizeof(struct SpeedLimitList), - offsetof(struct SpeedLimitList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { - "SpeedLimitList", - "SpeedLimitList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedLimitList_tags_1, - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitList_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitList_tags_1) - /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedLimitList_constr_1, &asn_PER_type_SpeedLimitList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SpeedLimitList_1, - 1, /* Single element */ - &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c b/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c deleted file mode 100644 index 7c25f0a47..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedLimitType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SpeedLimitType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 20, "maxSpeedInSchoolZone" }, - { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, - { 3, 26, "maxSpeedInConstructionZone" }, - { 4, 15, "vehicleMinSpeed" }, - { 5, 15, "vehicleMaxSpeed" }, - { 6, 20, "vehicleNightMaxSpeed" }, - { 7, 13, "truckMinSpeed" }, - { 8, 13, "truckMaxSpeed" }, - { 9, 18, "truckNightMaxSpeed" }, - { 10, 28, "vehiclesWithTrailersMinSpeed" }, - { 11, 28, "vehiclesWithTrailersMaxSpeed" }, - { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { - 3, /* maxSpeedInConstructionZone(3) */ - 1, /* maxSpeedInSchoolZone(1) */ - 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ - 8, /* truckMaxSpeed(8) */ - 7, /* truckMinSpeed(7) */ - 9, /* truckNightMaxSpeed(9) */ - 0, /* unknown(0) */ - 5, /* vehicleMaxSpeed(5) */ - 4, /* vehicleMinSpeed(4) */ - 6, /* vehicleNightMaxSpeed(6) */ - 11, /* vehiclesWithTrailersMaxSpeed(11) */ - 10, /* vehiclesWithTrailersMinSpeed(10) */ - 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { - asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ - 13, /* Number of elements in the maps */ - 14, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { - "SpeedLimitType", - "SpeedLimitType", - &asn_OP_NativeEnumerated, - asn_DEF_SpeedLimitType_tags_1, - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - asn_DEF_SpeedLimitType_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedLimitType_tags_1) - /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedLimitType_constr_1, &asn_PER_type_SpeedLimitType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfile.c b/src/tmx/Asn_J2735/src/r63/SpeedProfile.c deleted file mode 100644 index b4153630a..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedProfile.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedProfile.h" - -asn_TYPE_member_t asn_MBR_SpeedProfile_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedProfile, speedReports), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedProfileMeasurementList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedReports" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedProfile_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpeedProfile_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* speedReports */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1 = { - sizeof(struct SpeedProfile), - offsetof(struct SpeedProfile, _asn_ctx), - asn_MAP_SpeedProfile_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfile = { - "SpeedProfile", - "SpeedProfile", - &asn_OP_SEQUENCE, - asn_DEF_SpeedProfile_tags_1, - sizeof(asn_DEF_SpeedProfile_tags_1) - /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfile_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfile_tags_1) - /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SpeedProfile_1, - 1, /* Elements count */ - &asn_SPC_SpeedProfile_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c deleted file mode 100644 index 49866ca61..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedProfileMeasurement.h" - -int -SpeedProfileMeasurement_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using GrossSpeed, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurement_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement = { - "SpeedProfileMeasurement", - "SpeedProfileMeasurement", - &asn_OP_NativeInteger, - asn_DEF_SpeedProfileMeasurement_tags_1, - sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfileMeasurement_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedProfileMeasurement_constr_1, &asn_PER_type_SpeedProfileMeasurement_constr_1, SpeedProfileMeasurement_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c deleted file mode 100644 index ed65137a8..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedProfileMeasurementList.h" - -static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..20)) */}; -asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_SpeedProfileMeasurement, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurementList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1 = { - sizeof(struct SpeedProfileMeasurementList), - offsetof(struct SpeedProfileMeasurementList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList = { - "SpeedProfileMeasurementList", - "SpeedProfileMeasurementList", - &asn_OP_SEQUENCE_OF, - asn_DEF_SpeedProfileMeasurementList_tags_1, - sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ - asn_DEF_SpeedProfileMeasurementList_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) - /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ - { &asn_OER_type_SpeedProfileMeasurementList_constr_1, &asn_PER_type_SpeedProfileMeasurementList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_SpeedProfileMeasurementList_1, - 1, /* Single element */ - &asn_SPC_SpeedProfileMeasurementList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c deleted file mode 100644 index 05c97f4d9..000000000 --- a/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SpeedandHeadingandThrottleConfidence.h" - -asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, heading), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, - { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, throttle), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "throttle" - }, -}; -static const ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* throttle */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 = { - sizeof(struct SpeedandHeadingandThrottleConfidence), - offsetof(struct SpeedandHeadingandThrottleConfidence, _asn_ctx), - asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { - "SpeedandHeadingandThrottleConfidence", - "SpeedandHeadingandThrottleConfidence", - &asn_OP_SEQUENCE, - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) - /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SpeedandHeadingandThrottleConfidence_1, - 3, /* Elements count */ - &asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c deleted file mode 100644 index df0e6cc8e..000000000 --- a/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "StabilityControlStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { - asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { - "StabilityControlStatus", - "StabilityControlStatus", - &asn_OP_NativeEnumerated, - asn_DEF_StabilityControlStatus_tags_1, - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_StabilityControlStatus_tags_1) - /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_StabilityControlStatus_constr_1, &asn_PER_type_StabilityControlStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/StationID.c b/src/tmx/Asn_J2735/src/r63/StationID.c deleted file mode 100644 index 033c90ac6..000000000 --- a/src/tmx/Asn_J2735/src/r63/StationID.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "StationID.h" - -int -StationID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - - /* Constraint check succeeded */ - return 0; -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_StationID_constr_1 CC_NOTUSED = { - { 4, 1 } /* (0..4294967295) */, - -1}; -asn_per_constraints_t asn_PER_type_StationID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { - 0, 0, 0, 0, 0, - 0, /* Native long size */ - 1 /* Unsigned representation */ -}; -static const ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_StationID = { - "StationID", - "StationID", - &asn_OP_NativeInteger, - asn_DEF_StationID_tags_1, - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - asn_DEF_StationID_tags_1, /* Same as above */ - sizeof(asn_DEF_StationID_tags_1) - /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ - { &asn_OER_type_StationID_constr_1, &asn_PER_type_StationID_constr_1, StationID_constraint }, - 0, 0, /* No members */ - &asn_SPC_StationID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c deleted file mode 100644 index ab989d4ac..000000000 --- a/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SteeringAxleLubePressure.h" - -int -SteeringAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 250)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { - "SteeringAxleLubePressure", - "SteeringAxleLubePressure", - &asn_OP_NativeInteger, - asn_DEF_SteeringAxleLubePressure_tags_1, - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) - /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ - { &asn_OER_type_SteeringAxleLubePressure_constr_1, &asn_PER_type_SteeringAxleLubePressure_constr_1, SteeringAxleLubePressure_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c deleted file mode 100644 index 48d388821..000000000 --- a/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SteeringAxleTemperature.h" - -int -SteeringAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -40 && value <= 210)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-40..210) */, - -1}; -asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { - "SteeringAxleTemperature", - "SteeringAxleTemperature", - &asn_OP_NativeInteger, - asn_DEF_SteeringAxleTemperature_tags_1, - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringAxleTemperature_tags_1) - /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ - { &asn_OER_type_SteeringAxleTemperature_constr_1, &asn_PER_type_SteeringAxleTemperature_constr_1, SteeringAxleTemperature_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c deleted file mode 100644 index abf7a927e..000000000 --- a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SteeringWheelAngle.h" - -int -SteeringWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -126 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-126..127) */, - -1}; -asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -126, 127 } /* (-126..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { - "SteeringWheelAngle", - "SteeringWheelAngle", - &asn_OP_NativeInteger, - asn_DEF_SteeringWheelAngle_tags_1, - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngle_tags_1) - /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ - { &asn_OER_type_SteeringWheelAngle_constr_1, &asn_PER_type_SteeringWheelAngle_constr_1, SteeringWheelAngle_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c deleted file mode 100644 index a3f13be6e..000000000 --- a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SteeringWheelAngleConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 8, "prec2deg" }, - { 2, 8, "prec1deg" }, - { 3, 11, "prec0-02deg" } -}; -static const unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { - 3, /* prec0-02deg(3) */ - 2, /* prec1deg(2) */ - 1, /* prec2deg(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { - asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { - "SteeringWheelAngleConfidence", - "SteeringWheelAngleConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_SteeringWheelAngleConfidence_tags_1, - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_SteeringWheelAngleConfidence_constr_1, &asn_PER_type_SteeringWheelAngleConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c deleted file mode 100644 index cf63590c1..000000000 --- a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SteeringWheelAngleRateOfChange.h" - -int -SteeringWheelAngleRateOfChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-127..127) */, - -1}; -asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { - "SteeringWheelAngleRateOfChange", - "SteeringWheelAngleRateOfChange", - &asn_OP_NativeInteger, - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ - sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) - /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ - { &asn_OER_type_SteeringWheelAngleRateOfChange_constr_1, &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, SteeringWheelAngleRateOfChange_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SummerTime.c b/src/tmx/Asn_J2735/src/r63/SummerTime.c deleted file mode 100644 index 587269e1b..000000000 --- a/src/tmx/Asn_J2735/src/r63/SummerTime.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SummerTime.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SummerTime_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_SummerTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { - { 0, 15, "notInSummerTime" }, - { 1, 12, "inSummerTime" } -}; -static const unsigned int asn_MAP_SummerTime_enum2value_1[] = { - 1, /* inSummerTime(1) */ - 0 /* notInSummerTime(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { - asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SummerTime = { - "SummerTime", - "SummerTime", - &asn_OP_NativeEnumerated, - asn_DEF_SummerTime_tags_1, - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - asn_DEF_SummerTime_tags_1, /* Same as above */ - sizeof(asn_DEF_SummerTime_tags_1) - /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ - { &asn_OER_type_SummerTime_constr_1, &asn_PER_type_SummerTime_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_SummerTime_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SunSensor.c b/src/tmx/Asn_J2735/src/r63/SunSensor.c deleted file mode 100644 index 90ae4a13d..000000000 --- a/src/tmx/Asn_J2735/src/r63/SunSensor.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "SunSensor.h" - -int -SunSensor_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SunSensor_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1000) */, - -1}; -asn_per_constraints_t asn_PER_type_SunSensor_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SunSensor = { - "SunSensor", - "SunSensor", - &asn_OP_NativeInteger, - asn_DEF_SunSensor_tags_1, - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - asn_DEF_SunSensor_tags_1, /* Same as above */ - sizeof(asn_DEF_SunSensor_tags_1) - /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ - { &asn_OER_type_SunSensor_constr_1, &asn_PER_type_SunSensor_constr_1, SunSensor_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c b/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c deleted file mode 100644 index 58ef50063..000000000 --- a/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "SupplementalVehicleExtensions.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_11[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { - sizeof(struct SupplementalVehicleExtensions__regional), - offsetof(struct SupplementalVehicleExtensions__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_11 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_11, - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ - asn_DEF_regional_tags_11, /* Same as above */ - sizeof(asn_DEF_regional_tags_11) - /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ - { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, - asn_MBR_regional_11, - 1, /* Single element */ - &asn_SPC_regional_specs_11 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[] = { - { ATF_POINTER, 10, offsetof(struct SupplementalVehicleExtensions, classification), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleClass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "classification" - }, - { ATF_POINTER, 9, offsetof(struct SupplementalVehicleExtensions, classDetails), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleClassification, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "classDetails" - }, - { ATF_POINTER, 8, offsetof(struct SupplementalVehicleExtensions, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleData" - }, - { ATF_POINTER, 7, offsetof(struct SupplementalVehicleExtensions, weatherReport), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WeatherReport, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "weatherReport" - }, - { ATF_POINTER, 6, offsetof(struct SupplementalVehicleExtensions, weatherProbe), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WeatherProbe, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "weatherProbe" - }, - { ATF_POINTER, 5, offsetof(struct SupplementalVehicleExtensions, obstacle), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDetection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obstacle" - }, - { ATF_POINTER, 4, offsetof(struct SupplementalVehicleExtensions, status), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DisabledVehicle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "status" - }, - { ATF_POINTER, 3, offsetof(struct SupplementalVehicleExtensions, speedProfile), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedProfile, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedProfile" - }, - { ATF_POINTER, 2, offsetof(struct SupplementalVehicleExtensions, theRTCM), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RTCMPackage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "theRTCM" - }, - { ATF_POINTER, 1, offsetof(struct SupplementalVehicleExtensions, regional), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_regional_11, - 0, - { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_SupplementalVehicleExtensions_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -static const ber_tlv_tag_t asn_DEF_SupplementalVehicleExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SupplementalVehicleExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* classification */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* classDetails */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* weatherReport */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* weatherProbe */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* obstacle */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speedProfile */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* theRTCM */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1 = { - sizeof(struct SupplementalVehicleExtensions), - offsetof(struct SupplementalVehicleExtensions, _asn_ctx), - asn_MAP_SupplementalVehicleExtensions_tag2el_1, - 10, /* Count of tags in the map */ - asn_MAP_SupplementalVehicleExtensions_oms_1, /* Optional members */ - 10, 0, /* Root/Additions */ - 10, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions = { - "SupplementalVehicleExtensions", - "SupplementalVehicleExtensions", - &asn_OP_SEQUENCE, - asn_DEF_SupplementalVehicleExtensions_tags_1, - sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) - /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ - asn_DEF_SupplementalVehicleExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) - /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SupplementalVehicleExtensions_1, - 10, /* Elements count */ - &asn_SPC_SupplementalVehicleExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TemporaryID.c b/src/tmx/Asn_J2735/src/r63/TemporaryID.c deleted file mode 100644 index 22a3b5624..000000000 --- a/src/tmx/Asn_J2735/src/r63/TemporaryID.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TemporaryID.h" - -int -TemporaryID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 4)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TemporaryID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 4 /* (SIZE(4..4)) */}; -asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TemporaryID = { - "TemporaryID", - "TemporaryID", - &asn_OP_OCTET_STRING, - asn_DEF_TemporaryID_tags_1, - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - asn_DEF_TemporaryID_tags_1, /* Same as above */ - sizeof(asn_DEF_TemporaryID_tags_1) - /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ - { &asn_OER_type_TemporaryID_constr_1, &asn_PER_type_TemporaryID_constr_1, TemporaryID_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TenthSecond.c b/src/tmx/Asn_J2735/src/r63/TenthSecond.c deleted file mode 100644 index 47bb7f85a..000000000 --- a/src/tmx/Asn_J2735/src/r63/TenthSecond.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TenthSecond.h" - -int -TenthSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 9)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TenthSecond_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..9) */, - -1}; -asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TenthSecond = { - "TenthSecond", - "TenthSecond", - &asn_OP_NativeInteger, - asn_DEF_TenthSecond_tags_1, - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - asn_DEF_TenthSecond_tags_1, /* Same as above */ - sizeof(asn_DEF_TenthSecond_tags_1) - /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ - { &asn_OER_type_TenthSecond_constr_1, &asn_PER_type_TenthSecond_constr_1, TenthSecond_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TermDistance.c b/src/tmx/Asn_J2735/src/r63/TermDistance.c deleted file mode 100644 index 201bb39e8..000000000 --- a/src/tmx/Asn_J2735/src/r63/TermDistance.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TermDistance.h" - -int -TermDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 30000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TermDistance_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..30000) */, - -1}; -asn_per_constraints_t asn_PER_type_TermDistance_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermDistance = { - "TermDistance", - "TermDistance", - &asn_OP_NativeInteger, - asn_DEF_TermDistance_tags_1, - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - asn_DEF_TermDistance_tags_1, /* Same as above */ - sizeof(asn_DEF_TermDistance_tags_1) - /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ - { &asn_OER_type_TermDistance_constr_1, &asn_PER_type_TermDistance_constr_1, TermDistance_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TermTime.c b/src/tmx/Asn_J2735/src/r63/TermTime.c deleted file mode 100644 index 6f96d4618..000000000 --- a/src/tmx/Asn_J2735/src/r63/TermTime.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TermTime.h" - -int -TermTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 1800)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TermTime_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..1800) */, - -1}; -asn_per_constraints_t asn_PER_type_TermTime_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TermTime = { - "TermTime", - "TermTime", - &asn_OP_NativeInteger, - asn_DEF_TermTime_tags_1, - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - asn_DEF_TermTime_tags_1, /* Same as above */ - sizeof(asn_DEF_TermTime_tags_1) - /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ - { &asn_OER_type_TermTime_constr_1, &asn_PER_type_TermTime_constr_1, TermTime_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage00.c b/src/tmx/Asn_J2735/src/r63/TestMessage00.c deleted file mode 100644 index ffeadc578..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage00.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage00.h" - -asn_TYPE_member_t asn_MBR_TestMessage00_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityHeader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, body), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage00_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage00_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1 = { - sizeof(struct TestMessage00), - offsetof(struct TestMessage00, _asn_ctx), - asn_MAP_TestMessage00_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage00 = { - "TestMessage00", - "TestMessage00", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage00_tags_1, - sizeof(asn_DEF_TestMessage00_tags_1) - /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ - asn_DEF_TestMessage00_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage00_tags_1) - /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage00_1, - 2, /* Elements count */ - &asn_SPC_TestMessage00_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage01.c b/src/tmx/Asn_J2735/src/r63/TestMessage01.c deleted file mode 100644 index 6d60abebd..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage01.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage01.h" - -asn_TYPE_member_t asn_MBR_TestMessage01_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityHeader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, body), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityResponse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage01_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage01_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1 = { - sizeof(struct TestMessage01), - offsetof(struct TestMessage01, _asn_ctx), - asn_MAP_TestMessage01_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage01 = { - "TestMessage01", - "TestMessage01", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage01_tags_1, - sizeof(asn_DEF_TestMessage01_tags_1) - /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ - asn_DEF_TestMessage01_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage01_tags_1) - /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage01_1, - 2, /* Elements count */ - &asn_SPC_TestMessage01_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage02.c b/src/tmx/Asn_J2735/src/r63/TestMessage02.c deleted file mode 100644 index 3912b666c..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage02.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage02.h" - -asn_TYPE_member_t asn_MBR_TestMessage02_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityHeader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, body), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityPath, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage02_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage02_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1 = { - sizeof(struct TestMessage02), - offsetof(struct TestMessage02, _asn_ctx), - asn_MAP_TestMessage02_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage02 = { - "TestMessage02", - "TestMessage02", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage02_tags_1, - sizeof(asn_DEF_TestMessage02_tags_1) - /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ - asn_DEF_TestMessage02_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage02_tags_1) - /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage02_1, - 2, /* Elements count */ - &asn_SPC_TestMessage02_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage03.c b/src/tmx/Asn_J2735/src/r63/TestMessage03.c deleted file mode 100644 index e3044146f..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage03.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603.asn1" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TestMessage03.h" - -asn_TYPE_member_t asn_MBR_TestMessage03_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityHeader, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, body), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MobilityOperation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage03_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage03_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1 = { - sizeof(struct TestMessage03), - offsetof(struct TestMessage03, _asn_ctx), - asn_MAP_TestMessage03_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage03 = { - "TestMessage03", - "TestMessage03", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage03_tags_1, - sizeof(asn_DEF_TestMessage03_tags_1) - /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ - asn_DEF_TestMessage03_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage03_tags_1) - /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage03_1, - 2, /* Elements count */ - &asn_SPC_TestMessage03_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage04.c b/src/tmx/Asn_J2735/src/r63/TestMessage04.c deleted file mode 100644 index 03fd4978f..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage04.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage04.h" - -asn_TYPE_member_t asn_MBR_TestMessage04_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage04, body), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_TrafficControlRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage04_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage04_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1 = { - sizeof(struct TestMessage04), - offsetof(struct TestMessage04, _asn_ctx), - asn_MAP_TestMessage04_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage04 = { - "TestMessage04", - "TestMessage04", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage04_tags_1, - sizeof(asn_DEF_TestMessage04_tags_1) - /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ - asn_DEF_TestMessage04_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage04_tags_1) - /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage04_1, - 1, /* Elements count */ - &asn_SPC_TestMessage04_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage05.c b/src/tmx/Asn_J2735/src/r63/TestMessage05.c deleted file mode 100644 index 6772392f4..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage05.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage05.h" - -asn_TYPE_member_t asn_MBR_TestMessage05_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TestMessage05, body), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_TrafficControlMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "body" - }, -}; -static const ber_tlv_tag_t asn_DEF_TestMessage05_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage05_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1 = { - sizeof(struct TestMessage05), - offsetof(struct TestMessage05, _asn_ctx), - asn_MAP_TestMessage05_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage05 = { - "TestMessage05", - "TestMessage05", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage05_tags_1, - sizeof(asn_DEF_TestMessage05_tags_1) - /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ - asn_DEF_TestMessage05_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage05_tags_1) - /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage05_1, - 1, /* Elements count */ - &asn_SPC_TestMessage05_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage06.c b/src/tmx/Asn_J2735/src/r63/TestMessage06.c deleted file mode 100644 index 405f3803b..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage06.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage06.h" - -asn_TYPE_member_t asn_MBR_TestMessage06_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage06, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage06, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage06_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage06_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage06_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1 = { - sizeof(struct TestMessage06), - offsetof(struct TestMessage06, _asn_ctx), - asn_MAP_TestMessage06_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage06_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage06 = { - "TestMessage06", - "TestMessage06", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage06_tags_1, - sizeof(asn_DEF_TestMessage06_tags_1) - /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ - asn_DEF_TestMessage06_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage06_tags_1) - /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage06_1, - 2, /* Elements count */ - &asn_SPC_TestMessage06_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage07.c b/src/tmx/Asn_J2735/src/r63/TestMessage07.c deleted file mode 100644 index f73b2ddda..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage07.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage07.h" - -asn_TYPE_member_t asn_MBR_TestMessage07_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage07, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage07, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage07_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage07_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage07_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1 = { - sizeof(struct TestMessage07), - offsetof(struct TestMessage07, _asn_ctx), - asn_MAP_TestMessage07_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage07_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage07 = { - "TestMessage07", - "TestMessage07", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage07_tags_1, - sizeof(asn_DEF_TestMessage07_tags_1) - /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ - asn_DEF_TestMessage07_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage07_tags_1) - /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage07_1, - 2, /* Elements count */ - &asn_SPC_TestMessage07_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage08.c b/src/tmx/Asn_J2735/src/r63/TestMessage08.c deleted file mode 100644 index 8ea2a8edf..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage08.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage08.h" - -asn_TYPE_member_t asn_MBR_TestMessage08_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage08, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage08, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage08_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage08_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage08_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1 = { - sizeof(struct TestMessage08), - offsetof(struct TestMessage08, _asn_ctx), - asn_MAP_TestMessage08_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage08_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage08 = { - "TestMessage08", - "TestMessage08", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage08_tags_1, - sizeof(asn_DEF_TestMessage08_tags_1) - /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ - asn_DEF_TestMessage08_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage08_tags_1) - /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage08_1, - 2, /* Elements count */ - &asn_SPC_TestMessage08_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage09.c b/src/tmx/Asn_J2735/src/r63/TestMessage09.c deleted file mode 100644 index f03fd3d2a..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage09.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage09.h" - -asn_TYPE_member_t asn_MBR_TestMessage09_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage09, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage09, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage09_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage09_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1 = { - sizeof(struct TestMessage09), - offsetof(struct TestMessage09, _asn_ctx), - asn_MAP_TestMessage09_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage09_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage09 = { - "TestMessage09", - "TestMessage09", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage09_tags_1, - sizeof(asn_DEF_TestMessage09_tags_1) - /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ - asn_DEF_TestMessage09_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage09_tags_1) - /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage09_1, - 2, /* Elements count */ - &asn_SPC_TestMessage09_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage10.c b/src/tmx/Asn_J2735/src/r63/TestMessage10.c deleted file mode 100644 index 585072bde..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage10.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage10.h" - -asn_TYPE_member_t asn_MBR_TestMessage10_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage10, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage10, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage10_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage10_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1 = { - sizeof(struct TestMessage10), - offsetof(struct TestMessage10, _asn_ctx), - asn_MAP_TestMessage10_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage10_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage10 = { - "TestMessage10", - "TestMessage10", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage10_tags_1, - sizeof(asn_DEF_TestMessage10_tags_1) - /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ - asn_DEF_TestMessage10_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage10_tags_1) - /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage10_1, - 2, /* Elements count */ - &asn_SPC_TestMessage10_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage11.c b/src/tmx/Asn_J2735/src/r63/TestMessage11.c deleted file mode 100644 index 612e15219..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage11.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage11.h" - -asn_TYPE_member_t asn_MBR_TestMessage11_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage11, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage11, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage11_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage11_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1 = { - sizeof(struct TestMessage11), - offsetof(struct TestMessage11, _asn_ctx), - asn_MAP_TestMessage11_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage11_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage11 = { - "TestMessage11", - "TestMessage11", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage11_tags_1, - sizeof(asn_DEF_TestMessage11_tags_1) - /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ - asn_DEF_TestMessage11_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage11_tags_1) - /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage11_1, - 2, /* Elements count */ - &asn_SPC_TestMessage11_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage12.c b/src/tmx/Asn_J2735/src/r63/TestMessage12.c deleted file mode 100644 index df9cf60c0..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage12.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage12.h" - -asn_TYPE_member_t asn_MBR_TestMessage12_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage12, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage12, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage12_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage12_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1 = { - sizeof(struct TestMessage12), - offsetof(struct TestMessage12, _asn_ctx), - asn_MAP_TestMessage12_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage12_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage12 = { - "TestMessage12", - "TestMessage12", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage12_tags_1, - sizeof(asn_DEF_TestMessage12_tags_1) - /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ - asn_DEF_TestMessage12_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage12_tags_1) - /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage12_1, - 2, /* Elements count */ - &asn_SPC_TestMessage12_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage13.c b/src/tmx/Asn_J2735/src/r63/TestMessage13.c deleted file mode 100644 index 675ee1f79..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage13.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage13.h" - -asn_TYPE_member_t asn_MBR_TestMessage13_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage13, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage13, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage13_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage13_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage13_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1 = { - sizeof(struct TestMessage13), - offsetof(struct TestMessage13, _asn_ctx), - asn_MAP_TestMessage13_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage13_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage13 = { - "TestMessage13", - "TestMessage13", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage13_tags_1, - sizeof(asn_DEF_TestMessage13_tags_1) - /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ - asn_DEF_TestMessage13_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage13_tags_1) - /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage13_1, - 2, /* Elements count */ - &asn_SPC_TestMessage13_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage14.c b/src/tmx/Asn_J2735/src/r63/TestMessage14.c deleted file mode 100644 index 2d11179b4..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage14.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage14.h" - -asn_TYPE_member_t asn_MBR_TestMessage14_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage14, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage14, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage14_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage14_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage14_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1 = { - sizeof(struct TestMessage14), - offsetof(struct TestMessage14, _asn_ctx), - asn_MAP_TestMessage14_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage14_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage14 = { - "TestMessage14", - "TestMessage14", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage14_tags_1, - sizeof(asn_DEF_TestMessage14_tags_1) - /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ - asn_DEF_TestMessage14_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage14_tags_1) - /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage14_1, - 2, /* Elements count */ - &asn_SPC_TestMessage14_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage15.c b/src/tmx/Asn_J2735/src/r63/TestMessage15.c deleted file mode 100644 index f24b27280..000000000 --- a/src/tmx/Asn_J2735/src/r63/TestMessage15.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TestMessage15.h" - -asn_TYPE_member_t asn_MBR_TestMessage15_1[] = { - { ATF_POINTER, 2, offsetof(struct TestMessage15, header), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Header, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "header" - }, - { ATF_POINTER, 1, offsetof(struct TestMessage15, regional), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TestMessage15_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_TestMessage15_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TestMessage15_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1 = { - sizeof(struct TestMessage15), - offsetof(struct TestMessage15, _asn_ctx), - asn_MAP_TestMessage15_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TestMessage15_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TestMessage15 = { - "TestMessage15", - "TestMessage15", - &asn_OP_SEQUENCE, - asn_DEF_TestMessage15_tags_1, - sizeof(asn_DEF_TestMessage15_tags_1) - /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ - asn_DEF_TestMessage15_tags_1, /* Same as above */ - sizeof(asn_DEF_TestMessage15_tags_1) - /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TestMessage15_1, - 2, /* Elements count */ - &asn_SPC_TestMessage15_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c deleted file mode 100644 index f16c8131c..000000000 --- a/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ThrottleConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "prec10percent" }, - { 2, 12, "prec1percent" }, - { 3, 14, "prec0-5percent" } -}; -static const unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { - 3, /* prec0-5percent(3) */ - 1, /* prec10percent(1) */ - 2, /* prec1percent(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { - asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { - "ThrottleConfidence", - "ThrottleConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_ThrottleConfidence_tags_1, - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottleConfidence_tags_1) - /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_ThrottleConfidence_constr_1, &asn_PER_type_ThrottleConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c b/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c deleted file mode 100644 index 9953b3662..000000000 --- a/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ThrottlePosition.h" - -int -ThrottlePosition_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 200)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ThrottlePosition_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..200) */, - -1}; -asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { - "ThrottlePosition", - "ThrottlePosition", - &asn_OP_NativeInteger, - asn_DEF_ThrottlePosition_tags_1, - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - asn_DEF_ThrottlePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_ThrottlePosition_tags_1) - /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ - { &asn_OER_type_ThrottlePosition_constr_1, &asn_PER_type_ThrottlePosition_constr_1, ThrottlePosition_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c deleted file mode 100644 index d3313b33f..000000000 --- a/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TimeChangeDetails.h" - -asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_TimeMark, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_TimeMark, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "minEndTime" - }, - { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_TimeMark, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "maxEndTime" - }, - { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_TimeMark, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "likelyTime" - }, - { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeIntervalConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_TimeMark, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nextTime" - }, -}; -static const int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { - sizeof(struct TimeChangeDetails), - offsetof(struct TimeChangeDetails, _asn_ctx), - asn_MAP_TimeChangeDetails_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { - "TimeChangeDetails", - "TimeChangeDetails", - &asn_OP_SEQUENCE, - asn_DEF_TimeChangeDetails_tags_1, - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeChangeDetails_tags_1) - /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TimeChangeDetails_1, - 6, /* Elements count */ - &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TimeConfidence.c b/src/tmx/Asn_J2735/src/r63/TimeConfidence.c deleted file mode 100644 index 0150299e2..000000000 --- a/src/tmx/Asn_J2735/src/r63/TimeConfidence.c +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TimeConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TimeConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 12, "time-100-000" }, - { 2, 12, "time-050-000" }, - { 3, 12, "time-020-000" }, - { 4, 12, "time-010-000" }, - { 5, 12, "time-002-000" }, - { 6, 12, "time-001-000" }, - { 7, 12, "time-000-500" }, - { 8, 12, "time-000-200" }, - { 9, 12, "time-000-100" }, - { 10, 12, "time-000-050" }, - { 11, 12, "time-000-020" }, - { 12, 12, "time-000-010" }, - { 13, 12, "time-000-005" }, - { 14, 12, "time-000-002" }, - { 15, 12, "time-000-001" }, - { 16, 14, "time-000-000-5" }, - { 17, 14, "time-000-000-2" }, - { 18, 14, "time-000-000-1" }, - { 19, 15, "time-000-000-05" }, - { 20, 15, "time-000-000-02" }, - { 21, 15, "time-000-000-01" }, - { 22, 16, "time-000-000-005" }, - { 23, 16, "time-000-000-002" }, - { 24, 16, "time-000-000-001" }, - { 25, 18, "time-000-000-000-5" }, - { 26, 18, "time-000-000-000-2" }, - { 27, 18, "time-000-000-000-1" }, - { 28, 19, "time-000-000-000-05" }, - { 29, 19, "time-000-000-000-02" }, - { 30, 19, "time-000-000-000-01" }, - { 31, 20, "time-000-000-000-005" }, - { 32, 20, "time-000-000-000-002" }, - { 33, 20, "time-000-000-000-001" }, - { 34, 22, "time-000-000-000-000-5" }, - { 35, 22, "time-000-000-000-000-2" }, - { 36, 22, "time-000-000-000-000-1" }, - { 37, 23, "time-000-000-000-000-05" }, - { 38, 23, "time-000-000-000-000-02" }, - { 39, 23, "time-000-000-000-000-01" } -}; -static const unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { - 39, /* time-000-000-000-000-01(39) */ - 38, /* time-000-000-000-000-02(38) */ - 37, /* time-000-000-000-000-05(37) */ - 36, /* time-000-000-000-000-1(36) */ - 35, /* time-000-000-000-000-2(35) */ - 34, /* time-000-000-000-000-5(34) */ - 33, /* time-000-000-000-001(33) */ - 32, /* time-000-000-000-002(32) */ - 31, /* time-000-000-000-005(31) */ - 30, /* time-000-000-000-01(30) */ - 29, /* time-000-000-000-02(29) */ - 28, /* time-000-000-000-05(28) */ - 27, /* time-000-000-000-1(27) */ - 26, /* time-000-000-000-2(26) */ - 25, /* time-000-000-000-5(25) */ - 24, /* time-000-000-001(24) */ - 23, /* time-000-000-002(23) */ - 22, /* time-000-000-005(22) */ - 21, /* time-000-000-01(21) */ - 20, /* time-000-000-02(20) */ - 19, /* time-000-000-05(19) */ - 18, /* time-000-000-1(18) */ - 17, /* time-000-000-2(17) */ - 16, /* time-000-000-5(16) */ - 15, /* time-000-001(15) */ - 14, /* time-000-002(14) */ - 13, /* time-000-005(13) */ - 12, /* time-000-010(12) */ - 11, /* time-000-020(11) */ - 10, /* time-000-050(10) */ - 9, /* time-000-100(9) */ - 8, /* time-000-200(8) */ - 7, /* time-000-500(7) */ - 6, /* time-001-000(6) */ - 5, /* time-002-000(5) */ - 4, /* time-010-000(4) */ - 3, /* time-020-000(3) */ - 2, /* time-050-000(2) */ - 1, /* time-100-000(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { - asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 40, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { - "TimeConfidence", - "TimeConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_TimeConfidence_tags_1, - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeConfidence_tags_1) - /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_TimeConfidence_constr_1, &asn_PER_type_TimeConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c deleted file mode 100644 index b8736f53c..000000000 --- a/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TimeIntervalConfidence.h" - -int -TimeIntervalConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { - "TimeIntervalConfidence", - "TimeIntervalConfidence", - &asn_OP_NativeInteger, - asn_DEF_TimeIntervalConfidence_tags_1, - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeIntervalConfidence_tags_1) - /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_TimeIntervalConfidence_constr_1, &asn_PER_type_TimeIntervalConfidence_constr_1, TimeIntervalConfidence_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TimeOffset.c b/src/tmx/Asn_J2735/src/r63/TimeOffset.c deleted file mode 100644 index 42eb66618..000000000 --- a/src/tmx/Asn_J2735/src/r63/TimeOffset.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TimeOffset.h" - -int -TimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TimeOffset_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_TimeOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TimeOffset_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeOffset = { - "TimeOffset", - "TimeOffset", - &asn_OP_NativeInteger, - asn_DEF_TimeOffset_tags_1, - sizeof(asn_DEF_TimeOffset_tags_1) - /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ - asn_DEF_TimeOffset_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeOffset_tags_1) - /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ - { &asn_OER_type_TimeOffset_constr_1, &asn_PER_type_TimeOffset_constr_1, TimeOffset_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TimeRemaining.c b/src/tmx/Asn_J2735/src/r63/TimeRemaining.c deleted file mode 100644 index 1e437e6b4..000000000 --- a/src/tmx/Asn_J2735/src/r63/TimeRemaining.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TimeRemaining.h" - -int -TimeRemaining_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 9001)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TimeRemaining_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..9001) */, - -1}; -asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { - "TimeRemaining", - "TimeRemaining", - &asn_OP_NativeInteger, - asn_DEF_TimeRemaining_tags_1, - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - asn_DEF_TimeRemaining_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeRemaining_tags_1) - /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ - { &asn_OER_type_TimeRemaining_constr_1, &asn_PER_type_TimeRemaining_constr_1, TimeRemaining_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TireData.c b/src/tmx/Asn_J2735/src/r63/TireData.c deleted file mode 100644 index 8c0279dda..000000000 --- a/src/tmx/Asn_J2735/src/r63/TireData.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TireData.h" - -asn_TYPE_member_t asn_MBR_TireData_1[] = { - { ATF_POINTER, 7, offsetof(struct TireData, location), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLocation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "location" - }, - { ATF_POINTER, 6, offsetof(struct TireData, pressure), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pressure" - }, - { ATF_POINTER, 5, offsetof(struct TireData, temp), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireTemp, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "temp" - }, - { ATF_POINTER, 4, offsetof(struct TireData, wheelSensorStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelSensorStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wheelSensorStatus" - }, - { ATF_POINTER, 3, offsetof(struct TireData, wheelEndElectFault), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WheelEndElectFault, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wheelEndElectFault" - }, - { ATF_POINTER, 2, offsetof(struct TireData, leakageRate), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TireLeakageRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "leakageRate" - }, - { ATF_POINTER, 1, offsetof(struct TireData, detection), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TirePressureThresholdDetection, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detection" - }, -}; -static const int asn_MAP_TireData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; -static const ber_tlv_tag_t asn_DEF_TireData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TireData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1 = { - sizeof(struct TireData), - offsetof(struct TireData, _asn_ctx), - asn_MAP_TireData_tag2el_1, - 7, /* Count of tags in the map */ - asn_MAP_TireData_oms_1, /* Optional members */ - 7, 0, /* Root/Additions */ - 7, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TireData = { - "TireData", - "TireData", - &asn_OP_SEQUENCE, - asn_DEF_TireData_tags_1, - sizeof(asn_DEF_TireData_tags_1) - /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ - asn_DEF_TireData_tags_1, /* Same as above */ - sizeof(asn_DEF_TireData_tags_1) - /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TireData_1, - 7, /* Elements count */ - &asn_SPC_TireData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TireDataList.c b/src/tmx/Asn_J2735/src/r63/TireDataList.c deleted file mode 100644 index a19d94602..000000000 --- a/src/tmx/Asn_J2735/src/r63/TireDataList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TireDataList.h" - -static asn_oer_constraints_t asn_OER_type_TireDataList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_TireDataList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TireDataList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TireData, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TireDataList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1 = { - sizeof(struct TireDataList), - offsetof(struct TireDataList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TireDataList = { - "TireDataList", - "TireDataList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TireDataList_tags_1, - sizeof(asn_DEF_TireDataList_tags_1) - /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ - asn_DEF_TireDataList_tags_1, /* Same as above */ - sizeof(asn_DEF_TireDataList_tags_1) - /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ - { &asn_OER_type_TireDataList_constr_1, &asn_PER_type_TireDataList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_TireDataList_1, - 1, /* Single element */ - &asn_SPC_TireDataList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c b/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c deleted file mode 100644 index d0be73655..000000000 --- a/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TireLeakageRate.h" - -int -TireLeakageRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 64255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TireLeakageRate_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { - "TireLeakageRate", - "TireLeakageRate", - &asn_OP_NativeInteger, - asn_DEF_TireLeakageRate_tags_1, - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - asn_DEF_TireLeakageRate_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLeakageRate_tags_1) - /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ - { &asn_OER_type_TireLeakageRate_constr_1, &asn_PER_type_TireLeakageRate_constr_1, TireLeakageRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TireLocation.c b/src/tmx/Asn_J2735/src/r63/TireLocation.c deleted file mode 100644 index 1448d7dfd..000000000 --- a/src/tmx/Asn_J2735/src/r63/TireLocation.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TireLocation.h" - -int -TireLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TireLocation_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_TireLocation_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireLocation = { - "TireLocation", - "TireLocation", - &asn_OP_NativeInteger, - asn_DEF_TireLocation_tags_1, - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - asn_DEF_TireLocation_tags_1, /* Same as above */ - sizeof(asn_DEF_TireLocation_tags_1) - /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ - { &asn_OER_type_TireLocation_constr_1, &asn_PER_type_TireLocation_constr_1, TireLocation_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TirePressure.c b/src/tmx/Asn_J2735/src/r63/TirePressure.c deleted file mode 100644 index e762384b9..000000000 --- a/src/tmx/Asn_J2735/src/r63/TirePressure.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TirePressure.h" - -int -TirePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 250)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TirePressure_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..250) */, - -1}; -asn_per_constraints_t asn_PER_type_TirePressure_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressure = { - "TirePressure", - "TirePressure", - &asn_OP_NativeInteger, - asn_DEF_TirePressure_tags_1, - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - asn_DEF_TirePressure_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressure_tags_1) - /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ - { &asn_OER_type_TirePressure_constr_1, &asn_PER_type_TirePressure_constr_1, TirePressure_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c deleted file mode 100644 index 646d6150c..000000000 --- a/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TirePressureThresholdDetection.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { - { 0, 6, "noData" }, - { 1, 12, "overPressure" }, - { 2, 17, "noWarningPressure" }, - { 3, 13, "underPressure" }, - { 4, 20, "extremeUnderPressure" }, - { 5, 9, "undefined" }, - { 6, 14, "errorIndicator" }, - { 7, 12, "notAvailable" } -}; -static const unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { - 6, /* errorIndicator(6) */ - 4, /* extremeUnderPressure(4) */ - 0, /* noData(0) */ - 2, /* noWarningPressure(2) */ - 7, /* notAvailable(7) */ - 1, /* overPressure(1) */ - 5, /* undefined(5) */ - 3 /* underPressure(3) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { - asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { - "TirePressureThresholdDetection", - "TirePressureThresholdDetection", - &asn_OP_NativeEnumerated, - asn_DEF_TirePressureThresholdDetection_tags_1, - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ - sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) - /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ - { &asn_OER_type_TirePressureThresholdDetection_constr_1, &asn_PER_type_TirePressureThresholdDetection_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TireTemp.c b/src/tmx/Asn_J2735/src/r63/TireTemp.c deleted file mode 100644 index 128276686..000000000 --- a/src/tmx/Asn_J2735/src/r63/TireTemp.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TireTemp.h" - -int -TireTemp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -8736 && value <= 55519)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TireTemp_constr_1 CC_NOTUSED = { - { 4, 0 } /* (-8736..55519) */, - -1}; -asn_per_constraints_t asn_PER_type_TireTemp_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -8736, 55519 } /* (-8736..55519) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TireTemp = { - "TireTemp", - "TireTemp", - &asn_OP_NativeInteger, - asn_DEF_TireTemp_tags_1, - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - asn_DEF_TireTemp_tags_1, /* Same as above */ - sizeof(asn_DEF_TireTemp_tags_1) - /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ - { &asn_OER_type_TireTemp_constr_1, &asn_PER_type_TireTemp_constr_1, TireTemp_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c b/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c deleted file mode 100644 index fad1f6795..000000000 --- a/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TractionControlStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TractionControlStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TractionControlStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 2, "on" }, - { 3, 7, "engaged" } -}; -static const unsigned int asn_MAP_TractionControlStatus_enum2value_1[] = { - 3, /* engaged(3) */ - 1, /* off(1) */ - 2, /* on(2) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1 = { - asn_MAP_TractionControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TractionControlStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TractionControlStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TractionControlStatus = { - "TractionControlStatus", - "TractionControlStatus", - &asn_OP_NativeEnumerated, - asn_DEF_TractionControlStatus_tags_1, - sizeof(asn_DEF_TractionControlStatus_tags_1) - /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ - asn_DEF_TractionControlStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TractionControlStatus_tags_1) - /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_TractionControlStatus_constr_1, &asn_PER_type_TractionControlStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TractionControlStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c b/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c deleted file mode 100644 index f69a96226..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlBounds.h" - -static int -memb_offsets_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size == 3)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_offsets_constr_5 CC_NOTUSED = { - { 0, 0 }, - 3 /* (SIZE(3..3)) */}; -static asn_per_constraints_t asn_PER_type_offsets_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_offsets_constr_5 CC_NOTUSED = { - { 0, 0 }, - 3 /* (SIZE(3..3)) */}; -static asn_per_constraints_t asn_PER_memb_offsets_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_offsets_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_OffsetPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_offsets_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_offsets_specs_5 = { - sizeof(struct TrafficControlBounds__offsets), - offsetof(struct TrafficControlBounds__offsets, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_offsets_5 = { - "offsets", - "offsets", - &asn_OP_SEQUENCE_OF, - asn_DEF_offsets_tags_5, - sizeof(asn_DEF_offsets_tags_5) - /sizeof(asn_DEF_offsets_tags_5[0]) - 1, /* 1 */ - asn_DEF_offsets_tags_5, /* Same as above */ - sizeof(asn_DEF_offsets_tags_5) - /sizeof(asn_DEF_offsets_tags_5[0]), /* 2 */ - { &asn_OER_type_offsets_constr_5, &asn_PER_type_offsets_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_offsets_5, - 1, /* Single element */ - &asn_SPC_offsets_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, oldest), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EpochMins, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "oldest" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflon), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reflon" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflat), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reflat" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, offsets), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_offsets_5, - 0, - { &asn_OER_memb_offsets_constr_5, &asn_PER_memb_offsets_constr_5, memb_offsets_constraint_1 }, - 0, 0, /* No default value */ - "offsets" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlBounds_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlBounds_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* oldest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reflon */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reflat */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offsets */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1 = { - sizeof(struct TrafficControlBounds), - offsetof(struct TrafficControlBounds, _asn_ctx), - asn_MAP_TrafficControlBounds_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds = { - "TrafficControlBounds", - "TrafficControlBounds", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlBounds_tags_1, - sizeof(asn_DEF_TrafficControlBounds_tags_1) - /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlBounds_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlBounds_tags_1) - /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlBounds_1, - 4, /* Elements count */ - &asn_SPC_TrafficControlBounds_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c b/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c deleted file mode 100644 index f3e78883a..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c +++ /dev/null @@ -1,1053 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "CARMA-CLOUD" - * found in "asn/cc_traffic_control_messages_asn1.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrafficControlDetail.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static int -memb_signal_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_latperm_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size == 2)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_minspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_minhdwy_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxvehmass_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxvehheight_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxvehwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxvehlength_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxvehaxles_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 2 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_minvehocc_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_maxplatoonsize_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_minplatoonhdwy_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - - -static asn_oer_constraints_t asn_OER_type_closed_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_closed_constr_7 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_chains_constr_14 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_chains_constr_14 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_direction_constr_18 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_direction_constr_18 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_lataffinity_constr_21 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_lataffinity_constr_21 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_Member_constr_25 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_Member_constr_25 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_latperm_constr_24 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -static asn_per_constraints_t asn_PER_type_latperm_constr_24 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_parking_constr_30 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_parking_constr_30 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_signal_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..63)) */}; -static asn_per_constraints_t asn_PER_memb_signal_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_latperm_constr_24 CC_NOTUSED = { - { 0, 0 }, - 2 /* (SIZE(2..2)) */}; -static asn_per_constraints_t asn_PER_memb_latperm_constr_24 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, - 0, 0 /* No PER value map */ -}; - -static asn_oer_constraints_t asn_OER_memb_minspeed_constr_34 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -static asn_per_constraints_t asn_PER_memb_minspeed_constr_34 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxspeed_constr_35 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxspeed_constr_35 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_minhdwy_constr_36 CC_NOTUSED = { - { 2, 1 } /* (0..2047) */, - -1}; -static asn_per_constraints_t asn_PER_memb_minhdwy_constr_36 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxvehmass_constr_37 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxvehmass_constr_37 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxvehheight_constr_38 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxvehheight_constr_38 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxvehwidth_constr_39 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxvehwidth_constr_39 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxvehlength_constr_40 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxvehlength_constr_40 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxvehaxles_constr_41 CC_NOTUSED = { - { 1, 1 } /* (2..15) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxvehaxles_constr_41 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 2, 15 } /* (2..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_minvehocc_constr_42 CC_NOTUSED = { - { 1, 1 } /* (1..15) */, - -1}; -static asn_per_constraints_t asn_PER_memb_minvehocc_constr_42 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { - { 1, 1 } /* (1..63) */, - -1}; -static asn_per_constraints_t asn_PER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (1..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { - { 2, 1 } /* (0..2047) */, - -1}; -static asn_per_constraints_t asn_PER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; - -static asn_oer_constraints_t asn_OER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; - asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 21 } /* (0..21,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_closed_value2enum_7[] = { - { 0, 4, "open" }, - { 1, 6, "notopen" }, - { 2, 9, "taperleft" }, - { 3, 10, "taperright" }, - { 4, 8, "openleft" }, - { 5, 9, "openright" } -}; -static const unsigned int asn_MAP_closed_enum2value_7[] = { - 1, /* notopen(1) */ - 0, /* open(0) */ - 4, /* openleft(4) */ - 5, /* openright(5) */ - 2, /* taperleft(2) */ - 3 /* taperright(3) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_closed_specs_7 = { - asn_MAP_closed_value2enum_7, /* "tag" => N; sorted by tag */ - asn_MAP_closed_enum2value_7, /* N => "tag"; sorted by N */ - 6, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_closed_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_closed_7 = { - "closed", - "closed", - &asn_OP_NativeEnumerated, - asn_DEF_closed_tags_7, - sizeof(asn_DEF_closed_tags_7) - /sizeof(asn_DEF_closed_tags_7[0]) - 1, /* 1 */ - asn_DEF_closed_tags_7, /* Same as above */ - sizeof(asn_DEF_closed_tags_7) - /sizeof(asn_DEF_closed_tags_7[0]), /* 2 */ - { &asn_OER_type_closed_constr_7, &asn_PER_type_closed_constr_7, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_closed_specs_7 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_14[] = { - { 0, 2, "no" }, - { 1, 9, "permitted" }, - { 2, 8, "required" } -}; -static const unsigned int asn_MAP_chains_enum2value_14[] = { - 0, /* no(0) */ - 1, /* permitted(1) */ - 2 /* required(2) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_chains_specs_14 = { - asn_MAP_chains_value2enum_14, /* "tag" => N; sorted by tag */ - asn_MAP_chains_enum2value_14, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_chains_tags_14[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_chains_14 = { - "chains", - "chains", - &asn_OP_NativeEnumerated, - asn_DEF_chains_tags_14, - sizeof(asn_DEF_chains_tags_14) - /sizeof(asn_DEF_chains_tags_14[0]) - 1, /* 1 */ - asn_DEF_chains_tags_14, /* Same as above */ - sizeof(asn_DEF_chains_tags_14) - /sizeof(asn_DEF_chains_tags_14[0]), /* 2 */ - { &asn_OER_type_chains_constr_14, &asn_PER_type_chains_constr_14, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_chains_specs_14 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_18[] = { - { 0, 7, "forward" }, - { 1, 7, "reverse" } -}; -static const unsigned int asn_MAP_direction_enum2value_18[] = { - 0, /* forward(0) */ - 1 /* reverse(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_direction_specs_18 = { - asn_MAP_direction_value2enum_18, /* "tag" => N; sorted by tag */ - asn_MAP_direction_enum2value_18, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_direction_tags_18[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_direction_18 = { - "direction", - "direction", - &asn_OP_NativeEnumerated, - asn_DEF_direction_tags_18, - sizeof(asn_DEF_direction_tags_18) - /sizeof(asn_DEF_direction_tags_18[0]) - 1, /* 1 */ - asn_DEF_direction_tags_18, /* Same as above */ - sizeof(asn_DEF_direction_tags_18) - /sizeof(asn_DEF_direction_tags_18[0]), /* 2 */ - { &asn_OER_type_direction_constr_18, &asn_PER_type_direction_constr_18, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_direction_specs_18 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_21[] = { - { 0, 4, "left" }, - { 1, 5, "right" } -}; -static const unsigned int asn_MAP_lataffinity_enum2value_21[] = { - 0, /* left(0) */ - 1 /* right(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_21 = { - asn_MAP_lataffinity_value2enum_21, /* "tag" => N; sorted by tag */ - asn_MAP_lataffinity_enum2value_21, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_lataffinity_tags_21[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_lataffinity_21 = { - "lataffinity", - "lataffinity", - &asn_OP_NativeEnumerated, - asn_DEF_lataffinity_tags_21, - sizeof(asn_DEF_lataffinity_tags_21) - /sizeof(asn_DEF_lataffinity_tags_21[0]) - 1, /* 1 */ - asn_DEF_lataffinity_tags_21, /* Same as above */ - sizeof(asn_DEF_lataffinity_tags_21) - /sizeof(asn_DEF_lataffinity_tags_21[0]), /* 2 */ - { &asn_OER_type_lataffinity_constr_21, &asn_PER_type_lataffinity_constr_21, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_lataffinity_specs_21 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_Member_value2enum_25[] = { - { 0, 4, "none" }, - { 1, 9, "permitted" }, - { 2, 12, "passing-only" }, - { 3, 14, "emergency-only" } -}; -static const unsigned int asn_MAP_Member_enum2value_25[] = { - 3, /* emergency-only(3) */ - 0, /* none(0) */ - 2, /* passing-only(2) */ - 1 /* permitted(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Member_specs_25 = { - asn_MAP_Member_value2enum_25, /* "tag" => N; sorted by tag */ - asn_MAP_Member_enum2value_25, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_25[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_25 = { - "ENUMERATED", - "ENUMERATED", - &asn_OP_NativeEnumerated, - asn_DEF_Member_tags_25, - sizeof(asn_DEF_Member_tags_25) - /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ - asn_DEF_Member_tags_25, /* Same as above */ - sizeof(asn_DEF_Member_tags_25) - /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ - { &asn_OER_type_Member_constr_25, &asn_PER_type_Member_constr_25, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Member_specs_25 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_latperm_24[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_Member_25, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_latperm_tags_24[] = { - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_latperm_specs_24 = { - sizeof(struct TrafficControlDetail__latperm), - offsetof(struct TrafficControlDetail__latperm, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_latperm_24 = { - "latperm", - "latperm", - &asn_OP_SEQUENCE_OF, - asn_DEF_latperm_tags_24, - sizeof(asn_DEF_latperm_tags_24) - /sizeof(asn_DEF_latperm_tags_24[0]) - 1, /* 1 */ - asn_DEF_latperm_tags_24, /* Same as above */ - sizeof(asn_DEF_latperm_tags_24) - /sizeof(asn_DEF_latperm_tags_24[0]), /* 2 */ - { &asn_OER_type_latperm_constr_24, &asn_PER_type_latperm_constr_24, SEQUENCE_OF_constraint }, - asn_MBR_latperm_24, - 1, /* Single element */ - &asn_SPC_latperm_specs_24 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_30[] = { - { 0, 2, "no" }, - { 1, 8, "parallel" }, - { 2, 6, "angled" } -}; -static const unsigned int asn_MAP_parking_enum2value_30[] = { - 2, /* angled(2) */ - 0, /* no(0) */ - 1 /* parallel(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_parking_specs_30 = { - asn_MAP_parking_value2enum_30, /* "tag" => N; sorted by tag */ - asn_MAP_parking_enum2value_30, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_parking_tags_30[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_parking_30 = { - "parking", - "parking", - &asn_OP_NativeEnumerated, - asn_DEF_parking_tags_30, - sizeof(asn_DEF_parking_tags_30) - /sizeof(asn_DEF_parking_tags_30[0]) - 1, /* 1 */ - asn_DEF_parking_tags_30, /* Same as above */ - sizeof(asn_DEF_parking_tags_30) - /sizeof(asn_DEF_parking_tags_30[0]), /* 2 */ - { &asn_OER_type_parking_constr_30, &asn_PER_type_parking_constr_30, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_parking_specs_30 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.signal), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - 0, - { &asn_OER_memb_signal_constr_2, &asn_PER_memb_signal_constr_2, memb_signal_constraint_1 }, - 0, 0, /* No default value */ - "signal" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.stop), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "stop" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.yield), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yield" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.notowing), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "notowing" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.restricted), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "restricted" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.closed), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_closed_7, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "closed" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.chains), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_chains_14, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "chains" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.direction), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_direction_18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.lataffinity), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_lataffinity_21, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lataffinity" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.latperm), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - 0, - &asn_DEF_latperm_24, - 0, - { &asn_OER_memb_latperm_constr_24, &asn_PER_memb_latperm_constr_24, memb_latperm_constraint_1 }, - 0, 0, /* No default value */ - "latperm" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.parking), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_parking_30, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "parking" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minspeed), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_minspeed_constr_34, &asn_PER_memb_minspeed_constr_34, memb_minspeed_constraint_1 }, - 0, 0, /* No default value */ - "minspeed" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxspeed), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxspeed_constr_35, &asn_PER_memb_maxspeed_constr_35, memb_maxspeed_constraint_1 }, - 0, 0, /* No default value */ - "maxspeed" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minhdwy), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_minhdwy_constr_36, &asn_PER_memb_minhdwy_constr_36, memb_minhdwy_constraint_1 }, - 0, 0, /* No default value */ - "minhdwy" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehmass), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxvehmass_constr_37, &asn_PER_memb_maxvehmass_constr_37, memb_maxvehmass_constraint_1 }, - 0, 0, /* No default value */ - "maxvehmass" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehheight), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxvehheight_constr_38, &asn_PER_memb_maxvehheight_constr_38, memb_maxvehheight_constraint_1 }, - 0, 0, /* No default value */ - "maxvehheight" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehwidth), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxvehwidth_constr_39, &asn_PER_memb_maxvehwidth_constr_39, memb_maxvehwidth_constraint_1 }, - 0, 0, /* No default value */ - "maxvehwidth" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehlength), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxvehlength_constr_40, &asn_PER_memb_maxvehlength_constr_40, memb_maxvehlength_constraint_1 }, - 0, 0, /* No default value */ - "maxvehlength" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehaxles), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxvehaxles_constr_41, &asn_PER_memb_maxvehaxles_constr_41, memb_maxvehaxles_constraint_1 }, - 0, 0, /* No default value */ - "maxvehaxles" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minvehocc), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_minvehocc_constr_42, &asn_PER_memb_minvehocc_constr_42, memb_minvehocc_constraint_1 }, - 0, 0, /* No default value */ - "minvehocc" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxplatoonsize), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_maxplatoonsize_constr_43, &asn_PER_memb_maxplatoonsize_constr_43, memb_maxplatoonsize_constraint_1 }, - 0, 0, /* No default value */ - "maxplatoonsize" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minplatoonhdwy), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_minplatoonhdwy_constr_44, &asn_PER_memb_minplatoonhdwy_constr_44, memb_minplatoonhdwy_constraint_1 }, - 0, 0, /* No default value */ - "minplatoonhdwy" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlDetail_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* signal */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* stop */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yield */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* notowing */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* restricted */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closed */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* chains */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* lataffinity */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* latperm */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* parking */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* minspeed */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* maxspeed */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* minhdwy */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* maxvehmass */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* maxvehheight */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* maxvehwidth */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* maxvehlength */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* maxvehaxles */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* minvehocc */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* maxplatoonsize */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* minplatoonhdwy */ -}; - asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1 = { - sizeof(struct TrafficControlDetail), - offsetof(struct TrafficControlDetail, _asn_ctx), - offsetof(struct TrafficControlDetail, present), - sizeof(((struct TrafficControlDetail *)0)->present), - asn_MAP_TrafficControlDetail_tag2el_1, - 22, /* Count of tags in the map */ - 0, 0, - 22 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail = { - "TrafficControlDetail", - "TrafficControlDetail", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_TrafficControlDetail_constr_1, &asn_PER_type_TrafficControlDetail_constr_1, CHOICE_constraint }, - asn_MBR_TrafficControlDetail_1, - 22, /* Elements count */ - &asn_SPC_TrafficControlDetail_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c b/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c deleted file mode 100644 index 53f9c587f..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c +++ /dev/null @@ -1,372 +0,0 @@ -/* - * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) - * From ASN.1 module "CARMA-CLOUD" - * found in "asn/cc_traffic_control_messages_asn1.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrafficControlGeometry.h" - -static int check_permitted_alphabet_2(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int check_permitted_alphabet_3(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_proj_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size <= 63) - && !check_permitted_alphabet_2(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_datum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size <= 63) - && !check_permitted_alphabet_3(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_refwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_heading_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 3599)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_nodes_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 255)) { - /* Perform validation of the inner elements */ - return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_nodes_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_type_nodes_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_proj_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..63)) */}; -static asn_per_constraints_t asn_PER_memb_proj_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_datum_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..63)) */}; -static asn_per_constraints_t asn_PER_memb_datum_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_refwidth_constr_8 CC_NOTUSED = { - { 2, 1 } /* (0..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_refwidth_constr_8 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_heading_constr_9 CC_NOTUSED = { - { 2, 1 } /* (0..3599) */, - -1}; -static asn_per_constraints_t asn_PER_memb_heading_constr_9 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 3599 } /* (0..3599) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_nodes_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_nodes_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_nodes_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PathNode, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_nodes_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_nodes_specs_10 = { - sizeof(struct TrafficControlGeometry__nodes), - offsetof(struct TrafficControlGeometry__nodes, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_nodes_10 = { - "nodes", - "nodes", - &asn_OP_SEQUENCE_OF, - asn_DEF_nodes_tags_10, - sizeof(asn_DEF_nodes_tags_10) - /sizeof(asn_DEF_nodes_tags_10[0]) - 1, /* 1 */ - asn_DEF_nodes_tags_10, /* Same as above */ - sizeof(asn_DEF_nodes_tags_10) - /sizeof(asn_DEF_nodes_tags_10[0]), /* 2 */ - { &asn_OER_type_nodes_constr_10, &asn_PER_type_nodes_constr_10, SEQUENCE_OF_constraint }, - asn_MBR_nodes_10, - 1, /* Single element */ - &asn_SPC_nodes_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, proj), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_proj_constr_2, &asn_PER_memb_proj_constr_2, memb_proj_constraint_1 }, - 0, 0, /* No default value */ - "proj" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, datum), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_datum_constr_3, &asn_PER_memb_datum_constr_3, memb_datum_constraint_1 }, - 0, 0, /* No default value */ - "datum" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reftime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EpochMins, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reftime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflon), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Longitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reflon" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflat), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Latitude, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reflat" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, refelv), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "refelv" - }, - { ATF_POINTER, 1, offsetof(struct TrafficControlGeometry, refwidth), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_refwidth_constr_8, &asn_PER_memb_refwidth_constr_8, memb_refwidth_constraint_1 }, - 0, 0, /* No default value */ - "refwidth" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, heading), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_heading_constr_9, &asn_PER_memb_heading_constr_9, memb_heading_constraint_1 }, - 0, 0, /* No default value */ - "heading" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, nodes), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_nodes_10, - 0, - { &asn_OER_memb_nodes_constr_10, &asn_PER_memb_nodes_constr_10, memb_nodes_constraint_1 }, - 0, 0, /* No default value */ - "nodes" - }, -}; -static const int asn_MAP_TrafficControlGeometry_oms_1[] = { 6 }; -static const ber_tlv_tag_t asn_DEF_TrafficControlGeometry_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlGeometry_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* proj */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* datum */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reftime */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* reflon */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* reflat */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refelv */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refwidth */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* nodes */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1 = { - sizeof(struct TrafficControlGeometry), - offsetof(struct TrafficControlGeometry, _asn_ctx), - asn_MAP_TrafficControlGeometry_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_TrafficControlGeometry_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry = { - "TrafficControlGeometry", - "TrafficControlGeometry", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlGeometry_tags_1, - sizeof(asn_DEF_TrafficControlGeometry_tags_1) - /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlGeometry_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlGeometry_tags_1) - /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlGeometry_1, - 9, /* Elements count */ - &asn_SPC_TrafficControlGeometry_specs_1 /* Additional specs */ -}; diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c b/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c deleted file mode 100644 index 23100a8f0..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlMessage.h" - -static asn_oer_constraints_t asn_OER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.reserved), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reserved" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.tcmV01), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlMessageV01, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "tcmV01" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcmV01 */ -}; -asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1 = { - sizeof(struct TrafficControlMessage), - offsetof(struct TrafficControlMessage, _asn_ctx), - offsetof(struct TrafficControlMessage, present), - sizeof(((struct TrafficControlMessage *)0)->present), - asn_MAP_TrafficControlMessage_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage = { - "TrafficControlMessage", - "TrafficControlMessage", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_TrafficControlMessage_constr_1, &asn_PER_type_TrafficControlMessage_constr_1, CHOICE_constraint }, - asn_MBR_TrafficControlMessage_1, - 2, /* Elements count */ - &asn_SPC_TrafficControlMessage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c b/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c deleted file mode 100644 index 55193d392..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c +++ /dev/null @@ -1,231 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlMessageV01.h" - -static int -memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msgtot_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_msgnum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_msgtot_constr_4 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_msgtot_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_msgnum_constr_5 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_msgnum_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqid), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_Id64b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reqid" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqseq), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, - 0, 0, /* No default value */ - "reqseq" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgtot), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_msgtot_constr_4, &asn_PER_memb_msgtot_constr_4, memb_msgtot_constraint_1 }, - 0, 0, /* No default value */ - "msgtot" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgnum), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_msgnum_constr_5, &asn_PER_memb_msgnum_constr_5, memb_msgnum_constraint_1 }, - 0, 0, /* No default value */ - "msgnum" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, id), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_Id128b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, updated), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_EpochMins, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "updated" - }, - { ATF_POINTER, 3, offsetof(struct TrafficControlMessageV01, package), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlPackage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "package" - }, - { ATF_POINTER, 2, offsetof(struct TrafficControlMessageV01, params), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlParams, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "params" - }, - { ATF_POINTER, 1, offsetof(struct TrafficControlMessageV01, geometry), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlGeometry, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "geometry" - }, -}; -static const int asn_MAP_TrafficControlMessageV01_oms_1[] = { 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_TrafficControlMessageV01_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessageV01_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 3 }, /* reqseq */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 2 }, /* msgtot */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 1 }, /* msgnum */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 5, -3, 0 }, /* updated */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, 0, 1 }, /* reqid */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 6, 0, 0 }, /* package */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 7, 0, 0 }, /* params */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 8, 0, 0 } /* geometry */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1 = { - sizeof(struct TrafficControlMessageV01), - offsetof(struct TrafficControlMessageV01, _asn_ctx), - asn_MAP_TrafficControlMessageV01_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_TrafficControlMessageV01_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01 = { - "TrafficControlMessageV01", - "TrafficControlMessageV01", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlMessageV01_tags_1, - sizeof(asn_DEF_TrafficControlMessageV01_tags_1) - /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlMessageV01_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlMessageV01_tags_1) - /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlMessageV01_1, - 9, /* Elements count */ - &asn_SPC_TrafficControlMessageV01_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c b/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c deleted file mode 100644 index 882463f7d..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlPackage.h" - -static int check_permitted_alphabet_2(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_label_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 63) - && !check_permitted_alphabet_2(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_tcids_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_tcids_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_tcids_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_label_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_label_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_oer_constraints_t asn_OER_memb_tcids_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_tcids_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_tcids_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), - 0, - &asn_DEF_Id128b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_tcids_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_tcids_specs_3 = { - sizeof(struct TrafficControlPackage__tcids), - offsetof(struct TrafficControlPackage__tcids, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_tcids_3 = { - "tcids", - "tcids", - &asn_OP_SEQUENCE_OF, - asn_DEF_tcids_tags_3, - sizeof(asn_DEF_tcids_tags_3) - /sizeof(asn_DEF_tcids_tags_3[0]) - 1, /* 1 */ - asn_DEF_tcids_tags_3, /* Same as above */ - sizeof(asn_DEF_tcids_tags_3) - /sizeof(asn_DEF_tcids_tags_3[0]), /* 2 */ - { &asn_OER_type_tcids_constr_3, &asn_PER_type_tcids_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_tcids_3, - 1, /* Single element */ - &asn_SPC_tcids_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[] = { - { ATF_POINTER, 1, offsetof(struct TrafficControlPackage, label), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_label_constr_2, &asn_PER_memb_label_constr_2, memb_label_constraint_1 }, - 0, 0, /* No default value */ - "label" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPackage, tcids), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_tcids_3, - 0, - { &asn_OER_memb_tcids_constr_3, &asn_PER_memb_tcids_constr_3, memb_tcids_constraint_1 }, - 0, 0, /* No default value */ - "tcids" - }, -}; -static const int asn_MAP_TrafficControlPackage_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_TrafficControlPackage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPackage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* label */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcids */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1 = { - sizeof(struct TrafficControlPackage), - offsetof(struct TrafficControlPackage, _asn_ctx), - asn_MAP_TrafficControlPackage_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_TrafficControlPackage_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage = { - "TrafficControlPackage", - "TrafficControlPackage", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlPackage_tags_1, - sizeof(asn_DEF_TrafficControlPackage_tags_1) - /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlPackage_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlPackage_tags_1) - /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlPackage_1, - 2, /* Elements count */ - &asn_SPC_TrafficControlPackage_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c b/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c deleted file mode 100644 index 59ec71b5c..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlParams.h" - -static int -memb_vclasses_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 255)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_vclasses_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_type_vclasses_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_vclasses_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_memb_vclasses_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_vclasses_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_TrafficControlVehClass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_vclasses_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_vclasses_specs_2 = { - sizeof(struct TrafficControlParams__vclasses), - offsetof(struct TrafficControlParams__vclasses, _asn_ctx), - 1, /* XER encoding is XMLValueList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vclasses_2 = { - "vclasses", - "vclasses", - &asn_OP_SEQUENCE_OF, - asn_DEF_vclasses_tags_2, - sizeof(asn_DEF_vclasses_tags_2) - /sizeof(asn_DEF_vclasses_tags_2[0]) - 1, /* 1 */ - asn_DEF_vclasses_tags_2, /* Same as above */ - sizeof(asn_DEF_vclasses_tags_2) - /sizeof(asn_DEF_vclasses_tags_2[0]), /* 2 */ - { &asn_OER_type_vclasses_constr_2, &asn_PER_type_vclasses_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_vclasses_2, - 1, /* Single element */ - &asn_SPC_vclasses_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlParams_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, vclasses), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_vclasses_2, - 0, - { &asn_OER_memb_vclasses_constr_2, &asn_PER_memb_vclasses_constr_2, memb_vclasses_constraint_1 }, - 0, 0, /* No default value */ - "vclasses" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, schedule), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlSchedule, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "schedule" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, regulatory), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regulatory" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, detail), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_TrafficControlDetail, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "detail" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlParams_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlParams_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vclasses */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* schedule */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* regulatory */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* detail */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1 = { - sizeof(struct TrafficControlParams), - offsetof(struct TrafficControlParams, _asn_ctx), - asn_MAP_TrafficControlParams_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlParams = { - "TrafficControlParams", - "TrafficControlParams", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlParams_tags_1, - sizeof(asn_DEF_TrafficControlParams_tags_1) - /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlParams_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlParams_tags_1) - /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlParams_1, - 4, /* Elements count */ - &asn_SPC_TrafficControlParams_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c b/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c deleted file mode 100644 index d42958adf..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c +++ /dev/null @@ -1,265 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrafficControlPathPart.h" - -static int -memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 16)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_updated_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 9223372036854775807)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pathindex_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_points_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 120)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_points_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..120)) */}; -static asn_per_constraints_t asn_PER_type_points_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_2 CC_NOTUSED = { - { 0, 0 }, - 16 /* (SIZE(16..16)) */}; -static asn_per_constraints_t asn_PER_memb_id_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_updated_constr_3 CC_NOTUSED = { - { 8, 1 } /* (0..9223372036854775807) */, - -1}; -static asn_per_constraints_t asn_PER_memb_updated_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_pathindex_constr_4 CC_NOTUSED = { - { 1, 1 } /* (1..127) */, - -1}; -static asn_per_constraints_t asn_PER_memb_pathindex_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 1, 127 } /* (1..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_points_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..120)) */}; -static asn_per_constraints_t asn_PER_memb_points_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_points_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Point, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_points_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_points_specs_5 = { - sizeof(struct TrafficControlPathPart__points), - offsetof(struct TrafficControlPathPart__points, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_points_5 = { - "points", - "points", - &asn_OP_SEQUENCE_OF, - asn_DEF_points_tags_5, - sizeof(asn_DEF_points_tags_5) - /sizeof(asn_DEF_points_tags_5[0]) - 1, /* 1 */ - asn_DEF_points_tags_5, /* Same as above */ - sizeof(asn_DEF_points_tags_5) - /sizeof(asn_DEF_points_tags_5[0]), /* 2 */ - { &asn_OER_type_points_constr_5, &asn_PER_type_points_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_points_5, - 1, /* Single element */ - &asn_SPC_points_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_TrafficControlPathPart_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, - 0, - { &asn_OER_memb_id_constr_2, &asn_PER_memb_id_constr_2, memb_id_constraint_1 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, updated), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_updated_constr_3, &asn_PER_memb_updated_constr_3, memb_updated_constraint_1 }, - 0, 0, /* No default value */ - "updated" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, pathindex), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_pathindex_constr_4, &asn_PER_memb_pathindex_constr_4, memb_pathindex_constraint_1 }, - 0, 0, /* No default value */ - "pathindex" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, points), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_points_5, - 0, - { &asn_OER_memb_points_constr_5, &asn_PER_memb_points_constr_5, memb_points_constraint_1 }, - 0, 0, /* No default value */ - "points" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlPathPart_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPathPart_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* updated */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathindex */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* points */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPathPart_specs_1 = { - sizeof(struct TrafficControlPathPart), - offsetof(struct TrafficControlPathPart, _asn_ctx), - asn_MAP_TrafficControlPathPart_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart = { - "TrafficControlPathPart", - "TrafficControlPathPart", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlPathPart_tags_1, - sizeof(asn_DEF_TrafficControlPathPart_tags_1) - /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlPathPart_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlPathPart_tags_1) - /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlPathPart_1, - 4, /* Elements count */ - &asn_SPC_TrafficControlPathPart_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c b/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c deleted file mode 100644 index 0807baa01..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlRequest.h" - -static asn_oer_constraints_t asn_OER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.reserved), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reserved" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.tcrV01), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrafficControlRequestV01, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "tcrV01" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcrV01 */ -}; -asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1 = { - sizeof(struct TrafficControlRequest), - offsetof(struct TrafficControlRequest, _asn_ctx), - offsetof(struct TrafficControlRequest, present), - sizeof(((struct TrafficControlRequest *)0)->present), - asn_MAP_TrafficControlRequest_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest = { - "TrafficControlRequest", - "TrafficControlRequest", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_TrafficControlRequest_constr_1, &asn_PER_type_TrafficControlRequest_constr_1, CHOICE_constraint }, - asn_MBR_TrafficControlRequest_1, - 2, /* Elements count */ - &asn_SPC_TrafficControlRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c b/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c deleted file mode 100644 index 875c387ca..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c +++ /dev/null @@ -1,225 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlRequestV01.h" - -static int -memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_scale_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -3 && value <= 3)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_bounds_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_bounds_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_bounds_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_scale_constr_4 CC_NOTUSED = { - { 1, 0 } /* (-3..3) */, - -1}; -static asn_per_constraints_t asn_PER_memb_scale_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, -3, 3 } /* (-3..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_bounds_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_bounds_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_bounds_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TrafficControlBounds, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_bounds_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_bounds_specs_5 = { - sizeof(struct TrafficControlRequestV01__bounds), - offsetof(struct TrafficControlRequestV01__bounds, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_bounds_5 = { - "bounds", - "bounds", - &asn_OP_SEQUENCE_OF, - asn_DEF_bounds_tags_5, - sizeof(asn_DEF_bounds_tags_5) - /sizeof(asn_DEF_bounds_tags_5[0]) - 1, /* 1 */ - asn_DEF_bounds_tags_5, /* Same as above */ - sizeof(asn_DEF_bounds_tags_5) - /sizeof(asn_DEF_bounds_tags_5[0]), /* 2 */ - { &asn_OER_type_bounds_constr_5, &asn_PER_type_bounds_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_bounds_5, - 1, /* Single element */ - &asn_SPC_bounds_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqid), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Id64b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "reqid" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqseq), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, - 0, 0, /* No default value */ - "reqseq" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, scale), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_scale_constr_4, &asn_PER_memb_scale_constr_4, memb_scale_constraint_1 }, - 0, 0, /* No default value */ - "scale" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, bounds), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_bounds_5, - 0, - { &asn_OER_memb_bounds_constr_5, &asn_PER_memb_bounds_constr_5, memb_bounds_constraint_1 }, - 0, 0, /* No default value */ - "bounds" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlRequestV01_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequestV01_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reqid */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reqseq */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* scale */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* bounds */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1 = { - sizeof(struct TrafficControlRequestV01), - offsetof(struct TrafficControlRequestV01, _asn_ctx), - asn_MAP_TrafficControlRequestV01_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01 = { - "TrafficControlRequestV01", - "TrafficControlRequestV01", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlRequestV01_tags_1, - sizeof(asn_DEF_TrafficControlRequestV01_tags_1) - /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlRequestV01_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlRequestV01_tags_1) - /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlRequestV01_1, - 4, /* Elements count */ - &asn_SPC_TrafficControlRequestV01_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c b/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c deleted file mode 100644 index 9080cd190..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlSchedule.h" - -static int -memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_between_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_between_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_between_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_between_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_between_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_DailySchedule, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_between_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_between_specs_5 = { - sizeof(struct TrafficControlSchedule__between), - offsetof(struct TrafficControlSchedule__between, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_between_5 = { - "between", - "between", - &asn_OP_SEQUENCE_OF, - asn_DEF_between_tags_5, - sizeof(asn_DEF_between_tags_5) - /sizeof(asn_DEF_between_tags_5[0]) - 1, /* 1 */ - asn_DEF_between_tags_5, /* Same as above */ - sizeof(asn_DEF_between_tags_5) - /sizeof(asn_DEF_between_tags_5[0]), /* 2 */ - { &asn_OER_type_between_constr_5, &asn_PER_type_between_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_between_5, - 1, /* Single element */ - &asn_SPC_between_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlSchedule, start), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_EpochMins, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "start" - }, - { ATF_POINTER, 4, offsetof(struct TrafficControlSchedule, end), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EpochMins, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "end" - }, - { ATF_POINTER, 3, offsetof(struct TrafficControlSchedule, dow), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_DayOfWeek, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dow" - }, - { ATF_POINTER, 2, offsetof(struct TrafficControlSchedule, between), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_between_5, - 0, - { &asn_OER_memb_between_constr_5, &asn_PER_memb_between_constr_5, memb_between_constraint_1 }, - 0, 0, /* No default value */ - "between" - }, - { ATF_POINTER, 1, offsetof(struct TrafficControlSchedule, repeat), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RepeatParams, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "repeat" - }, -}; -static const int asn_MAP_TrafficControlSchedule_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_TrafficControlSchedule_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlSchedule_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* start */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* end */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* dow */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* between */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 4, 0, 0 } /* repeat */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1 = { - sizeof(struct TrafficControlSchedule), - offsetof(struct TrafficControlSchedule, _asn_ctx), - asn_MAP_TrafficControlSchedule_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_TrafficControlSchedule_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule = { - "TrafficControlSchedule", - "TrafficControlSchedule", - &asn_OP_SEQUENCE, - asn_DEF_TrafficControlSchedule_tags_1, - sizeof(asn_DEF_TrafficControlSchedule_tags_1) - /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlSchedule_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlSchedule_tags_1) - /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrafficControlSchedule_1, - 5, /* Elements count */ - &asn_SPC_TrafficControlSchedule_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlType.c b/src/tmx/Asn_J2735/src/r63/TrafficControlType.c deleted file mode 100644 index 5a6453819..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlType.c +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrafficControlType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TrafficControlType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 22 } /* (0..22) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlType_value2enum_1[] = { - { 0, 6, "signal" }, - { 1, 4, "stop" }, - { 2, 5, "yield" }, - { 3, 8, "notowing" }, - { 4, 10, "restricted" }, - { 5, 6, "closed" }, - { 6, 6, "chains" }, - { 7, 9, "direction" }, - { 8, 11, "lataffinity" }, - { 9, 8, "leftperm" }, - { 10, 9, "rightperm" }, - { 11, 7, "opening" }, - { 12, 7, "closing" }, - { 13, 7, "parking" }, - { 14, 8, "minspeed" }, - { 15, 8, "maxspeed" }, - { 16, 7, "minhdwy" }, - { 17, 10, "maxvehmass" }, - { 18, 12, "maxvehheight" }, - { 19, 11, "maxvehwidth" }, - { 20, 12, "maxvehlength" }, - { 21, 8, "maxaxles" }, - { 22, 9, "minvehocc" } -}; -static const unsigned int asn_MAP_TrafficControlType_enum2value_1[] = { - 6, /* chains(6) */ - 5, /* closed(5) */ - 12, /* closing(12) */ - 7, /* direction(7) */ - 8, /* lataffinity(8) */ - 9, /* leftperm(9) */ - 21, /* maxaxles(21) */ - 15, /* maxspeed(15) */ - 18, /* maxvehheight(18) */ - 20, /* maxvehlength(20) */ - 17, /* maxvehmass(17) */ - 19, /* maxvehwidth(19) */ - 16, /* minhdwy(16) */ - 14, /* minspeed(14) */ - 22, /* minvehocc(22) */ - 3, /* notowing(3) */ - 11, /* opening(11) */ - 13, /* parking(13) */ - 4, /* restricted(4) */ - 10, /* rightperm(10) */ - 0, /* signal(0) */ - 1, /* stop(1) */ - 2 /* yield(2) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1 = { - asn_MAP_TrafficControlType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TrafficControlType_enum2value_1, /* N => "tag"; sorted by N */ - 23, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlType = { - "TrafficControlType", - "TrafficControlType", - &asn_OP_NativeEnumerated, - asn_DEF_TrafficControlType_tags_1, - sizeof(asn_DEF_TrafficControlType_tags_1) - /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlType_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlType_tags_1) - /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ - { &asn_OER_type_TrafficControlType_constr_1, &asn_PER_type_TrafficControlType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TrafficControlType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c b/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c deleted file mode 100644 index 585fd29c9..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c +++ /dev/null @@ -1,539 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "TrafficControlValue.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_chains_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_chains_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_direction_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_direction_constr_7 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_lataffinity_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_lataffinity_constr_10 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_leftperm_constr_13 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_leftperm_constr_13 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_rightperm_constr_18 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_rightperm_constr_18 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_opening_constr_23 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_opening_constr_23 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_closing_constr_26 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_closing_constr_26 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_parking_constr_29 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_parking_constr_29 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_TrafficControlValue_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 8 } /* (0..8) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_3[] = { - { 0, 2, "no" }, - { 1, 9, "permitted" }, - { 2, 8, "required" } -}; -static const unsigned int asn_MAP_chains_enum2value_3[] = { - 0, /* no(0) */ - 1, /* permitted(1) */ - 2 /* required(2) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_chains_specs_3 = { - asn_MAP_chains_value2enum_3, /* "tag" => N; sorted by tag */ - asn_MAP_chains_enum2value_3, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_chains_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_chains_3 = { - "chains", - "chains", - &asn_OP_NativeEnumerated, - asn_DEF_chains_tags_3, - sizeof(asn_DEF_chains_tags_3) - /sizeof(asn_DEF_chains_tags_3[0]) - 1, /* 1 */ - asn_DEF_chains_tags_3, /* Same as above */ - sizeof(asn_DEF_chains_tags_3) - /sizeof(asn_DEF_chains_tags_3[0]), /* 2 */ - { &asn_OER_type_chains_constr_3, &asn_PER_type_chains_constr_3, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_chains_specs_3 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_7[] = { - { 0, 7, "forward" }, - { 1, 7, "reverse" } -}; -static const unsigned int asn_MAP_direction_enum2value_7[] = { - 0, /* forward(0) */ - 1 /* reverse(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_direction_specs_7 = { - asn_MAP_direction_value2enum_7, /* "tag" => N; sorted by tag */ - asn_MAP_direction_enum2value_7, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_direction_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_direction_7 = { - "direction", - "direction", - &asn_OP_NativeEnumerated, - asn_DEF_direction_tags_7, - sizeof(asn_DEF_direction_tags_7) - /sizeof(asn_DEF_direction_tags_7[0]) - 1, /* 1 */ - asn_DEF_direction_tags_7, /* Same as above */ - sizeof(asn_DEF_direction_tags_7) - /sizeof(asn_DEF_direction_tags_7[0]), /* 2 */ - { &asn_OER_type_direction_constr_7, &asn_PER_type_direction_constr_7, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_direction_specs_7 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_10[] = { - { 0, 4, "left" }, - { 1, 5, "right" } -}; -static const unsigned int asn_MAP_lataffinity_enum2value_10[] = { - 0, /* left(0) */ - 1 /* right(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_10 = { - asn_MAP_lataffinity_value2enum_10, /* "tag" => N; sorted by tag */ - asn_MAP_lataffinity_enum2value_10, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_lataffinity_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_lataffinity_10 = { - "lataffinity", - "lataffinity", - &asn_OP_NativeEnumerated, - asn_DEF_lataffinity_tags_10, - sizeof(asn_DEF_lataffinity_tags_10) - /sizeof(asn_DEF_lataffinity_tags_10[0]) - 1, /* 1 */ - asn_DEF_lataffinity_tags_10, /* Same as above */ - sizeof(asn_DEF_lataffinity_tags_10) - /sizeof(asn_DEF_lataffinity_tags_10[0]), /* 2 */ - { &asn_OER_type_lataffinity_constr_10, &asn_PER_type_lataffinity_constr_10, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_lataffinity_specs_10 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_leftperm_value2enum_13[] = { - { 0, 4, "none" }, - { 1, 9, "permitted" }, - { 2, 12, "passing-only" }, - { 3, 14, "emergency-only" } -}; -static const unsigned int asn_MAP_leftperm_enum2value_13[] = { - 3, /* emergency-only(3) */ - 0, /* none(0) */ - 2, /* passing-only(2) */ - 1 /* permitted(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_leftperm_specs_13 = { - asn_MAP_leftperm_value2enum_13, /* "tag" => N; sorted by tag */ - asn_MAP_leftperm_enum2value_13, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_leftperm_tags_13[] = { - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_leftperm_13 = { - "leftperm", - "leftperm", - &asn_OP_NativeEnumerated, - asn_DEF_leftperm_tags_13, - sizeof(asn_DEF_leftperm_tags_13) - /sizeof(asn_DEF_leftperm_tags_13[0]) - 1, /* 1 */ - asn_DEF_leftperm_tags_13, /* Same as above */ - sizeof(asn_DEF_leftperm_tags_13) - /sizeof(asn_DEF_leftperm_tags_13[0]), /* 2 */ - { &asn_OER_type_leftperm_constr_13, &asn_PER_type_leftperm_constr_13, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_leftperm_specs_13 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_rightperm_value2enum_18[] = { - { 0, 4, "none" }, - { 1, 9, "permitted" }, - { 2, 12, "passing-only" }, - { 3, 14, "emergency-only" } -}; -static const unsigned int asn_MAP_rightperm_enum2value_18[] = { - 3, /* emergency-only(3) */ - 0, /* none(0) */ - 2, /* passing-only(2) */ - 1 /* permitted(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_rightperm_specs_18 = { - asn_MAP_rightperm_value2enum_18, /* "tag" => N; sorted by tag */ - asn_MAP_rightperm_enum2value_18, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_rightperm_tags_18[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_rightperm_18 = { - "rightperm", - "rightperm", - &asn_OP_NativeEnumerated, - asn_DEF_rightperm_tags_18, - sizeof(asn_DEF_rightperm_tags_18) - /sizeof(asn_DEF_rightperm_tags_18[0]) - 1, /* 1 */ - asn_DEF_rightperm_tags_18, /* Same as above */ - sizeof(asn_DEF_rightperm_tags_18) - /sizeof(asn_DEF_rightperm_tags_18[0]), /* 2 */ - { &asn_OER_type_rightperm_constr_18, &asn_PER_type_rightperm_constr_18, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_rightperm_specs_18 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_opening_value2enum_23[] = { - { 0, 4, "left" }, - { 1, 5, "right" } -}; -static const unsigned int asn_MAP_opening_enum2value_23[] = { - 0, /* left(0) */ - 1 /* right(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_opening_specs_23 = { - asn_MAP_opening_value2enum_23, /* "tag" => N; sorted by tag */ - asn_MAP_opening_enum2value_23, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_opening_tags_23[] = { - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_opening_23 = { - "opening", - "opening", - &asn_OP_NativeEnumerated, - asn_DEF_opening_tags_23, - sizeof(asn_DEF_opening_tags_23) - /sizeof(asn_DEF_opening_tags_23[0]) - 1, /* 1 */ - asn_DEF_opening_tags_23, /* Same as above */ - sizeof(asn_DEF_opening_tags_23) - /sizeof(asn_DEF_opening_tags_23[0]), /* 2 */ - { &asn_OER_type_opening_constr_23, &asn_PER_type_opening_constr_23, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_opening_specs_23 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_closing_value2enum_26[] = { - { 0, 4, "left" }, - { 1, 5, "right" } -}; -static const unsigned int asn_MAP_closing_enum2value_26[] = { - 0, /* left(0) */ - 1 /* right(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_closing_specs_26 = { - asn_MAP_closing_value2enum_26, /* "tag" => N; sorted by tag */ - asn_MAP_closing_enum2value_26, /* N => "tag"; sorted by N */ - 2, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_closing_tags_26[] = { - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_closing_26 = { - "closing", - "closing", - &asn_OP_NativeEnumerated, - asn_DEF_closing_tags_26, - sizeof(asn_DEF_closing_tags_26) - /sizeof(asn_DEF_closing_tags_26[0]) - 1, /* 1 */ - asn_DEF_closing_tags_26, /* Same as above */ - sizeof(asn_DEF_closing_tags_26) - /sizeof(asn_DEF_closing_tags_26[0]), /* 2 */ - { &asn_OER_type_closing_constr_26, &asn_PER_type_closing_constr_26, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_closing_specs_26 /* Additional specs */ -}; - -static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_29[] = { - { 0, 2, "no" }, - { 1, 8, "parallel" }, - { 2, 6, "angled" } -}; -static const unsigned int asn_MAP_parking_enum2value_29[] = { - 2, /* angled(2) */ - 0, /* no(0) */ - 1 /* parallel(1) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_parking_specs_29 = { - asn_MAP_parking_value2enum_29, /* "tag" => N; sorted by tag */ - asn_MAP_parking_enum2value_29, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_parking_tags_29[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_parking_29 = { - "parking", - "parking", - &asn_OP_NativeEnumerated, - asn_DEF_parking_tags_29, - sizeof(asn_DEF_parking_tags_29) - /sizeof(asn_DEF_parking_tags_29[0]) - 1, /* 1 */ - asn_DEF_parking_tags_29, /* Same as above */ - sizeof(asn_DEF_parking_tags_29) - /sizeof(asn_DEF_parking_tags_29[0]), /* 2 */ - { &asn_OER_type_parking_constr_29, &asn_PER_type_parking_constr_29, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_parking_specs_29 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TrafficControlValue_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.value), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "value" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.chains), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_chains_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "chains" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.direction), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_direction_7, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.lataffinity), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_lataffinity_10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lataffinity" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.leftperm), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_leftperm_13, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "leftperm" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.rightperm), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_rightperm_18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rightperm" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.opening), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_opening_23, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "opening" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.closing), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_closing_26, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "closing" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.parking), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_parking_29, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "parking" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_TrafficControlValue_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* chains */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lataffinity */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* leftperm */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* rightperm */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* opening */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* closing */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* parking */ -}; -asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1 = { - sizeof(struct TrafficControlValue), - offsetof(struct TrafficControlValue, _asn_ctx), - offsetof(struct TrafficControlValue, present), - sizeof(((struct TrafficControlValue *)0)->present), - asn_MAP_TrafficControlValue_tag2el_1, - 9, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlValue = { - "TrafficControlValue", - "TrafficControlValue", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_TrafficControlValue_constr_1, &asn_PER_type_TrafficControlValue_constr_1, CHOICE_constraint }, - asn_MBR_TrafficControlValue_1, - 9, /* Elements count */ - &asn_SPC_TrafficControlValue_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c b/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c deleted file mode 100644 index 935c39902..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrafficControlVehClass.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 18 } /* (0..18,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlVehClass_value2enum_1[] = { - { 0, 3, "any" }, - { 1, 10, "pedestrian" }, - { 2, 7, "bicycle" }, - { 3, 11, "micromobile" }, - { 4, 10, "motorcycle" }, - { 5, 13, "passenger-car" }, - { 6, 15, "light-truck-van" }, - { 7, 3, "bus" }, - { 8, 35, "two-axle-six-tire-single-unit-truck" }, - { 9, 28, "three-axle-single-unit-truck" }, - { 10, 35, "four-or-more-axle-single-unit-truck" }, - { 11, 39, "four-or-fewer-axle-single-trailer-truck" }, - { 12, 30, "five-axle-single-trailer-truck" }, - { 13, 37, "six-or-more-axle-single-trailer-truck" }, - { 14, 38, "five-or-fewer-axle-multi-trailer-truck" }, - { 15, 28, "six-axle-multi-trailer-truck" }, - { 16, 38, "seven-or-more-axle-multi-trailer-truck" }, - { 17, 4, "rail" }, - { 18, 12, "unclassified" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_TrafficControlVehClass_enum2value_1[] = { - 0, /* any(0) */ - 2, /* bicycle(2) */ - 7, /* bus(7) */ - 12, /* five-axle-single-trailer-truck(12) */ - 14, /* five-or-fewer-axle-multi-trailer-truck(14) */ - 11, /* four-or-fewer-axle-single-trailer-truck(11) */ - 10, /* four-or-more-axle-single-unit-truck(10) */ - 6, /* light-truck-van(6) */ - 3, /* micromobile(3) */ - 4, /* motorcycle(4) */ - 5, /* passenger-car(5) */ - 1, /* pedestrian(1) */ - 17, /* rail(17) */ - 16, /* seven-or-more-axle-multi-trailer-truck(16) */ - 15, /* six-axle-multi-trailer-truck(15) */ - 13, /* six-or-more-axle-single-trailer-truck(13) */ - 9, /* three-axle-single-unit-truck(9) */ - 8, /* two-axle-six-tire-single-unit-truck(8) */ - 18 /* unclassified(18) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1 = { - asn_MAP_TrafficControlVehClass_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TrafficControlVehClass_enum2value_1, /* N => "tag"; sorted by N */ - 19, /* Number of elements in the maps */ - 20, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TrafficControlVehClass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass = { - "TrafficControlVehClass", - "TrafficControlVehClass", - &asn_OP_NativeEnumerated, - asn_DEF_TrafficControlVehClass_tags_1, - sizeof(asn_DEF_TrafficControlVehClass_tags_1) - /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ - asn_DEF_TrafficControlVehClass_tags_1, /* Same as above */ - sizeof(asn_DEF_TrafficControlVehClass_tags_1) - /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ - { &asn_OER_type_TrafficControlVehClass_constr_1, &asn_PER_type_TrafficControlVehClass_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TrafficControlVehClass_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerData.c b/src/tmx/Asn_J2735/src/r63/TrailerData.c deleted file mode 100644 index c4ce84679..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerData.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerData.h" - -asn_TYPE_member_t asn_MBR_TrailerData_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, sspRights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspRights" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, connection), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "connection" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerData, units), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerUnitDescriptionList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "units" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* connection */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1 = { - sizeof(struct TrailerData), - offsetof(struct TrailerData, _asn_ctx), - asn_MAP_TrailerData_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerData = { - "TrailerData", - "TrailerData", - &asn_OP_SEQUENCE, - asn_DEF_TrailerData_tags_1, - sizeof(asn_DEF_TrailerData_tags_1) - /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ - asn_DEF_TrailerData_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerData_tags_1) - /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrailerData_1, - 3, /* Elements count */ - &asn_SPC_TrailerData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c deleted file mode 100644 index 32d966d18..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerHistoryPoint.h" - -asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, pivotAngle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Angle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pivotAngle" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, timeOffset), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeOffset, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, positionOffset), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "positionOffset" - }, - { ATF_POINTER, 2, offsetof(struct TrailerHistoryPoint, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_POINTER, 1, offsetof(struct TrailerHistoryPoint, heading), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoarseHeading, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "heading" - }, -}; -static const int asn_MAP_TrailerHistoryPoint_oms_1[] = { 3, 4 }; -static const ber_tlv_tag_t asn_DEF_TrailerHistoryPoint_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerHistoryPoint_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotAngle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeOffset */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* positionOffset */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* heading */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1 = { - sizeof(struct TrailerHistoryPoint), - offsetof(struct TrailerHistoryPoint, _asn_ctx), - asn_MAP_TrailerHistoryPoint_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_TrailerHistoryPoint_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint = { - "TrailerHistoryPoint", - "TrailerHistoryPoint", - &asn_OP_SEQUENCE, - asn_DEF_TrailerHistoryPoint_tags_1, - sizeof(asn_DEF_TrailerHistoryPoint_tags_1) - /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ - asn_DEF_TrailerHistoryPoint_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerHistoryPoint_tags_1) - /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrailerHistoryPoint_1, - 5, /* Elements count */ - &asn_SPC_TrailerHistoryPoint_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c deleted file mode 100644 index d70e6a154..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerHistoryPointList.h" - -static asn_oer_constraints_t asn_OER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..23)) */}; -asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TrailerHistoryPoint, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerHistoryPointList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1 = { - sizeof(struct TrailerHistoryPointList), - offsetof(struct TrailerHistoryPointList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList = { - "TrailerHistoryPointList", - "TrailerHistoryPointList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TrailerHistoryPointList_tags_1, - sizeof(asn_DEF_TrailerHistoryPointList_tags_1) - /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ - asn_DEF_TrailerHistoryPointList_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerHistoryPointList_tags_1) - /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ - { &asn_OER_type_TrailerHistoryPointList_constr_1, &asn_PER_type_TrailerHistoryPointList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_TrailerHistoryPointList_1, - 1, /* Single element */ - &asn_SPC_TrailerHistoryPointList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerMass.c b/src/tmx/Asn_J2735/src/r63/TrailerMass.c deleted file mode 100644 index f21e1bac1..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerMass.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerMass.h" - -int -TrailerMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TrailerMass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_TrailerMass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TrailerMass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrailerMass = { - "TrailerMass", - "TrailerMass", - &asn_OP_NativeInteger, - asn_DEF_TrailerMass_tags_1, - sizeof(asn_DEF_TrailerMass_tags_1) - /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ - asn_DEF_TrailerMass_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerMass_tags_1) - /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ - { &asn_OER_type_TrailerMass_constr_1, &asn_PER_type_TrailerMass_constr_1, TrailerMass_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c deleted file mode 100644 index 3165ad9dc..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerUnitDescription.h" - -asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, isDolly), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IsDolly, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "isDolly" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, width), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, length), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleLength, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "length" - }, - { ATF_POINTER, 4, offsetof(struct TrailerUnitDescription, height), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "height" - }, - { ATF_POINTER, 3, offsetof(struct TrailerUnitDescription, mass), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerMass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, bumperHeights), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "bumperHeights" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, centerOfGravity), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "centerOfGravity" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, frontPivot), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "frontPivot" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, rearPivot), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PivotPointDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rearPivot" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, rearWheelOffset), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Offset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rearWheelOffset" - }, - { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, positionOffset), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Node_XY_24b, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "positionOffset" - }, - { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, elevationOffset), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevationOffset" - }, - { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, crumbData), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerHistoryPointList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "crumbData" - }, -}; -static const int asn_MAP_TrailerUnitDescription_oms_1[] = { 3, 4, 5, 6, 8, 9, 11, 12 }; -static const ber_tlv_tag_t asn_DEF_TrailerUnitDescription_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TrailerUnitDescription_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isDolly */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* length */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* bumperHeights */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* centerOfGravity */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* frontPivot */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* rearPivot */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* rearWheelOffset */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* positionOffset */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* elevationOffset */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* crumbData */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1 = { - sizeof(struct TrailerUnitDescription), - offsetof(struct TrailerUnitDescription, _asn_ctx), - asn_MAP_TrailerUnitDescription_tag2el_1, - 13, /* Count of tags in the map */ - asn_MAP_TrailerUnitDescription_oms_1, /* Optional members */ - 8, 0, /* Root/Additions */ - 13, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription = { - "TrailerUnitDescription", - "TrailerUnitDescription", - &asn_OP_SEQUENCE, - asn_DEF_TrailerUnitDescription_tags_1, - sizeof(asn_DEF_TrailerUnitDescription_tags_1) - /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ - asn_DEF_TrailerUnitDescription_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerUnitDescription_tags_1) - /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TrailerUnitDescription_1, - 13, /* Elements count */ - &asn_SPC_TrailerUnitDescription_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c deleted file mode 100644 index 49a4a6995..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerUnitDescriptionList.h" - -static asn_oer_constraints_t asn_OER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TrailerUnitDescription, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TrailerUnitDescriptionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1 = { - sizeof(struct TrailerUnitDescriptionList), - offsetof(struct TrailerUnitDescriptionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList = { - "TrailerUnitDescriptionList", - "TrailerUnitDescriptionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TrailerUnitDescriptionList_tags_1, - sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) - /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ - asn_DEF_TrailerUnitDescriptionList_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) - /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ - { &asn_OER_type_TrailerUnitDescriptionList_constr_1, &asn_PER_type_TrailerUnitDescriptionList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_TrailerUnitDescriptionList_1, - 1, /* Single element */ - &asn_SPC_TrailerUnitDescriptionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TrailerWeight.c b/src/tmx/Asn_J2735/src/r63/TrailerWeight.c deleted file mode 100644 index eb99726ac..000000000 --- a/src/tmx/Asn_J2735/src/r63/TrailerWeight.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TrailerWeight.h" - -int -TrailerWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 64255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TrailerWeight_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..64255) */, - -1}; -asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { - "TrailerWeight", - "TrailerWeight", - &asn_OP_NativeInteger, - asn_DEF_TrailerWeight_tags_1, - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - asn_DEF_TrailerWeight_tags_1, /* Same as above */ - sizeof(asn_DEF_TrailerWeight_tags_1) - /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ - { &asn_OER_type_TrailerWeight_constr_1, &asn_PER_type_TrailerWeight_constr_1, TrailerWeight_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TransitStatus.c b/src/tmx/Asn_J2735/src/r63/TransitStatus.c deleted file mode 100644 index 2a1b59a05..000000000 --- a/src/tmx/Asn_J2735/src/r63/TransitStatus.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TransitStatus.h" - -int -TransitStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 6)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TransitStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 6 /* (SIZE(6..6)) */}; -static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitStatus = { - "TransitStatus", - "TransitStatus", - &asn_OP_BIT_STRING, - asn_DEF_TransitStatus_tags_1, - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - asn_DEF_TransitStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitStatus_tags_1) - /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_TransitStatus_constr_1, &asn_PER_type_TransitStatus_constr_1, TransitStatus_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c b/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c deleted file mode 100644 index 7f3a175d3..000000000 --- a/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TransitVehicleOccupancy.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TransitVehicleOccupancy_value2enum_1[] = { - { 0, 16, "occupancyUnknown" }, - { 1, 14, "occupancyEmpty" }, - { 2, 16, "occupancyVeryLow" }, - { 3, 12, "occupancyLow" }, - { 4, 12, "occupancyMed" }, - { 5, 13, "occupancyHigh" }, - { 6, 19, "occupancyNearlyFull" }, - { 7, 13, "occupancyFull" } -}; -static const unsigned int asn_MAP_TransitVehicleOccupancy_enum2value_1[] = { - 1, /* occupancyEmpty(1) */ - 7, /* occupancyFull(7) */ - 5, /* occupancyHigh(5) */ - 3, /* occupancyLow(3) */ - 4, /* occupancyMed(4) */ - 6, /* occupancyNearlyFull(6) */ - 0, /* occupancyUnknown(0) */ - 2 /* occupancyVeryLow(2) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1 = { - asn_MAP_TransitVehicleOccupancy_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TransitVehicleOccupancy_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TransitVehicleOccupancy_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy = { - "TransitVehicleOccupancy", - "TransitVehicleOccupancy", - &asn_OP_NativeEnumerated, - asn_DEF_TransitVehicleOccupancy_tags_1, - sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) - /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ - asn_DEF_TransitVehicleOccupancy_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) - /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ - { &asn_OER_type_TransitVehicleOccupancy_constr_1, &asn_PER_type_TransitVehicleOccupancy_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TransitVehicleOccupancy_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c b/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c deleted file mode 100644 index 1fdfc0f8f..000000000 --- a/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TransitVehicleStatus.h" - -int -TransitVehicleStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 8)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - 8 /* (SIZE(8..8)) */}; -asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_TransitVehicleStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus = { - "TransitVehicleStatus", - "TransitVehicleStatus", - &asn_OP_BIT_STRING, - asn_DEF_TransitVehicleStatus_tags_1, - sizeof(asn_DEF_TransitVehicleStatus_tags_1) - /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ - asn_DEF_TransitVehicleStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_TransitVehicleStatus_tags_1) - /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_TransitVehicleStatus_constr_1, &asn_PER_type_TransitVehicleStatus_constr_1, TransitVehicleStatus_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c deleted file mode 100644 index 8ad127e29..000000000 --- a/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TransmissionAndSpeed.h" - -asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, transmisson), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TransmissionState, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "transmisson" - }, - { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, speed), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Velocity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speed" - }, -}; -static const ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TransmissionAndSpeed_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transmisson */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1 = { - sizeof(struct TransmissionAndSpeed), - offsetof(struct TransmissionAndSpeed, _asn_ctx), - asn_MAP_TransmissionAndSpeed_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { - "TransmissionAndSpeed", - "TransmissionAndSpeed", - &asn_OP_SEQUENCE, - asn_DEF_TransmissionAndSpeed_tags_1, - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionAndSpeed_tags_1) - /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TransmissionAndSpeed_1, - 2, /* Elements count */ - &asn_SPC_TransmissionAndSpeed_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TransmissionState.c b/src/tmx/Asn_J2735/src/r63/TransmissionState.c deleted file mode 100644 index 0111ae40b..000000000 --- a/src/tmx/Asn_J2735/src/r63/TransmissionState.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TransmissionState.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TransmissionState_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { - { 0, 7, "neutral" }, - { 1, 4, "park" }, - { 2, 12, "forwardGears" }, - { 3, 12, "reverseGears" }, - { 4, 9, "reserved1" }, - { 5, 9, "reserved2" }, - { 6, 9, "reserved3" }, - { 7, 11, "unavailable" } -}; -static const unsigned int asn_MAP_TransmissionState_enum2value_1[] = { - 2, /* forwardGears(2) */ - 0, /* neutral(0) */ - 1, /* park(1) */ - 4, /* reserved1(4) */ - 5, /* reserved2(5) */ - 6, /* reserved3(6) */ - 3, /* reverseGears(3) */ - 7 /* unavailable(7) */ -}; -const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { - asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TransmissionState = { - "TransmissionState", - "TransmissionState", - &asn_OP_NativeEnumerated, - asn_DEF_TransmissionState_tags_1, - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - asn_DEF_TransmissionState_tags_1, /* Same as above */ - sizeof(asn_DEF_TransmissionState_tags_1) - /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ - { &asn_OER_type_TransmissionState_constr_1, &asn_PER_type_TransmissionState_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TransmissionState_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c b/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c deleted file mode 100644 index 219428e80..000000000 --- a/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c +++ /dev/null @@ -1,395 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TravelerDataFrame.h" - -static int -memb_regions_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 16)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_msgId_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_msgId_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_regions_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -static asn_per_constraints_t asn_PER_type_regions_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_content_constr_16 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_content_constr_16 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regions_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -static asn_per_constraints_t asn_PER_memb_regions_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_msgId_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.furtherInfoID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FurtherInfoID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "furtherInfoID" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.roadSignID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RoadSignID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roadSignID" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ -}; -static asn_CHOICE_specifics_t asn_SPC_msgId_specs_4 = { - sizeof(struct TravelerDataFrame__msgId), - offsetof(struct TravelerDataFrame__msgId, _asn_ctx), - offsetof(struct TravelerDataFrame__msgId, present), - sizeof(((struct TravelerDataFrame__msgId *)0)->present), - asn_MAP_msgId_tag2el_4, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_msgId_4 = { - "msgId", - "msgId", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_msgId_constr_4, &asn_PER_type_msgId_constr_4, CHOICE_constraint }, - asn_MBR_msgId_4, - 2, /* Elements count */ - &asn_SPC_msgId_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_regions_12[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_GeographicalPath, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regions_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regions_specs_12 = { - sizeof(struct TravelerDataFrame__regions), - offsetof(struct TravelerDataFrame__regions, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regions_12 = { - "regions", - "regions", - &asn_OP_SEQUENCE_OF, - asn_DEF_regions_tags_12, - sizeof(asn_DEF_regions_tags_12) - /sizeof(asn_DEF_regions_tags_12[0]) - 1, /* 1 */ - asn_DEF_regions_tags_12, /* Same as above */ - sizeof(asn_DEF_regions_tags_12) - /sizeof(asn_DEF_regions_tags_12[0]), /* 2 */ - { &asn_OER_type_regions_constr_12, &asn_PER_type_regions_constr_12, SEQUENCE_OF_constraint }, - asn_MBR_regions_12, - 1, /* Single element */ - &asn_SPC_regions_specs_12 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_content_16[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.advisory), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodesAndText, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "advisory" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.workZone), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WorkZone, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "workZone" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.genericSign), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GenericSignage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "genericSign" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.speedLimit), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedLimit, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedLimit" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.exitService), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExitService, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "exitService" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_content_tag2el_16[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ -}; -static asn_CHOICE_specifics_t asn_SPC_content_specs_16 = { - sizeof(struct TravelerDataFrame__content), - offsetof(struct TravelerDataFrame__content, _asn_ctx), - offsetof(struct TravelerDataFrame__content, present), - sizeof(((struct TravelerDataFrame__content *)0)->present), - asn_MAP_content_tag2el_16, - 5, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_content_16 = { - "content", - "content", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_content_constr_16, &asn_PER_type_content_constr_16, CHOICE_constraint }, - asn_MBR_content_16, - 5, /* Elements count */ - &asn_SPC_content_specs_16 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspTimRights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspTimRights" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, frameType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TravelerInfoType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "frameType" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, msgId), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_msgId_4, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgId" - }, - { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, startYear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "startYear" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, startTime), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "startTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, duratonTime), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinutesDuration, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "duratonTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, priority), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SignPrority, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "priority" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspLocationRights), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspLocationRights" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, regions), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regions_12, - 0, - { &asn_OER_memb_regions_constr_12, &asn_PER_memb_regions_constr_12, memb_regions_constraint_1 }, - 0, 0, /* No default value */ - "regions" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspMsgRights1), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspMsgRights1" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspMsgRights2), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSPindex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sspMsgRights2" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, content), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_content_16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "content" - }, - { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, url), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Short, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "url" - }, -}; -static const int asn_MAP_TravelerDataFrame_oms_1[] = { 3, 12 }; -static const ber_tlv_tag_t asn_DEF_TravelerDataFrame_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TravelerDataFrame_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspTimRights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frameType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgId */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startYear */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* startTime */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duratonTime */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* priority */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* sspLocationRights */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* regions */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* sspMsgRights1 */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* sspMsgRights2 */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* content */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* url */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1 = { - sizeof(struct TravelerDataFrame), - offsetof(struct TravelerDataFrame, _asn_ctx), - asn_MAP_TravelerDataFrame_tag2el_1, - 13, /* Count of tags in the map */ - asn_MAP_TravelerDataFrame_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 13, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame = { - "TravelerDataFrame", - "TravelerDataFrame", - &asn_OP_SEQUENCE, - asn_DEF_TravelerDataFrame_tags_1, - sizeof(asn_DEF_TravelerDataFrame_tags_1) - /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ - asn_DEF_TravelerDataFrame_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerDataFrame_tags_1) - /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TravelerDataFrame_1, - 13, /* Elements count */ - &asn_SPC_TravelerDataFrame_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c b/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c deleted file mode 100644 index 82defc500..000000000 --- a/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TravelerDataFrameList.h" - -static asn_oer_constraints_t asn_OER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_TravelerDataFrame, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_TravelerDataFrameList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1 = { - sizeof(struct TravelerDataFrameList), - offsetof(struct TravelerDataFrameList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList = { - "TravelerDataFrameList", - "TravelerDataFrameList", - &asn_OP_SEQUENCE_OF, - asn_DEF_TravelerDataFrameList_tags_1, - sizeof(asn_DEF_TravelerDataFrameList_tags_1) - /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ - asn_DEF_TravelerDataFrameList_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerDataFrameList_tags_1) - /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ - { &asn_OER_type_TravelerDataFrameList_constr_1, &asn_PER_type_TravelerDataFrameList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_TravelerDataFrameList_1, - 1, /* Single element */ - &asn_SPC_TravelerDataFrameList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c b/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c deleted file mode 100644 index e4a7c43df..000000000 --- a/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TravelerInfoType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TravelerInfoType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 8, "advisory" }, - { 2, 11, "roadSignage" }, - { 3, 17, "commercialSignage" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { - 1, /* advisory(1) */ - 3, /* commercialSignage(3) */ - 2, /* roadSignage(2) */ - 0 /* unknown(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { - asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { - "TravelerInfoType", - "TravelerInfoType", - &asn_OP_NativeEnumerated, - asn_DEF_TravelerInfoType_tags_1, - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - asn_DEF_TravelerInfoType_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInfoType_tags_1) - /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ - { &asn_OER_type_TravelerInfoType_constr_1, &asn_PER_type_TravelerInfoType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/TravelerInformation.c b/src/tmx/Asn_J2735/src/r63/TravelerInformation.c deleted file mode 100644 index b932fe2ec..000000000 --- a/src/tmx/Asn_J2735/src/r63/TravelerInformation.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "TravelerInformation.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { - sizeof(struct TravelerInformation__regional), - offsetof(struct TravelerInformation__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_7 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_7, - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ - asn_DEF_regional_tags_7, /* Same as above */ - sizeof(asn_DEF_regional_tags_7) - /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ - { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_regional_7, - 1, /* Single element */ - &asn_SPC_regional_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgCnt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_MsgCount, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "msgCnt" - }, - { ATF_POINTER, 3, offsetof(struct TravelerInformation, timeStamp), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MinuteOfTheYear, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "timeStamp" - }, - { ATF_POINTER, 2, offsetof(struct TravelerInformation, packetID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UniqueMSGID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "packetID" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation, urlB), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_URL_Base, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "urlB" - }, - { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TravelerDataFrameList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dataFrames" - }, - { ATF_POINTER, 1, offsetof(struct TravelerInformation, regional), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - 0, - &asn_DEF_regional_7, - 0, - { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3, 5 }; -static const ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* packetID */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* urlB */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { - sizeof(struct TravelerInformation), - offsetof(struct TravelerInformation, _asn_ctx), - asn_MAP_TravelerInformation_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_TravelerInformation_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { - "TravelerInformation", - "TravelerInformation", - &asn_OP_SEQUENCE, - asn_DEF_TravelerInformation_tags_1, - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - asn_DEF_TravelerInformation_tags_1, /* Same as above */ - sizeof(asn_DEF_TravelerInformation_tags_1) - /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_TravelerInformation_1, - 6, /* Elements count */ - &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/URL-Base.c b/src/tmx/Asn_J2735/src/r63/URL-Base.c deleted file mode 100644 index b77caf6e3..000000000 --- a/src/tmx/Asn_J2735/src/r63/URL-Base.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "URL-Base.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Base_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 45) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_URL_Base_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..45)) */}; -asn_per_constraints_t asn_PER_type_URL_Base_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Base = { - "URL-Base", - "URL-Base", - &asn_OP_IA5String, - asn_DEF_URL_Base_tags_1, - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - asn_DEF_URL_Base_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Base_tags_1) - /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ - { &asn_OER_type_URL_Base_constr_1, &asn_PER_type_URL_Base_constr_1, URL_Base_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/URL-Link.c b/src/tmx/Asn_J2735/src/r63/URL-Link.c deleted file mode 100644 index be37ce1e1..000000000 --- a/src/tmx/Asn_J2735/src/r63/URL-Link.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "URL-Link.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Link_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 255) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_URL_Link_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..255)) */}; -static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Link = { - "URL-Link", - "URL-Link", - &asn_OP_IA5String, - asn_DEF_URL_Link_tags_1, - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - asn_DEF_URL_Link_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Link_tags_1) - /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ - { &asn_OER_type_URL_Link_constr_1, &asn_PER_type_URL_Link_constr_1, URL_Link_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/URL-Short.c b/src/tmx/Asn_J2735/src/r63/URL-Short.c deleted file mode 100644 index bb91dc7e6..000000000 --- a/src/tmx/Asn_J2735/src/r63/URL-Short.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "URL-Short.h" - -static int check_permitted_alphabet_1(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -int -URL_Short_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 15) - && !check_permitted_alphabet_1(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using IA5String, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_URL_Short_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..15)) */}; -asn_per_constraints_t asn_PER_type_URL_Short_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, - 0, 0 /* No PER character map necessary */ -}; -static const ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_URL_Short = { - "URL-Short", - "URL-Short", - &asn_OP_IA5String, - asn_DEF_URL_Short_tags_1, - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - asn_DEF_URL_Short_tags_1, /* Same as above */ - sizeof(asn_DEF_URL_Short_tags_1) - /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ - { &asn_OER_type_URL_Short_constr_1, &asn_PER_type_URL_Short_constr_1, URL_Short_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c b/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c deleted file mode 100644 index 461b91aa6..000000000 --- a/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "UniqueMSGID.h" - -int -UniqueMSGID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 9)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_UniqueMSGID_constr_1 CC_NOTUSED = { - { 0, 0 }, - 9 /* (SIZE(9..9)) */}; -asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { - "UniqueMSGID", - "UniqueMSGID", - &asn_OP_OCTET_STRING, - asn_DEF_UniqueMSGID_tags_1, - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - asn_DEF_UniqueMSGID_tags_1, /* Same as above */ - sizeof(asn_DEF_UniqueMSGID_tags_1) - /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ - { &asn_OER_type_UniqueMSGID_constr_1, &asn_PER_type_UniqueMSGID_constr_1, UniqueMSGID_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c deleted file mode 100644 index c4d96fd8a..000000000 --- a/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "UserSizeAndBehaviour.h" - -int -UserSizeAndBehaviour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { - "UserSizeAndBehaviour", - "UserSizeAndBehaviour", - &asn_OP_BIT_STRING, - asn_DEF_UserSizeAndBehaviour_tags_1, - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ - sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) - /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ - { &asn_OER_type_UserSizeAndBehaviour_constr_1, &asn_PER_type_UserSizeAndBehaviour_constr_1, UserSizeAndBehaviour_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VINstring.c b/src/tmx/Asn_J2735/src/r63/VINstring.c deleted file mode 100644 index 2e30fcc70..000000000 --- a/src/tmx/Asn_J2735/src/r63/VINstring.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VINstring.h" - -int -VINstring_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 17)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VINstring_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..17)) */}; -asn_per_constraints_t asn_PER_type_VINstring_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VINstring = { - "VINstring", - "VINstring", - &asn_OP_OCTET_STRING, - asn_DEF_VINstring_tags_1, - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - asn_DEF_VINstring_tags_1, /* Same as above */ - sizeof(asn_DEF_VINstring_tags_1) - /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ - { &asn_OER_type_VINstring_constr_1, &asn_PER_type_VINstring_constr_1, VINstring_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VType.c b/src/tmx/Asn_J2735/src/r63/VType.c deleted file mode 100644 index 8cb73e011..000000000 --- a/src/tmx/Asn_J2735/src/r63/VType.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_VType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 17 } /* (0..17) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_VType_value2enum_1[] = { - { 0, 10, "pedestrian" }, - { 1, 7, "bicycle" }, - { 2, 11, "micromobile" }, - { 3, 10, "motorcycle" }, - { 4, 13, "passenger-car" }, - { 5, 15, "light-truck-van" }, - { 6, 3, "bus" }, - { 7, 35, "two-axle-six-tire-single-unit-truck" }, - { 8, 28, "three-axle-single-unit-truck" }, - { 9, 35, "four-or-more-axle-single-unit-truck" }, - { 10, 39, "four-or-fewer-axle-single-trailer-truck" }, - { 11, 30, "five-axle-single-trailer-truck" }, - { 12, 37, "six-or-more-axle-single-trailer-truck" }, - { 13, 38, "five-or-fewer-axle-multi-trailer-truck" }, - { 14, 28, "six-axle-multi-trailer-truck" }, - { 15, 38, "seven-or-more-axle-multi-trailer-truck" }, - { 16, 4, "rail" }, - { 17, 12, "unclassified" } -}; -static const unsigned int asn_MAP_VType_enum2value_1[] = { - 1, /* bicycle(1) */ - 6, /* bus(6) */ - 11, /* five-axle-single-trailer-truck(11) */ - 13, /* five-or-fewer-axle-multi-trailer-truck(13) */ - 10, /* four-or-fewer-axle-single-trailer-truck(10) */ - 9, /* four-or-more-axle-single-unit-truck(9) */ - 5, /* light-truck-van(5) */ - 2, /* micromobile(2) */ - 3, /* motorcycle(3) */ - 4, /* passenger-car(4) */ - 0, /* pedestrian(0) */ - 16, /* rail(16) */ - 15, /* seven-or-more-axle-multi-trailer-truck(15) */ - 14, /* six-axle-multi-trailer-truck(14) */ - 12, /* six-or-more-axle-single-trailer-truck(12) */ - 8, /* three-axle-single-unit-truck(8) */ - 7, /* two-axle-six-tire-single-unit-truck(7) */ - 17 /* unclassified(17) */ -}; -const asn_INTEGER_specifics_t asn_SPC_VType_specs_1 = { - asn_MAP_VType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VType_enum2value_1, /* N => "tag"; sorted by N */ - 18, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VType = { - "VType", - "VType", - &asn_OP_NativeEnumerated, - asn_DEF_VType_tags_1, - sizeof(asn_DEF_VType_tags_1) - /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ - asn_DEF_VType_tags_1, /* Same as above */ - sizeof(asn_DEF_VType_tags_1) - /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ - { &asn_OER_type_VType_constr_1, &asn_PER_type_VType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ValidRegion.c b/src/tmx/Asn_J2735/src/r63/ValidRegion.c deleted file mode 100644 index 209a4b294..000000000 --- a/src/tmx/Asn_J2735/src/r63/ValidRegion.c +++ /dev/null @@ -1,139 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ValidRegion.h" - -static asn_oer_constraints_t asn_OER_type_area_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_area_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_area_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ShapePointSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "shapePointSet" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Circle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "circle" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RegionPointSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regionPointSet" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ -}; -static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { - sizeof(struct ValidRegion__area), - offsetof(struct ValidRegion__area, _asn_ctx), - offsetof(struct ValidRegion__area, present), - sizeof(((struct ValidRegion__area *)0)->present), - asn_MAP_area_tag2el_4, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_area_4 = { - "area", - "area", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_area_constr_4, &asn_PER_type_area_constr_4, CHOICE_constraint }, - asn_MBR_area_4, - 3, /* Elements count */ - &asn_SPC_area_specs_4 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_HeadingSlice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "direction" - }, - { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Extent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "extent" - }, - { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_area_4, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "area" - }, -}; -static const int asn_MAP_ValidRegion_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { - sizeof(struct ValidRegion), - offsetof(struct ValidRegion, _asn_ctx), - asn_MAP_ValidRegion_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ValidRegion_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ValidRegion = { - "ValidRegion", - "ValidRegion", - &asn_OP_SEQUENCE, - asn_DEF_ValidRegion_tags_1, - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - asn_DEF_ValidRegion_tags_1, /* Same as above */ - sizeof(asn_DEF_ValidRegion_tags_1) - /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ValidRegion_1, - 3, /* Elements count */ - &asn_SPC_ValidRegion_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleClassification.c b/src/tmx/Asn_J2735/src/r63/VehicleClassification.c deleted file mode 100644 index d622e53ef..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleClassification.c +++ /dev/null @@ -1,211 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleClassification.h" - -static int -memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4)) */}; -static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_regional_10[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { - sizeof(struct VehicleClassification__regional), - offsetof(struct VehicleClassification__regional, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_regional_10 = { - "regional", - "regional", - &asn_OP_SEQUENCE_OF, - asn_DEF_regional_tags_10, - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ - asn_DEF_regional_tags_10, /* Same as above */ - sizeof(asn_DEF_regional_tags_10) - /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ - { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, - asn_MBR_regional_10, - 1, /* Single element */ - &asn_SPC_regional_specs_10 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleClassification_1[] = { - { ATF_POINTER, 9, offsetof(struct VehicleClassification, keyType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleClass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "keyType" - }, - { ATF_POINTER, 8, offsetof(struct VehicleClassification, role), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BasicVehicleRole, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "role" - }, - { ATF_POINTER, 7, offsetof(struct VehicleClassification, iso3883), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Iso3833VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "iso3883" - }, - { ATF_POINTER, 6, offsetof(struct VehicleClassification, hpmsType), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hpmsType" - }, - { ATF_POINTER, 5, offsetof(struct VehicleClassification, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 4, offsetof(struct VehicleClassification, responseEquip), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responseEquip" - }, - { ATF_POINTER, 3, offsetof(struct VehicleClassification, responderType), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "responderType" - }, - { ATF_POINTER, 2, offsetof(struct VehicleClassification, fuelType), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FuelType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "fuelType" - }, - { ATF_POINTER, 1, offsetof(struct VehicleClassification, regional), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - 0, - &asn_DEF_regional_10, - 0, - { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const int asn_MAP_VehicleClassification_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; -static const ber_tlv_tag_t asn_DEF_VehicleClassification_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleClassification_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* role */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iso3883 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hpmsType */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* responseEquip */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* responderType */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* fuelType */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1 = { - sizeof(struct VehicleClassification), - offsetof(struct VehicleClassification, _asn_ctx), - asn_MAP_VehicleClassification_tag2el_1, - 9, /* Count of tags in the map */ - asn_MAP_VehicleClassification_oms_1, /* Optional members */ - 9, 0, /* Root/Additions */ - 9, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleClassification = { - "VehicleClassification", - "VehicleClassification", - &asn_OP_SEQUENCE, - asn_DEF_VehicleClassification_tags_1, - sizeof(asn_DEF_VehicleClassification_tags_1) - /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ - asn_DEF_VehicleClassification_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleClassification_tags_1) - /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleClassification_1, - 9, /* Elements count */ - &asn_SPC_VehicleClassification_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleData.c b/src/tmx/Asn_J2735/src/r63/VehicleData.c deleted file mode 100644 index 757a23b91..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleData.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleData.h" - -asn_TYPE_member_t asn_MBR_VehicleData_1[] = { - { ATF_POINTER, 4, offsetof(struct VehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "height" - }, - { ATF_POINTER, 3, offsetof(struct VehicleData, bumpers), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "bumpers" - }, - { ATF_POINTER, 2, offsetof(struct VehicleData, mass), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_POINTER, 1, offsetof(struct VehicleData, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trailerWeight" - }, -}; -static const int asn_MAP_VehicleData_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_VehicleData_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleData_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* trailerWeight */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1 = { - sizeof(struct VehicleData), - offsetof(struct VehicleData, _asn_ctx), - asn_MAP_VehicleData_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_VehicleData_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleData = { - "VehicleData", - "VehicleData", - &asn_OP_SEQUENCE, - asn_DEF_VehicleData_tags_1, - sizeof(asn_DEF_VehicleData_tags_1) - /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ - asn_DEF_VehicleData_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleData_tags_1) - /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleData_1, - 4, /* Elements count */ - &asn_SPC_VehicleData_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c b/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c deleted file mode 100644 index 3dc5a7898..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleEventFlags.h" - -int -VehicleEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 13)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 13, 13 } /* (SIZE(13..13,...)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleEventFlags_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags = { - "VehicleEventFlags", - "VehicleEventFlags", - &asn_OP_BIT_STRING, - asn_DEF_VehicleEventFlags_tags_1, - sizeof(asn_DEF_VehicleEventFlags_tags_1) - /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ - asn_DEF_VehicleEventFlags_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleEventFlags_tags_1) - /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleEventFlags_constr_1, &asn_PER_type_VehicleEventFlags_constr_1, VehicleEventFlags_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c deleted file mode 100644 index 278e771f7..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "ITIS" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleGroupAffected.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { - { 9217, 12, "all-vehicles" }, - { 9218, 8, "bicycles" }, - { 9219, 11, "motorcycles" }, - { 9220, 4, "cars" }, - { 9221, 14, "light-vehicles" }, - { 9222, 23, "cars-and-light-vehicles" }, - { 9223, 18, "cars-with-trailers" }, - { 9224, 31, "cars-with-recreational-trailers" }, - { 9225, 22, "vehicles-with-trailers" }, - { 9226, 14, "heavy-vehicles" }, - { 9227, 6, "trucks" }, - { 9228, 5, "buses" }, - { 9229, 17, "articulated-buses" }, - { 9230, 12, "school-buses" }, - { 9231, 27, "vehicles-with-semi-trailers" }, - { 9232, 29, "vehicles-with-double-trailers" }, - { 9233, 21, "high-profile-vehicles" }, - { 9234, 13, "wide-vehicles" }, - { 9235, 13, "long-vehicles" }, - { 9236, 15, "hazardous-loads" }, - { 9237, 17, "exceptional-loads" }, - { 9238, 14, "abnormal-loads" }, - { 9239, 7, "convoys" }, - { 9240, 20, "maintenance-vehicles" }, - { 9241, 17, "delivery-vehicles" }, - { 9242, 42, "vehicles-with-even-numbered-license-plates" }, - { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, - { 9244, 29, "vehicles-with-parking-permits" }, - { 9245, 34, "vehicles-with-catalytic-converters" }, - { 9246, 37, "vehicles-without-catalytic-converters" }, - { 9247, 20, "gas-powered-vehicles" }, - { 9248, 23, "diesel-powered-vehicles" }, - { 9249, 12, "lPG-vehicles" }, - { 9250, 16, "military-convoys" }, - { 9251, 17, "military-vehicles" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { - 21, /* abnormal-loads(9238) */ - 0, /* all-vehicles(9217) */ - 12, /* articulated-buses(9229) */ - 1, /* bicycles(9218) */ - 11, /* buses(9228) */ - 3, /* cars(9220) */ - 5, /* cars-and-light-vehicles(9222) */ - 7, /* cars-with-recreational-trailers(9224) */ - 6, /* cars-with-trailers(9223) */ - 22, /* convoys(9239) */ - 24, /* delivery-vehicles(9241) */ - 31, /* diesel-powered-vehicles(9248) */ - 20, /* exceptional-loads(9237) */ - 30, /* gas-powered-vehicles(9247) */ - 19, /* hazardous-loads(9236) */ - 9, /* heavy-vehicles(9226) */ - 16, /* high-profile-vehicles(9233) */ - 32, /* lPG-vehicles(9249) */ - 4, /* light-vehicles(9221) */ - 18, /* long-vehicles(9235) */ - 23, /* maintenance-vehicles(9240) */ - 33, /* military-convoys(9250) */ - 34, /* military-vehicles(9251) */ - 2, /* motorcycles(9219) */ - 13, /* school-buses(9230) */ - 10, /* trucks(9227) */ - 28, /* vehicles-with-catalytic-converters(9245) */ - 15, /* vehicles-with-double-trailers(9232) */ - 25, /* vehicles-with-even-numbered-license-plates(9242) */ - 26, /* vehicles-with-odd-numbered-license-plates(9243) */ - 27, /* vehicles-with-parking-permits(9244) */ - 14, /* vehicles-with-semi-trailers(9231) */ - 8, /* vehicles-with-trailers(9225) */ - 29, /* vehicles-without-catalytic-converters(9246) */ - 17 /* wide-vehicles(9234) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { - asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ - 35, /* Number of elements in the maps */ - 36, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { - "VehicleGroupAffected", - "VehicleGroupAffected", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleGroupAffected_tags_1, - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleGroupAffected_tags_1) - /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleGroupAffected_constr_1, &asn_PER_type_VehicleGroupAffected_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleHeight.c b/src/tmx/Asn_J2735/src/r63/VehicleHeight.c deleted file mode 100644 index 3d97f2572..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleHeight.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleHeight.h" - -int -VehicleHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleHeight_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { - "VehicleHeight", - "VehicleHeight", - &asn_OP_NativeInteger, - asn_DEF_VehicleHeight_tags_1, - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - asn_DEF_VehicleHeight_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleHeight_tags_1) - /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleHeight_constr_1, &asn_PER_type_VehicleHeight_constr_1, VehicleHeight_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleID.c b/src/tmx/Asn_J2735/src/r63/VehicleID.c deleted file mode 100644 index b1c29db8e..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleID.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleID.h" - -static asn_oer_constraints_t asn_OER_type_VehicleID_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_VehicleID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_VehicleID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.entityID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TemporaryID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "entityID" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.stationID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "stationID" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* entityID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* stationID */ -}; -asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1 = { - sizeof(struct VehicleID), - offsetof(struct VehicleID, _asn_ctx), - offsetof(struct VehicleID, present), - sizeof(((struct VehicleID *)0)->present), - asn_MAP_VehicleID_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleID = { - "VehicleID", - "VehicleID", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_VehicleID_constr_1, &asn_PER_type_VehicleID_constr_1, CHOICE_constraint }, - asn_MBR_VehicleID_1, - 2, /* Elements count */ - &asn_SPC_VehicleID_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleIdent.c b/src/tmx/Asn_J2735/src/r63/VehicleIdent.c deleted file mode 100644 index 7bbfd9808..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleIdent.c +++ /dev/null @@ -1,217 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleIdent.h" - -static int check_permitted_alphabet_4(const void *sptr) { - /* The underlying type is IA5String */ - const IA5String_t *st = (const IA5String_t *)sptr; - const uint8_t *ch = st->buf; - const uint8_t *end = ch + st->size; - - for(; ch < end; ch++) { - uint8_t cv = *ch; - if(!(cv <= 127)) return -1; - } - return 0; -} - -static int -memb_ownerCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const IA5String_t *st = (const IA5String_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size >= 1 && size <= 32) - && !check_permitted_alphabet_4(st)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_vehicleClass_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ownerCode_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER character map necessary */ -}; -static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResponderGroupAffected, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rGroup" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IncidentResponseEquipment, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rEquip" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ -}; -static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { - sizeof(struct VehicleIdent__vehicleClass), - offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), - offsetof(struct VehicleIdent__vehicleClass, present), - sizeof(((struct VehicleIdent__vehicleClass *)0)->present), - asn_MAP_vehicleClass_tag2el_7, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { - "vehicleClass", - "vehicleClass", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_vehicleClass_constr_7, &asn_PER_type_vehicleClass_constr_7, CHOICE_constraint }, - asn_MBR_vehicleClass_7, - 3, /* Elements count */ - &asn_SPC_vehicleClass_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { - { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DescriptiveName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "name" - }, - { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VINstring, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vin" - }, - { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_IA5String, - 0, - { &asn_OER_memb_ownerCode_constr_4, &asn_PER_memb_ownerCode_constr_4, memb_ownerCode_constraint_1 }, - 0, 0, /* No default value */ - "ownerCode" - }, - { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_VehicleID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id" - }, - { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleType" - }, - { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_vehicleClass_7, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleClass" - }, -}; -static const int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { - sizeof(struct VehicleIdent), - offsetof(struct VehicleIdent, _asn_ctx), - asn_MAP_VehicleIdent_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_VehicleIdent_oms_1, /* Optional members */ - 6, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { - "VehicleIdent", - "VehicleIdent", - &asn_OP_SEQUENCE, - asn_DEF_VehicleIdent_tags_1, - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - asn_DEF_VehicleIdent_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleIdent_tags_1) - /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleIdent_1, - 6, /* Elements count */ - &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleLength.c b/src/tmx/Asn_J2735/src/r63/VehicleLength.c deleted file mode 100644 index e57503d11..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleLength.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleLength.h" - -int -VehicleLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 4095)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleLength_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..4095) */, - -1}; -asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleLength = { - "VehicleLength", - "VehicleLength", - &asn_OP_NativeInteger, - asn_DEF_VehicleLength_tags_1, - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - asn_DEF_VehicleLength_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleLength_tags_1) - /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleLength_constr_1, &asn_PER_type_VehicleLength_constr_1, VehicleLength_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleMass.c b/src/tmx/Asn_J2735/src/r63/VehicleMass.c deleted file mode 100644 index 363f49d48..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleMass.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleMass.h" - -int -VehicleMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleMass_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, - -1}; -asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleMass = { - "VehicleMass", - "VehicleMass", - &asn_OP_NativeInteger, - asn_DEF_VehicleMass_tags_1, - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - asn_DEF_VehicleMass_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleMass_tags_1) - /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleMass_constr_1, &asn_PER_type_VehicleMass_constr_1, VehicleMass_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c b/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c deleted file mode 100644 index b163323e7..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted` - */ - -#include "VehicleSafetyExtensions.h" - -asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[] = { - { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtensions, events), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleEventFlags, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "events" - }, - { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtensions, pathHistory), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathHistory, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathHistory" - }, - { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtensions, pathPrediction), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PathPrediction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pathPrediction" - }, - { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtensions, lights), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lights" - }, -}; -static const int asn_MAP_VehicleSafetyExtensions_oms_1[] = { 0, 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_VehicleSafetyExtensions_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtensions_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* lights */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1 = { - sizeof(struct VehicleSafetyExtensions), - offsetof(struct VehicleSafetyExtensions, _asn_ctx), - asn_MAP_VehicleSafetyExtensions_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_VehicleSafetyExtensions_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions = { - "VehicleSafetyExtensions", - "VehicleSafetyExtensions", - &asn_OP_SEQUENCE, - asn_DEF_VehicleSafetyExtensions_tags_1, - sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ - asn_DEF_VehicleSafetyExtensions_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) - /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleSafetyExtensions_1, - 4, /* Elements count */ - &asn_SPC_VehicleSafetyExtensions_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSize.c b/src/tmx/Asn_J2735/src/r63/VehicleSize.c deleted file mode 100644 index a18ed6eba..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleSize.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleSize.h" - -asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleWidth, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "width" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleLength, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "length" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { - sizeof(struct VehicleSize), - offsetof(struct VehicleSize, _asn_ctx), - asn_MAP_VehicleSize_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSize = { - "VehicleSize", - "VehicleSize", - &asn_OP_SEQUENCE, - asn_DEF_VehicleSize_tags_1, - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - asn_DEF_VehicleSize_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSize_tags_1) - /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleSize_1, - 2, /* Elements count */ - &asn_SPC_VehicleSize_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c b/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c deleted file mode 100644 index 1e1b5b372..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "VehicleSizeConfidence.h" - -asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleWidthConfidence), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleWidthConfidence" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleLengthConfidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleLengthConfidence" - }, - { ATF_POINTER, 1, offsetof(struct VehicleSizeConfidence, vehicleHeightConfidence), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SizeValueConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleHeightConfidence" - }, -}; -static const int asn_MAP_VehicleSizeConfidence_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_VehicleSizeConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleSizeConfidence_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleWidthConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehicleLengthConfidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* vehicleHeightConfidence */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1 = { - sizeof(struct VehicleSizeConfidence), - offsetof(struct VehicleSizeConfidence, _asn_ctx), - asn_MAP_VehicleSizeConfidence_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_VehicleSizeConfidence_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence = { - "VehicleSizeConfidence", - "VehicleSizeConfidence", - &asn_OP_SEQUENCE, - asn_DEF_VehicleSizeConfidence_tags_1, - sizeof(asn_DEF_VehicleSizeConfidence_tags_1) - /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ - asn_DEF_VehicleSizeConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleSizeConfidence_tags_1) - /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleSizeConfidence_1, - 3, /* Elements count */ - &asn_SPC_VehicleSizeConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatus.c b/src/tmx/Asn_J2735/src/r63/VehicleStatus.c deleted file mode 100644 index 91a761b8e..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleStatus.c +++ /dev/null @@ -1,653 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleStatus.h" - -static asn_TYPE_member_t asn_MBR_steering_12[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "angle" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidence" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SteeringWheelAngleRateOfChange, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rate" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DrivingWheelAngle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wheels" - }, -}; -static const int asn_MAP_steering_oms_12[] = { 1, 2, 3 }; -static const ber_tlv_tag_t asn_DEF_steering_tags_12[] = { - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_steering_tag2el_12[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_12 = { - sizeof(struct VehicleStatus__steering), - offsetof(struct VehicleStatus__steering, _asn_ctx), - asn_MAP_steering_tag2el_12, - 4, /* Count of tags in the map */ - asn_MAP_steering_oms_12, /* Optional members */ - 3, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_steering_12 = { - "steering", - "steering", - &asn_OP_SEQUENCE, - asn_DEF_steering_tags_12, - sizeof(asn_DEF_steering_tags_12) - /sizeof(asn_DEF_steering_tags_12[0]) - 1, /* 1 */ - asn_DEF_steering_tags_12, /* Same as above */ - sizeof(asn_DEF_steering_tags_12) - /sizeof(asn_DEF_steering_tags_12[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_steering_12, - 4, /* Elements count */ - &asn_SPC_steering_specs_12 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_accelSets_17[] = { - { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationSet4Way, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accel4way" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VerticalAccelerationThreshold, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vertAccelThres" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_YawRateConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "yawRateCon" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AccelerationConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "hozAccelCon" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ConfidenceSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "confidenceSet" - }, -}; -static const int asn_MAP_accelSets_oms_17[] = { 0, 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_accelSets_tags_17[] = { - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_17[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_17 = { - sizeof(struct VehicleStatus__accelSets), - offsetof(struct VehicleStatus__accelSets, _asn_ctx), - asn_MAP_accelSets_tag2el_17, - 5, /* Count of tags in the map */ - asn_MAP_accelSets_oms_17, /* Optional members */ - 5, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_accelSets_17 = { - "accelSets", - "accelSets", - &asn_OP_SEQUENCE, - asn_DEF_accelSets_tags_17, - sizeof(asn_DEF_accelSets_tags_17) - /sizeof(asn_DEF_accelSets_tags_17[0]) - 1, /* 1 */ - asn_DEF_accelSets_tags_17, /* Same as above */ - sizeof(asn_DEF_accelSets_tags_17) - /sizeof(asn_DEF_accelSets_tags_17[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_accelSets_17, - 5, /* Elements count */ - &asn_SPC_accelSets_specs_17 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_object_23[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ObstacleDistance, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obDist" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Angle, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "obDirect" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DDateTime, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dateTime" - }, -}; -static const ber_tlv_tag_t asn_DEF_object_tags_23[] = { - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_object_tag2el_23[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_object_specs_23 = { - sizeof(struct VehicleStatus__object), - offsetof(struct VehicleStatus__object, _asn_ctx), - asn_MAP_object_tag2el_23, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_object_23 = { - "object", - "object", - &asn_OP_SEQUENCE, - asn_DEF_object_tags_23, - sizeof(asn_DEF_object_tags_23) - /sizeof(asn_DEF_object_tags_23[0]) - 1, /* 1 */ - asn_DEF_object_tags_23, /* Same as above */ - sizeof(asn_DEF_object_tags_23) - /sizeof(asn_DEF_object_tags_23[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_object_23, - 3, /* Elements count */ - &asn_SPC_object_specs_23 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_vehicleData_31[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleHeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "height" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BumperHeights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "bumpers" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleMass, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "mass" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TrailerWeight, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "trailerWeight" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "type" - }, -}; -static const ber_tlv_tag_t asn_DEF_vehicleData_tags_31[] = { - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_31[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_31 = { - sizeof(struct VehicleStatus__vehicleData), - offsetof(struct VehicleStatus__vehicleData, _asn_ctx), - asn_MAP_vehicleData_tag2el_31, - 5, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_vehicleData_31 = { - "vehicleData", - "vehicleData", - &asn_OP_SEQUENCE, - asn_DEF_vehicleData_tags_31, - sizeof(asn_DEF_vehicleData_tags_31) - /sizeof(asn_DEF_vehicleData_tags_31[0]) - 1, /* 1 */ - asn_DEF_vehicleData_tags_31, /* Same as above */ - sizeof(asn_DEF_vehicleData_tags_31) - /sizeof(asn_DEF_vehicleData_tags_31[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_vehicleData_31, - 5, /* Elements count */ - &asn_SPC_vehicleData_specs_31 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_weatherReport_39[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipYesNo, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "isRaining" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rainRate" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipSituation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "precipSituation" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssSolarRadiation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "solarRadiation" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssMobileFriction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "friction" - }, -}; -static const int asn_MAP_weatherReport_oms_39[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_weatherReport_tags_39[] = { - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_39[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_39 = { - sizeof(struct VehicleStatus__weatherReport), - offsetof(struct VehicleStatus__weatherReport, _asn_ctx), - asn_MAP_weatherReport_tag2el_39, - 5, /* Count of tags in the map */ - asn_MAP_weatherReport_oms_39, /* Optional members */ - 4, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_weatherReport_39 = { - "weatherReport", - "weatherReport", - &asn_OP_SEQUENCE, - asn_DEF_weatherReport_tags_39, - sizeof(asn_DEF_weatherReport_tags_39) - /sizeof(asn_DEF_weatherReport_tags_39[0]) - 1, /* 1 */ - asn_DEF_weatherReport_tags_39, /* Same as above */ - sizeof(asn_DEF_weatherReport_tags_39) - /sizeof(asn_DEF_weatherReport_tags_39[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_weatherReport_39, - 5, /* Elements count */ - &asn_SPC_weatherReport_specs_39 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { - { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ExteriorLights, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lights" - }, - { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LightbarInUse, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "lightBar" - }, - { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "wipers" - }, - { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeSystemStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "brakeStatus" - }, - { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BrakeAppliedPressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "brakePressure" - }, - { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoefficientOfFriction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roadFriction" - }, - { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SunSensor, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sunData" - }, - { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RainSensor, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rainData" - }, - { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), - (ASN_TAG_CLASS_CONTEXT | (8 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirTemperature, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "airTemp" - }, - { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), - (ASN_TAG_CLASS_CONTEXT | (9 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirPressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "airPres" - }, - { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), - (ASN_TAG_CLASS_CONTEXT | (10 << 2)), - 0, - &asn_DEF_steering_12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "steering" - }, - { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), - (ASN_TAG_CLASS_CONTEXT | (11 << 2)), - 0, - &asn_DEF_accelSets_17, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "accelSets" - }, - { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), - (ASN_TAG_CLASS_CONTEXT | (12 << 2)), - 0, - &asn_DEF_object_23, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "object" - }, - { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), - (ASN_TAG_CLASS_CONTEXT | (13 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FullPositionVector, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "fullPos" - }, - { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), - (ASN_TAG_CLASS_CONTEXT | (14 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ThrottlePosition, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "throttlePos" - }, - { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), - (ASN_TAG_CLASS_CONTEXT | (15 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedandHeadingandThrottleConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedHeadC" - }, - { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), - (ASN_TAG_CLASS_CONTEXT | (16 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SpeedConfidence, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "speedC" - }, - { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), - (ASN_TAG_CLASS_CONTEXT | (17 << 2)), - 0, - &asn_DEF_vehicleData_31, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleData" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), - (ASN_TAG_CLASS_CONTEXT | (18 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleIdent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "vehicleIdent" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), - (ASN_TAG_CLASS_CONTEXT | (19 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_J1939data, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "j1939data" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), - (ASN_TAG_CLASS_CONTEXT | (20 << 2)), - 0, - &asn_DEF_weatherReport_39, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "weatherReport" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatus, gnssStatus), - (ASN_TAG_CLASS_CONTEXT | (21 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNSSstatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gnssStatus" - }, -}; -static const int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; -static const ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ - { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ - { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ - { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ - { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ - { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ - { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ - { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ - { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ - { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ - { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ - { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ - { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ - { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ - { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gnssStatus */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { - sizeof(struct VehicleStatus), - offsetof(struct VehicleStatus, _asn_ctx), - asn_MAP_VehicleStatus_tag2el_1, - 22, /* Count of tags in the map */ - asn_MAP_VehicleStatus_oms_1, /* Optional members */ - 22, 0, /* Root/Additions */ - 22, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { - "VehicleStatus", - "VehicleStatus", - &asn_OP_SEQUENCE, - asn_DEF_VehicleStatus_tags_1, - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatus_tags_1) - /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleStatus_1, - 22, /* Elements count */ - &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c deleted file mode 100644 index 4cc84a1b1..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleStatusDeviceTypeTag.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { - { 0, 7, "unknown" }, - { 1, 6, "lights" }, - { 2, 6, "wipers" }, - { 3, 6, "brakes" }, - { 4, 4, "stab" }, - { 5, 4, "trac" }, - { 6, 3, "abs" }, - { 7, 4, "sunS" }, - { 8, 5, "rainS" }, - { 9, 7, "airTemp" }, - { 10, 8, "steering" }, - { 11, 14, "vertAccelThres" }, - { 12, 9, "vertAccel" }, - { 13, 12, "hozAccelLong" }, - { 14, 11, "hozAccelLat" }, - { 15, 11, "hozAccelCon" }, - { 16, 9, "accel4way" }, - { 17, 13, "confidenceSet" }, - { 18, 6, "obDist" }, - { 19, 8, "obDirect" }, - { 20, 3, "yaw" }, - { 21, 10, "yawRateCon" }, - { 22, 8, "dateTime" }, - { 23, 7, "fullPos" }, - { 24, 10, "position2D" }, - { 25, 10, "position3D" }, - { 26, 7, "vehicle" }, - { 27, 10, "speedHeadC" }, - { 28, 6, "speedC" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { - 6, /* abs(6) */ - 16, /* accel4way(16) */ - 9, /* airTemp(9) */ - 3, /* brakes(3) */ - 17, /* confidenceSet(17) */ - 22, /* dateTime(22) */ - 23, /* fullPos(23) */ - 15, /* hozAccelCon(15) */ - 14, /* hozAccelLat(14) */ - 13, /* hozAccelLong(13) */ - 1, /* lights(1) */ - 19, /* obDirect(19) */ - 18, /* obDist(18) */ - 24, /* position2D(24) */ - 25, /* position3D(25) */ - 8, /* rainS(8) */ - 28, /* speedC(28) */ - 27, /* speedHeadC(27) */ - 4, /* stab(4) */ - 10, /* steering(10) */ - 7, /* sunS(7) */ - 5, /* trac(5) */ - 0, /* unknown(0) */ - 26, /* vehicle(26) */ - 12, /* vertAccel(12) */ - 11, /* vertAccelThres(11) */ - 2, /* wipers(2) */ - 20, /* yaw(20) */ - 21 /* yawRateCon(21) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { - asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ - 29, /* Number of elements in the maps */ - 30, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { - "VehicleStatusDeviceTypeTag", - "VehicleStatusDeviceTypeTag", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) - /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleStatusDeviceTypeTag_constr_1, &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c deleted file mode 100644 index 1a4636352..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleStatusRequest.h" - -static int -memb_subType_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnLessThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sendOnMoreThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_subType_constr_3 CC_NOTUSED = { - { 1, 1 } /* (1..15) */, - -1}; -static asn_per_constraints_t asn_PER_memb_subType_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VehicleStatusDeviceTypeTag, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "dataType" - }, - { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_subType_constr_3, &asn_PER_memb_subType_constr_3, memb_subType_constraint_1 }, - 0, 0, /* No default value */ - "subType" - }, - { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_sendOnLessThenValue_constr_4, &asn_PER_memb_sendOnLessThenValue_constr_4, memb_sendOnLessThenValue_constraint_1 }, - 0, 0, /* No default value */ - "sendOnLessThenValue" - }, - { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_sendOnMoreThenValue_constr_5, &asn_PER_memb_sendOnMoreThenValue_constr_5, memb_sendOnMoreThenValue_constraint_1 }, - 0, 0, /* No default value */ - "sendOnMoreThenValue" - }, - { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sendAll" - }, -}; -static const int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; -static const ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { - sizeof(struct VehicleStatusRequest), - offsetof(struct VehicleStatusRequest, _asn_ctx), - asn_MAP_VehicleStatusRequest_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ - 4, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { - "VehicleStatusRequest", - "VehicleStatusRequest", - &asn_OP_SEQUENCE, - asn_DEF_VehicleStatusRequest_tags_1, - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusRequest_tags_1) - /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleStatusRequest_1, - 5, /* Elements count */ - &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c deleted file mode 100644 index 63842b0be..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleStatusRequestList.h" - -static asn_oer_constraints_t asn_OER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleStatusRequest, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleStatusRequestList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1 = { - sizeof(struct VehicleStatusRequestList), - offsetof(struct VehicleStatusRequestList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList = { - "VehicleStatusRequestList", - "VehicleStatusRequestList", - &asn_OP_SEQUENCE_OF, - asn_DEF_VehicleStatusRequestList_tags_1, - sizeof(asn_DEF_VehicleStatusRequestList_tags_1) - /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ - asn_DEF_VehicleStatusRequestList_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleStatusRequestList_tags_1) - /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleStatusRequestList_constr_1, &asn_PER_type_VehicleStatusRequestList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_VehicleStatusRequestList_1, - 1, /* Single element */ - &asn_SPC_VehicleStatusRequestList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c deleted file mode 100644 index 6be585dd2..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleToLanePosition.h" - -asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_StationID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "stationID" - }, - { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_LaneID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "laneID" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { - sizeof(struct VehicleToLanePosition), - offsetof(struct VehicleToLanePosition, _asn_ctx), - asn_MAP_VehicleToLanePosition_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { - "VehicleToLanePosition", - "VehicleToLanePosition", - &asn_OP_SEQUENCE, - asn_DEF_VehicleToLanePosition_tags_1, - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePosition_tags_1) - /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_VehicleToLanePosition_1, - 2, /* Elements count */ - &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c deleted file mode 100644 index 04344c123..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleToLanePositionList.h" - -static asn_oer_constraints_t asn_OER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..5)) */}; -asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_VehicleToLanePosition, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { - sizeof(struct VehicleToLanePositionList), - offsetof(struct VehicleToLanePositionList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { - "VehicleToLanePositionList", - "VehicleToLanePositionList", - &asn_OP_SEQUENCE_OF, - asn_DEF_VehicleToLanePositionList_tags_1, - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleToLanePositionList_tags_1) - /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleToLanePositionList_constr_1, &asn_PER_type_VehicleToLanePositionList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_VehicleToLanePositionList_1, - 1, /* Single element */ - &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleType.c b/src/tmx/Asn_J2735/src/r63/VehicleType.c deleted file mode 100644 index 986a17b13..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleType.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleType.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_VehicleType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { - { 0, 4, "none" }, - { 1, 7, "unknown" }, - { 2, 7, "special" }, - { 3, 4, "moto" }, - { 4, 3, "car" }, - { 5, 8, "carOther" }, - { 6, 3, "bus" }, - { 7, 8, "axleCnt2" }, - { 8, 8, "axleCnt3" }, - { 9, 8, "axleCnt4" }, - { 10, 15, "axleCnt4Trailer" }, - { 11, 15, "axleCnt5Trailer" }, - { 12, 15, "axleCnt6Trailer" }, - { 13, 20, "axleCnt5MultiTrailer" }, - { 14, 20, "axleCnt6MultiTrailer" }, - { 15, 20, "axleCnt7MultiTrailer" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_VehicleType_enum2value_1[] = { - 7, /* axleCnt2(7) */ - 8, /* axleCnt3(8) */ - 9, /* axleCnt4(9) */ - 10, /* axleCnt4Trailer(10) */ - 13, /* axleCnt5MultiTrailer(13) */ - 11, /* axleCnt5Trailer(11) */ - 14, /* axleCnt6MultiTrailer(14) */ - 12, /* axleCnt6Trailer(12) */ - 15, /* axleCnt7MultiTrailer(15) */ - 6, /* bus(6) */ - 4, /* car(4) */ - 5, /* carOther(5) */ - 3, /* moto(3) */ - 0, /* none(0) */ - 2, /* special(2) */ - 1 /* unknown(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { - asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ - 16, /* Number of elements in the maps */ - 17, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleType = { - "VehicleType", - "VehicleType", - &asn_OP_NativeEnumerated, - asn_DEF_VehicleType_tags_1, - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - asn_DEF_VehicleType_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleType_tags_1) - /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleType_constr_1, &asn_PER_type_VehicleType_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_VehicleType_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VehicleWidth.c b/src/tmx/Asn_J2735/src/r63/VehicleWidth.c deleted file mode 100644 index f8f71f4fc..000000000 --- a/src/tmx/Asn_J2735/src/r63/VehicleWidth.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VehicleWidth.h" - -int -VehicleWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VehicleWidth_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { - "VehicleWidth", - "VehicleWidth", - &asn_OP_NativeInteger, - asn_DEF_VehicleWidth_tags_1, - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - asn_DEF_VehicleWidth_tags_1, /* Same as above */ - sizeof(asn_DEF_VehicleWidth_tags_1) - /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ - { &asn_OER_type_VehicleWidth_constr_1, &asn_PER_type_VehicleWidth_constr_1, VehicleWidth_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Velocity.c b/src/tmx/Asn_J2735/src/r63/Velocity.c deleted file mode 100644 index b5ccc6094..000000000 --- a/src/tmx/Asn_J2735/src/r63/Velocity.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Velocity.h" - -int -Velocity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 8191)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Velocity_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..8191) */, - -1}; -asn_per_constraints_t asn_PER_type_Velocity_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Velocity = { - "Velocity", - "Velocity", - &asn_OP_NativeInteger, - asn_DEF_Velocity_tags_1, - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - asn_DEF_Velocity_tags_1, /* Same as above */ - sizeof(asn_DEF_Velocity_tags_1) - /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ - { &asn_OER_type_Velocity_constr_1, &asn_PER_type_Velocity_constr_1, Velocity_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c deleted file mode 100644 index 4bc6a14d7..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B07.h" - -int -VertOffset_B07_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -64 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B07_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-64..63) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, -64, 63 } /* (-64..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B07_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B07 = { - "VertOffset-B07", - "VertOffset-B07", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B07_tags_1, - sizeof(asn_DEF_VertOffset_B07_tags_1) - /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B07_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B07_tags_1) - /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B07_constr_1, &asn_PER_type_VertOffset_B07_constr_1, VertOffset_B07_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c deleted file mode 100644 index edefc36b8..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B08.h" - -int -VertOffset_B08_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -128 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B08_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-128..127) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B08_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B08 = { - "VertOffset-B08", - "VertOffset-B08", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B08_tags_1, - sizeof(asn_DEF_VertOffset_B08_tags_1) - /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B08_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B08_tags_1) - /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B08_constr_1, &asn_PER_type_VertOffset_B08_constr_1, VertOffset_B08_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c deleted file mode 100644 index 4ede635e3..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B09.h" - -int -VertOffset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -256 && value <= 255)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B09_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-256..255) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B09_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B09 = { - "VertOffset-B09", - "VertOffset-B09", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B09_tags_1, - sizeof(asn_DEF_VertOffset_B09_tags_1) - /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B09_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B09_tags_1) - /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B09_constr_1, &asn_PER_type_VertOffset_B09_constr_1, VertOffset_B09_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c deleted file mode 100644 index bda947a36..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B10.h" - -int -VertOffset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -512 && value <= 511)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B10_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-512..511) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B10_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B10 = { - "VertOffset-B10", - "VertOffset-B10", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B10_tags_1, - sizeof(asn_DEF_VertOffset_B10_tags_1) - /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B10_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B10_tags_1) - /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B10_constr_1, &asn_PER_type_VertOffset_B10_constr_1, VertOffset_B10_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c deleted file mode 100644 index 74a79f9bf..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B11.h" - -int -VertOffset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -1024 && value <= 1023)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B11_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-1024..1023) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B11_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B11 = { - "VertOffset-B11", - "VertOffset-B11", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B11_tags_1, - sizeof(asn_DEF_VertOffset_B11_tags_1) - /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B11_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B11_tags_1) - /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B11_constr_1, &asn_PER_type_VertOffset_B11_constr_1, VertOffset_B11_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c deleted file mode 100644 index 6c54a03e7..000000000 --- a/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VertOffset-B12.h" - -int -VertOffset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -2048 && value <= 2047)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VertOffset_B12_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-2048..2047) */, - -1}; -asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VertOffset_B12_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VertOffset_B12 = { - "VertOffset-B12", - "VertOffset-B12", - &asn_OP_NativeInteger, - asn_DEF_VertOffset_B12_tags_1, - sizeof(asn_DEF_VertOffset_B12_tags_1) - /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ - asn_DEF_VertOffset_B12_tags_1, /* Same as above */ - sizeof(asn_DEF_VertOffset_B12_tags_1) - /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ - { &asn_OER_type_VertOffset_B12_constr_1, &asn_PER_type_VertOffset_B12_constr_1, VertOffset_B12_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c deleted file mode 100644 index e34e54570..000000000 --- a/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VerticalAcceleration.h" - -int -VerticalAcceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -127 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { - { 1, 0 } /* (-127..127) */, - -1}; -asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { - "VerticalAcceleration", - "VerticalAcceleration", - &asn_OP_NativeInteger, - asn_DEF_VerticalAcceleration_tags_1, - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAcceleration_tags_1) - /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ - { &asn_OER_type_VerticalAcceleration_constr_1, &asn_PER_type_VerticalAcceleration_constr_1, VerticalAcceleration_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c deleted file mode 100644 index 0ba4fb8cd..000000000 --- a/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VerticalAccelerationThreshold.h" - -int -VerticalAccelerationThreshold_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(st->size > 0) { - /* Size in bits */ - size = 8 * st->size - (st->bits_unused & 0x07); - } else { - size = 0; - } - - if((size == 5)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using BIT_STRING, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { - { 0, 0 }, - 5 /* (SIZE(5..5)) */}; -asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { - "VerticalAccelerationThreshold", - "VerticalAccelerationThreshold", - &asn_OP_BIT_STRING, - asn_DEF_VerticalAccelerationThreshold_tags_1, - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ - sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) - /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ - { &asn_OER_type_VerticalAccelerationThreshold_constr_1, &asn_PER_type_VerticalAccelerationThreshold_constr_1, VerticalAccelerationThreshold_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_BIT_STRING_specs /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/VerticalOffset.c b/src/tmx/Asn_J2735/src/r63/VerticalOffset.c deleted file mode 100644 index 439c9d1ee..000000000 --- a/src/tmx/Asn_J2735/src/r63/VerticalOffset.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "VerticalOffset.h" - -static asn_oer_constraints_t asn_OER_type_VerticalOffset_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_VerticalOffset_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_VerticalOffset_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B07, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset1" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset2), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B08, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset2" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset3), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B09, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset3" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset4), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B10, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset4" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset5), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B11, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset5" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset6), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_VertOffset_B12, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "offset6" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.elevation), - (ASN_TAG_CLASS_CONTEXT | (6 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_DSRC_Elevation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "elevation" - }, - { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.regional), - (ASN_TAG_CLASS_CONTEXT | (7 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_Reg_BasicSafetyMessage, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "regional" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_VerticalOffset_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset1 */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offset2 */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offset3 */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* offset4 */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* offset5 */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* offset6 */ - { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elevation */ - { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ -}; -static asn_CHOICE_specifics_t asn_SPC_VerticalOffset_specs_1 = { - sizeof(struct VerticalOffset), - offsetof(struct VerticalOffset, _asn_ctx), - offsetof(struct VerticalOffset, present), - sizeof(((struct VerticalOffset *)0)->present), - asn_MAP_VerticalOffset_tag2el_1, - 8, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_VerticalOffset = { - "VerticalOffset", - "VerticalOffset", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_VerticalOffset_constr_1, &asn_PER_type_VerticalOffset_constr_1, CHOICE_constraint }, - asn_MBR_VerticalOffset_1, - 8, /* Elements count */ - &asn_SPC_VerticalOffset_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c b/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c deleted file mode 100644 index 547a338eb..000000000 --- a/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WaitOnStopline.h" - -/* - * This type is implemented using BOOLEAN, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { - "WaitOnStopline", - "WaitOnStopline", - &asn_OP_BOOLEAN, - asn_DEF_WaitOnStopline_tags_1, - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - asn_DEF_WaitOnStopline_tags_1, /* Same as above */ - sizeof(asn_DEF_WaitOnStopline_tags_1) - /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ - { 0, 0, BOOLEAN_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WeatherProbe.c b/src/tmx/Asn_J2735/src/r63/WeatherProbe.c deleted file mode 100644 index 386f96725..000000000 --- a/src/tmx/Asn_J2735/src/r63/WeatherProbe.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WeatherProbe.h" - -asn_TYPE_member_t asn_MBR_WeatherProbe_1[] = { - { ATF_POINTER, 3, offsetof(struct WeatherProbe, airTemp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirTemperature, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "airTemp" - }, - { ATF_POINTER, 2, offsetof(struct WeatherProbe, airPressure), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_AmbientAirPressure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "airPressure" - }, - { ATF_POINTER, 1, offsetof(struct WeatherProbe, rainRates), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperSet, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rainRates" - }, -}; -static const int asn_MAP_WeatherProbe_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_WeatherProbe_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WeatherProbe_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* airTemp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* airPressure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rainRates */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1 = { - sizeof(struct WeatherProbe), - offsetof(struct WeatherProbe, _asn_ctx), - asn_MAP_WeatherProbe_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_WeatherProbe_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WeatherProbe = { - "WeatherProbe", - "WeatherProbe", - &asn_OP_SEQUENCE, - asn_DEF_WeatherProbe_tags_1, - sizeof(asn_DEF_WeatherProbe_tags_1) - /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ - asn_DEF_WeatherProbe_tags_1, /* Same as above */ - sizeof(asn_DEF_WeatherProbe_tags_1) - /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_WeatherProbe_1, - 3, /* Elements count */ - &asn_SPC_WeatherProbe_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WeatherReport.c b/src/tmx/Asn_J2735/src/r63/WeatherReport.c deleted file mode 100644 index e740e4654..000000000 --- a/src/tmx/Asn_J2735/src/r63/WeatherReport.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WeatherReport.h" - -asn_TYPE_member_t asn_MBR_WeatherReport_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct WeatherReport, isRaining), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipYesNo, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "isRaining" - }, - { ATF_POINTER, 5, offsetof(struct WeatherReport, rainRate), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rainRate" - }, - { ATF_POINTER, 4, offsetof(struct WeatherReport, precipSituation), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssPrecipSituation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "precipSituation" - }, - { ATF_POINTER, 3, offsetof(struct WeatherReport, solarRadiation), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssSolarRadiation, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "solarRadiation" - }, - { ATF_POINTER, 2, offsetof(struct WeatherReport, friction), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EssMobileFriction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "friction" - }, - { ATF_POINTER, 1, offsetof(struct WeatherReport, roadFriction), - (ASN_TAG_CLASS_CONTEXT | (5 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CoefficientOfFriction, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "roadFriction" - }, -}; -static const int asn_MAP_WeatherReport_oms_1[] = { 1, 2, 3, 4, 5 }; -static const ber_tlv_tag_t asn_DEF_WeatherReport_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WeatherReport_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* friction */ - { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* roadFriction */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1 = { - sizeof(struct WeatherReport), - offsetof(struct WeatherReport, _asn_ctx), - asn_MAP_WeatherReport_tag2el_1, - 6, /* Count of tags in the map */ - asn_MAP_WeatherReport_oms_1, /* Optional members */ - 5, 0, /* Root/Additions */ - 6, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WeatherReport = { - "WeatherReport", - "WeatherReport", - &asn_OP_SEQUENCE, - asn_DEF_WeatherReport_tags_1, - sizeof(asn_DEF_WeatherReport_tags_1) - /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ - asn_DEF_WeatherReport_tags_1, /* Same as above */ - sizeof(asn_DEF_WeatherReport_tags_1) - /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_WeatherReport_1, - 6, /* Elements count */ - &asn_SPC_WeatherReport_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c deleted file mode 100644 index 8f9d94a52..000000000 --- a/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WheelEndElectFault.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_WheelEndElectFault_value2enum_1[] = { - { 0, 4, "isOk" }, - { 1, 12, "isNotDefined" }, - { 2, 7, "isError" }, - { 3, 14, "isNotSupported" } -}; -static const unsigned int asn_MAP_WheelEndElectFault_enum2value_1[] = { - 2, /* isError(2) */ - 1, /* isNotDefined(1) */ - 3, /* isNotSupported(3) */ - 0 /* isOk(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1 = { - asn_MAP_WheelEndElectFault_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WheelEndElectFault_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { - "WheelEndElectFault", - "WheelEndElectFault", - &asn_OP_NativeEnumerated, - asn_DEF_WheelEndElectFault_tags_1, - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelEndElectFault_tags_1) - /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ - { &asn_OER_type_WheelEndElectFault_constr_1, &asn_PER_type_WheelEndElectFault_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WheelEndElectFault_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c deleted file mode 100644 index 372643303..000000000 --- a/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WheelSensorStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { - { 0, 3, "off" }, - { 1, 2, "on" }, - { 2, 10, "notDefined" }, - { 3, 12, "notSupported" } -}; -static const unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { - 2, /* notDefined(2) */ - 3, /* notSupported(3) */ - 0, /* off(0) */ - 1 /* on(1) */ -}; -const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { - asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { - "WheelSensorStatus", - "WheelSensorStatus", - &asn_OP_NativeEnumerated, - asn_DEF_WheelSensorStatus_tags_1, - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WheelSensorStatus_tags_1) - /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_WheelSensorStatus_constr_1, &asn_PER_type_WheelSensorStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WiperRate.c b/src/tmx/Asn_J2735/src/r63/WiperRate.c deleted file mode 100644 index dcaf541c2..000000000 --- a/src/tmx/Asn_J2735/src/r63/WiperRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WiperRate.h" - -int -WiperRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_WiperRate_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_WiperRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperRate = { - "WiperRate", - "WiperRate", - &asn_OP_NativeInteger, - asn_DEF_WiperRate_tags_1, - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - asn_DEF_WiperRate_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperRate_tags_1) - /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ - { &asn_OER_type_WiperRate_constr_1, &asn_PER_type_WiperRate_constr_1, WiperRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WiperSet.c b/src/tmx/Asn_J2735/src/r63/WiperSet.c deleted file mode 100644 index 00cec8004..000000000 --- a/src/tmx/Asn_J2735/src/r63/WiperSet.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WiperSet.h" - -asn_TYPE_member_t asn_MBR_WiperSet_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct WiperSet, statusFront), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "statusFront" - }, - { ATF_NOFLAGS, 0, offsetof(struct WiperSet, rateFront), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rateFront" - }, - { ATF_POINTER, 2, offsetof(struct WiperSet, statusRear), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperStatus, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "statusRear" - }, - { ATF_POINTER, 1, offsetof(struct WiperSet, rateRear), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_WiperRate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rateRear" - }, -}; -static const int asn_MAP_WiperSet_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_WiperSet_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_WiperSet_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ -}; -asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1 = { - sizeof(struct WiperSet), - offsetof(struct WiperSet, _asn_ctx), - asn_MAP_WiperSet_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_WiperSet_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_WiperSet = { - "WiperSet", - "WiperSet", - &asn_OP_SEQUENCE, - asn_DEF_WiperSet_tags_1, - sizeof(asn_DEF_WiperSet_tags_1) - /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ - asn_DEF_WiperSet_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperSet_tags_1) - /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_WiperSet_1, - 4, /* Elements count */ - &asn_SPC_WiperSet_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WiperStatus.c b/src/tmx/Asn_J2735/src/r63/WiperStatus.c deleted file mode 100644 index e2fb69325..000000000 --- a/src/tmx/Asn_J2735/src/r63/WiperStatus.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WiperStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_WiperStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_WiperStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_WiperStatus_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 3, "off" }, - { 2, 12, "intermittent" }, - { 3, 3, "low" }, - { 4, 4, "high" }, - { 5, 11, "washerInUse" }, - { 6, 16, "automaticPresent" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_WiperStatus_enum2value_1[] = { - 6, /* automaticPresent(6) */ - 4, /* high(4) */ - 2, /* intermittent(2) */ - 3, /* low(3) */ - 1, /* off(1) */ - 0, /* unavailable(0) */ - 5 /* washerInUse(5) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1 = { - asn_MAP_WiperStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_WiperStatus_enum2value_1, /* N => "tag"; sorted by N */ - 7, /* Number of elements in the maps */ - 8, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_WiperStatus = { - "WiperStatus", - "WiperStatus", - &asn_OP_NativeEnumerated, - asn_DEF_WiperStatus_tags_1, - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - asn_DEF_WiperStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_WiperStatus_tags_1) - /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_WiperStatus_constr_1, &asn_PER_type_WiperStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_WiperStatus_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/WorkZone.c b/src/tmx/Asn_J2735/src/r63/WorkZone.c deleted file mode 100644 index 856599c40..000000000 --- a/src/tmx/Asn_J2735/src/r63/WorkZone.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "WorkZone.h" - -static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_WorkZone_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..16)) */}; -asn_per_constraints_t asn_PER_type_WorkZone_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_item_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.itis), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIScodes, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "itis" - }, - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.text), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ITIStextPhrase, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "text" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ -}; -static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { - sizeof(struct WorkZone__Member__item), - offsetof(struct WorkZone__Member__item, _asn_ctx), - offsetof(struct WorkZone__Member__item, present), - sizeof(((struct WorkZone__Member__item *)0)->present), - asn_MAP_item_tag2el_3, - 2, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_item_3 = { - "item", - "item", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, - asn_MBR_item_3, - 2, /* Elements count */ - &asn_SPC_item_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_Member_2[] = { - { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_item_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "item" - }, -}; -static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { - sizeof(struct WorkZone__Member), - offsetof(struct WorkZone__Member, _asn_ctx), - asn_MAP_Member_tag2el_2, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_Member_2 = { - "SEQUENCE", - "SEQUENCE", - &asn_OP_SEQUENCE, - asn_DEF_Member_tags_2, - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - asn_DEF_Member_tags_2, /* Same as above */ - sizeof(asn_DEF_Member_tags_2) - /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Member_2, - 1, /* Elements count */ - &asn_SPC_Member_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_WorkZone_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Member_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { - sizeof(struct WorkZone), - offsetof(struct WorkZone, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_WorkZone = { - "WorkZone", - "WorkZone", - &asn_OP_SEQUENCE_OF, - asn_DEF_WorkZone_tags_1, - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - asn_DEF_WorkZone_tags_1, /* Same as above */ - sizeof(asn_DEF_WorkZone_tags_1) - /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ - { &asn_OER_type_WorkZone_constr_1, &asn_PER_type_WorkZone_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_WorkZone_1, - 1, /* Single element */ - &asn_SPC_WorkZone_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/YawDetected.c b/src/tmx/Asn_J2735/src/r63/YawDetected.c deleted file mode 100644 index bc7c0018b..000000000 --- a/src/tmx/Asn_J2735/src/r63/YawDetected.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "SDSM" - * found in "J2735_201603_2023-06-22.asn" - * `asn1c -fcompound-names ` - */ - -#include "YawDetected.h" - -int -YawDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -14400 && value <= 14400)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_YawDetected_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-14400..14400) */, - -1}; -asn_per_constraints_t asn_PER_type_YawDetected_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_YawDetected_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawDetected = { - "YawDetected", - "YawDetected", - &asn_OP_NativeInteger, - asn_DEF_YawDetected_tags_1, - sizeof(asn_DEF_YawDetected_tags_1) - /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ - asn_DEF_YawDetected_tags_1, /* Same as above */ - sizeof(asn_DEF_YawDetected_tags_1) - /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ - { &asn_OER_type_YawDetected_constr_1, &asn_PER_type_YawDetected_constr_1, YawDetected_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/YawRate.c b/src/tmx/Asn_J2735/src/r63/YawRate.c deleted file mode 100644 index 6eb5f81e2..000000000 --- a/src/tmx/Asn_J2735/src/r63/YawRate.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "YawRate.h" - -int -YawRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= -32767 && value <= 32767)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_YawRate_constr_1 CC_NOTUSED = { - { 2, 0 } /* (-32767..32767) */, - -1}; -asn_per_constraints_t asn_PER_type_YawRate_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRate = { - "YawRate", - "YawRate", - &asn_OP_NativeInteger, - asn_DEF_YawRate_tags_1, - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - asn_DEF_YawRate_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRate_tags_1) - /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ - { &asn_OER_type_YawRate_constr_1, &asn_PER_type_YawRate_constr_1, YawRate_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c b/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c deleted file mode 100644 index 988d94e23..000000000 --- a/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "YawRateConfidence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_YawRateConfidence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { - { 0, 11, "unavailable" }, - { 1, 13, "degSec-100-00" }, - { 2, 13, "degSec-010-00" }, - { 3, 13, "degSec-005-00" }, - { 4, 13, "degSec-001-00" }, - { 5, 13, "degSec-000-10" }, - { 6, 13, "degSec-000-05" }, - { 7, 13, "degSec-000-01" } -}; -static const unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { - 7, /* degSec-000-01(7) */ - 6, /* degSec-000-05(6) */ - 5, /* degSec-000-10(5) */ - 4, /* degSec-001-00(4) */ - 3, /* degSec-005-00(3) */ - 2, /* degSec-010-00(2) */ - 1, /* degSec-100-00(1) */ - 0 /* unavailable(0) */ -}; -const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { - asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ - 8, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { - "YawRateConfidence", - "YawRateConfidence", - &asn_OP_NativeEnumerated, - asn_DEF_YawRateConfidence_tags_1, - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - asn_DEF_YawRateConfidence_tags_1, /* Same as above */ - sizeof(asn_DEF_YawRateConfidence_tags_1) - /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ - { &asn_OER_type_YawRateConfidence_constr_1, &asn_PER_type_YawRateConfidence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Year.c b/src/tmx/Asn_J2735/src/r63/Year.c deleted file mode 100644 index db56f60f8..000000000 --- a/src/tmx/Asn_J2735/src/r63/Year.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "AddGrpB" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Year.h" - -int -Year_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Year_constr_1 CC_NOTUSED = { - { 2, 1 } /* (1..65535) */, - -1}; -asn_per_constraints_t asn_PER_type_Year_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Year_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Year = { - "Year", - "Year", - &asn_OP_NativeInteger, - asn_DEF_Year_tags_1, - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - asn_DEF_Year_tags_1, /* Same as above */ - sizeof(asn_DEF_Year_tags_1) - /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ - { &asn_OER_type_Year_constr_1, &asn_PER_type_Year_constr_1, Year_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/ZoneLength.c b/src/tmx/Asn_J2735/src/r63/ZoneLength.c deleted file mode 100644 index d9984d40a..000000000 --- a/src/tmx/Asn_J2735/src/r63/ZoneLength.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "ZoneLength.h" - -int -ZoneLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 10000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ZoneLength_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..10000) */, - -1}; -asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ZoneLength = { - "ZoneLength", - "ZoneLength", - &asn_OP_NativeInteger, - asn_DEF_ZoneLength_tags_1, - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - asn_DEF_ZoneLength_tags_1, /* Same as above */ - sizeof(asn_DEF_ZoneLength_tags_1) - /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ - { &asn_OER_type_ZoneLength_constr_1, &asn_PER_type_ZoneLength_constr_1, ZoneLength_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/Zoom.c b/src/tmx/Asn_J2735/src/r63/Zoom.c deleted file mode 100644 index 9a18c1260..000000000 --- a/src/tmx/Asn_J2735/src/r63/Zoom.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "DSRC" - * found in "J2735_201603_ASN_CC.asn" - * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` - */ - -#include "Zoom.h" - -int -Zoom_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 15)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Zoom_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..15) */, - -1}; -asn_per_constraints_t asn_PER_type_Zoom_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_Zoom_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Zoom = { - "Zoom", - "Zoom", - &asn_OP_NativeInteger, - asn_DEF_Zoom_tags_1, - sizeof(asn_DEF_Zoom_tags_1) - /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ - asn_DEF_Zoom_tags_1, /* Same as above */ - sizeof(asn_DEF_Zoom_tags_1) - /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ - { &asn_OER_type_Zoom_constr_1, &asn_PER_type_Zoom_constr_1, Zoom_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c deleted file mode 100644 index ec952fc99..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c +++ /dev/null @@ -1,41 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -typedef A_SEQUENCE_OF(void) asn_sequence; - -void -asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { - asn_sequence *as = (asn_sequence *)asn_sequence_of_x; - - if(as) { - void *ptr; - int n; - - if(number < 0 || number >= as->count) - return; /* Nothing to delete */ - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - /* - * Shift all elements to the left to hide the gap. - */ - --as->count; - for(n = number; n < as->count; n++) - as->array[n] = as->array[n+1]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c b/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c deleted file mode 100644 index 944f2cb8a..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c +++ /dev/null @@ -1,88 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Add another element into the set. - */ -int -asn_set_add(void *asn_set_of_x, void *ptr) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as == 0 || ptr == 0) { - errno = EINVAL; /* Invalid arguments */ - return -1; - } - - /* - * Make sure there's enough space to insert an element. - */ - if(as->count == as->size) { - int _newsize = as->size ? (as->size << 1) : 4; - void *_new_arr; - _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); - if(_new_arr) { - as->array = (void **)_new_arr; - as->size = _newsize; - } else { - /* ENOMEM */ - return -1; - } - } - - as->array[as->count++] = ptr; - - return 0; -} - -void -asn_set_del(void *asn_set_of_x, int number, int _do_free) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - void *ptr; - if(number < 0 || number >= as->count) - return; - - if(_do_free && as->free) { - ptr = as->array[number]; - } else { - ptr = 0; - } - - as->array[number] = as->array[--as->count]; - - /* - * Invoke the third-party function only when the state - * of the parent structure is consistent. - */ - if(ptr) as->free(ptr); - } -} - -/* - * Free the contents of the set, do not free the set itself. - */ -void -asn_set_empty(void *asn_set_of_x) { - asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); - - if(as) { - if(as->array) { - if(as->free) { - while(as->count--) - as->free(as->array[as->count]); - } - FREEMEM(as->array); - as->array = 0; - } - as->count = 0; - as->size = 0; - } - -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_application.c b/src/tmx/Asn_J2735/src/r63/asn_application.c deleted file mode 100644 index 2bff46064..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_application.c +++ /dev/null @@ -1,481 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, - const void *sptr, - asn_app_consume_bytes_f *callback, - void *callback_key); - - -struct callback_count_bytes_key { - asn_app_consume_bytes_f *callback; - void *callback_key; - size_t computed_size; -}; - -/* - * Encoder which just counts bytes that come through it. - */ -static int -callback_count_bytes_cb(const void *data, size_t size, void *keyp) { - struct callback_count_bytes_key *key = keyp; - int ret; - - ret = key->callback(data, size, key->callback_key); - if(ret >= 0) { - key->computed_size += size; - } - - return ret; -} - -struct overrun_encoder_key { - void *buffer; - size_t buffer_size; - size_t computed_size; -}; - -struct dynamic_encoder_key { - void *buffer; - size_t buffer_size; - size_t computed_size; -}; - -struct callback_failure_catch_key { - asn_app_consume_bytes_f *callback; - void *callback_key; - int callback_failed; -}; - -/* - * Encoder which doesn't stop counting bytes - * even if it reaches the end of the buffer. - */ -static int -overrun_encoder_cb(const void *data, size_t size, void *keyp) { - struct overrun_encoder_key *key = keyp; - - if(key->computed_size + size > key->buffer_size) { - /* - * Avoid accident on the next call: - * stop adding bytes to the buffer. - */ - key->buffer_size = 0; - } else { - memcpy((char *)key->buffer + key->computed_size, data, size); - } - key->computed_size += size; - - return 0; -} - -/* - * Encoder which dynamically allocates output, and continues - * to count even if allocation failed. - */ -static int -dynamic_encoder_cb(const void *data, size_t size, void *keyp) { - struct dynamic_encoder_key *key = keyp; - - if(key->buffer) { - if(key->computed_size + size >= key->buffer_size) { - void *p; - size_t new_size = key->buffer_size; - - do { - new_size *= 2; - } while(new_size <= key->computed_size + size); - - p = REALLOC(key->buffer, new_size); - if(p) { - key->buffer = p; - key->buffer_size = new_size; - } else { - FREEMEM(key->buffer); - key->buffer = 0; - key->buffer_size = 0; - key->computed_size += size; - return 0; - } - } - memcpy((char *)key->buffer + key->computed_size, data, size); - } - - key->computed_size += size; - - return 0; -} - -/* - * Encoder which help convert the application level encoder failure into EIO. - */ -static int -callback_failure_catch_cb(const void *data, size_t size, void *keyp) { - struct callback_failure_catch_key *key = keyp; - int ret; - - ret = key->callback(data, size, key->callback_key); - if(ret < 0) { - key->callback_failed = 1; - } - - return ret; -} - -asn_enc_rval_t -asn_encode(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, - const void *sptr, asn_app_consume_bytes_f *callback, void *callback_key) { - struct callback_failure_catch_key cb_key; - asn_enc_rval_t er = {0,0,0}; - - if(!callback) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - cb_key.callback = callback; - cb_key.callback_key = callback_key; - cb_key.callback_failed = 0; - - er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - callback_failure_catch_cb, &cb_key); - if(cb_key.callback_failed) { - assert(er.encoded == -1); - assert(errno == EBADF); - errno = EIO; - } - - return er; -} - -asn_enc_rval_t -asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr, - void *buffer, size_t buffer_size) { - struct overrun_encoder_key buf_key; - asn_enc_rval_t er = {0,0,0}; - - if(buffer_size > 0 && !buffer) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - buf_key.buffer = buffer; - buf_key.buffer_size = buffer_size; - buf_key.computed_size = 0; - - er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - overrun_encoder_cb, &buf_key); - - if(er.encoded >= 0 && (size_t)er.encoded != buf_key.computed_size) { - ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE - " yet produced %" ASN_PRI_SIZE " bytes", - er.encoded, buf_key.computed_size); - assert(er.encoded < 0 || (size_t)er.encoded == buf_key.computed_size); - } - - return er; -} - -asn_encode_to_new_buffer_result_t -asn_encode_to_new_buffer(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr) { - struct dynamic_encoder_key buf_key; - asn_encode_to_new_buffer_result_t res; - - buf_key.buffer_size = 16; - buf_key.buffer = MALLOC(buf_key.buffer_size); - buf_key.computed_size = 0; - - res.result = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, - dynamic_encoder_cb, &buf_key); - - if(res.result.encoded >= 0 - && (size_t)res.result.encoded != buf_key.computed_size) { - ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE - " yet produced %" ASN_PRI_SIZE " bytes", - res.result.encoded, buf_key.computed_size); - assert(res.result.encoded < 0 - || (size_t)res.result.encoded == buf_key.computed_size); - } - - res.buffer = buf_key.buffer; - - /* 0-terminate just in case. */ - if(res.buffer) { - assert(buf_key.computed_size < buf_key.buffer_size); - ((char *)res.buffer)[buf_key.computed_size] = '\0'; - } - - return res; -} - -static asn_enc_rval_t -asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, - const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_consume_bytes_f *callback, void *callback_key) { - asn_enc_rval_t er = {0,0,0}; - enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL; - - (void)opt_codec_ctx; /* Parameters are not checked on encode yet. */ - - if(!td || !sptr) { - errno = EINVAL; - ASN__ENCODE_FAILED; - } - - switch(syntax) { - case ATS_NONSTANDARD_PLAINTEXT: - if(td->op->print_struct) { - struct callback_count_bytes_key cb_key; - cb_key.callback = callback; - cb_key.callback_key = callback_key; - cb_key.computed_size = 0; - if(td->op->print_struct(td, sptr, 1, callback_count_bytes_cb, - &cb_key) - < 0 - || callback_count_bytes_cb("\n", 1, &cb_key) < 0) { - errno = EBADF; /* Structure has incorrect form. */ - er.encoded = -1; - er.failed_type = td; - er.structure_ptr = sptr; - } else { - er.encoded = cb_key.computed_size; - er.failed_type = 0; - er.structure_ptr = 0; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - - case ATS_RANDOM: - errno = ENOENT; /* Randomization doesn't make sense on output. */ - ASN__ENCODE_FAILED; - - case ATS_BER: - /* BER is a superset of DER. */ - /* Fall through. */ - case ATS_DER: - if(td->op->der_encoder) { - er = der_encode(td, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->der_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* DER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - case ATS_CER: - errno = ENOENT; /* Transfer syntax is not defined for any type. */ - ASN__ENCODE_FAILED; - -#ifdef ASN_DISABLE_OER_SUPPORT - case ATS_BASIC_OER: - case ATS_CANONICAL_OER: - errno = ENOENT; /* PER is not defined. */ - ASN__ENCODE_FAILED; - break; -#else /* ASN_DISABLE_OER_SUPPORT */ - case ATS_BASIC_OER: - /* CANONICAL-OER is a superset of BASIC-OER. */ - /* Fall through. */ - case ATS_CANONICAL_OER: - if(td->op->oer_encoder) { - er = oer_encode(td, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->oer_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* OER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#endif /* ASN_DISABLE_OER_SUPPORT */ - -#ifdef ASN_DISABLE_PER_SUPPORT - case ATS_UNALIGNED_BASIC_PER: - case ATS_UNALIGNED_CANONICAL_PER: - case ATS_ALIGNED_BASIC_PER: - case ATS_ALIGNED_CANONICAL_PER: - errno = ENOENT; /* PER is not defined. */ - ASN__ENCODE_FAILED; - break; -#else /* ASN_DISABLE_PER_SUPPORT */ - case ATS_UNALIGNED_BASIC_PER: - /* CANONICAL-UPER is a superset of BASIC-UPER. */ - /* Fall through. */ - case ATS_UNALIGNED_CANONICAL_PER: - if(td->op->uper_encoder) { - er = uper_encode(td, 0, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->uper_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* UPER is not defined for this type. */ - } - } else { - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - if(er.encoded == 0) { - /* Enforce "Complete Encoding" of X.691 #11.1 */ - if(callback("\0", 1, callback_key) < 0) { - errno = EBADF; - ASN__ENCODE_FAILED; - } - er.encoded = 8; /* Exactly 8 zero bits is added. */ - } - /* Convert bits into bytes */ - er.encoded = (er.encoded + 7) >> 3; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - case ATS_ALIGNED_BASIC_PER: - /* CANONICAL-APER is a superset of BASIC-APER. */ - /* Fall through. */ - case ATS_ALIGNED_CANONICAL_PER: - if(td->op->aper_encoder) { - er = aper_encode(td, 0, sptr, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->aper_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* APER is not defined for this type. */ - } - } else { - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - if(er.encoded == 0) { - /* Enforce "Complete Encoding" of X.691 #11.1 */ - if(callback("\0", 1, callback_key) < 0) { - errno = EBADF; - ASN__ENCODE_FAILED; - } - er.encoded = 8; /* Exactly 8 zero bits is added. */ - } - /* Convert bits into bytes */ - er.encoded = (er.encoded + 7) >> 3; - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; -#endif /* ASN_DISABLE_PER_SUPPORT */ - - case ATS_BASIC_XER: - /* CANONICAL-XER is a superset of BASIC-XER. */ - xer_flags &= ~XER_F_CANONICAL; - xer_flags |= XER_F_BASIC; - /* Fall through. */ - case ATS_CANONICAL_XER: - if(td->op->xer_encoder) { - er = xer_encode(td, sptr, xer_flags, callback, callback_key); - if(er.encoded == -1) { - if(er.failed_type && er.failed_type->op->xer_encoder) { - errno = EBADF; /* Structure has incorrect form. */ - } else { - errno = ENOENT; /* XER is not defined for this type. */ - } - } - } else { - errno = ENOENT; /* Transfer syntax is not defined for this type. */ - ASN__ENCODE_FAILED; - } - break; - - default: - errno = ENOENT; - ASN__ENCODE_FAILED; - } - - return er; -} - -asn_dec_rval_t -asn_decode(const asn_codec_ctx_t *opt_codec_ctx, - enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, - void **sptr, const void *buffer, size_t size) { - if(!td || !td->op || !sptr || (size && !buffer)) { - ASN__DECODE_FAILED; - } - - switch(syntax) { - case ATS_CER: - case ATS_NONSTANDARD_PLAINTEXT: - default: - errno = ENOENT; - ASN__DECODE_FAILED; - - case ATS_RANDOM: - if(!td->op->random_fill) { - ASN__DECODE_FAILED; - } else { - if(asn_random_fill(td, sptr, 16000) == 0) { - asn_dec_rval_t ret = {RC_OK, 0}; - return ret; - } else { - ASN__DECODE_FAILED; - } - } - break; - - case ATS_DER: - case ATS_BER: - return ber_decode(opt_codec_ctx, td, sptr, buffer, size); - - case ATS_BASIC_OER: - case ATS_CANONICAL_OER: -#ifdef ASN_DISABLE_OER_SUPPORT - errno = ENOENT; - ASN__DECODE_FAILED; -#else - return oer_decode(opt_codec_ctx, td, sptr, buffer, size); -#endif - - case ATS_UNALIGNED_BASIC_PER: - case ATS_UNALIGNED_CANONICAL_PER: -#ifdef ASN_DISABLE_PER_SUPPORT - errno = ENOENT; - ASN__DECODE_FAILED; -#else - return uper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); -#endif - - case ATS_ALIGNED_BASIC_PER: - case ATS_ALIGNED_CANONICAL_PER: -#ifdef ASN_DISABLE_PER_SUPPORT - errno = ENOENT; - ASN__DECODE_FAILED; -#else - return aper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); -#endif - - case ATS_BASIC_XER: - case ATS_CANONICAL_XER: - return xer_decode(opt_codec_ctx, td, sptr, buffer, size); - } -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_bit_data.c b/src/tmx/Asn_J2735/src/r63/asn_bit_data.c deleted file mode 100644 index fe4b89ba7..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_bit_data.c +++ /dev/null @@ -1,333 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Create a contiguous non-refillable bit data structure. - * Can be freed by FREEMEM(). - */ -asn_bit_data_t * -asn_bit_data_new_contiguous(const void *data, size_t size_bits) { - size_t size_bytes = (size_bits + 7) / 8; - asn_bit_data_t *pd; - uint8_t *bytes; - - /* Get the extensions map */ - pd = CALLOC(1, sizeof(*pd) + size_bytes + 1); - if(!pd) { - return NULL; - } - bytes = (void *)(((char *)pd) + sizeof(*pd)); - memcpy(bytes, data, size_bytes); - bytes[size_bytes] = 0; - pd->buffer = bytes; - pd->nboff = 0; - pd->nbits = size_bits; - - return pd; -} - - -char * -asn_bit_data_string(asn_bit_data_t *pd) { - static char buf[2][32]; - static int n; - n = (n+1) % 2; - snprintf(buf[n], sizeof(buf[n]), - "{m=%" ASN_PRI_SIZE " span %" ASN_PRI_SIZE "[%" ASN_PRI_SIZE - "..%" ASN_PRI_SIZE "] (%" ASN_PRI_SIZE ")}", - pd->moved, ((uintptr_t)(pd->buffer) & 0xf), pd->nboff, pd->nbits, - pd->nbits - pd->nboff); - return buf[n]; -} - -void -asn_get_undo(asn_bit_data_t *pd, int nbits) { - if((ssize_t)pd->nboff < nbits) { - assert((ssize_t)pd->nboff < nbits); - } else { - pd->nboff -= nbits; - pd->moved -= nbits; - } -} - -/* - * Extract a small number of bits (<= 31) from the specified PER data pointer. - */ -int32_t -asn_get_few_bits(asn_bit_data_t *pd, int nbits) { - size_t off; /* Next after last bit offset */ - ssize_t nleft; /* Number of bits left in this stream */ - uint32_t accum; - const uint8_t *buf; - - if(nbits < 0) - return -1; - - nleft = pd->nbits - pd->nboff; - if(nbits > nleft) { - int32_t tailv, vhead; - if(!pd->refill || nbits > 31) return -1; - /* Accumulate unused bytes before refill */ - ASN_DEBUG("Obtain the rest %d bits (want %d)", - (int)nleft, (int)nbits); - tailv = asn_get_few_bits(pd, nleft); - if(tailv < 0) return -1; - /* Refill (replace pd contents with new data) */ - if(pd->refill(pd)) - return -1; - nbits -= nleft; - vhead = asn_get_few_bits(pd, nbits); - /* Combine the rest of previous pd with the head of new one */ - tailv = (tailv << nbits) | vhead; /* Could == -1 */ - return tailv; - } - - /* - * Normalize position indicator. - */ - if(pd->nboff >= 8) { - pd->buffer += (pd->nboff >> 3); - pd->nbits -= (pd->nboff & ~0x07); - pd->nboff &= 0x07; - } - pd->moved += nbits; - pd->nboff += nbits; - off = pd->nboff; - buf = pd->buffer; - - /* - * Extract specified number of bits. - */ - if(off <= 8) - accum = nbits ? (buf[0]) >> (8 - off) : 0; - else if(off <= 16) - accum = ((buf[0] << 8) + buf[1]) >> (16 - off); - else if(off <= 24) - accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); - else if(off <= 31) - accum = (((uint32_t)buf[0] << 24) + (buf[1] << 16) - + (buf[2] << 8) + (buf[3])) >> (32 - off); - else if(nbits <= 31) { - asn_bit_data_t tpd = *pd; - /* Here are we with our 31-bits limit plus 1..7 bits offset. */ - asn_get_undo(&tpd, nbits); - /* The number of available bits in the stream allow - * for the following operations to take place without - * invoking the ->refill() function */ - accum = asn_get_few_bits(&tpd, nbits - 24) << 24; - accum |= asn_get_few_bits(&tpd, 24); - } else { - asn_get_undo(pd, nbits); - return -1; - } - - accum &= (((uint32_t)1 << nbits) - 1); - - ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", - (int)nbits, (int)nleft, - (int)pd->moved, - (((long)pd->buffer) & 0xf), - (int)pd->nboff, (int)pd->nbits, - ((pd->buffer != NULL)?pd->buffer[0]:0), - (int)(pd->nbits - pd->nboff), - (int)accum); - - return accum; -} - -/* - * Extract a large number of bits from the specified PER data pointer. - */ -int -asn_get_many_bits(asn_bit_data_t *pd, uint8_t *dst, int alright, int nbits) { - int32_t value; - - if(alright && (nbits & 7)) { - /* Perform right alignment of a first few bits */ - value = asn_get_few_bits(pd, nbits & 0x07); - if(value < 0) return -1; - *dst++ = value; /* value is already right-aligned */ - nbits &= ~7; - } - - while(nbits) { - if(nbits >= 24) { - value = asn_get_few_bits(pd, 24); - if(value < 0) return -1; - *(dst++) = value >> 16; - *(dst++) = value >> 8; - *(dst++) = value; - nbits -= 24; - } else { - value = asn_get_few_bits(pd, nbits); - if(value < 0) return -1; - if(nbits & 7) { /* implies left alignment */ - value <<= 8 - (nbits & 7), - nbits += 8 - (nbits & 7); - if(nbits > 24) - *dst++ = value >> 24; - } - if(nbits > 16) - *dst++ = value >> 16; - if(nbits > 8) - *dst++ = value >> 8; - *dst++ = value; - break; - } - } - - return 0; -} - -/* - * Put a small number of bits (<= 31). - */ -int -asn_put_few_bits(asn_bit_outp_t *po, uint32_t bits, int obits) { - size_t off; /* Next after last bit offset */ - size_t omsk; /* Existing last byte meaningful bits mask */ - uint8_t *buf; - - if(obits <= 0 || obits >= 32) return obits ? -1 : 0; - - ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", - obits, (int)bits, (void *)po->buffer, (int)po->nboff); - - /* - * Normalize position indicator. - */ - if(po->nboff >= 8) { - po->buffer += (po->nboff >> 3); - po->nbits -= (po->nboff & ~0x07); - po->nboff &= 0x07; - } - - /* - * Flush whole-bytes output, if necessary. - */ - if(po->nboff + obits > po->nbits) { - size_t complete_bytes; - if(!po->buffer) po->buffer = po->tmpspace; - complete_bytes = (po->buffer - po->tmpspace); - ASN_DEBUG("[PER output %ld complete + %ld]", - (long)complete_bytes, (long)po->flushed_bytes); - if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) - return -1; - if(po->nboff) - po->tmpspace[0] = po->buffer[0]; - po->buffer = po->tmpspace; - po->nbits = 8 * sizeof(po->tmpspace); - po->flushed_bytes += complete_bytes; - } - - /* - * Now, due to sizeof(tmpspace), we are guaranteed large enough space. - */ - buf = po->buffer; - omsk = ~((1 << (8 - po->nboff)) - 1); - off = (po->nboff + obits); - - /* Clear data of debris before meaningful bits */ - bits &= (((uint32_t)1 << obits) - 1); - - ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, - (int)bits, (int)bits, - (int)po->nboff, (int)off, - buf[0], (int)(omsk&0xff), - (int)(buf[0] & omsk)); - - if(off <= 8) /* Completely within 1 byte */ - po->nboff = off, - bits <<= (8 - off), - buf[0] = (buf[0] & omsk) | bits; - else if(off <= 16) - po->nboff = off, - bits <<= (16 - off), - buf[0] = (buf[0] & omsk) | (bits >> 8), - buf[1] = bits; - else if(off <= 24) - po->nboff = off, - bits <<= (24 - off), - buf[0] = (buf[0] & omsk) | (bits >> 16), - buf[1] = bits >> 8, - buf[2] = bits; - else if(off <= 31) - po->nboff = off, - bits <<= (32 - off), - buf[0] = (buf[0] & omsk) | (bits >> 24), - buf[1] = bits >> 16, - buf[2] = bits >> 8, - buf[3] = bits; - else { - if(asn_put_few_bits(po, bits >> (obits - 24), 24)) return -1; - if(asn_put_few_bits(po, bits, obits - 24)) return -1; - } - - ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", - (int)bits, (int)bits, buf[0], - (long)(po->buffer - po->tmpspace)); - - return 0; -} - - -/* - * Output a large number of bits. - */ -int -asn_put_many_bits(asn_bit_outp_t *po, const uint8_t *src, int nbits) { - - while(nbits) { - uint32_t value; - - if(nbits >= 24) { - value = (src[0] << 16) | (src[1] << 8) | src[2]; - src += 3; - nbits -= 24; - if(asn_put_few_bits(po, value, 24)) - return -1; - } else { - value = src[0]; - if(nbits > 8) - value = (value << 8) | src[1]; - if(nbits > 16) - value = (value << 8) | src[2]; - if(nbits & 0x07) - value >>= (8 - (nbits & 0x07)); - if(asn_put_few_bits(po, value, nbits)) - return -1; - break; - } - } - - return 0; -} - - -int -asn_put_aligned_flush(asn_bit_outp_t *po) { - uint32_t unused_bits = (0x7 & (8 - (po->nboff & 0x07))); - size_t complete_bytes = - (po->buffer ? po->buffer - po->tmpspace : 0) + ((po->nboff + 7) >> 3); - - if(unused_bits) { - po->buffer[po->nboff >> 3] &= ~0u << unused_bits; - } - - if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) { - return -1; - } else { - po->buffer = po->tmpspace; - po->nboff = 0; - po->nbits = 8 * sizeof(po->tmpspace); - po->flushed_bytes += complete_bytes; - return 0; - } -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c deleted file mode 100644 index fc2424773..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c +++ /dev/null @@ -1,317 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Decode an always-primitive type. - */ -asn_dec_rval_t -ber_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buf_ptr, size_t size, int tag_mode) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; - asn_dec_rval_t rval; - ber_tlv_len_t length = 0; /* =0 to avoid [incorrect] warning. */ - - /* - * If the structure is not there, allocate it. - */ - if(st == NULL) { - st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); - if(st == NULL) ASN__DECODE_FAILED; - *sptr = (void *)st; - } - - ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", - td->name, tag_mode); - - /* - * Check tags and extract value length. - */ - rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, - tag_mode, 0, &length, 0); - if(rval.code != RC_OK) - return rval; - - ASN_DEBUG("%s length is %d bytes", td->name, (int)length); - - /* - * Make sure we have this length. - */ - buf_ptr = ((const char *)buf_ptr) + rval.consumed; - size -= rval.consumed; - if(length > (ber_tlv_len_t)size) { - rval.code = RC_WMORE; - rval.consumed = 0; - return rval; - } - - st->size = (int)length; - /* The following better be optimized away. */ - if(sizeof(st->size) != sizeof(length) - && (ber_tlv_len_t)st->size != length) { - st->size = 0; - ASN__DECODE_FAILED; - } - - st->buf = (uint8_t *)MALLOC(length + 1); - if(!st->buf) { - st->size = 0; - ASN__DECODE_FAILED; - } - - memcpy(st->buf, buf_ptr, length); - st->buf[length] = '\0'; /* Just in case */ - - rval.code = RC_OK; - rval.consumed += length; - - ASN_DEBUG("Took %ld/%ld bytes to encode %s", - (long)rval.consumed, - (long)length, td->name); - - return rval; -} - -/* - * Encode an always-primitive type using DER. - */ -asn_enc_rval_t -der_encode_primitive(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; - - ASN_DEBUG("%s %s as a primitive type (tm=%d)", - cb?"Encoding":"Estimating", td->name, tag_mode); - - erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, - cb, app_key); - ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - - if(cb && st->buf) { - if(cb(st->buf, st->size, app_key) < 0) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = sptr; - return erval; - } - } else { - assert(st->buf || st->size == 0); - } - - erval.encoded += st->size; - ASN__ENCODED_OK(erval); -} - -void -ASN__PRIMITIVE_TYPE_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as a primitive type", td->name); - - if(st->buf) - FREEMEM(st->buf); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(sptr, 0, sizeof(ASN__PRIMITIVE_TYPE_t)); - break; - } -} - - -/* - * Local internal type passed around as an argument. - */ -struct xdp_arg_s { - const asn_TYPE_descriptor_t *type_descriptor; - void *struct_key; - xer_primitive_body_decoder_f *prim_body_decoder; - int decoded_something; - int want_more; -}; - -/* - * Since some kinds of primitive values can be encoded using value-specific - * tags (, , etc), the primitive decoder must - * be supplied with such tags to parse them as needed. - */ -static int -xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - - /* - * The chunk_buf is guaranteed to start at '<'. - */ - assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); - - /* - * Decoding was performed once already. Prohibit doing it again. - */ - if(arg->decoded_something) - return -1; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return 0; - } - - return -1; -} - -static ssize_t -xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { - struct xdp_arg_s *arg = (struct xdp_arg_s *)key; - enum xer_pbd_rval bret; - size_t lead_wsp_size; - - if(arg->decoded_something) { - if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { - /* - * Example: - * "123 " - * ^- chunk_buf position. - */ - return chunk_size; - } - /* - * Decoding was done once already. Prohibit doing it again. - */ - return -1; - } - - if(!have_more) { - /* - * If we've received something like "1", we can't really - * tell whether it is really `1` or `123`, until we know - * that there is no more data coming. - * The have_more argument will be set to 1 once something - * like this is available to the caller of this callback: - * "1want_more = 1; - return -1; - } - - lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); - chunk_buf = (const char *)chunk_buf + lead_wsp_size; - chunk_size -= lead_wsp_size; - - bret = arg->prim_body_decoder(arg->type_descriptor, - arg->struct_key, chunk_buf, chunk_size); - switch(bret) { - case XPBD_SYSTEM_FAILURE: - case XPBD_DECODER_LIMIT: - case XPBD_BROKEN_ENCODING: - break; - case XPBD_BODY_CONSUMED: - /* Tag decoded successfully */ - arg->decoded_something = 1; - /* Fall through */ - case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ - return lead_wsp_size + chunk_size; - } - - return -1; -} - - -asn_dec_rval_t -xer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - size_t struct_size, const char *opt_mname, - const void *buf_ptr, size_t size, - xer_primitive_body_decoder_f *prim_body_decoder) { - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - asn_struct_ctx_t s_ctx; - struct xdp_arg_s s_arg; - asn_dec_rval_t rc; - - /* - * Create the structure if does not exist. - */ - if(!*sptr) { - *sptr = CALLOC(1, struct_size); - if(!*sptr) ASN__DECODE_FAILED; - } - - memset(&s_ctx, 0, sizeof(s_ctx)); - s_arg.type_descriptor = td; - s_arg.struct_key = *sptr; - s_arg.prim_body_decoder = prim_body_decoder; - s_arg.decoded_something = 0; - s_arg.want_more = 0; - - rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, - xml_tag, buf_ptr, size, - xer_decode__unexpected_tag, xer_decode__primitive_body); - switch(rc.code) { - case RC_OK: - if(!s_arg.decoded_something) { - char ch; - ASN_DEBUG("Primitive body is not recognized, " - "supplying empty one"); - /* - * Decoding opportunity has come and gone. - * Where's the result? - * Try to feed with empty body, see if it eats it. - */ - if(prim_body_decoder(s_arg.type_descriptor, - s_arg.struct_key, &ch, 0) - != XPBD_BODY_CONSUMED) { - /* - * This decoder does not like empty stuff. - */ - ASN__DECODE_FAILED; - } - } - break; - case RC_WMORE: - /* - * Redo the whole thing later. - * We don't have a context to save intermediate parsing state. - */ - rc.consumed = 0; - break; - case RC_FAIL: - rc.consumed = 0; - if(s_arg.want_more) - rc.code = RC_WMORE; - else - ASN__DECODE_FAILED; - break; - } - return rc; -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_internal.c b/src/tmx/Asn_J2735/src/r63/asn_internal.c deleted file mode 100644 index c2a8108e7..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_internal.c +++ /dev/null @@ -1,48 +0,0 @@ -#include - -ssize_t -asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, - const char *fmt, ...) { - char scratch[64]; - char *buf = scratch; - size_t buf_size = sizeof(scratch); - int wrote; - int cb_ret; - - do { - va_list args; - va_start(args, fmt); - - wrote = vsnprintf(buf, buf_size, fmt, args); - va_end(args); - if(wrote < (ssize_t)buf_size) { - if(wrote < 0) { - if(buf != scratch) FREEMEM(buf); - return -1; - } - break; - } - - buf_size <<= 1; - if(buf == scratch) { - buf = MALLOC(buf_size); - if(!buf) return -1; - } else { - void *p = REALLOC(buf, buf_size); - if(!p) { - FREEMEM(buf); - return -1; - } - buf = p; - } - } while(1); - - cb_ret = cb(buf, wrote, key); - if(buf != scratch) FREEMEM(buf); - if(cb_ret < 0) { - return -1; - } - - return wrote; -} - diff --git a/src/tmx/Asn_J2735/src/r63/asn_random_fill.c b/src/tmx/Asn_J2735/src/r63/asn_random_fill.c deleted file mode 100644 index 819cf700e..000000000 --- a/src/tmx/Asn_J2735/src/r63/asn_random_fill.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -int -asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, - size_t length) { - - if(td && td->op->random_fill) { - asn_random_fill_result_t res = - td->op->random_fill(td, struct_ptr, 0, length); - return (res.code == ARFILL_OK) ? 0 : -1; - } else { - return -1; - } -} - -static uintmax_t -asn__intmax_range(intmax_t lb, intmax_t ub) { - assert(lb <= ub); - if((ub < 0) == (lb < 0)) { - return ub - lb; - } else if(lb < 0) { - return 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); - } else { - assert(!"Unreachable"); - return 0; - } -} - -intmax_t -asn_random_between(intmax_t lb, intmax_t rb) { - if(lb == rb) { - return lb; - } else { - const uintmax_t intmax_max = ((~(uintmax_t)0) >> 1); - uintmax_t range = asn__intmax_range(lb, rb); - uintmax_t value = 0; - uintmax_t got_entropy = 0; - - assert(RAND_MAX > 0xffffff); /* Seen 7ffffffd! */ - assert(range < intmax_max); - - for(; got_entropy < range;) { - got_entropy = (got_entropy << 24) | 0xffffff; - value = (value << 24) | (random() % 0xffffff); - } - - return lb + (intmax_t)(value % (range + 1)); - } -} diff --git a/src/tmx/Asn_J2735/src/r63/ber_decoder.c b/src/tmx/Asn_J2735/src/r63/ber_decoder.c deleted file mode 100644 index 75d601695..000000000 --- a/src/tmx/Asn_J2735/src/r63/ber_decoder.c +++ /dev/null @@ -1,283 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) -#undef RETURN -#define RETURN(_code) do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - if(opt_ctx) opt_ctx->step = step; /* Save context */ \ - if(_code == RC_OK || opt_ctx) \ - rval.consumed = consumed_myself; \ - else \ - rval.consumed = 0; /* Context-free */ \ - return rval; \ - } while(0) - -/* - * The BER decoder of any type. - */ -asn_dec_rval_t -ber_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - const void *ptr, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return type_descriptor->op->ber_decoder(opt_codec_ctx, type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - ptr, size, /* Buffer and its size */ - 0 /* Default tag mode is 0 */ - ); -} - -/* - * Check the set of >> tags matches the definition. - */ -asn_dec_rval_t -ber_check_tags(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, - const void *ptr, size_t size, int tag_mode, int last_tag_form, - ber_tlv_len_t *last_length, int *opt_tlv_form) { - ssize_t consumed_myself = 0; - ssize_t tag_len; - ssize_t len_len; - ber_tlv_tag_t tlv_tag; - ber_tlv_len_t tlv_len; - ber_tlv_len_t limit_len = -1; - int expect_00_terminators = 0; - int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ - int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ - int tagno; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - RETURN(RC_FAIL); - - /* - * So what does all this implicit skip stuff mean? - * Imagine two types, - * A ::= [5] IMPLICIT T - * B ::= [2] EXPLICIT T - * Where T is defined as - * T ::= [4] IMPLICIT SEQUENCE { ... } - * - * Let's say, we are starting to decode type A, given the - * following TLV stream: <5> <0>. What does this mean? - * It means that the type A contains type T which is, - * in turn, empty. - * Remember though, that we are still in A. We cannot - * just pass control to the type T decoder. Why? Because - * the type T decoder expects <4> <0>, not <5> <0>. - * So, we must make sure we are going to receive <5> while - * still in A, then pass control to the T decoder, indicating - * that the tag <4> was implicitly skipped. The decoder of T - * hence will be prepared to treat <4> as valid tag, and decode - * it appropriately. - */ - - tagno = step /* Continuing where left previously */ - + (tag_mode==1?-1:0) - ; - ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", - td->name, (long)size, tag_mode, step, tagno); - /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ - - if(tag_mode == 0 && tagno == (int)td->tags_count) { - /* - * This must be the _untagged_ ANY type, - * which outermost tag isn't known in advance. - * Fetch the tag and length separately. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - ASN_DEBUG("Advancing %ld in ANY case", - (long)(tag_len + len_len)); - ADVANCE(tag_len + len_len); - } else { - assert(tagno < (int)td->tags_count); /* At least one loop */ - } - for((void)tagno; tagno < (int)td->tags_count; tagno++, step++) { - - /* - * Fetch and process T from TLV. - */ - tag_len = ber_fetch_tag(ptr, size, &tlv_tag); - ASN_DEBUG("Fetching tag from {%p,%ld}: " - "len %ld, step %d, tagno %d got %s", - ptr, (long)size, - (long)tag_len, step, tagno, - ber_tlv_tag_string(tlv_tag)); - switch(tag_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - tlv_constr = BER_TLV_CONSTRUCTED(ptr); - - /* - * If {I}, don't check anything. - * If {I,B,C}, check B and C unless we're at I. - */ - if(tag_mode != 0 && step == 0) { - /* - * We don't expect tag to match here. - * It's just because we don't know how the tag - * is supposed to look like. - */ - } else { - assert(tagno >= 0); /* Guaranteed by the code above */ - if(tlv_tag != td->tags[tagno]) { - /* - * Unexpected tag. Too bad. - */ - ASN_DEBUG("Expected: %s, " - "expectation failed (tn=%d, tm=%d)", - ber_tlv_tag_string(td->tags[tagno]), - tagno, tag_mode - ); - RETURN(RC_FAIL); - } - } - - /* - * Attention: if there are more tags expected, - * ensure that the current tag is presented - * in constructed form (it contains other tags!). - * If this one is the last one, check that the tag form - * matches the one given in descriptor. - */ - if(tagno < ((int)td->tags_count - 1)) { - if(tlv_constr == 0) { - ASN_DEBUG("tlv_constr = %d, expfail", - tlv_constr); - RETURN(RC_FAIL); - } - } else { - if(last_tag_form != tlv_constr - && last_tag_form != -1) { - ASN_DEBUG("last_tag_form %d != %d", - last_tag_form, tlv_constr); - RETURN(RC_FAIL); - } - } - - /* - * Fetch and process L from TLV. - */ - len_len = ber_fetch_length(tlv_constr, - (const char *)ptr + tag_len, size - tag_len, &tlv_len); - ASN_DEBUG("Fetching len = %ld", (long)len_len); - switch(len_len) { - case -1: RETURN(RC_FAIL); - case 0: RETURN(RC_WMORE); - } - - /* - * FIXME - * As of today, the chain of tags - * must either contain several indefinite length TLVs, - * or several definite length ones. - * No mixing is allowed. - */ - if(tlv_len == -1) { - /* - * Indefinite length. - */ - if(limit_len == -1) { - expect_00_terminators++; - } else { - ASN_DEBUG("Unexpected indefinite length " - "in a chain of definite lengths"); - RETURN(RC_FAIL); - } - ADVANCE(tag_len + len_len); - continue; - } else { - if(expect_00_terminators) { - ASN_DEBUG("Unexpected definite length " - "in a chain of indefinite lengths"); - RETURN(RC_FAIL); - } - } - - /* - * Check that multiple TLVs specify ever decreasing length, - * which is consistent. - */ - if(limit_len == -1) { - limit_len = tlv_len + tag_len + len_len; - if(limit_len < 0) { - /* Too great tlv_len value? */ - RETURN(RC_FAIL); - } - } else if(limit_len != tlv_len + tag_len + len_len) { - /* - * Inner TLV specifies length which is inconsistent - * with the outer TLV's length value. - */ - ASN_DEBUG("Outer TLV is %ld and inner is %ld", - (long)limit_len, (long)tlv_len); - RETURN(RC_FAIL); - } - - ADVANCE(tag_len + len_len); - - limit_len -= (tag_len + len_len); - if((ssize_t)size > limit_len) { - /* - * Make sure that we won't consume more bytes - * from the parent frame than the inferred limit. - */ - size = limit_len; - } - } - - if(opt_tlv_form) - *opt_tlv_form = tlv_constr; - if(expect_00_terminators) - *last_length = -expect_00_terminators; - else - *last_length = tlv_len; - - RETURN(RC_OK); -} diff --git a/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c b/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c deleted file mode 100644 index 0a0deec1a..000000000 --- a/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c +++ /dev/null @@ -1,168 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, - ber_tlv_len_t *len_r) { - const uint8_t *buf = (const uint8_t *)bufptr; - unsigned oct; - - if(size == 0) - return 0; /* Want more */ - - oct = *(const uint8_t *)buf; - if((oct & 0x80) == 0) { - /* - * Short definite length. - */ - *len_r = oct; /* & 0x7F */ - return 1; - } else { - ber_tlv_len_t len; - size_t skipped; - - if(_is_constructed && oct == 0x80) { - *len_r = -1; /* Indefinite length */ - return 1; - } - - if(oct == 0xff) { - /* Reserved in standard for future use. */ - return -1; - } - - oct &= 0x7F; /* Leave only the 7 LS bits */ - for(len = 0, buf++, skipped = 1; - oct && (++skipped <= size); buf++, oct--) { - - /* Verify that we won't overflow. */ - if(!(len >> ((8 * sizeof(len)) - (8+1)))) { - len = (len << 8) | *buf; - } else { - /* Too large length value. */ - return -1; - } - } - - if(oct == 0) { - if(len < 0 || len > RSSIZE_MAX) { - /* Length value out of sane range. */ - return -1; - } - - *len_r = len; - return skipped; - } - - return 0; /* Want more */ - } - -} - -ssize_t -ber_skip_length(const asn_codec_ctx_t *opt_codec_ctx, - int _is_constructed, const void *ptr, size_t size) { - ber_tlv_len_t vlen; /* Length of V in TLV */ - ssize_t tl; /* Length of L in TLV */ - ssize_t ll; /* Length of L in TLV */ - size_t skip; - - /* - * Make sure we didn't exceed the maximum stack size. - */ - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - return -1; - - /* - * Determine the size of L in TLV. - */ - ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); - if(ll <= 0) return ll; - - /* - * Definite length. - */ - if(vlen >= 0) { - skip = ll + vlen; - if(skip > size) - return 0; /* Want more */ - return skip; - } - - /* - * Indefinite length! - */ - ASN_DEBUG("Skipping indefinite length"); - for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { - ber_tlv_tag_t tag; - - /* Fetch the tag */ - tl = ber_fetch_tag(ptr, size, &tag); - if(tl <= 0) return tl; - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - ((const char *)ptr) + tl, size - tl); - if(ll <= 0) return ll; - - skip += tl + ll; - - /* - * This may be the end of the indefinite length structure, - * two consecutive 0 octets. - * Check if it is true. - */ - if(((const uint8_t *)ptr)[0] == 0 - && ((const uint8_t *)ptr)[1] == 0) - return skip; - - ptr = ((const char *)ptr) + tl + ll; - size -= tl + ll; - } - - /* UNREACHABLE */ -} - -size_t -der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { - size_t required_size; /* Size of len encoding */ - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - int i; - - if(len <= 127) { - /* Encoded in 1 octet */ - if(size) *buf = (uint8_t)len; - return 1; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 8; i < 8 * (int)sizeof(len); i += 8) { - if(len >> i) - required_size++; - else - break; - } - - if(size <= required_size) - return required_size + 1; - - *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ - - /* - * Produce the len encoding, space permitting. - */ - end = buf + required_size; - for(i -= 8; buf < end; i -= 8, buf++) - *buf = (uint8_t)(len >> i); - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c deleted file mode 100644 index 64ec14f07..000000000 --- a/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c +++ /dev/null @@ -1,144 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -ssize_t -ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { - ber_tlv_tag_t val; - ber_tlv_tag_t tclass; - size_t skipped; - - if(size == 0) - return 0; - - val = *(const uint8_t *)ptr; - tclass = (val >> 6); - if((val &= 0x1F) != 0x1F) { - /* - * Simple form: everything encoded in a single octet. - * Tag Class is encoded using two least significant bits. - */ - *tag_r = (val << 2) | tclass; - return 1; - } - - /* - * Each octet contains 7 bits of useful information. - * The MSB is 0 if it is the last octet of the tag. - */ - for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; - skipped <= size; - ptr = ((const char *)ptr) + 1, skipped++) { - unsigned int oct = *(const uint8_t *)ptr; - if(oct & 0x80) { - val = (val << 7) | (oct & 0x7F); - /* - * Make sure there are at least 9 bits spare - * at the MS side of a value. - */ - if(val >> ((8 * sizeof(val)) - 9)) { - /* - * We would not be able to accommodate - * any more tag bits. - */ - return -1; - } - } else { - val = (val << 7) | oct; - *tag_r = (val << 2) | tclass; - return skipped; - } - } - - return 0; /* Want more */ -} - - -ssize_t -ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { - char buf[sizeof("[APPLICATION ]") + 32]; - ssize_t ret; - - ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - if(ret >= (ssize_t)sizeof(buf) || ret < 2) { - errno = EPERM; - return -1; - } - - return fwrite(buf, 1, ret, f); -} - -ssize_t -ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { - const char *type = 0; - int ret; - - switch(tag & 0x3) { - case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; - case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; - case ASN_TAG_CLASS_CONTEXT: type = ""; break; - case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; - } - - ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); - if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ - - return ret; -} - -char * -ber_tlv_tag_string(ber_tlv_tag_t tag) { - static char buf[sizeof("[APPLICATION ]") + 32]; - - (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); - - return buf; -} - - -size_t -ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { - int tclass = BER_TAG_CLASS(tag); - ber_tlv_tag_t tval = BER_TAG_VALUE(tag); - uint8_t *buf = (uint8_t *)bufp; - uint8_t *end; - size_t required_size; - size_t i; - - if(tval <= 30) { - /* Encoded in 1 octet */ - if(size) buf[0] = (tclass << 6) | tval; - return 1; - } else if(size) { - *buf++ = (tclass << 6) | 0x1F; - size--; - } - - /* - * Compute the size of the subsequent bytes. - */ - for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { - if(tval >> i) - required_size++; - else - break; - } - - if(size < required_size) - return required_size + 1; - - /* - * Fill in the buffer, space permitting. - */ - end = buf + required_size - 1; - for(i -= 7; buf < end; i -= 7, buf++) - *buf = 0x80 | ((tval >> i) & 0x7F); - *buf = (tval & 0x7F); /* Last octet without high bit */ - - return required_size + 1; -} - diff --git a/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c b/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c deleted file mode 100644 index 721409213..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c +++ /dev/null @@ -1,1513 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num;\ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * See the definitions. - */ -static unsigned _fetch_present_idx(const void *struct_ptr, unsigned off, - unsigned size); -static void _set_present_idx(void *sptr, unsigned offset, unsigned size, - unsigned present); -static const void *_get_member_ptr(const asn_TYPE_descriptor_t *, - const void *sptr, asn_TYPE_member_t **elm, - unsigned *present); - -/* - * Tags are canonically sorted in the tag to member table. - */ -static int -_search4tag(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) - return 0; - else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * The decoder of the CHOICE type. - */ -asn_dec_rval_t -CHOICE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - ssize_t tag_len; /* Length of TLV's T */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as CHOICE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - if(tag_mode || td->tags_count) { - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, -1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) { - /* ?Subtracted below! */ - ctx->left += rval.consumed; - } - ADVANCE(rval.consumed); - } else { - ctx->left = -1; - } - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - do { - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key; - - key.el_tag = tlv_tag; - t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _search4tag); - if(t2m) { - /* - * Found the element corresponding to the tag. - */ - NEXT_PHASE(ctx); - ctx->step = t2m->el_no; - break; - } else if(specs->ext_start == -1) { - ASN_DEBUG("Unexpected tag %s " - "in non-extensible CHOICE %s", - ber_tlv_tag_string(tlv_tag), td->name); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - - ASN_DEBUG("Skipping unknown tag %s", - ber_tlv_tag_string(tlv_tag)); - - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - RETURN(RC_OK); - } - } while(0); - - case 2: - /* - * PHASE 2. - * Read in the element. - */ - do { - asn_TYPE_member_t *elm;/* CHOICE's element */ - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &elements[ctx->step]; - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - /* Set presence to be able to free it properly at any time */ - _set_present_idx(st, specs->pres_offset, - specs->pres_size, ctx->step + 1); - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->op->ber_decoder(opt_codec_ctx, elm->type, - memb_ptr2, ptr, LEFT, elm->tag_mode); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - RETURN(RC_FAIL); - case RC_FAIL: /* Fatal error */ - RETURN(rval.code); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } while(0); - - NEXT_PHASE(ctx); - - /* Fall through */ - case 3: - ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", - td->name, (long)ctx->left, (long)size, - tag_mode, td->tags_count); - - if(ctx->left > 0) { - /* - * The type must be fully decoded - * by the CHOICE member-specific decoder. - */ - RETURN(RC_FAIL); - } - - if(ctx->left == -1 - && !(tag_mode || td->tags_count)) { - /* - * This is an untagged CHOICE. - * It doesn't contain nothing - * except for the member itself, including all its tags. - * The decoding is completed. - */ - NEXT_PHASE(ctx); - break; - } - - /* - * Read in the "end of data chunks"'s. - */ - while(ctx->left < 0) { - ssize_t tl; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * Expected <0><0>... - */ - if(((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - continue; - } - } else { - ASN_DEBUG("Unexpected continuation in %s", - td->name); - RETURN(RC_FAIL); - } - - /* UNREACHABLE */ - } - - NEXT_PHASE(ctx); - case 4: - /* No meaningful work here */ - break; - } - - RETURN(RC_OK); -} - -asn_enc_rval_t -CHOICE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE element */ - asn_enc_rval_t erval = {0,0,0}; - const void *memb_ptr; - size_t computed_size = 0; - unsigned present; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("%s %s as CHOICE", - cb?"Encoding":"Estimating", td->name); - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present == 0 || present > td->elements_count) { - if(present == 0 && td->elements_count == 0) { - /* The CHOICE is empty?! */ - erval.encoded = 0; - ASN__ENCODED_OK(erval); - } - ASN__ENCODE_FAILED; - } - - /* - * Seek over the present member of the structure. - */ - elm = &td->elements[present-1]; - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(memb_ptr == 0) { - if(elm->optional) { - erval.encoded = 0; - ASN__ENCODED_OK(erval); - } - /* Mandatory element absent */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* - * If the CHOICE itself is tagged EXPLICIT: - * T ::= [2] EXPLICIT CHOICE { ... } - * Then emit the appropriate tags. - */ - if(tag_mode == 1 || td->tags_count) { - /* - * For this, we need to pre-compute the member. - */ - ssize_t ret; - - /* Encode member with its tag */ - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, 0, 0); - if(erval.encoded == -1) - return erval; - - /* Encode CHOICE with parent or my own tag */ - ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, - cb, app_key); - if(ret == -1) - ASN__ENCODE_FAILED; - computed_size += ret; - } - - /* - * Encode the single underlying member. - */ - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - elm->tag_mode, elm->tag, cb, app_key); - if(erval.encoded == -1) - return erval; - - ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", - (long)erval.encoded, (long)computed_size); - - erval.encoded += computed_size; - - return erval; -} - -ber_tlv_tag_t -CHOICE_outmost_tag(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - assert(tag_mode == 0); (void)tag_mode; - assert(tag == 0); (void)tag; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - if(present > 0 && present <= td->elements_count) { - const asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *) - ((const char *)ptr + elm->memb_offset); - } else { - memb_ptr = (const void *) - ((const char *)ptr + elm->memb_offset); - } - - return asn_TYPE_outmost_tag(elm->type, memb_ptr, - elm->tag_mode, elm->tag); - } else { - return (ber_tlv_tag_t)-1; - } -} - -int -CHOICE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - return 0; - ASN__CTFAIL(app_key, td, sptr, - "%s: mandatory CHOICE element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(elm->encoding_constraints.general_constraints) { - return elm->encoding_constraints.general_constraints(elm->type, memb_ptr, - ctfailcb, app_key); - } else { - return elm->type->encoding_constraints.general_constraints(elm->type, - memb_ptr, ctfailcb, app_key); - } - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: no CHOICE element given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -CHOICE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value of a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* Element index */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - if(ctx->phase == 0 && !*xml_tag) - ctx->phase = 1; /* Skip the outer tag checking phase */ - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Only waiting for closing tag. - * Phase 4: Skipping unknown extensions. - * Phase 5: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 4;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - - /* - * Go inside the member. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - unsigned old_present; - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st - + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Start/Continue decoding the inner member */ - tmprval = elm->type->op->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, elm->name, - buf_ptr, size); - XER_ADVANCE(tmprval.consumed); - ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", - elm->type->name, tmprval.code); - old_present = _fetch_present_idx(st, - specs->pres_offset, specs->pres_size); - assert(old_present == 0 || old_present == edx + 1); - /* Record what we've got */ - _set_present_idx(st, - specs->pres_offset, specs->pres_size, edx + 1); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - ctx->phase = 3; - /* Fall through */ - } - - /* No need to wait for closing tag; special mode. */ - if(ctx->phase == 3 && !*xml_tag) { - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - xml_tag, tcv); - - /* Skip the extensions section */ - if(ctx->phase == 4) { - ASN_DEBUG("skip_unknown(%d, %ld)", - tcv, (long)ctx->left); - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 5; - RETURN(RC_FAIL); - case 1: - ctx->phase = 3; - /* Fall through */ - case 0: - XER_ADVANCE(ch_size); - continue; - case 2: - ctx->phase = 3; - break; - } - } - - switch(tcv) { - case XCT_BOTH: - break; /* No CHOICE? */ - case XCT_CLOSING: - if(ctx->phase != 3) - break; - XER_ADVANCE(ch_size); - ctx->phase = 5; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - if(ctx->phase != 1) - break; /* Really unexpected */ - - /* - * Search which inner member corresponds to this tag. - */ - for(edx = 0; edx < td->elements_count; edx++) { - elm = &td->elements[edx]; - tcv = xer_check_tag(buf_ptr,ch_size,elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - edx = td->elements_count; - break; /* Phase out */ - } - break; - } - if(edx != td->elements_count) - continue; - - /* It is expected extension */ - if(specs->ext_start != -1) { - ASN_DEBUG("Got anticipated extension"); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - ctx->phase = 3; /* Terminating */ - } else { - ctx->left = 1; - ctx->phase = 4; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" - " (ph=%d, tag=%s)", - ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', - ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', - ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', - ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', - td->name, ctx->phase, xml_tag); - break; - } - - ctx->phase = 5; /* Phase out, just in case */ - RETURN(RC_FAIL); -} - - -asn_enc_rval_t -CHOICE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - unsigned present = 0; - - if(!sptr) - ASN__ENCODE_FAILED; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - if(present == 0 || present > td->elements_count) { - ASN__ENCODE_FAILED; - } else { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr = NULL; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - er.encoded = 0; - - if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, - ilevel + 1, flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("", 1); - } - - if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -asn_dec_rval_t -CHOICE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_dec_rval_t rv; - const asn_per_constraint_t *ct; - asn_TYPE_member_t *elm; /* CHOICE's element */ - void *memb_ptr; - void **memb_ptr2; - void *st = *sptr; - int value; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted */ - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - ASN_DEBUG("CHOICE %s got index %d in range %d", - td->name, value, ct->range_bits); - if(value > ct->upper_bound) - ASN__DECODE_FAILED; - } else { - if(specs->ext_start == -1) - ASN__DECODE_FAILED; - value = uper_get_nsnnwn(pd); - if(value < 0) ASN__DECODE_STARVED; - value += specs->ext_start; - if((unsigned)value >= td->elements_count) - ASN__DECODE_FAILED; - } - - /* Adjust if canonical order is different from natural order */ - if(specs->from_canonical_order) { - ASN_DEBUG("CHOICE presence from wire %d", value); - value = specs->from_canonical_order[value]; - ASN_DEBUG("CHOICE presence index effective %d", value); - } - - /* Set presence to be able to free it later */ - _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); - - elm = &td->elements[value]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); - - if(ct && ct->range_bits >= 0) { - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } else { - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } - - if(rv.code != RC_OK) - ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", - elm->name, td->name, rv.code); - return rv; -} - -asn_enc_rval_t -CHOICE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE's element */ - const asn_per_constraint_t *ct; - const void *memb_ptr; - unsigned present; - int present_enc; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s as CHOICE", td->name); - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized properly, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present == 0 || present > td->elements_count) - ASN__ENCODE_FAILED; - else - present--; - - ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); - - /* Adjust if canonical order is different from natural order */ - if(specs->to_canonical_order) - present_enc = specs->to_canonical_order[present]; - else - present_enc = present; - - if(ct && ct->range_bits >= 0) { - if(present_enc < ct->lower_bound - || present_enc > ct->upper_bound) { - if(ct->flags & APC_EXTENSIBLE) { - ASN_DEBUG( - "CHOICE member %d (enc %d) is an extension (%ld..%ld)", - present, present_enc, ct->lower_bound, ct->upper_bound); - if(per_put_few_bits(po, 1, 1)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - ct = 0; - } - } - if(ct && ct->flags & APC_EXTENSIBLE) { - ASN_DEBUG("CHOICE member %d (enc %d) is not an extension (%ld..%ld)", - present, present_enc, ct->lower_bound, ct->upper_bound); - if(per_put_few_bits(po, 0, 1)) - ASN__ENCODE_FAILED; - } - - - elm = &td->elements[present]; - ASN_DEBUG("CHOICE member \"%s\" %d (as %d)", elm->name, present, - present_enc); - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, present_enc, ct->range_bits)) - ASN__ENCODE_FAILED; - - return elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, memb_ptr, po); - } else { - asn_enc_rval_t rval = {0,0,0}; - if(specs->ext_start == -1) ASN__ENCODE_FAILED; - if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) - ASN__ENCODE_FAILED; - if(uper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, po)) - ASN__ENCODE_FAILED; - rval.encoded = 0; - ASN__ENCODED_OK(rval); - } -} - -asn_dec_rval_t -CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - asn_dec_rval_t rv; - const asn_per_constraint_t *ct; - asn_TYPE_member_t *elm; /* CHOICE's element */ - void *memb_ptr; - void **memb_ptr2; - void *st = *sptr; - int value; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted */ - } - - if(ct && ct->range_bits >= 0) { - value = per_get_few_bits(pd, ct->range_bits); - if(value < 0) ASN__DECODE_STARVED; - ASN_DEBUG("CHOICE %s got index %d in range %d", - td->name, value, ct->range_bits); - if(value > ct->upper_bound) - ASN__DECODE_FAILED; - } else { - if(specs->ext_start == -1) - ASN__DECODE_FAILED; - value = uper_get_nsnnwn(pd); - if(value < 0) ASN__DECODE_STARVED; - value += specs->ext_start; - if((unsigned)value >= td->elements_count) - ASN__DECODE_FAILED; - } - - /* Adjust if canonical order is different from natural order */ - if(specs->from_canonical_order) - value = specs->from_canonical_order[value]; - - /* Set presence to be able to free it later */ - _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); - - elm = &td->elements[value]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); - - if(ct && ct->range_bits >= 0) { - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } else { - rv = aper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } - - if(rv.code != RC_OK) - ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", - elm->name, td->name, rv.code); - return rv; -} - -asn_enc_rval_t -CHOICE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm; /* CHOICE's element */ - const asn_per_constraint_t *ct; - const void *memb_ptr; - int present; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s as CHOICE using ALIGNED PER", td->name); - - if(constraints) ct = &constraints->value; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->value; - else ct = 0; - - present = _fetch_present_idx(sptr, - specs->pres_offset, specs->pres_size); - - /* - * If the structure was not initialized properly, it cannot be encoded: - * can't deduce what to encode in the choice type. - */ - if(present <= 0 || (unsigned)present > td->elements_count) - ASN__ENCODE_FAILED; - else - present--; - - /* Adjust if canonical order is different from natural order */ - if(specs->to_canonical_order) - present = specs->to_canonical_order[present]; - - ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); - - if(ct && ct->range_bits >= 0) { - if(present < ct->lower_bound - || present > ct->upper_bound) { - if(ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, 1, 1)) - ASN__ENCODE_FAILED; - } else { - ASN__ENCODE_FAILED; - } - ct = 0; - } - } - if(ct && ct->flags & APC_EXTENSIBLE) { - if(per_put_few_bits(po, 0, 1)) - ASN__ENCODE_FAILED; - } - - elm = &td->elements[present]; - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr = *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) ASN__ENCODE_FAILED; - } else { - memb_ptr = (const char *)sptr + elm->memb_offset; - } - - if(ct && ct->range_bits >= 0) { - if(per_put_few_bits(po, present, ct->range_bits)) - ASN__ENCODE_FAILED; - - return elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, - memb_ptr, po); - } else { - asn_enc_rval_t rval = {0,0,0}; - if(specs->ext_start == -1) - ASN__ENCODE_FAILED; - int n = present - specs->ext_start; - if(n <= 63) { - if(n < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n, 7)) ASN__ENCODE_FAILED; - } else - ASN__ENCODE_FAILED; - if(aper_open_type_put(elm->type, elm->encoding_constraints.per_constraints, - memb_ptr, po)) - ASN__ENCODE_FAILED; - rval.encoded = 0; - ASN__ENCODED_OK(rval); - } -} - -int -CHOICE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); - - /* - * Print that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Print member's name and stuff */ - if(0) { - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - } - - return elm->type->op->print_struct(elm->type, memb_ptr, ilevel, - cb, app_key); - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -void -CHOICE_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!td || !ptr) - return; - - ASN_DEBUG("Freeing %s as CHOICE", td->name); - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); - - /* - * Free that element. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *elm = &td->elements[present-1]; - void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)ptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)ptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, specs->struct_size); - break; - } -} - - -/* - * The following functions functions offer protection against -fshort-enums, - * compatible with little- and big-endian machines. - * If assertion is triggered, either disable -fshort-enums, or add an entry - * here with the ->pres_size of your target stracture. - * Unless the target structure is packed, the ".present" member - * is guaranteed to be aligned properly. ASN.1 compiler itself does not - * produce packed code. - */ -static unsigned -_fetch_present_idx(const void *struct_ptr, unsigned pres_offset, - unsigned pres_size) { - const void *present_ptr; - unsigned present; - - present_ptr = ((const char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): present = *(const unsigned int *)present_ptr; break; - case sizeof(short): present = *(const unsigned short *)present_ptr; break; - case sizeof(char): present = *(const unsigned char *)present_ptr; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - return 0; /* If not aborted, pass back safe value */ - } - - return present; -} - -static void -_set_present_idx(void *struct_ptr, unsigned pres_offset, unsigned pres_size, - unsigned present) { - void *present_ptr; - present_ptr = ((char *)struct_ptr) + pres_offset; - - switch(pres_size) { - case sizeof(int): *(unsigned int *)present_ptr = present; break; - case sizeof(short): *(unsigned short *)present_ptr = present; break; - case sizeof(char): *(unsigned char *)present_ptr = present; break; - default: - /* ANSI C mandates enum to be equivalent to integer */ - assert(pres_size != sizeof(int)); - } -} - -static const void * -_get_member_ptr(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_TYPE_member_t **elm_ptr, unsigned *present_out) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned present; - - if(!sptr) { - *elm_ptr = NULL; - *present_out = 0; - return NULL; - } - - /* - * Figure out which CHOICE element is encoded. - */ - present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - *present_out = present; - - /* - * The presence index is intentionally 1-based to avoid - * treating zeroed structure as a valid one. - */ - if(present > 0 && present <= td->elements_count) { - asn_TYPE_member_t *const elm = &td->elements[present - 1]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - *elm_ptr = elm; - return memb_ptr; - } else { - *elm_ptr = NULL; - return NULL; - } - -} - -int -CHOICE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { - asn_TYPE_member_t *aelm; - asn_TYPE_member_t *belm; - unsigned apresent = 0; - unsigned bpresent = 0; - const void *amember = _get_member_ptr(td, aptr, &aelm, &apresent); - const void *bmember = _get_member_ptr(td, bptr, &belm, &bpresent); - - if(amember && bmember) { - if(apresent == bpresent) { - assert(aelm == belm); - return aelm->type->op->compare_struct(aelm->type, amember, bmember); - } else if(apresent < bpresent) { - return -1; - } else { - return 1; - } - } else if(!amember) { - return -1; - } else { - return 1; - } -} - -/* - * Return the 1-based choice variant presence index. - * Returns 0 in case of error. - */ -unsigned -CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, const void *sptr) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - return _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); -} - -/* - * Sets or resets the 1-based choice variant presence index. - * In case a previous index is not zero, the currently selected structure - * member is freed and zeroed-out first. - * Returns 0 on success and -1 on error. - */ -int -CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, void *sptr, - unsigned present) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - unsigned old_present; - - if(!sptr) { - return -1; - } - - if(present > td->elements_count) - return -1; - - old_present = - _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); - if(present == old_present) - return 0; - - if(old_present != 0) { - assert(old_present <= td->elements_count); - ASN_STRUCT_RESET(*td, sptr); - } - - _set_present_idx(sptr, specs->pres_offset, specs->pres_size, present); - - return 0; -} - - -asn_random_fill_result_t -CHOICE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_random_fill_result_t res; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - const asn_TYPE_member_t *elm; - unsigned present; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - void *st = *sptr; - - if(max_length == 0) return result_skipped; - - (void)constr; - - if(st == NULL) { - st = CALLOC(1, specs->struct_size); - if(st == NULL) { - return result_failed; - } - } - - present = asn_random_between(1, td->elements_count); - elm = &td->elements[present - 1]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - res = elm->type->op->random_fill(elm->type, memb_ptr2, - &elm->encoding_constraints, max_length); - _set_present_idx(st, specs->pres_offset, specs->pres_size, present); - if(res.code == ARFILL_OK) { - *sptr = st; - } else { - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - } - - return res; -} - - -asn_TYPE_operation_t asn_OP_CHOICE = { - CHOICE_free, - CHOICE_print, - CHOICE_compare, - CHOICE_decode_ber, - CHOICE_encode_der, - CHOICE_decode_xer, - CHOICE_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - CHOICE_decode_oer, - CHOICE_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - CHOICE_decode_uper, - CHOICE_encode_uper, - CHOICE_decode_aper, - CHOICE_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - CHOICE_random_fill, - CHOICE_outmost_tag -}; diff --git a/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c deleted file mode 100644 index 18f148609..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c +++ /dev/null @@ -1,380 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef SET_PHASE -#define SET_PHASE(ctx, value) \ - do { \ - ctx->phase = value; \ - ctx->step = 0; \ - } while(0) - -/* - * Tags are canonically sorted in the tag to member table. - */ -static int -_search4tag(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) - return 0; - else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - -/* - * X.696 (08/2015) #8.7 Encoding of tags - */ -static ssize_t -oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { - ber_tlv_tag_t val; - ber_tlv_tag_t tclass; - size_t skipped; - - if(size == 0) - return 0; - - val = *(const uint8_t *)ptr; - tclass = (val >> 6); - if((val & 0x3F) != 0x3F) { - /* #8.7.1 */ - *tag_r = ((val & 0x3F) << 2) | tclass; - return 1; - } - - /* - * Each octet contains 7 bits of useful information. - * The MSB is 0 if it is the last octet of the tag. - */ - for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size; - ptr = ((const char *)ptr) + 1, skipped++) { - unsigned int oct = *(const uint8_t *)ptr; - if(oct & 0x80) { - val = (val << 7) | (oct & 0x7F); - /* - * Make sure there are at least 9 bits spare - * at the MS side of a value. - */ - if(val >> ((8 * sizeof(val)) - 9)) { - /* - * We would not be able to accommodate - * any more tag bits. - */ - return -1; - } - } else { - val = (val << 7) | oct; - *tag_r = (val << 2) | tclass; - return skipped; - } - } - - return 0; /* Want more */ -} - -asn_dec_rval_t -CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - (void)constraints; - - ASN_DEBUG("Decoding %s as CHOICE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - switch(ctx->phase) { - case 0: { - /* - * Discover the tag. - */ - ber_tlv_tag_t tlv_tag; /* T from TLV */ - ssize_t tag_len; /* Length of TLV's T */ - - tag_len = oer_fetch_tag(ptr, size, &tlv_tag); - switch(tag_len) { - case 0: - ASN__DECODE_STARVED; - case -1: - ASN__DECODE_FAILED; - } - - do { - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key = {0, 0, 0, 0}; - key.el_tag = tlv_tag; - - t2m = (const asn_TYPE_tag2member_t *)bsearch( - &key, specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _search4tag); - if(t2m) { - /* - * Found the element corresponding to the tag. - */ - NEXT_PHASE(ctx); - ctx->step = t2m->el_no; - break; - } else if(specs->ext_start == -1) { - ASN_DEBUG( - "Unexpected tag %s " - "in non-extensible CHOICE %s", - ber_tlv_tag_string(tlv_tag), td->name); - RETURN(RC_FAIL); - } else { - /* Skip open type extension */ - ASN_DEBUG( - "Not implemented skipping open type extension for tag %s", - ber_tlv_tag_string(tlv_tag)); - RETURN(RC_FAIL); - } - } while(0); - - - ADVANCE(tag_len); - } - /* Fall through */ - case 1: { - asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */ - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - asn_dec_rval_t rval = {0,0}; - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Set presence to be able to free it properly at any time */ - (void)CHOICE_variant_set_presence(td, st, ctx->step + 1); - - if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) { - ssize_t got = - oer_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr2, ptr, size); - if(got < 0) ASN__DECODE_FAILED; - if(got == 0) ASN__DECODE_STARVED; - rval.code = RC_OK; - rval.consumed = got; - } else { - rval = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, - size); - } - rval.consumed += consumed_myself; - switch(rval.code) { - case RC_OK: - NEXT_PHASE(ctx); - case RC_WMORE: - break; - case RC_FAIL: - SET_PHASE(ctx, 3); /* => 3 */ - } - return rval; - } - case 2: - /* Already decoded everything */ - RETURN(RC_OK); - case 3: - /* Failed to decode, after all */ - RETURN(RC_FAIL); - } - - RETURN(RC_FAIL); -} - -/* - * X.696 (08/2015) #8.7 Encoding of tags - */ -static ssize_t -oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { - uint8_t tclass = BER_TAG_CLASS(tag); - ber_tlv_tag_t tval = BER_TAG_VALUE(tag); - - if(tval < 0x3F) { - uint8_t b = (uint8_t)((tclass << 6) | tval); - if(cb(&b, 1, app_key) < 0) { - return -1; - } - return 1; - } else { - uint8_t buf[1 + 2 * sizeof(tval)]; - uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */ - size_t encoded; - for(; ; tval >>= 7) { - if(tval >> 7) { - *b-- = 0x80 | (tval & 0x7f); - } else { - *b-- = tval & 0x7f; - break; - } - } - *b = (uint8_t)((tclass << 6) | 0x3F); - encoded = sizeof(buf) - (b - buf); - if(cb(b, encoded, app_key) < 0) { - return -1; - } - return encoded; - } - -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -CHOICE_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_CHOICE_specifics_t *specs = - (const asn_CHOICE_specifics_t *)td->specifics; - asn_TYPE_member_t *elm; /* CHOICE element */ - unsigned present; - const void *memb_ptr; - ber_tlv_tag_t tag; - ssize_t tag_len; - asn_enc_rval_t er = {0, 0, 0}; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - ASN_DEBUG("OER %s encoding as CHOICE", td->name); - - present = CHOICE_variant_get_presence(td, sptr); - if(present == 0 || present > td->elements_count) { - ASN_DEBUG("CHOICE %s member is not selected", td->name); - ASN__ENCODE_FAILED; - } - - elm = &td->elements[present-1]; - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(memb_ptr == 0) { - /* Mandatory element absent */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag); - if(tag == 0) { - ASN__ENCODE_FAILED; - } - - tag_len = oer_put_tag(tag, cb, app_key); - if(tag_len < 0) { - ASN__ENCODE_FAILED; - } - - if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) { - ssize_t encoded = oer_open_type_put(elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr, cb, app_key); - if(encoded < 0) ASN__ENCODE_FAILED; - er.encoded = tag_len + encoded; - } else { - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded >= 0) er.encoded += tag_len; - } - - return er; -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c deleted file mode 100644 index ed7c7015c..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c +++ /dev/null @@ -1,2063 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -/* - * Tags are canonically sorted in the tag2element map. - */ -static int -_t2e_cmp(const void *ap, const void *bp) { - const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; - const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; - - int a_class = BER_TAG_CLASS(a->el_tag); - int b_class = BER_TAG_CLASS(b->el_tag); - - if(a_class == b_class) { - ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); - ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); - - if(a_value == b_value) { - if(a->el_no > b->el_no) - return 1; - /* - * Important: we do not check - * for a->el_no <= b->el_no! - */ - return 0; - } else if(a_value < b_value) - return -1; - else - return 1; - } else if(a_class < b_class) { - return -1; - } else { - return 1; - } -} - - -/* - * The decoder of the SEQUENCE type. - */ -asn_dec_rval_t -SEQUENCE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - const asn_TYPE_member_t *elements = td->elements; - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* SEQUENCE element's index */ - - ASN_DEBUG("Decoding %s as SEQUENCE", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Subtracted below! */ - ADVANCE(rval.consumed); - - NEXT_PHASE(ctx); - - ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", - (long)ctx->left, (long)size); - - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next member from the list of - * this structure's elements. - * (ctx->step) stores the member being processed - * between invocations and the microphase {0,1} of parsing - * that member: - * step = ( * 2 + ). - */ - for(edx = ((size_t)ctx->step >> 1); edx < td->elements_count; - edx++, ctx->step = (ctx->step & ~1) + 2) { - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - ssize_t tag_len; /* Length of TLV's T */ - size_t opt_edx_end; /* Next non-optional element */ - size_t n; - int use_bsearch; - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - ASN_DEBUG("In %s SEQUENCE left %d, edx=%" ASN_PRI_SIZE " flags=%d" - " opt=%d ec=%d", - td->name, (int)ctx->left, edx, - elements[edx].flags, elements[edx].optional, - td->elements_count); - - if(ctx->left == 0 /* No more stuff is expected */ - && ( - /* Explicit OPTIONAL specification reaches the end */ - (edx + elements[edx].optional == td->elements_count) || - /* All extensions are optional */ - IN_EXTENSION_GROUP(specs, edx))) { - ASN_DEBUG("End of SEQUENCE %s", td->name); - /* - * Found the legitimate end of the structure. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - ASN_DEBUG("Current tag in %s SEQUENCE for element %" ASN_PRI_SIZE " " - "(%s) is %s encoded in %d bytes, of frame %ld", - td->name, edx, elements[edx].name, - ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) { - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - } else if(((const uint8_t *)ptr)[1] == 0) { - ASN_DEBUG("edx = %" ASN_PRI_SIZE ", opt = %d, ec=%d", edx, - elements[edx].optional, td->elements_count); - if((edx + elements[edx].optional == td->elements_count) - || IN_EXTENSION_GROUP(specs, edx)) { - /* - * Yeah, baby! Found the terminator - * of the indefinite length structure. - */ - /* - * Proceed to the canonical - * finalization function. - * No advancing is necessary. - */ - goto phase3; - } - } - } - - /* - * Find the next available type with this tag. - */ - use_bsearch = 0; - opt_edx_end = edx + elements[edx].optional + 1; - if(opt_edx_end > td->elements_count) - opt_edx_end = td->elements_count; /* Cap */ - else if(opt_edx_end - edx > 8) { - /* Limit the scope of linear search... */ - opt_edx_end = edx + 8; - use_bsearch = 1; - /* ... and resort to bsearch() */ - } - for(n = edx; n < opt_edx_end; n++) { - if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { - /* - * Found element corresponding to the tag - * being looked at. - * Reposition over the right element. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].flags & ATF_ANY_TYPE) { - /* - * This is the ANY type, which may bear - * any flag whatsoever. - */ - edx = n; - ctx->step = 1 + 2 * edx; /* Remember! */ - goto microphase2; - } else if(elements[n].tag == (ber_tlv_tag_t)-1) { - use_bsearch = 1; - break; - } - } - if(use_bsearch) { - /* - * Resort to a binary search over - * sorted array of tags. - */ - const asn_TYPE_tag2member_t *t2m; - asn_TYPE_tag2member_t key = {0, 0, 0, 0}; - key.el_tag = tlv_tag; - key.el_no = edx; - t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, - specs->tag2el, specs->tag2el_count, - sizeof(specs->tag2el[0]), _t2e_cmp); - if(t2m) { - const asn_TYPE_tag2member_t *best = 0; - const asn_TYPE_tag2member_t *t2m_f, *t2m_l; - size_t edx_max = edx + elements[edx].optional; - /* - * Rewind to the first element with that tag, - * `cause bsearch() does not guarantee order. - */ - t2m_f = t2m + t2m->toff_first; - t2m_l = t2m + t2m->toff_last; - for(t2m = t2m_f; t2m <= t2m_l; t2m++) { - if(t2m->el_no > edx_max) break; - if(t2m->el_no < edx) continue; - best = t2m; - } - if(best) { - edx = best->el_no; - ctx->step = 1 + 2 * edx; - goto microphase2; - } - } - n = opt_edx_end; - } - if(n == opt_edx_end) { - /* - * If tag is unknown, it may be either - * an unknown (thus, incorrect) tag, - * or an extension (...), - * or an end of the indefinite-length structure. - */ - if(!IN_EXTENSION_GROUP(specs, - edx + elements[edx].optional)) { - ASN_DEBUG("Unexpected tag %s (at %" ASN_PRI_SIZE ")", - ber_tlv_tag_string(tlv_tag), edx); - ASN_DEBUG("Expected tag %s (%s)%s", - ber_tlv_tag_string(elements[edx].tag), - elements[edx].name, - elements[edx].optional - ?" or alternatives":""); - RETURN(RC_FAIL); - } else { - /* Skip this tag */ - ssize_t skip; - edx += elements[edx].optional; - - ASN_DEBUG("Skipping unexpected %s (at %" ASN_PRI_SIZE ")", - ber_tlv_tag_string(tlv_tag), edx); - skip = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tag_len, - LEFT - tag_len); - ASN_DEBUG("Skip length %d in %s", - (int)skip, td->name); - switch(skip) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(skip + tag_len); - ctx->step -= 2; - edx--; - continue; /* Try again with the next tag */ - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); - - /* - * Compute the position of the member inside a structure, - * and also a type of containment (it may be contained - * as pointer or using inline inclusion). - */ - if(elements[edx].flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); - } else { - /* - * A pointer to a pointer - * holding the start of the structure - */ - memb_ptr = (char *)st + elements[edx].memb_offset; - memb_ptr2 = &memb_ptr; - } - /* - * Invoke the member fetch routine according to member's type - */ - if(elements[edx].flags & ATF_OPEN_TYPE) { - rval = OPEN_TYPE_ber_get(opt_codec_ctx, td, st, &elements[edx], ptr, LEFT); - } else { - rval = elements[edx].type->op->ber_decoder(opt_codec_ctx, - elements[edx].type, - memb_ptr2, ptr, LEFT, - elements[edx].tag_mode); - } - ASN_DEBUG("In %s SEQUENCE decoded %" ASN_PRI_SIZE " %s of %d " - "in %d bytes rval.code %d, size=%d", - td->name, edx, elements[edx].type->name, - (int)LEFT, (int)rval.consumed, rval.code, (int)size); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", - (long)ctx->left, (long)size); - /* Fall through */ - case RC_FAIL: /* Fatal error */ - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all structure members) */ - - phase3: - ctx->phase = 3; - /* Fall through */ - case 3: /* 00 and other tags expected */ - case 4: /* only 00's expected */ - - ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", - td->name, (long)ctx->left, (long)size); - - /* - * Skip everything until the end of the SEQUENCE. - */ - while(ctx->left) { - ssize_t tl, ll; - - tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tl) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - /* - * If expected <0><0>... - */ - if(ctx->left < 0 - && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Correctly finished with <0><0>. - */ - ADVANCE(2); - ctx->left++; - ctx->phase = 4; - continue; - } - } - - if(!IN_EXTENSION_GROUP(specs, td->elements_count) - || ctx->phase == 4) { - ASN_DEBUG("Unexpected continuation " - "of a non-extensible type " - "%s (SEQUENCE): %s", - td->name, - ber_tlv_tag_string(tlv_tag)); - RETURN(RC_FAIL); - } - - ll = ber_skip_length(opt_codec_ctx, - BER_TLV_CONSTRUCTED(ptr), - (const char *)ptr + tl, LEFT - tl); - switch(ll) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - ADVANCE(tl + ll); - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - - -/* - * The DER encoder of the SEQUENCE type. - */ -asn_enc_rval_t -SEQUENCE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t computed_size = 0; - asn_enc_rval_t erval = {0,0,0}; - ssize_t ret; - size_t edx; - - ASN_DEBUG("%s %s as SEQUENCE", - cb?"Encoding":"Estimating", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - erval = elm->type->op->der_encoder(elm->type, *memb_ptr2, - elm->tag_mode, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - ASN_DEBUG("Member %" ASN_PRI_SIZE " %s estimated %ld bytes", - edx, elm->name, (long)erval.encoded); - } - - /* - * Encode the TLV for the sequence itself. - */ - ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); - ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); - if(ret == -1) - ASN__ENCODE_FAILED; - erval.encoded = computed_size + ret; - - if(!cb) ASN__ENCODED_OK(erval); - - /* - * Encode all members. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - asn_enc_rval_t tmperval = {0,0,0}; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) continue; - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - tmperval = elm->type->op->der_encoder(elm->type, *memb_ptr2, - elm->tag_mode, elm->tag, cb, app_key); - if(tmperval.encoded == -1) - return tmperval; - computed_size -= tmperval.encoded; - ASN_DEBUG("Member %" ASN_PRI_SIZE " %s of SEQUENCE %s encoded in %ld bytes", - edx, elm->name, td->name, (long)tmperval.encoded); - } - - if(computed_size != 0) - /* - * Encoded size is not equal to the computed size. - */ - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(erval); -} - - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) \ - do { \ - size_t num = (num_bytes); \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SEQUENCE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_TYPE_member_t *elements = td->elements; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval; /* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - size_t edx; /* Element index */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - * Phase 3: Skipping unknown extensions. - * Phase 4: PHASED OUT - */ - for(edx = ctx->step; ctx->phase <= 3;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - asn_TYPE_member_t *elm; - - /* - * Go inside the inner member of a sequence. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval; - void *memb_ptr_dontuse; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - elm = &td->elements[edx]; - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr_dontuse = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr_dontuse; /* Only use of memb_ptr_dontuse */ - } - - if(elm->flags & ATF_OPEN_TYPE) { - tmprval = OPEN_TYPE_xer_get(opt_codec_ctx, td, st, elm, ptr, size); - } else { - /* Invoke the inner type decoder, m.b. multiple times */ - tmprval = elm->type->op->xer_decoder(opt_codec_ctx, - elm->type, memb_ptr2, elm->name, - ptr, size); - } - XER_ADVANCE(tmprval.consumed); - if(tmprval.code != RC_OK) - RETURN(tmprval.code); - ctx->phase = 1; /* Back to body processing */ - ctx->step = ++edx; - ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", - ctx->phase, ctx->step); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, ptr, size, - &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", - tcv, ctx->phase, xml_tag); - - /* Skip the extensions section */ - if(ctx->phase == 3) { - switch(xer_skip_unknown(tcv, &ctx->left)) { - case -1: - ctx->phase = 4; - RETURN(RC_FAIL); - case 0: - XER_ADVANCE(ch_size); - continue; - case 1: - XER_ADVANCE(ch_size); - ctx->phase = 1; - continue; - case 2: - ctx->phase = 1; - break; - } - } - - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - if(edx >= td->elements_count || - /* Explicit OPTIONAL specs reaches the end */ - (edx + elements[edx].optional == td->elements_count) || - /* All extensions are optional */ - IN_EXTENSION_GROUP(specs, edx)) { - XER_ADVANCE(ch_size); - ctx->phase = 4; /* Phase out */ - RETURN(RC_OK); - } else { - ASN_DEBUG("Premature end of XER SEQUENCE"); - RETURN(RC_FAIL); - } - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%" ASN_PRI_SIZE "", - tcv, ctx->phase, edx); - if(ctx->phase != 1) { - break; /* Really unexpected */ - } - - if(edx < td->elements_count) { - /* - * Search which member corresponds to this tag. - */ - size_t n; - size_t edx_end = edx + elements[edx].optional + 1; - if(edx_end > td->elements_count) - edx_end = td->elements_count; - for(n = edx; n < edx_end; n++) { - elm = &td->elements[n]; - tcv = xer_check_tag(ptr, ch_size, elm->name); - switch(tcv) { - case XCT_BOTH: - case XCT_OPENING: - /* - * Process this member. - */ - ctx->step = edx = n; - ctx->phase = 2; - break; - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - continue; - default: - n = edx_end; - break; /* Phase out */ - } - break; - } - if(n != edx_end) - continue; - } else { - ASN_DEBUG("Out of defined members: %" ASN_PRI_SIZE "/%u", - edx, td->elements_count); - } - - /* It is expected extension */ - if(IN_EXTENSION_GROUP(specs, - edx + (edx < td->elements_count - ? elements[edx].optional : 0))) { - ASN_DEBUG("Got anticipated extension at %" ASN_PRI_SIZE "", - edx); - /* - * Check for (XCT_BOTH or XCT_UNKNOWN_BO) - * By using a mask. Only record a pure - * tags. - */ - if(tcv & XCT_CLOSING) { - /* Found without body */ - } else { - ctx->left = 1; - ctx->phase = 3; /* Skip ...'s */ - } - XER_ADVANCE(ch_size); - continue; - } - - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", - size>0?((const char *)ptr)[0]:'.', - size>1?((const char *)ptr)[1]:'.', - size>2?((const char *)ptr)[2]:'.', - size>3?((const char *)ptr)[3]:'.', - size>4?((const char *)ptr)[4]:'.', - size>5?((const char *)ptr)[5]:'.'); - break; - } - - ctx->phase = 4; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - -asn_enc_rval_t -SEQUENCE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - int xcan = (flags & XER_F_CANONICAL); - asn_TYPE_descriptor_t *tmp_def_val_td = 0; - void *tmp_def_val = 0; - size_t edx; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_enc_rval_t tmper = {0,0,0}; - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - const char *mname = elm->name; - unsigned int mlen = strlen(mname); - - if(elm->flags & ATF_POINTER) { - memb_ptr = - *(const void *const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - assert(tmp_def_val == 0); - if(elm->default_value_set) { - if(elm->default_value_set(&tmp_def_val)) { - ASN__ENCODE_FAILED; - } else { - memb_ptr = tmp_def_val; - tmp_def_val_td = elm->type; - } - } else if(elm->optional) { - continue; - } else { - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - /* Print the member itself */ - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmp_def_val) { - ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - tmp_def_val = 0; - } - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("", 1); - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); - ASN__ENCODE_FAILED; -} - -int -SEQUENCE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t edx; - int ret; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) continue; - /* Print line */ - /* Fall through */ - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - /* Indentation */ - _i_INDENT(1); - - /* Print the member's name and stuff */ - if(cb(elm->name, strlen(elm->name), app_key) < 0 - || cb(": ", 2, app_key) < 0) - return -1; - - /* Print the member itself */ - ret = elm->type->op->print_struct(elm->type, memb_ptr, ilevel + 1, - cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} - -void -SEQUENCE_free(const asn_TYPE_descriptor_t *td, void *sptr, - enum asn_struct_free_method method) { - size_t edx; - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_struct_ctx_t *ctx; /* Decoder context */ - - if(!td || !sptr) - return; - - ASN_DEBUG("Freeing %s as SEQUENCE", td->name); - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; - if(elm->flags & ATF_POINTER) { - memb_ptr = *(void **)((char *)sptr + elm->memb_offset); - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } else { - memb_ptr = (void *)((char *)sptr + elm->memb_offset); - ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); - } - } - - /* Clean parsing context */ - ctx = (asn_struct_ctx_t *)((char *)sptr + specs->ctx_offset); - FREEMEM(ctx->ptr); - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(sptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset( - sptr, 0, - ((const asn_SEQUENCE_specifics_t *)(td->specifics))->struct_size); - break; - } -} - -int -SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t edx; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* - * Iterate over structure members and check their validity. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; - - if(elm->flags & ATF_POINTER) { - memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); - if(!memb_ptr) { - if(elm->optional) - continue; - ASN__CTFAIL(app_key, td, sptr, - "%s: mandatory element %s absent (%s:%d)", - td->name, elm->name, __FILE__, __LINE__); - return -1; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - } - - if(elm->encoding_constraints.general_constraints) { - int ret = elm->encoding_constraints.general_constraints(elm->type, memb_ptr, - ctfailcb, app_key); - if(ret) return ret; - } else { - return elm->type->encoding_constraints.general_constraints(elm->type, - memb_ptr, ctfailcb, app_key); - } - } - - return 0; -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -SEQUENCE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - void *st = *sptr; /* Target structure. */ - int extpresent; /* Extension additions are present */ - uint8_t *opres; /* Presence of optional root members */ - asn_per_data_t opmd; - asn_dec_rval_t rv; - size_t edx; - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); - - /* Handle extensions */ - if(specs->first_extension < 0) { - extpresent = 0; - } else { - extpresent = per_get_few_bits(pd, 1); - if(extpresent < 0) ASN__DECODE_STARVED; - } - - /* Prepare a place and read-in the presence bitmap */ - memset(&opmd, 0, sizeof(opmd)); - if(specs->roms_count) { - opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); - if(!opres) ASN__DECODE_FAILED; - /* Get the presence map */ - if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { - FREEMEM(opres); - ASN__DECODE_STARVED; - } - opmd.buffer = opres; - opmd.nbits = specs->roms_count; - ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", - td->name, specs->roms_count, *opres); - } else { - opres = 0; - } - - /* - * Get the sequence ROOT elements. - */ - for(edx = 0; - edx < (specs->first_extension < 0 ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - - assert(!IN_EXTENSION_GROUP(specs, edx)); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - /* Deal with optionality */ - if(elm->optional) { - int present = per_get_few_bits(&opmd, 1); - ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", - td->name, elm->name, present, - (int)opmd.nboff, (int)opmd.nbits); - if(present == 0) { - /* This element is not present */ - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - if(elm->default_value_set(memb_ptr2)) { - FREEMEM(opres); - ASN__DECODE_FAILED; - } - ASN_DEBUG("Filled-in default"); - } - /* The member is just not present */ - continue; - } - /* Fall through */ - } - - /* Fetch the member from the stream */ - ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); - - if(elm->flags & ATF_OPEN_TYPE) { - rv = OPEN_TYPE_uper_get(opt_codec_ctx, td, st, elm, pd); - } else { - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } - if(rv.code != RC_OK) { - ASN_DEBUG("Failed decode %s in %s", - elm->name, td->name); - FREEMEM(opres); - return rv; - } - } - - /* Optionality map is not needed anymore */ - FREEMEM(opres); - - /* - * Deal with extensions. - */ - if(extpresent) { - ssize_t bmlength; - uint8_t *epres; /* Presence of extension members */ - asn_per_data_t epmd; - - bmlength = uper_get_nslength(pd); - if(bmlength < 0) ASN__DECODE_STARVED; - - ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); - - epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); - if(!epres) ASN__DECODE_STARVED; - - /* Get the extensions map */ - if(per_get_many_bits(pd, epres, 0, bmlength)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - - memset(&epmd, 0, sizeof(epmd)); - epmd.buffer = epres; - epmd.nbits = bmlength; - ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", - td->name, (long)bmlength, *epres); - - /* Go over extensions and read them in */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (void *)((char *)st + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - present = per_get_few_bits(&epmd, 1); - if(present <= 0) { - if(present < 0) break; /* No more extensions */ - continue; - } - - ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, - *memb_ptr2); - rv = uper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr2, pd); - if(rv.code != RC_OK) { - FREEMEM(epres); - return rv; - } - } - - /* Skip over overflow extensions which aren't present - * in this system's version of the protocol */ - for(;;) { - ASN_DEBUG("Getting overflow extensions"); - switch(per_get_few_bits(&epmd, 1)) { - case -1: break; - case 0: continue; - default: - if(uper_open_type_skip(opt_codec_ctx, pd)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - ASN_DEBUG("Skipped overflow extension"); - continue; - } - break; - } - - FREEMEM(epres); - } - - if(specs->first_extension >= 0) { - unsigned i; - /* Fill DEFAULT members in extensions */ - for(i = specs->roms_count; i < specs->roms_count + specs->aoms_count; - i++) { - asn_TYPE_member_t *elm; - void **memb_ptr2; /* Pointer to member pointer */ - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - if(!elm->default_value_set) continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - if(*memb_ptr2) continue; - } else { - continue; /* Extensions are all optionals */ - } - - /* Set default value */ - if(elm->default_value_set(memb_ptr2)) { - ASN__DECODE_FAILED; - } - } - } - - rv.consumed = 0; - rv.code = RC_OK; - return rv; -} - -static int -SEQUENCE__handle_extensions(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_per_outp_t *po1, asn_per_outp_t *po2) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - int exts_present = 0; - int exts_count = 0; - size_t edx; - - if(specs->first_extension < 0) { - return 0; - } - - /* Find out which extensions are present */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - int present; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - ASN_DEBUG("checking %s:%s (@%" ASN_PRI_SIZE ") present => %d", elm->name, - elm->type->name, edx, present); - exts_count++; - exts_present += present; - - /* Encode as presence marker */ - if(po1 && per_put_few_bits(po1, present, 1)) { - return -1; - } - /* Encode as open type field */ - if(po2 && present - && uper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, - *memb_ptr2, po2)) - return -1; - } - - return exts_present ? exts_count : 0; -} - -asn_enc_rval_t -SEQUENCE_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - int n_extensions; - size_t edx; - size_t i; - - (void)constraints; - - if(!sptr) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); - - /* - * X.691#18.1 Whether structure is extensible - * and whether to encode extensions - */ - if(specs->first_extension < 0) { - n_extensions = 0; /* There are no extensions to encode */ - } else { - n_extensions = SEQUENCE__handle_extensions(td, sptr, 0, 0); - if(n_extensions < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { - ASN__ENCODE_FAILED; - } - } - - /* Encode a presence bitmap */ - for(i = 0; i < specs->roms_count; i++) { - asn_TYPE_member_t *elm; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - int present; - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - /* Eliminate default values */ - if(present && elm->default_value_cmp - && elm->default_value_cmp(*memb_ptr2) == 0) - present = 0; - - ASN_DEBUG("Element %s %s %s->%s is %s", - elm->flags & ATF_POINTER ? "ptr" : "inline", - elm->default_value_cmp ? "def" : "wtv", - td->name, elm->name, present ? "present" : "absent"); - if(per_put_few_bits(po, present, 1)) - ASN__ENCODE_FAILED; - } - - /* - * Encode the sequence ROOT elements. - */ - ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, - td->elements_count); - for(edx = 0; - edx < ((specs->first_extension < 0) ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void *const *memb_ptr2; /* Pointer to that pointer */ - - ASN_DEBUG("About to encode %s", elm->type->name); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = - (const void *const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - ASN_DEBUG("Encoding %s->%s:%s", td->name, elm->name, elm->type->name); - er = elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, *memb_ptr2, - po); - if(er.encoded == -1) return er; - } - - /* No extensions to encode */ - if(!n_extensions) ASN__ENCODED_OK(er); - - ASN_DEBUG("Length of extensions %d bit-map", n_extensions); - /* #18.8. Write down the presence bit-map length. */ - if(uper_put_nslength(po, n_extensions)) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Bit-map of %d elements", n_extensions); - /* #18.7. Encoding the extensions presence bit-map. */ - /* TODO: act upon NOTE in #18.7 for canonical PER */ - if(SEQUENCE__handle_extensions(td, sptr, po, 0) != n_extensions) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Writing %d extensions", n_extensions); - /* #18.9. Encode extensions as open type fields. */ - if(SEQUENCE__handle_extensions(td, sptr, 0, po) != n_extensions) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -SEQUENCE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - void *st = *sptr; /* Target structure. */ - int extpresent; /* Extension additions are present */ - uint8_t *opres; /* Presence of optional root members */ - asn_per_data_t opmd; - asn_dec_rval_t rv; - size_t edx; - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - - ASN_DEBUG("Decoding %s as SEQUENCE (APER)", td->name); - - /* Handle extensions */ - if(specs->first_extension < 0) { - extpresent = 0; - } else { - extpresent = per_get_few_bits(pd, 1); - if(extpresent < 0) ASN__DECODE_STARVED; - } - - /* Prepare a place and read-in the presence bitmap */ - memset(&opmd, 0, sizeof(opmd)); - if(specs->roms_count) { - opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); - if(!opres) ASN__DECODE_FAILED; - /* Get the presence map */ - if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { - FREEMEM(opres); - ASN__DECODE_STARVED; - } - opmd.buffer = opres; - opmd.nbits = specs->roms_count; - ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", - td->name, specs->roms_count, *opres); - } else { - opres = 0; - } - - /* - * Get the sequence ROOT elements. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ -#if 0 - int padding; -#endif - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } -#if 0 - /* Get Padding */ - padding = (8 - (pd->moved % 8)) % 8; - if(padding > 0) - ASN_DEBUG("For element %s,offset= %ld Padding bits = %d", td->name, pd->moved, padding); -#if 0 /* old way of removing padding */ - per_get_few_bits(pd, padding); -#else /* Experimental fix proposed by @mhanna123 */ - if(edx != (td->elements_count-1)) - per_get_few_bits(pd, padding); - else { - if(specs->roms_count && (padding > 0)) - ASN_DEBUG(">>>>> not skipping padding of %d bits for element:%ld out of %d", padding, edx, td->elements_count); - else - per_get_few_bits(pd, padding); - } -#endif /* dealing with padding */ -#endif - /* Deal with optionality */ - if(elm->optional) { - int present = per_get_few_bits(&opmd, 1); - ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", - td->name, elm->name, present, - (int)opmd.nboff, (int)opmd.nbits); - if(present == 0) { - /* This element is not present */ - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - if(elm->default_value_set(memb_ptr2)) { - FREEMEM(opres); - ASN__DECODE_FAILED; - } - ASN_DEBUG("Filled-in default"); - } - /* The member is just not present */ - continue; - } - /* Fall through */ - } - - /* Fetch the member from the stream */ - ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); - - if(elm->flags & ATF_OPEN_TYPE) { - rv = OPEN_TYPE_aper_get(opt_codec_ctx, td, st, elm, pd); - } else { - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - } - if(rv.code != RC_OK) { - ASN_DEBUG("Failed decode %s in %s", - elm->name, td->name); - FREEMEM(opres); - return rv; - } - } - - /* Optionality map is not needed anymore */ - FREEMEM(opres); - - /* - * Deal with extensions. - */ - if(extpresent) { - ssize_t bmlength; - uint8_t *epres; /* Presence of extension members */ - asn_per_data_t epmd; - - bmlength = aper_get_nslength(pd); - if(bmlength < 0) ASN__DECODE_STARVED; - - ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); - - epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); - if(!epres) ASN__DECODE_STARVED; - - /* Get the extensions map */ - if(per_get_many_bits(pd, epres, 0, bmlength)) - ASN__DECODE_STARVED; - - memset(&epmd, 0, sizeof(epmd)); - epmd.buffer = epres; - epmd.nbits = bmlength; - ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", - td->name, bmlength, *epres); - - /* Deal with padding */ - if (aper_get_align(pd) < 0) - ASN__DECODE_STARVED; - - /* Go over extensions and read them in */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%ld is not extension", edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (void *)((char *)st + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - present = per_get_few_bits(&epmd, 1); - if(present <= 0) { - if(present < 0) break; /* No more extensions */ - continue; - } - - ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); - rv = aper_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, memb_ptr2, pd); - if(rv.code != RC_OK) { - FREEMEM(epres); - return rv; - } - } - - /* Skip over overflow extensions which aren't present - * in this system's version of the protocol */ - for(;;) { - ASN_DEBUG("Getting overflow extensions"); - switch(per_get_few_bits(&epmd, 1)) { - case -1: - break; - case 0: - continue; - default: - if(aper_open_type_skip(opt_codec_ctx, pd)) { - FREEMEM(epres); - ASN__DECODE_STARVED; - } - } - break; - } - - FREEMEM(epres); - } - - /* Fill DEFAULT members in extensions */ - for(edx = specs->roms_count; edx < specs->roms_count - + specs->aoms_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - void **memb_ptr2; /* Pointer to member pointer */ - - if(!elm->default_value_set) continue; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (void **)((char *)st - + elm->memb_offset); - if(*memb_ptr2) continue; - } else { - continue; /* Extensions are all optionals */ - } - - /* Set default value */ - if(elm->default_value_set(memb_ptr2)) { - ASN__DECODE_FAILED; - } - } - - rv.consumed = 0; - rv.code = RC_OK; - return rv; -} - -static int -SEQUENCE_handle_extensions_aper(const asn_TYPE_descriptor_t *td, - const void *sptr, - asn_per_outp_t *po1, asn_per_outp_t *po2) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - int exts_present = 0; - int exts_count = 0; - size_t edx; - - if(specs->first_extension < 0) { - return 0; - } - - /* Find out which extensions are present */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - int present; - - if(!IN_EXTENSION_GROUP(specs, edx)) { - ASN_DEBUG("%s (@%ld) is not extension", elm->type->name, edx); - continue; - } - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - ASN_DEBUG("checking %s (@%ld) present => %d", - elm->type->name, edx, present); - exts_count++; - exts_present += present; - - /* Encode as presence marker */ - if(po1 && per_put_few_bits(po1, present, 1)) - return -1; - /* Encode as open type field */ - if(po2 && present && aper_open_type_put(elm->type, - elm->encoding_constraints.per_constraints, *memb_ptr2, po2)) - return -1; - - } - - return exts_present ? exts_count : 0; -} - -asn_enc_rval_t -SEQUENCE_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_SEQUENCE_specifics_t *specs - = (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_enc_rval_t er = {0,0,0}; - int n_extensions; - size_t edx; - size_t i; - - (void)constraints; - - if(!sptr) - ASN__ENCODE_FAILED; - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE (APER)", td->name); - - /* - * X.691#18.1 Whether structure is extensible - * and whether to encode extensions - */ - if(specs->first_extension < 0) { - n_extensions = 0; /* There are no extensions to encode */ - } else { - n_extensions = SEQUENCE_handle_extensions_aper(td, sptr, 0, 0); - if(n_extensions < 0) ASN__ENCODE_FAILED; - if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { - ASN__ENCODE_FAILED; - } - } - - /* Encode a presence bitmap */ - for(i = 0; i < specs->roms_count; i++) { - asn_TYPE_member_t *elm; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - int present; - - edx = specs->oms[i]; - elm = &td->elements[edx]; - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - present = (*memb_ptr2 != 0); - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - present = 1; - } - - /* Eliminate default values */ - if(present && elm->default_value_cmp - && elm->default_value_cmp(*memb_ptr2) == 0) - present = 0; - - ASN_DEBUG("Element %s %s %s->%s is %s", - elm->flags & ATF_POINTER ? "ptr" : "inline", - elm->default_value_cmp ? "def" : "wtv", - td->name, elm->name, present ? "present" : "absent"); - if(per_put_few_bits(po, present, 1)) - ASN__ENCODE_FAILED; - } - - /* - * Encode the sequence ROOT elements. - */ - ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, - td->elements_count); - for(edx = 0; - edx < ((specs->first_extension < 0) ? td->elements_count - : (size_t)specs->first_extension); - edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr; /* Pointer to the member */ - const void * const *memb_ptr2; /* Pointer to that pointer */ - - if(IN_EXTENSION_GROUP(specs, edx)) - continue; - - ASN_DEBUG("About to encode %s", elm->type->name); - - /* Fetch the pointer to this member */ - if(elm->flags & ATF_POINTER) { - memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); - if(!*memb_ptr2) { - ASN_DEBUG("Element %s %ld not present", - elm->name, edx); - if(elm->optional) - continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - } else { - memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); - memb_ptr2 = &memb_ptr; - } - - /* Eliminate default values */ - if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) - continue; - - ASN_DEBUG("Encoding %s->%s", td->name, elm->name); - er = elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, - *memb_ptr2, po); - if(er.encoded == -1) - return er; - } - - /* No extensions to encode */ - if(!n_extensions) ASN__ENCODED_OK(er); - - ASN_DEBUG("Length of %d bit-map", n_extensions); - /* #18.8. Write down the presence bit-map length. */ - if(aper_put_nslength(po, n_extensions)) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Bit-map of %d elements", n_extensions); - /* #18.7. Encoding the extensions presence bit-map. */ - /* TODO: act upon NOTE in #18.7 for canonical PER */ - if(SEQUENCE_handle_extensions_aper(td, sptr, po, 0) != n_extensions) - ASN__ENCODE_FAILED; - - ASN_DEBUG("Writing %d extensions", n_extensions); - /* #18.9. Encode extensions as open type fields. */ - if(SEQUENCE_handle_extensions_aper(td, sptr, 0, po) != n_extensions) - ASN__ENCODE_FAILED; - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -int -SEQUENCE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - size_t edx; - - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *amemb; - const void *bmemb; - int ret; - - if(elm->flags & ATF_POINTER) { - amemb = - *(const void *const *)((const char *)aptr + elm->memb_offset); - bmemb = - *(const void *const *)((const char *)bptr + elm->memb_offset); - if(!amemb) { - if(!bmemb) continue; - if(elm->default_value_cmp - && elm->default_value_cmp(bmemb) == 0) { - /* A is absent, but B is present and equal to DEFAULT */ - continue; - } - return -1; - } else if(!bmemb) { - if(elm->default_value_cmp - && elm->default_value_cmp(amemb) == 0) { - /* B is absent, but A is present and equal to DEFAULT */ - continue; - } - return 1; - } - } else { - amemb = (const void *)((const char *)aptr + elm->memb_offset); - bmemb = (const void *)((const char *)bptr + elm->memb_offset); - } - - ret = elm->type->op->compare_struct(elm->type, amemb, bmemb); - if(ret != 0) return ret; - } - - return 0; -} - -asn_TYPE_operation_t asn_OP_SEQUENCE = { - SEQUENCE_free, - SEQUENCE_print, - SEQUENCE_compare, - SEQUENCE_decode_ber, - SEQUENCE_encode_der, - SEQUENCE_decode_xer, - SEQUENCE_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - SEQUENCE_decode_oer, - SEQUENCE_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - SEQUENCE_decode_uper, - SEQUENCE_encode_uper, - SEQUENCE_decode_aper, - SEQUENCE_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - SEQUENCE_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; - - -asn_random_fill_result_t -SEQUENCE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_random_fill_result_t result_ok = {ARFILL_OK, 0}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - void *st = *sptr; - size_t edx; - - if(max_length == 0) return result_skipped; - - (void)constr; - - if(st == NULL) { - st = CALLOC(1, specs->struct_size); - if(st == NULL) { - return result_failed; - } - } - - for(edx = 0; edx < td->elements_count; edx++) { - const asn_TYPE_member_t *elm = &td->elements[edx]; - void *memb_ptr; /* Pointer to the member */ - void **memb_ptr2; /* Pointer to that pointer */ - asn_random_fill_result_t tmpres; - - if(elm->optional && asn_random_between(0, 4) == 2) { - /* Sometimes decide not to fill the optional value */ - continue; - } - - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - memb_ptr2 = (void **)((char *)st + elm->memb_offset); - } else { - memb_ptr = (char *)st + elm->memb_offset; - memb_ptr2 = &memb_ptr; - } - - tmpres = elm->type->op->random_fill( - elm->type, memb_ptr2, &elm->encoding_constraints, - max_length > result_ok.length ? max_length - result_ok.length : 0); - switch(tmpres.code) { - case ARFILL_OK: - result_ok.length += tmpres.length; - continue; - case ARFILL_SKIPPED: - assert(!(elm->flags & ATF_POINTER) || *memb_ptr2 == NULL); - continue; - case ARFILL_FAILED: - if(st == *sptr) { - ASN_STRUCT_RESET(*td, st); - } else { - ASN_STRUCT_FREE(*td, st); - } - return tmpres; - } - } - - *sptr = st; - - return result_ok; -} - diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c deleted file mode 100644 index 2fff0924e..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c +++ /dev/null @@ -1,364 +0,0 @@ -/*- - * Copyright (c) 2003, 2004, 2006 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The DER encoder of the SEQUENCE OF type. - */ -asn_enc_rval_t -SEQUENCE_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, - int tag_mode, ber_tlv_tag_t tag, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(ptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - asn_enc_rval_t erval = {0,0,0}; - int edx; - - ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - 0, 0); - if(erval.encoded == -1) - return erval; - computed_size += erval.encoded; - } - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, - cb, app_key); - if(encoding_size == -1) { - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - return erval; - } - - computed_size += encoding_size; - if(!cb) { - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } - - ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) continue; - erval = elm->type->op->der_encoder(elm->type, memb_ptr, - 0, elm->tag, - cb, app_key); - if(erval.encoded == -1) - return erval; - encoding_size += erval.encoded; - } - - if(computed_size != (size_t)encoding_size) { - /* - * Encoded size is not equal to the computed size. - */ - erval.encoded = -1; - erval.failed_type = td; - erval.structure_ptr = ptr; - } else { - erval.encoded = computed_size; - erval.structure_ptr = 0; - erval.failed_type = 0; - } - - return erval; -} - -asn_enc_rval_t -SEQUENCE_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, - int ilevel, enum xer_encoder_flags_e flags, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 - : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); - ASN__CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - ASN__CALLBACK3("", 1); - } - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_enc_rval_t -SEQUENCE_OF_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_anonymous_sequence_ *list; - const asn_per_constraint_t *ct; - asn_enc_rval_t er = {0,0,0}; - const asn_TYPE_member_t *elm = td->elements; - size_t encoded_edx; - - if(!sptr) ASN__ENCODE_FAILED; - list = _A_CSEQUENCE_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; - } else if(list->count == 0) { - /* When the list is empty add only the length determinant - * X.691, #20.6 and #11.9.4.1 - */ - if (uper_put_length(po, 0, 0)) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } - - for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { - ssize_t may_encode; - size_t edx; - int need_eom = 0; - - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - uper_put_length(po, list->count - encoded_edx, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { - void *memb_ptr = list->array[edx]; - if(!memb_ptr) ASN__ENCODE_FAILED; - er = elm->type->op->uper_encoder( - elm->type, elm->encoding_constraints.per_constraints, memb_ptr, - po); - if(er.encoded == -1) ASN__ENCODE_FAILED; - } - - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - - encoded_edx += may_encode; - } - - ASN__ENCODED_OK(er); -} - -asn_enc_rval_t -SEQUENCE_OF_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - const asn_anonymous_sequence_ *list; - const asn_per_constraint_t *ct; - asn_enc_rval_t er = {0,0,0}; - asn_TYPE_member_t *elm = td->elements; - int seq; - - if(!sptr) ASN__ENCODE_FAILED; - list = _A_CSEQUENCE_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF size (%d) using ALIGNED PER", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = (list->count < ct->lower_bound - || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", - ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) - ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) - ASN__ENCODE_FAILED; - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ -/* if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; -*/ - if (ct->lower_bound == ct->upper_bound && ct->upper_bound < 65536) { - /* No length determinant */ - } else if (aper_put_length(po, ct->upper_bound - ct->lower_bound + 1, list->count - ct->lower_bound, 0) < 0) - ASN__ENCODE_FAILED; - } - - for(seq = -1; seq < list->count;) { - ssize_t mayEncode; - int need_eom = 0; - if(seq < 0) seq = 0; - if(ct && ct->effective_bits >= 0) { - mayEncode = list->count; - } else { - mayEncode = aper_put_length(po, -1, list->count - seq, &need_eom); - if(mayEncode < 0) ASN__ENCODE_FAILED; - } - - while(mayEncode--) { - void *memb_ptr = list->array[seq++]; - if(!memb_ptr) ASN__ENCODE_FAILED; - er = elm->type->op->aper_encoder(elm->type, - elm->encoding_constraints.per_constraints, memb_ptr, po); - if(er.encoded == -1) - ASN__ENCODE_FAILED; - } - - if(need_eom && aper_put_length(po, -1, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - ASN__ENCODED_OK(er); -} -#endif /* ASN_DISABLE_PER_SUPPORT */ - -int -SEQUENCE_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_anonymous_sequence_ *a = _A_CSEQUENCE_FROM_VOID(aptr); - const asn_anonymous_sequence_ *b = _A_CSEQUENCE_FROM_VOID(bptr); - ssize_t idx; - - if(a && b) { - ssize_t common_length = (a->count < b->count ? a->count : b->count); - for(idx = 0; idx < common_length; idx++) { - int ret = td->elements->type->op->compare_struct( - td->elements->type, a->array[idx], b->array[idx]); - if(ret) return ret; - } - - if(idx < b->count) /* more elements in b */ - return -1; /* a is shorter, so put it first */ - if(idx < a->count) return 1; - - } else if(!a) { - return -1; - } else if(!b) { - return 1; - } - - return 0; -} - - -asn_TYPE_operation_t asn_OP_SEQUENCE_OF = { - SEQUENCE_OF_free, - SEQUENCE_OF_print, - SEQUENCE_OF_compare, - SEQUENCE_OF_decode_ber, - SEQUENCE_OF_encode_der, - SEQUENCE_OF_decode_xer, - SEQUENCE_OF_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - SEQUENCE_OF_decode_oer, /* Same as SET OF decoder. */ - SEQUENCE_OF_encode_oer, /* Same as SET OF encoder */ -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - SEQUENCE_OF_decode_uper, /* Same as SET OF decoder */ - SEQUENCE_OF_encode_uper, - SEQUENCE_OF_decode_aper, - SEQUENCE_OF_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - SEQUENCE_OF_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; - diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c deleted file mode 100644 index 02e241365..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c +++ /dev/null @@ -1,561 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include -#include - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) - -/* - * Check whether we are inside the extensions group. - */ -#define IN_EXTENSION_GROUP(specs, memb_idx) \ - ((specs)->first_extension >= 0 \ - && (unsigned)(specs)->first_extension <= (memb_idx)) - -#define IN_ROOT_GROUP_PRED(edx) \ - edx < (specs->first_extension < 0 ? td->elements_count \ - : (size_t)specs->first_extension) - -#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * Return pointer to a member. - */ -static void ** -element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) { - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - return (void **)((char *)struct_ptr + elm->memb_offset); - } else { - assert(tmp_save_ptr); - *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset); - return tmp_save_ptr; - } -} - -static const void * -element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) { - if(elm->flags & ATF_POINTER) { - /* Member is a pointer to another structure */ - return *(const void *const *)((const char *)struct_ptr - + elm->memb_offset); - } else { - return (const void *)((const char *)struct_ptr + elm->memb_offset); - } -} - -asn_dec_rval_t -SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - const asn_SEQUENCE_specifics_t *specs = - (const asn_SEQUENCE_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - void *st = *struct_ptr; /* Target structure */ - asn_struct_ctx_t *ctx; /* Decoder context */ - size_t consumed_myself = 0; /* Consumed bytes from ptr. */ - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously. - */ - switch(ctx->phase) { - case 0: { - /* - * Fetch preamble. - */ - asn_bit_data_t *preamble; - int has_extensions_bit = (specs->first_extension >= 0); - size_t preamble_bits = (has_extensions_bit + specs->roms_count); - size_t preamble_bytes = ((7 + preamble_bits) >> 3); - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name); - - ASN_DEBUG( - "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)", - preamble_bits, td->name, has_extensions_bit); - - if(preamble_bytes > size) { - ASN__DECODE_STARVED; - } - - preamble = asn_bit_data_new_contiguous(ptr, preamble_bits); - if(!preamble) { - RETURN(RC_FAIL); - } - preamble->nboff = has_extensions_bit; - ctx->ptr = preamble; - ADVANCE(preamble_bytes); - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 1: { - /* Decode components of the extension root */ - asn_bit_data_t *preamble = ctx->ptr; - size_t edx; - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name); - - assert(preamble); - - for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx); - edx++, ctx->step = (ctx->step & ~1) + 2) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - ASN_DEBUG("Decoding %s->%s", td->name, elm->name); - - assert(!IN_EXTENSION_GROUP(specs, edx)); - - if(ctx->step & 1) { - goto microphase2_decode_continues; - } - - - if(elm->optional) { - int32_t present = asn_get_few_bits(preamble, 1); - if(present < 0) { - ASN_DEBUG("Presence map ended prematurely: %d", present); - RETURN(RC_FAIL); - } else if(present == 0) { - if(elm->default_value_set) { - /* Fill-in DEFAULT */ - void *tmp; - if(elm->default_value_set( - element_ptrptr(st, elm, &tmp))) { - RETURN(RC_FAIL); - } - } - /* The member is not present. */ - continue; - } - /* Present OPTIONAL or DEFAULT component. */ - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2_decode_continues: - if(elm->flags & ATF_OPEN_TYPE) { - rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size); - } else { - void *save_memb_ptr; /* Temporary reference. */ - void **memb_ptr2; /* Pointer to a pointer to a memmber */ - - memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr); - - rval = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, - size); - } - switch(rval.code) { - case RC_OK: - ADVANCE(rval.consumed); - break; - case RC_WMORE: - ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name, - elm->name); - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - case RC_FAIL: - ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name, - elm->name); - RETURN(RC_FAIL); - } - } /* for(all root members) */ - - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 2: - assert(ctx->ptr); - { - /* Cleanup preamble. */ - asn_bit_data_t *preamble = ctx->ptr; - asn_bit_data_t *extadds; - int has_extensions_bit = (specs->first_extension >= 0); - int extensions_present = - has_extensions_bit - && (preamble->buffer == NULL - || (((const uint8_t *)preamble->buffer)[0] & 0x80)); - uint8_t unused_bits; - size_t len = 0; - ssize_t len_len; - - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name); - - preamble->buffer = 0; /* Will do extensions_present==1 next time. */ - - if(!extensions_present) { - ctx->phase = 10; - RETURN(RC_OK); - } - - /* - * X.696 (08/2015) #16.1 (c), #16.4 - * Read in the extension addition presence bitmap. - */ - - len_len = oer_fetch_length(ptr, size, &len); - if(len_len > 0) { - ADVANCE(len_len); - } else if(len_len < 0) { - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - - if(len == 0) { - /* 16.4.1-2 */ - RETURN(RC_FAIL); - } else if(len > size) { - RETURN(RC_WMORE); - } - - /* Account for unused bits */ - unused_bits = 0x7 & *(const uint8_t *)ptr; - ADVANCE(1); - len--; - if(unused_bits && len == 0) { - RETURN(RC_FAIL); - } - - /* Get the extensions map */ - extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits); - if(!extadds) { - RETURN(RC_FAIL); - } - FREEMEM(preamble); - ctx->ptr = extadds; - ADVANCE(len); - } - NEXT_PHASE(ctx); - ctx->step = - (specs->first_extension < 0 ? td->elements_count - : (size_t)specs->first_extension); - /* Fall through */ - case 3: - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name); - for(; ctx->step < (signed)td->elements_count; ctx->step++) { - asn_bit_data_t *extadds = ctx->ptr; - size_t edx = ctx->step; - asn_TYPE_member_t *elm = &td->elements[edx]; - void *tmp_memb_ptr; - void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr); - - switch(asn_get_few_bits(extadds, 1)) { - case -1: - /* - * Not every one of our extensions is known to the remote side. - * Continue filling in their defaults though. - */ - /* Fall through */ - case 0: - /* Fill-in DEFAULT */ - if(elm->default_value_set - && elm->default_value_set(memb_ptr2)) { - RETURN(RC_FAIL); - } - continue; - case 1: { - /* Read OER open type */ - ssize_t ot_size = - oer_open_type_get(opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, - memb_ptr2, ptr, size); - assert(ot_size <= (ssize_t)size); - if(ot_size > 0) { - ADVANCE(ot_size); - } else if(ot_size < 0) { - RETURN(RC_FAIL); - } else { - /* Roll back open type parsing */ - asn_get_undo(extadds, 1); - RETURN(RC_WMORE); - } - break; - } - default: - RETURN(RC_FAIL); - } - } - - NEXT_PHASE(ctx); - /* Fall through */ - case 4: - ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name); - /* Read in the rest of Open Types while ignoring them */ - for(;;) { - asn_bit_data_t *extadds = ctx->ptr; - switch(asn_get_few_bits(extadds, 1)) { - case 0: - continue; - case 1: { - ssize_t skipped = oer_open_type_skip(ptr, size); - if(skipped > 0) { - ADVANCE(skipped); - } else if(skipped < 0) { - RETURN(RC_FAIL); - } else { - asn_get_undo(extadds, 1); - RETURN(RC_WMORE); - } - continue; - } - case -1: - /* No more Open Type encoded components */ - break; - default: - RETURN(RC_FAIL); - } - break; - } - } - - RETURN(RC_OK); -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; - size_t computed_size = 0; - int has_extensions_bit = (specs->first_extension >= 0); - size_t preamble_bits = (has_extensions_bit + specs->roms_count); - uint32_t has_extensions = 0; - size_t edx; - int ret; - - (void)constraints; - - if(preamble_bits) { - asn_bit_outp_t preamble; - - memset(&preamble, 0, sizeof(preamble)); - preamble.output = cb; - preamble.op_key = app_key; - - if(has_extensions_bit) { - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Do not encode default values in extensions */ - } else { - has_extensions = 1; - break; - } - } - } - ret = asn_put_few_bits(&preamble, has_extensions, 1); - assert(ret == 0); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - } - - /* - * Encode optional components bitmap. - */ - if(specs->roms_count) { - FOR_IN_ROOT_GROUP(edx) { - asn_TYPE_member_t *elm = &td->elements[edx]; - - if(IN_EXTENSION_GROUP(specs, edx)) break; - - if(elm->optional) { - const void *memb_ptr = element_ptr(sptr, elm); - uint32_t has_component = memb_ptr != NULL; - if(has_component && elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - has_component = 0; - } - ret = asn_put_few_bits(&preamble, has_component, 1); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - } - } - } - - asn_put_aligned_flush(&preamble); - computed_size += preamble.flushed_bytes; - } /* if(preamble_bits) */ - - /* - * Put root components and extensions root. - */ - for(edx = 0; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - asn_enc_rval_t er = {0,0,0}; - const void *memb_ptr; - - if(IN_EXTENSION_GROUP(specs, edx)) break; - - memb_ptr = element_ptr(sptr, elm); - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Skip default values in encoding */ - continue; - } - } else { - if(elm->optional) continue; - /* Mandatory element is missing */ - ASN__ENCODE_FAILED; - } - if(!elm->type->op->oer_encoder) { - ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name); - ASN__ENCODE_FAILED; - } - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded == -1) { - ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name, - elm->name); - return er; - } - computed_size += er.encoded; - } - - /* - * Before encode extensions, encode extensions additions presence bitmap - # X.696 (08/2015) #16.4. - */ - if(has_extensions) { - asn_bit_outp_t extadds; - - /* Special case allowing us to use exactly one byte for #8.6 */ - size_t aoms_length_bits = specs->aoms_count; - size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3; - uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07)); - - assert(1 + aoms_length_bytes <= 127); - - memset(&extadds, 0, sizeof(extadds)); - extadds.output = cb; - extadds.op_key = app_key; - - /* #8.6 length determinant */ - ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8); - if(ret < 0) ASN__ENCODE_FAILED; - - /* Number of unused bytes, #16.4.2 */ - ret = asn_put_few_bits(&extadds, unused_bits, 8); - if(ret < 0) ASN__ENCODE_FAILED; - - /* Encode presence bitmap #16.4.3 */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - if(memb_ptr && elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - memb_ptr = 0; /* Do not encode default value. */ - } - ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1); - } - if(ret < 0) ASN__ENCODE_FAILED; - - asn_put_aligned_flush(&extadds); - computed_size += extadds.flushed_bytes; - - /* Now, encode extensions */ - for(edx = specs->first_extension; edx < td->elements_count; edx++) { - asn_TYPE_member_t *elm = &td->elements[edx]; - const void *memb_ptr = element_ptr(sptr, elm); - - if(memb_ptr) { - if(elm->default_value_cmp - && elm->default_value_cmp(memb_ptr) == 0) { - /* Do not encode default value. */ - } else { - ssize_t wrote = oer_open_type_put( - elm->type, elm->encoding_constraints.oer_constraints, - memb_ptr, cb, app_key); - if(wrote == -1) { - ASN__ENCODE_FAILED; - } - computed_size += wrote; - } - } else if(!elm->optional) { - ASN__ENCODE_FAILED; - } - } - } /* if(has_extensions) */ - - - { - asn_enc_rval_t er = {0, 0, 0}; - er.encoded = computed_size; - ASN__ENCODED_OK(er); - } -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c b/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c deleted file mode 100644 index f07bcb8d0..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c +++ /dev/null @@ -1,1539 +0,0 @@ -/* - * Copyright (c) 2003-2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Number of bytes left for this structure. - * (ctx->left) indicates the number of bytes _transferred_ for the structure. - * (size) contains the number of bytes in the buffer passed. - */ -#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) - -/* - * If the subprocessor function returns with an indication that it wants - * more data, it may well be a fatal decoding problem, because the - * size is constrained by the 's L, even if the buffer size allows - * reading more data. - * For example, consider the buffer containing the following TLVs: - * ... - * The TLV length clearly indicates that one byte is expected in V, but - * if the V processor returns with "want more data" even if the buffer - * contains way more data than the V processor have seen. - */ -#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num;\ - size -= num; \ - if(ctx->left >= 0) \ - ctx->left -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#undef PHASE_OUT -#define NEXT_PHASE(ctx) do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself;\ - return rval; \ - } while(0) - -/* - * The decoder of the SET OF type. - */ -asn_dec_rval_t -SET_OF_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *ptr, size_t size, int tag_mode) { - /* - * Bring closer parts of structure description. - */ - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - - /* - * Parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - ber_tlv_tag_t tlv_tag; /* T from TLV */ - asn_dec_rval_t rval; /* Return code from subparsers */ - - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - ASN_DEBUG("Decoding %s as SET OF", td->name); - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously - */ - switch(ctx->phase) { - case 0: - /* - * PHASE 0. - * Check that the set of tags associated with given structure - * perfectly fits our expectations. - */ - - rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, - tag_mode, 1, &ctx->left, 0); - if(rval.code != RC_OK) { - ASN_DEBUG("%s tagging check failed: %d", - td->name, rval.code); - return rval; - } - - if(ctx->left >= 0) - ctx->left += rval.consumed; /* ?Subtracted below! */ - ADVANCE(rval.consumed); - - ASN_DEBUG("Structure consumes %ld bytes, " - "buffer %ld", (long)ctx->left, (long)size); - - NEXT_PHASE(ctx); - /* Fall through */ - case 1: - /* - * PHASE 1. - * From the place where we've left it previously, - * try to decode the next item. - */ - for(;; ctx->step = 0) { - ssize_t tag_len; /* Length of TLV's T */ - - if(ctx->step & 1) - goto microphase2; - - /* - * MICROPHASE 1: Synchronize decoding. - */ - - if(ctx->left == 0) { - ASN_DEBUG("End of SET OF %s", td->name); - /* - * No more things to decode. - * Exit out of here. - */ - PHASE_OUT(ctx); - RETURN(RC_OK); - } - - /* - * Fetch the T from TLV. - */ - tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); - switch(tag_len) { - case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); - /* Fall through */ - case -1: RETURN(RC_FAIL); - } - - if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { - if(LEFT < 2) { - if(SIZE_VIOLATION) - RETURN(RC_FAIL); - else - RETURN(RC_WMORE); - } else if(((const uint8_t *)ptr)[1] == 0) { - /* - * Found the terminator of the - * indefinite length structure. - */ - break; - } - } - - /* Outmost tag may be unknown and cannot be fetched/compared */ - if(elm->tag != (ber_tlv_tag_t)-1) { - if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { - /* - * The new list member of expected type has arrived. - */ - } else { - ASN_DEBUG("Unexpected tag %s fixed SET OF %s", - ber_tlv_tag_string(tlv_tag), td->name); - ASN_DEBUG("%s SET OF has tag %s", - td->name, ber_tlv_tag_string(elm->tag)); - RETURN(RC_FAIL); - } - } - - /* - * MICROPHASE 2: Invoke the member-specific decoder. - */ - ctx->step |= 1; /* Confirm entering next microphase */ - microphase2: - - /* - * Invoke the member fetch routine according to member's type - */ - rval = elm->type->op->ber_decoder(opt_codec_ctx, - elm->type, &ctx->ptr, ptr, LEFT, 0); - ASN_DEBUG("In %s SET OF %s code %d consumed %d", - td->name, elm->type->name, - rval.code, (int)rval.consumed); - switch(rval.code) { - case RC_OK: - { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - else - ctx->ptr = 0; - } - break; - case RC_WMORE: /* More data expected */ - if(!SIZE_VIOLATION) { - ADVANCE(rval.consumed); - RETURN(RC_WMORE); - } - /* Fall through */ - case RC_FAIL: /* Fatal error */ - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - RETURN(RC_FAIL); - } /* switch(rval) */ - - ADVANCE(rval.consumed); - } /* for(all list members) */ - - NEXT_PHASE(ctx); - case 2: - /* - * Read in all "end of content" TLVs. - */ - while(ctx->left < 0) { - if(LEFT < 2) { - if(LEFT > 0 && ((const char *)ptr)[0] != 0) { - /* Unexpected tag */ - RETURN(RC_FAIL); - } else { - RETURN(RC_WMORE); - } - } - if(((const char *)ptr)[0] == 0 - && ((const char *)ptr)[1] == 0) { - ADVANCE(2); - ctx->left++; - } else { - RETURN(RC_FAIL); - } - } - - PHASE_OUT(ctx); - } - - RETURN(RC_OK); -} - -/* - * Internally visible buffer holding a single encoded element. - */ -struct _el_buffer { - uint8_t *buf; - size_t length; - size_t allocated_size; - unsigned bits_unused; -}; -/* Append bytes to the above structure */ -static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { - struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; - - if(el_buf->length + size > el_buf->allocated_size) { - size_t new_size = el_buf->allocated_size ? el_buf->allocated_size : 8; - void *p; - - do { - new_size <<= 2; - } while(el_buf->length + size > new_size); - - p = REALLOC(el_buf->buf, new_size); - if(p) { - el_buf->buf = p; - el_buf->allocated_size = new_size; - } else { - return -1; - } - } - - memcpy(el_buf->buf + el_buf->length, buffer, size); - - el_buf->length += size; - return 0; -} - -static void assert_unused_bits(const struct _el_buffer* p) { - if(p->length) { - assert((p->buf[p->length-1] & ~(0xff << p->bits_unused)) == 0); - } else { - assert(p->bits_unused == 0); - } -} - -static int _el_buf_cmp(const void *ap, const void *bp) { - const struct _el_buffer *a = (const struct _el_buffer *)ap; - const struct _el_buffer *b = (const struct _el_buffer *)bp; - size_t common_len; - int ret = 0; - - if(a->length < b->length) - common_len = a->length; - else - common_len = b->length; - - if (a->buf && b->buf) { - ret = memcmp(a->buf, b->buf, common_len); - } - if(ret == 0) { - if(a->length < b->length) - ret = -1; - else if(a->length > b->length) - ret = 1; - /* Ignore unused bits. */ - assert_unused_bits(a); - assert_unused_bits(b); - } - - return ret; -} - -static void -SET_OF__encode_sorted_free(struct _el_buffer *el_buf, size_t count) { - size_t i; - - for(i = 0; i < count; i++) { - FREEMEM(el_buf[i].buf); - } - - FREEMEM(el_buf); -} - -enum SET_OF__encode_method { - SOES_DER, /* Distinguished Encoding Rules */ - SOES_CUPER, /* Canonical Unaligned Packed Encoding Rules */ - SOES_CAPER /* Canonical Aligned Packed Encoding Rules */ -}; - -static struct _el_buffer * -SET_OF__encode_sorted(const asn_TYPE_member_t *elm, - const asn_anonymous_set_ *list, - enum SET_OF__encode_method method) { - struct _el_buffer *encoded_els; - int edx; - - encoded_els = - (struct _el_buffer *)CALLOC(list->count, sizeof(encoded_els[0])); - if(encoded_els == NULL) { - return NULL; - } - - /* - * Encode all members. - */ - for(edx = 0; edx < list->count; edx++) { - const void *memb_ptr = list->array[edx]; - struct _el_buffer *encoding_el = &encoded_els[edx]; - asn_enc_rval_t erval = {0,0,0}; - - if(!memb_ptr) break; - - /* - * Encode the member into the prepared space. - */ - switch(method) { - case SOES_DER: - erval = elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, - _el_addbytes, encoding_el); - break; - case SOES_CUPER: - erval = uper_encode(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, _el_addbytes, encoding_el); - if(erval.encoded != -1) { - size_t extra_bits = erval.encoded % 8; - assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); - encoding_el->bits_unused = (8 - extra_bits) & 0x7; - } - break; - case SOES_CAPER: - erval = aper_encode(elm->type, - elm->encoding_constraints.per_constraints, - memb_ptr, _el_addbytes, encoding_el); - - if(erval.encoded != -1) { - size_t extra_bits = erval.encoded % 8; - assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); - encoding_el->bits_unused = (8 - extra_bits) & 0x7; - } - - break; - - default: - assert(!"Unreachable"); - break; - } - if(erval.encoded < 0) break; - } - - if(edx == list->count) { - /* - * Sort the encoded elements according to their encoding. - */ - qsort(encoded_els, list->count, sizeof(encoded_els[0]), _el_buf_cmp); - - return encoded_els; - } else { - SET_OF__encode_sorted_free(encoded_els, edx); - return NULL; - } -} - - -/* - * The DER encoder of the SET OF type. - */ -asn_enc_rval_t -SET_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, - int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, - void *app_key) { - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - size_t computed_size = 0; - ssize_t encoding_size = 0; - struct _el_buffer *encoded_els; - int edx; - - ASN_DEBUG("Estimating size for SET OF %s", td->name); - - /* - * Gather the length of the underlying members sequence. - */ - for(edx = 0; edx < list->count; edx++) { - void *memb_ptr = list->array[edx]; - asn_enc_rval_t erval = {0,0,0}; - - if(!memb_ptr) ASN__ENCODE_FAILED; - - erval = - elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, 0, 0); - if(erval.encoded == -1) return erval; - computed_size += erval.encoded; - } - - - /* - * Encode the TLV for the sequence itself. - */ - encoding_size = - der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); - if(encoding_size < 0) { - ASN__ENCODE_FAILED; - } - computed_size += encoding_size; - - if(!cb || list->count == 0) { - asn_enc_rval_t erval = {0,0,0}; - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } - - ASN_DEBUG("Encoding members of %s SET OF", td->name); - - /* - * DER mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the - * encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_DER); - - /* - * Report encoded elements to the application. - * Dispose of temporary sorted members table. - */ - for(edx = 0; edx < list->count; edx++) { - struct _el_buffer *encoded_el = &encoded_els[edx]; - /* Report encoded chunks to the application */ - if(cb(encoded_el->buf, encoded_el->length, app_key) < 0) { - break; - } else { - encoding_size += encoded_el->length; - } - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - if(edx == list->count) { - asn_enc_rval_t erval = {0,0,0}; - assert(computed_size == (size_t)encoding_size); - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } else { - ASN__ENCODE_FAILED; - } -} - -#undef XER_ADVANCE -#define XER_ADVANCE(num_bytes) do { \ - size_t num = num_bytes; \ - buf_ptr = ((const char *)buf_ptr) + num;\ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Decode the XER (XML) data. - */ -asn_dec_rval_t -SET_OF_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - /* - * Bring closer parts of structure description. - */ - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *element = td->elements; - const char *elm_tag; - const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; - - /* - * ... and parts of the structure being constructed. - */ - void *st = *struct_ptr; /* Target structure. */ - asn_struct_ctx_t *ctx; /* Decoder context */ - - asn_dec_rval_t rval = {RC_OK, 0};/* Return value from a decoder */ - ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) RETURN(RC_FAIL); - } - - /* Which tag is expected for the downstream */ - if(specs->as_XMLValueList) { - elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; - } else { - elm_tag = (*element->name) - ? element->name : element->type->xml_tag; - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - * Phase 2: Processing inner type. - */ - for(; ctx->phase <= 2;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Go inside the inner member of a set. - */ - if(ctx->phase == 2) { - asn_dec_rval_t tmprval = {RC_OK, 0}; - - /* Invoke the inner type decoder, m.b. multiple times */ - ASN_DEBUG("XER/SET OF element [%s]", elm_tag); - tmprval = element->type->op->xer_decoder(opt_codec_ctx, - element->type, &ctx->ptr, elm_tag, - buf_ptr, size); - if(tmprval.code == RC_OK) { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - if(ASN_SET_ADD(list, ctx->ptr) != 0) - RETURN(RC_FAIL); - ctx->ptr = 0; - XER_ADVANCE(tmprval.consumed); - } else { - XER_ADVANCE(tmprval.consumed); - RETURN(tmprval.code); - } - ctx->phase = 1; /* Back to body processing */ - ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); - /* Fall through */ - } - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, - buf_ptr, size, &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - case PXER_TEXT: /* Ignore free-standing text */ - XER_ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", - tcv, ctx->phase, xml_tag); - switch(tcv) { - case XCT_CLOSING: - if(ctx->phase == 0) break; - ctx->phase = 0; - /* Fall through */ - case XCT_BOTH: - if(ctx->phase == 0) { - /* No more things to decode */ - XER_ADVANCE(ch_size); - ctx->phase = 3; /* Phase out */ - RETURN(RC_OK); - } - /* Fall through */ - case XCT_OPENING: - if(ctx->phase == 0) { - XER_ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - } - /* Fall through */ - case XCT_UNKNOWN_OP: - case XCT_UNKNOWN_BO: - - ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); - if(ctx->phase == 1) { - /* - * Process a single possible member. - */ - ctx->phase = 2; - continue; - } - /* Fall through */ - default: - break; - } - - ASN_DEBUG("Unexpected XML tag in SET OF"); - break; - } - - ctx->phase = 3; /* "Phase out" on hard failure */ - RETURN(RC_FAIL); -} - - - -typedef struct xer_tmp_enc_s { - void *buffer; - size_t offset; - size_t size; -} xer_tmp_enc_t; -static int -SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { - xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; - if(t->offset + size >= t->size) { - size_t newsize = (t->size << 2) + size; - void *p = REALLOC(t->buffer, newsize); - if(!p) return -1; - t->buffer = p; - t->size = newsize; - } - memcpy((char *)t->buffer + t->offset, buffer, size); - t->offset += size; - return 0; -} -static int -SET_OF_xer_order(const void *aptr, const void *bptr) { - const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; - const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; - size_t minlen = a->offset; - int ret; - if(b->offset < minlen) minlen = b->offset; - /* Well-formed UTF-8 has this nice lexicographical property... */ - ret = memcmp(a->buffer, b->buffer, minlen); - if(ret != 0) return ret; - if(a->offset == b->offset) - return 0; - if(a->offset == minlen) - return -1; - return 1; -} - - -asn_enc_rval_t -SET_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - const char *mname = specs->as_XMLValueList - ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); - size_t mlen = mname ? strlen(mname) : 0; - int xcan = (flags & XER_F_CANONICAL); - xer_tmp_enc_t *encs = 0; - size_t encs_count = 0; - void *original_app_key = app_key; - asn_app_consume_bytes_f *original_cb = cb; - int i; - - if(!sptr) ASN__ENCODE_FAILED; - - if(xcan) { - encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); - if(!encs) ASN__ENCODE_FAILED; - cb = SET_OF_encode_xer_callback; - } - - er.encoded = 0; - - for(i = 0; i < list->count; i++) { - asn_enc_rval_t tmper = {0,0,0}; - - void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - if(encs) { - memset(&encs[encs_count], 0, sizeof(encs[0])); - app_key = &encs[encs_count]; - encs_count++; - } - - if(mname) { - if(!xcan) ASN__TEXT_INDENT(1, ilevel); - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - } - - if(!xcan && specs->as_XMLValueList == 1) - ASN__TEXT_INDENT(1, ilevel + 1); - tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, - ilevel + (specs->as_XMLValueList != 2), - flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - if(tmper.encoded == 0 && specs->as_XMLValueList) { - const char *name = elm->type->xml_tag; - size_t len = strlen(name); - ASN__CALLBACK3("<", 1, name, len, "/>", 2); - } - - if(mname) { - ASN__CALLBACK3("", 1); - } - - } - - if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); - - if(encs) { - xer_tmp_enc_t *enc = encs; - xer_tmp_enc_t *end = encs + encs_count; - ssize_t control_size = 0; - - er.encoded = 0; - cb = original_cb; - app_key = original_app_key; - qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); - - for(; enc < end; enc++) { - ASN__CALLBACK(enc->buffer, enc->offset); - FREEMEM(enc->buffer); - enc->buffer = 0; - control_size += enc->offset; - } - assert(control_size == er.encoded); - } - - goto cleanup; -cb_failed: - ASN__ENCODE_FAILED; -cleanup: - if(encs) { - size_t n; - for(n = 0; n < encs_count; n++) { - FREEMEM(encs[n].buffer); - } - FREEMEM(encs); - } - ASN__ENCODED_OK(er); -} - -int -SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_TYPE_member_t *elm = td->elements; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int ret; - int i; - - if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; - - /* Dump preamble */ - if(cb(td->name, strlen(td->name), app_key) < 0 - || cb(" ::= {", 6, app_key) < 0) - return -1; - - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - if(!memb_ptr) continue; - - _i_INDENT(1); - - ret = elm->type->op->print_struct(elm->type, memb_ptr, - ilevel + 1, cb, app_key); - if(ret) return ret; - } - - ilevel--; - _i_INDENT(1); - - return (cb("}", 1, app_key) < 0) ? -1 : 0; -} - -void -SET_OF_free(const asn_TYPE_descriptor_t *td, void *ptr, - enum asn_struct_free_method method) { - if(td && ptr) { - const asn_SET_OF_specifics_t *specs; - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); - asn_struct_ctx_t *ctx; /* Decoder context */ - int i; - - /* - * Could not use set_of_empty() because of (*free) - * incompatibility. - */ - for(i = 0; i < list->count; i++) { - void *memb_ptr = list->array[i]; - if(memb_ptr) - ASN_STRUCT_FREE(*elm->type, memb_ptr); - } - list->count = 0; /* No meaningful elements left */ - - asn_set_empty(list); /* Remove (list->array) */ - - specs = (const asn_SET_OF_specifics_t *)td->specifics; - ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); - if(ctx->ptr) { - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - } - - switch(method) { - case ASFM_FREE_EVERYTHING: - FREEMEM(ptr); - break; - case ASFM_FREE_UNDERLYING: - break; - case ASFM_FREE_UNDERLYING_AND_RESET: - memset(ptr, 0, specs->struct_size); - break; - } - } -} - -int -SET_OF_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const asn_TYPE_member_t *elm = td->elements; - asn_constr_check_f *constr; - const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); - int i; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - constr = elm->encoding_constraints.general_constraints; - if(!constr) constr = elm->type->encoding_constraints.general_constraints; - - /* - * Iterate over the members of an array. - * Validate each in turn, until one fails. - */ - for(i = 0; i < list->count; i++) { - const void *memb_ptr = list->array[i]; - int ret; - - if(!memb_ptr) continue; - - ret = constr(elm->type, memb_ptr, ctfailcb, app_key); - if(ret) return ret; - } - - return 0; -} - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -SET_OF_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - void *st = *sptr; - asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - int repeat = 0; - ssize_t nelems; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - list = _A_SET_FROM_VOID(st); - - /* Figure out which constraints to use */ - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted! */ - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - nelems = per_get_few_bits(pd, ct->effective_bits); - ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", - (long)nelems, ct->lower_bound, td->name); - if(nelems < 0) ASN__DECODE_STARVED; - nelems += ct->lower_bound; - } else { - nelems = -1; - } - - do { - int i; - if(nelems < 0) { - nelems = uper_get_length(pd, -1, 0, &repeat); - ASN_DEBUG("Got to decode %" ASN_PRI_SSIZE " elements (eff %d)", - nelems, (int)(ct ? ct->effective_bits : -1)); - if(nelems < 0) ASN__DECODE_STARVED; - } - - for(i = 0; i < nelems; i++) { - void *ptr = 0; - ASN_DEBUG("SET OF %s decoding", elm->type->name); - rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, &ptr, pd); - ASN_DEBUG("%s SET OF %s decoded %d, %p", - td->name, elm->type->name, rv.code, ptr); - if(rv.code == RC_OK) { - if(ASN_SET_ADD(list, ptr) == 0) { - if(rv.consumed == 0 && nelems > 200) { - /* Protect from SET OF NULL compression bombs. */ - ASN__DECODE_FAILED; - } - continue; - } - ASN_DEBUG("Failed to add element into %s", - td->name); - /* Fall through */ - rv.code = RC_FAIL; - } else { - ASN_DEBUG("Failed decoding %s of %s (SET OF)", - elm->type->name, td->name); - } - if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); - return rv; - } - - nelems = -1; /* Allow uper_get_length() */ - } while(repeat); - - ASN_DEBUG("Decoded %s as SET OF", td->name); - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - -asn_enc_rval_t -SET_OF_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - const asn_TYPE_member_t *elm = td->elements; - struct _el_buffer *encoded_els; - asn_enc_rval_t er = {0,0,0}; - size_t encoded_edx; - - if(!sptr) ASN__ENCODE_FAILED; - - list = _A_CSET_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED; - } else if(list->count == 0) { - /* When the list is empty add only the length determinant - * X.691, #20.6 and #11.9.4.1 - */ - if (uper_put_length(po, 0, 0)) { - ASN__ENCODE_FAILED; - } - ASN__ENCODED_OK(er); - } - - - /* - * Canonical UPER #22.1 mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_CUPER); - - for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { - ssize_t may_encode; - size_t edx; - int need_eom = 0; - - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - uper_put_length(po, list->count - encoded_edx, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { - const struct _el_buffer *el = &encoded_els[edx]; - if(asn_put_many_bits(po, el->buf, - (8 * el->length) - el->bits_unused) < 0) { - break; - } - } - - if(need_eom && uper_put_length(po, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - - encoded_edx += may_encode; - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - if((ssize_t)encoded_edx == list->count) { - ASN__ENCODED_OK(er); - } else { - ASN__ENCODE_FAILED; - } -} - -asn_enc_rval_t -SET_OF_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - const asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - const asn_TYPE_member_t *elm = td->elements; - struct _el_buffer *encoded_els; - asn_enc_rval_t er = {0,0,0}; - int seq; - - if(!sptr) ASN__ENCODE_FAILED; - - list = _A_CSET_FROM_VOID(sptr); - - er.encoded = 0; - - ASN_DEBUG("Encoding %s as SET OF (%d)", td->name, list->count); - - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - /* If extensible constraint, check if size is in root */ - if(ct) { - int not_in_root = - (list->count < ct->lower_bound || list->count > ct->upper_bound); - ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, - ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); - if(ct->flags & APC_EXTENSIBLE) { - /* Declare whether size is in extension root */ - if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; - if(not_in_root) ct = 0; - } else if(not_in_root && ct->effective_bits >= 0) { - ASN__ENCODE_FAILED; - } - - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - /*if(per_put_few_bits(po, list->count - ct->lower_bound, - ct->effective_bits)) - ASN__ENCODE_FAILED;*/ - - if (aper_put_length(po, ct->upper_bound - ct->lower_bound + 1, list->count - ct->lower_bound, 0) < 0) { - ASN__ENCODE_FAILED; - } - } - - /* - * Canonical PER #22.1 mandates dynamic sorting of the SET OF elements - * according to their encodings. Build an array of the encoded elements. - */ - encoded_els = SET_OF__encode_sorted(elm, list, SOES_CAPER); - - for(seq = 0; seq < list->count;) { - ssize_t may_encode; - int need_eom = 0; - if(ct && ct->effective_bits >= 0) { - may_encode = list->count; - } else { - may_encode = - aper_put_length(po, -1, list->count - seq, &need_eom); - if(may_encode < 0) ASN__ENCODE_FAILED; - } - - while(may_encode--) { - const struct _el_buffer *el = &encoded_els[seq++]; - if(asn_put_many_bits(po, el->buf, - (8 * el->length) - el->bits_unused) < 0) { - break; - } - } - if(need_eom && aper_put_length(po, -1, 0, 0)) - ASN__ENCODE_FAILED; /* End of Message length */ - } - - SET_OF__encode_sorted_free(encoded_els, list->count); - - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -SET_OF_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - const asn_TYPE_member_t *elm = td->elements; /* Single one */ - void *st = *sptr; - asn_anonymous_set_ *list; - const asn_per_constraint_t *ct; - int repeat = 0; - ssize_t nelems; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(!st) { - st = *sptr = CALLOC(1, specs->struct_size); - if(!st) ASN__DECODE_FAILED; - } - list = _A_SET_FROM_VOID(st); - - /* Figure out which constraints to use */ - if(constraints) ct = &constraints->size; - else if(td->encoding_constraints.per_constraints) - ct = &td->encoding_constraints.per_constraints->size; - else ct = 0; - - if(ct && ct->flags & APC_EXTENSIBLE) { - int value = per_get_few_bits(pd, 1); - if(value < 0) ASN__DECODE_STARVED; - if(value) ct = 0; /* Not restricted! */ - } - - if(ct && ct->effective_bits >= 0) { - /* X.691, #19.5: No length determinant */ - nelems = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); - ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", - (long)nelems, ct->lower_bound, td->name); - if(nelems < 0) ASN__DECODE_STARVED; - nelems += ct->lower_bound; - } else { - nelems = -1; - } - - do { - int i; - if(nelems < 0) { - nelems = aper_get_length(pd, ct ? ct->upper_bound - ct->lower_bound + 1 : -1, - ct ? ct->effective_bits : -1, &repeat); - ASN_DEBUG("Got to decode %d elements (eff %d)", - (int)nelems, (int)(ct ? ct->effective_bits : -1)); - if(nelems < 0) ASN__DECODE_STARVED; - } - - for(i = 0; i < nelems; i++) { - void *ptr = 0; - ASN_DEBUG("SET OF %s decoding", elm->type->name); - rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, - elm->encoding_constraints.per_constraints, &ptr, pd); - ASN_DEBUG("%s SET OF %s decoded %d, %p", - td->name, elm->type->name, rv.code, ptr); - if(rv.code == RC_OK) { - if(ASN_SET_ADD(list, ptr) == 0) - continue; - ASN_DEBUG("Failed to add element into %s", - td->name); - /* Fall through */ - rv.code = RC_FAIL; - } else { - ASN_DEBUG("Failed decoding %s of %s (SET OF)", - elm->type->name, td->name); - } - if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); - return rv; - } - - nelems = -1; /* Allow uper_get_length() */ - } while(repeat); - - ASN_DEBUG("Decoded %s as SET OF", td->name); - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -struct comparable_ptr { - const asn_TYPE_descriptor_t *td; - const void *sptr; -}; - -static int -SET_OF__compare_cb(const void *aptr, const void *bptr) { - const struct comparable_ptr *a = aptr; - const struct comparable_ptr *b = bptr; - assert(a->td == b->td); - return a->td->op->compare_struct(a->td, a->sptr, b->sptr); -} - -int -SET_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, - const void *bptr) { - const asn_anonymous_set_ *a = _A_CSET_FROM_VOID(aptr); - const asn_anonymous_set_ *b = _A_CSET_FROM_VOID(bptr); - - if(a && b) { - struct comparable_ptr *asorted; - struct comparable_ptr *bsorted; - ssize_t common_length; - ssize_t idx; - - if(a->count == 0) { - if(b->count) return -1; - return 0; - } else if(b->count == 0) { - return 1; - } - - asorted = MALLOC(a->count * sizeof(asorted[0])); - bsorted = MALLOC(b->count * sizeof(bsorted[0])); - if(!asorted || !bsorted) { - FREEMEM(asorted); - FREEMEM(bsorted); - return -1; - } - - for(idx = 0; idx < a->count; idx++) { - asorted[idx].td = td->elements->type; - asorted[idx].sptr = a->array[idx]; - } - - for(idx = 0; idx < b->count; idx++) { - bsorted[idx].td = td->elements->type; - bsorted[idx].sptr = b->array[idx]; - } - - qsort(asorted, a->count, sizeof(asorted[0]), SET_OF__compare_cb); - qsort(bsorted, b->count, sizeof(bsorted[0]), SET_OF__compare_cb); - - common_length = (a->count < b->count ? a->count : b->count); - for(idx = 0; idx < common_length; idx++) { - int ret = td->elements->type->op->compare_struct( - td->elements->type, asorted[idx].sptr, bsorted[idx].sptr); - if(ret) { - FREEMEM(asorted); - FREEMEM(bsorted); - return ret; - } - } - - FREEMEM(asorted); - FREEMEM(bsorted); - - if(idx < b->count) /* more elements in b */ - return -1; /* a is shorter, so put it first */ - if(idx < a->count) return 1; - } else if(!a) { - return -1; - } else if(!b) { - return 1; - } - - return 0; -} - - -asn_TYPE_operation_t asn_OP_SET_OF = { - SET_OF_free, - SET_OF_print, - SET_OF_compare, - SET_OF_decode_ber, - SET_OF_encode_der, - SET_OF_decode_xer, - SET_OF_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - SET_OF_decode_oer, - SET_OF_encode_oer, -#endif -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - SET_OF_decode_uper, - SET_OF_encode_uper, - SET_OF_decode_aper, - SET_OF_encode_aper, -#endif /* ASN_DISABLE_PER_SUPPORT */ - SET_OF_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; - - -asn_random_fill_result_t -SET_OF_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constraints, - size_t max_length) { - const asn_SET_OF_specifics_t *specs = - (const asn_SET_OF_specifics_t *)td->specifics; - asn_random_fill_result_t res_ok = {ARFILL_OK, 0}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - const asn_TYPE_member_t *elm = td->elements; - void *st = *sptr; - long max_elements = 5; - long slb = 0; /* Lower size bound */ - long sub = 0; /* Upper size bound */ - size_t rnd_len; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (*sptr = CALLOC(1, specs->struct_size)); - if(st == NULL) { - return result_failed; - } - } - - switch(asn_random_between(0, 6)) { - case 0: max_elements = 0; break; - case 1: max_elements = 1; break; - case 2: max_elements = 5; break; - case 3: max_elements = max_length; break; - case 4: max_elements = max_length / 2; break; - case 5: max_elements = max_length / 4; break; - default: break; - } - sub = slb + max_elements; - - if(!constraints || !constraints->per_constraints) - constraints = &td->encoding_constraints; - if(constraints->per_constraints) { - const asn_per_constraint_t *pc = &constraints->per_constraints->size; - if(pc->flags & APC_SEMI_CONSTRAINED) { - slb = pc->lower_bound; - sub = pc->lower_bound + max_elements; - } else if(pc->flags & APC_CONSTRAINED) { - slb = pc->lower_bound; - sub = pc->upper_bound; - if(sub - slb > max_elements) sub = slb + max_elements; - } - } - - /* Bias towards edges of allowed space */ - switch(asn_random_between(-1, 4)) { - default: - case -1: - /* Prepare lengths somewhat outside of constrained range. */ - if(constraints->per_constraints - && (constraints->per_constraints->size.flags & APC_EXTENSIBLE)) { - switch(asn_random_between(0, 5)) { - default: - case 0: - rnd_len = 0; - break; - case 1: - if(slb > 0) { - rnd_len = slb - 1; - } else { - rnd_len = 0; - } - break; - case 2: - rnd_len = asn_random_between(0, slb); - break; - case 3: - if(sub < (ssize_t)max_length) { - rnd_len = sub + 1; - } else { - rnd_len = max_length; - } - break; - case 4: - if(sub < (ssize_t)max_length) { - rnd_len = asn_random_between(sub + 1, max_length); - } else { - rnd_len = max_length; - } - break; - case 5: - rnd_len = max_length; - break; - } - break; - } - /* Fall through */ - case 0: - rnd_len = asn_random_between(slb, sub); - break; - case 1: - if(slb < sub) { - rnd_len = asn_random_between(slb + 1, sub); - break; - } - /* Fall through */ - case 2: - rnd_len = asn_random_between(slb, slb); - break; - case 3: - if(slb < sub) { - rnd_len = asn_random_between(slb, sub - 1); - break; - } - /* Fall through */ - case 4: - rnd_len = asn_random_between(sub, sub); - break; - } - - for(; rnd_len > 0; rnd_len--) { - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - void *ptr = 0; - asn_random_fill_result_t tmpres = elm->type->op->random_fill( - elm->type, &ptr, &elm->encoding_constraints, - (max_length > res_ok.length ? max_length - res_ok.length : 0) - / rnd_len); - switch(tmpres.code) { - case ARFILL_OK: - ASN_SET_ADD(list, ptr); - res_ok.length += tmpres.length; - break; - case ARFILL_SKIPPED: - break; - case ARFILL_FAILED: - assert(ptr == 0); - return tmpres; - } - } - - return res_ok; -} - diff --git a/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c deleted file mode 100644 index 520051811..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c +++ /dev/null @@ -1,285 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_DISABLE_OER_SUPPORT - -#include -#include -#include -#include - -/* - * This macro "eats" the part of the buffer which is definitely "consumed", - * i.e. was correctly converted into local representation or rightfully skipped. - */ -#undef ADVANCE -#define ADVANCE(num_bytes) \ - do { \ - size_t num = num_bytes; \ - ptr = ((const char *)ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -/* - * Switch to the next phase of parsing. - */ -#undef NEXT_PHASE -#define NEXT_PHASE(ctx) \ - do { \ - ctx->phase++; \ - ctx->step = 0; \ - } while(0) -#undef SET_PHASE -#define SET_PHASE(ctx, value) \ - do { \ - ctx->phase = value; \ - ctx->step = 0; \ - } while(0) - -/* - * Return a standardized complex structure. - */ -#undef RETURN -#define RETURN(_code) \ - do { \ - asn_dec_rval_t rval; \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - return rval; \ - } while(0) - -/* - * The SEQUENCE OF and SET OF values utilize a "quantity field". - * It is is a pointless combination of #8.6 (length determinant, capable - * of encoding tiny and huge numbers in the shortest possible number of octets) - * and the variable sized integer. What could have been encoded by #8.6 alone - * is required to be encoded by #8.6 followed by that number of unsigned octets. - * This doesn't make too much sense. It seems that the original version of OER - * standard have been using the unconstrained unsigned integer as a quantity - * field, and this legacy have gone through ISO/ITU-T standardization process. - */ -static ssize_t -oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) { - const uint8_t *b; - const uint8_t *bend; - size_t len = 0; - size_t qty; - - ssize_t len_len = oer_fetch_length(ptr, size, &len); - if(len_len <= 0) { - *qty_r = 0; - return len_len; - } - - if((len_len + len) > size) { - *qty_r = 0; - return 0; - } - - b = (const uint8_t *)ptr + len_len; - bend = b + len; - - /* Skip the leading 0-bytes */ - for(; b < bend && *b == 0; b++) { - } - - if((bend - b) > (ssize_t)sizeof(size_t)) { - /* Length is not representable by the native size_t type */ - *qty_r = 0; - return -1; - } - - for(qty = 0; b < bend; b++) { - qty = (qty << 8) + *b; - } - - if(qty > RSIZE_MAX) { /* A bit of C11 validation */ - *qty_r = 0; - return -1; - } - - *qty_r = qty; - assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr)); - return len_len + len; -} - -asn_dec_rval_t -SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *ptr, size_t size) { - const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; - asn_dec_rval_t rval = {RC_OK, 0}; - void *st = *struct_ptr; /* Target structure */ - asn_struct_ctx_t *ctx; /* Decoder context */ - size_t consumed_myself = 0; /* Consumed bytes from ptr. */ - - (void)constraints; - - if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) - ASN__DECODE_FAILED; - - /* - * Create the target structure if it is not present already. - */ - if(st == 0) { - st = *struct_ptr = CALLOC(1, specs->struct_size); - if(st == 0) { - RETURN(RC_FAIL); - } - } - - /* - * Restore parsing context. - */ - ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); - - /* - * Start to parse where left previously. - */ - switch(ctx->phase) { - case 0: { - /* - * Fetch number of elements to decode. - */ - size_t length = 0; - size_t len_size = oer_fetch_quantity(ptr, size, &length); - switch(len_size) { - case 0: - RETURN(RC_WMORE); - case -1: - RETURN(RC_FAIL); - default: - ADVANCE(len_size); - ctx->left = length; - } - } - NEXT_PHASE(ctx); - /* FALL THROUGH */ - case 1: { - /* Decode components of the extension root */ - asn_TYPE_member_t *elm = td->elements; - asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); - const void *base_ptr = ptr; - ber_tlv_len_t base_ctx_left = ctx->left; - - assert(td->elements_count == 1); - - ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name); - - for(; ctx->left > 0; ctx->left--) { - asn_dec_rval_t rv = elm->type->op->oer_decoder( - opt_codec_ctx, elm->type, - elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr, - size); - ADVANCE(rv.consumed); - switch(rv.code) { - case RC_OK: - if(ASN_SET_ADD(list, ctx->ptr) != 0) { - RETURN(RC_FAIL); - } else { - ctx->ptr = 0; - /* - * This check is to avoid compression bomb with - * specs like SEQUENCE/SET OF NULL which don't - * consume data at all. - */ - if(rv.consumed == 0 && base_ptr == ptr - && (base_ctx_left - ctx->left) > 200) { - ASN__DECODE_FAILED; - } - break; - } - case RC_WMORE: - RETURN(RC_WMORE); - case RC_FAIL: - ASN_STRUCT_FREE(*elm->type, ctx->ptr); - ctx->ptr = 0; - SET_PHASE(ctx, 3); - RETURN(RC_FAIL); - } - } - /* Decoded decently. */ - NEXT_PHASE(ctx); - } - /* Fall through */ - case 2: - /* Ignore fully decoded */ - assert(ctx->left == 0); - RETURN(RC_OK); - case 3: - /* Failed to decode. */ - RETURN(RC_FAIL); - } - - return rval; -} - -static ssize_t -oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) { - uint8_t buf[1 + sizeof(size_t)]; - uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */ - size_t encoded; - - do { - *b-- = qty; - qty >>= 8; - } while(qty); - - *b = sizeof(buf) - (b-buf) - 1; - encoded = sizeof(buf) - (b-buf); - if(cb(b, encoded, app_key) < 0) - return -1; - return encoded; -} - -/* - * Encode as Canonical OER. - */ -asn_enc_rval_t -SET_OF_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const asn_TYPE_member_t *elm; - const asn_anonymous_set_ *list; - size_t computed_size = 0; - ssize_t qty_len; - int n; - - (void)constraints; - - if(!sptr) ASN__ENCODE_FAILED; - - elm = td->elements; - list = _A_CSET_FROM_VOID(sptr); - - qty_len = oer_put_quantity(list->count, cb, app_key); - if(qty_len < 0) { - ASN__ENCODE_FAILED; - } - computed_size += qty_len; - - for(n = 0; n < list->count; n++) { - void *memb_ptr = list->array[n]; - asn_enc_rval_t er = {0,0,0}; - er = elm->type->op->oer_encoder( - elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, - app_key); - if(er.encoded < 0) { - return er; - } else { - computed_size += er.encoded; - } - } - - { - asn_enc_rval_t erval = {0,0,0}; - erval.encoded = computed_size; - ASN__ENCODED_OK(erval); - } -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_TYPE.c b/src/tmx/Asn_J2735/src/r63/constr_TYPE.c deleted file mode 100644 index aefaefdb7..000000000 --- a/src/tmx/Asn_J2735/src/r63/constr_TYPE.c +++ /dev/null @@ -1,80 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * Version of the ASN.1 infrastructure shipped with compiler. - */ -int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } - -static asn_app_consume_bytes_f _print2fp; - -/* - * Return the outmost tag of the type. - */ -ber_tlv_tag_t -asn_TYPE_outmost_tag(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { - - if(tag_mode) - return tag; - - if(type_descriptor->tags_count) - return type_descriptor->tags[0]; - - return type_descriptor->op->outmost_tag(type_descriptor, struct_ptr, 0, 0); -} - -/* - * Print the target language's structure in human readable form. - */ -int -asn_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, - const void *struct_ptr) { - if(!stream) stream = stdout; - if(!td || !struct_ptr) { - errno = EINVAL; - return -1; - } - - /* Invoke type-specific printer */ - if(td->op->print_struct(td, struct_ptr, 1, _print2fp, stream)) { - return -1; - } - - /* Terminate the output */ - if(_print2fp("\n", 1, stream)) { - return -1; - } - - return fflush(stream); -} - -/* Dump the data into the specified stdio stream */ -static int -_print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - - -/* - * Some compilers do not support variable args macros. - * This function is a replacement of ASN_DEBUG() macro. - */ -void ASN_DEBUG_f(const char *fmt, ...); -void ASN_DEBUG_f(const char *fmt, ...) { - va_list ap; - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - fprintf(stderr, "\n"); - va_end(ap); -} diff --git a/src/tmx/Asn_J2735/src/r63/constraints.c b/src/tmx/Asn_J2735/src/r63/constraints.c deleted file mode 100644 index df3c6c194..000000000 --- a/src/tmx/Asn_J2735/src/r63/constraints.c +++ /dev/null @@ -1,93 +0,0 @@ -#include -#include - -int -asn_generic_no_constraint(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, - asn_app_constraint_failed_f *cb, void *key) { - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Nothing to check */ - return 0; -} - -int -asn_generic_unknown_constraint(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, - asn_app_constraint_failed_f *cb, void *key) { - (void)type_descriptor; /* Unused argument */ - (void)struct_ptr; /* Unused argument */ - (void)cb; /* Unused argument */ - (void)key; /* Unused argument */ - - /* Unknown how to check */ - return 0; -} - -struct errbufDesc { - const asn_TYPE_descriptor_t *failed_type; - const void *failed_struct_ptr; - char *errbuf; - size_t errlen; -}; - -static void -_asn_i_ctfailcb(void *key, const asn_TYPE_descriptor_t *td, const void *sptr, - const char *fmt, ...) { - struct errbufDesc *arg = key; - va_list ap; - ssize_t vlen; - ssize_t maxlen; - - arg->failed_type = td; - arg->failed_struct_ptr = sptr; - - maxlen = arg->errlen; - if(maxlen <= 0) - return; - - va_start(ap, fmt); - vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); - va_end(ap); - if(vlen >= maxlen) { - arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ - arg->errlen = maxlen - 1; /* Not counting termination */ - return; - } else if(vlen >= 0) { - arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ - arg->errlen = vlen; /* Not counting termination */ - } else { - /* - * The libc on this system is broken. - */ - vlen = sizeof("") - 1; - maxlen--; - arg->errlen = vlen < maxlen ? vlen : maxlen; - memcpy(arg->errbuf, "", arg->errlen); - arg->errbuf[arg->errlen] = 0; - } - - return; -} - -int -asn_check_constraints(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, char *errbuf, size_t *errlen) { - struct errbufDesc arg; - int ret; - - arg.failed_type = 0; - arg.failed_struct_ptr = 0; - arg.errbuf = errbuf; - arg.errlen = errlen ? *errlen : 0; - - ret = type_descriptor->encoding_constraints.general_constraints( - type_descriptor, struct_ptr, _asn_i_ctfailcb, &arg); - if(ret == -1 && errlen) *errlen = arg.errlen; - - return ret; -} - diff --git a/src/tmx/Asn_J2735/src/r63/der_encoder.c b/src/tmx/Asn_J2735/src/r63/der_encoder.c deleted file mode 100644 index 2c6a6f769..000000000 --- a/src/tmx/Asn_J2735/src/r63/der_encoder.c +++ /dev/null @@ -1,194 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, int constructed); - -/* - * The DER encoder of any type. - */ -asn_enc_rval_t -der_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes, void *app_key) { - ASN_DEBUG("DER encoder invoked for %s", - type_descriptor->name); - - /* - * Invoke type-specific encoder. - */ - return type_descriptor->op->der_encoder( - type_descriptor, struct_ptr, /* Pointer to the destination structure */ - 0, 0, consume_bytes, app_key); -} - -/* - * Argument type and callback necessary for der_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -/* - * A variant of the der_encode() which encodes the data into the provided buffer - */ -asn_enc_rval_t -der_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, - const void *struct_ptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg arg; - asn_enc_rval_t ec; - - arg.buffer = buffer; - arg.left = buffer_size; - - ec = type_descriptor->op->der_encoder(type_descriptor, - struct_ptr, /* Pointer to the destination structure */ - 0, 0, encode_to_buffer_cb, &arg); - if(ec.encoded != -1) { - assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); - /* Return the encoded contents size */ - } - return ec; -} - - -/* - * Write out leading TL[v] sequence according to the type definition. - */ -ssize_t -der_write_tags(const asn_TYPE_descriptor_t *sd, size_t struct_length, - int tag_mode, int last_tag_form, - ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ - asn_app_consume_bytes_f *cb, void *app_key) { -#define ASN1_DER_MAX_TAGS_COUNT 4 - ber_tlv_tag_t - tags_buf_scratch[ASN1_DER_MAX_TAGS_COUNT * sizeof(ber_tlv_tag_t)]; - ssize_t lens[ASN1_DER_MAX_TAGS_COUNT * sizeof(ssize_t)]; - const ber_tlv_tag_t *tags; /* Copy of tags stream */ - int tags_count; /* Number of tags */ - size_t overall_length; - int i; - - ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", - sd->name, tag_mode, sd->tags_count, - ber_tlv_tag_string(tag), - tag_mode - ?(sd->tags_count+1 - -((tag_mode == -1) && sd->tags_count)) - :sd->tags_count - ); - - if(sd->tags_count + 1 > ASN1_DER_MAX_TAGS_COUNT) { - ASN_DEBUG("System limit %d on tags count", ASN1_DER_MAX_TAGS_COUNT); - return -1; - } - - if(tag_mode) { - /* - * Instead of doing shaman dance like we do in ber_check_tags(), - * allocate a small array on the stack - * and initialize it appropriately. - */ - int stag_offset; - ber_tlv_tag_t *tags_buf = tags_buf_scratch; - tags_count = sd->tags_count - + 1 /* EXPLICIT or IMPLICIT tag is given */ - - ((tag_mode == -1) && sd->tags_count); - /* Copy tags over */ - tags_buf[0] = tag; - stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); - for(i = 1; i < tags_count; i++) - tags_buf[i] = sd->tags[i + stag_offset]; - tags = tags_buf; - } else { - tags = sd->tags; - tags_count = sd->tags_count; - } - - /* No tags to write */ - if(tags_count == 0) - return 0; - - /* - * Array of tags is initialized. - * Now, compute the size of the TLV pairs, from right to left. - */ - overall_length = struct_length; - for(i = tags_count - 1; i >= 0; --i) { - lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); - if(lens[i] == -1) return -1; - overall_length += lens[i]; - lens[i] = overall_length - lens[i]; - } - - if(!cb) return overall_length - struct_length; - - ASN_DEBUG("Encoding %s TL sequence (%d elements)", sd->name, - tags_count); - - /* - * Encode the TL sequence for real. - */ - for(i = 0; i < tags_count; i++) { - ssize_t len; - int _constr; - - /* Check if this tag happens to be constructed */ - _constr = (last_tag_form || i < (tags_count - 1)); - - len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); - if(len == -1) return -1; - } - - return overall_length - struct_length; -} - -static ssize_t -der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, - asn_app_consume_bytes_f *cb, void *app_key, - int constructed) { - uint8_t buf[32]; - size_t size = 0; - int buf_size = cb?sizeof(buf):0; - ssize_t tmp; - - /* Serialize tag (T from TLV) into possibly zero-length buffer */ - tmp = ber_tlv_tag_serialize(tag, buf, buf_size); - if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; - size += tmp; - - /* Serialize length (L from TLV) into possibly zero-length buffer */ - tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); - if(tmp == -1) return -1; - size += tmp; - - if(size > sizeof(buf)) - return -1; - - /* - * If callback is specified, invoke it, and check its return value. - */ - if(cb) { - if(constructed) *buf |= 0x20; - if(cb(buf, size, app_key) < 0) - return -1; - } - - return size; -} diff --git a/src/tmx/Asn_J2735/src/r63/oer_decoder.c b/src/tmx/Asn_J2735/src/r63/oer_decoder.c deleted file mode 100644 index 070173826..000000000 --- a/src/tmx/Asn_J2735/src/r63/oer_decoder.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * The OER decoder of any type. - */ -asn_dec_rval_t -oer_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, - const void *ptr, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0, - struct_ptr, /* Pointer to the destination structure */ - ptr, size /* Buffer and its size */ - ); -} - -/* - * Open Type is encoded as a length (#8.6) followed by that number of bytes. - * Since we're just skipping, reading the length would be enough. - */ -ssize_t -oer_open_type_skip(const void *bufptr, size_t size) { - size_t len = 0; - return oer_fetch_length(bufptr, size, &len); -} - -/* - * Read the Open Type (X.696 (08/2015), #30). - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t -oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, - const struct asn_TYPE_descriptor_s *td, - const asn_oer_constraints_t *constraints, void **struct_ptr, - const void *bufptr, size_t size) { - asn_dec_rval_t dr; - size_t container_len = 0; - ssize_t len_len; - enum asn_struct_free_method dispose_method = - (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING; - - /* Get the size of a length determinant */ - len_len = oer_fetch_length(bufptr, size, &container_len); - if(len_len <= 0) { - return len_len; /* Error or more data expected */ - } - - /* - * len_len can't be bigger than size, but size without len_len - * should be bigger or equal to container length - */ - if(size - len_len < container_len) { - /* More data is expected */ - return 0; - } - - dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr, - (const uint8_t *)bufptr + len_len, container_len); - if(dr.code == RC_OK) { - return len_len + container_len; - } else { - /* Even if RC_WMORE, we can't get more data into a closed container. */ - td->op->free_struct(td, *struct_ptr, dispose_method); - *struct_ptr = NULL; - return -1; - } -} - - -asn_dec_rval_t -oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; - asn_dec_rval_t rval = {RC_OK, 0}; - size_t expected_length = 0; - ssize_t len_len; - - (void)td; - (void)opt_codec_ctx; - (void)constraints; - - if(!st) { - st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC( - 1, sizeof(ASN__PRIMITIVE_TYPE_t))); - if(!st) ASN__DECODE_FAILED; - } - - - /* - * X.696 (08/2015) #27.2 - * Encode length determinant as _number of octets_, but only - * if upper bound is not equal to lower bound. - */ - len_len = oer_fetch_length(ptr, size, &expected_length); - if(len_len > 0) { - rval.consumed = len_len; - ptr = (const char *)ptr + len_len; - size -= len_len; - } else if(len_len == 0) { - ASN__DECODE_STARVED; - } else if(len_len < 0) { - ASN__DECODE_FAILED; - } - - if(size < expected_length) { - ASN__DECODE_STARVED; - } else { - uint8_t *buf = MALLOC(expected_length + 1); - if(buf == NULL) { - ASN__DECODE_FAILED; - } else { - memcpy(buf, ptr, expected_length); - buf[expected_length] = '\0'; - } - FREEMEM(st->buf); - st->buf = buf; - st->size = expected_length; - - rval.consumed += expected_length; - return rval; - } -} diff --git a/src/tmx/Asn_J2735/src/r63/oer_encoder.c b/src/tmx/Asn_J2735/src/r63/oer_encoder.c deleted file mode 100644 index a284cc2f3..000000000 --- a/src/tmx/Asn_J2735/src/r63/oer_encoder.c +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* - * The OER encoder of any type. - */ -asn_enc_rval_t -oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, - asn_app_consume_bytes_f *consume_bytes, void *app_key) { - ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name); - - /* - * Invoke type-specific encoder. - */ - return type_descriptor->op->oer_encoder( - type_descriptor, 0, - struct_ptr, /* Pointer to the destination structure */ - consume_bytes, app_key); -} - -/* - * Argument type and callback necessary for oer_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int -encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -/* - * A variant of the oer_encode() which encodes the data into the provided buffer - */ -asn_enc_rval_t -oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, - const asn_oer_constraints_t *constraints, - const void *struct_ptr, /* Structure to be encoded */ - void *buffer, /* Pre-allocated buffer */ - size_t buffer_size /* Initial buffer size (maximum) */ -) { - enc_to_buf_arg arg; - asn_enc_rval_t ec; - - arg.buffer = buffer; - arg.left = buffer_size; - - if(type_descriptor->op->oer_encoder == NULL) { - ec.encoded = -1; - ec.failed_type = type_descriptor; - ec.structure_ptr = struct_ptr; - ASN_DEBUG("OER encoder is not defined for %s", - type_descriptor->name); - } else { - ec = type_descriptor->op->oer_encoder( - type_descriptor, constraints, - struct_ptr, /* Pointer to the destination structure */ - encode_to_buffer_cb, &arg); - if(ec.encoded != -1) { - assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); - /* Return the encoded contents size */ - } - } - return ec; -} - -asn_enc_rval_t -oer_encode_primitive(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; - asn_enc_rval_t er = {0, 0, 0}; - ssize_t ret; - - (void)constraints; - - if(!st) ASN__ENCODE_FAILED; - - ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size); - - /* - * X.696 (08/2015) #27.2 - */ - ret = oer_serialize_length(st->size, cb, app_key); - if(ret < 0) { - ASN__ENCODE_FAILED; - } - er.encoded += ret; - - er.encoded += st->size; - if(cb(st->buf, st->size, app_key) < 0) { - ASN__ENCODE_FAILED; - } else { - ASN__ENCODED_OK(er); - } -} - -static int -oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) { - size_t *bytes = bytes_ptr; - (void)buffer; - *bytes += size; - return 0; -} - -ssize_t -oer_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - size_t serialized_byte_count = 0; - asn_enc_rval_t er = {0,0,0}; - ssize_t len_len; - - er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes, - &serialized_byte_count); - if(er.encoded < 0) return -1; - assert(serialized_byte_count == (size_t)er.encoded); - - len_len = oer_serialize_length(serialized_byte_count, cb, app_key); - if(len_len == -1) return -1; - - er = td->op->oer_encoder(td, constraints, sptr, cb, app_key); - if(er.encoded < 0) return -1; - assert(serialized_byte_count == (size_t)er.encoded); - - return len_len + er.encoded; -} - diff --git a/src/tmx/Asn_J2735/src/r63/oer_support.c b/src/tmx/Asn_J2735/src/r63/oer_support.c deleted file mode 100644 index b15a3bc93..000000000 --- a/src/tmx/Asn_J2735/src/r63/oer_support.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (c) 2017 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -#include - -/* - * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r. - * RETURN VALUES: - * 0: More data expected than bufptr contains. - * -1: Fatal error deciphering length. - * >0: Number of bytes used from bufptr. - */ -ssize_t -oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) { - uint8_t first_byte; - size_t len_len; /* Length of the length determinant */ - const uint8_t *b; - const uint8_t *bend; - size_t len; - - if(size == 0) { - *len_r = 0; - return 0; - } - - first_byte = *(const uint8_t *)bufptr; - if((first_byte & 0x80) == 0) { /* Short form */ - *len_r = first_byte; /* 0..127 */ - return 1; - } - - len_len = (first_byte & 0x7f); - if((1 + len_len) > size) { - *len_r = 0; - return 0; - } - - b = (const uint8_t *)bufptr + 1; - bend = b + len_len; - - for(; b < bend && *b == 0; b++) { - /* Skip the leading 0-bytes */ - } - - if((bend - b) > (ssize_t)sizeof(size_t)) { - /* Length is not representable by the native size_t type */ - *len_r = 0; - return -1; - } - - for(len = 0; b < bend; b++) { - len = (len << 8) + *b; - } - - if(len > RSIZE_MAX) { /* A bit of C11 validation */ - *len_r = 0; - return -1; - } - - *len_r = len; - assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr)); - return len_len + 1; -} - - -/* - * Serialize OER length. Returns the number of bytes serialized - * or -1 if a given callback returned with negative result. - */ -ssize_t -oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, - void *app_key) { - uint8_t scratch[1 + sizeof(length)]; - uint8_t *sp = scratch; - int littleEndian = 1; /* Run-time detection */ - const uint8_t *pstart; - const uint8_t *pend; - const uint8_t *p; - int add; - - if(length <= 127) { - uint8_t b = length; - if(cb(&b, 1, app_key) < 0) { - return -1; - } - return 1; - } - - if(*(char *)&littleEndian) { - pstart = (const uint8_t *)&length + sizeof(length) - 1; - pend = (const uint8_t *)&length; - add = -1; - } else { - pstart = (const uint8_t *)&length; - pend = pstart + sizeof(length); - add = 1; - } - - for(p = pstart; p != pend; p += add) { - /* Skip leading zeros. */ - if(*p) break; - } - - for(sp = scratch + 1; ; p += add) { - *sp++ = *p; - if(p == pend) break; - } - assert((sp - scratch) - 1 <= 0x7f); - scratch[0] = 0x80 + ((sp - scratch) - 1); - - if(cb(scratch, sp - scratch, app_key) < 0) { - return -1; - } - - return sp - scratch; -} - diff --git a/src/tmx/Asn_J2735/src/r63/pdu_collection.c b/src/tmx/Asn_J2735/src/r63/pdu_collection.c deleted file mode 100644 index 4b0c0c9c3..000000000 --- a/src/tmx/Asn_J2735/src/r63/pdu_collection.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - */ - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -extern struct asn_TYPE_descriptor_s asn_DEF_MessageFrame; -extern struct asn_TYPE_descriptor_s asn_DEF_DDate; -extern struct asn_TYPE_descriptor_s asn_DEF_DFullTime; -extern struct asn_TYPE_descriptor_s asn_DEF_DMonthDay; -extern struct asn_TYPE_descriptor_s asn_DEF_DTime; -extern struct asn_TYPE_descriptor_s asn_DEF_DYearMonth; -extern struct asn_TYPE_descriptor_s asn_DEF_VerticalOffset; -extern struct asn_TYPE_descriptor_s asn_DEF_CodeWord; -extern struct asn_TYPE_descriptor_s asn_DEF_Count; -extern struct asn_TYPE_descriptor_s asn_DEF_Duration; -extern struct asn_TYPE_descriptor_s asn_DEF_Location_quality; -extern struct asn_TYPE_descriptor_s asn_DEF_Location_tech; -extern struct asn_TYPE_descriptor_s asn_DEF_MessageBLOB; -extern struct asn_TYPE_descriptor_s asn_DEF_PayloadData; -extern struct asn_TYPE_descriptor_s asn_DEF_SignalReqScheme; -extern struct asn_TYPE_descriptor_s asn_DEF_TransitStatus; -extern struct asn_TYPE_descriptor_s asn_DEF_URL_Link; -extern struct asn_TYPE_descriptor_s asn_DEF_ConnectionManeuverAssist_addGrpC; -extern struct asn_TYPE_descriptor_s asn_DEF_IntersectionState_addGrpC; -extern struct asn_TYPE_descriptor_s asn_DEF_MapData_addGrpC; -extern struct asn_TYPE_descriptor_s asn_DEF_Position3D_addGrpC; -extern struct asn_TYPE_descriptor_s asn_DEF_RestrictionUserType_addGrpC; -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_Angle; -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_MsgCount; -extern struct asn_TYPE_descriptor_s asn_DEF_LaneDataAttribute_addGrpB; -extern struct asn_TYPE_descriptor_s asn_DEF_MovementEvent_addGrpB; -extern struct asn_TYPE_descriptor_s asn_DEF_NodeOffsetPointXY_addGrpB; -extern struct asn_TYPE_descriptor_s asn_DEF_Position3D_addGrpB; -extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_TimeMark; -extern struct asn_TYPE_descriptor_s asn_DEF_EXTERNAL; - - -struct asn_TYPE_descriptor_s *asn_pdu_collection[] = { - /* From module DSRC in J2735_201603_ASN_CC.asn */ - &asn_DEF_MessageFrame, - &asn_DEF_DDate, - &asn_DEF_DFullTime, - &asn_DEF_DMonthDay, - &asn_DEF_DTime, - &asn_DEF_DYearMonth, - &asn_DEF_VerticalOffset, - &asn_DEF_CodeWord, - &asn_DEF_Count, - &asn_DEF_Duration, - &asn_DEF_Location_quality, - &asn_DEF_Location_tech, - &asn_DEF_MessageBLOB, - &asn_DEF_PayloadData, - &asn_DEF_SignalReqScheme, - &asn_DEF_TransitStatus, - &asn_DEF_URL_Link, - /* From module AddGrpC in J2735_201603_ASN_CC.asn */ - &asn_DEF_ConnectionManeuverAssist_addGrpC, - &asn_DEF_IntersectionState_addGrpC, - &asn_DEF_MapData_addGrpC, - &asn_DEF_Position3D_addGrpC, - &asn_DEF_RestrictionUserType_addGrpC, - /* From module AddGrpB in J2735_201603_ASN_CC.asn */ - &asn_DEF_AddGrpB_Angle, - &asn_DEF_AddGrpB_MsgCount, - &asn_DEF_LaneDataAttribute_addGrpB, - &asn_DEF_MovementEvent_addGrpB, - &asn_DEF_NodeOffsetPointXY_addGrpB, - &asn_DEF_Position3D_addGrpB, - &asn_DEF_AddGrpB_TimeMark, - /* From module ASN1C-UsefulInformationObjectClasses in /usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1 */ - &asn_DEF_EXTERNAL, - 0 -}; - diff --git a/src/tmx/Asn_J2735/src/r63/per_decoder.c b/src/tmx/Asn_J2735/src/r63/per_decoder.c deleted file mode 100644 index 8a3e39df8..000000000 --- a/src/tmx/Asn_J2735/src/r63/per_decoder.c +++ /dev/null @@ -1,185 +0,0 @@ -#include -#include -#include - -/* - * Decode a "Production of a complete encoding", X.691#10.1. - * The complete encoding contains at least one byte, and is an integral - * multiple of 8 bytes. - */ -asn_dec_rval_t -uper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buffer, size_t size) { - asn_dec_rval_t rval; - - rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); - if(rval.consumed) { - /* - * We've always given 8-aligned data, - * so convert bits to integral bytes. - */ - rval.consumed += 7; - rval.consumed >>= 3; - } else if(rval.code == RC_OK) { - if(size) { - if(((const uint8_t *)buffer)[0] == 0) { - rval.consumed = 1; /* 1 byte */ - } else { - ASN_DEBUG("Expecting single zeroed byte"); - rval.code = RC_FAIL; - } - } else { - /* Must contain at least 8 bits. */ - rval.code = RC_WMORE; - } - } - - return rval; -} - -asn_dec_rval_t -uper_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, - size_t size, int skip_bits, int unused_bits) { - asn_codec_ctx_t s_codec_ctx; - asn_dec_rval_t rval; - asn_per_data_t pd; - - if(skip_bits < 0 || skip_bits > 7 - || unused_bits < 0 || unused_bits > 7 - || (unused_bits > 0 && !size)) - ASN__DECODE_FAILED; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* Fill in the position indicator */ - memset(&pd, 0, sizeof(pd)); - pd.buffer = (const uint8_t *)buffer; - pd.nboff = skip_bits; - pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ - if(pd.nboff > pd.nbits) - ASN__DECODE_FAILED; - - /* - * Invoke type-specific decoder. - */ - if(!td->op->uper_decoder) - ASN__DECODE_FAILED; /* PER is not compiled in */ - rval = td->op->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); - if(rval.code == RC_OK) { - /* Return the number of consumed bits */ - rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) - + pd.nboff - skip_bits; - ASN_DEBUG("PER decoding consumed %ld, counted %ld", - (long)rval.consumed, (long)pd.moved); - assert(rval.consumed == pd.moved); - } else { - /* PER codec is not a restartable */ - rval.consumed = 0; - } - return rval; -} - -asn_dec_rval_t -aper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const void *buffer, size_t size) { - asn_dec_rval_t rval; - - rval = aper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); - if(rval.consumed) { - /* - * We've always given 8-aligned data, - * so convert bits to integral bytes. - */ - rval.consumed += 7; - rval.consumed >>= 3; - } else if(rval.code == RC_OK) { - if(size) { - if(((const uint8_t *)buffer)[0] == 0) { - rval.consumed = 1; /* 1 byte */ - } else { - ASN_DEBUG("Expecting single zeroed byte"); - rval.code = RC_FAIL; - } - } else { - /* Must contain at least 8 bits. */ - rval.code = RC_WMORE; - } - } - - return rval; -} - -asn_dec_rval_t -aper_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, - size_t size, int skip_bits, int unused_bits) { - asn_codec_ctx_t s_codec_ctx; - asn_dec_rval_t rval; - asn_per_data_t pd; - - if(skip_bits < 0 || skip_bits > 7 - || unused_bits < 0 || unused_bits > 7 - || (unused_bits > 0 && !size)) - ASN__DECODE_FAILED; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* Fill in the position indicator */ - memset(&pd, 0, sizeof(pd)); - pd.buffer = (const uint8_t *)buffer; - pd.nboff = skip_bits; - pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ - if(pd.nboff > pd.nbits) - ASN__DECODE_FAILED; - - /* - * Invoke type-specific decoder. - */ - if(!td->op->aper_decoder) - ASN__DECODE_FAILED; /* PER is not compiled in */ - rval = td->op->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd); - if(rval.code == RC_OK) { - /* Return the number of consumed bits */ - rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) - + pd.nboff - skip_bits; - ASN_DEBUG("PER decoding consumed %zu, counted %zu", - rval.consumed, pd.moved); - assert(rval.consumed == pd.moved); - } else { - /* PER codec is not a restartable */ - rval.consumed = 0; - } - return rval; -} - diff --git a/src/tmx/Asn_J2735/src/r63/per_encoder.c b/src/tmx/Asn_J2735/src/r63/per_encoder.c deleted file mode 100644 index 9d0c6febc..000000000 --- a/src/tmx/Asn_J2735/src/r63/per_encoder.c +++ /dev/null @@ -1,265 +0,0 @@ -#include -#include -#include - -static int _uper_encode_flush_outp(asn_per_outp_t *po); - -static int -ignore_output(const void *data, size_t size, void *app_key) { - (void)data; - (void)size; - (void)app_key; - return 0; -} - -asn_enc_rval_t -uper_encode(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_per_outp_t po; - asn_enc_rval_t er = {0,0,0}; - - /* - * Invoke type-specific encoder. - */ - if(!td || !td->op->uper_encoder) - ASN__ENCODE_FAILED; /* PER is not compiled in */ - - po.buffer = po.tmpspace; - po.nboff = 0; - po.nbits = 8 * sizeof(po.tmpspace); - po.output = cb ? cb : ignore_output; - po.op_key = app_key; - po.flushed_bytes = 0; - - er = td->op->uper_encoder(td, constraints, sptr, &po); - if(er.encoded != -1) { - size_t bits_to_flush; - - bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; - - /* Set number of bits encoded to a firm value */ - er.encoded = (po.flushed_bytes << 3) + bits_to_flush; - - if(_uper_encode_flush_outp(&po)) ASN__ENCODE_FAILED; - } - - return er; -} - -/* - * Argument type and callback necessary for uper_encode_to_buffer(). - */ -typedef struct enc_to_buf_arg { - void *buffer; - size_t left; -} enc_to_buf_arg; -static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { - enc_to_buf_arg *arg = (enc_to_buf_arg *)key; - - if(arg->left < size) - return -1; /* Data exceeds the available buffer size */ - - memcpy(arg->buffer, buffer, size); - arg->buffer = ((char *)arg->buffer) + size; - arg->left -= size; - - return 0; -} - -asn_enc_rval_t -uper_encode_to_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg key; - - key.buffer = buffer; - key.left = buffer_size; - - if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); - - return uper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); -} - -typedef struct enc_dyn_arg { - void *buffer; - size_t length; - size_t allocated; -} enc_dyn_arg; -static int -encode_dyn_cb(const void *buffer, size_t size, void *key) { - enc_dyn_arg *arg = key; - if(arg->length + size >= arg->allocated) { - size_t new_size = arg->allocated ? arg->allocated : 8; - void *p; - - do { - new_size <<= 2; - } while(arg->length + size >= new_size); - - p = REALLOC(arg->buffer, new_size); - if(!p) { - FREEMEM(arg->buffer); - memset(arg, 0, sizeof(*arg)); - return -1; - } - arg->buffer = p; - arg->allocated = new_size; - } - memcpy(((char *)arg->buffer) + arg->length, buffer, size); - arg->length += size; - return 0; -} -ssize_t -uper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void **buffer_r) { - asn_enc_rval_t er = {0,0,0}; - enc_dyn_arg key; - - memset(&key, 0, sizeof(key)); - - er = uper_encode(td, constraints, sptr, encode_dyn_cb, &key); - switch(er.encoded) { - case -1: - FREEMEM(key.buffer); - return -1; - case 0: - FREEMEM(key.buffer); - key.buffer = MALLOC(1); - if(key.buffer) { - *(char *)key.buffer = '\0'; - *buffer_r = key.buffer; - return 1; - } else { - return -1; - } - default: - *buffer_r = key.buffer; - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - return ((er.encoded + 7) >> 3); - } -} - -/* - * Internally useful functions. - */ - -/* Flush partially filled buffer */ -static int -_uper_encode_flush_outp(asn_per_outp_t *po) { - uint8_t *buf; - - if(po->nboff == 0 && po->buffer == po->tmpspace) - return 0; - - buf = po->buffer + (po->nboff >> 3); - /* Make sure we account for the last, partially filled */ - if(po->nboff & 0x07) { - buf[0] &= 0xff << (8 - (po->nboff & 0x07)); - buf++; - } - - return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); -} - -asn_enc_rval_t -aper_encode_to_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void *buffer, size_t buffer_size) { - enc_to_buf_arg key; - - key.buffer = buffer; - key.left = buffer_size; - - if(td) ASN_DEBUG("Encoding \"%s\" using ALIGNED PER", td->name); - - return aper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); -} - -ssize_t -aper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, void **buffer_r) { - asn_enc_rval_t er = {0,0,0}; - enc_dyn_arg key; - - memset(&key, 0, sizeof(key)); - - er = aper_encode(td, constraints, sptr, encode_dyn_cb, &key); - switch(er.encoded) { - case -1: - FREEMEM(key.buffer); - return -1; - case 0: - FREEMEM(key.buffer); - key.buffer = MALLOC(1); - if(key.buffer) { - *(char *)key.buffer = '\0'; - *buffer_r = key.buffer; - return 1; - } else { - return -1; - } - default: - *buffer_r = key.buffer; - ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); - return ((er.encoded + 7) >> 3); - } -} - -static int -_aper_encode_flush_outp(asn_per_outp_t *po) { - uint8_t *buf; - - if(po->nboff == 0 && po->buffer == po->tmpspace) - return 0; - - buf = po->buffer + (po->nboff >> 3); - /* Make sure we account for the last, partially filled */ - if(po->nboff & 0x07) { - buf[0] &= 0xff << (8 - (po->nboff & 0x07)); - buf++; - } - - if (po->output) { - return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); - } - return 0; -} - -asn_enc_rval_t -aper_encode(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { - asn_per_outp_t po; - asn_enc_rval_t er = {0,0,0}; - - /* - * Invoke type-specific encoder. - */ - if(!td || !td->op->aper_encoder) - ASN__ENCODE_FAILED; /* PER is not compiled in */ - - po.buffer = po.tmpspace; - po.nboff = 0; - po.nbits = 8 * sizeof(po.tmpspace); - po.output = cb ? cb : ignore_output; - po.op_key = app_key; - po.flushed_bytes = 0; - - er = td->op->aper_encoder(td, constraints, sptr, &po); - if(er.encoded != -1) { - size_t bits_to_flush; - - bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; - - /* Set number of bits encoded to a firm value */ - er.encoded = (po.flushed_bytes << 3) + bits_to_flush; - - if(_aper_encode_flush_outp(&po)) - ASN__ENCODE_FAILED; - } - - return er; -} diff --git a/src/tmx/Asn_J2735/src/r63/per_opentype.c b/src/tmx/Asn_J2735/src/r63/per_opentype.c deleted file mode 100644 index 253aaa508..000000000 --- a/src/tmx/Asn_J2735/src/r63/per_opentype.c +++ /dev/null @@ -1,538 +0,0 @@ -/* - * Copyright (c) 2007 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include - -typedef struct uper_ugot_key { - asn_per_data_t oldpd; /* Old per data source */ - size_t unclaimed; - size_t ot_moved; /* Number of bits moved by OT processing */ - int repeat; -} uper_ugot_key; - -static int uper_ugot_refill(asn_per_data_t *pd); -static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); -static asn_dec_rval_t uper_sot_suck(const asn_codec_ctx_t *, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd); - -/* - * Encode an "open type field". - * #10.1, #10.2 - */ -int -uper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - void *buf; - void *bptr; - ssize_t size; - - ASN_DEBUG("Open type put %s ...", td->name); - - size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); - if(size <= 0) return -1; - - ASN_DEBUG("Open type put %s of length %" ASN_PRI_SSIZE " + overhead (1byte?)", td->name, - size); - - bptr = buf; - do { - int need_eom = 0; - ssize_t may_save = uper_put_length(po, size, &need_eom); - ASN_DEBUG("Prepending length %" ASN_PRI_SSIZE - " to %s and allowing to save %" ASN_PRI_SSIZE, - size, td->name, may_save); - if(may_save < 0) break; - if(per_put_many_bits(po, bptr, may_save * 8)) break; - bptr = (char *)bptr + may_save; - size -= may_save; - if(need_eom && uper_put_length(po, 0, 0)) { - FREEMEM(buf); - return -1; - } - } while(size); - - FREEMEM(buf); - if(size) return -1; - - return 0; -} - -static asn_dec_rval_t -uper_open_type_get_simple(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - ssize_t chunk_bytes; - int repeat; - uint8_t *buf = 0; - size_t bufLen = 0; - size_t bufSize = 0; - asn_per_data_t spd; - size_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s...", td->name); - - do { - chunk_bytes = uper_get_length(pd, -1, 0, &repeat); - if(chunk_bytes < 0) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - if(bufLen + chunk_bytes > bufSize) { - void *ptr; - bufSize = chunk_bytes + (bufSize << 2); - ptr = REALLOC(buf, bufSize); - if(!ptr) { - FREEMEM(buf); - ASN__DECODE_FAILED; - } - buf = ptr; - } - if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - bufLen += chunk_bytes; - } while(repeat); - - ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, - (long)bufLen); - - memset(&spd, 0, sizeof(spd)); - spd.buffer = buf; - spd.nbits = bufLen << 3; - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->uper_decoder(ctx, td, constraints, sptr, &spd); - ASN_DEBUG_INDENT_ADD(-4); - - if(rv.code == RC_OK) { - /* Check padding validity */ - padding = spd.nbits - spd.nboff; - if (((padding > 0 && padding < 8) || - /* X.691#10.1.3 */ - (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && - per_get_few_bits(&spd, padding) == 0) { - /* Everything is cool */ - FREEMEM(buf); - return rv; - } - FREEMEM(buf); - if(padding >= 8) { - ASN_DEBUG("Too large padding %d in open type", (int)padding); - ASN__DECODE_FAILED; - } else { - ASN_DEBUG("No padding"); - } - } else { - FREEMEM(buf); - /* rv.code could be RC_WMORE, nonsense in this context */ - rv.code = RC_FAIL; /* No one would give us more */ - } - - return rv; -} - -static asn_dec_rval_t CC_NOTUSED -uper_open_type_get_complex(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - uper_ugot_key arg; - asn_dec_rval_t rv; - ssize_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s from %s", td->name, - asn_bit_data_string(pd)); - arg.oldpd = *pd; - arg.unclaimed = 0; - arg.ot_moved = 0; - arg.repeat = 1; - pd->refill = uper_ugot_refill; - pd->refill_key = &arg; - pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ - pd->moved = 0; /* This now counts the open type size in bits */ - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->uper_decoder(ctx, td, constraints, sptr, pd); - ASN_DEBUG_INDENT_ADD(-4); - -#define UPDRESTOREPD do { \ - /* buffer and nboff are valid, preserve them. */ \ - pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ - pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ - pd->refill = arg.oldpd.refill; \ - pd->refill_key = arg.oldpd.refill_key; \ - } while(0) - - if(rv.code != RC_OK) { - UPDRESTOREPD; - return rv; - } - - ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, - asn_bit_data_string(pd), - asn_bit_data_string(&arg.oldpd), - (int)arg.unclaimed, (int)arg.repeat); - - padding = pd->moved % 8; - if(padding) { - int32_t pvalue; - if(padding > 7) { - ASN_DEBUG("Too large padding %d in open type", - (int)padding); - rv.code = RC_FAIL; - UPDRESTOREPD; - return rv; - } - padding = 8 - padding; - ASN_DEBUG("Getting padding of %d bits", (int)padding); - pvalue = per_get_few_bits(pd, padding); - switch(pvalue) { - case -1: - ASN_DEBUG("Padding skip failed"); - UPDRESTOREPD; - ASN__DECODE_STARVED; - case 0: break; - default: - ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", - (int)padding, (int)pvalue); - UPDRESTOREPD; - ASN__DECODE_FAILED; - } - } - if(pd->nboff != pd->nbits) { - ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, - asn_bit_data_string(pd), asn_bit_data_string(&arg.oldpd)); - if(1) { - UPDRESTOREPD; - ASN__DECODE_FAILED; - } else { - arg.unclaimed += pd->nbits - pd->nboff; - } - } - - /* Adjust pd back so it points to original data */ - UPDRESTOREPD; - - /* Skip data not consumed by the decoder */ - if(arg.unclaimed) { - ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); - switch(per_skip_bits(pd, arg.unclaimed)) { - case -1: - ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); - ASN__DECODE_STARVED; - case 0: - ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); - break; - default: - /* Padding must be blank */ - ASN_DEBUG("Non-blank unconsumed padding"); - ASN__DECODE_FAILED; - } - arg.unclaimed = 0; - } - - if(arg.repeat) { - ASN_DEBUG("Not consumed the whole thing"); - rv.code = RC_FAIL; - return rv; - } - - return rv; -} - - -asn_dec_rval_t -uper_open_type_get(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); -} - -int -uper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { - asn_TYPE_descriptor_t s_td; - asn_TYPE_operation_t s_op; - asn_dec_rval_t rv; - - s_td.name = ""; - s_td.op = &s_op; - s_op.uper_decoder = uper_sot_suck; - - rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); - if(rv.code != RC_OK) - return -1; - else - return 0; -} - -/* - * Internal functions. - */ - -static asn_dec_rval_t -uper_sot_suck(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - - (void)ctx; - (void)td; - (void)constraints; - (void)sptr; - - while(per_get_few_bits(pd, 1) >= 0); - - rv.code = RC_OK; - rv.consumed = pd->moved; - - return rv; -} - -static int -uper_ugot_refill(asn_per_data_t *pd) { - uper_ugot_key *arg = pd->refill_key; - ssize_t next_chunk_bytes, next_chunk_bits; - ssize_t avail; - - asn_per_data_t *oldpd = &arg->oldpd; - - ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", - (long)pd->moved, (long)oldpd->moved); - - /* Advance our position to where pd is */ - oldpd->buffer = pd->buffer; - oldpd->nboff = pd->nboff; - oldpd->nbits -= pd->moved - arg->ot_moved; - oldpd->moved += pd->moved - arg->ot_moved; - arg->ot_moved = pd->moved; - - if(arg->unclaimed) { - /* Refill the container */ - if(per_get_few_bits(oldpd, 1)) - return -1; - if(oldpd->nboff == 0) { - assert(0); - return -1; - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff - 1; - pd->nbits = oldpd->nbits; - ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", - (long)pd->moved); - return 0; - } - - if(!arg->repeat) { - ASN_DEBUG("Want more but refill doesn't have it"); - return -1; - } - - next_chunk_bytes = uper_get_length(oldpd, -1, 0, &arg->repeat); - ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", - (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); - if(next_chunk_bytes < 0) return -1; - if(next_chunk_bytes == 0) { - pd->refill = 0; /* No more refills, naturally */ - assert(!arg->repeat); /* Implementation guarantee */ - } - next_chunk_bits = next_chunk_bytes << 3; - avail = oldpd->nbits - oldpd->nboff; - if(avail >= next_chunk_bits) { - pd->nbits = oldpd->nboff + next_chunk_bits; - arg->unclaimed = 0; - ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", - (long)next_chunk_bits, (long)oldpd->moved, - (long)oldpd->nboff, (long)oldpd->nbits, - (long)(oldpd->nbits - oldpd->nboff)); - } else { - pd->nbits = oldpd->nbits; - arg->unclaimed = next_chunk_bits - avail; - ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", - (long)avail, (long)next_chunk_bits, - (long)arg->unclaimed); - } - pd->buffer = oldpd->buffer; - pd->nboff = oldpd->nboff; - ASN_DEBUG("Refilled pd%s old%s", - asn_bit_data_string(pd), asn_bit_data_string(oldpd)); - return 0; -} - -static int -per_skip_bits(asn_per_data_t *pd, int skip_nbits) { - int hasNonZeroBits = 0; - while(skip_nbits > 0) { - int skip; - - /* per_get_few_bits() is more efficient when nbits <= 24 */ - if(skip_nbits < 24) - skip = skip_nbits; - else - skip = 24; - skip_nbits -= skip; - - switch(per_get_few_bits(pd, skip)) { - case -1: return -1; /* Starving */ - case 0: continue; /* Skipped empty space */ - default: hasNonZeroBits = 1; continue; - } - } - return hasNonZeroBits; -} - -static asn_dec_rval_t -aper_open_type_get_simple(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv; - ssize_t chunk_bytes; - int repeat; - uint8_t *buf = 0; - size_t bufLen = 0; - size_t bufSize = 0; - asn_per_data_t spd; - size_t padding; - - ASN__STACK_OVERFLOW_CHECK(ctx); - - ASN_DEBUG("Getting open type %s...", td->name); - - do { - chunk_bytes = aper_get_length(pd, -1, -1, &repeat); - if(chunk_bytes < 0) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - if(bufLen + chunk_bytes > bufSize) { - void *ptr; - bufSize = chunk_bytes + (bufSize << 2); - ptr = REALLOC(buf, bufSize); - if(!ptr) { - FREEMEM(buf); - ASN__DECODE_FAILED; - } - buf = ptr; - } - if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { - FREEMEM(buf); - ASN__DECODE_STARVED; - } - bufLen += chunk_bytes; - } while(repeat); - - ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, - (long)bufLen); - - memset(&spd, 0, sizeof(spd)); - spd.buffer = buf; - spd.nbits = bufLen << 3; - - ASN_DEBUG_INDENT_ADD(+4); - rv = td->op->aper_decoder(ctx, td, constraints, sptr, &spd); - ASN_DEBUG_INDENT_ADD(-4); - - if(rv.code == RC_OK) { - /* Check padding validity */ - padding = spd.nbits - spd.nboff; - if (((padding > 0 && padding < 8) || - /* X.691#10.1.3 */ - (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && - per_get_few_bits(&spd, padding) == 0) { - /* Everything is cool */ - FREEMEM(buf); - return rv; - } - FREEMEM(buf); - if(padding >= 8) { - ASN_DEBUG("Too large padding %d in open type", (int)padding); - ASN__DECODE_FAILED; - } else { - ASN_DEBUG("No padding"); - } - } else { - FREEMEM(buf); - /* rv.code could be RC_WMORE, nonsense in this context */ - rv.code = RC_FAIL; /* Noone would give us more */ - } - - return rv; -} - -int -aper_open_type_put(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - void *buf; - void *bptr; - ssize_t size; - size_t toGo; - - ASN_DEBUG("Open type put %s ...", td->name); - - size = aper_encode_to_new_buffer(td, constraints, sptr, &buf); - if(size <= 0) return -1; - - for(bptr = buf, toGo = size; toGo;) { - int need_eom = 0; - ssize_t maySave = aper_put_length(po, -1, toGo, &need_eom); - if(maySave < 0) break; - if(per_put_many_bits(po, bptr, maySave * 8)) break; - bptr = (char *)bptr + maySave; - toGo -= maySave; - if(need_eom && aper_put_length(po, -1, 0, 0)) { - FREEMEM(buf); - return -1; - } - } - - FREEMEM(buf); - if(toGo) return -1; - - ASN_DEBUG("Open type put %s of length %ld + overhead (1byte?)", - td->name, size); - - return 0; -} - -asn_dec_rval_t -aper_open_type_get(const asn_codec_ctx_t *ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - void **sptr, asn_per_data_t *pd) { - - return aper_open_type_get_simple(ctx, td, constraints, sptr, pd); -} - -int -aper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { - asn_TYPE_descriptor_t s_td; - asn_dec_rval_t rv; - asn_TYPE_operation_t op_t; - - memset(&op_t, 0, sizeof(op_t)); - s_td.name = ""; - s_td.op = &op_t; - s_td.op->aper_decoder = uper_sot_suck; - - rv = aper_open_type_get(ctx, &s_td, 0, 0, pd); - if(rv.code != RC_OK) - return -1; - else - return 0; -} - - diff --git a/src/tmx/Asn_J2735/src/r63/per_support.c b/src/tmx/Asn_J2735/src/r63/per_support.c deleted file mode 100644 index 090ecd1f6..000000000 --- a/src/tmx/Asn_J2735/src/r63/per_support.c +++ /dev/null @@ -1,583 +0,0 @@ -/* - * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * X.691-201508 #10.9 General rules for encoding a length determinant. - * Get the optionally constrained length "n" from the stream. - */ -ssize_t -uper_get_length(asn_per_data_t *pd, int ebits, size_t lower_bound, - int *repeat) { - ssize_t value; - - *repeat = 0; - - /* #11.9.4.1 Encoding if constrained (according to effective bits) */ - if(ebits >= 0 && ebits <= 16) { - value = per_get_few_bits(pd, ebits); - if(value >= 0) value += lower_bound; - return value; - } - - value = per_get_few_bits(pd, 8); - if((value & 0x80) == 0) { /* #11.9.3.6 */ - return (value & 0x7F); - } else if((value & 0x40) == 0) { /* #11.9.3.7 */ - /* bit 8 ... set to 1 and bit 7 ... set to zero */ - value = ((value & 0x3f) << 8) | per_get_few_bits(pd, 8); - return value; /* potential -1 from per_get_few_bits passes through. */ - } else if(value < 0) { - ASN_DEBUG("END of stream reached for PER"); - return -1; - } - value &= 0x3f; /* this is "m" from X.691, #11.9.3.8 */ - if(value < 1 || value > 4) { - return -1; /* Prohibited by #11.9.3.8 */ - } - *repeat = 1; - return (16384 * value); -} - -/* - * Get the normally small length "n". - * This procedure used to decode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -ssize_t -uper_get_nslength(asn_per_data_t *pd) { - ssize_t length; - - ASN_DEBUG("Getting normally small length"); - - if(per_get_few_bits(pd, 1) == 0) { - length = per_get_few_bits(pd, 6) + 1; - if(length <= 0) return -1; - ASN_DEBUG("l=%d", (int)length); - return length; - } else { - int repeat; - length = uper_get_length(pd, -1, 0, &repeat); - if(length >= 0 && !repeat) return length; - return -1; /* Error, or do not support >16K extensions */ - } -} - -/* - * Get the normally small non-negative whole number. - * X.691, #10.6 - */ -ssize_t -uper_get_nsnnwn(asn_per_data_t *pd) { - ssize_t value; - - value = per_get_few_bits(pd, 7); - if(value & 64) { /* implicit (value < 0) */ - value &= 63; - value <<= 2; - value |= per_get_few_bits(pd, 2); - if(value & 128) /* implicit (value < 0) */ - return -1; - if(value == 0) - return 0; - if(value >= 3) - return -1; - value = per_get_few_bits(pd, 8 * value); - return value; - } - - return value; -} - -/* - * X.691-11/2008, #11.6 - * Encoding of a normally small non-negative whole number - */ -int -uper_put_nsnnwn(asn_per_outp_t *po, int n) { - int bytes; - - if(n <= 63) { - if(n < 0) return -1; - return per_put_few_bits(po, n, 7); - } - if(n < 256) - bytes = 1; - else if(n < 65536) - bytes = 2; - else if(n < 256 * 65536) - bytes = 3; - else - return -1; /* This is not a "normally small" value */ - if(per_put_few_bits(po, bytes, 8)) - return -1; - - return per_put_few_bits(po, n, 8 * bytes); -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *out_value, int nbits) { - uintmax_t lhalf; /* Lower half of the number*/ - intmax_t half; - - if(nbits <= 31) { - half = per_get_few_bits(pd, nbits); - if(half < 0) return -1; - *out_value = half; - return 0; - } - - if((size_t)nbits > 8 * sizeof(*out_value)) - return -1; /* RANGE */ - - half = per_get_few_bits(pd, 31); - if(half < 0) return -1; - - if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) - return -1; - - *out_value = ((uintmax_t)half << (nbits - 31)) | lhalf; - return 0; -} - - -/* X.691-2008/11, #11.5.6 -> #11.3 */ -int -uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, - int nbits) { - if(nbits <= 31) { - return per_put_few_bits(po, v, nbits); - } else { - /* Put higher portion first, followed by lower 31-bit */ - if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) - return -1; - return per_put_few_bits(po, v, 31); - } -} - -/* - * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" - * Put the length "n" (or part of it) into the stream. - */ -ssize_t -uper_put_length(asn_per_outp_t *po, size_t length, int *need_eom) { - int dummy = 0; - if(!need_eom) need_eom = &dummy; - - if(length <= 127) { /* #11.9.3.6 */ - *need_eom = 0; - return per_put_few_bits(po, length, 8) - ? -1 : (ssize_t)length; - } else if(length < 16384) { /* #10.9.3.7 */ - *need_eom = 0; - return per_put_few_bits(po, length|0x8000, 16) - ? -1 : (ssize_t)length; - } - - *need_eom = 0 == (length & 16383); - length >>= 14; - if(length > 4) { - *need_eom = 0; - length = 4; - } - - return per_put_few_bits(po, 0xC0 | length, 8) - ? -1 : (ssize_t)(length << 14); - -} - - -/* - * Put the normally small length "n" into the stream. - * This procedure used to encode length of extensions bit-maps - * for SET and SEQUENCE types. - */ -int -uper_put_nslength(asn_per_outp_t *po, size_t length) { - if(length <= 64) { - /* #11.9.3.4 */ - if(length == 0) return -1; - return per_put_few_bits(po, length - 1, 7) ? -1 : 0; - } else { - int need_eom = 0; - if(uper_put_length(po, length, &need_eom) != (ssize_t)length - || need_eom) { - /* This might happen in case of >16K extensions */ - return -1; - } - } - - return 0; -} - -static int -per__imax_range(intmax_t lb, intmax_t ub, uintmax_t *range_r) { - uintmax_t bounds_range; - if((ub < 0) == (lb < 0)) { - bounds_range = ub - lb; - } else if(lb < 0) { - assert(ub >= 0); - bounds_range = 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); - } else { - assert(!"Unreachable"); - return -1; - } - *range_r = bounds_range; - return 0; -} - -int -per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output) { - uintmax_t range; - - assert(lb <= ub); - - if(v < lb || v > ub || per__imax_range(lb, ub, &range) < 0) { - /* Range error. */ - return -1; - } - - /* - * Fundamentally what we're doing is returning (v-lb). - * However, this triggers undefined behavior when the word width - * of signed (v) is the same as the size of unsigned (*output). - * In practice, it triggers the UndefinedSanitizer. Therefore we shall - * compute the ranges accurately to avoid C's undefined behavior. - */ - if((v < 0) == (lb < 0)) { - *output = v-lb; - return 0; - } else if(v < 0) { - uintmax_t rebased = 1 + (uintmax_t)-(v+1) + (uintmax_t)lb; - assert(rebased <= range); /* By construction */ - *output = rebased; - return 0; - } else if(lb < 0) { - uintmax_t rebased = 1 + (uintmax_t)-(lb+1) + (uintmax_t)v; - assert(rebased <= range); /* By construction */ - *output = rebased; - return 0; - } else { - assert(!"Unreachable"); - return -1; - } -} - -int -per_long_range_rebase(long v, intmax_t lb, intmax_t ub, unsigned long *output) { - uintmax_t tmp = *output; - int rc = per_imax_range_rebase((intmax_t)v, lb, ub, &tmp); - *output = tmp; - return rc; -} - -int -per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp) { - uintmax_t range; - - if(per__imax_range(lb, ub, &range) != 0) { - return -1; - } - - if(inp > range) { - /* - * We can encode something in the given number of bits that technically - * exceeds the range. This is an avenue for security errors, - * so we don't allow that. - */ - return -1; - } - - if(inp <= INTMAX_MAX) { - *outp = (long)inp + lb; - } else { - *outp = (lb + INTMAX_MAX + 1) + (intmax_t)((inp - INTMAX_MAX) - 1); - } - - return 0; -} - -int -per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp) { - intmax_t tmp = *outp; - int rc = per_imax_range_unrebase((uintmax_t)inp, lb, ub, &tmp); - *outp = tmp; - return rc; -} - -int32_t -aper_get_align(asn_per_data_t *pd) { - - if(pd->nboff & 0x7) { - ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)pd->nboff & 0x7)); - return per_get_few_bits(pd, 8 - (pd->nboff & 0x7)); - } - return 0; -} - -ssize_t -aper_get_length(asn_per_data_t *pd, int range, int ebits, int *repeat) { - ssize_t value; - - *repeat = 0; - - if (range <= 65536 && range >= 0) - return aper_get_nsnnwn(pd, range); - - if (aper_get_align(pd) < 0) - return -1; - - if(ebits >= 0) return per_get_few_bits(pd, ebits); - - value = per_get_few_bits(pd, 8); - if(value < 0) return -1; - if((value & 128) == 0) /* #10.9.3.6 */ - return (value & 0x7F); - if((value & 64) == 0) { /* #10.9.3.7 */ - value = ((value & 63) << 8) | per_get_few_bits(pd, 8); - if(value < 0) return -1; - return value; - } - value &= 63; /* this is "m" from X.691, #10.9.3.8 */ - if(value < 1 || value > 4) - return -1; - *repeat = 1; - return (16384 * value); -} - -ssize_t -aper_get_nslength(asn_per_data_t *pd) { - ssize_t length; - - ASN_DEBUG("Getting normally small length"); - - if(per_get_few_bits(pd, 1) == 0) { - length = per_get_few_bits(pd, 6) + 1; - if(length <= 0) return -1; - ASN_DEBUG("l=%ld", length); - return length; - } else { - int repeat; - length = aper_get_length(pd, -1, -1, &repeat); - if(length >= 0 && !repeat) return length; - return -1; /* Error, or do not support >16K extensions */ - } -} - -#if !defined(USE_OLDER_APER_NSNNWN) -ssize_t -aper_get_nsnnwn(asn_per_data_t *pd, int range) { - ssize_t value; - int bytes = 0; - - ASN_DEBUG("getting nsnnwn with range %d", range); - - if(range <= 255) { - int i; - - if (range < 0) return -1; - /* 1 -> 8 bits */ - for (i = 1; i <= 8; i++) { - int upper = 1 << i; - if (upper >= range) - break; - } - value = per_get_few_bits(pd, i); - return value; - } else if (range == 256){ - /* 1 byte */ - bytes = 1; - } else if (range <= 65536) { - /* 2 bytes */ - bytes = 2; - } else { - //return -1; - int length; - - /* handle indefinite range */ - length = per_get_few_bits(pd, 1); - if (length == 0) - return per_get_few_bits(pd, 6); - - if (aper_get_align(pd) < 0) - return -1; - - length = per_get_few_bits(pd, 8); - /* the length is not likely to be that big */ - if (length > 4) - return -1; - value = 0; - if (per_get_many_bits(pd, (uint8_t *)&value, 0, length * 8) < 0) - return -1; - return value; - } - if (aper_get_align(pd) < 0) - return -1; - value = per_get_few_bits(pd, 8 * bytes); - return value; -} -#else /* old APER codec */ -ssize_t -aper_get_nsnnwn(asn_per_data_t *pd, int dummy_range) { - ssize_t value; - - ASN_DEBUG("Get the normally small non-negative whole number APER"); - - value = per_get_few_bits(pd, 7); - if(value & 64) { /* implicit (value < 0) */ - value &= 63; - value <<= 2; - value |= per_get_few_bits(pd, 2); - if(value & 128) /* implicit (value < 0) */ - return -1; - if(value == 0) - return 0; - if(value >= 3) - return -1; - value = per_get_few_bits(pd, 8 * value); - return value; - } - - return value; -} -#endif /* don't use old APER */ - -int aper_put_align(asn_per_outp_t *po) { - - if(po->nboff & 0x7) { - ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)po->nboff & 0x7)); - if(per_put_few_bits(po, 0x00, (8 - (po->nboff & 0x7)))) - return -1; - } - return 0; -} - -ssize_t -aper_put_length(asn_per_outp_t *po, int range, size_t length, int *need_eom) { - int dummy = 0; - if(!need_eom) need_eom = &dummy; - - *need_eom = 0; - - ASN_DEBUG("APER put length %zu with range %d", length, range); - - /* 10.9 X.691 Note 2 */ - if (range <= 65536 && range >= 0) - return aper_put_nsnnwn(po, range, length); - - if (aper_put_align(po) < 0) - return -1; - - if(length <= 127) /* #10.9.3.6 */{ - return per_put_few_bits(po, length, 8) - ? -1 : (ssize_t)length; - } - else if(length < 16384) /* #10.9.3.7 */ - return per_put_few_bits(po, length|0x8000, 16) - ? -1 : (ssize_t)length; - - *need_eom = 0 == (length & 16383); - length >>= 14; - if(length > 4) { - *need_eom = 0; - length = 4; - } - - return per_put_few_bits(po, 0xC0 | length, 8) - ? -1 : (ssize_t)(length << 14); -} - - -int -aper_put_nslength(asn_per_outp_t *po, size_t length) { - - if(length <= 64) { - /* #10.9.3.4 */ - if(length == 0) return -1; - return per_put_few_bits(po, length-1, 7) ? -1 : 0; - } else { - if(aper_put_length(po, -1, length, 0) != (ssize_t)length) { - /* This might happen in case of >16K extensions */ - return -1; - } - } - - return 0; -} - -#if !defined(USE_OLDER_APER_NSNNWN) -int -aper_put_nsnnwn(asn_per_outp_t *po, int range, int number) { - int bytes; - - ASN_DEBUG("aper put nsnnwn %d with range %d", number, range); - /* 10.5.7.1 X.691 */ - if(range < 0) { - int i; - for (i = 1; ; i++) { - int bits = 1 << (8 * i); - if (number <= bits) - break; - } - bytes = i; - assert(i <= 4); - } - if(range <= 255) { - int i; - for (i = 1; i <= 8; i++) { - int bits = 1 << i; - if (range <= bits) - break; - } - return per_put_few_bits(po, number, i); - } else if(range == 256) { - bytes = 1; - } else if(range <= 65536) { - bytes = 2; - } else { /* Ranges > 64K */ - int i; - for (i = 1; ; i++) { - int bits = 1 << (8 * i); - if (range <= bits) - break; - } - assert(i <= 4); - bytes = i; - } - if(aper_put_align(po) < 0) /* Aligning on octet */ - return -1; -/* if(per_put_few_bits(po, bytes, 8)) - return -1; -*/ - return per_put_few_bits(po, number, 8 * bytes); -} -#else /* preserve old code base in case */ -int -aper_put_nsnnwn(asn_per_outp_t *po, int dummy_range, int n) { - int bytes; - - ASN_DEBUG("aper_put_nsnnwn"); - - if(n <= 63) { - if(n < 0) return -1; - return per_put_few_bits(po, n, 7); - } - if(n < 256) - bytes = 1; - else if(n < 65536) - bytes = 2; - else if(n < 256 * 65536) - bytes = 3; - else - return -1; /* This is not a "normally small" value */ - if(per_put_few_bits(po, bytes, 8)) - return -1; - - return per_put_few_bits(po, n, 8 * bytes); -} -#endif /* which aper_put_nsnnwn() */ diff --git a/src/tmx/Asn_J2735/src/r63/xer_decoder.c b/src/tmx/Asn_J2735/src/r63/xer_decoder.c deleted file mode 100644 index 5b87703a3..000000000 --- a/src/tmx/Asn_J2735/src/r63/xer_decoder.c +++ /dev/null @@ -1,369 +0,0 @@ -/* - * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include /* XER/XML parsing support */ - - -/* - * Decode the XER encoding of a given type. - */ -asn_dec_rval_t -xer_decode(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **struct_ptr, - const void *buffer, size_t size) { - asn_codec_ctx_t s_codec_ctx; - - /* - * Stack checker requires that the codec context - * must be allocated on the stack. - */ - if(opt_codec_ctx) { - if(opt_codec_ctx->max_stack_size) { - s_codec_ctx = *opt_codec_ctx; - opt_codec_ctx = &s_codec_ctx; - } - } else { - /* If context is not given, be security-conscious anyway */ - memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); - s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; - opt_codec_ctx = &s_codec_ctx; - } - - /* - * Invoke type-specific decoder. - */ - return td->op->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); -} - - - -struct xer__cb_arg { - pxml_chunk_type_e chunk_type; - size_t chunk_size; - const void *chunk_buf; - int callback_not_invoked; -}; - -static int -xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { - struct xer__cb_arg *arg = (struct xer__cb_arg *)key; - arg->chunk_type = type; - arg->chunk_size = _chunk_size; - arg->chunk_buf = _chunk_data; - arg->callback_not_invoked = 0; - return -1; /* Terminate the XML parsing */ -} - -/* - * Fetch the next token from the XER/XML stream. - */ -ssize_t -xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { - struct xer__cb_arg arg; - int new_stateContext = *stateContext; - ssize_t ret; - - arg.callback_not_invoked = 1; - ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); - if(ret < 0) return -1; - if(arg.callback_not_invoked) { - assert(ret == 0); /* No data was consumed */ - *ch_type = PXER_WMORE; - return 0; /* Try again with more data */ - } else { - assert(arg.chunk_size); - assert(arg.chunk_buf == buffer); - } - - /* - * Translate the XML chunk types into more convenient ones. - */ - switch(arg.chunk_type) { - case PXML_TEXT: - *ch_type = PXER_TEXT; - break; - case PXML_TAG: - *ch_type = PXER_WMORE; - return 0; /* Want more */ - case PXML_TAG_END: - *ch_type = PXER_TAG; - break; - case PXML_COMMENT: - case PXML_COMMENT_END: - *ch_type = PXER_COMMENT; - break; - } - - *stateContext = new_stateContext; - return arg.chunk_size; -} - -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define RANGLE 0x3e /* '>' */ - -xer_check_tag_e -xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { - const char *buf = (const char *)buf_ptr; - const char *end; - xer_check_tag_e ct = XCT_OPENING; - - if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { - if(size >= 2) - ASN_DEBUG("Broken XML tag: \"%c...%c\"", - buf[0], buf[size - 1]); - return XCT_BROKEN; - } - - /* - * Determine the tag class. - */ - if(buf[1] == CSLASH) { - buf += 2; /* advance past "" */ - ct = XCT_CLOSING; - if(size > 0 && buf[size-1] == CSLASH) - return XCT_BROKEN; /* */ - } else { - buf++; /* advance past "<" */ - size -= 2; /* strip "<" and ">" */ - if(size > 0 && buf[size-1] == CSLASH) { - ct = XCT_BOTH; - size--; /* One more, for "/" */ - } - } - - /* Sometimes we don't care about the tag */ - if(!need_tag || !*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - /* - * Determine the tag name. - */ - for(end = buf + size; buf < end; buf++, need_tag++) { - int b = *buf, n = *need_tag; - if(b != n) { - if(n == 0) { - switch(b) { - case 0x09: case 0x0a: case 0x0c: case 0x0d: - case 0x20: - /* "": whitespace is normal */ - return ct; - } - } - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - } - if(b == 0) - return XCT_BROKEN; /* Embedded 0 in buf?! */ - } - if(*need_tag) - return (xer_check_tag_e)(XCT__UNK__MASK | ct); - - return ct; -} - - -#undef ADVANCE -#define ADVANCE(num_bytes) do { \ - size_t num = (num_bytes); \ - buf_ptr = ((const char *)buf_ptr) + num; \ - size -= num; \ - consumed_myself += num; \ - } while(0) - -#undef RETURN -#define RETURN(_code) do { \ - rval.code = _code; \ - rval.consumed = consumed_myself; \ - if(rval.code != RC_OK) \ - ASN_DEBUG("Failed with %d", rval.code); \ - return rval; \ - } while(0) - -#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ - ssize_t converted_size = body_receiver \ - (struct_key, chunk_buf, chunk_size, \ - (size_t)chunk_size < size); \ - if(converted_size == -1) RETURN(RC_FAIL); \ - if(converted_size == 0 \ - && size == (size_t)chunk_size) \ - RETURN(RC_WMORE); \ - chunk_size = converted_size; \ - } while(0) -#define XER_GOT_EMPTY() do { \ - if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ - RETURN(RC_FAIL); \ - } while(0) - -/* - * Generalized function for decoding the primitive values. - */ -asn_dec_rval_t -xer_decode_general(const asn_codec_ctx_t *opt_codec_ctx, - asn_struct_ctx_t *ctx, /* Type decoder context */ - void *struct_key, - const char *xml_tag, /* Expected XML tag */ - const void *buf_ptr, size_t size, - int (*opt_unexpected_tag_decoder) - (void *struct_key, const void *chunk_buf, size_t chunk_size), - ssize_t (*body_receiver) - (void *struct_key, const void *chunk_buf, size_t chunk_size, - int have_more) - ) { - - asn_dec_rval_t rval; - ssize_t consumed_myself = 0; - - (void)opt_codec_ctx; - - /* - * Phases of XER/XML processing: - * Phase 0: Check that the opening tag matches our expectations. - * Phase 1: Processing body and reacting on closing tag. - */ - if(ctx->phase > 1) RETURN(RC_FAIL); - for(;;) { - pxer_chunk_type_e ch_type; /* XER chunk type */ - ssize_t ch_size; /* Chunk size */ - xer_check_tag_e tcv; /* Tag check value */ - - /* - * Get the next part of the XML stream. - */ - ch_size = xer_next_token(&ctx->context, buf_ptr, size, - &ch_type); - if(ch_size == -1) { - RETURN(RC_FAIL); - } else { - switch(ch_type) { - case PXER_WMORE: - RETURN(RC_WMORE); - case PXER_COMMENT: /* Got XML comment */ - ADVANCE(ch_size); /* Skip silently */ - continue; - case PXER_TEXT: - if(ctx->phase == 0) { - /* - * We have to ignore whitespace here, - * but in order to be forward compatible - * with EXTENDED-XER (EMBED-VALUES, #25) - * any text is just ignored here. - */ - } else { - XER_GOT_BODY(buf_ptr, ch_size, size); - } - ADVANCE(ch_size); - continue; - case PXER_TAG: - break; /* Check the rest down there */ - } - } - - assert(ch_type == PXER_TAG && size); - - tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); - /* - * Phase 0: - * Expecting the opening tag - * for the type being processed. - * Phase 1: - * Waiting for the closing XML tag. - */ - switch(tcv) { - case XCT_BOTH: - if(ctx->phase) break; - /* Finished decoding of an empty element */ - XER_GOT_EMPTY(); - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_OPENING: - if(ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 1; /* Processing body phase */ - continue; - case XCT_CLOSING: - if(!ctx->phase) break; - ADVANCE(ch_size); - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - case XCT_UNKNOWN_BO: - /* - * Certain tags in the body may be expected. - */ - if(opt_unexpected_tag_decoder - && opt_unexpected_tag_decoder(struct_key, - buf_ptr, ch_size) >= 0) { - /* Tag's processed fine */ - ADVANCE(ch_size); - if(!ctx->phase) { - /* We are not expecting - * the closing tag anymore. */ - ctx->phase = 2; /* Phase out */ - RETURN(RC_OK); - } - continue; - } - /* Fall through */ - default: - break; /* Unexpected tag */ - } - - ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); - break; /* Dark and mysterious things have just happened */ - } - - RETURN(RC_FAIL); -} - - -size_t -xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { - const char *p = (const char *)chunk_buf; - const char *pend = p + chunk_size; - - for(; p < pend; p++) { - switch(*p) { - /* X.693, #8.1.4 - * HORISONTAL TAB (9) - * LINE FEED (10) - * CARRIAGE RETURN (13) - * SPACE (32) - */ - case 0x09: case 0x0a: case 0x0d: case 0x20: - continue; - default: - break; - } - break; - } - return (p - (const char *)chunk_buf); -} - -/* - * This is a vastly simplified, non-validating XML tree skipper. - */ -int -xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { - assert(*depth > 0); - switch(tcv) { - case XCT_BOTH: - case XCT_UNKNOWN_BO: - /* These negate each other. */ - return 0; - case XCT_OPENING: - case XCT_UNKNOWN_OP: - ++(*depth); - return 0; - case XCT_CLOSING: - case XCT_UNKNOWN_CL: - if(--(*depth) == 0) - return (tcv == XCT_CLOSING) ? 2 : 1; - return 0; - default: - return -1; - } -} diff --git a/src/tmx/Asn_J2735/src/r63/xer_encoder.c b/src/tmx/Asn_J2735/src/r63/xer_encoder.c deleted file mode 100644 index 4177ede5c..000000000 --- a/src/tmx/Asn_J2735/src/r63/xer_encoder.c +++ /dev/null @@ -1,237 +0,0 @@ -/*- - * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include - -/* - * The XER encoder of any type. May be invoked by the application. - */ -asn_enc_rval_t -xer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, - enum xer_encoder_flags_e xer_flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0, 0, 0}; - asn_enc_rval_t tmper; - const char *mname; - size_t mlen; - int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; - - if(!td || !sptr) goto cb_failed; - - mname = td->xml_tag; - mlen = strlen(mname); - - ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); - - tmper = td->op->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); - if(tmper.encoded == -1) return tmper; - er.encoded += tmper.encoded; - - ASN__CALLBACK3("\n", xcan); - - ASN__ENCODED_OK(er); -cb_failed: - ASN__ENCODE_FAILED; -} - -/* - * This is a helper function for xer_fprint, which directs all incoming data - * into the provided file descriptor. - */ -static int -xer__print2fp(const void *buffer, size_t size, void *app_key) { - FILE *stream = (FILE *)app_key; - - if(fwrite(buffer, 1, size, stream) != size) - return -1; - - return 0; -} - -int -xer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { - asn_enc_rval_t er = {0,0,0}; - - if(!stream) stream = stdout; - if(!td || !sptr) - return -1; - - er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); - if(er.encoded == -1) - return -1; - - return fflush(stream); -} - -struct xer_buffer { - char *buffer; - size_t buffer_size; - size_t allocated_size; -}; - -static int -xer__buffer_append(const void *buffer, size_t size, void *app_key) { - struct xer_buffer *xb = app_key; - - while(xb->buffer_size + size + 1 > xb->allocated_size) { - size_t new_size = 2 * (xb->allocated_size ? xb->allocated_size : 64); - char *new_buf = MALLOC(new_size); - if(!new_buf) return -1; - if (xb->buffer) { - memcpy(new_buf, xb->buffer, xb->buffer_size); - } - FREEMEM(xb->buffer); - xb->buffer = new_buf; - xb->allocated_size = new_size; - } - - memcpy(xb->buffer + xb->buffer_size, buffer, size); - xb->buffer_size += size; - xb->buffer[xb->buffer_size] = '\0'; - return 0; -} - -enum xer_equivalence_e -xer_equivalent(const struct asn_TYPE_descriptor_s *td, const void *struct1, - const void *struct2, FILE *opt_debug_stream) { - struct xer_buffer xb1 = {0, 0, 0}; - struct xer_buffer xb2 = {0, 0, 0}; - asn_enc_rval_t e1, e2; - asn_dec_rval_t rval; - void *sptr = NULL; - - if(!td || !struct1 || !struct2) { - if(opt_debug_stream) { - if(!td) fprintf(opt_debug_stream, "Type descriptor missing\n"); - if(!struct1) fprintf(opt_debug_stream, "Structure 1 missing\n"); - if(!struct2) fprintf(opt_debug_stream, "Structure 2 missing\n"); - } - return XEQ_FAILURE; - } - - e1 = xer_encode(td, struct1, XER_F_BASIC, xer__buffer_append, &xb1); - if(e1.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of %s failed\n", td->name); - } - FREEMEM(xb1.buffer); - return XEQ_ENCODE1_FAILED; - } - - e2 = xer_encode(td, struct2, XER_F_BASIC, xer__buffer_append, &xb2); - if(e2.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of %s failed\n", td->name); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ENCODE1_FAILED; - } - - if(xb1.buffer_size != xb2.buffer_size - || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structures XER-encoded into different byte streams:\n=== " - "Structure 1 ===\n%s\n=== Structure 2 ===\n%s\n", - xb1.buffer, xb2.buffer); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_DIFFERENT; - } else { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Both structures encoded into the same XER byte stream " - "of size %" ASN_PRI_SIZE ":\n%s", - xb1.buffer_size, xb1.buffer); - } - } - - rval = xer_decode(NULL, td, (void **)&sptr, xb1.buffer, - xb1.buffer_size); - switch(rval.code) { - case RC_OK: - break; - case RC_WMORE: - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structure %s XER decode unexpectedly requires " - "more data:\n%s\n", - td->name, xb1.buffer); - } - /* Fall through */ - case RC_FAIL: - default: - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Structure %s XER decoding resulted in failure.\n", - td->name); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_DECODE_FAILED; - } - - if(rval.consumed != xb1.buffer_size - && ((rval.consumed > xb1.buffer_size) - || xer_whitespace_span(xb1.buffer + rval.consumed, - xb1.buffer_size - rval.consumed) - != (xb1.buffer_size - rval.consumed))) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "Round-trip decode of %s required less bytes (%" ASN_PRI_SIZE ") than " - "encoded (%" ASN_PRI_SIZE ")\n", - td->name, rval.consumed, xb1.buffer_size); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - /* - * Reuse xb2 to encode newly decoded structure. - */ - FREEMEM(xb2.buffer); - memset(&xb2, 0, sizeof(xb2)); - - e2 = xer_encode(td, sptr, XER_F_BASIC, xer__buffer_append, &xb2); - if(e2.encoded == -1) { - if(opt_debug_stream) { - fprintf(stderr, "XER Encoding of round-trip decode of %s failed\n", - td->name); - } - ASN_STRUCT_FREE(*td, sptr); - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - ASN_STRUCT_FREE(*td, sptr); - sptr = 0; - - if(xb1.buffer_size != xb2.buffer_size - || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { - if(opt_debug_stream) { - fprintf(opt_debug_stream, - "XER Encoding of round-trip decode of %s resulted in " - "different byte stream:\n" - "=== Original ===\n%s\n" - "=== Round-tripped ===\n%s\n", - xb1.buffer, xb2.buffer, td->name); - } - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_ROUND_TRIP_FAILED; - } - - FREEMEM(xb1.buffer); - FREEMEM(xb2.buffer); - return XEQ_SUCCESS; -} - diff --git a/src/tmx/Asn_J2735/src/r63/xer_support.c b/src/tmx/Asn_J2735/src/r63/xer_support.c deleted file mode 100644 index 36b4bfbfc..000000000 --- a/src/tmx/Asn_J2735/src/r63/xer_support.c +++ /dev/null @@ -1,227 +0,0 @@ -/* - * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. - * Copyright (c) 2003, 2004, 2005 Lev Walkin . - * All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include - -/* Parser states */ -typedef enum { - ST_TEXT, - ST_TAG_START, - ST_TAG_BODY, - ST_TAG_QUOTE_WAIT, - ST_TAG_QUOTED_STRING, - ST_TAG_UNQUOTED_STRING, - ST_COMMENT_WAIT_DASH1, /* ""[0] */ - ST_COMMENT_CLO_RT /* "-->"[1] */ -} pstate_e; - -static const int -_charclass[256] = { - 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, - 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, - 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ - 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ - 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ -}; -#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) -#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) -#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) - -/* Aliases for characters, ASCII/UTF-8 */ -#define EXCLAM 0x21 /* '!' */ -#define CQUOTE 0x22 /* '"' */ -#define CDASH 0x2d /* '-' */ -#define CSLASH 0x2f /* '/' */ -#define LANGLE 0x3c /* '<' */ -#define CEQUAL 0x3d /* '=' */ -#define RANGLE 0x3e /* '>' */ -#define CQUEST 0x3f /* '?' */ - -/* Invoke token callback */ -#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ - int _ret; \ - pstate_e ns = _ns; \ - ssize_t _sz = (p - chunk_start) + _current_too; \ - if (!_sz) { \ - /* Shortcut */ \ - state = _ns; \ - break; \ - } \ - _ret = cb(type, chunk_start, _sz, key); \ - if(_ret < _sz) { \ - if(_current_too && _ret == -1) \ - state = ns; \ - goto finish; \ - } \ - chunk_start = p + _current_too; \ - state = ns; \ - } while(0) - -#define TOKEN_CB(_type, _ns, _current_too) \ - TOKEN_CB_CALL(_type, _ns, _current_too, 0) - -#define PXML_TAG_FINAL_CHUNK_TYPE PXML_TAG_END -#define PXML_COMMENT_FINAL_CHUNK_TYPE PXML_COMMENT_END - -#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ - TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1) - -/* - * Parser itself - */ -ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { - pstate_e state = (pstate_e)*stateContext; - const char *chunk_start = (const char *)xmlbuf; - const char *p = chunk_start; - const char *end = p + size; - - for(; p < end; p++) { - int C = *(const unsigned char *)p; - switch(state) { - case ST_TEXT: - /* - * Initial state: we're in the middle of some text, - * or just have started. - */ - if (C == LANGLE) - /* We're now in the tag, probably */ - TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); - break; - case ST_TAG_START: - if (ALPHA(C) || (C == CSLASH)) - state = ST_TAG_BODY; - else if (C == EXCLAM) - state = ST_COMMENT_WAIT_DASH1; - else - /* - * Not characters and not whitespace. - * Must be something like "3 < 4". - */ - TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ - break; - case ST_TAG_BODY: - switch(C) { - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - case LANGLE: - /* - * The previous tag wasn't completed, but still - * recognized as valid. (Mozilla-compatible) - */ - TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); - break; - case CEQUAL: - state = ST_TAG_QUOTE_WAIT; - break; - } - break; - case ST_TAG_QUOTE_WAIT: - /* - * State after the equal sign ("=") in the tag. - */ - switch(C) { - case CQUOTE: - state = ST_TAG_QUOTED_STRING; - break; - case RANGLE: - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - break; - default: - if(!WHITESPACE(C)) - /* Unquoted string value */ - state = ST_TAG_UNQUOTED_STRING; - } - break; - case ST_TAG_QUOTED_STRING: - /* - * Tag attribute's string value in quotes. - */ - if(C == CQUOTE) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_TAG_UNQUOTED_STRING: - if(C == RANGLE) { - /* End of the tag */ - TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); - } else if(WHITESPACE(C)) { - /* Return back to the tag state */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH1: - if(C == CDASH) { - state = ST_COMMENT_WAIT_DASH2; - } else { - /* Some ordinary tag. */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT_WAIT_DASH2: - if(C == CDASH) { - /* Seen "<--" */ - state = ST_COMMENT; - } else { - /* Some ordinary tag */ - state = ST_TAG_BODY; - } - break; - case ST_COMMENT: - if(C == CDASH) { - state = ST_COMMENT_CLO_DASH2; - } - break; - case ST_COMMENT_CLO_DASH2: - if(C == CDASH) { - state = ST_COMMENT_CLO_RT; - } else { - /* This is not an end of a comment */ - state = ST_COMMENT; - } - break; - case ST_COMMENT_CLO_RT: - if(C == RANGLE) { - TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); - } else if(C == CDASH) { - /* Maintain current state, still waiting for '>' */ - } else { - state = ST_COMMENT; - } - break; - } /* switch(*ptr) */ - } /* for() */ - - /* - * Flush the partially processed chunk, state permitting. - */ - if(p - chunk_start) { - switch (state) { - case ST_COMMENT: - TOKEN_CB(PXML_COMMENT, state, 0); - break; - case ST_TEXT: - TOKEN_CB(PXML_TEXT, state, 0); - break; - default: break; /* a no-op */ - } - } - -finish: - *stateContext = (int)state; - return chunk_start - (const char *)xmlbuf; -} - diff --git a/src/tmx/Messages/include/rtcm/RTCM2.h b/src/tmx/Messages/include/rtcm/RTCM2.h index f4ee050ee..5ae79b414 100644 --- a/src/tmx/Messages/include/rtcm/RTCM2.h +++ b/src/tmx/Messages/include/rtcm/RTCM2.h @@ -296,30 +296,30 @@ class RTCMMessage: public TmxRtcmMessage { tmx::messages::RtcmMessage get_RtcmMessage() { tmx::byte_stream msgContents = get_contents(); -#if SAEJ2735_SPEC < 63 - RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); - memset(rtcm, 0, sizeof(RTCM_Corrections)); - - rtcm->msgID = DSRCmsgID_rtcmCorrections; - rtcm->rev = RTCM_Revision_rtcmRev2_3; - - // Set the header - rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); - rtcm->rtcmHeader.size = 5; - rtcm->rtcmHeader.buf[0] = 0x0E; - rtcm->rtcmHeader.buf[1] = 0x00; - rtcm->rtcmHeader.buf[2] = 0x00; - rtcm->rtcmHeader.buf[3] = 0x00; - rtcm->rtcmHeader.buf[4] = 0x00; - - // Copy the message bytes - RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); - rtcmMessage->payload.size = msgContents.size(); - rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); - memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); - - ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); -#else +// #if SAEJ2735_SPEC < 63 +// RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); +// memset(rtcm, 0, sizeof(RTCM_Corrections)); + +// rtcm->msgID = DSRCmsgID_rtcmCorrections; +// rtcm->rev = RTCM_Revision_rtcmRev2_3; + +// // Set the header +// rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); +// rtcm->rtcmHeader.size = 5; +// rtcm->rtcmHeader.buf[0] = 0x0E; +// rtcm->rtcmHeader.buf[1] = 0x00; +// rtcm->rtcmHeader.buf[2] = 0x00; +// rtcm->rtcmHeader.buf[3] = 0x00; +// rtcm->rtcmHeader.buf[4] = 0x00; + +// // Copy the message bytes +// RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); +// rtcmMessage->payload.size = msgContents.size(); +// rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); +// memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); + +// ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); +// #else RTCMcorrections *rtcm = (RTCMcorrections *)calloc(1, sizeof(RTCMcorrections)); memset(rtcm, 0, sizeof(RTCMcorrections)); @@ -332,7 +332,7 @@ class RTCMMessage: public TmxRtcmMessage { memcpy(rtcmMessage->buf, msgContents.data(), rtcmMessage->size); ASN_SET_ADD(&rtcm->msgs.list, rtcmMessage); -#endif +// #endif rtcm->msgCnt = this->get_SequenceNumber(); return tmx::messages::RtcmMessage(rtcm); diff --git a/src/tmx/Messages/include/rtcm/RTCM3.h b/src/tmx/Messages/include/rtcm/RTCM3.h index 9aac5ea7c..44fd7bb27 100644 --- a/src/tmx/Messages/include/rtcm/RTCM3.h +++ b/src/tmx/Messages/include/rtcm/RTCM3.h @@ -229,30 +229,30 @@ class RTCMMessage: public TmxRtcmMessage { tmx::messages::RtcmMessage get_RtcmMessage() { tmx::byte_stream msgContents = get_contents(); -#if SAEJ2735_SPEC < 63 - RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); - memset(rtcm, 0, sizeof(RTCM_Corrections)); - - rtcm->msgID = DSRCmsgID_rtcmCorrections; - rtcm->rev = RTCM_Revision_rtcmRev3_0; - - // Set the header - rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); - rtcm->rtcmHeader.size = 5; - rtcm->rtcmHeader.buf[0] = 0x0E; - rtcm->rtcmHeader.buf[1] = 0x00; - rtcm->rtcmHeader.buf[2] = 0x00; - rtcm->rtcmHeader.buf[3] = 0x00; - rtcm->rtcmHeader.buf[4] = 0x00; - - // Copy the message bytes - RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); - rtcmMessage->payload.size = msgContents.size(); - rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); - memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); - - ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); -#else +// #if SAEJ2735_SPEC < 63 +// RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); +// memset(rtcm, 0, sizeof(RTCM_Corrections)); + +// rtcm->msgID = DSRCmsgID_rtcmCorrections; +// rtcm->rev = RTCM_Revision_rtcmRev3_0; + +// // Set the header +// rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); +// rtcm->rtcmHeader.size = 5; +// rtcm->rtcmHeader.buf[0] = 0x0E; +// rtcm->rtcmHeader.buf[1] = 0x00; +// rtcm->rtcmHeader.buf[2] = 0x00; +// rtcm->rtcmHeader.buf[3] = 0x00; +// rtcm->rtcmHeader.buf[4] = 0x00; + +// // Copy the message bytes +// RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); +// rtcmMessage->payload.size = msgContents.size(); +// rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); +// memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); + +// ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); +// #else RTCMcorrections *rtcm = (RTCMcorrections *)calloc(1, sizeof(RTCMcorrections)); memset(rtcm, 0, sizeof(RTCMcorrections)); @@ -265,7 +265,7 @@ class RTCMMessage: public TmxRtcmMessage { memcpy(rtcmMessage->buf, msgContents.data(), rtcmMessage->size); ASN_SET_ADD(&rtcm->msgs.list, rtcmMessage); -#endif +// #endif rtcm->msgCnt = 0; return tmx::messages::RtcmMessage(rtcm); diff --git a/src/tmx/TmxApi/tmx/TmxApiMessages.h b/src/tmx/TmxApi/tmx/TmxApiMessages.h index f44406061..b8a1e6daa 100644 --- a/src/tmx/TmxApi/tmx/TmxApiMessages.h +++ b/src/tmx/TmxApi/tmx/TmxApiMessages.h @@ -196,7 +196,7 @@ enum msgPSID rtcmCorrections_PSID = 0x8000, signalRequestMessage_PSID = 0xE0000016, signalStatusMessage_PSID = 0x8002, - sensorDataSharingMessage_PSID = 0x8002, + sensorDataSharingMessage_PSID = 0x8010, travelerInformation_PSID = 0x8003, personalSafetyMessage_PSID = 0x27, testMessage00_PSID = 0xBFEE, @@ -221,7 +221,7 @@ static CONSTEXPR const char *MSGPSID_ROADSIDEALERT_PSID_STRING = "0x8003"; static CONSTEXPR const char *MSGPSID_RTCMCORRECTIONS_PSID_STRING = "0x8000"; static CONSTEXPR const char *MSGPSID_SIGNALREQUESTMESSAGE_PSID_STRING = "0xE0000016"; static CONSTEXPR const char *MSGPSID_SIGNALSTATUSMESSAGE_PSID_STRING = "0x8002"; -static CONSTEXPR const char *MSGPSID_SENSORDATASHARINGMESSAGE_PSID_STRING = "0x8002"; +static CONSTEXPR const char *MSGPSID_SENSORDATASHARINGMESSAGE_PSID_STRING = "0x8010"; static CONSTEXPR const char *MSGPSID_TRAVELERINFORMATION_PSID_STRING = "0x8003"; static CONSTEXPR const char *MSGPSID_PERSONALSAFETYMESSAGE_PSID_STRING = "0x27"; static CONSTEXPR const char *MSGPSID_TESTMESSAGE00_PSID_STRING = "0xBFEE"; diff --git a/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp index a1a133110..d52346574 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp @@ -13,9 +13,9 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +// #else TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_BASICSAFETYMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp index a7072bc03..45fd6886f 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp @@ -12,11 +12,11 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest_D, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest_D, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) +// #else TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) -#endif +// #endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp index db0c11de7..5d79eb8c2 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp @@ -12,11 +12,11 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert_D, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert_D, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) +// #else TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) -#endif +// #endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp index 9decb0dba..3cf6b5a92 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp @@ -12,11 +12,11 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision_D, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision_D, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) +// #else TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) -#endif +// #endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp index 1fa6eadf8..b62862281 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp @@ -17,17 +17,17 @@ // Need to include all the types #include -#if SAEJ2735_SPEC < 63 -#include -#endif +// #if SAEJ2735_SPEC < 63 +// #include +// #endif #include #include #include #include #include -#if SAEJ2735_SPEC < 63 -#include -#endif +// #if SAEJ2735_SPEC < 63 +// #include +// #endif #include #include #include @@ -43,7 +43,7 @@ #include #include #include -#include +// #include namespace tmx { namespace messages { @@ -54,18 +54,18 @@ struct ENDOFLIST {}; template struct message_type_list {}; using message_types = message_type_list< BsmMessage, -#if SAEJ2735_SPEC < 63 - BsmvMessage, -#endif +// #if SAEJ2735_SPEC < 63 +// BsmvMessage, +// #endif CsrMessage, EvaMessage, IntersectionCollisionMessage, MapDataMessage, NmeaMessage, PdmMessage, -#if SAEJ2735_SPEC < 63 - PmmMessage, -#endif +// #if SAEJ2735_SPEC < 63 +// PmmMessage, +// #endif PsmMessage, PvdMessage, RsaMessage, @@ -79,8 +79,8 @@ using message_types = message_type_list< tsm0Message, tsm1Message, tsm2Message, - tsm3Message, - SdsmMessage + tsm3Message + // SdsmMessage >; /// Base allocator type @@ -179,18 +179,18 @@ class J2735MessageFactory if (byInt.size() <= 0 || byStr.size() <= 0) { add_allocator_to_maps(); -#if SAEJ2735_SPEC < 63 - add_allocator_to_maps(); -#endif +// #if SAEJ2735_SPEC < 63 +// add_allocator_to_maps(); +// #endif add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); -#if SAEJ2735_SPEC < 63 - add_allocator_to_maps(); -#endif +// #if SAEJ2735_SPEC < 63 +// add_allocator_to_maps(); +// #endif add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); @@ -205,10 +205,10 @@ class J2735MessageFactory add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); - add_allocator_to_maps(); -#if SAEJ2735_SPEC < 63 - add_allocator_to_maps(); -#endif + // add_allocator_to_maps(); +// #if SAEJ2735_SPEC < 63 +// add_allocator_to_maps(); +// #endif } } @@ -417,11 +417,11 @@ class J2735MessageFactory // Always try the default encoding first ASN1_CODEC Codec; -#if SAEJ2735_SPEC < 63 - tmx::messages::codec::uper OtherCodec; -#else +// #if SAEJ2735_SPEC < 63 +// tmx::messages::codec::uper OtherCodec; +// #else tmx::messages::codec::der OtherCodec; -#endif +// #endif int id = Codec.decode_contentId(bytes); diff --git a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp index b9e5630d9..244806101 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp @@ -38,31 +38,64 @@ routeable_message::get_payload return encMsg.get_payload(); \ } -#if SAEJ2735_SPEC < 63 -#define TMX_J2735_MESSAGE_FRAME_FROM(T) \ -template <> \ -inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ - (const typename MessageFrameTraits::message_type *ptr) \ -{ return tmx::messages::j2735::UperFrameDecode(ptr); } +// #if SAEJ2735_SPEC < 63 +// #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ +// template <> \ +// inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ +// (const typename MessageFrameTraits::message_type *ptr) \ +// { return tmx::messages::j2735::UperFrameDecode(ptr); } -#define TMX_J2735_MESSAGE_FRAME_TO(T) \ -template <> \ -inline typename MessageFrameTraits::message_type *\ - _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ -{ return tmx::messages::j2735::UperFrameEncode(ptr); } +// #define TMX_J2735_MESSAGE_FRAME_TO(T) \ +// template <> \ +// inline typename MessageFrameTraits::message_type *\ +// _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ +// { return tmx::messages::j2735::UperFrameEncode(ptr); } -#else +// #elif SAEJ2735_SPEC < 2020 +// #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ +// template <> \ +// inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ +// (const typename MessageFrameTraits::message_type *ptr) \ +// { \ +// if (ptr && ptr->value.present == value_PR_ ##T) \ +// return (T *)&(ptr->value.choice.T); \ +// else \ +// return 0; \ +// } + +// #else #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ template <> \ inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ (const typename MessageFrameTraits::message_type *ptr) \ { \ - if (ptr && ptr->value.present == value_PR_ ##T) \ + if (ptr && ptr->value.present == MessageFrame__value_PR_ ##T) \ return (T *)&(ptr->value.choice.T); \ else \ return 0; \ } +// #endif + +// #if SAEJ2735_SPEC < 2020 +// #define TMX_J2735_MESSAGE_FRAME_TO(T) \ +// template <> \ +// inline typename MessageFrameTraits::message_type *\ +// _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ +// { \ +// if (ptr) \ +// { \ +// typename MessageFrameTraits::message_type *frame = \ +// (typename MessageFrameTraits::message_type *)\ +// calloc(1, sizeof(typename MessageFrameTraits::message_type)); \ +// frame->messageId = get_default_messageId< SaeJ2735Traits >(); \ +// frame->value.present = value_PR_ ##T; \ +// frame->value.choice.T = *(ptr); \ +// return frame; \ +// } \ +// return 0; \ +// } +// #else #define TMX_J2735_MESSAGE_FRAME_TO(T) \ template <> \ inline typename MessageFrameTraits::message_type *\ @@ -74,14 +107,15 @@ inline typename MessageFrameTraits::message_type *\ (typename MessageFrameTraits::message_type *)\ calloc(1, sizeof(typename MessageFrameTraits::message_type)); \ frame->messageId = get_default_messageId< SaeJ2735Traits >(); \ - frame->value.present = value_PR_ ##T; \ + frame->value.present = MessageFrame__value_PR_ ##T; \ frame->value.choice.T = *(ptr); \ return frame; \ } \ return 0; \ } -#endif +// #endif +// #endif #define TMX_J2735_DECLARE_MESSAGE(NM, T, ID, TYPE) \ TMX_J2735_NAMESPACE_START(tmx) \ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp b/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp index 364e1bd88..6de051348 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp @@ -8,22 +8,22 @@ #ifndef TMX_J2735_MESSAGES_MESSAGEFRAME_HPP_ #define TMX_J2735_MESSAGES_MESSAGEFRAME_HPP_ -#if SAEJ2735_SPEC < 63 -#include -#else +// #if SAEJ2735_SPEC < 63 +// #include +// #else #include -#endif +// #endif #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE_MESSAGE(UperFrame, UPERframe, api::uperFrame_D, api::MSGSUBTYPE_UPERFRAME_D_STRING); +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE_MESSAGE(UperFrame, UPERframe, api::uperFrame_D, api::MSGSUBTYPE_UPERFRAME_D_STRING); -typedef UperFrameTraits MessageFrameTraits; -typedef UperFrameMessage MessageFrameMessage; +// typedef UperFrameTraits MessageFrameTraits; +// typedef UperFrameMessage MessageFrameMessage; -#else +// #else TMX_J2735_DECLARE_MESSAGE(MessageFrame, MessageFrame, api::uperFrame_D, "MessageFrame") -#endif +// #endif TMX_J2735_DECLARE_END diff --git a/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp index c805db83d..94c097870 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ #define TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ -#if SAEJ2735_SPEC < 63 -#include -#else +// #if SAEJ2735_SPEC < 63 +// #include +// #else #include -#endif +// #endif #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Nmea, NMEA_Corrections, api::nmeaCorrections_D, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Nmea, NMEA_Corrections, api::nmeaCorrections_D, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) +// #else TMX_J2735_DECLARE(Nmea, NMEAcorrections, api::nmeaCorrections, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp index 66fe9d84c..935b3e74a 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp @@ -12,11 +12,11 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement_D, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement_D, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) +// #else TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) -#endif +// #endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp index cf27d9b87..7e2ce2a73 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp @@ -12,11 +12,11 @@ #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData_D, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData_D, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) +// #else TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) -#endif +// #endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) @@ -26,15 +26,15 @@ TMX_J2735_NAMESPACE_START(j2735) template <> inline int get_j2735_message_key(std::shared_ptr message) { if (message && message->probeID && message->probeID->id) { -#if SAEJ2735_SPEC < 63 - { - TemporaryID_t &id = *message->probeID->id; -#else +// #if SAEJ2735_SPEC < 63 +// { +// TemporaryID_t &id = *message->probeID->id; +// #else if (message->probeID->id->present == VehicleID_PR_stationID) { return (int)message->probeID->id->choice.stationID; } else if (message->probeID->id->present == VehicleID_PR_entityID) { TemporaryID_t &id = message->probeID->id->choice.entityID; -#endif +// #endif tmx::byte_stream bytes(fmax(id.size, sizeof(int))); ::memcpy(bytes.data(), id.buf, bytes.size()); return *((int *)bytes.data()); diff --git a/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp index 9fc7adb18..08f5685b1 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ #define TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ -#if SAEJ2735_SPEC < 63 -#include -#else +// #if SAEJ2735_SPEC < 63 +// #include +// #else #include -#endif +// #endif #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Rtcm, RTCM_Corrections, api::rtcmCorrections_D, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Rtcm, RTCM_Corrections, api::rtcmCorrections_D, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) +// #else TMX_J2735_DECLARE(Rtcm, RTCMcorrections, api::rtcmCorrections, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp index 66b910e51..4ce18c159 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp @@ -1,15 +1,15 @@ -/* - * @file SensorDataSharingMessage.hpp - * - * Created on: August 4, 2023 - */ -#ifndef TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ -#define TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ +// /* +// * @file SensorDataSharingMessage.hpp +// * +// * Created on: August 4, 2023 +// */ +// #ifndef TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ +// #define TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ -#include -#include -#include +// #include +// #include +// #include -TMX_J2735_DECLARE(Sdsm, SensorDataSharingMessage, api::sensorDataSharingMessage, api::MSGSUBTYPE_SENSORDATASHARINGMESSAGE_STRING) +// TMX_J2735_DECLARE(Sdsm, SensorDataSharingMessage, api::sensorDataSharingMessage, api::MSGSUBTYPE_SENSORDATASHARINGMESSAGE_STRING) -#endif /* TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ */ +// #endif /* TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp index 66b35a87d..5770f1b7a 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ #define TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ -#if SAEJ2735_SPEC < 63 -#include -#else +// #if SAEJ2735_SPEC < 63 +// #include +// #else #include -#endif +// #endif #include #include -#if SAEJ2735_SPEC < 63 -TMX_J2735_DECLARE(Srm, SignalRequestMsg, api::signalRequestMessage_D, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) -#else +// #if SAEJ2735_SPEC < 63 +// TMX_J2735_DECLARE(Srm, SignalRequestMsg, api::signalRequestMessage_D, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) +// #else TMX_J2735_DECLARE(Srm, SignalRequestMessage, api::signalRequestMessage, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp index 3f4bc11b0..e6400b0a8 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 TMX_J2735_DECLARE(tsm0, TestMessage00, api::testMessage00, api::MSGSUBTYPE_TESTMESSAGE00_STRING) // Specialize the unique key function @@ -36,7 +36,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE00_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp index 0be856c91..b484ed5b3 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 //TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) //#else TMX_J2735_DECLARE(tsm1, TestMessage01, api::testMessage01, api::MSGSUBTYPE_TESTMESSAGE01_STRING) @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE05_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp index 5376e113f..1055dff7b 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 //TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) //#else TMX_J2735_DECLARE(tsm2, TestMessage02, api::testMessage02, api::MSGSUBTYPE_TESTMESSAGE02_STRING) @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE02_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp index 0be15cc22..bf1ff17d3 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 TMX_J2735_DECLARE(tsm3, TestMessage03, api::testMessage03, api::MSGSUBTYPE_TESTMESSAGE03_STRING) // Specialize the unique key function @@ -36,7 +36,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE00_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp index c78a3d750..632d97d20 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 //TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) //#else TMX_J2735_DECLARE(tsm4, TestMessage04, api::testMessage04, api::MSGSUBTYPE_TESTMESSAGE04_STRING) @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE04_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp index 535d09c23..32cfc0c61 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp @@ -13,7 +13,7 @@ #include #include -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 //TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) //#else TMX_J2735_DECLARE(tsm5, TestMessage05, api::testMessage05, api::MSGSUBTYPE_TESTMESSAGE05_STRING) @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -#endif +// #endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE05_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/messages/IvpJ2735.c b/src/tmx/TmxApi/tmx/messages/IvpJ2735.c index 03001a1e7..e35a042d7 100644 --- a/src/tmx/TmxApi/tmx/messages/IvpJ2735.c +++ b/src/tmx/TmxApi/tmx/messages/IvpJ2735.c @@ -11,16 +11,16 @@ //#include #include -#if SAEJ2735_SPEC < 63 -#include -#include -#include -#include -#else +// #if SAEJ2735_SPEC < 63 +// #include +// #include +// #include +// #include +// #else #include #include #include -#endif +// #endif #include #include #include @@ -42,35 +42,35 @@ asn_TYPE_descriptor_t *getTypeDescriptorFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return &asn_DEF_AlaCarte; case DSRCmsgID_basicSafetyMessage: return &asn_DEF_BasicSafetyMessage; -#if SAEJ2735_SPEC < 63 - case DSRCmsgID_basicSafetyMessageVerbose: return &asn_DEF_BasicSafetyMessageVerbose; -#endif +// #if SAEJ2735_SPEC < 63 +// case DSRCmsgID_basicSafetyMessageVerbose: return &asn_DEF_BasicSafetyMessageVerbose; +// #endif case DSRCmsgID_commonSafetyRequest: return &asn_DEF_CommonSafetyRequest; case DSRCmsgID_emergencyVehicleAlert: return &asn_DEF_EmergencyVehicleAlert; case DSRCmsgID_intersectionCollisionAlert: return &asn_DEF_IntersectionCollision; case DSRCmsgID_mapData: return &asn_DEF_MapData; case DSRCmsgID_nmeaCorrections: -#if SAEJ2735_SPEC < 63 - return &asn_DEF_NMEA_Corrections; -#else +// #if SAEJ2735_SPEC < 63 +// return &asn_DEF_NMEA_Corrections; +// #else return &asn_DEF_NMEAcorrections; -#endif +// #endif case DSRCmsgID_probeDataManagement: return &asn_DEF_ProbeDataManagement; case DSRCmsgID_probeVehicleData: return &asn_DEF_ProbeVehicleData; case DSRCmsgID_roadSideAlert: return &asn_DEF_RoadSideAlert; case DSRCmsgID_rtcmCorrections: -#if SAEJ2735_SPEC < 63 - return &asn_DEF_RTCM_Corrections; -#else +// #if SAEJ2735_SPEC < 63 +// return &asn_DEF_RTCM_Corrections; +// #else return &asn_DEF_RTCMcorrections; -#endif +// #endif case DSRCmsgID_signalPhaseAndTimingMessage: return &asn_DEF_SPAT; case DSRCmsgID_signalRequestMessage: -#if SAEJ2735_SPEC < 63 - return &asn_DEF_SignalRequestMsg; -#else +// #if SAEJ2735_SPEC < 63 +// return &asn_DEF_SignalRequestMsg; +// #else return &asn_DEF_SignalRequestMessage; -#endif +// #endif case DSRCmsgID_signalStatusMessage: return &asn_DEF_SignalStatusMessage; case DSRCmsgID_travelerInformation: return &asn_DEF_TravelerInformation; default: break; @@ -85,7 +85,7 @@ const char *getMessageSubTypeFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return "ACM"; case DSRCmsgID_basicSafetyMessage: return "BSM"; - case DSRCmsgID_basicSafetyMessageVerbose: return "BSMV"; + // case DSRCmsgID_basicSafetyMessageVerbose: return "BSMV"; case DSRCmsgID_commonSafetyRequest: return "CSR"; case DSRCmsgID_emergencyVehicleAlert: return "EVA"; case DSRCmsgID_intersectionCollisionAlert: return "IC"; @@ -111,7 +111,7 @@ const char *getMessageDescriptionFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return "DSRC AlaCarte Message"; case DSRCmsgID_basicSafetyMessage: return "DSRC Basic Safety Message"; - case DSRCmsgID_basicSafetyMessageVerbose: return "DSRC Basic Safety Message Verbose"; + // case DSRCmsgID_basicSafetyMessageVerbose: return "DSRC Basic Safety Message Verbose"; case DSRCmsgID_commonSafetyRequest: return "DSRC Common Safety Request"; case DSRCmsgID_emergencyVehicleAlert: return "DSRC Emergency Vehicle Alert"; case DSRCmsgID_intersectionCollisionAlert: return "DSRC Intersection Collision"; diff --git a/src/tmx/TmxApi/tmx/messages/IvpJ2735.h b/src/tmx/TmxApi/tmx/messages/IvpJ2735.h index 5698de1ab..b1beee0d3 100644 --- a/src/tmx/TmxApi/tmx/messages/IvpJ2735.h +++ b/src/tmx/TmxApi/tmx/messages/IvpJ2735.h @@ -14,7 +14,7 @@ #include #ifndef SAEJ2735_SPEC -#define SAEJ2735_SPEC 63 +#define SAEJ2735_SPEC 2020 #endif #include @@ -27,7 +27,7 @@ extern "C" #endif // Include this for backwards compability -#if SAEJ2735_SPEC >= 63 +// #if SAEJ2735_SPEC >= 63 /* Dependencies */ typedef enum DSRCmsgID { DSRCmsgID_reserved = 0, @@ -60,7 +60,7 @@ typedef enum DSRCmsgID { */ } e_DSRCmsgID; -#endif +// #endif typedef struct { void *msgStructure; diff --git a/src/tmx/TmxApi/tmx/messages/SaeJ2735Traits.hpp b/src/tmx/TmxApi/tmx/messages/SaeJ2735Traits.hpp index b2c03cc1e..114b78f75 100644 --- a/src/tmx/TmxApi/tmx/messages/SaeJ2735Traits.hpp +++ b/src/tmx/TmxApi/tmx/messages/SaeJ2735Traits.hpp @@ -14,7 +14,7 @@ #include #ifndef SAEJ2735_SPEC -#define SAEJ2735_SPEC 63 +#define SAEJ2735_SPEC 2020 #endif #define DEFINE_MEMBER_CHECKER(member) \ diff --git a/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp b/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp index 619dab9cd..b6a82c4a2 100644 --- a/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp +++ b/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp @@ -13,11 +13,11 @@ #define TMX_J2735_MAX_DATA_SIZE 4000 -#if SAEJ2735_SPEC < 63 -#define ASN1_CODEC tmx::messages::codec::der -#else +// #if SAEJ2735_SPEC < 63 +// #define ASN1_CODEC tmx::messages::codec::der +// #else #define ASN1_CODEC tmx::messages::codec::uper -#endif +// #endif #include @@ -177,17 +177,17 @@ struct uper MessageFrameMessage::message_type *frame = NULL; asn_TYPE_descriptor_t *descriptor = NULL; -#if SAEJ2735_SPEC < 63 - static uper decoder; +// #if SAEJ2735_SPEC < 63 +// static uper decoder; - descriptor = MessageFrameMessage::get_descriptor(); +// descriptor = MessageFrameMessage::get_descriptor(); - asn_dec_rval_t ret = decoder.decode((void **)&frame, bytes, descriptor); - if (ret.code != RC_OK || frame == NULL) - return -1; +// asn_dec_rval_t ret = decoder.decode((void **)&frame, bytes, descriptor); +// if (ret.code != RC_OK || frame == NULL) +// return -1; - id = frame->contentID; -#else +// id = frame->contentID; +// #else // Message ID is encoded directly in the message frame, first two bytes if (bytes.size() > 1) id = bytes[0]; @@ -196,7 +196,7 @@ struct uper id <<= 8; id |= bytes[1]; } -#endif +// #endif if (descriptor) ASN_STRUCT_FREE((*descriptor), frame); @@ -554,57 +554,57 @@ class TmxJ2735EncodedMessage: public TmxJ2735EncodedMessageBase typedef TmxJ2735EncodedMessage MessageFrameEncodedMessage; -#if SAEJ2735_SPEC < 63 -namespace j2735 { - -// Decode and encode for UPER frame -template -T *UperFrameDecode(const typename MessageFrameMessage::message_type *ptr) -{ - if (ptr && ptr->contentID == get_default_messageId< SaeJ2735Traits >()) - { - tmx::messages::codec::uper< TmxJ2735Message > uperDecoder; - tmx::byte_stream uperFrameBytes(ptr->msgBlob.size); - memcpy(uperFrameBytes.data(), ptr->msgBlob.buf, ptr->msgBlob.size); - T *obj = 0; - asn_dec_rval_t udRet = uperDecoder.decode((void **)obj, uperFrameBytes); - if (udRet.code == RC_OK && obj) - return obj; - } - - return 0; -} - -template -typename MessageFrameMessage::message_type *UperFrameEncode(const T *ptr) -{ - if (ptr) - { - tmx::messages::codec::uper< TmxJ2735Message > uperEncoder; - tmx::byte_stream uperFrameBytes(TMX_J2735_MAX_DATA_SIZE); - asn_enc_rval_t ueRet = uperEncoder.encode(ptr, uperFrameBytes); - if (ueRet.encoded > 0) - { - typename MessageFrameMessage::message_type *uperFrame = - (typename MessageFrameMessage::message_type *) - calloc(1, sizeof(typename MessageFrameMessage::message_type)); - - uperFrameBytes.resize(ueRet.encoded); - - uperFrame->msgID = get_default_messageId< MessageFrameTraits >(); - uperFrame->contentID = get_default_messageId< SaeJ2735Traits >(); - uperFrame->msgBlob.buf = (uint8_t *) calloc(ueRet.encoded, sizeof(uint8_t)); - uperFrame->msgBlob.size = (int)ueRet.encoded; - ::memcpy(uperFrame->msgBlob.buf, uperFrameBytes.data(), ueRet.encoded); - return uperFrame; - } - } - - return 0; -} - -} /* End namespace j2735 */ -#endif +// #if SAEJ2735_SPEC < 63 +// namespace j2735 { + +// // Decode and encode for UPER frame +// template +// T *UperFrameDecode(const typename MessageFrameMessage::message_type *ptr) +// { +// if (ptr && ptr->contentID == get_default_messageId< SaeJ2735Traits >()) +// { +// tmx::messages::codec::uper< TmxJ2735Message > uperDecoder; +// tmx::byte_stream uperFrameBytes(ptr->msgBlob.size); +// memcpy(uperFrameBytes.data(), ptr->msgBlob.buf, ptr->msgBlob.size); +// T *obj = 0; +// asn_dec_rval_t udRet = uperDecoder.decode((void **)obj, uperFrameBytes); +// if (udRet.code == RC_OK && obj) +// return obj; +// } + +// return 0; +// } + +// template +// typename MessageFrameMessage::message_type *UperFrameEncode(const T *ptr) +// { +// if (ptr) +// { +// tmx::messages::codec::uper< TmxJ2735Message > uperEncoder; +// tmx::byte_stream uperFrameBytes(TMX_J2735_MAX_DATA_SIZE); +// asn_enc_rval_t ueRet = uperEncoder.encode(ptr, uperFrameBytes); +// if (ueRet.encoded > 0) +// { +// typename MessageFrameMessage::message_type *uperFrame = +// (typename MessageFrameMessage::message_type *) +// calloc(1, sizeof(typename MessageFrameMessage::message_type)); + +// uperFrameBytes.resize(ueRet.encoded); + +// uperFrame->msgID = get_default_messageId< MessageFrameTraits >(); +// uperFrame->contentID = get_default_messageId< SaeJ2735Traits >(); +// uperFrame->msgBlob.buf = (uint8_t *) calloc(ueRet.encoded, sizeof(uint8_t)); +// uperFrame->msgBlob.size = (int)ueRet.encoded; +// ::memcpy(uperFrame->msgBlob.buf, uperFrameBytes.data(), ueRet.encoded); +// return uperFrame; +// } +// } + +// return 0; +// } + +// } /* End namespace j2735 */ +// #endif } /* End namespace messages */ } /* End namespace tmx */ diff --git a/src/tmx/TmxUtils/src/BsmConverter.cpp b/src/tmx/TmxUtils/src/BsmConverter.cpp index 534268371..6c94b7267 100644 --- a/src/tmx/TmxUtils/src/BsmConverter.cpp +++ b/src/tmx/TmxUtils/src/BsmConverter.cpp @@ -13,9 +13,9 @@ namespace utils { void BsmConverter::ToDecodedBsmMessage(BasicSafetyMessage_t &bsm, tmx::messages::DecodedBsmMessage &decoded) { -#if SAEJ2735_SPEC < 63 - ToDecodedBsmMessage(bsm.blob1.buf, decoded); -#else +// #if SAEJ2735_SPEC < 63 +// ToDecodedBsmMessage(bsm.blob1.buf, decoded); +// #else decoded.set_IsLocationValid(false); decoded.set_IsElevationValid(false); decoded.set_IsSpeedValid(false); @@ -77,69 +77,69 @@ void BsmConverter::ToDecodedBsmMessage(BasicSafetyMessage_t &bsm, tmx::messages: decoded.set_IsSteeringWheelAngleValid(true); } -#endif +// #endif } void BsmConverter::ToDecodedBsmMessage(uint8_t *buf, tmx::messages::DecodedBsmMessage &decoded) { -#if SAEJ2735_SPEC < 63 - decoded.set_IsLocationValid(false); - decoded.set_IsElevationValid(false); - decoded.set_IsSpeedValid(false); - decoded.set_IsHeadingValid(false); - decoded.set_IsSteeringWheelAngleValid(false); - - decoded.set_TemporaryId(ntohl(*(uint32_t*)(buf+1))); - - int32_t latitude = (int32_t)ntohl(*(uint32_t*)(buf+7)); - int32_t longitude = (int32_t)ntohl(*(uint32_t*)(buf+11)); - - if (latitude != 900000001 && longitude != 1800000001) - { - decoded.set_Latitude((double)latitude/10000000); - decoded.set_Longitude((double)longitude/10000000); - decoded.set_IsLocationValid(true); - } - - int16_t elevation = ntohs(*(uint16_t*)(buf+15)); - - if (elevation != -4095) - { - decoded.set_Elevation_m((float)elevation/10.0); - decoded.set_IsElevationValid(true); - } - - uint16_t transmissionAndSpeed = ntohs(*(uint16_t*)(buf+21)); - - // The speed is contained in bits 0-12. Units are 0.02 meters/sec. - // A value of 8191 is used when the speed is not known. - uint16_t speed = (uint16_t)(transmissionAndSpeed & 0x1FFF); - - if (speed != 8191) - { - // Convert from .02 meters/sec to mps. - decoded.set_Speed_mps(speed / 50.0); - decoded.set_IsSpeedValid(true); - } - - // Heading units are 0.0125 degrees. - uint16_t heading = ntohs(*(uint16_t*)(buf+23)); - - if (heading != 28800) - { - decoded.set_Heading(heading / 80.0); - decoded.set_IsHeadingValid(true); - } - - // Steering Wheel Angle units are 1.5 degrees. - int16_t angle = *(int16_t*)(buf+25); - - if (angle != 127) - { - decoded.set_SteeringWheelAngle(angle * 1.5); - decoded.set_IsSteeringWheelAngleValid(true); - } -#endif +// #if SAEJ2735_SPEC < 63 +// decoded.set_IsLocationValid(false); +// decoded.set_IsElevationValid(false); +// decoded.set_IsSpeedValid(false); +// decoded.set_IsHeadingValid(false); +// decoded.set_IsSteeringWheelAngleValid(false); + +// decoded.set_TemporaryId(ntohl(*(uint32_t*)(buf+1))); + +// int32_t latitude = (int32_t)ntohl(*(uint32_t*)(buf+7)); +// int32_t longitude = (int32_t)ntohl(*(uint32_t*)(buf+11)); + +// if (latitude != 900000001 && longitude != 1800000001) +// { +// decoded.set_Latitude((double)latitude/10000000); +// decoded.set_Longitude((double)longitude/10000000); +// decoded.set_IsLocationValid(true); +// } + +// int16_t elevation = ntohs(*(uint16_t*)(buf+15)); + +// if (elevation != -4095) +// { +// decoded.set_Elevation_m((float)elevation/10.0); +// decoded.set_IsElevationValid(true); +// } + +// uint16_t transmissionAndSpeed = ntohs(*(uint16_t*)(buf+21)); + +// // The speed is contained in bits 0-12. Units are 0.02 meters/sec. +// // A value of 8191 is used when the speed is not known. +// uint16_t speed = (uint16_t)(transmissionAndSpeed & 0x1FFF); + +// if (speed != 8191) +// { +// // Convert from .02 meters/sec to mps. +// decoded.set_Speed_mps(speed / 50.0); +// decoded.set_IsSpeedValid(true); +// } + +// // Heading units are 0.0125 degrees. +// uint16_t heading = ntohs(*(uint16_t*)(buf+23)); + +// if (heading != 28800) +// { +// decoded.set_Heading(heading / 80.0); +// decoded.set_IsHeadingValid(true); +// } + +// // Steering Wheel Angle units are 1.5 degrees. +// int16_t angle = *(int16_t*)(buf+25); + +// if (angle != 127) +// { +// decoded.set_SteeringWheelAngle(angle * 1.5); +// decoded.set_IsSteeringWheelAngleValid(true); +// } +// #endif } void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decoded, BasicSafetyMessage_t &bsm) @@ -153,114 +153,114 @@ void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decode uint32_t uint32Temp; int32_t int32Temp2; -#if SAEJ2735_SPEC < 63 - - bsm.msgID = DSRCmsgID_basicSafetyMessage; - - bsm.blob1.buf = (uint8_t *)calloc(1, 38); - - bsm.blob1.buf[0] = decoded.get_MsgCount(); - - uint32Temp = htonl(decoded.get_TemporaryId()); - memcpy(bsm.blob1.buf + 1, &uint32Temp, 4); - - uint16Temp = htons(decoded.get_SecondMark()); - memcpy(bsm.blob1.buf + 5, &uint16Temp, 2); - - // Latitude and Longitude are expressed in 1/10th integer microdegrees, as a 31 bit value. - // The value 900000001 indicates that latitude is not available. - // The value 1800000001 indicates that longitude is not available. - - if (decoded.get_IsLocationValid()) - int32Temp2 = (int32_t)(decoded.get_Latitude() * 10000000.0); - else - int32Temp2 = 900000001; - - uint32Temp = htonl(int32Temp2); - memcpy(bsm.blob1.buf + 7, &uint32Temp, 4); - - if (decoded.get_IsLocationValid()) - int32Temp2 = (int32_t)(decoded.get_Longitude() * 10000000.0); - else - int32Temp2 = 1800000001; - - uint32Temp = htonl(int32Temp2); - memcpy(bsm.blob1.buf + 11, &uint32Temp, 4); - - // Elevation is in units of 10 cm steps. - // max and min values are limited as set below. - - if (decoded.get_IsElevationValid()) - { - if (decoded.get_Elevation_m() > 6143.9) - int16Temp = 61439; - else if (decoded.get_Elevation_m() < -409.5) - int16Temp = -4095; - int16Temp = decoded.get_Elevation_m() * 10.0; - } - else - int16Temp = -4095; - - uint16Temp = htons(int16Temp); - memcpy(bsm.blob1.buf + 15, &uint16Temp, 2); - - // Positional Accuracy. - // TODO: implement. - uint32Temp = 0xFFFFFFFF; - memcpy(bsm.blob1.buf + 17, &uint32Temp, 4); - - // Speed and Transmission State. - // TODO: implement transmission state. currently set to 0. - - // Convert from mps to .02 meters/sec. - if (decoded.get_IsSpeedValid()) - int16Temp = decoded.get_Speed_mps() * 50.0; - else - int16Temp = 8191; - - uint16Temp = htons(int16Temp); - memcpy(bsm.blob1.buf + 21, &uint16Temp, 2); - - // Heading units are 0.0125 degrees. - if (decoded.get_IsHeadingValid()) - { - if (decoded.get_Heading() > 359.9875) - uint16Temp2 = 359.9875 * 80; - else if (decoded.get_Heading() < 0) - uint16Temp2 = 0; - uint16Temp2 = decoded.get_Heading() * 80; - } - else - uint16Temp2 = 28800; - - uint16Temp = htons(uint16Temp2); - memcpy(bsm.blob1.buf + 23, &uint16Temp, 2); - - // Steering Wheel Angle units are 1.5 degrees (-126 to 127). - if (decoded.get_IsSteeringWheelAngleValid()) - { - if (decoded.get_SteeringWheelAngle() > 189) - int8Temp = 126; - else if (decoded.get_SteeringWheelAngle() < -189) - int8Temp = -126; - int8Temp = decoded.get_SteeringWheelAngle() * 80; - } - else - int8Temp = 127; - - memcpy(bsm.blob1.buf + 25, &int8Temp, 1); - - // Acceleration Set 4 Way, Brake System Status, Vehicle Size. - // TODO: implement. - long longTemp = 0; - uint32Temp = 0; - memcpy(bsm.blob1.buf + 26, &longTemp, 7); - memcpy(bsm.blob1.buf + 33, &uint32Temp, 2); - memcpy(bsm.blob1.buf + 35, &uint32Temp, 3); - - bsm.blob1.size = 38; - -#else +// #if SAEJ2735_SPEC < 63 + +// bsm.msgID = DSRCmsgID_basicSafetyMessage; + +// bsm.blob1.buf = (uint8_t *)calloc(1, 38); + +// bsm.blob1.buf[0] = decoded.get_MsgCount(); + +// uint32Temp = htonl(decoded.get_TemporaryId()); +// memcpy(bsm.blob1.buf + 1, &uint32Temp, 4); + +// uint16Temp = htons(decoded.get_SecondMark()); +// memcpy(bsm.blob1.buf + 5, &uint16Temp, 2); + +// // Latitude and Longitude are expressed in 1/10th integer microdegrees, as a 31 bit value. +// // The value 900000001 indicates that latitude is not available. +// // The value 1800000001 indicates that longitude is not available. + +// if (decoded.get_IsLocationValid()) +// int32Temp2 = (int32_t)(decoded.get_Latitude() * 10000000.0); +// else +// int32Temp2 = 900000001; + +// uint32Temp = htonl(int32Temp2); +// memcpy(bsm.blob1.buf + 7, &uint32Temp, 4); + +// if (decoded.get_IsLocationValid()) +// int32Temp2 = (int32_t)(decoded.get_Longitude() * 10000000.0); +// else +// int32Temp2 = 1800000001; + +// uint32Temp = htonl(int32Temp2); +// memcpy(bsm.blob1.buf + 11, &uint32Temp, 4); + +// // Elevation is in units of 10 cm steps. +// // max and min values are limited as set below. + +// if (decoded.get_IsElevationValid()) +// { +// if (decoded.get_Elevation_m() > 6143.9) +// int16Temp = 61439; +// else if (decoded.get_Elevation_m() < -409.5) +// int16Temp = -4095; +// int16Temp = decoded.get_Elevation_m() * 10.0; +// } +// else +// int16Temp = -4095; + +// uint16Temp = htons(int16Temp); +// memcpy(bsm.blob1.buf + 15, &uint16Temp, 2); + +// // Positional Accuracy. +// // TODO: implement. +// uint32Temp = 0xFFFFFFFF; +// memcpy(bsm.blob1.buf + 17, &uint32Temp, 4); + +// // Speed and Transmission State. +// // TODO: implement transmission state. currently set to 0. + +// // Convert from mps to .02 meters/sec. +// if (decoded.get_IsSpeedValid()) +// int16Temp = decoded.get_Speed_mps() * 50.0; +// else +// int16Temp = 8191; + +// uint16Temp = htons(int16Temp); +// memcpy(bsm.blob1.buf + 21, &uint16Temp, 2); + +// // Heading units are 0.0125 degrees. +// if (decoded.get_IsHeadingValid()) +// { +// if (decoded.get_Heading() > 359.9875) +// uint16Temp2 = 359.9875 * 80; +// else if (decoded.get_Heading() < 0) +// uint16Temp2 = 0; +// uint16Temp2 = decoded.get_Heading() * 80; +// } +// else +// uint16Temp2 = 28800; + +// uint16Temp = htons(uint16Temp2); +// memcpy(bsm.blob1.buf + 23, &uint16Temp, 2); + +// // Steering Wheel Angle units are 1.5 degrees (-126 to 127). +// if (decoded.get_IsSteeringWheelAngleValid()) +// { +// if (decoded.get_SteeringWheelAngle() > 189) +// int8Temp = 126; +// else if (decoded.get_SteeringWheelAngle() < -189) +// int8Temp = -126; +// int8Temp = decoded.get_SteeringWheelAngle() * 80; +// } +// else +// int8Temp = 127; + +// memcpy(bsm.blob1.buf + 25, &int8Temp, 1); + +// // Acceleration Set 4 Way, Brake System Status, Vehicle Size. +// // TODO: implement. +// long longTemp = 0; +// uint32Temp = 0; +// memcpy(bsm.blob1.buf + 26, &longTemp, 7); +// memcpy(bsm.blob1.buf + 33, &uint32Temp, 2); +// memcpy(bsm.blob1.buf + 35, &uint32Temp, 3); + +// bsm.blob1.size = 38; + +// #else //if(iMsgCount>127 || iMsgCount<0) // iMsgCount = 0; @@ -372,7 +372,7 @@ void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decode bsm.coreData.brakes.brakeBoost=BrakeBoostApplied_unavailable; bsm.coreData.brakes.auxBrakes=AuxiliaryBrakeStatus_unavailable; -#endif +// #endif } } /* namespace utils */ diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index c885ecdd9..f7cb254b0 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -204,212 +204,212 @@ vector J2735MessageTest::enumNames(api::J2735_end); vector J2735MessageTest::msgTypes(api::J2735_end); vector J2735MessageTest::testBytes(api::J2735_end); -TEST_F(J2735MessageTest, EncodeMobilityOperation) -{ - TestMessage03_t* message = (TestMessage03_t*) malloc( sizeof(TestMessage03_t) ); +// TEST_F(J2735MessageTest, EncodeMobilityOperation) +// { +// TestMessage03_t* message = (TestMessage03_t*) malloc( sizeof(TestMessage03_t) ); - /** - * Populate MobilityHeader - */ +// /** +// * Populate MobilityHeader +// */ - char* my_str = (char *) "sender_id"; - uint8_t * my_bytes = reinterpret_cast(my_str); - message->header.hostStaticId.buf = my_bytes; - message->header.hostStaticId.size = strlen(my_str); - message->header.targetStaticId.buf = my_bytes; - message->header.targetStaticId.size = strlen(my_str); - - my_str = (char *) "bsm_idXX"; - my_bytes = reinterpret_cast(my_str); - message->header.hostBSMId.buf = my_bytes; - message->header.hostBSMId.size = strlen(my_str); - - my_str = (char *) "00000000-0000-0000-0000-000000000000"; - my_bytes = reinterpret_cast(my_str); - message->header.planId.buf = my_bytes; - message->header.planId.size = strlen(my_str); - - unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); - std::string timestamp_str = std::to_string(timestamp_ll).c_str(); - char * my_str_1 = new char[strlen(timestamp_str.c_str())]; - uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; - strcpy(my_str_1, timestamp_str.c_str()); - for(int i = 0; i< strlen(my_str_1); i++) - { - my_bytes_1[i] = (uint8_t)my_str_1[i]; - } - message->header.timestamp.buf = my_bytes_1; - message->header.timestamp.size = strlen(my_str_1); - - /** - * Populate MobilityOperation Body - */ - my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; - my_bytes = reinterpret_cast(my_str); - message->body.operationParams.buf = my_bytes; - message->body.operationParams.size = strlen(my_str); - - my_str = (char *) "carma3/Geofence_Acknowledgement"; - my_bytes = reinterpret_cast(my_str); - message->body.strategy.buf = my_bytes; - message->body.strategy.size = strlen(my_str); - - tmx::messages::tsm3EncodedMessage tsm3EncodeMessage; - tmx::messages::tsm3Message* _tsm3Message = new tmx::messages::tsm3Message(message); - tmx::messages::MessageFrameMessage frame_msg(_tsm3Message->get_j2735_data()); - tsm3EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); +// char* my_str = (char *) "sender_id"; +// uint8_t * my_bytes = reinterpret_cast(my_str); +// message->header.hostStaticId.buf = my_bytes; +// message->header.hostStaticId.size = strlen(my_str); +// message->header.targetStaticId.buf = my_bytes; +// message->header.targetStaticId.size = strlen(my_str); + +// my_str = (char *) "bsm_idXX"; +// my_bytes = reinterpret_cast(my_str); +// message->header.hostBSMId.buf = my_bytes; +// message->header.hostBSMId.size = strlen(my_str); + +// my_str = (char *) "00000000-0000-0000-0000-000000000000"; +// my_bytes = reinterpret_cast(my_str); +// message->header.planId.buf = my_bytes; +// message->header.planId.size = strlen(my_str); + +// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); +// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); +// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; +// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; +// strcpy(my_str_1, timestamp_str.c_str()); +// for(int i = 0; i< strlen(my_str_1); i++) +// { +// my_bytes_1[i] = (uint8_t)my_str_1[i]; +// } +// message->header.timestamp.buf = my_bytes_1; +// message->header.timestamp.size = strlen(my_str_1); + +// /** +// * Populate MobilityOperation Body +// */ +// my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; +// my_bytes = reinterpret_cast(my_str); +// message->body.operationParams.buf = my_bytes; +// message->body.operationParams.size = strlen(my_str); + +// my_str = (char *) "carma3/Geofence_Acknowledgement"; +// my_bytes = reinterpret_cast(my_str); +// message->body.strategy.buf = my_bytes; +// message->body.strategy.size = strlen(my_str); + +// tmx::messages::tsm3EncodedMessage tsm3EncodeMessage; +// tmx::messages::tsm3Message* _tsm3Message = new tmx::messages::tsm3Message(message); +// tmx::messages::MessageFrameMessage frame_msg(_tsm3Message->get_j2735_data()); +// tsm3EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); - free(message); - delete my_bytes_1; - delete my_str_1; - free(frame_msg.get_j2735_data().get()); - ASSERT_EQ(243, tsm3EncodeMessage.get_msgId()); -} +// free(message); +// delete my_bytes_1; +// delete my_str_1; +// free(frame_msg.get_j2735_data().get()); +// ASSERT_EQ(243, tsm3EncodeMessage.get_msgId()); +// } -TEST_F(J2735MessageTest, EncodeMobilityRequest) -{ - TestMessage00_t* message = (TestMessage00_t*) calloc(1, sizeof(TestMessage00_t) ); +// TEST_F(J2735MessageTest, EncodeMobilityRequest) +// { +// TestMessage00_t* message = (TestMessage00_t*) calloc(1, sizeof(TestMessage00_t) ); - /** - * Populate MobilityHeader - */ +// /** +// * Populate MobilityHeader +// */ - char* my_str = (char *) "sender_id"; - uint8_t* my_bytes = reinterpret_cast(my_str); - message->header.hostStaticId.buf = my_bytes; - message->header.hostStaticId.size = strlen(my_str); - message->header.targetStaticId.buf = my_bytes; - message->header.targetStaticId.size = strlen(my_str); - - my_str = (char *) "bsm_idXX"; - my_bytes = reinterpret_cast(my_str); - message->header.hostBSMId.buf = my_bytes; - message->header.hostBSMId.size = strlen(my_str); - - my_str = (char *) "00000000-0000-0000-0000-000000000000"; - my_bytes = reinterpret_cast(my_str); - message->header.planId.buf = my_bytes; - message->header.planId.size = strlen(my_str); - - unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); - std::string timestamp_str = std::to_string(timestamp_ll).c_str(); - char * my_str_1 = new char[strlen(timestamp_str.c_str())]; - uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; - strcpy(my_str_1, timestamp_str.c_str()); - for(int i = 0; i< strlen(my_str_1); i++) - { - my_bytes_1[i] = (uint8_t)my_str_1[i]; - } - message->header.timestamp.buf = my_bytes_1; - message->header.timestamp.size = strlen(my_str_1); - - /** - * Populate MobilityRequest Body - */ - my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; - my_bytes = reinterpret_cast(my_str); - message->body.strategyParams.buf = my_bytes; - message->body.strategyParams.size = strlen(my_str); - - my_str = (char *) "carma3/Geofence_Acknowledgement"; - my_bytes = reinterpret_cast(my_str); - message->body.strategy.buf = my_bytes; - message->body.strategy.size = strlen(my_str); - - message->body.urgency = 1; - message->body.planType = 0; - message->body.location.ecefX = 1; - message->body.location.ecefY = 1; - message->body.location.ecefZ = 1; - message->body.location.timestamp.buf = my_bytes_1; - message->body.location.timestamp.size = strlen(my_str_1); +// char* my_str = (char *) "sender_id"; +// uint8_t* my_bytes = reinterpret_cast(my_str); +// message->header.hostStaticId.buf = my_bytes; +// message->header.hostStaticId.size = strlen(my_str); +// message->header.targetStaticId.buf = my_bytes; +// message->header.targetStaticId.size = strlen(my_str); + +// my_str = (char *) "bsm_idXX"; +// my_bytes = reinterpret_cast(my_str); +// message->header.hostBSMId.buf = my_bytes; +// message->header.hostBSMId.size = strlen(my_str); + +// my_str = (char *) "00000000-0000-0000-0000-000000000000"; +// my_bytes = reinterpret_cast(my_str); +// message->header.planId.buf = my_bytes; +// message->header.planId.size = strlen(my_str); + +// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); +// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); +// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; +// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; +// strcpy(my_str_1, timestamp_str.c_str()); +// for(int i = 0; i< strlen(my_str_1); i++) +// { +// my_bytes_1[i] = (uint8_t)my_str_1[i]; +// } +// message->header.timestamp.buf = my_bytes_1; +// message->header.timestamp.size = strlen(my_str_1); + +// /** +// * Populate MobilityRequest Body +// */ +// my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; +// my_bytes = reinterpret_cast(my_str); +// message->body.strategyParams.buf = my_bytes; +// message->body.strategyParams.size = strlen(my_str); + +// my_str = (char *) "carma3/Geofence_Acknowledgement"; +// my_bytes = reinterpret_cast(my_str); +// message->body.strategy.buf = my_bytes; +// message->body.strategy.size = strlen(my_str); + +// message->body.urgency = 1; +// message->body.planType = 0; +// message->body.location.ecefX = 1; +// message->body.location.ecefY = 1; +// message->body.location.ecefZ = 1; +// message->body.location.timestamp.buf = my_bytes_1; +// message->body.location.timestamp.size = strlen(my_str_1); - message->body.expiration.buf = my_bytes_1; - message->body.expiration.size = strlen(my_str_1); +// message->body.expiration.buf = my_bytes_1; +// message->body.expiration.size = strlen(my_str_1); - MobilityECEFOffset_t* offset = (MobilityECEFOffset_t*)calloc(1, sizeof(MobilityECEFOffset_t) ); - offset->offsetX = 1; - offset->offsetY = 1; - offset->offsetZ = 1; - ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); - ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); - - message->body.trajectoryStart.ecefX = 1; - message->body.trajectoryStart.ecefY = 1; - message->body.trajectoryStart.ecefZ = 1; - message->body.trajectoryStart.timestamp.buf = my_bytes_1; - message->body.trajectoryStart.timestamp.size = strlen(my_str_1); +// MobilityECEFOffset_t* offset = (MobilityECEFOffset_t*)calloc(1, sizeof(MobilityECEFOffset_t) ); +// offset->offsetX = 1; +// offset->offsetY = 1; +// offset->offsetZ = 1; +// ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); +// ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); + +// message->body.trajectoryStart.ecefX = 1; +// message->body.trajectoryStart.ecefY = 1; +// message->body.trajectoryStart.ecefZ = 1; +// message->body.trajectoryStart.timestamp.buf = my_bytes_1; +// message->body.trajectoryStart.timestamp.size = strlen(my_str_1); - tmx::messages::tsm0EncodedMessage tsm0EncodeMessage; - tmx::messages::tsm0Message* _tsm0Message = new tmx::messages::tsm0Message(message); - tmx::messages::MessageFrameMessage frame_msg(_tsm0Message->get_j2735_data()); - tsm0EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); +// tmx::messages::tsm0EncodedMessage tsm0EncodeMessage; +// tmx::messages::tsm0Message* _tsm0Message = new tmx::messages::tsm0Message(message); +// tmx::messages::MessageFrameMessage frame_msg(_tsm0Message->get_j2735_data()); +// tsm0EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); - free(message); - delete my_bytes_1; - delete my_str_1; - free(offset); - free(frame_msg.get_j2735_data().get()); - ASSERT_EQ(240, tsm0EncodeMessage.get_msgId()); -} - - -TEST_F(J2735MessageTest, EncodeMobilityResponse) -{ - TestMessage01_t* message = (TestMessage01_t*) malloc( sizeof(TestMessage01_t) ); - - /** - * Populate MobilityHeader - */ +// free(message); +// delete my_bytes_1; +// delete my_str_1; +// free(offset); +// free(frame_msg.get_j2735_data().get()); +// ASSERT_EQ(240, tsm0EncodeMessage.get_msgId()); +// } + + +// TEST_F(J2735MessageTest, EncodeMobilityResponse) +// { +// TestMessage01_t* message = (TestMessage01_t*) malloc( sizeof(TestMessage01_t) ); + +// /** +// * Populate MobilityHeader +// */ - char* my_str = (char *) "sender_id"; - uint8_t* my_bytes = reinterpret_cast(my_str); - message->header.hostStaticId.buf = my_bytes; - message->header.hostStaticId.size = strlen(my_str); - message->header.targetStaticId.buf = my_bytes; - message->header.targetStaticId.size = strlen(my_str); - - my_str = (char *) "bsm_idXX"; - my_bytes = reinterpret_cast(my_str); - message->header.hostBSMId.buf = my_bytes; - message->header.hostBSMId.size = strlen(my_str); - - my_str = (char *) "00000000-0000-0000-0000-000000000000"; - my_bytes = reinterpret_cast(my_str); - message->header.planId.buf = my_bytes; - message->header.planId.size = strlen(my_str); - - unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); - std::string timestamp_str = std::to_string(timestamp_ll).c_str(); - char * my_str_1 = new char[strlen(timestamp_str.c_str())]; - uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; - strcpy(my_str_1, timestamp_str.c_str()); - for(int i = 0; i< strlen(my_str_1); i++) - { - my_bytes_1[i] = (uint8_t)my_str_1[i]; - } - message->header.timestamp.buf = my_bytes_1; - message->header.timestamp.size = strlen(my_str_1); - - /** - * Populate MobilityResponse Body - */ - message->body.isAccepted = 1; - message->body.urgency = 1; - - tmx::messages::tsm1EncodedMessage tsm1EncodeMessage; - tmx::messages::tsm1Message* _tsm1Message = new tmx::messages::tsm1Message(message); - tmx::messages::MessageFrameMessage frame_msg(_tsm1Message->get_j2735_data()); - tsm1EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); +// char* my_str = (char *) "sender_id"; +// uint8_t* my_bytes = reinterpret_cast(my_str); +// message->header.hostStaticId.buf = my_bytes; +// message->header.hostStaticId.size = strlen(my_str); +// message->header.targetStaticId.buf = my_bytes; +// message->header.targetStaticId.size = strlen(my_str); + +// my_str = (char *) "bsm_idXX"; +// my_bytes = reinterpret_cast(my_str); +// message->header.hostBSMId.buf = my_bytes; +// message->header.hostBSMId.size = strlen(my_str); + +// my_str = (char *) "00000000-0000-0000-0000-000000000000"; +// my_bytes = reinterpret_cast(my_str); +// message->header.planId.buf = my_bytes; +// message->header.planId.size = strlen(my_str); + +// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); +// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); +// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; +// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; +// strcpy(my_str_1, timestamp_str.c_str()); +// for(int i = 0; i< strlen(my_str_1); i++) +// { +// my_bytes_1[i] = (uint8_t)my_str_1[i]; +// } +// message->header.timestamp.buf = my_bytes_1; +// message->header.timestamp.size = strlen(my_str_1); + +// /** +// * Populate MobilityResponse Body +// */ +// message->body.isAccepted = 1; +// message->body.urgency = 1; + +// tmx::messages::tsm1EncodedMessage tsm1EncodeMessage; +// tmx::messages::tsm1Message* _tsm1Message = new tmx::messages::tsm1Message(message); +// tmx::messages::MessageFrameMessage frame_msg(_tsm1Message->get_j2735_data()); +// tsm1EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); - free(message); - delete my_bytes_1; - delete my_str_1; - free(frame_msg.get_j2735_data().get()); - ASSERT_EQ(241, tsm1EncodeMessage.get_msgId()); -} +// free(message); +// delete my_bytes_1; +// delete my_str_1; +// free(frame_msg.get_j2735_data().get()); +// ASSERT_EQ(241, tsm1EncodeMessage.get_msgId()); +// } TEST_F(J2735MessageTest, EncodeBasicSafetyMessage) @@ -542,26 +542,26 @@ 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)); - 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_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_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); - carma_bsm_data->routeDestinationPoints = carma_bsm_destination_points; - reg_bsm->regExtValue.choice.BasicSafetyMessage_addGrpCarma = *carma_bsm_data; - - asn_sequence_add(®ional->list.array, reg_bsm); - message->regional = regional; + // 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_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_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); + // carma_bsm_data->routeDestinationPoints = carma_bsm_destination_points; + // reg_bsm->regExtValue.choice.BasicSafetyMessage_addGrpCarma = *carma_bsm_data; + + // asn_sequence_add(®ional->list.array, reg_bsm); + // message->regional = regional; //Encode BSM tmx::messages::BsmEncodedMessage bsmEncodeMessage; @@ -578,15 +578,15 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) auto decoded_bsm_ptr = bsmEncodeMessage.decode_j2735_message().get_j2735_data(); ASSERT_EQ(LightbarInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->lightsUse); ASSERT_EQ(SirenInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->sirenUse); - auto decoded_regional = (BasicSafetyMessage::BasicSafetyMessage__regional *)calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); - auto decoded_reg_bsm = (Reg_BasicSafetyMessage *)calloc(1, sizeof(Reg_BasicSafetyMessage)); - auto decode_carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t *)calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); - decoded_regional = decoded_bsm_ptr->regional; - decoded_reg_bsm = decoded_regional->list.array[0]; - ASSERT_EQ(dummy_lat, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->lat); - ASSERT_EQ(dummy_long, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->Long); - ASSERT_EQ(dummy_lat + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->lat); - ASSERT_EQ(dummy_long + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->Long); + // auto decoded_regional = (BasicSafetyMessage::BasicSafetyMessage__regional *)calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); + // auto decoded_reg_bsm = (Reg_BasicSafetyMessage *)calloc(1, sizeof(Reg_BasicSafetyMessage)); + // auto decode_carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t *)calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); + // decoded_regional = decoded_bsm_ptr->regional; + // decoded_reg_bsm = decoded_regional->list.array[0]; + // ASSERT_EQ(dummy_lat, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->lat); + // ASSERT_EQ(dummy_long, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->Long); + // ASSERT_EQ(dummy_lat + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->lat); + // ASSERT_EQ(dummy_long + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->Long); } @@ -600,47 +600,44 @@ TEST_F(J2735MessageTest, EncodePersonalSafetyMessage){ container.load(ss); psmmessage.set_contents(container.get_storage().get_tree()); psmENC.encode_j2735_message(psmmessage); - std::cout << psmENC.get_payload_str()<(ss); - tsm4msg.set_contents(container.get_storage().get_tree()); - tsm4Enc.encode_j2735_message(tsm4msg); - std::cout << tsm4Enc.get_payload_str()< 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 "; - std::stringstream ss; - tsm5Message tsm5msg; - tsm5EncodedMessage tsm5Enc; - tmx::message_container_type container; - ss<(ss); - tsm5msg.set_contents(container.get_storage().get_tree()); - tsm5Enc.encode_j2735_message(tsm5msg); - std::cout << tsm5Enc.get_payload_str()< tag in TCM - tsm5str="D0E0C6E650394C06011002740591d261d2e99e477df0a82db260002740591d261d2e99e477df0a82db26277773121537228672809121111111epsg:3785WGS8427777312-77148351938954910903312100-1498-262-1497457-14979111-370342"; - ss<(ss); - tsm5msg.set_contents(container.get_storage().get_tree()); - tsm5Enc.encode_j2735_message(tsm5msg); - std::cout << tsm5Enc.get_payload_str()<(ss); +// tsm4msg.set_contents(container.get_storage().get_tree()); +// tsm4Enc.encode_j2735_message(tsm4msg); +// std::cout << tsm4Enc.get_payload_str()< 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 "; +// std::stringstream ss; +// tsm5Message tsm5msg; +// tsm5EncodedMessage tsm5Enc; +// tmx::message_container_type container; +// ss<(ss); +// tsm5msg.set_contents(container.get_storage().get_tree()); +// tsm5Enc.encode_j2735_message(tsm5msg); +// std::cout << tsm5Enc.get_payload_str()< tag in TCM +// tsm5str="D0E0C6E650394C06011002740591d261d2e99e477df0a82db260002740591d261d2e99e477df0a82db26277773121537228672809121111111epsg:3785WGS8427777312-77148351938954910903312100-1498-262-1497457-14979111-370342"; +// ss<(ss); +// tsm5msg.set_contents(container.get_storage().get_tree()); +// tsm5Enc.encode_j2735_message(tsm5msg); +// std::cout << tsm5Enc.get_payload_str()<role = 0; requestor->type = requestType; RequestorPositionVector_t *position = (RequestorPositionVector_t *)calloc(1, sizeof(RequestorPositionVector_t)); - DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + // DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + Common_Angle_t *heading_angle = (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); *heading_angle = 123; position->heading = heading_angle; Position3D_t *position_point = (Position3D_t *)calloc(1, sizeof(Position3D_t)); - DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + // DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + Common_Elevation_t *elev = (Common_Elevation_t *)calloc(1, sizeof(Common_Elevation_t)); *elev = 12; position_point->elevation = elev; position_point->lat = 3712333; @@ -749,60 +748,60 @@ TEST_F(J2735MessageTest, EncodeTravelerInformation){ ASSERT_EQ(expectedHex, timEnc.get_payload_str()); } -TEST_F(J2735MessageTest, EncodeSDSM) -{ - auto message = (SensorDataSharingMessage_t*)calloc(1, sizeof(SensorDataSharingMessage_t)); - message->msgCnt = 10; - uint8_t my_bytes_id[4] = {(uint8_t)1, (uint8_t)12, (uint8_t)12, (uint8_t)10}; - message->sourceID.buf = my_bytes_id; - message->sourceID.size = sizeof(my_bytes_id); - message->equipmentType = EquipmentType_unknown; +// TEST_F(J2735MessageTest, EncodeSDSM) +// { +// auto message = (SensorDataSharingMessage_t*)calloc(1, sizeof(SensorDataSharingMessage_t)); +// message->msgCnt = 10; +// uint8_t my_bytes_id[4] = {(uint8_t)1, (uint8_t)12, (uint8_t)12, (uint8_t)10}; +// message->sourceID.buf = my_bytes_id; +// message->sourceID.size = sizeof(my_bytes_id); +// message->equipmentType = EquipmentType_unknown; - auto sDSMTimeStamp = (DDateTime_t*) calloc(1, sizeof(DDateTime_t)); - auto year = (DYear_t*) calloc(1, sizeof(DYear_t)); - *year= 2023; - sDSMTimeStamp->year = year; - message->sDSMTimeStamp = *sDSMTimeStamp; - - message->refPos.lat = 38.121212; - message->refPos.Long = -77.121212; - - message->refPosXYConf.orientation = 10; - message->refPosXYConf.semiMajor = 12; - message->refPosXYConf.semiMinor = 52; - - auto objects = (DetectedObjectList_t*) calloc(1, sizeof(DetectedObjectList_t)); - auto objectData = (DetectedObjectData_t*) calloc(1, sizeof(DetectedObjectData_t)); - objectData->detObjCommon.objType = ObjectType_unknown; - objectData->detObjCommon.objTypeCfd = 1; - objectData->detObjCommon.measurementTime = 1; - objectData->detObjCommon.timeConfidence = 1; - objectData->detObjCommon.pos.offsetX = 1; - objectData->detObjCommon.pos.offsetY = 1; - objectData->detObjCommon.posConfidence.elevation = 1; - objectData->detObjCommon.posConfidence.pos = 1; - objectData->detObjCommon.speed = 1; - objectData->detObjCommon.speedConfidence = 1; - objectData->detObjCommon.heading = 1; - objectData->detObjCommon.headingConf = 1; - ASN_SEQUENCE_ADD(&objects->list.array, objectData); - message->objects = *objects; - xer_fprint(stdout, &asn_DEF_SensorDataSharingMessage, message); - - //Encode SDSM - tmx::messages::SdsmEncodedMessage SdsmEncodeMessage; - auto _sdsmMessage = new tmx::messages::SdsmMessage(message); - tmx::messages::MessageFrameMessage frame_msg(_sdsmMessage->get_j2735_data()); - SdsmEncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); - free(message); - free(frame_msg.get_j2735_data().get()); - ASSERT_EQ(41, SdsmEncodeMessage.get_msgId()); - std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c35a4e9266b49d1b20c34000a00000020000bba0a000200004400240009"; - ASSERT_EQ(expectedSDSMEncHex, SdsmEncodeMessage.get_payload_str()); - - //Decode SDSM - auto sdsm_ptr = SdsmEncodeMessage.decode_j2735_message().get_j2735_data(); - ASSERT_EQ(10, sdsm_ptr->msgCnt); -} +// auto sDSMTimeStamp = (DDateTime_t*) calloc(1, sizeof(DDateTime_t)); +// auto year = (DYear_t*) calloc(1, sizeof(DYear_t)); +// *year= 2023; +// sDSMTimeStamp->year = year; +// message->sDSMTimeStamp = *sDSMTimeStamp; + +// message->refPos.lat = 38.121212; +// message->refPos.Long = -77.121212; + +// message->refPosXYConf.orientation = 10; +// message->refPosXYConf.semiMajor = 12; +// message->refPosXYConf.semiMinor = 52; + +// auto objects = (DetectedObjectList_t*) calloc(1, sizeof(DetectedObjectList_t)); +// auto objectData = (DetectedObjectData_t*) calloc(1, sizeof(DetectedObjectData_t)); +// objectData->detObjCommon.objType = ObjectType_unknown; +// objectData->detObjCommon.objTypeCfd = 1; +// objectData->detObjCommon.measurementTime = 1; +// objectData->detObjCommon.timeConfidence = 1; +// objectData->detObjCommon.pos.offsetX = 1; +// objectData->detObjCommon.pos.offsetY = 1; +// objectData->detObjCommon.posConfidence.elevation = 1; +// objectData->detObjCommon.posConfidence.pos = 1; +// objectData->detObjCommon.speed = 1; +// objectData->detObjCommon.speedConfidence = 1; +// objectData->detObjCommon.heading = 1; +// objectData->detObjCommon.headingConf = 1; +// ASN_SEQUENCE_ADD(&objects->list.array, objectData); +// message->objects = *objects; +// xer_fprint(stdout, &asn_DEF_SensorDataSharingMessage, message); + +// //Encode SDSM +// tmx::messages::SdsmEncodedMessage SdsmEncodeMessage; +// auto _sdsmMessage = new tmx::messages::SdsmMessage(message); +// tmx::messages::MessageFrameMessage frame_msg(_sdsmMessage->get_j2735_data()); +// SdsmEncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); +// free(message); +// free(frame_msg.get_j2735_data().get()); +// ASSERT_EQ(41, SdsmEncodeMessage.get_msgId()); +// std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c35a4e9266b49d1b20c34000a00000020000bba0a000200004400240009"; +// ASSERT_EQ(expectedSDSMEncHex, SdsmEncodeMessage.get_payload_str()); + +// //Decode SDSM +// auto sdsm_ptr = SdsmEncodeMessage.decode_j2735_message().get_j2735_data(); +// ASSERT_EQ(10, sdsm_ptr->msgCnt); +// } } diff --git a/src/tmx/tmx.doxyfile b/src/tmx/tmx.doxyfile index 04fbd1519..4e72c5532 100644 --- a/src/tmx/tmx.doxyfile +++ b/src/tmx/tmx.doxyfile @@ -1935,7 +1935,7 @@ INCLUDE_FILE_PATTERNS = # recursively expanded use the := operator instead of the = operator. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -PREDEFINED = SAEJ2735_SPEC=63 +PREDEFINED = SAEJ2735_SPEC=2020 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp index 6e03bce7e..d43d82ecb 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp @@ -1,177 +1,177 @@ -#include "J3224ToSDSMJsonConverter.h" - -namespace CARMAStreetsPlugin -{ - - void J3224ToSDSMJsonConverter::convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &SDSMDataJson) const - { - // Define shared pointers for optional data - std::vector> shared_ptrs; - - // SDSM header data - SDSMDataJson["msg_cnt"] = sdsmMsgPtr->msgCnt; - - auto id_len = sdsmMsgPtr->sourceID.size; - unsigned long id_num = 0; - for(auto i = 0; i < id_len; i++) - { - id_num = (id_num << 8) | sdsmMsgPtr->sourceID.buf[i]; - } - std::stringstream id_fill_ss; - id_fill_ss << std::setfill('0') << std::setw(8) <equipmentType; - - Json::Value sDSMTimeStamp; - sDSMTimeStamp["year"] = *sdsmMsgPtr->sDSMTimeStamp.year; - sDSMTimeStamp["month"] = *sdsmMsgPtr->sDSMTimeStamp.month; - sDSMTimeStamp["day"] = *sdsmMsgPtr->sDSMTimeStamp.day; - sDSMTimeStamp["hour"] = *sdsmMsgPtr->sDSMTimeStamp.hour; - sDSMTimeStamp["minute"] = *sdsmMsgPtr->sDSMTimeStamp.minute; - sDSMTimeStamp["second"] = *sdsmMsgPtr->sDSMTimeStamp.second; - sDSMTimeStamp["offset"] = *sdsmMsgPtr->sDSMTimeStamp.offset; - SDSMDataJson["sdsm_time_stamp"] = sDSMTimeStamp; - - Json::Value refPos; - refPos["lat"] = sdsmMsgPtr->refPos.lat; - refPos["long"] = sdsmMsgPtr->refPos.Long; - refPos["elevation"] = *sdsmMsgPtr->refPos.elevation; - SDSMDataJson["ref_pos"] = refPos; - - Json::Value refPosXYConf; - refPosXYConf["semi_major"] = sdsmMsgPtr->refPosXYConf.semiMajor; - refPosXYConf["semi_minor"] = sdsmMsgPtr->refPosXYConf.semiMinor; - refPosXYConf["orientation"] = sdsmMsgPtr->refPosXYConf.orientation; - SDSMDataJson["ref_pos_xy_conf"] = refPosXYConf; - - SDSMDataJson["ref_pos_el_conf"] = *sdsmMsgPtr->refPosElConf; +// #include "J3224ToSDSMJsonConverter.h" + +// namespace CARMAStreetsPlugin +// { + +// void J3224ToSDSMJsonConverter::convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &SDSMDataJson) const +// { +// // Define shared pointers for optional data +// std::vector> shared_ptrs; + +// // SDSM header data +// SDSMDataJson["msg_cnt"] = sdsmMsgPtr->msgCnt; + +// auto id_len = sdsmMsgPtr->sourceID.size; +// unsigned long id_num = 0; +// for(auto i = 0; i < id_len; i++) +// { +// id_num = (id_num << 8) | sdsmMsgPtr->sourceID.buf[i]; +// } +// std::stringstream id_fill_ss; +// id_fill_ss << std::setfill('0') << std::setw(8) <equipmentType; + +// Json::Value sDSMTimeStamp; +// sDSMTimeStamp["year"] = *sdsmMsgPtr->sDSMTimeStamp.year; +// sDSMTimeStamp["month"] = *sdsmMsgPtr->sDSMTimeStamp.month; +// sDSMTimeStamp["day"] = *sdsmMsgPtr->sDSMTimeStamp.day; +// sDSMTimeStamp["hour"] = *sdsmMsgPtr->sDSMTimeStamp.hour; +// sDSMTimeStamp["minute"] = *sdsmMsgPtr->sDSMTimeStamp.minute; +// sDSMTimeStamp["second"] = *sdsmMsgPtr->sDSMTimeStamp.second; +// sDSMTimeStamp["offset"] = *sdsmMsgPtr->sDSMTimeStamp.offset; +// SDSMDataJson["sdsm_time_stamp"] = sDSMTimeStamp; + +// Json::Value refPos; +// refPos["lat"] = sdsmMsgPtr->refPos.lat; +// refPos["long"] = sdsmMsgPtr->refPos.Long; +// refPos["elevation"] = *sdsmMsgPtr->refPos.elevation; +// SDSMDataJson["ref_pos"] = refPos; + +// Json::Value refPosXYConf; +// refPosXYConf["semi_major"] = sdsmMsgPtr->refPosXYConf.semiMajor; +// refPosXYConf["semi_minor"] = sdsmMsgPtr->refPosXYConf.semiMinor; +// refPosXYConf["orientation"] = sdsmMsgPtr->refPosXYConf.orientation; +// SDSMDataJson["ref_pos_xy_conf"] = refPosXYConf; + +// SDSMDataJson["ref_pos_el_conf"] = *sdsmMsgPtr->refPosElConf; - // Create list to append detected objects to - const DetectedObjectList det_obj_list = sdsmMsgPtr->objects; +// // Create list to append detected objects to +// const DetectedObjectList det_obj_list = sdsmMsgPtr->objects; - if(det_obj_list.list.array != nullptr){ +// if(det_obj_list.list.array != nullptr){ - Json::Value objectsJson; +// Json::Value objectsJson; - for(size_t i = 0; i < det_obj_list.list.count; i++){ +// for(size_t i = 0; i < det_obj_list.list.count; i++){ - Json::Value detectedObjectJson; - auto det_object = det_obj_list.list.array[i]; +// Json::Value detectedObjectJson; +// auto det_object = det_obj_list.list.array[i]; - // Detected object common data - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type"] = det_object->detObjCommon.objType; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"] = det_object->detObjCommon.objTypeCfd; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["object_id"] = det_object->detObjCommon.objectID; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["measurement_time"] = det_object->detObjCommon.measurementTime; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["time_confidence"] = det_object->detObjCommon.timeConfidence; +// // Detected object common data +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type"] = det_object->detObjCommon.objType; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"] = det_object->detObjCommon.objTypeCfd; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["object_id"] = det_object->detObjCommon.objectID; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["measurement_time"] = det_object->detObjCommon.measurementTime; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["time_confidence"] = det_object->detObjCommon.timeConfidence; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"] = det_object->detObjCommon.pos.offsetX; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"] = det_object->detObjCommon.pos.offsetY; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"] = *det_object->detObjCommon.pos.offsetZ; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"] = det_object->detObjCommon.pos.offsetX; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"] = det_object->detObjCommon.pos.offsetY; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"] = *det_object->detObjCommon.pos.offsetZ; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"] = det_object->detObjCommon.posConfidence.pos; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"] = det_object->detObjCommon.posConfidence.elevation; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"] = det_object->detObjCommon.posConfidence.pos; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"] = det_object->detObjCommon.posConfidence.elevation; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed"] = det_object->detObjCommon.speed; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence"] = det_object->detObjCommon.speedConfidence; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed"] = det_object->detObjCommon.speed; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence"] = det_object->detObjCommon.speedConfidence; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading"] = det_object->detObjCommon.heading; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading_conf"] = det_object->detObjCommon.headingConf; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading"] = det_object->detObjCommon.heading; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading_conf"] = det_object->detObjCommon.headingConf; - // Optional common data - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_z"] = *det_object->detObjCommon.speedZ; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"] = *det_object->detObjCommon.speedConfidenceZ; +// // Optional common data +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_z"] = *det_object->detObjCommon.speedZ; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"] = *det_object->detObjCommon.speedConfidenceZ; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"] = det_object->detObjCommon.accel4way->Long; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"] = det_object->detObjCommon.accel4way->lat; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"] = det_object->detObjCommon.accel4way->vert; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"] = det_object->detObjCommon.accel4way->yaw; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"] = det_object->detObjCommon.accel4way->Long; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"] = det_object->detObjCommon.accel4way->lat; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"] = det_object->detObjCommon.accel4way->vert; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"] = det_object->detObjCommon.accel4way->yaw; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"] = *det_object->detObjCommon.accCfdX; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"] = *det_object->detObjCommon.accCfdY; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"] = *det_object->detObjCommon.accCfdZ; - detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"] = *det_object->detObjCommon.accCfdYaw; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"] = *det_object->detObjCommon.accCfdX; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"] = *det_object->detObjCommon.accCfdY; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"] = *det_object->detObjCommon.accCfdZ; +// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"] = *det_object->detObjCommon.accCfdYaw; - // Detected object optional data for vehicles, VRUs, obstacles - if(det_object->detObjOptData != nullptr){ - Json::Value optionalDataJson; +// // Detected object optional data for vehicles, VRUs, obstacles +// if(det_object->detObjOptData != nullptr){ +// Json::Value optionalDataJson; - switch(det_object->detObjOptData->present) - { - case DetectedObjectOptionalData_PR_NOTHING: - break; - - case DetectedObjectOptionalData_PR_detVeh: - - // TODO: find a better way to convert bit string data (JsonTo2735SpatConverter) - optionalDataJson["detected_vehicle_data"]["lights"] = std::to_string(*det_object->detObjOptData->choice.detVeh.lights->buf); - optionalDataJson["detected_vehicle_data"]["veh_attitude"]["pitch"] = det_object->detObjOptData->choice.detVeh.vehAttitude->pitch; - optionalDataJson["detected_vehicle_data"]["veh_attitude"]["roll"] = det_object->detObjOptData->choice.detVeh.vehAttitude->roll; - optionalDataJson["detected_vehicle_data"]["veh_attitude"]["yaw"] = det_object->detObjOptData->choice.detVeh.vehAttitude->yaw; - - optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->pitchConfidence; - optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->rollConfidence; - optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->yawConfidence; - - optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->pitchRate; - optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->rollRate; - - optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->pitchRateConfidence; - optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->rollRateConfidence; - - optionalDataJson["detected_vehicle_data"]["size"]["width"] = det_object->detObjOptData->choice.detVeh.size->width; - optionalDataJson["detected_vehicle_data"]["size"]["length"] = det_object->detObjOptData->choice.detVeh.size->length; - optionalDataJson["detected_vehicle_data"]["height"] = *det_object->detObjOptData->choice.detVeh.height; - - optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleWidthConfidence; - optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleLengthConfidence; - optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"] = *det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleHeightConfidence; - - optionalDataJson["detected_vehicle_data"]["vehicle_class"] = *det_object->detObjOptData->choice.detVeh.vehicleClass; - optionalDataJson["detected_vehicle_data"]["vehicle_class_conf"] = *det_object->detObjOptData->choice.detVeh.classConf; - break; - - case DetectedObjectOptionalData_PR_detVRU: - optionalDataJson["detected_vru_data"]["basic_type"] = *det_object->detObjOptData->choice.detVRU.basicType; - - switch(det_object->detObjOptData->choice.detVRU.propulsion->present) - { - case PropelledInformation_PR_NOTHING: - break; - case PropelledInformation_PR_human: - optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.human; - break; - case PropelledInformation_PR_animal: - optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.animal; - break; - case PropelledInformation_PR_motor: - optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.motor; - break; - } - - optionalDataJson["detected_vru_data"]["attachment"] = *det_object->detObjOptData->choice.detVRU.attachment; - optionalDataJson["detected_vru_data"]["radius"] = *det_object->detObjOptData->choice.detVRU.radius; - break; - - case DetectedObjectOptionalData_PR_detObst: - optionalDataJson["detected_obstacle_data"]["obst_size"]["width"] = det_object->detObjOptData->choice.detObst.obstSize.width; - optionalDataJson["detected_obstacle_data"]["obst_size"]["length"] = det_object->detObjOptData->choice.detObst.obstSize.length; - optionalDataJson["detected_obstacle_data"]["obst_size"]["height"] = *det_object->detObjOptData->choice.detObst.obstSize.height; // optional - - optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.widthConfidence; - optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.lengthConfidence; - optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"] = *det_object->detObjOptData->choice.detObst.obstSizeConfidence.heightConfidence; - break; - } - detectedObjectJson["detected_object_data"]["detected_object_optional_data"] = optionalDataJson; - } - - // Add the generated object jsons to the detected object list - SDSMDataJson["objects"].append(detectedObjectJson); - - } - } - } -} \ No newline at end of file +// switch(det_object->detObjOptData->present) +// { +// case DetectedObjectOptionalData_PR_NOTHING: +// break; + +// case DetectedObjectOptionalData_PR_detVeh: + +// // TODO: find a better way to convert bit string data (JsonTo2735SpatConverter) +// optionalDataJson["detected_vehicle_data"]["lights"] = std::to_string(*det_object->detObjOptData->choice.detVeh.lights->buf); +// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["pitch"] = det_object->detObjOptData->choice.detVeh.vehAttitude->pitch; +// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["roll"] = det_object->detObjOptData->choice.detVeh.vehAttitude->roll; +// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["yaw"] = det_object->detObjOptData->choice.detVeh.vehAttitude->yaw; + +// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->pitchConfidence; +// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->rollConfidence; +// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->yawConfidence; + +// optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->pitchRate; +// optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->rollRate; + +// optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->pitchRateConfidence; +// optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->rollRateConfidence; + +// optionalDataJson["detected_vehicle_data"]["size"]["width"] = det_object->detObjOptData->choice.detVeh.size->width; +// optionalDataJson["detected_vehicle_data"]["size"]["length"] = det_object->detObjOptData->choice.detVeh.size->length; +// optionalDataJson["detected_vehicle_data"]["height"] = *det_object->detObjOptData->choice.detVeh.height; + +// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleWidthConfidence; +// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleLengthConfidence; +// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"] = *det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleHeightConfidence; + +// optionalDataJson["detected_vehicle_data"]["vehicle_class"] = *det_object->detObjOptData->choice.detVeh.vehicleClass; +// optionalDataJson["detected_vehicle_data"]["vehicle_class_conf"] = *det_object->detObjOptData->choice.detVeh.classConf; +// break; + +// case DetectedObjectOptionalData_PR_detVRU: +// optionalDataJson["detected_vru_data"]["basic_type"] = *det_object->detObjOptData->choice.detVRU.basicType; + +// switch(det_object->detObjOptData->choice.detVRU.propulsion->present) +// { +// case PropelledInformation_PR_NOTHING: +// break; +// case PropelledInformation_PR_human: +// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.human; +// break; +// case PropelledInformation_PR_animal: +// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.animal; +// break; +// case PropelledInformation_PR_motor: +// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.motor; +// break; +// } + +// optionalDataJson["detected_vru_data"]["attachment"] = *det_object->detObjOptData->choice.detVRU.attachment; +// optionalDataJson["detected_vru_data"]["radius"] = *det_object->detObjOptData->choice.detVRU.radius; +// break; + +// case DetectedObjectOptionalData_PR_detObst: +// optionalDataJson["detected_obstacle_data"]["obst_size"]["width"] = det_object->detObjOptData->choice.detObst.obstSize.width; +// optionalDataJson["detected_obstacle_data"]["obst_size"]["length"] = det_object->detObjOptData->choice.detObst.obstSize.length; +// optionalDataJson["detected_obstacle_data"]["obst_size"]["height"] = *det_object->detObjOptData->choice.detObst.obstSize.height; // optional + +// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.widthConfidence; +// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.lengthConfidence; +// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"] = *det_object->detObjOptData->choice.detObst.obstSizeConfidence.heightConfidence; +// break; +// } +// detectedObjectJson["detected_object_data"]["detected_object_optional_data"] = optionalDataJson; +// } + +// // Add the generated object jsons to the detected object list +// SDSMDataJson["objects"].append(detectedObjectJson); + +// } +// } +// } +// } \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h index 273d7efdd..c17546525 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h +++ b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h @@ -1,43 +1,43 @@ -#include "jsoncpp/json/json.h" -#include +// #include "jsoncpp/json/json.h" +// #include -namespace CARMAStreetsPlugin -{ +// namespace CARMAStreetsPlugin +// { - // Template to use when created shared pointer objects for optional data - template - T *create_store_shared(std::vector> &shared_pointers) - { - auto obj_shared = std::make_shared(); - shared_pointers.push_back(obj_shared); - return obj_shared.get(); - } +// // Template to use when created shared pointer objects for optional data +// template +// T *create_store_shared(std::vector> &shared_pointers) +// { +// auto obj_shared = std::make_shared(); +// shared_pointers.push_back(obj_shared); +// return obj_shared.get(); +// } - // Template for shared pointers with array elements - template - T *create_store_shared_array(std::vector> &shared_pointers, int size) - { - std::shared_ptr array_shared(new T[size]{0}); - shared_pointers.push_back(array_shared); - return array_shared.get(); - } +// // Template for shared pointers with array elements +// template +// T *create_store_shared_array(std::vector> &shared_pointers, int size) +// { +// std::shared_ptr array_shared(new T[size]{0}); +// shared_pointers.push_back(array_shared); +// return array_shared.get(); +// } - class J3224ToSDSMJsonConverter - { - public: +// class J3224ToSDSMJsonConverter +// { +// public: - J3224ToSDSMJsonConverter() = default; - ~J3224ToSDSMJsonConverter() = default; +// J3224ToSDSMJsonConverter() = default; +// ~J3224ToSDSMJsonConverter() = default; - /** - * @brief Convert the J3224 SensorDataSharingMessage into JSON format. - * @param sdsmMsgPtr The input is a constant SensorDataSharingMessage pointer. This prevent any modification to the original SDSM - * @param sdsmJson Pass by reference to allow the method to populate this object with the SensorDataSharingMessage data. - */ - void convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &sdsmJson) const; +// /** +// * @brief Convert the J3224 SensorDataSharingMessage into JSON format. +// * @param sdsmMsgPtr The input is a constant SensorDataSharingMessage pointer. This prevent any modification to the original SDSM +// * @param sdsmJson Pass by reference to allow the method to populate this object with the SensorDataSharingMessage data. +// */ +// void convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &sdsmJson) const; - }; +// }; -} \ No newline at end of file +// } \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp index 999be321d..134eefaac 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp @@ -152,18 +152,18 @@ namespace CARMAStreetsPlugin void JsonToJ2735SpatConverter::convertJson2TimeChangeDetail(const Json::Value &time_change_detail_json, TimeChangeDetails_t *timing) const { - timing->startTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->startTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->startTime = time_change_detail_json["start_time"].asInt(); timing->minEndTime = time_change_detail_json["min_end_time"].asInt(); - timing->maxEndTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->maxEndTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->maxEndTime = time_change_detail_json["max_end_time"].asInt(); - timing->likelyTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->likelyTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->likelyTime = time_change_detail_json["likely_time"].asInt(); - timing->nextTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->nextTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->nextTime = time_change_detail_json["next_time"].asInt(); timing->confidence = (TimeIntervalConfidence_t *)calloc(1, sizeof(TimeIntervalConfidence_t)); diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp index 55e4cd8bf..81c498563 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp @@ -1,368 +1,368 @@ -#include "JsonToJ3224SDSMConverter.h" - -namespace CARMAStreetsPlugin -{ - // TODO: Move these template functions to a more central location such as in a utility file - // Template to use when created shared pointer objects for optional data - template - T *create_store_shared(std::vector> &shared_pointers) - { - auto obj_shared = std::make_shared(); - shared_pointers.push_back(obj_shared); - return obj_shared.get(); - } - - // Template for shared pointers with array elements - template - T *create_store_shared_array(std::vector> &shared_pointers, int size) - { - std::shared_ptr array_shared(new T[size]{0}); - shared_pointers.push_back(array_shared); - return array_shared.get(); - } - - // TODO: Consolidate parseJsonString into a more central location since it is being used verbatim in other converters - bool JsonToJ3224SDSMConverter::parseJsonString(const std::string &consumedMsg, Json::Value &sdsmJsonOut) const - { - const auto jsonLen = static_cast(consumedMsg.length()); - Json::CharReaderBuilder builder; - JSONCPP_STRING err; - const std::unique_ptr reader(builder.newCharReader()); - bool parseResult = reader->parse(consumedMsg.c_str(), consumedMsg.c_str() + jsonLen, &sdsmJsonOut, &err); - if (!parseResult) - { - PLOG(logERROR) << "Parse error: " << err << std::endl; - } - return parseResult; - } - - - void JsonToJ3224SDSMConverter::convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const - { - std::vector> shared_ptrs; - - sdsm->msgCnt = sdsm_json["msg_cnt"].asInt64(); - - // TODO: confirm input sourceID from JSON to C struct constructs octet appropriately - // sourceID - TemporaryID_t tempID; - - std::string id_data = sdsm_json["source_id"].asString(); - std::vector id_vector(id_data.begin(), id_data.end()); - uint8_t *id_ptr = &id_vector[0]; - tempID.buf = id_ptr; - tempID.size = sizeof(id_ptr); - sdsm->sourceID = tempID; - - sdsm->equipmentType = sdsm_json["equipment_type"].asInt64(); +// #include "JsonToJ3224SDSMConverter.h" + +// namespace CARMAStreetsPlugin +// { +// // TODO: Move these template functions to a more central location such as in a utility file +// // Template to use when created shared pointer objects for optional data +// template +// T *create_store_shared(std::vector> &shared_pointers) +// { +// auto obj_shared = std::make_shared(); +// shared_pointers.push_back(obj_shared); +// return obj_shared.get(); +// } + +// // Template for shared pointers with array elements +// template +// T *create_store_shared_array(std::vector> &shared_pointers, int size) +// { +// std::shared_ptr array_shared(new T[size]{0}); +// shared_pointers.push_back(array_shared); +// return array_shared.get(); +// } + +// // TODO: Consolidate parseJsonString into a more central location since it is being used verbatim in other converters +// bool JsonToJ3224SDSMConverter::parseJsonString(const std::string &consumedMsg, Json::Value &sdsmJsonOut) const +// { +// const auto jsonLen = static_cast(consumedMsg.length()); +// Json::CharReaderBuilder builder; +// JSONCPP_STRING err; +// const std::unique_ptr reader(builder.newCharReader()); +// bool parseResult = reader->parse(consumedMsg.c_str(), consumedMsg.c_str() + jsonLen, &sdsmJsonOut, &err); +// if (!parseResult) +// { +// PLOG(logERROR) << "Parse error: " << err << std::endl; +// } +// return parseResult; +// } + + +// void JsonToJ3224SDSMConverter::convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const +// { +// std::vector> shared_ptrs; + +// sdsm->msgCnt = sdsm_json["msg_cnt"].asInt64(); + +// // TODO: confirm input sourceID from JSON to C struct constructs octet appropriately +// // sourceID +// TemporaryID_t tempID; + +// std::string id_data = sdsm_json["source_id"].asString(); +// std::vector id_vector(id_data.begin(), id_data.end()); +// uint8_t *id_ptr = &id_vector[0]; +// tempID.buf = id_ptr; +// tempID.size = sizeof(id_ptr); +// sdsm->sourceID = tempID; + +// sdsm->equipmentType = sdsm_json["equipment_type"].asInt64(); - // sDSMTimeStamp - auto sdsm_time_stamp_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// // sDSMTimeStamp +// auto sdsm_time_stamp_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - auto year_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *year_ptr = sdsm_json["sdsm_time_stamp"]["year"].asInt64(); - sdsm_time_stamp_ptr->year = year_ptr; +// auto year_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *year_ptr = sdsm_json["sdsm_time_stamp"]["year"].asInt64(); +// sdsm_time_stamp_ptr->year = year_ptr; - auto month_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *month_ptr = sdsm_json["sdsm_time_stamp"]["month"].asInt64(); - sdsm_time_stamp_ptr->month = month_ptr; +// auto month_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *month_ptr = sdsm_json["sdsm_time_stamp"]["month"].asInt64(); +// sdsm_time_stamp_ptr->month = month_ptr; - auto day_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *day_ptr = sdsm_json["sdsm_time_stamp"]["day"].asInt64(); - sdsm_time_stamp_ptr->day = day_ptr; +// auto day_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *day_ptr = sdsm_json["sdsm_time_stamp"]["day"].asInt64(); +// sdsm_time_stamp_ptr->day = day_ptr; - auto hour_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *hour_ptr = sdsm_json["sdsm_time_stamp"]["hour"].asInt64(); - sdsm_time_stamp_ptr->hour = hour_ptr; +// auto hour_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *hour_ptr = sdsm_json["sdsm_time_stamp"]["hour"].asInt64(); +// sdsm_time_stamp_ptr->hour = hour_ptr; - auto minute_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *minute_ptr = sdsm_json["sdsm_time_stamp"]["minute"].asInt64(); - sdsm_time_stamp_ptr->minute = minute_ptr; +// auto minute_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *minute_ptr = sdsm_json["sdsm_time_stamp"]["minute"].asInt64(); +// sdsm_time_stamp_ptr->minute = minute_ptr; - auto second_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *second_ptr = sdsm_json["sdsm_time_stamp"]["second"].asInt64(); - sdsm_time_stamp_ptr->second = second_ptr; +// auto second_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *second_ptr = sdsm_json["sdsm_time_stamp"]["second"].asInt64(); +// sdsm_time_stamp_ptr->second = second_ptr; - auto offset_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *offset_ptr = sdsm_json["sdsm_time_stamp"]["offset"].asInt64(); - sdsm_time_stamp_ptr->offset = offset_ptr; +// auto offset_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *offset_ptr = sdsm_json["sdsm_time_stamp"]["offset"].asInt64(); +// sdsm_time_stamp_ptr->offset = offset_ptr; - sdsm->sDSMTimeStamp = *sdsm_time_stamp_ptr; +// sdsm->sDSMTimeStamp = *sdsm_time_stamp_ptr; - // refPos - auto ref_pos_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - ref_pos_ptr->lat = sdsm_json["ref_pos"]["lat"].asInt64(); - ref_pos_ptr->Long = sdsm_json["ref_pos"]["long"].asInt64(); - auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *elevation_ptr = sdsm_json["ref_pos"]["elevation"].asInt64(); - ref_pos_ptr->elevation = elevation_ptr; +// // refPos +// auto ref_pos_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// ref_pos_ptr->lat = sdsm_json["ref_pos"]["lat"].asInt64(); +// ref_pos_ptr->Long = sdsm_json["ref_pos"]["long"].asInt64(); +// auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *elevation_ptr = sdsm_json["ref_pos"]["elevation"].asInt64(); +// ref_pos_ptr->elevation = elevation_ptr; - sdsm->refPos = *ref_pos_ptr; +// sdsm->refPos = *ref_pos_ptr; - // refPosXYConf - PositionalAccuracy_t ref_pos_xy_conf; - ref_pos_xy_conf.semiMajor = sdsm_json["ref_pos_xy_conf"]["semi_major"].asInt64(); - ref_pos_xy_conf.semiMinor = sdsm_json["ref_pos_xy_conf"]["semi_minor"].asInt64(); - ref_pos_xy_conf.orientation = sdsm_json["ref_pos_xy_conf"]["orientation"].asInt64(); +// // refPosXYConf +// PositionalAccuracy_t ref_pos_xy_conf; +// ref_pos_xy_conf.semiMajor = sdsm_json["ref_pos_xy_conf"]["semi_major"].asInt64(); +// ref_pos_xy_conf.semiMinor = sdsm_json["ref_pos_xy_conf"]["semi_minor"].asInt64(); +// ref_pos_xy_conf.orientation = sdsm_json["ref_pos_xy_conf"]["orientation"].asInt64(); - sdsm->refPosXYConf = ref_pos_xy_conf; +// sdsm->refPosXYConf = ref_pos_xy_conf; - // refPosElConf - auto ref_pos_el_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *ref_pos_el_conf_ptr = sdsm_json["ref_pos_el_conf"].asInt64(); - sdsm->refPosElConf = ref_pos_el_conf_ptr; +// // refPosElConf +// auto ref_pos_el_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *ref_pos_el_conf_ptr = sdsm_json["ref_pos_el_conf"].asInt64(); +// sdsm->refPosElConf = ref_pos_el_conf_ptr; - // Creat initial pointers for detected object list and contained objects - auto object_list = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - auto object_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// // Creat initial pointers for detected object list and contained objects +// auto object_list = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// auto object_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - if(sdsm_json.isMember("objects") && sdsm_json["objects"].isArray()){ - Json::Value objectsJsonArr = sdsm_json["objects"]; - for(auto itr = objectsJsonArr.begin(); itr != objectsJsonArr.end(); itr++){ +// if(sdsm_json.isMember("objects") && sdsm_json["objects"].isArray()){ +// Json::Value objectsJsonArr = sdsm_json["objects"]; +// for(auto itr = objectsJsonArr.begin(); itr != objectsJsonArr.end(); itr++){ - auto common_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// auto common_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - // Propegate common data - common_data->objType = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type"].asInt64();; - common_data->objTypeCfd = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"].asInt64(); - common_data->objectID = (*itr)["detected_object_data"]["detected_object_common_data"]["object_id"].asInt64(); - common_data->measurementTime = (*itr)["detected_object_data"]["detected_object_common_data"]["measurement_time"].asInt64(); - common_data->timeConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["time_confidence"].asInt64(); +// // Propegate common data +// common_data->objType = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type"].asInt64();; +// common_data->objTypeCfd = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"].asInt64(); +// common_data->objectID = (*itr)["detected_object_data"]["detected_object_common_data"]["object_id"].asInt64(); +// common_data->measurementTime = (*itr)["detected_object_data"]["detected_object_common_data"]["measurement_time"].asInt64(); +// common_data->timeConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["time_confidence"].asInt64(); - // pos (posOffsetXYZ) - common_data->pos.offsetX = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"].asInt64(); - common_data->pos.offsetY = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"].asInt64(); - auto offset_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *offset_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"].asInt64(); - common_data->pos.offsetZ = offset_z_ptr; - - // posConfidence - common_data->posConfidence.pos = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"].asInt64(); - common_data->posConfidence.elevation = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"].asInt64(); - - // speed/speedConfidence - common_data->speed = (*itr)["detected_object_data"]["detected_object_common_data"]["speed"].asInt64(); - common_data->speedConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence"].asInt64(); - - // speedZ/speedConfidenceZ - auto speed_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *speed_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_z"].asInt64(); - common_data->speedZ = speed_z_ptr; - auto speed_conf_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *speed_conf_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"].asInt64(); - common_data->speedConfidenceZ = speed_conf_z_ptr; - - // heading/headingConf - common_data->heading = (*itr)["detected_object_data"]["detected_object_common_data"]["heading"].asInt64(); - common_data->headingConf = (*itr)["detected_object_data"]["detected_object_common_data"]["heading_conf"].asInt64(); - - // accel4way - auto accel_4_way_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - accel_4_way_ptr->Long = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"].asInt64(); - accel_4_way_ptr->lat = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"].asInt64(); - accel_4_way_ptr->vert = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"].asInt64(); - accel_4_way_ptr->yaw = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"].asInt64(); - common_data->accel4way = accel_4_way_ptr; - - // accCfd(X/Y/Z/Yaw) - auto acc_cfd_x_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *acc_cfd_x_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"].asInt64(); - common_data->accCfdX = acc_cfd_x_ptr; - - auto acc_cfd_y_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *acc_cfd_y_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"].asInt64(); - common_data->accCfdY = acc_cfd_y_ptr; - - auto acc_cfd_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *acc_cfd_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"].asInt64(); - common_data->accCfdZ = acc_cfd_z_ptr; - - auto acc_cfd_yaw_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *acc_cfd_yaw_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"].asInt64(); - common_data->accCfdYaw = acc_cfd_yaw_ptr; - - - // Add common data to object data - object_data->detObjCommon = *common_data; - - - - // Propegate optional data fields - - // detectedObjectOptionalData - auto optional_data_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - - // determine which optional data choice is being used if any - // detVeh - if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vehicle_data")){ - - // set presence val to veh - optional_data_ptr->present = DetectedObjectOptionalData_PR_detVeh; - - // TODO: find a better way to convert/test lights val without calloc - // // lights - // auto lights_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - // auto lights = static_cast((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["lights"].asInt()); - // lights_ptr->buf = (uint8_t *)calloc(2, sizeof(uint8_t)); // TODO: find calloc alternative if possible, causes a memory leak - // lights_ptr->size = 2 * sizeof(uint8_t); - // lights_ptr->bits_unused = 0; - // lights_ptr->buf[1] = static_cast(lights); - // lights_ptr->buf[0] = (lights >> 8); - - // optional_data_ptr->choice.detVeh.lights = lights_ptr; - - - // vehAttitude - auto attitude_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - attitude_ptr->pitch = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["pitch"].asInt64(); - attitude_ptr->roll = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["roll"].asInt64(); - attitude_ptr->yaw = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["yaw"].asInt64(); - optional_data_ptr->choice.detVeh.vehAttitude = attitude_ptr; - - // vehAttitudeConfidence - auto attitude_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - attitude_conf_ptr->pitchConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"].asInt64(); - attitude_conf_ptr->rollConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"].asInt64(); - attitude_conf_ptr->yawConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"].asInt64(); - optional_data_ptr->choice.detVeh.vehAttitudeConfidence = attitude_conf_ptr; - - // vehAngVel - auto ang_vel_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - ang_vel_ptr->pitchRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"].asInt64(); - ang_vel_ptr->rollRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"].asInt64(); - optional_data_ptr->choice.detVeh.vehAngVel = ang_vel_ptr; - - // vehAngVelConfidence - auto ang_vel_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - auto pitch_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *pitch_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"].asInt64(); - ang_vel_conf_ptr->pitchRateConfidence = pitch_conf_ptr; - auto roll_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *roll_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"].asInt64(); - ang_vel_conf_ptr->rollRateConfidence = roll_conf_ptr; - optional_data_ptr->choice.detVeh.vehAngVelConfidence = ang_vel_conf_ptr; - - // size (VehicleSize) - auto size_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - size_ptr->width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["width"].asInt64(); - size_ptr->length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["length"].asInt64(); - optional_data_ptr->choice.detVeh.size = size_ptr; - - // height - auto height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["height"].asInt64(); - optional_data_ptr->choice.detVeh.height = height_ptr; - - // vehcleSizeConfidence - auto size_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - size_conf_ptr->vehicleWidthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"].asInt64(); - size_conf_ptr->vehicleLengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"].asInt64(); - auto height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"].asInt64(); - size_conf_ptr->vehicleHeightConfidence = height_conf_ptr; - optional_data_ptr->choice.detVeh.vehicleSizeConfidence = size_conf_ptr; - - // vehicleClass - auto veh_class_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *veh_class_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class"].asInt64(); - optional_data_ptr->choice.detVeh.vehicleClass = veh_class_ptr; - - // vehClassConf - auto veh_class_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *veh_class_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class_conf"].asInt64(); - optional_data_ptr->choice.detVeh.classConf = veh_class_conf_ptr; - } - - // detVRU - else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vru_data")){ - - optional_data_ptr->present = DetectedObjectOptionalData_PR_detVRU; - - // basicType - auto basic_type_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *basic_type_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["basic_type"].asInt64(); - optional_data_ptr->choice.detVRU.basicType = basic_type_ptr; - - // propulsion choice struct (check to see if propulsion exists) - auto propulsion_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - - if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("human")){ - propulsion_ptr->present = PropelledInformation_PR_human; - propulsion_ptr->choice.human = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["human"].asInt64(); - } - else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("animal")){ - propulsion_ptr->present = PropelledInformation_PR_animal; - propulsion_ptr->choice.animal = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["animal"].asInt64(); - } - else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("motor")){ - propulsion_ptr->present = PropelledInformation_PR_motor; - propulsion_ptr->choice.motor = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["motor"].asInt64(); - } - else{ - propulsion_ptr->present = PropelledInformation_PR_NOTHING; - std::cout << "Value was nothing" << std::endl; - } - optional_data_ptr->choice.detVRU.propulsion = propulsion_ptr; - - // attachement - auto attachment_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *attachment_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["attachment"].asInt64(); - optional_data_ptr->choice.detVRU.attachment = attachment_ptr; - - // radius - auto radius_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *radius_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["radius"].asInt64(); - optional_data_ptr->choice.detVRU.radius = radius_ptr; - } - - - // detObst - else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_obstacle_data")){ - optional_data_ptr->present = DetectedObjectOptionalData_PR_detObst; - - ObstacleSize obst_size; - obst_size.width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["width"].asInt64(); - obst_size.length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["length"].asInt64(); - auto obst_height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *obst_height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["height"].asInt64(); - obst_size.height = obst_height_ptr; - optional_data_ptr->choice.detObst.obstSize = obst_size; - - ObstacleSizeConfidence obst_size_conf; - obst_size_conf.widthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"].asInt64(); - obst_size_conf.lengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"].asInt64(); - auto obst_height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - *obst_height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"].asInt64(); - obst_size_conf.heightConfidence = obst_height_conf_ptr; - optional_data_ptr->choice.detObst.obstSizeConfidence = obst_size_conf; - } - - - // Add optional data to object data - object_data->detObjOptData = optional_data_ptr; - - - } - } - - // Append the object to the detected objects list - asn_sequence_add(&object_list->list.array, object_data); - - // Set the data to the ASN.1 C struct - sdsm->objects = *object_list; - - - } - - - void JsonToJ3224SDSMConverter::encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const - { - tmx::messages::MessageFrameMessage frame(sdsmPtr); - encodedSDSM.set_data(tmx::messages::TmxJ2735EncodedMessage::encode_j2735_message>(frame)); - free(frame.get_j2735_data().get()); - } +// // pos (posOffsetXYZ) +// common_data->pos.offsetX = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"].asInt64(); +// common_data->pos.offsetY = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"].asInt64(); +// auto offset_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *offset_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"].asInt64(); +// common_data->pos.offsetZ = offset_z_ptr; + +// // posConfidence +// common_data->posConfidence.pos = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"].asInt64(); +// common_data->posConfidence.elevation = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"].asInt64(); + +// // speed/speedConfidence +// common_data->speed = (*itr)["detected_object_data"]["detected_object_common_data"]["speed"].asInt64(); +// common_data->speedConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence"].asInt64(); + +// // speedZ/speedConfidenceZ +// auto speed_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *speed_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_z"].asInt64(); +// common_data->speedZ = speed_z_ptr; +// auto speed_conf_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *speed_conf_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"].asInt64(); +// common_data->speedConfidenceZ = speed_conf_z_ptr; + +// // heading/headingConf +// common_data->heading = (*itr)["detected_object_data"]["detected_object_common_data"]["heading"].asInt64(); +// common_data->headingConf = (*itr)["detected_object_data"]["detected_object_common_data"]["heading_conf"].asInt64(); + +// // accel4way +// auto accel_4_way_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// accel_4_way_ptr->Long = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"].asInt64(); +// accel_4_way_ptr->lat = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"].asInt64(); +// accel_4_way_ptr->vert = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"].asInt64(); +// accel_4_way_ptr->yaw = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"].asInt64(); +// common_data->accel4way = accel_4_way_ptr; + +// // accCfd(X/Y/Z/Yaw) +// auto acc_cfd_x_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *acc_cfd_x_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"].asInt64(); +// common_data->accCfdX = acc_cfd_x_ptr; + +// auto acc_cfd_y_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *acc_cfd_y_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"].asInt64(); +// common_data->accCfdY = acc_cfd_y_ptr; + +// auto acc_cfd_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *acc_cfd_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"].asInt64(); +// common_data->accCfdZ = acc_cfd_z_ptr; + +// auto acc_cfd_yaw_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *acc_cfd_yaw_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"].asInt64(); +// common_data->accCfdYaw = acc_cfd_yaw_ptr; + + +// // Add common data to object data +// object_data->detObjCommon = *common_data; + + + +// // Propegate optional data fields + +// // detectedObjectOptionalData +// auto optional_data_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + +// // determine which optional data choice is being used if any +// // detVeh +// if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vehicle_data")){ + +// // set presence val to veh +// optional_data_ptr->present = DetectedObjectOptionalData_PR_detVeh; + +// // TODO: find a better way to convert/test lights val without calloc +// // // lights +// // auto lights_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// // auto lights = static_cast((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["lights"].asInt()); +// // lights_ptr->buf = (uint8_t *)calloc(2, sizeof(uint8_t)); // TODO: find calloc alternative if possible, causes a memory leak +// // lights_ptr->size = 2 * sizeof(uint8_t); +// // lights_ptr->bits_unused = 0; +// // lights_ptr->buf[1] = static_cast(lights); +// // lights_ptr->buf[0] = (lights >> 8); + +// // optional_data_ptr->choice.detVeh.lights = lights_ptr; + + +// // vehAttitude +// auto attitude_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// attitude_ptr->pitch = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["pitch"].asInt64(); +// attitude_ptr->roll = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["roll"].asInt64(); +// attitude_ptr->yaw = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["yaw"].asInt64(); +// optional_data_ptr->choice.detVeh.vehAttitude = attitude_ptr; + +// // vehAttitudeConfidence +// auto attitude_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// attitude_conf_ptr->pitchConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"].asInt64(); +// attitude_conf_ptr->rollConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"].asInt64(); +// attitude_conf_ptr->yawConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"].asInt64(); +// optional_data_ptr->choice.detVeh.vehAttitudeConfidence = attitude_conf_ptr; + +// // vehAngVel +// auto ang_vel_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// ang_vel_ptr->pitchRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"].asInt64(); +// ang_vel_ptr->rollRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"].asInt64(); +// optional_data_ptr->choice.detVeh.vehAngVel = ang_vel_ptr; + +// // vehAngVelConfidence +// auto ang_vel_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// auto pitch_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *pitch_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"].asInt64(); +// ang_vel_conf_ptr->pitchRateConfidence = pitch_conf_ptr; +// auto roll_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *roll_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"].asInt64(); +// ang_vel_conf_ptr->rollRateConfidence = roll_conf_ptr; +// optional_data_ptr->choice.detVeh.vehAngVelConfidence = ang_vel_conf_ptr; + +// // size (VehicleSize) +// auto size_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// size_ptr->width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["width"].asInt64(); +// size_ptr->length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["length"].asInt64(); +// optional_data_ptr->choice.detVeh.size = size_ptr; + +// // height +// auto height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["height"].asInt64(); +// optional_data_ptr->choice.detVeh.height = height_ptr; + +// // vehcleSizeConfidence +// auto size_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// size_conf_ptr->vehicleWidthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"].asInt64(); +// size_conf_ptr->vehicleLengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"].asInt64(); +// auto height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"].asInt64(); +// size_conf_ptr->vehicleHeightConfidence = height_conf_ptr; +// optional_data_ptr->choice.detVeh.vehicleSizeConfidence = size_conf_ptr; + +// // vehicleClass +// auto veh_class_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *veh_class_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class"].asInt64(); +// optional_data_ptr->choice.detVeh.vehicleClass = veh_class_ptr; + +// // vehClassConf +// auto veh_class_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *veh_class_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class_conf"].asInt64(); +// optional_data_ptr->choice.detVeh.classConf = veh_class_conf_ptr; +// } + +// // detVRU +// else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vru_data")){ + +// optional_data_ptr->present = DetectedObjectOptionalData_PR_detVRU; + +// // basicType +// auto basic_type_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *basic_type_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["basic_type"].asInt64(); +// optional_data_ptr->choice.detVRU.basicType = basic_type_ptr; + +// // propulsion choice struct (check to see if propulsion exists) +// auto propulsion_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + +// if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("human")){ +// propulsion_ptr->present = PropelledInformation_PR_human; +// propulsion_ptr->choice.human = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["human"].asInt64(); +// } +// else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("animal")){ +// propulsion_ptr->present = PropelledInformation_PR_animal; +// propulsion_ptr->choice.animal = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["animal"].asInt64(); +// } +// else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("motor")){ +// propulsion_ptr->present = PropelledInformation_PR_motor; +// propulsion_ptr->choice.motor = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["motor"].asInt64(); +// } +// else{ +// propulsion_ptr->present = PropelledInformation_PR_NOTHING; +// std::cout << "Value was nothing" << std::endl; +// } +// optional_data_ptr->choice.detVRU.propulsion = propulsion_ptr; + +// // attachement +// auto attachment_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *attachment_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["attachment"].asInt64(); +// optional_data_ptr->choice.detVRU.attachment = attachment_ptr; + +// // radius +// auto radius_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *radius_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["radius"].asInt64(); +// optional_data_ptr->choice.detVRU.radius = radius_ptr; +// } + + +// // detObst +// else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_obstacle_data")){ +// optional_data_ptr->present = DetectedObjectOptionalData_PR_detObst; + +// ObstacleSize obst_size; +// obst_size.width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["width"].asInt64(); +// obst_size.length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["length"].asInt64(); +// auto obst_height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *obst_height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["height"].asInt64(); +// obst_size.height = obst_height_ptr; +// optional_data_ptr->choice.detObst.obstSize = obst_size; + +// ObstacleSizeConfidence obst_size_conf; +// obst_size_conf.widthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"].asInt64(); +// obst_size_conf.lengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"].asInt64(); +// auto obst_height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); +// *obst_height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"].asInt64(); +// obst_size_conf.heightConfidence = obst_height_conf_ptr; +// optional_data_ptr->choice.detObst.obstSizeConfidence = obst_size_conf; +// } + + +// // Add optional data to object data +// object_data->detObjOptData = optional_data_ptr; + + +// } +// } + +// // Append the object to the detected objects list +// asn_sequence_add(&object_list->list.array, object_data); + +// // Set the data to the ASN.1 C struct +// sdsm->objects = *object_list; + + +// } + + +// void JsonToJ3224SDSMConverter::encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const +// { +// tmx::messages::MessageFrameMessage frame(sdsmPtr); +// encodedSDSM.set_data(tmx::messages::TmxJ2735EncodedMessage::encode_j2735_message>(frame)); +// free(frame.get_j2735_data().get()); +// } - -} \ No newline at end of file + +// } \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h index ea13123f2..15af000f7 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h @@ -1,46 +1,46 @@ -#include "jsoncpp/json/json.h" -#include -#include -#include -#include -#include -#include -#include - -using namespace tmx::utils; - -namespace CARMAStreetsPlugin -{ - class JsonToJ3224SDSMConverter - { - - public: - - JsonToJ3224SDSMConverter() = default; - - /*** - * @brief Parse Json string into Json object - * @param jsonstring that is consumed from a kafka topic - * @param JsonObject that is populated by the input json string - * @return boolean. True if parse successfully, false if parse with errors - */ - bool parseJsonString(const std::string &consumed_msg, Json::Value &sdsm_json_output) const; - - /** - * @brief Convert the Json value with sdsm information info tmx SDSM object. - * @param json Incoming Json value with sdsm information that is consumed from a Kafka topic. - * @param sdsm Outgoing J3224 sdsm object that is populated by the json value. - */ - void convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const; - - /*** - * @brief Encode J3224 SDSM - * @param Pointer to J3224 SDSM object - * @param Encoded J3224 SDSM - */ - void encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const; - - ~JsonToJ3224SDSMConverter() = default; - }; - -} \ No newline at end of file +// #include "jsoncpp/json/json.h" +// #include +// #include +// #include +// #include +// #include +// #include +// #include + +// using namespace tmx::utils; + +// namespace CARMAStreetsPlugin +// { +// class JsonToJ3224SDSMConverter +// { + +// public: + +// JsonToJ3224SDSMConverter() = default; + +// /*** +// * @brief Parse Json string into Json object +// * @param jsonstring that is consumed from a kafka topic +// * @param JsonObject that is populated by the input json string +// * @return boolean. True if parse successfully, false if parse with errors +// */ +// bool parseJsonString(const std::string &consumed_msg, Json::Value &sdsm_json_output) const; + +// /** +// * @brief Convert the Json value with sdsm information info tmx SDSM object. +// * @param json Incoming Json value with sdsm information that is consumed from a Kafka topic. +// * @param sdsm Outgoing J3224 sdsm object that is populated by the json value. +// */ +// void convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const; + +// /*** +// * @brief Encode J3224 SDSM +// * @param Pointer to J3224 SDSM object +// * @param Encoded J3224 SDSM +// */ +// void encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const; + +// ~JsonToJ3224SDSMConverter() = default; +// }; + +// } \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp index 304d7f999..30aad4cd9 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp @@ -16,7 +16,7 @@ namespace unit_test CARMAStreetsPlugin::J2735MapToJsonConverter converter; MapData *mapData = (MapData *)calloc(1, sizeof(MapData)); LayerID_t layer_id = 1; - DSRC_MsgCount_t msgIssueRevision = 2; + Common_MsgCount_t msgIssueRevision = 2; mapData->layerID = &layer_id; mapData->msgIssueRevision = msgIssueRevision; auto layer_type = std::make_unique(1); diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_JsonToJ2735SpatConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_JsonToJ2735SpatConverter.cpp index 584c246af..df80dc883 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_JsonToJ2735SpatConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_JsonToJ2735SpatConverter.cpp @@ -128,17 +128,17 @@ namespace CARMAStreetsPlugin /** * @brief Unit test to ensure encodeSpat will throw and exception attempting to encode timing - * data that exceeds max value of 36001 (see ASN1 documentation for TimeMark). + * data that exceeds max value of 36111 (see 2020 ASN1 documentation for TimeMark). * */ TEST_F(test_JsonToJ2735SpatConverter, time_mark_over_max_value) { std::string spat_json_string = "{\"time_stamp\":387178,\"name\":\"\",\"intersections\":[{\"name\":\"East Intersection\",\"id\":9945,\"revision\":1,\"status\":0,\"moy\":387178,\"time_stamp\":32248,\"states\":[" "{\"movement_name\":\"\",\"signal_group\":8,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":34975,\"min_end_time\":35405,\"max_end_time\":35405,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35405,\"min_end_time\":35505,\"max_end_time\":35505,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35505,\"min_end_time\":35535,\"max_end_time\":35535,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35535,\"min_end_time\":35965,\"max_end_time\":35965,\"confidence\":0}}]}," "{\"movement_name\":\"\",\"signal_group\":2,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":34695,\"min_end_time\":35125,\"max_end_time\":35125,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35125,\"min_end_time\":35225,\"max_end_time\":35225,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35225,\"min_end_time\":35255,\"max_end_time\":35255,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35255,\"min_end_time\":35685,\"max_end_time\":35685,\"confidence\":0}}]}," - "{\"movement_name\":\"\",\"signal_group\":1,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":35115,\"min_end_time\":35545,\"max_end_time\":35545,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35545,\"min_end_time\":35645,\"max_end_time\":35645,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35645,\"min_end_time\":35675,\"max_end_time\":35675,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35675,\"min_end_time\":36105,\"max_end_time\":36105,\"confidence\":0}}]}," + "{\"movement_name\":\"\",\"signal_group\":1,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":35115,\"min_end_time\":35545,\"max_end_time\":35545,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35545,\"min_end_time\":35645,\"max_end_time\":35645,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35645,\"min_end_time\":35675,\"max_end_time\":35675,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35675,\"min_end_time\":36205,\"max_end_time\":36205,\"confidence\":0}}]}," "{\"movement_name\":\"\",\"signal_group\":3,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":34835,\"min_end_time\":35265,\"max_end_time\":35265,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35265,\"min_end_time\":35365,\"max_end_time\":35365,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35365,\"min_end_time\":35395,\"max_end_time\":35395,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35395,\"min_end_time\":35825,\"max_end_time\":35825,\"confidence\":0}}]}," "{\"movement_name\":\"\",\"signal_group\":4,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":34975,\"min_end_time\":35405,\"max_end_time\":35405,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35405,\"min_end_time\":35505,\"max_end_time\":35505,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35505,\"min_end_time\":35535,\"max_end_time\":35535,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35535,\"min_end_time\":35965,\"max_end_time\":35965,\"confidence\":0}}]}," - "{\"movement_name\":\"\",\"signal_group\":5,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":35115,\"min_end_time\":35545,\"max_end_time\":35545,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35545,\"min_end_time\":35645,\"max_end_time\":35645,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35645,\"min_end_time\":35675,\"max_end_time\":35675,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35675,\"min_end_time\":36105,\"max_end_time\":36105,\"confidence\":0}}]}," + "{\"movement_name\":\"\",\"signal_group\":5,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":35115,\"min_end_time\":35545,\"max_end_time\":35545,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35545,\"min_end_time\":35645,\"max_end_time\":35645,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35645,\"min_end_time\":35675,\"max_end_time\":35675,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35675,\"min_end_time\":36205,\"max_end_time\":36205,\"confidence\":0}}]}," "{\"movement_name\":\"\",\"signal_group\":6,\"state_time_speed\":[{\"event_state\":3,\"timing\":{\"start_time\":34695,\"min_end_time\":35125,\"max_end_time\":35125,\"confidence\":0}},{\"event_state\":6,\"timing\":{\"start_time\":35125,\"min_end_time\":35225,\"max_end_time\":35225,\"confidence\":0}},{\"event_state\":8,\"timing\":{\"start_time\":35225,\"min_end_time\":35255,\"max_end_time\":35255,\"confidence\":0}},{\"event_state\":3,\"timing\":{\"start_time\":35255,\"min_end_time\":35685,\"max_end_time\":35685,\"confidence\":0}}]}]}]}"; Json::Reader reader; auto spat_ptr = std::make_shared(); diff --git a/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp b/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp index 302cfb4c6..076af2a3c 100644 --- a/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp +++ b/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp @@ -35,7 +35,7 @@ void DsrcBuilder::AddCurveSpeedAdvisory(TiDataFrame *frame, unsigned int speedLi void DsrcBuilder::AddItisCode(ITIScodesAndText *advisory, long code) { ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - member->item.present = ITIScodesAndText__Memberitem_PR_itis; + member->item.present = ITIScodesAndText__Member__item_PR_itis; member->item.choice.itis = code; ASN_SEQUENCE_ADD(&advisory->list, member); } @@ -45,7 +45,7 @@ void DsrcBuilder::AddItisText(ITIScodesAndText *advisory, std::string text) int textLength = text.length(); ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - member->item.present = ITIScodesAndText__Memberitem_PR_text; + member->item.present = ITIScodesAndText__Member__item_PR_text; member->item.choice.text.buf = NULL; OCTET_STRING_fromString(&(member->item.choice.text), text.c_str()); diff --git a/src/v2i-hub/CswPlugin/src/DsrcBuilder.h b/src/v2i-hub/CswPlugin/src/DsrcBuilder.h index e541e9407..76063efa6 100644 --- a/src/v2i-hub/CswPlugin/src/DsrcBuilder.h +++ b/src/v2i-hub/CswPlugin/src/DsrcBuilder.h @@ -14,18 +14,18 @@ #include #include -#if SAEJ2735_SPEC < 63 -typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; -typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; -typedef ITIScodesAndText::ITIScodesAndText__List ItisList; -#else +// #if SAEJ2735_SPEC < 63 +// typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; +// typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; +// typedef ITIScodesAndText::ITIScodesAndText__List ItisList; +// #else typedef TravelerDataFrame TiDataFrame; typedef ITIScodesAndText__Member ItisMember; typedef ITIScodesAndText ItisList; #include typedef NodeListXY NodeList_t; #include -#endif +// #endif class DsrcBuilder { diff --git a/src/v2i-hub/ImmediateForwardPlugin/manifest.json b/src/v2i-hub/ImmediateForwardPlugin/manifest.json index b26756a76..53387af20 100644 --- a/src/v2i-hub/ImmediateForwardPlugin/manifest.json +++ b/src/v2i-hub/ImmediateForwardPlugin/manifest.json @@ -14,7 +14,7 @@ }, { "key": "Messages_Destination_1", - "default": "{ \"Messages\": [ { \"TmxType\": \"SPAT-P\", \"SendType\": \"SPAT\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }, { \"TmxType\": \"MAP-P\", \"SendType\": \"MAP\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }, { \"TmxType\": \"PSM\", \"SendType\": \"PSM\", \"PSID\": \"0x8002\", \"Channel\": \"183\" } ,{ \"TmxType\": \"TMSG07\", \"SendType\": \"TMSG07\", \"PSID\": \"0x8002\", \"Channel\": \"183\" },{ \"TmxType\": \"TMSG03-P\", \"SendType\": \"TMSG03-P\", \"PSID\": \"0xBFEE\", \"Channel\": \"183\" },{ \"TmxType\": \"TMSG05-P\", \"SendType\": \"TMSG05-P\", \"PSID\": \"0x8003\", \"Channel\": \"183\" }, { \"TmxType\": \"SSM\", \"SendType\": \"SSM\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }] }", + "default": "{ \"Messages\": [ { \"TmxType\": \"SPAT-P\", \"SendType\": \"SPAT\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }, { \"TmxType\": \"MAP-P\", \"SendType\": \"MAP\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }, { \"TmxType\": \"PSM-P\", \"SendType\": \"PSM\", \"PSID\": \"0x27\", \"Channel\": \"183\" } ,{ \"TmxType\": \"TMSG07-P\", \"SendType\": \"TMSG07\", \"PSID\": \"0x8002\", \"Channel\": \"183\" },{ \"TmxType\": \"TMSG03-P\", \"SendType\": \"TMSG03\", \"PSID\": \"0xBFEE\", \"Channel\": \"183\" },{ \"TmxType\": \"TMSG05-P\", \"SendType\": \"TMSG05\", \"PSID\": \"0xBFEE\", \"Channel\": \"183\" }, { \"TmxType\": \"SSM-P\", \"SendType\": \"SSM\", \"PSID\": \"0x8002\", \"Channel\": \"183\" }] }", "description": "JSON data defining the message types, PSIDs, and channel number for messages forwarded to the V2X radio at destination 1." }, { diff --git a/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp b/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp index 03e1e54af..28ccceb57 100644 --- a/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp +++ b/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp @@ -432,9 +432,9 @@ int ConvertToJ2735r41::convertMap(map *mapMessage) { memset(MapJ2735, 0, sizeof(MapData)); // TODO: Map-P Not defined from ASN.1 using literal instead -#if SAEJ2735_SPEC < 63 - MapJ2735->msgID = tmx::messages::MapDataMessage::get_default_messageId(); // Map-P -#endif +// #if SAEJ2735_SPEC < 63 +// MapJ2735->msgID = tmx::messages::MapDataMessage::get_default_messageId(); // Map-P +// #endif std::cout << std::endl << "R41 XML:" << std::endl; xer_fprint(stdout, &asn_DEF_MapData, MapJ2735); diff --git a/src/v2i-hub/MapPlugin/src/MapPlugin.cpp b/src/v2i-hub/MapPlugin/src/MapPlugin.cpp index 2317e7800..f268694d6 100644 --- a/src/v2i-hub/MapPlugin/src/MapPlugin.cpp +++ b/src/v2i-hub/MapPlugin/src/MapPlugin.cpp @@ -37,9 +37,9 @@ using namespace tmx::utils; namespace MapPlugin { -#if SAEJ2735_SPEC < 63 -UPERframe _uperFrameMessage; -#endif +// #if SAEJ2735_SPEC < 63 +// UPERframe _uperFrameMessage; +// #endif class MapFile: public tmx::message { public: diff --git a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp index 72460f29e..74f97a840 100644 --- a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp +++ b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp @@ -12,12 +12,12 @@ #include #include -#if SAEJ2735_SPEC < 63 -#define NO_NODE NodeList2_PR_NOTHING -#define DEFINED_NODE NodeList2_PR_nodes -#define COMPUTED_NODE NodeList2_PR_computed -#define ENUM_NAME(X) NodeOffsetPoint_PR_node_ ## X -#else +// #if SAEJ2735_SPEC < 63 +// #define NO_NODE NodeList2_PR_NOTHING +// #define DEFINED_NODE NodeList2_PR_nodes +// #define COMPUTED_NODE NodeList2_PR_computed +// #define ENUM_NAME(X) NodeOffsetPoint_PR_node_ ## X +// #else #define NO_NODE NodeListXY_PR_NOTHING #define DEFINED_NODE NodeListXY_PR_nodes #define COMPUTED_NODE NodeListXY_PR_computed @@ -25,7 +25,7 @@ typedef NodeXY Node; typedef DSRC_Elevation_t Elevation2_t; typedef NodeAttributeSetXY NodeAttributeSet; -#endif +// #endif #define attribute(X, Y, D) ro_attribute(this->msg, battelle::attributes::standard_attribute, X, Y, get_, D) @@ -175,11 +175,11 @@ class IntersectionGeometryAdaptor: public tmx::message { ro_attribute(this->msg, reference_point_attribute, std::string, descriptiveIntersctionName, get_, ""); ro_attribute(this->msg, reference_point_attribute, LayerID_t, layerID, get_, 0); ro_attribute(this->msg, reference_point_attribute, IntersectionID_t, intersectionID, get_, 0); -#if SAEJ2735_SPEC < 63 - ro_attribute(this->msg, reference_point_attribute, MsgCount_t, msgCount, get_, 0); -#else +// #if SAEJ2735_SPEC < 63 +// ro_attribute(this->msg, reference_point_attribute, MsgCount_t, msgCount, get_, 0); +// #else ro_attribute(this->msg, reference_point_attribute, DSRC_MsgCount_t, msgCount, get_, 0); -#endif +// #endif ro_attribute(this->msg, reference_point_attribute, LaneWidth_t, masterLaneWidth, get_, -1L); ro_attribute(this->msg, reference_point_attribute, double, referenceLat, get_, 0.0); ro_attribute(this->msg, reference_point_attribute, double, referenceLon, get_, 0.0); diff --git a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp index 36d7e8afb..ed30d6af1 100644 --- a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp +++ b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp @@ -244,9 +244,9 @@ MapData *ISDToJ2735r41::to_map() { allocate(map); memset(map, 0, sizeof(MapData)); -#if SAEJ2735_SPEC < 63 - map->msgID = api::mapData; -#endif +// #if SAEJ2735_SPEC < 63 +// map->msgID = api::mapData; +// #endif map->msgIssueRevision = 0; // Layer type from string diff --git a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp index d75e1e522..11238d78f 100644 --- a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp +++ b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp @@ -20,12 +20,12 @@ using namespace std; using namespace boost::property_tree; using namespace tmx::utils; -#if SAEJ2735_SPEC < 63 -#else +// #if SAEJ2735_SPEC < 63 +// #else typedef DSRC_MsgCount_t MsgCount_t; typedef DSecond_t DSecond2_t; typedef DSRC_TimeMark_t TimeMark_t; -#endif +// #endif void Ntcip1202::setSignalGroupMappingList(string json) { @@ -231,9 +231,9 @@ bool Ntcip1202::ToJ2735r41SPAT(SPAT* spat, char* intersectionName, IntersectionI ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_SPAT, spat); -#if SAEJ2735_SPEC < 63 - spat->msgID = tmx::messages::SpatMessage::get_default_messageId(); -#endif +// #if SAEJ2735_SPEC < 63 +// spat->msgID = tmx::messages::SpatMessage::get_default_messageId(); +// #endif IntersectionState *intersection = (IntersectionState *)calloc(1, sizeof(IntersectionState)); diff --git a/src/v2i-hub/TimPlugin/src/DsrcBuilder.h b/src/v2i-hub/TimPlugin/src/DsrcBuilder.h index 2a9366288..9925e8a2b 100644 --- a/src/v2i-hub/TimPlugin/src/DsrcBuilder.h +++ b/src/v2i-hub/TimPlugin/src/DsrcBuilder.h @@ -14,18 +14,18 @@ #include #include -#if SAEJ2735_SPEC < 63 -typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; -typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; -typedef ITIScodesAndText::ITIScodesAndText__List ItisList; -#else +// #if SAEJ2735_SPEC < 63 +// typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; +// typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; +// typedef ITIScodesAndText::ITIScodesAndText__List ItisList; +// #else typedef TravelerDataFrame TiDataFrame; typedef ITIScodesAndText__Member ItisMember; typedef ITIScodesAndText ItisList; #include typedef NodeListXY NodeList_t; #include -#endif +// #endif class DsrcBuilder { diff --git a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp index 9fbde571d..1c870b628 100644 --- a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp +++ b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp @@ -206,10 +206,10 @@ void XmlCurveParser::ReadRoot(DOMElement* root, TravelerInformation *tim) SpeedLimit = speedLimit; -#if SAEJ2735_SPEC < 63 - tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); - *tim->dataFrameCount = tim->dataFrames.list.count; -#endif +// #if SAEJ2735_SPEC < 63 +// tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); +// *tim->dataFrameCount = tim->dataFrames.list.count; +// #endif // Add Frame Part III (content) for each frame. for (int i = 0; i < tim->dataFrames.list.count; i++) @@ -272,13 +272,13 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) frame->frameType = TravelerInfoType_advisory; -#if SAEJ2735_SPEC < 63 - frame->msgId.present = msgId_PR_furtherInfoID; -#else +// #if SAEJ2735_SPEC < 63 +// frame->msgId.present = msgId_PR_furtherInfoID; +// #else frame->msgId.present = TravelerDataFrame__msgId_PR_furtherInfoID; std::string tempString = "00"; OCTET_STRING_fromString(&(frame->msgId.choice.furtherInfoID), tempString.c_str()); -#endif +// #endif // TODO: Does this need set? //frame->msgId.choice.furtherInfoID = @@ -437,17 +437,17 @@ Position3D* XmlCurveParser::ReadReferencePoint(DOMElement* referencePointElement { int16_t elevation = atoi(XMLString::transcode(currentElement->getTextContent())) * 10; -#if SAEJ2735_SPEC < 63 - anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); - anchor->elevation->buf = (uint8_t *)calloc(1,2); - anchor->elevation->size = 2; +// #if SAEJ2735_SPEC < 63 +// anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); +// anchor->elevation->buf = (uint8_t *)calloc(1,2); +// anchor->elevation->size = 2; - anchor->elevation->buf[0] = elevation >> 8; - anchor->elevation->buf[1] = elevation & 0xFF; -#else +// anchor->elevation->buf[0] = elevation >> 8; +// anchor->elevation->buf[1] = elevation & 0xFF; +// #else anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); *(anchor->elevation) = elevation; -#endif +// #endif if (_debugOutput) cout << "ReferencePoint Elevation: " << elevation << endl; } From fd6d2b5074ed66cf01380a4e7fb5527b2b09b4fa Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Wed, 25 Oct 2023 10:25:30 -0400 Subject: [PATCH 03/18] modified: src/build.sh modified: src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp --- src/build.sh | 2 +- .../SensorDataSharingMessage.hpp | 24 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/build.sh b/src/build.sh index b085806a5..9bb3d4c4f 100755 --- a/src/build.sh +++ b/src/build.sh @@ -36,7 +36,7 @@ elif [ $RELEASE_BUILD -eq 0 ]; then BUILD_TYPE="Debug" fi pushd tmx -cmake -Bbuild -DCMAKE_PREFIX_PATH=\"/usr/local/share/tmx\;\/opt/carma/cmake\;\" -DCMAKE_CXX_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_C_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_BUILD_TYPE=Debug . +cmake -Bbuild -DCMAKE_PREFIX_PATH=\"/usr/local/share/tmx\;\/opt/carma/cmake\;\" -DCMAKE_CXX_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_C_FLAGS="${COVERAGE_FLAGS}" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" . pushd build make -j${numCPU} make install diff --git a/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp index 4ce18c159..66b910e51 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/SensorDataSharingMessage.hpp @@ -1,15 +1,15 @@ -// /* -// * @file SensorDataSharingMessage.hpp -// * -// * Created on: August 4, 2023 -// */ -// #ifndef TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ -// #define TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ +/* + * @file SensorDataSharingMessage.hpp + * + * Created on: August 4, 2023 + */ +#ifndef TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ +#define TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ -// #include -// #include -// #include +#include +#include +#include -// TMX_J2735_DECLARE(Sdsm, SensorDataSharingMessage, api::sensorDataSharingMessage, api::MSGSUBTYPE_SENSORDATASHARINGMESSAGE_STRING) +TMX_J2735_DECLARE(Sdsm, SensorDataSharingMessage, api::sensorDataSharingMessage, api::MSGSUBTYPE_SENSORDATASHARINGMESSAGE_STRING) -// #endif /* TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ */ +#endif /* TMX_J2735_MESSAGES_SENSORDATASHARINGMESSAGE_HPP_ */ From ae4930c8a9e7f8ae9041c3e0365a5b6e04bf0bc4 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Wed, 25 Oct 2023 13:43:21 -0400 Subject: [PATCH 04/18] new folder: src/tmx/Asn_J2735/include/asn_j2735_r2020 new folder: src/tmx/Asn_J2735/src/r2020 modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp modified: src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h modified: src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h modified: src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp modified: src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp modified: src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp modified: src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp modified: src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp modified: src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp modified: src/v2i-hub/TimPlugin/src/TimPlugin.cpp modified: src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp --- .../Asn_J2735/include/asn_j2735_r2020/ANY.h | 84 + .../AccelSteerYawRateConfidence.h | 44 + .../include/asn_j2735_r2020/Acceleration.h | 46 + .../asn_j2735_r2020/AccelerationConfidence.h | 59 + .../asn_j2735_r2020/AccelerationSet4Way.h | 45 + .../include/asn_j2735_r2020/AddGrpB_Angle.h | 45 + .../asn_j2735_r2020/AddGrpB_Elevation.h | 46 + .../asn_j2735_r2020/AddGrpB_MsgCount.h | 45 + .../asn_j2735_r2020/AddGrpB_TimeMark.h | 56 + .../include/asn_j2735_r2020/AdvisorySpeed.h | 66 + .../asn_j2735_r2020/AdvisorySpeedList.h | 47 + .../asn_j2735_r2020/AdvisorySpeedType.h | 58 + .../asn_j2735_r2020/AllowedManeuvers.h | 62 + .../include/asn_j2735_r2020/Altitude.h | 42 + .../asn_j2735_r2020/AltitudeConfidence.h | 67 + .../include/asn_j2735_r2020/AltitudeValue.h | 46 + .../asn_j2735_r2020/AmbientAirPressure.h | 46 + .../asn_j2735_r2020/AmbientAirTemperature.h | 46 + .../include/asn_j2735_r2020/AngularVelocity.h | 42 + .../AngularVelocityConfidence.h | 42 + .../asn_j2735_r2020/AnimalPropelledType.h | 58 + .../include/asn_j2735_r2020/AnimalType.h | 58 + .../asn_j2735_r2020/AntennaOffsetSet.h | 44 + .../asn_j2735_r2020/AntiLockBrakeStatus.h | 55 + .../include/asn_j2735_r2020/ApproachID.h | 46 + .../include/asn_j2735_r2020/ApproachOrLane.h | 53 + .../include/asn_j2735_r2020/Attachment.h | 61 + .../asn_j2735_r2020/AttachmentRadius.h | 46 + .../include/asn_j2735_r2020/Attitude.h | 44 + .../asn_j2735_r2020/AttitudeConfidence.h | 42 + .../asn_j2735_r2020/AuxiliaryBrakeStatus.h | 55 + .../include/asn_j2735_r2020/AxleLocation.h | 46 + .../include/asn_j2735_r2020/AxleWeight.h | 46 + .../include/asn_j2735_r2020/AxleWeightList.h | 47 + .../include/asn_j2735_r2020/AxleWeightSet.h | 46 + .../include/asn_j2735_r2020/BIT_STRING.h | 75 + .../include/asn_j2735_r2020/BOOLEAN.h | 70 + .../include/asn_j2735_r2020/BSMcoreData.h | 66 + .../BasicSafetyMessage-addGrpCarma.h | 56 + .../asn_j2735_r2020/BasicSafetyMessage.h | 66 + .../asn_j2735_r2020/BasicVehicleClass.h | 102 + .../asn_j2735_r2020/BasicVehicleRole.h | 77 + .../asn_j2735_r2020/BrakeAppliedPressure.h | 67 + .../asn_j2735_r2020/BrakeAppliedStatus.h | 55 + .../asn_j2735_r2020/BrakeBoostApplied.h | 54 + .../asn_j2735_r2020/BrakeSystemStatus.h | 50 + .../include/asn_j2735_r2020/BumperHeight.h | 46 + .../include/asn_j2735_r2020/BumperHeights.h | 41 + .../include/asn_j2735_r2020/CargoWeight.h | 46 + .../include/asn_j2735_r2020/Circle.h | 44 + .../ClassificationConfidence.h | 44 + .../include/asn_j2735_r2020/CoarseHeading.h | 46 + .../include/asn_j2735_r2020/CodeWord.h | 45 + .../asn_j2735_r2020/CoefficientOfFriction.h | 46 + .../asn_j2735_r2020/CommonSafetyRequest.h | 64 + .../include/asn_j2735_r2020/Common_Angle.h | 46 + .../asn_j2735_r2020/Common_Elevation.h | 46 + .../include/asn_j2735_r2020/Common_MsgCount.h | 46 + .../include/asn_j2735_r2020/ComputedLane.h | 98 + .../include/asn_j2735_r2020/Confidence.h | 46 + .../include/asn_j2735_r2020/ConfidenceSet.h | 63 + .../include/asn_j2735_r2020/ConnectingLane.h | 42 + .../include/asn_j2735_r2020/Connection.h | 53 + .../ConnectionManeuverAssist-addGrpC.h | 47 + .../ConnectionManeuverAssist.h | 65 + .../include/asn_j2735_r2020/ConnectsToList.h | 47 + .../Asn_J2735/include/asn_j2735_r2020/Count.h | 45 + .../Asn_J2735/include/asn_j2735_r2020/DDate.h | 42 + .../include/asn_j2735_r2020/DDateTime.h | 52 + .../Asn_J2735/include/asn_j2735_r2020/DDay.h | 46 + .../include/asn_j2735_r2020/DFullTime.h | 46 + .../Asn_J2735/include/asn_j2735_r2020/DHour.h | 46 + .../include/asn_j2735_r2020/DMinute.h | 46 + .../include/asn_j2735_r2020/DMonth.h | 46 + .../include/asn_j2735_r2020/DMonthDay.h | 40 + .../include/asn_j2735_r2020/DOffset.h | 46 + .../include/asn_j2735_r2020/DSRCmsgID.h | 95 + .../include/asn_j2735_r2020/DSecond.h | 46 + .../Asn_J2735/include/asn_j2735_r2020/DTime.h | 44 + .../Asn_J2735/include/asn_j2735_r2020/DYear.h | 46 + .../include/asn_j2735_r2020/DYearMonth.h | 40 + .../include/asn_j2735_r2020/DailySchedule.h | 41 + .../include/asn_j2735_r2020/DataParameters.h | 47 + .../Asn_J2735/include/asn_j2735_r2020/Day.h | 46 + .../include/asn_j2735_r2020/DayOfWeek.h | 59 + .../include/asn_j2735_r2020/DaySchedule.h | 41 + .../include/asn_j2735_r2020/DegreesLat.h | 46 + .../include/asn_j2735_r2020/DegreesLong.h | 46 + .../include/asn_j2735_r2020/DeltaAngle.h | 46 + .../include/asn_j2735_r2020/DeltaTime.h | 46 + .../include/asn_j2735_r2020/DescriptiveName.h | 46 + .../DetectedObjectCommonData.h | 79 + .../asn_j2735_r2020/DetectedObjectData.h | 47 + .../asn_j2735_r2020/DetectedObjectList.h | 47 + .../DetectedObjectOptionalData.h | 56 + .../asn_j2735_r2020/DetectedObstacleData.h | 42 + .../include/asn_j2735_r2020/DetectedVRUData.h | 51 + .../asn_j2735_r2020/DetectedVehicleData.h | 72 + .../include/asn_j2735_r2020/DirectionOfUse.h | 55 + .../include/asn_j2735_r2020/DisabledVehicle.h | 46 + .../include/asn_j2735_r2020/DistanceUnits.h | 59 + .../DriveAxleLiftAirPressure.h | 46 + .../asn_j2735_r2020/DriveAxleLocation.h | 46 + .../asn_j2735_r2020/DriveAxleLubePressure.h | 46 + .../asn_j2735_r2020/DriveAxleTemperature.h | 46 + .../asn_j2735_r2020/DrivenLineOffsetLg.h | 46 + .../asn_j2735_r2020/DrivenLineOffsetSm.h | 46 + .../asn_j2735_r2020/DrivingWheelAngle.h | 46 + .../include/asn_j2735_r2020/Duration.h | 45 + .../include/asn_j2735_r2020/EXTERNAL.h | 65 + .../asn_j2735_r2020/ElevationConfidence.h | 67 + .../asn_j2735_r2020/EmergencyDetails.h | 59 + .../asn_j2735_r2020/EmergencyVehicleAlert.h | 77 + .../include/asn_j2735_r2020/EmissionType.h | 59 + .../include/asn_j2735_r2020/EnabledLaneList.h | 42 + .../include/asn_j2735_r2020/EpochMins.h | 46 + .../include/asn_j2735_r2020/EquipmentType.h | 56 + .../asn_j2735_r2020/EssMobileFriction.h | 46 + .../include/asn_j2735_r2020/EssPrecipRate.h | 46 + .../asn_j2735_r2020/EssPrecipSituation.h | 66 + .../include/asn_j2735_r2020/EssPrecipYesNo.h | 54 + .../asn_j2735_r2020/EssSolarRadiation.h | 46 + .../asn_j2735_r2020/EventDescription.h | 70 + .../include/asn_j2735_r2020/ExitService.h | 69 + .../include/asn_j2735_r2020/Extent.h | 67 + .../include/asn_j2735_r2020/ExteriorLights.h | 59 + .../include/asn_j2735_r2020/FuelType.h | 56 + .../asn_j2735_r2020/FullPositionVector.h | 71 + .../include/asn_j2735_r2020/FurtherInfoID.h | 46 + .../include/asn_j2735_r2020/GNSSstatus.h | 58 + .../include/asn_j2735_r2020/GenericLane.h | 75 + .../asn_j2735_r2020/GenericLocations.h | 150 + .../include/asn_j2735_r2020/GenericSignage.h | 69 + .../asn_j2735_r2020/GeographicalPath.h | 101 + .../asn_j2735_r2020/GeometricProjection.h | 64 + .../include/asn_j2735_r2020/GraphicString.h | 56 + .../include/asn_j2735_r2020/GrossDistance.h | 46 + .../include/asn_j2735_r2020/GrossSpeed.h | 46 + .../include/asn_j2735_r2020/Header.h | 50 + .../include/asn_j2735_r2020/Heading.h | 46 + .../asn_j2735_r2020/HeadingConfidence.h | 59 + .../include/asn_j2735_r2020/HeadingSlice.h | 66 + .../include/asn_j2735_r2020/Holiday.h | 53 + .../Asn_J2735/include/asn_j2735_r2020/Hour.h | 46 + .../asn_j2735_r2020/HumanPropelledType.h | 60 + .../include/asn_j2735_r2020/IA5String.h | 59 + .../include/asn_j2735_r2020/INTEGER.h | 139 + .../include/asn_j2735_r2020/ITIScodes.h | 46 + .../asn_j2735_r2020/ITIScodesAndText.h | 69 + .../include/asn_j2735_r2020/ITIStext.h | 46 + .../include/asn_j2735_r2020/ITIStextPhrase.h | 46 + .../include/asn_j2735_r2020/Id128b.h | 46 + .../Asn_J2735/include/asn_j2735_r2020/Id64b.h | 46 + .../IncidentResponseEquipment.h | 126 + .../asn_j2735_r2020/IntersectionAccessPoint.h | 62 + .../asn_j2735_r2020/IntersectionCollision.h | 77 + .../asn_j2735_r2020/IntersectionGeometry.h | 74 + .../IntersectionGeometryList.h | 47 + .../include/asn_j2735_r2020/IntersectionID.h | 46 + .../asn_j2735_r2020/IntersectionReferenceID.h | 42 + .../IntersectionState-addGrpC.h | 49 + .../asn_j2735_r2020/IntersectionState.h | 76 + .../asn_j2735_r2020/IntersectionStateList.h | 47 + .../IntersectionStatusObject.h | 64 + .../include/asn_j2735_r2020/IsDolly.h | 45 + .../asn_j2735_r2020/Iso3833VehicleType.h | 46 + .../include/asn_j2735_r2020/J1939data.h | 68 + .../asn_j2735_r2020/LaneAttributes-Barrier.h | 60 + .../asn_j2735_r2020/LaneAttributes-Bike.h | 57 + .../LaneAttributes-Crosswalk.h | 59 + .../asn_j2735_r2020/LaneAttributes-Parking.h | 57 + .../asn_j2735_r2020/LaneAttributes-Sidewalk.h | 54 + .../asn_j2735_r2020/LaneAttributes-Striping.h | 56 + .../LaneAttributes-TrackedVehicle.h | 55 + .../asn_j2735_r2020/LaneAttributes-Vehicle.h | 58 + .../include/asn_j2735_r2020/LaneAttributes.h | 51 + .../asn_j2735_r2020/LaneConnectionID.h | 46 + .../LaneDataAttribute-addGrpB.h | 41 + .../asn_j2735_r2020/LaneDataAttribute.h | 84 + .../asn_j2735_r2020/LaneDataAttributeList.h | 47 + .../include/asn_j2735_r2020/LaneDirection.h | 52 + .../include/asn_j2735_r2020/LaneID.h | 46 + .../include/asn_j2735_r2020/LaneList.h | 47 + .../include/asn_j2735_r2020/LaneSharing.h | 60 + .../asn_j2735_r2020/LaneTypeAttributes.h | 77 + .../include/asn_j2735_r2020/LaneWidth.h | 46 + .../include/asn_j2735_r2020/Latitude.h | 46 + .../include/asn_j2735_r2020/LatitudeDMS.h | 46 + .../include/asn_j2735_r2020/LatitudeDMS2.h | 44 + .../include/asn_j2735_r2020/LayerID.h | 46 + .../include/asn_j2735_r2020/LayerType.h | 62 + .../include/asn_j2735_r2020/LightbarInUse.h | 59 + .../asn_j2735_r2020/Location-quality.h | 57 + .../include/asn_j2735_r2020/Location-tech.h | 62 + .../include/asn_j2735_r2020/Longitude.h | 46 + .../include/asn_j2735_r2020/LongitudeDMS.h | 46 + .../include/asn_j2735_r2020/LongitudeDMS2.h | 44 + .../include/asn_j2735_r2020/MUTCDCode.h | 61 + .../asn_j2735_r2020/ManeuverAssistList.h | 47 + .../include/asn_j2735_r2020/MapData-addGrpC.h | 49 + .../include/asn_j2735_r2020/MapData.h | 76 + .../include/asn_j2735_r2020/MaxTimetoChange.h | 46 + .../asn_j2735_r2020/MeasurementTimeOffset.h | 44 + .../asn_j2735_r2020/MergeDivergeNodeAngle.h | 46 + .../include/asn_j2735_r2020/MessageBLOB.h | 45 + .../include/asn_j2735_r2020/MessageFrame.h | 155 + .../include/asn_j2735_r2020/MinTimetoChange.h | 46 + .../include/asn_j2735_r2020/Minute.h | 46 + .../include/asn_j2735_r2020/MinuteOfTheYear.h | 46 + .../include/asn_j2735_r2020/MinutesAngle.h | 46 + .../include/asn_j2735_r2020/MinutesDuration.h | 46 + .../asn_j2735_r2020/MobilityDynamicID.h | 44 + .../asn_j2735_r2020/MobilityECEFCoordinate.h | 44 + .../asn_j2735_r2020/MobilityECEFOffset.h | 42 + .../MobilityECEFOffsetCoordinate.h | 44 + .../include/asn_j2735_r2020/MobilityGUID.h | 44 + .../include/asn_j2735_r2020/MobilityHeader.h | 47 + .../asn_j2735_r2020/MobilityLocation.h | 44 + .../asn_j2735_r2020/MobilityLocationOffsets.h | 47 + .../include/asn_j2735_r2020/MobilityNeeds.h | 42 + .../asn_j2735_r2020/MobilityNeedsList.h | 47 + .../asn_j2735_r2020/MobilityNeedsType.h | 50 + .../asn_j2735_r2020/MobilityOperation.h | 42 + .../asn_j2735_r2020/MobilityParameters.h | 44 + .../include/asn_j2735_r2020/MobilityPath.h | 42 + .../asn_j2735_r2020/MobilityPlanType.h | 57 + .../include/asn_j2735_r2020/MobilityRequest.h | 61 + .../asn_j2735_r2020/MobilityResponse.h | 42 + .../asn_j2735_r2020/MobilityResponseFlag.h | 43 + .../asn_j2735_r2020/MobilityStaticID.h | 44 + .../asn_j2735_r2020/MobilityStrategy.h | 44 + .../asn_j2735_r2020/MobilityTimestamp.h | 44 + .../include/asn_j2735_r2020/MobilityUrgency.h | 44 + .../Asn_J2735/include/asn_j2735_r2020/Month.h | 46 + .../asn_j2735_r2020/MotorizedPropelledType.h | 60 + .../asn_j2735_r2020/MovementEvent-addGrpB.h | 52 + .../include/asn_j2735_r2020/MovementEvent.h | 64 + .../asn_j2735_r2020/MovementEventList.h | 47 + .../include/asn_j2735_r2020/MovementList.h | 47 + .../asn_j2735_r2020/MovementPhaseState.h | 61 + .../include/asn_j2735_r2020/MovementState.h | 65 + .../include/asn_j2735_r2020/MsgCRC.h | 46 + .../asn_j2735_r2020/MultiVehicleResponse.h | 55 + .../include/asn_j2735_r2020/NMEA-MsgType.h | 46 + .../include/asn_j2735_r2020/NMEA-Payload.h | 46 + .../include/asn_j2735_r2020/NMEA-Revision.h | 61 + .../include/asn_j2735_r2020/NMEAcorrections.h | 66 + .../Asn_J2735/include/asn_j2735_r2020/NULL.h | 45 + .../asn_j2735_r2020/NativeEnumerated.h | 76 + .../include/asn_j2735_r2020/NativeInteger.h | 71 + .../include/asn_j2735_r2020/Node-LL-24B.h | 41 + .../include/asn_j2735_r2020/Node-LL-28B.h | 41 + .../include/asn_j2735_r2020/Node-LL-32B.h | 41 + .../include/asn_j2735_r2020/Node-LL-36B.h | 41 + .../include/asn_j2735_r2020/Node-LL-44B.h | 41 + .../include/asn_j2735_r2020/Node-LL-48B.h | 41 + .../include/asn_j2735_r2020/Node-LLdms-48b.h | 42 + .../include/asn_j2735_r2020/Node-LLdms-80b.h | 42 + .../include/asn_j2735_r2020/Node-LLmD-64b.h | 42 + .../include/asn_j2735_r2020/Node-XY-20b.h | 41 + .../include/asn_j2735_r2020/Node-XY-22b.h | 41 + .../include/asn_j2735_r2020/Node-XY-24b.h | 41 + .../include/asn_j2735_r2020/Node-XY-26b.h | 41 + .../include/asn_j2735_r2020/Node-XY-28b.h | 41 + .../include/asn_j2735_r2020/Node-XY-32b.h | 41 + .../include/asn_j2735_r2020/NodeAttributeLL.h | 66 + .../asn_j2735_r2020/NodeAttributeLLList.h | 42 + .../asn_j2735_r2020/NodeAttributeSetLL.h | 69 + .../asn_j2735_r2020/NodeAttributeSetXY.h | 69 + .../include/asn_j2735_r2020/NodeAttributeXY.h | 66 + .../asn_j2735_r2020/NodeAttributeXYList.h | 42 + .../include/asn_j2735_r2020/NodeLL.h | 51 + .../include/asn_j2735_r2020/NodeListLL.h | 56 + .../include/asn_j2735_r2020/NodeListXY.h | 59 + .../asn_j2735_r2020/NodeOffsetPointLL.h | 71 + .../NodeOffsetPointXY-addGrpB.h | 59 + .../asn_j2735_r2020/NodeOffsetPointXY.h | 85 + .../include/asn_j2735_r2020/NodeSetLL.h | 47 + .../include/asn_j2735_r2020/NodeSetXY.h | 47 + .../include/asn_j2735_r2020/NodeXY.h | 51 + .../NumberOfParticipantsInCluster.h | 58 + .../asn_j2735_r2020/OBJECT_IDENTIFIER.h | 184 + .../include/asn_j2735_r2020/OCTET_STRING.h | 165 + .../include/asn_j2735_r2020/OPEN_TYPE.h | 117 + .../include/asn_j2735_r2020/ObjectCount.h | 46 + .../asn_j2735_r2020/ObjectDescriptor.h | 54 + .../include/asn_j2735_r2020/ObjectDistance.h | 44 + .../include/asn_j2735_r2020/ObjectID.h | 44 + .../include/asn_j2735_r2020/ObjectType.h | 56 + .../asn_j2735_r2020/ObstacleDetection.h | 54 + .../asn_j2735_r2020/ObstacleDirection.h | 46 + .../asn_j2735_r2020/ObstacleDistance.h | 46 + .../include/asn_j2735_r2020/ObstacleSize.h | 42 + .../asn_j2735_r2020/ObstacleSizeConfidence.h | 42 + .../include/asn_j2735_r2020/Offset-B09.h | 46 + .../include/asn_j2735_r2020/Offset-B10.h | 46 + .../include/asn_j2735_r2020/Offset-B11.h | 46 + .../include/asn_j2735_r2020/Offset-B12.h | 46 + .../include/asn_j2735_r2020/Offset-B13.h | 46 + .../include/asn_j2735_r2020/Offset-B14.h | 46 + .../include/asn_j2735_r2020/Offset-B16.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B12.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B14.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B16.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B18.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B22.h | 46 + .../include/asn_j2735_r2020/OffsetLL-B24.h | 46 + .../include/asn_j2735_r2020/OffsetPoint.h | 41 + .../include/asn_j2735_r2020/OffsetSystem.h | 60 + .../include/asn_j2735_r2020/OverlayLaneList.h | 42 + .../include/asn_j2735_r2020/PartII-Id.h | 49 + .../include/asn_j2735_r2020/PartIIcontent.h | 66 + .../include/asn_j2735_r2020/PathHistory.h | 53 + .../asn_j2735_r2020/PathHistoryPoint.h | 60 + .../asn_j2735_r2020/PathHistoryPointList.h | 47 + .../include/asn_j2735_r2020/PathNode.h | 43 + .../include/asn_j2735_r2020/PathPrediction.h | 46 + .../include/asn_j2735_r2020/PayloadData.h | 45 + .../asn_j2735_r2020/PedestrianBicycleDetect.h | 45 + .../asn_j2735_r2020/PersonalAssistive.h | 56 + .../asn_j2735_r2020/PersonalClusterRadius.h | 46 + .../PersonalCrossingInProgress.h | 45 + .../asn_j2735_r2020/PersonalCrossingRequest.h | 45 + .../PersonalDeviceUsageState.h | 59 + .../asn_j2735_r2020/PersonalDeviceUserType.h | 59 + .../asn_j2735_r2020/PersonalSafetyMessage.h | 110 + .../include/asn_j2735_r2020/PitchDetected.h | 44 + .../include/asn_j2735_r2020/PitchRate.h | 44 + .../asn_j2735_r2020/PitchRateConfidence.h | 57 + .../asn_j2735_r2020/PivotPointDescription.h | 48 + .../include/asn_j2735_r2020/PivotingAllowed.h | 45 + .../Asn_J2735/include/asn_j2735_r2020/Point.h | 43 + .../asn_j2735_r2020/Position3D-addGrpB.h | 48 + .../asn_j2735_r2020/Position3D-addGrpC.h | 44 + .../asn_j2735_r2020/Position3D-addGrpCarma.h | 48 + .../include/asn_j2735_r2020/Position3D.h | 62 + .../asn_j2735_r2020/PositionConfidence.h | 67 + .../asn_j2735_r2020/PositionConfidenceSet.h | 42 + .../asn_j2735_r2020/PositionOffsetXYZ.h | 42 + .../asn_j2735_r2020/PositionalAccuracy.h | 44 + .../asn_j2735_r2020/PreemptPriorityList.h | 47 + .../asn_j2735_r2020/PrioritizationResponse.h | 48 + .../PrioritizationResponseList.h | 47 + .../PrioritizationResponseStatus.h | 62 + .../include/asn_j2735_r2020/Priority.h | 46 + .../asn_j2735_r2020/PriorityRequestType.h | 58 + .../asn_j2735_r2020/PrivilegedEventFlags.h | 56 + .../asn_j2735_r2020/PrivilegedEvents.h | 46 + .../asn_j2735_r2020/ProbeDataManagement.h | 104 + .../asn_j2735_r2020/ProbeSegmentNumber.h | 46 + .../asn_j2735_r2020/ProbeVehicleData.h | 75 + .../asn_j2735_r2020/PropelledInformation.h | 62 + .../PublicSafetyAndRoadWorkerActivity.h | 56 + .../PublicSafetyDirectingTrafficSubType.h | 57 + .../PublicSafetyEventResponderWorkerType.h | 62 + .../include/asn_j2735_r2020/RTCM-Revision.h | 58 + .../include/asn_j2735_r2020/RTCMPackage.h | 51 + .../include/asn_j2735_r2020/RTCMcorrections.h | 70 + .../include/asn_j2735_r2020/RTCMheader.h | 42 + .../include/asn_j2735_r2020/RTCMmessage.h | 46 + .../include/asn_j2735_r2020/RTCMmessageList.h | 42 + .../include/asn_j2735_r2020/Radius-B12.h | 46 + .../asn_j2735_r2020/RadiusOfCurvature.h | 46 + .../include/asn_j2735_r2020/RainSensor.h | 59 + .../include/asn_j2735_r2020/RegionId.h | 50 + .../include/asn_j2735_r2020/RegionList.h | 47 + .../include/asn_j2735_r2020/RegionOffsets.h | 42 + .../include/asn_j2735_r2020/RegionPointSet.h | 53 + .../asn_j2735_r2020/RegionalExtension.h | 1339 ++ .../asn_j2735_r2020/RegulatorySpeedLimit.h | 42 + .../include/asn_j2735_r2020/RepeatParams.h | 42 + .../include/asn_j2735_r2020/RequestID.h | 46 + .../asn_j2735_r2020/RequestImportanceLevel.h | 67 + .../include/asn_j2735_r2020/RequestSubRole.h | 67 + .../include/asn_j2735_r2020/RequestedItem.h | 71 + .../asn_j2735_r2020/RequestedItemList.h | 42 + .../asn_j2735_r2020/RequestorDescription.h | 73 + .../asn_j2735_r2020/RequestorPositionVector.h | 53 + .../include/asn_j2735_r2020/RequestorType.h | 59 + .../asn_j2735_r2020/ResponderGroupAffected.h | 68 + .../include/asn_j2735_r2020/ResponseType.h | 61 + .../asn_j2735_r2020/RestrictionAppliesTo.h | 68 + .../RestrictionClassAssignment.h | 42 + .../asn_j2735_r2020/RestrictionClassID.h | 46 + .../asn_j2735_r2020/RestrictionClassList.h | 47 + .../RestrictionUserType-addGrpC.h | 44 + .../asn_j2735_r2020/RestrictionUserType.h | 71 + .../asn_j2735_r2020/RestrictionUserTypeList.h | 47 + .../include/asn_j2735_r2020/RoadLaneSetList.h | 47 + .../include/asn_j2735_r2020/RoadRegulatorID.h | 46 + .../include/asn_j2735_r2020/RoadSegment.h | 71 + .../include/asn_j2735_r2020/RoadSegmentID.h | 46 + .../include/asn_j2735_r2020/RoadSegmentList.h | 47 + .../asn_j2735_r2020/RoadSegmentReferenceID.h | 42 + .../include/asn_j2735_r2020/RoadSideAlert.h | 79 + .../include/asn_j2735_r2020/RoadSignID.h | 46 + .../asn_j2735_r2020/RoadwayCrownAngle.h | 46 + .../include/asn_j2735_r2020/RollDetected.h | 44 + .../include/asn_j2735_r2020/RollRate.h | 44 + .../asn_j2735_r2020/RollRateConfidence.h | 57 + .../Asn_J2735/include/asn_j2735_r2020/SPAT.h | 62 + .../include/asn_j2735_r2020/SPAT_TimeMark.h | 46 + .../include/asn_j2735_r2020/SSPindex.h | 46 + .../include/asn_j2735_r2020/Sample.h | 41 + .../include/asn_j2735_r2020/Scale-B12.h | 46 + .../include/asn_j2735_r2020/Second.h | 46 + .../include/asn_j2735_r2020/SecondOfTime.h | 46 + .../include/asn_j2735_r2020/SecondsAngle.h | 46 + .../asn_j2735_r2020/SegmentAttributeLL.h | 92 + .../asn_j2735_r2020/SegmentAttributeLLList.h | 42 + .../asn_j2735_r2020/SegmentAttributeXY.h | 92 + .../asn_j2735_r2020/SegmentAttributeXYList.h | 42 + .../asn_j2735_r2020/SemiMajorAxisAccuracy.h | 46 + .../SemiMajorAxisOrientation.h | 46 + .../asn_j2735_r2020/SemiMinorAxisAccuracy.h | 46 + .../SensorDataSharingMessage.h | 54 + .../include/asn_j2735_r2020/ShapePointSet.h | 55 + .../include/asn_j2735_r2020/SignPrority.h | 46 + .../asn_j2735_r2020/SignalControlZone.h | 44 + .../include/asn_j2735_r2020/SignalGroupID.h | 46 + .../asn_j2735_r2020/SignalHeadLocation.h | 46 + .../asn_j2735_r2020/SignalHeadLocationList.h | 47 + .../include/asn_j2735_r2020/SignalReqScheme.h | 45 + .../include/asn_j2735_r2020/SignalRequest.h | 67 + .../asn_j2735_r2020/SignalRequestList.h | 47 + .../asn_j2735_r2020/SignalRequestMessage.h | 67 + .../asn_j2735_r2020/SignalRequestPackage.h | 63 + .../asn_j2735_r2020/SignalRequesterInfo.h | 57 + .../include/asn_j2735_r2020/SignalStatus.h | 62 + .../asn_j2735_r2020/SignalStatusList.h | 47 + .../asn_j2735_r2020/SignalStatusMessage.h | 64 + .../asn_j2735_r2020/SignalStatusPackage.h | 71 + .../asn_j2735_r2020/SignalStatusPackageList.h | 47 + .../include/asn_j2735_r2020/SirenInUse.h | 55 + .../include/asn_j2735_r2020/SizeValue.h | 44 + .../asn_j2735_r2020/SizeValueConfidence.h | 63 + .../include/asn_j2735_r2020/Snapshot.h | 54 + .../asn_j2735_r2020/SnapshotDistance.h | 44 + .../include/asn_j2735_r2020/SnapshotTime.h | 44 + .../SpecialVehicleExtensions.h | 55 + .../Asn_J2735/include/asn_j2735_r2020/Speed.h | 46 + .../include/asn_j2735_r2020/SpeedAdvice.h | 46 + .../include/asn_j2735_r2020/SpeedConfidence.h | 59 + .../include/asn_j2735_r2020/SpeedLimit.h | 69 + .../include/asn_j2735_r2020/SpeedLimitList.h | 47 + .../include/asn_j2735_r2020/SpeedLimitType.h | 67 + .../include/asn_j2735_r2020/SpeedProfile.h | 44 + .../asn_j2735_r2020/SpeedProfileMeasurement.h | 46 + .../SpeedProfileMeasurementList.h | 42 + .../SpeedandHeadingandThrottleConfidence.h | 44 + .../asn_j2735_r2020/StabilityControlStatus.h | 55 + .../include/asn_j2735_r2020/StationID.h | 47 + .../SteeringAxleLubePressure.h | 46 + .../asn_j2735_r2020/SteeringAxleTemperature.h | 46 + .../asn_j2735_r2020/SteeringWheelAngle.h | 46 + .../SteeringWheelAngleConfidence.h | 55 + .../SteeringWheelAngleRateOfChange.h | 46 + .../include/asn_j2735_r2020/SummerTime.h | 53 + .../include/asn_j2735_r2020/SunSensor.h | 46 + .../SupplementalVehicleExtensions.h | 82 + .../include/asn_j2735_r2020/TemporaryID.h | 46 + .../include/asn_j2735_r2020/TenthSecond.h | 46 + .../include/asn_j2735_r2020/TermDistance.h | 46 + .../include/asn_j2735_r2020/TermTime.h | 46 + .../include/asn_j2735_r2020/TestMessage00.h | 54 + .../include/asn_j2735_r2020/TestMessage01.h | 54 + .../include/asn_j2735_r2020/TestMessage02.h | 48 + .../include/asn_j2735_r2020/TestMessage03.h | 46 + .../include/asn_j2735_r2020/TestMessage04.h | 44 + .../include/asn_j2735_r2020/TestMessage05.h | 44 + .../include/asn_j2735_r2020/TestMessage06.h | 52 + .../include/asn_j2735_r2020/TestMessage07.h | 52 + .../include/asn_j2735_r2020/TestMessage08.h | 52 + .../include/asn_j2735_r2020/TestMessage09.h | 52 + .../include/asn_j2735_r2020/TestMessage10.h | 52 + .../include/asn_j2735_r2020/TestMessage11.h | 52 + .../include/asn_j2735_r2020/TestMessage12.h | 52 + .../include/asn_j2735_r2020/TestMessage13.h | 52 + .../include/asn_j2735_r2020/TestMessage14.h | 52 + .../include/asn_j2735_r2020/TestMessage15.h | 52 + .../asn_j2735_r2020/ThrottleConfidence.h | 55 + .../asn_j2735_r2020/ThrottlePosition.h | 46 + .../asn_j2735_r2020/TimeChangeDetails.h | 46 + .../include/asn_j2735_r2020/TimeConfidence.h | 91 + .../asn_j2735_r2020/TimeIntervalConfidence.h | 46 + .../include/asn_j2735_r2020/TimeOffset.h | 46 + .../include/asn_j2735_r2020/TimeRemaining.h | 46 + .../include/asn_j2735_r2020/TireData.h | 56 + .../include/asn_j2735_r2020/TireDataList.h | 47 + .../include/asn_j2735_r2020/TireLeakageRate.h | 46 + .../include/asn_j2735_r2020/TireLocation.h | 46 + .../include/asn_j2735_r2020/TirePressure.h | 46 + .../TirePressureThresholdDetection.h | 59 + .../include/asn_j2735_r2020/TireTemp.h | 46 + .../asn_j2735_r2020/TractionControlStatus.h | 55 + .../asn_j2735_r2020/TrafficControlBounds.h | 58 + .../asn_j2735_r2020/TrafficControlDetail.h | 146 + .../asn_j2735_r2020/TrafficControlGeometry.h | 66 + .../asn_j2735_r2020/TrafficControlMessage.h | 59 + .../TrafficControlMessageV01.h | 61 + .../asn_j2735_r2020/TrafficControlPackage.h | 49 + .../asn_j2735_r2020/TrafficControlParams.h | 53 + .../asn_j2735_r2020/TrafficControlPathPart.h | 56 + .../asn_j2735_r2020/TrafficControlRequest.h | 59 + .../TrafficControlRequestV01.h | 57 + .../asn_j2735_r2020/TrafficControlSchedule.h | 60 + .../asn_j2735_r2020/TrafficControlType.h | 74 + .../asn_j2735_r2020/TrafficControlValue.h | 113 + .../asn_j2735_r2020/TrafficControlVehClass.h | 73 + .../include/asn_j2735_r2020/TrailerData.h | 48 + .../asn_j2735_r2020/TrailerHistoryPoint.h | 52 + .../asn_j2735_r2020/TrailerHistoryPointList.h | 47 + .../include/asn_j2735_r2020/TrailerMass.h | 46 + .../asn_j2735_r2020/TrailerUnitDescription.h | 74 + .../TrailerUnitDescriptionList.h | 47 + .../include/asn_j2735_r2020/TrailerWeight.h | 46 + .../include/asn_j2735_r2020/TransitStatus.h | 55 + .../asn_j2735_r2020/TransitVehicleOccupancy.h | 59 + .../asn_j2735_r2020/TransitVehicleStatus.h | 56 + .../asn_j2735_r2020/TransmissionAndSpeed.h | 42 + .../asn_j2735_r2020/TransmissionState.h | 59 + .../asn_j2735_r2020/TravelerDataFrame.h | 119 + .../asn_j2735_r2020/TravelerDataFrameList.h | 47 + .../asn_j2735_r2020/TravelerInfoType.h | 58 + .../asn_j2735_r2020/TravelerInformation.h | 66 + .../include/asn_j2735_r2020/URL-Base.h | 46 + .../include/asn_j2735_r2020/URL-Link.h | 45 + .../include/asn_j2735_r2020/URL-Short.h | 46 + .../include/asn_j2735_r2020/UniqueMSGID.h | 46 + .../asn_j2735_r2020/UserSizeAndBehaviour.h | 55 + .../include/asn_j2735_r2020/VINstring.h | 46 + .../include/asn_j2735_r2020/ValidRegion.h | 65 + .../asn_j2735_r2020/VehicleClassification.h | 72 + .../include/asn_j2735_r2020/VehicleData.h | 55 + .../asn_j2735_r2020/VehicleEventFlags.h | 63 + .../asn_j2735_r2020/VehicleGroupAffected.h | 89 + .../include/asn_j2735_r2020/VehicleHeight.h | 46 + .../include/asn_j2735_r2020/VehicleID.h | 53 + .../include/asn_j2735_r2020/VehicleIdent.h | 80 + .../include/asn_j2735_r2020/VehicleLength.h | 46 + .../include/asn_j2735_r2020/VehicleMass.h | 46 + .../asn_j2735_r2020/VehicleSafetyExtensions.h | 56 + .../include/asn_j2735_r2020/VehicleSize.h | 42 + .../asn_j2735_r2020/VehicleSizeConfidence.h | 42 + .../include/asn_j2735_r2020/VehicleStatus.h | 157 + .../VehicleStatusDeviceTypeTag.h | 83 + .../asn_j2735_r2020/VehicleStatusRequest.h | 50 + .../VehicleStatusRequestList.h | 47 + .../asn_j2735_r2020/VehicleToLanePosition.h | 46 + .../VehicleToLanePositionList.h | 47 + .../include/asn_j2735_r2020/VehicleType.h | 70 + .../include/asn_j2735_r2020/VehicleWidth.h | 46 + .../include/asn_j2735_r2020/Velocity.h | 46 + .../include/asn_j2735_r2020/VertOffset-B07.h | 46 + .../include/asn_j2735_r2020/VertOffset-B08.h | 46 + .../include/asn_j2735_r2020/VertOffset-B09.h | 46 + .../include/asn_j2735_r2020/VertOffset-B10.h | 46 + .../include/asn_j2735_r2020/VertOffset-B11.h | 46 + .../include/asn_j2735_r2020/VertOffset-B12.h | 46 + .../asn_j2735_r2020/VerticalAcceleration.h | 46 + .../VerticalAccelerationThreshold.h | 55 + .../include/asn_j2735_r2020/VerticalOffset.h | 68 + .../include/asn_j2735_r2020/WaitOnStopline.h | 45 + .../include/asn_j2735_r2020/WeatherProbe.h | 53 + .../include/asn_j2735_r2020/WeatherReport.h | 54 + .../asn_j2735_r2020/WheelEndElectFault.h | 55 + .../asn_j2735_r2020/WheelSensorStatus.h | 55 + .../include/asn_j2735_r2020/WiperRate.h | 46 + .../include/asn_j2735_r2020/WiperSet.h | 44 + .../include/asn_j2735_r2020/WiperStatus.h | 61 + .../include/asn_j2735_r2020/WorkZone.h | 69 + .../include/asn_j2735_r2020/YawDetected.h | 44 + .../include/asn_j2735_r2020/YawRate.h | 46 + .../asn_j2735_r2020/YawRateConfidence.h | 59 + .../Asn_J2735/include/asn_j2735_r2020/Year.h | 46 + .../include/asn_j2735_r2020/ZoneLength.h | 46 + .../Asn_J2735/include/asn_j2735_r2020/Zoom.h | 46 + .../include/asn_j2735_r2020/aper_decoder.h | 47 + .../include/asn_j2735_r2020/aper_encoder.h | 63 + .../include/asn_j2735_r2020/aper_opentype.h | 30 + .../include/asn_j2735_r2020/aper_support.h | 63 + .../include/asn_j2735_r2020/asn_SEQUENCE_OF.h | 52 + .../include/asn_j2735_r2020/asn_SET_OF.h | 72 + .../include/asn_j2735_r2020/asn_application.h | 173 + .../include/asn_j2735_r2020/asn_bit_data.h | 83 + .../include/asn_j2735_r2020/asn_codecs.h | 108 + .../include/asn_j2735_r2020/asn_codecs_prim.h | 56 + .../include/asn_j2735_r2020/asn_config.h | 3 + .../include/asn_j2735_r2020/asn_constant.h | 308 + .../include/asn_j2735_r2020/asn_internal.h | 170 + .../include/asn_j2735_r2020/asn_ioc.h | 51 + .../include/asn_j2735_r2020/asn_random_fill.h | 51 + .../include/asn_j2735_r2020/asn_system.h | 169 + .../include/asn_j2735_r2020/ber_decoder.h | 66 + .../include/asn_j2735_r2020/ber_tlv_length.h | 50 + .../include/asn_j2735_r2020/ber_tlv_tag.h | 60 + .../include/asn_j2735_r2020/constr_CHOICE.h | 119 + .../include/asn_j2735_r2020/constr_SEQUENCE.h | 95 + .../asn_j2735_r2020/constr_SEQUENCE_OF.h | 67 + .../include/asn_j2735_r2020/constr_SET_OF.h | 102 + .../include/asn_j2735_r2020/constr_TYPE.h | 295 + .../include/asn_j2735_r2020/constraints.h | 63 + .../include/asn_j2735_r2020/der_encoder.h | 68 + .../include/asn_j2735_r2020/oer_decoder.h | 72 + .../include/asn_j2735_r2020/oer_encoder.h | 70 + .../include/asn_j2735_r2020/oer_support.h | 47 + .../include/asn_j2735_r2020/per_decoder.h | 30 + .../include/asn_j2735_r2020/per_encoder.h | 38 + .../include/asn_j2735_r2020/per_opentype.h | 24 + .../include/asn_j2735_r2020/per_support.h | 54 + .../include/asn_j2735_r2020/uper_decoder.h | 47 + .../include/asn_j2735_r2020/uper_encoder.h | 62 + .../include/asn_j2735_r2020/uper_opentype.h | 34 + .../include/asn_j2735_r2020/uper_support.h | 77 + .../include/asn_j2735_r2020/xer_decoder.h | 106 + .../include/asn_j2735_r2020/xer_encoder.h | 83 + .../include/asn_j2735_r2020/xer_support.h | 55 + src/tmx/Asn_J2735/src/r2020/ANY.c | 80 + src/tmx/Asn_J2735/src/r2020/ANY_aper.c | 190 + src/tmx/Asn_J2735/src/r2020/ANY_ber.c | 116 + src/tmx/Asn_J2735/src/r2020/ANY_uper.c | 108 + src/tmx/Asn_J2735/src/r2020/ANY_xer.c | 22 + .../src/r2020/AccelSteerYawRateConfidence.c | 102 + src/tmx/Asn_J2735/src/r2020/Acceleration.c | 76 + .../src/r2020/AccelerationConfidence.c | 80 + .../Asn_J2735/src/r2020/AccelerationSet4Way.c | 120 + src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c | 76 + .../Asn_J2735/src/r2020/AddGrpB_Elevation.c | 76 + .../Asn_J2735/src/r2020/AddGrpB_MsgCount.c | 76 + .../Asn_J2735/src/r2020/AddGrpB_TimeMark.c | 228 + src/tmx/Asn_J2735/src/r2020/AdvisorySpeed.c | 261 + .../Asn_J2735/src/r2020/AdvisorySpeedList.c | 72 + .../Asn_J2735/src/r2020/AdvisorySpeedType.c | 74 + .../Asn_J2735/src/r2020/AllowedManeuvers.c | 82 + src/tmx/Asn_J2735/src/r2020/Altitude.c | 84 + .../Asn_J2735/src/r2020/AltitudeConfidence.c | 96 + src/tmx/Asn_J2735/src/r2020/AltitudeValue.c | 76 + .../Asn_J2735/src/r2020/AmbientAirPressure.c | 76 + .../src/r2020/AmbientAirTemperature.c | 76 + src/tmx/Asn_J2735/src/r2020/AngularVelocity.c | 60 + .../src/r2020/AngularVelocityConfidence.c | 62 + .../Asn_J2735/src/r2020/AnimalPropelledType.c | 74 + src/tmx/Asn_J2735/src/r2020/AnimalType.c | 74 + .../Asn_J2735/src/r2020/AntennaOffsetSet.c | 102 + .../Asn_J2735/src/r2020/AntiLockBrakeStatus.c | 72 + src/tmx/Asn_J2735/src/r2020/ApproachID.c | 76 + src/tmx/Asn_J2735/src/r2020/ApproachOrLane.c | 93 + src/tmx/Asn_J2735/src/r2020/Attachment.c | 80 + .../Asn_J2735/src/r2020/AttachmentRadius.c | 76 + src/tmx/Asn_J2735/src/r2020/Attitude.c | 70 + .../Asn_J2735/src/r2020/AttitudeConfidence.c | 70 + .../src/r2020/AuxiliaryBrakeStatus.c | 72 + src/tmx/Asn_J2735/src/r2020/AxleLocation.c | 76 + src/tmx/Asn_J2735/src/r2020/AxleWeight.c | 76 + src/tmx/Asn_J2735/src/r2020/AxleWeightList.c | 72 + src/tmx/Asn_J2735/src/r2020/AxleWeightSet.c | 86 + src/tmx/Asn_J2735/src/r2020/BIT_STRING.c | 213 + src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c | 168 + .../Asn_J2735/src/r2020/BIT_STRING_print.c | 69 + .../Asn_J2735/src/r2020/BIT_STRING_rfill.c | 124 + src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c | 244 + src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c | 70 + src/tmx/Asn_J2735/src/r2020/BOOLEAN.c | 128 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c | 61 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c | 104 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c | 54 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c | 33 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c | 56 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c | 58 + src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c | 74 + src/tmx/Asn_J2735/src/r2020/BSMcoreData.c | 300 + .../r2020/BasicSafetyMessage-addGrpCarma.c | 171 + .../Asn_J2735/src/r2020/BasicSafetyMessage.c | 310 + .../Asn_J2735/src/r2020/BasicVehicleClass.c | 76 + .../Asn_J2735/src/r2020/BasicVehicleRole.c | 112 + .../src/r2020/BrakeAppliedPressure.c | 96 + .../Asn_J2735/src/r2020/BrakeAppliedStatus.c | 82 + .../Asn_J2735/src/r2020/BrakeBoostApplied.c | 70 + .../Asn_J2735/src/r2020/BrakeSystemStatus.c | 156 + src/tmx/Asn_J2735/src/r2020/BumperHeight.c | 76 + src/tmx/Asn_J2735/src/r2020/BumperHeights.c | 84 + src/tmx/Asn_J2735/src/r2020/CargoWeight.c | 76 + src/tmx/Asn_J2735/src/r2020/Circle.c | 102 + .../src/r2020/ClassificationConfidence.c | 64 + src/tmx/Asn_J2735/src/r2020/CoarseHeading.c | 76 + src/tmx/Asn_J2735/src/r2020/CodeWord.c | 77 + .../src/r2020/CoefficientOfFriction.c | 76 + .../Asn_J2735/src/r2020/CommonSafetyRequest.c | 243 + src/tmx/Asn_J2735/src/r2020/Common_Angle.c | 76 + .../Asn_J2735/src/r2020/Common_Elevation.c | 76 + src/tmx/Asn_J2735/src/r2020/Common_MsgCount.c | 76 + src/tmx/Asn_J2735/src/r2020/ComputedLane.c | 449 + src/tmx/Asn_J2735/src/r2020/Confidence.c | 76 + src/tmx/Asn_J2735/src/r2020/ConfidenceSet.c | 176 + src/tmx/Asn_J2735/src/r2020/ConnectingLane.c | 86 + src/tmx/Asn_J2735/src/r2020/Connection.c | 140 + .../r2020/ConnectionManeuverAssist-addGrpC.c | 86 + .../src/r2020/ConnectionManeuverAssist.c | 261 + src/tmx/Asn_J2735/src/r2020/ConnectsToList.c | 72 + src/tmx/Asn_J2735/src/r2020/Count.c | 76 + src/tmx/Asn_J2735/src/r2020/DDate.c | 102 + src/tmx/Asn_J2735/src/r2020/DDateTime.c | 176 + src/tmx/Asn_J2735/src/r2020/DDay.c | 76 + src/tmx/Asn_J2735/src/r2020/DFullTime.c | 138 + src/tmx/Asn_J2735/src/r2020/DHour.c | 76 + src/tmx/Asn_J2735/src/r2020/DMinute.c | 76 + src/tmx/Asn_J2735/src/r2020/DMonth.c | 76 + src/tmx/Asn_J2735/src/r2020/DMonthDay.c | 84 + src/tmx/Asn_J2735/src/r2020/DOffset.c | 76 + src/tmx/Asn_J2735/src/r2020/DSRCmsgID.c | 76 + src/tmx/Asn_J2735/src/r2020/DSecond.c | 76 + src/tmx/Asn_J2735/src/r2020/DTime.c | 122 + src/tmx/Asn_J2735/src/r2020/DYear.c | 76 + src/tmx/Asn_J2735/src/r2020/DYearMonth.c | 84 + src/tmx/Asn_J2735/src/r2020/DailySchedule.c | 126 + src/tmx/Asn_J2735/src/r2020/DataParameters.c | 330 + src/tmx/Asn_J2735/src/r2020/Day.c | 76 + src/tmx/Asn_J2735/src/r2020/DayOfWeek.c | 80 + src/tmx/Asn_J2735/src/r2020/DaySchedule.c | 126 + src/tmx/Asn_J2735/src/r2020/DegreesLat.c | 76 + src/tmx/Asn_J2735/src/r2020/DegreesLong.c | 76 + src/tmx/Asn_J2735/src/r2020/DeltaAngle.c | 76 + src/tmx/Asn_J2735/src/r2020/DeltaTime.c | 76 + src/tmx/Asn_J2735/src/r2020/DescriptiveName.c | 91 + .../src/r2020/DetectedObjectCommonData.c | 222 + .../Asn_J2735/src/r2020/DetectedObjectData.c | 62 + .../Asn_J2735/src/r2020/DetectedObjectList.c | 52 + .../src/r2020/DetectedObjectOptionalData.c | 75 + .../src/r2020/DetectedObstacleData.c | 60 + src/tmx/Asn_J2735/src/r2020/DetectedVRUData.c | 82 + .../Asn_J2735/src/r2020/DetectedVehicleData.c | 142 + src/tmx/Asn_J2735/src/r2020/DirectionOfUse.c | 72 + src/tmx/Asn_J2735/src/r2020/DisabledVehicle.c | 123 + src/tmx/Asn_J2735/src/r2020/DistanceUnits.c | 80 + .../src/r2020/DriveAxleLiftAirPressure.c | 76 + .../Asn_J2735/src/r2020/DriveAxleLocation.c | 76 + .../src/r2020/DriveAxleLubePressure.c | 76 + .../src/r2020/DriveAxleTemperature.c | 76 + .../Asn_J2735/src/r2020/DrivenLineOffsetLg.c | 76 + .../Asn_J2735/src/r2020/DrivenLineOffsetSm.c | 76 + .../Asn_J2735/src/r2020/DrivingWheelAngle.c | 76 + src/tmx/Asn_J2735/src/r2020/Duration.c | 76 + src/tmx/Asn_J2735/src/r2020/EXTERNAL.c | 228 + .../Asn_J2735/src/r2020/ElevationConfidence.c | 96 + .../Asn_J2735/src/r2020/EmergencyDetails.c | 158 + .../src/r2020/EmergencyVehicleAlert.c | 351 + src/tmx/Asn_J2735/src/r2020/EmissionType.c | 76 + src/tmx/Asn_J2735/src/r2020/EnabledLaneList.c | 72 + src/tmx/Asn_J2735/src/r2020/EpochMins.c | 70 + src/tmx/Asn_J2735/src/r2020/EquipmentType.c | 62 + .../Asn_J2735/src/r2020/EssMobileFriction.c | 76 + src/tmx/Asn_J2735/src/r2020/EssPrecipRate.c | 76 + .../Asn_J2735/src/r2020/EssPrecipSituation.c | 94 + src/tmx/Asn_J2735/src/r2020/EssPrecipYesNo.c | 70 + .../Asn_J2735/src/r2020/EssSolarRadiation.c | 76 + .../Asn_J2735/src/r2020/EventDescription.c | 364 + src/tmx/Asn_J2735/src/r2020/ExitService.c | 215 + src/tmx/Asn_J2735/src/r2020/Extent.c | 96 + src/tmx/Asn_J2735/src/r2020/ExteriorLights.c | 82 + src/tmx/Asn_J2735/src/r2020/FuelType.c | 76 + .../Asn_J2735/src/r2020/FullPositionVector.c | 230 + src/tmx/Asn_J2735/src/r2020/FurtherInfoID.c | 77 + src/tmx/Asn_J2735/src/r2020/GNSSstatus.c | 82 + src/tmx/Asn_J2735/src/r2020/GenericLane.c | 333 + .../Asn_J2735/src/r2020/GenericLocations.c | 258 + src/tmx/Asn_J2735/src/r2020/GenericSignage.c | 215 + .../Asn_J2735/src/r2020/GeographicalPath.c | 418 + .../Asn_J2735/src/r2020/GeometricProjection.c | 243 + src/tmx/Asn_J2735/src/r2020/GraphicString.c | 91 + src/tmx/Asn_J2735/src/r2020/GrossDistance.c | 76 + src/tmx/Asn_J2735/src/r2020/GrossSpeed.c | 76 + src/tmx/Asn_J2735/src/r2020/Header.c | 122 + src/tmx/Asn_J2735/src/r2020/Heading.c | 76 + .../Asn_J2735/src/r2020/HeadingConfidence.c | 80 + src/tmx/Asn_J2735/src/r2020/HeadingSlice.c | 82 + src/tmx/Asn_J2735/src/r2020/Holiday.c | 68 + src/tmx/Asn_J2735/src/r2020/Hour.c | 76 + .../Asn_J2735/src/r2020/HumanPropelledType.c | 78 + src/tmx/Asn_J2735/src/r2020/IA5String.c | 133 + src/tmx/Asn_J2735/src/r2020/INTEGER.c | 738 + src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c | 308 + src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c | 72 + src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c | 174 + src/tmx/Asn_J2735/src/r2020/INTEGER_print.c | 26 + src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c | 92 + src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c | 236 + src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c | 351 + src/tmx/Asn_J2735/src/r2020/ITIScodes.c | 76 + .../Asn_J2735/src/r2020/ITIScodesAndText.c | 215 + src/tmx/Asn_J2735/src/r2020/ITIStext.c | 91 + src/tmx/Asn_J2735/src/r2020/ITIStextPhrase.c | 91 + src/tmx/Asn_J2735/src/r2020/Id128b.c | 65 + src/tmx/Asn_J2735/src/r2020/Id64b.c | 65 + .../src/r2020/IncidentResponseEquipment.c | 210 + .../src/r2020/IntersectionAccessPoint.c | 111 + .../src/r2020/IntersectionCollision.c | 333 + .../src/r2020/IntersectionGeometry.c | 315 + .../src/r2020/IntersectionGeometryList.c | 72 + src/tmx/Asn_J2735/src/r2020/IntersectionID.c | 76 + .../src/r2020/IntersectionReferenceID.c | 86 + .../src/r2020/IntersectionState-addGrpC.c | 68 + .../Asn_J2735/src/r2020/IntersectionState.c | 333 + .../src/r2020/IntersectionStateList.c | 72 + .../src/r2020/IntersectionStatusObject.c | 82 + src/tmx/Asn_J2735/src/r2020/IsDolly.c | 39 + .../Asn_J2735/src/r2020/Iso3833VehicleType.c | 76 + src/tmx/Asn_J2735/src/r2020/J1939data.c | 230 + .../src/r2020/LaneAttributes-Barrier.c | 82 + .../Asn_J2735/src/r2020/LaneAttributes-Bike.c | 82 + .../src/r2020/LaneAttributes-Crosswalk.c | 82 + .../src/r2020/LaneAttributes-Parking.c | 82 + .../src/r2020/LaneAttributes-Sidewalk.c | 82 + .../src/r2020/LaneAttributes-Striping.c | 82 + .../src/r2020/LaneAttributes-TrackedVehicle.c | 82 + .../src/r2020/LaneAttributes-Vehicle.c | 82 + src/tmx/Asn_J2735/src/r2020/LaneAttributes.c | 122 + .../Asn_J2735/src/r2020/LaneConnectionID.c | 76 + .../src/r2020/LaneDataAttribute-addGrpB.c | 43 + .../Asn_J2735/src/r2020/LaneDataAttribute.c | 286 + .../src/r2020/LaneDataAttributeList.c | 72 + src/tmx/Asn_J2735/src/r2020/LaneDirection.c | 82 + src/tmx/Asn_J2735/src/r2020/LaneID.c | 76 + src/tmx/Asn_J2735/src/r2020/LaneList.c | 72 + src/tmx/Asn_J2735/src/r2020/LaneSharing.c | 82 + .../Asn_J2735/src/r2020/LaneTypeAttributes.c | 201 + src/tmx/Asn_J2735/src/r2020/LaneWidth.c | 76 + src/tmx/Asn_J2735/src/r2020/Latitude.c | 76 + src/tmx/Asn_J2735/src/r2020/LatitudeDMS.c | 76 + src/tmx/Asn_J2735/src/r2020/LatitudeDMS2.c | 102 + src/tmx/Asn_J2735/src/r2020/LayerID.c | 76 + src/tmx/Asn_J2735/src/r2020/LayerType.c | 82 + src/tmx/Asn_J2735/src/r2020/LightbarInUse.c | 80 + .../Asn_J2735/src/r2020/Location-quality.c | 80 + src/tmx/Asn_J2735/src/r2020/Location-tech.c | 86 + src/tmx/Asn_J2735/src/r2020/Longitude.c | 76 + src/tmx/Asn_J2735/src/r2020/LongitudeDMS.c | 76 + src/tmx/Asn_J2735/src/r2020/LongitudeDMS2.c | 102 + src/tmx/Asn_J2735/src/r2020/MUTCDCode.c | 80 + .../Asn_J2735/src/r2020/ManeuverAssistList.c | 72 + src/tmx/Asn_J2735/src/r2020/MapData-addGrpC.c | 68 + src/tmx/Asn_J2735/src/r2020/MapData.c | 315 + src/tmx/Asn_J2735/src/r2020/MaxTimetoChange.c | 76 + .../src/r2020/MeasurementTimeOffset.c | 64 + .../src/r2020/MergeDivergeNodeAngle.c | 76 + src/tmx/Asn_J2735/src/r2020/MessageBLOB.c | 77 + src/tmx/Asn_J2735/src/r2020/MessageFrame.c | 872 ++ src/tmx/Asn_J2735/src/r2020/MinTimetoChange.c | 76 + src/tmx/Asn_J2735/src/r2020/Minute.c | 76 + src/tmx/Asn_J2735/src/r2020/MinuteOfTheYear.c | 76 + src/tmx/Asn_J2735/src/r2020/MinutesAngle.c | 76 + src/tmx/Asn_J2735/src/r2020/MinutesDuration.c | 76 + .../Asn_J2735/src/r2020/MobilityDynamicID.c | 79 + .../src/r2020/MobilityECEFCoordinate.c | 64 + .../Asn_J2735/src/r2020/MobilityECEFOffset.c | 70 + .../src/r2020/MobilityECEFOffsetCoordinate.c | 64 + src/tmx/Asn_J2735/src/r2020/MobilityGUID.c | 79 + src/tmx/Asn_J2735/src/r2020/MobilityHeader.c | 90 + .../Asn_J2735/src/r2020/MobilityLocation.c | 80 + .../src/r2020/MobilityLocationOffsets.c | 52 + .../Asn_J2735/src/r2020/MobilityOperation.c | 60 + .../Asn_J2735/src/r2020/MobilityParameters.c | 79 + src/tmx/Asn_J2735/src/r2020/MobilityPath.c | 60 + .../Asn_J2735/src/r2020/MobilityPlanType.c | 64 + src/tmx/Asn_J2735/src/r2020/MobilityRequest.c | 122 + .../Asn_J2735/src/r2020/MobilityResponse.c | 60 + .../src/r2020/MobilityResponseFlag.c | 31 + .../Asn_J2735/src/r2020/MobilityStaticID.c | 79 + .../Asn_J2735/src/r2020/MobilityStrategy.c | 79 + .../Asn_J2735/src/r2020/MobilityTimestamp.c | 79 + src/tmx/Asn_J2735/src/r2020/MobilityUrgency.c | 64 + src/tmx/Asn_J2735/src/r2020/Month.c | 76 + .../src/r2020/MotorizedPropelledType.c | 78 + .../src/r2020/MovementEvent-addGrpB.c | 158 + src/tmx/Asn_J2735/src/r2020/MovementEvent.c | 225 + .../Asn_J2735/src/r2020/MovementEventList.c | 72 + src/tmx/Asn_J2735/src/r2020/MovementList.c | 72 + .../Asn_J2735/src/r2020/MovementPhaseState.c | 84 + src/tmx/Asn_J2735/src/r2020/MovementState.c | 243 + src/tmx/Asn_J2735/src/r2020/MsgCRC.c | 77 + .../src/r2020/MultiVehicleResponse.c | 72 + src/tmx/Asn_J2735/src/r2020/NMEA-MsgType.c | 76 + src/tmx/Asn_J2735/src/r2020/NMEA-Payload.c | 77 + src/tmx/Asn_J2735/src/r2020/NMEA-Revision.c | 80 + src/tmx/Asn_J2735/src/r2020/NMEAcorrections.c | 261 + src/tmx/Asn_J2735/src/r2020/NULL.c | 299 + .../Asn_J2735/src/r2020/NativeEnumerated.c | 108 + .../src/r2020/NativeEnumerated_aper.c | 157 + .../src/r2020/NativeEnumerated_oer.c | 144 + .../src/r2020/NativeEnumerated_uper.c | 135 + .../src/r2020/NativeEnumerated_xer.c | 36 + src/tmx/Asn_J2735/src/r2020/NativeInteger.c | 152 + .../Asn_J2735/src/r2020/NativeInteger_aper.c | 69 + .../Asn_J2735/src/r2020/NativeInteger_ber.c | 130 + .../Asn_J2735/src/r2020/NativeInteger_oer.c | 94 + .../Asn_J2735/src/r2020/NativeInteger_print.c | 43 + .../Asn_J2735/src/r2020/NativeInteger_rfill.c | 83 + .../Asn_J2735/src/r2020/NativeInteger_uper.c | 70 + .../Asn_J2735/src/r2020/NativeInteger_xer.c | 78 + src/tmx/Asn_J2735/src/r2020/Node-LL-24B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LL-28B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LL-32B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LL-36B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LL-44B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LL-48B.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LLdms-48b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LLdms-80b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-LLmD-64b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-20b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-22b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-24b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-26b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-28b.c | 84 + src/tmx/Asn_J2735/src/r2020/Node-XY-32b.c | 84 + src/tmx/Asn_J2735/src/r2020/NodeAttributeLL.c | 90 + .../Asn_J2735/src/r2020/NodeAttributeLLList.c | 72 + .../Asn_J2735/src/r2020/NodeAttributeSetLL.c | 279 + .../Asn_J2735/src/r2020/NodeAttributeSetXY.c | 279 + src/tmx/Asn_J2735/src/r2020/NodeAttributeXY.c | 90 + .../Asn_J2735/src/r2020/NodeAttributeXYList.c | 72 + src/tmx/Asn_J2735/src/r2020/NodeLL.c | 86 + src/tmx/Asn_J2735/src/r2020/NodeListLL.c | 75 + src/tmx/Asn_J2735/src/r2020/NodeListXY.c | 93 + .../Asn_J2735/src/r2020/NodeOffsetPointLL.c | 201 + .../src/r2020/NodeOffsetPointXY-addGrpB.c | 93 + .../Asn_J2735/src/r2020/NodeOffsetPointXY.c | 201 + src/tmx/Asn_J2735/src/r2020/NodeSetLL.c | 72 + src/tmx/Asn_J2735/src/r2020/NodeSetXY.c | 72 + src/tmx/Asn_J2735/src/r2020/NodeXY.c | 86 + .../src/r2020/NumberOfParticipantsInCluster.c | 74 + .../Asn_J2735/src/r2020/OBJECT_IDENTIFIER.c | 532 + .../src/r2020/OBJECT_IDENTIFIER_print.c | 30 + .../src/r2020/OBJECT_IDENTIFIER_rfill.c | 73 + .../src/r2020/OBJECT_IDENTIFIER_xer.c | 80 + src/tmx/Asn_J2735/src/r2020/OCTET_STRING.c | 383 + .../Asn_J2735/src/r2020/OCTET_STRING_aper.c | 414 + .../Asn_J2735/src/r2020/OCTET_STRING_ber.c | 525 + .../Asn_J2735/src/r2020/OCTET_STRING_oer.c | 166 + .../Asn_J2735/src/r2020/OCTET_STRING_print.c | 65 + .../Asn_J2735/src/r2020/OCTET_STRING_rfill.c | 209 + .../Asn_J2735/src/r2020/OCTET_STRING_uper.c | 319 + .../Asn_J2735/src/r2020/OCTET_STRING_xer.c | 627 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c | 63 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c | 173 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c | 90 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c | 91 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c | 119 + src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c | 166 + src/tmx/Asn_J2735/src/r2020/ObjectCount.c | 76 + .../Asn_J2735/src/r2020/ObjectDescriptor.c | 91 + src/tmx/Asn_J2735/src/r2020/ObjectDistance.c | 64 + src/tmx/Asn_J2735/src/r2020/ObjectID.c | 64 + src/tmx/Asn_J2735/src/r2020/ObjectType.c | 62 + .../Asn_J2735/src/r2020/ObstacleDetection.c | 195 + .../Asn_J2735/src/r2020/ObstacleDirection.c | 76 + .../Asn_J2735/src/r2020/ObstacleDistance.c | 76 + src/tmx/Asn_J2735/src/r2020/ObstacleSize.c | 72 + .../src/r2020/ObstacleSizeConfidence.c | 72 + src/tmx/Asn_J2735/src/r2020/Offset-B09.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B10.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B11.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B12.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B13.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B14.c | 76 + src/tmx/Asn_J2735/src/r2020/Offset-B16.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B12.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B14.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B16.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B18.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B22.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetLL-B24.c | 76 + src/tmx/Asn_J2735/src/r2020/OffsetPoint.c | 126 + src/tmx/Asn_J2735/src/r2020/OffsetSystem.c | 171 + src/tmx/Asn_J2735/src/r2020/OverlayLaneList.c | 72 + src/tmx/Asn_J2735/src/r2020/PartII-Id.c | 76 + src/tmx/Asn_J2735/src/r2020/PartIIcontent.c | 284 + src/tmx/Asn_J2735/src/r2020/PathHistory.c | 104 + .../Asn_J2735/src/r2020/PathHistoryPoint.c | 176 + .../src/r2020/PathHistoryPointList.c | 72 + src/tmx/Asn_J2735/src/r2020/PathNode.c | 214 + src/tmx/Asn_J2735/src/r2020/PathPrediction.c | 84 + src/tmx/Asn_J2735/src/r2020/PayloadData.c | 77 + .../src/r2020/PedestrianBicycleDetect.c | 39 + .../Asn_J2735/src/r2020/PersonalAssistive.c | 82 + .../src/r2020/PersonalClusterRadius.c | 76 + .../src/r2020/PersonalCrossingInProgress.c | 39 + .../src/r2020/PersonalCrossingRequest.c | 39 + .../src/r2020/PersonalDeviceUsageState.c | 82 + .../src/r2020/PersonalDeviceUserType.c | 76 + .../src/r2020/PersonalSafetyMessage.c | 621 + src/tmx/Asn_J2735/src/r2020/PitchDetected.c | 64 + src/tmx/Asn_J2735/src/r2020/PitchRate.c | 64 + .../Asn_J2735/src/r2020/PitchRateConfidence.c | 68 + .../src/r2020/PivotPointDescription.c | 102 + src/tmx/Asn_J2735/src/r2020/PivotingAllowed.c | 39 + src/tmx/Asn_J2735/src/r2020/Point.c | 82 + .../Asn_J2735/src/r2020/Position3D-addGrpB.c | 102 + .../Asn_J2735/src/r2020/Position3D-addGrpC.c | 66 + .../src/r2020/Position3D-addGrpCarma.c | 104 + src/tmx/Asn_J2735/src/r2020/Position3D.c | 225 + .../Asn_J2735/src/r2020/PositionConfidence.c | 96 + .../src/r2020/PositionConfidenceSet.c | 84 + .../Asn_J2735/src/r2020/PositionOffsetXYZ.c | 72 + .../Asn_J2735/src/r2020/PositionalAccuracy.c | 102 + .../Asn_J2735/src/r2020/PreemptPriorityList.c | 72 + .../src/r2020/PrioritizationResponse.c | 102 + .../src/r2020/PrioritizationResponseList.c | 72 + .../src/r2020/PrioritizationResponseStatus.c | 82 + src/tmx/Asn_J2735/src/r2020/Priority.c | 77 + .../Asn_J2735/src/r2020/PriorityRequestType.c | 74 + .../src/r2020/PrivilegedEventFlags.c | 82 + .../Asn_J2735/src/r2020/PrivilegedEvents.c | 84 + .../Asn_J2735/src/r2020/ProbeDataManagement.c | 467 + .../Asn_J2735/src/r2020/ProbeSegmentNumber.c | 76 + .../Asn_J2735/src/r2020/ProbeVehicleData.c | 382 + .../src/r2020/PropelledInformation.c | 111 + .../r2020/PublicSafetyAndRoadWorkerActivity.c | 82 + .../PublicSafetyDirectingTrafficSubType.c | 82 + .../PublicSafetyEventResponderWorkerType.c | 82 + src/tmx/Asn_J2735/src/r2020/RTCM-Revision.c | 74 + src/tmx/Asn_J2735/src/r2020/RTCMPackage.c | 86 + src/tmx/Asn_J2735/src/r2020/RTCMcorrections.c | 279 + src/tmx/Asn_J2735/src/r2020/RTCMheader.c | 84 + src/tmx/Asn_J2735/src/r2020/RTCMmessage.c | 77 + src/tmx/Asn_J2735/src/r2020/RTCMmessageList.c | 72 + src/tmx/Asn_J2735/src/r2020/Radius-B12.c | 76 + .../Asn_J2735/src/r2020/RadiusOfCurvature.c | 76 + src/tmx/Asn_J2735/src/r2020/RainSensor.c | 80 + src/tmx/Asn_J2735/src/r2020/RegionId.c | 76 + src/tmx/Asn_J2735/src/r2020/RegionList.c | 72 + src/tmx/Asn_J2735/src/r2020/RegionOffsets.c | 104 + src/tmx/Asn_J2735/src/r2020/RegionPointSet.c | 104 + .../Asn_J2735/src/r2020/RegionalExtension.c | 11120 ++++++++++++++++ .../src/r2020/RegulatorySpeedLimit.c | 84 + src/tmx/Asn_J2735/src/r2020/RepeatParams.c | 169 + src/tmx/Asn_J2735/src/r2020/RequestID.c | 76 + .../src/r2020/RequestImportanceLevel.c | 96 + src/tmx/Asn_J2735/src/r2020/RequestSubRole.c | 96 + src/tmx/Asn_J2735/src/r2020/RequestedItem.c | 100 + .../Asn_J2735/src/r2020/RequestedItemList.c | 72 + .../src/r2020/RequestorDescription.c | 315 + .../src/r2020/RequestorPositionVector.c | 104 + src/tmx/Asn_J2735/src/r2020/RequestorType.c | 158 + .../src/r2020/ResponderGroupAffected.c | 94 + src/tmx/Asn_J2735/src/r2020/ResponseType.c | 80 + .../src/r2020/RestrictionAppliesTo.c | 94 + .../src/r2020/RestrictionClassAssignment.c | 84 + .../Asn_J2735/src/r2020/RestrictionClassID.c | 76 + .../src/r2020/RestrictionClassList.c | 72 + .../src/r2020/RestrictionUserType-addGrpC.c | 68 + .../Asn_J2735/src/r2020/RestrictionUserType.c | 196 + .../src/r2020/RestrictionUserTypeList.c | 72 + src/tmx/Asn_J2735/src/r2020/RoadLaneSetList.c | 72 + src/tmx/Asn_J2735/src/r2020/RoadRegulatorID.c | 76 + src/tmx/Asn_J2735/src/r2020/RoadSegment.c | 297 + src/tmx/Asn_J2735/src/r2020/RoadSegmentID.c | 76 + src/tmx/Asn_J2735/src/r2020/RoadSegmentList.c | 72 + .../src/r2020/RoadSegmentReferenceID.c | 86 + src/tmx/Asn_J2735/src/r2020/RoadSideAlert.c | 436 + src/tmx/Asn_J2735/src/r2020/RoadSignID.c | 122 + .../Asn_J2735/src/r2020/RoadwayCrownAngle.c | 76 + src/tmx/Asn_J2735/src/r2020/RollDetected.c | 64 + src/tmx/Asn_J2735/src/r2020/RollRate.c | 64 + .../Asn_J2735/src/r2020/RollRateConfidence.c | 68 + src/tmx/Asn_J2735/src/r2020/SPAT.c | 225 + src/tmx/Asn_J2735/src/r2020/SPAT_TimeMark.c | 76 + src/tmx/Asn_J2735/src/r2020/SSPindex.c | 76 + src/tmx/Asn_J2735/src/r2020/Sample.c | 158 + src/tmx/Asn_J2735/src/r2020/Scale-B12.c | 76 + src/tmx/Asn_J2735/src/r2020/Second.c | 76 + src/tmx/Asn_J2735/src/r2020/SecondOfTime.c | 76 + src/tmx/Asn_J2735/src/r2020/SecondsAngle.c | 76 + .../Asn_J2735/src/r2020/SegmentAttributeLL.c | 142 + .../src/r2020/SegmentAttributeLLList.c | 72 + .../Asn_J2735/src/r2020/SegmentAttributeXY.c | 142 + .../src/r2020/SegmentAttributeXYList.c | 72 + .../src/r2020/SemiMajorAxisAccuracy.c | 76 + .../src/r2020/SemiMajorAxisOrientation.c | 76 + .../src/r2020/SemiMinorAxisAccuracy.c | 76 + .../src/r2020/SensorDataSharingMessage.c | 122 + src/tmx/Asn_J2735/src/r2020/ShapePointSet.c | 122 + src/tmx/Asn_J2735/src/r2020/SignPrority.c | 76 + .../Asn_J2735/src/r2020/SignalControlZone.c | 66 + src/tmx/Asn_J2735/src/r2020/SignalGroupID.c | 76 + .../Asn_J2735/src/r2020/SignalHeadLocation.c | 84 + .../src/r2020/SignalHeadLocationList.c | 72 + src/tmx/Asn_J2735/src/r2020/SignalReqScheme.c | 77 + src/tmx/Asn_J2735/src/r2020/SignalRequest.c | 261 + .../Asn_J2735/src/r2020/SignalRequestList.c | 72 + .../src/r2020/SignalRequestMessage.c | 261 + .../src/r2020/SignalRequestPackage.c | 243 + .../Asn_J2735/src/r2020/SignalRequesterInfo.c | 140 + src/tmx/Asn_J2735/src/r2020/SignalStatus.c | 225 + .../Asn_J2735/src/r2020/SignalStatusList.c | 72 + .../Asn_J2735/src/r2020/SignalStatusMessage.c | 243 + .../Asn_J2735/src/r2020/SignalStatusPackage.c | 297 + .../src/r2020/SignalStatusPackageList.c | 72 + src/tmx/Asn_J2735/src/r2020/SirenInUse.c | 72 + src/tmx/Asn_J2735/src/r2020/SizeValue.c | 64 + .../Asn_J2735/src/r2020/SizeValueConfidence.c | 80 + src/tmx/Asn_J2735/src/r2020/Snapshot.c | 104 + .../Asn_J2735/src/r2020/SnapshotDistance.c | 120 + src/tmx/Asn_J2735/src/r2020/SnapshotTime.c | 120 + .../src/r2020/SpecialVehicleExtensions.c | 104 + src/tmx/Asn_J2735/src/r2020/Speed.c | 76 + src/tmx/Asn_J2735/src/r2020/SpeedAdvice.c | 76 + src/tmx/Asn_J2735/src/r2020/SpeedConfidence.c | 80 + src/tmx/Asn_J2735/src/r2020/SpeedLimit.c | 215 + src/tmx/Asn_J2735/src/r2020/SpeedLimitList.c | 72 + src/tmx/Asn_J2735/src/r2020/SpeedLimitType.c | 92 + src/tmx/Asn_J2735/src/r2020/SpeedProfile.c | 66 + .../src/r2020/SpeedProfileMeasurement.c | 76 + .../src/r2020/SpeedProfileMeasurementList.c | 72 + .../SpeedandHeadingandThrottleConfidence.c | 102 + .../src/r2020/StabilityControlStatus.c | 72 + src/tmx/Asn_J2735/src/r2020/StationID.c | 72 + .../src/r2020/SteeringAxleLubePressure.c | 76 + .../src/r2020/SteeringAxleTemperature.c | 76 + .../Asn_J2735/src/r2020/SteeringWheelAngle.c | 76 + .../src/r2020/SteeringWheelAngleConfidence.c | 72 + .../r2020/SteeringWheelAngleRateOfChange.c | 76 + src/tmx/Asn_J2735/src/r2020/SummerTime.c | 68 + src/tmx/Asn_J2735/src/r2020/SunSensor.c | 76 + .../src/r2020/SupplementalVehicleExtensions.c | 333 + src/tmx/Asn_J2735/src/r2020/TemporaryID.c | 77 + src/tmx/Asn_J2735/src/r2020/TenthSecond.c | 76 + src/tmx/Asn_J2735/src/r2020/TermDistance.c | 76 + src/tmx/Asn_J2735/src/r2020/TermTime.c | 76 + src/tmx/Asn_J2735/src/r2020/TestMessage00.c | 61 + src/tmx/Asn_J2735/src/r2020/TestMessage01.c | 61 + src/tmx/Asn_J2735/src/r2020/TestMessage02.c | 60 + src/tmx/Asn_J2735/src/r2020/TestMessage03.c | 60 + src/tmx/Asn_J2735/src/r2020/TestMessage04.c | 50 + src/tmx/Asn_J2735/src/r2020/TestMessage05.c | 50 + src/tmx/Asn_J2735/src/r2020/TestMessage06.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage07.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage08.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage09.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage10.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage11.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage12.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage13.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage14.c | 86 + src/tmx/Asn_J2735/src/r2020/TestMessage15.c | 86 + .../Asn_J2735/src/r2020/ThrottleConfidence.c | 72 + .../Asn_J2735/src/r2020/ThrottlePosition.c | 76 + .../Asn_J2735/src/r2020/TimeChangeDetails.c | 158 + src/tmx/Asn_J2735/src/r2020/TimeConfidence.c | 144 + .../src/r2020/TimeIntervalConfidence.c | 76 + src/tmx/Asn_J2735/src/r2020/TimeOffset.c | 76 + src/tmx/Asn_J2735/src/r2020/TimeRemaining.c | 76 + src/tmx/Asn_J2735/src/r2020/TireData.c | 176 + src/tmx/Asn_J2735/src/r2020/TireDataList.c | 72 + src/tmx/Asn_J2735/src/r2020/TireLeakageRate.c | 76 + src/tmx/Asn_J2735/src/r2020/TireLocation.c | 76 + src/tmx/Asn_J2735/src/r2020/TirePressure.c | 76 + .../r2020/TirePressureThresholdDetection.c | 80 + src/tmx/Asn_J2735/src/r2020/TireTemp.c | 76 + .../src/r2020/TractionControlStatus.c | 72 + .../src/r2020/TrafficControlBounds.c | 159 + .../src/r2020/TrafficControlDetail.c | 1053 ++ .../src/r2020/TrafficControlGeometry.c | 372 + .../src/r2020/TrafficControlMessage.c | 65 + .../src/r2020/TrafficControlMessageV01.c | 231 + .../src/r2020/TrafficControlPackage.c | 189 + .../src/r2020/TrafficControlParams.c | 159 + .../src/r2020/TrafficControlPathPart.c | 265 + .../src/r2020/TrafficControlRequest.c | 65 + .../src/r2020/TrafficControlRequestV01.c | 225 + .../src/r2020/TrafficControlSchedule.c | 171 + .../Asn_J2735/src/r2020/TrafficControlType.c | 98 + .../Asn_J2735/src/r2020/TrafficControlValue.c | 539 + .../src/r2020/TrafficControlVehClass.c | 92 + src/tmx/Asn_J2735/src/r2020/TrailerData.c | 102 + .../Asn_J2735/src/r2020/TrailerHistoryPoint.c | 140 + .../src/r2020/TrailerHistoryPointList.c | 72 + src/tmx/Asn_J2735/src/r2020/TrailerMass.c | 76 + .../src/r2020/TrailerUnitDescription.c | 284 + .../src/r2020/TrailerUnitDescriptionList.c | 72 + src/tmx/Asn_J2735/src/r2020/TrailerWeight.c | 76 + src/tmx/Asn_J2735/src/r2020/TransitStatus.c | 82 + .../src/r2020/TransitVehicleOccupancy.c | 80 + .../src/r2020/TransitVehicleStatus.c | 82 + .../src/r2020/TransmissionAndSpeed.c | 84 + .../Asn_J2735/src/r2020/TransmissionState.c | 80 + .../Asn_J2735/src/r2020/TravelerDataFrame.c | 611 + .../src/r2020/TravelerDataFrameList.c | 72 + .../Asn_J2735/src/r2020/TravelerInfoType.c | 74 + .../Asn_J2735/src/r2020/TravelerInformation.c | 261 + src/tmx/Asn_J2735/src/r2020/URL-Base.c | 91 + src/tmx/Asn_J2735/src/r2020/URL-Link.c | 91 + src/tmx/Asn_J2735/src/r2020/URL-Short.c | 91 + src/tmx/Asn_J2735/src/r2020/UniqueMSGID.c | 77 + .../src/r2020/UserSizeAndBehaviour.c | 82 + src/tmx/Asn_J2735/src/r2020/VINstring.c | 77 + src/tmx/Asn_J2735/src/r2020/ValidRegion.c | 207 + .../src/r2020/VehicleClassification.c | 315 + src/tmx/Asn_J2735/src/r2020/VehicleData.c | 122 + .../Asn_J2735/src/r2020/VehicleEventFlags.c | 82 + .../src/r2020/VehicleGroupAffected.c | 136 + src/tmx/Asn_J2735/src/r2020/VehicleHeight.c | 76 + src/tmx/Asn_J2735/src/r2020/VehicleID.c | 93 + src/tmx/Asn_J2735/src/r2020/VehicleIdent.c | 313 + src/tmx/Asn_J2735/src/r2020/VehicleLength.c | 76 + src/tmx/Asn_J2735/src/r2020/VehicleMass.c | 76 + .../src/r2020/VehicleSafetyExtensions.c | 122 + src/tmx/Asn_J2735/src/r2020/VehicleSize.c | 84 + .../src/r2020/VehicleSizeConfidence.c | 72 + src/tmx/Asn_J2735/src/r2020/VehicleStatus.c | 1053 ++ .../src/r2020/VehicleStatusDeviceTypeTag.c | 124 + .../src/r2020/VehicleStatusRequest.c | 251 + .../src/r2020/VehicleStatusRequestList.c | 72 + .../src/r2020/VehicleToLanePosition.c | 84 + .../src/r2020/VehicleToLanePositionList.c | 72 + src/tmx/Asn_J2735/src/r2020/VehicleType.c | 98 + src/tmx/Asn_J2735/src/r2020/VehicleWidth.c | 76 + src/tmx/Asn_J2735/src/r2020/Velocity.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B07.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B08.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B09.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B10.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B11.c | 76 + src/tmx/Asn_J2735/src/r2020/VertOffset-B12.c | 76 + .../src/r2020/VerticalAcceleration.c | 76 + .../src/r2020/VerticalAccelerationThreshold.c | 82 + src/tmx/Asn_J2735/src/r2020/VerticalOffset.c | 201 + src/tmx/Asn_J2735/src/r2020/WaitOnStopline.c | 39 + src/tmx/Asn_J2735/src/r2020/WeatherProbe.c | 104 + src/tmx/Asn_J2735/src/r2020/WeatherReport.c | 158 + .../Asn_J2735/src/r2020/WheelEndElectFault.c | 72 + .../Asn_J2735/src/r2020/WheelSensorStatus.c | 72 + src/tmx/Asn_J2735/src/r2020/WiperRate.c | 76 + src/tmx/Asn_J2735/src/r2020/WiperSet.c | 122 + src/tmx/Asn_J2735/src/r2020/WiperStatus.c | 80 + src/tmx/Asn_J2735/src/r2020/WorkZone.c | 215 + src/tmx/Asn_J2735/src/r2020/YawDetected.c | 64 + src/tmx/Asn_J2735/src/r2020/YawRate.c | 76 + .../Asn_J2735/src/r2020/YawRateConfidence.c | 80 + src/tmx/Asn_J2735/src/r2020/Year.c | 76 + src/tmx/Asn_J2735/src/r2020/ZoneLength.c | 76 + src/tmx/Asn_J2735/src/r2020/Zoom.c | 76 + src/tmx/Asn_J2735/src/r2020/aper_decoder.c | 91 + src/tmx/Asn_J2735/src/r2020/aper_encoder.c | 129 + src/tmx/Asn_J2735/src/r2020/aper_opentype.c | 149 + src/tmx/Asn_J2735/src/r2020/aper_support.c | 239 + src/tmx/Asn_J2735/src/r2020/asn_SEQUENCE_OF.c | 41 + src/tmx/Asn_J2735/src/r2020/asn_SET_OF.c | 88 + src/tmx/Asn_J2735/src/r2020/asn_application.c | 538 + src/tmx/Asn_J2735/src/r2020/asn_bit_data.c | 333 + src/tmx/Asn_J2735/src/r2020/asn_codecs_prim.c | 31 + .../Asn_J2735/src/r2020/asn_codecs_prim_ber.c | 115 + .../Asn_J2735/src/r2020/asn_codecs_prim_xer.c | 184 + src/tmx/Asn_J2735/src/r2020/asn_internal.c | 48 + src/tmx/Asn_J2735/src/r2020/asn_random_fill.c | 61 + src/tmx/Asn_J2735/src/r2020/ber_decoder.c | 283 + src/tmx/Asn_J2735/src/r2020/ber_tlv_length.c | 168 + src/tmx/Asn_J2735/src/r2020/ber_tlv_tag.c | 144 + src/tmx/Asn_J2735/src/r2020/constr_CHOICE.c | 358 + .../Asn_J2735/src/r2020/constr_CHOICE_aper.c | 181 + .../Asn_J2735/src/r2020/constr_CHOICE_ber.c | 447 + .../Asn_J2735/src/r2020/constr_CHOICE_oer.c | 375 + .../Asn_J2735/src/r2020/constr_CHOICE_print.c | 48 + .../Asn_J2735/src/r2020/constr_CHOICE_rfill.c | 60 + .../Asn_J2735/src/r2020/constr_CHOICE_uper.c | 191 + .../Asn_J2735/src/r2020/constr_CHOICE_xer.c | 316 + src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE.c | 197 + .../Asn_J2735/src/r2020/constr_SEQUENCE_OF.c | 92 + .../src/r2020/constr_SEQUENCE_OF_aper.c | 88 + .../src/r2020/constr_SEQUENCE_OF_ber.c | 88 + .../src/r2020/constr_SEQUENCE_OF_uper.c | 92 + .../src/r2020/constr_SEQUENCE_OF_xer.c | 60 + .../src/r2020/constr_SEQUENCE_aper.c | 457 + .../Asn_J2735/src/r2020/constr_SEQUENCE_ber.c | 612 + .../Asn_J2735/src/r2020/constr_SEQUENCE_oer.c | 557 + .../src/r2020/constr_SEQUENCE_print.c | 55 + .../src/r2020/constr_SEQUENCE_rfill.c | 74 + .../src/r2020/constr_SEQUENCE_uper.c | 429 + .../Asn_J2735/src/r2020/constr_SEQUENCE_xer.c | 348 + src/tmx/Asn_J2735/src/r2020/constr_SET_OF.c | 371 + .../Asn_J2735/src/r2020/constr_SET_OF_aper.c | 186 + .../Asn_J2735/src/r2020/constr_SET_OF_ber.c | 355 + .../Asn_J2735/src/r2020/constr_SET_OF_oer.c | 281 + .../Asn_J2735/src/r2020/constr_SET_OF_print.c | 39 + .../Asn_J2735/src/r2020/constr_SET_OF_rfill.c | 152 + .../Asn_J2735/src/r2020/constr_SET_OF_uper.c | 201 + .../Asn_J2735/src/r2020/constr_SET_OF_xer.c | 314 + src/tmx/Asn_J2735/src/r2020/constr_TYPE.c | 80 + src/tmx/Asn_J2735/src/r2020/constraints.c | 94 + src/tmx/Asn_J2735/src/r2020/der_encoder.c | 194 + src/tmx/Asn_J2735/src/r2020/oer_decoder.c | 152 + src/tmx/Asn_J2735/src/r2020/oer_encoder.c | 141 + src/tmx/Asn_J2735/src/r2020/oer_support.c | 122 + src/tmx/Asn_J2735/src/r2020/per_decoder.c | 5 + src/tmx/Asn_J2735/src/r2020/per_encoder.c | 35 + src/tmx/Asn_J2735/src/r2020/per_opentype.c | 28 + src/tmx/Asn_J2735/src/r2020/per_support.c | 9 + src/tmx/Asn_J2735/src/r2020/uper_decoder.c | 96 + src/tmx/Asn_J2735/src/r2020/uper_encoder.c | 127 + src/tmx/Asn_J2735/src/r2020/uper_opentype.c | 372 + src/tmx/Asn_J2735/src/r2020/uper_support.c | 311 + src/tmx/Asn_J2735/src/r2020/xer_decoder.c | 369 + src/tmx/Asn_J2735/src/r2020/xer_encoder.c | 237 + src/tmx/Asn_J2735/src/r2020/xer_support.c | 227 + src/tmx/TmxUtils/test/J2735MessageTest.cpp | 3 +- .../src/J3224ToSDSMJsonConverter.cpp | 322 +- .../src/J3224ToSDSMJsonConverter.h | 66 +- .../src/JsonToJ3224SDSMConverter.cpp | 693 +- .../src/JsonToJ3224SDSMConverter.h | 92 +- .../test/test_J2735ToSRMJsonConverter.cpp | 6 +- .../test/test_J3224ToSDSMJsonConverter.cpp | 2 +- src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp | 37 +- .../src/inputs/isd/ISDDataAdaptor.hpp | 6 +- .../src/MessageReceiverPlugin.cpp | 6 +- src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp | 6 +- src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp | 6 +- src/v2i-hub/TimPlugin/src/TimPlugin.cpp | 3 +- src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp | 6 +- 1316 files changed, 133716 insertions(+), 619 deletions(-) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ANY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelSteerYawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Acceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationSet4Way.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AllowedManeuvers.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Altitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocityConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AntennaOffsetSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AntiLockBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachOrLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Attachment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AttachmentRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Attitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AttitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AuxiliaryBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BIT_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BOOLEAN.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BSMcoreData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleClass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeBoostApplied.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeSystemStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/CargoWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Circle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ClassificationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/CoarseHeading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/CodeWord.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/CoefficientOfFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/CommonSafetyRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Confidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectingLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Connection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectsToList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Count.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DDate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DDateTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DFullTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DHour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DMinute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonthDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRCmsgID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DYearMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DailySchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DataParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Day.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DaySchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLat.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLong.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DescriptiveName.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectCommonData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectOptionalData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObstacleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVRUData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DirectionOfUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DisabledVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DistanceUnits.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLiftAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetLg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetSm.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivingWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Duration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EXTERNAL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ElevationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyVehicleAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EmissionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EnabledLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EpochMins.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EquipmentType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EssMobileFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipSituation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipYesNo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EssSolarRadiation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EventDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ExitService.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Extent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ExteriorLights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/FuelType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/FullPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/FurtherInfoID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GNSSstatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLocations.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericSignage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GeographicalPath.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GeometricProjection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GraphicString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Header.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Heading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingSlice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Holiday.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Hour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/HumanPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IA5String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/INTEGER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodesAndText.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStext.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStextPhrase.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Id128b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Id64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IncidentResponseEquipment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionAccessPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionCollision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometryList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStateList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStatusObject.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/IsDolly.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Iso3833VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/J1939data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Barrier.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Bike.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Crosswalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Parking.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Sidewalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Striping.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-TrackedVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Vehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneConnectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneSharing.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneTypeAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Latitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LightbarInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-quality.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-tech.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Longitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MUTCDCode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ManeuverAssistList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MaxTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MeasurementTimeOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MergeDivergeNodeAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageBLOB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MinTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Minute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MinuteOfTheYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesDuration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityDynamicID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFCoordinate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffsetCoordinate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityGUID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityHeader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocationOffsets.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/MobilityOperation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPath.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPlanType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponseFlag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStaticID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStrategy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityTimestamp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityUrgency.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Month.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MotorizedPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEventList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementPhaseState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MsgCRC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MultiVehicleResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-MsgType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEAcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NULL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeEnumerated.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeInteger.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-24B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-28B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-32B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-36B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-44B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-48B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-48b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-80b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLmD-64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-20b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-22b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-24b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-26b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-28b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-32b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NumberOfParticipantsInCluster.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OBJECT_IDENTIFIER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OCTET_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OPEN_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDescriptor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSizeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B18.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B22.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B24.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetSystem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/OverlayLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PartII-Id.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PartIIcontent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistory.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PathNode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PathPrediction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PayloadData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PedestrianBicycleDetect.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalAssistive.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalClusterRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingInProgress.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUsageState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotPointDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotingAllowed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Point.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionOffsetXYZ.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionalAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PreemptPriorityList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Priority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PriorityRequestType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEvents.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeDataManagement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeSegmentNumber.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PropelledInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyAndRoadWorkerActivity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyDirectingTrafficSubType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyEventResponderWorkerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCM-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMheader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Radius-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RadiusOfCurvature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RainSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionId.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionOffsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionPointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RegulatorySpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RepeatParams.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestImportanceLevel.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestSubRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItemList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponderGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponseType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionAppliesTo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassAssignment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserTypeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadLaneSetList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadRegulatorID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSideAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSignID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadwayCrownAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RollDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SSPindex.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Sample.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Scale-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Second.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondOfTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondsAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisOrientation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMinorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SensorDataSharingMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ShapePointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignPrority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalGroupID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocationList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalReqScheme.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequesterInfo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SirenInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValueConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Snapshot.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpecialVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Speed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedAdvice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfile.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedandHeadingandThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/StabilityControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/StationID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleRateOfChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SummerTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SunSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SupplementalVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TemporaryID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TenthSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TermDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TermTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage00.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage02.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage03.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage04.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage05.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage06.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage15.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottlePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeChangeDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeIntervalConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeRemaining.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TireData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TireDataList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLeakageRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressureThresholdDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TireTemp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TractionControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlBounds.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlDetail.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessageV01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlParams.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPathPart.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequestV01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlVehClass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescriptionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleOccupancy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionAndSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrameList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInfoType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Base.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Link.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Short.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UniqueMSGID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UserSizeAndBehaviour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VINstring.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ValidRegion.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleClassification.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleIdent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSafetyExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSizeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusDeviceTypeTag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePositionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Velocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAcceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAccelerationThreshold.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WaitOnStopline.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherProbe.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherReport.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelEndElectFault.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelSensorStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/WorkZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/YawDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Year.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ZoneLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Zoom.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_application.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_bit_data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs_prim.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_config.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_constant.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_internal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_system.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_length.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_tag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_CHOICE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constraints.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/der_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/per_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/per_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/per_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/per_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_support.h create mode 100644 src/tmx/Asn_J2735/src/r2020/ANY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ANY_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ANY_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ANY_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ANY_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AccelSteerYawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Acceleration.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AccelerationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AccelerationSet4Way.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AdvisorySpeedList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AdvisorySpeedType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AllowedManeuvers.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Altitude.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AltitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AltitudeValue.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AmbientAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AmbientAirTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AngularVelocity.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AngularVelocityConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AnimalPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AnimalType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AntennaOffsetSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AntiLockBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ApproachID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ApproachOrLane.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Attachment.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AttachmentRadius.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Attitude.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AttitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AuxiliaryBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AxleWeight.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AxleWeightList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/AxleWeightSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BSMcoreData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage-addGrpCarma.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BasicVehicleClass.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BasicVehicleRole.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BrakeAppliedPressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BrakeAppliedStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BrakeBoostApplied.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BrakeSystemStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BumperHeight.c create mode 100644 src/tmx/Asn_J2735/src/r2020/BumperHeights.c create mode 100644 src/tmx/Asn_J2735/src/r2020/CargoWeight.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Circle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ClassificationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/CoarseHeading.c create mode 100644 src/tmx/Asn_J2735/src/r2020/CodeWord.c create mode 100644 src/tmx/Asn_J2735/src/r2020/CoefficientOfFriction.c create mode 100644 src/tmx/Asn_J2735/src/r2020/CommonSafetyRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Common_Angle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Common_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Common_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Confidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ConnectingLane.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Connection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ConnectsToList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Count.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DDate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DDateTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DDay.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DFullTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DHour.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DMinute.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DMonth.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DMonthDay.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DOffset.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DSRCmsgID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DSecond.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DYear.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DYearMonth.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DailySchedule.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DataParameters.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Day.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DaySchedule.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DegreesLat.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DegreesLong.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DeltaAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DeltaTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DescriptiveName.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedObjectCommonData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedObjectData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedObjectList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedObjectOptionalData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedObstacleData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedVRUData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DetectedVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DirectionOfUse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DisabledVehicle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DistanceUnits.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DriveAxleLiftAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DriveAxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DriveAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DriveAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetLg.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetSm.c create mode 100644 src/tmx/Asn_J2735/src/r2020/DrivingWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Duration.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EXTERNAL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ElevationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EmergencyDetails.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EmergencyVehicleAlert.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EmissionType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EnabledLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EpochMins.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EquipmentType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EssMobileFriction.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EssPrecipRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EssPrecipSituation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EssPrecipYesNo.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EssSolarRadiation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/EventDescription.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ExitService.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Extent.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ExteriorLights.c create mode 100644 src/tmx/Asn_J2735/src/r2020/FuelType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/FullPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/r2020/FurtherInfoID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GNSSstatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GenericLane.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GenericLocations.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GenericSignage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GeographicalPath.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GeometricProjection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GraphicString.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GrossDistance.c create mode 100644 src/tmx/Asn_J2735/src/r2020/GrossSpeed.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Header.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Heading.c create mode 100644 src/tmx/Asn_J2735/src/r2020/HeadingConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/HeadingSlice.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Holiday.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Hour.c create mode 100644 src/tmx/Asn_J2735/src/r2020/HumanPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IA5String.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ITIScodes.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ITIScodesAndText.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ITIStext.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ITIStextPhrase.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Id128b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Id64b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IncidentResponseEquipment.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionAccessPoint.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionCollision.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionGeometry.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionGeometryList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionState-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionStateList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IntersectionStatusObject.c create mode 100644 src/tmx/Asn_J2735/src/r2020/IsDolly.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Iso3833VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/J1939data.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Barrier.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Bike.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Crosswalk.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Parking.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Sidewalk.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Striping.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-TrackedVehicle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes-Vehicle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneConnectionID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneDataAttribute-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneDataAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneDirection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneSharing.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneTypeAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LaneWidth.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Latitude.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LatitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LatitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LayerID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LayerType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LightbarInUse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Location-quality.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Location-tech.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Longitude.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LongitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r2020/LongitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MUTCDCode.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ManeuverAssistList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MapData-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MapData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MaxTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MeasurementTimeOffset.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MergeDivergeNodeAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MessageBLOB.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MessageFrame.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MinTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Minute.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MinuteOfTheYear.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MinutesAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MinutesDuration.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityDynamicID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityECEFCoordinate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityECEFOffset.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityECEFOffsetCoordinate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityGUID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityHeader.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityLocation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityLocationOffsets.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityOperation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityParameters.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityPath.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityPlanType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityResponse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityResponseFlag.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityStaticID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityStrategy.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityTimestamp.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MobilityUrgency.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Month.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MotorizedPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementEvent-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementEventList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementPhaseState.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MovementState.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MsgCRC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/MultiVehicleResponse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NMEA-MsgType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NMEA-Payload.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NMEA-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NMEAcorrections.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NULL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeEnumerated.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-24B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-28B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-32B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-36B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-44B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LL-48B.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LLdms-48b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LLdms-80b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-LLmD-64b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-20b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-22b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-24b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-26b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-28b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Node-XY-32b.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeListLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeListXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeOffsetPointLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NodeXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/NumberOfParticipantsInCluster.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObjectCount.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObjectDescriptor.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObjectDistance.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObjectID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObjectType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObstacleDetection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObstacleDirection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObstacleDistance.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObstacleSize.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ObstacleSizeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B09.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B10.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B11.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B13.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B14.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Offset-B16.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B14.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B16.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B18.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B22.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetLL-B24.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OffsetSystem.c create mode 100644 src/tmx/Asn_J2735/src/r2020/OverlayLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PartII-Id.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PartIIcontent.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PathHistory.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PathHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PathHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PathNode.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PathPrediction.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PayloadData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PedestrianBicycleDetect.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalAssistive.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalClusterRadius.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalCrossingInProgress.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalCrossingRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalDeviceUsageState.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalDeviceUserType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PitchDetected.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PitchRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PitchRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PivotPointDescription.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PivotingAllowed.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Point.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Position3D-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Position3D-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Position3D-addGrpCarma.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PositionConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PositionConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PositionOffsetXYZ.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PositionalAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PreemptPriorityList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PrioritizationResponse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PrioritizationResponseList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PrioritizationResponseStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Priority.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PriorityRequestType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PrivilegedEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PrivilegedEvents.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ProbeDataManagement.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ProbeSegmentNumber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ProbeVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PropelledInformation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PublicSafetyAndRoadWorkerActivity.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PublicSafetyDirectingTrafficSubType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/PublicSafetyEventResponderWorkerType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCM-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCMPackage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCMcorrections.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCMheader.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCMmessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RTCMmessageList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Radius-B12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RadiusOfCurvature.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RainSensor.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegionId.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegionList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegionOffsets.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegionPointSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegionalExtension.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RegulatorySpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RepeatParams.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestImportanceLevel.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestSubRole.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestedItem.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestedItemList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestorDescription.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestorPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RequestorType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ResponderGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ResponseType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionAppliesTo.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionClassAssignment.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionClassID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionClassList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionUserType-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RestrictionUserTypeList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadLaneSetList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadRegulatorID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSegmentID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSegmentList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSegmentReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSideAlert.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadSignID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RoadwayCrownAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RollDetected.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RollRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/RollRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SPAT.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SPAT_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SSPindex.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Sample.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Scale-B12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Second.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SecondOfTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SecondsAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SegmentAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SegmentAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SegmentAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SegmentAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SemiMajorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SemiMajorAxisOrientation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SemiMinorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SensorDataSharingMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ShapePointSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignPrority.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalGroupID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalHeadLocation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalHeadLocationList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalReqScheme.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalRequestList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalRequestMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalRequestPackage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalRequesterInfo.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalStatusList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalStatusMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalStatusPackage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SignalStatusPackageList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SirenInUse.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SizeValue.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SizeValueConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Snapshot.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SnapshotDistance.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SnapshotTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpecialVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Speed.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedAdvice.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedLimitList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedLimitType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedProfile.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurement.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurementList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SpeedandHeadingandThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/StabilityControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/StationID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SteeringAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SteeringAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SteeringWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleRateOfChange.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SummerTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SunSensor.c create mode 100644 src/tmx/Asn_J2735/src/r2020/SupplementalVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TemporaryID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TenthSecond.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TermDistance.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TermTime.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage00.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage01.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage02.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage03.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage04.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage05.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage06.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage07.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage08.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage09.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage10.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage11.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage13.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage14.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TestMessage15.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ThrottlePosition.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TimeChangeDetails.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TimeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TimeIntervalConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TimeOffset.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TimeRemaining.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TireData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TireDataList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TireLeakageRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TireLocation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TirePressure.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TirePressureThresholdDetection.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TireTemp.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TractionControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlBounds.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlDetail.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlGeometry.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlMessage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlMessageV01.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlPackage.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlParams.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlPathPart.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlRequestV01.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlValue.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrafficControlVehClass.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerMass.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerUnitDescription.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerUnitDescriptionList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TrailerWeight.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TransitStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TransitVehicleOccupancy.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TransitVehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TransmissionAndSpeed.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TransmissionState.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TravelerDataFrame.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TravelerDataFrameList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TravelerInfoType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/TravelerInformation.c create mode 100644 src/tmx/Asn_J2735/src/r2020/URL-Base.c create mode 100644 src/tmx/Asn_J2735/src/r2020/URL-Link.c create mode 100644 src/tmx/Asn_J2735/src/r2020/URL-Short.c create mode 100644 src/tmx/Asn_J2735/src/r2020/UniqueMSGID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/UserSizeAndBehaviour.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VINstring.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ValidRegion.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleClassification.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleHeight.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleID.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleIdent.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleLength.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleMass.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleSafetyExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleSize.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleSizeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleStatusDeviceTypeTag.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleStatusRequest.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleStatusRequestList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleToLanePosition.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleToLanePositionList.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VehicleWidth.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Velocity.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B07.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B08.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B09.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B10.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B11.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VertOffset-B12.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VerticalAcceleration.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VerticalAccelerationThreshold.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VerticalOffset.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WaitOnStopline.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WeatherProbe.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WeatherReport.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WheelEndElectFault.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WheelSensorStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WiperRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WiperSet.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WiperStatus.c create mode 100644 src/tmx/Asn_J2735/src/r2020/WorkZone.c create mode 100644 src/tmx/Asn_J2735/src/r2020/YawDetected.c create mode 100644 src/tmx/Asn_J2735/src/r2020/YawRate.c create mode 100644 src/tmx/Asn_J2735/src/r2020/YawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Year.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ZoneLength.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Zoom.c create mode 100644 src/tmx/Asn_J2735/src/r2020/aper_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/aper_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/aper_opentype.c create mode 100644 src/tmx/Asn_J2735/src/r2020/aper_support.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_application.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_bit_data.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_codecs_prim.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_internal.c create mode 100644 src/tmx/Asn_J2735/src/r2020/asn_random_fill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ber_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ber_tlv_length.c create mode 100644 src/tmx/Asn_J2735/src/r2020/ber_tlv_tag.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constr_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/r2020/constraints.c create mode 100644 src/tmx/Asn_J2735/src/r2020/der_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/oer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/oer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/oer_support.c create mode 100644 src/tmx/Asn_J2735/src/r2020/per_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/per_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/per_opentype.c create mode 100644 src/tmx/Asn_J2735/src/r2020/per_support.c create mode 100644 src/tmx/Asn_J2735/src/r2020/uper_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/uper_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/uper_opentype.c create mode 100644 src/tmx/Asn_J2735/src/r2020/uper_support.c create mode 100644 src/tmx/Asn_J2735/src/r2020/xer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/xer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r2020/xer_support.c diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ANY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ANY.h new file mode 100644 index 000000000..871ed5ed3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ANY.h @@ -0,0 +1,84 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_ANY_H +#define ASN_TYPE_ANY_H + +#include /* Implemented via OCTET STRING type */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ANY { + uint8_t *buf; /* BER-encoded ANY contents */ + int size; /* Size of the above buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} ANY_t; + +extern asn_TYPE_descriptor_t asn_DEF_ANY; +extern asn_TYPE_operation_t asn_OP_ANY; +extern asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs; + +#define ANY_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define ANY_print OCTET_STRING_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define ANY_compare OCTET_STRING_compare + +#define ANY_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define ANY_decode_ber OCTET_STRING_decode_ber +#define ANY_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define ANY_decode_xer OCTET_STRING_decode_xer_hex +xer_type_encoder_f ANY_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f ANY_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f ANY_decode_uper; +per_type_encoder_f ANY_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f ANY_decode_aper; +per_type_encoder_f ANY_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/****************************** + * Handy conversion routines. * + ******************************/ + +/* Convert another ASN.1 type into the ANY. This implies DER encoding. */ +int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr); +ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr); +#if !defined(ASN_DISABLE_APER_SUPPORT) +int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr); +ANY_t *ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/* Convert the contents of the ANY type into the specified type. */ +int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); +#if !defined(ASN_DISABLE_APER_SUPPORT) +int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size)) +#define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \ + &asn_DEF_ANY, (buf), (size)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_TYPE_ANY_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelSteerYawRateConfidence.h new file mode 100644 index 000000000..a4956d0a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelSteerYawRateConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AccelSteerYawRateConfidence_H_ +#define _AccelSteerYawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelSteerYawRateConfidence */ +typedef struct AccelSteerYawRateConfidence { + YawRateConfidence_t yawRate; + AccelerationConfidence_t acceleration; + SteeringWheelAngleConfidence_t steeringWheelAngle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelSteerYawRateConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelSteerYawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Acceleration.h new file mode 100644 index 000000000..2b072d108 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Acceleration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Acceleration_H_ +#define _Acceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Acceleration */ +typedef long Acceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Acceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Acceleration; +asn_struct_free_f Acceleration_free; +asn_struct_print_f Acceleration_print; +asn_constr_check_f Acceleration_constraint; +ber_type_decoder_f Acceleration_decode_ber; +der_type_encoder_f Acceleration_encode_der; +xer_type_decoder_f Acceleration_decode_xer; +xer_type_encoder_f Acceleration_encode_xer; +oer_type_decoder_f Acceleration_decode_oer; +oer_type_encoder_f Acceleration_encode_oer; +per_type_decoder_f Acceleration_decode_uper; +per_type_encoder_f Acceleration_encode_uper; +per_type_decoder_f Acceleration_decode_aper; +per_type_encoder_f Acceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Acceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationConfidence.h new file mode 100644 index 000000000..0d5673edb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AccelerationConfidence_H_ +#define _AccelerationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AccelerationConfidence { + AccelerationConfidence_unavailable = 0, + AccelerationConfidence_accl_100_00 = 1, + AccelerationConfidence_accl_010_00 = 2, + AccelerationConfidence_accl_005_00 = 3, + AccelerationConfidence_accl_001_00 = 4, + AccelerationConfidence_accl_000_10 = 5, + AccelerationConfidence_accl_000_05 = 6, + AccelerationConfidence_accl_000_01 = 7 +} e_AccelerationConfidence; + +/* AccelerationConfidence */ +typedef long AccelerationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1; +asn_struct_free_f AccelerationConfidence_free; +asn_struct_print_f AccelerationConfidence_print; +asn_constr_check_f AccelerationConfidence_constraint; +ber_type_decoder_f AccelerationConfidence_decode_ber; +der_type_encoder_f AccelerationConfidence_encode_der; +xer_type_decoder_f AccelerationConfidence_decode_xer; +xer_type_encoder_f AccelerationConfidence_encode_xer; +oer_type_decoder_f AccelerationConfidence_decode_oer; +oer_type_encoder_f AccelerationConfidence_encode_oer; +per_type_decoder_f AccelerationConfidence_decode_uper; +per_type_encoder_f AccelerationConfidence_encode_uper; +per_type_decoder_f AccelerationConfidence_decode_aper; +per_type_encoder_f AccelerationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationSet4Way.h new file mode 100644 index 000000000..416d32e02 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AccelerationSet4Way.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AccelerationSet4Way_H_ +#define _AccelerationSet4Way_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Acceleration.h" +#include "VerticalAcceleration.h" +#include "YawRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelerationSet4Way */ +typedef struct AccelerationSet4Way { + Acceleration_t Long; + Acceleration_t lat; + VerticalAcceleration_t vert; + YawRate_t yaw; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelerationSet4Way_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationSet4Way_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h new file mode 100644 index 000000000..c68835e06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AddGrpB_Angle_H_ +#define _AddGrpB_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Angle */ +typedef long AddGrpB_Angle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle; +asn_struct_free_f AddGrpB_Angle_free; +asn_struct_print_f AddGrpB_Angle_print; +asn_constr_check_f AddGrpB_Angle_constraint; +ber_type_decoder_f AddGrpB_Angle_decode_ber; +der_type_encoder_f AddGrpB_Angle_encode_der; +xer_type_decoder_f AddGrpB_Angle_decode_xer; +xer_type_encoder_f AddGrpB_Angle_encode_xer; +oer_type_decoder_f AddGrpB_Angle_decode_oer; +oer_type_encoder_f AddGrpB_Angle_encode_oer; +per_type_decoder_f AddGrpB_Angle_decode_uper; +per_type_encoder_f AddGrpB_Angle_encode_uper; +per_type_decoder_f AddGrpB_Angle_decode_aper; +per_type_encoder_f AddGrpB_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h new file mode 100644 index 000000000..1b9e01e4a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AddGrpB_Elevation_H_ +#define _AddGrpB_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Elevation */ +typedef long AddGrpB_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation; +asn_struct_free_f AddGrpB_Elevation_free; +asn_struct_print_f AddGrpB_Elevation_print; +asn_constr_check_f AddGrpB_Elevation_constraint; +ber_type_decoder_f AddGrpB_Elevation_decode_ber; +der_type_encoder_f AddGrpB_Elevation_encode_der; +xer_type_decoder_f AddGrpB_Elevation_decode_xer; +xer_type_encoder_f AddGrpB_Elevation_encode_xer; +oer_type_decoder_f AddGrpB_Elevation_decode_oer; +oer_type_encoder_f AddGrpB_Elevation_encode_oer; +per_type_decoder_f AddGrpB_Elevation_decode_uper; +per_type_encoder_f AddGrpB_Elevation_encode_uper; +per_type_decoder_f AddGrpB_Elevation_decode_aper; +per_type_encoder_f AddGrpB_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h new file mode 100644 index 000000000..c33b88609 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AddGrpB_MsgCount_H_ +#define _AddGrpB_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_MsgCount */ +typedef long AddGrpB_MsgCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount; +asn_struct_free_f AddGrpB_MsgCount_free; +asn_struct_print_f AddGrpB_MsgCount_print; +asn_constr_check_f AddGrpB_MsgCount_constraint; +ber_type_decoder_f AddGrpB_MsgCount_decode_ber; +der_type_encoder_f AddGrpB_MsgCount_encode_der; +xer_type_decoder_f AddGrpB_MsgCount_decode_xer; +xer_type_encoder_f AddGrpB_MsgCount_encode_xer; +oer_type_decoder_f AddGrpB_MsgCount_decode_oer; +oer_type_encoder_f AddGrpB_MsgCount_encode_oer; +per_type_decoder_f AddGrpB_MsgCount_decode_uper; +per_type_encoder_f AddGrpB_MsgCount_encode_uper; +per_type_decoder_f AddGrpB_MsgCount_decode_aper; +per_type_encoder_f AddGrpB_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h new file mode 100644 index 000000000..7a112d7d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AddGrpB_TimeMark_H_ +#define _AddGrpB_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Year.h" +#include "Month.h" +#include "Day.h" +#include "SummerTime.h" +#include "Holiday.h" +#include "DayOfWeek.h" +#include "Hour.h" +#include "Minute.h" +#include "Second.h" +#include "TenthSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_TimeMark */ +typedef struct AddGrpB_TimeMark { + Year_t year; + Month_t month; + Day_t day; + SummerTime_t summerTime; + Holiday_t holiday; + DayOfWeek_t dayofWeek; + Hour_t hour; + Minute_t minute; + Second_t second; + TenthSecond_t tenthSecond; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AddGrpB_TimeMark_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeed.h new file mode 100644 index 000000000..7a9feeccc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeed.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AdvisorySpeed_H_ +#define _AdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AdvisorySpeedType.h" +#include "SpeedAdvice.h" +#include "SpeedConfidence.h" +#include "ZoneLength.h" +#include "RestrictionClassID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_AdvisorySpeed; + +/* AdvisorySpeed */ +typedef struct AdvisorySpeed { + AdvisorySpeedType_t type; + SpeedAdvice_t *speed; /* OPTIONAL */ + SpeedConfidence_t *confidence; /* OPTIONAL */ + ZoneLength_t *distance; /* OPTIONAL */ + RestrictionClassID_t *Class; /* OPTIONAL */ + struct AdvisorySpeed__regional { + A_SEQUENCE_OF(struct Reg_AdvisorySpeed) 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; +} AdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _AdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedList.h new file mode 100644 index 000000000..9960f97f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AdvisorySpeedList_H_ +#define _AdvisorySpeedList_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 AdvisorySpeed; + +/* AdvisorySpeedList */ +typedef struct AdvisorySpeedList { + A_SEQUENCE_OF(struct AdvisorySpeed) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AdvisorySpeedList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; +extern asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[1]; +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AdvisorySpeed.h" + +#endif /* _AdvisorySpeedList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedType.h new file mode 100644 index 000000000..499ec3b36 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AdvisorySpeedType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AdvisorySpeedType_H_ +#define _AdvisorySpeedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AdvisorySpeedType { + AdvisorySpeedType_none = 0, + AdvisorySpeedType_greenwave = 1, + AdvisorySpeedType_ecoDrive = 2, + AdvisorySpeedType_transit = 3 + /* + * Enumeration is extensible + */ +} e_AdvisorySpeedType; + +/* AdvisorySpeedType */ +typedef long AdvisorySpeedType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; +extern const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1; +asn_struct_free_f AdvisorySpeedType_free; +asn_struct_print_f AdvisorySpeedType_print; +asn_constr_check_f AdvisorySpeedType_constraint; +ber_type_decoder_f AdvisorySpeedType_decode_ber; +der_type_encoder_f AdvisorySpeedType_encode_der; +xer_type_decoder_f AdvisorySpeedType_decode_xer; +xer_type_encoder_f AdvisorySpeedType_encode_xer; +oer_type_decoder_f AdvisorySpeedType_decode_oer; +oer_type_encoder_f AdvisorySpeedType_encode_oer; +per_type_decoder_f AdvisorySpeedType_decode_uper; +per_type_encoder_f AdvisorySpeedType_encode_uper; +per_type_decoder_f AdvisorySpeedType_decode_aper; +per_type_encoder_f AdvisorySpeedType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AllowedManeuvers.h new file mode 100644 index 000000000..a506d67b3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AllowedManeuvers.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AllowedManeuvers_H_ +#define _AllowedManeuvers_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AllowedManeuvers { + AllowedManeuvers_maneuverStraightAllowed = 0, + AllowedManeuvers_maneuverLeftAllowed = 1, + AllowedManeuvers_maneuverRightAllowed = 2, + AllowedManeuvers_maneuverUTurnAllowed = 3, + AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, + AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, + AllowedManeuvers_maneuverLaneChangeAllowed = 6, + AllowedManeuvers_maneuverNoStoppingAllowed = 7, + AllowedManeuvers_yieldAllwaysRequired = 8, + AllowedManeuvers_goWithHalt = 9, + AllowedManeuvers_caution = 10, + AllowedManeuvers_reserved1 = 11 +} e_AllowedManeuvers; + +/* AllowedManeuvers */ +typedef BIT_STRING_t AllowedManeuvers_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; +asn_struct_free_f AllowedManeuvers_free; +asn_struct_print_f AllowedManeuvers_print; +asn_constr_check_f AllowedManeuvers_constraint; +ber_type_decoder_f AllowedManeuvers_decode_ber; +der_type_encoder_f AllowedManeuvers_encode_der; +xer_type_decoder_f AllowedManeuvers_decode_xer; +xer_type_encoder_f AllowedManeuvers_encode_xer; +oer_type_decoder_f AllowedManeuvers_decode_oer; +oer_type_encoder_f AllowedManeuvers_encode_oer; +per_type_decoder_f AllowedManeuvers_decode_uper; +per_type_encoder_f AllowedManeuvers_encode_uper; +per_type_decoder_f AllowedManeuvers_decode_aper; +per_type_encoder_f AllowedManeuvers_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AllowedManeuvers_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Altitude.h new file mode 100644 index 000000000..693751b62 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Altitude.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Altitude_H_ +#define _Altitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AltitudeValue.h" +#include "AltitudeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Altitude */ +typedef struct Altitude { + AltitudeValue_t value; + AltitudeConfidence_t confidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Altitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Altitude; +extern asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1; +extern asn_TYPE_member_t asn_MBR_Altitude_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Altitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeConfidence.h new file mode 100644 index 000000000..3dfd126c3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AltitudeConfidence_H_ +#define _AltitudeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AltitudeConfidence { + AltitudeConfidence_alt_000_01 = 0, + AltitudeConfidence_alt_000_02 = 1, + AltitudeConfidence_alt_000_05 = 2, + AltitudeConfidence_alt_000_10 = 3, + AltitudeConfidence_alt_000_20 = 4, + AltitudeConfidence_alt_000_50 = 5, + AltitudeConfidence_alt_001_00 = 6, + AltitudeConfidence_alt_002_00 = 7, + AltitudeConfidence_alt_005_00 = 8, + AltitudeConfidence_alt_010_00 = 9, + AltitudeConfidence_alt_020_00 = 10, + AltitudeConfidence_alt_050_00 = 11, + AltitudeConfidence_alt_100_00 = 12, + AltitudeConfidence_alt_200_00 = 13, + AltitudeConfidence_outOfRange = 14, + AltitudeConfidence_unavailable = 15 +} e_AltitudeConfidence; + +/* AltitudeConfidence */ +typedef long AltitudeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1; +asn_struct_free_f AltitudeConfidence_free; +asn_struct_print_f AltitudeConfidence_print; +asn_constr_check_f AltitudeConfidence_constraint; +ber_type_decoder_f AltitudeConfidence_decode_ber; +der_type_encoder_f AltitudeConfidence_encode_der; +xer_type_decoder_f AltitudeConfidence_decode_xer; +xer_type_encoder_f AltitudeConfidence_encode_xer; +oer_type_decoder_f AltitudeConfidence_decode_oer; +oer_type_encoder_f AltitudeConfidence_encode_oer; +per_type_decoder_f AltitudeConfidence_decode_uper; +per_type_encoder_f AltitudeConfidence_encode_uper; +per_type_decoder_f AltitudeConfidence_decode_aper; +per_type_encoder_f AltitudeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeValue.h new file mode 100644 index 000000000..ac79c2393 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AltitudeValue.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AltitudeValue_H_ +#define _AltitudeValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AltitudeValue */ +typedef long AltitudeValue_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; +asn_struct_free_f AltitudeValue_free; +asn_struct_print_f AltitudeValue_print; +asn_constr_check_f AltitudeValue_constraint; +ber_type_decoder_f AltitudeValue_decode_ber; +der_type_encoder_f AltitudeValue_encode_der; +xer_type_decoder_f AltitudeValue_decode_xer; +xer_type_encoder_f AltitudeValue_encode_xer; +oer_type_decoder_f AltitudeValue_decode_oer; +oer_type_encoder_f AltitudeValue_encode_oer; +per_type_decoder_f AltitudeValue_decode_uper; +per_type_encoder_f AltitudeValue_encode_uper; +per_type_decoder_f AltitudeValue_decode_aper; +per_type_encoder_f AltitudeValue_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirPressure.h new file mode 100644 index 000000000..6ba006510 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirPressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AmbientAirPressure_H_ +#define _AmbientAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirPressure */ +typedef long AmbientAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; +asn_struct_free_f AmbientAirPressure_free; +asn_struct_print_f AmbientAirPressure_print; +asn_constr_check_f AmbientAirPressure_constraint; +ber_type_decoder_f AmbientAirPressure_decode_ber; +der_type_encoder_f AmbientAirPressure_encode_der; +xer_type_decoder_f AmbientAirPressure_decode_xer; +xer_type_encoder_f AmbientAirPressure_encode_xer; +oer_type_decoder_f AmbientAirPressure_decode_oer; +oer_type_encoder_f AmbientAirPressure_encode_oer; +per_type_decoder_f AmbientAirPressure_decode_uper; +per_type_encoder_f AmbientAirPressure_encode_uper; +per_type_decoder_f AmbientAirPressure_decode_aper; +per_type_encoder_f AmbientAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirTemperature.h new file mode 100644 index 000000000..a06696d39 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AmbientAirTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AmbientAirTemperature_H_ +#define _AmbientAirTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirTemperature */ +typedef long AmbientAirTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; +asn_struct_free_f AmbientAirTemperature_free; +asn_struct_print_f AmbientAirTemperature_print; +asn_constr_check_f AmbientAirTemperature_constraint; +ber_type_decoder_f AmbientAirTemperature_decode_ber; +der_type_encoder_f AmbientAirTemperature_encode_der; +xer_type_decoder_f AmbientAirTemperature_decode_xer; +xer_type_encoder_f AmbientAirTemperature_encode_xer; +oer_type_decoder_f AmbientAirTemperature_decode_oer; +oer_type_encoder_f AmbientAirTemperature_encode_oer; +per_type_decoder_f AmbientAirTemperature_decode_uper; +per_type_encoder_f AmbientAirTemperature_encode_uper; +per_type_decoder_f AmbientAirTemperature_decode_aper; +per_type_encoder_f AmbientAirTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocity.h new file mode 100644 index 000000000..2cb35471e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocity.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AngularVelocity_H_ +#define _AngularVelocity_H_ + + +#include + +/* Including external dependencies */ +#include "PitchRate.h" +#include "RollRate.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AngularVelocity */ +typedef struct AngularVelocity { + PitchRate_t pitchRate; + RollRate_t rollRate; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AngularVelocity_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AngularVelocity; +extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1; +extern asn_TYPE_member_t asn_MBR_AngularVelocity_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AngularVelocity_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocityConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocityConfidence.h new file mode 100644 index 000000000..e1d1e73f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AngularVelocityConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AngularVelocityConfidence_H_ +#define _AngularVelocityConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "PitchRateConfidence.h" +#include "RollRateConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AngularVelocityConfidence */ +typedef struct AngularVelocityConfidence { + PitchRateConfidence_t *pitchRateConfidence /* OPTIONAL */; + RollRateConfidence_t *rollRateConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AngularVelocityConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AngularVelocityConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalPropelledType.h new file mode 100644 index 000000000..635d2c369 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalPropelledType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AnimalPropelledType_H_ +#define _AnimalPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalPropelledType { + AnimalPropelledType_unavailable = 0, + AnimalPropelledType_otherTypes = 1, + AnimalPropelledType_animalMounted = 2, + AnimalPropelledType_animalDrawnCarriage = 3 + /* + * Enumeration is extensible + */ +} e_AnimalPropelledType; + +/* AnimalPropelledType */ +typedef long AnimalPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1; +asn_struct_free_f AnimalPropelledType_free; +asn_struct_print_f AnimalPropelledType_print; +asn_constr_check_f AnimalPropelledType_constraint; +ber_type_decoder_f AnimalPropelledType_decode_ber; +der_type_encoder_f AnimalPropelledType_encode_der; +xer_type_decoder_f AnimalPropelledType_decode_xer; +xer_type_encoder_f AnimalPropelledType_encode_xer; +oer_type_decoder_f AnimalPropelledType_decode_oer; +oer_type_encoder_f AnimalPropelledType_encode_oer; +per_type_decoder_f AnimalPropelledType_decode_uper; +per_type_encoder_f AnimalPropelledType_encode_uper; +per_type_decoder_f AnimalPropelledType_decode_aper; +per_type_encoder_f AnimalPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalType.h new file mode 100644 index 000000000..d30f739e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AnimalType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AnimalType_H_ +#define _AnimalType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalType { + AnimalType_unavailable = 0, + AnimalType_serviceUse = 1, + AnimalType_pet = 2, + AnimalType_farm = 3 + /* + * Enumeration is extensible + */ +} e_AnimalType; + +/* AnimalType */ +typedef long AnimalType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1; +asn_struct_free_f AnimalType_free; +asn_struct_print_f AnimalType_print; +asn_constr_check_f AnimalType_constraint; +ber_type_decoder_f AnimalType_decode_ber; +der_type_encoder_f AnimalType_encode_der; +xer_type_decoder_f AnimalType_decode_xer; +xer_type_encoder_f AnimalType_encode_xer; +oer_type_decoder_f AnimalType_decode_oer; +oer_type_encoder_f AnimalType_encode_oer; +per_type_decoder_f AnimalType_decode_uper; +per_type_encoder_f AnimalType_encode_uper; +per_type_decoder_f AnimalType_decode_aper; +per_type_encoder_f AnimalType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntennaOffsetSet.h new file mode 100644 index 000000000..7bfeace78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntennaOffsetSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AntennaOffsetSet_H_ +#define _AntennaOffsetSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "Offset-B09.h" +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AntennaOffsetSet */ +typedef struct AntennaOffsetSet { + Offset_B12_t antOffsetX; + Offset_B09_t antOffsetY; + Offset_B10_t antOffsetZ; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AntennaOffsetSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntennaOffsetSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntiLockBrakeStatus.h new file mode 100644 index 000000000..f327d29f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AntiLockBrakeStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AntiLockBrakeStatus_H_ +#define _AntiLockBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AntiLockBrakeStatus { + AntiLockBrakeStatus_unavailable = 0, + AntiLockBrakeStatus_off = 1, + AntiLockBrakeStatus_on = 2, + AntiLockBrakeStatus_engaged = 3 +} e_AntiLockBrakeStatus; + +/* AntiLockBrakeStatus */ +typedef long AntiLockBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1; +asn_struct_free_f AntiLockBrakeStatus_free; +asn_struct_print_f AntiLockBrakeStatus_print; +asn_constr_check_f AntiLockBrakeStatus_constraint; +ber_type_decoder_f AntiLockBrakeStatus_decode_ber; +der_type_encoder_f AntiLockBrakeStatus_encode_der; +xer_type_decoder_f AntiLockBrakeStatus_decode_xer; +xer_type_encoder_f AntiLockBrakeStatus_encode_xer; +oer_type_decoder_f AntiLockBrakeStatus_decode_oer; +oer_type_encoder_f AntiLockBrakeStatus_encode_oer; +per_type_decoder_f AntiLockBrakeStatus_decode_uper; +per_type_encoder_f AntiLockBrakeStatus_encode_uper; +per_type_decoder_f AntiLockBrakeStatus_decode_aper; +per_type_encoder_f AntiLockBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntiLockBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachID.h new file mode 100644 index 000000000..16154a41b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ApproachID_H_ +#define _ApproachID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ApproachID */ +typedef long ApproachID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ApproachID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ApproachID; +asn_struct_free_f ApproachID_free; +asn_struct_print_f ApproachID_print; +asn_constr_check_f ApproachID_constraint; +ber_type_decoder_f ApproachID_decode_ber; +der_type_encoder_f ApproachID_encode_der; +xer_type_decoder_f ApproachID_decode_xer; +xer_type_encoder_f ApproachID_encode_xer; +oer_type_decoder_f ApproachID_decode_oer; +oer_type_encoder_f ApproachID_encode_oer; +per_type_decoder_f ApproachID_decode_uper; +per_type_encoder_f ApproachID_encode_uper; +per_type_decoder_f ApproachID_decode_aper; +per_type_encoder_f ApproachID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachOrLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachOrLane.h new file mode 100644 index 000000000..affbc06ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ApproachOrLane.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ApproachOrLane_H_ +#define _ApproachOrLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ApproachID.h" +#include "LaneID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ApproachOrLane_PR { + ApproachOrLane_PR_NOTHING, /* No components present */ + ApproachOrLane_PR_approach, + ApproachOrLane_PR_lane +} ApproachOrLane_PR; + +/* ApproachOrLane */ +typedef struct ApproachOrLane { + ApproachOrLane_PR present; + union ApproachOrLane_u { + ApproachID_t approach; + LaneID_t lane; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ApproachOrLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ApproachOrLane; +extern asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ApproachOrLane_1[2]; +extern asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachOrLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attachment.h new file mode 100644 index 000000000..3018e64c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attachment.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Attachment_H_ +#define _Attachment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Attachment { + Attachment_unavailable = 0, + Attachment_stroller = 1, + Attachment_bicycleTrailer = 2, + Attachment_cart = 3, + Attachment_wheelchair = 4, + Attachment_otherWalkAssistAttachments = 5, + Attachment_pet = 6 + /* + * Enumeration is extensible + */ +} e_Attachment; + +/* Attachment */ +typedef long Attachment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Attachment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Attachment; +extern const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1; +asn_struct_free_f Attachment_free; +asn_struct_print_f Attachment_print; +asn_constr_check_f Attachment_constraint; +ber_type_decoder_f Attachment_decode_ber; +der_type_encoder_f Attachment_encode_der; +xer_type_decoder_f Attachment_decode_xer; +xer_type_encoder_f Attachment_encode_xer; +oer_type_decoder_f Attachment_decode_oer; +oer_type_encoder_f Attachment_encode_oer; +per_type_decoder_f Attachment_decode_uper; +per_type_encoder_f Attachment_encode_uper; +per_type_decoder_f Attachment_decode_aper; +per_type_encoder_f Attachment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attachment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttachmentRadius.h new file mode 100644 index 000000000..72994d11b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttachmentRadius.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AttachmentRadius_H_ +#define _AttachmentRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttachmentRadius */ +typedef long AttachmentRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; +asn_struct_free_f AttachmentRadius_free; +asn_struct_print_f AttachmentRadius_print; +asn_constr_check_f AttachmentRadius_constraint; +ber_type_decoder_f AttachmentRadius_decode_ber; +der_type_encoder_f AttachmentRadius_encode_der; +xer_type_decoder_f AttachmentRadius_decode_xer; +xer_type_encoder_f AttachmentRadius_encode_xer; +oer_type_decoder_f AttachmentRadius_decode_oer; +oer_type_encoder_f AttachmentRadius_encode_oer; +per_type_decoder_f AttachmentRadius_decode_uper; +per_type_encoder_f AttachmentRadius_encode_uper; +per_type_decoder_f AttachmentRadius_decode_aper; +per_type_encoder_f AttachmentRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttachmentRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attitude.h new file mode 100644 index 000000000..b2316ff61 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Attitude.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _Attitude_H_ +#define _Attitude_H_ + + +#include + +/* Including external dependencies */ +#include "PitchDetected.h" +#include "RollDetected.h" +#include "YawDetected.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Attitude */ +typedef struct Attitude { + PitchDetected_t pitch; + RollDetected_t roll; + YawDetected_t yaw; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Attitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Attitude; +extern asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1; +extern asn_TYPE_member_t asn_MBR_Attitude_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attitude_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttitudeConfidence.h new file mode 100644 index 000000000..b6377270b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AttitudeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AttitudeConfidence_H_ +#define _AttitudeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "HeadingConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttitudeConfidence */ +typedef struct AttitudeConfidence { + HeadingConfidence_t pitchConfidence; + HeadingConfidence_t rollConfidence; + HeadingConfidence_t yawConfidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AttitudeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttitudeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AuxiliaryBrakeStatus.h new file mode 100644 index 000000000..02a73a46d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AuxiliaryBrakeStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AuxiliaryBrakeStatus_H_ +#define _AuxiliaryBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AuxiliaryBrakeStatus { + AuxiliaryBrakeStatus_unavailable = 0, + AuxiliaryBrakeStatus_off = 1, + AuxiliaryBrakeStatus_on = 2, + AuxiliaryBrakeStatus_reserved = 3 +} e_AuxiliaryBrakeStatus; + +/* AuxiliaryBrakeStatus */ +typedef long AuxiliaryBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1; +asn_struct_free_f AuxiliaryBrakeStatus_free; +asn_struct_print_f AuxiliaryBrakeStatus_print; +asn_constr_check_f AuxiliaryBrakeStatus_constraint; +ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; +der_type_encoder_f AuxiliaryBrakeStatus_encode_der; +xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; +xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; +oer_type_decoder_f AuxiliaryBrakeStatus_decode_oer; +oer_type_encoder_f AuxiliaryBrakeStatus_encode_oer; +per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; +per_type_decoder_f AuxiliaryBrakeStatus_decode_aper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AuxiliaryBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleLocation.h new file mode 100644 index 000000000..eda63cb68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AxleLocation_H_ +#define _AxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleLocation */ +typedef long AxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; +asn_struct_free_f AxleLocation_free; +asn_struct_print_f AxleLocation_print; +asn_constr_check_f AxleLocation_constraint; +ber_type_decoder_f AxleLocation_decode_ber; +der_type_encoder_f AxleLocation_encode_der; +xer_type_decoder_f AxleLocation_decode_xer; +xer_type_encoder_f AxleLocation_encode_xer; +oer_type_decoder_f AxleLocation_decode_oer; +oer_type_encoder_f AxleLocation_encode_oer; +per_type_decoder_f AxleLocation_decode_uper; +per_type_encoder_f AxleLocation_encode_uper; +per_type_decoder_f AxleLocation_decode_aper; +per_type_encoder_f AxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeight.h new file mode 100644 index 000000000..b943195aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AxleWeight_H_ +#define _AxleWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeight */ +typedef long AxleWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; +asn_struct_free_f AxleWeight_free; +asn_struct_print_f AxleWeight_print; +asn_constr_check_f AxleWeight_constraint; +ber_type_decoder_f AxleWeight_decode_ber; +der_type_encoder_f AxleWeight_encode_der; +xer_type_decoder_f AxleWeight_decode_xer; +xer_type_encoder_f AxleWeight_encode_xer; +oer_type_decoder_f AxleWeight_decode_oer; +oer_type_encoder_f AxleWeight_encode_oer; +per_type_decoder_f AxleWeight_decode_uper; +per_type_encoder_f AxleWeight_encode_uper; +per_type_decoder_f AxleWeight_decode_aper; +per_type_encoder_f AxleWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightList.h new file mode 100644 index 000000000..f38b832c3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AxleWeightList_H_ +#define _AxleWeightList_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 AxleWeightSet; + +/* AxleWeightList */ +typedef struct AxleWeightList { + A_SEQUENCE_OF(struct AxleWeightSet) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightList; +extern asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightList_1[1]; +extern asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AxleWeightSet.h" + +#endif /* _AxleWeightList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightSet.h new file mode 100644 index 000000000..34d204c34 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AxleWeightSet.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _AxleWeightSet_H_ +#define _AxleWeightSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AxleLocation.h" +#include "AxleWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeightSet */ +typedef struct AxleWeightSet { + AxleLocation_t *location; /* OPTIONAL */ + AxleWeight_t *weight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeightSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BIT_STRING.h new file mode 100644 index 000000000..e755fe9f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BIT_STRING.h @@ -0,0 +1,75 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BIT_STRING_H_ +#define _BIT_STRING_H_ + +#include /* Some help from OCTET STRING */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct BIT_STRING_s { + uint8_t *buf; /* BIT STRING body */ + size_t size; /* Size of the above buffer */ + + int bits_unused;/* Unused trailing bits in the last octet (0..7) */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} BIT_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; +extern asn_TYPE_operation_t asn_OP_BIT_STRING; +extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs; + +#define BIT_STRING_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f BIT_STRING_print; /* Human-readable output */ +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f BIT_STRING_compare; + +asn_constr_check_f BIT_STRING_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define BIT_STRING_decode_ber OCTET_STRING_decode_ber +#define BIT_STRING_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary +xer_type_encoder_f BIT_STRING_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f BIT_STRING_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f BIT_STRING_decode_oer; +oer_type_encoder_f BIT_STRING_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f BIT_STRING_decode_uper; +per_type_encoder_f BIT_STRING_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define BIT_STRING_decode_aper OCTET_STRING_decode_aper +#define BIT_STRING_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f BIT_STRING_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +const BIT_STRING_t *BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp); + +#ifdef __cplusplus +} +#endif + +#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BOOLEAN.h new file mode 100644 index 000000000..2cbbe7101 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BOOLEAN.h @@ -0,0 +1,70 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BOOLEAN_H_ +#define _BOOLEAN_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The underlying integer may contain various values, but everything + * non-zero is capped to 0xff by the DER encoder. The BER decoder may + * yield non-zero values different from 1, beware. + */ +typedef unsigned BOOLEAN_t; + +extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; +extern asn_TYPE_operation_t asn_OP_BOOLEAN; + +asn_struct_free_f BOOLEAN_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f BOOLEAN_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f BOOLEAN_compare; + +#define BOOLEAN_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f BOOLEAN_decode_ber; +der_type_encoder_f BOOLEAN_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f BOOLEAN_decode_xer; +xer_type_encoder_f BOOLEAN_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f BOOLEAN_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f BOOLEAN_decode_oer; +oer_type_encoder_f BOOLEAN_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f BOOLEAN_decode_uper; +per_type_encoder_f BOOLEAN_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f BOOLEAN_decode_aper; +per_type_encoder_f BOOLEAN_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f BOOLEAN_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BSMcoreData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BSMcoreData.h new file mode 100644 index 000000000..61e8e3a1f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BSMcoreData.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BSMcoreData_H_ +#define _BSMcoreData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "DSecond.h" +#include "Latitude.h" +#include "Longitude.h" +#include "Common_Elevation.h" +#include "PositionalAccuracy.h" +#include "TransmissionState.h" +#include "Speed.h" +#include "Heading.h" +#include "SteeringWheelAngle.h" +#include "AccelerationSet4Way.h" +#include "BrakeSystemStatus.h" +#include "VehicleSize.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BSMcoreData */ +typedef struct BSMcoreData { + Common_MsgCount_t msgCnt; + TemporaryID_t id; + DSecond_t secMark; + Latitude_t lat; + Longitude_t Long; + Common_Elevation_t elev; + PositionalAccuracy_t accuracy; + TransmissionState_t transmission; + Speed_t speed; + Heading_t heading; + SteeringWheelAngle_t angle; + AccelerationSet4Way_t accelSet; + BrakeSystemStatus_t brakes; + VehicleSize_t size; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMcoreData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMcoreData; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMcoreData_1[14]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BSMcoreData_H_ */ +#include "asn_internal.h" 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 new file mode 100644 index 000000000..255eb247b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _BasicSafetyMessage_addGrpCarma_H_ +#define _BasicSafetyMessage_addGrpCarma_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D_addGrpCarma; + +/* BasicSafetyMessage-addGrpCarma */ +typedef struct BasicSafetyMessage_addGrpCarma { + struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints { + A_SEQUENCE_OF(struct Position3D_addGrpCarma) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *routeDestinationPoints; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BasicSafetyMessage_addGrpCarma_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma; +extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1; +extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[1]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D-addGrpCarma.h" + +#endif /* _BasicSafetyMessage_addGrpCarma_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage.h new file mode 100644 index 000000000..94a582858 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BasicSafetyMessage_H_ +#define _BasicSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BSMcoreData.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMpartIIExtension; +struct Reg_BasicSafetyMessage; + +/* BasicSafetyMessage */ +typedef struct BasicSafetyMessage { + BSMcoreData_t coreData; + struct BasicSafetyMessage__partII { + A_SEQUENCE_OF(struct BSMpartIIExtension) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *partII; + struct BasicSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} BasicSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PartIIcontent.h" +#include "RegionalExtension.h" + +#endif /* _BasicSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleClass.h new file mode 100644 index 000000000..db177d620 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleClass.h @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BasicVehicleClass_H_ +#define _BasicVehicleClass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BasicVehicleClass */ +typedef long BasicVehicleClass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass; +asn_struct_free_f BasicVehicleClass_free; +asn_struct_print_f BasicVehicleClass_print; +asn_constr_check_f BasicVehicleClass_constraint; +ber_type_decoder_f BasicVehicleClass_decode_ber; +der_type_encoder_f BasicVehicleClass_encode_der; +xer_type_decoder_f BasicVehicleClass_decode_xer; +xer_type_encoder_f BasicVehicleClass_encode_xer; +oer_type_decoder_f BasicVehicleClass_decode_oer; +oer_type_encoder_f BasicVehicleClass_encode_oer; +per_type_decoder_f BasicVehicleClass_decode_uper; +per_type_encoder_f BasicVehicleClass_encode_uper; +per_type_decoder_f BasicVehicleClass_decode_aper; +per_type_encoder_f BasicVehicleClass_encode_aper; +#define BasicVehicleClass_unknownVehicleClass ((BasicVehicleClass_t)0) +#define BasicVehicleClass_specialVehicleClass ((BasicVehicleClass_t)1) +#define BasicVehicleClass_passenger_Vehicle_TypeUnknown ((BasicVehicleClass_t)10) +#define BasicVehicleClass_passenger_Vehicle_TypeOther ((BasicVehicleClass_t)11) +#define BasicVehicleClass_lightTruck_Vehicle_TypeUnknown ((BasicVehicleClass_t)20) +#define BasicVehicleClass_lightTruck_Vehicle_TypeOther ((BasicVehicleClass_t)21) +#define BasicVehicleClass_truck_Vehicle_TypeUnknown ((BasicVehicleClass_t)25) +#define BasicVehicleClass_truck_Vehicle_TypeOther ((BasicVehicleClass_t)26) +#define BasicVehicleClass_truck_axleCnt2 ((BasicVehicleClass_t)27) +#define BasicVehicleClass_truck_axleCnt3 ((BasicVehicleClass_t)28) +#define BasicVehicleClass_truck_axleCnt4 ((BasicVehicleClass_t)29) +#define BasicVehicleClass_truck_axleCnt4Trailer ((BasicVehicleClass_t)30) +#define BasicVehicleClass_truck_axleCnt5Trailer ((BasicVehicleClass_t)31) +#define BasicVehicleClass_truck_axleCnt6Trailer ((BasicVehicleClass_t)32) +#define BasicVehicleClass_truck_axleCnt5MultiTrailer ((BasicVehicleClass_t)33) +#define BasicVehicleClass_truck_axleCnt6MultiTrailer ((BasicVehicleClass_t)34) +#define BasicVehicleClass_truck_axleCnt7MultiTrailer ((BasicVehicleClass_t)35) +#define BasicVehicleClass_motorcycle_TypeUnknown ((BasicVehicleClass_t)40) +#define BasicVehicleClass_motorcycle_TypeOther ((BasicVehicleClass_t)41) +#define BasicVehicleClass_motorcycle_Cruiser_Standard ((BasicVehicleClass_t)42) +#define BasicVehicleClass_motorcycle_SportUnclad ((BasicVehicleClass_t)43) +#define BasicVehicleClass_motorcycle_SportTouring ((BasicVehicleClass_t)44) +#define BasicVehicleClass_motorcycle_SuperSport ((BasicVehicleClass_t)45) +#define BasicVehicleClass_motorcycle_Touring ((BasicVehicleClass_t)46) +#define BasicVehicleClass_motorcycle_Trike ((BasicVehicleClass_t)47) +#define BasicVehicleClass_motorcycle_wPassengers ((BasicVehicleClass_t)48) +#define BasicVehicleClass_transit_TypeUnknown ((BasicVehicleClass_t)50) +#define BasicVehicleClass_transit_TypeOther ((BasicVehicleClass_t)51) +#define BasicVehicleClass_transit_BRT ((BasicVehicleClass_t)52) +#define BasicVehicleClass_transit_ExpressBus ((BasicVehicleClass_t)53) +#define BasicVehicleClass_transit_LocalBus ((BasicVehicleClass_t)54) +#define BasicVehicleClass_transit_SchoolBus ((BasicVehicleClass_t)55) +#define BasicVehicleClass_transit_FixedGuideway ((BasicVehicleClass_t)56) +#define BasicVehicleClass_transit_Paratransit ((BasicVehicleClass_t)57) +#define BasicVehicleClass_transit_Paratransit_Ambulance ((BasicVehicleClass_t)58) +#define BasicVehicleClass_emergency_TypeUnknown ((BasicVehicleClass_t)60) +#define BasicVehicleClass_emergency_TypeOther ((BasicVehicleClass_t)61) +#define BasicVehicleClass_emergency_Fire_Light_Vehicle ((BasicVehicleClass_t)62) +#define BasicVehicleClass_emergency_Fire_Heavy_Vehicle ((BasicVehicleClass_t)63) +#define BasicVehicleClass_emergency_Fire_Paramedic_Vehicle ((BasicVehicleClass_t)64) +#define BasicVehicleClass_emergency_Fire_Ambulance_Vehicle ((BasicVehicleClass_t)65) +#define BasicVehicleClass_emergency_Police_Light_Vehicle ((BasicVehicleClass_t)66) +#define BasicVehicleClass_emergency_Police_Heavy_Vehicle ((BasicVehicleClass_t)67) +#define BasicVehicleClass_emergency_Other_Responder ((BasicVehicleClass_t)68) +#define BasicVehicleClass_emergency_Other_Ambulance ((BasicVehicleClass_t)69) +#define BasicVehicleClass_otherTraveler_TypeUnknown ((BasicVehicleClass_t)80) +#define BasicVehicleClass_otherTraveler_TypeOther ((BasicVehicleClass_t)81) +#define BasicVehicleClass_otherTraveler_Pedestrian ((BasicVehicleClass_t)82) +#define BasicVehicleClass_otherTraveler_Visually_Disabled ((BasicVehicleClass_t)83) +#define BasicVehicleClass_otherTraveler_Physically_Disabled ((BasicVehicleClass_t)84) +#define BasicVehicleClass_otherTraveler_Bicycle ((BasicVehicleClass_t)85) +#define BasicVehicleClass_otherTraveler_Vulnerable_Roadworker ((BasicVehicleClass_t)86) +#define BasicVehicleClass_infrastructure_TypeUnknown ((BasicVehicleClass_t)90) +#define BasicVehicleClass_infrastructure_Fixed ((BasicVehicleClass_t)91) +#define BasicVehicleClass_infrastructure_Movable ((BasicVehicleClass_t)92) +#define BasicVehicleClass_equipped_CargoTrailer ((BasicVehicleClass_t)93) + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleClass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleRole.h new file mode 100644 index 000000000..892f8a33c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicVehicleRole.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BasicVehicleRole_H_ +#define _BasicVehicleRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BasicVehicleRole { + BasicVehicleRole_basicVehicle = 0, + BasicVehicleRole_publicTransport = 1, + BasicVehicleRole_specialTransport = 2, + BasicVehicleRole_dangerousGoods = 3, + BasicVehicleRole_roadWork = 4, + BasicVehicleRole_roadRescue = 5, + BasicVehicleRole_emergency = 6, + BasicVehicleRole_safetyCar = 7, + BasicVehicleRole_none_unknown = 8, + BasicVehicleRole_truck = 9, + BasicVehicleRole_motorcycle = 10, + BasicVehicleRole_roadSideSource = 11, + BasicVehicleRole_police = 12, + BasicVehicleRole_fire = 13, + BasicVehicleRole_ambulance = 14, + BasicVehicleRole_dot = 15, + BasicVehicleRole_transit = 16, + BasicVehicleRole_slowMoving = 17, + BasicVehicleRole_stopNgo = 18, + BasicVehicleRole_cyclist = 19, + BasicVehicleRole_pedestrian = 20, + BasicVehicleRole_nonMotorized = 21, + BasicVehicleRole_military = 22 + /* + * Enumeration is extensible + */ +} e_BasicVehicleRole; + +/* BasicVehicleRole */ +typedef long BasicVehicleRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole; +extern const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1; +asn_struct_free_f BasicVehicleRole_free; +asn_struct_print_f BasicVehicleRole_print; +asn_constr_check_f BasicVehicleRole_constraint; +ber_type_decoder_f BasicVehicleRole_decode_ber; +der_type_encoder_f BasicVehicleRole_encode_der; +xer_type_decoder_f BasicVehicleRole_decode_xer; +xer_type_encoder_f BasicVehicleRole_encode_xer; +oer_type_decoder_f BasicVehicleRole_decode_oer; +oer_type_encoder_f BasicVehicleRole_encode_oer; +per_type_decoder_f BasicVehicleRole_decode_uper; +per_type_encoder_f BasicVehicleRole_encode_uper; +per_type_decoder_f BasicVehicleRole_decode_aper; +per_type_encoder_f BasicVehicleRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedPressure.h new file mode 100644 index 000000000..3cc4a6118 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedPressure.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BrakeAppliedPressure_H_ +#define _BrakeAppliedPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedPressure { + BrakeAppliedPressure_unavailable = 0, + BrakeAppliedPressure_minPressure = 1, + BrakeAppliedPressure_bkLvl_2 = 2, + BrakeAppliedPressure_bkLvl_3 = 3, + BrakeAppliedPressure_bkLvl_4 = 4, + BrakeAppliedPressure_bkLvl_5 = 5, + BrakeAppliedPressure_bkLvl_6 = 6, + BrakeAppliedPressure_bkLvl_7 = 7, + BrakeAppliedPressure_bkLvl_8 = 8, + BrakeAppliedPressure_bkLvl_9 = 9, + BrakeAppliedPressure_bkLvl_10 = 10, + BrakeAppliedPressure_bkLvl_11 = 11, + BrakeAppliedPressure_bkLvl_12 = 12, + BrakeAppliedPressure_bkLvl_13 = 13, + BrakeAppliedPressure_bkLvl_14 = 14, + BrakeAppliedPressure_maxPressure = 15 +} e_BrakeAppliedPressure; + +/* BrakeAppliedPressure */ +typedef long BrakeAppliedPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1; +asn_struct_free_f BrakeAppliedPressure_free; +asn_struct_print_f BrakeAppliedPressure_print; +asn_constr_check_f BrakeAppliedPressure_constraint; +ber_type_decoder_f BrakeAppliedPressure_decode_ber; +der_type_encoder_f BrakeAppliedPressure_encode_der; +xer_type_decoder_f BrakeAppliedPressure_decode_xer; +xer_type_encoder_f BrakeAppliedPressure_encode_xer; +oer_type_decoder_f BrakeAppliedPressure_decode_oer; +oer_type_encoder_f BrakeAppliedPressure_encode_oer; +per_type_decoder_f BrakeAppliedPressure_decode_uper; +per_type_encoder_f BrakeAppliedPressure_encode_uper; +per_type_decoder_f BrakeAppliedPressure_decode_aper; +per_type_encoder_f BrakeAppliedPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedStatus.h new file mode 100644 index 000000000..c7fe5faec --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeAppliedStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BrakeAppliedStatus_H_ +#define _BrakeAppliedStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedStatus { + BrakeAppliedStatus_unavailable = 0, + BrakeAppliedStatus_leftFront = 1, + BrakeAppliedStatus_leftRear = 2, + BrakeAppliedStatus_rightFront = 3, + BrakeAppliedStatus_rightRear = 4 +} e_BrakeAppliedStatus; + +/* BrakeAppliedStatus */ +typedef BIT_STRING_t BrakeAppliedStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; +asn_struct_free_f BrakeAppliedStatus_free; +asn_struct_print_f BrakeAppliedStatus_print; +asn_constr_check_f BrakeAppliedStatus_constraint; +ber_type_decoder_f BrakeAppliedStatus_decode_ber; +der_type_encoder_f BrakeAppliedStatus_encode_der; +xer_type_decoder_f BrakeAppliedStatus_decode_xer; +xer_type_encoder_f BrakeAppliedStatus_encode_xer; +oer_type_decoder_f BrakeAppliedStatus_decode_oer; +oer_type_encoder_f BrakeAppliedStatus_encode_oer; +per_type_decoder_f BrakeAppliedStatus_decode_uper; +per_type_encoder_f BrakeAppliedStatus_encode_uper; +per_type_decoder_f BrakeAppliedStatus_decode_aper; +per_type_encoder_f BrakeAppliedStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeBoostApplied.h new file mode 100644 index 000000000..e89e1c7f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeBoostApplied.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BrakeBoostApplied_H_ +#define _BrakeBoostApplied_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeBoostApplied { + BrakeBoostApplied_unavailable = 0, + BrakeBoostApplied_off = 1, + BrakeBoostApplied_on = 2 +} e_BrakeBoostApplied; + +/* BrakeBoostApplied */ +typedef long BrakeBoostApplied_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1; +asn_struct_free_f BrakeBoostApplied_free; +asn_struct_print_f BrakeBoostApplied_print; +asn_constr_check_f BrakeBoostApplied_constraint; +ber_type_decoder_f BrakeBoostApplied_decode_ber; +der_type_encoder_f BrakeBoostApplied_encode_der; +xer_type_decoder_f BrakeBoostApplied_decode_xer; +xer_type_encoder_f BrakeBoostApplied_encode_xer; +oer_type_decoder_f BrakeBoostApplied_decode_oer; +oer_type_encoder_f BrakeBoostApplied_encode_oer; +per_type_decoder_f BrakeBoostApplied_decode_uper; +per_type_encoder_f BrakeBoostApplied_encode_uper; +per_type_decoder_f BrakeBoostApplied_decode_aper; +per_type_encoder_f BrakeBoostApplied_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeBoostApplied_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeSystemStatus.h new file mode 100644 index 000000000..c064f4414 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BrakeSystemStatus.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BrakeSystemStatus_H_ +#define _BrakeSystemStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BrakeAppliedStatus.h" +#include "TractionControlStatus.h" +#include "AntiLockBrakeStatus.h" +#include "StabilityControlStatus.h" +#include "BrakeBoostApplied.h" +#include "AuxiliaryBrakeStatus.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BrakeSystemStatus */ +typedef struct BrakeSystemStatus { + BrakeAppliedStatus_t wheelBrakes; + TractionControlStatus_t traction; + AntiLockBrakeStatus_t abs; + StabilityControlStatus_t scs; + BrakeBoostApplied_t brakeBoost; + AuxiliaryBrakeStatus_t auxBrakes; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BrakeSystemStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeSystemStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeight.h new file mode 100644 index 000000000..517212067 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BumperHeight_H_ +#define _BumperHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeight */ +typedef long BumperHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BumperHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BumperHeight; +asn_struct_free_f BumperHeight_free; +asn_struct_print_f BumperHeight_print; +asn_constr_check_f BumperHeight_constraint; +ber_type_decoder_f BumperHeight_decode_ber; +der_type_encoder_f BumperHeight_encode_der; +xer_type_decoder_f BumperHeight_decode_xer; +xer_type_encoder_f BumperHeight_encode_xer; +oer_type_decoder_f BumperHeight_decode_oer; +oer_type_encoder_f BumperHeight_encode_oer; +per_type_decoder_f BumperHeight_decode_uper; +per_type_encoder_f BumperHeight_encode_uper; +per_type_decoder_f BumperHeight_decode_aper; +per_type_encoder_f BumperHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeights.h new file mode 100644 index 000000000..d320d983f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BumperHeights.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _BumperHeights_H_ +#define _BumperHeights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BumperHeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeights */ +typedef struct BumperHeights { + BumperHeight_t front; + BumperHeight_t rear; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BumperHeights_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; +extern asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1; +extern asn_TYPE_member_t asn_MBR_BumperHeights_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CargoWeight.h new file mode 100644 index 000000000..2d2354c80 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CargoWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _CargoWeight_H_ +#define _CargoWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CargoWeight */ +typedef long CargoWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CargoWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; +asn_struct_free_f CargoWeight_free; +asn_struct_print_f CargoWeight_print; +asn_constr_check_f CargoWeight_constraint; +ber_type_decoder_f CargoWeight_decode_ber; +der_type_encoder_f CargoWeight_encode_der; +xer_type_decoder_f CargoWeight_decode_xer; +xer_type_encoder_f CargoWeight_encode_xer; +oer_type_decoder_f CargoWeight_decode_oer; +oer_type_encoder_f CargoWeight_encode_oer; +per_type_decoder_f CargoWeight_decode_uper; +per_type_encoder_f CargoWeight_encode_uper; +per_type_decoder_f CargoWeight_decode_aper; +per_type_encoder_f CargoWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CargoWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Circle.h new file mode 100644 index 000000000..3688617d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Circle.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Circle_H_ +#define _Circle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "Radius-B12.h" +#include "DistanceUnits.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Circle */ +typedef struct Circle { + Position3D_t center; + Radius_B12_t radius; + DistanceUnits_t units; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Circle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Circle; +extern asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1; +extern asn_TYPE_member_t asn_MBR_Circle_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Circle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ClassificationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ClassificationConfidence.h new file mode 100644 index 000000000..155280700 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ClassificationConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ClassificationConfidence_H_ +#define _ClassificationConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ClassificationConfidence */ +typedef long ClassificationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence; +asn_struct_free_f ClassificationConfidence_free; +asn_struct_print_f ClassificationConfidence_print; +asn_constr_check_f ClassificationConfidence_constraint; +ber_type_decoder_f ClassificationConfidence_decode_ber; +der_type_encoder_f ClassificationConfidence_encode_der; +xer_type_decoder_f ClassificationConfidence_decode_xer; +xer_type_encoder_f ClassificationConfidence_encode_xer; +oer_type_decoder_f ClassificationConfidence_decode_oer; +oer_type_encoder_f ClassificationConfidence_encode_oer; +per_type_decoder_f ClassificationConfidence_decode_uper; +per_type_encoder_f ClassificationConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ClassificationConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoarseHeading.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoarseHeading.h new file mode 100644 index 000000000..dca305e55 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoarseHeading.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _CoarseHeading_H_ +#define _CoarseHeading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoarseHeading */ +typedef long CoarseHeading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoarseHeading; +asn_struct_free_f CoarseHeading_free; +asn_struct_print_f CoarseHeading_print; +asn_constr_check_f CoarseHeading_constraint; +ber_type_decoder_f CoarseHeading_decode_ber; +der_type_encoder_f CoarseHeading_encode_der; +xer_type_decoder_f CoarseHeading_decode_xer; +xer_type_encoder_f CoarseHeading_encode_xer; +oer_type_decoder_f CoarseHeading_decode_oer; +oer_type_encoder_f CoarseHeading_encode_oer; +per_type_decoder_f CoarseHeading_decode_uper; +per_type_encoder_f CoarseHeading_encode_uper; +per_type_decoder_f CoarseHeading_decode_aper; +per_type_encoder_f CoarseHeading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoarseHeading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CodeWord.h new file mode 100644 index 000000000..088f2d0da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CodeWord.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _CodeWord_H_ +#define _CodeWord_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CodeWord */ +typedef OCTET_STRING_t CodeWord_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CodeWord; +asn_struct_free_f CodeWord_free; +asn_struct_print_f CodeWord_print; +asn_constr_check_f CodeWord_constraint; +ber_type_decoder_f CodeWord_decode_ber; +der_type_encoder_f CodeWord_encode_der; +xer_type_decoder_f CodeWord_decode_xer; +xer_type_encoder_f CodeWord_encode_xer; +oer_type_decoder_f CodeWord_decode_oer; +oer_type_encoder_f CodeWord_encode_oer; +per_type_decoder_f CodeWord_decode_uper; +per_type_encoder_f CodeWord_encode_uper; +per_type_decoder_f CodeWord_decode_aper; +per_type_encoder_f CodeWord_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CodeWord_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoefficientOfFriction.h new file mode 100644 index 000000000..28f99afb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CoefficientOfFriction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _CoefficientOfFriction_H_ +#define _CoefficientOfFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoefficientOfFriction */ +typedef long CoefficientOfFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; +asn_struct_free_f CoefficientOfFriction_free; +asn_struct_print_f CoefficientOfFriction_print; +asn_constr_check_f CoefficientOfFriction_constraint; +ber_type_decoder_f CoefficientOfFriction_decode_ber; +der_type_encoder_f CoefficientOfFriction_encode_der; +xer_type_decoder_f CoefficientOfFriction_decode_xer; +xer_type_encoder_f CoefficientOfFriction_encode_xer; +oer_type_decoder_f CoefficientOfFriction_decode_oer; +oer_type_encoder_f CoefficientOfFriction_encode_oer; +per_type_decoder_f CoefficientOfFriction_decode_uper; +per_type_encoder_f CoefficientOfFriction_encode_uper; +per_type_decoder_f CoefficientOfFriction_decode_aper; +per_type_encoder_f CoefficientOfFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoefficientOfFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CommonSafetyRequest.h new file mode 100644 index 000000000..bdfa50017 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/CommonSafetyRequest.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _CommonSafetyRequest_H_ +#define _CommonSafetyRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "RequestedItemList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_CommonSafetyRequest; + +/* CommonSafetyRequest */ +typedef struct CommonSafetyRequest { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Common_MsgCount_t *msgCnt; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RequestedItemList_t requests; + struct CommonSafetyRequest__regional { + A_SEQUENCE_OF(struct Reg_CommonSafetyRequest) 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; +} CommonSafetyRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _CommonSafetyRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Angle.h new file mode 100644 index 000000000..98a865511 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Angle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Common_Angle_H_ +#define _Common_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_Angle */ +typedef long Common_Angle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_Angle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_Angle; +asn_struct_free_f Common_Angle_free; +asn_struct_print_f Common_Angle_print; +asn_constr_check_f Common_Angle_constraint; +ber_type_decoder_f Common_Angle_decode_ber; +der_type_encoder_f Common_Angle_encode_der; +xer_type_decoder_f Common_Angle_decode_xer; +xer_type_encoder_f Common_Angle_encode_xer; +oer_type_decoder_f Common_Angle_decode_oer; +oer_type_encoder_f Common_Angle_encode_oer; +per_type_decoder_f Common_Angle_decode_uper; +per_type_encoder_f Common_Angle_encode_uper; +per_type_decoder_f Common_Angle_decode_aper; +per_type_encoder_f Common_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Elevation.h new file mode 100644 index 000000000..cf5925ca5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_Elevation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Common_Elevation_H_ +#define _Common_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_Elevation */ +typedef long Common_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_Elevation; +asn_struct_free_f Common_Elevation_free; +asn_struct_print_f Common_Elevation_print; +asn_constr_check_f Common_Elevation_constraint; +ber_type_decoder_f Common_Elevation_decode_ber; +der_type_encoder_f Common_Elevation_encode_der; +xer_type_decoder_f Common_Elevation_decode_xer; +xer_type_encoder_f Common_Elevation_encode_xer; +oer_type_decoder_f Common_Elevation_decode_oer; +oer_type_encoder_f Common_Elevation_encode_oer; +per_type_decoder_f Common_Elevation_decode_uper; +per_type_encoder_f Common_Elevation_encode_uper; +per_type_decoder_f Common_Elevation_decode_aper; +per_type_encoder_f Common_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_MsgCount.h new file mode 100644 index 000000000..aed312877 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Common_MsgCount.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Common_MsgCount_H_ +#define _Common_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common_MsgCount */ +typedef long Common_MsgCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Common_MsgCount; +asn_struct_free_f Common_MsgCount_free; +asn_struct_print_f Common_MsgCount_print; +asn_constr_check_f Common_MsgCount_constraint; +ber_type_decoder_f Common_MsgCount_decode_ber; +der_type_encoder_f Common_MsgCount_encode_der; +xer_type_decoder_f Common_MsgCount_decode_xer; +xer_type_encoder_f Common_MsgCount_encode_xer; +oer_type_decoder_f Common_MsgCount_decode_oer; +oer_type_encoder_f Common_MsgCount_encode_oer; +per_type_decoder_f Common_MsgCount_decode_uper; +per_type_encoder_f Common_MsgCount_encode_uper; +per_type_decoder_f Common_MsgCount_decode_aper; +per_type_encoder_f Common_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Common_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ComputedLane.h new file mode 100644 index 000000000..9e127c5c1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ComputedLane.h @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ComputedLane_H_ +#define _ComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "Common_Angle.h" +#include "Scale-B12.h" +#include "DrivenLineOffsetSm.h" +#include "DrivenLineOffsetLg.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ComputedLane__offsetXaxis_PR { + ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetXaxis_PR_small, + ComputedLane__offsetXaxis_PR_large +} ComputedLane__offsetXaxis_PR; +typedef enum ComputedLane__offsetYaxis_PR { + ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetYaxis_PR_small, + ComputedLane__offsetYaxis_PR_large +} ComputedLane__offsetYaxis_PR; + +/* Forward declarations */ +struct Reg_ComputedLane; + +/* ComputedLane */ +typedef struct ComputedLane { + LaneID_t referenceLaneId; + struct ComputedLane__offsetXaxis { + ComputedLane__offsetXaxis_PR present; + union ComputedLane__offsetXaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetXaxis; + struct ComputedLane__offsetYaxis { + ComputedLane__offsetYaxis_PR present; + union ComputedLane__offsetYaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetYaxis; + Common_Angle_t *rotateXY; /* OPTIONAL */ + Scale_B12_t *scaleXaxis; /* OPTIONAL */ + Scale_B12_t *scaleYaxis; /* OPTIONAL */ + struct ComputedLane__regional { + A_SEQUENCE_OF(struct Reg_ComputedLane) 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; +} ComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ComputedLane_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _ComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Confidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Confidence.h new file mode 100644 index 000000000..31b3ac066 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Confidence.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Confidence_H_ +#define _Confidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Confidence */ +typedef long Confidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Confidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Confidence; +asn_struct_free_f Confidence_free; +asn_struct_print_f Confidence_print; +asn_constr_check_f Confidence_constraint; +ber_type_decoder_f Confidence_decode_ber; +der_type_encoder_f Confidence_encode_der; +xer_type_decoder_f Confidence_decode_xer; +xer_type_encoder_f Confidence_encode_xer; +oer_type_decoder_f Confidence_decode_oer; +oer_type_encoder_f Confidence_encode_oer; +per_type_decoder_f Confidence_decode_uper; +per_type_encoder_f Confidence_encode_uper; +per_type_decoder_f Confidence_decode_aper; +per_type_encoder_f Confidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Confidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConfidenceSet.h new file mode 100644 index 000000000..377a1a672 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConfidenceSet.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ConfidenceSet_H_ +#define _ConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "HeadingConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelSteerYawRateConfidence; +struct SpeedandHeadingandThrottleConfidence; +struct PositionConfidenceSet; + +/* ConfidenceSet */ +typedef struct ConfidenceSet { + struct AccelSteerYawRateConfidence *accelConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + SteeringWheelAngleConfidence_t *steerConfidence; /* OPTIONAL */ + HeadingConfidence_t *headingConfidence; /* OPTIONAL */ + ThrottleConfidence_t *throttleConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ConfidenceSet_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelSteerYawRateConfidence.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "PositionConfidenceSet.h" + +#endif /* _ConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectingLane.h new file mode 100644 index 000000000..380caebc9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectingLane.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ConnectingLane_H_ +#define _ConnectingLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "AllowedManeuvers.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ConnectingLane */ +typedef struct ConnectingLane { + LaneID_t lane; + AllowedManeuvers_t *maneuver; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectingLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectingLane_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectingLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Connection.h new file mode 100644 index 000000000..325a41923 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Connection.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Connection_H_ +#define _Connection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ConnectingLane.h" +#include "SignalGroupID.h" +#include "RestrictionClassID.h" +#include "LaneConnectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionReferenceID; + +/* Connection */ +typedef struct Connection { + ConnectingLane_t connectingLane; + struct IntersectionReferenceID *remoteIntersection; /* OPTIONAL */ + SignalGroupID_t *signalGroup; /* OPTIONAL */ + RestrictionClassID_t *userClass; /* OPTIONAL */ + LaneConnectionID_t *connectionID; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Connection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Connection; +extern asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1; +extern asn_TYPE_member_t asn_MBR_Connection_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionReferenceID.h" + +#endif /* _Connection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist-addGrpC.h new file mode 100644 index 000000000..0bf9081a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist-addGrpC.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ConnectionManeuverAssist_addGrpC_H_ +#define _ConnectionManeuverAssist_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleToLanePositionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeOffsetPointXY; + +/* ConnectionManeuverAssist-addGrpC */ +typedef struct ConnectionManeuverAssist_addGrpC { + VehicleToLanePositionList_t vehicleToLanePositions; + struct NodeOffsetPointXY *rsuDistanceFromAnchor; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectionManeuverAssist_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeOffsetPointXY.h" + +#endif /* _ConnectionManeuverAssist_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist.h new file mode 100644 index 000000000..d79b8b408 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectionManeuverAssist.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ConnectionManeuverAssist_H_ +#define _ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneConnectionID.h" +#include "ZoneLength.h" +#include "WaitOnStopline.h" +#include "PedestrianBicycleDetect.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_ConnectionManeuverAssist; + +/* ConnectionManeuverAssist */ +typedef struct ConnectionManeuverAssist { + LaneConnectionID_t connectionID; + ZoneLength_t *queueLength; /* OPTIONAL */ + ZoneLength_t *availableStorageLength; /* OPTIONAL */ + WaitOnStopline_t *waitOnStop; /* OPTIONAL */ + PedestrianBicycleDetect_t *pedBicycleDetect; /* OPTIONAL */ + struct ConnectionManeuverAssist__regional { + A_SEQUENCE_OF(struct Reg_ConnectionManeuverAssist) 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; +} ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectsToList.h new file mode 100644 index 000000000..2878837aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ConnectsToList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ConnectsToList_H_ +#define _ConnectsToList_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 Connection; + +/* ConnectsToList */ +typedef struct ConnectsToList { + A_SEQUENCE_OF(struct Connection) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectsToList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; +extern asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectsToList_1[1]; +extern asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Connection.h" + +#endif /* _ConnectsToList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Count.h new file mode 100644 index 000000000..1f191434f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Count.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Count_H_ +#define _Count_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Count */ +typedef long Count_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Count; +asn_struct_free_f Count_free; +asn_struct_print_f Count_print; +asn_constr_check_f Count_constraint; +ber_type_decoder_f Count_decode_ber; +der_type_encoder_f Count_encode_der; +xer_type_decoder_f Count_decode_xer; +xer_type_encoder_f Count_encode_xer; +oer_type_decoder_f Count_decode_oer; +oer_type_encoder_f Count_encode_oer; +per_type_decoder_f Count_decode_uper; +per_type_encoder_f Count_encode_uper; +per_type_decoder_f Count_decode_aper; +per_type_encoder_f Count_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Count_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDate.h new file mode 100644 index 000000000..545998e9f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDate.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DDate_H_ +#define _DDate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDate */ +typedef struct DDate { + DYear_t year; + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDate; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDateTime.h new file mode 100644 index 000000000..9d187f099 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDateTime.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DDateTime_H_ +#define _DDateTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDateTime */ +typedef struct DDateTime { + DYear_t *year; /* OPTIONAL */ + DMonth_t *month; /* OPTIONAL */ + DDay_t *day; /* OPTIONAL */ + DHour_t *hour; /* OPTIONAL */ + DMinute_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDateTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDateTime; +extern asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1; +extern asn_TYPE_member_t asn_MBR_DDateTime_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDateTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDay.h new file mode 100644 index 000000000..6b7ecf671 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DDay.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DDay_H_ +#define _DDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDay */ +typedef long DDay_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DDay_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DDay; +asn_struct_free_f DDay_free; +asn_struct_print_f DDay_print; +asn_constr_check_f DDay_constraint; +ber_type_decoder_f DDay_decode_ber; +der_type_encoder_f DDay_encode_der; +xer_type_decoder_f DDay_decode_xer; +xer_type_encoder_f DDay_encode_xer; +oer_type_decoder_f DDay_decode_oer; +oer_type_encoder_f DDay_encode_oer; +per_type_decoder_f DDay_decode_uper; +per_type_encoder_f DDay_encode_uper; +per_type_decoder_f DDay_decode_aper; +per_type_encoder_f DDay_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DFullTime.h new file mode 100644 index 000000000..d9b7e5e2f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DFullTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DFullTime_H_ +#define _DFullTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DFullTime */ +typedef struct DFullTime { + DYear_t year; + DMonth_t month; + DDay_t day; + DHour_t hour; + DMinute_t minute; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DFullTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DFullTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DFullTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DHour.h new file mode 100644 index 000000000..8e1d0956b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DHour.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DHour_H_ +#define _DHour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DHour */ +typedef long DHour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DHour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DHour; +asn_struct_free_f DHour_free; +asn_struct_print_f DHour_print; +asn_constr_check_f DHour_constraint; +ber_type_decoder_f DHour_decode_ber; +der_type_encoder_f DHour_encode_der; +xer_type_decoder_f DHour_decode_xer; +xer_type_encoder_f DHour_encode_xer; +oer_type_decoder_f DHour_decode_oer; +oer_type_encoder_f DHour_encode_oer; +per_type_decoder_f DHour_decode_uper; +per_type_encoder_f DHour_encode_uper; +per_type_decoder_f DHour_decode_aper; +per_type_encoder_f DHour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DHour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMinute.h new file mode 100644 index 000000000..7cea5dfde --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMinute.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DMinute_H_ +#define _DMinute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMinute */ +typedef long DMinute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMinute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMinute; +asn_struct_free_f DMinute_free; +asn_struct_print_f DMinute_print; +asn_constr_check_f DMinute_constraint; +ber_type_decoder_f DMinute_decode_ber; +der_type_encoder_f DMinute_encode_der; +xer_type_decoder_f DMinute_decode_xer; +xer_type_encoder_f DMinute_encode_xer; +oer_type_decoder_f DMinute_decode_oer; +oer_type_encoder_f DMinute_encode_oer; +per_type_decoder_f DMinute_decode_uper; +per_type_encoder_f DMinute_encode_uper; +per_type_decoder_f DMinute_decode_aper; +per_type_encoder_f DMinute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMinute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonth.h new file mode 100644 index 000000000..d36428350 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DMonth_H_ +#define _DMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonth */ +typedef long DMonth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMonth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMonth; +asn_struct_free_f DMonth_free; +asn_struct_print_f DMonth_print; +asn_constr_check_f DMonth_constraint; +ber_type_decoder_f DMonth_decode_ber; +der_type_encoder_f DMonth_encode_der; +xer_type_decoder_f DMonth_decode_xer; +xer_type_encoder_f DMonth_encode_xer; +oer_type_decoder_f DMonth_decode_oer; +oer_type_encoder_f DMonth_encode_oer; +per_type_decoder_f DMonth_decode_uper; +per_type_encoder_f DMonth_encode_uper; +per_type_decoder_f DMonth_decode_aper; +per_type_encoder_f DMonth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonthDay.h new file mode 100644 index 000000000..f37dc5428 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DMonthDay.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DMonthDay_H_ +#define _DMonthDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonthDay */ +typedef struct DMonthDay { + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DMonthDay_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonthDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DOffset.h new file mode 100644 index 000000000..16583a947 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DOffset.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DOffset_H_ +#define _DOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DOffset */ +typedef long DOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DOffset; +asn_struct_free_f DOffset_free; +asn_struct_print_f DOffset_print; +asn_constr_check_f DOffset_constraint; +ber_type_decoder_f DOffset_decode_ber; +der_type_encoder_f DOffset_encode_der; +xer_type_decoder_f DOffset_decode_xer; +xer_type_encoder_f DOffset_encode_xer; +oer_type_decoder_f DOffset_decode_oer; +oer_type_encoder_f DOffset_encode_oer; +per_type_decoder_f DOffset_decode_uper; +per_type_encoder_f DOffset_encode_uper; +per_type_decoder_f DOffset_decode_aper; +per_type_encoder_f DOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRCmsgID.h new file mode 100644 index 000000000..9e9e399a6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRCmsgID.h @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DSRCmsgID_H_ +#define _DSRCmsgID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCmsgID */ +typedef long DSRCmsgID_t; + +/* Implementation */ +// #define DSRCmsgID_reservedMessageId_D ((DSRCmsgID_t)0) +// #define DSRCmsgID_alaCarteMessage_D ((DSRCmsgID_t)1) +// #define DSRCmsgID_basicSafetyMessage_D ((DSRCmsgID_t)2) +// #define DSRCmsgID_basicSafetyMessageVerbose_D ((DSRCmsgID_t)3) +// #define DSRCmsgID_commonSafetyRequest_D ((DSRCmsgID_t)4) +// #define DSRCmsgID_emergencyVehicleAlert_D ((DSRCmsgID_t)5) +// #define DSRCmsgID_intersectionCollision_D ((DSRCmsgID_t)6) +// #define DSRCmsgID_mapData_D ((DSRCmsgID_t)7) +// #define DSRCmsgID_nmeaCorrections_D ((DSRCmsgID_t)8) +// #define DSRCmsgID_probeDataManagement_D ((DSRCmsgID_t)9) +// #define DSRCmsgID_probeVehicleData_D ((DSRCmsgID_t)10) +// #define DSRCmsgID_roadSideAlert_D ((DSRCmsgID_t)11) +// #define DSRCmsgID_rtcmCorrections_D ((DSRCmsgID_t)12) +// #define DSRCmsgID_signalPhaseAndTimingMessage_D ((DSRCmsgID_t)13) +// #define DSRCmsgID_signalRequestMessage_D ((DSRCmsgID_t)14) +// #define DSRCmsgID_signalStatusMessage_D ((DSRCmsgID_t)15) +// #define DSRCmsgID_travelerInformation_D ((DSRCmsgID_t)16) +// #define DSRCmsgID_uperFrame_D ((DSRCmsgID_t)17) +extern asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; +asn_struct_free_f DSRCmsgID_free; +asn_struct_print_f DSRCmsgID_print; +asn_constr_check_f DSRCmsgID_constraint; +ber_type_decoder_f DSRCmsgID_decode_ber; +der_type_encoder_f DSRCmsgID_encode_der; +xer_type_decoder_f DSRCmsgID_decode_xer; +xer_type_encoder_f DSRCmsgID_encode_xer; +oer_type_decoder_f DSRCmsgID_decode_oer; +oer_type_encoder_f DSRCmsgID_encode_oer; +per_type_decoder_f DSRCmsgID_decode_uper; +per_type_encoder_f DSRCmsgID_encode_uper; +per_type_decoder_f DSRCmsgID_decode_aper; +per_type_encoder_f DSRCmsgID_encode_aper; +// #define DSRCmsgID_mapData ((DSRCmsgID_t)18) +// #define DSRCmsgID_signalPhaseAndTimingMessage ((DSRCmsgID_t)19) +// #define DSRCmsgID_basicSafetyMessage ((DSRCmsgID_t)20) +// #define DSRCmsgID_commonSafetyRequest ((DSRCmsgID_t)21) +// #define DSRCmsgID_emergencyVehicleAlert ((DSRCmsgID_t)22) +// #define DSRCmsgID_intersectionCollision ((DSRCmsgID_t)23) +// #define DSRCmsgID_nmeaCorrections ((DSRCmsgID_t)24) +// #define DSRCmsgID_probeDataManagement ((DSRCmsgID_t)25) +// #define DSRCmsgID_probeVehicleData ((DSRCmsgID_t)26) +// #define DSRCmsgID_roadSideAlert ((DSRCmsgID_t)27) +// #define DSRCmsgID_rtcmCorrections ((DSRCmsgID_t)28) +// #define DSRCmsgID_signalRequestMessage ((DSRCmsgID_t)29) +// #define DSRCmsgID_signalStatusMessage ((DSRCmsgID_t)30) +// #define DSRCmsgID_travelerInformation ((DSRCmsgID_t)31) +// #define DSRCmsgID_personalSafetyMessage ((DSRCmsgID_t)32) +// #define DSRCmsgID_testMessage00 ((DSRCmsgID_t)240) +// #define DSRCmsgID_testMessage01 ((DSRCmsgID_t)241) +// #define DSRCmsgID_testMessage02 ((DSRCmsgID_t)242) +// #define DSRCmsgID_testMessage03 ((DSRCmsgID_t)243) +// #define DSRCmsgID_testMessage04 ((DSRCmsgID_t)244) +// #define DSRCmsgID_testMessage05 ((DSRCmsgID_t)245) +// #define DSRCmsgID_testMessage06 ((DSRCmsgID_t)246) +// #define DSRCmsgID_testMessage07 ((DSRCmsgID_t)247) +// #define DSRCmsgID_testMessage08 ((DSRCmsgID_t)248) +// #define DSRCmsgID_testMessage09 ((DSRCmsgID_t)249) +// #define DSRCmsgID_testMessage10 ((DSRCmsgID_t)250) +// #define DSRCmsgID_testMessage11 ((DSRCmsgID_t)251) +// #define DSRCmsgID_testMessage12 ((DSRCmsgID_t)252) +// #define DSRCmsgID_testMessage13 ((DSRCmsgID_t)253) +// #define DSRCmsgID_testMessage14 ((DSRCmsgID_t)254) +// #define DSRCmsgID_testMessage15 ((DSRCmsgID_t)255) + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSecond.h new file mode 100644 index 000000000..d5c612139 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSecond.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DSecond_H_ +#define _DSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSecond */ +typedef long DSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSecond; +asn_struct_free_f DSecond_free; +asn_struct_print_f DSecond_print; +asn_constr_check_f DSecond_constraint; +ber_type_decoder_f DSecond_decode_ber; +der_type_encoder_f DSecond_encode_der; +xer_type_decoder_f DSecond_decode_xer; +xer_type_encoder_f DSecond_encode_xer; +oer_type_decoder_f DSecond_decode_oer; +oer_type_encoder_f DSecond_encode_oer; +per_type_decoder_f DSecond_decode_uper; +per_type_encoder_f DSecond_encode_uper; +per_type_decoder_f DSecond_decode_aper; +per_type_encoder_f DSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DTime.h new file mode 100644 index 000000000..4a595d033 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DTime_H_ +#define _DTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DTime */ +typedef struct DTime { + DHour_t hour; + DMinute_t minute; + DSecond_t second; + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYear.h new file mode 100644 index 000000000..9706e6e41 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYear.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DYear_H_ +#define _DYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYear */ +typedef long DYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DYear; +asn_struct_free_f DYear_free; +asn_struct_print_f DYear_print; +asn_constr_check_f DYear_constraint; +ber_type_decoder_f DYear_decode_ber; +der_type_encoder_f DYear_encode_der; +xer_type_decoder_f DYear_decode_xer; +xer_type_encoder_f DYear_encode_xer; +oer_type_decoder_f DYear_decode_oer; +oer_type_encoder_f DYear_encode_oer; +per_type_decoder_f DYear_decode_uper; +per_type_encoder_f DYear_encode_uper; +per_type_decoder_f DYear_decode_aper; +per_type_encoder_f DYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYearMonth.h new file mode 100644 index 000000000..44c34ec06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DYearMonth.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DYearMonth_H_ +#define _DYearMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYearMonth */ +typedef struct DYearMonth { + DYear_t year; + DMonth_t month; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DYearMonth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYearMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DailySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DailySchedule.h new file mode 100644 index 000000000..43dddacdc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DailySchedule.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DailySchedule_H_ +#define _DailySchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DailySchedule */ +typedef struct DailySchedule { + long begin; + long duration; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DailySchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DailySchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_DailySchedule_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DailySchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DataParameters.h new file mode 100644 index 000000000..81649b684 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DataParameters.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DataParameters_H_ +#define _DataParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DataParameters */ +typedef struct DataParameters { + IA5String_t *processMethod; /* OPTIONAL */ + IA5String_t *processAgency; /* OPTIONAL */ + IA5String_t *lastCheckedDate; /* OPTIONAL */ + IA5String_t *geoidUsed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DataParameters_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DataParameters; +extern asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1; +extern asn_TYPE_member_t asn_MBR_DataParameters_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DataParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Day.h new file mode 100644 index 000000000..b4e0f1ff5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Day.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Day_H_ +#define _Day_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Day */ +typedef long Day_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Day_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Day; +asn_struct_free_f Day_free; +asn_struct_print_f Day_print; +asn_constr_check_f Day_constraint; +ber_type_decoder_f Day_decode_ber; +der_type_encoder_f Day_encode_der; +xer_type_decoder_f Day_decode_xer; +xer_type_encoder_f Day_encode_xer; +oer_type_decoder_f Day_decode_oer; +oer_type_encoder_f Day_encode_oer; +per_type_decoder_f Day_decode_uper; +per_type_encoder_f Day_encode_uper; +per_type_decoder_f Day_decode_aper; +per_type_encoder_f Day_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Day_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DayOfWeek.h new file mode 100644 index 000000000..54ed99deb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DayOfWeek.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DayOfWeek_H_ +#define _DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DayOfWeek { + DayOfWeek_unknown = 0, + DayOfWeek_monday = 1, + DayOfWeek_tuesday = 2, + DayOfWeek_wednesday = 3, + DayOfWeek_thursday = 4, + DayOfWeek_friday = 5, + DayOfWeek_saturday = 6, + DayOfWeek_sunday = 7 +} e_DayOfWeek; + +/* DayOfWeek */ +typedef long DayOfWeek_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; +extern const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1; +asn_struct_free_f DayOfWeek_free; +asn_struct_print_f DayOfWeek_print; +asn_constr_check_f DayOfWeek_constraint; +ber_type_decoder_f DayOfWeek_decode_ber; +der_type_encoder_f DayOfWeek_encode_der; +xer_type_decoder_f DayOfWeek_decode_xer; +xer_type_encoder_f DayOfWeek_encode_xer; +oer_type_decoder_f DayOfWeek_decode_oer; +oer_type_encoder_f DayOfWeek_encode_oer; +per_type_decoder_f DayOfWeek_decode_uper; +per_type_encoder_f DayOfWeek_encode_uper; +per_type_decoder_f DayOfWeek_decode_aper; +per_type_encoder_f DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DaySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DaySchedule.h new file mode 100644 index 000000000..75c77a2f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DaySchedule.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DaySchedule_H_ +#define _DaySchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DaySchedule */ +typedef struct DaySchedule { + long begin; + long duration; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DaySchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DaySchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_DaySchedule_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DaySchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLat.h new file mode 100644 index 000000000..88eb44e33 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLat.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DegreesLat_H_ +#define _DegreesLat_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLat */ +typedef long DegreesLat_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLat_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; +asn_struct_free_f DegreesLat_free; +asn_struct_print_f DegreesLat_print; +asn_constr_check_f DegreesLat_constraint; +ber_type_decoder_f DegreesLat_decode_ber; +der_type_encoder_f DegreesLat_encode_der; +xer_type_decoder_f DegreesLat_decode_xer; +xer_type_encoder_f DegreesLat_encode_xer; +oer_type_decoder_f DegreesLat_decode_oer; +oer_type_encoder_f DegreesLat_encode_oer; +per_type_decoder_f DegreesLat_decode_uper; +per_type_encoder_f DegreesLat_encode_uper; +per_type_decoder_f DegreesLat_decode_aper; +per_type_encoder_f DegreesLat_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLat_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLong.h new file mode 100644 index 000000000..d424da628 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DegreesLong.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DegreesLong_H_ +#define _DegreesLong_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLong */ +typedef long DegreesLong_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLong_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; +asn_struct_free_f DegreesLong_free; +asn_struct_print_f DegreesLong_print; +asn_constr_check_f DegreesLong_constraint; +ber_type_decoder_f DegreesLong_decode_ber; +der_type_encoder_f DegreesLong_encode_der; +xer_type_decoder_f DegreesLong_decode_xer; +xer_type_encoder_f DegreesLong_encode_xer; +oer_type_decoder_f DegreesLong_decode_oer; +oer_type_encoder_f DegreesLong_encode_oer; +per_type_decoder_f DegreesLong_decode_uper; +per_type_encoder_f DegreesLong_encode_uper; +per_type_decoder_f DegreesLong_decode_aper; +per_type_encoder_f DegreesLong_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLong_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaAngle.h new file mode 100644 index 000000000..669466e38 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DeltaAngle_H_ +#define _DeltaAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaAngle */ +typedef long DeltaAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; +asn_struct_free_f DeltaAngle_free; +asn_struct_print_f DeltaAngle_print; +asn_constr_check_f DeltaAngle_constraint; +ber_type_decoder_f DeltaAngle_decode_ber; +der_type_encoder_f DeltaAngle_encode_der; +xer_type_decoder_f DeltaAngle_decode_xer; +xer_type_encoder_f DeltaAngle_encode_xer; +oer_type_decoder_f DeltaAngle_decode_oer; +oer_type_encoder_f DeltaAngle_encode_oer; +per_type_decoder_f DeltaAngle_decode_uper; +per_type_encoder_f DeltaAngle_encode_uper; +per_type_decoder_f DeltaAngle_decode_aper; +per_type_encoder_f DeltaAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaTime.h new file mode 100644 index 000000000..efed6370c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DeltaTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DeltaTime_H_ +#define _DeltaTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaTime */ +typedef long DeltaTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaTime; +asn_struct_free_f DeltaTime_free; +asn_struct_print_f DeltaTime_print; +asn_constr_check_f DeltaTime_constraint; +ber_type_decoder_f DeltaTime_decode_ber; +der_type_encoder_f DeltaTime_encode_der; +xer_type_decoder_f DeltaTime_decode_xer; +xer_type_encoder_f DeltaTime_encode_xer; +oer_type_decoder_f DeltaTime_decode_oer; +oer_type_encoder_f DeltaTime_encode_oer; +per_type_decoder_f DeltaTime_decode_uper; +per_type_encoder_f DeltaTime_encode_uper; +per_type_decoder_f DeltaTime_decode_aper; +per_type_encoder_f DeltaTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DescriptiveName.h new file mode 100644 index 000000000..e5ba7bd98 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DescriptiveName.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DescriptiveName_H_ +#define _DescriptiveName_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DescriptiveName */ +typedef IA5String_t DescriptiveName_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; +asn_struct_free_f DescriptiveName_free; +asn_struct_print_f DescriptiveName_print; +asn_constr_check_f DescriptiveName_constraint; +ber_type_decoder_f DescriptiveName_decode_ber; +der_type_encoder_f DescriptiveName_encode_der; +xer_type_decoder_f DescriptiveName_decode_xer; +xer_type_encoder_f DescriptiveName_encode_xer; +oer_type_decoder_f DescriptiveName_decode_oer; +oer_type_encoder_f DescriptiveName_encode_oer; +per_type_decoder_f DescriptiveName_decode_uper; +per_type_encoder_f DescriptiveName_encode_uper; +per_type_decoder_f DescriptiveName_decode_aper; +per_type_encoder_f DescriptiveName_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DescriptiveName_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectCommonData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectCommonData.h new file mode 100644 index 000000000..47a21dd85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectCommonData.h @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectCommonData_H_ +#define _DetectedObjectCommonData_H_ + + +#include + +/* Including external dependencies */ +#include "ObjectType.h" +#include "ClassificationConfidence.h" +#include "ObjectID.h" +#include "MeasurementTimeOffset.h" +#include "TimeConfidence.h" +#include "PositionOffsetXYZ.h" +#include "PositionConfidenceSet.h" +#include "Speed.h" +#include "SpeedConfidence.h" +#include "Heading.h" +#include "HeadingConfidence.h" +#include "AccelerationConfidence.h" +#include "YawRateConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelerationSet4Way; + +/* DetectedObjectCommonData */ +typedef struct DetectedObjectCommonData { + ObjectType_t objType; + ClassificationConfidence_t objTypeCfd; + ObjectID_t objectID; + MeasurementTimeOffset_t measurementTime; + TimeConfidence_t timeConfidence; + PositionOffsetXYZ_t pos; + PositionConfidenceSet_t posConfidence; + Speed_t speed; + SpeedConfidence_t speedConfidence; + Speed_t *speedZ /* OPTIONAL */; + SpeedConfidence_t *speedConfidenceZ /* OPTIONAL */; + Heading_t heading; + HeadingConfidence_t headingConf; + struct AccelerationSet4Way *accel4way /* OPTIONAL */; + AccelerationConfidence_t *accCfdX /* OPTIONAL */; + AccelerationConfidence_t *accCfdY /* OPTIONAL */; + AccelerationConfidence_t *accCfdZ /* OPTIONAL */; + YawRateConfidence_t *accCfdYaw /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectCommonData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[18]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelerationSet4Way.h" + +#endif /* _DetectedObjectCommonData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectData.h new file mode 100644 index 000000000..e856ddf5f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectData.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectData_H_ +#define _DetectedObjectData_H_ + + +#include + +/* Including external dependencies */ +#include "DetectedObjectCommonData.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DetectedObjectOptionalData; + +/* DetectedObjectData */ +typedef struct DetectedObjectData { + DetectedObjectCommonData_t detObjCommon; + struct DetectedObjectOptionalData *detObjOptData /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectData_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DetectedObjectOptionalData.h" + +#endif /* _DetectedObjectData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectList.h new file mode 100644 index 000000000..c114380dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectList_H_ +#define _DetectedObjectList_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DetectedObjectData; + +/* DetectedObjectList */ +typedef struct DetectedObjectList { + A_SEQUENCE_OF(struct DetectedObjectData) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectList; +extern asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectList_1[1]; +extern asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DetectedObjectData.h" + +#endif /* _DetectedObjectList_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectOptionalData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectOptionalData.h new file mode 100644 index 000000000..97b9624cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObjectOptionalData.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectOptionalData_H_ +#define _DetectedObjectOptionalData_H_ + + +#include + +/* Including external dependencies */ +#include "DetectedVehicleData.h" +#include "DetectedVRUData.h" +#include "DetectedObstacleData.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DetectedObjectOptionalData_PR { + DetectedObjectOptionalData_PR_NOTHING, /* No components present */ + DetectedObjectOptionalData_PR_detVeh, + DetectedObjectOptionalData_PR_detVRU, + DetectedObjectOptionalData_PR_detObst +} DetectedObjectOptionalData_PR; + +/* DetectedObjectOptionalData */ +typedef struct DetectedObjectOptionalData { + DetectedObjectOptionalData_PR present; + union DetectedObjectOptionalData_u { + DetectedVehicleData_t detVeh; + DetectedVRUData_t detVRU; + DetectedObstacleData_t detObst; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectOptionalData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData; +extern asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[3]; +extern asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _DetectedObjectOptionalData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObstacleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObstacleData.h new file mode 100644 index 000000000..b6f5ad78e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedObstacleData.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObstacleData_H_ +#define _DetectedObstacleData_H_ + + +#include + +/* Including external dependencies */ +#include "ObstacleSize.h" +#include "ObstacleSizeConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* DetectedObstacleData */ +typedef struct DetectedObstacleData { + ObstacleSize_t obstSize; + ObstacleSizeConfidence_t obstSizeConfidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObstacleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DetectedObstacleData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVRUData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVRUData.h new file mode 100644 index 000000000..5bfaffda3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVRUData.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedVRUData_H_ +#define _DetectedVRUData_H_ + + +#include + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PropelledInformation; + +/* DetectedVRUData */ +typedef struct DetectedVRUData { + PersonalDeviceUserType_t *basicType /* OPTIONAL */; + struct PropelledInformation *propulsion /* OPTIONAL */; + Attachment_t *attachment /* OPTIONAL */; + AttachmentRadius_t *radius /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedVRUData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedVRUData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedVRUData_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PropelledInformation.h" + +#endif /* _DetectedVRUData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVehicleData.h new file mode 100644 index 000000000..49a988e5d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DetectedVehicleData.h @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedVehicleData_H_ +#define _DetectedVehicleData_H_ + + +#include + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "VehicleHeight.h" +#include "BasicVehicleClass.h" +#include "ClassificationConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Attitude; +struct AttitudeConfidence; +struct AngularVelocity; +struct AngularVelocityConfidence; +struct VehicleSize; +struct VehicleSizeConfidence; + +/* DetectedVehicleData */ +typedef struct DetectedVehicleData { + ExteriorLights_t *lights /* OPTIONAL */; + struct Attitude *vehAttitude /* OPTIONAL */; + struct AttitudeConfidence *vehAttitudeConfidence /* OPTIONAL */; + struct AngularVelocity *vehAngVel /* OPTIONAL */; + struct AngularVelocityConfidence *vehAngVelConfidence /* OPTIONAL */; + struct VehicleSize *size /* OPTIONAL */; + VehicleHeight_t *height /* OPTIONAL */; + struct VehicleSizeConfidence *vehicleSizeConfidence /* OPTIONAL */; + BasicVehicleClass_t *vehicleClass /* OPTIONAL */; + ClassificationConfidence_t *classConf /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Attitude.h" +#include "AttitudeConfidence.h" +#include "AngularVelocity.h" +#include "AngularVelocityConfidence.h" +#include "VehicleSize.h" +#include "VehicleSizeConfidence.h" + +#endif /* _DetectedVehicleData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DirectionOfUse.h new file mode 100644 index 000000000..3860daba4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DirectionOfUse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DirectionOfUse_H_ +#define _DirectionOfUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DirectionOfUse { + DirectionOfUse_unavailable = 0, + DirectionOfUse_forward = 1, + DirectionOfUse_reverse = 2, + DirectionOfUse_both = 3 +} e_DirectionOfUse; + +/* DirectionOfUse */ +typedef long DirectionOfUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; +extern const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1; +asn_struct_free_f DirectionOfUse_free; +asn_struct_print_f DirectionOfUse_print; +asn_constr_check_f DirectionOfUse_constraint; +ber_type_decoder_f DirectionOfUse_decode_ber; +der_type_encoder_f DirectionOfUse_encode_der; +xer_type_decoder_f DirectionOfUse_decode_xer; +xer_type_encoder_f DirectionOfUse_encode_xer; +oer_type_decoder_f DirectionOfUse_decode_oer; +oer_type_encoder_f DirectionOfUse_encode_oer; +per_type_decoder_f DirectionOfUse_decode_uper; +per_type_encoder_f DirectionOfUse_encode_uper; +per_type_decoder_f DirectionOfUse_decode_aper; +per_type_encoder_f DirectionOfUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DirectionOfUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DisabledVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DisabledVehicle.h new file mode 100644 index 000000000..f7bc0ecab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DisabledVehicle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DisabledVehicle_H_ +#define _DisabledVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DisabledVehicle */ +typedef struct DisabledVehicle { + ITIScodes_t statusDetails; + GenericLocations_t *locationDetails; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DisabledVehicle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DisabledVehicle; +extern asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1; +extern asn_TYPE_member_t asn_MBR_DisabledVehicle_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DisabledVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DistanceUnits.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DistanceUnits.h new file mode 100644 index 000000000..925b72517 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DistanceUnits.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DistanceUnits_H_ +#define _DistanceUnits_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DistanceUnits { + DistanceUnits_centimeter = 0, + DistanceUnits_cm2_5 = 1, + DistanceUnits_decimeter = 2, + DistanceUnits_meter = 3, + DistanceUnits_kilometer = 4, + DistanceUnits_foot = 5, + DistanceUnits_yard = 6, + DistanceUnits_mile = 7 +} e_DistanceUnits; + +/* DistanceUnits */ +typedef long DistanceUnits_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DistanceUnits; +extern const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1; +asn_struct_free_f DistanceUnits_free; +asn_struct_print_f DistanceUnits_print; +asn_constr_check_f DistanceUnits_constraint; +ber_type_decoder_f DistanceUnits_decode_ber; +der_type_encoder_f DistanceUnits_encode_der; +xer_type_decoder_f DistanceUnits_decode_xer; +xer_type_encoder_f DistanceUnits_encode_xer; +oer_type_decoder_f DistanceUnits_decode_oer; +oer_type_encoder_f DistanceUnits_encode_oer; +per_type_decoder_f DistanceUnits_decode_uper; +per_type_encoder_f DistanceUnits_encode_uper; +per_type_decoder_f DistanceUnits_decode_aper; +per_type_encoder_f DistanceUnits_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DistanceUnits_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLiftAirPressure.h new file mode 100644 index 000000000..687d06f81 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLiftAirPressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DriveAxleLiftAirPressure_H_ +#define _DriveAxleLiftAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLiftAirPressure */ +typedef long DriveAxleLiftAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; +asn_struct_free_f DriveAxleLiftAirPressure_free; +asn_struct_print_f DriveAxleLiftAirPressure_print; +asn_constr_check_f DriveAxleLiftAirPressure_constraint; +ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; +der_type_encoder_f DriveAxleLiftAirPressure_encode_der; +xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; +xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; +oer_type_decoder_f DriveAxleLiftAirPressure_decode_oer; +oer_type_encoder_f DriveAxleLiftAirPressure_encode_oer; +per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; +per_type_decoder_f DriveAxleLiftAirPressure_decode_aper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLiftAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLocation.h new file mode 100644 index 000000000..b2771b065 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DriveAxleLocation_H_ +#define _DriveAxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLocation */ +typedef long DriveAxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; +asn_struct_free_f DriveAxleLocation_free; +asn_struct_print_f DriveAxleLocation_print; +asn_constr_check_f DriveAxleLocation_constraint; +ber_type_decoder_f DriveAxleLocation_decode_ber; +der_type_encoder_f DriveAxleLocation_encode_der; +xer_type_decoder_f DriveAxleLocation_decode_xer; +xer_type_encoder_f DriveAxleLocation_encode_xer; +oer_type_decoder_f DriveAxleLocation_decode_oer; +oer_type_encoder_f DriveAxleLocation_encode_oer; +per_type_decoder_f DriveAxleLocation_decode_uper; +per_type_encoder_f DriveAxleLocation_encode_uper; +per_type_decoder_f DriveAxleLocation_decode_aper; +per_type_encoder_f DriveAxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLubePressure.h new file mode 100644 index 000000000..792472698 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleLubePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DriveAxleLubePressure_H_ +#define _DriveAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLubePressure */ +typedef long DriveAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; +asn_struct_free_f DriveAxleLubePressure_free; +asn_struct_print_f DriveAxleLubePressure_print; +asn_constr_check_f DriveAxleLubePressure_constraint; +ber_type_decoder_f DriveAxleLubePressure_decode_ber; +der_type_encoder_f DriveAxleLubePressure_encode_der; +xer_type_decoder_f DriveAxleLubePressure_decode_xer; +xer_type_encoder_f DriveAxleLubePressure_encode_xer; +oer_type_decoder_f DriveAxleLubePressure_decode_oer; +oer_type_encoder_f DriveAxleLubePressure_encode_oer; +per_type_decoder_f DriveAxleLubePressure_decode_uper; +per_type_encoder_f DriveAxleLubePressure_encode_uper; +per_type_decoder_f DriveAxleLubePressure_decode_aper; +per_type_encoder_f DriveAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleTemperature.h new file mode 100644 index 000000000..b8ae7a273 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DriveAxleTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DriveAxleTemperature_H_ +#define _DriveAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleTemperature */ +typedef long DriveAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; +asn_struct_free_f DriveAxleTemperature_free; +asn_struct_print_f DriveAxleTemperature_print; +asn_constr_check_f DriveAxleTemperature_constraint; +ber_type_decoder_f DriveAxleTemperature_decode_ber; +der_type_encoder_f DriveAxleTemperature_encode_der; +xer_type_decoder_f DriveAxleTemperature_decode_xer; +xer_type_encoder_f DriveAxleTemperature_encode_xer; +oer_type_decoder_f DriveAxleTemperature_decode_oer; +oer_type_encoder_f DriveAxleTemperature_encode_oer; +per_type_decoder_f DriveAxleTemperature_decode_uper; +per_type_encoder_f DriveAxleTemperature_encode_uper; +per_type_decoder_f DriveAxleTemperature_decode_aper; +per_type_encoder_f DriveAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetLg.h new file mode 100644 index 000000000..7921004c5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetLg.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DrivenLineOffsetLg_H_ +#define _DrivenLineOffsetLg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetLg */ +typedef long DrivenLineOffsetLg_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; +asn_struct_free_f DrivenLineOffsetLg_free; +asn_struct_print_f DrivenLineOffsetLg_print; +asn_constr_check_f DrivenLineOffsetLg_constraint; +ber_type_decoder_f DrivenLineOffsetLg_decode_ber; +der_type_encoder_f DrivenLineOffsetLg_encode_der; +xer_type_decoder_f DrivenLineOffsetLg_decode_xer; +xer_type_encoder_f DrivenLineOffsetLg_encode_xer; +oer_type_decoder_f DrivenLineOffsetLg_decode_oer; +oer_type_encoder_f DrivenLineOffsetLg_encode_oer; +per_type_decoder_f DrivenLineOffsetLg_decode_uper; +per_type_encoder_f DrivenLineOffsetLg_encode_uper; +per_type_decoder_f DrivenLineOffsetLg_decode_aper; +per_type_encoder_f DrivenLineOffsetLg_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetLg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetSm.h new file mode 100644 index 000000000..390ca8535 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivenLineOffsetSm.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DrivenLineOffsetSm_H_ +#define _DrivenLineOffsetSm_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetSm */ +typedef long DrivenLineOffsetSm_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; +asn_struct_free_f DrivenLineOffsetSm_free; +asn_struct_print_f DrivenLineOffsetSm_print; +asn_constr_check_f DrivenLineOffsetSm_constraint; +ber_type_decoder_f DrivenLineOffsetSm_decode_ber; +der_type_encoder_f DrivenLineOffsetSm_encode_der; +xer_type_decoder_f DrivenLineOffsetSm_decode_xer; +xer_type_encoder_f DrivenLineOffsetSm_encode_xer; +oer_type_decoder_f DrivenLineOffsetSm_decode_oer; +oer_type_encoder_f DrivenLineOffsetSm_encode_oer; +per_type_decoder_f DrivenLineOffsetSm_decode_uper; +per_type_encoder_f DrivenLineOffsetSm_encode_uper; +per_type_decoder_f DrivenLineOffsetSm_decode_aper; +per_type_encoder_f DrivenLineOffsetSm_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetSm_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivingWheelAngle.h new file mode 100644 index 000000000..206e8330b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DrivingWheelAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _DrivingWheelAngle_H_ +#define _DrivingWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivingWheelAngle */ +typedef long DrivingWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; +asn_struct_free_f DrivingWheelAngle_free; +asn_struct_print_f DrivingWheelAngle_print; +asn_constr_check_f DrivingWheelAngle_constraint; +ber_type_decoder_f DrivingWheelAngle_decode_ber; +der_type_encoder_f DrivingWheelAngle_encode_der; +xer_type_decoder_f DrivingWheelAngle_decode_xer; +xer_type_encoder_f DrivingWheelAngle_encode_xer; +oer_type_decoder_f DrivingWheelAngle_decode_oer; +oer_type_encoder_f DrivingWheelAngle_encode_oer; +per_type_decoder_f DrivingWheelAngle_decode_uper; +per_type_encoder_f DrivingWheelAngle_encode_uper; +per_type_decoder_f DrivingWheelAngle_decode_aper; +per_type_encoder_f DrivingWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivingWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Duration.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Duration.h new file mode 100644 index 000000000..1dd192aa1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Duration.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Duration_H_ +#define _Duration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Duration */ +typedef long Duration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Duration; +asn_struct_free_f Duration_free; +asn_struct_print_f Duration_print; +asn_constr_check_f Duration_constraint; +ber_type_decoder_f Duration_decode_ber; +der_type_encoder_f Duration_encode_der; +xer_type_decoder_f Duration_decode_xer; +xer_type_encoder_f Duration_encode_xer; +oer_type_decoder_f Duration_decode_oer; +oer_type_encoder_f Duration_encode_oer; +per_type_decoder_f Duration_decode_uper; +per_type_encoder_f Duration_encode_uper; +per_type_decoder_f Duration_decode_aper; +per_type_encoder_f Duration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Duration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EXTERNAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EXTERNAL.h new file mode 100644 index 000000000..f059c3047 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EXTERNAL.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EXTERNAL_H_ +#define _EXTERNAL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OBJECT_IDENTIFIER.h" +#include "NativeInteger.h" +#include "ObjectDescriptor.h" +#include "ANY.h" +#include "OCTET_STRING.h" +#include "BIT_STRING.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EXTERNAL__encoding_PR { + EXTERNAL__encoding_PR_NOTHING, /* No components present */ + EXTERNAL__encoding_PR_single_ASN1_type, + EXTERNAL__encoding_PR_octet_aligned, + EXTERNAL__encoding_PR_arbitrary +} EXTERNAL__encoding_PR; + +/* EXTERNAL */ +typedef struct EXTERNAL { + OBJECT_IDENTIFIER_t *direct_reference; /* OPTIONAL */ + long *indirect_reference; /* OPTIONAL */ + ObjectDescriptor_t *data_value_descriptor; /* OPTIONAL */ + struct EXTERNAL__encoding { + EXTERNAL__encoding_PR present; + union EXTERNAL__encoding_u { + ANY_t single_ASN1_type; + OCTET_STRING_t octet_aligned; + BIT_STRING_t arbitrary; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } encoding; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EXTERNAL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EXTERNAL; + +#ifdef __cplusplus +} +#endif + +#endif /* _EXTERNAL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ElevationConfidence.h new file mode 100644 index 000000000..d725be536 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ElevationConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ElevationConfidence_H_ +#define _ElevationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ElevationConfidence { + ElevationConfidence_unavailable = 0, + ElevationConfidence_elev_500_00 = 1, + ElevationConfidence_elev_200_00 = 2, + ElevationConfidence_elev_100_00 = 3, + ElevationConfidence_elev_050_00 = 4, + ElevationConfidence_elev_020_00 = 5, + ElevationConfidence_elev_010_00 = 6, + ElevationConfidence_elev_005_00 = 7, + ElevationConfidence_elev_002_00 = 8, + ElevationConfidence_elev_001_00 = 9, + ElevationConfidence_elev_000_50 = 10, + ElevationConfidence_elev_000_20 = 11, + ElevationConfidence_elev_000_10 = 12, + ElevationConfidence_elev_000_05 = 13, + ElevationConfidence_elev_000_02 = 14, + ElevationConfidence_elev_000_01 = 15 +} e_ElevationConfidence; + +/* ElevationConfidence */ +typedef long ElevationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1; +asn_struct_free_f ElevationConfidence_free; +asn_struct_print_f ElevationConfidence_print; +asn_constr_check_f ElevationConfidence_constraint; +ber_type_decoder_f ElevationConfidence_decode_ber; +der_type_encoder_f ElevationConfidence_encode_der; +xer_type_decoder_f ElevationConfidence_decode_xer; +xer_type_encoder_f ElevationConfidence_encode_xer; +oer_type_decoder_f ElevationConfidence_decode_oer; +oer_type_encoder_f ElevationConfidence_encode_oer; +per_type_decoder_f ElevationConfidence_decode_uper; +per_type_encoder_f ElevationConfidence_encode_uper; +per_type_decoder_f ElevationConfidence_decode_aper; +per_type_encoder_f ElevationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ElevationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyDetails.h new file mode 100644 index 000000000..a7d5278d5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyDetails.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EmergencyDetails_H_ +#define _EmergencyDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "SirenInUse.h" +#include "LightbarInUse.h" +#include "MultiVehicleResponse.h" +#include "ResponseType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrivilegedEvents; + +/* EmergencyDetails */ +typedef struct EmergencyDetails { + SSPindex_t notUsed; + SirenInUse_t sirenUse; + LightbarInUse_t lightsUse; + MultiVehicleResponse_t multi; + struct PrivilegedEvents *events; /* OPTIONAL */ + ResponseType_t *responseType; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EmergencyDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrivilegedEvents.h" + +#endif /* _EmergencyDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyVehicleAlert.h new file mode 100644 index 000000000..56c4fdf57 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmergencyVehicleAlert.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "EmergencyVehicleAlert" + * found in "J2735-EmergencyVehicleAlert.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EmergencyVehicleAlert_H_ +#define _EmergencyVehicleAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "TemporaryID.h" +#include "RoadSideAlert.h" +#include "ResponseType.h" +#include "VehicleMass.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct Reg_EmergencyVehicleAlert; + +/* EmergencyVehicleAlert */ +typedef struct EmergencyVehicleAlert { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RoadSideAlert_t rsaMsg; + ResponseType_t *responseType; /* OPTIONAL */ + struct EmergencyDetails *details; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + VehicleType_t *basicType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + struct EmergencyVehicleAlert__regional { + A_SEQUENCE_OF(struct Reg_EmergencyVehicleAlert) 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; +} EmergencyVehicleAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[11]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EmergencyDetails.h" +#include "RegionalExtension.h" + +#endif /* _EmergencyVehicleAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmissionType.h new file mode 100644 index 000000000..16c595414 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EmissionType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EmissionType_H_ +#define _EmissionType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EmissionType { + EmissionType_typeA = 0, + EmissionType_typeB = 1, + EmissionType_typeC = 2, + EmissionType_typeD = 3, + EmissionType_typeE = 4 + /* + * Enumeration is extensible + */ +} e_EmissionType; + +/* EmissionType */ +typedef long EmissionType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EmissionType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EmissionType; +extern const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1; +asn_struct_free_f EmissionType_free; +asn_struct_print_f EmissionType_print; +asn_constr_check_f EmissionType_constraint; +ber_type_decoder_f EmissionType_decode_ber; +der_type_encoder_f EmissionType_encode_der; +xer_type_decoder_f EmissionType_decode_xer; +xer_type_encoder_f EmissionType_encode_xer; +oer_type_decoder_f EmissionType_decode_oer; +oer_type_encoder_f EmissionType_encode_oer; +per_type_decoder_f EmissionType_decode_uper; +per_type_encoder_f EmissionType_encode_uper; +per_type_decoder_f EmissionType_decode_aper; +per_type_encoder_f EmissionType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmissionType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EnabledLaneList.h new file mode 100644 index 000000000..ec99508d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EnabledLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EnabledLaneList_H_ +#define _EnabledLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EnabledLaneList */ +typedef struct EnabledLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EnabledLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; +extern asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_EnabledLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _EnabledLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EpochMins.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EpochMins.h new file mode 100644 index 000000000..a116028f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EpochMins.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EpochMins_H_ +#define _EpochMins_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "INTEGER.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EpochMins */ +typedef INTEGER_t EpochMins_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EpochMins_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EpochMins; +asn_struct_free_f EpochMins_free; +asn_struct_print_f EpochMins_print; +asn_constr_check_f EpochMins_constraint; +ber_type_decoder_f EpochMins_decode_ber; +der_type_encoder_f EpochMins_encode_der; +xer_type_decoder_f EpochMins_decode_xer; +xer_type_encoder_f EpochMins_encode_xer; +oer_type_decoder_f EpochMins_decode_oer; +oer_type_encoder_f EpochMins_encode_oer; +per_type_decoder_f EpochMins_decode_uper; +per_type_encoder_f EpochMins_encode_uper; +per_type_decoder_f EpochMins_decode_aper; +per_type_encoder_f EpochMins_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EpochMins_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EquipmentType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EquipmentType.h new file mode 100644 index 000000000..2d1799bb4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EquipmentType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _EquipmentType_H_ +#define _EquipmentType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EquipmentType { + EquipmentType_unknown = 0, + EquipmentType_rsu = 1, + EquipmentType_obu = 2, + EquipmentType_vru = 3 + /* + * Enumeration is extensible + */ +} e_EquipmentType; + +/* EquipmentType */ +typedef long EquipmentType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EquipmentType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EquipmentType; +extern const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1; +asn_struct_free_f EquipmentType_free; +asn_struct_print_f EquipmentType_print; +asn_constr_check_f EquipmentType_constraint; +ber_type_decoder_f EquipmentType_decode_ber; +der_type_encoder_f EquipmentType_encode_der; +xer_type_decoder_f EquipmentType_decode_xer; +xer_type_encoder_f EquipmentType_encode_xer; +oer_type_decoder_f EquipmentType_decode_oer; +oer_type_encoder_f EquipmentType_encode_oer; +per_type_decoder_f EquipmentType_decode_uper; +per_type_encoder_f EquipmentType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EquipmentType_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssMobileFriction.h new file mode 100644 index 000000000..039bab27c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssMobileFriction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EssMobileFriction_H_ +#define _EssMobileFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssMobileFriction */ +typedef long EssMobileFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; +asn_struct_free_f EssMobileFriction_free; +asn_struct_print_f EssMobileFriction_print; +asn_constr_check_f EssMobileFriction_constraint; +ber_type_decoder_f EssMobileFriction_decode_ber; +der_type_encoder_f EssMobileFriction_encode_der; +xer_type_decoder_f EssMobileFriction_decode_xer; +xer_type_encoder_f EssMobileFriction_encode_xer; +oer_type_decoder_f EssMobileFriction_decode_oer; +oer_type_encoder_f EssMobileFriction_encode_oer; +per_type_decoder_f EssMobileFriction_decode_uper; +per_type_encoder_f EssMobileFriction_encode_uper; +per_type_decoder_f EssMobileFriction_decode_aper; +per_type_encoder_f EssMobileFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssMobileFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipRate.h new file mode 100644 index 000000000..50433c199 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EssPrecipRate_H_ +#define _EssPrecipRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssPrecipRate */ +typedef long EssPrecipRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; +asn_struct_free_f EssPrecipRate_free; +asn_struct_print_f EssPrecipRate_print; +asn_constr_check_f EssPrecipRate_constraint; +ber_type_decoder_f EssPrecipRate_decode_ber; +der_type_encoder_f EssPrecipRate_encode_der; +xer_type_decoder_f EssPrecipRate_decode_xer; +xer_type_encoder_f EssPrecipRate_encode_xer; +oer_type_decoder_f EssPrecipRate_decode_oer; +oer_type_encoder_f EssPrecipRate_encode_oer; +per_type_decoder_f EssPrecipRate_decode_uper; +per_type_encoder_f EssPrecipRate_encode_uper; +per_type_decoder_f EssPrecipRate_decode_aper; +per_type_encoder_f EssPrecipRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipSituation.h new file mode 100644 index 000000000..d5792d025 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipSituation.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EssPrecipSituation_H_ +#define _EssPrecipSituation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipSituation { + EssPrecipSituation_other = 1, + EssPrecipSituation_unknown = 2, + EssPrecipSituation_noPrecipitation = 3, + EssPrecipSituation_unidentifiedSlight = 4, + EssPrecipSituation_unidentifiedModerate = 5, + EssPrecipSituation_unidentifiedHeavy = 6, + EssPrecipSituation_snowSlight = 7, + EssPrecipSituation_snowModerate = 8, + EssPrecipSituation_snowHeavy = 9, + EssPrecipSituation_rainSlight = 10, + EssPrecipSituation_rainModerate = 11, + EssPrecipSituation_rainHeavy = 12, + EssPrecipSituation_frozenPrecipitationSlight = 13, + EssPrecipSituation_frozenPrecipitationModerate = 14, + EssPrecipSituation_frozenPrecipitationHeavy = 15 +} e_EssPrecipSituation; + +/* EssPrecipSituation */ +typedef long EssPrecipSituation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1; +asn_struct_free_f EssPrecipSituation_free; +asn_struct_print_f EssPrecipSituation_print; +asn_constr_check_f EssPrecipSituation_constraint; +ber_type_decoder_f EssPrecipSituation_decode_ber; +der_type_encoder_f EssPrecipSituation_encode_der; +xer_type_decoder_f EssPrecipSituation_decode_xer; +xer_type_encoder_f EssPrecipSituation_encode_xer; +oer_type_decoder_f EssPrecipSituation_decode_oer; +oer_type_encoder_f EssPrecipSituation_encode_oer; +per_type_decoder_f EssPrecipSituation_decode_uper; +per_type_encoder_f EssPrecipSituation_encode_uper; +per_type_decoder_f EssPrecipSituation_decode_aper; +per_type_encoder_f EssPrecipSituation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipSituation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipYesNo.h new file mode 100644 index 000000000..7f47ec7bc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssPrecipYesNo.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EssPrecipYesNo_H_ +#define _EssPrecipYesNo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipYesNo { + EssPrecipYesNo_precip = 1, + EssPrecipYesNo_noPrecip = 2, + EssPrecipYesNo_error = 3 +} e_EssPrecipYesNo; + +/* EssPrecipYesNo */ +typedef long EssPrecipYesNo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1; +asn_struct_free_f EssPrecipYesNo_free; +asn_struct_print_f EssPrecipYesNo_print; +asn_constr_check_f EssPrecipYesNo_constraint; +ber_type_decoder_f EssPrecipYesNo_decode_ber; +der_type_encoder_f EssPrecipYesNo_encode_der; +xer_type_decoder_f EssPrecipYesNo_decode_xer; +xer_type_encoder_f EssPrecipYesNo_encode_xer; +oer_type_decoder_f EssPrecipYesNo_decode_oer; +oer_type_encoder_f EssPrecipYesNo_encode_oer; +per_type_decoder_f EssPrecipYesNo_decode_uper; +per_type_encoder_f EssPrecipYesNo_encode_uper; +per_type_decoder_f EssPrecipYesNo_decode_aper; +per_type_encoder_f EssPrecipYesNo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipYesNo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssSolarRadiation.h new file mode 100644 index 000000000..026493c1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EssSolarRadiation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EssSolarRadiation_H_ +#define _EssSolarRadiation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssSolarRadiation */ +typedef long EssSolarRadiation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; +asn_struct_free_f EssSolarRadiation_free; +asn_struct_print_f EssSolarRadiation_print; +asn_constr_check_f EssSolarRadiation_constraint; +ber_type_decoder_f EssSolarRadiation_decode_ber; +der_type_encoder_f EssSolarRadiation_encode_der; +xer_type_decoder_f EssSolarRadiation_decode_xer; +xer_type_encoder_f EssSolarRadiation_encode_xer; +oer_type_decoder_f EssSolarRadiation_decode_oer; +oer_type_encoder_f EssSolarRadiation_encode_oer; +per_type_decoder_f EssSolarRadiation_decode_uper; +per_type_encoder_f EssSolarRadiation_encode_uper; +per_type_decoder_f EssSolarRadiation_decode_aper; +per_type_encoder_f EssSolarRadiation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssSolarRadiation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EventDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EventDescription.h new file mode 100644 index 000000000..d878be4a6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EventDescription.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _EventDescription_H_ +#define _EventDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_EventDescription; + +/* EventDescription */ +typedef struct EventDescription { + ITIScodes_t typeEvent; + struct EventDescription__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct EventDescription__regional { + A_SEQUENCE_OF(struct Reg_EventDescription) 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; +} EventDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_EventDescription_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _EventDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExitService.h new file mode 100644 index 000000000..ed0f9a510 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExitService.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ExitService_H_ +#define _ExitService_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExitService__Member__item_PR { + ExitService__Member__item_PR_NOTHING, /* No components present */ + ExitService__Member__item_PR_itis, + ExitService__Member__item_PR_text +} ExitService__Member__item_PR; + +/* Forward definitions */ +typedef struct ExitService__Member { + struct ExitService__Member__item { + ExitService__Member__item_PR present; + union ExitService__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService__Member; + +/* ExitService */ +typedef struct ExitService { + A_SEQUENCE_OF(ExitService__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ExitService; +extern asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1; +extern asn_TYPE_member_t asn_MBR_ExitService_1[1]; +extern asn_per_constraints_t asn_PER_type_ExitService_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExitService_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Extent.h new file mode 100644 index 000000000..142f7a7ce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Extent.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Extent_H_ +#define _Extent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Extent { + Extent_useInstantlyOnly = 0, + Extent_useFor3meters = 1, + Extent_useFor10meters = 2, + Extent_useFor50meters = 3, + Extent_useFor100meters = 4, + Extent_useFor500meters = 5, + Extent_useFor1000meters = 6, + Extent_useFor5000meters = 7, + Extent_useFor10000meters = 8, + Extent_useFor50000meters = 9, + Extent_useFor100000meters = 10, + Extent_useFor500000meters = 11, + Extent_useFor1000000meters = 12, + Extent_useFor5000000meters = 13, + Extent_useFor10000000meters = 14, + Extent_forever = 15 +} e_Extent; + +/* Extent */ +typedef long Extent_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Extent_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Extent; +extern const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1; +asn_struct_free_f Extent_free; +asn_struct_print_f Extent_print; +asn_constr_check_f Extent_constraint; +ber_type_decoder_f Extent_decode_ber; +der_type_encoder_f Extent_encode_der; +xer_type_decoder_f Extent_decode_xer; +xer_type_encoder_f Extent_encode_xer; +oer_type_decoder_f Extent_decode_oer; +oer_type_encoder_f Extent_encode_oer; +per_type_decoder_f Extent_decode_uper; +per_type_encoder_f Extent_encode_uper; +per_type_decoder_f Extent_decode_aper; +per_type_encoder_f Extent_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Extent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExteriorLights.h new file mode 100644 index 000000000..79616e3ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ExteriorLights.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ExteriorLights_H_ +#define _ExteriorLights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExteriorLights { + ExteriorLights_lowBeamHeadlightsOn = 0, + ExteriorLights_highBeamHeadlightsOn = 1, + ExteriorLights_leftTurnSignalOn = 2, + ExteriorLights_rightTurnSignalOn = 3, + ExteriorLights_hazardSignalOn = 4, + ExteriorLights_automaticLightControlOn = 5, + ExteriorLights_daytimeRunningLightsOn = 6, + ExteriorLights_fogLightOn = 7, + ExteriorLights_parkingLightsOn = 8 +} e_ExteriorLights; + +/* ExteriorLights */ +typedef BIT_STRING_t ExteriorLights_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; +asn_struct_free_f ExteriorLights_free; +asn_struct_print_f ExteriorLights_print; +asn_constr_check_f ExteriorLights_constraint; +ber_type_decoder_f ExteriorLights_decode_ber; +der_type_encoder_f ExteriorLights_encode_der; +xer_type_decoder_f ExteriorLights_decode_xer; +xer_type_encoder_f ExteriorLights_encode_xer; +oer_type_decoder_f ExteriorLights_decode_oer; +oer_type_encoder_f ExteriorLights_encode_oer; +per_type_decoder_f ExteriorLights_decode_uper; +per_type_encoder_f ExteriorLights_encode_uper; +per_type_decoder_f ExteriorLights_decode_aper; +per_type_encoder_f ExteriorLights_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExteriorLights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/FuelType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FuelType.h new file mode 100644 index 000000000..8a3d18234 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FuelType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _FuelType_H_ +#define _FuelType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FuelType */ +typedef long FuelType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FuelType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FuelType; +asn_struct_free_f FuelType_free; +asn_struct_print_f FuelType_print; +asn_constr_check_f FuelType_constraint; +ber_type_decoder_f FuelType_decode_ber; +der_type_encoder_f FuelType_encode_der; +xer_type_decoder_f FuelType_decode_xer; +xer_type_encoder_f FuelType_encode_xer; +oer_type_decoder_f FuelType_decode_oer; +oer_type_encoder_f FuelType_encode_oer; +per_type_decoder_f FuelType_decode_uper; +per_type_encoder_f FuelType_encode_uper; +per_type_decoder_f FuelType_decode_aper; +per_type_encoder_f FuelType_encode_aper; +#define FuelType_unknownFuel ((FuelType_t)0) +#define FuelType_gasoline ((FuelType_t)1) +#define FuelType_ethanol ((FuelType_t)2) +#define FuelType_diesel ((FuelType_t)3) +#define FuelType_electric ((FuelType_t)4) +#define FuelType_hybrid ((FuelType_t)5) +#define FuelType_hydrogen ((FuelType_t)6) +#define FuelType_natGasLiquid ((FuelType_t)7) +#define FuelType_natGasComp ((FuelType_t)8) +#define FuelType_propane ((FuelType_t)9) + +#ifdef __cplusplus +} +#endif + +#endif /* _FuelType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FullPositionVector.h new file mode 100644 index 000000000..c0730fb1a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FullPositionVector.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _FullPositionVector_H_ +#define _FullPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "Common_Elevation.h" +#include "Heading.h" +#include "TimeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DDateTime; +struct TransmissionAndSpeed; +struct PositionalAccuracy; +struct PositionConfidenceSet; +struct SpeedandHeadingandThrottleConfidence; + +/* FullPositionVector */ +typedef struct FullPositionVector { + struct DDateTime *utcTime; /* OPTIONAL */ + Longitude_t Long; + Latitude_t lat; + Common_Elevation_t *elevation; /* OPTIONAL */ + Heading_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} FullPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_FullPositionVector_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DDateTime.h" +#include "TransmissionAndSpeed.h" +#include "PositionalAccuracy.h" +#include "PositionConfidenceSet.h" +#include "SpeedandHeadingandThrottleConfidence.h" + +#endif /* _FullPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FurtherInfoID.h new file mode 100644 index 000000000..9f69347a2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/FurtherInfoID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _FurtherInfoID_H_ +#define _FurtherInfoID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FurtherInfoID */ +typedef OCTET_STRING_t FurtherInfoID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; +asn_struct_free_f FurtherInfoID_free; +asn_struct_print_f FurtherInfoID_print; +asn_constr_check_f FurtherInfoID_constraint; +ber_type_decoder_f FurtherInfoID_decode_ber; +der_type_encoder_f FurtherInfoID_encode_der; +xer_type_decoder_f FurtherInfoID_decode_xer; +xer_type_encoder_f FurtherInfoID_encode_xer; +oer_type_decoder_f FurtherInfoID_decode_oer; +oer_type_encoder_f FurtherInfoID_encode_oer; +per_type_decoder_f FurtherInfoID_decode_uper; +per_type_encoder_f FurtherInfoID_encode_uper; +per_type_decoder_f FurtherInfoID_decode_aper; +per_type_encoder_f FurtherInfoID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _FurtherInfoID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GNSSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GNSSstatus.h new file mode 100644 index 000000000..3466ebb95 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GNSSstatus.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GNSSstatus_H_ +#define _GNSSstatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GNSSstatus { + GNSSstatus_unavailable = 0, + GNSSstatus_isHealthy = 1, + GNSSstatus_isMonitored = 2, + GNSSstatus_baseStationType = 3, + GNSSstatus_aPDOPofUnder5 = 4, + GNSSstatus_inViewOfUnder5 = 5, + GNSSstatus_localCorrectionsPresent = 6, + GNSSstatus_networkCorrectionsPresent = 7 +} e_GNSSstatus; + +/* GNSSstatus */ +typedef BIT_STRING_t GNSSstatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNSSstatus; +asn_struct_free_f GNSSstatus_free; +asn_struct_print_f GNSSstatus_print; +asn_constr_check_f GNSSstatus_constraint; +ber_type_decoder_f GNSSstatus_decode_ber; +der_type_encoder_f GNSSstatus_encode_der; +xer_type_decoder_f GNSSstatus_decode_xer; +xer_type_encoder_f GNSSstatus_encode_xer; +oer_type_decoder_f GNSSstatus_decode_oer; +oer_type_encoder_f GNSSstatus_encode_oer; +per_type_decoder_f GNSSstatus_decode_uper; +per_type_encoder_f GNSSstatus_encode_uper; +per_type_decoder_f GNSSstatus_decode_aper; +per_type_encoder_f GNSSstatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GNSSstatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLane.h new file mode 100644 index 000000000..728a15169 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLane.h @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GenericLane_H_ +#define _GenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "DescriptiveName.h" +#include "ApproachID.h" +#include "LaneAttributes.h" +#include "AllowedManeuvers.h" +#include "NodeListXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ConnectsToList; +struct OverlayLaneList; +struct Reg_GenericLane; + +/* GenericLane */ +typedef struct GenericLane { + LaneID_t laneID; + DescriptiveName_t *name; /* OPTIONAL */ + ApproachID_t *ingressApproach; /* OPTIONAL */ + ApproachID_t *egressApproach; /* OPTIONAL */ + LaneAttributes_t laneAttributes; + AllowedManeuvers_t *maneuvers; /* OPTIONAL */ + NodeListXY_t nodeList; + struct ConnectsToList *connectsTo; /* OPTIONAL */ + struct OverlayLaneList *overlays; /* OPTIONAL */ + struct GenericLane__regional { + A_SEQUENCE_OF(struct Reg_GenericLane) 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; +} GenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericLane; +extern asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericLane_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectsToList.h" +#include "OverlayLaneList.h" +#include "RegionalExtension.h" + +#endif /* _GenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLocations.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLocations.h new file mode 100644 index 000000000..d2bf6034f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericLocations.h @@ -0,0 +1,150 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GenericLocations_H_ +#define _GenericLocations_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericLocations { + GenericLocations_on_bridges = 7937, + GenericLocations_in_tunnels = 7938, + GenericLocations_entering_or_leaving_tunnels = 7939, + GenericLocations_on_ramps = 7940, + GenericLocations_in_road_construction_area = 7941, + GenericLocations_around_a_curve = 7942, + GenericLocations_on_curve = 8026, + GenericLocations_on_tracks = 8009, + GenericLocations_in_street = 8025, + GenericLocations_shoulder = 8027, + GenericLocations_on_minor_roads = 7943, + GenericLocations_in_the_opposing_lanes = 7944, + GenericLocations_adjacent_to_roadway = 7945, + GenericLocations_across_tracks = 8024, + GenericLocations_on_bend = 7946, + GenericLocations_intersection = 8032, + GenericLocations_entire_intersection = 7947, + GenericLocations_in_the_median = 7948, + GenericLocations_moved_to_side_of_road = 7949, + GenericLocations_moved_to_shoulder = 7950, + GenericLocations_on_the_roadway = 7951, + GenericLocations_dip = 8010, + GenericLocations_traffic_circle = 8011, + GenericLocations_crossover = 8028, + GenericLocations_cross_road = 8029, + GenericLocations_side_road = 8030, + GenericLocations_to = 8014, + GenericLocations_by = 8015, + GenericLocations_through = 8016, + GenericLocations_area_of = 8017, + GenericLocations_under = 8018, + GenericLocations_over = 8019, + GenericLocations_from = 8020, + GenericLocations_approaching = 8021, + GenericLocations_entering_at = 8022, + GenericLocations_exiting_at = 8023, + GenericLocations_in_shaded_areas = 7952, + GenericLocations_in_low_lying_areas = 7953, + GenericLocations_in_the_downtown_area = 7954, + GenericLocations_in_the_inner_city_area = 7955, + GenericLocations_in_parts = 7956, + GenericLocations_in_some_places = 7957, + GenericLocations_in_the_ditch = 7958, + GenericLocations_in_the_valley = 7959, + GenericLocations_on_hill_top = 7960, + GenericLocations_near_the_foothills = 7961, + GenericLocations_at_high_altitudes = 7962, + GenericLocations_near_the_lake = 7963, + GenericLocations_near_the_shore = 7964, + GenericLocations_nearby_basin = 8008, + GenericLocations_over_the_crest_of_a_hill = 7965, + GenericLocations_other_than_on_the_roadway = 7966, + GenericLocations_near_the_beach = 7967, + GenericLocations_near_beach_access_point = 7968, + GenericLocations_mountain_pass = 8006, + GenericLocations_lower_level = 7969, + GenericLocations_upper_level = 7970, + GenericLocations_airport = 7971, + GenericLocations_concourse = 7972, + GenericLocations_gate = 7973, + GenericLocations_baggage_claim = 7974, + GenericLocations_customs_point = 7975, + GenericLocations_reservation_center = 8007, + GenericLocations_station = 7976, + GenericLocations_platform = 7977, + GenericLocations_dock = 7978, + GenericLocations_depot = 7979, + GenericLocations_ev_charging_point = 7980, + GenericLocations_information_welcome_point = 7981, + GenericLocations_at_rest_area = 7982, + GenericLocations_at_service_area = 7983, + GenericLocations_at_weigh_station = 7984, + GenericLocations_roadside_park = 8033, + GenericLocations_picnic_areas = 7985, + GenericLocations_rest_area = 7986, + GenericLocations_service_stations = 7987, + GenericLocations_toilets = 7988, + GenericLocations_bus_stop = 8031, + GenericLocations_park_and_ride_lot = 8012, + GenericLocations_on_the_right = 7989, + GenericLocations_on_the_left = 7990, + GenericLocations_in_the_center = 7991, + GenericLocations_in_the_opposite_direction = 7992, + GenericLocations_cross_traffic = 7993, + GenericLocations_northbound_traffic = 7994, + GenericLocations_eastbound_traffic = 7995, + GenericLocations_southbound_traffic = 7996, + GenericLocations_westbound_traffic = 7997, + GenericLocations_north = 7998, + GenericLocations_south = 7999, + GenericLocations_east = 8000, + GenericLocations_west = 8001, + GenericLocations_northeast = 8002, + GenericLocations_northwest = 8003, + GenericLocations_southeast = 8004, + GenericLocations_southwest = 8005 + /* + * Enumeration is extensible + */ +} e_GenericLocations; + +/* GenericLocations */ +typedef long GenericLocations_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GenericLocations_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GenericLocations; +extern const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1; +asn_struct_free_f GenericLocations_free; +asn_struct_print_f GenericLocations_print; +asn_constr_check_f GenericLocations_constraint; +ber_type_decoder_f GenericLocations_decode_ber; +der_type_encoder_f GenericLocations_encode_der; +xer_type_decoder_f GenericLocations_decode_xer; +xer_type_encoder_f GenericLocations_encode_xer; +oer_type_decoder_f GenericLocations_decode_oer; +oer_type_encoder_f GenericLocations_encode_oer; +per_type_decoder_f GenericLocations_decode_uper; +per_type_encoder_f GenericLocations_encode_uper; +per_type_decoder_f GenericLocations_decode_aper; +per_type_encoder_f GenericLocations_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericLocations_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericSignage.h new file mode 100644 index 000000000..4eb75d088 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GenericSignage.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GenericSignage_H_ +#define _GenericSignage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericSignage__Member__item_PR { + GenericSignage__Member__item_PR_NOTHING, /* No components present */ + GenericSignage__Member__item_PR_itis, + GenericSignage__Member__item_PR_text +} GenericSignage__Member__item_PR; + +/* Forward definitions */ +typedef struct GenericSignage__Member { + struct GenericSignage__Member__item { + GenericSignage__Member__item_PR present; + union GenericSignage__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage__Member; + +/* GenericSignage */ +typedef struct GenericSignage { + A_SEQUENCE_OF(GenericSignage__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; +extern asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericSignage_1[1]; +extern asn_per_constraints_t asn_PER_type_GenericSignage_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericSignage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeographicalPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeographicalPath.h new file mode 100644 index 000000000..aaddaff6a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeographicalPath.h @@ -0,0 +1,101 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GeographicalPath_H_ +#define _GeographicalPath_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "BOOLEAN.h" +#include "HeadingSlice.h" +#include "OffsetSystem.h" +#include "GeometricProjection.h" +#include "ValidRegion.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GeographicalPath__description_PR { + GeographicalPath__description_PR_NOTHING, /* No components present */ + GeographicalPath__description_PR_path, + GeographicalPath__description_PR_geometry, + GeographicalPath__description_PR_oldRegion + /* Extensions may appear below */ + +} GeographicalPath__description_PR; + +/* Forward declarations */ +struct RoadSegmentReferenceID; +struct Position3D; +struct Reg_GeographicalPath; + +/* GeographicalPath */ +typedef struct GeographicalPath { + DescriptiveName_t *name; /* OPTIONAL */ + struct RoadSegmentReferenceID *id; /* OPTIONAL */ + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + BOOLEAN_t *closedPath; /* OPTIONAL */ + HeadingSlice_t *direction; /* OPTIONAL */ + struct GeographicalPath__description { + GeographicalPath__description_PR present; + union GeographicalPath__description_u { + OffsetSystem_t path; + GeometricProjection_t geometry; + ValidRegion_t oldRegion; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + struct GeographicalPath__regional { + A_SEQUENCE_OF(struct Reg_GeographicalPath) 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; +} GeographicalPath_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeographicalPath; +extern asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1; +extern asn_TYPE_member_t asn_MBR_GeographicalPath_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RoadSegmentReferenceID.h" +#include "Position3D.h" +#include "RegionalExtension.h" + +#endif /* _GeographicalPath_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeometricProjection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeometricProjection.h new file mode 100644 index 000000000..61e8b0674 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeometricProjection.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GeometricProjection_H_ +#define _GeometricProjection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "LaneWidth.h" +#include "Circle.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_GeometricProjection; + +/* GeometricProjection */ +typedef struct GeometricProjection { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + Circle_t circle; + struct GeometricProjection__regional { + A_SEQUENCE_OF(struct Reg_GeometricProjection) 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; +} GeometricProjection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeometricProjection; +extern asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1; +extern asn_TYPE_member_t asn_MBR_GeometricProjection_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _GeometricProjection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GraphicString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GraphicString.h new file mode 100644 index 000000000..807e9d6b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GraphicString.h @@ -0,0 +1,56 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _GraphicString_H_ +#define _GraphicString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t GraphicString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_GraphicString; +extern asn_TYPE_operation_t asn_OP_GraphicString; + +#define GraphicString_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define GraphicString_print OCTET_STRING_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define GraphicString_compare OCTET_STRING_compare + +#define GraphicString_constraint asn_generic_unknown_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define GraphicString_decode_ber OCTET_STRING_decode_ber +#define GraphicString_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define GraphicString_decode_xer OCTET_STRING_decode_xer_hex +#define GraphicString_encode_xer OCTET_STRING_encode_xer +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define GraphicString_encode_jer OCTET_STRING_encode_jer +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define GraphicString_decode_uper OCTET_STRING_decode_uper +#define GraphicString_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define GraphicString_decode_aper OCTET_STRING_decode_aper +#define GraphicString_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _GraphicString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossDistance.h new file mode 100644 index 000000000..61df4a687 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GrossDistance_H_ +#define _GrossDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossDistance */ +typedef long GrossDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossDistance; +asn_struct_free_f GrossDistance_free; +asn_struct_print_f GrossDistance_print; +asn_constr_check_f GrossDistance_constraint; +ber_type_decoder_f GrossDistance_decode_ber; +der_type_encoder_f GrossDistance_encode_der; +xer_type_decoder_f GrossDistance_decode_xer; +xer_type_encoder_f GrossDistance_encode_xer; +oer_type_decoder_f GrossDistance_decode_oer; +oer_type_encoder_f GrossDistance_encode_oer; +per_type_decoder_f GrossDistance_decode_uper; +per_type_encoder_f GrossDistance_encode_uper; +per_type_decoder_f GrossDistance_decode_aper; +per_type_encoder_f GrossDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossSpeed.h new file mode 100644 index 000000000..3e5c68a22 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GrossSpeed.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _GrossSpeed_H_ +#define _GrossSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossSpeed */ +typedef long GrossSpeed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossSpeed; +asn_struct_free_f GrossSpeed_free; +asn_struct_print_f GrossSpeed_print; +asn_constr_check_f GrossSpeed_constraint; +ber_type_decoder_f GrossSpeed_decode_ber; +der_type_encoder_f GrossSpeed_encode_der; +xer_type_decoder_f GrossSpeed_decode_xer; +xer_type_encoder_f GrossSpeed_encode_xer; +oer_type_decoder_f GrossSpeed_decode_oer; +oer_type_encoder_f GrossSpeed_encode_oer; +per_type_decoder_f GrossSpeed_decode_uper; +per_type_encoder_f GrossSpeed_encode_uper; +per_type_decoder_f GrossSpeed_decode_aper; +per_type_encoder_f GrossSpeed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Header.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Header.h new file mode 100644 index 000000000..a9708f4d5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Header.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Header_H_ +#define _Header_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Header */ +typedef struct Header { + DYear_t *year; /* OPTIONAL */ + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t *secMark; /* OPTIONAL */ + Common_MsgCount_t *msgIssueRevision; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Header_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Header; +extern asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1; +extern asn_TYPE_member_t asn_MBR_Header_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Header_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Heading.h new file mode 100644 index 000000000..cc2f69682 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Heading.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Heading_H_ +#define _Heading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Heading */ +typedef long Heading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Heading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Heading; +asn_struct_free_f Heading_free; +asn_struct_print_f Heading_print; +asn_constr_check_f Heading_constraint; +ber_type_decoder_f Heading_decode_ber; +der_type_encoder_f Heading_encode_der; +xer_type_decoder_f Heading_decode_xer; +xer_type_encoder_f Heading_encode_xer; +oer_type_decoder_f Heading_decode_oer; +oer_type_encoder_f Heading_encode_oer; +per_type_decoder_f Heading_decode_uper; +per_type_encoder_f Heading_encode_uper; +per_type_decoder_f Heading_decode_aper; +per_type_encoder_f Heading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Heading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingConfidence.h new file mode 100644 index 000000000..3b2b8b1b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _HeadingConfidence_H_ +#define _HeadingConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingConfidence { + HeadingConfidence_unavailable = 0, + HeadingConfidence_prec10deg = 1, + HeadingConfidence_prec05deg = 2, + HeadingConfidence_prec01deg = 3, + HeadingConfidence_prec0_1deg = 4, + HeadingConfidence_prec0_05deg = 5, + HeadingConfidence_prec0_01deg = 6, + HeadingConfidence_prec0_0125deg = 7 +} e_HeadingConfidence; + +/* HeadingConfidence */ +typedef long HeadingConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1; +asn_struct_free_f HeadingConfidence_free; +asn_struct_print_f HeadingConfidence_print; +asn_constr_check_f HeadingConfidence_constraint; +ber_type_decoder_f HeadingConfidence_decode_ber; +der_type_encoder_f HeadingConfidence_encode_der; +xer_type_decoder_f HeadingConfidence_decode_xer; +xer_type_encoder_f HeadingConfidence_encode_xer; +oer_type_decoder_f HeadingConfidence_decode_oer; +oer_type_encoder_f HeadingConfidence_encode_oer; +per_type_decoder_f HeadingConfidence_decode_uper; +per_type_encoder_f HeadingConfidence_encode_uper; +per_type_decoder_f HeadingConfidence_decode_aper; +per_type_encoder_f HeadingConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingSlice.h new file mode 100644 index 000000000..2ce3d8b4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HeadingSlice.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _HeadingSlice_H_ +#define _HeadingSlice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingSlice { + HeadingSlice_from000_0to022_5degrees = 0, + HeadingSlice_from022_5to045_0degrees = 1, + HeadingSlice_from045_0to067_5degrees = 2, + HeadingSlice_from067_5to090_0degrees = 3, + HeadingSlice_from090_0to112_5degrees = 4, + HeadingSlice_from112_5to135_0degrees = 5, + HeadingSlice_from135_0to157_5degrees = 6, + HeadingSlice_from157_5to180_0degrees = 7, + HeadingSlice_from180_0to202_5degrees = 8, + HeadingSlice_from202_5to225_0degrees = 9, + HeadingSlice_from225_0to247_5degrees = 10, + HeadingSlice_from247_5to270_0degrees = 11, + HeadingSlice_from270_0to292_5degrees = 12, + HeadingSlice_from292_5to315_0degrees = 13, + HeadingSlice_from315_0to337_5degrees = 14, + HeadingSlice_from337_5to360_0degrees = 15 +} e_HeadingSlice; + +/* HeadingSlice */ +typedef BIT_STRING_t HeadingSlice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; +asn_struct_free_f HeadingSlice_free; +asn_struct_print_f HeadingSlice_print; +asn_constr_check_f HeadingSlice_constraint; +ber_type_decoder_f HeadingSlice_decode_ber; +der_type_encoder_f HeadingSlice_encode_der; +xer_type_decoder_f HeadingSlice_decode_xer; +xer_type_encoder_f HeadingSlice_encode_xer; +oer_type_decoder_f HeadingSlice_decode_oer; +oer_type_encoder_f HeadingSlice_encode_oer; +per_type_decoder_f HeadingSlice_decode_uper; +per_type_encoder_f HeadingSlice_encode_uper; +per_type_decoder_f HeadingSlice_decode_aper; +per_type_encoder_f HeadingSlice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingSlice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Holiday.h new file mode 100644 index 000000000..1c319c8a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Holiday.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Holiday_H_ +#define _Holiday_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Holiday { + Holiday_weekday = 0, + Holiday_holiday = 1 +} e_Holiday; + +/* Holiday */ +typedef long Holiday_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Holiday_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Holiday; +extern const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1; +asn_struct_free_f Holiday_free; +asn_struct_print_f Holiday_print; +asn_constr_check_f Holiday_constraint; +ber_type_decoder_f Holiday_decode_ber; +der_type_encoder_f Holiday_encode_der; +xer_type_decoder_f Holiday_decode_xer; +xer_type_encoder_f Holiday_encode_xer; +oer_type_decoder_f Holiday_decode_oer; +oer_type_encoder_f Holiday_encode_oer; +per_type_decoder_f Holiday_decode_uper; +per_type_encoder_f Holiday_encode_uper; +per_type_decoder_f Holiday_decode_aper; +per_type_encoder_f Holiday_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Holiday_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Hour.h new file mode 100644 index 000000000..972139b3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Hour.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Hour_H_ +#define _Hour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Hour */ +typedef long Hour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Hour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Hour; +asn_struct_free_f Hour_free; +asn_struct_print_f Hour_print; +asn_constr_check_f Hour_constraint; +ber_type_decoder_f Hour_decode_ber; +der_type_encoder_f Hour_encode_der; +xer_type_decoder_f Hour_decode_xer; +xer_type_encoder_f Hour_encode_xer; +oer_type_decoder_f Hour_decode_oer; +oer_type_encoder_f Hour_encode_oer; +per_type_decoder_f Hour_decode_uper; +per_type_encoder_f Hour_encode_uper; +per_type_decoder_f Hour_decode_aper; +per_type_encoder_f Hour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Hour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HumanPropelledType.h new file mode 100644 index 000000000..59f4dfdf5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/HumanPropelledType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _HumanPropelledType_H_ +#define _HumanPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HumanPropelledType { + HumanPropelledType_unavailable = 0, + HumanPropelledType_otherTypes = 1, + HumanPropelledType_onFoot = 2, + HumanPropelledType_skateboard = 3, + HumanPropelledType_pushOrKickScooter = 4, + HumanPropelledType_wheelchair = 5 + /* + * Enumeration is extensible + */ +} e_HumanPropelledType; + +/* HumanPropelledType */ +typedef long HumanPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1; +asn_struct_free_f HumanPropelledType_free; +asn_struct_print_f HumanPropelledType_print; +asn_constr_check_f HumanPropelledType_constraint; +ber_type_decoder_f HumanPropelledType_decode_ber; +der_type_encoder_f HumanPropelledType_encode_der; +xer_type_decoder_f HumanPropelledType_decode_xer; +xer_type_encoder_f HumanPropelledType_encode_xer; +oer_type_decoder_f HumanPropelledType_decode_oer; +oer_type_encoder_f HumanPropelledType_encode_oer; +per_type_decoder_f HumanPropelledType_decode_uper; +per_type_encoder_f HumanPropelledType_encode_uper; +per_type_decoder_f HumanPropelledType_decode_aper; +per_type_encoder_f HumanPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HumanPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IA5String.h new file mode 100644 index 000000000..195f474a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IA5String.h @@ -0,0 +1,59 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _IA5String_H_ +#define _IA5String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ + +/* + * IA5String ASN.1 type definition. + */ +extern asn_TYPE_descriptor_t asn_DEF_IA5String; +extern asn_TYPE_operation_t asn_OP_IA5String; + +#define IA5String_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define IA5String_print OCTET_STRING_print_utf8 +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define IA5String_compare OCTET_STRING_compare + +asn_constr_check_f IA5String_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define IA5String_decode_ber OCTET_STRING_decode_ber +#define IA5String_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define IA5String_decode_xer OCTET_STRING_decode_xer_utf8 +#define IA5String_encode_xer OCTET_STRING_encode_xer_utf8 +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define IA5String_encode_jer OCTET_STRING_encode_jer_utf8 +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define IA5String_decode_uper OCTET_STRING_decode_uper +#define IA5String_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define IA5String_decode_aper OCTET_STRING_decode_aper +#define IA5String_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/INTEGER.h new file mode 100644 index 000000000..1666e0bce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/INTEGER.h @@ -0,0 +1,139 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _INTEGER_H_ +#define _INTEGER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; + +extern asn_TYPE_descriptor_t asn_DEF_INTEGER; +extern asn_TYPE_operation_t asn_OP_INTEGER; + +/* Map with to integer value association */ +typedef struct asn_INTEGER_enum_map_s { + long nat_value; /* associated native integer value */ + size_t enum_len; /* strlen("tag") */ + const char *enum_name; /* "tag" */ +} asn_INTEGER_enum_map_t; + +/* This type describes an enumeration for INTEGER and ENUMERATED types */ +typedef struct asn_INTEGER_specifics_s { + const asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ + const unsigned int *enum2value; /* "tag" => N; sorted by tag */ + int map_count; /* Elements in either map */ + int extension; /* This map is extensible */ + int strict_enumeration; /* Enumeration set is fixed */ + int field_width; /* Size of native integer */ + int field_unsigned; /* Signed=0, unsigned=1 */ +} asn_INTEGER_specifics_t; + +ssize_t INTEGER__dump(const asn_TYPE_descriptor_t *td, + const INTEGER_t *st, + asn_app_consume_bytes_f *cb, + void *app_key, int plainOrXER); + +#define INTEGER_free ASN__PRIMITIVE_TYPE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f INTEGER_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f INTEGER_compare; + +#define INTEGER_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define INTEGER_decode_ber ber_decode_primitive +der_type_encoder_f INTEGER_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f INTEGER_decode_xer; +xer_type_encoder_f INTEGER_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f INTEGER_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f INTEGER_decode_oer; +oer_type_encoder_f INTEGER_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f INTEGER_decode_uper; +per_type_encoder_f INTEGER_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f INTEGER_decode_aper; +per_type_encoder_f INTEGER_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f INTEGER_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +/*********************************** + * Some handy conversion routines. * + ***********************************/ + +/* + * Natiwe size-independent conversion of native integers to/from INTEGER. + * (l_size) is in bytes. + * Returns 0 if it was possible to convert, -1 otherwise. + * -1/EINVAL: Mandatory argument missing + * -1/ERANGE: Value encoded is out of range for long representation + * -1/ENOMEM: Memory allocation failed (in asn_*2INTEGER()). + */ +int asn_INTEGER2imax(const INTEGER_t *i, intmax_t *l); +int asn_INTEGER2umax(const INTEGER_t *i, uintmax_t *l); +int asn_imax2INTEGER(INTEGER_t *i, intmax_t l); +int asn_umax2INTEGER(INTEGER_t *i, uintmax_t l); + +/* + * Size-specific conversion helpers. + */ +int asn_INTEGER2long(const INTEGER_t *i, long *l); +int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); +int asn_long2INTEGER(INTEGER_t *i, long l); +int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); +int asn_int642INTEGER(INTEGER_t *i, int64_t l); +int asn_uint642INTEGER(INTEGER_t *i, uint64_t l); + +/* A version of strtol/strtoimax(3) with nicer error reporting. */ +enum asn_strtox_result_e { + ASN_STRTOX_ERROR_RANGE = -3, /* Input outside of supported numeric range */ + ASN_STRTOX_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ + ASN_STRTOX_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ + ASN_STRTOX_OK = 0, /* Conversion succeeded, number ends at (*end) */ + ASN_STRTOX_EXTRA_DATA = 1 /* Conversion succeeded, but the string has extra stuff */ +}; +enum asn_strtox_result_e asn_strtol_lim(const char *str, const char **end, + long *l); +enum asn_strtox_result_e asn_strtoul_lim(const char *str, const char **end, + unsigned long *l); +enum asn_strtox_result_e asn_strtoimax_lim(const char *str, const char **end, + intmax_t *l); +enum asn_strtox_result_e asn_strtoumax_lim(const char *str, const char **end, + uintmax_t *l); + +/* + * Convert the integer value into the corresponding enumeration map entry. + */ +const asn_INTEGER_enum_map_t *INTEGER_map_value2enum( + const asn_INTEGER_specifics_t *specs, long value); + +#ifdef __cplusplus +} +#endif + +#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodes.h new file mode 100644 index 000000000..5624a71f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodes.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ITIScodes_H_ +#define _ITIScodes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIScodes */ +typedef long ITIScodes_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIScodes_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; +asn_struct_free_f ITIScodes_free; +asn_struct_print_f ITIScodes_print; +asn_constr_check_f ITIScodes_constraint; +ber_type_decoder_f ITIScodes_decode_ber; +der_type_encoder_f ITIScodes_encode_der; +xer_type_decoder_f ITIScodes_decode_xer; +xer_type_encoder_f ITIScodes_encode_xer; +oer_type_decoder_f ITIScodes_decode_oer; +oer_type_encoder_f ITIScodes_encode_oer; +per_type_decoder_f ITIScodes_decode_uper; +per_type_encoder_f ITIScodes_encode_uper; +per_type_decoder_f ITIScodes_decode_aper; +per_type_encoder_f ITIScodes_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodesAndText.h new file mode 100644 index 000000000..09687c473 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIScodesAndText.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ITIScodesAndText_H_ +#define _ITIScodesAndText_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStext.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ITIScodesAndText__Member__item_PR { + ITIScodesAndText__Member__item_PR_NOTHING, /* No components present */ + ITIScodesAndText__Member__item_PR_itis, + ITIScodesAndText__Member__item_PR_text +} ITIScodesAndText__Member__item_PR; + +/* Forward definitions */ +typedef struct ITIScodesAndText__Member { + struct ITIScodesAndText__Member__item { + ITIScodesAndText__Member__item_PR present; + union ITIScodesAndText__Member__item_u { + ITIScodes_t itis; + ITIStext_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText__Member; + +/* ITIScodesAndText */ +typedef struct ITIScodesAndText { + A_SEQUENCE_OF(ITIScodesAndText__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; +extern asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1; +extern asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[1]; +extern asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodesAndText_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStext.h new file mode 100644 index 000000000..490c849ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStext.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ITIStext_H_ +#define _ITIStext_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStext */ +typedef IA5String_t ITIStext_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStext_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStext; +asn_struct_free_f ITIStext_free; +asn_struct_print_f ITIStext_print; +asn_constr_check_f ITIStext_constraint; +ber_type_decoder_f ITIStext_decode_ber; +der_type_encoder_f ITIStext_encode_der; +xer_type_decoder_f ITIStext_decode_xer; +xer_type_encoder_f ITIStext_encode_xer; +oer_type_decoder_f ITIStext_decode_oer; +oer_type_encoder_f ITIStext_encode_oer; +per_type_decoder_f ITIStext_decode_uper; +per_type_encoder_f ITIStext_encode_uper; +per_type_decoder_f ITIStext_decode_aper; +per_type_encoder_f ITIStext_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStext_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStextPhrase.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStextPhrase.h new file mode 100644 index 000000000..b07d39046 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ITIStextPhrase.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ITIStextPhrase_H_ +#define _ITIStextPhrase_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStextPhrase */ +typedef IA5String_t ITIStextPhrase_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase; +asn_struct_free_f ITIStextPhrase_free; +asn_struct_print_f ITIStextPhrase_print; +asn_constr_check_f ITIStextPhrase_constraint; +ber_type_decoder_f ITIStextPhrase_decode_ber; +der_type_encoder_f ITIStextPhrase_encode_der; +xer_type_decoder_f ITIStextPhrase_decode_xer; +xer_type_encoder_f ITIStextPhrase_encode_xer; +oer_type_decoder_f ITIStextPhrase_decode_oer; +oer_type_encoder_f ITIStextPhrase_encode_oer; +per_type_decoder_f ITIStextPhrase_decode_uper; +per_type_encoder_f ITIStextPhrase_encode_uper; +per_type_decoder_f ITIStextPhrase_decode_aper; +per_type_encoder_f ITIStextPhrase_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStextPhrase_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id128b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id128b.h new file mode 100644 index 000000000..0c58f036d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id128b.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Id128b_H_ +#define _Id128b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Id128b */ +typedef OCTET_STRING_t Id128b_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Id128b_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Id128b; +asn_struct_free_f Id128b_free; +asn_struct_print_f Id128b_print; +asn_constr_check_f Id128b_constraint; +ber_type_decoder_f Id128b_decode_ber; +der_type_encoder_f Id128b_encode_der; +xer_type_decoder_f Id128b_decode_xer; +xer_type_encoder_f Id128b_encode_xer; +oer_type_decoder_f Id128b_decode_oer; +oer_type_encoder_f Id128b_encode_oer; +per_type_decoder_f Id128b_decode_uper; +per_type_encoder_f Id128b_encode_uper; +per_type_decoder_f Id128b_decode_aper; +per_type_encoder_f Id128b_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Id128b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id64b.h new file mode 100644 index 000000000..703feb0f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Id64b.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Id64b_H_ +#define _Id64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Id64b */ +typedef OCTET_STRING_t Id64b_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Id64b_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Id64b; +asn_struct_free_f Id64b_free; +asn_struct_print_f Id64b_print; +asn_constr_check_f Id64b_constraint; +ber_type_decoder_f Id64b_decode_ber; +der_type_encoder_f Id64b_encode_der; +xer_type_decoder_f Id64b_decode_xer; +xer_type_encoder_f Id64b_encode_xer; +oer_type_decoder_f Id64b_decode_oer; +oer_type_encoder_f Id64b_encode_oer; +per_type_decoder_f Id64b_decode_uper; +per_type_encoder_f Id64b_encode_uper; +per_type_decoder_f Id64b_decode_aper; +per_type_encoder_f Id64b_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Id64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IncidentResponseEquipment.h new file mode 100644 index 000000000..73dd57070 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IncidentResponseEquipment.h @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IncidentResponseEquipment_H_ +#define _IncidentResponseEquipment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IncidentResponseEquipment { + IncidentResponseEquipment_ground_fire_suppression = 9985, + IncidentResponseEquipment_heavy_ground_equipment = 9986, + IncidentResponseEquipment_aircraft = 9988, + IncidentResponseEquipment_marine_equipment = 9989, + IncidentResponseEquipment_support_equipment = 9990, + IncidentResponseEquipment_medical_rescue_unit = 9991, + IncidentResponseEquipment_other = 9993, + IncidentResponseEquipment_ground_fire_suppression_other = 9994, + IncidentResponseEquipment_engine = 9995, + IncidentResponseEquipment_truck_or_aerial = 9996, + IncidentResponseEquipment_quint = 9997, + IncidentResponseEquipment_tanker_pumper_combination = 9998, + IncidentResponseEquipment_brush_truck = 10000, + IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, + IncidentResponseEquipment_heavy_ground_equipment_other = 10004, + IncidentResponseEquipment_dozer_or_plow = 10005, + IncidentResponseEquipment_tractor = 10006, + IncidentResponseEquipment_tanker_or_tender = 10008, + IncidentResponseEquipment_aircraft_other = 10024, + IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, + IncidentResponseEquipment_helitanker = 10026, + IncidentResponseEquipment_helicopter = 10027, + IncidentResponseEquipment_marine_equipment_other = 10034, + IncidentResponseEquipment_fire_boat_with_pump = 10035, + IncidentResponseEquipment_boat_no_pump = 10036, + IncidentResponseEquipment_support_apparatus_other = 10044, + IncidentResponseEquipment_breathing_apparatus_support = 10045, + IncidentResponseEquipment_light_and_air_unit = 10046, + IncidentResponseEquipment_medical_rescue_unit_other = 10054, + IncidentResponseEquipment_rescue_unit = 10055, + IncidentResponseEquipment_urban_search_rescue_unit = 10056, + IncidentResponseEquipment_high_angle_rescue = 10057, + IncidentResponseEquipment_crash_fire_rescue = 10058, + IncidentResponseEquipment_bLS_unit = 10059, + IncidentResponseEquipment_aLS_unit = 10060, + IncidentResponseEquipment_mobile_command_post = 10075, + IncidentResponseEquipment_chief_officer_car = 10076, + IncidentResponseEquipment_hAZMAT_unit = 10077, + IncidentResponseEquipment_type_i_hand_crew = 10078, + IncidentResponseEquipment_type_ii_hand_crew = 10079, + IncidentResponseEquipment_privately_owned_vehicle = 10083, + IncidentResponseEquipment_other_apparatus_resource = 10084, + IncidentResponseEquipment_ambulance = 10085, + IncidentResponseEquipment_bomb_squad_van = 10086, + IncidentResponseEquipment_combine_harvester = 10087, + IncidentResponseEquipment_construction_vehicle = 10088, + IncidentResponseEquipment_farm_tractor = 10089, + IncidentResponseEquipment_grass_cutting_machines = 10090, + IncidentResponseEquipment_hAZMAT_containment_tow = 10091, + IncidentResponseEquipment_heavy_tow = 10092, + IncidentResponseEquipment_light_tow = 10094, + IncidentResponseEquipment_flatbed_tow = 10114, + IncidentResponseEquipment_hedge_cutting_machines = 10093, + IncidentResponseEquipment_mobile_crane = 10095, + IncidentResponseEquipment_refuse_collection_vehicle = 10096, + IncidentResponseEquipment_resurfacing_vehicle = 10097, + IncidentResponseEquipment_road_sweeper = 10098, + IncidentResponseEquipment_roadside_litter_collection_crews = 10099, + IncidentResponseEquipment_salvage_vehicle = 10100, + IncidentResponseEquipment_sand_truck = 10101, + IncidentResponseEquipment_snowplow = 10102, + IncidentResponseEquipment_steam_roller = 10103, + IncidentResponseEquipment_swat_team_van = 10104, + IncidentResponseEquipment_track_laying_vehicle = 10105, + IncidentResponseEquipment_unknown_vehicle = 10106, + IncidentResponseEquipment_white_lining_vehicle = 10107, + IncidentResponseEquipment_dump_truck = 10108, + IncidentResponseEquipment_supervisor_vehicle = 10109, + IncidentResponseEquipment_snow_blower = 10110, + IncidentResponseEquipment_rotary_snow_blower = 10111, + IncidentResponseEquipment_road_grader = 10112, + IncidentResponseEquipment_steam_truck = 10113 + /* + * Enumeration is extensible + */ +} e_IncidentResponseEquipment; + +/* IncidentResponseEquipment */ +typedef long IncidentResponseEquipment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; +extern const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1; +asn_struct_free_f IncidentResponseEquipment_free; +asn_struct_print_f IncidentResponseEquipment_print; +asn_constr_check_f IncidentResponseEquipment_constraint; +ber_type_decoder_f IncidentResponseEquipment_decode_ber; +der_type_encoder_f IncidentResponseEquipment_encode_der; +xer_type_decoder_f IncidentResponseEquipment_decode_xer; +xer_type_encoder_f IncidentResponseEquipment_encode_xer; +oer_type_decoder_f IncidentResponseEquipment_decode_oer; +oer_type_encoder_f IncidentResponseEquipment_encode_oer; +per_type_decoder_f IncidentResponseEquipment_decode_uper; +per_type_encoder_f IncidentResponseEquipment_encode_uper; +per_type_decoder_f IncidentResponseEquipment_decode_aper; +per_type_encoder_f IncidentResponseEquipment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IncidentResponseEquipment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionAccessPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionAccessPoint.h new file mode 100644 index 000000000..df66b4006 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionAccessPoint.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionAccessPoint_H_ +#define _IntersectionAccessPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "ApproachID.h" +#include "LaneConnectionID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionAccessPoint_PR { + IntersectionAccessPoint_PR_NOTHING, /* No components present */ + IntersectionAccessPoint_PR_lane, + IntersectionAccessPoint_PR_approach, + IntersectionAccessPoint_PR_connection + /* Extensions may appear below */ + +} IntersectionAccessPoint_PR; + +/* IntersectionAccessPoint */ +typedef struct IntersectionAccessPoint { + IntersectionAccessPoint_PR present; + union IntersectionAccessPoint_u { + LaneID_t lane; + ApproachID_t approach; + LaneConnectionID_t connection; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionAccessPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint; +extern asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[3]; +extern asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionAccessPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionCollision.h new file mode 100644 index 000000000..fba78299e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionCollision.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionCollision_H_ +#define _IntersectionCollision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "MinuteOfTheYear.h" +#include "IntersectionReferenceID.h" +#include "ApproachOrLane.h" +#include "VehicleEventFlags.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMcoreData; +struct PathHistory; +struct PathPrediction; +struct Reg_IntersectionCollision; + +/* IntersectionCollision */ +typedef struct IntersectionCollision { + Common_MsgCount_t msgCnt; + TemporaryID_t id; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct BSMcoreData *partOne; /* OPTIONAL */ + struct PathHistory *path; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + IntersectionReferenceID_t intersectionID; + ApproachOrLane_t laneNumber; + VehicleEventFlags_t eventFlag; + struct IntersectionCollision__regional { + A_SEQUENCE_OF(struct Reg_IntersectionCollision) 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; +} IntersectionCollision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionCollision_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BSMcoreData.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionCollision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometry.h new file mode 100644 index 000000000..63bb86240 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometry.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionGeometry_H_ +#define _IntersectionGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "Common_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "LaneList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct PreemptPriorityList; +struct Reg_IntersectionGeometry; + +/* IntersectionGeometry */ +typedef struct IntersectionGeometry { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + Common_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + LaneList_t laneSet; + struct PreemptPriorityList *preemptPriorityData; /* OPTIONAL */ + struct IntersectionGeometry__regional { + A_SEQUENCE_OF(struct Reg_IntersectionGeometry) 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; +} IntersectionGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "PreemptPriorityList.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometryList.h new file mode 100644 index 000000000..9c3c28e81 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionGeometryList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionGeometryList_H_ +#define _IntersectionGeometryList_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 IntersectionGeometry; + +/* IntersectionGeometryList */ +typedef struct IntersectionGeometryList { + A_SEQUENCE_OF(struct IntersectionGeometry) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionGeometryList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometry.h" + +#endif /* _IntersectionGeometryList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionID.h new file mode 100644 index 000000000..868ad082e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionID_H_ +#define _IntersectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionID */ +typedef long IntersectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; +asn_struct_free_f IntersectionID_free; +asn_struct_print_f IntersectionID_print; +asn_constr_check_f IntersectionID_constraint; +ber_type_decoder_f IntersectionID_decode_ber; +der_type_encoder_f IntersectionID_encode_der; +xer_type_decoder_f IntersectionID_decode_xer; +xer_type_encoder_f IntersectionID_encode_xer; +oer_type_decoder_f IntersectionID_decode_oer; +oer_type_encoder_f IntersectionID_encode_oer; +per_type_decoder_f IntersectionID_decode_uper; +per_type_encoder_f IntersectionID_encode_uper; +per_type_decoder_f IntersectionID_decode_aper; +per_type_encoder_f IntersectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionReferenceID.h new file mode 100644 index 000000000..b9a608440 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionReferenceID_H_ +#define _IntersectionReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "IntersectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionReferenceID */ +typedef struct IntersectionReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + IntersectionID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState-addGrpC.h new file mode 100644 index 000000000..44ce75530 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState-addGrpC.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionState_addGrpC_H_ +#define _IntersectionState_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrioritizationResponseList; + +/* IntersectionState-addGrpC */ +typedef struct IntersectionState_addGrpC { + struct PrioritizationResponseList *activePrioritizations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionState_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponseList.h" + +#endif /* _IntersectionState_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState.h new file mode 100644 index 000000000..3fbd9e8db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionState.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionState_H_ +#define _IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "Common_MsgCount.h" +#include "IntersectionStatusObject.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "MovementList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EnabledLaneList; +struct ManeuverAssistList; +struct Reg_IntersectionState; + +/* IntersectionState */ +typedef struct IntersectionState { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + Common_MsgCount_t revision; + IntersectionStatusObject_t status; + MinuteOfTheYear_t *moy; /* OPTIONAL */ + DSecond_t *timeStamp; /* OPTIONAL */ + struct EnabledLaneList *enabledLanes; /* OPTIONAL */ + MovementList_t states; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct IntersectionState__regional { + A_SEQUENCE_OF(struct Reg_IntersectionState) 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; +} IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionState_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EnabledLaneList.h" +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStateList.h new file mode 100644 index 000000000..694325614 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStateList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionStateList_H_ +#define _IntersectionStateList_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 IntersectionState; + +/* IntersectionStateList */ +typedef struct IntersectionStateList { + A_SEQUENCE_OF(struct IntersectionState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionStateList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionStateList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionState.h" + +#endif /* _IntersectionStateList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStatusObject.h new file mode 100644 index 000000000..c100476d9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IntersectionStatusObject.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IntersectionStatusObject_H_ +#define _IntersectionStatusObject_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionStatusObject { + IntersectionStatusObject_manualControlIsEnabled = 0, + IntersectionStatusObject_stopTimeIsActivated = 1, + IntersectionStatusObject_failureFlash = 2, + IntersectionStatusObject_preemptIsActive = 3, + IntersectionStatusObject_signalPriorityIsActive = 4, + IntersectionStatusObject_fixedTimeOperation = 5, + IntersectionStatusObject_trafficDependentOperation = 6, + IntersectionStatusObject_standbyOperation = 7, + IntersectionStatusObject_failureMode = 8, + IntersectionStatusObject_off = 9, + IntersectionStatusObject_recentMAPmessageUpdate = 10, + IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, + IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, + IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 +} e_IntersectionStatusObject; + +/* IntersectionStatusObject */ +typedef BIT_STRING_t IntersectionStatusObject_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; +asn_struct_free_f IntersectionStatusObject_free; +asn_struct_print_f IntersectionStatusObject_print; +asn_constr_check_f IntersectionStatusObject_constraint; +ber_type_decoder_f IntersectionStatusObject_decode_ber; +der_type_encoder_f IntersectionStatusObject_encode_der; +xer_type_decoder_f IntersectionStatusObject_decode_xer; +xer_type_encoder_f IntersectionStatusObject_encode_xer; +oer_type_decoder_f IntersectionStatusObject_decode_oer; +oer_type_encoder_f IntersectionStatusObject_encode_oer; +per_type_decoder_f IntersectionStatusObject_decode_uper; +per_type_encoder_f IntersectionStatusObject_encode_uper; +per_type_decoder_f IntersectionStatusObject_decode_aper; +per_type_encoder_f IntersectionStatusObject_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionStatusObject_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/IsDolly.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IsDolly.h new file mode 100644 index 000000000..2976a58f0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/IsDolly.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _IsDolly_H_ +#define _IsDolly_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IsDolly */ +typedef BOOLEAN_t IsDolly_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IsDolly; +asn_struct_free_f IsDolly_free; +asn_struct_print_f IsDolly_print; +asn_constr_check_f IsDolly_constraint; +ber_type_decoder_f IsDolly_decode_ber; +der_type_encoder_f IsDolly_encode_der; +xer_type_decoder_f IsDolly_decode_xer; +xer_type_encoder_f IsDolly_encode_xer; +oer_type_decoder_f IsDolly_decode_oer; +oer_type_encoder_f IsDolly_encode_oer; +per_type_decoder_f IsDolly_decode_uper; +per_type_encoder_f IsDolly_encode_uper; +per_type_decoder_f IsDolly_decode_aper; +per_type_encoder_f IsDolly_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IsDolly_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Iso3833VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Iso3833VehicleType.h new file mode 100644 index 000000000..16bd798f0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Iso3833VehicleType.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Iso3833VehicleType_H_ +#define _Iso3833VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Iso3833VehicleType */ +typedef long Iso3833VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType; +asn_struct_free_f Iso3833VehicleType_free; +asn_struct_print_f Iso3833VehicleType_print; +asn_constr_check_f Iso3833VehicleType_constraint; +ber_type_decoder_f Iso3833VehicleType_decode_ber; +der_type_encoder_f Iso3833VehicleType_encode_der; +xer_type_decoder_f Iso3833VehicleType_decode_xer; +xer_type_encoder_f Iso3833VehicleType_encode_xer; +oer_type_decoder_f Iso3833VehicleType_decode_oer; +oer_type_encoder_f Iso3833VehicleType_encode_oer; +per_type_decoder_f Iso3833VehicleType_decode_uper; +per_type_encoder_f Iso3833VehicleType_encode_uper; +per_type_decoder_f Iso3833VehicleType_decode_aper; +per_type_encoder_f Iso3833VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Iso3833VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/J1939data.h new file mode 100644 index 000000000..0fd0b0169 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/J1939data.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _J1939data_H_ +#define _J1939data_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrailerWeight.h" +#include "CargoWeight.h" +#include "SteeringAxleTemperature.h" +#include "DriveAxleLocation.h" +#include "DriveAxleLiftAirPressure.h" +#include "DriveAxleTemperature.h" +#include "DriveAxleLubePressure.h" +#include "SteeringAxleLubePressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TireDataList; +struct AxleWeightList; + +/* J1939data */ +typedef struct J1939data { + struct TireDataList *tires; /* OPTIONAL */ + struct AxleWeightList *axles; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + CargoWeight_t *cargoWeight; /* OPTIONAL */ + SteeringAxleTemperature_t *steeringAxleTemperature; /* OPTIONAL */ + DriveAxleLocation_t *driveAxleLocation; /* OPTIONAL */ + DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure; /* OPTIONAL */ + DriveAxleTemperature_t *driveAxleTemperature; /* OPTIONAL */ + DriveAxleLubePressure_t *driveAxleLubePressure; /* OPTIONAL */ + SteeringAxleLubePressure_t *steeringAxleLubePressure; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} J1939data_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_J1939data; +extern asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1; +extern asn_TYPE_member_t asn_MBR_J1939data_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TireDataList.h" +#include "AxleWeightList.h" + +#endif /* _J1939data_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Barrier.h new file mode 100644 index 000000000..881f4d22a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Barrier.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Barrier_H_ +#define _LaneAttributes_Barrier_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Barrier { + LaneAttributes_Barrier_median_RevocableLane = 0, + LaneAttributes_Barrier_median = 1, + LaneAttributes_Barrier_whiteLineHashing = 2, + LaneAttributes_Barrier_stripedLines = 3, + LaneAttributes_Barrier_doubleStripedLines = 4, + LaneAttributes_Barrier_trafficCones = 5, + LaneAttributes_Barrier_constructionBarrier = 6, + LaneAttributes_Barrier_trafficChannels = 7, + LaneAttributes_Barrier_lowCurbs = 8, + LaneAttributes_Barrier_highCurbs = 9 +} e_LaneAttributes_Barrier; + +/* LaneAttributes-Barrier */ +typedef BIT_STRING_t LaneAttributes_Barrier_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; +asn_struct_free_f LaneAttributes_Barrier_free; +asn_struct_print_f LaneAttributes_Barrier_print; +asn_constr_check_f LaneAttributes_Barrier_constraint; +ber_type_decoder_f LaneAttributes_Barrier_decode_ber; +der_type_encoder_f LaneAttributes_Barrier_encode_der; +xer_type_decoder_f LaneAttributes_Barrier_decode_xer; +xer_type_encoder_f LaneAttributes_Barrier_encode_xer; +oer_type_decoder_f LaneAttributes_Barrier_decode_oer; +oer_type_encoder_f LaneAttributes_Barrier_encode_oer; +per_type_decoder_f LaneAttributes_Barrier_decode_uper; +per_type_encoder_f LaneAttributes_Barrier_encode_uper; +per_type_decoder_f LaneAttributes_Barrier_decode_aper; +per_type_encoder_f LaneAttributes_Barrier_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Barrier_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Bike.h new file mode 100644 index 000000000..cc4e61fbe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Bike.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Bike_H_ +#define _LaneAttributes_Bike_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Bike { + LaneAttributes_Bike_bikeRevocableLane = 0, + LaneAttributes_Bike_pedestrianUseAllowed = 1, + LaneAttributes_Bike_isBikeFlyOverLane = 2, + LaneAttributes_Bike_fixedCycleTime = 3, + LaneAttributes_Bike_biDirectionalCycleTimes = 4, + LaneAttributes_Bike_isolatedByBarrier = 5, + LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 +} e_LaneAttributes_Bike; + +/* LaneAttributes-Bike */ +typedef BIT_STRING_t LaneAttributes_Bike_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; +asn_struct_free_f LaneAttributes_Bike_free; +asn_struct_print_f LaneAttributes_Bike_print; +asn_constr_check_f LaneAttributes_Bike_constraint; +ber_type_decoder_f LaneAttributes_Bike_decode_ber; +der_type_encoder_f LaneAttributes_Bike_encode_der; +xer_type_decoder_f LaneAttributes_Bike_decode_xer; +xer_type_encoder_f LaneAttributes_Bike_encode_xer; +oer_type_decoder_f LaneAttributes_Bike_decode_oer; +oer_type_encoder_f LaneAttributes_Bike_encode_oer; +per_type_decoder_f LaneAttributes_Bike_decode_uper; +per_type_encoder_f LaneAttributes_Bike_encode_uper; +per_type_decoder_f LaneAttributes_Bike_decode_aper; +per_type_encoder_f LaneAttributes_Bike_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Bike_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Crosswalk.h new file mode 100644 index 000000000..509ed9df3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Crosswalk.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Crosswalk_H_ +#define _LaneAttributes_Crosswalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Crosswalk { + LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, + LaneAttributes_Crosswalk_bicyleUseAllowed = 1, + LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, + LaneAttributes_Crosswalk_fixedCycleTime = 3, + LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, + LaneAttributes_Crosswalk_hasPushToWalkButton = 5, + LaneAttributes_Crosswalk_audioSupport = 6, + LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, + LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 +} e_LaneAttributes_Crosswalk; + +/* LaneAttributes-Crosswalk */ +typedef BIT_STRING_t LaneAttributes_Crosswalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; +asn_struct_free_f LaneAttributes_Crosswalk_free; +asn_struct_print_f LaneAttributes_Crosswalk_print; +asn_constr_check_f LaneAttributes_Crosswalk_constraint; +ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; +der_type_encoder_f LaneAttributes_Crosswalk_encode_der; +xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; +xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; +oer_type_decoder_f LaneAttributes_Crosswalk_decode_oer; +oer_type_encoder_f LaneAttributes_Crosswalk_encode_oer; +per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; +per_type_decoder_f LaneAttributes_Crosswalk_decode_aper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Crosswalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Parking.h new file mode 100644 index 000000000..b2fc3a094 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Parking.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Parking_H_ +#define _LaneAttributes_Parking_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Parking { + LaneAttributes_Parking_parkingRevocableLane = 0, + LaneAttributes_Parking_parallelParkingInUse = 1, + LaneAttributes_Parking_headInParkingInUse = 2, + LaneAttributes_Parking_doNotParkZone = 3, + LaneAttributes_Parking_parkingForBusUse = 4, + LaneAttributes_Parking_parkingForTaxiUse = 5, + LaneAttributes_Parking_noPublicParkingUse = 6 +} e_LaneAttributes_Parking; + +/* LaneAttributes-Parking */ +typedef BIT_STRING_t LaneAttributes_Parking_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; +asn_struct_free_f LaneAttributes_Parking_free; +asn_struct_print_f LaneAttributes_Parking_print; +asn_constr_check_f LaneAttributes_Parking_constraint; +ber_type_decoder_f LaneAttributes_Parking_decode_ber; +der_type_encoder_f LaneAttributes_Parking_encode_der; +xer_type_decoder_f LaneAttributes_Parking_decode_xer; +xer_type_encoder_f LaneAttributes_Parking_encode_xer; +oer_type_decoder_f LaneAttributes_Parking_decode_oer; +oer_type_encoder_f LaneAttributes_Parking_encode_oer; +per_type_decoder_f LaneAttributes_Parking_decode_uper; +per_type_encoder_f LaneAttributes_Parking_encode_uper; +per_type_decoder_f LaneAttributes_Parking_decode_aper; +per_type_encoder_f LaneAttributes_Parking_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Parking_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Sidewalk.h new file mode 100644 index 000000000..6cecf0147 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Sidewalk.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Sidewalk_H_ +#define _LaneAttributes_Sidewalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Sidewalk { + LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, + LaneAttributes_Sidewalk_bicyleUseAllowed = 1, + LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, + LaneAttributes_Sidewalk_walkBikes = 3 +} e_LaneAttributes_Sidewalk; + +/* LaneAttributes-Sidewalk */ +typedef BIT_STRING_t LaneAttributes_Sidewalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; +asn_struct_free_f LaneAttributes_Sidewalk_free; +asn_struct_print_f LaneAttributes_Sidewalk_print; +asn_constr_check_f LaneAttributes_Sidewalk_constraint; +ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; +der_type_encoder_f LaneAttributes_Sidewalk_encode_der; +xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; +xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; +oer_type_decoder_f LaneAttributes_Sidewalk_decode_oer; +oer_type_encoder_f LaneAttributes_Sidewalk_encode_oer; +per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; +per_type_decoder_f LaneAttributes_Sidewalk_decode_aper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Sidewalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Striping.h new file mode 100644 index 000000000..bd12a0051 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Striping.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Striping_H_ +#define _LaneAttributes_Striping_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Striping { + LaneAttributes_Striping_stripeToConnectingLanesRevocableLane = 0, + LaneAttributes_Striping_stripeDrawOnLeft = 1, + LaneAttributes_Striping_stripeDrawOnRight = 2, + LaneAttributes_Striping_stripeToConnectingLanesLeft = 3, + LaneAttributes_Striping_stripeToConnectingLanesRight = 4, + LaneAttributes_Striping_stripeToConnectingLanesAhead = 5 +} e_LaneAttributes_Striping; + +/* LaneAttributes-Striping */ +typedef BIT_STRING_t LaneAttributes_Striping_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; +asn_struct_free_f LaneAttributes_Striping_free; +asn_struct_print_f LaneAttributes_Striping_print; +asn_constr_check_f LaneAttributes_Striping_constraint; +ber_type_decoder_f LaneAttributes_Striping_decode_ber; +der_type_encoder_f LaneAttributes_Striping_encode_der; +xer_type_decoder_f LaneAttributes_Striping_decode_xer; +xer_type_encoder_f LaneAttributes_Striping_encode_xer; +oer_type_decoder_f LaneAttributes_Striping_decode_oer; +oer_type_encoder_f LaneAttributes_Striping_encode_oer; +per_type_decoder_f LaneAttributes_Striping_decode_uper; +per_type_encoder_f LaneAttributes_Striping_encode_uper; +per_type_decoder_f LaneAttributes_Striping_decode_aper; +per_type_encoder_f LaneAttributes_Striping_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Striping_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-TrackedVehicle.h new file mode 100644 index 000000000..d1cbf53b9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-TrackedVehicle.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_TrackedVehicle_H_ +#define _LaneAttributes_TrackedVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_TrackedVehicle { + LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, + LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, + LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, + LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, + LaneAttributes_TrackedVehicle_spec_otherRailType = 4 +} e_LaneAttributes_TrackedVehicle; + +/* LaneAttributes-TrackedVehicle */ +typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; +asn_struct_free_f LaneAttributes_TrackedVehicle_free; +asn_struct_print_f LaneAttributes_TrackedVehicle_print; +asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; +ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; +der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; +xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; +xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; +oer_type_decoder_f LaneAttributes_TrackedVehicle_decode_oer; +oer_type_encoder_f LaneAttributes_TrackedVehicle_encode_oer; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_aper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_TrackedVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Vehicle.h new file mode 100644 index 000000000..61ca8f3b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes-Vehicle.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_Vehicle_H_ +#define _LaneAttributes_Vehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Vehicle { + LaneAttributes_Vehicle_isVehicleRevocableLane = 0, + LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, + LaneAttributes_Vehicle_hovLaneUseOnly = 2, + LaneAttributes_Vehicle_restrictedToBusUse = 3, + LaneAttributes_Vehicle_restrictedToTaxiUse = 4, + LaneAttributes_Vehicle_restrictedFromPublicUse = 5, + LaneAttributes_Vehicle_hasIRbeaconCoverage = 6, + LaneAttributes_Vehicle_permissionOnRequest = 7 +} e_LaneAttributes_Vehicle; + +/* LaneAttributes-Vehicle */ +typedef BIT_STRING_t LaneAttributes_Vehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; +asn_struct_free_f LaneAttributes_Vehicle_free; +asn_struct_print_f LaneAttributes_Vehicle_print; +asn_constr_check_f LaneAttributes_Vehicle_constraint; +ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; +der_type_encoder_f LaneAttributes_Vehicle_encode_der; +xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; +xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; +oer_type_decoder_f LaneAttributes_Vehicle_decode_oer; +oer_type_encoder_f LaneAttributes_Vehicle_encode_oer; +per_type_decoder_f LaneAttributes_Vehicle_decode_uper; +per_type_encoder_f LaneAttributes_Vehicle_encode_uper; +per_type_decoder_f LaneAttributes_Vehicle_decode_aper; +per_type_encoder_f LaneAttributes_Vehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Vehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes.h new file mode 100644 index 000000000..d68eeb7bd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneAttributes.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneAttributes_H_ +#define _LaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneDirection.h" +#include "LaneSharing.h" +#include "LaneTypeAttributes.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_LaneAttributes; + +/* LaneAttributes */ +typedef struct LaneAttributes { + LaneDirection_t directionalUse; + LaneSharing_t sharedWith; + LaneTypeAttributes_t laneType; + struct Reg_LaneAttributes *regional; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; +extern asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneAttributes_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _LaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneConnectionID.h new file mode 100644 index 000000000..67d6b8861 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneConnectionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneConnectionID_H_ +#define _LaneConnectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneConnectionID */ +typedef long LaneConnectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; +asn_struct_free_f LaneConnectionID_free; +asn_struct_print_f LaneConnectionID_print; +asn_constr_check_f LaneConnectionID_constraint; +ber_type_decoder_f LaneConnectionID_decode_ber; +der_type_encoder_f LaneConnectionID_encode_der; +xer_type_decoder_f LaneConnectionID_decode_xer; +xer_type_encoder_f LaneConnectionID_encode_xer; +oer_type_decoder_f LaneConnectionID_decode_oer; +oer_type_encoder_f LaneConnectionID_encode_oer; +per_type_decoder_f LaneConnectionID_decode_uper; +per_type_encoder_f LaneConnectionID_encode_uper; +per_type_decoder_f LaneConnectionID_decode_aper; +per_type_encoder_f LaneConnectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneConnectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute-addGrpB.h new file mode 100644 index 000000000..787d99824 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute-addGrpB.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneDataAttribute_addGrpB_H_ +#define _LaneDataAttribute_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneDataAttribute-addGrpB */ +typedef struct LaneDataAttribute_addGrpB { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttribute_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute.h new file mode 100644 index 000000000..cbb7d7e77 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttribute.h @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneDataAttribute_H_ +#define _LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DeltaAngle.h" +#include "RoadwayCrownAngle.h" +#include "MergeDivergeNodeAngle.h" +#include "SpeedLimitList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDataAttribute_PR { + LaneDataAttribute_PR_NOTHING, /* No components present */ + LaneDataAttribute_PR_pathEndPointAngle, + LaneDataAttribute_PR_laneCrownPointCenter, + LaneDataAttribute_PR_laneCrownPointLeft, + LaneDataAttribute_PR_laneCrownPointRight, + LaneDataAttribute_PR_laneAngle, + LaneDataAttribute_PR_speedLimits, + LaneDataAttribute_PR_regional + /* Extensions may appear below */ + +} LaneDataAttribute_PR; + +/* Forward declarations */ +struct Reg_LaneDataAttribute; + +/* LaneDataAttribute */ +typedef struct LaneDataAttribute { + LaneDataAttribute_PR present; + union LaneDataAttribute_u { + DeltaAngle_t pathEndPointAngle; + RoadwayCrownAngle_t laneCrownPointCenter; + RoadwayCrownAngle_t laneCrownPointLeft; + RoadwayCrownAngle_t laneCrownPointRight; + MergeDivergeNodeAngle_t laneAngle; + SpeedLimitList_t speedLimits; + struct LaneDataAttribute__regional { + A_SEQUENCE_OF(struct Reg_LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; +extern asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[7]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttributeList.h new file mode 100644 index 000000000..12030813a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDataAttributeList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneDataAttributeList_H_ +#define _LaneDataAttributeList_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 LaneDataAttribute; + +/* LaneDataAttributeList */ +typedef struct LaneDataAttributeList { + A_SEQUENCE_OF(struct LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; +extern asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "LaneDataAttribute.h" + +#endif /* _LaneDataAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDirection.h new file mode 100644 index 000000000..bd8c78a5d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneDirection.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneDirection_H_ +#define _LaneDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDirection { + LaneDirection_ingressPath = 0, + LaneDirection_egressPath = 1 +} e_LaneDirection; + +/* LaneDirection */ +typedef BIT_STRING_t LaneDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; +asn_struct_free_f LaneDirection_free; +asn_struct_print_f LaneDirection_print; +asn_constr_check_f LaneDirection_constraint; +ber_type_decoder_f LaneDirection_decode_ber; +der_type_encoder_f LaneDirection_encode_der; +xer_type_decoder_f LaneDirection_decode_xer; +xer_type_encoder_f LaneDirection_encode_xer; +oer_type_decoder_f LaneDirection_decode_oer; +oer_type_encoder_f LaneDirection_encode_oer; +per_type_decoder_f LaneDirection_decode_uper; +per_type_encoder_f LaneDirection_encode_uper; +per_type_decoder_f LaneDirection_decode_aper; +per_type_encoder_f LaneDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneID.h new file mode 100644 index 000000000..b17575f5b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneID_H_ +#define _LaneID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneID */ +typedef long LaneID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneID; +asn_struct_free_f LaneID_free; +asn_struct_print_f LaneID_print; +asn_constr_check_f LaneID_constraint; +ber_type_decoder_f LaneID_decode_ber; +der_type_encoder_f LaneID_encode_der; +xer_type_decoder_f LaneID_decode_xer; +xer_type_encoder_f LaneID_encode_xer; +oer_type_decoder_f LaneID_decode_oer; +oer_type_encoder_f LaneID_encode_oer; +per_type_decoder_f LaneID_decode_uper; +per_type_encoder_f LaneID_encode_uper; +per_type_decoder_f LaneID_decode_aper; +per_type_encoder_f LaneID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneList.h new file mode 100644 index 000000000..a75213c21 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneList_H_ +#define _LaneList_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 GenericLane; + +/* LaneList */ +typedef struct LaneList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneList; +extern asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _LaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneSharing.h new file mode 100644 index 000000000..b71f24784 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneSharing.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneSharing_H_ +#define _LaneSharing_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneSharing { + LaneSharing_overlappingLaneDescriptionProvided = 0, + LaneSharing_multipleLanesTreatedAsOneLane = 1, + LaneSharing_otherNonMotorizedTrafficTypes = 2, + LaneSharing_individualMotorizedVehicleTraffic = 3, + LaneSharing_busVehicleTraffic = 4, + LaneSharing_taxiVehicleTraffic = 5, + LaneSharing_pedestriansTraffic = 6, + LaneSharing_cyclistVehicleTraffic = 7, + LaneSharing_trackedVehicleTraffic = 8, + LaneSharing_reserved = 9 +} e_LaneSharing; + +/* LaneSharing */ +typedef BIT_STRING_t LaneSharing_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneSharing_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; +asn_struct_free_f LaneSharing_free; +asn_struct_print_f LaneSharing_print; +asn_constr_check_f LaneSharing_constraint; +ber_type_decoder_f LaneSharing_decode_ber; +der_type_encoder_f LaneSharing_encode_der; +xer_type_decoder_f LaneSharing_decode_xer; +xer_type_encoder_f LaneSharing_encode_xer; +oer_type_decoder_f LaneSharing_decode_oer; +oer_type_encoder_f LaneSharing_encode_oer; +per_type_decoder_f LaneSharing_decode_uper; +per_type_encoder_f LaneSharing_encode_uper; +per_type_decoder_f LaneSharing_decode_aper; +per_type_encoder_f LaneSharing_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneSharing_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneTypeAttributes.h new file mode 100644 index 000000000..f6382dbcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneTypeAttributes.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneTypeAttributes_H_ +#define _LaneTypeAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneAttributes-Vehicle.h" +#include "LaneAttributes-Crosswalk.h" +#include "LaneAttributes-Bike.h" +#include "LaneAttributes-Sidewalk.h" +#include "LaneAttributes-Barrier.h" +#include "LaneAttributes-Striping.h" +#include "LaneAttributes-TrackedVehicle.h" +#include "LaneAttributes-Parking.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneTypeAttributes_PR { + LaneTypeAttributes_PR_NOTHING, /* No components present */ + LaneTypeAttributes_PR_vehicle, + LaneTypeAttributes_PR_crosswalk, + LaneTypeAttributes_PR_bikeLane, + LaneTypeAttributes_PR_sidewalk, + LaneTypeAttributes_PR_median, + LaneTypeAttributes_PR_striping, + LaneTypeAttributes_PR_trackedVehicle, + LaneTypeAttributes_PR_parking + /* Extensions may appear below */ + +} LaneTypeAttributes_PR; + +/* LaneTypeAttributes */ +typedef struct LaneTypeAttributes { + LaneTypeAttributes_PR present; + union LaneTypeAttributes_u { + LaneAttributes_Vehicle_t vehicle; + LaneAttributes_Crosswalk_t crosswalk; + LaneAttributes_Bike_t bikeLane; + LaneAttributes_Sidewalk_t sidewalk; + LaneAttributes_Barrier_t median; + LaneAttributes_Striping_t striping; + LaneAttributes_TrackedVehicle_t trackedVehicle; + LaneAttributes_Parking_t parking; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneTypeAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; +extern asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[8]; +extern asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneTypeAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneWidth.h new file mode 100644 index 000000000..3aa3e3835 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LaneWidth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LaneWidth_H_ +#define _LaneWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneWidth */ +typedef long LaneWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; +asn_struct_free_f LaneWidth_free; +asn_struct_print_f LaneWidth_print; +asn_constr_check_f LaneWidth_constraint; +ber_type_decoder_f LaneWidth_decode_ber; +der_type_encoder_f LaneWidth_encode_der; +xer_type_decoder_f LaneWidth_decode_xer; +xer_type_encoder_f LaneWidth_encode_xer; +oer_type_decoder_f LaneWidth_decode_oer; +oer_type_encoder_f LaneWidth_encode_oer; +per_type_decoder_f LaneWidth_decode_uper; +per_type_encoder_f LaneWidth_encode_uper; +per_type_decoder_f LaneWidth_decode_aper; +per_type_encoder_f LaneWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Latitude.h new file mode 100644 index 000000000..d74bb8de0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Latitude.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Latitude_H_ +#define _Latitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Latitude */ +typedef long Latitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Latitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Latitude; +asn_struct_free_f Latitude_free; +asn_struct_print_f Latitude_print; +asn_constr_check_f Latitude_constraint; +ber_type_decoder_f Latitude_decode_ber; +der_type_encoder_f Latitude_encode_der; +xer_type_decoder_f Latitude_decode_xer; +xer_type_encoder_f Latitude_encode_xer; +oer_type_decoder_f Latitude_decode_oer; +oer_type_encoder_f Latitude_encode_oer; +per_type_decoder_f Latitude_decode_uper; +per_type_encoder_f Latitude_encode_uper; +per_type_decoder_f Latitude_decode_aper; +per_type_encoder_f Latitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Latitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS.h new file mode 100644 index 000000000..045e6280c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LatitudeDMS_H_ +#define _LatitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS */ +typedef long LatitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; +asn_struct_free_f LatitudeDMS_free; +asn_struct_print_f LatitudeDMS_print; +asn_constr_check_f LatitudeDMS_constraint; +ber_type_decoder_f LatitudeDMS_decode_ber; +der_type_encoder_f LatitudeDMS_encode_der; +xer_type_decoder_f LatitudeDMS_decode_xer; +xer_type_encoder_f LatitudeDMS_encode_xer; +oer_type_decoder_f LatitudeDMS_decode_oer; +oer_type_encoder_f LatitudeDMS_encode_oer; +per_type_decoder_f LatitudeDMS_decode_uper; +per_type_encoder_f LatitudeDMS_encode_uper; +per_type_decoder_f LatitudeDMS_decode_aper; +per_type_encoder_f LatitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS2.h new file mode 100644 index 000000000..3e75afce2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LatitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LatitudeDMS2_H_ +#define _LatitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLat.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS2 */ +typedef struct LatitudeDMS2 { + DegreesLat_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LatitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerID.h new file mode 100644 index 000000000..da041e90d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LayerID_H_ +#define _LayerID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LayerID */ +typedef long LayerID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerID; +asn_struct_free_f LayerID_free; +asn_struct_print_f LayerID_print; +asn_constr_check_f LayerID_constraint; +ber_type_decoder_f LayerID_decode_ber; +der_type_encoder_f LayerID_encode_der; +xer_type_decoder_f LayerID_decode_xer; +xer_type_encoder_f LayerID_encode_xer; +oer_type_decoder_f LayerID_decode_oer; +oer_type_encoder_f LayerID_encode_oer; +per_type_decoder_f LayerID_decode_uper; +per_type_encoder_f LayerID_encode_uper; +per_type_decoder_f LayerID_decode_aper; +per_type_encoder_f LayerID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerType.h new file mode 100644 index 000000000..27e95f482 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LayerType.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LayerType_H_ +#define _LayerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LayerType { + LayerType_none = 0, + LayerType_mixedContent = 1, + LayerType_generalMapData = 2, + LayerType_intersectionData = 3, + LayerType_curveData = 4, + LayerType_roadwaySectionData = 5, + LayerType_parkingAreaData = 6, + LayerType_sharedLaneData = 7 + /* + * Enumeration is extensible + */ +} e_LayerType; + +/* LayerType */ +typedef long LayerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerType; +extern const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1; +asn_struct_free_f LayerType_free; +asn_struct_print_f LayerType_print; +asn_constr_check_f LayerType_constraint; +ber_type_decoder_f LayerType_decode_ber; +der_type_encoder_f LayerType_encode_der; +xer_type_decoder_f LayerType_decode_xer; +xer_type_encoder_f LayerType_encode_xer; +oer_type_decoder_f LayerType_decode_oer; +oer_type_encoder_f LayerType_encode_oer; +per_type_decoder_f LayerType_decode_uper; +per_type_encoder_f LayerType_encode_uper; +per_type_decoder_f LayerType_decode_aper; +per_type_encoder_f LayerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LightbarInUse.h new file mode 100644 index 000000000..bf7f2b4ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LightbarInUse.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LightbarInUse_H_ +#define _LightbarInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LightbarInUse { + LightbarInUse_unavailable = 0, + LightbarInUse_notInUse = 1, + LightbarInUse_inUse = 2, + LightbarInUse_yellowCautionLights = 3, + LightbarInUse_schooldBusLights = 4, + LightbarInUse_arrowSignsActive = 5, + LightbarInUse_slowMovingVehicle = 6, + LightbarInUse_freqStops = 7 +} e_LightbarInUse; + +/* LightbarInUse */ +typedef long LightbarInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; +extern const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1; +asn_struct_free_f LightbarInUse_free; +asn_struct_print_f LightbarInUse_print; +asn_constr_check_f LightbarInUse_constraint; +ber_type_decoder_f LightbarInUse_decode_ber; +der_type_encoder_f LightbarInUse_encode_der; +xer_type_decoder_f LightbarInUse_decode_xer; +xer_type_encoder_f LightbarInUse_encode_xer; +oer_type_decoder_f LightbarInUse_decode_oer; +oer_type_encoder_f LightbarInUse_encode_oer; +per_type_decoder_f LightbarInUse_decode_uper; +per_type_encoder_f LightbarInUse_encode_uper; +per_type_decoder_f LightbarInUse_decode_aper; +per_type_encoder_f LightbarInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LightbarInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-quality.h new file mode 100644 index 000000000..22a9de6e7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-quality.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Location_quality_H_ +#define _Location_quality_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_quality { + Location_quality_loc_qual_bt1m = 0, + Location_quality_loc_qual_bt5m = 1, + Location_quality_loc_qual_bt12m = 2, + Location_quality_loc_qual_bt50m = 3, + Location_quality_loc_qual_bt125m = 4, + Location_quality_loc_qual_bt500m = 5, + Location_quality_loc_qual_bt1250m = 6, + Location_quality_loc_qual_unknown = 7 +} e_Location_quality; + +/* Location-quality */ +typedef long Location_quality_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_quality; +asn_struct_free_f Location_quality_free; +asn_struct_print_f Location_quality_print; +asn_constr_check_f Location_quality_constraint; +ber_type_decoder_f Location_quality_decode_ber; +der_type_encoder_f Location_quality_encode_der; +xer_type_decoder_f Location_quality_decode_xer; +xer_type_encoder_f Location_quality_encode_xer; +oer_type_decoder_f Location_quality_decode_oer; +oer_type_encoder_f Location_quality_encode_oer; +per_type_decoder_f Location_quality_decode_uper; +per_type_encoder_f Location_quality_encode_uper; +per_type_decoder_f Location_quality_decode_aper; +per_type_encoder_f Location_quality_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_quality_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-tech.h new file mode 100644 index 000000000..8608f60b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Location-tech.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Location_tech_H_ +#define _Location_tech_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_tech { + Location_tech_loc_tech_unknown = 0, + Location_tech_loc_tech_GNSS = 1, + Location_tech_loc_tech_DGPS = 2, + Location_tech_loc_tech_RTK = 3, + Location_tech_loc_tech_PPP = 4, + Location_tech_loc_tech_drGPS = 5, + Location_tech_loc_tech_drDGPS = 6, + Location_tech_loc_tech_dr = 7, + Location_tech_loc_tech_nav = 8, + Location_tech_loc_tech_fault = 9 + /* + * Enumeration is extensible + */ +} e_Location_tech; + +/* Location-tech */ +typedef long Location_tech_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_tech; +asn_struct_free_f Location_tech_free; +asn_struct_print_f Location_tech_print; +asn_constr_check_f Location_tech_constraint; +ber_type_decoder_f Location_tech_decode_ber; +der_type_encoder_f Location_tech_encode_der; +xer_type_decoder_f Location_tech_decode_xer; +xer_type_encoder_f Location_tech_encode_xer; +oer_type_decoder_f Location_tech_decode_oer; +oer_type_encoder_f Location_tech_encode_oer; +per_type_decoder_f Location_tech_decode_uper; +per_type_encoder_f Location_tech_encode_uper; +per_type_decoder_f Location_tech_decode_aper; +per_type_encoder_f Location_tech_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_tech_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Longitude.h new file mode 100644 index 000000000..5e1dac467 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Longitude.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Longitude_H_ +#define _Longitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Longitude */ +typedef long Longitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Longitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Longitude; +asn_struct_free_f Longitude_free; +asn_struct_print_f Longitude_print; +asn_constr_check_f Longitude_constraint; +ber_type_decoder_f Longitude_decode_ber; +der_type_encoder_f Longitude_encode_der; +xer_type_decoder_f Longitude_decode_xer; +xer_type_encoder_f Longitude_encode_xer; +oer_type_decoder_f Longitude_decode_oer; +oer_type_encoder_f Longitude_encode_oer; +per_type_decoder_f Longitude_decode_uper; +per_type_encoder_f Longitude_encode_uper; +per_type_decoder_f Longitude_decode_aper; +per_type_encoder_f Longitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Longitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS.h new file mode 100644 index 000000000..7c3d5d9c1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LongitudeDMS_H_ +#define _LongitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS */ +typedef long LongitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; +asn_struct_free_f LongitudeDMS_free; +asn_struct_print_f LongitudeDMS_print; +asn_constr_check_f LongitudeDMS_constraint; +ber_type_decoder_f LongitudeDMS_decode_ber; +der_type_encoder_f LongitudeDMS_encode_der; +xer_type_decoder_f LongitudeDMS_decode_xer; +xer_type_encoder_f LongitudeDMS_encode_xer; +oer_type_decoder_f LongitudeDMS_decode_oer; +oer_type_encoder_f LongitudeDMS_encode_oer; +per_type_decoder_f LongitudeDMS_decode_uper; +per_type_encoder_f LongitudeDMS_encode_uper; +per_type_decoder_f LongitudeDMS_decode_aper; +per_type_encoder_f LongitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS2.h new file mode 100644 index 000000000..1d9f84abc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/LongitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _LongitudeDMS2_H_ +#define _LongitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLong.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS2 */ +typedef struct LongitudeDMS2 { + DegreesLong_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LongitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MUTCDCode.h new file mode 100644 index 000000000..f2c7734b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MUTCDCode.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MUTCDCode_H_ +#define _MUTCDCode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MUTCDCode { + MUTCDCode_none = 0, + MUTCDCode_regulatory = 1, + MUTCDCode_warning = 2, + MUTCDCode_maintenance = 3, + MUTCDCode_motoristService = 4, + MUTCDCode_guide = 5, + MUTCDCode_rec = 6 + /* + * Enumeration is extensible + */ +} e_MUTCDCode; + +/* MUTCDCode */ +typedef long MUTCDCode_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; +extern const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1; +asn_struct_free_f MUTCDCode_free; +asn_struct_print_f MUTCDCode_print; +asn_constr_check_f MUTCDCode_constraint; +ber_type_decoder_f MUTCDCode_decode_ber; +der_type_encoder_f MUTCDCode_encode_der; +xer_type_decoder_f MUTCDCode_decode_xer; +xer_type_encoder_f MUTCDCode_encode_xer; +oer_type_decoder_f MUTCDCode_decode_oer; +oer_type_encoder_f MUTCDCode_encode_oer; +per_type_decoder_f MUTCDCode_decode_uper; +per_type_encoder_f MUTCDCode_encode_uper; +per_type_decoder_f MUTCDCode_decode_aper; +per_type_encoder_f MUTCDCode_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MUTCDCode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ManeuverAssistList.h new file mode 100644 index 000000000..0942e7e2e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ManeuverAssistList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ManeuverAssistList_H_ +#define _ManeuverAssistList_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 ConnectionManeuverAssist; + +/* ManeuverAssistList */ +typedef struct ManeuverAssistList { + A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ManeuverAssistList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; +extern asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1; +extern asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[1]; +extern asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectionManeuverAssist.h" + +#endif /* _ManeuverAssistList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData-addGrpC.h new file mode 100644 index 000000000..00118dc4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData-addGrpC.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MapData_addGrpC_H_ +#define _MapData_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalHeadLocationList; + +/* MapData-addGrpC */ +typedef struct MapData_addGrpC { + struct SignalHeadLocationList *signalHeadLocations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MapData_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocationList.h" + +#endif /* _MapData_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData.h new file mode 100644 index 000000000..ca1b5e455 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MapData.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MapData_H_ +#define _MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Common_MsgCount.h" +#include "LayerType.h" +#include "LayerID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionGeometryList; +struct RoadSegmentList; +struct DataParameters; +struct RestrictionClassList; +struct Reg_MapData; + +/* MapData */ +typedef struct MapData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Common_MsgCount_t msgIssueRevision; + LayerType_t *layerType; /* OPTIONAL */ + LayerID_t *layerID; /* OPTIONAL */ + struct IntersectionGeometryList *intersections; /* OPTIONAL */ + struct RoadSegmentList *roadSegments; /* OPTIONAL */ + struct DataParameters *dataParameters; /* OPTIONAL */ + struct RestrictionClassList *restrictionList; /* OPTIONAL */ + struct MapData__regional { + A_SEQUENCE_OF(struct Reg_MapData) 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; +} MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData; +extern asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1; +extern asn_TYPE_member_t asn_MBR_MapData_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometryList.h" +#include "RoadSegmentList.h" +#include "DataParameters.h" +#include "RestrictionClassList.h" +#include "RegionalExtension.h" + +#endif /* _MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MaxTimetoChange.h new file mode 100644 index 000000000..d33a3d4b9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MaxTimetoChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MaxTimetoChange_H_ +#define _MaxTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MaxTimetoChange */ +typedef long MaxTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; +asn_struct_free_f MaxTimetoChange_free; +asn_struct_print_f MaxTimetoChange_print; +asn_constr_check_f MaxTimetoChange_constraint; +ber_type_decoder_f MaxTimetoChange_decode_ber; +der_type_encoder_f MaxTimetoChange_encode_der; +xer_type_decoder_f MaxTimetoChange_decode_xer; +xer_type_encoder_f MaxTimetoChange_encode_xer; +oer_type_decoder_f MaxTimetoChange_decode_oer; +oer_type_encoder_f MaxTimetoChange_encode_oer; +per_type_decoder_f MaxTimetoChange_decode_uper; +per_type_encoder_f MaxTimetoChange_encode_uper; +per_type_decoder_f MaxTimetoChange_decode_aper; +per_type_encoder_f MaxTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MaxTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MeasurementTimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MeasurementTimeOffset.h new file mode 100644 index 000000000..59c1c0f1f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MeasurementTimeOffset.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names` + */ + +#ifndef _MeasurementTimeOffset_H_ +#define _MeasurementTimeOffset_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MeasurementTimeOffset */ +typedef long MeasurementTimeOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset; +asn_struct_free_f MeasurementTimeOffset_free; +asn_struct_print_f MeasurementTimeOffset_print; +asn_constr_check_f MeasurementTimeOffset_constraint; +ber_type_decoder_f MeasurementTimeOffset_decode_ber; +der_type_encoder_f MeasurementTimeOffset_encode_der; +xer_type_decoder_f MeasurementTimeOffset_decode_xer; +xer_type_encoder_f MeasurementTimeOffset_encode_xer; +oer_type_decoder_f MeasurementTimeOffset_decode_oer; +oer_type_encoder_f MeasurementTimeOffset_encode_oer; +per_type_decoder_f MeasurementTimeOffset_decode_uper; +per_type_encoder_f MeasurementTimeOffset_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MeasurementTimeOffset_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MergeDivergeNodeAngle.h new file mode 100644 index 000000000..72bc26297 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MergeDivergeNodeAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MergeDivergeNodeAngle_H_ +#define _MergeDivergeNodeAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MergeDivergeNodeAngle */ +typedef long MergeDivergeNodeAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; +asn_struct_free_f MergeDivergeNodeAngle_free; +asn_struct_print_f MergeDivergeNodeAngle_print; +asn_constr_check_f MergeDivergeNodeAngle_constraint; +ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; +der_type_encoder_f MergeDivergeNodeAngle_encode_der; +xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; +xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; +oer_type_decoder_f MergeDivergeNodeAngle_decode_oer; +oer_type_encoder_f MergeDivergeNodeAngle_encode_oer; +per_type_decoder_f MergeDivergeNodeAngle_decode_uper; +per_type_encoder_f MergeDivergeNodeAngle_encode_uper; +per_type_decoder_f MergeDivergeNodeAngle_decode_aper; +per_type_encoder_f MergeDivergeNodeAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MergeDivergeNodeAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageBLOB.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageBLOB.h new file mode 100644 index 000000000..701bcf3ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageBLOB.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MessageBLOB_H_ +#define _MessageBLOB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MessageBLOB */ +typedef OCTET_STRING_t MessageBLOB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageBLOB; +asn_struct_free_f MessageBLOB_free; +asn_struct_print_f MessageBLOB_print; +asn_constr_check_f MessageBLOB_constraint; +ber_type_decoder_f MessageBLOB_decode_ber; +der_type_encoder_f MessageBLOB_encode_der; +xer_type_decoder_f MessageBLOB_decode_xer; +xer_type_encoder_f MessageBLOB_encode_xer; +oer_type_decoder_f MessageBLOB_decode_oer; +oer_type_encoder_f MessageBLOB_encode_oer; +per_type_decoder_f MessageBLOB_decode_uper; +per_type_encoder_f MessageBLOB_encode_uper; +per_type_decoder_f MessageBLOB_decode_aper; +per_type_encoder_f MessageBLOB_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageBLOB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageFrame.h new file mode 100644 index 000000000..23d3c764a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MessageFrame.h @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MessageFrame_H_ +#define _MessageFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "BasicSafetyMessage.h" +#include "MapData.h" +#include "SPAT.h" +#include "CommonSafetyRequest.h" +#include "EmergencyVehicleAlert.h" +#include "IntersectionCollision.h" +#include "NMEAcorrections.h" +#include "ProbeDataManagement.h" +#include "ProbeVehicleData.h" +#include "RoadSideAlert.h" +#include "RTCMcorrections.h" +#include "SignalRequestMessage.h" +#include "SignalStatusMessage.h" +#include "TravelerInformation.h" +#include "PersonalSafetyMessage.h" +#include "TestMessage00.h" +#include "TestMessage01.h" +#include "TestMessage02.h" +#include "TestMessage03.h" +#include "TestMessage04.h" +#include "TestMessage05.h" +#include "TestMessage06.h" +#include "TestMessage07.h" +#include "TestMessage08.h" +#include "TestMessage09.h" +#include "TestMessage10.h" +#include "TestMessage11.h" +#include "TestMessage12.h" +#include "TestMessage13.h" +#include "TestMessage14.h" +#include "TestMessage15.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "SensorDataSharingMessage.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MessageFrame__value_PR { + MessageFrame__value_PR_NOTHING, /* No components present */ + MessageFrame__value_PR_BasicSafetyMessage, + MessageFrame__value_PR_MapData, + MessageFrame__value_PR_SPAT, + MessageFrame__value_PR_CommonSafetyRequest, + MessageFrame__value_PR_EmergencyVehicleAlert, + MessageFrame__value_PR_IntersectionCollision, + MessageFrame__value_PR_NMEAcorrections, + MessageFrame__value_PR_ProbeDataManagement, + MessageFrame__value_PR_ProbeVehicleData, + MessageFrame__value_PR_RoadSideAlert, + MessageFrame__value_PR_RTCMcorrections, + MessageFrame__value_PR_SignalRequestMessage, + MessageFrame__value_PR_SignalStatusMessage, + MessageFrame__value_PR_TravelerInformation, + MessageFrame__value_PR_PersonalSafetyMessage, + MessageFrame__value_PR_TestMessage00, + MessageFrame__value_PR_TestMessage01, + MessageFrame__value_PR_TestMessage02, + MessageFrame__value_PR_TestMessage03, + MessageFrame__value_PR_TestMessage04, + MessageFrame__value_PR_TestMessage05, + MessageFrame__value_PR_TestMessage06, + MessageFrame__value_PR_TestMessage07, + MessageFrame__value_PR_TestMessage08, + MessageFrame__value_PR_TestMessage09, + MessageFrame__value_PR_TestMessage10, + MessageFrame__value_PR_TestMessage11, + MessageFrame__value_PR_TestMessage12, + MessageFrame__value_PR_TestMessage13, + MessageFrame__value_PR_TestMessage14, + MessageFrame__value_PR_TestMessage15, + MessageFrame__value_PR_SensorDataSharingMessage +} MessageFrame__value_PR; + +/* MessageFrame */ +typedef struct MessageFrame { + DSRCmsgID_t messageId; + struct MessageFrame__value { + MessageFrame__value_PR present; + union MessageFrame__value_u { + BasicSafetyMessage_t BasicSafetyMessage; + MapData_t MapData; + SPAT_t SPAT; + CommonSafetyRequest_t CommonSafetyRequest; + EmergencyVehicleAlert_t EmergencyVehicleAlert; + IntersectionCollision_t IntersectionCollision; + NMEAcorrections_t NMEAcorrections; + ProbeDataManagement_t ProbeDataManagement; + ProbeVehicleData_t ProbeVehicleData; + RoadSideAlert_t RoadSideAlert; + RTCMcorrections_t RTCMcorrections; + SignalRequestMessage_t SignalRequestMessage; + SignalStatusMessage_t SignalStatusMessage; + TravelerInformation_t TravelerInformation; + PersonalSafetyMessage_t PersonalSafetyMessage; + TestMessage00_t TestMessage00; + TestMessage01_t TestMessage01; + TestMessage02_t TestMessage02; + TestMessage03_t TestMessage03; + TestMessage04_t TestMessage04; + TestMessage05_t TestMessage05; + TestMessage06_t TestMessage06; + TestMessage07_t TestMessage07; + TestMessage08_t TestMessage08; + TestMessage09_t TestMessage09; + TestMessage10_t TestMessage10; + TestMessage11_t TestMessage11; + TestMessage12_t TestMessage12; + TestMessage13_t TestMessage13; + TestMessage14_t TestMessage14; + TestMessage15_t TestMessage15; + SensorDataSharingMessage_t SensorDataSharingMessage; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MessageFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageFrame; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinTimetoChange.h new file mode 100644 index 000000000..60991334b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinTimetoChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MinTimetoChange_H_ +#define _MinTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinTimetoChange */ +typedef long MinTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; +asn_struct_free_f MinTimetoChange_free; +asn_struct_print_f MinTimetoChange_print; +asn_constr_check_f MinTimetoChange_constraint; +ber_type_decoder_f MinTimetoChange_decode_ber; +der_type_encoder_f MinTimetoChange_encode_der; +xer_type_decoder_f MinTimetoChange_decode_xer; +xer_type_encoder_f MinTimetoChange_encode_xer; +oer_type_decoder_f MinTimetoChange_decode_oer; +oer_type_encoder_f MinTimetoChange_encode_oer; +per_type_decoder_f MinTimetoChange_decode_uper; +per_type_encoder_f MinTimetoChange_encode_uper; +per_type_decoder_f MinTimetoChange_decode_aper; +per_type_encoder_f MinTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Minute.h new file mode 100644 index 000000000..382f04f75 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Minute.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Minute_H_ +#define _Minute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Minute */ +typedef long Minute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Minute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Minute; +asn_struct_free_f Minute_free; +asn_struct_print_f Minute_print; +asn_constr_check_f Minute_constraint; +ber_type_decoder_f Minute_decode_ber; +der_type_encoder_f Minute_encode_der; +xer_type_decoder_f Minute_decode_xer; +xer_type_encoder_f Minute_encode_xer; +oer_type_decoder_f Minute_decode_oer; +oer_type_encoder_f Minute_encode_oer; +per_type_decoder_f Minute_decode_uper; +per_type_encoder_f Minute_encode_uper; +per_type_decoder_f Minute_decode_aper; +per_type_encoder_f Minute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Minute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinuteOfTheYear.h new file mode 100644 index 000000000..cb643c7d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinuteOfTheYear.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MinuteOfTheYear_H_ +#define _MinuteOfTheYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinuteOfTheYear */ +typedef long MinuteOfTheYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; +asn_struct_free_f MinuteOfTheYear_free; +asn_struct_print_f MinuteOfTheYear_print; +asn_constr_check_f MinuteOfTheYear_constraint; +ber_type_decoder_f MinuteOfTheYear_decode_ber; +der_type_encoder_f MinuteOfTheYear_encode_der; +xer_type_decoder_f MinuteOfTheYear_decode_xer; +xer_type_encoder_f MinuteOfTheYear_encode_xer; +oer_type_decoder_f MinuteOfTheYear_decode_oer; +oer_type_encoder_f MinuteOfTheYear_encode_oer; +per_type_decoder_f MinuteOfTheYear_decode_uper; +per_type_encoder_f MinuteOfTheYear_encode_uper; +per_type_decoder_f MinuteOfTheYear_decode_aper; +per_type_encoder_f MinuteOfTheYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinuteOfTheYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesAngle.h new file mode 100644 index 000000000..9b425d37b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MinutesAngle_H_ +#define _MinutesAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesAngle */ +typedef long MinutesAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; +asn_struct_free_f MinutesAngle_free; +asn_struct_print_f MinutesAngle_print; +asn_constr_check_f MinutesAngle_constraint; +ber_type_decoder_f MinutesAngle_decode_ber; +der_type_encoder_f MinutesAngle_encode_der; +xer_type_decoder_f MinutesAngle_decode_xer; +xer_type_encoder_f MinutesAngle_encode_xer; +oer_type_decoder_f MinutesAngle_decode_oer; +oer_type_encoder_f MinutesAngle_encode_oer; +per_type_decoder_f MinutesAngle_decode_uper; +per_type_encoder_f MinutesAngle_encode_uper; +per_type_decoder_f MinutesAngle_decode_aper; +per_type_encoder_f MinutesAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesDuration.h new file mode 100644 index 000000000..0fcc11965 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MinutesDuration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MinutesDuration_H_ +#define _MinutesDuration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesDuration */ +typedef long MinutesDuration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; +asn_struct_free_f MinutesDuration_free; +asn_struct_print_f MinutesDuration_print; +asn_constr_check_f MinutesDuration_constraint; +ber_type_decoder_f MinutesDuration_decode_ber; +der_type_encoder_f MinutesDuration_encode_der; +xer_type_decoder_f MinutesDuration_decode_xer; +xer_type_encoder_f MinutesDuration_encode_xer; +oer_type_decoder_f MinutesDuration_decode_oer; +oer_type_encoder_f MinutesDuration_encode_oer; +per_type_decoder_f MinutesDuration_decode_uper; +per_type_encoder_f MinutesDuration_encode_uper; +per_type_decoder_f MinutesDuration_decode_aper; +per_type_encoder_f MinutesDuration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesDuration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityDynamicID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityDynamicID.h new file mode 100644 index 000000000..6585d54e0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityDynamicID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityDynamicID_H_ +#define _MobilityDynamicID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityDynamicID */ +typedef IA5String_t MobilityDynamicID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID; +asn_struct_free_f MobilityDynamicID_free; +asn_struct_print_f MobilityDynamicID_print; +asn_constr_check_f MobilityDynamicID_constraint; +ber_type_decoder_f MobilityDynamicID_decode_ber; +der_type_encoder_f MobilityDynamicID_encode_der; +xer_type_decoder_f MobilityDynamicID_decode_xer; +xer_type_encoder_f MobilityDynamicID_encode_xer; +oer_type_decoder_f MobilityDynamicID_decode_oer; +oer_type_encoder_f MobilityDynamicID_encode_oer; +per_type_decoder_f MobilityDynamicID_decode_uper; +per_type_encoder_f MobilityDynamicID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityDynamicID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFCoordinate.h new file mode 100644 index 000000000..886ddd37c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFCoordinate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFCoordinate_H_ +#define _MobilityECEFCoordinate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFCoordinate */ +typedef long MobilityECEFCoordinate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate; +asn_struct_free_f MobilityECEFCoordinate_free; +asn_struct_print_f MobilityECEFCoordinate_print; +asn_constr_check_f MobilityECEFCoordinate_constraint; +ber_type_decoder_f MobilityECEFCoordinate_decode_ber; +der_type_encoder_f MobilityECEFCoordinate_encode_der; +xer_type_decoder_f MobilityECEFCoordinate_decode_xer; +xer_type_encoder_f MobilityECEFCoordinate_encode_xer; +oer_type_decoder_f MobilityECEFCoordinate_decode_oer; +oer_type_encoder_f MobilityECEFCoordinate_encode_oer; +per_type_decoder_f MobilityECEFCoordinate_decode_uper; +per_type_encoder_f MobilityECEFCoordinate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFCoordinate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffset.h new file mode 100644 index 000000000..abdf4de36 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffset.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFOffset_H_ +#define _MobilityECEFOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityECEFOffsetCoordinate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFOffset */ +typedef struct MobilityECEFOffset { + MobilityECEFOffsetCoordinate_t offsetX; + MobilityECEFOffsetCoordinate_t offsetY; + MobilityECEFOffsetCoordinate_t offsetZ; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityECEFOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffsetCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffsetCoordinate.h new file mode 100644 index 000000000..0515352ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityECEFOffsetCoordinate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFOffsetCoordinate_H_ +#define _MobilityECEFOffsetCoordinate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFOffsetCoordinate */ +typedef long MobilityECEFOffsetCoordinate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate; +asn_struct_free_f MobilityECEFOffsetCoordinate_free; +asn_struct_print_f MobilityECEFOffsetCoordinate_print; +asn_constr_check_f MobilityECEFOffsetCoordinate_constraint; +ber_type_decoder_f MobilityECEFOffsetCoordinate_decode_ber; +der_type_encoder_f MobilityECEFOffsetCoordinate_encode_der; +xer_type_decoder_f MobilityECEFOffsetCoordinate_decode_xer; +xer_type_encoder_f MobilityECEFOffsetCoordinate_encode_xer; +oer_type_decoder_f MobilityECEFOffsetCoordinate_decode_oer; +oer_type_encoder_f MobilityECEFOffsetCoordinate_encode_oer; +per_type_decoder_f MobilityECEFOffsetCoordinate_decode_uper; +per_type_encoder_f MobilityECEFOffsetCoordinate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFOffsetCoordinate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityGUID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityGUID.h new file mode 100644 index 000000000..b95a26e13 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityGUID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityGUID_H_ +#define _MobilityGUID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityGUID */ +typedef IA5String_t MobilityGUID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityGUID; +asn_struct_free_f MobilityGUID_free; +asn_struct_print_f MobilityGUID_print; +asn_constr_check_f MobilityGUID_constraint; +ber_type_decoder_f MobilityGUID_decode_ber; +der_type_encoder_f MobilityGUID_encode_der; +xer_type_decoder_f MobilityGUID_decode_xer; +xer_type_encoder_f MobilityGUID_encode_xer; +oer_type_decoder_f MobilityGUID_decode_oer; +oer_type_encoder_f MobilityGUID_encode_oer; +per_type_decoder_f MobilityGUID_decode_uper; +per_type_encoder_f MobilityGUID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityGUID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityHeader.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityHeader.h new file mode 100644 index 000000000..7b32562ec --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityHeader.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityHeader_H_ +#define _MobilityHeader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStaticID.h" +#include "MobilityDynamicID.h" +#include "MobilityGUID.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityHeader */ +typedef struct MobilityHeader { + MobilityStaticID_t hostStaticId; + MobilityStaticID_t targetStaticId; + MobilityDynamicID_t hostBSMId; + MobilityGUID_t planId; + MobilityTimestamp_t timestamp; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityHeader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityHeader; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityHeader_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityHeader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocation.h new file mode 100644 index 000000000..f73b68e2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocation.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityLocation_H_ +#define _MobilityLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityECEFCoordinate.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityLocation */ +typedef struct MobilityLocation { + MobilityECEFCoordinate_t ecefX; + MobilityECEFCoordinate_t ecefY; + MobilityECEFCoordinate_t ecefZ; + MobilityTimestamp_t timestamp; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityLocation; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityLocation_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocationOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocationOffsets.h new file mode 100644 index 000000000..f40add688 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityLocationOffsets.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityLocationOffsets_H_ +#define _MobilityLocationOffsets_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 MobilityECEFOffset; + +/* MobilityLocationOffsets */ +typedef struct MobilityLocationOffsets { + A_SEQUENCE_OF(struct MobilityECEFOffset) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityLocationOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets; +extern asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[1]; +extern asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MobilityECEFOffset.h" + +#endif /* _MobilityLocationOffsets_H_ */ +#include "asn_internal.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/MobilityOperation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityOperation.h new file mode 100644 index 000000000..cf865e33b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityOperation.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityOperation_H_ +#define _MobilityOperation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStrategy.h" +#include "MobilityParameters.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityOperation */ +typedef struct MobilityOperation { + MobilityStrategy_t strategy; + MobilityParameters_t operationParams; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityOperation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityOperation; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityOperation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityOperation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityParameters.h new file mode 100644 index 000000000..7db88393d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityParameters.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityParameters_H_ +#define _MobilityParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityParameters */ +typedef IA5String_t MobilityParameters_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityParameters; +asn_struct_free_f MobilityParameters_free; +asn_struct_print_f MobilityParameters_print; +asn_constr_check_f MobilityParameters_constraint; +ber_type_decoder_f MobilityParameters_decode_ber; +der_type_encoder_f MobilityParameters_encode_der; +xer_type_decoder_f MobilityParameters_decode_xer; +xer_type_encoder_f MobilityParameters_encode_xer; +oer_type_decoder_f MobilityParameters_decode_oer; +oer_type_encoder_f MobilityParameters_encode_oer; +per_type_decoder_f MobilityParameters_decode_uper; +per_type_encoder_f MobilityParameters_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPath.h new file mode 100644 index 000000000..2cab5ee68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPath.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityPath_H_ +#define _MobilityPath_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityPath */ +typedef struct MobilityPath { + MobilityLocation_t location; + MobilityLocationOffsets_t trajectory; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityPath_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityPath; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityPath_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityPath_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPlanType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPlanType.h new file mode 100644 index 000000000..4e971e1aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityPlanType.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityPlanType_H_ +#define _MobilityPlanType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MobilityPlanType { + MobilityPlanType_unknown = 0, + MobilityPlanType_changingLanesToTheLeft = 1, + MobilityPlanType_changingLanesToTheRight = 2, + MobilityPlanType_joinPlatoonAtRear = 3, + MobilityPlanType_platoonFollowerJoin = 4 + /* + * Enumeration is extensible + */ +} e_MobilityPlanType; + +/* MobilityPlanType */ +typedef long MobilityPlanType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityPlanType; +extern const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1; +asn_struct_free_f MobilityPlanType_free; +asn_struct_print_f MobilityPlanType_print; +asn_constr_check_f MobilityPlanType_constraint; +ber_type_decoder_f MobilityPlanType_decode_ber; +der_type_encoder_f MobilityPlanType_encode_der; +xer_type_decoder_f MobilityPlanType_decode_xer; +xer_type_encoder_f MobilityPlanType_encode_xer; +oer_type_decoder_f MobilityPlanType_decode_oer; +oer_type_encoder_f MobilityPlanType_encode_oer; +per_type_decoder_f MobilityPlanType_decode_uper; +per_type_encoder_f MobilityPlanType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityPlanType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityRequest.h new file mode 100644 index 000000000..83580ddac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityRequest.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityRequest_H_ +#define _MobilityRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStrategy.h" +#include "MobilityPlanType.h" +#include "MobilityUrgency.h" +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" +#include "MobilityParameters.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct MobilityLocation; +struct MobilityLocationOffsets; + +/* MobilityRequest */ +typedef struct MobilityRequest { + MobilityStrategy_t strategy; + MobilityPlanType_t planType; + MobilityUrgency_t urgency; + MobilityLocation_t location; + MobilityParameters_t strategyParams; + MobilityLocation_t trajectoryStart /* OPTIONAL */; + MobilityLocationOffsets_t trajectory /* OPTIONAL */; + MobilityTimestamp_t expiration /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityRequest_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" + +#endif /* _MobilityRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponse.h new file mode 100644 index 000000000..76f7004a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponse.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityResponse_H_ +#define _MobilityResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityUrgency.h" +#include "MobilityResponseFlag.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityResponse */ +typedef struct MobilityResponse { + MobilityUrgency_t urgency; + MobilityResponseFlag_t isAccepted; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityResponse; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityResponse_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponseFlag.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponseFlag.h new file mode 100644 index 000000000..30f71521b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityResponseFlag.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityResponseFlag_H_ +#define _MobilityResponseFlag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityResponseFlag */ +typedef BOOLEAN_t MobilityResponseFlag_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag; +asn_struct_free_f MobilityResponseFlag_free; +asn_struct_print_f MobilityResponseFlag_print; +asn_constr_check_f MobilityResponseFlag_constraint; +ber_type_decoder_f MobilityResponseFlag_decode_ber; +der_type_encoder_f MobilityResponseFlag_encode_der; +xer_type_decoder_f MobilityResponseFlag_decode_xer; +xer_type_encoder_f MobilityResponseFlag_encode_xer; +oer_type_decoder_f MobilityResponseFlag_decode_oer; +oer_type_encoder_f MobilityResponseFlag_encode_oer; +per_type_decoder_f MobilityResponseFlag_decode_uper; +per_type_encoder_f MobilityResponseFlag_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityResponseFlag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStaticID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStaticID.h new file mode 100644 index 000000000..74a040938 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStaticID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityStaticID_H_ +#define _MobilityStaticID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityStaticID */ +typedef IA5String_t MobilityStaticID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityStaticID; +asn_struct_free_f MobilityStaticID_free; +asn_struct_print_f MobilityStaticID_print; +asn_constr_check_f MobilityStaticID_constraint; +ber_type_decoder_f MobilityStaticID_decode_ber; +der_type_encoder_f MobilityStaticID_encode_der; +xer_type_decoder_f MobilityStaticID_decode_xer; +xer_type_encoder_f MobilityStaticID_encode_xer; +oer_type_decoder_f MobilityStaticID_decode_oer; +oer_type_encoder_f MobilityStaticID_encode_oer; +per_type_decoder_f MobilityStaticID_decode_uper; +per_type_encoder_f MobilityStaticID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityStaticID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStrategy.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStrategy.h new file mode 100644 index 000000000..e7c93479a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityStrategy.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityStrategy_H_ +#define _MobilityStrategy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityStrategy */ +typedef IA5String_t MobilityStrategy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityStrategy; +asn_struct_free_f MobilityStrategy_free; +asn_struct_print_f MobilityStrategy_print; +asn_constr_check_f MobilityStrategy_constraint; +ber_type_decoder_f MobilityStrategy_decode_ber; +der_type_encoder_f MobilityStrategy_encode_der; +xer_type_decoder_f MobilityStrategy_decode_xer; +xer_type_encoder_f MobilityStrategy_encode_xer; +oer_type_decoder_f MobilityStrategy_decode_oer; +oer_type_encoder_f MobilityStrategy_encode_oer; +per_type_decoder_f MobilityStrategy_decode_uper; +per_type_encoder_f MobilityStrategy_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityStrategy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityTimestamp.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityTimestamp.h new file mode 100644 index 000000000..17e94afb7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityTimestamp.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityTimestamp_H_ +#define _MobilityTimestamp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityTimestamp */ +typedef IA5String_t MobilityTimestamp_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp; +asn_struct_free_f MobilityTimestamp_free; +asn_struct_print_f MobilityTimestamp_print; +asn_constr_check_f MobilityTimestamp_constraint; +ber_type_decoder_f MobilityTimestamp_decode_ber; +der_type_encoder_f MobilityTimestamp_encode_der; +xer_type_decoder_f MobilityTimestamp_decode_xer; +xer_type_encoder_f MobilityTimestamp_encode_xer; +oer_type_decoder_f MobilityTimestamp_decode_oer; +oer_type_encoder_f MobilityTimestamp_encode_oer; +per_type_decoder_f MobilityTimestamp_decode_uper; +per_type_encoder_f MobilityTimestamp_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityTimestamp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityUrgency.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityUrgency.h new file mode 100644 index 000000000..eef5355ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityUrgency.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityUrgency_H_ +#define _MobilityUrgency_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityUrgency */ +typedef long MobilityUrgency_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityUrgency; +asn_struct_free_f MobilityUrgency_free; +asn_struct_print_f MobilityUrgency_print; +asn_constr_check_f MobilityUrgency_constraint; +ber_type_decoder_f MobilityUrgency_decode_ber; +der_type_encoder_f MobilityUrgency_encode_der; +xer_type_decoder_f MobilityUrgency_decode_xer; +xer_type_encoder_f MobilityUrgency_encode_xer; +oer_type_decoder_f MobilityUrgency_decode_oer; +oer_type_encoder_f MobilityUrgency_encode_oer; +per_type_decoder_f MobilityUrgency_decode_uper; +per_type_encoder_f MobilityUrgency_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityUrgency_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Month.h new file mode 100644 index 000000000..28b80a00f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Month.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Month_H_ +#define _Month_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Month */ +typedef long Month_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Month_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Month; +asn_struct_free_f Month_free; +asn_struct_print_f Month_print; +asn_constr_check_f Month_constraint; +ber_type_decoder_f Month_decode_ber; +der_type_encoder_f Month_encode_der; +xer_type_decoder_f Month_decode_xer; +xer_type_encoder_f Month_encode_xer; +oer_type_decoder_f Month_decode_oer; +oer_type_encoder_f Month_encode_oer; +per_type_decoder_f Month_decode_uper; +per_type_encoder_f Month_encode_uper; +per_type_decoder_f Month_decode_aper; +per_type_encoder_f Month_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Month_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MotorizedPropelledType.h new file mode 100644 index 000000000..c3dc378cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MotorizedPropelledType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MotorizedPropelledType_H_ +#define _MotorizedPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MotorizedPropelledType { + MotorizedPropelledType_unavailable = 0, + MotorizedPropelledType_otherTypes = 1, + MotorizedPropelledType_wheelChair = 2, + MotorizedPropelledType_bicycle = 3, + MotorizedPropelledType_scooter = 4, + MotorizedPropelledType_selfBalancingDevice = 5 + /* + * Enumeration is extensible + */ +} e_MotorizedPropelledType; + +/* MotorizedPropelledType */ +typedef long MotorizedPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1; +asn_struct_free_f MotorizedPropelledType_free; +asn_struct_print_f MotorizedPropelledType_print; +asn_constr_check_f MotorizedPropelledType_constraint; +ber_type_decoder_f MotorizedPropelledType_decode_ber; +der_type_encoder_f MotorizedPropelledType_encode_der; +xer_type_decoder_f MotorizedPropelledType_decode_xer; +xer_type_encoder_f MotorizedPropelledType_encode_xer; +oer_type_decoder_f MotorizedPropelledType_decode_oer; +oer_type_encoder_f MotorizedPropelledType_encode_oer; +per_type_decoder_f MotorizedPropelledType_decode_uper; +per_type_encoder_f MotorizedPropelledType_encode_uper; +per_type_decoder_f MotorizedPropelledType_decode_aper; +per_type_encoder_f MotorizedPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MotorizedPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent-addGrpB.h new file mode 100644 index 000000000..766a4be2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent-addGrpB.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementEvent_addGrpB_H_ +#define _MovementEvent_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeRemaining.h" +#include "MinTimetoChange.h" +#include "MaxTimetoChange.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MovementEvent-addGrpB */ +typedef struct MovementEvent_addGrpB { + TimeRemaining_t *startTime; /* OPTIONAL */ + MinTimetoChange_t minEndTime; + MaxTimetoChange_t *maxEndTime; /* OPTIONAL */ + TimeRemaining_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + TimeRemaining_t *nextTime; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEvent_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementEvent_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent.h new file mode 100644 index 000000000..e967b78ac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEvent.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementEvent_H_ +#define _MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MovementPhaseState.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TimeChangeDetails; +struct AdvisorySpeedList; +struct Reg_MovementEvent; + +/* MovementEvent */ +typedef struct MovementEvent { + MovementPhaseState_t eventState; + struct TimeChangeDetails *timing; /* OPTIONAL */ + struct AdvisorySpeedList *speeds; /* OPTIONAL */ + struct MovementEvent__regional { + A_SEQUENCE_OF(struct Reg_MovementEvent) 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; +} MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEvent_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TimeChangeDetails.h" +#include "AdvisorySpeedList.h" +#include "RegionalExtension.h" + +#endif /* _MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEventList.h new file mode 100644 index 000000000..c9202d650 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementEventList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementEventList_H_ +#define _MovementEventList_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 MovementEvent; + +/* MovementEventList */ +typedef struct MovementEventList { + A_SEQUENCE_OF(struct MovementEvent) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEventList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; +extern asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEventList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementEventList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementEvent.h" + +#endif /* _MovementEventList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementList.h new file mode 100644 index 000000000..555a2f25b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementList_H_ +#define _MovementList_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 MovementState; + +/* MovementList */ +typedef struct MovementList { + A_SEQUENCE_OF(struct MovementState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementList; +extern asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementState.h" + +#endif /* _MovementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementPhaseState.h new file mode 100644 index 000000000..3629d1567 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementPhaseState.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementPhaseState_H_ +#define _MovementPhaseState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MovementPhaseState { + MovementPhaseState_unavailable = 0, + MovementPhaseState_dark = 1, + MovementPhaseState_stop_Then_Proceed = 2, + MovementPhaseState_stop_And_Remain = 3, + MovementPhaseState_pre_Movement = 4, + MovementPhaseState_permissive_Movement_Allowed = 5, + MovementPhaseState_protected_Movement_Allowed = 6, + MovementPhaseState_permissive_clearance = 7, + MovementPhaseState_protected_clearance = 8, + MovementPhaseState_caution_Conflicting_Traffic = 9 +} e_MovementPhaseState; + +/* MovementPhaseState */ +typedef long MovementPhaseState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; +extern const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1; +asn_struct_free_f MovementPhaseState_free; +asn_struct_print_f MovementPhaseState_print; +asn_constr_check_f MovementPhaseState_constraint; +ber_type_decoder_f MovementPhaseState_decode_ber; +der_type_encoder_f MovementPhaseState_encode_der; +xer_type_decoder_f MovementPhaseState_decode_xer; +xer_type_encoder_f MovementPhaseState_encode_xer; +oer_type_decoder_f MovementPhaseState_decode_oer; +oer_type_encoder_f MovementPhaseState_encode_oer; +per_type_decoder_f MovementPhaseState_decode_uper; +per_type_encoder_f MovementPhaseState_encode_uper; +per_type_decoder_f MovementPhaseState_decode_aper; +per_type_encoder_f MovementPhaseState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementPhaseState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementState.h new file mode 100644 index 000000000..6ee5462ce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MovementState.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MovementState_H_ +#define _MovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "SignalGroupID.h" +#include "MovementEventList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ManeuverAssistList; +struct Reg_MovementState; + +/* MovementState */ +typedef struct MovementState { + DescriptiveName_t *movementName; /* OPTIONAL */ + SignalGroupID_t signalGroup; + MovementEventList_t state_time_speed; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct MovementState__regional { + A_SEQUENCE_OF(struct Reg_MovementState) 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; +} MovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementState; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementState_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" + +#endif /* _MovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MsgCRC.h new file mode 100644 index 000000000..7d0874fc3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MsgCRC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MsgCRC_H_ +#define _MsgCRC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MsgCRC */ +typedef OCTET_STRING_t MsgCRC_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MsgCRC_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; +asn_struct_free_f MsgCRC_free; +asn_struct_print_f MsgCRC_print; +asn_constr_check_f MsgCRC_constraint; +ber_type_decoder_f MsgCRC_decode_ber; +der_type_encoder_f MsgCRC_encode_der; +xer_type_decoder_f MsgCRC_decode_xer; +xer_type_encoder_f MsgCRC_encode_xer; +oer_type_decoder_f MsgCRC_decode_oer; +oer_type_encoder_f MsgCRC_encode_oer; +per_type_decoder_f MsgCRC_decode_uper; +per_type_encoder_f MsgCRC_encode_uper; +per_type_decoder_f MsgCRC_decode_aper; +per_type_encoder_f MsgCRC_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MsgCRC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MultiVehicleResponse.h new file mode 100644 index 000000000..b31c44e58 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MultiVehicleResponse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _MultiVehicleResponse_H_ +#define _MultiVehicleResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MultiVehicleResponse { + MultiVehicleResponse_unavailable = 0, + MultiVehicleResponse_singleVehicle = 1, + MultiVehicleResponse_multiVehicle = 2, + MultiVehicleResponse_reserved = 3 +} e_MultiVehicleResponse; + +/* MultiVehicleResponse */ +typedef long MultiVehicleResponse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; +extern const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1; +asn_struct_free_f MultiVehicleResponse_free; +asn_struct_print_f MultiVehicleResponse_print; +asn_constr_check_f MultiVehicleResponse_constraint; +ber_type_decoder_f MultiVehicleResponse_decode_ber; +der_type_encoder_f MultiVehicleResponse_encode_der; +xer_type_decoder_f MultiVehicleResponse_decode_xer; +xer_type_encoder_f MultiVehicleResponse_encode_xer; +oer_type_decoder_f MultiVehicleResponse_decode_oer; +oer_type_encoder_f MultiVehicleResponse_encode_oer; +per_type_decoder_f MultiVehicleResponse_decode_uper; +per_type_encoder_f MultiVehicleResponse_encode_uper; +per_type_decoder_f MultiVehicleResponse_decode_aper; +per_type_encoder_f MultiVehicleResponse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MultiVehicleResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-MsgType.h new file mode 100644 index 000000000..3b28ad456 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-MsgType.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NMEA_MsgType_H_ +#define _NMEA_MsgType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-MsgType */ +typedef long NMEA_MsgType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; +asn_struct_free_f NMEA_MsgType_free; +asn_struct_print_f NMEA_MsgType_print; +asn_constr_check_f NMEA_MsgType_constraint; +ber_type_decoder_f NMEA_MsgType_decode_ber; +der_type_encoder_f NMEA_MsgType_encode_der; +xer_type_decoder_f NMEA_MsgType_decode_xer; +xer_type_encoder_f NMEA_MsgType_encode_xer; +oer_type_decoder_f NMEA_MsgType_decode_oer; +oer_type_encoder_f NMEA_MsgType_encode_oer; +per_type_decoder_f NMEA_MsgType_decode_uper; +per_type_encoder_f NMEA_MsgType_encode_uper; +per_type_decoder_f NMEA_MsgType_decode_aper; +per_type_encoder_f NMEA_MsgType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_MsgType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Payload.h new file mode 100644 index 000000000..946b85182 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Payload.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NMEA_Payload_H_ +#define _NMEA_Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-Payload */ +typedef OCTET_STRING_t NMEA_Payload_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; +asn_struct_free_f NMEA_Payload_free; +asn_struct_print_f NMEA_Payload_print; +asn_constr_check_f NMEA_Payload_constraint; +ber_type_decoder_f NMEA_Payload_decode_ber; +der_type_encoder_f NMEA_Payload_encode_der; +xer_type_decoder_f NMEA_Payload_decode_xer; +xer_type_encoder_f NMEA_Payload_encode_xer; +oer_type_decoder_f NMEA_Payload_decode_oer; +oer_type_encoder_f NMEA_Payload_encode_oer; +per_type_decoder_f NMEA_Payload_decode_uper; +per_type_encoder_f NMEA_Payload_encode_uper; +per_type_decoder_f NMEA_Payload_decode_aper; +per_type_encoder_f NMEA_Payload_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Revision.h new file mode 100644 index 000000000..42760c176 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEA-Revision.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NMEA_Revision_H_ +#define _NMEA_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NMEA_Revision { + NMEA_Revision_unknown = 0, + NMEA_Revision_reserved = 1, + NMEA_Revision_rev1 = 2, + NMEA_Revision_rev2 = 3, + NMEA_Revision_rev3 = 4, + NMEA_Revision_rev4 = 5, + NMEA_Revision_rev5 = 6 + /* + * Enumeration is extensible + */ +} e_NMEA_Revision; + +/* NMEA-Revision */ +typedef long NMEA_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1; +asn_struct_free_f NMEA_Revision_free; +asn_struct_print_f NMEA_Revision_print; +asn_constr_check_f NMEA_Revision_constraint; +ber_type_decoder_f NMEA_Revision_decode_ber; +der_type_encoder_f NMEA_Revision_encode_der; +xer_type_decoder_f NMEA_Revision_decode_xer; +xer_type_encoder_f NMEA_Revision_encode_xer; +oer_type_decoder_f NMEA_Revision_decode_oer; +oer_type_encoder_f NMEA_Revision_encode_oer; +per_type_decoder_f NMEA_Revision_decode_uper; +per_type_encoder_f NMEA_Revision_encode_uper; +per_type_decoder_f NMEA_Revision_decode_aper; +per_type_encoder_f NMEA_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEAcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEAcorrections.h new file mode 100644 index 000000000..90f4446a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NMEAcorrections.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NMEAcorrections_H_ +#define _NMEAcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "NMEA-Revision.h" +#include "NMEA-MsgType.h" +#include "ObjectCount.h" +#include "NMEA-Payload.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_NMEAcorrections; + +/* NMEAcorrections */ +typedef struct NMEAcorrections { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + NMEA_Revision_t *rev; /* OPTIONAL */ + NMEA_MsgType_t *msg; /* OPTIONAL */ + ObjectCount_t *wdCount; /* OPTIONAL */ + NMEA_Payload_t payload; + struct NMEAcorrections__regional { + A_SEQUENCE_OF(struct Reg_NMEAcorrections) 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; +} NMEAcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEAcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_NMEAcorrections_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _NMEAcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NULL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NULL.h new file mode 100644 index 000000000..802d12c00 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NULL.h @@ -0,0 +1,45 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_NULL_H +#define ASN_TYPE_NULL_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The value of the NULL type is meaningless: see BOOLEAN if you want to + * carry true/false semantics. + */ +typedef int NULL_t; + +extern asn_TYPE_descriptor_t asn_DEF_NULL; +extern asn_TYPE_operation_t asn_OP_NULL; + +asn_struct_print_f NULL_print; +asn_struct_compare_f NULL_compare; +der_type_encoder_f NULL_encode_der; +xer_type_decoder_f NULL_decode_xer; +xer_type_encoder_f NULL_encode_xer; +oer_type_decoder_f NULL_decode_oer; +oer_type_encoder_f NULL_encode_oer; +per_type_decoder_f NULL_decode_uper; +per_type_encoder_f NULL_encode_uper; +per_type_decoder_f NULL_decode_aper; +per_type_encoder_f NULL_encode_aper; +asn_random_fill_f NULL_random_fill; + +#define NULL_free BOOLEAN_free +#define NULL_decode_ber BOOLEAN_decode_ber +#define NULL_constraint asn_generic_no_constraint + +#ifdef __cplusplus +} +#endif + +#endif /* NULL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeEnumerated.h new file mode 100644 index 000000000..0c711e3fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeEnumerated.h @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard ENUMERATED in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeEnumerated_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeEnumerated_H_ +#define _NativeEnumerated_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; +extern asn_TYPE_operation_t asn_OP_NativeEnumerated; + +#define NativeEnumerated_free NativeInteger_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define NativeEnumerated_print NativeInteger_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define NativeEnumerated_compare NativeInteger_compare + +#define NativeEnumerated_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define NativeEnumerated_decode_ber NativeInteger_decode_ber +#define NativeEnumerated_encode_der NativeInteger_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define NativeEnumerated_decode_xer NativeInteger_decode_xer +xer_type_encoder_f NativeEnumerated_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f NativeEnumerated_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f NativeEnumerated_decode_oer; +oer_type_encoder_f NativeEnumerated_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f NativeEnumerated_decode_uper; +per_type_encoder_f NativeEnumerated_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f NativeEnumerated_decode_aper; +per_type_encoder_f NativeEnumerated_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#define NativeEnumerated_random_fill NativeInteger_random_fill +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int NativeEnumerated__compar_value2enum( + const void *ap, + const void *bp); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeInteger.h new file mode 100644 index 000000000..3a47c11a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeInteger.h @@ -0,0 +1,71 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard INTEGER in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeInteger_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeInteger_H_ +#define _NativeInteger_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; +extern asn_TYPE_operation_t asn_OP_NativeInteger; + +asn_struct_free_f NativeInteger_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f NativeInteger_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f NativeInteger_compare; + +#define NativeInteger_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f NativeInteger_decode_ber; +der_type_encoder_f NativeInteger_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f NativeInteger_decode_xer; +xer_type_encoder_f NativeInteger_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f NativeInteger_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f NativeInteger_decode_oer; +oer_type_encoder_f NativeInteger_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f NativeInteger_decode_uper; +per_type_encoder_f NativeInteger_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f NativeInteger_decode_aper; +per_type_encoder_f NativeInteger_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f NativeInteger_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-24B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-24B.h new file mode 100644 index 000000000..2dad39ac8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-24B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_24B_H_ +#define _Node_LL_24B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-24B */ +typedef struct Node_LL_24B { + OffsetLL_B12_t lon; + OffsetLL_B12_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_24B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_24B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_24B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_24B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-28B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-28B.h new file mode 100644 index 000000000..f23a5bb84 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-28B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_28B_H_ +#define _Node_LL_28B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-28B */ +typedef struct Node_LL_28B { + OffsetLL_B14_t lon; + OffsetLL_B14_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_28B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_28B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_28B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_28B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-32B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-32B.h new file mode 100644 index 000000000..5f443b473 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-32B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_32B_H_ +#define _Node_LL_32B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-32B */ +typedef struct Node_LL_32B { + OffsetLL_B16_t lon; + OffsetLL_B16_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_32B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_32B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_32B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_32B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-36B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-36B.h new file mode 100644 index 000000000..b6e5b4abe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-36B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_36B_H_ +#define _Node_LL_36B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-36B */ +typedef struct Node_LL_36B { + OffsetLL_B18_t lon; + OffsetLL_B18_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_36B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_36B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_36B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_36B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-44B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-44B.h new file mode 100644 index 000000000..1fad1f5e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-44B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_44B_H_ +#define _Node_LL_44B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B22.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-44B */ +typedef struct Node_LL_44B { + OffsetLL_B22_t lon; + OffsetLL_B22_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_44B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_44B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_44B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_44B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-48B.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-48B.h new file mode 100644 index 000000000..96711285e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LL-48B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LL_48B_H_ +#define _Node_LL_48B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B24.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-48B */ +typedef struct Node_LL_48B { + OffsetLL_B24_t lon; + OffsetLL_B24_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_48B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_48B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_48B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_48B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-48b.h new file mode 100644 index 000000000..71c4dccbb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-48b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LLdms_48b_H_ +#define _Node_LLdms_48b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS.h" +#include "LatitudeDMS.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-48b */ +typedef struct Node_LLdms_48b { + LongitudeDMS_t lon; + LatitudeDMS_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_48b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_48b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-80b.h new file mode 100644 index 000000000..bd912250f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLdms-80b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LLdms_80b_H_ +#define _Node_LLdms_80b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS2.h" +#include "LatitudeDMS2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-80b */ +typedef struct Node_LLdms_80b { + LongitudeDMS2_t lon; + LatitudeDMS2_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_80b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_80b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLmD-64b.h new file mode 100644 index 000000000..e2a74e001 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-LLmD-64b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_LLmD_64b_H_ +#define _Node_LLmD_64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLmD-64b */ +typedef struct Node_LLmD_64b { + Longitude_t lon; + Latitude_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLmD_64b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLmD_64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-20b.h new file mode 100644 index 000000000..85d6e513d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-20b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_20b_H_ +#define _Node_XY_20b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-20b */ +typedef struct Node_XY_20b { + Offset_B10_t x; + Offset_B10_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_20b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_20b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_20b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-22b.h new file mode 100644 index 000000000..ba830da94 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-22b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_22b_H_ +#define _Node_XY_22b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-22b */ +typedef struct Node_XY_22b { + Offset_B11_t x; + Offset_B11_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_22b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_22b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_22b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-24b.h new file mode 100644 index 000000000..cda708ed7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-24b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_24b_H_ +#define _Node_XY_24b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-24b */ +typedef struct Node_XY_24b { + Offset_B12_t x; + Offset_B12_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_24b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_24b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_24b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-26b.h new file mode 100644 index 000000000..5ba69d1c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-26b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_26b_H_ +#define _Node_XY_26b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B13.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-26b */ +typedef struct Node_XY_26b { + Offset_B13_t x; + Offset_B13_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_26b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_26b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_26b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-28b.h new file mode 100644 index 000000000..a2ae20f98 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-28b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_28b_H_ +#define _Node_XY_28b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-28b */ +typedef struct Node_XY_28b { + Offset_B14_t x; + Offset_B14_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_28b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_28b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_28b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-32b.h new file mode 100644 index 000000000..4b4548ad9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Node-XY-32b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Node_XY_32b_H_ +#define _Node_XY_32b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-32b */ +typedef struct Node_XY_32b { + Offset_B16_t x; + Offset_B16_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_32b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_32b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_32b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLL.h new file mode 100644 index 000000000..78047e26c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLL.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeLL_H_ +#define _NodeAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeLL { + NodeAttributeLL_reserved = 0, + NodeAttributeLL_stopLine = 1, + NodeAttributeLL_roundedCapStyleA = 2, + NodeAttributeLL_roundedCapStyleB = 3, + NodeAttributeLL_mergePoint = 4, + NodeAttributeLL_divergePoint = 5, + NodeAttributeLL_downstreamStopLine = 6, + NodeAttributeLL_downstreamStartNode = 7, + NodeAttributeLL_closedToTraffic = 8, + NodeAttributeLL_safeIsland = 9, + NodeAttributeLL_curbPresentAtStepOff = 10, + NodeAttributeLL_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeLL; + +/* NodeAttributeLL */ +typedef long NodeAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1; +asn_struct_free_f NodeAttributeLL_free; +asn_struct_print_f NodeAttributeLL_print; +asn_constr_check_f NodeAttributeLL_constraint; +ber_type_decoder_f NodeAttributeLL_decode_ber; +der_type_encoder_f NodeAttributeLL_encode_der; +xer_type_decoder_f NodeAttributeLL_decode_xer; +xer_type_encoder_f NodeAttributeLL_encode_xer; +oer_type_decoder_f NodeAttributeLL_decode_oer; +oer_type_encoder_f NodeAttributeLL_encode_oer; +per_type_decoder_f NodeAttributeLL_decode_uper; +per_type_encoder_f NodeAttributeLL_encode_uper; +per_type_decoder_f NodeAttributeLL_decode_aper; +per_type_encoder_f NodeAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLLList.h new file mode 100644 index 000000000..853fe4362 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeLLList_H_ +#define _NodeAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeLLList */ +typedef struct NodeAttributeLLList { + A_SEQUENCE_OF(NodeAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetLL.h new file mode 100644 index 000000000..9a34a63ac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetLL.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeSetLL_H_ +#define _NodeAttributeSetLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeLLList; +struct SegmentAttributeLLList; +struct LaneDataAttributeList; +struct Reg_NodeAttributeSetLL; + +/* NodeAttributeSetLL */ +typedef struct NodeAttributeSetLL { + struct NodeAttributeLLList *localNode; /* OPTIONAL */ + struct SegmentAttributeLLList *disabled; /* OPTIONAL */ + struct SegmentAttributeLLList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetLL__regional { + A_SEQUENCE_OF(struct Reg_NodeAttributeSetLL) 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; +} NodeAttributeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeLLList.h" +#include "SegmentAttributeLLList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" + +#endif /* _NodeAttributeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetXY.h new file mode 100644 index 000000000..6bf8c0a9b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeSetXY.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeSetXY_H_ +#define _NodeAttributeSetXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeXYList; +struct SegmentAttributeXYList; +struct LaneDataAttributeList; +struct Reg_NodeAttributeSetXY; + +/* NodeAttributeSetXY */ +typedef struct NodeAttributeSetXY { + struct NodeAttributeXYList *localNode; /* OPTIONAL */ + struct SegmentAttributeXYList *disabled; /* OPTIONAL */ + struct SegmentAttributeXYList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetXY__regional { + A_SEQUENCE_OF(struct Reg_NodeAttributeSetXY) 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; +} NodeAttributeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeXYList.h" +#include "SegmentAttributeXYList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" + +#endif /* _NodeAttributeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXY.h new file mode 100644 index 000000000..8700f6028 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXY.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeXY_H_ +#define _NodeAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeXY { + NodeAttributeXY_reserved = 0, + NodeAttributeXY_stopLine = 1, + NodeAttributeXY_roundedCapStyleA = 2, + NodeAttributeXY_roundedCapStyleB = 3, + NodeAttributeXY_mergePoint = 4, + NodeAttributeXY_divergePoint = 5, + NodeAttributeXY_downstreamStopLine = 6, + NodeAttributeXY_downstreamStartNode = 7, + NodeAttributeXY_closedToTraffic = 8, + NodeAttributeXY_safeIsland = 9, + NodeAttributeXY_curbPresentAtStepOff = 10, + NodeAttributeXY_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeXY; + +/* NodeAttributeXY */ +typedef long NodeAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1; +asn_struct_free_f NodeAttributeXY_free; +asn_struct_print_f NodeAttributeXY_print; +asn_constr_check_f NodeAttributeXY_constraint; +ber_type_decoder_f NodeAttributeXY_decode_ber; +der_type_encoder_f NodeAttributeXY_encode_der; +xer_type_decoder_f NodeAttributeXY_decode_xer; +xer_type_encoder_f NodeAttributeXY_encode_xer; +oer_type_decoder_f NodeAttributeXY_decode_oer; +oer_type_encoder_f NodeAttributeXY_encode_oer; +per_type_decoder_f NodeAttributeXY_decode_uper; +per_type_encoder_f NodeAttributeXY_encode_uper; +per_type_decoder_f NodeAttributeXY_decode_aper; +per_type_encoder_f NodeAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXYList.h new file mode 100644 index 000000000..3f20b00a7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeAttributeXYList_H_ +#define _NodeAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeXYList */ +typedef struct NodeAttributeXYList { + A_SEQUENCE_OF(NodeAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeLL.h new file mode 100644 index 000000000..7b935c04c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeLL.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeLL_H_ +#define _NodeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointLL.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetLL; + +/* NodeLL */ +typedef struct NodeLL { + NodeOffsetPointLL_t delta; + struct NodeAttributeSetLL *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeLL_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeSetLL.h" + +#endif /* _NodeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListLL.h new file mode 100644 index 000000000..72fd0510a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListLL.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeListLL_H_ +#define _NodeListLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetLL.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListLL_PR { + NodeListLL_PR_NOTHING, /* No components present */ + NodeListLL_PR_nodes + /* Extensions may appear below */ + +} NodeListLL_PR; + +/* NodeListLL */ +typedef struct NodeListLL { + NodeListLL_PR present; + union NodeListLL_u { + NodeSetLL_t nodes; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeListLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListXY.h new file mode 100644 index 000000000..862ebe8d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeListXY.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeListXY_H_ +#define _NodeListXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetXY.h" +#include "ComputedLane.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListXY_PR { + NodeListXY_PR_NOTHING, /* No components present */ + NodeListXY_PR_nodes, + NodeListXY_PR_computed + /* Extensions may appear below */ + +} NodeListXY_PR; + +/* NodeListXY */ +typedef struct NodeListXY { + NodeListXY_PR present; + union NodeListXY_u { + NodeSetXY_t nodes; + ComputedLane_t computed; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListXY_1[2]; +extern asn_per_constraints_t asn_PER_type_NodeListXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointLL.h new file mode 100644 index 000000000..925232db3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointLL.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeOffsetPointLL_H_ +#define _NodeOffsetPointLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LL-24B.h" +#include "Node-LL-28B.h" +#include "Node-LL-32B.h" +#include "Node-LL-36B.h" +#include "Node-LL-44B.h" +#include "Node-LL-48B.h" +#include "Node-LLmD-64b.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointLL_PR { + NodeOffsetPointLL_PR_NOTHING, /* No components present */ + NodeOffsetPointLL_PR_node_LL1, + NodeOffsetPointLL_PR_node_LL2, + NodeOffsetPointLL_PR_node_LL3, + NodeOffsetPointLL_PR_node_LL4, + NodeOffsetPointLL_PR_node_LL5, + NodeOffsetPointLL_PR_node_LL6, + NodeOffsetPointLL_PR_node_LatLon, + NodeOffsetPointLL_PR_regional +} NodeOffsetPointLL_PR; + +/* NodeOffsetPointLL */ +typedef struct NodeOffsetPointLL { + NodeOffsetPointLL_PR present; + union NodeOffsetPointLL_u { + Node_LL_24B_t node_LL1; + Node_LL_28B_t node_LL2; + Node_LL_32B_t node_LL3; + Node_LL_36B_t node_LL4; + Node_LL_44B_t node_LL5; + Node_LL_48B_t node_LL6; + Node_LLmD_64b_t node_LatLon; + Reg_NodeOffsetPointLL_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY-addGrpB.h new file mode 100644 index 000000000..a8b9b8978 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY-addGrpB.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeOffsetPointXY_addGrpB_H_ +#define _NodeOffsetPointXY_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LLdms-48b.h" +#include "Node-LLdms-80b.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointXY_addGrpB_PR { + NodeOffsetPointXY_addGrpB_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_addGrpB_PR_posA, + NodeOffsetPointXY_addGrpB_PR_posB + /* Extensions may appear below */ + +} NodeOffsetPointXY_addGrpB_PR; + +/* NodeOffsetPointXY-addGrpB */ +typedef struct NodeOffsetPointXY_addGrpB { + NodeOffsetPointXY_addGrpB_PR present; + union NodeOffsetPointXY_addGrpB_u { + Node_LLdms_48b_t posA; + Node_LLdms_80b_t posB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[2]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointXY_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY.h new file mode 100644 index 000000000..9bef93794 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeOffsetPointXY.h @@ -0,0 +1,85 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeOffsetPointXY_H_ +#define _NodeOffsetPointXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-XY-20b.h" +#include "Node-XY-22b.h" +#include "Node-XY-24b.h" +#include "Node-XY-26b.h" +#include "Node-XY-28b.h" +#include "Node-XY-32b.h" +#include "Node-LLmD-64b.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_NodeOffsetPointXY; + +/* Dependencies */ +typedef enum NodeOffsetPointXY_PR { + NodeOffsetPointXY_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_PR_node_XY1, + NodeOffsetPointXY_PR_node_XY2, + NodeOffsetPointXY_PR_node_XY3, + NodeOffsetPointXY_PR_node_XY4, + NodeOffsetPointXY_PR_node_XY5, + NodeOffsetPointXY_PR_node_XY6, + NodeOffsetPointXY_PR_node_LatLon, + NodeOffsetPointXY_PR_regional +} NodeOffsetPointXY_PR; + +/* NodeOffsetPointXY */ +typedef struct NodeOffsetPointXY { + NodeOffsetPointXY_PR present; + union NodeOffsetPointXY_u { + Node_XY_20b_t node_XY1; + Node_XY_22b_t node_XY2; + Node_XY_24b_t node_XY3; + Node_XY_26b_t node_XY4; + Node_XY_28b_t node_XY5; + Node_XY_32b_t node_XY6; + Node_LLmD_64b_t node_LatLon; + // Reg_NodeOffsetPointXY_t regional; + + struct NodeOffsetPointXY__regional { + A_SEQUENCE_OF(struct Reg_NodeOffsetPointXY) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *regional; + + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _NodeOffsetPointXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetLL.h new file mode 100644 index 000000000..8c2f7153b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetLL.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeSetLL_H_ +#define _NodeSetLL_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 NodeLL; + +/* NodeSetLL */ +typedef struct NodeSetLL { + A_SEQUENCE_OF(struct NodeLL) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetLL; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeLL.h" + +#endif /* _NodeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetXY.h new file mode 100644 index 000000000..d20f27978 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeSetXY.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeSetXY_H_ +#define _NodeSetXY_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 NodeXY; + +/* NodeSetXY */ +typedef struct NodeSetXY { + A_SEQUENCE_OF(struct NodeXY) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetXY; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetXY_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeXY.h" + +#endif /* _NodeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeXY.h new file mode 100644 index 000000000..8b861a7f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NodeXY.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NodeXY_H_ +#define _NodeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetXY; + +/* NodeXY */ +typedef struct NodeXY { + NodeOffsetPointXY_t delta; + struct NodeAttributeSetXY *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeXY_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeSetXY.h" + +#endif /* _NodeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumberOfParticipantsInCluster.h new file mode 100644 index 000000000..1a8dc200a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumberOfParticipantsInCluster.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _NumberOfParticipantsInCluster_H_ +#define _NumberOfParticipantsInCluster_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NumberOfParticipantsInCluster { + NumberOfParticipantsInCluster_unavailable = 0, + NumberOfParticipantsInCluster_small = 1, + NumberOfParticipantsInCluster_medium = 2, + NumberOfParticipantsInCluster_large = 3 + /* + * Enumeration is extensible + */ +} e_NumberOfParticipantsInCluster; + +/* NumberOfParticipantsInCluster */ +typedef long NumberOfParticipantsInCluster_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; +extern const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1; +asn_struct_free_f NumberOfParticipantsInCluster_free; +asn_struct_print_f NumberOfParticipantsInCluster_print; +asn_constr_check_f NumberOfParticipantsInCluster_constraint; +ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; +der_type_encoder_f NumberOfParticipantsInCluster_encode_der; +xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; +xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; +oer_type_decoder_f NumberOfParticipantsInCluster_decode_oer; +oer_type_encoder_f NumberOfParticipantsInCluster_encode_oer; +per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; +per_type_decoder_f NumberOfParticipantsInCluster_decode_aper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NumberOfParticipantsInCluster_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OBJECT_IDENTIFIER.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OBJECT_IDENTIFIER.h new file mode 100644 index 000000000..f878055c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OBJECT_IDENTIFIER.h @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OBJECT_IDENTIFIER_H_ +#define _OBJECT_IDENTIFIER_H_ + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef uint32_t asn_oid_arc_t; +#define ASN_OID_ARC_MAX (~((asn_oid_arc_t)0)) + +typedef ASN__PRIMITIVE_TYPE_t OBJECT_IDENTIFIER_t; + +extern asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER; +extern asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER; + +ssize_t OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, + asn_app_consume_bytes_f *cb, + void *app_key); + +#define OBJECT_IDENTIFIER_free ASN__PRIMITIVE_TYPE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f OBJECT_IDENTIFIER_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define OBJECT_IDENTIFIER_compare OCTET_STRING_compare + +asn_constr_check_f OBJECT_IDENTIFIER_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_ber ber_decode_primitive +#define OBJECT_IDENTIFIER_encode_der der_encode_primitive +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f OBJECT_IDENTIFIER_decode_xer; +xer_type_encoder_f OBJECT_IDENTIFIER_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f OBJECT_IDENTIFIER_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_oer oer_decode_primitive +#define OBJECT_IDENTIFIER_encode_oer oer_encode_primitive +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_uper OCTET_STRING_decode_uper +#define OBJECT_IDENTIFIER_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define OBJECT_IDENTIFIER_decode_aper OCTET_STRING_decode_aper +#define OBJECT_IDENTIFIER_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f OBJECT_IDENTIFIER_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +/********************************** + * Some handy conversion routines * + **********************************/ + +/* + * This function fills an (arcs) array with OBJECT IDENTIFIER arcs + * up to specified (arc_slots) elements. + * + * EXAMPLE: + * void print_arcs(OBJECT_IDENTIFIER_t *oid) { + * asn_oid_arc_t fixed_arcs[10]; // Try with fixed space first + * asn_oid_arc_t *arcs = fixed_arcs; + * size_t arc_slots = sizeof(fixed_arcs)/sizeof(fixed_arcs[0]); // 10 + * ssize_t count; // Real number of arcs. + * int i; + * + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * // If necessary, reallocate arcs array and try again. + * if(count > arc_slots) { + * arc_slots = count; + * arcs = malloc(sizeof(asn_oid_arc_t) * arc_slots); + * if(!arcs) return; + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * assert(count == arc_slots); + * } + * + * // Print the contents of the arcs array. + * for(i = 0; i < count; i++) + * printf("%"PRIu32"\n", arcs[i]); + * + * // Avoid memory leak. + * if(arcs != fixed_arcs) free(arcs); + * } + * + * RETURN VALUES: + * -1/EINVAL: Invalid arguments (oid is missing) + * -1/ERANGE: One or more arcs have value out of array cell type range. + * >=0: Number of arcs contained in the OBJECT IDENTIFIER + * + * WARNING: The function always returns the actual number of arcs, + * even if there is no sufficient (arc_slots) provided. + */ +ssize_t OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *oid, + asn_oid_arc_t *arcs, size_t arc_slots); + +/* + * This functions initializes the OBJECT IDENTIFIER object with + * the given set of arcs. + * The minimum of two arcs must be present; some restrictions apply. + * RETURN VALUES: + * -1/EINVAL: Invalid arguments + * -1/ERANGE: The first two arcs do not conform to ASN.1 restrictions. + * -1/ENOMEM: Memory allocation failed + * 0: The object was initialized with new arcs. + */ +int OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, + const asn_oid_arc_t *arcs, size_t arcs_count); + + +/* + * Parse the OBJECT IDENTIFIER textual representation ("1.3.6.1.4.1.9363"). + * No arc can exceed the (0..ASN_OID_ARC_MAX, which is the same as UINT32_MAX). + * This function is not specific to OBJECT IDENTIFIER, it may be used to parse + * the RELATIVE-OID data, or any other data consisting of dot-separated + * series of numeric values. + * + * If (oid_txt_length == -1), the strlen() will be invoked to determine the + * size of the (oid_text) string. + * + * After return, the optional (opt_oid_text_end) is set to the character after + * the last parsed one. (opt_oid_text_end) is never less than (oid_text). + * + * RETURN VALUES: + * -1: Parse error. + * >= 0: Number of arcs contained in the OBJECT IDENTIFIER. + * + * WARNING: The function always returns the real number of arcs, + * even if there is no sufficient (arc_slots) provided. + * This is useful for (arc_slots) value estimation. + */ +ssize_t OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, + ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end); + +/* + * Internal functions. + * Used by RELATIVE-OID implementation in particular. + */ + +/* + * Retrieve a single arc of size from the (arcbuf) buffer. + * RETURN VALUES: + * -1: Failed to retrieve the value from the (arcbuf). + * >0: Number of bytes consumed from the (arcbuf), <= (arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, + size_t arcbuf_len, + asn_oid_arc_t *ret_value); + +/* + * Write the unterminated arc value into the (arcbuf) which has the size at + * least (arcbuf_len). + * RETURN VALUES: + * -1: (arcbuf_len) size is not sufficient to write the value. + * : Number of bytes appended to the arcbuf (<= arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t arc_value); + +#ifdef __cplusplus +} +#endif + +#endif /* _OBJECT_IDENTIFIER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OCTET_STRING.h new file mode 100644 index 000000000..b1ace1409 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OCTET_STRING.h @@ -0,0 +1,165 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OCTET_STRING_H_ +#define _OCTET_STRING_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct OCTET_STRING { + uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ + size_t size; /* Size of the buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} OCTET_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; +extern asn_TYPE_operation_t asn_OP_OCTET_STRING; + +asn_struct_free_f OCTET_STRING_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f OCTET_STRING_print; +asn_struct_print_f OCTET_STRING_print_utf8; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f OCTET_STRING_compare; + +#define OCTET_STRING_constraint asn_generic_no_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f OCTET_STRING_decode_ber; +der_type_encoder_f OCTET_STRING_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ +xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ +xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ +xer_type_encoder_f OCTET_STRING_encode_xer; +xer_type_encoder_f OCTET_STRING_encode_xer_utf8; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f OCTET_STRING_encode_jer; +jer_type_encoder_f OCTET_STRING_encode_jer_utf8; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f OCTET_STRING_decode_oer; +oer_type_encoder_f OCTET_STRING_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f OCTET_STRING_decode_uper; +per_type_encoder_f OCTET_STRING_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f OCTET_STRING_decode_aper; +per_type_encoder_f OCTET_STRING_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f OCTET_STRING_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int OCTET_STRING_per_get_characters( + asn_per_data_t *po, + uint8_t *buf, + size_t units, + unsigned int bpc, + unsigned int unit_bits, + long lb, + long ub, + const asn_per_constraints_t *pc); + +int OCTET_STRING_per_put_characters( + asn_per_outp_t *po, + const uint8_t *buf, + size_t units, + unsigned int bpc, + unsigned int unit_bits, + long lb, + long ub, + const asn_per_constraints_t *pc); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +/****************************** + * Handy conversion routines. * + ******************************/ + +/* + * This function clears the previous value of the OCTET STRING (if any) + * and then allocates a new memory with the specified content (str/size). + * If size = -1, the size of the original string will be determined + * using strlen(str). + * If str equals to NULL, the function will silently clear the + * current contents of the OCTET STRING. + * Returns 0 if it was possible to perform operation, -1 otherwise. + */ +int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); + +/* Handy conversion from the C string into the OCTET STRING. */ +#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) + +/* + * Allocate and fill the new OCTET STRING and return a pointer to the newly + * allocated object. NULL is permitted in str: the function will just allocate + * empty OCTET STRING. + */ +OCTET_STRING_t *OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, + const char *str, int size); + +/**************************** + * Internally useful stuff. * + ****************************/ + +typedef struct asn_OCTET_STRING_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the structure */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + enum asn_OS_Subvariant { + ASN_OSUBV_ANY, /* The open type (ANY) */ + ASN_OSUBV_BIT, /* BIT STRING */ + ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ + ASN_OSUBV_U16, /* 16-bit character (BMPString) */ + ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ + } subvariant; +} asn_OCTET_STRING_specifics_t; + +extern asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs; + +size_t OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *, const asn_encoding_constraints_t *, + size_t max_length); + +#if !defined(ASN_DISABLE_BER_SUPPORT) +struct _stack_el { + ber_tlv_len_t left; /* What's left to read (or -1) */ + ber_tlv_len_t got; /* What was actually processed */ + unsigned cont_level; /* Depth of subcontainment */ + int want_nulls; /* Want null "end of content" octets? */ + int bits_chopped; /* Flag in BIT STRING mode */ + ber_tlv_tag_t tag; /* For debugging purposes */ + struct _stack_el *prev; + struct _stack_el *next; +}; +struct _stack { + struct _stack_el *tail; + struct _stack_el *cur_ptr; +}; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OPEN_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OPEN_TYPE.h new file mode 100644 index 000000000..5e979773e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OPEN_TYPE.h @@ -0,0 +1,117 @@ +/*- + * Copyright (c) 2017-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_OPEN_TYPE_H +#define ASN_OPEN_TYPE_H + +#include +///////////#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Decode an Open Type which is potentially constraiend + * by the other members of the parent structure. + */ + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#define OPEN_TYPE_free CHOICE_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define OPEN_TYPE_print CHOICE_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define OPEN_TYPE_compare CHOICE_compare + +#define OPEN_TYPE_constraint CHOICE_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_ber_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); +#define OPEN_TYPE_decode_ber NULL +#define OPEN_TYPE_encode_der CHOICE_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_xer_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); +#define OPEN_TYPE_decode_xer NULL +#define OPEN_TYPE_encode_xer CHOICE_encode_xer +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define OPEN_TYPE_encode_jer CHOICE_encode_jer +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_oer_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + asn_TYPE_member_t *element, const void *ptr, + size_t size); +#define OPEN_TYPE_decode_oer NULL +#define OPEN_TYPE_encode_oer CHOICE_encode_oer +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_uper_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); +#define OPEN_TYPE_decode_uper NULL +asn_enc_rval_t OPEN_TYPE_encode_uper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +asn_dec_rval_t OPEN_TYPE_aper_get( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); +#define OPEN_TYPE_decode_aper NULL +asn_enc_rval_t OPEN_TYPE_encode_aper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +int OPEN_TYPE_aper_is_unknown_type( + const asn_TYPE_descriptor_t *td, + void *sptr, + const asn_TYPE_member_t *elm); + +asn_dec_rval_t OPEN_TYPE_aper_unknown_type_discard_bytes( + asn_per_data_t *pd); +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_OPEN_TYPE; + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_OPEN_TYPE_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectCount.h new file mode 100644 index 000000000..06b418f96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectCount.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ObjectCount_H_ +#define _ObjectCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectCount */ +typedef long ObjectCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; +asn_struct_free_f ObjectCount_free; +asn_struct_print_f ObjectCount_print; +asn_constr_check_f ObjectCount_constraint; +ber_type_decoder_f ObjectCount_decode_ber; +der_type_encoder_f ObjectCount_encode_der; +xer_type_decoder_f ObjectCount_decode_xer; +xer_type_encoder_f ObjectCount_encode_xer; +oer_type_decoder_f ObjectCount_decode_oer; +oer_type_encoder_f ObjectCount_encode_oer; +per_type_decoder_f ObjectCount_decode_uper; +per_type_encoder_f ObjectCount_encode_uper; +per_type_decoder_f ObjectCount_decode_aper; +per_type_encoder_f ObjectCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDescriptor.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDescriptor.h new file mode 100644 index 000000000..852c45d03 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDescriptor.h @@ -0,0 +1,54 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ObjectDescriptor_H_ +#define _ObjectDescriptor_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef GraphicString_t ObjectDescriptor_t; /* Implemented via GraphicString */ + +extern asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor; +extern asn_TYPE_operation_t asn_OP_ObjectDescriptor; + +#define ObjectDescriptor_free OCTET_STRING_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define ObjectDescriptor_print OCTET_STRING_print_utf8 +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +#define ObjectDescriptor_constraint asn_generic_unknown_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define ObjectDescriptor_decode_ber OCTET_STRING_decode_ber +#define ObjectDescriptor_encode_der OCTET_STRING_encode_der +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define ObjectDescriptor_decode_xer OCTET_STRING_decode_xer_utf8 +#define ObjectDescriptor_encode_xer OCTET_STRING_encode_xer_utf8 +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#define ObjectDescriptor_encode_jer OCTET_STRING_encode_jer_utf8 +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define ObjectDescriptor_decode_uper OCTET_STRING_decode_uper +#define ObjectDescriptor_encode_uper OCTET_STRING_encode_uper +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define ObjectDescriptor_decode_aper OCTET_STRING_decode_aper +#define ObjectDescriptor_encode_aper OCTET_STRING_encode_aper +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectDescriptor_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDistance.h new file mode 100644 index 000000000..db97608e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectDistance.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectDistance_H_ +#define _ObjectDistance_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectDistance */ +typedef long ObjectDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectDistance; +asn_struct_free_f ObjectDistance_free; +asn_struct_print_f ObjectDistance_print; +asn_constr_check_f ObjectDistance_constraint; +ber_type_decoder_f ObjectDistance_decode_ber; +der_type_encoder_f ObjectDistance_encode_der; +xer_type_decoder_f ObjectDistance_decode_xer; +xer_type_encoder_f ObjectDistance_encode_xer; +oer_type_decoder_f ObjectDistance_decode_oer; +oer_type_encoder_f ObjectDistance_encode_oer; +per_type_decoder_f ObjectDistance_decode_uper; +per_type_encoder_f ObjectDistance_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectDistance_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectID.h new file mode 100644 index 000000000..3b0a53b78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectID_H_ +#define _ObjectID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectID */ +typedef long ObjectID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectID; +asn_struct_free_f ObjectID_free; +asn_struct_print_f ObjectID_print; +asn_constr_check_f ObjectID_constraint; +ber_type_decoder_f ObjectID_decode_ber; +der_type_encoder_f ObjectID_encode_der; +xer_type_decoder_f ObjectID_decode_xer; +xer_type_encoder_f ObjectID_encode_xer; +oer_type_decoder_f ObjectID_decode_oer; +oer_type_encoder_f ObjectID_encode_oer; +per_type_decoder_f ObjectID_decode_uper; +per_type_encoder_f ObjectID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectID_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectType.h new file mode 100644 index 000000000..52837430b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObjectType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectType_H_ +#define _ObjectType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ObjectType { + ObjectType_unknown = 0, + ObjectType_vehicle = 1, + ObjectType_vru = 2, + ObjectType_animal = 3 + /* + * Enumeration is extensible + */ +} e_ObjectType; + +/* ObjectType */ +typedef long ObjectType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectType; +extern const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1; +asn_struct_free_f ObjectType_free; +asn_struct_print_f ObjectType_print; +asn_constr_check_f ObjectType_constraint; +ber_type_decoder_f ObjectType_decode_ber; +der_type_encoder_f ObjectType_encode_der; +xer_type_decoder_f ObjectType_decode_xer; +xer_type_encoder_f ObjectType_encode_xer; +oer_type_decoder_f ObjectType_decode_oer; +oer_type_encoder_f ObjectType_encode_oer; +per_type_decoder_f ObjectType_decode_uper; +per_type_encoder_f ObjectType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectType_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDetection.h new file mode 100644 index 000000000..325ba8eb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDetection.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ObstacleDetection_H_ +#define _ObstacleDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ObstacleDistance.h" +#include "ObstacleDirection.h" +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "DDateTime.h" +#include "VerticalAccelerationThreshold.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDetection */ +typedef struct ObstacleDetection { + ObstacleDistance_t obDist; + ObstacleDirection_t obDirect; + ITIScodes_t *description; /* OPTIONAL */ + GenericLocations_t *locationDetails; /* OPTIONAL */ + DDateTime_t dateTime; + VerticalAccelerationThreshold_t *vertEvent; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleDetection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDetection; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleDetection_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDirection.h new file mode 100644 index 000000000..f7bf28af8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDirection.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ObstacleDirection_H_ +#define _ObstacleDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_Angle.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDirection */ +typedef Common_Angle_t ObstacleDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; +asn_struct_free_f ObstacleDirection_free; +asn_struct_print_f ObstacleDirection_print; +asn_constr_check_f ObstacleDirection_constraint; +ber_type_decoder_f ObstacleDirection_decode_ber; +der_type_encoder_f ObstacleDirection_encode_der; +xer_type_decoder_f ObstacleDirection_decode_xer; +xer_type_encoder_f ObstacleDirection_encode_xer; +oer_type_decoder_f ObstacleDirection_decode_oer; +oer_type_encoder_f ObstacleDirection_encode_oer; +per_type_decoder_f ObstacleDirection_decode_uper; +per_type_encoder_f ObstacleDirection_encode_uper; +per_type_decoder_f ObstacleDirection_decode_aper; +per_type_encoder_f ObstacleDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDistance.h new file mode 100644 index 000000000..85fa24c62 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ObstacleDistance_H_ +#define _ObstacleDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDistance */ +typedef long ObstacleDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; +asn_struct_free_f ObstacleDistance_free; +asn_struct_print_f ObstacleDistance_print; +asn_constr_check_f ObstacleDistance_constraint; +ber_type_decoder_f ObstacleDistance_decode_ber; +der_type_encoder_f ObstacleDistance_encode_der; +xer_type_decoder_f ObstacleDistance_decode_xer; +xer_type_encoder_f ObstacleDistance_encode_xer; +oer_type_decoder_f ObstacleDistance_decode_oer; +oer_type_encoder_f ObstacleDistance_encode_oer; +per_type_decoder_f ObstacleDistance_decode_uper; +per_type_encoder_f ObstacleDistance_encode_uper; +per_type_decoder_f ObstacleDistance_decode_aper; +per_type_encoder_f ObstacleDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSize.h new file mode 100644 index 000000000..12206d92c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSize.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObstacleSize_H_ +#define _ObstacleSize_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValue.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleSize */ +typedef struct ObstacleSize { + SizeValue_t width; + SizeValue_t length; + SizeValue_t *height /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleSize; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleSize_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleSize_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSizeConfidence.h new file mode 100644 index 000000000..1ef36fbc5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ObstacleSizeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObstacleSizeConfidence_H_ +#define _ObstacleSizeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValueConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleSizeConfidence */ +typedef struct ObstacleSizeConfidence { + SizeValueConfidence_t widthConfidence; + SizeValueConfidence_t lengthConfidence; + SizeValueConfidence_t *heightConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleSizeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleSizeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B09.h new file mode 100644 index 000000000..1fd4cfa19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B09.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B09_H_ +#define _Offset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B09 */ +typedef long Offset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B09; +asn_struct_free_f Offset_B09_free; +asn_struct_print_f Offset_B09_print; +asn_constr_check_f Offset_B09_constraint; +ber_type_decoder_f Offset_B09_decode_ber; +der_type_encoder_f Offset_B09_encode_der; +xer_type_decoder_f Offset_B09_decode_xer; +xer_type_encoder_f Offset_B09_encode_xer; +oer_type_decoder_f Offset_B09_decode_oer; +oer_type_encoder_f Offset_B09_encode_oer; +per_type_decoder_f Offset_B09_decode_uper; +per_type_encoder_f Offset_B09_encode_uper; +per_type_decoder_f Offset_B09_decode_aper; +per_type_encoder_f Offset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B10.h new file mode 100644 index 000000000..8b828ce2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B10.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B10_H_ +#define _Offset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B10 */ +typedef long Offset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; +asn_struct_free_f Offset_B10_free; +asn_struct_print_f Offset_B10_print; +asn_constr_check_f Offset_B10_constraint; +ber_type_decoder_f Offset_B10_decode_ber; +der_type_encoder_f Offset_B10_encode_der; +xer_type_decoder_f Offset_B10_decode_xer; +xer_type_encoder_f Offset_B10_encode_xer; +oer_type_decoder_f Offset_B10_decode_oer; +oer_type_encoder_f Offset_B10_encode_oer; +per_type_decoder_f Offset_B10_decode_uper; +per_type_encoder_f Offset_B10_encode_uper; +per_type_decoder_f Offset_B10_decode_aper; +per_type_encoder_f Offset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B11.h new file mode 100644 index 000000000..8e805dc13 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B11.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B11_H_ +#define _Offset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B11 */ +typedef long Offset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; +asn_struct_free_f Offset_B11_free; +asn_struct_print_f Offset_B11_print; +asn_constr_check_f Offset_B11_constraint; +ber_type_decoder_f Offset_B11_decode_ber; +der_type_encoder_f Offset_B11_encode_der; +xer_type_decoder_f Offset_B11_decode_xer; +xer_type_encoder_f Offset_B11_encode_xer; +oer_type_decoder_f Offset_B11_decode_oer; +oer_type_encoder_f Offset_B11_encode_oer; +per_type_decoder_f Offset_B11_decode_uper; +per_type_encoder_f Offset_B11_encode_uper; +per_type_decoder_f Offset_B11_decode_aper; +per_type_encoder_f Offset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B12.h new file mode 100644 index 000000000..fa58a1572 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B12_H_ +#define _Offset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B12 */ +typedef long Offset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; +asn_struct_free_f Offset_B12_free; +asn_struct_print_f Offset_B12_print; +asn_constr_check_f Offset_B12_constraint; +ber_type_decoder_f Offset_B12_decode_ber; +der_type_encoder_f Offset_B12_encode_der; +xer_type_decoder_f Offset_B12_decode_xer; +xer_type_encoder_f Offset_B12_encode_xer; +oer_type_decoder_f Offset_B12_decode_oer; +oer_type_encoder_f Offset_B12_encode_oer; +per_type_decoder_f Offset_B12_decode_uper; +per_type_encoder_f Offset_B12_encode_uper; +per_type_decoder_f Offset_B12_decode_aper; +per_type_encoder_f Offset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B13.h new file mode 100644 index 000000000..b2e214ef7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B13.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B13_H_ +#define _Offset_B13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B13 */ +typedef long Offset_B13_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B13_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; +asn_struct_free_f Offset_B13_free; +asn_struct_print_f Offset_B13_print; +asn_constr_check_f Offset_B13_constraint; +ber_type_decoder_f Offset_B13_decode_ber; +der_type_encoder_f Offset_B13_encode_der; +xer_type_decoder_f Offset_B13_decode_xer; +xer_type_encoder_f Offset_B13_encode_xer; +oer_type_decoder_f Offset_B13_decode_oer; +oer_type_encoder_f Offset_B13_encode_oer; +per_type_decoder_f Offset_B13_decode_uper; +per_type_encoder_f Offset_B13_encode_uper; +per_type_decoder_f Offset_B13_decode_aper; +per_type_encoder_f Offset_B13_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B14.h new file mode 100644 index 000000000..9b000f191 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B14.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B14_H_ +#define _Offset_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B14 */ +typedef long Offset_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; +asn_struct_free_f Offset_B14_free; +asn_struct_print_f Offset_B14_print; +asn_constr_check_f Offset_B14_constraint; +ber_type_decoder_f Offset_B14_decode_ber; +der_type_encoder_f Offset_B14_encode_der; +xer_type_decoder_f Offset_B14_decode_xer; +xer_type_encoder_f Offset_B14_encode_xer; +oer_type_decoder_f Offset_B14_decode_oer; +oer_type_encoder_f Offset_B14_encode_oer; +per_type_decoder_f Offset_B14_decode_uper; +per_type_encoder_f Offset_B14_encode_uper; +per_type_decoder_f Offset_B14_decode_aper; +per_type_encoder_f Offset_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B16.h new file mode 100644 index 000000000..f1344730e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Offset-B16.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Offset_B16_H_ +#define _Offset_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B16 */ +typedef long Offset_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; +asn_struct_free_f Offset_B16_free; +asn_struct_print_f Offset_B16_print; +asn_constr_check_f Offset_B16_constraint; +ber_type_decoder_f Offset_B16_decode_ber; +der_type_encoder_f Offset_B16_encode_der; +xer_type_decoder_f Offset_B16_decode_xer; +xer_type_encoder_f Offset_B16_encode_xer; +oer_type_decoder_f Offset_B16_decode_oer; +oer_type_encoder_f Offset_B16_encode_oer; +per_type_decoder_f Offset_B16_decode_uper; +per_type_encoder_f Offset_B16_encode_uper; +per_type_decoder_f Offset_B16_decode_aper; +per_type_encoder_f Offset_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B12.h new file mode 100644 index 000000000..b0334e3b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B12_H_ +#define _OffsetLL_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B12 */ +typedef long OffsetLL_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12; +asn_struct_free_f OffsetLL_B12_free; +asn_struct_print_f OffsetLL_B12_print; +asn_constr_check_f OffsetLL_B12_constraint; +ber_type_decoder_f OffsetLL_B12_decode_ber; +der_type_encoder_f OffsetLL_B12_encode_der; +xer_type_decoder_f OffsetLL_B12_decode_xer; +xer_type_encoder_f OffsetLL_B12_encode_xer; +oer_type_decoder_f OffsetLL_B12_decode_oer; +oer_type_encoder_f OffsetLL_B12_encode_oer; +per_type_decoder_f OffsetLL_B12_decode_uper; +per_type_encoder_f OffsetLL_B12_encode_uper; +per_type_decoder_f OffsetLL_B12_decode_aper; +per_type_encoder_f OffsetLL_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B14.h new file mode 100644 index 000000000..2ac620338 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B14.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B14_H_ +#define _OffsetLL_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B14 */ +typedef long OffsetLL_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14; +asn_struct_free_f OffsetLL_B14_free; +asn_struct_print_f OffsetLL_B14_print; +asn_constr_check_f OffsetLL_B14_constraint; +ber_type_decoder_f OffsetLL_B14_decode_ber; +der_type_encoder_f OffsetLL_B14_encode_der; +xer_type_decoder_f OffsetLL_B14_decode_xer; +xer_type_encoder_f OffsetLL_B14_encode_xer; +oer_type_decoder_f OffsetLL_B14_decode_oer; +oer_type_encoder_f OffsetLL_B14_encode_oer; +per_type_decoder_f OffsetLL_B14_decode_uper; +per_type_encoder_f OffsetLL_B14_encode_uper; +per_type_decoder_f OffsetLL_B14_decode_aper; +per_type_encoder_f OffsetLL_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B16.h new file mode 100644 index 000000000..6f3593d37 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B16.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B16_H_ +#define _OffsetLL_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B16 */ +typedef long OffsetLL_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16; +asn_struct_free_f OffsetLL_B16_free; +asn_struct_print_f OffsetLL_B16_print; +asn_constr_check_f OffsetLL_B16_constraint; +ber_type_decoder_f OffsetLL_B16_decode_ber; +der_type_encoder_f OffsetLL_B16_encode_der; +xer_type_decoder_f OffsetLL_B16_decode_xer; +xer_type_encoder_f OffsetLL_B16_encode_xer; +oer_type_decoder_f OffsetLL_B16_decode_oer; +oer_type_encoder_f OffsetLL_B16_encode_oer; +per_type_decoder_f OffsetLL_B16_decode_uper; +per_type_encoder_f OffsetLL_B16_encode_uper; +per_type_decoder_f OffsetLL_B16_decode_aper; +per_type_encoder_f OffsetLL_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B18.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B18.h new file mode 100644 index 000000000..5364df222 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B18.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B18_H_ +#define _OffsetLL_B18_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B18 */ +typedef long OffsetLL_B18_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18; +asn_struct_free_f OffsetLL_B18_free; +asn_struct_print_f OffsetLL_B18_print; +asn_constr_check_f OffsetLL_B18_constraint; +ber_type_decoder_f OffsetLL_B18_decode_ber; +der_type_encoder_f OffsetLL_B18_encode_der; +xer_type_decoder_f OffsetLL_B18_decode_xer; +xer_type_encoder_f OffsetLL_B18_encode_xer; +oer_type_decoder_f OffsetLL_B18_decode_oer; +oer_type_encoder_f OffsetLL_B18_encode_oer; +per_type_decoder_f OffsetLL_B18_decode_uper; +per_type_encoder_f OffsetLL_B18_encode_uper; +per_type_decoder_f OffsetLL_B18_decode_aper; +per_type_encoder_f OffsetLL_B18_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B18_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B22.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B22.h new file mode 100644 index 000000000..33f18dbcf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B22.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B22_H_ +#define _OffsetLL_B22_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B22 */ +typedef long OffsetLL_B22_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22; +asn_struct_free_f OffsetLL_B22_free; +asn_struct_print_f OffsetLL_B22_print; +asn_constr_check_f OffsetLL_B22_constraint; +ber_type_decoder_f OffsetLL_B22_decode_ber; +der_type_encoder_f OffsetLL_B22_encode_der; +xer_type_decoder_f OffsetLL_B22_decode_xer; +xer_type_encoder_f OffsetLL_B22_encode_xer; +oer_type_decoder_f OffsetLL_B22_decode_oer; +oer_type_encoder_f OffsetLL_B22_encode_oer; +per_type_decoder_f OffsetLL_B22_decode_uper; +per_type_encoder_f OffsetLL_B22_encode_uper; +per_type_decoder_f OffsetLL_B22_decode_aper; +per_type_encoder_f OffsetLL_B22_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B22_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B24.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B24.h new file mode 100644 index 000000000..5858ff9cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetLL-B24.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetLL_B24_H_ +#define _OffsetLL_B24_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B24 */ +typedef long OffsetLL_B24_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24; +asn_struct_free_f OffsetLL_B24_free; +asn_struct_print_f OffsetLL_B24_print; +asn_constr_check_f OffsetLL_B24_constraint; +ber_type_decoder_f OffsetLL_B24_decode_ber; +der_type_encoder_f OffsetLL_B24_encode_der; +xer_type_decoder_f OffsetLL_B24_decode_xer; +xer_type_encoder_f OffsetLL_B24_encode_xer; +oer_type_decoder_f OffsetLL_B24_decode_oer; +oer_type_encoder_f OffsetLL_B24_encode_oer; +per_type_decoder_f OffsetLL_B24_decode_uper; +per_type_encoder_f OffsetLL_B24_encode_uper; +per_type_decoder_f OffsetLL_B24_decode_aper; +per_type_encoder_f OffsetLL_B24_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B24_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetPoint.h new file mode 100644 index 000000000..d46ced7dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetPoint.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetPoint_H_ +#define _OffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetPoint */ +typedef struct OffsetPoint { + long deltax; + long deltay; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OffsetPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_OffsetPoint_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetSystem.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetSystem.h new file mode 100644 index 000000000..a23e021a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OffsetSystem.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OffsetSystem_H_ +#define _OffsetSystem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "NodeListXY.h" +#include "NodeListLL.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum OffsetSystem__offset_PR { + OffsetSystem__offset_PR_NOTHING, /* No components present */ + OffsetSystem__offset_PR_xy, + OffsetSystem__offset_PR_ll +} OffsetSystem__offset_PR; + +/* OffsetSystem */ +typedef struct OffsetSystem { + Zoom_t *scale; /* OPTIONAL */ + struct OffsetSystem__offset { + OffsetSystem__offset_PR present; + union OffsetSystem__offset_u { + NodeListXY_t xy; + NodeListLL_t ll; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offset; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OffsetSystem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OffsetSystem; +extern asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1; +extern asn_TYPE_member_t asn_MBR_OffsetSystem_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetSystem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OverlayLaneList.h new file mode 100644 index 000000000..5ca16f612 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/OverlayLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _OverlayLaneList_H_ +#define _OverlayLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OverlayLaneList */ +typedef struct OverlayLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OverlayLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; +extern asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_OverlayLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _OverlayLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartII-Id.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartII-Id.h new file mode 100644 index 000000000..212c80708 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartII-Id.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PartII_Id_H_ +#define _PartII_Id_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PartII-Id */ +typedef long PartII_Id_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PartII_Id_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PartII_Id; +asn_struct_free_f PartII_Id_free; +asn_struct_print_f PartII_Id_print; +asn_constr_check_f PartII_Id_constraint; +ber_type_decoder_f PartII_Id_decode_ber; +der_type_encoder_f PartII_Id_encode_der; +xer_type_decoder_f PartII_Id_decode_xer; +xer_type_encoder_f PartII_Id_encode_xer; +oer_type_decoder_f PartII_Id_decode_oer; +oer_type_encoder_f PartII_Id_encode_oer; +per_type_decoder_f PartII_Id_decode_uper; +per_type_encoder_f PartII_Id_encode_uper; +per_type_decoder_f PartII_Id_decode_aper; +per_type_encoder_f PartII_Id_encode_aper; +#define PartII_Id_vehicleSafetyExt ((PartII_Id_t)0) +#define PartII_Id_specialVehicleExt ((PartII_Id_t)1) +#define PartII_Id_supplementalVehicleExt ((PartII_Id_t)2) + +#ifdef __cplusplus +} +#endif + +#endif /* _PartII_Id_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartIIcontent.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartIIcontent.h new file mode 100644 index 000000000..2c61e5bc9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PartIIcontent.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PartIIcontent_H_ +#define _PartIIcontent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PartII-Id.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "VehicleSafetyExtensions.h" +#include "SpecialVehicleExtensions.h" +#include "SupplementalVehicleExtensions.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BSMpartIIExtension__partII_Value_PR { + BSMpartIIExtension__partII_Value_PR_NOTHING, /* No components present */ + BSMpartIIExtension__partII_Value_PR_VehicleSafetyExtensions, + BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions, + BSMpartIIExtension__partII_Value_PR_SupplementalVehicleExtensions +} BSMpartIIExtension__partII_Value_PR; + +/* PartIIcontent */ +typedef struct BSMpartIIExtension { + PartII_Id_t partII_Id; + struct BSMpartIIExtension__partII_Value { + BSMpartIIExtension__partII_Value_PR present; + union BSMpartIIExtension__partII_Value_u { + VehicleSafetyExtensions_t VehicleSafetyExtensions; + SpecialVehicleExtensions_t SpecialVehicleExtensions; + SupplementalVehicleExtensions_t SupplementalVehicleExtensions; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } partII_Value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMpartIIExtension_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PartIIcontent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistory.h new file mode 100644 index 000000000..3a0ab5c85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistory.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PathHistory_H_ +#define _PathHistory_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "PathHistoryPointList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; + +/* PathHistory */ +typedef struct PathHistory { + struct FullPositionVector *initialPosition; /* OPTIONAL */ + GNSSstatus_t *currGNSSstatus; /* OPTIONAL */ + PathHistoryPointList_t crumbData; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistory_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistory; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistory_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" + +#endif /* _PathHistory_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPoint.h new file mode 100644 index 000000000..1ebe75688 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPoint.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PathHistoryPoint_H_ +#define _PathHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "VertOffset-B12.h" +#include "TimeOffset.h" +#include "Speed.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PositionalAccuracy; + +/* PathHistoryPoint */ +typedef struct PathHistoryPoint { + OffsetLL_B18_t latOffset; + OffsetLL_B18_t lonOffset; + VertOffset_B12_t elevationOffset; + TimeOffset_t timeOffset; + Speed_t *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PositionalAccuracy.h" + +#endif /* _PathHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPointList.h new file mode 100644 index 000000000..3ff9075a7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathHistoryPointList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PathHistoryPointList_H_ +#define _PathHistoryPointList_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 PathHistoryPoint; + +/* PathHistoryPointList */ +typedef struct PathHistoryPointList { + A_SEQUENCE_OF(struct PathHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistoryPoint.h" + +#endif /* _PathHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathNode.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathNode.h new file mode 100644 index 000000000..8f92a2e4e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathNode.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathNode_H_ +#define _PathNode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathNode */ +typedef struct PathNode { + long x; + long y; + long *z; /* OPTIONAL */ + long *width; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathNode_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathNode; +extern asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1; +extern asn_TYPE_member_t asn_MBR_PathNode_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathNode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathPrediction.h new file mode 100644 index 000000000..f69743977 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PathPrediction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PathPrediction_H_ +#define _PathPrediction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RadiusOfCurvature.h" +#include "Confidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathPrediction */ +typedef struct PathPrediction { + RadiusOfCurvature_t radiusOfCurve; + Confidence_t confidence; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathPrediction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; +extern asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1; +extern asn_TYPE_member_t asn_MBR_PathPrediction_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathPrediction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PayloadData.h new file mode 100644 index 000000000..4cbabaaa0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PayloadData.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PayloadData_H_ +#define _PayloadData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PayloadData */ +typedef OCTET_STRING_t PayloadData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PayloadData; +asn_struct_free_f PayloadData_free; +asn_struct_print_f PayloadData_print; +asn_constr_check_f PayloadData_constraint; +ber_type_decoder_f PayloadData_decode_ber; +der_type_encoder_f PayloadData_encode_der; +xer_type_decoder_f PayloadData_decode_xer; +xer_type_encoder_f PayloadData_encode_xer; +oer_type_decoder_f PayloadData_decode_oer; +oer_type_encoder_f PayloadData_encode_oer; +per_type_decoder_f PayloadData_decode_uper; +per_type_encoder_f PayloadData_encode_uper; +per_type_decoder_f PayloadData_decode_aper; +per_type_encoder_f PayloadData_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PayloadData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PedestrianBicycleDetect.h new file mode 100644 index 000000000..4709d218d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PedestrianBicycleDetect.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PedestrianBicycleDetect_H_ +#define _PedestrianBicycleDetect_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PedestrianBicycleDetect */ +typedef BOOLEAN_t PedestrianBicycleDetect_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; +asn_struct_free_f PedestrianBicycleDetect_free; +asn_struct_print_f PedestrianBicycleDetect_print; +asn_constr_check_f PedestrianBicycleDetect_constraint; +ber_type_decoder_f PedestrianBicycleDetect_decode_ber; +der_type_encoder_f PedestrianBicycleDetect_encode_der; +xer_type_decoder_f PedestrianBicycleDetect_decode_xer; +xer_type_encoder_f PedestrianBicycleDetect_encode_xer; +oer_type_decoder_f PedestrianBicycleDetect_decode_oer; +oer_type_encoder_f PedestrianBicycleDetect_encode_oer; +per_type_decoder_f PedestrianBicycleDetect_decode_uper; +per_type_encoder_f PedestrianBicycleDetect_encode_uper; +per_type_decoder_f PedestrianBicycleDetect_decode_aper; +per_type_encoder_f PedestrianBicycleDetect_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PedestrianBicycleDetect_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalAssistive.h new file mode 100644 index 000000000..b7c9e6da9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalAssistive.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalAssistive_H_ +#define _PersonalAssistive_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalAssistive { + PersonalAssistive_unavailable = 0, + PersonalAssistive_otherType = 1, + PersonalAssistive_vision = 2, + PersonalAssistive_hearing = 3, + PersonalAssistive_movement = 4, + PersonalAssistive_cognition = 5 +} e_PersonalAssistive; + +/* PersonalAssistive */ +typedef BIT_STRING_t PersonalAssistive_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; +asn_struct_free_f PersonalAssistive_free; +asn_struct_print_f PersonalAssistive_print; +asn_constr_check_f PersonalAssistive_constraint; +ber_type_decoder_f PersonalAssistive_decode_ber; +der_type_encoder_f PersonalAssistive_encode_der; +xer_type_decoder_f PersonalAssistive_decode_xer; +xer_type_encoder_f PersonalAssistive_encode_xer; +oer_type_decoder_f PersonalAssistive_decode_oer; +oer_type_encoder_f PersonalAssistive_encode_oer; +per_type_decoder_f PersonalAssistive_decode_uper; +per_type_encoder_f PersonalAssistive_encode_uper; +per_type_decoder_f PersonalAssistive_decode_aper; +per_type_encoder_f PersonalAssistive_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalAssistive_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalClusterRadius.h new file mode 100644 index 000000000..c3c021192 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalClusterRadius.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalClusterRadius_H_ +#define _PersonalClusterRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalClusterRadius */ +typedef long PersonalClusterRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; +asn_struct_free_f PersonalClusterRadius_free; +asn_struct_print_f PersonalClusterRadius_print; +asn_constr_check_f PersonalClusterRadius_constraint; +ber_type_decoder_f PersonalClusterRadius_decode_ber; +der_type_encoder_f PersonalClusterRadius_encode_der; +xer_type_decoder_f PersonalClusterRadius_decode_xer; +xer_type_encoder_f PersonalClusterRadius_encode_xer; +oer_type_decoder_f PersonalClusterRadius_decode_oer; +oer_type_encoder_f PersonalClusterRadius_encode_oer; +per_type_decoder_f PersonalClusterRadius_decode_uper; +per_type_encoder_f PersonalClusterRadius_encode_uper; +per_type_decoder_f PersonalClusterRadius_decode_aper; +per_type_encoder_f PersonalClusterRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalClusterRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingInProgress.h new file mode 100644 index 000000000..39e6dc155 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingInProgress.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalCrossingInProgress_H_ +#define _PersonalCrossingInProgress_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingInProgress */ +typedef BOOLEAN_t PersonalCrossingInProgress_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; +asn_struct_free_f PersonalCrossingInProgress_free; +asn_struct_print_f PersonalCrossingInProgress_print; +asn_constr_check_f PersonalCrossingInProgress_constraint; +ber_type_decoder_f PersonalCrossingInProgress_decode_ber; +der_type_encoder_f PersonalCrossingInProgress_encode_der; +xer_type_decoder_f PersonalCrossingInProgress_decode_xer; +xer_type_encoder_f PersonalCrossingInProgress_encode_xer; +oer_type_decoder_f PersonalCrossingInProgress_decode_oer; +oer_type_encoder_f PersonalCrossingInProgress_encode_oer; +per_type_decoder_f PersonalCrossingInProgress_decode_uper; +per_type_encoder_f PersonalCrossingInProgress_encode_uper; +per_type_decoder_f PersonalCrossingInProgress_decode_aper; +per_type_encoder_f PersonalCrossingInProgress_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingInProgress_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingRequest.h new file mode 100644 index 000000000..ce9aa6d4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalCrossingRequest.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalCrossingRequest_H_ +#define _PersonalCrossingRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingRequest */ +typedef BOOLEAN_t PersonalCrossingRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; +asn_struct_free_f PersonalCrossingRequest_free; +asn_struct_print_f PersonalCrossingRequest_print; +asn_constr_check_f PersonalCrossingRequest_constraint; +ber_type_decoder_f PersonalCrossingRequest_decode_ber; +der_type_encoder_f PersonalCrossingRequest_encode_der; +xer_type_decoder_f PersonalCrossingRequest_decode_xer; +xer_type_encoder_f PersonalCrossingRequest_encode_xer; +oer_type_decoder_f PersonalCrossingRequest_decode_oer; +oer_type_encoder_f PersonalCrossingRequest_encode_oer; +per_type_decoder_f PersonalCrossingRequest_decode_uper; +per_type_encoder_f PersonalCrossingRequest_encode_uper; +per_type_decoder_f PersonalCrossingRequest_decode_aper; +per_type_encoder_f PersonalCrossingRequest_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUsageState.h new file mode 100644 index 000000000..e791603a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUsageState.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalDeviceUsageState_H_ +#define _PersonalDeviceUsageState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUsageState { + PersonalDeviceUsageState_unavailable = 0, + PersonalDeviceUsageState_other = 1, + PersonalDeviceUsageState_idle = 2, + PersonalDeviceUsageState_listeningToAudio = 3, + PersonalDeviceUsageState_typing = 4, + PersonalDeviceUsageState_calling = 5, + PersonalDeviceUsageState_playingGames = 6, + PersonalDeviceUsageState_reading = 7, + PersonalDeviceUsageState_viewing = 8 +} e_PersonalDeviceUsageState; + +/* PersonalDeviceUsageState */ +typedef BIT_STRING_t PersonalDeviceUsageState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; +asn_struct_free_f PersonalDeviceUsageState_free; +asn_struct_print_f PersonalDeviceUsageState_print; +asn_constr_check_f PersonalDeviceUsageState_constraint; +ber_type_decoder_f PersonalDeviceUsageState_decode_ber; +der_type_encoder_f PersonalDeviceUsageState_encode_der; +xer_type_decoder_f PersonalDeviceUsageState_decode_xer; +xer_type_encoder_f PersonalDeviceUsageState_encode_xer; +oer_type_decoder_f PersonalDeviceUsageState_decode_oer; +oer_type_encoder_f PersonalDeviceUsageState_encode_oer; +per_type_decoder_f PersonalDeviceUsageState_decode_uper; +per_type_encoder_f PersonalDeviceUsageState_encode_uper; +per_type_decoder_f PersonalDeviceUsageState_decode_aper; +per_type_encoder_f PersonalDeviceUsageState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUsageState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUserType.h new file mode 100644 index 000000000..6bb0defbc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalDeviceUserType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalDeviceUserType_H_ +#define _PersonalDeviceUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUserType { + PersonalDeviceUserType_unavailable = 0, + PersonalDeviceUserType_aPEDESTRIAN = 1, + PersonalDeviceUserType_aPEDALCYCLIST = 2, + PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, + PersonalDeviceUserType_anANIMAL = 4 + /* + * Enumeration is extensible + */ +} e_PersonalDeviceUserType; + +/* PersonalDeviceUserType */ +typedef long PersonalDeviceUserType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; +extern const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1; +asn_struct_free_f PersonalDeviceUserType_free; +asn_struct_print_f PersonalDeviceUserType_print; +asn_constr_check_f PersonalDeviceUserType_constraint; +ber_type_decoder_f PersonalDeviceUserType_decode_ber; +der_type_encoder_f PersonalDeviceUserType_encode_der; +xer_type_decoder_f PersonalDeviceUserType_decode_xer; +xer_type_encoder_f PersonalDeviceUserType_encode_xer; +oer_type_decoder_f PersonalDeviceUserType_decode_oer; +oer_type_encoder_f PersonalDeviceUserType_encode_oer; +per_type_decoder_f PersonalDeviceUserType_decode_uper; +per_type_encoder_f PersonalDeviceUserType_encode_uper; +per_type_decoder_f PersonalDeviceUserType_decode_aper; +per_type_encoder_f PersonalDeviceUserType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalSafetyMessage.h new file mode 100644 index 000000000..e9d07290d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalSafetyMessage.h @@ -0,0 +1,110 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PersonalSafetyMessage_H_ +#define _PersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "Velocity.h" +#include "Heading.h" +#include "PersonalDeviceUsageState.h" +#include "PersonalCrossingRequest.h" +#include "PersonalCrossingInProgress.h" +#include "NumberOfParticipantsInCluster.h" +#include "PersonalClusterRadius.h" +#include "PublicSafetyEventResponderWorkerType.h" +#include "PublicSafetyAndRoadWorkerActivity.h" +#include "PublicSafetyDirectingTrafficSubType.h" +#include "PersonalAssistive.h" +#include "UserSizeAndBehaviour.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include "AnimalType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelerationSet4Way; +struct PathHistory; +struct PathPrediction; +struct PropelledInformation; +struct Reg_PersonalSafetyMessage; + +/* PersonalSafetyMessage */ +typedef struct PersonalSafetyMessage { + PersonalDeviceUserType_t basicType; + DSecond_t secMark; + Common_MsgCount_t msgCnt; + TemporaryID_t id; + Position3D_t position; + PositionalAccuracy_t accuracy; + Velocity_t speed; + Heading_t heading; + struct AccelerationSet4Way *accelSet; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + struct PropelledInformation *propulsion; /* OPTIONAL */ + PersonalDeviceUsageState_t *useState; /* OPTIONAL */ + PersonalCrossingRequest_t *crossRequest; /* OPTIONAL */ + PersonalCrossingInProgress_t *crossState; /* OPTIONAL */ + NumberOfParticipantsInCluster_t *clusterSize; /* OPTIONAL */ + PersonalClusterRadius_t *clusterRadius; /* OPTIONAL */ + PublicSafetyEventResponderWorkerType_t *eventResponderType; /* OPTIONAL */ + PublicSafetyAndRoadWorkerActivity_t *activityType; /* OPTIONAL */ + PublicSafetyDirectingTrafficSubType_t *activitySubType; /* OPTIONAL */ + PersonalAssistive_t *assistType; /* OPTIONAL */ + UserSizeAndBehaviour_t *sizing; /* OPTIONAL */ + Attachment_t *attachment; /* OPTIONAL */ + AttachmentRadius_t *attachmentRadius; /* OPTIONAL */ + AnimalType_t *animalType; /* OPTIONAL */ + struct PersonalSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_PersonalSafetyMessage) 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; +} PersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[26]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelerationSet4Way.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "PropelledInformation.h" +#include "RegionalExtension.h" + +#endif /* _PersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchDetected.h new file mode 100644 index 000000000..a028235b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchDetected_H_ +#define _PitchDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PitchDetected */ +typedef long PitchDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchDetected; +asn_struct_free_f PitchDetected_free; +asn_struct_print_f PitchDetected_print; +asn_constr_check_f PitchDetected_constraint; +ber_type_decoder_f PitchDetected_decode_ber; +der_type_encoder_f PitchDetected_encode_der; +xer_type_decoder_f PitchDetected_decode_xer; +xer_type_encoder_f PitchDetected_encode_xer; +oer_type_decoder_f PitchDetected_decode_oer; +oer_type_encoder_f PitchDetected_encode_oer; +per_type_decoder_f PitchDetected_decode_uper; +per_type_encoder_f PitchDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRate.h new file mode 100644 index 000000000..145045cd2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchRate_H_ +#define _PitchRate_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PitchRate */ +typedef long PitchRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchRate; +asn_struct_free_f PitchRate_free; +asn_struct_print_f PitchRate_print; +asn_constr_check_f PitchRate_constraint; +ber_type_decoder_f PitchRate_decode_ber; +der_type_encoder_f PitchRate_encode_der; +xer_type_decoder_f PitchRate_decode_xer; +xer_type_encoder_f PitchRate_encode_xer; +oer_type_decoder_f PitchRate_decode_oer; +oer_type_encoder_f PitchRate_encode_oer; +per_type_decoder_f PitchRate_decode_uper; +per_type_encoder_f PitchRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchRate_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRateConfidence.h new file mode 100644 index 000000000..df6f4e7a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PitchRateConfidence.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchRateConfidence_H_ +#define _PitchRateConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PitchRateConfidence { + PitchRateConfidence_unavailable = 0, + PitchRateConfidence_degSec_100_00 = 1, + PitchRateConfidence_degSec_010_00 = 2, + PitchRateConfidence_degSec_005_00 = 3, + PitchRateConfidence_degSec_001_00 = 4, + PitchRateConfidence_degSec_000_10 = 5, + PitchRateConfidence_degSec_000_05 = 6, + PitchRateConfidence_degSec_000_01 = 7 +} e_PitchRateConfidence; + +/* PitchRateConfidence */ +typedef long PitchRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1; +asn_struct_free_f PitchRateConfidence_free; +asn_struct_print_f PitchRateConfidence_print; +asn_constr_check_f PitchRateConfidence_constraint; +ber_type_decoder_f PitchRateConfidence_decode_ber; +der_type_encoder_f PitchRateConfidence_encode_der; +xer_type_decoder_f PitchRateConfidence_decode_xer; +xer_type_encoder_f PitchRateConfidence_encode_xer; +oer_type_decoder_f PitchRateConfidence_decode_oer; +oer_type_encoder_f PitchRateConfidence_encode_oer; +per_type_decoder_f PitchRateConfidence_decode_uper; +per_type_encoder_f PitchRateConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchRateConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotPointDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotPointDescription.h new file mode 100644 index 000000000..d33758d4c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotPointDescription.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PivotPointDescription_H_ +#define _PivotPointDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "Common_Angle.h" +#include "PivotingAllowed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotPointDescription */ +typedef struct PivotPointDescription { + Offset_B11_t pivotOffset; + Common_Angle_t pivotAngle; + PivotingAllowed_t pivots; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PivotPointDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotPointDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_PivotPointDescription_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotPointDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotingAllowed.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotingAllowed.h new file mode 100644 index 000000000..397559051 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PivotingAllowed.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PivotingAllowed_H_ +#define _PivotingAllowed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotingAllowed */ +typedef BOOLEAN_t PivotingAllowed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotingAllowed; +asn_struct_free_f PivotingAllowed_free; +asn_struct_print_f PivotingAllowed_print; +asn_constr_check_f PivotingAllowed_constraint; +ber_type_decoder_f PivotingAllowed_decode_ber; +der_type_encoder_f PivotingAllowed_encode_der; +xer_type_decoder_f PivotingAllowed_decode_xer; +xer_type_encoder_f PivotingAllowed_encode_xer; +oer_type_decoder_f PivotingAllowed_decode_oer; +oer_type_encoder_f PivotingAllowed_encode_oer; +per_type_decoder_f PivotingAllowed_decode_uper; +per_type_encoder_f PivotingAllowed_encode_uper; +per_type_decoder_f PivotingAllowed_decode_aper; +per_type_encoder_f PivotingAllowed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotingAllowed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Point.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Point.h new file mode 100644 index 000000000..9b6129097 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Point.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Point_H_ +#define _Point_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Point */ +typedef struct Point { + long x; + long y; + long *z; /* OPTIONAL */ + long width; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Point_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Point; +extern asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1; +extern asn_TYPE_member_t asn_MBR_Point_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Point_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpB.h new file mode 100644 index 000000000..5df1831eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpB.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Position3D_addGrpB_H_ +#define _Position3D_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LatitudeDMS2.h" +#include "LongitudeDMS2.h" +#include "AddGrpB_Elevation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpB */ +typedef struct Position3D_addGrpB { + LatitudeDMS2_t latitude; + LongitudeDMS2_t longitude; + AddGrpB_Elevation_t elevation; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpC.h new file mode 100644 index 000000000..1f5a04ae0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpC.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Position3D_addGrpC_H_ +#define _Position3D_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Altitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpC */ +typedef struct Position3D_addGrpC { + Altitude_t altitude; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpC_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 new file mode 100644 index 000000000..3b678cf2c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _Position3D_addGrpCarma_H_ +#define _Position3D_addGrpCarma_H_ + + +#include + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "Common_Elevation.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpCarma */ +typedef struct Position3D_addGrpCarma { + Latitude_t lat; + Longitude_t Long; + Common_Elevation_t *elevation; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpCarma_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpCarma_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D.h new file mode 100644 index 000000000..ce16960bd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Position3D_H_ +#define _Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "Common_Elevation.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_Position3D; + +/* Position3D */ +typedef struct Position3D { + Latitude_t lat; + Longitude_t Long; + Common_Elevation_t *elevation; /* OPTIONAL */ + struct Position3D__regional { + A_SEQUENCE_OF(struct Reg_Position3D) 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; +} Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidence.h new file mode 100644 index 000000000..d9383248f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PositionConfidence_H_ +#define _PositionConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PositionConfidence { + PositionConfidence_unavailable = 0, + PositionConfidence_a500m = 1, + PositionConfidence_a200m = 2, + PositionConfidence_a100m = 3, + PositionConfidence_a50m = 4, + PositionConfidence_a20m = 5, + PositionConfidence_a10m = 6, + PositionConfidence_a5m = 7, + PositionConfidence_a2m = 8, + PositionConfidence_a1m = 9, + PositionConfidence_a50cm = 10, + PositionConfidence_a20cm = 11, + PositionConfidence_a10cm = 12, + PositionConfidence_a5cm = 13, + PositionConfidence_a2cm = 14, + PositionConfidence_a1cm = 15 +} e_PositionConfidence; + +/* PositionConfidence */ +typedef long PositionConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1; +asn_struct_free_f PositionConfidence_free; +asn_struct_print_f PositionConfidence_print; +asn_constr_check_f PositionConfidence_constraint; +ber_type_decoder_f PositionConfidence_decode_ber; +der_type_encoder_f PositionConfidence_encode_der; +xer_type_decoder_f PositionConfidence_decode_xer; +xer_type_encoder_f PositionConfidence_encode_xer; +oer_type_decoder_f PositionConfidence_decode_oer; +oer_type_encoder_f PositionConfidence_encode_oer; +per_type_decoder_f PositionConfidence_decode_uper; +per_type_encoder_f PositionConfidence_encode_uper; +per_type_decoder_f PositionConfidence_decode_aper; +per_type_encoder_f PositionConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidenceSet.h new file mode 100644 index 000000000..2f89bddbf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionConfidenceSet.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PositionConfidenceSet_H_ +#define _PositionConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PositionConfidence.h" +#include "ElevationConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionConfidenceSet */ +typedef struct PositionConfidenceSet { + PositionConfidence_t pos; + ElevationConfidence_t elevation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionOffsetXYZ.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionOffsetXYZ.h new file mode 100644 index 000000000..9a9890818 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionOffsetXYZ.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PositionOffsetXYZ_H_ +#define _PositionOffsetXYZ_H_ + + +#include + +/* Including external dependencies */ +#include "ObjectDistance.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionOffsetXYZ */ +typedef struct PositionOffsetXYZ { + ObjectDistance_t offsetX; + ObjectDistance_t offsetY; + ObjectDistance_t *offsetZ /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionOffsetXYZ_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionOffsetXYZ_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionalAccuracy.h new file mode 100644 index 000000000..8a1d39569 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PositionalAccuracy.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PositionalAccuracy_H_ +#define _PositionalAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SemiMajorAxisAccuracy.h" +#include "SemiMinorAxisAccuracy.h" +#include "SemiMajorAxisOrientation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionalAccuracy */ +typedef struct PositionalAccuracy { + SemiMajorAxisAccuracy_t semiMajor; + SemiMinorAxisAccuracy_t semiMinor; + SemiMajorAxisOrientation_t orientation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionalAccuracy_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionalAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PreemptPriorityList.h new file mode 100644 index 000000000..93d2f6353 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PreemptPriorityList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PreemptPriorityList_H_ +#define _PreemptPriorityList_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 SignalControlZone; + +/* PreemptPriorityList */ +typedef struct PreemptPriorityList { + A_SEQUENCE_OF(struct SignalControlZone) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PreemptPriorityList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; +extern asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1; +extern asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[1]; +extern asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalControlZone.h" + +#endif /* _PreemptPriorityList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponse.h new file mode 100644 index 000000000..41c76cc6c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponse.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PrioritizationResponse_H_ +#define _PrioritizationResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "PrioritizationResponseStatus.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrioritizationResponse */ +typedef struct PrioritizationResponse { + StationID_t stationID; + PrioritizationResponseStatus_t priorState; + SignalGroupID_t signalGroup; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; +extern asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseList.h new file mode 100644 index 000000000..e139e3fdd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PrioritizationResponseList_H_ +#define _PrioritizationResponseList_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 PrioritizationResponse; + +/* PrioritizationResponseList */ +typedef struct PrioritizationResponseList { + A_SEQUENCE_OF(struct PrioritizationResponse) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponseList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; +extern asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[1]; +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponse.h" + +#endif /* _PrioritizationResponseList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseStatus.h new file mode 100644 index 000000000..d1a287025 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrioritizationResponseStatus.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PrioritizationResponseStatus_H_ +#define _PrioritizationResponseStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrioritizationResponseStatus { + PrioritizationResponseStatus_unknown = 0, + PrioritizationResponseStatus_requested = 1, + PrioritizationResponseStatus_processing = 2, + PrioritizationResponseStatus_watchOtherTraffic = 3, + PrioritizationResponseStatus_granted = 4, + PrioritizationResponseStatus_rejected = 5, + PrioritizationResponseStatus_maxPresence = 6, + PrioritizationResponseStatus_reserviceLocked = 7 + /* + * Enumeration is extensible + */ +} e_PrioritizationResponseStatus; + +/* PrioritizationResponseStatus */ +typedef long PrioritizationResponseStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; +extern const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1; +asn_struct_free_f PrioritizationResponseStatus_free; +asn_struct_print_f PrioritizationResponseStatus_print; +asn_constr_check_f PrioritizationResponseStatus_constraint; +ber_type_decoder_f PrioritizationResponseStatus_decode_ber; +der_type_encoder_f PrioritizationResponseStatus_encode_der; +xer_type_decoder_f PrioritizationResponseStatus_decode_xer; +xer_type_encoder_f PrioritizationResponseStatus_encode_xer; +oer_type_decoder_f PrioritizationResponseStatus_decode_oer; +oer_type_encoder_f PrioritizationResponseStatus_encode_oer; +per_type_decoder_f PrioritizationResponseStatus_decode_uper; +per_type_encoder_f PrioritizationResponseStatus_encode_uper; +per_type_decoder_f PrioritizationResponseStatus_decode_aper; +per_type_encoder_f PrioritizationResponseStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponseStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Priority.h new file mode 100644 index 000000000..46141efc5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Priority.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Priority_H_ +#define _Priority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Priority */ +typedef OCTET_STRING_t Priority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Priority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Priority; +asn_struct_free_f Priority_free; +asn_struct_print_f Priority_print; +asn_constr_check_f Priority_constraint; +ber_type_decoder_f Priority_decode_ber; +der_type_encoder_f Priority_encode_der; +xer_type_decoder_f Priority_decode_xer; +xer_type_encoder_f Priority_encode_xer; +oer_type_decoder_f Priority_decode_oer; +oer_type_encoder_f Priority_encode_oer; +per_type_decoder_f Priority_decode_uper; +per_type_encoder_f Priority_encode_uper; +per_type_decoder_f Priority_decode_aper; +per_type_encoder_f Priority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Priority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PriorityRequestType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PriorityRequestType.h new file mode 100644 index 000000000..9e118527f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PriorityRequestType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PriorityRequestType_H_ +#define _PriorityRequestType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PriorityRequestType { + PriorityRequestType_priorityRequestTypeReserved = 0, + PriorityRequestType_priorityRequest = 1, + PriorityRequestType_priorityRequestUpdate = 2, + PriorityRequestType_priorityCancellation = 3 + /* + * Enumeration is extensible + */ +} e_PriorityRequestType; + +/* PriorityRequestType */ +typedef long PriorityRequestType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PriorityRequestType; +extern const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1; +asn_struct_free_f PriorityRequestType_free; +asn_struct_print_f PriorityRequestType_print; +asn_constr_check_f PriorityRequestType_constraint; +ber_type_decoder_f PriorityRequestType_decode_ber; +der_type_encoder_f PriorityRequestType_encode_der; +xer_type_decoder_f PriorityRequestType_decode_xer; +xer_type_encoder_f PriorityRequestType_encode_xer; +oer_type_decoder_f PriorityRequestType_decode_oer; +oer_type_encoder_f PriorityRequestType_encode_oer; +per_type_decoder_f PriorityRequestType_decode_uper; +per_type_encoder_f PriorityRequestType_encode_uper; +per_type_decoder_f PriorityRequestType_decode_aper; +per_type_encoder_f PriorityRequestType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PriorityRequestType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEventFlags.h new file mode 100644 index 000000000..e202a0ae4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEventFlags.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PrivilegedEventFlags_H_ +#define _PrivilegedEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrivilegedEventFlags { + PrivilegedEventFlags_peUnavailable = 0, + PrivilegedEventFlags_peEmergencyResponse = 1, + PrivilegedEventFlags_peEmergencyLightsActive = 2, + PrivilegedEventFlags_peEmergencySoundActive = 3, + PrivilegedEventFlags_peNonEmergencyLightsActive = 4, + PrivilegedEventFlags_peNonEmergencySoundActive = 5 +} e_PrivilegedEventFlags; + +/* PrivilegedEventFlags */ +typedef BIT_STRING_t PrivilegedEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags; +asn_struct_free_f PrivilegedEventFlags_free; +asn_struct_print_f PrivilegedEventFlags_print; +asn_constr_check_f PrivilegedEventFlags_constraint; +ber_type_decoder_f PrivilegedEventFlags_decode_ber; +der_type_encoder_f PrivilegedEventFlags_encode_der; +xer_type_decoder_f PrivilegedEventFlags_decode_xer; +xer_type_encoder_f PrivilegedEventFlags_encode_xer; +oer_type_decoder_f PrivilegedEventFlags_decode_oer; +oer_type_encoder_f PrivilegedEventFlags_encode_oer; +per_type_decoder_f PrivilegedEventFlags_decode_uper; +per_type_encoder_f PrivilegedEventFlags_encode_uper; +per_type_decoder_f PrivilegedEventFlags_decode_aper; +per_type_encoder_f PrivilegedEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEvents.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEvents.h new file mode 100644 index 000000000..5471e64f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrivilegedEvents.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PrivilegedEvents_H_ +#define _PrivilegedEvents_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PrivilegedEventFlags.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrivilegedEvents */ +typedef struct PrivilegedEvents { + SSPindex_t notUsed; + PrivilegedEventFlags_t event; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrivilegedEvents_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents; +extern asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1; +extern asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEvents_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeDataManagement.h new file mode 100644 index 000000000..8d134f116 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeDataManagement.h @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ProbeDataManagement_H_ +#define _ProbeDataManagement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Sample.h" +#include "HeadingSlice.h" +#include "SecondOfTime.h" +#include "TermTime.h" +#include "TermDistance.h" +#include "constr_CHOICE.h" +#include "SnapshotTime.h" +#include "SnapshotDistance.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ProbeDataManagement__term_PR { + ProbeDataManagement__term_PR_NOTHING, /* No components present */ + ProbeDataManagement__term_PR_termtime, + ProbeDataManagement__term_PR_termDistance +} ProbeDataManagement__term_PR; +typedef enum ProbeDataManagement__snapshot_PR { + ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ + ProbeDataManagement__snapshot_PR_snapshotTime, + ProbeDataManagement__snapshot_PR_snapshotDistance +} ProbeDataManagement__snapshot_PR; + +/* Forward declarations */ +struct VehicleStatusRequestList; +struct Reg_ProbeDataManagement; + +/* ProbeDataManagement */ +typedef struct ProbeDataManagement { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Sample_t sample; + HeadingSlice_t directions; + struct ProbeDataManagement__term { + ProbeDataManagement__term_PR present; + union ProbeDataManagement__term_u { + TermTime_t termtime; + TermDistance_t termDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } term; + struct ProbeDataManagement__snapshot { + ProbeDataManagement__snapshot_PR present; + union ProbeDataManagement__snapshot_u { + SnapshotTime_t snapshotTime; + SnapshotDistance_t snapshotDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshot; + SecondOfTime_t txInterval; + struct VehicleStatusRequestList *dataElements; /* OPTIONAL */ + struct ProbeDataManagement__regional { + A_SEQUENCE_OF(struct Reg_ProbeDataManagement) 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; +} ProbeDataManagement_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleStatusRequestList.h" +#include "RegionalExtension.h" + +#endif /* _ProbeDataManagement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeSegmentNumber.h new file mode 100644 index 000000000..80dfd91ab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeSegmentNumber.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ProbeSegmentNumber_H_ +#define _ProbeSegmentNumber_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ProbeSegmentNumber */ +typedef long ProbeSegmentNumber_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; +asn_struct_free_f ProbeSegmentNumber_free; +asn_struct_print_f ProbeSegmentNumber_print; +asn_constr_check_f ProbeSegmentNumber_constraint; +ber_type_decoder_f ProbeSegmentNumber_decode_ber; +der_type_encoder_f ProbeSegmentNumber_encode_der; +xer_type_decoder_f ProbeSegmentNumber_decode_xer; +xer_type_encoder_f ProbeSegmentNumber_encode_xer; +oer_type_decoder_f ProbeSegmentNumber_decode_oer; +oer_type_encoder_f ProbeSegmentNumber_encode_oer; +per_type_decoder_f ProbeSegmentNumber_decode_uper; +per_type_encoder_f ProbeSegmentNumber_encode_uper; +per_type_decoder_f ProbeSegmentNumber_decode_aper; +per_type_encoder_f ProbeSegmentNumber_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeSegmentNumber_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeVehicleData.h new file mode 100644 index 000000000..2146e6505 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ProbeVehicleData.h @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ProbeVehicleData_H_ +#define _ProbeVehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "ProbeSegmentNumber.h" +#include "FullPositionVector.h" +#include "VehicleClassification.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleIdent; +struct Snapshot; +struct Reg_ProbeVehicleData; + +/* ProbeVehicleData */ +typedef struct ProbeVehicleData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ProbeSegmentNumber_t *segNum; /* OPTIONAL */ + struct VehicleIdent *probeID; /* OPTIONAL */ + FullPositionVector_t startVector; + VehicleClassification_t vehicleType; + struct ProbeVehicleData__snapshots { + A_SEQUENCE_OF(struct Snapshot) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshots; + struct ProbeVehicleData__regional { + A_SEQUENCE_OF(struct Reg_ProbeVehicleData) 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; +} ProbeVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleIdent.h" +#include "Snapshot.h" +#include "RegionalExtension.h" + +#endif /* _ProbeVehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PropelledInformation.h new file mode 100644 index 000000000..d13726d35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PropelledInformation.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PropelledInformation_H_ +#define _PropelledInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HumanPropelledType.h" +#include "AnimalPropelledType.h" +#include "MotorizedPropelledType.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PropelledInformation_PR { + PropelledInformation_PR_NOTHING, /* No components present */ + PropelledInformation_PR_human, + PropelledInformation_PR_animal, + PropelledInformation_PR_motor + /* Extensions may appear below */ + +} PropelledInformation_PR; + +/* PropelledInformation */ +typedef struct PropelledInformation { + PropelledInformation_PR present; + union PropelledInformation_u { + HumanPropelledType_t human; + AnimalPropelledType_t animal; + MotorizedPropelledType_t motor; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PropelledInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; +extern asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_PropelledInformation_1[3]; +extern asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PropelledInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyAndRoadWorkerActivity.h new file mode 100644 index 000000000..25b8847a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyAndRoadWorkerActivity.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PublicSafetyAndRoadWorkerActivity_H_ +#define _PublicSafetyAndRoadWorkerActivity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyAndRoadWorkerActivity { + PublicSafetyAndRoadWorkerActivity_unavailable = 0, + PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, + PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, + PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, + PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, + PublicSafetyAndRoadWorkerActivity_otherActivities = 5 +} e_PublicSafetyAndRoadWorkerActivity; + +/* PublicSafetyAndRoadWorkerActivity */ +typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; +asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; +asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; +asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; +ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; +der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; +xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; +xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; +oer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_oer; +oer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_oer; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_aper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyDirectingTrafficSubType.h new file mode 100644 index 000000000..361d3ebca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyDirectingTrafficSubType.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PublicSafetyDirectingTrafficSubType_H_ +#define _PublicSafetyDirectingTrafficSubType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyDirectingTrafficSubType { + PublicSafetyDirectingTrafficSubType_unavailable = 0, + PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, + PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, + PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, + PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, + PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, + PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 +} e_PublicSafetyDirectingTrafficSubType; + +/* PublicSafetyDirectingTrafficSubType */ +typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; +asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; +asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; +asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; +ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; +der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; +xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; +xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; +oer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_oer; +oer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_oer; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_aper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyEventResponderWorkerType.h new file mode 100644 index 000000000..03f5c20af --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PublicSafetyEventResponderWorkerType.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _PublicSafetyEventResponderWorkerType_H_ +#define _PublicSafetyEventResponderWorkerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyEventResponderWorkerType { + PublicSafetyEventResponderWorkerType_unavailable = 0, + PublicSafetyEventResponderWorkerType_towOperater = 1, + PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, + PublicSafetyEventResponderWorkerType_aDOTWorker = 3, + PublicSafetyEventResponderWorkerType_lawEnforcement = 4, + PublicSafetyEventResponderWorkerType_hazmatResponder = 5, + PublicSafetyEventResponderWorkerType_animalControlWorker = 6, + PublicSafetyEventResponderWorkerType_otherPersonnel = 7 + /* + * Enumeration is extensible + */ +} e_PublicSafetyEventResponderWorkerType; + +/* PublicSafetyEventResponderWorkerType */ +typedef long PublicSafetyEventResponderWorkerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; +extern const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1; +asn_struct_free_f PublicSafetyEventResponderWorkerType_free; +asn_struct_print_f PublicSafetyEventResponderWorkerType_print; +asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; +ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; +der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; +xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; +xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; +oer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_oer; +oer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_oer; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_aper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyEventResponderWorkerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCM-Revision.h new file mode 100644 index 000000000..fe4f08554 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCM-Revision.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCM_Revision_H_ +#define _RTCM_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RTCM_Revision { + RTCM_Revision_unknown = 0, + RTCM_Revision_rtcmRev2 = 1, + RTCM_Revision_rtcmRev3 = 2, + RTCM_Revision_reserved = 3 + /* + * Enumeration is extensible + */ +} e_RTCM_Revision; + +/* RTCM-Revision */ +typedef long RTCM_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1; +asn_struct_free_f RTCM_Revision_free; +asn_struct_print_f RTCM_Revision_print; +asn_constr_check_f RTCM_Revision_constraint; +ber_type_decoder_f RTCM_Revision_decode_ber; +der_type_encoder_f RTCM_Revision_encode_der; +xer_type_decoder_f RTCM_Revision_decode_xer; +xer_type_encoder_f RTCM_Revision_encode_xer; +oer_type_decoder_f RTCM_Revision_decode_oer; +oer_type_encoder_f RTCM_Revision_encode_oer; +per_type_decoder_f RTCM_Revision_decode_uper; +per_type_encoder_f RTCM_Revision_encode_uper; +per_type_decoder_f RTCM_Revision_decode_aper; +per_type_encoder_f RTCM_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMPackage.h new file mode 100644 index 000000000..f79705d20 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMPackage.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCMPackage_H_ +#define _RTCMPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessageList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RTCMheader; + +/* RTCMPackage */ +typedef struct RTCMPackage { + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMPackage_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RTCMheader.h" + +#endif /* _RTCMPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMcorrections.h new file mode 100644 index 000000000..7a4fa90c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMcorrections.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCMcorrections_H_ +#define _RTCMcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "RTCM-Revision.h" +#include "MinuteOfTheYear.h" +#include "RTCMmessageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct RTCMheader; +struct Reg_RTCMcorrections; + +/* RTCMcorrections */ +typedef struct RTCMcorrections { + Common_MsgCount_t msgCnt; + RTCM_Revision_t rev; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct FullPositionVector *anchorPoint; /* OPTIONAL */ + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + struct RTCMcorrections__regional { + A_SEQUENCE_OF(struct Reg_RTCMcorrections) 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; +} RTCMcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMcorrections_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "RTCMheader.h" +#include "RegionalExtension.h" + +#endif /* _RTCMcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMheader.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMheader.h new file mode 100644 index 000000000..c5255f4ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMheader.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCMheader_H_ +#define _RTCMheader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "AntennaOffsetSet.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMheader */ +typedef struct RTCMheader { + GNSSstatus_t status; + AntennaOffsetSet_t offsetSet; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMheader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMheader; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMheader_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMheader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessage.h new file mode 100644 index 000000000..4d10ea089 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessage.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCMmessage_H_ +#define _RTCMmessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessage */ +typedef OCTET_STRING_t RTCMmessage_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessage; +asn_struct_free_f RTCMmessage_free; +asn_struct_print_f RTCMmessage_print; +asn_constr_check_f RTCMmessage_constraint; +ber_type_decoder_f RTCMmessage_decode_ber; +der_type_encoder_f RTCMmessage_encode_der; +xer_type_decoder_f RTCMmessage_decode_xer; +xer_type_encoder_f RTCMmessage_encode_xer; +oer_type_decoder_f RTCMmessage_decode_oer; +oer_type_encoder_f RTCMmessage_encode_oer; +per_type_decoder_f RTCMmessage_decode_uper; +per_type_encoder_f RTCMmessage_encode_uper; +per_type_decoder_f RTCMmessage_decode_aper; +per_type_encoder_f RTCMmessage_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessageList.h new file mode 100644 index 000000000..626d787b3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RTCMmessageList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RTCMmessageList_H_ +#define _RTCMmessageList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessage.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessageList */ +typedef struct RTCMmessageList { + A_SEQUENCE_OF(RTCMmessage_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMmessageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessageList; +extern asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMmessageList_1[1]; +extern asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Radius-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Radius-B12.h new file mode 100644 index 000000000..12b3c76b5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Radius-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Radius_B12_H_ +#define _Radius_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Radius-B12 */ +typedef long Radius_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Radius_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Radius_B12; +asn_struct_free_f Radius_B12_free; +asn_struct_print_f Radius_B12_print; +asn_constr_check_f Radius_B12_constraint; +ber_type_decoder_f Radius_B12_decode_ber; +der_type_encoder_f Radius_B12_encode_der; +xer_type_decoder_f Radius_B12_decode_xer; +xer_type_encoder_f Radius_B12_encode_xer; +oer_type_decoder_f Radius_B12_decode_oer; +oer_type_encoder_f Radius_B12_encode_oer; +per_type_decoder_f Radius_B12_decode_uper; +per_type_encoder_f Radius_B12_encode_uper; +per_type_decoder_f Radius_B12_decode_aper; +per_type_encoder_f Radius_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Radius_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RadiusOfCurvature.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RadiusOfCurvature.h new file mode 100644 index 000000000..992c89baa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RadiusOfCurvature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RadiusOfCurvature_H_ +#define _RadiusOfCurvature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RadiusOfCurvature */ +typedef long RadiusOfCurvature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature; +asn_struct_free_f RadiusOfCurvature_free; +asn_struct_print_f RadiusOfCurvature_print; +asn_constr_check_f RadiusOfCurvature_constraint; +ber_type_decoder_f RadiusOfCurvature_decode_ber; +der_type_encoder_f RadiusOfCurvature_encode_der; +xer_type_decoder_f RadiusOfCurvature_decode_xer; +xer_type_encoder_f RadiusOfCurvature_encode_xer; +oer_type_decoder_f RadiusOfCurvature_decode_oer; +oer_type_encoder_f RadiusOfCurvature_encode_oer; +per_type_decoder_f RadiusOfCurvature_decode_uper; +per_type_encoder_f RadiusOfCurvature_encode_uper; +per_type_decoder_f RadiusOfCurvature_decode_aper; +per_type_encoder_f RadiusOfCurvature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RadiusOfCurvature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RainSensor.h new file mode 100644 index 000000000..de512e106 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RainSensor.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RainSensor_H_ +#define _RainSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RainSensor { + RainSensor_none = 0, + RainSensor_lightMist = 1, + RainSensor_heavyMist = 2, + RainSensor_lightRainOrDrizzle = 3, + RainSensor_rain = 4, + RainSensor_moderateRain = 5, + RainSensor_heavyRain = 6, + RainSensor_heavyDownpour = 7 +} e_RainSensor; + +/* RainSensor */ +typedef long RainSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RainSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RainSensor; +extern const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1; +asn_struct_free_f RainSensor_free; +asn_struct_print_f RainSensor_print; +asn_constr_check_f RainSensor_constraint; +ber_type_decoder_f RainSensor_decode_ber; +der_type_encoder_f RainSensor_encode_der; +xer_type_decoder_f RainSensor_decode_xer; +xer_type_encoder_f RainSensor_encode_xer; +oer_type_decoder_f RainSensor_decode_oer; +oer_type_encoder_f RainSensor_encode_oer; +per_type_decoder_f RainSensor_decode_uper; +per_type_encoder_f RainSensor_encode_uper; +per_type_decoder_f RainSensor_decode_aper; +per_type_encoder_f RainSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RainSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionId.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionId.h new file mode 100644 index 000000000..84cb6ce59 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionId.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegionId_H_ +#define _RegionId_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionId */ +typedef long RegionId_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RegionId_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RegionId; +asn_struct_free_f RegionId_free; +asn_struct_print_f RegionId_print; +asn_constr_check_f RegionId_constraint; +ber_type_decoder_f RegionId_decode_ber; +der_type_encoder_f RegionId_encode_der; +xer_type_decoder_f RegionId_decode_xer; +xer_type_encoder_f RegionId_encode_xer; +oer_type_decoder_f RegionId_decode_oer; +oer_type_encoder_f RegionId_encode_oer; +per_type_decoder_f RegionId_decode_uper; +per_type_encoder_f RegionId_encode_uper; +per_type_decoder_f RegionId_decode_aper; +per_type_encoder_f RegionId_encode_aper; +#define RegionId_noRegion ((RegionId_t)0) +#define RegionId_addGrpA ((RegionId_t)1) +#define RegionId_addGrpB ((RegionId_t)2) +#define RegionId_addGrpC ((RegionId_t)3) + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionId_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionList.h new file mode 100644 index 000000000..a5153c196 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegionList_H_ +#define _RegionList_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 RegionOffsets; + +/* RegionList */ +typedef struct RegionList { + A_SEQUENCE_OF(struct RegionOffsets) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionList; +extern asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionList_1[1]; +extern asn_per_constraints_t asn_PER_type_RegionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionOffsets.h" + +#endif /* _RegionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionOffsets.h new file mode 100644 index 000000000..8b112508c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionOffsets.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegionOffsets_H_ +#define _RegionOffsets_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionOffsets */ +typedef struct RegionOffsets { + OffsetLL_B16_t xOffset; + OffsetLL_B16_t yOffset; + OffsetLL_B16_t *zOffset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionOffsets_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionOffsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionPointSet.h new file mode 100644 index 000000000..447ac99ee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionPointSet.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegionPointSet_H_ +#define _RegionPointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "RegionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* RegionPointSet */ +typedef struct RegionPointSet { + struct Position3D *anchor; /* OPTIONAL */ + Zoom_t *scale; /* OPTIONAL */ + RegionList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionPointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionPointSet_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _RegionPointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h new file mode 100644 index 000000000..256132a90 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h @@ -0,0 +1,1339 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegionalExtension_H_ +#define _RegionalExtension_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionId.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "LaneDataAttribute-addGrpB.h" +#include "NodeOffsetPointXY-addGrpB.h" +#include "Position3D-addGrpB.h" +#include "Position3D-addGrpC.h" +#include "MapData-addGrpC.h" +#include "RestrictionUserType-addGrpC.h" +#include "ConnectionManeuverAssist-addGrpC.h" +#include "IntersectionState-addGrpC.h" +#include "MovementEvent-addGrpB.h" +#include "BasicSafetyMessage-addGrpCarma.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Reg_BasicSafetyMessage__regExtValue_PR { + Reg_BasicSafetyMessage__regExtValue_PR_NOTHING, /* No components present */ + Reg_BasicSafetyMessage__regExtValue_PR_BasicSafetyMessage_addGrpCarma +} Reg_BasicSafetyMessage__regExtValue_PR; +typedef enum Reg_EventDescription__regExtValue_PR { + Reg_EventDescription__regExtValue_PR_NOTHING /* No components present */ + +} Reg_EventDescription__regExtValue_PR; +typedef enum Reg_SupplementalVehicleExtensions__regExtValue_PR { + Reg_SupplementalVehicleExtensions__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SupplementalVehicleExtensions__regExtValue_PR; +typedef enum Reg_ComputedLane__regExtValue_PR { + Reg_ComputedLane__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ComputedLane__regExtValue_PR; +typedef enum Reg_LaneDataAttribute__regExtValue_PR { + Reg_LaneDataAttribute__regExtValue_PR_NOTHING, /* No components present */ + Reg_LaneDataAttribute__regExtValue_PR_LaneDataAttribute_addGrpB +} Reg_LaneDataAttribute__regExtValue_PR; +typedef enum Reg_NodeAttributeSetXY__regExtValue_PR { + Reg_NodeAttributeSetXY__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeAttributeSetXY__regExtValue_PR; +typedef enum Reg_NodeOffsetPointXY__regExtValue_PR { + Reg_NodeOffsetPointXY__regExtValue_PR_NOTHING, /* No components present */ + Reg_NodeOffsetPointXY__regExtValue_PR_NodeOffsetPointXY_addGrpB +} Reg_NodeOffsetPointXY__regExtValue_PR; +typedef enum Reg_Position3D__regExtValue_PR { + Reg_Position3D__regExtValue_PR_NOTHING, /* No components present */ + Reg_Position3D__regExtValue_PR_Position3D_addGrpB, + Reg_Position3D__regExtValue_PR_Position3D_addGrpC +} Reg_Position3D__regExtValue_PR; +typedef enum Reg_RequestorType__regExtValue_PR { + Reg_RequestorType__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RequestorType__regExtValue_PR; +typedef enum Reg_VehicleClassification__regExtValue_PR { + Reg_VehicleClassification__regExtValue_PR_NOTHING /* No components present */ + +} Reg_VehicleClassification__regExtValue_PR; +typedef enum Reg_VerticalOffset__regExtValue_PR { + Reg_VerticalOffset__regExtValue_PR_NOTHING /* No components present */ + +} Reg_VerticalOffset__regExtValue_PR; +typedef enum Reg_CommonSafetyRequest__regExtValue_PR { + Reg_CommonSafetyRequest__regExtValue_PR_NOTHING /* No components present */ + +} Reg_CommonSafetyRequest__regExtValue_PR; +typedef enum Reg_EmergencyVehicleAlert__regExtValue_PR { + Reg_EmergencyVehicleAlert__regExtValue_PR_NOTHING /* No components present */ + +} Reg_EmergencyVehicleAlert__regExtValue_PR; +typedef enum Reg_IntersectionCollision__regExtValue_PR { + Reg_IntersectionCollision__regExtValue_PR_NOTHING /* No components present */ + +} Reg_IntersectionCollision__regExtValue_PR; +typedef enum Reg_MapData__regExtValue_PR { + Reg_MapData__regExtValue_PR_NOTHING, /* No components present */ + Reg_MapData__regExtValue_PR_MapData_addGrpC +} Reg_MapData__regExtValue_PR; +typedef enum Reg_GenericLane__regExtValue_PR { + Reg_GenericLane__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GenericLane__regExtValue_PR; +typedef enum Reg_IntersectionGeometry__regExtValue_PR { + Reg_IntersectionGeometry__regExtValue_PR_NOTHING /* No components present */ + +} Reg_IntersectionGeometry__regExtValue_PR; +typedef enum Reg_LaneAttributes__regExtValue_PR { + Reg_LaneAttributes__regExtValue_PR_NOTHING /* No components present */ + +} Reg_LaneAttributes__regExtValue_PR; +typedef enum Reg_SignalControlZone__regExtValue_PR { + Reg_SignalControlZone__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalControlZone__regExtValue_PR; +typedef enum Reg_RestrictionUserType__regExtValue_PR { + Reg_RestrictionUserType__regExtValue_PR_NOTHING, /* No components present */ + Reg_RestrictionUserType__regExtValue_PR_RestrictionUserType_addGrpC +} Reg_RestrictionUserType__regExtValue_PR; +typedef enum Reg_RoadSegment__regExtValue_PR { + Reg_RoadSegment__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RoadSegment__regExtValue_PR; +typedef enum Reg_NMEAcorrections__regExtValue_PR { + Reg_NMEAcorrections__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NMEAcorrections__regExtValue_PR; +typedef enum Reg_PersonalSafetyMessage__regExtValue_PR { + Reg_PersonalSafetyMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_PersonalSafetyMessage__regExtValue_PR; +typedef enum Reg_ProbeDataManagement__regExtValue_PR { + Reg_ProbeDataManagement__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ProbeDataManagement__regExtValue_PR; +typedef enum Reg_ProbeVehicleData__regExtValue_PR { + Reg_ProbeVehicleData__regExtValue_PR_NOTHING /* No components present */ + +} Reg_ProbeVehicleData__regExtValue_PR; +typedef enum Reg_RoadSideAlert__regExtValue_PR { + Reg_RoadSideAlert__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RoadSideAlert__regExtValue_PR; +typedef enum Reg_RTCMcorrections__regExtValue_PR { + Reg_RTCMcorrections__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RTCMcorrections__regExtValue_PR; +typedef enum Reg_SignalRequestMessage__regExtValue_PR { + Reg_SignalRequestMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequestMessage__regExtValue_PR; +typedef enum Reg_RequestorDescription__regExtValue_PR { + Reg_RequestorDescription__regExtValue_PR_NOTHING /* No components present */ + +} Reg_RequestorDescription__regExtValue_PR; +typedef enum Reg_SignalRequestPackage__regExtValue_PR { + Reg_SignalRequestPackage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequestPackage__regExtValue_PR; +typedef enum Reg_SignalRequest__regExtValue_PR { + Reg_SignalRequest__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalRequest__regExtValue_PR; +typedef enum Reg_SignalStatusMessage__regExtValue_PR { + Reg_SignalStatusMessage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatusMessage__regExtValue_PR; +typedef enum Reg_SignalStatusPackage__regExtValue_PR { + Reg_SignalStatusPackage__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatusPackage__regExtValue_PR; +typedef enum Reg_SignalStatus__regExtValue_PR { + Reg_SignalStatus__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SignalStatus__regExtValue_PR; +typedef enum Reg_SPAT__regExtValue_PR { + Reg_SPAT__regExtValue_PR_NOTHING /* No components present */ + +} Reg_SPAT__regExtValue_PR; +typedef enum Reg_AdvisorySpeed__regExtValue_PR { + Reg_AdvisorySpeed__regExtValue_PR_NOTHING /* No components present */ + +} Reg_AdvisorySpeed__regExtValue_PR; +typedef enum Reg_ConnectionManeuverAssist__regExtValue_PR { + Reg_ConnectionManeuverAssist__regExtValue_PR_NOTHING, /* No components present */ + Reg_ConnectionManeuverAssist__regExtValue_PR_ConnectionManeuverAssist_addGrpC +} Reg_ConnectionManeuverAssist__regExtValue_PR; +typedef enum Reg_IntersectionState__regExtValue_PR { + Reg_IntersectionState__regExtValue_PR_NOTHING, /* No components present */ + Reg_IntersectionState__regExtValue_PR_IntersectionState_addGrpC +} Reg_IntersectionState__regExtValue_PR; +typedef enum Reg_MovementEvent__regExtValue_PR { + Reg_MovementEvent__regExtValue_PR_NOTHING, /* No components present */ + Reg_MovementEvent__regExtValue_PR_MovementEvent_addGrpB +} Reg_MovementEvent__regExtValue_PR; +typedef enum Reg_MovementState__regExtValue_PR { + Reg_MovementState__regExtValue_PR_NOTHING /* No components present */ + +} Reg_MovementState__regExtValue_PR; +typedef enum Reg_TestMessage00__regExtValue_PR { + Reg_TestMessage00__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage00__regExtValue_PR; +typedef enum Reg_TestMessage01__regExtValue_PR { + Reg_TestMessage01__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage01__regExtValue_PR; +typedef enum Reg_TestMessage02__regExtValue_PR { + Reg_TestMessage02__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage02__regExtValue_PR; +typedef enum Reg_TestMessage03__regExtValue_PR { + Reg_TestMessage03__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage03__regExtValue_PR; +typedef enum Reg_TestMessage04__regExtValue_PR { + Reg_TestMessage04__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage04__regExtValue_PR; +typedef enum Reg_TestMessage05__regExtValue_PR { + Reg_TestMessage05__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage05__regExtValue_PR; +typedef enum Reg_TestMessage06__regExtValue_PR { + Reg_TestMessage06__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage06__regExtValue_PR; +typedef enum Reg_TestMessage07__regExtValue_PR { + Reg_TestMessage07__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage07__regExtValue_PR; +typedef enum Reg_TestMessage08__regExtValue_PR { + Reg_TestMessage08__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage08__regExtValue_PR; +typedef enum Reg_TestMessage09__regExtValue_PR { + Reg_TestMessage09__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage09__regExtValue_PR; +typedef enum Reg_TestMessage10__regExtValue_PR { + Reg_TestMessage10__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage10__regExtValue_PR; +typedef enum Reg_TestMessage11__regExtValue_PR { + Reg_TestMessage11__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage11__regExtValue_PR; +typedef enum Reg_TestMessage12__regExtValue_PR { + Reg_TestMessage12__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage12__regExtValue_PR; +typedef enum Reg_TestMessage13__regExtValue_PR { + Reg_TestMessage13__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage13__regExtValue_PR; +typedef enum Reg_TestMessage14__regExtValue_PR { + Reg_TestMessage14__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage14__regExtValue_PR; +typedef enum Reg_TestMessage15__regExtValue_PR { + Reg_TestMessage15__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TestMessage15__regExtValue_PR; +typedef enum Reg_TravelerInformation__regExtValue_PR { + Reg_TravelerInformation__regExtValue_PR_NOTHING /* No components present */ + +} Reg_TravelerInformation__regExtValue_PR; +typedef enum Reg_GeographicalPath__regExtValue_PR { + Reg_GeographicalPath__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GeographicalPath__regExtValue_PR; +typedef enum Reg_GeometricProjection__regExtValue_PR { + Reg_GeometricProjection__regExtValue_PR_NOTHING /* No components present */ + +} Reg_GeometricProjection__regExtValue_PR; +typedef enum Reg_NodeAttributeSetLL__regExtValue_PR { + Reg_NodeAttributeSetLL__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeAttributeSetLL__regExtValue_PR; +typedef enum Reg_NodeOffsetPointLL__regExtValue_PR { + Reg_NodeOffsetPointLL__regExtValue_PR_NOTHING /* No components present */ + +} Reg_NodeOffsetPointLL__regExtValue_PR; + +/* RegionalExtension */ +typedef struct Reg_BasicSafetyMessage { + RegionId_t regionId; + struct Reg_BasicSafetyMessage__regExtValue { + Reg_BasicSafetyMessage__regExtValue_PR present; + union Reg_BasicSafetyMessage__regExtValue_u { + BasicSafetyMessage_addGrpCarma_t BasicSafetyMessage_addGrpCarma; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_BasicSafetyMessage_t; +typedef struct Reg_EventDescription { + RegionId_t regionId; + struct Reg_EventDescription__regExtValue { + Reg_EventDescription__regExtValue_PR present; + union Reg_EventDescription__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_EventDescription_t; +typedef struct Reg_SupplementalVehicleExtensions { + RegionId_t regionId; + struct Reg_SupplementalVehicleExtensions__regExtValue { + Reg_SupplementalVehicleExtensions__regExtValue_PR present; + union Reg_SupplementalVehicleExtensions__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SupplementalVehicleExtensions_t; +typedef struct Reg_ComputedLane { + RegionId_t regionId; + struct Reg_ComputedLane__regExtValue { + Reg_ComputedLane__regExtValue_PR present; + union Reg_ComputedLane__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ComputedLane_t; +typedef struct Reg_LaneDataAttribute { + RegionId_t regionId; + struct Reg_LaneDataAttribute__regExtValue { + Reg_LaneDataAttribute__regExtValue_PR present; + union Reg_LaneDataAttribute__regExtValue_u { + LaneDataAttribute_addGrpB_t LaneDataAttribute_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneDataAttribute_t; +typedef struct Reg_NodeAttributeSetXY { + RegionId_t regionId; + struct Reg_NodeAttributeSetXY__regExtValue { + Reg_NodeAttributeSetXY__regExtValue_PR present; + union Reg_NodeAttributeSetXY__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeAttributeSetXY_t; +typedef struct Reg_NodeOffsetPointXY { + RegionId_t regionId; + struct Reg_NodeOffsetPointXY__regExtValue { + Reg_NodeOffsetPointXY__regExtValue_PR present; + union Reg_NodeOffsetPointXY__regExtValue_u { + NodeOffsetPointXY_addGrpB_t NodeOffsetPointXY_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeOffsetPointXY_t; +typedef struct Reg_Position3D { + RegionId_t regionId; + struct Reg_Position3D__regExtValue { + Reg_Position3D__regExtValue_PR present; + union Reg_Position3D__regExtValue_u { + Position3D_addGrpB_t Position3D_addGrpB; + Position3D_addGrpC_t Position3D_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_Position3D_t; +typedef struct Reg_RequestorType { + RegionId_t regionId; + struct Reg_RequestorType__regExtValue { + Reg_RequestorType__regExtValue_PR present; + union Reg_RequestorType__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RequestorType_t; +typedef struct Reg_VehicleClassification { + RegionId_t regionId; + struct Reg_VehicleClassification__regExtValue { + Reg_VehicleClassification__regExtValue_PR present; + union Reg_VehicleClassification__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_VehicleClassification_t; +typedef struct Reg_VerticalOffset { + RegionId_t regionId; + struct Reg_VerticalOffset__regExtValue { + Reg_VerticalOffset__regExtValue_PR present; + union Reg_VerticalOffset__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_VerticalOffset_t; +typedef struct Reg_CommonSafetyRequest { + RegionId_t regionId; + struct Reg_CommonSafetyRequest__regExtValue { + Reg_CommonSafetyRequest__regExtValue_PR present; + union Reg_CommonSafetyRequest__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_CommonSafetyRequest_t; +typedef struct Reg_EmergencyVehicleAlert { + RegionId_t regionId; + struct Reg_EmergencyVehicleAlert__regExtValue { + Reg_EmergencyVehicleAlert__regExtValue_PR present; + union Reg_EmergencyVehicleAlert__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_EmergencyVehicleAlert_t; +typedef struct Reg_IntersectionCollision { + RegionId_t regionId; + struct Reg_IntersectionCollision__regExtValue { + Reg_IntersectionCollision__regExtValue_PR present; + union Reg_IntersectionCollision__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionCollision_t; +typedef struct Reg_MapData { + RegionId_t regionId; + struct Reg_MapData__regExtValue { + Reg_MapData__regExtValue_PR present; + union Reg_MapData__regExtValue_u { + MapData_addGrpC_t MapData_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MapData_t; +typedef struct Reg_GenericLane { + RegionId_t regionId; + struct Reg_GenericLane__regExtValue { + Reg_GenericLane__regExtValue_PR present; + union Reg_GenericLane__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GenericLane_t; +typedef struct Reg_IntersectionGeometry { + RegionId_t regionId; + struct Reg_IntersectionGeometry__regExtValue { + Reg_IntersectionGeometry__regExtValue_PR present; + union Reg_IntersectionGeometry__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionGeometry_t; +typedef struct Reg_LaneAttributes { + RegionId_t regionId; + struct Reg_LaneAttributes__regExtValue { + Reg_LaneAttributes__regExtValue_PR present; + union Reg_LaneAttributes__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneAttributes_t; +typedef struct Reg_SignalControlZone { + RegionId_t regionId; + struct Reg_SignalControlZone__regExtValue { + Reg_SignalControlZone__regExtValue_PR present; + union Reg_SignalControlZone__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalControlZone_t; +typedef struct Reg_RestrictionUserType { + RegionId_t regionId; + struct Reg_RestrictionUserType__regExtValue { + Reg_RestrictionUserType__regExtValue_PR present; + union Reg_RestrictionUserType__regExtValue_u { + RestrictionUserType_addGrpC_t RestrictionUserType_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RestrictionUserType_t; +typedef struct Reg_RoadSegment { + RegionId_t regionId; + struct Reg_RoadSegment__regExtValue { + Reg_RoadSegment__regExtValue_PR present; + union Reg_RoadSegment__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RoadSegment_t; +typedef struct Reg_NMEAcorrections { + RegionId_t regionId; + struct Reg_NMEAcorrections__regExtValue { + Reg_NMEAcorrections__regExtValue_PR present; + union Reg_NMEAcorrections__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NMEAcorrections_t; +typedef struct Reg_PersonalSafetyMessage { + RegionId_t regionId; + struct Reg_PersonalSafetyMessage__regExtValue { + Reg_PersonalSafetyMessage__regExtValue_PR present; + union Reg_PersonalSafetyMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_PersonalSafetyMessage_t; +typedef struct Reg_ProbeDataManagement { + RegionId_t regionId; + struct Reg_ProbeDataManagement__regExtValue { + Reg_ProbeDataManagement__regExtValue_PR present; + union Reg_ProbeDataManagement__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ProbeDataManagement_t; +typedef struct Reg_ProbeVehicleData { + RegionId_t regionId; + struct Reg_ProbeVehicleData__regExtValue { + Reg_ProbeVehicleData__regExtValue_PR present; + union Reg_ProbeVehicleData__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ProbeVehicleData_t; +typedef struct Reg_RoadSideAlert { + RegionId_t regionId; + struct Reg_RoadSideAlert__regExtValue { + Reg_RoadSideAlert__regExtValue_PR present; + union Reg_RoadSideAlert__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RoadSideAlert_t; +typedef struct Reg_RTCMcorrections { + RegionId_t regionId; + struct Reg_RTCMcorrections__regExtValue { + Reg_RTCMcorrections__regExtValue_PR present; + union Reg_RTCMcorrections__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RTCMcorrections_t; +typedef struct Reg_SignalRequestMessage { + RegionId_t regionId; + struct Reg_SignalRequestMessage__regExtValue { + Reg_SignalRequestMessage__regExtValue_PR present; + union Reg_SignalRequestMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequestMessage_t; +typedef struct Reg_RequestorDescription { + RegionId_t regionId; + struct Reg_RequestorDescription__regExtValue { + Reg_RequestorDescription__regExtValue_PR present; + union Reg_RequestorDescription__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RequestorDescription_t; +typedef struct Reg_SignalRequestPackage { + RegionId_t regionId; + struct Reg_SignalRequestPackage__regExtValue { + Reg_SignalRequestPackage__regExtValue_PR present; + union Reg_SignalRequestPackage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequestPackage_t; +typedef struct Reg_SignalRequest { + RegionId_t regionId; + struct Reg_SignalRequest__regExtValue { + Reg_SignalRequest__regExtValue_PR present; + union Reg_SignalRequest__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalRequest_t; +typedef struct Reg_SignalStatusMessage { + RegionId_t regionId; + struct Reg_SignalStatusMessage__regExtValue { + Reg_SignalStatusMessage__regExtValue_PR present; + union Reg_SignalStatusMessage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatusMessage_t; +typedef struct Reg_SignalStatusPackage { + RegionId_t regionId; + struct Reg_SignalStatusPackage__regExtValue { + Reg_SignalStatusPackage__regExtValue_PR present; + union Reg_SignalStatusPackage__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatusPackage_t; +typedef struct Reg_SignalStatus { + RegionId_t regionId; + struct Reg_SignalStatus__regExtValue { + Reg_SignalStatus__regExtValue_PR present; + union Reg_SignalStatus__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalStatus_t; +typedef struct Reg_SPAT { + RegionId_t regionId; + struct Reg_SPAT__regExtValue { + Reg_SPAT__regExtValue_PR present; + union Reg_SPAT__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SPAT_t; +typedef struct Reg_AdvisorySpeed { + RegionId_t regionId; + struct Reg_AdvisorySpeed__regExtValue { + Reg_AdvisorySpeed__regExtValue_PR present; + union Reg_AdvisorySpeed__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_AdvisorySpeed_t; +typedef struct Reg_ConnectionManeuverAssist { + RegionId_t regionId; + struct Reg_ConnectionManeuverAssist__regExtValue { + Reg_ConnectionManeuverAssist__regExtValue_PR present; + union Reg_ConnectionManeuverAssist__regExtValue_u { + ConnectionManeuverAssist_addGrpC_t ConnectionManeuverAssist_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ConnectionManeuverAssist_t; +typedef struct Reg_IntersectionState { + RegionId_t regionId; + struct Reg_IntersectionState__regExtValue { + Reg_IntersectionState__regExtValue_PR present; + union Reg_IntersectionState__regExtValue_u { + IntersectionState_addGrpC_t IntersectionState_addGrpC; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionState_t; +typedef struct Reg_MovementEvent { + RegionId_t regionId; + struct Reg_MovementEvent__regExtValue { + Reg_MovementEvent__regExtValue_PR present; + union Reg_MovementEvent__regExtValue_u { + MovementEvent_addGrpB_t MovementEvent_addGrpB; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementEvent_t; +typedef struct Reg_MovementState { + RegionId_t regionId; + struct Reg_MovementState__regExtValue { + Reg_MovementState__regExtValue_PR present; + union Reg_MovementState__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementState_t; +typedef struct Reg_TestMessage00 { + RegionId_t regionId; + struct Reg_TestMessage00__regExtValue { + Reg_TestMessage00__regExtValue_PR present; + union Reg_TestMessage00__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage00_t; +typedef struct Reg_TestMessage01 { + RegionId_t regionId; + struct Reg_TestMessage01__regExtValue { + Reg_TestMessage01__regExtValue_PR present; + union Reg_TestMessage01__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage01_t; +typedef struct Reg_TestMessage02 { + RegionId_t regionId; + struct Reg_TestMessage02__regExtValue { + Reg_TestMessage02__regExtValue_PR present; + union Reg_TestMessage02__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage02_t; +typedef struct Reg_TestMessage03 { + RegionId_t regionId; + struct Reg_TestMessage03__regExtValue { + Reg_TestMessage03__regExtValue_PR present; + union Reg_TestMessage03__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage03_t; +typedef struct Reg_TestMessage04 { + RegionId_t regionId; + struct Reg_TestMessage04__regExtValue { + Reg_TestMessage04__regExtValue_PR present; + union Reg_TestMessage04__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage04_t; +typedef struct Reg_TestMessage05 { + RegionId_t regionId; + struct Reg_TestMessage05__regExtValue { + Reg_TestMessage05__regExtValue_PR present; + union Reg_TestMessage05__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage05_t; +typedef struct Reg_TestMessage06 { + RegionId_t regionId; + struct Reg_TestMessage06__regExtValue { + Reg_TestMessage06__regExtValue_PR present; + union Reg_TestMessage06__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage06_t; +typedef struct Reg_TestMessage07 { + RegionId_t regionId; + struct Reg_TestMessage07__regExtValue { + Reg_TestMessage07__regExtValue_PR present; + union Reg_TestMessage07__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage07_t; +typedef struct Reg_TestMessage08 { + RegionId_t regionId; + struct Reg_TestMessage08__regExtValue { + Reg_TestMessage08__regExtValue_PR present; + union Reg_TestMessage08__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage08_t; +typedef struct Reg_TestMessage09 { + RegionId_t regionId; + struct Reg_TestMessage09__regExtValue { + Reg_TestMessage09__regExtValue_PR present; + union Reg_TestMessage09__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage09_t; +typedef struct Reg_TestMessage10 { + RegionId_t regionId; + struct Reg_TestMessage10__regExtValue { + Reg_TestMessage10__regExtValue_PR present; + union Reg_TestMessage10__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage10_t; +typedef struct Reg_TestMessage11 { + RegionId_t regionId; + struct Reg_TestMessage11__regExtValue { + Reg_TestMessage11__regExtValue_PR present; + union Reg_TestMessage11__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage11_t; +typedef struct Reg_TestMessage12 { + RegionId_t regionId; + struct Reg_TestMessage12__regExtValue { + Reg_TestMessage12__regExtValue_PR present; + union Reg_TestMessage12__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage12_t; +typedef struct Reg_TestMessage13 { + RegionId_t regionId; + struct Reg_TestMessage13__regExtValue { + Reg_TestMessage13__regExtValue_PR present; + union Reg_TestMessage13__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage13_t; +typedef struct Reg_TestMessage14 { + RegionId_t regionId; + struct Reg_TestMessage14__regExtValue { + Reg_TestMessage14__regExtValue_PR present; + union Reg_TestMessage14__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage14_t; +typedef struct Reg_TestMessage15 { + RegionId_t regionId; + struct Reg_TestMessage15__regExtValue { + Reg_TestMessage15__regExtValue_PR present; + union Reg_TestMessage15__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TestMessage15_t; +typedef struct Reg_TravelerInformation { + RegionId_t regionId; + struct Reg_TravelerInformation__regExtValue { + Reg_TravelerInformation__regExtValue_PR present; + union Reg_TravelerInformation__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_TravelerInformation_t; +typedef struct Reg_GeographicalPath { + RegionId_t regionId; + struct Reg_GeographicalPath__regExtValue { + Reg_GeographicalPath__regExtValue_PR present; + union Reg_GeographicalPath__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GeographicalPath_t; +typedef struct Reg_GeometricProjection { + RegionId_t regionId; + struct Reg_GeometricProjection__regExtValue { + Reg_GeometricProjection__regExtValue_PR present; + union Reg_GeometricProjection__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GeometricProjection_t; +typedef struct Reg_NodeAttributeSetLL { + RegionId_t regionId; + struct Reg_NodeAttributeSetLL__regExtValue { + Reg_NodeAttributeSetLL__regExtValue_PR present; + union Reg_NodeAttributeSetLL__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeAttributeSetLL_t; +typedef struct Reg_NodeOffsetPointLL { + RegionId_t regionId; + struct Reg_NodeOffsetPointLL__regExtValue { + Reg_NodeOffsetPointLL__regExtValue_PR present; + union Reg_NodeOffsetPointLL__regExtValue_u { + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeOffsetPointLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4; +extern asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7; +extern asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10; +extern asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13; +extern asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16; +extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19; +extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_Position3D; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22; +extern asn_TYPE_member_t asn_MBR_Reg_Position3D_22[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25; +extern asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28; +extern asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31; +extern asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34; +extern asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37; +extern asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MapData; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43; +extern asn_TYPE_member_t asn_MBR_Reg_MapData_43[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46; +extern asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52; +extern asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55; +extern asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58; +extern asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61; +extern asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64; +extern asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67; +extern asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70; +extern asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73; +extern asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76; +extern asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79; +extern asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85; +extern asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91; +extern asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100; +extern asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_SPAT; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103; +extern asn_TYPE_member_t asn_MBR_Reg_SPAT_103[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106; +extern asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109; +extern asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112; +extern asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115; +extern asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementState; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118; +extern asn_TYPE_member_t asn_MBR_Reg_MovementState_118[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166; +extern asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169; +extern asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172; +extern asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175; +extern asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178; +extern asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[2]; +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181; +extern asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalExtension_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegulatorySpeedLimit.h new file mode 100644 index 000000000..9af1c9ac3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegulatorySpeedLimit.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RegulatorySpeedLimit_H_ +#define _RegulatorySpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedLimitType.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegulatorySpeedLimit */ +typedef struct RegulatorySpeedLimit { + SpeedLimitType_t type; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegulatorySpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; +extern asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegulatorySpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RepeatParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RepeatParams.h new file mode 100644 index 000000000..6f840bae7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RepeatParams.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RepeatParams_H_ +#define _RepeatParams_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RepeatParams */ +typedef struct RepeatParams { + long offset; + long period; + long span; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RepeatParams_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RepeatParams; +extern asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1; +extern asn_TYPE_member_t asn_MBR_RepeatParams_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RepeatParams_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestID.h new file mode 100644 index 000000000..da105e8cd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestID_H_ +#define _RequestID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestID */ +typedef long RequestID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestID; +asn_struct_free_f RequestID_free; +asn_struct_print_f RequestID_print; +asn_constr_check_f RequestID_constraint; +ber_type_decoder_f RequestID_decode_ber; +der_type_encoder_f RequestID_encode_der; +xer_type_decoder_f RequestID_decode_xer; +xer_type_encoder_f RequestID_encode_xer; +oer_type_decoder_f RequestID_decode_oer; +oer_type_encoder_f RequestID_encode_oer; +per_type_decoder_f RequestID_decode_uper; +per_type_encoder_f RequestID_encode_uper; +per_type_decoder_f RequestID_decode_aper; +per_type_encoder_f RequestID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestImportanceLevel.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestImportanceLevel.h new file mode 100644 index 000000000..53b511b19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestImportanceLevel.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestImportanceLevel_H_ +#define _RequestImportanceLevel_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestImportanceLevel { + RequestImportanceLevel_requestImportanceLevelUnKnown = 0, + RequestImportanceLevel_requestImportanceLevel1 = 1, + RequestImportanceLevel_requestImportanceLevel2 = 2, + RequestImportanceLevel_requestImportanceLevel3 = 3, + RequestImportanceLevel_requestImportanceLevel4 = 4, + RequestImportanceLevel_requestImportanceLevel5 = 5, + RequestImportanceLevel_requestImportanceLevel6 = 6, + RequestImportanceLevel_requestImportanceLevel7 = 7, + RequestImportanceLevel_requestImportanceLevel8 = 8, + RequestImportanceLevel_requestImportanceLevel9 = 9, + RequestImportanceLevel_requestImportanceLevel10 = 10, + RequestImportanceLevel_requestImportanceLevel11 = 11, + RequestImportanceLevel_requestImportanceLevel12 = 12, + RequestImportanceLevel_requestImportanceLevel13 = 13, + RequestImportanceLevel_requestImportanceLevel14 = 14, + RequestImportanceLevel_requestImportanceReserved = 15 +} e_RequestImportanceLevel; + +/* RequestImportanceLevel */ +typedef long RequestImportanceLevel_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel; +extern const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1; +asn_struct_free_f RequestImportanceLevel_free; +asn_struct_print_f RequestImportanceLevel_print; +asn_constr_check_f RequestImportanceLevel_constraint; +ber_type_decoder_f RequestImportanceLevel_decode_ber; +der_type_encoder_f RequestImportanceLevel_encode_der; +xer_type_decoder_f RequestImportanceLevel_decode_xer; +xer_type_encoder_f RequestImportanceLevel_encode_xer; +oer_type_decoder_f RequestImportanceLevel_decode_oer; +oer_type_encoder_f RequestImportanceLevel_encode_oer; +per_type_decoder_f RequestImportanceLevel_decode_uper; +per_type_encoder_f RequestImportanceLevel_encode_uper; +per_type_decoder_f RequestImportanceLevel_decode_aper; +per_type_encoder_f RequestImportanceLevel_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestImportanceLevel_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestSubRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestSubRole.h new file mode 100644 index 000000000..b0a1ad5a6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestSubRole.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestSubRole_H_ +#define _RequestSubRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestSubRole { + RequestSubRole_requestSubRoleUnKnown = 0, + RequestSubRole_requestSubRole1 = 1, + RequestSubRole_requestSubRole2 = 2, + RequestSubRole_requestSubRole3 = 3, + RequestSubRole_requestSubRole4 = 4, + RequestSubRole_requestSubRole5 = 5, + RequestSubRole_requestSubRole6 = 6, + RequestSubRole_requestSubRole7 = 7, + RequestSubRole_requestSubRole8 = 8, + RequestSubRole_requestSubRole9 = 9, + RequestSubRole_requestSubRole10 = 10, + RequestSubRole_requestSubRole11 = 11, + RequestSubRole_requestSubRole12 = 12, + RequestSubRole_requestSubRole13 = 13, + RequestSubRole_requestSubRole14 = 14, + RequestSubRole_requestSubRoleReserved = 15 +} e_RequestSubRole; + +/* RequestSubRole */ +typedef long RequestSubRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestSubRole; +extern const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1; +asn_struct_free_f RequestSubRole_free; +asn_struct_print_f RequestSubRole_print; +asn_constr_check_f RequestSubRole_constraint; +ber_type_decoder_f RequestSubRole_decode_ber; +der_type_encoder_f RequestSubRole_encode_der; +xer_type_decoder_f RequestSubRole_decode_xer; +xer_type_encoder_f RequestSubRole_encode_xer; +oer_type_decoder_f RequestSubRole_decode_oer; +oer_type_encoder_f RequestSubRole_encode_oer; +per_type_decoder_f RequestSubRole_decode_uper; +per_type_encoder_f RequestSubRole_encode_uper; +per_type_decoder_f RequestSubRole_decode_aper; +per_type_encoder_f RequestSubRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestSubRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItem.h new file mode 100644 index 000000000..2ce205b78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItem.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestedItem_H_ +#define _RequestedItem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestedItem { + RequestedItem_reserved = 0, + RequestedItem_itemA = 1, + RequestedItem_itemB = 2, + RequestedItem_itemC = 3, + RequestedItem_itemD = 4, + RequestedItem_itemE = 5, + RequestedItem_itemF = 6, + RequestedItem_itemG = 7, + RequestedItem_itemI = 8, + RequestedItem_itemJ = 9, + RequestedItem_itemK = 10, + RequestedItem_itemL = 11, + RequestedItem_itemM = 12, + RequestedItem_itemN = 13, + RequestedItem_itemO = 14, + RequestedItem_itemP = 15, + RequestedItem_itemQ = 16 + /* + * Enumeration is extensible + */ +} e_RequestedItem; + +/* RequestedItem */ +typedef long RequestedItem_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestedItem_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; +extern const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1; +asn_struct_free_f RequestedItem_free; +asn_struct_print_f RequestedItem_print; +asn_constr_check_f RequestedItem_constraint; +ber_type_decoder_f RequestedItem_decode_ber; +der_type_encoder_f RequestedItem_encode_der; +xer_type_decoder_f RequestedItem_decode_xer; +xer_type_encoder_f RequestedItem_encode_xer; +oer_type_decoder_f RequestedItem_decode_oer; +oer_type_encoder_f RequestedItem_encode_oer; +per_type_decoder_f RequestedItem_decode_uper; +per_type_encoder_f RequestedItem_encode_uper; +per_type_decoder_f RequestedItem_decode_aper; +per_type_encoder_f RequestedItem_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItemList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItemList.h new file mode 100644 index 000000000..e7c8c0ec3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestedItemList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestedItemList_H_ +#define _RequestedItemList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RequestedItem.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestedItemList */ +typedef struct RequestedItemList { + A_SEQUENCE_OF(RequestedItem_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestedItemList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestedItemList; +extern asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestedItemList_1[1]; +extern asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItemList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorDescription.h new file mode 100644 index 000000000..a7d033d25 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorDescription.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestorDescription_H_ +#define _RequestorDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "DescriptiveName.h" +#include "TransitVehicleStatus.h" +#include "TransitVehicleOccupancy.h" +#include "DeltaTime.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; +struct RequestorPositionVector; +struct Reg_RequestorDescription; + +/* RequestorDescription */ +typedef struct RequestorDescription { + VehicleID_t id; + struct RequestorType *type; /* OPTIONAL */ + struct RequestorPositionVector *position; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + DescriptiveName_t *routeName; /* OPTIONAL */ + TransitVehicleStatus_t *transitStatus; /* OPTIONAL */ + TransitVehicleOccupancy_t *transitOccupancy; /* OPTIONAL */ + DeltaTime_t *transitSchedule; /* OPTIONAL */ + struct RequestorDescription__regional { + A_SEQUENCE_OF(struct Reg_RequestorDescription) 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; +} RequestorDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorDescription_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RequestorType.h" +#include "RequestorPositionVector.h" +#include "RegionalExtension.h" + +#endif /* _RequestorDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorPositionVector.h new file mode 100644 index 000000000..02ba57874 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorPositionVector.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestorPositionVector_H_ +#define _RequestorPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "Common_Angle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TransmissionAndSpeed; + +/* RequestorPositionVector */ +typedef struct RequestorPositionVector { + Position3D_t position; + Common_Angle_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TransmissionAndSpeed.h" + +#endif /* _RequestorPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorType.h new file mode 100644 index 000000000..76eb34fe1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RequestorType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RequestorType_H_ +#define _RequestorType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleRole.h" +#include "RequestSubRole.h" +#include "RequestImportanceLevel.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_RequestorType; + +/* RequestorType */ +typedef struct RequestorType { + BasicVehicleRole_t role; + RequestSubRole_t *subrole; /* OPTIONAL */ + RequestImportanceLevel_t *request; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + struct Reg_RequestorType *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorType; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorType_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _RequestorType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponderGroupAffected.h new file mode 100644 index 000000000..328ee2d5a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponderGroupAffected.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ResponderGroupAffected_H_ +#define _ResponderGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponderGroupAffected { + ResponderGroupAffected_emergency_vehicle_units = 9729, + ResponderGroupAffected_federal_law_enforcement_units = 9730, + ResponderGroupAffected_state_police_units = 9731, + ResponderGroupAffected_county_police_units = 9732, + ResponderGroupAffected_local_police_units = 9733, + ResponderGroupAffected_ambulance_units = 9734, + ResponderGroupAffected_rescue_units = 9735, + ResponderGroupAffected_fire_units = 9736, + ResponderGroupAffected_hAZMAT_units = 9737, + ResponderGroupAffected_light_tow_unit = 9738, + ResponderGroupAffected_heavy_tow_unit = 9739, + ResponderGroupAffected_freeway_service_patrols = 9740, + ResponderGroupAffected_transportation_response_units = 9741, + ResponderGroupAffected_private_contractor_response_units = 9742 + /* + * Enumeration is extensible + */ +} e_ResponderGroupAffected; + +/* ResponderGroupAffected */ +typedef long ResponderGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1; +asn_struct_free_f ResponderGroupAffected_free; +asn_struct_print_f ResponderGroupAffected_print; +asn_constr_check_f ResponderGroupAffected_constraint; +ber_type_decoder_f ResponderGroupAffected_decode_ber; +der_type_encoder_f ResponderGroupAffected_encode_der; +xer_type_decoder_f ResponderGroupAffected_decode_xer; +xer_type_encoder_f ResponderGroupAffected_encode_xer; +oer_type_decoder_f ResponderGroupAffected_decode_oer; +oer_type_encoder_f ResponderGroupAffected_encode_oer; +per_type_decoder_f ResponderGroupAffected_decode_uper; +per_type_encoder_f ResponderGroupAffected_encode_uper; +per_type_decoder_f ResponderGroupAffected_decode_aper; +per_type_encoder_f ResponderGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponderGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponseType.h new file mode 100644 index 000000000..65580dc8e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ResponseType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ResponseType_H_ +#define _ResponseType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponseType { + ResponseType_notInUseOrNotEquipped = 0, + ResponseType_emergency = 1, + ResponseType_nonEmergency = 2, + ResponseType_pursuit = 3, + ResponseType_stationary = 4, + ResponseType_slowMoving = 5, + ResponseType_stopAndGoMovement = 6 + /* + * Enumeration is extensible + */ +} e_ResponseType; + +/* ResponseType */ +typedef long ResponseType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponseType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponseType; +extern const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1; +asn_struct_free_f ResponseType_free; +asn_struct_print_f ResponseType_print; +asn_constr_check_f ResponseType_constraint; +ber_type_decoder_f ResponseType_decode_ber; +der_type_encoder_f ResponseType_encode_der; +xer_type_decoder_f ResponseType_decode_xer; +xer_type_encoder_f ResponseType_encode_xer; +oer_type_decoder_f ResponseType_decode_oer; +oer_type_encoder_f ResponseType_encode_oer; +per_type_decoder_f ResponseType_decode_uper; +per_type_encoder_f ResponseType_encode_uper; +per_type_decoder_f ResponseType_decode_aper; +per_type_encoder_f ResponseType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponseType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionAppliesTo.h new file mode 100644 index 000000000..4f4860fed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionAppliesTo.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionAppliesTo_H_ +#define _RestrictionAppliesTo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionAppliesTo { + RestrictionAppliesTo_none = 0, + RestrictionAppliesTo_equippedTransit = 1, + RestrictionAppliesTo_equippedTaxis = 2, + RestrictionAppliesTo_equippedOther = 3, + RestrictionAppliesTo_emissionCompliant = 4, + RestrictionAppliesTo_equippedBicycle = 5, + RestrictionAppliesTo_weightCompliant = 6, + RestrictionAppliesTo_heightCompliant = 7, + RestrictionAppliesTo_pedestrians = 8, + RestrictionAppliesTo_slowMovingPersons = 9, + RestrictionAppliesTo_wheelchairUsers = 10, + RestrictionAppliesTo_visualDisabilities = 11, + RestrictionAppliesTo_audioDisabilities = 12, + RestrictionAppliesTo_otherUnknownDisabilities = 13 + /* + * Enumeration is extensible + */ +} e_RestrictionAppliesTo; + +/* RestrictionAppliesTo */ +typedef long RestrictionAppliesTo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; +extern const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1; +asn_struct_free_f RestrictionAppliesTo_free; +asn_struct_print_f RestrictionAppliesTo_print; +asn_constr_check_f RestrictionAppliesTo_constraint; +ber_type_decoder_f RestrictionAppliesTo_decode_ber; +der_type_encoder_f RestrictionAppliesTo_encode_der; +xer_type_decoder_f RestrictionAppliesTo_decode_xer; +xer_type_encoder_f RestrictionAppliesTo_encode_xer; +oer_type_decoder_f RestrictionAppliesTo_decode_oer; +oer_type_encoder_f RestrictionAppliesTo_encode_oer; +per_type_decoder_f RestrictionAppliesTo_decode_uper; +per_type_encoder_f RestrictionAppliesTo_encode_uper; +per_type_decoder_f RestrictionAppliesTo_decode_aper; +per_type_encoder_f RestrictionAppliesTo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionAppliesTo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassAssignment.h new file mode 100644 index 000000000..c8c2c6ad6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassAssignment.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionClassAssignment_H_ +#define _RestrictionClassAssignment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionClassID.h" +#include "RestrictionUserTypeList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassAssignment */ +typedef struct RestrictionClassAssignment { + RestrictionClassID_t id; + RestrictionUserTypeList_t users; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassAssignment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; +extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassAssignment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassID.h new file mode 100644 index 000000000..d64770abd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionClassID_H_ +#define _RestrictionClassID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassID */ +typedef long RestrictionClassID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; +asn_struct_free_f RestrictionClassID_free; +asn_struct_print_f RestrictionClassID_print; +asn_constr_check_f RestrictionClassID_constraint; +ber_type_decoder_f RestrictionClassID_decode_ber; +der_type_encoder_f RestrictionClassID_encode_der; +xer_type_decoder_f RestrictionClassID_decode_xer; +xer_type_encoder_f RestrictionClassID_encode_xer; +oer_type_decoder_f RestrictionClassID_decode_oer; +oer_type_encoder_f RestrictionClassID_encode_oer; +per_type_decoder_f RestrictionClassID_decode_uper; +per_type_encoder_f RestrictionClassID_encode_uper; +per_type_decoder_f RestrictionClassID_decode_aper; +per_type_encoder_f RestrictionClassID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassList.h new file mode 100644 index 000000000..6ec7e8b39 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionClassList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionClassList_H_ +#define _RestrictionClassList_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 RestrictionClassAssignment; + +/* RestrictionClassList */ +typedef struct RestrictionClassList { + A_SEQUENCE_OF(struct RestrictionClassAssignment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionClassAssignment.h" + +#endif /* _RestrictionClassList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType-addGrpC.h new file mode 100644 index 000000000..2499eaf47 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType-addGrpC.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionUserType_addGrpC_H_ +#define _RestrictionUserType_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EmissionType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionUserType-addGrpC */ +typedef struct RestrictionUserType_addGrpC { + EmissionType_t *emission; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC; +extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserType_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType.h new file mode 100644 index 000000000..543388f85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserType.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionUserType_H_ +#define _RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionAppliesTo.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionUserType_PR { + RestrictionUserType_PR_NOTHING, /* No components present */ + RestrictionUserType_PR_basicType, + RestrictionUserType_PR_regional + /* Extensions may appear below */ + +} RestrictionUserType_PR; + +/* Forward declarations */ +struct Reg_RestrictionUserType; + +/* RestrictionUserType */ +typedef struct RestrictionUserType { + RestrictionUserType_PR present; + union RestrictionUserType_u { + RestrictionAppliesTo_t basicType; + struct RestrictionUserType__regional { + A_SEQUENCE_OF(struct Reg_RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; +extern asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserType_1[2]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserTypeList.h new file mode 100644 index 000000000..6ea0a43fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RestrictionUserTypeList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RestrictionUserTypeList_H_ +#define _RestrictionUserTypeList_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 RestrictionUserType; + +/* RestrictionUserTypeList */ +typedef struct RestrictionUserTypeList { + A_SEQUENCE_OF(struct RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserTypeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionUserType.h" + +#endif /* _RestrictionUserTypeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadLaneSetList.h new file mode 100644 index 000000000..7fd8d542f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadLaneSetList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadLaneSetList_H_ +#define _RoadLaneSetList_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 GenericLane; + +/* RoadLaneSetList */ +typedef struct RoadLaneSetList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadLaneSetList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; +extern asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _RoadLaneSetList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadRegulatorID.h new file mode 100644 index 000000000..00a263685 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadRegulatorID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadRegulatorID_H_ +#define _RoadRegulatorID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadRegulatorID */ +typedef long RoadRegulatorID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; +asn_struct_free_f RoadRegulatorID_free; +asn_struct_print_f RoadRegulatorID_print; +asn_constr_check_f RoadRegulatorID_constraint; +ber_type_decoder_f RoadRegulatorID_decode_ber; +der_type_encoder_f RoadRegulatorID_encode_der; +xer_type_decoder_f RoadRegulatorID_decode_xer; +xer_type_encoder_f RoadRegulatorID_encode_xer; +oer_type_decoder_f RoadRegulatorID_decode_oer; +oer_type_encoder_f RoadRegulatorID_encode_oer; +per_type_decoder_f RoadRegulatorID_decode_uper; +per_type_encoder_f RoadRegulatorID_encode_uper; +per_type_decoder_f RoadRegulatorID_decode_aper; +per_type_encoder_f RoadRegulatorID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadRegulatorID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegment.h new file mode 100644 index 000000000..8a29ded87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegment.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSegment_H_ +#define _RoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "RoadSegmentReferenceID.h" +#include "Common_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "RoadLaneSetList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct Reg_RoadSegment; + +/* RoadSegment */ +typedef struct RoadSegment { + DescriptiveName_t *name; /* OPTIONAL */ + RoadSegmentReferenceID_t id; + Common_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + RoadLaneSetList_t roadLaneSet; + struct RoadSegment__regional { + A_SEQUENCE_OF(struct Reg_RoadSegment) 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; +} RoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegment_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "RegionalExtension.h" + +#endif /* _RoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentID.h new file mode 100644 index 000000000..b230c1564 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSegmentID_H_ +#define _RoadSegmentID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentID */ +typedef long RoadSegmentID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; +asn_struct_free_f RoadSegmentID_free; +asn_struct_print_f RoadSegmentID_print; +asn_constr_check_f RoadSegmentID_constraint; +ber_type_decoder_f RoadSegmentID_decode_ber; +der_type_encoder_f RoadSegmentID_encode_der; +xer_type_decoder_f RoadSegmentID_decode_xer; +xer_type_encoder_f RoadSegmentID_encode_xer; +oer_type_decoder_f RoadSegmentID_decode_oer; +oer_type_encoder_f RoadSegmentID_encode_oer; +per_type_decoder_f RoadSegmentID_decode_uper; +per_type_encoder_f RoadSegmentID_encode_uper; +per_type_decoder_f RoadSegmentID_decode_aper; +per_type_encoder_f RoadSegmentID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentList.h new file mode 100644 index 000000000..9cbcd8573 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSegmentList_H_ +#define _RoadSegmentList_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 RoadSegment; + +/* RoadSegmentList */ +typedef struct RoadSegmentList { + A_SEQUENCE_OF(struct RoadSegment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; +extern asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RoadSegment.h" + +#endif /* _RoadSegmentList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentReferenceID.h new file mode 100644 index 000000000..d72cb7317 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSegmentReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSegmentReferenceID_H_ +#define _RoadSegmentReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "RoadSegmentID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentReferenceID */ +typedef struct RoadSegmentReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + RoadSegmentID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSideAlert.h new file mode 100644 index 000000000..7e7cb0987 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSideAlert.h @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RoadSideAlert" + * found in "J2735-RoadSideAlert.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSideAlert_H_ +#define _RoadSideAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "FurtherInfoID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct Reg_RoadSideAlert; + +/* RoadSideAlert */ +typedef struct RoadSideAlert { + Common_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ITIScodes_t typeEvent; + struct RoadSideAlert__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct FullPositionVector *position; /* OPTIONAL */ + FurtherInfoID_t *furtherInfoID; /* OPTIONAL */ + struct RoadSideAlert__regional { + A_SEQUENCE_OF(struct Reg_RoadSideAlert) 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; +} RoadSideAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSideAlert_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "RegionalExtension.h" + +#endif /* _RoadSideAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSignID.h new file mode 100644 index 000000000..c98a0fc96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadSignID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadSignID_H_ +#define _RoadSignID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "HeadingSlice.h" +#include "MUTCDCode.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSignID */ +typedef struct RoadSignID { + Position3D_t position; + HeadingSlice_t viewAngle; + MUTCDCode_t *mutcdCode; /* OPTIONAL */ + MsgCRC_t *crc; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSignID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSignID_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSignID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadwayCrownAngle.h new file mode 100644 index 000000000..f1ae93fca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RoadwayCrownAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _RoadwayCrownAngle_H_ +#define _RoadwayCrownAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadwayCrownAngle */ +typedef long RoadwayCrownAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; +asn_struct_free_f RoadwayCrownAngle_free; +asn_struct_print_f RoadwayCrownAngle_print; +asn_constr_check_f RoadwayCrownAngle_constraint; +ber_type_decoder_f RoadwayCrownAngle_decode_ber; +der_type_encoder_f RoadwayCrownAngle_encode_der; +xer_type_decoder_f RoadwayCrownAngle_decode_xer; +xer_type_encoder_f RoadwayCrownAngle_encode_xer; +oer_type_decoder_f RoadwayCrownAngle_decode_oer; +oer_type_encoder_f RoadwayCrownAngle_encode_oer; +per_type_decoder_f RoadwayCrownAngle_decode_uper; +per_type_encoder_f RoadwayCrownAngle_encode_uper; +per_type_decoder_f RoadwayCrownAngle_decode_aper; +per_type_encoder_f RoadwayCrownAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadwayCrownAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollDetected.h new file mode 100644 index 000000000..5326257bd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollDetected_H_ +#define _RollDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RollDetected */ +typedef long RollDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollDetected; +asn_struct_free_f RollDetected_free; +asn_struct_print_f RollDetected_print; +asn_constr_check_f RollDetected_constraint; +ber_type_decoder_f RollDetected_decode_ber; +der_type_encoder_f RollDetected_encode_der; +xer_type_decoder_f RollDetected_decode_xer; +xer_type_encoder_f RollDetected_encode_xer; +oer_type_decoder_f RollDetected_decode_oer; +oer_type_encoder_f RollDetected_encode_oer; +per_type_decoder_f RollDetected_decode_uper; +per_type_encoder_f RollDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRate.h new file mode 100644 index 000000000..86d4d3b25 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollRate_H_ +#define _RollRate_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RollRate */ +typedef long RollRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollRate; +asn_struct_free_f RollRate_free; +asn_struct_print_f RollRate_print; +asn_constr_check_f RollRate_constraint; +ber_type_decoder_f RollRate_decode_ber; +der_type_encoder_f RollRate_encode_der; +xer_type_decoder_f RollRate_decode_xer; +xer_type_encoder_f RollRate_encode_xer; +oer_type_decoder_f RollRate_decode_oer; +oer_type_encoder_f RollRate_encode_oer; +per_type_decoder_f RollRate_decode_uper; +per_type_encoder_f RollRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollRate_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRateConfidence.h new file mode 100644 index 000000000..9fbfec7fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RollRateConfidence.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollRateConfidence_H_ +#define _RollRateConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RollRateConfidence { + RollRateConfidence_unavailable = 0, + RollRateConfidence_degSec_100_00 = 1, + RollRateConfidence_degSec_010_00 = 2, + RollRateConfidence_degSec_005_00 = 3, + RollRateConfidence_degSec_001_00 = 4, + RollRateConfidence_degSec_000_10 = 5, + RollRateConfidence_degSec_000_05 = 6, + RollRateConfidence_degSec_000_01 = 7 +} e_RollRateConfidence; + +/* RollRateConfidence */ +typedef long RollRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1; +asn_struct_free_f RollRateConfidence_free; +asn_struct_print_f RollRateConfidence_print; +asn_constr_check_f RollRateConfidence_constraint; +ber_type_decoder_f RollRateConfidence_decode_ber; +der_type_encoder_f RollRateConfidence_encode_der; +xer_type_decoder_f RollRateConfidence_decode_xer; +xer_type_encoder_f RollRateConfidence_encode_xer; +oer_type_decoder_f RollRateConfidence_decode_oer; +oer_type_encoder_f RollRateConfidence_encode_oer; +per_type_decoder_f RollRateConfidence_decode_uper; +per_type_encoder_f RollRateConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollRateConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT.h new file mode 100644 index 000000000..5cbe0abed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SPAT_H_ +#define _SPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DescriptiveName.h" +#include "IntersectionStateList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SPAT; + +/* SPAT */ +typedef struct SPAT { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionStateList_t intersections; + struct SPAT__regional { + A_SEQUENCE_OF(struct Reg_SPAT) 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; +} SPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SPAT; +extern asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1; +extern asn_TYPE_member_t asn_MBR_SPAT_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT_TimeMark.h new file mode 100644 index 000000000..12ec94a37 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SPAT_TimeMark.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SPAT_TimeMark_H_ +#define _SPAT_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SPAT_TimeMark */ +typedef long SPAT_TimeMark_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark; +asn_struct_free_f SPAT_TimeMark_free; +asn_struct_print_f SPAT_TimeMark_print; +asn_constr_check_f SPAT_TimeMark_constraint; +ber_type_decoder_f SPAT_TimeMark_decode_ber; +der_type_encoder_f SPAT_TimeMark_encode_der; +xer_type_decoder_f SPAT_TimeMark_decode_xer; +xer_type_encoder_f SPAT_TimeMark_encode_xer; +oer_type_decoder_f SPAT_TimeMark_decode_oer; +oer_type_encoder_f SPAT_TimeMark_encode_oer; +per_type_decoder_f SPAT_TimeMark_decode_uper; +per_type_encoder_f SPAT_TimeMark_encode_uper; +per_type_decoder_f SPAT_TimeMark_decode_aper; +per_type_encoder_f SPAT_TimeMark_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SPAT_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SSPindex.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SSPindex.h new file mode 100644 index 000000000..3be7d6333 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SSPindex.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SSPindex_H_ +#define _SSPindex_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SSPindex */ +typedef long SSPindex_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SSPindex_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SSPindex; +asn_struct_free_f SSPindex_free; +asn_struct_print_f SSPindex_print; +asn_constr_check_f SSPindex_constraint; +ber_type_decoder_f SSPindex_decode_ber; +der_type_encoder_f SSPindex_encode_der; +xer_type_decoder_f SSPindex_decode_xer; +xer_type_encoder_f SSPindex_encode_xer; +oer_type_decoder_f SSPindex_decode_oer; +oer_type_encoder_f SSPindex_encode_oer; +per_type_decoder_f SSPindex_decode_uper; +per_type_encoder_f SSPindex_encode_uper; +per_type_decoder_f SSPindex_decode_aper; +per_type_encoder_f SSPindex_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SSPindex_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Sample.h new file mode 100644 index 000000000..a8abb2fe8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Sample.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Sample_H_ +#define _Sample_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Sample */ +typedef struct Sample { + long sampleStart; + long sampleEnd; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Sample_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Sample; +extern asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1; +extern asn_TYPE_member_t asn_MBR_Sample_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Sample_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Scale-B12.h new file mode 100644 index 000000000..f455a9aa3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Scale-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Scale_B12_H_ +#define _Scale_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Scale-B12 */ +typedef long Scale_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Scale_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; +asn_struct_free_f Scale_B12_free; +asn_struct_print_f Scale_B12_print; +asn_constr_check_f Scale_B12_constraint; +ber_type_decoder_f Scale_B12_decode_ber; +der_type_encoder_f Scale_B12_encode_der; +xer_type_decoder_f Scale_B12_decode_xer; +xer_type_encoder_f Scale_B12_encode_xer; +oer_type_decoder_f Scale_B12_decode_oer; +oer_type_encoder_f Scale_B12_encode_oer; +per_type_decoder_f Scale_B12_decode_uper; +per_type_encoder_f Scale_B12_encode_uper; +per_type_decoder_f Scale_B12_decode_aper; +per_type_encoder_f Scale_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Scale_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Second.h new file mode 100644 index 000000000..0d80952d0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Second.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Second_H_ +#define _Second_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Second */ +typedef long Second_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Second_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Second; +asn_struct_free_f Second_free; +asn_struct_print_f Second_print; +asn_constr_check_f Second_constraint; +ber_type_decoder_f Second_decode_ber; +der_type_encoder_f Second_encode_der; +xer_type_decoder_f Second_decode_xer; +xer_type_encoder_f Second_encode_xer; +oer_type_decoder_f Second_decode_oer; +oer_type_encoder_f Second_encode_oer; +per_type_decoder_f Second_decode_uper; +per_type_encoder_f Second_encode_uper; +per_type_decoder_f Second_decode_aper; +per_type_encoder_f Second_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Second_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondOfTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondOfTime.h new file mode 100644 index 000000000..0dc3db6f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondOfTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SecondOfTime_H_ +#define _SecondOfTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondOfTime */ +typedef long SecondOfTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondOfTime; +asn_struct_free_f SecondOfTime_free; +asn_struct_print_f SecondOfTime_print; +asn_constr_check_f SecondOfTime_constraint; +ber_type_decoder_f SecondOfTime_decode_ber; +der_type_encoder_f SecondOfTime_encode_der; +xer_type_decoder_f SecondOfTime_decode_xer; +xer_type_encoder_f SecondOfTime_encode_xer; +oer_type_decoder_f SecondOfTime_decode_oer; +oer_type_encoder_f SecondOfTime_encode_oer; +per_type_decoder_f SecondOfTime_decode_uper; +per_type_encoder_f SecondOfTime_encode_uper; +per_type_decoder_f SecondOfTime_decode_aper; +per_type_encoder_f SecondOfTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondOfTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondsAngle.h new file mode 100644 index 000000000..4f15b1dc2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SecondsAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SecondsAngle_H_ +#define _SecondsAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondsAngle */ +typedef long SecondsAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; +asn_struct_free_f SecondsAngle_free; +asn_struct_print_f SecondsAngle_print; +asn_constr_check_f SecondsAngle_constraint; +ber_type_decoder_f SecondsAngle_decode_ber; +der_type_encoder_f SecondsAngle_encode_der; +xer_type_decoder_f SecondsAngle_decode_xer; +xer_type_encoder_f SecondsAngle_encode_xer; +oer_type_decoder_f SecondsAngle_decode_oer; +oer_type_encoder_f SecondsAngle_encode_oer; +per_type_decoder_f SecondsAngle_decode_uper; +per_type_encoder_f SecondsAngle_encode_uper; +per_type_decoder_f SecondsAngle_decode_aper; +per_type_encoder_f SecondsAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondsAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLL.h new file mode 100644 index 000000000..eecea77f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLL.h @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SegmentAttributeLL_H_ +#define _SegmentAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeLL { + SegmentAttributeLL_reserved = 0, + SegmentAttributeLL_doNotBlock = 1, + SegmentAttributeLL_whiteLine = 2, + SegmentAttributeLL_mergingLaneLeft = 3, + SegmentAttributeLL_mergingLaneRight = 4, + SegmentAttributeLL_curbOnLeft = 5, + SegmentAttributeLL_curbOnRight = 6, + SegmentAttributeLL_loadingzoneOnLeft = 7, + SegmentAttributeLL_loadingzoneOnRight = 8, + SegmentAttributeLL_turnOutPointOnLeft = 9, + SegmentAttributeLL_turnOutPointOnRight = 10, + SegmentAttributeLL_adjacentParkingOnLeft = 11, + SegmentAttributeLL_adjacentParkingOnRight = 12, + SegmentAttributeLL_adjacentBikeLaneOnLeft = 13, + SegmentAttributeLL_adjacentBikeLaneOnRight = 14, + SegmentAttributeLL_sharedBikeLane = 15, + SegmentAttributeLL_bikeBoxInFront = 16, + SegmentAttributeLL_transitStopOnLeft = 17, + SegmentAttributeLL_transitStopOnRight = 18, + SegmentAttributeLL_transitStopInLane = 19, + SegmentAttributeLL_sharedWithTrackedVehicle = 20, + SegmentAttributeLL_safeIsland = 21, + SegmentAttributeLL_lowCurbsPresent = 22, + SegmentAttributeLL_rumbleStripPresent = 23, + SegmentAttributeLL_audibleSignalingPresent = 24, + SegmentAttributeLL_adaptiveTimingPresent = 25, + SegmentAttributeLL_rfSignalRequestPresent = 26, + SegmentAttributeLL_partialCurbIntrusion = 27, + SegmentAttributeLL_taperToLeft = 28, + SegmentAttributeLL_taperToRight = 29, + SegmentAttributeLL_taperToCenterLine = 30, + SegmentAttributeLL_parallelParking = 31, + SegmentAttributeLL_headInParking = 32, + SegmentAttributeLL_freeParking = 33, + SegmentAttributeLL_timeRestrictionsOnParking = 34, + SegmentAttributeLL_costToPark = 35, + SegmentAttributeLL_midBlockCurbPresent = 36, + SegmentAttributeLL_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeLL; + +/* SegmentAttributeLL */ +typedef long SegmentAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1; +asn_struct_free_f SegmentAttributeLL_free; +asn_struct_print_f SegmentAttributeLL_print; +asn_constr_check_f SegmentAttributeLL_constraint; +ber_type_decoder_f SegmentAttributeLL_decode_ber; +der_type_encoder_f SegmentAttributeLL_encode_der; +xer_type_decoder_f SegmentAttributeLL_decode_xer; +xer_type_encoder_f SegmentAttributeLL_encode_xer; +oer_type_decoder_f SegmentAttributeLL_decode_oer; +oer_type_encoder_f SegmentAttributeLL_encode_oer; +per_type_decoder_f SegmentAttributeLL_decode_uper; +per_type_encoder_f SegmentAttributeLL_encode_uper; +per_type_decoder_f SegmentAttributeLL_decode_aper; +per_type_encoder_f SegmentAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLLList.h new file mode 100644 index 000000000..682c24d46 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SegmentAttributeLLList_H_ +#define _SegmentAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeLLList */ +typedef struct SegmentAttributeLLList { + A_SEQUENCE_OF(SegmentAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXY.h new file mode 100644 index 000000000..f5034f70a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXY.h @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SegmentAttributeXY_H_ +#define _SegmentAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeXY { + SegmentAttributeXY_reserved = 0, + SegmentAttributeXY_doNotBlock = 1, + SegmentAttributeXY_whiteLine = 2, + SegmentAttributeXY_mergingLaneLeft = 3, + SegmentAttributeXY_mergingLaneRight = 4, + SegmentAttributeXY_curbOnLeft = 5, + SegmentAttributeXY_curbOnRight = 6, + SegmentAttributeXY_loadingzoneOnLeft = 7, + SegmentAttributeXY_loadingzoneOnRight = 8, + SegmentAttributeXY_turnOutPointOnLeft = 9, + SegmentAttributeXY_turnOutPointOnRight = 10, + SegmentAttributeXY_adjacentParkingOnLeft = 11, + SegmentAttributeXY_adjacentParkingOnRight = 12, + SegmentAttributeXY_adjacentBikeLaneOnLeft = 13, + SegmentAttributeXY_adjacentBikeLaneOnRight = 14, + SegmentAttributeXY_sharedBikeLane = 15, + SegmentAttributeXY_bikeBoxInFront = 16, + SegmentAttributeXY_transitStopOnLeft = 17, + SegmentAttributeXY_transitStopOnRight = 18, + SegmentAttributeXY_transitStopInLane = 19, + SegmentAttributeXY_sharedWithTrackedVehicle = 20, + SegmentAttributeXY_safeIsland = 21, + SegmentAttributeXY_lowCurbsPresent = 22, + SegmentAttributeXY_rumbleStripPresent = 23, + SegmentAttributeXY_audibleSignalingPresent = 24, + SegmentAttributeXY_adaptiveTimingPresent = 25, + SegmentAttributeXY_rfSignalRequestPresent = 26, + SegmentAttributeXY_partialCurbIntrusion = 27, + SegmentAttributeXY_taperToLeft = 28, + SegmentAttributeXY_taperToRight = 29, + SegmentAttributeXY_taperToCenterLine = 30, + SegmentAttributeXY_parallelParking = 31, + SegmentAttributeXY_headInParking = 32, + SegmentAttributeXY_freeParking = 33, + SegmentAttributeXY_timeRestrictionsOnParking = 34, + SegmentAttributeXY_costToPark = 35, + SegmentAttributeXY_midBlockCurbPresent = 36, + SegmentAttributeXY_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeXY; + +/* SegmentAttributeXY */ +typedef long SegmentAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1; +asn_struct_free_f SegmentAttributeXY_free; +asn_struct_print_f SegmentAttributeXY_print; +asn_constr_check_f SegmentAttributeXY_constraint; +ber_type_decoder_f SegmentAttributeXY_decode_ber; +der_type_encoder_f SegmentAttributeXY_encode_der; +xer_type_decoder_f SegmentAttributeXY_decode_xer; +xer_type_encoder_f SegmentAttributeXY_encode_xer; +oer_type_decoder_f SegmentAttributeXY_decode_oer; +oer_type_encoder_f SegmentAttributeXY_encode_oer; +per_type_decoder_f SegmentAttributeXY_decode_uper; +per_type_encoder_f SegmentAttributeXY_encode_uper; +per_type_decoder_f SegmentAttributeXY_decode_aper; +per_type_encoder_f SegmentAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXYList.h new file mode 100644 index 000000000..4026cacb4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SegmentAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SegmentAttributeXYList_H_ +#define _SegmentAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeXYList */ +typedef struct SegmentAttributeXYList { + A_SEQUENCE_OF(SegmentAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisAccuracy.h new file mode 100644 index 000000000..526b1e0be --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisAccuracy.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SemiMajorAxisAccuracy_H_ +#define _SemiMajorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisAccuracy */ +typedef long SemiMajorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy; +asn_struct_free_f SemiMajorAxisAccuracy_free; +asn_struct_print_f SemiMajorAxisAccuracy_print; +asn_constr_check_f SemiMajorAxisAccuracy_constraint; +ber_type_decoder_f SemiMajorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMajorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMajorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMajorAxisAccuracy_encode_xer; +oer_type_decoder_f SemiMajorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMajorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMajorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMajorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisOrientation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisOrientation.h new file mode 100644 index 000000000..aaa24da32 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMajorAxisOrientation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SemiMajorAxisOrientation_H_ +#define _SemiMajorAxisOrientation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisOrientation */ +typedef long SemiMajorAxisOrientation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation; +asn_struct_free_f SemiMajorAxisOrientation_free; +asn_struct_print_f SemiMajorAxisOrientation_print; +asn_constr_check_f SemiMajorAxisOrientation_constraint; +ber_type_decoder_f SemiMajorAxisOrientation_decode_ber; +der_type_encoder_f SemiMajorAxisOrientation_encode_der; +xer_type_decoder_f SemiMajorAxisOrientation_decode_xer; +xer_type_encoder_f SemiMajorAxisOrientation_encode_xer; +oer_type_decoder_f SemiMajorAxisOrientation_decode_oer; +oer_type_encoder_f SemiMajorAxisOrientation_encode_oer; +per_type_decoder_f SemiMajorAxisOrientation_decode_uper; +per_type_encoder_f SemiMajorAxisOrientation_encode_uper; +per_type_decoder_f SemiMajorAxisOrientation_decode_aper; +per_type_encoder_f SemiMajorAxisOrientation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisOrientation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMinorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMinorAxisAccuracy.h new file mode 100644 index 000000000..d4e009f15 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SemiMinorAxisAccuracy.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SemiMinorAxisAccuracy_H_ +#define _SemiMinorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMinorAxisAccuracy */ +typedef long SemiMinorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy; +asn_struct_free_f SemiMinorAxisAccuracy_free; +asn_struct_print_f SemiMinorAxisAccuracy_print; +asn_constr_check_f SemiMinorAxisAccuracy_constraint; +ber_type_decoder_f SemiMinorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMinorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMinorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMinorAxisAccuracy_encode_xer; +oer_type_decoder_f SemiMinorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMinorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMinorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMinorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMinorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SensorDataSharingMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SensorDataSharingMessage.h new file mode 100644 index 000000000..7e3f04e3e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SensorDataSharingMessage.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SensorDataSharingMessage_H_ +#define _SensorDataSharingMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "TemporaryID.h" +#include "EquipmentType.h" +#include "DDateTime.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "ElevationConfidence.h" +#include "DetectedObjectList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SensorDataSharingMessage */ +typedef struct SensorDataSharingMessage { + Common_MsgCount_t msgCnt; + TemporaryID_t sourceID; + EquipmentType_t equipmentType; + DDateTime_t sDSMTimeStamp; + Position3D_t refPos; + PositionalAccuracy_t refPosXYConf; + ElevationConfidence_t *refPosElConf /* OPTIONAL */; + DetectedObjectList_t objects; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SensorDataSharingMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SensorDataSharingMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ShapePointSet.h new file mode 100644 index 000000000..6b8f601f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ShapePointSet.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ShapePointSet_H_ +#define _ShapePointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "NodeListXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* ShapePointSet */ +typedef struct ShapePointSet { + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + NodeListXY_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ShapePointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ShapePointSet_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _ShapePointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignPrority.h new file mode 100644 index 000000000..736d699ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignPrority.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignPrority_H_ +#define _SignPrority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignPrority */ +typedef long SignPrority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignPrority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignPrority; +asn_struct_free_f SignPrority_free; +asn_struct_print_f SignPrority_print; +asn_constr_check_f SignPrority_constraint; +ber_type_decoder_f SignPrority_decode_ber; +der_type_encoder_f SignPrority_encode_der; +xer_type_decoder_f SignPrority_decode_xer; +xer_type_encoder_f SignPrority_encode_xer; +oer_type_decoder_f SignPrority_decode_oer; +oer_type_encoder_f SignPrority_encode_oer; +per_type_decoder_f SignPrority_decode_uper; +per_type_encoder_f SignPrority_encode_uper; +per_type_decoder_f SignPrority_decode_aper; +per_type_encoder_f SignPrority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignPrority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalControlZone.h new file mode 100644 index 000000000..eeab185d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalControlZone.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalControlZone_H_ +#define _SignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionalExtension.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalControlZone */ +typedef struct SignalControlZone { + Reg_SignalControlZone_t zone; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalControlZone_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalGroupID.h new file mode 100644 index 000000000..4c656ddbd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalGroupID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalGroupID_H_ +#define _SignalGroupID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalGroupID */ +typedef long SignalGroupID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; +asn_struct_free_f SignalGroupID_free; +asn_struct_print_f SignalGroupID_print; +asn_constr_check_f SignalGroupID_constraint; +ber_type_decoder_f SignalGroupID_decode_ber; +der_type_encoder_f SignalGroupID_encode_der; +xer_type_decoder_f SignalGroupID_decode_xer; +xer_type_encoder_f SignalGroupID_encode_xer; +oer_type_decoder_f SignalGroupID_decode_oer; +oer_type_encoder_f SignalGroupID_encode_oer; +per_type_decoder_f SignalGroupID_decode_uper; +per_type_encoder_f SignalGroupID_encode_uper; +per_type_decoder_f SignalGroupID_decode_aper; +per_type_encoder_f SignalGroupID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalGroupID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocation.h new file mode 100644 index 000000000..e02dc8a36 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalHeadLocation_H_ +#define _SignalHeadLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalHeadLocation */ +typedef struct SignalHeadLocation { + NodeOffsetPointXY_t node; + SignalGroupID_t signalGroupID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalHeadLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocationList.h new file mode 100644 index 000000000..04afe71c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalHeadLocationList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalHeadLocationList_H_ +#define _SignalHeadLocationList_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 SignalHeadLocation; + +/* SignalHeadLocationList */ +typedef struct SignalHeadLocationList { + A_SEQUENCE_OF(struct SignalHeadLocation) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocationList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; +extern asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocation.h" + +#endif /* _SignalHeadLocationList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalReqScheme.h new file mode 100644 index 000000000..50970004f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalReqScheme.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalReqScheme_H_ +#define _SignalReqScheme_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalReqScheme */ +typedef OCTET_STRING_t SignalReqScheme_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; +asn_struct_free_f SignalReqScheme_free; +asn_struct_print_f SignalReqScheme_print; +asn_constr_check_f SignalReqScheme_constraint; +ber_type_decoder_f SignalReqScheme_decode_ber; +der_type_encoder_f SignalReqScheme_encode_der; +xer_type_decoder_f SignalReqScheme_decode_xer; +xer_type_encoder_f SignalReqScheme_encode_xer; +oer_type_decoder_f SignalReqScheme_decode_oer; +oer_type_encoder_f SignalReqScheme_encode_oer; +per_type_decoder_f SignalReqScheme_decode_uper; +per_type_encoder_f SignalReqScheme_encode_uper; +per_type_decoder_f SignalReqScheme_decode_aper; +per_type_encoder_f SignalReqScheme_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalReqScheme_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequest.h new file mode 100644 index 000000000..3df2ce38b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequest.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalRequest_H_ +#define _SignalRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionReferenceID.h" +#include "RequestID.h" +#include "PriorityRequestType.h" +#include "IntersectionAccessPoint.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionAccessPoint; +struct Reg_SignalRequest; + +/* SignalRequest */ +typedef struct SignalRequest { + IntersectionReferenceID_t id; + RequestID_t requestID; + PriorityRequestType_t requestType; + IntersectionAccessPoint_t inBoundLane; + struct IntersectionAccessPoint *outBoundLane; /* OPTIONAL */ + struct SignalRequest__regional { + A_SEQUENCE_OF(struct Reg_SignalRequest) 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; +} SignalRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequest_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" + +#endif /* _SignalRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestList.h new file mode 100644 index 000000000..44c939b18 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalRequestList_H_ +#define _SignalRequestList_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 SignalRequestPackage; + +/* SignalRequestList */ +typedef struct SignalRequestList { + A_SEQUENCE_OF(struct SignalRequestPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestList; +extern asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequestPackage.h" + +#endif /* _SignalRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestMessage.h new file mode 100644 index 000000000..b920c2c8d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestMessage.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalRequestMessage_H_ +#define _SignalRequestMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "RequestorDescription.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequestList; +struct Reg_SignalRequestMessage; + +/* SignalRequestMessage */ +typedef struct SignalRequestMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ + struct SignalRequestList *requests; /* OPTIONAL */ + RequestorDescription_t requestor; + struct SignalRequestMessage__regional { + A_SEQUENCE_OF(struct Reg_SignalRequestMessage) 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; +} SignalRequestMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequestList.h" +#include "RegionalExtension.h" + +#endif /* _SignalRequestMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestPackage.h new file mode 100644 index 000000000..41bd4eefa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequestPackage.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalRequestPackage_H_ +#define _SignalRequestPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SignalRequest.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalRequestPackage; + +/* SignalRequestPackage */ +typedef struct SignalRequestPackage { + SignalRequest_t request; + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + struct SignalRequestPackage__regional { + A_SEQUENCE_OF(struct Reg_SignalRequestPackage) 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; +} SignalRequestPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalRequestPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequesterInfo.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequesterInfo.h new file mode 100644 index 000000000..90af7c811 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalRequesterInfo.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalRequesterInfo_H_ +#define _SignalRequesterInfo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "RequestID.h" +#include "Common_MsgCount.h" +#include "BasicVehicleRole.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; + +/* SignalRequesterInfo */ +typedef struct SignalRequesterInfo { + VehicleID_t id; + RequestID_t request; + Common_MsgCount_t sequenceNumber; + BasicVehicleRole_t *role; /* OPTIONAL */ + struct RequestorType *typeData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequesterInfo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RequestorType.h" + +#endif /* _SignalRequesterInfo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatus.h new file mode 100644 index 000000000..03ddd76b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatus.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalStatus_H_ +#define _SignalStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "IntersectionReferenceID.h" +#include "SignalStatusPackageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalStatus; + +/* SignalStatus */ +typedef struct SignalStatus { + Common_MsgCount_t sequenceNumber; + IntersectionReferenceID_t id; + SignalStatusPackageList_t sigStatus; + struct SignalStatus__regional { + A_SEQUENCE_OF(struct Reg_SignalStatus) 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; +} SignalStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatus_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusList.h new file mode 100644 index 000000000..f2daa658a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalStatusList_H_ +#define _SignalStatusList_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 SignalStatus; + +/* SignalStatusList */ +typedef struct SignalStatusList { + A_SEQUENCE_OF(struct SignalStatus) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalStatus.h" + +#endif /* _SignalStatusList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusMessage.h new file mode 100644 index 000000000..df402b09b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusMessage.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalStatusMessage_H_ +#define _SignalStatusMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "Common_MsgCount.h" +#include "SignalStatusList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SignalStatusMessage; + +/* SignalStatusMessage */ +typedef struct SignalStatusMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + Common_MsgCount_t *sequenceNumber; /* OPTIONAL */ + SignalStatusList_t status; + struct SignalStatusMessage__regional { + A_SEQUENCE_OF(struct Reg_SignalStatusMessage) 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; +} SignalStatusMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalStatusMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackage.h new file mode 100644 index 000000000..04eeaac73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackage.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalStatusPackage_H_ +#define _SignalStatusPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionAccessPoint.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "PrioritizationResponseStatus.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequesterInfo; +struct IntersectionAccessPoint; +struct Reg_SignalStatusPackage; + +/* SignalStatusPackage */ +typedef struct SignalStatusPackage { + struct SignalRequesterInfo *requester; /* OPTIONAL */ + IntersectionAccessPoint_t inboundOn; + struct IntersectionAccessPoint *outboundOn; /* OPTIONAL */ + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + PrioritizationResponseStatus_t status; + struct SignalStatusPackage__regional { + A_SEQUENCE_OF(struct Reg_SignalStatusPackage) 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; +} SignalStatusPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequesterInfo.h" +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" + +#endif /* _SignalStatusPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackageList.h new file mode 100644 index 000000000..693a2e16f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SignalStatusPackageList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SignalStatusPackageList_H_ +#define _SignalStatusPackageList_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 SignalStatusPackage; + +/* SignalStatusPackageList */ +typedef struct SignalStatusPackageList { + A_SEQUENCE_OF(struct SignalStatusPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusPackageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalStatusPackage.h" + +#endif /* _SignalStatusPackageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SirenInUse.h new file mode 100644 index 000000000..186a3c71c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SirenInUse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SirenInUse_H_ +#define _SirenInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SirenInUse { + SirenInUse_unavailable = 0, + SirenInUse_notInUse = 1, + SirenInUse_inUse = 2, + SirenInUse_reserved = 3 +} e_SirenInUse; + +/* SirenInUse */ +typedef long SirenInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SirenInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; +extern const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1; +asn_struct_free_f SirenInUse_free; +asn_struct_print_f SirenInUse_print; +asn_constr_check_f SirenInUse_constraint; +ber_type_decoder_f SirenInUse_decode_ber; +der_type_encoder_f SirenInUse_encode_der; +xer_type_decoder_f SirenInUse_decode_xer; +xer_type_encoder_f SirenInUse_encode_xer; +oer_type_decoder_f SirenInUse_decode_oer; +oer_type_encoder_f SirenInUse_encode_oer; +per_type_decoder_f SirenInUse_decode_uper; +per_type_encoder_f SirenInUse_encode_uper; +per_type_decoder_f SirenInUse_decode_aper; +per_type_encoder_f SirenInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SirenInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValue.h new file mode 100644 index 000000000..7b35e76ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValue.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SizeValue_H_ +#define _SizeValue_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SizeValue */ +typedef long SizeValue_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SizeValue_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SizeValue; +asn_struct_free_f SizeValue_free; +asn_struct_print_f SizeValue_print; +asn_constr_check_f SizeValue_constraint; +ber_type_decoder_f SizeValue_decode_ber; +der_type_encoder_f SizeValue_encode_der; +xer_type_decoder_f SizeValue_decode_xer; +xer_type_encoder_f SizeValue_encode_xer; +oer_type_decoder_f SizeValue_decode_oer; +oer_type_encoder_f SizeValue_encode_oer; +per_type_decoder_f SizeValue_decode_uper; +per_type_encoder_f SizeValue_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SizeValue_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValueConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValueConfidence.h new file mode 100644 index 000000000..b719b5570 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SizeValueConfidence.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SizeValueConfidence_H_ +#define _SizeValueConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SizeValueConfidence { + SizeValueConfidence_unavailable = 0, + SizeValueConfidence_size_100_00 = 1, + SizeValueConfidence_size_050_00 = 2, + SizeValueConfidence_size_020_00 = 3, + SizeValueConfidence_size_010_00 = 4, + SizeValueConfidence_size_005_00 = 5, + SizeValueConfidence_size_002_00 = 6, + SizeValueConfidence_size_001_00 = 7, + SizeValueConfidence_size_000_50 = 8, + SizeValueConfidence_size_000_20 = 9, + SizeValueConfidence_size_000_10 = 10, + SizeValueConfidence_size_000_05 = 11, + SizeValueConfidence_size_000_02 = 12, + SizeValueConfidence_size_000_01 = 13 +} e_SizeValueConfidence; + +/* SizeValueConfidence */ +typedef long SizeValueConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1; +asn_struct_free_f SizeValueConfidence_free; +asn_struct_print_f SizeValueConfidence_print; +asn_constr_check_f SizeValueConfidence_constraint; +ber_type_decoder_f SizeValueConfidence_decode_ber; +der_type_encoder_f SizeValueConfidence_encode_der; +xer_type_decoder_f SizeValueConfidence_decode_xer; +xer_type_encoder_f SizeValueConfidence_encode_xer; +oer_type_decoder_f SizeValueConfidence_decode_oer; +oer_type_encoder_f SizeValueConfidence_encode_oer; +per_type_decoder_f SizeValueConfidence_decode_uper; +per_type_encoder_f SizeValueConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SizeValueConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Snapshot.h new file mode 100644 index 000000000..6ed0251cb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Snapshot.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Snapshot_H_ +#define _Snapshot_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "FullPositionVector.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtensions; +struct VehicleStatus; + +/* Snapshot */ +typedef struct Snapshot { + FullPositionVector_t thePosition; + struct VehicleSafetyExtensions *safetyExt; /* OPTIONAL */ + struct VehicleStatus *dataSet; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Snapshot_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Snapshot; +extern asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1; +extern asn_TYPE_member_t asn_MBR_Snapshot_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleSafetyExtensions.h" +#include "VehicleStatus.h" + +#endif /* _Snapshot_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotDistance.h new file mode 100644 index 000000000..e2dce7b35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotDistance.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SnapshotDistance_H_ +#define _SnapshotDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossDistance.h" +#include "GrossSpeed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotDistance */ +typedef struct SnapshotDistance { + GrossDistance_t distance1; + GrossSpeed_t speed1; + GrossDistance_t distance2; + GrossSpeed_t speed2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotDistance_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotTime.h new file mode 100644 index 000000000..2eac03c20 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SnapshotTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SnapshotTime_H_ +#define _SnapshotTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" +#include "SecondOfTime.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotTime */ +typedef struct SnapshotTime { + GrossSpeed_t speed1; + SecondOfTime_t time1; + GrossSpeed_t speed2; + SecondOfTime_t time2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotTime_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpecialVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpecialVehicleExtensions.h new file mode 100644 index 000000000..77076b913 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpecialVehicleExtensions.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpecialVehicleExtensions_H_ +#define _SpecialVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct EventDescription; +struct TrailerData; + +/* SpecialVehicleExtensions */ +typedef struct SpecialVehicleExtensions { + struct EmergencyDetails *vehicleAlerts; /* OPTIONAL */ + struct EventDescription *description; /* OPTIONAL */ + struct TrailerData *trailers; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpecialVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EmergencyDetails.h" +#include "EventDescription.h" +#include "TrailerData.h" + +#endif /* _SpecialVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Speed.h new file mode 100644 index 000000000..966f950da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Speed.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Speed_H_ +#define _Speed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Speed */ +typedef long Speed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Speed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Speed; +asn_struct_free_f Speed_free; +asn_struct_print_f Speed_print; +asn_constr_check_f Speed_constraint; +ber_type_decoder_f Speed_decode_ber; +der_type_encoder_f Speed_encode_der; +xer_type_decoder_f Speed_decode_xer; +xer_type_encoder_f Speed_encode_xer; +oer_type_decoder_f Speed_decode_oer; +oer_type_encoder_f Speed_encode_oer; +per_type_decoder_f Speed_decode_uper; +per_type_encoder_f Speed_encode_uper; +per_type_decoder_f Speed_decode_aper; +per_type_encoder_f Speed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Speed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedAdvice.h new file mode 100644 index 000000000..377a6e32c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedAdvice.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedAdvice_H_ +#define _SpeedAdvice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedAdvice */ +typedef long SpeedAdvice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; +asn_struct_free_f SpeedAdvice_free; +asn_struct_print_f SpeedAdvice_print; +asn_constr_check_f SpeedAdvice_constraint; +ber_type_decoder_f SpeedAdvice_decode_ber; +der_type_encoder_f SpeedAdvice_encode_der; +xer_type_decoder_f SpeedAdvice_decode_xer; +xer_type_encoder_f SpeedAdvice_encode_xer; +oer_type_decoder_f SpeedAdvice_decode_oer; +oer_type_encoder_f SpeedAdvice_encode_oer; +per_type_decoder_f SpeedAdvice_decode_uper; +per_type_encoder_f SpeedAdvice_encode_uper; +per_type_decoder_f SpeedAdvice_decode_aper; +per_type_encoder_f SpeedAdvice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedAdvice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedConfidence.h new file mode 100644 index 000000000..7b5eb89b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedConfidence_H_ +#define _SpeedConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedConfidence { + SpeedConfidence_unavailable = 0, + SpeedConfidence_prec100ms = 1, + SpeedConfidence_prec10ms = 2, + SpeedConfidence_prec5ms = 3, + SpeedConfidence_prec1ms = 4, + SpeedConfidence_prec0_1ms = 5, + SpeedConfidence_prec0_05ms = 6, + SpeedConfidence_prec0_01ms = 7 +} e_SpeedConfidence; + +/* SpeedConfidence */ +typedef long SpeedConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1; +asn_struct_free_f SpeedConfidence_free; +asn_struct_print_f SpeedConfidence_print; +asn_constr_check_f SpeedConfidence_constraint; +ber_type_decoder_f SpeedConfidence_decode_ber; +der_type_encoder_f SpeedConfidence_encode_der; +xer_type_decoder_f SpeedConfidence_decode_xer; +xer_type_encoder_f SpeedConfidence_encode_xer; +oer_type_decoder_f SpeedConfidence_decode_oer; +oer_type_encoder_f SpeedConfidence_encode_oer; +per_type_decoder_f SpeedConfidence_decode_uper; +per_type_encoder_f SpeedConfidence_encode_uper; +per_type_decoder_f SpeedConfidence_decode_aper; +per_type_encoder_f SpeedConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimit.h new file mode 100644 index 000000000..076ba6267 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimit.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedLimit_H_ +#define _SpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimit__Member__item_PR { + SpeedLimit__Member__item_PR_NOTHING, /* No components present */ + SpeedLimit__Member__item_PR_itis, + SpeedLimit__Member__item_PR_text +} SpeedLimit__Member__item_PR; + +/* Forward definitions */ +typedef struct SpeedLimit__Member { + struct SpeedLimit__Member__item { + SpeedLimit__Member__item_PR present; + union SpeedLimit__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit__Member; + +/* SpeedLimit */ +typedef struct SpeedLimit { + A_SEQUENCE_OF(SpeedLimit__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimit_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitList.h new file mode 100644 index 000000000..20b11526a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedLimitList_H_ +#define _SpeedLimitList_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 RegulatorySpeedLimit; + +/* SpeedLimitList */ +typedef struct SpeedLimitList { + A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimitList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimitList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegulatorySpeedLimit.h" + +#endif /* _SpeedLimitList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitType.h new file mode 100644 index 000000000..02cce7f6e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedLimitType.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedLimitType_H_ +#define _SpeedLimitType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimitType { + SpeedLimitType_unknown = 0, + SpeedLimitType_maxSpeedInSchoolZone = 1, + SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, + SpeedLimitType_maxSpeedInConstructionZone = 3, + SpeedLimitType_vehicleMinSpeed = 4, + SpeedLimitType_vehicleMaxSpeed = 5, + SpeedLimitType_vehicleNightMaxSpeed = 6, + SpeedLimitType_truckMinSpeed = 7, + SpeedLimitType_truckMaxSpeed = 8, + SpeedLimitType_truckNightMaxSpeed = 9, + SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, + SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, + SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 + /* + * Enumeration is extensible + */ +} e_SpeedLimitType; + +/* SpeedLimitType */ +typedef long SpeedLimitType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1; +asn_struct_free_f SpeedLimitType_free; +asn_struct_print_f SpeedLimitType_print; +asn_constr_check_f SpeedLimitType_constraint; +ber_type_decoder_f SpeedLimitType_decode_ber; +der_type_encoder_f SpeedLimitType_encode_der; +xer_type_decoder_f SpeedLimitType_decode_xer; +xer_type_encoder_f SpeedLimitType_encode_xer; +oer_type_decoder_f SpeedLimitType_decode_oer; +oer_type_encoder_f SpeedLimitType_encode_oer; +per_type_decoder_f SpeedLimitType_decode_uper; +per_type_encoder_f SpeedLimitType_encode_uper; +per_type_decoder_f SpeedLimitType_decode_aper; +per_type_encoder_f SpeedLimitType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimitType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfile.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfile.h new file mode 100644 index 000000000..2c28d79f9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfile.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedProfile_H_ +#define _SpeedProfile_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurementList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfile */ +typedef struct SpeedProfile { + SpeedProfileMeasurementList_t speedReports; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfile_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfile; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfile_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfile_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurement.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurement.h new file mode 100644 index 000000000..96e596d35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurement.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedProfileMeasurement_H_ +#define _SpeedProfileMeasurement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurement */ +typedef GrossSpeed_t SpeedProfileMeasurement_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement; +asn_struct_free_f SpeedProfileMeasurement_free; +asn_struct_print_f SpeedProfileMeasurement_print; +asn_constr_check_f SpeedProfileMeasurement_constraint; +ber_type_decoder_f SpeedProfileMeasurement_decode_ber; +der_type_encoder_f SpeedProfileMeasurement_encode_der; +xer_type_decoder_f SpeedProfileMeasurement_decode_xer; +xer_type_encoder_f SpeedProfileMeasurement_encode_xer; +oer_type_decoder_f SpeedProfileMeasurement_decode_oer; +oer_type_encoder_f SpeedProfileMeasurement_encode_oer; +per_type_decoder_f SpeedProfileMeasurement_decode_uper; +per_type_encoder_f SpeedProfileMeasurement_encode_uper; +per_type_decoder_f SpeedProfileMeasurement_decode_aper; +per_type_encoder_f SpeedProfileMeasurement_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurementList.h new file mode 100644 index 000000000..e78e6cd05 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedProfileMeasurementList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedProfileMeasurementList_H_ +#define _SpeedProfileMeasurementList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurement.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurementList */ +typedef struct SpeedProfileMeasurementList { + A_SEQUENCE_OF(SpeedProfileMeasurement_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfileMeasurementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedandHeadingandThrottleConfidence.h new file mode 100644 index 000000000..a07a04ae5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SpeedandHeadingandThrottleConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SpeedandHeadingandThrottleConfidence_H_ +#define _SpeedandHeadingandThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingConfidence.h" +#include "SpeedConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedandHeadingandThrottleConfidence */ +typedef struct SpeedandHeadingandThrottleConfidence { + HeadingConfidence_t heading; + SpeedConfidence_t speed; + ThrottleConfidence_t throttle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedandHeadingandThrottleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/StabilityControlStatus.h new file mode 100644 index 000000000..c2ab879b4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/StabilityControlStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _StabilityControlStatus_H_ +#define _StabilityControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum StabilityControlStatus { + StabilityControlStatus_unavailable = 0, + StabilityControlStatus_off = 1, + StabilityControlStatus_on = 2, + StabilityControlStatus_engaged = 3 +} e_StabilityControlStatus; + +/* StabilityControlStatus */ +typedef long StabilityControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1; +asn_struct_free_f StabilityControlStatus_free; +asn_struct_print_f StabilityControlStatus_print; +asn_constr_check_f StabilityControlStatus_constraint; +ber_type_decoder_f StabilityControlStatus_decode_ber; +der_type_encoder_f StabilityControlStatus_encode_der; +xer_type_decoder_f StabilityControlStatus_decode_xer; +xer_type_encoder_f StabilityControlStatus_encode_xer; +oer_type_decoder_f StabilityControlStatus_decode_oer; +oer_type_encoder_f StabilityControlStatus_encode_oer; +per_type_decoder_f StabilityControlStatus_decode_uper; +per_type_encoder_f StabilityControlStatus_encode_uper; +per_type_decoder_f StabilityControlStatus_decode_aper; +per_type_encoder_f StabilityControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StabilityControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/StationID.h new file mode 100644 index 000000000..0efbd8c60 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/StationID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _StationID_H_ +#define _StationID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* StationID */ +typedef unsigned long StationID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StationID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StationID; +extern const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1; +asn_struct_free_f StationID_free; +asn_struct_print_f StationID_print; +asn_constr_check_f StationID_constraint; +ber_type_decoder_f StationID_decode_ber; +der_type_encoder_f StationID_encode_der; +xer_type_decoder_f StationID_decode_xer; +xer_type_encoder_f StationID_encode_xer; +oer_type_decoder_f StationID_decode_oer; +oer_type_encoder_f StationID_encode_oer; +per_type_decoder_f StationID_decode_uper; +per_type_encoder_f StationID_encode_uper; +per_type_decoder_f StationID_decode_aper; +per_type_encoder_f StationID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StationID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleLubePressure.h new file mode 100644 index 000000000..50801b206 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleLubePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SteeringAxleLubePressure_H_ +#define _SteeringAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleLubePressure */ +typedef long SteeringAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; +asn_struct_free_f SteeringAxleLubePressure_free; +asn_struct_print_f SteeringAxleLubePressure_print; +asn_constr_check_f SteeringAxleLubePressure_constraint; +ber_type_decoder_f SteeringAxleLubePressure_decode_ber; +der_type_encoder_f SteeringAxleLubePressure_encode_der; +xer_type_decoder_f SteeringAxleLubePressure_decode_xer; +xer_type_encoder_f SteeringAxleLubePressure_encode_xer; +oer_type_decoder_f SteeringAxleLubePressure_decode_oer; +oer_type_encoder_f SteeringAxleLubePressure_encode_oer; +per_type_decoder_f SteeringAxleLubePressure_decode_uper; +per_type_encoder_f SteeringAxleLubePressure_encode_uper; +per_type_decoder_f SteeringAxleLubePressure_decode_aper; +per_type_encoder_f SteeringAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleTemperature.h new file mode 100644 index 000000000..3115107e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringAxleTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SteeringAxleTemperature_H_ +#define _SteeringAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleTemperature */ +typedef long SteeringAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; +asn_struct_free_f SteeringAxleTemperature_free; +asn_struct_print_f SteeringAxleTemperature_print; +asn_constr_check_f SteeringAxleTemperature_constraint; +ber_type_decoder_f SteeringAxleTemperature_decode_ber; +der_type_encoder_f SteeringAxleTemperature_encode_der; +xer_type_decoder_f SteeringAxleTemperature_decode_xer; +xer_type_encoder_f SteeringAxleTemperature_encode_xer; +oer_type_decoder_f SteeringAxleTemperature_decode_oer; +oer_type_encoder_f SteeringAxleTemperature_encode_oer; +per_type_decoder_f SteeringAxleTemperature_decode_uper; +per_type_encoder_f SteeringAxleTemperature_encode_uper; +per_type_decoder_f SteeringAxleTemperature_decode_aper; +per_type_encoder_f SteeringAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngle.h new file mode 100644 index 000000000..07c38d04a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SteeringWheelAngle_H_ +#define _SteeringWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngle */ +typedef long SteeringWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; +asn_struct_free_f SteeringWheelAngle_free; +asn_struct_print_f SteeringWheelAngle_print; +asn_constr_check_f SteeringWheelAngle_constraint; +ber_type_decoder_f SteeringWheelAngle_decode_ber; +der_type_encoder_f SteeringWheelAngle_encode_der; +xer_type_decoder_f SteeringWheelAngle_decode_xer; +xer_type_encoder_f SteeringWheelAngle_encode_xer; +oer_type_decoder_f SteeringWheelAngle_decode_oer; +oer_type_encoder_f SteeringWheelAngle_encode_oer; +per_type_decoder_f SteeringWheelAngle_decode_uper; +per_type_encoder_f SteeringWheelAngle_encode_uper; +per_type_decoder_f SteeringWheelAngle_decode_aper; +per_type_encoder_f SteeringWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleConfidence.h new file mode 100644 index 000000000..bf694e488 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleConfidence.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SteeringWheelAngleConfidence_H_ +#define _SteeringWheelAngleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SteeringWheelAngleConfidence { + SteeringWheelAngleConfidence_unavailable = 0, + SteeringWheelAngleConfidence_prec2deg = 1, + SteeringWheelAngleConfidence_prec1deg = 2, + SteeringWheelAngleConfidence_prec0_02deg = 3 +} e_SteeringWheelAngleConfidence; + +/* SteeringWheelAngleConfidence */ +typedef long SteeringWheelAngleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1; +asn_struct_free_f SteeringWheelAngleConfidence_free; +asn_struct_print_f SteeringWheelAngleConfidence_print; +asn_constr_check_f SteeringWheelAngleConfidence_constraint; +ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; +der_type_encoder_f SteeringWheelAngleConfidence_encode_der; +xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; +xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; +oer_type_decoder_f SteeringWheelAngleConfidence_decode_oer; +oer_type_encoder_f SteeringWheelAngleConfidence_encode_oer; +per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; +per_type_decoder_f SteeringWheelAngleConfidence_decode_aper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleRateOfChange.h new file mode 100644 index 000000000..99420f707 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SteeringWheelAngleRateOfChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SteeringWheelAngleRateOfChange_H_ +#define _SteeringWheelAngleRateOfChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngleRateOfChange */ +typedef long SteeringWheelAngleRateOfChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; +asn_struct_free_f SteeringWheelAngleRateOfChange_free; +asn_struct_print_f SteeringWheelAngleRateOfChange_print; +asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; +ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; +der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; +xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; +xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; +oer_type_decoder_f SteeringWheelAngleRateOfChange_decode_oer; +oer_type_encoder_f SteeringWheelAngleRateOfChange_encode_oer; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_aper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleRateOfChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SummerTime.h new file mode 100644 index 000000000..a45cc0d96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SummerTime.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SummerTime_H_ +#define _SummerTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SummerTime { + SummerTime_notInSummerTime = 0, + SummerTime_inSummerTime = 1 +} e_SummerTime; + +/* SummerTime */ +typedef long SummerTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SummerTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SummerTime; +extern const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1; +asn_struct_free_f SummerTime_free; +asn_struct_print_f SummerTime_print; +asn_constr_check_f SummerTime_constraint; +ber_type_decoder_f SummerTime_decode_ber; +der_type_encoder_f SummerTime_encode_der; +xer_type_decoder_f SummerTime_decode_xer; +xer_type_encoder_f SummerTime_encode_xer; +oer_type_decoder_f SummerTime_decode_oer; +oer_type_encoder_f SummerTime_encode_oer; +per_type_decoder_f SummerTime_decode_uper; +per_type_encoder_f SummerTime_encode_uper; +per_type_decoder_f SummerTime_decode_aper; +per_type_encoder_f SummerTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SummerTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SunSensor.h new file mode 100644 index 000000000..67569433e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SunSensor.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SunSensor_H_ +#define _SunSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SunSensor */ +typedef long SunSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SunSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SunSensor; +asn_struct_free_f SunSensor_free; +asn_struct_print_f SunSensor_print; +asn_constr_check_f SunSensor_constraint; +ber_type_decoder_f SunSensor_decode_ber; +der_type_encoder_f SunSensor_encode_der; +xer_type_decoder_f SunSensor_decode_xer; +xer_type_encoder_f SunSensor_encode_xer; +oer_type_decoder_f SunSensor_decode_oer; +oer_type_encoder_f SunSensor_encode_oer; +per_type_decoder_f SunSensor_decode_uper; +per_type_encoder_f SunSensor_encode_uper; +per_type_decoder_f SunSensor_decode_aper; +per_type_encoder_f SunSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SunSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SupplementalVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SupplementalVehicleExtensions.h new file mode 100644 index 000000000..d23564126 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SupplementalVehicleExtensions.h @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _SupplementalVehicleExtensions_H_ +#define _SupplementalVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleClassification; +struct VehicleData; +struct WeatherReport; +struct WeatherProbe; +struct ObstacleDetection; +struct DisabledVehicle; +struct SpeedProfile; +struct RTCMPackage; +struct Reg_SupplementalVehicleExtensions; + +/* SupplementalVehicleExtensions */ +typedef struct SupplementalVehicleExtensions { + BasicVehicleClass_t *classification; /* OPTIONAL */ + struct VehicleClassification *classDetails; /* OPTIONAL */ + struct VehicleData *vehicleData; /* OPTIONAL */ + struct WeatherReport *weatherReport; /* OPTIONAL */ + struct WeatherProbe *weatherProbe; /* OPTIONAL */ + struct ObstacleDetection *obstacle; /* OPTIONAL */ + struct DisabledVehicle *status; /* OPTIONAL */ + struct SpeedProfile *speedProfile; /* OPTIONAL */ + struct RTCMPackage *theRTCM; /* OPTIONAL */ + struct SupplementalVehicleExtensions__regional { + A_SEQUENCE_OF(struct Reg_SupplementalVehicleExtensions) 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; +} SupplementalVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleClassification.h" +#include "VehicleData.h" +#include "WeatherReport.h" +#include "WeatherProbe.h" +#include "ObstacleDetection.h" +#include "DisabledVehicle.h" +#include "SpeedProfile.h" +#include "RTCMPackage.h" +#include "RegionalExtension.h" + +#endif /* _SupplementalVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TemporaryID.h new file mode 100644 index 000000000..d1b98b576 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TemporaryID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TemporaryID_H_ +#define _TemporaryID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TemporaryID */ +typedef OCTET_STRING_t TemporaryID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TemporaryID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; +asn_struct_free_f TemporaryID_free; +asn_struct_print_f TemporaryID_print; +asn_constr_check_f TemporaryID_constraint; +ber_type_decoder_f TemporaryID_decode_ber; +der_type_encoder_f TemporaryID_encode_der; +xer_type_decoder_f TemporaryID_decode_xer; +xer_type_encoder_f TemporaryID_encode_xer; +oer_type_decoder_f TemporaryID_decode_oer; +oer_type_encoder_f TemporaryID_encode_oer; +per_type_decoder_f TemporaryID_decode_uper; +per_type_encoder_f TemporaryID_encode_uper; +per_type_decoder_f TemporaryID_decode_aper; +per_type_encoder_f TemporaryID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TemporaryID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TenthSecond.h new file mode 100644 index 000000000..7b81caed9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TenthSecond.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TenthSecond_H_ +#define _TenthSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TenthSecond */ +typedef long TenthSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TenthSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; +asn_struct_free_f TenthSecond_free; +asn_struct_print_f TenthSecond_print; +asn_constr_check_f TenthSecond_constraint; +ber_type_decoder_f TenthSecond_decode_ber; +der_type_encoder_f TenthSecond_encode_der; +xer_type_decoder_f TenthSecond_decode_xer; +xer_type_encoder_f TenthSecond_encode_xer; +oer_type_decoder_f TenthSecond_decode_oer; +oer_type_encoder_f TenthSecond_encode_oer; +per_type_decoder_f TenthSecond_decode_uper; +per_type_encoder_f TenthSecond_encode_uper; +per_type_decoder_f TenthSecond_decode_aper; +per_type_encoder_f TenthSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TenthSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermDistance.h new file mode 100644 index 000000000..38dee0530 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TermDistance_H_ +#define _TermDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermDistance */ +typedef long TermDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermDistance; +asn_struct_free_f TermDistance_free; +asn_struct_print_f TermDistance_print; +asn_constr_check_f TermDistance_constraint; +ber_type_decoder_f TermDistance_decode_ber; +der_type_encoder_f TermDistance_encode_der; +xer_type_decoder_f TermDistance_decode_xer; +xer_type_encoder_f TermDistance_encode_xer; +oer_type_decoder_f TermDistance_decode_oer; +oer_type_encoder_f TermDistance_encode_oer; +per_type_decoder_f TermDistance_decode_uper; +per_type_encoder_f TermDistance_encode_uper; +per_type_decoder_f TermDistance_decode_aper; +per_type_encoder_f TermDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermTime.h new file mode 100644 index 000000000..5d7567842 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TermTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TermTime_H_ +#define _TermTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermTime */ +typedef long TermTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermTime; +asn_struct_free_f TermTime_free; +asn_struct_print_f TermTime_print; +asn_constr_check_f TermTime_constraint; +ber_type_decoder_f TermTime_decode_ber; +der_type_encoder_f TermTime_encode_der; +xer_type_decoder_f TermTime_decode_xer; +xer_type_encoder_f TermTime_encode_xer; +oer_type_decoder_f TermTime_decode_oer; +oer_type_encoder_f TermTime_encode_oer; +per_type_decoder_f TermTime_decode_uper; +per_type_encoder_f TermTime_encode_uper; +per_type_decoder_f TermTime_decode_aper; +per_type_encoder_f TermTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage00.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage00.h new file mode 100644 index 000000000..a420a7fd3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage00.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage00_H_ +#define _TestMessage00_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityRequest.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +// struct Header; +// struct Reg_BasicSafetyMessage; + +/* TestMessage00 */ +typedef struct TestMessage00 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityRequest_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage00_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage00; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage00_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +// #include "Header.h" +// #include "RegionalExtension.h" + +#endif /* _TestMessage00_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage01.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage01.h new file mode 100644 index 000000000..31f0bf377 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage01.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage01_H_ +#define _TestMessage01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityResponse.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +// struct Header; +// struct Reg_BasicSafetyMessage; + +/* TestMessage01 */ +typedef struct TestMessage01 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityResponse_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage01; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage01_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +// #include "Header.h" +// #include "RegionalExtension.h" + +#endif /* _TestMessage01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage02.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage02.h new file mode 100644 index 000000000..1010456d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage02.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage02_H_ +#define _TestMessage02_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityPath.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +/* TestMessage02 */ +typedef struct TestMessage02 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityPath_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage02_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage02; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage02_1[2]; + +#ifdef __cplusplus +} +#endif + + +#endif /* _TestMessage02_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage03.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage03.h new file mode 100644 index 000000000..9037ab733 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage03.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TestMessage03_H_ +#define _TestMessage03_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityOperation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage03 */ +typedef struct TestMessage03 { + MobilityHeader_t header; + MobilityOperation_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage03_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage03; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage03_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage03_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage04.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage04.h new file mode 100644 index 000000000..49bd4749b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage04.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage04_H_ +#define _TestMessage04_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlRequest.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage04 */ +typedef struct TestMessage04 { + TrafficControlRequest_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage04_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage04; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage04_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage04_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage05.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage05.h new file mode 100644 index 000000000..1f59196ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage05.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage05_H_ +#define _TestMessage05_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlMessage.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage05 */ +typedef struct TestMessage05 { + TrafficControlMessage_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage05_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage05; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage05_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage05_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage06.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage06.h new file mode 100644 index 000000000..fa833cfd7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage06.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage06" + * found in "J2735-TestMessage06.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage06_H_ +#define _TestMessage06_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage06; + +/* TestMessage06 */ +typedef struct TestMessage06 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage06 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage06_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage06; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage06_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage06_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage07.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage07.h new file mode 100644 index 000000000..849dc7cfa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage07.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage07" + * found in "J2735-TestMessage07.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage07_H_ +#define _TestMessage07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage07; + +/* TestMessage07 */ +typedef struct TestMessage07 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage07 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage07_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage07; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage07_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage08.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage08.h new file mode 100644 index 000000000..badb3ac48 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage08.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage08" + * found in "J2735-TestMessage08.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage08_H_ +#define _TestMessage08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage08; + +/* TestMessage08 */ +typedef struct TestMessage08 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage08 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage08_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage08; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage08_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage09.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage09.h new file mode 100644 index 000000000..160c62ed4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage09.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage09" + * found in "J2735-TestMessage09.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage09_H_ +#define _TestMessage09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage09; + +/* TestMessage09 */ +typedef struct TestMessage09 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage09 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage09_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage09; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage09_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage10.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage10.h new file mode 100644 index 000000000..8ae113383 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage10.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage10" + * found in "J2735-TestMessage10.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage10_H_ +#define _TestMessage10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage10; + +/* TestMessage10 */ +typedef struct TestMessage10 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage10 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage10_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage10; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage10_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage11.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage11.h new file mode 100644 index 000000000..dadb8d56b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage11.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage11" + * found in "J2735-TestMessage11.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage11_H_ +#define _TestMessage11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage11; + +/* TestMessage11 */ +typedef struct TestMessage11 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage11 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage11_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage11; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage11_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage12.h new file mode 100644 index 000000000..d7f2c7115 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage12.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage12" + * found in "J2735-TestMessage12.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage12_H_ +#define _TestMessage12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage12; + +/* TestMessage12 */ +typedef struct TestMessage12 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage12 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage12_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage12; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage12_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage13.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage13.h new file mode 100644 index 000000000..d8c4ced14 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage13.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage13" + * found in "J2735-TestMessage13.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage13_H_ +#define _TestMessage13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage13; + +/* TestMessage13 */ +typedef struct TestMessage13 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage13 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage13_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage13; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage13_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage14.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage14.h new file mode 100644 index 000000000..427d63b2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage14.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage14" + * found in "J2735-TestMessage14.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage14_H_ +#define _TestMessage14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage14; + +/* TestMessage14 */ +typedef struct TestMessage14 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage14 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage14_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage14; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage14_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage15.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage15.h new file mode 100644 index 000000000..23a3a176a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TestMessage15.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage15" + * found in "J2735-TestMessage15.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TestMessage15_H_ +#define _TestMessage15_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_TestMessage15; + +/* TestMessage15 */ +typedef struct TestMessage15 { + struct Header *header; /* OPTIONAL */ + struct Reg_TestMessage15 *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage15_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage15; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage15_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage15_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottleConfidence.h new file mode 100644 index 000000000..d3b2ba149 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottleConfidence.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ThrottleConfidence_H_ +#define _ThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ThrottleConfidence { + ThrottleConfidence_unavailable = 0, + ThrottleConfidence_prec10percent = 1, + ThrottleConfidence_prec1percent = 2, + ThrottleConfidence_prec0_5percent = 3 +} e_ThrottleConfidence; + +/* ThrottleConfidence */ +typedef long ThrottleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1; +asn_struct_free_f ThrottleConfidence_free; +asn_struct_print_f ThrottleConfidence_print; +asn_constr_check_f ThrottleConfidence_constraint; +ber_type_decoder_f ThrottleConfidence_decode_ber; +der_type_encoder_f ThrottleConfidence_encode_der; +xer_type_decoder_f ThrottleConfidence_decode_xer; +xer_type_encoder_f ThrottleConfidence_encode_xer; +oer_type_decoder_f ThrottleConfidence_decode_oer; +oer_type_encoder_f ThrottleConfidence_encode_oer; +per_type_decoder_f ThrottleConfidence_decode_uper; +per_type_encoder_f ThrottleConfidence_encode_uper; +per_type_decoder_f ThrottleConfidence_decode_aper; +per_type_encoder_f ThrottleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottlePosition.h new file mode 100644 index 000000000..8c030727e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ThrottlePosition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ThrottlePosition_H_ +#define _ThrottlePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ThrottlePosition */ +typedef long ThrottlePosition_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; +asn_struct_free_f ThrottlePosition_free; +asn_struct_print_f ThrottlePosition_print; +asn_constr_check_f ThrottlePosition_constraint; +ber_type_decoder_f ThrottlePosition_decode_ber; +der_type_encoder_f ThrottlePosition_encode_der; +xer_type_decoder_f ThrottlePosition_decode_xer; +xer_type_encoder_f ThrottlePosition_encode_xer; +oer_type_decoder_f ThrottlePosition_decode_oer; +oer_type_encoder_f ThrottlePosition_encode_oer; +per_type_decoder_f ThrottlePosition_decode_uper; +per_type_encoder_f ThrottlePosition_encode_uper; +per_type_decoder_f ThrottlePosition_decode_aper; +per_type_encoder_f ThrottlePosition_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottlePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeChangeDetails.h new file mode 100644 index 000000000..b3261e5de --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeChangeDetails.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TimeChangeDetails_H_ +#define _TimeChangeDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SPAT_TimeMark.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeChangeDetails */ +typedef struct TimeChangeDetails { + SPAT_TimeMark_t *startTime; /* OPTIONAL */ + SPAT_TimeMark_t minEndTime; + SPAT_TimeMark_t *maxEndTime; /* OPTIONAL */ + SPAT_TimeMark_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + SPAT_TimeMark_t *nextTime; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TimeChangeDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeChangeDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeConfidence.h new file mode 100644 index 000000000..6f518e247 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeConfidence.h @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TimeConfidence_H_ +#define _TimeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TimeConfidence { + TimeConfidence_unavailable = 0, + TimeConfidence_time_100_000 = 1, + TimeConfidence_time_050_000 = 2, + TimeConfidence_time_020_000 = 3, + TimeConfidence_time_010_000 = 4, + TimeConfidence_time_002_000 = 5, + TimeConfidence_time_001_000 = 6, + TimeConfidence_time_000_500 = 7, + TimeConfidence_time_000_200 = 8, + TimeConfidence_time_000_100 = 9, + TimeConfidence_time_000_050 = 10, + TimeConfidence_time_000_020 = 11, + TimeConfidence_time_000_010 = 12, + TimeConfidence_time_000_005 = 13, + TimeConfidence_time_000_002 = 14, + TimeConfidence_time_000_001 = 15, + TimeConfidence_time_000_000_5 = 16, + TimeConfidence_time_000_000_2 = 17, + TimeConfidence_time_000_000_1 = 18, + TimeConfidence_time_000_000_05 = 19, + TimeConfidence_time_000_000_02 = 20, + TimeConfidence_time_000_000_01 = 21, + TimeConfidence_time_000_000_005 = 22, + TimeConfidence_time_000_000_002 = 23, + TimeConfidence_time_000_000_001 = 24, + TimeConfidence_time_000_000_000_5 = 25, + TimeConfidence_time_000_000_000_2 = 26, + TimeConfidence_time_000_000_000_1 = 27, + TimeConfidence_time_000_000_000_05 = 28, + TimeConfidence_time_000_000_000_02 = 29, + TimeConfidence_time_000_000_000_01 = 30, + TimeConfidence_time_000_000_000_005 = 31, + TimeConfidence_time_000_000_000_002 = 32, + TimeConfidence_time_000_000_000_001 = 33, + TimeConfidence_time_000_000_000_000_5 = 34, + TimeConfidence_time_000_000_000_000_2 = 35, + TimeConfidence_time_000_000_000_000_1 = 36, + TimeConfidence_time_000_000_000_000_05 = 37, + TimeConfidence_time_000_000_000_000_02 = 38, + TimeConfidence_time_000_000_000_000_01 = 39 +} e_TimeConfidence; + +/* TimeConfidence */ +typedef long TimeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1; +asn_struct_free_f TimeConfidence_free; +asn_struct_print_f TimeConfidence_print; +asn_constr_check_f TimeConfidence_constraint; +ber_type_decoder_f TimeConfidence_decode_ber; +der_type_encoder_f TimeConfidence_encode_der; +xer_type_decoder_f TimeConfidence_decode_xer; +xer_type_encoder_f TimeConfidence_encode_xer; +oer_type_decoder_f TimeConfidence_decode_oer; +oer_type_encoder_f TimeConfidence_encode_oer; +per_type_decoder_f TimeConfidence_decode_uper; +per_type_encoder_f TimeConfidence_encode_uper; +per_type_decoder_f TimeConfidence_decode_aper; +per_type_encoder_f TimeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeIntervalConfidence.h new file mode 100644 index 000000000..ad28ca402 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeIntervalConfidence.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TimeIntervalConfidence_H_ +#define _TimeIntervalConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeIntervalConfidence */ +typedef long TimeIntervalConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; +asn_struct_free_f TimeIntervalConfidence_free; +asn_struct_print_f TimeIntervalConfidence_print; +asn_constr_check_f TimeIntervalConfidence_constraint; +ber_type_decoder_f TimeIntervalConfidence_decode_ber; +der_type_encoder_f TimeIntervalConfidence_encode_der; +xer_type_decoder_f TimeIntervalConfidence_decode_xer; +xer_type_encoder_f TimeIntervalConfidence_encode_xer; +oer_type_decoder_f TimeIntervalConfidence_decode_oer; +oer_type_encoder_f TimeIntervalConfidence_encode_oer; +per_type_decoder_f TimeIntervalConfidence_decode_uper; +per_type_encoder_f TimeIntervalConfidence_encode_uper; +per_type_decoder_f TimeIntervalConfidence_decode_aper; +per_type_encoder_f TimeIntervalConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeIntervalConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeOffset.h new file mode 100644 index 000000000..cb32e7883 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeOffset.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TimeOffset_H_ +#define _TimeOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeOffset */ +typedef long TimeOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeOffset; +asn_struct_free_f TimeOffset_free; +asn_struct_print_f TimeOffset_print; +asn_constr_check_f TimeOffset_constraint; +ber_type_decoder_f TimeOffset_decode_ber; +der_type_encoder_f TimeOffset_encode_der; +xer_type_decoder_f TimeOffset_decode_xer; +xer_type_encoder_f TimeOffset_encode_xer; +oer_type_decoder_f TimeOffset_decode_oer; +oer_type_encoder_f TimeOffset_encode_oer; +per_type_decoder_f TimeOffset_decode_uper; +per_type_encoder_f TimeOffset_encode_uper; +per_type_decoder_f TimeOffset_decode_aper; +per_type_encoder_f TimeOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeRemaining.h new file mode 100644 index 000000000..d16b046e0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TimeRemaining.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TimeRemaining_H_ +#define _TimeRemaining_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeRemaining */ +typedef long TimeRemaining_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; +asn_struct_free_f TimeRemaining_free; +asn_struct_print_f TimeRemaining_print; +asn_constr_check_f TimeRemaining_constraint; +ber_type_decoder_f TimeRemaining_decode_ber; +der_type_encoder_f TimeRemaining_encode_der; +xer_type_decoder_f TimeRemaining_decode_xer; +xer_type_encoder_f TimeRemaining_encode_xer; +oer_type_decoder_f TimeRemaining_decode_oer; +oer_type_encoder_f TimeRemaining_encode_oer; +per_type_decoder_f TimeRemaining_decode_uper; +per_type_encoder_f TimeRemaining_encode_uper; +per_type_decoder_f TimeRemaining_decode_aper; +per_type_encoder_f TimeRemaining_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeRemaining_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireData.h new file mode 100644 index 000000000..28aa0a85f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireData.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TireData_H_ +#define _TireData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TireLocation.h" +#include "TirePressure.h" +#include "TireTemp.h" +#include "WheelSensorStatus.h" +#include "WheelEndElectFault.h" +#include "TireLeakageRate.h" +#include "TirePressureThresholdDetection.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireData */ +typedef struct TireData { + TireLocation_t *location; /* OPTIONAL */ + TirePressure_t *pressure; /* OPTIONAL */ + TireTemp_t *temp; /* OPTIONAL */ + WheelSensorStatus_t *wheelSensorStatus; /* OPTIONAL */ + WheelEndElectFault_t *wheelEndElectFault; /* OPTIONAL */ + TireLeakageRate_t *leakageRate; /* OPTIONAL */ + TirePressureThresholdDetection_t *detection; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireData; +extern asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1; +extern asn_TYPE_member_t asn_MBR_TireData_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireDataList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireDataList.h new file mode 100644 index 000000000..6d6faf407 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireDataList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TireDataList_H_ +#define _TireDataList_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 TireData; + +/* TireDataList */ +typedef struct TireDataList { + A_SEQUENCE_OF(struct TireData) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireDataList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireDataList; +extern asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1; +extern asn_TYPE_member_t asn_MBR_TireDataList_1[1]; +extern asn_per_constraints_t asn_PER_type_TireDataList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TireData.h" + +#endif /* _TireDataList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLeakageRate.h new file mode 100644 index 000000000..fd444333a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLeakageRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TireLeakageRate_H_ +#define _TireLeakageRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLeakageRate */ +typedef long TireLeakageRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; +asn_struct_free_f TireLeakageRate_free; +asn_struct_print_f TireLeakageRate_print; +asn_constr_check_f TireLeakageRate_constraint; +ber_type_decoder_f TireLeakageRate_decode_ber; +der_type_encoder_f TireLeakageRate_encode_der; +xer_type_decoder_f TireLeakageRate_decode_xer; +xer_type_encoder_f TireLeakageRate_encode_xer; +oer_type_decoder_f TireLeakageRate_decode_oer; +oer_type_encoder_f TireLeakageRate_encode_oer; +per_type_decoder_f TireLeakageRate_decode_uper; +per_type_encoder_f TireLeakageRate_encode_uper; +per_type_decoder_f TireLeakageRate_decode_aper; +per_type_encoder_f TireLeakageRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLeakageRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLocation.h new file mode 100644 index 000000000..f90e5e306 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TireLocation_H_ +#define _TireLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLocation */ +typedef long TireLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLocation; +asn_struct_free_f TireLocation_free; +asn_struct_print_f TireLocation_print; +asn_constr_check_f TireLocation_constraint; +ber_type_decoder_f TireLocation_decode_ber; +der_type_encoder_f TireLocation_encode_der; +xer_type_decoder_f TireLocation_decode_xer; +xer_type_encoder_f TireLocation_encode_xer; +oer_type_decoder_f TireLocation_decode_oer; +oer_type_encoder_f TireLocation_encode_oer; +per_type_decoder_f TireLocation_decode_uper; +per_type_encoder_f TireLocation_encode_uper; +per_type_decoder_f TireLocation_decode_aper; +per_type_encoder_f TireLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressure.h new file mode 100644 index 000000000..b246eaff3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TirePressure_H_ +#define _TirePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TirePressure */ +typedef long TirePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressure; +asn_struct_free_f TirePressure_free; +asn_struct_print_f TirePressure_print; +asn_constr_check_f TirePressure_constraint; +ber_type_decoder_f TirePressure_decode_ber; +der_type_encoder_f TirePressure_encode_der; +xer_type_decoder_f TirePressure_decode_xer; +xer_type_encoder_f TirePressure_encode_xer; +oer_type_decoder_f TirePressure_decode_oer; +oer_type_encoder_f TirePressure_encode_oer; +per_type_decoder_f TirePressure_decode_uper; +per_type_encoder_f TirePressure_encode_uper; +per_type_decoder_f TirePressure_decode_aper; +per_type_encoder_f TirePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressureThresholdDetection.h new file mode 100644 index 000000000..cb27be43e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TirePressureThresholdDetection.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TirePressureThresholdDetection_H_ +#define _TirePressureThresholdDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TirePressureThresholdDetection { + TirePressureThresholdDetection_noData = 0, + TirePressureThresholdDetection_overPressure = 1, + TirePressureThresholdDetection_noWarningPressure = 2, + TirePressureThresholdDetection_underPressure = 3, + TirePressureThresholdDetection_extremeUnderPressure = 4, + TirePressureThresholdDetection_undefined = 5, + TirePressureThresholdDetection_errorIndicator = 6, + TirePressureThresholdDetection_notAvailable = 7 +} e_TirePressureThresholdDetection; + +/* TirePressureThresholdDetection */ +typedef long TirePressureThresholdDetection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; +extern const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1; +asn_struct_free_f TirePressureThresholdDetection_free; +asn_struct_print_f TirePressureThresholdDetection_print; +asn_constr_check_f TirePressureThresholdDetection_constraint; +ber_type_decoder_f TirePressureThresholdDetection_decode_ber; +der_type_encoder_f TirePressureThresholdDetection_encode_der; +xer_type_decoder_f TirePressureThresholdDetection_decode_xer; +xer_type_encoder_f TirePressureThresholdDetection_encode_xer; +oer_type_decoder_f TirePressureThresholdDetection_decode_oer; +oer_type_encoder_f TirePressureThresholdDetection_encode_oer; +per_type_decoder_f TirePressureThresholdDetection_decode_uper; +per_type_encoder_f TirePressureThresholdDetection_encode_uper; +per_type_decoder_f TirePressureThresholdDetection_decode_aper; +per_type_encoder_f TirePressureThresholdDetection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressureThresholdDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireTemp.h new file mode 100644 index 000000000..fa81dd865 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TireTemp.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TireTemp_H_ +#define _TireTemp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireTemp */ +typedef long TireTemp_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireTemp_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireTemp; +asn_struct_free_f TireTemp_free; +asn_struct_print_f TireTemp_print; +asn_constr_check_f TireTemp_constraint; +ber_type_decoder_f TireTemp_decode_ber; +der_type_encoder_f TireTemp_encode_der; +xer_type_decoder_f TireTemp_decode_xer; +xer_type_encoder_f TireTemp_encode_xer; +oer_type_decoder_f TireTemp_decode_oer; +oer_type_encoder_f TireTemp_encode_oer; +per_type_decoder_f TireTemp_decode_uper; +per_type_encoder_f TireTemp_encode_uper; +per_type_decoder_f TireTemp_decode_aper; +per_type_encoder_f TireTemp_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireTemp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TractionControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TractionControlStatus.h new file mode 100644 index 000000000..3f1be2b62 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TractionControlStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TractionControlStatus_H_ +#define _TractionControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TractionControlStatus { + TractionControlStatus_unavailable = 0, + TractionControlStatus_off = 1, + TractionControlStatus_on = 2, + TractionControlStatus_engaged = 3 +} e_TractionControlStatus; + +/* TractionControlStatus */ +typedef long TractionControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TractionControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1; +asn_struct_free_f TractionControlStatus_free; +asn_struct_print_f TractionControlStatus_print; +asn_constr_check_f TractionControlStatus_constraint; +ber_type_decoder_f TractionControlStatus_decode_ber; +der_type_encoder_f TractionControlStatus_encode_der; +xer_type_decoder_f TractionControlStatus_decode_xer; +xer_type_encoder_f TractionControlStatus_encode_xer; +oer_type_decoder_f TractionControlStatus_decode_oer; +oer_type_encoder_f TractionControlStatus_encode_oer; +per_type_decoder_f TractionControlStatus_decode_uper; +per_type_encoder_f TractionControlStatus_encode_uper; +per_type_decoder_f TractionControlStatus_decode_aper; +per_type_encoder_f TractionControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TractionControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlBounds.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlBounds.h new file mode 100644 index 000000000..6bf623745 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlBounds.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlBounds_H_ +#define _TrafficControlBounds_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EpochMins.h" +#include "Longitude.h" +#include "Latitude.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct OffsetPoint; + +/* TrafficControlBounds */ +typedef struct TrafficControlBounds { + EpochMins_t oldest; + Longitude_t reflon; + Latitude_t reflat; + struct TrafficControlBounds__offsets { + A_SEQUENCE_OF(struct OffsetPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsets; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlBounds_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "OffsetPoint.h" + +#endif /* _TrafficControlBounds_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlDetail.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlDetail.h new file mode 100644 index 000000000..e3bf5539c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlDetail.h @@ -0,0 +1,146 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlDetail_H_ +#define _TrafficControlDetail_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" +#include "NULL.h" +#include "NativeEnumerated.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlDetail_PR { + TrafficControlDetail_PR_NOTHING, /* No components present */ + TrafficControlDetail_PR_signal, + TrafficControlDetail_PR_stop, + TrafficControlDetail_PR_yield, + TrafficControlDetail_PR_notowing, + TrafficControlDetail_PR_restricted, + TrafficControlDetail_PR_closed, + TrafficControlDetail_PR_chains, + TrafficControlDetail_PR_direction, + TrafficControlDetail_PR_lataffinity, + TrafficControlDetail_PR_latperm, + TrafficControlDetail_PR_parking, + TrafficControlDetail_PR_minspeed, + TrafficControlDetail_PR_maxspeed, + TrafficControlDetail_PR_minhdwy, + TrafficControlDetail_PR_maxvehmass, + TrafficControlDetail_PR_maxvehheight, + TrafficControlDetail_PR_maxvehwidth, + TrafficControlDetail_PR_maxvehlength, + TrafficControlDetail_PR_maxvehaxles, + TrafficControlDetail_PR_minvehocc, + TrafficControlDetail_PR_maxplatoonsize, + TrafficControlDetail_PR_minplatoonhdwy, + /* Extensions may appear below */ + +} TrafficControlDetail_PR; +typedef enum TrafficControlDetail__closed { + TrafficControlDetail__closed_open = 0, + TrafficControlDetail__closed_closed = 1, + TrafficControlDetail__closed_taperleft = 2, + TrafficControlDetail__closed_taperright = 3, + TrafficControlDetail__closed_openleft = 4, + TrafficControlDetail__closed_openright = 5 +} e_TrafficControlDetail__closed; +typedef enum TrafficControlDetail__chains { + TrafficControlDetail__chains_no = 0, + TrafficControlDetail__chains_permitted = 1, + TrafficControlDetail__chains_required = 2 +} e_TrafficControlDetail__chains; +typedef enum TrafficControlDetail__direction { + TrafficControlDetail__direction_forward = 0, + TrafficControlDetail__direction_reverse = 1 +} e_TrafficControlDetail__direction; +typedef enum TrafficControlDetail__lataffinity { + TrafficControlDetail__lataffinity_left = 0, + TrafficControlDetail__lataffinity_right = 1 +} e_TrafficControlDetail__lataffinity; +typedef enum TrafficControlDetail__latperm__Member { + TrafficControlDetail__latperm__Member_none = 0, + TrafficControlDetail__latperm__Member_permitted = 1, + TrafficControlDetail__latperm__Member_passing_only = 2, + TrafficControlDetail__latperm__Member_emergency_only = 3 +} e_TrafficControlDetail__latperm__Member; +typedef enum TrafficControlDetail__parking { + TrafficControlDetail__parking_no = 0, + TrafficControlDetail__parking_parallel = 1, + TrafficControlDetail__parking_angled = 2 +} e_TrafficControlDetail__parking; + +/* TrafficControlDetail */ +typedef struct TrafficControlDetail { + TrafficControlDetail_PR present; + union TrafficControlDetail_u { + OCTET_STRING_t signal; + NULL_t stop; + NULL_t yield; + NULL_t notowing; + NULL_t restricted; + long closed; + long chains; + long direction; + long lataffinity; + struct TrafficControlDetail__latperm { + A_SEQUENCE_OF(long) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } latperm; + long parking; + long minspeed; + long maxspeed; + long minhdwy; + long maxvehmass; + long maxvehheight; + long maxvehwidth; + long maxvehlength; + long maxvehaxles; + long minvehocc; + long maxplatoonsize; + long minplatoonhdwy; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlDetail_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_closed_7; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_chains_14; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_direction_18; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_21; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_Member_25; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_parking_30; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[22]; +extern asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlDetail_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlGeometry.h new file mode 100644 index 000000000..53a1f3d69 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlGeometry.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlGeometry_H_ +#define _TrafficControlGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "EpochMins.h" +#include "Longitude.h" +#include "Latitude.h" +#include "Common_Elevation.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathNode; + +/* TrafficControlGeometry */ +typedef struct TrafficControlGeometry { + IA5String_t proj; + IA5String_t datum; + EpochMins_t reftime; + Longitude_t reflon; + Latitude_t reflat; + Common_Elevation_t refelv; + long *refwidth /* OPTIONAL */; + long heading; + struct TrafficControlGeometry__nodes { + A_SEQUENCE_OF(struct PathNode) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } nodes; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathNode.h" + +#endif /* _TrafficControlGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessage.h new file mode 100644 index 000000000..2c0d35647 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessage.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlMessage_H_ +#define _TrafficControlMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NULL.h" +#include "TrafficControlMessageV01.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlMessage_PR { + TrafficControlMessage_PR_NOTHING, /* No components present */ + TrafficControlMessage_PR_reserved, + TrafficControlMessage_PR_tcmV01 + /* Extensions may appear below */ + +} TrafficControlMessage_PR; + +/* TrafficControlMessage */ +typedef struct TrafficControlMessage { + TrafficControlMessage_PR present; + union TrafficControlMessage_u { + NULL_t reserved; + TrafficControlMessageV01_t tcmV01; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[2]; +extern asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessageV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessageV01.h new file mode 100644 index 000000000..2a77214c5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlMessageV01.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlMessageV01_H_ +#define _TrafficControlMessageV01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Id64b.h" +#include "NativeInteger.h" +#include "Id128b.h" +#include "EpochMins.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TrafficControlPackage; +struct TrafficControlParams; +struct TrafficControlGeometry; + +/* TrafficControlMessageV01 */ +typedef struct TrafficControlMessageV01 { + Id64b_t reqid; + long reqseq; + long msgtot; + long msgnum; + Id128b_t id; + EpochMins_t updated; + struct TrafficControlPackage *package; /* OPTIONAL */ + struct TrafficControlParams *params; /* OPTIONAL */ + struct TrafficControlGeometry *geometry; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlMessageV01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrafficControlPackage.h" +#include "TrafficControlParams.h" +#include "TrafficControlGeometry.h" + +#endif /* _TrafficControlMessageV01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPackage.h new file mode 100644 index 000000000..e898b45f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPackage.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlPackage_H_ +#define _TrafficControlPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "Id128b.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrafficControlPackage */ +typedef struct TrafficControlPackage { + IA5String_t *label; /* OPTIONAL */ + struct TrafficControlPackage__tcids { + A_SEQUENCE_OF(Id128b_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } tcids; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlParams.h new file mode 100644 index 000000000..82aa4501c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlParams.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlParams_H_ +#define _TrafficControlParams_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlSchedule.h" +#include "BOOLEAN.h" +#include "TrafficControlDetail.h" +#include "TrafficControlVehClass.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrafficControlParams */ +typedef struct TrafficControlParams { + struct TrafficControlParams__vclasses { + A_SEQUENCE_OF(TrafficControlVehClass_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } vclasses; + TrafficControlSchedule_t schedule; + BOOLEAN_t regulatory; + TrafficControlDetail_t detail; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlParams_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlParams; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlParams_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlParams_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPathPart.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPathPart.h new file mode 100644 index 000000000..c0e8eaa5e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlPathPart.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlPathPart_H_ +#define _TrafficControlPathPart_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" +#include "INTEGER.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Point; + +/* TrafficControlPathPart */ +typedef struct TrafficControlPathPart { + OCTET_STRING_t id; + INTEGER_t updated; + long pathindex; + struct TrafficControlPathPart__points { + A_SEQUENCE_OF(struct Point) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } points; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlPathPart_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Point.h" + +#endif /* _TrafficControlPathPart_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequest.h new file mode 100644 index 000000000..ae342fa87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequest.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlRequest_H_ +#define _TrafficControlRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NULL.h" +#include "TrafficControlRequestV01.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlRequest_PR { + TrafficControlRequest_PR_NOTHING, /* No components present */ + TrafficControlRequest_PR_reserved, + TrafficControlRequest_PR_tcrV01 + /* Extensions may appear below */ + +} TrafficControlRequest_PR; + +/* TrafficControlRequest */ +typedef struct TrafficControlRequest { + TrafficControlRequest_PR present; + union TrafficControlRequest_u { + NULL_t reserved; + TrafficControlRequestV01_t tcrV01; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[2]; +extern asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequestV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequestV01.h new file mode 100644 index 000000000..093f9d0b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlRequestV01.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlRequestV01_H_ +#define _TrafficControlRequestV01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Id64b.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TrafficControlBounds; + +/* TrafficControlRequestV01 */ +typedef struct TrafficControlRequestV01 { + Id64b_t reqid; + long reqseq; + long scale; + struct TrafficControlRequestV01__bounds { + A_SEQUENCE_OF(struct TrafficControlBounds) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } bounds; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlRequestV01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrafficControlBounds.h" + +#endif /* _TrafficControlRequestV01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h new file mode 100644 index 000000000..d67837e49 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlSchedule_H_ +#define _TrafficControlSchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EpochMins.h" +#include "DayOfWeek.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RepeatParams; +struct DailySchedule; + +/* TrafficControlSchedule */ +typedef struct TrafficControlSchedule { + EpochMins_t start; + EpochMins_t *end; /* OPTIONAL */ + DayOfWeek_t *dow; /* OPTIONAL */ + struct TrafficControlSchedule__between { + A_SEQUENCE_OF(struct DailySchedule) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *between; + struct RepeatParams *repeat; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlSchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RepeatParams.h" +#include "DailySchedule.h" + +#endif /* _TrafficControlSchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlType.h new file mode 100644 index 000000000..0bcd62292 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlType.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlType_H_ +#define _TrafficControlType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlType { + TrafficControlType_signal = 0, + TrafficControlType_stop = 1, + TrafficControlType_yield = 2, + TrafficControlType_notowing = 3, + TrafficControlType_restricted = 4, + TrafficControlType_closed = 5, + TrafficControlType_chains = 6, + TrafficControlType_direction = 7, + TrafficControlType_lataffinity = 8, + TrafficControlType_leftperm = 9, + TrafficControlType_rightperm = 10, + TrafficControlType_opening = 11, + TrafficControlType_closing = 12, + TrafficControlType_parking = 13, + TrafficControlType_minspeed = 14, + TrafficControlType_maxspeed = 15, + TrafficControlType_minhdwy = 16, + TrafficControlType_maxvehmass = 17, + TrafficControlType_maxvehheight = 18, + TrafficControlType_maxvehwidth = 19, + TrafficControlType_maxvehlength = 20, + TrafficControlType_maxaxles = 21, + TrafficControlType_minvehocc = 22 +} e_TrafficControlType; + +/* TrafficControlType */ +typedef long TrafficControlType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlType; +extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1; +asn_struct_free_f TrafficControlType_free; +asn_struct_print_f TrafficControlType_print; +asn_constr_check_f TrafficControlType_constraint; +ber_type_decoder_f TrafficControlType_decode_ber; +der_type_encoder_f TrafficControlType_encode_der; +xer_type_decoder_f TrafficControlType_decode_xer; +xer_type_encoder_f TrafficControlType_encode_xer; +oer_type_decoder_f TrafficControlType_decode_oer; +oer_type_encoder_f TrafficControlType_encode_oer; +per_type_decoder_f TrafficControlType_decode_uper; +per_type_encoder_f TrafficControlType_encode_uper; +per_type_decoder_f TrafficControlType_decode_aper; +per_type_encoder_f TrafficControlType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlValue.h new file mode 100644 index 000000000..b7f0f87c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlValue.h @@ -0,0 +1,113 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlValue_H_ +#define _TrafficControlValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "NativeEnumerated.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlValue_PR { + TrafficControlValue_PR_NOTHING, /* No components present */ + TrafficControlValue_PR_value, + TrafficControlValue_PR_chains, + TrafficControlValue_PR_direction, + TrafficControlValue_PR_lataffinity, + TrafficControlValue_PR_leftperm, + TrafficControlValue_PR_rightperm, + TrafficControlValue_PR_opening, + TrafficControlValue_PR_closing, + TrafficControlValue_PR_parking +} TrafficControlValue_PR; +typedef enum TrafficControlValue__chains { + TrafficControlValue__chains_no = 0, + TrafficControlValue__chains_permitted = 1, + TrafficControlValue__chains_required = 2 +} e_TrafficControlValue__chains; +typedef enum TrafficControlValue__direction { + TrafficControlValue__direction_forward = 0, + TrafficControlValue__direction_reverse = 1 +} e_TrafficControlValue__direction; +typedef enum TrafficControlValue__lataffinity { + TrafficControlValue__lataffinity_left = 0, + TrafficControlValue__lataffinity_right = 1 +} e_TrafficControlValue__lataffinity; +typedef enum TrafficControlValue__leftperm { + TrafficControlValue__leftperm_none = 0, + TrafficControlValue__leftperm_permitted = 1, + TrafficControlValue__leftperm_passing_only = 2, + TrafficControlValue__leftperm_emergency_only = 3 +} e_TrafficControlValue__leftperm; +typedef enum TrafficControlValue__rightperm { + TrafficControlValue__rightperm_none = 0, + TrafficControlValue__rightperm_permitted = 1, + TrafficControlValue__rightperm_passing_only = 2, + TrafficControlValue__rightperm_emergency_only = 3 +} e_TrafficControlValue__rightperm; +typedef enum TrafficControlValue__opening { + TrafficControlValue__opening_left = 0, + TrafficControlValue__opening_right = 1 +} e_TrafficControlValue__opening; +typedef enum TrafficControlValue__closing { + TrafficControlValue__closing_left = 0, + TrafficControlValue__closing_right = 1 +} e_TrafficControlValue__closing; +typedef enum TrafficControlValue__parking { + TrafficControlValue__parking_no = 0, + TrafficControlValue__parking_parallel = 1, + TrafficControlValue__parking_angled = 2 +} e_TrafficControlValue__parking; + +/* TrafficControlValue */ +typedef struct TrafficControlValue { + TrafficControlValue_PR present; + union TrafficControlValue_u { + long value; + long chains; + long direction; + long lataffinity; + long leftperm; + long rightperm; + long opening; + long closing; + long parking; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlValue_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_chains_3; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_direction_7; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_10; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_leftperm_13; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_rightperm_18; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_opening_23; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_closing_26; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_parking_29; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlValue; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlValue_1[9]; +extern asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlVehClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlVehClass.h new file mode 100644 index 000000000..45bce8529 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlVehClass.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlVehClass_H_ +#define _TrafficControlVehClass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlVehClass { + TrafficControlVehClass_any = 0, + TrafficControlVehClass_pedestrian = 1, + TrafficControlVehClass_bicycle = 2, + TrafficControlVehClass_micromobile = 3, + TrafficControlVehClass_motorcycle = 4, + TrafficControlVehClass_passenger_car = 5, + TrafficControlVehClass_light_truck_van = 6, + TrafficControlVehClass_bus = 7, + TrafficControlVehClass_two_axle_six_tire_single_unit_truck = 8, + TrafficControlVehClass_three_axle_single_unit_truck = 9, + TrafficControlVehClass_four_or_more_axle_single_unit_truck = 10, + TrafficControlVehClass_four_or_fewer_axle_single_trailer_truck = 11, + TrafficControlVehClass_five_axle_single_trailer_truck = 12, + TrafficControlVehClass_six_or_more_axle_single_trailer_truck = 13, + TrafficControlVehClass_five_or_fewer_axle_multi_trailer_truck = 14, + TrafficControlVehClass_six_axle_multi_trailer_truck = 15, + TrafficControlVehClass_seven_or_more_axle_multi_trailer_truck = 16, + TrafficControlVehClass_rail = 17, + TrafficControlVehClass_unclassified = 18 + /* + * Enumeration is extensible + */ +} e_TrafficControlVehClass; + +/* TrafficControlVehClass */ +typedef long TrafficControlVehClass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass; +extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1; +asn_struct_free_f TrafficControlVehClass_free; +asn_struct_print_f TrafficControlVehClass_print; +asn_constr_check_f TrafficControlVehClass_constraint; +ber_type_decoder_f TrafficControlVehClass_decode_ber; +der_type_encoder_f TrafficControlVehClass_encode_der; +xer_type_decoder_f TrafficControlVehClass_decode_xer; +xer_type_encoder_f TrafficControlVehClass_encode_xer; +oer_type_decoder_f TrafficControlVehClass_decode_oer; +oer_type_encoder_f TrafficControlVehClass_encode_oer; +per_type_decoder_f TrafficControlVehClass_decode_uper; +per_type_encoder_f TrafficControlVehClass_encode_uper; +per_type_decoder_f TrafficControlVehClass_decode_aper; +per_type_encoder_f TrafficControlVehClass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlVehClass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerData.h new file mode 100644 index 000000000..78d885b21 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerData.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerData_H_ +#define _TrailerData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PivotPointDescription.h" +#include "TrailerUnitDescriptionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerData */ +typedef struct TrailerData { + SSPindex_t notUsed; + PivotPointDescription_t connection; + TrailerUnitDescriptionList_t units; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerData; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerData_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPoint.h new file mode 100644 index 000000000..2f8efe3c1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPoint.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerHistoryPoint_H_ +#define _TrailerHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_Angle.h" +#include "TimeOffset.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerHistoryPoint */ +typedef struct TrailerHistoryPoint { + Common_Angle_t pivotAngle; + TimeOffset_t timeOffset; + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPointList.h new file mode 100644 index 000000000..d8f71d497 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerHistoryPointList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerHistoryPointList_H_ +#define _TrailerHistoryPointList_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 TrailerHistoryPoint; + +/* TrailerHistoryPointList */ +typedef struct TrailerHistoryPointList { + A_SEQUENCE_OF(struct TrailerHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrailerHistoryPoint.h" + +#endif /* _TrailerHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerMass.h new file mode 100644 index 000000000..0a16e518c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerMass.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerMass_H_ +#define _TrailerMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerMass */ +typedef long TrailerMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerMass; +asn_struct_free_f TrailerMass_free; +asn_struct_print_f TrailerMass_print; +asn_constr_check_f TrailerMass_constraint; +ber_type_decoder_f TrailerMass_decode_ber; +der_type_encoder_f TrailerMass_encode_der; +xer_type_decoder_f TrailerMass_decode_xer; +xer_type_encoder_f TrailerMass_encode_xer; +oer_type_decoder_f TrailerMass_decode_oer; +oer_type_encoder_f TrailerMass_encode_oer; +per_type_decoder_f TrailerMass_decode_uper; +per_type_encoder_f TrailerMass_encode_uper; +per_type_decoder_f TrailerMass_decode_aper; +per_type_encoder_f TrailerMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescription.h new file mode 100644 index 000000000..b42e748fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescription.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerUnitDescription_H_ +#define _TrailerUnitDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IsDolly.h" +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "VehicleHeight.h" +#include "TrailerMass.h" +#include "PivotPointDescription.h" +#include "Offset-B12.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; +struct PivotPointDescription; +struct TrailerHistoryPointList; + +/* TrailerUnitDescription */ +typedef struct TrailerUnitDescription { + IsDolly_t isDolly; + VehicleWidth_t width; + VehicleLength_t length; + VehicleHeight_t *height; /* OPTIONAL */ + TrailerMass_t *mass; /* OPTIONAL */ + struct BumperHeights *bumperHeights; /* OPTIONAL */ + VehicleHeight_t *centerOfGravity; /* OPTIONAL */ + PivotPointDescription_t frontPivot; + struct PivotPointDescription *rearPivot; /* OPTIONAL */ + Offset_B12_t *rearWheelOffset; /* OPTIONAL */ + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + struct TrailerHistoryPointList *crumbData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[13]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BumperHeights.h" +#include "PivotPointDescription.h" +#include "TrailerHistoryPointList.h" + +#endif /* _TrailerUnitDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescriptionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescriptionList.h new file mode 100644 index 000000000..bedcffb2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerUnitDescriptionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerUnitDescriptionList_H_ +#define _TrailerUnitDescriptionList_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 TrailerUnitDescription; + +/* TrailerUnitDescriptionList */ +typedef struct TrailerUnitDescriptionList { + A_SEQUENCE_OF(struct TrailerUnitDescription) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescriptionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrailerUnitDescription.h" + +#endif /* _TrailerUnitDescriptionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerWeight.h new file mode 100644 index 000000000..a46a84044 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrailerWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TrailerWeight_H_ +#define _TrailerWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerWeight */ +typedef long TrailerWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; +asn_struct_free_f TrailerWeight_free; +asn_struct_print_f TrailerWeight_print; +asn_constr_check_f TrailerWeight_constraint; +ber_type_decoder_f TrailerWeight_decode_ber; +der_type_encoder_f TrailerWeight_encode_der; +xer_type_decoder_f TrailerWeight_decode_xer; +xer_type_encoder_f TrailerWeight_encode_xer; +oer_type_decoder_f TrailerWeight_decode_oer; +oer_type_encoder_f TrailerWeight_encode_oer; +per_type_decoder_f TrailerWeight_decode_uper; +per_type_encoder_f TrailerWeight_encode_uper; +per_type_decoder_f TrailerWeight_decode_aper; +per_type_encoder_f TrailerWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitStatus.h new file mode 100644 index 000000000..7e1192df2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TransitStatus_H_ +#define _TransitStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitStatus { + TransitStatus_none = 0, + TransitStatus_anADAuse = 1, + TransitStatus_aBikeLoad = 2, + TransitStatus_doorOpen = 3, + TransitStatus_occM = 4, + TransitStatus_occL = 5 +} e_TransitStatus; + +/* TransitStatus */ +typedef BIT_STRING_t TransitStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; +asn_struct_free_f TransitStatus_free; +asn_struct_print_f TransitStatus_print; +asn_constr_check_f TransitStatus_constraint; +ber_type_decoder_f TransitStatus_decode_ber; +der_type_encoder_f TransitStatus_encode_der; +xer_type_decoder_f TransitStatus_decode_xer; +xer_type_encoder_f TransitStatus_encode_xer; +oer_type_decoder_f TransitStatus_decode_oer; +oer_type_encoder_f TransitStatus_encode_oer; +per_type_decoder_f TransitStatus_decode_uper; +per_type_encoder_f TransitStatus_encode_uper; +per_type_decoder_f TransitStatus_decode_aper; +per_type_encoder_f TransitStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleOccupancy.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleOccupancy.h new file mode 100644 index 000000000..f1440d858 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleOccupancy.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TransitVehicleOccupancy_H_ +#define _TransitVehicleOccupancy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleOccupancy { + TransitVehicleOccupancy_occupancyUnknown = 0, + TransitVehicleOccupancy_occupancyEmpty = 1, + TransitVehicleOccupancy_occupancyVeryLow = 2, + TransitVehicleOccupancy_occupancyLow = 3, + TransitVehicleOccupancy_occupancyMed = 4, + TransitVehicleOccupancy_occupancyHigh = 5, + TransitVehicleOccupancy_occupancyNearlyFull = 6, + TransitVehicleOccupancy_occupancyFull = 7 +} e_TransitVehicleOccupancy; + +/* TransitVehicleOccupancy */ +typedef long TransitVehicleOccupancy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy; +extern const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1; +asn_struct_free_f TransitVehicleOccupancy_free; +asn_struct_print_f TransitVehicleOccupancy_print; +asn_constr_check_f TransitVehicleOccupancy_constraint; +ber_type_decoder_f TransitVehicleOccupancy_decode_ber; +der_type_encoder_f TransitVehicleOccupancy_encode_der; +xer_type_decoder_f TransitVehicleOccupancy_decode_xer; +xer_type_encoder_f TransitVehicleOccupancy_encode_xer; +oer_type_decoder_f TransitVehicleOccupancy_decode_oer; +oer_type_encoder_f TransitVehicleOccupancy_encode_oer; +per_type_decoder_f TransitVehicleOccupancy_decode_uper; +per_type_encoder_f TransitVehicleOccupancy_encode_uper; +per_type_decoder_f TransitVehicleOccupancy_decode_aper; +per_type_encoder_f TransitVehicleOccupancy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleOccupancy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleStatus.h new file mode 100644 index 000000000..27dc74117 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransitVehicleStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TransitVehicleStatus_H_ +#define _TransitVehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleStatus { + TransitVehicleStatus_loading = 0, + TransitVehicleStatus_anADAuse = 1, + TransitVehicleStatus_aBikeLoad = 2, + TransitVehicleStatus_doorOpen = 3, + TransitVehicleStatus_charging = 4, + TransitVehicleStatus_atStopLine = 5 +} e_TransitVehicleStatus; + +/* TransitVehicleStatus */ +typedef BIT_STRING_t TransitVehicleStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus; +asn_struct_free_f TransitVehicleStatus_free; +asn_struct_print_f TransitVehicleStatus_print; +asn_constr_check_f TransitVehicleStatus_constraint; +ber_type_decoder_f TransitVehicleStatus_decode_ber; +der_type_encoder_f TransitVehicleStatus_encode_der; +xer_type_decoder_f TransitVehicleStatus_decode_xer; +xer_type_encoder_f TransitVehicleStatus_encode_xer; +oer_type_decoder_f TransitVehicleStatus_decode_oer; +oer_type_encoder_f TransitVehicleStatus_encode_oer; +per_type_decoder_f TransitVehicleStatus_decode_uper; +per_type_encoder_f TransitVehicleStatus_encode_uper; +per_type_decoder_f TransitVehicleStatus_decode_aper; +per_type_encoder_f TransitVehicleStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionAndSpeed.h new file mode 100644 index 000000000..d18e51043 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionAndSpeed.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TransmissionAndSpeed_H_ +#define _TransmissionAndSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TransmissionState.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TransmissionAndSpeed */ +typedef struct TransmissionAndSpeed { + TransmissionState_t transmisson; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TransmissionAndSpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionAndSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionState.h new file mode 100644 index 000000000..4c3d805aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TransmissionState.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TransmissionState_H_ +#define _TransmissionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransmissionState { + TransmissionState_neutral = 0, + TransmissionState_park = 1, + TransmissionState_forwardGears = 2, + TransmissionState_reverseGears = 3, + TransmissionState_reserved1 = 4, + TransmissionState_reserved2 = 5, + TransmissionState_reserved3 = 6, + TransmissionState_unavailable = 7 +} e_TransmissionState; + +/* TransmissionState */ +typedef long TransmissionState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransmissionState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; +extern const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1; +asn_struct_free_f TransmissionState_free; +asn_struct_print_f TransmissionState_print; +asn_constr_check_f TransmissionState_constraint; +ber_type_decoder_f TransmissionState_decode_ber; +der_type_encoder_f TransmissionState_encode_der; +xer_type_decoder_f TransmissionState_decode_xer; +xer_type_encoder_f TransmissionState_encode_xer; +oer_type_decoder_f TransmissionState_decode_oer; +oer_type_encoder_f TransmissionState_encode_oer; +per_type_decoder_f TransmissionState_decode_uper; +per_type_encoder_f TransmissionState_encode_uper; +per_type_decoder_f TransmissionState_decode_aper; +per_type_encoder_f TransmissionState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrame.h new file mode 100644 index 000000000..867dc0f5d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrame.h @@ -0,0 +1,119 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TravelerDataFrame_H_ +#define _TravelerDataFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "TravelerInfoType.h" +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "MinutesDuration.h" +#include "SignPrority.h" +#include "URL-Short.h" +#include "FurtherInfoID.h" +#include "RoadSignID.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "ITIScodesAndText.h" +#include "WorkZone.h" +#include "GenericSignage.h" +#include "SpeedLimit.h" +#include "ExitService.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerDataFrame__msgId_PR { + TravelerDataFrame__msgId_PR_NOTHING, /* No components present */ + TravelerDataFrame__msgId_PR_furtherInfoID, + TravelerDataFrame__msgId_PR_roadSignID +} TravelerDataFrame__msgId_PR; +typedef enum TravelerDataFrame__content_PR { + TravelerDataFrame__content_PR_NOTHING, /* No components present */ + TravelerDataFrame__content_PR_advisory, + TravelerDataFrame__content_PR_workZone, + TravelerDataFrame__content_PR_genericSign, + TravelerDataFrame__content_PR_speedLimit, + TravelerDataFrame__content_PR_exitService +} TravelerDataFrame__content_PR; + +/* Forward declarations */ +struct GeographicalPath; + +/* TravelerDataFrame */ +typedef struct TravelerDataFrame { + SSPindex_t notUsed; + TravelerInfoType_t frameType; + struct TravelerDataFrame__msgId { + TravelerDataFrame__msgId_PR present; + union TravelerDataFrame__msgId_u { + FurtherInfoID_t furtherInfoID; + RoadSignID_t roadSignID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } msgId; + DYear_t *startYear; /* OPTIONAL */ + MinuteOfTheYear_t startTime; + MinutesDuration_t durationTime; + SignPrority_t priority; + SSPindex_t notUsed1; + struct TravelerDataFrame__regions { + A_SEQUENCE_OF(struct GeographicalPath) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regions; + SSPindex_t notUsed2; + SSPindex_t notUsed3; + struct TravelerDataFrame__content { + TravelerDataFrame__content_PR present; + union TravelerDataFrame__content_u { + ITIScodesAndText_t advisory; + WorkZone_t workZone; + GenericSignage_t genericSign; + SpeedLimit_t speedLimit; + ExitService_t exitService; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } content; + URL_Short_t *url; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[13]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GeographicalPath.h" + +#endif /* _TravelerDataFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrameList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrameList.h new file mode 100644 index 000000000..c9b2c079a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerDataFrameList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TravelerDataFrameList_H_ +#define _TravelerDataFrameList_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 TravelerDataFrame; + +/* TravelerDataFrameList */ +typedef struct TravelerDataFrameList { + A_SEQUENCE_OF(struct TravelerDataFrame) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrameList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList; +extern asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[1]; +extern asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TravelerDataFrame.h" + +#endif /* _TravelerDataFrameList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInfoType.h new file mode 100644 index 000000000..636834c60 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInfoType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TravelerInfoType_H_ +#define _TravelerInfoType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerInfoType { + TravelerInfoType_unknown = 0, + TravelerInfoType_advisory = 1, + TravelerInfoType_roadSignage = 2, + TravelerInfoType_commercialSignage = 3 + /* + * Enumeration is extensible + */ +} e_TravelerInfoType; + +/* TravelerInfoType */ +typedef long TravelerInfoType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; +extern const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1; +asn_struct_free_f TravelerInfoType_free; +asn_struct_print_f TravelerInfoType_print; +asn_constr_check_f TravelerInfoType_constraint; +ber_type_decoder_f TravelerInfoType_decode_ber; +der_type_encoder_f TravelerInfoType_encode_der; +xer_type_decoder_f TravelerInfoType_decode_xer; +xer_type_encoder_f TravelerInfoType_encode_xer; +oer_type_decoder_f TravelerInfoType_decode_oer; +oer_type_encoder_f TravelerInfoType_encode_oer; +per_type_decoder_f TravelerInfoType_decode_uper; +per_type_encoder_f TravelerInfoType_encode_uper; +per_type_decoder_f TravelerInfoType_decode_aper; +per_type_encoder_f TravelerInfoType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerInfoType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInformation.h new file mode 100644 index 000000000..ac48d5bd6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TravelerInformation.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _TravelerInformation_H_ +#define _TravelerInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Common_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "UniqueMSGID.h" +#include "URL-Base.h" +#include "TravelerDataFrameList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_TravelerInformation; + +/* TravelerInformation */ +typedef struct TravelerInformation { + Common_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + UniqueMSGID_t *packetID; /* OPTIONAL */ + URL_Base_t *urlB; /* OPTIONAL */ + TravelerDataFrameList_t dataFrames; + struct TravelerInformation__regional { + A_SEQUENCE_OF(struct Reg_TravelerInformation) 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; +} TravelerInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerInformation_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _TravelerInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Base.h new file mode 100644 index 000000000..1e2b9f020 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Base.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _URL_Base_H_ +#define _URL_Base_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Base */ +typedef IA5String_t URL_Base_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Base_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Base; +asn_struct_free_f URL_Base_free; +asn_struct_print_f URL_Base_print; +asn_constr_check_f URL_Base_constraint; +ber_type_decoder_f URL_Base_decode_ber; +der_type_encoder_f URL_Base_encode_der; +xer_type_decoder_f URL_Base_decode_xer; +xer_type_encoder_f URL_Base_encode_xer; +oer_type_decoder_f URL_Base_decode_oer; +oer_type_encoder_f URL_Base_encode_oer; +per_type_decoder_f URL_Base_decode_uper; +per_type_encoder_f URL_Base_encode_uper; +per_type_decoder_f URL_Base_decode_aper; +per_type_encoder_f URL_Base_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Base_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Link.h new file mode 100644 index 000000000..1bc04f45c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Link.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _URL_Link_H_ +#define _URL_Link_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Link */ +typedef IA5String_t URL_Link_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Link; +asn_struct_free_f URL_Link_free; +asn_struct_print_f URL_Link_print; +asn_constr_check_f URL_Link_constraint; +ber_type_decoder_f URL_Link_decode_ber; +der_type_encoder_f URL_Link_encode_der; +xer_type_decoder_f URL_Link_decode_xer; +xer_type_encoder_f URL_Link_encode_xer; +oer_type_decoder_f URL_Link_decode_oer; +oer_type_encoder_f URL_Link_encode_oer; +per_type_decoder_f URL_Link_decode_uper; +per_type_encoder_f URL_Link_encode_uper; +per_type_decoder_f URL_Link_decode_aper; +per_type_encoder_f URL_Link_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Link_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Short.h new file mode 100644 index 000000000..651306b6a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/URL-Short.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _URL_Short_H_ +#define _URL_Short_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Short */ +typedef IA5String_t URL_Short_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Short_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Short; +asn_struct_free_f URL_Short_free; +asn_struct_print_f URL_Short_print; +asn_constr_check_f URL_Short_constraint; +ber_type_decoder_f URL_Short_decode_ber; +der_type_encoder_f URL_Short_encode_der; +xer_type_decoder_f URL_Short_decode_xer; +xer_type_encoder_f URL_Short_encode_xer; +oer_type_decoder_f URL_Short_decode_oer; +oer_type_encoder_f URL_Short_encode_oer; +per_type_decoder_f URL_Short_decode_uper; +per_type_encoder_f URL_Short_encode_uper; +per_type_decoder_f URL_Short_decode_aper; +per_type_encoder_f URL_Short_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Short_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniqueMSGID.h new file mode 100644 index 000000000..63b1838fb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniqueMSGID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _UniqueMSGID_H_ +#define _UniqueMSGID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UniqueMSGID */ +typedef OCTET_STRING_t UniqueMSGID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; +asn_struct_free_f UniqueMSGID_free; +asn_struct_print_f UniqueMSGID_print; +asn_constr_check_f UniqueMSGID_constraint; +ber_type_decoder_f UniqueMSGID_decode_ber; +der_type_encoder_f UniqueMSGID_encode_der; +xer_type_decoder_f UniqueMSGID_decode_xer; +xer_type_encoder_f UniqueMSGID_encode_xer; +oer_type_decoder_f UniqueMSGID_decode_oer; +oer_type_encoder_f UniqueMSGID_encode_oer; +per_type_decoder_f UniqueMSGID_decode_uper; +per_type_encoder_f UniqueMSGID_encode_uper; +per_type_decoder_f UniqueMSGID_decode_aper; +per_type_encoder_f UniqueMSGID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UniqueMSGID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UserSizeAndBehaviour.h new file mode 100644 index 000000000..21bc96de9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UserSizeAndBehaviour.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _UserSizeAndBehaviour_H_ +#define _UserSizeAndBehaviour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum UserSizeAndBehaviour { + UserSizeAndBehaviour_unavailable = 0, + UserSizeAndBehaviour_smallStature = 1, + UserSizeAndBehaviour_largeStature = 2, + UserSizeAndBehaviour_erraticMoving = 3, + UserSizeAndBehaviour_slowMoving = 4 +} e_UserSizeAndBehaviour; + +/* UserSizeAndBehaviour */ +typedef BIT_STRING_t UserSizeAndBehaviour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; +asn_struct_free_f UserSizeAndBehaviour_free; +asn_struct_print_f UserSizeAndBehaviour_print; +asn_constr_check_f UserSizeAndBehaviour_constraint; +ber_type_decoder_f UserSizeAndBehaviour_decode_ber; +der_type_encoder_f UserSizeAndBehaviour_encode_der; +xer_type_decoder_f UserSizeAndBehaviour_decode_xer; +xer_type_encoder_f UserSizeAndBehaviour_encode_xer; +oer_type_decoder_f UserSizeAndBehaviour_decode_oer; +oer_type_encoder_f UserSizeAndBehaviour_encode_oer; +per_type_decoder_f UserSizeAndBehaviour_decode_uper; +per_type_encoder_f UserSizeAndBehaviour_encode_uper; +per_type_decoder_f UserSizeAndBehaviour_decode_aper; +per_type_encoder_f UserSizeAndBehaviour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UserSizeAndBehaviour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VINstring.h new file mode 100644 index 000000000..21cb5b2d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VINstring.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VINstring_H_ +#define _VINstring_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VINstring */ +typedef OCTET_STRING_t VINstring_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VINstring_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VINstring; +asn_struct_free_f VINstring_free; +asn_struct_print_f VINstring_print; +asn_constr_check_f VINstring_constraint; +ber_type_decoder_f VINstring_decode_ber; +der_type_encoder_f VINstring_encode_der; +xer_type_decoder_f VINstring_decode_xer; +xer_type_encoder_f VINstring_encode_xer; +oer_type_decoder_f VINstring_decode_oer; +oer_type_encoder_f VINstring_encode_oer; +per_type_decoder_f VINstring_decode_uper; +per_type_encoder_f VINstring_encode_uper; +per_type_decoder_f VINstring_decode_aper; +per_type_encoder_f VINstring_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VINstring_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ValidRegion.h new file mode 100644 index 000000000..d0a8d75da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ValidRegion.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ValidRegion_H_ +#define _ValidRegion_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "ShapePointSet.h" +#include "Circle.h" +#include "RegionPointSet.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ValidRegion__area_PR { + ValidRegion__area_PR_NOTHING, /* No components present */ + ValidRegion__area_PR_shapePointSet, + ValidRegion__area_PR_circle, + ValidRegion__area_PR_regionPointSet +} ValidRegion__area_PR; + +/* ValidRegion */ +typedef struct ValidRegion { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + struct ValidRegion__area { + ValidRegion__area_PR present; + union ValidRegion__area_u { + ShapePointSet_t shapePointSet; + Circle_t circle; + RegionPointSet_t regionPointSet; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } area; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ValidRegion_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; +extern asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1; +extern asn_TYPE_member_t asn_MBR_ValidRegion_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ValidRegion_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleClassification.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleClassification.h new file mode 100644 index 000000000..7b2049b34 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleClassification.h @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleClassification_H_ +#define _VehicleClassification_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "BasicVehicleRole.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "FuelType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_VehicleClassification; + +/* VehicleClassification */ +typedef struct VehicleClassification { + BasicVehicleClass_t *keyType; /* OPTIONAL */ + BasicVehicleRole_t *role; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + FuelType_t *fuelType; /* OPTIONAL */ + struct VehicleClassification__regional { + A_SEQUENCE_OF(struct Reg_VehicleClassification) 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; +} VehicleClassification_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleClassification; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleClassification_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _VehicleClassification_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleData.h new file mode 100644 index 000000000..fcecc5e85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleData.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleData_H_ +#define _VehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleHeight.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; + +/* VehicleData */ +typedef struct VehicleData { + VehicleHeight_t *height; /* OPTIONAL */ + struct BumperHeights *bumpers; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleData_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BumperHeights.h" + +#endif /* _VehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleEventFlags.h new file mode 100644 index 000000000..569690e2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleEventFlags.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleEventFlags_H_ +#define _VehicleEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleEventFlags { + VehicleEventFlags_eventHazardLights = 0, + VehicleEventFlags_eventStopLineViolation = 1, + VehicleEventFlags_eventABSactivated = 2, + VehicleEventFlags_eventTractionControlLoss = 3, + VehicleEventFlags_eventStabilityControlactivated = 4, + VehicleEventFlags_eventHazardousMaterials = 5, + VehicleEventFlags_eventReserved1 = 6, + VehicleEventFlags_eventHardBraking = 7, + VehicleEventFlags_eventLightsChanged = 8, + VehicleEventFlags_eventWipersChanged = 9, + VehicleEventFlags_eventFlatTire = 10, + VehicleEventFlags_eventDisabledVehicle = 11, + VehicleEventFlags_eventAirBagDeployment = 12 +} e_VehicleEventFlags; + +/* VehicleEventFlags */ +typedef BIT_STRING_t VehicleEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags; +asn_struct_free_f VehicleEventFlags_free; +asn_struct_print_f VehicleEventFlags_print; +asn_constr_check_f VehicleEventFlags_constraint; +ber_type_decoder_f VehicleEventFlags_decode_ber; +der_type_encoder_f VehicleEventFlags_encode_der; +xer_type_decoder_f VehicleEventFlags_decode_xer; +xer_type_encoder_f VehicleEventFlags_encode_xer; +oer_type_decoder_f VehicleEventFlags_decode_oer; +oer_type_encoder_f VehicleEventFlags_encode_oer; +per_type_decoder_f VehicleEventFlags_decode_uper; +per_type_encoder_f VehicleEventFlags_encode_uper; +per_type_decoder_f VehicleEventFlags_decode_aper; +per_type_encoder_f VehicleEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleGroupAffected.h new file mode 100644 index 000000000..4c825f2f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleGroupAffected.h @@ -0,0 +1,89 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleGroupAffected_H_ +#define _VehicleGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleGroupAffected { + VehicleGroupAffected_all_vehicles = 9217, + VehicleGroupAffected_bicycles = 9218, + VehicleGroupAffected_motorcycles = 9219, + VehicleGroupAffected_cars = 9220, + VehicleGroupAffected_light_vehicles = 9221, + VehicleGroupAffected_cars_and_light_vehicles = 9222, + VehicleGroupAffected_cars_with_trailers = 9223, + VehicleGroupAffected_cars_with_recreational_trailers = 9224, + VehicleGroupAffected_vehicles_with_trailers = 9225, + VehicleGroupAffected_heavy_vehicles = 9226, + VehicleGroupAffected_trucks = 9227, + VehicleGroupAffected_buses = 9228, + VehicleGroupAffected_articulated_buses = 9229, + VehicleGroupAffected_school_buses = 9230, + VehicleGroupAffected_vehicles_with_semi_trailers = 9231, + VehicleGroupAffected_vehicles_with_double_trailers = 9232, + VehicleGroupAffected_high_profile_vehicles = 9233, + VehicleGroupAffected_wide_vehicles = 9234, + VehicleGroupAffected_long_vehicles = 9235, + VehicleGroupAffected_hazardous_loads = 9236, + VehicleGroupAffected_exceptional_loads = 9237, + VehicleGroupAffected_abnormal_loads = 9238, + VehicleGroupAffected_convoys = 9239, + VehicleGroupAffected_maintenance_vehicles = 9240, + VehicleGroupAffected_delivery_vehicles = 9241, + VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, + VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, + VehicleGroupAffected_vehicles_with_parking_permits = 9244, + VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, + VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, + VehicleGroupAffected_gas_powered_vehicles = 9247, + VehicleGroupAffected_diesel_powered_vehicles = 9248, + VehicleGroupAffected_lPG_vehicles = 9249, + VehicleGroupAffected_military_convoys = 9250, + VehicleGroupAffected_military_vehicles = 9251 + /* + * Enumeration is extensible + */ +} e_VehicleGroupAffected; + +/* VehicleGroupAffected */ +typedef long VehicleGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1; +asn_struct_free_f VehicleGroupAffected_free; +asn_struct_print_f VehicleGroupAffected_print; +asn_constr_check_f VehicleGroupAffected_constraint; +ber_type_decoder_f VehicleGroupAffected_decode_ber; +der_type_encoder_f VehicleGroupAffected_encode_der; +xer_type_decoder_f VehicleGroupAffected_decode_xer; +xer_type_encoder_f VehicleGroupAffected_encode_xer; +oer_type_decoder_f VehicleGroupAffected_decode_oer; +oer_type_encoder_f VehicleGroupAffected_encode_oer; +per_type_decoder_f VehicleGroupAffected_decode_uper; +per_type_encoder_f VehicleGroupAffected_encode_uper; +per_type_decoder_f VehicleGroupAffected_decode_aper; +per_type_encoder_f VehicleGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleHeight.h new file mode 100644 index 000000000..5d2362546 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleHeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleHeight_H_ +#define _VehicleHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleHeight */ +typedef long VehicleHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; +asn_struct_free_f VehicleHeight_free; +asn_struct_print_f VehicleHeight_print; +asn_constr_check_f VehicleHeight_constraint; +ber_type_decoder_f VehicleHeight_decode_ber; +der_type_encoder_f VehicleHeight_encode_der; +xer_type_decoder_f VehicleHeight_decode_xer; +xer_type_encoder_f VehicleHeight_encode_xer; +oer_type_decoder_f VehicleHeight_decode_oer; +oer_type_encoder_f VehicleHeight_encode_oer; +per_type_decoder_f VehicleHeight_decode_uper; +per_type_encoder_f VehicleHeight_encode_uper; +per_type_decoder_f VehicleHeight_decode_aper; +per_type_encoder_f VehicleHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleID.h new file mode 100644 index 000000000..ee2eb168c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleID.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleID_H_ +#define _VehicleID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TemporaryID.h" +#include "StationID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleID_PR { + VehicleID_PR_NOTHING, /* No components present */ + VehicleID_PR_entityID, + VehicleID_PR_stationID +} VehicleID_PR; + +/* VehicleID */ +typedef struct VehicleID { + VehicleID_PR present; + union VehicleID_u { + TemporaryID_t entityID; + StationID_t stationID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleID; +extern asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleID_1[2]; +extern asn_per_constraints_t asn_PER_type_VehicleID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleIdent.h new file mode 100644 index 000000000..308c7d073 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleIdent.h @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleIdent_H_ +#define _VehicleIdent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "VINstring.h" +#include "IA5String.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "ResponderGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleIdent__vehicleClass_PR { + VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ + VehicleIdent__vehicleClass_PR_vGroup, + VehicleIdent__vehicleClass_PR_rGroup, + VehicleIdent__vehicleClass_PR_rEquip +} VehicleIdent__vehicleClass_PR; + +/* Forward declarations */ +struct VehicleID; + +/* VehicleIdent */ +typedef struct VehicleIdent { + DescriptiveName_t *name; /* OPTIONAL */ + VINstring_t *vin; /* OPTIONAL */ + IA5String_t *ownerCode; /* OPTIONAL */ + struct VehicleID *id; /* OPTIONAL */ + VehicleType_t *vehicleType; /* OPTIONAL */ + struct VehicleIdent__vehicleClass { + VehicleIdent__vehicleClass_PR present; + union VehicleIdent__vehicleClass_u { + VehicleGroupAffected_t vGroup; + ResponderGroupAffected_t rGroup; + IncidentResponseEquipment_t rEquip; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleClass; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleIdent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleIdent_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleID.h" + +#endif /* _VehicleIdent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleLength.h new file mode 100644 index 000000000..d7301e458 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleLength.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleLength_H_ +#define _VehicleLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleLength */ +typedef long VehicleLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; +asn_struct_free_f VehicleLength_free; +asn_struct_print_f VehicleLength_print; +asn_constr_check_f VehicleLength_constraint; +ber_type_decoder_f VehicleLength_decode_ber; +der_type_encoder_f VehicleLength_encode_der; +xer_type_decoder_f VehicleLength_decode_xer; +xer_type_encoder_f VehicleLength_encode_xer; +oer_type_decoder_f VehicleLength_decode_oer; +oer_type_encoder_f VehicleLength_encode_oer; +per_type_decoder_f VehicleLength_decode_uper; +per_type_encoder_f VehicleLength_encode_uper; +per_type_decoder_f VehicleLength_decode_aper; +per_type_encoder_f VehicleLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleMass.h new file mode 100644 index 000000000..19b0c4310 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleMass.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleMass_H_ +#define _VehicleMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleMass */ +typedef long VehicleMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; +asn_struct_free_f VehicleMass_free; +asn_struct_print_f VehicleMass_print; +asn_constr_check_f VehicleMass_constraint; +ber_type_decoder_f VehicleMass_decode_ber; +der_type_encoder_f VehicleMass_encode_der; +xer_type_decoder_f VehicleMass_decode_xer; +xer_type_encoder_f VehicleMass_encode_xer; +oer_type_decoder_f VehicleMass_decode_oer; +oer_type_encoder_f VehicleMass_encode_oer; +per_type_decoder_f VehicleMass_decode_uper; +per_type_encoder_f VehicleMass_encode_uper; +per_type_decoder_f VehicleMass_decode_aper; +per_type_encoder_f VehicleMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSafetyExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSafetyExtensions.h new file mode 100644 index 000000000..e6b3a2e9f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSafetyExtensions.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleSafetyExtensions_H_ +#define _VehicleSafetyExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleEventFlags.h" +#include "ExteriorLights.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathHistory; +struct PathPrediction; + +/* VehicleSafetyExtensions */ +typedef struct VehicleSafetyExtensions { + VehicleEventFlags_t *events; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + ExteriorLights_t *lights; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSafetyExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistory.h" +#include "PathPrediction.h" + +#endif /* _VehicleSafetyExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSize.h new file mode 100644 index 000000000..ea57d1cc1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSize.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleSize_H_ +#define _VehicleSize_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSize */ +typedef struct VehicleSize { + VehicleWidth_t width; + VehicleLength_t length; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSize_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSize_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSizeConfidence.h new file mode 100644 index 000000000..7ab00134d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleSizeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _VehicleSizeConfidence_H_ +#define _VehicleSizeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValueConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSizeConfidence */ +typedef struct VehicleSizeConfidence { + SizeValueConfidence_t vehicleWidthConfidence; + SizeValueConfidence_t vehicleLengthConfidence; + SizeValueConfidence_t *vehicleHeightConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSizeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSizeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatus.h new file mode 100644 index 000000000..875f1c9ba --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatus.h @@ -0,0 +1,157 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleStatus_H_ +#define _VehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "LightbarInUse.h" +#include "BrakeAppliedPressure.h" +#include "CoefficientOfFriction.h" +#include "SunSensor.h" +#include "RainSensor.h" +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "ThrottlePosition.h" +#include "SpeedConfidence.h" +#include "GNSSstatus.h" +#include "SteeringWheelAngle.h" +#include "SteeringWheelAngleConfidence.h" +#include "SteeringWheelAngleRateOfChange.h" +#include "DrivingWheelAngle.h" +#include "constr_SEQUENCE.h" +#include "VerticalAccelerationThreshold.h" +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "ObstacleDistance.h" +#include "Common_Angle.h" +#include "DDateTime.h" +#include "VehicleHeight.h" +#include "BumperHeights.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "VehicleType.h" +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; +struct BrakeSystemStatus; +struct FullPositionVector; +struct SpeedandHeadingandThrottleConfidence; +struct VehicleIdent; +struct J1939data; +struct AccelerationSet4Way; +struct ConfidenceSet; + +/* VehicleStatus */ +typedef struct VehicleStatus { + ExteriorLights_t *lights; /* OPTIONAL */ + LightbarInUse_t *lightBar; /* OPTIONAL */ + struct WiperSet *wipers; /* OPTIONAL */ + struct BrakeSystemStatus *brakeStatus; /* OPTIONAL */ + BrakeAppliedPressure_t *brakePressure; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + SunSensor_t *sunData; /* OPTIONAL */ + RainSensor_t *rainData; /* OPTIONAL */ + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPres; /* OPTIONAL */ + struct VehicleStatus__steering { + SteeringWheelAngle_t angle; + SteeringWheelAngleConfidence_t *confidence; /* OPTIONAL */ + SteeringWheelAngleRateOfChange_t *rate; /* OPTIONAL */ + DrivingWheelAngle_t *wheels; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *steering; + struct VehicleStatus__accelSets { + struct AccelerationSet4Way *accel4way; /* OPTIONAL */ + VerticalAccelerationThreshold_t *vertAccelThres; /* OPTIONAL */ + YawRateConfidence_t *yawRateCon; /* OPTIONAL */ + AccelerationConfidence_t *hozAccelCon; /* OPTIONAL */ + struct ConfidenceSet *confidenceSet; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *accelSets; + struct VehicleStatus__object { + ObstacleDistance_t obDist; + Common_Angle_t obDirect; + DDateTime_t dateTime; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *object; + struct FullPositionVector *fullPos; /* OPTIONAL */ + ThrottlePosition_t *throttlePos; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedHeadC; /* OPTIONAL */ + SpeedConfidence_t *speedC; /* OPTIONAL */ + struct VehicleStatus__vehicleData { + VehicleHeight_t height; + BumperHeights_t bumpers; + VehicleMass_t mass; + TrailerWeight_t trailerWeight; + VehicleType_t type; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleData; + struct VehicleIdent *vehicleIdent; /* OPTIONAL */ + struct J1939data *j1939data; /* OPTIONAL */ + struct VehicleStatus__weatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *weatherReport; + GNSSstatus_t *gnssStatus; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatus_1[22]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "WiperSet.h" +#include "BrakeSystemStatus.h" +#include "FullPositionVector.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "VehicleIdent.h" +#include "J1939data.h" +#include "AccelerationSet4Way.h" +#include "ConfidenceSet.h" + +#endif /* _VehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusDeviceTypeTag.h new file mode 100644 index 000000000..43616e158 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusDeviceTypeTag.h @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleStatusDeviceTypeTag_H_ +#define _VehicleStatusDeviceTypeTag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleStatusDeviceTypeTag { + VehicleStatusDeviceTypeTag_unknown = 0, + VehicleStatusDeviceTypeTag_lights = 1, + VehicleStatusDeviceTypeTag_wipers = 2, + VehicleStatusDeviceTypeTag_brakes = 3, + VehicleStatusDeviceTypeTag_stab = 4, + VehicleStatusDeviceTypeTag_trac = 5, + VehicleStatusDeviceTypeTag_abs = 6, + VehicleStatusDeviceTypeTag_sunS = 7, + VehicleStatusDeviceTypeTag_rainS = 8, + VehicleStatusDeviceTypeTag_airTemp = 9, + VehicleStatusDeviceTypeTag_steering = 10, + VehicleStatusDeviceTypeTag_vertAccelThres = 11, + VehicleStatusDeviceTypeTag_vertAccel = 12, + VehicleStatusDeviceTypeTag_hozAccelLong = 13, + VehicleStatusDeviceTypeTag_hozAccelLat = 14, + VehicleStatusDeviceTypeTag_hozAccelCon = 15, + VehicleStatusDeviceTypeTag_accel4way = 16, + VehicleStatusDeviceTypeTag_confidenceSet = 17, + VehicleStatusDeviceTypeTag_obDist = 18, + VehicleStatusDeviceTypeTag_obDirect = 19, + VehicleStatusDeviceTypeTag_yaw = 20, + VehicleStatusDeviceTypeTag_yawRateCon = 21, + VehicleStatusDeviceTypeTag_dateTime = 22, + VehicleStatusDeviceTypeTag_fullPos = 23, + VehicleStatusDeviceTypeTag_position2D = 24, + VehicleStatusDeviceTypeTag_position3D = 25, + VehicleStatusDeviceTypeTag_vehicle = 26, + VehicleStatusDeviceTypeTag_speedHeadC = 27, + VehicleStatusDeviceTypeTag_speedC = 28 + /* + * Enumeration is extensible + */ +} e_VehicleStatusDeviceTypeTag; + +/* VehicleStatusDeviceTypeTag */ +typedef long VehicleStatusDeviceTypeTag_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1; +asn_struct_free_f VehicleStatusDeviceTypeTag_free; +asn_struct_print_f VehicleStatusDeviceTypeTag_print; +asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; +ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; +der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; +xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; +xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; +oer_type_decoder_f VehicleStatusDeviceTypeTag_decode_oer; +oer_type_encoder_f VehicleStatusDeviceTypeTag_encode_oer; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_aper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusDeviceTypeTag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequest.h new file mode 100644 index 000000000..ecf9f315e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequest.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleStatusRequest_H_ +#define _VehicleStatusRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleStatusDeviceTypeTag.h" +#include "NativeInteger.h" +#include "BOOLEAN.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleStatusRequest */ +typedef struct VehicleStatusRequest { + VehicleStatusDeviceTypeTag_t dataType; + long *subType; /* OPTIONAL */ + long *sendOnLessThenValue; /* OPTIONAL */ + long *sendOnMoreThenValue; /* OPTIONAL */ + BOOLEAN_t *sendAll; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequestList.h new file mode 100644 index 000000000..e4319cd38 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleStatusRequestList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleStatusRequestList_H_ +#define _VehicleStatusRequestList_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 VehicleStatusRequest; + +/* VehicleStatusRequestList */ +typedef struct VehicleStatusRequestList { + A_SEQUENCE_OF(struct VehicleStatusRequest) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleStatusRequest.h" + +#endif /* _VehicleStatusRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePosition.h new file mode 100644 index 000000000..133dd9bb2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePosition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleToLanePosition_H_ +#define _VehicleToLanePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "LaneID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleToLanePosition */ +typedef struct VehicleToLanePosition { + StationID_t stationID; + LaneID_t laneID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePosition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleToLanePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePositionList.h new file mode 100644 index 000000000..3cb756a94 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleToLanePositionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleToLanePositionList_H_ +#define _VehicleToLanePositionList_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 VehicleToLanePosition; + +/* VehicleToLanePositionList */ +typedef struct VehicleToLanePositionList { + A_SEQUENCE_OF(struct VehicleToLanePosition) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePositionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleToLanePosition.h" + +#endif /* _VehicleToLanePositionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleType.h new file mode 100644 index 000000000..fb61f50f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleType.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleType_H_ +#define _VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleType { + VehicleType_none = 0, + VehicleType_unknown = 1, + VehicleType_special = 2, + VehicleType_moto = 3, + VehicleType_car = 4, + VehicleType_carOther = 5, + VehicleType_bus = 6, + VehicleType_axleCnt2 = 7, + VehicleType_axleCnt3 = 8, + VehicleType_axleCnt4 = 9, + VehicleType_axleCnt4Trailer = 10, + VehicleType_axleCnt5Trailer = 11, + VehicleType_axleCnt6Trailer = 12, + VehicleType_axleCnt5MultiTrailer = 13, + VehicleType_axleCnt6MultiTrailer = 14, + VehicleType_axleCnt7MultiTrailer = 15 + /* + * Enumeration is extensible + */ +} e_VehicleType; + +/* VehicleType */ +typedef long VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleType; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1; +asn_struct_free_f VehicleType_free; +asn_struct_print_f VehicleType_print; +asn_constr_check_f VehicleType_constraint; +ber_type_decoder_f VehicleType_decode_ber; +der_type_encoder_f VehicleType_encode_der; +xer_type_decoder_f VehicleType_decode_xer; +xer_type_encoder_f VehicleType_encode_xer; +oer_type_decoder_f VehicleType_decode_oer; +oer_type_encoder_f VehicleType_encode_oer; +per_type_decoder_f VehicleType_decode_uper; +per_type_encoder_f VehicleType_encode_uper; +per_type_decoder_f VehicleType_decode_aper; +per_type_encoder_f VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleWidth.h new file mode 100644 index 000000000..b11f37ea1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleWidth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VehicleWidth_H_ +#define _VehicleWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleWidth */ +typedef long VehicleWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; +asn_struct_free_f VehicleWidth_free; +asn_struct_print_f VehicleWidth_print; +asn_constr_check_f VehicleWidth_constraint; +ber_type_decoder_f VehicleWidth_decode_ber; +der_type_encoder_f VehicleWidth_encode_der; +xer_type_decoder_f VehicleWidth_decode_xer; +xer_type_encoder_f VehicleWidth_encode_xer; +oer_type_decoder_f VehicleWidth_decode_oer; +oer_type_encoder_f VehicleWidth_encode_oer; +per_type_decoder_f VehicleWidth_decode_uper; +per_type_encoder_f VehicleWidth_encode_uper; +per_type_decoder_f VehicleWidth_decode_aper; +per_type_encoder_f VehicleWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Velocity.h new file mode 100644 index 000000000..273f82660 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Velocity.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Velocity_H_ +#define _Velocity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Velocity */ +typedef long Velocity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Velocity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Velocity; +asn_struct_free_f Velocity_free; +asn_struct_print_f Velocity_print; +asn_constr_check_f Velocity_constraint; +ber_type_decoder_f Velocity_decode_ber; +der_type_encoder_f Velocity_encode_der; +xer_type_decoder_f Velocity_decode_xer; +xer_type_encoder_f Velocity_encode_xer; +oer_type_decoder_f Velocity_decode_oer; +oer_type_encoder_f Velocity_encode_oer; +per_type_decoder_f Velocity_decode_uper; +per_type_encoder_f Velocity_encode_uper; +per_type_decoder_f Velocity_decode_aper; +per_type_encoder_f Velocity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Velocity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B07.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B07.h new file mode 100644 index 000000000..1e50d0571 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B07.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B07_H_ +#define _VertOffset_B07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B07 */ +typedef long VertOffset_B07_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B07; +asn_struct_free_f VertOffset_B07_free; +asn_struct_print_f VertOffset_B07_print; +asn_constr_check_f VertOffset_B07_constraint; +ber_type_decoder_f VertOffset_B07_decode_ber; +der_type_encoder_f VertOffset_B07_encode_der; +xer_type_decoder_f VertOffset_B07_decode_xer; +xer_type_encoder_f VertOffset_B07_encode_xer; +oer_type_decoder_f VertOffset_B07_decode_oer; +oer_type_encoder_f VertOffset_B07_encode_oer; +per_type_decoder_f VertOffset_B07_decode_uper; +per_type_encoder_f VertOffset_B07_encode_uper; +per_type_decoder_f VertOffset_B07_decode_aper; +per_type_encoder_f VertOffset_B07_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B08.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B08.h new file mode 100644 index 000000000..81f2f06aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B08.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B08_H_ +#define _VertOffset_B08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B08 */ +typedef long VertOffset_B08_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B08; +asn_struct_free_f VertOffset_B08_free; +asn_struct_print_f VertOffset_B08_print; +asn_constr_check_f VertOffset_B08_constraint; +ber_type_decoder_f VertOffset_B08_decode_ber; +der_type_encoder_f VertOffset_B08_encode_der; +xer_type_decoder_f VertOffset_B08_decode_xer; +xer_type_encoder_f VertOffset_B08_encode_xer; +oer_type_decoder_f VertOffset_B08_decode_oer; +oer_type_encoder_f VertOffset_B08_encode_oer; +per_type_decoder_f VertOffset_B08_decode_uper; +per_type_encoder_f VertOffset_B08_encode_uper; +per_type_decoder_f VertOffset_B08_decode_aper; +per_type_encoder_f VertOffset_B08_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B09.h new file mode 100644 index 000000000..e7cf5ea3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B09.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B09_H_ +#define _VertOffset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B09 */ +typedef long VertOffset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B09; +asn_struct_free_f VertOffset_B09_free; +asn_struct_print_f VertOffset_B09_print; +asn_constr_check_f VertOffset_B09_constraint; +ber_type_decoder_f VertOffset_B09_decode_ber; +der_type_encoder_f VertOffset_B09_encode_der; +xer_type_decoder_f VertOffset_B09_decode_xer; +xer_type_encoder_f VertOffset_B09_encode_xer; +oer_type_decoder_f VertOffset_B09_decode_oer; +oer_type_encoder_f VertOffset_B09_encode_oer; +per_type_decoder_f VertOffset_B09_decode_uper; +per_type_encoder_f VertOffset_B09_encode_uper; +per_type_decoder_f VertOffset_B09_decode_aper; +per_type_encoder_f VertOffset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B10.h new file mode 100644 index 000000000..37125a9db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B10.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B10_H_ +#define _VertOffset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B10 */ +typedef long VertOffset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B10; +asn_struct_free_f VertOffset_B10_free; +asn_struct_print_f VertOffset_B10_print; +asn_constr_check_f VertOffset_B10_constraint; +ber_type_decoder_f VertOffset_B10_decode_ber; +der_type_encoder_f VertOffset_B10_encode_der; +xer_type_decoder_f VertOffset_B10_decode_xer; +xer_type_encoder_f VertOffset_B10_encode_xer; +oer_type_decoder_f VertOffset_B10_decode_oer; +oer_type_encoder_f VertOffset_B10_encode_oer; +per_type_decoder_f VertOffset_B10_decode_uper; +per_type_encoder_f VertOffset_B10_encode_uper; +per_type_decoder_f VertOffset_B10_decode_aper; +per_type_encoder_f VertOffset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B11.h new file mode 100644 index 000000000..5b4cfbe0b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B11.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B11_H_ +#define _VertOffset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B11 */ +typedef long VertOffset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B11; +asn_struct_free_f VertOffset_B11_free; +asn_struct_print_f VertOffset_B11_print; +asn_constr_check_f VertOffset_B11_constraint; +ber_type_decoder_f VertOffset_B11_decode_ber; +der_type_encoder_f VertOffset_B11_encode_der; +xer_type_decoder_f VertOffset_B11_decode_xer; +xer_type_encoder_f VertOffset_B11_encode_xer; +oer_type_decoder_f VertOffset_B11_decode_oer; +oer_type_encoder_f VertOffset_B11_encode_oer; +per_type_decoder_f VertOffset_B11_decode_uper; +per_type_encoder_f VertOffset_B11_encode_uper; +per_type_decoder_f VertOffset_B11_decode_aper; +per_type_encoder_f VertOffset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B12.h new file mode 100644 index 000000000..93ddca91b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VertOffset-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VertOffset_B12_H_ +#define _VertOffset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B12 */ +typedef long VertOffset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B12; +asn_struct_free_f VertOffset_B12_free; +asn_struct_print_f VertOffset_B12_print; +asn_constr_check_f VertOffset_B12_constraint; +ber_type_decoder_f VertOffset_B12_decode_ber; +der_type_encoder_f VertOffset_B12_encode_der; +xer_type_decoder_f VertOffset_B12_decode_xer; +xer_type_encoder_f VertOffset_B12_encode_xer; +oer_type_decoder_f VertOffset_B12_decode_oer; +oer_type_encoder_f VertOffset_B12_encode_oer; +per_type_decoder_f VertOffset_B12_decode_uper; +per_type_encoder_f VertOffset_B12_encode_uper; +per_type_decoder_f VertOffset_B12_decode_aper; +per_type_encoder_f VertOffset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAcceleration.h new file mode 100644 index 000000000..3deb6d002 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAcceleration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VerticalAcceleration_H_ +#define _VerticalAcceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VerticalAcceleration */ +typedef long VerticalAcceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; +asn_struct_free_f VerticalAcceleration_free; +asn_struct_print_f VerticalAcceleration_print; +asn_constr_check_f VerticalAcceleration_constraint; +ber_type_decoder_f VerticalAcceleration_decode_ber; +der_type_encoder_f VerticalAcceleration_encode_der; +xer_type_decoder_f VerticalAcceleration_decode_xer; +xer_type_encoder_f VerticalAcceleration_encode_xer; +oer_type_decoder_f VerticalAcceleration_decode_oer; +oer_type_encoder_f VerticalAcceleration_encode_oer; +per_type_decoder_f VerticalAcceleration_decode_uper; +per_type_encoder_f VerticalAcceleration_encode_uper; +per_type_decoder_f VerticalAcceleration_decode_aper; +per_type_encoder_f VerticalAcceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAcceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAccelerationThreshold.h new file mode 100644 index 000000000..e833e64fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalAccelerationThreshold.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VerticalAccelerationThreshold_H_ +#define _VerticalAccelerationThreshold_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalAccelerationThreshold { + VerticalAccelerationThreshold_notEquipped = 0, + VerticalAccelerationThreshold_leftFront = 1, + VerticalAccelerationThreshold_leftRear = 2, + VerticalAccelerationThreshold_rightFront = 3, + VerticalAccelerationThreshold_rightRear = 4 +} e_VerticalAccelerationThreshold; + +/* VerticalAccelerationThreshold */ +typedef BIT_STRING_t VerticalAccelerationThreshold_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; +asn_struct_free_f VerticalAccelerationThreshold_free; +asn_struct_print_f VerticalAccelerationThreshold_print; +asn_constr_check_f VerticalAccelerationThreshold_constraint; +ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; +der_type_encoder_f VerticalAccelerationThreshold_encode_der; +xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; +xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; +oer_type_decoder_f VerticalAccelerationThreshold_decode_oer; +oer_type_encoder_f VerticalAccelerationThreshold_encode_oer; +per_type_decoder_f VerticalAccelerationThreshold_decode_uper; +per_type_encoder_f VerticalAccelerationThreshold_encode_uper; +per_type_decoder_f VerticalAccelerationThreshold_decode_aper; +per_type_encoder_f VerticalAccelerationThreshold_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAccelerationThreshold_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalOffset.h new file mode 100644 index 000000000..9fb896b94 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VerticalOffset.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _VerticalOffset_H_ +#define _VerticalOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VertOffset-B07.h" +#include "VertOffset-B08.h" +#include "VertOffset-B09.h" +#include "VertOffset-B10.h" +#include "VertOffset-B11.h" +#include "VertOffset-B12.h" +#include "Common_Elevation.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalOffset_PR { + VerticalOffset_PR_NOTHING, /* No components present */ + VerticalOffset_PR_offset1, + VerticalOffset_PR_offset2, + VerticalOffset_PR_offset3, + VerticalOffset_PR_offset4, + VerticalOffset_PR_offset5, + VerticalOffset_PR_offset6, + VerticalOffset_PR_elevation, + VerticalOffset_PR_regional +} VerticalOffset_PR; + +/* VerticalOffset */ +typedef struct VerticalOffset { + VerticalOffset_PR present; + union VerticalOffset_u { + VertOffset_B07_t offset1; + VertOffset_B08_t offset2; + VertOffset_B09_t offset3; + VertOffset_B10_t offset4; + VertOffset_B11_t offset5; + VertOffset_B12_t offset6; + Common_Elevation_t elevation; + Reg_VerticalOffset_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VerticalOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VerticalOffset; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WaitOnStopline.h new file mode 100644 index 000000000..670f6a555 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WaitOnStopline.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WaitOnStopline_H_ +#define _WaitOnStopline_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WaitOnStopline */ +typedef BOOLEAN_t WaitOnStopline_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; +asn_struct_free_f WaitOnStopline_free; +asn_struct_print_f WaitOnStopline_print; +asn_constr_check_f WaitOnStopline_constraint; +ber_type_decoder_f WaitOnStopline_decode_ber; +der_type_encoder_f WaitOnStopline_encode_der; +xer_type_decoder_f WaitOnStopline_decode_xer; +xer_type_encoder_f WaitOnStopline_encode_xer; +oer_type_decoder_f WaitOnStopline_decode_oer; +oer_type_encoder_f WaitOnStopline_encode_oer; +per_type_decoder_f WaitOnStopline_decode_uper; +per_type_encoder_f WaitOnStopline_encode_uper; +per_type_decoder_f WaitOnStopline_decode_aper; +per_type_encoder_f WaitOnStopline_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WaitOnStopline_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherProbe.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherProbe.h new file mode 100644 index 000000000..b0f327592 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherProbe.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WeatherProbe_H_ +#define _WeatherProbe_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; + +/* WeatherProbe */ +typedef struct WeatherProbe { + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPressure; /* OPTIONAL */ + struct WiperSet *rainRates; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherProbe_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherProbe; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherProbe_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "WiperSet.h" + +#endif /* _WeatherProbe_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherReport.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherReport.h new file mode 100644 index 000000000..6fbf18749 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WeatherReport.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WeatherReport_H_ +#define _WeatherReport_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" +#include "CoefficientOfFriction.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WeatherReport */ +typedef struct WeatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherReport_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherReport; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherReport_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WeatherReport_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelEndElectFault.h new file mode 100644 index 000000000..6a530fc57 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelEndElectFault.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WheelEndElectFault_H_ +#define _WheelEndElectFault_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelEndElectFault { + WheelEndElectFault_isOk = 0, + WheelEndElectFault_isNotDefined = 1, + WheelEndElectFault_isError = 2, + WheelEndElectFault_isNotSupported = 3 +} e_WheelEndElectFault; + +/* WheelEndElectFault */ +typedef long WheelEndElectFault_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; +extern const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1; +asn_struct_free_f WheelEndElectFault_free; +asn_struct_print_f WheelEndElectFault_print; +asn_constr_check_f WheelEndElectFault_constraint; +ber_type_decoder_f WheelEndElectFault_decode_ber; +der_type_encoder_f WheelEndElectFault_encode_der; +xer_type_decoder_f WheelEndElectFault_decode_xer; +xer_type_encoder_f WheelEndElectFault_encode_xer; +oer_type_decoder_f WheelEndElectFault_decode_oer; +oer_type_encoder_f WheelEndElectFault_encode_oer; +per_type_decoder_f WheelEndElectFault_decode_uper; +per_type_encoder_f WheelEndElectFault_encode_uper; +per_type_decoder_f WheelEndElectFault_decode_aper; +per_type_encoder_f WheelEndElectFault_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelEndElectFault_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelSensorStatus.h new file mode 100644 index 000000000..8907722d5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WheelSensorStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WheelSensorStatus_H_ +#define _WheelSensorStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelSensorStatus { + WheelSensorStatus_off = 0, + WheelSensorStatus_on = 1, + WheelSensorStatus_notDefined = 2, + WheelSensorStatus_notSupported = 3 +} e_WheelSensorStatus; + +/* WheelSensorStatus */ +typedef long WheelSensorStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1; +asn_struct_free_f WheelSensorStatus_free; +asn_struct_print_f WheelSensorStatus_print; +asn_constr_check_f WheelSensorStatus_constraint; +ber_type_decoder_f WheelSensorStatus_decode_ber; +der_type_encoder_f WheelSensorStatus_encode_der; +xer_type_decoder_f WheelSensorStatus_decode_xer; +xer_type_encoder_f WheelSensorStatus_encode_xer; +oer_type_decoder_f WheelSensorStatus_decode_oer; +oer_type_encoder_f WheelSensorStatus_encode_oer; +per_type_decoder_f WheelSensorStatus_decode_uper; +per_type_encoder_f WheelSensorStatus_encode_uper; +per_type_decoder_f WheelSensorStatus_decode_aper; +per_type_encoder_f WheelSensorStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelSensorStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperRate.h new file mode 100644 index 000000000..70601fd25 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WiperRate_H_ +#define _WiperRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperRate */ +typedef long WiperRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperRate; +asn_struct_free_f WiperRate_free; +asn_struct_print_f WiperRate_print; +asn_constr_check_f WiperRate_constraint; +ber_type_decoder_f WiperRate_decode_ber; +der_type_encoder_f WiperRate_encode_der; +xer_type_decoder_f WiperRate_decode_xer; +xer_type_encoder_f WiperRate_encode_xer; +oer_type_decoder_f WiperRate_decode_oer; +oer_type_encoder_f WiperRate_encode_oer; +per_type_decoder_f WiperRate_decode_uper; +per_type_encoder_f WiperRate_encode_uper; +per_type_decoder_f WiperRate_decode_aper; +per_type_encoder_f WiperRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperSet.h new file mode 100644 index 000000000..b8cbd486a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WiperSet_H_ +#define _WiperSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "WiperStatus.h" +#include "WiperRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperSet */ +typedef struct WiperSet { + WiperStatus_t statusFront; + WiperRate_t rateFront; + WiperStatus_t *statusRear; /* OPTIONAL */ + WiperRate_t *rateRear; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WiperSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperSet; +extern asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1; +extern asn_TYPE_member_t asn_MBR_WiperSet_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperStatus.h new file mode 100644 index 000000000..7ef58d5ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WiperStatus.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WiperStatus_H_ +#define _WiperStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WiperStatus { + WiperStatus_unavailable = 0, + WiperStatus_off = 1, + WiperStatus_intermittent = 2, + WiperStatus_low = 3, + WiperStatus_high = 4, + WiperStatus_washerInUse = 5, + WiperStatus_automaticPresent = 6 + /* + * Enumeration is extensible + */ +} e_WiperStatus; + +/* WiperStatus */ +typedef long WiperStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1; +asn_struct_free_f WiperStatus_free; +asn_struct_print_f WiperStatus_print; +asn_constr_check_f WiperStatus_constraint; +ber_type_decoder_f WiperStatus_decode_ber; +der_type_encoder_f WiperStatus_encode_der; +xer_type_decoder_f WiperStatus_decode_xer; +xer_type_encoder_f WiperStatus_encode_xer; +oer_type_decoder_f WiperStatus_decode_oer; +oer_type_encoder_f WiperStatus_encode_oer; +per_type_decoder_f WiperStatus_decode_uper; +per_type_encoder_f WiperStatus_encode_uper; +per_type_decoder_f WiperStatus_decode_aper; +per_type_encoder_f WiperStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WorkZone.h new file mode 100644 index 000000000..3d94670b6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/WorkZone.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _WorkZone_H_ +#define _WorkZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WorkZone__Member__item_PR { + WorkZone__Member__item_PR_NOTHING, /* No components present */ + WorkZone__Member__item_PR_itis, + WorkZone__Member__item_PR_text +} WorkZone__Member__item_PR; + +/* Forward definitions */ +typedef struct WorkZone__Member { + struct WorkZone__Member__item { + WorkZone__Member__item_PR present; + union WorkZone__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone__Member; + +/* WorkZone */ +typedef struct WorkZone { + A_SEQUENCE_OF(WorkZone__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WorkZone; +extern asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1; +extern asn_TYPE_member_t asn_MBR_WorkZone_1[1]; +extern asn_per_constraints_t asn_PER_type_WorkZone_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _WorkZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawDetected.h new file mode 100644 index 000000000..394867a92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _YawDetected_H_ +#define _YawDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawDetected */ +typedef long YawDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawDetected; +asn_struct_free_f YawDetected_free; +asn_struct_print_f YawDetected_print; +asn_constr_check_f YawDetected_constraint; +ber_type_decoder_f YawDetected_decode_ber; +der_type_encoder_f YawDetected_encode_der; +xer_type_decoder_f YawDetected_decode_xer; +xer_type_encoder_f YawDetected_encode_xer; +oer_type_decoder_f YawDetected_decode_oer; +oer_type_encoder_f YawDetected_encode_oer; +per_type_decoder_f YawDetected_decode_uper; +per_type_encoder_f YawDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRate.h new file mode 100644 index 000000000..5a43f46b7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _YawRate_H_ +#define _YawRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawRate */ +typedef long YawRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRate; +asn_struct_free_f YawRate_free; +asn_struct_print_f YawRate_print; +asn_constr_check_f YawRate_constraint; +ber_type_decoder_f YawRate_decode_ber; +der_type_encoder_f YawRate_encode_der; +xer_type_decoder_f YawRate_decode_xer; +xer_type_encoder_f YawRate_encode_xer; +oer_type_decoder_f YawRate_decode_oer; +oer_type_encoder_f YawRate_encode_oer; +per_type_decoder_f YawRate_decode_uper; +per_type_encoder_f YawRate_encode_uper; +per_type_decoder_f YawRate_decode_aper; +per_type_encoder_f YawRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRateConfidence.h new file mode 100644 index 000000000..343eb588e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/YawRateConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _YawRateConfidence_H_ +#define _YawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum YawRateConfidence { + YawRateConfidence_unavailable = 0, + YawRateConfidence_degSec_100_00 = 1, + YawRateConfidence_degSec_010_00 = 2, + YawRateConfidence_degSec_005_00 = 3, + YawRateConfidence_degSec_001_00 = 4, + YawRateConfidence_degSec_000_10 = 5, + YawRateConfidence_degSec_000_05 = 6, + YawRateConfidence_degSec_000_01 = 7 +} e_YawRateConfidence; + +/* YawRateConfidence */ +typedef long YawRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1; +asn_struct_free_f YawRateConfidence_free; +asn_struct_print_f YawRateConfidence_print; +asn_constr_check_f YawRateConfidence_constraint; +ber_type_decoder_f YawRateConfidence_decode_ber; +der_type_encoder_f YawRateConfidence_encode_der; +xer_type_decoder_f YawRateConfidence_decode_xer; +xer_type_encoder_f YawRateConfidence_encode_xer; +oer_type_decoder_f YawRateConfidence_decode_oer; +oer_type_encoder_f YawRateConfidence_encode_oer; +per_type_decoder_f YawRateConfidence_decode_uper; +per_type_encoder_f YawRateConfidence_encode_uper; +per_type_decoder_f YawRateConfidence_decode_aper; +per_type_encoder_f YawRateConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Year.h new file mode 100644 index 000000000..23676c7d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Year.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Year_H_ +#define _Year_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Year */ +typedef long Year_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Year_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Year; +asn_struct_free_f Year_free; +asn_struct_print_f Year_print; +asn_constr_check_f Year_constraint; +ber_type_decoder_f Year_decode_ber; +der_type_encoder_f Year_encode_der; +xer_type_decoder_f Year_decode_xer; +xer_type_encoder_f Year_encode_xer; +oer_type_decoder_f Year_decode_oer; +oer_type_encoder_f Year_encode_oer; +per_type_decoder_f Year_decode_uper; +per_type_encoder_f Year_encode_uper; +per_type_decoder_f Year_decode_aper; +per_type_encoder_f Year_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Year_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ZoneLength.h new file mode 100644 index 000000000..8ccaf1da8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ZoneLength.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _ZoneLength_H_ +#define _ZoneLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ZoneLength */ +typedef long ZoneLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ZoneLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; +asn_struct_free_f ZoneLength_free; +asn_struct_print_f ZoneLength_print; +asn_constr_check_f ZoneLength_constraint; +ber_type_decoder_f ZoneLength_decode_ber; +der_type_encoder_f ZoneLength_encode_der; +xer_type_decoder_f ZoneLength_decode_xer; +xer_type_encoder_f ZoneLength_encode_xer; +oer_type_decoder_f ZoneLength_decode_oer; +oer_type_encoder_f ZoneLength_encode_oer; +per_type_decoder_f ZoneLength_decode_uper; +per_type_encoder_f ZoneLength_encode_uper; +per_type_decoder_f ZoneLength_decode_aper; +per_type_encoder_f ZoneLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ZoneLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Zoom.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Zoom.h new file mode 100644 index 000000000..8aaee8317 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Zoom.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#ifndef _Zoom_H_ +#define _Zoom_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Zoom */ +typedef long Zoom_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Zoom_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Zoom; +asn_struct_free_f Zoom_free; +asn_struct_print_f Zoom_print; +asn_constr_check_f Zoom_constraint; +ber_type_decoder_f Zoom_decode_ber; +der_type_encoder_f Zoom_encode_der; +xer_type_decoder_f Zoom_decode_xer; +xer_type_encoder_f Zoom_encode_xer; +oer_type_decoder_f Zoom_decode_oer; +oer_type_encoder_f Zoom_encode_oer; +per_type_decoder_f Zoom_decode_uper; +per_type_encoder_f Zoom_encode_uper; +per_type_decoder_f Zoom_decode_aper; +per_type_encoder_f Zoom_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Zoom_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_decoder.h new file mode 100644 index 000000000..10352c710 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_decoder.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_DECODER_H_ +#define _APER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Aligned PER decoder of a "complete encoding" as per X.691#10.1. + * On success, this call always returns (.consumed >= 1), in BITS, as per X.691#10.1.3. + */ +asn_dec_rval_t aper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ + ); + +/* + * Aligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t aper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of data buffer */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_encoder.h new file mode 100644 index 000000000..957b0bdbe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_encoder.h @@ -0,0 +1,63 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_ENCODER_H_ +#define _APER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Aligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t aper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of aper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t aper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +/* + * A variant of aper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of aper_encode() and aper_encode_to_buffer(). + */ +ssize_t +aper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *td, + const asn_per_constraints_t *constraints, + const void *sptr, + void **buffer_r +); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_opentype.h new file mode 100644 index 000000000..451b01c3b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_opentype.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_OPENTYPE_H_ +#define _APER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t aper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + + +int aper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); + +int aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_support.h new file mode 100644 index 000000000..a3724455c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/aper_support.h @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _APER_SUPPORT_H_ +#define _APER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Get the length "n" from the Aligned PER stream. + */ +ssize_t aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, + int effective_bound_bits, int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t aper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t aper_get_nsnnwn(asn_per_data_t *pd, int range); + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "n" to the Aligned PER stream. + * If (opt_need_eom) is given, it will be set to 1 if final 0-n is needed. + * In that case, invoke aper_put_length(po, -1, -1, 0, NULL) after encoding the + * last block. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, + int *opt_need_eom); + +/* Align the current bit position to octet bundary */ +int aper_put_align(asn_per_outp_t *po); +int32_t aper_get_align(asn_per_data_t *pd); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int aper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int aper_put_nsnnwn(asn_per_outp_t *po, int range, int number); + +#ifdef __cplusplus +} +#endif + +#endif /* _APER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SEQUENCE_OF.h new file mode 100644 index 000000000..e35bc447a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SEQUENCE_OF.h @@ -0,0 +1,52 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SEQUENCE_OF_H +#define ASN_SEQUENCE_OF_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * SEQUENCE OF is the same as SET OF with a tiny difference: + * the delete operation preserves the initial order of elements + * and thus MAY operate in non-constant time. + */ +#define A_SEQUENCE_OF(type) A_SET_OF(type) + +#define ASN_SEQUENCE_ADD(headptr, ptr) \ + asn_sequence_add((headptr), (ptr)) + +/*********************************************** + * Implementation of the SEQUENCE OF structure. + */ + +#define asn_sequence_add asn_set_add +#define asn_sequence_empty asn_set_empty + +/* + * Delete the element from the set by its number (base 0). + * This is NOT a constant-time operation. + * The order of elements is preserved. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; +#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) +#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SET_OF.h new file mode 100644 index 000000000..882e1a47d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_SET_OF.h @@ -0,0 +1,72 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SET_OF_H +#define ASN_SET_OF_H + +#ifdef __cplusplus +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(decltype(*array)); \ + } +#else /* C */ +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(type *); \ + } +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define ASN_SET_ADD(headptr, ptr) \ + asn_set_add((headptr), (ptr)) + +/******************************************* + * Implementation of the SET OF structure. + */ + +/* + * Add another structure into the set by its pointer. + * RETURN VALUES: + * 0 for success and -1/errno for failure. + */ +int asn_set_add(void *asn_set_of_x, void *ptr); + +/* + * Delete the element from the set by its number (base 0). + * This is a constant-time operation. The order of elements before the + * deleted ones is guaranteed, the order of elements after the deleted + * one is NOT guaranteed. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_set_del(void *asn_set_of_x, int number, int _do_free); + +/* + * Empty the contents of the set. Will free the elements, if (*free) is given. + * Will NOT free the set itself. + */ +void asn_set_empty(void *asn_set_of_x); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SET_OF(void) asn_anonymous_set_; +#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) +#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_application.h new file mode 100644 index 000000000..bf10cd3e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_application.h @@ -0,0 +1,173 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Application-level ASN.1 callbacks. + */ +#ifndef ASN_APPLICATION_H +#define ASN_APPLICATION_H + +#include "asn_system.h" /* for platform-dependent types */ +#include "asn_codecs.h" /* for ASN.1 codecs specifics */ +#include "asn_config.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A selection of ASN.1 Transfer Syntaxes to use with generalized + * encoders and decoders declared further in this .h file. + */ +enum asn_transfer_syntax { + /* Avoid appearance of a default transfer syntax. */ + ATS_INVALID = 0, + /* Plaintext output (not conforming to any standard), for debugging. */ + ATS_NONSTANDARD_PLAINTEXT, + /* Returns a randomly generated structure. */ + ATS_RANDOM, + /* + * X.690: + * BER: Basic Encoding Rules. + * DER: Distinguished Encoding Rules. + * CER: Canonical Encoding Rules. + * DER and CER are more strict variants of BER. + */ + ATS_BER, + ATS_DER, + ATS_CER, /* Only decoding is supported */ + /* + * X.696: + * OER: Octet Encoding Rules. + * CANONICAL-OER is a more strict variant of BASIC-OER. + */ + ATS_BASIC_OER, + ATS_CANONICAL_OER, + /* + * X.691: + * PER: Packed Encoding Rules. + * CANONICAL-PER is a more strict variant of BASIC-PER. + * NOTE: Produces or consumes a complete encoding (X.691 (08/2015) #11.1). + */ + ATS_UNALIGNED_BASIC_PER, + ATS_UNALIGNED_CANONICAL_PER, + ATS_ALIGNED_BASIC_PER, + ATS_ALIGNED_CANONICAL_PER, + /* + * X.693: + * XER: XML Encoding Rules. + * CANONICAL-XER is a more strict variant of BASIC-XER. + */ + ATS_BASIC_XER, + ATS_CANONICAL_XER, + ATS_JER, +}; + +/* + * A generic encoder for any supported transfer syntax. + * RETURN VALUES: + * The (.encoded) field of the return value is REDEFINED to mean the following: + * >=0: The computed size of the encoded data. Can exceed the (buffer_size). + * -1: Error encoding the structure. See the error code in (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * The (.failed_type) and (.structure_ptr) MIGHT be set to the appropriate + * values at the place of failure, if at all possible. + * WARNING: The (.encoded) field of the return value can exceed the buffer_size. + * This is similar to snprintf(3) contract which might return values + * greater than the buffer size. + */ +asn_enc_rval_t asn_encode_to_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, void *buffer, size_t buffer_size); + +/* + * A variant of asn_encode_to_buffer() with automatically allocated buffer. + * RETURN VALUES: + * On success, returns a newly allocated (.buffer) containing the whole message. + * The message size is returned in (.result.encoded). + * On failure: + * (.buffer) is NULL, + * (.result.encoded) as in asn_encode_to_buffer(), + * The errno codes as in asn_encode_to_buffer(), plus the following: + * ENOMEM: Memory allocation failed due to system or internal limits. + * The user is responsible for freeing the (.buffer). + */ +typedef struct asn_encode_to_new_buffer_result_s { + void *buffer; /* NULL if failed to encode. */ + asn_enc_rval_t result; +} asn_encode_to_new_buffer_result_t; +asn_encode_to_new_buffer_result_t asn_encode_to_new_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode); + + +/* + * Generic type of an application-defined callback to return various + * types of data to the application. + * EXPECTED RETURN VALUES: + * -1: Failed to consume bytes. Abort the mission. + * Non-negative return values indicate success, and ignored. + */ +typedef int(asn_app_consume_bytes_f)(const void *buffer, size_t size, + void *application_specific_key); + + +/* + * A generic encoder for any supported transfer syntax. + * Returns the comprehensive encoding result descriptor (see asn_codecs.h). + * RETURN VALUES: + * The negative (.encoded) field of the return values is accompanied with the + * following error codes (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * EIO: The (callback) has returned negative value during encoding. + */ +asn_enc_rval_t asn_encode( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, + asn_app_consume_bytes_f *callback, void *callback_key); + + +/* + * A generic decoder for any supported transfer syntax. + */ +asn_dec_rval_t asn_decode( + const asn_codec_ctx_t *opt_codec_parameters, enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_decode, + void **structure_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + + +/* + * A callback of this type is called whenever constraint validation fails + * on some ASN.1 type. See "constraints.h" for more details on constraint + * validation. + * This callback specifies a descriptor of the ASN.1 type which failed + * the constraint check, as well as human readable message on what + * particular constraint has failed. + */ +typedef void (asn_app_constraint_failed_f)(void *application_specific_key, + const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, + const void *structure_which_failed_ptr, + const char *error_message_format, ...) CC_PRINTFLIKE(4, 5); + + +#ifdef __cplusplus +} +#endif + +#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ + +#endif /* ASN_APPLICATION_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_bit_data.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_bit_data.h new file mode 100644 index 000000000..f14714bbd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_bit_data.h @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_BIT_DATA +#define ASN_BIT_DATA + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * This structure describes a position inside an incoming PER bit stream. + */ +typedef struct asn_bit_data_s { + const uint8_t *buffer; /* Pointer to the octet stream */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits in the stream */ + size_t moved; /* Number of bits moved through this bit stream */ + int (*refill)(struct asn_bit_data_s *); + void *refill_key; +} asn_bit_data_t; + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t *asn_bit_data_new_contiguous(const void *data, size_t size_bits); + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int32_t asn_get_few_bits(asn_bit_data_t *, int get_nbits); + +/* Undo the immediately preceding "get_few_bits" operation */ +void asn_get_undo(asn_bit_data_t *, int get_nbits); + +/* + * Extract a large number of bits from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int asn_get_many_bits(asn_bit_data_t *, uint8_t *dst, int right_align, + int get_nbits); + +/* Non-thread-safe debugging function, don't use it */ +char *asn_bit_data_string(asn_bit_data_t *); + +/* + * This structure supports forming bit output. + */ +typedef struct asn_bit_outp_s { + uint8_t *buffer; /* Pointer into the (tmpspace) */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits left in (tmpspace) */ + uint8_t tmpspace[32]; /* Preliminary storage to hold data */ + int (*output)(const void *data, size_t size, void *op_key); + void *op_key; /* Key for (output) data callback */ + size_t flushed_bytes; /* Bytes already flushed through (output) */ +} asn_bit_outp_t; + +/* Output a small number of bits (<= 31) */ +int asn_put_few_bits(asn_bit_outp_t *, uint32_t bits, int obits); + +/* Output a large number of bits */ +int asn_put_many_bits(asn_bit_outp_t *, const uint8_t *src, int put_nbits); + +/* + * Flush whole bytes (0 or more) through (outper) member. + * The least significant bits which are not used are guaranteed to be set to 0. + * Returns -1 if callback returns -1. Otherwise, 0. + */ +int asn_put_aligned_flush(asn_bit_outp_t *); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_BIT_DATA */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs.h new file mode 100644 index 000000000..e75c2709c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs.h @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_H +#define ASN_CODECS_H + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * This structure defines a set of parameters that may be passed + * to every ASN.1 encoder or decoder function. + * WARNING: if max_stack_size member is set, and you are calling the + * function pointers of the asn_TYPE_descriptor_t directly, + * this structure must be ALLOCATED ON THE STACK! + * If you can't always satisfy this requirement, use ber_decode(), + * xer_decode() and uper_decode() functions instead. + */ +typedef struct asn_codec_ctx_s { + /* + * Limit the decoder routines to use no (much) more stack than a given + * number of bytes. Most of decoders are stack-based, and this + * would protect against stack overflows if the number of nested + * encodings is high. + * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, + * and are safe from this kind of overflow. + * A value from getrlimit(RLIMIT_STACK) may be used to initialize + * this variable. Be careful in multithreaded environments, as the + * stack size is rather limited. + */ + size_t max_stack_size; /* 0 disables stack bounds checking */ +} asn_codec_ctx_t; + +/* + * Type of the return value of the encoding functions (der_encode, xer_encode). + */ +typedef struct asn_enc_rval_s { + /* + * Number of bytes encoded. + * -1 indicates failure to encode the structure. + * In this case, the members below this one are meaningful. + */ + ssize_t encoded; + + /* + * Members meaningful when (encoded == -1), for post mortem analysis. + */ + + /* Type which cannot be encoded */ + const struct asn_TYPE_descriptor_s *failed_type; + + /* Pointer to the structure of that type */ + const void *structure_ptr; +} asn_enc_rval_t; +#define ASN__ENCODE_FAILED do { \ + asn_enc_rval_t tmp_error; \ + tmp_error.encoded = -1; \ + tmp_error.failed_type = td; \ + tmp_error.structure_ptr = sptr; \ + ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__ENCODED_OK(rval) do { \ + rval.structure_ptr = 0; \ + rval.failed_type = 0; \ + return rval; \ +} while(0) + +/* + * Type of the return value of the decoding functions (ber_decode, xer_decode) + * + * Please note that the number of consumed bytes is ALWAYS meaningful, + * even if code==RC_FAIL. This is to indicate the number of successfully + * decoded bytes, hence providing a possibility to fail with more diagnostics + * (i.e., print the offending remainder of the buffer). + */ +enum asn_dec_rval_code_e { + RC_OK, /* Decoded successfully */ + RC_WMORE, /* More data expected, call again */ + RC_FAIL /* Failure to decode data */ +}; +typedef struct asn_dec_rval_s { + enum asn_dec_rval_code_e code; /* Result code */ + size_t consumed; /* Number of bytes consumed */ +} asn_dec_rval_t; +#define ASN__DECODE_FAILED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_FAIL; \ + tmp_error.consumed = 0; \ + ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__DECODE_STARVED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_WMORE; \ + tmp_error.consumed = 0; \ + return tmp_error; \ +} while(0) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs_prim.h new file mode 100644 index 000000000..5bbd9cfbc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_codecs_prim.h @@ -0,0 +1,56 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_PRIM_H +#define ASN_CODECS_PRIM_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ASN__PRIMITIVE_TYPE_s { + uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ + size_t size; /* Size of the buffer */ +} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ + +asn_struct_free_f ASN__PRIMITIVE_TYPE_free; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f ber_decode_primitive; +der_type_encoder_f der_encode_primitive; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +/* + * A callback specification for the xer_decode_primitive() function below. + */ +enum xer_pbd_rval { + XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ + XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ + XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ + XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ + XPBD_BODY_CONSUMED /* Body is recognized and consumed */ +}; +typedef enum xer_pbd_rval(xer_primitive_body_decoder_f)( + const asn_TYPE_descriptor_t *td, void *struct_ptr, const void *chunk_buf, + size_t chunk_size); + +/* + * Specific function to decode simple primitive types. + * Also see xer_decode_general() in xer_decoder.h + */ +asn_dec_rval_t xer_decode_primitive( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + size_t struct_size, const char *opt_mname, const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder); +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_config.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_config.h new file mode 100644 index 000000000..10e9c328b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_config.h @@ -0,0 +1,3 @@ +// Generated automatically. Don't edit manually! + +#define ASN_DISABLE_JER_SUPPORT 1 diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_constant.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_constant.h new file mode 100644 index 000000000..cdd7ad7c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_constant.h @@ -0,0 +1,308 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + */ + +#ifndef _ASN_CONSTANT_H +#define _ASN_CONSTANT_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define min_val_AddGrpB_Angle (0) +#define max_val_AddGrpB_Angle (239) +#define min_val_Day (0) +#define max_val_Day (255) +#define min_val_DegreesLat (-90) +#define max_val_DegreesLat (90) +#define min_val_DegreesLong (-180) +#define max_val_DegreesLong (180) +#define min_val_AddGrpB_Elevation (-32768) +#define max_val_AddGrpB_Elevation (32767) +#define min_val_Hour (0) +#define max_val_Hour (255) +#define min_val_LatitudeDMS (-32400000) +#define max_val_LatitudeDMS (32400000) +#define min_val_LongitudeDMS (-64800000) +#define max_val_LongitudeDMS (64800000) +#define min_val_MaxTimetoChange (0) +#define max_val_MaxTimetoChange (2402) +#define min_val_MinTimetoChange (0) +#define max_val_MinTimetoChange (2402) +#define min_val_Minute (0) +#define max_val_Minute (255) +#define min_val_MinutesAngle (0) +#define max_val_MinutesAngle (59) +#define min_val_Month (1) +#define max_val_Month (255) +#define min_val_AddGrpB_MsgCount (0) +#define max_val_AddGrpB_MsgCount (255) +#define min_val_Second (0) +#define max_val_Second (60) +#define min_val_SecondsAngle (0) +#define max_val_SecondsAngle (5999) +#define min_val_TenthSecond (0) +#define max_val_TenthSecond (9) +#define min_val_TimeRemaining (0) +#define max_val_TimeRemaining (9001) +#define min_val_Year (1) +#define max_val_Year (65535) +#define min_val_AltitudeValue (-100000) +#define max_val_AltitudeValue (800001) +#define min_val_PartII_Id (0) +#define max_val_PartII_Id (63) +#define min_val_TrailerMass (0) +#define max_val_TrailerMass (255) +#define min_val_VertOffset_B07 (-64) +#define max_val_VertOffset_B07 (63) +#define min_val_Acceleration (-2000) +#define max_val_Acceleration (2001) +#define min_val_AmbientAirPressure (0) +#define max_val_AmbientAirPressure (255) +#define min_val_AmbientAirTemperature (0) +#define max_val_AmbientAirTemperature (191) +#define min_val_Common_Angle (0) +#define max_val_Common_Angle (28800) +#define min_val_ApproachID (0) +#define max_val_ApproachID (15) +#define min_val_BasicVehicleClass (0) +#define max_val_BasicVehicleClass (255) +#define min_val_BumperHeight (0) +#define max_val_BumperHeight (127) +#define min_val_CoarseHeading (0) +#define max_val_CoarseHeading (240) +#define min_val_CoefficientOfFriction (0) +#define max_val_CoefficientOfFriction (50) +#define min_val_Confidence (0) +#define max_val_Confidence (200) +#define min_val_Count (0) +#define max_val_Count (32) +#define min_val_DDay (0) +#define max_val_DDay (31) +#define min_val_DeltaAngle (-150) +#define max_val_DeltaAngle (150) +#define min_val_DHour (0) +#define max_val_DHour (31) +#define min_val_DMinute (0) +#define max_val_DMinute (60) +#define min_val_DMonth (0) +#define max_val_DMonth (12) +#define min_val_DOffset (-840) +#define max_val_DOffset (840) +#define min_val_DrivenLineOffsetLg (-32767) +#define max_val_DrivenLineOffsetLg (32767) +#define min_val_DrivenLineOffsetSm (-2047) +#define max_val_DrivenLineOffsetSm (2047) +#define min_val_DSecond (0) +#define max_val_DSecond (65535) +#define min_val_Duration (0) +#define max_val_Duration (3600) +#define min_val_DYear (0) +#define max_val_DYear (4095) +#define min_val_Common_Elevation (-4096) +#define max_val_Common_Elevation (61439) +#define min_val_FuelType (0) +#define max_val_FuelType (15) +#define min_val_GrossSpeed (0) +#define max_val_GrossSpeed (31) +#define min_val_Heading (0) +#define max_val_Heading (28800) +#define min_val_IntersectionID (0) +#define max_val_IntersectionID (65535) +#define min_val_Iso3833VehicleType (0) +#define max_val_Iso3833VehicleType (100) +#define min_val_TrailerWeight (0) +#define max_val_TrailerWeight (64255) +#define min_val_LaneConnectionID (0) +#define max_val_LaneConnectionID (255) +#define min_val_LaneID (0) +#define max_val_LaneID (255) +#define min_val_LaneWidth (0) +#define max_val_LaneWidth (32767) +#define min_val_Latitude (-900000000) +#define max_val_Latitude (900000001) +#define min_val_Longitude (-1799999999) +#define max_val_Longitude (1800000001) +#define min_val_MergeDivergeNodeAngle (-180) +#define max_val_MergeDivergeNodeAngle (180) +#define min_val_MinuteOfTheYear (0) +#define max_val_MinuteOfTheYear (527040) +#define min_val_Common_MsgCount (0) +#define max_val_Common_MsgCount (127) +#define min_val_ObstacleDistance (0) +#define max_val_ObstacleDistance (32767) +#define min_val_Offset_B09 (-256) +#define max_val_Offset_B09 (255) +#define min_val_Offset_B10 (-512) +#define max_val_Offset_B10 (511) +#define min_val_Offset_B11 (-1024) +#define max_val_Offset_B11 (1023) +#define min_val_Offset_B12 (-2048) +#define max_val_Offset_B12 (2047) +#define min_val_Offset_B13 (-4096) +#define max_val_Offset_B13 (4095) +#define min_val_Offset_B14 (-8192) +#define max_val_Offset_B14 (8191) +#define min_val_Offset_B16 (-32768) +#define max_val_Offset_B16 (32767) +#define min_val_OffsetLL_B18 (-131072) +#define max_val_OffsetLL_B18 (131071) +#define min_val_RadiusOfCurvature (-32767) +#define max_val_RadiusOfCurvature (32767) +#define min_val_RegionId (0) +#define max_val_RegionId (255) +#define min_val_RequestID (0) +#define max_val_RequestID (255) +#define min_val_RestrictionClassID (0) +#define max_val_RestrictionClassID (255) +#define min_val_RoadRegulatorID (0) +#define max_val_RoadRegulatorID (65535) +#define min_val_RoadSegmentID (0) +#define max_val_RoadSegmentID (65535) +#define min_val_RoadwayCrownAngle (-128) +#define max_val_RoadwayCrownAngle (127) +#define min_val_Scale_B12 (-2048) +#define max_val_Scale_B12 (2047) +#define min_val_SemiMajorAxisAccuracy (0) +#define max_val_SemiMajorAxisAccuracy (255) +#define min_val_SemiMajorAxisOrientation (0) +#define max_val_SemiMajorAxisOrientation (65535) +#define min_val_SemiMinorAxisAccuracy (0) +#define max_val_SemiMinorAxisAccuracy (255) +#define min_val_SignalGroupID (0) +#define max_val_SignalGroupID (255) +#define min_val_Speed (0) +#define max_val_Speed (8191) +#define min_val_SSPindex (0) +#define max_val_SSPindex (31) +#define min_val_StationID (0) +#define max_val_StationID (4294967295) +#define min_val_SteeringWheelAngle (-126) +#define max_val_SteeringWheelAngle (127) +#define min_val_TimeOffset (1) +#define max_val_TimeOffset (65535) +#define min_val_VehicleHeight (0) +#define max_val_VehicleHeight (127) +#define min_val_VehicleLength (0) +#define max_val_VehicleLength (4095) +#define min_val_VehicleMass (0) +#define max_val_VehicleMass (255) +#define min_val_VehicleWidth (0) +#define max_val_VehicleWidth (1023) +#define min_val_Velocity (0) +#define max_val_Velocity (8191) +#define min_val_VerticalAcceleration (-127) +#define max_val_VerticalAcceleration (127) +#define min_val_VertOffset_B08 (-128) +#define max_val_VertOffset_B08 (127) +#define min_val_VertOffset_B09 (-256) +#define max_val_VertOffset_B09 (255) +#define min_val_VertOffset_B10 (-512) +#define max_val_VertOffset_B10 (511) +#define min_val_VertOffset_B11 (-1024) +#define max_val_VertOffset_B11 (1023) +#define min_val_VertOffset_B12 (-2048) +#define max_val_VertOffset_B12 (2047) +#define min_val_WiperRate (0) +#define max_val_WiperRate (127) +#define min_val_YawRate (-32767) +#define max_val_YawRate (32767) +#define min_val_ITIScodes (0) +#define max_val_ITIScodes (65535) +#define min_val_LayerID (0) +#define max_val_LayerID (100) +#define min_val_DSRCmsgID (0) +#define max_val_DSRCmsgID (32767) +#define min_val_NMEA_MsgType (0) +#define max_val_NMEA_MsgType (32767) +#define min_val_ObjectCount (0) +#define max_val_ObjectCount (1023) +#define min_val_EssMobileFriction (0) +#define max_val_EssMobileFriction (101) +#define min_val_EssPrecipRate (0) +#define max_val_EssPrecipRate (65535) +#define min_val_EssSolarRadiation (0) +#define max_val_EssSolarRadiation (65535) +#define min_val_AttachmentRadius (0) +#define max_val_AttachmentRadius (200) +#define min_val_PersonalClusterRadius (0) +#define max_val_PersonalClusterRadius (100) +#define min_val_GrossDistance (0) +#define max_val_GrossDistance (1023) +#define min_val_SecondOfTime (0) +#define max_val_SecondOfTime (61) +#define min_val_TermDistance (1) +#define max_val_TermDistance (30000) +#define min_val_TermTime (1) +#define max_val_TermTime (1800) +#define min_val_DrivingWheelAngle (-128) +#define max_val_DrivingWheelAngle (127) +#define min_val_AxleLocation (0) +#define max_val_AxleLocation (255) +#define min_val_AxleWeight (0) +#define max_val_AxleWeight (64255) +#define min_val_CargoWeight (0) +#define max_val_CargoWeight (64255) +#define min_val_DriveAxleLiftAirPressure (0) +#define max_val_DriveAxleLiftAirPressure (1000) +#define min_val_DriveAxleLocation (0) +#define max_val_DriveAxleLocation (255) +#define min_val_DriveAxleLubePressure (0) +#define max_val_DriveAxleLubePressure (250) +#define min_val_DriveAxleTemperature (-40) +#define max_val_DriveAxleTemperature (210) +#define min_val_SteeringAxleLubePressure (0) +#define max_val_SteeringAxleLubePressure (250) +#define min_val_SteeringAxleTemperature (-40) +#define max_val_SteeringAxleTemperature (210) +#define min_val_TireLeakageRate (0) +#define max_val_TireLeakageRate (64255) +#define min_val_TireLocation (0) +#define max_val_TireLocation (255) +#define min_val_TirePressure (0) +#define max_val_TirePressure (250) +#define min_val_TireTemp (-8736) +#define max_val_TireTemp (55519) +#define min_val_ProbeSegmentNumber (0) +#define max_val_ProbeSegmentNumber (32767) +#define min_val_SteeringWheelAngleRateOfChange (-127) +#define max_val_SteeringWheelAngleRateOfChange (127) +#define min_val_SunSensor (0) +#define max_val_SunSensor (1000) +#define min_val_ThrottlePosition (0) +#define max_val_ThrottlePosition (200) +#define min_val_DeltaTime (-122) +#define max_val_DeltaTime (121) +#define min_val_SpeedAdvice (0) +#define max_val_SpeedAdvice (500) +#define min_val_TimeIntervalConfidence (0) +#define max_val_TimeIntervalConfidence (15) +#define min_val_SPAT_TimeMark (0) +#define max_val_SPAT_TimeMark (36111) +#define min_val_ZoneLength (0) +#define max_val_ZoneLength (10000) +#define min_val_MinutesDuration (0) +#define max_val_MinutesDuration (32000) +#define min_val_OffsetLL_B12 (-2048) +#define max_val_OffsetLL_B12 (2047) +#define min_val_OffsetLL_B14 (-8192) +#define max_val_OffsetLL_B14 (8191) +#define min_val_OffsetLL_B16 (-32768) +#define max_val_OffsetLL_B16 (32767) +#define min_val_OffsetLL_B22 (-2097152) +#define max_val_OffsetLL_B22 (2097151) +#define min_val_OffsetLL_B24 (-8388608) +#define max_val_OffsetLL_B24 (8388607) +#define min_val_Radius_B12 (0) +#define max_val_Radius_B12 (4095) +#define min_val_SignPrority (0) +#define max_val_SignPrority (7) +#define min_val_Zoom (0) +#define max_val_Zoom (15) + + +#ifdef __cplusplus +} +#endif + +#endif /* _ASN_CONSTANT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_internal.h new file mode 100644 index 000000000..7103b50fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_internal.h @@ -0,0 +1,170 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Declarations internally useful for the ASN.1 support code. + */ +#ifndef ASN_INTERNAL_H +#define ASN_INTERNAL_H +#ifndef __EXTENSIONS__ +#define __EXTENSIONS__ /* for Sun */ +#endif + +#include "asn_application.h" /* Application-visible API */ + +#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ +#include /* for assert() macro */ +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#include +#include +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#include +#include +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +/* Environment version might be used to avoid running with the old library */ +#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ +int get_asn1c_environment_version(void); /* Run-time version */ + +#define CALLOC(nmemb, size) calloc(nmemb, size) +#define MALLOC(size) malloc(size) +#define REALLOC(oldptr, size) realloc(oldptr, size) +#define FREEMEM(ptr) free(ptr) + +#define asn_debug_indent 0 +#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) + +#ifdef EMIT_ASN_DEBUG +#warning "Use ASN_EMIT_DEBUG instead of EMIT_ASN_DEBUG" +#define ASN_EMIT_DEBUG EMIT_ASN_DEBUG +#endif + +/* + * A macro for debugging the ASN.1 internals. + * You may enable or override it. + */ +#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ +#if ASN_EMIT_DEBUG == 1 /* And it was asked to emit this code... */ +#if __STDC_VERSION__ >= 199901L +#ifdef ASN_THREAD_SAFE +/* Thread safety requires sacrifice in output indentation: + * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ +#else /* !ASN_THREAD_SAFE */ +#undef ASN_DEBUG_INDENT_ADD +#undef asn_debug_indent +int asn_debug_indent; +#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) +#endif /* ASN_THREAD_SAFE */ +#define ASN_DEBUG(fmt, args...) do { \ + int adi = asn_debug_indent; \ + while(adi--) fprintf(stderr, " "); \ + fprintf(stderr, fmt, ##args); \ + fprintf(stderr, " (%s:%d)\n", \ + __FILE__, __LINE__); \ + } while(0) +#else /* !C99 */ +void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); +#define ASN_DEBUG ASN_DEBUG_f +#endif /* C99 */ +#else /* ASN_EMIT_DEBUG != 1 */ +#if __STDC_VERSION__ >= 199901L +#define ASN_DEBUG(...) do{}while(0) +#else /* not C99 */ +static void CC_PRINTFLIKE(1, 2) ASN_DEBUG(const char *fmt, ...) { (void)fmt; } +#endif /* C99 or better */ +#endif /* ASN_EMIT_DEBUG */ +#endif /* ASN_DEBUG */ + +/* + * Print to a callback. + * The callback is expected to return negative values on error. + * 0 and positive values are treated as success. + * RETURN VALUES: + * -1: Failed to format or invoke the callback. + * >0: Size of the data that got delivered to the callback. + */ +ssize_t CC_PRINTFLIKE(3, 4) +asn__format_to_callback( + int (*callback)(const void *, size_t, void *key), void *key, + const char *fmt, ...); + +/* + * Invoke the application-supplied callback and fail, if something is wrong. + */ +#define ASN__E_cbc(buf, size) (cb((buf), (size), app_key) < 0) +#define ASN__E_CALLBACK(size, foo) \ + do { \ + if(foo) goto cb_failed; \ + er.encoded += (size); \ + } while(0) +#define ASN__CALLBACK(buf, size) ASN__E_CALLBACK(size, ASN__E_cbc(buf, size)) +#define ASN__CALLBACK2(buf1, size1, buf2, size2) \ + ASN__E_CALLBACK((size1) + (size2), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2)) +#define ASN__CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ + ASN__E_CALLBACK((size1) + (size2) + (size3), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2) \ + || ASN__E_cbc(buf3, size3)) + +#define ASN__TEXT_INDENT(nl, level) \ + do { \ + int tmp_level = (level); \ + int tmp_nl = ((nl) != 0); \ + int tmp_i; \ + if(tmp_nl) ASN__CALLBACK("\n", 1); \ + if(tmp_level < 0) tmp_level = 0; \ + for(tmp_i = 0; tmp_i < tmp_level; tmp_i++) ASN__CALLBACK(" ", 4); \ + } while(0) + +#define _i_INDENT(nl) do { \ + int tmp_i; \ + if((nl) && cb("\n", 1, app_key) < 0) \ + return -1; \ + for(tmp_i = 0; tmp_i < ilevel; tmp_i++) \ + if(cb(" ", 4, app_key) < 0) \ + return -1; \ + } while(0) + +/* + * Check stack against overflow, if limit is set. + */ +#define ASN__DEFAULT_STACK_MAX (30000) +#ifdef ASN_DISABLE_STACK_OVERFLOW_CHECK +static int CC_NOTUSED +ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { + (void)ctx; + return 0; +} +#else +static int CC_NOTUSED +ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { + if(ctx && ctx->max_stack_size) { + + /* ctx MUST be allocated on the stack */ + ptrdiff_t usedstack = ((const char *)ctx - (const char *)&ctx); + if(usedstack > 0) usedstack = -usedstack; /* grows up! */ + + /* double negative required to avoid int wrap-around */ + if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { + ASN_DEBUG("Stack limit %ld reached", + (long)ctx->max_stack_size); + return -1; + } + } + return 0; +} +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_INTERNAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h new file mode 100644 index 000000000..7de210ee0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h @@ -0,0 +1,51 @@ +/* + * Run-time support for Information Object Classes. + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_IOC_H +#define ASN_IOC_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; +struct asn_ioc_cell_s; + +/* + * X.681, #13 + */ +typedef struct asn_ioc_set_s { + size_t rows_count; + size_t columns_count; + const struct asn_ioc_cell_s *rows; +} asn_ioc_set_t; + + +typedef struct asn_ioc_cell_s { + const char *field_name; /* Is equal to corresponding column_name */ + enum { + aioc__undefined = 0, + aioc__value, + aioc__type, + aioc__open_type, + } cell_kind; + struct asn_TYPE_descriptor_s *type_descriptor; + const void *value_sptr; + struct { + size_t types_count; + struct { + unsigned choice_position; + } *types; + } open_type; +} asn_ioc_cell_t; + + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_IOC_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h new file mode 100644 index 000000000..47f9b8af0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_RANDOM_FILL +#define ASN_RANDOM_FILL + +/* Forward declarations */ +struct asn_TYPE_descriptor_s; +struct asn_encoding_constraints_s; + +/* + * Initialize a structure with random data according to the type specification + * and optional member constraints. + * ARGUMENTS: + * (max_length) - See (approx_max_length_limit). + * (memb_constraints) - Member constraints, if exist. + * The type can be constrained differently according + * to PER and OER specifications, so we find a value + * at the intersection of these constraints. + * In case the return differs from ARFILL_OK, the (struct_ptr) contents + * and (current_length) value remain in their original state. + */ +typedef struct asn_random_fill_result_s { + enum { + ARFILL_FAILED = -1, /* System error (memory?) */ + ARFILL_OK = 0, /* Initialization succeeded */ + ARFILL_SKIPPED = 1 /* Not done due to (length?) constraint */ + } code; + size_t length; /* Approximate number of bytes created. */ +} asn_random_fill_result_t; +typedef asn_random_fill_result_t(asn_random_fill_f)( + const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + const struct asn_encoding_constraints_s *memb_constraints, + size_t max_length); + +/* + * Returns 0 if the structure was properly initialized, -1 otherwise. + * The (approx_max_length_limit) specifies the approximate limit of the + * resulting structure in units closely resembling bytes. The actual result + * might be several times larger or smaller than the length limit. + */ +int asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t approx_max_length_limit); + +/* + * Returns a random number between min and max. + */ +intmax_t asn_random_between(intmax_t min, intmax_t max); + +#endif /* ASN_RANDOM_FILL */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_system.h new file mode 100644 index 000000000..0f0d495b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_system.h @@ -0,0 +1,169 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Miscellaneous system-dependent types. + */ +#ifndef ASN_SYSTEM_H +#define ASN_SYSTEM_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifndef _DEFAULT_SOURCE +#define _DEFAULT_SOURCE 1 +#endif + +#ifndef _BSD_SOURCE +#define _BSD_SOURCE /* for snprintf() on some linux systems */ +#endif + +#include /* For snprintf(3) */ +#include /* For *alloc(3) */ +#include /* For memcpy(3) */ +#include /* For size_t */ +#include /* For LONG_MAX */ +#include /* For va_start */ +#include /* for offsetof and ptrdiff_t */ +#include /* for PRIdMAX */ + +#ifdef _WIN32 + +#include +#ifndef __MINGW32__ +#define snprintf _snprintf +#define vsnprintf _vsnprintf +#endif + +/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ +#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ + | (((l) << 8) & 0xff0000) \ + | (((l) >> 8) & 0xff00) \ + | ((l >> 24) & 0xff)) + +#ifdef _MSC_VER /* MSVS.Net */ +#ifndef __cplusplus +#define inline __inline +#endif +#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ +#define ssize_t SSIZE_T +#if _MSC_VER < 1600 +typedef char int8_t; +typedef short int16_t; +typedef int int32_t; +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; +#else /* _MSC_VER >= 1600 */ +#include +#endif /* _MSC_VER < 1600 */ +#endif /* ASSUMESTDTYPES */ +#define WIN32_LEAN_AND_MEAN +#include +#include +#define isnan _isnan +#define finite _finite +#define copysign _copysign +#define ilogb _logb +#else /* !_MSC_VER */ +#include +#endif /* _MSC_VER */ + +#else /* !_WIN32 */ + +#if defined(__vxworks) +#include +#else /* !defined(__vxworks) */ + +#include /* C99 specifies this file */ +#ifdef HAVE_NETINET_IN_H +#include /* for ntohl() */ +#endif +#define sys_ntohl(foo) ntohl(foo) +#endif /* defined(__vxworks) */ + +#endif /* _WIN32 */ + +#if __GNUC__ >= 3 || defined(__clang__) +#define CC_ATTRIBUTE(attr) __attribute__((attr)) +#else +#define CC_ATTRIBUTE(attr) +#endif +#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__>= 4) || __GNUC__ > 4) +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(gnu_printf, fmt, var)) +#elif defined(__GNUC__) +#if defined(ANDROID) +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(__format__(__printf__, fmt, var)) +#else +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(printf, fmt, var)) +#endif +#else +#define CC_PRINTFLIKE(fmt, var) +#endif +#define CC_NOTUSED CC_ATTRIBUTE(unused) +#ifndef CC_ATTR_NO_SANITIZE +#if __GNUC__ < 8 +#define CC_ATTR_NO_SANITIZE(what) +#else +#define CC_ATTR_NO_SANITIZE(what) CC_ATTRIBUTE(no_sanitize(what)) +#endif +#endif + +/* Figure out if thread safety is requested */ +#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) +#define ASN_THREAD_SAFE +#endif /* Thread safety */ + +#ifndef offsetof /* If not defined by */ +#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) +#endif /* offsetof */ + +#ifndef MIN /* Suitable for comparing primitive types (integers) */ +#if defined(__GNUC__) +#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ + ((_a)<(_b)?(_a):(_b)); }) +#else /* !__GNUC__ */ +#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ +#endif /* __GNUC__ */ +#endif /* MIN */ + +#if __STDC_VERSION__ >= 199901L +#ifndef SIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#endif + +#ifndef RSIZE_MAX /* C11, Annex K */ +#define RSIZE_MAX (SIZE_MAX >> 1) +#endif +#ifndef RSSIZE_MAX /* Halve signed size even further than unsigned */ +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif +#else /* Old compiler */ +#undef SIZE_MAX +#undef RSIZE_MAX +#undef RSSIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#define RSIZE_MAX (SIZE_MAX >> 1) +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif + +#if __STDC_VERSION__ >= 199901L +#define ASN_PRI_SIZE "zu" +#define ASN_PRI_SSIZE "zd" +#define ASN_PRIuMAX PRIuMAX +#define ASN_PRIdMAX PRIdMAX +#else +#define ASN_PRI_SIZE "lu" +#define ASN_PRI_SSIZE "ld" +#if LLONG_MAX > LONG_MAX +#define ASN_PRIuMAX "llu" +#define ASN_PRIdMAX "lld" +#else +#define ASN_PRIuMAX "lu" +#define ASN_PRIdMAX "ld" +#endif +#endif + +#endif /* ASN_SYSTEM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_decoder.h new file mode 100644 index 000000000..1ac2a5ef0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_decoder.h @@ -0,0 +1,66 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_DECODER_H_ +#define _BER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The BER decoder of any type. + * This function may be invoked directly from the application. + * Decodes BER, DER and CER data (DER and CER are different subsets of BER). + * + * NOTE: Use the der_encode() function (der_encoder.h) to produce encoding + * which is compliant with ber_decode(). + */ +asn_dec_rval_t ber_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(ber_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const void *buf_ptr, size_t size, int tag_mode); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Check that all tags correspond to the type definition (as given in head). + * On return, last_length would contain either a non-negative length of the + * value part of the last TLV, or the negative number of expected + * "end of content" sequences. The number may only be negative if the + * head->last_tag_form is non-zero. + */ +asn_dec_rval_t ber_check_tags( + const struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ + const struct asn_TYPE_descriptor_s *type_descriptor, + asn_struct_ctx_t *opt_ctx, /* saved decoding context */ + const void *ptr, size_t size, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {-1,0:1}: any, primitive, constr */ + ber_tlv_len_t *last_length, int *opt_tlv_form /* optional tag form */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_length.h new file mode 100644 index 000000000..d1e4d48dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_length.h @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_LENGTH_H_ +#define _BER_TLV_LENGTH_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ssize_t ber_tlv_len_t; + +/* + * This function tries to fetch the length of the BER TLV value and place it + * in *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + * On return with >0, len_r is constrained as -1..MAX, where -1 mean + * that the value is of indefinite length. + */ +ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r); + +/* + * This function expects bufptr to be positioned over L in TLV. + * It returns number of bytes occupied by L and V together, suitable + * for skipping. The function properly handles indefinite length. + * RETURN VALUES: + * Standard {-1,0,>0} convention. + */ +ssize_t ber_skip_length( + const struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ + int _is_constructed, const void *bufptr, size_t size); + +/* + * This function serializes the length (L from TLV) in DER format. + * It always returns number of bytes necessary to represent the length, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_tag.h new file mode 100644 index 000000000..ce227add6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ber_tlv_tag.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_TAG_H_ +#define _BER_TLV_TAG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum asn_tag_class { + ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ + ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ + ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ + ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ +}; +typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ + +/* + * Tag class is encoded together with tag value for optimization purposes. + */ +#define BER_TAG_CLASS(tag) ((tag) & 0x3) +#define BER_TAG_VALUE(tag) ((tag) >> 2) +#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) + +#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) + +/* + * Several functions for printing the TAG in the canonical form + * (i.e. "[PRIVATE 0]"). + * Return values correspond to their libc counterparts (if any). + */ +ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); +ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); +char *ber_tlv_tag_string(ber_tlv_tag_t tag); + + +/* + * This function tries to fetch the tag from the input stream. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering tag. + * >0: Number of bytes used from bufptr. tag_r will contain the tag. + */ +ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); + +/* + * This function serializes the tag (T from TLV) in BER format. + * It always returns number of bytes necessary to represent the tag, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_CHOICE.h new file mode 100644 index 000000000..03d606c88 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_CHOICE.h @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_CHOICE_H_ +#define _CONSTR_CHOICE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_CHOICE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_codec_ctx_t member */ + unsigned pres_offset; /* Identifier of the present member */ + unsigned pres_size; /* Size of the identifier (enum) */ + + /* + * Tags to members mapping table. + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* Canonical ordering of CHOICE elements, for PER */ + const unsigned *to_canonical_order; + const unsigned *from_canonical_order; + + /* + * Extensions-related stuff. + */ + signed ext_start; /* First member of extensions, or -1 */ +} asn_CHOICE_specifics_t; + +/* + * A set specialized functions dealing with the CHOICE type. + */ +asn_struct_free_f CHOICE_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f CHOICE_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f CHOICE_compare; + +asn_constr_check_f CHOICE_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f CHOICE_decode_ber; +der_type_encoder_f CHOICE_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f CHOICE_decode_xer; +xer_type_encoder_f CHOICE_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f CHOICE_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f CHOICE_decode_oer; +oer_type_encoder_f CHOICE_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f CHOICE_decode_uper; +per_type_encoder_f CHOICE_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f CHOICE_decode_aper; +per_type_encoder_f CHOICE_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f CHOICE_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +asn_outmost_tag_f CHOICE_outmost_tag; + +extern asn_TYPE_operation_t asn_OP_CHOICE; + +unsigned _fetch_present_idx( + const void *struct_ptr, + unsigned off, + unsigned size); + +void _set_present_idx( + void *sptr, + unsigned offset, + unsigned size, + unsigned present); + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, + const void *structure_ptr); + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, + void *structure_ptr, unsigned present); + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_CHOICE_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 new file mode 100644 index 000000000..5ecfd8f22 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h @@ -0,0 +1,95 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_H_ +#define _CONSTR_SEQUENCE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SEQUENCE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* + * Tags to members mapping table (sorted). + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* + * Optional members of the extensions root (roms) or additions (aoms). + * Meaningful for PER. + */ + const int *oms; /* Optional MemberS */ + unsigned roms_count; /* Root optional members count */ + unsigned aoms_count; /* Additions optional members count */ + + /* + * Description of an extensions group. + * Root components are clustered at the beginning of the structure, + * whereas extensions are clustered at the end. -1 means not extensible. + */ + signed first_extension; /* First extension addition */ +} asn_SEQUENCE_specifics_t; + + +/* + * A set specialized functions dealing with the SEQUENCE type. + */ +asn_struct_free_f SEQUENCE_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f SEQUENCE_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SEQUENCE_compare; + +asn_constr_check_f SEQUENCE_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f SEQUENCE_decode_ber; +der_type_encoder_f SEQUENCE_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f SEQUENCE_decode_xer; +xer_type_encoder_f SEQUENCE_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SEQUENCE_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f SEQUENCE_decode_oer; +oer_type_encoder_f SEQUENCE_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f SEQUENCE_decode_uper; +per_type_encoder_f SEQUENCE_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f SEQUENCE_decode_aper; +per_type_encoder_f SEQUENCE_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f SEQUENCE_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SEQUENCE; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE_OF.h new file mode 100644 index 000000000..1768582bf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE_OF.h @@ -0,0 +1,67 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_OF_H_ +#define _CONSTR_SEQUENCE_OF_H_ + +#include +#include /* Implemented using SET OF */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A set specialized functions dealing with the SEQUENCE OF type. + * Generally implemented using SET OF. + */ +#define SEQUENCE_OF_free SET_OF_free + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +#define SEQUENCE_OF_print SET_OF_print +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SEQUENCE_OF_compare; + +#define SEQUENCE_OF_constraint SET_OF_constraint + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#define SEQUENCE_OF_decode_ber SET_OF_decode_ber +der_type_encoder_f SEQUENCE_OF_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#define SEQUENCE_OF_decode_xer SET_OF_decode_xer +xer_type_encoder_f SEQUENCE_OF_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SEQUENCE_OF_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#define SEQUENCE_OF_decode_oer SET_OF_decode_oer +#define SEQUENCE_OF_encode_oer SET_OF_encode_oer +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +#define SEQUENCE_OF_decode_uper SET_OF_decode_uper +per_type_encoder_f SEQUENCE_OF_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +#define SEQUENCE_OF_decode_aper SET_OF_decode_aper +per_type_encoder_f SEQUENCE_OF_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#define SEQUENCE_OF_random_fill SET_OF_random_fill +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SEQUENCE_OF; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET_OF.h new file mode 100644 index 000000000..0e9dd39a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET_OF.h @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef CONSTR_SET_OF_H +#define CONSTR_SET_OF_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SET_OF_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* XER-specific stuff */ + int as_XMLValueList; /* The member type must be encoded like this */ +} asn_SET_OF_specifics_t; + +/* + * A set specialized functions dealing with the SET OF type. + */ +asn_struct_free_f SET_OF_free; + +#if !defined(ASN_DISABLE_PRINT_SUPPORT) +asn_struct_print_f SET_OF_print; +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + +asn_struct_compare_f SET_OF_compare; + +asn_constr_check_f SET_OF_constraint; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +ber_type_decoder_f SET_OF_decode_ber; +der_type_encoder_f SET_OF_encode_der; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +xer_type_decoder_f SET_OF_decode_xer; +xer_type_encoder_f SET_OF_encode_xer; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +jer_type_encoder_f SET_OF_encode_jer; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +oer_type_decoder_f SET_OF_decode_oer; +oer_type_encoder_f SET_OF_encode_oer; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) +per_type_decoder_f SET_OF_decode_uper; +per_type_encoder_f SET_OF_encode_uper; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) +per_type_decoder_f SET_OF_decode_aper; +per_type_encoder_f SET_OF_encode_aper; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +asn_random_fill_f SET_OF_random_fill; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +extern asn_TYPE_operation_t asn_OP_SET_OF; + +/* + * Internally visible buffer holding a single encoded element. + */ +struct _el_buffer { + uint8_t *buf; + size_t length; + size_t allocated_size; + unsigned bits_unused; +}; + +enum SET_OF__encode_method { + SOES_DER, /* Distinguished Encoding Rules */ + SOES_CUPER, /* Canonical Unaligned Packed Encoding Rules */ + SOES_CAPER /* Canonical Aligned Packed Encoding Rules */ +}; + +struct _el_buffer * SET_OF__encode_sorted( + const asn_TYPE_member_t *elm, + const asn_anonymous_set_ *list, + enum SET_OF__encode_method method); + +void SET_OF__encode_sorted_free( + struct _el_buffer *el_buf, + size_t count); + +#ifdef __cplusplus +} +#endif + +#endif /* CONSTR_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_TYPE.h new file mode 100644 index 000000000..55c2574a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_TYPE.h @@ -0,0 +1,295 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This file contains the declaration structure called "ASN.1 Type Definition", + * which holds all information necessary for encoding and decoding routines. + * This structure even contains pointer to these encoding and decoding routines + * for each defined ASN.1 type. + */ +#ifndef _CONSTR_TYPE_H_ +#define _CONSTR_TYPE_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_TYPE_member_s; /* Forward declaration */ + +/* + * This type provides the context information for various ASN.1 routines, + * primarily ones doing decoding. A member _asn_ctx of this type must be + * included into certain target language's structures, such as compound types. + */ +typedef struct asn_struct_ctx_s { + short phase; /* Decoding phase */ + short step; /* Elementary step of a phase */ + int context; /* Other context information */ + void *ptr; /* Decoder-specific stuff (stack elements) */ + ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ +} asn_struct_ctx_t; + +#if !defined(ASN_DISABLE_BER_SUPPORT) +#include /* Basic Encoding Rules decoder */ +#include /* Distinguished Encoding Rules encoder */ +#else +typedef void (ber_type_decoder_f)(void); +typedef void (der_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) +#include /* Decoder of XER (XML, text) */ +#include /* Encoder into XER (XML, text) */ +#else +typedef void (xer_type_decoder_f)(void); +typedef void (xer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) +#include /* Encoder into JER (JSON, text) */ +#else +typedef void (jer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +#include /* Packet Encoding Rules decoder */ +#include /* Packet Encoding Rules encoder */ +#else +typedef void (per_type_decoder_f)(void); +typedef void (per_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + +#include /* Subtype constraints support */ + +#if !defined(ASN_DISABLE_RFILL_SUPPORT) +#include /* Random structures support */ +#else +typedef void (asn_random_fill_f)(void); +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) +#include /* Octet Encoding Rules encoder */ +#include /* Octet Encoding Rules encoder */ +#else +typedef void (oer_type_decoder_f)(void); +typedef void (oer_type_encoder_f)(void); +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +/* + * Free the structure according to its specification. + * Use one of ASN_STRUCT_{FREE,RESET,CONTENTS_ONLY} macros instead. + * Do not use directly. + */ +enum asn_struct_free_method { + ASFM_FREE_EVERYTHING, /* free(struct_ptr) and underlying members */ + ASFM_FREE_UNDERLYING, /* free underlying members */ + ASFM_FREE_UNDERLYING_AND_RESET /* FREE_UNDERLYING + memset(0) */ +}; +typedef void (asn_struct_free_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, enum asn_struct_free_method); + +/* + * Free the structure including freeing the memory pointed to by ptr itself. + */ +#define ASN_STRUCT_FREE(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_EVERYTHING) + +/* + * Free the memory used by the members of the structure without freeing the + * the structure pointer itself. + * ZERO-OUT the structure to the safe clean state. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + */ +#define ASN_STRUCT_RESET(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING_AND_RESET) + +/* + * Free memory used by the members of the structure without freeing + * the structure pointer itself. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + * AVOID using it in the application code; + * Use a safer ASN_STRUCT_RESET() instead. + */ +#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING) + +/* + * Print the structure according to its specification. + */ +typedef int(asn_struct_print_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, + int level, /* Indentation level */ + asn_app_consume_bytes_f *callback, void *app_key); + +/* + * Compare two structs between each other. + * Returns <0 if struct_A is "smaller" than struct_B, >0 if "greater", + * and =0 if "equal to", for some type-specific, stable definition of + * "smaller", "greater" and "equal to". + */ +typedef int (asn_struct_compare_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_A, + const void *struct_B); + +/* + * Return the outmost tag of the type. + * If the type is untagged CHOICE, the dynamic operation is performed. + * NOTE: This function pointer type is only useful internally. + * Do not use it in your application. + */ +typedef ber_tlv_tag_t (asn_outmost_tag_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); +/* The instance of the above function type; used internally. */ +asn_outmost_tag_f asn_TYPE_outmost_tag; + +/* + * Fetch the desired type of the Open Type based on the + * Information Object Set driven constraints. + */ +typedef struct asn_type_selector_result_s { + const struct asn_TYPE_descriptor_s *type_descriptor; /* Type encoded. */ + unsigned presence_index; /* Associated choice variant. */ +} asn_type_selector_result_t; +typedef asn_type_selector_result_t(asn_type_selector_f)( + const struct asn_TYPE_descriptor_s *parent_type_descriptor, + const void *parent_structure_ptr); + +/* + * Generalized functions for dealing with the speciic type. + * May be directly invoked by applications. + */ +typedef struct asn_TYPE_operation_s { + asn_struct_free_f *free_struct; /* Free the structure */ + asn_struct_print_f *print_struct; /* Human readable output */ + asn_struct_compare_f *compare_struct; /* Compare two structures */ + ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ + der_type_encoder_f *der_encoder; /* Canonical DER encoder */ + xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ + xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ + jer_type_encoder_f *jer_encoder; /* Generic JER encoder */ + oer_type_decoder_f *oer_decoder; /* Generic OER decoder */ + oer_type_encoder_f *oer_encoder; /* Canonical OER encoder */ + per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ + per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ + per_type_decoder_f *aper_decoder; /* Aligned PER decoder */ + per_type_encoder_f *aper_encoder; /* Aligned PER encoder */ + asn_random_fill_f *random_fill; /* Initialize with a random value */ + asn_outmost_tag_f *outmost_tag; /* */ +} asn_TYPE_operation_t; + +/* + * A constraints tuple specifying both the OER and PER constraints. + */ +typedef struct asn_encoding_constraints_s { +#if !defined(ASN_DISABLE_OER_SUPPORT) + const struct asn_oer_constraints_s *oer_constraints; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const struct asn_per_constraints_s *per_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_constr_check_f *general_constraints; +} asn_encoding_constraints_t; + +/* + * The definitive description of the destination language's structure. + */ +typedef struct asn_TYPE_descriptor_s { + const char *name; /* A name of the ASN.1 type. "" in some cases. */ + const char *xml_tag; /* Name used in XML tag */ + + /* + * Generalized functions for dealing with the specific type. + * May be directly invoked by applications. + */ + asn_TYPE_operation_t *op; + + /*********************************************************************** + * Internally useful members. Not to be used by applications directly. * + **********************************************************************/ + + /* + * Tags that are expected to occur. + */ + const ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ + unsigned tags_count; /* Number of tags which are expected */ + const ber_tlv_tag_t *all_tags; /* Every tag for BER/containment */ + unsigned all_tags_count; /* Number of tags */ + + /* OER, PER, and general constraints */ + asn_encoding_constraints_t encoding_constraints; + + /* + * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). + */ + struct asn_TYPE_member_s *elements; + unsigned elements_count; + + /* + * Additional information describing the type, used by appropriate + * functions above. + */ + const void *specifics; +} asn_TYPE_descriptor_t; + +/* + * This type describes an element of the constructed type, + * i.e. SEQUENCE, SET, CHOICE, etc. + */ + enum asn_TYPE_flags_e { + ATF_NOFLAGS, + ATF_POINTER = 0x01, /* Represented by the pointer */ + ATF_OPEN_TYPE = 0x02, /* Open Type */ + ATF_ANY_TYPE = 0x04 /* ANY type (deprecated!) */ + }; +typedef struct asn_TYPE_member_s { + enum asn_TYPE_flags_e flags; /* Element's presentation flags */ + unsigned optional; /* Following optional members, including current */ + unsigned memb_offset; /* Offset of the element */ + ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ + int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ + asn_TYPE_descriptor_t *type; /* Member type descriptor */ + asn_type_selector_f *type_selector; /* IoS runtime type selector */ + asn_encoding_constraints_t encoding_constraints; + int (*default_value_cmp)(const void *sptr); /* Compare DEFAULT */ + int (*default_value_set)(void **sptr); /* Set DEFAULT */ + const char *name; /* ASN.1 identifier of the element */ +} asn_TYPE_member_t; + +/* + * BER tag to element number mapping. + */ +typedef struct asn_TYPE_tag2member_s { + ber_tlv_tag_t el_tag; /* Outmost tag of the member */ + unsigned el_no; /* Index of the associated member, base 0 */ + int toff_first; /* First occurrence of the el_tag, relative */ + int toff_last; /* Last occurrence of the el_tag, relative */ +} asn_TYPE_tag2member_t; + +/* + * This function prints out the contents of the target language's structure + * (struct_ptr) into the file pointer (stream) in human readable form. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem dumping the structure. + * (See also xer_fprint() in xer_encoder.h) + */ +int asn_fprint(FILE *stream, /* Destination stream descriptor */ + const asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ + const void *struct_ptr); /* Structure to be printed */ + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constraints.h new file mode 100644 index 000000000..0c093fa82 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constraints.h @@ -0,0 +1,63 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN1_CONSTRAINTS_VALIDATOR_H +#define ASN1_CONSTRAINTS_VALIDATOR_H + +#include /* Platform-dependent types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Validate the structure according to the ASN.1 constraints. + * If errbuf and errlen are given, they shall be pointing to the appropriate + * buffer space and its length before calling this function. Alternatively, + * they could be passed as NULL's. If constraints validation fails, + * errlen will contain the actual number of bytes taken from the errbuf + * to encode an error message (properly 0-terminated). + * + * RETURN VALUES: + * This function returns 0 in case all ASN.1 constraints are met + * and -1 if one or more constraints were failed. + */ +int asn_check_constraints( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Target language's structure */ + char *errbuf, /* Returned error description */ + size_t *errlen /* Length of the error description */ +); + + +/* + * Generic type for constraint checking callback, + * associated with every type descriptor. + */ +typedef int(asn_constr_check_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct_ptr, + asn_app_constraint_failed_f *optional_callback, /* Log the error */ + void *optional_app_key /* Opaque key passed to a callback */ +); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ +asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ + +/* + * Invoke the callback with a complete error message. + */ +#define ASN__CTFAIL if(ctfailcb) ctfailcb + +#ifdef __cplusplus +} +#endif + +#endif /* ASN1_CONSTRAINTS_VALIDATOR_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/der_encoder.h new file mode 100644 index 000000000..e93944edc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/der_encoder.h @@ -0,0 +1,68 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _DER_ENCODER_H_ +#define _DER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The DER encoder of any type. May be invoked by the application. + * Produces DER- and BER-compliant encoding. (DER is a subset of BER). + * + * NOTE: Use the ber_decode() function (ber_decoder.h) to decode data + * produced by der_encode(). + */ +asn_enc_rval_t der_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of der_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t der_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic DER encoder. + */ +typedef asn_enc_rval_t(der_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + ber_tlv_tag_t tag, asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t der_write_tags(const struct asn_TYPE_descriptor_s *type_descriptor, + size_t struct_length, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {0,!0}: prim, constructed */ + ber_tlv_tag_t tag, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h new file mode 100644 index 000000000..40992e948 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_DECODER_H +#define OER_DECODER_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type. + * This function may be invoked directly by the application. + * Parses CANONICAL-OER and BASIC-OER. + */ +asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ + ); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(oer_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + void **struct_ptr, + const void *buf_ptr, + size_t size); + +/* + * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null. + * RETURN VALUES: + * -1: Fatal error deciphering length. + * 0: More data expected than bufptr contains. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_skip(const void *bufptr, size_t size); + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + void **struct_ptr, const void *bufptr, size_t size); + +/* + * Length-prefixed buffer decoding for primitive types. + */ +oer_type_decoder_f oer_decode_primitive; + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_DECODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h new file mode 100644 index 000000000..6a7b68125 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_ENCODER_H +#define OER_ENCODER_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type. + * This function may be invoked directly by the application. + * Produces CANONICAL-OER output compatible with CANONICAL-OER + * and BASIC-OER decoders. + */ +asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of oer_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t oer_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic OER encoder. + */ +typedef asn_enc_rval_t(oer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * Write out the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * -1: Fatal error encoding the type. + * >0: Number of bytes serialized. + */ +ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + + +/* + * Length-prefixed buffer encoding for primitive types. + */ +oer_type_encoder_f oer_encode_primitive; + +#ifdef __cplusplus +} +#endif + +#endif /* OER_ENCODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h new file mode 100644 index 000000000..dbc9b5fcf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_SUPPORT_H +#define OER_SUPPORT_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed OER constraints. + */ +typedef struct asn_oer_constraint_number_s { + unsigned width; /* ±8,4,2,1 fixed bytes */ + unsigned positive; /* 1 for unsigned number, 0 for signed */ +} asn_oer_constraint_number_t; +typedef struct asn_oer_constraints_s { + asn_oer_constraint_number_t value; + ssize_t size; /* -1 (no constraint) or >= 0 */ +} asn_oer_constraints_t; + + +/* + * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r); + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key); + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_SUPPORT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_decoder.h new file mode 100644 index 000000000..3cc0c6bf7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_decoder.h @@ -0,0 +1,30 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_DECODER_H_ +#define _PER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Type of the type-specific PER decoder function. + */ +typedef asn_dec_rval_t(per_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, void **struct_ptr, + asn_per_data_t *per_data); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_encoder.h new file mode 100644 index 000000000..8bb077170 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_encoder.h @@ -0,0 +1,38 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_ENCODER_H_ +#define _PER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Type of the generic PER encoder function. + */ +typedef asn_enc_rval_t(per_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +int ignore_output(const void *data, size_t size, void *app_key); + +typedef struct enc_dyn_arg { + void *buffer; + size_t length; + size_t allocated; +} enc_dyn_arg; +int encode_dyn_cb(const void *buffer, size_t size, void *key); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_opentype.h new file mode 100644 index 000000000..fc3785566 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_opentype.h @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_OPENTYPE_H_ +#define _PER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_sot_suck( + const asn_codec_ctx_t *, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_support.h new file mode 100644 index 000000000..b3056a21a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/per_support.h @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_SUPPORT_H_ +#define _PER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed PER constraints. + */ +typedef struct asn_per_constraint_s { + enum asn_per_constraint_flags { + APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ + APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ + APC_CONSTRAINED = 0x2, /* Fully constrained */ + APC_EXTENSIBLE = 0x4 /* May have extension */ + } flags; + int range_bits; /* Full number of bits in the range */ + int effective_bits; /* Effective bits */ + intmax_t lower_bound; /* "lb" value */ + intmax_t upper_bound; /* "ub" value */ +} asn_per_constraint_t; +typedef struct asn_per_constraints_s { + asn_per_constraint_t value; + asn_per_constraint_t size; + int (*value2code)(unsigned int value); + int (*code2value)(unsigned int code); +} asn_per_constraints_t; + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_data_s asn_per_data_t; +#define per_get_few_bits(data, bits) asn_get_few_bits(data, bits) +#define per_get_undo(data, bits) asn_get_undo(data, bits) +#define per_get_many_bits(data, dst, align, bits) \ + asn_get_many_bits(data, dst, align, bits) + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_outp_s asn_per_outp_t; +#define per_put_few_bits(out, bits, obits) asn_put_few_bits(out, bits, obits) +#define per_put_many_bits(out, src, nbits) asn_put_many_bits(out, src, nbits) +#define per_put_aligned_flush(out) asn_put_aligned_flush(out) + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_decoder.h new file mode 100644 index 000000000..ded851565 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_decoder.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_DECODER_H_ +#define _UPER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER decoder of a "complete encoding" as per X.691 (08/2015) #11.1. + * On success, this call always returns (.consumed >= 1), as per #11.1.3. + */ +asn_dec_rval_t uper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t uper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of the input data buffer, in bytes */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_encoder.h new file mode 100644 index 000000000..8f73980c3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_encoder.h @@ -0,0 +1,62 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_ENCODER_H_ +#define _UPER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t uper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of uper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t uper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +/* + * A variant of uper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of uper_encode() and uper_encode_to_buffer(). + */ +ssize_t uper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void **buffer_r /* Buffer allocated and returned */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_opentype.h new file mode 100644 index 000000000..3a248225f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_opentype.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_OPENTYPE_H_ +#define _UPER_OPENTYPE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +int uper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, + asn_per_data_t *pd); + +/* + * X.691 (2015/08), #11.2 + * Returns -1 if error is encountered. 0 if all OK. + */ +int uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_support.h new file mode 100644 index 000000000..6c9d4ea74 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/uper_support.h @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UPER_SUPPORT_H_ +#define _UPER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Get the length "n" from the Unaligned PER stream. + */ +ssize_t uper_get_length(asn_per_data_t *pd, int effective_bound_bits, + size_t lower_bound, int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t uper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t uper_get_nsnnwn(asn_per_data_t *pd); + +/* X.691-2008/11, #11.5.6 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *v, int nbits); + +/* + * Rebase the given value as an offset into the range specified by the + * lower bound (lb) and upper bound (ub). + * RETURN VALUES: + * -1: Conversion failed due to range problems. + * 0: Conversion was successful. + */ +int per_long_range_rebase(long, intmax_t lb, intmax_t ub, unsigned long *output); +int per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output); +/* The inverse operation: restores the value by the offset and its bounds. */ +int per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp); +int per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp); + +/* X.691-2008/11, #11.5 */ +int uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, int nbits); + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "whole_length" to the Unaligned PER stream. + * If (opt_need_eom) is given, it will be set to 1 if final 0-length is needed. + * In that case, invoke uper_put_length(po, 0, 0) after encoding the last block. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length, + int *opt_need_eom); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int uper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int uper_put_nsnnwn(asn_per_outp_t *po, int n); + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_decoder.h new file mode 100644 index 000000000..b951c41d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_decoder.h @@ -0,0 +1,106 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_DECODER_H_ +#define _XER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The XER decoder of any ASN.1 type. May be invoked by the application. + * Decodes CANONICAL-XER and BASIC-XER. + */ +asn_dec_rval_t xer_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Type of the type-specific XER decoder function. + */ +typedef asn_dec_rval_t(xer_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const char *opt_mname, /* Member name */ + const void *buf_ptr, size_t size); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Generalized function for decoding the primitive values. + * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 + * and others. This function should not be used by applications, as its API + * is subject to changes. + */ +asn_dec_rval_t xer_decode_general( + const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, /* Treated as opaque pointer */ + const char *xml_tag, /* Expected XML tag name */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_key, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_key, const void *chunk_buf, + size_t chunk_size, int have_more)); + + +/* + * Fetch the next XER (XML) token from the stream. + * The function returns the number of bytes occupied by the chunk type, + * returned in the _ch_type. The _ch_type is only set (and valid) when + * the return value is >= 0. + */ + typedef enum pxer_chunk_type { + PXER_WMORE, /* Chunk type is not clear, more data expected. */ + PXER_TAG, /* Complete XER tag */ + PXER_TEXT, /* Plain text between XER tags */ + PXER_COMMENT /* A comment, may be part of */ + } pxer_chunk_type_e; +ssize_t xer_next_token(int *stateContext, + const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); + +/* + * This function checks the buffer against the tag name is expected to occur. + */ + typedef enum xer_check_tag { + XCT_BROKEN = 0, /* The tag is broken */ + XCT_OPENING = 1, /* This is the tag */ + XCT_CLOSING = 2, /* This is the tag */ + XCT_BOTH = 3, /* This is the tag */ + XCT__UNK__MASK = 4, /* Mask of everything unexpected */ + XCT_UNKNOWN_OP = 5, /* Unexpected tag */ + XCT_UNKNOWN_CL = 6, /* Unexpected tag */ + XCT_UNKNOWN_BO = 7 /* Unexpected tag */ + } xer_check_tag_e; +xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, + const char *need_tag); + +/* + * Get the number of bytes consisting entirely of XER whitespace characters. + * RETURN VALUES: + * >=0: Number of whitespace characters in the string. + */ +size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); + +/* + * Skip the series of anticipated extensions. + */ +int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_encoder.h new file mode 100644 index 000000000..6cfc505fa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_encoder.h @@ -0,0 +1,83 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_ENCODER_H_ +#define _XER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ +enum xer_encoder_flags_e { + /* Mode of encoding */ + XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ + XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ +}; + +/* + * The XER encoder of any type. May be invoked by the application. + * Produces CANONICAL-XER and BASIC-XER depending on the (xer_flags). + */ +asn_enc_rval_t xer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* + * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) + * output into the chosen file pointer. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem printing the structure. + * WARNING: No sensible errno value is returned. + */ +int xer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, + const void *struct_ptr); + +/* + * A helper function that uses XER encoding/decoding to verify that: + * - Both structures encode into the same BASIC XER. + * - Both resulting XER byte streams can be decoded back. + * - Both decoded structures encode into the same BASIC XER (round-trip). + * All of this verifies equivalence between structures and a round-trip. + * ARGUMENTS: + * (opt_debug_stream) - If specified, prints ongoing details. + */ +enum xer_equivalence_e { + XEQ_SUCCESS, /* The only completely positive return value */ + XEQ_FAILURE, /* General failure */ + XEQ_ENCODE1_FAILED, /* First structure XER encoding failed */ + XEQ_ENCODE2_FAILED, /* Second structure XER encoding failed */ + XEQ_DIFFERENT, /* Structures encoded into different XER */ + XEQ_DECODE_FAILED, /* Decode of the XER data failed */ + XEQ_ROUND_TRIP_FAILED /* Bad round-trip */ +}; +enum xer_equivalence_e xer_equivalent( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, + const void *struct2, FILE *opt_debug_stream); + +/* + * Type of the generic XER encoder. + */ +typedef asn_enc_rval_t(xer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int ilevel, /* Level of indentation */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_support.h new file mode 100644 index 000000000..2c3f369b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/xer_support.h @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_SUPPORT_H_ +#define _XER_SUPPORT_H_ + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Types of data transferred to the application. + */ +typedef enum { + PXML_TEXT, /* Plain text between XML tags. */ + PXML_TAG, /* A tag, starting with '<'. */ + PXML_COMMENT, /* An XML comment, including "". */ + /* + * The following chunk types are reported if the chunk + * terminates the specified XML element. + */ + PXML_TAG_END, /* Tag ended */ + PXML_COMMENT_END /* Comment ended */ +} pxml_chunk_type_e; + +/* + * Callback function that is called by the parser when parsed data is + * available. The _opaque is the pointer to a field containing opaque user + * data specified in pxml_create() call. The chunk type is _type and the text + * data is the piece of buffer identified by _bufid (as supplied to + * pxml_feed() call) starting at offset _offset and of _size bytes size. + * The chunk is NOT '\0'-terminated. + */ +typedef int (pxml_callback_f)(pxml_chunk_type_e _type, + const void *_chunk_data, size_t _chunk_size, void *_key); + +/* + * Parse the given buffer as it were a chunk of XML data. + * Invoke the specified callback each time the meaningful data is found. + * This function returns number of bytes consumed from the buffer. + * It will always be lesser than or equal to the specified _size. + * The next invocation of this function must account the difference. + */ +ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, + pxml_callback_f *cb, void *_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/src/r2020/ANY.c b/src/tmx/Asn_J2735/src/r2020/ANY.c new file mode 100644 index 000000000..bf988dbda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ANY.c @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs = { + sizeof(ANY_t), + offsetof(ANY_t, _asn_ctx), + ASN_OSUBV_ANY +}; +asn_TYPE_operation_t asn_OP_ANY = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + ANY_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + ANY_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, + 0, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + ANY_decode_uper, + ANY_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + ANY_decode_aper, + ANY_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + 0, /* Random fill is not defined for ANY type */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ANY = { + "ANY", + "ANY", + &asn_OP_ANY, + 0, 0, 0, 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, /* No constraints */ + 0, 0, /* No members */ + &asn_SPC_ANY_specs, +}; diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_aper.c b/src/tmx/Asn_J2735/src/r2020/ANY_aper.c new file mode 100644 index 000000000..91d727769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ANY_aper.c @@ -0,0 +1,190 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +int +ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + uint8_t *buffer = NULL; + ssize_t erval; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + erval = aper_encode_to_new_buffer(td, td->encoding_constraints.per_constraints, sptr, (void**)&buffer); + + if(erval == -1) { + if(buffer) FREEMEM(buffer); + return -1; + } + assert((size_t)erval > 0); + + if(st->buf) FREEMEM(st->buf); + st->buf = buffer; + st->size = erval; + + return 0; +} + +ANY_t * +ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType_aper(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +int +ANY_to_type_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = aper_decode(0, td, (void **)&newst, st->buf, st->size, 0, 0); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} + +asn_dec_rval_t +ANY_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("APER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = aper_get_length(pd, -1, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = aper_put_length(po, -1, -1, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && aper_put_length(po, -1, -1, 0, NULL)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_ber.c b/src/tmx/Asn_J2735/src/r2020/ANY_ber.c new file mode 100644 index 000000000..2ebe45bd7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ANY_ber.c @@ -0,0 +1,116 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +struct _callback_arg { + uint8_t *buffer; + size_t offset; + size_t size; +}; + +static int ANY__consume_bytes(const void *buffer, size_t size, void *key) { + struct _callback_arg *arg = (struct _callback_arg *)key; + + if((arg->offset + size) >= arg->size) { + size_t nsize = (arg->size ? arg->size << 2 : 16) + size; + void *p = REALLOC(arg->buffer, nsize); + if(!p) return -1; + arg->buffer = (uint8_t *)p; + arg->size = nsize; + } + + memcpy(arg->buffer + arg->offset, buffer, size); + arg->offset += size; + assert(arg->offset < arg->size); + + return 0; +} + +int +ANY_fromType(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + struct _callback_arg arg; + asn_enc_rval_t erval = {0,0,0}; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + arg.offset = arg.size = 0; + arg.buffer = 0; + + erval = der_encode(td, sptr, ANY__consume_bytes, &arg); + if(erval.encoded == -1) { + if(arg.buffer) FREEMEM(arg.buffer); + return -1; + } + assert((size_t)erval.encoded == arg.offset); + + if(st->buf) FREEMEM(st->buf); + st->buf = arg.buffer; + st->size = arg.offset; + + return 0; +} + +ANY_t * +ANY_new_fromType(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +int +ANY_to_type(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = ber_decode(0, td, (void **)&newst, st->buf, st->size); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_uper.c b/src/tmx/Asn_J2735/src/r2020/ANY_uper.c new file mode 100644 index 000000000..65f1519bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ANY_uper.c @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +asn_dec_rval_t +ANY_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("UPER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_xer.c b/src/tmx/Asn_J2735/src/r2020/ANY_xer.c new file mode 100644 index 000000000..112c21328 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ANY_xer.c @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +ANY_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + if(flags & XER_F_CANONICAL) { + /* + * Canonical XER-encoding of ANY type is not supported. + */ + ASN__ENCODE_FAILED; + } + + /* Dump as binary */ + return OCTET_STRING_encode_xer(td, sptr, ilevel, flags, cb, app_key); +} diff --git a/src/tmx/Asn_J2735/src/r2020/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/r2020/AccelSteerYawRateConfidence.c new file mode 100644 index 000000000..e5238e05b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AccelSteerYawRateConfidence.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AccelSteerYawRateConfidence.h" + +asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yawRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "acceleration" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringWheelAngle" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { + sizeof(struct AccelSteerYawRateConfidence), + offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), + asn_MAP_AccelSteerYawRateConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { + "AccelSteerYawRateConfidence", + "AccelSteerYawRateConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AccelSteerYawRateConfidence_tags_1, + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AccelSteerYawRateConfidence_1, + 3, /* Elements count */ + &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Acceleration.c b/src/tmx/Asn_J2735/src/r2020/Acceleration.c new file mode 100644 index 000000000..2e44a0d84 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Acceleration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Acceleration.h" + +int +Acceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2000L && value <= 2001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Acceleration_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2000..2001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Acceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Acceleration = { + "Acceleration", + "Acceleration", + &asn_OP_NativeInteger, + asn_DEF_Acceleration_tags_1, + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + asn_DEF_Acceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Acceleration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Acceleration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Acceleration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/r2020/AccelerationConfidence.c new file mode 100644 index 000000000..53d77775f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AccelerationConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AccelerationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "accl-100-00" }, + { 2, 11, "accl-010-00" }, + { 3, 11, "accl-005-00" }, + { 4, 11, "accl-001-00" }, + { 5, 11, "accl-000-10" }, + { 6, 11, "accl-000-05" }, + { 7, 11, "accl-000-01" } +}; +static const unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { + 7, /* accl-000-01(7) */ + 6, /* accl-000-05(6) */ + 5, /* accl-000-10(5) */ + 4, /* accl-001-00(4) */ + 3, /* accl-005-00(3) */ + 2, /* accl-010-00(2) */ + 1, /* accl-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { + asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { + "AccelerationConfidence", + "AccelerationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AccelerationConfidence_tags_1, + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AccelerationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AccelerationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/r2020/AccelerationSet4Way.c new file mode 100644 index 000000000..64f2c42fe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AccelerationSet4Way.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AccelerationSet4Way.h" + +asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, Long), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, vert), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAcceleration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vert" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, yaw), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yaw" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelerationSet4Way_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vert */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* yaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1 = { + sizeof(struct AccelerationSet4Way), + offsetof(struct AccelerationSet4Way, _asn_ctx), + asn_MAP_AccelerationSet4Way_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { + "AccelerationSet4Way", + "AccelerationSet4Way", + &asn_OP_SEQUENCE, + asn_DEF_AccelerationSet4Way_tags_1, + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AccelerationSet4Way_1, + 4, /* Elements count */ + &asn_SPC_AccelerationSet4Way_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c new file mode 100644 index 000000000..45140a7e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AddGrpB_Angle.h" + +int +AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 239L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..239) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Angle_tags_1, + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_Angle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c new file mode 100644 index 000000000..341e756be --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AddGrpB_Elevation.h" + +int +AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Elevation_tags_1, + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_Elevation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c new file mode 100644 index 000000000..200e3f61d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AddGrpB_MsgCount.h" + +int +AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_MsgCount_tags_1, + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AddGrpB_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AddGrpB_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AddGrpB_MsgCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c new file mode 100644 index 000000000..a2e484d51 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c @@ -0,0 +1,228 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AddGrpB_TimeMark.h" + +static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Year, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Month, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Day, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, summerTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SummerTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "summerTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, holiday), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Holiday, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "holiday" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DayOfWeek, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dayofWeek" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, hour), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Hour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, minute), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Minute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, second), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Second, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, tenthSecond), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TenthSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "tenthSecond" + }, +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AddGrpB_TimeMark_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_AddGrpB_TimeMark_specs_1 = { + sizeof(struct AddGrpB_TimeMark), + offsetof(struct AddGrpB_TimeMark, _asn_ctx), + asn_MAP_AddGrpB_TimeMark_tag2el_1, + 10, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_SEQUENCE, + asn_DEF_AddGrpB_TimeMark_tags_1, + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AddGrpB_TimeMark_1, + 10, /* Elements count */ + &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeed.c new file mode 100644 index 000000000..2a5a3b008 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeed.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AdvisorySpeed.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_AdvisorySpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct AdvisorySpeed__regional), + offsetof(struct AdvisorySpeed__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedAdvice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance" + }, + { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "class" + }, + { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { + sizeof(struct AdvisorySpeed), + offsetof(struct AdvisorySpeed, _asn_ctx), + asn_MAP_AdvisorySpeed_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { + "AdvisorySpeed", + "AdvisorySpeed", + &asn_OP_SEQUENCE, + asn_DEF_AdvisorySpeed_tags_1, + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AdvisorySpeed_1, + 6, /* Elements count */ + &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedList.c new file mode 100644 index 000000000..cf6938c2e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AdvisorySpeedList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AdvisorySpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { + sizeof(struct AdvisorySpeedList), + offsetof(struct AdvisorySpeedList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { + "AdvisorySpeedList", + "AdvisorySpeedList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AdvisorySpeedList_tags_1, + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AdvisorySpeedList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AdvisorySpeedList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_AdvisorySpeedList_1, + 1, /* Single element */ + &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedType.c new file mode 100644 index 000000000..ed317e326 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AdvisorySpeedType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AdvisorySpeedType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "greenwave" }, + { 2, 8, "ecoDrive" }, + { 3, 7, "transit" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { + 2, /* ecoDrive(2) */ + 1, /* greenwave(1) */ + 0, /* none(0) */ + 3 /* transit(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { + asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { + "AdvisorySpeedType", + "AdvisorySpeedType", + &asn_OP_NativeEnumerated, + asn_DEF_AdvisorySpeedType_tags_1, + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AdvisorySpeedType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AdvisorySpeedType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/r2020/AllowedManeuvers.c new file mode 100644 index 000000000..b15b9e299 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AllowedManeuvers.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AllowedManeuvers.h" + +int +AllowedManeuvers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 12UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { 0, 0 }, + 12 /* (SIZE(12..12)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { + "AllowedManeuvers", + "AllowedManeuvers", + &asn_OP_BIT_STRING, + asn_DEF_AllowedManeuvers_tags_1, + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AllowedManeuvers_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AllowedManeuvers_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AllowedManeuvers_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Altitude.c b/src/tmx/Asn_J2735/src/r2020/Altitude.c new file mode 100644 index 000000000..ef52b6517 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Altitude.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Altitude.h" + +asn_TYPE_member_t asn_MBR_Altitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeValue, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { + sizeof(struct Altitude), + offsetof(struct Altitude, _asn_ctx), + asn_MAP_Altitude_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Altitude = { + "Altitude", + "Altitude", + &asn_OP_SEQUENCE, + asn_DEF_Altitude_tags_1, + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + asn_DEF_Altitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Altitude_1, + 2, /* Elements count */ + &asn_SPC_Altitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/r2020/AltitudeConfidence.c new file mode 100644 index 000000000..42ba146bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AltitudeConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AltitudeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { + { 0, 10, "alt-000-01" }, + { 1, 10, "alt-000-02" }, + { 2, 10, "alt-000-05" }, + { 3, 10, "alt-000-10" }, + { 4, 10, "alt-000-20" }, + { 5, 10, "alt-000-50" }, + { 6, 10, "alt-001-00" }, + { 7, 10, "alt-002-00" }, + { 8, 10, "alt-005-00" }, + { 9, 10, "alt-010-00" }, + { 10, 10, "alt-020-00" }, + { 11, 10, "alt-050-00" }, + { 12, 10, "alt-100-00" }, + { 13, 10, "alt-200-00" }, + { 14, 10, "outOfRange" }, + { 15, 11, "unavailable" } +}; +static const unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { + 0, /* alt-000-01(0) */ + 1, /* alt-000-02(1) */ + 2, /* alt-000-05(2) */ + 3, /* alt-000-10(3) */ + 4, /* alt-000-20(4) */ + 5, /* alt-000-50(5) */ + 6, /* alt-001-00(6) */ + 7, /* alt-002-00(7) */ + 8, /* alt-005-00(8) */ + 9, /* alt-010-00(9) */ + 10, /* alt-020-00(10) */ + 11, /* alt-050-00(11) */ + 12, /* alt-100-00(12) */ + 13, /* alt-200-00(13) */ + 14, /* outOfRange(14) */ + 15 /* unavailable(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { + asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { + "AltitudeConfidence", + "AltitudeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AltitudeConfidence_tags_1, + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AltitudeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AltitudeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AltitudeValue.c b/src/tmx/Asn_J2735/src/r2020/AltitudeValue.c new file mode 100644 index 000000000..61bb257e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AltitudeValue.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AltitudeValue.h" + +int +AltitudeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -100000L && value <= 800001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-100000..800001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { + "AltitudeValue", + "AltitudeValue", + &asn_OP_NativeInteger, + asn_DEF_AltitudeValue_tags_1, + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + asn_DEF_AltitudeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AltitudeValue_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AltitudeValue_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AltitudeValue_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/r2020/AmbientAirPressure.c new file mode 100644 index 000000000..c503ea31d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AmbientAirPressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AmbientAirPressure.h" + +int +AmbientAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { + "AmbientAirPressure", + "AmbientAirPressure", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirPressure_tags_1, + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AmbientAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AmbientAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AmbientAirPressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/r2020/AmbientAirTemperature.c new file mode 100644 index 000000000..c86529dc6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AmbientAirTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AmbientAirTemperature.h" + +int +AmbientAirTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { + "AmbientAirTemperature", + "AmbientAirTemperature", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirTemperature_tags_1, + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AmbientAirTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AmbientAirTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AmbientAirTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AngularVelocity.c b/src/tmx/Asn_J2735/src/r2020/AngularVelocity.c new file mode 100644 index 000000000..eedd75054 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AngularVelocity.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AngularVelocity.h" + +asn_TYPE_member_t asn_MBR_AngularVelocity_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, pitchRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, rollRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollRate" + }, +}; +static const ber_tlv_tag_t asn_DEF_AngularVelocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AngularVelocity_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRate */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1 = { + sizeof(struct AngularVelocity), + offsetof(struct AngularVelocity, _asn_ctx), + asn_MAP_AngularVelocity_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AngularVelocity = { + "AngularVelocity", + "AngularVelocity", + &asn_OP_SEQUENCE, + asn_DEF_AngularVelocity_tags_1, + sizeof(asn_DEF_AngularVelocity_tags_1) + /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ + asn_DEF_AngularVelocity_tags_1, /* Same as above */ + sizeof(asn_DEF_AngularVelocity_tags_1) + /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AngularVelocity_1, + 2, /* Elements count */ + &asn_SPC_AngularVelocity_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AngularVelocityConfidence.c b/src/tmx/Asn_J2735/src/r2020/AngularVelocityConfidence.c new file mode 100644 index 000000000..8ff44510f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AngularVelocityConfidence.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AngularVelocityConfidence.h" + +asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[] = { + { ATF_POINTER, 2, offsetof(struct AngularVelocityConfidence, pitchRateConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchRateConfidence" + }, + { ATF_POINTER, 1, offsetof(struct AngularVelocityConfidence, rollRateConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollRateConfidence" + }, +}; +static const int asn_MAP_AngularVelocityConfidence_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_AngularVelocityConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AngularVelocityConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRateConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRateConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1 = { + sizeof(struct AngularVelocityConfidence), + offsetof(struct AngularVelocityConfidence, _asn_ctx), + asn_MAP_AngularVelocityConfidence_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_AngularVelocityConfidence_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence = { + "AngularVelocityConfidence", + "AngularVelocityConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AngularVelocityConfidence_tags_1, + sizeof(asn_DEF_AngularVelocityConfidence_tags_1) + /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ + asn_DEF_AngularVelocityConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AngularVelocityConfidence_tags_1) + /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AngularVelocityConfidence_1, + 2, /* Elements count */ + &asn_SPC_AngularVelocityConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/r2020/AnimalPropelledType.c new file mode 100644 index 000000000..4e2ed5dec --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AnimalPropelledType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AnimalPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 13, "animalMounted" }, + { 3, 19, "animalDrawnCarriage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { + 3, /* animalDrawnCarriage(3) */ + 2, /* animalMounted(2) */ + 1, /* otherTypes(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { + asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { + "AnimalPropelledType", + "AnimalPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalPropelledType_tags_1, + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AnimalPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AnimalPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AnimalType.c b/src/tmx/Asn_J2735/src/r2020/AnimalType.c new file mode 100644 index 000000000..a17783cca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AnimalType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AnimalType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AnimalType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AnimalType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "serviceUse" }, + { 2, 3, "pet" }, + { 3, 4, "farm" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { + 3, /* farm(3) */ + 2, /* pet(2) */ + 1, /* serviceUse(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { + asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalType = { + "AnimalType", + "AnimalType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalType_tags_1, + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + asn_DEF_AnimalType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AnimalType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AnimalType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/r2020/AntennaOffsetSet.c new file mode 100644 index 000000000..9ccba3a13 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AntennaOffsetSet.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AntennaOffsetSet.h" + +asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetY" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "antOffsetZ" + }, +}; +static const ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AntennaOffsetSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* antOffsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* antOffsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* antOffsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1 = { + sizeof(struct AntennaOffsetSet), + offsetof(struct AntennaOffsetSet, _asn_ctx), + asn_MAP_AntennaOffsetSet_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { + "AntennaOffsetSet", + "AntennaOffsetSet", + &asn_OP_SEQUENCE, + asn_DEF_AntennaOffsetSet_tags_1, + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AntennaOffsetSet_1, + 3, /* Elements count */ + &asn_SPC_AntennaOffsetSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/r2020/AntiLockBrakeStatus.c new file mode 100644 index 000000000..976587ba3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AntiLockBrakeStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AntiLockBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { + asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { + "AntiLockBrakeStatus", + "AntiLockBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AntiLockBrakeStatus_tags_1, + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AntiLockBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AntiLockBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ApproachID.c b/src/tmx/Asn_J2735/src/r2020/ApproachID.c new file mode 100644 index 000000000..94ca08c31 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ApproachID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ApproachID.h" + +int +ApproachID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ApproachID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ApproachID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ApproachID = { + "ApproachID", + "ApproachID", + &asn_OP_NativeInteger, + asn_DEF_ApproachID_tags_1, + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + asn_DEF_ApproachID_tags_1, /* Same as above */ + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ApproachID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ApproachID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ApproachID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ApproachOrLane.c b/src/tmx/Asn_J2735/src/r2020/ApproachOrLane.c new file mode 100644 index 000000000..29f0d7302 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ApproachOrLane.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ApproachOrLane.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ApproachOrLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ApproachOrLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lane */ +}; +asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1 = { + sizeof(struct ApproachOrLane), + offsetof(struct ApproachOrLane, _asn_ctx), + offsetof(struct ApproachOrLane, present), + sizeof(((struct ApproachOrLane *)0)->present), + asn_MAP_ApproachOrLane_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_ApproachOrLane = { + "ApproachOrLane", + "ApproachOrLane", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ApproachOrLane_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ApproachOrLane_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_ApproachOrLane_1, + 2, /* Elements count */ + &asn_SPC_ApproachOrLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Attachment.c b/src/tmx/Asn_J2735/src/r2020/Attachment.c new file mode 100644 index 000000000..5b5a92c8f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Attachment.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Attachment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Attachment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Attachment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "stroller" }, + { 2, 14, "bicycleTrailer" }, + { 3, 4, "cart" }, + { 4, 10, "wheelchair" }, + { 5, 26, "otherWalkAssistAttachments" }, + { 6, 3, "pet" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Attachment_enum2value_1[] = { + 2, /* bicycleTrailer(2) */ + 3, /* cart(3) */ + 5, /* otherWalkAssistAttachments(5) */ + 6, /* pet(6) */ + 1, /* stroller(1) */ + 0, /* unavailable(0) */ + 4 /* wheelchair(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { + asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Attachment = { + "Attachment", + "Attachment", + &asn_OP_NativeEnumerated, + asn_DEF_Attachment_tags_1, + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + asn_DEF_Attachment_tags_1, /* Same as above */ + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Attachment_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Attachment_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Attachment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AttachmentRadius.c b/src/tmx/Asn_J2735/src/r2020/AttachmentRadius.c new file mode 100644 index 000000000..4c38db7a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AttachmentRadius.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AttachmentRadius.h" + +int +AttachmentRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { + "AttachmentRadius", + "AttachmentRadius", + &asn_OP_NativeInteger, + asn_DEF_AttachmentRadius_tags_1, + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + asn_DEF_AttachmentRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AttachmentRadius_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AttachmentRadius_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AttachmentRadius_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Attitude.c b/src/tmx/Asn_J2735/src/r2020/Attitude.c new file mode 100644 index 000000000..4af80a825 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Attitude.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "Attitude.h" + +asn_TYPE_member_t asn_MBR_Attitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Attitude, pitch), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitch" + }, + { ATF_NOFLAGS, 0, offsetof(struct Attitude, roll), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roll" + }, + { ATF_NOFLAGS, 0, offsetof(struct Attitude, yaw), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yaw" + }, +}; +static const ber_tlv_tag_t asn_DEF_Attitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Attitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitch */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* roll */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1 = { + sizeof(struct Attitude), + offsetof(struct Attitude, _asn_ctx), + asn_MAP_Attitude_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Attitude = { + "Attitude", + "Attitude", + &asn_OP_SEQUENCE, + asn_DEF_Attitude_tags_1, + sizeof(asn_DEF_Attitude_tags_1) + /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ + asn_DEF_Attitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Attitude_tags_1) + /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Attitude_1, + 3, /* Elements count */ + &asn_SPC_Attitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AttitudeConfidence.c b/src/tmx/Asn_J2735/src/r2020/AttitudeConfidence.c new file mode 100644 index 000000000..f521222c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AttitudeConfidence.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AttitudeConfidence.h" + +asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, pitchConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, rollConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, yawConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yawConfidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_AttitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AttitudeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rollConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yawConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1 = { + sizeof(struct AttitudeConfidence), + offsetof(struct AttitudeConfidence, _asn_ctx), + asn_MAP_AttitudeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence = { + "AttitudeConfidence", + "AttitudeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AttitudeConfidence_tags_1, + sizeof(asn_DEF_AttitudeConfidence_tags_1) + /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AttitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AttitudeConfidence_tags_1) + /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AttitudeConfidence_1, + 3, /* Elements count */ + &asn_SPC_AttitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/r2020/AuxiliaryBrakeStatus.c new file mode 100644 index 000000000..8e504397b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AuxiliaryBrakeStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AuxiliaryBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { + asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { + "AuxiliaryBrakeStatus", + "AuxiliaryBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AuxiliaryBrakeStatus_tags_1, + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AuxiliaryBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AuxiliaryBrakeStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AxleLocation.c b/src/tmx/Asn_J2735/src/r2020/AxleLocation.c new file mode 100644 index 000000000..6efdbb189 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AxleLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AxleLocation.h" + +int +AxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleLocation = { + "AxleLocation", + "AxleLocation", + &asn_OP_NativeInteger, + asn_DEF_AxleLocation_tags_1, + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + asn_DEF_AxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AxleLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AxleWeight.c b/src/tmx/Asn_J2735/src/r2020/AxleWeight.c new file mode 100644 index 000000000..307ee89e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AxleWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AxleWeight.h" + +int +AxleWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeight = { + "AxleWeight", + "AxleWeight", + &asn_OP_NativeInteger, + asn_DEF_AxleWeight_tags_1, + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + asn_DEF_AxleWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + AxleWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AxleWeightList.c b/src/tmx/Asn_J2735/src/r2020/AxleWeightList.c new file mode 100644 index 000000000..ed769ee4d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AxleWeightList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AxleWeightList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_AxleWeightList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AxleWeightSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AxleWeightList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1 = { + sizeof(struct AxleWeightList), + offsetof(struct AxleWeightList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightList = { + "AxleWeightList", + "AxleWeightList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AxleWeightList_tags_1, + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightList_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_AxleWeightList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_AxleWeightList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_AxleWeightList_1, + 1, /* Single element */ + &asn_SPC_AxleWeightList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AxleWeightSet.c b/src/tmx/Asn_J2735/src/r2020/AxleWeightSet.c new file mode 100644 index 000000000..1e846d665 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AxleWeightSet.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "AxleWeightSet.h" + +asn_TYPE_member_t asn_MBR_AxleWeightSet_1[] = { + { ATF_POINTER, 2, offsetof(struct AxleWeightSet, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 1, offsetof(struct AxleWeightSet, weight), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weight" + }, +}; +static const int asn_MAP_AxleWeightSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_AxleWeightSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AxleWeightSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1 = { + sizeof(struct AxleWeightSet), + offsetof(struct AxleWeightSet, _asn_ctx), + asn_MAP_AxleWeightSet_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_AxleWeightSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightSet = { + "AxleWeightSet", + "AxleWeightSet", + &asn_OP_SEQUENCE, + asn_DEF_AxleWeightSet_tags_1, + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_AxleWeightSet_1, + 2, /* Elements count */ + &asn_SPC_AxleWeightSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING.c new file mode 100644 index 000000000..b5ba94017 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING.c @@ -0,0 +1,213 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BIT STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs = { + sizeof(BIT_STRING_t), + offsetof(BIT_STRING_t, _asn_ctx), + ASN_OSUBV_BIT +}; +asn_TYPE_operation_t asn_OP_BIT_STRING = { + OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + BIT_STRING_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + BIT_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_binary, + BIT_STRING_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + BIT_STRING_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + BIT_STRING_decode_oer, + BIT_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + BIT_STRING_decode_uper, /* Unaligned PER decoder */ + BIT_STRING_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + BIT_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { + "BIT STRING", + "BIT_STRING", + &asn_OP_BIT_STRING, + asn_DEF_BIT_STRING_tags, + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + asn_DEF_BIT_STRING_tags, /* Same as above */ + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BIT_STRING_constraint + }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs +}; + +/* + * BIT STRING generic constraint. + */ +int +BIT_STRING_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + + if(st && st->buf) { + if((st->size == 0 && st->bits_unused) + || st->bits_unused < 0 || st->bits_unused > 7) { + ASN__CTFAIL(app_key, td, sptr, + "%s: invalid padding byte (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +/* + * Non-destructively remove the trailing 0-bits from the given bit string. + */ +const BIT_STRING_t * +BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp) { + const uint8_t *b; + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + + if(st->size == 0) { + assert(st->bits_unused == 0); + return st; + } else { + for(b = &st->buf[st->size - 1]; b > st->buf && *b == 0; b--) { + ; + } + /* b points to the last byte which may contain data */ + if(*b) { + int unused = 7; + uint8_t v = *b; + v &= -(int8_t)v; + if(v & 0x0F) unused -= 4; + if(v & 0x33) unused -= 2; + if(v & 0x55) unused -= 1; + tmp->size = b-st->buf + 1; + tmp->bits_unused = unused; + } else { + tmp->size = b-st->buf; + tmp->bits_unused = 0; + } + + assert(b >= st->buf); + } + + unconst.c_buf = st->buf; + tmp->buf = unconst.nc_buf; + return tmp; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +BIT_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + /* + * Remove information about trailing bits, since + * X.680 (08/2015) #22.7 "ensure that different semantics are not" + * "associated with [values that differ only in] the trailing 0 bits." + */ + BIT_STRING_t compact_a, compact_b; + const BIT_STRING_t *a = BIT_STRING__compactify(aptr, &compact_a); + const BIT_STRING_t *b = BIT_STRING__compactify(bptr, &compact_b); + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + + (void)specs; + assert(specs && specs->subvariant == ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + /* Figure out how many unused bits */ + if(a->bits_unused > b->bits_unused) { + return -1; + } else if(a->bits_unused < b->bits_unused) { + return 1; + } else { + return 0; + } + } + } else { + return ret; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c new file mode 100644 index 000000000..95c955896 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c @@ -0,0 +1,168 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + (void)opt_codec_ctx; + + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = (ct_size + 7) >> 3; + st->bits_unused = (8 - (ct_size & 7)) & 7; + } else { + /* + * X.696 (08/2015) #13.3.1 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length < 1) { + ASN__DECODE_FAILED; + } else if(expected_length > size) { + ASN__DECODE_STARVED; + } + + st->bits_unused = ((const uint8_t *)ptr)[0]; + if(st->bits_unused & ~7) { + ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name); + ASN__DECODE_FAILED; + } + ptr = (const char *)ptr + 1; + size--; + expected_length--; + rval.consumed = len_len + 1; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + if(expected_length > 0) { + buf[expected_length - 1] &= (0xff << st->bits_unused); + } + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t erval = {0, 0, 0}; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + size_t trailing_zeros = 0; + int fix_last_byte = 0; + + if(!st) ASN__ENCODE_FAILED; + + if(st->bits_unused & ~7) { + ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range", + st->bits_unused); + ASN__ENCODE_FAILED; + } + if(st->bits_unused && !(st->size && st->buf)) { + ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name, + st->bits_unused); + ASN__ENCODE_FAILED; + } + + if(ct_size >= 0) { + size_t ct_bytes = (ct_size + 7) >> 3; + if(st->size > ct_bytes) { + ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "", + td->name, 8 * st->size - st->bits_unused, ct_size); + ASN__ENCODE_FAILED; + } + trailing_zeros = ct_bytes - st->size; /* Allow larger constraint */ + } else { + uint8_t ub = st->bits_unused & 7; + ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key); + if(len_len < 0) ASN__ENCODE_FAILED; + if(cb(&ub, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + erval.encoded += len_len + 1; + } + + if(st->bits_unused) { + if(st->buf[st->size - 1] & (0xff << st->bits_unused)) { + fix_last_byte = 1; + } + } + + if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + if(fix_last_byte) { + uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused); + if(cb(&b, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + erval.encoded += st->size; + + if(trailing_zeros) { + static uint8_t zeros[16]; + while(trailing_zeros > 0) { + int ret; + if(trailing_zeros < sizeof(zeros)) { + ret = cb(zeros, trailing_zeros, app_key); + erval.encoded += trailing_zeros; + } else { + ret = cb(zeros, sizeof(zeros), app_key); + erval.encoded += sizeof(zeros); + } + if(ret < 0) ASN__ENCODE_FAILED; + } + } + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c new file mode 100644 index 000000000..bab1ea522 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BIT STRING specific contents printer. + */ +int +BIT_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + char scratch[64]; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + uint8_t *buf; + uint8_t *end; + char *p = scratch; + + (void)td; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + ilevel++; + buf = st->buf; + end = buf + st->size; + + /* + * Hexadecimal dump. + */ + for(; buf < end; buf++) { + if((buf - st->buf) % 16 == 0 && (st->size > 16) + && buf != st->buf) { + _i_INDENT(1); + /* Dump the string */ + if(cb(scratch, p - scratch, app_key) < 0) return -1; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Eat the tailing space */ + + if((st->size > 16)) { + _i_INDENT(1); + } + + /* Dump the incomplete 16-bytes row */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + if(st->bits_unused) { + int ret = snprintf(scratch, sizeof(scratch), " (%d bit%s unused)", + st->bits_unused, st->bits_unused == 1 ? "" : "s"); + assert(ret > 0 && ret < (ssize_t)sizeof(scratch)); + if(ret > 0 && ret < (ssize_t)sizeof(scratch) + && cb(scratch, ret, app_key) < 0) + return -1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c new file mode 100644 index 000000000..a6e6a9544 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +BIT_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + static unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_bits, rnd_len; + BIT_STRING_t *st; + + if(max_length == 0) return result_skipped; + + switch(specs->subvariant) { + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + break; + default: + break; + } + + /* Figure out how far we should go */ + rnd_bits = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length < (size_t)pc->lower_bound) { + return result_skipped; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_bits = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_bits = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_bits from the table */ + if(rnd_bits < max_length) { + break; + } + /* Fall through */ + default: + rnd_bits = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_bits = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_bits = asn_random_between(0, max_length - 1); + } + } else { +#else + if(!constraints) constraints = &td->encoding_constraints; + { +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + if(rnd_bits >= max_length) { + rnd_bits = asn_random_between(0, max_length - 1); + } + } + + rnd_len = (rnd_bits + 7) / 8; + buf = CALLOC(1, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[rnd_len]; + + for(b = buf; b < bend; b++) { + *(uint8_t *)b = asn_random_between(0, 255); + } + *b = 0; /* Zero-terminate just in case. */ + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = rnd_len; + st->bits_unused = (8 - (rnd_bits & 0x7)) & 0x7; + if(st->bits_unused) { + assert(st->size > 0); + st->buf[st->size-1] &= 0xff << st->bits_unused; + } + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c new file mode 100644 index 000000000..d82349eed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c @@ -0,0 +1,244 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +static asn_per_constraint_t asn_DEF_BIT_STRING_constraint_size = { + APC_SEMI_CONSTRAINED, -1, -1, 0, 0}; + +asn_dec_rval_t +BIT_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + + (void)opt_codec_ctx; + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + + if(specs->subvariant != ASN_OSUBV_BIT) { + ASN_DEBUG("Subvariant %d is not BIT OSUBV_BIT", specs->subvariant); + RETURN(RC_FAIL); + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + st->size = (csiz->upper_bound + 7) >> 3; + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + ASN_DEBUG("Encoding BIT STRING size %ld", csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, csiz->upper_bound); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += csiz->upper_bound; + st->buf[st->size] = 0; + st->bits_unused = (8 - (csiz->upper_bound & 0x7)) & 0x7; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +BIT_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + BIT_STRING_t compact_bstr; /* Do not modify this directly! */ + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + size_t size_in_bits; + const uint8_t *buf; + int ret; + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(specs->subvariant == ASN_OSUBV_BIT) { + if((st->size == 0 && st->bits_unused) || (st->bits_unused & ~7)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + /* Figure out the size without the trailing bits */ + st = BIT_STRING__compactify(st, &compact_bstr); + size_in_bits = 8 * st->size - st->bits_unused; + + ASN_DEBUG( + "Encoding %s into %" ASN_PRI_SIZE " bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_bits, csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_bits > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + int add_trailer = (ssize_t)size_in_bits < csiz->lower_bound; + ASN_DEBUG( + "Encoding %" ASN_PRI_SIZE " bytes (%ld), length (in %d bits) trailer %d; actual " + "value %" ASN_PRI_SSIZE "", + st->size, size_in_bits - csiz->lower_bound, csiz->effective_bits, + add_trailer, + add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound); + ret = per_put_few_bits( + po, add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = per_put_many_bits(po, st->buf, size_in_bits); + if(ret) ASN__ENCODE_FAILED; + if(add_trailer) { + static const uint8_t zeros[16]; + size_t trailing_zero_bits = csiz->lower_bound - size_in_bits; + while(trailing_zero_bits > 0) { + if(trailing_zero_bits > 8 * sizeof(zeros)) { + ret = per_put_many_bits(po, zeros, 8 * sizeof(zeros)); + trailing_zero_bits -= 8 * sizeof(zeros); + } else { + ret = per_put_many_bits(po, zeros, trailing_zero_bits); + trailing_zero_bits = 0; + } + if(ret) ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + do { + int need_eom = 0; + ssize_t maySave = uper_put_length(po, size_in_bits, &need_eom); + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "", maySave, size_in_bits); + + ret = per_put_many_bits(po, buf, maySave); + if(ret) ASN__ENCODE_FAILED; + + buf += maySave >> 3; + size_in_bits -= maySave; + assert(!(maySave & 0x07) || !size_in_bits); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_bits); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c new file mode 100644 index 000000000..67d5cb8db --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static const char *_bit_pattern[16] = { + "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", + "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" +}; + +asn_enc_rval_t +BIT_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + char scratch[128]; + char *p = scratch; + char *scend = scratch + (sizeof(scratch) - 10); + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + int xcan = (flags & XER_F_CANONICAL); + uint8_t *buf; + uint8_t *end; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size - 1; /* Last byte is special */ + + /* + * Binary dump + */ + for(; buf < end; buf++) { + int v = *buf; + int nline = xcan?0:(((buf - st->buf) % 8) == 0); + if(p >= scend || nline) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + if(nline) ASN__TEXT_INDENT(1, ilevel); + } + memcpy(p + 0, _bit_pattern[v >> 4], 4); + memcpy(p + 4, _bit_pattern[v & 0x0f], 4); + p += 8; + } + + if(!xcan && ((buf - st->buf) % 8) == 0) + ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + + if(buf == end) { + int v = *buf; + int ubits = st->bits_unused; + int i; + for(i = 7; i >= ubits; i--) + *p++ = (v & (1 << i)) ? 0x31 : 0x30; + ASN__CALLBACK(scratch, p - scratch); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN.c new file mode 100644 index 000000000..1373a6f15 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN.c @@ -0,0 +1,128 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * BOOLEAN basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_operation_t asn_OP_BOOLEAN = { + BOOLEAN_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + BOOLEAN_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + BOOLEAN_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + BOOLEAN_decode_ber, + BOOLEAN_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + BOOLEAN_decode_xer, + BOOLEAN_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + BOOLEAN_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + BOOLEAN_decode_oer, + BOOLEAN_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + BOOLEAN_decode_uper, /* Unaligned PER decoder */ + BOOLEAN_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + BOOLEAN_decode_aper, /* Aligned PER decoder */ + BOOLEAN_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + BOOLEAN_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { + "BOOLEAN", + "BOOLEAN", + &asn_OP_BOOLEAN, + asn_DEF_BOOLEAN_tags, + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + asn_DEF_BOOLEAN_tags, /* Same as above */ + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +void +BOOLEAN_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(BOOLEAN_t)); + break; + } + } +} + +int +BOOLEAN_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const BOOLEAN_t *a = aptr; + const BOOLEAN_t *b = bptr; + + (void)td; + + if(a && b) { + if(!*a == !*b) { /* TRUE can be encoded by any non-zero byte. */ + return 0; + } else if(!*a) { + return -1; + } else { + return 1; + } + } else if(!a) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c new file mode 100644 index 000000000..d697cf571 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BOOLEAN_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + (void)td; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: + *st = 1; + break; + case 0: + *st = 0; + break; + case -1: + default: + ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + +asn_enc_rval_t +BOOLEAN_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c new file mode 100644 index 000000000..176a4a4b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode BOOLEAN type. + */ +asn_dec_rval_t +BOOLEAN_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **bool_value, + const void *buf_ptr, size_t size, int tag_mode) { + BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; + asn_dec_rval_t rval; + ber_tlv_len_t length; + ber_tlv_len_t lidx; + + if(st == NULL) { + st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); + if(st == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("Boolean length is %d bytes", (int)length); + + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * Compute boolean value. + */ + for(*st = 0, lidx = 0; + (lidx < length) && *st == 0; lidx++) { + /* + * Very simple approach: read bytes until the end or + * value is already TRUE. + * BOOLEAN is not supposed to contain meaningful data anyway. + */ + *st |= ((const uint8_t *)buf_ptr)[lidx]; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", + (long)rval.consumed, (long)length, + td->name, *st); + + return rval; +} + +asn_enc_rval_t +BOOLEAN_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + + erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb) { + uint8_t bool_value; + + bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ + + if(cb(&bool_value, 1, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } + + erval.encoded += 1; + + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c new file mode 100644 index 000000000..0e92e602b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BOOLEAN_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 1, 0, 0 }; + const BOOLEAN_t *st = sptr; + uint8_t bool_value = *st ? 0xff : 0; /* 0xff mandated by OER */ + + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(cb(&bool_value, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +asn_dec_rval_t +BOOLEAN_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + asn_dec_rval_t ok = {RC_OK, 1}; + BOOLEAN_t *st; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if(!(st = *sptr)) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + *st = *(const uint8_t *)ptr; + + return ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c new file mode 100644 index 000000000..23aaadea8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +BOOLEAN_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + const char *buf; + size_t buflen; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st) { + if(*st) { + buf = "TRUE"; + buflen = 4; + } else { + buf = "FALSE"; + buflen = 5; + } + } else { + buf = ""; + buflen = 8; + } + + return (cb(buf, buflen, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c new file mode 100644 index 000000000..5ec628bbf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +BOOLEAN_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + BOOLEAN_t *st = *sptr; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(st == NULL) { + return result_failed; + } + } + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_CONSTRAINED) { + *st = asn_random_between(pc->lower_bound, pc->upper_bound); + return result_ok; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + /* Simulate booleans that are sloppily set and biased. */ + switch(asn_random_between(0, 7)) { + case 0: + case 1: + case 2: + *st = 0; break; + case 3: *st = -1; break; + case 4: *st = 1; break; + case 5: *st = INT_MIN; break; + case 6: *st = INT_MAX; break; + default: + *st = asn_random_between(INT_MIN, INT_MAX); + break; + } + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c new file mode 100644 index 000000000..8181ec9ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +BOOLEAN_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: *st = 1; break; + case 0: *st = 0; break; + case -1: default: ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + + +asn_enc_rval_t +BOOLEAN_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c new file mode 100644 index 000000000..7e9d8f853 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +BOOLEAN__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + BOOLEAN_t *st = (BOOLEAN_t *)sptr; + const char *p = (const char *)chunk_buf; + + (void)td; + + if(chunk_size && p[0] == 0x3c /* '<' */) { + switch(xer_check_tag(chunk_buf, chunk_size, "false")) { + case XCT_BOTH: + /* "" */ + *st = 0; + break; + case XCT_UNKNOWN_BO: + if(xer_check_tag(chunk_buf, chunk_size, "true") != XCT_BOTH) + return XPBD_BROKEN_ENCODING; + /* "" */ + *st = 1; /* Or 0xff as in DER?.. */ + break; + default: + return XPBD_BROKEN_ENCODING; + } + return XPBD_BODY_CONSUMED; + } else { + return XPBD_BROKEN_ENCODING; + } +} + + +asn_dec_rval_t +BOOLEAN_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, + BOOLEAN__xer_body_decode); +} + +asn_enc_rval_t +BOOLEAN_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + + (void)ilevel; + (void)flags; + + if(!st) ASN__ENCODE_FAILED; + + if(*st) { + ASN__CALLBACK("", 7); + } else { + ASN__CALLBACK("", 8); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/BSMcoreData.c b/src/tmx/Asn_J2735/src/r2020/BSMcoreData.c new file mode 100644 index 000000000..face6a111 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BSMcoreData.c @@ -0,0 +1,300 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BSMcoreData.h" + +asn_TYPE_member_t asn_MBR_BSMcoreData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, lat), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, Long), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, elev), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elev" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, transmission), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transmission" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, speed), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, heading), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, angle), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accelSet), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, brakes), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, size), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "size" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMcoreData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMcoreData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* elev */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transmission */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* size */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1 = { + sizeof(struct BSMcoreData), + offsetof(struct BSMcoreData, _asn_ctx), + asn_MAP_BSMcoreData_tag2el_1, + 14, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMcoreData = { + "BSMcoreData", + "BSMcoreData", + &asn_OP_SEQUENCE, + asn_DEF_BSMcoreData_tags_1, + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + asn_DEF_BSMcoreData_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BSMcoreData_1, + 14, /* Elements count */ + &asn_SPC_BSMcoreData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage-addGrpCarma.c b/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage-addGrpCarma.c new file mode 100644 index 000000000..d4a4cadb1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage-addGrpCarma.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "BasicSafetyMessage-addGrpCarma.h" + +static int +memb_routeDestinationPoints_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_routeDestinationPoints_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpCarma, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_routeDestinationPoints_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_routeDestinationPoints_specs_2 = { + sizeof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints), + offsetof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_routeDestinationPoints_2 = { + "routeDestinationPoints", + "routeDestinationPoints", + &asn_OP_SEQUENCE_OF, + asn_DEF_routeDestinationPoints_tags_2, + sizeof(asn_DEF_routeDestinationPoints_tags_2) + /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]) - 1, /* 1 */ + asn_DEF_routeDestinationPoints_tags_2, /* Same as above */ + sizeof(asn_DEF_routeDestinationPoints_tags_2) + /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_routeDestinationPoints_2, + 1, /* Single element */ + &asn_SPC_routeDestinationPoints_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[] = { + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage_addGrpCarma, routeDestinationPoints), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_routeDestinationPoints_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_routeDestinationPoints_constraint_1 + }, + 0, 0, /* No default value */ + "routeDestinationPoints" + }, +}; +static const int asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routeDestinationPoints */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 = { + sizeof(struct BasicSafetyMessage_addGrpCarma), + offsetof(struct BasicSafetyMessage_addGrpCarma, _asn_ctx), + asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma = { + "BasicSafetyMessage-addGrpCarma", + "BasicSafetyMessage-addGrpCarma", + &asn_OP_SEQUENCE, + asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BasicSafetyMessage_addGrpCarma_1, + 1, /* Elements count */ + &asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage.c new file mode 100644 index 000000000..00c6e07e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BasicSafetyMessage.c @@ -0,0 +1,310 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BasicSafetyMessage.h" + +static int +memb_partII_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BSMpartIIExtension, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_partII_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_partII_specs_3 = { + sizeof(struct BasicSafetyMessage__partII), + offsetof(struct BasicSafetyMessage__partII, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_3 = { + "partII", + "partII", + &asn_OP_SEQUENCE_OF, + asn_DEF_partII_tags_3, + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]) - 1, /* 1 */ + asn_DEF_partII_tags_3, /* Same as above */ + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_partII_3, + 1, /* Single element */ + &asn_SPC_partII_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct BasicSafetyMessage__regional), + offsetof(struct BasicSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, coreData), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "coreData" + }, + { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, partII), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_partII_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_constraint_1 + }, + 0, 0, /* No default value */ + "partII" + }, + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_BasicSafetyMessage_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* coreData */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* partII */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { + sizeof(struct BasicSafetyMessage), + offsetof(struct BasicSafetyMessage, _asn_ctx), + asn_MAP_BasicSafetyMessage_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { + "BasicSafetyMessage", + "BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BasicSafetyMessage_1, + 3, /* Elements count */ + &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BasicVehicleClass.c b/src/tmx/Asn_J2735/src/r2020/BasicVehicleClass.c new file mode 100644 index 000000000..3b8f98632 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BasicVehicleClass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BasicVehicleClass.h" + +int +BasicVehicleClass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BasicVehicleClass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass = { + "BasicVehicleClass", + "BasicVehicleClass", + &asn_OP_NativeInteger, + asn_DEF_BasicVehicleClass_tags_1, + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleClass_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BasicVehicleClass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BasicVehicleClass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BasicVehicleClass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BasicVehicleRole.c b/src/tmx/Asn_J2735/src/r2020/BasicVehicleRole.c new file mode 100644 index 000000000..ce64fea86 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BasicVehicleRole.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BasicVehicleRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 22 } /* (0..22,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BasicVehicleRole_value2enum_1[] = { + { 0, 12, "basicVehicle" }, + { 1, 15, "publicTransport" }, + { 2, 16, "specialTransport" }, + { 3, 14, "dangerousGoods" }, + { 4, 8, "roadWork" }, + { 5, 10, "roadRescue" }, + { 6, 9, "emergency" }, + { 7, 9, "safetyCar" }, + { 8, 12, "none-unknown" }, + { 9, 5, "truck" }, + { 10, 10, "motorcycle" }, + { 11, 14, "roadSideSource" }, + { 12, 6, "police" }, + { 13, 4, "fire" }, + { 14, 9, "ambulance" }, + { 15, 3, "dot" }, + { 16, 7, "transit" }, + { 17, 10, "slowMoving" }, + { 18, 7, "stopNgo" }, + { 19, 7, "cyclist" }, + { 20, 10, "pedestrian" }, + { 21, 12, "nonMotorized" }, + { 22, 8, "military" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_BasicVehicleRole_enum2value_1[] = { + 14, /* ambulance(14) */ + 0, /* basicVehicle(0) */ + 19, /* cyclist(19) */ + 3, /* dangerousGoods(3) */ + 15, /* dot(15) */ + 6, /* emergency(6) */ + 13, /* fire(13) */ + 22, /* military(22) */ + 10, /* motorcycle(10) */ + 21, /* nonMotorized(21) */ + 8, /* none-unknown(8) */ + 20, /* pedestrian(20) */ + 12, /* police(12) */ + 1, /* publicTransport(1) */ + 5, /* roadRescue(5) */ + 11, /* roadSideSource(11) */ + 4, /* roadWork(4) */ + 7, /* safetyCar(7) */ + 17, /* slowMoving(17) */ + 2, /* specialTransport(2) */ + 18, /* stopNgo(18) */ + 16, /* transit(16) */ + 9 /* truck(9) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1 = { + asn_MAP_BasicVehicleRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BasicVehicleRole_enum2value_1, /* N => "tag"; sorted by N */ + 23, /* Number of elements in the maps */ + 24, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BasicVehicleRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole = { + "BasicVehicleRole", + "BasicVehicleRole", + &asn_OP_NativeEnumerated, + asn_DEF_BasicVehicleRole_tags_1, + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleRole_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BasicVehicleRole_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BasicVehicleRole_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BasicVehicleRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/r2020/BrakeAppliedPressure.c new file mode 100644 index 000000000..57ae99d8b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BrakeAppliedPressure.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BrakeAppliedPressure.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "minPressure" }, + { 2, 7, "bkLvl-2" }, + { 3, 7, "bkLvl-3" }, + { 4, 7, "bkLvl-4" }, + { 5, 7, "bkLvl-5" }, + { 6, 7, "bkLvl-6" }, + { 7, 7, "bkLvl-7" }, + { 8, 7, "bkLvl-8" }, + { 9, 7, "bkLvl-9" }, + { 10, 8, "bkLvl-10" }, + { 11, 8, "bkLvl-11" }, + { 12, 8, "bkLvl-12" }, + { 13, 8, "bkLvl-13" }, + { 14, 8, "bkLvl-14" }, + { 15, 11, "maxPressure" } +}; +static const unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { + 10, /* bkLvl-10(10) */ + 11, /* bkLvl-11(11) */ + 12, /* bkLvl-12(12) */ + 13, /* bkLvl-13(13) */ + 14, /* bkLvl-14(14) */ + 2, /* bkLvl-2(2) */ + 3, /* bkLvl-3(3) */ + 4, /* bkLvl-4(4) */ + 5, /* bkLvl-5(5) */ + 6, /* bkLvl-6(6) */ + 7, /* bkLvl-7(7) */ + 8, /* bkLvl-8(8) */ + 9, /* bkLvl-9(9) */ + 15, /* maxPressure(15) */ + 1, /* minPressure(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { + asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { + "BrakeAppliedPressure", + "BrakeAppliedPressure", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeAppliedPressure_tags_1, + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeAppliedPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeAppliedPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/r2020/BrakeAppliedStatus.c new file mode 100644 index 000000000..a0fbb6dc6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BrakeAppliedStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BrakeAppliedStatus.h" + +int +BrakeAppliedStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { + "BrakeAppliedStatus", + "BrakeAppliedStatus", + &asn_OP_BIT_STRING, + asn_DEF_BrakeAppliedStatus_tags_1, + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeAppliedStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeAppliedStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BrakeAppliedStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/r2020/BrakeBoostApplied.c new file mode 100644 index 000000000..e6640fd59 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BrakeBoostApplied.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BrakeBoostApplied.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" } +}; +static const unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { + asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { + "BrakeBoostApplied", + "BrakeBoostApplied", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeBoostApplied_tags_1, + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BrakeBoostApplied_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BrakeBoostApplied_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/r2020/BrakeSystemStatus.c new file mode 100644 index 000000000..cbaed8c1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BrakeSystemStatus.c @@ -0,0 +1,156 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BrakeSystemStatus.h" + +asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, wheelBrakes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelBrakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, traction), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TractionControlStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "traction" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, abs), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntiLockBrakeStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "abs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, scs), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StabilityControlStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, brakeBoost), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeBoostApplied, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakeBoost" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, auxBrakes), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AuxiliaryBrakeStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "auxBrakes" + }, +}; +static const ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BrakeSystemStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* wheelBrakes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* traction */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* abs */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* scs */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakeBoost */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* auxBrakes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1 = { + sizeof(struct BrakeSystemStatus), + offsetof(struct BrakeSystemStatus, _asn_ctx), + asn_MAP_BrakeSystemStatus_tag2el_1, + 6, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { + "BrakeSystemStatus", + "BrakeSystemStatus", + &asn_OP_SEQUENCE, + asn_DEF_BrakeSystemStatus_tags_1, + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BrakeSystemStatus_1, + 6, /* Elements count */ + &asn_SPC_BrakeSystemStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BumperHeight.c b/src/tmx/Asn_J2735/src/r2020/BumperHeight.c new file mode 100644 index 000000000..ae8bf8cb0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BumperHeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BumperHeight.h" + +int +BumperHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_BumperHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_BumperHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_BumperHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeight = { + "BumperHeight", + "BumperHeight", + &asn_OP_NativeInteger, + asn_DEF_BumperHeight_tags_1, + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + asn_DEF_BumperHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_BumperHeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_BumperHeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BumperHeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/BumperHeights.c b/src/tmx/Asn_J2735/src/r2020/BumperHeights.c new file mode 100644 index 000000000..3c1c7e6cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/BumperHeights.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "BumperHeights.h" + +asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, front), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "front" + }, + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rear" + }, +}; +static const ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* front */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { + sizeof(struct BumperHeights), + offsetof(struct BumperHeights, _asn_ctx), + asn_MAP_BumperHeights_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeights = { + "BumperHeights", + "BumperHeights", + &asn_OP_SEQUENCE, + asn_DEF_BumperHeights_tags_1, + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + asn_DEF_BumperHeights_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BumperHeights_1, + 2, /* Elements count */ + &asn_SPC_BumperHeights_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/CargoWeight.c b/src/tmx/Asn_J2735/src/r2020/CargoWeight.c new file mode 100644 index 000000000..21d846bcd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/CargoWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "CargoWeight.h" + +int +CargoWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CargoWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CargoWeight = { + "CargoWeight", + "CargoWeight", + &asn_OP_NativeInteger, + asn_DEF_CargoWeight_tags_1, + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + asn_DEF_CargoWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CargoWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CargoWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CargoWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Circle.c b/src/tmx/Asn_J2735/src/r2020/Circle.c new file mode 100644 index 000000000..797587b38 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Circle.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Circle.h" + +asn_TYPE_member_t asn_MBR_Circle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Circle, center), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "center" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, radius), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Radius_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "radius" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DistanceUnits, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* radius */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { + sizeof(struct Circle), + offsetof(struct Circle, _asn_ctx), + asn_MAP_Circle_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Circle = { + "Circle", + "Circle", + &asn_OP_SEQUENCE, + asn_DEF_Circle_tags_1, + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + asn_DEF_Circle_tags_1, /* Same as above */ + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Circle_1, + 3, /* Elements count */ + &asn_SPC_Circle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ClassificationConfidence.c b/src/tmx/Asn_J2735/src/r2020/ClassificationConfidence.c new file mode 100644 index 000000000..423fdca04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ClassificationConfidence.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ClassificationConfidence.h" + +int +ClassificationConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 101)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..101) */, + -1}; +asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ClassificationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence = { + "ClassificationConfidence", + "ClassificationConfidence", + &asn_OP_NativeInteger, + asn_DEF_ClassificationConfidence_tags_1, + sizeof(asn_DEF_ClassificationConfidence_tags_1) + /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ClassificationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ClassificationConfidence_tags_1) + /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_ClassificationConfidence_constr_1, &asn_PER_type_ClassificationConfidence_constr_1, ClassificationConfidence_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/CoarseHeading.c b/src/tmx/Asn_J2735/src/r2020/CoarseHeading.c new file mode 100644 index 000000000..34ceecfa8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/CoarseHeading.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "CoarseHeading.h" + +int +CoarseHeading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 240L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..240) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 240 } /* (0..240) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CoarseHeading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoarseHeading = { + "CoarseHeading", + "CoarseHeading", + &asn_OP_NativeInteger, + asn_DEF_CoarseHeading_tags_1, + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + asn_DEF_CoarseHeading_tags_1, /* Same as above */ + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CoarseHeading_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CoarseHeading_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CoarseHeading_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/CodeWord.c b/src/tmx/Asn_J2735/src/r2020/CodeWord.c new file mode 100644 index 000000000..ec3eaee10 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/CodeWord.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "CodeWord.h" + +int +CodeWord_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CodeWord_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CodeWord = { + "CodeWord", + "CodeWord", + &asn_OP_OCTET_STRING, + asn_DEF_CodeWord_tags_1, + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + asn_DEF_CodeWord_tags_1, /* Same as above */ + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CodeWord_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CodeWord_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CodeWord_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/r2020/CoefficientOfFriction.c new file mode 100644 index 000000000..f7fdefdd8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/CoefficientOfFriction.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "CoefficientOfFriction.h" + +int +CoefficientOfFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 50L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..50) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { + "CoefficientOfFriction", + "CoefficientOfFriction", + &asn_OP_NativeInteger, + asn_DEF_CoefficientOfFriction_tags_1, + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_CoefficientOfFriction_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_CoefficientOfFriction_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CoefficientOfFriction_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/r2020/CommonSafetyRequest.c new file mode 100644 index 000000000..ae496efb4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/CommonSafetyRequest.c @@ -0,0 +1,243 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "CommonSafetyRequest.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_CommonSafetyRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct CommonSafetyRequest__regional), + offsetof(struct CommonSafetyRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { + { ATF_POINTER, 3, offsetof(struct CommonSafetyRequest, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestedItemList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_CommonSafetyRequest_oms_1[] = { 0, 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { + sizeof(struct CommonSafetyRequest), + offsetof(struct CommonSafetyRequest, _asn_ctx), + asn_MAP_CommonSafetyRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { + "CommonSafetyRequest", + "CommonSafetyRequest", + &asn_OP_SEQUENCE, + asn_DEF_CommonSafetyRequest_tags_1, + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_CommonSafetyRequest_1, + 5, /* Elements count */ + &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Common_Angle.c b/src/tmx/Asn_J2735/src/r2020/Common_Angle.c new file mode 100644 index 000000000..9f5bacafa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Common_Angle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Common_Angle.h" + +int +Common_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_Angle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_Common_Angle_tags_1, + sizeof(asn_DEF_Common_Angle_tags_1) + /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ + asn_DEF_Common_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_Angle_tags_1) + /sizeof(asn_DEF_Common_Angle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_Angle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_Angle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Common_Elevation.c b/src/tmx/Asn_J2735/src/r2020/Common_Elevation.c new file mode 100644 index 000000000..a8c842517 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Common_Elevation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Common_Elevation.h" + +int +Common_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096L && value <= 61439L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_Elevation_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-4096..61439) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_Common_Elevation_tags_1, + sizeof(asn_DEF_Common_Elevation_tags_1) + /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ + asn_DEF_Common_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_Elevation_tags_1) + /sizeof(asn_DEF_Common_Elevation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_Elevation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_Elevation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Common_MsgCount.c b/src/tmx/Asn_J2735/src/r2020/Common_MsgCount.c new file mode 100644 index 000000000..be20944d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Common_MsgCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Common_MsgCount.h" + +int +Common_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Common_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Common_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Common_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Common_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_Common_MsgCount_tags_1, + sizeof(asn_DEF_Common_MsgCount_tags_1) + /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_Common_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_Common_MsgCount_tags_1) + /sizeof(asn_DEF_Common_MsgCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Common_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Common_MsgCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Common_MsgCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ComputedLane.c b/src/tmx/Asn_J2735/src/r2020/ComputedLane.c new file mode 100644 index 000000000..0078e0e38 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ComputedLane.c @@ -0,0 +1,449 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ComputedLane.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { + sizeof(struct ComputedLane__offsetXaxis), + offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetXaxis, present), + sizeof(((struct ComputedLane__offsetXaxis *)0)->present), + asn_MAP_offsetXaxis_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { + "offsetXaxis", + "offsetXaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offsetXaxis_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offsetXaxis_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offsetXaxis_3, + 2, /* Elements count */ + &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { + sizeof(struct ComputedLane__offsetYaxis), + offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetYaxis, present), + sizeof(((struct ComputedLane__offsetYaxis *)0)->present), + asn_MAP_offsetYaxis_tag2el_6, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { + "offsetYaxis", + "offsetYaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offsetYaxis_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offsetYaxis_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offsetYaxis_6, + 2, /* Elements count */ + &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ComputedLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct ComputedLane__regional), + offsetof(struct ComputedLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "referenceLaneId" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetXaxis_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetXaxis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetYaxis_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetYaxis" + }, + { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rotateXY" + }, + { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scaleXaxis" + }, + { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scaleYaxis" + }, + { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { + sizeof(struct ComputedLane), + offsetof(struct ComputedLane, _asn_ctx), + asn_MAP_ComputedLane_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ComputedLane_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ComputedLane = { + "ComputedLane", + "ComputedLane", + &asn_OP_SEQUENCE, + asn_DEF_ComputedLane_tags_1, + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + asn_DEF_ComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ComputedLane_1, + 7, /* Elements count */ + &asn_SPC_ComputedLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Confidence.c b/src/tmx/Asn_J2735/src/r2020/Confidence.c new file mode 100644 index 000000000..b0e51583e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Confidence.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Confidence.h" + +int +Confidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Confidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Confidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Confidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Confidence = { + "Confidence", + "Confidence", + &asn_OP_NativeInteger, + asn_DEF_Confidence_tags_1, + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + asn_DEF_Confidence_tags_1, /* Same as above */ + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Confidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Confidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Confidence_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ConfidenceSet.c b/src/tmx/Asn_J2735/src/r2020/ConfidenceSet.c new file mode 100644 index 000000000..6bc8888d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ConfidenceSet.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ConfidenceSet.h" + +asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { + { ATF_POINTER, 7, offsetof(struct ConfidenceSet, accelConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelSteerYawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelConfidence" + }, + { ATF_POINTER, 6, offsetof(struct ConfidenceSet, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedConfidence" + }, + { ATF_POINTER, 5, offsetof(struct ConfidenceSet, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 4, offsetof(struct ConfidenceSet, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 3, offsetof(struct ConfidenceSet, steerConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steerConfidence" + }, + { ATF_POINTER, 2, offsetof(struct ConfidenceSet, headingConfidence), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "headingConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttleConfidence" + }, +}; +static const int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* headingConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* throttleConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { + sizeof(struct ConfidenceSet), + offsetof(struct ConfidenceSet, _asn_ctx), + asn_MAP_ConfidenceSet_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ConfidenceSet_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { + "ConfidenceSet", + "ConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_ConfidenceSet_tags_1, + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_ConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConfidenceSet_1, + 7, /* Elements count */ + &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ConnectingLane.c b/src/tmx/Asn_J2735/src/r2020/ConnectingLane.c new file mode 100644 index 000000000..e6a32b48a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ConnectingLane.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ConnectingLane.h" + +asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuver" + }, +}; +static const int asn_MAP_ConnectingLane_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { + sizeof(struct ConnectingLane), + offsetof(struct ConnectingLane, _asn_ctx), + asn_MAP_ConnectingLane_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectingLane_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { + "ConnectingLane", + "ConnectingLane", + &asn_OP_SEQUENCE, + asn_DEF_ConnectingLane_tags_1, + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + asn_DEF_ConnectingLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectingLane_1, + 2, /* Elements count */ + &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Connection.c b/src/tmx/Asn_J2735/src/r2020/Connection.c new file mode 100644 index 000000000..da2855a7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Connection.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Connection.h" + +asn_TYPE_member_t asn_MBR_Connection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectingLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectingLane" + }, + { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "remoteIntersection" + }, + { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_POINTER, 2, offsetof(struct Connection, userClass), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "userClass" + }, + { ATF_POINTER, 1, offsetof(struct Connection, connectionID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectionID" + }, +}; +static const int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { + sizeof(struct Connection), + offsetof(struct Connection, _asn_ctx), + asn_MAP_Connection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Connection_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Connection = { + "Connection", + "Connection", + &asn_OP_SEQUENCE, + asn_DEF_Connection_tags_1, + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + asn_DEF_Connection_tags_1, /* Same as above */ + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Connection_1, + 5, /* Elements count */ + &asn_SPC_Connection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist-addGrpC.c b/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist-addGrpC.c new file mode 100644 index 000000000..936177f07 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist-addGrpC.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ConnectionManeuverAssist-addGrpC.h" + +asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist_addGrpC, vehicleToLanePositions), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleToLanePositionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleToLanePositions" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist_addGrpC, rsuDistanceFromAnchor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rsuDistanceFromAnchor" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 = { + sizeof(struct ConnectionManeuverAssist_addGrpC), + offsetof(struct ConnectionManeuverAssist_addGrpC, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC = { + "ConnectionManeuverAssist-addGrpC", + "ConnectionManeuverAssist-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectionManeuverAssist_addGrpC_1, + 2, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist.c new file mode 100644 index 000000000..d334707c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ConnectionManeuverAssist.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ConnectionManeuverAssist.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ConnectionManeuverAssist, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct ConnectionManeuverAssist__regional), + offsetof(struct ConnectionManeuverAssist__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectionID" + }, + { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "queueLength" + }, + { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "availableStorageLength" + }, + { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WaitOnStopline, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "waitOnStop" + }, + { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PedestrianBicycleDetect, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pedBicycleDetect" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { + sizeof(struct ConnectionManeuverAssist), + offsetof(struct ConnectionManeuverAssist, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { + "ConnectionManeuverAssist", + "ConnectionManeuverAssist", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ConnectionManeuverAssist_1, + 6, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ConnectsToList.c b/src/tmx/Asn_J2735/src/r2020/ConnectsToList.c new file mode 100644 index 000000000..02e41d343 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ConnectsToList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ConnectsToList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Connection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { + sizeof(struct ConnectsToList), + offsetof(struct ConnectsToList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { + "ConnectsToList", + "ConnectsToList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ConnectsToList_tags_1, + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + asn_DEF_ConnectsToList_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ConnectsToList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ConnectsToList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ConnectsToList_1, + 1, /* Single element */ + &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Count.c b/src/tmx/Asn_J2735/src/r2020/Count.c new file mode 100644 index 000000000..b8fca8cbd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Count.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Count.h" + +int +Count_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Count_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..32) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Count_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Count_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Count = { + "Count", + "Count", + &asn_OP_NativeInteger, + asn_DEF_Count_tags_1, + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + asn_DEF_Count_tags_1, /* Same as above */ + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Count_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Count_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Count_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DDate.c b/src/tmx/Asn_J2735/src/r2020/DDate.c new file mode 100644 index 000000000..277948836 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DDate.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DDate.h" + +static asn_TYPE_member_t asn_MBR_DDate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DDate, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { + sizeof(struct DDate), + offsetof(struct DDate, _asn_ctx), + asn_MAP_DDate_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDate = { + "DDate", + "DDate", + &asn_OP_SEQUENCE, + asn_DEF_DDate_tags_1, + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + asn_DEF_DDate_tags_1, /* Same as above */ + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DDate_1, + 3, /* Elements count */ + &asn_SPC_DDate_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DDateTime.c b/src/tmx/Asn_J2735/src/r2020/DDateTime.c new file mode 100644 index 000000000..24f8bf649 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DDateTime.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DDateTime.h" + +asn_TYPE_member_t asn_MBR_DDateTime_1[] = { + { ATF_POINTER, 7, offsetof(struct DDateTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 6, offsetof(struct DDateTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_POINTER, 5, offsetof(struct DDateTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_POINTER, 4, offsetof(struct DDateTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_POINTER, 3, offsetof(struct DDateTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct DDateTime, second), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DDateTime, offset), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { + sizeof(struct DDateTime), + offsetof(struct DDateTime, _asn_ctx), + asn_MAP_DDateTime_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_DDateTime_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDateTime = { + "DDateTime", + "DDateTime", + &asn_OP_SEQUENCE, + asn_DEF_DDateTime_tags_1, + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + asn_DEF_DDateTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DDateTime_1, + 7, /* Elements count */ + &asn_SPC_DDateTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DDay.c b/src/tmx/Asn_J2735/src/r2020/DDay.c new file mode 100644 index 000000000..40c71af80 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DDay.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DDay.h" + +int +DDay_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DDay_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DDay_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DDay = { + "DDay", + "DDay", + &asn_OP_NativeInteger, + asn_DEF_DDay_tags_1, + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + asn_DEF_DDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DDay_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DDay_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DDay_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DFullTime.c b/src/tmx/Asn_J2735/src/r2020/DFullTime.c new file mode 100644 index 000000000..5df7c4281 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DFullTime.c @@ -0,0 +1,138 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DFullTime.h" + +static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, +}; +static const ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { + sizeof(struct DFullTime), + offsetof(struct DFullTime, _asn_ctx), + asn_MAP_DFullTime_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DFullTime = { + "DFullTime", + "DFullTime", + &asn_OP_SEQUENCE, + asn_DEF_DFullTime_tags_1, + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + asn_DEF_DFullTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DFullTime_1, + 5, /* Elements count */ + &asn_SPC_DFullTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DHour.c b/src/tmx/Asn_J2735/src/r2020/DHour.c new file mode 100644 index 000000000..e09286e01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DHour.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DHour.h" + +int +DHour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DHour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DHour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DHour = { + "DHour", + "DHour", + &asn_OP_NativeInteger, + asn_DEF_DHour_tags_1, + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + asn_DEF_DHour_tags_1, /* Same as above */ + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DHour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DHour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DHour_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DMinute.c b/src/tmx/Asn_J2735/src/r2020/DMinute.c new file mode 100644 index 000000000..c9852f314 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DMinute.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DMinute.h" + +int +DMinute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 60L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DMinute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DMinute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMinute = { + "DMinute", + "DMinute", + &asn_OP_NativeInteger, + asn_DEF_DMinute_tags_1, + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + asn_DEF_DMinute_tags_1, /* Same as above */ + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DMinute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DMinute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DMinute_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DMonth.c b/src/tmx/Asn_J2735/src/r2020/DMonth.c new file mode 100644 index 000000000..4eecab9b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DMonth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DMonth.h" + +int +DMonth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 12L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DMonth_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..12) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DMonth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 12 } /* (0..12) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMonth = { + "DMonth", + "DMonth", + &asn_OP_NativeInteger, + asn_DEF_DMonth_tags_1, + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + asn_DEF_DMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DMonth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DMonth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DMonth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DMonthDay.c b/src/tmx/Asn_J2735/src/r2020/DMonthDay.c new file mode 100644 index 000000000..3b21abbdb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DMonthDay.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DMonthDay.h" + +static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { + sizeof(struct DMonthDay), + offsetof(struct DMonthDay, _asn_ctx), + asn_MAP_DMonthDay_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DMonthDay = { + "DMonthDay", + "DMonthDay", + &asn_OP_SEQUENCE, + asn_DEF_DMonthDay_tags_1, + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + asn_DEF_DMonthDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DMonthDay_1, + 2, /* Elements count */ + &asn_SPC_DMonthDay_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DOffset.c b/src/tmx/Asn_J2735/src/r2020/DOffset.c new file mode 100644 index 000000000..456031e74 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DOffset.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DOffset.h" + +int +DOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -840L && value <= 840L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DOffset_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-840..840) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DOffset = { + "DOffset", + "DOffset", + &asn_OP_NativeInteger, + asn_DEF_DOffset_tags_1, + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + asn_DEF_DOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DOffset_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DSRCmsgID.c b/src/tmx/Asn_J2735/src/r2020/DSRCmsgID.c new file mode 100644 index 000000000..08e551a37 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DSRCmsgID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DSRCmsgID.h" + +int +DSRCmsgID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { + "DSRCmsgID", + "DSRCmsgID", + &asn_OP_NativeInteger, + asn_DEF_DSRCmsgID_tags_1, + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgID_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DSRCmsgID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DSRCmsgID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DSRCmsgID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DSecond.c b/src/tmx/Asn_J2735/src/r2020/DSecond.c new file mode 100644 index 000000000..8fa6c30ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DSecond.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DSecond.h" + +int +DSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DSecond_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSecond = { + "DSecond", + "DSecond", + &asn_OP_NativeInteger, + asn_DEF_DSecond_tags_1, + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + asn_DEF_DSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DSecond_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DSecond_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DSecond_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DTime.c b/src/tmx/Asn_J2735/src/r2020/DTime.c new file mode 100644 index 000000000..aeaa3a7cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DTime.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DTime.h" + +static asn_TYPE_member_t asn_MBR_DTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DTime, offset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DTime_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offset */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { + sizeof(struct DTime), + offsetof(struct DTime, _asn_ctx), + asn_MAP_DTime_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DTime_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DTime = { + "DTime", + "DTime", + &asn_OP_SEQUENCE, + asn_DEF_DTime_tags_1, + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + asn_DEF_DTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DTime_1, + 4, /* Elements count */ + &asn_SPC_DTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DYear.c b/src/tmx/Asn_J2735/src/r2020/DYear.c new file mode 100644 index 000000000..5228db4ec --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DYear.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DYear.h" + +int +DYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DYear_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DYear = { + "DYear", + "DYear", + &asn_OP_NativeInteger, + asn_DEF_DYear_tags_1, + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + asn_DEF_DYear_tags_1, /* Same as above */ + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DYear_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DYear_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DYear_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DYearMonth.c b/src/tmx/Asn_J2735/src/r2020/DYearMonth.c new file mode 100644 index 000000000..b7ef4c13f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DYearMonth.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DYearMonth.h" + +static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "month" + }, +}; +static const ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { + sizeof(struct DYearMonth), + offsetof(struct DYearMonth, _asn_ctx), + asn_MAP_DYearMonth_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DYearMonth = { + "DYearMonth", + "DYearMonth", + &asn_OP_SEQUENCE, + asn_DEF_DYearMonth_tags_1, + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + asn_DEF_DYearMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DYearMonth_1, + 2, /* Elements count */ + &asn_SPC_DYearMonth_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DailySchedule.c b/src/tmx/Asn_J2735/src/r2020/DailySchedule.c new file mode 100644 index 000000000..4c6671ab3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DailySchedule.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DailySchedule.h" + +static int +memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DailySchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, begin), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, + 0, 0, /* No default value */ + "begin" + }, + { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, duration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, + 0, 0, /* No default value */ + "duration" + }, +}; +static const ber_tlv_tag_t asn_DEF_DailySchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DailySchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1 = { + sizeof(struct DailySchedule), + offsetof(struct DailySchedule, _asn_ctx), + asn_MAP_DailySchedule_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DailySchedule = { + "DailySchedule", + "DailySchedule", + &asn_OP_SEQUENCE, + asn_DEF_DailySchedule_tags_1, + sizeof(asn_DEF_DailySchedule_tags_1) + /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ + asn_DEF_DailySchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_DailySchedule_tags_1) + /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DailySchedule_1, + 2, /* Elements count */ + &asn_SPC_DailySchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DataParameters.c b/src/tmx/Asn_J2735/src/r2020/DataParameters.c new file mode 100644 index 000000000..2c565c611 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DataParameters.c @@ -0,0 +1,330 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DataParameters.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int +memb_processMethod_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_processAgency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_lastCheckedDate_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_geoidUsed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_processMethod_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_processAgency_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_DataParameters_1[] = { + { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_processMethod_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_processMethod_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_processMethod_constraint_1 + }, + 0, 0, /* No default value */ + "processMethod" + }, + { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_processAgency_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_processAgency_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_processAgency_constraint_1 + }, + 0, 0, /* No default value */ + "processAgency" + }, + { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_lastCheckedDate_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_lastCheckedDate_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_lastCheckedDate_constraint_1 + }, + 0, 0, /* No default value */ + "lastCheckedDate" + }, + { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_geoidUsed_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_geoidUsed_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_geoidUsed_constraint_1 + }, + 0, 0, /* No default value */ + "geoidUsed" + }, +}; +static const int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { + sizeof(struct DataParameters), + offsetof(struct DataParameters, _asn_ctx), + asn_MAP_DataParameters_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DataParameters_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DataParameters = { + "DataParameters", + "DataParameters", + &asn_OP_SEQUENCE, + asn_DEF_DataParameters_tags_1, + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + asn_DEF_DataParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DataParameters_1, + 4, /* Elements count */ + &asn_SPC_DataParameters_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Day.c b/src/tmx/Asn_J2735/src/r2020/Day.c new file mode 100644 index 000000000..c73590bb4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Day.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Day.h" + +int +Day_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Day_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Day_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Day_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Day = { + "Day", + "Day", + &asn_OP_NativeInteger, + asn_DEF_Day_tags_1, + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + asn_DEF_Day_tags_1, /* Same as above */ + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Day_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Day_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Day_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DayOfWeek.c b/src/tmx/Asn_J2735/src/r2020/DayOfWeek.c new file mode 100644 index 000000000..7fb30c80b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DayOfWeek.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DayOfWeek.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static const unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { + asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_NativeEnumerated, + asn_DEF_DayOfWeek_tags_1, + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DayOfWeek_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DayOfWeek_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DaySchedule.c b/src/tmx/Asn_J2735/src/r2020/DaySchedule.c new file mode 100644 index 000000000..9b915fccc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DaySchedule.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DaySchedule.h" + +static int +memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DaySchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, begin), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, + 0, 0, /* No default value */ + "begin" + }, + { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, duration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, + 0, 0, /* No default value */ + "duration" + }, +}; +static const ber_tlv_tag_t asn_DEF_DaySchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DaySchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1 = { + sizeof(struct DaySchedule), + offsetof(struct DaySchedule, _asn_ctx), + asn_MAP_DaySchedule_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DaySchedule = { + "DaySchedule", + "DaySchedule", + &asn_OP_SEQUENCE, + asn_DEF_DaySchedule_tags_1, + sizeof(asn_DEF_DaySchedule_tags_1) + /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ + asn_DEF_DaySchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_DaySchedule_tags_1) + /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DaySchedule_1, + 2, /* Elements count */ + &asn_SPC_DaySchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DegreesLat.c b/src/tmx/Asn_J2735/src/r2020/DegreesLat.c new file mode 100644 index 000000000..a420fd1f8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DegreesLat.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DegreesLat.h" + +int +DegreesLat_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -90L && value <= 90L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DegreesLat_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-90..90) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLat = { + "DegreesLat", + "DegreesLat", + &asn_OP_NativeInteger, + asn_DEF_DegreesLat_tags_1, + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + asn_DEF_DegreesLat_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DegreesLat_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DegreesLat_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DegreesLat_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DegreesLong.c b/src/tmx/Asn_J2735/src/r2020/DegreesLong.c new file mode 100644 index 000000000..4fce08b01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DegreesLong.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DegreesLong.h" + +int +DegreesLong_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180L && value <= 180L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DegreesLong_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLong = { + "DegreesLong", + "DegreesLong", + &asn_OP_NativeInteger, + asn_DEF_DegreesLong_tags_1, + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + asn_DEF_DegreesLong_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DegreesLong_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DegreesLong_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DegreesLong_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DeltaAngle.c b/src/tmx/Asn_J2735/src/r2020/DeltaAngle.c new file mode 100644 index 000000000..fa0edebfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DeltaAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DeltaAngle.h" + +int +DeltaAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -150L && value <= 150L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-150..150) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { + "DeltaAngle", + "DeltaAngle", + &asn_OP_NativeInteger, + asn_DEF_DeltaAngle_tags_1, + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + asn_DEF_DeltaAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DeltaAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DeltaAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DeltaAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DeltaTime.c b/src/tmx/Asn_J2735/src/r2020/DeltaTime.c new file mode 100644 index 000000000..ec8b6fa97 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DeltaTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DeltaTime.h" + +int +DeltaTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -122L && value <= 121L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DeltaTime_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-122..121) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DeltaTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -122, 121 } /* (-122..121) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DeltaTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaTime = { + "DeltaTime", + "DeltaTime", + &asn_OP_NativeInteger, + asn_DEF_DeltaTime_tags_1, + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + asn_DEF_DeltaTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DeltaTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DeltaTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DeltaTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DescriptiveName.c b/src/tmx/Asn_J2735/src/r2020/DescriptiveName.c new file mode 100644 index 000000000..833fee170 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DescriptiveName.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DescriptiveName.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +DescriptiveName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 63UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { + "DescriptiveName", + "DescriptiveName", + &asn_OP_IA5String, + asn_DEF_DescriptiveName_tags_1, + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + asn_DEF_DescriptiveName_tags_1, /* Same as above */ + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DescriptiveName_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DescriptiveName_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DescriptiveName_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedObjectCommonData.c b/src/tmx/Asn_J2735/src/r2020/DetectedObjectCommonData.c new file mode 100644 index 000000000..d22ee61a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedObjectCommonData.c @@ -0,0 +1,222 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectCommonData.h" + +asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objType" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objTypeCfd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ClassificationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objTypeCfd" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objectID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objectID" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, measurementTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MeasurementTimeOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "measurementTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, pos), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionOffsetXYZ, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pos" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speed), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidence" + }, + { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, speedZ), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedZ" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, speedConfidenceZ), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidenceZ" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, heading), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, headingConf), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "headingConf" + }, + { ATF_POINTER, 5, offsetof(struct DetectedObjectCommonData, accel4way), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct DetectedObjectCommonData, accCfdX), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdX" + }, + { ATF_POINTER, 3, offsetof(struct DetectedObjectCommonData, accCfdY), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdY" + }, + { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, accCfdZ), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdZ" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, accCfdYaw), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdYaw" + }, +}; +static const int asn_MAP_DetectedObjectCommonData_oms_1[] = { 9, 10, 13, 14, 15, 16, 17 }; +static const ber_tlv_tag_t asn_DEF_DetectedObjectCommonData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectCommonData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* objType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* objTypeCfd */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* objectID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* measurementTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pos */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* speedZ */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* speedConfidenceZ */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* headingConf */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* accCfdX */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* accCfdY */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* accCfdZ */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 } /* accCfdYaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1 = { + sizeof(struct DetectedObjectCommonData), + offsetof(struct DetectedObjectCommonData, _asn_ctx), + asn_MAP_DetectedObjectCommonData_tag2el_1, + 18, /* Count of tags in the map */ + asn_MAP_DetectedObjectCommonData_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 18, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData = { + "DetectedObjectCommonData", + "DetectedObjectCommonData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObjectCommonData_tags_1, + sizeof(asn_DEF_DetectedObjectCommonData_tags_1) + /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectCommonData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectCommonData_tags_1) + /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObjectCommonData_1, + 18, /* Elements count */ + &asn_SPC_DetectedObjectCommonData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedObjectData.c b/src/tmx/Asn_J2735/src/r2020/DetectedObjectData.c new file mode 100644 index 000000000..f15b14725 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedObjectData.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectData.h" + +asn_TYPE_member_t asn_MBR_DetectedObjectData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectData, detObjCommon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObjectCommonData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObjCommon" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectData, detObjOptData), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_DetectedObjectOptionalData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObjOptData" + }, +}; +static const int asn_MAP_DetectedObjectData_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_DetectedObjectData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detObjCommon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* detObjOptData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1 = { + sizeof(struct DetectedObjectData), + offsetof(struct DetectedObjectData, _asn_ctx), + asn_MAP_DetectedObjectData_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_DetectedObjectData_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectData = { + "DetectedObjectData", + "DetectedObjectData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObjectData_tags_1, + sizeof(asn_DEF_DetectedObjectData_tags_1) + /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectData_tags_1) + /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObjectData_1, + 2, /* Elements count */ + &asn_SPC_DetectedObjectData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedObjectList.c b/src/tmx/Asn_J2735/src/r2020/DetectedObjectList.c new file mode 100644 index 000000000..9cf444254 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedObjectList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectList.h" + +static asn_oer_constraints_t asn_OER_type_DetectedObjectList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..256)) */}; +asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DetectedObjectList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DetectedObjectData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_DetectedObjectList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1 = { + sizeof(struct DetectedObjectList), + offsetof(struct DetectedObjectList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectList = { + "DetectedObjectList", + "DetectedObjectList", + &asn_OP_SEQUENCE_OF, + asn_DEF_DetectedObjectList_tags_1, + sizeof(asn_DEF_DetectedObjectList_tags_1) + /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectList_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectList_tags_1) + /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ + { &asn_OER_type_DetectedObjectList_constr_1, &asn_PER_type_DetectedObjectList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_DetectedObjectList_1, + 1, /* Single element */ + &asn_SPC_DetectedObjectList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedObjectOptionalData.c b/src/tmx/Asn_J2735/src/r2020/DetectedObjectOptionalData.c new file mode 100644 index 000000000..c00b24eeb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedObjectOptionalData.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectOptionalData.h" + +static asn_oer_constraints_t asn_OER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVeh), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedVehicleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detVeh" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVRU), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedVRUData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detVRU" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detObst), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObstacleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObst" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectOptionalData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detVeh */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* detVRU */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* detObst */ +}; +asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1 = { + sizeof(struct DetectedObjectOptionalData), + offsetof(struct DetectedObjectOptionalData, _asn_ctx), + offsetof(struct DetectedObjectOptionalData, present), + sizeof(((struct DetectedObjectOptionalData *)0)->present), + asn_MAP_DetectedObjectOptionalData_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData = { + "DetectedObjectOptionalData", + "DetectedObjectOptionalData", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_DetectedObjectOptionalData_constr_1, &asn_PER_type_DetectedObjectOptionalData_constr_1, CHOICE_constraint }, + asn_MBR_DetectedObjectOptionalData_1, + 3, /* Elements count */ + &asn_SPC_DetectedObjectOptionalData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedObstacleData.c b/src/tmx/Asn_J2735/src/r2020/DetectedObstacleData.c new file mode 100644 index 000000000..fafab50a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedObstacleData.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObstacleData.h" + +asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSize), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleSize, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obstSize" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSizeConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleSizeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obstSizeConfidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_DetectedObstacleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObstacleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obstSize */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* obstSizeConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1 = { + sizeof(struct DetectedObstacleData), + offsetof(struct DetectedObstacleData, _asn_ctx), + asn_MAP_DetectedObstacleData_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData = { + "DetectedObstacleData", + "DetectedObstacleData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObstacleData_tags_1, + sizeof(asn_DEF_DetectedObstacleData_tags_1) + /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObstacleData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObstacleData_tags_1) + /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObstacleData_1, + 2, /* Elements count */ + &asn_SPC_DetectedObstacleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedVRUData.c b/src/tmx/Asn_J2735/src/r2020/DetectedVRUData.c new file mode 100644 index 000000000..29d981cbe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedVRUData.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedVRUData.h" + +asn_TYPE_member_t asn_MBR_DetectedVRUData_1[] = { + { ATF_POINTER, 4, offsetof(struct DetectedVRUData, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_POINTER, 3, offsetof(struct DetectedVRUData, propulsion), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "propulsion" + }, + { ATF_POINTER, 2, offsetof(struct DetectedVRUData, attachment), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attachment" + }, + { ATF_POINTER, 1, offsetof(struct DetectedVRUData, radius), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "radius" + }, +}; +static const int asn_MAP_DetectedVRUData_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_DetectedVRUData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedVRUData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* radius */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1 = { + sizeof(struct DetectedVRUData), + offsetof(struct DetectedVRUData, _asn_ctx), + asn_MAP_DetectedVRUData_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DetectedVRUData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedVRUData = { + "DetectedVRUData", + "DetectedVRUData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedVRUData_tags_1, + sizeof(asn_DEF_DetectedVRUData_tags_1) + /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ + asn_DEF_DetectedVRUData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedVRUData_tags_1) + /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedVRUData_1, + 4, /* Elements count */ + &asn_SPC_DetectedVRUData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DetectedVehicleData.c b/src/tmx/Asn_J2735/src/r2020/DetectedVehicleData.c new file mode 100644 index 000000000..6fdf3e2e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DetectedVehicleData.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedVehicleData.h" + +asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[] = { + { ATF_POINTER, 10, offsetof(struct DetectedVehicleData, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lights" + }, + { ATF_POINTER, 9, offsetof(struct DetectedVehicleData, vehAttitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAttitude" + }, + { ATF_POINTER, 8, offsetof(struct DetectedVehicleData, vehAttitudeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttitudeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAttitudeConfidence" + }, + { ATF_POINTER, 7, offsetof(struct DetectedVehicleData, vehAngVel), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AngularVelocity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAngVel" + }, + { ATF_POINTER, 6, offsetof(struct DetectedVehicleData, vehAngVelConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AngularVelocityConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAngVelConfidence" + }, + { ATF_POINTER, 5, offsetof(struct DetectedVehicleData, size), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "size" + }, + { ATF_POINTER, 4, offsetof(struct DetectedVehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct DetectedVehicleData, vehicleSizeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSizeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleSizeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct DetectedVehicleData, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleClass" + }, + { ATF_POINTER, 1, offsetof(struct DetectedVehicleData, classConf), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ClassificationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "classConf" + }, +}; +static const int asn_MAP_DetectedVehicleData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_DetectedVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehAttitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehAttitudeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* vehAngVel */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehAngVelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* size */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleSizeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* vehicleClass */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* classConf */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1 = { + sizeof(struct DetectedVehicleData), + offsetof(struct DetectedVehicleData, _asn_ctx), + asn_MAP_DetectedVehicleData_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_DetectedVehicleData_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData = { + "DetectedVehicleData", + "DetectedVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedVehicleData_tags_1, + sizeof(asn_DEF_DetectedVehicleData_tags_1) + /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ + asn_DEF_DetectedVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedVehicleData_tags_1) + /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedVehicleData_1, + 10, /* Elements count */ + &asn_SPC_DetectedVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DirectionOfUse.c b/src/tmx/Asn_J2735/src/r2020/DirectionOfUse.c new file mode 100644 index 000000000..03f207154 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DirectionOfUse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DirectionOfUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 7, "forward" }, + { 2, 7, "reverse" }, + { 3, 4, "both" } +}; +static const unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { + 3, /* both(3) */ + 1, /* forward(1) */ + 2, /* reverse(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { + asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { + "DirectionOfUse", + "DirectionOfUse", + &asn_OP_NativeEnumerated, + asn_DEF_DirectionOfUse_tags_1, + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + asn_DEF_DirectionOfUse_tags_1, /* Same as above */ + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DirectionOfUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DirectionOfUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DisabledVehicle.c b/src/tmx/Asn_J2735/src/r2020/DisabledVehicle.c new file mode 100644 index 000000000..2492f0c4e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DisabledVehicle.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DisabledVehicle.h" + +static int +memb_statusDetails_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523L && value <= 541L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_statusDetails_constr_2 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_statusDetails_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_DisabledVehicle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DisabledVehicle, statusDetails), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_statusDetails_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_statusDetails_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_statusDetails_constraint_1 + }, + 0, 0, /* No default value */ + "statusDetails" + }, + { ATF_POINTER, 1, offsetof(struct DisabledVehicle, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "locationDetails" + }, +}; +static const int asn_MAP_DisabledVehicle_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_DisabledVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DisabledVehicle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusDetails */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* locationDetails */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1 = { + sizeof(struct DisabledVehicle), + offsetof(struct DisabledVehicle, _asn_ctx), + asn_MAP_DisabledVehicle_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_DisabledVehicle_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DisabledVehicle = { + "DisabledVehicle", + "DisabledVehicle", + &asn_OP_SEQUENCE, + asn_DEF_DisabledVehicle_tags_1, + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + asn_DEF_DisabledVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_DisabledVehicle_1, + 2, /* Elements count */ + &asn_SPC_DisabledVehicle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DistanceUnits.c b/src/tmx/Asn_J2735/src/r2020/DistanceUnits.c new file mode 100644 index 000000000..0a1840c9b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DistanceUnits.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DistanceUnits.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_DistanceUnits_value2enum_1[] = { + { 0, 10, "centimeter" }, + { 1, 5, "cm2-5" }, + { 2, 9, "decimeter" }, + { 3, 5, "meter" }, + { 4, 9, "kilometer" }, + { 5, 4, "foot" }, + { 6, 4, "yard" }, + { 7, 4, "mile" } +}; +static const unsigned int asn_MAP_DistanceUnits_enum2value_1[] = { + 0, /* centimeter(0) */ + 1, /* cm2-5(1) */ + 2, /* decimeter(2) */ + 5, /* foot(5) */ + 4, /* kilometer(4) */ + 3, /* meter(3) */ + 7, /* mile(7) */ + 6 /* yard(6) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1 = { + asn_MAP_DistanceUnits_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DistanceUnits_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DistanceUnits_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DistanceUnits = { + "DistanceUnits", + "DistanceUnits", + &asn_OP_NativeEnumerated, + asn_DEF_DistanceUnits_tags_1, + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + asn_DEF_DistanceUnits_tags_1, /* Same as above */ + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DistanceUnits_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DistanceUnits_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DistanceUnits_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/r2020/DriveAxleLiftAirPressure.c new file mode 100644 index 000000000..ca8b6e94a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DriveAxleLiftAirPressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DriveAxleLiftAirPressure.h" + +int +DriveAxleLiftAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { + "DriveAxleLiftAirPressure", + "DriveAxleLiftAirPressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLiftAirPressure_tags_1, + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLiftAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLiftAirPressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLiftAirPressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/r2020/DriveAxleLocation.c new file mode 100644 index 000000000..80dc8f60f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DriveAxleLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DriveAxleLocation.h" + +int +DriveAxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { + "DriveAxleLocation", + "DriveAxleLocation", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLocation_tags_1, + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/r2020/DriveAxleLubePressure.c new file mode 100644 index 000000000..460712a9b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DriveAxleLubePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DriveAxleLubePressure.h" + +int +DriveAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { + "DriveAxleLubePressure", + "DriveAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLubePressure_tags_1, + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleLubePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/r2020/DriveAxleTemperature.c new file mode 100644 index 000000000..a78c327f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DriveAxleTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DriveAxleTemperature.h" + +int +DriveAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40L && value <= 210L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { + "DriveAxleTemperature", + "DriveAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleTemperature_tags_1, + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DriveAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DriveAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DriveAxleTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetLg.c new file mode 100644 index 000000000..5eeb0c6a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetLg.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DrivenLineOffsetLg.h" + +int +DrivenLineOffsetLg_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { + "DrivenLineOffsetLg", + "DrivenLineOffsetLg", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetLg_tags_1, + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivenLineOffsetLg_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivenLineOffsetLg_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivenLineOffsetLg_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetSm.c new file mode 100644 index 000000000..e3fc782cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DrivenLineOffsetSm.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DrivenLineOffsetSm.h" + +int +DrivenLineOffsetSm_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2047L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2047..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { + "DrivenLineOffsetSm", + "DrivenLineOffsetSm", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetSm_tags_1, + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivenLineOffsetSm_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivenLineOffsetSm_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivenLineOffsetSm_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/r2020/DrivingWheelAngle.c new file mode 100644 index 000000000..aa67e953f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DrivingWheelAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "DrivingWheelAngle.h" + +int +DrivingWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { + "DrivingWheelAngle", + "DrivingWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_DrivingWheelAngle_tags_1, + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_DrivingWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_DrivingWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + DrivingWheelAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Duration.c b/src/tmx/Asn_J2735/src/r2020/Duration.c new file mode 100644 index 000000000..6fbf67731 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Duration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Duration.h" + +int +Duration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 3600L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Duration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..3600) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Duration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 3600 } /* (0..3600) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Duration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Duration = { + "Duration", + "Duration", + &asn_OP_NativeInteger, + asn_DEF_Duration_tags_1, + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + asn_DEF_Duration_tags_1, /* Same as above */ + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Duration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Duration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Duration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EXTERNAL.c b/src/tmx/Asn_J2735/src/r2020/EXTERNAL.c new file mode 100644 index 000000000..718adff91 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EXTERNAL.c @@ -0,0 +1,228 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EXTERNAL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_encoding_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_encoding_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_encoding_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.single_ASN1_type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ANY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "single-ASN1-type" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.octet_aligned), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "octet-aligned" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.arbitrary), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "arbitrary" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_encoding_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* arbitrary */ +}; +static asn_CHOICE_specifics_t asn_SPC_encoding_specs_5 = { + sizeof(struct EXTERNAL__encoding), + offsetof(struct EXTERNAL__encoding, _asn_ctx), + offsetof(struct EXTERNAL__encoding, present), + sizeof(((struct EXTERNAL__encoding *)0)->present), + asn_MAP_encoding_tag2el_5, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_encoding_5 = { + "encoding", + "encoding", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_encoding_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_encoding_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_encoding_5, + 3, /* Elements count */ + &asn_SPC_encoding_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_EXTERNAL_1[] = { + { ATF_POINTER, 3, offsetof(struct EXTERNAL, direct_reference), + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), + 0, + &asn_DEF_OBJECT_IDENTIFIER, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direct-reference" + }, + { ATF_POINTER, 2, offsetof(struct EXTERNAL, indirect_reference), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "indirect-reference" + }, + { ATF_POINTER, 1, offsetof(struct EXTERNAL, data_value_descriptor), + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), + 0, + &asn_DEF_ObjectDescriptor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data-value-descriptor" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL, encoding), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_encoding_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "encoding" + }, +}; +static const int asn_MAP_EXTERNAL_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_EXTERNAL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EXTERNAL_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* indirect-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), 0, 0, 0 }, /* direct-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), 2, 0, 0 }, /* data-value-descriptor */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 } /* arbitrary */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EXTERNAL_specs_1 = { + sizeof(struct EXTERNAL), + offsetof(struct EXTERNAL, _asn_ctx), + asn_MAP_EXTERNAL_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EXTERNAL_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EXTERNAL = { + "EXTERNAL", + "EXTERNAL", + &asn_OP_SEQUENCE, + asn_DEF_EXTERNAL_tags_1, + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]) - 1, /* 1 */ + asn_DEF_EXTERNAL_tags_1, /* Same as above */ + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EXTERNAL_1, + 4, /* Elements count */ + &asn_SPC_EXTERNAL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ElevationConfidence.c b/src/tmx/Asn_J2735/src/r2020/ElevationConfidence.c new file mode 100644 index 000000000..5af6de8f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ElevationConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ElevationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "elev-500-00" }, + { 2, 11, "elev-200-00" }, + { 3, 11, "elev-100-00" }, + { 4, 11, "elev-050-00" }, + { 5, 11, "elev-020-00" }, + { 6, 11, "elev-010-00" }, + { 7, 11, "elev-005-00" }, + { 8, 11, "elev-002-00" }, + { 9, 11, "elev-001-00" }, + { 10, 11, "elev-000-50" }, + { 11, 11, "elev-000-20" }, + { 12, 11, "elev-000-10" }, + { 13, 11, "elev-000-05" }, + { 14, 11, "elev-000-02" }, + { 15, 11, "elev-000-01" } +}; +static const unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { + 15, /* elev-000-01(15) */ + 14, /* elev-000-02(14) */ + 13, /* elev-000-05(13) */ + 12, /* elev-000-10(12) */ + 11, /* elev-000-20(11) */ + 10, /* elev-000-50(10) */ + 9, /* elev-001-00(9) */ + 8, /* elev-002-00(8) */ + 7, /* elev-005-00(7) */ + 6, /* elev-010-00(6) */ + 5, /* elev-020-00(5) */ + 4, /* elev-050-00(4) */ + 3, /* elev-100-00(3) */ + 2, /* elev-200-00(2) */ + 1, /* elev-500-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { + asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { + "ElevationConfidence", + "ElevationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ElevationConfidence_tags_1, + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ElevationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ElevationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ElevationConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EmergencyDetails.c b/src/tmx/Asn_J2735/src/r2020/EmergencyDetails.c new file mode 100644 index 000000000..db3ab4c47 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EmergencyDetails.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EmergencyDetails.h" + +asn_TYPE_member_t asn_MBR_EmergencyDetails_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sirenUse), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SirenInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sirenUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, lightsUse), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lightsUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, multi), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MultiVehicleResponse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "multi" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyDetails, events), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEvents, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyDetails, responseType), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseType" + }, +}; +static const int asn_MAP_EmergencyDetails_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sirenUse */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lightsUse */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* multi */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* responseType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1 = { + sizeof(struct EmergencyDetails), + offsetof(struct EmergencyDetails, _asn_ctx), + asn_MAP_EmergencyDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EmergencyDetails_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { + "EmergencyDetails", + "EmergencyDetails", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyDetails_tags_1, + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + asn_DEF_EmergencyDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EmergencyDetails_1, + 6, /* Elements count */ + &asn_SPC_EmergencyDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/r2020/EmergencyVehicleAlert.c new file mode 100644 index 000000000..f55d9e070 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EmergencyVehicleAlert.c @@ -0,0 +1,351 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "EmergencyVehicleAlert" + * found in "J2735-EmergencyVehicleAlert.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EmergencyVehicleAlert.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_EmergencyVehicleAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct EmergencyVehicleAlert__regional), + offsetof(struct EmergencyVehicleAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rsaMsg" + }, + { ATF_POINTER, 8, offsetof(struct EmergencyVehicleAlert, responseType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseType" + }, + { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, details), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "details" + }, + { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, mass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, basicType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responderType), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10 }; +static const ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { + sizeof(struct EmergencyVehicleAlert), + offsetof(struct EmergencyVehicleAlert, _asn_ctx), + asn_MAP_EmergencyVehicleAlert_tag2el_1, + 11, /* Count of tags in the map */ + asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 11, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { + "EmergencyVehicleAlert", + "EmergencyVehicleAlert", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyVehicleAlert_tags_1, + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EmergencyVehicleAlert_1, + 11, /* Elements count */ + &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EmissionType.c b/src/tmx/Asn_J2735/src/r2020/EmissionType.c new file mode 100644 index 000000000..af7fb28c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EmissionType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EmissionType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EmissionType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EmissionType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { + { 0, 5, "typeA" }, + { 1, 5, "typeB" }, + { 2, 5, "typeC" }, + { 3, 5, "typeD" }, + { 4, 5, "typeE" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_EmissionType_enum2value_1[] = { + 0, /* typeA(0) */ + 1, /* typeB(1) */ + 2, /* typeC(2) */ + 3, /* typeD(3) */ + 4 /* typeE(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { + asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EmissionType = { + "EmissionType", + "EmissionType", + &asn_OP_NativeEnumerated, + asn_DEF_EmissionType_tags_1, + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + asn_DEF_EmissionType_tags_1, /* Same as above */ + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EmissionType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EmissionType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EmissionType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EnabledLaneList.c b/src/tmx/Asn_J2735/src/r2020/EnabledLaneList.c new file mode 100644 index 000000000..a2c1f3d8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EnabledLaneList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EnabledLaneList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { + sizeof(struct EnabledLaneList), + offsetof(struct EnabledLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { + "EnabledLaneList", + "EnabledLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_EnabledLaneList_tags_1, + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + asn_DEF_EnabledLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EnabledLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EnabledLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_EnabledLaneList_1, + 1, /* Single element */ + &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EpochMins.c b/src/tmx/Asn_J2735/src/r2020/EpochMins.c new file mode 100644 index 000000000..2c289fae8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EpochMins.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EpochMins.h" + +int +EpochMins_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 153722867280912)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using INTEGER, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EpochMins_constr_1 CC_NOTUSED = { + { 8, 1 } /* (0..153722867280912) */, + -1}; +asn_per_constraints_t asn_PER_type_EpochMins_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 48, -1, 0, 153722867280912 } /* (0..153722867280912) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EpochMins_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EpochMins = { + "EpochMins", + "EpochMins", + &asn_OP_INTEGER, + asn_DEF_EpochMins_tags_1, + sizeof(asn_DEF_EpochMins_tags_1) + /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ + asn_DEF_EpochMins_tags_1, /* Same as above */ + sizeof(asn_DEF_EpochMins_tags_1) + /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ + { &asn_OER_type_EpochMins_constr_1, &asn_PER_type_EpochMins_constr_1, EpochMins_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EquipmentType.c b/src/tmx/Asn_J2735/src/r2020/EquipmentType.c new file mode 100644 index 000000000..7707fbfe9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EquipmentType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "EquipmentType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EquipmentType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_EquipmentType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_EquipmentType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 3, "rsu" }, + { 2, 3, "obu" }, + { 3, 3, "vru" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_EquipmentType_enum2value_1[] = { + 2, /* obu(2) */ + 1, /* rsu(1) */ + 0, /* unknown(0) */ + 3 /* vru(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1 = { + asn_MAP_EquipmentType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EquipmentType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EquipmentType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EquipmentType = { + "EquipmentType", + "EquipmentType", + &asn_OP_NativeEnumerated, + asn_DEF_EquipmentType_tags_1, + sizeof(asn_DEF_EquipmentType_tags_1) + /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ + asn_DEF_EquipmentType_tags_1, /* Same as above */ + sizeof(asn_DEF_EquipmentType_tags_1) + /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ + { &asn_OER_type_EquipmentType_constr_1, &asn_PER_type_EquipmentType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EquipmentType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EssMobileFriction.c b/src/tmx/Asn_J2735/src/r2020/EssMobileFriction.c new file mode 100644 index 000000000..4a4b8b020 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EssMobileFriction.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EssMobileFriction.h" + +int +EssMobileFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 101L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..101) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { + "EssMobileFriction", + "EssMobileFriction", + &asn_OP_NativeInteger, + asn_DEF_EssMobileFriction_tags_1, + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + asn_DEF_EssMobileFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssMobileFriction_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssMobileFriction_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssMobileFriction_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EssPrecipRate.c b/src/tmx/Asn_J2735/src/r2020/EssPrecipRate.c new file mode 100644 index 000000000..65a319a7c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EssPrecipRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EssPrecipRate.h" + +int +EssPrecipRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { + "EssPrecipRate", + "EssPrecipRate", + &asn_OP_NativeInteger, + asn_DEF_EssPrecipRate_tags_1, + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipRate_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssPrecipRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/r2020/EssPrecipSituation.c new file mode 100644 index 000000000..5bc519482 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EssPrecipSituation.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EssPrecipSituation.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { + { 1, 5, "other" }, + { 2, 7, "unknown" }, + { 3, 15, "noPrecipitation" }, + { 4, 18, "unidentifiedSlight" }, + { 5, 20, "unidentifiedModerate" }, + { 6, 17, "unidentifiedHeavy" }, + { 7, 10, "snowSlight" }, + { 8, 12, "snowModerate" }, + { 9, 9, "snowHeavy" }, + { 10, 10, "rainSlight" }, + { 11, 12, "rainModerate" }, + { 12, 9, "rainHeavy" }, + { 13, 25, "frozenPrecipitationSlight" }, + { 14, 27, "frozenPrecipitationModerate" }, + { 15, 24, "frozenPrecipitationHeavy" } +}; +static const unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { + 14, /* frozenPrecipitationHeavy(15) */ + 13, /* frozenPrecipitationModerate(14) */ + 12, /* frozenPrecipitationSlight(13) */ + 2, /* noPrecipitation(3) */ + 0, /* other(1) */ + 11, /* rainHeavy(12) */ + 10, /* rainModerate(11) */ + 9, /* rainSlight(10) */ + 8, /* snowHeavy(9) */ + 7, /* snowModerate(8) */ + 6, /* snowSlight(7) */ + 5, /* unidentifiedHeavy(6) */ + 4, /* unidentifiedModerate(5) */ + 3, /* unidentifiedSlight(4) */ + 1 /* unknown(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { + asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ + 15, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { + "EssPrecipSituation", + "EssPrecipSituation", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipSituation_tags_1, + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipSituation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipSituation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/r2020/EssPrecipYesNo.c new file mode 100644 index 000000000..261fc072e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EssPrecipYesNo.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EssPrecipYesNo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { + { 1, 6, "precip" }, + { 2, 8, "noPrecip" }, + { 3, 5, "error" } +}; +static const unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { + 2, /* error(3) */ + 1, /* noPrecip(2) */ + 0 /* precip(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { + asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { + "EssPrecipYesNo", + "EssPrecipYesNo", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipYesNo_tags_1, + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssPrecipYesNo_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssPrecipYesNo_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/r2020/EssSolarRadiation.c new file mode 100644 index 000000000..dc85834a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EssSolarRadiation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735-NTCIP.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EssSolarRadiation.h" + +int +EssSolarRadiation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { + "EssSolarRadiation", + "EssSolarRadiation", + &asn_OP_NativeInteger, + asn_DEF_EssSolarRadiation_tags_1, + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_EssSolarRadiation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_EssSolarRadiation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + EssSolarRadiation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/EventDescription.c b/src/tmx/Asn_J2735/src/r2020/EventDescription.c new file mode 100644 index 000000000..78f235dfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/EventDescription.c @@ -0,0 +1,364 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "EventDescription.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_3 = { + sizeof(struct EventDescription__description), + offsetof(struct EventDescription__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_3 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_3, + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]) - 1, /* 1 */ + asn_DEF_description_tags_3, /* Same as above */ + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_description_3, + 1, /* Single element */ + &asn_SPC_description_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_EventDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct EventDescription__regional), + offsetof(struct EventDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventDescription, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 5, offsetof(struct EventDescription, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_description_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 4, offsetof(struct EventDescription, priority), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 3, offsetof(struct EventDescription, heading), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 2, offsetof(struct EventDescription, extent), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct EventDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EventDescription_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EventDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1 = { + sizeof(struct EventDescription), + offsetof(struct EventDescription, _asn_ctx), + asn_MAP_EventDescription_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EventDescription_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventDescription = { + "EventDescription", + "EventDescription", + &asn_OP_SEQUENCE, + asn_DEF_EventDescription_tags_1, + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + asn_DEF_EventDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_EventDescription_1, + 6, /* Elements count */ + &asn_SPC_EventDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ExitService.c b/src/tmx/Asn_J2735/src/r2020/ExitService.c new file mode 100644 index 000000000..d53aabbf0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ExitService.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ExitService.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ExitService_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ExitService_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ExitService__Member__item), + offsetof(struct ExitService__Member__item, _asn_ctx), + offsetof(struct ExitService__Member__item, present), + sizeof(((struct ExitService__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ExitService__Member), + offsetof(struct ExitService__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ExitService_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { + sizeof(struct ExitService), + offsetof(struct ExitService, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ExitService = { + "ExitService", + "ExitService", + &asn_OP_SEQUENCE_OF, + asn_DEF_ExitService_tags_1, + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + asn_DEF_ExitService_tags_1, /* Same as above */ + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ExitService_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ExitService_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ExitService_1, + 1, /* Single element */ + &asn_SPC_ExitService_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Extent.c b/src/tmx/Asn_J2735/src/r2020/Extent.c new file mode 100644 index 000000000..7bb5d50c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Extent.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Extent.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Extent_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Extent_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { + { 0, 16, "useInstantlyOnly" }, + { 1, 13, "useFor3meters" }, + { 2, 14, "useFor10meters" }, + { 3, 14, "useFor50meters" }, + { 4, 15, "useFor100meters" }, + { 5, 15, "useFor500meters" }, + { 6, 16, "useFor1000meters" }, + { 7, 16, "useFor5000meters" }, + { 8, 17, "useFor10000meters" }, + { 9, 17, "useFor50000meters" }, + { 10, 18, "useFor100000meters" }, + { 11, 18, "useFor500000meters" }, + { 12, 19, "useFor1000000meters" }, + { 13, 19, "useFor5000000meters" }, + { 14, 20, "useFor10000000meters" }, + { 15, 7, "forever" } +}; +static const unsigned int asn_MAP_Extent_enum2value_1[] = { + 15, /* forever(15) */ + 14, /* useFor10000000meters(14) */ + 12, /* useFor1000000meters(12) */ + 10, /* useFor100000meters(10) */ + 8, /* useFor10000meters(8) */ + 6, /* useFor1000meters(6) */ + 4, /* useFor100meters(4) */ + 2, /* useFor10meters(2) */ + 1, /* useFor3meters(1) */ + 13, /* useFor5000000meters(13) */ + 11, /* useFor500000meters(11) */ + 9, /* useFor50000meters(9) */ + 7, /* useFor5000meters(7) */ + 5, /* useFor500meters(5) */ + 3, /* useFor50meters(3) */ + 0 /* useInstantlyOnly(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { + asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Extent = { + "Extent", + "Extent", + &asn_OP_NativeEnumerated, + asn_DEF_Extent_tags_1, + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + asn_DEF_Extent_tags_1, /* Same as above */ + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Extent_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Extent_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Extent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ExteriorLights.c b/src/tmx/Asn_J2735/src/r2020/ExteriorLights.c new file mode 100644 index 000000000..3b7b2d2d4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ExteriorLights.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ExteriorLights.h" + +int +ExteriorLights_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { + "ExteriorLights", + "ExteriorLights", + &asn_OP_BIT_STRING, + asn_DEF_ExteriorLights_tags_1, + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + asn_DEF_ExteriorLights_tags_1, /* Same as above */ + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ExteriorLights_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ExteriorLights_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ExteriorLights_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/FuelType.c b/src/tmx/Asn_J2735/src/r2020/FuelType.c new file mode 100644 index 000000000..9e8cb58b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/FuelType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "FuelType.h" + +int +FuelType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_FuelType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_FuelType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_FuelType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FuelType = { + "FuelType", + "FuelType", + &asn_OP_NativeInteger, + asn_DEF_FuelType_tags_1, + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + asn_DEF_FuelType_tags_1, /* Same as above */ + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_FuelType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_FuelType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + FuelType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/FullPositionVector.c b/src/tmx/Asn_J2735/src/r2020/FullPositionVector.c new file mode 100644 index 000000000..95c1d7112 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/FullPositionVector.c @@ -0,0 +1,230 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "FullPositionVector.h" + +asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { + { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "utcTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedConfidence" + }, +}; +static const int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { + sizeof(struct FullPositionVector), + offsetof(struct FullPositionVector, _asn_ctx), + asn_MAP_FullPositionVector_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_FullPositionVector_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { + "FullPositionVector", + "FullPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_FullPositionVector_tags_1, + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + asn_DEF_FullPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_FullPositionVector_1, + 10, /* Elements count */ + &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/FurtherInfoID.c b/src/tmx/Asn_J2735/src/r2020/FurtherInfoID.c new file mode 100644 index 000000000..9bcc0a306 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/FurtherInfoID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "FurtherInfoID.h" + +int +FurtherInfoID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { + "FurtherInfoID", + "FurtherInfoID", + &asn_OP_OCTET_STRING, + asn_DEF_FurtherInfoID_tags_1, + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + asn_DEF_FurtherInfoID_tags_1, /* Same as above */ + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_FurtherInfoID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_FurtherInfoID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + FurtherInfoID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GNSSstatus.c b/src/tmx/Asn_J2735/src/r2020/GNSSstatus.c new file mode 100644 index 000000000..3b2ba4b0a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GNSSstatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GNSSstatus.h" + +int +GNSSstatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GNSSstatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GNSSstatus = { + "GNSSstatus", + "GNSSstatus", + &asn_OP_BIT_STRING, + asn_DEF_GNSSstatus_tags_1, + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + asn_DEF_GNSSstatus_tags_1, /* Same as above */ + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GNSSstatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GNSSstatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GNSSstatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GenericLane.c b/src/tmx/Asn_J2735/src/r2020/GenericLane.c new file mode 100644 index 000000000..dc3e5667a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GenericLane.c @@ -0,0 +1,333 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GenericLane.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct GenericLane__regional), + offsetof(struct GenericLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneID" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ingressApproach" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "egressApproach" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneAttributes" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuvers" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectsToList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connectsTo" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OverlayLaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "overlays" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { + sizeof(struct GenericLane), + offsetof(struct GenericLane, _asn_ctx), + asn_MAP_GenericLane_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_GenericLane_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericLane = { + "GenericLane", + "GenericLane", + &asn_OP_SEQUENCE, + asn_DEF_GenericLane_tags_1, + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + asn_DEF_GenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GenericLane_1, + 10, /* Elements count */ + &asn_SPC_GenericLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GenericLocations.c b/src/tmx/Asn_J2735/src/r2020/GenericLocations.c new file mode 100644 index 000000000..c7bbf1627 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GenericLocations.c @@ -0,0 +1,258 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GenericLocations.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GenericLocations_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GenericLocations_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 95 } /* (0..95,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_GenericLocations_value2enum_1[] = { + { 7937, 10, "on-bridges" }, + { 7938, 10, "in-tunnels" }, + { 7939, 27, "entering-or-leaving-tunnels" }, + { 7940, 8, "on-ramps" }, + { 7941, 25, "in-road-construction-area" }, + { 7942, 14, "around-a-curve" }, + { 7943, 14, "on-minor-roads" }, + { 7944, 21, "in-the-opposing-lanes" }, + { 7945, 19, "adjacent-to-roadway" }, + { 7946, 7, "on-bend" }, + { 7947, 19, "entire-intersection" }, + { 7948, 13, "in-the-median" }, + { 7949, 21, "moved-to-side-of-road" }, + { 7950, 17, "moved-to-shoulder" }, + { 7951, 14, "on-the-roadway" }, + { 7952, 15, "in-shaded-areas" }, + { 7953, 18, "in-low-lying-areas" }, + { 7954, 20, "in-the-downtown-area" }, + { 7955, 22, "in-the-inner-city-area" }, + { 7956, 8, "in-parts" }, + { 7957, 14, "in-some-places" }, + { 7958, 12, "in-the-ditch" }, + { 7959, 13, "in-the-valley" }, + { 7960, 11, "on-hill-top" }, + { 7961, 18, "near-the-foothills" }, + { 7962, 17, "at-high-altitudes" }, + { 7963, 13, "near-the-lake" }, + { 7964, 14, "near-the-shore" }, + { 7965, 24, "over-the-crest-of-a-hill" }, + { 7966, 25, "other-than-on-the-roadway" }, + { 7967, 14, "near-the-beach" }, + { 7968, 23, "near-beach-access-point" }, + { 7969, 11, "lower-level" }, + { 7970, 11, "upper-level" }, + { 7971, 7, "airport" }, + { 7972, 9, "concourse" }, + { 7973, 4, "gate" }, + { 7974, 13, "baggage-claim" }, + { 7975, 13, "customs-point" }, + { 7976, 7, "station" }, + { 7977, 8, "platform" }, + { 7978, 4, "dock" }, + { 7979, 5, "depot" }, + { 7980, 17, "ev-charging-point" }, + { 7981, 25, "information-welcome-point" }, + { 7982, 12, "at-rest-area" }, + { 7983, 15, "at-service-area" }, + { 7984, 16, "at-weigh-station" }, + { 7985, 12, "picnic-areas" }, + { 7986, 9, "rest-area" }, + { 7987, 16, "service-stations" }, + { 7988, 7, "toilets" }, + { 7989, 12, "on-the-right" }, + { 7990, 11, "on-the-left" }, + { 7991, 13, "in-the-center" }, + { 7992, 25, "in-the-opposite-direction" }, + { 7993, 13, "cross-traffic" }, + { 7994, 18, "northbound-traffic" }, + { 7995, 17, "eastbound-traffic" }, + { 7996, 18, "southbound-traffic" }, + { 7997, 17, "westbound-traffic" }, + { 7998, 5, "north" }, + { 7999, 5, "south" }, + { 8000, 4, "east" }, + { 8001, 4, "west" }, + { 8002, 9, "northeast" }, + { 8003, 9, "northwest" }, + { 8004, 9, "southeast" }, + { 8005, 9, "southwest" }, + { 8006, 13, "mountain-pass" }, + { 8007, 18, "reservation-center" }, + { 8008, 12, "nearby-basin" }, + { 8009, 9, "on-tracks" }, + { 8010, 3, "dip" }, + { 8011, 14, "traffic-circle" }, + { 8012, 17, "park-and-ride-lot" }, + { 8014, 2, "to" }, + { 8015, 2, "by" }, + { 8016, 7, "through" }, + { 8017, 7, "area-of" }, + { 8018, 5, "under" }, + { 8019, 4, "over" }, + { 8020, 4, "from" }, + { 8021, 11, "approaching" }, + { 8022, 11, "entering-at" }, + { 8023, 10, "exiting-at" }, + { 8024, 13, "across-tracks" }, + { 8025, 9, "in-street" }, + { 8026, 8, "on-curve" }, + { 8027, 8, "shoulder" }, + { 8028, 9, "crossover" }, + { 8029, 10, "cross-road" }, + { 8030, 9, "side-road" }, + { 8031, 8, "bus-stop" }, + { 8032, 12, "intersection" }, + { 8033, 13, "roadside-park" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_GenericLocations_enum2value_1[] = { + 86, /* across-tracks(8024) */ + 8, /* adjacent-to-roadway(7945) */ + 34, /* airport(7971) */ + 83, /* approaching(8021) */ + 79, /* area-of(8017) */ + 5, /* around-a-curve(7942) */ + 25, /* at-high-altitudes(7962) */ + 45, /* at-rest-area(7982) */ + 46, /* at-service-area(7983) */ + 47, /* at-weigh-station(7984) */ + 37, /* baggage-claim(7974) */ + 93, /* bus-stop(8031) */ + 77, /* by(8015) */ + 35, /* concourse(7972) */ + 91, /* cross-road(8029) */ + 56, /* cross-traffic(7993) */ + 90, /* crossover(8028) */ + 38, /* customs-point(7975) */ + 42, /* depot(7979) */ + 73, /* dip(8010) */ + 41, /* dock(7978) */ + 63, /* east(8000) */ + 58, /* eastbound-traffic(7995) */ + 84, /* entering-at(8022) */ + 2, /* entering-or-leaving-tunnels(7939) */ + 10, /* entire-intersection(7947) */ + 43, /* ev-charging-point(7980) */ + 85, /* exiting-at(8023) */ + 82, /* from(8020) */ + 36, /* gate(7973) */ + 16, /* in-low-lying-areas(7953) */ + 19, /* in-parts(7956) */ + 4, /* in-road-construction-area(7941) */ + 15, /* in-shaded-areas(7952) */ + 20, /* in-some-places(7957) */ + 87, /* in-street(8025) */ + 54, /* in-the-center(7991) */ + 21, /* in-the-ditch(7958) */ + 17, /* in-the-downtown-area(7954) */ + 18, /* in-the-inner-city-area(7955) */ + 11, /* in-the-median(7948) */ + 7, /* in-the-opposing-lanes(7944) */ + 55, /* in-the-opposite-direction(7992) */ + 22, /* in-the-valley(7959) */ + 1, /* in-tunnels(7938) */ + 44, /* information-welcome-point(7981) */ + 94, /* intersection(8032) */ + 32, /* lower-level(7969) */ + 69, /* mountain-pass(8006) */ + 13, /* moved-to-shoulder(7950) */ + 12, /* moved-to-side-of-road(7949) */ + 31, /* near-beach-access-point(7968) */ + 30, /* near-the-beach(7967) */ + 24, /* near-the-foothills(7961) */ + 26, /* near-the-lake(7963) */ + 27, /* near-the-shore(7964) */ + 71, /* nearby-basin(8008) */ + 61, /* north(7998) */ + 57, /* northbound-traffic(7994) */ + 65, /* northeast(8002) */ + 66, /* northwest(8003) */ + 9, /* on-bend(7946) */ + 0, /* on-bridges(7937) */ + 88, /* on-curve(8026) */ + 23, /* on-hill-top(7960) */ + 6, /* on-minor-roads(7943) */ + 3, /* on-ramps(7940) */ + 53, /* on-the-left(7990) */ + 52, /* on-the-right(7989) */ + 14, /* on-the-roadway(7951) */ + 72, /* on-tracks(8009) */ + 29, /* other-than-on-the-roadway(7966) */ + 81, /* over(8019) */ + 28, /* over-the-crest-of-a-hill(7965) */ + 75, /* park-and-ride-lot(8012) */ + 48, /* picnic-areas(7985) */ + 40, /* platform(7977) */ + 70, /* reservation-center(8007) */ + 49, /* rest-area(7986) */ + 95, /* roadside-park(8033) */ + 50, /* service-stations(7987) */ + 89, /* shoulder(8027) */ + 92, /* side-road(8030) */ + 62, /* south(7999) */ + 59, /* southbound-traffic(7996) */ + 67, /* southeast(8004) */ + 68, /* southwest(8005) */ + 39, /* station(7976) */ + 78, /* through(8016) */ + 76, /* to(8014) */ + 51, /* toilets(7988) */ + 74, /* traffic-circle(8011) */ + 80, /* under(8018) */ + 33, /* upper-level(7970) */ + 64, /* west(8001) */ + 60 /* westbound-traffic(7997) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1 = { + asn_MAP_GenericLocations_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_GenericLocations_enum2value_1, /* N => "tag"; sorted by N */ + 96, /* Number of elements in the maps */ + 97, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_GenericLocations_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GenericLocations = { + "GenericLocations", + "GenericLocations", + &asn_OP_NativeEnumerated, + asn_DEF_GenericLocations_tags_1, + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + asn_DEF_GenericLocations_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GenericLocations_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GenericLocations_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_GenericLocations_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GenericSignage.c b/src/tmx/Asn_J2735/src/r2020/GenericSignage.c new file mode 100644 index 000000000..a5c5be0d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GenericSignage.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GenericSignage.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GenericSignage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct GenericSignage__Member__item), + offsetof(struct GenericSignage__Member__item, _asn_ctx), + offsetof(struct GenericSignage__Member__item, present), + sizeof(((struct GenericSignage__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct GenericSignage__Member), + offsetof(struct GenericSignage__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { + sizeof(struct GenericSignage), + offsetof(struct GenericSignage, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericSignage = { + "GenericSignage", + "GenericSignage", + &asn_OP_SEQUENCE_OF, + asn_DEF_GenericSignage_tags_1, + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + asn_DEF_GenericSignage_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GenericSignage_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GenericSignage_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_GenericSignage_1, + 1, /* Single element */ + &asn_SPC_GenericSignage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GeographicalPath.c b/src/tmx/Asn_J2735/src/r2020/GeographicalPath.c new file mode 100644 index 000000000..b539b2dac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GeographicalPath.c @@ -0,0 +1,418 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GeographicalPath.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_9 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.path), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetSystem, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "path" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.geometry), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GeometricProjection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "geometry" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.oldRegion), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ValidRegion, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "oldRegion" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_description_tag2el_9[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* geometry */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oldRegion */ +}; +static asn_CHOICE_specifics_t asn_SPC_description_specs_9 = { + sizeof(struct GeographicalPath__description), + offsetof(struct GeographicalPath__description, _asn_ctx), + offsetof(struct GeographicalPath__description, present), + sizeof(((struct GeographicalPath__description *)0)->present), + asn_MAP_description_tag2el_9, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_9 = { + "description", + "description", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_description_9, + 3, /* Elements count */ + &asn_SPC_description_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_14[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GeographicalPath, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_14 = { + sizeof(struct GeographicalPath__regional), + offsetof(struct GeographicalPath__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_14 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_14, + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]) - 1, /* 1 */ + asn_DEF_regional_tags_14, /* Same as above */ + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_14, + 1, /* Single element */ + &asn_SPC_regional_specs_14 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeographicalPath_1[] = { + { ATF_POINTER, 9, offsetof(struct GeographicalPath, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 8, offsetof(struct GeographicalPath, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 7, offsetof(struct GeographicalPath, anchor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 6, offsetof(struct GeographicalPath, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 5, offsetof(struct GeographicalPath, directionality), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_POINTER, 4, offsetof(struct GeographicalPath, closedPath), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "closedPath" + }, + { ATF_POINTER, 3, offsetof(struct GeographicalPath, direction), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeographicalPath, description), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_description_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct GeographicalPath, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeographicalPath_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_GeographicalPath_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeographicalPath_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closedPath */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1 = { + sizeof(struct GeographicalPath), + offsetof(struct GeographicalPath, _asn_ctx), + asn_MAP_GeographicalPath_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_GeographicalPath_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeographicalPath = { + "GeographicalPath", + "GeographicalPath", + &asn_OP_SEQUENCE, + asn_DEF_GeographicalPath_tags_1, + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + asn_DEF_GeographicalPath_tags_1, /* Same as above */ + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GeographicalPath_1, + 9, /* Elements count */ + &asn_SPC_GeographicalPath_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GeometricProjection.c b/src/tmx/Asn_J2735/src/r2020/GeometricProjection.c new file mode 100644 index 000000000..44cc152ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GeometricProjection.c @@ -0,0 +1,243 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GeometricProjection.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_GeometricProjection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct GeometricProjection__regional), + offsetof(struct GeometricProjection__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeometricProjection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeometricProjection, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, circle), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeometricProjection_oms_1[] = { 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_GeometricProjection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeometricProjection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1 = { + sizeof(struct GeometricProjection), + offsetof(struct GeometricProjection, _asn_ctx), + asn_MAP_GeometricProjection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_GeometricProjection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeometricProjection = { + "GeometricProjection", + "GeometricProjection", + &asn_OP_SEQUENCE, + asn_DEF_GeometricProjection_tags_1, + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + asn_DEF_GeometricProjection_tags_1, /* Same as above */ + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_GeometricProjection_1, + 5, /* Elements count */ + &asn_SPC_GeometricProjection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GraphicString.c b/src/tmx/Asn_J2735/src/r2020/GraphicString.c new file mode 100644 index 000000000..b76118710 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GraphicString.c @@ -0,0 +1,91 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * GraphicString basic type description. + */ +static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_GraphicString = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, /* non-ascii string */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer, /* Can't expect it to be ASCII/UTF8 */ +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_GraphicString = { + "GraphicString", + "GraphicString", + &asn_OP_GraphicString, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]) - 1, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_unknown_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; diff --git a/src/tmx/Asn_J2735/src/r2020/GrossDistance.c b/src/tmx/Asn_J2735/src/r2020/GrossDistance.c new file mode 100644 index 000000000..4c5972119 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GrossDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GrossDistance.h" + +int +GrossDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GrossDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GrossDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GrossDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossDistance = { + "GrossDistance", + "GrossDistance", + &asn_OP_NativeInteger, + asn_DEF_GrossDistance_tags_1, + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + asn_DEF_GrossDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GrossDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GrossDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GrossDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/GrossSpeed.c b/src/tmx/Asn_J2735/src/r2020/GrossSpeed.c new file mode 100644 index 000000000..81205ea1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/GrossSpeed.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "GrossSpeed.h" + +int +GrossSpeed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_GrossSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossSpeed = { + "GrossSpeed", + "GrossSpeed", + &asn_OP_NativeInteger, + asn_DEF_GrossSpeed_tags_1, + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + asn_DEF_GrossSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_GrossSpeed_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_GrossSpeed_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + GrossSpeed_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Header.c b/src/tmx/Asn_J2735/src/r2020/Header.c new file mode 100644 index 000000000..2178920c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Header.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Header.h" + +asn_TYPE_member_t asn_MBR_Header_1[] = { + { ATF_POINTER, 4, offsetof(struct Header, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 3, offsetof(struct Header, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct Header, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_POINTER, 1, offsetof(struct Header, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, +}; +static const int asn_MAP_Header_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Header_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Header_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* msgIssueRevision */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1 = { + sizeof(struct Header), + offsetof(struct Header, _asn_ctx), + asn_MAP_Header_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Header_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Header = { + "Header", + "Header", + &asn_OP_SEQUENCE, + asn_DEF_Header_tags_1, + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + asn_DEF_Header_tags_1, /* Same as above */ + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Header_1, + 4, /* Elements count */ + &asn_SPC_Header_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Heading.c b/src/tmx/Asn_J2735/src/r2020/Heading.c new file mode 100644 index 000000000..fd3d3ac3d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Heading.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Heading.h" + +int +Heading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Heading_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Heading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Heading = { + "Heading", + "Heading", + &asn_OP_NativeInteger, + asn_DEF_Heading_tags_1, + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + asn_DEF_Heading_tags_1, /* Same as above */ + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Heading_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Heading_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Heading_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/HeadingConfidence.c b/src/tmx/Asn_J2735/src/r2020/HeadingConfidence.c new file mode 100644 index 000000000..c3b169d55 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/HeadingConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "HeadingConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec10deg" }, + { 2, 9, "prec05deg" }, + { 3, 9, "prec01deg" }, + { 4, 10, "prec0-1deg" }, + { 5, 11, "prec0-05deg" }, + { 6, 11, "prec0-01deg" }, + { 7, 13, "prec0-0125deg" } +}; +static const unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { + 7, /* prec0-0125deg(7) */ + 6, /* prec0-01deg(6) */ + 5, /* prec0-05deg(5) */ + 4, /* prec0-1deg(4) */ + 3, /* prec01deg(3) */ + 2, /* prec05deg(2) */ + 1, /* prec10deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { + asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { + "HeadingConfidence", + "HeadingConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_HeadingConfidence_tags_1, + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + asn_DEF_HeadingConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HeadingConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HeadingConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/HeadingSlice.c b/src/tmx/Asn_J2735/src/r2020/HeadingSlice.c new file mode 100644 index 000000000..d0bcf3548 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/HeadingSlice.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "HeadingSlice.h" + +int +HeadingSlice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { + "HeadingSlice", + "HeadingSlice", + &asn_OP_BIT_STRING, + asn_DEF_HeadingSlice_tags_1, + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + asn_DEF_HeadingSlice_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HeadingSlice_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HeadingSlice_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + HeadingSlice_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Holiday.c b/src/tmx/Asn_J2735/src/r2020/Holiday.c new file mode 100644 index 000000000..83d2b9e7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Holiday.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Holiday.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Holiday_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Holiday_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { + { 0, 7, "weekday" }, + { 1, 7, "holiday" } +}; +static const unsigned int asn_MAP_Holiday_enum2value_1[] = { + 1, /* holiday(1) */ + 0 /* weekday(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { + asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Holiday = { + "Holiday", + "Holiday", + &asn_OP_NativeEnumerated, + asn_DEF_Holiday_tags_1, + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + asn_DEF_Holiday_tags_1, /* Same as above */ + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Holiday_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Holiday_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Holiday_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Hour.c b/src/tmx/Asn_J2735/src/r2020/Hour.c new file mode 100644 index 000000000..63abc4814 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Hour.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Hour.h" + +int +Hour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Hour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Hour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Hour = { + "Hour", + "Hour", + &asn_OP_NativeInteger, + asn_DEF_Hour_tags_1, + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + asn_DEF_Hour_tags_1, /* Same as above */ + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Hour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Hour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Hour_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/HumanPropelledType.c b/src/tmx/Asn_J2735/src/r2020/HumanPropelledType.c new file mode 100644 index 000000000..974a51cb2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/HumanPropelledType.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "HumanPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 6, "onFoot" }, + { 3, 10, "skateboard" }, + { 4, 17, "pushOrKickScooter" }, + { 5, 10, "wheelchair" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { + 2, /* onFoot(2) */ + 1, /* otherTypes(1) */ + 4, /* pushOrKickScooter(4) */ + 3, /* skateboard(3) */ + 0, /* unavailable(0) */ + 5 /* wheelchair(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { + asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { + "HumanPropelledType", + "HumanPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_HumanPropelledType_tags_1, + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + asn_DEF_HumanPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_HumanPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_HumanPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IA5String.c b/src/tmx/Asn_J2735/src/r2020/IA5String.c new file mode 100644 index 000000000..876142d39 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IA5String.c @@ -0,0 +1,133 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * IA5String basic type description. + */ +static const ber_tlv_tag_t asn_DEF_IA5String_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_DEF_IA5String_per_constraints = { + { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ + 0, 0 +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_operation_t asn_OP_IA5String = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print_utf8, /* ASCII subset */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer_utf8, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_IA5String = { + "IA5String", + "IA5String", + &asn_OP_IA5String, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]) - 1, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_DEF_IA5String_per_constraints, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IA5String_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +IA5String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + + if(st && st->buf) { + uint8_t *buf = st->buf; + uint8_t *end = buf + st->size; + /* + * IA5String is generally equivalent to 7bit ASCII. + * ISO/ITU-T T.50, 1963. + */ + for(; buf < end; buf++) { + if(*buf > 0x7F) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value byte %ld out of range: " + "%d > 127 (%s:%d)", + td->name, + (long)((buf - st->buf) + 1), + *buf, + __FILE__, __LINE__); + return -1; + } + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER.c b/src/tmx/Asn_J2735/src/r2020/INTEGER.c new file mode 100644 index 000000000..095063fef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER.c @@ -0,0 +1,738 @@ +/* + * Copyright (c) 2003-2019 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * INTEGER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_INTEGER = { + INTEGER_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + INTEGER_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + INTEGER_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + ber_decode_primitive, + INTEGER_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + INTEGER_decode_xer, + INTEGER_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + INTEGER_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + INTEGER_decode_oer, /* OER decoder */ + INTEGER_encode_oer, /* Canonical OER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + INTEGER_decode_uper, /* Unaligned PER decoder */ + INTEGER_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + INTEGER_decode_aper, /* Aligned PER decoder */ + INTEGER_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + INTEGER_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ +0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_INTEGER = { + "INTEGER", + "INTEGER", + &asn_OP_INTEGER, + asn_DEF_INTEGER_tags, + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + asn_DEF_INTEGER_tags, /* Same as above */ + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * INTEGER specific human-readable output. + */ +ssize_t +INTEGER__dump(const asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; + uint8_t *buf = st->buf; + uint8_t *buf_end = st->buf + st->size; + intmax_t value; + ssize_t wrote = 0; + char *p; + int ret; + + if(specs && specs->field_unsigned) + ret = asn_INTEGER2umax(st, (uintmax_t *)&value); + else + ret = asn_INTEGER2imax(st, &value); + + /* Simple case: the integer size is small */ + if(ret == 0) { + const asn_INTEGER_enum_map_t *el; + el = (value >= 0 || !specs || !specs->field_unsigned) + ? INTEGER_map_value2enum(specs, value) : 0; + if(el) { + if(plainOrXER == 0) + return asn__format_to_callback(cb, app_key, + "%" ASN_PRIdMAX " (%s)", value, el->enum_name); + else + return asn__format_to_callback(cb, app_key, + "<%s/>", el->enum_name); + } else if(plainOrXER && specs && specs->strict_enumeration) { + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } else { + return asn__format_to_callback(cb, app_key, + (specs && specs->field_unsigned) + ? "%" ASN_PRIuMAX + : "%" ASN_PRIdMAX, + value); + } + } else if(plainOrXER && specs && specs->strict_enumeration) { + /* + * Here and earlier, we cannot encode the ENUMERATED values + * if there is no corresponding identifier. + */ + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } + + /* Output in the long xx:yy:zz... format */ + /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ + for(p = scratch; buf < buf_end; buf++) { + const char * const h2c = "0123456789ABCDEF"; + if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { + /* Flush buffer */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + wrote += p - scratch; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x3a; /* ":" */ + } + if(p != scratch) + p--; /* Remove the last ":" */ + + wrote += p - scratch; + return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; +} + +static int +INTEGER__compar_value2enum(const void *kp, const void *am) { + long a = *(const long *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + long b = el->nat_value; + if(a < b) return -1; + else if(a == b) return 0; + else return 1; +} + +const asn_INTEGER_enum_map_t * +INTEGER_map_value2enum(const asn_INTEGER_specifics_t *specs, long value) { + int count = specs ? specs->map_count : 0; + if(!count) return 0; + return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, + count, sizeof(specs->value2enum[0]), + INTEGER__compar_value2enum); +} + +static intmax_t +asn__integer_convert(const uint8_t *b, const uint8_t *end) { + uintmax_t value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (uintmax_t)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +int +asn_INTEGER2imax(const INTEGER_t *iptr, intmax_t *lptr) { + uint8_t *b, *end; + size_t size; + + /* Sanity checking */ + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + /* Cache the begin/end of the buffer */ + b = iptr->buf; /* Start of the INTEGER buffer */ + size = iptr->size; + end = b + size; /* Where to stop */ + + if(size > sizeof(intmax_t)) { + uint8_t *end1 = end - 1; + /* + * Slightly more advanced processing, + * able to process INTEGERs with >sizeof(intmax_t) bytes + * when the actual value is small, e.g. for intmax_t == int32_t + * (0x0000000000abcdef INTEGER would yield a fine 0x00abcdef int32_t) + */ + /* Skip out the insignificant leading bytes */ + for(; b < end1; b++) { + switch(*b) { + case 0x00: if((b[1] & 0x80) == 0) continue; break; + case 0xff: if((b[1] & 0x80) != 0) continue; break; + } + break; + } + + size = end - b; + if(size > sizeof(intmax_t)) { + /* Still cannot fit the sizeof(intmax_t) */ + errno = ERANGE; + return -1; + } + } + + /* Shortcut processing of a corner case */ + if(end == b) { + *lptr = 0; + return 0; + } + + *lptr = asn__integer_convert(b, end); + return 0; +} + +/* FIXME: negative INTEGER values are silently interpreted as large unsigned ones. */ +int +asn_INTEGER2umax(const INTEGER_t *iptr, uintmax_t *lptr) { + uint8_t *b, *end; + uintmax_t value; + size_t size; + + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + b = iptr->buf; + size = iptr->size; + end = b + size; + + /* If all extra leading bytes are zeroes, ignore them */ + for(; size > sizeof(value); b++, size--) { + if(*b) { + /* Value won't fit into uintmax_t */ + errno = ERANGE; + return -1; + } + } + + /* Conversion engine */ + for(value = 0; b < end; b++) + value = (value << 8) | *b; + + *lptr = value; + return 0; +} + +int +asn_umax2INTEGER(INTEGER_t *st, uintmax_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= ((~(uintmax_t)0) >> 1)) { + return asn_imax2INTEGER(st, value); + } + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; /* INTEGERs are signed. 0-byte indicates positive. */ + for(b = buf + 1, shr = (sizeof(value) - 1) * 8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_imax2INTEGER(INTEGER_t *st, intmax_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)(long *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +int +asn_INTEGER2long(const INTEGER_t *iptr, long *l) { + intmax_t v; + if(asn_INTEGER2imax(iptr, &v) == 0) { + if(v < LONG_MIN || v > LONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *l) { + uintmax_t v; + if(asn_INTEGER2umax(iptr, &v) == 0) { + if(v > ULONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_long2INTEGER(INTEGER_t *st, long value) { + return asn_imax2INTEGER(st, value); +} + +int +asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { + return asn_imax2INTEGER(st, value); +} + + +int +asn_uint642INTEGER(INTEGER_t *st, uint64_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= INT64_MAX) + return asn_int642INTEGER(st, value); + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; + for(b = buf + 1, shr = (sizeof(value)-1)*8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_int642INTEGER(INTEGER_t *st, int64_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtol/strtoimax(3). + */ +enum asn_strtox_result_e +asn_strtoimax_lim(const char *str, const char **end, intmax_t *intp) { + int sign = 1; + intmax_t value; + + const intmax_t asn1_intmax_max = ((~(uintmax_t)0) >> 1); + const intmax_t upper_boundary = asn1_intmax_max / 10; + intmax_t last_digit_max = asn1_intmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + last_digit_max++; + sign = -1; + /* FALL THROUGH */ + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + if(sign > 0) { + value = value * 10 + d; + } else { + sign = 1; + value = -value * 10 - d; + } + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *intp = sign * value; + return ASN_STRTOX_OK; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtoul/strtoumax(3). + */ +enum asn_strtox_result_e +asn_strtoumax_lim(const char *str, const char **end, uintmax_t *uintp) { + uintmax_t value; + + const uintmax_t asn1_uintmax_max = ((~(uintmax_t)0)); + const uintmax_t upper_boundary = asn1_uintmax_max / 10; + uintmax_t last_digit_max = asn1_uintmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + return ASN_STRTOX_ERROR_INVAL; + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + unsigned int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + value = value * 10 + d; + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *uintp = value; + return ASN_STRTOX_OK; +} + +enum asn_strtox_result_e +asn_strtol_lim(const char *str, const char **end, long *lp) { + intmax_t value; + switch(asn_strtoimax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +enum asn_strtox_result_e +asn_strtoul_lim(const char *str, const char **end, unsigned long *ulp) { + uintmax_t value; + switch(asn_strtoumax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +int +INTEGER_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const INTEGER_t *a = aptr; + const INTEGER_t *b = bptr; + + (void)td; + + if(a && b) { + if(a->size && b->size) { + int sign_a = (a->buf[0] & 0x80) ? -1 : 1; + int sign_b = (b->buf[0] & 0x80) ? -1 : 1; + + if(sign_a < sign_b) return -1; + if(sign_a > sign_b) return 1; + + /* The shortest integer wins, unless comparing negatives */ + if(a->size < b->size) { + return -1 * sign_a; + } else if(a->size > b->size) { + return 1 * sign_b; + } + + return sign_a * memcmp(a->buf, b->buf, a->size); + } else if(a->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (1) * sign; + } else if(b->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (-1) * sign; + } else { + return 0; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c new file mode 100644 index 000000000..fc88268ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c @@ -0,0 +1,308 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #10.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if (ct->range_bits > 16) { + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + int length = 0, i; + long value = 0; + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + ASN_DEBUG("Can encode %d (%d bytes) in %d bits", ct->range_bits, + max_range_bytes, i); + + if ((length = per_get_few_bits(pd, i)) < 0) + ASN__DECODE_FAILED; + + /* X.691 #12.2.6 length determinant + lb (1) */ + length += 1; + ASN_DEBUG("Got length %d", length); + if (aper_get_align(pd) != 0) + ASN__DECODE_FAILED; + while (length--) { + int buf = per_get_few_bits(pd, 8); + if (buf < 0) + ASN__DECODE_FAILED; + value += (((long)buf) << (8 * length)); + } + + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_uint642INTEGER(st, (unsigned long)value) + : asn_int642INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %lld", + value, (long long int)ct->lower_bound); + } else { + long value = 0; + if (ct->range_bits < 8) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else if (ct->range_bits == 8) { + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else { + /* Align */ + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, 16); + if(value < 0) ASN__DECODE_STARVED; + } + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_ulong2INTEGER(st, value) + : asn_long2INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %lld", + value, (long long int)ct->lower_bound); + } + return rval; + } else { + ASN__DECODE_FAILED; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len; + void *p; + int ret; + + /* Get the PER length */ + len = aper_get_length(pd, -1, -1, -1, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetics. + */ + long value; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_long2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + long value = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + unsigned long uval; + if(asn_INTEGER2ulong(st, &uval)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(uval < (unsigned long)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(uval < (unsigned long)ct->lower_bound + || uval > (unsigned long)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", + uval, st->buf[0], st->size, + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + inext ? "ext" : "fix"); + value = uval; + } else { + if(asn_INTEGER2long(st, &value)) ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value < ct->lower_bound + || value > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%zu) lb %lld ub %lld %s", + value, st->buf[0], st->size, + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->range_bits >= 0) { + unsigned long v; + + /* #10.5.6 */ + ASN_DEBUG("Encoding integer %ld (%lld) with range %d bits", + value, (long long int)(value - ct->lower_bound), + ct->range_bits); + + v = value - ct->lower_bound; + + /* #12 <= 8 -> alignment ? */ + int range = ct->upper_bound - ct->lower_bound + 1; + if (ct->range_bits < 8 || (ct->range_bits == 8 && range < 256)) { + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits == 8) { + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits <= 16) { + /* Consume the bytes to align on octet */ + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x0000 | v, 16)) + ASN__ENCODE_FAILED; + } else { + /* TODO: extend to >64 bits */ + int64_t v64 = v; + int i, j; + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + + for (j = sizeof(int64_t) -1; j != 0; j--) { + int64_t val; + val = v64 >> (j * 8); + if (val != 0) + break; + } + + /* Putting length in the minimum number of bits ex: 5 = 3bits */ + if (per_put_few_bits(po, j, i)) + ASN__ENCODE_FAILED; + + /* Consume the bits to align on octet */ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + /* Put the value */ + for (i = 0; i <= j; i++) { + if(per_put_few_bits(po, (v64 >> (8 * (j - i))) & 0xff, 8)) + ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %lld", (long long int)ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = aper_put_length(po, -1, -1, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c new file mode 100644 index 000000000..8bd039eef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Encode INTEGER type using DER. + */ +asn_enc_rval_t +INTEGER_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t rval; + INTEGER_t effective_integer; + + ASN_DEBUG("%s %s as INTEGER (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + /* + * Canonicalize integer in the buffer. + * (Remove too long sign extension, remove some first 0x00 bytes) + */ + if(st->buf) { + uint8_t *buf = st->buf; + uint8_t *end1 = buf + st->size - 1; + int shift; + + /* Compute the number of superfluous leading bytes */ + for(; buf < end1; buf++) { + /* + * If the contents octets of an integer value encoding + * consist of more than one octet, then the bits of the + * first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + switch(*buf) { + case 0x00: if((buf[1] & 0x80) == 0) + continue; + break; + case 0xff: if((buf[1] & 0x80)) + continue; + break; + } + break; + } + + /* Remove leading superfluous bytes from the integer */ + shift = buf - st->buf; + if(shift) { + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + unconst.c_buf = st->buf; + effective_integer.buf = unconst.nc_buf + shift; + effective_integer.size = st->size - shift; + + st = &effective_integer; + } + } + + rval = der_encode_primitive(td, st, tag_mode, tag, cb, app_key); + if(rval.structure_ptr == &effective_integer) { + rval.structure_ptr = sptr; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c new file mode 100644 index 000000000..19f276d54 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + INTEGER_t *st = (INTEGER_t *)*sptr; + struct asn_oer_constraint_number_s ct = {0, 0}; + size_t req_bytes; + + (void)opt_codec_ctx; + (void)specs; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + if(ct.width) { + req_bytes = ct.width; + } else { + /* No lower bound and no upper bound, effectively */ + + ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes); + if(consumed == 0) { + ASN__DECODE_STARVED; + } else if(consumed == -1) { + ASN__DECODE_FAILED; + } + rval.consumed += consumed; + ptr = (const char *)ptr + consumed; + size -= consumed; + } + + if(req_bytes > size) { + ASN__DECODE_STARVED; + } + + if(ct.positive) { + /* X.969 08/2015 10.2(a) */ + unsigned msb; /* Most significant bit */ + size_t useful_size; + + /* Check most significant bit */ + msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */ + useful_size = msb + req_bytes; + st->buf = (uint8_t *)MALLOC(useful_size + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + /* + * Record a large unsigned in a way not to confuse it + * with signed value. + */ + st->buf[0] = '\0'; + memcpy(st->buf + msb, ptr, req_bytes); + st->buf[useful_size] = '\0'; /* Just in case, 0-terminate */ + st->size = useful_size; + + rval.consumed += req_bytes; + return rval; + } else { + /* X.969 08/2015 10.2(b) */ + st->buf = (uint8_t *)MALLOC(req_bytes + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + memcpy(st->buf, ptr, req_bytes); + st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */ + st->size = req_bytes; + + rval.consumed += req_bytes; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +INTEGER_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = sptr; + asn_enc_rval_t er = {0,0,0}; + struct asn_oer_constraint_number_s ct = {0, 0}; + const uint8_t *buf; + const uint8_t *end; + size_t useful_bytes; + size_t req_bytes = 0; + int sign = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size; + + sign = (buf && buf < end) ? buf[0] & 0x80 : 0; + + /* Ignore 9 leading zeroes or ones */ + if(ct.positive) { + if(sign) { + /* The value given is a signed value. Can't proceed. */ + ASN__ENCODE_FAILED; + } + /* Remove leading zeros. */ + for(; buf + 1 < end; buf++) { + if(buf[0] != 0x0) break; + } + } else { + for(; buf + 1 < end; buf++) { + if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) { + continue; + } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) { + continue; + } + break; + } + } + + useful_bytes = end - buf; + if(ct.width) { + req_bytes = ct.width; + } else { + ssize_t r = oer_serialize_length(useful_bytes, cb, app_key); + if(r < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += r; + req_bytes = useful_bytes; + } + + if(req_bytes < useful_bytes) { + ASN__ENCODE_FAILED; + } + + er.encoded += req_bytes; + + for(; req_bytes > useful_bytes; req_bytes--) { + if(cb(sign?"\xff":"\0", 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + if(cb(buf, useful_bytes, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c new file mode 100644 index 000000000..2d37dee01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * INTEGER specific human-readable output. + */ +int +INTEGER_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + ssize_t ret; + + (void)ilevel; + + if(!st || !st->buf) + ret = cb("", 8, app_key); + else + ret = INTEGER__dump(td, st, cb, app_key, 0); + + return (ret < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c new file mode 100644 index 000000000..fab002385 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +INTEGER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + INTEGER_t *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (INTEGER_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const asn_per_constraints_t *ct; + + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + } + + if(asn_imax2INTEGER(st, value)) { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } else { + *sptr = st; + result_ok.length = st->size; + return result_ok; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c new file mode 100644 index 000000000..ed65385fe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +INTEGER_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691-2008/11, #13.2.2, constrained whole number */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #11.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if((size_t)ct->range_bits > 8 * sizeof(uintmax_t)) + ASN__DECODE_FAILED; + + if(specs && specs->field_unsigned) { + uintmax_t uvalue = 0; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + uvalue += ct->lower_bound; + if(asn_umax2INTEGER(st, uvalue)) + ASN__DECODE_FAILED; + } else { + uintmax_t uvalue = 0; + intmax_t svalue; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + if(per_imax_range_unrebase(uvalue, ct->lower_bound, + ct->upper_bound, &svalue) + || asn_imax2INTEGER(st, svalue)) { + ASN__DECODE_FAILED; + } + } + return rval; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len = 0; + void *p = NULL; + int ret = 0; + + /* Get the PER length */ + len = uper_get_length(pd, -1, 0, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetic. + */ + long value = 0; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_imax2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + union { + intmax_t s; + uintmax_t u; + } value; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + if(asn_INTEGER2umax(st, &value.u)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value.u < (uintmax_t)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value.u < (uintmax_t)ct->lower_bound + || value.u > (uintmax_t)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%" ASN_PRI_SIZE ") lb %lu ub %lu %s", + value.u, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } else { + if(asn_INTEGER2imax(st, &value.s)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value.s < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value.s < ct->lower_bound + || value.s > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %ld (%02x/%" ASN_PRI_SIZE ") lb %ld ub %ld %s", + value.s, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + /* X.691-11/2008, #13.2.2, test if constrained whole number */ + if(ct && ct->range_bits >= 0) { + uintmax_t v; + /* #11.5.6 -> #11.3 */ + if(specs && specs->field_unsigned) { + if(((uintmax_t)ct->lower_bound > (uintmax_t)(ct->upper_bound) + || (value.u < (uintmax_t)ct->lower_bound)) + || (value.u > (uintmax_t)ct->upper_bound)) { + ASN_DEBUG("Value %lu to-be-encoded is outside the bounds [%lu, %lu]!", + value.u, ct->lower_bound, ct->upper_bound); + ASN__ENCODE_FAILED; + } + v = value.u - (uintmax_t)ct->lower_bound; + } else { + if(per_imax_range_rebase(value.s, ct->lower_bound, ct->upper_bound, &v)) { + ASN__ENCODE_FAILED; + } + } + ASN_DEBUG("Encoding integer %lu with range %d bits", + v, ct->range_bits); + if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = uper_put_length(po, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && uper_put_length(po, 0, 0)) ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c new file mode 100644 index 000000000..4f21c86a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c @@ -0,0 +1,351 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +struct e2v_key { + const char *start; + const char *stop; + const asn_INTEGER_enum_map_t *vemap; + const unsigned int *evmap; +}; +static int +INTEGER__compar_enum2value(const void *kp, const void *am) { + const struct e2v_key *key = (const struct e2v_key *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + const char *ptr, *end, *name; + + /* Remap the element (sort by different criterion) */ + el = key->vemap + key->evmap[el - key->vemap]; + + /* Compare strings */ + for(ptr = key->start, end = key->stop, name = el->enum_name; + ptr < end; ptr++, name++) { + if(*ptr != *name || !*name) + return *(const unsigned char *)ptr - *(const unsigned char *)name; + } + return name[0] ? -1 : 0; +} + +static const asn_INTEGER_enum_map_t * +INTEGER_map_enum2value(const asn_INTEGER_specifics_t *specs, const char *lstart, + const char *lstop) { + const asn_INTEGER_enum_map_t *el_found; + int count = specs ? specs->map_count : 0; + struct e2v_key key; + const char *lp; + + if(!count) return NULL; + + /* Guaranteed: assert(lstart < lstop); */ + /* Figure out the tag name */ + for(lstart++, lp = lstart; lp < lstop; lp++) { + switch(*lp) { + case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ + case 0x2f: /* '/' */ case 0x3e: /* '>' */ + break; + default: + continue; + } + break; + } + if(lp == lstop) return NULL; /* No tag found */ + lstop = lp; + + key.start = lstart; + key.stop = lstop; + key.vemap = specs->value2enum; + key.evmap = specs->enum2value; + el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, + specs->value2enum, count, sizeof(specs->value2enum[0]), + INTEGER__compar_enum2value); + if(el_found) { + /* Remap enum2value into value2enum */ + el_found = key.vemap + key.evmap[el_found - key.vemap]; + } + return el_found; +} + +static int +INTEGER_st_prealloc(INTEGER_t *st, int min_size) { + void *p = MALLOC(min_size + 1); + if(p) { + void *b = st->buf; + st->size = 0; + st->buf = p; + FREEMEM(b); + return 0; + } else { + return -1; + } +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +INTEGER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t *st = (INTEGER_t *)sptr; + intmax_t dec_value; + intmax_t hex_value = 0; + const char *lp; + const char *lstart = (const char *)chunk_buf; + const char *lstop = lstart + chunk_size; + enum { + ST_LEADSPACE, + ST_SKIPSPHEX, + ST_WAITDIGITS, + ST_DIGITS, + ST_DIGITS_TRAILSPACE, + ST_HEXDIGIT1, + ST_HEXDIGIT2, + ST_HEXDIGITS_TRAILSPACE, + ST_HEXCOLON, + ST_END_ENUM, + ST_UNEXPECTED + } state = ST_LEADSPACE; + const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ + const char *dec_value_end = 0; + + if(chunk_size) + ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", + (long)chunk_size, *lstart, lstop[-1]); + + if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) + return XPBD_SYSTEM_FAILURE; + + /* + * We may have received a tag here. It will be processed inline. + * Use strtoul()-like code and serialize the result. + */ + for(lp = lstart; lp < lstop; lp++) { + int lv = *lp; + switch(lv) { + case 0x09: case 0x0a: case 0x0d: case 0x20: + switch(state) { + case ST_LEADSPACE: + case ST_DIGITS_TRAILSPACE: + case ST_HEXDIGITS_TRAILSPACE: + case ST_SKIPSPHEX: + continue; + case ST_DIGITS: + dec_value_end = lp; + state = ST_DIGITS_TRAILSPACE; + continue; + case ST_HEXCOLON: + state = ST_HEXDIGITS_TRAILSPACE; + continue; + default: + break; + } + break; + case 0x2d: /* '-' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x2b: /* '+' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: + switch(state) { + case ST_DIGITS: continue; + case ST_SKIPSPHEX: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = (lv - 0x30) << 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += (lv - 0x30); + state = ST_HEXCOLON; + st->buf[st->size++] = (uint8_t)hex_value; + continue; + case ST_HEXCOLON: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + dec_value = 0; + dec_value_start = lp; + /* FALL THROUGH */ + case ST_WAITDIGITS: + state = ST_DIGITS; + continue; + default: + break; + } + break; + case 0x3c: /* '<', start of XML encoded enumeration */ + if(state == ST_LEADSPACE) { + const asn_INTEGER_enum_map_t *el; + el = INTEGER_map_enum2value( + (const asn_INTEGER_specifics_t *) + td->specifics, lstart, lstop); + if(el) { + ASN_DEBUG("Found \"%s\" => %ld", + el->enum_name, el->nat_value); + dec_value = el->nat_value; + state = ST_END_ENUM; + lp = lstop - 1; + continue; + } + ASN_DEBUG("Unknown identifier for INTEGER"); + } + return XPBD_BROKEN_ENCODING; + case 0x3a: /* ':' */ + if(state == ST_HEXCOLON) { + /* This colon is expected */ + state = ST_HEXDIGIT1; + continue; + } else if(state == ST_DIGITS) { + /* The colon here means that we have + * decoded the first two hexadecimal + * places as a decimal value. + * Switch decoding mode. */ + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + } else { + ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); + break; + } + /* [A-Fa-f] */ + case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: + case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: + switch(state) { + case ST_SKIPSPHEX: + case ST_LEADSPACE: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + hex_value <<= 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + st->buf[st->size++] = (uint8_t)hex_value; + state = ST_HEXCOLON; + continue; + case ST_DIGITS: + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + default: + break; + } + break; + } + + /* Found extra non-numeric stuff */ + ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", + lv, (long)(lp - lstart)); + state = ST_UNEXPECTED; + break; + } + + switch(state) { + case ST_END_ENUM: + /* Got a complete and valid enumeration encoded as a tag. */ + break; + case ST_DIGITS: + dec_value_end = lstop; + /* FALL THROUGH */ + case ST_DIGITS_TRAILSPACE: + /* The last symbol encountered was a digit. */ + switch(asn_strtoimax_lim(dec_value_start, &dec_value_end, &dec_value)) { + case ASN_STRTOX_OK: + if(specs && specs->field_unsigned && (uintmax_t) dec_value <= ULONG_MAX) { + break; + } else if(dec_value >= LONG_MIN && dec_value <= LONG_MAX) { + break; + } else { + /* + * We model INTEGER on long for XER, + * to avoid rewriting all the tests at once. + */ + ASN_DEBUG("INTEGER exceeds long range"); + } + /* Fall through */ + case ASN_STRTOX_ERROR_RANGE: + ASN_DEBUG("INTEGER decode %s hit range limit", td->name); + return XPBD_DECODER_LIMIT; + case ASN_STRTOX_ERROR_INVAL: + case ASN_STRTOX_EXPECT_MORE: + case ASN_STRTOX_EXTRA_DATA: + return XPBD_BROKEN_ENCODING; + } + break; + case ST_HEXCOLON: + case ST_HEXDIGITS_TRAILSPACE: + st->buf[st->size] = 0; /* Just in case termination */ + return XPBD_BODY_CONSUMED; + case ST_HEXDIGIT1: + case ST_HEXDIGIT2: + case ST_SKIPSPHEX: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + /* Content not found */ + return XPBD_NOT_BODY_IGNORE; + case ST_WAITDIGITS: + case ST_UNEXPECTED: + ASN_DEBUG("INTEGER: No useful digits (state %d)", state); + return XPBD_BROKEN_ENCODING; /* No digits */ + } + + /* + * Convert the result of parsing of enumeration or a straight + * decimal value into a BER representation. + */ + if(asn_imax2INTEGER(st, dec_value)) { + ASN_DEBUG("INTEGER decode %s conversion failed", td->name); + return XPBD_SYSTEM_FAILURE; + } + + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +INTEGER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(INTEGER_t), opt_mname, + buf_ptr, size, INTEGER__xer_body_decode); +} + +asn_enc_rval_t +INTEGER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = INTEGER__dump(td, st, cb, app_key, 1); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/ITIScodes.c b/src/tmx/Asn_J2735/src/r2020/ITIScodes.c new file mode 100644 index 000000000..e63f5fd2a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ITIScodes.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ITIScodes.h" + +int +ITIScodes_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIScodes_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodes = { + "ITIScodes", + "ITIScodes", + &asn_OP_NativeInteger, + asn_DEF_ITIScodes_tags_1, + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + asn_DEF_ITIScodes_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIScodes_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIScodes_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIScodes_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/r2020/ITIScodesAndText.c new file mode 100644 index 000000000..44c7a62cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ITIScodesAndText.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ITIScodesAndText.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..100)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStext, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ITIScodesAndText__Member__item), + offsetof(struct ITIScodesAndText__Member__item, _asn_ctx), + offsetof(struct ITIScodesAndText__Member__item, present), + sizeof(((struct ITIScodesAndText__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ITIScodesAndText__Member), + offsetof(struct ITIScodesAndText__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { + sizeof(struct ITIScodesAndText), + offsetof(struct ITIScodesAndText, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { + "ITIScodesAndText", + "ITIScodesAndText", + &asn_OP_SEQUENCE_OF, + asn_DEF_ITIScodesAndText_tags_1, + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIScodesAndText_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIScodesAndText_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ITIScodesAndText_1, + 1, /* Single element */ + &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ITIStext.c b/src/tmx/Asn_J2735/src/r2020/ITIStext.c new file mode 100644 index 000000000..08b8a96f9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ITIStext.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ITIStext.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +ITIStext_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 500UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIStext_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..500)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIStext_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStext = { + "ITIStext", + "ITIStext", + &asn_OP_IA5String, + asn_DEF_ITIStext_tags_1, + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + asn_DEF_ITIStext_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIStext_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIStext_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIStext_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ITIStextPhrase.c b/src/tmx/Asn_J2735/src/r2020/ITIStextPhrase.c new file mode 100644 index 000000000..5cd260cff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ITIStextPhrase.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ITIStextPhrase.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +ITIStextPhrase_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 16UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ITIStextPhrase_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase = { + "ITIStextPhrase", + "ITIStextPhrase", + &asn_OP_IA5String, + asn_DEF_ITIStextPhrase_tags_1, + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + asn_DEF_ITIStextPhrase_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ITIStextPhrase_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ITIStextPhrase_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ITIStextPhrase_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Id128b.c b/src/tmx/Asn_J2735/src/r2020/Id128b.c new file mode 100644 index 000000000..d755c3e4c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Id128b.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +# include "Id128b.h" + +int +Id128b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Id128b_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_Id128b_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Id128b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Id128b = { + "Id128b", + "Id128b", + &asn_OP_OCTET_STRING, + asn_DEF_Id128b_tags_1, + sizeof(asn_DEF_Id128b_tags_1) + /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ + asn_DEF_Id128b_tags_1, /* Same as above */ + sizeof(asn_DEF_Id128b_tags_1) + /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ + { &asn_OER_type_Id128b_constr_1, &asn_PER_type_Id128b_constr_1, Id128b_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Id64b.c b/src/tmx/Asn_J2735/src/r2020/Id64b.c new file mode 100644 index 000000000..0b7d291d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Id64b.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Id64b.h" + +int +Id64b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Id64b_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_Id64b_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Id64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Id64b = { + "Id64b", + "Id64b", + &asn_OP_OCTET_STRING, + asn_DEF_Id64b_tags_1, + sizeof(asn_DEF_Id64b_tags_1) + /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ + asn_DEF_Id64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Id64b_tags_1) + /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ + { &asn_OER_type_Id64b_constr_1, &asn_PER_type_Id64b_constr_1, Id64b_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/r2020/IncidentResponseEquipment.c new file mode 100644 index 000000000..c013824b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IncidentResponseEquipment.c @@ -0,0 +1,210 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IncidentResponseEquipment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { + { 9985, 23, "ground-fire-suppression" }, + { 9986, 22, "heavy-ground-equipment" }, + { 9988, 8, "aircraft" }, + { 9989, 16, "marine-equipment" }, + { 9990, 17, "support-equipment" }, + { 9991, 19, "medical-rescue-unit" }, + { 9993, 5, "other" }, + { 9994, 29, "ground-fire-suppression-other" }, + { 9995, 6, "engine" }, + { 9996, 15, "truck-or-aerial" }, + { 9997, 5, "quint" }, + { 9998, 25, "tanker-pumper-combination" }, + { 10000, 11, "brush-truck" }, + { 10001, 28, "aircraft-rescue-firefighting" }, + { 10004, 28, "heavy-ground-equipment-other" }, + { 10005, 13, "dozer-or-plow" }, + { 10006, 7, "tractor" }, + { 10008, 16, "tanker-or-tender" }, + { 10024, 14, "aircraft-other" }, + { 10025, 26, "aircraft-fixed-wing-tanker" }, + { 10026, 10, "helitanker" }, + { 10027, 10, "helicopter" }, + { 10034, 22, "marine-equipment-other" }, + { 10035, 19, "fire-boat-with-pump" }, + { 10036, 12, "boat-no-pump" }, + { 10044, 23, "support-apparatus-other" }, + { 10045, 27, "breathing-apparatus-support" }, + { 10046, 18, "light-and-air-unit" }, + { 10054, 25, "medical-rescue-unit-other" }, + { 10055, 11, "rescue-unit" }, + { 10056, 24, "urban-search-rescue-unit" }, + { 10057, 17, "high-angle-rescue" }, + { 10058, 17, "crash-fire-rescue" }, + { 10059, 8, "bLS-unit" }, + { 10060, 8, "aLS-unit" }, + { 10075, 19, "mobile-command-post" }, + { 10076, 17, "chief-officer-car" }, + { 10077, 11, "hAZMAT-unit" }, + { 10078, 16, "type-i-hand-crew" }, + { 10079, 17, "type-ii-hand-crew" }, + { 10083, 23, "privately-owned-vehicle" }, + { 10084, 24, "other-apparatus-resource" }, + { 10085, 9, "ambulance" }, + { 10086, 14, "bomb-squad-van" }, + { 10087, 17, "combine-harvester" }, + { 10088, 20, "construction-vehicle" }, + { 10089, 12, "farm-tractor" }, + { 10090, 22, "grass-cutting-machines" }, + { 10091, 22, "hAZMAT-containment-tow" }, + { 10092, 9, "heavy-tow" }, + { 10093, 22, "hedge-cutting-machines" }, + { 10094, 9, "light-tow" }, + { 10095, 12, "mobile-crane" }, + { 10096, 25, "refuse-collection-vehicle" }, + { 10097, 19, "resurfacing-vehicle" }, + { 10098, 12, "road-sweeper" }, + { 10099, 32, "roadside-litter-collection-crews" }, + { 10100, 15, "salvage-vehicle" }, + { 10101, 10, "sand-truck" }, + { 10102, 8, "snowplow" }, + { 10103, 12, "steam-roller" }, + { 10104, 13, "swat-team-van" }, + { 10105, 20, "track-laying-vehicle" }, + { 10106, 15, "unknown-vehicle" }, + { 10107, 20, "white-lining-vehicle" }, + { 10108, 10, "dump-truck" }, + { 10109, 18, "supervisor-vehicle" }, + { 10110, 11, "snow-blower" }, + { 10111, 18, "rotary-snow-blower" }, + { 10112, 11, "road-grader" }, + { 10113, 11, "steam-truck" }, + { 10114, 11, "flatbed-tow" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { + 34, /* aLS-unit(10060) */ + 2, /* aircraft(9988) */ + 19, /* aircraft-fixed-wing-tanker(10025) */ + 18, /* aircraft-other(10024) */ + 13, /* aircraft-rescue-firefighting(10001) */ + 42, /* ambulance(10085) */ + 33, /* bLS-unit(10059) */ + 24, /* boat-no-pump(10036) */ + 43, /* bomb-squad-van(10086) */ + 26, /* breathing-apparatus-support(10045) */ + 12, /* brush-truck(10000) */ + 36, /* chief-officer-car(10076) */ + 44, /* combine-harvester(10087) */ + 45, /* construction-vehicle(10088) */ + 32, /* crash-fire-rescue(10058) */ + 15, /* dozer-or-plow(10005) */ + 65, /* dump-truck(10108) */ + 8, /* engine(9995) */ + 46, /* farm-tractor(10089) */ + 23, /* fire-boat-with-pump(10035) */ + 71, /* flatbed-tow(10114) */ + 47, /* grass-cutting-machines(10090) */ + 0, /* ground-fire-suppression(9985) */ + 7, /* ground-fire-suppression-other(9994) */ + 48, /* hAZMAT-containment-tow(10091) */ + 37, /* hAZMAT-unit(10077) */ + 1, /* heavy-ground-equipment(9986) */ + 14, /* heavy-ground-equipment-other(10004) */ + 49, /* heavy-tow(10092) */ + 50, /* hedge-cutting-machines(10093) */ + 21, /* helicopter(10027) */ + 20, /* helitanker(10026) */ + 31, /* high-angle-rescue(10057) */ + 27, /* light-and-air-unit(10046) */ + 51, /* light-tow(10094) */ + 3, /* marine-equipment(9989) */ + 22, /* marine-equipment-other(10034) */ + 5, /* medical-rescue-unit(9991) */ + 28, /* medical-rescue-unit-other(10054) */ + 35, /* mobile-command-post(10075) */ + 52, /* mobile-crane(10095) */ + 6, /* other(9993) */ + 41, /* other-apparatus-resource(10084) */ + 40, /* privately-owned-vehicle(10083) */ + 10, /* quint(9997) */ + 53, /* refuse-collection-vehicle(10096) */ + 29, /* rescue-unit(10055) */ + 54, /* resurfacing-vehicle(10097) */ + 69, /* road-grader(10112) */ + 55, /* road-sweeper(10098) */ + 56, /* roadside-litter-collection-crews(10099) */ + 68, /* rotary-snow-blower(10111) */ + 57, /* salvage-vehicle(10100) */ + 58, /* sand-truck(10101) */ + 67, /* snow-blower(10110) */ + 59, /* snowplow(10102) */ + 60, /* steam-roller(10103) */ + 70, /* steam-truck(10113) */ + 66, /* supervisor-vehicle(10109) */ + 25, /* support-apparatus-other(10044) */ + 4, /* support-equipment(9990) */ + 61, /* swat-team-van(10104) */ + 17, /* tanker-or-tender(10008) */ + 11, /* tanker-pumper-combination(9998) */ + 62, /* track-laying-vehicle(10105) */ + 16, /* tractor(10006) */ + 9, /* truck-or-aerial(9996) */ + 38, /* type-i-hand-crew(10078) */ + 39, /* type-ii-hand-crew(10079) */ + 63, /* unknown-vehicle(10106) */ + 30, /* urban-search-rescue-unit(10056) */ + 64 /* white-lining-vehicle(10107) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { + asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ + 72, /* Number of elements in the maps */ + 73, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { + "IncidentResponseEquipment", + "IncidentResponseEquipment", + &asn_OP_NativeEnumerated, + asn_DEF_IncidentResponseEquipment_tags_1, + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IncidentResponseEquipment_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IncidentResponseEquipment_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionAccessPoint.c b/src/tmx/Asn_J2735/src/r2020/IntersectionAccessPoint.c new file mode 100644 index 000000000..2a2dc5389 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionAccessPoint.c @@ -0,0 +1,111 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionAccessPoint.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.connection), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connection" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionAccessPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* connection */ +}; +asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1 = { + sizeof(struct IntersectionAccessPoint), + offsetof(struct IntersectionAccessPoint, _asn_ctx), + offsetof(struct IntersectionAccessPoint, present), + sizeof(((struct IntersectionAccessPoint *)0)->present), + asn_MAP_IntersectionAccessPoint_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint = { + "IntersectionAccessPoint", + "IntersectionAccessPoint", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionAccessPoint_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionAccessPoint_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_IntersectionAccessPoint_1, + 3, /* Elements count */ + &asn_SPC_IntersectionAccessPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionCollision.c b/src/tmx/Asn_J2735/src/r2020/IntersectionCollision.c new file mode 100644 index 000000000..f825e39ed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionCollision.c @@ -0,0 +1,333 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "IntersectionCollision" + * found in "J2735-IntersectionCollision.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionCollision.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionCollision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionCollision__regional), + offsetof(struct IntersectionCollision__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 4, offsetof(struct IntersectionCollision, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionCollision, partOne), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "partOne" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionCollision, path), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "path" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersectionID), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersectionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ApproachOrLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventFlag" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionCollision_oms_1[] = { 2, 3, 4, 5, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* partOne */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* intersectionID */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* laneNumber */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* eventFlag */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { + sizeof(struct IntersectionCollision), + offsetof(struct IntersectionCollision, _asn_ctx), + asn_MAP_IntersectionCollision_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionCollision_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { + "IntersectionCollision", + "IntersectionCollision", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionCollision_tags_1, + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + asn_DEF_IntersectionCollision_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionCollision_1, + 10, /* Elements count */ + &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/r2020/IntersectionGeometry.c new file mode 100644 index 000000000..03dfb542b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionGeometry.c @@ -0,0 +1,315 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionGeometry.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionGeometry, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct IntersectionGeometry__regional), + offsetof(struct IntersectionGeometry__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneSet" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PreemptPriorityList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "preemptPriorityData" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { + sizeof(struct IntersectionGeometry), + offsetof(struct IntersectionGeometry, _asn_ctx), + asn_MAP_IntersectionGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { + "IntersectionGeometry", + "IntersectionGeometry", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionGeometry_tags_1, + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionGeometry_1, + 9, /* Elements count */ + &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/r2020/IntersectionGeometryList.c new file mode 100644 index 000000000..60d2518bd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionGeometryList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionGeometryList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionGeometry, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { + sizeof(struct IntersectionGeometryList), + offsetof(struct IntersectionGeometryList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { + "IntersectionGeometryList", + "IntersectionGeometryList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionGeometryList_tags_1, + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionGeometryList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionGeometryList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_IntersectionGeometryList_1, + 1, /* Single element */ + &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionID.c b/src/tmx/Asn_J2735/src/r2020/IntersectionID.c new file mode 100644 index 000000000..ea64cb24d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionID.h" + +int +IntersectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionID = { + "IntersectionID", + "IntersectionID", + &asn_OP_NativeInteger, + asn_DEF_IntersectionID_tags_1, + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IntersectionID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/r2020/IntersectionReferenceID.c new file mode 100644 index 000000000..12355f463 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionReferenceID.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionReferenceID.h" + +asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { + sizeof(struct IntersectionReferenceID), + offsetof(struct IntersectionReferenceID, _asn_ctx), + asn_MAP_IntersectionReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { + "IntersectionReferenceID", + "IntersectionReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionReferenceID_tags_1, + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionReferenceID_1, + 2, /* Elements count */ + &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionState-addGrpC.c b/src/tmx/Asn_J2735/src/r2020/IntersectionState-addGrpC.c new file mode 100644 index 000000000..80e765cf0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionState-addGrpC.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionState-addGrpC.h" + +asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState_addGrpC, activePrioritizations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activePrioritizations" + }, +}; +static const int asn_MAP_IntersectionState_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1 = { + sizeof(struct IntersectionState_addGrpC), + offsetof(struct IntersectionState_addGrpC, _asn_ctx), + asn_MAP_IntersectionState_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_IntersectionState_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC = { + "IntersectionState-addGrpC", + "IntersectionState-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_addGrpC_tags_1, + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionState_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_IntersectionState_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionState.c b/src/tmx/Asn_J2735/src/r2020/IntersectionState.c new file mode 100644 index 000000000..36fd1eac7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionState.c @@ -0,0 +1,333 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionState.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_IntersectionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionState__regional), + offsetof(struct IntersectionState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStatusObject, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "moy" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EnabledLaneList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabledLanes" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "states" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { + sizeof(struct IntersectionState), + offsetof(struct IntersectionState, _asn_ctx), + asn_MAP_IntersectionState_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionState_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState = { + "IntersectionState", + "IntersectionState", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_tags_1, + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_IntersectionState_1, + 10, /* Elements count */ + &asn_SPC_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionStateList.c b/src/tmx/Asn_J2735/src/r2020/IntersectionStateList.c new file mode 100644 index 000000000..6e2e3e2b8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionStateList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionStateList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { + sizeof(struct IntersectionStateList), + offsetof(struct IntersectionStateList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { + "IntersectionStateList", + "IntersectionStateList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionStateList_tags_1, + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStateList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionStateList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionStateList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_IntersectionStateList_1, + 1, /* Single element */ + &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/r2020/IntersectionStatusObject.c new file mode 100644 index 000000000..1a0f5da10 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IntersectionStatusObject.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IntersectionStatusObject.h" + +int +IntersectionStatusObject_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { + "IntersectionStatusObject", + "IntersectionStatusObject", + &asn_OP_BIT_STRING, + asn_DEF_IntersectionStatusObject_tags_1, + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_IntersectionStatusObject_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_IntersectionStatusObject_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + IntersectionStatusObject_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/IsDolly.c b/src/tmx/Asn_J2735/src/r2020/IsDolly.c new file mode 100644 index 000000000..674cf7fa5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/IsDolly.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "IsDolly.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_IsDolly_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IsDolly = { + "IsDolly", + "IsDolly", + &asn_OP_BOOLEAN, + asn_DEF_IsDolly_tags_1, + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + asn_DEF_IsDolly_tags_1, /* Same as above */ + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Iso3833VehicleType.c b/src/tmx/Asn_J2735/src/r2020/Iso3833VehicleType.c new file mode 100644 index 000000000..0b85b106e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Iso3833VehicleType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Iso3833VehicleType.h" + +int +Iso3833VehicleType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Iso3833VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType = { + "Iso3833VehicleType", + "Iso3833VehicleType", + &asn_OP_NativeInteger, + asn_DEF_Iso3833VehicleType_tags_1, + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + asn_DEF_Iso3833VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Iso3833VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Iso3833VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Iso3833VehicleType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/J1939data.c b/src/tmx/Asn_J2735/src/r2020/J1939data.c new file mode 100644 index 000000000..cf7007321 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/J1939data.c @@ -0,0 +1,230 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "J1939data.h" + +asn_TYPE_member_t asn_MBR_J1939data_1[] = { + { ATF_POINTER, 10, offsetof(struct J1939data, tires), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireDataList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "tires" + }, + { ATF_POINTER, 9, offsetof(struct J1939data, axles), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeightList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "axles" + }, + { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CargoWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "cargoWeight" + }, + { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringAxleTemperature" + }, + { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLocation" + }, + { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLiftAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLiftAirPressure" + }, + { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleTemperature" + }, + { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLubePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "driveAxleLubePressure" + }, + { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleLubePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steeringAxleLubePressure" + }, +}; +static const int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axles */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ +}; +asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { + sizeof(struct J1939data), + offsetof(struct J1939data, _asn_ctx), + asn_MAP_J1939data_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_J1939data_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_J1939data = { + "J1939data", + "J1939data", + &asn_OP_SEQUENCE, + asn_DEF_J1939data_tags_1, + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + asn_DEF_J1939data_tags_1, /* Same as above */ + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_J1939data_1, + 10, /* Elements count */ + &asn_SPC_J1939data_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Barrier.c new file mode 100644 index 000000000..baa043408 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Barrier.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Barrier.h" + +int +LaneAttributes_Barrier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { + "LaneAttributes-Barrier", + "LaneAttributes-Barrier", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Barrier_tags_1, + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Barrier_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Barrier_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Barrier_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Bike.c new file mode 100644 index 000000000..95fc11063 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Bike.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Bike.h" + +int +LaneAttributes_Bike_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { + "LaneAttributes-Bike", + "LaneAttributes-Bike", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Bike_tags_1, + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Bike_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Bike_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Bike_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Crosswalk.c new file mode 100644 index 000000000..21e587082 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Crosswalk.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Crosswalk.h" + +int +LaneAttributes_Crosswalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { + "LaneAttributes-Crosswalk", + "LaneAttributes-Crosswalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Crosswalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Crosswalk_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Crosswalk_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Crosswalk_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Parking.c new file mode 100644 index 000000000..006f75562 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Parking.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Parking.h" + +int +LaneAttributes_Parking_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { + "LaneAttributes-Parking", + "LaneAttributes-Parking", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Parking_tags_1, + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Parking_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Parking_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Parking_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Sidewalk.c new file mode 100644 index 000000000..86e6627d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Sidewalk.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Sidewalk.h" + +int +LaneAttributes_Sidewalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { + "LaneAttributes-Sidewalk", + "LaneAttributes-Sidewalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Sidewalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Sidewalk_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Sidewalk_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Sidewalk_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Striping.c new file mode 100644 index 000000000..486af6d5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Striping.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Striping.h" + +int +LaneAttributes_Striping_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { + "LaneAttributes-Striping", + "LaneAttributes-Striping", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Striping_tags_1, + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Striping_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Striping_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Striping_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-TrackedVehicle.c new file mode 100644 index 000000000..005de4068 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-TrackedVehicle.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-TrackedVehicle.h" + +int +LaneAttributes_TrackedVehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { + "LaneAttributes-TrackedVehicle", + "LaneAttributes-TrackedVehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_TrackedVehicle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_TrackedVehicle_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Vehicle.c new file mode 100644 index 000000000..9478b18ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes-Vehicle.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes-Vehicle.h" + +int +LaneAttributes_Vehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 8, 8 } /* (SIZE(8..8,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { + "LaneAttributes-Vehicle", + "LaneAttributes-Vehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Vehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneAttributes_Vehicle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneAttributes_Vehicle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneAttributes_Vehicle_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneAttributes.c b/src/tmx/Asn_J2735/src/r2020/LaneAttributes.c new file mode 100644 index 000000000..471526760 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneAttributes.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneAttributes.h" + +asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDirection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionalUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneSharing, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sharedWith" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_LaneTypeAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneType" + }, + { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_LaneAttributes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_LaneAttributes_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { + sizeof(struct LaneAttributes), + offsetof(struct LaneAttributes, _asn_ctx), + asn_MAP_LaneAttributes_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_LaneAttributes_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { + "LaneAttributes", + "LaneAttributes", + &asn_OP_SEQUENCE, + asn_DEF_LaneAttributes_tags_1, + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LaneAttributes_1, + 4, /* Elements count */ + &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneConnectionID.c b/src/tmx/Asn_J2735/src/r2020/LaneConnectionID.c new file mode 100644 index 000000000..333f04468 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneConnectionID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneConnectionID.h" + +int +LaneConnectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { + "LaneConnectionID", + "LaneConnectionID", + &asn_OP_NativeInteger, + asn_DEF_LaneConnectionID_tags_1, + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + asn_DEF_LaneConnectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneConnectionID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneConnectionID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneConnectionID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute-addGrpB.c b/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute-addGrpB.c new file mode 100644 index 000000000..b3c72e982 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute-addGrpB.c @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneDataAttribute-addGrpB.h" + +static const ber_tlv_tag_t asn_DEF_LaneDataAttribute_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1 = { + sizeof(struct LaneDataAttribute_addGrpB), + offsetof(struct LaneDataAttribute_addGrpB, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 0, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB = { + "LaneDataAttribute-addGrpB", + "LaneDataAttribute-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_LaneDataAttribute_addGrpB_tags_1, + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttribute_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_LaneDataAttribute_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute.c new file mode 100644 index 000000000..ea79742fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneDataAttribute.c @@ -0,0 +1,286 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneDataAttribute.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_LaneDataAttribute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct LaneDataAttribute__regional), + offsetof(struct LaneDataAttribute__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathEndPointAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointCenter" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointLeft" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneCrownPointRight" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MergeDivergeNodeAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { + sizeof(struct LaneDataAttribute), + offsetof(struct LaneDataAttribute, _asn_ctx), + offsetof(struct LaneDataAttribute, present), + sizeof(((struct LaneDataAttribute *)0)->present), + asn_MAP_LaneDataAttribute_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { + "LaneDataAttribute", + "LaneDataAttribute", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDataAttribute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDataAttribute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_LaneDataAttribute_1, + 7, /* Elements count */ + &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/r2020/LaneDataAttributeList.c new file mode 100644 index 000000000..001029557 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneDataAttributeList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneDataAttributeList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_LaneDataAttribute, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { + sizeof(struct LaneDataAttributeList), + offsetof(struct LaneDataAttributeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { + "LaneDataAttributeList", + "LaneDataAttributeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneDataAttributeList_tags_1, + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDataAttributeList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDataAttributeList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_LaneDataAttributeList_1, + 1, /* Single element */ + &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneDirection.c b/src/tmx/Asn_J2735/src/r2020/LaneDirection.c new file mode 100644 index 000000000..b9cd8073b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneDirection.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneDirection.h" + +int +LaneDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneDirection_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneDirection = { + "LaneDirection", + "LaneDirection", + &asn_OP_BIT_STRING, + asn_DEF_LaneDirection_tags_1, + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + asn_DEF_LaneDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneDirection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneDirection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneDirection_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneID.c b/src/tmx/Asn_J2735/src/r2020/LaneID.c new file mode 100644 index 000000000..b04e299bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneID.h" + +int +LaneID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneID = { + "LaneID", + "LaneID", + &asn_OP_NativeInteger, + asn_DEF_LaneID_tags_1, + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + asn_DEF_LaneID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneList.c b/src/tmx/Asn_J2735/src/r2020/LaneList.c new file mode 100644 index 000000000..f41b17fe6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { + sizeof(struct LaneList), + offsetof(struct LaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneList = { + "LaneList", + "LaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneList_tags_1, + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + asn_DEF_LaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_LaneList_1, + 1, /* Single element */ + &asn_SPC_LaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneSharing.c b/src/tmx/Asn_J2735/src/r2020/LaneSharing.c new file mode 100644 index 000000000..6d4c4f7c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneSharing.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneSharing.h" + +int +LaneSharing_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 10UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneSharing_constr_1 CC_NOTUSED = { + { 0, 0 }, + 10 /* (SIZE(10..10)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneSharing = { + "LaneSharing", + "LaneSharing", + &asn_OP_BIT_STRING, + asn_DEF_LaneSharing_tags_1, + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + asn_DEF_LaneSharing_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneSharing_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneSharing_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneSharing_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/r2020/LaneTypeAttributes.c new file mode 100644 index 000000000..32c536e50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneTypeAttributes.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneTypeAttributes.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Vehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Crosswalk, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crosswalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Bike, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bikeLane" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Sidewalk, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sidewalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Barrier, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "median" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Striping, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "striping" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_TrackedVehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trackedVehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Parking, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "parking" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { + sizeof(struct LaneTypeAttributes), + offsetof(struct LaneTypeAttributes, _asn_ctx), + offsetof(struct LaneTypeAttributes, present), + sizeof(((struct LaneTypeAttributes *)0)->present), + asn_MAP_LaneTypeAttributes_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + 8 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { + "LaneTypeAttributes", + "LaneTypeAttributes", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneTypeAttributes_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneTypeAttributes_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_LaneTypeAttributes_1, + 8, /* Elements count */ + &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LaneWidth.c b/src/tmx/Asn_J2735/src/r2020/LaneWidth.c new file mode 100644 index 000000000..a688c0aed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LaneWidth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LaneWidth.h" + +int +LaneWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LaneWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneWidth = { + "LaneWidth", + "LaneWidth", + &asn_OP_NativeInteger, + asn_DEF_LaneWidth_tags_1, + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + asn_DEF_LaneWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LaneWidth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LaneWidth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LaneWidth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Latitude.c b/src/tmx/Asn_J2735/src/r2020/Latitude.c new file mode 100644 index 000000000..8eef96907 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Latitude.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Latitude.h" + +int +Latitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -900000000L && value <= 900000001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Latitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-900000000..900000001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Latitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Latitude = { + "Latitude", + "Latitude", + &asn_OP_NativeInteger, + asn_DEF_Latitude_tags_1, + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + asn_DEF_Latitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Latitude_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Latitude_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Latitude_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LatitudeDMS.c b/src/tmx/Asn_J2735/src/r2020/LatitudeDMS.c new file mode 100644 index 000000000..83f85c61e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LatitudeDMS.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LatitudeDMS.h" + +int +LatitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32400000L && value <= 32400000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-32400000..32400000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { + "LatitudeDMS", + "LatitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LatitudeDMS_tags_1, + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LatitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LatitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LatitudeDMS_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/r2020/LatitudeDMS2.c new file mode 100644 index 000000000..66d2feef4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LatitudeDMS2.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LatitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLat, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { + sizeof(struct LatitudeDMS2), + offsetof(struct LatitudeDMS2, _asn_ctx), + asn_MAP_LatitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { + "LatitudeDMS2", + "LatitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LatitudeDMS2_tags_1, + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LatitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LayerID.c b/src/tmx/Asn_J2735/src/r2020/LayerID.c new file mode 100644 index 000000000..a7e02ee36 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LayerID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LayerID.h" + +int +LayerID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LayerID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LayerID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerID = { + "LayerID", + "LayerID", + &asn_OP_NativeInteger, + asn_DEF_LayerID_tags_1, + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + asn_DEF_LayerID_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LayerID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LayerID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LayerID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LayerType.c b/src/tmx/Asn_J2735/src/r2020/LayerType.c new file mode 100644 index 000000000..82c476608 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LayerType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LayerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LayerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LayerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 12, "mixedContent" }, + { 2, 14, "generalMapData" }, + { 3, 16, "intersectionData" }, + { 4, 9, "curveData" }, + { 5, 18, "roadwaySectionData" }, + { 6, 15, "parkingAreaData" }, + { 7, 14, "sharedLaneData" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_LayerType_enum2value_1[] = { + 4, /* curveData(4) */ + 2, /* generalMapData(2) */ + 3, /* intersectionData(3) */ + 1, /* mixedContent(1) */ + 0, /* none(0) */ + 6, /* parkingAreaData(6) */ + 5, /* roadwaySectionData(5) */ + 7 /* sharedLaneData(7) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { + asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerType = { + "LayerType", + "LayerType", + &asn_OP_NativeEnumerated, + asn_DEF_LayerType_tags_1, + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + asn_DEF_LayerType_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LayerType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LayerType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LayerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LightbarInUse.c b/src/tmx/Asn_J2735/src/r2020/LightbarInUse.c new file mode 100644 index 000000000..04ea45759 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LightbarInUse.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LightbarInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 19, "yellowCautionLights" }, + { 4, 16, "schooldBusLights" }, + { 5, 16, "arrowSignsActive" }, + { 6, 17, "slowMovingVehicle" }, + { 7, 9, "freqStops" } +}; +static const unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { + 5, /* arrowSignsActive(5) */ + 7, /* freqStops(7) */ + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 4, /* schooldBusLights(4) */ + 6, /* slowMovingVehicle(6) */ + 0, /* unavailable(0) */ + 3 /* yellowCautionLights(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { + asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { + "LightbarInUse", + "LightbarInUse", + &asn_OP_NativeEnumerated, + asn_DEF_LightbarInUse_tags_1, + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + asn_DEF_LightbarInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LightbarInUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LightbarInUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Location-quality.c b/src/tmx/Asn_J2735/src/r2020/Location-quality.c new file mode 100644 index 000000000..c425d5b84 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Location-quality.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Location-quality.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Location_quality_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { + { 0, 13, "loc-qual-bt1m" }, + { 1, 13, "loc-qual-bt5m" }, + { 2, 14, "loc-qual-bt12m" }, + { 3, 14, "loc-qual-bt50m" }, + { 4, 15, "loc-qual-bt125m" }, + { 5, 15, "loc-qual-bt500m" }, + { 6, 16, "loc-qual-bt1250m" }, + { 7, 16, "loc-qual-unknown" } +}; +static const unsigned int asn_MAP_Location_quality_enum2value_1[] = { + 6, /* loc-qual-bt1250m(6) */ + 4, /* loc-qual-bt125m(4) */ + 2, /* loc-qual-bt12m(2) */ + 0, /* loc-qual-bt1m(0) */ + 5, /* loc-qual-bt500m(5) */ + 3, /* loc-qual-bt50m(3) */ + 1, /* loc-qual-bt5m(1) */ + 7 /* loc-qual-unknown(7) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { + asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_quality = { + "Location-quality", + "Location-quality", + &asn_OP_NativeEnumerated, + asn_DEF_Location_quality_tags_1, + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + asn_DEF_Location_quality_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Location_quality_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Location_quality_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_quality_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Location-tech.c b/src/tmx/Asn_J2735/src/r2020/Location-tech.c new file mode 100644 index 000000000..e3f41212b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Location-tech.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Location-tech.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Location_tech_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 9 } /* (0..9,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { + { 0, 16, "loc-tech-unknown" }, + { 1, 13, "loc-tech-GNSS" }, + { 2, 13, "loc-tech-DGPS" }, + { 3, 12, "loc-tech-RTK" }, + { 4, 12, "loc-tech-PPP" }, + { 5, 14, "loc-tech-drGPS" }, + { 6, 15, "loc-tech-drDGPS" }, + { 7, 11, "loc-tech-dr" }, + { 8, 12, "loc-tech-nav" }, + { 9, 14, "loc-tech-fault" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Location_tech_enum2value_1[] = { + 2, /* loc-tech-DGPS(2) */ + 1, /* loc-tech-GNSS(1) */ + 4, /* loc-tech-PPP(4) */ + 3, /* loc-tech-RTK(3) */ + 7, /* loc-tech-dr(7) */ + 6, /* loc-tech-drDGPS(6) */ + 5, /* loc-tech-drGPS(5) */ + 9, /* loc-tech-fault(9) */ + 8, /* loc-tech-nav(8) */ + 0 /* loc-tech-unknown(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { + asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 11, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_tech = { + "Location-tech", + "Location-tech", + &asn_OP_NativeEnumerated, + asn_DEF_Location_tech_tags_1, + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + asn_DEF_Location_tech_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Location_tech_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Location_tech_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_tech_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Longitude.c b/src/tmx/Asn_J2735/src/r2020/Longitude.c new file mode 100644 index 000000000..55bfb90bc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Longitude.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Longitude.h" + +int +Longitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1799999999L && value <= 1800000001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Longitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-1799999999..1800000001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Longitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Longitude = { + "Longitude", + "Longitude", + &asn_OP_NativeInteger, + asn_DEF_Longitude_tags_1, + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + asn_DEF_Longitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Longitude_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Longitude_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Longitude_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LongitudeDMS.c b/src/tmx/Asn_J2735/src/r2020/LongitudeDMS.c new file mode 100644 index 000000000..3d684d51b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LongitudeDMS.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LongitudeDMS.h" + +int +LongitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64800000L && value <= 64800000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-64800000..64800000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { + "LongitudeDMS", + "LongitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LongitudeDMS_tags_1, + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_LongitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_LongitudeDMS_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + LongitudeDMS_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/r2020/LongitudeDMS2.c new file mode 100644 index 000000000..11412c506 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/LongitudeDMS2.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "LongitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLong, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { + sizeof(struct LongitudeDMS2), + offsetof(struct LongitudeDMS2, _asn_ctx), + asn_MAP_LongitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { + "LongitudeDMS2", + "LongitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LongitudeDMS2_tags_1, + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_LongitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MUTCDCode.c b/src/tmx/Asn_J2735/src/r2020/MUTCDCode.c new file mode 100644 index 000000000..2e677f5aa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MUTCDCode.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MUTCDCode.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 10, "regulatory" }, + { 2, 7, "warning" }, + { 3, 11, "maintenance" }, + { 4, 15, "motoristService" }, + { 5, 5, "guide" }, + { 6, 3, "rec" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { + 5, /* guide(5) */ + 3, /* maintenance(3) */ + 4, /* motoristService(4) */ + 0, /* none(0) */ + 6, /* rec(6) */ + 1, /* regulatory(1) */ + 2 /* warning(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { + asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { + "MUTCDCode", + "MUTCDCode", + &asn_OP_NativeEnumerated, + asn_DEF_MUTCDCode_tags_1, + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + asn_DEF_MUTCDCode_tags_1, /* Same as above */ + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MUTCDCode_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MUTCDCode_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/r2020/ManeuverAssistList.c new file mode 100644 index 000000000..42d449e8c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ManeuverAssistList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ManeuverAssistList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { + sizeof(struct ManeuverAssistList), + offsetof(struct ManeuverAssistList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { + "ManeuverAssistList", + "ManeuverAssistList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ManeuverAssistList_tags_1, + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ManeuverAssistList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ManeuverAssistList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_ManeuverAssistList_1, + 1, /* Single element */ + &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MapData-addGrpC.c b/src/tmx/Asn_J2735/src/r2020/MapData-addGrpC.c new file mode 100644 index 000000000..254814c23 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MapData-addGrpC.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MapData-addGrpC.h" + +asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData_addGrpC, signalHeadLocations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalHeadLocationList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalHeadLocations" + }, +}; +static const int asn_MAP_MapData_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_MapData_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1 = { + sizeof(struct MapData_addGrpC), + offsetof(struct MapData_addGrpC, _asn_ctx), + asn_MAP_MapData_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_MapData_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC = { + "MapData-addGrpC", + "MapData-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_MapData_addGrpC_tags_1, + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_MapData_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MapData_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_MapData_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MapData.c b/src/tmx/Asn_J2735/src/r2020/MapData.c new file mode 100644 index 000000000..49aafd0f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MapData.c @@ -0,0 +1,315 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MapData.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MapData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct MapData__regional), + offsetof(struct MapData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MapData_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, + { ATF_POINTER, 7, offsetof(struct MapData, layerType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "layerType" + }, + { ATF_POINTER, 6, offsetof(struct MapData, layerID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "layerID" + }, + { ATF_POINTER, 5, offsetof(struct MapData, intersections), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionGeometryList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 4, offsetof(struct MapData, roadSegments), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadSegments" + }, + { ATF_POINTER, 3, offsetof(struct MapData, dataParameters), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DataParameters, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataParameters" + }, + { ATF_POINTER, 2, offsetof(struct MapData, restrictionList), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "restrictionList" + }, + { ATF_POINTER, 1, offsetof(struct MapData, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MapData_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgIssueRevision */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* layerType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadSegments */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataParameters */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* restrictionList */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { + sizeof(struct MapData), + offsetof(struct MapData, _asn_ctx), + asn_MAP_MapData_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_MapData_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData = { + "MapData", + "MapData", + &asn_OP_SEQUENCE, + asn_DEF_MapData_tags_1, + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + asn_DEF_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MapData_1, + 9, /* Elements count */ + &asn_SPC_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/r2020/MaxTimetoChange.c new file mode 100644 index 000000000..d49a54fae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MaxTimetoChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MaxTimetoChange.h" + +int +MaxTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 2402L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { + "MaxTimetoChange", + "MaxTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MaxTimetoChange_tags_1, + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MaxTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MaxTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MaxTimetoChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MeasurementTimeOffset.c b/src/tmx/Asn_J2735/src/r2020/MeasurementTimeOffset.c new file mode 100644 index 000000000..604caf91c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MeasurementTimeOffset.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "MeasurementTimeOffset.h" + +int +MeasurementTimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1500 && value <= 1500)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1500..1500) */, + -1}; +asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -1500, 1500 } /* (-1500..1500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MeasurementTimeOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset = { + "MeasurementTimeOffset", + "MeasurementTimeOffset", + &asn_OP_NativeInteger, + asn_DEF_MeasurementTimeOffset_tags_1, + sizeof(asn_DEF_MeasurementTimeOffset_tags_1) + /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ + asn_DEF_MeasurementTimeOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_MeasurementTimeOffset_tags_1) + /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ + { &asn_OER_type_MeasurementTimeOffset_constr_1, &asn_PER_type_MeasurementTimeOffset_constr_1, MeasurementTimeOffset_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/r2020/MergeDivergeNodeAngle.c new file mode 100644 index 000000000..c2a31f809 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MergeDivergeNodeAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MergeDivergeNodeAngle.h" + +int +MergeDivergeNodeAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180L && value <= 180L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { + "MergeDivergeNodeAngle", + "MergeDivergeNodeAngle", + &asn_OP_NativeInteger, + asn_DEF_MergeDivergeNodeAngle_tags_1, + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MergeDivergeNodeAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MergeDivergeNodeAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MergeDivergeNodeAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MessageBLOB.c b/src/tmx/Asn_J2735/src/r2020/MessageBLOB.c new file mode 100644 index 000000000..2f59a34df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MessageBLOB.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MessageBLOB.h" + +int +MessageBLOB_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10UL && size <= 2000UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(10..2000)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MessageBLOB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MessageBLOB = { + "MessageBLOB", + "MessageBLOB", + &asn_OP_OCTET_STRING, + asn_DEF_MessageBLOB_tags_1, + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + asn_DEF_MessageBLOB_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MessageBLOB_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MessageBLOB_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MessageBLOB_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MessageFrame.c b/src/tmx/Asn_J2735/src/r2020/MessageFrame.c new file mode 100644 index 000000000..7751f35e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MessageFrame.c @@ -0,0 +1,872 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MessageFrame" + * found in "J2735-MessageFrame.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MessageFrame.h" + +static const long asn_VAL_1_basicSafetyMessage = 20; +static const long asn_VAL_2_mapData = 18; +static const long asn_VAL_3_signalPhaseAndTimingMessage = 19; +static const long asn_VAL_4_commonSafetyRequest = 21; +static const long asn_VAL_5_emergencyVehicleAlert = 22; +static const long asn_VAL_6_intersectionCollision = 23; +static const long asn_VAL_7_nmeaCorrections = 24; +static const long asn_VAL_8_probeDataManagement = 25; +static const long asn_VAL_9_probeVehicleData = 26; +static const long asn_VAL_10_roadSideAlert = 27; +static const long asn_VAL_11_rtcmCorrections = 28; +static const long asn_VAL_12_signalRequestMessage = 29; +static const long asn_VAL_13_signalStatusMessage = 30; +static const long asn_VAL_14_travelerInformation = 31; +static const long asn_VAL_15_personalSafetyMessage = 32; +static const long asn_VAL_16_testMessage00 = 240; +static const long asn_VAL_17_testMessage01 = 241; +static const long asn_VAL_18_testMessage02 = 242; +static const long asn_VAL_19_testMessage03 = 243; +static const long asn_VAL_20_testMessage04 = 244; +static const long asn_VAL_21_testMessage05 = 245; +static const long asn_VAL_22_testMessage06 = 246; +static const long asn_VAL_23_testMessage07 = 247; +static const long asn_VAL_24_testMessage08 = 248; +static const long asn_VAL_25_testMessage09 = 249; +static const long asn_VAL_26_testMessage10 = 250; +static const long asn_VAL_27_testMessage11 = 251; +static const long asn_VAL_28_testMessage12 = 252; +static const long asn_VAL_29_testMessage13 = 253; +static const long asn_VAL_30_testMessage14 = 254; +static const long asn_VAL_31_testMessage15 = 255; +static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_2_mapData }, + { "&Type", aioc__type, &asn_DEF_MapData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_3_signalPhaseAndTimingMessage }, + { "&Type", aioc__type, &asn_DEF_SPAT }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_4_commonSafetyRequest }, + { "&Type", aioc__type, &asn_DEF_CommonSafetyRequest }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_5_emergencyVehicleAlert }, + { "&Type", aioc__type, &asn_DEF_EmergencyVehicleAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_6_intersectionCollision }, + { "&Type", aioc__type, &asn_DEF_IntersectionCollision }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_7_nmeaCorrections }, + { "&Type", aioc__type, &asn_DEF_NMEAcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_8_probeDataManagement }, + { "&Type", aioc__type, &asn_DEF_ProbeDataManagement }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_9_probeVehicleData }, + { "&Type", aioc__type, &asn_DEF_ProbeVehicleData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_10_roadSideAlert }, + { "&Type", aioc__type, &asn_DEF_RoadSideAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_11_rtcmCorrections }, + { "&Type", aioc__type, &asn_DEF_RTCMcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_12_signalRequestMessage }, + { "&Type", aioc__type, &asn_DEF_SignalRequestMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_13_signalStatusMessage }, + { "&Type", aioc__type, &asn_DEF_SignalStatusMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_14_travelerInformation }, + { "&Type", aioc__type, &asn_DEF_TravelerInformation }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_15_personalSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_PersonalSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_16_testMessage00 }, + { "&Type", aioc__type, &asn_DEF_TestMessage00 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_17_testMessage01 }, + { "&Type", aioc__type, &asn_DEF_TestMessage01 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_18_testMessage02 }, + { "&Type", aioc__type, &asn_DEF_TestMessage02 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_19_testMessage03 }, + { "&Type", aioc__type, &asn_DEF_TestMessage03 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_20_testMessage04 }, + { "&Type", aioc__type, &asn_DEF_TestMessage04 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_21_testMessage05 }, + { "&Type", aioc__type, &asn_DEF_TestMessage05 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_22_testMessage06 }, + { "&Type", aioc__type, &asn_DEF_TestMessage06 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_23_testMessage07 }, + { "&Type", aioc__type, &asn_DEF_TestMessage07 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_24_testMessage08 }, + { "&Type", aioc__type, &asn_DEF_TestMessage08 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_25_testMessage09 }, + { "&Type", aioc__type, &asn_DEF_TestMessage09 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_26_testMessage10 }, + { "&Type", aioc__type, &asn_DEF_TestMessage10 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_27_testMessage11 }, + { "&Type", aioc__type, &asn_DEF_TestMessage11 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_28_testMessage12 }, + { "&Type", aioc__type, &asn_DEF_TestMessage12 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_29_testMessage13 }, + { "&Type", aioc__type, &asn_DEF_TestMessage13 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, + { "&Type", aioc__type, &asn_DEF_TestMessage14 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, + { "&Type", aioc__type, &asn_DEF_TestMessage15 } +}; +static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { + { 31, 2, asn_IOS_MessageTypes_1_rows } +}; +static int +memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_MessageFrame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_MessageTypes_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MessageFrame, messageId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_messageId_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_messageId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.BasicSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BasicSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "BasicSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.MapData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MapData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MapData" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SPAT), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SPAT, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SPAT" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.CommonSafetyRequest), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CommonSafetyRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "CommonSafetyRequest" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.EmergencyVehicleAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EmergencyVehicleAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "EmergencyVehicleAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.IntersectionCollision), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionCollision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "IntersectionCollision" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.NMEAcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NMEAcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "NMEAcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeDataManagement), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeDataManagement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ProbeDataManagement" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.ProbeVehicleData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeVehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ProbeVehicleData" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RoadSideAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RoadSideAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.RTCMcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RTCMcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RTCMcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalRequestMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SignalRequestMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SignalStatusMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SignalStatusMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TravelerInformation), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TravelerInformation" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.PersonalSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PersonalSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "PersonalSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage00), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage00, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage00" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage01), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage01, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage01" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage02), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage02, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage02" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage03), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage03, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage03" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage04), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage04, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage04" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage05), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage05, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage05" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage06), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage06, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage06" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage07), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage07" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage08), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage08" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage09), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage09" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage10), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage10" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage11), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage11" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage12), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage12" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage13), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage13" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage14), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage14" + }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.TestMessage15), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage15, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "TestMessage15" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 30 }, /* BasicSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 29 }, /* MapData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 28 }, /* SPAT */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 27 }, /* CommonSafetyRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 26 }, /* EmergencyVehicleAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 25 }, /* IntersectionCollision */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 24 }, /* NMEAcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 23 }, /* ProbeDataManagement */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 22 }, /* ProbeVehicleData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 21 }, /* RoadSideAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 20 }, /* RTCMcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 19 }, /* SignalRequestMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 18 }, /* SignalStatusMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 17 }, /* TravelerInformation */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 16 }, /* PersonalSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 15 }, /* TestMessage00 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 14 }, /* TestMessage01 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 13 }, /* TestMessage02 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 12 }, /* TestMessage03 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 11 }, /* TestMessage04 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 10 }, /* TestMessage05 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 9 }, /* TestMessage06 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 8 }, /* TestMessage07 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 7 }, /* TestMessage08 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 6 }, /* TestMessage09 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 5 }, /* TestMessage10 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 4 }, /* TestMessage11 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 3 }, /* TestMessage12 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 2 }, /* TestMessage13 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 1 }, /* TestMessage14 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 0 } /* TestMessage15 */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { + sizeof(struct MessageFrame__value), + offsetof(struct MessageFrame__value, _asn_ctx), + offsetof(struct MessageFrame__value, present), + sizeof(((struct MessageFrame__value *)0)->present), + asn_MAP_value_tag2el_3, + 31, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_3 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_value_3, + 31, /* Elements count */ + &asn_SPC_value_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_MessageFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame, messageId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_messageId_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_messageId_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_messageId_constraint_1 + }, + 0, 0, /* No default value */ + "messageId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct MessageFrame, value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_3, + select_MessageFrame_value_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_value_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_value_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_value_constraint_1 + }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_MessageFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* value */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MessageFrame_specs_1 = { + sizeof(struct MessageFrame), + offsetof(struct MessageFrame, _asn_ctx), + asn_MAP_MessageFrame_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageFrame = { + "MessageFrame", + "MessageFrame", + &asn_OP_SEQUENCE, + asn_DEF_MessageFrame_tags_1, + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + asn_DEF_MessageFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MessageFrame_1, + 2, /* Elements count */ + &asn_SPC_MessageFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MinTimetoChange.c b/src/tmx/Asn_J2735/src/r2020/MinTimetoChange.c new file mode 100644 index 000000000..0f1bc375e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MinTimetoChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MinTimetoChange.h" + +int +MinTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 2402L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { + "MinTimetoChange", + "MinTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MinTimetoChange_tags_1, + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MinTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinTimetoChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinTimetoChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Minute.c b/src/tmx/Asn_J2735/src/r2020/Minute.c new file mode 100644 index 000000000..f02ac5f30 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Minute.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Minute.h" + +int +Minute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Minute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Minute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Minute = { + "Minute", + "Minute", + &asn_OP_NativeInteger, + asn_DEF_Minute_tags_1, + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + asn_DEF_Minute_tags_1, /* Same as above */ + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Minute_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Minute_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Minute_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/r2020/MinuteOfTheYear.c new file mode 100644 index 000000000..b5a97a5d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MinuteOfTheYear.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MinuteOfTheYear.h" + +int +MinuteOfTheYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 527040L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..527040) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { + "MinuteOfTheYear", + "MinuteOfTheYear", + &asn_OP_NativeInteger, + asn_DEF_MinuteOfTheYear_tags_1, + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinuteOfTheYear_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinuteOfTheYear_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinuteOfTheYear_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MinutesAngle.c b/src/tmx/Asn_J2735/src/r2020/MinutesAngle.c new file mode 100644 index 000000000..4c2702de3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MinutesAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MinutesAngle.h" + +int +MinutesAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 59L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..59) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { + "MinutesAngle", + "MinutesAngle", + &asn_OP_NativeInteger, + asn_DEF_MinutesAngle_tags_1, + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + asn_DEF_MinutesAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinutesAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinutesAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinutesAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MinutesDuration.c b/src/tmx/Asn_J2735/src/r2020/MinutesDuration.c new file mode 100644 index 000000000..40d50071c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MinutesDuration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MinutesDuration.h" + +int +MinutesDuration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { + "MinutesDuration", + "MinutesDuration", + &asn_OP_NativeInteger, + asn_DEF_MinutesDuration_tags_1, + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + asn_DEF_MinutesDuration_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MinutesDuration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MinutesDuration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MinutesDuration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityDynamicID.c b/src/tmx/Asn_J2735/src/r2020/MobilityDynamicID.c new file mode 100644 index 000000000..740cd9403 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityDynamicID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityDynamicID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityDynamicID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 8) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityDynamicID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID = { + "MobilityDynamicID", + "MobilityDynamicID", + &asn_OP_IA5String, + asn_DEF_MobilityDynamicID_tags_1, + sizeof(asn_DEF_MobilityDynamicID_tags_1) + /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ + asn_DEF_MobilityDynamicID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityDynamicID_tags_1) + /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityDynamicID_constr_1, &asn_PER_type_MobilityDynamicID_constr_1, MobilityDynamicID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityECEFCoordinate.c b/src/tmx/Asn_J2735/src/r2020/MobilityECEFCoordinate.c new file mode 100644 index 000000000..0ccbbe2e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityECEFCoordinate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFCoordinate.h" + +int +MobilityECEFCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -638363700 && value <= 638363700)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-638363700..638363700) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -638363700, 638363700 } /* (-638363700..638363700) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFCoordinate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate = { + "MobilityECEFCoordinate", + "MobilityECEFCoordinate", + &asn_OP_NativeInteger, + asn_DEF_MobilityECEFCoordinate_tags_1, + sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFCoordinate_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityECEFCoordinate_constr_1, &asn_PER_type_MobilityECEFCoordinate_constr_1, MobilityECEFCoordinate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffset.c b/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffset.c new file mode 100644 index 000000000..3f2f36cc0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffset.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFOffset.h" + +asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetY" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetZ" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityECEFOffset_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1 = { + sizeof(struct MobilityECEFOffset), + offsetof(struct MobilityECEFOffset, _asn_ctx), + asn_MAP_MobilityECEFOffset_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset = { + "MobilityECEFOffset", + "MobilityECEFOffset", + &asn_OP_SEQUENCE, + asn_DEF_MobilityECEFOffset_tags_1, + sizeof(asn_DEF_MobilityECEFOffset_tags_1) + /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFOffset_tags_1) + /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityECEFOffset_1, + 3, /* Elements count */ + &asn_SPC_MobilityECEFOffset_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffsetCoordinate.c b/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffsetCoordinate.c new file mode 100644 index 000000000..0e2b37baf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityECEFOffsetCoordinate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFOffsetCoordinate.h" + +int +MobilityECEFOffsetCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -500 && value <= 501)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-500..501) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -500, 501 } /* (-500..501) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFOffsetCoordinate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate = { + "MobilityECEFOffsetCoordinate", + "MobilityECEFOffsetCoordinate", + &asn_OP_NativeInteger, + asn_DEF_MobilityECEFOffsetCoordinate_tags_1, + sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFOffsetCoordinate_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityECEFOffsetCoordinate_constr_1, &asn_PER_type_MobilityECEFOffsetCoordinate_constr_1, MobilityECEFOffsetCoordinate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityGUID.c b/src/tmx/Asn_J2735/src/r2020/MobilityGUID.c new file mode 100644 index 000000000..8cac1275f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityGUID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityGUID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityGUID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 36) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityGUID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 36 /* (SIZE(36..36)) */}; +asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 36, 36 } /* (SIZE(36..36)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityGUID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityGUID = { + "MobilityGUID", + "MobilityGUID", + &asn_OP_IA5String, + asn_DEF_MobilityGUID_tags_1, + sizeof(asn_DEF_MobilityGUID_tags_1) + /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ + asn_DEF_MobilityGUID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityGUID_tags_1) + /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityGUID_constr_1, &asn_PER_type_MobilityGUID_constr_1, MobilityGUID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityHeader.c b/src/tmx/Asn_J2735/src/r2020/MobilityHeader.c new file mode 100644 index 000000000..b7c8d550c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityHeader.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityHeader.h" + +asn_TYPE_member_t asn_MBR_MobilityHeader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostStaticId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStaticID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hostStaticId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, targetStaticId), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStaticID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "targetStaticId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostBSMId), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityDynamicID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hostBSMId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, planId), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityGUID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "planId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, timestamp), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timestamp" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityHeader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityHeader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hostStaticId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* targetStaticId */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* hostBSMId */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* planId */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* timestamp */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1 = { + sizeof(struct MobilityHeader), + offsetof(struct MobilityHeader, _asn_ctx), + asn_MAP_MobilityHeader_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityHeader = { + "MobilityHeader", + "MobilityHeader", + &asn_OP_SEQUENCE, + asn_DEF_MobilityHeader_tags_1, + sizeof(asn_DEF_MobilityHeader_tags_1) + /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ + asn_DEF_MobilityHeader_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityHeader_tags_1) + /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityHeader_1, + 5, /* Elements count */ + &asn_SPC_MobilityHeader_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityLocation.c b/src/tmx/Asn_J2735/src/r2020/MobilityLocation.c new file mode 100644 index 000000000..e967c0d3a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityLocation.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityLocation.h" + +asn_TYPE_member_t asn_MBR_MobilityLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefX" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefY" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefZ" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, timestamp), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timestamp" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ecefX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ecefY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ecefZ */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* timestamp */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1 = { + sizeof(struct MobilityLocation), + offsetof(struct MobilityLocation, _asn_ctx), + asn_MAP_MobilityLocation_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityLocation = { + "MobilityLocation", + "MobilityLocation", + &asn_OP_SEQUENCE, + asn_DEF_MobilityLocation_tags_1, + sizeof(asn_DEF_MobilityLocation_tags_1) + /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ + asn_DEF_MobilityLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityLocation_tags_1) + /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityLocation_1, + 4, /* Elements count */ + &asn_SPC_MobilityLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityLocationOffsets.c b/src/tmx/Asn_J2735/src/r2020/MobilityLocationOffsets.c new file mode 100644 index 000000000..336af15ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityLocationOffsets.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityLocationOffsets.h" + +static asn_oer_constraints_t asn_OER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..60)) */}; +asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (SIZE(0..60)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[] = { + { ATF_NOFLAGS, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MobilityECEFOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityLocationOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1 = { + sizeof(struct MobilityLocationOffsets), + offsetof(struct MobilityLocationOffsets, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets = { + "MobilityLocationOffsets", + "MobilityLocationOffsets", + &asn_OP_SEQUENCE_OF, + asn_DEF_MobilityLocationOffsets_tags_1, + sizeof(asn_DEF_MobilityLocationOffsets_tags_1) + /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ + asn_DEF_MobilityLocationOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityLocationOffsets_tags_1) + /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityLocationOffsets_constr_1, &asn_PER_type_MobilityLocationOffsets_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_MobilityLocationOffsets_1, + 1, /* Single element */ + &asn_SPC_MobilityLocationOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityOperation.c b/src/tmx/Asn_J2735/src/r2020/MobilityOperation.c new file mode 100644 index 000000000..bccd960cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityOperation.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityOperation.h" + +asn_TYPE_member_t asn_MBR_MobilityOperation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, strategy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStrategy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategy" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, operationParams), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityParameters, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "operationParams" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityOperation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityOperation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* operationParams */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1 = { + sizeof(struct MobilityOperation), + offsetof(struct MobilityOperation, _asn_ctx), + asn_MAP_MobilityOperation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityOperation = { + "MobilityOperation", + "MobilityOperation", + &asn_OP_SEQUENCE, + asn_DEF_MobilityOperation_tags_1, + sizeof(asn_DEF_MobilityOperation_tags_1) + /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ + asn_DEF_MobilityOperation_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityOperation_tags_1) + /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityOperation_1, + 2, /* Elements count */ + &asn_SPC_MobilityOperation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityParameters.c b/src/tmx/Asn_J2735/src/r2020/MobilityParameters.c new file mode 100644 index 000000000..ca4cd5d13 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityParameters.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityParameters.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityParameters_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 1000) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityParameters_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..1000)) */}; +asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 10, 10, 2, 1000 } /* (SIZE(2..1000)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityParameters = { + "MobilityParameters", + "MobilityParameters", + &asn_OP_IA5String, + asn_DEF_MobilityParameters_tags_1, + sizeof(asn_DEF_MobilityParameters_tags_1) + /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ + asn_DEF_MobilityParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityParameters_tags_1) + /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityParameters_constr_1, &asn_PER_type_MobilityParameters_constr_1, MobilityParameters_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityPath.c b/src/tmx/Asn_J2735/src/r2020/MobilityPath.c new file mode 100644 index 000000000..92134c978 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityPath.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityPath.h" + +asn_TYPE_member_t asn_MBR_MobilityPath_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, trajectory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocationOffsets, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectory" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityPath_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityPath_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* trajectory */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1 = { + sizeof(struct MobilityPath), + offsetof(struct MobilityPath, _asn_ctx), + asn_MAP_MobilityPath_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityPath = { + "MobilityPath", + "MobilityPath", + &asn_OP_SEQUENCE, + asn_DEF_MobilityPath_tags_1, + sizeof(asn_DEF_MobilityPath_tags_1) + /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ + asn_DEF_MobilityPath_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityPath_tags_1) + /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityPath_1, + 2, /* Elements count */ + &asn_SPC_MobilityPath_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityPlanType.c b/src/tmx/Asn_J2735/src/r2020/MobilityPlanType.c new file mode 100644 index 000000000..f275b2807 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityPlanType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityPlanType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityPlanType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MobilityPlanType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 22, "changingLanesToTheLeft" }, + { 2, 23, "changingLanesToTheRight" }, + { 3, 17, "joinPlatoonAtRear" }, + { 4, 19, "platoonFollowerJoin" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MobilityPlanType_enum2value_1[] = { + 1, /* changingLanesToTheLeft(1) */ + 2, /* changingLanesToTheRight(2) */ + 3, /* joinPlatoonAtRear(3) */ + 4, /* platoonFollowerJoin(4) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1 = { + asn_MAP_MobilityPlanType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MobilityPlanType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MobilityPlanType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityPlanType = { + "MobilityPlanType", + "MobilityPlanType", + &asn_OP_NativeEnumerated, + asn_DEF_MobilityPlanType_tags_1, + sizeof(asn_DEF_MobilityPlanType_tags_1) + /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ + asn_DEF_MobilityPlanType_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityPlanType_tags_1) + /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityPlanType_constr_1, &asn_PER_type_MobilityPlanType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MobilityPlanType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityRequest.c b/src/tmx/Asn_J2735/src/r2020/MobilityRequest.c new file mode 100644 index 000000000..987679861 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityRequest.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityRequest.h" + +asn_TYPE_member_t asn_MBR_MobilityRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStrategy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategy" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, planType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityPlanType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "planType" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, urgency), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityUrgency, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "urgency" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, location), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategyParams), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityParameters, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategyParams" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectoryStart), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectoryStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectory), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocationOffsets, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectory" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, expiration), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "expiration" + }, +}; +static const int asn_MAP_MobilityRequest_oms_1[] = { 5, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_MobilityRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* planType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* urgency */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* strategyParams */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* trajectoryStart */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trajectory */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* expiration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1 = { + sizeof(struct MobilityRequest), + offsetof(struct MobilityRequest, _asn_ctx), + asn_MAP_MobilityRequest_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_MobilityRequest_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityRequest = { + "MobilityRequest", + "MobilityRequest", + &asn_OP_SEQUENCE, + asn_DEF_MobilityRequest_tags_1, + sizeof(asn_DEF_MobilityRequest_tags_1) + /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ + asn_DEF_MobilityRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityRequest_tags_1) + /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityRequest_1, + 8, /* Elements count */ + &asn_SPC_MobilityRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityResponse.c b/src/tmx/Asn_J2735/src/r2020/MobilityResponse.c new file mode 100644 index 000000000..d6335ccbc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityResponse.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityResponse.h" + +asn_TYPE_member_t asn_MBR_MobilityResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, urgency), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityUrgency, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "urgency" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, isAccepted), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityResponseFlag, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "isAccepted" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* urgency */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* isAccepted */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1 = { + sizeof(struct MobilityResponse), + offsetof(struct MobilityResponse, _asn_ctx), + asn_MAP_MobilityResponse_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityResponse = { + "MobilityResponse", + "MobilityResponse", + &asn_OP_SEQUENCE, + asn_DEF_MobilityResponse_tags_1, + sizeof(asn_DEF_MobilityResponse_tags_1) + /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ + asn_DEF_MobilityResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityResponse_tags_1) + /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityResponse_1, + 2, /* Elements count */ + &asn_SPC_MobilityResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityResponseFlag.c b/src/tmx/Asn_J2735/src/r2020/MobilityResponseFlag.c new file mode 100644 index 000000000..b43d1876d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityResponseFlag.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityResponseFlag.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_MobilityResponseFlag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag = { + "MobilityResponseFlag", + "MobilityResponseFlag", + &asn_OP_BOOLEAN, + asn_DEF_MobilityResponseFlag_tags_1, + sizeof(asn_DEF_MobilityResponseFlag_tags_1) + /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ + asn_DEF_MobilityResponseFlag_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityResponseFlag_tags_1) + /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityStaticID.c b/src/tmx/Asn_J2735/src/r2020/MobilityStaticID.c new file mode 100644 index 000000000..792fc2807 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityStaticID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityStaticID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityStaticID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 16) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityStaticID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..16)) */}; +asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 2, 16 } /* (SIZE(2..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityStaticID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityStaticID = { + "MobilityStaticID", + "MobilityStaticID", + &asn_OP_IA5String, + asn_DEF_MobilityStaticID_tags_1, + sizeof(asn_DEF_MobilityStaticID_tags_1) + /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ + asn_DEF_MobilityStaticID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityStaticID_tags_1) + /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityStaticID_constr_1, &asn_PER_type_MobilityStaticID_constr_1, MobilityStaticID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityStrategy.c b/src/tmx/Asn_J2735/src/r2020/MobilityStrategy.c new file mode 100644 index 000000000..419539af0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityStrategy.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityStrategy.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityStrategy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 50) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityStrategy_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..50)) */}; +asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 2, 50 } /* (SIZE(2..50)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityStrategy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityStrategy = { + "MobilityStrategy", + "MobilityStrategy", + &asn_OP_IA5String, + asn_DEF_MobilityStrategy_tags_1, + sizeof(asn_DEF_MobilityStrategy_tags_1) + /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ + asn_DEF_MobilityStrategy_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityStrategy_tags_1) + /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityStrategy_constr_1, &asn_PER_type_MobilityStrategy_constr_1, MobilityStrategy_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityTimestamp.c b/src/tmx/Asn_J2735/src/r2020/MobilityTimestamp.c new file mode 100644 index 000000000..c95dd6d6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityTimestamp.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityTimestamp.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityTimestamp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 19) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { + { 0, 0 }, + 19 /* (SIZE(19..19)) */}; +asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityTimestamp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp = { + "MobilityTimestamp", + "MobilityTimestamp", + &asn_OP_IA5String, + asn_DEF_MobilityTimestamp_tags_1, + sizeof(asn_DEF_MobilityTimestamp_tags_1) + /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ + asn_DEF_MobilityTimestamp_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityTimestamp_tags_1) + /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityTimestamp_constr_1, &asn_PER_type_MobilityTimestamp_constr_1, MobilityTimestamp_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MobilityUrgency.c b/src/tmx/Asn_J2735/src/r2020/MobilityUrgency.c new file mode 100644 index 000000000..a85d87e4a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MobilityUrgency.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityUrgency.h" + +int +MobilityUrgency_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityUrgency_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityUrgency_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityUrgency = { + "MobilityUrgency", + "MobilityUrgency", + &asn_OP_NativeInteger, + asn_DEF_MobilityUrgency_tags_1, + sizeof(asn_DEF_MobilityUrgency_tags_1) + /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ + asn_DEF_MobilityUrgency_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityUrgency_tags_1) + /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityUrgency_constr_1, &asn_PER_type_MobilityUrgency_constr_1, MobilityUrgency_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Month.c b/src/tmx/Asn_J2735/src/r2020/Month.c new file mode 100644 index 000000000..c50f7e067 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Month.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Month.h" + +int +Month_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Month_constr_1 CC_NOTUSED = { + { 1, 1 } /* (1..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Month_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Month_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Month = { + "Month", + "Month", + &asn_OP_NativeInteger, + asn_DEF_Month_tags_1, + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + asn_DEF_Month_tags_1, /* Same as above */ + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Month_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Month_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Month_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/r2020/MotorizedPropelledType.c new file mode 100644 index 000000000..d0cba37a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MotorizedPropelledType.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MotorizedPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 10, "wheelChair" }, + { 3, 7, "bicycle" }, + { 4, 7, "scooter" }, + { 5, 19, "selfBalancingDevice" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { + 3, /* bicycle(3) */ + 1, /* otherTypes(1) */ + 4, /* scooter(4) */ + 5, /* selfBalancingDevice(5) */ + 0, /* unavailable(0) */ + 2 /* wheelChair(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { + asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { + "MotorizedPropelledType", + "MotorizedPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_MotorizedPropelledType_tags_1, + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MotorizedPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MotorizedPropelledType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementEvent-addGrpB.c b/src/tmx/Asn_J2735/src/r2020/MovementEvent-addGrpB.c new file mode 100644 index 000000000..5d43f0eda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementEvent-addGrpB.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementEvent-addGrpB.h" + +asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent_addGrpB, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinTimetoChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct MovementEvent_addGrpB, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MaxTimetoChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent_addGrpB, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent_addGrpB, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_MovementEvent_addGrpB_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1 = { + sizeof(struct MovementEvent_addGrpB), + offsetof(struct MovementEvent_addGrpB, _asn_ctx), + asn_MAP_MovementEvent_addGrpB_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_MovementEvent_addGrpB_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB = { + "MovementEvent-addGrpB", + "MovementEvent-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_addGrpB_tags_1, + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementEvent_addGrpB_1, + 6, /* Elements count */ + &asn_SPC_MovementEvent_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementEvent.c b/src/tmx/Asn_J2735/src/r2020/MovementEvent.c new file mode 100644 index 000000000..e3a5073ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementEvent.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementEvent.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MovementEvent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct MovementEvent__regional), + offsetof(struct MovementEvent__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementPhaseState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventState" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeChangeDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timing" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speeds" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { + sizeof(struct MovementEvent), + offsetof(struct MovementEvent, _asn_ctx), + asn_MAP_MovementEvent_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_MovementEvent_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent = { + "MovementEvent", + "MovementEvent", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_tags_1, + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementEvent_1, + 4, /* Elements count */ + &asn_SPC_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementEventList.c b/src/tmx/Asn_J2735/src/r2020/MovementEventList.c new file mode 100644 index 000000000..c4a5b8b22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementEventList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementEventList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementEventList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { + sizeof(struct MovementEventList), + offsetof(struct MovementEventList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEventList = { + "MovementEventList", + "MovementEventList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementEventList_tags_1, + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + asn_DEF_MovementEventList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementEventList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementEventList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_MovementEventList_1, + 1, /* Single element */ + &asn_SPC_MovementEventList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementList.c b/src/tmx/Asn_J2735/src/r2020/MovementList.c new file mode 100644 index 000000000..6de361245 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_MovementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { + sizeof(struct MovementList), + offsetof(struct MovementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementList = { + "MovementList", + "MovementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementList_tags_1, + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + asn_DEF_MovementList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_MovementList_1, + 1, /* Single element */ + &asn_SPC_MovementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementPhaseState.c b/src/tmx/Asn_J2735/src/r2020/MovementPhaseState.c new file mode 100644 index 000000000..ba61a5f3f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementPhaseState.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementPhaseState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 4, "dark" }, + { 2, 17, "stop-Then-Proceed" }, + { 3, 15, "stop-And-Remain" }, + { 4, 12, "pre-Movement" }, + { 5, 27, "permissive-Movement-Allowed" }, + { 6, 26, "protected-Movement-Allowed" }, + { 7, 20, "permissive-clearance" }, + { 8, 19, "protected-clearance" }, + { 9, 27, "caution-Conflicting-Traffic" } +}; +static const unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { + 9, /* caution-Conflicting-Traffic(9) */ + 1, /* dark(1) */ + 5, /* permissive-Movement-Allowed(5) */ + 7, /* permissive-clearance(7) */ + 4, /* pre-Movement(4) */ + 6, /* protected-Movement-Allowed(6) */ + 8, /* protected-clearance(8) */ + 3, /* stop-And-Remain(3) */ + 2, /* stop-Then-Proceed(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { + asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { + "MovementPhaseState", + "MovementPhaseState", + &asn_OP_NativeEnumerated, + asn_DEF_MovementPhaseState_tags_1, + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + asn_DEF_MovementPhaseState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MovementPhaseState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MovementPhaseState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MovementState.c b/src/tmx/Asn_J2735/src/r2020/MovementState.c new file mode 100644 index 000000000..3137817a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MovementState.c @@ -0,0 +1,243 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MovementState.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_MovementState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct MovementState__regional), + offsetof(struct MovementState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementState_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementState, movementName), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "movementName" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementEventList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "state-time-speed" + }, + { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct MovementState, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { + sizeof(struct MovementState), + offsetof(struct MovementState, _asn_ctx), + asn_MAP_MovementState_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_MovementState_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementState = { + "MovementState", + "MovementState", + &asn_OP_SEQUENCE, + asn_DEF_MovementState_tags_1, + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + asn_DEF_MovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_MovementState_1, + 5, /* Elements count */ + &asn_SPC_MovementState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MsgCRC.c b/src/tmx/Asn_J2735/src/r2020/MsgCRC.c new file mode 100644 index 000000000..946e4d76e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MsgCRC.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MsgCRC.h" + +int +MsgCRC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MsgCRC_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MsgCRC = { + "MsgCRC", + "MsgCRC", + &asn_OP_OCTET_STRING, + asn_DEF_MsgCRC_tags_1, + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + asn_DEF_MsgCRC_tags_1, /* Same as above */ + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MsgCRC_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MsgCRC_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + MsgCRC_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/r2020/MultiVehicleResponse.c new file mode 100644 index 000000000..03ecee44d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/MultiVehicleResponse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "MultiVehicleResponse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "singleVehicle" }, + { 2, 12, "multiVehicle" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { + 2, /* multiVehicle(2) */ + 3, /* reserved(3) */ + 1, /* singleVehicle(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { + asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { + "MultiVehicleResponse", + "MultiVehicleResponse", + &asn_OP_NativeEnumerated, + asn_DEF_MultiVehicleResponse_tags_1, + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_MultiVehicleResponse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_MultiVehicleResponse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/r2020/NMEA-MsgType.c new file mode 100644 index 000000000..d80c2273d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NMEA-MsgType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NMEA-MsgType.h" + +int +NMEA_MsgType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { + "NMEA-MsgType", + "NMEA-MsgType", + &asn_OP_NativeInteger, + asn_DEF_NMEA_MsgType_tags_1, + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_MsgType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_MsgType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NMEA_MsgType_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NMEA-Payload.c b/src/tmx/Asn_J2735/src/r2020/NMEA-Payload.c new file mode 100644 index 000000000..dae174401 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NMEA-Payload.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NMEA-Payload.h" + +int +NMEA_Payload_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 1023UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { + "NMEA-Payload", + "NMEA-Payload", + &asn_OP_OCTET_STRING, + asn_DEF_NMEA_Payload_tags_1, + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_Payload_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_Payload_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NMEA_Payload_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NMEA-Revision.c b/src/tmx/Asn_J2735/src/r2020/NMEA-Revision.c new file mode 100644 index 000000000..6745fde03 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NMEA-Revision.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NMEA-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "reserved" }, + { 2, 4, "rev1" }, + { 3, 4, "rev2" }, + { 4, 4, "rev3" }, + { 5, 4, "rev4" }, + { 6, 4, "rev5" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { + 1, /* reserved(1) */ + 2, /* rev1(2) */ + 3, /* rev2(3) */ + 4, /* rev3(4) */ + 5, /* rev4(5) */ + 6, /* rev5(6) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { + asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { + "NMEA-Revision", + "NMEA-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_NMEA_Revision_tags_1, + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NMEA_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NMEA_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NMEAcorrections.c b/src/tmx/Asn_J2735/src/r2020/NMEAcorrections.c new file mode 100644 index 000000000..4f892c039 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NMEAcorrections.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NMEAcorrections.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NMEAcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct NMEAcorrections__regional), + offsetof(struct NMEAcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NMEAcorrections_1[] = { + { ATF_POINTER, 4, offsetof(struct NMEAcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct NMEAcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Revision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 2, offsetof(struct NMEAcorrections, msg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_MsgType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msg" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, wdCount), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wdCount" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEAcorrections, payload), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Payload, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "payload" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NMEAcorrections_oms_1[] = { 0, 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_NMEAcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NMEAcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* payload */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1 = { + sizeof(struct NMEAcorrections), + offsetof(struct NMEAcorrections, _asn_ctx), + asn_MAP_NMEAcorrections_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_NMEAcorrections_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NMEAcorrections = { + "NMEAcorrections", + "NMEAcorrections", + &asn_OP_SEQUENCE, + asn_DEF_NMEAcorrections_tags_1, + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + asn_DEF_NMEAcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NMEAcorrections_1, + 6, /* Elements count */ + &asn_SPC_NMEAcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NULL.c b/src/tmx/Asn_J2735/src/r2020/NULL.c new file mode 100644 index 000000000..4a2914f4b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NULL.c @@ -0,0 +1,299 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include /* Implemented in terms of BOOLEAN type */ + +/* + * NULL basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NULL_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)) +}; +asn_TYPE_operation_t asn_OP_NULL = { + BOOLEAN_free, + NULL_print, + NULL_compare, + BOOLEAN_decode_ber, /* Implemented in terms of BOOLEAN */ + NULL_encode_der, /* Special handling of DER encoding */ + NULL_decode_xer, + NULL_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + NULL_decode_oer, + NULL_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + NULL_decode_uper, /* Unaligned PER decoder */ + NULL_encode_uper, /* Unaligned PER encoder */ + NULL_decode_aper, /* Aligned PER decoder */ + NULL_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + NULL_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NULL = { + "NULL", + "NULL", + &asn_OP_NULL, + asn_DEF_NULL_tags, + sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), + asn_DEF_NULL_tags, /* Same as above */ + sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +asn_enc_rval_t +NULL_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, + ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + + erval.encoded = der_write_tags(td, 0, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = ptr; + } + + ASN__ENCODED_OK(erval); +} + +asn_enc_rval_t +NULL_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)sptr; + (void)ilevel; + (void)flags; + (void)cb; + (void)app_key; + + /* XMLNullValue is empty */ + er.encoded = 0; + ASN__ENCODED_OK(er); +} + + +static enum xer_pbd_rval +NULL__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + (void)td; + (void)sptr; + (void)chunk_buf; /* Going to be empty according to the rules below. */ + + /* + * There must be no content in self-terminating tag. + */ + if(chunk_size) + return XPBD_BROKEN_ENCODING; + else + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +NULL_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(NULL_t), opt_mname, buf_ptr, size, + NULL__xer_body_decode); +} + +int +NULL_compare(const asn_TYPE_descriptor_t *td, const void *a, const void *b) { + (void)td; + (void)a; + (void)b; + return 0; +} + +int +NULL_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(sptr) { + return (cb("", 9, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +#ifndef ASN_DISABLE_OER_SUPPORT + +asn_dec_rval_t +NULL_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + asn_dec_rval_t rv = {RC_OK, 0}; + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)ptr; + (void)size; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + return rv; +} + +asn_enc_rval_t +NULL_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)sptr; + (void)constraints; + (void)cb; + (void)app_key; + + er.encoded = 0; /* Encoding in 0 bytes. */ + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +NULL_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)pd; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + /* + * NULL type does not have content octets. + */ + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +asn_enc_rval_t +NULL_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)constraints; + (void)sptr; + (void)po; + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +NULL_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)pd; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + /* + * NULL type does not have content octets. + */ + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + + +asn_enc_rval_t +NULL_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)constraints; + (void)sptr; + (void)po; + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +asn_random_fill_result_t +NULL_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + NULL_t *st = *sptr; + + (void)td; + (void)constr; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (NULL_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(st == NULL) { + return result_failed; + } + } + + return result_ok; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated.c new file mode 100644 index 000000000..aee450c17 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated.c @@ -0,0 +1,108 @@ +/*- + * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeEnumerated basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeEnumerated = { + NativeInteger_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + NativeInteger_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + NativeInteger_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + NativeInteger_decode_ber, + NativeInteger_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + NativeInteger_decode_xer, + NativeEnumerated_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + NativeEnumerated_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + NativeEnumerated_decode_oer, + NativeEnumerated_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + NativeEnumerated_decode_uper, + NativeEnumerated_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + NativeEnumerated_decode_aper, + NativeEnumerated_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + NativeEnumerated_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { + "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ + "ENUMERATED", + &asn_OP_NativeEnumerated, + asn_DEF_NativeEnumerated_tags, + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + asn_DEF_NativeEnumerated_tags, /* Same as above */ + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int +NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { + const asn_INTEGER_enum_map_t *a = ap; + const asn_INTEGER_enum_map_t *b = bp; + if(a->nat_value == b->nat_value) + return 0; + if(a->nat_value < b->nat_value) + return -1; + return 1; +} +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c new file mode 100644 index 000000000..5c4c2561d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c @@ -0,0 +1,157 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeEnumerated_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + /* Deal with APER padding */ + if(ct && ct->upper_bound >= 255) { + int padding = 0; + padding = (8 - (pd->moved % 8)) % 8; + ASN_DEBUG("For NativeEnumerated %s,offset = %zu Padding bits = %d", + td->name, pd->moved, padding); + ASN_DEBUG("For NativeEnumerated %s, upper bound = %llu", + td->name, (unsigned long long)ct->upper_bound); + if(padding > 0) + per_get_few_bits(pd, padding); + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + + /* XXX handle indefinite index length > 64k */ + value = aper_get_nsnnwn(pd, 65537); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + //if(value >= specs->map_count) + // ASN__DECODE_FAILED; + if(value >= specs->map_count) { + ASN_DEBUG("Decoded unknown index value %s = %ld", td->name, value); + /* unknown index. Workaround => set the first enumeration value */ + *native = specs->value2enum[0].nat_value; + return rval; + } + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +asn_enc_rval_t +NativeEnumerated_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0, range_bits = 1; + asn_INTEGER_enum_map_t key; + asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + if(native < 0) ASN__ENCODE_FAILED; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) range_bits = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(range_bits && ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(aper_put_nsnnwn(po, + ct->upper_bound - ct->lower_bound + 1, + value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c new file mode 100644 index 000000000..52dbcb860 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c @@ -0,0 +1,144 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static long +asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) { + unsigned long value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (unsigned long)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +asn_dec_rval_t +NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + const uint8_t *b = ptr; + + (void)opt_codec_ctx; + (void)constraints; + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if((*b & 0x80) == 0) { + /* + * X.696 (08/2015) #11.2 Short form for Enumerated. + */ + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = *b; + rval.consumed = 1; + } else { + /* + * X.696 (08/2015) #11.4 Long form for Enumerated. + */ + size_t length = *b & 0x7f; + const uint8_t *bend; + long value; + + if(length < 1 || length > sizeof(*native)) { + ASN__DECODE_FAILED; + } + if((1 + length) > size) { + ASN__DECODE_STARVED; + } + b++; + bend = b + length; + + value = asn__nativeenumerated_convert(b, bend); + if(value < 0) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + ASN__DECODE_FAILED; + } + } + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = value; + + rval.consumed = (1 + length); + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + long native; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + if(native >= 0 && native <= 127) { + /* #11.2 Short form */ + uint8_t b = native; + er.encoded = 1; + if(cb(&b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } else { + /* #11.2 Long form */ + uint8_t buf[1 + sizeof(native)]; + uint8_t *b = &buf[sizeof(native)]; /* Last addressable */ + long final_pattern = -1 * (native < 0); + + for(;;) { + *b-- = native; + native >>= 8; + if(native == final_pattern) { + if(final_pattern) { + if((b[1] & 0x80)) break; + } else { + if(!(b[1] & 0x80)) break; + } + } + } + *b = 0x80 | (&buf[sizeof(native)] - b); + er.encoded = 1 + (&buf[sizeof(native)] - b); + if(cb(b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c new file mode 100644 index 000000000..e2f932a22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeEnumerated_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + if(value >= specs->map_count) + ASN__DECODE_FAILED; + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +asn_enc_rval_t +NativeEnumerated_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0; + asn_INTEGER_enum_map_t key; + const asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c new file mode 100644 index 000000000..e8d6d0deb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +NativeEnumerated_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + const asn_INTEGER_enum_map_t *el; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + el = INTEGER_map_value2enum(specs, *native); + if(el) { + er.encoded = + asn__format_to_callback(cb, app_key, "<%s/>", el->enum_name); + if(er.encoded < 0) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } else { + ASN_DEBUG( + "ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger.c new file mode 100644 index 000000000..f0309b0d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger.c @@ -0,0 +1,152 @@ +/*- + * Copyright (c) 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeInteger basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeInteger = { + NativeInteger_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + NativeInteger_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + NativeInteger_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + NativeInteger_decode_ber, + NativeInteger_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + NativeInteger_decode_xer, + NativeInteger_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + NativeInteger_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + NativeInteger_decode_oer, /* OER decoder */ + NativeInteger_encode_oer, /* Canonical OER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + NativeInteger_decode_uper, /* Unaligned PER decoder */ + NativeInteger_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + NativeInteger_decode_aper, /* Aligned PER decoder */ + NativeInteger_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + NativeInteger_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeInteger = { + "INTEGER", /* The ASN.1 type is still INTEGER */ + "INTEGER", + &asn_OP_NativeInteger, + asn_DEF_NativeInteger_tags, + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + asn_DEF_NativeInteger_tags, /* Same as above */ + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +void +NativeInteger_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", + td->name, method, ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(long)); + break; + } +} + +int +NativeInteger_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + (void)td; + + if(aptr && bptr) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + const unsigned long *a = aptr; + const unsigned long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } else { + const long *a = aptr; + const long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } + } else if(!aptr) { + return -1; + } else { + return 1; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c new file mode 100644 index 000000000..1d13070a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (APER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_aper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (APER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, (unsigned long)native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_aper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c new file mode 100644 index 000000000..ed683625c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Decode INTEGER type. + */ +asn_dec_rval_t +NativeInteger_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **nint_ptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + long *native = (long *)*nint_ptr; + asn_dec_rval_t rval; + ber_tlv_len_t length; + + /* + * If the structure is not there, allocate it. + */ + if(native == NULL) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(native == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * ASN.1 encoded INTEGER: buf_ptr, length + * Fill the native, at the same time checking for overflow. + * If overflow occurred, return with RC_FAIL. + */ + { + INTEGER_t tmp; + union { + const void *constbuf; + void *nonconstbuf; + } unconst_buf; + long l; + + unconst_buf.constbuf = buf_ptr; + tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; + tmp.size = length; + + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&tmp, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + + *native = l; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", + (long)rval.consumed, (long)length, td->name, (long)*native); + + return rval; +} + +/* + * Encode the NativeInteger using the standard INTEGER type DER encoder. + */ +asn_enc_rval_t +NativeInteger_encode_der(const asn_TYPE_descriptor_t *sd, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + unsigned long native = *(const unsigned long *)ptr; /* Disable sign ext. */ + asn_enc_rval_t erval = {0,0,0}; + INTEGER_t tmp; + +#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ + + tmp.buf = (uint8_t *)&native; + tmp.size = sizeof(native); + +#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ + uint8_t buf[sizeof(native)]; + uint8_t *p; + + /* Prepare a fake INTEGER */ + for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) + *p = (uint8_t)native; + + tmp.buf = buf; + tmp.size = sizeof(buf); +#endif /* WORDS_BIGENDIAN */ + + /* Encode fake INTEGER */ + erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); + if(erval.structure_ptr == &tmp) { + erval.structure_ptr = ptr; + } + return erval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c new file mode 100644 index 000000000..4e900462c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + INTEGER_t tmpint; + INTEGER_t *tmpintptr = &tmpint; + + memset(&tmpint, 0, sizeof(tmpint)); + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + /* + * OPTIMIZATION: Encode directly rather than passing through INTEGER. + * Saves a memory allocation. + */ + rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints, + (void **)&tmpintptr, ptr, size); + if(rval.code != RC_OK) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return rval; + } + + if(specs && specs->field_unsigned) { + unsigned long ul; + int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = ul; + } else { + rval.code = RC_FAIL; + return rval; + } + } else { + long l; + int ok = asn_INTEGER2long(&tmpint, &l) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = l; + } else { + rval.code = RC_FAIL; + return rval; + } + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t tmpint; + long native; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + memset(&tmpint, 0, sizeof(tmpint)); + + ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native); + + if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t er = + INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c new file mode 100644 index 000000000..0602e0d20 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * INTEGER specific human-readable output. + */ +int +NativeInteger_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + const long *native = (const long *)sptr; + char scratch[32]; /* Enough for 64-bit int */ + int ret; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(native) { + long value = *native; + ret = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) ? "%lu" : "%ld", value); + assert(ret > 0 && (size_t)ret < sizeof(scratch)); + if(cb(scratch, ret, app_key) < 0) return -1; + if(specs && (value >= 0 || !specs->field_unsigned)) { + const asn_INTEGER_enum_map_t *el = + INTEGER_map_value2enum(specs, value); + if(el) { + if(cb(" (", 2, app_key) < 0) return -1; + if(cb(el->enum_name, el->enum_len, app_key) < 0) return -1; + if(cb(")", 1, app_key) < 0) return -1; + } + } + return 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c new file mode 100644 index 000000000..0e2cee8e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +NativeInteger_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + long *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (long *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + const asn_per_constraints_t *ct; + + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + } + + *sptr = st; + *st = value; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c new file mode 100644 index 000000000..4fc4ba177 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +NativeInteger_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_uper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c new file mode 100644 index 000000000..18ec59af2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +asn_dec_rval_t +NativeInteger_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + INTEGER_t st; + void *st_ptr = (void *)&st; + long *native = (long *)*sptr; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&st, 0, sizeof(st)); + rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, + opt_mname, buf_ptr, size); + if(rval.code == RC_OK) { + long l; + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&st, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + } else { + *native = l; + } + } else { + /* + * Cannot restart from the middle; + * there is no place to save state in the native type. + * Request a continuation from the very beginning. + */ + rval.consumed = 0; + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); + return rval; +} + + +asn_enc_rval_t +NativeInteger_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit int */ + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + er.encoded = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) + || cb(scratch, er.encoded, app_key) < 0) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-24B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-24B.c new file mode 100644 index 000000000..834f102e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-24B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-24B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_24B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_24B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_24B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1 = { + sizeof(struct Node_LL_24B), + offsetof(struct Node_LL_24B, _asn_ctx), + asn_MAP_Node_LL_24B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_24B = { + "Node-LL-24B", + "Node-LL-24B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_24B_tags_1, + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_24B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_24B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_24B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-28B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-28B.c new file mode 100644 index 000000000..44de22756 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-28B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-28B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_28B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_28B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_28B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1 = { + sizeof(struct Node_LL_28B), + offsetof(struct Node_LL_28B, _asn_ctx), + asn_MAP_Node_LL_28B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_28B = { + "Node-LL-28B", + "Node-LL-28B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_28B_tags_1, + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_28B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_28B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_28B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-32B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-32B.c new file mode 100644 index 000000000..e2fe75038 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-32B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-32B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_32B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_32B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_32B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1 = { + sizeof(struct Node_LL_32B), + offsetof(struct Node_LL_32B, _asn_ctx), + asn_MAP_Node_LL_32B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_32B = { + "Node-LL-32B", + "Node-LL-32B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_32B_tags_1, + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_32B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_32B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_32B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-36B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-36B.c new file mode 100644 index 000000000..f49417090 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-36B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-36B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_36B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_36B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_36B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1 = { + sizeof(struct Node_LL_36B), + offsetof(struct Node_LL_36B, _asn_ctx), + asn_MAP_Node_LL_36B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_36B = { + "Node-LL-36B", + "Node-LL-36B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_36B_tags_1, + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_36B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_36B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_36B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-44B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-44B.c new file mode 100644 index 000000000..adec8b4b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-44B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-44B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_44B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_44B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_44B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1 = { + sizeof(struct Node_LL_44B), + offsetof(struct Node_LL_44B, _asn_ctx), + asn_MAP_Node_LL_44B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_44B = { + "Node-LL-44B", + "Node-LL-44B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_44B_tags_1, + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_44B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_44B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_44B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LL-48B.c b/src/tmx/Asn_J2735/src/r2020/Node-LL-48B.c new file mode 100644 index 000000000..79086c53f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LL-48B.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LL-48B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_48B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_48B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_48B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1 = { + sizeof(struct Node_LL_48B), + offsetof(struct Node_LL_48B, _asn_ctx), + asn_MAP_Node_LL_48B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_48B = { + "Node-LL-48B", + "Node-LL-48B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_48B_tags_1, + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_48B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LL_48B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_48B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/r2020/Node-LLdms-48b.c new file mode 100644 index 000000000..e17fa8f6d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LLdms-48b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LLdms-48b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { + sizeof(struct Node_LLdms_48b), + offsetof(struct Node_LLdms_48b, _asn_ctx), + asn_MAP_Node_LLdms_48b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { + "Node-LLdms-48b", + "Node-LLdms-48b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_48b_tags_1, + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLdms_48b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/r2020/Node-LLdms-80b.c new file mode 100644 index 000000000..cffedb137 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LLdms-80b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LLdms-80b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { + sizeof(struct Node_LLdms_80b), + offsetof(struct Node_LLdms_80b, _asn_ctx), + asn_MAP_Node_LLdms_80b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { + "Node-LLdms-80b", + "Node-LLdms-80b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_80b_tags_1, + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLdms_80b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/r2020/Node-LLmD-64b.c new file mode 100644 index 000000000..d54fe90aa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-LLmD-64b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-LLmD-64b.h" + +asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { + sizeof(struct Node_LLmD_64b), + offsetof(struct Node_LLmD_64b, _asn_ctx), + asn_MAP_Node_LLmD_64b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { + "Node-LLmD-64b", + "Node-LLmD-64b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLmD_64b_tags_1, + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_LLmD_64b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-20b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-20b.c new file mode 100644 index 000000000..10707ec98 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-20b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-20b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { + sizeof(struct Node_XY_20b), + offsetof(struct Node_XY_20b, _asn_ctx), + asn_MAP_Node_XY_20b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { + "Node-XY-20b", + "Node-XY-20b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_20b_tags_1, + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_20b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_20b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-22b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-22b.c new file mode 100644 index 000000000..3aa579af3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-22b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-22b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { + sizeof(struct Node_XY_22b), + offsetof(struct Node_XY_22b, _asn_ctx), + asn_MAP_Node_XY_22b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { + "Node-XY-22b", + "Node-XY-22b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_22b_tags_1, + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_22b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_22b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-24b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-24b.c new file mode 100644 index 000000000..f59ae7891 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-24b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-24b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { + sizeof(struct Node_XY_24b), + offsetof(struct Node_XY_24b, _asn_ctx), + asn_MAP_Node_XY_24b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { + "Node-XY-24b", + "Node-XY-24b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_24b_tags_1, + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_24b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_24b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-26b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-26b.c new file mode 100644 index 000000000..04668a9c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-26b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-26b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { + sizeof(struct Node_XY_26b), + offsetof(struct Node_XY_26b, _asn_ctx), + asn_MAP_Node_XY_26b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { + "Node-XY-26b", + "Node-XY-26b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_26b_tags_1, + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_26b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_26b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-28b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-28b.c new file mode 100644 index 000000000..9b8574ad0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-28b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-28b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { + sizeof(struct Node_XY_28b), + offsetof(struct Node_XY_28b, _asn_ctx), + asn_MAP_Node_XY_28b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { + "Node-XY-28b", + "Node-XY-28b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_28b_tags_1, + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_28b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_28b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Node-XY-32b.c b/src/tmx/Asn_J2735/src/r2020/Node-XY-32b.c new file mode 100644 index 000000000..f5036581a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Node-XY-32b.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Node-XY-32b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { + sizeof(struct Node_XY_32b), + offsetof(struct Node_XY_32b, _asn_ctx), + asn_MAP_Node_XY_32b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { + "Node-XY-32b", + "Node-XY-32b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_32b_tags_1, + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_32b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Node_XY_32b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeLL.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeLL.c new file mode 100644 index 000000000..3db1773d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeLL.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeLL_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1 = { + asn_MAP_NodeAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL = { + "NodeAttributeLL", + "NodeAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeLL_tags_1, + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeLLList.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeLLList.c new file mode 100644 index 000000000..3cbe967aa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeLLList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeLLList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1 = { + sizeof(struct NodeAttributeLLList), + offsetof(struct NodeAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList = { + "NodeAttributeLLList", + "NodeAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeLLList_tags_1, + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetLL.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetLL.c new file mode 100644 index 000000000..7f4aeb2d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetLL.c @@ -0,0 +1,279 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeSetLL.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NodeAttributeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetLL__regional), + offsetof(struct NodeAttributeSetLL__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetLL, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetLL, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetLL, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetLL, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetLL, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetLL, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetLL, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetLL_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1 = { + sizeof(struct NodeAttributeSetLL), + offsetof(struct NodeAttributeSetLL, _asn_ctx), + asn_MAP_NodeAttributeSetLL_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetLL_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL = { + "NodeAttributeSetLL", + "NodeAttributeSetLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetLL_tags_1, + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeAttributeSetLL_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetXY.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetXY.c new file mode 100644 index 000000000..ea7d05e70 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeSetXY.c @@ -0,0 +1,279 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeSetXY.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_NodeAttributeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetXY__regional), + offsetof(struct NodeAttributeSetXY__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetXY, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetXY, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetXY, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetXY, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetXY, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetXY, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetXY, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetXY_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1 = { + sizeof(struct NodeAttributeSetXY), + offsetof(struct NodeAttributeSetXY, _asn_ctx), + asn_MAP_NodeAttributeSetXY_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetXY_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY = { + "NodeAttributeSetXY", + "NodeAttributeSetXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetXY_tags_1, + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeAttributeSetXY_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeXY.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeXY.c new file mode 100644 index 000000000..965ac3646 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeXY.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeXY_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1 = { + asn_MAP_NodeAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY = { + "NodeAttributeXY", + "NodeAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeXY_tags_1, + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeAttributeXYList.c b/src/tmx/Asn_J2735/src/r2020/NodeAttributeXYList.c new file mode 100644 index 000000000..6647e3913 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeAttributeXYList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeAttributeXYList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1 = { + sizeof(struct NodeAttributeXYList), + offsetof(struct NodeAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList = { + "NodeAttributeXYList", + "NodeAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeXYList_tags_1, + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeLL.c b/src/tmx/Asn_J2735/src/r2020/NodeLL.c new file mode 100644 index 000000000..49113bf99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeLL.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeLL.h" + +asn_TYPE_member_t asn_MBR_NodeLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeLL, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeLL, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeLL_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1 = { + sizeof(struct NodeLL), + offsetof(struct NodeLL, _asn_ctx), + asn_MAP_NodeLL_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeLL_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeLL = { + "NodeLL", + "NodeLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeLL_tags_1, + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeLL_1, + 2, /* Elements count */ + &asn_SPC_NodeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeListLL.c b/src/tmx/Asn_J2735/src/r2020/NodeListLL.c new file mode 100644 index 000000000..44cf287aa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeListLL.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeListLL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeListLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeListLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeListLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListLL, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodes" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodes */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1 = { + sizeof(struct NodeListLL), + offsetof(struct NodeListLL, _asn_ctx), + offsetof(struct NodeListLL, present), + sizeof(((struct NodeListLL *)0)->present), + asn_MAP_NodeListLL_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, + 1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListLL = { + "NodeListLL", + "NodeListLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeListLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeListLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeListLL_1, + 1, /* Elements count */ + &asn_SPC_NodeListLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeListXY.c b/src/tmx/Asn_J2735/src/r2020/NodeListXY.c new file mode 100644 index 000000000..9ff37f63f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeListXY.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeListXY.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeListXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeListXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeListXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodes" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.computed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ComputedLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "computed" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1 = { + sizeof(struct NodeListXY), + offsetof(struct NodeListXY, _asn_ctx), + offsetof(struct NodeListXY, present), + sizeof(((struct NodeListXY *)0)->present), + asn_MAP_NodeListXY_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListXY = { + "NodeListXY", + "NodeListXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeListXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeListXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeListXY_1, + 2, /* Elements count */ + &asn_SPC_NodeListXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointLL.c b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointLL.c new file mode 100644 index 000000000..c901bc5af --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointLL.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeOffsetPointLL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_24B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_28B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_32B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_36B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_44B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_48B, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LL6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_NodeOffsetPointLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-LL1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-LL2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-LL3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-LL4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-LL5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-LL6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1 = { + sizeof(struct NodeOffsetPointLL), + offsetof(struct NodeOffsetPointLL, _asn_ctx), + offsetof(struct NodeOffsetPointLL, present), + sizeof(((struct NodeOffsetPointLL *)0)->present), + asn_MAP_NodeOffsetPointLL_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL = { + "NodeOffsetPointLL", + "NodeOffsetPointLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointLL_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY-addGrpB.c b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY-addGrpB.c new file mode 100644 index 000000000..27e0d473f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY-addGrpB.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeOffsetPointXY-addGrpB.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posA), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_48b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posA" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_80b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 = { + sizeof(struct NodeOffsetPointXY_addGrpB), + offsetof(struct NodeOffsetPointXY_addGrpB, _asn_ctx), + offsetof(struct NodeOffsetPointXY_addGrpB, present), + sizeof(((struct NodeOffsetPointXY_addGrpB *)0)->present), + asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB = { + "NodeOffsetPointXY-addGrpB", + "NodeOffsetPointXY-addGrpB", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointXY_addGrpB_1, + 2, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY.c b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY.c new file mode 100644 index 000000000..cbab3615a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeOffsetPointXY.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeOffsetPointXY.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_20b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_22b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_26b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_28b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_32b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-XY6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1 = { + sizeof(struct NodeOffsetPointXY), + offsetof(struct NodeOffsetPointXY, _asn_ctx), + offsetof(struct NodeOffsetPointXY, present), + sizeof(((struct NodeOffsetPointXY *)0)->present), + asn_MAP_NodeOffsetPointXY_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY = { + "NodeOffsetPointXY", + "NodeOffsetPointXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeOffsetPointXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeOffsetPointXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_NodeOffsetPointXY_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeSetLL.c b/src/tmx/Asn_J2735/src/r2020/NodeSetLL.c new file mode 100644 index 000000000..91c2d2b58 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeSetLL.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeSetLL.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeSetLL_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1 = { + sizeof(struct NodeSetLL), + offsetof(struct NodeSetLL, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetLL = { + "NodeSetLL", + "NodeSetLL", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetLL_tags_1, + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeSetLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeSetLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeSetLL_1, + 1, /* Single element */ + &asn_SPC_NodeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeSetXY.c b/src/tmx/Asn_J2735/src/r2020/NodeSetXY.c new file mode 100644 index 000000000..38555962c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeSetXY.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeSetXY.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_NodeSetXY_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1 = { + sizeof(struct NodeSetXY), + offsetof(struct NodeSetXY, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetXY = { + "NodeSetXY", + "NodeSetXY", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetXY_tags_1, + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NodeSetXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NodeSetXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_NodeSetXY_1, + 1, /* Single element */ + &asn_SPC_NodeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NodeXY.c b/src/tmx/Asn_J2735/src/r2020/NodeXY.c new file mode 100644 index 000000000..b7a73b002 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NodeXY.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NodeXY.h" + +asn_TYPE_member_t asn_MBR_NodeXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeXY, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeXY, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeXY_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1 = { + sizeof(struct NodeXY), + offsetof(struct NodeXY, _asn_ctx), + asn_MAP_NodeXY_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeXY_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeXY = { + "NodeXY", + "NodeXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeXY_tags_1, + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_NodeXY_1, + 2, /* Elements count */ + &asn_SPC_NodeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/r2020/NumberOfParticipantsInCluster.c new file mode 100644 index 000000000..93c067fce --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/NumberOfParticipantsInCluster.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "NumberOfParticipantsInCluster.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "small" }, + { 2, 6, "medium" }, + { 3, 5, "large" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { + 3, /* large(3) */ + 2, /* medium(2) */ + 1, /* small(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { + asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { + "NumberOfParticipantsInCluster", + "NumberOfParticipantsInCluster", + &asn_OP_NativeEnumerated, + asn_DEF_NumberOfParticipantsInCluster_tags_1, + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_NumberOfParticipantsInCluster_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_NumberOfParticipantsInCluster_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER.c new file mode 100644 index 000000000..5cf2d6066 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER.c @@ -0,0 +1,532 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include +#include /* for CHAR_BIT */ +#include +#include + +/* + * OBJECT IDENTIFIER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OBJECT_IDENTIFIER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)) +}; +asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER = { + ASN__PRIMITIVE_TYPE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OBJECT_IDENTIFIER_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, /* Implemented in terms of a string comparison */ +#if !defined(ASN_DISABLE_BER_SUPPORT) + ber_decode_primitive, + der_encode_primitive, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OBJECT_IDENTIFIER_decode_xer, + OBJECT_IDENTIFIER_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OBJECT_IDENTIFIER_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OBJECT_IDENTIFIER_decode_oer, + OBJECT_IDENTIFIER_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OBJECT_IDENTIFIER_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER = { + "OBJECT IDENTIFIER", + "OBJECT_IDENTIFIER", + &asn_OP_OBJECT_IDENTIFIER, + asn_DEF_OBJECT_IDENTIFIER_tags, + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + asn_DEF_OBJECT_IDENTIFIER_tags, /* Same as above */ + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OBJECT_IDENTIFIER_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +OBJECT_IDENTIFIER_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + if(st && st->buf) { + if(st->size < 1) { + ASN__CTFAIL(app_key, td, sptr, + "%s: at least one numerical value " + "expected (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +static ssize_t +OBJECT_IDENTIFIER_get_first_arcs(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *arc0, asn_oid_arc_t *arc1) { + asn_oid_arc_t value; + + ssize_t rd = OBJECT_IDENTIFIER_get_single_arc(arcbuf, arcbuf_len, &value); + if(rd <= 0) return rd; + + if(value >= 80) { + *arc0 = 2; + *arc1 = value - 80; + } else if(value >= 40) { + *arc0 = 1; + *arc1 = value - 40; + } else { + *arc0 = 0; + *arc1 = value; + } + + return rd; +} + +ssize_t +OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *ret_value) { + const uint8_t *b = arcbuf; + const uint8_t *arcend = arcbuf + arcbuf_len; /* End of arc */ + + if(arcbuf == arcend) { + return 0; + } else { + asn_oid_arc_t accum; + asn_oid_arc_t upper_limit = (ASN_OID_ARC_MAX >> 7); + /* When the value reaches "upper_limit", it can take */ + /* at most one more digit. If it exceeds "upper_limit" */ + /* but there are more digits - it's an Overflow condition */ + /* Gather all bits into the accumulator */ + for(accum = 0; b < arcend; b++) { + accum = (accum << 7) | (*b & ~0x80); + if((*b & 0x80) == 0) { // no more digits + if(accum <= ASN_OID_ARC_MAX) { + *ret_value = accum; + return 1 + (b - arcbuf); + } else { + errno = ERANGE; /* Overflow */ + return -1; + } + } else { // to make sure we aren't wrapping around + if(accum > upper_limit) { + errno = ERANGE; /* Overflow */ + return -1; + } + } + } + errno = EINVAL; + return -1; + } + +} + +ssize_t +OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, + asn_app_consume_bytes_f *cb, void *app_key) { + char scratch[32]; + asn_oid_arc_t arc0 = 0; + asn_oid_arc_t arc1 = 0; + size_t produced = 0; + size_t off = 0; + ssize_t rd; + int ret; + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + + ret = snprintf(scratch, sizeof(scratch), "%"PRIu32".%"PRIu32, arc0, arc1); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) + return -1; + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + assert(off <= st->size); + ret = snprintf(scratch, sizeof(scratch), ".%" PRIu32, arc); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) return -1; + } + } + + if(off != st->size) { + ASN_DEBUG("Could not scan to the end of Object Identifier"); + return -1; + } + + return produced; +} + +ssize_t +OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *st, asn_oid_arc_t *arcs, + size_t arc_slots) { + asn_oid_arc_t arc0 = 0; + asn_oid_arc_t arc1 = 0; + size_t num_arcs = 0; + size_t off; + ssize_t rd; + + if(!st || !st->buf) { + errno = EINVAL; + return -1; + } + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + num_arcs = 2; + switch(arc_slots) { + default: + case 2: + arcs[1] = arc1; + /* Fall through */ + case 1: + arcs[0] = arc0; + /* Fall through */ + case 0: + break; + } + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + if(num_arcs < arc_slots) { + arcs[num_arcs] = arc; + } + num_arcs++; + } + } + + if(off != st->size) { + return -1; + } + + return num_arcs; +} + + +/* + * Save the single value as an object identifier arc. + */ +ssize_t +OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t value) { + /* + * The following conditions must hold: + * assert(arcbuf); + */ + uint8_t scratch[((sizeof(value) * CHAR_BIT + 6) / 7)]; + uint8_t *scratch_end = &scratch[sizeof(scratch)-1]; + uint8_t *b; + size_t result_len; + uint8_t mask; + + for(b = scratch_end, mask = 0; ; mask = 0x80, b--) { + *b = mask | (value & 0x7f); + value >>= 7; + if(!value) { + break; + } + } + + result_len = (scratch_end - b) + 1; + + if(result_len > arcbuf_len) { + return -1; + } + + memcpy(arcbuf, b, result_len); + + return result_len; +} + +int +OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *st, const asn_oid_arc_t *arcs, + size_t arc_slots) { + uint8_t *buf; + uint8_t *bp; + ssize_t wrote; + asn_oid_arc_t arc0; + asn_oid_arc_t arc1; + size_t size; + size_t i; + + if(!st || !arcs || arc_slots < 2) { + errno = EINVAL; + return -1; + } + + arc0 = arcs[0]; + arc1 = arcs[1]; + + if(arc0 <= 1) { + if(arc1 >= 40) { + /* 8.19.4: At most 39 subsequent values (including 0) */ + errno = ERANGE; + return -1; + } + } else if(arc0 == 2) { + if(arc1 > ASN_OID_ARC_MAX - 80) { + errno = ERANGE; + return -1; + } + } else if(arc0 > 2) { + /* 8.19.4: Only three values are allocated from the root node */ + errno = ERANGE; + return -1; + } + + /* + * After above tests it is known that the value of arc0 is completely + * trustworthy (0..2). However, the arc1's value is still meaningless. + */ + + /* + * Roughly estimate the maximum size necessary to encode these arcs. + * This estimation implicitly takes in account the following facts, + * that cancel each other: + * * the first two arcs are encoded in a single value. + * * the first value may require more space (+1 byte) + * * the value of the first arc which is in range (0..2) + */ + size = ((sizeof(asn_oid_arc_t) * CHAR_BIT + 6) / 7) * arc_slots; + bp = buf = (uint8_t *)MALLOC(size + 1); + if(!buf) { + /* ENOMEM */ + return -1; + } + + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arc0 * 40 + arc1); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + + for(i = 2; i < arc_slots; i++) { + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arcs[i]); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + } + + /* + * Replace buffer. + */ + st->size = bp - buf; + bp = st->buf; + st->buf = buf; + st->buf[st->size] = '\0'; + if(bp) FREEMEM(bp); + + return 0; +} + +ssize_t +OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end) { + size_t num_arcs = 0; + const char *oid_end; + enum { + ST_LEADSPACE, + ST_TAILSPACE, + ST_AFTERVALUE, /* Next character ought to be '.' or a space */ + ST_WAITDIGITS /* Next character is expected to be a digit */ + } state = ST_LEADSPACE; + + if(!oid_text || oid_txt_length < -1 || (arcs_count && !arcs)) { + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + errno = EINVAL; + return -1; + } + + if(oid_txt_length == -1) + oid_txt_length = strlen(oid_text); + +#define _OID_CAPTURE_ARC(oid_text, oid_end) \ + do { \ + const char *endp = oid_end; \ + unsigned long value; \ + switch(asn_strtoul_lim(oid_text, &endp, &value)) { \ + case ASN_STRTOX_EXTRA_DATA: \ + case ASN_STRTOX_OK: \ + if(value <= ASN_OID_ARC_MAX) { \ + if(num_arcs < arcs_count) arcs[num_arcs] = value; \ + num_arcs++; \ + oid_text = endp - 1; \ + break; \ + } \ + /* Fall through */ \ + case ASN_STRTOX_ERROR_RANGE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = ERANGE; \ + return -1; \ + case ASN_STRTOX_ERROR_INVAL: \ + case ASN_STRTOX_EXPECT_MORE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = EINVAL; \ + return -1; \ + } \ + } while(0) + + for(oid_end = oid_text + oid_txt_length; oid_text broken OID */ + return -1; + case ST_LEADSPACE: + case ST_WAITDIGITS: + _OID_CAPTURE_ARC(oid_text, oid_end); + state = ST_AFTERVALUE; + continue; + } + break; + default: + /* Unexpected symbols */ + state = ST_WAITDIGITS; + break; + } /* switch() */ + break; + } /* for() */ + + + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + + /* Finalize last arc */ + switch(state) { + case ST_LEADSPACE: + return 0; /* No OID found in input data */ + case ST_WAITDIGITS: + errno = EINVAL; /* Broken OID */ + return -1; + case ST_AFTERVALUE: + case ST_TAILSPACE: + return num_arcs; + } + + errno = EINVAL; /* Broken OID */ + return -1; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c new file mode 100644 index 000000000..b0c3a9e84 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +OBJECT_IDENTIFIER_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb("{ ", 2, app_key) < 0) + return -1; + + if(OBJECT_IDENTIFIER__dump_body(st, cb, app_key) < 0) { + return -1; + } + + return (cb(" }", 2, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c new file mode 100644 index 000000000..55093c8e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Generate values from the list of interesting values, or just a random + * value up to the upper limit. + */ +static asn_oid_arc_t +OBJECT_IDENTIFIER__biased_random_arc(asn_oid_arc_t upper_bound) { + const asn_oid_arc_t values[] = {0, 1, 127, 128, 129, 254, 255, 256}; + size_t idx; + + switch(asn_random_between(0, 2)) { + case 0: + idx = asn_random_between(0, sizeof(values) / sizeof(values[0]) - 1); + if(values[idx] < upper_bound) { + return values[idx]; + } + /* Fall through */ + case 1: + return asn_random_between(0, upper_bound); + case 2: + default: + return upper_bound; + } +} + +asn_random_fill_result_t +OBJECT_IDENTIFIER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + OBJECT_IDENTIFIER_t *st; + asn_oid_arc_t arcs[5]; + size_t arcs_len = asn_random_between(2, 5); + size_t i; + + (void)constraints; + + if(max_length < arcs_len) return result_skipped; + + if(*sptr) { + st = *sptr; + } else { + st = CALLOC(1, sizeof(*st)); + } + + arcs[0] = asn_random_between(0, 2); + arcs[1] = OBJECT_IDENTIFIER__biased_random_arc( + arcs[0] <= 1 ? 39 : (ASN_OID_ARC_MAX - 80)); + for(i = 2; i < arcs_len; i++) { + arcs[i] = OBJECT_IDENTIFIER__biased_random_arc(ASN_OID_ARC_MAX); + } + + if(OBJECT_IDENTIFIER_set_arcs(st, arcs, arcs_len)) { + if(st != *sptr) { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } + + *sptr = st; + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c new file mode 100644 index 000000000..706e51a94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static enum xer_pbd_rval +OBJECT_IDENTIFIER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + OBJECT_IDENTIFIER_t *st = (OBJECT_IDENTIFIER_t *)sptr; + const char *chunk_end = (const char *)chunk_buf + chunk_size; + const char *endptr; + asn_oid_arc_t s_arcs[10]; + asn_oid_arc_t *arcs = s_arcs; + ssize_t num_arcs; + ssize_t ret; + + (void)td; + + num_arcs = OBJECT_IDENTIFIER_parse_arcs( + (const char *)chunk_buf, chunk_size, arcs, + sizeof(s_arcs) / sizeof(s_arcs[0]), &endptr); + if(num_arcs < 0) { + /* Expecting more than zero arcs */ + return XPBD_BROKEN_ENCODING; + } else if(num_arcs == 0) { + return XPBD_NOT_BODY_IGNORE; + } + (void)chunk_end; + assert(endptr == chunk_end); + + if((size_t)num_arcs > sizeof(s_arcs)/sizeof(s_arcs[0])) { + arcs = (asn_oid_arc_t *)MALLOC(num_arcs * sizeof(asn_oid_arc_t)); + if(!arcs) return XPBD_SYSTEM_FAILURE; + ret = OBJECT_IDENTIFIER_parse_arcs((const char *)chunk_buf, chunk_size, + arcs, num_arcs, &endptr); + if(ret != num_arcs) + return XPBD_SYSTEM_FAILURE; /* assert?.. */ + } + + /* + * Convert arcs into BER representation. + */ + ret = OBJECT_IDENTIFIER_set_arcs(st, arcs, num_arcs); + if(arcs != s_arcs) FREEMEM(arcs); + + return ret ? XPBD_SYSTEM_FAILURE : XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +OBJECT_IDENTIFIER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname, + buf_ptr, size, OBJECT_IDENTIFIER__xer_body_decode); +} + +asn_enc_rval_t +OBJECT_IDENTIFIER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) { + ASN__ENCODE_FAILED; + } + + er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING.c new file mode 100644 index 000000000..d0bdeade7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING.c @@ -0,0 +1,383 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * OCTET STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs = { + sizeof(OCTET_STRING_t), + offsetof(OCTET_STRING_t, _asn_ctx), + ASN_OSUBV_STR +}; +asn_TYPE_operation_t asn_OP_OCTET_STRING = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print, /* OCTET STRING generally means a non-ascii sequence */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, /* Unaligned PER decoder */ + OCTET_STRING_encode_uper, /* Unaligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + OCTET_STRING_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { + "OCTET STRING", /* Canonical name */ + "OCTET_STRING", /* XML tag name */ + &asn_OP_OCTET_STRING, + asn_DEF_OCTET_STRING_tags, + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + asn_DEF_OCTET_STRING_tags, /* Same as above */ + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_no_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs +}; + +void +OCTET_STRING_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + + if(!td || !st) + return; + + ASN_DEBUG("Freeing %s as OCTET STRING", td->name); + + if(st->buf) { + FREEMEM(st->buf); + st->buf = 0; + } + +#if !defined(ASN_DISABLE_BER_SUPPORT) + const asn_OCTET_STRING_specifics_t *specs; + asn_struct_ctx_t *ctx; + + specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Remove decode-time stack. + */ + struct _stack *stck; + stck = (struct _stack *)ctx->ptr; + if(stck) { + while(stck->tail) { + struct _stack_el *sel = stck->tail; + stck->tail = sel->prev; + FREEMEM(sel); + } + FREEMEM(stck); + } +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, + td->specifics + ? ((const asn_OCTET_STRING_specifics_t *)(td->specifics)) + ->struct_size + : sizeof(OCTET_STRING_t)); + break; + } +} + +/* + * Conversion routines. + */ +int +OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { + void *buf; + + if(st == 0 || (str == 0 && len)) { + errno = EINVAL; + return -1; + } + + /* + * Clear the OCTET STRING. + */ + if(str == NULL) { + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + return 0; + } + + /* Determine the original string size, if not explicitly given */ + if(len < 0) + len = strlen(str); + + /* Allocate and fill the memory */ + buf = MALLOC(len + 1); + if(buf == NULL) + return -1; + + memcpy(buf, str, len); + ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ + FREEMEM(st->buf); + st->buf = (uint8_t *)buf; + st->size = len; + + return 0; +} + +OCTET_STRING_t * +OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, const char *str, + int len) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st; + + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + if(st && str && OCTET_STRING_fromBuf(st, str, len)) { + FREEMEM(st); + st = NULL; + } + + return st; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +OCTET_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + const OCTET_STRING_t *a = aptr; + const OCTET_STRING_t *b = bptr; + + (void)specs; + assert(!specs || specs->subvariant != ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + return 0; + } + } else { + return ret < 0 ? -1 : 1; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +int +OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", + (int)units, lb, ub, unit_bits); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Decode without translation */ + lb = 0; + } else if(pc && pc->code2value) { + if(unit_bits > 16) + return 1; /* FATAL: can't have constrained + * UniversalString with more than + * 16 million code points */ + for(; buf < end; buf += bpc) { + int value; + int code = per_get_few_bits(po, unit_bits); + if(code < 0) return -1; /* WMORE */ + value = pc->code2value(code); + if(value < 0) { + ASN_DEBUG("Code %d (0x%02x) is" + " not in map (%ld..%ld)", + code, code, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = value; break; + case 2: buf[0] = value >> 8; buf[1] = value; break; + case 4: buf[0] = value >> 24; buf[1] = value >> 16; + buf[2] = value >> 8; buf[3] = value; break; + } + } + return 0; + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_get_many_bits(po, buf, 0, unit_bits * units); + } + + for(; buf < end; buf += bpc) { + int32_t code = per_get_few_bits(po, unit_bits); + int32_t ch = code + lb; + if(code < 0) return -1; /* WMORE */ + if(ch > ub) { + ASN_DEBUG("Code %d is out of range (%ld..%ld)", + ch, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = ch; break; + case 2: buf[0] = ch >> 8; buf[1] = ch; break; + case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; + buf[2] = ch >> 8; buf[3] = ch; break; + } + } + + return 0; +} + +int +OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + const uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", + (int)units, lb, ub, unit_bits, bpc); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Encode as is */ + lb = 0; + } else if(pc && pc->value2code) { + for(; buf < end; buf += bpc) { + int code; + uint32_t value; + switch(bpc) { + case 1: value = *(const uint8_t *)buf; break; + case 2: value = (buf[0] << 8) | buf[1]; break; + case 4: value = (buf[0] << 24) | (buf[1] << 16) + | (buf[2] << 8) | buf[3]; break; + default: return -1; + } + code = pc->value2code(value); + if(code < 0) { + ASN_DEBUG("Character %d (0x%02x) is" + " not in map (%ld..%ld)", + *buf, *buf, lb, ub); + return -1; + } + if(per_put_few_bits(po, code, unit_bits)) + return -1; + } + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_put_many_bits(po, buf, unit_bits * units); + } + + for(ub -= lb; buf < end; buf += bpc) { + int ch; + uint32_t value; + switch(bpc) { + case 1: + value = *(const uint8_t *)buf; + break; + case 2: + value = (buf[0] << 8) | buf[1]; + break; + case 4: + value = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]; + break; + default: + return -1; + } + ch = value - lb; + if(ch < 0 || ch > ub) { + ASN_DEBUG("Character %d (0x%02x) is out of range (%ld..%ld)", *buf, + value, lb, ub + lb); + return -1; + } + if(per_put_few_bits(po, ch, unit_bits)) return -1; + } + + return 0; +} +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c new file mode 100644 index 000000000..0373fe6ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c @@ -0,0 +1,414 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; + +asn_dec_rval_t +OCTET_STRING_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: +/* + case ASN_OSUBV_ANY: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); +*/ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; +*/ + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %lld .. %lld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + (long long int)csiz->lower_bound, (long long int)csiz->upper_bound, + csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + cval = &asn_DEF_OCTET_STRING_constraints.value; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + /* X.691 #16 NOTE 1 for fixed length (<= 16 bits) strings */ + if (st->size > 2 || csiz->range_bits != 0) { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + if(bpc) { + ASN_DEBUG("Decoding OCTET STRING size %lld", + (long long int)csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Decoding BIT STRING size %lld", + (long long int)csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + if(bpc == 0) { + int ubs = (csiz->upper_bound & 0x7); + st->bits_unused = ubs ? 8 - ubs : 0; + } + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + repeat = 0; + /* Get the PER length */ + if (csiz->upper_bound - csiz->lower_bound == 0) + /* Indefinite length case */ + raw_len = aper_get_length(pd, -1, -1, csiz->effective_bits, &repeat); + else + raw_len = aper_get_length(pd, csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + raw_len += csiz->lower_bound; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + + /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings */ + if ((raw_len > 2) || (csiz->upper_bound > 2) || (csiz->range_bits != 0)) + { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + + if(bpc) { + len_bytes = raw_len * bpc; + len_bits = len_bytes * unit_bits; + } else { + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) + st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + } + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + if(bpc) { + ret = OCTET_STRING_per_get_characters(pd, + &st->buf[st->size], + raw_len, bpc, + unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ret = per_get_many_bits(pd, &st->buf[st->size], + 0, len_bits); + } + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + unsigned int sizeinunits; + const uint8_t *buf; + int ret; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: +/* + case ASN_OSUBV_ANY: + ASN__ENCODE_FAILED; +*/ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + sizeinunits = st->size * 8 - (st->bits_unused & 0x07); + ASN_DEBUG("BIT STRING of %d bytes", + sizeinunits); + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* + if(cval->flags & APC_CONSTRAINED) + unit_bits = 8; +*/ + bpc = OS__BPC_CHAR; + sizeinunits = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + sizeinunits = st->size / 2; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + sizeinunits = st->size / 4; + break; + } + + ASN_DEBUG("Encoding %s into %d units of %d bits" + " (%lld..%lld, effective %d)%s", + td->name, sizeinunits, unit_bits, + (long long int)csiz->lower_bound, + (long long int)csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out wheter size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((int)sizeinunits < csiz->lower_bound + || (int)sizeinunits > csiz->upper_bound) { + if(ct_extensible) { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else + ASN__ENCODE_FAILED; + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits >= 0) { + ASN_DEBUG("Encoding %zu bytes (%lld), length in %d bits", + st->size, (long long int)(sizeinunits - csiz->lower_bound), + csiz->effective_bits); + if (csiz->effective_bits > 0) { + ret = aper_put_length(po, csiz->lower_bound, csiz->upper_bound, + sizeinunits - csiz->lower_bound, NULL); + if(ret < 0) ASN__ENCODE_FAILED; + } + if (csiz->effective_bits > 0 || (st->size > 2) + || (csiz->upper_bound > (2 * 8 / unit_bits)) + || (csiz->range_bits != 0)) + { /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings*/ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + } + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, st->buf, + sizeinunits, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + } else { + ret = per_put_many_bits(po, st->buf, + sizeinunits * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %zu bytes", st->size); + + if(sizeinunits == 0) { + if(aper_put_length(po, -1, -1, 0, NULL) < 0) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + buf = st->buf; + while(sizeinunits) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, -1, sizeinunits, &need_eom); + + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %ld of %ld", + (long)maySave, (long)sizeinunits); + + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, buf, maySave, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + } else { + ret = per_put_many_bits(po, buf, maySave * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + + if(bpc) + buf += maySave * bpc; + else + buf += maySave >> 3; + sizeinunits -= maySave; + assert(!(maySave & 0x07) || !sizeinunits); + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c new file mode 100644 index 000000000..9530eaedb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c @@ -0,0 +1,525 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef _CH_PHASE +#define _CH_PHASE(ctx, inc) do {\ + if(ctx->phase == 0)\ + ctx->context = 0;\ + ctx->phase += inc;\ + } while(0) + +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) +#undef PREV_PHASE +#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) + +#undef ADVANCE +#define ADVANCE(num_bytes) do {\ + size_t num = (num_bytes);\ + buf_ptr = ((const char *)buf_ptr) + num;\ + size -= num;\ + consumed_myself += num;\ + } while(0) + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +#undef APPEND +#define APPEND(bufptr, bufsize) do {\ + size_t _bs = (bufsize); /* Append size */\ + size_t _ns = ctx->context; /* Allocated now */\ + size_t _es = st->size + _bs; /* Expected size */\ + /* int is really a typeof(st->size): */\ + if((int)_es < 0) RETURN(RC_FAIL);\ + if(_ns <= _es) {\ + void *ptr;\ + /* Be nice and round to the memory allocator */\ + do { _ns = _ns ? _ns << 1 : 16; }\ + while(_ns <= _es);\ + /* int is really a typeof(st->size): */\ + if((int)_ns < 0) RETURN(RC_FAIL);\ + ptr = REALLOC(st->buf, _ns);\ + if(ptr) {\ + st->buf = (uint8_t *)ptr;\ + ctx->context = _ns;\ + } else {\ + RETURN(RC_FAIL);\ + }\ + ASN_DEBUG("Reallocating into %ld", (long)_ns);\ + }\ + memcpy(st->buf + st->size, bufptr, _bs);\ + /* Convenient nul-termination */\ + st->buf[_es] = '\0';\ + st->size = _es;\ + } while(0) + +/* + * The main reason why ASN.1 is still alive is that too much time and effort + * is necessary for learning it more or less adequately, thus creating a gut + * necessity to demonstrate that acquired skill everywhere afterwards. + * No, I am not going to explain what the following stuff is. + */ +static struct _stack_el * +OS__add_stack_el(struct _stack *st) { + struct _stack_el *nel; + + /* + * Reuse the old stack frame or allocate a new one. + */ + if(st->cur_ptr && st->cur_ptr->next) { + nel = st->cur_ptr->next; + nel->bits_chopped = 0; + nel->got = 0; + /* Retain the nel->cont_level, it's correct. */ + } else { + nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); + if(nel == NULL) + return NULL; + + if(st->tail) { + /* Increase a subcontainment depth */ + nel->cont_level = st->tail->cont_level + 1; + st->tail->next = nel; + } + nel->prev = st->tail; + st->tail = nel; + } + + st->cur_ptr = nel; + + return nel; +} + +static struct _stack * +_new_stack(void) { + return (struct _stack *)CALLOC(1, sizeof(struct _stack)); +} + +/* + * Decode OCTET STRING type. + */ +asn_dec_rval_t +OCTET_STRING_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + asn_dec_rval_t rval; + asn_struct_ctx_t *ctx; + ssize_t consumed_myself = 0; + struct _stack *stck; /* Expectations stack structure */ + struct _stack_el *sel = 0; /* Stack element */ + int tlv_constr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + + ASN_DEBUG("Decoding %s as %s (frame %ld)", + td->name, + (type_variant == ASN_OSUBV_STR) ? + "OCTET STRING" : "OS-SpecialCase", + (long)size); + + /* + * Create the string if does not exist. + */ + if(st == NULL) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) RETURN(RC_FAIL); + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + switch(ctx->phase) { + case 0: + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, ctx, + buf_ptr, size, tag_mode, -1, + &ctx->left, &tlv_constr); + if(rval.code != RC_OK) + return rval; + + if(tlv_constr) { + /* + * Complex operation, requires stack of expectations. + */ + ctx->ptr = _new_stack(); + if(!ctx->ptr) { + RETURN(RC_FAIL); + } + } else { + /* + * Jump into stackless primitive decoding. + */ + _CH_PHASE(ctx, 3); + if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) + APPEND(buf_ptr, rval.consumed); + ADVANCE(rval.consumed); + goto phase3; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + phase1: + /* + * Fill the stack with expectations. + */ + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + do { + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_tag_t expected_tag; + ssize_t tl, ll, tlvl; + /* This one works even if (sel->left == -1) */ + size_t Left = ((!sel||(size_t)sel->left >= size) + ?size:(size_t)sel->left); + + + ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", (void *)sel, + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)(sel?sel->got:0) + ); + if(sel && sel->left <= 0 && sel->want_nulls == 0) { + if(sel->prev) { + struct _stack_el *prev = sel->prev; + if(prev->left != -1) { + if(prev->left < sel->got) + RETURN(RC_FAIL); + prev->left -= sel->got; + } + prev->got += sel->got; + sel = stck->cur_ptr = prev; + if(!sel) break; + tlv_constr = 1; + continue; + } else { + sel = stck->cur_ptr = 0; + break; /* Nothing to wait */ + } + } + + tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); + ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", + (long)size, (long)Left, sel?"":"!", + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)tl); + switch(tl) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); + + ll = ber_fetch_length(tlv_constr, + (const char *)buf_ptr + tl,Left - tl,&tlv_len); + ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", + ber_tlv_tag_string(tlv_tag), tlv_constr, + (long)Left, (long)tl, (long)tlv_len, (long)ll); + switch(ll) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + if(sel && sel->want_nulls + && ((const uint8_t *)buf_ptr)[0] == 0 + && ((const uint8_t *)buf_ptr)[1] == 0) + { + ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); + + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND("\0\0", 2); + + ADVANCE(2); + sel->got += 2; + if(sel->left != -1) { + sel->left -= 2; /* assert(sel->left >= 2) */ + } + + sel->want_nulls--; + if(sel->want_nulls == 0) { + /* Move to the next expectation */ + sel->left = 0; + tlv_constr = 1; + } + + continue; + } + + /* + * Set up expected tags, + * depending on ASN.1 type being decoded. + */ + switch(type_variant) { + case ASN_OSUBV_BIT: + /* X.690: 8.6.4.1, NOTE 2 */ + /* Fall through */ + case ASN_OSUBV_STR: + default: + if(sel) { + unsigned level = sel->cont_level; + if(level < td->all_tags_count) { + expected_tag = td->all_tags[level]; + break; + } else if(td->all_tags_count) { + expected_tag = td->all_tags + [td->all_tags_count - 1]; + break; + } + /* else, Fall through */ + } + /* Fall through */ + case ASN_OSUBV_ANY: + expected_tag = tlv_tag; + break; + } + + if(tlv_tag != expected_tag) { + char buf[2][32]; + ber_tlv_tag_snprint(tlv_tag, + buf[0], sizeof(buf[0])); + ber_tlv_tag_snprint(td->tags[td->tags_count-1], + buf[1], sizeof(buf[1])); + ASN_DEBUG("Tag does not match expectation: %s != %s", + buf[0], buf[1]); + RETURN(RC_FAIL); + } + + tlvl = tl + ll; /* Combined length of T and L encoding */ + if((tlv_len + tlvl) < 0) { + /* tlv_len value is too big */ + ASN_DEBUG("TLV encoding + length (%ld) is too big", + (long)tlv_len); + RETURN(RC_FAIL); + } + + /* + * Append a new expectation. + */ + sel = OS__add_stack_el(stck); + if(!sel) RETURN(RC_FAIL); + + sel->tag = tlv_tag; + + sel->want_nulls = (tlv_len==-1); + if(sel->prev && sel->prev->left != -1) { + /* Check that the parent frame is big enough */ + if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) + RETURN(RC_FAIL); + if(tlv_len == -1) + sel->left = sel->prev->left - tlvl; + else + sel->left = tlv_len; + } else { + sel->left = tlv_len; + } + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND(buf_ptr, tlvl); + sel->got += tlvl; + ADVANCE(tlvl); + + ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%u", + (long)sel->got, (long)sel->left, + sel->want_nulls, sel->cont_level); + + } while(tlv_constr); + if(sel == NULL) { + /* Finished operation, "phase out" */ + ASN_DEBUG("Phase out"); + _CH_PHASE(ctx, +3); + break; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 2: + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", + (long)sel->left, (long)size, (long)sel->got, + sel->want_nulls); + { + ber_tlv_len_t len; + + assert(sel->left >= 0); + + len = ((ber_tlv_len_t)size < sel->left) + ? (ber_tlv_len_t)size : sel->left; + if(len > 0) { + if(type_variant == ASN_OSUBV_BIT + && sel->bits_chopped == 0) { + /* Put the unused-bits-octet away */ + st->bits_unused = *(const uint8_t *)buf_ptr; + APPEND(((const char *)buf_ptr+1), (len - 1)); + sel->bits_chopped = 1; + } else { + APPEND(buf_ptr, len); + } + ADVANCE(len); + sel->left -= len; + sel->got += len; + } + + if(sel->left) { + ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", + (long)sel->left, (long)size, sel->want_nulls); + RETURN(RC_WMORE); + } + + PREV_PHASE(ctx); + goto phase1; + } + break; + case 3: + phase3: + /* + * Primitive form, no stack required. + */ + assert(ctx->left >= 0); + + if(size < (size_t)ctx->left) { + if(!size) RETURN(RC_WMORE); + if(type_variant == ASN_OSUBV_BIT && !ctx->context) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, size); + assert(ctx->context > 0); + ctx->left -= size; + ADVANCE(size); + RETURN(RC_WMORE); + } else { + if(type_variant == ASN_OSUBV_BIT + && !ctx->context && ctx->left) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, ctx->left); + ADVANCE(ctx->left); + ctx->left = 0; + + NEXT_PHASE(ctx); + } + break; + } + + if(sel) { + ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", + (void *)sel->prev, sel->want_nulls, + (long)sel->left, (long)sel->got, (long)size); + if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { + RETURN(RC_WMORE); + } + } + + /* + * BIT STRING-specific processing. + */ + if(type_variant == ASN_OSUBV_BIT) { + if(st->size) { + if(st->bits_unused < 0 || st->bits_unused > 7) { + RETURN(RC_FAIL); + } + /* Finalize BIT STRING: zero out unused bits. */ + st->buf[st->size-1] &= 0xff << st->bits_unused; + } else { + if(st->bits_unused) { + RETURN(RC_FAIL); + } + } + } + + ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", + (long)consumed_myself, td->name, + (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", + (long)st->size); + + + RETURN(RC_OK); +} + +/* + * Encode OCTET STRING type using DER. + */ +asn_enc_rval_t +OCTET_STRING_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 0, 0, 0 }; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + int fix_last_byte = 0; + + ASN_DEBUG("%s %s as OCTET STRING", + cb?"Estimating":"Encoding", td->name); + + /* + * Write tags. + */ + if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { + er.encoded = der_write_tags(td, + (type_variant == ASN_OSUBV_BIT) + st->size, + tag_mode, type_variant == ASN_OSUBV_ANY, tag, + cb, app_key); + if(er.encoded == -1) { + er.failed_type = td; + er.structure_ptr = sptr; + return er; + } + } else { + /* Disallow: [] IMPLICIT ANY */ + assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); + er.encoded = 0; + } + + if(!cb) { + er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; + ASN__ENCODED_OK(er); + } + + /* + * Prepare to deal with the last octet of BIT STRING. + */ + if(type_variant == ASN_OSUBV_BIT) { + uint8_t b = st->bits_unused & 0x07; + if(b && st->size) fix_last_byte = 1; + ASN__CALLBACK(&b, 1); + } + + /* Invoke callback for the main part of the buffer */ + ASN__CALLBACK(st->buf, st->size - fix_last_byte); + + /* The last octet should be stripped off the unused bits */ + if(fix_last_byte) { + uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); + ASN__CALLBACK(&b, 1); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c new file mode 100644 index 000000000..e69d0a6a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING"); + ASN__DECODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + (void)opt_codec_ctx; + + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = unit_bytes * ct_size; + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length % unit_bytes != 0) { + ASN_DEBUG( + "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "", + expected_length, unit_bytes); + ASN__DECODE_FAILED; + } + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_enc_rval_t er = {0, 0, 0}; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size); + + if(ct_size >= 0) { + /* + * Check that available data matches the constraint + */ + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING"); + ASN__ENCODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + if(st->size != unit_bytes * (size_t)ct_size) { + ASN_DEBUG( + "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE " + "constraint (%" ASN_PRI_SIZE ")", + td->name, st->size, ct_size); + ASN__ENCODE_FAILED; + } + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + } + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c new file mode 100644 index 000000000..6daa33e9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +OCTET_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + (void)td; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = (buf == NULL)? NULL : buf + st->size; + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + _i_INDENT(1); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Remove the tail space */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + return 0; +} + +int +OCTET_STRING_print_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st && (st->buf || !st->size)) { + return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c new file mode 100644 index 000000000..5c8b0648e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c @@ -0,0 +1,209 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Biased function for randomizing character values around their limits. + */ +static uint32_t +OCTET_STRING__random_char(unsigned long lb, unsigned long ub) { + assert(lb <= ub); + switch(asn_random_between(0, 16)) { + case 0: + if(lb < ub) return lb + 1; + /* Fall through */ + case 1: + return lb; + case 2: + if(lb < ub) return ub - 1; + /* Fall through */ + case 3: + return ub; + default: + return asn_random_between(lb, ub); + } +} + +asn_random_fill_result_t +OCTET_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + unsigned int unit_bytes = 1; + unsigned long clb = 0; /* Lower bound on char */ + unsigned long cub = 255; /* Higher bound on char value */ + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_len; + OCTET_STRING_t *st; + + if(max_length == 0 && !*sptr) return result_skipped; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + /* Handled by BIT_STRING itself. */ + return result_failed; + case ASN_OSUBV_STR: + unit_bytes = 1; + clb = 0; + cub = 255; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + clb = 0; + cub = 65535; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + clb = 0; + cub = 0x10FFFF; + break; + } + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_SEMI_CONSTRAINED) { + clb = pc->lower_bound; + } else if(pc->flags & APC_CONSTRAINED) { + clb = pc->lower_bound; + cub = pc->upper_bound; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + rnd_len = + OCTET_STRING_random_length_constrained(td, constraints, max_length); + + buf = CALLOC(unit_bytes, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[unit_bytes * rnd_len]; + + switch(unit_bytes) { + case 1: + for(b = buf; b < bend; b += unit_bytes) { + *(uint8_t *)b = OCTET_STRING__random_char(clb, cub); + } + *(uint8_t *)b = 0; + break; + case 2: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 8; + b[1] = code; + } + *(uint16_t *)b = 0; + break; + case 4: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 24; + b[1] = code >> 16; + b[2] = code >> 8; + b[3] = code; + } + *(uint32_t *)b = 0; + break; + } + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = unit_bytes * rnd_len; + + result_ok.length = st->size; + return result_ok; +} + +size_t +OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *td, + const asn_encoding_constraints_t *constraints, size_t max_length) { + const unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + size_t rnd_len; + + /* Figure out how far we should go */ + rnd_len = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length <= (size_t)pc->lower_bound) { + return pc->lower_bound; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_len = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_len = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_len from the table */ + if(rnd_len <= max_length) { + break; + } + /* Fall through */ + default: + rnd_len = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_len = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_len = asn_random_between(0, max_length); + } + } else { +#else + if(!constraints) constraints = &td->encoding_constraints; + { +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + if(rnd_len > max_length) { + rnd_len = asn_random_between(0, max_length); + } + } + + return rnd_len; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c new file mode 100644 index 000000000..80130cadc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c @@ -0,0 +1,319 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +#undef RETURN +#define RETURN(_code) do {\ + asn_dec_rval_t tmprval;\ + tmprval.code = _code;\ + tmprval.consumed = consumed_myself;\ + return tmprval;\ + } while(0) + +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; + +asn_dec_rval_t +OCTET_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); + break; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + if(bpc) { + ASN_DEBUG("Encoding OCTET STRING size %ld", + csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, + bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, + pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Encoding BIT STRING size %ld", + csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len * bpc; + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = OCTET_STRING_per_get_characters(pd, &st->buf[st->size], raw_len, + bpc, unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints + ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + size_t size_in_units; + const uint8_t *buf; + int ret; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN__ENCODE_FAILED; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + size_in_units = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + size_in_units = st->size >> 1; + if(st->size & 1) { + ASN_DEBUG("%s string size is not modulo 2", td->name); + ASN__ENCODE_FAILED; + } + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + size_in_units = st->size >> 2; + if(st->size & 3) { + ASN_DEBUG("%s string size is not modulo 4", td->name); + ASN__ENCODE_FAILED; + } + break; + } + + ASN_DEBUG("Encoding %s into %" ASN_PRI_SIZE " units of %d bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_units, unit_bits, + csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_units < csiz->lower_bound + || (ssize_t)size_in_units > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes (%ld), length in %d bits", st->size, + size_in_units - csiz->lower_bound, csiz->effective_bits); + ret = per_put_few_bits(po, size_in_units - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = OCTET_STRING_per_put_characters(po, st->buf, size_in_units, bpc, + unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " in units", size_in_units); + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size_in_units, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "%s", may_save, size_in_units, + need_eom ? ",+EOM" : ""); + + ret = OCTET_STRING_per_put_characters(po, buf, may_save, bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save * bpc; + size_in_units -= may_save; + assert(!(may_save & 0x07) || !size_in_units); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_units); + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c new file mode 100644 index 000000000..490f362a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c @@ -0,0 +1,627 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ + +asn_enc_rval_t +OCTET_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + if(flags & XER_F_CANONICAL) { + char *scend = scratch + (sizeof(scratch) - 2); + for(; buf < end; buf++) { + if(p >= scend) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + } + + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + } else { + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + ASN__CALLBACK(scratch, p-scratch); + p = scratch; + ASN__TEXT_INDENT(1, ilevel); + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + if(p - scratch) { + p--; /* Remove the tail space */ + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + if(st->size > 16) + ASN__TEXT_INDENT(1, ilevel-1); + } + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +static const struct OCTET_STRING__xer_escape_table_s { + const char *string; + int size; +} OCTET_STRING__xer_escape_table[] = { +#define OSXET(s) { s, sizeof(s) - 1 } + OSXET("\074\156\165\154\057\076"), /* */ + OSXET("\074\163\157\150\057\076"), /* */ + OSXET("\074\163\164\170\057\076"), /* */ + OSXET("\074\145\164\170\057\076"), /* */ + OSXET("\074\145\157\164\057\076"), /* */ + OSXET("\074\145\156\161\057\076"), /* */ + OSXET("\074\141\143\153\057\076"), /* */ + OSXET("\074\142\145\154\057\076"), /* */ + OSXET("\074\142\163\057\076"), /* */ + OSXET("\011"), /* \t */ + OSXET("\012"), /* \n */ + OSXET("\074\166\164\057\076"), /* */ + OSXET("\074\146\146\057\076"), /* */ + OSXET("\015"), /* \r */ + OSXET("\074\163\157\057\076"), /* */ + OSXET("\074\163\151\057\076"), /* */ + OSXET("\074\144\154\145\057\076"), /* */ + OSXET("\074\144\143\061\057\076"), /* */ + OSXET("\074\144\143\062\057\076"), /* */ + OSXET("\074\144\143\063\057\076"), /* */ + OSXET("\074\144\143\064\057\076"), /* */ + OSXET("\074\156\141\153\057\076"), /* */ + OSXET("\074\163\171\156\057\076"), /* */ + OSXET("\074\145\164\142\057\076"), /* */ + OSXET("\074\143\141\156\057\076"), /* */ + OSXET("\074\145\155\057\076"), /* */ + OSXET("\074\163\165\142\057\076"), /* */ + OSXET("\074\145\163\143\057\076"), /* */ + OSXET("\074\151\163\064\057\076"), /* */ + OSXET("\074\151\163\063\057\076"), /* */ + OSXET("\074\151\163\062\057\076"), /* */ + OSXET("\074\151\163\061\057\076"), /* */ + { 0, 0 }, /* " " */ + { 0, 0 }, /* ! */ + { 0, 0 }, /* \" */ + { 0, 0 }, /* # */ + { 0, 0 }, /* $ */ + { 0, 0 }, /* % */ + OSXET("\046\141\155\160\073"), /* & */ + { 0, 0 }, /* ' */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ + {0,0},{0,0},{0,0},{0,0}, /* 89:; */ + OSXET("\046\154\164\073"), /* < */ + { 0, 0 }, /* = */ + OSXET("\046\147\164\073"), /* > */ +}; + +static int +OS__check_escaped_control_char(const void *buf, int size) { + size_t i; + /* + * Inefficient algorithm which translates the escape sequences + * defined above into characters. Returns -1 if not found. + * TODO: replace by a faster algorithm (bsearch(), hash or + * nested table lookups). + */ + for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { + const struct OCTET_STRING__xer_escape_table_s *el; + el = &OCTET_STRING__xer_escape_table[i]; + if(el->size == size && memcmp(buf, el->string, size) == 0) + return i; + } + return -1; +} + +static int +OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { + /* + * This might be one of the escape sequences + * for control characters. Check it out. + * #11.15.5 + */ + int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); + if(control_char >= 0) { + OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; + void *p = REALLOC(st->buf, st->size + 2); + if(p) { + st->buf = (uint8_t *)p; + st->buf[st->size++] = control_char; + st->buf[st->size] = '\0'; /* nul-termination */ + return 0; + } + } + + return -1; /* No, it's not */ +} + +asn_enc_rval_t +OCTET_STRING_encode_xer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + uint8_t *buf, *end; + uint8_t *ss; /* Sequence start */ + ssize_t encoded_len = 0; + + (void)ilevel; /* Unused argument */ + (void)flags; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + buf = st->buf; + end = buf + st->size; + for(ss = buf; buf < end; buf++) { + unsigned int ch = *buf; + int s_len; /* Special encoding sequence length */ + + /* + * Escape certain characters: X.680/11.15 + */ + if(ch < sizeof(OCTET_STRING__xer_escape_table) + / sizeof(OCTET_STRING__xer_escape_table[0]) + && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { + if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) + || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, app_key) < 0) + ASN__ENCODE_FAILED; + encoded_len += (buf - ss) + s_len; + ss = buf + 1; + } + } + + encoded_len += (buf - ss); + if((buf - ss) && cb(ss, buf - ss, app_key) < 0) + ASN__ENCODE_FAILED; + + er.encoded = encoded_len; + ASN__ENCODED_OK(er); +} + +/* + * Convert from hexadecimal format (cstring): "AB CD EF" + */ +static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *chunk_stop = (const char *)chunk_buf; + const char *p = chunk_stop; + const char *pend = p + chunk_size; + unsigned int clv = 0; + int half = 0; /* Half bit */ + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 1) / 2; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * If something like " a b c " appears here, the " a b":3 will be + * converted, and the rest skipped. That is, unless buf_size is greater + * than chunk_size, then it'll be equivalent to "ABC0". + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + continue; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + clv = (clv << 4) + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + clv = (clv << 4) + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + clv = (clv << 4) + (ch - 0x61 + 10); + break; + default: + *buf = 0; /* JIC */ + return -1; + } + if(half++) { + half = 0; + *buf++ = clv; + chunk_stop = p + 1; + } + } + + /* + * Check partial decoding. + */ + if(half) { + if(have_more) { + /* + * Partial specification is fine, + * because no more more PXER_TEXT data is available. + */ + *buf++ = clv << 4; + chunk_stop = p; + } + } else { + chunk_stop = p; + } + + st->size = buf - st->buf; /* Adjust the buffer size */ + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return (chunk_stop - (const char *)chunk_buf); /* Converted size */ +} + +/* + * Convert from binary format: "00101011101" + */ +static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + BIT_STRING_t *st = (BIT_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = (p == NULL)? NULL : p + chunk_size; + int bits_unused = st->bits_unused & 0x7; + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 7) / 8; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + (void)have_more; + + if(bits_unused == 0) + bits_unused = 8; + else if(st->size) + buf--; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + break; + case 0x30: + case 0x31: + if(bits_unused-- <= 0) { + *++buf = 0; /* Clean the cell */ + bits_unused = 7; + } + *buf |= (ch&1) << bits_unused; + break; + default: + st->bits_unused = bits_unused; + return -1; + } + } + + if(bits_unused == 8) { + st->size = buf - st->buf; + st->bits_unused = 0; + } else { + st->size = buf - st->buf + 1; + st->bits_unused = bits_unused; + } + + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Something like strtod(), but with stricter rules. + */ +static int +OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { + const int32_t last_unicode_codepoint = 0x10ffff; + int32_t val = 0; + const char *p; + + for(p = buf; p < end; p++) { + int ch = *p; + + switch(ch) { + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + val = val * base + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + val = val * base + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + val = val * base + (ch - 0x61 + 10); + break; + case 0x3b: /* ';' */ + *ret_value = val; + return (p - buf) + 1; + default: + return -1; /* Character set error */ + } + + /* Value exceeds the Unicode range. */ + if(val > last_unicode_codepoint) { + return -1; + } + } + + *ret_value = -1; + return (p - buf); +} + +/* + * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" + */ +static ssize_t +OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, + size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + uint8_t *buf; + + /* Reallocate buffer */ + size_t new_size = st->size + chunk_size; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + int len; /* Length of the rest of the chunk */ + + if(ch != 0x26 /* '&' */) { + *buf++ = ch; + continue; /* That was easy... */ + } + + /* + * Process entity reference. + */ + len = chunk_size - (p - (const char *)chunk_buf); + if(len == 1 /* "&" */) goto want_more; + if(p[1] == 0x23 /* '#' */) { + const char *pval; /* Pointer to start of digits */ + int32_t val = 0; /* Entity reference value */ + int base; + + if(len == 2 /* "&#" */) goto want_more; + if(p[2] == 0x78 /* 'x' */) + pval = p + 3, base = 16; + else + pval = p + 2, base = 10; + len = OS__strtoent(base, pval, p + len, &val); + if(len == -1) { + /* Invalid charset. Just copy verbatim. */ + *buf++ = ch; + continue; + } + if(!len || pval[len-1] != 0x3b) goto want_more; + assert(val > 0); + p += (pval - p) + len - 1; /* Advance past entref */ + + if(val < 0x80) { + *buf++ = (char)val; + } else if(val < 0x800) { + *buf++ = 0xc0 | ((val >> 6)); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x10000) { + *buf++ = 0xe0 | ((val >> 12)); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x200000) { + *buf++ = 0xf0 | ((val >> 18)); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x4000000) { + *buf++ = 0xf8 | ((val >> 24)); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else { + *buf++ = 0xfc | ((val >> 30) & 0x1); + *buf++ = 0x80 | ((val >> 24) & 0x3f); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } + } else { + /* + * Ugly, limited parsing of & > < + */ + char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); + if(!sc) goto want_more; + if((sc - p) == 4 + && p[1] == 0x61 /* 'a' */ + && p[2] == 0x6d /* 'm' */ + && p[3] == 0x70 /* 'p' */) { + *buf++ = 0x26; + p = sc; + continue; + } + if((sc - p) == 3) { + if(p[1] == 0x6c) { + *buf = 0x3c; /* '<' */ + } else if(p[1] == 0x67) { + *buf = 0x3e; /* '>' */ + } else { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + if(p[2] != 0x74) { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + buf++; + p = sc; + continue; + } + /* Unsupported entity reference */ + *buf++ = ch; + } + + continue; + want_more: + if(have_more) { + /* + * We know that no more data (of the same type) + * is coming. Copy the rest verbatim. + */ + *buf++ = ch; + continue; + } + chunk_size = (p - (const char *)chunk_buf); + /* Processing stalled: need more data */ + break; + } + + st->size = buf - st->buf; + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Decode OCTET STRING from the XML element's body. + */ +static asn_dec_rval_t +OCTET_STRING__decode_xer( + const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + void **sptr, const char *opt_mname, const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size, int have_more)) { + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t *ctx; /* Per-structure parser context */ + asn_dec_rval_t rval; /* Return value from the decoder */ + int st_allocated; + + /* + * Create the string if does not exist. + */ + if(!st) { + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + *sptr = (void *)st; + if(!st) goto sta_failed; + st_allocated = 1; + } else { + st_allocated = 0; + } + if(!st->buf) { + /* This is separate from above section */ + st->buf = (uint8_t *)CALLOC(1, 1); + if(!st->buf) { + if(st_allocated) { + *sptr = 0; + goto stb_failed; + } else { + goto sta_failed; + } + } + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); + + return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, + buf_ptr, size, + opt_unexpected_tag_decoder, + body_receiver); + +stb_failed: + FREEMEM(st); +sta_failed: + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; +} + +/* + * Decode OCTET STRING from the hexadecimal data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_hex(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, + OCTET_STRING__convert_hexadecimal); +} + +/* + * Decode OCTET STRING from the binary (0/1) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_binary(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, + OCTET_STRING__convert_binary); +} + +/* + * Decode OCTET STRING from the string (ASCII/UTF-8) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_utf8(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, + OCTET_STRING__handle_control_chars, + OCTET_STRING__convert_entrefs); +} diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c new file mode 100644 index 000000000..c9afecffe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_TYPE_operation_t asn_OP_OPEN_TYPE = { + OPEN_TYPE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OPEN_TYPE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OPEN_TYPE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OPEN_TYPE_decode_ber, + OPEN_TYPE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OPEN_TYPE_decode_xer, + OPEN_TYPE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OPEN_TYPE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + OPEN_TYPE_decode_oer, + OPEN_TYPE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OPEN_TYPE_decode_uper, + OPEN_TYPE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OPEN_TYPE_decode_aper, + OPEN_TYPE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + 0, /* Random fill is not supported for open type */ +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c new file mode 100644 index 000000000..3e2ab1888 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c @@ -0,0 +1,173 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = aper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(aper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + + +int OPEN_TYPE_aper_is_unknown_type(const asn_TYPE_descriptor_t *td, void *sptr, const asn_TYPE_member_t *elm) { + asn_type_selector_result_t selected; + + if(!elm->type_selector) { + return 1; + } + else { + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + return 1; + } + } + return 0; +} + +asn_dec_rval_t +OPEN_TYPE_aper_unknown_type_discard_bytes (asn_per_data_t *pd) { +#define ASN_DUMMY_BYTES 256 + unsigned char dummy[ASN_DUMMY_BYTES], *dummy_ptr = NULL; + ssize_t bytes; + int repeat; + asn_dec_rval_t rv; + + rv.consumed = 0; + rv.code = RC_FAIL; + + do { + bytes = aper_get_length(pd, -1, -1, -1, &repeat); + if (bytes > 10 * ASN_DUMMY_BYTES) + { + return rv; + } + else if (bytes > ASN_DUMMY_BYTES) + { + dummy_ptr = CALLOC(1, bytes); + if (!dummy_ptr) + return rv; + } + + per_get_many_bits(pd, (dummy_ptr ? dummy_ptr : dummy), 0, bytes << 3); + + if (dummy_ptr) + { + FREEMEM(dummy_ptr); + dummy_ptr = NULL; + } + } while (repeat); + + rv.code = RC_OK; + return rv; +#undef ASN_DUMMY_BYTES +} diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c new file mode 100644 index 000000000..7d8948072 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ASN_DEBUG("presence %d\n", selected.presence_index); + + rv = selected.type_descriptor->op->ber_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, ptr, size, + elm->tag_mode); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = consumed_myself; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case RC_FAIL: + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + break; + } + + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c new file mode 100644 index 000000000..05a5eaad2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + asn_TYPE_member_t *elm, const void *ptr, size_t size) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + size_t ot_ret; + + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, ptr, size); + switch(ot_ret) { + default: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = ot_ret; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case -1: + rv.code = RC_FAIL; + rv.consumed = ot_ret; + break; + case 0: + rv.code = RC_WMORE; + rv.consumed = 0; + break; + } + + if(*memb_ptr2) { + const asn_CHOICE_specifics_t *specs = + selected.type_descriptor->specifics; + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor, + inner_value); + memset(*memb_ptr2, 0, specs->struct_size); + } + } + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c new file mode 100644 index 000000000..2f27bb904 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = uper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(uper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c new file mode 100644 index 000000000..fc38562e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c @@ -0,0 +1,166 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + int xer_context = 0; + ssize_t ch_size; + pxer_chunk_type_e ch_type; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + /* + * Confirm wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_OPENING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = selected.type_descriptor->op->xer_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, NULL, ptr, size); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_FAIL: + /* Point to a best position where failure occurred */ + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + /* Wrt. rv.consumed==0: + * In case a genuine RC_WMORE, the whole Open Type decoding + * will have to be restarted. + */ + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; + } + + /* + * Finalize wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_CLOSING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + rv.consumed += consumed_myself; + + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r2020/ObjectCount.c b/src/tmx/Asn_J2735/src/r2020/ObjectCount.c new file mode 100644 index 000000000..e27a193b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObjectCount.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NMEAcorrections" + * found in "J2735-NMEAcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ObjectCount.h" + +int +ObjectCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObjectCount_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectCount = { + "ObjectCount", + "ObjectCount", + &asn_OP_NativeInteger, + asn_DEF_ObjectCount_tags_1, + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + asn_DEF_ObjectCount_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObjectCount_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObjectCount_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObjectCount_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObjectDescriptor.c b/src/tmx/Asn_J2735/src/r2020/ObjectDescriptor.c new file mode 100644 index 000000000..c311a9291 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObjectDescriptor.c @@ -0,0 +1,91 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * ObjectDescriptor basic type description. + */ +static const ber_tlv_tag_t asn_DEF_ObjectDescriptor_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), /* [UNIVERSAL 7] IMPLICIT ... */ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_ObjectDescriptor = { + OCTET_STRING_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + OCTET_STRING_print_utf8, /* Treat as ASCII subset (it's not) */ +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + OCTET_STRING_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + OCTET_STRING_encode_jer_utf8, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, + 0, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + 0, /* Not supported for ObjectDescriptor */ +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor = { + "ObjectDescriptor", + "ObjectDescriptor", + &asn_OP_ObjectDescriptor, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]) - 1, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]), + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + asn_generic_unknown_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; diff --git a/src/tmx/Asn_J2735/src/r2020/ObjectDistance.c b/src/tmx/Asn_J2735/src/r2020/ObjectDistance.c new file mode 100644 index 000000000..79ec8c88b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObjectDistance.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectDistance.h" + +int +ObjectDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectDistance_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObjectDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectDistance = { + "ObjectDistance", + "ObjectDistance", + &asn_OP_NativeInteger, + asn_DEF_ObjectDistance_tags_1, + sizeof(asn_DEF_ObjectDistance_tags_1) + /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ + asn_DEF_ObjectDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectDistance_tags_1) + /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectDistance_constr_1, &asn_PER_type_ObjectDistance_constr_1, ObjectDistance_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObjectID.c b/src/tmx/Asn_J2735/src/r2020/ObjectID.c new file mode 100644 index 000000000..5b46a3671 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObjectID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectID.h" + +int +ObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_ObjectID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObjectID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectID = { + "ObjectID", + "ObjectID", + &asn_OP_NativeInteger, + asn_DEF_ObjectID_tags_1, + sizeof(asn_DEF_ObjectID_tags_1) + /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ + asn_DEF_ObjectID_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectID_tags_1) + /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectID_constr_1, &asn_PER_type_ObjectID_constr_1, ObjectID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObjectType.c b/src/tmx/Asn_J2735/src/r2020/ObjectType.c new file mode 100644 index 000000000..43ce3726e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObjectType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ObjectType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ObjectType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 7, "vehicle" }, + { 2, 3, "vru" }, + { 3, 6, "animal" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ObjectType_enum2value_1[] = { + 3, /* animal(3) */ + 0, /* unknown(0) */ + 1, /* vehicle(1) */ + 2 /* vru(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1 = { + asn_MAP_ObjectType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ObjectType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ObjectType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectType = { + "ObjectType", + "ObjectType", + &asn_OP_NativeEnumerated, + asn_DEF_ObjectType_tags_1, + sizeof(asn_DEF_ObjectType_tags_1) + /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ + asn_DEF_ObjectType_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectType_tags_1) + /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectType_constr_1, &asn_PER_type_ObjectType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ObjectType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObstacleDetection.c b/src/tmx/Asn_J2735/src/r2020/ObstacleDetection.c new file mode 100644 index 000000000..52eefcb34 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObstacleDetection.c @@ -0,0 +1,195 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ObstacleDetection.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523L && value <= 541L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_4 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_ObstacleDetection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDirection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_POINTER, 2, offsetof(struct ObstacleDetection, description), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "locationDetails" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, dateTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dateTime" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, vertEvent), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vertEvent" + }, +}; +static const int asn_MAP_ObstacleDetection_oms_1[] = { 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_ObstacleDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleDetection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* locationDetails */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dateTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vertEvent */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1 = { + sizeof(struct ObstacleDetection), + offsetof(struct ObstacleDetection, _asn_ctx), + asn_MAP_ObstacleDetection_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ObstacleDetection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDetection = { + "ObstacleDetection", + "ObstacleDetection", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleDetection_tags_1, + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ObstacleDetection_1, + 6, /* Elements count */ + &asn_SPC_ObstacleDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObstacleDirection.c b/src/tmx/Asn_J2735/src/r2020/ObstacleDirection.c new file mode 100644 index 000000000..70ffc7bec --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObstacleDirection.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ObstacleDirection.h" + +int +ObstacleDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 28800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using Common_Angle, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { + "ObstacleDirection", + "ObstacleDirection", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDirection_tags_1, + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObstacleDirection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObstacleDirection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObstacleDirection_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObstacleDistance.c b/src/tmx/Asn_J2735/src/r2020/ObstacleDistance.c new file mode 100644 index 000000000..dcc0763e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObstacleDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ObstacleDistance.h" + +int +ObstacleDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { + "ObstacleDistance", + "ObstacleDistance", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDistance_tags_1, + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ObstacleDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ObstacleDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ObstacleDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObstacleSize.c b/src/tmx/Asn_J2735/src/r2020/ObstacleSize.c new file mode 100644 index 000000000..8edc1baf8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObstacleSize.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObstacleSize.h" + +asn_TYPE_member_t asn_MBR_ObstacleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "length" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleSize, height), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, +}; +static const int asn_MAP_ObstacleSize_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ObstacleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* length */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* height */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1 = { + sizeof(struct ObstacleSize), + offsetof(struct ObstacleSize, _asn_ctx), + asn_MAP_ObstacleSize_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ObstacleSize_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleSize = { + "ObstacleSize", + "ObstacleSize", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleSize_tags_1, + sizeof(asn_DEF_ObstacleSize_tags_1) + /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ + asn_DEF_ObstacleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleSize_tags_1) + /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ObstacleSize_1, + 3, /* Elements count */ + &asn_SPC_ObstacleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ObstacleSizeConfidence.c b/src/tmx/Asn_J2735/src/r2020/ObstacleSizeConfidence.c new file mode 100644 index 000000000..d5ddfbc43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ObstacleSizeConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObstacleSizeConfidence.h" + +asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, widthConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "widthConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, lengthConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lengthConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleSizeConfidence, heightConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heightConfidence" + }, +}; +static const int asn_MAP_ObstacleSizeConfidence_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ObstacleSizeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleSizeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* widthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lengthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* heightConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1 = { + sizeof(struct ObstacleSizeConfidence), + offsetof(struct ObstacleSizeConfidence, _asn_ctx), + asn_MAP_ObstacleSizeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ObstacleSizeConfidence_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence = { + "ObstacleSizeConfidence", + "ObstacleSizeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleSizeConfidence_tags_1, + sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) + /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ + asn_DEF_ObstacleSizeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) + /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ObstacleSizeConfidence_1, + 3, /* Elements count */ + &asn_SPC_ObstacleSizeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B09.c b/src/tmx/Asn_J2735/src/r2020/Offset-B09.c new file mode 100644 index 000000000..104ec49f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B09.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B09.h" + +int +Offset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B09 = { + "Offset-B09", + "Offset-B09", + &asn_OP_NativeInteger, + asn_DEF_Offset_B09_tags_1, + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + asn_DEF_Offset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B09_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B10.c b/src/tmx/Asn_J2735/src/r2020/Offset-B10.c new file mode 100644 index 000000000..3762748a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B10.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B10.h" + +int +Offset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512L && value <= 511L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { + "Offset-B10", + "Offset-B10", + &asn_OP_NativeInteger, + asn_DEF_Offset_B10_tags_1, + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + asn_DEF_Offset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B10_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B11.c b/src/tmx/Asn_J2735/src/r2020/Offset-B11.c new file mode 100644 index 000000000..b2012811e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B11.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B11.h" + +int +Offset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { + "Offset-B11", + "Offset-B11", + &asn_OP_NativeInteger, + asn_DEF_Offset_B11_tags_1, + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + asn_DEF_Offset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B11_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B12.c b/src/tmx/Asn_J2735/src/r2020/Offset-B12.c new file mode 100644 index 000000000..c19b213c4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B12.h" + +int +Offset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { + "Offset-B12", + "Offset-B12", + &asn_OP_NativeInteger, + asn_DEF_Offset_B12_tags_1, + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + asn_DEF_Offset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B13.c b/src/tmx/Asn_J2735/src/r2020/Offset-B13.c new file mode 100644 index 000000000..29a07bc59 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B13.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B13.h" + +int +Offset_B13_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B13_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-4096..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { + "Offset-B13", + "Offset-B13", + &asn_OP_NativeInteger, + asn_DEF_Offset_B13_tags_1, + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + asn_DEF_Offset_B13_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B13_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B13_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B13_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B14.c b/src/tmx/Asn_J2735/src/r2020/Offset-B14.c new file mode 100644 index 000000000..481b7dd93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B14.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B14.h" + +int +Offset_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { + "Offset-B14", + "Offset-B14", + &asn_OP_NativeInteger, + asn_DEF_Offset_B14_tags_1, + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + asn_DEF_Offset_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B14_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B14_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B14_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Offset-B16.c b/src/tmx/Asn_J2735/src/r2020/Offset-B16.c new file mode 100644 index 000000000..d3fcc2bdd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Offset-B16.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Offset-B16.h" + +int +Offset_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Offset_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { + "Offset-B16", + "Offset-B16", + &asn_OP_NativeInteger, + asn_DEF_Offset_B16_tags_1, + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + asn_DEF_Offset_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Offset_B16_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Offset_B16_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Offset_B16_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B12.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B12.c new file mode 100644 index 000000000..ffd0a3f0e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B12.h" + +int +OffsetLL_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12 = { + "OffsetLL-B12", + "OffsetLL-B12", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B12_tags_1, + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B14.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B14.c new file mode 100644 index 000000000..44c0e2f79 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B14.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B14.h" + +int +OffsetLL_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14 = { + "OffsetLL-B14", + "OffsetLL-B14", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B14_tags_1, + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B14_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B14_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B14_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B16.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B16.c new file mode 100644 index 000000000..175b270ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B16.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B16.h" + +int +OffsetLL_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16 = { + "OffsetLL-B16", + "OffsetLL-B16", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B16_tags_1, + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B16_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B16_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B16_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B18.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B18.c new file mode 100644 index 000000000..791c18446 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B18.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B18.h" + +int +OffsetLL_B18_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -131072L && value <= 131071L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-131072..131071) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B18_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18 = { + "OffsetLL-B18", + "OffsetLL-B18", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B18_tags_1, + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B18_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B18_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B18_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B18_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B22.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B22.c new file mode 100644 index 000000000..40d4d9eb7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B22.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B22.h" + +int +OffsetLL_B22_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2097152L && value <= 2097151L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-2097152..2097151) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 22, -1, -2097152, 2097151 } /* (-2097152..2097151) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B22_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22 = { + "OffsetLL-B22", + "OffsetLL-B22", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B22_tags_1, + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B22_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B22_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B22_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B22_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetLL-B24.c b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B24.c new file mode 100644 index 000000000..3ecc3c204 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetLL-B24.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetLL-B24.h" + +int +OffsetLL_B24_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8388608L && value <= 8388607L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8388608..8388607) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 24, -1, -8388608, 8388607 } /* (-8388608..8388607) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_OffsetLL_B24_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24 = { + "OffsetLL-B24", + "OffsetLL-B24", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B24_tags_1, + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B24_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OffsetLL_B24_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OffsetLL_B24_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OffsetLL_B24_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetPoint.c b/src/tmx/Asn_J2735/src/r2020/OffsetPoint.c new file mode 100644 index 000000000..3572ed0d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetPoint.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetPoint.h" + +static int +memb_deltax_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_deltay_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_deltax_constr_2 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_deltax_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_deltay_constr_3 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_deltay_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_OffsetPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltax), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_deltax_constr_2, &asn_PER_memb_deltax_constr_2, memb_deltax_constraint_1 }, + 0, 0, /* No default value */ + "deltax" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltay), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_deltay_constr_3, &asn_PER_memb_deltay_constr_3, memb_deltay_constraint_1 }, + 0, 0, /* No default value */ + "deltay" + }, +}; +static const ber_tlv_tag_t asn_DEF_OffsetPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_OffsetPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* deltax */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* deltay */ +}; +asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1 = { + sizeof(struct OffsetPoint), + offsetof(struct OffsetPoint, _asn_ctx), + asn_MAP_OffsetPoint_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_OffsetPoint = { + "OffsetPoint", + "OffsetPoint", + &asn_OP_SEQUENCE, + asn_DEF_OffsetPoint_tags_1, + sizeof(asn_DEF_OffsetPoint_tags_1) + /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ + asn_DEF_OffsetPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetPoint_tags_1) + /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_OffsetPoint_1, + 2, /* Elements count */ + &asn_SPC_OffsetPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OffsetSystem.c b/src/tmx/Asn_J2735/src/r2020/OffsetSystem.c new file mode 100644 index 000000000..5b7f28eb5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OffsetSystem.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OffsetSystem.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_offset_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_offset_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_offset_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.xy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "xy" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.ll), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ll" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offset_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ll */ +}; +static asn_CHOICE_specifics_t asn_SPC_offset_specs_3 = { + sizeof(struct OffsetSystem__offset), + offsetof(struct OffsetSystem__offset, _asn_ctx), + offsetof(struct OffsetSystem__offset, present), + sizeof(((struct OffsetSystem__offset *)0)->present), + asn_MAP_offset_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offset_3 = { + "offset", + "offset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_offset_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_offset_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_offset_3, + 2, /* Elements count */ + &asn_SPC_offset_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_OffsetSystem_1[] = { + { ATF_POINTER, 1, offsetof(struct OffsetSystem, scale), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem, offset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offset_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_OffsetSystem_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_OffsetSystem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_OffsetSystem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1 = { + sizeof(struct OffsetSystem), + offsetof(struct OffsetSystem, _asn_ctx), + asn_MAP_OffsetSystem_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_OffsetSystem_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_OffsetSystem = { + "OffsetSystem", + "OffsetSystem", + &asn_OP_SEQUENCE, + asn_DEF_OffsetSystem_tags_1, + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + asn_DEF_OffsetSystem_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_OffsetSystem_1, + 2, /* Elements count */ + &asn_SPC_OffsetSystem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/OverlayLaneList.c b/src/tmx/Asn_J2735/src/r2020/OverlayLaneList.c new file mode 100644 index 000000000..9bbcbe0a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/OverlayLaneList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "OverlayLaneList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { + sizeof(struct OverlayLaneList), + offsetof(struct OverlayLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { + "OverlayLaneList", + "OverlayLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_OverlayLaneList_tags_1, + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + asn_DEF_OverlayLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_OverlayLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_OverlayLaneList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_OverlayLaneList_1, + 1, /* Single element */ + &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PartII-Id.c b/src/tmx/Asn_J2735/src/r2020/PartII-Id.c new file mode 100644 index 000000000..f6ad1fa5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PartII-Id.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PartII-Id.h" + +int +PartII_Id_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PartII_Id_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PartII_Id_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PartII_Id_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PartII_Id = { + "PartII-Id", + "PartII-Id", + &asn_OP_NativeInteger, + asn_DEF_PartII_Id_tags_1, + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + asn_DEF_PartII_Id_tags_1, /* Same as above */ + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PartII_Id_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PartII_Id_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PartII_Id_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PartIIcontent.c b/src/tmx/Asn_J2735/src/r2020/PartIIcontent.c new file mode 100644 index 000000000..beb0ee5b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PartIIcontent.c @@ -0,0 +1,284 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PartIIcontent.h" + +static const long asn_VAL_1_vehicleSafetyExt = 0; +static const long asn_VAL_2_specialVehicleExt = 1; +static const long asn_VAL_3_supplementalVehicleExt = 2; +static const asn_ioc_cell_t asn_IOS_BSMpartIIExtension_1_rows[] = { + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_1_vehicleSafetyExt }, + { "&Type", aioc__type, &asn_DEF_VehicleSafetyExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_2_specialVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SpecialVehicleExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_3_supplementalVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SupplementalVehicleExtensions } +}; +static const asn_ioc_set_t asn_IOS_BSMpartIIExtension_1[] = { + { 3, 2, asn_IOS_BSMpartIIExtension_1_rows } +}; +static int +memb_partII_Id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_BSMpartIIExtension_partII_Value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_BSMpartIIExtension_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct BSMpartIIExtension, partII_Id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_partII_Value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Id_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Id_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_Value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.VehicleSafetyExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleSafetyExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "VehicleSafetyExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SpecialVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SpecialVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SpecialVehicleExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SupplementalVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SupplementalVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SupplementalVehicleExtensions" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_partII_Value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* VehicleSafetyExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* SpecialVehicleExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* SupplementalVehicleExtensions */ +}; +static asn_CHOICE_specifics_t asn_SPC_partII_Value_specs_3 = { + sizeof(struct BSMpartIIExtension__partII_Value), + offsetof(struct BSMpartIIExtension__partII_Value, _asn_ctx), + offsetof(struct BSMpartIIExtension__partII_Value, present), + sizeof(((struct BSMpartIIExtension__partII_Value *)0)->present), + asn_MAP_partII_Value_tag2el_3, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_Value_3 = { + "partII-Value", + "partII-Value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_partII_Value_3, + 3, /* Elements count */ + &asn_SPC_partII_Value_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PartII_Id, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Id_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Id" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_partII_Value_3, + select_BSMpartIIExtension_partII_Value_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Value_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Value" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMpartIIExtension_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMpartIIExtension_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* partII-Id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* partII-Value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1 = { + sizeof(struct BSMpartIIExtension), + offsetof(struct BSMpartIIExtension, _asn_ctx), + asn_MAP_BSMpartIIExtension_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension = { + "BSMpartIIExtension", + "BSMpartIIExtension", + &asn_OP_SEQUENCE, + asn_DEF_BSMpartIIExtension_tags_1, + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + asn_DEF_BSMpartIIExtension_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BSMpartIIExtension_1, + 2, /* Elements count */ + &asn_SPC_BSMpartIIExtension_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PathHistory.c b/src/tmx/Asn_J2735/src/r2020/PathHistory.c new file mode 100644 index 000000000..d6dce25e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PathHistory.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PathHistory.h" + +asn_TYPE_member_t asn_MBR_PathHistory_1[] = { + { ATF_POINTER, 2, offsetof(struct PathHistory, initialPosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "initialPosition" + }, + { ATF_POINTER, 1, offsetof(struct PathHistory, currGNSSstatus), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "currGNSSstatus" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistoryPointList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_PathHistory_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGNSSstatus */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { + sizeof(struct PathHistory), + offsetof(struct PathHistory, _asn_ctx), + asn_MAP_PathHistory_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PathHistory_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistory = { + "PathHistory", + "PathHistory", + &asn_OP_SEQUENCE, + asn_DEF_PathHistory_tags_1, + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + asn_DEF_PathHistory_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathHistory_1, + 3, /* Elements count */ + &asn_SPC_PathHistory_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PathHistoryPoint.c b/src/tmx/Asn_J2735/src/r2020/PathHistoryPoint.c new file mode 100644 index 000000000..47d42ee0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PathHistoryPoint.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PathHistoryPoint.h" + +asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, latOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "latOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, lonOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lonOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_POINTER, 3, offsetof(struct PathHistoryPoint, speed), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 2, offsetof(struct PathHistoryPoint, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 1, offsetof(struct PathHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_PathHistoryPoint_oms_1[] = { 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_PathHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lonOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1 = { + sizeof(struct PathHistoryPoint), + offsetof(struct PathHistoryPoint, _asn_ctx), + asn_MAP_PathHistoryPoint_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_PathHistoryPoint_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint = { + "PathHistoryPoint", + "PathHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_PathHistoryPoint_tags_1, + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathHistoryPoint_1, + 7, /* Elements count */ + &asn_SPC_PathHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PathHistoryPointList.c b/src/tmx/Asn_J2735/src/r2020/PathHistoryPointList.c new file mode 100644 index 000000000..1de1248c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PathHistoryPointList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PathHistoryPointList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathHistoryPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1 = { + sizeof(struct PathHistoryPointList), + offsetof(struct PathHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList = { + "PathHistoryPointList", + "PathHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PathHistoryPointList_tags_1, + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PathHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PathHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PathHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_PathHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PathNode.c b/src/tmx/Asn_J2735/src/r2020/PathNode.c new file mode 100644 index 000000000..4e36b9467 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PathNode.c @@ -0,0 +1,214 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathNode.h" + +static int +memb_x_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_y_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_z_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_width_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_x_constr_2 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_x_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_y_constr_3 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_y_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_z_constr_4 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_z_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_width_constr_5 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_width_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PathNode_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathNode, x), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_x_constr_2, &asn_PER_memb_x_constr_2, memb_x_constraint_1 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathNode, y), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_y_constr_3, &asn_PER_memb_y_constr_3, memb_y_constraint_1 }, + 0, 0, /* No default value */ + "y" + }, + { ATF_POINTER, 2, offsetof(struct PathNode, z), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_z_constr_4, &asn_PER_memb_z_constr_4, memb_z_constraint_1 }, + 0, 0, /* No default value */ + "z" + }, + { ATF_POINTER, 1, offsetof(struct PathNode, width), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_width_constr_5, &asn_PER_memb_width_constr_5, memb_width_constraint_1 }, + 0, 0, /* No default value */ + "width" + }, +}; +static const int asn_MAP_PathNode_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_PathNode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathNode_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* x */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, -1, 0 }, /* y */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* z */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 } /* width */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1 = { + sizeof(struct PathNode), + offsetof(struct PathNode, _asn_ctx), + asn_MAP_PathNode_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_PathNode_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathNode = { + "PathNode", + "PathNode", + &asn_OP_SEQUENCE, + asn_DEF_PathNode_tags_1, + sizeof(asn_DEF_PathNode_tags_1) + /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ + asn_DEF_PathNode_tags_1, /* Same as above */ + sizeof(asn_DEF_PathNode_tags_1) + /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PathNode_1, + 4, /* Elements count */ + &asn_SPC_PathNode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PathPrediction.c b/src/tmx/Asn_J2735/src/r2020/PathPrediction.c new file mode 100644 index 000000000..a5f3b2c66 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PathPrediction.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PathPrediction.h" + +asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RadiusOfCurvature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "radiusOfCurve" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Confidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { + sizeof(struct PathPrediction), + offsetof(struct PathPrediction, _asn_ctx), + asn_MAP_PathPrediction_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathPrediction = { + "PathPrediction", + "PathPrediction", + &asn_OP_SEQUENCE, + asn_DEF_PathPrediction_tags_1, + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + asn_DEF_PathPrediction_tags_1, /* Same as above */ + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PathPrediction_1, + 2, /* Elements count */ + &asn_SPC_PathPrediction_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PayloadData.c b/src/tmx/Asn_J2735/src/r2020/PayloadData.c new file mode 100644 index 000000000..1ef8b1d9a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PayloadData.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PayloadData.h" + +int +PayloadData_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 2048UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PayloadData_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..2048)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PayloadData = { + "PayloadData", + "PayloadData", + &asn_OP_OCTET_STRING, + asn_DEF_PayloadData_tags_1, + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + asn_DEF_PayloadData_tags_1, /* Same as above */ + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PayloadData_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PayloadData_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PayloadData_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/r2020/PedestrianBicycleDetect.c new file mode 100644 index 000000000..7101c1c43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PedestrianBicycleDetect.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PedestrianBicycleDetect.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { + "PedestrianBicycleDetect", + "PedestrianBicycleDetect", + &asn_OP_BOOLEAN, + asn_DEF_PedestrianBicycleDetect_tags_1, + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalAssistive.c b/src/tmx/Asn_J2735/src/r2020/PersonalAssistive.c new file mode 100644 index 000000000..8dd1d07fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalAssistive.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalAssistive.h" + +int +PersonalAssistive_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { + "PersonalAssistive", + "PersonalAssistive", + &asn_OP_BIT_STRING, + asn_DEF_PersonalAssistive_tags_1, + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + asn_DEF_PersonalAssistive_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalAssistive_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalAssistive_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalAssistive_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/r2020/PersonalClusterRadius.c new file mode 100644 index 000000000..fc8d514cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalClusterRadius.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalClusterRadius.h" + +int +PersonalClusterRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 100L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { + "PersonalClusterRadius", + "PersonalClusterRadius", + &asn_OP_NativeInteger, + asn_DEF_PersonalClusterRadius_tags_1, + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalClusterRadius_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalClusterRadius_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalClusterRadius_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/r2020/PersonalCrossingInProgress.c new file mode 100644 index 000000000..4ab2aac6e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalCrossingInProgress.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalCrossingInProgress.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { + "PersonalCrossingInProgress", + "PersonalCrossingInProgress", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingInProgress_tags_1, + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/r2020/PersonalCrossingRequest.c new file mode 100644 index 000000000..14bbf5e63 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalCrossingRequest.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalCrossingRequest.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { + "PersonalCrossingRequest", + "PersonalCrossingRequest", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingRequest_tags_1, + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUsageState.c new file mode 100644 index 000000000..16782cc50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUsageState.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalDeviceUsageState.h" + +int +PersonalDeviceUsageState_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { + "PersonalDeviceUsageState", + "PersonalDeviceUsageState", + &asn_OP_BIT_STRING, + asn_DEF_PersonalDeviceUsageState_tags_1, + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalDeviceUsageState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalDeviceUsageState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PersonalDeviceUsageState_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUserType.c new file mode 100644 index 000000000..93fc96e33 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalDeviceUserType.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalDeviceUserType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "aPEDESTRIAN" }, + { 2, 13, "aPEDALCYCLIST" }, + { 3, 19, "aPUBLICSAFETYWORKER" }, + { 4, 8, "anANIMAL" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { + 2, /* aPEDALCYCLIST(2) */ + 1, /* aPEDESTRIAN(1) */ + 3, /* aPUBLICSAFETYWORKER(3) */ + 4, /* anANIMAL(4) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { + asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { + "PersonalDeviceUserType", + "PersonalDeviceUserType", + &asn_OP_NativeEnumerated, + asn_DEF_PersonalDeviceUserType_tags_1, + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PersonalDeviceUserType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PersonalDeviceUserType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r2020/PersonalSafetyMessage.c new file mode 100644 index 000000000..df6d55396 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PersonalSafetyMessage.c @@ -0,0 +1,621 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PersonalSafetyMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_27[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_PersonalSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_27[] = { + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_27 = { + sizeof(struct PersonalSafetyMessage__regional), + offsetof(struct PersonalSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_27 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_27, + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]) - 1, /* 1 */ + asn_DEF_regional_tags_27, /* Same as above */ + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_27, + 1, /* Single element */ + &asn_SPC_regional_specs_27 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 18, offsetof(struct PersonalSafetyMessage, accelSet), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, propulsion), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "propulsion" + }, + { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, useState), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUsageState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "useState" + }, + { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, crossRequest), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crossRequest" + }, + { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossState), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingInProgress, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crossState" + }, + { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, clusterSize), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NumberOfParticipantsInCluster, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "clusterSize" + }, + { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterRadius), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalClusterRadius, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "clusterRadius" + }, + { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, eventResponderType), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyEventResponderWorkerType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "eventResponderType" + }, + { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, activityType), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyAndRoadWorkerActivity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activityType" + }, + { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activitySubType), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyDirectingTrafficSubType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "activitySubType" + }, + { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, assistType), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalAssistive, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "assistType" + }, + { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, sizing), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UserSizeAndBehaviour, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sizing" + }, + { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, attachment), + (ASN_TAG_CLASS_CONTEXT | (22 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attachment" + }, + { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachmentRadius), + (ASN_TAG_CLASS_CONTEXT | (23 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "attachmentRadius" + }, + { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, animalType), + (ASN_TAG_CLASS_CONTEXT | (24 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "animalType" + }, + { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + 0, + &asn_DEF_regional_27, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }; +static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ + { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ + { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ + { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { + sizeof(struct PersonalSafetyMessage), + offsetof(struct PersonalSafetyMessage, _asn_ctx), + asn_MAP_PersonalSafetyMessage_tag2el_1, + 26, /* Count of tags in the map */ + asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ + 18, 0, /* Root/Additions */ + 26, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { + "PersonalSafetyMessage", + "PersonalSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_PersonalSafetyMessage_tags_1, + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PersonalSafetyMessage_1, + 26, /* Elements count */ + &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PitchDetected.c b/src/tmx/Asn_J2735/src/r2020/PitchDetected.c new file mode 100644 index 000000000..531398fb6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PitchDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchDetected.h" + +int +PitchDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -7200 && value <= 7200)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-7200..7200) */, + -1}; +asn_per_constraints_t asn_PER_type_PitchDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -7200, 7200 } /* (-7200..7200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PitchDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchDetected = { + "PitchDetected", + "PitchDetected", + &asn_OP_NativeInteger, + asn_DEF_PitchDetected_tags_1, + sizeof(asn_DEF_PitchDetected_tags_1) + /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ + asn_DEF_PitchDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchDetected_tags_1) + /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchDetected_constr_1, &asn_PER_type_PitchDetected_constr_1, PitchDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PitchRate.c b/src/tmx/Asn_J2735/src/r2020/PitchRate.c new file mode 100644 index 000000000..368ba352d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PitchRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchRate.h" + +int +PitchRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_PitchRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PitchRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchRate = { + "PitchRate", + "PitchRate", + &asn_OP_NativeInteger, + asn_DEF_PitchRate_tags_1, + sizeof(asn_DEF_PitchRate_tags_1) + /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ + asn_DEF_PitchRate_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchRate_tags_1) + /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchRate_constr_1, &asn_PER_type_PitchRate_constr_1, PitchRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PitchRateConfidence.c b/src/tmx/Asn_J2735/src/r2020/PitchRateConfidence.c new file mode 100644 index 000000000..d510e4c1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PitchRateConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PitchRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_PitchRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1 = { + asn_MAP_PitchRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PitchRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PitchRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence = { + "PitchRateConfidence", + "PitchRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_PitchRateConfidence_tags_1, + sizeof(asn_DEF_PitchRateConfidence_tags_1) + /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_PitchRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchRateConfidence_tags_1) + /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchRateConfidence_constr_1, &asn_PER_type_PitchRateConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PitchRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PivotPointDescription.c b/src/tmx/Asn_J2735/src/r2020/PivotPointDescription.c new file mode 100644 index 000000000..c5692672b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PivotPointDescription.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PivotPointDescription.h" + +asn_TYPE_member_t asn_MBR_PivotPointDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivots), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotingAllowed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivots" + }, +}; +static const ber_tlv_tag_t asn_DEF_PivotPointDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PivotPointDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pivots */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1 = { + sizeof(struct PivotPointDescription), + offsetof(struct PivotPointDescription, _asn_ctx), + asn_MAP_PivotPointDescription_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PivotPointDescription = { + "PivotPointDescription", + "PivotPointDescription", + &asn_OP_SEQUENCE, + asn_DEF_PivotPointDescription_tags_1, + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + asn_DEF_PivotPointDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PivotPointDescription_1, + 3, /* Elements count */ + &asn_SPC_PivotPointDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PivotingAllowed.c b/src/tmx/Asn_J2735/src/r2020/PivotingAllowed.c new file mode 100644 index 000000000..35c0c4dee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PivotingAllowed.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PivotingAllowed.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PivotingAllowed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PivotingAllowed = { + "PivotingAllowed", + "PivotingAllowed", + &asn_OP_BOOLEAN, + asn_DEF_PivotingAllowed_tags_1, + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + asn_DEF_PivotingAllowed_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Point.c b/src/tmx/Asn_J2735/src/r2020/Point.c new file mode 100644 index 000000000..3b58c196d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Point.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Point.h" + +asn_TYPE_member_t asn_MBR_Point_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Point, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Point, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, + { ATF_POINTER, 1, offsetof(struct Point, z), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "z" + }, + { ATF_NOFLAGS, 0, offsetof(struct Point, width), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, +}; +static const int asn_MAP_Point_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_Point_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Point_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* y */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* z */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* width */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1 = { + sizeof(struct Point), + offsetof(struct Point, _asn_ctx), + asn_MAP_Point_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Point_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Point = { + "Point", + "Point", + &asn_OP_SEQUENCE, + asn_DEF_Point_tags_1, + sizeof(asn_DEF_Point_tags_1) + /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ + asn_DEF_Point_tags_1, /* Same as above */ + sizeof(asn_DEF_Point_tags_1) + /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Point_1, + 4, /* Elements count */ + &asn_SPC_Point_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpB.c b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpB.c new file mode 100644 index 000000000..d54f7cd15 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpB.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Position3D-addGrpB.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, latitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "latitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, longitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "longitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AddGrpB_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1 = { + sizeof(struct Position3D_addGrpB), + offsetof(struct Position3D_addGrpB, _asn_ctx), + asn_MAP_Position3D_addGrpB_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB = { + "Position3D-addGrpB", + "Position3D-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpB_tags_1, + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpB_1, + 3, /* Elements count */ + &asn_SPC_Position3D_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpC.c b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpC.c new file mode 100644 index 000000000..c2fd63a9c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpC.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Position3D-addGrpC.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpC, altitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Altitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "altitude" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1 = { + sizeof(struct Position3D_addGrpC), + offsetof(struct Position3D_addGrpC, _asn_ctx), + asn_MAP_Position3D_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC = { + "Position3D-addGrpC", + "Position3D-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpC_tags_1, + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_Position3D_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpCarma.c b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpCarma.c new file mode 100644 index 000000000..6fceca342 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Position3D-addGrpCarma.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "Position3D-addGrpCarma.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_POINTER, 1, offsetof(struct Position3D_addGrpCarma, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const int asn_MAP_Position3D_addGrpCarma_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpCarma_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpCarma_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1 = { + sizeof(struct Position3D_addGrpCarma), + offsetof(struct Position3D_addGrpCarma, _asn_ctx), + asn_MAP_Position3D_addGrpCarma_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Position3D_addGrpCarma_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma = { + "Position3D-addGrpCarma", + "Position3D-addGrpCarma", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpCarma_tags_1, + sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) + /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpCarma_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) + /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpCarma_1, + 3, /* Elements count */ + &asn_SPC_Position3D_addGrpCarma_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Position3D.c b/src/tmx/Asn_J2735/src/r2020/Position3D.c new file mode 100644 index 000000000..42c5406f9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Position3D.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Position3D.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct Position3D__regional), + offsetof(struct Position3D__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_POINTER, 2, offsetof(struct Position3D, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 1, offsetof(struct Position3D, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_Position3D_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { + sizeof(struct Position3D), + offsetof(struct Position3D, _asn_ctx), + asn_MAP_Position3D_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Position3D_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D = { + "Position3D", + "Position3D", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_tags_1, + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + asn_DEF_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_1, + 4, /* Elements count */ + &asn_SPC_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PositionConfidence.c b/src/tmx/Asn_J2735/src/r2020/PositionConfidence.c new file mode 100644 index 000000000..d4aee42c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PositionConfidence.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PositionConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "a500m" }, + { 2, 5, "a200m" }, + { 3, 5, "a100m" }, + { 4, 4, "a50m" }, + { 5, 4, "a20m" }, + { 6, 4, "a10m" }, + { 7, 3, "a5m" }, + { 8, 3, "a2m" }, + { 9, 3, "a1m" }, + { 10, 5, "a50cm" }, + { 11, 5, "a20cm" }, + { 12, 5, "a10cm" }, + { 13, 4, "a5cm" }, + { 14, 4, "a2cm" }, + { 15, 4, "a1cm" } +}; +static const unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { + 3, /* a100m(3) */ + 12, /* a10cm(12) */ + 6, /* a10m(6) */ + 15, /* a1cm(15) */ + 9, /* a1m(9) */ + 2, /* a200m(2) */ + 11, /* a20cm(11) */ + 5, /* a20m(5) */ + 14, /* a2cm(14) */ + 8, /* a2m(8) */ + 1, /* a500m(1) */ + 10, /* a50cm(10) */ + 4, /* a50m(4) */ + 13, /* a5cm(13) */ + 7, /* a5m(7) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { + asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { + "PositionConfidence", + "PositionConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_PositionConfidence_tags_1, + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PositionConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PositionConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/r2020/PositionConfidenceSet.c new file mode 100644 index 000000000..9b7b681e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PositionConfidenceSet.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PositionConfidenceSet.h" + +asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, pos), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pos" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, elevation), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ElevationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pos */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1 = { + sizeof(struct PositionConfidenceSet), + offsetof(struct PositionConfidenceSet, _asn_ctx), + asn_MAP_PositionConfidenceSet_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { + "PositionConfidenceSet", + "PositionConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_PositionConfidenceSet_tags_1, + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PositionConfidenceSet_1, + 2, /* Elements count */ + &asn_SPC_PositionConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PositionOffsetXYZ.c b/src/tmx/Asn_J2735/src/r2020/PositionOffsetXYZ.c new file mode 100644 index 000000000..fd2d344d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PositionOffsetXYZ.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PositionOffsetXYZ.h" + +asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetY" + }, + { ATF_POINTER, 1, offsetof(struct PositionOffsetXYZ, offsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetZ" + }, +}; +static const int asn_MAP_PositionOffsetXYZ_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_PositionOffsetXYZ_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionOffsetXYZ_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1 = { + sizeof(struct PositionOffsetXYZ), + offsetof(struct PositionOffsetXYZ, _asn_ctx), + asn_MAP_PositionOffsetXYZ_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PositionOffsetXYZ_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ = { + "PositionOffsetXYZ", + "PositionOffsetXYZ", + &asn_OP_SEQUENCE, + asn_DEF_PositionOffsetXYZ_tags_1, + sizeof(asn_DEF_PositionOffsetXYZ_tags_1) + /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ + asn_DEF_PositionOffsetXYZ_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionOffsetXYZ_tags_1) + /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PositionOffsetXYZ_1, + 3, /* Elements count */ + &asn_SPC_PositionOffsetXYZ_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/r2020/PositionalAccuracy.c new file mode 100644 index 000000000..fd18450ab --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PositionalAccuracy.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PositionalAccuracy.h" + +asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMajor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "semiMajor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMinor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMinorAxisAccuracy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "semiMinor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, orientation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisOrientation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "orientation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionalAccuracy_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* semiMajor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiMinor */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* orientation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1 = { + sizeof(struct PositionalAccuracy), + offsetof(struct PositionalAccuracy, _asn_ctx), + asn_MAP_PositionalAccuracy_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { + "PositionalAccuracy", + "PositionalAccuracy", + &asn_OP_SEQUENCE, + asn_DEF_PositionalAccuracy_tags_1, + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PositionalAccuracy_1, + 3, /* Elements count */ + &asn_SPC_PositionalAccuracy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/r2020/PreemptPriorityList.c new file mode 100644 index 000000000..bb8044c53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PreemptPriorityList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PreemptPriorityList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalControlZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { + sizeof(struct PreemptPriorityList), + offsetof(struct PreemptPriorityList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { + "PreemptPriorityList", + "PreemptPriorityList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PreemptPriorityList_tags_1, + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PreemptPriorityList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PreemptPriorityList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PreemptPriorityList_1, + 1, /* Single element */ + &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponse.c new file mode 100644 index 000000000..486705330 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponse.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PrioritizationResponse.h" + +asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priorState" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroup" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { + sizeof(struct PrioritizationResponse), + offsetof(struct PrioritizationResponse, _asn_ctx), + asn_MAP_PrioritizationResponse_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { + "PrioritizationResponse", + "PrioritizationResponse", + &asn_OP_SEQUENCE, + asn_DEF_PrioritizationResponse_tags_1, + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PrioritizationResponse_1, + 3, /* Elements count */ + &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseList.c new file mode 100644 index 000000000..9c11bc103 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PrioritizationResponseList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..10)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PrioritizationResponse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { + sizeof(struct PrioritizationResponseList), + offsetof(struct PrioritizationResponseList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { + "PrioritizationResponseList", + "PrioritizationResponseList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PrioritizationResponseList_tags_1, + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrioritizationResponseList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrioritizationResponseList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_PrioritizationResponseList_1, + 1, /* Single element */ + &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseStatus.c new file mode 100644 index 000000000..a6f227eab --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PrioritizationResponseStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PrioritizationResponseStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 9, "requested" }, + { 2, 10, "processing" }, + { 3, 17, "watchOtherTraffic" }, + { 4, 7, "granted" }, + { 5, 8, "rejected" }, + { 6, 11, "maxPresence" }, + { 7, 15, "reserviceLocked" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { + 4, /* granted(4) */ + 6, /* maxPresence(6) */ + 2, /* processing(2) */ + 5, /* rejected(5) */ + 1, /* requested(1) */ + 7, /* reserviceLocked(7) */ + 0, /* unknown(0) */ + 3 /* watchOtherTraffic(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { + asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { + "PrioritizationResponseStatus", + "PrioritizationResponseStatus", + &asn_OP_NativeEnumerated, + asn_DEF_PrioritizationResponseStatus_tags_1, + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrioritizationResponseStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrioritizationResponseStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Priority.c b/src/tmx/Asn_J2735/src/r2020/Priority.c new file mode 100644 index 000000000..184afb7ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Priority.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Priority.h" + +int +Priority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Priority_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Priority_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Priority = { + "Priority", + "Priority", + &asn_OP_OCTET_STRING, + asn_DEF_Priority_tags_1, + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + asn_DEF_Priority_tags_1, /* Same as above */ + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Priority_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Priority_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Priority_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PriorityRequestType.c b/src/tmx/Asn_J2735/src/r2020/PriorityRequestType.c new file mode 100644 index 000000000..d1c9f4575 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PriorityRequestType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PriorityRequestType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PriorityRequestType_value2enum_1[] = { + { 0, 27, "priorityRequestTypeReserved" }, + { 1, 15, "priorityRequest" }, + { 2, 21, "priorityRequestUpdate" }, + { 3, 20, "priorityCancellation" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PriorityRequestType_enum2value_1[] = { + 3, /* priorityCancellation(3) */ + 1, /* priorityRequest(1) */ + 0, /* priorityRequestTypeReserved(0) */ + 2 /* priorityRequestUpdate(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1 = { + asn_MAP_PriorityRequestType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PriorityRequestType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PriorityRequestType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PriorityRequestType = { + "PriorityRequestType", + "PriorityRequestType", + &asn_OP_NativeEnumerated, + asn_DEF_PriorityRequestType_tags_1, + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + asn_DEF_PriorityRequestType_tags_1, /* Same as above */ + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PriorityRequestType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PriorityRequestType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PriorityRequestType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PrivilegedEventFlags.c b/src/tmx/Asn_J2735/src/r2020/PrivilegedEventFlags.c new file mode 100644 index 000000000..432937bd5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PrivilegedEventFlags.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PrivilegedEventFlags.h" + +int +PrivilegedEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PrivilegedEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags = { + "PrivilegedEventFlags", + "PrivilegedEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_PrivilegedEventFlags_tags_1, + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PrivilegedEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PrivilegedEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PrivilegedEventFlags_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PrivilegedEvents.c b/src/tmx/Asn_J2735/src/r2020/PrivilegedEvents.c new file mode 100644 index 000000000..b1281fe97 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PrivilegedEvents.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PrivilegedEvents.h" + +asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, event), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "event" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrivilegedEvents_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrivilegedEvents_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* event */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1 = { + sizeof(struct PrivilegedEvents), + offsetof(struct PrivilegedEvents, _asn_ctx), + asn_MAP_PrivilegedEvents_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents = { + "PrivilegedEvents", + "PrivilegedEvents", + &asn_OP_SEQUENCE, + asn_DEF_PrivilegedEvents_tags_1, + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEvents_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_PrivilegedEvents_1, + 2, /* Elements count */ + &asn_SPC_PrivilegedEvents_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/r2020/ProbeDataManagement.c new file mode 100644 index 000000000..11ba03de3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ProbeDataManagement.c @@ -0,0 +1,467 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ProbeDataManagement.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_term_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_term_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_snapshot_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_snapshot_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_term_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "termtime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "termDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { + sizeof(struct ProbeDataManagement__term), + offsetof(struct ProbeDataManagement__term, _asn_ctx), + offsetof(struct ProbeDataManagement__term, present), + sizeof(((struct ProbeDataManagement__term *)0)->present), + asn_MAP_term_tag2el_5, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_term_5 = { + "term", + "term", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_term_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_term_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_term_5, + 2, /* Elements count */ + &asn_SPC_term_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_snapshot_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshotTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshotDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { + sizeof(struct ProbeDataManagement__snapshot), + offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), + offsetof(struct ProbeDataManagement__snapshot, present), + sizeof(((struct ProbeDataManagement__snapshot *)0)->present), + asn_MAP_snapshot_tag2el_8, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { + "snapshot", + "snapshot", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_snapshot_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_snapshot_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_snapshot_8, + 2, /* Elements count */ + &asn_SPC_snapshot_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_13[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ProbeDataManagement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_13 = { + sizeof(struct ProbeDataManagement__regional), + offsetof(struct ProbeDataManagement__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_13 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_13, + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]) - 1, /* 1 */ + asn_DEF_regional_tags_13, /* Same as above */ + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_13, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_13, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_13, + 1, /* Single element */ + &asn_SPC_regional_specs_13 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Sample, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sample" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directions" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_term_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "term" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_snapshot_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "snapshot" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "txInterval" + }, + { ATF_POINTER, 2, offsetof(struct ProbeDataManagement, dataElements), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusRequestList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataElements" + }, + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_13, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_13, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeDataManagement_oms_1[] = { 0, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataElements */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { + sizeof(struct ProbeDataManagement), + offsetof(struct ProbeDataManagement, _asn_ctx), + asn_MAP_ProbeDataManagement_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_ProbeDataManagement_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { + "ProbeDataManagement", + "ProbeDataManagement", + &asn_OP_SEQUENCE, + asn_DEF_ProbeDataManagement_tags_1, + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ProbeDataManagement_1, + 8, /* Elements count */ + &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/r2020/ProbeSegmentNumber.c new file mode 100644 index 000000000..ff05f024c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ProbeSegmentNumber.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ProbeSegmentNumber.h" + +int +ProbeSegmentNumber_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { + "ProbeSegmentNumber", + "ProbeSegmentNumber", + &asn_OP_NativeInteger, + asn_DEF_ProbeSegmentNumber_tags_1, + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ProbeSegmentNumber_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ProbeSegmentNumber_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ProbeSegmentNumber_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/r2020/ProbeVehicleData.c new file mode 100644 index 000000000..f256c98ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ProbeVehicleData.c @@ -0,0 +1,382 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ProbeVehicleData.h" + +static int +memb_snapshots_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 32UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_snapshots_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Snapshot, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_snapshots_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_7 = { + sizeof(struct ProbeVehicleData__snapshots), + offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshots_7 = { + "snapshots", + "snapshots", + &asn_OP_SEQUENCE_OF, + asn_DEF_snapshots_tags_7, + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]) - 1, /* 1 */ + asn_DEF_snapshots_tags_7, /* Same as above */ + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_snapshots_7, + 1, /* Single element */ + &asn_SPC_snapshots_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_ProbeVehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct ProbeVehicleData__regional), + offsetof(struct ProbeVehicleData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { + { ATF_POINTER, 3, offsetof(struct ProbeVehicleData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProbeSegmentNumber, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "segNum" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "probeID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startVector" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_snapshots_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_snapshots_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_snapshots_constraint_1 + }, + 0, 0, /* No default value */ + "snapshots" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeVehicleData_oms_1[] = { 0, 1, 2, 6 }; +static const ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* snapshots */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { + sizeof(struct ProbeVehicleData), + offsetof(struct ProbeVehicleData, _asn_ctx), + asn_MAP_ProbeVehicleData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { + "ProbeVehicleData", + "ProbeVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_ProbeVehicleData_tags_1, + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ProbeVehicleData_1, + 7, /* Elements count */ + &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PropelledInformation.c b/src/tmx/Asn_J2735/src/r2020/PropelledInformation.c new file mode 100644 index 000000000..9a6135a9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PropelledInformation.c @@ -0,0 +1,111 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PropelledInformation.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HumanPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "human" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "animal" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MotorizedPropelledType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "motor" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ +}; +asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { + sizeof(struct PropelledInformation), + offsetof(struct PropelledInformation, _asn_ctx), + offsetof(struct PropelledInformation, present), + sizeof(((struct PropelledInformation *)0)->present), + asn_MAP_PropelledInformation_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { + "PropelledInformation", + "PropelledInformation", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PropelledInformation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PropelledInformation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_PropelledInformation_1, + 3, /* Elements count */ + &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/r2020/PublicSafetyAndRoadWorkerActivity.c new file mode 100644 index 000000000..200f22534 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PublicSafetyAndRoadWorkerActivity.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PublicSafetyAndRoadWorkerActivity.h" + +int +PublicSafetyAndRoadWorkerActivity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { + "PublicSafetyAndRoadWorkerActivity", + "PublicSafetyAndRoadWorkerActivity", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PublicSafetyAndRoadWorkerActivity_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/r2020/PublicSafetyDirectingTrafficSubType.c new file mode 100644 index 000000000..124648afb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PublicSafetyDirectingTrafficSubType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PublicSafetyDirectingTrafficSubType.h" + +int +PublicSafetyDirectingTrafficSubType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 7UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { + "PublicSafetyDirectingTrafficSubType", + "PublicSafetyDirectingTrafficSubType", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + PublicSafetyDirectingTrafficSubType_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/r2020/PublicSafetyEventResponderWorkerType.c new file mode 100644 index 000000000..0e92ef298 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/PublicSafetyEventResponderWorkerType.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "PublicSafetyEventResponderWorkerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "towOperater" }, + { 2, 16, "fireAndEMSWorker" }, + { 3, 10, "aDOTWorker" }, + { 4, 14, "lawEnforcement" }, + { 5, 15, "hazmatResponder" }, + { 6, 19, "animalControlWorker" }, + { 7, 14, "otherPersonnel" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { + 3, /* aDOTWorker(3) */ + 6, /* animalControlWorker(6) */ + 2, /* fireAndEMSWorker(2) */ + 5, /* hazmatResponder(5) */ + 4, /* lawEnforcement(4) */ + 7, /* otherPersonnel(7) */ + 1, /* towOperater(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { + asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { + "PublicSafetyEventResponderWorkerType", + "PublicSafetyEventResponderWorkerType", + &asn_OP_NativeEnumerated, + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCM-Revision.c b/src/tmx/Asn_J2735/src/r2020/RTCM-Revision.c new file mode 100644 index 000000000..f48367a51 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCM-Revision.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCM-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "rtcmRev2" }, + { 2, 8, "rtcmRev3" }, + { 3, 8, "reserved" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { + 3, /* reserved(3) */ + 1, /* rtcmRev2(1) */ + 2, /* rtcmRev3(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { + asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { + "RTCM-Revision", + "RTCM-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_RTCM_Revision_tags_1, + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCM_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCM_Revision_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCMPackage.c b/src/tmx/Asn_J2735/src/r2020/RTCMPackage.c new file mode 100644 index 000000000..dc3e4971d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCMPackage.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCMPackage.h" + +asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct RTCMPackage, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, msgs), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgs" + }, +}; +static const int asn_MAP_RTCMPackage_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* msgs */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { + sizeof(struct RTCMPackage), + offsetof(struct RTCMPackage, _asn_ctx), + asn_MAP_RTCMPackage_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RTCMPackage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { + "RTCMPackage", + "RTCMPackage", + &asn_OP_SEQUENCE, + asn_DEF_RTCMPackage_tags_1, + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + asn_DEF_RTCMPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMPackage_1, + 2, /* Elements count */ + &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCMcorrections.c b/src/tmx/Asn_J2735/src/r2020/RTCMcorrections.c new file mode 100644 index 000000000..17eb8518d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCMcorrections.c @@ -0,0 +1,279 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RTCMcorrections" + * found in "J2735-RTCMcorrections.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCMcorrections.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RTCMcorrections, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct RTCMcorrections__regional), + offsetof(struct RTCMcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RTCMcorrections_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Revision, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 3, offsetof(struct RTCMcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct RTCMcorrections, anchorPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchorPoint" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgs), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgs" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RTCMcorrections_oms_1[] = { 2, 3, 4, 6 }; +static const ber_tlv_tag_t asn_DEF_RTCMcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msgs */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1 = { + sizeof(struct RTCMcorrections), + offsetof(struct RTCMcorrections, _asn_ctx), + asn_MAP_RTCMcorrections_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_RTCMcorrections_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMcorrections = { + "RTCMcorrections", + "RTCMcorrections", + &asn_OP_SEQUENCE, + asn_DEF_RTCMcorrections_tags_1, + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + asn_DEF_RTCMcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMcorrections_1, + 7, /* Elements count */ + &asn_SPC_RTCMcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCMheader.c b/src/tmx/Asn_J2735/src/r2020/RTCMheader.c new file mode 100644 index 000000000..cfe1e5ca4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCMheader.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCMheader.h" + +asn_TYPE_member_t asn_MBR_RTCMheader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, status), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, offsetSet), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntennaOffsetSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offsetSet" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMheader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMheader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offsetSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1 = { + sizeof(struct RTCMheader), + offsetof(struct RTCMheader, _asn_ctx), + asn_MAP_RTCMheader_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMheader = { + "RTCMheader", + "RTCMheader", + &asn_OP_SEQUENCE, + asn_DEF_RTCMheader_tags_1, + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + asn_DEF_RTCMheader_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RTCMheader_1, + 2, /* Elements count */ + &asn_SPC_RTCMheader_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCMmessage.c b/src/tmx/Asn_J2735/src/r2020/RTCMmessage.c new file mode 100644 index 000000000..08df22bde --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCMmessage.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCMmessage.h" + +int +RTCMmessage_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 1023UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RTCMmessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessage = { + "RTCMmessage", + "RTCMmessage", + &asn_OP_OCTET_STRING, + asn_DEF_RTCMmessage_tags_1, + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCMmessage_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCMmessage_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RTCMmessage_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RTCMmessageList.c b/src/tmx/Asn_J2735/src/r2020/RTCMmessageList.c new file mode 100644 index 000000000..3baa4cb68 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RTCMmessageList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RTCMmessageList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RTCMmessageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RTCMmessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMmessageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1 = { + sizeof(struct RTCMmessageList), + offsetof(struct RTCMmessageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessageList = { + "RTCMmessageList", + "RTCMmessageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RTCMmessageList_tags_1, + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessageList_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RTCMmessageList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RTCMmessageList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RTCMmessageList_1, + 1, /* Single element */ + &asn_SPC_RTCMmessageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Radius-B12.c b/src/tmx/Asn_J2735/src/r2020/Radius-B12.c new file mode 100644 index 000000000..6b505da18 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Radius-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Radius-B12.h" + +int +Radius_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Radius_B12_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Radius_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Radius_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Radius_B12 = { + "Radius-B12", + "Radius-B12", + &asn_OP_NativeInteger, + asn_DEF_Radius_B12_tags_1, + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + asn_DEF_Radius_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Radius_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Radius_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Radius_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RadiusOfCurvature.c b/src/tmx/Asn_J2735/src/r2020/RadiusOfCurvature.c new file mode 100644 index 000000000..e199746ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RadiusOfCurvature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RadiusOfCurvature.h" + +int +RadiusOfCurvature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RadiusOfCurvature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature = { + "RadiusOfCurvature", + "RadiusOfCurvature", + &asn_OP_NativeInteger, + asn_DEF_RadiusOfCurvature_tags_1, + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + asn_DEF_RadiusOfCurvature_tags_1, /* Same as above */ + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RadiusOfCurvature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RadiusOfCurvature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RadiusOfCurvature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RainSensor.c b/src/tmx/Asn_J2735/src/r2020/RainSensor.c new file mode 100644 index 000000000..065d1470a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RainSensor.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RainSensor.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RainSensor_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RainSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "lightMist" }, + { 2, 9, "heavyMist" }, + { 3, 18, "lightRainOrDrizzle" }, + { 4, 4, "rain" }, + { 5, 12, "moderateRain" }, + { 6, 9, "heavyRain" }, + { 7, 13, "heavyDownpour" } +}; +static const unsigned int asn_MAP_RainSensor_enum2value_1[] = { + 7, /* heavyDownpour(7) */ + 2, /* heavyMist(2) */ + 6, /* heavyRain(6) */ + 1, /* lightMist(1) */ + 3, /* lightRainOrDrizzle(3) */ + 5, /* moderateRain(5) */ + 0, /* none(0) */ + 4 /* rain(4) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { + asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RainSensor = { + "RainSensor", + "RainSensor", + &asn_OP_NativeEnumerated, + asn_DEF_RainSensor_tags_1, + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + asn_DEF_RainSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RainSensor_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RainSensor_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RainSensor_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegionId.c b/src/tmx/Asn_J2735/src/r2020/RegionId.c new file mode 100644 index 000000000..7f2729f44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegionId.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegionId.h" + +int +RegionId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RegionId_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RegionId_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RegionId_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionId = { + "RegionId", + "RegionId", + &asn_OP_NativeInteger, + asn_DEF_RegionId_tags_1, + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + asn_DEF_RegionId_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RegionId_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RegionId_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RegionId_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegionList.c b/src/tmx/Asn_J2735/src/r2020/RegionList.c new file mode 100644 index 000000000..fceb75bd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegionList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegionList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RegionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..64)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RegionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RegionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionOffsets, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { + sizeof(struct RegionList), + offsetof(struct RegionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionList = { + "RegionList", + "RegionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RegionList_tags_1, + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + asn_DEF_RegionList_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RegionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RegionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RegionList_1, + 1, /* Single element */ + &asn_SPC_RegionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegionOffsets.c b/src/tmx/Asn_J2735/src/r2020/RegionOffsets.c new file mode 100644 index 000000000..699efb0c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegionOffsets.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegionOffsets.h" + +asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "xOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yOffset" + }, + { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "zOffset" + }, +}; +static const int asn_MAP_RegionOffsets_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { + sizeof(struct RegionOffsets), + offsetof(struct RegionOffsets, _asn_ctx), + asn_MAP_RegionOffsets_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionOffsets_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { + "RegionOffsets", + "RegionOffsets", + &asn_OP_SEQUENCE, + asn_DEF_RegionOffsets_tags_1, + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + asn_DEF_RegionOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegionOffsets_1, + 3, /* Elements count */ + &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegionPointSet.c b/src/tmx/Asn_J2735/src/r2020/RegionPointSet.c new file mode 100644 index 000000000..bf087aac3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegionPointSet.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegionPointSet.h" + +asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { + { ATF_POINTER, 2, offsetof(struct RegionPointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 1, offsetof(struct RegionPointSet, scale), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_RegionPointSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { + sizeof(struct RegionPointSet), + offsetof(struct RegionPointSet, _asn_ctx), + asn_MAP_RegionPointSet_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionPointSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { + "RegionPointSet", + "RegionPointSet", + &asn_OP_SEQUENCE, + asn_DEF_RegionPointSet_tags_1, + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + asn_DEF_RegionPointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegionPointSet_1, + 3, /* Elements count */ + &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c new file mode 100644 index 000000000..5a1f264dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c @@ -0,0 +1,11120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegionalExtension.h" + +static const long asn_VAL_3_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_LaneDataAttribute_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_3_addGrpB }, + { "&Type", aioc__type, &asn_DEF_LaneDataAttribute_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_LaneDataAttribute_1[] = { + { 1, 2, asn_IOS_Reg_LaneDataAttribute_1_rows } +}; +static const long asn_VAL_5_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_NodeOffsetPointXY_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_5_addGrpB }, + { "&Type", aioc__type, &asn_DEF_NodeOffsetPointXY_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_NodeOffsetPointXY_1[] = { + { 1, 2, asn_IOS_Reg_NodeOffsetPointXY_1_rows } +}; +static const long asn_VAL_6_addGrpB = 2; +static const long asn_VAL_7_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_Position3D_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_6_addGrpB }, + { "&Type", aioc__type, &asn_DEF_Position3D_addGrpB }, + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_7_addGrpC }, + { "&Type", aioc__type, &asn_DEF_Position3D_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_Position3D_1[] = { + { 2, 2, asn_IOS_Reg_Position3D_1_rows } +}; +static const long asn_VAL_9_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_MapData_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_9_addGrpC }, + { "&Type", aioc__type, &asn_DEF_MapData_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_MapData_1[] = { + { 1, 2, asn_IOS_Reg_MapData_1_rows } +}; +static const long asn_VAL_8_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_RestrictionUserType_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_8_addGrpC }, + { "&Type", aioc__type, &asn_DEF_RestrictionUserType_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_RestrictionUserType_1[] = { + { 1, 2, asn_IOS_Reg_RestrictionUserType_1_rows } +}; +static const long asn_VAL_1_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_ConnectionManeuverAssist_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_1_addGrpC }, + { "&Type", aioc__type, &asn_DEF_ConnectionManeuverAssist_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_ConnectionManeuverAssist_1[] = { + { 1, 2, asn_IOS_Reg_ConnectionManeuverAssist_1_rows } +}; +static const long asn_VAL_2_addGrpC = 3; +static const asn_ioc_cell_t asn_IOS_Reg_IntersectionState_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_2_addGrpC }, + { "&Type", aioc__type, &asn_DEF_IntersectionState_addGrpC } +}; +static const asn_ioc_set_t asn_IOS_Reg_IntersectionState_1[] = { + { 1, 2, asn_IOS_Reg_IntersectionState_1_rows } +}; +static const long asn_VAL_4_addGrpB = 2; +static const asn_ioc_cell_t asn_IOS_Reg_MovementEvent_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_4_addGrpB }, + { "&Type", aioc__type, &asn_DEF_MovementEvent_addGrpB } +}; +static const asn_ioc_set_t asn_IOS_Reg_MovementEvent_1[] = { + { 1, 2, asn_IOS_Reg_MovementEvent_1_rows } +}; +static int +memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_7(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_10(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_LaneDataAttribute_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_LaneDataAttribute_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_LaneDataAttribute, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_16(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_NodeOffsetPointXY_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_NodeOffsetPointXY_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_NodeOffsetPointXY, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_19(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_Position3D_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_Position3D_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_Position3D, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_22(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_31(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_34(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_40(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_MapData_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_MapData_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MapData, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_43(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_46(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_52(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_55(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_RestrictionUserType_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_RestrictionUserType_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_RestrictionUserType, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_58(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_64(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_67(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_70(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_76(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_79(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_82(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_88(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_91(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_94(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_100(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_103(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_106(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_ConnectionManeuverAssist_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_ConnectionManeuverAssist_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_ConnectionManeuverAssist, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_IntersectionState_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_IntersectionState_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_IntersectionState, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_112(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_MovementEvent_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_MovementEvent_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_MovementEvent, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_115(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_118(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_124(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_127(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_130(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_136(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_139(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_142(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_148(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_151(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_154(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_160(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_163(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_166(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_172(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_175(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_178(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_regionId_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regExtValue_constraint_181(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_5 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_8 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_11 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_11 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_14 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_15 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_15 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_17 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_17 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_18 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_20 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_20 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_21 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_21 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_23 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_23 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_24 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_26 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_26 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_29 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_29 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_30 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_30 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_32 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_32 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_33 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_33 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_35 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_35 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_36 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_36 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_38 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_38 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_39 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_39 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_41 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_41 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_42 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_42 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_44 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_44 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_45 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_45 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_47 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_47 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_48 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_48 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_50 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_50 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_51 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_51 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_53 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_53 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_54 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_54 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_56 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_56 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_57 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_57 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_59 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_59 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_60 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_60 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_62 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_62 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_63 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_63 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_65 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_65 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_66 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_66 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_68 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_68 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_69 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_69 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_71 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_71 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_72 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_72 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_74 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_74 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_75 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_75 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_77 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_77 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_78 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_78 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_80 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_80 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_81 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_81 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_83 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_83 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_84 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_84 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_86 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_86 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_87 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_87 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_89 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_89 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_90 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_90 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_92 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_92 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_93 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_93 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_95 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_95 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_96 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_96 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_98 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_98 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_99 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_99 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_101 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_101 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_102 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_102 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_104 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_104 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_105 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_105 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_107 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_107 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_108 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_108 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_110 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_110 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_111 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_111 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_113 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_113 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_114 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_114 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_116 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_116 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_117 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_117 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_119 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_119 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_120 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_120 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_122 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_122 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_123 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_123 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_125 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_125 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_126 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_126 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_128 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_128 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_129 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_129 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_131 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_131 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_132 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_132 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_134 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_134 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_135 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_135 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_137 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_137 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_138 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_138 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_140 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_140 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_141 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_141 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_143 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_143 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_144 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_144 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_146 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_146 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_147 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_147 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_149 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_149 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_150 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_150 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_152 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_152 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_153 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_153 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_155 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_155 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_156 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_156 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_158 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_158 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_159 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_159 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_161 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_161 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_162 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_162 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_164 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_164 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_165 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_165 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_167 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_167 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_168 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_168 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_170 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_170 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_171 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_171 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_173 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_173 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_174 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_174 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_176 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_176 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_177 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_177 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_179 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_179 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_180 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_180 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_182 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_182 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_183 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_183 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { + sizeof(struct Reg_BasicSafetyMessage__regExtValue), + 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 */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_1 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_1 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1 = { + sizeof(struct Reg_BasicSafetyMessage), + offsetof(struct Reg_BasicSafetyMessage, _asn_ctx), + asn_MAP_Reg_BasicSafetyMessage_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage = { + "Reg-BasicSafetyMessage", + "Reg-BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_Reg_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_BasicSafetyMessage_1, + 2, /* Elements count */ + &asn_SPC_Reg_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_6 = { + sizeof(struct Reg_EventDescription__regExtValue), + offsetof(struct Reg_EventDescription__regExtValue, _asn_ctx), + offsetof(struct Reg_EventDescription__regExtValue, present), + sizeof(((struct Reg_EventDescription__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_6 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_EventDescription_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_4 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EventDescription, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_4 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_EventDescription_tags_4[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_EventDescription_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_EventDescription_specs_4 = { + sizeof(struct Reg_EventDescription), + offsetof(struct Reg_EventDescription, _asn_ctx), + asn_MAP_Reg_EventDescription_tag2el_4, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_EventDescription = { + "Reg-EventDescription", + "Reg-EventDescription", + &asn_OP_SEQUENCE, + asn_DEF_Reg_EventDescription_tags_4, + sizeof(asn_DEF_Reg_EventDescription_tags_4) + /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ + asn_DEF_Reg_EventDescription_tags_4, /* Same as above */ + sizeof(asn_DEF_Reg_EventDescription_tags_4) + /sizeof(asn_DEF_Reg_EventDescription_tags_4[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_EventDescription_4, + 2, /* Elements count */ + &asn_SPC_Reg_EventDescription_specs_4 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_9 = { + sizeof(struct Reg_SupplementalVehicleExtensions__regExtValue), + offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, _asn_ctx), + offsetof(struct Reg_SupplementalVehicleExtensions__regExtValue, present), + sizeof(((struct Reg_SupplementalVehicleExtensions__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_9 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SupplementalVehicleExtensions_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_8, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_8, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_7 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SupplementalVehicleExtensions, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_7 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 = { + sizeof(struct Reg_SupplementalVehicleExtensions), + offsetof(struct Reg_SupplementalVehicleExtensions, _asn_ctx), + asn_MAP_Reg_SupplementalVehicleExtensions_tag2el_7, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SupplementalVehicleExtensions = { + "Reg-SupplementalVehicleExtensions", + "Reg-SupplementalVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, + sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) + /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ + asn_DEF_Reg_SupplementalVehicleExtensions_tags_7, /* Same as above */ + sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7) + /sizeof(asn_DEF_Reg_SupplementalVehicleExtensions_tags_7[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SupplementalVehicleExtensions_7, + 2, /* Elements count */ + &asn_SPC_Reg_SupplementalVehicleExtensions_specs_7 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_12 = { + sizeof(struct Reg_ComputedLane__regExtValue), + offsetof(struct Reg_ComputedLane__regExtValue, _asn_ctx), + offsetof(struct Reg_ComputedLane__regExtValue, present), + sizeof(((struct Reg_ComputedLane__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_12 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ComputedLane_10[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_10 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ComputedLane, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_10 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ComputedLane_tags_10[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ComputedLane_tag2el_10[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_10 = { + sizeof(struct Reg_ComputedLane), + offsetof(struct Reg_ComputedLane, _asn_ctx), + asn_MAP_Reg_ComputedLane_tag2el_10, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane = { + "Reg-ComputedLane", + "Reg-ComputedLane", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ComputedLane_tags_10, + sizeof(asn_DEF_Reg_ComputedLane_tags_10) + /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ + asn_DEF_Reg_ComputedLane_tags_10, /* Same as above */ + sizeof(asn_DEF_Reg_ComputedLane_tags_10) + /sizeof(asn_DEF_Reg_ComputedLane_tags_10[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ComputedLane_10, + 2, /* Elements count */ + &asn_SPC_Reg_ComputedLane_specs_10 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_15[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute__regExtValue, choice.LaneDataAttribute_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_LaneDataAttribute_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "LaneDataAttribute-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_15[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* LaneDataAttribute-addGrpB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_15 = { + sizeof(struct Reg_LaneDataAttribute__regExtValue), + offsetof(struct Reg_LaneDataAttribute__regExtValue, _asn_ctx), + offsetof(struct Reg_LaneDataAttribute__regExtValue, present), + sizeof(((struct Reg_LaneDataAttribute__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_15, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_15 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_15, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_15 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_LaneDataAttribute_13[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_14, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_14, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_13 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneDataAttribute, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_15, + select_Reg_LaneDataAttribute_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_15, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_15, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_13 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_LaneDataAttribute_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneDataAttribute_tag2el_13[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_13 = { + sizeof(struct Reg_LaneDataAttribute), + offsetof(struct Reg_LaneDataAttribute, _asn_ctx), + asn_MAP_Reg_LaneDataAttribute_tag2el_13, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute = { + "Reg-LaneDataAttribute", + "Reg-LaneDataAttribute", + &asn_OP_SEQUENCE, + asn_DEF_Reg_LaneDataAttribute_tags_13, + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ + asn_DEF_Reg_LaneDataAttribute_tags_13, /* Same as above */ + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_13[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_LaneDataAttribute_13, + 2, /* Elements count */ + &asn_SPC_Reg_LaneDataAttribute_specs_13 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_18 = { + sizeof(struct Reg_NodeAttributeSetXY__regExtValue), + offsetof(struct Reg_NodeAttributeSetXY__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeAttributeSetXY__regExtValue, present), + sizeof(((struct Reg_NodeAttributeSetXY__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_18 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_18 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetXY_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_17, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_17, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_16 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetXY, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_18, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_18, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_18, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_16 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetXY_tags_16[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetXY_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetXY_specs_16 = { + sizeof(struct Reg_NodeAttributeSetXY), + offsetof(struct Reg_NodeAttributeSetXY, _asn_ctx), + asn_MAP_Reg_NodeAttributeSetXY_tag2el_16, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetXY = { + "Reg-NodeAttributeSetXY", + "Reg-NodeAttributeSetXY", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeAttributeSetXY_tags_16, + sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) + /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ + asn_DEF_Reg_NodeAttributeSetXY_tags_16, /* Same as above */ + sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16) + /sizeof(asn_DEF_Reg_NodeAttributeSetXY_tags_16[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeAttributeSetXY_16, + 2, /* Elements count */ + &asn_SPC_Reg_NodeAttributeSetXY_specs_16 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_21[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY__regExtValue, choice.NodeOffsetPointXY_addGrpB), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_NodeOffsetPointXY_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "NodeOffsetPointXY-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_21[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 } /* posB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_21 = { + sizeof(struct Reg_NodeOffsetPointXY__regExtValue), + offsetof(struct Reg_NodeOffsetPointXY__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeOffsetPointXY__regExtValue, present), + sizeof(((struct Reg_NodeOffsetPointXY__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_21, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_21 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_21, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_21 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointXY_19[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_20, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_20, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_19 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointXY, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_21, + select_Reg_NodeOffsetPointXY_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_21, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_21, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_19 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointXY_tags_19[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointXY_tag2el_19[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointXY_specs_19 = { + sizeof(struct Reg_NodeOffsetPointXY), + offsetof(struct Reg_NodeOffsetPointXY, _asn_ctx), + asn_MAP_Reg_NodeOffsetPointXY_tag2el_19, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointXY = { + "Reg-NodeOffsetPointXY", + "Reg-NodeOffsetPointXY", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeOffsetPointXY_tags_19, + sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) + /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ + asn_DEF_Reg_NodeOffsetPointXY_tags_19, /* Same as above */ + sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19) + /sizeof(asn_DEF_Reg_NodeOffsetPointXY_tags_19[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeOffsetPointXY_19, + 2, /* Elements count */ + &asn_SPC_Reg_NodeOffsetPointXY_specs_19 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_24[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "Position3D-addGrpB" + }, + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D__regExtValue, choice.Position3D_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "Position3D-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_24[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* Position3D-addGrpB */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* Position3D-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_24 = { + sizeof(struct Reg_Position3D__regExtValue), + offsetof(struct Reg_Position3D__regExtValue, _asn_ctx), + offsetof(struct Reg_Position3D__regExtValue, present), + sizeof(((struct Reg_Position3D__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_24, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_24 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_24, + 2, /* Elements count */ + &asn_SPC_regExtValue_specs_24 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_Position3D_22[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_23, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_23, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_22 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_Position3D, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_24, + select_Reg_Position3D_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_24, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_24, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_22 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_Position3D_tags_22[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_Position3D_tag2el_22[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_22 = { + sizeof(struct Reg_Position3D), + offsetof(struct Reg_Position3D, _asn_ctx), + asn_MAP_Reg_Position3D_tag2el_22, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_Position3D = { + "Reg-Position3D", + "Reg-Position3D", + &asn_OP_SEQUENCE, + asn_DEF_Reg_Position3D_tags_22, + sizeof(asn_DEF_Reg_Position3D_tags_22) + /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ + asn_DEF_Reg_Position3D_tags_22, /* Same as above */ + sizeof(asn_DEF_Reg_Position3D_tags_22) + /sizeof(asn_DEF_Reg_Position3D_tags_22[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_Position3D_22, + 2, /* Elements count */ + &asn_SPC_Reg_Position3D_specs_22 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_27 = { + sizeof(struct Reg_RequestorType__regExtValue), + offsetof(struct Reg_RequestorType__regExtValue, _asn_ctx), + offsetof(struct Reg_RequestorType__regExtValue, present), + sizeof(((struct Reg_RequestorType__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_27 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_27 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RequestorType_25[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_26, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_26, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_25 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorType, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_27, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_27, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_27, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_25 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RequestorType_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorType_tag2el_25[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorType_specs_25 = { + sizeof(struct Reg_RequestorType), + offsetof(struct Reg_RequestorType, _asn_ctx), + asn_MAP_Reg_RequestorType_tag2el_25, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RequestorType = { + "Reg-RequestorType", + "Reg-RequestorType", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RequestorType_tags_25, + sizeof(asn_DEF_Reg_RequestorType_tags_25) + /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ + asn_DEF_Reg_RequestorType_tags_25, /* Same as above */ + sizeof(asn_DEF_Reg_RequestorType_tags_25) + /sizeof(asn_DEF_Reg_RequestorType_tags_25[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RequestorType_25, + 2, /* Elements count */ + &asn_SPC_Reg_RequestorType_specs_25 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_30 = { + sizeof(struct Reg_VehicleClassification__regExtValue), + offsetof(struct Reg_VehicleClassification__regExtValue, _asn_ctx), + offsetof(struct Reg_VehicleClassification__regExtValue, present), + sizeof(((struct Reg_VehicleClassification__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_30 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_30 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_VehicleClassification_28[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_29, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_29, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_28 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VehicleClassification, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_30, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_30, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_30, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_28 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_VehicleClassification_tags_28[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_VehicleClassification_tag2el_28[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_VehicleClassification_specs_28 = { + sizeof(struct Reg_VehicleClassification), + offsetof(struct Reg_VehicleClassification, _asn_ctx), + asn_MAP_Reg_VehicleClassification_tag2el_28, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_VehicleClassification = { + "Reg-VehicleClassification", + "Reg-VehicleClassification", + &asn_OP_SEQUENCE, + asn_DEF_Reg_VehicleClassification_tags_28, + sizeof(asn_DEF_Reg_VehicleClassification_tags_28) + /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ + asn_DEF_Reg_VehicleClassification_tags_28, /* Same as above */ + sizeof(asn_DEF_Reg_VehicleClassification_tags_28) + /sizeof(asn_DEF_Reg_VehicleClassification_tags_28[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_VehicleClassification_28, + 2, /* Elements count */ + &asn_SPC_Reg_VehicleClassification_specs_28 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_33 = { + sizeof(struct Reg_VerticalOffset__regExtValue), + offsetof(struct Reg_VerticalOffset__regExtValue, _asn_ctx), + offsetof(struct Reg_VerticalOffset__regExtValue, present), + sizeof(((struct Reg_VerticalOffset__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_33 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_33 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_VerticalOffset_31[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_32, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_32, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_31 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_VerticalOffset, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_33, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_33, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_33, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_31 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_VerticalOffset_tags_31[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_VerticalOffset_tag2el_31[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_VerticalOffset_specs_31 = { + sizeof(struct Reg_VerticalOffset), + offsetof(struct Reg_VerticalOffset, _asn_ctx), + asn_MAP_Reg_VerticalOffset_tag2el_31, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_VerticalOffset = { + "Reg-VerticalOffset", + "Reg-VerticalOffset", + &asn_OP_SEQUENCE, + asn_DEF_Reg_VerticalOffset_tags_31, + sizeof(asn_DEF_Reg_VerticalOffset_tags_31) + /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ + asn_DEF_Reg_VerticalOffset_tags_31, /* Same as above */ + sizeof(asn_DEF_Reg_VerticalOffset_tags_31) + /sizeof(asn_DEF_Reg_VerticalOffset_tags_31[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_VerticalOffset_31, + 2, /* Elements count */ + &asn_SPC_Reg_VerticalOffset_specs_31 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_36 = { + sizeof(struct Reg_CommonSafetyRequest__regExtValue), + offsetof(struct Reg_CommonSafetyRequest__regExtValue, _asn_ctx), + offsetof(struct Reg_CommonSafetyRequest__regExtValue, present), + sizeof(((struct Reg_CommonSafetyRequest__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_36 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_36 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_CommonSafetyRequest_34[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_35, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_35, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_34 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_CommonSafetyRequest, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_36, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_36, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_36, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_34 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_CommonSafetyRequest_tags_34[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_CommonSafetyRequest_tag2el_34[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_CommonSafetyRequest_specs_34 = { + sizeof(struct Reg_CommonSafetyRequest), + offsetof(struct Reg_CommonSafetyRequest, _asn_ctx), + asn_MAP_Reg_CommonSafetyRequest_tag2el_34, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_CommonSafetyRequest = { + "Reg-CommonSafetyRequest", + "Reg-CommonSafetyRequest", + &asn_OP_SEQUENCE, + asn_DEF_Reg_CommonSafetyRequest_tags_34, + sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) + /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ + asn_DEF_Reg_CommonSafetyRequest_tags_34, /* Same as above */ + sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34) + /sizeof(asn_DEF_Reg_CommonSafetyRequest_tags_34[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_CommonSafetyRequest_34, + 2, /* Elements count */ + &asn_SPC_Reg_CommonSafetyRequest_specs_34 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_39 = { + sizeof(struct Reg_EmergencyVehicleAlert__regExtValue), + offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, _asn_ctx), + offsetof(struct Reg_EmergencyVehicleAlert__regExtValue, present), + sizeof(((struct Reg_EmergencyVehicleAlert__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_39 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_39 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_EmergencyVehicleAlert_37[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_38, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_38, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_37 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_EmergencyVehicleAlert, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_39, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_39, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_39, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_37 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_EmergencyVehicleAlert_tags_37[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_EmergencyVehicleAlert_specs_37 = { + sizeof(struct Reg_EmergencyVehicleAlert), + offsetof(struct Reg_EmergencyVehicleAlert, _asn_ctx), + asn_MAP_Reg_EmergencyVehicleAlert_tag2el_37, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_EmergencyVehicleAlert = { + "Reg-EmergencyVehicleAlert", + "Reg-EmergencyVehicleAlert", + &asn_OP_SEQUENCE, + asn_DEF_Reg_EmergencyVehicleAlert_tags_37, + sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) + /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ + asn_DEF_Reg_EmergencyVehicleAlert_tags_37, /* Same as above */ + sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37) + /sizeof(asn_DEF_Reg_EmergencyVehicleAlert_tags_37[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_EmergencyVehicleAlert_37, + 2, /* Elements count */ + &asn_SPC_Reg_EmergencyVehicleAlert_specs_37 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_42 = { + sizeof(struct Reg_IntersectionCollision__regExtValue), + offsetof(struct Reg_IntersectionCollision__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionCollision__regExtValue, present), + sizeof(((struct Reg_IntersectionCollision__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_42 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_42 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionCollision_40[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_41, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_41, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_40 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionCollision, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_42, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_42, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_42, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_40 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionCollision_tags_40[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionCollision_tag2el_40[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionCollision_specs_40 = { + sizeof(struct Reg_IntersectionCollision), + offsetof(struct Reg_IntersectionCollision, _asn_ctx), + asn_MAP_Reg_IntersectionCollision_tag2el_40, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionCollision = { + "Reg-IntersectionCollision", + "Reg-IntersectionCollision", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionCollision_tags_40, + sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) + /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ + asn_DEF_Reg_IntersectionCollision_tags_40, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionCollision_tags_40) + /sizeof(asn_DEF_Reg_IntersectionCollision_tags_40[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionCollision_40, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionCollision_specs_40 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_45[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData__regExtValue, choice.MapData_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MapData_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MapData-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_45[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MapData-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_45 = { + sizeof(struct Reg_MapData__regExtValue), + offsetof(struct Reg_MapData__regExtValue, _asn_ctx), + offsetof(struct Reg_MapData__regExtValue, present), + sizeof(((struct Reg_MapData__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_45, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_45 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_45, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_45 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MapData_43[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_44, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_44, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_43 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MapData, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_45, + select_Reg_MapData_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_45, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_45, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_43 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MapData_tags_43[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MapData_tag2el_43[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_43 = { + sizeof(struct Reg_MapData), + offsetof(struct Reg_MapData, _asn_ctx), + asn_MAP_Reg_MapData_tag2el_43, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MapData = { + "Reg-MapData", + "Reg-MapData", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MapData_tags_43, + sizeof(asn_DEF_Reg_MapData_tags_43) + /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ + asn_DEF_Reg_MapData_tags_43, /* Same as above */ + sizeof(asn_DEF_Reg_MapData_tags_43) + /sizeof(asn_DEF_Reg_MapData_tags_43[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MapData_43, + 2, /* Elements count */ + &asn_SPC_Reg_MapData_specs_43 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_48 = { + sizeof(struct Reg_GenericLane__regExtValue), + offsetof(struct Reg_GenericLane__regExtValue, _asn_ctx), + offsetof(struct Reg_GenericLane__regExtValue, present), + sizeof(((struct Reg_GenericLane__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_48 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_48 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GenericLane_46[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_47, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_47, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_46 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GenericLane, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_48, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_48, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_48, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_46 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GenericLane_tags_46[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GenericLane_tag2el_46[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_46 = { + sizeof(struct Reg_GenericLane), + offsetof(struct Reg_GenericLane, _asn_ctx), + asn_MAP_Reg_GenericLane_tag2el_46, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane = { + "Reg-GenericLane", + "Reg-GenericLane", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GenericLane_tags_46, + sizeof(asn_DEF_Reg_GenericLane_tags_46) + /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ + asn_DEF_Reg_GenericLane_tags_46, /* Same as above */ + sizeof(asn_DEF_Reg_GenericLane_tags_46) + /sizeof(asn_DEF_Reg_GenericLane_tags_46[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GenericLane_46, + 2, /* Elements count */ + &asn_SPC_Reg_GenericLane_specs_46 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_51 = { + sizeof(struct Reg_IntersectionGeometry__regExtValue), + offsetof(struct Reg_IntersectionGeometry__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionGeometry__regExtValue, present), + sizeof(((struct Reg_IntersectionGeometry__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_51 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_51 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionGeometry_49[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_50, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_50, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_49 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionGeometry, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_51, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_51, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_51, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_49 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionGeometry_tags_49[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionGeometry_tag2el_49[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionGeometry_specs_49 = { + sizeof(struct Reg_IntersectionGeometry), + offsetof(struct Reg_IntersectionGeometry, _asn_ctx), + asn_MAP_Reg_IntersectionGeometry_tag2el_49, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionGeometry = { + "Reg-IntersectionGeometry", + "Reg-IntersectionGeometry", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionGeometry_tags_49, + sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) + /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ + asn_DEF_Reg_IntersectionGeometry_tags_49, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49) + /sizeof(asn_DEF_Reg_IntersectionGeometry_tags_49[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionGeometry_49, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionGeometry_specs_49 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_54 = { + sizeof(struct Reg_LaneAttributes__regExtValue), + offsetof(struct Reg_LaneAttributes__regExtValue, _asn_ctx), + offsetof(struct Reg_LaneAttributes__regExtValue, present), + sizeof(((struct Reg_LaneAttributes__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_54 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_54 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_LaneAttributes_52[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_53, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_53, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_52 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_LaneAttributes, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_54, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_54, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_54, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_52 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_LaneAttributes_tags_52[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_LaneAttributes_tag2el_52[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_52 = { + sizeof(struct Reg_LaneAttributes), + offsetof(struct Reg_LaneAttributes, _asn_ctx), + asn_MAP_Reg_LaneAttributes_tag2el_52, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes = { + "Reg-LaneAttributes", + "Reg-LaneAttributes", + &asn_OP_SEQUENCE, + asn_DEF_Reg_LaneAttributes_tags_52, + sizeof(asn_DEF_Reg_LaneAttributes_tags_52) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ + asn_DEF_Reg_LaneAttributes_tags_52, /* Same as above */ + sizeof(asn_DEF_Reg_LaneAttributes_tags_52) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_52[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_LaneAttributes_52, + 2, /* Elements count */ + &asn_SPC_Reg_LaneAttributes_specs_52 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_57 = { + sizeof(struct Reg_SignalControlZone__regExtValue), + offsetof(struct Reg_SignalControlZone__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalControlZone__regExtValue, present), + sizeof(((struct Reg_SignalControlZone__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_57 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_57 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalControlZone_55[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_56, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_56, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_55 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalControlZone, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_57, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_57, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_57, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_55 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalControlZone_tags_55[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalControlZone_tag2el_55[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_55 = { + sizeof(struct Reg_SignalControlZone), + offsetof(struct Reg_SignalControlZone, _asn_ctx), + asn_MAP_Reg_SignalControlZone_tag2el_55, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone = { + "Reg-SignalControlZone", + "Reg-SignalControlZone", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalControlZone_tags_55, + sizeof(asn_DEF_Reg_SignalControlZone_tags_55) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ + asn_DEF_Reg_SignalControlZone_tags_55, /* Same as above */ + sizeof(asn_DEF_Reg_SignalControlZone_tags_55) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_55[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalControlZone_55, + 2, /* Elements count */ + &asn_SPC_Reg_SignalControlZone_specs_55 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_60[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType__regExtValue, choice.RestrictionUserType_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionUserType_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "RestrictionUserType-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_60[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RestrictionUserType-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_60 = { + sizeof(struct Reg_RestrictionUserType__regExtValue), + offsetof(struct Reg_RestrictionUserType__regExtValue, _asn_ctx), + offsetof(struct Reg_RestrictionUserType__regExtValue, present), + sizeof(((struct Reg_RestrictionUserType__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_60, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_60 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_60, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_60 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RestrictionUserType_58[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_59, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_59, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_58 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RestrictionUserType, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_60, + select_Reg_RestrictionUserType_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_60, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_60, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_58 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RestrictionUserType_tags_58[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RestrictionUserType_tag2el_58[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_58 = { + sizeof(struct Reg_RestrictionUserType), + offsetof(struct Reg_RestrictionUserType, _asn_ctx), + asn_MAP_Reg_RestrictionUserType_tag2el_58, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType = { + "Reg-RestrictionUserType", + "Reg-RestrictionUserType", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RestrictionUserType_tags_58, + sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ + asn_DEF_Reg_RestrictionUserType_tags_58, /* Same as above */ + sizeof(asn_DEF_Reg_RestrictionUserType_tags_58) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_58[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RestrictionUserType_58, + 2, /* Elements count */ + &asn_SPC_Reg_RestrictionUserType_specs_58 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_63 = { + sizeof(struct Reg_RoadSegment__regExtValue), + offsetof(struct Reg_RoadSegment__regExtValue, _asn_ctx), + offsetof(struct Reg_RoadSegment__regExtValue, present), + sizeof(((struct Reg_RoadSegment__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_63 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_63 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RoadSegment_61[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_62, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_62, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_61 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSegment, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_63, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_63, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_63, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_61 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RoadSegment_tags_61[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSegment_tag2el_61[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_61 = { + sizeof(struct Reg_RoadSegment), + offsetof(struct Reg_RoadSegment, _asn_ctx), + asn_MAP_Reg_RoadSegment_tag2el_61, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment = { + "Reg-RoadSegment", + "Reg-RoadSegment", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RoadSegment_tags_61, + sizeof(asn_DEF_Reg_RoadSegment_tags_61) + /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ + asn_DEF_Reg_RoadSegment_tags_61, /* Same as above */ + sizeof(asn_DEF_Reg_RoadSegment_tags_61) + /sizeof(asn_DEF_Reg_RoadSegment_tags_61[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RoadSegment_61, + 2, /* Elements count */ + &asn_SPC_Reg_RoadSegment_specs_61 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_66 = { + sizeof(struct Reg_NMEAcorrections__regExtValue), + offsetof(struct Reg_NMEAcorrections__regExtValue, _asn_ctx), + offsetof(struct Reg_NMEAcorrections__regExtValue, present), + sizeof(((struct Reg_NMEAcorrections__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_66 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_66 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NMEAcorrections_64[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_65, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_65, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_64 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NMEAcorrections, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_66, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_66, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_66, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_64 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NMEAcorrections_tags_64[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NMEAcorrections_tag2el_64[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NMEAcorrections_specs_64 = { + sizeof(struct Reg_NMEAcorrections), + offsetof(struct Reg_NMEAcorrections, _asn_ctx), + asn_MAP_Reg_NMEAcorrections_tag2el_64, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NMEAcorrections = { + "Reg-NMEAcorrections", + "Reg-NMEAcorrections", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NMEAcorrections_tags_64, + sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) + /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ + asn_DEF_Reg_NMEAcorrections_tags_64, /* Same as above */ + sizeof(asn_DEF_Reg_NMEAcorrections_tags_64) + /sizeof(asn_DEF_Reg_NMEAcorrections_tags_64[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NMEAcorrections_64, + 2, /* Elements count */ + &asn_SPC_Reg_NMEAcorrections_specs_64 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_69 = { + sizeof(struct Reg_PersonalSafetyMessage__regExtValue), + offsetof(struct Reg_PersonalSafetyMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_PersonalSafetyMessage__regExtValue, present), + sizeof(((struct Reg_PersonalSafetyMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_69 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_69 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_PersonalSafetyMessage_67[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_68, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_68, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_67 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_PersonalSafetyMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_69, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_69, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_69, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_67 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_PersonalSafetyMessage_tags_67[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_PersonalSafetyMessage_tag2el_67[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_67 = { + sizeof(struct Reg_PersonalSafetyMessage), + offsetof(struct Reg_PersonalSafetyMessage, _asn_ctx), + asn_MAP_Reg_PersonalSafetyMessage_tag2el_67, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage = { + "Reg-PersonalSafetyMessage", + "Reg-PersonalSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_PersonalSafetyMessage_tags_67, + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ + asn_DEF_Reg_PersonalSafetyMessage_tags_67, /* Same as above */ + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_67[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_PersonalSafetyMessage_67, + 2, /* Elements count */ + &asn_SPC_Reg_PersonalSafetyMessage_specs_67 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_72 = { + sizeof(struct Reg_ProbeDataManagement__regExtValue), + offsetof(struct Reg_ProbeDataManagement__regExtValue, _asn_ctx), + offsetof(struct Reg_ProbeDataManagement__regExtValue, present), + sizeof(((struct Reg_ProbeDataManagement__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_72 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_72 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ProbeDataManagement_70[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_71, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_71, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_70 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeDataManagement, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_72, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_72, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_72, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_70 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ProbeDataManagement_tags_70[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeDataManagement_tag2el_70[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeDataManagement_specs_70 = { + sizeof(struct Reg_ProbeDataManagement), + offsetof(struct Reg_ProbeDataManagement, _asn_ctx), + asn_MAP_Reg_ProbeDataManagement_tag2el_70, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ProbeDataManagement = { + "Reg-ProbeDataManagement", + "Reg-ProbeDataManagement", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ProbeDataManagement_tags_70, + sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) + /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ + asn_DEF_Reg_ProbeDataManagement_tags_70, /* Same as above */ + sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70) + /sizeof(asn_DEF_Reg_ProbeDataManagement_tags_70[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ProbeDataManagement_70, + 2, /* Elements count */ + &asn_SPC_Reg_ProbeDataManagement_specs_70 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_75 = { + sizeof(struct Reg_ProbeVehicleData__regExtValue), + offsetof(struct Reg_ProbeVehicleData__regExtValue, _asn_ctx), + offsetof(struct Reg_ProbeVehicleData__regExtValue, present), + sizeof(((struct Reg_ProbeVehicleData__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_75 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_75 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ProbeVehicleData_73[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_74, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_74, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_73 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ProbeVehicleData, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_75, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_75, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_75, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_73 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ProbeVehicleData_tags_73[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ProbeVehicleData_tag2el_73[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ProbeVehicleData_specs_73 = { + sizeof(struct Reg_ProbeVehicleData), + offsetof(struct Reg_ProbeVehicleData, _asn_ctx), + asn_MAP_Reg_ProbeVehicleData_tag2el_73, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ProbeVehicleData = { + "Reg-ProbeVehicleData", + "Reg-ProbeVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ProbeVehicleData_tags_73, + sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) + /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ + asn_DEF_Reg_ProbeVehicleData_tags_73, /* Same as above */ + sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73) + /sizeof(asn_DEF_Reg_ProbeVehicleData_tags_73[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ProbeVehicleData_73, + 2, /* Elements count */ + &asn_SPC_Reg_ProbeVehicleData_specs_73 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_78 = { + sizeof(struct Reg_RoadSideAlert__regExtValue), + offsetof(struct Reg_RoadSideAlert__regExtValue, _asn_ctx), + offsetof(struct Reg_RoadSideAlert__regExtValue, present), + sizeof(((struct Reg_RoadSideAlert__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_78 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_78 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RoadSideAlert_76[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_77, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_77, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_76 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RoadSideAlert, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_78, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_78, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_78, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_76 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RoadSideAlert_tags_76[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RoadSideAlert_tag2el_76[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSideAlert_specs_76 = { + sizeof(struct Reg_RoadSideAlert), + offsetof(struct Reg_RoadSideAlert, _asn_ctx), + asn_MAP_Reg_RoadSideAlert_tag2el_76, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RoadSideAlert = { + "Reg-RoadSideAlert", + "Reg-RoadSideAlert", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RoadSideAlert_tags_76, + sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) + /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ + asn_DEF_Reg_RoadSideAlert_tags_76, /* Same as above */ + sizeof(asn_DEF_Reg_RoadSideAlert_tags_76) + /sizeof(asn_DEF_Reg_RoadSideAlert_tags_76[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RoadSideAlert_76, + 2, /* Elements count */ + &asn_SPC_Reg_RoadSideAlert_specs_76 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_81 = { + sizeof(struct Reg_RTCMcorrections__regExtValue), + offsetof(struct Reg_RTCMcorrections__regExtValue, _asn_ctx), + offsetof(struct Reg_RTCMcorrections__regExtValue, present), + sizeof(((struct Reg_RTCMcorrections__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_81 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_81 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RTCMcorrections_79[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_80, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_80, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_79 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RTCMcorrections, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_81, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_81, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_81, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_79 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RTCMcorrections_tags_79[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RTCMcorrections_tag2el_79[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RTCMcorrections_specs_79 = { + sizeof(struct Reg_RTCMcorrections), + offsetof(struct Reg_RTCMcorrections, _asn_ctx), + asn_MAP_Reg_RTCMcorrections_tag2el_79, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RTCMcorrections = { + "Reg-RTCMcorrections", + "Reg-RTCMcorrections", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RTCMcorrections_tags_79, + sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) + /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ + asn_DEF_Reg_RTCMcorrections_tags_79, /* Same as above */ + sizeof(asn_DEF_Reg_RTCMcorrections_tags_79) + /sizeof(asn_DEF_Reg_RTCMcorrections_tags_79[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RTCMcorrections_79, + 2, /* Elements count */ + &asn_SPC_Reg_RTCMcorrections_specs_79 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_84 = { + sizeof(struct Reg_SignalRequestMessage__regExtValue), + offsetof(struct Reg_SignalRequestMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequestMessage__regExtValue, present), + sizeof(((struct Reg_SignalRequestMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_84 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_84 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequestMessage_82[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_83, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_83, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_82 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_84, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_84, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_84, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_82 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestMessage_tags_82[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestMessage_tag2el_82[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestMessage_specs_82 = { + sizeof(struct Reg_SignalRequestMessage), + offsetof(struct Reg_SignalRequestMessage, _asn_ctx), + asn_MAP_Reg_SignalRequestMessage_tag2el_82, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestMessage = { + "Reg-SignalRequestMessage", + "Reg-SignalRequestMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequestMessage_tags_82, + sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) + /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ + asn_DEF_Reg_SignalRequestMessage_tags_82, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82) + /sizeof(asn_DEF_Reg_SignalRequestMessage_tags_82[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequestMessage_82, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequestMessage_specs_82 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_87 = { + sizeof(struct Reg_RequestorDescription__regExtValue), + offsetof(struct Reg_RequestorDescription__regExtValue, _asn_ctx), + offsetof(struct Reg_RequestorDescription__regExtValue, present), + sizeof(((struct Reg_RequestorDescription__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_87 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_87 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_RequestorDescription_85[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_86, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_86, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_85 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_RequestorDescription, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_87, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_87, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_87, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_85 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_RequestorDescription_tags_85[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_RequestorDescription_tag2el_85[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_RequestorDescription_specs_85 = { + sizeof(struct Reg_RequestorDescription), + offsetof(struct Reg_RequestorDescription, _asn_ctx), + asn_MAP_Reg_RequestorDescription_tag2el_85, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RequestorDescription = { + "Reg-RequestorDescription", + "Reg-RequestorDescription", + &asn_OP_SEQUENCE, + asn_DEF_Reg_RequestorDescription_tags_85, + sizeof(asn_DEF_Reg_RequestorDescription_tags_85) + /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ + asn_DEF_Reg_RequestorDescription_tags_85, /* Same as above */ + sizeof(asn_DEF_Reg_RequestorDescription_tags_85) + /sizeof(asn_DEF_Reg_RequestorDescription_tags_85[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_RequestorDescription_85, + 2, /* Elements count */ + &asn_SPC_Reg_RequestorDescription_specs_85 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_90 = { + sizeof(struct Reg_SignalRequestPackage__regExtValue), + offsetof(struct Reg_SignalRequestPackage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequestPackage__regExtValue, present), + sizeof(((struct Reg_SignalRequestPackage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_90 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_90 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequestPackage_88[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_89, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_89, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_88 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequestPackage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_90, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_90, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_90, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_88 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequestPackage_tags_88[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequestPackage_tag2el_88[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequestPackage_specs_88 = { + sizeof(struct Reg_SignalRequestPackage), + offsetof(struct Reg_SignalRequestPackage, _asn_ctx), + asn_MAP_Reg_SignalRequestPackage_tag2el_88, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequestPackage = { + "Reg-SignalRequestPackage", + "Reg-SignalRequestPackage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequestPackage_tags_88, + sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) + /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ + asn_DEF_Reg_SignalRequestPackage_tags_88, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88) + /sizeof(asn_DEF_Reg_SignalRequestPackage_tags_88[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequestPackage_88, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequestPackage_specs_88 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_93 = { + sizeof(struct Reg_SignalRequest__regExtValue), + offsetof(struct Reg_SignalRequest__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalRequest__regExtValue, present), + sizeof(((struct Reg_SignalRequest__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_93 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_93 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalRequest_91[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_92, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_92, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_91 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalRequest, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_93, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_93, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_93, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_91 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalRequest_tags_91[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalRequest_tag2el_91[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalRequest_specs_91 = { + sizeof(struct Reg_SignalRequest), + offsetof(struct Reg_SignalRequest, _asn_ctx), + asn_MAP_Reg_SignalRequest_tag2el_91, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalRequest = { + "Reg-SignalRequest", + "Reg-SignalRequest", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalRequest_tags_91, + sizeof(asn_DEF_Reg_SignalRequest_tags_91) + /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ + asn_DEF_Reg_SignalRequest_tags_91, /* Same as above */ + sizeof(asn_DEF_Reg_SignalRequest_tags_91) + /sizeof(asn_DEF_Reg_SignalRequest_tags_91[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalRequest_91, + 2, /* Elements count */ + &asn_SPC_Reg_SignalRequest_specs_91 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_96 = { + sizeof(struct Reg_SignalStatusMessage__regExtValue), + offsetof(struct Reg_SignalStatusMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatusMessage__regExtValue, present), + sizeof(((struct Reg_SignalStatusMessage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_96 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_96 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatusMessage_94[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_95, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_95, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_94 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusMessage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_96, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_96, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_96, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_94 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusMessage_tags_94[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusMessage_tag2el_94[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusMessage_specs_94 = { + sizeof(struct Reg_SignalStatusMessage), + offsetof(struct Reg_SignalStatusMessage, _asn_ctx), + asn_MAP_Reg_SignalStatusMessage_tag2el_94, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusMessage = { + "Reg-SignalStatusMessage", + "Reg-SignalStatusMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatusMessage_tags_94, + sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) + /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ + asn_DEF_Reg_SignalStatusMessage_tags_94, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94) + /sizeof(asn_DEF_Reg_SignalStatusMessage_tags_94[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatusMessage_94, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatusMessage_specs_94 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_99 = { + sizeof(struct Reg_SignalStatusPackage__regExtValue), + offsetof(struct Reg_SignalStatusPackage__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatusPackage__regExtValue, present), + sizeof(((struct Reg_SignalStatusPackage__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_99 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_99 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatusPackage_97[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_98, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_98, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_97 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatusPackage, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_99, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_99, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_99, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_97 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatusPackage_tags_97[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatusPackage_tag2el_97[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatusPackage_specs_97 = { + sizeof(struct Reg_SignalStatusPackage), + offsetof(struct Reg_SignalStatusPackage, _asn_ctx), + asn_MAP_Reg_SignalStatusPackage_tag2el_97, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatusPackage = { + "Reg-SignalStatusPackage", + "Reg-SignalStatusPackage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatusPackage_tags_97, + sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) + /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ + asn_DEF_Reg_SignalStatusPackage_tags_97, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97) + /sizeof(asn_DEF_Reg_SignalStatusPackage_tags_97[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatusPackage_97, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatusPackage_specs_97 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_102 = { + sizeof(struct Reg_SignalStatus__regExtValue), + offsetof(struct Reg_SignalStatus__regExtValue, _asn_ctx), + offsetof(struct Reg_SignalStatus__regExtValue, present), + sizeof(((struct Reg_SignalStatus__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_102 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_102 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SignalStatus_100[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_101, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_101, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_100 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SignalStatus, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_102, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_102, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_102, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_100 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SignalStatus_tags_100[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SignalStatus_tag2el_100[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalStatus_specs_100 = { + sizeof(struct Reg_SignalStatus), + offsetof(struct Reg_SignalStatus, _asn_ctx), + asn_MAP_Reg_SignalStatus_tag2el_100, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalStatus = { + "Reg-SignalStatus", + "Reg-SignalStatus", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SignalStatus_tags_100, + sizeof(asn_DEF_Reg_SignalStatus_tags_100) + /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ + asn_DEF_Reg_SignalStatus_tags_100, /* Same as above */ + sizeof(asn_DEF_Reg_SignalStatus_tags_100) + /sizeof(asn_DEF_Reg_SignalStatus_tags_100[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SignalStatus_100, + 2, /* Elements count */ + &asn_SPC_Reg_SignalStatus_specs_100 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_105 = { + sizeof(struct Reg_SPAT__regExtValue), + offsetof(struct Reg_SPAT__regExtValue, _asn_ctx), + offsetof(struct Reg_SPAT__regExtValue, present), + sizeof(((struct Reg_SPAT__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_105 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_105 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_SPAT_103[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_104, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_104, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_103 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_SPAT, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_105, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_105, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_105, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_103 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_SPAT_tags_103[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_SPAT_tag2el_103[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_103 = { + sizeof(struct Reg_SPAT), + offsetof(struct Reg_SPAT, _asn_ctx), + asn_MAP_Reg_SPAT_tag2el_103, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SPAT = { + "Reg-SPAT", + "Reg-SPAT", + &asn_OP_SEQUENCE, + asn_DEF_Reg_SPAT_tags_103, + sizeof(asn_DEF_Reg_SPAT_tags_103) + /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ + asn_DEF_Reg_SPAT_tags_103, /* Same as above */ + sizeof(asn_DEF_Reg_SPAT_tags_103) + /sizeof(asn_DEF_Reg_SPAT_tags_103[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_SPAT_103, + 2, /* Elements count */ + &asn_SPC_Reg_SPAT_specs_103 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_108 = { + sizeof(struct Reg_AdvisorySpeed__regExtValue), + offsetof(struct Reg_AdvisorySpeed__regExtValue, _asn_ctx), + offsetof(struct Reg_AdvisorySpeed__regExtValue, present), + sizeof(((struct Reg_AdvisorySpeed__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_108 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_108 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_AdvisorySpeed_106[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_107, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_107, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_106 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_AdvisorySpeed, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_108, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_108, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_108, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_106 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_AdvisorySpeed_tags_106[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_AdvisorySpeed_tag2el_106[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_106 = { + sizeof(struct Reg_AdvisorySpeed), + offsetof(struct Reg_AdvisorySpeed, _asn_ctx), + asn_MAP_Reg_AdvisorySpeed_tag2el_106, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed = { + "Reg-AdvisorySpeed", + "Reg-AdvisorySpeed", + &asn_OP_SEQUENCE, + asn_DEF_Reg_AdvisorySpeed_tags_106, + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ + asn_DEF_Reg_AdvisorySpeed_tags_106, /* Same as above */ + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_106[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_AdvisorySpeed_106, + 2, /* Elements count */ + &asn_SPC_Reg_AdvisorySpeed_specs_106 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_111[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, choice.ConnectionManeuverAssist_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "ConnectionManeuverAssist-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_111[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* ConnectionManeuverAssist-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_111 = { + sizeof(struct Reg_ConnectionManeuverAssist__regExtValue), + offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, _asn_ctx), + offsetof(struct Reg_ConnectionManeuverAssist__regExtValue, present), + sizeof(((struct Reg_ConnectionManeuverAssist__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_111, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_111 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_111, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_111 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_ConnectionManeuverAssist_109[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_110, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_110, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_109 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_ConnectionManeuverAssist, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_111, + select_Reg_ConnectionManeuverAssist_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_111, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_111, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_109 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_ConnectionManeuverAssist_tags_109[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_109 = { + sizeof(struct Reg_ConnectionManeuverAssist), + offsetof(struct Reg_ConnectionManeuverAssist, _asn_ctx), + asn_MAP_Reg_ConnectionManeuverAssist_tag2el_109, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist = { + "Reg-ConnectionManeuverAssist", + "Reg-ConnectionManeuverAssist", + &asn_OP_SEQUENCE, + asn_DEF_Reg_ConnectionManeuverAssist_tags_109, + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ + asn_DEF_Reg_ConnectionManeuverAssist_tags_109, /* Same as above */ + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_109[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_ConnectionManeuverAssist_109, + 2, /* Elements count */ + &asn_SPC_Reg_ConnectionManeuverAssist_specs_109 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_114[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState__regExtValue, choice.IntersectionState_addGrpC), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState_addGrpC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "IntersectionState-addGrpC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_114[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* IntersectionState-addGrpC */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_114 = { + sizeof(struct Reg_IntersectionState__regExtValue), + offsetof(struct Reg_IntersectionState__regExtValue, _asn_ctx), + offsetof(struct Reg_IntersectionState__regExtValue, present), + sizeof(((struct Reg_IntersectionState__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_114, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_114 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_114, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_114 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_IntersectionState_112[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_113, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_113, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_112 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_IntersectionState, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_114, + select_Reg_IntersectionState_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_114, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_114, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_112 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_IntersectionState_tags_112[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_IntersectionState_tag2el_112[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_112 = { + sizeof(struct Reg_IntersectionState), + offsetof(struct Reg_IntersectionState, _asn_ctx), + asn_MAP_Reg_IntersectionState_tag2el_112, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState = { + "Reg-IntersectionState", + "Reg-IntersectionState", + &asn_OP_SEQUENCE, + asn_DEF_Reg_IntersectionState_tags_112, + sizeof(asn_DEF_Reg_IntersectionState_tags_112) + /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ + asn_DEF_Reg_IntersectionState_tags_112, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionState_tags_112) + /sizeof(asn_DEF_Reg_IntersectionState_tags_112[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_IntersectionState_112, + 2, /* Elements count */ + &asn_SPC_Reg_IntersectionState_specs_112 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regExtValue_117[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent__regExtValue, choice.MovementEvent_addGrpB), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent_addGrpB, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "MovementEvent-addGrpB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_117[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* MovementEvent-addGrpB */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_117 = { + sizeof(struct Reg_MovementEvent__regExtValue), + offsetof(struct Reg_MovementEvent__regExtValue, _asn_ctx), + offsetof(struct Reg_MovementEvent__regExtValue, present), + sizeof(((struct Reg_MovementEvent__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_117, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_117 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_117, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_117 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MovementEvent_115[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_116, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_116, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_115 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementEvent, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_117, + select_Reg_MovementEvent_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_117, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_117, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_115 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MovementEvent_tags_115[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementEvent_tag2el_115[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_115 = { + sizeof(struct Reg_MovementEvent), + offsetof(struct Reg_MovementEvent, _asn_ctx), + asn_MAP_Reg_MovementEvent_tag2el_115, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent = { + "Reg-MovementEvent", + "Reg-MovementEvent", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MovementEvent_tags_115, + sizeof(asn_DEF_Reg_MovementEvent_tags_115) + /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ + asn_DEF_Reg_MovementEvent_tags_115, /* Same as above */ + sizeof(asn_DEF_Reg_MovementEvent_tags_115) + /sizeof(asn_DEF_Reg_MovementEvent_tags_115[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MovementEvent_115, + 2, /* Elements count */ + &asn_SPC_Reg_MovementEvent_specs_115 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_120 = { + sizeof(struct Reg_MovementState__regExtValue), + offsetof(struct Reg_MovementState__regExtValue, _asn_ctx), + offsetof(struct Reg_MovementState__regExtValue, present), + sizeof(((struct Reg_MovementState__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_120 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_120 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_MovementState_118[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_119, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_119, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_118 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_MovementState, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_120, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_120, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_120, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_118 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_MovementState_tags_118[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_MovementState_tag2el_118[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_118 = { + sizeof(struct Reg_MovementState), + offsetof(struct Reg_MovementState, _asn_ctx), + asn_MAP_Reg_MovementState_tag2el_118, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementState = { + "Reg-MovementState", + "Reg-MovementState", + &asn_OP_SEQUENCE, + asn_DEF_Reg_MovementState_tags_118, + sizeof(asn_DEF_Reg_MovementState_tags_118) + /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ + asn_DEF_Reg_MovementState_tags_118, /* Same as above */ + sizeof(asn_DEF_Reg_MovementState_tags_118) + /sizeof(asn_DEF_Reg_MovementState_tags_118[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_MovementState_118, + 2, /* Elements count */ + &asn_SPC_Reg_MovementState_specs_118 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_123 = { + sizeof(struct Reg_TestMessage00__regExtValue), + offsetof(struct Reg_TestMessage00__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage00__regExtValue, present), + sizeof(((struct Reg_TestMessage00__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_123 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_123 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage00_121[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_122, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_122, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_121 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage00, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_123, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_123, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_123, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_121 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage00_tags_121[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage00_tag2el_121[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage00_specs_121 = { + sizeof(struct Reg_TestMessage00), + offsetof(struct Reg_TestMessage00, _asn_ctx), + asn_MAP_Reg_TestMessage00_tag2el_121, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage00 = { + "Reg-TestMessage00", + "Reg-TestMessage00", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage00_tags_121, + sizeof(asn_DEF_Reg_TestMessage00_tags_121) + /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ + asn_DEF_Reg_TestMessage00_tags_121, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage00_tags_121) + /sizeof(asn_DEF_Reg_TestMessage00_tags_121[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage00_121, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage00_specs_121 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_126 = { + sizeof(struct Reg_TestMessage01__regExtValue), + offsetof(struct Reg_TestMessage01__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage01__regExtValue, present), + sizeof(((struct Reg_TestMessage01__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_126 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_126 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage01_124[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_125, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_125, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_124 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage01, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_126, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_126, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_126, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_124 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage01_tags_124[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage01_tag2el_124[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage01_specs_124 = { + sizeof(struct Reg_TestMessage01), + offsetof(struct Reg_TestMessage01, _asn_ctx), + asn_MAP_Reg_TestMessage01_tag2el_124, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage01 = { + "Reg-TestMessage01", + "Reg-TestMessage01", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage01_tags_124, + sizeof(asn_DEF_Reg_TestMessage01_tags_124) + /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ + asn_DEF_Reg_TestMessage01_tags_124, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage01_tags_124) + /sizeof(asn_DEF_Reg_TestMessage01_tags_124[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage01_124, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage01_specs_124 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_129 = { + sizeof(struct Reg_TestMessage02__regExtValue), + offsetof(struct Reg_TestMessage02__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage02__regExtValue, present), + sizeof(((struct Reg_TestMessage02__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_129 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_129 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage02_127[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_128, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_128, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_127 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage02, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_129, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_129, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_129, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_127 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage02_tags_127[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage02_tag2el_127[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage02_specs_127 = { + sizeof(struct Reg_TestMessage02), + offsetof(struct Reg_TestMessage02, _asn_ctx), + asn_MAP_Reg_TestMessage02_tag2el_127, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage02 = { + "Reg-TestMessage02", + "Reg-TestMessage02", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage02_tags_127, + sizeof(asn_DEF_Reg_TestMessage02_tags_127) + /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ + asn_DEF_Reg_TestMessage02_tags_127, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage02_tags_127) + /sizeof(asn_DEF_Reg_TestMessage02_tags_127[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage02_127, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage02_specs_127 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_132 = { + sizeof(struct Reg_TestMessage03__regExtValue), + offsetof(struct Reg_TestMessage03__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage03__regExtValue, present), + sizeof(((struct Reg_TestMessage03__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_132 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_132 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage03_130[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_131, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_131, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_130 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage03, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_132, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_132, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_132, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_130 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage03_tags_130[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage03_tag2el_130[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage03_specs_130 = { + sizeof(struct Reg_TestMessage03), + offsetof(struct Reg_TestMessage03, _asn_ctx), + asn_MAP_Reg_TestMessage03_tag2el_130, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage03 = { + "Reg-TestMessage03", + "Reg-TestMessage03", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage03_tags_130, + sizeof(asn_DEF_Reg_TestMessage03_tags_130) + /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ + asn_DEF_Reg_TestMessage03_tags_130, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage03_tags_130) + /sizeof(asn_DEF_Reg_TestMessage03_tags_130[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage03_130, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage03_specs_130 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_135 = { + sizeof(struct Reg_TestMessage04__regExtValue), + offsetof(struct Reg_TestMessage04__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage04__regExtValue, present), + sizeof(((struct Reg_TestMessage04__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_135 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_135 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage04_133[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_134, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_134, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_133 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage04, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_135, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_135, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_135, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_133 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage04_tags_133[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage04_tag2el_133[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage04_specs_133 = { + sizeof(struct Reg_TestMessage04), + offsetof(struct Reg_TestMessage04, _asn_ctx), + asn_MAP_Reg_TestMessage04_tag2el_133, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage04 = { + "Reg-TestMessage04", + "Reg-TestMessage04", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage04_tags_133, + sizeof(asn_DEF_Reg_TestMessage04_tags_133) + /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ + asn_DEF_Reg_TestMessage04_tags_133, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage04_tags_133) + /sizeof(asn_DEF_Reg_TestMessage04_tags_133[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage04_133, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage04_specs_133 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_138 = { + sizeof(struct Reg_TestMessage05__regExtValue), + offsetof(struct Reg_TestMessage05__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage05__regExtValue, present), + sizeof(((struct Reg_TestMessage05__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_138 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_138 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage05_136[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_137, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_137, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_136 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage05, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_138, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_138, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_138, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_136 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage05_tags_136[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage05_tag2el_136[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage05_specs_136 = { + sizeof(struct Reg_TestMessage05), + offsetof(struct Reg_TestMessage05, _asn_ctx), + asn_MAP_Reg_TestMessage05_tag2el_136, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage05 = { + "Reg-TestMessage05", + "Reg-TestMessage05", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage05_tags_136, + sizeof(asn_DEF_Reg_TestMessage05_tags_136) + /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ + asn_DEF_Reg_TestMessage05_tags_136, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage05_tags_136) + /sizeof(asn_DEF_Reg_TestMessage05_tags_136[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage05_136, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage05_specs_136 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_141 = { + sizeof(struct Reg_TestMessage06__regExtValue), + offsetof(struct Reg_TestMessage06__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage06__regExtValue, present), + sizeof(((struct Reg_TestMessage06__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_141 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_141 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage06_139[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_140, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_140, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_139 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage06, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_141, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_141, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_141, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_139 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage06_tags_139[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage06_tag2el_139[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage06_specs_139 = { + sizeof(struct Reg_TestMessage06), + offsetof(struct Reg_TestMessage06, _asn_ctx), + asn_MAP_Reg_TestMessage06_tag2el_139, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage06 = { + "Reg-TestMessage06", + "Reg-TestMessage06", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage06_tags_139, + sizeof(asn_DEF_Reg_TestMessage06_tags_139) + /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ + asn_DEF_Reg_TestMessage06_tags_139, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage06_tags_139) + /sizeof(asn_DEF_Reg_TestMessage06_tags_139[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage06_139, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage06_specs_139 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_144 = { + sizeof(struct Reg_TestMessage07__regExtValue), + offsetof(struct Reg_TestMessage07__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage07__regExtValue, present), + sizeof(((struct Reg_TestMessage07__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_144 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_144 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage07_142[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_143, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_143, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_142 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage07, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_144, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_144, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_144, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_142 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage07_tags_142[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage07_tag2el_142[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage07_specs_142 = { + sizeof(struct Reg_TestMessage07), + offsetof(struct Reg_TestMessage07, _asn_ctx), + asn_MAP_Reg_TestMessage07_tag2el_142, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage07 = { + "Reg-TestMessage07", + "Reg-TestMessage07", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage07_tags_142, + sizeof(asn_DEF_Reg_TestMessage07_tags_142) + /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ + asn_DEF_Reg_TestMessage07_tags_142, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage07_tags_142) + /sizeof(asn_DEF_Reg_TestMessage07_tags_142[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage07_142, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage07_specs_142 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_147 = { + sizeof(struct Reg_TestMessage08__regExtValue), + offsetof(struct Reg_TestMessage08__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage08__regExtValue, present), + sizeof(((struct Reg_TestMessage08__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_147 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_147 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage08_145[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_146, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_146, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_145 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage08, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_147, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_147, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_147, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_145 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage08_tags_145[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage08_tag2el_145[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage08_specs_145 = { + sizeof(struct Reg_TestMessage08), + offsetof(struct Reg_TestMessage08, _asn_ctx), + asn_MAP_Reg_TestMessage08_tag2el_145, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage08 = { + "Reg-TestMessage08", + "Reg-TestMessage08", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage08_tags_145, + sizeof(asn_DEF_Reg_TestMessage08_tags_145) + /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ + asn_DEF_Reg_TestMessage08_tags_145, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage08_tags_145) + /sizeof(asn_DEF_Reg_TestMessage08_tags_145[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage08_145, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage08_specs_145 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_150 = { + sizeof(struct Reg_TestMessage09__regExtValue), + offsetof(struct Reg_TestMessage09__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage09__regExtValue, present), + sizeof(((struct Reg_TestMessage09__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_150 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_150 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage09_148[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_149, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_149, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_148 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage09, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_150, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_150, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_150, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_148 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage09_tags_148[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage09_tag2el_148[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage09_specs_148 = { + sizeof(struct Reg_TestMessage09), + offsetof(struct Reg_TestMessage09, _asn_ctx), + asn_MAP_Reg_TestMessage09_tag2el_148, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage09 = { + "Reg-TestMessage09", + "Reg-TestMessage09", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage09_tags_148, + sizeof(asn_DEF_Reg_TestMessage09_tags_148) + /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ + asn_DEF_Reg_TestMessage09_tags_148, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage09_tags_148) + /sizeof(asn_DEF_Reg_TestMessage09_tags_148[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage09_148, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage09_specs_148 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_153 = { + sizeof(struct Reg_TestMessage10__regExtValue), + offsetof(struct Reg_TestMessage10__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage10__regExtValue, present), + sizeof(((struct Reg_TestMessage10__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_153 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_153 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage10_151[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_152, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_152, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_151 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage10, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_153, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_153, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_153, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_151 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage10_tags_151[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage10_tag2el_151[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage10_specs_151 = { + sizeof(struct Reg_TestMessage10), + offsetof(struct Reg_TestMessage10, _asn_ctx), + asn_MAP_Reg_TestMessage10_tag2el_151, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage10 = { + "Reg-TestMessage10", + "Reg-TestMessage10", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage10_tags_151, + sizeof(asn_DEF_Reg_TestMessage10_tags_151) + /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ + asn_DEF_Reg_TestMessage10_tags_151, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage10_tags_151) + /sizeof(asn_DEF_Reg_TestMessage10_tags_151[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage10_151, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage10_specs_151 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_156 = { + sizeof(struct Reg_TestMessage11__regExtValue), + offsetof(struct Reg_TestMessage11__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage11__regExtValue, present), + sizeof(((struct Reg_TestMessage11__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_156 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_156 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage11_154[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_155, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_155, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_154 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage11, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_156, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_156, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_156, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_154 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage11_tags_154[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage11_tag2el_154[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage11_specs_154 = { + sizeof(struct Reg_TestMessage11), + offsetof(struct Reg_TestMessage11, _asn_ctx), + asn_MAP_Reg_TestMessage11_tag2el_154, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage11 = { + "Reg-TestMessage11", + "Reg-TestMessage11", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage11_tags_154, + sizeof(asn_DEF_Reg_TestMessage11_tags_154) + /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ + asn_DEF_Reg_TestMessage11_tags_154, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage11_tags_154) + /sizeof(asn_DEF_Reg_TestMessage11_tags_154[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage11_154, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage11_specs_154 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_159 = { + sizeof(struct Reg_TestMessage12__regExtValue), + offsetof(struct Reg_TestMessage12__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage12__regExtValue, present), + sizeof(((struct Reg_TestMessage12__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_159 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_159 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage12_157[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_158, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_158, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_157 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage12, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_159, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_159, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_159, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_157 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage12_tags_157[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage12_tag2el_157[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage12_specs_157 = { + sizeof(struct Reg_TestMessage12), + offsetof(struct Reg_TestMessage12, _asn_ctx), + asn_MAP_Reg_TestMessage12_tag2el_157, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage12 = { + "Reg-TestMessage12", + "Reg-TestMessage12", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage12_tags_157, + sizeof(asn_DEF_Reg_TestMessage12_tags_157) + /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ + asn_DEF_Reg_TestMessage12_tags_157, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage12_tags_157) + /sizeof(asn_DEF_Reg_TestMessage12_tags_157[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage12_157, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage12_specs_157 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_162 = { + sizeof(struct Reg_TestMessage13__regExtValue), + offsetof(struct Reg_TestMessage13__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage13__regExtValue, present), + sizeof(((struct Reg_TestMessage13__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_162 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_162 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage13_160[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_161, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_161, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_160 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage13, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_162, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_162, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_162, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_160 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage13_tags_160[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage13_tag2el_160[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage13_specs_160 = { + sizeof(struct Reg_TestMessage13), + offsetof(struct Reg_TestMessage13, _asn_ctx), + asn_MAP_Reg_TestMessage13_tag2el_160, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage13 = { + "Reg-TestMessage13", + "Reg-TestMessage13", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage13_tags_160, + sizeof(asn_DEF_Reg_TestMessage13_tags_160) + /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ + asn_DEF_Reg_TestMessage13_tags_160, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage13_tags_160) + /sizeof(asn_DEF_Reg_TestMessage13_tags_160[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage13_160, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage13_specs_160 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_165 = { + sizeof(struct Reg_TestMessage14__regExtValue), + offsetof(struct Reg_TestMessage14__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage14__regExtValue, present), + sizeof(((struct Reg_TestMessage14__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_165 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_165 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage14_163[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_164, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_164, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_163 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage14, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_165, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_165, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_165, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_163 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage14_tags_163[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage14_tag2el_163[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage14_specs_163 = { + sizeof(struct Reg_TestMessage14), + offsetof(struct Reg_TestMessage14, _asn_ctx), + asn_MAP_Reg_TestMessage14_tag2el_163, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage14 = { + "Reg-TestMessage14", + "Reg-TestMessage14", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage14_tags_163, + sizeof(asn_DEF_Reg_TestMessage14_tags_163) + /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ + asn_DEF_Reg_TestMessage14_tags_163, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage14_tags_163) + /sizeof(asn_DEF_Reg_TestMessage14_tags_163[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage14_163, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage14_specs_163 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_168 = { + sizeof(struct Reg_TestMessage15__regExtValue), + offsetof(struct Reg_TestMessage15__regExtValue, _asn_ctx), + offsetof(struct Reg_TestMessage15__regExtValue, present), + sizeof(((struct Reg_TestMessage15__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_168 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_168 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TestMessage15_166[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_167, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_167, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_166 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TestMessage15, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_168, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_168, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_168, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_166 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TestMessage15_tags_166[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TestMessage15_tag2el_166[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TestMessage15_specs_166 = { + sizeof(struct Reg_TestMessage15), + offsetof(struct Reg_TestMessage15, _asn_ctx), + asn_MAP_Reg_TestMessage15_tag2el_166, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TestMessage15 = { + "Reg-TestMessage15", + "Reg-TestMessage15", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TestMessage15_tags_166, + sizeof(asn_DEF_Reg_TestMessage15_tags_166) + /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ + asn_DEF_Reg_TestMessage15_tags_166, /* Same as above */ + sizeof(asn_DEF_Reg_TestMessage15_tags_166) + /sizeof(asn_DEF_Reg_TestMessage15_tags_166[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TestMessage15_166, + 2, /* Elements count */ + &asn_SPC_Reg_TestMessage15_specs_166 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_171 = { + sizeof(struct Reg_TravelerInformation__regExtValue), + offsetof(struct Reg_TravelerInformation__regExtValue, _asn_ctx), + offsetof(struct Reg_TravelerInformation__regExtValue, present), + sizeof(((struct Reg_TravelerInformation__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_171 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_171 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_TravelerInformation_169[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_170, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_170, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_169 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_TravelerInformation, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_171, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_171, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_171, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_169 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_TravelerInformation_tags_169[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_TravelerInformation_tag2el_169[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_TravelerInformation_specs_169 = { + sizeof(struct Reg_TravelerInformation), + offsetof(struct Reg_TravelerInformation, _asn_ctx), + asn_MAP_Reg_TravelerInformation_tag2el_169, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_TravelerInformation = { + "Reg-TravelerInformation", + "Reg-TravelerInformation", + &asn_OP_SEQUENCE, + asn_DEF_Reg_TravelerInformation_tags_169, + sizeof(asn_DEF_Reg_TravelerInformation_tags_169) + /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ + asn_DEF_Reg_TravelerInformation_tags_169, /* Same as above */ + sizeof(asn_DEF_Reg_TravelerInformation_tags_169) + /sizeof(asn_DEF_Reg_TravelerInformation_tags_169[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_TravelerInformation_169, + 2, /* Elements count */ + &asn_SPC_Reg_TravelerInformation_specs_169 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_174 = { + sizeof(struct Reg_GeographicalPath__regExtValue), + offsetof(struct Reg_GeographicalPath__regExtValue, _asn_ctx), + offsetof(struct Reg_GeographicalPath__regExtValue, present), + sizeof(((struct Reg_GeographicalPath__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_174 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_174 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GeographicalPath_172[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_173, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_173, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_172 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeographicalPath, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_174, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_174, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_174, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_172 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GeographicalPath_tags_172[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GeographicalPath_tag2el_172[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GeographicalPath_specs_172 = { + sizeof(struct Reg_GeographicalPath), + offsetof(struct Reg_GeographicalPath, _asn_ctx), + asn_MAP_Reg_GeographicalPath_tag2el_172, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GeographicalPath = { + "Reg-GeographicalPath", + "Reg-GeographicalPath", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GeographicalPath_tags_172, + sizeof(asn_DEF_Reg_GeographicalPath_tags_172) + /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ + asn_DEF_Reg_GeographicalPath_tags_172, /* Same as above */ + sizeof(asn_DEF_Reg_GeographicalPath_tags_172) + /sizeof(asn_DEF_Reg_GeographicalPath_tags_172[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GeographicalPath_172, + 2, /* Elements count */ + &asn_SPC_Reg_GeographicalPath_specs_172 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_177 = { + sizeof(struct Reg_GeometricProjection__regExtValue), + offsetof(struct Reg_GeometricProjection__regExtValue, _asn_ctx), + offsetof(struct Reg_GeometricProjection__regExtValue, present), + sizeof(((struct Reg_GeometricProjection__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_177 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_177 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_GeometricProjection_175[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_176, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_176, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_175 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_GeometricProjection, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_177, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_177, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_177, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_175 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_GeometricProjection_tags_175[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_GeometricProjection_tag2el_175[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_GeometricProjection_specs_175 = { + sizeof(struct Reg_GeometricProjection), + offsetof(struct Reg_GeometricProjection, _asn_ctx), + asn_MAP_Reg_GeometricProjection_tag2el_175, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GeometricProjection = { + "Reg-GeometricProjection", + "Reg-GeometricProjection", + &asn_OP_SEQUENCE, + asn_DEF_Reg_GeometricProjection_tags_175, + sizeof(asn_DEF_Reg_GeometricProjection_tags_175) + /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ + asn_DEF_Reg_GeometricProjection_tags_175, /* Same as above */ + sizeof(asn_DEF_Reg_GeometricProjection_tags_175) + /sizeof(asn_DEF_Reg_GeometricProjection_tags_175[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_GeometricProjection_175, + 2, /* Elements count */ + &asn_SPC_Reg_GeometricProjection_specs_175 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_180 = { + sizeof(struct Reg_NodeAttributeSetLL__regExtValue), + offsetof(struct Reg_NodeAttributeSetLL__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeAttributeSetLL__regExtValue, present), + sizeof(((struct Reg_NodeAttributeSetLL__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_180 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_180 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeAttributeSetLL_178[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_179, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_179, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_178 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeAttributeSetLL, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_180, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_180, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_180, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_178 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeAttributeSetLL_tags_178[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeAttributeSetLL_tag2el_178[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttributeSetLL_specs_178 = { + sizeof(struct Reg_NodeAttributeSetLL), + offsetof(struct Reg_NodeAttributeSetLL, _asn_ctx), + asn_MAP_Reg_NodeAttributeSetLL_tag2el_178, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttributeSetLL = { + "Reg-NodeAttributeSetLL", + "Reg-NodeAttributeSetLL", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeAttributeSetLL_tags_178, + sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) + /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ + asn_DEF_Reg_NodeAttributeSetLL_tags_178, /* Same as above */ + sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178) + /sizeof(asn_DEF_Reg_NodeAttributeSetLL_tags_178[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeAttributeSetLL_178, + 2, /* Elements count */ + &asn_SPC_Reg_NodeAttributeSetLL_specs_178 /* Additional specs */ +}; + +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_183 = { + sizeof(struct Reg_NodeOffsetPointLL__regExtValue), + offsetof(struct Reg_NodeOffsetPointLL__regExtValue, _asn_ctx), + offsetof(struct Reg_NodeOffsetPointLL__regExtValue, present), + sizeof(((struct Reg_NodeOffsetPointLL__regExtValue *)0)->present), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_183 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + 0, 0, /* No members */ + &asn_SPC_regExtValue_specs_183 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_NodeOffsetPointLL_181[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regionId), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_182, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_182, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_181 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_NodeOffsetPointLL, regExtValue), + -1 /* Ambiguous tag (ANY?) */, + 0, + &asn_DEF_regExtValue_183, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_183, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_183, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_181 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPointLL_tags_181[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_NodeOffsetPointLL_tag2el_181[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* regionId */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPointLL_specs_181 = { + sizeof(struct Reg_NodeOffsetPointLL), + offsetof(struct Reg_NodeOffsetPointLL, _asn_ctx), + asn_MAP_Reg_NodeOffsetPointLL_tag2el_181, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPointLL = { + "Reg-NodeOffsetPointLL", + "Reg-NodeOffsetPointLL", + &asn_OP_SEQUENCE, + asn_DEF_Reg_NodeOffsetPointLL_tags_181, + sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) + /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ + asn_DEF_Reg_NodeOffsetPointLL_tags_181, /* Same as above */ + sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181) + /sizeof(asn_DEF_Reg_NodeOffsetPointLL_tags_181[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_NodeOffsetPointLL_181, + 2, /* Elements count */ + &asn_SPC_Reg_NodeOffsetPointLL_specs_181 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/r2020/RegulatorySpeedLimit.c new file mode 100644 index 000000000..328f7cf47 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RegulatorySpeedLimit.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RegulatorySpeedLimit.h" + +asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { + sizeof(struct RegulatorySpeedLimit), + offsetof(struct RegulatorySpeedLimit, _asn_ctx), + asn_MAP_RegulatorySpeedLimit_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { + "RegulatorySpeedLimit", + "RegulatorySpeedLimit", + &asn_OP_SEQUENCE, + asn_DEF_RegulatorySpeedLimit_tags_1, + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RegulatorySpeedLimit_1, + 2, /* Elements count */ + &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RepeatParams.c b/src/tmx/Asn_J2735/src/r2020/RepeatParams.c new file mode 100644 index 000000000..e83580572 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RepeatParams.c @@ -0,0 +1,169 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RepeatParams.h" + +static int +memb_offset_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_period_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_span_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_offset_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_offset_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_period_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_period_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_span_constr_4 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_span_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RepeatParams_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, offset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_offset_constr_2, &asn_PER_memb_offset_constr_2, memb_offset_constraint_1 }, + 0, 0, /* No default value */ + "offset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, period), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_period_constr_3, &asn_PER_memb_period_constr_3, memb_period_constraint_1 }, + 0, 0, /* No default value */ + "period" + }, + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, span), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_span_constr_4, &asn_PER_memb_span_constr_4, memb_span_constraint_1 }, + 0, 0, /* No default value */ + "span" + }, +}; +static const ber_tlv_tag_t asn_DEF_RepeatParams_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RepeatParams_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* period */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* span */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1 = { + sizeof(struct RepeatParams), + offsetof(struct RepeatParams, _asn_ctx), + asn_MAP_RepeatParams_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RepeatParams = { + "RepeatParams", + "RepeatParams", + &asn_OP_SEQUENCE, + asn_DEF_RepeatParams_tags_1, + sizeof(asn_DEF_RepeatParams_tags_1) + /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ + asn_DEF_RepeatParams_tags_1, /* Same as above */ + sizeof(asn_DEF_RepeatParams_tags_1) + /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RepeatParams_1, + 3, /* Elements count */ + &asn_SPC_RepeatParams_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestID.c b/src/tmx/Asn_J2735/src/r2020/RequestID.c new file mode 100644 index 000000000..1fac45786 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestID.h" + +int +RequestID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestID = { + "RequestID", + "RequestID", + &asn_OP_NativeInteger, + asn_DEF_RequestID_tags_1, + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + asn_DEF_RequestID_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RequestID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestImportanceLevel.c b/src/tmx/Asn_J2735/src/r2020/RequestImportanceLevel.c new file mode 100644 index 000000000..7a2fc4f83 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestImportanceLevel.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestImportanceLevel.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestImportanceLevel_value2enum_1[] = { + { 0, 29, "requestImportanceLevelUnKnown" }, + { 1, 23, "requestImportanceLevel1" }, + { 2, 23, "requestImportanceLevel2" }, + { 3, 23, "requestImportanceLevel3" }, + { 4, 23, "requestImportanceLevel4" }, + { 5, 23, "requestImportanceLevel5" }, + { 6, 23, "requestImportanceLevel6" }, + { 7, 23, "requestImportanceLevel7" }, + { 8, 23, "requestImportanceLevel8" }, + { 9, 23, "requestImportanceLevel9" }, + { 10, 24, "requestImportanceLevel10" }, + { 11, 24, "requestImportanceLevel11" }, + { 12, 24, "requestImportanceLevel12" }, + { 13, 24, "requestImportanceLevel13" }, + { 14, 24, "requestImportanceLevel14" }, + { 15, 25, "requestImportanceReserved" } +}; +static const unsigned int asn_MAP_RequestImportanceLevel_enum2value_1[] = { + 1, /* requestImportanceLevel1(1) */ + 10, /* requestImportanceLevel10(10) */ + 11, /* requestImportanceLevel11(11) */ + 12, /* requestImportanceLevel12(12) */ + 13, /* requestImportanceLevel13(13) */ + 14, /* requestImportanceLevel14(14) */ + 2, /* requestImportanceLevel2(2) */ + 3, /* requestImportanceLevel3(3) */ + 4, /* requestImportanceLevel4(4) */ + 5, /* requestImportanceLevel5(5) */ + 6, /* requestImportanceLevel6(6) */ + 7, /* requestImportanceLevel7(7) */ + 8, /* requestImportanceLevel8(8) */ + 9, /* requestImportanceLevel9(9) */ + 0, /* requestImportanceLevelUnKnown(0) */ + 15 /* requestImportanceReserved(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1 = { + asn_MAP_RequestImportanceLevel_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestImportanceLevel_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestImportanceLevel_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel = { + "RequestImportanceLevel", + "RequestImportanceLevel", + &asn_OP_NativeEnumerated, + asn_DEF_RequestImportanceLevel_tags_1, + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + asn_DEF_RequestImportanceLevel_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestImportanceLevel_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestImportanceLevel_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestImportanceLevel_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestSubRole.c b/src/tmx/Asn_J2735/src/r2020/RequestSubRole.c new file mode 100644 index 000000000..9554157fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestSubRole.c @@ -0,0 +1,96 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestSubRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestSubRole_value2enum_1[] = { + { 0, 21, "requestSubRoleUnKnown" }, + { 1, 15, "requestSubRole1" }, + { 2, 15, "requestSubRole2" }, + { 3, 15, "requestSubRole3" }, + { 4, 15, "requestSubRole4" }, + { 5, 15, "requestSubRole5" }, + { 6, 15, "requestSubRole6" }, + { 7, 15, "requestSubRole7" }, + { 8, 15, "requestSubRole8" }, + { 9, 15, "requestSubRole9" }, + { 10, 16, "requestSubRole10" }, + { 11, 16, "requestSubRole11" }, + { 12, 16, "requestSubRole12" }, + { 13, 16, "requestSubRole13" }, + { 14, 16, "requestSubRole14" }, + { 15, 22, "requestSubRoleReserved" } +}; +static const unsigned int asn_MAP_RequestSubRole_enum2value_1[] = { + 1, /* requestSubRole1(1) */ + 10, /* requestSubRole10(10) */ + 11, /* requestSubRole11(11) */ + 12, /* requestSubRole12(12) */ + 13, /* requestSubRole13(13) */ + 14, /* requestSubRole14(14) */ + 2, /* requestSubRole2(2) */ + 3, /* requestSubRole3(3) */ + 4, /* requestSubRole4(4) */ + 5, /* requestSubRole5(5) */ + 6, /* requestSubRole6(6) */ + 7, /* requestSubRole7(7) */ + 8, /* requestSubRole8(8) */ + 9, /* requestSubRole9(9) */ + 15, /* requestSubRoleReserved(15) */ + 0 /* requestSubRoleUnKnown(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1 = { + asn_MAP_RequestSubRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestSubRole_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestSubRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestSubRole = { + "RequestSubRole", + "RequestSubRole", + &asn_OP_NativeEnumerated, + asn_DEF_RequestSubRole_tags_1, + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + asn_DEF_RequestSubRole_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestSubRole_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestSubRole_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestSubRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestedItem.c b/src/tmx/Asn_J2735/src/r2020/RequestedItem.c new file mode 100644 index 000000000..01c7b643c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestedItem.c @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestedItem.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestedItem_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 5, "itemA" }, + { 2, 5, "itemB" }, + { 3, 5, "itemC" }, + { 4, 5, "itemD" }, + { 5, 5, "itemE" }, + { 6, 5, "itemF" }, + { 7, 5, "itemG" }, + { 8, 5, "itemI" }, + { 9, 5, "itemJ" }, + { 10, 5, "itemK" }, + { 11, 5, "itemL" }, + { 12, 5, "itemM" }, + { 13, 5, "itemN" }, + { 14, 5, "itemO" }, + { 15, 5, "itemP" }, + { 16, 5, "itemQ" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RequestedItem_enum2value_1[] = { + 1, /* itemA(1) */ + 2, /* itemB(2) */ + 3, /* itemC(3) */ + 4, /* itemD(4) */ + 5, /* itemE(5) */ + 6, /* itemF(6) */ + 7, /* itemG(7) */ + 8, /* itemI(8) */ + 9, /* itemJ(9) */ + 10, /* itemK(10) */ + 11, /* itemL(11) */ + 12, /* itemM(12) */ + 13, /* itemN(13) */ + 14, /* itemO(14) */ + 15, /* itemP(15) */ + 16, /* itemQ(16) */ + 0 /* reserved(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { + asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItem = { + "RequestedItem", + "RequestedItem", + &asn_OP_NativeEnumerated, + asn_DEF_RequestedItem_tags_1, + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + asn_DEF_RequestedItem_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestedItem_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestedItem_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestedItem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestedItemList.c b/src/tmx/Asn_J2735/src/r2020/RequestedItemList.c new file mode 100644 index 000000000..31353a036 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestedItemList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "CommonSafetyRequest" + * found in "J2735-CommonSafetyRequest.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestedItemList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RequestedItemList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RequestedItem, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RequestedItemList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1 = { + sizeof(struct RequestedItemList), + offsetof(struct RequestedItemList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItemList = { + "RequestedItemList", + "RequestedItemList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RequestedItemList_tags_1, + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + asn_DEF_RequestedItemList_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RequestedItemList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RequestedItemList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RequestedItemList_1, + 1, /* Single element */ + &asn_SPC_RequestedItemList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestorDescription.c b/src/tmx/Asn_J2735/src/r2020/RequestorDescription.c new file mode 100644 index 000000000..595c1c129 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestorDescription.c @@ -0,0 +1,315 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestorDescription.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RequestorDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct RequestorDescription__regional), + offsetof(struct RequestorDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RequestorDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorDescription, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 8, offsetof(struct RequestorDescription, type), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 7, offsetof(struct RequestorDescription, position), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 6, offsetof(struct RequestorDescription, name), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct RequestorDescription, routeName), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "routeName" + }, + { ATF_POINTER, 4, offsetof(struct RequestorDescription, transitStatus), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitStatus" + }, + { ATF_POINTER, 3, offsetof(struct RequestorDescription, transitOccupancy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleOccupancy, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitOccupancy" + }, + { ATF_POINTER, 2, offsetof(struct RequestorDescription, transitSchedule), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transitSchedule" + }, + { ATF_POINTER, 1, offsetof(struct RequestorDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorDescription_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_RequestorDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* routeName */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transitOccupancy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transitSchedule */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1 = { + sizeof(struct RequestorDescription), + offsetof(struct RequestorDescription, _asn_ctx), + asn_MAP_RequestorDescription_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_RequestorDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorDescription = { + "RequestorDescription", + "RequestorDescription", + &asn_OP_SEQUENCE, + asn_DEF_RequestorDescription_tags_1, + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + asn_DEF_RequestorDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorDescription_1, + 9, /* Elements count */ + &asn_SPC_RequestorDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestorPositionVector.c b/src/tmx/Asn_J2735/src/r2020/RequestorPositionVector.c new file mode 100644 index 000000000..7bbd52351 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestorPositionVector.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestorPositionVector.h" + +asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorPositionVector, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RequestorPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 1, offsetof(struct RequestorPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const int asn_MAP_RequestorPositionVector_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_RequestorPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1 = { + sizeof(struct RequestorPositionVector), + offsetof(struct RequestorPositionVector, _asn_ctx), + asn_MAP_RequestorPositionVector_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RequestorPositionVector_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector = { + "RequestorPositionVector", + "RequestorPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_RequestorPositionVector_tags_1, + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + asn_DEF_RequestorPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorPositionVector_1, + 3, /* Elements count */ + &asn_SPC_RequestorPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RequestorType.c b/src/tmx/Asn_J2735/src/r2020/RequestorType.c new file mode 100644 index 000000000..b35489668 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RequestorType.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RequestorType.h" + +asn_TYPE_member_t asn_MBR_RequestorType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorType, role), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 5, offsetof(struct RequestorType, subrole), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestSubRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "subrole" + }, + { ATF_POINTER, 4, offsetof(struct RequestorType, request), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestImportanceLevel, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 3, offsetof(struct RequestorType, iso3883), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 2, offsetof(struct RequestorType, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 1, offsetof(struct RequestorType, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorType_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_RequestorType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subrole */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1 = { + sizeof(struct RequestorType), + offsetof(struct RequestorType, _asn_ctx), + asn_MAP_RequestorType_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_RequestorType_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorType = { + "RequestorType", + "RequestorType", + &asn_OP_SEQUENCE, + asn_DEF_RequestorType_tags_1, + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + asn_DEF_RequestorType_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RequestorType_1, + 6, /* Elements count */ + &asn_SPC_RequestorType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/r2020/ResponderGroupAffected.c new file mode 100644 index 000000000..3069483df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ResponderGroupAffected.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ResponderGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { + { 9729, 23, "emergency-vehicle-units" }, + { 9730, 29, "federal-law-enforcement-units" }, + { 9731, 18, "state-police-units" }, + { 9732, 19, "county-police-units" }, + { 9733, 18, "local-police-units" }, + { 9734, 15, "ambulance-units" }, + { 9735, 12, "rescue-units" }, + { 9736, 10, "fire-units" }, + { 9737, 12, "hAZMAT-units" }, + { 9738, 14, "light-tow-unit" }, + { 9739, 14, "heavy-tow-unit" }, + { 9740, 23, "freeway-service-patrols" }, + { 9741, 29, "transportation-response-units" }, + { 9742, 33, "private-contractor-response-units" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { + 5, /* ambulance-units(9734) */ + 3, /* county-police-units(9732) */ + 0, /* emergency-vehicle-units(9729) */ + 1, /* federal-law-enforcement-units(9730) */ + 7, /* fire-units(9736) */ + 11, /* freeway-service-patrols(9740) */ + 8, /* hAZMAT-units(9737) */ + 10, /* heavy-tow-unit(9739) */ + 9, /* light-tow-unit(9738) */ + 4, /* local-police-units(9733) */ + 13, /* private-contractor-response-units(9742) */ + 6, /* rescue-units(9735) */ + 2, /* state-police-units(9731) */ + 12 /* transportation-response-units(9741) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { + asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { + "ResponderGroupAffected", + "ResponderGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_ResponderGroupAffected_tags_1, + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ResponderGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ResponderGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ResponseType.c b/src/tmx/Asn_J2735/src/r2020/ResponseType.c new file mode 100644 index 000000000..348a291ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ResponseType.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ResponseType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ResponseType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ResponseType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { + { 0, 21, "notInUseOrNotEquipped" }, + { 1, 9, "emergency" }, + { 2, 12, "nonEmergency" }, + { 3, 7, "pursuit" }, + { 4, 10, "stationary" }, + { 5, 10, "slowMoving" }, + { 6, 17, "stopAndGoMovement" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponseType_enum2value_1[] = { + 1, /* emergency(1) */ + 2, /* nonEmergency(2) */ + 0, /* notInUseOrNotEquipped(0) */ + 3, /* pursuit(3) */ + 5, /* slowMoving(5) */ + 4, /* stationary(4) */ + 6 /* stopAndGoMovement(6) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { + asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponseType = { + "ResponseType", + "ResponseType", + &asn_OP_NativeEnumerated, + asn_DEF_ResponseType_tags_1, + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + asn_DEF_ResponseType_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ResponseType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ResponseType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponseType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/r2020/RestrictionAppliesTo.c new file mode 100644 index 000000000..84ea641eb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionAppliesTo.c @@ -0,0 +1,94 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionAppliesTo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 15, "equippedTransit" }, + { 2, 13, "equippedTaxis" }, + { 3, 13, "equippedOther" }, + { 4, 17, "emissionCompliant" }, + { 5, 15, "equippedBicycle" }, + { 6, 15, "weightCompliant" }, + { 7, 15, "heightCompliant" }, + { 8, 11, "pedestrians" }, + { 9, 17, "slowMovingPersons" }, + { 10, 15, "wheelchairUsers" }, + { 11, 18, "visualDisabilities" }, + { 12, 17, "audioDisabilities" }, + { 13, 24, "otherUnknownDisabilities" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { + 12, /* audioDisabilities(12) */ + 4, /* emissionCompliant(4) */ + 5, /* equippedBicycle(5) */ + 3, /* equippedOther(3) */ + 2, /* equippedTaxis(2) */ + 1, /* equippedTransit(1) */ + 7, /* heightCompliant(7) */ + 0, /* none(0) */ + 13, /* otherUnknownDisabilities(13) */ + 8, /* pedestrians(8) */ + 9, /* slowMovingPersons(9) */ + 11, /* visualDisabilities(11) */ + 6, /* weightCompliant(6) */ + 10 /* wheelchairUsers(10) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { + asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { + "RestrictionAppliesTo", + "RestrictionAppliesTo", + &asn_OP_NativeEnumerated, + asn_DEF_RestrictionAppliesTo_tags_1, + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionAppliesTo_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionAppliesTo_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/r2020/RestrictionClassAssignment.c new file mode 100644 index 000000000..ce50f2277 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionClassAssignment.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionClassAssignment.h" + +asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionUserTypeList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "users" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { + sizeof(struct RestrictionClassAssignment), + offsetof(struct RestrictionClassAssignment, _asn_ctx), + asn_MAP_RestrictionClassAssignment_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { + "RestrictionClassAssignment", + "RestrictionClassAssignment", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionClassAssignment_tags_1, + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RestrictionClassAssignment_1, + 2, /* Elements count */ + &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionClassID.c b/src/tmx/Asn_J2735/src/r2020/RestrictionClassID.c new file mode 100644 index 000000000..b712ac31f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionClassID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionClassID.h" + +int +RestrictionClassID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { + "RestrictionClassID", + "RestrictionClassID", + &asn_OP_NativeInteger, + asn_DEF_RestrictionClassID_tags_1, + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassID_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionClassID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionClassID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RestrictionClassID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionClassList.c b/src/tmx/Asn_J2735/src/r2020/RestrictionClassList.c new file mode 100644 index 000000000..27edf229c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionClassList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionClassList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..254)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionClassAssignment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { + sizeof(struct RestrictionClassList), + offsetof(struct RestrictionClassList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { + "RestrictionClassList", + "RestrictionClassList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionClassList_tags_1, + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionClassList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionClassList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RestrictionClassList_1, + 1, /* Single element */ + &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionUserType-addGrpC.c b/src/tmx/Asn_J2735/src/r2020/RestrictionUserType-addGrpC.c new file mode 100644 index 000000000..65c0cce85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionUserType-addGrpC.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionUserType-addGrpC.h" + +asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct RestrictionUserType_addGrpC, emission), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmissionType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "emission" + }, +}; +static const int asn_MAP_RestrictionUserType_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RestrictionUserType_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1 = { + sizeof(struct RestrictionUserType_addGrpC), + offsetof(struct RestrictionUserType_addGrpC, _asn_ctx), + asn_MAP_RestrictionUserType_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_RestrictionUserType_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC = { + "RestrictionUserType-addGrpC", + "RestrictionUserType-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionUserType_addGrpC_tags_1, + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserType_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RestrictionUserType_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_RestrictionUserType_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionUserType.c b/src/tmx/Asn_J2735/src/r2020/RestrictionUserType.c new file mode 100644 index 000000000..a00c774e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionUserType.c @@ -0,0 +1,196 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionUserType.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RestrictionUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_3 = { + sizeof(struct RestrictionUserType__regional), + offsetof(struct RestrictionUserType__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_3 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_3, + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]) - 1, /* 1 */ + asn_DEF_regional_tags_3, /* Same as above */ + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_3, + 1, /* Single element */ + &asn_SPC_regional_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionAppliesTo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_regional_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { + sizeof(struct RestrictionUserType), + offsetof(struct RestrictionUserType, _asn_ctx), + offsetof(struct RestrictionUserType, present), + sizeof(((struct RestrictionUserType *)0)->present), + asn_MAP_RestrictionUserType_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { + "RestrictionUserType", + "RestrictionUserType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionUserType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionUserType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_RestrictionUserType_1, + 2, /* Elements count */ + &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/r2020/RestrictionUserTypeList.c new file mode 100644 index 000000000..464954ceb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RestrictionUserTypeList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RestrictionUserTypeList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_RestrictionUserType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { + sizeof(struct RestrictionUserTypeList), + offsetof(struct RestrictionUserTypeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { + "RestrictionUserTypeList", + "RestrictionUserTypeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionUserTypeList_tags_1, + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RestrictionUserTypeList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RestrictionUserTypeList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RestrictionUserTypeList_1, + 1, /* Single element */ + &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/r2020/RoadLaneSetList.c new file mode 100644 index 000000000..ffa21913d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadLaneSetList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadLaneSetList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { + sizeof(struct RoadLaneSetList), + offsetof(struct RoadLaneSetList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { + "RoadLaneSetList", + "RoadLaneSetList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadLaneSetList_tags_1, + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadLaneSetList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadLaneSetList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RoadLaneSetList_1, + 1, /* Single element */ + &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/r2020/RoadRegulatorID.c new file mode 100644 index 000000000..90c536388 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadRegulatorID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadRegulatorID.h" + +int +RoadRegulatorID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { + "RoadRegulatorID", + "RoadRegulatorID", + &asn_OP_NativeInteger, + asn_DEF_RoadRegulatorID_tags_1, + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadRegulatorID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadRegulatorID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadRegulatorID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSegment.c b/src/tmx/Asn_J2735/src/r2020/RoadSegment.c new file mode 100644 index 000000000..ed0f8b57f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSegment.c @@ -0,0 +1,297 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSegment.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RoadSegment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct RoadSegment__regional), + offsetof(struct RoadSegment__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegment, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadLaneSetList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadLaneSet" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { + sizeof(struct RoadSegment), + offsetof(struct RoadSegment, _asn_ctx), + asn_MAP_RoadSegment_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RoadSegment_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegment = { + "RoadSegment", + "RoadSegment", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegment_tags_1, + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + asn_DEF_RoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSegment_1, + 8, /* Elements count */ + &asn_SPC_RoadSegment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSegmentID.c b/src/tmx/Asn_J2735/src/r2020/RoadSegmentID.c new file mode 100644 index 000000000..185146769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSegmentID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSegmentID.h" + +int +RoadSegmentID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { + "RoadSegmentID", + "RoadSegmentID", + &asn_OP_NativeInteger, + asn_DEF_RoadSegmentID_tags_1, + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadSegmentID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadSegmentID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadSegmentID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSegmentList.c b/src/tmx/Asn_J2735/src/r2020/RoadSegmentList.c new file mode 100644 index 000000000..4e7573c8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSegmentList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSegmentList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSegment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { + sizeof(struct RoadSegmentList), + offsetof(struct RoadSegmentList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { + "RoadSegmentList", + "RoadSegmentList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadSegmentList_tags_1, + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadSegmentList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadSegmentList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_RoadSegmentList_1, + 1, /* Single element */ + &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/r2020/RoadSegmentReferenceID.c new file mode 100644 index 000000000..f6eb131b8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSegmentReferenceID.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSegmentReferenceID.h" + +asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { + sizeof(struct RoadSegmentReferenceID), + offsetof(struct RoadSegmentReferenceID, _asn_ctx), + asn_MAP_RoadSegmentReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { + "RoadSegmentReferenceID", + "RoadSegmentReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegmentReferenceID_tags_1, + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSegmentReferenceID_1, + 2, /* Elements count */ + &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSideAlert.c b/src/tmx/Asn_J2735/src/r2020/RoadSideAlert.c new file mode 100644 index 000000000..ff97b6316 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSideAlert.c @@ -0,0 +1,436 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "RoadSideAlert" + * found in "J2735-RoadSideAlert.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSideAlert.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_description_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { + sizeof(struct RoadSideAlert__description), + offsetof(struct RoadSideAlert__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_5 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_5, + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ + asn_DEF_description_tags_5, /* Same as above */ + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_description_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_description_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_description_5, + 1, /* Single element */ + &asn_SPC_description_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_RoadSideAlert, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct RoadSideAlert__regional), + offsetof(struct RoadSideAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 7, offsetof(struct RoadSideAlert, description), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_description_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_description_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_description_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_description_constraint_1 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 6, offsetof(struct RoadSideAlert, priority), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 5, offsetof(struct RoadSideAlert, heading), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 4, offsetof(struct RoadSideAlert, extent), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 3, offsetof(struct RoadSideAlert, position), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RoadSideAlert, furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSideAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { + sizeof(struct RoadSideAlert), + offsetof(struct RoadSideAlert, _asn_ctx), + asn_MAP_RoadSideAlert_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_RoadSideAlert_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { + "RoadSideAlert", + "RoadSideAlert", + &asn_OP_SEQUENCE, + asn_DEF_RoadSideAlert_tags_1, + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + asn_DEF_RoadSideAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSideAlert_1, + 10, /* Elements count */ + &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadSignID.c b/src/tmx/Asn_J2735/src/r2020/RoadSignID.c new file mode 100644 index 000000000..e821627a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadSignID.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadSignID.h" + +asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "viewAngle" + }, + { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MUTCDCode, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mutcdCode" + }, + { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crc" + }, +}; +static const int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { + sizeof(struct RoadSignID), + offsetof(struct RoadSignID, _asn_ctx), + asn_MAP_RoadSignID_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RoadSignID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSignID = { + "RoadSignID", + "RoadSignID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSignID_tags_1, + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + asn_DEF_RoadSignID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_RoadSignID_1, + 4, /* Elements count */ + &asn_SPC_RoadSignID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/r2020/RoadwayCrownAngle.c new file mode 100644 index 000000000..c46cb7d65 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RoadwayCrownAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "RoadwayCrownAngle.h" + +int +RoadwayCrownAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { + "RoadwayCrownAngle", + "RoadwayCrownAngle", + &asn_OP_NativeInteger, + asn_DEF_RoadwayCrownAngle_tags_1, + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_RoadwayCrownAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_RoadwayCrownAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + RoadwayCrownAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RollDetected.c b/src/tmx/Asn_J2735/src/r2020/RollDetected.c new file mode 100644 index 000000000..017e10e77 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RollDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollDetected.h" + +int +RollDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -14400 && value <= 14400)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-14400..14400) */, + -1}; +asn_per_constraints_t asn_PER_type_RollDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RollDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollDetected = { + "RollDetected", + "RollDetected", + &asn_OP_NativeInteger, + asn_DEF_RollDetected_tags_1, + sizeof(asn_DEF_RollDetected_tags_1) + /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ + asn_DEF_RollDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_RollDetected_tags_1) + /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_RollDetected_constr_1, &asn_PER_type_RollDetected_constr_1, RollDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RollRate.c b/src/tmx/Asn_J2735/src/r2020/RollRate.c new file mode 100644 index 000000000..d5c525e3a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RollRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollRate.h" + +int +RollRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_RollRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RollRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollRate = { + "RollRate", + "RollRate", + &asn_OP_NativeInteger, + asn_DEF_RollRate_tags_1, + sizeof(asn_DEF_RollRate_tags_1) + /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ + asn_DEF_RollRate_tags_1, /* Same as above */ + sizeof(asn_DEF_RollRate_tags_1) + /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ + { &asn_OER_type_RollRate_constr_1, &asn_PER_type_RollRate_constr_1, RollRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/RollRateConfidence.c b/src/tmx/Asn_J2735/src/r2020/RollRateConfidence.c new file mode 100644 index 000000000..3b578a211 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/RollRateConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RollRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_RollRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1 = { + asn_MAP_RollRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RollRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RollRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollRateConfidence = { + "RollRateConfidence", + "RollRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_RollRateConfidence_tags_1, + sizeof(asn_DEF_RollRateConfidence_tags_1) + /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_RollRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_RollRateConfidence_tags_1) + /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_RollRateConfidence_constr_1, &asn_PER_type_RollRateConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RollRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SPAT.c b/src/tmx/Asn_J2735/src/r2020/SPAT.c new file mode 100644 index 000000000..da61fdf1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SPAT.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SPAT.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SPAT, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SPAT__regional), + offsetof(struct SPAT__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SPAT_1[] = { + { ATF_POINTER, 2, offsetof(struct SPAT, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStateList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SPAT_oms_1[] = { 0, 1, 3 }; +static const ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { + sizeof(struct SPAT), + offsetof(struct SPAT, _asn_ctx), + asn_MAP_SPAT_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SPAT_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SPAT = { + "SPAT", + "SPAT", + &asn_OP_SEQUENCE, + asn_DEF_SPAT_tags_1, + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + asn_DEF_SPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SPAT_1, + 4, /* Elements count */ + &asn_SPC_SPAT_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SPAT_TimeMark.c b/src/tmx/Asn_J2735/src/r2020/SPAT_TimeMark.c new file mode 100644 index 000000000..991db7de2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SPAT_TimeMark.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SPAT_TimeMark.h" + +int +SPAT_TimeMark_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 36111L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..36111) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SPAT_TimeMark_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 36111 } /* (0..36111) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SPAT_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SPAT_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_NativeInteger, + asn_DEF_SPAT_TimeMark_tags_1, + sizeof(asn_DEF_SPAT_TimeMark_tags_1) + /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_SPAT_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_TimeMark_tags_1) + /sizeof(asn_DEF_SPAT_TimeMark_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SPAT_TimeMark_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SPAT_TimeMark_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SPAT_TimeMark_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SSPindex.c b/src/tmx/Asn_J2735/src/r2020/SSPindex.c new file mode 100644 index 000000000..f03bc2799 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SSPindex.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SSPindex.h" + +int +SSPindex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SSPindex_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SSPindex_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SSPindex_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SSPindex = { + "SSPindex", + "SSPindex", + &asn_OP_NativeInteger, + asn_DEF_SSPindex_tags_1, + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + asn_DEF_SSPindex_tags_1, /* Same as above */ + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SSPindex_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SSPindex_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SSPindex_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Sample.c b/src/tmx/Asn_J2735/src/r2020/Sample.c new file mode 100644 index 000000000..94aa1a1de --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Sample.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Sample.h" + +static int +memb_sampleStart_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sampleEnd_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sampleStart_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_Sample_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sampleStart_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sampleStart_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sampleStart_constraint_1 + }, + 0, 0, /* No default value */ + "sampleStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sampleEnd_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sampleEnd_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sampleEnd_constraint_1 + }, + 0, 0, /* No default value */ + "sampleEnd" + }, +}; +static const ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { + sizeof(struct Sample), + offsetof(struct Sample, _asn_ctx), + asn_MAP_Sample_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Sample = { + "Sample", + "Sample", + &asn_OP_SEQUENCE, + asn_DEF_Sample_tags_1, + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + asn_DEF_Sample_tags_1, /* Same as above */ + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Sample_1, + 2, /* Elements count */ + &asn_SPC_Sample_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Scale-B12.c b/src/tmx/Asn_J2735/src/r2020/Scale-B12.c new file mode 100644 index 000000000..986c189df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Scale-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Scale-B12.h" + +int +Scale_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Scale_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { + "Scale-B12", + "Scale-B12", + &asn_OP_NativeInteger, + asn_DEF_Scale_B12_tags_1, + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + asn_DEF_Scale_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Scale_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Scale_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Scale_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Second.c b/src/tmx/Asn_J2735/src/r2020/Second.c new file mode 100644 index 000000000..565ec930d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Second.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Second.h" + +int +Second_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 60L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Second_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Second_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Second_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Second = { + "Second", + "Second", + &asn_OP_NativeInteger, + asn_DEF_Second_tags_1, + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + asn_DEF_Second_tags_1, /* Same as above */ + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Second_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Second_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Second_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SecondOfTime.c b/src/tmx/Asn_J2735/src/r2020/SecondOfTime.c new file mode 100644 index 000000000..729cd484e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SecondOfTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SecondOfTime.h" + +int +SecondOfTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 61L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..61) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 61 } /* (0..61) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SecondOfTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondOfTime = { + "SecondOfTime", + "SecondOfTime", + &asn_OP_NativeInteger, + asn_DEF_SecondOfTime_tags_1, + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + asn_DEF_SecondOfTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SecondOfTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SecondOfTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SecondOfTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SecondsAngle.c b/src/tmx/Asn_J2735/src/r2020/SecondsAngle.c new file mode 100644 index 000000000..f02452774 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SecondsAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SecondsAngle.h" + +int +SecondsAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 5999L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..5999) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { + "SecondsAngle", + "SecondsAngle", + &asn_OP_NativeInteger, + asn_DEF_SecondsAngle_tags_1, + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + asn_DEF_SecondsAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SecondsAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SecondsAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SecondsAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLL.c b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLL.c new file mode 100644 index 000000000..7c2b95948 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLL.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SegmentAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeLL_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1 = { + asn_MAP_SegmentAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL = { + "SegmentAttributeLL", + "SegmentAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeLL_tags_1, + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeLL_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLLList.c b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLLList.c new file mode 100644 index 000000000..f86e4dbf4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeLLList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SegmentAttributeLLList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeLL, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1 = { + sizeof(struct SegmentAttributeLLList), + offsetof(struct SegmentAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList = { + "SegmentAttributeLLList", + "SegmentAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeLLList_tags_1, + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeLLList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SegmentAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXY.c b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXY.c new file mode 100644 index 000000000..a8b1e074e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXY.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SegmentAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeXY_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1 = { + asn_MAP_SegmentAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY = { + "SegmentAttributeXY", + "SegmentAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeXY_tags_1, + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeXY_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXYList.c b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXYList.c new file mode 100644 index 000000000..27ec52923 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SegmentAttributeXYList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SegmentAttributeXYList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1 = { + sizeof(struct SegmentAttributeXYList), + offsetof(struct SegmentAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList = { + "SegmentAttributeXYList", + "SegmentAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeXYList_tags_1, + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SegmentAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SegmentAttributeXYList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SegmentAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisAccuracy.c new file mode 100644 index 000000000..60571cbd8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisAccuracy.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SemiMajorAxisAccuracy.h" + +int +SemiMajorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy = { + "SemiMajorAxisAccuracy", + "SemiMajorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMajorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMajorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMajorAxisAccuracy_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisOrientation.c b/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisOrientation.c new file mode 100644 index 000000000..86c29351b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SemiMajorAxisOrientation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SemiMajorAxisOrientation.h" + +int +SemiMajorAxisOrientation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisOrientation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation = { + "SemiMajorAxisOrientation", + "SemiMajorAxisOrientation", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisOrientation_tags_1, + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisOrientation_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMajorAxisOrientation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMajorAxisOrientation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMajorAxisOrientation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SemiMinorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r2020/SemiMinorAxisAccuracy.c new file mode 100644 index 000000000..9c556d5ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SemiMinorAxisAccuracy.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SemiMinorAxisAccuracy.h" + +int +SemiMinorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SemiMinorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy = { + "SemiMinorAxisAccuracy", + "SemiMinorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMinorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMinorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SemiMinorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SemiMinorAxisAccuracy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SemiMinorAxisAccuracy_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SensorDataSharingMessage.c b/src/tmx/Asn_J2735/src/r2020/SensorDataSharingMessage.c new file mode 100644 index 000000000..b49a632e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SensorDataSharingMessage.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SensorDataSharingMessage.h" + +asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sourceID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sourceID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, equipmentType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EquipmentType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "equipmentType" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sDSMTimeStamp), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sDSMTimeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPos), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPos" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPosXYConf), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPosXYConf" + }, + { ATF_POINTER, 1, offsetof(struct SensorDataSharingMessage, refPosElConf), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ElevationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPosElConf" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, objects), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObjectList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objects" + }, +}; +static const int asn_MAP_SensorDataSharingMessage_oms_1[] = { 6 }; +static const ber_tlv_tag_t asn_DEF_SensorDataSharingMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SensorDataSharingMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sourceID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* equipmentType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sDSMTimeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* refPos */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refPosXYConf */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refPosElConf */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* objects */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1 = { + sizeof(struct SensorDataSharingMessage), + offsetof(struct SensorDataSharingMessage, _asn_ctx), + asn_MAP_SensorDataSharingMessage_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_SensorDataSharingMessage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage = { + "SensorDataSharingMessage", + "SensorDataSharingMessage", + &asn_OP_SEQUENCE, + asn_DEF_SensorDataSharingMessage_tags_1, + sizeof(asn_DEF_SensorDataSharingMessage_tags_1) + /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ + asn_DEF_SensorDataSharingMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SensorDataSharingMessage_tags_1) + /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SensorDataSharingMessage_1, + 8, /* Elements count */ + &asn_SPC_SensorDataSharingMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ShapePointSet.c b/src/tmx/Asn_J2735/src/r2020/ShapePointSet.c new file mode 100644 index 000000000..234c4363c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ShapePointSet.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ShapePointSet.h" + +asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { + { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { + sizeof(struct ShapePointSet), + offsetof(struct ShapePointSet, _asn_ctx), + asn_MAP_ShapePointSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_ShapePointSet_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { + "ShapePointSet", + "ShapePointSet", + &asn_OP_SEQUENCE, + asn_DEF_ShapePointSet_tags_1, + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + asn_DEF_ShapePointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ShapePointSet_1, + 4, /* Elements count */ + &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignPrority.c b/src/tmx/Asn_J2735/src/r2020/SignPrority.c new file mode 100644 index 000000000..0efdcb067 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignPrority.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignPrority.h" + +int +SignPrority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 7L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignPrority_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..7) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignPrority_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignPrority = { + "SignPrority", + "SignPrority", + &asn_OP_NativeInteger, + asn_DEF_SignPrority_tags_1, + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + asn_DEF_SignPrority_tags_1, /* Same as above */ + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignPrority_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignPrority_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignPrority_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalControlZone.c b/src/tmx/Asn_J2735/src/r2020/SignalControlZone.c new file mode 100644 index 000000000..3d42ebf59 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalControlZone.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "MapData" + * found in "J2735-MapData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalControlZone.h" + +asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, zone), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_SignalControlZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "zone" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* zone */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { + sizeof(struct SignalControlZone), + offsetof(struct SignalControlZone, _asn_ctx), + asn_MAP_SignalControlZone_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { + "SignalControlZone", + "SignalControlZone", + &asn_OP_SEQUENCE, + asn_DEF_SignalControlZone_tags_1, + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_SignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalControlZone_1, + 1, /* Elements count */ + &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalGroupID.c b/src/tmx/Asn_J2735/src/r2020/SignalGroupID.c new file mode 100644 index 000000000..8307c4888 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalGroupID.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalGroupID.h" + +int +SignalGroupID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { + "SignalGroupID", + "SignalGroupID", + &asn_OP_NativeInteger, + asn_DEF_SignalGroupID_tags_1, + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + asn_DEF_SignalGroupID_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalGroupID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalGroupID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignalGroupID_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/r2020/SignalHeadLocation.c new file mode 100644 index 000000000..04fe2b2ed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalHeadLocation.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalHeadLocation.h" + +asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "node" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "signalGroupID" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { + sizeof(struct SignalHeadLocation), + offsetof(struct SignalHeadLocation, _asn_ctx), + asn_MAP_SignalHeadLocation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { + "SignalHeadLocation", + "SignalHeadLocation", + &asn_OP_SEQUENCE, + asn_DEF_SignalHeadLocation_tags_1, + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalHeadLocation_1, + 2, /* Elements count */ + &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/r2020/SignalHeadLocationList.c new file mode 100644 index 000000000..3425f4b56 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalHeadLocationList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalHeadLocationList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalHeadLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { + sizeof(struct SignalHeadLocationList), + offsetof(struct SignalHeadLocationList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { + "SignalHeadLocationList", + "SignalHeadLocationList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalHeadLocationList_tags_1, + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalHeadLocationList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalHeadLocationList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalHeadLocationList_1, + 1, /* Single element */ + &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalReqScheme.c b/src/tmx/Asn_J2735/src/r2020/SignalReqScheme.c new file mode 100644 index 000000000..cae9d6fd5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalReqScheme.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalReqScheme.h" + +int +SignalReqScheme_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { + "SignalReqScheme", + "SignalReqScheme", + &asn_OP_OCTET_STRING, + asn_DEF_SignalReqScheme_tags_1, + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + asn_DEF_SignalReqScheme_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalReqScheme_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalReqScheme_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SignalReqScheme_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalRequest.c b/src/tmx/Asn_J2735/src/r2020/SignalRequest.c new file mode 100644 index 000000000..86b026922 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalRequest.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalRequest.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequest__regional), + offsetof(struct SignalRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PriorityRequestType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestType" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, inBoundLane), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "inBoundLane" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequest, outBoundLane), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "outBoundLane" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequest_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { + sizeof(struct SignalRequest), + offsetof(struct SignalRequest, _asn_ctx), + asn_MAP_SignalRequest_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequest_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequest = { + "SignalRequest", + "SignalRequest", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequest_tags_1, + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + asn_DEF_SignalRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequest_1, + 6, /* Elements count */ + &asn_SPC_SignalRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalRequestList.c b/src/tmx/Asn_J2735/src/r2020/SignalRequestList.c new file mode 100644 index 000000000..7fe107462 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalRequestList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalRequestList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1 = { + sizeof(struct SignalRequestList), + offsetof(struct SignalRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestList = { + "SignalRequestList", + "SignalRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalRequestList_tags_1, + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalRequestList_1, + 1, /* Single element */ + &asn_SPC_SignalRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalRequestMessage.c b/src/tmx/Asn_J2735/src/r2020/SignalRequestMessage.c new file mode 100644 index 000000000..4eba2d084 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalRequestMessage.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalRequestMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequestMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequestMessage__regional), + offsetof(struct SignalRequestMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequestList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, requestor), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requestor" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestMessage_oms_1[] = { 0, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* requestor */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1 = { + sizeof(struct SignalRequestMessage), + offsetof(struct SignalRequestMessage, _asn_ctx), + asn_MAP_SignalRequestMessage_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequestMessage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage = { + "SignalRequestMessage", + "SignalRequestMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestMessage_tags_1, + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequestMessage_1, + 6, /* Elements count */ + &asn_SPC_SignalRequestMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalRequestPackage.c b/src/tmx/Asn_J2735/src/r2020/SignalRequestPackage.c new file mode 100644 index 000000000..c0719c078 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalRequestPackage.c @@ -0,0 +1,243 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalRequestPackage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalRequestPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalRequestPackage__regional), + offsetof(struct SignalRequestPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestPackage, request), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 4, offsetof(struct SignalRequestPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 3, offsetof(struct SignalRequestPackage, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestPackage_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1 = { + sizeof(struct SignalRequestPackage), + offsetof(struct SignalRequestPackage, _asn_ctx), + asn_MAP_SignalRequestPackage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequestPackage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage = { + "SignalRequestPackage", + "SignalRequestPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestPackage_tags_1, + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequestPackage_1, + 5, /* Elements count */ + &asn_SPC_SignalRequestPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalRequesterInfo.c b/src/tmx/Asn_J2735/src/r2020/SignalRequesterInfo.c new file mode 100644 index 000000000..4f431059d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalRequesterInfo.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalRequesterInfo.h" + +asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, request), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "request" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequesterInfo, role), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequesterInfo, typeData), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "typeData" + }, +}; +static const int asn_MAP_SignalRequesterInfo_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequesterInfo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequesterInfo_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* typeData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1 = { + sizeof(struct SignalRequesterInfo), + offsetof(struct SignalRequesterInfo, _asn_ctx), + asn_MAP_SignalRequesterInfo_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequesterInfo_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo = { + "SignalRequesterInfo", + "SignalRequesterInfo", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequesterInfo_tags_1, + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + asn_DEF_SignalRequesterInfo_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalRequesterInfo_1, + 5, /* Elements count */ + &asn_SPC_SignalRequesterInfo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalStatus.c b/src/tmx/Asn_J2735/src/r2020/SignalStatus.c new file mode 100644 index 000000000..5ae35e34d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalStatus.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalStatus.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SignalStatus__regional), + offsetof(struct SignalStatus__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sigStatus), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusPackageList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sigStatus" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatus, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatus_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_SignalStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sigStatus */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1 = { + sizeof(struct SignalStatus), + offsetof(struct SignalStatus, _asn_ctx), + asn_MAP_SignalStatus_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SignalStatus_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatus = { + "SignalStatus", + "SignalStatus", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatus_tags_1, + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + asn_DEF_SignalStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatus_1, + 4, /* Elements count */ + &asn_SPC_SignalStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalStatusList.c b/src/tmx/Asn_J2735/src/r2020/SignalStatusList.c new file mode 100644 index 000000000..c173876ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalStatusList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalStatusList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalStatusList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1 = { + sizeof(struct SignalStatusList), + offsetof(struct SignalStatusList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusList = { + "SignalStatusList", + "SignalStatusList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusList_tags_1, + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalStatusList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalStatusList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalStatusList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/r2020/SignalStatusMessage.c new file mode 100644 index 000000000..0619df8dd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalStatusMessage.c @@ -0,0 +1,243 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalStatusMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatusMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalStatusMessage__regional), + offsetof(struct SignalStatusMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_6, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusMessage_oms_1[] = { 0, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { + sizeof(struct SignalStatusMessage), + offsetof(struct SignalStatusMessage, _asn_ctx), + asn_MAP_SignalStatusMessage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { + "SignalStatusMessage", + "SignalStatusMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusMessage_tags_1, + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatusMessage_1, + 5, /* Elements count */ + &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalStatusPackage.c b/src/tmx/Asn_J2735/src/r2020/SignalStatusPackage.c new file mode 100644 index 000000000..4237050b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalStatusPackage.c @@ -0,0 +1,297 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalStatusPackage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SignalStatusPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct SignalStatusPackage__regional), + offsetof(struct SignalStatusPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, requester), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequesterInfo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "requester" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, inboundOn), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "inboundOn" + }, + { ATF_POINTER, 4, offsetof(struct SignalStatusPackage, outboundOn), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "outboundOn" + }, + { ATF_POINTER, 3, offsetof(struct SignalStatusPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct SignalStatusPackage, second), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_9, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusPackage_oms_1[] = { 0, 2, 3, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* requester */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* inboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* outboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1 = { + sizeof(struct SignalStatusPackage), + offsetof(struct SignalStatusPackage, _asn_ctx), + asn_MAP_SignalStatusPackage_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_SignalStatusPackage_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage = { + "SignalStatusPackage", + "SignalStatusPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusPackage_tags_1, + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SignalStatusPackage_1, + 8, /* Elements count */ + &asn_SPC_SignalStatusPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SignalStatusPackageList.c b/src/tmx/Asn_J2735/src/r2020/SignalStatusPackageList.c new file mode 100644 index 000000000..258152583 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SignalStatusPackageList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalStatusMessage" + * found in "J2735-SignalStatusMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SignalStatusPackageList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1 = { + sizeof(struct SignalStatusPackageList), + offsetof(struct SignalStatusPackageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList = { + "SignalStatusPackageList", + "SignalStatusPackageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusPackageList_tags_1, + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackageList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SignalStatusPackageList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SignalStatusPackageList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SignalStatusPackageList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusPackageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SirenInUse.c b/src/tmx/Asn_J2735/src/r2020/SirenInUse.c new file mode 100644 index 000000000..22bd6de7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SirenInUse.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SirenInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SirenInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_SirenInUse_enum2value_1[] = { + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { + asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SirenInUse = { + "SirenInUse", + "SirenInUse", + &asn_OP_NativeEnumerated, + asn_DEF_SirenInUse_tags_1, + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + asn_DEF_SirenInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SirenInUse_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SirenInUse_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SirenInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SizeValue.c b/src/tmx/Asn_J2735/src/r2020/SizeValue.c new file mode 100644 index 000000000..19ec9d837 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SizeValue.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SizeValue.h" + +int +SizeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SizeValue_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_SizeValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SizeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SizeValue = { + "SizeValue", + "SizeValue", + &asn_OP_NativeInteger, + asn_DEF_SizeValue_tags_1, + sizeof(asn_DEF_SizeValue_tags_1) + /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ + asn_DEF_SizeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_SizeValue_tags_1) + /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ + { &asn_OER_type_SizeValue_constr_1, &asn_PER_type_SizeValue_constr_1, SizeValue_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SizeValueConfidence.c b/src/tmx/Asn_J2735/src/r2020/SizeValueConfidence.c new file mode 100644 index 000000000..ac70f8af5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SizeValueConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SizeValueConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 13 } /* (0..13) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SizeValueConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "size-100-00" }, + { 2, 11, "size-050-00" }, + { 3, 11, "size-020-00" }, + { 4, 11, "size-010-00" }, + { 5, 11, "size-005-00" }, + { 6, 11, "size-002-00" }, + { 7, 11, "size-001-00" }, + { 8, 11, "size-000-50" }, + { 9, 11, "size-000-20" }, + { 10, 11, "size-000-10" }, + { 11, 11, "size-000-05" }, + { 12, 11, "size-000-02" }, + { 13, 11, "size-000-01" } +}; +static const unsigned int asn_MAP_SizeValueConfidence_enum2value_1[] = { + 13, /* size-000-01(13) */ + 12, /* size-000-02(12) */ + 11, /* size-000-05(11) */ + 10, /* size-000-10(10) */ + 9, /* size-000-20(9) */ + 8, /* size-000-50(8) */ + 7, /* size-001-00(7) */ + 6, /* size-002-00(6) */ + 5, /* size-005-00(5) */ + 4, /* size-010-00(4) */ + 3, /* size-020-00(3) */ + 2, /* size-050-00(2) */ + 1, /* size-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1 = { + asn_MAP_SizeValueConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SizeValueConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SizeValueConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence = { + "SizeValueConfidence", + "SizeValueConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SizeValueConfidence_tags_1, + sizeof(asn_DEF_SizeValueConfidence_tags_1) + /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ + asn_DEF_SizeValueConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SizeValueConfidence_tags_1) + /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_SizeValueConfidence_constr_1, &asn_PER_type_SizeValueConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SizeValueConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Snapshot.c b/src/tmx/Asn_J2735/src/r2020/Snapshot.c new file mode 100644 index 000000000..a4255d50a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Snapshot.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Snapshot.h" + +asn_TYPE_member_t asn_MBR_Snapshot_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "thePosition" + }, + { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct Snapshot, dataSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataSet" + }, +}; +static const int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dataSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { + sizeof(struct Snapshot), + offsetof(struct Snapshot, _asn_ctx), + asn_MAP_Snapshot_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Snapshot_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Snapshot = { + "Snapshot", + "Snapshot", + &asn_OP_SEQUENCE, + asn_DEF_Snapshot_tags_1, + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + asn_DEF_Snapshot_tags_1, /* Same as above */ + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Snapshot_1, + 3, /* Elements count */ + &asn_SPC_Snapshot_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SnapshotDistance.c b/src/tmx/Asn_J2735/src/r2020/SnapshotDistance.c new file mode 100644 index 000000000..299a1f62a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SnapshotDistance.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SnapshotDistance.h" + +asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "distance2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* distance1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* distance2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* speed2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { + sizeof(struct SnapshotDistance), + offsetof(struct SnapshotDistance, _asn_ctx), + asn_MAP_SnapshotDistance_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { + "SnapshotDistance", + "SnapshotDistance", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotDistance_tags_1, + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + asn_DEF_SnapshotDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SnapshotDistance_1, + 4, /* Elements count */ + &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SnapshotTime.c b/src/tmx/Asn_J2735/src/r2020/SnapshotTime.c new file mode 100644 index 000000000..e218861c7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SnapshotTime.c @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SnapshotTime.h" + +asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "time1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "time2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* time1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speed2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* time2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { + sizeof(struct SnapshotTime), + offsetof(struct SnapshotTime, _asn_ctx), + asn_MAP_SnapshotTime_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { + "SnapshotTime", + "SnapshotTime", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotTime_tags_1, + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + asn_DEF_SnapshotTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SnapshotTime_1, + 4, /* Elements count */ + &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpecialVehicleExtensions.c b/src/tmx/Asn_J2735/src/r2020/SpecialVehicleExtensions.c new file mode 100644 index 000000000..092b8f1e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpecialVehicleExtensions.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpecialVehicleExtensions.h" + +asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[] = { + { ATF_POINTER, 3, offsetof(struct SpecialVehicleExtensions, vehicleAlerts), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleAlerts" + }, + { ATF_POINTER, 2, offsetof(struct SpecialVehicleExtensions, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct SpecialVehicleExtensions, trailers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailers" + }, +}; +static const int asn_MAP_SpecialVehicleExtensions_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_SpecialVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpecialVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleAlerts */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* trailers */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1 = { + sizeof(struct SpecialVehicleExtensions), + offsetof(struct SpecialVehicleExtensions, _asn_ctx), + asn_MAP_SpecialVehicleExtensions_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_SpecialVehicleExtensions_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions = { + "SpecialVehicleExtensions", + "SpecialVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SpecialVehicleExtensions_tags_1, + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SpecialVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpecialVehicleExtensions_1, + 3, /* Elements count */ + &asn_SPC_SpecialVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Speed.c b/src/tmx/Asn_J2735/src/r2020/Speed.c new file mode 100644 index 000000000..65fa742d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Speed.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Speed.h" + +int +Speed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Speed_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Speed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Speed = { + "Speed", + "Speed", + &asn_OP_NativeInteger, + asn_DEF_Speed_tags_1, + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + asn_DEF_Speed_tags_1, /* Same as above */ + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Speed_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Speed_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Speed_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedAdvice.c b/src/tmx/Asn_J2735/src/r2020/SpeedAdvice.c new file mode 100644 index 000000000..ad268b584 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedAdvice.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedAdvice.h" + +int +SpeedAdvice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 500L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..500) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { + "SpeedAdvice", + "SpeedAdvice", + &asn_OP_NativeInteger, + asn_DEF_SpeedAdvice_tags_1, + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + asn_DEF_SpeedAdvice_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedAdvice_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedAdvice_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SpeedAdvice_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedConfidence.c b/src/tmx/Asn_J2735/src/r2020/SpeedConfidence.c new file mode 100644 index 000000000..00874768f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec100ms" }, + { 2, 8, "prec10ms" }, + { 3, 7, "prec5ms" }, + { 4, 7, "prec1ms" }, + { 5, 9, "prec0-1ms" }, + { 6, 10, "prec0-05ms" }, + { 7, 10, "prec0-01ms" } +}; +static const unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { + 7, /* prec0-01ms(7) */ + 6, /* prec0-05ms(6) */ + 5, /* prec0-1ms(5) */ + 1, /* prec100ms(1) */ + 2, /* prec10ms(2) */ + 4, /* prec1ms(4) */ + 3, /* prec5ms(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { + asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { + "SpeedConfidence", + "SpeedConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedConfidence_tags_1, + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedLimit.c b/src/tmx/Asn_J2735/src/r2020/SpeedLimit.c new file mode 100644 index 000000000..a92a0c9e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedLimit.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedLimit.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct SpeedLimit__Member__item), + offsetof(struct SpeedLimit__Member__item, _asn_ctx), + offsetof(struct SpeedLimit__Member__item, present), + sizeof(((struct SpeedLimit__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct SpeedLimit__Member), + offsetof(struct SpeedLimit__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { + sizeof(struct SpeedLimit), + offsetof(struct SpeedLimit, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { + "SpeedLimit", + "SpeedLimit", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimit_tags_1, + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimit_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimit_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedLimit_1, + 1, /* Single element */ + &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedLimitList.c b/src/tmx/Asn_J2735/src/r2020/SpeedLimitList.c new file mode 100644 index 000000000..79f2da88d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedLimitList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedLimitList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..9)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegulatorySpeedLimit, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { + sizeof(struct SpeedLimitList), + offsetof(struct SpeedLimitList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { + "SpeedLimitList", + "SpeedLimitList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimitList_tags_1, + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimitList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimitList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedLimitList_1, + 1, /* Single element */ + &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedLimitType.c b/src/tmx/Asn_J2735/src/r2020/SpeedLimitType.c new file mode 100644 index 000000000..594dd4dbd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedLimitType.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedLimitType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 20, "maxSpeedInSchoolZone" }, + { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, + { 3, 26, "maxSpeedInConstructionZone" }, + { 4, 15, "vehicleMinSpeed" }, + { 5, 15, "vehicleMaxSpeed" }, + { 6, 20, "vehicleNightMaxSpeed" }, + { 7, 13, "truckMinSpeed" }, + { 8, 13, "truckMaxSpeed" }, + { 9, 18, "truckNightMaxSpeed" }, + { 10, 28, "vehiclesWithTrailersMinSpeed" }, + { 11, 28, "vehiclesWithTrailersMaxSpeed" }, + { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { + 3, /* maxSpeedInConstructionZone(3) */ + 1, /* maxSpeedInSchoolZone(1) */ + 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ + 8, /* truckMaxSpeed(8) */ + 7, /* truckMinSpeed(7) */ + 9, /* truckNightMaxSpeed(9) */ + 0, /* unknown(0) */ + 5, /* vehicleMaxSpeed(5) */ + 4, /* vehicleMinSpeed(4) */ + 6, /* vehicleNightMaxSpeed(6) */ + 11, /* vehiclesWithTrailersMaxSpeed(11) */ + 10, /* vehiclesWithTrailersMinSpeed(10) */ + 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { + asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ + 13, /* Number of elements in the maps */ + 14, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { + "SpeedLimitType", + "SpeedLimitType", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedLimitType_tags_1, + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitType_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedLimitType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedLimitType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedProfile.c b/src/tmx/Asn_J2735/src/r2020/SpeedProfile.c new file mode 100644 index 000000000..e3b54acf4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedProfile.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedProfile.h" + +asn_TYPE_member_t asn_MBR_SpeedProfile_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedProfile, speedReports), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfileMeasurementList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedReports" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfile_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedProfile_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* speedReports */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1 = { + sizeof(struct SpeedProfile), + offsetof(struct SpeedProfile, _asn_ctx), + asn_MAP_SpeedProfile_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfile = { + "SpeedProfile", + "SpeedProfile", + &asn_OP_SEQUENCE, + asn_DEF_SpeedProfile_tags_1, + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfile_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpeedProfile_1, + 1, /* Elements count */ + &asn_SPC_SpeedProfile_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurement.c b/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurement.c new file mode 100644 index 000000000..5e88ef80b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurement.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedProfileMeasurement.h" + +int +SpeedProfileMeasurement_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 31L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using GrossSpeed, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement = { + "SpeedProfileMeasurement", + "SpeedProfileMeasurement", + &asn_OP_NativeInteger, + asn_DEF_SpeedProfileMeasurement_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurement_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedProfileMeasurement_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedProfileMeasurement_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SpeedProfileMeasurement_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurementList.c b/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurementList.c new file mode 100644 index 000000000..970487df3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedProfileMeasurementList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedProfileMeasurementList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_SpeedProfileMeasurement, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1 = { + sizeof(struct SpeedProfileMeasurementList), + offsetof(struct SpeedProfileMeasurementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList = { + "SpeedProfileMeasurementList", + "SpeedProfileMeasurementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedProfileMeasurementList_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurementList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SpeedProfileMeasurementList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SpeedProfileMeasurementList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_SpeedProfileMeasurementList_1, + 1, /* Single element */ + &asn_SPC_SpeedProfileMeasurementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/r2020/SpeedandHeadingandThrottleConfidence.c new file mode 100644 index 000000000..c8e37ed67 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SpeedandHeadingandThrottleConfidence.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SpeedandHeadingandThrottleConfidence.h" + +asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, heading), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, throttle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttle" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* throttle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 = { + sizeof(struct SpeedandHeadingandThrottleConfidence), + offsetof(struct SpeedandHeadingandThrottleConfidence, _asn_ctx), + asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { + "SpeedandHeadingandThrottleConfidence", + "SpeedandHeadingandThrottleConfidence", + &asn_OP_SEQUENCE, + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SpeedandHeadingandThrottleConfidence_1, + 3, /* Elements count */ + &asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/r2020/StabilityControlStatus.c new file mode 100644 index 000000000..601c40a43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/StabilityControlStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "StabilityControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { + asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { + "StabilityControlStatus", + "StabilityControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_StabilityControlStatus_tags_1, + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_StabilityControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_StabilityControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/StationID.c b/src/tmx/Asn_J2735/src/r2020/StationID.c new file mode 100644 index 000000000..e33e0feda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/StationID.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "StationID.h" + +int +StationID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_StationID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_StationID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StationID = { + "StationID", + "StationID", + &asn_OP_NativeInteger, + asn_DEF_StationID_tags_1, + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + asn_DEF_StationID_tags_1, /* Same as above */ + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_StationID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_StationID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + StationID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_StationID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/r2020/SteeringAxleLubePressure.c new file mode 100644 index 000000000..7923a297e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SteeringAxleLubePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SteeringAxleLubePressure.h" + +int +SteeringAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { + "SteeringAxleLubePressure", + "SteeringAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleLubePressure_tags_1, + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringAxleLubePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringAxleLubePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/r2020/SteeringAxleTemperature.c new file mode 100644 index 000000000..64df8f7db --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SteeringAxleTemperature.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SteeringAxleTemperature.h" + +int +SteeringAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40L && value <= 210L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { + "SteeringAxleTemperature", + "SteeringAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleTemperature_tags_1, + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringAxleTemperature_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringAxleTemperature_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngle.c new file mode 100644 index 000000000..211f193b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngle.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SteeringWheelAngle.h" + +int +SteeringWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -126L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-126..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -126, 127 } /* (-126..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { + "SteeringWheelAngle", + "SteeringWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngle_tags_1, + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngle_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringWheelAngle_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleConfidence.c new file mode 100644 index 000000000..6c63a0ed0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SteeringWheelAngleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "prec2deg" }, + { 2, 8, "prec1deg" }, + { 3, 11, "prec0-02deg" } +}; +static const unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { + 3, /* prec0-02deg(3) */ + 2, /* prec1deg(2) */ + 1, /* prec2deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { + asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { + "SteeringWheelAngleConfidence", + "SteeringWheelAngleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SteeringWheelAngleConfidence_tags_1, + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleRateOfChange.c new file mode 100644 index 000000000..8eee628fb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SteeringWheelAngleRateOfChange.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SteeringWheelAngleRateOfChange.h" + +int +SteeringWheelAngleRateOfChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { + "SteeringWheelAngleRateOfChange", + "SteeringWheelAngleRateOfChange", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SteeringWheelAngleRateOfChange_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SteeringWheelAngleRateOfChange_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SummerTime.c b/src/tmx/Asn_J2735/src/r2020/SummerTime.c new file mode 100644 index 000000000..d47a25ae0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SummerTime.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SummerTime.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SummerTime_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SummerTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { + { 0, 15, "notInSummerTime" }, + { 1, 12, "inSummerTime" } +}; +static const unsigned int asn_MAP_SummerTime_enum2value_1[] = { + 1, /* inSummerTime(1) */ + 0 /* notInSummerTime(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { + asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SummerTime = { + "SummerTime", + "SummerTime", + &asn_OP_NativeEnumerated, + asn_DEF_SummerTime_tags_1, + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + asn_DEF_SummerTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SummerTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SummerTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SummerTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SunSensor.c b/src/tmx/Asn_J2735/src/r2020/SunSensor.c new file mode 100644 index 000000000..b73277035 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SunSensor.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SunSensor.h" + +int +SunSensor_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_SunSensor_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_SunSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SunSensor = { + "SunSensor", + "SunSensor", + &asn_OP_NativeInteger, + asn_DEF_SunSensor_tags_1, + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + asn_DEF_SunSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_SunSensor_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_SunSensor_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SunSensor_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/SupplementalVehicleExtensions.c b/src/tmx/Asn_J2735/src/r2020/SupplementalVehicleExtensions.c new file mode 100644 index 000000000..00a8313c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/SupplementalVehicleExtensions.c @@ -0,0 +1,333 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "SupplementalVehicleExtensions.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_SupplementalVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct SupplementalVehicleExtensions__regional), + offsetof(struct SupplementalVehicleExtensions__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[] = { + { ATF_POINTER, 10, offsetof(struct SupplementalVehicleExtensions, classification), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "classification" + }, + { ATF_POINTER, 9, offsetof(struct SupplementalVehicleExtensions, classDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "classDetails" + }, + { ATF_POINTER, 8, offsetof(struct SupplementalVehicleExtensions, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 7, offsetof(struct SupplementalVehicleExtensions, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherReport, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 6, offsetof(struct SupplementalVehicleExtensions, weatherProbe), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherProbe, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherProbe" + }, + { ATF_POINTER, 5, offsetof(struct SupplementalVehicleExtensions, obstacle), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDetection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obstacle" + }, + { ATF_POINTER, 4, offsetof(struct SupplementalVehicleExtensions, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DisabledVehicle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct SupplementalVehicleExtensions, speedProfile), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfile, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedProfile" + }, + { ATF_POINTER, 2, offsetof(struct SupplementalVehicleExtensions, theRTCM), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMPackage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "theRTCM" + }, + { ATF_POINTER, 1, offsetof(struct SupplementalVehicleExtensions, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_11, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SupplementalVehicleExtensions_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_SupplementalVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SupplementalVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* classification */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* classDetails */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* weatherProbe */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* obstacle */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speedProfile */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* theRTCM */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1 = { + sizeof(struct SupplementalVehicleExtensions), + offsetof(struct SupplementalVehicleExtensions, _asn_ctx), + asn_MAP_SupplementalVehicleExtensions_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_SupplementalVehicleExtensions_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions = { + "SupplementalVehicleExtensions", + "SupplementalVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SupplementalVehicleExtensions_tags_1, + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SupplementalVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_SupplementalVehicleExtensions_1, + 10, /* Elements count */ + &asn_SPC_SupplementalVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TemporaryID.c b/src/tmx/Asn_J2735/src/r2020/TemporaryID.c new file mode 100644 index 000000000..6a1ccb61c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TemporaryID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TemporaryID.h" + +int +TemporaryID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TemporaryID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 4 /* (SIZE(4..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TemporaryID = { + "TemporaryID", + "TemporaryID", + &asn_OP_OCTET_STRING, + asn_DEF_TemporaryID_tags_1, + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + asn_DEF_TemporaryID_tags_1, /* Same as above */ + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TemporaryID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TemporaryID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TemporaryID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TenthSecond.c b/src/tmx/Asn_J2735/src/r2020/TenthSecond.c new file mode 100644 index 000000000..b41390cd3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TenthSecond.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TenthSecond.h" + +int +TenthSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 9L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TenthSecond_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..9) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TenthSecond = { + "TenthSecond", + "TenthSecond", + &asn_OP_NativeInteger, + asn_DEF_TenthSecond_tags_1, + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + asn_DEF_TenthSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TenthSecond_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TenthSecond_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TenthSecond_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TermDistance.c b/src/tmx/Asn_J2735/src/r2020/TermDistance.c new file mode 100644 index 000000000..6e9de5fb2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TermDistance.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TermDistance.h" + +int +TermDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 30000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TermDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..30000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TermDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermDistance = { + "TermDistance", + "TermDistance", + &asn_OP_NativeInteger, + asn_DEF_TermDistance_tags_1, + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + asn_DEF_TermDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TermDistance_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TermDistance_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TermDistance_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TermTime.c b/src/tmx/Asn_J2735/src/r2020/TermTime.c new file mode 100644 index 000000000..ffe08941c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TermTime.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TermTime.h" + +int +TermTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 1800L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TermTime_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..1800) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TermTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermTime = { + "TermTime", + "TermTime", + &asn_OP_NativeInteger, + asn_DEF_TermTime_tags_1, + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + asn_DEF_TermTime_tags_1, /* Same as above */ + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TermTime_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TermTime_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TermTime_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage00.c b/src/tmx/Asn_J2735/src/r2020/TestMessage00.c new file mode 100644 index 000000000..ffeadc578 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage00.c @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage00.h" + +asn_TYPE_member_t asn_MBR_TestMessage00_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage00_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage00_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1 = { + sizeof(struct TestMessage00), + offsetof(struct TestMessage00, _asn_ctx), + asn_MAP_TestMessage00_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage00 = { + "TestMessage00", + "TestMessage00", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage00_tags_1, + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + asn_DEF_TestMessage00_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage00_1, + 2, /* Elements count */ + &asn_SPC_TestMessage00_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage01.c b/src/tmx/Asn_J2735/src/r2020/TestMessage01.c new file mode 100644 index 000000000..6d60abebd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage01.c @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage01.h" + +asn_TYPE_member_t asn_MBR_TestMessage01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityResponse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1 = { + sizeof(struct TestMessage01), + offsetof(struct TestMessage01, _asn_ctx), + asn_MAP_TestMessage01_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage01 = { + "TestMessage01", + "TestMessage01", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage01_tags_1, + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + asn_DEF_TestMessage01_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage01_1, + 2, /* Elements count */ + &asn_SPC_TestMessage01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage02.c b/src/tmx/Asn_J2735/src/r2020/TestMessage02.c new file mode 100644 index 000000000..3912b666c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage02.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage02.h" + +asn_TYPE_member_t asn_MBR_TestMessage02_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityPath, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage02_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage02_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1 = { + sizeof(struct TestMessage02), + offsetof(struct TestMessage02, _asn_ctx), + asn_MAP_TestMessage02_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage02 = { + "TestMessage02", + "TestMessage02", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage02_tags_1, + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + asn_DEF_TestMessage02_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage02_1, + 2, /* Elements count */ + &asn_SPC_TestMessage02_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage03.c b/src/tmx/Asn_J2735/src/r2020/TestMessage03.c new file mode 100644 index 000000000..e3044146f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage03.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TestMessage03.h" + +asn_TYPE_member_t asn_MBR_TestMessage03_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityOperation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage03_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage03_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1 = { + sizeof(struct TestMessage03), + offsetof(struct TestMessage03, _asn_ctx), + asn_MAP_TestMessage03_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage03 = { + "TestMessage03", + "TestMessage03", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage03_tags_1, + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + asn_DEF_TestMessage03_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage03_1, + 2, /* Elements count */ + &asn_SPC_TestMessage03_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage04.c b/src/tmx/Asn_J2735/src/r2020/TestMessage04.c new file mode 100644 index 000000000..03fd4978f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage04.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage04.h" + +asn_TYPE_member_t asn_MBR_TestMessage04_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage04, body), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage04_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage04_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1 = { + sizeof(struct TestMessage04), + offsetof(struct TestMessage04, _asn_ctx), + asn_MAP_TestMessage04_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage04 = { + "TestMessage04", + "TestMessage04", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage04_tags_1, + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + asn_DEF_TestMessage04_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage04_1, + 1, /* Elements count */ + &asn_SPC_TestMessage04_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage05.c b/src/tmx/Asn_J2735/src/r2020/TestMessage05.c new file mode 100644 index 000000000..6772392f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage05.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage05.h" + +asn_TYPE_member_t asn_MBR_TestMessage05_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage05, body), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage05_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage05_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1 = { + sizeof(struct TestMessage05), + offsetof(struct TestMessage05, _asn_ctx), + asn_MAP_TestMessage05_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage05 = { + "TestMessage05", + "TestMessage05", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage05_tags_1, + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + asn_DEF_TestMessage05_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage05_1, + 1, /* Elements count */ + &asn_SPC_TestMessage05_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage06.c b/src/tmx/Asn_J2735/src/r2020/TestMessage06.c new file mode 100644 index 000000000..32354d15a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage06.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage06" + * found in "J2735-TestMessage06.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage06.h" + +asn_TYPE_member_t asn_MBR_TestMessage06_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage06, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage06, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage06, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage06_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage06_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage06_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1 = { + sizeof(struct TestMessage06), + offsetof(struct TestMessage06, _asn_ctx), + asn_MAP_TestMessage06_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage06_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage06 = { + "TestMessage06", + "TestMessage06", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage06_tags_1, + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + asn_DEF_TestMessage06_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage06_1, + 2, /* Elements count */ + &asn_SPC_TestMessage06_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage07.c b/src/tmx/Asn_J2735/src/r2020/TestMessage07.c new file mode 100644 index 000000000..dc3064430 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage07.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage07" + * found in "J2735-TestMessage07.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage07.h" + +asn_TYPE_member_t asn_MBR_TestMessage07_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage07, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage07, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage07_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage07_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1 = { + sizeof(struct TestMessage07), + offsetof(struct TestMessage07, _asn_ctx), + asn_MAP_TestMessage07_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage07_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage07 = { + "TestMessage07", + "TestMessage07", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage07_tags_1, + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + asn_DEF_TestMessage07_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage07_1, + 2, /* Elements count */ + &asn_SPC_TestMessage07_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage08.c b/src/tmx/Asn_J2735/src/r2020/TestMessage08.c new file mode 100644 index 000000000..ebc7729c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage08.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage08" + * found in "J2735-TestMessage08.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage08.h" + +asn_TYPE_member_t asn_MBR_TestMessage08_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage08, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage08, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage08_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage08_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1 = { + sizeof(struct TestMessage08), + offsetof(struct TestMessage08, _asn_ctx), + asn_MAP_TestMessage08_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage08_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage08 = { + "TestMessage08", + "TestMessage08", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage08_tags_1, + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + asn_DEF_TestMessage08_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage08_1, + 2, /* Elements count */ + &asn_SPC_TestMessage08_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage09.c b/src/tmx/Asn_J2735/src/r2020/TestMessage09.c new file mode 100644 index 000000000..5d5e574c3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage09.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage09" + * found in "J2735-TestMessage09.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage09.h" + +asn_TYPE_member_t asn_MBR_TestMessage09_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage09, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage09, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage09_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage09_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1 = { + sizeof(struct TestMessage09), + offsetof(struct TestMessage09, _asn_ctx), + asn_MAP_TestMessage09_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage09_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage09 = { + "TestMessage09", + "TestMessage09", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage09_tags_1, + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + asn_DEF_TestMessage09_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage09_1, + 2, /* Elements count */ + &asn_SPC_TestMessage09_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage10.c b/src/tmx/Asn_J2735/src/r2020/TestMessage10.c new file mode 100644 index 000000000..efea42531 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage10.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage10" + * found in "J2735-TestMessage10.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage10.h" + +asn_TYPE_member_t asn_MBR_TestMessage10_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage10, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage10, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage10_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage10_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1 = { + sizeof(struct TestMessage10), + offsetof(struct TestMessage10, _asn_ctx), + asn_MAP_TestMessage10_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage10_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage10 = { + "TestMessage10", + "TestMessage10", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage10_tags_1, + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + asn_DEF_TestMessage10_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage10_1, + 2, /* Elements count */ + &asn_SPC_TestMessage10_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage11.c b/src/tmx/Asn_J2735/src/r2020/TestMessage11.c new file mode 100644 index 000000000..6a8048c34 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage11.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage11" + * found in "J2735-TestMessage11.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage11.h" + +asn_TYPE_member_t asn_MBR_TestMessage11_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage11, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage11, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage11_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage11_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1 = { + sizeof(struct TestMessage11), + offsetof(struct TestMessage11, _asn_ctx), + asn_MAP_TestMessage11_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage11_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage11 = { + "TestMessage11", + "TestMessage11", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage11_tags_1, + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + asn_DEF_TestMessage11_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage11_1, + 2, /* Elements count */ + &asn_SPC_TestMessage11_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage12.c b/src/tmx/Asn_J2735/src/r2020/TestMessage12.c new file mode 100644 index 000000000..fc2e17766 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage12.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage12" + * found in "J2735-TestMessage12.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage12.h" + +asn_TYPE_member_t asn_MBR_TestMessage12_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage12, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage12, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage12_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage12_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1 = { + sizeof(struct TestMessage12), + offsetof(struct TestMessage12, _asn_ctx), + asn_MAP_TestMessage12_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage12_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage12 = { + "TestMessage12", + "TestMessage12", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage12_tags_1, + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + asn_DEF_TestMessage12_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage12_1, + 2, /* Elements count */ + &asn_SPC_TestMessage12_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage13.c b/src/tmx/Asn_J2735/src/r2020/TestMessage13.c new file mode 100644 index 000000000..f52fa935e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage13.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage13" + * found in "J2735-TestMessage13.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage13.h" + +asn_TYPE_member_t asn_MBR_TestMessage13_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage13, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage13, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage13, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage13_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage13_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1 = { + sizeof(struct TestMessage13), + offsetof(struct TestMessage13, _asn_ctx), + asn_MAP_TestMessage13_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage13_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage13 = { + "TestMessage13", + "TestMessage13", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage13_tags_1, + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + asn_DEF_TestMessage13_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage13_1, + 2, /* Elements count */ + &asn_SPC_TestMessage13_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage14.c b/src/tmx/Asn_J2735/src/r2020/TestMessage14.c new file mode 100644 index 000000000..39c44d08c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage14.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage14" + * found in "J2735-TestMessage14.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage14.h" + +asn_TYPE_member_t asn_MBR_TestMessage14_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage14, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage14, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage14, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage14_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage14_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1 = { + sizeof(struct TestMessage14), + offsetof(struct TestMessage14, _asn_ctx), + asn_MAP_TestMessage14_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage14_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage14 = { + "TestMessage14", + "TestMessage14", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage14_tags_1, + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + asn_DEF_TestMessage14_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage14_1, + 2, /* Elements count */ + &asn_SPC_TestMessage14_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TestMessage15.c b/src/tmx/Asn_J2735/src/r2020/TestMessage15.c new file mode 100644 index 000000000..9460238bc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TestMessage15.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TestMessage15" + * found in "J2735-TestMessage15.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TestMessage15.h" + +asn_TYPE_member_t asn_MBR_TestMessage15_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage15, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage15, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_TestMessage15, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage15_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage15_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage15_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1 = { + sizeof(struct TestMessage15), + offsetof(struct TestMessage15, _asn_ctx), + asn_MAP_TestMessage15_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage15_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage15 = { + "TestMessage15", + "TestMessage15", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage15_tags_1, + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + asn_DEF_TestMessage15_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TestMessage15_1, + 2, /* Elements count */ + &asn_SPC_TestMessage15_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/r2020/ThrottleConfidence.c new file mode 100644 index 000000000..4beebb6a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ThrottleConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ThrottleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "prec10percent" }, + { 2, 12, "prec1percent" }, + { 3, 14, "prec0-5percent" } +}; +static const unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { + 3, /* prec0-5percent(3) */ + 1, /* prec10percent(1) */ + 2, /* prec1percent(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { + asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { + "ThrottleConfidence", + "ThrottleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ThrottleConfidence_tags_1, + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ThrottleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ThrottleConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ThrottlePosition.c b/src/tmx/Asn_J2735/src/r2020/ThrottlePosition.c new file mode 100644 index 000000000..168fa6f5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ThrottlePosition.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ThrottlePosition.h" + +int +ThrottlePosition_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 200L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { + "ThrottlePosition", + "ThrottlePosition", + &asn_OP_NativeInteger, + asn_DEF_ThrottlePosition_tags_1, + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + asn_DEF_ThrottlePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ThrottlePosition_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ThrottlePosition_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ThrottlePosition_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/r2020/TimeChangeDetails.c new file mode 100644 index 000000000..48169bf76 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TimeChangeDetails.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TimeChangeDetails.h" + +asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SPAT_TimeMark, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { + sizeof(struct TimeChangeDetails), + offsetof(struct TimeChangeDetails, _asn_ctx), + asn_MAP_TimeChangeDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { + "TimeChangeDetails", + "TimeChangeDetails", + &asn_OP_SEQUENCE, + asn_DEF_TimeChangeDetails_tags_1, + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TimeChangeDetails_1, + 6, /* Elements count */ + &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TimeConfidence.c b/src/tmx/Asn_J2735/src/r2020/TimeConfidence.c new file mode 100644 index 000000000..ea3960e07 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TimeConfidence.c @@ -0,0 +1,144 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TimeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 12, "time-100-000" }, + { 2, 12, "time-050-000" }, + { 3, 12, "time-020-000" }, + { 4, 12, "time-010-000" }, + { 5, 12, "time-002-000" }, + { 6, 12, "time-001-000" }, + { 7, 12, "time-000-500" }, + { 8, 12, "time-000-200" }, + { 9, 12, "time-000-100" }, + { 10, 12, "time-000-050" }, + { 11, 12, "time-000-020" }, + { 12, 12, "time-000-010" }, + { 13, 12, "time-000-005" }, + { 14, 12, "time-000-002" }, + { 15, 12, "time-000-001" }, + { 16, 14, "time-000-000-5" }, + { 17, 14, "time-000-000-2" }, + { 18, 14, "time-000-000-1" }, + { 19, 15, "time-000-000-05" }, + { 20, 15, "time-000-000-02" }, + { 21, 15, "time-000-000-01" }, + { 22, 16, "time-000-000-005" }, + { 23, 16, "time-000-000-002" }, + { 24, 16, "time-000-000-001" }, + { 25, 18, "time-000-000-000-5" }, + { 26, 18, "time-000-000-000-2" }, + { 27, 18, "time-000-000-000-1" }, + { 28, 19, "time-000-000-000-05" }, + { 29, 19, "time-000-000-000-02" }, + { 30, 19, "time-000-000-000-01" }, + { 31, 20, "time-000-000-000-005" }, + { 32, 20, "time-000-000-000-002" }, + { 33, 20, "time-000-000-000-001" }, + { 34, 22, "time-000-000-000-000-5" }, + { 35, 22, "time-000-000-000-000-2" }, + { 36, 22, "time-000-000-000-000-1" }, + { 37, 23, "time-000-000-000-000-05" }, + { 38, 23, "time-000-000-000-000-02" }, + { 39, 23, "time-000-000-000-000-01" } +}; +static const unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { + 39, /* time-000-000-000-000-01(39) */ + 38, /* time-000-000-000-000-02(38) */ + 37, /* time-000-000-000-000-05(37) */ + 36, /* time-000-000-000-000-1(36) */ + 35, /* time-000-000-000-000-2(35) */ + 34, /* time-000-000-000-000-5(34) */ + 33, /* time-000-000-000-001(33) */ + 32, /* time-000-000-000-002(32) */ + 31, /* time-000-000-000-005(31) */ + 30, /* time-000-000-000-01(30) */ + 29, /* time-000-000-000-02(29) */ + 28, /* time-000-000-000-05(28) */ + 27, /* time-000-000-000-1(27) */ + 26, /* time-000-000-000-2(26) */ + 25, /* time-000-000-000-5(25) */ + 24, /* time-000-000-001(24) */ + 23, /* time-000-000-002(23) */ + 22, /* time-000-000-005(22) */ + 21, /* time-000-000-01(21) */ + 20, /* time-000-000-02(20) */ + 19, /* time-000-000-05(19) */ + 18, /* time-000-000-1(18) */ + 17, /* time-000-000-2(17) */ + 16, /* time-000-000-5(16) */ + 15, /* time-000-001(15) */ + 14, /* time-000-002(14) */ + 13, /* time-000-005(13) */ + 12, /* time-000-010(12) */ + 11, /* time-000-020(11) */ + 10, /* time-000-050(10) */ + 9, /* time-000-100(9) */ + 8, /* time-000-200(8) */ + 7, /* time-000-500(7) */ + 6, /* time-001-000(6) */ + 5, /* time-002-000(5) */ + 4, /* time-010-000(4) */ + 3, /* time-020-000(3) */ + 2, /* time-050-000(2) */ + 1, /* time-100-000(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { + asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 40, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { + "TimeConfidence", + "TimeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_TimeConfidence_tags_1, + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/r2020/TimeIntervalConfidence.c new file mode 100644 index 000000000..b248faaa3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TimeIntervalConfidence.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TimeIntervalConfidence.h" + +int +TimeIntervalConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { + "TimeIntervalConfidence", + "TimeIntervalConfidence", + &asn_OP_NativeInteger, + asn_DEF_TimeIntervalConfidence_tags_1, + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeIntervalConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeIntervalConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeIntervalConfidence_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TimeOffset.c b/src/tmx/Asn_J2735/src/r2020/TimeOffset.c new file mode 100644 index 000000000..2471acc99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TimeOffset.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TimeOffset.h" + +int +TimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeOffset_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeOffset = { + "TimeOffset", + "TimeOffset", + &asn_OP_NativeInteger, + asn_DEF_TimeOffset_tags_1, + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + asn_DEF_TimeOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeOffset_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TimeRemaining.c b/src/tmx/Asn_J2735/src/r2020/TimeRemaining.c new file mode 100644 index 000000000..30b9cd348 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TimeRemaining.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TimeRemaining.h" + +int +TimeRemaining_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 9001L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..9001) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { + "TimeRemaining", + "TimeRemaining", + &asn_OP_NativeInteger, + asn_DEF_TimeRemaining_tags_1, + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + asn_DEF_TimeRemaining_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TimeRemaining_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TimeRemaining_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TimeRemaining_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TireData.c b/src/tmx/Asn_J2735/src/r2020/TireData.c new file mode 100644 index 000000000..96a956878 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TireData.c @@ -0,0 +1,176 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TireData.h" + +asn_TYPE_member_t asn_MBR_TireData_1[] = { + { ATF_POINTER, 7, offsetof(struct TireData, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLocation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 6, offsetof(struct TireData, pressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pressure" + }, + { ATF_POINTER, 5, offsetof(struct TireData, temp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireTemp, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "temp" + }, + { ATF_POINTER, 4, offsetof(struct TireData, wheelSensorStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelSensorStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelSensorStatus" + }, + { ATF_POINTER, 3, offsetof(struct TireData, wheelEndElectFault), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelEndElectFault, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheelEndElectFault" + }, + { ATF_POINTER, 2, offsetof(struct TireData, leakageRate), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLeakageRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "leakageRate" + }, + { ATF_POINTER, 1, offsetof(struct TireData, detection), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressureThresholdDetection, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "detection" + }, +}; +static const int asn_MAP_TireData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_TireData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TireData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1 = { + sizeof(struct TireData), + offsetof(struct TireData, _asn_ctx), + asn_MAP_TireData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_TireData_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TireData = { + "TireData", + "TireData", + &asn_OP_SEQUENCE, + asn_DEF_TireData_tags_1, + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + asn_DEF_TireData_tags_1, /* Same as above */ + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TireData_1, + 7, /* Elements count */ + &asn_SPC_TireData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TireDataList.c b/src/tmx/Asn_J2735/src/r2020/TireDataList.c new file mode 100644 index 000000000..354908273 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TireDataList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TireDataList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireDataList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireDataList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TireDataList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TireData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TireDataList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1 = { + sizeof(struct TireDataList), + offsetof(struct TireDataList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TireDataList = { + "TireDataList", + "TireDataList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TireDataList_tags_1, + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + asn_DEF_TireDataList_tags_1, /* Same as above */ + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireDataList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireDataList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TireDataList_1, + 1, /* Single element */ + &asn_SPC_TireDataList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TireLeakageRate.c b/src/tmx/Asn_J2735/src/r2020/TireLeakageRate.c new file mode 100644 index 000000000..a26f0103e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TireLeakageRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TireLeakageRate.h" + +int +TireLeakageRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { + "TireLeakageRate", + "TireLeakageRate", + &asn_OP_NativeInteger, + asn_DEF_TireLeakageRate_tags_1, + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + asn_DEF_TireLeakageRate_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireLeakageRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireLeakageRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireLeakageRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TireLocation.c b/src/tmx/Asn_J2735/src/r2020/TireLocation.c new file mode 100644 index 000000000..764187a22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TireLocation.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TireLocation.h" + +int +TireLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLocation = { + "TireLocation", + "TireLocation", + &asn_OP_NativeInteger, + asn_DEF_TireLocation_tags_1, + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + asn_DEF_TireLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireLocation_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireLocation_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireLocation_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TirePressure.c b/src/tmx/Asn_J2735/src/r2020/TirePressure.c new file mode 100644 index 000000000..2a593eddc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TirePressure.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TirePressure.h" + +int +TirePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 250L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TirePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TirePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressure = { + "TirePressure", + "TirePressure", + &asn_OP_NativeInteger, + asn_DEF_TirePressure_tags_1, + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + asn_DEF_TirePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TirePressure_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TirePressure_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TirePressure_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/r2020/TirePressureThresholdDetection.c new file mode 100644 index 000000000..24e168b59 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TirePressureThresholdDetection.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TirePressureThresholdDetection.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { + { 0, 6, "noData" }, + { 1, 12, "overPressure" }, + { 2, 17, "noWarningPressure" }, + { 3, 13, "underPressure" }, + { 4, 20, "extremeUnderPressure" }, + { 5, 9, "undefined" }, + { 6, 14, "errorIndicator" }, + { 7, 12, "notAvailable" } +}; +static const unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { + 6, /* errorIndicator(6) */ + 4, /* extremeUnderPressure(4) */ + 0, /* noData(0) */ + 2, /* noWarningPressure(2) */ + 7, /* notAvailable(7) */ + 1, /* overPressure(1) */ + 5, /* undefined(5) */ + 3 /* underPressure(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { + asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { + "TirePressureThresholdDetection", + "TirePressureThresholdDetection", + &asn_OP_NativeEnumerated, + asn_DEF_TirePressureThresholdDetection_tags_1, + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TirePressureThresholdDetection_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TirePressureThresholdDetection_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TireTemp.c b/src/tmx/Asn_J2735/src/r2020/TireTemp.c new file mode 100644 index 000000000..8b7e21c9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TireTemp.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TireTemp.h" + +int +TireTemp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8736L && value <= 55519L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TireTemp_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8736..55519) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TireTemp_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -8736, 55519 } /* (-8736..55519) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireTemp = { + "TireTemp", + "TireTemp", + &asn_OP_NativeInteger, + asn_DEF_TireTemp_tags_1, + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + asn_DEF_TireTemp_tags_1, /* Same as above */ + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TireTemp_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TireTemp_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TireTemp_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TractionControlStatus.c b/src/tmx/Asn_J2735/src/r2020/TractionControlStatus.c new file mode 100644 index 000000000..919267c9c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TractionControlStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TractionControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TractionControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_TractionControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1 = { + asn_MAP_TractionControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TractionControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TractionControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TractionControlStatus = { + "TractionControlStatus", + "TractionControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_TractionControlStatus_tags_1, + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + asn_DEF_TractionControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TractionControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TractionControlStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TractionControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlBounds.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlBounds.c new file mode 100644 index 000000000..f69a96226 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlBounds.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlBounds.h" + +static int +memb_offsets_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 3)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_offsets_constr_5 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +static asn_per_constraints_t asn_PER_type_offsets_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_offsets_constr_5 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +static asn_per_constraints_t asn_PER_memb_offsets_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_offsets_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_OffsetPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_offsets_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_offsets_specs_5 = { + sizeof(struct TrafficControlBounds__offsets), + offsetof(struct TrafficControlBounds__offsets, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsets_5 = { + "offsets", + "offsets", + &asn_OP_SEQUENCE_OF, + asn_DEF_offsets_tags_5, + sizeof(asn_DEF_offsets_tags_5) + /sizeof(asn_DEF_offsets_tags_5[0]) - 1, /* 1 */ + asn_DEF_offsets_tags_5, /* Same as above */ + sizeof(asn_DEF_offsets_tags_5) + /sizeof(asn_DEF_offsets_tags_5[0]), /* 2 */ + { &asn_OER_type_offsets_constr_5, &asn_PER_type_offsets_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_offsets_5, + 1, /* Single element */ + &asn_SPC_offsets_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, oldest), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "oldest" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflon), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflon" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflat" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, offsets), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_offsets_5, + 0, + { &asn_OER_memb_offsets_constr_5, &asn_PER_memb_offsets_constr_5, memb_offsets_constraint_1 }, + 0, 0, /* No default value */ + "offsets" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlBounds_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlBounds_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* oldest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reflon */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reflat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offsets */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1 = { + sizeof(struct TrafficControlBounds), + offsetof(struct TrafficControlBounds, _asn_ctx), + asn_MAP_TrafficControlBounds_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds = { + "TrafficControlBounds", + "TrafficControlBounds", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlBounds_tags_1, + sizeof(asn_DEF_TrafficControlBounds_tags_1) + /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlBounds_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlBounds_tags_1) + /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlBounds_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlBounds_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlDetail.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlDetail.c new file mode 100644 index 000000000..f3e78883a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlDetail.c @@ -0,0 +1,1053 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlDetail.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static int +memb_signal_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_latperm_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 2)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minhdwy_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehmass_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehheight_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehlength_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehaxles_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 2 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minvehocc_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxplatoonsize_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minplatoonhdwy_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + + +static asn_oer_constraints_t asn_OER_type_closed_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_closed_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_chains_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_chains_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_direction_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_direction_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_lataffinity_constr_21 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_lataffinity_constr_21 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_Member_constr_25 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_Member_constr_25 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_latperm_constr_24 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +static asn_per_constraints_t asn_PER_type_latperm_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_parking_constr_30 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_parking_constr_30 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_signal_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_signal_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_latperm_constr_24 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +static asn_per_constraints_t asn_PER_memb_latperm_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; + +static asn_oer_constraints_t asn_OER_memb_minspeed_constr_34 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minspeed_constr_34 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxspeed_constr_35 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxspeed_constr_35 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minhdwy_constr_36 CC_NOTUSED = { + { 2, 1 } /* (0..2047) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minhdwy_constr_36 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehmass_constr_37 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehmass_constr_37 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehheight_constr_38 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehheight_constr_38 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehwidth_constr_39 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehwidth_constr_39 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehlength_constr_40 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehlength_constr_40 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehaxles_constr_41 CC_NOTUSED = { + { 1, 1 } /* (2..15) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehaxles_constr_41 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 2, 15 } /* (2..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minvehocc_constr_42 CC_NOTUSED = { + { 1, 1 } /* (1..15) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minvehocc_constr_42 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { + { 1, 1 } /* (1..63) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (1..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { + { 2, 1 } /* (0..2047) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; + +static asn_oer_constraints_t asn_OER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; + asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 21 } /* (0..21,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_closed_value2enum_7[] = { + { 0, 4, "open" }, + { 1, 6, "notopen" }, + { 2, 9, "taperleft" }, + { 3, 10, "taperright" }, + { 4, 8, "openleft" }, + { 5, 9, "openright" } +}; +static const unsigned int asn_MAP_closed_enum2value_7[] = { + 1, /* notopen(1) */ + 0, /* open(0) */ + 4, /* openleft(4) */ + 5, /* openright(5) */ + 2, /* taperleft(2) */ + 3 /* taperright(3) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_closed_specs_7 = { + asn_MAP_closed_value2enum_7, /* "tag" => N; sorted by tag */ + asn_MAP_closed_enum2value_7, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_closed_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_closed_7 = { + "closed", + "closed", + &asn_OP_NativeEnumerated, + asn_DEF_closed_tags_7, + sizeof(asn_DEF_closed_tags_7) + /sizeof(asn_DEF_closed_tags_7[0]) - 1, /* 1 */ + asn_DEF_closed_tags_7, /* Same as above */ + sizeof(asn_DEF_closed_tags_7) + /sizeof(asn_DEF_closed_tags_7[0]), /* 2 */ + { &asn_OER_type_closed_constr_7, &asn_PER_type_closed_constr_7, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_closed_specs_7 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_14[] = { + { 0, 2, "no" }, + { 1, 9, "permitted" }, + { 2, 8, "required" } +}; +static const unsigned int asn_MAP_chains_enum2value_14[] = { + 0, /* no(0) */ + 1, /* permitted(1) */ + 2 /* required(2) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_chains_specs_14 = { + asn_MAP_chains_value2enum_14, /* "tag" => N; sorted by tag */ + asn_MAP_chains_enum2value_14, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_chains_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_chains_14 = { + "chains", + "chains", + &asn_OP_NativeEnumerated, + asn_DEF_chains_tags_14, + sizeof(asn_DEF_chains_tags_14) + /sizeof(asn_DEF_chains_tags_14[0]) - 1, /* 1 */ + asn_DEF_chains_tags_14, /* Same as above */ + sizeof(asn_DEF_chains_tags_14) + /sizeof(asn_DEF_chains_tags_14[0]), /* 2 */ + { &asn_OER_type_chains_constr_14, &asn_PER_type_chains_constr_14, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_chains_specs_14 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_18[] = { + { 0, 7, "forward" }, + { 1, 7, "reverse" } +}; +static const unsigned int asn_MAP_direction_enum2value_18[] = { + 0, /* forward(0) */ + 1 /* reverse(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_direction_specs_18 = { + asn_MAP_direction_value2enum_18, /* "tag" => N; sorted by tag */ + asn_MAP_direction_enum2value_18, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_direction_tags_18[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_direction_18 = { + "direction", + "direction", + &asn_OP_NativeEnumerated, + asn_DEF_direction_tags_18, + sizeof(asn_DEF_direction_tags_18) + /sizeof(asn_DEF_direction_tags_18[0]) - 1, /* 1 */ + asn_DEF_direction_tags_18, /* Same as above */ + sizeof(asn_DEF_direction_tags_18) + /sizeof(asn_DEF_direction_tags_18[0]), /* 2 */ + { &asn_OER_type_direction_constr_18, &asn_PER_type_direction_constr_18, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_direction_specs_18 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_21[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_lataffinity_enum2value_21[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_21 = { + asn_MAP_lataffinity_value2enum_21, /* "tag" => N; sorted by tag */ + asn_MAP_lataffinity_enum2value_21, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_lataffinity_tags_21[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_lataffinity_21 = { + "lataffinity", + "lataffinity", + &asn_OP_NativeEnumerated, + asn_DEF_lataffinity_tags_21, + sizeof(asn_DEF_lataffinity_tags_21) + /sizeof(asn_DEF_lataffinity_tags_21[0]) - 1, /* 1 */ + asn_DEF_lataffinity_tags_21, /* Same as above */ + sizeof(asn_DEF_lataffinity_tags_21) + /sizeof(asn_DEF_lataffinity_tags_21[0]), /* 2 */ + { &asn_OER_type_lataffinity_constr_21, &asn_PER_type_lataffinity_constr_21, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_lataffinity_specs_21 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_Member_value2enum_25[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_Member_enum2value_25[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Member_specs_25 = { + asn_MAP_Member_value2enum_25, /* "tag" => N; sorted by tag */ + asn_MAP_Member_enum2value_25, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_25 = { + "ENUMERATED", + "ENUMERATED", + &asn_OP_NativeEnumerated, + asn_DEF_Member_tags_25, + sizeof(asn_DEF_Member_tags_25) + /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ + asn_DEF_Member_tags_25, /* Same as above */ + sizeof(asn_DEF_Member_tags_25) + /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ + { &asn_OER_type_Member_constr_25, &asn_PER_type_Member_constr_25, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Member_specs_25 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_latperm_24[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_Member_25, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_latperm_tags_24[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_latperm_specs_24 = { + sizeof(struct TrafficControlDetail__latperm), + offsetof(struct TrafficControlDetail__latperm, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_latperm_24 = { + "latperm", + "latperm", + &asn_OP_SEQUENCE_OF, + asn_DEF_latperm_tags_24, + sizeof(asn_DEF_latperm_tags_24) + /sizeof(asn_DEF_latperm_tags_24[0]) - 1, /* 1 */ + asn_DEF_latperm_tags_24, /* Same as above */ + sizeof(asn_DEF_latperm_tags_24) + /sizeof(asn_DEF_latperm_tags_24[0]), /* 2 */ + { &asn_OER_type_latperm_constr_24, &asn_PER_type_latperm_constr_24, SEQUENCE_OF_constraint }, + asn_MBR_latperm_24, + 1, /* Single element */ + &asn_SPC_latperm_specs_24 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_30[] = { + { 0, 2, "no" }, + { 1, 8, "parallel" }, + { 2, 6, "angled" } +}; +static const unsigned int asn_MAP_parking_enum2value_30[] = { + 2, /* angled(2) */ + 0, /* no(0) */ + 1 /* parallel(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_parking_specs_30 = { + asn_MAP_parking_value2enum_30, /* "tag" => N; sorted by tag */ + asn_MAP_parking_enum2value_30, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_parking_tags_30[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_parking_30 = { + "parking", + "parking", + &asn_OP_NativeEnumerated, + asn_DEF_parking_tags_30, + sizeof(asn_DEF_parking_tags_30) + /sizeof(asn_DEF_parking_tags_30[0]) - 1, /* 1 */ + asn_DEF_parking_tags_30, /* Same as above */ + sizeof(asn_DEF_parking_tags_30) + /sizeof(asn_DEF_parking_tags_30[0]), /* 2 */ + { &asn_OER_type_parking_constr_30, &asn_PER_type_parking_constr_30, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_parking_specs_30 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.signal), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { &asn_OER_memb_signal_constr_2, &asn_PER_memb_signal_constr_2, memb_signal_constraint_1 }, + 0, 0, /* No default value */ + "signal" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.stop), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stop" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.yield), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yield" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.notowing), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "notowing" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.restricted), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "restricted" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.closed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_closed_7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "closed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.chains), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_chains_14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "chains" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.direction), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_direction_18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.lataffinity), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_lataffinity_21, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lataffinity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.latperm), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_latperm_24, + 0, + { &asn_OER_memb_latperm_constr_24, &asn_PER_memb_latperm_constr_24, memb_latperm_constraint_1 }, + 0, 0, /* No default value */ + "latperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_parking_30, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "parking" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minspeed), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minspeed_constr_34, &asn_PER_memb_minspeed_constr_34, memb_minspeed_constraint_1 }, + 0, 0, /* No default value */ + "minspeed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxspeed), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxspeed_constr_35, &asn_PER_memb_maxspeed_constr_35, memb_maxspeed_constraint_1 }, + 0, 0, /* No default value */ + "maxspeed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minhdwy), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minhdwy_constr_36, &asn_PER_memb_minhdwy_constr_36, memb_minhdwy_constraint_1 }, + 0, 0, /* No default value */ + "minhdwy" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehmass), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehmass_constr_37, &asn_PER_memb_maxvehmass_constr_37, memb_maxvehmass_constraint_1 }, + 0, 0, /* No default value */ + "maxvehmass" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehheight), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehheight_constr_38, &asn_PER_memb_maxvehheight_constr_38, memb_maxvehheight_constraint_1 }, + 0, 0, /* No default value */ + "maxvehheight" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehwidth), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehwidth_constr_39, &asn_PER_memb_maxvehwidth_constr_39, memb_maxvehwidth_constraint_1 }, + 0, 0, /* No default value */ + "maxvehwidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehlength), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehlength_constr_40, &asn_PER_memb_maxvehlength_constr_40, memb_maxvehlength_constraint_1 }, + 0, 0, /* No default value */ + "maxvehlength" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehaxles), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehaxles_constr_41, &asn_PER_memb_maxvehaxles_constr_41, memb_maxvehaxles_constraint_1 }, + 0, 0, /* No default value */ + "maxvehaxles" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minvehocc), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minvehocc_constr_42, &asn_PER_memb_minvehocc_constr_42, memb_minvehocc_constraint_1 }, + 0, 0, /* No default value */ + "minvehocc" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxplatoonsize), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxplatoonsize_constr_43, &asn_PER_memb_maxplatoonsize_constr_43, memb_maxplatoonsize_constraint_1 }, + 0, 0, /* No default value */ + "maxplatoonsize" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minplatoonhdwy), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minplatoonhdwy_constr_44, &asn_PER_memb_minplatoonhdwy_constr_44, memb_minplatoonhdwy_constraint_1 }, + 0, 0, /* No default value */ + "minplatoonhdwy" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlDetail_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* signal */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* stop */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yield */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* notowing */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* restricted */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* chains */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* lataffinity */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* latperm */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* parking */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* minspeed */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* maxspeed */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* minhdwy */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* maxvehmass */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* maxvehheight */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* maxvehwidth */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* maxvehlength */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* maxvehaxles */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* minvehocc */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* maxplatoonsize */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* minplatoonhdwy */ +}; + asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1 = { + sizeof(struct TrafficControlDetail), + offsetof(struct TrafficControlDetail, _asn_ctx), + offsetof(struct TrafficControlDetail, present), + sizeof(((struct TrafficControlDetail *)0)->present), + asn_MAP_TrafficControlDetail_tag2el_1, + 22, /* Count of tags in the map */ + 0, 0, + 22 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail = { + "TrafficControlDetail", + "TrafficControlDetail", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlDetail_constr_1, &asn_PER_type_TrafficControlDetail_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlDetail_1, + 22, /* Elements count */ + &asn_SPC_TrafficControlDetail_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlGeometry.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlGeometry.c new file mode 100644 index 000000000..7ed724ff0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlGeometry.c @@ -0,0 +1,372 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlGeometry.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_proj_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_datum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_refwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_heading_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 3599)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_nodes_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 255)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_nodes_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_nodes_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_proj_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_proj_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_datum_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_datum_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_refwidth_constr_8 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_refwidth_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_heading_constr_9 CC_NOTUSED = { + { 2, 1 } /* (0..3599) */, + -1}; +static asn_per_constraints_t asn_PER_memb_heading_constr_9 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 3599 } /* (0..3599) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_nodes_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_nodes_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_nodes_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathNode, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_nodes_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_nodes_specs_10 = { + sizeof(struct TrafficControlGeometry__nodes), + offsetof(struct TrafficControlGeometry__nodes, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_nodes_10 = { + "nodes", + "nodes", + &asn_OP_SEQUENCE_OF, + asn_DEF_nodes_tags_10, + sizeof(asn_DEF_nodes_tags_10) + /sizeof(asn_DEF_nodes_tags_10[0]) - 1, /* 1 */ + asn_DEF_nodes_tags_10, /* Same as above */ + sizeof(asn_DEF_nodes_tags_10) + /sizeof(asn_DEF_nodes_tags_10[0]), /* 2 */ + { &asn_OER_type_nodes_constr_10, &asn_PER_type_nodes_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_nodes_10, + 1, /* Single element */ + &asn_SPC_nodes_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, proj), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_proj_constr_2, &asn_PER_memb_proj_constr_2, memb_proj_constraint_1 }, + 0, 0, /* No default value */ + "proj" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, datum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_datum_constr_3, &asn_PER_memb_datum_constr_3, memb_datum_constraint_1 }, + 0, 0, /* No default value */ + "datum" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reftime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reftime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflon" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflat), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflat" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, refelv), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refelv" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlGeometry, refwidth), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_refwidth_constr_8, &asn_PER_memb_refwidth_constr_8, memb_refwidth_constraint_1 }, + 0, 0, /* No default value */ + "refwidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_heading_constr_9, &asn_PER_memb_heading_constr_9, memb_heading_constraint_1 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, nodes), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_nodes_10, + 0, + { &asn_OER_memb_nodes_constr_10, &asn_PER_memb_nodes_constr_10, memb_nodes_constraint_1 }, + 0, 0, /* No default value */ + "nodes" + }, +}; +static const int asn_MAP_TrafficControlGeometry_oms_1[] = { 6 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* proj */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* datum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reftime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* reflon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* reflat */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refelv */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refwidth */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* nodes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1 = { + sizeof(struct TrafficControlGeometry), + offsetof(struct TrafficControlGeometry, _asn_ctx), + asn_MAP_TrafficControlGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_TrafficControlGeometry_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry = { + "TrafficControlGeometry", + "TrafficControlGeometry", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlGeometry_tags_1, + sizeof(asn_DEF_TrafficControlGeometry_tags_1) + /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlGeometry_tags_1) + /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlGeometry_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlGeometry_specs_1 /* Additional specs */ +}; diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlMessage.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlMessage.c new file mode 100644 index 000000000..23100a8f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlMessage.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlMessage.h" + +static asn_oer_constraints_t asn_OER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.reserved), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reserved" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.tcmV01), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlMessageV01, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tcmV01" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcmV01 */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1 = { + sizeof(struct TrafficControlMessage), + offsetof(struct TrafficControlMessage, _asn_ctx), + offsetof(struct TrafficControlMessage, present), + sizeof(((struct TrafficControlMessage *)0)->present), + asn_MAP_TrafficControlMessage_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage = { + "TrafficControlMessage", + "TrafficControlMessage", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlMessage_constr_1, &asn_PER_type_TrafficControlMessage_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlMessage_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlMessageV01.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlMessageV01.c new file mode 100644 index 000000000..55193d392 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlMessageV01.c @@ -0,0 +1,231 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlMessageV01.h" + +static int +memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msgtot_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msgnum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_msgtot_constr_4 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_msgtot_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_msgnum_constr_5 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_msgnum_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqid), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reqid" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqseq), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, + 0, 0, /* No default value */ + "reqseq" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgtot), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_msgtot_constr_4, &asn_PER_memb_msgtot_constr_4, memb_msgtot_constraint_1 }, + 0, 0, /* No default value */ + "msgtot" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgnum), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_msgnum_constr_5, &asn_PER_memb_msgnum_constr_5, memb_msgnum_constraint_1 }, + 0, 0, /* No default value */ + "msgnum" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, id), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id128b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, updated), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "updated" + }, + { ATF_POINTER, 3, offsetof(struct TrafficControlMessageV01, package), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlPackage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "package" + }, + { ATF_POINTER, 2, offsetof(struct TrafficControlMessageV01, params), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "params" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlMessageV01, geometry), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlGeometry, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "geometry" + }, +}; +static const int asn_MAP_TrafficControlMessageV01_oms_1[] = { 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlMessageV01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessageV01_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 3 }, /* reqseq */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 2 }, /* msgtot */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 1 }, /* msgnum */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 5, -3, 0 }, /* updated */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, 0, 1 }, /* reqid */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 6, 0, 0 }, /* package */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 7, 0, 0 }, /* params */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 8, 0, 0 } /* geometry */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1 = { + sizeof(struct TrafficControlMessageV01), + offsetof(struct TrafficControlMessageV01, _asn_ctx), + asn_MAP_TrafficControlMessageV01_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_TrafficControlMessageV01_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01 = { + "TrafficControlMessageV01", + "TrafficControlMessageV01", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlMessageV01_tags_1, + sizeof(asn_DEF_TrafficControlMessageV01_tags_1) + /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlMessageV01_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlMessageV01_tags_1) + /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlMessageV01_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlMessageV01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlPackage.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlPackage.c new file mode 100644 index 000000000..882463f7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlPackage.c @@ -0,0 +1,189 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlPackage.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_label_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 63) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_tcids_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_tcids_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_tcids_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_label_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_label_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_tcids_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_tcids_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_tcids_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id128b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_tcids_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_tcids_specs_3 = { + sizeof(struct TrafficControlPackage__tcids), + offsetof(struct TrafficControlPackage__tcids, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_tcids_3 = { + "tcids", + "tcids", + &asn_OP_SEQUENCE_OF, + asn_DEF_tcids_tags_3, + sizeof(asn_DEF_tcids_tags_3) + /sizeof(asn_DEF_tcids_tags_3[0]) - 1, /* 1 */ + asn_DEF_tcids_tags_3, /* Same as above */ + sizeof(asn_DEF_tcids_tags_3) + /sizeof(asn_DEF_tcids_tags_3[0]), /* 2 */ + { &asn_OER_type_tcids_constr_3, &asn_PER_type_tcids_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_tcids_3, + 1, /* Single element */ + &asn_SPC_tcids_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct TrafficControlPackage, label), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_label_constr_2, &asn_PER_memb_label_constr_2, memb_label_constraint_1 }, + 0, 0, /* No default value */ + "label" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPackage, tcids), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_tcids_3, + 0, + { &asn_OER_memb_tcids_constr_3, &asn_PER_memb_tcids_constr_3, memb_tcids_constraint_1 }, + 0, 0, /* No default value */ + "tcids" + }, +}; +static const int asn_MAP_TrafficControlPackage_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* label */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcids */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1 = { + sizeof(struct TrafficControlPackage), + offsetof(struct TrafficControlPackage, _asn_ctx), + asn_MAP_TrafficControlPackage_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TrafficControlPackage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage = { + "TrafficControlPackage", + "TrafficControlPackage", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlPackage_tags_1, + sizeof(asn_DEF_TrafficControlPackage_tags_1) + /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlPackage_tags_1) + /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlPackage_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlParams.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlParams.c new file mode 100644 index 000000000..59ec71b5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlParams.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlParams.h" + +static int +memb_vclasses_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 255)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_vclasses_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_vclasses_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_vclasses_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_vclasses_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_vclasses_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_TrafficControlVehClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_vclasses_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_vclasses_specs_2 = { + sizeof(struct TrafficControlParams__vclasses), + offsetof(struct TrafficControlParams__vclasses, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vclasses_2 = { + "vclasses", + "vclasses", + &asn_OP_SEQUENCE_OF, + asn_DEF_vclasses_tags_2, + sizeof(asn_DEF_vclasses_tags_2) + /sizeof(asn_DEF_vclasses_tags_2[0]) - 1, /* 1 */ + asn_DEF_vclasses_tags_2, /* Same as above */ + sizeof(asn_DEF_vclasses_tags_2) + /sizeof(asn_DEF_vclasses_tags_2[0]), /* 2 */ + { &asn_OER_type_vclasses_constr_2, &asn_PER_type_vclasses_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_vclasses_2, + 1, /* Single element */ + &asn_SPC_vclasses_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlParams_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, vclasses), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_vclasses_2, + 0, + { &asn_OER_memb_vclasses_constr_2, &asn_PER_memb_vclasses_constr_2, memb_vclasses_constraint_1 }, + 0, 0, /* No default value */ + "vclasses" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, schedule), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlSchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "schedule" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, regulatory), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regulatory" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, detail), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlDetail, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detail" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlParams_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlParams_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vclasses */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* schedule */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* regulatory */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* detail */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1 = { + sizeof(struct TrafficControlParams), + offsetof(struct TrafficControlParams, _asn_ctx), + asn_MAP_TrafficControlParams_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlParams = { + "TrafficControlParams", + "TrafficControlParams", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlParams_tags_1, + sizeof(asn_DEF_TrafficControlParams_tags_1) + /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlParams_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlParams_tags_1) + /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlParams_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlParams_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlPathPart.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlPathPart.c new file mode 100644 index 000000000..d42958adf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlPathPart.c @@ -0,0 +1,265 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlPathPart.h" + +static int +memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_updated_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathindex_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_points_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 120)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_points_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..120)) */}; +static asn_per_constraints_t asn_PER_type_points_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_2 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +static asn_per_constraints_t asn_PER_memb_id_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_updated_constr_3 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_updated_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_pathindex_constr_4 CC_NOTUSED = { + { 1, 1 } /* (1..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_pathindex_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 127 } /* (1..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_points_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..120)) */}; +static asn_per_constraints_t asn_PER_memb_points_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_points_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Point, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_points_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_points_specs_5 = { + sizeof(struct TrafficControlPathPart__points), + offsetof(struct TrafficControlPathPart__points, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_points_5 = { + "points", + "points", + &asn_OP_SEQUENCE_OF, + asn_DEF_points_tags_5, + sizeof(asn_DEF_points_tags_5) + /sizeof(asn_DEF_points_tags_5[0]) - 1, /* 1 */ + asn_DEF_points_tags_5, /* Same as above */ + sizeof(asn_DEF_points_tags_5) + /sizeof(asn_DEF_points_tags_5[0]), /* 2 */ + { &asn_OER_type_points_constr_5, &asn_PER_type_points_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_points_5, + 1, /* Single element */ + &asn_SPC_points_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_TrafficControlPathPart_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { &asn_OER_memb_id_constr_2, &asn_PER_memb_id_constr_2, memb_id_constraint_1 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, updated), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_updated_constr_3, &asn_PER_memb_updated_constr_3, memb_updated_constraint_1 }, + 0, 0, /* No default value */ + "updated" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, pathindex), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_pathindex_constr_4, &asn_PER_memb_pathindex_constr_4, memb_pathindex_constraint_1 }, + 0, 0, /* No default value */ + "pathindex" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, points), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_points_5, + 0, + { &asn_OER_memb_points_constr_5, &asn_PER_memb_points_constr_5, memb_points_constraint_1 }, + 0, 0, /* No default value */ + "points" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlPathPart_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPathPart_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* updated */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathindex */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* points */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPathPart_specs_1 = { + sizeof(struct TrafficControlPathPart), + offsetof(struct TrafficControlPathPart, _asn_ctx), + asn_MAP_TrafficControlPathPart_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart = { + "TrafficControlPathPart", + "TrafficControlPathPart", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlPathPart_tags_1, + sizeof(asn_DEF_TrafficControlPathPart_tags_1) + /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlPathPart_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlPathPart_tags_1) + /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlPathPart_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlPathPart_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlRequest.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlRequest.c new file mode 100644 index 000000000..0807baa01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlRequest.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlRequest.h" + +static asn_oer_constraints_t asn_OER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.reserved), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reserved" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.tcrV01), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlRequestV01, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tcrV01" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcrV01 */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1 = { + sizeof(struct TrafficControlRequest), + offsetof(struct TrafficControlRequest, _asn_ctx), + offsetof(struct TrafficControlRequest, present), + sizeof(((struct TrafficControlRequest *)0)->present), + asn_MAP_TrafficControlRequest_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest = { + "TrafficControlRequest", + "TrafficControlRequest", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlRequest_constr_1, &asn_PER_type_TrafficControlRequest_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlRequest_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlRequestV01.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlRequestV01.c new file mode 100644 index 000000000..875c387ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlRequestV01.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlRequestV01.h" + +static int +memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_scale_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -3 && value <= 3)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_bounds_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_bounds_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_bounds_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_scale_constr_4 CC_NOTUSED = { + { 1, 0 } /* (-3..3) */, + -1}; +static asn_per_constraints_t asn_PER_memb_scale_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, -3, 3 } /* (-3..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_bounds_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_bounds_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_bounds_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrafficControlBounds, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_bounds_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_bounds_specs_5 = { + sizeof(struct TrafficControlRequestV01__bounds), + offsetof(struct TrafficControlRequestV01__bounds, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_bounds_5 = { + "bounds", + "bounds", + &asn_OP_SEQUENCE_OF, + asn_DEF_bounds_tags_5, + sizeof(asn_DEF_bounds_tags_5) + /sizeof(asn_DEF_bounds_tags_5[0]) - 1, /* 1 */ + asn_DEF_bounds_tags_5, /* Same as above */ + sizeof(asn_DEF_bounds_tags_5) + /sizeof(asn_DEF_bounds_tags_5[0]), /* 2 */ + { &asn_OER_type_bounds_constr_5, &asn_PER_type_bounds_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_bounds_5, + 1, /* Single element */ + &asn_SPC_bounds_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqid), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Id64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reqid" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqseq), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, + 0, 0, /* No default value */ + "reqseq" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, scale), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_scale_constr_4, &asn_PER_memb_scale_constr_4, memb_scale_constraint_1 }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, bounds), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_bounds_5, + 0, + { &asn_OER_memb_bounds_constr_5, &asn_PER_memb_bounds_constr_5, memb_bounds_constraint_1 }, + 0, 0, /* No default value */ + "bounds" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlRequestV01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequestV01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reqid */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reqseq */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* bounds */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1 = { + sizeof(struct TrafficControlRequestV01), + offsetof(struct TrafficControlRequestV01, _asn_ctx), + asn_MAP_TrafficControlRequestV01_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01 = { + "TrafficControlRequestV01", + "TrafficControlRequestV01", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlRequestV01_tags_1, + sizeof(asn_DEF_TrafficControlRequestV01_tags_1) + /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlRequestV01_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlRequestV01_tags_1) + /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlRequestV01_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlRequestV01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c new file mode 100644 index 000000000..62b00054f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlSchedule.h" + +static int +memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_between_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_between_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_between_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_between_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_between_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DailySchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_between_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_between_specs_5 = { + sizeof(struct TrafficControlSchedule__between), + offsetof(struct TrafficControlSchedule__between, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_between_5 = { + "between", + "between", + &asn_OP_SEQUENCE_OF, + asn_DEF_between_tags_5, + sizeof(asn_DEF_between_tags_5) + /sizeof(asn_DEF_between_tags_5[0]) - 1, /* 1 */ + asn_DEF_between_tags_5, /* Same as above */ + sizeof(asn_DEF_between_tags_5) + /sizeof(asn_DEF_between_tags_5[0]), /* 2 */ + { &asn_OER_type_between_constr_5, &asn_PER_type_between_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_between_5, + 1, /* Single element */ + &asn_SPC_between_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlSchedule, start), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "start" + }, + { ATF_POINTER, 4, offsetof(struct TrafficControlSchedule, end), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "end" + }, + { ATF_POINTER, 3, offsetof(struct TrafficControlSchedule, dow), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DayOfWeek, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dow" + }, + { ATF_POINTER, 2, offsetof(struct TrafficControlSchedule, between), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_between_5, + 0, + { &asn_OER_memb_between_constr_5, &asn_PER_memb_between_constr_5, memb_between_constraint_1 }, + 0, 0, /* No default value */ + "between" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlSchedule, repeat), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RepeatParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "repeat" + }, +}; +static const int asn_MAP_TrafficControlSchedule_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlSchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlSchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* start */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* end */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* dow */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* between */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 4, 0, 0 } /* repeat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1 = { + sizeof(struct TrafficControlSchedule), + offsetof(struct TrafficControlSchedule, _asn_ctx), + asn_MAP_TrafficControlSchedule_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_TrafficControlSchedule_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule = { + "TrafficControlSchedule", + "TrafficControlSchedule", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlSchedule_tags_1, + sizeof(asn_DEF_TrafficControlSchedule_tags_1) + /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlSchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlSchedule_tags_1) + /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlSchedule_1, + 5, /* Elements count */ + &asn_SPC_TrafficControlSchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlType.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlType.c new file mode 100644 index 000000000..5a6453819 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlType.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrafficControlType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 22 } /* (0..22) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlType_value2enum_1[] = { + { 0, 6, "signal" }, + { 1, 4, "stop" }, + { 2, 5, "yield" }, + { 3, 8, "notowing" }, + { 4, 10, "restricted" }, + { 5, 6, "closed" }, + { 6, 6, "chains" }, + { 7, 9, "direction" }, + { 8, 11, "lataffinity" }, + { 9, 8, "leftperm" }, + { 10, 9, "rightperm" }, + { 11, 7, "opening" }, + { 12, 7, "closing" }, + { 13, 7, "parking" }, + { 14, 8, "minspeed" }, + { 15, 8, "maxspeed" }, + { 16, 7, "minhdwy" }, + { 17, 10, "maxvehmass" }, + { 18, 12, "maxvehheight" }, + { 19, 11, "maxvehwidth" }, + { 20, 12, "maxvehlength" }, + { 21, 8, "maxaxles" }, + { 22, 9, "minvehocc" } +}; +static const unsigned int asn_MAP_TrafficControlType_enum2value_1[] = { + 6, /* chains(6) */ + 5, /* closed(5) */ + 12, /* closing(12) */ + 7, /* direction(7) */ + 8, /* lataffinity(8) */ + 9, /* leftperm(9) */ + 21, /* maxaxles(21) */ + 15, /* maxspeed(15) */ + 18, /* maxvehheight(18) */ + 20, /* maxvehlength(20) */ + 17, /* maxvehmass(17) */ + 19, /* maxvehwidth(19) */ + 16, /* minhdwy(16) */ + 14, /* minspeed(14) */ + 22, /* minvehocc(22) */ + 3, /* notowing(3) */ + 11, /* opening(11) */ + 13, /* parking(13) */ + 4, /* restricted(4) */ + 10, /* rightperm(10) */ + 0, /* signal(0) */ + 1, /* stop(1) */ + 2 /* yield(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1 = { + asn_MAP_TrafficControlType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TrafficControlType_enum2value_1, /* N => "tag"; sorted by N */ + 23, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlType = { + "TrafficControlType", + "TrafficControlType", + &asn_OP_NativeEnumerated, + asn_DEF_TrafficControlType_tags_1, + sizeof(asn_DEF_TrafficControlType_tags_1) + /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlType_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlType_tags_1) + /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ + { &asn_OER_type_TrafficControlType_constr_1, &asn_PER_type_TrafficControlType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TrafficControlType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlValue.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlValue.c new file mode 100644 index 000000000..585fd29c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlValue.c @@ -0,0 +1,539 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlValue.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_chains_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_chains_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_direction_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_direction_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_lataffinity_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_lataffinity_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_leftperm_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_leftperm_constr_13 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_rightperm_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_rightperm_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_opening_constr_23 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_opening_constr_23 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_closing_constr_26 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_closing_constr_26 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_parking_constr_29 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_parking_constr_29 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_TrafficControlValue_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 8 } /* (0..8) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_3[] = { + { 0, 2, "no" }, + { 1, 9, "permitted" }, + { 2, 8, "required" } +}; +static const unsigned int asn_MAP_chains_enum2value_3[] = { + 0, /* no(0) */ + 1, /* permitted(1) */ + 2 /* required(2) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_chains_specs_3 = { + asn_MAP_chains_value2enum_3, /* "tag" => N; sorted by tag */ + asn_MAP_chains_enum2value_3, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_chains_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_chains_3 = { + "chains", + "chains", + &asn_OP_NativeEnumerated, + asn_DEF_chains_tags_3, + sizeof(asn_DEF_chains_tags_3) + /sizeof(asn_DEF_chains_tags_3[0]) - 1, /* 1 */ + asn_DEF_chains_tags_3, /* Same as above */ + sizeof(asn_DEF_chains_tags_3) + /sizeof(asn_DEF_chains_tags_3[0]), /* 2 */ + { &asn_OER_type_chains_constr_3, &asn_PER_type_chains_constr_3, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_chains_specs_3 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_7[] = { + { 0, 7, "forward" }, + { 1, 7, "reverse" } +}; +static const unsigned int asn_MAP_direction_enum2value_7[] = { + 0, /* forward(0) */ + 1 /* reverse(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_direction_specs_7 = { + asn_MAP_direction_value2enum_7, /* "tag" => N; sorted by tag */ + asn_MAP_direction_enum2value_7, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_direction_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_direction_7 = { + "direction", + "direction", + &asn_OP_NativeEnumerated, + asn_DEF_direction_tags_7, + sizeof(asn_DEF_direction_tags_7) + /sizeof(asn_DEF_direction_tags_7[0]) - 1, /* 1 */ + asn_DEF_direction_tags_7, /* Same as above */ + sizeof(asn_DEF_direction_tags_7) + /sizeof(asn_DEF_direction_tags_7[0]), /* 2 */ + { &asn_OER_type_direction_constr_7, &asn_PER_type_direction_constr_7, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_direction_specs_7 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_10[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_lataffinity_enum2value_10[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_10 = { + asn_MAP_lataffinity_value2enum_10, /* "tag" => N; sorted by tag */ + asn_MAP_lataffinity_enum2value_10, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_lataffinity_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_lataffinity_10 = { + "lataffinity", + "lataffinity", + &asn_OP_NativeEnumerated, + asn_DEF_lataffinity_tags_10, + sizeof(asn_DEF_lataffinity_tags_10) + /sizeof(asn_DEF_lataffinity_tags_10[0]) - 1, /* 1 */ + asn_DEF_lataffinity_tags_10, /* Same as above */ + sizeof(asn_DEF_lataffinity_tags_10) + /sizeof(asn_DEF_lataffinity_tags_10[0]), /* 2 */ + { &asn_OER_type_lataffinity_constr_10, &asn_PER_type_lataffinity_constr_10, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_lataffinity_specs_10 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_leftperm_value2enum_13[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_leftperm_enum2value_13[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_leftperm_specs_13 = { + asn_MAP_leftperm_value2enum_13, /* "tag" => N; sorted by tag */ + asn_MAP_leftperm_enum2value_13, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_leftperm_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_leftperm_13 = { + "leftperm", + "leftperm", + &asn_OP_NativeEnumerated, + asn_DEF_leftperm_tags_13, + sizeof(asn_DEF_leftperm_tags_13) + /sizeof(asn_DEF_leftperm_tags_13[0]) - 1, /* 1 */ + asn_DEF_leftperm_tags_13, /* Same as above */ + sizeof(asn_DEF_leftperm_tags_13) + /sizeof(asn_DEF_leftperm_tags_13[0]), /* 2 */ + { &asn_OER_type_leftperm_constr_13, &asn_PER_type_leftperm_constr_13, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_leftperm_specs_13 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_rightperm_value2enum_18[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_rightperm_enum2value_18[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_rightperm_specs_18 = { + asn_MAP_rightperm_value2enum_18, /* "tag" => N; sorted by tag */ + asn_MAP_rightperm_enum2value_18, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_rightperm_tags_18[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_rightperm_18 = { + "rightperm", + "rightperm", + &asn_OP_NativeEnumerated, + asn_DEF_rightperm_tags_18, + sizeof(asn_DEF_rightperm_tags_18) + /sizeof(asn_DEF_rightperm_tags_18[0]) - 1, /* 1 */ + asn_DEF_rightperm_tags_18, /* Same as above */ + sizeof(asn_DEF_rightperm_tags_18) + /sizeof(asn_DEF_rightperm_tags_18[0]), /* 2 */ + { &asn_OER_type_rightperm_constr_18, &asn_PER_type_rightperm_constr_18, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_rightperm_specs_18 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_opening_value2enum_23[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_opening_enum2value_23[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_opening_specs_23 = { + asn_MAP_opening_value2enum_23, /* "tag" => N; sorted by tag */ + asn_MAP_opening_enum2value_23, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_opening_tags_23[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_opening_23 = { + "opening", + "opening", + &asn_OP_NativeEnumerated, + asn_DEF_opening_tags_23, + sizeof(asn_DEF_opening_tags_23) + /sizeof(asn_DEF_opening_tags_23[0]) - 1, /* 1 */ + asn_DEF_opening_tags_23, /* Same as above */ + sizeof(asn_DEF_opening_tags_23) + /sizeof(asn_DEF_opening_tags_23[0]), /* 2 */ + { &asn_OER_type_opening_constr_23, &asn_PER_type_opening_constr_23, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_opening_specs_23 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_closing_value2enum_26[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_closing_enum2value_26[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_closing_specs_26 = { + asn_MAP_closing_value2enum_26, /* "tag" => N; sorted by tag */ + asn_MAP_closing_enum2value_26, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_closing_tags_26[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_closing_26 = { + "closing", + "closing", + &asn_OP_NativeEnumerated, + asn_DEF_closing_tags_26, + sizeof(asn_DEF_closing_tags_26) + /sizeof(asn_DEF_closing_tags_26[0]) - 1, /* 1 */ + asn_DEF_closing_tags_26, /* Same as above */ + sizeof(asn_DEF_closing_tags_26) + /sizeof(asn_DEF_closing_tags_26[0]), /* 2 */ + { &asn_OER_type_closing_constr_26, &asn_PER_type_closing_constr_26, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_closing_specs_26 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_29[] = { + { 0, 2, "no" }, + { 1, 8, "parallel" }, + { 2, 6, "angled" } +}; +static const unsigned int asn_MAP_parking_enum2value_29[] = { + 2, /* angled(2) */ + 0, /* no(0) */ + 1 /* parallel(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_parking_specs_29 = { + asn_MAP_parking_value2enum_29, /* "tag" => N; sorted by tag */ + asn_MAP_parking_enum2value_29, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_parking_tags_29[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_parking_29 = { + "parking", + "parking", + &asn_OP_NativeEnumerated, + asn_DEF_parking_tags_29, + sizeof(asn_DEF_parking_tags_29) + /sizeof(asn_DEF_parking_tags_29[0]) - 1, /* 1 */ + asn_DEF_parking_tags_29, /* Same as above */ + sizeof(asn_DEF_parking_tags_29) + /sizeof(asn_DEF_parking_tags_29[0]), /* 2 */ + { &asn_OER_type_parking_constr_29, &asn_PER_type_parking_constr_29, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_parking_specs_29 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlValue_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.chains), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_chains_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "chains" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.direction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_direction_7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.lataffinity), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_lataffinity_10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lataffinity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.leftperm), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_leftperm_13, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "leftperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.rightperm), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_rightperm_18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rightperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.opening), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_opening_23, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "opening" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.closing), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_closing_26, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "closing" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_parking_29, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "parking" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlValue_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* chains */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lataffinity */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* leftperm */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* rightperm */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* opening */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* closing */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* parking */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1 = { + sizeof(struct TrafficControlValue), + offsetof(struct TrafficControlValue, _asn_ctx), + offsetof(struct TrafficControlValue, present), + sizeof(((struct TrafficControlValue *)0)->present), + asn_MAP_TrafficControlValue_tag2el_1, + 9, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlValue = { + "TrafficControlValue", + "TrafficControlValue", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlValue_constr_1, &asn_PER_type_TrafficControlValue_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlValue_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlValue_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlVehClass.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlVehClass.c new file mode 100644 index 000000000..935c39902 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlVehClass.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlVehClass.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 18 } /* (0..18,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlVehClass_value2enum_1[] = { + { 0, 3, "any" }, + { 1, 10, "pedestrian" }, + { 2, 7, "bicycle" }, + { 3, 11, "micromobile" }, + { 4, 10, "motorcycle" }, + { 5, 13, "passenger-car" }, + { 6, 15, "light-truck-van" }, + { 7, 3, "bus" }, + { 8, 35, "two-axle-six-tire-single-unit-truck" }, + { 9, 28, "three-axle-single-unit-truck" }, + { 10, 35, "four-or-more-axle-single-unit-truck" }, + { 11, 39, "four-or-fewer-axle-single-trailer-truck" }, + { 12, 30, "five-axle-single-trailer-truck" }, + { 13, 37, "six-or-more-axle-single-trailer-truck" }, + { 14, 38, "five-or-fewer-axle-multi-trailer-truck" }, + { 15, 28, "six-axle-multi-trailer-truck" }, + { 16, 38, "seven-or-more-axle-multi-trailer-truck" }, + { 17, 4, "rail" }, + { 18, 12, "unclassified" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TrafficControlVehClass_enum2value_1[] = { + 0, /* any(0) */ + 2, /* bicycle(2) */ + 7, /* bus(7) */ + 12, /* five-axle-single-trailer-truck(12) */ + 14, /* five-or-fewer-axle-multi-trailer-truck(14) */ + 11, /* four-or-fewer-axle-single-trailer-truck(11) */ + 10, /* four-or-more-axle-single-unit-truck(10) */ + 6, /* light-truck-van(6) */ + 3, /* micromobile(3) */ + 4, /* motorcycle(4) */ + 5, /* passenger-car(5) */ + 1, /* pedestrian(1) */ + 17, /* rail(17) */ + 16, /* seven-or-more-axle-multi-trailer-truck(16) */ + 15, /* six-axle-multi-trailer-truck(15) */ + 13, /* six-or-more-axle-single-trailer-truck(13) */ + 9, /* three-axle-single-unit-truck(9) */ + 8, /* two-axle-six-tire-single-unit-truck(8) */ + 18 /* unclassified(18) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1 = { + asn_MAP_TrafficControlVehClass_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TrafficControlVehClass_enum2value_1, /* N => "tag"; sorted by N */ + 19, /* Number of elements in the maps */ + 20, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlVehClass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass = { + "TrafficControlVehClass", + "TrafficControlVehClass", + &asn_OP_NativeEnumerated, + asn_DEF_TrafficControlVehClass_tags_1, + sizeof(asn_DEF_TrafficControlVehClass_tags_1) + /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlVehClass_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlVehClass_tags_1) + /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ + { &asn_OER_type_TrafficControlVehClass_constr_1, &asn_PER_type_TrafficControlVehClass_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TrafficControlVehClass_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerData.c b/src/tmx/Asn_J2735/src/r2020/TrailerData.c new file mode 100644 index 000000000..bf427d222 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerData.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerData.h" + +asn_TYPE_member_t asn_MBR_TrailerData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, connection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "connection" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerUnitDescriptionList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* connection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1 = { + sizeof(struct TrailerData), + offsetof(struct TrailerData, _asn_ctx), + asn_MAP_TrailerData_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerData = { + "TrailerData", + "TrailerData", + &asn_OP_SEQUENCE, + asn_DEF_TrailerData_tags_1, + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + asn_DEF_TrailerData_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerData_1, + 3, /* Elements count */ + &asn_SPC_TrailerData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPoint.c b/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPoint.c new file mode 100644 index 000000000..d35fdf97e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPoint.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerHistoryPoint.h" + +asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_TrailerHistoryPoint_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1 = { + sizeof(struct TrailerHistoryPoint), + offsetof(struct TrailerHistoryPoint, _asn_ctx), + asn_MAP_TrailerHistoryPoint_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_TrailerHistoryPoint_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint = { + "TrailerHistoryPoint", + "TrailerHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_TrailerHistoryPoint_tags_1, + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerHistoryPoint_1, + 5, /* Elements count */ + &asn_SPC_TrailerHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPointList.c b/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPointList.c new file mode 100644 index 000000000..a9a5bf61a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerHistoryPointList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerHistoryPointList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerHistoryPoint, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1 = { + sizeof(struct TrailerHistoryPointList), + offsetof(struct TrailerHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList = { + "TrailerHistoryPointList", + "TrailerHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerHistoryPointList_tags_1, + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerHistoryPointList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TrailerHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_TrailerHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerMass.c b/src/tmx/Asn_J2735/src/r2020/TrailerMass.c new file mode 100644 index 000000000..d33648a11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerMass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerMass.h" + +int +TrailerMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TrailerMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerMass = { + "TrailerMass", + "TrailerMass", + &asn_OP_NativeInteger, + asn_DEF_TrailerMass_tags_1, + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + asn_DEF_TrailerMass_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerMass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerMass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TrailerMass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescription.c b/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescription.c new file mode 100644 index 000000000..e6391a995 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescription.c @@ -0,0 +1,284 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerUnitDescription.h" + +asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, isDolly), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IsDolly, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isDolly" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, width), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, length), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "length" + }, + { ATF_POINTER, 4, offsetof(struct TrailerUnitDescription, height), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct TrailerUnitDescription, mass), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, bumperHeights), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumperHeights" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, centerOfGravity), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "centerOfGravity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, frontPivot), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "frontPivot" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, rearPivot), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rearPivot" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, rearWheelOffset), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rearWheelOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, crumbData), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerHistoryPointList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_TrailerUnitDescription_oms_1[] = { 3, 4, 5, 6, 8, 9, 11, 12 }; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerUnitDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isDolly */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* length */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* bumperHeights */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* centerOfGravity */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* frontPivot */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* rearPivot */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* rearWheelOffset */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1 = { + sizeof(struct TrailerUnitDescription), + offsetof(struct TrailerUnitDescription, _asn_ctx), + asn_MAP_TrailerUnitDescription_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TrailerUnitDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription = { + "TrailerUnitDescription", + "TrailerUnitDescription", + &asn_OP_SEQUENCE, + asn_DEF_TrailerUnitDescription_tags_1, + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TrailerUnitDescription_1, + 13, /* Elements count */ + &asn_SPC_TrailerUnitDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescriptionList.c b/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescriptionList.c new file mode 100644 index 000000000..527a15be5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerUnitDescriptionList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerUnitDescriptionList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerUnitDescription, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescriptionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1 = { + sizeof(struct TrailerUnitDescriptionList), + offsetof(struct TrailerUnitDescriptionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList = { + "TrailerUnitDescriptionList", + "TrailerUnitDescriptionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerUnitDescriptionList_tags_1, + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescriptionList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerUnitDescriptionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerUnitDescriptionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TrailerUnitDescriptionList_1, + 1, /* Single element */ + &asn_SPC_TrailerUnitDescriptionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrailerWeight.c b/src/tmx/Asn_J2735/src/r2020/TrailerWeight.c new file mode 100644 index 000000000..01269149f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TrailerWeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TrailerWeight.h" + +int +TrailerWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 64255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { + "TrailerWeight", + "TrailerWeight", + &asn_OP_NativeInteger, + asn_DEF_TrailerWeight_tags_1, + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + asn_DEF_TrailerWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TrailerWeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TrailerWeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TrailerWeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TransitStatus.c b/src/tmx/Asn_J2735/src/r2020/TransitStatus.c new file mode 100644 index 000000000..c9a0812c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TransitStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TransitStatus.h" + +int +TransitStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 6 /* (SIZE(6..6)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitStatus = { + "TransitStatus", + "TransitStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitStatus_tags_1, + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TransitStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TransitVehicleOccupancy.c b/src/tmx/Asn_J2735/src/r2020/TransitVehicleOccupancy.c new file mode 100644 index 000000000..e03cd666a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TransitVehicleOccupancy.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TransitVehicleOccupancy.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TransitVehicleOccupancy_value2enum_1[] = { + { 0, 16, "occupancyUnknown" }, + { 1, 14, "occupancyEmpty" }, + { 2, 16, "occupancyVeryLow" }, + { 3, 12, "occupancyLow" }, + { 4, 12, "occupancyMed" }, + { 5, 13, "occupancyHigh" }, + { 6, 19, "occupancyNearlyFull" }, + { 7, 13, "occupancyFull" } +}; +static const unsigned int asn_MAP_TransitVehicleOccupancy_enum2value_1[] = { + 1, /* occupancyEmpty(1) */ + 7, /* occupancyFull(7) */ + 5, /* occupancyHigh(5) */ + 3, /* occupancyLow(3) */ + 4, /* occupancyMed(4) */ + 6, /* occupancyNearlyFull(6) */ + 0, /* occupancyUnknown(0) */ + 2 /* occupancyVeryLow(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1 = { + asn_MAP_TransitVehicleOccupancy_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransitVehicleOccupancy_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransitVehicleOccupancy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy = { + "TransitVehicleOccupancy", + "TransitVehicleOccupancy", + &asn_OP_NativeEnumerated, + asn_DEF_TransitVehicleOccupancy_tags_1, + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleOccupancy_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitVehicleOccupancy_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitVehicleOccupancy_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransitVehicleOccupancy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TransitVehicleStatus.c b/src/tmx/Asn_J2735/src/r2020/TransitVehicleStatus.c new file mode 100644 index 000000000..f9d4f1e0b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TransitVehicleStatus.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SignalRequestMessage" + * found in "J2735-SignalRequestMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TransitVehicleStatus.h" + +int +TransitVehicleStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_TransitVehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus = { + "TransitVehicleStatus", + "TransitVehicleStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitVehicleStatus_tags_1, + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransitVehicleStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransitVehicleStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + TransitVehicleStatus_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/r2020/TransmissionAndSpeed.c new file mode 100644 index 000000000..b757889f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TransmissionAndSpeed.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TransmissionAndSpeed.h" + +asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, transmisson), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "transmisson" + }, + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TransmissionAndSpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transmisson */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1 = { + sizeof(struct TransmissionAndSpeed), + offsetof(struct TransmissionAndSpeed, _asn_ctx), + asn_MAP_TransmissionAndSpeed_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { + "TransmissionAndSpeed", + "TransmissionAndSpeed", + &asn_OP_SEQUENCE, + asn_DEF_TransmissionAndSpeed_tags_1, + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TransmissionAndSpeed_1, + 2, /* Elements count */ + &asn_SPC_TransmissionAndSpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TransmissionState.c b/src/tmx/Asn_J2735/src/r2020/TransmissionState.c new file mode 100644 index 000000000..9aa9c336d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TransmissionState.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TransmissionState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TransmissionState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { + { 0, 7, "neutral" }, + { 1, 4, "park" }, + { 2, 12, "forwardGears" }, + { 3, 12, "reverseGears" }, + { 4, 9, "reserved1" }, + { 5, 9, "reserved2" }, + { 6, 9, "reserved3" }, + { 7, 11, "unavailable" } +}; +static const unsigned int asn_MAP_TransmissionState_enum2value_1[] = { + 2, /* forwardGears(2) */ + 0, /* neutral(0) */ + 1, /* park(1) */ + 4, /* reserved1(4) */ + 5, /* reserved2(5) */ + 6, /* reserved3(6) */ + 3, /* reverseGears(3) */ + 7 /* unavailable(7) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { + asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionState = { + "TransmissionState", + "TransmissionState", + &asn_OP_NativeEnumerated, + asn_DEF_TransmissionState_tags_1, + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + asn_DEF_TransmissionState_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TransmissionState_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TransmissionState_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransmissionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TravelerDataFrame.c b/src/tmx/Asn_J2735/src/r2020/TravelerDataFrame.c new file mode 100644 index 000000000..1ae5d9b3d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TravelerDataFrame.c @@ -0,0 +1,611 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TravelerDataFrame.h" + +static int +memb_regions_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 16UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_msgId_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_msgId_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_content_constr_16 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_content_constr_16 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_msgId_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.roadSignID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSignID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadSignID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ +}; +static asn_CHOICE_specifics_t asn_SPC_msgId_specs_4 = { + sizeof(struct TravelerDataFrame__msgId), + offsetof(struct TravelerDataFrame__msgId, _asn_ctx), + offsetof(struct TravelerDataFrame__msgId, present), + sizeof(((struct TravelerDataFrame__msgId *)0)->present), + asn_MAP_msgId_tag2el_4, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_msgId_4 = { + "msgId", + "msgId", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_msgId_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_msgId_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_msgId_4, + 2, /* Elements count */ + &asn_SPC_msgId_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regions_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GeographicalPath, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regions_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regions_specs_12 = { + sizeof(struct TravelerDataFrame__regions), + offsetof(struct TravelerDataFrame__regions, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regions_12 = { + "regions", + "regions", + &asn_OP_SEQUENCE_OF, + asn_DEF_regions_tags_12, + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]) - 1, /* 1 */ + asn_DEF_regions_tags_12, /* Same as above */ + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regions_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regions_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regions_12, + 1, /* Single element */ + &asn_SPC_regions_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_content_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.advisory), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodesAndText, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "advisory" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.workZone), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WorkZone, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "workZone" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.genericSign), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericSignage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "genericSign" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.speedLimit), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimit, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedLimit" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.exitService), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExitService, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "exitService" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_content_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ +}; +static asn_CHOICE_specifics_t asn_SPC_content_specs_16 = { + sizeof(struct TravelerDataFrame__content), + offsetof(struct TravelerDataFrame__content, _asn_ctx), + offsetof(struct TravelerDataFrame__content, present), + sizeof(((struct TravelerDataFrame__content *)0)->present), + asn_MAP_content_tag2el_16, + 5, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_content_16 = { + "content", + "content", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_content_constr_16, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_content_constr_16, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_content_16, + 5, /* Elements count */ + &asn_SPC_content_specs_16 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, frameType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerInfoType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "frameType" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, msgId), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_msgId_4, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgId" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, startYear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startYear" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, startTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, durationTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesDuration, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "durationTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, priority), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignPrority, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed1), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, regions), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regions_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regions_constr_12, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regions_constr_12, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regions_constraint_1 + }, + 0, 0, /* No default value */ + "regions" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed2), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed2" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, notUsed3), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "notUsed3" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, content), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_content_16, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "content" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, url), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Short, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "url" + }, +}; +static const int asn_MAP_TravelerDataFrame_oms_1[] = { 3, 12 }; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerDataFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frameType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgId */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startYear */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* durationTime */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* notUsed1 */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* regions */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* notUsed2 */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* notUsed3 */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* content */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* url */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1 = { + sizeof(struct TravelerDataFrame), + offsetof(struct TravelerDataFrame, _asn_ctx), + asn_MAP_TravelerDataFrame_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TravelerDataFrame_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame = { + "TravelerDataFrame", + "TravelerDataFrame", + &asn_OP_SEQUENCE, + asn_DEF_TravelerDataFrame_tags_1, + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TravelerDataFrame_1, + 13, /* Elements count */ + &asn_SPC_TravelerDataFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TravelerDataFrameList.c b/src/tmx/Asn_J2735/src/r2020/TravelerDataFrameList.c new file mode 100644 index 000000000..08020f8da --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TravelerDataFrameList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TravelerDataFrameList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerDataFrame, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrameList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1 = { + sizeof(struct TravelerDataFrameList), + offsetof(struct TravelerDataFrameList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList = { + "TravelerDataFrameList", + "TravelerDataFrameList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TravelerDataFrameList_tags_1, + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrameList_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TravelerDataFrameList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TravelerDataFrameList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_TravelerDataFrameList_1, + 1, /* Single element */ + &asn_SPC_TravelerDataFrameList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TravelerInfoType.c b/src/tmx/Asn_J2735/src/r2020/TravelerInfoType.c new file mode 100644 index 000000000..15ebe03d8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TravelerInfoType.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TravelerInfoType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "advisory" }, + { 2, 11, "roadSignage" }, + { 3, 17, "commercialSignage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { + 1, /* advisory(1) */ + 3, /* commercialSignage(3) */ + 2, /* roadSignage(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { + asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { + "TravelerInfoType", + "TravelerInfoType", + &asn_OP_NativeEnumerated, + asn_DEF_TravelerInfoType_tags_1, + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + asn_DEF_TravelerInfoType_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_TravelerInfoType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_TravelerInfoType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TravelerInformation.c b/src/tmx/Asn_J2735/src/r2020/TravelerInformation.c new file mode 100644 index 000000000..e64502f4d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/TravelerInformation.c @@ -0,0 +1,261 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "TravelerInformation.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_TravelerInformation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct TravelerInformation__regional), + offsetof(struct TravelerInformation__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_MsgCount, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 3, offsetof(struct TravelerInformation, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct TravelerInformation, packetID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UniqueMSGID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "packetID" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, urlB), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Base, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "urlB" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerDataFrameList, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataFrames" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* packetID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* urlB */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { + sizeof(struct TravelerInformation), + offsetof(struct TravelerInformation, _asn_ctx), + asn_MAP_TravelerInformation_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TravelerInformation_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { + "TravelerInformation", + "TravelerInformation", + &asn_OP_SEQUENCE, + asn_DEF_TravelerInformation_tags_1, + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + asn_DEF_TravelerInformation_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_TravelerInformation_1, + 6, /* Elements count */ + &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/URL-Base.c b/src/tmx/Asn_J2735/src/r2020/URL-Base.c new file mode 100644 index 000000000..4fce151b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/URL-Base.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "URL-Base.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Base_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 45UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Base_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..45)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_URL_Base_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Base = { + "URL-Base", + "URL-Base", + &asn_OP_IA5String, + asn_DEF_URL_Base_tags_1, + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + asn_DEF_URL_Base_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Base_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Base_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Base_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/URL-Link.c b/src/tmx/Asn_J2735/src/r2020/URL-Link.c new file mode 100644 index 000000000..b82bfb658 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/URL-Link.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "URL-Link.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Link_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 255UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Link_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Link = { + "URL-Link", + "URL-Link", + &asn_OP_IA5String, + asn_DEF_URL_Link_tags_1, + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + asn_DEF_URL_Link_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Link_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Link_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Link_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/URL-Short.c b/src/tmx/Asn_J2735/src/r2020/URL-Short.c new file mode 100644 index 000000000..db293fff6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/URL-Short.c @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "URL-Short.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +int +URL_Short_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 15UL) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_URL_Short_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..15)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_URL_Short_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Short = { + "URL-Short", + "URL-Short", + &asn_OP_IA5String, + asn_DEF_URL_Short_tags_1, + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + asn_DEF_URL_Short_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_URL_Short_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_URL_Short_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + URL_Short_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/UniqueMSGID.c b/src/tmx/Asn_J2735/src/r2020/UniqueMSGID.c new file mode 100644 index 000000000..e16b0d1e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/UniqueMSGID.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "UniqueMSGID.h" + +int +UniqueMSGID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 9UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 9 /* (SIZE(9..9)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { + "UniqueMSGID", + "UniqueMSGID", + &asn_OP_OCTET_STRING, + asn_DEF_UniqueMSGID_tags_1, + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + asn_DEF_UniqueMSGID_tags_1, /* Same as above */ + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_UniqueMSGID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_UniqueMSGID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + UniqueMSGID_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/r2020/UserSizeAndBehaviour.c new file mode 100644 index 000000000..ea110d451 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/UserSizeAndBehaviour.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "PersonalSafetyMessage" + * found in "J2735-PersonalSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "UserSizeAndBehaviour.h" + +int +UserSizeAndBehaviour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { + "UserSizeAndBehaviour", + "UserSizeAndBehaviour", + &asn_OP_BIT_STRING, + asn_DEF_UserSizeAndBehaviour_tags_1, + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_UserSizeAndBehaviour_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_UserSizeAndBehaviour_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + UserSizeAndBehaviour_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VINstring.c b/src/tmx/Asn_J2735/src/r2020/VINstring.c new file mode 100644 index 000000000..6bc34e8ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VINstring.c @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VINstring.h" + +int +VINstring_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 17UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VINstring_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..17)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VINstring_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VINstring = { + "VINstring", + "VINstring", + &asn_OP_OCTET_STRING, + asn_DEF_VINstring_tags_1, + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + asn_DEF_VINstring_tags_1, /* Same as above */ + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VINstring_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VINstring_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VINstring_constraint + }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ValidRegion.c b/src/tmx/Asn_J2735/src/r2020/ValidRegion.c new file mode 100644 index 000000000..e500c2fc2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ValidRegion.c @@ -0,0 +1,207 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ValidRegion.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_area_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_area_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_area_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ShapePointSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "shapePointSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionPointSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regionPointSet" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ +}; +static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { + sizeof(struct ValidRegion__area), + offsetof(struct ValidRegion__area, _asn_ctx), + offsetof(struct ValidRegion__area, present), + sizeof(((struct ValidRegion__area *)0)->present), + asn_MAP_area_tag2el_4, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_area_4 = { + "area", + "area", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_area_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_area_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_area_4, + 3, /* Elements count */ + &asn_SPC_area_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_area_4, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "area" + }, +}; +static const int asn_MAP_ValidRegion_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { + sizeof(struct ValidRegion), + offsetof(struct ValidRegion, _asn_ctx), + asn_MAP_ValidRegion_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ValidRegion_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ValidRegion = { + "ValidRegion", + "ValidRegion", + &asn_OP_SEQUENCE, + asn_DEF_ValidRegion_tags_1, + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + asn_DEF_ValidRegion_tags_1, /* Same as above */ + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_ValidRegion_1, + 3, /* Elements count */ + &asn_SPC_ValidRegion_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleClassification.c b/src/tmx/Asn_J2735/src/r2020/VehicleClassification.c new file mode 100644 index 000000000..a34c4a55d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleClassification.c @@ -0,0 +1,315 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleClassification.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_VehicleClassification, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct VehicleClassification__regional), + offsetof(struct VehicleClassification__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleClassification_1[] = { + { ATF_POINTER, 9, offsetof(struct VehicleClassification, keyType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "keyType" + }, + { ATF_POINTER, 8, offsetof(struct VehicleClassification, role), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 7, offsetof(struct VehicleClassification, iso3883), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 6, offsetof(struct VehicleClassification, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 5, offsetof(struct VehicleClassification, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleClassification, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 3, offsetof(struct VehicleClassification, responderType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 2, offsetof(struct VehicleClassification, fuelType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FuelType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "fuelType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleClassification, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_10, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_VehicleClassification_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_VehicleClassification_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleClassification_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* fuelType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1 = { + sizeof(struct VehicleClassification), + offsetof(struct VehicleClassification, _asn_ctx), + asn_MAP_VehicleClassification_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_VehicleClassification_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleClassification = { + "VehicleClassification", + "VehicleClassification", + &asn_OP_SEQUENCE, + asn_DEF_VehicleClassification_tags_1, + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + asn_DEF_VehicleClassification_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleClassification_1, + 9, /* Elements count */ + &asn_SPC_VehicleClassification_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleData.c b/src/tmx/Asn_J2735/src/r2020/VehicleData.c new file mode 100644 index 000000000..878f24cc6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleData.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleData.h" + +asn_TYPE_member_t asn_MBR_VehicleData_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct VehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_POINTER, 2, offsetof(struct VehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 1, offsetof(struct VehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, +}; +static const int asn_MAP_VehicleData_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* trailerWeight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1 = { + sizeof(struct VehicleData), + offsetof(struct VehicleData, _asn_ctx), + asn_MAP_VehicleData_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleData = { + "VehicleData", + "VehicleData", + &asn_OP_SEQUENCE, + asn_DEF_VehicleData_tags_1, + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + asn_DEF_VehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleData_1, + 4, /* Elements count */ + &asn_SPC_VehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleEventFlags.c b/src/tmx/Asn_J2735/src/r2020/VehicleEventFlags.c new file mode 100644 index 000000000..31fd306c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleEventFlags.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleEventFlags.h" + +int +VehicleEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 13UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 13, 13 } /* (SIZE(13..13,...)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags = { + "VehicleEventFlags", + "VehicleEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_VehicleEventFlags_tags_1, + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + asn_DEF_VehicleEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleEventFlags_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleEventFlags_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/r2020/VehicleGroupAffected.c new file mode 100644 index 000000000..a5efa8d03 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleGroupAffected.c @@ -0,0 +1,136 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735-ITIS.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { + { 9217, 12, "all-vehicles" }, + { 9218, 8, "bicycles" }, + { 9219, 11, "motorcycles" }, + { 9220, 4, "cars" }, + { 9221, 14, "light-vehicles" }, + { 9222, 23, "cars-and-light-vehicles" }, + { 9223, 18, "cars-with-trailers" }, + { 9224, 31, "cars-with-recreational-trailers" }, + { 9225, 22, "vehicles-with-trailers" }, + { 9226, 14, "heavy-vehicles" }, + { 9227, 6, "trucks" }, + { 9228, 5, "buses" }, + { 9229, 17, "articulated-buses" }, + { 9230, 12, "school-buses" }, + { 9231, 27, "vehicles-with-semi-trailers" }, + { 9232, 29, "vehicles-with-double-trailers" }, + { 9233, 21, "high-profile-vehicles" }, + { 9234, 13, "wide-vehicles" }, + { 9235, 13, "long-vehicles" }, + { 9236, 15, "hazardous-loads" }, + { 9237, 17, "exceptional-loads" }, + { 9238, 14, "abnormal-loads" }, + { 9239, 7, "convoys" }, + { 9240, 20, "maintenance-vehicles" }, + { 9241, 17, "delivery-vehicles" }, + { 9242, 42, "vehicles-with-even-numbered-license-plates" }, + { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, + { 9244, 29, "vehicles-with-parking-permits" }, + { 9245, 34, "vehicles-with-catalytic-converters" }, + { 9246, 37, "vehicles-without-catalytic-converters" }, + { 9247, 20, "gas-powered-vehicles" }, + { 9248, 23, "diesel-powered-vehicles" }, + { 9249, 12, "lPG-vehicles" }, + { 9250, 16, "military-convoys" }, + { 9251, 17, "military-vehicles" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { + 21, /* abnormal-loads(9238) */ + 0, /* all-vehicles(9217) */ + 12, /* articulated-buses(9229) */ + 1, /* bicycles(9218) */ + 11, /* buses(9228) */ + 3, /* cars(9220) */ + 5, /* cars-and-light-vehicles(9222) */ + 7, /* cars-with-recreational-trailers(9224) */ + 6, /* cars-with-trailers(9223) */ + 22, /* convoys(9239) */ + 24, /* delivery-vehicles(9241) */ + 31, /* diesel-powered-vehicles(9248) */ + 20, /* exceptional-loads(9237) */ + 30, /* gas-powered-vehicles(9247) */ + 19, /* hazardous-loads(9236) */ + 9, /* heavy-vehicles(9226) */ + 16, /* high-profile-vehicles(9233) */ + 32, /* lPG-vehicles(9249) */ + 4, /* light-vehicles(9221) */ + 18, /* long-vehicles(9235) */ + 23, /* maintenance-vehicles(9240) */ + 33, /* military-convoys(9250) */ + 34, /* military-vehicles(9251) */ + 2, /* motorcycles(9219) */ + 13, /* school-buses(9230) */ + 10, /* trucks(9227) */ + 28, /* vehicles-with-catalytic-converters(9245) */ + 15, /* vehicles-with-double-trailers(9232) */ + 25, /* vehicles-with-even-numbered-license-plates(9242) */ + 26, /* vehicles-with-odd-numbered-license-plates(9243) */ + 27, /* vehicles-with-parking-permits(9244) */ + 14, /* vehicles-with-semi-trailers(9231) */ + 8, /* vehicles-with-trailers(9225) */ + 29, /* vehicles-without-catalytic-converters(9246) */ + 17 /* wide-vehicles(9234) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { + asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 35, /* Number of elements in the maps */ + 36, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { + "VehicleGroupAffected", + "VehicleGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleGroupAffected_tags_1, + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleGroupAffected_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleHeight.c b/src/tmx/Asn_J2735/src/r2020/VehicleHeight.c new file mode 100644 index 000000000..5abb6b655 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleHeight.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleHeight.h" + +int +VehicleHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { + "VehicleHeight", + "VehicleHeight", + &asn_OP_NativeInteger, + asn_DEF_VehicleHeight_tags_1, + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + asn_DEF_VehicleHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleHeight_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleHeight_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleHeight_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleID.c b/src/tmx/Asn_J2735/src/r2020/VehicleID.c new file mode 100644 index 000000000..c12f01383 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleID.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleID.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.entityID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "entityID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.stationID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* entityID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* stationID */ +}; +asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1 = { + sizeof(struct VehicleID), + offsetof(struct VehicleID, _asn_ctx), + offsetof(struct VehicleID, present), + sizeof(((struct VehicleID *)0)->present), + asn_MAP_VehicleID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleID = { + "VehicleID", + "VehicleID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleID_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleID_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_VehicleID_1, + 2, /* Elements count */ + &asn_SPC_VehicleID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleIdent.c b/src/tmx/Asn_J2735/src/r2020/VehicleIdent.c new file mode 100644 index 000000000..13f58ef71 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleIdent.c @@ -0,0 +1,313 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleIdent.h" + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127UL)) return -1; + } + return 0; +} + +static int +memb_ownerCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1UL && size <= 32UL) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_vehicleClass_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_ownerCode_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER character map necessary */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rEquip" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ +}; +static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { + sizeof(struct VehicleIdent__vehicleClass), + offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), + offsetof(struct VehicleIdent__vehicleClass, present), + sizeof(((struct VehicleIdent__vehicleClass *)0)->present), + asn_MAP_vehicleClass_tag2el_7, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { + "vehicleClass", + "vehicleClass", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_vehicleClass_constr_7, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_vehicleClass_constr_7, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_vehicleClass_7, + 3, /* Elements count */ + &asn_SPC_vehicleClass_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { + { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VINstring, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vin" + }, + { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_ownerCode_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_ownerCode_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_ownerCode_constraint_1 + }, + 0, 0, /* No default value */ + "ownerCode" + }, + { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_vehicleClass_7, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleClass" + }, +}; +static const int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { + sizeof(struct VehicleIdent), + offsetof(struct VehicleIdent, _asn_ctx), + asn_MAP_VehicleIdent_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_VehicleIdent_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { + "VehicleIdent", + "VehicleIdent", + &asn_OP_SEQUENCE, + asn_DEF_VehicleIdent_tags_1, + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + asn_DEF_VehicleIdent_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleIdent_1, + 6, /* Elements count */ + &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleLength.c b/src/tmx/Asn_J2735/src/r2020/VehicleLength.c new file mode 100644 index 000000000..0015cd94f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleLength.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleLength.h" + +int +VehicleLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 4095L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleLength = { + "VehicleLength", + "VehicleLength", + &asn_OP_NativeInteger, + asn_DEF_VehicleLength_tags_1, + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + asn_DEF_VehicleLength_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleLength_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleLength_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleLength_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleMass.c b/src/tmx/Asn_J2735/src/r2020/VehicleMass.c new file mode 100644 index 000000000..30616baf0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleMass.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleMass.h" + +int +VehicleMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleMass = { + "VehicleMass", + "VehicleMass", + &asn_OP_NativeInteger, + asn_DEF_VehicleMass_tags_1, + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + asn_DEF_VehicleMass_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleMass_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleMass_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleMass_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleSafetyExtensions.c b/src/tmx/Asn_J2735/src/r2020/VehicleSafetyExtensions.c new file mode 100644 index 000000000..8ccd77d8e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleSafetyExtensions.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleSafetyExtensions.h" + +asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtensions, events), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtensions, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtensions, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtensions, lights), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lights" + }, +}; +static const int asn_MAP_VehicleSafetyExtensions_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleSafetyExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* lights */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1 = { + sizeof(struct VehicleSafetyExtensions), + offsetof(struct VehicleSafetyExtensions, _asn_ctx), + asn_MAP_VehicleSafetyExtensions_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleSafetyExtensions_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions = { + "VehicleSafetyExtensions", + "VehicleSafetyExtensions", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSafetyExtensions_tags_1, + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + asn_DEF_VehicleSafetyExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleSafetyExtensions_1, + 4, /* Elements count */ + &asn_SPC_VehicleSafetyExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleSize.c b/src/tmx/Asn_J2735/src/r2020/VehicleSize.c new file mode 100644 index 000000000..0ed6cd708 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleSize.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleSize.h" + +asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "length" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { + sizeof(struct VehicleSize), + offsetof(struct VehicleSize, _asn_ctx), + asn_MAP_VehicleSize_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSize = { + "VehicleSize", + "VehicleSize", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSize_tags_1, + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + asn_DEF_VehicleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleSize_1, + 2, /* Elements count */ + &asn_SPC_VehicleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleSizeConfidence.c b/src/tmx/Asn_J2735/src/r2020/VehicleSizeConfidence.c new file mode 100644 index 000000000..1e1b5b372 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleSizeConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "VehicleSizeConfidence.h" + +asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleWidthConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleWidthConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleLengthConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleLengthConfidence" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSizeConfidence, vehicleHeightConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleHeightConfidence" + }, +}; +static const int asn_MAP_VehicleSizeConfidence_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_VehicleSizeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSizeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleWidthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehicleLengthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* vehicleHeightConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1 = { + sizeof(struct VehicleSizeConfidence), + offsetof(struct VehicleSizeConfidence, _asn_ctx), + asn_MAP_VehicleSizeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_VehicleSizeConfidence_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence = { + "VehicleSizeConfidence", + "VehicleSizeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSizeConfidence_tags_1, + sizeof(asn_DEF_VehicleSizeConfidence_tags_1) + /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ + asn_DEF_VehicleSizeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSizeConfidence_tags_1) + /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleSizeConfidence_1, + 3, /* Elements count */ + &asn_SPC_VehicleSizeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleStatus.c b/src/tmx/Asn_J2735/src/r2020/VehicleStatus.c new file mode 100644 index 000000000..b192d0d43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleStatus.c @@ -0,0 +1,1053 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleStatus.h" + +static asn_TYPE_member_t asn_MBR_steering_12[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleRateOfChange, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rate" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivingWheelAngle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wheels" + }, +}; +static const int asn_MAP_steering_oms_12[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_steering_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_steering_tag2el_12[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_12 = { + sizeof(struct VehicleStatus__steering), + offsetof(struct VehicleStatus__steering, _asn_ctx), + asn_MAP_steering_tag2el_12, + 4, /* Count of tags in the map */ + asn_MAP_steering_oms_12, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_steering_12 = { + "steering", + "steering", + &asn_OP_SEQUENCE, + asn_DEF_steering_tags_12, + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]) - 1, /* 1 */ + asn_DEF_steering_tags_12, /* Same as above */ + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_steering_12, + 4, /* Elements count */ + &asn_SPC_steering_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_accelSets_17[] = { + { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vertAccelThres" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "yawRateCon" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "hozAccelCon" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConfidenceSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "confidenceSet" + }, +}; +static const int asn_MAP_accelSets_oms_17[] = { 0, 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_accelSets_tags_17[] = { + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_17[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_17 = { + sizeof(struct VehicleStatus__accelSets), + offsetof(struct VehicleStatus__accelSets, _asn_ctx), + asn_MAP_accelSets_tag2el_17, + 5, /* Count of tags in the map */ + asn_MAP_accelSets_oms_17, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_accelSets_17 = { + "accelSets", + "accelSets", + &asn_OP_SEQUENCE, + asn_DEF_accelSets_tags_17, + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]) - 1, /* 1 */ + asn_DEF_accelSets_tags_17, /* Same as above */ + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_accelSets_17, + 5, /* Elements count */ + &asn_SPC_accelSets_specs_17 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_object_23[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Angle, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dateTime" + }, +}; +static const ber_tlv_tag_t asn_DEF_object_tags_23[] = { + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_object_tag2el_23[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_object_specs_23 = { + sizeof(struct VehicleStatus__object), + offsetof(struct VehicleStatus__object, _asn_ctx), + asn_MAP_object_tag2el_23, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_object_23 = { + "object", + "object", + &asn_OP_SEQUENCE, + asn_DEF_object_tags_23, + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]) - 1, /* 1 */ + asn_DEF_object_tags_23, /* Same as above */ + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_object_23, + 3, /* Elements count */ + &asn_SPC_object_specs_23 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_vehicleData_31[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "height" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "type" + }, +}; +static const ber_tlv_tag_t asn_DEF_vehicleData_tags_31[] = { + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_31[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_31 = { + sizeof(struct VehicleStatus__vehicleData), + offsetof(struct VehicleStatus__vehicleData, _asn_ctx), + asn_MAP_vehicleData_tag2el_31, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleData_31 = { + "vehicleData", + "vehicleData", + &asn_OP_SEQUENCE, + asn_DEF_vehicleData_tags_31, + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]) - 1, /* 1 */ + asn_DEF_vehicleData_tags_31, /* Same as above */ + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_vehicleData_31, + 5, /* Elements count */ + &asn_SPC_vehicleData_specs_31 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_weatherReport_39[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "friction" + }, +}; +static const int asn_MAP_weatherReport_oms_39[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_weatherReport_tags_39[] = { + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_39[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_39 = { + sizeof(struct VehicleStatus__weatherReport), + offsetof(struct VehicleStatus__weatherReport, _asn_ctx), + asn_MAP_weatherReport_tag2el_39, + 5, /* Count of tags in the map */ + asn_MAP_weatherReport_oms_39, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_weatherReport_39 = { + "weatherReport", + "weatherReport", + &asn_OP_SEQUENCE, + asn_DEF_weatherReport_tags_39, + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]) - 1, /* 1 */ + asn_DEF_weatherReport_tags_39, /* Same as above */ + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_weatherReport_39, + 5, /* Elements count */ + &asn_SPC_weatherReport_specs_39 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { + { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lights" + }, + { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lightBar" + }, + { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "wipers" + }, + { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakeStatus" + }, + { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "brakePressure" + }, + { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadFriction" + }, + { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SunSensor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sunData" + }, + { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RainSensor, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainData" + }, + { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airPres" + }, + { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_steering_12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "steering" + }, + { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + 0, + &asn_DEF_accelSets_17, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "accelSets" + }, + { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + 0, + &asn_DEF_object_23, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "object" + }, + { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "fullPos" + }, + { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottlePosition, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "throttlePos" + }, + { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedHeadC" + }, + { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "speedC" + }, + { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + 0, + &asn_DEF_vehicleData_31, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "vehicleIdent" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_J1939data, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "j1939data" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + 0, + &asn_DEF_weatherReport_39, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus, gnssStatus), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "gnssStatus" + }, +}; +static const int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gnssStatus */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { + sizeof(struct VehicleStatus), + offsetof(struct VehicleStatus, _asn_ctx), + asn_MAP_VehicleStatus_tag2el_1, + 22, /* Count of tags in the map */ + asn_MAP_VehicleStatus_oms_1, /* Optional members */ + 22, 0, /* Root/Additions */ + 22, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { + "VehicleStatus", + "VehicleStatus", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatus_tags_1, + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleStatus_1, + 22, /* Elements count */ + &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/r2020/VehicleStatusDeviceTypeTag.c new file mode 100644 index 000000000..78bd838b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleStatusDeviceTypeTag.c @@ -0,0 +1,124 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleStatusDeviceTypeTag.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "lights" }, + { 2, 6, "wipers" }, + { 3, 6, "brakes" }, + { 4, 4, "stab" }, + { 5, 4, "trac" }, + { 6, 3, "abs" }, + { 7, 4, "sunS" }, + { 8, 5, "rainS" }, + { 9, 7, "airTemp" }, + { 10, 8, "steering" }, + { 11, 14, "vertAccelThres" }, + { 12, 9, "vertAccel" }, + { 13, 12, "hozAccelLong" }, + { 14, 11, "hozAccelLat" }, + { 15, 11, "hozAccelCon" }, + { 16, 9, "accel4way" }, + { 17, 13, "confidenceSet" }, + { 18, 6, "obDist" }, + { 19, 8, "obDirect" }, + { 20, 3, "yaw" }, + { 21, 10, "yawRateCon" }, + { 22, 8, "dateTime" }, + { 23, 7, "fullPos" }, + { 24, 10, "position2D" }, + { 25, 10, "position3D" }, + { 26, 7, "vehicle" }, + { 27, 10, "speedHeadC" }, + { 28, 6, "speedC" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { + 6, /* abs(6) */ + 16, /* accel4way(16) */ + 9, /* airTemp(9) */ + 3, /* brakes(3) */ + 17, /* confidenceSet(17) */ + 22, /* dateTime(22) */ + 23, /* fullPos(23) */ + 15, /* hozAccelCon(15) */ + 14, /* hozAccelLat(14) */ + 13, /* hozAccelLong(13) */ + 1, /* lights(1) */ + 19, /* obDirect(19) */ + 18, /* obDist(18) */ + 24, /* position2D(24) */ + 25, /* position3D(25) */ + 8, /* rainS(8) */ + 28, /* speedC(28) */ + 27, /* speedHeadC(27) */ + 4, /* stab(4) */ + 10, /* steering(10) */ + 7, /* sunS(7) */ + 5, /* trac(5) */ + 0, /* unknown(0) */ + 26, /* vehicle(26) */ + 12, /* vertAccel(12) */ + 11, /* vertAccelThres(11) */ + 2, /* wipers(2) */ + 20, /* yaw(20) */ + 21 /* yawRateCon(21) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { + asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ + 29, /* Number of elements in the maps */ + 30, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { + "VehicleStatusDeviceTypeTag", + "VehicleStatusDeviceTypeTag", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleStatusDeviceTypeTag_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequest.c new file mode 100644 index 000000000..3ad4cd534 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequest.c @@ -0,0 +1,251 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleStatusRequest.h" + +static int +memb_subType_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnLessThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnMoreThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_subType_constr_3 CC_NOTUSED = { + { 1, 1 } /* (1..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_subType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusDeviceTypeTag, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "dataType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_subType_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_subType_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_subType_constraint_1 + }, + 0, 0, /* No default value */ + "subType" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sendOnLessThenValue_constr_4, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sendOnLessThenValue_constr_4, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sendOnLessThenValue_constraint_1 + }, + 0, 0, /* No default value */ + "sendOnLessThenValue" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_sendOnMoreThenValue_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_sendOnMoreThenValue_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_sendOnMoreThenValue_constraint_1 + }, + 0, 0, /* No default value */ + "sendOnMoreThenValue" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "sendAll" + }, +}; +static const int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { + sizeof(struct VehicleStatusRequest), + offsetof(struct VehicleStatusRequest, _asn_ctx), + asn_MAP_VehicleStatusRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { + "VehicleStatusRequest", + "VehicleStatusRequest", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatusRequest_tags_1, + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleStatusRequest_1, + 5, /* Elements count */ + &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequestList.c b/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequestList.c new file mode 100644 index 000000000..ce2f56868 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleStatusRequestList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeDataManagement" + * found in "J2735-ProbeDataManagement.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleStatusRequestList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleStatusRequest, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1 = { + sizeof(struct VehicleStatusRequestList), + offsetof(struct VehicleStatusRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList = { + "VehicleStatusRequestList", + "VehicleStatusRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleStatusRequestList_tags_1, + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleStatusRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleStatusRequestList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_VehicleStatusRequestList_1, + 1, /* Single element */ + &asn_SPC_VehicleStatusRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/r2020/VehicleToLanePosition.c new file mode 100644 index 000000000..f25b9a3e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleToLanePosition.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleToLanePosition.h" + +asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "laneID" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { + sizeof(struct VehicleToLanePosition), + offsetof(struct VehicleToLanePosition, _asn_ctx), + asn_MAP_VehicleToLanePosition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { + "VehicleToLanePosition", + "VehicleToLanePosition", + &asn_OP_SEQUENCE, + asn_DEF_VehicleToLanePosition_tags_1, + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_VehicleToLanePosition_1, + 2, /* Elements count */ + &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/r2020/VehicleToLanePositionList.c new file mode 100644 index 000000000..9b499fdae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleToLanePositionList.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735-AddGrpC.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleToLanePositionList.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleToLanePosition, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { + sizeof(struct VehicleToLanePositionList), + offsetof(struct VehicleToLanePositionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { + "VehicleToLanePositionList", + "VehicleToLanePositionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleToLanePositionList_tags_1, + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleToLanePositionList_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleToLanePositionList_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_VehicleToLanePositionList_1, + 1, /* Single element */ + &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleType.c b/src/tmx/Asn_J2735/src/r2020/VehicleType.c new file mode 100644 index 000000000..44f556679 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleType.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 7, "unknown" }, + { 2, 7, "special" }, + { 3, 4, "moto" }, + { 4, 3, "car" }, + { 5, 8, "carOther" }, + { 6, 3, "bus" }, + { 7, 8, "axleCnt2" }, + { 8, 8, "axleCnt3" }, + { 9, 8, "axleCnt4" }, + { 10, 15, "axleCnt4Trailer" }, + { 11, 15, "axleCnt5Trailer" }, + { 12, 15, "axleCnt6Trailer" }, + { 13, 20, "axleCnt5MultiTrailer" }, + { 14, 20, "axleCnt6MultiTrailer" }, + { 15, 20, "axleCnt7MultiTrailer" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleType_enum2value_1[] = { + 7, /* axleCnt2(7) */ + 8, /* axleCnt3(8) */ + 9, /* axleCnt4(9) */ + 10, /* axleCnt4Trailer(10) */ + 13, /* axleCnt5MultiTrailer(13) */ + 11, /* axleCnt5Trailer(11) */ + 14, /* axleCnt6MultiTrailer(14) */ + 12, /* axleCnt6Trailer(12) */ + 15, /* axleCnt7MultiTrailer(15) */ + 6, /* bus(6) */ + 4, /* car(4) */ + 5, /* carOther(5) */ + 3, /* moto(3) */ + 0, /* none(0) */ + 2, /* special(2) */ + 1 /* unknown(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { + asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 17, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleType = { + "VehicleType", + "VehicleType", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleType_tags_1, + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + asn_DEF_VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleType_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VehicleWidth.c b/src/tmx/Asn_J2735/src/r2020/VehicleWidth.c new file mode 100644 index 000000000..69c72d0db --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VehicleWidth.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VehicleWidth.h" + +int +VehicleWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { + "VehicleWidth", + "VehicleWidth", + &asn_OP_NativeInteger, + asn_DEF_VehicleWidth_tags_1, + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + asn_DEF_VehicleWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VehicleWidth_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VehicleWidth_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VehicleWidth_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Velocity.c b/src/tmx/Asn_J2735/src/r2020/Velocity.c new file mode 100644 index 000000000..665722068 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Velocity.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Velocity.h" + +int +Velocity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 8191L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Velocity_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Velocity_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Velocity = { + "Velocity", + "Velocity", + &asn_OP_NativeInteger, + asn_DEF_Velocity_tags_1, + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + asn_DEF_Velocity_tags_1, /* Same as above */ + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Velocity_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Velocity_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Velocity_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B07.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B07.c new file mode 100644 index 000000000..17ed32f5f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B07.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B07.h" + +int +VertOffset_B07_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-64..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, -64, 63 } /* (-64..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B07 = { + "VertOffset-B07", + "VertOffset-B07", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B07_tags_1, + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B07_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B07_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B07_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B07_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B08.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B08.c new file mode 100644 index 000000000..57ca3011a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B08.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B08.h" + +int +VertOffset_B08_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B08 = { + "VertOffset-B08", + "VertOffset-B08", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B08_tags_1, + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B08_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B08_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B08_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B08_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B09.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B09.c new file mode 100644 index 000000000..20c641a9e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B09.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B09.h" + +int +VertOffset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B09 = { + "VertOffset-B09", + "VertOffset-B09", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B09_tags_1, + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B09_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B09_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B10.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B10.c new file mode 100644 index 000000000..091c342ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B10.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B10.h" + +int +VertOffset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512L && value <= 511L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B10 = { + "VertOffset-B10", + "VertOffset-B10", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B10_tags_1, + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B10_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B10_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B11.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B11.c new file mode 100644 index 000000000..25a67e963 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B11.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B11.h" + +int +VertOffset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024L && value <= 1023L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B11 = { + "VertOffset-B11", + "VertOffset-B11", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B11_tags_1, + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B11_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B11_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VertOffset-B12.c b/src/tmx/Asn_J2735/src/r2020/VertOffset-B12.c new file mode 100644 index 000000000..23d2c0687 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VertOffset-B12.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VertOffset-B12.h" + +int +VertOffset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048L && value <= 2047L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VertOffset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B12 = { + "VertOffset-B12", + "VertOffset-B12", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B12_tags_1, + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VertOffset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VertOffset_B12_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VertOffset_B12_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/r2020/VerticalAcceleration.c new file mode 100644 index 000000000..c6f242130 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VerticalAcceleration.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VerticalAcceleration.h" + +int +VerticalAcceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { + "VerticalAcceleration", + "VerticalAcceleration", + &asn_OP_NativeInteger, + asn_DEF_VerticalAcceleration_tags_1, + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalAcceleration_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalAcceleration_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VerticalAcceleration_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/r2020/VerticalAccelerationThreshold.c new file mode 100644 index 000000000..a3c071b09 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VerticalAccelerationThreshold.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VerticalAccelerationThreshold.h" + +int +VerticalAccelerationThreshold_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5UL)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { + "VerticalAccelerationThreshold", + "VerticalAccelerationThreshold", + &asn_OP_BIT_STRING, + asn_DEF_VerticalAccelerationThreshold_tags_1, + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalAccelerationThreshold_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalAccelerationThreshold_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + VerticalAccelerationThreshold_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VerticalOffset.c b/src/tmx/Asn_J2735/src/r2020/VerticalOffset.c new file mode 100644 index 000000000..4af2cf385 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VerticalOffset.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "VerticalOffset.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_VerticalOffset_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset1" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B08, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset2" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B09, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset3" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B10, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset4" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B11, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset5" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "offset6" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.elevation), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Common_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_VerticalOffset, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VerticalOffset_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offset2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offset3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* offset4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* offset5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* offset6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_VerticalOffset_specs_1 = { + sizeof(struct VerticalOffset), + offsetof(struct VerticalOffset, _asn_ctx), + offsetof(struct VerticalOffset, present), + sizeof(((struct VerticalOffset *)0)->present), + asn_MAP_VerticalOffset_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VerticalOffset = { + "VerticalOffset", + "VerticalOffset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_VerticalOffset_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_VerticalOffset_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_VerticalOffset_1, + 8, /* Elements count */ + &asn_SPC_VerticalOffset_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WaitOnStopline.c b/src/tmx/Asn_J2735/src/r2020/WaitOnStopline.c new file mode 100644 index 000000000..e8b727376 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WaitOnStopline.c @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WaitOnStopline.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { + "WaitOnStopline", + "WaitOnStopline", + &asn_OP_BOOLEAN, + asn_DEF_WaitOnStopline_tags_1, + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + asn_DEF_WaitOnStopline_tags_1, /* Same as above */ + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + BOOLEAN_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WeatherProbe.c b/src/tmx/Asn_J2735/src/r2020/WeatherProbe.c new file mode 100644 index 000000000..433add22b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WeatherProbe.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WeatherProbe.h" + +asn_TYPE_member_t asn_MBR_WeatherProbe_1[] = { + { ATF_POINTER, 3, offsetof(struct WeatherProbe, airTemp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 2, offsetof(struct WeatherProbe, airPressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "airPressure" + }, + { ATF_POINTER, 1, offsetof(struct WeatherProbe, rainRates), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRates" + }, +}; +static const int asn_MAP_WeatherProbe_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_WeatherProbe_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherProbe_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* airPressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rainRates */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1 = { + sizeof(struct WeatherProbe), + offsetof(struct WeatherProbe, _asn_ctx), + asn_MAP_WeatherProbe_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_WeatherProbe_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherProbe = { + "WeatherProbe", + "WeatherProbe", + &asn_OP_SEQUENCE, + asn_DEF_WeatherProbe_tags_1, + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + asn_DEF_WeatherProbe_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WeatherProbe_1, + 3, /* Elements count */ + &asn_SPC_WeatherProbe_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WeatherReport.c b/src/tmx/Asn_J2735/src/r2020/WeatherReport.c new file mode 100644 index 000000000..7e2cafd1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WeatherReport.c @@ -0,0 +1,158 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "BasicSafetyMessage" + * found in "J2735-BasicSafetyMessage.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WeatherReport.h" + +asn_TYPE_member_t asn_MBR_WeatherReport_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WeatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 5, offsetof(struct WeatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 4, offsetof(struct WeatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 3, offsetof(struct WeatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 2, offsetof(struct WeatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "friction" + }, + { ATF_POINTER, 1, offsetof(struct WeatherReport, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "roadFriction" + }, +}; +static const int asn_MAP_WeatherReport_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_WeatherReport_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherReport_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* friction */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* roadFriction */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1 = { + sizeof(struct WeatherReport), + offsetof(struct WeatherReport, _asn_ctx), + asn_MAP_WeatherReport_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_WeatherReport_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherReport = { + "WeatherReport", + "WeatherReport", + &asn_OP_SEQUENCE, + asn_DEF_WeatherReport_tags_1, + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + asn_DEF_WeatherReport_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WeatherReport_1, + 6, /* Elements count */ + &asn_SPC_WeatherReport_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/r2020/WheelEndElectFault.c new file mode 100644 index 000000000..12d31a520 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WheelEndElectFault.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WheelEndElectFault.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WheelEndElectFault_value2enum_1[] = { + { 0, 4, "isOk" }, + { 1, 12, "isNotDefined" }, + { 2, 7, "isError" }, + { 3, 14, "isNotSupported" } +}; +static const unsigned int asn_MAP_WheelEndElectFault_enum2value_1[] = { + 2, /* isError(2) */ + 1, /* isNotDefined(1) */ + 3, /* isNotSupported(3) */ + 0 /* isOk(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1 = { + asn_MAP_WheelEndElectFault_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelEndElectFault_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { + "WheelEndElectFault", + "WheelEndElectFault", + &asn_OP_NativeEnumerated, + asn_DEF_WheelEndElectFault_tags_1, + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WheelEndElectFault_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WheelEndElectFault_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelEndElectFault_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/r2020/WheelSensorStatus.c new file mode 100644 index 000000000..d057e1d86 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WheelSensorStatus.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WheelSensorStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { + { 0, 3, "off" }, + { 1, 2, "on" }, + { 2, 10, "notDefined" }, + { 3, 12, "notSupported" } +}; +static const unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { + 2, /* notDefined(2) */ + 3, /* notSupported(3) */ + 0, /* off(0) */ + 1 /* on(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { + asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { + "WheelSensorStatus", + "WheelSensorStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WheelSensorStatus_tags_1, + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WheelSensorStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WheelSensorStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WiperRate.c b/src/tmx/Asn_J2735/src/r2020/WiperRate.c new file mode 100644 index 000000000..11fa2bcfa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WiperRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WiperRate.h" + +int +WiperRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 127L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WiperRate_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WiperRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperRate = { + "WiperRate", + "WiperRate", + &asn_OP_NativeInteger, + asn_DEF_WiperRate_tags_1, + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + asn_DEF_WiperRate_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WiperRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WiperRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + WiperRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WiperSet.c b/src/tmx/Asn_J2735/src/r2020/WiperSet.c new file mode 100644 index 000000000..2736c168d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WiperSet.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WiperSet.h" + +asn_TYPE_member_t asn_MBR_WiperSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, statusFront), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "statusFront" + }, + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, rateFront), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rateFront" + }, + { ATF_POINTER, 2, offsetof(struct WiperSet, statusRear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "statusRear" + }, + { ATF_POINTER, 1, offsetof(struct WiperSet, rateRear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "rateRear" + }, +}; +static const int asn_MAP_WiperSet_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_WiperSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WiperSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1 = { + sizeof(struct WiperSet), + offsetof(struct WiperSet, _asn_ctx), + asn_MAP_WiperSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_WiperSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WiperSet = { + "WiperSet", + "WiperSet", + &asn_OP_SEQUENCE, + asn_DEF_WiperSet_tags_1, + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + asn_DEF_WiperSet_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_WiperSet_1, + 4, /* Elements count */ + &asn_SPC_WiperSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WiperStatus.c b/src/tmx/Asn_J2735/src/r2020/WiperStatus.c new file mode 100644 index 000000000..c5876798c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WiperStatus.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WiperStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WiperStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WiperStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_WiperStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 12, "intermittent" }, + { 3, 3, "low" }, + { 4, 4, "high" }, + { 5, 11, "washerInUse" }, + { 6, 16, "automaticPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_WiperStatus_enum2value_1[] = { + 6, /* automaticPresent(6) */ + 4, /* high(4) */ + 2, /* intermittent(2) */ + 3, /* low(3) */ + 1, /* off(1) */ + 0, /* unavailable(0) */ + 5 /* washerInUse(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1 = { + asn_MAP_WiperStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WiperStatus_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatus = { + "WiperStatus", + "WiperStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WiperStatus_tags_1, + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + asn_DEF_WiperStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WiperStatus_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WiperStatus_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WiperStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/WorkZone.c b/src/tmx/Asn_J2735/src/r2020/WorkZone.c new file mode 100644 index 000000000..c13da7e46 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/WorkZone.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "WorkZone.h" + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_WorkZone_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_WorkZone_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct WorkZone__Member__item), + offsetof(struct WorkZone__Member__item, _asn_ctx), + offsetof(struct WorkZone__Member__item, present), + sizeof(((struct WorkZone__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_item_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + CHOICE_constraint + }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct WorkZone__Member), + offsetof(struct WorkZone__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_WorkZone_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { + sizeof(struct WorkZone), + offsetof(struct WorkZone, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_WorkZone = { + "WorkZone", + "WorkZone", + &asn_OP_SEQUENCE_OF, + asn_DEF_WorkZone_tags_1, + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + asn_DEF_WorkZone_tags_1, /* Same as above */ + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_WorkZone_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_WorkZone_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_WorkZone_1, + 1, /* Single element */ + &asn_SPC_WorkZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/YawDetected.c b/src/tmx/Asn_J2735/src/r2020/YawDetected.c new file mode 100644 index 000000000..bc7c0018b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/YawDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "YawDetected.h" + +int +YawDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -14400 && value <= 14400)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_YawDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-14400..14400) */, + -1}; +asn_per_constraints_t asn_PER_type_YawDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_YawDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawDetected = { + "YawDetected", + "YawDetected", + &asn_OP_NativeInteger, + asn_DEF_YawDetected_tags_1, + sizeof(asn_DEF_YawDetected_tags_1) + /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ + asn_DEF_YawDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_YawDetected_tags_1) + /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_YawDetected_constr_1, &asn_PER_type_YawDetected_constr_1, YawDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/YawRate.c b/src/tmx/Asn_J2735/src/r2020/YawRate.c new file mode 100644 index 000000000..efa992e9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/YawRate.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "Common" + * found in "J2735-Common.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "YawRate.h" + +int +YawRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767L && value <= 32767L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_YawRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_YawRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRate = { + "YawRate", + "YawRate", + &asn_OP_NativeInteger, + asn_DEF_YawRate_tags_1, + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + asn_DEF_YawRate_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_YawRate_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_YawRate_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + YawRate_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/YawRateConfidence.c b/src/tmx/Asn_J2735/src/r2020/YawRateConfidence.c new file mode 100644 index 000000000..fd0490f8b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/YawRateConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ProbeVehicleData" + * found in "J2735-ProbeVehicleData.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "YawRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { + asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { + "YawRateConfidence", + "YawRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_YawRateConfidence_tags_1, + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_YawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_YawRateConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_YawRateConfidence_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + NativeEnumerated_constraint + }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Year.c b/src/tmx/Asn_J2735/src/r2020/Year.c new file mode 100644 index 000000000..d763c3f83 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Year.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735-AddGrpB.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Year.h" + +int +Year_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1L && value <= 65535L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Year_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Year_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Year_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Year = { + "Year", + "Year", + &asn_OP_NativeInteger, + asn_DEF_Year_tags_1, + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + asn_DEF_Year_tags_1, /* Same as above */ + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Year_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Year_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Year_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/ZoneLength.c b/src/tmx/Asn_J2735/src/r2020/ZoneLength.c new file mode 100644 index 000000000..df2dc72a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ZoneLength.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SPAT" + * found in "J2735-SPAT.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "ZoneLength.h" + +int +ZoneLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 10000L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_ZoneLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..10000) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ZoneLength = { + "ZoneLength", + "ZoneLength", + &asn_OP_NativeInteger, + asn_DEF_ZoneLength_tags_1, + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + asn_DEF_ZoneLength_tags_1, /* Same as above */ + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_ZoneLength_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_ZoneLength_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + ZoneLength_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/Zoom.c b/src/tmx/Asn_J2735/src/r2020/Zoom.c new file mode 100644 index 000000000..4fe68f792 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Zoom.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "TravelerInformation" + * found in "J2735-TravelerInformation.asn" + * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + */ + +#include "Zoom.h" + +int +Zoom_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 15L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_Zoom_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +asn_per_constraints_t asn_PER_type_Zoom_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static const ber_tlv_tag_t asn_DEF_Zoom_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Zoom = { + "Zoom", + "Zoom", + &asn_OP_NativeInteger, + asn_DEF_Zoom_tags_1, + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + asn_DEF_Zoom_tags_1, /* Same as above */ + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_Zoom_constr_1, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_Zoom_constr_1, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + Zoom_constraint + }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/aper_decoder.c b/src/tmx/Asn_J2735/src/r2020/aper_decoder.c new file mode 100644 index 000000000..0637b6a5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/aper_decoder.c @@ -0,0 +1,91 @@ +#include +#include +#include + +asn_dec_rval_t +aper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = aper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +aper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->aper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %zu, counted %zu", + rval.consumed, pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/aper_encoder.c b/src/tmx/Asn_J2735/src/r2020/aper_encoder.c new file mode 100644 index 000000000..d9b1c1df1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/aper_encoder.c @@ -0,0 +1,129 @@ +#include +#include +#include + +/* + * Argument type and callback necessary for aper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +aper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using ALIGNED PER", td->name); + + return aper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +ssize_t +aper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = aper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_aper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + if (po->output) { + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); + } + return 0; +} + +asn_enc_rval_t +aper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->aper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->aper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_aper_encode_flush_outp(&po)) + ASN__ENCODE_FAILED; + } + + return er; +} diff --git a/src/tmx/Asn_J2735/src/r2020/aper_opentype.c b/src/tmx/Asn_J2735/src/r2020/aper_opentype.c new file mode 100644 index 000000000..cdd5999b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/aper_opentype.c @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +static asn_dec_rval_t +aper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = aper_get_length(pd, -1, -1, -1, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->aper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* Noone would give us more */ + } + + return rv; +} + +int +aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + size_t toGo; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = aper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + for(bptr = buf, toGo = size; toGo;) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, -1, toGo, &need_eom); + if(maySave < 0) break; + if(per_put_many_bits(po, bptr, maySave * 8)) break; + bptr = (char *)bptr + maySave; + toGo -= maySave; + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) { + FREEMEM(buf); + return -1; + } + } + + FREEMEM(buf); + if(toGo) return -1; + + ASN_DEBUG("Open type put %s of length %zd + overhead (1byte?)", + td->name, size); + + return 0; +} + +asn_dec_rval_t +aper_open_type_get(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + return aper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +aper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_dec_rval_t rv; + asn_TYPE_operation_t op_t; + + memset(&op_t, 0, sizeof(op_t)); + s_td.name = ""; + s_td.op = &op_t; + s_td.op->aper_decoder = uper_sot_suck; + + rv = aper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/aper_support.c b/src/tmx/Asn_J2735/src/r2020/aper_support.c new file mode 100644 index 000000000..1f34c60d6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/aper_support.c @@ -0,0 +1,239 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +int32_t +aper_get_align(asn_per_data_t *pd) { + + if(pd->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)pd->nboff & 0x7)); + return per_get_few_bits(pd, 8 - (pd->nboff & 0x7)); + } + return 0; +} + +ssize_t +aper_get_length(asn_per_data_t *pd, ssize_t lb, ssize_t ub, + int ebits, int *repeat) { + int constrained = (lb >= 0) && (ub >= 0); + ssize_t value; + + *repeat = 0; + + if (constrained && ub < 65536) { + int range = ub - lb + 1; + return aper_get_nsnnwn(pd, range); + } + + if (aper_get_align(pd) < 0) + return -1; + + if(ebits >= 0) return per_get_few_bits(pd, ebits); + + value = per_get_few_bits(pd, 8); + if(value < 0) return -1; + if((value & 128) == 0) /* #11.9.3.6 */ + return (value & 0x7F); + if((value & 64) == 0) { /* #11.9.3.7 */ + value = ((value & 63) << 8) | per_get_few_bits(pd, 8); + if(value < 0) return -1; + return value; + } + value &= 63; /* this is "m" from X.691, #11.9.3.8 */ + if(value < 1 || value > 4) + return -1; + *repeat = 1; + return (16384 * value); +} + +ssize_t +aper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%zd", length); + return length; + } else { + int repeat; + length = aper_get_length(pd, -1, -1, -1, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +ssize_t +aper_get_nsnnwn(asn_per_data_t *pd, int range) { + ssize_t value; + int bytes = 0; + + ASN_DEBUG("getting nsnnwn with range %d", range); + + if(range <= 255) { + int i; + + if (range < 0) return -1; + /* 1 -> 8 bits */ + for (i = 1; i <= 8; i++) { + int upper = 1 << i; + if (upper >= range) + break; + } + value = per_get_few_bits(pd, i); + return value; + } else if (range == 256){ + /* 1 byte */ + bytes = 1; + } else if (range <= 65536) { + /* 2 bytes */ + bytes = 2; + } else { + //return -1; + int length; + + /* handle indefinite range */ + length = per_get_few_bits(pd, 1); + if (length == 0) + return per_get_few_bits(pd, 6); + + if (aper_get_align(pd) < 0) + return -1; + + length = per_get_few_bits(pd, 8); + /* the length is not likely to be that big */ + if (length > 4) + return -1; + value = 0; + if (per_get_many_bits(pd, (uint8_t *)&value, 0, length * 8) < 0) + return -1; + return value; + } + if (aper_get_align(pd) < 0) + return -1; + value = per_get_few_bits(pd, 8 * bytes); + return value; +} + +int aper_put_align(asn_per_outp_t *po) { + + if(po->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)po->nboff & 0x7)); + if(per_put_few_bits(po, 0x00, (8 - (po->nboff & 0x7)))) + return -1; + } + return 0; +} + +ssize_t +aper_put_length(asn_per_outp_t *po, ssize_t lb, ssize_t ub, size_t n, int *need_eom) { + int constrained = (lb >= 0) && (ub >= 0); + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + *need_eom = 0; + + + ASN_DEBUG("APER put length %zu with range (%zd..%zd)", n, lb, ub); + + /* 11.9 X.691 Note 2 */ + if (constrained && ub < 65536) { + int range = ub - lb + 1; + return aper_put_nsnnwn(po, range, n) ? -1 : (ssize_t)n; + } + + if (aper_put_align(po) < 0) + return -1; + + if(n <= 127) { /* #11.9.3.6 */ + return per_put_few_bits(po, n, 8) + ? -1 : (ssize_t)n; + } + else if(n < 16384) /* #11.9.3.7 */ + return per_put_few_bits(po, n|0x8000, 16) + ? -1 : (ssize_t)n; + + *need_eom = 0 == (n & 16383); + n >>= 14; + if(n > 4) { + *need_eom = 0; + n = 4; + } + + return per_put_few_bits(po, 0xC0 | n, 8) + ? -1 : (ssize_t)(n << 14); +} + + +int +aper_put_nslength(asn_per_outp_t *po, size_t length) { + + if(length <= 64) { + /* #11.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length-1, 7) ? -1 : 0; + } else { + if(aper_put_length(po, -1, -1, length, NULL) != (ssize_t)length) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +int +aper_put_nsnnwn(asn_per_outp_t *po, int range, int number) { + int bytes; + + ASN_DEBUG("aper put nsnnwn %d with range %d", number, range); + /* 10.5.7.1 X.691 */ + if(range < 0) { + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (number <= bits) + break; + } + bytes = i; + assert(i <= 4); + } + if(range <= 255) { + int i; + for (i = 1; i <= 8; i++) { + int bits = 1 << i; + if (range <= bits) + break; + } + return per_put_few_bits(po, number, i); + } else if(range == 256) { + if (number >= range) + return -1; + bytes = 1; + } else if(range <= 65536) { + if (number >= range) + return -1; + bytes = 2; + } else { /* Ranges > 64K */ + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (range <= bits) + break; + } + assert(i <= 4); + bytes = i; + } + if(aper_put_align(po) < 0) /* Aligning on octet */ + return -1; +/* if(per_put_few_bits(po, bytes, 8)) + return -1; +*/ + return per_put_few_bits(po, number, 8 * bytes); +} diff --git a/src/tmx/Asn_J2735/src/r2020/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r2020/asn_SEQUENCE_OF.c new file mode 100644 index 000000000..ec952fc99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_SEQUENCE_OF.c @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +typedef A_SEQUENCE_OF(void) asn_sequence; + +void +asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { + asn_sequence *as = (asn_sequence *)asn_sequence_of_x; + + if(as) { + void *ptr; + int n; + + if(number < 0 || number >= as->count) + return; /* Nothing to delete */ + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + /* + * Shift all elements to the left to hide the gap. + */ + --as->count; + for(n = number; n < as->count; n++) + as->array[n] = as->array[n+1]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + diff --git a/src/tmx/Asn_J2735/src/r2020/asn_SET_OF.c b/src/tmx/Asn_J2735/src/r2020/asn_SET_OF.c new file mode 100644 index 000000000..944f2cb8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_SET_OF.c @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Add another element into the set. + */ +int +asn_set_add(void *asn_set_of_x, void *ptr) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as == 0 || ptr == 0) { + errno = EINVAL; /* Invalid arguments */ + return -1; + } + + /* + * Make sure there's enough space to insert an element. + */ + if(as->count == as->size) { + int _newsize = as->size ? (as->size << 1) : 4; + void *_new_arr; + _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); + if(_new_arr) { + as->array = (void **)_new_arr; + as->size = _newsize; + } else { + /* ENOMEM */ + return -1; + } + } + + as->array[as->count++] = ptr; + + return 0; +} + +void +asn_set_del(void *asn_set_of_x, int number, int _do_free) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + void *ptr; + if(number < 0 || number >= as->count) + return; + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + as->array[number] = as->array[--as->count]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + +/* + * Free the contents of the set, do not free the set itself. + */ +void +asn_set_empty(void *asn_set_of_x) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + if(as->array) { + if(as->free) { + while(as->count--) + as->free(as->array[as->count]); + } + FREEMEM(as->array); + as->array = 0; + } + as->count = 0; + as->size = 0; + } + +} + diff --git a/src/tmx/Asn_J2735/src/r2020/asn_application.c b/src/tmx/Asn_J2735/src/r2020/asn_application.c new file mode 100644 index 000000000..7992185b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_application.c @@ -0,0 +1,538 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_app_consume_bytes_f *callback, + void *callback_key); + + +struct callback_count_bytes_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + size_t computed_size; +}; + +/* + * Encoder which just counts bytes that come through it. + */ +static int +callback_count_bytes_cb(const void *data, size_t size, void *keyp) { + struct callback_count_bytes_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret >= 0) { + key->computed_size += size; + } + + return ret; +} + +struct overrun_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct dynamic_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct callback_failure_catch_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + int callback_failed; +}; + +/* + * Encoder which doesn't stop counting bytes + * even if it reaches the end of the buffer. + */ +static int +overrun_encoder_cb(const void *data, size_t size, void *keyp) { + struct overrun_encoder_key *key = keyp; + + if(key->computed_size + size > key->buffer_size) { + /* + * Avoid accident on the next call: + * stop adding bytes to the buffer. + */ + key->buffer_size = 0; + } else { + memcpy((char *)key->buffer + key->computed_size, data, size); + } + key->computed_size += size; + + return 0; +} + +/* + * Encoder which dynamically allocates output, and continues + * to count even if allocation failed. + */ +static int +dynamic_encoder_cb(const void *data, size_t size, void *keyp) { + struct dynamic_encoder_key *key = keyp; + + if(key->buffer) { + if(key->computed_size + size >= key->buffer_size) { + void *p; + size_t new_size = key->buffer_size; + + do { + new_size *= 2; + } while(new_size <= key->computed_size + size); + + p = REALLOC(key->buffer, new_size); + if(p) { + key->buffer = p; + key->buffer_size = new_size; + } else { + FREEMEM(key->buffer); + key->buffer = 0; + key->buffer_size = 0; + key->computed_size += size; + return 0; + } + } + memcpy((char *)key->buffer + key->computed_size, data, size); + } + + key->computed_size += size; + + return 0; +} + +/* + * Encoder which help convert the application level encoder failure into EIO. + */ +static int +callback_failure_catch_cb(const void *data, size_t size, void *keyp) { + struct callback_failure_catch_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret < 0) { + key->callback_failed = 1; + } + + return ret; +} + +asn_enc_rval_t +asn_encode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + const void *sptr, asn_app_consume_bytes_f *callback, void *callback_key) { + struct callback_failure_catch_key cb_key; + asn_enc_rval_t er = {0,0,0}; + + if(!callback) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.callback_failed = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + callback_failure_catch_cb, &cb_key); + if(cb_key.callback_failed) { + assert(er.encoded == -1); + assert(errno == EBADF); + errno = EIO; + } + + return er; +} + +asn_enc_rval_t +asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + void *buffer, size_t buffer_size) { + struct overrun_encoder_key buf_key; + asn_enc_rval_t er = {0,0,0}; + + if(buffer_size > 0 && !buffer) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + buf_key.buffer = buffer; + buf_key.buffer_size = buffer_size; + buf_key.computed_size = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + overrun_encoder_cb, &buf_key); + + if(er.encoded >= 0 && (size_t)er.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + er.encoded, buf_key.computed_size); + assert(er.encoded < 0 || (size_t)er.encoded == buf_key.computed_size); + } + + return er; +} + +asn_encode_to_new_buffer_result_t +asn_encode_to_new_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr) { + struct dynamic_encoder_key buf_key; + asn_encode_to_new_buffer_result_t res; + + buf_key.buffer_size = 16; + buf_key.buffer = MALLOC(buf_key.buffer_size); + buf_key.computed_size = 0; + + res.result = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + dynamic_encoder_cb, &buf_key); + + if(res.result.encoded >= 0 + && (size_t)res.result.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + res.result.encoded, buf_key.computed_size); + assert(res.result.encoded < 0 + || (size_t)res.result.encoded == buf_key.computed_size); + } + + res.buffer = buf_key.buffer; + + /* 0-terminate just in case. */ + if(res.buffer) { + assert(buf_key.computed_size < buf_key.buffer_size); + ((char *)res.buffer)[buf_key.computed_size] = '\0'; + } + + return res; +} + +static asn_enc_rval_t +asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_consume_bytes_f *callback, void *callback_key) { + asn_enc_rval_t er = {0,0,0}; +#if !defined(ASN_DISABLE_XER_SUPPORT) + enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + + (void)opt_codec_ctx; /* Parameters are not checked on encode yet. */ + + if(!td || !sptr) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + switch(syntax) { + case ATS_NONSTANDARD_PLAINTEXT: + if(td->op->print_struct) { + struct callback_count_bytes_key cb_key; + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.computed_size = 0; + if(td->op->print_struct(td, sptr, 1, callback_count_bytes_cb, + &cb_key) + < 0 + || callback_count_bytes_cb("\n", 1, &cb_key) < 0) { + errno = EBADF; /* Structure has incorrect form. */ + er.encoded = -1; + er.failed_type = td; + er.structure_ptr = sptr; + } else { + er.encoded = cb_key.computed_size; + er.failed_type = 0; + er.structure_ptr = 0; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + + case ATS_RANDOM: + errno = ENOENT; /* Randomization doesn't make sense on output. */ + ASN__ENCODE_FAILED; + +#if !defined(ASN_DISABLE_BER_SUPPORT) + case ATS_BER: + /* BER is a superset of DER. */ + /* Fall through. */ + case ATS_DER: + if(td->op->der_encoder) { + er = der_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->der_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* DER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + case ATS_CER: + errno = ENOENT; /* Transfer syntax is not defined for any type. */ + ASN__ENCODE_FAILED; +#else + case ATS_BER: + case ATS_DER: + case ATS_CER: + errno = ENOENT; /* BER is not defined. */ + ASN__ENCODE_FAILED; + +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + +#if !defined(ASN_DISABLE_OER_SUPPORT) + case ATS_BASIC_OER: + /* CANONICAL-OER is a superset of BASIC-OER. */ + /* Fall through. */ + case ATS_CANONICAL_OER: + if(td->op->oer_encoder) { + er = oer_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->oer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* OER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: + errno = ENOENT; /* OER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + +#if !defined(ASN_DISABLE_UPER_SUPPORT) + case ATS_UNALIGNED_BASIC_PER: + /* CANONICAL-UPER is a superset of BASIC-UPER. */ + /* Fall through. */ + case ATS_UNALIGNED_CANONICAL_PER: + if(td->op->uper_encoder) { + er = uper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->uper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* UPER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: + errno = ENOENT; /* UPER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + case ATS_ALIGNED_BASIC_PER: + /* CANONICAL-APER is a superset of BASIC-APER. */ + /* Fall through. */ + case ATS_ALIGNED_CANONICAL_PER: + if(td->op->aper_encoder) { + er = aper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->aper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* APER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: + errno = ENOENT; /* APER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + +#if !defined(ASN_DISABLE_XER_SUPPORT) + case ATS_BASIC_XER: + /* CANONICAL-XER is a superset of BASIC-XER. */ + xer_flags &= ~XER_F_CANONICAL; + xer_flags |= XER_F_BASIC; + /* Fall through. */ + case ATS_CANONICAL_XER: + if(td->op->xer_encoder) { + er = xer_encode(td, sptr, xer_flags, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->xer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* XER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#else + case ATS_BASIC_XER: + case ATS_CANONICAL_XER: + errno = ENOENT; /* XER is not defined. */ + ASN__ENCODE_FAILED; + break; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + +#if !defined(ASN_DISABLE_JER_SUPPORT) + case ATS_JER: + if(td->op->jer_encoder) { + er = jer_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->jer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* JER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ + default: + errno = ENOENT; + ASN__ENCODE_FAILED; + } + + return er; +} + +asn_dec_rval_t +asn_decode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + void **sptr, const void *buffer, size_t size) { + if(!td || !td->op || !sptr || (size && !buffer)) { + ASN__DECODE_FAILED; + } + + switch(syntax) { + case ATS_CER: + case ATS_NONSTANDARD_PLAINTEXT: + default: + errno = ENOENT; + ASN__DECODE_FAILED; + + case ATS_RANDOM: +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + if(!td->op->random_fill) { + ASN__DECODE_FAILED; + } else { + if(asn_random_fill(td, sptr, 16000) == 0) { + asn_dec_rval_t ret = {RC_OK, 0}; + return ret; + } else { + ASN__DECODE_FAILED; + } + } + break; +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + + case ATS_DER: + case ATS_BER: +#if !defined(ASN_DISABLE_BER_SUPPORT) + return ber_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ + + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: +#if !defined(ASN_DISABLE_OER_SUPPORT) + return oer_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ + + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: +#if !defined(ASN_DISABLE_UPER_SUPPORT) + return uper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ + + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: +#if !defined(ASN_DISABLE_APER_SUPPORT) + return aper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + + case ATS_BASIC_XER: + case ATS_CANONICAL_XER: +#if !defined(ASN_DISABLE_XER_SUPPORT) + return xer_decode(opt_codec_ctx, td, sptr, buffer, size); +#else + errno = ENOENT; + ASN__DECODE_FAILED; +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ + } +} + diff --git a/src/tmx/Asn_J2735/src/r2020/asn_bit_data.c b/src/tmx/Asn_J2735/src/r2020/asn_bit_data.c new file mode 100644 index 000000000..fe4b89ba7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_bit_data.c @@ -0,0 +1,333 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t * +asn_bit_data_new_contiguous(const void *data, size_t size_bits) { + size_t size_bytes = (size_bits + 7) / 8; + asn_bit_data_t *pd; + uint8_t *bytes; + + /* Get the extensions map */ + pd = CALLOC(1, sizeof(*pd) + size_bytes + 1); + if(!pd) { + return NULL; + } + bytes = (void *)(((char *)pd) + sizeof(*pd)); + memcpy(bytes, data, size_bytes); + bytes[size_bytes] = 0; + pd->buffer = bytes; + pd->nboff = 0; + pd->nbits = size_bits; + + return pd; +} + + +char * +asn_bit_data_string(asn_bit_data_t *pd) { + static char buf[2][32]; + static int n; + n = (n+1) % 2; + snprintf(buf[n], sizeof(buf[n]), + "{m=%" ASN_PRI_SIZE " span %" ASN_PRI_SIZE "[%" ASN_PRI_SIZE + "..%" ASN_PRI_SIZE "] (%" ASN_PRI_SIZE ")}", + pd->moved, ((uintptr_t)(pd->buffer) & 0xf), pd->nboff, pd->nbits, + pd->nbits - pd->nboff); + return buf[n]; +} + +void +asn_get_undo(asn_bit_data_t *pd, int nbits) { + if((ssize_t)pd->nboff < nbits) { + assert((ssize_t)pd->nboff < nbits); + } else { + pd->nboff -= nbits; + pd->moved -= nbits; + } +} + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + */ +int32_t +asn_get_few_bits(asn_bit_data_t *pd, int nbits) { + size_t off; /* Next after last bit offset */ + ssize_t nleft; /* Number of bits left in this stream */ + uint32_t accum; + const uint8_t *buf; + + if(nbits < 0) + return -1; + + nleft = pd->nbits - pd->nboff; + if(nbits > nleft) { + int32_t tailv, vhead; + if(!pd->refill || nbits > 31) return -1; + /* Accumulate unused bytes before refill */ + ASN_DEBUG("Obtain the rest %d bits (want %d)", + (int)nleft, (int)nbits); + tailv = asn_get_few_bits(pd, nleft); + if(tailv < 0) return -1; + /* Refill (replace pd contents with new data) */ + if(pd->refill(pd)) + return -1; + nbits -= nleft; + vhead = asn_get_few_bits(pd, nbits); + /* Combine the rest of previous pd with the head of new one */ + tailv = (tailv << nbits) | vhead; /* Could == -1 */ + return tailv; + } + + /* + * Normalize position indicator. + */ + if(pd->nboff >= 8) { + pd->buffer += (pd->nboff >> 3); + pd->nbits -= (pd->nboff & ~0x07); + pd->nboff &= 0x07; + } + pd->moved += nbits; + pd->nboff += nbits; + off = pd->nboff; + buf = pd->buffer; + + /* + * Extract specified number of bits. + */ + if(off <= 8) + accum = nbits ? (buf[0]) >> (8 - off) : 0; + else if(off <= 16) + accum = ((buf[0] << 8) + buf[1]) >> (16 - off); + else if(off <= 24) + accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); + else if(off <= 31) + accum = (((uint32_t)buf[0] << 24) + (buf[1] << 16) + + (buf[2] << 8) + (buf[3])) >> (32 - off); + else if(nbits <= 31) { + asn_bit_data_t tpd = *pd; + /* Here are we with our 31-bits limit plus 1..7 bits offset. */ + asn_get_undo(&tpd, nbits); + /* The number of available bits in the stream allow + * for the following operations to take place without + * invoking the ->refill() function */ + accum = asn_get_few_bits(&tpd, nbits - 24) << 24; + accum |= asn_get_few_bits(&tpd, 24); + } else { + asn_get_undo(pd, nbits); + return -1; + } + + accum &= (((uint32_t)1 << nbits) - 1); + + ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", + (int)nbits, (int)nleft, + (int)pd->moved, + (((long)pd->buffer) & 0xf), + (int)pd->nboff, (int)pd->nbits, + ((pd->buffer != NULL)?pd->buffer[0]:0), + (int)(pd->nbits - pd->nboff), + (int)accum); + + return accum; +} + +/* + * Extract a large number of bits from the specified PER data pointer. + */ +int +asn_get_many_bits(asn_bit_data_t *pd, uint8_t *dst, int alright, int nbits) { + int32_t value; + + if(alright && (nbits & 7)) { + /* Perform right alignment of a first few bits */ + value = asn_get_few_bits(pd, nbits & 0x07); + if(value < 0) return -1; + *dst++ = value; /* value is already right-aligned */ + nbits &= ~7; + } + + while(nbits) { + if(nbits >= 24) { + value = asn_get_few_bits(pd, 24); + if(value < 0) return -1; + *(dst++) = value >> 16; + *(dst++) = value >> 8; + *(dst++) = value; + nbits -= 24; + } else { + value = asn_get_few_bits(pd, nbits); + if(value < 0) return -1; + if(nbits & 7) { /* implies left alignment */ + value <<= 8 - (nbits & 7), + nbits += 8 - (nbits & 7); + if(nbits > 24) + *dst++ = value >> 24; + } + if(nbits > 16) + *dst++ = value >> 16; + if(nbits > 8) + *dst++ = value >> 8; + *dst++ = value; + break; + } + } + + return 0; +} + +/* + * Put a small number of bits (<= 31). + */ +int +asn_put_few_bits(asn_bit_outp_t *po, uint32_t bits, int obits) { + size_t off; /* Next after last bit offset */ + size_t omsk; /* Existing last byte meaningful bits mask */ + uint8_t *buf; + + if(obits <= 0 || obits >= 32) return obits ? -1 : 0; + + ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", + obits, (int)bits, (void *)po->buffer, (int)po->nboff); + + /* + * Normalize position indicator. + */ + if(po->nboff >= 8) { + po->buffer += (po->nboff >> 3); + po->nbits -= (po->nboff & ~0x07); + po->nboff &= 0x07; + } + + /* + * Flush whole-bytes output, if necessary. + */ + if(po->nboff + obits > po->nbits) { + size_t complete_bytes; + if(!po->buffer) po->buffer = po->tmpspace; + complete_bytes = (po->buffer - po->tmpspace); + ASN_DEBUG("[PER output %ld complete + %ld]", + (long)complete_bytes, (long)po->flushed_bytes); + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) + return -1; + if(po->nboff) + po->tmpspace[0] = po->buffer[0]; + po->buffer = po->tmpspace; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + } + + /* + * Now, due to sizeof(tmpspace), we are guaranteed large enough space. + */ + buf = po->buffer; + omsk = ~((1 << (8 - po->nboff)) - 1); + off = (po->nboff + obits); + + /* Clear data of debris before meaningful bits */ + bits &= (((uint32_t)1 << obits) - 1); + + ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, + (int)bits, (int)bits, + (int)po->nboff, (int)off, + buf[0], (int)(omsk&0xff), + (int)(buf[0] & omsk)); + + if(off <= 8) /* Completely within 1 byte */ + po->nboff = off, + bits <<= (8 - off), + buf[0] = (buf[0] & omsk) | bits; + else if(off <= 16) + po->nboff = off, + bits <<= (16 - off), + buf[0] = (buf[0] & omsk) | (bits >> 8), + buf[1] = bits; + else if(off <= 24) + po->nboff = off, + bits <<= (24 - off), + buf[0] = (buf[0] & omsk) | (bits >> 16), + buf[1] = bits >> 8, + buf[2] = bits; + else if(off <= 31) + po->nboff = off, + bits <<= (32 - off), + buf[0] = (buf[0] & omsk) | (bits >> 24), + buf[1] = bits >> 16, + buf[2] = bits >> 8, + buf[3] = bits; + else { + if(asn_put_few_bits(po, bits >> (obits - 24), 24)) return -1; + if(asn_put_few_bits(po, bits, obits - 24)) return -1; + } + + ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", + (int)bits, (int)bits, buf[0], + (long)(po->buffer - po->tmpspace)); + + return 0; +} + + +/* + * Output a large number of bits. + */ +int +asn_put_many_bits(asn_bit_outp_t *po, const uint8_t *src, int nbits) { + + while(nbits) { + uint32_t value; + + if(nbits >= 24) { + value = (src[0] << 16) | (src[1] << 8) | src[2]; + src += 3; + nbits -= 24; + if(asn_put_few_bits(po, value, 24)) + return -1; + } else { + value = src[0]; + if(nbits > 8) + value = (value << 8) | src[1]; + if(nbits > 16) + value = (value << 8) | src[2]; + if(nbits & 0x07) + value >>= (8 - (nbits & 0x07)); + if(asn_put_few_bits(po, value, nbits)) + return -1; + break; + } + } + + return 0; +} + + +int +asn_put_aligned_flush(asn_bit_outp_t *po) { + uint32_t unused_bits = (0x7 & (8 - (po->nboff & 0x07))); + size_t complete_bytes = + (po->buffer ? po->buffer - po->tmpspace : 0) + ((po->nboff + 7) >> 3); + + if(unused_bits) { + po->buffer[po->nboff >> 3] &= ~0u << unused_bits; + } + + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) { + return -1; + } else { + po->buffer = po->tmpspace; + po->nboff = 0; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + return 0; + } +} + diff --git a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim.c new file mode 100644 index 000000000..f3fdbfd2b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim.c @@ -0,0 +1,31 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +void +ASN__PRIMITIVE_TYPE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as a primitive type", td->name); + + if(st->buf) + FREEMEM(st->buf); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, sizeof(ASN__PRIMITIVE_TYPE_t)); + break; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c new file mode 100644 index 000000000..c5c2cef65 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c @@ -0,0 +1,115 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Decode an always-primitive type. + */ +asn_dec_rval_t +ber_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval; + ber_tlv_len_t length = 0; /* =0 to avoid [incorrect] warning. */ + + /* + * If the structure is not there, allocate it. + */ + if(st == NULL) { + st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) ASN__DECODE_FAILED; + *sptr = (void *)st; + } + + ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", + td->name, tag_mode); + + /* + * Check tags and extract value length. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + st->size = (int)length; + /* The following better be optimized away. */ + if(sizeof(st->size) != sizeof(length) + && (ber_tlv_len_t)st->size != length) { + st->size = 0; + ASN__DECODE_FAILED; + } + + st->buf = (uint8_t *)MALLOC(length + 1); + if(!st->buf) { + st->size = 0; + ASN__DECODE_FAILED; + } + + memcpy(st->buf, buf_ptr, length); + st->buf[length] = '\0'; /* Just in case */ + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s", + (long)rval.consumed, + (long)length, td->name); + + return rval; +} + +/* + * Encode an always-primitive type using DER. + */ +asn_enc_rval_t +der_encode_primitive(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + + ASN_DEBUG("%s %s as a primitive type (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, + cb, app_key); + ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb && st->buf) { + if(cb(st->buf, st->size, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } else { + assert(st->buf || st->size == 0); + } + + erval.encoded += st->size; + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c new file mode 100644 index 000000000..70c91bc26 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Local internal type passed around as an argument. + */ +struct xdp_arg_s { + const asn_TYPE_descriptor_t *type_descriptor; + void *struct_key; + xer_primitive_body_decoder_f *prim_body_decoder; + int decoded_something; + int want_more; +}; + +/* + * Since some kinds of primitive values can be encoded using value-specific + * tags (, , etc), the primitive decoder must + * be supplied with such tags to parse them as needed. + */ +static int +xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + + /* + * The chunk_buf is guaranteed to start at '<'. + */ + assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); + + /* + * Decoding was performed once already. Prohibit doing it again. + */ + if(arg->decoded_something) + return -1; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, + chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return 0; + } + + return -1; +} + +static ssize_t +xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + size_t lead_wsp_size; + + if(arg->decoded_something) { + if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { + /* + * Example: + * "123 " + * ^- chunk_buf position. + */ + return chunk_size; + } + /* + * Decoding was done once already. Prohibit doing it again. + */ + return -1; + } + + if(!have_more) { + /* + * If we've received something like "1", we can't really + * tell whether it is really `1` or `123`, until we know + * that there is no more data coming. + * The have_more argument will be set to 1 once something + * like this is available to the caller of this callback: + * "1want_more = 1; + return -1; + } + + lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); + chunk_buf = (chunk_buf == NULL)? NULL : ((const char *)chunk_buf + lead_wsp_size); + chunk_size -= lead_wsp_size; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, + chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return lead_wsp_size + chunk_size; + } + + return -1; +} + +asn_dec_rval_t +xer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + size_t struct_size, const char *opt_mname, + const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder) { + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t s_ctx; + struct xdp_arg_s s_arg; + asn_dec_rval_t rc; + + /* + * Create the structure if does not exist. + */ + if(!*sptr) { + *sptr = CALLOC(1, struct_size); + if(!*sptr) ASN__DECODE_FAILED; + } + + memset(&s_ctx, 0, sizeof(s_ctx)); + s_arg.type_descriptor = td; + s_arg.struct_key = *sptr; + s_arg.prim_body_decoder = prim_body_decoder; + s_arg.decoded_something = 0; + s_arg.want_more = 0; + + rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, + xml_tag, buf_ptr, size, + xer_decode__unexpected_tag, + xer_decode__primitive_body); + switch(rc.code) { + case RC_OK: + if(!s_arg.decoded_something) { + char ch; + ASN_DEBUG("Primitive body is not recognized, " + "supplying empty one"); + /* + * Decoding opportunity has come and gone. + * Where's the result? + * Try to feed with empty body, see if it eats it. + */ + if(prim_body_decoder(s_arg.type_descriptor, + s_arg.struct_key, &ch, 0) + != XPBD_BODY_CONSUMED) { + /* + * This decoder does not like empty stuff. + */ + ASN__DECODE_FAILED; + } + } + break; + case RC_WMORE: + /* + * Redo the whole thing later. + * We don't have a context to save intermediate parsing state. + */ + rc.consumed = 0; + break; + case RC_FAIL: + rc.consumed = 0; + if(s_arg.want_more) + rc.code = RC_WMORE; + else + ASN__DECODE_FAILED; + break; + } + return rc; +} diff --git a/src/tmx/Asn_J2735/src/r2020/asn_internal.c b/src/tmx/Asn_J2735/src/r2020/asn_internal.c new file mode 100644 index 000000000..c2a8108e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_internal.c @@ -0,0 +1,48 @@ +#include + +ssize_t +asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, + const char *fmt, ...) { + char scratch[64]; + char *buf = scratch; + size_t buf_size = sizeof(scratch); + int wrote; + int cb_ret; + + do { + va_list args; + va_start(args, fmt); + + wrote = vsnprintf(buf, buf_size, fmt, args); + va_end(args); + if(wrote < (ssize_t)buf_size) { + if(wrote < 0) { + if(buf != scratch) FREEMEM(buf); + return -1; + } + break; + } + + buf_size <<= 1; + if(buf == scratch) { + buf = MALLOC(buf_size); + if(!buf) return -1; + } else { + void *p = REALLOC(buf, buf_size); + if(!p) { + FREEMEM(buf); + return -1; + } + buf = p; + } + } while(1); + + cb_ret = cb(buf, wrote, key); + if(buf != scratch) FREEMEM(buf); + if(cb_ret < 0) { + return -1; + } + + return wrote; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c b/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c new file mode 100644 index 000000000..29653623a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +int +asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t length) { + + if(td && td->op->random_fill) { + asn_random_fill_result_t res = + td->op->random_fill(td, struct_ptr, 0, length); + return (res.code == ARFILL_OK) ? 0 : -1; + } else { + return -1; + } +} + +static uintmax_t +asn__intmax_range(intmax_t lb, intmax_t ub) { + assert(lb <= ub); + if((ub < 0) == (lb < 0)) { + return ub - lb; + } else if(lb < 0) { + return 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return 0; + } +} + +intmax_t +asn_random_between(intmax_t lb, intmax_t rb) { + if(lb == rb) { + return lb; + } else { + const uintmax_t intmax_max = ((~(uintmax_t)0) >> 1); + uintmax_t range = asn__intmax_range(lb, rb); + uintmax_t value = 0; + uintmax_t got_entropy = 0; + + (void)intmax_max; + assert(RAND_MAX > 0xffffff); /* Seen 7ffffffd! */ + assert(range < intmax_max); + + for(; got_entropy < range;) { + got_entropy = (got_entropy << 24) | 0xffffff; +#ifdef HAVE_RANDOM + value = (value << 24) | (random() % 0xffffff); +#else + value = (value << 24) | (rand() % 0xffffff); +#endif + } + + return lb + (intmax_t)(value % (range + 1)); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/ber_decoder.c b/src/tmx/Asn_J2735/src/r2020/ber_decoder.c new file mode 100644 index 000000000..75d601695 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ber_decoder.c @@ -0,0 +1,283 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + if(opt_ctx) opt_ctx->step = step; /* Save context */ \ + if(_code == RC_OK || opt_ctx) \ + rval.consumed = consumed_myself; \ + else \ + rval.consumed = 0; /* Context-free */ \ + return rval; \ + } while(0) + +/* + * The BER decoder of any type. + */ +asn_dec_rval_t +ber_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->ber_decoder(opt_codec_ctx, type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + ptr, size, /* Buffer and its size */ + 0 /* Default tag mode is 0 */ + ); +} + +/* + * Check the set of >> tags matches the definition. + */ +asn_dec_rval_t +ber_check_tags(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, + const void *ptr, size_t size, int tag_mode, int last_tag_form, + ber_tlv_len_t *last_length, int *opt_tlv_form) { + ssize_t consumed_myself = 0; + ssize_t tag_len; + ssize_t len_len; + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_len_t limit_len = -1; + int expect_00_terminators = 0; + int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ + int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ + int tagno; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + RETURN(RC_FAIL); + + /* + * So what does all this implicit skip stuff mean? + * Imagine two types, + * A ::= [5] IMPLICIT T + * B ::= [2] EXPLICIT T + * Where T is defined as + * T ::= [4] IMPLICIT SEQUENCE { ... } + * + * Let's say, we are starting to decode type A, given the + * following TLV stream: <5> <0>. What does this mean? + * It means that the type A contains type T which is, + * in turn, empty. + * Remember though, that we are still in A. We cannot + * just pass control to the type T decoder. Why? Because + * the type T decoder expects <4> <0>, not <5> <0>. + * So, we must make sure we are going to receive <5> while + * still in A, then pass control to the T decoder, indicating + * that the tag <4> was implicitly skipped. The decoder of T + * hence will be prepared to treat <4> as valid tag, and decode + * it appropriately. + */ + + tagno = step /* Continuing where left previously */ + + (tag_mode==1?-1:0) + ; + ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", + td->name, (long)size, tag_mode, step, tagno); + /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ + + if(tag_mode == 0 && tagno == (int)td->tags_count) { + /* + * This must be the _untagged_ ANY type, + * which outermost tag isn't known in advance. + * Fetch the tag and length separately. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + ASN_DEBUG("Advancing %ld in ANY case", + (long)(tag_len + len_len)); + ADVANCE(tag_len + len_len); + } else { + assert(tagno < (int)td->tags_count); /* At least one loop */ + } + for((void)tagno; tagno < (int)td->tags_count; tagno++, step++) { + + /* + * Fetch and process T from TLV. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + ASN_DEBUG("Fetching tag from {%p,%ld}: " + "len %ld, step %d, tagno %d got %s", + ptr, (long)size, + (long)tag_len, step, tagno, + ber_tlv_tag_string(tlv_tag)); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + + /* + * If {I}, don't check anything. + * If {I,B,C}, check B and C unless we're at I. + */ + if(tag_mode != 0 && step == 0) { + /* + * We don't expect tag to match here. + * It's just because we don't know how the tag + * is supposed to look like. + */ + } else { + assert(tagno >= 0); /* Guaranteed by the code above */ + if(tlv_tag != td->tags[tagno]) { + /* + * Unexpected tag. Too bad. + */ + ASN_DEBUG("Expected: %s, " + "expectation failed (tn=%d, tm=%d)", + ber_tlv_tag_string(td->tags[tagno]), + tagno, tag_mode + ); + RETURN(RC_FAIL); + } + } + + /* + * Attention: if there are more tags expected, + * ensure that the current tag is presented + * in constructed form (it contains other tags!). + * If this one is the last one, check that the tag form + * matches the one given in descriptor. + */ + if(tagno < ((int)td->tags_count - 1)) { + if(tlv_constr == 0) { + ASN_DEBUG("tlv_constr = %d, expfail", + tlv_constr); + RETURN(RC_FAIL); + } + } else { + if(last_tag_form != tlv_constr + && last_tag_form != -1) { + ASN_DEBUG("last_tag_form %d != %d", + last_tag_form, tlv_constr); + RETURN(RC_FAIL); + } + } + + /* + * Fetch and process L from TLV. + */ + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + ASN_DEBUG("Fetching len = %ld", (long)len_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + /* + * FIXME + * As of today, the chain of tags + * must either contain several indefinite length TLVs, + * or several definite length ones. + * No mixing is allowed. + */ + if(tlv_len == -1) { + /* + * Indefinite length. + */ + if(limit_len == -1) { + expect_00_terminators++; + } else { + ASN_DEBUG("Unexpected indefinite length " + "in a chain of definite lengths"); + RETURN(RC_FAIL); + } + ADVANCE(tag_len + len_len); + continue; + } else { + if(expect_00_terminators) { + ASN_DEBUG("Unexpected definite length " + "in a chain of indefinite lengths"); + RETURN(RC_FAIL); + } + } + + /* + * Check that multiple TLVs specify ever decreasing length, + * which is consistent. + */ + if(limit_len == -1) { + limit_len = tlv_len + tag_len + len_len; + if(limit_len < 0) { + /* Too great tlv_len value? */ + RETURN(RC_FAIL); + } + } else if(limit_len != tlv_len + tag_len + len_len) { + /* + * Inner TLV specifies length which is inconsistent + * with the outer TLV's length value. + */ + ASN_DEBUG("Outer TLV is %ld and inner is %ld", + (long)limit_len, (long)tlv_len); + RETURN(RC_FAIL); + } + + ADVANCE(tag_len + len_len); + + limit_len -= (tag_len + len_len); + if((ssize_t)size > limit_len) { + /* + * Make sure that we won't consume more bytes + * from the parent frame than the inferred limit. + */ + size = limit_len; + } + } + + if(opt_tlv_form) + *opt_tlv_form = tlv_constr; + if(expect_00_terminators) + *last_length = -expect_00_terminators; + else + *last_length = tlv_len; + + RETURN(RC_OK); +} diff --git a/src/tmx/Asn_J2735/src/r2020/ber_tlv_length.c b/src/tmx/Asn_J2735/src/r2020/ber_tlv_length.c new file mode 100644 index 000000000..0a0deec1a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ber_tlv_length.c @@ -0,0 +1,168 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r) { + const uint8_t *buf = (const uint8_t *)bufptr; + unsigned oct; + + if(size == 0) + return 0; /* Want more */ + + oct = *(const uint8_t *)buf; + if((oct & 0x80) == 0) { + /* + * Short definite length. + */ + *len_r = oct; /* & 0x7F */ + return 1; + } else { + ber_tlv_len_t len; + size_t skipped; + + if(_is_constructed && oct == 0x80) { + *len_r = -1; /* Indefinite length */ + return 1; + } + + if(oct == 0xff) { + /* Reserved in standard for future use. */ + return -1; + } + + oct &= 0x7F; /* Leave only the 7 LS bits */ + for(len = 0, buf++, skipped = 1; + oct && (++skipped <= size); buf++, oct--) { + + /* Verify that we won't overflow. */ + if(!(len >> ((8 * sizeof(len)) - (8+1)))) { + len = (len << 8) | *buf; + } else { + /* Too large length value. */ + return -1; + } + } + + if(oct == 0) { + if(len < 0 || len > RSSIZE_MAX) { + /* Length value out of sane range. */ + return -1; + } + + *len_r = len; + return skipped; + } + + return 0; /* Want more */ + } + +} + +ssize_t +ber_skip_length(const asn_codec_ctx_t *opt_codec_ctx, + int _is_constructed, const void *ptr, size_t size) { + ber_tlv_len_t vlen; /* Length of V in TLV */ + ssize_t tl; /* Length of L in TLV */ + ssize_t ll; /* Length of L in TLV */ + size_t skip; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + return -1; + + /* + * Determine the size of L in TLV. + */ + ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); + if(ll <= 0) return ll; + + /* + * Definite length. + */ + if(vlen >= 0) { + skip = ll + vlen; + if(skip > size) + return 0; /* Want more */ + return skip; + } + + /* + * Indefinite length! + */ + ASN_DEBUG("Skipping indefinite length"); + for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { + ber_tlv_tag_t tag; + + /* Fetch the tag */ + tl = ber_fetch_tag(ptr, size, &tag); + if(tl <= 0) return tl; + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + ((const char *)ptr) + tl, size - tl); + if(ll <= 0) return ll; + + skip += tl + ll; + + /* + * This may be the end of the indefinite length structure, + * two consecutive 0 octets. + * Check if it is true. + */ + if(((const uint8_t *)ptr)[0] == 0 + && ((const uint8_t *)ptr)[1] == 0) + return skip; + + ptr = ((const char *)ptr) + tl + ll; + size -= tl + ll; + } + + /* UNREACHABLE */ +} + +size_t +der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { + size_t required_size; /* Size of len encoding */ + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + int i; + + if(len <= 127) { + /* Encoded in 1 octet */ + if(size) *buf = (uint8_t)len; + return 1; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 8; i < 8 * (int)sizeof(len); i += 8) { + if(len >> i) + required_size++; + else + break; + } + + if(size <= required_size) + return required_size + 1; + + *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ + + /* + * Produce the len encoding, space permitting. + */ + end = buf + required_size; + for(i -= 8; buf < end; i -= 8, buf++) + *buf = (uint8_t)(len >> i); + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/r2020/ber_tlv_tag.c new file mode 100644 index 000000000..64ec14f07 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/ber_tlv_tag.c @@ -0,0 +1,144 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val &= 0x1F) != 0x1F) { + /* + * Simple form: everything encoded in a single octet. + * Tag Class is encoded using two least significant bits. + */ + *tag_r = (val << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; + skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + + +ssize_t +ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { + char buf[sizeof("[APPLICATION ]") + 32]; + ssize_t ret; + + ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + if(ret >= (ssize_t)sizeof(buf) || ret < 2) { + errno = EPERM; + return -1; + } + + return fwrite(buf, 1, ret, f); +} + +ssize_t +ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { + const char *type = 0; + int ret; + + switch(tag & 0x3) { + case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; + case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; + case ASN_TAG_CLASS_CONTEXT: type = ""; break; + case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; + } + + ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); + if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ + + return ret; +} + +char * +ber_tlv_tag_string(ber_tlv_tag_t tag) { + static char buf[sizeof("[APPLICATION ]") + 32]; + + (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + + return buf; +} + + +size_t +ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { + int tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + size_t required_size; + size_t i; + + if(tval <= 30) { + /* Encoded in 1 octet */ + if(size) buf[0] = (tclass << 6) | tval; + return 1; + } else if(size) { + *buf++ = (tclass << 6) | 0x1F; + size--; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { + if(tval >> i) + required_size++; + else + break; + } + + if(size < required_size) + return required_size + 1; + + /* + * Fill in the buffer, space permitting. + */ + end = buf + required_size - 1; + for(i -= 7; buf < end; i -= 7, buf++) + *buf = 0x80 | ((tval >> i) & 0x7F); + *buf = (tval & 0x7F); /* Last octet without high bit */ + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE.c new file mode 100644 index 000000000..5f52e3d8b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE.c @@ -0,0 +1,358 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_CHOICE = { + CHOICE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + CHOICE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + CHOICE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + CHOICE_decode_ber, + CHOICE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + CHOICE_decode_xer, + CHOICE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + CHOICE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + CHOICE_decode_oer, + CHOICE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + CHOICE_decode_uper, + CHOICE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + CHOICE_decode_aper, + CHOICE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + CHOICE_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + CHOICE_outmost_tag +}; + +ber_tlv_tag_t +CHOICE_outmost_tag(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + assert(tag_mode == 0); (void)tag_mode; + assert(tag == 0); (void)tag; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + if(present > 0 && present <= td->elements_count) { + const asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *) + ((const char *)ptr + elm->memb_offset); + } else { + memb_ptr = (const void *) + ((const char *)ptr + elm->memb_offset); + } + + return asn_TYPE_outmost_tag(elm->type, memb_ptr, + elm->tag_mode, elm->tag); + } else { + return (ber_tlv_tag_t)-1; + } +} + +/* + * See the definitions. + */ +static const void *_get_member_ptr(const asn_TYPE_descriptor_t *, + const void *sptr, asn_TYPE_member_t **elm, + unsigned *present); + +int +CHOICE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + return 0; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory CHOICE element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->encoding_constraints.general_constraints) { + return elm->encoding_constraints.general_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + } else { + return elm->type->encoding_constraints.general_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: no CHOICE element given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +void +CHOICE_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as CHOICE", td->name); + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + /* + * Free that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)ptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)ptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } +} + + +/* + * The following functions functions offer protection against -fshort-enums, + * compatible with little- and big-endian machines. + * If assertion is triggered, either disable -fshort-enums, or add an entry + * here with the ->pres_size of your target stracture. + * Unless the target structure is packed, the ".present" member + * is guaranteed to be aligned properly. ASN.1 compiler itself does not + * produce packed code. + */ +unsigned +_fetch_present_idx(const void *struct_ptr, unsigned pres_offset, + unsigned pres_size) { + const void *present_ptr; + unsigned present; + + present_ptr = ((const char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): present = *(const unsigned int *)present_ptr; break; + case sizeof(short): present = *(const unsigned short *)present_ptr; break; + case sizeof(char): present = *(const unsigned char *)present_ptr; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + return 0; /* If not aborted, pass back safe value */ + } + + return present; +} + +void +_set_present_idx(void *struct_ptr, unsigned pres_offset, unsigned pres_size, + unsigned present) { + void *present_ptr; + present_ptr = ((char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): *(unsigned int *)present_ptr = present; break; + case sizeof(short): *(unsigned short *)present_ptr = present; break; + case sizeof(char): *(unsigned char *)present_ptr = present; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + } +} + +static const void * +_get_member_ptr(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_TYPE_member_t **elm_ptr, unsigned *present_out) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + *elm_ptr = NULL; + *present_out = 0; + return NULL; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + *present_out = present; + + /* + * The presence index is intentionally 1-based to avoid + * treating zeroed structure as a valid one. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *const elm = &td->elements[present - 1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + *elm_ptr = elm; + return memb_ptr; + } else { + *elm_ptr = NULL; + return NULL; + } + +} + +int +CHOICE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + asn_TYPE_member_t *aelm; + asn_TYPE_member_t *belm; + unsigned apresent = 0; + unsigned bpresent = 0; + const void *amember = _get_member_ptr(td, aptr, &aelm, &apresent); + const void *bmember = _get_member_ptr(td, bptr, &belm, &bpresent); + + if(amember && bmember) { + if(apresent == bpresent) { + assert(aelm == belm); + return aelm->type->op->compare_struct(aelm->type, amember, bmember); + } else if(apresent < bpresent) { + return -1; + } else { + return 1; + } + } else if(!amember) { + return -1; + } else { + return 1; + } +} + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned +CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, const void *sptr) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + return _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); +} + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int +CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, void *sptr, + unsigned present) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned old_present; + + if(!sptr) { + return -1; + } + + if(present > td->elements_count) + return -1; + + old_present = + _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + if(present == old_present) + return 0; + + if(old_present != 0) { + assert(old_present <= td->elements_count); + ASN_STRUCT_RESET(*td, sptr); + } + + _set_present_idx(sptr, specs->pres_offset, specs->pres_size, present); + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c new file mode 100644 index 000000000..88daaf2c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c @@ -0,0 +1,181 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct = NULL; + asn_TYPE_member_t *elm = NULL; /* CHOICE's element */ + void *memb_ptr = NULL; + void **memb_ptr2 = NULL; + void *st = *sptr; + int value = 0; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + + if (ct && ct->upper_bound >= ct->lower_bound) { + value = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) + value = specs->from_canonical_order[value]; + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } else { + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + int present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE using ALIGNED PER", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present <= 0 || (unsigned)present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present = specs->to_canonical_order[present]; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + if(ct && ct->range_bits >= 0) { + if(present < ct->lower_bound + || present > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) + ASN__ENCODE_FAILED; + int n = present - specs->ext_start; + if(n <= 63) { + if(n < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n, 7)) ASN__ENCODE_FAILED; + } else + ASN__ENCODE_FAILED; + if(aper_open_type_put(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c new file mode 100644 index 000000000..7ad42c763 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c @@ -0,0 +1,447 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the CHOICE type. + */ +asn_dec_rval_t +CHOICE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + if(tag_mode || td->tags_count) { + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, -1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) { + /* ?Subtracted below! */ + ctx->left += rval.consumed; + } + ADVANCE(rval.consumed); + } else { + ctx->left = -1; + } + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key; + + key.el_tag = tlv_tag; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG("Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + + ASN_DEBUG("Skipping unknown tag %s", + ber_tlv_tag_string(tlv_tag)); + + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + RETURN(RC_OK); + } + } while(0); + + case 2: + /* + * PHASE 2. + * Read in the element. + */ + do { + asn_TYPE_member_t *elm;/* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &elements[ctx->step]; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + /* Set presence to be able to free it properly at any time */ + _set_present_idx(st, specs->pres_offset, + specs->pres_size, ctx->step + 1); + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, elm->type, + memb_ptr2, ptr, LEFT, + elm->tag_mode); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + RETURN(RC_FAIL); + case RC_FAIL: /* Fatal error */ + RETURN(rval.code); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } while(0); + + NEXT_PHASE(ctx); + + /* Fall through */ + case 3: + ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", + td->name, (long)ctx->left, (long)size, + tag_mode, td->tags_count); + + if(ctx->left > 0) { + /* + * The type must be fully decoded + * by the CHOICE member-specific decoder. + */ + RETURN(RC_FAIL); + } + + if(ctx->left == -1 + && !(tag_mode || td->tags_count)) { + /* + * This is an untagged CHOICE. + * It doesn't contain nothing + * except for the member itself, including all its tags. + * The decoding is completed. + */ + NEXT_PHASE(ctx); + break; + } + + /* + * Read in the "end of data chunks"'s. + */ + while(ctx->left < 0) { + ssize_t tl; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * Expected <0><0>... + */ + if(((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + continue; + } + } else { + ASN_DEBUG("Unexpected continuation in %s", + td->name); + RETURN(RC_FAIL); + } + + /* UNREACHABLE */ + } + + NEXT_PHASE(ctx); + case 4: + /* No meaningful work here */ + break; + } + + RETURN(RC_OK); +} + +asn_enc_rval_t +CHOICE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + asn_enc_rval_t erval = {0,0,0}; + const void *memb_ptr; + size_t computed_size = 0; + unsigned present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("%s %s as CHOICE", + cb ? "Encoding" : "Estimating", td->name); + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) { + if(present == 0 && td->elements_count == 0) { + /* The CHOICE is empty?! */ + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + ASN__ENCODE_FAILED; + } + + /* + * Seek over the present member of the structure. + */ + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + if(elm->optional) { + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* + * If the CHOICE itself is tagged EXPLICIT: + * T ::= [2] EXPLICIT CHOICE { ... } + * Then emit the appropriate tags. + */ + if(tag_mode == 1 || td->tags_count) { + /* + * For this, we need to pre-compute the member. + */ + ssize_t ret; + + /* Encode member with its tag */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, + elm->tag, 0, 0); + if(erval.encoded == -1) + return erval; + + /* Encode CHOICE with parent or my own tag */ + ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, + cb, app_key); + if(ret == -1) + ASN__ENCODE_FAILED; + computed_size += ret; + } + + /* + * Encode the single underlying member. + */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + + ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", + (long)erval.encoded, (long)computed_size); + + erval.encoded += computed_size; + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c new file mode 100644 index 000000000..bc71a01cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c @@ -0,0 +1,375 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val & 0x3F) != 0x3F) { + /* #8.7.1 */ + *tag_r = ((val & 0x3F) << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + +asn_dec_rval_t +CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + (void)constraints; + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + switch(ctx->phase) { + case 0: { + /* + * Discover the tag. + */ + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + + tag_len = oer_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case 0: + ASN__DECODE_STARVED; + case -1: + ASN__DECODE_FAILED; + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + + t2m = (const asn_TYPE_tag2member_t *)bsearch( + &key, specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG( + "Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip open type extension */ + ASN_DEBUG( + "Not implemented skipping open type extension for tag %s", + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + } while(0); + + + ADVANCE(tag_len); + } + /* Fall through */ + case 1: { + asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_dec_rval_t rval = {0,0}; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Set presence to be able to free it properly at any time */ + (void)CHOICE_variant_set_presence(td, st, ctx->step + 1); + + if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) { + ssize_t got = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + if(got < 0) ASN__DECODE_FAILED; + if(got == 0) ASN__DECODE_STARVED; + rval.code = RC_OK; + rval.consumed = got; + } else { + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + rval.consumed += consumed_myself; + switch(rval.code) { + case RC_OK: + NEXT_PHASE(ctx); + case RC_WMORE: + break; + case RC_FAIL: + SET_PHASE(ctx, 3); /* => 3 */ + } + return rval; + } + case 2: + /* Already decoded everything */ + RETURN(RC_OK); + case 3: + /* Failed to decode, after all */ + RETURN(RC_FAIL); + } + + RETURN(RC_FAIL); +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + + if(tval < 0x3F) { + uint8_t b = (uint8_t)((tclass << 6) | tval); + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } else { + uint8_t buf[1 + 2 * sizeof(tval)]; + uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */ + size_t encoded; + for(; ; tval >>= 7) { + if(tval >> 7) { + *b-- = 0x80 | (tval & 0x7f); + } else { + *b-- = tval & 0x7f; + break; + } + } + *b = (uint8_t)((tclass << 6) | 0x3F); + encoded = sizeof(buf) - (b - buf); + if(cb(b, encoded, app_key) < 0) { + return -1; + } + return encoded; + } + +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +CHOICE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + unsigned present; + const void *memb_ptr; + ber_tlv_tag_t tag; + ssize_t tag_len; + asn_enc_rval_t er = {0, 0, 0}; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("OER %s encoding as CHOICE", td->name); + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN_DEBUG("CHOICE %s member is not selected", td->name); + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag); + if(tag == 0) { + ASN__ENCODE_FAILED; + } + + tag_len = oer_put_tag(tag, cb, app_key); + if(tag_len < 0) { + ASN__ENCODE_FAILED; + } + + if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) { + ssize_t encoded = oer_open_type_put(elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(encoded < 0) ASN__ENCODE_FAILED; + er.encoded = tag_len + encoded; + } else { + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded >= 0) er.encoded += tag_len; + } + + return er; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c new file mode 100644 index 000000000..a97202fc2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +CHOICE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + /* + * Print that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Print member's name and stuff */ + if(0) { + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + } + + return elm->type->op->print_struct(elm->type, memb_ptr, ilevel, + cb, app_key); + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c new file mode 100644 index 000000000..fd0a10163 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +CHOICE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_random_fill_result_t res; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm; + unsigned present; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *st = *sptr; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + present = asn_random_between(1, td->elements_count); + elm = &td->elements[present - 1]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + res = elm->type->op->random_fill(elm->type, memb_ptr2, + &elm->encoding_constraints, max_length); + _set_present_idx(st, specs->pres_offset, specs->pres_size, present); + if(res.code == ARFILL_OK) { + *sptr = st; + } else { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + } + + return res; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c new file mode 100644 index 000000000..77aab6d6a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c @@ -0,0 +1,191 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_dec_rval_t +CHOICE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct; + asn_TYPE_member_t *elm; /* CHOICE's element */ + void *memb_ptr; + void **memb_ptr2; + void *st = *sptr; + int value; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) { + ASN_DEBUG("CHOICE presence from wire %d", value); + value = specs->from_canonical_order[value]; + ASN_DEBUG("CHOICE presence index effective %d", value); + } + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } else { + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + unsigned present; + int present_enc; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present_enc = specs->to_canonical_order[present]; + else + present_enc = present; + + if(ct && ct->range_bits >= 0) { + if(present_enc < ct->lower_bound + || present_enc > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG( + "CHOICE member %d (enc %d) is an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG("CHOICE member %d (enc %d) is not an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + + elm = &td->elements[present]; + ASN_DEBUG("CHOICE member \"%s\" %d (as %d)", elm->name, present, + present_enc); + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present_enc, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) ASN__ENCODE_FAILED; + if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) + ASN__ENCODE_FAILED; + if(uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c new file mode 100644 index 000000000..45b4290a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c @@ -0,0 +1,316 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +CHOICE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value of a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + if(ctx->phase == 0 && !*xml_tag) + ctx->phase = 1; /* Skip the outer tag checking phase */ + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Only waiting for closing tag. + * Phase 4: Skipping unknown extensions. + * Phase 5: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 4;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the member. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + unsigned old_present; + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Start/Continue decoding the inner member */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, + elm->name, + buf_ptr, size); + XER_ADVANCE(tmprval.consumed); + ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", + elm->type->name, tmprval.code); + old_present = _fetch_present_idx(st, + specs->pres_offset, + specs->pres_size); + assert(old_present == 0 || old_present == edx + 1); + /* Record what we've got */ + _set_present_idx(st, + specs->pres_offset, + specs->pres_size, edx + 1); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 3; + /* Fall through */ + } + + /* No need to wait for closing tag; special mode. */ + if(ctx->phase == 3 && !*xml_tag) { + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + xml_tag, tcv); + + /* Skip the extensions section */ + if(ctx->phase == 4) { + ASN_DEBUG("skip_unknown(%d, %ld)", + tcv, (long)ctx->left); + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 5; + RETURN(RC_FAIL); + case 1: + ctx->phase = 3; + /* Fall through */ + case 0: + XER_ADVANCE(ch_size); + continue; + case 2: + ctx->phase = 3; + break; + } + } + + switch(tcv) { + case XCT_BOTH: + break; /* No CHOICE? */ + case XCT_CLOSING: + if(ctx->phase != 3) + break; + XER_ADVANCE(ch_size); + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + if(ctx->phase != 1) + break; /* Really unexpected */ + + /* + * Search which inner member corresponds to this tag. + */ + for(edx = 0; edx < td->elements_count; edx++) { + elm = &td->elements[edx]; + tcv = xer_check_tag(buf_ptr,ch_size,elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + edx = td->elements_count; + break; /* Phase out */ + } + break; + } + if(edx != td->elements_count) + continue; + + /* It is expected extension */ + if(specs->ext_start != -1) { + ASN_DEBUG("Got anticipated extension"); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + ctx->phase = 3; /* Terminating */ + } else { + ctx->left = 1; + ctx->phase = 4; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" + " (ph=%d, tag=%s)", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + td->name, ctx->phase, xml_tag); + break; + } + + ctx->phase = 5; /* Phase out, just in case */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +CHOICE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + unsigned present = 0; + + if(!sptr) + ASN__ENCODE_FAILED; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr = NULL; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + er.encoded = 0; + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE.c new file mode 100644 index 000000000..8397d0c1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE.c @@ -0,0 +1,197 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_SEQUENCE = { + SEQUENCE_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SEQUENCE_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SEQUENCE_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SEQUENCE_decode_ber, + SEQUENCE_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SEQUENCE_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SEQUENCE_decode_oer, + SEQUENCE_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SEQUENCE_decode_aper, + SEQUENCE_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SEQUENCE_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +void +SEQUENCE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + size_t edx; + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_struct_ctx_t *ctx; /* Decoder context */ + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as SEQUENCE", td->name); + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + /* Clean parsing context */ + ctx = (asn_struct_ctx_t *)((char *)sptr + specs->ctx_offset); + FREEMEM(ctx->ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset( + sptr, 0, + ((const asn_SEQUENCE_specifics_t *)(td->specifics))->struct_size); + break; + } +} + +int +SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t edx; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Iterate over structure members and check their validity. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + asn_constr_check_f *constr; + int ret; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + continue; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + constr = elm->encoding_constraints.general_constraints; + if(!constr) + constr = elm->type->encoding_constraints.general_constraints; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + return 0; +} + +int +SEQUENCE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + size_t edx; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *amemb; + const void *bmemb; + int ret; + + if(elm->flags & ATF_POINTER) { + amemb = + *(const void *const *)((const char *)aptr + elm->memb_offset); + bmemb = + *(const void *const *)((const char *)bptr + elm->memb_offset); + if(!amemb) { + if(!bmemb) continue; + if(elm->default_value_cmp + && elm->default_value_cmp(bmemb) == 0) { + /* A is absent, but B is present and equal to DEFAULT */ + continue; + } + return -1; + } else if(!bmemb) { + if(elm->default_value_cmp + && elm->default_value_cmp(amemb) == 0) { + /* B is absent, but A is present and equal to DEFAULT */ + continue; + } + return 1; + } + } else { + amemb = (const void *)((const char *)aptr + elm->memb_offset); + bmemb = (const void *)((const char *)bptr + elm->memb_offset); + } + + ret = elm->type->op->compare_struct(elm->type, amemb, bmemb); + if(ret != 0) return ret; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF.c new file mode 100644 index 000000000..9c5d6cded --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF.c @@ -0,0 +1,92 @@ +/*- + * Copyright (c) 2003, 2004, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_TYPE_operation_t asn_OP_SEQUENCE_OF = { + SEQUENCE_OF_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SEQUENCE_OF_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SEQUENCE_OF_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SEQUENCE_OF_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SEQUENCE_OF_decode_oer, /* Same as SET OF decoder. */ + SEQUENCE_OF_encode_oer, /* Same as SET OF encoder */ +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SEQUENCE_OF_decode_uper, /* Same as SET OF decoder */ + SEQUENCE_OF_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SEQUENCE_OF_decode_aper, + SEQUENCE_OF_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SEQUENCE_OF_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +int +SEQUENCE_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_sequence_ *a = _A_CSEQUENCE_FROM_VOID(aptr); + const asn_anonymous_sequence_ *b = _A_CSEQUENCE_FROM_VOID(bptr); + ssize_t idx; + + if(a && b) { + ssize_t common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, a->array[idx], b->array[idx]); + if(ret) return ret; + } + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c new file mode 100644 index 000000000..ff3ae8bc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + asn_TYPE_member_t *elm = td->elements; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF size (%d) using ALIGNED PER", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = (list->count < ct->lower_bound + || list->count > ct->upper_bound); + ASN_DEBUG("lb %lld ub %lld %s", + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) + ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) + ASN__ENCODE_FAILED; + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ +/* + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; +*/ + if (ct->lower_bound == ct->upper_bound && ct->upper_bound < 65536) { + /* No length determinant */ + } else if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) + ASN__ENCODE_FAILED; + } + + for(seq = -1; seq < list->count;) { + ssize_t mayEncode; + int need_eom = 0; + if(seq < 0) seq = 0; + if(ct && ct->effective_bits >= 0) { + mayEncode = list->count; + } else { + mayEncode = aper_put_length(po, -1, -1, list->count - seq, &need_eom); + if(mayEncode < 0) ASN__ENCODE_FAILED; + } + + while(mayEncode--) { + void *memb_ptr = list->array[seq++]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->aper_encoder(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, po); + if(er.encoded == -1) + ASN__ENCODE_FAILED; + } + + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c new file mode 100644 index 000000000..178f8654d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The DER encoder of the SEQUENCE OF type. + */ +asn_enc_rval_t +SEQUENCE_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(ptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + asn_enc_rval_t erval = {0,0,0}; + int edx; + + ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, + cb, app_key); + if(encoding_size == -1) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + computed_size += encoding_size; + if(!cb) { + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + encoding_size += erval.encoded; + } + + if(computed_size != (size_t)encoding_size) { + /* + * Encoded size is not equal to the computed size. + */ + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + } else { + erval.encoded = computed_size; + erval.structure_ptr = 0; + erval.failed_type = 0; + } + + return erval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c new file mode 100644 index 000000000..eb20a0701 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + const asn_TYPE_member_t *elm = td->elements; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, + po); + if(er.encoded == -1) ASN__ENCODE_FAILED; + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c new file mode 100644 index 000000000..7bd323677 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_enc_rval_t +SEQUENCE_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 + : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c new file mode 100644 index 000000000..895b6daf3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c @@ -0,0 +1,457 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +asn_dec_rval_t +SEQUENCE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (APER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ +#if 0 + int padding; +#endif + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } +#if 0 + /* Get Padding */ + padding = (8 - (pd->moved % 8)) % 8; + if(padding > 0) + ASN_DEBUG("For element %s,offset= %ld Padding bits = %d", td->name, pd->moved, padding); +#if 0 /* old way of removing padding */ + per_get_few_bits(pd, padding); +#else /* Experimental fix proposed by @mhanna123 */ + if(edx != (td->elements_count-1)) + per_get_few_bits(pd, padding); + else { + if(specs->roms_count && (padding > 0)) + ASN_DEBUG(">>>>> not skipping padding of %d bits for element:%ld out of %d", padding, edx, td->elements_count); + else + per_get_few_bits(pd, padding); + } +#endif /* dealing with padding */ +#endif + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + if (OPEN_TYPE_aper_is_unknown_type(td, st, elm)) { + rv = OPEN_TYPE_aper_unknown_type_discard_bytes(pd); + FREEMEM(opres); + return rv; + } + rv = OPEN_TYPE_aper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = aper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) + ASN__DECODE_STARVED; + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %zd bits (%x..)", + td->name, bmlength, *epres); + + /* Deal with padding */ + if (aper_get_align(pd) < 0) + ASN__DECODE_STARVED; + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%zu is not extension", edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: + break; + case 0: + continue; + default: + if(aper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + } + break; + } + + FREEMEM(epres); + } + + /* Fill DEFAULT members in extensions */ + for(edx = specs->roms_count; edx < specs->roms_count + + specs->aoms_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void **memb_ptr2; /* Pointer to member pointer */ + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE_handle_extensions_aper(const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%s (@%zu) is not extension", elm->type->name, edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s (@%zu) present => %d", + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) + return -1; + /* Encode as open type field */ + if(po2 && present && aper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po2)) + return -1; + + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (APER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE_handle_extensions_aper(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %zu not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s", td->name, elm->name); + er = elm->type->op->aper_encoder(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po); + if(er.encoded == -1) + return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(aper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE_handle_extensions_aper(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE_handle_extensions_aper(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c new file mode 100644 index 000000000..e982172d3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c @@ -0,0 +1,612 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef PHASE_OUT +#define PHASE_OUT(ctx) \ + do { \ + ctx->phase = 10; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +/* + * Tags are canonically sorted in the tag2element map. + */ +static int +_t2e_cmp(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) { + if(a->el_no > b->el_no) + return 1; + /* + * Important: we do not check + * for a->el_no <= b->el_no! + */ + return 0; + } else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the SEQUENCE type. + */ +asn_dec_rval_t +SEQUENCE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* SEQUENCE element's index */ + + ASN_DEBUG("Decoding %s as SEQUENCE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next member from the list of + * this structure's elements. + * (ctx->step) stores the member being processed + * between invocations and the microphase {0,1} of parsing + * that member: + * step = ( * 2 + ). + */ + for(edx = ((size_t)ctx->step >> 1); edx < td->elements_count; + edx++, ctx->step = (ctx->step & ~1) + 2) { + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + ssize_t tag_len; /* Length of TLV's T */ + size_t opt_edx_end; /* Next non-optional element */ + size_t n; + int use_bsearch; + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + ASN_DEBUG("In %s SEQUENCE left %d, edx=%" ASN_PRI_SIZE " flags=%d" + " opt=%d ec=%d", + td->name, (int)ctx->left, edx, + elements[edx].flags, elements[edx].optional, + td->elements_count); + + if(ctx->left == 0 /* No more stuff is expected */ + && ( + /* Explicit OPTIONAL specification reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx))) { + ASN_DEBUG("End of SEQUENCE %s", td->name); + /* + * Found the legitimate end of the structure. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("Current tag in %s SEQUENCE for element %" ASN_PRI_SIZE " " + "(%s) is %s encoded in %d bytes, of frame %ld", + td->name, edx, elements[edx].name, + ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } else if(((const uint8_t *)ptr)[1] == 0) { + ASN_DEBUG("edx = %" ASN_PRI_SIZE ", opt = %d, ec=%d", edx, + elements[edx].optional, td->elements_count); + if((edx + elements[edx].optional == td->elements_count) + || IN_EXTENSION_GROUP(specs, edx)) { + /* + * Yeah, baby! Found the terminator + * of the indefinite length structure. + */ + /* + * Proceed to the canonical + * finalization function. + * No advancing is necessary. + */ + goto phase3; + } + } + } + + /* + * Find the next available type with this tag. + */ + use_bsearch = 0; + opt_edx_end = edx + elements[edx].optional + 1; + if(opt_edx_end > td->elements_count) + opt_edx_end = td->elements_count; /* Cap */ + else if(opt_edx_end - edx > 8) { + /* Limit the scope of linear search... */ + opt_edx_end = edx + 8; + use_bsearch = 1; + /* ... and resort to bsearch() */ + } + for(n = edx; n < opt_edx_end; n++) { + if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { + /* + * Found element corresponding to the tag + * being looked at. + * Reposition over the right element. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].flags & ATF_ANY_TYPE) { + /* + * This is the ANY type, which may bear + * any flag whatsoever. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].tag == (ber_tlv_tag_t)-1) { + use_bsearch = 1; + break; + } + } + if(use_bsearch) { + /* + * Resort to a binary search over + * sorted array of tags. + */ + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + key.el_no = edx; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _t2e_cmp); + if(t2m) { + const asn_TYPE_tag2member_t *best = 0; + const asn_TYPE_tag2member_t *t2m_f, *t2m_l; + size_t edx_max = edx + elements[edx].optional; + /* + * Rewind to the first element with that tag, + * `cause bsearch() does not guarantee order. + */ + t2m_f = t2m + t2m->toff_first; + t2m_l = t2m + t2m->toff_last; + for(t2m = t2m_f; t2m <= t2m_l; t2m++) { + if(t2m->el_no > edx_max) break; + if(t2m->el_no < edx) continue; + best = t2m; + } + if(best) { + edx = best->el_no; + ctx->step = 1 + 2 * edx; + goto microphase2; + } + } + n = opt_edx_end; + } + if(n == opt_edx_end) { + /* + * If tag is unknown, it may be either + * an unknown (thus, incorrect) tag, + * or an extension (...), + * or an end of the indefinite-length structure. + */ + if(!IN_EXTENSION_GROUP(specs, + edx + elements[edx].optional)) { + ASN_DEBUG("Unexpected tag %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + ASN_DEBUG("Expected tag %s (%s)%s", + ber_tlv_tag_string(elements[edx].tag), + elements[edx].name, + elements[edx].optional ?" or alternatives":""); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + edx += elements[edx].optional; + + ASN_DEBUG("Skipping unexpected %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + ASN_DEBUG("Skip length %d in %s", + (int)skip, td->name); + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + ctx->step -= 2; + edx--; + continue; /* Try again with the next tag */ + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elements[edx].flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elements[edx].memb_offset; + memb_ptr2 = &memb_ptr; + } + /* + * Invoke the member fetch routine according to member's type + */ + if(elements[edx].flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_ber_get(opt_codec_ctx, td, st, &elements[edx], ptr, LEFT); + } else { + rval = elements[edx].type->op->ber_decoder(opt_codec_ctx, + elements[edx].type, + memb_ptr2, ptr, LEFT, + elements[edx].tag_mode); + } + ASN_DEBUG("In %s SEQUENCE decoded %" ASN_PRI_SIZE " %s of %d " + "in %d bytes rval.code %d, size=%d", + td->name, edx, elements[edx].type->name, + (int)LEFT, (int)rval.consumed, rval.code, (int)size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", + (long)ctx->left, (long)size); + /* Fall through */ + case RC_FAIL: /* Fatal error */ + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all structure members) */ + + phase3: + ctx->phase = 3; + /* Fall through */ + case 3: /* 00 and other tags expected */ + case 4: /* only 00's expected */ + + ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", + td->name, (long)ctx->left, (long)size); + + /* + * Skip everything until the end of the SEQUENCE. + */ + while(ctx->left) { + ssize_t tl, ll; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * If expected <0><0>... + */ + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + ctx->phase = 4; + continue; + } + } + + if(!IN_EXTENSION_GROUP(specs, td->elements_count) + || ctx->phase == 4) { + ASN_DEBUG("Unexpected continuation " + "of a non-extensible type " + "%s (SEQUENCE): %s", + td->name, + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tl, LEFT - tl); + switch(ll) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(tl + ll); + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + + +/* + * The DER encoder of the SEQUENCE type. + */ +asn_enc_rval_t +SEQUENCE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t computed_size = 0; + asn_enc_rval_t erval = {0,0,0}; + ssize_t ret; + size_t edx; + + ASN_DEBUG("%s %s as SEQUENCE", + cb?"Encoding":"Estimating", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + erval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s estimated %ld bytes", + edx, elm->name, (long)erval.encoded); + } + + /* + * Encode the TLV for the sequence itself. + */ + ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); + if(ret == -1) + ASN__ENCODE_FAILED; + erval.encoded = computed_size + ret; + + if(!cb) ASN__ENCODED_OK(erval); + + /* + * Encode all members. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t tmperval = {0,0,0}; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) continue; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + tmperval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, cb, app_key); + if(tmperval.encoded == -1) + return tmperval; + computed_size -= tmperval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s of SEQUENCE %s encoded in %ld bytes", + edx, elm->name, td->name, (long)tmperval.encoded); + } + + if(computed_size != 0) + /* + * Encoded size is not equal to the computed size. + */ + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(erval); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c new file mode 100644 index 000000000..a3bdb7bda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c @@ -0,0 +1,557 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +#define IN_ROOT_GROUP_PRED(edx) \ + edx < (specs->first_extension < 0 ? td->elements_count \ + : (size_t)specs->first_extension) + +#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * Return pointer to a member. + */ +static void ** +element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return (void **)((char *)struct_ptr + elm->memb_offset); + } else { + assert(tmp_save_ptr); + *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset); + return tmp_save_ptr; + } +} + +static const void * +element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return *(const void *const *)((const char *)struct_ptr + + elm->memb_offset); + } else { + return (const void *)((const char *)struct_ptr + elm->memb_offset); + } +} + +asn_dec_rval_t +SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch preamble. + */ + asn_bit_data_t *preamble; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + size_t preamble_bytes = ((7 + preamble_bits) >> 3); + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name); + + ASN_DEBUG( + "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)", + preamble_bits, td->name, has_extensions_bit); + + if(preamble_bytes > size) { + ASN__DECODE_STARVED; + } + + preamble = asn_bit_data_new_contiguous(ptr, preamble_bits); + if(!preamble) { + RETURN(RC_FAIL); + } + preamble->nboff = has_extensions_bit; + ctx->ptr = preamble; + ADVANCE(preamble_bytes); + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_bit_data_t *preamble = ctx->ptr; + size_t edx; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name); + + assert(preamble); + + for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx); + edx++, ctx->step = (ctx->step & ~1) + 2) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + ASN_DEBUG("Decoding %s->%s", td->name, elm->name); + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + if(ctx->step & 1) { + goto microphase2_decode_continues; + } + + + if(elm->optional) { + int32_t present = asn_get_few_bits(preamble, 1); + if(present < 0) { + ASN_DEBUG("Presence map ended prematurely: %d", present); + RETURN(RC_FAIL); + } else if(present == 0) { + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + void *tmp; + if(elm->default_value_set( + element_ptrptr(st, elm, &tmp))) { + RETURN(RC_FAIL); + } + } + /* The member is not present. */ + continue; + } + /* Present OPTIONAL or DEFAULT component. */ + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2_decode_continues: + if(elm->flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + void *save_memb_ptr; /* Temporary reference. */ + void **memb_ptr2; /* Pointer to a pointer to a memmber */ + + memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr); + + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + switch(rval.code) { + case RC_OK: + ADVANCE(rval.consumed); + break; + case RC_WMORE: + ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name, + elm->name); + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + case RC_FAIL: + ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name, + elm->name); + RETURN(RC_FAIL); + } + } /* for(all root members) */ + + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 2: + assert(ctx->ptr); + { + /* Cleanup preamble. */ + asn_bit_data_t *preamble = ctx->ptr; + asn_bit_data_t *extadds; + int has_extensions_bit = (specs->first_extension >= 0); + int extensions_present = + has_extensions_bit + && (preamble->buffer == NULL + || (((const uint8_t *)preamble->buffer)[0] & 0x80)); + uint8_t unused_bits; + size_t len = 0; + ssize_t len_len; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name); + + preamble->buffer = 0; /* Will do extensions_present==1 next time. */ + + if(!extensions_present) { + ctx->phase = 10; + RETURN(RC_OK); + } + + /* + * X.696 (08/2015) #16.1 (c), #16.4 + * Read in the extension addition presence bitmap. + */ + + len_len = oer_fetch_length(ptr, size, &len); + if(len_len > 0) { + ADVANCE(len_len); + } else if(len_len < 0) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + + if(len == 0) { + /* 16.4.1-2 */ + RETURN(RC_FAIL); + } else if(len > size) { + RETURN(RC_WMORE); + } + + /* Account for unused bits */ + unused_bits = 0x7 & *(const uint8_t *)ptr; + ADVANCE(1); + len--; + if(unused_bits && len == 0) { + RETURN(RC_FAIL); + } + + /* Get the extensions map */ + extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits); + if(!extadds) { + RETURN(RC_FAIL); + } + FREEMEM(preamble); + ctx->ptr = extadds; + ADVANCE(len); + } + NEXT_PHASE(ctx); + ctx->step = + (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + /* Fall through */ + case 3: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name); + for(; ctx->step < (signed)td->elements_count; ctx->step++) { + asn_bit_data_t *extadds = ctx->ptr; + size_t edx = ctx->step; + asn_TYPE_member_t *elm = &td->elements[edx]; + void *tmp_memb_ptr; + void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr); + + switch(asn_get_few_bits(extadds, 1)) { + case -1: + /* + * Not every one of our extensions is known to the remote side. + * Continue filling in their defaults though. + */ + /* Fall through */ + case 0: + /* Fill-in DEFAULT */ + if(elm->default_value_set + && elm->default_value_set(memb_ptr2)) { + RETURN(RC_FAIL); + } + continue; + case 1: { + /* Read OER open type */ + ssize_t ot_size = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + assert(ot_size <= (ssize_t)size); + if(ot_size > 0) { + ADVANCE(ot_size); + } else if(ot_size < 0) { + RETURN(RC_FAIL); + } else { + /* Roll back open type parsing */ + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + break; + } + default: + RETURN(RC_FAIL); + } + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 4: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name); + /* Read in the rest of Open Types while ignoring them */ + for(;;) { + asn_bit_data_t *extadds = ctx->ptr; + switch(asn_get_few_bits(extadds, 1)) { + case 0: + continue; + case 1: { + ssize_t skipped = oer_open_type_skip(ptr, size); + if(skipped > 0) { + ADVANCE(skipped); + } else if(skipped < 0) { + RETURN(RC_FAIL); + } else { + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + continue; + } + case -1: + /* No more Open Type encoded components */ + break; + default: + RETURN(RC_FAIL); + } + break; + } + } + + RETURN(RC_OK); +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + size_t computed_size = 0; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + uint32_t has_extensions = 0; + size_t edx; + int ret; + + (void)constraints; + + if(preamble_bits) { + asn_bit_outp_t preamble; + + memset(&preamble, 0, sizeof(preamble)); + preamble.output = cb; + preamble.op_key = app_key; + + if(has_extensions_bit) { + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default values in extensions */ + } else { + has_extensions = 1; + break; + } + } + } + ret = asn_put_few_bits(&preamble, has_extensions, 1); + assert(ret == 0); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Encode optional components bitmap. + */ + if(specs->roms_count) { + FOR_IN_ROOT_GROUP(edx) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + if(elm->optional) { + const void *memb_ptr = element_ptr(sptr, elm); + uint32_t has_component = memb_ptr != NULL; + if(has_component && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + has_component = 0; + } + ret = asn_put_few_bits(&preamble, has_component, 1); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + } + } + + asn_put_aligned_flush(&preamble); + computed_size += preamble.flushed_bytes; + } /* if(preamble_bits) */ + + /* + * Put root components and extensions root. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t er = {0,0,0}; + const void *memb_ptr; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Skip default values in encoding */ + continue; + } + } else { + if(elm->optional) continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + if(!elm->type->op->oer_encoder) { + ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name); + ASN__ENCODE_FAILED; + } + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded == -1) { + ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name, + elm->name); + return er; + } + computed_size += er.encoded; + } + + /* + * Before encode extensions, encode extensions additions presence bitmap + # X.696 (08/2015) #16.4. + */ + if(has_extensions) { + asn_bit_outp_t extadds; + + /* Special case allowing us to use exactly one byte for #8.6 */ + size_t aoms_length_bits = specs->aoms_count; + size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3; + uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07)); + + assert(1 + aoms_length_bytes <= 127); + + memset(&extadds, 0, sizeof(extadds)); + extadds.output = cb; + extadds.op_key = app_key; + + /* #8.6 length determinant */ + ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Number of unused bytes, #16.4.2 */ + ret = asn_put_few_bits(&extadds, unused_bits, 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Encode presence bitmap #16.4.3 */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + memb_ptr = 0; /* Do not encode default value. */ + } + ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1); + } + if(ret < 0) ASN__ENCODE_FAILED; + + asn_put_aligned_flush(&extadds); + computed_size += extadds.flushed_bytes; + + /* Now, encode extensions */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default value. */ + } else { + ssize_t wrote = oer_open_type_put( + elm->type, elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(wrote == -1) { + ASN__ENCODE_FAILED; + } + computed_size += wrote; + } + } else if(!elm->optional) { + ASN__ENCODE_FAILED; + } + } + } /* if(has_extensions) */ + + + { + asn_enc_rval_t er = {0, 0, 0}; + er.encoded = computed_size; + ASN__ENCODED_OK(er); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c new file mode 100644 index 000000000..7f9e231a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +SEQUENCE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t edx; + int ret; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) continue; + /* Print line */ + /* Fall through */ + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Indentation */ + _i_INDENT(1); + + /* Print the member's name and stuff */ + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + + /* Print the member itself */ + ret = elm->type->op->print_struct(elm->type, memb_ptr, ilevel + 1, + cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c new file mode 100644 index 000000000..b464f5722 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +SEQUENCE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + void *st = *sptr; + size_t edx; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + for(edx = 0; edx < td->elements_count; edx++) { + const asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_random_fill_result_t tmpres; + + if(elm->optional && asn_random_between(0, 4) == 2) { + /* Sometimes decide not to fill the optional value */ + continue; + } + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + tmpres = elm->type->op->random_fill( + elm->type, memb_ptr2, &elm->encoding_constraints, + max_length > result_ok.length ? max_length - result_ok.length : 0); + switch(tmpres.code) { + case ARFILL_OK: + result_ok.length += tmpres.length; + continue; + case ARFILL_SKIPPED: + assert(!(elm->flags & ATF_POINTER) || *memb_ptr2 == NULL); + continue; + case ARFILL_FAILED: + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return tmpres; + } + } + + *sptr = st; + + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c new file mode 100644 index 000000000..b235f4de9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c @@ -0,0 +1,429 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +asn_dec_rval_t +SEQUENCE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; + edx < (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + rv = OPEN_TYPE_uper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = uper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", + td->name, (long)bmlength, *epres); + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, + *memb_ptr2); + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: break; + case 0: continue; + default: + if(uper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + ASN_DEBUG("Skipped overflow extension"); + continue; + } + break; + } + + FREEMEM(epres); + } + + if(specs->first_extension >= 0) { + unsigned i; + /* Fill DEFAULT members in extensions */ + for(i = specs->roms_count; i < specs->roms_count + specs->aoms_count; + i++) { + asn_TYPE_member_t *elm; + void **memb_ptr2; /* Pointer to member pointer */ + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE__handle_extensions(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s:%s (@%" ASN_PRI_SIZE ") present => %d", elm->name, + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) { + return -1; + } + /* Encode as open type field */ + if(po2 && present + && uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po2)) + return -1; + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE__handle_extensions(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s:%s", td->name, elm->name, elm->type->name); + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, *memb_ptr2, + po); + if(er.encoded == -1) return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of extensions %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(uper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE__handle_extensions(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE__handle_extensions(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c new file mode 100644 index 000000000..c6475f78a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c @@ -0,0 +1,348 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = (num_bytes); \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SEQUENCE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Skipping unknown extensions. + * Phase 4: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 3;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the inner member of a sequence. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr_dontuse; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr_dontuse = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr_dontuse; /* Only use of memb_ptr_dontuse */ + } + + if(elm->flags & ATF_OPEN_TYPE) { + tmprval = OPEN_TYPE_xer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + /* Invoke the inner type decoder, m.b. multiple times */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + ptr, size); + } + XER_ADVANCE(tmprval.consumed); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 1; /* Back to body processing */ + ctx->step = ++edx; + ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", + ctx->phase, ctx->step); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", + tcv, ctx->phase, xml_tag); + + /* Skip the extensions section */ + if(ctx->phase == 3) { + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 4; + RETURN(RC_FAIL); + case 0: + XER_ADVANCE(ch_size); + continue; + case 1: + XER_ADVANCE(ch_size); + ctx->phase = 1; + continue; + case 2: + ctx->phase = 1; + break; + } + } + + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + if(edx >= td->elements_count || + /* Explicit OPTIONAL specs reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx)) { + XER_ADVANCE(ch_size); + ctx->phase = 4; /* Phase out */ + RETURN(RC_OK); + } else { + ASN_DEBUG("Premature end of XER SEQUENCE"); + RETURN(RC_FAIL); + } + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%" ASN_PRI_SIZE "", + tcv, ctx->phase, edx); + if(ctx->phase != 1) { + break; /* Really unexpected */ + } + + if(edx < td->elements_count) { + /* + * Search which member corresponds to this tag. + */ + size_t n; + size_t edx_end = edx + elements[edx].optional + 1; + if(edx_end > td->elements_count) + edx_end = td->elements_count; + for(n = edx; n < edx_end; n++) { + elm = &td->elements[n]; + tcv = xer_check_tag(ptr, ch_size, elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx = n; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + n = edx_end; + break; /* Phase out */ + } + break; + } + if(n != edx_end) + continue; + } else { + ASN_DEBUG("Out of defined members: %" ASN_PRI_SIZE "/%u", + edx, td->elements_count); + } + + /* It is expected extension */ + if(IN_EXTENSION_GROUP(specs, + edx + (edx < td->elements_count + ? elements[edx].optional : 0))) { + ASN_DEBUG("Got anticipated extension at %" ASN_PRI_SIZE "", + edx); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + } else { + ctx->left = 1; + ctx->phase = 3; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", + size>0?((const char *)ptr)[0]:'.', + size>1?((const char *)ptr)[1]:'.', + size>2?((const char *)ptr)[2]:'.', + size>3?((const char *)ptr)[3]:'.', + size>4?((const char *)ptr)[4]:'.', + size>5?((const char *)ptr)[5]:'.'); + break; + } + + ctx->phase = 4; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +SEQUENCE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + int xcan = (flags & XER_F_CANONICAL); + asn_TYPE_descriptor_t *tmp_def_val_td = 0; + void *tmp_def_val = 0; + size_t edx; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + assert(tmp_def_val == 0); + if(elm->default_value_set) { + if(elm->default_value_set(&tmp_def_val)) { + ASN__ENCODE_FAILED; + } else { + memb_ptr = tmp_def_val; + tmp_def_val_td = elm->type; + } + } else if(elm->optional) { + continue; + } else { + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + /* Print the member itself */ + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmp_def_val) { + ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + tmp_def_val = 0; + } + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + ASN__ENCODE_FAILED; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF.c new file mode 100644 index 000000000..97a7cac0c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF.c @@ -0,0 +1,371 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_TYPE_operation_t asn_OP_SET_OF = { + SET_OF_free, +#if !defined(ASN_DISABLE_PRINT_SUPPORT) + SET_OF_print, +#else + 0, +#endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */ + SET_OF_compare, +#if !defined(ASN_DISABLE_BER_SUPPORT) + SET_OF_decode_ber, + SET_OF_encode_der, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_XER_SUPPORT) + SET_OF_decode_xer, + SET_OF_encode_xer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */ +#if !defined(ASN_DISABLE_JER_SUPPORT) + SET_OF_encode_jer, +#else + 0, +#endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) + SET_OF_decode_oer, + SET_OF_encode_oer, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + SET_OF_decode_uper, + SET_OF_encode_uper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + SET_OF_decode_aper, + SET_OF_encode_aper, +#else + 0, + 0, +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_RFILL_SUPPORT) + SET_OF_random_fill, +#else + 0, +#endif /* !defined(ASN_DISABLE_RFILL_SUPPORT) */ + 0 /* Use generic outmost tag fetcher */ +}; + +/* Append bytes to the above structure */ +static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { + struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; + + if(el_buf->length + size > el_buf->allocated_size) { + size_t new_size = el_buf->allocated_size ? el_buf->allocated_size : 8; + void *p; + + do { + new_size <<= 2; + } while(el_buf->length + size > new_size); + + p = REALLOC(el_buf->buf, new_size); + if(p) { + el_buf->buf = p; + el_buf->allocated_size = new_size; + } else { + return -1; + } + } + + memcpy(el_buf->buf + el_buf->length, buffer, size); + + el_buf->length += size; + return 0; +} + +static void assert_unused_bits(const struct _el_buffer* p) { + if(p->length) { + assert((p->buf[p->length-1] & ~(0xff << p->bits_unused)) == 0); + } else { + assert(p->bits_unused == 0); + } +} + +static int _el_buf_cmp(const void *ap, const void *bp) { + const struct _el_buffer *a = (const struct _el_buffer *)ap; + const struct _el_buffer *b = (const struct _el_buffer *)bp; + size_t common_len; + int ret = 0; + + if(a->length < b->length) + common_len = a->length; + else + common_len = b->length; + + if (a->buf && b->buf) { + ret = memcmp(a->buf, b->buf, common_len); + } + if(ret == 0) { + if(a->length < b->length) + ret = -1; + else if(a->length > b->length) + ret = 1; + /* Ignore unused bits. */ + assert_unused_bits(a); + assert_unused_bits(b); + } + + return ret; +} + +void +SET_OF__encode_sorted_free(struct _el_buffer *el_buf, size_t count) { + size_t i; + + for(i = 0; i < count; i++) { + FREEMEM(el_buf[i].buf); + } + + FREEMEM(el_buf); +} + +struct _el_buffer * +SET_OF__encode_sorted(const asn_TYPE_member_t *elm, + const asn_anonymous_set_ *list, + enum SET_OF__encode_method method) { + struct _el_buffer *encoded_els; + int edx; + + encoded_els = + (struct _el_buffer *)CALLOC(list->count, sizeof(encoded_els[0])); + if(encoded_els == NULL) { + return NULL; + } + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + const void *memb_ptr = list->array[edx]; + struct _el_buffer *encoding_el = &encoded_els[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) break; + + /* + * Encode the member into the prepared space. + */ + switch(method) { +#if !defined(ASN_DISABLE_BER_SUPPORT) + case SOES_DER: + erval = elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, + _el_addbytes, encoding_el); + break; +#endif /* !defined(ASN_DISABLE_BER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) + case SOES_CUPER: + erval = uper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + break; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */ +#if !defined(ASN_DISABLE_APER_SUPPORT) + case SOES_CAPER: + erval = aper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + break; +#endif /* !defined(ASN_DISABLE_APER_SUPPORT) */ + + default: + assert(!"Unreachable"); + break; + } + if(erval.encoded < 0) break; + } + + if(edx == list->count) { + /* + * Sort the encoded elements according to their encoding. + */ + qsort(encoded_els, list->count, sizeof(encoded_els[0]), _el_buf_cmp); + + return encoded_els; + } else { + SET_OF__encode_sorted_free(encoded_els, edx); + return NULL; + } +} + +void +SET_OF_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + const asn_SET_OF_specifics_t *specs; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); + asn_struct_ctx_t *ctx; /* Decoder context */ + int i; + + /* + * Could not use set_of_empty() because of (*free) + * incompatibility. + */ + for(i = 0; i < list->count; i++) { + void *memb_ptr = list->array[i]; + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } + list->count = 0; /* No meaningful elements left */ + + asn_set_empty(list); /* Remove (list->array) */ + + specs = (const asn_SET_OF_specifics_t *)td->specifics; + ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); + if(ctx->ptr) { + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } + } +} + +int +SET_OF_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + asn_constr_check_f *constr; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int i; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + constr = elm->encoding_constraints.general_constraints; + if(!constr) constr = elm->type->encoding_constraints.general_constraints; + + /* + * Iterate over the members of an array. + * Validate each in turn, until one fails. + */ + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + int ret; + + if(!memb_ptr) continue; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + return 0; +} + +struct comparable_ptr { + const asn_TYPE_descriptor_t *td; + const void *sptr; +}; + +static int +SET_OF__compare_cb(const void *aptr, const void *bptr) { + const struct comparable_ptr *a = aptr; + const struct comparable_ptr *b = bptr; + assert(a->td == b->td); + return a->td->op->compare_struct(a->td, a->sptr, b->sptr); +} + +int +SET_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_set_ *a = _A_CSET_FROM_VOID(aptr); + const asn_anonymous_set_ *b = _A_CSET_FROM_VOID(bptr); + + if(a && b) { + struct comparable_ptr *asorted; + struct comparable_ptr *bsorted; + ssize_t common_length; + ssize_t idx; + + if(a->count == 0) { + if(b->count) return -1; + return 0; + } else if(b->count == 0) { + return 1; + } + + asorted = MALLOC(a->count * sizeof(asorted[0])); + bsorted = MALLOC(b->count * sizeof(bsorted[0])); + if(!asorted || !bsorted) { + FREEMEM(asorted); + FREEMEM(bsorted); + return -1; + } + + for(idx = 0; idx < a->count; idx++) { + asorted[idx].td = td->elements->type; + asorted[idx].sptr = a->array[idx]; + } + + for(idx = 0; idx < b->count; idx++) { + bsorted[idx].td = td->elements->type; + bsorted[idx].sptr = b->array[idx]; + } + + qsort(asorted, a->count, sizeof(asorted[0]), SET_OF__compare_cb); + qsort(bsorted, b->count, sizeof(bsorted[0]), SET_OF__compare_cb); + + common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, asorted[idx].sptr, bsorted[idx].sptr); + if(ret) { + FREEMEM(asorted); + FREEMEM(bsorted); + return ret; + } + } + + FREEMEM(asorted); + FREEMEM(bsorted); + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c new file mode 100644 index 000000000..87c341e0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c @@ -0,0 +1,186 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_enc_rval_t +SET_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SET OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %lld ub %lld %s", + (long long int)ct->lower_bound, + (long long int)ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + /*if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED;*/ + + if (aper_put_length(po, ct->lower_bound, ct->upper_bound, list->count - ct->lower_bound, 0) < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Canonical PER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CAPER); + + for(seq = 0; seq < list->count;) { + ssize_t may_encode; + int need_eom = 0; + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + aper_put_length(po, -1, -1, list->count - seq, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + while(may_encode--) { + const struct _el_buffer *el = &encoded_els[seq++]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + if(need_eom && (aper_put_length(po, -1, -1, 0, NULL) < 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +SET_OF_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); + ASN_DEBUG("Preparing to fetch %ld+%lld elements from %s", + (long)nelems, (long long int)ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + if (ct) + nelems = aper_get_length(pd, ct->lower_bound, ct->upper_bound, + ct->effective_bits, &repeat); + else + nelems = aper_get_length(pd, -1, -1, -1, &repeat); + ASN_DEBUG("Got to decode %d elements (eff %d)", + (int)nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) + continue; + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c new file mode 100644 index 000000000..4187e2999 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c @@ -0,0 +1,355 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef PHASE_OUT +#define PHASE_OUT(ctx) \ + do { \ + ctx->phase = 10; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * The decoder of the SET OF type. + */ +asn_dec_rval_t +SET_OF_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as SET OF", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + ASN_DEBUG("Structure consumes %ld bytes, " + "buffer %ld", (long)ctx->left, (long)size); + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next item. + */ + for(;; ctx->step = 0) { + ssize_t tag_len; /* Length of TLV's T */ + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + + if(ctx->left == 0) { + ASN_DEBUG("End of SET OF %s", td->name); + /* + * No more things to decode. + * Exit out of here. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Found the terminator of the + * indefinite length structure. + */ + break; + } + } + + /* Outmost tag may be unknown and cannot be fetched/compared */ + if(elm->tag != (ber_tlv_tag_t)-1) { + if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { + /* + * The new list member of expected type has arrived. + */ + } else { + ASN_DEBUG("Unexpected tag %s fixed SET OF %s", + ber_tlv_tag_string(tlv_tag), td->name); + ASN_DEBUG("%s SET OF has tag %s", + td->name, ber_tlv_tag_string(elm->tag)); + RETURN(RC_FAIL); + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, + elm->type, &ctx->ptr, + ptr, LEFT, 0); + ASN_DEBUG("In %s SET OF %s code %d consumed %d", + td->name, elm->type->name, + rval.code, (int)rval.consumed); + switch(rval.code) { + case RC_OK: + { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + else + ctx->ptr = 0; + } + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + /* Fall through */ + case RC_FAIL: /* Fatal error */ + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all list members) */ + + NEXT_PHASE(ctx); + case 2: + /* + * Read in all "end of content" TLVs. + */ + while(ctx->left < 0) { + if(LEFT < 2) { + if(LEFT > 0 && ((const char *)ptr)[0] != 0) { + /* Unexpected tag */ + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } + if(((const char *)ptr)[0] == 0 + && ((const char *)ptr)[1] == 0) { + ADVANCE(2); + ctx->left++; + } else { + RETURN(RC_FAIL); + } + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + +/* + * The DER encoder of the SET OF type. + */ +asn_enc_rval_t +SET_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + struct _el_buffer *encoded_els; + int edx; + + ASN_DEBUG("Estimating size for SET OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) ASN__ENCODE_FAILED; + + erval = + elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, 0, 0); + if(erval.encoded == -1) return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = + der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + if(encoding_size < 0) { + ASN__ENCODE_FAILED; + } + computed_size += encoding_size; + + if(!cb || list->count == 0) { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of %s SET OF", td->name); + + /* + * DER mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the + * encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_DER); + + /* + * Report encoded elements to the application. + * Dispose of temporary sorted members table. + */ + for(edx = 0; edx < list->count; edx++) { + struct _el_buffer *encoded_el = &encoded_els[edx]; + /* Report encoded chunks to the application */ + if(cb(encoded_el->buf, encoded_el->length, app_key) < 0) { + break; + } else { + encoding_size += encoded_el->length; + } + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if(edx == list->count) { + asn_enc_rval_t erval = {0,0,0}; + assert(computed_size == (size_t)encoding_size); + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } else { + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c new file mode 100644 index 000000000..a0f0140dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c @@ -0,0 +1,281 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t _rval; \ + _rval.code = _code; \ + _rval.consumed = consumed_myself; \ + return _rval; \ + } while(0) + +/* + * The SEQUENCE OF and SET OF values utilize a "quantity field". + * It is is a pointless combination of #8.6 (length determinant, capable + * of encoding tiny and huge numbers in the shortest possible number of octets) + * and the variable sized integer. What could have been encoded by #8.6 alone + * is required to be encoded by #8.6 followed by that number of unsigned octets. + * This doesn't make too much sense. It seems that the original version of OER + * standard have been using the unconstrained unsigned integer as a quantity + * field, and this legacy have gone through ISO/ITU-T standardization process. + */ +static ssize_t +oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) { + const uint8_t *b; + const uint8_t *bend; + size_t len = 0; + size_t qty; + + ssize_t len_len = oer_fetch_length(ptr, size, &len); + if(len_len <= 0) { + *qty_r = 0; + return len_len; + } + + if((len_len + len) > size) { + *qty_r = 0; + return 0; + } + + b = (const uint8_t *)ptr + len_len; + bend = b + len; + + /* Skip the leading 0-bytes */ + for(; b < bend && *b == 0; b++) { + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *qty_r = 0; + return -1; + } + + for(qty = 0; b < bend; b++) { + qty = (qty << 8) + *b; + } + + if(qty > RSIZE_MAX) { /* A bit of C11 validation */ + *qty_r = 0; + return -1; + } + + *qty_r = qty; + assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr)); + return len_len + len; +} + +asn_dec_rval_t +SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch number of elements to decode. + */ + size_t length = 0; + size_t len_size = oer_fetch_quantity(ptr, size, &length); + switch(len_size) { + case 0: + RETURN(RC_WMORE); + case -1: + RETURN(RC_FAIL); + default: + ADVANCE(len_size); + ctx->left = length; + } + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + const void *base_ptr = ptr; + ber_tlv_len_t base_ctx_left = ctx->left; + + assert(td->elements_count == 1); + + ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name); + + for(; ctx->left > 0; ctx->left--) { + asn_dec_rval_t rv = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr, + size); + ADVANCE(rv.consumed); + switch(rv.code) { + case RC_OK: + if(ASN_SET_ADD(list, ctx->ptr) != 0) { + RETURN(RC_FAIL); + } else { + ctx->ptr = 0; + /* + * This check is to avoid compression bomb with + * specs like SEQUENCE/SET OF NULL which don't + * consume data at all. + */ + if(rv.consumed == 0 && base_ptr == ptr + && (base_ctx_left - ctx->left) > 200) { + ASN__DECODE_FAILED; + } + break; + } + case RC_WMORE: + RETURN(RC_WMORE); + case RC_FAIL: + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + SET_PHASE(ctx, 3); + RETURN(RC_FAIL); + } + } + /* Decoded decently. */ + NEXT_PHASE(ctx); + } + /* Fall through */ + case 2: + /* Ignore fully decoded */ + assert(ctx->left == 0); + RETURN(RC_OK); + case 3: + /* Failed to decode. */ + RETURN(RC_FAIL); + } + + return rval; +} + +static ssize_t +oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t buf[1 + sizeof(size_t)]; + uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */ + size_t encoded; + + do { + *b-- = qty; + qty >>= 8; + } while(qty); + + *b = sizeof(buf) - (b-buf) - 1; + encoded = sizeof(buf) - (b-buf); + if(cb(b, encoded, app_key) < 0) + return -1; + return encoded; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SET_OF_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_TYPE_member_t *elm; + const asn_anonymous_set_ *list; + size_t computed_size = 0; + ssize_t qty_len; + int n; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + elm = td->elements; + list = _A_CSET_FROM_VOID(sptr); + + qty_len = oer_put_quantity(list->count, cb, app_key); + if(qty_len < 0) { + ASN__ENCODE_FAILED; + } + computed_size += qty_len; + + for(n = 0; n < list->count; n++) { + void *memb_ptr = list->array[n]; + asn_enc_rval_t er = {0,0,0}; + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded < 0) { + return er; + } else { + computed_size += er.encoded; + } + } + + { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c new file mode 100644 index 000000000..748dba767 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +int +SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int ret; + int i; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + _i_INDENT(1); + + ret = elm->type->op->print_struct(elm->type, memb_ptr, + ilevel + 1, cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c new file mode 100644 index 000000000..9b2ac5ed2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_random_fill_result_t +SET_OF_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_SET_OF_specifics_t *specs = + (const asn_SET_OF_specifics_t *)td->specifics; + asn_random_fill_result_t res_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm = td->elements; + void *st = *sptr; + long max_elements = 5; + long slb = 0; /* Lower size bound */ + long sub = 0; /* Upper size bound */ + size_t rnd_len; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) { + return result_failed; + } + } + + switch(asn_random_between(0, 6)) { + case 0: max_elements = 0; break; + case 1: max_elements = 1; break; + case 2: max_elements = 5; break; + case 3: max_elements = max_length; break; + case 4: max_elements = max_length / 2; break; + case 5: max_elements = max_length / 4; break; + default: break; + } + sub = slb + max_elements; + +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_SEMI_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->lower_bound + max_elements; + } else if(pc->flags & APC_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->upper_bound; + if(sub - slb > max_elements) sub = slb + max_elements; + } + } +#else + if(!constraints) constraints = &td->encoding_constraints; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + + /* Bias towards edges of allowed space */ + switch(asn_random_between(-1, 4)) { + default: + case -1: +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + /* Prepare lengths somewhat outside of constrained range. */ + if(constraints->per_constraints + && (constraints->per_constraints->size.flags & APC_EXTENSIBLE)) { + switch(asn_random_between(0, 5)) { + default: + case 0: + rnd_len = 0; + break; + case 1: + if(slb > 0) { + rnd_len = slb - 1; + } else { + rnd_len = 0; + } + break; + case 2: + rnd_len = asn_random_between(0, slb); + break; + case 3: + if(sub < (ssize_t)max_length) { + rnd_len = sub + 1; + } else { + rnd_len = max_length; + } + break; + case 4: + if(sub < (ssize_t)max_length) { + rnd_len = asn_random_between(sub + 1, max_length); + } else { + rnd_len = max_length; + } + break; + case 5: + rnd_len = max_length; + break; + } + break; + } +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + /* Fall through */ + case 0: + rnd_len = asn_random_between(slb, sub); + break; + case 1: + if(slb < sub) { + rnd_len = asn_random_between(slb + 1, sub); + break; + } + /* Fall through */ + case 2: + rnd_len = asn_random_between(slb, slb); + break; + case 3: + if(slb < sub) { + rnd_len = asn_random_between(slb, sub - 1); + break; + } + /* Fall through */ + case 4: + rnd_len = asn_random_between(sub, sub); + break; + } + + for(; rnd_len > 0; rnd_len--) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + void *ptr = 0; + asn_random_fill_result_t tmpres = elm->type->op->random_fill( + elm->type, &ptr, &elm->encoding_constraints, + (max_length > res_ok.length ? max_length - res_ok.length : 0) + / rnd_len); + switch(tmpres.code) { + case ARFILL_OK: + ASN_SET_ADD(list, ptr); + res_ok.length += tmpres.length; + break; + case ARFILL_SKIPPED: + break; + case ARFILL_FAILED: + assert(ptr == 0); + return tmpres; + } + } + + return res_ok; +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c new file mode 100644 index 000000000..b99a2449e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c @@ -0,0 +1,201 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +asn_dec_rval_t +SET_OF_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = per_get_few_bits(pd, ct->effective_bits); + ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", + (long)nelems, ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + nelems = uper_get_length(pd, -1, 0, &repeat); + ASN_DEBUG("Got to decode %" ASN_PRI_SSIZE " elements (eff %d)", + nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) { + if(rv.consumed == 0 && nelems > 200) { + /* Protect from SET OF NULL compression bombs. */ + ASN__DECODE_FAILED; + } + continue; + } + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +asn_enc_rval_t +SET_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + + /* + * Canonical UPER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CUPER); + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + const struct _el_buffer *el = &encoded_els[edx]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if((ssize_t)encoded_edx == list->count) { + ASN__ENCODED_OK(er); + } else { + ASN__ENCODE_FAILED; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c new file mode 100644 index 000000000..1d97e5be3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c @@ -0,0 +1,314 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SET_OF_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *element = td->elements; + const char *elm_tag; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval = {RC_OK, 0}; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* Which tag is expected for the downstream */ + if(specs->as_XMLValueList) { + elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; + } else { + elm_tag = (*element->name) + ? element->name : element->type->xml_tag; + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + */ + for(; ctx->phase <= 2;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Go inside the inner member of a set. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval = {RC_OK, 0}; + + /* Invoke the inner type decoder, m.b. multiple times */ + ASN_DEBUG("XER/SET OF element [%s]", elm_tag); + tmprval = element->type->op->xer_decoder(opt_codec_ctx, + element->type, + &ctx->ptr, elm_tag, + buf_ptr, size); + if(tmprval.code == RC_OK) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + ctx->ptr = 0; + XER_ADVANCE(tmprval.consumed); + } else { + XER_ADVANCE(tmprval.consumed); + RETURN(tmprval.code); + } + ctx->phase = 1; /* Back to body processing */ + ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, + buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", + tcv, ctx->phase, xml_tag); + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + /* No more things to decode */ + XER_ADVANCE(ch_size); + ctx->phase = 3; /* Phase out */ + RETURN(RC_OK); + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); + if(ctx->phase == 1) { + /* + * Process a single possible member. + */ + ctx->phase = 2; + continue; + } + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SET OF"); + break; + } + + ctx->phase = 3; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +typedef struct xer_tmp_enc_s { + void *buffer; + size_t offset; + size_t size; +} xer_tmp_enc_t; + +static int +SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { + xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; + if(t->offset + size >= t->size) { + size_t newsize = (t->size << 2) + size; + void *p = REALLOC(t->buffer, newsize); + if(!p) return -1; + t->buffer = p; + t->size = newsize; + } + memcpy((char *)t->buffer + t->offset, buffer, size); + t->offset += size; + return 0; +} + +static int +SET_OF_xer_order(const void *aptr, const void *bptr) { + const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; + const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; + size_t minlen = a->offset; + int ret; + if(b->offset < minlen) minlen = b->offset; + /* Well-formed UTF-8 has this nice lexicographical property... */ + ret = memcmp(a->buffer, b->buffer, minlen); + if(ret != 0) return ret; + if(a->offset == b->offset) + return 0; + if(a->offset == minlen) + return -1; + return 1; +} + +asn_enc_rval_t +SET_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + xer_tmp_enc_t *encs = 0; + size_t encs_count = 0; + void *original_app_key = app_key; + asn_app_consume_bytes_f *original_cb = cb; + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + if(xcan) { + encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); + if(!encs) ASN__ENCODE_FAILED; + cb = SET_OF_encode_xer_callback; + } + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(encs) { + memset(&encs[encs_count], 0, sizeof(encs[0])); + app_key = &encs[encs_count]; + encs_count++; + } + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + if(!xcan && specs->as_XMLValueList == 1) + ASN__TEXT_INDENT(1, ilevel + 1); + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + (specs->as_XMLValueList != 2), + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + if(encs) { + xer_tmp_enc_t *enc = encs; + xer_tmp_enc_t *end = encs + encs_count; + ssize_t control_size = 0; + + er.encoded = 0; + cb = original_cb; + app_key = original_app_key; + qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); + + for(; enc < end; enc++) { + ASN__CALLBACK(enc->buffer, enc->offset); + FREEMEM(enc->buffer); + enc->buffer = 0; + control_size += enc->offset; + } + assert(control_size == er.encoded); + } + + goto cleanup; +cb_failed: + ASN__ENCODE_FAILED; +cleanup: + if(encs) { + size_t n; + for(n = 0; n < encs_count; n++) { + FREEMEM(encs[n].buffer); + } + FREEMEM(encs); + } + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constr_TYPE.c b/src/tmx/Asn_J2735/src/r2020/constr_TYPE.c new file mode 100644 index 000000000..e634e750f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constr_TYPE.c @@ -0,0 +1,80 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Version of the ASN.1 infrastructure shipped with compiler. + */ +int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } + +static asn_app_consume_bytes_f _print2fp; + +/* + * Return the outmost tag of the type. + */ +ber_tlv_tag_t +asn_TYPE_outmost_tag(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { + + if(tag_mode) + return tag; + + if(type_descriptor->tags_count) + return type_descriptor->tags[0]; + + return type_descriptor->op->outmost_tag(type_descriptor, struct_ptr, 0, 0); +} + +/* + * Print the target language's structure in human readable form. + */ +int +asn_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, + const void *struct_ptr) { + if(!stream) stream = stdout; + if(!td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + /* Invoke type-specific printer */ + if(td->op->print_struct(td, struct_ptr, 1, _print2fp, stream)) { + return -1; + } + + /* Terminate the output */ + if(_print2fp("\n", 1, stream)) { + return -1; + } + + return fflush(stream); +} + +/* Dump the data into the specified stdio stream */ +static int +_print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + + +/* + * Some compilers do not support variable args macros. + * This function is a replacement of ASN_DEBUG() macro. + */ +void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); +void ASN_DEBUG_f(const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} diff --git a/src/tmx/Asn_J2735/src/r2020/constraints.c b/src/tmx/Asn_J2735/src/r2020/constraints.c new file mode 100644 index 000000000..72137cc5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/constraints.c @@ -0,0 +1,94 @@ +#include +#include + +int +asn_generic_no_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Nothing to check */ + return 0; +} + +int +asn_generic_unknown_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Unknown how to check */ + return 0; +} + +struct errbufDesc { + const asn_TYPE_descriptor_t *failed_type; + const void *failed_struct_ptr; + char *errbuf; + size_t errlen; +}; + +static void +CC_PRINTFLIKE(4, 5) +_asn_i_ctfailcb(void *key, const asn_TYPE_descriptor_t *td, const void *sptr, + const char *fmt, ...) { + struct errbufDesc *arg = key; + va_list ap; + ssize_t vlen; + ssize_t maxlen; + + arg->failed_type = td; + arg->failed_struct_ptr = sptr; + + maxlen = arg->errlen; + if(maxlen <= 0) + return; + + va_start(ap, fmt); + vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); + va_end(ap); + if(vlen >= maxlen) { + arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ + arg->errlen = maxlen - 1; /* Not counting termination */ + return; + } else if(vlen >= 0) { + arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ + arg->errlen = vlen; /* Not counting termination */ + } else { + /* + * The libc on this system is broken. + */ + vlen = sizeof("") - 1; + maxlen--; + arg->errlen = vlen < maxlen ? vlen : maxlen; + memcpy(arg->errbuf, "", arg->errlen); + arg->errbuf[arg->errlen] = 0; + } + + return; +} + +int +asn_check_constraints(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, char *errbuf, size_t *errlen) { + struct errbufDesc arg; + int ret; + + arg.failed_type = 0; + arg.failed_struct_ptr = 0; + arg.errbuf = errbuf; + arg.errlen = errlen ? *errlen : 0; + + ret = type_descriptor->encoding_constraints.general_constraints( + type_descriptor, struct_ptr, _asn_i_ctfailcb, &arg); + if(ret == -1 && errlen) *errlen = arg.errlen; + + return ret; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/der_encoder.c b/src/tmx/Asn_J2735/src/r2020/der_encoder.c new file mode 100644 index 000000000..2c6a6f769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/der_encoder.c @@ -0,0 +1,194 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, int constructed); + +/* + * The DER encoder of any type. + */ +asn_enc_rval_t +der_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("DER encoder invoked for %s", + type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->der_encoder( + type_descriptor, struct_ptr, /* Pointer to the destination structure */ + 0, 0, consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for der_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the der_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +der_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + ec = type_descriptor->op->der_encoder(type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + 0, 0, encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + return ec; +} + + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t +der_write_tags(const asn_TYPE_descriptor_t *sd, size_t struct_length, + int tag_mode, int last_tag_form, + ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ + asn_app_consume_bytes_f *cb, void *app_key) { +#define ASN1_DER_MAX_TAGS_COUNT 4 + ber_tlv_tag_t + tags_buf_scratch[ASN1_DER_MAX_TAGS_COUNT * sizeof(ber_tlv_tag_t)]; + ssize_t lens[ASN1_DER_MAX_TAGS_COUNT * sizeof(ssize_t)]; + const ber_tlv_tag_t *tags; /* Copy of tags stream */ + int tags_count; /* Number of tags */ + size_t overall_length; + int i; + + ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", + sd->name, tag_mode, sd->tags_count, + ber_tlv_tag_string(tag), + tag_mode + ?(sd->tags_count+1 + -((tag_mode == -1) && sd->tags_count)) + :sd->tags_count + ); + + if(sd->tags_count + 1 > ASN1_DER_MAX_TAGS_COUNT) { + ASN_DEBUG("System limit %d on tags count", ASN1_DER_MAX_TAGS_COUNT); + return -1; + } + + if(tag_mode) { + /* + * Instead of doing shaman dance like we do in ber_check_tags(), + * allocate a small array on the stack + * and initialize it appropriately. + */ + int stag_offset; + ber_tlv_tag_t *tags_buf = tags_buf_scratch; + tags_count = sd->tags_count + + 1 /* EXPLICIT or IMPLICIT tag is given */ + - ((tag_mode == -1) && sd->tags_count); + /* Copy tags over */ + tags_buf[0] = tag; + stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); + for(i = 1; i < tags_count; i++) + tags_buf[i] = sd->tags[i + stag_offset]; + tags = tags_buf; + } else { + tags = sd->tags; + tags_count = sd->tags_count; + } + + /* No tags to write */ + if(tags_count == 0) + return 0; + + /* + * Array of tags is initialized. + * Now, compute the size of the TLV pairs, from right to left. + */ + overall_length = struct_length; + for(i = tags_count - 1; i >= 0; --i) { + lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); + if(lens[i] == -1) return -1; + overall_length += lens[i]; + lens[i] = overall_length - lens[i]; + } + + if(!cb) return overall_length - struct_length; + + ASN_DEBUG("Encoding %s TL sequence (%d elements)", sd->name, + tags_count); + + /* + * Encode the TL sequence for real. + */ + for(i = 0; i < tags_count; i++) { + ssize_t len; + int _constr; + + /* Check if this tag happens to be constructed */ + _constr = (last_tag_form || i < (tags_count - 1)); + + len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); + if(len == -1) return -1; + } + + return overall_length - struct_length; +} + +static ssize_t +der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, + int constructed) { + uint8_t buf[32]; + size_t size = 0; + int buf_size = cb?sizeof(buf):0; + ssize_t tmp; + + /* Serialize tag (T from TLV) into possibly zero-length buffer */ + tmp = ber_tlv_tag_serialize(tag, buf, buf_size); + if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; + size += tmp; + + /* Serialize length (L from TLV) into possibly zero-length buffer */ + tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); + if(tmp == -1) return -1; + size += tmp; + + if(size > sizeof(buf)) + return -1; + + /* + * If callback is specified, invoke it, and check its return value. + */ + if(cb) { + if(constructed) *buf |= 0x20; + if(cb(buf, size, app_key) < 0) + return -1; + } + + return size; +} diff --git a/src/tmx/Asn_J2735/src/r2020/oer_decoder.c b/src/tmx/Asn_J2735/src/r2020/oer_decoder.c new file mode 100644 index 000000000..070173826 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/oer_decoder.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER decoder of any type. + */ +asn_dec_rval_t +oer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + ptr, size /* Buffer and its size */ + ); +} + +/* + * Open Type is encoded as a length (#8.6) followed by that number of bytes. + * Since we're just skipping, reading the length would be enough. + */ +ssize_t +oer_open_type_skip(const void *bufptr, size_t size) { + size_t len = 0; + return oer_fetch_length(bufptr, size, &len); +} + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *bufptr, size_t size) { + asn_dec_rval_t dr; + size_t container_len = 0; + ssize_t len_len; + enum asn_struct_free_method dispose_method = + (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING; + + /* Get the size of a length determinant */ + len_len = oer_fetch_length(bufptr, size, &container_len); + if(len_len <= 0) { + return len_len; /* Error or more data expected */ + } + + /* + * len_len can't be bigger than size, but size without len_len + * should be bigger or equal to container length + */ + if(size - len_len < container_len) { + /* More data is expected */ + return 0; + } + + dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr, + (const uint8_t *)bufptr + len_len, container_len); + if(dr.code == RC_OK) { + return len_len + container_len; + } else { + /* Even if RC_WMORE, we can't get more data into a closed container. */ + td->op->free_struct(td, *struct_ptr, dispose_method); + *struct_ptr = NULL; + return -1; + } +} + + +asn_dec_rval_t +oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + ssize_t len_len; + + (void)td; + (void)opt_codec_ctx; + (void)constraints; + + if(!st) { + st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC( + 1, sizeof(ASN__PRIMITIVE_TYPE_t))); + if(!st) ASN__DECODE_FAILED; + } + + + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/oer_encoder.c b/src/tmx/Asn_J2735/src/r2020/oer_encoder.c new file mode 100644 index 000000000..a284cc2f3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/oer_encoder.c @@ -0,0 +1,141 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER encoder of any type. + */ +asn_enc_rval_t +oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->oer_encoder( + type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for oer_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int +encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the oer_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + if(type_descriptor->op->oer_encoder == NULL) { + ec.encoded = -1; + ec.failed_type = type_descriptor; + ec.structure_ptr = struct_ptr; + ASN_DEBUG("OER encoder is not defined for %s", + type_descriptor->name); + } else { + ec = type_descriptor->op->oer_encoder( + type_descriptor, constraints, + struct_ptr, /* Pointer to the destination structure */ + encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + } + return ec; +} + +asn_enc_rval_t +oer_encode_primitive(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + ssize_t ret; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size); + + /* + * X.696 (08/2015) #27.2 + */ + ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +static int +oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) { + size_t *bytes = bytes_ptr; + (void)buffer; + *bytes += size; + return 0; +} + +ssize_t +oer_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t serialized_byte_count = 0; + asn_enc_rval_t er = {0,0,0}; + ssize_t len_len; + + er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes, + &serialized_byte_count); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + len_len = oer_serialize_length(serialized_byte_count, cb, app_key); + if(len_len == -1) return -1; + + er = td->op->oer_encoder(td, constraints, sptr, cb, app_key); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + return len_len + er.encoded; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/oer_support.c b/src/tmx/Asn_J2735/src/r2020/oer_support.c new file mode 100644 index 000000000..b15a3bc93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/oer_support.c @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +#include + +/* + * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) { + uint8_t first_byte; + size_t len_len; /* Length of the length determinant */ + const uint8_t *b; + const uint8_t *bend; + size_t len; + + if(size == 0) { + *len_r = 0; + return 0; + } + + first_byte = *(const uint8_t *)bufptr; + if((first_byte & 0x80) == 0) { /* Short form */ + *len_r = first_byte; /* 0..127 */ + return 1; + } + + len_len = (first_byte & 0x7f); + if((1 + len_len) > size) { + *len_r = 0; + return 0; + } + + b = (const uint8_t *)bufptr + 1; + bend = b + len_len; + + for(; b < bend && *b == 0; b++) { + /* Skip the leading 0-bytes */ + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *len_r = 0; + return -1; + } + + for(len = 0; b < bend; b++) { + len = (len << 8) + *b; + } + + if(len > RSIZE_MAX) { /* A bit of C11 validation */ + *len_r = 0; + return -1; + } + + *len_r = len; + assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr)); + return len_len + 1; +} + + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t +oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, + void *app_key) { + uint8_t scratch[1 + sizeof(length)]; + uint8_t *sp = scratch; + int littleEndian = 1; /* Run-time detection */ + const uint8_t *pstart; + const uint8_t *pend; + const uint8_t *p; + int add; + + if(length <= 127) { + uint8_t b = length; + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } + + if(*(char *)&littleEndian) { + pstart = (const uint8_t *)&length + sizeof(length) - 1; + pend = (const uint8_t *)&length; + add = -1; + } else { + pstart = (const uint8_t *)&length; + pend = pstart + sizeof(length); + add = 1; + } + + for(p = pstart; p != pend; p += add) { + /* Skip leading zeros. */ + if(*p) break; + } + + for(sp = scratch + 1; ; p += add) { + *sp++ = *p; + if(p == pend) break; + } + assert((sp - scratch) - 1 <= 0x7f); + scratch[0] = 0x80 + ((sp - scratch) - 1); + + if(cb(scratch, sp - scratch, app_key) < 0) { + return -1; + } + + return sp - scratch; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/per_decoder.c b/src/tmx/Asn_J2735/src/r2020/per_decoder.c new file mode 100644 index 000000000..42b92cacd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/per_decoder.c @@ -0,0 +1,5 @@ +#include +#include +#include + +// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/r2020/per_encoder.c b/src/tmx/Asn_J2735/src/r2020/per_encoder.c new file mode 100644 index 000000000..01ab70b06 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/per_encoder.c @@ -0,0 +1,35 @@ +#include +#include + +int +ignore_output(const void *data, size_t size, void *app_key) { + (void)data; + (void)size; + (void)app_key; + return 0; +} + +int +encode_dyn_cb(const void *buffer, size_t size, void *key) { + enc_dyn_arg *arg = key; + if(arg->length + size >= arg->allocated) { + size_t new_size = arg->allocated ? arg->allocated : 8; + void *p; + + do { + new_size <<= 2; + } while(arg->length + size >= new_size); + + p = REALLOC(arg->buffer, new_size); + if(!p) { + FREEMEM(arg->buffer); + memset(arg, 0, sizeof(*arg)); + return -1; + } + arg->buffer = p; + arg->allocated = new_size; + } + memcpy(((char *)arg->buffer) + arg->length, buffer, size); + arg->length += size; + return 0; +} diff --git a/src/tmx/Asn_J2735/src/r2020/per_opentype.c b/src/tmx/Asn_J2735/src/r2020/per_opentype.c new file mode 100644 index 000000000..5620c5bb9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/per_opentype.c @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +/* + * Internal functions. + */ + +asn_dec_rval_t +uper_sot_suck(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)ctx; + (void)td; + (void)constraints; + (void)sptr; + + while(per_get_few_bits(pd, 1) >= 0); + + rv.code = RC_OK; + rv.consumed = pd->moved; + + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r2020/per_support.c b/src/tmx/Asn_J2735/src/r2020/per_support.c new file mode 100644 index 000000000..62d343c74 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/per_support.c @@ -0,0 +1,9 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +// Absolutely nothing diff --git a/src/tmx/Asn_J2735/src/r2020/uper_decoder.c b/src/tmx/Asn_J2735/src/r2020/uper_decoder.c new file mode 100644 index 000000000..a88e95cfb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/uper_decoder.c @@ -0,0 +1,96 @@ +#include +#include +#include + +/* + * Decode a "Production of a complete encoding", X.691#10.1. + * The complete encoding contains at least one byte, and is an integral + * multiple of 8 bytes. + */ +asn_dec_rval_t +uper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +uper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->uper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %ld, counted %ld", + (long)rval.consumed, (long)pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} diff --git a/src/tmx/Asn_J2735/src/r2020/uper_encoder.c b/src/tmx/Asn_J2735/src/r2020/uper_encoder.c new file mode 100644 index 000000000..4c1d24a6c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/uper_encoder.c @@ -0,0 +1,127 @@ +#include +#include +#include + +static int _uper_encode_flush_outp(asn_per_outp_t *po); + +asn_enc_rval_t +uper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->uper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->uper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_uper_encode_flush_outp(&po)) ASN__ENCODE_FAILED; + } + + return er; +} + +/* + * Argument type and callback necessary for uper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +uper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); + + return uper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +ssize_t +uper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = uper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_uper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); +} diff --git a/src/tmx/Asn_J2735/src/r2020/uper_opentype.c b/src/tmx/Asn_J2735/src/r2020/uper_opentype.c new file mode 100644 index 000000000..17ee06416 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/uper_opentype.c @@ -0,0 +1,372 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +typedef struct uper_ugot_key { + asn_per_data_t oldpd; /* Old per data source */ + size_t unclaimed; + size_t ot_moved; /* Number of bits moved by OT processing */ + int repeat; +} uper_ugot_key; + +static int uper_ugot_refill(asn_per_data_t *pd); +static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); + +/* + * Encode an "open type field". + * #10.1, #10.2 + */ +int +uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + ASN_DEBUG("Open type put %s of length %" ASN_PRI_SSIZE " + overhead (1byte?)", td->name, + size); + + bptr = buf; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + ASN_DEBUG("Prepending length %" ASN_PRI_SSIZE + " to %s and allowing to save %" ASN_PRI_SSIZE, + size, td->name, may_save); + if(may_save < 0) break; + if(per_put_many_bits(po, bptr, may_save * 8)) break; + bptr = (char *)bptr + may_save; + size -= may_save; + if(need_eom && uper_put_length(po, 0, 0)) { + FREEMEM(buf); + return -1; + } + } while(size); + + FREEMEM(buf); + if(size) return -1; + + return 0; +} + +static asn_dec_rval_t +uper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = uper_get_length(pd, -1, 0, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, (buf == NULL)? NULL : buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* No one would give us more */ + } + + return rv; +} + +static asn_dec_rval_t CC_NOTUSED +uper_open_type_get_complex(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + uper_ugot_key arg; + asn_dec_rval_t rv; + ssize_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s from %s", td->name, + asn_bit_data_string(pd)); + arg.oldpd = *pd; + arg.unclaimed = 0; + arg.ot_moved = 0; + arg.repeat = 1; + pd->refill = uper_ugot_refill; + pd->refill_key = &arg; + pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ + pd->moved = 0; /* This now counts the open type size in bits */ + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, pd); + ASN_DEBUG_INDENT_ADD(-4); + +#define UPDRESTOREPD do { \ + /* buffer and nboff are valid, preserve them. */ \ + pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ + pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ + pd->refill = arg.oldpd.refill; \ + pd->refill_key = arg.oldpd.refill_key; \ + } while(0) + + if(rv.code != RC_OK) { + UPDRESTOREPD; + return rv; + } + + ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, + asn_bit_data_string(pd), + asn_bit_data_string(&arg.oldpd), + (int)arg.unclaimed, (int)arg.repeat); + + padding = pd->moved % 8; + if(padding) { + int32_t pvalue; + if(padding > 7) { + ASN_DEBUG("Too large padding %d in open type", + (int)padding); + rv.code = RC_FAIL; + UPDRESTOREPD; + return rv; + } + padding = 8 - padding; + ASN_DEBUG("Getting padding of %d bits", (int)padding); + pvalue = per_get_few_bits(pd, padding); + switch(pvalue) { + case -1: + ASN_DEBUG("Padding skip failed"); + UPDRESTOREPD; + ASN__DECODE_STARVED; + case 0: break; + default: + ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", + (int)padding, (int)pvalue); + UPDRESTOREPD; + ASN__DECODE_FAILED; + } + } + if(pd->nboff != pd->nbits) { + ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, + asn_bit_data_string(pd), asn_bit_data_string(&arg.oldpd)); + if(1) { + UPDRESTOREPD; + ASN__DECODE_FAILED; + } else { + arg.unclaimed += pd->nbits - pd->nboff; + } + } + + /* Adjust pd back so it points to original data */ + UPDRESTOREPD; + + /* Skip data not consumed by the decoder */ + if(arg.unclaimed) { + ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); + switch(per_skip_bits(pd, arg.unclaimed)) { + case -1: + ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); + ASN__DECODE_STARVED; + case 0: + ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); + break; + default: + /* Padding must be blank */ + ASN_DEBUG("Non-blank unconsumed padding"); + ASN__DECODE_FAILED; + } + arg.unclaimed = 0; + } + + if(arg.repeat) { + ASN_DEBUG("Not consumed the whole thing"); + rv.code = RC_FAIL; + return rv; + } + + return rv; +} + + +asn_dec_rval_t +uper_open_type_get(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +uper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_TYPE_operation_t s_op; + asn_dec_rval_t rv; + + s_td.name = ""; + s_td.op = &s_op; + s_op.uper_decoder = uper_sot_suck; + + rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} + +/* + * Internal functions. + */ + +static int +uper_ugot_refill(asn_per_data_t *pd) { + uper_ugot_key *arg = pd->refill_key; + ssize_t next_chunk_bytes, next_chunk_bits; + ssize_t avail; + + asn_per_data_t *oldpd = &arg->oldpd; + + ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", + (long)pd->moved, (long)oldpd->moved); + + /* Advance our position to where pd is */ + oldpd->buffer = pd->buffer; + oldpd->nboff = pd->nboff; + oldpd->nbits -= pd->moved - arg->ot_moved; + oldpd->moved += pd->moved - arg->ot_moved; + arg->ot_moved = pd->moved; + + if(arg->unclaimed) { + /* Refill the container */ + if(per_get_few_bits(oldpd, 1)) + return -1; + if(oldpd->nboff == 0) { + assert(0); + return -1; + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff - 1; + pd->nbits = oldpd->nbits; + ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", + (long)pd->moved); + return 0; + } + + if(!arg->repeat) { + ASN_DEBUG("Want more but refill doesn't have it"); + return -1; + } + + next_chunk_bytes = uper_get_length(oldpd, -1, 0, &arg->repeat); + ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", + (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); + if(next_chunk_bytes < 0) return -1; + if(next_chunk_bytes == 0) { + pd->refill = 0; /* No more refills, naturally */ + assert(!arg->repeat); /* Implementation guarantee */ + } + next_chunk_bits = next_chunk_bytes << 3; + avail = oldpd->nbits - oldpd->nboff; + if(avail >= next_chunk_bits) { + pd->nbits = oldpd->nboff + next_chunk_bits; + arg->unclaimed = 0; + ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", + (long)next_chunk_bits, (long)oldpd->moved, + (long)oldpd->nboff, (long)oldpd->nbits, + (long)(oldpd->nbits - oldpd->nboff)); + } else { + pd->nbits = oldpd->nbits; + arg->unclaimed = next_chunk_bits - avail; + ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", + (long)avail, (long)next_chunk_bits, + (long)arg->unclaimed); + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff; + ASN_DEBUG("Refilled pd%s old%s", + asn_bit_data_string(pd), asn_bit_data_string(oldpd)); + return 0; +} + +static int +per_skip_bits(asn_per_data_t *pd, int skip_nbits) { + int hasNonZeroBits = 0; + while(skip_nbits > 0) { + int skip; + + /* per_get_few_bits() is more efficient when nbits <= 24 */ + if(skip_nbits < 24) + skip = skip_nbits; + else + skip = 24; + skip_nbits -= skip; + + switch(per_get_few_bits(pd, skip)) { + case -1: return -1; /* Starving */ + case 0: continue; /* Skipped empty space */ + default: hasNonZeroBits = 1; continue; + } + } + return hasNonZeroBits; +} diff --git a/src/tmx/Asn_J2735/src/r2020/uper_support.c b/src/tmx/Asn_J2735/src/r2020/uper_support.c new file mode 100644 index 000000000..ce8adc5e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/uper_support.c @@ -0,0 +1,311 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * X.691-201508 #10.9 General rules for encoding a length determinant. + * Get the optionally constrained length "n" from the stream. + */ +ssize_t +uper_get_length(asn_per_data_t *pd, int ebits, size_t lower_bound, + int *repeat) { + ssize_t value; + + *repeat = 0; + + /* #11.9.4.1 Encoding if constrained (according to effective bits) */ + if(ebits >= 0 && ebits <= 16) { + value = per_get_few_bits(pd, ebits); + if(value >= 0) value += lower_bound; + return value; + } + + value = per_get_few_bits(pd, 8); + if((value & 0x80) == 0) { /* #11.9.3.6 */ + return (value & 0x7F); + } else if((value & 0x40) == 0) { /* #11.9.3.7 */ + /* bit 8 ... set to 1 and bit 7 ... set to zero */ + value = ((value & 0x3f) << 8) | per_get_few_bits(pd, 8); + return value; /* potential -1 from per_get_few_bits passes through. */ + } else if(value < 0) { + ASN_DEBUG("END of stream reached for PER"); + return -1; + } + value &= 0x3f; /* this is "m" from X.691, #11.9.3.8 */ + if(value < 1 || value > 4) { + return -1; /* Prohibited by #11.9.3.8 */ + } + *repeat = 1; + return (16384 * value); +} + +/* + * Get the normally small length "n". + * This procedure used to decode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +ssize_t +uper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%d", (int)length); + return length; + } else { + int repeat; + length = uper_get_length(pd, -1, 0, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +/* + * Get the normally small non-negative whole number. + * X.691, #10.6 + */ +ssize_t +uper_get_nsnnwn(asn_per_data_t *pd) { + ssize_t value; + + value = per_get_few_bits(pd, 7); + if(value & 64) { /* implicit (value < 0) */ + value &= 63; + value <<= 2; + value |= per_get_few_bits(pd, 2); + if(value & 128) /* implicit (value < 0) */ + return -1; + if(value == 0) + return 0; + if(value >= 3) + return -1; + value = per_get_few_bits(pd, 8 * value); + return value; + } + + return value; +} + +/* + * X.691-11/2008, #11.6 + * Encoding of a normally small non-negative whole number + */ +int +uper_put_nsnnwn(asn_per_outp_t *po, int n) { + int bytes; + + if(n <= 63) { + if(n < 0) return -1; + return per_put_few_bits(po, n, 7); + } + if(n < 256) + bytes = 1; + else if(n < 65536) + bytes = 2; + else if(n < 256 * 65536) + bytes = 3; + else + return -1; /* This is not a "normally small" value */ + if(per_put_few_bits(po, bytes, 8)) + return -1; + + return per_put_few_bits(po, n, 8 * bytes); +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *out_value, int nbits) { + uintmax_t lhalf; /* Lower half of the number*/ + intmax_t half; + + if(nbits <= 31) { + half = per_get_few_bits(pd, nbits); + if(half < 0) return -1; + *out_value = half; + return 0; + } + + if((size_t)nbits > 8 * sizeof(*out_value)) + return -1; /* RANGE */ + + half = per_get_few_bits(pd, 31); + if(half < 0) return -1; + + if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) + return -1; + + *out_value = ((uintmax_t)half << (nbits - 31)) | lhalf; + return 0; +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int +uper_put_constrained_whole_number_u(asn_per_outp_t *po, uintmax_t v, + int nbits) { + if(nbits <= 31) { + return per_put_few_bits(po, v, nbits); + } else { + /* Put higher portion first, followed by lower 31-bit */ + if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) + return -1; + return per_put_few_bits(po, v, 31); + } +} + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "n" (or part of it) into the stream. + */ +ssize_t +uper_put_length(asn_per_outp_t *po, size_t length, int *need_eom) { + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + if(length <= 127) { /* #11.9.3.6 */ + *need_eom = 0; + return per_put_few_bits(po, length, 8) + ? -1 : (ssize_t)length; + } else if(length < 16384) { /* #10.9.3.7 */ + *need_eom = 0; + return per_put_few_bits(po, length|0x8000, 16) + ? -1 : (ssize_t)length; + } + + *need_eom = 0 == (length & 16383); + length >>= 14; + if(length > 4) { + *need_eom = 0; + length = 4; + } + + return per_put_few_bits(po, 0xC0 | length, 8) + ? -1 : (ssize_t)(length << 14); + +} + + +/* + * Put the normally small length "n" into the stream. + * This procedure used to encode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +int +uper_put_nslength(asn_per_outp_t *po, size_t length) { + if(length <= 64) { + /* #11.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length - 1, 7) ? -1 : 0; + } else { + int need_eom = 0; + if(uper_put_length(po, length, &need_eom) != (ssize_t)length + || need_eom) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +static int +per__imax_range(intmax_t lb, intmax_t ub, uintmax_t *range_r) { + uintmax_t bounds_range; + if((ub < 0) == (lb < 0)) { + bounds_range = ub - lb; + } else if(lb < 0) { + assert(ub >= 0); + bounds_range = 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return -1; + } + *range_r = bounds_range; + return 0; +} + +int +per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output) { + uintmax_t range; + + assert(lb <= ub); + + if(v < lb || v > ub || per__imax_range(lb, ub, &range) < 0) { + /* Range error. */ + return -1; + } + + /* + * Fundamentally what we're doing is returning (v-lb). + * However, this triggers undefined behavior when the word width + * of signed (v) is the same as the size of unsigned (*output). + * In practice, it triggers the UndefinedSanitizer. Therefore we shall + * compute the ranges accurately to avoid C's undefined behavior. + */ + if((v < 0) == (lb < 0)) { + *output = v-lb; + return 0; + } else if(v < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(v+1) + (uintmax_t)lb; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else if(lb < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(lb+1) + (uintmax_t)v; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else { + assert(!"Unreachable"); + return -1; + } +} + +int +per_long_range_rebase(long v, intmax_t lb, intmax_t ub, unsigned long *output) { + uintmax_t tmp = *output; + int rc = per_imax_range_rebase((intmax_t)v, lb, ub, &tmp); + *output = tmp; + return rc; +} + +int +per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp) { + uintmax_t range; + + if(per__imax_range(lb, ub, &range) != 0) { + return -1; + } + + if(inp > range) { + /* + * We can encode something in the given number of bits that technically + * exceeds the range. This is an avenue for security errors, + * so we don't allow that. + */ + return -1; + } + + if(inp <= INTMAX_MAX) { + *outp = (intmax_t)inp + lb; + } else { + *outp = (lb + INTMAX_MAX + 1) + (intmax_t)((inp - INTMAX_MAX) - 1); + } + + return 0; +} + +int +per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp) { + intmax_t tmp = *outp; + int rc = per_imax_range_unrebase((uintmax_t)inp, lb, ub, &tmp); + *outp = tmp; + return rc; +} diff --git a/src/tmx/Asn_J2735/src/r2020/xer_decoder.c b/src/tmx/Asn_J2735/src/r2020/xer_decoder.c new file mode 100644 index 000000000..2a14557a6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/xer_decoder.c @@ -0,0 +1,369 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* XER/XML parsing support */ + + +/* + * Decode the XER encoding of a given type. + */ +asn_dec_rval_t +xer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *buffer, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return td->op->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); +} + + + +struct xer__cb_arg { + pxml_chunk_type_e chunk_type; + size_t chunk_size; + const void *chunk_buf; + int callback_not_invoked; +}; + +static int +xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { + struct xer__cb_arg *arg = (struct xer__cb_arg *)key; + arg->chunk_type = type; + arg->chunk_size = _chunk_size; + arg->chunk_buf = _chunk_data; + arg->callback_not_invoked = 0; + return -1; /* Terminate the XML parsing */ +} + +/* + * Fetch the next token from the XER/XML stream. + */ +ssize_t +xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { + struct xer__cb_arg arg; + int new_stateContext = *stateContext; + ssize_t ret; + + arg.callback_not_invoked = 1; + ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); + if(ret < 0) return -1; + if(arg.callback_not_invoked) { + assert(ret == 0); /* No data was consumed */ + *ch_type = PXER_WMORE; + return 0; /* Try again with more data */ + } else { + assert(arg.chunk_size); + assert(arg.chunk_buf == buffer); + } + + /* + * Translate the XML chunk types into more convenient ones. + */ + switch(arg.chunk_type) { + case PXML_TEXT: + *ch_type = PXER_TEXT; + break; + case PXML_TAG: + *ch_type = PXER_WMORE; + return 0; /* Want more */ + case PXML_TAG_END: + *ch_type = PXER_TAG; + break; + case PXML_COMMENT: + case PXML_COMMENT_END: + *ch_type = PXER_COMMENT; + break; + } + + *stateContext = new_stateContext; + return arg.chunk_size; +} + +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define RANGLE 0x3e /* '>' */ + +xer_check_tag_e +xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { + const char *buf = (const char *)buf_ptr; + const char *end; + xer_check_tag_e ct = XCT_OPENING; + + if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { + if(size >= 2) + ASN_DEBUG("Broken XML tag: \"%c...%c\"", + buf[0], buf[size - 1]); + return XCT_BROKEN; + } + + /* + * Determine the tag class. + */ + if(buf[1] == CSLASH) { + buf += 2; /* advance past "" */ + ct = XCT_CLOSING; + if(size > 0 && buf[size-1] == CSLASH) + return XCT_BROKEN; /* */ + } else { + buf++; /* advance past "<" */ + size -= 2; /* strip "<" and ">" */ + if(size > 0 && buf[size-1] == CSLASH) { + ct = XCT_BOTH; + size--; /* One more, for "/" */ + } + } + + /* Sometimes we don't care about the tag */ + if(!need_tag || !*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + /* + * Determine the tag name. + */ + for(end = buf + size; buf < end; buf++, need_tag++) { + int b = *buf, n = *need_tag; + if(b != n) { + if(n == 0) { + switch(b) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* "": whitespace is normal */ + return ct; + } + } + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + } + if(b == 0) + return XCT_BROKEN; /* Embedded 0 in buf?! */ + } + if(*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + return ct; +} + + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + if(rval.code != RC_OK) \ + ASN_DEBUG("Failed with %d", rval.code); \ + return rval; \ + } while(0) + +#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ + ssize_t converted_size = body_receiver \ + (struct_key, chunk_buf, chunk_size, \ + (size_t)chunk_size < size); \ + if(converted_size == -1) RETURN(RC_FAIL); \ + if(converted_size == 0 \ + && size == (size_t)chunk_size) \ + RETURN(RC_WMORE); \ + chunk_size = converted_size; \ + } while(0) +#define XER_GOT_EMPTY() do { \ + if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ + RETURN(RC_FAIL); \ + } while(0) + +/* + * Generalized function for decoding the primitive values. + */ +asn_dec_rval_t +xer_decode_general(const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, + const char *xml_tag, /* Expected XML tag */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_key, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_key, const void *chunk_buf, size_t chunk_size, + int have_more) + ) { + + asn_dec_rval_t rval; + ssize_t consumed_myself = 0; + + (void)opt_codec_ctx; + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + */ + if(ctx->phase > 1) RETURN(RC_FAIL); + for(;;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TEXT: + if(ctx->phase == 0) { + /* + * We have to ignore whitespace here, + * but in order to be forward compatible + * with EXTENDED-XER (EMBED-VALUES, #25) + * any text is just ignored here. + */ + } else { + XER_GOT_BODY(buf_ptr, ch_size, size); + } + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + assert(ch_type == PXER_TAG && size); + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + /* + * Phase 0: + * Expecting the opening tag + * for the type being processed. + * Phase 1: + * Waiting for the closing XML tag. + */ + switch(tcv) { + case XCT_BOTH: + if(ctx->phase) break; + /* Finished decoding of an empty element */ + XER_GOT_EMPTY(); + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + case XCT_CLOSING: + if(!ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_UNKNOWN_BO: + /* + * Certain tags in the body may be expected. + */ + if(opt_unexpected_tag_decoder + && opt_unexpected_tag_decoder(struct_key, + buf_ptr, ch_size) >= 0) { + /* Tag's processed fine */ + ADVANCE(ch_size); + if(!ctx->phase) { + /* We are not expecting + * the closing tag anymore. */ + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + } + continue; + } + /* Fall through */ + default: + break; /* Unexpected tag */ + } + + ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); + break; /* Dark and mysterious things have just happened */ + } + + RETURN(RC_FAIL); +} + + +size_t +xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { + const char *p = (const char *)chunk_buf; + const char *pend = (p == NULL)? NULL : p + chunk_size; + + for(; p < pend; p++) { + switch(*p) { + /* X.693, #8.1.4 + * HORISONTAL TAB (9) + * LINE FEED (10) + * CARRIAGE RETURN (13) + * SPACE (32) + */ + case 0x09: case 0x0a: case 0x0d: case 0x20: + continue; + default: + break; + } + break; + } + return (p - (const char *)chunk_buf); +} + +/* + * This is a vastly simplified, non-validating XML tree skipper. + */ +int +xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { + assert(*depth > 0); + switch(tcv) { + case XCT_BOTH: + case XCT_UNKNOWN_BO: + /* These negate each other. */ + return 0; + case XCT_OPENING: + case XCT_UNKNOWN_OP: + ++(*depth); + return 0; + case XCT_CLOSING: + case XCT_UNKNOWN_CL: + if(--(*depth) == 0) + return (tcv == XCT_CLOSING) ? 2 : 1; + return 0; + default: + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/r2020/xer_encoder.c b/src/tmx/Asn_J2735/src/r2020/xer_encoder.c new file mode 100644 index 000000000..4177ede5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/xer_encoder.c @@ -0,0 +1,237 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The XER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t +xer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, + enum xer_encoder_flags_e xer_flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + asn_enc_rval_t tmper; + const char *mname; + size_t mlen; + int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; + + if(!td || !sptr) goto cb_failed; + + mname = td->xml_tag; + mlen = strlen(mname); + + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = td->op->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("\n", xcan); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +/* + * This is a helper function for xer_fprint, which directs all incoming data + * into the provided file descriptor. + */ +static int +xer__print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + +int +xer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { + asn_enc_rval_t er = {0,0,0}; + + if(!stream) stream = stdout; + if(!td || !sptr) + return -1; + + er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); + if(er.encoded == -1) + return -1; + + return fflush(stream); +} + +struct xer_buffer { + char *buffer; + size_t buffer_size; + size_t allocated_size; +}; + +static int +xer__buffer_append(const void *buffer, size_t size, void *app_key) { + struct xer_buffer *xb = app_key; + + while(xb->buffer_size + size + 1 > xb->allocated_size) { + size_t new_size = 2 * (xb->allocated_size ? xb->allocated_size : 64); + char *new_buf = MALLOC(new_size); + if(!new_buf) return -1; + if (xb->buffer) { + memcpy(new_buf, xb->buffer, xb->buffer_size); + } + FREEMEM(xb->buffer); + xb->buffer = new_buf; + xb->allocated_size = new_size; + } + + memcpy(xb->buffer + xb->buffer_size, buffer, size); + xb->buffer_size += size; + xb->buffer[xb->buffer_size] = '\0'; + return 0; +} + +enum xer_equivalence_e +xer_equivalent(const struct asn_TYPE_descriptor_s *td, const void *struct1, + const void *struct2, FILE *opt_debug_stream) { + struct xer_buffer xb1 = {0, 0, 0}; + struct xer_buffer xb2 = {0, 0, 0}; + asn_enc_rval_t e1, e2; + asn_dec_rval_t rval; + void *sptr = NULL; + + if(!td || !struct1 || !struct2) { + if(opt_debug_stream) { + if(!td) fprintf(opt_debug_stream, "Type descriptor missing\n"); + if(!struct1) fprintf(opt_debug_stream, "Structure 1 missing\n"); + if(!struct2) fprintf(opt_debug_stream, "Structure 2 missing\n"); + } + return XEQ_FAILURE; + } + + e1 = xer_encode(td, struct1, XER_F_BASIC, xer__buffer_append, &xb1); + if(e1.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + return XEQ_ENCODE1_FAILED; + } + + e2 = xer_encode(td, struct2, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ENCODE1_FAILED; + } + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structures XER-encoded into different byte streams:\n=== " + "Structure 1 ===\n%s\n=== Structure 2 ===\n%s\n", + xb1.buffer, xb2.buffer); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DIFFERENT; + } else { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Both structures encoded into the same XER byte stream " + "of size %" ASN_PRI_SIZE ":\n%s", + xb1.buffer_size, xb1.buffer); + } + } + + rval = xer_decode(NULL, td, (void **)&sptr, xb1.buffer, + xb1.buffer_size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decode unexpectedly requires " + "more data:\n%s\n", + td->name, xb1.buffer); + } + /* Fall through */ + case RC_FAIL: + default: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decoding resulted in failure.\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DECODE_FAILED; + } + + if(rval.consumed != xb1.buffer_size + && ((rval.consumed > xb1.buffer_size) + || xer_whitespace_span(xb1.buffer + rval.consumed, + xb1.buffer_size - rval.consumed) + != (xb1.buffer_size - rval.consumed))) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Round-trip decode of %s required less bytes (%" ASN_PRI_SIZE ") than " + "encoded (%" ASN_PRI_SIZE ")\n", + td->name, rval.consumed, xb1.buffer_size); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + /* + * Reuse xb2 to encode newly decoded structure. + */ + FREEMEM(xb2.buffer); + memset(&xb2, 0, sizeof(xb2)); + + e2 = xer_encode(td, sptr, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of round-trip decode of %s failed\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + ASN_STRUCT_FREE(*td, sptr); + sptr = 0; + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "XER Encoding of round-trip decode of %s resulted in " + "different byte stream:\n" + "=== Original ===\n%s\n" + "=== Round-tripped ===\n%s\n", + xb1.buffer, xb2.buffer, td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_SUCCESS; +} + diff --git a/src/tmx/Asn_J2735/src/r2020/xer_support.c b/src/tmx/Asn_J2735/src/r2020/xer_support.c new file mode 100644 index 000000000..36b4bfbfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/xer_support.c @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* Parser states */ +typedef enum { + ST_TEXT, + ST_TAG_START, + ST_TAG_BODY, + ST_TAG_QUOTE_WAIT, + ST_TAG_QUOTED_STRING, + ST_TAG_UNQUOTED_STRING, + ST_COMMENT_WAIT_DASH1, /* ""[0] */ + ST_COMMENT_CLO_RT /* "-->"[1] */ +} pstate_e; + +static const int +_charclass[256] = { + 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, + 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ +}; +#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) +#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) +#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) + +/* Aliases for characters, ASCII/UTF-8 */ +#define EXCLAM 0x21 /* '!' */ +#define CQUOTE 0x22 /* '"' */ +#define CDASH 0x2d /* '-' */ +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define CEQUAL 0x3d /* '=' */ +#define RANGLE 0x3e /* '>' */ +#define CQUEST 0x3f /* '?' */ + +/* Invoke token callback */ +#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ + int _ret; \ + pstate_e ns = _ns; \ + ssize_t _sz = (p - chunk_start) + _current_too; \ + if (!_sz) { \ + /* Shortcut */ \ + state = _ns; \ + break; \ + } \ + _ret = cb(type, chunk_start, _sz, key); \ + if(_ret < _sz) { \ + if(_current_too && _ret == -1) \ + state = ns; \ + goto finish; \ + } \ + chunk_start = p + _current_too; \ + state = ns; \ + } while(0) + +#define TOKEN_CB(_type, _ns, _current_too) \ + TOKEN_CB_CALL(_type, _ns, _current_too, 0) + +#define PXML_TAG_FINAL_CHUNK_TYPE PXML_TAG_END +#define PXML_COMMENT_FINAL_CHUNK_TYPE PXML_COMMENT_END + +#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ + TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1) + +/* + * Parser itself + */ +ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { + pstate_e state = (pstate_e)*stateContext; + const char *chunk_start = (const char *)xmlbuf; + const char *p = chunk_start; + const char *end = p + size; + + for(; p < end; p++) { + int C = *(const unsigned char *)p; + switch(state) { + case ST_TEXT: + /* + * Initial state: we're in the middle of some text, + * or just have started. + */ + if (C == LANGLE) + /* We're now in the tag, probably */ + TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); + break; + case ST_TAG_START: + if (ALPHA(C) || (C == CSLASH)) + state = ST_TAG_BODY; + else if (C == EXCLAM) + state = ST_COMMENT_WAIT_DASH1; + else + /* + * Not characters and not whitespace. + * Must be something like "3 < 4". + */ + TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ + break; + case ST_TAG_BODY: + switch(C) { + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + case LANGLE: + /* + * The previous tag wasn't completed, but still + * recognized as valid. (Mozilla-compatible) + */ + TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); + break; + case CEQUAL: + state = ST_TAG_QUOTE_WAIT; + break; + } + break; + case ST_TAG_QUOTE_WAIT: + /* + * State after the equal sign ("=") in the tag. + */ + switch(C) { + case CQUOTE: + state = ST_TAG_QUOTED_STRING; + break; + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + default: + if(!WHITESPACE(C)) + /* Unquoted string value */ + state = ST_TAG_UNQUOTED_STRING; + } + break; + case ST_TAG_QUOTED_STRING: + /* + * Tag attribute's string value in quotes. + */ + if(C == CQUOTE) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_TAG_UNQUOTED_STRING: + if(C == RANGLE) { + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + } else if(WHITESPACE(C)) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH1: + if(C == CDASH) { + state = ST_COMMENT_WAIT_DASH2; + } else { + /* Some ordinary tag. */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH2: + if(C == CDASH) { + /* Seen "<--" */ + state = ST_COMMENT; + } else { + /* Some ordinary tag */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT: + if(C == CDASH) { + state = ST_COMMENT_CLO_DASH2; + } + break; + case ST_COMMENT_CLO_DASH2: + if(C == CDASH) { + state = ST_COMMENT_CLO_RT; + } else { + /* This is not an end of a comment */ + state = ST_COMMENT; + } + break; + case ST_COMMENT_CLO_RT: + if(C == RANGLE) { + TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); + } else if(C == CDASH) { + /* Maintain current state, still waiting for '>' */ + } else { + state = ST_COMMENT; + } + break; + } /* switch(*ptr) */ + } /* for() */ + + /* + * Flush the partially processed chunk, state permitting. + */ + if(p - chunk_start) { + switch (state) { + case ST_COMMENT: + TOKEN_CB(PXML_COMMENT, state, 0); + break; + case ST_TEXT: + TOKEN_CB(PXML_TEXT, state, 0); + break; + default: break; /* a no-op */ + } + } + +finish: + *stateContext = (int)state; + return chunk_start - (const char *)xmlbuf; +} + diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index f7cb254b0..4689dc548 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -734,7 +734,8 @@ TEST_F (J2735MessageTest, EncodeSrm) TEST_F(J2735MessageTest, EncodeTravelerInformation){ //Advisory - string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; + // string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; + string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; std::stringstream ss; TimMessage timMsg; TimEncodedMessage timEnc; diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp index d43d82ecb..6e03bce7e 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.cpp @@ -1,177 +1,177 @@ -// #include "J3224ToSDSMJsonConverter.h" - -// namespace CARMAStreetsPlugin -// { - -// void J3224ToSDSMJsonConverter::convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &SDSMDataJson) const -// { -// // Define shared pointers for optional data -// std::vector> shared_ptrs; - -// // SDSM header data -// SDSMDataJson["msg_cnt"] = sdsmMsgPtr->msgCnt; - -// auto id_len = sdsmMsgPtr->sourceID.size; -// unsigned long id_num = 0; -// for(auto i = 0; i < id_len; i++) -// { -// id_num = (id_num << 8) | sdsmMsgPtr->sourceID.buf[i]; -// } -// std::stringstream id_fill_ss; -// id_fill_ss << std::setfill('0') << std::setw(8) <equipmentType; - -// Json::Value sDSMTimeStamp; -// sDSMTimeStamp["year"] = *sdsmMsgPtr->sDSMTimeStamp.year; -// sDSMTimeStamp["month"] = *sdsmMsgPtr->sDSMTimeStamp.month; -// sDSMTimeStamp["day"] = *sdsmMsgPtr->sDSMTimeStamp.day; -// sDSMTimeStamp["hour"] = *sdsmMsgPtr->sDSMTimeStamp.hour; -// sDSMTimeStamp["minute"] = *sdsmMsgPtr->sDSMTimeStamp.minute; -// sDSMTimeStamp["second"] = *sdsmMsgPtr->sDSMTimeStamp.second; -// sDSMTimeStamp["offset"] = *sdsmMsgPtr->sDSMTimeStamp.offset; -// SDSMDataJson["sdsm_time_stamp"] = sDSMTimeStamp; - -// Json::Value refPos; -// refPos["lat"] = sdsmMsgPtr->refPos.lat; -// refPos["long"] = sdsmMsgPtr->refPos.Long; -// refPos["elevation"] = *sdsmMsgPtr->refPos.elevation; -// SDSMDataJson["ref_pos"] = refPos; - -// Json::Value refPosXYConf; -// refPosXYConf["semi_major"] = sdsmMsgPtr->refPosXYConf.semiMajor; -// refPosXYConf["semi_minor"] = sdsmMsgPtr->refPosXYConf.semiMinor; -// refPosXYConf["orientation"] = sdsmMsgPtr->refPosXYConf.orientation; -// SDSMDataJson["ref_pos_xy_conf"] = refPosXYConf; - -// SDSMDataJson["ref_pos_el_conf"] = *sdsmMsgPtr->refPosElConf; +#include "J3224ToSDSMJsonConverter.h" + +namespace CARMAStreetsPlugin +{ + + void J3224ToSDSMJsonConverter::convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &SDSMDataJson) const + { + // Define shared pointers for optional data + std::vector> shared_ptrs; + + // SDSM header data + SDSMDataJson["msg_cnt"] = sdsmMsgPtr->msgCnt; + + auto id_len = sdsmMsgPtr->sourceID.size; + unsigned long id_num = 0; + for(auto i = 0; i < id_len; i++) + { + id_num = (id_num << 8) | sdsmMsgPtr->sourceID.buf[i]; + } + std::stringstream id_fill_ss; + id_fill_ss << std::setfill('0') << std::setw(8) <equipmentType; + + Json::Value sDSMTimeStamp; + sDSMTimeStamp["year"] = *sdsmMsgPtr->sDSMTimeStamp.year; + sDSMTimeStamp["month"] = *sdsmMsgPtr->sDSMTimeStamp.month; + sDSMTimeStamp["day"] = *sdsmMsgPtr->sDSMTimeStamp.day; + sDSMTimeStamp["hour"] = *sdsmMsgPtr->sDSMTimeStamp.hour; + sDSMTimeStamp["minute"] = *sdsmMsgPtr->sDSMTimeStamp.minute; + sDSMTimeStamp["second"] = *sdsmMsgPtr->sDSMTimeStamp.second; + sDSMTimeStamp["offset"] = *sdsmMsgPtr->sDSMTimeStamp.offset; + SDSMDataJson["sdsm_time_stamp"] = sDSMTimeStamp; + + Json::Value refPos; + refPos["lat"] = sdsmMsgPtr->refPos.lat; + refPos["long"] = sdsmMsgPtr->refPos.Long; + refPos["elevation"] = *sdsmMsgPtr->refPos.elevation; + SDSMDataJson["ref_pos"] = refPos; + + Json::Value refPosXYConf; + refPosXYConf["semi_major"] = sdsmMsgPtr->refPosXYConf.semiMajor; + refPosXYConf["semi_minor"] = sdsmMsgPtr->refPosXYConf.semiMinor; + refPosXYConf["orientation"] = sdsmMsgPtr->refPosXYConf.orientation; + SDSMDataJson["ref_pos_xy_conf"] = refPosXYConf; + + SDSMDataJson["ref_pos_el_conf"] = *sdsmMsgPtr->refPosElConf; -// // Create list to append detected objects to -// const DetectedObjectList det_obj_list = sdsmMsgPtr->objects; + // Create list to append detected objects to + const DetectedObjectList det_obj_list = sdsmMsgPtr->objects; -// if(det_obj_list.list.array != nullptr){ + if(det_obj_list.list.array != nullptr){ -// Json::Value objectsJson; + Json::Value objectsJson; -// for(size_t i = 0; i < det_obj_list.list.count; i++){ + for(size_t i = 0; i < det_obj_list.list.count; i++){ -// Json::Value detectedObjectJson; -// auto det_object = det_obj_list.list.array[i]; + Json::Value detectedObjectJson; + auto det_object = det_obj_list.list.array[i]; -// // Detected object common data -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type"] = det_object->detObjCommon.objType; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"] = det_object->detObjCommon.objTypeCfd; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["object_id"] = det_object->detObjCommon.objectID; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["measurement_time"] = det_object->detObjCommon.measurementTime; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["time_confidence"] = det_object->detObjCommon.timeConfidence; + // Detected object common data + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type"] = det_object->detObjCommon.objType; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"] = det_object->detObjCommon.objTypeCfd; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["object_id"] = det_object->detObjCommon.objectID; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["measurement_time"] = det_object->detObjCommon.measurementTime; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["time_confidence"] = det_object->detObjCommon.timeConfidence; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"] = det_object->detObjCommon.pos.offsetX; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"] = det_object->detObjCommon.pos.offsetY; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"] = *det_object->detObjCommon.pos.offsetZ; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"] = det_object->detObjCommon.pos.offsetX; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"] = det_object->detObjCommon.pos.offsetY; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"] = *det_object->detObjCommon.pos.offsetZ; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"] = det_object->detObjCommon.posConfidence.pos; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"] = det_object->detObjCommon.posConfidence.elevation; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"] = det_object->detObjCommon.posConfidence.pos; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"] = det_object->detObjCommon.posConfidence.elevation; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed"] = det_object->detObjCommon.speed; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence"] = det_object->detObjCommon.speedConfidence; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed"] = det_object->detObjCommon.speed; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence"] = det_object->detObjCommon.speedConfidence; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading"] = det_object->detObjCommon.heading; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading_conf"] = det_object->detObjCommon.headingConf; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading"] = det_object->detObjCommon.heading; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["heading_conf"] = det_object->detObjCommon.headingConf; -// // Optional common data -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_z"] = *det_object->detObjCommon.speedZ; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"] = *det_object->detObjCommon.speedConfidenceZ; + // Optional common data + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_z"] = *det_object->detObjCommon.speedZ; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"] = *det_object->detObjCommon.speedConfidenceZ; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"] = det_object->detObjCommon.accel4way->Long; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"] = det_object->detObjCommon.accel4way->lat; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"] = det_object->detObjCommon.accel4way->vert; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"] = det_object->detObjCommon.accel4way->yaw; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"] = det_object->detObjCommon.accel4way->Long; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"] = det_object->detObjCommon.accel4way->lat; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"] = det_object->detObjCommon.accel4way->vert; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"] = det_object->detObjCommon.accel4way->yaw; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"] = *det_object->detObjCommon.accCfdX; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"] = *det_object->detObjCommon.accCfdY; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"] = *det_object->detObjCommon.accCfdZ; -// detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"] = *det_object->detObjCommon.accCfdYaw; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"] = *det_object->detObjCommon.accCfdX; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"] = *det_object->detObjCommon.accCfdY; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"] = *det_object->detObjCommon.accCfdZ; + detectedObjectJson["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"] = *det_object->detObjCommon.accCfdYaw; -// // Detected object optional data for vehicles, VRUs, obstacles -// if(det_object->detObjOptData != nullptr){ -// Json::Value optionalDataJson; + // Detected object optional data for vehicles, VRUs, obstacles + if(det_object->detObjOptData != nullptr){ + Json::Value optionalDataJson; -// switch(det_object->detObjOptData->present) -// { -// case DetectedObjectOptionalData_PR_NOTHING: -// break; - -// case DetectedObjectOptionalData_PR_detVeh: - -// // TODO: find a better way to convert bit string data (JsonTo2735SpatConverter) -// optionalDataJson["detected_vehicle_data"]["lights"] = std::to_string(*det_object->detObjOptData->choice.detVeh.lights->buf); -// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["pitch"] = det_object->detObjOptData->choice.detVeh.vehAttitude->pitch; -// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["roll"] = det_object->detObjOptData->choice.detVeh.vehAttitude->roll; -// optionalDataJson["detected_vehicle_data"]["veh_attitude"]["yaw"] = det_object->detObjOptData->choice.detVeh.vehAttitude->yaw; - -// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->pitchConfidence; -// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->rollConfidence; -// optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->yawConfidence; - -// optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->pitchRate; -// optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->rollRate; - -// optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->pitchRateConfidence; -// optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->rollRateConfidence; - -// optionalDataJson["detected_vehicle_data"]["size"]["width"] = det_object->detObjOptData->choice.detVeh.size->width; -// optionalDataJson["detected_vehicle_data"]["size"]["length"] = det_object->detObjOptData->choice.detVeh.size->length; -// optionalDataJson["detected_vehicle_data"]["height"] = *det_object->detObjOptData->choice.detVeh.height; - -// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleWidthConfidence; -// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleLengthConfidence; -// optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"] = *det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleHeightConfidence; - -// optionalDataJson["detected_vehicle_data"]["vehicle_class"] = *det_object->detObjOptData->choice.detVeh.vehicleClass; -// optionalDataJson["detected_vehicle_data"]["vehicle_class_conf"] = *det_object->detObjOptData->choice.detVeh.classConf; -// break; - -// case DetectedObjectOptionalData_PR_detVRU: -// optionalDataJson["detected_vru_data"]["basic_type"] = *det_object->detObjOptData->choice.detVRU.basicType; - -// switch(det_object->detObjOptData->choice.detVRU.propulsion->present) -// { -// case PropelledInformation_PR_NOTHING: -// break; -// case PropelledInformation_PR_human: -// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.human; -// break; -// case PropelledInformation_PR_animal: -// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.animal; -// break; -// case PropelledInformation_PR_motor: -// optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.motor; -// break; -// } - -// optionalDataJson["detected_vru_data"]["attachment"] = *det_object->detObjOptData->choice.detVRU.attachment; -// optionalDataJson["detected_vru_data"]["radius"] = *det_object->detObjOptData->choice.detVRU.radius; -// break; - -// case DetectedObjectOptionalData_PR_detObst: -// optionalDataJson["detected_obstacle_data"]["obst_size"]["width"] = det_object->detObjOptData->choice.detObst.obstSize.width; -// optionalDataJson["detected_obstacle_data"]["obst_size"]["length"] = det_object->detObjOptData->choice.detObst.obstSize.length; -// optionalDataJson["detected_obstacle_data"]["obst_size"]["height"] = *det_object->detObjOptData->choice.detObst.obstSize.height; // optional - -// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.widthConfidence; -// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.lengthConfidence; -// optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"] = *det_object->detObjOptData->choice.detObst.obstSizeConfidence.heightConfidence; -// break; -// } -// detectedObjectJson["detected_object_data"]["detected_object_optional_data"] = optionalDataJson; -// } - -// // Add the generated object jsons to the detected object list -// SDSMDataJson["objects"].append(detectedObjectJson); - -// } -// } -// } -// } \ No newline at end of file + switch(det_object->detObjOptData->present) + { + case DetectedObjectOptionalData_PR_NOTHING: + break; + + case DetectedObjectOptionalData_PR_detVeh: + + // TODO: find a better way to convert bit string data (JsonTo2735SpatConverter) + optionalDataJson["detected_vehicle_data"]["lights"] = std::to_string(*det_object->detObjOptData->choice.detVeh.lights->buf); + optionalDataJson["detected_vehicle_data"]["veh_attitude"]["pitch"] = det_object->detObjOptData->choice.detVeh.vehAttitude->pitch; + optionalDataJson["detected_vehicle_data"]["veh_attitude"]["roll"] = det_object->detObjOptData->choice.detVeh.vehAttitude->roll; + optionalDataJson["detected_vehicle_data"]["veh_attitude"]["yaw"] = det_object->detObjOptData->choice.detVeh.vehAttitude->yaw; + + optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->pitchConfidence; + optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->rollConfidence; + optionalDataJson["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"] = det_object->detObjOptData->choice.detVeh.vehAttitudeConfidence->yawConfidence; + + optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->pitchRate; + optionalDataJson["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"] = det_object->detObjOptData->choice.detVeh.vehAngVel->rollRate; + + optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->pitchRateConfidence; + optionalDataJson["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"] = *det_object->detObjOptData->choice.detVeh.vehAngVelConfidence->rollRateConfidence; + + optionalDataJson["detected_vehicle_data"]["size"]["width"] = det_object->detObjOptData->choice.detVeh.size->width; + optionalDataJson["detected_vehicle_data"]["size"]["length"] = det_object->detObjOptData->choice.detVeh.size->length; + optionalDataJson["detected_vehicle_data"]["height"] = *det_object->detObjOptData->choice.detVeh.height; + + optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleWidthConfidence; + optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"] = det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleLengthConfidence; + optionalDataJson["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"] = *det_object->detObjOptData->choice.detVeh.vehicleSizeConfidence->vehicleHeightConfidence; + + optionalDataJson["detected_vehicle_data"]["vehicle_class"] = *det_object->detObjOptData->choice.detVeh.vehicleClass; + optionalDataJson["detected_vehicle_data"]["vehicle_class_conf"] = *det_object->detObjOptData->choice.detVeh.classConf; + break; + + case DetectedObjectOptionalData_PR_detVRU: + optionalDataJson["detected_vru_data"]["basic_type"] = *det_object->detObjOptData->choice.detVRU.basicType; + + switch(det_object->detObjOptData->choice.detVRU.propulsion->present) + { + case PropelledInformation_PR_NOTHING: + break; + case PropelledInformation_PR_human: + optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.human; + break; + case PropelledInformation_PR_animal: + optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.animal; + break; + case PropelledInformation_PR_motor: + optionalDataJson["detected_vru_data"]["propulsion"]["human"] = det_object->detObjOptData->choice.detVRU.propulsion->choice.motor; + break; + } + + optionalDataJson["detected_vru_data"]["attachment"] = *det_object->detObjOptData->choice.detVRU.attachment; + optionalDataJson["detected_vru_data"]["radius"] = *det_object->detObjOptData->choice.detVRU.radius; + break; + + case DetectedObjectOptionalData_PR_detObst: + optionalDataJson["detected_obstacle_data"]["obst_size"]["width"] = det_object->detObjOptData->choice.detObst.obstSize.width; + optionalDataJson["detected_obstacle_data"]["obst_size"]["length"] = det_object->detObjOptData->choice.detObst.obstSize.length; + optionalDataJson["detected_obstacle_data"]["obst_size"]["height"] = *det_object->detObjOptData->choice.detObst.obstSize.height; // optional + + optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.widthConfidence; + optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"] = det_object->detObjOptData->choice.detObst.obstSizeConfidence.lengthConfidence; + optionalDataJson["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"] = *det_object->detObjOptData->choice.detObst.obstSizeConfidence.heightConfidence; + break; + } + detectedObjectJson["detected_object_data"]["detected_object_optional_data"] = optionalDataJson; + } + + // Add the generated object jsons to the detected object list + SDSMDataJson["objects"].append(detectedObjectJson); + + } + } + } +} \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h index c17546525..273d7efdd 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h +++ b/src/v2i-hub/CARMAStreetsPlugin/src/J3224ToSDSMJsonConverter.h @@ -1,43 +1,43 @@ -// #include "jsoncpp/json/json.h" -// #include +#include "jsoncpp/json/json.h" +#include -// namespace CARMAStreetsPlugin -// { +namespace CARMAStreetsPlugin +{ -// // Template to use when created shared pointer objects for optional data -// template -// T *create_store_shared(std::vector> &shared_pointers) -// { -// auto obj_shared = std::make_shared(); -// shared_pointers.push_back(obj_shared); -// return obj_shared.get(); -// } + // Template to use when created shared pointer objects for optional data + template + T *create_store_shared(std::vector> &shared_pointers) + { + auto obj_shared = std::make_shared(); + shared_pointers.push_back(obj_shared); + return obj_shared.get(); + } -// // Template for shared pointers with array elements -// template -// T *create_store_shared_array(std::vector> &shared_pointers, int size) -// { -// std::shared_ptr array_shared(new T[size]{0}); -// shared_pointers.push_back(array_shared); -// return array_shared.get(); -// } + // Template for shared pointers with array elements + template + T *create_store_shared_array(std::vector> &shared_pointers, int size) + { + std::shared_ptr array_shared(new T[size]{0}); + shared_pointers.push_back(array_shared); + return array_shared.get(); + } -// class J3224ToSDSMJsonConverter -// { -// public: + class J3224ToSDSMJsonConverter + { + public: -// J3224ToSDSMJsonConverter() = default; -// ~J3224ToSDSMJsonConverter() = default; + J3224ToSDSMJsonConverter() = default; + ~J3224ToSDSMJsonConverter() = default; -// /** -// * @brief Convert the J3224 SensorDataSharingMessage into JSON format. -// * @param sdsmMsgPtr The input is a constant SensorDataSharingMessage pointer. This prevent any modification to the original SDSM -// * @param sdsmJson Pass by reference to allow the method to populate this object with the SensorDataSharingMessage data. -// */ -// void convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &sdsmJson) const; + /** + * @brief Convert the J3224 SensorDataSharingMessage into JSON format. + * @param sdsmMsgPtr The input is a constant SensorDataSharingMessage pointer. This prevent any modification to the original SDSM + * @param sdsmJson Pass by reference to allow the method to populate this object with the SensorDataSharingMessage data. + */ + void convertJ3224ToSDSMJSON(const std::shared_ptr sdsmMsgPtr, Json::Value &sdsmJson) const; -// }; + }; -// } \ No newline at end of file +} \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp index 81c498563..f19dd2e83 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp @@ -1,368 +1,369 @@ -// #include "JsonToJ3224SDSMConverter.h" - -// namespace CARMAStreetsPlugin -// { -// // TODO: Move these template functions to a more central location such as in a utility file -// // Template to use when created shared pointer objects for optional data -// template -// T *create_store_shared(std::vector> &shared_pointers) -// { -// auto obj_shared = std::make_shared(); -// shared_pointers.push_back(obj_shared); -// return obj_shared.get(); -// } - -// // Template for shared pointers with array elements -// template -// T *create_store_shared_array(std::vector> &shared_pointers, int size) -// { -// std::shared_ptr array_shared(new T[size]{0}); -// shared_pointers.push_back(array_shared); -// return array_shared.get(); -// } - -// // TODO: Consolidate parseJsonString into a more central location since it is being used verbatim in other converters -// bool JsonToJ3224SDSMConverter::parseJsonString(const std::string &consumedMsg, Json::Value &sdsmJsonOut) const -// { -// const auto jsonLen = static_cast(consumedMsg.length()); -// Json::CharReaderBuilder builder; -// JSONCPP_STRING err; -// const std::unique_ptr reader(builder.newCharReader()); -// bool parseResult = reader->parse(consumedMsg.c_str(), consumedMsg.c_str() + jsonLen, &sdsmJsonOut, &err); -// if (!parseResult) -// { -// PLOG(logERROR) << "Parse error: " << err << std::endl; -// } -// return parseResult; -// } - - -// void JsonToJ3224SDSMConverter::convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const -// { -// std::vector> shared_ptrs; - -// sdsm->msgCnt = sdsm_json["msg_cnt"].asInt64(); - -// // TODO: confirm input sourceID from JSON to C struct constructs octet appropriately -// // sourceID -// TemporaryID_t tempID; - -// std::string id_data = sdsm_json["source_id"].asString(); -// std::vector id_vector(id_data.begin(), id_data.end()); -// uint8_t *id_ptr = &id_vector[0]; -// tempID.buf = id_ptr; -// tempID.size = sizeof(id_ptr); -// sdsm->sourceID = tempID; - -// sdsm->equipmentType = sdsm_json["equipment_type"].asInt64(); +#include "JsonToJ3224SDSMConverter.h" + +namespace CARMAStreetsPlugin +{ + // TODO: Move these template functions to a more central location such as in a utility file + // Template to use when created shared pointer objects for optional data + template + T *create_store_shared(std::vector> &shared_pointers) + { + auto obj_shared = std::make_shared(); + shared_pointers.push_back(obj_shared); + return obj_shared.get(); + } + + // Template for shared pointers with array elements + template + T *create_store_shared_array(std::vector> &shared_pointers, int size) + { + std::shared_ptr array_shared(new T[size]{0}); + shared_pointers.push_back(array_shared); + return array_shared.get(); + } + + // TODO: Consolidate parseJsonString into a more central location since it is being used verbatim in other converters + bool JsonToJ3224SDSMConverter::parseJsonString(const std::string &consumedMsg, Json::Value &sdsmJsonOut) const + { + const auto jsonLen = static_cast(consumedMsg.length()); + Json::CharReaderBuilder builder; + JSONCPP_STRING err; + const std::unique_ptr reader(builder.newCharReader()); + bool parseResult = reader->parse(consumedMsg.c_str(), consumedMsg.c_str() + jsonLen, &sdsmJsonOut, &err); + if (!parseResult) + { + PLOG(logERROR) << "Parse error: " << err << std::endl; + } + return parseResult; + } + + + void JsonToJ3224SDSMConverter::convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const + { + std::vector> shared_ptrs; + + sdsm->msgCnt = sdsm_json["msg_cnt"].asInt64(); + + // TODO: confirm input sourceID from JSON to C struct constructs octet appropriately + // sourceID + TemporaryID_t tempID; + + std::string id_data = sdsm_json["source_id"].asString(); + std::vector id_vector(id_data.begin(), id_data.end()); + uint8_t *id_ptr = &id_vector[0]; + tempID.buf = id_ptr; + tempID.size = sizeof(id_ptr); + sdsm->sourceID = tempID; + + sdsm->equipmentType = sdsm_json["equipment_type"].asInt64(); -// // sDSMTimeStamp -// auto sdsm_time_stamp_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + // sDSMTimeStamp + auto sdsm_time_stamp_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// auto year_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *year_ptr = sdsm_json["sdsm_time_stamp"]["year"].asInt64(); -// sdsm_time_stamp_ptr->year = year_ptr; + auto year_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *year_ptr = sdsm_json["sdsm_time_stamp"]["year"].asInt64(); + sdsm_time_stamp_ptr->year = year_ptr; -// auto month_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *month_ptr = sdsm_json["sdsm_time_stamp"]["month"].asInt64(); -// sdsm_time_stamp_ptr->month = month_ptr; + auto month_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *month_ptr = sdsm_json["sdsm_time_stamp"]["month"].asInt64(); + sdsm_time_stamp_ptr->month = month_ptr; -// auto day_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *day_ptr = sdsm_json["sdsm_time_stamp"]["day"].asInt64(); -// sdsm_time_stamp_ptr->day = day_ptr; + auto day_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *day_ptr = sdsm_json["sdsm_time_stamp"]["day"].asInt64(); + sdsm_time_stamp_ptr->day = day_ptr; -// auto hour_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *hour_ptr = sdsm_json["sdsm_time_stamp"]["hour"].asInt64(); -// sdsm_time_stamp_ptr->hour = hour_ptr; + auto hour_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *hour_ptr = sdsm_json["sdsm_time_stamp"]["hour"].asInt64(); + sdsm_time_stamp_ptr->hour = hour_ptr; -// auto minute_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *minute_ptr = sdsm_json["sdsm_time_stamp"]["minute"].asInt64(); -// sdsm_time_stamp_ptr->minute = minute_ptr; + auto minute_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *minute_ptr = sdsm_json["sdsm_time_stamp"]["minute"].asInt64(); + sdsm_time_stamp_ptr->minute = minute_ptr; -// auto second_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *second_ptr = sdsm_json["sdsm_time_stamp"]["second"].asInt64(); -// sdsm_time_stamp_ptr->second = second_ptr; + auto second_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *second_ptr = sdsm_json["sdsm_time_stamp"]["second"].asInt64(); + sdsm_time_stamp_ptr->second = second_ptr; -// auto offset_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *offset_ptr = sdsm_json["sdsm_time_stamp"]["offset"].asInt64(); -// sdsm_time_stamp_ptr->offset = offset_ptr; + auto offset_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *offset_ptr = sdsm_json["sdsm_time_stamp"]["offset"].asInt64(); + sdsm_time_stamp_ptr->offset = offset_ptr; -// sdsm->sDSMTimeStamp = *sdsm_time_stamp_ptr; + sdsm->sDSMTimeStamp = *sdsm_time_stamp_ptr; -// // refPos -// auto ref_pos_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// ref_pos_ptr->lat = sdsm_json["ref_pos"]["lat"].asInt64(); -// ref_pos_ptr->Long = sdsm_json["ref_pos"]["long"].asInt64(); -// auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *elevation_ptr = sdsm_json["ref_pos"]["elevation"].asInt64(); -// ref_pos_ptr->elevation = elevation_ptr; + // refPos + auto ref_pos_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + ref_pos_ptr->lat = sdsm_json["ref_pos"]["lat"].asInt64(); + ref_pos_ptr->Long = sdsm_json["ref_pos"]["long"].asInt64(); + // auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *elevation_ptr = sdsm_json["ref_pos"]["elevation"].asInt64(); + ref_pos_ptr->elevation = elevation_ptr; -// sdsm->refPos = *ref_pos_ptr; + sdsm->refPos = *ref_pos_ptr; -// // refPosXYConf -// PositionalAccuracy_t ref_pos_xy_conf; -// ref_pos_xy_conf.semiMajor = sdsm_json["ref_pos_xy_conf"]["semi_major"].asInt64(); -// ref_pos_xy_conf.semiMinor = sdsm_json["ref_pos_xy_conf"]["semi_minor"].asInt64(); -// ref_pos_xy_conf.orientation = sdsm_json["ref_pos_xy_conf"]["orientation"].asInt64(); + // refPosXYConf + PositionalAccuracy_t ref_pos_xy_conf; + ref_pos_xy_conf.semiMajor = sdsm_json["ref_pos_xy_conf"]["semi_major"].asInt64(); + ref_pos_xy_conf.semiMinor = sdsm_json["ref_pos_xy_conf"]["semi_minor"].asInt64(); + ref_pos_xy_conf.orientation = sdsm_json["ref_pos_xy_conf"]["orientation"].asInt64(); -// sdsm->refPosXYConf = ref_pos_xy_conf; + sdsm->refPosXYConf = ref_pos_xy_conf; -// // refPosElConf -// auto ref_pos_el_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *ref_pos_el_conf_ptr = sdsm_json["ref_pos_el_conf"].asInt64(); -// sdsm->refPosElConf = ref_pos_el_conf_ptr; + // refPosElConf + auto ref_pos_el_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *ref_pos_el_conf_ptr = sdsm_json["ref_pos_el_conf"].asInt64(); + sdsm->refPosElConf = ref_pos_el_conf_ptr; -// // Creat initial pointers for detected object list and contained objects -// auto object_list = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// auto object_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + // Creat initial pointers for detected object list and contained objects + auto object_list = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + auto object_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// if(sdsm_json.isMember("objects") && sdsm_json["objects"].isArray()){ -// Json::Value objectsJsonArr = sdsm_json["objects"]; -// for(auto itr = objectsJsonArr.begin(); itr != objectsJsonArr.end(); itr++){ + if(sdsm_json.isMember("objects") && sdsm_json["objects"].isArray()){ + Json::Value objectsJsonArr = sdsm_json["objects"]; + for(auto itr = objectsJsonArr.begin(); itr != objectsJsonArr.end(); itr++){ -// auto common_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + auto common_data = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// // Propegate common data -// common_data->objType = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type"].asInt64();; -// common_data->objTypeCfd = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"].asInt64(); -// common_data->objectID = (*itr)["detected_object_data"]["detected_object_common_data"]["object_id"].asInt64(); -// common_data->measurementTime = (*itr)["detected_object_data"]["detected_object_common_data"]["measurement_time"].asInt64(); -// common_data->timeConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["time_confidence"].asInt64(); + // Propegate common data + common_data->objType = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type"].asInt64();; + common_data->objTypeCfd = (*itr)["detected_object_data"]["detected_object_common_data"]["obj_type_cfd"].asInt64(); + common_data->objectID = (*itr)["detected_object_data"]["detected_object_common_data"]["object_id"].asInt64(); + common_data->measurementTime = (*itr)["detected_object_data"]["detected_object_common_data"]["measurement_time"].asInt64(); + common_data->timeConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["time_confidence"].asInt64(); -// // pos (posOffsetXYZ) -// common_data->pos.offsetX = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"].asInt64(); -// common_data->pos.offsetY = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"].asInt64(); -// auto offset_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *offset_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"].asInt64(); -// common_data->pos.offsetZ = offset_z_ptr; - -// // posConfidence -// common_data->posConfidence.pos = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"].asInt64(); -// common_data->posConfidence.elevation = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"].asInt64(); - -// // speed/speedConfidence -// common_data->speed = (*itr)["detected_object_data"]["detected_object_common_data"]["speed"].asInt64(); -// common_data->speedConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence"].asInt64(); - -// // speedZ/speedConfidenceZ -// auto speed_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *speed_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_z"].asInt64(); -// common_data->speedZ = speed_z_ptr; -// auto speed_conf_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *speed_conf_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"].asInt64(); -// common_data->speedConfidenceZ = speed_conf_z_ptr; - -// // heading/headingConf -// common_data->heading = (*itr)["detected_object_data"]["detected_object_common_data"]["heading"].asInt64(); -// common_data->headingConf = (*itr)["detected_object_data"]["detected_object_common_data"]["heading_conf"].asInt64(); - -// // accel4way -// auto accel_4_way_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// accel_4_way_ptr->Long = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"].asInt64(); -// accel_4_way_ptr->lat = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"].asInt64(); -// accel_4_way_ptr->vert = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"].asInt64(); -// accel_4_way_ptr->yaw = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"].asInt64(); -// common_data->accel4way = accel_4_way_ptr; - -// // accCfd(X/Y/Z/Yaw) -// auto acc_cfd_x_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *acc_cfd_x_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"].asInt64(); -// common_data->accCfdX = acc_cfd_x_ptr; - -// auto acc_cfd_y_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *acc_cfd_y_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"].asInt64(); -// common_data->accCfdY = acc_cfd_y_ptr; - -// auto acc_cfd_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *acc_cfd_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"].asInt64(); -// common_data->accCfdZ = acc_cfd_z_ptr; - -// auto acc_cfd_yaw_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *acc_cfd_yaw_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"].asInt64(); -// common_data->accCfdYaw = acc_cfd_yaw_ptr; - - -// // Add common data to object data -// object_data->detObjCommon = *common_data; - - - -// // Propegate optional data fields - -// // detectedObjectOptionalData -// auto optional_data_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - -// // determine which optional data choice is being used if any -// // detVeh -// if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vehicle_data")){ - -// // set presence val to veh -// optional_data_ptr->present = DetectedObjectOptionalData_PR_detVeh; - -// // TODO: find a better way to convert/test lights val without calloc -// // // lights -// // auto lights_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// // auto lights = static_cast((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["lights"].asInt()); -// // lights_ptr->buf = (uint8_t *)calloc(2, sizeof(uint8_t)); // TODO: find calloc alternative if possible, causes a memory leak -// // lights_ptr->size = 2 * sizeof(uint8_t); -// // lights_ptr->bits_unused = 0; -// // lights_ptr->buf[1] = static_cast(lights); -// // lights_ptr->buf[0] = (lights >> 8); - -// // optional_data_ptr->choice.detVeh.lights = lights_ptr; - - -// // vehAttitude -// auto attitude_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// attitude_ptr->pitch = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["pitch"].asInt64(); -// attitude_ptr->roll = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["roll"].asInt64(); -// attitude_ptr->yaw = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["yaw"].asInt64(); -// optional_data_ptr->choice.detVeh.vehAttitude = attitude_ptr; - -// // vehAttitudeConfidence -// auto attitude_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// attitude_conf_ptr->pitchConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"].asInt64(); -// attitude_conf_ptr->rollConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"].asInt64(); -// attitude_conf_ptr->yawConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"].asInt64(); -// optional_data_ptr->choice.detVeh.vehAttitudeConfidence = attitude_conf_ptr; - -// // vehAngVel -// auto ang_vel_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// ang_vel_ptr->pitchRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"].asInt64(); -// ang_vel_ptr->rollRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"].asInt64(); -// optional_data_ptr->choice.detVeh.vehAngVel = ang_vel_ptr; - -// // vehAngVelConfidence -// auto ang_vel_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// auto pitch_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *pitch_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"].asInt64(); -// ang_vel_conf_ptr->pitchRateConfidence = pitch_conf_ptr; -// auto roll_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *roll_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"].asInt64(); -// ang_vel_conf_ptr->rollRateConfidence = roll_conf_ptr; -// optional_data_ptr->choice.detVeh.vehAngVelConfidence = ang_vel_conf_ptr; - -// // size (VehicleSize) -// auto size_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// size_ptr->width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["width"].asInt64(); -// size_ptr->length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["length"].asInt64(); -// optional_data_ptr->choice.detVeh.size = size_ptr; - -// // height -// auto height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["height"].asInt64(); -// optional_data_ptr->choice.detVeh.height = height_ptr; - -// // vehcleSizeConfidence -// auto size_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// size_conf_ptr->vehicleWidthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"].asInt64(); -// size_conf_ptr->vehicleLengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"].asInt64(); -// auto height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"].asInt64(); -// size_conf_ptr->vehicleHeightConfidence = height_conf_ptr; -// optional_data_ptr->choice.detVeh.vehicleSizeConfidence = size_conf_ptr; - -// // vehicleClass -// auto veh_class_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *veh_class_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class"].asInt64(); -// optional_data_ptr->choice.detVeh.vehicleClass = veh_class_ptr; - -// // vehClassConf -// auto veh_class_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *veh_class_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class_conf"].asInt64(); -// optional_data_ptr->choice.detVeh.classConf = veh_class_conf_ptr; -// } - -// // detVRU -// else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vru_data")){ - -// optional_data_ptr->present = DetectedObjectOptionalData_PR_detVRU; - -// // basicType -// auto basic_type_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *basic_type_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["basic_type"].asInt64(); -// optional_data_ptr->choice.detVRU.basicType = basic_type_ptr; - -// // propulsion choice struct (check to see if propulsion exists) -// auto propulsion_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); - -// if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("human")){ -// propulsion_ptr->present = PropelledInformation_PR_human; -// propulsion_ptr->choice.human = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["human"].asInt64(); -// } -// else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("animal")){ -// propulsion_ptr->present = PropelledInformation_PR_animal; -// propulsion_ptr->choice.animal = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["animal"].asInt64(); -// } -// else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("motor")){ -// propulsion_ptr->present = PropelledInformation_PR_motor; -// propulsion_ptr->choice.motor = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["motor"].asInt64(); -// } -// else{ -// propulsion_ptr->present = PropelledInformation_PR_NOTHING; -// std::cout << "Value was nothing" << std::endl; -// } -// optional_data_ptr->choice.detVRU.propulsion = propulsion_ptr; - -// // attachement -// auto attachment_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *attachment_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["attachment"].asInt64(); -// optional_data_ptr->choice.detVRU.attachment = attachment_ptr; - -// // radius -// auto radius_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *radius_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["radius"].asInt64(); -// optional_data_ptr->choice.detVRU.radius = radius_ptr; -// } - - -// // detObst -// else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_obstacle_data")){ -// optional_data_ptr->present = DetectedObjectOptionalData_PR_detObst; - -// ObstacleSize obst_size; -// obst_size.width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["width"].asInt64(); -// obst_size.length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["length"].asInt64(); -// auto obst_height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *obst_height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["height"].asInt64(); -// obst_size.height = obst_height_ptr; -// optional_data_ptr->choice.detObst.obstSize = obst_size; - -// ObstacleSizeConfidence obst_size_conf; -// obst_size_conf.widthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"].asInt64(); -// obst_size_conf.lengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"].asInt64(); -// auto obst_height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); -// *obst_height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"].asInt64(); -// obst_size_conf.heightConfidence = obst_height_conf_ptr; -// optional_data_ptr->choice.detObst.obstSizeConfidence = obst_size_conf; -// } - - -// // Add optional data to object data -// object_data->detObjOptData = optional_data_ptr; - - -// } -// } - -// // Append the object to the detected objects list -// asn_sequence_add(&object_list->list.array, object_data); - -// // Set the data to the ASN.1 C struct -// sdsm->objects = *object_list; - - -// } - - -// void JsonToJ3224SDSMConverter::encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const -// { -// tmx::messages::MessageFrameMessage frame(sdsmPtr); -// encodedSDSM.set_data(tmx::messages::TmxJ2735EncodedMessage::encode_j2735_message>(frame)); -// free(frame.get_j2735_data().get()); -// } + // pos (posOffsetXYZ) + common_data->pos.offsetX = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_x"].asInt64(); + common_data->pos.offsetY = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_y"].asInt64(); + auto offset_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *offset_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["pos"]["offset_z"].asInt64(); + common_data->pos.offsetZ = offset_z_ptr; + + // posConfidence + common_data->posConfidence.pos = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["pos"].asInt64(); + common_data->posConfidence.elevation = (*itr)["detected_object_data"]["detected_object_common_data"]["pos_confidence"]["elevation"].asInt64(); + + // speed/speedConfidence + common_data->speed = (*itr)["detected_object_data"]["detected_object_common_data"]["speed"].asInt64(); + common_data->speedConfidence = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence"].asInt64(); + + // speedZ/speedConfidenceZ + auto speed_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *speed_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_z"].asInt64(); + common_data->speedZ = speed_z_ptr; + auto speed_conf_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *speed_conf_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["speed_confidence_z"].asInt64(); + common_data->speedConfidenceZ = speed_conf_z_ptr; + + // heading/headingConf + common_data->heading = (*itr)["detected_object_data"]["detected_object_common_data"]["heading"].asInt64(); + common_data->headingConf = (*itr)["detected_object_data"]["detected_object_common_data"]["heading_conf"].asInt64(); + + // accel4way + auto accel_4_way_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + accel_4_way_ptr->Long = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["long"].asInt64(); + accel_4_way_ptr->lat = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["lat"].asInt64(); + accel_4_way_ptr->vert = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["vert"].asInt64(); + accel_4_way_ptr->yaw = (*itr)["detected_object_data"]["detected_object_common_data"]["accel_4_way"]["yaw"].asInt64(); + common_data->accel4way = accel_4_way_ptr; + + // accCfd(X/Y/Z/Yaw) + auto acc_cfd_x_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *acc_cfd_x_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_x"].asInt64(); + common_data->accCfdX = acc_cfd_x_ptr; + + auto acc_cfd_y_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *acc_cfd_y_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_y"].asInt64(); + common_data->accCfdY = acc_cfd_y_ptr; + + auto acc_cfd_z_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *acc_cfd_z_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_z"].asInt64(); + common_data->accCfdZ = acc_cfd_z_ptr; + + auto acc_cfd_yaw_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *acc_cfd_yaw_ptr = (*itr)["detected_object_data"]["detected_object_common_data"]["acc_cfd_yaw"].asInt64(); + common_data->accCfdYaw = acc_cfd_yaw_ptr; + + + // Add common data to object data + object_data->detObjCommon = *common_data; + + + + // Propegate optional data fields + + // detectedObjectOptionalData + auto optional_data_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + + // determine which optional data choice is being used if any + // detVeh + if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vehicle_data")){ + + // set presence val to veh + optional_data_ptr->present = DetectedObjectOptionalData_PR_detVeh; + + // TODO: find a better way to convert/test lights val without calloc + // // lights + // auto lights_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + // auto lights = static_cast((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["lights"].asInt()); + // lights_ptr->buf = (uint8_t *)calloc(2, sizeof(uint8_t)); // TODO: find calloc alternative if possible, causes a memory leak + // lights_ptr->size = 2 * sizeof(uint8_t); + // lights_ptr->bits_unused = 0; + // lights_ptr->buf[1] = static_cast(lights); + // lights_ptr->buf[0] = (lights >> 8); + + // optional_data_ptr->choice.detVeh.lights = lights_ptr; + + + // vehAttitude + auto attitude_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + attitude_ptr->pitch = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["pitch"].asInt64(); + attitude_ptr->roll = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["roll"].asInt64(); + attitude_ptr->yaw = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude"]["yaw"].asInt64(); + optional_data_ptr->choice.detVeh.vehAttitude = attitude_ptr; + + // vehAttitudeConfidence + auto attitude_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + attitude_conf_ptr->pitchConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["pitch_confidence"].asInt64(); + attitude_conf_ptr->rollConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["roll_confidence"].asInt64(); + attitude_conf_ptr->yawConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_attitude_confidence"]["yaw_confidence"].asInt64(); + optional_data_ptr->choice.detVeh.vehAttitudeConfidence = attitude_conf_ptr; + + // vehAngVel + auto ang_vel_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + ang_vel_ptr->pitchRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["pitch_rate"].asInt64(); + ang_vel_ptr->rollRate = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel"]["roll_rate"].asInt64(); + optional_data_ptr->choice.detVeh.vehAngVel = ang_vel_ptr; + + // vehAngVelConfidence + auto ang_vel_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + auto pitch_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *pitch_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["pitch_rate_confidence"].asInt64(); + ang_vel_conf_ptr->pitchRateConfidence = pitch_conf_ptr; + auto roll_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *roll_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["veh_ang_vel_confidence"]["roll_rate_confidence"].asInt64(); + ang_vel_conf_ptr->rollRateConfidence = roll_conf_ptr; + optional_data_ptr->choice.detVeh.vehAngVelConfidence = ang_vel_conf_ptr; + + // size (VehicleSize) + auto size_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + size_ptr->width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["width"].asInt64(); + size_ptr->length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["size"]["length"].asInt64(); + optional_data_ptr->choice.detVeh.size = size_ptr; + + // height + auto height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["height"].asInt64(); + optional_data_ptr->choice.detVeh.height = height_ptr; + + // vehcleSizeConfidence + auto size_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + size_conf_ptr->vehicleWidthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_width_confidence"].asInt64(); + size_conf_ptr->vehicleLengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_length_confidence"].asInt64(); + auto height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_size_confidence"]["vehicle_height_confidence"].asInt64(); + size_conf_ptr->vehicleHeightConfidence = height_conf_ptr; + optional_data_ptr->choice.detVeh.vehicleSizeConfidence = size_conf_ptr; + + // vehicleClass + auto veh_class_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *veh_class_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class"].asInt64(); + optional_data_ptr->choice.detVeh.vehicleClass = veh_class_ptr; + + // vehClassConf + auto veh_class_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *veh_class_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vehicle_data"]["vehicle_class_conf"].asInt64(); + optional_data_ptr->choice.detVeh.classConf = veh_class_conf_ptr; + } + + // detVRU + else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_vru_data")){ + + optional_data_ptr->present = DetectedObjectOptionalData_PR_detVRU; + + // basicType + auto basic_type_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *basic_type_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["basic_type"].asInt64(); + optional_data_ptr->choice.detVRU.basicType = basic_type_ptr; + + // propulsion choice struct (check to see if propulsion exists) + auto propulsion_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + + if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("human")){ + propulsion_ptr->present = PropelledInformation_PR_human; + propulsion_ptr->choice.human = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["human"].asInt64(); + } + else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("animal")){ + propulsion_ptr->present = PropelledInformation_PR_animal; + propulsion_ptr->choice.animal = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["animal"].asInt64(); + } + else if((*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"].isMember("motor")){ + propulsion_ptr->present = PropelledInformation_PR_motor; + propulsion_ptr->choice.motor = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["propulsion"]["motor"].asInt64(); + } + else{ + propulsion_ptr->present = PropelledInformation_PR_NOTHING; + std::cout << "Value was nothing" << std::endl; + } + optional_data_ptr->choice.detVRU.propulsion = propulsion_ptr; + + // attachement + auto attachment_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *attachment_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["attachment"].asInt64(); + optional_data_ptr->choice.detVRU.attachment = attachment_ptr; + + // radius + auto radius_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *radius_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_vru_data"]["radius"].asInt64(); + optional_data_ptr->choice.detVRU.radius = radius_ptr; + } + + + // detObst + else if((*itr)["detected_object_data"]["detected_object_optional_data"].isMember("detected_obstacle_data")){ + optional_data_ptr->present = DetectedObjectOptionalData_PR_detObst; + + ObstacleSize obst_size; + obst_size.width = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["width"].asInt64(); + obst_size.length = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["length"].asInt64(); + auto obst_height_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *obst_height_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size"]["height"].asInt64(); + obst_size.height = obst_height_ptr; + optional_data_ptr->choice.detObst.obstSize = obst_size; + + ObstacleSizeConfidence obst_size_conf; + obst_size_conf.widthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["width_confidence"].asInt64(); + obst_size_conf.lengthConfidence = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["length_confidence"].asInt64(); + auto obst_height_conf_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + *obst_height_conf_ptr = (*itr)["detected_object_data"]["detected_object_optional_data"]["detected_obstacle_data"]["obst_size_confidence"]["height_confidence"].asInt64(); + obst_size_conf.heightConfidence = obst_height_conf_ptr; + optional_data_ptr->choice.detObst.obstSizeConfidence = obst_size_conf; + } + + + // Add optional data to object data + object_data->detObjOptData = optional_data_ptr; + + + } + } + + // Append the object to the detected objects list + asn_sequence_add(&object_list->list.array, object_data); + + // Set the data to the ASN.1 C struct + sdsm->objects = *object_list; + + + } + + + void JsonToJ3224SDSMConverter::encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const + { + tmx::messages::MessageFrameMessage frame(sdsmPtr); + encodedSDSM.set_data(tmx::messages::TmxJ2735EncodedMessage::encode_j2735_message>(frame)); + free(frame.get_j2735_data().get()); + } - -// } \ No newline at end of file + +} \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h index 15af000f7..ea13123f2 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.h @@ -1,46 +1,46 @@ -// #include "jsoncpp/json/json.h" -// #include -// #include -// #include -// #include -// #include -// #include -// #include - -// using namespace tmx::utils; - -// namespace CARMAStreetsPlugin -// { -// class JsonToJ3224SDSMConverter -// { - -// public: - -// JsonToJ3224SDSMConverter() = default; - -// /*** -// * @brief Parse Json string into Json object -// * @param jsonstring that is consumed from a kafka topic -// * @param JsonObject that is populated by the input json string -// * @return boolean. True if parse successfully, false if parse with errors -// */ -// bool parseJsonString(const std::string &consumed_msg, Json::Value &sdsm_json_output) const; - -// /** -// * @brief Convert the Json value with sdsm information info tmx SDSM object. -// * @param json Incoming Json value with sdsm information that is consumed from a Kafka topic. -// * @param sdsm Outgoing J3224 sdsm object that is populated by the json value. -// */ -// void convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const; - -// /*** -// * @brief Encode J3224 SDSM -// * @param Pointer to J3224 SDSM object -// * @param Encoded J3224 SDSM -// */ -// void encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const; - -// ~JsonToJ3224SDSMConverter() = default; -// }; - -// } \ No newline at end of file +#include "jsoncpp/json/json.h" +#include +#include +#include +#include +#include +#include +#include + +using namespace tmx::utils; + +namespace CARMAStreetsPlugin +{ + class JsonToJ3224SDSMConverter + { + + public: + + JsonToJ3224SDSMConverter() = default; + + /*** + * @brief Parse Json string into Json object + * @param jsonstring that is consumed from a kafka topic + * @param JsonObject that is populated by the input json string + * @return boolean. True if parse successfully, false if parse with errors + */ + bool parseJsonString(const std::string &consumed_msg, Json::Value &sdsm_json_output) const; + + /** + * @brief Convert the Json value with sdsm information info tmx SDSM object. + * @param json Incoming Json value with sdsm information that is consumed from a Kafka topic. + * @param sdsm Outgoing J3224 sdsm object that is populated by the json value. + */ + void convertJsonToSDSM(const Json::Value &sdsm_json, std::shared_ptr sdsm) const; + + /*** + * @brief Encode J3224 SDSM + * @param Pointer to J3224 SDSM object + * @param Encoded J3224 SDSM + */ + void encodeSDSM(const std::shared_ptr &sdsmPtr, tmx::messages::SdsmEncodedMessage &encodedSDSM) const; + + ~JsonToJ3224SDSMConverter() = default; + }; + +} \ No newline at end of file diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp index aacbcaddf..834bc062b 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp @@ -29,11 +29,13 @@ class test_J2735ToSRMJsonConverter : public ::testing::Test requestType->role = 0; requestor->type = requestType; RequestorPositionVector_t *position = (RequestorPositionVector_t *)calloc(1, sizeof(RequestorPositionVector_t)); - DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + // DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + Common_Angle_t *heading_angle = (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); *heading_angle = 123; position->heading = heading_angle; Position3D_t *position_point = (Position3D_t *)calloc(1, sizeof(Position3D_t)); - DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + // DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + Common_Elevation_t *elev = (Common_Elevation_t *)calloc(1, sizeof(Common_Elevation_t)); *elev = 12; position_point->elevation = elev; position_point->lat = 3712333; diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp index 132cd2e20..9491fd583 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp @@ -54,7 +54,7 @@ namespace unit_test message->refPos.lat = 400000000; message->refPos.Long = 800000000; - auto pos_elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + auto pos_elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); *pos_elevation_ptr = 30; message->refPos.elevation = pos_elevation_ptr; diff --git a/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp b/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp index 0f8ace728..807f83cfb 100644 --- a/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp +++ b/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp @@ -207,10 +207,10 @@ void XmlCurveParser::ReadRoot(DOMElement* root, TravelerInformation *tim) SpeedLimit = speedLimit; -#if SAEJ2735_SPEC < 63 - tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); - *tim->dataFrameCount = tim->dataFrames.list.count; -#endif +// #if SAEJ2735_SPEC < 63 +// tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); +// *tim->dataFrameCount = tim->dataFrames.list.count; +// #endif // Add Frame Part III (content) for each frame. for (int i = 0; i < tim->dataFrames.list.count; i++) @@ -273,13 +273,13 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) frame->frameType = TravelerInfoType_advisory; -#if SAEJ2735_SPEC < 63 - frame->msgId.present = msgId_PR_furtherInfoID; -#else +// #if SAEJ2735_SPEC < 63 +// frame->msgId.present = msgId_PR_furtherInfoID; +// #else frame->msgId.present = TravelerDataFrame__msgId_PR_furtherInfoID; std::string tempString = "00"; OCTET_STRING_fromString(&(frame->msgId.choice.furtherInfoID), tempString.c_str()); -#endif +// #endif // TODO: Does this need set? //frame->msgId.choice.furtherInfoID = @@ -287,7 +287,8 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) DsrcBuilder::SetStartTimeToYesterday(frame); // Set the duration (minutes) to its max value. - frame->duratonTime = 32000; + // frame->duratonTime = 32000; + frame->durationTime = 32000; frame->startYear = NULL; frame->url = NULL; @@ -435,17 +436,17 @@ Position3D* XmlCurveParser::ReadReferencePoint(DOMElement* referencePointElement { int16_t elevation = atoi(XMLString::transcode(currentElement->getTextContent())) * 10; -#if SAEJ2735_SPEC < 63 - anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); - anchor->elevation->buf = (uint8_t *)calloc(1,2); - anchor->elevation->size = 2; +// #if SAEJ2735_SPEC < 63 +// anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); +// anchor->elevation->buf = (uint8_t *)calloc(1,2); +// anchor->elevation->size = 2; - anchor->elevation->buf[0] = elevation >> 8; - anchor->elevation->buf[1] = elevation & 0xFF; -#else - anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); +// anchor->elevation->buf[0] = elevation >> 8; +// anchor->elevation->buf[1] = elevation & 0xFF; +// #else + anchor->elevation = (Common_Elevation_t *)malloc(sizeof(Common_Elevation_t)); *(anchor->elevation) = elevation; -#endif +// #endif if (_debugOutput) cout << "ReferencePoint Elevation: " << elevation << endl; } diff --git a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp index 74f97a840..d80d26a7e 100644 --- a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp +++ b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp @@ -23,7 +23,8 @@ #define COMPUTED_NODE NodeListXY_PR_computed #define ENUM_NAME(X) NodeOffsetPointXY_PR_node_ ## X typedef NodeXY Node; -typedef DSRC_Elevation_t Elevation2_t; +// typedef DSRC_Elevation_t Elevation2_t; +typedef Common_Elevation_t Elevation2_t; typedef NodeAttributeSetXY NodeAttributeSet; // #endif @@ -178,7 +179,8 @@ class IntersectionGeometryAdaptor: public tmx::message { // #if SAEJ2735_SPEC < 63 // ro_attribute(this->msg, reference_point_attribute, MsgCount_t, msgCount, get_, 0); // #else - ro_attribute(this->msg, reference_point_attribute, DSRC_MsgCount_t, msgCount, get_, 0); + // ro_attribute(this->msg, reference_point_attribute, DSRC_MsgCount_t, msgCount, get_, 0); + ro_attribute(this->msg, reference_point_attribute, Common_MsgCount_t, msgCount, get_, 0); // #endif ro_attribute(this->msg, reference_point_attribute, LaneWidth_t, masterLaneWidth, get_, -1L); ro_attribute(this->msg, reference_point_attribute, double, referenceLat, get_, 0.0); diff --git a/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp b/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp index 0da347c74..62f03cf36 100644 --- a/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp +++ b/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp @@ -140,9 +140,11 @@ SrmMessage* MessageReceiverPlugin::DecodeSrm(uint32_t vehicleId, uint32_t headin srm->requestor.position->position.lat = (Latitude_t)(10.0 * latitude - 1800000000); srm->requestor.position->position.Long = (Longitude_t)(10.0 * longitude - 1800000000); srm->requestor.position->heading = - (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + // (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); if (srm->requestor.position->heading) - *(srm->requestor.position->heading) = (DSRC_Angle_t)(heading / 12500.0); + // *(srm->requestor.position->heading) = (DSRC_Angle_t)(heading / 12500.0); + *(srm->requestor.position->heading) = (Common_Angle_t)(heading / 12500.0); srm->requestor.position->speed = (TransmissionAndSpeed *)calloc(1, sizeof(TransmissionAndSpeed)); if (srm->requestor.position->speed) diff --git a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp index 11238d78f..34c3010e3 100644 --- a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp +++ b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp @@ -22,9 +22,11 @@ using namespace tmx::utils; // #if SAEJ2735_SPEC < 63 // #else -typedef DSRC_MsgCount_t MsgCount_t; +// typedef DSRC_MsgCount_t MsgCount_t; +typedef Common_MsgCount_t MsgCount_t; typedef DSecond_t DSecond2_t; -typedef DSRC_TimeMark_t TimeMark_t; +// typedef DSRC_TimeMark_t TimeMark_t; +typedef SPAT_TimeMark_t TimeMark_t; // #endif void Ntcip1202::setSignalGroupMappingList(string json) diff --git a/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp b/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp index 1cbfbb0ab..deb308218 100644 --- a/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp +++ b/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp @@ -35,7 +35,8 @@ void DsrcBuilder::AddTimAdvisory(TiDataFrame *frame, unsigned int speedLimit) void DsrcBuilder::AddItisCode(ITIScodesAndText *advisory, long code) { ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - member->item.present = ITIScodesAndText__Memberitem_PR_itis; + // member->item.present = ITIScodesAndText__Memberitem_PR_itis; + member->item.present = ITIScodesAndText__Member__item_PR_itis; member->item.choice.itis = code; ASN_SEQUENCE_ADD(&advisory->list, member); } @@ -45,7 +46,8 @@ void DsrcBuilder::AddItisText(ITIScodesAndText *advisory, std::string text) int textLength = text.length(); ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - member->item.present = ITIScodesAndText__Memberitem_PR_text; + // member->item.present = ITIScodesAndText__Memberitem_PR_text; + member->item.present = ITIScodesAndText__Member__item_PR_text; member->item.choice.text.buf = NULL; OCTET_STRING_fromString(&(member->item.choice.text), text.c_str()); diff --git a/src/v2i-hub/TimPlugin/src/TimPlugin.cpp b/src/v2i-hub/TimPlugin/src/TimPlugin.cpp index 6aa2d8c8f..53eff1c74 100644 --- a/src/v2i-hub/TimPlugin/src/TimPlugin.cpp +++ b/src/v2i-hub/TimPlugin/src/TimPlugin.cpp @@ -164,7 +164,8 @@ bool TimPlugin::TimDuration(std::shared_ptr TimMsg) return false; } //Duration is unit of minute - auto duration = timPtr->dataFrames.list.array[0]->duratonTime; + // auto duration = timPtr->dataFrames.list.array[0]->duratonTime; + auto duration = timPtr->dataFrames.list.array[0]->durationTime; bool isPersist = false; if(duration >= 32000) { diff --git a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp index 1c870b628..46310ffa1 100644 --- a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp +++ b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp @@ -286,7 +286,8 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) DsrcBuilder::SetStartTimeToYesterday(frame); // Set the duration (minutes) to its max value. - frame->duratonTime = 32000; + // frame->duratonTime = 32000; + frame->durationTime = 32000; frame->startYear = NULL; frame->url = NULL; @@ -445,7 +446,8 @@ Position3D* XmlCurveParser::ReadReferencePoint(DOMElement* referencePointElement // anchor->elevation->buf[0] = elevation >> 8; // anchor->elevation->buf[1] = elevation & 0xFF; // #else - anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); + // anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); + anchor->elevation = (Common_Elevation_t *)malloc(sizeof(Common_Elevation_t)); *(anchor->elevation) = elevation; // #endif if (_debugOutput) From 29aff87cafe25439a0b7caa8ee1d6c0a612739b2 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Wed, 25 Oct 2023 15:57:21 -0400 Subject: [PATCH 05/18] modified: src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- .../j2735_messages/J2735MessageFactory.hpp | 8 +- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 630 +++++++++--------- 2 files changed, 320 insertions(+), 318 deletions(-) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp index b62862281..740c7d5de 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp @@ -43,7 +43,7 @@ #include #include #include -// #include +#include namespace tmx { namespace messages { @@ -79,8 +79,8 @@ using message_types = message_type_list< tsm0Message, tsm1Message, tsm2Message, - tsm3Message - // SdsmMessage + tsm3Message, + SdsmMessage >; /// Base allocator type @@ -205,7 +205,7 @@ class J2735MessageFactory add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); - // add_allocator_to_maps(); + add_allocator_to_maps(); // #if SAEJ2735_SPEC < 63 // add_allocator_to_maps(); // #endif diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 4689dc548..bc5bd555e 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -204,212 +204,212 @@ vector J2735MessageTest::enumNames(api::J2735_end); vector J2735MessageTest::msgTypes(api::J2735_end); vector J2735MessageTest::testBytes(api::J2735_end); -// TEST_F(J2735MessageTest, EncodeMobilityOperation) -// { -// TestMessage03_t* message = (TestMessage03_t*) malloc( sizeof(TestMessage03_t) ); +TEST_F(J2735MessageTest, EncodeMobilityOperation) +{ + TestMessage03_t* message = (TestMessage03_t*) malloc( sizeof(TestMessage03_t) ); -// /** -// * Populate MobilityHeader -// */ + /** + * Populate MobilityHeader + */ -// char* my_str = (char *) "sender_id"; -// uint8_t * my_bytes = reinterpret_cast(my_str); -// message->header.hostStaticId.buf = my_bytes; -// message->header.hostStaticId.size = strlen(my_str); -// message->header.targetStaticId.buf = my_bytes; -// message->header.targetStaticId.size = strlen(my_str); - -// my_str = (char *) "bsm_idXX"; -// my_bytes = reinterpret_cast(my_str); -// message->header.hostBSMId.buf = my_bytes; -// message->header.hostBSMId.size = strlen(my_str); - -// my_str = (char *) "00000000-0000-0000-0000-000000000000"; -// my_bytes = reinterpret_cast(my_str); -// message->header.planId.buf = my_bytes; -// message->header.planId.size = strlen(my_str); - -// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); -// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); -// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; -// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; -// strcpy(my_str_1, timestamp_str.c_str()); -// for(int i = 0; i< strlen(my_str_1); i++) -// { -// my_bytes_1[i] = (uint8_t)my_str_1[i]; -// } -// message->header.timestamp.buf = my_bytes_1; -// message->header.timestamp.size = strlen(my_str_1); - -// /** -// * Populate MobilityOperation Body -// */ -// my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; -// my_bytes = reinterpret_cast(my_str); -// message->body.operationParams.buf = my_bytes; -// message->body.operationParams.size = strlen(my_str); - -// my_str = (char *) "carma3/Geofence_Acknowledgement"; -// my_bytes = reinterpret_cast(my_str); -// message->body.strategy.buf = my_bytes; -// message->body.strategy.size = strlen(my_str); - -// tmx::messages::tsm3EncodedMessage tsm3EncodeMessage; -// tmx::messages::tsm3Message* _tsm3Message = new tmx::messages::tsm3Message(message); -// tmx::messages::MessageFrameMessage frame_msg(_tsm3Message->get_j2735_data()); -// tsm3EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); + char* my_str = (char *) "sender_id"; + uint8_t * my_bytes = reinterpret_cast(my_str); + message->header.hostStaticId.buf = my_bytes; + message->header.hostStaticId.size = strlen(my_str); + message->header.targetStaticId.buf = my_bytes; + message->header.targetStaticId.size = strlen(my_str); + + my_str = (char *) "bsm_idXX"; + my_bytes = reinterpret_cast(my_str); + message->header.hostBSMId.buf = my_bytes; + message->header.hostBSMId.size = strlen(my_str); + + my_str = (char *) "00000000-0000-0000-0000-000000000000"; + my_bytes = reinterpret_cast(my_str); + message->header.planId.buf = my_bytes; + message->header.planId.size = strlen(my_str); + + unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); + std::string timestamp_str = std::to_string(timestamp_ll).c_str(); + char * my_str_1 = new char[strlen(timestamp_str.c_str())]; + uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; + strcpy(my_str_1, timestamp_str.c_str()); + for(int i = 0; i< strlen(my_str_1); i++) + { + my_bytes_1[i] = (uint8_t)my_str_1[i]; + } + message->header.timestamp.buf = my_bytes_1; + message->header.timestamp.size = strlen(my_str_1); + + /** + * Populate MobilityOperation Body + */ + my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; + my_bytes = reinterpret_cast(my_str); + message->body.operationParams.buf = my_bytes; + message->body.operationParams.size = strlen(my_str); + + my_str = (char *) "carma3/Geofence_Acknowledgement"; + my_bytes = reinterpret_cast(my_str); + message->body.strategy.buf = my_bytes; + message->body.strategy.size = strlen(my_str); + + tmx::messages::tsm3EncodedMessage tsm3EncodeMessage; + tmx::messages::tsm3Message* _tsm3Message = new tmx::messages::tsm3Message(message); + tmx::messages::MessageFrameMessage frame_msg(_tsm3Message->get_j2735_data()); + tsm3EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); -// free(message); -// delete my_bytes_1; -// delete my_str_1; -// free(frame_msg.get_j2735_data().get()); -// ASSERT_EQ(243, tsm3EncodeMessage.get_msgId()); -// } + free(message); + delete my_bytes_1; + delete my_str_1; + free(frame_msg.get_j2735_data().get()); + ASSERT_EQ(243, tsm3EncodeMessage.get_msgId()); +} -// TEST_F(J2735MessageTest, EncodeMobilityRequest) -// { -// TestMessage00_t* message = (TestMessage00_t*) calloc(1, sizeof(TestMessage00_t) ); +TEST_F(J2735MessageTest, EncodeMobilityRequest) +{ + TestMessage00_t* message = (TestMessage00_t*) calloc(1, sizeof(TestMessage00_t) ); -// /** -// * Populate MobilityHeader -// */ + /** + * Populate MobilityHeader + */ -// char* my_str = (char *) "sender_id"; -// uint8_t* my_bytes = reinterpret_cast(my_str); -// message->header.hostStaticId.buf = my_bytes; -// message->header.hostStaticId.size = strlen(my_str); -// message->header.targetStaticId.buf = my_bytes; -// message->header.targetStaticId.size = strlen(my_str); - -// my_str = (char *) "bsm_idXX"; -// my_bytes = reinterpret_cast(my_str); -// message->header.hostBSMId.buf = my_bytes; -// message->header.hostBSMId.size = strlen(my_str); - -// my_str = (char *) "00000000-0000-0000-0000-000000000000"; -// my_bytes = reinterpret_cast(my_str); -// message->header.planId.buf = my_bytes; -// message->header.planId.size = strlen(my_str); - -// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); -// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); -// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; -// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; -// strcpy(my_str_1, timestamp_str.c_str()); -// for(int i = 0; i< strlen(my_str_1); i++) -// { -// my_bytes_1[i] = (uint8_t)my_str_1[i]; -// } -// message->header.timestamp.buf = my_bytes_1; -// message->header.timestamp.size = strlen(my_str_1); - -// /** -// * Populate MobilityRequest Body -// */ -// my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; -// my_bytes = reinterpret_cast(my_str); -// message->body.strategyParams.buf = my_bytes; -// message->body.strategyParams.size = strlen(my_str); - -// my_str = (char *) "carma3/Geofence_Acknowledgement"; -// my_bytes = reinterpret_cast(my_str); -// message->body.strategy.buf = my_bytes; -// message->body.strategy.size = strlen(my_str); - -// message->body.urgency = 1; -// message->body.planType = 0; -// message->body.location.ecefX = 1; -// message->body.location.ecefY = 1; -// message->body.location.ecefZ = 1; -// message->body.location.timestamp.buf = my_bytes_1; -// message->body.location.timestamp.size = strlen(my_str_1); + char* my_str = (char *) "sender_id"; + uint8_t* my_bytes = reinterpret_cast(my_str); + message->header.hostStaticId.buf = my_bytes; + message->header.hostStaticId.size = strlen(my_str); + message->header.targetStaticId.buf = my_bytes; + message->header.targetStaticId.size = strlen(my_str); + + my_str = (char *) "bsm_idXX"; + my_bytes = reinterpret_cast(my_str); + message->header.hostBSMId.buf = my_bytes; + message->header.hostBSMId.size = strlen(my_str); + + my_str = (char *) "00000000-0000-0000-0000-000000000000"; + my_bytes = reinterpret_cast(my_str); + message->header.planId.buf = my_bytes; + message->header.planId.size = strlen(my_str); + + unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); + std::string timestamp_str = std::to_string(timestamp_ll).c_str(); + char * my_str_1 = new char[strlen(timestamp_str.c_str())]; + uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; + strcpy(my_str_1, timestamp_str.c_str()); + for(int i = 0; i< strlen(my_str_1); i++) + { + my_bytes_1[i] = (uint8_t)my_str_1[i]; + } + message->header.timestamp.buf = my_bytes_1; + message->header.timestamp.size = strlen(my_str_1); + + /** + * Populate MobilityRequest Body + */ + my_str = (char *) "traffic_control_id: traffic_control_id, acknowledgement: true, reason: optional reason text"; + my_bytes = reinterpret_cast(my_str); + message->body.strategyParams.buf = my_bytes; + message->body.strategyParams.size = strlen(my_str); + + my_str = (char *) "carma3/Geofence_Acknowledgement"; + my_bytes = reinterpret_cast(my_str); + message->body.strategy.buf = my_bytes; + message->body.strategy.size = strlen(my_str); + + message->body.urgency = 1; + message->body.planType = 0; + message->body.location.ecefX = 1; + message->body.location.ecefY = 1; + message->body.location.ecefZ = 1; + message->body.location.timestamp.buf = my_bytes_1; + message->body.location.timestamp.size = strlen(my_str_1); -// message->body.expiration.buf = my_bytes_1; -// message->body.expiration.size = strlen(my_str_1); + message->body.expiration.buf = my_bytes_1; + message->body.expiration.size = strlen(my_str_1); -// MobilityECEFOffset_t* offset = (MobilityECEFOffset_t*)calloc(1, sizeof(MobilityECEFOffset_t) ); -// offset->offsetX = 1; -// offset->offsetY = 1; -// offset->offsetZ = 1; -// ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); -// ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); - -// message->body.trajectoryStart.ecefX = 1; -// message->body.trajectoryStart.ecefY = 1; -// message->body.trajectoryStart.ecefZ = 1; -// message->body.trajectoryStart.timestamp.buf = my_bytes_1; -// message->body.trajectoryStart.timestamp.size = strlen(my_str_1); + MobilityECEFOffset_t* offset = (MobilityECEFOffset_t*)calloc(1, sizeof(MobilityECEFOffset_t) ); + offset->offsetX = 1; + offset->offsetY = 1; + offset->offsetZ = 1; + ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); + ASN_SEQUENCE_ADD(&message->body.trajectory.list.array, offset); + + message->body.trajectoryStart.ecefX = 1; + message->body.trajectoryStart.ecefY = 1; + message->body.trajectoryStart.ecefZ = 1; + message->body.trajectoryStart.timestamp.buf = my_bytes_1; + message->body.trajectoryStart.timestamp.size = strlen(my_str_1); -// tmx::messages::tsm0EncodedMessage tsm0EncodeMessage; -// tmx::messages::tsm0Message* _tsm0Message = new tmx::messages::tsm0Message(message); -// tmx::messages::MessageFrameMessage frame_msg(_tsm0Message->get_j2735_data()); -// tsm0EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); + tmx::messages::tsm0EncodedMessage tsm0EncodeMessage; + tmx::messages::tsm0Message* _tsm0Message = new tmx::messages::tsm0Message(message); + tmx::messages::MessageFrameMessage frame_msg(_tsm0Message->get_j2735_data()); + tsm0EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); -// free(message); -// delete my_bytes_1; -// delete my_str_1; -// free(offset); -// free(frame_msg.get_j2735_data().get()); -// ASSERT_EQ(240, tsm0EncodeMessage.get_msgId()); -// } - - -// TEST_F(J2735MessageTest, EncodeMobilityResponse) -// { -// TestMessage01_t* message = (TestMessage01_t*) malloc( sizeof(TestMessage01_t) ); - -// /** -// * Populate MobilityHeader -// */ + free(message); + delete my_bytes_1; + delete my_str_1; + free(offset); + free(frame_msg.get_j2735_data().get()); + ASSERT_EQ(240, tsm0EncodeMessage.get_msgId()); +} + + +TEST_F(J2735MessageTest, EncodeMobilityResponse) +{ + TestMessage01_t* message = (TestMessage01_t*) malloc( sizeof(TestMessage01_t) ); + + /** + * Populate MobilityHeader + */ -// char* my_str = (char *) "sender_id"; -// uint8_t* my_bytes = reinterpret_cast(my_str); -// message->header.hostStaticId.buf = my_bytes; -// message->header.hostStaticId.size = strlen(my_str); -// message->header.targetStaticId.buf = my_bytes; -// message->header.targetStaticId.size = strlen(my_str); - -// my_str = (char *) "bsm_idXX"; -// my_bytes = reinterpret_cast(my_str); -// message->header.hostBSMId.buf = my_bytes; -// message->header.hostBSMId.size = strlen(my_str); - -// my_str = (char *) "00000000-0000-0000-0000-000000000000"; -// my_bytes = reinterpret_cast(my_str); -// message->header.planId.buf = my_bytes; -// message->header.planId.size = strlen(my_str); - -// unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); -// std::string timestamp_str = std::to_string(timestamp_ll).c_str(); -// char * my_str_1 = new char[strlen(timestamp_str.c_str())]; -// uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; -// strcpy(my_str_1, timestamp_str.c_str()); -// for(int i = 0; i< strlen(my_str_1); i++) -// { -// my_bytes_1[i] = (uint8_t)my_str_1[i]; -// } -// message->header.timestamp.buf = my_bytes_1; -// message->header.timestamp.size = strlen(my_str_1); - -// /** -// * Populate MobilityResponse Body -// */ -// message->body.isAccepted = 1; -// message->body.urgency = 1; - -// tmx::messages::tsm1EncodedMessage tsm1EncodeMessage; -// tmx::messages::tsm1Message* _tsm1Message = new tmx::messages::tsm1Message(message); -// tmx::messages::MessageFrameMessage frame_msg(_tsm1Message->get_j2735_data()); -// tsm1EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); + char* my_str = (char *) "sender_id"; + uint8_t* my_bytes = reinterpret_cast(my_str); + message->header.hostStaticId.buf = my_bytes; + message->header.hostStaticId.size = strlen(my_str); + message->header.targetStaticId.buf = my_bytes; + message->header.targetStaticId.size = strlen(my_str); + + my_str = (char *) "bsm_idXX"; + my_bytes = reinterpret_cast(my_str); + message->header.hostBSMId.buf = my_bytes; + message->header.hostBSMId.size = strlen(my_str); + + my_str = (char *) "00000000-0000-0000-0000-000000000000"; + my_bytes = reinterpret_cast(my_str); + message->header.planId.buf = my_bytes; + message->header.planId.size = strlen(my_str); + + unsigned long timestamp_ll = std::chrono::duration_cast( std::chrono::system_clock::now().time_since_epoch()).count(); + std::string timestamp_str = std::to_string(timestamp_ll).c_str(); + char * my_str_1 = new char[strlen(timestamp_str.c_str())]; + uint8_t * my_bytes_1 = new uint8_t[strlen(timestamp_str.c_str())]; + strcpy(my_str_1, timestamp_str.c_str()); + for(int i = 0; i< strlen(my_str_1); i++) + { + my_bytes_1[i] = (uint8_t)my_str_1[i]; + } + message->header.timestamp.buf = my_bytes_1; + message->header.timestamp.size = strlen(my_str_1); + + /** + * Populate MobilityResponse Body + */ + message->body.isAccepted = 1; + message->body.urgency = 1; + + tmx::messages::tsm1EncodedMessage tsm1EncodeMessage; + tmx::messages::tsm1Message* _tsm1Message = new tmx::messages::tsm1Message(message); + tmx::messages::MessageFrameMessage frame_msg(_tsm1Message->get_j2735_data()); + tsm1EncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); -// free(message); -// delete my_bytes_1; -// delete my_str_1; -// free(frame_msg.get_j2735_data().get()); -// ASSERT_EQ(241, tsm1EncodeMessage.get_msgId()); -// } + free(message); + delete my_bytes_1; + delete my_str_1; + free(frame_msg.get_j2735_data().get()); + ASSERT_EQ(241, tsm1EncodeMessage.get_msgId()); +} TEST_F(J2735MessageTest, EncodeBasicSafetyMessage) @@ -542,26 +542,26 @@ 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)); - // 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_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_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); - // carma_bsm_data->routeDestinationPoints = carma_bsm_destination_points; - // reg_bsm->regExtValue.choice.BasicSafetyMessage_addGrpCarma = *carma_bsm_data; - - // asn_sequence_add(®ional->list.array, reg_bsm); - // message->regional = regional; + 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_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_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); + carma_bsm_data->routeDestinationPoints = carma_bsm_destination_points; + reg_bsm->regExtValue.choice.BasicSafetyMessage_addGrpCarma = *carma_bsm_data; + + asn_sequence_add(®ional->list.array, reg_bsm); + message->regional = regional; //Encode BSM tmx::messages::BsmEncodedMessage bsmEncodeMessage; @@ -578,15 +578,15 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) auto decoded_bsm_ptr = bsmEncodeMessage.decode_j2735_message().get_j2735_data(); ASSERT_EQ(LightbarInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->lightsUse); ASSERT_EQ(SirenInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->sirenUse); - // auto decoded_regional = (BasicSafetyMessage::BasicSafetyMessage__regional *)calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); - // auto decoded_reg_bsm = (Reg_BasicSafetyMessage *)calloc(1, sizeof(Reg_BasicSafetyMessage)); - // auto decode_carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t *)calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); - // decoded_regional = decoded_bsm_ptr->regional; - // decoded_reg_bsm = decoded_regional->list.array[0]; - // ASSERT_EQ(dummy_lat, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->lat); - // ASSERT_EQ(dummy_long, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->Long); - // ASSERT_EQ(dummy_lat + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->lat); - // ASSERT_EQ(dummy_long + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->Long); + auto decoded_regional = (BasicSafetyMessage::BasicSafetyMessage__regional *)calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); + auto decoded_reg_bsm = (Reg_BasicSafetyMessage *)calloc(1, sizeof(Reg_BasicSafetyMessage)); + auto decode_carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t *)calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); + decoded_regional = decoded_bsm_ptr->regional; + decoded_reg_bsm = decoded_regional->list.array[0]; + ASSERT_EQ(dummy_lat, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->lat); + ASSERT_EQ(dummy_long, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[0]->Long); + ASSERT_EQ(dummy_lat + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->lat); + ASSERT_EQ(dummy_long + 1000, decoded_bsm_ptr->regional->list.array[0]->regExtValue.choice.BasicSafetyMessage_addGrpCarma.routeDestinationPoints->list.array[1]->Long); } @@ -600,44 +600,45 @@ TEST_F(J2735MessageTest, EncodePersonalSafetyMessage){ container.load(ss); psmmessage.set_contents(container.get_storage().get_tree()); psmENC.encode_j2735_message(psmmessage); +} -// TEST_F(J2735MessageTest, EncodeTrafficControlRequest){ -// string tsm4str="C7C9A13FE6AC464E0027493419-8183494722811186773760376132001320 "; -// std::stringstream ss; -// tsm4Message tsm4msg; -// tsm4EncodedMessage tsm4Enc; -// tmx::message_container_type container; -// ss<(ss); -// tsm4msg.set_contents(container.get_storage().get_tree()); -// tsm4Enc.encode_j2735_message(tsm4msg); -// std::cout << tsm4Enc.get_payload_str()< 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 "; -// std::stringstream ss; -// tsm5Message tsm5msg; -// tsm5EncodedMessage tsm5Enc; -// tmx::message_container_type container; -// ss<(ss); -// tsm5msg.set_contents(container.get_storage().get_tree()); -// tsm5Enc.encode_j2735_message(tsm5msg); -// std::cout << tsm5Enc.get_payload_str()< tag in TCM -// tsm5str="D0E0C6E650394C06011002740591d261d2e99e477df0a82db260002740591d261d2e99e477df0a82db26277773121537228672809121111111epsg:3785WGS8427777312-77148351938954910903312100-1498-262-1497457-14979111-370342"; -// ss<(ss); -// tsm5msg.set_contents(container.get_storage().get_tree()); -// tsm5Enc.encode_j2735_message(tsm5msg); -// std::cout << tsm5Enc.get_payload_str()<(ss); + tsm4msg.set_contents(container.get_storage().get_tree()); + tsm4Enc.encode_j2735_message(tsm4msg); + std::cout << tsm4Enc.get_payload_str()< 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 "; + std::stringstream ss; + tsm5Message tsm5msg; + tsm5EncodedMessage tsm5Enc; + tmx::message_container_type container; + ss<(ss); + tsm5msg.set_contents(container.get_storage().get_tree()); + tsm5Enc.encode_j2735_message(tsm5msg); + std::cout << tsm5Enc.get_payload_str()< tag in TCM + tsm5str="D0E0C6E650394C06011002740591d261d2e99e477df0a82db260002740591d261d2e99e477df0a82db26277773121537228672809121111111epsg:3785WGS8427777312-77148351938954910903312100-1498-262-1497457-14979111-370342"; + ss<(ss); + tsm5msg.set_contents(container.get_storage().get_tree()); + tsm5Enc.encode_j2735_message(tsm5msg); + std::cout << tsm5Enc.get_payload_str()<msgCnt = 10; -// uint8_t my_bytes_id[4] = {(uint8_t)1, (uint8_t)12, (uint8_t)12, (uint8_t)10}; -// message->sourceID.buf = my_bytes_id; -// message->sourceID.size = sizeof(my_bytes_id); -// message->equipmentType = EquipmentType_unknown; +TEST_F(J2735MessageTest, EncodeSDSM) +{ + auto message = (SensorDataSharingMessage_t*)calloc(1, sizeof(SensorDataSharingMessage_t)); + message->msgCnt = 10; + uint8_t my_bytes_id[4] = {(uint8_t)1, (uint8_t)12, (uint8_t)12, (uint8_t)10}; + message->sourceID.buf = my_bytes_id; + message->sourceID.size = sizeof(my_bytes_id); + message->equipmentType = EquipmentType_unknown; -// auto sDSMTimeStamp = (DDateTime_t*) calloc(1, sizeof(DDateTime_t)); -// auto year = (DYear_t*) calloc(1, sizeof(DYear_t)); -// *year= 2023; -// sDSMTimeStamp->year = year; -// message->sDSMTimeStamp = *sDSMTimeStamp; - -// message->refPos.lat = 38.121212; -// message->refPos.Long = -77.121212; - -// message->refPosXYConf.orientation = 10; -// message->refPosXYConf.semiMajor = 12; -// message->refPosXYConf.semiMinor = 52; - -// auto objects = (DetectedObjectList_t*) calloc(1, sizeof(DetectedObjectList_t)); -// auto objectData = (DetectedObjectData_t*) calloc(1, sizeof(DetectedObjectData_t)); -// objectData->detObjCommon.objType = ObjectType_unknown; -// objectData->detObjCommon.objTypeCfd = 1; -// objectData->detObjCommon.measurementTime = 1; -// objectData->detObjCommon.timeConfidence = 1; -// objectData->detObjCommon.pos.offsetX = 1; -// objectData->detObjCommon.pos.offsetY = 1; -// objectData->detObjCommon.posConfidence.elevation = 1; -// objectData->detObjCommon.posConfidence.pos = 1; -// objectData->detObjCommon.speed = 1; -// objectData->detObjCommon.speedConfidence = 1; -// objectData->detObjCommon.heading = 1; -// objectData->detObjCommon.headingConf = 1; -// ASN_SEQUENCE_ADD(&objects->list.array, objectData); -// message->objects = *objects; -// xer_fprint(stdout, &asn_DEF_SensorDataSharingMessage, message); - -// //Encode SDSM -// tmx::messages::SdsmEncodedMessage SdsmEncodeMessage; -// auto _sdsmMessage = new tmx::messages::SdsmMessage(message); -// tmx::messages::MessageFrameMessage frame_msg(_sdsmMessage->get_j2735_data()); -// SdsmEncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); -// free(message); -// free(frame_msg.get_j2735_data().get()); -// ASSERT_EQ(41, SdsmEncodeMessage.get_msgId()); -// std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c35a4e9266b49d1b20c34000a00000020000bba0a000200004400240009"; -// ASSERT_EQ(expectedSDSMEncHex, SdsmEncodeMessage.get_payload_str()); - -// //Decode SDSM -// auto sdsm_ptr = SdsmEncodeMessage.decode_j2735_message().get_j2735_data(); -// ASSERT_EQ(10, sdsm_ptr->msgCnt); -// } + auto sDSMTimeStamp = (DDateTime_t*) calloc(1, sizeof(DDateTime_t)); + auto year = (DYear_t*) calloc(1, sizeof(DYear_t)); + *year= 2023; + sDSMTimeStamp->year = year; + message->sDSMTimeStamp = *sDSMTimeStamp; + + message->refPos.lat = 38.121212; + message->refPos.Long = -77.121212; + + message->refPosXYConf.orientation = 10; + message->refPosXYConf.semiMajor = 12; + message->refPosXYConf.semiMinor = 52; + + auto objects = (DetectedObjectList_t*) calloc(1, sizeof(DetectedObjectList_t)); + auto objectData = (DetectedObjectData_t*) calloc(1, sizeof(DetectedObjectData_t)); + objectData->detObjCommon.objType = ObjectType_unknown; + objectData->detObjCommon.objTypeCfd = 1; + objectData->detObjCommon.measurementTime = 1; + objectData->detObjCommon.timeConfidence = 1; + objectData->detObjCommon.pos.offsetX = 1; + objectData->detObjCommon.pos.offsetY = 1; + objectData->detObjCommon.posConfidence.elevation = 1; + objectData->detObjCommon.posConfidence.pos = 1; + objectData->detObjCommon.speed = 1; + objectData->detObjCommon.speedConfidence = 1; + objectData->detObjCommon.heading = 1; + objectData->detObjCommon.headingConf = 1; + ASN_SEQUENCE_ADD(&objects->list.array, objectData); + message->objects = *objects; + xer_fprint(stdout, &asn_DEF_SensorDataSharingMessage, message); + + //Encode SDSM + tmx::messages::SdsmEncodedMessage SdsmEncodeMessage; + auto _sdsmMessage = new tmx::messages::SdsmMessage(message); + tmx::messages::MessageFrameMessage frame_msg(_sdsmMessage->get_j2735_data()); + SdsmEncodeMessage.set_data(TmxJ2735EncodedMessage::encode_j2735_message>(frame_msg)); + free(message); + free(frame_msg.get_j2735_data().get()); + ASSERT_EQ(41, SdsmEncodeMessage.get_msgId()); + std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c35a4e9266b49d1b20c34000a00000020000bba0a000200004400240009"; + ASSERT_EQ(expectedSDSMEncHex, SdsmEncodeMessage.get_payload_str()); + + //Decode SDSM + auto sdsm_ptr = SdsmEncodeMessage.decode_j2735_message().get_j2735_data(); + ASSERT_EQ(10, sdsm_ptr->msgCnt); +} } From bb0f166a9242917c1694e9c4483f31ac6f829cb7 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Wed, 25 Oct 2023 16:29:02 -0400 Subject: [PATCH 06/18] modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index bc5bd555e..1551eabf6 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -736,7 +736,7 @@ TEST_F (J2735MessageTest, EncodeSrm) TEST_F(J2735MessageTest, EncodeTravelerInformation){ //Advisory // string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; - string timStr="100000000000F9E1D8D0389549153-771488965400000000000000000020233945743200050389549153-7714889654003660000000000000000-771489394389549194-10-77148721538954899610-771485210389548981100027CurveAhead2564258720"; + string timStr="100000000000F9E1D8D0389549153-771488965400000000000000000020233945743200050389549153-7714889654003660000000000000000-771489394389549194-10-77148721538954899610-771485210389548981100027Curve Ahead2564258720"; std::stringstream ss; TimMessage timMsg; TimEncodedMessage timEnc; From 31dac54979274d810b2e685b200b1724ef8334eb Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Thu, 26 Oct 2023 16:36:13 -0400 Subject: [PATCH 07/18] modified: src/tmx/Asn_J2735/src/r2020/RegionalExtension.c --- .../Asn_J2735/src/r2020/RegionalExtension.c | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c index 5a1f264dc..bdf35eda2 100644 --- a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c +++ b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c @@ -7,6 +7,14 @@ #include "RegionalExtension.h" +static const long asn_VAL_10_DSRC_addGrpCarma = 128; +static const asn_ioc_cell_t asn_IOS_Reg_BasicSafetyMessage_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_10_DSRC_addGrpCarma }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage_addGrpCarma } +}; +static const asn_ioc_set_t asn_IOS_Reg_BasicSafetyMessage_1[] = { + { 1, 2, asn_IOS_Reg_BasicSafetyMessage_1_rows } +}; static const long asn_VAL_3_addGrpB = 2; static const asn_ioc_cell_t asn_IOS_Reg_LaneDataAttribute_1_rows[] = { { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_3_addGrpB }, @@ -275,6 +283,33 @@ memb_regionId_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, } } +static asn_type_selector_result_t +select_Reg_BasicSafetyMessage_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_BasicSafetyMessage_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_BasicSafetyMessage, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + static asn_type_selector_result_t select_Reg_LaneDataAttribute_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; @@ -2998,6 +3033,28 @@ static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { 0, 0 /* No PER value map */ }; #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regExtValue_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage__regExtValue, choice.BasicSafetyMessage_addGrpCarma), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BasicSafetyMessage_addGrpCarma, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "BasicSafetyMessage-addGrpCarma" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* BasicSafetyMessage-addGrpCarma */ +}; #if !defined(ASN_DISABLE_OER_SUPPORT) static asn_oer_constraints_t asn_OER_memb_regionId_constr_5 CC_NOTUSED = { { 1, 1 } /* (0..255) */, From 41e8f667b02439338ed2e5bca8e575fa27a691be Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Fri, 27 Oct 2023 13:30:59 -0400 Subject: [PATCH 08/18] added new files and modified src/tmx/Asn_J2735/ --- .../include/asn_j2735_r2020/AddGrpB_Angle.h | 4 +- .../asn_j2735_r2020/AddGrpB_DayOfWeek.h | 59 ++++ .../asn_j2735_r2020/AddGrpB_Elevation.h | 4 +- .../asn_j2735_r2020/AddGrpB_MsgCount.h | 4 +- .../asn_j2735_r2020/AddGrpB_TimeMark.h | 8 +- .../include/asn_j2735_r2020/BMPString.h | 37 ++ .../include/asn_j2735_r2020/ISO646String.h | 35 ++ .../include/asn_j2735_r2020/MobilityNeeds.h | 42 --- .../asn_j2735_r2020/MobilityNeedsList.h | 47 --- .../asn_j2735_r2020/MobilityNeedsType.h | 50 --- .../include/asn_j2735_r2020/Schedule.h | 65 ++++ .../include/asn_j2735_r2020/UTCTime.h | 47 +++ .../include/asn_j2735_r2020/UTF8String.h | 60 ++++ .../include/asn_j2735_r2020/UniversalString.h | 35 ++ .../Asn_J2735/include/asn_j2735_r2020/VType.h | 69 ++++ .../include/asn_j2735_r2020/VisibleString.h | 36 ++ .../include/asn_j2735_r2020/constr_SET.h | 86 +++++ .../include/asn_j2735_r2020/version.h | 14 + src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c | 20 +- .../Asn_J2735/src/r2020/AddGrpB_DayOfWeek.c | 68 ++++ .../Asn_J2735/src/r2020/AddGrpB_Elevation.c | 20 +- .../Asn_J2735/src/r2020/AddGrpB_MsgCount.c | 20 +- .../Asn_J2735/src/r2020/AddGrpB_TimeMark.c | 116 +------ src/tmx/Asn_J2735/src/r2020/Schedule.c | 328 ++++++++++++++++++ src/tmx/Asn_J2735/src/r2020/VType.c | 88 +++++ 25 files changed, 1063 insertions(+), 299 deletions(-) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/BMPString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ISO646String.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h delete mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/Schedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UTCTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UTF8String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UniversalString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VisibleString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/version.h create mode 100644 src/tmx/Asn_J2735/src/r2020/AddGrpB_DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r2020/Schedule.c create mode 100644 src/tmx/Asn_J2735/src/r2020/VType.c diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h index c68835e06..f4e463591 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Angle.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #ifndef _AddGrpB_Angle_H_ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_DayOfWeek.h new file mode 100644 index 000000000..e60b82fee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_DayOfWeek.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_DayOfWeek_H_ +#define _AddGrpB_DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AddGrpB_DayOfWeek { + AddGrpB_DayOfWeek_unknown = 0, + AddGrpB_DayOfWeek_monday = 1, + AddGrpB_DayOfWeek_tuesday = 2, + AddGrpB_DayOfWeek_wednesday = 3, + AddGrpB_DayOfWeek_thursday = 4, + AddGrpB_DayOfWeek_friday = 5, + AddGrpB_DayOfWeek_saturday = 6, + AddGrpB_DayOfWeek_sunday = 7 +} e_AddGrpB_DayOfWeek; + +/* AddGrpB_DayOfWeek */ +typedef long AddGrpB_DayOfWeek_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek; +extern const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1; +asn_struct_free_f AddGrpB_DayOfWeek_free; +asn_struct_print_f AddGrpB_DayOfWeek_print; +asn_constr_check_f AddGrpB_DayOfWeek_constraint; +ber_type_decoder_f AddGrpB_DayOfWeek_decode_ber; +der_type_encoder_f AddGrpB_DayOfWeek_encode_der; +xer_type_decoder_f AddGrpB_DayOfWeek_decode_xer; +xer_type_encoder_f AddGrpB_DayOfWeek_encode_xer; +oer_type_decoder_f AddGrpB_DayOfWeek_decode_oer; +oer_type_encoder_f AddGrpB_DayOfWeek_encode_oer; +per_type_decoder_f AddGrpB_DayOfWeek_decode_uper; +per_type_encoder_f AddGrpB_DayOfWeek_encode_uper; +per_type_decoder_f AddGrpB_DayOfWeek_decode_aper; +per_type_encoder_f AddGrpB_DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h index 1b9e01e4a..4ade1c06a 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_Elevation.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #ifndef _AddGrpB_Elevation_H_ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h index c33b88609..64f57e889 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_MsgCount.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #ifndef _AddGrpB_MsgCount_H_ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h index 7a112d7d8..e58042735 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/AddGrpB_TimeMark.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #ifndef _AddGrpB_TimeMark_H_ @@ -17,7 +17,7 @@ #include "Day.h" #include "SummerTime.h" #include "Holiday.h" -#include "DayOfWeek.h" +#include "AddGrpB_DayOfWeek.h" #include "Hour.h" #include "Minute.h" #include "Second.h" @@ -35,7 +35,7 @@ typedef struct AddGrpB_TimeMark { Day_t day; SummerTime_t summerTime; Holiday_t holiday; - DayOfWeek_t dayofWeek; + AddGrpB_DayOfWeek_t dayofWeek; Hour_t hour; Minute_t minute; Second_t second; diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BMPString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BMPString.h new file mode 100644 index 000000000..198b9e5e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BMPString.h @@ -0,0 +1,37 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BMPString_H_ +#define _BMPString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t BMPString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_BMPString; +extern asn_TYPE_operation_t asn_OP_BMPString; +extern asn_OCTET_STRING_specifics_t asn_SPC_BMPString_specs; + +asn_struct_print_f BMPString_print; /* Human-readable output */ +xer_type_decoder_f BMPString_decode_xer; +xer_type_encoder_f BMPString_encode_xer; + +#define BMPString_free OCTET_STRING_free +#define BMPString_print BMPString_print +#define BMPString_compare OCTET_STRING_compare +#define BMPString_constraint asn_generic_no_constraint +#define BMPString_decode_ber OCTET_STRING_decode_ber +#define BMPString_encode_der OCTET_STRING_encode_der +#define BMPString_decode_uper OCTET_STRING_decode_uper +#define BMPString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _BMPString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ISO646String.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ISO646String.h new file mode 100644 index 000000000..494831541 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ISO646String.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ISO646String_H_ +#define _ISO646String_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef VisibleString_t ISO646String_t; /* Implemented using VisibleString */ + +extern asn_TYPE_descriptor_t asn_DEF_ISO646String; +extern asn_TYPE_operation_t asn_OP_ISO646String; + +#define ISO646String_free OCTET_STRING_free +#define ISO646String_print OCTET_STRING_print_utf8 +#define ISO646String_compare OCTET_STRING_compare +#define ISO646String_constraint VisibleString_constraint +#define ISO646String_decode_ber OCTET_STRING_decode_ber +#define ISO646String_encode_der OCTET_STRING_encode_der +#define ISO646String_decode_xer OCTET_STRING_decode_xer_utf8 +#define ISO646String_encode_xer OCTET_STRING_encode_xer_utf8 +#define ISO646String_decode_uper OCTET_STRING_decode_uper +#define ISO646String_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _ISO646String_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 deleted file mode 100644 index 4eceaa686..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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 deleted file mode 100644 index 05421eb09..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * 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 deleted file mode 100644 index 9da4492ee..000000000 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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/Schedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Schedule.h new file mode 100644 index 000000000..e05936375 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Schedule.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Schedule_H_ +#define _Schedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "INTEGER.h" +#include "BOOLEAN.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RepeatParams; +struct DaySchedule; + +/* Schedule */ +typedef struct Schedule { + INTEGER_t start; + INTEGER_t end; + struct Schedule__dow { + A_SEQUENCE_OF(BOOLEAN_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } dow; + struct Schedule__between { + A_SEQUENCE_OF(struct DaySchedule) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *between; + struct RepeatParams *repeat; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Schedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Schedule; +extern asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1; +extern asn_TYPE_member_t asn_MBR_Schedule_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RepeatParams.h" +#include "DaySchedule.h" + +#endif /* _Schedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTCTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTCTime.h new file mode 100644 index 000000000..553702013 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTCTime.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UTCTime_H_ +#define _UTCTime_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UTCTime_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UTCTime; +extern asn_TYPE_operation_t asn_OP_UTCTime; + +asn_struct_print_f UTCTime_print; +asn_constr_check_f UTCTime_constraint; +xer_type_encoder_f UTCTime_encode_xer; + +#define UTCTime_free OCTET_STRING_free +#define UTCTime_compare OCTET_STRING_compare +#define UTCTime_decode_ber OCTET_STRING_decode_ber +#define UTCTime_encode_der OCTET_STRING_encode_der +#define UTCTime_decode_xer OCTET_STRING_decode_xer_utf8 +#define UTCTime_decode_uper OCTET_STRING_decode_uper +#define UTCTime_encode_uper OCTET_STRING_encode_uper + +/*********************** + * Some handy helpers. * + ***********************/ + +struct tm; /* */ + +/* See asn_GT2time() in GeneralizedTime.h */ +time_t asn_UT2time(const UTCTime_t *, struct tm *_optional_tm4fill, int as_gmt); + +/* See asn_time2GT() in GeneralizedTime.h */ +UTCTime_t *asn_time2UT(UTCTime_t *__opt_ut, const struct tm *, int force_gmt); + +#ifdef __cplusplus +} +#endif + +#endif /* _UTCTime_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTF8String.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTF8String.h new file mode 100644 index 000000000..1853573a7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UTF8String.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UTF8String_H_ +#define _UTF8String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UTF8String_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UTF8String; +extern asn_TYPE_operation_t asn_OP_UTF8String; + +asn_struct_print_f UTF8String_print; +asn_constr_check_f UTF8String_constraint; + +#define UTF8String_free OCTET_STRING_free +#define UTF8String_compare OCTET_STRING_compare +#define UTF8String_constraint UTF8String_constraint +#define UTF8String_decode_ber OCTET_STRING_decode_ber +#define UTF8String_encode_der OCTET_STRING_encode_der +#define UTF8String_decode_xer OCTET_STRING_decode_xer_utf8 +#define UTF8String_encode_xer OCTET_STRING_encode_xer_utf8 +#define UTF8String_decode_uper OCTET_STRING_decode_uper +#define UTF8String_encode_uper OCTET_STRING_encode_uper + +/* + * Returns length of the given UTF-8 string in characters, + * or a negative error code: + * -1: UTF-8 sequence truncated + * -2: Illegal UTF-8 sequence start + * -3: Continuation expectation failed + * -4: Not minimal length encoding + * -5: Invalid arguments + */ +ssize_t UTF8String_length(const UTF8String_t *st); + +/* + * Convert the UTF-8 string into a sequence of wide characters. + * Returns the number of characters necessary. + * Returned value might be greater than dstlen. + * In case of conversion error, 0 is returned. + * + * If st points to a valid UTF-8 string, calling + * UTF8String_to_wcs(st, 0, 0); + * is equivalent to + * UTF8String_length(const UTF8String_t *st); + */ +size_t UTF8String_to_wcs(const UTF8String_t *st, uint32_t *dst, size_t dstlen); + +#ifdef __cplusplus +} +#endif + +#endif /* _UTF8String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniversalString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniversalString.h new file mode 100644 index 000000000..ff2253739 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UniversalString.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UniversalString_H_ +#define _UniversalString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UniversalString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UniversalString; +extern asn_TYPE_operation_t asn_OP_UniversalString; +extern asn_OCTET_STRING_specifics_t asn_SPC_UniversalString_specs; + +asn_struct_print_f UniversalString_print; /* Human-readable output */ +xer_type_decoder_f UniversalString_decode_xer; +xer_type_encoder_f UniversalString_encode_xer; + +#define UniversalString_free OCTET_STRING_free +#define UniversalString_compare OCTET_STRING_compare +#define UniversalString_decode_ber OCTET_STRING_decode_ber +#define UniversalString_encode_der OCTET_STRING_encode_der +#define UniversalString_decode_uper OCTET_STRING_decode_uper +#define UniversalString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _UniversalString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VType.h new file mode 100644 index 000000000..6b8267016 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VType.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VType_H_ +#define _VType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VType { + VType_pedestrian = 0, + VType_bicycle = 1, + VType_micromobile = 2, + VType_motorcycle = 3, + VType_passenger_car = 4, + VType_light_truck_van = 5, + VType_bus = 6, + VType_two_axle_six_tire_single_unit_truck = 7, + VType_three_axle_single_unit_truck = 8, + VType_four_or_more_axle_single_unit_truck = 9, + VType_four_or_fewer_axle_single_trailer_truck = 10, + VType_five_axle_single_trailer_truck = 11, + VType_six_or_more_axle_single_trailer_truck = 12, + VType_five_or_fewer_axle_multi_trailer_truck = 13, + VType_six_axle_multi_trailer_truck = 14, + VType_seven_or_more_axle_multi_trailer_truck = 15, + VType_rail = 16, + VType_unclassified = 17 +} e_VType; + +/* VType */ +typedef long VType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VType; +extern const asn_INTEGER_specifics_t asn_SPC_VType_specs_1; +asn_struct_free_f VType_free; +asn_struct_print_f VType_print; +asn_constr_check_f VType_constraint; +ber_type_decoder_f VType_decode_ber; +der_type_encoder_f VType_encode_der; +xer_type_decoder_f VType_decode_xer; +xer_type_encoder_f VType_encode_xer; +oer_type_decoder_f VType_decode_oer; +oer_type_encoder_f VType_encode_oer; +per_type_decoder_f VType_decode_uper; +per_type_encoder_f VType_encode_uper; +per_type_decoder_f VType_decode_aper; +per_type_encoder_f VType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VisibleString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VisibleString.h new file mode 100644 index 000000000..a8d278bed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VisibleString.h @@ -0,0 +1,36 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _VisibleString_H_ +#define _VisibleString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t VisibleString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_VisibleString; +extern asn_TYPE_operation_t asn_OP_VisibleString; + +asn_constr_check_f VisibleString_constraint; + +#define VisibleString_free OCTET_STRING_free +#define VisibleString_print OCTET_STRING_print +#define VisibleString_compare OCTET_STRING_compare +#define VisibleString_constraint VisibleString_constraint +#define VisibleString_decode_ber OCTET_STRING_decode_ber +#define VisibleString_encode_der OCTET_STRING_encode_der +#define VisibleString_decode_xer OCTET_STRING_decode_xer_hex +#define VisibleString_encode_xer OCTET_STRING_encode_xer +#define VisibleString_decode_uper OCTET_STRING_decode_uper +#define VisibleString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _VisibleString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET.h new file mode 100644 index 000000000..eb61b5a39 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SET.h @@ -0,0 +1,86 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SET_H_ +#define _CONSTR_SET_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +typedef const struct asn_SET_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + unsigned pres_offset; /* Offset of _presence_map member */ + + /* + * Tags to members mapping table (sorted). + * Sometimes suitable for DER encoding (untagged CHOICE is present); + * if so, tag2el_count will be greater than td->elements_count. + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* + * Tags to members mapping table, second edition. + * Suitable for CANONICAL-XER encoding. + */ + const asn_TYPE_tag2member_t *tag2el_cxer; + unsigned tag2el_cxer_count; + + /* + * Extensions-related stuff. + */ + int extensible; /* Whether SET is extensible */ + const unsigned int *_mandatory_elements; /* Bitmask of mandatory ones */ +} asn_SET_specifics_t; + +/* + * A set specialized functions dealing with the SET type. + */ +asn_struct_free_f SET_free; +asn_struct_print_f SET_print; +asn_struct_compare_f SET_compare; +asn_constr_check_f SET_constraint; +ber_type_decoder_f SET_decode_ber; +der_type_encoder_f SET_encode_der; +xer_type_decoder_f SET_decode_xer; +xer_type_encoder_f SET_encode_xer; +per_type_decoder_f SET_decode_uper; +per_type_encoder_f SET_encode_uper; +extern asn_TYPE_operation_t asn_OP_SET; + +/*********************** + * Some handy helpers. * + ***********************/ + +/* + * Figure out whether the SET member indicated by PR_x has already been decoded. + * It is very simple bitfield test, despite its visual complexity. + */ +#define ASN_SET_ISPRESENT(set_ptr, PR_x) \ + ASN_SET_ISPRESENT2(&((set_ptr)->_presence_map), PR_x) +#define ASN_SET_ISPRESENT2(map_ptr, PR_x) \ + (((unsigned int *)(map_ptr)) \ + [(PR_x) / (8 * sizeof(unsigned int))] \ + & (1 << ((8 * sizeof(unsigned int)) - 1 \ + - ((PR_x) % (8 * sizeof(unsigned int)))))) + +#define ASN_SET_MKPRESENT(map_ptr, PR_x) \ + (((unsigned int *)(map_ptr)) \ + [(PR_x) / (8 * sizeof(unsigned int))] \ + |= (1 << ((8 * sizeof(unsigned int)) - 1 \ + - ((PR_x) % (8 * sizeof(unsigned int)))))) + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/version.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/version.h new file mode 100644 index 000000000..b0c133f0e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/version.h @@ -0,0 +1,14 @@ +/* + * version.h + * + * Created on: Aug 29, 2014 + * Author: ivp + */ + +#ifndef VERSION_H_ +#define VERSION_H_ + +#define TMXASN_VERSION "3.1.0" +#define TMXASN_SPEC "2020" + +#endif /* VERSION_H_ */ diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c index 45140a7e8..f4c63efa6 100644 --- a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Angle.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #include "AddGrpB_Angle.h" @@ -21,7 +21,7 @@ AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, value = *(const long *)sptr; - if((value >= 0L && value <= 239L)) { + if((value >= 0 && value <= 239)) { /* Constraint check succeeded */ return 0; } else { @@ -36,18 +36,14 @@ AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -#if !defined(ASN_DISABLE_OER_SUPPORT) static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { { 1, 1 } /* (0..239) */, -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; @@ -61,15 +57,7 @@ asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ sizeof(asn_DEF_AddGrpB_Angle_tags_1) /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_Angle_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_Angle_constraint - }, + { &asn_OER_type_AddGrpB_Angle_constr_1, &asn_PER_type_AddGrpB_Angle_constr_1, AddGrpB_Angle_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_DayOfWeek.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_DayOfWeek.c new file mode 100644 index 000000000..a441d8fd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_DayOfWeek.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_DayOfWeek.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AddGrpB_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static const unsigned int asn_MAP_AddGrpB_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1 = { + asn_MAP_AddGrpB_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AddGrpB_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_NativeEnumerated, + asn_DEF_AddGrpB_DayOfWeek_tags_1, + sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) + /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) + /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ + { &asn_OER_type_AddGrpB_DayOfWeek_constr_1, &asn_PER_type_AddGrpB_DayOfWeek_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AddGrpB_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c index 341e756be..aad6c0a6b 100644 --- a/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_Elevation.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #include "AddGrpB_Elevation.h" @@ -21,7 +21,7 @@ AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, value = *(const long *)sptr; - if((value >= -32768L && value <= 32767L)) { + if((value >= -32768 && value <= 32767)) { /* Constraint check succeeded */ return 0; } else { @@ -36,18 +36,14 @@ AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -#if !defined(ASN_DISABLE_OER_SUPPORT) static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { { 2, 0 } /* (-32768..32767) */, -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; @@ -61,15 +57,7 @@ asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ sizeof(asn_DEF_AddGrpB_Elevation_tags_1) /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_Elevation_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_Elevation_constraint - }, + { &asn_OER_type_AddGrpB_Elevation_constr_1, &asn_PER_type_AddGrpB_Elevation_constr_1, AddGrpB_Elevation_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c index 200e3f61d..0c4d81493 100644 --- a/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_MsgCount.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #include "AddGrpB_MsgCount.h" @@ -21,7 +21,7 @@ AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, value = *(const long *)sptr; - if((value >= 0L && value <= 255L)) { + if((value >= 0 && value <= 255)) { /* Constraint check succeeded */ return 0; } else { @@ -36,18 +36,14 @@ AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -#if !defined(ASN_DISABLE_OER_SUPPORT) static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { { 1, 1 } /* (0..255) */, -1}; -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; @@ -61,15 +57,7 @@ asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - &asn_OER_type_AddGrpB_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - &asn_PER_type_AddGrpB_MsgCount_constr_1, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - AddGrpB_MsgCount_constraint - }, + { &asn_OER_type_AddGrpB_MsgCount_constr_1, &asn_PER_type_AddGrpB_MsgCount_constr_1, AddGrpB_MsgCount_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c index a2e484d51..1e42c3ca6 100644 --- a/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c +++ b/src/tmx/Asn_J2735/src/r2020/AddGrpB_TimeMark.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "AddGrpB" - * found in "J2735-AddGrpB.asn" - * `asn1c -pdu=MessageFrame -fcompound-names -fincludes-quoted -no-gen-JER` + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` */ #include "AddGrpB_TimeMark.h" @@ -13,15 +13,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Year, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "year" }, @@ -30,15 +22,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Month, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "month" }, @@ -47,15 +31,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Day, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "day" }, @@ -64,15 +40,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_SummerTime, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "summerTime" }, @@ -81,32 +49,16 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Holiday, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "holiday" }, { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), (ASN_TAG_CLASS_CONTEXT | (5 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_DayOfWeek, + &asn_DEF_AddGrpB_DayOfWeek, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "dayofWeek" }, @@ -115,15 +67,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Hour, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "hour" }, @@ -132,15 +76,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Minute, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "minute" }, @@ -149,15 +85,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_Second, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "second" }, @@ -166,15 +94,7 @@ static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { -1, /* IMPLICIT tag at current level */ &asn_DEF_TenthSecond, 0, - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - 0 - }, + { 0, 0, 0 }, 0, 0, /* No default value */ "tenthSecond" }, @@ -212,15 +132,7 @@ asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ - { -#if !defined(ASN_DISABLE_OER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ -#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) - 0, -#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ - SEQUENCE_constraint - }, + { 0, 0, SEQUENCE_constraint }, asn_MBR_AddGrpB_TimeMark_1, 10, /* Elements count */ &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ diff --git a/src/tmx/Asn_J2735/src/r2020/Schedule.c b/src/tmx/Asn_J2735/src/r2020/Schedule.c new file mode 100644 index 000000000..5af708a5e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/Schedule.c @@ -0,0 +1,328 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Schedule.h" + +static int +memb_start_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_end_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_dow_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 7)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 32)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_dow_constr_4 CC_NOTUSED = { + { 0, 0 }, + 7 /* (SIZE(7..7)) */}; +static asn_per_constraints_t asn_PER_type_dow_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_between_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..32)) */}; +static asn_per_constraints_t asn_PER_type_between_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_start_constr_2 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_start_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_end_constr_3 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_end_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_dow_constr_4 CC_NOTUSED = { + { 0, 0 }, + 7 /* (SIZE(7..7)) */}; +static asn_per_constraints_t asn_PER_memb_dow_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_between_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..32)) */}; +static asn_per_constraints_t asn_PER_memb_between_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_dow_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)), + 0, + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_dow_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_dow_specs_4 = { + sizeof(struct Schedule__dow), + offsetof(struct Schedule__dow, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_dow_4 = { + "dow", + "dow", + &asn_OP_SEQUENCE_OF, + asn_DEF_dow_tags_4, + sizeof(asn_DEF_dow_tags_4) + /sizeof(asn_DEF_dow_tags_4[0]) - 1, /* 1 */ + asn_DEF_dow_tags_4, /* Same as above */ + sizeof(asn_DEF_dow_tags_4) + /sizeof(asn_DEF_dow_tags_4[0]), /* 2 */ + { &asn_OER_type_dow_constr_4, &asn_PER_type_dow_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_dow_4, + 1, /* Single element */ + &asn_SPC_dow_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_between_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DaySchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_between_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_between_specs_6 = { + sizeof(struct Schedule__between), + offsetof(struct Schedule__between, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_between_6 = { + "between", + "between", + &asn_OP_SEQUENCE_OF, + asn_DEF_between_tags_6, + sizeof(asn_DEF_between_tags_6) + /sizeof(asn_DEF_between_tags_6[0]) - 1, /* 1 */ + asn_DEF_between_tags_6, /* Same as above */ + sizeof(asn_DEF_between_tags_6) + /sizeof(asn_DEF_between_tags_6[0]), /* 2 */ + { &asn_OER_type_between_constr_6, &asn_PER_type_between_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_between_6, + 1, /* Single element */ + &asn_SPC_between_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Schedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Schedule, start), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_start_constr_2, &asn_PER_memb_start_constr_2, memb_start_constraint_1 }, + 0, 0, /* No default value */ + "start" + }, + { ATF_NOFLAGS, 0, offsetof(struct Schedule, end), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_end_constr_3, &asn_PER_memb_end_constr_3, memb_end_constraint_1 }, + 0, 0, /* No default value */ + "end" + }, + { ATF_NOFLAGS, 0, offsetof(struct Schedule, dow), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_dow_4, + 0, + { &asn_OER_memb_dow_constr_4, &asn_PER_memb_dow_constr_4, memb_dow_constraint_1 }, + 0, 0, /* No default value */ + "dow" + }, + { ATF_POINTER, 2, offsetof(struct Schedule, between), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_between_6, + 0, + { &asn_OER_memb_between_constr_6, &asn_PER_memb_between_constr_6, memb_between_constraint_1 }, + 0, 0, /* No default value */ + "between" + }, + { ATF_POINTER, 1, offsetof(struct Schedule, repeat), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RepeatParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "repeat" + }, +}; +static const int asn_MAP_Schedule_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_Schedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Schedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* start */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* end */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dow */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* between */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* repeat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1 = { + sizeof(struct Schedule), + offsetof(struct Schedule, _asn_ctx), + asn_MAP_Schedule_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Schedule_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Schedule = { + "Schedule", + "Schedule", + &asn_OP_SEQUENCE, + asn_DEF_Schedule_tags_1, + sizeof(asn_DEF_Schedule_tags_1) + /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ + asn_DEF_Schedule_tags_1, /* Same as above */ + sizeof(asn_DEF_Schedule_tags_1) + /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Schedule_1, + 5, /* Elements count */ + &asn_SPC_Schedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/VType.c b/src/tmx/Asn_J2735/src/r2020/VType.c new file mode 100644 index 000000000..8cb73e011 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/VType.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 17 } /* (0..17) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_VType_value2enum_1[] = { + { 0, 10, "pedestrian" }, + { 1, 7, "bicycle" }, + { 2, 11, "micromobile" }, + { 3, 10, "motorcycle" }, + { 4, 13, "passenger-car" }, + { 5, 15, "light-truck-van" }, + { 6, 3, "bus" }, + { 7, 35, "two-axle-six-tire-single-unit-truck" }, + { 8, 28, "three-axle-single-unit-truck" }, + { 9, 35, "four-or-more-axle-single-unit-truck" }, + { 10, 39, "four-or-fewer-axle-single-trailer-truck" }, + { 11, 30, "five-axle-single-trailer-truck" }, + { 12, 37, "six-or-more-axle-single-trailer-truck" }, + { 13, 38, "five-or-fewer-axle-multi-trailer-truck" }, + { 14, 28, "six-axle-multi-trailer-truck" }, + { 15, 38, "seven-or-more-axle-multi-trailer-truck" }, + { 16, 4, "rail" }, + { 17, 12, "unclassified" } +}; +static const unsigned int asn_MAP_VType_enum2value_1[] = { + 1, /* bicycle(1) */ + 6, /* bus(6) */ + 11, /* five-axle-single-trailer-truck(11) */ + 13, /* five-or-fewer-axle-multi-trailer-truck(13) */ + 10, /* four-or-fewer-axle-single-trailer-truck(10) */ + 9, /* four-or-more-axle-single-unit-truck(9) */ + 5, /* light-truck-van(5) */ + 2, /* micromobile(2) */ + 3, /* motorcycle(3) */ + 4, /* passenger-car(4) */ + 0, /* pedestrian(0) */ + 16, /* rail(16) */ + 15, /* seven-or-more-axle-multi-trailer-truck(15) */ + 14, /* six-axle-multi-trailer-truck(14) */ + 12, /* six-or-more-axle-single-trailer-truck(12) */ + 8, /* three-axle-single-unit-truck(8) */ + 7, /* two-axle-six-tire-single-unit-truck(7) */ + 17 /* unclassified(17) */ +}; +const asn_INTEGER_specifics_t asn_SPC_VType_specs_1 = { + asn_MAP_VType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VType_enum2value_1, /* N => "tag"; sorted by N */ + 18, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VType = { + "VType", + "VType", + &asn_OP_NativeEnumerated, + asn_DEF_VType_tags_1, + sizeof(asn_DEF_VType_tags_1) + /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ + asn_DEF_VType_tags_1, /* Same as above */ + sizeof(asn_DEF_VType_tags_1) + /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ + { &asn_OER_type_VType_constr_1, &asn_PER_type_VType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VType_specs_1 /* Additional specs */ +}; + From bc573d2de2678a779a1cafe992a1232f5817686c Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Fri, 27 Oct 2023 17:06:37 -0400 Subject: [PATCH 09/18] re-introduced: src/tmx/Asn_J2735/include/asn_j2735_r41/ re-introduced: src/tmx/Asn_J2735/src/r41/ modified: src/tmx/Messages/include/rtcm/RTCM2.h modified: src/tmx/Messages/include/rtcm/RTCM3.h modified: src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp modified: src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp modified: src/tmx/TmxApi/tmx/messages/IvpJ2735.c modified: src/tmx/TmxApi/tmx/messages/IvpJ2735.h modified: src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp modified: src/tmx/TmxUtils/src/BsmConverter.cpp modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp modified: src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp modified: src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp modified: src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp modified: src/v2i-hub/CswPlugin/src/DsrcBuilder.h modified: src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp modified: src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp modified: src/v2i-hub/MapPlugin/src/MapPlugin.cpp modified: src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp modified: src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp modified: src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp modified: src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp modified: src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp modified: src/v2i-hub/TimPlugin/src/DsrcBuilder.h modified: src/v2i-hub/TimPlugin/src/TimPlugin.cpp modified: src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp --- .../AccelSteerYawRateConfidence.h | 42 + .../include/asn_j2735_r41/Acceleration.h | 41 + .../asn_j2735_r41/AccelerationConfidence.h | 53 + .../asn_j2735_r41/AccelerationSet4Way.h | 41 + .../include/asn_j2735_r41/AdvisorySpeed.h | 57 + .../include/asn_j2735_r41/AdvisorySpeedList.h | 44 + .../include/asn_j2735_r41/AdvisorySpeedType.h | 52 + .../include/asn_j2735_r41/AllowedManeuvers.h | 57 + .../include/asn_j2735_r41/Altitude.h | 40 + .../asn_j2735_r41/AltitudeConfidence.h | 61 + .../include/asn_j2735_r41/AltitudeValue.h | 41 + .../asn_j2735_r41/AmbientAirPressure.h | 41 + .../asn_j2735_r41/AmbientAirTemperature.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Angle.h | 41 + .../asn_j2735_r41/AnimalPropelledType.h | 52 + .../include/asn_j2735_r41/AnimalType.h | 52 + .../include/asn_j2735_r41/AntennaOffsetSet.h | 41 + .../asn_j2735_r41/AntiLockBrakeStatus.h | 49 + .../include/asn_j2735_r41/ApproachID.h | 41 + .../include/asn_j2735_r41/Attachment.h | 55 + .../include/asn_j2735_r41/AttachmentRadius.h | 41 + .../asn_j2735_r41/AuxiliaryBrakeStatus.h | 49 + .../include/asn_j2735_r41/AxleLocation.h | 41 + .../include/asn_j2735_r41/AxleWeight.h | 41 + .../include/asn_j2735_r41/BIT_STRING.h | 33 + .../Asn_J2735/include/asn_j2735_r41/BOOLEAN.h | 36 + .../Asn_J2735/include/asn_j2735_r41/BSMblob.h | 41 + .../asn_j2735_r41/BasicSafetyMessage.h | 54 + .../asn_j2735_r41/BasicSafetyMessageVerbose.h | 78 + .../asn_j2735_r41/BrakeAppliedPressure.h | 61 + .../asn_j2735_r41/BrakeAppliedStatus.h | 50 + .../include/asn_j2735_r41/BrakeBoostApplied.h | 48 + .../include/asn_j2735_r41/BrakeSystemStatus.h | 41 + .../include/asn_j2735_r41/BumperHeightFront.h | 41 + .../include/asn_j2735_r41/BumperHeightRear.h | 41 + .../include/asn_j2735_r41/BumperHeights.h | 40 + .../include/asn_j2735_r41/CargoWeight.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Circle.h | 59 + .../include/asn_j2735_r41/CodeWord.h | 41 + .../asn_j2735_r41/CoefficientOfFriction.h | 41 + .../asn_j2735_r41/CommonSafetyRequest.h | 55 + .../include/asn_j2735_r41/ComputedLane.h | 89 + .../include/asn_j2735_r41/ConfidenceSet.h | 57 + .../include/asn_j2735_r41/ConnectingLane.h | 40 + .../include/asn_j2735_r41/Connection.h | 51 + .../asn_j2735_r41/ConnectionManeuverAssist.h | 56 + .../include/asn_j2735_r41/ConnectsToList.h | 44 + .../Asn_J2735/include/asn_j2735_r41/Count.h | 41 + .../Asn_J2735/include/asn_j2735_r41/DDate.h | 42 + .../include/asn_j2735_r41/DDateTime.h | 48 + .../Asn_J2735/include/asn_j2735_r41/DDay.h | 41 + .../include/asn_j2735_r41/DFullTime.h | 46 + .../Asn_J2735/include/asn_j2735_r41/DHour.h | 41 + .../Asn_J2735/include/asn_j2735_r41/DMinute.h | 41 + .../Asn_J2735/include/asn_j2735_r41/DMonth.h | 41 + .../include/asn_j2735_r41/DMonthDay.h | 40 + .../Asn_J2735/include/asn_j2735_r41/DOffset.h | 41 + .../include/asn_j2735_r41/DSRCEquippedType.h | 41 + .../include/asn_j2735_r41/DSRCmsgID.h | 65 + .../include/asn_j2735_r41/DSRCmsgID2.h | 41 + .../include/asn_j2735_r41/DSRCmsgSubID.h | 41 + .../Asn_J2735/include/asn_j2735_r41/DSecond.h | 41 + .../include/asn_j2735_r41/DSecond2.h | 41 + .../Asn_J2735/include/asn_j2735_r41/DTime.h | 42 + .../Asn_J2735/include/asn_j2735_r41/DYear.h | 41 + .../include/asn_j2735_r41/DYearMonth.h | 40 + .../include/asn_j2735_r41/DataParameters.h | 45 + src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h | 41 + .../include/asn_j2735_r41/DayOfWeek.h | 53 + .../include/asn_j2735_r41/DegreesLat.h | 41 + .../include/asn_j2735_r41/DegreesLong.h | 41 + .../include/asn_j2735_r41/DeltaAngle.h | 41 + .../include/asn_j2735_r41/DescriptiveName.h | 41 + .../include/asn_j2735_r41/DestinationType.h | 40 + .../include/asn_j2735_r41/DirectionOfUse.h | 51 + .../asn_j2735_r41/DriveAxleLiftAirPressure.h | 41 + .../include/asn_j2735_r41/DriveAxleLocation.h | 41 + .../asn_j2735_r41/DriveAxleLubePressure.h | 41 + .../asn_j2735_r41/DriveAxleTemperature.h | 41 + .../asn_j2735_r41/DrivenLineOffsetLg.h | 41 + .../asn_j2735_r41/DrivenLineOffsetSm.h | 41 + .../include/asn_j2735_r41/DrivingWheelAngle.h | 41 + .../EU-Reg-ConnectionManeuverAssist.h | 45 + .../asn_j2735_r41/EU-Reg-IntersectionState.h | 47 + .../include/asn_j2735_r41/EU-Reg-MapData.h | 47 + .../include/asn_j2735_r41/EU-Reg-Position3D.h | 42 + .../EU-Reg-RestrictionUserType.h | 42 + .../include/asn_j2735_r41/Elevation.h | 41 + .../include/asn_j2735_r41/Elevation2.h | 41 + .../asn_j2735_r41/ElevationConfidence.h | 61 + .../include/asn_j2735_r41/EmergencyDetails.h | 41 + .../asn_j2735_r41/EmergencyVehicleAlert.h | 62 + .../include/asn_j2735_r41/EmissionType.h | 53 + .../include/asn_j2735_r41/EnabledLaneList.h | 39 + .../include/asn_j2735_r41/EssMobileFriction.h | 41 + .../include/asn_j2735_r41/EssPrecipRate.h | 41 + .../asn_j2735_r41/EssPrecipSituation.h | 60 + .../include/asn_j2735_r41/EssPrecipYesNo.h | 48 + .../include/asn_j2735_r41/EssSolarRadiation.h | 41 + .../include/asn_j2735_r41/EstimatedTimeType.h | 41 + .../include/asn_j2735_r41/EventFlags.h | 41 + .../include/asn_j2735_r41/ExitService.h | 63 + .../Asn_J2735/include/asn_j2735_r41/Extent.h | 57 + .../include/asn_j2735_r41/ExteriorLights.h | 41 + .../asn_j2735_r41/FullPositionVector.h | 65 + .../include/asn_j2735_r41/FurtherInfoID.h | 41 + .../include/asn_j2735_r41/GPSstatus.h | 53 + .../include/asn_j2735_r41/GenericLane.h | 66 + .../include/asn_j2735_r41/GenericSignage.h | 63 + .../Asn_J2735/include/asn_j2735_r41/Heading.h | 41 + .../include/asn_j2735_r41/HeadingConfidence.h | 53 + .../include/asn_j2735_r41/HeadingSlice.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Holiday.h | 47 + .../Asn_J2735/include/asn_j2735_r41/Hour.h | 41 + .../asn_j2735_r41/HumanPropelledType.h | 54 + .../include/asn_j2735_r41/IA5String.h | 27 + .../Asn_J2735/include/asn_j2735_r41/INTEGER.h | 82 + .../include/asn_j2735_r41/ITIScodes.h | 41 + .../include/asn_j2735_r41/ITIScodesAndText.h | 63 + .../include/asn_j2735_r41/ITIStext.h | 41 + .../asn_j2735_r41/IncidentResponseEquipment.h | 120 + .../asn_j2735_r41/IntersectionCollision.h | 56 + .../asn_j2735_r41/IntersectionGeometry.h | 65 + .../asn_j2735_r41/IntersectionGeometryList.h | 44 + .../include/asn_j2735_r41/IntersectionID.h | 41 + .../asn_j2735_r41/IntersectionReferenceID.h | 40 + .../include/asn_j2735_r41/IntersectionState.h | 70 + .../asn_j2735_r41/IntersectionStateList.h | 44 + .../asn_j2735_r41/IntersectionStatusObject.h | 59 + .../include/asn_j2735_r41/J1939data.h | 104 + .../include/asn_j2735_r41/JPN-Angle.h | 41 + .../include/asn_j2735_r41/JPN-Elevation.h | 41 + .../include/asn_j2735_r41/JPN-MsgCount.h | 41 + .../asn_j2735_r41/JPN-Reg-LaneDataAttribute.h | 40 + .../asn_j2735_r41/JPN-Reg-MovementEvent.h | 50 + .../asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h | 56 + .../asn_j2735_r41/JPN-Reg-Position3D.h | 46 + .../include/asn_j2735_r41/JPN-TimeMark.h | 56 + .../asn_j2735_r41/LaneAttributes-Barrier.h | 55 + .../asn_j2735_r41/LaneAttributes-Bike.h | 52 + .../asn_j2735_r41/LaneAttributes-Crosswalk.h | 54 + .../asn_j2735_r41/LaneAttributes-Parking.h | 52 + .../asn_j2735_r41/LaneAttributes-Sidewalk.h | 49 + .../asn_j2735_r41/LaneAttributes-Striping.h | 51 + .../LaneAttributes-TrackedVehicle.h | 50 + .../asn_j2735_r41/LaneAttributes-Vehicle.h | 52 + .../include/asn_j2735_r41/LaneAttributes.h | 49 + .../include/asn_j2735_r41/LaneConnectionID.h | 41 + .../include/asn_j2735_r41/LaneDataAttribute.h | 69 + .../asn_j2735_r41/LaneDataAttributeList.h | 44 + .../include/asn_j2735_r41/LaneDirection.h | 47 + .../Asn_J2735/include/asn_j2735_r41/LaneID.h | 41 + .../include/asn_j2735_r41/LaneList.h | 44 + .../include/asn_j2735_r41/LaneNumber.h | 41 + .../include/asn_j2735_r41/LaneSharing.h | 55 + .../asn_j2735_r41/LaneTypeAttributes.h | 74 + .../include/asn_j2735_r41/LaneWidth.h | 41 + .../include/asn_j2735_r41/Latitude.h | 41 + .../include/asn_j2735_r41/LatitudeDMS.h | 41 + .../include/asn_j2735_r41/LatitudeDMS2.h | 42 + .../Asn_J2735/include/asn_j2735_r41/LayerID.h | 41 + .../include/asn_j2735_r41/LayerType.h | 56 + .../include/asn_j2735_r41/LightbarInUse.h | 55 + .../include/asn_j2735_r41/Location-quality.h | 53 + .../include/asn_j2735_r41/Location-tech.h | 56 + .../include/asn_j2735_r41/Longitude.h | 41 + .../include/asn_j2735_r41/LongitudeDMS.h | 41 + .../include/asn_j2735_r41/LongitudeDMS2.h | 42 + .../include/asn_j2735_r41/MUTCDCode.h | 55 + .../asn_j2735_r41/ManeuverAssistList.h | 44 + .../Asn_J2735/include/asn_j2735_r41/MapData.h | 71 + .../include/asn_j2735_r41/MaxTimetoChange.h | 41 + .../asn_j2735_r41/MergeDivergeNodeAngle.h | 41 + .../include/asn_j2735_r41/MinTimetoChange.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Minute.h | 41 + .../include/asn_j2735_r41/MinuteOfTheYear.h | 41 + .../include/asn_j2735_r41/MinutesAngle.h | 41 + .../include/asn_j2735_r41/MinutesDuration.h | 41 + .../include/asn_j2735_r41/MobilityNeeds.h | 40 + .../include/asn_j2735_r41/MobilityNeedsList.h | 41 + .../include/asn_j2735_r41/MobilityNeedsType.h | 48 + .../asn_j2735_r41/ModeOfTransportType.h | 49 + .../Asn_J2735/include/asn_j2735_r41/Month.h | 41 + .../asn_j2735_r41/MotorizedPropelledType.h | 54 + .../include/asn_j2735_r41/MovementEvent.h | 55 + .../include/asn_j2735_r41/MovementEventList.h | 44 + .../include/asn_j2735_r41/MovementList.h | 44 + .../asn_j2735_r41/MovementPhaseState.h | 55 + .../include/asn_j2735_r41/MovementState.h | 56 + .../Asn_J2735/include/asn_j2735_r41/MsgCRC.h | 41 + .../include/asn_j2735_r41/MsgCount.h | 41 + .../asn_j2735_r41/MultiVehicleResponse.h | 49 + .../include/asn_j2735_r41/NMEA-Corrections.h | 50 + .../include/asn_j2735_r41/NMEA-MsgType.h | 41 + .../include/asn_j2735_r41/NMEA-Payload.h | 41 + .../include/asn_j2735_r41/NMEA-Revision.h | 55 + .../include/asn_j2735_r41/NTCIPVehicleclass.h | 41 + .../include/asn_j2735_r41/NativeEnumerated.h | 32 + .../include/asn_j2735_r41/NativeInteger.h | 37 + .../include/asn_j2735_r41/Node-LLdms-48b.h | 40 + .../include/asn_j2735_r41/Node-LLdms-80b.h | 40 + .../include/asn_j2735_r41/Node-LLmD-64b.h | 40 + .../include/asn_j2735_r41/Node-XY-20b.h | 39 + .../include/asn_j2735_r41/Node-XY-22b.h | 39 + .../include/asn_j2735_r41/Node-XY-24b.h | 39 + .../include/asn_j2735_r41/Node-XY-26b.h | 39 + .../include/asn_j2735_r41/Node-XY-28b.h | 39 + .../include/asn_j2735_r41/Node-XY-32b.h | 39 + .../Asn_J2735/include/asn_j2735_r41/Node.h | 49 + .../include/asn_j2735_r41/NodeAttribute.h | 60 + .../include/asn_j2735_r41/NodeAttributeList.h | 39 + .../include/asn_j2735_r41/NodeAttributeSet.h | 60 + .../include/asn_j2735_r41/NodeList.h | 39 + .../include/asn_j2735_r41/NodeList2.h | 56 + .../include/asn_j2735_r41/NodeOffsetPoint.h | 68 + .../Asn_J2735/include/asn_j2735_r41/NodeSet.h | 44 + .../NumberOfParticipantsInCluster.h | 52 + .../include/asn_j2735_r41/OCTET_STRING.h | 86 + .../include/asn_j2735_r41/ObjectCount.h | 41 + .../include/asn_j2735_r41/ObstacleDirection.h | 41 + .../include/asn_j2735_r41/ObstacleDistance.h | 41 + .../include/asn_j2735_r41/Offset-B10.h | 41 + .../include/asn_j2735_r41/Offset-B11.h | 41 + .../include/asn_j2735_r41/Offset-B12.h | 41 + .../include/asn_j2735_r41/Offset-B13.h | 41 + .../include/asn_j2735_r41/Offset-B14.h | 41 + .../include/asn_j2735_r41/Offset-B16.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Offsets.h | 41 + .../include/asn_j2735_r41/OverlayLaneList.h | 39 + .../include/asn_j2735_r41/PathHistory.h | 95 + .../asn_j2735_r41/PathHistoryPointType-01.h | 46 + .../asn_j2735_r41/PathHistoryPointType-02.h | 41 + .../asn_j2735_r41/PathHistoryPointType-03.h | 41 + .../asn_j2735_r41/PathHistoryPointType-04.h | 41 + .../asn_j2735_r41/PathHistoryPointType-05.h | 41 + .../asn_j2735_r41/PathHistoryPointType-06.h | 41 + .../asn_j2735_r41/PathHistoryPointType-07.h | 41 + .../asn_j2735_r41/PathHistoryPointType-08.h | 41 + .../asn_j2735_r41/PathHistoryPointType-09.h | 41 + .../asn_j2735_r41/PathHistoryPointType-10.h | 41 + .../include/asn_j2735_r41/PathPrediction.h | 43 + .../Asn_J2735/include/asn_j2735_r41/Payload.h | 41 + .../include/asn_j2735_r41/PayloadData.h | 41 + .../asn_j2735_r41/PedestrianBicycleDetect.h | 41 + .../include/asn_j2735_r41/PersonalAssistive.h | 51 + .../asn_j2735_r41/PersonalClusterRadius.h | 41 + .../PersonalCrossingInProgress.h | 41 + .../asn_j2735_r41/PersonalCrossingRequest.h | 41 + .../asn_j2735_r41/PersonalDeviceUsageState.h | 54 + .../asn_j2735_r41/PersonalDeviceUserType.h | 53 + .../asn_j2735_r41/PersonalMobilityMessage.h | 65 + .../PersonalMobilityMessageStatusType.h | 51 + .../asn_j2735_r41/PersonalSafetyMessage.h | 95 + .../include/asn_j2735_r41/Position3D-2.h | 53 + .../include/asn_j2735_r41/Position3D.h | 42 + .../asn_j2735_r41/PositionConfidence.h | 61 + .../asn_j2735_r41/PositionConfidenceSet.h | 41 + .../asn_j2735_r41/PositionalAccuracy.h | 41 + .../asn_j2735_r41/PreemptPriorityList.h | 44 + .../asn_j2735_r41/PrioritizationResponse.h | 46 + .../PrioritizationResponseList.h | 44 + .../PrioritizationResponseStatus.h | 52 + .../include/asn_j2735_r41/Priority.h | 41 + .../asn_j2735_r41/ProbeDataManagement.h | 101 + .../asn_j2735_r41/ProbeSegmentNumber.h | 41 + .../include/asn_j2735_r41/ProbeVehicleData.h | 67 + .../asn_j2735_r41/PropelledInformation.h | 59 + .../PublicSafetyAndRoadWorkerActivity.h | 51 + .../PublicSafetyDirectingTrafficSubType.h | 52 + .../PublicSafetyEventResponderWorkerType.h | 56 + .../include/asn_j2735_r41/RTCM-Corrections.h | 65 + .../Asn_J2735/include/asn_j2735_r41/RTCM-ID.h | 41 + .../include/asn_j2735_r41/RTCM-Payload.h | 41 + .../include/asn_j2735_r41/RTCM-Revision.h | 65 + .../include/asn_j2735_r41/RTCMHeader.h | 41 + .../include/asn_j2735_r41/RTCMPackage.h | 80 + .../Asn_J2735/include/asn_j2735_r41/RTCMmsg.h | 46 + .../include/asn_j2735_r41/RainSensor.h | 53 + .../include/asn_j2735_r41/Reg-AdvisorySpeed.h | 40 + .../include/asn_j2735_r41/Reg-ComputedLane.h | 40 + .../Reg-ConnectionManeuverAssist.h | 40 + .../include/asn_j2735_r41/Reg-GenericLane.h | 40 + .../include/asn_j2735_r41/Reg-Intersection.h | 40 + .../asn_j2735_r41/Reg-IntersectionState.h | 40 + .../asn_j2735_r41/Reg-LaneAttributes.h | 40 + .../asn_j2735_r41/Reg-LaneDataAttribute.h | 40 + .../include/asn_j2735_r41/Reg-MapData.h | 40 + .../include/asn_j2735_r41/Reg-MovementEvent.h | 40 + .../include/asn_j2735_r41/Reg-MovementState.h | 40 + .../include/asn_j2735_r41/Reg-NodeAttribute.h | 40 + .../asn_j2735_r41/Reg-NodeOffsetPoint.h | 40 + .../Reg-PersonalMobilityMessage.h | 40 + .../asn_j2735_r41/Reg-PersonalSafetyMessage.h | 40 + .../include/asn_j2735_r41/Reg-Position3D.h | 40 + .../asn_j2735_r41/Reg-RestrictionUserType.h | 40 + .../include/asn_j2735_r41/Reg-RoadSegment.h | 40 + .../include/asn_j2735_r41/Reg-SPAT.h | 40 + .../asn_j2735_r41/Reg-SignalControlZone.h | 40 + .../include/asn_j2735_r41/RegionList.h | 44 + .../include/asn_j2735_r41/RegionOffsets.h | 40 + .../include/asn_j2735_r41/RegionPointSet.h | 49 + .../asn_j2735_r41/RegionalAdvisorySpeed.h | 41 + .../asn_j2735_r41/RegionalComputedLane.h | 41 + .../RegionalConnectionManeuverAssist.h | 41 + .../asn_j2735_r41/RegionalGenericLane.h | 41 + .../asn_j2735_r41/RegionalIntersection.h | 41 + .../asn_j2735_r41/RegionalIntersectionState.h | 41 + .../asn_j2735_r41/RegionalLaneAttributes.h | 41 + .../asn_j2735_r41/RegionalLaneDataAttribute.h | 41 + .../include/asn_j2735_r41/RegionalMapData.h | 41 + .../asn_j2735_r41/RegionalMovementEvent.h | 41 + .../asn_j2735_r41/RegionalMovementState.h | 41 + .../asn_j2735_r41/RegionalNodeAttribute.h | 41 + .../asn_j2735_r41/RegionalNodeAttributeList.h | 44 + .../asn_j2735_r41/RegionalNodeOffsetPoint.h | 41 + .../RegionalPersonalMobilityMessage.h | 41 + .../RegionalPersonalSafetyMessage.h | 41 + .../asn_j2735_r41/RegionalPosition3D.h | 41 + .../RegionalRestrictionUserType.h | 41 + .../asn_j2735_r41/RegionalRoadSegment.h | 41 + .../include/asn_j2735_r41/RegionalSPAT.h | 41 + .../asn_j2735_r41/RegionalSignalControlZone.h | 41 + .../asn_j2735_r41/RegulatorySpeedLimit.h | 40 + .../include/asn_j2735_r41/RequestID.h | 41 + .../include/asn_j2735_r41/RequestedItem.h | 66 + .../asn_j2735_r41/ResponderGroupAffected.h | 62 + .../include/asn_j2735_r41/ResponseType.h | 49 + .../asn_j2735_r41/RestrictionAppliesTo.h | 62 + .../RestrictionClassAssignment.h | 40 + .../asn_j2735_r41/RestrictionClassID.h | 41 + .../asn_j2735_r41/RestrictionClassList.h | 44 + .../asn_j2735_r41/RestrictionUserType.h | 50 + .../asn_j2735_r41/RestrictionUserTypeList.h | 44 + .../include/asn_j2735_r41/RoadLaneSetList.h | 44 + .../include/asn_j2735_r41/RoadRegulatorID.h | 41 + .../include/asn_j2735_r41/RoadSegment.h | 62 + .../include/asn_j2735_r41/RoadSegmentID.h | 41 + .../include/asn_j2735_r41/RoadSegmentList.h | 44 + .../asn_j2735_r41/RoadSegmentReferenceID.h | 40 + .../include/asn_j2735_r41/RoadSideAlert.h | 67 + .../include/asn_j2735_r41/RoadSignID.h | 44 + .../include/asn_j2735_r41/RoadwayCrownAngle.h | 41 + .../Asn_J2735/include/asn_j2735_r41/SPAT.h | 55 + .../Asn_J2735/include/asn_j2735_r41/Sample.h | 39 + .../include/asn_j2735_r41/Scale-B12.h | 41 + .../include/asn_j2735_r41/SeatCount.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Second.h | 41 + .../include/asn_j2735_r41/SecondsAngle.h | 41 + .../include/asn_j2735_r41/SegmentAttribute.h | 86 + .../asn_j2735_r41/SegmentAttributeList.h | 39 + .../include/asn_j2735_r41/ShapePointSet.h | 53 + .../include/asn_j2735_r41/SignPrority.h | 41 + .../asn_j2735_r41/SignalControlState.h | 41 + .../include/asn_j2735_r41/SignalControlZone.h | 93 + .../include/asn_j2735_r41/SignalGroupID.h | 41 + .../asn_j2735_r41/SignalHeadLocation.h | 44 + .../asn_j2735_r41/SignalHeadLocationList.h | 44 + .../include/asn_j2735_r41/SignalReqScheme.h | 41 + .../include/asn_j2735_r41/SignalRequest.h | 52 + .../include/asn_j2735_r41/SignalRequestMsg.h | 63 + .../include/asn_j2735_r41/SignalState.h | 41 + .../asn_j2735_r41/SignalStatusMessage.h | 73 + .../include/asn_j2735_r41/SirenInUse.h | 49 + .../include/asn_j2735_r41/Snapshot.h | 52 + .../include/asn_j2735_r41/SnapshotDistance.h | 41 + .../include/asn_j2735_r41/SnapshotTime.h | 41 + .../Asn_J2735/include/asn_j2735_r41/Speed.h | 41 + .../include/asn_j2735_r41/SpeedAdvice.h | 41 + .../include/asn_j2735_r41/SpeedConfidence.h | 53 + .../include/asn_j2735_r41/SpeedLimit.h | 63 + .../include/asn_j2735_r41/SpeedLimitList.h | 44 + .../include/asn_j2735_r41/SpeedLimitType.h | 61 + .../SpeedandHeadingandThrottleConfidence.h | 41 + .../asn_j2735_r41/StabilityControlStatus.h | 48 + .../include/asn_j2735_r41/StationID.h | 41 + .../asn_j2735_r41/SteeringAxleLubePressure.h | 41 + .../asn_j2735_r41/SteeringAxleTemperature.h | 41 + .../asn_j2735_r41/SteeringWheelAngle.h | 41 + .../SteeringWheelAngleConfidence.h | 49 + .../SteeringWheelAngleRateOfChange.h | 41 + .../include/asn_j2735_r41/SummerTime.h | 47 + .../include/asn_j2735_r41/SunSensor.h | 41 + .../include/asn_j2735_r41/TemporaryID.h | 41 + .../include/asn_j2735_r41/TenthSecond.h | 41 + .../include/asn_j2735_r41/TermDistance.h | 41 + .../include/asn_j2735_r41/TermTime.h | 41 + .../asn_j2735_r41/ThrottleConfidence.h | 49 + .../include/asn_j2735_r41/ThrottlePosition.h | 41 + .../include/asn_j2735_r41/TimeChangeDetails.h | 44 + .../include/asn_j2735_r41/TimeConfidence.h | 85 + .../asn_j2735_r41/TimeIntervalConfidence.h | 41 + .../include/asn_j2735_r41/TimeMark.h | 41 + .../include/asn_j2735_r41/TimeRemaining.h | 41 + .../include/asn_j2735_r41/TireLeakageRate.h | 41 + .../include/asn_j2735_r41/TireLocation.h | 41 + .../include/asn_j2735_r41/TirePressure.h | 41 + .../TirePressureThresholdDetection.h | 56 + .../include/asn_j2735_r41/TireTemp.h | 41 + .../asn_j2735_r41/TractionControlState.h | 49 + .../include/asn_j2735_r41/TrailerWeight.h | 41 + .../include/asn_j2735_r41/TransitStatus.h | 51 + .../asn_j2735_r41/TransmissionAndSpeed.h | 41 + .../include/asn_j2735_r41/TransmissionState.h | 56 + .../include/asn_j2735_r41/TravelerInfoType.h | 52 + .../asn_j2735_r41/TravelerInformation.h | 139 + .../Asn_J2735/include/asn_j2735_r41/TxTime.h | 41 + .../include/asn_j2735_r41/UPER-Blob.h | 41 + .../include/asn_j2735_r41/UPERframe.h | 51 + .../include/asn_j2735_r41/URL-Base.h | 41 + .../include/asn_j2735_r41/URL-Link.h | 41 + .../include/asn_j2735_r41/URL-Short.h | 41 + .../include/asn_j2735_r41/UUIDType.h | 41 + .../include/asn_j2735_r41/UniqueMSGID.h | 41 + .../asn_j2735_r41/UserSizeAndBehaviour.h | 50 + .../include/asn_j2735_r41/VINstring.h | 41 + .../include/asn_j2735_r41/ValidRegion.h | 63 + .../asn_j2735_r41/VehicleDescriptionType.h | 41 + .../asn_j2735_r41/VehicleGroupAffected.h | 83 + .../include/asn_j2735_r41/VehicleHeight.h | 41 + .../include/asn_j2735_r41/VehicleIdent.h | 73 + .../include/asn_j2735_r41/VehicleLength.h | 41 + .../include/asn_j2735_r41/VehicleMass.h | 41 + .../asn_j2735_r41/VehicleRequestStatus.h | 41 + .../asn_j2735_r41/VehicleSafetyExtension.h | 55 + .../include/asn_j2735_r41/VehicleSize.h | 40 + .../include/asn_j2735_r41/VehicleStatus.h | 161 ++ .../VehicleStatusDeviceTypeTag.h | 77 + .../asn_j2735_r41/VehicleStatusRequest.h | 48 + .../asn_j2735_r41/VehicleToLanePosition.h | 44 + .../asn_j2735_r41/VehicleToLanePositionList.h | 44 + .../include/asn_j2735_r41/VehicleType.h | 64 + .../include/asn_j2735_r41/VehicleWidth.h | 41 + .../include/asn_j2735_r41/Velocity.h | 41 + .../asn_j2735_r41/VerticalAcceleration.h | 41 + .../VerticalAccelerationThreshold.h | 50 + .../include/asn_j2735_r41/WaitOnStopline.h | 41 + .../asn_j2735_r41/WheelEndElectFault.h | 49 + .../include/asn_j2735_r41/WheelSensorStatus.h | 49 + .../include/asn_j2735_r41/WiperRate.h | 41 + .../include/asn_j2735_r41/WiperStatus.h | 43 + .../include/asn_j2735_r41/WiperStatusFront.h | 55 + .../include/asn_j2735_r41/WiperStatusRear.h | 55 + .../include/asn_j2735_r41/WorkZone.h | 63 + .../Asn_J2735/include/asn_j2735_r41/YawRate.h | 41 + .../include/asn_j2735_r41/YawRateConfidence.h | 53 + .../Asn_J2735/include/asn_j2735_r41/Year.h | 41 + .../include/asn_j2735_r41/ZoneLength.h | 41 + .../include/asn_j2735_r41/asn_SEQUENCE_OF.h | 54 + .../include/asn_j2735_r41/asn_SET_OF.h | 70 + .../include/asn_j2735_r41/asn_application.h | 47 + .../include/asn_j2735_r41/asn_codecs.h | 109 + .../include/asn_j2735_r41/asn_codecs_prim.h | 53 + .../include/asn_j2735_r41/asn_internal.h | 126 + .../include/asn_j2735_r41/asn_system.h | 129 + .../include/asn_j2735_r41/ber_decoder.h | 64 + .../include/asn_j2735_r41/ber_tlv_length.h | 50 + .../include/asn_j2735_r41/ber_tlv_tag.h | 60 + .../include/asn_j2735_r41/constr_CHOICE.h | 57 + .../include/asn_j2735_r41/constr_SEQUENCE.h | 60 + .../asn_j2735_r41/constr_SEQUENCE_OF.h | 33 + .../include/asn_j2735_r41/constr_SET_OF.h | 42 + .../include/asn_j2735_r41/constr_TYPE.h | 180 ++ .../include/asn_j2735_r41/constraints.h | 63 + .../include/asn_j2735_r41/der_encoder.h | 68 + .../include/asn_j2735_r41/per_decoder.h | 56 + .../include/asn_j2735_r41/per_encoder.h | 69 + .../include/asn_j2735_r41/per_opentype.h | 22 + .../include/asn_j2735_r41/per_support.h | 136 + .../Asn_J2735/include/asn_j2735_r41/version.h | 14 + .../include/asn_j2735_r41/xer_decoder.h | 105 + .../include/asn_j2735_r41/xer_encoder.h | 59 + .../include/asn_j2735_r41/xer_support.h | 55 + src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h | 65 + .../AccelSteerYawRateConfidence.h | 44 + .../include/asn_j2735_r63/Acceleration.h | 46 + .../asn_j2735_r63/AccelerationConfidence.h | 59 + .../asn_j2735_r63/AccelerationSet4Way.h | 45 + .../include/asn_j2735_r63/AddGrpB_Angle.h | 45 + .../include/asn_j2735_r63/AddGrpB_DayOfWeek.h | 59 + .../include/asn_j2735_r63/AddGrpB_Elevation.h | 46 + .../include/asn_j2735_r63/AddGrpB_MsgCount.h | 45 + .../include/asn_j2735_r63/AddGrpB_TimeMark.h | 56 + .../include/asn_j2735_r63/AdvisorySpeed.h | 66 + .../include/asn_j2735_r63/AdvisorySpeedList.h | 47 + .../include/asn_j2735_r63/AdvisorySpeedType.h | 58 + .../include/asn_j2735_r63/AllowedManeuvers.h | 62 + .../include/asn_j2735_r63/Altitude.h | 42 + .../asn_j2735_r63/AltitudeConfidence.h | 67 + .../include/asn_j2735_r63/AltitudeValue.h | 46 + .../asn_j2735_r63/AmbientAirPressure.h | 46 + .../asn_j2735_r63/AmbientAirTemperature.h | 46 + .../include/asn_j2735_r63/AngularVelocity.h | 42 + .../asn_j2735_r63/AngularVelocityConfidence.h | 42 + .../asn_j2735_r63/AnimalPropelledType.h | 58 + .../include/asn_j2735_r63/AnimalType.h | 58 + .../include/asn_j2735_r63/AntennaOffsetSet.h | 44 + .../asn_j2735_r63/AntiLockBrakeStatus.h | 55 + .../include/asn_j2735_r63/ApproachID.h | 46 + .../include/asn_j2735_r63/ApproachOrLane.h | 53 + .../include/asn_j2735_r63/Attachment.h | 61 + .../include/asn_j2735_r63/AttachmentRadius.h | 46 + .../include/asn_j2735_r63/Attitude.h | 44 + .../asn_j2735_r63/AttitudeConfidence.h | 42 + .../asn_j2735_r63/AuxiliaryBrakeStatus.h | 55 + .../include/asn_j2735_r63/AxleLocation.h | 46 + .../include/asn_j2735_r63/AxleWeight.h | 46 + .../include/asn_j2735_r63/AxleWeightList.h | 47 + .../include/asn_j2735_r63/AxleWeightSet.h | 46 + .../include/asn_j2735_r63/BIT_STRING.h | 48 + .../include/asn_j2735_r63/BMPString.h | 37 + .../Asn_J2735/include/asn_j2735_r63/BOOLEAN.h | 45 + .../include/asn_j2735_r63/BSMcoreData.h | 66 + .../BasicSafetyMessage-addGrpCarma.h | 56 + .../asn_j2735_r63/BasicSafetyMessage.h | 66 + .../include/asn_j2735_r63/BasicVehicleClass.h | 102 + .../include/asn_j2735_r63/BasicVehicleRole.h | 77 + .../asn_j2735_r63/BrakeAppliedPressure.h | 67 + .../asn_j2735_r63/BrakeAppliedStatus.h | 55 + .../include/asn_j2735_r63/BrakeBoostApplied.h | 54 + .../include/asn_j2735_r63/BrakeSystemStatus.h | 50 + .../include/asn_j2735_r63/BumperHeight.h | 46 + .../include/asn_j2735_r63/BumperHeights.h | 41 + .../include/asn_j2735_r63/CargoWeight.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Circle.h | 44 + .../asn_j2735_r63/ClassificationConfidence.h | 44 + .../include/asn_j2735_r63/CoarseHeading.h | 46 + .../include/asn_j2735_r63/CodeWord.h | 45 + .../asn_j2735_r63/CoefficientOfFriction.h | 46 + .../asn_j2735_r63/CommonSafetyRequest.h | 64 + .../include/asn_j2735_r63/ComputedLane.h | 98 + .../include/asn_j2735_r63/Confidence.h | 46 + .../include/asn_j2735_r63/ConfidenceSet.h | 63 + .../include/asn_j2735_r63/ConnectingLane.h | 42 + .../include/asn_j2735_r63/Connection.h | 53 + .../ConnectionManeuverAssist-addGrpC.h | 45 + .../asn_j2735_r63/ConnectionManeuverAssist.h | 65 + .../include/asn_j2735_r63/ConnectsToList.h | 47 + .../Asn_J2735/include/asn_j2735_r63/Count.h | 45 + .../Asn_J2735/include/asn_j2735_r63/DDate.h | 42 + .../include/asn_j2735_r63/DDateTime.h | 52 + .../Asn_J2735/include/asn_j2735_r63/DDay.h | 46 + .../include/asn_j2735_r63/DFullTime.h | 46 + .../Asn_J2735/include/asn_j2735_r63/DHour.h | 46 + .../Asn_J2735/include/asn_j2735_r63/DMinute.h | 46 + .../Asn_J2735/include/asn_j2735_r63/DMonth.h | 46 + .../include/asn_j2735_r63/DMonthDay.h | 40 + .../Asn_J2735/include/asn_j2735_r63/DOffset.h | 46 + .../include/asn_j2735_r63/DSRCEquippedType.h | 41 + .../include/asn_j2735_r63/DSRC_Angle.h | 46 + .../include/asn_j2735_r63/DSRC_DayOfWeek.h | 56 + .../include/asn_j2735_r63/DSRC_Elevation.h | 46 + .../include/asn_j2735_r63/DSRC_MsgCount.h | 46 + .../include/asn_j2735_r63/DSRC_TimeMark.h | 46 + .../include/asn_j2735_r63/DSRCmsgID.h | 95 + .../Asn_J2735/include/asn_j2735_r63/DSecond.h | 46 + .../Asn_J2735/include/asn_j2735_r63/DTime.h | 44 + .../Asn_J2735/include/asn_j2735_r63/DYear.h | 46 + .../include/asn_j2735_r63/DYearMonth.h | 40 + .../include/asn_j2735_r63/DailySchedule.h | 41 + .../include/asn_j2735_r63/DataParameters.h | 47 + src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h | 46 + .../include/asn_j2735_r63/DayOfWeek.h | 59 + .../include/asn_j2735_r63/DaySchedule.h | 41 + .../include/asn_j2735_r63/DegreesLat.h | 46 + .../include/asn_j2735_r63/DegreesLong.h | 46 + .../include/asn_j2735_r63/DeltaAngle.h | 46 + .../include/asn_j2735_r63/DeltaTime.h | 46 + .../include/asn_j2735_r63/DescriptiveName.h | 46 + .../include/asn_j2735_r63/DestinationType.h | 42 + .../asn_j2735_r63/DetectedObjectCommonData.h | 79 + .../asn_j2735_r63/DetectedObjectData.h | 47 + .../asn_j2735_r63/DetectedObjectList.h | 47 + .../DetectedObjectOptionalData.h | 56 + .../asn_j2735_r63/DetectedObstacleData.h | 42 + .../include/asn_j2735_r63/DetectedVRUData.h | 51 + .../asn_j2735_r63/DetectedVehicleData.h | 72 + .../include/asn_j2735_r63/DirectionOfUse.h | 55 + .../include/asn_j2735_r63/DisabledVehicle.h | 46 + .../include/asn_j2735_r63/DistanceUnits.h | 59 + .../asn_j2735_r63/DriveAxleLiftAirPressure.h | 46 + .../include/asn_j2735_r63/DriveAxleLocation.h | 46 + .../asn_j2735_r63/DriveAxleLubePressure.h | 46 + .../asn_j2735_r63/DriveAxleTemperature.h | 46 + .../asn_j2735_r63/DrivenLineOffsetLg.h | 46 + .../asn_j2735_r63/DrivenLineOffsetSm.h | 46 + .../include/asn_j2735_r63/DrivingWheelAngle.h | 46 + .../include/asn_j2735_r63/Duration.h | 45 + .../include/asn_j2735_r63/ENUMERATED.h | 35 + .../include/asn_j2735_r63/EXTERNAL.h | 65 + .../asn_j2735_r63/ElevationConfidence.h | 67 + .../include/asn_j2735_r63/EmergencyDetails.h | 59 + .../asn_j2735_r63/EmergencyVehicleAlert.h | 77 + .../include/asn_j2735_r63/EmissionType.h | 59 + .../include/asn_j2735_r63/EnabledLaneList.h | 42 + .../include/asn_j2735_r63/EpochMins.h | 46 + .../include/asn_j2735_r63/EquipmentType.h | 56 + .../include/asn_j2735_r63/EssMobileFriction.h | 46 + .../include/asn_j2735_r63/EssPrecipRate.h | 46 + .../asn_j2735_r63/EssPrecipSituation.h | 66 + .../include/asn_j2735_r63/EssPrecipYesNo.h | 54 + .../include/asn_j2735_r63/EssSolarRadiation.h | 46 + .../include/asn_j2735_r63/EstimatedTimeType.h | 42 + .../include/asn_j2735_r63/EventDescription.h | 70 + .../include/asn_j2735_r63/ExitService.h | 69 + .../Asn_J2735/include/asn_j2735_r63/Extent.h | 67 + .../include/asn_j2735_r63/ExteriorLights.h | 59 + .../include/asn_j2735_r63/FuelType.h | 56 + .../asn_j2735_r63/FullPositionVector.h | 71 + .../include/asn_j2735_r63/FurtherInfoID.h | 46 + .../include/asn_j2735_r63/GNSSstatus.h | 58 + .../include/asn_j2735_r63/GeneralString.h | 34 + .../include/asn_j2735_r63/GeneralizedTime.h | 77 + .../include/asn_j2735_r63/GenericLane.h | 75 + .../include/asn_j2735_r63/GenericLocations.h | 150 + .../include/asn_j2735_r63/GenericSignage.h | 69 + .../include/asn_j2735_r63/GeographicalPath.h | 101 + .../asn_j2735_r63/GeometricProjection.h | 64 + .../include/asn_j2735_r63/GraphicString.h | 36 + .../include/asn_j2735_r63/GrossDistance.h | 46 + .../include/asn_j2735_r63/GrossSpeed.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Header.h | 50 + .../Asn_J2735/include/asn_j2735_r63/Heading.h | 46 + .../include/asn_j2735_r63/HeadingConfidence.h | 59 + .../include/asn_j2735_r63/HeadingSlice.h | 66 + .../Asn_J2735/include/asn_j2735_r63/Holiday.h | 53 + .../Asn_J2735/include/asn_j2735_r63/Hour.h | 46 + .../asn_j2735_r63/HumanPropelledType.h | 60 + .../include/asn_j2735_r63/IA5String.h | 40 + .../Asn_J2735/include/asn_j2735_r63/INTEGER.h | 108 + .../include/asn_j2735_r63/ISO646String.h | 35 + .../include/asn_j2735_r63/ITIScodes.h | 46 + .../include/asn_j2735_r63/ITIScodesAndText.h | 69 + .../include/asn_j2735_r63/ITIStext.h | 46 + .../include/asn_j2735_r63/ITIStextPhrase.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Id128b.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Id64b.h | 46 + .../asn_j2735_r63/IncidentResponseEquipment.h | 126 + .../asn_j2735_r63/IntersectionAccessPoint.h | 62 + .../asn_j2735_r63/IntersectionCollision.h | 77 + .../asn_j2735_r63/IntersectionGeometry.h | 74 + .../asn_j2735_r63/IntersectionGeometryList.h | 47 + .../include/asn_j2735_r63/IntersectionID.h | 46 + .../asn_j2735_r63/IntersectionReferenceID.h | 42 + .../asn_j2735_r63/IntersectionState-addGrpC.h | 47 + .../include/asn_j2735_r63/IntersectionState.h | 76 + .../asn_j2735_r63/IntersectionStateList.h | 47 + .../asn_j2735_r63/IntersectionStatusObject.h | 64 + .../Asn_J2735/include/asn_j2735_r63/IsDolly.h | 45 + .../asn_j2735_r63/Iso3833VehicleType.h | 46 + .../include/asn_j2735_r63/J1939data.h | 68 + .../asn_j2735_r63/LaneAttributes-Barrier.h | 60 + .../asn_j2735_r63/LaneAttributes-Bike.h | 57 + .../asn_j2735_r63/LaneAttributes-Crosswalk.h | 59 + .../asn_j2735_r63/LaneAttributes-Parking.h | 57 + .../asn_j2735_r63/LaneAttributes-Sidewalk.h | 54 + .../asn_j2735_r63/LaneAttributes-Striping.h | 56 + .../LaneAttributes-TrackedVehicle.h | 55 + .../asn_j2735_r63/LaneAttributes-Vehicle.h | 58 + .../include/asn_j2735_r63/LaneAttributes.h | 51 + .../include/asn_j2735_r63/LaneConnectionID.h | 46 + .../asn_j2735_r63/LaneDataAttribute-addGrpB.h | 40 + .../include/asn_j2735_r63/LaneDataAttribute.h | 84 + .../asn_j2735_r63/LaneDataAttributeList.h | 47 + .../include/asn_j2735_r63/LaneDirection.h | 52 + .../Asn_J2735/include/asn_j2735_r63/LaneID.h | 46 + .../include/asn_j2735_r63/LaneList.h | 47 + .../include/asn_j2735_r63/LaneSharing.h | 60 + .../asn_j2735_r63/LaneTypeAttributes.h | 77 + .../include/asn_j2735_r63/LaneWidth.h | 46 + .../include/asn_j2735_r63/Latitude.h | 46 + .../include/asn_j2735_r63/LatitudeDMS.h | 46 + .../include/asn_j2735_r63/LatitudeDMS2.h | 44 + .../Asn_J2735/include/asn_j2735_r63/LayerID.h | 46 + .../include/asn_j2735_r63/LayerType.h | 62 + .../include/asn_j2735_r63/LightbarInUse.h | 59 + .../include/asn_j2735_r63/Location-quality.h | 57 + .../include/asn_j2735_r63/Location-tech.h | 62 + .../include/asn_j2735_r63/Longitude.h | 46 + .../include/asn_j2735_r63/LongitudeDMS.h | 46 + .../include/asn_j2735_r63/LongitudeDMS2.h | 44 + .../include/asn_j2735_r63/MUTCDCode.h | 61 + .../asn_j2735_r63/ManeuverAssistList.h | 47 + .../include/asn_j2735_r63/MapData-addGrpC.h | 47 + .../Asn_J2735/include/asn_j2735_r63/MapData.h | 76 + .../include/asn_j2735_r63/MaxTimetoChange.h | 46 + .../asn_j2735_r63/MeasurementTimeOffset.h | 44 + .../asn_j2735_r63/MergeDivergeNodeAngle.h | 46 + .../include/asn_j2735_r63/MessageBLOB.h | 45 + .../include/asn_j2735_r63/MessageFrame.h | 155 ++ .../include/asn_j2735_r63/MinTimetoChange.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Minute.h | 46 + .../include/asn_j2735_r63/MinuteOfTheYear.h | 46 + .../include/asn_j2735_r63/MinutesAngle.h | 46 + .../include/asn_j2735_r63/MinutesDuration.h | 46 + .../include/asn_j2735_r63/MobilityDynamicID.h | 44 + .../asn_j2735_r63/MobilityECEFCoordinate.h | 44 + .../asn_j2735_r63/MobilityECEFOffset.h | 42 + .../MobilityECEFOffsetCoordinate.h | 44 + .../include/asn_j2735_r63/MobilityGUID.h | 44 + .../include/asn_j2735_r63/MobilityHeader.h | 47 + .../include/asn_j2735_r63/MobilityLocation.h | 44 + .../asn_j2735_r63/MobilityLocationOffsets.h | 47 + .../include/asn_j2735_r63/MobilityNeeds.h | 42 + .../include/asn_j2735_r63/MobilityNeedsList.h | 47 + .../include/asn_j2735_r63/MobilityNeedsType.h | 50 + .../include/asn_j2735_r63/MobilityOperation.h | 42 + .../asn_j2735_r63/MobilityParameters.h | 44 + .../include/asn_j2735_r63/MobilityPath.h | 42 + .../include/asn_j2735_r63/MobilityPlanType.h | 57 + .../include/asn_j2735_r63/MobilityRequest.h | 61 + .../include/asn_j2735_r63/MobilityResponse.h | 42 + .../asn_j2735_r63/MobilityResponseFlag.h | 43 + .../include/asn_j2735_r63/MobilityStaticID.h | 44 + .../include/asn_j2735_r63/MobilityStrategy.h | 44 + .../include/asn_j2735_r63/MobilityTimestamp.h | 44 + .../include/asn_j2735_r63/MobilityUrgency.h | 44 + .../asn_j2735_r63/ModeOfTransportType.h | 51 + .../Asn_J2735/include/asn_j2735_r63/Month.h | 46 + .../asn_j2735_r63/MotorizedPropelledType.h | 60 + .../asn_j2735_r63/MovementEvent-addGrpB.h | 50 + .../include/asn_j2735_r63/MovementEvent.h | 64 + .../include/asn_j2735_r63/MovementEventList.h | 47 + .../include/asn_j2735_r63/MovementList.h | 47 + .../asn_j2735_r63/MovementPhaseState.h | 61 + .../include/asn_j2735_r63/MovementState.h | 65 + .../Asn_J2735/include/asn_j2735_r63/MsgCRC.h | 46 + .../asn_j2735_r63/MultiVehicleResponse.h | 55 + .../include/asn_j2735_r63/NMEA-MsgType.h | 46 + .../include/asn_j2735_r63/NMEA-Payload.h | 46 + .../include/asn_j2735_r63/NMEA-Revision.h | 61 + .../include/asn_j2735_r63/NMEAcorrections.h | 66 + .../Asn_J2735/include/asn_j2735_r63/NULL.h | 45 + .../include/asn_j2735_r63/NativeEnumerated.h | 45 + .../include/asn_j2735_r63/NativeInteger.h | 46 + .../include/asn_j2735_r63/NativeReal.h | 39 + .../include/asn_j2735_r63/Node-LL-24B.h | 41 + .../include/asn_j2735_r63/Node-LL-28B.h | 41 + .../include/asn_j2735_r63/Node-LL-32B.h | 41 + .../include/asn_j2735_r63/Node-LL-36B.h | 41 + .../include/asn_j2735_r63/Node-LL-44B.h | 41 + .../include/asn_j2735_r63/Node-LL-48B.h | 41 + .../include/asn_j2735_r63/Node-LLdms-48b.h | 42 + .../include/asn_j2735_r63/Node-LLdms-80b.h | 42 + .../include/asn_j2735_r63/Node-LLmD-64b.h | 42 + .../include/asn_j2735_r63/Node-XY-20b.h | 41 + .../include/asn_j2735_r63/Node-XY-22b.h | 41 + .../include/asn_j2735_r63/Node-XY-24b.h | 41 + .../include/asn_j2735_r63/Node-XY-26b.h | 41 + .../include/asn_j2735_r63/Node-XY-28b.h | 41 + .../include/asn_j2735_r63/Node-XY-32b.h | 41 + .../include/asn_j2735_r63/NodeAttributeLL.h | 66 + .../asn_j2735_r63/NodeAttributeLLList.h | 42 + .../asn_j2735_r63/NodeAttributeSetLL.h | 69 + .../asn_j2735_r63/NodeAttributeSetXY.h | 69 + .../include/asn_j2735_r63/NodeAttributeXY.h | 66 + .../asn_j2735_r63/NodeAttributeXYList.h | 42 + .../Asn_J2735/include/asn_j2735_r63/NodeLL.h | 51 + .../include/asn_j2735_r63/NodeListLL.h | 56 + .../include/asn_j2735_r63/NodeListXY.h | 59 + .../include/asn_j2735_r63/NodeOffsetPointLL.h | 71 + .../asn_j2735_r63/NodeOffsetPointXY-addGrpB.h | 56 + .../include/asn_j2735_r63/NodeOffsetPointXY.h | 71 + .../include/asn_j2735_r63/NodeSetLL.h | 47 + .../include/asn_j2735_r63/NodeSetXY.h | 47 + .../Asn_J2735/include/asn_j2735_r63/NodeXY.h | 51 + .../NumberOfParticipantsInCluster.h | 58 + .../include/asn_j2735_r63/NumericString.h | 35 + .../include/asn_j2735_r63/OBJECT_IDENTIFIER.h | 156 ++ .../include/asn_j2735_r63/OCTET_STRING.h | 102 + .../include/asn_j2735_r63/OPEN_TYPE.h | 77 + .../include/asn_j2735_r63/ObjectCount.h | 46 + .../include/asn_j2735_r63/ObjectDescriptor.h | 35 + .../include/asn_j2735_r63/ObjectDistance.h | 44 + .../include/asn_j2735_r63/ObjectID.h | 44 + .../include/asn_j2735_r63/ObjectType.h | 56 + .../include/asn_j2735_r63/ObstacleDetection.h | 54 + .../include/asn_j2735_r63/ObstacleDirection.h | 46 + .../include/asn_j2735_r63/ObstacleDistance.h | 46 + .../include/asn_j2735_r63/ObstacleSize.h | 42 + .../asn_j2735_r63/ObstacleSizeConfidence.h | 42 + .../include/asn_j2735_r63/Offset-B09.h | 46 + .../include/asn_j2735_r63/Offset-B10.h | 46 + .../include/asn_j2735_r63/Offset-B11.h | 46 + .../include/asn_j2735_r63/Offset-B12.h | 46 + .../include/asn_j2735_r63/Offset-B13.h | 46 + .../include/asn_j2735_r63/Offset-B14.h | 46 + .../include/asn_j2735_r63/Offset-B16.h | 46 + .../include/asn_j2735_r63/OffsetLL-B12.h | 46 + .../include/asn_j2735_r63/OffsetLL-B14.h | 46 + .../include/asn_j2735_r63/OffsetLL-B16.h | 46 + .../include/asn_j2735_r63/OffsetLL-B18.h | 46 + .../include/asn_j2735_r63/OffsetLL-B22.h | 46 + .../include/asn_j2735_r63/OffsetLL-B24.h | 46 + .../include/asn_j2735_r63/OffsetPoint.h | 41 + .../include/asn_j2735_r63/OffsetSystem.h | 60 + .../include/asn_j2735_r63/OverlayLaneList.h | 42 + .../include/asn_j2735_r63/PartII-Id.h | 49 + .../include/asn_j2735_r63/PartIIcontent.h | 66 + .../include/asn_j2735_r63/PathHistory.h | 53 + .../include/asn_j2735_r63/PathHistoryPoint.h | 60 + .../asn_j2735_r63/PathHistoryPointList.h | 47 + .../include/asn_j2735_r63/PathNode.h | 43 + .../include/asn_j2735_r63/PathPrediction.h | 46 + .../include/asn_j2735_r63/PayloadData.h | 45 + .../asn_j2735_r63/PedestrianBicycleDetect.h | 45 + .../include/asn_j2735_r63/PersonalAssistive.h | 56 + .../asn_j2735_r63/PersonalClusterRadius.h | 46 + .../PersonalCrossingInProgress.h | 45 + .../asn_j2735_r63/PersonalCrossingRequest.h | 45 + .../asn_j2735_r63/PersonalDeviceUsageState.h | 59 + .../asn_j2735_r63/PersonalDeviceUserType.h | 59 + .../asn_j2735_r63/PersonalMobilityMessage.h | 85 + .../PersonalMobilityMessageStatusType.h | 52 + .../asn_j2735_r63/PersonalSafetyMessage.h | 110 + .../include/asn_j2735_r63/PitchDetected.h | 44 + .../include/asn_j2735_r63/PitchRate.h | 44 + .../asn_j2735_r63/PitchRateConfidence.h | 57 + .../asn_j2735_r63/PivotPointDescription.h | 48 + .../include/asn_j2735_r63/PivotingAllowed.h | 45 + .../Asn_J2735/include/asn_j2735_r63/Point.h | 43 + .../asn_j2735_r63/Position3D-addGrpB.h | 46 + .../asn_j2735_r63/Position3D-addGrpC.h | 42 + .../asn_j2735_r63/Position3D-addGrpCarma.h | 48 + .../include/asn_j2735_r63/Position3D.h | 62 + .../asn_j2735_r63/PositionConfidence.h | 67 + .../asn_j2735_r63/PositionConfidenceSet.h | 42 + .../include/asn_j2735_r63/PositionOffsetXYZ.h | 42 + .../asn_j2735_r63/PositionalAccuracy.h | 44 + .../asn_j2735_r63/PreemptPriorityList.h | 47 + .../include/asn_j2735_r63/PrintableString.h | 35 + .../asn_j2735_r63/PrioritizationResponse.h | 48 + .../PrioritizationResponseList.h | 47 + .../PrioritizationResponseStatus.h | 62 + .../include/asn_j2735_r63/Priority.h | 46 + .../asn_j2735_r63/PriorityRequestType.h | 58 + .../asn_j2735_r63/PrivilegedEventFlags.h | 56 + .../include/asn_j2735_r63/PrivilegedEvents.h | 46 + .../asn_j2735_r63/ProbeDataManagement.h | 104 + .../asn_j2735_r63/ProbeSegmentNumber.h | 46 + .../include/asn_j2735_r63/ProbeVehicleData.h | 75 + .../asn_j2735_r63/PropelledInformation.h | 62 + .../PublicSafetyAndRoadWorkerActivity.h | 56 + .../PublicSafetyDirectingTrafficSubType.h | 57 + .../PublicSafetyEventResponderWorkerType.h | 62 + .../Asn_J2735/include/asn_j2735_r63/REAL.h | 51 + .../include/asn_j2735_r63/RELATIVE-OID.h | 48 + .../include/asn_j2735_r63/RTCM-Revision.h | 58 + .../include/asn_j2735_r63/RTCMPackage.h | 51 + .../include/asn_j2735_r63/RTCMcorrections.h | 70 + .../include/asn_j2735_r63/RTCMheader.h | 42 + .../include/asn_j2735_r63/RTCMmessage.h | 46 + .../include/asn_j2735_r63/RTCMmessageList.h | 42 + .../include/asn_j2735_r63/Radius-B12.h | 46 + .../include/asn_j2735_r63/RadiusOfCurvature.h | 46 + .../include/asn_j2735_r63/RainSensor.h | 59 + .../include/asn_j2735_r63/RegionId.h | 50 + .../include/asn_j2735_r63/RegionList.h | 47 + .../include/asn_j2735_r63/RegionOffsets.h | 42 + .../include/asn_j2735_r63/RegionPointSet.h | 53 + .../include/asn_j2735_r63/RegionalExtension.h | 60 + .../asn_j2735_r63/RegulatorySpeedLimit.h | 42 + .../include/asn_j2735_r63/RepeatParams.h | 42 + .../include/asn_j2735_r63/RequestID.h | 46 + .../asn_j2735_r63/RequestImportanceLevel.h | 67 + .../include/asn_j2735_r63/RequestSubRole.h | 67 + .../include/asn_j2735_r63/RequestedItem.h | 71 + .../include/asn_j2735_r63/RequestedItemList.h | 42 + .../asn_j2735_r63/RequestorDescription.h | 73 + .../asn_j2735_r63/RequestorPositionVector.h | 53 + .../include/asn_j2735_r63/RequestorType.h | 59 + .../asn_j2735_r63/ResponderGroupAffected.h | 68 + .../include/asn_j2735_r63/ResponseType.h | 61 + .../asn_j2735_r63/RestrictionAppliesTo.h | 68 + .../RestrictionClassAssignment.h | 42 + .../asn_j2735_r63/RestrictionClassID.h | 46 + .../asn_j2735_r63/RestrictionClassList.h | 47 + .../RestrictionUserType-addGrpC.h | 42 + .../asn_j2735_r63/RestrictionUserType.h | 71 + .../asn_j2735_r63/RestrictionUserTypeList.h | 47 + .../include/asn_j2735_r63/RoadLaneSetList.h | 47 + .../include/asn_j2735_r63/RoadRegulatorID.h | 46 + .../include/asn_j2735_r63/RoadSegment.h | 71 + .../include/asn_j2735_r63/RoadSegmentID.h | 46 + .../include/asn_j2735_r63/RoadSegmentList.h | 47 + .../asn_j2735_r63/RoadSegmentReferenceID.h | 42 + .../include/asn_j2735_r63/RoadSideAlert.h | 79 + .../include/asn_j2735_r63/RoadSignID.h | 46 + .../include/asn_j2735_r63/RoadwayCrownAngle.h | 46 + .../include/asn_j2735_r63/RollDetected.h | 44 + .../include/asn_j2735_r63/RollRate.h | 44 + .../asn_j2735_r63/RollRateConfidence.h | 57 + .../Asn_J2735/include/asn_j2735_r63/SPAT.h | 62 + .../include/asn_j2735_r63/SSPindex.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Sample.h | 41 + .../include/asn_j2735_r63/Scale-B12.h | 46 + .../include/asn_j2735_r63/Schedule.h | 65 + .../include/asn_j2735_r63/SeatCount.h | 42 + .../Asn_J2735/include/asn_j2735_r63/Second.h | 46 + .../include/asn_j2735_r63/SecondOfTime.h | 46 + .../include/asn_j2735_r63/SecondsAngle.h | 46 + .../asn_j2735_r63/SegmentAttributeLL.h | 92 + .../asn_j2735_r63/SegmentAttributeLLList.h | 42 + .../asn_j2735_r63/SegmentAttributeXY.h | 92 + .../asn_j2735_r63/SegmentAttributeXYList.h | 42 + .../asn_j2735_r63/SemiMajorAxisAccuracy.h | 46 + .../asn_j2735_r63/SemiMajorAxisOrientation.h | 46 + .../asn_j2735_r63/SemiMinorAxisAccuracy.h | 46 + .../asn_j2735_r63/SensorDataSharingMessage.h | 54 + .../include/asn_j2735_r63/ShapePointSet.h | 55 + .../include/asn_j2735_r63/SignPrority.h | 46 + .../include/asn_j2735_r63/SignalControlZone.h | 44 + .../include/asn_j2735_r63/SignalGroupID.h | 46 + .../asn_j2735_r63/SignalHeadLocation.h | 46 + .../asn_j2735_r63/SignalHeadLocationList.h | 47 + .../include/asn_j2735_r63/SignalReqScheme.h | 45 + .../include/asn_j2735_r63/SignalRequest.h | 67 + .../include/asn_j2735_r63/SignalRequestList.h | 47 + .../asn_j2735_r63/SignalRequestMessage.h | 67 + .../asn_j2735_r63/SignalRequestPackage.h | 63 + .../asn_j2735_r63/SignalRequesterInfo.h | 57 + .../include/asn_j2735_r63/SignalStatus.h | 62 + .../include/asn_j2735_r63/SignalStatusList.h | 47 + .../asn_j2735_r63/SignalStatusMessage.h | 64 + .../asn_j2735_r63/SignalStatusPackage.h | 71 + .../asn_j2735_r63/SignalStatusPackageList.h | 47 + .../include/asn_j2735_r63/SirenInUse.h | 55 + .../include/asn_j2735_r63/SizeValue.h | 44 + .../asn_j2735_r63/SizeValueConfidence.h | 63 + .../include/asn_j2735_r63/Snapshot.h | 54 + .../include/asn_j2735_r63/SnapshotDistance.h | 44 + .../include/asn_j2735_r63/SnapshotTime.h | 44 + .../asn_j2735_r63/SpecialVehicleExtensions.h | 55 + .../Asn_J2735/include/asn_j2735_r63/Speed.h | 46 + .../include/asn_j2735_r63/SpeedAdvice.h | 46 + .../include/asn_j2735_r63/SpeedConfidence.h | 59 + .../include/asn_j2735_r63/SpeedLimit.h | 69 + .../include/asn_j2735_r63/SpeedLimitList.h | 47 + .../include/asn_j2735_r63/SpeedLimitType.h | 67 + .../include/asn_j2735_r63/SpeedProfile.h | 44 + .../asn_j2735_r63/SpeedProfileMeasurement.h | 46 + .../SpeedProfileMeasurementList.h | 42 + .../SpeedandHeadingandThrottleConfidence.h | 44 + .../asn_j2735_r63/StabilityControlStatus.h | 55 + .../include/asn_j2735_r63/StationID.h | 47 + .../asn_j2735_r63/SteeringAxleLubePressure.h | 46 + .../asn_j2735_r63/SteeringAxleTemperature.h | 46 + .../asn_j2735_r63/SteeringWheelAngle.h | 46 + .../SteeringWheelAngleConfidence.h | 55 + .../SteeringWheelAngleRateOfChange.h | 46 + .../include/asn_j2735_r63/SummerTime.h | 53 + .../include/asn_j2735_r63/SunSensor.h | 46 + .../SupplementalVehicleExtensions.h | 82 + .../include/asn_j2735_r63/T61String.h | 34 + .../include/asn_j2735_r63/TeletexString.h | 34 + .../include/asn_j2735_r63/TemporaryID.h | 46 + .../include/asn_j2735_r63/TenthSecond.h | 46 + .../include/asn_j2735_r63/TermDistance.h | 46 + .../include/asn_j2735_r63/TermTime.h | 46 + .../include/asn_j2735_r63/TestMessage00.h | 54 + .../include/asn_j2735_r63/TestMessage01.h | 54 + .../include/asn_j2735_r63/TestMessage02.h | 48 + .../include/asn_j2735_r63/TestMessage03.h | 46 + .../include/asn_j2735_r63/TestMessage04.h | 44 + .../include/asn_j2735_r63/TestMessage05.h | 44 + .../include/asn_j2735_r63/TestMessage06.h | 52 + .../include/asn_j2735_r63/TestMessage07.h | 52 + .../include/asn_j2735_r63/TestMessage08.h | 52 + .../include/asn_j2735_r63/TestMessage09.h | 52 + .../include/asn_j2735_r63/TestMessage10.h | 52 + .../include/asn_j2735_r63/TestMessage11.h | 52 + .../include/asn_j2735_r63/TestMessage12.h | 52 + .../include/asn_j2735_r63/TestMessage13.h | 52 + .../include/asn_j2735_r63/TestMessage14.h | 52 + .../include/asn_j2735_r63/TestMessage15.h | 52 + .../asn_j2735_r63/ThrottleConfidence.h | 55 + .../include/asn_j2735_r63/ThrottlePosition.h | 46 + .../include/asn_j2735_r63/TimeChangeDetails.h | 46 + .../include/asn_j2735_r63/TimeConfidence.h | 91 + .../asn_j2735_r63/TimeIntervalConfidence.h | 46 + .../include/asn_j2735_r63/TimeOffset.h | 46 + .../include/asn_j2735_r63/TimeRemaining.h | 46 + .../include/asn_j2735_r63/TireData.h | 56 + .../include/asn_j2735_r63/TireDataList.h | 47 + .../include/asn_j2735_r63/TireLeakageRate.h | 46 + .../include/asn_j2735_r63/TireLocation.h | 46 + .../include/asn_j2735_r63/TirePressure.h | 46 + .../TirePressureThresholdDetection.h | 59 + .../include/asn_j2735_r63/TireTemp.h | 46 + .../asn_j2735_r63/TractionControlStatus.h | 55 + .../asn_j2735_r63/TrafficControlBounds.h | 58 + .../asn_j2735_r63/TrafficControlDetail.h | 146 + .../asn_j2735_r63/TrafficControlGeometry.h | 66 + .../asn_j2735_r63/TrafficControlMessage.h | 59 + .../asn_j2735_r63/TrafficControlMessageV01.h | 61 + .../asn_j2735_r63/TrafficControlPackage.h | 49 + .../asn_j2735_r63/TrafficControlParams.h | 53 + .../asn_j2735_r63/TrafficControlPathPart.h | 56 + .../asn_j2735_r63/TrafficControlRequest.h | 59 + .../asn_j2735_r63/TrafficControlRequestV01.h | 57 + .../asn_j2735_r63/TrafficControlSchedule.h | 60 + .../asn_j2735_r63/TrafficControlType.h | 74 + .../asn_j2735_r63/TrafficControlValue.h | 113 + .../asn_j2735_r63/TrafficControlVehClass.h | 73 + .../include/asn_j2735_r63/TrailerData.h | 48 + .../asn_j2735_r63/TrailerHistoryPoint.h | 52 + .../asn_j2735_r63/TrailerHistoryPointList.h | 47 + .../include/asn_j2735_r63/TrailerMass.h | 46 + .../asn_j2735_r63/TrailerUnitDescription.h | 74 + .../TrailerUnitDescriptionList.h | 47 + .../include/asn_j2735_r63/TrailerWeight.h | 46 + .../include/asn_j2735_r63/TransitStatus.h | 55 + .../asn_j2735_r63/TransitVehicleOccupancy.h | 59 + .../asn_j2735_r63/TransitVehicleStatus.h | 56 + .../asn_j2735_r63/TransmissionAndSpeed.h | 42 + .../include/asn_j2735_r63/TransmissionState.h | 59 + .../include/asn_j2735_r63/TravelerDataFrame.h | 119 + .../asn_j2735_r63/TravelerDataFrameList.h | 47 + .../include/asn_j2735_r63/TravelerInfoType.h | 58 + .../asn_j2735_r63/TravelerInformation.h | 66 + .../include/asn_j2735_r63/URL-Base.h | 46 + .../include/asn_j2735_r63/URL-Link.h | 45 + .../include/asn_j2735_r63/URL-Short.h | 46 + .../Asn_J2735/include/asn_j2735_r63/UTCTime.h | 47 + .../include/asn_j2735_r63/UTF8String.h | 60 + .../include/asn_j2735_r63/UUIDType.h | 42 + .../include/asn_j2735_r63/UniqueMSGID.h | 46 + .../include/asn_j2735_r63/UniversalString.h | 35 + .../asn_j2735_r63/UserSizeAndBehaviour.h | 55 + .../include/asn_j2735_r63/VINstring.h | 46 + .../Asn_J2735/include/asn_j2735_r63/VType.h | 69 + .../include/asn_j2735_r63/ValidRegion.h | 65 + .../asn_j2735_r63/VehicleClassification.h | 72 + .../include/asn_j2735_r63/VehicleData.h | 55 + .../asn_j2735_r63/VehicleDescriptionType.h | 42 + .../include/asn_j2735_r63/VehicleEventFlags.h | 63 + .../asn_j2735_r63/VehicleGroupAffected.h | 89 + .../include/asn_j2735_r63/VehicleHeight.h | 46 + .../include/asn_j2735_r63/VehicleID.h | 53 + .../include/asn_j2735_r63/VehicleIdent.h | 80 + .../include/asn_j2735_r63/VehicleLength.h | 46 + .../include/asn_j2735_r63/VehicleMass.h | 46 + .../asn_j2735_r63/VehicleSafetyExtensions.h | 56 + .../include/asn_j2735_r63/VehicleSize.h | 42 + .../asn_j2735_r63/VehicleSizeConfidence.h | 42 + .../include/asn_j2735_r63/VehicleStatus.h | 157 ++ .../VehicleStatusDeviceTypeTag.h | 83 + .../asn_j2735_r63/VehicleStatusRequest.h | 50 + .../asn_j2735_r63/VehicleStatusRequestList.h | 47 + .../asn_j2735_r63/VehicleToLanePosition.h | 46 + .../asn_j2735_r63/VehicleToLanePositionList.h | 47 + .../include/asn_j2735_r63/VehicleType.h | 70 + .../include/asn_j2735_r63/VehicleWidth.h | 46 + .../include/asn_j2735_r63/Velocity.h | 46 + .../include/asn_j2735_r63/VertOffset-B07.h | 46 + .../include/asn_j2735_r63/VertOffset-B08.h | 46 + .../include/asn_j2735_r63/VertOffset-B09.h | 46 + .../include/asn_j2735_r63/VertOffset-B10.h | 46 + .../include/asn_j2735_r63/VertOffset-B11.h | 46 + .../include/asn_j2735_r63/VertOffset-B12.h | 46 + .../asn_j2735_r63/VerticalAcceleration.h | 46 + .../VerticalAccelerationThreshold.h | 55 + .../include/asn_j2735_r63/VerticalOffset.h | 68 + .../include/asn_j2735_r63/VideotexString.h | 34 + .../include/asn_j2735_r63/VisibleString.h | 36 + .../include/asn_j2735_r63/WaitOnStopline.h | 45 + .../include/asn_j2735_r63/WeatherProbe.h | 53 + .../include/asn_j2735_r63/WeatherReport.h | 54 + .../asn_j2735_r63/WheelEndElectFault.h | 55 + .../include/asn_j2735_r63/WheelSensorStatus.h | 55 + .../include/asn_j2735_r63/WiperRate.h | 46 + .../include/asn_j2735_r63/WiperSet.h | 44 + .../include/asn_j2735_r63/WiperStatus.h | 61 + .../include/asn_j2735_r63/WorkZone.h | 69 + .../include/asn_j2735_r63/YawDetected.h | 44 + .../Asn_J2735/include/asn_j2735_r63/YawRate.h | 46 + .../include/asn_j2735_r63/YawRateConfidence.h | 59 + .../Asn_J2735/include/asn_j2735_r63/Year.h | 46 + .../include/asn_j2735_r63/ZoneLength.h | 46 + .../Asn_J2735/include/asn_j2735_r63/Zoom.h | 46 + .../include/asn_j2735_r63/asn_SEQUENCE_OF.h | 52 + .../include/asn_j2735_r63/asn_SET_OF.h | 72 + .../include/asn_j2735_r63/asn_application.h | 171 ++ .../include/asn_j2735_r63/asn_bit_data.h | 83 + .../include/asn_j2735_r63/asn_codecs.h | 108 + .../include/asn_j2735_r63/asn_codecs_prim.h | 51 + .../include/asn_j2735_r63/asn_internal.h | 153 ++ .../Asn_J2735/include/asn_j2735_r63/asn_ioc.h | 51 + .../include/asn_j2735_r63/asn_random_fill.h | 51 + .../include/asn_j2735_r63/asn_system.h | 150 + .../include/asn_j2735_r63/ber_decoder.h | 66 + .../include/asn_j2735_r63/ber_tlv_length.h | 50 + .../include/asn_j2735_r63/ber_tlv_tag.h | 60 + .../include/asn_j2735_r63/constr_CHOICE.h | 80 + .../include/asn_j2735_r63/constr_SEQUENCE.h | 68 + .../asn_j2735_r63/constr_SEQUENCE_OF.h | 41 + .../include/asn_j2735_r63/constr_SET.h | 86 + .../include/asn_j2735_r63/constr_SET_OF.h | 49 + .../include/asn_j2735_r63/constr_TYPE.h | 262 ++ .../include/asn_j2735_r63/constraints.h | 62 + .../include/asn_j2735_r63/der_encoder.h | 68 + .../include/asn_j2735_r63/oer_decoder.h | 72 + .../include/asn_j2735_r63/oer_encoder.h | 70 + .../include/asn_j2735_r63/oer_support.h | 47 + .../include/asn_j2735_r63/per_decoder.h | 82 + .../include/asn_j2735_r63/per_encoder.h | 93 + .../include/asn_j2735_r63/per_opentype.h | 44 + .../include/asn_j2735_r63/per_support.h | 130 + .../Asn_J2735/include/asn_j2735_r63/version.h | 14 + .../include/asn_j2735_r63/xer_decoder.h | 106 + .../include/asn_j2735_r63/xer_encoder.h | 83 + .../include/asn_j2735_r63/xer_support.h | 55 + .../src/r41/AccelSteerYawRateConfidence.c | 80 + src/tmx/Asn_J2735/src/r41/Acceleration.c | 147 + .../src/r41/AccelerationConfidence.c | 159 ++ .../Asn_J2735/src/r41/AccelerationSet4Way.c | 148 + src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c | 112 + src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c | 58 + src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c | 153 ++ src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c | 153 ++ src/tmx/Asn_J2735/src/r41/Altitude.c | 70 + .../Asn_J2735/src/r41/AltitudeConfidence.c | 175 ++ src/tmx/Asn_J2735/src/r41/AltitudeValue.c | 147 + .../Asn_J2735/src/r41/AmbientAirPressure.c | 147 + .../Asn_J2735/src/r41/AmbientAirTemperature.c | 147 + src/tmx/Asn_J2735/src/r41/Angle.c | 147 + .../Asn_J2735/src/r41/AnimalPropelledType.c | 153 ++ src/tmx/Asn_J2735/src/r41/AnimalType.c | 153 ++ src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c | 148 + .../Asn_J2735/src/r41/AntiLockBrakeStatus.c | 151 + src/tmx/Asn_J2735/src/r41/ApproachID.c | 147 + src/tmx/Asn_J2735/src/r41/Attachment.c | 159 ++ src/tmx/Asn_J2735/src/r41/AttachmentRadius.c | 147 + .../Asn_J2735/src/r41/AuxiliaryBrakeStatus.c | 151 + src/tmx/Asn_J2735/src/r41/AxleLocation.c | 147 + src/tmx/Asn_J2735/src/r41/AxleWeight.c | 147 + src/tmx/Asn_J2735/src/r41/BIT_STRING.c | 189 ++ src/tmx/Asn_J2735/src/r41/BOOLEAN.c | 282 ++ src/tmx/Asn_J2735/src/r41/BSMblob.c | 148 + .../Asn_J2735/src/r41/BasicSafetyMessage.c | 92 + .../src/r41/BasicSafetyMessageVerbose.c | 212 ++ .../Asn_J2735/src/r41/BrakeAppliedPressure.c | 175 ++ .../Asn_J2735/src/r41/BrakeAppliedStatus.c | 125 + src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c | 149 + src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c | 148 + src/tmx/Asn_J2735/src/r41/BumperHeightFront.c | 147 + src/tmx/Asn_J2735/src/r41/BumperHeightRear.c | 147 + src/tmx/Asn_J2735/src/r41/BumperHeights.c | 70 + src/tmx/Asn_J2735/src/r41/CargoWeight.c | 147 + src/tmx/Asn_J2735/src/r41/Circle.c | 233 ++ src/tmx/Asn_J2735/src/r41/CodeWord.c | 148 + .../Asn_J2735/src/r41/CoefficientOfFriction.c | 147 + .../Asn_J2735/src/r41/CommonSafetyRequest.c | 174 ++ src/tmx/Asn_J2735/src/r41/ComputedLane.c | 248 ++ src/tmx/Asn_J2735/src/r41/ConfidenceSet.c | 112 + src/tmx/Asn_J2735/src/r41/ConnectingLane.c | 72 + src/tmx/Asn_J2735/src/r41/Connection.c | 102 + .../src/r41/ConnectionManeuverAssist.c | 112 + src/tmx/Asn_J2735/src/r41/ConnectsToList.c | 58 + src/tmx/Asn_J2735/src/r41/Count.c | 147 + src/tmx/Asn_J2735/src/r41/DDate.c | 80 + src/tmx/Asn_J2735/src/r41/DDateTime.c | 112 + src/tmx/Asn_J2735/src/r41/DDay.c | 147 + src/tmx/Asn_J2735/src/r41/DFullTime.c | 100 + src/tmx/Asn_J2735/src/r41/DHour.c | 147 + src/tmx/Asn_J2735/src/r41/DMinute.c | 147 + src/tmx/Asn_J2735/src/r41/DMonth.c | 147 + src/tmx/Asn_J2735/src/r41/DMonthDay.c | 70 + src/tmx/Asn_J2735/src/r41/DOffset.c | 147 + src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c | 125 + src/tmx/Asn_J2735/src/r41/DSRCmsgID.c | 179 ++ src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c | 147 + src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c | 147 + src/tmx/Asn_J2735/src/r41/DSecond.c | 147 + src/tmx/Asn_J2735/src/r41/DSecond2.c | 147 + src/tmx/Asn_J2735/src/r41/DTime.c | 80 + src/tmx/Asn_J2735/src/r41/DYear.c | 147 + src/tmx/Asn_J2735/src/r41/DYearMonth.c | 70 + src/tmx/Asn_J2735/src/r41/DataParameters.c | 272 ++ src/tmx/Asn_J2735/src/r41/Day.c | 147 + src/tmx/Asn_J2735/src/r41/DayOfWeek.c | 159 ++ src/tmx/Asn_J2735/src/r41/DegreesLat.c | 147 + src/tmx/Asn_J2735/src/r41/DegreesLong.c | 147 + src/tmx/Asn_J2735/src/r41/DeltaAngle.c | 147 + src/tmx/Asn_J2735/src/r41/DescriptiveName.c | 162 ++ src/tmx/Asn_J2735/src/r41/DestinationType.c | 70 + src/tmx/Asn_J2735/src/r41/DirectionOfUse.c | 151 + .../src/r41/DriveAxleLiftAirPressure.c | 147 + src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c | 147 + .../Asn_J2735/src/r41/DriveAxleLubePressure.c | 147 + .../Asn_J2735/src/r41/DriveAxleTemperature.c | 147 + .../Asn_J2735/src/r41/DrivenLineOffsetLg.c | 147 + .../Asn_J2735/src/r41/DrivenLineOffsetSm.c | 147 + src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c | 147 + .../src/r41/EU-Reg-ConnectionManeuverAssist.c | 72 + .../src/r41/EU-Reg-IntersectionState.c | 62 + src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c | 62 + src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c | 60 + .../src/r41/EU-Reg-RestrictionUserType.c | 62 + src/tmx/Asn_J2735/src/r41/Elevation.c | 148 + src/tmx/Asn_J2735/src/r41/Elevation2.c | 147 + .../Asn_J2735/src/r41/ElevationConfidence.c | 175 ++ src/tmx/Asn_J2735/src/r41/EmergencyDetails.c | 147 + .../Asn_J2735/src/r41/EmergencyVehicleAlert.c | 162 ++ src/tmx/Asn_J2735/src/r41/EmissionType.c | 155 ++ src/tmx/Asn_J2735/src/r41/EnabledLaneList.c | 58 + src/tmx/Asn_J2735/src/r41/EssMobileFriction.c | 147 + src/tmx/Asn_J2735/src/r41/EssPrecipRate.c | 147 + .../Asn_J2735/src/r41/EssPrecipSituation.c | 173 ++ src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c | 149 + src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c | 147 + src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c | 147 + src/tmx/Asn_J2735/src/r41/EventFlags.c | 147 + src/tmx/Asn_J2735/src/r41/ExitService.c | 218 ++ src/tmx/Asn_J2735/src/r41/Extent.c | 167 ++ src/tmx/Asn_J2735/src/r41/ExteriorLights.c | 147 + .../Asn_J2735/src/r41/FullPositionVector.c | 152 ++ src/tmx/Asn_J2735/src/r41/FurtherInfoID.c | 148 + src/tmx/Asn_J2735/src/r41/GPSstatus.c | 125 + src/tmx/Asn_J2735/src/r41/GenericLane.c | 152 ++ src/tmx/Asn_J2735/src/r41/GenericSignage.c | 218 ++ src/tmx/Asn_J2735/src/r41/Heading.c | 147 + src/tmx/Asn_J2735/src/r41/HeadingConfidence.c | 159 ++ src/tmx/Asn_J2735/src/r41/HeadingSlice.c | 148 + src/tmx/Asn_J2735/src/r41/Holiday.c | 147 + src/tmx/Asn_J2735/src/r41/Hour.c | 147 + .../Asn_J2735/src/r41/HumanPropelledType.c | 157 ++ src/tmx/Asn_J2735/src/r41/IA5String.c | 77 + src/tmx/Asn_J2735/src/r41/INTEGER.c | 1023 +++++++ src/tmx/Asn_J2735/src/r41/ITIScodes.c | 147 + src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c | 173 ++ src/tmx/Asn_J2735/src/r41/ITIStext.c | 162 ++ .../src/r41/IncidentResponseEquipment.c | 289 ++ .../Asn_J2735/src/r41/IntersectionCollision.c | 132 + .../Asn_J2735/src/r41/IntersectionGeometry.c | 142 + .../src/r41/IntersectionGeometryList.c | 58 + src/tmx/Asn_J2735/src/r41/IntersectionID.c | 147 + .../src/r41/IntersectionReferenceID.c | 72 + src/tmx/Asn_J2735/src/r41/IntersectionState.c | 172 ++ .../Asn_J2735/src/r41/IntersectionStateList.c | 58 + .../src/r41/IntersectionStatusObject.c | 153 ++ src/tmx/Asn_J2735/src/r41/J1939data.c | 494 ++++ src/tmx/Asn_J2735/src/r41/JPN-Angle.c | 147 + src/tmx/Asn_J2735/src/r41/JPN-Elevation.c | 147 + src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c | 147 + .../src/r41/JPN-Reg-LaneDataAttribute.c | 45 + .../Asn_J2735/src/r41/JPN-Reg-MovementEvent.c | 112 + .../src/r41/JPN-Reg-NodeOffsetPoint.c | 71 + .../Asn_J2735/src/r41/JPN-Reg-Position3D.c | 80 + src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c | 150 + .../src/r41/LaneAttributes-Barrier.c | 153 ++ .../Asn_J2735/src/r41/LaneAttributes-Bike.c | 153 ++ .../src/r41/LaneAttributes-Crosswalk.c | 153 ++ .../src/r41/LaneAttributes-Parking.c | 153 ++ .../src/r41/LaneAttributes-Sidewalk.c | 153 ++ .../src/r41/LaneAttributes-Striping.c | 153 ++ .../src/r41/LaneAttributes-TrackedVehicle.c | 153 ++ .../src/r41/LaneAttributes-Vehicle.c | 153 ++ src/tmx/Asn_J2735/src/r41/LaneAttributes.c | 92 + src/tmx/Asn_J2735/src/r41/LaneConnectionID.c | 147 + src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c | 121 + .../Asn_J2735/src/r41/LaneDataAttributeList.c | 58 + src/tmx/Asn_J2735/src/r41/LaneDirection.c | 153 ++ src/tmx/Asn_J2735/src/r41/LaneID.c | 147 + src/tmx/Asn_J2735/src/r41/LaneList.c | 58 + src/tmx/Asn_J2735/src/r41/LaneNumber.c | 148 + src/tmx/Asn_J2735/src/r41/LaneSharing.c | 153 ++ .../Asn_J2735/src/r41/LaneTypeAttributes.c | 131 + src/tmx/Asn_J2735/src/r41/LaneWidth.c | 147 + src/tmx/Asn_J2735/src/r41/Latitude.c | 147 + src/tmx/Asn_J2735/src/r41/LatitudeDMS.c | 147 + src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c | 80 + src/tmx/Asn_J2735/src/r41/LayerID.c | 147 + src/tmx/Asn_J2735/src/r41/LayerType.c | 161 ++ src/tmx/Asn_J2735/src/r41/LightbarInUse.c | 163 ++ src/tmx/Asn_J2735/src/r41/Location-quality.c | 159 ++ src/tmx/Asn_J2735/src/r41/Location-tech.c | 161 ++ src/tmx/Asn_J2735/src/r41/Longitude.c | 147 + src/tmx/Asn_J2735/src/r41/LongitudeDMS.c | 147 + src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c | 80 + src/tmx/Asn_J2735/src/r41/MUTCDCode.c | 159 ++ .../Asn_J2735/src/r41/ManeuverAssistList.c | 58 + src/tmx/Asn_J2735/src/r41/MapData.c | 162 ++ src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c | 147 + .../Asn_J2735/src/r41/MergeDivergeNodeAngle.c | 147 + src/tmx/Asn_J2735/src/r41/MinTimetoChange.c | 147 + src/tmx/Asn_J2735/src/r41/Minute.c | 147 + src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c | 147 + src/tmx/Asn_J2735/src/r41/MinutesAngle.c | 147 + src/tmx/Asn_J2735/src/r41/MinutesDuration.c | 147 + src/tmx/Asn_J2735/src/r41/MobilityNeeds.c | 70 + src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c | 59 + src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c | 149 + .../Asn_J2735/src/r41/ModeOfTransportType.c | 151 + src/tmx/Asn_J2735/src/r41/Month.c | 147 + .../src/r41/MotorizedPropelledType.c | 157 ++ src/tmx/Asn_J2735/src/r41/MovementEvent.c | 92 + src/tmx/Asn_J2735/src/r41/MovementEventList.c | 58 + src/tmx/Asn_J2735/src/r41/MovementList.c | 58 + .../Asn_J2735/src/r41/MovementPhaseState.c | 163 ++ src/tmx/Asn_J2735/src/r41/MovementState.c | 102 + src/tmx/Asn_J2735/src/r41/MsgCRC.c | 148 + src/tmx/Asn_J2735/src/r41/MsgCount.c | 147 + .../Asn_J2735/src/r41/MultiVehicleResponse.c | 151 + src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c | 130 + src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c | 147 + src/tmx/Asn_J2735/src/r41/NMEA-Payload.c | 148 + src/tmx/Asn_J2735/src/r41/NMEA-Revision.c | 159 ++ src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c | 148 + src/tmx/Asn_J2735/src/r41/NativeEnumerated.c | 207 ++ src/tmx/Asn_J2735/src/r41/NativeInteger.c | 332 +++ src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-20b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-22b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-24b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-26b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-28b.c | 70 + src/tmx/Asn_J2735/src/r41/Node-XY-32b.c | 70 + src/tmx/Asn_J2735/src/r41/Node.c | 72 + src/tmx/Asn_J2735/src/r41/NodeAttribute.c | 169 ++ src/tmx/Asn_J2735/src/r41/NodeAttributeList.c | 58 + src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c | 122 + src/tmx/Asn_J2735/src/r41/NodeList.c | 58 + src/tmx/Asn_J2735/src/r41/NodeList2.c | 71 + src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c | 131 + src/tmx/Asn_J2735/src/r41/NodeSet.c | 58 + .../src/r41/NumberOfParticipantsInCluster.c | 153 ++ src/tmx/Asn_J2735/src/r41/OCTET_STRING.c | 1805 ++++++++++++ src/tmx/Asn_J2735/src/r41/ObjectCount.c | 147 + src/tmx/Asn_J2735/src/r41/ObstacleDirection.c | 142 + src/tmx/Asn_J2735/src/r41/ObstacleDistance.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B10.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B11.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B12.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B13.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B14.c | 147 + src/tmx/Asn_J2735/src/r41/Offset-B16.c | 147 + src/tmx/Asn_J2735/src/r41/Offsets.c | 148 + src/tmx/Asn_J2735/src/r41/OverlayLaneList.c | 58 + src/tmx/Asn_J2735/src/r41/PathHistory.c | 596 ++++ .../src/r41/PathHistoryPointType-01.c | 272 ++ .../src/r41/PathHistoryPointType-02.c | 148 + .../src/r41/PathHistoryPointType-03.c | 148 + .../src/r41/PathHistoryPointType-04.c | 148 + .../src/r41/PathHistoryPointType-05.c | 148 + .../src/r41/PathHistoryPointType-06.c | 148 + .../src/r41/PathHistoryPointType-07.c | 148 + .../src/r41/PathHistoryPointType-08.c | 148 + .../src/r41/PathHistoryPointType-09.c | 148 + .../src/r41/PathHistoryPointType-10.c | 148 + src/tmx/Asn_J2735/src/r41/PathPrediction.c | 130 + src/tmx/Asn_J2735/src/r41/Payload.c | 148 + src/tmx/Asn_J2735/src/r41/PayloadData.c | 148 + .../src/r41/PedestrianBicycleDetect.c | 125 + src/tmx/Asn_J2735/src/r41/PersonalAssistive.c | 153 ++ .../Asn_J2735/src/r41/PersonalClusterRadius.c | 147 + .../src/r41/PersonalCrossingInProgress.c | 125 + .../src/r41/PersonalCrossingRequest.c | 125 + .../src/r41/PersonalDeviceUsageState.c | 153 ++ .../src/r41/PersonalDeviceUserType.c | 155 ++ .../src/r41/PersonalMobilityMessage.c | 195 ++ .../r41/PersonalMobilityMessageStatusType.c | 155 ++ .../Asn_J2735/src/r41/PersonalSafetyMessage.c | 312 +++ src/tmx/Asn_J2735/src/r41/Position3D-2.c | 92 + src/tmx/Asn_J2735/src/r41/Position3D.c | 82 + .../Asn_J2735/src/r41/PositionConfidence.c | 175 ++ .../Asn_J2735/src/r41/PositionConfidenceSet.c | 148 + .../Asn_J2735/src/r41/PositionalAccuracy.c | 148 + .../Asn_J2735/src/r41/PreemptPriorityList.c | 58 + .../src/r41/PrioritizationResponse.c | 80 + .../src/r41/PrioritizationResponseList.c | 58 + .../src/r41/PrioritizationResponseStatus.c | 157 ++ src/tmx/Asn_J2735/src/r41/Priority.c | 148 + .../Asn_J2735/src/r41/ProbeDataManagement.c | 338 +++ .../Asn_J2735/src/r41/ProbeSegmentNumber.c | 147 + src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c | 204 ++ .../Asn_J2735/src/r41/PropelledInformation.c | 81 + .../r41/PublicSafetyAndRoadWorkerActivity.c | 153 ++ .../r41/PublicSafetyDirectingTrafficSubType.c | 153 ++ .../PublicSafetyEventResponderWorkerType.c | 161 ++ src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c | 194 ++ src/tmx/Asn_J2735/src/r41/RTCM-ID.c | 147 + src/tmx/Asn_J2735/src/r41/RTCM-Payload.c | 148 + src/tmx/Asn_J2735/src/r41/RTCM-Revision.c | 179 ++ src/tmx/Asn_J2735/src/r41/RTCMHeader.c | 148 + src/tmx/Asn_J2735/src/r41/RTCMPackage.c | 1302 +++++++++ src/tmx/Asn_J2735/src/r41/RTCMmsg.c | 82 + src/tmx/Asn_J2735/src/r41/RainSensor.c | 159 ++ src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c | 45 + .../src/r41/Reg-ConnectionManeuverAssist.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-Intersection.c | 45 + .../Asn_J2735/src/r41/Reg-IntersectionState.c | 45 + .../Asn_J2735/src/r41/Reg-LaneAttributes.c | 45 + .../Asn_J2735/src/r41/Reg-LaneDataAttribute.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-MapData.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-MovementState.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c | 45 + .../Asn_J2735/src/r41/Reg-NodeOffsetPoint.c | 45 + .../src/r41/Reg-PersonalMobilityMessage.c | 45 + .../src/r41/Reg-PersonalSafetyMessage.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-Position3D.c | 45 + .../src/r41/Reg-RestrictionUserType.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c | 45 + src/tmx/Asn_J2735/src/r41/Reg-SPAT.c | 45 + .../Asn_J2735/src/r41/Reg-SignalControlZone.c | 45 + src/tmx/Asn_J2735/src/r41/RegionList.c | 58 + src/tmx/Asn_J2735/src/r41/RegionOffsets.c | 172 ++ src/tmx/Asn_J2735/src/r41/RegionPointSet.c | 72 + .../Asn_J2735/src/r41/RegionalAdvisorySpeed.c | 125 + .../Asn_J2735/src/r41/RegionalComputedLane.c | 125 + .../r41/RegionalConnectionManeuverAssist.c | 125 + .../Asn_J2735/src/r41/RegionalGenericLane.c | 125 + .../Asn_J2735/src/r41/RegionalIntersection.c | 125 + .../src/r41/RegionalIntersectionState.c | 125 + .../src/r41/RegionalLaneAttributes.c | 125 + .../src/r41/RegionalLaneDataAttribute.c | 125 + src/tmx/Asn_J2735/src/r41/RegionalMapData.c | 125 + .../Asn_J2735/src/r41/RegionalMovementEvent.c | 125 + .../Asn_J2735/src/r41/RegionalMovementState.c | 125 + .../Asn_J2735/src/r41/RegionalNodeAttribute.c | 125 + .../src/r41/RegionalNodeAttributeList.c | 58 + .../src/r41/RegionalNodeOffsetPoint.c | 125 + .../src/r41/RegionalPersonalMobilityMessage.c | 125 + .../src/r41/RegionalPersonalSafetyMessage.c | 125 + .../Asn_J2735/src/r41/RegionalPosition3D.c | 125 + .../src/r41/RegionalRestrictionUserType.c | 125 + .../Asn_J2735/src/r41/RegionalRoadSegment.c | 125 + src/tmx/Asn_J2735/src/r41/RegionalSPAT.c | 125 + .../src/r41/RegionalSignalControlZone.c | 125 + .../Asn_J2735/src/r41/RegulatorySpeedLimit.c | 70 + src/tmx/Asn_J2735/src/r41/RequestID.c | 147 + src/tmx/Asn_J2735/src/r41/RequestedItem.c | 181 ++ .../src/r41/ResponderGroupAffected.c | 173 ++ src/tmx/Asn_J2735/src/r41/ResponseType.c | 151 + .../Asn_J2735/src/r41/RestrictionAppliesTo.c | 173 ++ .../src/r41/RestrictionClassAssignment.c | 70 + .../Asn_J2735/src/r41/RestrictionClassID.c | 147 + .../Asn_J2735/src/r41/RestrictionClassList.c | 58 + .../Asn_J2735/src/r41/RestrictionUserType.c | 71 + .../src/r41/RestrictionUserTypeList.c | 58 + src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c | 58 + src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c | 147 + src/tmx/Asn_J2735/src/r41/RoadSegment.c | 132 + src/tmx/Asn_J2735/src/r41/RoadSegmentID.c | 147 + src/tmx/Asn_J2735/src/r41/RoadSegmentList.c | 58 + .../src/r41/RoadSegmentReferenceID.c | 72 + src/tmx/Asn_J2735/src/r41/RoadSideAlert.c | 234 ++ src/tmx/Asn_J2735/src/r41/RoadSignID.c | 92 + src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c | 147 + src/tmx/Asn_J2735/src/r41/SPAT.c | 102 + src/tmx/Asn_J2735/src/r41/Sample.c | 130 + src/tmx/Asn_J2735/src/r41/Scale-B12.c | 147 + src/tmx/Asn_J2735/src/r41/SeatCount.c | 147 + src/tmx/Asn_J2735/src/r41/Second.c | 147 + src/tmx/Asn_J2735/src/r41/SecondsAngle.c | 147 + src/tmx/Asn_J2735/src/r41/SegmentAttribute.c | 221 ++ .../Asn_J2735/src/r41/SegmentAttributeList.c | 58 + src/tmx/Asn_J2735/src/r41/ShapePointSet.c | 92 + src/tmx/Asn_J2735/src/r41/SignPrority.c | 147 + .../Asn_J2735/src/r41/SignalControlState.c | 148 + src/tmx/Asn_J2735/src/r41/SignalControlZone.c | 465 ++++ src/tmx/Asn_J2735/src/r41/SignalGroupID.c | 147 + .../Asn_J2735/src/r41/SignalHeadLocation.c | 70 + .../src/r41/SignalHeadLocationList.c | 58 + src/tmx/Asn_J2735/src/r41/SignalReqScheme.c | 148 + src/tmx/Asn_J2735/src/r41/SignalRequest.c | 122 + src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c | 142 + src/tmx/Asn_J2735/src/r41/SignalState.c | 148 + .../Asn_J2735/src/r41/SignalStatusMessage.c | 306 +++ src/tmx/Asn_J2735/src/r41/SirenInUse.c | 151 + src/tmx/Asn_J2735/src/r41/Snapshot.c | 82 + src/tmx/Asn_J2735/src/r41/SnapshotDistance.c | 210 ++ src/tmx/Asn_J2735/src/r41/SnapshotTime.c | 210 ++ src/tmx/Asn_J2735/src/r41/Speed.c | 147 + src/tmx/Asn_J2735/src/r41/SpeedAdvice.c | 147 + src/tmx/Asn_J2735/src/r41/SpeedConfidence.c | 159 ++ src/tmx/Asn_J2735/src/r41/SpeedLimit.c | 218 ++ src/tmx/Asn_J2735/src/r41/SpeedLimitList.c | 58 + src/tmx/Asn_J2735/src/r41/SpeedLimitType.c | 171 ++ .../SpeedandHeadingandThrottleConfidence.c | 148 + .../src/r41/StabilityControlStatus.c | 149 + src/tmx/Asn_J2735/src/r41/StationID.c | 143 + .../src/r41/SteeringAxleLubePressure.c | 147 + .../src/r41/SteeringAxleTemperature.c | 147 + .../Asn_J2735/src/r41/SteeringWheelAngle.c | 148 + .../src/r41/SteeringWheelAngleConfidence.c | 151 + .../src/r41/SteeringWheelAngleRateOfChange.c | 147 + src/tmx/Asn_J2735/src/r41/SummerTime.c | 147 + src/tmx/Asn_J2735/src/r41/SunSensor.c | 147 + src/tmx/Asn_J2735/src/r41/TemporaryID.c | 148 + src/tmx/Asn_J2735/src/r41/TenthSecond.c | 147 + src/tmx/Asn_J2735/src/r41/TermDistance.c | 147 + src/tmx/Asn_J2735/src/r41/TermTime.c | 147 + .../Asn_J2735/src/r41/ThrottleConfidence.c | 151 + src/tmx/Asn_J2735/src/r41/ThrottlePosition.c | 147 + src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c | 112 + src/tmx/Asn_J2735/src/r41/TimeConfidence.c | 223 ++ .../src/r41/TimeIntervalConfidence.c | 147 + src/tmx/Asn_J2735/src/r41/TimeMark.c | 147 + src/tmx/Asn_J2735/src/r41/TimeRemaining.c | 147 + src/tmx/Asn_J2735/src/r41/TireLeakageRate.c | 147 + src/tmx/Asn_J2735/src/r41/TireLocation.c | 147 + src/tmx/Asn_J2735/src/r41/TirePressure.c | 147 + .../src/r41/TirePressureThresholdDetection.c | 161 ++ src/tmx/Asn_J2735/src/r41/TireTemp.c | 147 + .../Asn_J2735/src/r41/TractionControlState.c | 151 + src/tmx/Asn_J2735/src/r41/TrailerWeight.c | 147 + src/tmx/Asn_J2735/src/r41/TransitStatus.c | 153 ++ .../Asn_J2735/src/r41/TransmissionAndSpeed.c | 148 + src/tmx/Asn_J2735/src/r41/TransmissionState.c | 161 ++ src/tmx/Asn_J2735/src/r41/TravelerInfoType.c | 153 ++ .../Asn_J2735/src/r41/TravelerInformation.c | 596 ++++ src/tmx/Asn_J2735/src/r41/TxTime.c | 147 + src/tmx/Asn_J2735/src/r41/UPER-Blob.c | 148 + src/tmx/Asn_J2735/src/r41/UPERframe.c | 112 + src/tmx/Asn_J2735/src/r41/URL-Base.c | 162 ++ src/tmx/Asn_J2735/src/r41/URL-Link.c | 162 ++ src/tmx/Asn_J2735/src/r41/URL-Short.c | 162 ++ src/tmx/Asn_J2735/src/r41/UUIDType.c | 162 ++ src/tmx/Asn_J2735/src/r41/UniqueMSGID.c | 148 + .../Asn_J2735/src/r41/UserSizeAndBehaviour.c | 153 ++ src/tmx/Asn_J2735/src/r41/VINstring.c | 148 + src/tmx/Asn_J2735/src/r41/ValidRegion.c | 155 ++ .../src/r41/VehicleDescriptionType.c | 162 ++ .../Asn_J2735/src/r41/VehicleGroupAffected.c | 215 ++ src/tmx/Asn_J2735/src/r41/VehicleHeight.c | 147 + src/tmx/Asn_J2735/src/r41/VehicleIdent.c | 230 ++ src/tmx/Asn_J2735/src/r41/VehicleLength.c | 147 + src/tmx/Asn_J2735/src/r41/VehicleMass.c | 147 + .../Asn_J2735/src/r41/VehicleRequestStatus.c | 148 + .../src/r41/VehicleSafetyExtension.c | 92 + src/tmx/Asn_J2735/src/r41/VehicleSize.c | 70 + src/tmx/Asn_J2735/src/r41/VehicleStatus.c | 798 ++++++ .../src/r41/VehicleStatusDeviceTypeTag.c | 203 ++ .../Asn_J2735/src/r41/VehicleStatusRequest.c | 192 ++ .../Asn_J2735/src/r41/VehicleToLanePosition.c | 70 + .../src/r41/VehicleToLanePositionList.c | 58 + src/tmx/Asn_J2735/src/r41/VehicleType.c | 177 ++ src/tmx/Asn_J2735/src/r41/VehicleWidth.c | 147 + src/tmx/Asn_J2735/src/r41/Velocity.c | 147 + .../Asn_J2735/src/r41/VerticalAcceleration.c | 147 + .../src/r41/VerticalAccelerationThreshold.c | 125 + src/tmx/Asn_J2735/src/r41/WaitOnStopline.c | 125 + .../Asn_J2735/src/r41/WheelEndElectFault.c | 125 + src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c | 151 + src/tmx/Asn_J2735/src/r41/WiperRate.c | 147 + src/tmx/Asn_J2735/src/r41/WiperStatus.c | 92 + src/tmx/Asn_J2735/src/r41/WiperStatusFront.c | 159 ++ src/tmx/Asn_J2735/src/r41/WiperStatusRear.c | 159 ++ src/tmx/Asn_J2735/src/r41/WorkZone.c | 218 ++ src/tmx/Asn_J2735/src/r41/YawRate.c | 147 + src/tmx/Asn_J2735/src/r41/YawRateConfidence.c | 159 ++ src/tmx/Asn_J2735/src/r41/Year.c | 147 + src/tmx/Asn_J2735/src/r41/ZoneLength.c | 147 + src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c | 41 + src/tmx/Asn_J2735/src/r41/asn_SET_OF.c | 88 + src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c | 312 +++ src/tmx/Asn_J2735/src/r41/ber_decoder.c | 283 ++ src/tmx/Asn_J2735/src/r41/ber_tlv_length.c | 178 ++ src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c | 144 + src/tmx/Asn_J2735/src/r41/constr_CHOICE.c | 1113 ++++++++ src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c | 1422 ++++++++++ .../Asn_J2735/src/r41/constr_SEQUENCE_OF.c | 208 ++ src/tmx/Asn_J2735/src/r41/constr_SET_OF.c | 953 +++++++ src/tmx/Asn_J2735/src/r41/constr_TYPE.c | 77 + src/tmx/Asn_J2735/src/r41/constraints.c | 93 + src/tmx/Asn_J2735/src/r41/der_encoder.c | 199 ++ src/tmx/Asn_J2735/src/r41/per_decoder.c | 93 + src/tmx/Asn_J2735/src/r41/per_encoder.c | 151 + src/tmx/Asn_J2735/src/r41/per_opentype.c | 378 +++ src/tmx/Asn_J2735/src/r41/per_support.c | 483 ++++ src/tmx/Asn_J2735/src/r41/xer_decoder.c | 365 +++ src/tmx/Asn_J2735/src/r41/xer_encoder.c | 67 + src/tmx/Asn_J2735/src/r41/xer_support.c | 233 ++ src/tmx/Asn_J2735/src/r63/ANY.c | 450 +++ .../src/r63/AccelSteerYawRateConfidence.c | 70 + src/tmx/Asn_J2735/src/r63/Acceleration.c | 64 + .../src/r63/AccelerationConfidence.c | 68 + .../Asn_J2735/src/r63/AccelerationSet4Way.c | 80 + src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c | 64 + src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c | 68 + src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c | 64 + src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c | 64 + src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c | 140 + src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c | 181 ++ src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c | 52 + src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c | 62 + src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c | 70 + src/tmx/Asn_J2735/src/r63/Altitude.c | 60 + .../Asn_J2735/src/r63/AltitudeConfidence.c | 84 + src/tmx/Asn_J2735/src/r63/AltitudeValue.c | 64 + .../Asn_J2735/src/r63/AmbientAirPressure.c | 64 + .../Asn_J2735/src/r63/AmbientAirTemperature.c | 64 + src/tmx/Asn_J2735/src/r63/AngularVelocity.c | 60 + .../src/r63/AngularVelocityConfidence.c | 62 + .../Asn_J2735/src/r63/AnimalPropelledType.c | 62 + src/tmx/Asn_J2735/src/r63/AnimalType.c | 62 + src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c | 70 + .../Asn_J2735/src/r63/AntiLockBrakeStatus.c | 60 + src/tmx/Asn_J2735/src/r63/ApproachID.c | 64 + src/tmx/Asn_J2735/src/r63/ApproachOrLane.c | 65 + src/tmx/Asn_J2735/src/r63/Attachment.c | 68 + src/tmx/Asn_J2735/src/r63/AttachmentRadius.c | 64 + src/tmx/Asn_J2735/src/r63/Attitude.c | 70 + .../Asn_J2735/src/r63/AttitudeConfidence.c | 70 + .../Asn_J2735/src/r63/AuxiliaryBrakeStatus.c | 60 + src/tmx/Asn_J2735/src/r63/AxleLocation.c | 64 + src/tmx/Asn_J2735/src/r63/AxleWeight.c | 64 + src/tmx/Asn_J2735/src/r63/AxleWeightList.c | 52 + src/tmx/Asn_J2735/src/r63/AxleWeightSet.c | 62 + src/tmx/Asn_J2735/src/r63/BIT_STRING.c | 656 +++++ src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c | 174 ++ src/tmx/Asn_J2735/src/r63/BOOLEAN.c | 492 ++++ src/tmx/Asn_J2735/src/r63/BSMcoreData.c | 180 ++ .../src/r63/BasicSafetyMessage-addGrpCarma.c | 171 ++ .../Asn_J2735/src/r63/BasicSafetyMessage.c | 310 +++ src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c | 64 + src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c | 100 + .../Asn_J2735/src/r63/BrakeAppliedPressure.c | 84 + .../Asn_J2735/src/r63/BrakeAppliedStatus.c | 70 + src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c | 58 + src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c | 100 + src/tmx/Asn_J2735/src/r63/BumperHeight.c | 64 + src/tmx/Asn_J2735/src/r63/BumperHeights.c | 60 + src/tmx/Asn_J2735/src/r63/CargoWeight.c | 64 + src/tmx/Asn_J2735/src/r63/Circle.c | 70 + .../src/r63/ClassificationConfidence.c | 64 + src/tmx/Asn_J2735/src/r63/CoarseHeading.c | 64 + src/tmx/Asn_J2735/src/r63/CodeWord.c | 65 + .../Asn_J2735/src/r63/CoefficientOfFriction.c | 64 + .../Asn_J2735/src/r63/CommonSafetyRequest.c | 171 ++ src/tmx/Asn_J2735/src/r63/ComputedLane.c | 305 +++ src/tmx/Asn_J2735/src/r63/Confidence.c | 64 + src/tmx/Asn_J2735/src/r63/ConfidenceSet.c | 112 + src/tmx/Asn_J2735/src/r63/ConnectingLane.c | 62 + src/tmx/Asn_J2735/src/r63/Connection.c | 92 + .../r63/ConnectionManeuverAssist-addGrpC.c | 62 + .../src/r63/ConnectionManeuverAssist.c | 181 ++ src/tmx/Asn_J2735/src/r63/ConnectsToList.c | 52 + src/tmx/Asn_J2735/src/r63/Count.c | 64 + src/tmx/Asn_J2735/src/r63/DDate.c | 70 + src/tmx/Asn_J2735/src/r63/DDateTime.c | 112 + src/tmx/Asn_J2735/src/r63/DDay.c | 64 + src/tmx/Asn_J2735/src/r63/DFullTime.c | 90 + src/tmx/Asn_J2735/src/r63/DHour.c | 64 + src/tmx/Asn_J2735/src/r63/DMinute.c | 64 + src/tmx/Asn_J2735/src/r63/DMonth.c | 64 + src/tmx/Asn_J2735/src/r63/DMonthDay.c | 60 + src/tmx/Asn_J2735/src/r63/DOffset.c | 64 + src/tmx/Asn_J2735/src/r63/DSRC_Angle.c | 64 + src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c | 31 + src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c | 64 + src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c | 64 + src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c | 64 + src/tmx/Asn_J2735/src/r63/DSRCmsgID.c | 64 + src/tmx/Asn_J2735/src/r63/DSecond.c | 64 + src/tmx/Asn_J2735/src/r63/DTime.c | 82 + src/tmx/Asn_J2735/src/r63/DYear.c | 64 + src/tmx/Asn_J2735/src/r63/DYearMonth.c | 60 + src/tmx/Asn_J2735/src/r63/DailySchedule.c | 126 + src/tmx/Asn_J2735/src/r63/DataParameters.c | 274 ++ src/tmx/Asn_J2735/src/r63/Day.c | 64 + src/tmx/Asn_J2735/src/r63/DayOfWeek.c | 68 + src/tmx/Asn_J2735/src/r63/DaySchedule.c | 126 + src/tmx/Asn_J2735/src/r63/DegreesLat.c | 64 + src/tmx/Asn_J2735/src/r63/DegreesLong.c | 64 + src/tmx/Asn_J2735/src/r63/DeltaAngle.c | 64 + src/tmx/Asn_J2735/src/r63/DeltaTime.c | 64 + src/tmx/Asn_J2735/src/r63/DescriptiveName.c | 79 + .../src/r63/DetectedObjectCommonData.c | 222 ++ .../Asn_J2735/src/r63/DetectedObjectData.c | 62 + .../Asn_J2735/src/r63/DetectedObjectList.c | 52 + .../src/r63/DetectedObjectOptionalData.c | 75 + .../Asn_J2735/src/r63/DetectedObstacleData.c | 60 + src/tmx/Asn_J2735/src/r63/DetectedVRUData.c | 82 + .../Asn_J2735/src/r63/DetectedVehicleData.c | 142 + src/tmx/Asn_J2735/src/r63/DirectionOfUse.c | 60 + src/tmx/Asn_J2735/src/r63/DisabledVehicle.c | 95 + src/tmx/Asn_J2735/src/r63/DistanceUnits.c | 68 + .../src/r63/DriveAxleLiftAirPressure.c | 64 + src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c | 64 + .../Asn_J2735/src/r63/DriveAxleLubePressure.c | 64 + .../Asn_J2735/src/r63/DriveAxleTemperature.c | 64 + .../Asn_J2735/src/r63/DrivenLineOffsetLg.c | 64 + .../Asn_J2735/src/r63/DrivenLineOffsetSm.c | 64 + src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c | 64 + src/tmx/Asn_J2735/src/r63/Duration.c | 64 + src/tmx/Asn_J2735/src/r63/EXTERNAL.c | 152 ++ .../Asn_J2735/src/r63/ElevationConfidence.c | 84 + src/tmx/Asn_J2735/src/r63/EmergencyDetails.c | 102 + .../Asn_J2735/src/r63/EmergencyVehicleAlert.c | 231 ++ src/tmx/Asn_J2735/src/r63/EmissionType.c | 64 + src/tmx/Asn_J2735/src/r63/EnabledLaneList.c | 52 + src/tmx/Asn_J2735/src/r63/EpochMins.c | 70 + src/tmx/Asn_J2735/src/r63/EquipmentType.c | 62 + src/tmx/Asn_J2735/src/r63/EssMobileFriction.c | 64 + src/tmx/Asn_J2735/src/r63/EssPrecipRate.c | 64 + .../Asn_J2735/src/r63/EssPrecipSituation.c | 82 + src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c | 58 + src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c | 64 + src/tmx/Asn_J2735/src/r63/EventDescription.c | 260 ++ src/tmx/Asn_J2735/src/r63/ExitService.c | 151 + src/tmx/Asn_J2735/src/r63/Extent.c | 84 + src/tmx/Asn_J2735/src/r63/ExteriorLights.c | 70 + src/tmx/Asn_J2735/src/r63/FuelType.c | 64 + .../Asn_J2735/src/r63/FullPositionVector.c | 142 + src/tmx/Asn_J2735/src/r63/FurtherInfoID.c | 65 + src/tmx/Asn_J2735/src/r63/GNSSstatus.c | 70 + src/tmx/Asn_J2735/src/r63/GenericLane.c | 221 ++ src/tmx/Asn_J2735/src/r63/GenericLocations.c | 246 ++ src/tmx/Asn_J2735/src/r63/GenericSignage.c | 151 + src/tmx/Asn_J2735/src/r63/GeographicalPath.c | 278 ++ .../Asn_J2735/src/r63/GeometricProjection.c | 171 ++ src/tmx/Asn_J2735/src/r63/GraphicString.c | 58 + src/tmx/Asn_J2735/src/r63/GrossDistance.c | 64 + src/tmx/Asn_J2735/src/r63/GrossSpeed.c | 64 + src/tmx/Asn_J2735/src/r63/Header.c | 82 + src/tmx/Asn_J2735/src/r63/Heading.c | 64 + src/tmx/Asn_J2735/src/r63/HeadingConfidence.c | 68 + src/tmx/Asn_J2735/src/r63/HeadingSlice.c | 70 + src/tmx/Asn_J2735/src/r63/Holiday.c | 56 + src/tmx/Asn_J2735/src/r63/Hour.c | 64 + .../Asn_J2735/src/r63/HumanPropelledType.c | 66 + src/tmx/Asn_J2735/src/r63/IA5String.c | 97 + src/tmx/Asn_J2735/src/r63/INTEGER.c | 1752 ++++++++++++ src/tmx/Asn_J2735/src/r63/INTEGER_oer.c | 179 ++ src/tmx/Asn_J2735/src/r63/ITIScodes.c | 64 + src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c | 151 + src/tmx/Asn_J2735/src/r63/ITIStext.c | 79 + src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c | 79 + src/tmx/Asn_J2735/src/r63/Id128b.c | 65 + src/tmx/Asn_J2735/src/r63/Id64b.c | 65 + .../src/r63/IncidentResponseEquipment.c | 198 ++ .../src/r63/IntersectionAccessPoint.c | 75 + .../Asn_J2735/src/r63/IntersectionCollision.c | 221 ++ .../Asn_J2735/src/r63/IntersectionGeometry.c | 211 ++ .../src/r63/IntersectionGeometryList.c | 52 + src/tmx/Asn_J2735/src/r63/IntersectionID.c | 64 + .../src/r63/IntersectionReferenceID.c | 62 + .../src/r63/IntersectionState-addGrpC.c | 52 + src/tmx/Asn_J2735/src/r63/IntersectionState.c | 221 ++ .../Asn_J2735/src/r63/IntersectionStateList.c | 52 + .../src/r63/IntersectionStatusObject.c | 70 + src/tmx/Asn_J2735/src/r63/IsDolly.c | 31 + .../Asn_J2735/src/r63/Iso3833VehicleType.c | 64 + src/tmx/Asn_J2735/src/r63/J1939data.c | 142 + .../src/r63/LaneAttributes-Barrier.c | 70 + .../Asn_J2735/src/r63/LaneAttributes-Bike.c | 70 + .../src/r63/LaneAttributes-Crosswalk.c | 70 + .../src/r63/LaneAttributes-Parking.c | 70 + .../src/r63/LaneAttributes-Sidewalk.c | 70 + .../src/r63/LaneAttributes-Striping.c | 70 + .../src/r63/LaneAttributes-TrackedVehicle.c | 70 + .../src/r63/LaneAttributes-Vehicle.c | 70 + src/tmx/Asn_J2735/src/r63/LaneAttributes.c | 82 + src/tmx/Asn_J2735/src/r63/LaneConnectionID.c | 64 + .../src/r63/LaneDataAttribute-addGrpB.c | 35 + src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c | 194 ++ .../Asn_J2735/src/r63/LaneDataAttributeList.c | 52 + src/tmx/Asn_J2735/src/r63/LaneDirection.c | 70 + src/tmx/Asn_J2735/src/r63/LaneID.c | 64 + src/tmx/Asn_J2735/src/r63/LaneList.c | 52 + src/tmx/Asn_J2735/src/r63/LaneSharing.c | 70 + .../Asn_J2735/src/r63/LaneTypeAttributes.c | 125 + src/tmx/Asn_J2735/src/r63/LaneWidth.c | 64 + src/tmx/Asn_J2735/src/r63/Latitude.c | 64 + src/tmx/Asn_J2735/src/r63/LatitudeDMS.c | 64 + src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c | 70 + src/tmx/Asn_J2735/src/r63/LayerID.c | 64 + src/tmx/Asn_J2735/src/r63/LayerType.c | 70 + src/tmx/Asn_J2735/src/r63/LightbarInUse.c | 68 + src/tmx/Asn_J2735/src/r63/Location-quality.c | 68 + src/tmx/Asn_J2735/src/r63/Location-tech.c | 74 + src/tmx/Asn_J2735/src/r63/Longitude.c | 64 + src/tmx/Asn_J2735/src/r63/LongitudeDMS.c | 64 + src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c | 70 + src/tmx/Asn_J2735/src/r63/MUTCDCode.c | 68 + .../Asn_J2735/src/r63/ManeuverAssistList.c | 52 + src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c | 52 + src/tmx/Asn_J2735/src/r63/MapData.c | 211 ++ src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c | 64 + .../Asn_J2735/src/r63/MeasurementTimeOffset.c | 64 + .../Asn_J2735/src/r63/MergeDivergeNodeAngle.c | 64 + src/tmx/Asn_J2735/src/r63/MessageBLOB.c | 65 + src/tmx/Asn_J2735/src/r63/MessageFrame.c | 597 ++++ src/tmx/Asn_J2735/src/r63/MinTimetoChange.c | 64 + src/tmx/Asn_J2735/src/r63/Minute.c | 64 + src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c | 64 + src/tmx/Asn_J2735/src/r63/MinutesAngle.c | 64 + src/tmx/Asn_J2735/src/r63/MinutesDuration.c | 64 + src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c | 79 + .../src/r63/MobilityECEFCoordinate.c | 64 + .../Asn_J2735/src/r63/MobilityECEFOffset.c | 70 + .../src/r63/MobilityECEFOffsetCoordinate.c | 64 + src/tmx/Asn_J2735/src/r63/MobilityGUID.c | 79 + src/tmx/Asn_J2735/src/r63/MobilityHeader.c | 90 + src/tmx/Asn_J2735/src/r63/MobilityLocation.c | 80 + .../src/r63/MobilityLocationOffsets.c | 52 + src/tmx/Asn_J2735/src/r63/MobilityOperation.c | 60 + .../Asn_J2735/src/r63/MobilityParameters.c | 79 + src/tmx/Asn_J2735/src/r63/MobilityPath.c | 60 + src/tmx/Asn_J2735/src/r63/MobilityPlanType.c | 64 + src/tmx/Asn_J2735/src/r63/MobilityRequest.c | 122 + src/tmx/Asn_J2735/src/r63/MobilityResponse.c | 60 + .../Asn_J2735/src/r63/MobilityResponseFlag.c | 31 + src/tmx/Asn_J2735/src/r63/MobilityStaticID.c | 79 + src/tmx/Asn_J2735/src/r63/MobilityStrategy.c | 79 + src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c | 79 + src/tmx/Asn_J2735/src/r63/MobilityUrgency.c | 64 + src/tmx/Asn_J2735/src/r63/Month.c | 64 + .../src/r63/MotorizedPropelledType.c | 66 + .../Asn_J2735/src/r63/MovementEvent-addGrpB.c | 102 + src/tmx/Asn_J2735/src/r63/MovementEvent.c | 161 ++ src/tmx/Asn_J2735/src/r63/MovementEventList.c | 52 + src/tmx/Asn_J2735/src/r63/MovementList.c | 52 + .../Asn_J2735/src/r63/MovementPhaseState.c | 72 + src/tmx/Asn_J2735/src/r63/MovementState.c | 171 ++ src/tmx/Asn_J2735/src/r63/MsgCRC.c | 65 + .../Asn_J2735/src/r63/MultiVehicleResponse.c | 60 + src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c | 64 + src/tmx/Asn_J2735/src/r63/NMEA-Payload.c | 65 + src/tmx/Asn_J2735/src/r63/NMEA-Revision.c | 68 + src/tmx/Asn_J2735/src/r63/NMEAcorrections.c | 181 ++ src/tmx/Asn_J2735/src/r63/NULL.c | 299 ++ src/tmx/Asn_J2735/src/r63/NativeEnumerated.c | 375 +++ .../Asn_J2735/src/r63/NativeEnumerated_oer.c | 149 + src/tmx/Asn_J2735/src/r63/NativeInteger.c | 550 ++++ src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c | 99 + src/tmx/Asn_J2735/src/r63/Node-LL-24B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LL-28B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LL-32B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LL-36B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LL-44B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LL-48B.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-20b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-22b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-24b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-26b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-28b.c | 60 + src/tmx/Asn_J2735/src/r63/Node-XY-32b.c | 60 + src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c | 78 + .../Asn_J2735/src/r63/NodeAttributeLLList.c | 52 + .../Asn_J2735/src/r63/NodeAttributeSetLL.c | 191 ++ .../Asn_J2735/src/r63/NodeAttributeSetXY.c | 191 ++ src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c | 78 + .../Asn_J2735/src/r63/NodeAttributeXYList.c | 52 + src/tmx/Asn_J2735/src/r63/NodeLL.c | 62 + src/tmx/Asn_J2735/src/r63/NodeListLL.c | 55 + src/tmx/Asn_J2735/src/r63/NodeListXY.c | 65 + src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c | 125 + .../src/r63/NodeOffsetPointXY-addGrpB.c | 65 + src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c | 125 + src/tmx/Asn_J2735/src/r63/NodeSetLL.c | 52 + src/tmx/Asn_J2735/src/r63/NodeSetXY.c | 52 + src/tmx/Asn_J2735/src/r63/NodeXY.c | 62 + .../src/r63/NumberOfParticipantsInCluster.c | 62 + src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c | 656 +++++ src/tmx/Asn_J2735/src/r63/OCTET_STRING.c | 2419 +++++++++++++++++ src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c | 171 ++ src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c | 509 ++++ src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c | 92 + src/tmx/Asn_J2735/src/r63/ObjectCount.c | 64 + src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c | 58 + src/tmx/Asn_J2735/src/r63/ObjectDistance.c | 64 + src/tmx/Asn_J2735/src/r63/ObjectID.c | 64 + src/tmx/Asn_J2735/src/r63/ObjectType.c | 62 + src/tmx/Asn_J2735/src/r63/ObstacleDetection.c | 135 + src/tmx/Asn_J2735/src/r63/ObstacleDirection.c | 64 + src/tmx/Asn_J2735/src/r63/ObstacleDistance.c | 64 + src/tmx/Asn_J2735/src/r63/ObstacleSize.c | 72 + .../src/r63/ObstacleSizeConfidence.c | 72 + src/tmx/Asn_J2735/src/r63/Offset-B09.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B10.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B11.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B12.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B13.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B14.c | 64 + src/tmx/Asn_J2735/src/r63/Offset-B16.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c | 64 + src/tmx/Asn_J2735/src/r63/OffsetPoint.c | 126 + src/tmx/Asn_J2735/src/r63/OffsetSystem.c | 119 + src/tmx/Asn_J2735/src/r63/OverlayLaneList.c | 52 + src/tmx/Asn_J2735/src/r63/PartII-Id.c | 64 + src/tmx/Asn_J2735/src/r63/PartIIcontent.c | 284 ++ src/tmx/Asn_J2735/src/r63/PathHistory.c | 72 + src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c | 112 + .../Asn_J2735/src/r63/PathHistoryPointList.c | 52 + src/tmx/Asn_J2735/src/r63/PathNode.c | 214 ++ src/tmx/Asn_J2735/src/r63/PathPrediction.c | 60 + src/tmx/Asn_J2735/src/r63/PayloadData.c | 65 + .../src/r63/PedestrianBicycleDetect.c | 31 + src/tmx/Asn_J2735/src/r63/PersonalAssistive.c | 70 + .../Asn_J2735/src/r63/PersonalClusterRadius.c | 64 + .../src/r63/PersonalCrossingInProgress.c | 31 + .../src/r63/PersonalCrossingRequest.c | 31 + .../src/r63/PersonalDeviceUsageState.c | 70 + .../src/r63/PersonalDeviceUserType.c | 64 + .../Asn_J2735/src/r63/PersonalSafetyMessage.c | 381 +++ src/tmx/Asn_J2735/src/r63/PitchDetected.c | 64 + src/tmx/Asn_J2735/src/r63/PitchRate.c | 64 + .../Asn_J2735/src/r63/PitchRateConfidence.c | 68 + .../Asn_J2735/src/r63/PivotPointDescription.c | 70 + src/tmx/Asn_J2735/src/r63/PivotingAllowed.c | 31 + src/tmx/Asn_J2735/src/r63/Point.c | 82 + .../Asn_J2735/src/r63/Position3D-addGrpB.c | 70 + .../Asn_J2735/src/r63/Position3D-addGrpC.c | 50 + .../src/r63/Position3D-addGrpCarma.c | 104 + src/tmx/Asn_J2735/src/r63/Position3D.c | 161 ++ .../Asn_J2735/src/r63/PositionConfidence.c | 84 + .../Asn_J2735/src/r63/PositionConfidenceSet.c | 60 + src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c | 72 + .../Asn_J2735/src/r63/PositionalAccuracy.c | 70 + .../Asn_J2735/src/r63/PreemptPriorityList.c | 52 + .../src/r63/PrioritizationResponse.c | 70 + .../src/r63/PrioritizationResponseList.c | 52 + .../src/r63/PrioritizationResponseStatus.c | 70 + src/tmx/Asn_J2735/src/r63/Priority.c | 65 + .../Asn_J2735/src/r63/PriorityRequestType.c | 62 + .../Asn_J2735/src/r63/PrivilegedEventFlags.c | 70 + src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c | 60 + .../Asn_J2735/src/r63/ProbeDataManagement.c | 315 +++ .../Asn_J2735/src/r63/ProbeSegmentNumber.c | 64 + src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c | 270 ++ .../Asn_J2735/src/r63/PropelledInformation.c | 75 + .../r63/PublicSafetyAndRoadWorkerActivity.c | 70 + .../r63/PublicSafetyDirectingTrafficSubType.c | 70 + .../PublicSafetyEventResponderWorkerType.c | 70 + src/tmx/Asn_J2735/src/r63/RTCM-Revision.c | 62 + src/tmx/Asn_J2735/src/r63/RTCMPackage.c | 62 + src/tmx/Asn_J2735/src/r63/RTCMcorrections.c | 191 ++ src/tmx/Asn_J2735/src/r63/RTCMheader.c | 60 + src/tmx/Asn_J2735/src/r63/RTCMmessage.c | 65 + src/tmx/Asn_J2735/src/r63/RTCMmessageList.c | 52 + src/tmx/Asn_J2735/src/r63/Radius-B12.c | 64 + src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c | 64 + src/tmx/Asn_J2735/src/r63/RainSensor.c | 68 + src/tmx/Asn_J2735/src/r63/RegionId.c | 64 + src/tmx/Asn_J2735/src/r63/RegionList.c | 52 + src/tmx/Asn_J2735/src/r63/RegionOffsets.c | 72 + src/tmx/Asn_J2735/src/r63/RegionPointSet.c | 72 + src/tmx/Asn_J2735/src/r63/RegionalExtension.c | 242 ++ .../Asn_J2735/src/r63/RegulatorySpeedLimit.c | 60 + src/tmx/Asn_J2735/src/r63/RepeatParams.c | 169 ++ src/tmx/Asn_J2735/src/r63/RequestID.c | 64 + .../src/r63/RequestImportanceLevel.c | 84 + src/tmx/Asn_J2735/src/r63/RequestSubRole.c | 84 + src/tmx/Asn_J2735/src/r63/RequestedItem.c | 88 + src/tmx/Asn_J2735/src/r63/RequestedItemList.c | 52 + .../Asn_J2735/src/r63/RequestorDescription.c | 211 ++ .../src/r63/RequestorPositionVector.c | 72 + src/tmx/Asn_J2735/src/r63/RequestorType.c | 102 + .../src/r63/ResponderGroupAffected.c | 82 + src/tmx/Asn_J2735/src/r63/ResponseType.c | 68 + .../Asn_J2735/src/r63/RestrictionAppliesTo.c | 82 + .../src/r63/RestrictionClassAssignment.c | 60 + .../Asn_J2735/src/r63/RestrictionClassID.c | 64 + .../Asn_J2735/src/r63/RestrictionClassList.c | 52 + .../src/r63/RestrictionUserType-addGrpC.c | 52 + .../Asn_J2735/src/r63/RestrictionUserType.c | 144 + .../src/r63/RestrictionUserTypeList.c | 52 + src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c | 52 + src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c | 64 + src/tmx/Asn_J2735/src/r63/RoadSegment.c | 201 ++ src/tmx/Asn_J2735/src/r63/RoadSegmentID.c | 64 + src/tmx/Asn_J2735/src/r63/RoadSegmentList.c | 52 + .../src/r63/RoadSegmentReferenceID.c | 62 + src/tmx/Asn_J2735/src/r63/RoadSideAlert.c | 300 ++ src/tmx/Asn_J2735/src/r63/RoadSignID.c | 82 + src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c | 64 + src/tmx/Asn_J2735/src/r63/RollDetected.c | 64 + src/tmx/Asn_J2735/src/r63/RollRate.c | 64 + .../Asn_J2735/src/r63/RollRateConfidence.c | 68 + src/tmx/Asn_J2735/src/r63/SPAT.c | 161 ++ src/tmx/Asn_J2735/src/r63/SSPindex.c | 64 + src/tmx/Asn_J2735/src/r63/Sample.c | 126 + src/tmx/Asn_J2735/src/r63/Scale-B12.c | 64 + src/tmx/Asn_J2735/src/r63/Schedule.c | 328 +++ src/tmx/Asn_J2735/src/r63/Second.c | 64 + src/tmx/Asn_J2735/src/r63/SecondOfTime.c | 64 + src/tmx/Asn_J2735/src/r63/SecondsAngle.c | 64 + .../Asn_J2735/src/r63/SegmentAttributeLL.c | 130 + .../src/r63/SegmentAttributeLLList.c | 52 + .../Asn_J2735/src/r63/SegmentAttributeXY.c | 130 + .../src/r63/SegmentAttributeXYList.c | 52 + .../Asn_J2735/src/r63/SemiMajorAxisAccuracy.c | 64 + .../src/r63/SemiMajorAxisOrientation.c | 64 + .../Asn_J2735/src/r63/SemiMinorAxisAccuracy.c | 64 + .../src/r63/SensorDataSharingMessage.c | 122 + src/tmx/Asn_J2735/src/r63/ShapePointSet.c | 82 + src/tmx/Asn_J2735/src/r63/SignPrority.c | 64 + src/tmx/Asn_J2735/src/r63/SignalControlZone.c | 50 + src/tmx/Asn_J2735/src/r63/SignalGroupID.c | 64 + .../Asn_J2735/src/r63/SignalHeadLocation.c | 60 + .../src/r63/SignalHeadLocationList.c | 52 + src/tmx/Asn_J2735/src/r63/SignalReqScheme.c | 65 + src/tmx/Asn_J2735/src/r63/SignalRequest.c | 181 ++ src/tmx/Asn_J2735/src/r63/SignalRequestList.c | 52 + .../Asn_J2735/src/r63/SignalRequestMessage.c | 181 ++ .../Asn_J2735/src/r63/SignalRequestPackage.c | 171 ++ .../Asn_J2735/src/r63/SignalRequesterInfo.c | 92 + src/tmx/Asn_J2735/src/r63/SignalStatus.c | 161 ++ src/tmx/Asn_J2735/src/r63/SignalStatusList.c | 52 + .../Asn_J2735/src/r63/SignalStatusMessage.c | 171 ++ .../Asn_J2735/src/r63/SignalStatusPackage.c | 201 ++ .../src/r63/SignalStatusPackageList.c | 52 + src/tmx/Asn_J2735/src/r63/SirenInUse.c | 60 + src/tmx/Asn_J2735/src/r63/SizeValue.c | 64 + .../Asn_J2735/src/r63/SizeValueConfidence.c | 80 + src/tmx/Asn_J2735/src/r63/Snapshot.c | 72 + src/tmx/Asn_J2735/src/r63/SnapshotDistance.c | 80 + src/tmx/Asn_J2735/src/r63/SnapshotTime.c | 80 + .../src/r63/SpecialVehicleExtensions.c | 72 + src/tmx/Asn_J2735/src/r63/Speed.c | 64 + src/tmx/Asn_J2735/src/r63/SpeedAdvice.c | 64 + src/tmx/Asn_J2735/src/r63/SpeedConfidence.c | 68 + src/tmx/Asn_J2735/src/r63/SpeedLimit.c | 151 + src/tmx/Asn_J2735/src/r63/SpeedLimitList.c | 52 + src/tmx/Asn_J2735/src/r63/SpeedLimitType.c | 80 + src/tmx/Asn_J2735/src/r63/SpeedProfile.c | 50 + .../src/r63/SpeedProfileMeasurement.c | 64 + .../src/r63/SpeedProfileMeasurementList.c | 52 + .../SpeedandHeadingandThrottleConfidence.c | 70 + .../src/r63/StabilityControlStatus.c | 60 + src/tmx/Asn_J2735/src/r63/StationID.c | 60 + .../src/r63/SteeringAxleLubePressure.c | 64 + .../src/r63/SteeringAxleTemperature.c | 64 + .../Asn_J2735/src/r63/SteeringWheelAngle.c | 64 + .../src/r63/SteeringWheelAngleConfidence.c | 60 + .../src/r63/SteeringWheelAngleRateOfChange.c | 64 + src/tmx/Asn_J2735/src/r63/SummerTime.c | 56 + src/tmx/Asn_J2735/src/r63/SunSensor.c | 64 + .../src/r63/SupplementalVehicleExtensions.c | 221 ++ src/tmx/Asn_J2735/src/r63/TemporaryID.c | 65 + src/tmx/Asn_J2735/src/r63/TenthSecond.c | 64 + src/tmx/Asn_J2735/src/r63/TermDistance.c | 64 + src/tmx/Asn_J2735/src/r63/TermTime.c | 64 + src/tmx/Asn_J2735/src/r63/TestMessage00.c | 61 + src/tmx/Asn_J2735/src/r63/TestMessage01.c | 61 + src/tmx/Asn_J2735/src/r63/TestMessage02.c | 60 + src/tmx/Asn_J2735/src/r63/TestMessage03.c | 60 + src/tmx/Asn_J2735/src/r63/TestMessage04.c | 50 + src/tmx/Asn_J2735/src/r63/TestMessage05.c | 50 + src/tmx/Asn_J2735/src/r63/TestMessage06.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage07.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage08.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage09.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage10.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage11.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage12.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage13.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage14.c | 62 + src/tmx/Asn_J2735/src/r63/TestMessage15.c | 62 + .../Asn_J2735/src/r63/ThrottleConfidence.c | 60 + src/tmx/Asn_J2735/src/r63/ThrottlePosition.c | 64 + src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c | 102 + src/tmx/Asn_J2735/src/r63/TimeConfidence.c | 132 + .../src/r63/TimeIntervalConfidence.c | 64 + src/tmx/Asn_J2735/src/r63/TimeOffset.c | 64 + src/tmx/Asn_J2735/src/r63/TimeRemaining.c | 64 + src/tmx/Asn_J2735/src/r63/TireData.c | 112 + src/tmx/Asn_J2735/src/r63/TireDataList.c | 52 + src/tmx/Asn_J2735/src/r63/TireLeakageRate.c | 64 + src/tmx/Asn_J2735/src/r63/TireLocation.c | 64 + src/tmx/Asn_J2735/src/r63/TirePressure.c | 64 + .../src/r63/TirePressureThresholdDetection.c | 68 + src/tmx/Asn_J2735/src/r63/TireTemp.c | 64 + .../Asn_J2735/src/r63/TractionControlStatus.c | 60 + .../Asn_J2735/src/r63/TrafficControlBounds.c | 159 ++ .../Asn_J2735/src/r63/TrafficControlDetail.c | 1053 +++++++ .../src/r63/TrafficControlGeometry.c | 372 +++ .../Asn_J2735/src/r63/TrafficControlMessage.c | 65 + .../src/r63/TrafficControlMessageV01.c | 231 ++ .../Asn_J2735/src/r63/TrafficControlPackage.c | 189 ++ .../Asn_J2735/src/r63/TrafficControlParams.c | 159 ++ .../src/r63/TrafficControlPathPart.c | 265 ++ .../Asn_J2735/src/r63/TrafficControlRequest.c | 65 + .../src/r63/TrafficControlRequestV01.c | 225 ++ .../src/r63/TrafficControlSchedule.c | 171 ++ .../Asn_J2735/src/r63/TrafficControlType.c | 98 + .../Asn_J2735/src/r63/TrafficControlValue.c | 539 ++++ .../src/r63/TrafficControlVehClass.c | 92 + src/tmx/Asn_J2735/src/r63/TrailerData.c | 70 + .../Asn_J2735/src/r63/TrailerHistoryPoint.c | 92 + .../src/r63/TrailerHistoryPointList.c | 52 + src/tmx/Asn_J2735/src/r63/TrailerMass.c | 64 + .../src/r63/TrailerUnitDescription.c | 172 ++ .../src/r63/TrailerUnitDescriptionList.c | 52 + src/tmx/Asn_J2735/src/r63/TrailerWeight.c | 64 + src/tmx/Asn_J2735/src/r63/TransitStatus.c | 70 + .../src/r63/TransitVehicleOccupancy.c | 68 + .../Asn_J2735/src/r63/TransitVehicleStatus.c | 70 + .../Asn_J2735/src/r63/TransmissionAndSpeed.c | 60 + src/tmx/Asn_J2735/src/r63/TransmissionState.c | 68 + src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c | 395 +++ .../Asn_J2735/src/r63/TravelerDataFrameList.c | 52 + src/tmx/Asn_J2735/src/r63/TravelerInfoType.c | 62 + .../Asn_J2735/src/r63/TravelerInformation.c | 181 ++ src/tmx/Asn_J2735/src/r63/URL-Base.c | 79 + src/tmx/Asn_J2735/src/r63/URL-Link.c | 79 + src/tmx/Asn_J2735/src/r63/URL-Short.c | 79 + src/tmx/Asn_J2735/src/r63/UniqueMSGID.c | 65 + .../Asn_J2735/src/r63/UserSizeAndBehaviour.c | 70 + src/tmx/Asn_J2735/src/r63/VINstring.c | 65 + src/tmx/Asn_J2735/src/r63/VType.c | 88 + src/tmx/Asn_J2735/src/r63/ValidRegion.c | 139 + .../Asn_J2735/src/r63/VehicleClassification.c | 211 ++ src/tmx/Asn_J2735/src/r63/VehicleData.c | 82 + src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c | 70 + .../Asn_J2735/src/r63/VehicleGroupAffected.c | 124 + src/tmx/Asn_J2735/src/r63/VehicleHeight.c | 64 + src/tmx/Asn_J2735/src/r63/VehicleID.c | 65 + src/tmx/Asn_J2735/src/r63/VehicleIdent.c | 217 ++ src/tmx/Asn_J2735/src/r63/VehicleLength.c | 64 + src/tmx/Asn_J2735/src/r63/VehicleMass.c | 64 + .../src/r63/VehicleSafetyExtensions.c | 82 + src/tmx/Asn_J2735/src/r63/VehicleSize.c | 60 + .../Asn_J2735/src/r63/VehicleSizeConfidence.c | 72 + src/tmx/Asn_J2735/src/r63/VehicleStatus.c | 653 +++++ .../src/r63/VehicleStatusDeviceTypeTag.c | 112 + .../Asn_J2735/src/r63/VehicleStatusRequest.c | 191 ++ .../src/r63/VehicleStatusRequestList.c | 52 + .../Asn_J2735/src/r63/VehicleToLanePosition.c | 60 + .../src/r63/VehicleToLanePositionList.c | 52 + src/tmx/Asn_J2735/src/r63/VehicleType.c | 86 + src/tmx/Asn_J2735/src/r63/VehicleWidth.c | 64 + src/tmx/Asn_J2735/src/r63/Velocity.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B07.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B08.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B09.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B10.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B11.c | 64 + src/tmx/Asn_J2735/src/r63/VertOffset-B12.c | 64 + .../Asn_J2735/src/r63/VerticalAcceleration.c | 64 + .../src/r63/VerticalAccelerationThreshold.c | 70 + src/tmx/Asn_J2735/src/r63/VerticalOffset.c | 125 + src/tmx/Asn_J2735/src/r63/WaitOnStopline.c | 31 + src/tmx/Asn_J2735/src/r63/WeatherProbe.c | 72 + src/tmx/Asn_J2735/src/r63/WeatherReport.c | 102 + .../Asn_J2735/src/r63/WheelEndElectFault.c | 60 + src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c | 60 + src/tmx/Asn_J2735/src/r63/WiperRate.c | 64 + src/tmx/Asn_J2735/src/r63/WiperSet.c | 82 + src/tmx/Asn_J2735/src/r63/WiperStatus.c | 68 + src/tmx/Asn_J2735/src/r63/WorkZone.c | 151 + src/tmx/Asn_J2735/src/r63/YawDetected.c | 64 + src/tmx/Asn_J2735/src/r63/YawRate.c | 64 + src/tmx/Asn_J2735/src/r63/YawRateConfidence.c | 68 + src/tmx/Asn_J2735/src/r63/Year.c | 64 + src/tmx/Asn_J2735/src/r63/ZoneLength.c | 64 + src/tmx/Asn_J2735/src/r63/Zoom.c | 64 + src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c | 41 + src/tmx/Asn_J2735/src/r63/asn_SET_OF.c | 88 + src/tmx/Asn_J2735/src/r63/asn_application.c | 481 ++++ src/tmx/Asn_J2735/src/r63/asn_bit_data.c | 333 +++ src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c | 317 +++ src/tmx/Asn_J2735/src/r63/asn_internal.c | 48 + src/tmx/Asn_J2735/src/r63/asn_random_fill.c | 56 + src/tmx/Asn_J2735/src/r63/ber_decoder.c | 283 ++ src/tmx/Asn_J2735/src/r63/ber_tlv_length.c | 168 ++ src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c | 144 + src/tmx/Asn_J2735/src/r63/constr_CHOICE.c | 1513 +++++++++++ src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c | 380 +++ src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c | 2063 ++++++++++++++ .../Asn_J2735/src/r63/constr_SEQUENCE_OF.c | 364 +++ .../Asn_J2735/src/r63/constr_SEQUENCE_oer.c | 561 ++++ src/tmx/Asn_J2735/src/r63/constr_SET_OF.c | 1539 +++++++++++ src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c | 285 ++ src/tmx/Asn_J2735/src/r63/constr_TYPE.c | 80 + src/tmx/Asn_J2735/src/r63/constraints.c | 93 + src/tmx/Asn_J2735/src/r63/der_encoder.c | 194 ++ src/tmx/Asn_J2735/src/r63/oer_decoder.c | 152 ++ src/tmx/Asn_J2735/src/r63/oer_encoder.c | 141 + src/tmx/Asn_J2735/src/r63/oer_support.c | 122 + src/tmx/Asn_J2735/src/r63/pdu_collection.c | 76 + src/tmx/Asn_J2735/src/r63/per_decoder.c | 185 ++ src/tmx/Asn_J2735/src/r63/per_encoder.c | 265 ++ src/tmx/Asn_J2735/src/r63/per_opentype.c | 538 ++++ src/tmx/Asn_J2735/src/r63/per_support.c | 583 ++++ src/tmx/Asn_J2735/src/r63/xer_decoder.c | 369 +++ src/tmx/Asn_J2735/src/r63/xer_encoder.c | 237 ++ src/tmx/Asn_J2735/src/r63/xer_support.c | 227 ++ src/tmx/Messages/include/rtcm/RTCM2.h | 50 +- src/tmx/Messages/include/rtcm/RTCM3.h | 50 +- .../tmx/j2735_messages/BasicSafetyMessage.hpp | 8 +- .../CommonSafetyRequestMessage.hpp | 8 +- .../EmergencyVehicleAlertMessage.hpp | 8 +- .../IntersectionCollisionMessage.hpp | 8 +- .../j2735_messages/J2735MessageFactory.hpp | 50 +- .../j2735_messages/J2735MessageTemplate.hpp | 96 +- .../tmx/j2735_messages/MessageFrame.hpp | 20 +- .../TmxApi/tmx/j2735_messages/NmeaMessage.hpp | 16 +- .../ProbeDataManagementMessage.hpp | 8 +- .../ProbeVehicleDataMessage.hpp | 18 +- .../TmxApi/tmx/j2735_messages/RtcmMessage.hpp | 16 +- .../j2735_messages/SignalRequestMessage.hpp | 16 +- .../tmx/j2735_messages/testMessage00.hpp | 4 +- .../tmx/j2735_messages/testMessage01.hpp | 8 +- .../tmx/j2735_messages/testMessage02.hpp | 8 +- .../tmx/j2735_messages/testMessage03.hpp | 4 +- .../tmx/j2735_messages/testMessage04.hpp | 8 +- .../tmx/j2735_messages/testMessage05.hpp | 8 +- src/tmx/TmxApi/tmx/messages/IvpJ2735.c | 48 +- src/tmx/TmxApi/tmx/messages/IvpJ2735.h | 4 +- src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp | 128 +- src/tmx/TmxUtils/src/BsmConverter.cpp | 342 +-- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 20 +- .../src/JsonToJ2735SpatConverter.cpp | 18 +- .../src/JsonToJ3224SDSMConverter.cpp | 5 +- .../test/test_J2735MapToJsonConverter.cpp | 4 + .../test/test_J2735ToSRMJsonConverter.cpp | 10 +- .../test/test_J3224ToSDSMJsonConverter.cpp | 4 + src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp | 9 + src/v2i-hub/CswPlugin/src/DsrcBuilder.h | 12 +- src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp | 41 +- .../MapPlugin/src/ConvertToJ2735r41.cpp | 6 +- src/v2i-hub/MapPlugin/src/MapPlugin.cpp | 6 +- .../src/inputs/isd/ISDDataAdaptor.hpp | 32 +- .../src/inputs/isd/ISDToJ2735r41.cpp | 6 +- .../src/MessageReceiverPlugin.cpp | 10 +- src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp | 19 +- src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp | 12 +- src/v2i-hub/TimPlugin/src/DsrcBuilder.h | 12 +- src/v2i-hub/TimPlugin/src/TimPlugin.cpp | 5 +- src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp | 44 +- 2236 files changed, 203602 insertions(+), 571 deletions(-) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/version.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralizedTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessageStatusType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RELATIVE-OID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TeletexString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/version.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h create mode 100644 src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/Acceleration.c create mode 100644 src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c create mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c create mode 100644 src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c create mode 100644 src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c create mode 100644 src/tmx/Asn_J2735/src/r41/Altitude.c create mode 100644 src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/AltitudeValue.c create mode 100644 src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r41/Angle.c create mode 100644 src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r41/AnimalType.c create mode 100644 src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/ApproachID.c create mode 100644 src/tmx/Asn_J2735/src/r41/Attachment.c create mode 100644 src/tmx/Asn_J2735/src/r41/AttachmentRadius.c create mode 100644 src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/AxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r41/AxleWeight.c create mode 100644 src/tmx/Asn_J2735/src/r41/BIT_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r41/BOOLEAN.c create mode 100644 src/tmx/Asn_J2735/src/r41/BSMblob.c create mode 100644 src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c create mode 100644 src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c create mode 100644 src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeightFront.c create mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeightRear.c create mode 100644 src/tmx/Asn_J2735/src/r41/BumperHeights.c create mode 100644 src/tmx/Asn_J2735/src/r41/CargoWeight.c create mode 100644 src/tmx/Asn_J2735/src/r41/Circle.c create mode 100644 src/tmx/Asn_J2735/src/r41/CodeWord.c create mode 100644 src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c create mode 100644 src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c create mode 100644 src/tmx/Asn_J2735/src/r41/ComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/ConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/ConnectingLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/Connection.c create mode 100644 src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r41/ConnectsToList.c create mode 100644 src/tmx/Asn_J2735/src/r41/Count.c create mode 100644 src/tmx/Asn_J2735/src/r41/DDate.c create mode 100644 src/tmx/Asn_J2735/src/r41/DDateTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/DDay.c create mode 100644 src/tmx/Asn_J2735/src/r41/DFullTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/DHour.c create mode 100644 src/tmx/Asn_J2735/src/r41/DMinute.c create mode 100644 src/tmx/Asn_J2735/src/r41/DMonth.c create mode 100644 src/tmx/Asn_J2735/src/r41/DMonthDay.c create mode 100644 src/tmx/Asn_J2735/src/r41/DOffset.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgID.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSecond.c create mode 100644 src/tmx/Asn_J2735/src/r41/DSecond2.c create mode 100644 src/tmx/Asn_J2735/src/r41/DTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/DYear.c create mode 100644 src/tmx/Asn_J2735/src/r41/DYearMonth.c create mode 100644 src/tmx/Asn_J2735/src/r41/DataParameters.c create mode 100644 src/tmx/Asn_J2735/src/r41/Day.c create mode 100644 src/tmx/Asn_J2735/src/r41/DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r41/DegreesLat.c create mode 100644 src/tmx/Asn_J2735/src/r41/DegreesLong.c create mode 100644 src/tmx/Asn_J2735/src/r41/DeltaAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/DescriptiveName.c create mode 100644 src/tmx/Asn_J2735/src/r41/DestinationType.c create mode 100644 src/tmx/Asn_J2735/src/r41/DirectionOfUse.c create mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c create mode 100644 src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c create mode 100644 src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c create mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r41/Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r41/Elevation2.c create mode 100644 src/tmx/Asn_J2735/src/r41/ElevationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/EmergencyDetails.c create mode 100644 src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c create mode 100644 src/tmx/Asn_J2735/src/r41/EmissionType.c create mode 100644 src/tmx/Asn_J2735/src/r41/EnabledLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r41/EssMobileFriction.c create mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipRate.c create mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c create mode 100644 src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c create mode 100644 src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c create mode 100644 src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c create mode 100644 src/tmx/Asn_J2735/src/r41/EventFlags.c create mode 100644 src/tmx/Asn_J2735/src/r41/ExitService.c create mode 100644 src/tmx/Asn_J2735/src/r41/Extent.c create mode 100644 src/tmx/Asn_J2735/src/r41/ExteriorLights.c create mode 100644 src/tmx/Asn_J2735/src/r41/FullPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/r41/FurtherInfoID.c create mode 100644 src/tmx/Asn_J2735/src/r41/GPSstatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/GenericLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/GenericSignage.c create mode 100644 src/tmx/Asn_J2735/src/r41/Heading.c create mode 100644 src/tmx/Asn_J2735/src/r41/HeadingConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/HeadingSlice.c create mode 100644 src/tmx/Asn_J2735/src/r41/Holiday.c create mode 100644 src/tmx/Asn_J2735/src/r41/Hour.c create mode 100644 src/tmx/Asn_J2735/src/r41/HumanPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r41/IA5String.c create mode 100644 src/tmx/Asn_J2735/src/r41/INTEGER.c create mode 100644 src/tmx/Asn_J2735/src/r41/ITIScodes.c create mode 100644 src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c create mode 100644 src/tmx/Asn_J2735/src/r41/ITIStext.c create mode 100644 src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionCollision.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionID.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionStateList.c create mode 100644 src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c create mode 100644 src/tmx/Asn_J2735/src/r41/J1939data.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Angle.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneConnectionID.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneDirection.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneID.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneList.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneNumber.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneSharing.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r41/LaneWidth.c create mode 100644 src/tmx/Asn_J2735/src/r41/Latitude.c create mode 100644 src/tmx/Asn_J2735/src/r41/LatitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r41/LayerID.c create mode 100644 src/tmx/Asn_J2735/src/r41/LayerType.c create mode 100644 src/tmx/Asn_J2735/src/r41/LightbarInUse.c create mode 100644 src/tmx/Asn_J2735/src/r41/Location-quality.c create mode 100644 src/tmx/Asn_J2735/src/r41/Location-tech.c create mode 100644 src/tmx/Asn_J2735/src/r41/Longitude.c create mode 100644 src/tmx/Asn_J2735/src/r41/LongitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r41/MUTCDCode.c create mode 100644 src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c create mode 100644 src/tmx/Asn_J2735/src/r41/MapData.c create mode 100644 src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/MinTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r41/Minute.c create mode 100644 src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c create mode 100644 src/tmx/Asn_J2735/src/r41/MinutesAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/MinutesDuration.c create mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeeds.c create mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c create mode 100644 src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c create mode 100644 src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c create mode 100644 src/tmx/Asn_J2735/src/r41/Month.c create mode 100644 src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r41/MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r41/MovementEventList.c create mode 100644 src/tmx/Asn_J2735/src/r41/MovementList.c create mode 100644 src/tmx/Asn_J2735/src/r41/MovementPhaseState.c create mode 100644 src/tmx/Asn_J2735/src/r41/MovementState.c create mode 100644 src/tmx/Asn_J2735/src/r41/MsgCRC.c create mode 100644 src/tmx/Asn_J2735/src/r41/MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c create mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c create mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c create mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Payload.c create mode 100644 src/tmx/Asn_J2735/src/r41/NMEA-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c create mode 100644 src/tmx/Asn_J2735/src/r41/NativeEnumerated.c create mode 100644 src/tmx/Asn_J2735/src/r41/NativeInteger.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-20b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-22b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-24b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-26b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-28b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node-XY-32b.c create mode 100644 src/tmx/Asn_J2735/src/r41/Node.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeList2.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r41/NodeSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c create mode 100644 src/tmx/Asn_J2735/src/r41/OCTET_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r41/ObjectCount.c create mode 100644 src/tmx/Asn_J2735/src/r41/ObstacleDirection.c create mode 100644 src/tmx/Asn_J2735/src/r41/ObstacleDistance.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B10.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B11.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B12.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B13.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B14.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offset-B16.c create mode 100644 src/tmx/Asn_J2735/src/r41/Offsets.c create mode 100644 src/tmx/Asn_J2735/src/r41/OverlayLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistory.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c create mode 100644 src/tmx/Asn_J2735/src/r41/PathPrediction.c create mode 100644 src/tmx/Asn_J2735/src/r41/Payload.c create mode 100644 src/tmx/Asn_J2735/src/r41/PayloadData.c create mode 100644 src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalAssistive.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c create mode 100644 src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/Position3D-2.c create mode 100644 src/tmx/Asn_J2735/src/r41/Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r41/PositionConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c create mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c create mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c create mode 100644 src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/Priority.c create mode 100644 src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c create mode 100644 src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c create mode 100644 src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r41/PropelledInformation.c create mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c create mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c create mode 100644 src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-ID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Payload.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCM-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCMHeader.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCMPackage.c create mode 100644 src/tmx/Asn_J2735/src/r41/RTCMmsg.c create mode 100644 src/tmx/Asn_J2735/src/r41/RainSensor.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-Intersection.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MapData.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-MovementState.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-SPAT.c create mode 100644 src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionOffsets.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionPointSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalIntersection.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMapData.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalMovementState.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalSPAT.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r41/RequestID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RequestedItem.c create mode 100644 src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r41/ResponseType.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionClassList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentList.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSideAlert.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadSignID.c create mode 100644 src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/SPAT.c create mode 100644 src/tmx/Asn_J2735/src/r41/Sample.c create mode 100644 src/tmx/Asn_J2735/src/r41/Scale-B12.c create mode 100644 src/tmx/Asn_J2735/src/r41/SeatCount.c create mode 100644 src/tmx/Asn_J2735/src/r41/Second.c create mode 100644 src/tmx/Asn_J2735/src/r41/SecondsAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/SegmentAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r41/ShapePointSet.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignPrority.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalControlState.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalGroupID.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalReqScheme.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalRequest.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalState.c create mode 100644 src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c create mode 100644 src/tmx/Asn_J2735/src/r41/SirenInUse.c create mode 100644 src/tmx/Asn_J2735/src/r41/Snapshot.c create mode 100644 src/tmx/Asn_J2735/src/r41/SnapshotDistance.c create mode 100644 src/tmx/Asn_J2735/src/r41/SnapshotTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/Speed.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedAdvice.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimitList.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedLimitType.c create mode 100644 src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/StationID.c create mode 100644 src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c create mode 100644 src/tmx/Asn_J2735/src/r41/SummerTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/SunSensor.c create mode 100644 src/tmx/Asn_J2735/src/r41/TemporaryID.c create mode 100644 src/tmx/Asn_J2735/src/r41/TenthSecond.c create mode 100644 src/tmx/Asn_J2735/src/r41/TermDistance.c create mode 100644 src/tmx/Asn_J2735/src/r41/TermTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/ThrottlePosition.c create mode 100644 src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c create mode 100644 src/tmx/Asn_J2735/src/r41/TimeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r41/TimeRemaining.c create mode 100644 src/tmx/Asn_J2735/src/r41/TireLeakageRate.c create mode 100644 src/tmx/Asn_J2735/src/r41/TireLocation.c create mode 100644 src/tmx/Asn_J2735/src/r41/TirePressure.c create mode 100644 src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c create mode 100644 src/tmx/Asn_J2735/src/r41/TireTemp.c create mode 100644 src/tmx/Asn_J2735/src/r41/TractionControlState.c create mode 100644 src/tmx/Asn_J2735/src/r41/TrailerWeight.c create mode 100644 src/tmx/Asn_J2735/src/r41/TransitStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c create mode 100644 src/tmx/Asn_J2735/src/r41/TransmissionState.c create mode 100644 src/tmx/Asn_J2735/src/r41/TravelerInfoType.c create mode 100644 src/tmx/Asn_J2735/src/r41/TravelerInformation.c create mode 100644 src/tmx/Asn_J2735/src/r41/TxTime.c create mode 100644 src/tmx/Asn_J2735/src/r41/UPER-Blob.c create mode 100644 src/tmx/Asn_J2735/src/r41/UPERframe.c create mode 100644 src/tmx/Asn_J2735/src/r41/URL-Base.c create mode 100644 src/tmx/Asn_J2735/src/r41/URL-Link.c create mode 100644 src/tmx/Asn_J2735/src/r41/URL-Short.c create mode 100644 src/tmx/Asn_J2735/src/r41/UUIDType.c create mode 100644 src/tmx/Asn_J2735/src/r41/UniqueMSGID.c create mode 100644 src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c create mode 100644 src/tmx/Asn_J2735/src/r41/VINstring.c create mode 100644 src/tmx/Asn_J2735/src/r41/ValidRegion.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleHeight.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleIdent.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleLength.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleMass.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleSize.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/r41/VehicleWidth.c create mode 100644 src/tmx/Asn_J2735/src/r41/Velocity.c create mode 100644 src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c create mode 100644 src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c create mode 100644 src/tmx/Asn_J2735/src/r41/WaitOnStopline.c create mode 100644 src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c create mode 100644 src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/WiperRate.c create mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatus.c create mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatusFront.c create mode 100644 src/tmx/Asn_J2735/src/r41/WiperStatusRear.c create mode 100644 src/tmx/Asn_J2735/src/r41/WorkZone.c create mode 100644 src/tmx/Asn_J2735/src/r41/YawRate.c create mode 100644 src/tmx/Asn_J2735/src/r41/YawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r41/Year.c create mode 100644 src/tmx/Asn_J2735/src/r41/ZoneLength.c create mode 100644 src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r41/asn_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c create mode 100644 src/tmx/Asn_J2735/src/r41/ber_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/ber_tlv_length.c create mode 100644 src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c create mode 100644 src/tmx/Asn_J2735/src/r41/constr_CHOICE.c create mode 100644 src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c create mode 100644 src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r41/constr_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r41/constr_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/r41/constraints.c create mode 100644 src/tmx/Asn_J2735/src/r41/der_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/per_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/per_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/per_opentype.c create mode 100644 src/tmx/Asn_J2735/src/r41/per_support.c create mode 100644 src/tmx/Asn_J2735/src/r41/xer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/xer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r41/xer_support.c create mode 100644 src/tmx/Asn_J2735/src/r63/ANY.c create mode 100644 src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/Acceleration.c create mode 100644 src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c create mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c create mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c create mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c create mode 100644 src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c create mode 100644 src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c create mode 100644 src/tmx/Asn_J2735/src/r63/Altitude.c create mode 100644 src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/AltitudeValue.c create mode 100644 src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r63/AngularVelocity.c create mode 100644 src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r63/AnimalType.c create mode 100644 src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/ApproachID.c create mode 100644 src/tmx/Asn_J2735/src/r63/ApproachOrLane.c create mode 100644 src/tmx/Asn_J2735/src/r63/Attachment.c create mode 100644 src/tmx/Asn_J2735/src/r63/AttachmentRadius.c create mode 100644 src/tmx/Asn_J2735/src/r63/Attitude.c create mode 100644 src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/AxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeight.c create mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeightList.c create mode 100644 src/tmx/Asn_J2735/src/r63/AxleWeightSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/BIT_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/BOOLEAN.c create mode 100644 src/tmx/Asn_J2735/src/r63/BSMcoreData.c create mode 100644 src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c create mode 100644 src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c create mode 100644 src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c create mode 100644 src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c create mode 100644 src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/BumperHeight.c create mode 100644 src/tmx/Asn_J2735/src/r63/BumperHeights.c create mode 100644 src/tmx/Asn_J2735/src/r63/CargoWeight.c create mode 100644 src/tmx/Asn_J2735/src/r63/Circle.c create mode 100644 src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/CoarseHeading.c create mode 100644 src/tmx/Asn_J2735/src/r63/CodeWord.c create mode 100644 src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c create mode 100644 src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/ComputedLane.c create mode 100644 src/tmx/Asn_J2735/src/r63/Confidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/ConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/ConnectingLane.c create mode 100644 src/tmx/Asn_J2735/src/r63/Connection.c create mode 100644 src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c create mode 100644 src/tmx/Asn_J2735/src/r63/ConnectsToList.c create mode 100644 src/tmx/Asn_J2735/src/r63/Count.c create mode 100644 src/tmx/Asn_J2735/src/r63/DDate.c create mode 100644 src/tmx/Asn_J2735/src/r63/DDateTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/DDay.c create mode 100644 src/tmx/Asn_J2735/src/r63/DFullTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/DHour.c create mode 100644 src/tmx/Asn_J2735/src/r63/DMinute.c create mode 100644 src/tmx/Asn_J2735/src/r63/DMonth.c create mode 100644 src/tmx/Asn_J2735/src/r63/DMonthDay.c create mode 100644 src/tmx/Asn_J2735/src/r63/DOffset.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_Angle.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSRCmsgID.c create mode 100644 src/tmx/Asn_J2735/src/r63/DSecond.c create mode 100644 src/tmx/Asn_J2735/src/r63/DTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/DYear.c create mode 100644 src/tmx/Asn_J2735/src/r63/DYearMonth.c create mode 100644 src/tmx/Asn_J2735/src/r63/DailySchedule.c create mode 100644 src/tmx/Asn_J2735/src/r63/DataParameters.c create mode 100644 src/tmx/Asn_J2735/src/r63/Day.c create mode 100644 src/tmx/Asn_J2735/src/r63/DayOfWeek.c create mode 100644 src/tmx/Asn_J2735/src/r63/DaySchedule.c create mode 100644 src/tmx/Asn_J2735/src/r63/DegreesLat.c create mode 100644 src/tmx/Asn_J2735/src/r63/DegreesLong.c create mode 100644 src/tmx/Asn_J2735/src/r63/DeltaAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/DeltaTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/DescriptiveName.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectList.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedVRUData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r63/DirectionOfUse.c create mode 100644 src/tmx/Asn_J2735/src/r63/DisabledVehicle.c create mode 100644 src/tmx/Asn_J2735/src/r63/DistanceUnits.c create mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c create mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c create mode 100644 src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c create mode 100644 src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/Duration.c create mode 100644 src/tmx/Asn_J2735/src/r63/EXTERNAL.c create mode 100644 src/tmx/Asn_J2735/src/r63/ElevationConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/EmergencyDetails.c create mode 100644 src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c create mode 100644 src/tmx/Asn_J2735/src/r63/EmissionType.c create mode 100644 src/tmx/Asn_J2735/src/r63/EnabledLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r63/EpochMins.c create mode 100644 src/tmx/Asn_J2735/src/r63/EquipmentType.c create mode 100644 src/tmx/Asn_J2735/src/r63/EssMobileFriction.c create mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c create mode 100644 src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c create mode 100644 src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c create mode 100644 src/tmx/Asn_J2735/src/r63/EventDescription.c create mode 100644 src/tmx/Asn_J2735/src/r63/ExitService.c create mode 100644 src/tmx/Asn_J2735/src/r63/Extent.c create mode 100644 src/tmx/Asn_J2735/src/r63/ExteriorLights.c create mode 100644 src/tmx/Asn_J2735/src/r63/FuelType.c create mode 100644 src/tmx/Asn_J2735/src/r63/FullPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/r63/FurtherInfoID.c create mode 100644 src/tmx/Asn_J2735/src/r63/GNSSstatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/GenericLane.c create mode 100644 src/tmx/Asn_J2735/src/r63/GenericLocations.c create mode 100644 src/tmx/Asn_J2735/src/r63/GenericSignage.c create mode 100644 src/tmx/Asn_J2735/src/r63/GeographicalPath.c create mode 100644 src/tmx/Asn_J2735/src/r63/GeometricProjection.c create mode 100644 src/tmx/Asn_J2735/src/r63/GraphicString.c create mode 100644 src/tmx/Asn_J2735/src/r63/GrossDistance.c create mode 100644 src/tmx/Asn_J2735/src/r63/GrossSpeed.c create mode 100644 src/tmx/Asn_J2735/src/r63/Header.c create mode 100644 src/tmx/Asn_J2735/src/r63/Heading.c create mode 100644 src/tmx/Asn_J2735/src/r63/HeadingConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/HeadingSlice.c create mode 100644 src/tmx/Asn_J2735/src/r63/Holiday.c create mode 100644 src/tmx/Asn_J2735/src/r63/Hour.c create mode 100644 src/tmx/Asn_J2735/src/r63/HumanPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r63/IA5String.c create mode 100644 src/tmx/Asn_J2735/src/r63/INTEGER.c create mode 100644 src/tmx/Asn_J2735/src/r63/INTEGER_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/ITIScodes.c create mode 100644 src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c create mode 100644 src/tmx/Asn_J2735/src/r63/ITIStext.c create mode 100644 src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c create mode 100644 src/tmx/Asn_J2735/src/r63/Id128b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Id64b.c create mode 100644 src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionCollision.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionID.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionState.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionStateList.c create mode 100644 src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c create mode 100644 src/tmx/Asn_J2735/src/r63/IsDolly.c create mode 100644 src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/r63/J1939data.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneConnectionID.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneDirection.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneID.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneList.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneSharing.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c create mode 100644 src/tmx/Asn_J2735/src/r63/LaneWidth.c create mode 100644 src/tmx/Asn_J2735/src/r63/Latitude.c create mode 100644 src/tmx/Asn_J2735/src/r63/LatitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r63/LayerID.c create mode 100644 src/tmx/Asn_J2735/src/r63/LayerType.c create mode 100644 src/tmx/Asn_J2735/src/r63/LightbarInUse.c create mode 100644 src/tmx/Asn_J2735/src/r63/Location-quality.c create mode 100644 src/tmx/Asn_J2735/src/r63/Location-tech.c create mode 100644 src/tmx/Asn_J2735/src/r63/Longitude.c create mode 100644 src/tmx/Asn_J2735/src/r63/LongitudeDMS.c create mode 100644 src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c create mode 100644 src/tmx/Asn_J2735/src/r63/MUTCDCode.c create mode 100644 src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c create mode 100644 src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r63/MapData.c create mode 100644 src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c create mode 100644 src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/MessageBLOB.c create mode 100644 src/tmx/Asn_J2735/src/r63/MessageFrame.c create mode 100644 src/tmx/Asn_J2735/src/r63/MinTimetoChange.c create mode 100644 src/tmx/Asn_J2735/src/r63/Minute.c create mode 100644 src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c create mode 100644 src/tmx/Asn_J2735/src/r63/MinutesAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/MinutesDuration.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityGUID.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityHeader.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityLocation.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityOperation.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityParameters.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityPath.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityPlanType.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityResponse.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityStaticID.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityStrategy.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c create mode 100644 src/tmx/Asn_J2735/src/r63/MobilityUrgency.c create mode 100644 src/tmx/Asn_J2735/src/r63/Month.c create mode 100644 src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementEvent.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementEventList.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementList.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementPhaseState.c create mode 100644 src/tmx/Asn_J2735/src/r63/MovementState.c create mode 100644 src/tmx/Asn_J2735/src/r63/MsgCRC.c create mode 100644 src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c create mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c create mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-Payload.c create mode 100644 src/tmx/Asn_J2735/src/r63/NMEA-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r63/NMEAcorrections.c create mode 100644 src/tmx/Asn_J2735/src/r63/NULL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NativeEnumerated.c create mode 100644 src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/NativeInteger.c create mode 100644 src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-24B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-28B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-32B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-36B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-44B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LL-48B.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-20b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-22b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-24b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-26b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-28b.c create mode 100644 src/tmx/Asn_J2735/src/r63/Node-XY-32b.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeListLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeListXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeSetLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeSetXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NodeXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c create mode 100644 src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c create mode 100644 src/tmx/Asn_J2735/src/r63/OCTET_STRING.c create mode 100644 src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObjectCount.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObjectDistance.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObjectID.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObjectType.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDetection.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDirection.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleDistance.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleSize.c create mode 100644 src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B09.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B10.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B11.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B12.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B13.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B14.c create mode 100644 src/tmx/Asn_J2735/src/r63/Offset-B16.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetPoint.c create mode 100644 src/tmx/Asn_J2735/src/r63/OffsetSystem.c create mode 100644 src/tmx/Asn_J2735/src/r63/OverlayLaneList.c create mode 100644 src/tmx/Asn_J2735/src/r63/PartII-Id.c create mode 100644 src/tmx/Asn_J2735/src/r63/PartIIcontent.c create mode 100644 src/tmx/Asn_J2735/src/r63/PathHistory.c create mode 100644 src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/r63/PathNode.c create mode 100644 src/tmx/Asn_J2735/src/r63/PathPrediction.c create mode 100644 src/tmx/Asn_J2735/src/r63/PayloadData.c create mode 100644 src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalAssistive.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c create mode 100644 src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/PitchDetected.c create mode 100644 src/tmx/Asn_J2735/src/r63/PitchRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/PivotPointDescription.c create mode 100644 src/tmx/Asn_J2735/src/r63/PivotingAllowed.c create mode 100644 src/tmx/Asn_J2735/src/r63/Point.c create mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c create mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c create mode 100644 src/tmx/Asn_J2735/src/r63/Position3D.c create mode 100644 src/tmx/Asn_J2735/src/r63/PositionConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c create mode 100644 src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c create mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c create mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c create mode 100644 src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/Priority.c create mode 100644 src/tmx/Asn_J2735/src/r63/PriorityRequestType.c create mode 100644 src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c create mode 100644 src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c create mode 100644 src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c create mode 100644 src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r63/PropelledInformation.c create mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c create mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c create mode 100644 src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCM-Revision.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCMPackage.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCMcorrections.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCMheader.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCMmessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/RTCMmessageList.c create mode 100644 src/tmx/Asn_J2735/src/r63/Radius-B12.c create mode 100644 src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c create mode 100644 src/tmx/Asn_J2735/src/r63/RainSensor.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegionId.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegionList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegionOffsets.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegionPointSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegionalExtension.c create mode 100644 src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r63/RepeatParams.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestSubRole.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestedItem.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestedItemList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestorDescription.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c create mode 100644 src/tmx/Asn_J2735/src/r63/RequestorType.c create mode 100644 src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r63/ResponseType.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionClassList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserType.c create mode 100644 src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegment.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentList.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSideAlert.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadSignID.c create mode 100644 src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/RollDetected.c create mode 100644 src/tmx/Asn_J2735/src/r63/RollRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/RollRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/SPAT.c create mode 100644 src/tmx/Asn_J2735/src/r63/SSPindex.c create mode 100644 src/tmx/Asn_J2735/src/r63/Sample.c create mode 100644 src/tmx/Asn_J2735/src/r63/Scale-B12.c create mode 100644 src/tmx/Asn_J2735/src/r63/Schedule.c create mode 100644 src/tmx/Asn_J2735/src/r63/Second.c create mode 100644 src/tmx/Asn_J2735/src/r63/SecondOfTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/SecondsAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c create mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c create mode 100644 src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c create mode 100644 src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c create mode 100644 src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/ShapePointSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignPrority.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalControlZone.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalGroupID.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalReqScheme.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c create mode 100644 src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SirenInUse.c create mode 100644 src/tmx/Asn_J2735/src/r63/SizeValue.c create mode 100644 src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/Snapshot.c create mode 100644 src/tmx/Asn_J2735/src/r63/SnapshotDistance.c create mode 100644 src/tmx/Asn_J2735/src/r63/SnapshotTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r63/Speed.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedAdvice.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimit.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimitList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedLimitType.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfile.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c create mode 100644 src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/StationID.c create mode 100644 src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c create mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c create mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c create mode 100644 src/tmx/Asn_J2735/src/r63/SummerTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/SunSensor.c create mode 100644 src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r63/TemporaryID.c create mode 100644 src/tmx/Asn_J2735/src/r63/TenthSecond.c create mode 100644 src/tmx/Asn_J2735/src/r63/TermDistance.c create mode 100644 src/tmx/Asn_J2735/src/r63/TermTime.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage00.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage01.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage02.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage03.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage04.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage05.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage06.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage07.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage08.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage09.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage10.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage11.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage12.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage13.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage14.c create mode 100644 src/tmx/Asn_J2735/src/r63/TestMessage15.c create mode 100644 src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/ThrottlePosition.c create mode 100644 src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c create mode 100644 src/tmx/Asn_J2735/src/r63/TimeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/TimeOffset.c create mode 100644 src/tmx/Asn_J2735/src/r63/TimeRemaining.c create mode 100644 src/tmx/Asn_J2735/src/r63/TireData.c create mode 100644 src/tmx/Asn_J2735/src/r63/TireDataList.c create mode 100644 src/tmx/Asn_J2735/src/r63/TireLeakageRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/TireLocation.c create mode 100644 src/tmx/Asn_J2735/src/r63/TirePressure.c create mode 100644 src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c create mode 100644 src/tmx/Asn_J2735/src/r63/TireTemp.c create mode 100644 src/tmx/Asn_J2735/src/r63/TractionControlStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlParams.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlType.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlValue.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerData.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerMass.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c create mode 100644 src/tmx/Asn_J2735/src/r63/TrailerWeight.c create mode 100644 src/tmx/Asn_J2735/src/r63/TransitStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c create mode 100644 src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c create mode 100644 src/tmx/Asn_J2735/src/r63/TransmissionState.c create mode 100644 src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c create mode 100644 src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c create mode 100644 src/tmx/Asn_J2735/src/r63/TravelerInfoType.c create mode 100644 src/tmx/Asn_J2735/src/r63/TravelerInformation.c create mode 100644 src/tmx/Asn_J2735/src/r63/URL-Base.c create mode 100644 src/tmx/Asn_J2735/src/r63/URL-Link.c create mode 100644 src/tmx/Asn_J2735/src/r63/URL-Short.c create mode 100644 src/tmx/Asn_J2735/src/r63/UniqueMSGID.c create mode 100644 src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c create mode 100644 src/tmx/Asn_J2735/src/r63/VINstring.c create mode 100644 src/tmx/Asn_J2735/src/r63/VType.c create mode 100644 src/tmx/Asn_J2735/src/r63/ValidRegion.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleClassification.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleData.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleHeight.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleID.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleIdent.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleLength.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleMass.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSize.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleType.c create mode 100644 src/tmx/Asn_J2735/src/r63/VehicleWidth.c create mode 100644 src/tmx/Asn_J2735/src/r63/Velocity.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B07.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B08.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B09.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B10.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B11.c create mode 100644 src/tmx/Asn_J2735/src/r63/VertOffset-B12.c create mode 100644 src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c create mode 100644 src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c create mode 100644 src/tmx/Asn_J2735/src/r63/VerticalOffset.c create mode 100644 src/tmx/Asn_J2735/src/r63/WaitOnStopline.c create mode 100644 src/tmx/Asn_J2735/src/r63/WeatherProbe.c create mode 100644 src/tmx/Asn_J2735/src/r63/WeatherReport.c create mode 100644 src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c create mode 100644 src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/WiperRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/WiperSet.c create mode 100644 src/tmx/Asn_J2735/src/r63/WiperStatus.c create mode 100644 src/tmx/Asn_J2735/src/r63/WorkZone.c create mode 100644 src/tmx/Asn_J2735/src/r63/YawDetected.c create mode 100644 src/tmx/Asn_J2735/src/r63/YawRate.c create mode 100644 src/tmx/Asn_J2735/src/r63/YawRateConfidence.c create mode 100644 src/tmx/Asn_J2735/src/r63/Year.c create mode 100644 src/tmx/Asn_J2735/src/r63/ZoneLength.c create mode 100644 src/tmx/Asn_J2735/src/r63/Zoom.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_application.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_bit_data.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_internal.c create mode 100644 src/tmx/Asn_J2735/src/r63/asn_random_fill.c create mode 100644 src/tmx/Asn_J2735/src/r63/ber_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/ber_tlv_length.c create mode 100644 src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_CHOICE.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_SET_OF.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c create mode 100644 src/tmx/Asn_J2735/src/r63/constr_TYPE.c create mode 100644 src/tmx/Asn_J2735/src/r63/constraints.c create mode 100644 src/tmx/Asn_J2735/src/r63/der_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/oer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/oer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/oer_support.c create mode 100644 src/tmx/Asn_J2735/src/r63/pdu_collection.c create mode 100644 src/tmx/Asn_J2735/src/r63/per_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/per_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/per_opentype.c create mode 100644 src/tmx/Asn_J2735/src/r63/per_support.c create mode 100644 src/tmx/Asn_J2735/src/r63/xer_decoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/xer_encoder.c create mode 100644 src/tmx/Asn_J2735/src/r63/xer_support.c diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h new file mode 100644 index 000000000..af69d5233 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelSteerYawRateConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AccelSteerYawRateConfidence_H_ +#define _AccelSteerYawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelSteerYawRateConfidence */ +typedef struct AccelSteerYawRateConfidence { + YawRateConfidence_t yawRate; + AccelerationConfidence_t acceleration; + SteeringWheelAngleConfidence_t steeringWheelAngle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelSteerYawRateConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelSteerYawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h new file mode 100644 index 000000000..9530a17dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Acceleration.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Acceleration_H_ +#define _Acceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Acceleration */ +typedef long Acceleration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Acceleration; +asn_struct_free_f Acceleration_free; +asn_struct_print_f Acceleration_print; +asn_constr_check_f Acceleration_constraint; +ber_type_decoder_f Acceleration_decode_ber; +der_type_encoder_f Acceleration_encode_der; +xer_type_decoder_f Acceleration_decode_xer; +xer_type_encoder_f Acceleration_encode_xer; +per_type_decoder_f Acceleration_decode_uper; +per_type_encoder_f Acceleration_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Acceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h new file mode 100644 index 000000000..391a3da92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationConfidence.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AccelerationConfidence_H_ +#define _AccelerationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AccelerationConfidence { + AccelerationConfidence_unavailable = 0, + AccelerationConfidence_accl_100_00 = 1, + AccelerationConfidence_accl_010_00 = 2, + AccelerationConfidence_accl_005_00 = 3, + AccelerationConfidence_accl_001_00 = 4, + AccelerationConfidence_accl_000_10 = 5, + AccelerationConfidence_accl_000_05 = 6, + AccelerationConfidence_accl_000_01 = 7 +} e_AccelerationConfidence; + +/* AccelerationConfidence */ +typedef long AccelerationConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; +asn_struct_free_f AccelerationConfidence_free; +asn_struct_print_f AccelerationConfidence_print; +asn_constr_check_f AccelerationConfidence_constraint; +ber_type_decoder_f AccelerationConfidence_decode_ber; +der_type_encoder_f AccelerationConfidence_encode_der; +xer_type_decoder_f AccelerationConfidence_decode_xer; +xer_type_encoder_f AccelerationConfidence_encode_xer; +per_type_decoder_f AccelerationConfidence_decode_uper; +per_type_encoder_f AccelerationConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h new file mode 100644 index 000000000..64fd54b73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AccelerationSet4Way.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AccelerationSet4Way_H_ +#define _AccelerationSet4Way_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelerationSet4Way */ +typedef OCTET_STRING_t AccelerationSet4Way_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; +asn_struct_free_f AccelerationSet4Way_free; +asn_struct_print_f AccelerationSet4Way_print; +asn_constr_check_f AccelerationSet4Way_constraint; +ber_type_decoder_f AccelerationSet4Way_decode_ber; +der_type_encoder_f AccelerationSet4Way_encode_der; +xer_type_decoder_f AccelerationSet4Way_decode_xer; +xer_type_encoder_f AccelerationSet4Way_encode_xer; +per_type_decoder_f AccelerationSet4Way_decode_uper; +per_type_encoder_f AccelerationSet4Way_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationSet4Way_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h new file mode 100644 index 000000000..242d91911 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeed.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AdvisorySpeed_H_ +#define _AdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AdvisorySpeedType.h" +#include "SpeedAdvice.h" +#include "SpeedConfidence.h" +#include "ZoneLength.h" +#include "RestrictionClassID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_AdvisorySpeed; + +/* AdvisorySpeed */ +typedef struct AdvisorySpeed { + AdvisorySpeedType_t type; + SpeedAdvice_t *speed /* OPTIONAL */; + SpeedConfidence_t *confidence /* OPTIONAL */; + ZoneLength_t *distance /* OPTIONAL */; + RestrictionClassID_t *Class /* OPTIONAL */; + struct Reg_AdvisorySpeed *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalAdvisorySpeed.h" + +#endif /* _AdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h new file mode 100644 index 000000000..707d5a4e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AdvisorySpeedList_H_ +#define _AdvisorySpeedList_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 AdvisorySpeed; + +/* AdvisorySpeedList */ +typedef struct AdvisorySpeedList { + A_SEQUENCE_OF(struct AdvisorySpeed) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AdvisorySpeedList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AdvisorySpeed.h" + +#endif /* _AdvisorySpeedList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h new file mode 100644 index 000000000..84bac56a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AdvisorySpeedType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AdvisorySpeedType_H_ +#define _AdvisorySpeedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AdvisorySpeedType { + AdvisorySpeedType_none = 0, + AdvisorySpeedType_greenwave = 1, + AdvisorySpeedType_ecoDrive = 2, + AdvisorySpeedType_transit = 3 + /* + * Enumeration is extensible + */ +} e_AdvisorySpeedType; + +/* AdvisorySpeedType */ +typedef long AdvisorySpeedType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; +asn_struct_free_f AdvisorySpeedType_free; +asn_struct_print_f AdvisorySpeedType_print; +asn_constr_check_f AdvisorySpeedType_constraint; +ber_type_decoder_f AdvisorySpeedType_decode_ber; +der_type_encoder_f AdvisorySpeedType_encode_der; +xer_type_decoder_f AdvisorySpeedType_decode_xer; +xer_type_encoder_f AdvisorySpeedType_encode_xer; +per_type_decoder_f AdvisorySpeedType_decode_uper; +per_type_encoder_f AdvisorySpeedType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h new file mode 100644 index 000000000..22c96e4fa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AllowedManeuvers.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AllowedManeuvers_H_ +#define _AllowedManeuvers_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AllowedManeuvers { + AllowedManeuvers_maneuverStraightAllowed = 0, + AllowedManeuvers_maneuverLeftAllowed = 1, + AllowedManeuvers_maneuverRightAllowed = 2, + AllowedManeuvers_maneuverUTurnAllowed = 3, + AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, + AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, + AllowedManeuvers_maneuverLaneChangeAllowed = 6, + AllowedManeuvers_maneuverNoStoppingAllowed = 7, + AllowedManeuvers_yieldAllwaysRequired = 8, + AllowedManeuvers_goWithHalt = 9, + AllowedManeuvers_caution = 10, + AllowedManeuvers_reserved1 = 11 +} e_AllowedManeuvers; + +/* AllowedManeuvers */ +typedef BIT_STRING_t AllowedManeuvers_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; +asn_struct_free_f AllowedManeuvers_free; +asn_struct_print_f AllowedManeuvers_print; +asn_constr_check_f AllowedManeuvers_constraint; +ber_type_decoder_f AllowedManeuvers_decode_ber; +der_type_encoder_f AllowedManeuvers_encode_der; +xer_type_decoder_f AllowedManeuvers_decode_xer; +xer_type_encoder_f AllowedManeuvers_encode_xer; +per_type_decoder_f AllowedManeuvers_decode_uper; +per_type_encoder_f AllowedManeuvers_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AllowedManeuvers_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h new file mode 100644 index 000000000..09ed8b5c9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Altitude.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Altitude_H_ +#define _Altitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AltitudeValue.h" +#include "AltitudeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Altitude */ +typedef struct Altitude { + AltitudeValue_t value; + AltitudeConfidence_t confidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Altitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Altitude; + +#ifdef __cplusplus +} +#endif + +#endif /* _Altitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h new file mode 100644 index 000000000..006ade96a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeConfidence.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AltitudeConfidence_H_ +#define _AltitudeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AltitudeConfidence { + AltitudeConfidence_alt_000_01 = 0, + AltitudeConfidence_alt_000_02 = 1, + AltitudeConfidence_alt_000_05 = 2, + AltitudeConfidence_alt_000_10 = 3, + AltitudeConfidence_alt_000_20 = 4, + AltitudeConfidence_alt_000_50 = 5, + AltitudeConfidence_alt_001_00 = 6, + AltitudeConfidence_alt_002_00 = 7, + AltitudeConfidence_alt_005_00 = 8, + AltitudeConfidence_alt_010_00 = 9, + AltitudeConfidence_alt_020_00 = 10, + AltitudeConfidence_alt_050_00 = 11, + AltitudeConfidence_alt_100_00 = 12, + AltitudeConfidence_alt_200_00 = 13, + AltitudeConfidence_outOfRange = 14, + AltitudeConfidence_unavailable = 15 +} e_AltitudeConfidence; + +/* AltitudeConfidence */ +typedef long AltitudeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; +asn_struct_free_f AltitudeConfidence_free; +asn_struct_print_f AltitudeConfidence_print; +asn_constr_check_f AltitudeConfidence_constraint; +ber_type_decoder_f AltitudeConfidence_decode_ber; +der_type_encoder_f AltitudeConfidence_encode_der; +xer_type_decoder_f AltitudeConfidence_decode_xer; +xer_type_encoder_f AltitudeConfidence_encode_xer; +per_type_decoder_f AltitudeConfidence_decode_uper; +per_type_encoder_f AltitudeConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h new file mode 100644 index 000000000..48cd544a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AltitudeValue.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AltitudeValue_H_ +#define _AltitudeValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AltitudeValue */ +typedef long AltitudeValue_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; +asn_struct_free_f AltitudeValue_free; +asn_struct_print_f AltitudeValue_print; +asn_constr_check_f AltitudeValue_constraint; +ber_type_decoder_f AltitudeValue_decode_ber; +der_type_encoder_f AltitudeValue_encode_der; +xer_type_decoder_f AltitudeValue_decode_xer; +xer_type_encoder_f AltitudeValue_encode_xer; +per_type_decoder_f AltitudeValue_decode_uper; +per_type_encoder_f AltitudeValue_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h new file mode 100644 index 000000000..dc2c0b7da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirPressure.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AmbientAirPressure_H_ +#define _AmbientAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirPressure */ +typedef long AmbientAirPressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; +asn_struct_free_f AmbientAirPressure_free; +asn_struct_print_f AmbientAirPressure_print; +asn_constr_check_f AmbientAirPressure_constraint; +ber_type_decoder_f AmbientAirPressure_decode_ber; +der_type_encoder_f AmbientAirPressure_encode_der; +xer_type_decoder_f AmbientAirPressure_decode_xer; +xer_type_encoder_f AmbientAirPressure_encode_xer; +per_type_decoder_f AmbientAirPressure_decode_uper; +per_type_encoder_f AmbientAirPressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h new file mode 100644 index 000000000..395f45a9b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AmbientAirTemperature.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AmbientAirTemperature_H_ +#define _AmbientAirTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirTemperature */ +typedef long AmbientAirTemperature_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; +asn_struct_free_f AmbientAirTemperature_free; +asn_struct_print_f AmbientAirTemperature_print; +asn_constr_check_f AmbientAirTemperature_constraint; +ber_type_decoder_f AmbientAirTemperature_decode_ber; +der_type_encoder_f AmbientAirTemperature_encode_der; +xer_type_decoder_f AmbientAirTemperature_decode_xer; +xer_type_encoder_f AmbientAirTemperature_encode_xer; +per_type_decoder_f AmbientAirTemperature_decode_uper; +per_type_encoder_f AmbientAirTemperature_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h new file mode 100644 index 000000000..d85ab337e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Angle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Angle_H_ +#define _Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Angle */ +typedef long Angle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Angle; +asn_struct_free_f Angle_free; +asn_struct_print_f Angle_print; +asn_constr_check_f Angle_constraint; +ber_type_decoder_f Angle_decode_ber; +der_type_encoder_f Angle_encode_der; +xer_type_decoder_f Angle_decode_xer; +xer_type_encoder_f Angle_encode_xer; +per_type_decoder_f Angle_decode_uper; +per_type_encoder_f Angle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h new file mode 100644 index 000000000..aa2be8dfc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalPropelledType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _AnimalPropelledType_H_ +#define _AnimalPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalPropelledType { + AnimalPropelledType_unavailable = 0, + AnimalPropelledType_otherTypes = 1, + AnimalPropelledType_animalMounted = 2, + AnimalPropelledType_animalDrawnCarriage = 3 + /* + * Enumeration is extensible + */ +} e_AnimalPropelledType; + +/* AnimalPropelledType */ +typedef long AnimalPropelledType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; +asn_struct_free_f AnimalPropelledType_free; +asn_struct_print_f AnimalPropelledType_print; +asn_constr_check_f AnimalPropelledType_constraint; +ber_type_decoder_f AnimalPropelledType_decode_ber; +der_type_encoder_f AnimalPropelledType_encode_der; +xer_type_decoder_f AnimalPropelledType_decode_xer; +xer_type_encoder_f AnimalPropelledType_encode_xer; +per_type_decoder_f AnimalPropelledType_decode_uper; +per_type_encoder_f AnimalPropelledType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h new file mode 100644 index 000000000..f6b67c1cc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AnimalType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _AnimalType_H_ +#define _AnimalType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalType { + AnimalType_unavailable = 0, + AnimalType_serviceUse = 1, + AnimalType_pet = 2, + AnimalType_farm = 3 + /* + * Enumeration is extensible + */ +} e_AnimalType; + +/* AnimalType */ +typedef long AnimalType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AnimalType; +asn_struct_free_f AnimalType_free; +asn_struct_print_f AnimalType_print; +asn_constr_check_f AnimalType_constraint; +ber_type_decoder_f AnimalType_decode_ber; +der_type_encoder_f AnimalType_encode_der; +xer_type_decoder_f AnimalType_decode_xer; +xer_type_encoder_f AnimalType_encode_xer; +per_type_decoder_f AnimalType_decode_uper; +per_type_encoder_f AnimalType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h new file mode 100644 index 000000000..3a69eaef2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntennaOffsetSet.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AntennaOffsetSet_H_ +#define _AntennaOffsetSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AntennaOffsetSet */ +typedef OCTET_STRING_t AntennaOffsetSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; +asn_struct_free_f AntennaOffsetSet_free; +asn_struct_print_f AntennaOffsetSet_print; +asn_constr_check_f AntennaOffsetSet_constraint; +ber_type_decoder_f AntennaOffsetSet_decode_ber; +der_type_encoder_f AntennaOffsetSet_encode_der; +xer_type_decoder_f AntennaOffsetSet_decode_xer; +xer_type_encoder_f AntennaOffsetSet_encode_xer; +per_type_decoder_f AntennaOffsetSet_decode_uper; +per_type_encoder_f AntennaOffsetSet_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntennaOffsetSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h new file mode 100644 index 000000000..a729d525e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AntiLockBrakeStatus.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AntiLockBrakeStatus_H_ +#define _AntiLockBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AntiLockBrakeStatus { + AntiLockBrakeStatus_unavailable = 0, + AntiLockBrakeStatus_off = 1, + AntiLockBrakeStatus_on = 2, + AntiLockBrakeStatus_engaged = 3 +} e_AntiLockBrakeStatus; + +/* AntiLockBrakeStatus */ +typedef long AntiLockBrakeStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; +asn_struct_free_f AntiLockBrakeStatus_free; +asn_struct_print_f AntiLockBrakeStatus_print; +asn_constr_check_f AntiLockBrakeStatus_constraint; +ber_type_decoder_f AntiLockBrakeStatus_decode_ber; +der_type_encoder_f AntiLockBrakeStatus_encode_der; +xer_type_decoder_f AntiLockBrakeStatus_decode_xer; +xer_type_encoder_f AntiLockBrakeStatus_encode_xer; +per_type_decoder_f AntiLockBrakeStatus_decode_uper; +per_type_encoder_f AntiLockBrakeStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntiLockBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h new file mode 100644 index 000000000..64f908651 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ApproachID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ApproachID_H_ +#define _ApproachID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ApproachID */ +typedef long ApproachID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ApproachID; +asn_struct_free_f ApproachID_free; +asn_struct_print_f ApproachID_print; +asn_constr_check_f ApproachID_constraint; +ber_type_decoder_f ApproachID_decode_ber; +der_type_encoder_f ApproachID_encode_der; +xer_type_decoder_f ApproachID_decode_xer; +xer_type_encoder_f ApproachID_encode_xer; +per_type_decoder_f ApproachID_decode_uper; +per_type_encoder_f ApproachID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h new file mode 100644 index 000000000..ab98b1a0c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Attachment.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _Attachment_H_ +#define _Attachment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Attachment { + Attachment_unavailable = 0, + Attachment_stroller = 1, + Attachment_bicycleTrailer = 2, + Attachment_cart = 3, + Attachment_wheelchair = 4, + Attachment_otherWalkAssistAttachments = 5, + Attachment_pet = 6 + /* + * Enumeration is extensible + */ +} e_Attachment; + +/* Attachment */ +typedef long Attachment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Attachment; +asn_struct_free_f Attachment_free; +asn_struct_print_f Attachment_print; +asn_constr_check_f Attachment_constraint; +ber_type_decoder_f Attachment_decode_ber; +der_type_encoder_f Attachment_encode_der; +xer_type_decoder_f Attachment_decode_xer; +xer_type_encoder_f Attachment_encode_xer; +per_type_decoder_f Attachment_decode_uper; +per_type_encoder_f Attachment_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attachment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h new file mode 100644 index 000000000..d279df415 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AttachmentRadius.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _AttachmentRadius_H_ +#define _AttachmentRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttachmentRadius */ +typedef long AttachmentRadius_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; +asn_struct_free_f AttachmentRadius_free; +asn_struct_print_f AttachmentRadius_print; +asn_constr_check_f AttachmentRadius_constraint; +ber_type_decoder_f AttachmentRadius_decode_ber; +der_type_encoder_f AttachmentRadius_encode_der; +xer_type_decoder_f AttachmentRadius_decode_xer; +xer_type_encoder_f AttachmentRadius_encode_xer; +per_type_decoder_f AttachmentRadius_decode_uper; +per_type_encoder_f AttachmentRadius_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttachmentRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h new file mode 100644 index 000000000..8f55485a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AuxiliaryBrakeStatus.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AuxiliaryBrakeStatus_H_ +#define _AuxiliaryBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AuxiliaryBrakeStatus { + AuxiliaryBrakeStatus_unavailable = 0, + AuxiliaryBrakeStatus_off = 1, + AuxiliaryBrakeStatus_on = 2, + AuxiliaryBrakeStatus_reserved = 3 +} e_AuxiliaryBrakeStatus; + +/* AuxiliaryBrakeStatus */ +typedef long AuxiliaryBrakeStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; +asn_struct_free_f AuxiliaryBrakeStatus_free; +asn_struct_print_f AuxiliaryBrakeStatus_print; +asn_constr_check_f AuxiliaryBrakeStatus_constraint; +ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; +der_type_encoder_f AuxiliaryBrakeStatus_encode_der; +xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; +xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; +per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AuxiliaryBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h new file mode 100644 index 000000000..3af48dc26 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleLocation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AxleLocation_H_ +#define _AxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleLocation */ +typedef long AxleLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; +asn_struct_free_f AxleLocation_free; +asn_struct_print_f AxleLocation_print; +asn_constr_check_f AxleLocation_constraint; +ber_type_decoder_f AxleLocation_decode_ber; +der_type_encoder_f AxleLocation_encode_der; +xer_type_decoder_f AxleLocation_decode_xer; +xer_type_encoder_f AxleLocation_encode_xer; +per_type_decoder_f AxleLocation_decode_uper; +per_type_encoder_f AxleLocation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h new file mode 100644 index 000000000..d66a002db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/AxleWeight.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _AxleWeight_H_ +#define _AxleWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeight */ +typedef long AxleWeight_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; +asn_struct_free_f AxleWeight_free; +asn_struct_print_f AxleWeight_print; +asn_constr_check_f AxleWeight_constraint; +ber_type_decoder_f AxleWeight_decode_ber; +der_type_encoder_f AxleWeight_encode_der; +xer_type_decoder_f AxleWeight_decode_xer; +xer_type_encoder_f AxleWeight_encode_xer; +per_type_decoder_f AxleWeight_decode_uper; +per_type_encoder_f AxleWeight_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h new file mode 100644 index 000000000..75435b89d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BIT_STRING.h @@ -0,0 +1,33 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BIT_STRING_H_ +#define _BIT_STRING_H_ + +#include "OCTET_STRING.h" /* Some help from OCTET STRING */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct BIT_STRING_s { + uint8_t *buf; /* BIT STRING body */ + int size; /* Size of the above buffer */ + + int bits_unused;/* Unused trailing bits in the last octet (0..7) */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} BIT_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; + +asn_struct_print_f BIT_STRING_print; /* Human-readable output */ +asn_constr_check_f BIT_STRING_constraint; +xer_type_encoder_f BIT_STRING_encode_xer; + +#ifdef __cplusplus +} +#endif + +#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h new file mode 100644 index 000000000..ebe5f8b44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BOOLEAN.h @@ -0,0 +1,36 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BOOLEAN_H_ +#define _BOOLEAN_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The underlying integer may contain various values, but everything + * non-zero is capped to 0xff by the DER encoder. The BER decoder may + * yield non-zero values different from 1, beware. + */ +typedef int BOOLEAN_t; + +extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; + +asn_struct_free_f BOOLEAN_free; +asn_struct_print_f BOOLEAN_print; +ber_type_decoder_f BOOLEAN_decode_ber; +der_type_encoder_f BOOLEAN_encode_der; +xer_type_decoder_f BOOLEAN_decode_xer; +xer_type_encoder_f BOOLEAN_encode_xer; +per_type_decoder_f BOOLEAN_decode_uper; +per_type_encoder_f BOOLEAN_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h new file mode 100644 index 000000000..69dca1fe4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BSMblob.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BSMblob_H_ +#define _BSMblob_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BSMblob */ +typedef OCTET_STRING_t BSMblob_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMblob; +asn_struct_free_f BSMblob_free; +asn_struct_print_f BSMblob_print; +asn_constr_check_f BSMblob_constraint; +ber_type_decoder_f BSMblob_decode_ber; +der_type_encoder_f BSMblob_encode_der; +xer_type_decoder_f BSMblob_decode_xer; +xer_type_encoder_f BSMblob_encode_xer; +per_type_decoder_f BSMblob_decode_uper; +per_type_encoder_f BSMblob_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BSMblob_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h new file mode 100644 index 000000000..a53d6a479 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessage.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BasicSafetyMessage_H_ +#define _BasicSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "BSMblob.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtension; +struct VehicleStatus; + +/* BasicSafetyMessage */ +typedef struct BasicSafetyMessage { + DSRCmsgID_t msgID; + BSMblob_t blob1; + struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; + struct VehicleStatus *status /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BasicSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleSafetyExtension.h" +#include "VehicleStatus.h" + +#endif /* _BasicSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h new file mode 100644 index 000000000..cd72fd2d0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BasicSafetyMessageVerbose.h @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BasicSafetyMessageVerbose_H_ +#define _BasicSafetyMessageVerbose_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "TemporaryID.h" +#include "DSecond.h" +#include "Latitude.h" +#include "Longitude.h" +#include "Elevation.h" +#include "PositionalAccuracy.h" +#include "TransmissionAndSpeed.h" +#include "Heading.h" +#include "SteeringWheelAngle.h" +#include "AccelerationSet4Way.h" +#include "BrakeSystemStatus.h" +#include "VehicleSize.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtension; +struct VehicleStatus; + +/* BasicSafetyMessageVerbose */ +typedef struct BasicSafetyMessageVerbose { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + TemporaryID_t id; + DSecond_t secMark; + Latitude_t lat; + Longitude_t Long; + Elevation_t elev; + PositionalAccuracy_t accuracy; + TransmissionAndSpeed_t speed; + Heading_t heading; + SteeringWheelAngle_t angle; + AccelerationSet4Way_t accelSet; + BrakeSystemStatus_t brakes; + VehicleSize_t size; + struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; + struct VehicleStatus *status /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BasicSafetyMessageVerbose_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessageVerbose; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleSafetyExtension.h" +#include "VehicleStatus.h" + +#endif /* _BasicSafetyMessageVerbose_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h new file mode 100644 index 000000000..4530e6051 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedPressure.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BrakeAppliedPressure_H_ +#define _BrakeAppliedPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedPressure { + BrakeAppliedPressure_unavailable = 0, + BrakeAppliedPressure_minPressure = 1, + BrakeAppliedPressure_bkLvl_2 = 2, + BrakeAppliedPressure_bkLvl_3 = 3, + BrakeAppliedPressure_bkLvl_4 = 4, + BrakeAppliedPressure_bkLvl_5 = 5, + BrakeAppliedPressure_bkLvl_6 = 6, + BrakeAppliedPressure_bkLvl_7 = 7, + BrakeAppliedPressure_bkLvl_8 = 8, + BrakeAppliedPressure_bkLvl_9 = 9, + BrakeAppliedPressure_bkLvl_10 = 10, + BrakeAppliedPressure_bkLvl_11 = 11, + BrakeAppliedPressure_bkLvl_12 = 12, + BrakeAppliedPressure_bkLvl_13 = 13, + BrakeAppliedPressure_bkLvl_14 = 14, + BrakeAppliedPressure_maxPressure = 15 +} e_BrakeAppliedPressure; + +/* BrakeAppliedPressure */ +typedef long BrakeAppliedPressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; +asn_struct_free_f BrakeAppliedPressure_free; +asn_struct_print_f BrakeAppliedPressure_print; +asn_constr_check_f BrakeAppliedPressure_constraint; +ber_type_decoder_f BrakeAppliedPressure_decode_ber; +der_type_encoder_f BrakeAppliedPressure_encode_der; +xer_type_decoder_f BrakeAppliedPressure_decode_xer; +xer_type_encoder_f BrakeAppliedPressure_encode_xer; +per_type_decoder_f BrakeAppliedPressure_decode_uper; +per_type_encoder_f BrakeAppliedPressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h new file mode 100644 index 000000000..69fd80985 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeAppliedStatus.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BrakeAppliedStatus_H_ +#define _BrakeAppliedStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedStatus { + BrakeAppliedStatus_allOff = 0, + BrakeAppliedStatus_leftFront = 1, + BrakeAppliedStatus_leftRear = 2, + BrakeAppliedStatus_rightFront = 4, + BrakeAppliedStatus_rightRear = 8 +} e_BrakeAppliedStatus; + +/* BrakeAppliedStatus */ +typedef BIT_STRING_t BrakeAppliedStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; +asn_struct_free_f BrakeAppliedStatus_free; +asn_struct_print_f BrakeAppliedStatus_print; +asn_constr_check_f BrakeAppliedStatus_constraint; +ber_type_decoder_f BrakeAppliedStatus_decode_ber; +der_type_encoder_f BrakeAppliedStatus_encode_der; +xer_type_decoder_f BrakeAppliedStatus_decode_xer; +xer_type_encoder_f BrakeAppliedStatus_encode_xer; +per_type_decoder_f BrakeAppliedStatus_decode_uper; +per_type_encoder_f BrakeAppliedStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h new file mode 100644 index 000000000..e2c2d8abb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeBoostApplied.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BrakeBoostApplied_H_ +#define _BrakeBoostApplied_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeBoostApplied { + BrakeBoostApplied_unavailable = 0, + BrakeBoostApplied_off = 1, + BrakeBoostApplied_on = 2 +} e_BrakeBoostApplied; + +/* BrakeBoostApplied */ +typedef long BrakeBoostApplied_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; +asn_struct_free_f BrakeBoostApplied_free; +asn_struct_print_f BrakeBoostApplied_print; +asn_constr_check_f BrakeBoostApplied_constraint; +ber_type_decoder_f BrakeBoostApplied_decode_ber; +der_type_encoder_f BrakeBoostApplied_encode_der; +xer_type_decoder_f BrakeBoostApplied_decode_xer; +xer_type_encoder_f BrakeBoostApplied_encode_xer; +per_type_decoder_f BrakeBoostApplied_decode_uper; +per_type_encoder_f BrakeBoostApplied_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeBoostApplied_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h new file mode 100644 index 000000000..7325ecc9a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BrakeSystemStatus.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BrakeSystemStatus_H_ +#define _BrakeSystemStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BrakeSystemStatus */ +typedef OCTET_STRING_t BrakeSystemStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; +asn_struct_free_f BrakeSystemStatus_free; +asn_struct_print_f BrakeSystemStatus_print; +asn_constr_check_f BrakeSystemStatus_constraint; +ber_type_decoder_f BrakeSystemStatus_decode_ber; +der_type_encoder_f BrakeSystemStatus_encode_der; +xer_type_decoder_f BrakeSystemStatus_decode_xer; +xer_type_encoder_f BrakeSystemStatus_encode_xer; +per_type_decoder_f BrakeSystemStatus_decode_uper; +per_type_encoder_f BrakeSystemStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeSystemStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h new file mode 100644 index 000000000..54c7ef8ae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightFront.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BumperHeightFront_H_ +#define _BumperHeightFront_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeightFront */ +typedef long BumperHeightFront_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeightFront; +asn_struct_free_f BumperHeightFront_free; +asn_struct_print_f BumperHeightFront_print; +asn_constr_check_f BumperHeightFront_constraint; +ber_type_decoder_f BumperHeightFront_decode_ber; +der_type_encoder_f BumperHeightFront_encode_der; +xer_type_decoder_f BumperHeightFront_decode_xer; +xer_type_encoder_f BumperHeightFront_encode_xer; +per_type_decoder_f BumperHeightFront_decode_uper; +per_type_encoder_f BumperHeightFront_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeightFront_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h new file mode 100644 index 000000000..be354dee2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeightRear.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BumperHeightRear_H_ +#define _BumperHeightRear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeightRear */ +typedef long BumperHeightRear_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeightRear; +asn_struct_free_f BumperHeightRear_free; +asn_struct_print_f BumperHeightRear_print; +asn_constr_check_f BumperHeightRear_constraint; +ber_type_decoder_f BumperHeightRear_decode_ber; +der_type_encoder_f BumperHeightRear_encode_der; +xer_type_decoder_f BumperHeightRear_decode_xer; +xer_type_encoder_f BumperHeightRear_encode_xer; +per_type_decoder_f BumperHeightRear_decode_uper; +per_type_encoder_f BumperHeightRear_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeightRear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h new file mode 100644 index 000000000..ba8596003 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/BumperHeights.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _BumperHeights_H_ +#define _BumperHeights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BumperHeightFront.h" +#include "BumperHeightRear.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeights */ +typedef struct BumperHeights { + BumperHeightFront_t frnt; + BumperHeightRear_t rear; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BumperHeights_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h new file mode 100644 index 000000000..cc45695ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/CargoWeight.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _CargoWeight_H_ +#define _CargoWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CargoWeight */ +typedef long CargoWeight_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; +asn_struct_free_f CargoWeight_free; +asn_struct_print_f CargoWeight_print; +asn_constr_check_f CargoWeight_constraint; +ber_type_decoder_f CargoWeight_decode_ber; +der_type_encoder_f CargoWeight_encode_der; +xer_type_decoder_f CargoWeight_decode_xer; +xer_type_encoder_f CargoWeight_encode_xer; +per_type_decoder_f CargoWeight_decode_uper; +per_type_encoder_f CargoWeight_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CargoWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h new file mode 100644 index 000000000..7d3f2ffae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Circle.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Circle_H_ +#define _Circle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "NativeInteger.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Circle__raduis_PR { + Circle__raduis_PR_NOTHING, /* No components present */ + Circle__raduis_PR_radiusSteps, + Circle__raduis_PR_miles, + Circle__raduis_PR_km +} Circle__raduis_PR; + +/* Circle */ +typedef struct Circle { + Position3D_t center; + struct Circle__raduis { + Circle__raduis_PR present; + union Circle__raduis_u { + long radiusSteps; + long miles; + long km; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } raduis; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Circle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Circle; + +#ifdef __cplusplus +} +#endif + +#endif /* _Circle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h new file mode 100644 index 000000000..e95b6ceda --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/CodeWord.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _CodeWord_H_ +#define _CodeWord_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CodeWord */ +typedef OCTET_STRING_t CodeWord_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CodeWord; +asn_struct_free_f CodeWord_free; +asn_struct_print_f CodeWord_print; +asn_constr_check_f CodeWord_constraint; +ber_type_decoder_f CodeWord_decode_ber; +der_type_encoder_f CodeWord_encode_der; +xer_type_decoder_f CodeWord_decode_xer; +xer_type_encoder_f CodeWord_encode_xer; +per_type_decoder_f CodeWord_decode_uper; +per_type_encoder_f CodeWord_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CodeWord_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h new file mode 100644 index 000000000..115c99768 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/CoefficientOfFriction.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _CoefficientOfFriction_H_ +#define _CoefficientOfFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoefficientOfFriction */ +typedef long CoefficientOfFriction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; +asn_struct_free_f CoefficientOfFriction_free; +asn_struct_print_f CoefficientOfFriction_print; +asn_constr_check_f CoefficientOfFriction_constraint; +ber_type_decoder_f CoefficientOfFriction_decode_ber; +der_type_encoder_f CoefficientOfFriction_encode_der; +xer_type_decoder_f CoefficientOfFriction_decode_xer; +xer_type_encoder_f CoefficientOfFriction_encode_xer; +per_type_decoder_f CoefficientOfFriction_decode_uper; +per_type_encoder_f CoefficientOfFriction_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoefficientOfFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h new file mode 100644 index 000000000..78c43e2e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/CommonSafetyRequest.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _CommonSafetyRequest_H_ +#define _CommonSafetyRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "TemporaryID.h" +#include "RequestedItem.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CommonSafetyRequest */ +typedef struct CommonSafetyRequest { + DSRCmsgID_t msgID; + MsgCount_t *msgCnt /* OPTIONAL */; + TemporaryID_t *id /* OPTIONAL */; + struct CommonSafetyRequest__requests { + A_SEQUENCE_OF(RequestedItem_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } requests; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} CommonSafetyRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; + +#ifdef __cplusplus +} +#endif + +#endif /* _CommonSafetyRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h new file mode 100644 index 000000000..e4064f1c4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ComputedLane.h @@ -0,0 +1,89 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ComputedLane_H_ +#define _ComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "Angle.h" +#include "Scale-B12.h" +#include "DrivenLineOffsetSm.h" +#include "DrivenLineOffsetLg.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ComputedLane__offsetXaxis_PR { + ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetXaxis_PR_small, + ComputedLane__offsetXaxis_PR_large +} ComputedLane__offsetXaxis_PR; +typedef enum ComputedLane__offsetYaxis_PR { + ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetYaxis_PR_small, + ComputedLane__offsetYaxis_PR_large +} ComputedLane__offsetYaxis_PR; + +/* Forward declarations */ +struct Reg_ComputedLane; + +/* ComputedLane */ +typedef struct ComputedLane { + LaneID_t referenceLaneId; + struct ComputedLane__offsetXaxis { + ComputedLane__offsetXaxis_PR present; + union ComputedLane__offsetXaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetXaxis; + struct ComputedLane__offsetYaxis { + ComputedLane__offsetYaxis_PR present; + union ComputedLane__offsetYaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetYaxis; + Angle_t *rotateXY /* OPTIONAL */; + Scale_B12_t *scaleXaxis /* OPTIONAL */; + Scale_B12_t *scaleYaxis /* OPTIONAL */; + struct Reg_ComputedLane *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalComputedLane.h" + +#endif /* _ComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h new file mode 100644 index 000000000..b7dfdd9a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConfidenceSet.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ConfidenceSet_H_ +#define _ConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedandHeadingandThrottleConfidence.h" +#include "TimeConfidence.h" +#include "PositionConfidenceSet.h" +#include "SteeringWheelAngleConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelSteerYawRateConfidence; + +/* ConfidenceSet */ +typedef struct ConfidenceSet { + struct AccelSteerYawRateConfidence *accelConfidence /* OPTIONAL */; + SpeedandHeadingandThrottleConfidence_t *speedConfidence /* OPTIONAL */; + TimeConfidence_t *timeConfidence /* OPTIONAL */; + PositionConfidenceSet_t *posConfidence /* OPTIONAL */; + SteeringWheelAngleConfidence_t *steerConfidence /* OPTIONAL */; + ThrottleConfidence_t *throttleConfidence /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelSteerYawRateConfidence.h" + +#endif /* _ConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h new file mode 100644 index 000000000..3afa36a0a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectingLane.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ConnectingLane_H_ +#define _ConnectingLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "AllowedManeuvers.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ConnectingLane */ +typedef struct ConnectingLane { + LaneID_t lane; + AllowedManeuvers_t *maneuver /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectingLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectingLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h new file mode 100644 index 000000000..867a6783d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Connection.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Connection_H_ +#define _Connection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ConnectingLane.h" +#include "SignalGroupID.h" +#include "RestrictionClassID.h" +#include "LaneConnectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionReferenceID; + +/* Connection */ +typedef struct Connection { + ConnectingLane_t connectingLane; + struct IntersectionReferenceID *remoteIntersection /* OPTIONAL */; + SignalGroupID_t *signalGroup /* OPTIONAL */; + RestrictionClassID_t *userClass /* OPTIONAL */; + LaneConnectionID_t *connectionID /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Connection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Connection; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionReferenceID.h" + +#endif /* _Connection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h new file mode 100644 index 000000000..bfdafb0ac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectionManeuverAssist.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ConnectionManeuverAssist_H_ +#define _ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneConnectionID.h" +#include "ZoneLength.h" +#include "WaitOnStopline.h" +#include "PedestrianBicycleDetect.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_ConnectionManeuverAssist; + +/* ConnectionManeuverAssist */ +typedef struct ConnectionManeuverAssist { + LaneConnectionID_t connectionID; + ZoneLength_t *queueLength /* OPTIONAL */; + ZoneLength_t *availableStorageLength /* OPTIONAL */; + WaitOnStopline_t *waitOnStop /* OPTIONAL */; + PedestrianBicycleDetect_t *pedBicycleDetect /* OPTIONAL */; + struct Reg_ConnectionManeuverAssist *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalConnectionManeuverAssist.h" + +#endif /* _ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h new file mode 100644 index 000000000..74d92e56d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ConnectsToList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ConnectsToList_H_ +#define _ConnectsToList_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 Connection; + +/* ConnectsToList */ +typedef struct ConnectsToList { + A_SEQUENCE_OF(struct Connection) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectsToList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Connection.h" + +#endif /* _ConnectsToList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h new file mode 100644 index 000000000..beee9f0fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Count.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Count_H_ +#define _Count_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Count */ +typedef long Count_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Count; +asn_struct_free_f Count_free; +asn_struct_print_f Count_print; +asn_constr_check_f Count_constraint; +ber_type_decoder_f Count_decode_ber; +der_type_encoder_f Count_encode_der; +xer_type_decoder_f Count_decode_xer; +xer_type_encoder_f Count_encode_xer; +per_type_decoder_f Count_decode_uper; +per_type_encoder_f Count_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Count_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h new file mode 100644 index 000000000..2cbeb94a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDate.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DDate_H_ +#define _DDate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDate */ +typedef struct DDate { + DYear_t year; + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDate; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h new file mode 100644 index 000000000..602a1d44e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDateTime.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DDateTime_H_ +#define _DDateTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDateTime */ +typedef struct DDateTime { + DYear_t *year /* OPTIONAL */; + DMonth_t *month /* OPTIONAL */; + DDay_t *day /* OPTIONAL */; + DHour_t *hour /* OPTIONAL */; + DMinute_t *minute /* OPTIONAL */; + DSecond_t *second /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDateTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDateTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDateTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h new file mode 100644 index 000000000..6b9509913 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DDay.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DDay_H_ +#define _DDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDay */ +typedef long DDay_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDay; +asn_struct_free_f DDay_free; +asn_struct_print_f DDay_print; +asn_constr_check_f DDay_constraint; +ber_type_decoder_f DDay_decode_ber; +der_type_encoder_f DDay_encode_der; +xer_type_decoder_f DDay_decode_xer; +xer_type_encoder_f DDay_encode_xer; +per_type_decoder_f DDay_decode_uper; +per_type_encoder_f DDay_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h new file mode 100644 index 000000000..6428edc89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DFullTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DFullTime_H_ +#define _DFullTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DFullTime */ +typedef struct DFullTime { + DYear_t year; + DMonth_t month; + DDay_t day; + DHour_t hour; + DMinute_t minute; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DFullTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DFullTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DFullTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h new file mode 100644 index 000000000..3093ae5e1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DHour.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DHour_H_ +#define _DHour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DHour */ +typedef long DHour_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DHour; +asn_struct_free_f DHour_free; +asn_struct_print_f DHour_print; +asn_constr_check_f DHour_constraint; +ber_type_decoder_f DHour_decode_ber; +der_type_encoder_f DHour_encode_der; +xer_type_decoder_f DHour_decode_xer; +xer_type_encoder_f DHour_encode_xer; +per_type_decoder_f DHour_decode_uper; +per_type_encoder_f DHour_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DHour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h new file mode 100644 index 000000000..e4497f359 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMinute.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DMinute_H_ +#define _DMinute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMinute */ +typedef long DMinute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMinute; +asn_struct_free_f DMinute_free; +asn_struct_print_f DMinute_print; +asn_constr_check_f DMinute_constraint; +ber_type_decoder_f DMinute_decode_ber; +der_type_encoder_f DMinute_encode_der; +xer_type_decoder_f DMinute_decode_xer; +xer_type_encoder_f DMinute_encode_xer; +per_type_decoder_f DMinute_decode_uper; +per_type_encoder_f DMinute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMinute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h new file mode 100644 index 000000000..4c7cb99dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonth.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DMonth_H_ +#define _DMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonth */ +typedef long DMonth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMonth; +asn_struct_free_f DMonth_free; +asn_struct_print_f DMonth_print; +asn_constr_check_f DMonth_constraint; +ber_type_decoder_f DMonth_decode_ber; +der_type_encoder_f DMonth_encode_der; +xer_type_decoder_f DMonth_decode_xer; +xer_type_encoder_f DMonth_encode_xer; +per_type_decoder_f DMonth_decode_uper; +per_type_encoder_f DMonth_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h new file mode 100644 index 000000000..70334867a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DMonthDay.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DMonthDay_H_ +#define _DMonthDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonthDay */ +typedef struct DMonthDay { + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DMonthDay_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonthDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h new file mode 100644 index 000000000..c4f463ada --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DOffset.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DOffset_H_ +#define _DOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DOffset */ +typedef long DOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DOffset; +asn_struct_free_f DOffset_free; +asn_struct_print_f DOffset_print; +asn_constr_check_f DOffset_constraint; +ber_type_decoder_f DOffset_decode_ber; +der_type_encoder_f DOffset_encode_der; +xer_type_decoder_f DOffset_decode_xer; +xer_type_encoder_f DOffset_encode_xer; +per_type_decoder_f DOffset_decode_uper; +per_type_encoder_f DOffset_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h new file mode 100644 index 000000000..4b12d57ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCEquippedType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#ifndef _DSRCEquippedType_H_ +#define _DSRCEquippedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCEquippedType */ +typedef BOOLEAN_t DSRCEquippedType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType; +asn_struct_free_f DSRCEquippedType_free; +asn_struct_print_f DSRCEquippedType_print; +asn_constr_check_f DSRCEquippedType_constraint; +ber_type_decoder_f DSRCEquippedType_decode_ber; +der_type_encoder_f DSRCEquippedType_encode_der; +xer_type_decoder_f DSRCEquippedType_decode_xer; +xer_type_encoder_f DSRCEquippedType_encode_xer; +per_type_decoder_f DSRCEquippedType_decode_uper; +per_type_encoder_f DSRCEquippedType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCEquippedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h new file mode 100644 index 000000000..5dba485a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DSRCmsgID_H_ +#define _DSRCmsgID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DSRCmsgID { + DSRCmsgID_reserved = 0, + DSRCmsgID_alaCarteMessage = 1, + DSRCmsgID_basicSafetyMessage = 2, + DSRCmsgID_basicSafetyMessageVerbose = 3, + DSRCmsgID_commonSafetyRequest = 4, + DSRCmsgID_emergencyVehicleAlert = 5, + DSRCmsgID_intersectionCollisionAlert = 6, + DSRCmsgID_mapData = 7, + DSRCmsgID_nmeaCorrections = 8, + DSRCmsgID_probeDataManagement = 9, + DSRCmsgID_probeVehicleData = 10, + DSRCmsgID_roadSideAlert = 11, + DSRCmsgID_rtcmCorrections = 12, + DSRCmsgID_signalPhaseAndTimingMessage = 13, + DSRCmsgID_signalRequestMessage = 14, + DSRCmsgID_signalStatusMessage = 15, + DSRCmsgID_travelerInformation = 16 + /* + * Enumeration is extensible + */ +} e_DSRCmsgID; + +/* DSRCmsgID */ +typedef long DSRCmsgID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; +asn_struct_free_f DSRCmsgID_free; +asn_struct_print_f DSRCmsgID_print; +asn_constr_check_f DSRCmsgID_constraint; +ber_type_decoder_f DSRCmsgID_decode_ber; +der_type_encoder_f DSRCmsgID_encode_der; +xer_type_decoder_f DSRCmsgID_decode_xer; +xer_type_encoder_f DSRCmsgID_encode_xer; +per_type_decoder_f DSRCmsgID_decode_uper; +per_type_encoder_f DSRCmsgID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h new file mode 100644 index 000000000..1597fb1ac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgID2.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DSRCmsgID2_H_ +#define _DSRCmsgID2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCmsgID2 */ +typedef long DSRCmsgID2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID2; +asn_struct_free_f DSRCmsgID2_free; +asn_struct_print_f DSRCmsgID2_print; +asn_constr_check_f DSRCmsgID2_constraint; +ber_type_decoder_f DSRCmsgID2_decode_ber; +der_type_encoder_f DSRCmsgID2_encode_der; +xer_type_decoder_f DSRCmsgID2_decode_xer; +xer_type_encoder_f DSRCmsgID2_encode_xer; +per_type_decoder_f DSRCmsgID2_decode_uper; +per_type_encoder_f DSRCmsgID2_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgID2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h new file mode 100644 index 000000000..7f30523d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSRCmsgSubID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DSRCmsgSubID_H_ +#define _DSRCmsgSubID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCmsgSubID */ +typedef long DSRCmsgSubID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgSubID; +asn_struct_free_f DSRCmsgSubID_free; +asn_struct_print_f DSRCmsgSubID_print; +asn_constr_check_f DSRCmsgSubID_constraint; +ber_type_decoder_f DSRCmsgSubID_decode_ber; +der_type_encoder_f DSRCmsgSubID_encode_der; +xer_type_decoder_f DSRCmsgSubID_decode_xer; +xer_type_encoder_f DSRCmsgSubID_encode_xer; +per_type_decoder_f DSRCmsgSubID_decode_uper; +per_type_encoder_f DSRCmsgSubID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgSubID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h new file mode 100644 index 000000000..f10b0a6f9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DSecond_H_ +#define _DSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSecond */ +typedef long DSecond_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSecond; +asn_struct_free_f DSecond_free; +asn_struct_print_f DSecond_print; +asn_constr_check_f DSecond_constraint; +ber_type_decoder_f DSecond_decode_ber; +der_type_encoder_f DSecond_encode_der; +xer_type_decoder_f DSecond_decode_xer; +xer_type_encoder_f DSecond_encode_xer; +per_type_decoder_f DSecond_decode_uper; +per_type_encoder_f DSecond_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h new file mode 100644 index 000000000..69b29193f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DSecond2.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DSecond2_H_ +#define _DSecond2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSecond2 */ +typedef long DSecond2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSecond2; +asn_struct_free_f DSecond2_free; +asn_struct_print_f DSecond2_print; +asn_constr_check_f DSecond2_constraint; +ber_type_decoder_f DSecond2_decode_ber; +der_type_encoder_f DSecond2_encode_der; +xer_type_decoder_f DSecond2_decode_xer; +xer_type_encoder_f DSecond2_encode_xer; +per_type_decoder_f DSecond2_decode_uper; +per_type_encoder_f DSecond2_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSecond2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h new file mode 100644 index 000000000..9fbdcb73e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DTime.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DTime_H_ +#define _DTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DTime */ +typedef struct DTime { + DHour_t hour; + DMinute_t minute; + DSecond_t second; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h new file mode 100644 index 000000000..e04d48154 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYear.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DYear_H_ +#define _DYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYear */ +typedef long DYear_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DYear; +asn_struct_free_f DYear_free; +asn_struct_print_f DYear_print; +asn_constr_check_f DYear_constraint; +ber_type_decoder_f DYear_decode_ber; +der_type_encoder_f DYear_encode_der; +xer_type_decoder_f DYear_decode_xer; +xer_type_encoder_f DYear_encode_xer; +per_type_decoder_f DYear_decode_uper; +per_type_encoder_f DYear_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h new file mode 100644 index 000000000..39985e725 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DYearMonth.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DYearMonth_H_ +#define _DYearMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYearMonth */ +typedef struct DYearMonth { + DYear_t year; + DMonth_t month; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DYearMonth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYearMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h new file mode 100644 index 000000000..5d38ab776 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DataParameters.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DataParameters_H_ +#define _DataParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DataParameters */ +typedef struct DataParameters { + IA5String_t *processMethod /* OPTIONAL */; + IA5String_t *processAgency /* OPTIONAL */; + IA5String_t *lastCheckedDate /* OPTIONAL */; + IA5String_t *geoidUsed /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DataParameters_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DataParameters; + +#ifdef __cplusplus +} +#endif + +#endif /* _DataParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h new file mode 100644 index 000000000..07f2f731d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Day.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Day_H_ +#define _Day_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Day */ +typedef long Day_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Day; +asn_struct_free_f Day_free; +asn_struct_print_f Day_print; +asn_constr_check_f Day_constraint; +ber_type_decoder_f Day_decode_ber; +der_type_encoder_f Day_encode_der; +xer_type_decoder_f Day_decode_xer; +xer_type_encoder_f Day_encode_xer; +per_type_decoder_f Day_decode_uper; +per_type_encoder_f Day_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Day_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h new file mode 100644 index 000000000..19b00c105 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DayOfWeek.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DayOfWeek_H_ +#define _DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DayOfWeek { + DayOfWeek_unknown = 0, + DayOfWeek_monday = 1, + DayOfWeek_tuesday = 2, + DayOfWeek_wednesday = 3, + DayOfWeek_thursday = 4, + DayOfWeek_friday = 5, + DayOfWeek_saturday = 6, + DayOfWeek_sunday = 7 +} e_DayOfWeek; + +/* DayOfWeek */ +typedef long DayOfWeek_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; +asn_struct_free_f DayOfWeek_free; +asn_struct_print_f DayOfWeek_print; +asn_constr_check_f DayOfWeek_constraint; +ber_type_decoder_f DayOfWeek_decode_ber; +der_type_encoder_f DayOfWeek_encode_der; +xer_type_decoder_f DayOfWeek_decode_xer; +xer_type_encoder_f DayOfWeek_encode_xer; +per_type_decoder_f DayOfWeek_decode_uper; +per_type_encoder_f DayOfWeek_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h new file mode 100644 index 000000000..8dcce8d46 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLat.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DegreesLat_H_ +#define _DegreesLat_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLat */ +typedef long DegreesLat_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; +asn_struct_free_f DegreesLat_free; +asn_struct_print_f DegreesLat_print; +asn_constr_check_f DegreesLat_constraint; +ber_type_decoder_f DegreesLat_decode_ber; +der_type_encoder_f DegreesLat_encode_der; +xer_type_decoder_f DegreesLat_decode_xer; +xer_type_encoder_f DegreesLat_encode_xer; +per_type_decoder_f DegreesLat_decode_uper; +per_type_encoder_f DegreesLat_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLat_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h new file mode 100644 index 000000000..a094c99c5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DegreesLong.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DegreesLong_H_ +#define _DegreesLong_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLong */ +typedef long DegreesLong_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; +asn_struct_free_f DegreesLong_free; +asn_struct_print_f DegreesLong_print; +asn_constr_check_f DegreesLong_constraint; +ber_type_decoder_f DegreesLong_decode_ber; +der_type_encoder_f DegreesLong_encode_der; +xer_type_decoder_f DegreesLong_decode_xer; +xer_type_encoder_f DegreesLong_encode_xer; +per_type_decoder_f DegreesLong_decode_uper; +per_type_encoder_f DegreesLong_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLong_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h new file mode 100644 index 000000000..7a7962a2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DeltaAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DeltaAngle_H_ +#define _DeltaAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaAngle */ +typedef long DeltaAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; +asn_struct_free_f DeltaAngle_free; +asn_struct_print_f DeltaAngle_print; +asn_constr_check_f DeltaAngle_constraint; +ber_type_decoder_f DeltaAngle_decode_ber; +der_type_encoder_f DeltaAngle_encode_der; +xer_type_decoder_f DeltaAngle_decode_xer; +xer_type_encoder_f DeltaAngle_encode_xer; +per_type_decoder_f DeltaAngle_decode_uper; +per_type_encoder_f DeltaAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h new file mode 100644 index 000000000..830bd82c1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DescriptiveName.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DescriptiveName_H_ +#define _DescriptiveName_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DescriptiveName */ +typedef IA5String_t DescriptiveName_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; +asn_struct_free_f DescriptiveName_free; +asn_struct_print_f DescriptiveName_print; +asn_constr_check_f DescriptiveName_constraint; +ber_type_decoder_f DescriptiveName_decode_ber; +der_type_encoder_f DescriptiveName_encode_der; +xer_type_decoder_f DescriptiveName_decode_xer; +xer_type_encoder_f DescriptiveName_encode_xer; +per_type_decoder_f DescriptiveName_decode_uper; +per_type_encoder_f DescriptiveName_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DescriptiveName_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h new file mode 100644 index 000000000..1257d38ce --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DestinationType.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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; + +#ifdef __cplusplus +} +#endif + +#endif /* _DestinationType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h new file mode 100644 index 000000000..d0e03a277 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DirectionOfUse.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DirectionOfUse_H_ +#define _DirectionOfUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DirectionOfUse { + DirectionOfUse_forward = 0, + DirectionOfUse_reverse = 1, + DirectionOfUse_both = 2 + /* + * Enumeration is extensible + */ +} e_DirectionOfUse; + +/* DirectionOfUse */ +typedef long DirectionOfUse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; +asn_struct_free_f DirectionOfUse_free; +asn_struct_print_f DirectionOfUse_print; +asn_constr_check_f DirectionOfUse_constraint; +ber_type_decoder_f DirectionOfUse_decode_ber; +der_type_encoder_f DirectionOfUse_encode_der; +xer_type_decoder_f DirectionOfUse_decode_xer; +xer_type_encoder_f DirectionOfUse_encode_xer; +per_type_decoder_f DirectionOfUse_decode_uper; +per_type_encoder_f DirectionOfUse_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DirectionOfUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h new file mode 100644 index 000000000..2f9446928 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLiftAirPressure.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DriveAxleLiftAirPressure_H_ +#define _DriveAxleLiftAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLiftAirPressure */ +typedef long DriveAxleLiftAirPressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; +asn_struct_free_f DriveAxleLiftAirPressure_free; +asn_struct_print_f DriveAxleLiftAirPressure_print; +asn_constr_check_f DriveAxleLiftAirPressure_constraint; +ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; +der_type_encoder_f DriveAxleLiftAirPressure_encode_der; +xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; +xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; +per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLiftAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h new file mode 100644 index 000000000..2ac97805a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLocation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DriveAxleLocation_H_ +#define _DriveAxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLocation */ +typedef long DriveAxleLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; +asn_struct_free_f DriveAxleLocation_free; +asn_struct_print_f DriveAxleLocation_print; +asn_constr_check_f DriveAxleLocation_constraint; +ber_type_decoder_f DriveAxleLocation_decode_ber; +der_type_encoder_f DriveAxleLocation_encode_der; +xer_type_decoder_f DriveAxleLocation_decode_xer; +xer_type_encoder_f DriveAxleLocation_encode_xer; +per_type_decoder_f DriveAxleLocation_decode_uper; +per_type_encoder_f DriveAxleLocation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h new file mode 100644 index 000000000..42932faca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleLubePressure.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DriveAxleLubePressure_H_ +#define _DriveAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLubePressure */ +typedef long DriveAxleLubePressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; +asn_struct_free_f DriveAxleLubePressure_free; +asn_struct_print_f DriveAxleLubePressure_print; +asn_constr_check_f DriveAxleLubePressure_constraint; +ber_type_decoder_f DriveAxleLubePressure_decode_ber; +der_type_encoder_f DriveAxleLubePressure_encode_der; +xer_type_decoder_f DriveAxleLubePressure_decode_xer; +xer_type_encoder_f DriveAxleLubePressure_encode_xer; +per_type_decoder_f DriveAxleLubePressure_decode_uper; +per_type_encoder_f DriveAxleLubePressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h new file mode 100644 index 000000000..c7f2b8292 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DriveAxleTemperature.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DriveAxleTemperature_H_ +#define _DriveAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleTemperature */ +typedef long DriveAxleTemperature_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; +asn_struct_free_f DriveAxleTemperature_free; +asn_struct_print_f DriveAxleTemperature_print; +asn_constr_check_f DriveAxleTemperature_constraint; +ber_type_decoder_f DriveAxleTemperature_decode_ber; +der_type_encoder_f DriveAxleTemperature_encode_der; +xer_type_decoder_f DriveAxleTemperature_decode_xer; +xer_type_encoder_f DriveAxleTemperature_encode_xer; +per_type_decoder_f DriveAxleTemperature_decode_uper; +per_type_encoder_f DriveAxleTemperature_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h new file mode 100644 index 000000000..6dca6dbb5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetLg.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DrivenLineOffsetLg_H_ +#define _DrivenLineOffsetLg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetLg */ +typedef long DrivenLineOffsetLg_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; +asn_struct_free_f DrivenLineOffsetLg_free; +asn_struct_print_f DrivenLineOffsetLg_print; +asn_constr_check_f DrivenLineOffsetLg_constraint; +ber_type_decoder_f DrivenLineOffsetLg_decode_ber; +der_type_encoder_f DrivenLineOffsetLg_encode_der; +xer_type_decoder_f DrivenLineOffsetLg_decode_xer; +xer_type_encoder_f DrivenLineOffsetLg_encode_xer; +per_type_decoder_f DrivenLineOffsetLg_decode_uper; +per_type_encoder_f DrivenLineOffsetLg_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetLg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h new file mode 100644 index 000000000..897401671 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivenLineOffsetSm.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DrivenLineOffsetSm_H_ +#define _DrivenLineOffsetSm_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetSm */ +typedef long DrivenLineOffsetSm_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; +asn_struct_free_f DrivenLineOffsetSm_free; +asn_struct_print_f DrivenLineOffsetSm_print; +asn_constr_check_f DrivenLineOffsetSm_constraint; +ber_type_decoder_f DrivenLineOffsetSm_decode_ber; +der_type_encoder_f DrivenLineOffsetSm_encode_der; +xer_type_decoder_f DrivenLineOffsetSm_decode_xer; +xer_type_encoder_f DrivenLineOffsetSm_encode_xer; +per_type_decoder_f DrivenLineOffsetSm_decode_uper; +per_type_encoder_f DrivenLineOffsetSm_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetSm_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h new file mode 100644 index 000000000..2e667a538 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/DrivingWheelAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DrivingWheelAngle_H_ +#define _DrivingWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivingWheelAngle */ +typedef long DrivingWheelAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; +asn_struct_free_f DrivingWheelAngle_free; +asn_struct_print_f DrivingWheelAngle_print; +asn_constr_check_f DrivingWheelAngle_constraint; +ber_type_decoder_f DrivingWheelAngle_decode_ber; +der_type_encoder_f DrivingWheelAngle_encode_der; +xer_type_decoder_f DrivingWheelAngle_decode_xer; +xer_type_encoder_f DrivingWheelAngle_encode_xer; +per_type_decoder_f DrivingWheelAngle_decode_uper; +per_type_encoder_f DrivingWheelAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivingWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h new file mode 100644 index 000000000..9a29bf09a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-ConnectionManeuverAssist.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EU_Reg_ConnectionManeuverAssist_H_ +#define _EU_Reg_ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleToLanePositionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeOffsetPoint; + +/* EU-Reg-ConnectionManeuverAssist */ +typedef struct EU_Reg_ConnectionManeuverAssist { + VehicleToLanePositionList_t vehicleToLanePositions; + struct NodeOffsetPoint *rsuDistanceFromAnchor /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EU_Reg_ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_ConnectionManeuverAssist; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeOffsetPoint.h" + +#endif /* _EU_Reg_ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h new file mode 100644 index 000000000..508dd5ece --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-IntersectionState.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EU_Reg_IntersectionState_H_ +#define _EU_Reg_IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrioritizationResponseList; + +/* EU-Reg-IntersectionState */ +typedef struct EU_Reg_IntersectionState { + struct PrioritizationResponseList *activePrioritizations /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EU_Reg_IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_IntersectionState; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponseList.h" + +#endif /* _EU_Reg_IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h new file mode 100644 index 000000000..43daecaf8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-MapData.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EU_Reg_MapData_H_ +#define _EU_Reg_MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalHeadLocationList; + +/* EU-Reg-MapData */ +typedef struct EU_Reg_MapData { + struct SignalHeadLocationList *signalHeadLocations /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EU_Reg_MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_MapData; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocationList.h" + +#endif /* _EU_Reg_MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h new file mode 100644 index 000000000..914c3e842 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-Position3D.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EU_Reg_Position3D_H_ +#define _EU_Reg_Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Altitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EU-Reg-Position3D */ +typedef struct EU_Reg_Position3D { + Altitude_t altitude; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EU_Reg_Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_Position3D; + +#ifdef __cplusplus +} +#endif + +#endif /* _EU_Reg_Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h new file mode 100644 index 000000000..5a601403b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EU-Reg-RestrictionUserType.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EU_Reg_RestrictionUserType_H_ +#define _EU_Reg_RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EmissionType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EU-Reg-RestrictionUserType */ +typedef struct EU_Reg_RestrictionUserType { + EmissionType_t *emission /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EU_Reg_RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EU_Reg_RestrictionUserType; + +#ifdef __cplusplus +} +#endif + +#endif /* _EU_Reg_RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h new file mode 100644 index 000000000..3984dd7f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Elevation_H_ +#define _Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Elevation */ +typedef OCTET_STRING_t Elevation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Elevation; +asn_struct_free_f Elevation_free; +asn_struct_print_f Elevation_print; +asn_constr_check_f Elevation_constraint; +ber_type_decoder_f Elevation_decode_ber; +der_type_encoder_f Elevation_encode_der; +xer_type_decoder_f Elevation_decode_xer; +xer_type_encoder_f Elevation_encode_xer; +per_type_decoder_f Elevation_decode_uper; +per_type_encoder_f Elevation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h new file mode 100644 index 000000000..ff1ddae8d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Elevation2.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Elevation2_H_ +#define _Elevation2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Elevation2 */ +typedef long Elevation2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Elevation2; +asn_struct_free_f Elevation2_free; +asn_struct_print_f Elevation2_print; +asn_constr_check_f Elevation2_constraint; +ber_type_decoder_f Elevation2_decode_ber; +der_type_encoder_f Elevation2_encode_der; +xer_type_decoder_f Elevation2_decode_xer; +xer_type_encoder_f Elevation2_encode_xer; +per_type_decoder_f Elevation2_decode_uper; +per_type_encoder_f Elevation2_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Elevation2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h new file mode 100644 index 000000000..099ee70a2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ElevationConfidence.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ElevationConfidence_H_ +#define _ElevationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ElevationConfidence { + ElevationConfidence_unavailable = 0, + ElevationConfidence_elev_500_00 = 1, + ElevationConfidence_elev_200_00 = 2, + ElevationConfidence_elev_100_00 = 3, + ElevationConfidence_elev_050_00 = 4, + ElevationConfidence_elev_020_00 = 5, + ElevationConfidence_elev_010_00 = 6, + ElevationConfidence_elev_005_00 = 7, + ElevationConfidence_elev_002_00 = 8, + ElevationConfidence_elev_001_00 = 9, + ElevationConfidence_elev_000_50 = 10, + ElevationConfidence_elev_000_20 = 11, + ElevationConfidence_elev_000_10 = 12, + ElevationConfidence_elev_000_05 = 13, + ElevationConfidence_elev_000_02 = 14, + ElevationConfidence_elev_000_01 = 15 +} e_ElevationConfidence; + +/* ElevationConfidence */ +typedef long ElevationConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; +asn_struct_free_f ElevationConfidence_free; +asn_struct_print_f ElevationConfidence_print; +asn_constr_check_f ElevationConfidence_constraint; +ber_type_decoder_f ElevationConfidence_decode_ber; +der_type_encoder_f ElevationConfidence_encode_der; +xer_type_decoder_f ElevationConfidence_decode_xer; +xer_type_encoder_f ElevationConfidence_encode_xer; +per_type_decoder_f ElevationConfidence_decode_uper; +per_type_encoder_f ElevationConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ElevationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h new file mode 100644 index 000000000..0344fead1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyDetails.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EmergencyDetails_H_ +#define _EmergencyDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EmergencyDetails */ +typedef long EmergencyDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; +asn_struct_free_f EmergencyDetails_free; +asn_struct_print_f EmergencyDetails_print; +asn_constr_check_f EmergencyDetails_constraint; +ber_type_decoder_f EmergencyDetails_decode_ber; +der_type_encoder_f EmergencyDetails_encode_der; +xer_type_decoder_f EmergencyDetails_decode_xer; +xer_type_encoder_f EmergencyDetails_encode_xer; +per_type_decoder_f EmergencyDetails_decode_uper; +per_type_encoder_f EmergencyDetails_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmergencyDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h new file mode 100644 index 000000000..260049fb2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmergencyVehicleAlert.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EmergencyVehicleAlert_H_ +#define _EmergencyVehicleAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "TemporaryID.h" +#include "RoadSideAlert.h" +#include "ResponseType.h" +#include "EmergencyDetails.h" +#include "VehicleMass.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EmergencyVehicleAlert */ +typedef struct EmergencyVehicleAlert { + DSRCmsgID_t msgID; + TemporaryID_t *id /* OPTIONAL */; + RoadSideAlert_t rsaMsg; + ResponseType_t *responseType /* OPTIONAL */; + EmergencyDetails_t *details /* OPTIONAL */; + VehicleMass_t *mass /* OPTIONAL */; + VehicleType_t *basicType /* OPTIONAL */; + VehicleGroupAffected_t *vehicleType /* OPTIONAL */; + IncidentResponseEquipment_t *responseEquip /* OPTIONAL */; + ResponderGroupAffected_t *responderType /* OPTIONAL */; + MsgCRC_t crc; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EmergencyVehicleAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmergencyVehicleAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h new file mode 100644 index 000000000..f54153ec6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EmissionType.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EmissionType_H_ +#define _EmissionType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EmissionType { + EmissionType_typeA = 0, + EmissionType_typeB = 1, + EmissionType_typeC = 2, + EmissionType_typeD = 3, + EmissionType_typeE = 4 + /* + * Enumeration is extensible + */ +} e_EmissionType; + +/* EmissionType */ +typedef long EmissionType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmissionType; +asn_struct_free_f EmissionType_free; +asn_struct_print_f EmissionType_print; +asn_constr_check_f EmissionType_constraint; +ber_type_decoder_f EmissionType_decode_ber; +der_type_encoder_f EmissionType_encode_der; +xer_type_decoder_f EmissionType_decode_xer; +xer_type_encoder_f EmissionType_encode_xer; +per_type_decoder_f EmissionType_decode_uper; +per_type_encoder_f EmissionType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmissionType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h new file mode 100644 index 000000000..b160a575a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EnabledLaneList.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EnabledLaneList_H_ +#define _EnabledLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EnabledLaneList */ +typedef struct EnabledLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EnabledLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; + +#ifdef __cplusplus +} +#endif + +#endif /* _EnabledLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h new file mode 100644 index 000000000..86af90896 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssMobileFriction.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EssMobileFriction_H_ +#define _EssMobileFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssMobileFriction */ +typedef long EssMobileFriction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; +asn_struct_free_f EssMobileFriction_free; +asn_struct_print_f EssMobileFriction_print; +asn_constr_check_f EssMobileFriction_constraint; +ber_type_decoder_f EssMobileFriction_decode_ber; +der_type_encoder_f EssMobileFriction_encode_der; +xer_type_decoder_f EssMobileFriction_decode_xer; +xer_type_encoder_f EssMobileFriction_encode_xer; +per_type_decoder_f EssMobileFriction_decode_uper; +per_type_encoder_f EssMobileFriction_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssMobileFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h new file mode 100644 index 000000000..d66abfe65 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipRate.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EssPrecipRate_H_ +#define _EssPrecipRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssPrecipRate */ +typedef long EssPrecipRate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; +asn_struct_free_f EssPrecipRate_free; +asn_struct_print_f EssPrecipRate_print; +asn_constr_check_f EssPrecipRate_constraint; +ber_type_decoder_f EssPrecipRate_decode_ber; +der_type_encoder_f EssPrecipRate_encode_der; +xer_type_decoder_f EssPrecipRate_decode_xer; +xer_type_encoder_f EssPrecipRate_encode_xer; +per_type_decoder_f EssPrecipRate_decode_uper; +per_type_encoder_f EssPrecipRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h new file mode 100644 index 000000000..5a7c717d7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipSituation.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EssPrecipSituation_H_ +#define _EssPrecipSituation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipSituation { + EssPrecipSituation_other = 1, + EssPrecipSituation_unknown = 2, + EssPrecipSituation_noPrecipitation = 3, + EssPrecipSituation_unidentifiedSlight = 4, + EssPrecipSituation_unidentifiedModerate = 5, + EssPrecipSituation_unidentifiedHeavy = 6, + EssPrecipSituation_snowSlight = 7, + EssPrecipSituation_snowModerate = 8, + EssPrecipSituation_snowHeavy = 9, + EssPrecipSituation_rainSlight = 10, + EssPrecipSituation_rainModerate = 11, + EssPrecipSituation_rainHeavy = 12, + EssPrecipSituation_frozenPrecipitationSlight = 13, + EssPrecipSituation_frozenPrecipitationModerate = 14, + EssPrecipSituation_frozenPrecipitationHeavy = 15 +} e_EssPrecipSituation; + +/* EssPrecipSituation */ +typedef long EssPrecipSituation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; +asn_struct_free_f EssPrecipSituation_free; +asn_struct_print_f EssPrecipSituation_print; +asn_constr_check_f EssPrecipSituation_constraint; +ber_type_decoder_f EssPrecipSituation_decode_ber; +der_type_encoder_f EssPrecipSituation_encode_der; +xer_type_decoder_f EssPrecipSituation_decode_xer; +xer_type_encoder_f EssPrecipSituation_encode_xer; +per_type_decoder_f EssPrecipSituation_decode_uper; +per_type_encoder_f EssPrecipSituation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipSituation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h new file mode 100644 index 000000000..baba647fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssPrecipYesNo.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EssPrecipYesNo_H_ +#define _EssPrecipYesNo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipYesNo { + EssPrecipYesNo_precip = 1, + EssPrecipYesNo_noPrecip = 2, + EssPrecipYesNo_error = 3 +} e_EssPrecipYesNo; + +/* EssPrecipYesNo */ +typedef long EssPrecipYesNo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; +asn_struct_free_f EssPrecipYesNo_free; +asn_struct_print_f EssPrecipYesNo_print; +asn_constr_check_f EssPrecipYesNo_constraint; +ber_type_decoder_f EssPrecipYesNo_decode_ber; +der_type_encoder_f EssPrecipYesNo_encode_der; +xer_type_decoder_f EssPrecipYesNo_decode_xer; +xer_type_encoder_f EssPrecipYesNo_encode_xer; +per_type_decoder_f EssPrecipYesNo_decode_uper; +per_type_encoder_f EssPrecipYesNo_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipYesNo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h new file mode 100644 index 000000000..f385a2f8a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EssSolarRadiation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EssSolarRadiation_H_ +#define _EssSolarRadiation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssSolarRadiation */ +typedef long EssSolarRadiation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; +asn_struct_free_f EssSolarRadiation_free; +asn_struct_print_f EssSolarRadiation_print; +asn_constr_check_f EssSolarRadiation_constraint; +ber_type_decoder_f EssSolarRadiation_decode_ber; +der_type_encoder_f EssSolarRadiation_encode_der; +xer_type_decoder_f EssSolarRadiation_decode_xer; +xer_type_encoder_f EssSolarRadiation_encode_xer; +per_type_decoder_f EssSolarRadiation_decode_uper; +per_type_encoder_f EssSolarRadiation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssSolarRadiation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h new file mode 100644 index 000000000..2b577a15a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EstimatedTimeType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_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_r41/EventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h new file mode 100644 index 000000000..25ddc6f1f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/EventFlags.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _EventFlags_H_ +#define _EventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventFlags */ +typedef long EventFlags_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventFlags; +asn_struct_free_f EventFlags_free; +asn_struct_print_f EventFlags_print; +asn_constr_check_f EventFlags_constraint; +ber_type_decoder_f EventFlags_decode_ber; +der_type_encoder_f EventFlags_encode_der; +xer_type_decoder_f EventFlags_decode_xer; +xer_type_encoder_f EventFlags_encode_xer; +per_type_decoder_f EventFlags_decode_uper; +per_type_encoder_f EventFlags_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h new file mode 100644 index 000000000..3dc97eeb4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExitService.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ExitService_H_ +#define _ExitService_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "IA5String.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum item_es_PR { + item_es_PR_NOTHING, /* No components present */ + item_es_PR_itis, + item_es_PR_text +} item_es_PR; + +/* ExitService */ +typedef struct ExitService { + A_SEQUENCE_OF(struct ExitService__Member { + struct item_es { + item_es_PR present; + union item_es_u { + ITIScodes_t itis; + IA5String_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item_es; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ExitService; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExitService_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h new file mode 100644 index 000000000..69aecd09f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Extent.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Extent_H_ +#define _Extent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Extent { + Extent_useInstantlyOnly = 0, + Extent_useFor3meters = 1, + Extent_useFor10meters = 2, + Extent_useFor50meters = 3, + Extent_useFor100meters = 4, + Extent_useFor500meters = 5, + Extent_useFor1000meters = 6, + Extent_useFor5000meters = 7, + Extent_useFor10000meters = 8, + Extent_useFor50000meters = 9, + Extent_useFor100000meters = 10, + Extent_forever = 127 +} e_Extent; + +/* Extent */ +typedef long Extent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Extent; +asn_struct_free_f Extent_free; +asn_struct_print_f Extent_print; +asn_constr_check_f Extent_constraint; +ber_type_decoder_f Extent_decode_ber; +der_type_encoder_f Extent_encode_der; +xer_type_decoder_f Extent_decode_xer; +xer_type_encoder_f Extent_encode_xer; +per_type_decoder_f Extent_decode_uper; +per_type_encoder_f Extent_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Extent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h new file mode 100644 index 000000000..4496c301d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ExteriorLights.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ExteriorLights_H_ +#define _ExteriorLights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ExteriorLights */ +typedef long ExteriorLights_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; +asn_struct_free_f ExteriorLights_free; +asn_struct_print_f ExteriorLights_print; +asn_constr_check_f ExteriorLights_constraint; +ber_type_decoder_f ExteriorLights_decode_ber; +der_type_encoder_f ExteriorLights_encode_der; +xer_type_decoder_f ExteriorLights_decode_xer; +xer_type_encoder_f ExteriorLights_encode_xer; +per_type_decoder_f ExteriorLights_decode_uper; +per_type_encoder_f ExteriorLights_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExteriorLights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h new file mode 100644 index 000000000..a329eabc6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/FullPositionVector.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _FullPositionVector_H_ +#define _FullPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "Elevation.h" +#include "Heading.h" +#include "TransmissionAndSpeed.h" +#include "PositionalAccuracy.h" +#include "TimeConfidence.h" +#include "PositionConfidenceSet.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DDateTime; + +/* FullPositionVector */ +typedef struct FullPositionVector { + struct DDateTime *utcTime /* OPTIONAL */; + Longitude_t Long; + Latitude_t lat; + Elevation_t *elevation /* OPTIONAL */; + Heading_t *heading /* OPTIONAL */; + TransmissionAndSpeed_t *speed /* OPTIONAL */; + PositionalAccuracy_t *posAccuracy /* OPTIONAL */; + TimeConfidence_t *timeConfidence /* OPTIONAL */; + PositionConfidenceSet_t *posConfidence /* OPTIONAL */; + SpeedandHeadingandThrottleConfidence_t *speedConfidence /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} FullPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DDateTime.h" + +#endif /* _FullPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h new file mode 100644 index 000000000..55f75e6f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/FurtherInfoID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _FurtherInfoID_H_ +#define _FurtherInfoID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FurtherInfoID */ +typedef OCTET_STRING_t FurtherInfoID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; +asn_struct_free_f FurtherInfoID_free; +asn_struct_print_f FurtherInfoID_print; +asn_constr_check_f FurtherInfoID_constraint; +ber_type_decoder_f FurtherInfoID_decode_ber; +der_type_encoder_f FurtherInfoID_encode_der; +xer_type_decoder_f FurtherInfoID_decode_xer; +xer_type_encoder_f FurtherInfoID_encode_xer; +per_type_decoder_f FurtherInfoID_decode_uper; +per_type_encoder_f FurtherInfoID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _FurtherInfoID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h new file mode 100644 index 000000000..67a23a61c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/GPSstatus.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _GPSstatus_H_ +#define _GPSstatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GPSstatus { + GPSstatus_unavailable = 0, + GPSstatus_isHealthy = 1, + GPSstatus_isMonitored = 2, + GPSstatus_baseStationType = 3, + GPSstatus_aPDOPofUnder5 = 4, + GPSstatus_inViewOfUnder5 = 5, + GPSstatus_localCorrectionsPresent = 6, + GPSstatus_networkCorrectionsPresent = 7 +} e_GPSstatus; + +/* GPSstatus */ +typedef BIT_STRING_t GPSstatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GPSstatus; +asn_struct_free_f GPSstatus_free; +asn_struct_print_f GPSstatus_print; +asn_constr_check_f GPSstatus_constraint; +ber_type_decoder_f GPSstatus_decode_ber; +der_type_encoder_f GPSstatus_encode_der; +xer_type_decoder_f GPSstatus_decode_xer; +xer_type_encoder_f GPSstatus_encode_xer; +per_type_decoder_f GPSstatus_decode_uper; +per_type_encoder_f GPSstatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GPSstatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h new file mode 100644 index 000000000..d026198d5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericLane.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _GenericLane_H_ +#define _GenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "DescriptiveName.h" +#include "ApproachID.h" +#include "LaneAttributes.h" +#include "AllowedManeuvers.h" +#include "NodeList2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ConnectsToList; +struct OverlayLaneList; +struct Reg_GenericLane; + +/* GenericLane */ +typedef struct GenericLane { + LaneID_t laneID; + DescriptiveName_t *name /* OPTIONAL */; + ApproachID_t *ingressApproach /* OPTIONAL */; + ApproachID_t *egressApproach /* OPTIONAL */; + LaneAttributes_t laneAttributes; + AllowedManeuvers_t *maneuvers /* OPTIONAL */; + NodeList2_t nodeList; + struct ConnectsToList *connectsTo /* OPTIONAL */; + struct OverlayLaneList *overlays /* OPTIONAL */; + struct Reg_GenericLane *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericLane; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectsToList.h" +#include "OverlayLaneList.h" +#include "RegionalGenericLane.h" + +#endif /* _GenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h new file mode 100644 index 000000000..5133f7586 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/GenericSignage.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _GenericSignage_H_ +#define _GenericSignage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "IA5String.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum item_gs_PR { + item_gs_PR_NOTHING, /* No components present */ + item_gs_PR_itis, + item_gs_PR_text +} item_gs_PR; + +/* GenericSignage */ +typedef struct GenericSignage { + A_SEQUENCE_OF(struct GenericSignage__Member { + struct item_gs { + item_gs_PR present; + union item_gs_u { + ITIScodes_t itis; + IA5String_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item_gs; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericSignage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h new file mode 100644 index 000000000..e4578319e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Heading.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Heading_H_ +#define _Heading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Heading */ +typedef long Heading_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Heading; +asn_struct_free_f Heading_free; +asn_struct_print_f Heading_print; +asn_constr_check_f Heading_constraint; +ber_type_decoder_f Heading_decode_ber; +der_type_encoder_f Heading_encode_der; +xer_type_decoder_f Heading_decode_xer; +xer_type_encoder_f Heading_encode_xer; +per_type_decoder_f Heading_decode_uper; +per_type_encoder_f Heading_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Heading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h new file mode 100644 index 000000000..7956d0c1c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingConfidence.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _HeadingConfidence_H_ +#define _HeadingConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingConfidence { + HeadingConfidence_unavailable = 0, + HeadingConfidence_prec45deg = 1, + HeadingConfidence_prec10deg = 2, + HeadingConfidence_prec05deg = 3, + HeadingConfidence_prec01deg = 4, + HeadingConfidence_prec0_1deg = 5, + HeadingConfidence_prec0_05deg = 6, + HeadingConfidence_prec0_01deg = 7 +} e_HeadingConfidence; + +/* HeadingConfidence */ +typedef long HeadingConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; +asn_struct_free_f HeadingConfidence_free; +asn_struct_print_f HeadingConfidence_print; +asn_constr_check_f HeadingConfidence_constraint; +ber_type_decoder_f HeadingConfidence_decode_ber; +der_type_encoder_f HeadingConfidence_encode_der; +xer_type_decoder_f HeadingConfidence_decode_xer; +xer_type_encoder_f HeadingConfidence_encode_xer; +per_type_decoder_f HeadingConfidence_decode_uper; +per_type_encoder_f HeadingConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h new file mode 100644 index 000000000..d4bd48b6e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/HeadingSlice.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _HeadingSlice_H_ +#define _HeadingSlice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* HeadingSlice */ +typedef OCTET_STRING_t HeadingSlice_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; +asn_struct_free_f HeadingSlice_free; +asn_struct_print_f HeadingSlice_print; +asn_constr_check_f HeadingSlice_constraint; +ber_type_decoder_f HeadingSlice_decode_ber; +der_type_encoder_f HeadingSlice_encode_der; +xer_type_decoder_f HeadingSlice_decode_xer; +xer_type_encoder_f HeadingSlice_encode_xer; +per_type_decoder_f HeadingSlice_decode_uper; +per_type_encoder_f HeadingSlice_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingSlice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h new file mode 100644 index 000000000..9155a3ed8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Holiday.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Holiday_H_ +#define _Holiday_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Holiday { + Holiday_weekday = 0, + Holiday_holiday = 1 +} e_Holiday; + +/* Holiday */ +typedef long Holiday_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Holiday; +asn_struct_free_f Holiday_free; +asn_struct_print_f Holiday_print; +asn_constr_check_f Holiday_constraint; +ber_type_decoder_f Holiday_decode_ber; +der_type_encoder_f Holiday_encode_der; +xer_type_decoder_f Holiday_decode_xer; +xer_type_encoder_f Holiday_encode_xer; +per_type_decoder_f Holiday_decode_uper; +per_type_encoder_f Holiday_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Holiday_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h new file mode 100644 index 000000000..a98c2d495 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Hour.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Hour_H_ +#define _Hour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Hour */ +typedef long Hour_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Hour; +asn_struct_free_f Hour_free; +asn_struct_print_f Hour_print; +asn_constr_check_f Hour_constraint; +ber_type_decoder_f Hour_decode_ber; +der_type_encoder_f Hour_encode_der; +xer_type_decoder_f Hour_decode_xer; +xer_type_encoder_f Hour_encode_xer; +per_type_decoder_f Hour_decode_uper; +per_type_encoder_f Hour_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Hour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h new file mode 100644 index 000000000..0831cfe0d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/HumanPropelledType.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _HumanPropelledType_H_ +#define _HumanPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HumanPropelledType { + HumanPropelledType_unavailable = 0, + HumanPropelledType_otherTypes = 1, + HumanPropelledType_onFoot = 2, + HumanPropelledType_skateboard = 3, + HumanPropelledType_pushOrKickScooter = 4, + HumanPropelledType_wheelchair = 5 + /* + * Enumeration is extensible + */ +} e_HumanPropelledType; + +/* HumanPropelledType */ +typedef long HumanPropelledType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; +asn_struct_free_f HumanPropelledType_free; +asn_struct_print_f HumanPropelledType_print; +asn_constr_check_f HumanPropelledType_constraint; +ber_type_decoder_f HumanPropelledType_decode_ber; +der_type_encoder_f HumanPropelledType_encode_der; +xer_type_decoder_f HumanPropelledType_decode_xer; +xer_type_encoder_f HumanPropelledType_encode_xer; +per_type_decoder_f HumanPropelledType_decode_uper; +per_type_encoder_f HumanPropelledType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HumanPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h new file mode 100644 index 000000000..c5fd99e07 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IA5String.h @@ -0,0 +1,27 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _IA5String_H_ +#define _IA5String_H_ + +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ + +/* + * IA5String ASN.1 type definition. + */ +extern asn_TYPE_descriptor_t asn_DEF_IA5String; + +asn_constr_check_f IA5String_constraint; + +#ifdef __cplusplus +} +#endif + +#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h new file mode 100644 index 000000000..924ad5fae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/INTEGER.h @@ -0,0 +1,82 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _INTEGER_H_ +#define _INTEGER_H_ + +#include "asn_application.h" +#include "asn_codecs_prim.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; + +extern asn_TYPE_descriptor_t asn_DEF_INTEGER; + +/* Map with to integer value association */ +typedef struct asn_INTEGER_enum_map_s { + long nat_value; /* associated native integer value */ + size_t enum_len; /* strlen("tag") */ + const char *enum_name; /* "tag" */ +} asn_INTEGER_enum_map_t; + +/* This type describes an enumeration for INTEGER and ENUMERATED types */ +typedef struct asn_INTEGER_specifics_s { + asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ + unsigned int *enum2value; /* "tag" => N; sorted by tag */ + int map_count; /* Elements in either map */ + int extension; /* This map is extensible */ + int strict_enumeration; /* Enumeration set is fixed */ + int field_width; /* Size of native integer */ + int field_unsigned; /* Signed=0, unsigned=1 */ +} asn_INTEGER_specifics_t; + +asn_struct_print_f INTEGER_print; +ber_type_decoder_f INTEGER_decode_ber; +der_type_encoder_f INTEGER_encode_der; +xer_type_decoder_f INTEGER_decode_xer; +xer_type_encoder_f INTEGER_encode_xer; +per_type_decoder_f INTEGER_decode_uper; +per_type_encoder_f INTEGER_encode_uper; + +/*********************************** + * Some handy conversion routines. * + ***********************************/ + +/* + * Returns 0 if it was possible to convert, -1 otherwise. + * -1/EINVAL: Mandatory argument missing + * -1/ERANGE: Value encoded is out of range for long representation + * -1/ENOMEM: Memory allocation failed (in asn_long2INTEGER()). + */ +int asn_INTEGER2long(const INTEGER_t *i, long *l); +int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); +int asn_long2INTEGER(INTEGER_t *i, long l); +int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); + +/* A a reified version of strtol(3) with nicer error reporting. */ +enum asn_strtol_result_e { + ASN_STRTOL_ERROR_RANGE = -3, /* Input outside of numeric range for long type */ + ASN_STRTOL_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ + ASN_STRTOL_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ + ASN_STRTOL_OK = 0, /* Conversion succeded, number ends at (*end) */ + ASN_STRTOL_EXTRA_DATA = 1, /* Conversion succeded, but the string has extra stuff */ +}; +enum asn_strtol_result_e asn_strtol_lim(const char *str, const char **end, long *l); + +/* The asn_strtol is going to be DEPRECATED soon */ +enum asn_strtol_result_e asn_strtol(const char *str, const char *end, long *l); + +/* + * Convert the integer value into the corresponding enumeration map entry. + */ +const asn_INTEGER_enum_map_t *INTEGER_map_value2enum(asn_INTEGER_specifics_t *specs, long value); + +#ifdef __cplusplus +} +#endif + +#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h new file mode 100644 index 000000000..c27920c69 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodes.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ITIScodes_H_ +#define _ITIScodes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIScodes */ +typedef long ITIScodes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; +asn_struct_free_f ITIScodes_free; +asn_struct_print_f ITIScodes_print; +asn_constr_check_f ITIScodes_constraint; +ber_type_decoder_f ITIScodes_decode_ber; +der_type_encoder_f ITIScodes_encode_der; +xer_type_decoder_f ITIScodes_decode_xer; +xer_type_encoder_f ITIScodes_encode_xer; +per_type_decoder_f ITIScodes_decode_uper; +per_type_encoder_f ITIScodes_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h new file mode 100644 index 000000000..a2d8eb1ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIScodesAndText.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ITIScodesAndText_H_ +#define _ITIScodesAndText_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStext.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum item_itis_PR { + item_itis_PR_NOTHING, /* No components present */ + item_itis_PR_itis, + item_itis_PR_text +} item_itis_PR; + +/* ITIScodesAndText */ +typedef struct ITIScodesAndText { + A_SEQUENCE_OF2(ITIScodesAndText__List, struct ITIScodesAndText__Member { + struct item_itis { + item_itis_PR present; + union item_itis_u { + ITIScodes_t itis; + ITIStext_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item_itis; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodesAndText_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h new file mode 100644 index 000000000..87467824e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ITIStext.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ITIStext_H_ +#define _ITIStext_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStext */ +typedef IA5String_t ITIStext_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIStext; +asn_struct_free_f ITIStext_free; +asn_struct_print_f ITIStext_print; +asn_constr_check_f ITIStext_constraint; +ber_type_decoder_f ITIStext_decode_ber; +der_type_encoder_f ITIStext_encode_der; +xer_type_decoder_f ITIStext_decode_xer; +xer_type_encoder_f ITIStext_encode_xer; +per_type_decoder_f ITIStext_decode_uper; +per_type_encoder_f ITIStext_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStext_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h new file mode 100644 index 000000000..0a277ad53 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IncidentResponseEquipment.h @@ -0,0 +1,120 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IncidentResponseEquipment_H_ +#define _IncidentResponseEquipment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IncidentResponseEquipment { + IncidentResponseEquipment_ground_fire_suppression = 9985, + IncidentResponseEquipment_heavy_ground_equipment = 9986, + IncidentResponseEquipment_aircraft = 9988, + IncidentResponseEquipment_marine_equipment = 9989, + IncidentResponseEquipment_support_equipment = 9990, + IncidentResponseEquipment_medical_rescue_unit = 9991, + IncidentResponseEquipment_other = 9993, + IncidentResponseEquipment_ground_fire_suppression_other = 9994, + IncidentResponseEquipment_engine = 9995, + IncidentResponseEquipment_truck_or_aerial = 9996, + IncidentResponseEquipment_quint = 9997, + IncidentResponseEquipment_tanker_pumper_combination = 9998, + IncidentResponseEquipment_brush_truck = 10000, + IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, + IncidentResponseEquipment_heavy_ground_equipment_other = 10004, + IncidentResponseEquipment_dozer_or_plow = 10005, + IncidentResponseEquipment_tractor = 10006, + IncidentResponseEquipment_tanker_or_tender = 10008, + IncidentResponseEquipment_aircraft_other = 10024, + IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, + IncidentResponseEquipment_helitanker = 10026, + IncidentResponseEquipment_helicopter = 10027, + IncidentResponseEquipment_marine_equipment_other = 10034, + IncidentResponseEquipment_fire_boat_with_pump = 10035, + IncidentResponseEquipment_boat_no_pump = 10036, + IncidentResponseEquipment_support_apparatus_other = 10044, + IncidentResponseEquipment_breathing_apparatus_support = 10045, + IncidentResponseEquipment_light_and_air_unit = 10046, + IncidentResponseEquipment_medical_rescue_unit_other = 10054, + IncidentResponseEquipment_rescue_unit = 10055, + IncidentResponseEquipment_urban_search_rescue_unit = 10056, + IncidentResponseEquipment_high_angle_rescue = 10057, + IncidentResponseEquipment_crash_fire_rescue = 10058, + IncidentResponseEquipment_bLS_unit = 10059, + IncidentResponseEquipment_aLS_unit = 10060, + IncidentResponseEquipment_mobile_command_post = 10075, + IncidentResponseEquipment_chief_officer_car = 10076, + IncidentResponseEquipment_hAZMAT_unit = 10077, + IncidentResponseEquipment_type_i_hand_crew = 10078, + IncidentResponseEquipment_type_ii_hand_crew = 10079, + IncidentResponseEquipment_privately_owned_vehicle = 10083, + IncidentResponseEquipment_other_apparatus_resource = 10084, + IncidentResponseEquipment_ambulance = 10085, + IncidentResponseEquipment_bomb_squad_van = 10086, + IncidentResponseEquipment_combine_harvester = 10087, + IncidentResponseEquipment_construction_vehicle = 10088, + IncidentResponseEquipment_farm_tractor = 10089, + IncidentResponseEquipment_grass_cutting_machines = 10090, + IncidentResponseEquipment_hAZMAT_containment_tow = 10091, + IncidentResponseEquipment_heavy_tow = 10092, + IncidentResponseEquipment_light_tow = 10094, + IncidentResponseEquipment_flatbed_tow = 10114, + IncidentResponseEquipment_hedge_cutting_machines = 10093, + IncidentResponseEquipment_mobile_crane = 10095, + IncidentResponseEquipment_refuse_collection_vehicle = 10096, + IncidentResponseEquipment_resurfacing_vehicle = 10097, + IncidentResponseEquipment_road_sweeper = 10098, + IncidentResponseEquipment_roadside_litter_collection_crews = 10099, + IncidentResponseEquipment_salvage_vehicle = 10100, + IncidentResponseEquipment_sand_truck = 10101, + IncidentResponseEquipment_snowplow = 10102, + IncidentResponseEquipment_steam_roller = 10103, + IncidentResponseEquipment_swat_team_van = 10104, + IncidentResponseEquipment_track_laying_vehicle = 10105, + IncidentResponseEquipment_unknown_vehicle = 10106, + IncidentResponseEquipment_white_lining_vehicle = 10107, + IncidentResponseEquipment_dump_truck = 10108, + IncidentResponseEquipment_supervisor_vehicle = 10109, + IncidentResponseEquipment_snow_blower = 10110, + IncidentResponseEquipment_rotary_snow_blower = 10111, + IncidentResponseEquipment_road_grader = 10112, + IncidentResponseEquipment_steam_truck = 10113 + /* + * Enumeration is extensible + */ +} e_IncidentResponseEquipment; + +/* IncidentResponseEquipment */ +typedef long IncidentResponseEquipment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; +asn_struct_free_f IncidentResponseEquipment_free; +asn_struct_print_f IncidentResponseEquipment_print; +asn_constr_check_f IncidentResponseEquipment_constraint; +ber_type_decoder_f IncidentResponseEquipment_decode_ber; +der_type_encoder_f IncidentResponseEquipment_encode_der; +xer_type_decoder_f IncidentResponseEquipment_decode_xer; +xer_type_encoder_f IncidentResponseEquipment_encode_xer; +per_type_decoder_f IncidentResponseEquipment_decode_uper; +per_type_encoder_f IncidentResponseEquipment_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IncidentResponseEquipment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h new file mode 100644 index 000000000..4eaf8b73f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionCollision.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionCollision_H_ +#define _IntersectionCollision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "TemporaryID.h" +#include "DSecond.h" +#include "PathHistory.h" +#include "IntersectionID.h" +#include "LaneNumber.h" +#include "EventFlags.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionCollision */ +typedef struct IntersectionCollision { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + TemporaryID_t id; + DSecond_t *secMark /* OPTIONAL */; + PathHistory_t path; + IntersectionID_t intersetionID; + LaneNumber_t laneNumber; + EventFlags_t eventFlag; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionCollision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionCollision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h new file mode 100644 index 000000000..f41b0ed57 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometry.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionGeometry_H_ +#define _IntersectionGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "MsgCount.h" +#include "Position3D-2.h" +#include "LaneWidth.h" +#include "LaneList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct PreemptPriorityList; +struct Reg_Intersection; + +/* IntersectionGeometry */ +typedef struct IntersectionGeometry { + DescriptiveName_t *name /* OPTIONAL */; + IntersectionReferenceID_t id; + MsgCount_t revision; + Position3D_2_t refPoint; + LaneWidth_t *laneWidth /* OPTIONAL */; + struct SpeedLimitList *speedLimits /* OPTIONAL */; + LaneList_t laneSet; + struct PreemptPriorityList *preemptPriorityData /* OPTIONAL */; + struct Reg_Intersection *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "PreemptPriorityList.h" +#include "RegionalIntersection.h" + +#endif /* _IntersectionGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h new file mode 100644 index 000000000..e1a1f8d2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionGeometryList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionGeometryList_H_ +#define _IntersectionGeometryList_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 IntersectionGeometry; + +/* IntersectionGeometryList */ +typedef struct IntersectionGeometryList { + A_SEQUENCE_OF(struct IntersectionGeometry) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionGeometryList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometry.h" + +#endif /* _IntersectionGeometryList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h new file mode 100644 index 000000000..c4a10748e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionID_H_ +#define _IntersectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionID */ +typedef long IntersectionID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; +asn_struct_free_f IntersectionID_free; +asn_struct_print_f IntersectionID_print; +asn_constr_check_f IntersectionID_constraint; +ber_type_decoder_f IntersectionID_decode_ber; +der_type_encoder_f IntersectionID_encode_der; +xer_type_decoder_f IntersectionID_decode_xer; +xer_type_encoder_f IntersectionID_encode_xer; +per_type_decoder_f IntersectionID_decode_uper; +per_type_encoder_f IntersectionID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h new file mode 100644 index 000000000..2135d30c2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionReferenceID.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionReferenceID_H_ +#define _IntersectionReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "IntersectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionReferenceID */ +typedef struct IntersectionReferenceID { + RoadRegulatorID_t *region /* OPTIONAL */; + IntersectionID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h new file mode 100644 index 000000000..9f1fe3f87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionState.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionState_H_ +#define _IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "MsgCount.h" +#include "IntersectionStatusObject.h" +#include "MinuteOfTheYear.h" +#include "DSecond2.h" +#include "MovementList.h" +#include "SignalControlState.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EnabledLaneList; +struct ManeuverAssistList; +struct Reg_IntersectionState; + +/* IntersectionState */ +typedef struct IntersectionState { + DescriptiveName_t *name /* OPTIONAL */; + IntersectionReferenceID_t id; + MsgCount_t revision; + IntersectionStatusObject_t status; + MinuteOfTheYear_t *moy /* OPTIONAL */; + DSecond2_t *timeStamp /* OPTIONAL */; + struct EnabledLaneList *enabledLanes /* OPTIONAL */; + MovementList_t states; + struct ManeuverAssistList *maneuverAssistList /* OPTIONAL */; + SignalControlState_t *priority /* OPTIONAL */; + SignalControlState_t *preempt /* OPTIONAL */; + struct Reg_IntersectionState *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EnabledLaneList.h" +#include "ManeuverAssistList.h" +#include "RegionalIntersectionState.h" + +#endif /* _IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h new file mode 100644 index 000000000..4a9de2a3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStateList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionStateList_H_ +#define _IntersectionStateList_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 IntersectionState; + +/* IntersectionStateList */ +typedef struct IntersectionStateList { + A_SEQUENCE_OF(struct IntersectionState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionStateList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionState.h" + +#endif /* _IntersectionStateList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h new file mode 100644 index 000000000..89bc6748b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/IntersectionStatusObject.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _IntersectionStatusObject_H_ +#define _IntersectionStatusObject_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionStatusObject { + IntersectionStatusObject_manualControlIsEnabled = 0, + IntersectionStatusObject_stopTimeIsActivated = 1, + IntersectionStatusObject_failureFlash = 2, + IntersectionStatusObject_preemptIsActive = 3, + IntersectionStatusObject_transitSignalPriorityIsActive = 4, + IntersectionStatusObject_fixedTimeOperation = 5, + IntersectionStatusObject_trafficDependentOperation = 6, + IntersectionStatusObject_standbyOperation = 7, + IntersectionStatusObject_failureMode = 8, + IntersectionStatusObject_off = 9, + IntersectionStatusObject_recentMAPmessageUpdate = 10, + IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, + IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, + IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 +} e_IntersectionStatusObject; + +/* IntersectionStatusObject */ +typedef BIT_STRING_t IntersectionStatusObject_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; +asn_struct_free_f IntersectionStatusObject_free; +asn_struct_print_f IntersectionStatusObject_print; +asn_constr_check_f IntersectionStatusObject_constraint; +ber_type_decoder_f IntersectionStatusObject_decode_ber; +der_type_encoder_f IntersectionStatusObject_encode_der; +xer_type_decoder_f IntersectionStatusObject_decode_xer; +xer_type_encoder_f IntersectionStatusObject_encode_xer; +per_type_decoder_f IntersectionStatusObject_decode_uper; +per_type_encoder_f IntersectionStatusObject_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionStatusObject_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h new file mode 100644 index 000000000..db67832d0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/J1939data.h @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _J1939data_H_ +#define _J1939data_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrailerWeight.h" +#include "CargoWeight.h" +#include "SteeringAxleTemperature.h" +#include "DriveAxleLocation.h" +#include "DriveAxleLiftAirPressure.h" +#include "DriveAxleTemperature.h" +#include "DriveAxleLubePressure.h" +#include "SteeringAxleLubePressure.h" +#include "asn_SEQUENCE_OF.h" +#include "TireLocation.h" +#include "TirePressure.h" +#include "TireTemp.h" +#include "WheelSensorStatus.h" +#include "WheelEndElectFault.h" +#include "TireLeakageRate.h" +#include "TirePressureThresholdDetection.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" +#include "AxleLocation.h" +#include "AxleWeight.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* J1939data */ +typedef struct J1939data { + struct J1939data__tires { + A_SEQUENCE_OF(struct J1939data__tires__Member { + TireLocation_t *location /* OPTIONAL */; + TirePressure_t *pressure /* OPTIONAL */; + TireTemp_t *temp /* OPTIONAL */; + WheelSensorStatus_t *wheelSensorStatus /* OPTIONAL */; + WheelEndElectFault_t *wheelEndElectFault /* OPTIONAL */; + TireLeakageRate_t *leakageRate /* OPTIONAL */; + TirePressureThresholdDetection_t *detection /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *tires; + struct J1939data__axle { + A_SEQUENCE_OF(struct J1939data__axle__Member { + AxleLocation_t *location /* OPTIONAL */; + AxleWeight_t *weight /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *axle; + TrailerWeight_t *trailerWeight /* OPTIONAL */; + CargoWeight_t *cargoWeight /* OPTIONAL */; + SteeringAxleTemperature_t *steeringAxleTemperature /* OPTIONAL */; + DriveAxleLocation_t *driveAxleLocation /* OPTIONAL */; + DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure /* OPTIONAL */; + DriveAxleTemperature_t *driveAxleTemperature /* OPTIONAL */; + DriveAxleLubePressure_t *driveAxleLubePressure /* OPTIONAL */; + SteeringAxleLubePressure_t *steeringAxleLubePressure /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} J1939data_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_J1939data; + +#ifdef __cplusplus +} +#endif + +#endif /* _J1939data_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h new file mode 100644 index 000000000..5a55d011a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Angle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Angle_H_ +#define _JPN_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-Angle */ +typedef long JPN_Angle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Angle; +asn_struct_free_f JPN_Angle_free; +asn_struct_print_f JPN_Angle_print; +asn_constr_check_f JPN_Angle_constraint; +ber_type_decoder_f JPN_Angle_decode_ber; +der_type_encoder_f JPN_Angle_encode_der; +xer_type_decoder_f JPN_Angle_decode_xer; +xer_type_encoder_f JPN_Angle_encode_xer; +per_type_decoder_f JPN_Angle_decode_uper; +per_type_encoder_f JPN_Angle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h new file mode 100644 index 000000000..ed57dbf00 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Elevation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Elevation_H_ +#define _JPN_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-Elevation */ +typedef long JPN_Elevation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Elevation; +asn_struct_free_f JPN_Elevation_free; +asn_struct_print_f JPN_Elevation_print; +asn_constr_check_f JPN_Elevation_constraint; +ber_type_decoder_f JPN_Elevation_decode_ber; +der_type_encoder_f JPN_Elevation_encode_der; +xer_type_decoder_f JPN_Elevation_decode_xer; +xer_type_encoder_f JPN_Elevation_encode_xer; +per_type_decoder_f JPN_Elevation_decode_uper; +per_type_encoder_f JPN_Elevation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h new file mode 100644 index 000000000..6651a3b23 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-MsgCount.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_MsgCount_H_ +#define _JPN_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-MsgCount */ +typedef long JPN_MsgCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_MsgCount; +asn_struct_free_f JPN_MsgCount_free; +asn_struct_print_f JPN_MsgCount_print; +asn_constr_check_f JPN_MsgCount_constraint; +ber_type_decoder_f JPN_MsgCount_decode_ber; +der_type_encoder_f JPN_MsgCount_encode_der; +xer_type_decoder_f JPN_MsgCount_decode_xer; +xer_type_encoder_f JPN_MsgCount_encode_xer; +per_type_decoder_f JPN_MsgCount_decode_uper; +per_type_encoder_f JPN_MsgCount_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h new file mode 100644 index 000000000..0f2186cb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-LaneDataAttribute.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Reg_LaneDataAttribute_H_ +#define _JPN_Reg_LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-Reg-LaneDataAttribute */ +typedef struct JPN_Reg_LaneDataAttribute { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} JPN_Reg_LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_LaneDataAttribute; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Reg_LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h new file mode 100644 index 000000000..bc3d7462e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-MovementEvent.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Reg_MovementEvent_H_ +#define _JPN_Reg_MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeRemaining.h" +#include "MinTimetoChange.h" +#include "MaxTimetoChange.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-Reg-MovementEvent */ +typedef struct JPN_Reg_MovementEvent { + TimeRemaining_t *startTime /* OPTIONAL */; + MinTimetoChange_t minEndTime; + MaxTimetoChange_t *maxEndTime /* OPTIONAL */; + TimeRemaining_t *likelyTime /* OPTIONAL */; + TimeIntervalConfidence_t *confidence /* OPTIONAL */; + TimeRemaining_t *nextTime /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} JPN_Reg_MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_MovementEvent; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Reg_MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h new file mode 100644 index 000000000..1104bbc80 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-NodeOffsetPoint.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Reg_NodeOffsetPoint_H_ +#define _JPN_Reg_NodeOffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LLdms-48b.h" +#include "Node-LLdms-80b.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum JPN_Reg_NodeOffsetPoint_PR { + JPN_Reg_NodeOffsetPoint_PR_NOTHING, /* No components present */ + JPN_Reg_NodeOffsetPoint_PR_posA, + JPN_Reg_NodeOffsetPoint_PR_posB, + /* Extensions may appear below */ + +} JPN_Reg_NodeOffsetPoint_PR; + +/* JPN-Reg-NodeOffsetPoint */ +typedef struct JPN_Reg_NodeOffsetPoint { + JPN_Reg_NodeOffsetPoint_PR present; + union JPN_Reg_NodeOffsetPoint_u { + Node_LLdms_48b_t posA; + Node_LLdms_80b_t posB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} JPN_Reg_NodeOffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_NodeOffsetPoint; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Reg_NodeOffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h new file mode 100644 index 000000000..d684c2e65 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-Reg-Position3D.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_Reg_Position3D_H_ +#define _JPN_Reg_Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LatitudeDMS2.h" +#include "LongitudeDMS2.h" +#include "JPN-Elevation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-Reg-Position3D */ +typedef struct JPN_Reg_Position3D { + LatitudeDMS2_t latitude; + LongitudeDMS2_t longitude; + JPN_Elevation_t elevation; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} JPN_Reg_Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_Reg_Position3D; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_Reg_Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h new file mode 100644 index 000000000..ea1658f55 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/JPN-TimeMark.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _JPN_TimeMark_H_ +#define _JPN_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Year.h" +#include "Month.h" +#include "Day.h" +#include "SummerTime.h" +#include "Holiday.h" +#include "DayOfWeek.h" +#include "Hour.h" +#include "Minute.h" +#include "Second.h" +#include "TenthSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* JPN-TimeMark */ +typedef struct JPN_TimeMark { + Year_t year; + Month_t month; + Day_t day; + SummerTime_t summerTime; + Holiday_t holiday; + DayOfWeek_t dayofWeek; + Hour_t hour; + Minute_t minute; + Second_t second; + TenthSecond_t tenthSecond; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} JPN_TimeMark_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_JPN_TimeMark; + +#ifdef __cplusplus +} +#endif + +#endif /* _JPN_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h new file mode 100644 index 000000000..21510e466 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Barrier.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Barrier_H_ +#define _LaneAttributes_Barrier_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Barrier { + LaneAttributes_Barrier_median_RevocableLane = 0, + LaneAttributes_Barrier_median = 1, + LaneAttributes_Barrier_whiteLineHashing = 2, + LaneAttributes_Barrier_stripedLines = 3, + LaneAttributes_Barrier_doubleStripedLines = 4, + LaneAttributes_Barrier_trafficCones = 5, + LaneAttributes_Barrier_constructionBarrier = 6, + LaneAttributes_Barrier_trafficChannels = 7, + LaneAttributes_Barrier_lowCurbs = 8, + LaneAttributes_Barrier_highCurbs = 9 +} e_LaneAttributes_Barrier; + +/* LaneAttributes-Barrier */ +typedef BIT_STRING_t LaneAttributes_Barrier_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; +asn_struct_free_f LaneAttributes_Barrier_free; +asn_struct_print_f LaneAttributes_Barrier_print; +asn_constr_check_f LaneAttributes_Barrier_constraint; +ber_type_decoder_f LaneAttributes_Barrier_decode_ber; +der_type_encoder_f LaneAttributes_Barrier_encode_der; +xer_type_decoder_f LaneAttributes_Barrier_decode_xer; +xer_type_encoder_f LaneAttributes_Barrier_encode_xer; +per_type_decoder_f LaneAttributes_Barrier_decode_uper; +per_type_encoder_f LaneAttributes_Barrier_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Barrier_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h new file mode 100644 index 000000000..36b4e9184 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Bike.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Bike_H_ +#define _LaneAttributes_Bike_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Bike { + LaneAttributes_Bike_bikeRevocableLane = 0, + LaneAttributes_Bike_pedestrianUseAllowed = 1, + LaneAttributes_Bike_isBikeFlyOverLane = 2, + LaneAttributes_Bike_fixedCycleTime = 3, + LaneAttributes_Bike_biDirectionalCycleTimes = 4, + LaneAttributes_Bike_isolatedByBarrier = 5, + LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 +} e_LaneAttributes_Bike; + +/* LaneAttributes-Bike */ +typedef BIT_STRING_t LaneAttributes_Bike_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; +asn_struct_free_f LaneAttributes_Bike_free; +asn_struct_print_f LaneAttributes_Bike_print; +asn_constr_check_f LaneAttributes_Bike_constraint; +ber_type_decoder_f LaneAttributes_Bike_decode_ber; +der_type_encoder_f LaneAttributes_Bike_encode_der; +xer_type_decoder_f LaneAttributes_Bike_decode_xer; +xer_type_encoder_f LaneAttributes_Bike_encode_xer; +per_type_decoder_f LaneAttributes_Bike_decode_uper; +per_type_encoder_f LaneAttributes_Bike_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Bike_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h new file mode 100644 index 000000000..c6b255542 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Crosswalk.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Crosswalk_H_ +#define _LaneAttributes_Crosswalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Crosswalk { + LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, + LaneAttributes_Crosswalk_bicyleUseAllowed = 1, + LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, + LaneAttributes_Crosswalk_fixedCycleTime = 3, + LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, + LaneAttributes_Crosswalk_hasPushToWalkButton = 5, + LaneAttributes_Crosswalk_audioSupport = 6, + LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, + LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 +} e_LaneAttributes_Crosswalk; + +/* LaneAttributes-Crosswalk */ +typedef BIT_STRING_t LaneAttributes_Crosswalk_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; +asn_struct_free_f LaneAttributes_Crosswalk_free; +asn_struct_print_f LaneAttributes_Crosswalk_print; +asn_constr_check_f LaneAttributes_Crosswalk_constraint; +ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; +der_type_encoder_f LaneAttributes_Crosswalk_encode_der; +xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; +xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; +per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Crosswalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h new file mode 100644 index 000000000..91ad5142f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Parking.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Parking_H_ +#define _LaneAttributes_Parking_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Parking { + LaneAttributes_Parking_parkingRevocableLane = 0, + LaneAttributes_Parking_parallelParkingInUse = 1, + LaneAttributes_Parking_headInParkingInUse = 2, + LaneAttributes_Parking_doNotParkZone = 3, + LaneAttributes_Parking_parkingForBusUse = 4, + LaneAttributes_Parking_parkingForTaxiUse = 5, + LaneAttributes_Parking_noPublicParkingUse = 6 +} e_LaneAttributes_Parking; + +/* LaneAttributes-Parking */ +typedef BIT_STRING_t LaneAttributes_Parking_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; +asn_struct_free_f LaneAttributes_Parking_free; +asn_struct_print_f LaneAttributes_Parking_print; +asn_constr_check_f LaneAttributes_Parking_constraint; +ber_type_decoder_f LaneAttributes_Parking_decode_ber; +der_type_encoder_f LaneAttributes_Parking_encode_der; +xer_type_decoder_f LaneAttributes_Parking_decode_xer; +xer_type_encoder_f LaneAttributes_Parking_encode_xer; +per_type_decoder_f LaneAttributes_Parking_decode_uper; +per_type_encoder_f LaneAttributes_Parking_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Parking_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h new file mode 100644 index 000000000..b8fd7131f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Sidewalk.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Sidewalk_H_ +#define _LaneAttributes_Sidewalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Sidewalk { + LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, + LaneAttributes_Sidewalk_bicyleUseAllowed = 1, + LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, + LaneAttributes_Sidewalk_walkBikes = 3 +} e_LaneAttributes_Sidewalk; + +/* LaneAttributes-Sidewalk */ +typedef BIT_STRING_t LaneAttributes_Sidewalk_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; +asn_struct_free_f LaneAttributes_Sidewalk_free; +asn_struct_print_f LaneAttributes_Sidewalk_print; +asn_constr_check_f LaneAttributes_Sidewalk_constraint; +ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; +der_type_encoder_f LaneAttributes_Sidewalk_encode_der; +xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; +xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; +per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Sidewalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h new file mode 100644 index 000000000..267633e51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Striping.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Striping_H_ +#define _LaneAttributes_Striping_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Striping { + LaneAttributes_Striping_stripToConnectingLanesRevocableLane = 0, + LaneAttributes_Striping_stripDrawOnLeft = 1, + LaneAttributes_Striping_stripDrawOnRight = 2, + LaneAttributes_Striping_stripToConnectingLanesLeft = 3, + LaneAttributes_Striping_stripToConnectingLanesRight = 4, + LaneAttributes_Striping_stripToConnectingLanesAhead = 5 +} e_LaneAttributes_Striping; + +/* LaneAttributes-Striping */ +typedef BIT_STRING_t LaneAttributes_Striping_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; +asn_struct_free_f LaneAttributes_Striping_free; +asn_struct_print_f LaneAttributes_Striping_print; +asn_constr_check_f LaneAttributes_Striping_constraint; +ber_type_decoder_f LaneAttributes_Striping_decode_ber; +der_type_encoder_f LaneAttributes_Striping_encode_der; +xer_type_decoder_f LaneAttributes_Striping_decode_xer; +xer_type_encoder_f LaneAttributes_Striping_encode_xer; +per_type_decoder_f LaneAttributes_Striping_decode_uper; +per_type_encoder_f LaneAttributes_Striping_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Striping_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h new file mode 100644 index 000000000..6a6887064 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-TrackedVehicle.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_TrackedVehicle_H_ +#define _LaneAttributes_TrackedVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_TrackedVehicle { + LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, + LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, + LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, + LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, + LaneAttributes_TrackedVehicle_spec_otherRailType = 4 +} e_LaneAttributes_TrackedVehicle; + +/* LaneAttributes-TrackedVehicle */ +typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; +asn_struct_free_f LaneAttributes_TrackedVehicle_free; +asn_struct_print_f LaneAttributes_TrackedVehicle_print; +asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; +ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; +der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; +xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; +xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_TrackedVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h new file mode 100644 index 000000000..7717e4393 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes-Vehicle.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_Vehicle_H_ +#define _LaneAttributes_Vehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Vehicle { + LaneAttributes_Vehicle_isVehicleRevocableLane = 0, + LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, + LaneAttributes_Vehicle_hovLaneUseOnly = 2, + LaneAttributes_Vehicle_restrictedToBusUse = 3, + LaneAttributes_Vehicle_restrictedToTaxiUse = 4, + LaneAttributes_Vehicle_restrictedFromPublicUse = 5, + LaneAttributes_Vehicle_hasIRbeaconCoverage = 6 +} e_LaneAttributes_Vehicle; + +/* LaneAttributes-Vehicle */ +typedef BIT_STRING_t LaneAttributes_Vehicle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; +asn_struct_free_f LaneAttributes_Vehicle_free; +asn_struct_print_f LaneAttributes_Vehicle_print; +asn_constr_check_f LaneAttributes_Vehicle_constraint; +ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; +der_type_encoder_f LaneAttributes_Vehicle_encode_der; +xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; +xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; +per_type_decoder_f LaneAttributes_Vehicle_decode_uper; +per_type_encoder_f LaneAttributes_Vehicle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Vehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h new file mode 100644 index 000000000..fc290306a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneAttributes.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneAttributes_H_ +#define _LaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneDirection.h" +#include "LaneSharing.h" +#include "LaneTypeAttributes.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_LaneAttributes; + +/* LaneAttributes */ +typedef struct LaneAttributes { + LaneDirection_t directionalUse; + LaneSharing_t sharedWith; + LaneTypeAttributes_t laneType; + struct Reg_LaneAttributes *regional /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalLaneAttributes.h" + +#endif /* _LaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h new file mode 100644 index 000000000..867df1465 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneConnectionID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneConnectionID_H_ +#define _LaneConnectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneConnectionID */ +typedef long LaneConnectionID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; +asn_struct_free_f LaneConnectionID_free; +asn_struct_print_f LaneConnectionID_print; +asn_constr_check_f LaneConnectionID_constraint; +ber_type_decoder_f LaneConnectionID_decode_ber; +der_type_encoder_f LaneConnectionID_encode_der; +xer_type_decoder_f LaneConnectionID_decode_xer; +xer_type_encoder_f LaneConnectionID_encode_xer; +per_type_decoder_f LaneConnectionID_decode_uper; +per_type_encoder_f LaneConnectionID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneConnectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h new file mode 100644 index 000000000..771274aca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttribute.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneDataAttribute_H_ +#define _LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DeltaAngle.h" +#include "RoadwayCrownAngle.h" +#include "MergeDivergeNodeAngle.h" +#include "SpeedLimitList.h" +#include "RegionalLaneDataAttribute.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDataAttribute_PR { + LaneDataAttribute_PR_NOTHING, /* No components present */ + LaneDataAttribute_PR_pathEndPointAngle, + LaneDataAttribute_PR_laneCrownPointCenter, + LaneDataAttribute_PR_laneCrownPointLeft, + LaneDataAttribute_PR_laneCrownPointRight, + LaneDataAttribute_PR_laneAngle, + LaneDataAttribute_PR_speedLimits, + LaneDataAttribute_PR_regional, + /* Extensions may appear below */ + +} LaneDataAttribute_PR; + +/* LaneDataAttribute */ +typedef struct LaneDataAttribute { + LaneDataAttribute_PR present; + union LaneDataAttribute_u { + DeltaAngle_t pathEndPointAngle; + RoadwayCrownAngle_t laneCrownPointCenter; + RoadwayCrownAngle_t laneCrownPointLeft; + RoadwayCrownAngle_t laneCrownPointRight; + MergeDivergeNodeAngle_t laneAngle; + SpeedLimitList_t speedLimits; + RegionalLaneDataAttribute_t regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h new file mode 100644 index 000000000..d72bfec93 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDataAttributeList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneDataAttributeList_H_ +#define _LaneDataAttributeList_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 LaneDataAttribute; + +/* LaneDataAttributeList */ +typedef struct LaneDataAttributeList { + A_SEQUENCE_OF(struct LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "LaneDataAttribute.h" + +#endif /* _LaneDataAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h new file mode 100644 index 000000000..e3097f4b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneDirection.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneDirection_H_ +#define _LaneDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDirection { + LaneDirection_ingressPath = 0, + LaneDirection_egressPath = 1 +} e_LaneDirection; + +/* LaneDirection */ +typedef BIT_STRING_t LaneDirection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; +asn_struct_free_f LaneDirection_free; +asn_struct_print_f LaneDirection_print; +asn_constr_check_f LaneDirection_constraint; +ber_type_decoder_f LaneDirection_decode_ber; +der_type_encoder_f LaneDirection_encode_der; +xer_type_decoder_f LaneDirection_decode_xer; +xer_type_encoder_f LaneDirection_encode_xer; +per_type_decoder_f LaneDirection_decode_uper; +per_type_encoder_f LaneDirection_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h new file mode 100644 index 000000000..1ee3c2de9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneID_H_ +#define _LaneID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneID */ +typedef long LaneID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneID; +asn_struct_free_f LaneID_free; +asn_struct_print_f LaneID_print; +asn_constr_check_f LaneID_constraint; +ber_type_decoder_f LaneID_decode_ber; +der_type_encoder_f LaneID_encode_der; +xer_type_decoder_f LaneID_decode_xer; +xer_type_encoder_f LaneID_encode_xer; +per_type_decoder_f LaneID_decode_uper; +per_type_encoder_f LaneID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h new file mode 100644 index 000000000..e2ab5584c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneList_H_ +#define _LaneList_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 GenericLane; + +/* LaneList */ +typedef struct LaneList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _LaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h new file mode 100644 index 000000000..7a6a567cb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneNumber.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneNumber_H_ +#define _LaneNumber_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneNumber */ +typedef OCTET_STRING_t LaneNumber_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneNumber; +asn_struct_free_f LaneNumber_free; +asn_struct_print_f LaneNumber_print; +asn_constr_check_f LaneNumber_constraint; +ber_type_decoder_f LaneNumber_decode_ber; +der_type_encoder_f LaneNumber_encode_der; +xer_type_decoder_f LaneNumber_decode_xer; +xer_type_encoder_f LaneNumber_encode_xer; +per_type_decoder_f LaneNumber_decode_uper; +per_type_encoder_f LaneNumber_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneNumber_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h new file mode 100644 index 000000000..400a10c1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneSharing.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneSharing_H_ +#define _LaneSharing_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneSharing { + LaneSharing_overlappingLaneDescriptionProvided = 0, + LaneSharing_multipleLanesTreatedAsOneLane = 1, + LaneSharing_otherNonMotorizedTrafficTypes = 2, + LaneSharing_individualMotorizedVehicleTraffic = 3, + LaneSharing_busVehicleTraffic = 4, + LaneSharing_taxiVehicleTraffic = 5, + LaneSharing_pedestriansTraffic = 6, + LaneSharing_cyclistVehicleTraffic = 7, + LaneSharing_trackedVehicleTraffic = 8, + LaneSharing_pedestrianTraffic = 9 +} e_LaneSharing; + +/* LaneSharing */ +typedef BIT_STRING_t LaneSharing_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; +asn_struct_free_f LaneSharing_free; +asn_struct_print_f LaneSharing_print; +asn_constr_check_f LaneSharing_constraint; +ber_type_decoder_f LaneSharing_decode_ber; +der_type_encoder_f LaneSharing_encode_der; +xer_type_decoder_f LaneSharing_decode_xer; +xer_type_encoder_f LaneSharing_encode_xer; +per_type_decoder_f LaneSharing_decode_uper; +per_type_encoder_f LaneSharing_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneSharing_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h new file mode 100644 index 000000000..11b016844 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneTypeAttributes.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneTypeAttributes_H_ +#define _LaneTypeAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneAttributes-Vehicle.h" +#include "LaneAttributes-Crosswalk.h" +#include "LaneAttributes-Bike.h" +#include "LaneAttributes-Sidewalk.h" +#include "LaneAttributes-Barrier.h" +#include "LaneAttributes-Striping.h" +#include "LaneAttributes-TrackedVehicle.h" +#include "LaneAttributes-Parking.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneTypeAttributes_PR { + LaneTypeAttributes_PR_NOTHING, /* No components present */ + LaneTypeAttributes_PR_vehicle, + LaneTypeAttributes_PR_crosswalk, + LaneTypeAttributes_PR_bikeLane, + LaneTypeAttributes_PR_sidewalk, + LaneTypeAttributes_PR_median, + LaneTypeAttributes_PR_striping, + LaneTypeAttributes_PR_trackedVehicle, + LaneTypeAttributes_PR_parking, + /* Extensions may appear below */ + +} LaneTypeAttributes_PR; + +/* LaneTypeAttributes */ +typedef struct LaneTypeAttributes { + LaneTypeAttributes_PR present; + union LaneTypeAttributes_u { + LaneAttributes_Vehicle_t vehicle; + LaneAttributes_Crosswalk_t crosswalk; + LaneAttributes_Bike_t bikeLane; + LaneAttributes_Sidewalk_t sidewalk; + LaneAttributes_Barrier_t median; + LaneAttributes_Striping_t striping; + LaneAttributes_TrackedVehicle_t trackedVehicle; + LaneAttributes_Parking_t parking; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneTypeAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneTypeAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h new file mode 100644 index 000000000..1b03f09aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LaneWidth.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LaneWidth_H_ +#define _LaneWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneWidth */ +typedef long LaneWidth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; +asn_struct_free_f LaneWidth_free; +asn_struct_print_f LaneWidth_print; +asn_constr_check_f LaneWidth_constraint; +ber_type_decoder_f LaneWidth_decode_ber; +der_type_encoder_f LaneWidth_encode_der; +xer_type_decoder_f LaneWidth_decode_xer; +xer_type_encoder_f LaneWidth_encode_xer; +per_type_decoder_f LaneWidth_decode_uper; +per_type_encoder_f LaneWidth_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h new file mode 100644 index 000000000..4c9cd93d0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Latitude.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Latitude_H_ +#define _Latitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Latitude */ +typedef long Latitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Latitude; +asn_struct_free_f Latitude_free; +asn_struct_print_f Latitude_print; +asn_constr_check_f Latitude_constraint; +ber_type_decoder_f Latitude_decode_ber; +der_type_encoder_f Latitude_encode_der; +xer_type_decoder_f Latitude_decode_xer; +xer_type_encoder_f Latitude_encode_xer; +per_type_decoder_f Latitude_decode_uper; +per_type_encoder_f Latitude_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Latitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h new file mode 100644 index 000000000..bc0d0d9df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LatitudeDMS_H_ +#define _LatitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS */ +typedef long LatitudeDMS_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; +asn_struct_free_f LatitudeDMS_free; +asn_struct_print_f LatitudeDMS_print; +asn_constr_check_f LatitudeDMS_constraint; +ber_type_decoder_f LatitudeDMS_decode_ber; +der_type_encoder_f LatitudeDMS_encode_der; +xer_type_decoder_f LatitudeDMS_decode_xer; +xer_type_encoder_f LatitudeDMS_encode_xer; +per_type_decoder_f LatitudeDMS_decode_uper; +per_type_encoder_f LatitudeDMS_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h new file mode 100644 index 000000000..b8ec914a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LatitudeDMS2.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LatitudeDMS2_H_ +#define _LatitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLat.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS2 */ +typedef struct LatitudeDMS2 { + DegreesLat_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LatitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h new file mode 100644 index 000000000..e5919eba4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LayerID_H_ +#define _LayerID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LayerID */ +typedef long LayerID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LayerID; +asn_struct_free_f LayerID_free; +asn_struct_print_f LayerID_print; +asn_constr_check_f LayerID_constraint; +ber_type_decoder_f LayerID_decode_ber; +der_type_encoder_f LayerID_encode_der; +xer_type_decoder_f LayerID_decode_xer; +xer_type_encoder_f LayerID_encode_xer; +per_type_decoder_f LayerID_decode_uper; +per_type_encoder_f LayerID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h new file mode 100644 index 000000000..d316610b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LayerType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LayerType_H_ +#define _LayerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LayerType { + LayerType_none = 0, + LayerType_mixedContent = 1, + LayerType_generalMapData = 2, + LayerType_intersectionData = 3, + LayerType_curveData = 4, + LayerType_roadwaySectionData = 5, + LayerType_parkingAreaData = 6, + LayerType_sharedLaneData = 7 + /* + * Enumeration is extensible + */ +} e_LayerType; + +/* LayerType */ +typedef long LayerType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LayerType; +asn_struct_free_f LayerType_free; +asn_struct_print_f LayerType_print; +asn_constr_check_f LayerType_constraint; +ber_type_decoder_f LayerType_decode_ber; +der_type_encoder_f LayerType_encode_der; +xer_type_decoder_f LayerType_decode_xer; +xer_type_encoder_f LayerType_encode_xer; +per_type_decoder_f LayerType_decode_uper; +per_type_encoder_f LayerType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h new file mode 100644 index 000000000..ea664cddc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LightbarInUse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LightbarInUse_H_ +#define _LightbarInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LightbarInUse { + LightbarInUse_unavailable = 0, + LightbarInUse_notInUse = 1, + LightbarInUse_inUse = 2, + LightbarInUse_sirenInUse = 3, + LightbarInUse_yellowCautionLights = 4, + LightbarInUse_schooldBusLights = 5, + LightbarInUse_arrowSignsActive = 6, + LightbarInUse_slowMovingVehicle = 7, + LightbarInUse_freqStops = 8, + LightbarInUse_reserved = 9 +} e_LightbarInUse; + +/* LightbarInUse */ +typedef long LightbarInUse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; +asn_struct_free_f LightbarInUse_free; +asn_struct_print_f LightbarInUse_print; +asn_constr_check_f LightbarInUse_constraint; +ber_type_decoder_f LightbarInUse_decode_ber; +der_type_encoder_f LightbarInUse_encode_der; +xer_type_decoder_f LightbarInUse_decode_xer; +xer_type_encoder_f LightbarInUse_encode_xer; +per_type_decoder_f LightbarInUse_decode_uper; +per_type_encoder_f LightbarInUse_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LightbarInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h new file mode 100644 index 000000000..7837284d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-quality.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Location_quality_H_ +#define _Location_quality_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_quality { + Location_quality_loc_qual_bt1m = 0, + Location_quality_loc_qual_bt5m = 1, + Location_quality_loc_qual_bt12m = 2, + Location_quality_loc_qual_bt50m = 3, + Location_quality_loc_qual_bt125m = 4, + Location_quality_loc_qual_bt500m = 5, + Location_quality_loc_qual_bt1250m = 6, + Location_quality_loc_qual_unknown = 7 +} e_Location_quality; + +/* Location-quality */ +typedef long Location_quality_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_quality; +asn_struct_free_f Location_quality_free; +asn_struct_print_f Location_quality_print; +asn_constr_check_f Location_quality_constraint; +ber_type_decoder_f Location_quality_decode_ber; +der_type_encoder_f Location_quality_encode_der; +xer_type_decoder_f Location_quality_decode_xer; +xer_type_encoder_f Location_quality_encode_xer; +per_type_decoder_f Location_quality_decode_uper; +per_type_encoder_f Location_quality_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_quality_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h new file mode 100644 index 000000000..da4d7126d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Location-tech.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Location_tech_H_ +#define _Location_tech_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_tech { + Location_tech_loc_tech_unknown = 0, + Location_tech_loc_tech_GPS = 1, + Location_tech_loc_tech_DGPS = 2, + Location_tech_loc_tech_drGPS = 3, + Location_tech_loc_tech_drDGPS = 4, + Location_tech_loc_tech_dr = 5, + Location_tech_loc_tech_nav = 6, + /* + * Enumeration is extensible + */ + Location_tech_loc_tech_fault = 31 +} e_Location_tech; + +/* Location-tech */ +typedef long Location_tech_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_tech; +asn_struct_free_f Location_tech_free; +asn_struct_print_f Location_tech_print; +asn_constr_check_f Location_tech_constraint; +ber_type_decoder_f Location_tech_decode_ber; +der_type_encoder_f Location_tech_encode_der; +xer_type_decoder_f Location_tech_decode_xer; +xer_type_encoder_f Location_tech_encode_xer; +per_type_decoder_f Location_tech_decode_uper; +per_type_encoder_f Location_tech_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_tech_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h new file mode 100644 index 000000000..6eadf0391 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Longitude.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Longitude_H_ +#define _Longitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Longitude */ +typedef long Longitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Longitude; +asn_struct_free_f Longitude_free; +asn_struct_print_f Longitude_print; +asn_constr_check_f Longitude_constraint; +ber_type_decoder_f Longitude_decode_ber; +der_type_encoder_f Longitude_encode_der; +xer_type_decoder_f Longitude_decode_xer; +xer_type_encoder_f Longitude_encode_xer; +per_type_decoder_f Longitude_decode_uper; +per_type_encoder_f Longitude_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Longitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h new file mode 100644 index 000000000..5fcb03f7e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LongitudeDMS_H_ +#define _LongitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS */ +typedef long LongitudeDMS_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; +asn_struct_free_f LongitudeDMS_free; +asn_struct_print_f LongitudeDMS_print; +asn_constr_check_f LongitudeDMS_constraint; +ber_type_decoder_f LongitudeDMS_decode_ber; +der_type_encoder_f LongitudeDMS_encode_der; +xer_type_decoder_f LongitudeDMS_decode_xer; +xer_type_encoder_f LongitudeDMS_encode_xer; +per_type_decoder_f LongitudeDMS_decode_uper; +per_type_encoder_f LongitudeDMS_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h new file mode 100644 index 000000000..0a7a0c61f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/LongitudeDMS2.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _LongitudeDMS2_H_ +#define _LongitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLong.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS2 */ +typedef struct LongitudeDMS2 { + DegreesLong_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LongitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h new file mode 100644 index 000000000..b8a5ae19a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MUTCDCode.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MUTCDCode_H_ +#define _MUTCDCode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MUTCDCode { + MUTCDCode_none = 0, + MUTCDCode_regulatory = 1, + MUTCDCode_warning = 2, + MUTCDCode_maintenance = 3, + MUTCDCode_motoristService = 4, + MUTCDCode_guide = 5, + MUTCDCode_rec = 6 + /* + * Enumeration is extensible + */ +} e_MUTCDCode; + +/* MUTCDCode */ +typedef long MUTCDCode_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; +asn_struct_free_f MUTCDCode_free; +asn_struct_print_f MUTCDCode_print; +asn_constr_check_f MUTCDCode_constraint; +ber_type_decoder_f MUTCDCode_decode_ber; +der_type_encoder_f MUTCDCode_encode_der; +xer_type_decoder_f MUTCDCode_decode_xer; +xer_type_encoder_f MUTCDCode_encode_xer; +per_type_decoder_f MUTCDCode_decode_uper; +per_type_encoder_f MUTCDCode_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MUTCDCode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h new file mode 100644 index 000000000..f12680580 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ManeuverAssistList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ManeuverAssistList_H_ +#define _ManeuverAssistList_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 ConnectionManeuverAssist; + +/* ManeuverAssistList */ +typedef struct ManeuverAssistList { + A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ManeuverAssistList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectionManeuverAssist.h" + +#endif /* _ManeuverAssistList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h new file mode 100644 index 000000000..62be9848a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MapData.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MapData_H_ +#define _MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID2.h" +#include "DSRCmsgSubID.h" +#include "MsgCount.h" +#include "LayerType.h" +#include "LayerID.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionGeometryList; +struct RoadSegmentList; +struct DataParameters; +struct RestrictionClassList; +struct Reg_MapData; + +/* MapData */ +typedef struct MapData { + DSRCmsgID2_t msgID; + DSRCmsgSubID_t *msgSubID /* OPTIONAL */; + MsgCount_t msgIssueRevision; + LayerType_t *layerType /* OPTIONAL */; + LayerID_t *layerID /* OPTIONAL */; + struct IntersectionGeometryList *intersections /* OPTIONAL */; + struct RoadSegmentList *roadSegments /* OPTIONAL */; + struct DataParameters *dataParameters /* OPTIONAL */; + struct RestrictionClassList *restrictionList /* OPTIONAL */; + struct Reg_MapData *regional /* OPTIONAL */; + MsgCRC_t *crc /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometryList.h" +#include "RoadSegmentList.h" +#include "DataParameters.h" +#include "RestrictionClassList.h" +#include "RegionalMapData.h" + +#endif /* _MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h new file mode 100644 index 000000000..25b28bb87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MaxTimetoChange.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MaxTimetoChange_H_ +#define _MaxTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MaxTimetoChange */ +typedef long MaxTimetoChange_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; +asn_struct_free_f MaxTimetoChange_free; +asn_struct_print_f MaxTimetoChange_print; +asn_constr_check_f MaxTimetoChange_constraint; +ber_type_decoder_f MaxTimetoChange_decode_ber; +der_type_encoder_f MaxTimetoChange_encode_der; +xer_type_decoder_f MaxTimetoChange_decode_xer; +xer_type_encoder_f MaxTimetoChange_encode_xer; +per_type_decoder_f MaxTimetoChange_decode_uper; +per_type_encoder_f MaxTimetoChange_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MaxTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h new file mode 100644 index 000000000..262fa9185 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MergeDivergeNodeAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MergeDivergeNodeAngle_H_ +#define _MergeDivergeNodeAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MergeDivergeNodeAngle */ +typedef long MergeDivergeNodeAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; +asn_struct_free_f MergeDivergeNodeAngle_free; +asn_struct_print_f MergeDivergeNodeAngle_print; +asn_constr_check_f MergeDivergeNodeAngle_constraint; +ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; +der_type_encoder_f MergeDivergeNodeAngle_encode_der; +xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; +xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; +per_type_decoder_f MergeDivergeNodeAngle_decode_uper; +per_type_encoder_f MergeDivergeNodeAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MergeDivergeNodeAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h new file mode 100644 index 000000000..855c14989 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinTimetoChange.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MinTimetoChange_H_ +#define _MinTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinTimetoChange */ +typedef long MinTimetoChange_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; +asn_struct_free_f MinTimetoChange_free; +asn_struct_print_f MinTimetoChange_print; +asn_constr_check_f MinTimetoChange_constraint; +ber_type_decoder_f MinTimetoChange_decode_ber; +der_type_encoder_f MinTimetoChange_encode_der; +xer_type_decoder_f MinTimetoChange_decode_xer; +xer_type_encoder_f MinTimetoChange_encode_xer; +per_type_decoder_f MinTimetoChange_decode_uper; +per_type_encoder_f MinTimetoChange_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h new file mode 100644 index 000000000..32fd05592 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Minute.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Minute_H_ +#define _Minute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Minute */ +typedef long Minute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Minute; +asn_struct_free_f Minute_free; +asn_struct_print_f Minute_print; +asn_constr_check_f Minute_constraint; +ber_type_decoder_f Minute_decode_ber; +der_type_encoder_f Minute_encode_der; +xer_type_decoder_f Minute_decode_xer; +xer_type_encoder_f Minute_encode_xer; +per_type_decoder_f Minute_decode_uper; +per_type_encoder_f Minute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Minute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h new file mode 100644 index 000000000..ad02e8d07 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinuteOfTheYear.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MinuteOfTheYear_H_ +#define _MinuteOfTheYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinuteOfTheYear */ +typedef long MinuteOfTheYear_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; +asn_struct_free_f MinuteOfTheYear_free; +asn_struct_print_f MinuteOfTheYear_print; +asn_constr_check_f MinuteOfTheYear_constraint; +ber_type_decoder_f MinuteOfTheYear_decode_ber; +der_type_encoder_f MinuteOfTheYear_encode_der; +xer_type_decoder_f MinuteOfTheYear_decode_xer; +xer_type_encoder_f MinuteOfTheYear_encode_xer; +per_type_decoder_f MinuteOfTheYear_decode_uper; +per_type_encoder_f MinuteOfTheYear_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinuteOfTheYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h new file mode 100644 index 000000000..c85ffd898 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MinutesAngle_H_ +#define _MinutesAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesAngle */ +typedef long MinutesAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; +asn_struct_free_f MinutesAngle_free; +asn_struct_print_f MinutesAngle_print; +asn_constr_check_f MinutesAngle_constraint; +ber_type_decoder_f MinutesAngle_decode_ber; +der_type_encoder_f MinutesAngle_encode_der; +xer_type_decoder_f MinutesAngle_decode_xer; +xer_type_encoder_f MinutesAngle_encode_xer; +per_type_decoder_f MinutesAngle_decode_uper; +per_type_encoder_f MinutesAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h new file mode 100644 index 000000000..4a2c9f884 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MinutesDuration.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MinutesDuration_H_ +#define _MinutesDuration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesDuration */ +typedef long MinutesDuration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; +asn_struct_free_f MinutesDuration_free; +asn_struct_print_f MinutesDuration_print; +asn_constr_check_f MinutesDuration_constraint; +ber_type_decoder_f MinutesDuration_decode_ber; +der_type_encoder_f MinutesDuration_encode_der; +xer_type_decoder_f MinutesDuration_decode_xer; +xer_type_encoder_f MinutesDuration_encode_xer; +per_type_decoder_f MinutesDuration_decode_uper; +per_type_encoder_f MinutesDuration_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesDuration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h new file mode 100644 index 000000000..d9ceef9f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeeds.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityNeeds_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h new file mode 100644 index 000000000..bdf2d4505 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsList.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityNeedsList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h new file mode 100644 index 000000000..1e68c8733 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MobilityNeedsType.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_TYPE_descriptor_t asn_DEF_MobilityNeedsType; +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_r41/ModeOfTransportType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h new file mode 100644 index 000000000..279aadbb0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ModeOfTransportType.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_TYPE_descriptor_t asn_DEF_ModeOfTransportType; +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_r41/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h new file mode 100644 index 000000000..5064dd40d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Month.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Month_H_ +#define _Month_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Month */ +typedef long Month_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Month; +asn_struct_free_f Month_free; +asn_struct_print_f Month_print; +asn_constr_check_f Month_constraint; +ber_type_decoder_f Month_decode_ber; +der_type_encoder_f Month_encode_der; +xer_type_decoder_f Month_decode_xer; +xer_type_encoder_f Month_encode_xer; +per_type_decoder_f Month_decode_uper; +per_type_encoder_f Month_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Month_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h new file mode 100644 index 000000000..7d6d456ca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MotorizedPropelledType.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _MotorizedPropelledType_H_ +#define _MotorizedPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MotorizedPropelledType { + MotorizedPropelledType_unavailable = 0, + MotorizedPropelledType_otherTypes = 1, + MotorizedPropelledType_wheelChair = 2, + MotorizedPropelledType_bicycle = 3, + MotorizedPropelledType_scooter = 4, + MotorizedPropelledType_selfBalancingDevice = 5 + /* + * Enumeration is extensible + */ +} e_MotorizedPropelledType; + +/* MotorizedPropelledType */ +typedef long MotorizedPropelledType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; +asn_struct_free_f MotorizedPropelledType_free; +asn_struct_print_f MotorizedPropelledType_print; +asn_constr_check_f MotorizedPropelledType_constraint; +ber_type_decoder_f MotorizedPropelledType_decode_ber; +der_type_encoder_f MotorizedPropelledType_encode_der; +xer_type_decoder_f MotorizedPropelledType_decode_xer; +xer_type_encoder_f MotorizedPropelledType_encode_xer; +per_type_decoder_f MotorizedPropelledType_decode_uper; +per_type_encoder_f MotorizedPropelledType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MotorizedPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h new file mode 100644 index 000000000..ca40d2944 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEvent.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MovementEvent_H_ +#define _MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MovementPhaseState.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TimeChangeDetails; +struct AdvisorySpeedList; +struct Reg_MovementEvent; + +/* MovementEvent */ +typedef struct MovementEvent { + MovementPhaseState_t eventState; + struct TimeChangeDetails *timing /* OPTIONAL */; + struct AdvisorySpeedList *speeds /* OPTIONAL */; + struct Reg_MovementEvent *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TimeChangeDetails.h" +#include "AdvisorySpeedList.h" +#include "RegionalMovementEvent.h" + +#endif /* _MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h new file mode 100644 index 000000000..ac07f65f0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementEventList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MovementEventList_H_ +#define _MovementEventList_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 MovementEvent; + +/* MovementEventList */ +typedef struct MovementEventList { + A_SEQUENCE_OF(struct MovementEvent) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEventList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementEvent.h" + +#endif /* _MovementEventList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h new file mode 100644 index 000000000..09ff49b3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MovementList_H_ +#define _MovementList_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 MovementState; + +/* MovementList */ +typedef struct MovementList { + A_SEQUENCE_OF(struct MovementState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementState.h" + +#endif /* _MovementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h new file mode 100644 index 000000000..d2ce3d06b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementPhaseState.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MovementPhaseState_H_ +#define _MovementPhaseState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MovementPhaseState { + MovementPhaseState_unavailable = 0, + MovementPhaseState_dark = 1, + MovementPhaseState_stop_Then_Proceed = 2, + MovementPhaseState_stop_And_Remain = 3, + MovementPhaseState_pre_Movement = 4, + MovementPhaseState_permissive_Movement_Allowed = 5, + MovementPhaseState_protected_Movement_Allowed = 6, + MovementPhaseState_permissive_clearance = 7, + MovementPhaseState_protected_clearance = 8, + MovementPhaseState_caution_Conflicting_Traffic = 9 +} e_MovementPhaseState; + +/* MovementPhaseState */ +typedef long MovementPhaseState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; +asn_struct_free_f MovementPhaseState_free; +asn_struct_print_f MovementPhaseState_print; +asn_constr_check_f MovementPhaseState_constraint; +ber_type_decoder_f MovementPhaseState_decode_ber; +der_type_encoder_f MovementPhaseState_encode_der; +xer_type_decoder_f MovementPhaseState_decode_xer; +xer_type_encoder_f MovementPhaseState_encode_xer; +per_type_decoder_f MovementPhaseState_decode_uper; +per_type_encoder_f MovementPhaseState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementPhaseState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h new file mode 100644 index 000000000..66ae7786e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MovementState.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MovementState_H_ +#define _MovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "SignalGroupID.h" +#include "MovementEventList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ManeuverAssistList; +struct Reg_MovementState; + +/* MovementState */ +typedef struct MovementState { + DescriptiveName_t *movementName /* OPTIONAL */; + SignalGroupID_t signalGroup; + MovementEventList_t state_time_speed; + struct ManeuverAssistList *maneuverAssistList /* OPTIONAL */; + struct Reg_MovementState *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementState; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ManeuverAssistList.h" +#include "RegionalMovementState.h" + +#endif /* _MovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h new file mode 100644 index 000000000..e85e93587 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCRC.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MsgCRC_H_ +#define _MsgCRC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MsgCRC */ +typedef OCTET_STRING_t MsgCRC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; +asn_struct_free_f MsgCRC_free; +asn_struct_print_f MsgCRC_print; +asn_constr_check_f MsgCRC_constraint; +ber_type_decoder_f MsgCRC_decode_ber; +der_type_encoder_f MsgCRC_encode_der; +xer_type_decoder_f MsgCRC_decode_xer; +xer_type_encoder_f MsgCRC_encode_xer; +per_type_decoder_f MsgCRC_decode_uper; +per_type_encoder_f MsgCRC_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MsgCRC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h new file mode 100644 index 000000000..3ac87acad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MsgCount.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MsgCount_H_ +#define _MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MsgCount */ +typedef long MsgCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MsgCount; +asn_struct_free_f MsgCount_free; +asn_struct_print_f MsgCount_print; +asn_constr_check_f MsgCount_constraint; +ber_type_decoder_f MsgCount_decode_ber; +der_type_encoder_f MsgCount_encode_der; +xer_type_decoder_f MsgCount_decode_xer; +xer_type_encoder_f MsgCount_encode_xer; +per_type_decoder_f MsgCount_decode_uper; +per_type_encoder_f MsgCount_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h new file mode 100644 index 000000000..ce7de231c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/MultiVehicleResponse.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MultiVehicleResponse_H_ +#define _MultiVehicleResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MultiVehicleResponse { + MultiVehicleResponse_unavailable = 0, + MultiVehicleResponse_singleVehicle = 1, + MultiVehicleResponse_multiVehicle = 2, + MultiVehicleResponse_reserved = 3 +} e_MultiVehicleResponse; + +/* MultiVehicleResponse */ +typedef long MultiVehicleResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; +asn_struct_free_f MultiVehicleResponse_free; +asn_struct_print_f MultiVehicleResponse_print; +asn_constr_check_f MultiVehicleResponse_constraint; +ber_type_decoder_f MultiVehicleResponse_decode_ber; +der_type_encoder_f MultiVehicleResponse_encode_der; +xer_type_decoder_f MultiVehicleResponse_decode_xer; +xer_type_encoder_f MultiVehicleResponse_encode_xer; +per_type_decoder_f MultiVehicleResponse_decode_uper; +per_type_encoder_f MultiVehicleResponse_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MultiVehicleResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h new file mode 100644 index 000000000..83dda7819 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Corrections.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NMEA_Corrections_H_ +#define _NMEA_Corrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "NMEA-Revision.h" +#include "NMEA-MsgType.h" +#include "NativeInteger.h" +#include "NMEA-Payload.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-Corrections */ +typedef struct NMEA_Corrections { + DSRCmsgID_t msgID; + NMEA_Revision_t rev; + NMEA_MsgType_t msg; + long wdCount; + NMEA_Payload_t payload; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NMEA_Corrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Corrections; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Corrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h new file mode 100644 index 000000000..a90c505c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-MsgType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NMEA_MsgType_H_ +#define _NMEA_MsgType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-MsgType */ +typedef long NMEA_MsgType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; +asn_struct_free_f NMEA_MsgType_free; +asn_struct_print_f NMEA_MsgType_print; +asn_constr_check_f NMEA_MsgType_constraint; +ber_type_decoder_f NMEA_MsgType_decode_ber; +der_type_encoder_f NMEA_MsgType_encode_der; +xer_type_decoder_f NMEA_MsgType_decode_xer; +xer_type_encoder_f NMEA_MsgType_encode_xer; +per_type_decoder_f NMEA_MsgType_decode_uper; +per_type_encoder_f NMEA_MsgType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_MsgType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h new file mode 100644 index 000000000..09c47f519 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Payload.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NMEA_Payload_H_ +#define _NMEA_Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-Payload */ +typedef OCTET_STRING_t NMEA_Payload_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; +asn_struct_free_f NMEA_Payload_free; +asn_struct_print_f NMEA_Payload_print; +asn_constr_check_f NMEA_Payload_constraint; +ber_type_decoder_f NMEA_Payload_decode_ber; +der_type_encoder_f NMEA_Payload_encode_der; +xer_type_decoder_f NMEA_Payload_decode_xer; +xer_type_encoder_f NMEA_Payload_encode_xer; +per_type_decoder_f NMEA_Payload_decode_uper; +per_type_encoder_f NMEA_Payload_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h new file mode 100644 index 000000000..b9703d8dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NMEA-Revision.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NMEA_Revision_H_ +#define _NMEA_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NMEA_Revision { + NMEA_Revision_unknown = 0, + NMEA_Revision_reserved = 1, + NMEA_Revision_rev1 = 10, + NMEA_Revision_rev2 = 20, + NMEA_Revision_rev3 = 30, + NMEA_Revision_rev4 = 40, + NMEA_Revision_rev5 = 50 + /* + * Enumeration is extensible + */ +} e_NMEA_Revision; + +/* NMEA-Revision */ +typedef long NMEA_Revision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; +asn_struct_free_f NMEA_Revision_free; +asn_struct_print_f NMEA_Revision_print; +asn_constr_check_f NMEA_Revision_constraint; +ber_type_decoder_f NMEA_Revision_decode_ber; +der_type_encoder_f NMEA_Revision_encode_der; +xer_type_decoder_f NMEA_Revision_decode_xer; +xer_type_encoder_f NMEA_Revision_encode_xer; +per_type_decoder_f NMEA_Revision_decode_uper; +per_type_encoder_f NMEA_Revision_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h new file mode 100644 index 000000000..01d3e616a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NTCIPVehicleclass.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NTCIPVehicleclass_H_ +#define _NTCIPVehicleclass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NTCIPVehicleclass */ +typedef OCTET_STRING_t NTCIPVehicleclass_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NTCIPVehicleclass; +asn_struct_free_f NTCIPVehicleclass_free; +asn_struct_print_f NTCIPVehicleclass_print; +asn_constr_check_f NTCIPVehicleclass_constraint; +ber_type_decoder_f NTCIPVehicleclass_decode_ber; +der_type_encoder_f NTCIPVehicleclass_encode_der; +xer_type_decoder_f NTCIPVehicleclass_decode_xer; +xer_type_encoder_f NTCIPVehicleclass_encode_xer; +per_type_decoder_f NTCIPVehicleclass_decode_uper; +per_type_encoder_f NTCIPVehicleclass_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NTCIPVehicleclass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h new file mode 100644 index 000000000..4006594b6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeEnumerated.h @@ -0,0 +1,32 @@ +/*- + * Copyright (c) 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard ENUMERATED in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeEnumerated_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeEnumerated_H_ +#define _NativeEnumerated_H_ + +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; + +xer_type_encoder_f NativeEnumerated_encode_xer; +per_type_decoder_f NativeEnumerated_decode_uper; +per_type_encoder_f NativeEnumerated_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h new file mode 100644 index 000000000..fb8ebec3a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NativeInteger.h @@ -0,0 +1,37 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard INTEGER in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeInteger_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeInteger_H_ +#define _NativeInteger_H_ + +#include "asn_application.h" +#include "INTEGER.h" + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; + +asn_struct_free_f NativeInteger_free; +asn_struct_print_f NativeInteger_print; +ber_type_decoder_f NativeInteger_decode_ber; +der_type_encoder_f NativeInteger_encode_der; +xer_type_decoder_f NativeInteger_decode_xer; +xer_type_encoder_f NativeInteger_encode_xer; +per_type_decoder_f NativeInteger_decode_uper; +per_type_encoder_f NativeInteger_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h new file mode 100644 index 000000000..d9958286b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-48b.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_LLdms_48b_H_ +#define _Node_LLdms_48b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS.h" +#include "LatitudeDMS.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-48b */ +typedef struct Node_LLdms_48b { + LongitudeDMS_t lon; + LatitudeDMS_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_48b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_48b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h new file mode 100644 index 000000000..6eb6d17b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLdms-80b.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_LLdms_80b_H_ +#define _Node_LLdms_80b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS2.h" +#include "LatitudeDMS2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-80b */ +typedef struct Node_LLdms_80b { + LongitudeDMS2_t lon; + LatitudeDMS2_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_80b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_80b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h new file mode 100644 index 000000000..27d53edb6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-LLmD-64b.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_LLmD_64b_H_ +#define _Node_LLmD_64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLmD-64b */ +typedef struct Node_LLmD_64b { + Longitude_t lon; + Latitude_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLmD_64b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLmD_64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h new file mode 100644 index 000000000..8397b16aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-20b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_20b_H_ +#define _Node_XY_20b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-20b */ +typedef struct Node_XY_20b { + Offset_B10_t x; + Offset_B10_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_20b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_20b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h new file mode 100644 index 000000000..aca84c715 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-22b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_22b_H_ +#define _Node_XY_22b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-22b */ +typedef struct Node_XY_22b { + Offset_B11_t x; + Offset_B11_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_22b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_22b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h new file mode 100644 index 000000000..ecf7a1c0d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-24b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_24b_H_ +#define _Node_XY_24b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-24b */ +typedef struct Node_XY_24b { + Offset_B12_t x; + Offset_B12_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_24b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_24b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h new file mode 100644 index 000000000..664c4d4dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-26b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_26b_H_ +#define _Node_XY_26b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B13.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-26b */ +typedef struct Node_XY_26b { + Offset_B13_t x; + Offset_B13_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_26b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_26b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h new file mode 100644 index 000000000..3474b4c68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-28b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_28b_H_ +#define _Node_XY_28b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-28b */ +typedef struct Node_XY_28b { + Offset_B14_t x; + Offset_B14_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_28b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_28b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h new file mode 100644 index 000000000..8343cd0a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node-XY-32b.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_XY_32b_H_ +#define _Node_XY_32b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-32b */ +typedef struct Node_XY_32b { + Offset_B16_t x; + Offset_B16_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_32b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_32b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h new file mode 100644 index 000000000..59343bc42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Node.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Node_H_ +#define _Node_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPoint.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSet; + +/* Node */ +typedef struct Node { + NodeOffsetPoint_t delta; + struct NodeAttributeSet *attributes /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeSet.h" + +#endif /* _Node_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h new file mode 100644 index 000000000..5a3163ef9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttribute.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeAttribute_H_ +#define _NodeAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttribute { + NodeAttribute_reserved = 0, + NodeAttribute_stopLine = 1, + NodeAttribute_roundedCapStyleA = 2, + NodeAttribute_roundedCapStyleB = 3, + NodeAttribute_mergePoint = 4, + NodeAttribute_divergePoint = 5, + NodeAttribute_downstreamStopLine = 6, + NodeAttribute_downstreamStartNode = 7, + NodeAttribute_closedToTraffic = 8, + NodeAttribute_safeIsland = 9, + NodeAttribute_curbPresentAtStepOff = 10, + NodeAttribute_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttribute; + +/* NodeAttribute */ +typedef long NodeAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttribute; +asn_struct_free_f NodeAttribute_free; +asn_struct_print_f NodeAttribute_print; +asn_constr_check_f NodeAttribute_constraint; +ber_type_decoder_f NodeAttribute_decode_ber; +der_type_encoder_f NodeAttribute_encode_der; +xer_type_decoder_f NodeAttribute_decode_xer; +xer_type_encoder_f NodeAttribute_encode_xer; +per_type_decoder_f NodeAttribute_decode_uper; +per_type_encoder_f NodeAttribute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h new file mode 100644 index 000000000..91b35111e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeList.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeAttributeList_H_ +#define _NodeAttributeList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttribute.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeList */ +typedef struct NodeAttributeList { + A_SEQUENCE_OF(NodeAttribute_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeList; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h new file mode 100644 index 000000000..9557a78a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeAttributeSet.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeAttributeSet_H_ +#define _NodeAttributeSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeList; +struct SegmentAttributeList; +struct LaneDataAttributeList; +struct RegionalNodeAttributeList; + +/* NodeAttributeSet */ +typedef struct NodeAttributeSet { + struct NodeAttributeList *localNode /* OPTIONAL */; + struct SegmentAttributeList *disabled /* OPTIONAL */; + struct SegmentAttributeList *enabled /* OPTIONAL */; + struct LaneDataAttributeList *data /* OPTIONAL */; + struct RegionalNodeAttributeList *regional /* OPTIONAL */; + Offset_B10_t *dWidth /* OPTIONAL */; + Offset_B10_t *dElevation /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSet; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeList.h" +#include "SegmentAttributeList.h" +#include "LaneDataAttributeList.h" +#include "RegionalNodeAttributeList.h" + +#endif /* _NodeAttributeSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h new file mode 100644 index 000000000..dd500bd16 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeList_H_ +#define _NodeList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offsets.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeList */ +typedef struct NodeList { + A_SEQUENCE_OF(Offsets_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeList; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h new file mode 100644 index 000000000..c40de7c73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeList2.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeList2_H_ +#define _NodeList2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSet.h" +#include "ComputedLane.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeList2_PR { + NodeList2_PR_NOTHING, /* No components present */ + NodeList2_PR_nodes, + NodeList2_PR_computed, + /* Extensions may appear below */ + +} NodeList2_PR; + +/* NodeList2 */ +typedef struct NodeList2 { + NodeList2_PR present; + union NodeList2_u { + NodeSet_t nodes; + ComputedLane_t computed; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeList2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeList2; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeList2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h new file mode 100644 index 000000000..c0ee31f14 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeOffsetPoint.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeOffsetPoint_H_ +#define _NodeOffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-XY-20b.h" +#include "Node-XY-22b.h" +#include "Node-XY-24b.h" +#include "Node-XY-26b.h" +#include "Node-XY-28b.h" +#include "Node-XY-32b.h" +#include "Node-LLmD-64b.h" +#include "RegionalNodeOffsetPoint.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPoint_PR { + NodeOffsetPoint_PR_NOTHING, /* No components present */ + NodeOffsetPoint_PR_node_XY1, + NodeOffsetPoint_PR_node_XY2, + NodeOffsetPoint_PR_node_XY3, + NodeOffsetPoint_PR_node_XY4, + NodeOffsetPoint_PR_node_XY5, + NodeOffsetPoint_PR_node_XY6, + NodeOffsetPoint_PR_node_LatLon, + NodeOffsetPoint_PR_node_Regional +} NodeOffsetPoint_PR; + +/* NodeOffsetPoint */ +typedef struct NodeOffsetPoint { + NodeOffsetPoint_PR present; + union NodeOffsetPoint_u { + Node_XY_20b_t node_XY1; + Node_XY_22b_t node_XY2; + Node_XY_24b_t node_XY3; + Node_XY_26b_t node_XY4; + Node_XY_28b_t node_XY5; + Node_XY_32b_t node_XY6; + Node_LLmD_64b_t node_LatLon; + RegionalNodeOffsetPoint_t node_Regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPoint; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h new file mode 100644 index 000000000..1a8f4fd66 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NodeSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _NodeSet_H_ +#define _NodeSet_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 Node; + +/* NodeSet */ +typedef struct NodeSet { + A_SEQUENCE_OF(struct Node) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSet; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Node.h" + +#endif /* _NodeSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h new file mode 100644 index 000000000..d66d6084b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/NumberOfParticipantsInCluster.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _NumberOfParticipantsInCluster_H_ +#define _NumberOfParticipantsInCluster_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NumberOfParticipantsInCluster { + NumberOfParticipantsInCluster_unavailable = 0, + NumberOfParticipantsInCluster_small = 1, + NumberOfParticipantsInCluster_medium = 2, + NumberOfParticipantsInCluster_large = 3 + /* + * Enumeration is extensible + */ +} e_NumberOfParticipantsInCluster; + +/* NumberOfParticipantsInCluster */ +typedef long NumberOfParticipantsInCluster_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; +asn_struct_free_f NumberOfParticipantsInCluster_free; +asn_struct_print_f NumberOfParticipantsInCluster_print; +asn_constr_check_f NumberOfParticipantsInCluster_constraint; +ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; +der_type_encoder_f NumberOfParticipantsInCluster_encode_der; +xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; +xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; +per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NumberOfParticipantsInCluster_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h new file mode 100644 index 000000000..ab5561783 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/OCTET_STRING.h @@ -0,0 +1,86 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OCTET_STRING_H_ +#define _OCTET_STRING_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct OCTET_STRING { + uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ + int size; /* Size of the buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} OCTET_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; + +asn_struct_free_f OCTET_STRING_free; +asn_struct_print_f OCTET_STRING_print; +asn_struct_print_f OCTET_STRING_print_utf8; +ber_type_decoder_f OCTET_STRING_decode_ber; +der_type_encoder_f OCTET_STRING_encode_der; +xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ +xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ +xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ +xer_type_encoder_f OCTET_STRING_encode_xer; +xer_type_encoder_f OCTET_STRING_encode_xer_utf8; +per_type_decoder_f OCTET_STRING_decode_uper; +per_type_encoder_f OCTET_STRING_encode_uper; + +/****************************** + * Handy conversion routines. * + ******************************/ + +/* + * This function clears the previous value of the OCTET STRING (if any) + * and then allocates a new memory with the specified content (str/size). + * If size = -1, the size of the original string will be determined + * using strlen(str). + * If str equals to NULL, the function will silently clear the + * current contents of the OCTET STRING. + * Returns 0 if it was possible to perform operation, -1 otherwise. + */ +int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); + +/* Handy conversion from the C string into the OCTET STRING. */ +#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) + +/* + * Allocate and fill the new OCTET STRING and return a pointer to the newly + * allocated object. NULL is permitted in str: the function will just allocate + * empty OCTET STRING. + */ +OCTET_STRING_t *OCTET_STRING_new_fromBuf(asn_TYPE_descriptor_t *td, + const char *str, int size); + +/**************************** + * Internally useful stuff. * + ****************************/ + +typedef struct asn_OCTET_STRING_specifics_s { + /* + * Target structure description. + */ + int struct_size; /* Size of the structure */ + int ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + enum asn_OS_Subvariant { + ASN_OSUBV_ANY, /* The open type (ANY) */ + ASN_OSUBV_BIT, /* BIT STRING */ + ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ + ASN_OSUBV_U16, /* 16-bit character (BMPString) */ + ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ + } subvariant; +} asn_OCTET_STRING_specifics_t; + +#ifdef __cplusplus +} +#endif + +#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h new file mode 100644 index 000000000..13d7904d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObjectCount.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ObjectCount_H_ +#define _ObjectCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectCount */ +typedef long ObjectCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; +asn_struct_free_f ObjectCount_free; +asn_struct_print_f ObjectCount_print; +asn_constr_check_f ObjectCount_constraint; +ber_type_decoder_f ObjectCount_decode_ber; +der_type_encoder_f ObjectCount_encode_der; +xer_type_decoder_f ObjectCount_decode_xer; +xer_type_encoder_f ObjectCount_encode_xer; +per_type_decoder_f ObjectCount_decode_uper; +per_type_encoder_f ObjectCount_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h new file mode 100644 index 000000000..76f4e989b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDirection.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ObstacleDirection_H_ +#define _ObstacleDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Heading.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDirection */ +typedef Heading_t ObstacleDirection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; +asn_struct_free_f ObstacleDirection_free; +asn_struct_print_f ObstacleDirection_print; +asn_constr_check_f ObstacleDirection_constraint; +ber_type_decoder_f ObstacleDirection_decode_ber; +der_type_encoder_f ObstacleDirection_encode_der; +xer_type_decoder_f ObstacleDirection_decode_xer; +xer_type_encoder_f ObstacleDirection_encode_xer; +per_type_decoder_f ObstacleDirection_decode_uper; +per_type_encoder_f ObstacleDirection_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h new file mode 100644 index 000000000..38f5022c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ObstacleDistance.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ObstacleDistance_H_ +#define _ObstacleDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDistance */ +typedef long ObstacleDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; +asn_struct_free_f ObstacleDistance_free; +asn_struct_print_f ObstacleDistance_print; +asn_constr_check_f ObstacleDistance_constraint; +ber_type_decoder_f ObstacleDistance_decode_ber; +der_type_encoder_f ObstacleDistance_encode_der; +xer_type_decoder_f ObstacleDistance_decode_xer; +xer_type_encoder_f ObstacleDistance_encode_xer; +per_type_decoder_f ObstacleDistance_decode_uper; +per_type_encoder_f ObstacleDistance_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h new file mode 100644 index 000000000..949732d97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B10.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B10_H_ +#define _Offset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B10 */ +typedef long Offset_B10_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; +asn_struct_free_f Offset_B10_free; +asn_struct_print_f Offset_B10_print; +asn_constr_check_f Offset_B10_constraint; +ber_type_decoder_f Offset_B10_decode_ber; +der_type_encoder_f Offset_B10_encode_der; +xer_type_decoder_f Offset_B10_decode_xer; +xer_type_encoder_f Offset_B10_encode_xer; +per_type_decoder_f Offset_B10_decode_uper; +per_type_encoder_f Offset_B10_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h new file mode 100644 index 000000000..127f88f7f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B11.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B11_H_ +#define _Offset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B11 */ +typedef long Offset_B11_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; +asn_struct_free_f Offset_B11_free; +asn_struct_print_f Offset_B11_print; +asn_constr_check_f Offset_B11_constraint; +ber_type_decoder_f Offset_B11_decode_ber; +der_type_encoder_f Offset_B11_encode_der; +xer_type_decoder_f Offset_B11_decode_xer; +xer_type_encoder_f Offset_B11_encode_xer; +per_type_decoder_f Offset_B11_decode_uper; +per_type_encoder_f Offset_B11_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h new file mode 100644 index 000000000..a46f6fc94 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B12.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B12_H_ +#define _Offset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B12 */ +typedef long Offset_B12_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; +asn_struct_free_f Offset_B12_free; +asn_struct_print_f Offset_B12_print; +asn_constr_check_f Offset_B12_constraint; +ber_type_decoder_f Offset_B12_decode_ber; +der_type_encoder_f Offset_B12_encode_der; +xer_type_decoder_f Offset_B12_decode_xer; +xer_type_encoder_f Offset_B12_encode_xer; +per_type_decoder_f Offset_B12_decode_uper; +per_type_encoder_f Offset_B12_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h new file mode 100644 index 000000000..7be2f9f90 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B13.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B13_H_ +#define _Offset_B13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B13 */ +typedef long Offset_B13_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; +asn_struct_free_f Offset_B13_free; +asn_struct_print_f Offset_B13_print; +asn_constr_check_f Offset_B13_constraint; +ber_type_decoder_f Offset_B13_decode_ber; +der_type_encoder_f Offset_B13_encode_der; +xer_type_decoder_f Offset_B13_decode_xer; +xer_type_encoder_f Offset_B13_encode_xer; +per_type_decoder_f Offset_B13_decode_uper; +per_type_encoder_f Offset_B13_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h new file mode 100644 index 000000000..b19286d2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B14.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B14_H_ +#define _Offset_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B14 */ +typedef long Offset_B14_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; +asn_struct_free_f Offset_B14_free; +asn_struct_print_f Offset_B14_print; +asn_constr_check_f Offset_B14_constraint; +ber_type_decoder_f Offset_B14_decode_ber; +der_type_encoder_f Offset_B14_encode_der; +xer_type_decoder_f Offset_B14_decode_xer; +xer_type_encoder_f Offset_B14_encode_xer; +per_type_decoder_f Offset_B14_decode_uper; +per_type_encoder_f Offset_B14_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h new file mode 100644 index 000000000..7d6de9cd8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offset-B16.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offset_B16_H_ +#define _Offset_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B16 */ +typedef long Offset_B16_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; +asn_struct_free_f Offset_B16_free; +asn_struct_print_f Offset_B16_print; +asn_constr_check_f Offset_B16_constraint; +ber_type_decoder_f Offset_B16_decode_ber; +der_type_encoder_f Offset_B16_encode_der; +xer_type_decoder_f Offset_B16_decode_xer; +xer_type_encoder_f Offset_B16_encode_xer; +per_type_decoder_f Offset_B16_decode_uper; +per_type_encoder_f Offset_B16_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h new file mode 100644 index 000000000..a806bd1ab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Offsets.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Offsets_H_ +#define _Offsets_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offsets */ +typedef OCTET_STRING_t Offsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Offsets; +asn_struct_free_f Offsets_free; +asn_struct_print_f Offsets_print; +asn_constr_check_f Offsets_constraint; +ber_type_decoder_f Offsets_decode_ber; +der_type_encoder_f Offsets_encode_der; +xer_type_decoder_f Offsets_decode_xer; +xer_type_encoder_f Offsets_encode_xer; +per_type_decoder_f Offsets_decode_uper; +per_type_encoder_f Offsets_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h new file mode 100644 index 000000000..03c9853cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/OverlayLaneList.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _OverlayLaneList_H_ +#define _OverlayLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OverlayLaneList */ +typedef struct OverlayLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OverlayLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; + +#ifdef __cplusplus +} +#endif + +#endif /* _OverlayLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h new file mode 100644 index 000000000..449a85d0f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistory.h @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistory_H_ +#define _PathHistory_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GPSstatus.h" +#include "Count.h" +#include "OCTET_STRING.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PathHistory__crumbData_PR { + PathHistory__crumbData_PR_NOTHING, /* No components present */ + PathHistory__crumbData_PR_pathHistoryPointSets_01, + PathHistory__crumbData_PR_pathHistoryPointSets_02, + PathHistory__crumbData_PR_pathHistoryPointSets_03, + PathHistory__crumbData_PR_pathHistoryPointSets_04, + PathHistory__crumbData_PR_pathHistoryPointSets_05, + PathHistory__crumbData_PR_pathHistoryPointSets_06, + PathHistory__crumbData_PR_pathHistoryPointSets_07, + PathHistory__crumbData_PR_pathHistoryPointSets_08, + PathHistory__crumbData_PR_pathHistoryPointSets_09, + PathHistory__crumbData_PR_pathHistoryPointSets_10 +} PathHistory__crumbData_PR; + +/* Forward declarations */ +struct FullPositionVector; +struct PathHistoryPointType_01; + +/* PathHistory */ +typedef struct PathHistory { + struct FullPositionVector *initialPosition /* OPTIONAL */; + GPSstatus_t *currGPSstatus /* OPTIONAL */; + Count_t *itemCnt /* OPTIONAL */; + struct PathHistory__crumbData { + PathHistory__crumbData_PR present; + union PathHistory__crumbData_u { + struct PathHistory__crumbData__pathHistoryPointSets_01 { + A_SEQUENCE_OF(struct PathHistoryPointType_01) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } pathHistoryPointSets_01; + OCTET_STRING_t pathHistoryPointSets_02; + OCTET_STRING_t pathHistoryPointSets_03; + OCTET_STRING_t pathHistoryPointSets_04; + OCTET_STRING_t pathHistoryPointSets_05; + OCTET_STRING_t pathHistoryPointSets_06; + OCTET_STRING_t pathHistoryPointSets_07; + OCTET_STRING_t pathHistoryPointSets_08; + OCTET_STRING_t pathHistoryPointSets_09; + OCTET_STRING_t pathHistoryPointSets_10; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } crumbData; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistory_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistory; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "PathHistoryPointType-01.h" + +#endif /* _PathHistory_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h new file mode 100644 index 000000000..1a2e7487a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-01.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_01_H_ +#define _PathHistoryPointType_01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "PositionalAccuracy.h" +#include "TransmissionAndSpeed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-01 */ +typedef struct PathHistoryPointType_01 { + long latOffset; + long longOffset; + long *elevationOffset /* OPTIONAL */; + long *timeOffset /* OPTIONAL */; + PositionalAccuracy_t *posAccuracy /* OPTIONAL */; + long *heading /* OPTIONAL */; + TransmissionAndSpeed_t *speed /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPointType_01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_01; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h new file mode 100644 index 000000000..f4104f6df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-02.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_02_H_ +#define _PathHistoryPointType_02_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-02 */ +typedef OCTET_STRING_t PathHistoryPointType_02_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_02; +asn_struct_free_f PathHistoryPointType_02_free; +asn_struct_print_f PathHistoryPointType_02_print; +asn_constr_check_f PathHistoryPointType_02_constraint; +ber_type_decoder_f PathHistoryPointType_02_decode_ber; +der_type_encoder_f PathHistoryPointType_02_encode_der; +xer_type_decoder_f PathHistoryPointType_02_decode_xer; +xer_type_encoder_f PathHistoryPointType_02_encode_xer; +per_type_decoder_f PathHistoryPointType_02_decode_uper; +per_type_encoder_f PathHistoryPointType_02_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_02_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h new file mode 100644 index 000000000..91e80170d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-03.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_03_H_ +#define _PathHistoryPointType_03_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-03 */ +typedef OCTET_STRING_t PathHistoryPointType_03_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_03; +asn_struct_free_f PathHistoryPointType_03_free; +asn_struct_print_f PathHistoryPointType_03_print; +asn_constr_check_f PathHistoryPointType_03_constraint; +ber_type_decoder_f PathHistoryPointType_03_decode_ber; +der_type_encoder_f PathHistoryPointType_03_encode_der; +xer_type_decoder_f PathHistoryPointType_03_decode_xer; +xer_type_encoder_f PathHistoryPointType_03_encode_xer; +per_type_decoder_f PathHistoryPointType_03_decode_uper; +per_type_encoder_f PathHistoryPointType_03_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_03_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h new file mode 100644 index 000000000..910d0001c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-04.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_04_H_ +#define _PathHistoryPointType_04_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-04 */ +typedef OCTET_STRING_t PathHistoryPointType_04_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_04; +asn_struct_free_f PathHistoryPointType_04_free; +asn_struct_print_f PathHistoryPointType_04_print; +asn_constr_check_f PathHistoryPointType_04_constraint; +ber_type_decoder_f PathHistoryPointType_04_decode_ber; +der_type_encoder_f PathHistoryPointType_04_encode_der; +xer_type_decoder_f PathHistoryPointType_04_decode_xer; +xer_type_encoder_f PathHistoryPointType_04_encode_xer; +per_type_decoder_f PathHistoryPointType_04_decode_uper; +per_type_encoder_f PathHistoryPointType_04_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_04_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h new file mode 100644 index 000000000..0813573f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-05.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_05_H_ +#define _PathHistoryPointType_05_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-05 */ +typedef OCTET_STRING_t PathHistoryPointType_05_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_05; +asn_struct_free_f PathHistoryPointType_05_free; +asn_struct_print_f PathHistoryPointType_05_print; +asn_constr_check_f PathHistoryPointType_05_constraint; +ber_type_decoder_f PathHistoryPointType_05_decode_ber; +der_type_encoder_f PathHistoryPointType_05_encode_der; +xer_type_decoder_f PathHistoryPointType_05_decode_xer; +xer_type_encoder_f PathHistoryPointType_05_encode_xer; +per_type_decoder_f PathHistoryPointType_05_decode_uper; +per_type_encoder_f PathHistoryPointType_05_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_05_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h new file mode 100644 index 000000000..d170ab963 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-06.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_06_H_ +#define _PathHistoryPointType_06_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-06 */ +typedef OCTET_STRING_t PathHistoryPointType_06_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_06; +asn_struct_free_f PathHistoryPointType_06_free; +asn_struct_print_f PathHistoryPointType_06_print; +asn_constr_check_f PathHistoryPointType_06_constraint; +ber_type_decoder_f PathHistoryPointType_06_decode_ber; +der_type_encoder_f PathHistoryPointType_06_encode_der; +xer_type_decoder_f PathHistoryPointType_06_decode_xer; +xer_type_encoder_f PathHistoryPointType_06_encode_xer; +per_type_decoder_f PathHistoryPointType_06_decode_uper; +per_type_encoder_f PathHistoryPointType_06_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_06_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h new file mode 100644 index 000000000..c24b8f679 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-07.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_07_H_ +#define _PathHistoryPointType_07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-07 */ +typedef OCTET_STRING_t PathHistoryPointType_07_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_07; +asn_struct_free_f PathHistoryPointType_07_free; +asn_struct_print_f PathHistoryPointType_07_print; +asn_constr_check_f PathHistoryPointType_07_constraint; +ber_type_decoder_f PathHistoryPointType_07_decode_ber; +der_type_encoder_f PathHistoryPointType_07_encode_der; +xer_type_decoder_f PathHistoryPointType_07_decode_xer; +xer_type_encoder_f PathHistoryPointType_07_encode_xer; +per_type_decoder_f PathHistoryPointType_07_decode_uper; +per_type_encoder_f PathHistoryPointType_07_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h new file mode 100644 index 000000000..dd4e8cb41 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-08.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_08_H_ +#define _PathHistoryPointType_08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-08 */ +typedef OCTET_STRING_t PathHistoryPointType_08_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_08; +asn_struct_free_f PathHistoryPointType_08_free; +asn_struct_print_f PathHistoryPointType_08_print; +asn_constr_check_f PathHistoryPointType_08_constraint; +ber_type_decoder_f PathHistoryPointType_08_decode_ber; +der_type_encoder_f PathHistoryPointType_08_encode_der; +xer_type_decoder_f PathHistoryPointType_08_decode_xer; +xer_type_encoder_f PathHistoryPointType_08_encode_xer; +per_type_decoder_f PathHistoryPointType_08_decode_uper; +per_type_encoder_f PathHistoryPointType_08_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h new file mode 100644 index 000000000..b3ed1128c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-09.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_09_H_ +#define _PathHistoryPointType_09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-09 */ +typedef OCTET_STRING_t PathHistoryPointType_09_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_09; +asn_struct_free_f PathHistoryPointType_09_free; +asn_struct_print_f PathHistoryPointType_09_print; +asn_constr_check_f PathHistoryPointType_09_constraint; +ber_type_decoder_f PathHistoryPointType_09_decode_ber; +der_type_encoder_f PathHistoryPointType_09_encode_der; +xer_type_decoder_f PathHistoryPointType_09_decode_xer; +xer_type_encoder_f PathHistoryPointType_09_encode_xer; +per_type_decoder_f PathHistoryPointType_09_decode_uper; +per_type_encoder_f PathHistoryPointType_09_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h new file mode 100644 index 000000000..b9284aff4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathHistoryPointType-10.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathHistoryPointType_10_H_ +#define _PathHistoryPointType_10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathHistoryPointType-10 */ +typedef OCTET_STRING_t PathHistoryPointType_10_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_10; +asn_struct_free_f PathHistoryPointType_10_free; +asn_struct_print_f PathHistoryPointType_10_print; +asn_constr_check_f PathHistoryPointType_10_constraint; +ber_type_decoder_f PathHistoryPointType_10_decode_ber; +der_type_encoder_f PathHistoryPointType_10_encode_der; +xer_type_decoder_f PathHistoryPointType_10_decode_xer; +xer_type_encoder_f PathHistoryPointType_10_encode_xer; +per_type_decoder_f PathHistoryPointType_10_decode_uper; +per_type_encoder_f PathHistoryPointType_10_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathHistoryPointType_10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h new file mode 100644 index 000000000..b32662c5b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PathPrediction.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PathPrediction_H_ +#define _PathPrediction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathPrediction */ +typedef struct PathPrediction { + long radiusOfCurve; + long confidence; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathPrediction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathPrediction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h new file mode 100644 index 000000000..a4ecef252 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Payload.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Payload_H_ +#define _Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Payload */ +typedef OCTET_STRING_t Payload_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Payload; +asn_struct_free_f Payload_free; +asn_struct_print_f Payload_print; +asn_constr_check_f Payload_constraint; +ber_type_decoder_f Payload_decode_ber; +der_type_encoder_f Payload_encode_der; +xer_type_decoder_f Payload_decode_xer; +xer_type_encoder_f Payload_encode_xer; +per_type_decoder_f Payload_decode_uper; +per_type_encoder_f Payload_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h new file mode 100644 index 000000000..43e693039 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PayloadData.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PayloadData_H_ +#define _PayloadData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PayloadData */ +typedef OCTET_STRING_t PayloadData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PayloadData; +asn_struct_free_f PayloadData_free; +asn_struct_print_f PayloadData_print; +asn_constr_check_f PayloadData_constraint; +ber_type_decoder_f PayloadData_decode_ber; +der_type_encoder_f PayloadData_encode_der; +xer_type_decoder_f PayloadData_decode_xer; +xer_type_encoder_f PayloadData_encode_xer; +per_type_decoder_f PayloadData_decode_uper; +per_type_encoder_f PayloadData_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PayloadData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h new file mode 100644 index 000000000..0002b4d0c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PedestrianBicycleDetect.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PedestrianBicycleDetect_H_ +#define _PedestrianBicycleDetect_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PedestrianBicycleDetect */ +typedef BOOLEAN_t PedestrianBicycleDetect_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; +asn_struct_free_f PedestrianBicycleDetect_free; +asn_struct_print_f PedestrianBicycleDetect_print; +asn_constr_check_f PedestrianBicycleDetect_constraint; +ber_type_decoder_f PedestrianBicycleDetect_decode_ber; +der_type_encoder_f PedestrianBicycleDetect_encode_der; +xer_type_decoder_f PedestrianBicycleDetect_decode_xer; +xer_type_encoder_f PedestrianBicycleDetect_encode_xer; +per_type_decoder_f PedestrianBicycleDetect_decode_uper; +per_type_encoder_f PedestrianBicycleDetect_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PedestrianBicycleDetect_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h new file mode 100644 index 000000000..f75bc6319 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalAssistive.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalAssistive_H_ +#define _PersonalAssistive_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalAssistive { + PersonalAssistive_unavailable = 0, + PersonalAssistive_otherType = 1, + PersonalAssistive_vision = 2, + PersonalAssistive_hearing = 3, + PersonalAssistive_movement = 4, + PersonalAssistive_cognition = 5 +} e_PersonalAssistive; + +/* PersonalAssistive */ +typedef BIT_STRING_t PersonalAssistive_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; +asn_struct_free_f PersonalAssistive_free; +asn_struct_print_f PersonalAssistive_print; +asn_constr_check_f PersonalAssistive_constraint; +ber_type_decoder_f PersonalAssistive_decode_ber; +der_type_encoder_f PersonalAssistive_encode_der; +xer_type_decoder_f PersonalAssistive_decode_xer; +xer_type_encoder_f PersonalAssistive_encode_xer; +per_type_decoder_f PersonalAssistive_decode_uper; +per_type_encoder_f PersonalAssistive_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalAssistive_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h new file mode 100644 index 000000000..10f948535 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalClusterRadius.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalClusterRadius_H_ +#define _PersonalClusterRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalClusterRadius */ +typedef long PersonalClusterRadius_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; +asn_struct_free_f PersonalClusterRadius_free; +asn_struct_print_f PersonalClusterRadius_print; +asn_constr_check_f PersonalClusterRadius_constraint; +ber_type_decoder_f PersonalClusterRadius_decode_ber; +der_type_encoder_f PersonalClusterRadius_encode_der; +xer_type_decoder_f PersonalClusterRadius_decode_xer; +xer_type_encoder_f PersonalClusterRadius_encode_xer; +per_type_decoder_f PersonalClusterRadius_decode_uper; +per_type_encoder_f PersonalClusterRadius_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalClusterRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h new file mode 100644 index 000000000..530dfc396 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingInProgress.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalCrossingInProgress_H_ +#define _PersonalCrossingInProgress_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingInProgress */ +typedef BOOLEAN_t PersonalCrossingInProgress_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; +asn_struct_free_f PersonalCrossingInProgress_free; +asn_struct_print_f PersonalCrossingInProgress_print; +asn_constr_check_f PersonalCrossingInProgress_constraint; +ber_type_decoder_f PersonalCrossingInProgress_decode_ber; +der_type_encoder_f PersonalCrossingInProgress_encode_der; +xer_type_decoder_f PersonalCrossingInProgress_decode_xer; +xer_type_encoder_f PersonalCrossingInProgress_encode_xer; +per_type_decoder_f PersonalCrossingInProgress_decode_uper; +per_type_encoder_f PersonalCrossingInProgress_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingInProgress_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h new file mode 100644 index 000000000..38fb3efcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalCrossingRequest.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalCrossingRequest_H_ +#define _PersonalCrossingRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingRequest */ +typedef BOOLEAN_t PersonalCrossingRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; +asn_struct_free_f PersonalCrossingRequest_free; +asn_struct_print_f PersonalCrossingRequest_print; +asn_constr_check_f PersonalCrossingRequest_constraint; +ber_type_decoder_f PersonalCrossingRequest_decode_ber; +der_type_encoder_f PersonalCrossingRequest_encode_der; +xer_type_decoder_f PersonalCrossingRequest_decode_xer; +xer_type_encoder_f PersonalCrossingRequest_encode_xer; +per_type_decoder_f PersonalCrossingRequest_decode_uper; +per_type_encoder_f PersonalCrossingRequest_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h new file mode 100644 index 000000000..0aa4e2037 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUsageState.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalDeviceUsageState_H_ +#define _PersonalDeviceUsageState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUsageState { + PersonalDeviceUsageState_unavailable = 0, + PersonalDeviceUsageState_other = 1, + PersonalDeviceUsageState_idle = 2, + PersonalDeviceUsageState_listeningToAudio = 3, + PersonalDeviceUsageState_typing = 4, + PersonalDeviceUsageState_calling = 5, + PersonalDeviceUsageState_playingGames = 6, + PersonalDeviceUsageState_reading = 7, + PersonalDeviceUsageState_viewing = 8 +} e_PersonalDeviceUsageState; + +/* PersonalDeviceUsageState */ +typedef BIT_STRING_t PersonalDeviceUsageState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; +asn_struct_free_f PersonalDeviceUsageState_free; +asn_struct_print_f PersonalDeviceUsageState_print; +asn_constr_check_f PersonalDeviceUsageState_constraint; +ber_type_decoder_f PersonalDeviceUsageState_decode_ber; +der_type_encoder_f PersonalDeviceUsageState_encode_der; +xer_type_decoder_f PersonalDeviceUsageState_decode_xer; +xer_type_encoder_f PersonalDeviceUsageState_encode_xer; +per_type_decoder_f PersonalDeviceUsageState_decode_uper; +per_type_encoder_f PersonalDeviceUsageState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUsageState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h new file mode 100644 index 000000000..fc85ae94a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalDeviceUserType.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalDeviceUserType_H_ +#define _PersonalDeviceUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUserType { + PersonalDeviceUserType_unavailable = 0, + PersonalDeviceUserType_aPEDESTRIAN = 1, + PersonalDeviceUserType_aPEDALCYCLIST = 2, + PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, + PersonalDeviceUserType_anANIMAL = 4 + /* + * Enumeration is extensible + */ +} e_PersonalDeviceUserType; + +/* PersonalDeviceUserType */ +typedef long PersonalDeviceUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; +asn_struct_free_f PersonalDeviceUserType_free; +asn_struct_print_f PersonalDeviceUserType_print; +asn_constr_check_f PersonalDeviceUserType_constraint; +ber_type_decoder_f PersonalDeviceUserType_decode_ber; +der_type_encoder_f PersonalDeviceUserType_encode_der; +xer_type_decoder_f PersonalDeviceUserType_decode_xer; +xer_type_encoder_f PersonalDeviceUserType_encode_xer; +per_type_decoder_f PersonalDeviceUserType_decode_uper; +per_type_encoder_f PersonalDeviceUserType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h new file mode 100644 index 000000000..1de817814 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessage.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#ifndef _PersonalMobilityMessage_H_ +#define _PersonalMobilityMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "UUIDType.h" +#include "RequestID.h" +#include "PersonalMobilityMessageStatusType.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "ModeOfTransportType.h" +#include "EstimatedTimeType.h" +#include "DSRCEquippedType.h" +#include "VehicleDescriptionType.h" +#include "RegionalPersonalMobilityMessage.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DFullTime; +struct DestinationType; +struct MobilityNeedsList; + +/* PersonalMobilityMessage */ +typedef struct PersonalMobilityMessage { + UUIDType_t groupId; + RequestID_t requestId; + PersonalMobilityMessageStatusType_t status; + Position3D_t position; + PositionalAccuracy_t *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 */; + RegionalPersonalMobilityMessage_t regional; + + /* 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 + +#endif /* _PersonalMobilityMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h new file mode 100644 index 000000000..1cccb4935 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalMobilityMessageStatusType.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_cancel = 3, + PersonalMobilityMessageStatusType_arrival = 4, + PersonalMobilityMessageStatusType_completed = 5 +} e_PersonalMobilityMessageStatusType; + +/* PersonalMobilityMessageStatusType */ +typedef long PersonalMobilityMessageStatusType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessageStatusType; +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_r41/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h new file mode 100644 index 000000000..0d69ef537 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PersonalSafetyMessage.h @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PersonalSafetyMessage_H_ +#define _PersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "DSecond.h" +#include "MsgCount.h" +#include "TemporaryID.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "Velocity.h" +#include "Heading.h" +#include "AccelerationSet4Way.h" +#include "PersonalDeviceUsageState.h" +#include "PersonalCrossingRequest.h" +#include "PersonalCrossingInProgress.h" +#include "NumberOfParticipantsInCluster.h" +#include "PersonalClusterRadius.h" +#include "PublicSafetyEventResponderWorkerType.h" +#include "PublicSafetyAndRoadWorkerActivity.h" +#include "PublicSafetyDirectingTrafficSubType.h" +#include "PersonalAssistive.h" +#include "UserSizeAndBehaviour.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include "AnimalType.h" +#include "RegionalPersonalSafetyMessage.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathHistory; +struct PathPrediction; +struct PropelledInformation; + +/* PersonalSafetyMessage */ +typedef struct PersonalSafetyMessage { + PersonalDeviceUserType_t basicType; + DSecond_t secMark; + MsgCount_t msgCnt; + TemporaryID_t id; + Position3D_t position; + PositionalAccuracy_t accuracy; + Velocity_t speed; + Heading_t heading; + AccelerationSet4Way_t *accelSet /* OPTIONAL */; + struct PathHistory *pathHistory /* OPTIONAL */; + struct PathPrediction *pathPrediction /* OPTIONAL */; + struct PropelledInformation *propulsion /* OPTIONAL */; + PersonalDeviceUsageState_t *useState /* OPTIONAL */; + PersonalCrossingRequest_t *crossRequest /* OPTIONAL */; + PersonalCrossingInProgress_t *crossState /* OPTIONAL */; + NumberOfParticipantsInCluster_t *clusterSize /* OPTIONAL */; + PersonalClusterRadius_t *clusterRadius /* OPTIONAL */; + PublicSafetyEventResponderWorkerType_t *eventResponderType /* OPTIONAL */; + PublicSafetyAndRoadWorkerActivity_t *activityType /* OPTIONAL */; + PublicSafetyDirectingTrafficSubType_t *activitySubType /* OPTIONAL */; + PersonalAssistive_t *assistType /* OPTIONAL */; + UserSizeAndBehaviour_t *sizing /* OPTIONAL */; + Attachment_t *attachment /* OPTIONAL */; + AttachmentRadius_t *attachmentRadius /* OPTIONAL */; + AnimalType_t *animalType /* OPTIONAL */; + RegionalPersonalSafetyMessage_t regional; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistory.h" +#include "PathPrediction.h" +#include "PropelledInformation.h" + +#endif /* _PersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h new file mode 100644 index 000000000..36813c02d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D-2.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Position3D_2_H_ +#define _Position3D_2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "Elevation2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_Position3D; + +/* Position3D-2 */ +typedef struct Position3D_2 { + Latitude_t lat; + Longitude_t Long; + Elevation2_t *elevation /* OPTIONAL */; + struct Reg_Position3D *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_2; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalPosition3D.h" + +#endif /* _Position3D_2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h new file mode 100644 index 000000000..81c200068 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Position3D.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Position3D_H_ +#define _Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "Elevation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D */ +typedef struct Position3D { + Latitude_t lat; + Longitude_t Long; + Elevation_t *elevation /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h new file mode 100644 index 000000000..4b10e2c66 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidence.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PositionConfidence_H_ +#define _PositionConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PositionConfidence { + PositionConfidence_unavailable = 0, + PositionConfidence_a500m = 1, + PositionConfidence_a200m = 2, + PositionConfidence_a100m = 3, + PositionConfidence_a50m = 4, + PositionConfidence_a20m = 5, + PositionConfidence_a10m = 6, + PositionConfidence_a5m = 7, + PositionConfidence_a2m = 8, + PositionConfidence_a1m = 9, + PositionConfidence_a50cm = 10, + PositionConfidence_a20cm = 11, + PositionConfidence_a10cm = 12, + PositionConfidence_a5cm = 13, + PositionConfidence_a2cm = 14, + PositionConfidence_a1cm = 15 +} e_PositionConfidence; + +/* PositionConfidence */ +typedef long PositionConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; +asn_struct_free_f PositionConfidence_free; +asn_struct_print_f PositionConfidence_print; +asn_constr_check_f PositionConfidence_constraint; +ber_type_decoder_f PositionConfidence_decode_ber; +der_type_encoder_f PositionConfidence_encode_der; +xer_type_decoder_f PositionConfidence_decode_xer; +xer_type_encoder_f PositionConfidence_encode_xer; +per_type_decoder_f PositionConfidence_decode_uper; +per_type_encoder_f PositionConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h new file mode 100644 index 000000000..f9fb59bda --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionConfidenceSet.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PositionConfidenceSet_H_ +#define _PositionConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionConfidenceSet */ +typedef OCTET_STRING_t PositionConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; +asn_struct_free_f PositionConfidenceSet_free; +asn_struct_print_f PositionConfidenceSet_print; +asn_constr_check_f PositionConfidenceSet_constraint; +ber_type_decoder_f PositionConfidenceSet_decode_ber; +der_type_encoder_f PositionConfidenceSet_encode_der; +xer_type_decoder_f PositionConfidenceSet_decode_xer; +xer_type_encoder_f PositionConfidenceSet_encode_xer; +per_type_decoder_f PositionConfidenceSet_decode_uper; +per_type_encoder_f PositionConfidenceSet_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h new file mode 100644 index 000000000..82535f84b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PositionalAccuracy.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PositionalAccuracy_H_ +#define _PositionalAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionalAccuracy */ +typedef OCTET_STRING_t PositionalAccuracy_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; +asn_struct_free_f PositionalAccuracy_free; +asn_struct_print_f PositionalAccuracy_print; +asn_constr_check_f PositionalAccuracy_constraint; +ber_type_decoder_f PositionalAccuracy_decode_ber; +der_type_encoder_f PositionalAccuracy_encode_der; +xer_type_decoder_f PositionalAccuracy_decode_xer; +xer_type_encoder_f PositionalAccuracy_encode_xer; +per_type_decoder_f PositionalAccuracy_decode_uper; +per_type_encoder_f PositionalAccuracy_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionalAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h new file mode 100644 index 000000000..f981b467a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PreemptPriorityList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PreemptPriorityList_H_ +#define _PreemptPriorityList_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 Reg_SignalControlZone; + +/* PreemptPriorityList */ +typedef struct PreemptPriorityList { + A_SEQUENCE_OF(struct Reg_SignalControlZone) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PreemptPriorityList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalSignalControlZone.h" + +#endif /* _PreemptPriorityList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h new file mode 100644 index 000000000..da9f1f29d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponse.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PrioritizationResponse_H_ +#define _PrioritizationResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "PrioritizationResponseStatus.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrioritizationResponse */ +typedef struct PrioritizationResponse { + StationID_t stationID; + PrioritizationResponseStatus_t priorState; + SignalGroupID_t signalGroup; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h new file mode 100644 index 000000000..5fb2b8785 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PrioritizationResponseList_H_ +#define _PrioritizationResponseList_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 PrioritizationResponse; + +/* PrioritizationResponseList */ +typedef struct PrioritizationResponseList { + A_SEQUENCE_OF(struct PrioritizationResponse) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponseList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponse.h" + +#endif /* _PrioritizationResponseList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h new file mode 100644 index 000000000..792abf872 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PrioritizationResponseStatus.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PrioritizationResponseStatus_H_ +#define _PrioritizationResponseStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrioritizationResponseStatus { + PrioritizationResponseStatus_unknown = 0, + PrioritizationResponseStatus_requested = 1, + PrioritizationResponseStatus_processing = 2, + PrioritizationResponseStatus_watchOtherTraffic = 3, + PrioritizationResponseStatus_granted = 4, + PrioritizationResponseStatus_rejected = 5, + PrioritizationResponseStatus_maxPresence = 6 +} e_PrioritizationResponseStatus; + +/* PrioritizationResponseStatus */ +typedef long PrioritizationResponseStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; +asn_struct_free_f PrioritizationResponseStatus_free; +asn_struct_print_f PrioritizationResponseStatus_print; +asn_constr_check_f PrioritizationResponseStatus_constraint; +ber_type_decoder_f PrioritizationResponseStatus_decode_ber; +der_type_encoder_f PrioritizationResponseStatus_encode_der; +xer_type_decoder_f PrioritizationResponseStatus_decode_xer; +xer_type_encoder_f PrioritizationResponseStatus_encode_xer; +per_type_decoder_f PrioritizationResponseStatus_decode_uper; +per_type_encoder_f PrioritizationResponseStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponseStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h new file mode 100644 index 000000000..f8aae68f0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Priority.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Priority_H_ +#define _Priority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Priority */ +typedef OCTET_STRING_t Priority_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Priority; +asn_struct_free_f Priority_free; +asn_struct_print_f Priority_print; +asn_constr_check_f Priority_constraint; +ber_type_decoder_f Priority_decode_ber; +der_type_encoder_f Priority_encode_der; +xer_type_decoder_f Priority_decode_xer; +xer_type_encoder_f Priority_encode_xer; +per_type_decoder_f Priority_decode_uper; +per_type_encoder_f Priority_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Priority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h new file mode 100644 index 000000000..1abaa8a40 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeDataManagement.h @@ -0,0 +1,101 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ProbeDataManagement_H_ +#define _ProbeDataManagement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "Sample.h" +#include "HeadingSlice.h" +#include "TxTime.h" +#include "Count.h" +#include "TermTime.h" +#include "TermDistance.h" +#include "constr_CHOICE.h" +#include "SnapshotTime.h" +#include "SnapshotDistance.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ProbeDataManagement__term_PR { + ProbeDataManagement__term_PR_NOTHING, /* No components present */ + ProbeDataManagement__term_PR_termtime, + ProbeDataManagement__term_PR_termDistance +} ProbeDataManagement__term_PR; +typedef enum ProbeDataManagement__snapshot_PR { + ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ + ProbeDataManagement__snapshot_PR_snapshotTime, + ProbeDataManagement__snapshot_PR_snapshotDistance +} ProbeDataManagement__snapshot_PR; + +/* Forward declarations */ +struct VehicleStatusRequest; + +/* ProbeDataManagement */ +typedef struct ProbeDataManagement { + DSRCmsgID_t msgID; + Sample_t sample; + HeadingSlice_t directions; + struct ProbeDataManagement__term { + ProbeDataManagement__term_PR present; + union ProbeDataManagement__term_u { + TermTime_t termtime; + TermDistance_t termDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } term; + struct ProbeDataManagement__snapshot { + ProbeDataManagement__snapshot_PR present; + union ProbeDataManagement__snapshot_u { + SnapshotTime_t snapshotTime; + SnapshotDistance_t snapshotDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshot; + TxTime_t txInterval; + Count_t cntTthreshold; + struct ProbeDataManagement__dataElements { + A_SEQUENCE_OF(struct VehicleStatusRequest) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } dataElements; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProbeDataManagement_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleStatusRequest.h" + +#endif /* _ProbeDataManagement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h new file mode 100644 index 000000000..f95890ecd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeSegmentNumber.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ProbeSegmentNumber_H_ +#define _ProbeSegmentNumber_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ProbeSegmentNumber */ +typedef long ProbeSegmentNumber_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; +asn_struct_free_f ProbeSegmentNumber_free; +asn_struct_print_f ProbeSegmentNumber_print; +asn_constr_check_f ProbeSegmentNumber_constraint; +ber_type_decoder_f ProbeSegmentNumber_decode_ber; +der_type_encoder_f ProbeSegmentNumber_encode_der; +xer_type_decoder_f ProbeSegmentNumber_decode_xer; +xer_type_encoder_f ProbeSegmentNumber_encode_xer; +per_type_decoder_f ProbeSegmentNumber_decode_uper; +per_type_encoder_f ProbeSegmentNumber_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeSegmentNumber_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h new file mode 100644 index 000000000..50aaa4f7f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ProbeVehicleData.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ProbeVehicleData_H_ +#define _ProbeVehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "ProbeSegmentNumber.h" +#include "FullPositionVector.h" +#include "VehicleType.h" +#include "Count.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleIdent; +struct Snapshot; + +/* ProbeVehicleData */ +typedef struct ProbeVehicleData { + DSRCmsgID_t msgID; + ProbeSegmentNumber_t *segNum /* OPTIONAL */; + struct VehicleIdent *probeID /* OPTIONAL */; + FullPositionVector_t startVector; + VehicleType_t vehicleType; + Count_t *cntSnapshots /* OPTIONAL */; + struct ProbeVehicleData__snapshots { + A_SEQUENCE_OF(struct Snapshot) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshots; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProbeVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleIdent.h" +#include "Snapshot.h" + +#endif /* _ProbeVehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h new file mode 100644 index 000000000..027dd375e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PropelledInformation.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PropelledInformation_H_ +#define _PropelledInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HumanPropelledType.h" +#include "AnimalPropelledType.h" +#include "MotorizedPropelledType.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PropelledInformation_PR { + PropelledInformation_PR_NOTHING, /* No components present */ + PropelledInformation_PR_human, + PropelledInformation_PR_animal, + PropelledInformation_PR_motor, + /* Extensions may appear below */ + +} PropelledInformation_PR; + +/* PropelledInformation */ +typedef struct PropelledInformation { + PropelledInformation_PR present; + union PropelledInformation_u { + HumanPropelledType_t human; + AnimalPropelledType_t animal; + MotorizedPropelledType_t motor; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PropelledInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; + +#ifdef __cplusplus +} +#endif + +#endif /* _PropelledInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h new file mode 100644 index 000000000..07a403708 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyAndRoadWorkerActivity.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PublicSafetyAndRoadWorkerActivity_H_ +#define _PublicSafetyAndRoadWorkerActivity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyAndRoadWorkerActivity { + PublicSafetyAndRoadWorkerActivity_unavailable = 0, + PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, + PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, + PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, + PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, + PublicSafetyAndRoadWorkerActivity_otherActivities = 5 +} e_PublicSafetyAndRoadWorkerActivity; + +/* PublicSafetyAndRoadWorkerActivity */ +typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; +asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; +asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; +asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; +ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; +der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; +xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; +xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h new file mode 100644 index 000000000..0d2d880a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyDirectingTrafficSubType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PublicSafetyDirectingTrafficSubType_H_ +#define _PublicSafetyDirectingTrafficSubType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyDirectingTrafficSubType { + PublicSafetyDirectingTrafficSubType_unavailable = 0, + PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, + PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, + PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, + PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, + PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, + PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 +} e_PublicSafetyDirectingTrafficSubType; + +/* PublicSafetyDirectingTrafficSubType */ +typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; +asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; +asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; +asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; +ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; +der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; +xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; +xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h new file mode 100644 index 000000000..d5660dc4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/PublicSafetyEventResponderWorkerType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _PublicSafetyEventResponderWorkerType_H_ +#define _PublicSafetyEventResponderWorkerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyEventResponderWorkerType { + PublicSafetyEventResponderWorkerType_unavailable = 0, + PublicSafetyEventResponderWorkerType_towOperater = 1, + PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, + PublicSafetyEventResponderWorkerType_aDOTWorker = 3, + PublicSafetyEventResponderWorkerType_lawEnforcement = 4, + PublicSafetyEventResponderWorkerType_hazmatResponder = 5, + PublicSafetyEventResponderWorkerType_animalControlWorker = 6, + PublicSafetyEventResponderWorkerType_otherPersonnel = 7 + /* + * Enumeration is extensible + */ +} e_PublicSafetyEventResponderWorkerType; + +/* PublicSafetyEventResponderWorkerType */ +typedef long PublicSafetyEventResponderWorkerType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; +asn_struct_free_f PublicSafetyEventResponderWorkerType_free; +asn_struct_print_f PublicSafetyEventResponderWorkerType_print; +asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; +ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; +der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; +xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; +xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyEventResponderWorkerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h new file mode 100644 index 000000000..c9a253fe7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Corrections.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCM_Corrections_H_ +#define _RTCM_Corrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "RTCM-Revision.h" +#include "RTCMHeader.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct RTCMmsg; + +/* RTCM-Corrections */ +typedef struct RTCM_Corrections { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + RTCM_Revision_t rev; + struct FullPositionVector *anchorPoint /* OPTIONAL */; + RTCMHeader_t rtcmHeader; + struct RTCM_Corrections__rtcmSets { + A_SEQUENCE_OF(struct RTCMmsg) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } rtcmSets; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCM_Corrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Corrections; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "RTCMmsg.h" + +#endif /* _RTCM_Corrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h new file mode 100644 index 000000000..4e39c4a63 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-ID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCM_ID_H_ +#define _RTCM_ID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCM-ID */ +typedef long RTCM_ID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCM_ID; +asn_struct_free_f RTCM_ID_free; +asn_struct_print_f RTCM_ID_print; +asn_constr_check_f RTCM_ID_constraint; +ber_type_decoder_f RTCM_ID_decode_ber; +der_type_encoder_f RTCM_ID_encode_der; +xer_type_decoder_f RTCM_ID_decode_xer; +xer_type_encoder_f RTCM_ID_encode_xer; +per_type_decoder_f RTCM_ID_decode_uper; +per_type_encoder_f RTCM_ID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_ID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h new file mode 100644 index 000000000..7df2b9c8b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Payload.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCM_Payload_H_ +#define _RTCM_Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCM-Payload */ +typedef OCTET_STRING_t RTCM_Payload_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Payload; +asn_struct_free_f RTCM_Payload_free; +asn_struct_print_f RTCM_Payload_print; +asn_constr_check_f RTCM_Payload_constraint; +ber_type_decoder_f RTCM_Payload_decode_ber; +der_type_encoder_f RTCM_Payload_encode_der; +xer_type_decoder_f RTCM_Payload_decode_xer; +xer_type_encoder_f RTCM_Payload_encode_xer; +per_type_decoder_f RTCM_Payload_decode_uper; +per_type_encoder_f RTCM_Payload_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h new file mode 100644 index 000000000..6789b4569 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCM-Revision.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCM_Revision_H_ +#define _RTCM_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RTCM_Revision { + RTCM_Revision_unknown = 0, + RTCM_Revision_reserved = 1, + RTCM_Revision_rtcmCMR = 2, + RTCM_Revision_rtcmCMR_Plus = 3, + RTCM_Revision_rtcmSAPOS = 4, + RTCM_Revision_rtcmSAPOS_Adv = 5, + RTCM_Revision_rtcmRTCA = 6, + RTCM_Revision_rtcmRAW = 7, + RTCM_Revision_rtcmRINEX = 8, + RTCM_Revision_rtcmSP3 = 9, + RTCM_Revision_rtcmBINEX = 10, + RTCM_Revision_rtcmRev2_x = 19, + RTCM_Revision_rtcmRev2_0 = 20, + RTCM_Revision_rtcmRev2_1 = 21, + RTCM_Revision_rtcmRev2_3 = 23, + RTCM_Revision_rtcmRev3_0 = 30, + RTCM_Revision_rtcmRev3_1 = 31 + /* + * Enumeration is extensible + */ +} e_RTCM_Revision; + +/* RTCM-Revision */ +typedef long RTCM_Revision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; +asn_struct_free_f RTCM_Revision_free; +asn_struct_print_f RTCM_Revision_print; +asn_constr_check_f RTCM_Revision_constraint; +ber_type_decoder_f RTCM_Revision_decode_ber; +der_type_encoder_f RTCM_Revision_encode_der; +xer_type_decoder_f RTCM_Revision_decode_xer; +xer_type_encoder_f RTCM_Revision_encode_xer; +per_type_decoder_f RTCM_Revision_decode_uper; +per_type_encoder_f RTCM_Revision_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h new file mode 100644 index 000000000..da2ae37da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMHeader.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCMHeader_H_ +#define _RTCMHeader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMHeader */ +typedef OCTET_STRING_t RTCMHeader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMHeader; +asn_struct_free_f RTCMHeader_free; +asn_struct_print_f RTCMHeader_print; +asn_constr_check_f RTCMHeader_constraint; +ber_type_decoder_f RTCMHeader_decode_ber; +der_type_encoder_f RTCMHeader_encode_der; +xer_type_decoder_f RTCMHeader_decode_xer; +xer_type_encoder_f RTCMHeader_encode_xer; +per_type_decoder_f RTCMHeader_decode_uper; +per_type_encoder_f RTCMHeader_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMHeader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h new file mode 100644 index 000000000..96c86bfe6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMPackage.h @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCMPackage_H_ +#define _RTCMPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMHeader.h" +#include "OCTET_STRING.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; + +/* RTCMPackage */ +typedef struct RTCMPackage { + struct FullPositionVector *anchorPoint /* OPTIONAL */; + RTCMHeader_t rtcmHeader; + OCTET_STRING_t *msg1001 /* OPTIONAL */; + OCTET_STRING_t *msg1002 /* OPTIONAL */; + OCTET_STRING_t *msg1003 /* OPTIONAL */; + OCTET_STRING_t *msg1004 /* OPTIONAL */; + OCTET_STRING_t *msg1005 /* OPTIONAL */; + OCTET_STRING_t *msg1006 /* OPTIONAL */; + OCTET_STRING_t *msg1007 /* OPTIONAL */; + OCTET_STRING_t *msg1008 /* OPTIONAL */; + OCTET_STRING_t *msg1009 /* OPTIONAL */; + OCTET_STRING_t *msg1010 /* OPTIONAL */; + OCTET_STRING_t *msg1011 /* OPTIONAL */; + OCTET_STRING_t *msg1012 /* OPTIONAL */; + OCTET_STRING_t *msg1013 /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + OCTET_STRING_t *msg1014 /* OPTIONAL */; + OCTET_STRING_t *msg1015 /* OPTIONAL */; + OCTET_STRING_t *msg1016 /* OPTIONAL */; + OCTET_STRING_t *msg1017 /* OPTIONAL */; + OCTET_STRING_t *msg1019 /* OPTIONAL */; + OCTET_STRING_t *msg1020 /* OPTIONAL */; + OCTET_STRING_t *msg1021 /* OPTIONAL */; + OCTET_STRING_t *msg1022 /* OPTIONAL */; + OCTET_STRING_t *msg1023 /* OPTIONAL */; + OCTET_STRING_t *msg1024 /* OPTIONAL */; + OCTET_STRING_t *msg1025 /* OPTIONAL */; + OCTET_STRING_t *msg1026 /* OPTIONAL */; + OCTET_STRING_t *msg1027 /* OPTIONAL */; + OCTET_STRING_t *msg1029 /* OPTIONAL */; + OCTET_STRING_t *msg1030 /* OPTIONAL */; + OCTET_STRING_t *msg1031 /* OPTIONAL */; + OCTET_STRING_t *msg1032 /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" + +#endif /* _RTCMPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h new file mode 100644 index 000000000..5cb5ebd5b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RTCMmsg.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RTCMmsg_H_ +#define _RTCMmsg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCM-Revision.h" +#include "RTCM-ID.h" +#include "RTCM-Payload.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmsg */ +typedef struct RTCMmsg { + RTCM_Revision_t *rev /* OPTIONAL */; + RTCM_ID_t *rtcmID /* OPTIONAL */; + RTCM_Payload_t payload; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMmsg_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMmsg; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmsg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h new file mode 100644 index 000000000..30f12caca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RainSensor.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RainSensor_H_ +#define _RainSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RainSensor { + RainSensor_none = 0, + RainSensor_lightMist = 1, + RainSensor_heavyMist = 2, + RainSensor_lightRainOrDrizzle = 3, + RainSensor_rain = 4, + RainSensor_moderateRain = 5, + RainSensor_heavyRain = 6, + RainSensor_heavyDownpour = 7 +} e_RainSensor; + +/* RainSensor */ +typedef long RainSensor_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RainSensor; +asn_struct_free_f RainSensor_free; +asn_struct_print_f RainSensor_print; +asn_constr_check_f RainSensor_constraint; +ber_type_decoder_f RainSensor_decode_ber; +der_type_encoder_f RainSensor_encode_der; +xer_type_decoder_f RainSensor_decode_xer; +xer_type_encoder_f RainSensor_encode_xer; +per_type_decoder_f RainSensor_decode_uper; +per_type_encoder_f RainSensor_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RainSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h new file mode 100644 index 000000000..3b83921c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-AdvisorySpeed.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_AdvisorySpeed_H_ +#define _Reg_AdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-AdvisorySpeed */ +typedef struct Reg_AdvisorySpeed { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_AdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_AdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h new file mode 100644 index 000000000..00c0143a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ComputedLane.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_ComputedLane_H_ +#define _Reg_ComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-ComputedLane */ +typedef struct Reg_ComputedLane { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_ComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h new file mode 100644 index 000000000..7efbb6987 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-ConnectionManeuverAssist.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_ConnectionManeuverAssist_H_ +#define _Reg_ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-ConnectionManeuverAssist */ +typedef struct Reg_ConnectionManeuverAssist { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h new file mode 100644 index 000000000..eaecb4fd0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-GenericLane.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_GenericLane_H_ +#define _Reg_GenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-GenericLane */ +typedef struct Reg_GenericLane { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_GenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_GenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h new file mode 100644 index 000000000..4f28c1957 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Intersection.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_Intersection_H_ +#define _Reg_Intersection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-Intersection */ +typedef struct Reg_Intersection { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_Intersection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_Intersection; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_Intersection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h new file mode 100644 index 000000000..d726a30bc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-IntersectionState.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_IntersectionState_H_ +#define _Reg_IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-IntersectionState */ +typedef struct Reg_IntersectionState { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h new file mode 100644 index 000000000..83d03c69a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneAttributes.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_LaneAttributes_H_ +#define _Reg_LaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-LaneAttributes */ +typedef struct Reg_LaneAttributes { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_LaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h new file mode 100644 index 000000000..2bbcd69a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-LaneDataAttribute.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_LaneDataAttribute_H_ +#define _Reg_LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-LaneDataAttribute */ +typedef struct Reg_LaneDataAttribute { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h new file mode 100644 index 000000000..d2270fee9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MapData.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_MapData_H_ +#define _Reg_MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-MapData */ +typedef struct Reg_MapData { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_MapData; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h new file mode 100644 index 000000000..aa4cd20c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementEvent.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_MovementEvent_H_ +#define _Reg_MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-MovementEvent */ +typedef struct Reg_MovementEvent { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h new file mode 100644 index 000000000..09337ef28 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-MovementState.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_MovementState_H_ +#define _Reg_MovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-MovementState */ +typedef struct Reg_MovementState { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_MovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_MovementState; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_MovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h new file mode 100644 index 000000000..a0ea5d0a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeAttribute.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_NodeAttribute_H_ +#define _Reg_NodeAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-NodeAttribute */ +typedef struct Reg_NodeAttribute { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttribute; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_NodeAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h new file mode 100644 index 000000000..c832f9801 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-NodeOffsetPoint.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_NodeOffsetPoint_H_ +#define _Reg_NodeOffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-NodeOffsetPoint */ +typedef struct Reg_NodeOffsetPoint { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_NodeOffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPoint; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_NodeOffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h new file mode 100644 index 000000000..b78df158e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalMobilityMessage.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#ifndef _Reg_PersonalMobilityMessage_H_ +#define _Reg_PersonalMobilityMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-PersonalMobilityMessage */ +typedef struct Reg_PersonalMobilityMessage { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_PersonalMobilityMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalMobilityMessage; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_PersonalMobilityMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h new file mode 100644 index 000000000..3d67ac89f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-PersonalSafetyMessage.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _Reg_PersonalSafetyMessage_H_ +#define _Reg_PersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-PersonalSafetyMessage */ +typedef struct Reg_PersonalSafetyMessage { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_PersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_PersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h new file mode 100644 index 000000000..bec1c00b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-Position3D.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_Position3D_H_ +#define _Reg_Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-Position3D */ +typedef struct Reg_Position3D { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_Position3D; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h new file mode 100644 index 000000000..622820163 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RestrictionUserType.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_RestrictionUserType_H_ +#define _Reg_RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-RestrictionUserType */ +typedef struct Reg_RestrictionUserType { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h new file mode 100644 index 000000000..671690cda --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-RoadSegment.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_RoadSegment_H_ +#define _Reg_RoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-RoadSegment */ +typedef struct Reg_RoadSegment { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_RoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_RoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h new file mode 100644 index 000000000..7ceb73c08 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SPAT.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_SPAT_H_ +#define _Reg_SPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-SPAT */ +typedef struct Reg_SPAT { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_SPAT; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_SPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h new file mode 100644 index 000000000..27bdcfd07 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Reg-SignalControlZone.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Reg_SignalControlZone_H_ +#define _Reg_SignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Reg-SignalControlZone */ +typedef struct Reg_SignalControlZone { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_SignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone; + +#ifdef __cplusplus +} +#endif + +#endif /* _Reg_SignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h new file mode 100644 index 000000000..a843737c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionList_H_ +#define _RegionList_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 RegionOffsets; + +/* RegionList */ +typedef struct RegionList { + A_SEQUENCE_OF(struct RegionOffsets) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionOffsets.h" + +#endif /* _RegionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h new file mode 100644 index 000000000..9e1e490b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionOffsets.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionOffsets_H_ +#define _RegionOffsets_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionOffsets */ +typedef struct RegionOffsets { + long xOffset; + long yOffset; + long *zOffset /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionOffsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h new file mode 100644 index 000000000..6da053198 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionPointSet.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionPointSet_H_ +#define _RegionPointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* RegionPointSet */ +typedef struct RegionPointSet { + struct Position3D *anchor /* OPTIONAL */; + RegionList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionPointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _RegionPointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h new file mode 100644 index 000000000..76c01b94e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalAdvisorySpeed.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalAdvisorySpeed_H_ +#define _RegionalAdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-AdvisorySpeed.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalAdvisorySpeed */ +typedef Reg_AdvisorySpeed_t RegionalAdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalAdvisorySpeed; +asn_struct_free_f RegionalAdvisorySpeed_free; +asn_struct_print_f RegionalAdvisorySpeed_print; +asn_constr_check_f RegionalAdvisorySpeed_constraint; +ber_type_decoder_f RegionalAdvisorySpeed_decode_ber; +der_type_encoder_f RegionalAdvisorySpeed_encode_der; +xer_type_decoder_f RegionalAdvisorySpeed_decode_xer; +xer_type_encoder_f RegionalAdvisorySpeed_encode_xer; +per_type_decoder_f RegionalAdvisorySpeed_decode_uper; +per_type_encoder_f RegionalAdvisorySpeed_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalAdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h new file mode 100644 index 000000000..1f2bc8e20 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalComputedLane.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalComputedLane_H_ +#define _RegionalComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-ComputedLane.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalComputedLane */ +typedef Reg_ComputedLane_t RegionalComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalComputedLane; +asn_struct_free_f RegionalComputedLane_free; +asn_struct_print_f RegionalComputedLane_print; +asn_constr_check_f RegionalComputedLane_constraint; +ber_type_decoder_f RegionalComputedLane_decode_ber; +der_type_encoder_f RegionalComputedLane_encode_der; +xer_type_decoder_f RegionalComputedLane_decode_xer; +xer_type_encoder_f RegionalComputedLane_encode_xer; +per_type_decoder_f RegionalComputedLane_decode_uper; +per_type_encoder_f RegionalComputedLane_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h new file mode 100644 index 000000000..50929d583 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalConnectionManeuverAssist.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalConnectionManeuverAssist_H_ +#define _RegionalConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-ConnectionManeuverAssist.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalConnectionManeuverAssist */ +typedef Reg_ConnectionManeuverAssist_t RegionalConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalConnectionManeuverAssist; +asn_struct_free_f RegionalConnectionManeuverAssist_free; +asn_struct_print_f RegionalConnectionManeuverAssist_print; +asn_constr_check_f RegionalConnectionManeuverAssist_constraint; +ber_type_decoder_f RegionalConnectionManeuverAssist_decode_ber; +der_type_encoder_f RegionalConnectionManeuverAssist_encode_der; +xer_type_decoder_f RegionalConnectionManeuverAssist_decode_xer; +xer_type_encoder_f RegionalConnectionManeuverAssist_encode_xer; +per_type_decoder_f RegionalConnectionManeuverAssist_decode_uper; +per_type_encoder_f RegionalConnectionManeuverAssist_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h new file mode 100644 index 000000000..b3326b035 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalGenericLane.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalGenericLane_H_ +#define _RegionalGenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-GenericLane.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalGenericLane */ +typedef Reg_GenericLane_t RegionalGenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalGenericLane; +asn_struct_free_f RegionalGenericLane_free; +asn_struct_print_f RegionalGenericLane_print; +asn_constr_check_f RegionalGenericLane_constraint; +ber_type_decoder_f RegionalGenericLane_decode_ber; +der_type_encoder_f RegionalGenericLane_encode_der; +xer_type_decoder_f RegionalGenericLane_decode_xer; +xer_type_encoder_f RegionalGenericLane_encode_xer; +per_type_decoder_f RegionalGenericLane_decode_uper; +per_type_encoder_f RegionalGenericLane_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalGenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h new file mode 100644 index 000000000..949f0c664 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersection.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalIntersection_H_ +#define _RegionalIntersection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-Intersection.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalIntersection */ +typedef Reg_Intersection_t RegionalIntersection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalIntersection; +asn_struct_free_f RegionalIntersection_free; +asn_struct_print_f RegionalIntersection_print; +asn_constr_check_f RegionalIntersection_constraint; +ber_type_decoder_f RegionalIntersection_decode_ber; +der_type_encoder_f RegionalIntersection_encode_der; +xer_type_decoder_f RegionalIntersection_decode_xer; +xer_type_encoder_f RegionalIntersection_encode_xer; +per_type_decoder_f RegionalIntersection_decode_uper; +per_type_encoder_f RegionalIntersection_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalIntersection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h new file mode 100644 index 000000000..f132669c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalIntersectionState.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalIntersectionState_H_ +#define _RegionalIntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-IntersectionState.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalIntersectionState */ +typedef Reg_IntersectionState_t RegionalIntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalIntersectionState; +asn_struct_free_f RegionalIntersectionState_free; +asn_struct_print_f RegionalIntersectionState_print; +asn_constr_check_f RegionalIntersectionState_constraint; +ber_type_decoder_f RegionalIntersectionState_decode_ber; +der_type_encoder_f RegionalIntersectionState_encode_der; +xer_type_decoder_f RegionalIntersectionState_decode_xer; +xer_type_encoder_f RegionalIntersectionState_encode_xer; +per_type_decoder_f RegionalIntersectionState_decode_uper; +per_type_encoder_f RegionalIntersectionState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalIntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h new file mode 100644 index 000000000..770ca0e15 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneAttributes.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalLaneAttributes_H_ +#define _RegionalLaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-LaneAttributes.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalLaneAttributes */ +typedef Reg_LaneAttributes_t RegionalLaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalLaneAttributes; +asn_struct_free_f RegionalLaneAttributes_free; +asn_struct_print_f RegionalLaneAttributes_print; +asn_constr_check_f RegionalLaneAttributes_constraint; +ber_type_decoder_f RegionalLaneAttributes_decode_ber; +der_type_encoder_f RegionalLaneAttributes_encode_der; +xer_type_decoder_f RegionalLaneAttributes_decode_xer; +xer_type_encoder_f RegionalLaneAttributes_encode_xer; +per_type_decoder_f RegionalLaneAttributes_decode_uper; +per_type_encoder_f RegionalLaneAttributes_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalLaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h new file mode 100644 index 000000000..7eeb13c44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalLaneDataAttribute.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalLaneDataAttribute_H_ +#define _RegionalLaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-LaneDataAttribute.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalLaneDataAttribute */ +typedef Reg_LaneDataAttribute_t RegionalLaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalLaneDataAttribute; +asn_struct_free_f RegionalLaneDataAttribute_free; +asn_struct_print_f RegionalLaneDataAttribute_print; +asn_constr_check_f RegionalLaneDataAttribute_constraint; +ber_type_decoder_f RegionalLaneDataAttribute_decode_ber; +der_type_encoder_f RegionalLaneDataAttribute_encode_der; +xer_type_decoder_f RegionalLaneDataAttribute_decode_xer; +xer_type_encoder_f RegionalLaneDataAttribute_encode_xer; +per_type_decoder_f RegionalLaneDataAttribute_decode_uper; +per_type_encoder_f RegionalLaneDataAttribute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalLaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h new file mode 100644 index 000000000..d43194542 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMapData.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalMapData_H_ +#define _RegionalMapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-MapData.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalMapData */ +typedef Reg_MapData_t RegionalMapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalMapData; +asn_struct_free_f RegionalMapData_free; +asn_struct_print_f RegionalMapData_print; +asn_constr_check_f RegionalMapData_constraint; +ber_type_decoder_f RegionalMapData_decode_ber; +der_type_encoder_f RegionalMapData_encode_der; +xer_type_decoder_f RegionalMapData_decode_xer; +xer_type_encoder_f RegionalMapData_encode_xer; +per_type_decoder_f RegionalMapData_decode_uper; +per_type_encoder_f RegionalMapData_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalMapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h new file mode 100644 index 000000000..75bc822e7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementEvent.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalMovementEvent_H_ +#define _RegionalMovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-MovementEvent.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalMovementEvent */ +typedef Reg_MovementEvent_t RegionalMovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalMovementEvent; +asn_struct_free_f RegionalMovementEvent_free; +asn_struct_print_f RegionalMovementEvent_print; +asn_constr_check_f RegionalMovementEvent_constraint; +ber_type_decoder_f RegionalMovementEvent_decode_ber; +der_type_encoder_f RegionalMovementEvent_encode_der; +xer_type_decoder_f RegionalMovementEvent_decode_xer; +xer_type_encoder_f RegionalMovementEvent_encode_xer; +per_type_decoder_f RegionalMovementEvent_decode_uper; +per_type_encoder_f RegionalMovementEvent_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalMovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h new file mode 100644 index 000000000..5a52492ea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalMovementState.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalMovementState_H_ +#define _RegionalMovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-MovementState.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalMovementState */ +typedef Reg_MovementState_t RegionalMovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalMovementState; +asn_struct_free_f RegionalMovementState_free; +asn_struct_print_f RegionalMovementState_print; +asn_constr_check_f RegionalMovementState_constraint; +ber_type_decoder_f RegionalMovementState_decode_ber; +der_type_encoder_f RegionalMovementState_encode_der; +xer_type_decoder_f RegionalMovementState_decode_xer; +xer_type_encoder_f RegionalMovementState_encode_xer; +per_type_decoder_f RegionalMovementState_decode_uper; +per_type_encoder_f RegionalMovementState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalMovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h new file mode 100644 index 000000000..3fb2c2087 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttribute.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalNodeAttribute_H_ +#define _RegionalNodeAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-NodeAttribute.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalNodeAttribute */ +typedef Reg_NodeAttribute_t RegionalNodeAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttribute; +asn_struct_free_f RegionalNodeAttribute_free; +asn_struct_print_f RegionalNodeAttribute_print; +asn_constr_check_f RegionalNodeAttribute_constraint; +ber_type_decoder_f RegionalNodeAttribute_decode_ber; +der_type_encoder_f RegionalNodeAttribute_encode_der; +xer_type_decoder_f RegionalNodeAttribute_decode_xer; +xer_type_encoder_f RegionalNodeAttribute_encode_xer; +per_type_decoder_f RegionalNodeAttribute_decode_uper; +per_type_encoder_f RegionalNodeAttribute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalNodeAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h new file mode 100644 index 000000000..036708ce0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeAttributeList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalNodeAttributeList_H_ +#define _RegionalNodeAttributeList_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 Reg_NodeAttribute; + +/* RegionalNodeAttributeList */ +typedef struct RegionalNodeAttributeList { + A_SEQUENCE_OF(struct Reg_NodeAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionalNodeAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttributeList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalNodeAttribute.h" + +#endif /* _RegionalNodeAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h new file mode 100644 index 000000000..809882cbf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalNodeOffsetPoint.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalNodeOffsetPoint_H_ +#define _RegionalNodeOffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-NodeOffsetPoint.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalNodeOffsetPoint */ +typedef Reg_NodeOffsetPoint_t RegionalNodeOffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalNodeOffsetPoint; +asn_struct_free_f RegionalNodeOffsetPoint_free; +asn_struct_print_f RegionalNodeOffsetPoint_print; +asn_constr_check_f RegionalNodeOffsetPoint_constraint; +ber_type_decoder_f RegionalNodeOffsetPoint_decode_ber; +der_type_encoder_f RegionalNodeOffsetPoint_encode_der; +xer_type_decoder_f RegionalNodeOffsetPoint_decode_xer; +xer_type_encoder_f RegionalNodeOffsetPoint_encode_xer; +per_type_decoder_f RegionalNodeOffsetPoint_decode_uper; +per_type_encoder_f RegionalNodeOffsetPoint_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalNodeOffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h new file mode 100644 index 000000000..e9f9e5c97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalMobilityMessage.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#ifndef _RegionalPersonalMobilityMessage_H_ +#define _RegionalPersonalMobilityMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-PersonalMobilityMessage.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalPersonalMobilityMessage */ +typedef Reg_PersonalMobilityMessage_t RegionalPersonalMobilityMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalPersonalMobilityMessage; +asn_struct_free_f RegionalPersonalMobilityMessage_free; +asn_struct_print_f RegionalPersonalMobilityMessage_print; +asn_constr_check_f RegionalPersonalMobilityMessage_constraint; +ber_type_decoder_f RegionalPersonalMobilityMessage_decode_ber; +der_type_encoder_f RegionalPersonalMobilityMessage_encode_der; +xer_type_decoder_f RegionalPersonalMobilityMessage_decode_xer; +xer_type_encoder_f RegionalPersonalMobilityMessage_encode_xer; +per_type_decoder_f RegionalPersonalMobilityMessage_decode_uper; +per_type_encoder_f RegionalPersonalMobilityMessage_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalPersonalMobilityMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h new file mode 100644 index 000000000..552d92821 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPersonalSafetyMessage.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _RegionalPersonalSafetyMessage_H_ +#define _RegionalPersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-PersonalSafetyMessage.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalPersonalSafetyMessage */ +typedef Reg_PersonalSafetyMessage_t RegionalPersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalPersonalSafetyMessage; +asn_struct_free_f RegionalPersonalSafetyMessage_free; +asn_struct_print_f RegionalPersonalSafetyMessage_print; +asn_constr_check_f RegionalPersonalSafetyMessage_constraint; +ber_type_decoder_f RegionalPersonalSafetyMessage_decode_ber; +der_type_encoder_f RegionalPersonalSafetyMessage_encode_der; +xer_type_decoder_f RegionalPersonalSafetyMessage_decode_xer; +xer_type_encoder_f RegionalPersonalSafetyMessage_encode_xer; +per_type_decoder_f RegionalPersonalSafetyMessage_decode_uper; +per_type_encoder_f RegionalPersonalSafetyMessage_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalPersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h new file mode 100644 index 000000000..cb236016a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalPosition3D.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalPosition3D_H_ +#define _RegionalPosition3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-Position3D.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalPosition3D */ +typedef Reg_Position3D_t RegionalPosition3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalPosition3D; +asn_struct_free_f RegionalPosition3D_free; +asn_struct_print_f RegionalPosition3D_print; +asn_constr_check_f RegionalPosition3D_constraint; +ber_type_decoder_f RegionalPosition3D_decode_ber; +der_type_encoder_f RegionalPosition3D_encode_der; +xer_type_decoder_f RegionalPosition3D_decode_xer; +xer_type_encoder_f RegionalPosition3D_encode_xer; +per_type_decoder_f RegionalPosition3D_decode_uper; +per_type_encoder_f RegionalPosition3D_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalPosition3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h new file mode 100644 index 000000000..3cacb95bd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRestrictionUserType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalRestrictionUserType_H_ +#define _RegionalRestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-RestrictionUserType.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalRestrictionUserType */ +typedef Reg_RestrictionUserType_t RegionalRestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalRestrictionUserType; +asn_struct_free_f RegionalRestrictionUserType_free; +asn_struct_print_f RegionalRestrictionUserType_print; +asn_constr_check_f RegionalRestrictionUserType_constraint; +ber_type_decoder_f RegionalRestrictionUserType_decode_ber; +der_type_encoder_f RegionalRestrictionUserType_encode_der; +xer_type_decoder_f RegionalRestrictionUserType_decode_xer; +xer_type_encoder_f RegionalRestrictionUserType_encode_xer; +per_type_decoder_f RegionalRestrictionUserType_decode_uper; +per_type_encoder_f RegionalRestrictionUserType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalRestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h new file mode 100644 index 000000000..76f6e295e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalRoadSegment.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalRoadSegment_H_ +#define _RegionalRoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-RoadSegment.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalRoadSegment */ +typedef Reg_RoadSegment_t RegionalRoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalRoadSegment; +asn_struct_free_f RegionalRoadSegment_free; +asn_struct_print_f RegionalRoadSegment_print; +asn_constr_check_f RegionalRoadSegment_constraint; +ber_type_decoder_f RegionalRoadSegment_decode_ber; +der_type_encoder_f RegionalRoadSegment_encode_der; +xer_type_decoder_f RegionalRoadSegment_decode_xer; +xer_type_encoder_f RegionalRoadSegment_encode_xer; +per_type_decoder_f RegionalRoadSegment_decode_uper; +per_type_encoder_f RegionalRoadSegment_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalRoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h new file mode 100644 index 000000000..deb8fd264 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSPAT.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalSPAT_H_ +#define _RegionalSPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-SPAT.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalSPAT */ +typedef Reg_SPAT_t RegionalSPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalSPAT; +asn_struct_free_f RegionalSPAT_free; +asn_struct_print_f RegionalSPAT_print; +asn_constr_check_f RegionalSPAT_constraint; +ber_type_decoder_f RegionalSPAT_decode_ber; +der_type_encoder_f RegionalSPAT_encode_der; +xer_type_decoder_f RegionalSPAT_decode_xer; +xer_type_encoder_f RegionalSPAT_encode_xer; +per_type_decoder_f RegionalSPAT_decode_uper; +per_type_encoder_f RegionalSPAT_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalSPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h new file mode 100644 index 000000000..ea78a47cc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegionalSignalControlZone.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegionalSignalControlZone_H_ +#define _RegionalSignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Reg-SignalControlZone.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionalSignalControlZone */ +typedef Reg_SignalControlZone_t RegionalSignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionalSignalControlZone; +asn_struct_free_f RegionalSignalControlZone_free; +asn_struct_print_f RegionalSignalControlZone_print; +asn_constr_check_f RegionalSignalControlZone_constraint; +ber_type_decoder_f RegionalSignalControlZone_decode_ber; +der_type_encoder_f RegionalSignalControlZone_encode_der; +xer_type_decoder_f RegionalSignalControlZone_decode_xer; +xer_type_encoder_f RegionalSignalControlZone_encode_xer; +per_type_decoder_f RegionalSignalControlZone_decode_uper; +per_type_encoder_f RegionalSignalControlZone_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalSignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h new file mode 100644 index 000000000..25c8c5c19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RegulatorySpeedLimit.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RegulatorySpeedLimit_H_ +#define _RegulatorySpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedLimitType.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegulatorySpeedLimit */ +typedef struct RegulatorySpeedLimit { + SpeedLimitType_t type; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegulatorySpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegulatorySpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h new file mode 100644 index 000000000..d730ce154 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#ifndef _RequestID_H_ +#define _RequestID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestID */ +typedef long RequestID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestID; +asn_struct_free_f RequestID_free; +asn_struct_print_f RequestID_print; +asn_constr_check_f RequestID_constraint; +ber_type_decoder_f RequestID_decode_ber; +der_type_encoder_f RequestID_encode_der; +xer_type_decoder_f RequestID_decode_xer; +xer_type_encoder_f RequestID_encode_xer; +per_type_decoder_f RequestID_decode_uper; +per_type_encoder_f RequestID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h new file mode 100644 index 000000000..669e75a5e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RequestedItem.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RequestedItem_H_ +#define _RequestedItem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestedItem { + RequestedItem_reserved = 0, + RequestedItem_itemA = 1, + RequestedItem_itemB = 2, + RequestedItem_itemC = 3, + RequestedItem_itemD = 4, + RequestedItem_itemE = 5, + RequestedItem_itemF = 6, + RequestedItem_itemG = 7, + RequestedItem_itemH = 8, + RequestedItem_itemI = 9, + RequestedItem_itemJ = 10, + RequestedItem_itemK = 11, + RequestedItem_itemL = 12, + RequestedItem_itemM = 13, + RequestedItem_itemN = 14, + RequestedItem_itemO = 15, + RequestedItem_itemP = 16, + RequestedItem_itemQ = 17 + /* + * Enumeration is extensible + */ +} e_RequestedItem; + +/* RequestedItem */ +typedef long RequestedItem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; +asn_struct_free_f RequestedItem_free; +asn_struct_print_f RequestedItem_print; +asn_constr_check_f RequestedItem_constraint; +ber_type_decoder_f RequestedItem_decode_ber; +der_type_encoder_f RequestedItem_encode_der; +xer_type_decoder_f RequestedItem_decode_xer; +xer_type_encoder_f RequestedItem_encode_xer; +per_type_decoder_f RequestedItem_decode_uper; +per_type_encoder_f RequestedItem_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h new file mode 100644 index 000000000..2806b5e0d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponderGroupAffected.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ResponderGroupAffected_H_ +#define _ResponderGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponderGroupAffected { + ResponderGroupAffected_emergency_vehicle_units = 9729, + ResponderGroupAffected_federal_law_enforcement_units = 9730, + ResponderGroupAffected_state_police_units = 9731, + ResponderGroupAffected_county_police_units = 9732, + ResponderGroupAffected_local_police_units = 9733, + ResponderGroupAffected_ambulance_units = 9734, + ResponderGroupAffected_rescue_units = 9735, + ResponderGroupAffected_fire_units = 9736, + ResponderGroupAffected_hAZMAT_units = 9737, + ResponderGroupAffected_light_tow_unit = 9738, + ResponderGroupAffected_heavy_tow_unit = 9739, + ResponderGroupAffected_freeway_service_patrols = 9740, + ResponderGroupAffected_transportation_response_units = 9741, + ResponderGroupAffected_private_contractor_response_units = 9742 + /* + * Enumeration is extensible + */ +} e_ResponderGroupAffected; + +/* ResponderGroupAffected */ +typedef long ResponderGroupAffected_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; +asn_struct_free_f ResponderGroupAffected_free; +asn_struct_print_f ResponderGroupAffected_print; +asn_constr_check_f ResponderGroupAffected_constraint; +ber_type_decoder_f ResponderGroupAffected_decode_ber; +der_type_encoder_f ResponderGroupAffected_encode_der; +xer_type_decoder_f ResponderGroupAffected_decode_xer; +xer_type_encoder_f ResponderGroupAffected_encode_xer; +per_type_decoder_f ResponderGroupAffected_decode_uper; +per_type_encoder_f ResponderGroupAffected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponderGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h new file mode 100644 index 000000000..28420593a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ResponseType.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ResponseType_H_ +#define _ResponseType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponseType { + ResponseType_notInUseOrNotEquipped = 0, + ResponseType_emergency = 1, + ResponseType_nonEmergency = 2, + ResponseType_pursuit = 3 +} e_ResponseType; + +/* ResponseType */ +typedef long ResponseType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ResponseType; +asn_struct_free_f ResponseType_free; +asn_struct_print_f ResponseType_print; +asn_constr_check_f ResponseType_constraint; +ber_type_decoder_f ResponseType_decode_ber; +der_type_encoder_f ResponseType_encode_der; +xer_type_decoder_f ResponseType_decode_xer; +xer_type_encoder_f ResponseType_encode_xer; +per_type_decoder_f ResponseType_decode_uper; +per_type_encoder_f ResponseType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponseType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h new file mode 100644 index 000000000..78380e8a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionAppliesTo.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionAppliesTo_H_ +#define _RestrictionAppliesTo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionAppliesTo { + RestrictionAppliesTo_none = 0, + RestrictionAppliesTo_equippedTransit = 1, + RestrictionAppliesTo_equippedTaxis = 2, + RestrictionAppliesTo_equippedOther = 3, + RestrictionAppliesTo_emissionCompliant = 4, + RestrictionAppliesTo_equippedBicycle = 5, + RestrictionAppliesTo_weightCompliant = 6, + RestrictionAppliesTo_heightCompliant = 7, + RestrictionAppliesTo_pedestrians = 8, + RestrictionAppliesTo_slowMovingPersons = 9, + RestrictionAppliesTo_wheelchairUsers = 10, + RestrictionAppliesTo_visualDisabilities = 11, + RestrictionAppliesTo_audioDisabilities = 12, + RestrictionAppliesTo_otherUnknownDisabilities = 13 + /* + * Enumeration is extensible + */ +} e_RestrictionAppliesTo; + +/* RestrictionAppliesTo */ +typedef long RestrictionAppliesTo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; +asn_struct_free_f RestrictionAppliesTo_free; +asn_struct_print_f RestrictionAppliesTo_print; +asn_constr_check_f RestrictionAppliesTo_constraint; +ber_type_decoder_f RestrictionAppliesTo_decode_ber; +der_type_encoder_f RestrictionAppliesTo_encode_der; +xer_type_decoder_f RestrictionAppliesTo_decode_xer; +xer_type_encoder_f RestrictionAppliesTo_encode_xer; +per_type_decoder_f RestrictionAppliesTo_decode_uper; +per_type_encoder_f RestrictionAppliesTo_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionAppliesTo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h new file mode 100644 index 000000000..d3abe410e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassAssignment.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionClassAssignment_H_ +#define _RestrictionClassAssignment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionClassID.h" +#include "RestrictionUserTypeList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassAssignment */ +typedef struct RestrictionClassAssignment { + RestrictionClassID_t id; + RestrictionUserTypeList_t users; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassAssignment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassAssignment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h new file mode 100644 index 000000000..9e9b37495 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionClassID_H_ +#define _RestrictionClassID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassID */ +typedef long RestrictionClassID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; +asn_struct_free_f RestrictionClassID_free; +asn_struct_print_f RestrictionClassID_print; +asn_constr_check_f RestrictionClassID_constraint; +ber_type_decoder_f RestrictionClassID_decode_ber; +der_type_encoder_f RestrictionClassID_encode_der; +xer_type_decoder_f RestrictionClassID_decode_xer; +xer_type_encoder_f RestrictionClassID_encode_xer; +per_type_decoder_f RestrictionClassID_decode_uper; +per_type_encoder_f RestrictionClassID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h new file mode 100644 index 000000000..be21b6153 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionClassList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionClassList_H_ +#define _RestrictionClassList_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 RestrictionClassAssignment; + +/* RestrictionClassList */ +typedef struct RestrictionClassList { + A_SEQUENCE_OF(struct RestrictionClassAssignment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionClassAssignment.h" + +#endif /* _RestrictionClassList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h new file mode 100644 index 000000000..db0bebf97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserType.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionUserType_H_ +#define _RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionAppliesTo.h" +#include "RegionalRestrictionUserType.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionUserType_PR { + RestrictionUserType_PR_NOTHING, /* No components present */ + RestrictionUserType_PR_basicType, + RestrictionUserType_PR_regional +} RestrictionUserType_PR; + +/* RestrictionUserType */ +typedef struct RestrictionUserType { + RestrictionUserType_PR present; + union RestrictionUserType_u { + RestrictionAppliesTo_t basicType; + RegionalRestrictionUserType_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h new file mode 100644 index 000000000..dd16b5fa5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RestrictionUserTypeList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RestrictionUserTypeList_H_ +#define _RestrictionUserTypeList_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 RestrictionUserType; + +/* RestrictionUserTypeList */ +typedef struct RestrictionUserTypeList { + A_SEQUENCE_OF(struct RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserTypeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionUserType.h" + +#endif /* _RestrictionUserTypeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h new file mode 100644 index 000000000..1f9be8fd3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadLaneSetList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadLaneSetList_H_ +#define _RoadLaneSetList_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 GenericLane; + +/* RoadLaneSetList */ +typedef struct RoadLaneSetList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadLaneSetList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _RoadLaneSetList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h new file mode 100644 index 000000000..5e2ff31d4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadRegulatorID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadRegulatorID_H_ +#define _RoadRegulatorID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadRegulatorID */ +typedef long RoadRegulatorID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; +asn_struct_free_f RoadRegulatorID_free; +asn_struct_print_f RoadRegulatorID_print; +asn_constr_check_f RoadRegulatorID_constraint; +ber_type_decoder_f RoadRegulatorID_decode_ber; +der_type_encoder_f RoadRegulatorID_encode_der; +xer_type_decoder_f RoadRegulatorID_decode_xer; +xer_type_encoder_f RoadRegulatorID_encode_xer; +per_type_decoder_f RoadRegulatorID_decode_uper; +per_type_encoder_f RoadRegulatorID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadRegulatorID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h new file mode 100644 index 000000000..b060367db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegment.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSegment_H_ +#define _RoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "RoadSegmentReferenceID.h" +#include "MsgCount.h" +#include "Position3D-2.h" +#include "LaneWidth.h" +#include "RoadLaneSetList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct Reg_RoadSegment; + +/* RoadSegment */ +typedef struct RoadSegment { + DescriptiveName_t *name /* OPTIONAL */; + RoadSegmentReferenceID_t id; + MsgCount_t revision; + Position3D_2_t refPoint; + LaneWidth_t *laneWidth /* OPTIONAL */; + struct SpeedLimitList *speedLimits /* OPTIONAL */; + RoadLaneSetList_t roadLaneSet; + struct Reg_RoadSegment *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "RegionalRoadSegment.h" + +#endif /* _RoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h new file mode 100644 index 000000000..10e1ed89a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSegmentID_H_ +#define _RoadSegmentID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentID */ +typedef long RoadSegmentID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; +asn_struct_free_f RoadSegmentID_free; +asn_struct_print_f RoadSegmentID_print; +asn_constr_check_f RoadSegmentID_constraint; +ber_type_decoder_f RoadSegmentID_decode_ber; +der_type_encoder_f RoadSegmentID_encode_der; +xer_type_decoder_f RoadSegmentID_decode_xer; +xer_type_encoder_f RoadSegmentID_encode_xer; +per_type_decoder_f RoadSegmentID_decode_uper; +per_type_encoder_f RoadSegmentID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h new file mode 100644 index 000000000..5e67f4bf2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSegmentList_H_ +#define _RoadSegmentList_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 RoadSegment; + +/* RoadSegmentList */ +typedef struct RoadSegmentList { + A_SEQUENCE_OF(struct RoadSegment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RoadSegment.h" + +#endif /* _RoadSegmentList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h new file mode 100644 index 000000000..50823f7f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSegmentReferenceID.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSegmentReferenceID_H_ +#define _RoadSegmentReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "RoadSegmentID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentReferenceID */ +typedef struct RoadSegmentReferenceID { + RoadRegulatorID_t *region /* OPTIONAL */; + RoadSegmentID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h new file mode 100644 index 000000000..2a7ca1f20 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSideAlert.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSideAlert_H_ +#define _RoadSideAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "FurtherInfoID.h" +#include "MsgCRC.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; + +/* RoadSideAlert */ +typedef struct RoadSideAlert { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + ITIScodes_t typeEvent; + struct RoadSideAlert__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority /* OPTIONAL */; + HeadingSlice_t *heading /* OPTIONAL */; + Extent_t *extent /* OPTIONAL */; + struct FullPositionVector *positon /* OPTIONAL */; + FurtherInfoID_t *furtherInfoID /* OPTIONAL */; + MsgCRC_t crc; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSideAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" + +#endif /* _RoadSideAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h new file mode 100644 index 000000000..c1e0f4edf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadSignID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadSignID_H_ +#define _RoadSignID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "HeadingSlice.h" +#include "MUTCDCode.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSignID */ +typedef struct RoadSignID { + Position3D_t position; + HeadingSlice_t viewAngle; + MUTCDCode_t *mutcdCode /* OPTIONAL */; + MsgCRC_t *crc /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSignID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSignID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h new file mode 100644 index 000000000..e63e948a2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/RoadwayCrownAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _RoadwayCrownAngle_H_ +#define _RoadwayCrownAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadwayCrownAngle */ +typedef long RoadwayCrownAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; +asn_struct_free_f RoadwayCrownAngle_free; +asn_struct_print_f RoadwayCrownAngle_print; +asn_constr_check_f RoadwayCrownAngle_constraint; +ber_type_decoder_f RoadwayCrownAngle_decode_ber; +der_type_encoder_f RoadwayCrownAngle_encode_der; +xer_type_decoder_f RoadwayCrownAngle_decode_xer; +xer_type_encoder_f RoadwayCrownAngle_encode_xer; +per_type_decoder_f RoadwayCrownAngle_decode_uper; +per_type_encoder_f RoadwayCrownAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadwayCrownAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h new file mode 100644 index 000000000..26bbb4e90 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SPAT.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SPAT_H_ +#define _SPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID2.h" +#include "DSRCmsgSubID.h" +#include "DescriptiveName.h" +#include "IntersectionStateList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_SPAT; + +/* SPAT */ +typedef struct SPAT { + DSRCmsgID2_t msgID; + DSRCmsgSubID_t *msgSubID /* OPTIONAL */; + DescriptiveName_t *name /* OPTIONAL */; + IntersectionStateList_t intersections; + struct Reg_SPAT *regional /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SPAT; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalSPAT.h" + +#endif /* _SPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h new file mode 100644 index 000000000..5ff220885 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Sample.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Sample_H_ +#define _Sample_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Sample */ +typedef struct Sample { + long sampleStart; + long sampleEnd; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Sample_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Sample; + +#ifdef __cplusplus +} +#endif + +#endif /* _Sample_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h new file mode 100644 index 000000000..34ffa0928 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Scale-B12.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Scale_B12_H_ +#define _Scale_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Scale-B12 */ +typedef long Scale_B12_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; +asn_struct_free_f Scale_B12_free; +asn_struct_print_f Scale_B12_print; +asn_constr_check_f Scale_B12_constraint; +ber_type_decoder_f Scale_B12_decode_ber; +der_type_encoder_f Scale_B12_encode_der; +xer_type_decoder_f Scale_B12_decode_xer; +xer_type_encoder_f Scale_B12_encode_xer; +per_type_decoder_f Scale_B12_decode_uper; +per_type_encoder_f Scale_B12_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Scale_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h new file mode 100644 index 000000000..9c78412c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SeatCount.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_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_r41/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h new file mode 100644 index 000000000..782b19b69 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Second.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Second_H_ +#define _Second_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Second */ +typedef long Second_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Second; +asn_struct_free_f Second_free; +asn_struct_print_f Second_print; +asn_constr_check_f Second_constraint; +ber_type_decoder_f Second_decode_ber; +der_type_encoder_f Second_encode_der; +xer_type_decoder_f Second_decode_xer; +xer_type_encoder_f Second_encode_xer; +per_type_decoder_f Second_decode_uper; +per_type_encoder_f Second_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Second_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h new file mode 100644 index 000000000..ab18ba73b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SecondsAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SecondsAngle_H_ +#define _SecondsAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondsAngle */ +typedef long SecondsAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; +asn_struct_free_f SecondsAngle_free; +asn_struct_print_f SecondsAngle_print; +asn_constr_check_f SecondsAngle_constraint; +ber_type_decoder_f SecondsAngle_decode_ber; +der_type_encoder_f SecondsAngle_encode_der; +xer_type_decoder_f SecondsAngle_decode_xer; +xer_type_encoder_f SecondsAngle_encode_xer; +per_type_decoder_f SecondsAngle_decode_uper; +per_type_encoder_f SecondsAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondsAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h new file mode 100644 index 000000000..b820ee2cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttribute.h @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SegmentAttribute_H_ +#define _SegmentAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttribute { + SegmentAttribute_reserved = 0, + SegmentAttribute_doNotBlock = 1, + SegmentAttribute_whiteLine = 2, + SegmentAttribute_mergingLaneLeft = 3, + SegmentAttribute_mergingLaneRight = 4, + SegmentAttribute_curbOnLeft = 5, + SegmentAttribute_curbOnRight = 6, + SegmentAttribute_loadingzoneOnLeft = 7, + SegmentAttribute_loadingzoneOnRight = 8, + SegmentAttribute_turnOutPointOnLeft = 9, + SegmentAttribute_turnOutPointOnRight = 10, + SegmentAttribute_adjacentParkingOnLeft = 11, + SegmentAttribute_adjacentParkingOnRight = 12, + SegmentAttribute_adjacentBikeLaneOnLeft = 13, + SegmentAttribute_adjacentBikeLaneOnRight = 14, + SegmentAttribute_sharedBikeLane = 15, + SegmentAttribute_bikeBoxInFront = 16, + SegmentAttribute_transitStopOnLeft = 17, + SegmentAttribute_transitStopOnRight = 18, + SegmentAttribute_transitStopInLane = 19, + SegmentAttribute_sharedWithTrackedVehicle = 20, + SegmentAttribute_safeIsland = 21, + SegmentAttribute_lowCurbsPresent = 22, + SegmentAttribute_rumbleStripPresent = 23, + SegmentAttribute_audibleSignalingPresent = 24, + SegmentAttribute_adaptiveTimingPresent = 25, + SegmentAttribute_rfSignalRequestPresent = 26, + SegmentAttribute_partialCurbIntrusion = 27, + SegmentAttribute_taperToLeft = 28, + SegmentAttribute_taperToRight = 29, + SegmentAttribute_taperToCenterLine = 30, + SegmentAttribute_parallelParking = 31, + SegmentAttribute_headInParking = 32, + SegmentAttribute_freeParking = 33, + SegmentAttribute_timeRestrictionsOnParking = 34, + SegmentAttribute_costToPark = 35, + SegmentAttribute_midBlockCurbPresent = 36, + SegmentAttribute_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttribute; + +/* SegmentAttribute */ +typedef long SegmentAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttribute; +asn_struct_free_f SegmentAttribute_free; +asn_struct_print_f SegmentAttribute_print; +asn_constr_check_f SegmentAttribute_constraint; +ber_type_decoder_f SegmentAttribute_decode_ber; +der_type_encoder_f SegmentAttribute_encode_der; +xer_type_decoder_f SegmentAttribute_decode_xer; +xer_type_encoder_f SegmentAttribute_encode_xer; +per_type_decoder_f SegmentAttribute_decode_uper; +per_type_encoder_f SegmentAttribute_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h new file mode 100644 index 000000000..c46717c87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SegmentAttributeList.h @@ -0,0 +1,39 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SegmentAttributeList_H_ +#define _SegmentAttributeList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttribute.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeList */ +typedef struct SegmentAttributeList { + A_SEQUENCE_OF(SegmentAttribute_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeList; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h new file mode 100644 index 000000000..f550251de --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ShapePointSet.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ShapePointSet_H_ +#define _ShapePointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "NodeList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* ShapePointSet */ +typedef struct ShapePointSet { + struct Position3D *anchor /* OPTIONAL */; + LaneWidth_t *laneWidth /* OPTIONAL */; + DirectionOfUse_t *directionality /* OPTIONAL */; + NodeList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ShapePointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _ShapePointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h new file mode 100644 index 000000000..d7df0a61d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignPrority.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignPrority_H_ +#define _SignPrority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignPrority */ +typedef long SignPrority_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignPrority; +asn_struct_free_f SignPrority_free; +asn_struct_print_f SignPrority_print; +asn_constr_check_f SignPrority_constraint; +ber_type_decoder_f SignPrority_decode_ber; +der_type_encoder_f SignPrority_encode_der; +xer_type_decoder_f SignPrority_decode_xer; +xer_type_encoder_f SignPrority_encode_xer; +per_type_decoder_f SignPrority_decode_uper; +per_type_encoder_f SignPrority_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignPrority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h new file mode 100644 index 000000000..7ed7c0403 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlState.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalControlState_H_ +#define _SignalControlState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalControlState */ +typedef OCTET_STRING_t SignalControlState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalControlState; +asn_struct_free_f SignalControlState_free; +asn_struct_print_f SignalControlState_print; +asn_constr_check_f SignalControlState_constraint; +ber_type_decoder_f SignalControlState_decode_ber; +der_type_encoder_f SignalControlState_encode_der; +xer_type_decoder_f SignalControlState_decode_xer; +xer_type_encoder_f SignalControlState_encode_xer; +per_type_decoder_f SignalControlState_decode_uper; +per_type_encoder_f SignalControlState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalControlState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h new file mode 100644 index 000000000..36c0f8092 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalControlZone.h @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalControlZone_H_ +#define _SignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "SignalReqScheme.h" +#include "LaneNumber.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "LaneWidth.h" +#include "NodeList.h" +#include "constr_SEQUENCE.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SignalControlZone__data_PR { + SignalControlZone__data_PR_NOTHING, /* No components present */ + SignalControlZone__data_PR_laneSet, + SignalControlZone__data_PR_zones +} SignalControlZone__data_PR; + +/* SignalControlZone */ +typedef struct SignalControlZone { + DescriptiveName_t *name /* OPTIONAL */; + SignalReqScheme_t pValue; + struct SignalControlZone__data { + SignalControlZone__data_PR present; + union SignalControlZone__data_u { + struct SignalControlZone__data__laneSet { + A_SEQUENCE_OF(LaneNumber_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } laneSet; + struct SignalControlZone__data__zones { + A_SEQUENCE_OF(struct SignalControlZone__data__zones__Member { + struct enclosed { + A_SEQUENCE_OF(LaneNumber_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *enclosed; + LaneWidth_t *laneWidth /* OPTIONAL */; + NodeList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } zones; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } data; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h new file mode 100644 index 000000000..c005ef931 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalGroupID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalGroupID_H_ +#define _SignalGroupID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalGroupID */ +typedef long SignalGroupID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; +asn_struct_free_f SignalGroupID_free; +asn_struct_print_f SignalGroupID_print; +asn_constr_check_f SignalGroupID_constraint; +ber_type_decoder_f SignalGroupID_decode_ber; +der_type_encoder_f SignalGroupID_encode_der; +xer_type_decoder_f SignalGroupID_decode_xer; +xer_type_encoder_f SignalGroupID_encode_xer; +per_type_decoder_f SignalGroupID_decode_uper; +per_type_encoder_f SignalGroupID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalGroupID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h new file mode 100644 index 000000000..d51d007b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocation.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalHeadLocation_H_ +#define _SignalHeadLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPoint.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalHeadLocation */ +typedef struct SignalHeadLocation { + NodeOffsetPoint_t node; + SignalGroupID_t signalGroupID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalHeadLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h new file mode 100644 index 000000000..589018bbb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalHeadLocationList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalHeadLocationList_H_ +#define _SignalHeadLocationList_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 SignalHeadLocation; + +/* SignalHeadLocationList */ +typedef struct SignalHeadLocationList { + A_SEQUENCE_OF(struct SignalHeadLocation) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocationList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocation.h" + +#endif /* _SignalHeadLocationList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h new file mode 100644 index 000000000..c44c62fe9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalReqScheme.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalReqScheme_H_ +#define _SignalReqScheme_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalReqScheme */ +typedef OCTET_STRING_t SignalReqScheme_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; +asn_struct_free_f SignalReqScheme_free; +asn_struct_print_f SignalReqScheme_print; +asn_constr_check_f SignalReqScheme_constraint; +ber_type_decoder_f SignalReqScheme_decode_ber; +der_type_encoder_f SignalReqScheme_encode_der; +xer_type_decoder_f SignalReqScheme_decode_xer; +xer_type_encoder_f SignalReqScheme_encode_xer; +per_type_decoder_f SignalReqScheme_decode_uper; +per_type_encoder_f SignalReqScheme_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalReqScheme_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h new file mode 100644 index 000000000..6748c71eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequest.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalRequest_H_ +#define _SignalRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionID.h" +#include "SignalReqScheme.h" +#include "LaneNumber.h" +#include "NTCIPVehicleclass.h" +#include "CodeWord.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalRequest */ +typedef struct SignalRequest { + IntersectionID_t id; + SignalReqScheme_t *isCancel /* OPTIONAL */; + SignalReqScheme_t *requestedAction /* OPTIONAL */; + LaneNumber_t *inLane /* OPTIONAL */; + LaneNumber_t *outLane /* OPTIONAL */; + NTCIPVehicleclass_t type; + CodeWord_t *codeWord /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h new file mode 100644 index 000000000..889c1c710 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalRequestMsg.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalRequestMsg_H_ +#define _SignalRequestMsg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "SignalRequest.h" +#include "TransitStatus.h" +#include "BSMblob.h" +#include "VehicleRequestStatus.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DTime; +struct VehicleIdent; + +/* SignalRequestMsg */ +typedef struct SignalRequestMsg { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + SignalRequest_t request; + struct DTime *timeOfService /* OPTIONAL */; + struct DTime *endOfService /* OPTIONAL */; + TransitStatus_t *transitStatus /* OPTIONAL */; + struct VehicleIdent *vehicleVIN /* OPTIONAL */; + BSMblob_t vehicleData; + VehicleRequestStatus_t *status /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequestMsg_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMsg; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DTime.h" +#include "VehicleIdent.h" + +#endif /* _SignalRequestMsg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h new file mode 100644 index 000000000..a7acb3618 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalState.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalState_H_ +#define _SignalState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalState */ +typedef OCTET_STRING_t SignalState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalState; +asn_struct_free_f SignalState_free; +asn_struct_print_f SignalState_print; +asn_constr_check_f SignalState_constraint; +ber_type_decoder_f SignalState_decode_ber; +der_type_encoder_f SignalState_encode_der; +xer_type_decoder_f SignalState_decode_xer; +xer_type_encoder_f SignalState_encode_xer; +per_type_decoder_f SignalState_decode_uper; +per_type_encoder_f SignalState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h new file mode 100644 index 000000000..8c8ab6951 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SignalStatusMessage.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SignalStatusMessage_H_ +#define _SignalStatusMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "MsgCount.h" +#include "IntersectionID.h" +#include "IntersectionStatusObject.h" +#include "TransitStatus.h" +#include "SignalState.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleIdent; + +/* SignalStatusMessage */ +typedef struct SignalStatusMessage { + DSRCmsgID_t msgID; + MsgCount_t msgCnt; + IntersectionID_t id; + IntersectionStatusObject_t status; + struct SignalStatusMessage__priority { + A_SEQUENCE_OF(SignalState_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *priority; + struct VehicleIdent *priorityCause /* OPTIONAL */; + struct SignalStatusMessage__prempt { + A_SEQUENCE_OF(SignalState_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *prempt; + struct VehicleIdent *preemptCause /* OPTIONAL */; + TransitStatus_t *transitStatus /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleIdent.h" + +#endif /* _SignalStatusMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h new file mode 100644 index 000000000..94261caae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SirenInUse.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SirenInUse_H_ +#define _SirenInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SirenInUse { + SirenInUse_unavailable = 0, + SirenInUse_notInUse = 1, + SirenInUse_inUse = 2, + SirenInUse_reserved = 3 +} e_SirenInUse; + +/* SirenInUse */ +typedef long SirenInUse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; +asn_struct_free_f SirenInUse_free; +asn_struct_print_f SirenInUse_print; +asn_constr_check_f SirenInUse_constraint; +ber_type_decoder_f SirenInUse_decode_ber; +der_type_encoder_f SirenInUse_encode_der; +xer_type_decoder_f SirenInUse_decode_xer; +xer_type_encoder_f SirenInUse_encode_xer; +per_type_decoder_f SirenInUse_decode_uper; +per_type_encoder_f SirenInUse_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SirenInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h new file mode 100644 index 000000000..55eb3bb53 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Snapshot.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Snapshot_H_ +#define _Snapshot_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "FullPositionVector.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtension; +struct VehicleStatus; + +/* Snapshot */ +typedef struct Snapshot { + FullPositionVector_t thePosition; + struct VehicleSafetyExtension *safetyExt /* OPTIONAL */; + struct VehicleStatus *datSet /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Snapshot_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Snapshot; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleSafetyExtension.h" +#include "VehicleStatus.h" + +#endif /* _Snapshot_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h new file mode 100644 index 000000000..46f00480e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotDistance.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SnapshotDistance_H_ +#define _SnapshotDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotDistance */ +typedef struct SnapshotDistance { + long d1; + long s1; + long d2; + long s2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h new file mode 100644 index 000000000..85de5c5e8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SnapshotTime.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SnapshotTime_H_ +#define _SnapshotTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotTime */ +typedef struct SnapshotTime { + long t1; + long s1; + long t2; + long s2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h new file mode 100644 index 000000000..823595b1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Speed.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Speed_H_ +#define _Speed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Speed */ +typedef long Speed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Speed; +asn_struct_free_f Speed_free; +asn_struct_print_f Speed_print; +asn_constr_check_f Speed_constraint; +ber_type_decoder_f Speed_decode_ber; +der_type_encoder_f Speed_encode_der; +xer_type_decoder_f Speed_decode_xer; +xer_type_encoder_f Speed_encode_xer; +per_type_decoder_f Speed_decode_uper; +per_type_encoder_f Speed_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Speed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h new file mode 100644 index 000000000..07c681fcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedAdvice.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedAdvice_H_ +#define _SpeedAdvice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedAdvice */ +typedef long SpeedAdvice_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; +asn_struct_free_f SpeedAdvice_free; +asn_struct_print_f SpeedAdvice_print; +asn_constr_check_f SpeedAdvice_constraint; +ber_type_decoder_f SpeedAdvice_decode_ber; +der_type_encoder_f SpeedAdvice_encode_der; +xer_type_decoder_f SpeedAdvice_decode_xer; +xer_type_encoder_f SpeedAdvice_encode_xer; +per_type_decoder_f SpeedAdvice_decode_uper; +per_type_encoder_f SpeedAdvice_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedAdvice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h new file mode 100644 index 000000000..a1c5d6c38 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedConfidence.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedConfidence_H_ +#define _SpeedConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedConfidence { + SpeedConfidence_unavailable = 0, + SpeedConfidence_prec100ms = 1, + SpeedConfidence_prec10ms = 2, + SpeedConfidence_prec5ms = 3, + SpeedConfidence_prec1ms = 4, + SpeedConfidence_prec0_1ms = 5, + SpeedConfidence_prec0_05ms = 6, + SpeedConfidence_prec0_01ms = 7 +} e_SpeedConfidence; + +/* SpeedConfidence */ +typedef long SpeedConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; +asn_struct_free_f SpeedConfidence_free; +asn_struct_print_f SpeedConfidence_print; +asn_constr_check_f SpeedConfidence_constraint; +ber_type_decoder_f SpeedConfidence_decode_ber; +der_type_encoder_f SpeedConfidence_encode_der; +xer_type_decoder_f SpeedConfidence_decode_xer; +xer_type_encoder_f SpeedConfidence_encode_xer; +per_type_decoder_f SpeedConfidence_decode_uper; +per_type_encoder_f SpeedConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h new file mode 100644 index 000000000..50e883819 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimit.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedLimit_H_ +#define _SpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "IA5String.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum item_sl_PR { + item_sl_PR_NOTHING, /* No components present */ + item_sl_PR_itis, + item_sl_PR_text +} item_sl_PR; + +/* SpeedLimit */ +typedef struct SpeedLimit { + A_SEQUENCE_OF(struct SpeedLimit__Member { + struct item_sl { + item_sl_PR present; + union item_sl_u { + ITIScodes_t itis; + IA5String_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item_sl; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h new file mode 100644 index 000000000..a183eaa67 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedLimitList_H_ +#define _SpeedLimitList_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 RegulatorySpeedLimit; + +/* SpeedLimitList */ +typedef struct SpeedLimitList { + A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimitList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegulatorySpeedLimit.h" + +#endif /* _SpeedLimitList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h new file mode 100644 index 000000000..32fc34010 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedLimitType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedLimitType_H_ +#define _SpeedLimitType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimitType { + SpeedLimitType_unknown = 0, + SpeedLimitType_maxSpeedInSchoolZone = 1, + SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, + SpeedLimitType_maxSpeedInConstructionZone = 3, + SpeedLimitType_vehicleMinSpeed = 4, + SpeedLimitType_vehicleMaxSpeed = 5, + SpeedLimitType_vehicleNightMaxSpeed = 6, + SpeedLimitType_truckMinSpeed = 7, + SpeedLimitType_truckMaxSpeed = 8, + SpeedLimitType_truckNightMaxSpeed = 9, + SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, + SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, + SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 + /* + * Enumeration is extensible + */ +} e_SpeedLimitType; + +/* SpeedLimitType */ +typedef long SpeedLimitType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; +asn_struct_free_f SpeedLimitType_free; +asn_struct_print_f SpeedLimitType_print; +asn_constr_check_f SpeedLimitType_constraint; +ber_type_decoder_f SpeedLimitType_decode_ber; +der_type_encoder_f SpeedLimitType_encode_der; +xer_type_decoder_f SpeedLimitType_decode_xer; +xer_type_encoder_f SpeedLimitType_encode_xer; +per_type_decoder_f SpeedLimitType_decode_uper; +per_type_encoder_f SpeedLimitType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimitType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h new file mode 100644 index 000000000..3fb27ac84 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SpeedandHeadingandThrottleConfidence.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpeedandHeadingandThrottleConfidence_H_ +#define _SpeedandHeadingandThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedandHeadingandThrottleConfidence */ +typedef OCTET_STRING_t SpeedandHeadingandThrottleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; +asn_struct_free_f SpeedandHeadingandThrottleConfidence_free; +asn_struct_print_f SpeedandHeadingandThrottleConfidence_print; +asn_constr_check_f SpeedandHeadingandThrottleConfidence_constraint; +ber_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_ber; +der_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_der; +xer_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_xer; +xer_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_xer; +per_type_decoder_f SpeedandHeadingandThrottleConfidence_decode_uper; +per_type_encoder_f SpeedandHeadingandThrottleConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h new file mode 100644 index 000000000..c916960bb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/StabilityControlStatus.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _StabilityControlStatus_H_ +#define _StabilityControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum StabilityControlStatus { + StabilityControlStatus_unavailable = 0, + StabilityControlStatus_off = 1, + StabilityControlStatus_on = 2 +} e_StabilityControlStatus; + +/* StabilityControlStatus */ +typedef long StabilityControlStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; +asn_struct_free_f StabilityControlStatus_free; +asn_struct_print_f StabilityControlStatus_print; +asn_constr_check_f StabilityControlStatus_constraint; +ber_type_decoder_f StabilityControlStatus_decode_ber; +der_type_encoder_f StabilityControlStatus_encode_der; +xer_type_decoder_f StabilityControlStatus_decode_xer; +xer_type_encoder_f StabilityControlStatus_encode_xer; +per_type_decoder_f StabilityControlStatus_decode_uper; +per_type_encoder_f StabilityControlStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StabilityControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h new file mode 100644 index 000000000..8c8f3ba86 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/StationID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _StationID_H_ +#define _StationID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* StationID */ +typedef unsigned long StationID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_StationID; +asn_struct_free_f StationID_free; +asn_struct_print_f StationID_print; +asn_constr_check_f StationID_constraint; +ber_type_decoder_f StationID_decode_ber; +der_type_encoder_f StationID_encode_der; +xer_type_decoder_f StationID_decode_xer; +xer_type_encoder_f StationID_encode_xer; +per_type_decoder_f StationID_decode_uper; +per_type_encoder_f StationID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StationID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h new file mode 100644 index 000000000..4ebbe95e8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleLubePressure.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SteeringAxleLubePressure_H_ +#define _SteeringAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleLubePressure */ +typedef long SteeringAxleLubePressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; +asn_struct_free_f SteeringAxleLubePressure_free; +asn_struct_print_f SteeringAxleLubePressure_print; +asn_constr_check_f SteeringAxleLubePressure_constraint; +ber_type_decoder_f SteeringAxleLubePressure_decode_ber; +der_type_encoder_f SteeringAxleLubePressure_encode_der; +xer_type_decoder_f SteeringAxleLubePressure_decode_xer; +xer_type_encoder_f SteeringAxleLubePressure_encode_xer; +per_type_decoder_f SteeringAxleLubePressure_decode_uper; +per_type_encoder_f SteeringAxleLubePressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h new file mode 100644 index 000000000..f17ee9f75 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringAxleTemperature.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SteeringAxleTemperature_H_ +#define _SteeringAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleTemperature */ +typedef long SteeringAxleTemperature_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; +asn_struct_free_f SteeringAxleTemperature_free; +asn_struct_print_f SteeringAxleTemperature_print; +asn_constr_check_f SteeringAxleTemperature_constraint; +ber_type_decoder_f SteeringAxleTemperature_decode_ber; +der_type_encoder_f SteeringAxleTemperature_encode_der; +xer_type_decoder_f SteeringAxleTemperature_decode_xer; +xer_type_encoder_f SteeringAxleTemperature_encode_xer; +per_type_decoder_f SteeringAxleTemperature_decode_uper; +per_type_encoder_f SteeringAxleTemperature_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h new file mode 100644 index 000000000..ba8c01d49 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngle.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SteeringWheelAngle_H_ +#define _SteeringWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngle */ +typedef OCTET_STRING_t SteeringWheelAngle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; +asn_struct_free_f SteeringWheelAngle_free; +asn_struct_print_f SteeringWheelAngle_print; +asn_constr_check_f SteeringWheelAngle_constraint; +ber_type_decoder_f SteeringWheelAngle_decode_ber; +der_type_encoder_f SteeringWheelAngle_encode_der; +xer_type_decoder_f SteeringWheelAngle_decode_xer; +xer_type_encoder_f SteeringWheelAngle_encode_xer; +per_type_decoder_f SteeringWheelAngle_decode_uper; +per_type_encoder_f SteeringWheelAngle_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h new file mode 100644 index 000000000..e181bb3b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleConfidence.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SteeringWheelAngleConfidence_H_ +#define _SteeringWheelAngleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SteeringWheelAngleConfidence { + SteeringWheelAngleConfidence_unavailable = 0, + SteeringWheelAngleConfidence_prec2deg = 1, + SteeringWheelAngleConfidence_prec1deg = 2, + SteeringWheelAngleConfidence_prec0_02deg = 3 +} e_SteeringWheelAngleConfidence; + +/* SteeringWheelAngleConfidence */ +typedef long SteeringWheelAngleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; +asn_struct_free_f SteeringWheelAngleConfidence_free; +asn_struct_print_f SteeringWheelAngleConfidence_print; +asn_constr_check_f SteeringWheelAngleConfidence_constraint; +ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; +der_type_encoder_f SteeringWheelAngleConfidence_encode_der; +xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; +xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; +per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h new file mode 100644 index 000000000..237a24e64 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SteeringWheelAngleRateOfChange.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SteeringWheelAngleRateOfChange_H_ +#define _SteeringWheelAngleRateOfChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngleRateOfChange */ +typedef long SteeringWheelAngleRateOfChange_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; +asn_struct_free_f SteeringWheelAngleRateOfChange_free; +asn_struct_print_f SteeringWheelAngleRateOfChange_print; +asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; +ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; +der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; +xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; +xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleRateOfChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h new file mode 100644 index 000000000..dce10daf1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SummerTime.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SummerTime_H_ +#define _SummerTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SummerTime { + SummerTime_notInSummerTime = 0, + SummerTime_inSummerTime = 1 +} e_SummerTime; + +/* SummerTime */ +typedef long SummerTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SummerTime; +asn_struct_free_f SummerTime_free; +asn_struct_print_f SummerTime_print; +asn_constr_check_f SummerTime_constraint; +ber_type_decoder_f SummerTime_decode_ber; +der_type_encoder_f SummerTime_encode_der; +xer_type_decoder_f SummerTime_decode_xer; +xer_type_encoder_f SummerTime_encode_xer; +per_type_decoder_f SummerTime_decode_uper; +per_type_encoder_f SummerTime_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SummerTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h new file mode 100644 index 000000000..a4adfd6de --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/SunSensor.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SunSensor_H_ +#define _SunSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SunSensor */ +typedef long SunSensor_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SunSensor; +asn_struct_free_f SunSensor_free; +asn_struct_print_f SunSensor_print; +asn_constr_check_f SunSensor_constraint; +ber_type_decoder_f SunSensor_decode_ber; +der_type_encoder_f SunSensor_encode_der; +xer_type_decoder_f SunSensor_decode_xer; +xer_type_encoder_f SunSensor_encode_xer; +per_type_decoder_f SunSensor_decode_uper; +per_type_encoder_f SunSensor_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SunSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h new file mode 100644 index 000000000..8e88d65b5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TemporaryID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TemporaryID_H_ +#define _TemporaryID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TemporaryID */ +typedef OCTET_STRING_t TemporaryID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; +asn_struct_free_f TemporaryID_free; +asn_struct_print_f TemporaryID_print; +asn_constr_check_f TemporaryID_constraint; +ber_type_decoder_f TemporaryID_decode_ber; +der_type_encoder_f TemporaryID_encode_der; +xer_type_decoder_f TemporaryID_decode_xer; +xer_type_encoder_f TemporaryID_encode_xer; +per_type_decoder_f TemporaryID_decode_uper; +per_type_encoder_f TemporaryID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TemporaryID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h new file mode 100644 index 000000000..89ab555d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TenthSecond.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TenthSecond_H_ +#define _TenthSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TenthSecond */ +typedef long TenthSecond_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; +asn_struct_free_f TenthSecond_free; +asn_struct_print_f TenthSecond_print; +asn_constr_check_f TenthSecond_constraint; +ber_type_decoder_f TenthSecond_decode_ber; +der_type_encoder_f TenthSecond_encode_der; +xer_type_decoder_f TenthSecond_decode_xer; +xer_type_encoder_f TenthSecond_encode_xer; +per_type_decoder_f TenthSecond_decode_uper; +per_type_encoder_f TenthSecond_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TenthSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h new file mode 100644 index 000000000..492fde2ee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermDistance.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TermDistance_H_ +#define _TermDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermDistance */ +typedef long TermDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TermDistance; +asn_struct_free_f TermDistance_free; +asn_struct_print_f TermDistance_print; +asn_constr_check_f TermDistance_constraint; +ber_type_decoder_f TermDistance_decode_ber; +der_type_encoder_f TermDistance_encode_der; +xer_type_decoder_f TermDistance_decode_xer; +xer_type_encoder_f TermDistance_encode_xer; +per_type_decoder_f TermDistance_decode_uper; +per_type_encoder_f TermDistance_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h new file mode 100644 index 000000000..b2a30dac9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TermTime.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TermTime_H_ +#define _TermTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermTime */ +typedef long TermTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TermTime; +asn_struct_free_f TermTime_free; +asn_struct_print_f TermTime_print; +asn_constr_check_f TermTime_constraint; +ber_type_decoder_f TermTime_decode_ber; +der_type_encoder_f TermTime_encode_der; +xer_type_decoder_f TermTime_decode_xer; +xer_type_encoder_f TermTime_encode_xer; +per_type_decoder_f TermTime_decode_uper; +per_type_encoder_f TermTime_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h new file mode 100644 index 000000000..b75595adc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottleConfidence.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ThrottleConfidence_H_ +#define _ThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ThrottleConfidence { + ThrottleConfidence_unavailable = 0, + ThrottleConfidence_prec10percent = 1, + ThrottleConfidence_prec1percent = 2, + ThrottleConfidence_prec0_5percent = 3 +} e_ThrottleConfidence; + +/* ThrottleConfidence */ +typedef long ThrottleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; +asn_struct_free_f ThrottleConfidence_free; +asn_struct_print_f ThrottleConfidence_print; +asn_constr_check_f ThrottleConfidence_constraint; +ber_type_decoder_f ThrottleConfidence_decode_ber; +der_type_encoder_f ThrottleConfidence_encode_der; +xer_type_decoder_f ThrottleConfidence_decode_xer; +xer_type_encoder_f ThrottleConfidence_encode_xer; +per_type_decoder_f ThrottleConfidence_decode_uper; +per_type_encoder_f ThrottleConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h new file mode 100644 index 000000000..4601c3326 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ThrottlePosition.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ThrottlePosition_H_ +#define _ThrottlePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ThrottlePosition */ +typedef long ThrottlePosition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; +asn_struct_free_f ThrottlePosition_free; +asn_struct_print_f ThrottlePosition_print; +asn_constr_check_f ThrottlePosition_constraint; +ber_type_decoder_f ThrottlePosition_decode_ber; +der_type_encoder_f ThrottlePosition_encode_der; +xer_type_decoder_f ThrottlePosition_decode_xer; +xer_type_encoder_f ThrottlePosition_encode_xer; +per_type_decoder_f ThrottlePosition_decode_uper; +per_type_encoder_f ThrottlePosition_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottlePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h new file mode 100644 index 000000000..3c3c652d7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeChangeDetails.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TimeChangeDetails_H_ +#define _TimeChangeDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeMark.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeChangeDetails */ +typedef struct TimeChangeDetails { + TimeMark_t *startTime /* OPTIONAL */; + TimeMark_t minEndTime; + TimeMark_t *maxEndTime /* OPTIONAL */; + TimeMark_t *likelyTime /* OPTIONAL */; + TimeIntervalConfidence_t *confidence /* OPTIONAL */; + TimeMark_t *nextTime /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TimeChangeDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeChangeDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h new file mode 100644 index 000000000..fe2203edf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeConfidence.h @@ -0,0 +1,85 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TimeConfidence_H_ +#define _TimeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TimeConfidence { + TimeConfidence_unavailable = 0, + TimeConfidence_time_100_000 = 1, + TimeConfidence_time_050_000 = 2, + TimeConfidence_time_020_000 = 3, + TimeConfidence_time_010_000 = 4, + TimeConfidence_time_002_000 = 5, + TimeConfidence_time_001_000 = 6, + TimeConfidence_time_000_500 = 7, + TimeConfidence_time_000_200 = 8, + TimeConfidence_time_000_100 = 9, + TimeConfidence_time_000_050 = 10, + TimeConfidence_time_000_020 = 11, + TimeConfidence_time_000_010 = 12, + TimeConfidence_time_000_005 = 13, + TimeConfidence_time_000_002 = 14, + TimeConfidence_time_000_001 = 15, + TimeConfidence_time_000_000_5 = 16, + TimeConfidence_time_000_000_2 = 17, + TimeConfidence_time_000_000_1 = 18, + TimeConfidence_time_000_000_05 = 19, + TimeConfidence_time_000_000_02 = 20, + TimeConfidence_time_000_000_01 = 21, + TimeConfidence_time_000_000_005 = 22, + TimeConfidence_time_000_000_002 = 23, + TimeConfidence_time_000_000_001 = 24, + TimeConfidence_time_000_000_000_5 = 25, + TimeConfidence_time_000_000_000_2 = 26, + TimeConfidence_time_000_000_000_1 = 27, + TimeConfidence_time_000_000_000_05 = 28, + TimeConfidence_time_000_000_000_02 = 29, + TimeConfidence_time_000_000_000_01 = 30, + TimeConfidence_time_000_000_000_005 = 31, + TimeConfidence_time_000_000_000_002 = 32, + TimeConfidence_time_000_000_000_001 = 33, + TimeConfidence_time_000_000_000_000_5 = 34, + TimeConfidence_time_000_000_000_000_2 = 35, + TimeConfidence_time_000_000_000_000_1 = 36, + TimeConfidence_time_000_000_000_000_05 = 37, + TimeConfidence_time_000_000_000_000_02 = 38, + TimeConfidence_time_000_000_000_000_01 = 39 +} e_TimeConfidence; + +/* TimeConfidence */ +typedef long TimeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; +asn_struct_free_f TimeConfidence_free; +asn_struct_print_f TimeConfidence_print; +asn_constr_check_f TimeConfidence_constraint; +ber_type_decoder_f TimeConfidence_decode_ber; +der_type_encoder_f TimeConfidence_encode_der; +xer_type_decoder_f TimeConfidence_decode_xer; +xer_type_encoder_f TimeConfidence_encode_xer; +per_type_decoder_f TimeConfidence_decode_uper; +per_type_encoder_f TimeConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h new file mode 100644 index 000000000..ea920f702 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeIntervalConfidence.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TimeIntervalConfidence_H_ +#define _TimeIntervalConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeIntervalConfidence */ +typedef long TimeIntervalConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; +asn_struct_free_f TimeIntervalConfidence_free; +asn_struct_print_f TimeIntervalConfidence_print; +asn_constr_check_f TimeIntervalConfidence_constraint; +ber_type_decoder_f TimeIntervalConfidence_decode_ber; +der_type_encoder_f TimeIntervalConfidence_encode_der; +xer_type_decoder_f TimeIntervalConfidence_decode_xer; +xer_type_encoder_f TimeIntervalConfidence_encode_xer; +per_type_decoder_f TimeIntervalConfidence_decode_uper; +per_type_encoder_f TimeIntervalConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeIntervalConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h new file mode 100644 index 000000000..4012b4e4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeMark.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TimeMark_H_ +#define _TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeMark */ +typedef long TimeMark_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeMark; +asn_struct_free_f TimeMark_free; +asn_struct_print_f TimeMark_print; +asn_constr_check_f TimeMark_constraint; +ber_type_decoder_f TimeMark_decode_ber; +der_type_encoder_f TimeMark_encode_der; +xer_type_decoder_f TimeMark_decode_xer; +xer_type_encoder_f TimeMark_encode_xer; +per_type_decoder_f TimeMark_decode_uper; +per_type_encoder_f TimeMark_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h new file mode 100644 index 000000000..08f888c8e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TimeRemaining.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TimeRemaining_H_ +#define _TimeRemaining_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeRemaining */ +typedef long TimeRemaining_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; +asn_struct_free_f TimeRemaining_free; +asn_struct_print_f TimeRemaining_print; +asn_constr_check_f TimeRemaining_constraint; +ber_type_decoder_f TimeRemaining_decode_ber; +der_type_encoder_f TimeRemaining_encode_der; +xer_type_decoder_f TimeRemaining_decode_xer; +xer_type_encoder_f TimeRemaining_encode_xer; +per_type_decoder_f TimeRemaining_decode_uper; +per_type_encoder_f TimeRemaining_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeRemaining_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h new file mode 100644 index 000000000..0aaffc131 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLeakageRate.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TireLeakageRate_H_ +#define _TireLeakageRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLeakageRate */ +typedef long TireLeakageRate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; +asn_struct_free_f TireLeakageRate_free; +asn_struct_print_f TireLeakageRate_print; +asn_constr_check_f TireLeakageRate_constraint; +ber_type_decoder_f TireLeakageRate_decode_ber; +der_type_encoder_f TireLeakageRate_encode_der; +xer_type_decoder_f TireLeakageRate_decode_xer; +xer_type_encoder_f TireLeakageRate_encode_xer; +per_type_decoder_f TireLeakageRate_decode_uper; +per_type_encoder_f TireLeakageRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLeakageRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h new file mode 100644 index 000000000..91ac89775 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireLocation.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TireLocation_H_ +#define _TireLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLocation */ +typedef long TireLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireLocation; +asn_struct_free_f TireLocation_free; +asn_struct_print_f TireLocation_print; +asn_constr_check_f TireLocation_constraint; +ber_type_decoder_f TireLocation_decode_ber; +der_type_encoder_f TireLocation_encode_der; +xer_type_decoder_f TireLocation_decode_xer; +xer_type_encoder_f TireLocation_encode_xer; +per_type_decoder_f TireLocation_decode_uper; +per_type_encoder_f TireLocation_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h new file mode 100644 index 000000000..33fe2d946 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressure.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TirePressure_H_ +#define _TirePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TirePressure */ +typedef long TirePressure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TirePressure; +asn_struct_free_f TirePressure_free; +asn_struct_print_f TirePressure_print; +asn_constr_check_f TirePressure_constraint; +ber_type_decoder_f TirePressure_decode_ber; +der_type_encoder_f TirePressure_encode_der; +xer_type_decoder_f TirePressure_decode_xer; +xer_type_encoder_f TirePressure_encode_xer; +per_type_decoder_f TirePressure_decode_uper; +per_type_encoder_f TirePressure_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h new file mode 100644 index 000000000..feedfc7d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TirePressureThresholdDetection.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TirePressureThresholdDetection_H_ +#define _TirePressureThresholdDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TirePressureThresholdDetection { + TirePressureThresholdDetection_noData = 0, + TirePressureThresholdDetection_overPressure = 1, + TirePressureThresholdDetection_noWarningPressure = 2, + TirePressureThresholdDetection_underPressure = 3, + TirePressureThresholdDetection_extremeUnderPressure = 4, + TirePressureThresholdDetection_undefined = 5, + TirePressureThresholdDetection_errorIndicator = 6, + TirePressureThresholdDetection_notAvailable = 7 + /* + * Enumeration is extensible + */ +} e_TirePressureThresholdDetection; + +/* TirePressureThresholdDetection */ +typedef long TirePressureThresholdDetection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; +asn_struct_free_f TirePressureThresholdDetection_free; +asn_struct_print_f TirePressureThresholdDetection_print; +asn_constr_check_f TirePressureThresholdDetection_constraint; +ber_type_decoder_f TirePressureThresholdDetection_decode_ber; +der_type_encoder_f TirePressureThresholdDetection_encode_der; +xer_type_decoder_f TirePressureThresholdDetection_decode_xer; +xer_type_encoder_f TirePressureThresholdDetection_encode_xer; +per_type_decoder_f TirePressureThresholdDetection_decode_uper; +per_type_encoder_f TirePressureThresholdDetection_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressureThresholdDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h new file mode 100644 index 000000000..b55795b92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TireTemp.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TireTemp_H_ +#define _TireTemp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireTemp */ +typedef long TireTemp_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireTemp; +asn_struct_free_f TireTemp_free; +asn_struct_print_f TireTemp_print; +asn_constr_check_f TireTemp_constraint; +ber_type_decoder_f TireTemp_decode_ber; +der_type_encoder_f TireTemp_encode_der; +xer_type_decoder_f TireTemp_decode_xer; +xer_type_encoder_f TireTemp_encode_xer; +per_type_decoder_f TireTemp_decode_uper; +per_type_encoder_f TireTemp_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireTemp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h new file mode 100644 index 000000000..e0e061933 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TractionControlState.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TractionControlState_H_ +#define _TractionControlState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TractionControlState { + TractionControlState_unavailable = 0, + TractionControlState_off = 1, + TractionControlState_on = 2, + TractionControlState_engaged = 3 +} e_TractionControlState; + +/* TractionControlState */ +typedef long TractionControlState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TractionControlState; +asn_struct_free_f TractionControlState_free; +asn_struct_print_f TractionControlState_print; +asn_constr_check_f TractionControlState_constraint; +ber_type_decoder_f TractionControlState_decode_ber; +der_type_encoder_f TractionControlState_encode_der; +xer_type_decoder_f TractionControlState_decode_xer; +xer_type_encoder_f TractionControlState_encode_xer; +per_type_decoder_f TractionControlState_decode_uper; +per_type_encoder_f TractionControlState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TractionControlState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h new file mode 100644 index 000000000..c3b49c216 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TrailerWeight.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrailerWeight_H_ +#define _TrailerWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerWeight */ +typedef long TrailerWeight_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; +asn_struct_free_f TrailerWeight_free; +asn_struct_print_f TrailerWeight_print; +asn_constr_check_f TrailerWeight_constraint; +ber_type_decoder_f TrailerWeight_decode_ber; +der_type_encoder_f TrailerWeight_encode_der; +xer_type_decoder_f TrailerWeight_decode_xer; +xer_type_encoder_f TrailerWeight_encode_xer; +per_type_decoder_f TrailerWeight_decode_uper; +per_type_encoder_f TrailerWeight_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h new file mode 100644 index 000000000..f8814f87e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransitStatus.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TransitStatus_H_ +#define _TransitStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitStatus { + TransitStatus_none = 0, + TransitStatus_anADAuse = 1, + TransitStatus_aBikeLoad = 2, + TransitStatus_doorOpen = 3, + TransitStatus_occM = 4, + TransitStatus_occL = 5 +} e_TransitStatus; + +/* TransitStatus */ +typedef BIT_STRING_t TransitStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; +asn_struct_free_f TransitStatus_free; +asn_struct_print_f TransitStatus_print; +asn_constr_check_f TransitStatus_constraint; +ber_type_decoder_f TransitStatus_decode_ber; +der_type_encoder_f TransitStatus_encode_der; +xer_type_decoder_f TransitStatus_decode_xer; +xer_type_encoder_f TransitStatus_encode_xer; +per_type_decoder_f TransitStatus_decode_uper; +per_type_encoder_f TransitStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h new file mode 100644 index 000000000..5b4323556 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionAndSpeed.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TransmissionAndSpeed_H_ +#define _TransmissionAndSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TransmissionAndSpeed */ +typedef OCTET_STRING_t TransmissionAndSpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; +asn_struct_free_f TransmissionAndSpeed_free; +asn_struct_print_f TransmissionAndSpeed_print; +asn_constr_check_f TransmissionAndSpeed_constraint; +ber_type_decoder_f TransmissionAndSpeed_decode_ber; +der_type_encoder_f TransmissionAndSpeed_encode_der; +xer_type_decoder_f TransmissionAndSpeed_decode_xer; +xer_type_encoder_f TransmissionAndSpeed_encode_xer; +per_type_decoder_f TransmissionAndSpeed_decode_uper; +per_type_encoder_f TransmissionAndSpeed_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionAndSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h new file mode 100644 index 000000000..279323c56 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TransmissionState.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TransmissionState_H_ +#define _TransmissionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransmissionState { + TransmissionState_neutral = 0, + TransmissionState_park = 1, + TransmissionState_forwardGears = 2, + TransmissionState_reverseGears = 3, + TransmissionState_reserved1 = 4, + TransmissionState_reserved2 = 5, + TransmissionState_reserved3 = 6, + TransmissionState_unavailable = 7 + /* + * Enumeration is extensible + */ +} e_TransmissionState; + +/* TransmissionState */ +typedef long TransmissionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; +asn_struct_free_f TransmissionState_free; +asn_struct_print_f TransmissionState_print; +asn_constr_check_f TransmissionState_constraint; +ber_type_decoder_f TransmissionState_decode_ber; +der_type_encoder_f TransmissionState_encode_der; +xer_type_decoder_f TransmissionState_decode_xer; +xer_type_encoder_f TransmissionState_encode_xer; +per_type_decoder_f TransmissionState_decode_uper; +per_type_encoder_f TransmissionState_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h new file mode 100644 index 000000000..93fbe3d08 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInfoType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TravelerInfoType_H_ +#define _TravelerInfoType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerInfoType { + TravelerInfoType_unknown = 0, + TravelerInfoType_advisory = 1, + TravelerInfoType_roadSignage = 2, + TravelerInfoType_commercialSignage = 3 + /* + * Enumeration is extensible + */ +} e_TravelerInfoType; + +/* TravelerInfoType */ +typedef long TravelerInfoType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; +asn_struct_free_f TravelerInfoType_free; +asn_struct_print_f TravelerInfoType_print; +asn_constr_check_f TravelerInfoType_constraint; +ber_type_decoder_f TravelerInfoType_decode_ber; +der_type_encoder_f TravelerInfoType_encode_der; +xer_type_decoder_f TravelerInfoType_decode_xer; +xer_type_encoder_f TravelerInfoType_encode_xer; +per_type_decoder_f TravelerInfoType_decode_uper; +per_type_encoder_f TravelerInfoType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerInfoType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h new file mode 100644 index 000000000..e82f4db1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TravelerInformation.h @@ -0,0 +1,139 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TravelerInformation_H_ +#define _TravelerInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "UniqueMSGID.h" +#include "URL-Base.h" +#include "Count.h" +#include "MsgCRC.h" +#include "asn_SEQUENCE_OF.h" +#include "TravelerInfoType.h" +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "MinutesDuration.h" +#include "SignPrority.h" +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "URL-Short.h" +#include "FurtherInfoID.h" +#include "RoadSignID.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE_OF.h" +#include "ITIScodesAndText.h" +#include "WorkZone.h" +#include "GenericSignage.h" +#include "SpeedLimit.h" +#include "ExitService.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum msgId_PR { + msgId_PR_NOTHING, /* No components present */ + msgId_PR_furtherInfoID, + msgId_PR_roadSignID +} msgId_PR; +typedef enum content_PR { + content_PR_NOTHING, /* No components present */ + content_PR_advisory, + content_PR_workZone, + content_PR_genericSign, + content_PR_speedLimit, + content_PR_exitService +} content_PR; + +/* Forward declarations */ +struct Position3D; +struct ValidRegion; + +/* TravelerInformation */ +typedef struct TravelerInformation { + DSRCmsgID_t msgID; + UniqueMSGID_t *packetID /* OPTIONAL */; + URL_Base_t *urlB /* OPTIONAL */; + Count_t *dataFrameCount /* OPTIONAL */; + struct TravelerInformation__dataFrames { + A_SEQUENCE_OF2(TravelerInformation__dataFrames__List, struct TravelerInformation__dataFrames__Member { + TravelerInfoType_t frameType; + struct msgId { + msgId_PR present; + union msgId_u { + FurtherInfoID_t furtherInfoID; + RoadSignID_t roadSignID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } msgId; + DYear_t *startYear /* OPTIONAL */; + MinuteOfTheYear_t startTime; + MinutesDuration_t duratonTime; + SignPrority_t priority; + struct Position3D *commonAnchor /* OPTIONAL */; + LaneWidth_t *commonLaneWidth /* OPTIONAL */; + DirectionOfUse_t *commonDirectionality /* OPTIONAL */; + struct regions { + A_SEQUENCE_OF(struct ValidRegion) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regions; + struct content { + content_PR present; + union content_u { + ITIScodesAndText_t advisory; + WorkZone_t workZone; + GenericSignage_t genericSign; + SpeedLimit_t speedLimit; + ExitService_t exitService; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } content; + URL_Short_t *url /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } dataFrames; + MsgCRC_t crc; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" +#include "ValidRegion.h" + +#endif /* _TravelerInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h new file mode 100644 index 000000000..e2f3d79a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/TxTime.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TxTime_H_ +#define _TxTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TxTime */ +typedef long TxTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TxTime; +asn_struct_free_f TxTime_free; +asn_struct_print_f TxTime_print; +asn_constr_check_f TxTime_constraint; +ber_type_decoder_f TxTime_decode_ber; +der_type_encoder_f TxTime_encode_der; +xer_type_decoder_f TxTime_decode_xer; +xer_type_encoder_f TxTime_encode_xer; +per_type_decoder_f TxTime_decode_uper; +per_type_encoder_f TxTime_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TxTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h new file mode 100644 index 000000000..face6e72b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPER-Blob.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _UPER_Blob_H_ +#define _UPER_Blob_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UPER-Blob */ +typedef OCTET_STRING_t UPER_Blob_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UPER_Blob; +asn_struct_free_f UPER_Blob_free; +asn_struct_print_f UPER_Blob_print; +asn_constr_check_f UPER_Blob_constraint; +ber_type_decoder_f UPER_Blob_decode_ber; +der_type_encoder_f UPER_Blob_encode_der; +xer_type_decoder_f UPER_Blob_decode_xer; +xer_type_encoder_f UPER_Blob_encode_xer; +per_type_decoder_f UPER_Blob_decode_uper; +per_type_encoder_f UPER_Blob_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UPER_Blob_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h new file mode 100644 index 000000000..e4a468017 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/UPERframe.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _UPERframe_H_ +#define _UPERframe_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID2.h" +#include "DSRCmsgSubID.h" +#include "MinuteOfTheYear.h" +#include "UPER-Blob.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UPERframe */ +typedef struct UPERframe { + DSRCmsgID2_t msgID; + DSRCmsgSubID_t *msgSubID /* OPTIONAL */; + MinuteOfTheYear_t *timeStamp /* OPTIONAL */; + DSRCmsgID2_t contentID; + UPER_Blob_t msgBlob; + /* + * This type is extensible, + * possible extensions are below. + */ + MsgCRC_t *crc /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UPERframe_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UPERframe; + +#ifdef __cplusplus +} +#endif + +#endif /* _UPERframe_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h new file mode 100644 index 000000000..5b10e94dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Base.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _URL_Base_H_ +#define _URL_Base_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Base */ +typedef IA5String_t URL_Base_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Base; +asn_struct_free_f URL_Base_free; +asn_struct_print_f URL_Base_print; +asn_constr_check_f URL_Base_constraint; +ber_type_decoder_f URL_Base_decode_ber; +der_type_encoder_f URL_Base_encode_der; +xer_type_decoder_f URL_Base_decode_xer; +xer_type_encoder_f URL_Base_encode_xer; +per_type_decoder_f URL_Base_decode_uper; +per_type_encoder_f URL_Base_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Base_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h new file mode 100644 index 000000000..3b9c2cb7d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Link.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _URL_Link_H_ +#define _URL_Link_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Link */ +typedef IA5String_t URL_Link_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Link; +asn_struct_free_f URL_Link_free; +asn_struct_print_f URL_Link_print; +asn_constr_check_f URL_Link_constraint; +ber_type_decoder_f URL_Link_decode_ber; +der_type_encoder_f URL_Link_encode_der; +xer_type_decoder_f URL_Link_decode_xer; +xer_type_encoder_f URL_Link_encode_xer; +per_type_decoder_f URL_Link_decode_uper; +per_type_encoder_f URL_Link_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Link_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h new file mode 100644 index 000000000..721afbc9f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/URL-Short.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _URL_Short_H_ +#define _URL_Short_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Short */ +typedef IA5String_t URL_Short_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Short; +asn_struct_free_f URL_Short_free; +asn_struct_print_f URL_Short_print; +asn_constr_check_f URL_Short_constraint; +ber_type_decoder_f URL_Short_decode_ber; +der_type_encoder_f URL_Short_encode_der; +xer_type_decoder_f URL_Short_decode_xer; +xer_type_encoder_f URL_Short_encode_xer; +per_type_decoder_f URL_Short_decode_uper; +per_type_encoder_f URL_Short_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Short_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h new file mode 100644 index 000000000..5e077e262 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/UUIDType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_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_r41/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h new file mode 100644 index 000000000..c55ff8c6f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/UniqueMSGID.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _UniqueMSGID_H_ +#define _UniqueMSGID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UniqueMSGID */ +typedef OCTET_STRING_t UniqueMSGID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; +asn_struct_free_f UniqueMSGID_free; +asn_struct_print_f UniqueMSGID_print; +asn_constr_check_f UniqueMSGID_constraint; +ber_type_decoder_f UniqueMSGID_decode_ber; +der_type_encoder_f UniqueMSGID_encode_der; +xer_type_decoder_f UniqueMSGID_decode_xer; +xer_type_encoder_f UniqueMSGID_encode_xer; +per_type_decoder_f UniqueMSGID_decode_uper; +per_type_encoder_f UniqueMSGID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UniqueMSGID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h new file mode 100644 index 000000000..c755d83cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/UserSizeAndBehaviour.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#ifndef _UserSizeAndBehaviour_H_ +#define _UserSizeAndBehaviour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum UserSizeAndBehaviour { + UserSizeAndBehaviour_unavailable = 0, + UserSizeAndBehaviour_smallStature = 1, + UserSizeAndBehaviour_largeStature = 2, + UserSizeAndBehaviour_erraticMoving = 3, + UserSizeAndBehaviour_slowMoving = 4 +} e_UserSizeAndBehaviour; + +/* UserSizeAndBehaviour */ +typedef BIT_STRING_t UserSizeAndBehaviour_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; +asn_struct_free_f UserSizeAndBehaviour_free; +asn_struct_print_f UserSizeAndBehaviour_print; +asn_constr_check_f UserSizeAndBehaviour_constraint; +ber_type_decoder_f UserSizeAndBehaviour_decode_ber; +der_type_encoder_f UserSizeAndBehaviour_encode_der; +xer_type_decoder_f UserSizeAndBehaviour_decode_xer; +xer_type_encoder_f UserSizeAndBehaviour_encode_xer; +per_type_decoder_f UserSizeAndBehaviour_decode_uper; +per_type_encoder_f UserSizeAndBehaviour_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UserSizeAndBehaviour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h new file mode 100644 index 000000000..179ea813b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VINstring.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VINstring_H_ +#define _VINstring_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VINstring */ +typedef OCTET_STRING_t VINstring_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VINstring; +asn_struct_free_f VINstring_free; +asn_struct_print_f VINstring_print; +asn_constr_check_f VINstring_constraint; +ber_type_decoder_f VINstring_decode_ber; +der_type_encoder_f VINstring_encode_der; +xer_type_decoder_f VINstring_decode_xer; +xer_type_encoder_f VINstring_encode_xer; +per_type_decoder_f VINstring_decode_uper; +per_type_encoder_f VINstring_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VINstring_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h new file mode 100644 index 000000000..9e3832330 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ValidRegion.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ValidRegion_H_ +#define _ValidRegion_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "ShapePointSet.h" +#include "Circle.h" +#include "RegionPointSet.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ValidRegion__area_PR { + ValidRegion__area_PR_NOTHING, /* No components present */ + ValidRegion__area_PR_shapePointSet, + ValidRegion__area_PR_circle, + ValidRegion__area_PR_regionPointSet +} ValidRegion__area_PR; + +/* ValidRegion */ +typedef struct ValidRegion { + HeadingSlice_t direction; + Extent_t *extent /* OPTIONAL */; + struct ValidRegion__area { + ValidRegion__area_PR present; + union ValidRegion__area_u { + ShapePointSet_t shapePointSet; + Circle_t circle; + RegionPointSet_t regionPointSet; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } area; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ValidRegion_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; + +#ifdef __cplusplus +} +#endif + +#endif /* _ValidRegion_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h new file mode 100644 index 000000000..85ba7cb1c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleDescriptionType.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#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_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_r41/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h new file mode 100644 index 000000000..3124f65a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleGroupAffected.h @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleGroupAffected_H_ +#define _VehicleGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleGroupAffected { + VehicleGroupAffected_all_vehicles = 9217, + VehicleGroupAffected_bicycles = 9218, + VehicleGroupAffected_motorcycles = 9219, + VehicleGroupAffected_cars = 9220, + VehicleGroupAffected_light_vehicles = 9221, + VehicleGroupAffected_cars_and_light_vehicles = 9222, + VehicleGroupAffected_cars_with_trailers = 9223, + VehicleGroupAffected_cars_with_recreational_trailers = 9224, + VehicleGroupAffected_vehicles_with_trailers = 9225, + VehicleGroupAffected_heavy_vehicles = 9226, + VehicleGroupAffected_trucks = 9227, + VehicleGroupAffected_buses = 9228, + VehicleGroupAffected_articulated_buses = 9229, + VehicleGroupAffected_school_buses = 9230, + VehicleGroupAffected_vehicles_with_semi_trailers = 9231, + VehicleGroupAffected_vehicles_with_double_trailers = 9232, + VehicleGroupAffected_high_profile_vehicles = 9233, + VehicleGroupAffected_wide_vehicles = 9234, + VehicleGroupAffected_long_vehicles = 9235, + VehicleGroupAffected_hazardous_loads = 9236, + VehicleGroupAffected_exceptional_loads = 9237, + VehicleGroupAffected_abnormal_loads = 9238, + VehicleGroupAffected_convoys = 9239, + VehicleGroupAffected_maintenance_vehicles = 9240, + VehicleGroupAffected_delivery_vehicles = 9241, + VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, + VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, + VehicleGroupAffected_vehicles_with_parking_permits = 9244, + VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, + VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, + VehicleGroupAffected_gas_powered_vehicles = 9247, + VehicleGroupAffected_diesel_powered_vehicles = 9248, + VehicleGroupAffected_lPG_vehicles = 9249, + VehicleGroupAffected_military_convoys = 9250, + VehicleGroupAffected_military_vehicles = 9251 + /* + * Enumeration is extensible + */ +} e_VehicleGroupAffected; + +/* VehicleGroupAffected */ +typedef long VehicleGroupAffected_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; +asn_struct_free_f VehicleGroupAffected_free; +asn_struct_print_f VehicleGroupAffected_print; +asn_constr_check_f VehicleGroupAffected_constraint; +ber_type_decoder_f VehicleGroupAffected_decode_ber; +der_type_encoder_f VehicleGroupAffected_encode_der; +xer_type_decoder_f VehicleGroupAffected_decode_xer; +xer_type_encoder_f VehicleGroupAffected_encode_xer; +per_type_decoder_f VehicleGroupAffected_decode_uper; +per_type_encoder_f VehicleGroupAffected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h new file mode 100644 index 000000000..0cac51208 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleHeight.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleHeight_H_ +#define _VehicleHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleHeight */ +typedef long VehicleHeight_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; +asn_struct_free_f VehicleHeight_free; +asn_struct_print_f VehicleHeight_print; +asn_constr_check_f VehicleHeight_constraint; +ber_type_decoder_f VehicleHeight_decode_ber; +der_type_encoder_f VehicleHeight_encode_der; +xer_type_decoder_f VehicleHeight_decode_xer; +xer_type_encoder_f VehicleHeight_encode_xer; +per_type_decoder_f VehicleHeight_decode_uper; +per_type_encoder_f VehicleHeight_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h new file mode 100644 index 000000000..7662f9a97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleIdent.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleIdent_H_ +#define _VehicleIdent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "VINstring.h" +#include "IA5String.h" +#include "TemporaryID.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "ResponderGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleIdent__vehicleClass_PR { + VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ + VehicleIdent__vehicleClass_PR_vGroup, + VehicleIdent__vehicleClass_PR_rGroup, + VehicleIdent__vehicleClass_PR_rEquip +} VehicleIdent__vehicleClass_PR; + +/* VehicleIdent */ +typedef struct VehicleIdent { + DescriptiveName_t *name /* OPTIONAL */; + VINstring_t *vin /* OPTIONAL */; + IA5String_t *ownerCode /* OPTIONAL */; + TemporaryID_t *id /* OPTIONAL */; + VehicleType_t *vehicleType /* OPTIONAL */; + struct VehicleIdent__vehicleClass { + VehicleIdent__vehicleClass_PR present; + union VehicleIdent__vehicleClass_u { + VehicleGroupAffected_t vGroup; + ResponderGroupAffected_t rGroup; + IncidentResponseEquipment_t rEquip; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleClass; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleIdent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleIdent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h new file mode 100644 index 000000000..c255648d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleLength.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleLength_H_ +#define _VehicleLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleLength */ +typedef long VehicleLength_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; +asn_struct_free_f VehicleLength_free; +asn_struct_print_f VehicleLength_print; +asn_constr_check_f VehicleLength_constraint; +ber_type_decoder_f VehicleLength_decode_ber; +der_type_encoder_f VehicleLength_encode_der; +xer_type_decoder_f VehicleLength_decode_xer; +xer_type_encoder_f VehicleLength_encode_xer; +per_type_decoder_f VehicleLength_decode_uper; +per_type_encoder_f VehicleLength_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h new file mode 100644 index 000000000..17b60d13b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleMass.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleMass_H_ +#define _VehicleMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleMass */ +typedef long VehicleMass_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; +asn_struct_free_f VehicleMass_free; +asn_struct_print_f VehicleMass_print; +asn_constr_check_f VehicleMass_constraint; +ber_type_decoder_f VehicleMass_decode_ber; +der_type_encoder_f VehicleMass_encode_der; +xer_type_decoder_f VehicleMass_decode_xer; +xer_type_encoder_f VehicleMass_encode_xer; +per_type_decoder_f VehicleMass_decode_uper; +per_type_encoder_f VehicleMass_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h new file mode 100644 index 000000000..032613652 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleRequestStatus.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleRequestStatus_H_ +#define _VehicleRequestStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleRequestStatus */ +typedef OCTET_STRING_t VehicleRequestStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleRequestStatus; +asn_struct_free_f VehicleRequestStatus_free; +asn_struct_print_f VehicleRequestStatus_print; +asn_constr_check_f VehicleRequestStatus_constraint; +ber_type_decoder_f VehicleRequestStatus_decode_ber; +der_type_encoder_f VehicleRequestStatus_encode_der; +xer_type_decoder_f VehicleRequestStatus_decode_xer; +xer_type_encoder_f VehicleRequestStatus_encode_xer; +per_type_decoder_f VehicleRequestStatus_decode_uper; +per_type_encoder_f VehicleRequestStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleRequestStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h new file mode 100644 index 000000000..d4ed1d6c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSafetyExtension.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleSafetyExtension_H_ +#define _VehicleSafetyExtension_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EventFlags.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathHistory; +struct PathPrediction; +struct RTCMPackage; + +/* VehicleSafetyExtension */ +typedef struct VehicleSafetyExtension { + EventFlags_t *events /* OPTIONAL */; + struct PathHistory *pathHistory /* OPTIONAL */; + struct PathPrediction *pathPrediction /* OPTIONAL */; + struct RTCMPackage *theRTCM /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSafetyExtension_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtension; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistory.h" +#include "PathPrediction.h" +#include "RTCMPackage.h" + +#endif /* _VehicleSafetyExtension_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h new file mode 100644 index 000000000..0aeb41113 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleSize.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleSize_H_ +#define _VehicleSize_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSize */ +typedef struct VehicleSize { + VehicleWidth_t width; + VehicleLength_t length; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSize_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h new file mode 100644 index 000000000..4b2c0329c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatus.h @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleStatus_H_ +#define _VehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "LightbarInUse.h" +#include "BrakeSystemStatus.h" +#include "BrakeAppliedPressure.h" +#include "CoefficientOfFriction.h" +#include "SunSensor.h" +#include "RainSensor.h" +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "ThrottlePosition.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "SpeedConfidence.h" +#include "GPSstatus.h" +#include "WiperStatusFront.h" +#include "WiperRate.h" +#include "WiperStatusRear.h" +#include "constr_SEQUENCE.h" +#include "SteeringWheelAngle.h" +#include "SteeringWheelAngleConfidence.h" +#include "SteeringWheelAngleRateOfChange.h" +#include "DrivingWheelAngle.h" +#include "AccelerationSet4Way.h" +#include "VerticalAccelerationThreshold.h" +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "ObstacleDistance.h" +#include "ObstacleDirection.h" +#include "DDateTime.h" +#include "VehicleHeight.h" +#include "BumperHeights.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "VehicleType.h" +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct VehicleIdent; +struct J1939data; +struct ConfidenceSet; + +/* VehicleStatus */ +typedef struct VehicleStatus { + ExteriorLights_t *lights /* OPTIONAL */; + LightbarInUse_t *lightBar /* OPTIONAL */; + struct VehicleStatus__wipers { + WiperStatusFront_t statusFront; + WiperRate_t rateFront; + WiperStatusRear_t *statusRear /* OPTIONAL */; + WiperRate_t *rateRear /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *wipers; + BrakeSystemStatus_t *brakeStatus /* OPTIONAL */; + BrakeAppliedPressure_t *brakePressure /* OPTIONAL */; + CoefficientOfFriction_t *roadFriction /* OPTIONAL */; + SunSensor_t *sunData /* OPTIONAL */; + RainSensor_t *rainData /* OPTIONAL */; + AmbientAirTemperature_t *airTemp /* OPTIONAL */; + AmbientAirPressure_t *airPres /* OPTIONAL */; + struct VehicleStatus__steering { + SteeringWheelAngle_t angle; + SteeringWheelAngleConfidence_t *confidence /* OPTIONAL */; + SteeringWheelAngleRateOfChange_t *rate /* OPTIONAL */; + DrivingWheelAngle_t *wheels /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *steering; + struct VehicleStatus__accelSets { + AccelerationSet4Way_t *accel4way /* OPTIONAL */; + VerticalAccelerationThreshold_t *vertAccelThres /* OPTIONAL */; + YawRateConfidence_t *yawRateCon /* OPTIONAL */; + AccelerationConfidence_t *hozAccelCon /* OPTIONAL */; + struct ConfidenceSet *confidenceSet /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *accelSets; + struct VehicleStatus__object { + ObstacleDistance_t obDist; + ObstacleDirection_t obDirect; + DDateTime_t dateTime; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *object; + struct FullPositionVector *fullPos /* OPTIONAL */; + ThrottlePosition_t *throttlePos /* OPTIONAL */; + SpeedandHeadingandThrottleConfidence_t *speedHeadC /* OPTIONAL */; + SpeedConfidence_t *speedC /* OPTIONAL */; + struct VehicleStatus__vehicleData { + VehicleHeight_t height; + BumperHeights_t bumpers; + VehicleMass_t mass; + TrailerWeight_t trailerWeight; + VehicleType_t type; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleData; + struct VehicleIdent *vehicleIdent /* OPTIONAL */; + struct J1939data *j1939data /* OPTIONAL */; + struct VehicleStatus__weatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate /* OPTIONAL */; + EssPrecipSituation_t *precipSituation /* OPTIONAL */; + EssSolarRadiation_t *solarRadiation /* OPTIONAL */; + EssMobileFriction_t *friction /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *weatherReport; + GPSstatus_t *gpsStatus /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "VehicleIdent.h" +#include "J1939data.h" +#include "ConfidenceSet.h" + +#endif /* _VehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h new file mode 100644 index 000000000..ff663f903 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusDeviceTypeTag.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleStatusDeviceTypeTag_H_ +#define _VehicleStatusDeviceTypeTag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleStatusDeviceTypeTag { + VehicleStatusDeviceTypeTag_unknown = 0, + VehicleStatusDeviceTypeTag_lights = 1, + VehicleStatusDeviceTypeTag_wipers = 2, + VehicleStatusDeviceTypeTag_brakes = 3, + VehicleStatusDeviceTypeTag_stab = 4, + VehicleStatusDeviceTypeTag_trac = 5, + VehicleStatusDeviceTypeTag_abs = 6, + VehicleStatusDeviceTypeTag_sunS = 7, + VehicleStatusDeviceTypeTag_rainS = 8, + VehicleStatusDeviceTypeTag_airTemp = 9, + VehicleStatusDeviceTypeTag_steering = 10, + VehicleStatusDeviceTypeTag_vertAccelThres = 11, + VehicleStatusDeviceTypeTag_vertAccel = 12, + VehicleStatusDeviceTypeTag_hozAccelLong = 13, + VehicleStatusDeviceTypeTag_hozAccelLat = 14, + VehicleStatusDeviceTypeTag_hozAccelCon = 15, + VehicleStatusDeviceTypeTag_accel4way = 16, + VehicleStatusDeviceTypeTag_confidenceSet = 17, + VehicleStatusDeviceTypeTag_obDist = 18, + VehicleStatusDeviceTypeTag_obDirect = 19, + VehicleStatusDeviceTypeTag_yaw = 20, + VehicleStatusDeviceTypeTag_yawRateCon = 21, + VehicleStatusDeviceTypeTag_dateTime = 22, + VehicleStatusDeviceTypeTag_fullPos = 23, + VehicleStatusDeviceTypeTag_position2D = 24, + VehicleStatusDeviceTypeTag_position3D = 25, + VehicleStatusDeviceTypeTag_vehicle = 26, + VehicleStatusDeviceTypeTag_speedHeadC = 27, + VehicleStatusDeviceTypeTag_speedC = 28 + /* + * Enumeration is extensible + */ +} e_VehicleStatusDeviceTypeTag; + +/* VehicleStatusDeviceTypeTag */ +typedef long VehicleStatusDeviceTypeTag_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; +asn_struct_free_f VehicleStatusDeviceTypeTag_free; +asn_struct_print_f VehicleStatusDeviceTypeTag_print; +asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; +ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; +der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; +xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; +xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusDeviceTypeTag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h new file mode 100644 index 000000000..1b5b852fb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleStatusRequest.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleStatusRequest_H_ +#define _VehicleStatusRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleStatusDeviceTypeTag.h" +#include "NativeInteger.h" +#include "BOOLEAN.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleStatusRequest */ +typedef struct VehicleStatusRequest { + VehicleStatusDeviceTypeTag_t dataType; + long *subType /* OPTIONAL */; + long *sendOnLessThenValue /* OPTIONAL */; + long *sendOnMoreThenValue /* OPTIONAL */; + BOOLEAN_t *sendAll /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h new file mode 100644 index 000000000..aeabec683 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePosition.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleToLanePosition_H_ +#define _VehicleToLanePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "LaneID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleToLanePosition */ +typedef struct VehicleToLanePosition { + StationID_t stationID; + LaneID_t laneID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePosition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleToLanePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h new file mode 100644 index 000000000..64bd00549 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleToLanePositionList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleToLanePositionList_H_ +#define _VehicleToLanePositionList_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 VehicleToLanePosition; + +/* VehicleToLanePositionList */ +typedef struct VehicleToLanePositionList { + A_SEQUENCE_OF(struct VehicleToLanePosition) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePositionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleToLanePosition.h" + +#endif /* _VehicleToLanePositionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h new file mode 100644 index 000000000..89cf022c8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleType.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleType_H_ +#define _VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleType { + VehicleType_none = 0, + VehicleType_unknown = 1, + VehicleType_special = 2, + VehicleType_moto = 3, + VehicleType_car = 4, + VehicleType_carOther = 5, + VehicleType_bus = 6, + VehicleType_axleCnt2 = 7, + VehicleType_axleCnt3 = 8, + VehicleType_axleCnt4 = 9, + VehicleType_axleCnt4Trailer = 10, + VehicleType_axleCnt5Trailer = 11, + VehicleType_axleCnt6Trailer = 12, + VehicleType_axleCnt5MultiTrailer = 13, + VehicleType_axleCnt6MultiTrailer = 14, + VehicleType_axleCnt7MultiTrailer = 15 + /* + * Enumeration is extensible + */ +} e_VehicleType; + +/* VehicleType */ +typedef long VehicleType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleType; +asn_struct_free_f VehicleType_free; +asn_struct_print_f VehicleType_print; +asn_constr_check_f VehicleType_constraint; +ber_type_decoder_f VehicleType_decode_ber; +der_type_encoder_f VehicleType_encode_der; +xer_type_decoder_f VehicleType_decode_xer; +xer_type_encoder_f VehicleType_encode_xer; +per_type_decoder_f VehicleType_decode_uper; +per_type_encoder_f VehicleType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h new file mode 100644 index 000000000..a93dfa90e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VehicleWidth.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleWidth_H_ +#define _VehicleWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleWidth */ +typedef long VehicleWidth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; +asn_struct_free_f VehicleWidth_free; +asn_struct_print_f VehicleWidth_print; +asn_constr_check_f VehicleWidth_constraint; +ber_type_decoder_f VehicleWidth_decode_ber; +der_type_encoder_f VehicleWidth_encode_der; +xer_type_decoder_f VehicleWidth_decode_xer; +xer_type_encoder_f VehicleWidth_encode_xer; +per_type_decoder_f VehicleWidth_decode_uper; +per_type_encoder_f VehicleWidth_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h new file mode 100644 index 000000000..538aa923e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Velocity.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Velocity_H_ +#define _Velocity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Velocity */ +typedef long Velocity_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Velocity; +asn_struct_free_f Velocity_free; +asn_struct_print_f Velocity_print; +asn_constr_check_f Velocity_constraint; +ber_type_decoder_f Velocity_decode_ber; +der_type_encoder_f Velocity_encode_der; +xer_type_decoder_f Velocity_decode_xer; +xer_type_encoder_f Velocity_encode_xer; +per_type_decoder_f Velocity_decode_uper; +per_type_encoder_f Velocity_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Velocity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h new file mode 100644 index 000000000..62aa57d8a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAcceleration.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VerticalAcceleration_H_ +#define _VerticalAcceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VerticalAcceleration */ +typedef long VerticalAcceleration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; +asn_struct_free_f VerticalAcceleration_free; +asn_struct_print_f VerticalAcceleration_print; +asn_constr_check_f VerticalAcceleration_constraint; +ber_type_decoder_f VerticalAcceleration_decode_ber; +der_type_encoder_f VerticalAcceleration_encode_der; +xer_type_decoder_f VerticalAcceleration_decode_xer; +xer_type_encoder_f VerticalAcceleration_encode_xer; +per_type_decoder_f VerticalAcceleration_decode_uper; +per_type_encoder_f VerticalAcceleration_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAcceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h new file mode 100644 index 000000000..7bd40a402 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/VerticalAccelerationThreshold.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VerticalAccelerationThreshold_H_ +#define _VerticalAccelerationThreshold_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalAccelerationThreshold { + VerticalAccelerationThreshold_allOff = 0, + VerticalAccelerationThreshold_leftFront = 1, + VerticalAccelerationThreshold_leftRear = 2, + VerticalAccelerationThreshold_rightFront = 4, + VerticalAccelerationThreshold_rightRear = 8 +} e_VerticalAccelerationThreshold; + +/* VerticalAccelerationThreshold */ +typedef BIT_STRING_t VerticalAccelerationThreshold_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; +asn_struct_free_f VerticalAccelerationThreshold_free; +asn_struct_print_f VerticalAccelerationThreshold_print; +asn_constr_check_f VerticalAccelerationThreshold_constraint; +ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; +der_type_encoder_f VerticalAccelerationThreshold_encode_der; +xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; +xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; +per_type_decoder_f VerticalAccelerationThreshold_decode_uper; +per_type_encoder_f VerticalAccelerationThreshold_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAccelerationThreshold_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h new file mode 100644 index 000000000..ad311f033 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WaitOnStopline.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WaitOnStopline_H_ +#define _WaitOnStopline_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WaitOnStopline */ +typedef BOOLEAN_t WaitOnStopline_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; +asn_struct_free_f WaitOnStopline_free; +asn_struct_print_f WaitOnStopline_print; +asn_constr_check_f WaitOnStopline_constraint; +ber_type_decoder_f WaitOnStopline_decode_ber; +der_type_encoder_f WaitOnStopline_encode_der; +xer_type_decoder_f WaitOnStopline_decode_xer; +xer_type_encoder_f WaitOnStopline_encode_xer; +per_type_decoder_f WaitOnStopline_decode_uper; +per_type_encoder_f WaitOnStopline_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WaitOnStopline_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h new file mode 100644 index 000000000..b7ee6225b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelEndElectFault.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WheelEndElectFault_H_ +#define _WheelEndElectFault_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelEndElectFault { + WheelEndElectFault_bitOne = 1, + WheelEndElectFault_bitTwo = 2, + WheelEndElectFault_bitThree = 3, + WheelEndElectFault_bitFour = 4 +} e_WheelEndElectFault; + +/* WheelEndElectFault */ +typedef BIT_STRING_t WheelEndElectFault_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; +asn_struct_free_f WheelEndElectFault_free; +asn_struct_print_f WheelEndElectFault_print; +asn_constr_check_f WheelEndElectFault_constraint; +ber_type_decoder_f WheelEndElectFault_decode_ber; +der_type_encoder_f WheelEndElectFault_encode_der; +xer_type_decoder_f WheelEndElectFault_decode_xer; +xer_type_encoder_f WheelEndElectFault_encode_xer; +per_type_decoder_f WheelEndElectFault_decode_uper; +per_type_encoder_f WheelEndElectFault_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelEndElectFault_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h new file mode 100644 index 000000000..ceaf4e322 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WheelSensorStatus.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WheelSensorStatus_H_ +#define _WheelSensorStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelSensorStatus { + WheelSensorStatus_off = 0, + WheelSensorStatus_on = 1, + WheelSensorStatus_notDefined = 2, + WheelSensorStatus_notSupoprted = 3 +} e_WheelSensorStatus; + +/* WheelSensorStatus */ +typedef long WheelSensorStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; +asn_struct_free_f WheelSensorStatus_free; +asn_struct_print_f WheelSensorStatus_print; +asn_constr_check_f WheelSensorStatus_constraint; +ber_type_decoder_f WheelSensorStatus_decode_ber; +der_type_encoder_f WheelSensorStatus_encode_der; +xer_type_decoder_f WheelSensorStatus_decode_xer; +xer_type_encoder_f WheelSensorStatus_encode_xer; +per_type_decoder_f WheelSensorStatus_decode_uper; +per_type_encoder_f WheelSensorStatus_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelSensorStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h new file mode 100644 index 000000000..94ed17183 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperRate.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WiperRate_H_ +#define _WiperRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperRate */ +typedef long WiperRate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperRate; +asn_struct_free_f WiperRate_free; +asn_struct_print_f WiperRate_print; +asn_constr_check_f WiperRate_constraint; +ber_type_decoder_f WiperRate_decode_ber; +der_type_encoder_f WiperRate_encode_der; +xer_type_decoder_f WiperRate_decode_xer; +xer_type_encoder_f WiperRate_encode_xer; +per_type_decoder_f WiperRate_decode_uper; +per_type_encoder_f WiperRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h new file mode 100644 index 000000000..d106d21d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatus.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WiperStatus_H_ +#define _WiperStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "WiperStatusFront.h" +#include "WiperRate.h" +#include "WiperStatusRear.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperStatus */ +typedef struct WiperStatus { + WiperStatusFront_t statusFront; + WiperRate_t rateFront; + WiperStatusRear_t *statusRear /* OPTIONAL */; + WiperRate_t *rateRear /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WiperStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h new file mode 100644 index 000000000..f313de060 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusFront.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WiperStatusFront_H_ +#define _WiperStatusFront_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WiperStatusFront { + WiperStatusFront_unavailable = 0, + WiperStatusFront_off = 1, + WiperStatusFront_intermittent = 2, + WiperStatusFront_low = 3, + WiperStatusFront_high = 4, + WiperStatusFront_washerInUse = 126, + WiperStatusFront_automaticPresent = 127 + /* + * Enumeration is extensible + */ +} e_WiperStatusFront; + +/* WiperStatusFront */ +typedef long WiperStatusFront_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperStatusFront; +asn_struct_free_f WiperStatusFront_free; +asn_struct_print_f WiperStatusFront_print; +asn_constr_check_f WiperStatusFront_constraint; +ber_type_decoder_f WiperStatusFront_decode_ber; +der_type_encoder_f WiperStatusFront_encode_der; +xer_type_decoder_f WiperStatusFront_decode_xer; +xer_type_encoder_f WiperStatusFront_encode_xer; +per_type_decoder_f WiperStatusFront_decode_uper; +per_type_encoder_f WiperStatusFront_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatusFront_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h new file mode 100644 index 000000000..c493369cd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WiperStatusRear.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WiperStatusRear_H_ +#define _WiperStatusRear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WiperStatusRear { + WiperStatusRear_unavailable = 0, + WiperStatusRear_off = 1, + WiperStatusRear_intermittent = 2, + WiperStatusRear_low = 3, + WiperStatusRear_high = 4, + WiperStatusRear_washerInUse = 126, + WiperStatusRear_automaticPresent = 127 + /* + * Enumeration is extensible + */ +} e_WiperStatusRear; + +/* WiperStatusRear */ +typedef long WiperStatusRear_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperStatusRear; +asn_struct_free_f WiperStatusRear_free; +asn_struct_print_f WiperStatusRear_print; +asn_constr_check_f WiperStatusRear_constraint; +ber_type_decoder_f WiperStatusRear_decode_ber; +der_type_encoder_f WiperStatusRear_encode_der; +xer_type_decoder_f WiperStatusRear_decode_xer; +xer_type_encoder_f WiperStatusRear_encode_xer; +per_type_decoder_f WiperStatusRear_decode_uper; +per_type_encoder_f WiperStatusRear_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatusRear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h new file mode 100644 index 000000000..352fb810d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/WorkZone.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _WorkZone_H_ +#define _WorkZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "IA5String.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum item_wk_PR { + item_wk_PR_NOTHING, /* No components present */ + item_wk_PR_itis, + item_wk_PR_text +} item_wk_PR; + +/* WorkZone */ +typedef struct WorkZone { + A_SEQUENCE_OF(struct WorkZone__Member { + struct item_wk { + item_wk_PR present; + union item_wk_u { + ITIScodes_t itis; + IA5String_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item_wk; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WorkZone; + +#ifdef __cplusplus +} +#endif + +#endif /* _WorkZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h new file mode 100644 index 000000000..d8b1a9bc4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRate.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _YawRate_H_ +#define _YawRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawRate */ +typedef long YawRate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_YawRate; +asn_struct_free_f YawRate_free; +asn_struct_print_f YawRate_print; +asn_constr_check_f YawRate_constraint; +ber_type_decoder_f YawRate_decode_ber; +der_type_encoder_f YawRate_encode_der; +xer_type_decoder_f YawRate_decode_xer; +xer_type_encoder_f YawRate_encode_xer; +per_type_decoder_f YawRate_decode_uper; +per_type_encoder_f YawRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h new file mode 100644 index 000000000..cad867249 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/YawRateConfidence.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _YawRateConfidence_H_ +#define _YawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum YawRateConfidence { + YawRateConfidence_unavailable = 0, + YawRateConfidence_degSec_100_00 = 1, + YawRateConfidence_degSec_010_00 = 2, + YawRateConfidence_degSec_005_00 = 3, + YawRateConfidence_degSec_001_00 = 4, + YawRateConfidence_degSec_000_10 = 5, + YawRateConfidence_degSec_000_05 = 6, + YawRateConfidence_degSec_000_01 = 7 +} e_YawRateConfidence; + +/* YawRateConfidence */ +typedef long YawRateConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; +asn_struct_free_f YawRateConfidence_free; +asn_struct_print_f YawRateConfidence_print; +asn_constr_check_f YawRateConfidence_constraint; +ber_type_decoder_f YawRateConfidence_decode_ber; +der_type_encoder_f YawRateConfidence_encode_der; +xer_type_decoder_f YawRateConfidence_decode_xer; +xer_type_encoder_f YawRateConfidence_encode_xer; +per_type_decoder_f YawRateConfidence_decode_uper; +per_type_encoder_f YawRateConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h new file mode 100644 index 000000000..b5301dd44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/Year.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Year_H_ +#define _Year_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Year */ +typedef long Year_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Year; +asn_struct_free_f Year_free; +asn_struct_print_f Year_print; +asn_constr_check_f Year_constraint; +ber_type_decoder_f Year_decode_ber; +der_type_encoder_f Year_encode_der; +xer_type_decoder_f Year_decode_xer; +xer_type_encoder_f Year_encode_xer; +per_type_decoder_f Year_decode_uper; +per_type_encoder_f Year_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Year_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h new file mode 100644 index 000000000..92a020b8e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ZoneLength.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ZoneLength_H_ +#define _ZoneLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ZoneLength */ +typedef long ZoneLength_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; +asn_struct_free_f ZoneLength_free; +asn_struct_print_f ZoneLength_print; +asn_constr_check_f ZoneLength_constraint; +ber_type_decoder_f ZoneLength_decode_ber; +der_type_encoder_f ZoneLength_encode_der; +xer_type_decoder_f ZoneLength_decode_xer; +xer_type_encoder_f ZoneLength_encode_xer; +per_type_decoder_f ZoneLength_decode_uper; +per_type_encoder_f ZoneLength_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ZoneLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h new file mode 100644 index 000000000..10cc959d2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SEQUENCE_OF.h @@ -0,0 +1,54 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SEQUENCE_OF_H +#define ASN_SEQUENCE_OF_H + +#include "asn_SET_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * SEQUENCE OF is the same as SET OF with a tiny difference: + * the delete operation preserves the initial order of elements + * and thus MAY operate in non-constant time. + */ +#define A_SEQUENCE_OF(type) A_SET_OF(type) + +#define A_SEQUENCE_OF2(name, type) A_SET_OF2(name, type) + +#define ASN_SEQUENCE_ADD(headptr, ptr) \ + asn_sequence_add((headptr), (ptr)) + +/*********************************************** + * Implementation of the SEQUENCE OF structure. + */ + +#define asn_sequence_add asn_set_add +#define asn_sequence_empty asn_set_empty + +/* + * Delete the element from the set by its number (base 0). + * This is NOT a constant-time operation. + * The order of elements is preserved. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; +#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) +#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h new file mode 100644 index 000000000..168bf8bcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_SET_OF.h @@ -0,0 +1,70 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SET_OF_H +#define ASN_SET_OF_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(void *); \ + } + +#define A_SET_OF2(name, type) \ + struct name { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(void *); \ + } + +#define ASN_SET_ADD(headptr, ptr) \ + asn_set_add((headptr), (ptr)) + +/******************************************* + * Implementation of the SET OF structure. + */ + +/* + * Add another structure into the set by its pointer. + * RETURN VALUES: + * 0 for success and -1/errno for failure. + */ +int asn_set_add(void *asn_set_of_x, void *ptr); + +/* + * Delete the element from the set by its number (base 0). + * This is a constant-time operation. The order of elements before the + * deleted ones is guaranteed, the order of elements after the deleted + * one is NOT guaranteed. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_set_del(void *asn_set_of_x, int number, int _do_free); + +/* + * Empty the contents of the set. Will free the elements, if (*free) is given. + * Will NOT free the set itself. + */ +void asn_set_empty(void *asn_set_of_x); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SET_OF(void) asn_anonymous_set_; +#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) +#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h new file mode 100644 index 000000000..f40cd86ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_application.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2004, 2006 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Application-level ASN.1 callbacks. + */ +#ifndef _ASN_APPLICATION_H_ +#define _ASN_APPLICATION_H_ + +#include "asn_system.h" /* for platform-dependent types */ +#include "asn_codecs.h" /* for ASN.1 codecs specifics */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Generic type of an application-defined callback to return various + * types of data to the application. + * EXPECTED RETURN VALUES: + * -1: Failed to consume bytes. Abort the mission. + * Non-negative return values indicate success, and ignored. + */ +typedef int (asn_app_consume_bytes_f)(const void *buffer, size_t size, + void *application_specific_key); + +/* + * A callback of this type is called whenever constraint validation fails + * on some ASN.1 type. See "constraints.h" for more details on constraint + * validation. + * This callback specifies a descriptor of the ASN.1 type which failed + * the constraint check, as well as human readable message on what + * particular constraint has failed. + */ +typedef void (asn_app_constraint_failed_f)(void *application_specific_key, + struct asn_TYPE_descriptor_s *type_descriptor_which_failed, + const void *structure_which_failed_ptr, + const char *error_message_format, ...) GCC_PRINTFLIKE(4, 5); + +#ifdef __cplusplus +} +#endif + +#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ + +#endif /* _ASN_APPLICATION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h new file mode 100644 index 000000000..e5600142a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs.h @@ -0,0 +1,109 @@ +/*- + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ASN_CODECS_H_ +#define _ASN_CODECS_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * This structure defines a set of parameters that may be passed + * to every ASN.1 encoder or decoder function. + * WARNING: if max_stack_size member is set, and you are calling the + * function pointers of the asn_TYPE_descriptor_t directly, + * this structure must be ALLOCATED ON THE STACK! + * If you can't always satisfy this requirement, use ber_decode(), + * xer_decode() and uper_decode() functions instead. + */ +typedef struct asn_codec_ctx_s { + /* + * Limit the decoder routines to use no (much) more stack than a given + * number of bytes. Most of decoders are stack-based, and this + * would protect against stack overflows if the number of nested + * encodings is high. + * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, + * and are safe from this kind of overflow. + * A value from getrlimit(RLIMIT_STACK) may be used to initialize + * this variable. Be careful in multithreaded environments, as the + * stack size is rather limited. + */ + size_t max_stack_size; /* 0 disables stack bounds checking */ +} asn_codec_ctx_t; + +/* + * Type of the return value of the encoding functions (der_encode, xer_encode). + */ +typedef struct asn_enc_rval_s { + /* + * Number of bytes encoded. + * -1 indicates failure to encode the structure. + * In this case, the members below this one are meaningful. + */ + ssize_t encoded; + + /* + * Members meaningful when (encoded == -1), for post mortem analysis. + */ + + /* Type which cannot be encoded */ + struct asn_TYPE_descriptor_s *failed_type; + + /* Pointer to the structure of that type */ + void *structure_ptr; +} asn_enc_rval_t; +#define _ASN_ENCODE_FAILED do { \ + asn_enc_rval_t tmp_error; \ + tmp_error.encoded = -1; \ + tmp_error.failed_type = td; \ + tmp_error.structure_ptr = sptr; \ + ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define _ASN_ENCODED_OK(rval) do { \ + rval.structure_ptr = 0; \ + rval.failed_type = 0; \ + return rval; \ +} while(0) + +/* + * Type of the return value of the decoding functions (ber_decode, xer_decode) + * + * Please note that the number of consumed bytes is ALWAYS meaningful, + * even if code==RC_FAIL. This is to indicate the number of successfully + * decoded bytes, hence providing a possibility to fail with more diagnostics + * (i.e., print the offending remainder of the buffer). + */ +enum asn_dec_rval_code_e { + RC_OK, /* Decoded successfully */ + RC_WMORE, /* More data expected, call again */ + RC_FAIL /* Failure to decode data */ +}; +typedef struct asn_dec_rval_s { + enum asn_dec_rval_code_e code; /* Result code */ + size_t consumed; /* Number of bytes consumed */ +} asn_dec_rval_t; +#define _ASN_DECODE_FAILED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_FAIL; \ + tmp_error.consumed = 0; \ + ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define _ASN_DECODE_STARVED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_WMORE; \ + tmp_error.consumed = 0; \ + return tmp_error; \ +} while(0) + +#ifdef __cplusplus +} +#endif + +#endif /* _ASN_CODECS_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h new file mode 100644 index 000000000..be673ba19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_codecs_prim.h @@ -0,0 +1,53 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_PRIM_H +#define ASN_CODECS_PRIM_H + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ASN__PRIMITIVE_TYPE_s { + uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ + int size; /* Size of the buffer */ +} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ + +asn_struct_free_f ASN__PRIMITIVE_TYPE_free; +ber_type_decoder_f ber_decode_primitive; +der_type_encoder_f der_encode_primitive; + +/* + * A callback specification for the xer_decode_primitive() function below. + */ +enum xer_pbd_rval { + XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ + XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ + XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ + XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ + XPBD_BODY_CONSUMED /* Body is recognized and consumed */ +}; +typedef enum xer_pbd_rval (xer_primitive_body_decoder_f) + (asn_TYPE_descriptor_t *td, void *struct_ptr, + const void *chunk_buf, size_t chunk_size); + +/* + * Specific function to decode simple primitive types. + * Also see xer_decode_general() in xer_decoder.h + */ +asn_dec_rval_t xer_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *type_descriptor, + void **struct_ptr, size_t struct_size, + const char *opt_mname, + const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder +); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h new file mode 100644 index 000000000..f4f248dae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_internal.h @@ -0,0 +1,126 @@ +/*- + * Copyright (c) 2003, 2004, 2005, 2007 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Declarations internally useful for the ASN.1 support code. + */ +#ifndef _ASN_INTERNAL_H_ +#define _ASN_INTERNAL_H_ + +#include "asn_application.h" /* Application-visible API */ + +#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ +#include "assert.h" /* for assert() macro */ +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* Environment version might be used to avoid running with the old library */ +#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ +int get_asn1c_environment_version(void); /* Run-time version */ + +#define CALLOC(nmemb, size) calloc(nmemb, size) +#define MALLOC(size) malloc(size) +#define REALLOC(oldptr, size) realloc(oldptr, size) +#define FREEMEM(ptr) free(ptr) + +#define asn_debug_indent 0 +#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) + +/* + * A macro for debugging the ASN.1 internals. + * You may enable or override it. + */ +#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ +#if EMIT_ASN_DEBUG == 1 /* And it was asked to emit this code... */ +#ifdef __GNUC__ +#ifdef ASN_THREAD_SAFE +/* Thread safety requires sacrifice in output indentation: + * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ +#else /* !ASN_THREAD_SAFE */ +#undef ASN_DEBUG_INDENT_ADD +#undef asn_debug_indent +int asn_debug_indent; +#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) +#endif /* ASN_THREAD_SAFE */ +#define ASN_DEBUG(fmt, args...) do { \ + int adi = asn_debug_indent; \ + while(adi--) fprintf(stderr, " "); \ + fprintf(stderr, fmt, ##args); \ + fprintf(stderr, " (%s:%d)\n", \ + __FILE__, __LINE__); \ + } while(0) +#else /* !__GNUC__ */ +void ASN_DEBUG_f(const char *fmt, ...); +#define ASN_DEBUG ASN_DEBUG_f +#endif /* __GNUC__ */ +#else /* EMIT_ASN_DEBUG != 1 */ +static inline void ASN_DEBUG(const char *fmt, ...) { (void)fmt; } +#endif /* EMIT_ASN_DEBUG */ +#endif /* ASN_DEBUG */ + +/* + * Invoke the application-supplied callback and fail, if something is wrong. + */ +#define __ASN_E_cbc(buf, size) (cb((buf), (size), app_key) < 0) +#define _ASN_E_CALLBACK(foo) do { \ + if(foo) goto cb_failed; \ + } while(0) +#define _ASN_CALLBACK(buf, size) \ + _ASN_E_CALLBACK(__ASN_E_cbc(buf, size)) +#define _ASN_CALLBACK2(buf1, size1, buf2, size2) \ + _ASN_E_CALLBACK(__ASN_E_cbc(buf1, size1) || __ASN_E_cbc(buf2, size2)) +#define _ASN_CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ + _ASN_E_CALLBACK(__ASN_E_cbc(buf1, size1) \ + || __ASN_E_cbc(buf2, size2) \ + || __ASN_E_cbc(buf3, size3)) + +#define _i_ASN_TEXT_INDENT(nl, level) do { \ + int __level = (level); \ + int __nl = ((nl) != 0); \ + int __i; \ + if(__nl) _ASN_CALLBACK("\n", 1); \ + if(__level < 0) __level = 0; \ + for(__i = 0; __i < __level; __i++) \ + _ASN_CALLBACK(" ", 4); \ + er.encoded += __nl + 4 * __level; \ +} while(0) + +#define _i_INDENT(nl) do { \ + int __i; \ + if((nl) && cb("\n", 1, app_key) < 0) return -1; \ + for(__i = 0; __i < ilevel; __i++) \ + if(cb(" ", 4, app_key) < 0) return -1; \ +} while(0) + +/* + * Check stack against overflow, if limit is set. + */ +#define _ASN_DEFAULT_STACK_MAX (30000) +static inline int +_ASN_STACK_OVERFLOW_CHECK(asn_codec_ctx_t *ctx) { + if(ctx && ctx->max_stack_size) { + + /* ctx MUST be allocated on the stack */ + ptrdiff_t usedstack = ((char *)ctx - (char *)&ctx); + if(usedstack > 0) usedstack = -usedstack; /* grows up! */ + + /* double negative required to avoid int wrap-around */ + if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { + ASN_DEBUG("Stack limit %ld reached", + (long)ctx->max_stack_size); + return -1; + } + } + return 0; +} + +#ifdef __cplusplus +} +#endif + +#endif /* _ASN_INTERNAL_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h new file mode 100644 index 000000000..1e6e49f6a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/asn_system.h @@ -0,0 +1,129 @@ +/*- + * Copyright (c) 2003, 2004, 2007 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Miscellaneous system-dependent types. + */ +#ifndef _ASN_SYSTEM_H_ +#define _ASN_SYSTEM_H_ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "stdio.h" /* For snprintf(3) */ +#include "stdlib.h" /* For *alloc(3) */ +#include "string.h" /* For memcpy(3) */ +#include "sys/types.h" /* For size_t */ +#include "limits.h" /* For LONG_MAX */ +#include "stdarg.h" /* For va_start */ +#include "stddef.h" /* for offsetof and ptrdiff_t */ + +#ifdef _WIN32 + +#include "malloc.h" +#define snprintf _snprintf +#define vsnprintf _vsnprintf + +/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ +#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ + | (((l) << 8) & 0xff0000) \ + | (((l) >> 8) & 0xff00) \ + | ((l >> 24) & 0xff)) + +#ifdef _MSC_VER /* MSVS.Net */ +#ifndef __cplusplus +#define inline __inline +#endif +#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ +#define ssize_t SSIZE_T +typedef char int8_t; +typedef short int16_t; +typedef int int32_t; +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; +#endif /* ASSUMESTDTYPES */ +#define WIN32_LEAN_AND_MEAN +#include "windows.h" +#include "float.h" +#define isnan _isnan +#define finite _finite +#define copysign _copysign +#define ilogb _logb +#else /* !_MSC_VER */ +#include "stdint.h" +#endif /* _MSC_VER */ + +#else /* !_WIN32 */ + +#if defined(__vxworks) +#include "types/vxTypes.h" +#else /* !defined(__vxworks) */ + +#include "inttypes.h" /* C99 specifies this file */ +/* + * 1. Earlier FreeBSD version didn't have , + * but was present. + * 2. Sun Solaris requires for alloca(3), + * but does not have . + */ +#if (!defined(__FreeBSD__) || !defined(_SYS_INTTYPES_H_)) +#if defined(sun) +#include "alloca.h" /* For alloca(3) */ +#include "ieeefp.h" /* for finite(3) */ +#elif defined(__hpux) +#ifdef __GNUC__ +#include "alloca.h" /* For alloca(3) */ +#else /* !__GNUC__ */ +#define inline +#endif /* __GNUC__ */ +#else +#include "stdint.h" /* SUSv2+ and C99 specify this file, for uintXX_t */ +#endif /* defined(sun) */ +#endif + +#include "netinet/in.h" /* for ntohl() */ +#define sys_ntohl(foo) ntohl(foo) + +#endif /* defined(__vxworks) */ + +#endif /* _WIN32 */ + +#if __GNUC__ >= 3 +#ifndef GCC_PRINTFLIKE +#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) +#endif +#ifndef GCC_NOTUSED +#define GCC_NOTUSED __attribute__((unused)) +#endif +#else +#ifndef GCC_PRINTFLIKE +#define GCC_PRINTFLIKE(fmt,var) /* nothing */ +#endif +#ifndef GCC_NOTUSED +#define GCC_NOTUSED +#endif +#endif + +/* Figure out if thread safety is requested */ +#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) +#define ASN_THREAD_SAFE +#endif /* Thread safety */ + +#ifndef offsetof /* If not defined by */ +#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) +#endif /* offsetof */ + +#ifndef MIN /* Suitable for comparing primitive types (integers) */ +#if defined(__GNUC__) +#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ + ((_a)<(_b)?(_a):(_b)); }) +#else /* !__GNUC__ */ +#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ +#endif /* __GNUC__ */ +#endif /* MIN */ + +#endif /* _ASN_SYSTEM_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h new file mode 100644 index 000000000..a3e5c5a3d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_decoder.h @@ -0,0 +1,64 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_DECODER_H_ +#define _BER_DECODER_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The BER decoder of any type. + * This function may be invoked directly from the application. + * The der_encode() function (der_encoder.h) is an opposite to ber_decode(). + */ +asn_dec_rval_t ber_decode(struct asn_codec_ctx_s *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ + ); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t (ber_type_decoder_f)( + struct asn_codec_ctx_s *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, const void *buf_ptr, size_t size, + int tag_mode); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Check that all tags correspond to the type definition (as given in head). + * On return, last_length would contain either a non-negative length of the + * value part of the last TLV, or the negative number of expected + * "end of content" sequences. The number may only be negative if the + * head->last_tag_form is non-zero. + */ +asn_dec_rval_t ber_check_tags( + struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ + struct asn_TYPE_descriptor_s *type_descriptor, + asn_struct_ctx_t *opt_ctx, /* saved decoding context */ + const void *ptr, size_t size, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {-1,0:1}: any, primitive, constr */ + ber_tlv_len_t *last_length, + int *opt_tlv_form /* optional tag form */ + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h new file mode 100644 index 000000000..349680224 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_length.h @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_LENGTH_H_ +#define _BER_TLV_LENGTH_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ssize_t ber_tlv_len_t; + +/* + * This function tries to fetch the length of the BER TLV value and place it + * in *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + * On return with >0, len_r is constrained as -1..MAX, where -1 mean + * that the value is of indefinite length. + */ +ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r); + +/* + * This function expects bufptr to be positioned over L in TLV. + * It returns number of bytes occupied by L and V together, suitable + * for skipping. The function properly handles indefinite length. + * RETURN VALUES: + * Standard {-1,0,>0} convention. + */ +ssize_t ber_skip_length( + struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ + int _is_constructed, const void *bufptr, size_t size); + +/* + * This function serializes the length (L from TLV) in DER format. + * It always returns number of bytes necessary to represent the length, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h new file mode 100644 index 000000000..60e866861 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/ber_tlv_tag.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_TAG_H_ +#define _BER_TLV_TAG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum asn_tag_class { + ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ + ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ + ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ + ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ +}; +typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ + +/* + * Tag class is encoded together with tag value for optimization purposes. + */ +#define BER_TAG_CLASS(tag) ((tag) & 0x3) +#define BER_TAG_VALUE(tag) ((tag) >> 2) +#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) + +#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) + +/* + * Several functions for printing the TAG in the canonical form + * (i.e. "[PRIVATE 0]"). + * Return values correspond to their libc counterparts (if any). + */ +ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); +ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); +char *ber_tlv_tag_string(ber_tlv_tag_t tag); + + +/* + * This function tries to fetch the tag from the input stream. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering tag. + * >0: Number of bytes used from bufptr. tag_r will contain the tag. + */ +ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); + +/* + * This function serializes the tag (T from TLV) in BER format. + * It always returns number of bytes necessary to represent the tag, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h new file mode 100644 index 000000000..2fb40592b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_CHOICE.h @@ -0,0 +1,57 @@ +/*- + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_CHOICE_H_ +#define _CONSTR_CHOICE_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_CHOICE_specifics_s { + /* + * Target structure description. + */ + int struct_size; /* Size of the target structure. */ + int ctx_offset; /* Offset of the asn_codec_ctx_t member */ + int pres_offset; /* Identifier of the present member */ + int pres_size; /* Size of the identifier (enum) */ + + /* + * Tags to members mapping table. + */ + asn_TYPE_tag2member_t *tag2el; + int tag2el_count; + + /* Canonical ordering of CHOICE elements, for PER */ + int *canonical_order; + + /* + * Extensions-related stuff. + */ + int ext_start; /* First member of extensions, or -1 */ +} asn_CHOICE_specifics_t; + +/* + * A set specialized functions dealing with the CHOICE type. + */ +asn_struct_free_f CHOICE_free; +asn_struct_print_f CHOICE_print; +asn_constr_check_f CHOICE_constraint; +ber_type_decoder_f CHOICE_decode_ber; +der_type_encoder_f CHOICE_encode_der; +xer_type_decoder_f CHOICE_decode_xer; +xer_type_encoder_f CHOICE_encode_xer; +per_type_decoder_f CHOICE_decode_uper; +per_type_encoder_f CHOICE_encode_uper; +asn_outmost_tag_f CHOICE_outmost_tag; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h new file mode 100644 index 000000000..ab07268a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_H_ +#define _CONSTR_SEQUENCE_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SEQUENCE_specifics_s { + /* + * Target structure description. + */ + int struct_size; /* Size of the target structure. */ + int ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* + * Tags to members mapping table (sorted). + */ + asn_TYPE_tag2member_t *tag2el; + int tag2el_count; + + /* + * Optional members of the extensions root (roms) or additions (aoms). + * Meaningful for PER. + */ + int *oms; /* Optional MemberS */ + int roms_count; /* Root optional members count */ + int aoms_count; /* Additions optional members count */ + + /* + * Description of an extensions group. + */ + int ext_after; /* Extensions start after this member */ + int ext_before; /* Extensions stop before this member */ +} asn_SEQUENCE_specifics_t; + + +/* + * A set specialized functions dealing with the SEQUENCE type. + */ +asn_struct_free_f SEQUENCE_free; +asn_struct_print_f SEQUENCE_print; +asn_constr_check_f SEQUENCE_constraint; +ber_type_decoder_f SEQUENCE_decode_ber; +der_type_encoder_f SEQUENCE_encode_der; +xer_type_decoder_f SEQUENCE_decode_xer; +xer_type_encoder_f SEQUENCE_encode_xer; +per_type_decoder_f SEQUENCE_decode_uper; +per_type_encoder_f SEQUENCE_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h new file mode 100644 index 000000000..a8dae9625 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SEQUENCE_OF.h @@ -0,0 +1,33 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_OF_H_ +#define _CONSTR_SEQUENCE_OF_H_ + +#include "asn_application.h" +#include "constr_SET_OF.h" /* Implemented using SET OF */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A set specialized functions dealing with the SEQUENCE OF type. + * Generally implemented using SET OF. + */ +#define SEQUENCE_OF_free SET_OF_free +#define SEQUENCE_OF_print SET_OF_print +#define SEQUENCE_OF_constraint SET_OF_constraint +#define SEQUENCE_OF_decode_ber SET_OF_decode_ber +#define SEQUENCE_OF_decode_xer SET_OF_decode_xer +#define SEQUENCE_OF_decode_uper SET_OF_decode_uper +der_type_encoder_f SEQUENCE_OF_encode_der; +xer_type_encoder_f SEQUENCE_OF_encode_xer; +per_type_encoder_f SEQUENCE_OF_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h new file mode 100644 index 000000000..2ec2847c2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_SET_OF.h @@ -0,0 +1,42 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SET_OF_H_ +#define _CONSTR_SET_OF_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SET_OF_specifics_s { + /* + * Target structure description. + */ + int struct_size; /* Size of the target structure. */ + int ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* XER-specific stuff */ + int as_XMLValueList; /* The member type must be encoded like this */ +} asn_SET_OF_specifics_t; + +/* + * A set specialized functions dealing with the SET OF type. + */ +asn_struct_free_f SET_OF_free; +asn_struct_print_f SET_OF_print; +asn_constr_check_f SET_OF_constraint; +ber_type_decoder_f SET_OF_decode_ber; +der_type_encoder_f SET_OF_encode_der; +xer_type_decoder_f SET_OF_decode_xer; +xer_type_encoder_f SET_OF_encode_xer; +per_type_decoder_f SET_OF_decode_uper; +per_type_encoder_f SET_OF_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h new file mode 100644 index 000000000..92e25cadd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constr_TYPE.h @@ -0,0 +1,180 @@ +/*- + * Copyright (c) 2003, 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This file contains the declaration structure called "ASN.1 Type Definition", + * which holds all information necessary for encoding and decoding routines. + * This structure even contains pointer to these encoding and decoding routines + * for each defined ASN.1 type. + */ +#ifndef _CONSTR_TYPE_H_ +#define _CONSTR_TYPE_H_ + +#include "ber_tlv_length.h" +#include "ber_tlv_tag.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_TYPE_member_s; /* Forward declaration */ + +/* + * This type provides the context information for various ASN.1 routines, + * primarily ones doing decoding. A member _asn_ctx of this type must be + * included into certain target language's structures, such as compound types. + */ +typedef struct asn_struct_ctx_s { + short phase; /* Decoding phase */ + short step; /* Elementary step of a phase */ + int context; /* Other context information */ + void *ptr; /* Decoder-specific stuff (stack elements) */ + ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ +} asn_struct_ctx_t; + +#include "ber_decoder.h" /* Basic Encoding Rules decoder */ +#include "der_encoder.h" /* Distinguished Encoding Rules encoder */ +#include "xer_decoder.h" /* Decoder of XER (XML, text) */ +#include "xer_encoder.h" /* Encoder into XER (XML, text) */ +#include "per_decoder.h" /* Packet Encoding Rules decoder */ +#include "per_encoder.h" /* Packet Encoding Rules encoder */ +#include "constraints.h" /* Subtype constraints support */ + +/* + * Free the structure according to its specification. + * If (free_contents_only) is set, the wrapper structure itself (struct_ptr) + * will not be freed. (It may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are allocated + * dynamically.) + */ +typedef void (asn_struct_free_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, int free_contents_only); +#define ASN_STRUCT_FREE(asn_DEF, ptr) (asn_DEF).free_struct(&(asn_DEF),ptr,0) +#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ + (asn_DEF).free_struct(&(asn_DEF),ptr,1) + +/* + * Print the structure according to its specification. + */ +typedef int (asn_struct_print_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, + int level, /* Indentation level */ + asn_app_consume_bytes_f *callback, void *app_key); + +/* + * Return the outmost tag of the type. + * If the type is untagged CHOICE, the dynamic operation is performed. + * NOTE: This function pointer type is only useful internally. + * Do not use it in your application. + */ +typedef ber_tlv_tag_t (asn_outmost_tag_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); +/* The instance of the above function type; used internally. */ +asn_outmost_tag_f asn_TYPE_outmost_tag; + + +/* + * The definitive description of the destination language's structure. + */ +typedef struct asn_TYPE_descriptor_s { + char *name; /* A name of the ASN.1 type. "" in some cases. */ + char *xml_tag; /* Name used in XML tag */ + + /* + * Generalized functions for dealing with the specific type. + * May be directly invoked by applications. + */ + asn_struct_free_f *free_struct; /* Free the structure */ + asn_struct_print_f *print_struct; /* Human readable output */ + asn_constr_check_f *check_constraints; /* Constraints validator */ + ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ + der_type_encoder_f *der_encoder; /* Canonical DER encoder */ + xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ + xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ + per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ + per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ + + /*********************************************************************** + * Internally useful members. Not to be used by applications directly. * + **********************************************************************/ + + /* + * Tags that are expected to occur. + */ + asn_outmost_tag_f *outmost_tag; /* */ + ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ + int tags_count; /* Number of tags which are expected */ + ber_tlv_tag_t *all_tags;/* Every tag for BER/containment */ + int all_tags_count; /* Number of tags */ + + asn_per_constraints_t *per_constraints; /* PER compiled constraints */ + + /* + * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). + */ + struct asn_TYPE_member_s *elements; + int elements_count; + + /* + * Additional information describing the type, used by appropriate + * functions above. + */ + void *specifics; +} asn_TYPE_descriptor_t; + +/* + * This type describes an element of the constructed type, + * i.e. SEQUENCE, SET, CHOICE, etc. + */ + enum asn_TYPE_flags_e { + ATF_NOFLAGS, + ATF_POINTER = 0x01, /* Represented by the pointer */ + ATF_OPEN_TYPE = 0x02 /* ANY type, without meaningful tag */ + }; +typedef struct asn_TYPE_member_s { + enum asn_TYPE_flags_e flags; /* Element's presentation flags */ + int optional; /* Following optional members, including current */ + int memb_offset; /* Offset of the element */ + ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ + int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ + asn_TYPE_descriptor_t *type; /* Member type descriptor */ + asn_constr_check_f *memb_constraints; /* Constraints validator */ + asn_per_constraints_t *per_constraints; /* PER compiled constraints */ + int (*default_value)(int setval, void **sptr); /* DEFAULT */ + char *name; /* ASN.1 identifier of the element */ +} asn_TYPE_member_t; + +/* + * BER tag to element number mapping. + */ +typedef struct asn_TYPE_tag2member_s { + ber_tlv_tag_t el_tag; /* Outmost tag of the member */ + int el_no; /* Index of the associated member, base 0 */ + int toff_first; /* First occurence of the el_tag, relative */ + int toff_last; /* Last occurence of the el_tag, relatvie */ +} asn_TYPE_tag2member_t; + +/* + * This function is a wrapper around (td)->print_struct, which prints out + * the contents of the target language's structure (struct_ptr) into the + * file pointer (stream) in human readable form. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem dumping the structure. + * (See also xer_fprint() in xer_encoder.h) + */ +int asn_fprint(FILE *stream, /* Destination stream descriptor */ + asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ + const void *struct_ptr); /* Structure to be printed */ + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h new file mode 100644 index 000000000..e216d8107 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/constraints.h @@ -0,0 +1,63 @@ +/*- + * Copyright (c) 2004, 2006 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ASN1_CONSTRAINTS_VALIDATOR_H_ +#define _ASN1_CONSTRAINTS_VALIDATOR_H_ + +#include "asn_system.h" /* Platform-dependent types */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Validate the structure according to the ASN.1 constraints. + * If errbuf and errlen are given, they shall be pointing to the appropriate + * buffer space and its length before calling this function. Alternatively, + * they could be passed as NULL's. If constraints validation fails, + * errlen will contain the actual number of bytes taken from the errbuf + * to encode an error message (properly 0-terminated). + * + * RETURN VALUES: + * This function returns 0 in case all ASN.1 constraints are met + * and -1 if one or more constraints were failed. + */ +int +asn_check_constraints(struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Target language's structure */ + char *errbuf, /* Returned error description */ + size_t *errlen /* Length of the error description */ + ); + + +/* + * Generic type for constraint checking callback, + * associated with every type descriptor. + */ +typedef int (asn_constr_check_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *optional_callback, /* Log the error */ + void *optional_app_key /* Opaque key passed to a callback */ + ); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ +asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ + +/* + * Invoke the callback with a complete error message. + */ +#define _ASN_CTFAIL if(ctfailcb) ctfailcb + +#ifdef __cplusplus +} +#endif + +#endif /* _ASN1_CONSTRAINTS_VALIDATOR_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h new file mode 100644 index 000000000..b7debab3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/der_encoder.h @@ -0,0 +1,68 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _DER_ENCODER_H_ +#define _DER_ENCODER_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The DER encoder of any type. May be invoked by the application. + * The ber_decode() function (ber_decoder.h) is an opposite of der_encode(). + */ +asn_enc_rval_t der_encode(struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ + ); + +/* A variant of der_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t der_encode_to_buffer( + struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ + ); + +/* + * Type of the generic DER encoder. + */ +typedef asn_enc_rval_t (der_type_encoder_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + ber_tlv_tag_t tag, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ + ); + + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t der_write_tags( + struct asn_TYPE_descriptor_s *type_descriptor, + size_t struct_length, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {0,!0}: prim, constructed */ + ber_tlv_tag_t tag, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h new file mode 100644 index 000000000..9fe08887a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_decoder.h @@ -0,0 +1,56 @@ +/*- + * Copyright (c) 2005, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_DECODER_H_ +#define _PER_DECODER_H_ + +#include "asn_application.h" +#include "per_support.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER decoder of a "complete encoding" as per X.691#10.1. + * On success, this call always returns (.consumed >= 1), as per X.691#10.1.3. + */ +asn_dec_rval_t uper_decode_complete(struct asn_codec_ctx_s *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ + ); + +/* + * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t uper_decode(struct asn_codec_ctx_s *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of data buffer */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ + ); + + +/* + * Type of the type-specific PER decoder function. + */ +typedef asn_dec_rval_t (per_type_decoder_f)(asn_codec_ctx_t *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, + asn_per_constraints_t *constraints, + void **struct_ptr, + asn_per_data_t *per_data + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h new file mode 100644 index 000000000..0c4501791 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_encoder.h @@ -0,0 +1,69 @@ +/*- + * Copyright (c) 2006, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_ENCODER_H_ +#define _PER_ENCODER_H_ + +#include "asn_application.h" +#include "per_support.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t uper_encode(struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of uper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t uper_encode_to_buffer( + struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +/* + * A variant of uper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of uper_encode() and uper_encode_to_buffer(). + */ +ssize_t uper_encode_to_new_buffer( + struct asn_TYPE_descriptor_s *type_descriptor, + asn_per_constraints_t *constraints, + void *struct_ptr, /* Structure to be encoded */ + void **buffer_r /* Buffer allocated and returned */ +); + +/* + * Type of the generic PER encoder function. + */ +typedef asn_enc_rval_t (per_type_encoder_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + asn_per_constraints_t *constraints, + void *struct_ptr, + asn_per_outp_t *per_output +); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h new file mode 100644 index 000000000..facfaa637 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_opentype.h @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_OPENTYPE_H_ +#define _PER_OPENTYPE_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_open_type_get(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd); + +int uper_open_type_skip(asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); + +int uper_open_type_put(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h new file mode 100644 index 000000000..eb00c9b1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/per_support.h @@ -0,0 +1,136 @@ +/* + * Copyright (c) 2005-2014 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_SUPPORT_H_ +#define _PER_SUPPORT_H_ + +#include "asn_system.h" /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed PER constraints. + */ +typedef struct asn_per_constraint_s { + enum asn_per_constraint_flags { + APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ + APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ + APC_CONSTRAINED = 0x2, /* Fully constrained */ + APC_EXTENSIBLE = 0x4 /* May have extension */ + } flags; + int range_bits; /* Full number of bits in the range */ + int effective_bits; /* Effective bits */ + long lower_bound; /* "lb" value */ + long upper_bound; /* "ub" value */ +} asn_per_constraint_t; + +typedef struct asn_per_constraints_s { + asn_per_constraint_t value; + asn_per_constraint_t size; + int (*value2code)(unsigned int value); + int (*code2value)(unsigned int code); +} asn_per_constraints_t; + +/* + * This structure describes a position inside an incoming PER bit stream. + */ +typedef struct asn_per_data_s { + const uint8_t *buffer; /* Pointer to the octet stream */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits in the stream */ + size_t moved; /* Number of bits moved through this bit stream */ + int (*refill)(struct asn_per_data_s *); + void *refill_key; +} asn_per_data_t; + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int32_t per_get_few_bits(asn_per_data_t *per_data, int get_nbits); + +/* Undo the immediately preceeding "get_few_bits" operation */ +void per_get_undo(asn_per_data_t *per_data, int get_nbits); + +/* + * Extract a large number of bits from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int per_get_many_bits(asn_per_data_t *pd, uint8_t *dst, int right_align, + int get_nbits); + +/* + * Get the length "n" from the Unaligned PER stream. + */ +ssize_t uper_get_length(asn_per_data_t *pd, + int effective_bound_bits, + int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t uper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t uper_get_nsnnwn(asn_per_data_t *pd); + +/* X.691-2008/11, #11.5.6 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, unsigned long *v, int nbits); + +/* Non-thread-safe debugging function, don't use it */ +char *per_data_string(asn_per_data_t *pd); + +/* + * This structure supports forming PER output. + */ +typedef struct asn_per_outp_s { + uint8_t *buffer; /* Pointer into the (tmpspace) */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits left in (tmpspace) */ + uint8_t tmpspace[32]; /* Preliminary storage to hold data */ + int (*outper)(const void *data, size_t size, void *op_key); + void *op_key; /* Key for (outper) data callback */ + size_t flushed_bytes; /* Bytes already flushed through (outper) */ +} asn_per_outp_t; + +/* Output a small number of bits (<= 31) */ +int per_put_few_bits(asn_per_outp_t *per_data, uint32_t bits, int obits); + +/* Output a large number of bits */ +int per_put_many_bits(asn_per_outp_t *po, const uint8_t *src, int put_nbits); + +/* X.691-2008/11, #11.5 */ +int uper_put_constrained_whole_number_s(asn_per_outp_t *po, long v, int nbits); +int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits); + +/* + * Put the length "n" to the Unaligned PER stream. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int uper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int uper_put_nsnnwn(asn_per_outp_t *po, int n); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h new file mode 100644 index 000000000..4224176db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/version.h @@ -0,0 +1,14 @@ +/* + * version.h + * + * Created on: Aug 29, 2014 + * Author: ivp + */ + +#ifndef VERSION_H_ +#define VERSION_H_ + +#define TMXASN_VERSION "2.4.0" +#define TMXASN_SPEC "2015" + +#endif /* VERSION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h new file mode 100644 index 000000000..c5c6b7f34 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_decoder.h @@ -0,0 +1,105 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_DECODER_H_ +#define _XER_DECODER_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The XER decoder of any ASN.1 type. May be invoked by the application. + */ +asn_dec_rval_t xer_decode(struct asn_codec_ctx_s *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ + ); + +/* + * Type of the type-specific XER decoder function. + */ +typedef asn_dec_rval_t (xer_type_decoder_f)(asn_codec_ctx_t *opt_codec_ctx, + struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, + const char *opt_mname, /* Member name */ + const void *buf_ptr, size_t size + ); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Generalized function for decoding the primitive values. + * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 + * and others. This function should not be used by applications, as its API + * is subject to changes. + */ +asn_dec_rval_t xer_decode_general(asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, /* Treated as opaque pointer */ + const char *xml_tag, /* Expected XML tag name */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_key, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_key, const void *chunk_buf, size_t chunk_size, + int have_more) + ); + + +/* + * Fetch the next XER (XML) token from the stream. + * The function returns the number of bytes occupied by the chunk type, + * returned in the _ch_type. The _ch_type is only set (and valid) when + * the return value is greater than 0. + */ + typedef enum pxer_chunk_type { + PXER_TAG, /* Complete XER tag */ + PXER_TEXT, /* Plain text between XER tags */ + PXER_COMMENT /* A comment, may be part of */ + } pxer_chunk_type_e; +ssize_t xer_next_token(int *stateContext, + const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); + +/* + * This function checks the buffer against the tag name is expected to occur. + */ + typedef enum xer_check_tag { + XCT_BROKEN = 0, /* The tag is broken */ + XCT_OPENING = 1, /* This is the tag */ + XCT_CLOSING = 2, /* This is the tag */ + XCT_BOTH = 3, /* This is the tag */ + XCT__UNK__MASK = 4, /* Mask of everything unexpected */ + XCT_UNKNOWN_OP = 5, /* Unexpected tag */ + XCT_UNKNOWN_CL = 6, /* Unexpected tag */ + XCT_UNKNOWN_BO = 7 /* Unexpected tag */ + } xer_check_tag_e; +xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, + const char *need_tag); + +/* + * Get the number of bytes consisting entirely of XER whitespace characters. + * RETURN VALUES: + * >=0: Number of whitespace characters in the string. + */ +size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); + +/* + * Skip the series of anticipated extensions. + */ +int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h new file mode 100644 index 000000000..f86dc543e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_encoder.h @@ -0,0 +1,59 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_ENCODER_H_ +#define _XER_ENCODER_H_ + +#include "asn_application.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ +enum xer_encoder_flags_e { + /* Mode of encoding */ + XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ + XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ +}; + +/* + * The XER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t xer_encode(struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ + ); + +/* + * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) + * output into the chosen file pointer. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem printing the structure. + * WARNING: No sensible errno value is returned. + */ +int xer_fprint(FILE *stream, struct asn_TYPE_descriptor_s *td, void *sptr); + +/* + * Type of the generic XER encoder. + */ +typedef asn_enc_rval_t (xer_type_encoder_f)( + struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, /* Structure to be encoded */ + int ilevel, /* Level of indentation */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ + ); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h new file mode 100644 index 000000000..39a748150 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r41/xer_support.h @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_SUPPORT_H_ +#define _XER_SUPPORT_H_ + +#include "asn_system.h" /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Types of data transferred to the application. + */ +typedef enum { + PXML_TEXT, /* Plain text between XML tags. */ + PXML_TAG, /* A tag, starting with '<'. */ + PXML_COMMENT, /* An XML comment, including "". */ + /* + * The following chunk types are reported if the chunk + * terminates the specified XML element. + */ + PXML_TAG_END, /* Tag ended */ + PXML_COMMENT_END /* Comment ended */ +} pxml_chunk_type_e; + +/* + * Callback function that is called by the parser when parsed data is + * available. The _opaque is the pointer to a field containing opaque user + * data specified in pxml_create() call. The chunk type is _type and the text + * data is the piece of buffer identified by _bufid (as supplied to + * pxml_feed() call) starting at offset _offset and of _size bytes size. + * The chunk is NOT '\0'-terminated. + */ +typedef int (pxml_callback_f)(pxml_chunk_type_e _type, + const void *_chunk_data, size_t _chunk_size, void *_key); + +/* + * Parse the given buffer as it were a chunk of XML data. + * Invoke the specified callback each time the meaninful data is found. + * This function returns number of bytes consumed from the bufer. + * It will always be lesser than or equal to the specified _size. + * The next invocation of this function must account the difference. + */ +ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, + pxml_callback_f *cb, void *_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h new file mode 100644 index 000000000..b30381fa1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ANY.h @@ -0,0 +1,65 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_ANY_H +#define ASN_TYPE_ANY_H + +#include /* Implemented via OCTET STRING type */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ANY { + uint8_t *buf; /* BER-encoded ANY contents */ + int size; /* Size of the above buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} ANY_t; + +extern asn_TYPE_descriptor_t asn_DEF_ANY; +extern asn_TYPE_operation_t asn_OP_ANY; +extern asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs; + +asn_struct_free_f ANY_free; +asn_struct_print_f ANY_print; +ber_type_decoder_f ANY_decode_ber; +der_type_encoder_f ANY_encode_der; +xer_type_encoder_f ANY_encode_xer; +per_type_decoder_f ANY_decode_uper; +per_type_encoder_f ANY_encode_uper; +per_type_decoder_f ANY_decode_aper; +per_type_encoder_f ANY_encode_aper; + +#define ANY_free OCTET_STRING_free +#define ANY_print OCTET_STRING_print +#define ANY_compare OCTET_STRING_compare +#define ANY_constraint asn_generic_no_constraint +#define ANY_decode_ber OCTET_STRING_decode_ber +#define ANY_encode_der OCTET_STRING_encode_der +#define ANY_decode_xer OCTET_STRING_decode_xer_hex + +/****************************** + * Handy conversion routines. * + ******************************/ + +/* Convert another ASN.1 type into the ANY. This implies DER encoding. */ +int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr); +int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr); +ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr); +ANY_t *ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr); + +/* Convert the contents of the ANY type into the specified type. */ +int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); +int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr); + +#define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size)) +#define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \ + &asn_DEF_ANY, (buf), (size)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_TYPE_ANY_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h new file mode 100644 index 000000000..ad2949712 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelSteerYawRateConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AccelSteerYawRateConfidence_H_ +#define _AccelSteerYawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelSteerYawRateConfidence */ +typedef struct AccelSteerYawRateConfidence { + YawRateConfidence_t yawRate; + AccelerationConfidence_t acceleration; + SteeringWheelAngleConfidence_t steeringWheelAngle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelSteerYawRateConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelSteerYawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h new file mode 100644 index 000000000..396141a05 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Acceleration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Acceleration_H_ +#define _Acceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Acceleration */ +typedef long Acceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Acceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Acceleration; +asn_struct_free_f Acceleration_free; +asn_struct_print_f Acceleration_print; +asn_constr_check_f Acceleration_constraint; +ber_type_decoder_f Acceleration_decode_ber; +der_type_encoder_f Acceleration_encode_der; +xer_type_decoder_f Acceleration_decode_xer; +xer_type_encoder_f Acceleration_encode_xer; +oer_type_decoder_f Acceleration_decode_oer; +oer_type_encoder_f Acceleration_encode_oer; +per_type_decoder_f Acceleration_decode_uper; +per_type_encoder_f Acceleration_encode_uper; +per_type_decoder_f Acceleration_decode_aper; +per_type_encoder_f Acceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Acceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h new file mode 100644 index 000000000..6c80df08a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AccelerationConfidence_H_ +#define _AccelerationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AccelerationConfidence { + AccelerationConfidence_unavailable = 0, + AccelerationConfidence_accl_100_00 = 1, + AccelerationConfidence_accl_010_00 = 2, + AccelerationConfidence_accl_005_00 = 3, + AccelerationConfidence_accl_001_00 = 4, + AccelerationConfidence_accl_000_10 = 5, + AccelerationConfidence_accl_000_05 = 6, + AccelerationConfidence_accl_000_01 = 7 +} e_AccelerationConfidence; + +/* AccelerationConfidence */ +typedef long AccelerationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1; +asn_struct_free_f AccelerationConfidence_free; +asn_struct_print_f AccelerationConfidence_print; +asn_constr_check_f AccelerationConfidence_constraint; +ber_type_decoder_f AccelerationConfidence_decode_ber; +der_type_encoder_f AccelerationConfidence_encode_der; +xer_type_decoder_f AccelerationConfidence_decode_xer; +xer_type_encoder_f AccelerationConfidence_encode_xer; +oer_type_decoder_f AccelerationConfidence_decode_oer; +oer_type_encoder_f AccelerationConfidence_encode_oer; +per_type_decoder_f AccelerationConfidence_decode_uper; +per_type_encoder_f AccelerationConfidence_encode_uper; +per_type_decoder_f AccelerationConfidence_decode_aper; +per_type_encoder_f AccelerationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h new file mode 100644 index 000000000..612793be2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AccelerationSet4Way.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AccelerationSet4Way_H_ +#define _AccelerationSet4Way_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Acceleration.h" +#include "VerticalAcceleration.h" +#include "YawRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AccelerationSet4Way */ +typedef struct AccelerationSet4Way { + Acceleration_t Long; + Acceleration_t lat; + VerticalAcceleration_t vert; + YawRate_t yaw; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AccelerationSet4Way_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way; +extern asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1; +extern asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AccelerationSet4Way_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h new file mode 100644 index 000000000..f4e463591 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Angle.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_Angle_H_ +#define _AddGrpB_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Angle */ +typedef long AddGrpB_Angle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle; +asn_struct_free_f AddGrpB_Angle_free; +asn_struct_print_f AddGrpB_Angle_print; +asn_constr_check_f AddGrpB_Angle_constraint; +ber_type_decoder_f AddGrpB_Angle_decode_ber; +der_type_encoder_f AddGrpB_Angle_encode_der; +xer_type_decoder_f AddGrpB_Angle_decode_xer; +xer_type_encoder_f AddGrpB_Angle_encode_xer; +oer_type_decoder_f AddGrpB_Angle_decode_oer; +oer_type_encoder_f AddGrpB_Angle_encode_oer; +per_type_decoder_f AddGrpB_Angle_decode_uper; +per_type_encoder_f AddGrpB_Angle_encode_uper; +per_type_decoder_f AddGrpB_Angle_decode_aper; +per_type_encoder_f AddGrpB_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h new file mode 100644 index 000000000..e60b82fee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_DayOfWeek.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_DayOfWeek_H_ +#define _AddGrpB_DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AddGrpB_DayOfWeek { + AddGrpB_DayOfWeek_unknown = 0, + AddGrpB_DayOfWeek_monday = 1, + AddGrpB_DayOfWeek_tuesday = 2, + AddGrpB_DayOfWeek_wednesday = 3, + AddGrpB_DayOfWeek_thursday = 4, + AddGrpB_DayOfWeek_friday = 5, + AddGrpB_DayOfWeek_saturday = 6, + AddGrpB_DayOfWeek_sunday = 7 +} e_AddGrpB_DayOfWeek; + +/* AddGrpB_DayOfWeek */ +typedef long AddGrpB_DayOfWeek_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek; +extern const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1; +asn_struct_free_f AddGrpB_DayOfWeek_free; +asn_struct_print_f AddGrpB_DayOfWeek_print; +asn_constr_check_f AddGrpB_DayOfWeek_constraint; +ber_type_decoder_f AddGrpB_DayOfWeek_decode_ber; +der_type_encoder_f AddGrpB_DayOfWeek_encode_der; +xer_type_decoder_f AddGrpB_DayOfWeek_decode_xer; +xer_type_encoder_f AddGrpB_DayOfWeek_encode_xer; +oer_type_decoder_f AddGrpB_DayOfWeek_decode_oer; +oer_type_encoder_f AddGrpB_DayOfWeek_encode_oer; +per_type_decoder_f AddGrpB_DayOfWeek_decode_uper; +per_type_encoder_f AddGrpB_DayOfWeek_encode_uper; +per_type_decoder_f AddGrpB_DayOfWeek_decode_aper; +per_type_encoder_f AddGrpB_DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h new file mode 100644 index 000000000..4ade1c06a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_Elevation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_Elevation_H_ +#define _AddGrpB_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_Elevation */ +typedef long AddGrpB_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation; +asn_struct_free_f AddGrpB_Elevation_free; +asn_struct_print_f AddGrpB_Elevation_print; +asn_constr_check_f AddGrpB_Elevation_constraint; +ber_type_decoder_f AddGrpB_Elevation_decode_ber; +der_type_encoder_f AddGrpB_Elevation_encode_der; +xer_type_decoder_f AddGrpB_Elevation_decode_xer; +xer_type_encoder_f AddGrpB_Elevation_encode_xer; +oer_type_decoder_f AddGrpB_Elevation_decode_oer; +oer_type_encoder_f AddGrpB_Elevation_encode_oer; +per_type_decoder_f AddGrpB_Elevation_decode_uper; +per_type_encoder_f AddGrpB_Elevation_encode_uper; +per_type_decoder_f AddGrpB_Elevation_decode_aper; +per_type_encoder_f AddGrpB_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h new file mode 100644 index 000000000..64f57e889 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_MsgCount.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_MsgCount_H_ +#define _AddGrpB_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_MsgCount */ +typedef long AddGrpB_MsgCount_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount; +asn_struct_free_f AddGrpB_MsgCount_free; +asn_struct_print_f AddGrpB_MsgCount_print; +asn_constr_check_f AddGrpB_MsgCount_constraint; +ber_type_decoder_f AddGrpB_MsgCount_decode_ber; +der_type_encoder_f AddGrpB_MsgCount_encode_der; +xer_type_decoder_f AddGrpB_MsgCount_decode_xer; +xer_type_encoder_f AddGrpB_MsgCount_encode_xer; +oer_type_decoder_f AddGrpB_MsgCount_decode_oer; +oer_type_encoder_f AddGrpB_MsgCount_encode_oer; +per_type_decoder_f AddGrpB_MsgCount_decode_uper; +per_type_encoder_f AddGrpB_MsgCount_encode_uper; +per_type_decoder_f AddGrpB_MsgCount_decode_aper; +per_type_encoder_f AddGrpB_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h new file mode 100644 index 000000000..e58042735 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AddGrpB_TimeMark.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AddGrpB_TimeMark_H_ +#define _AddGrpB_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Year.h" +#include "Month.h" +#include "Day.h" +#include "SummerTime.h" +#include "Holiday.h" +#include "AddGrpB_DayOfWeek.h" +#include "Hour.h" +#include "Minute.h" +#include "Second.h" +#include "TenthSecond.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AddGrpB_TimeMark */ +typedef struct AddGrpB_TimeMark { + Year_t year; + Month_t month; + Day_t day; + SummerTime_t summerTime; + Holiday_t holiday; + AddGrpB_DayOfWeek_t dayofWeek; + Hour_t hour; + Minute_t minute; + Second_t second; + TenthSecond_t tenthSecond; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AddGrpB_TimeMark_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark; + +#ifdef __cplusplus +} +#endif + +#endif /* _AddGrpB_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h new file mode 100644 index 000000000..426596db4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeed.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AdvisorySpeed_H_ +#define _AdvisorySpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AdvisorySpeedType.h" +#include "SpeedAdvice.h" +#include "SpeedConfidence.h" +#include "ZoneLength.h" +#include "RestrictionClassID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* AdvisorySpeed */ +typedef struct AdvisorySpeed { + AdvisorySpeedType_t type; + SpeedAdvice_t *speed; /* OPTIONAL */ + SpeedConfidence_t *confidence; /* OPTIONAL */ + ZoneLength_t *distance; /* OPTIONAL */ + RestrictionClassID_t *Class; /* OPTIONAL */ + struct AdvisorySpeed__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} AdvisorySpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _AdvisorySpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h new file mode 100644 index 000000000..8740b2207 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AdvisorySpeedList_H_ +#define _AdvisorySpeedList_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 AdvisorySpeed; + +/* AdvisorySpeedList */ +typedef struct AdvisorySpeedList { + A_SEQUENCE_OF(struct AdvisorySpeed) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AdvisorySpeedList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList; +extern asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1; +extern asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[1]; +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AdvisorySpeed.h" + +#endif /* _AdvisorySpeedList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h new file mode 100644 index 000000000..7943f9e2b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AdvisorySpeedType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AdvisorySpeedType_H_ +#define _AdvisorySpeedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AdvisorySpeedType { + AdvisorySpeedType_none = 0, + AdvisorySpeedType_greenwave = 1, + AdvisorySpeedType_ecoDrive = 2, + AdvisorySpeedType_transit = 3 + /* + * Enumeration is extensible + */ +} e_AdvisorySpeedType; + +/* AdvisorySpeedType */ +typedef long AdvisorySpeedType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType; +extern const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1; +asn_struct_free_f AdvisorySpeedType_free; +asn_struct_print_f AdvisorySpeedType_print; +asn_constr_check_f AdvisorySpeedType_constraint; +ber_type_decoder_f AdvisorySpeedType_decode_ber; +der_type_encoder_f AdvisorySpeedType_encode_der; +xer_type_decoder_f AdvisorySpeedType_decode_xer; +xer_type_encoder_f AdvisorySpeedType_encode_xer; +oer_type_decoder_f AdvisorySpeedType_decode_oer; +oer_type_encoder_f AdvisorySpeedType_encode_oer; +per_type_decoder_f AdvisorySpeedType_decode_uper; +per_type_encoder_f AdvisorySpeedType_encode_uper; +per_type_decoder_f AdvisorySpeedType_decode_aper; +per_type_encoder_f AdvisorySpeedType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AdvisorySpeedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h new file mode 100644 index 000000000..7b8c3d4f3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AllowedManeuvers.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AllowedManeuvers_H_ +#define _AllowedManeuvers_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AllowedManeuvers { + AllowedManeuvers_maneuverStraightAllowed = 0, + AllowedManeuvers_maneuverLeftAllowed = 1, + AllowedManeuvers_maneuverRightAllowed = 2, + AllowedManeuvers_maneuverUTurnAllowed = 3, + AllowedManeuvers_maneuverLeftTurnOnRedAllowed = 4, + AllowedManeuvers_maneuverRightTurnOnRedAllowed = 5, + AllowedManeuvers_maneuverLaneChangeAllowed = 6, + AllowedManeuvers_maneuverNoStoppingAllowed = 7, + AllowedManeuvers_yieldAllwaysRequired = 8, + AllowedManeuvers_goWithHalt = 9, + AllowedManeuvers_caution = 10, + AllowedManeuvers_reserved1 = 11 +} e_AllowedManeuvers; + +/* AllowedManeuvers */ +typedef BIT_STRING_t AllowedManeuvers_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers; +asn_struct_free_f AllowedManeuvers_free; +asn_struct_print_f AllowedManeuvers_print; +asn_constr_check_f AllowedManeuvers_constraint; +ber_type_decoder_f AllowedManeuvers_decode_ber; +der_type_encoder_f AllowedManeuvers_encode_der; +xer_type_decoder_f AllowedManeuvers_decode_xer; +xer_type_encoder_f AllowedManeuvers_encode_xer; +oer_type_decoder_f AllowedManeuvers_decode_oer; +oer_type_encoder_f AllowedManeuvers_encode_oer; +per_type_decoder_f AllowedManeuvers_decode_uper; +per_type_encoder_f AllowedManeuvers_encode_uper; +per_type_decoder_f AllowedManeuvers_decode_aper; +per_type_encoder_f AllowedManeuvers_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AllowedManeuvers_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h new file mode 100644 index 000000000..56ed14e09 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Altitude.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Altitude_H_ +#define _Altitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AltitudeValue.h" +#include "AltitudeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Altitude */ +typedef struct Altitude { + AltitudeValue_t value; + AltitudeConfidence_t confidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Altitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Altitude; +extern asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1; +extern asn_TYPE_member_t asn_MBR_Altitude_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Altitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h new file mode 100644 index 000000000..c24557c92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AltitudeConfidence_H_ +#define _AltitudeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AltitudeConfidence { + AltitudeConfidence_alt_000_01 = 0, + AltitudeConfidence_alt_000_02 = 1, + AltitudeConfidence_alt_000_05 = 2, + AltitudeConfidence_alt_000_10 = 3, + AltitudeConfidence_alt_000_20 = 4, + AltitudeConfidence_alt_000_50 = 5, + AltitudeConfidence_alt_001_00 = 6, + AltitudeConfidence_alt_002_00 = 7, + AltitudeConfidence_alt_005_00 = 8, + AltitudeConfidence_alt_010_00 = 9, + AltitudeConfidence_alt_020_00 = 10, + AltitudeConfidence_alt_050_00 = 11, + AltitudeConfidence_alt_100_00 = 12, + AltitudeConfidence_alt_200_00 = 13, + AltitudeConfidence_outOfRange = 14, + AltitudeConfidence_unavailable = 15 +} e_AltitudeConfidence; + +/* AltitudeConfidence */ +typedef long AltitudeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1; +asn_struct_free_f AltitudeConfidence_free; +asn_struct_print_f AltitudeConfidence_print; +asn_constr_check_f AltitudeConfidence_constraint; +ber_type_decoder_f AltitudeConfidence_decode_ber; +der_type_encoder_f AltitudeConfidence_encode_der; +xer_type_decoder_f AltitudeConfidence_decode_xer; +xer_type_encoder_f AltitudeConfidence_encode_xer; +oer_type_decoder_f AltitudeConfidence_decode_oer; +oer_type_encoder_f AltitudeConfidence_encode_oer; +per_type_decoder_f AltitudeConfidence_decode_uper; +per_type_encoder_f AltitudeConfidence_encode_uper; +per_type_decoder_f AltitudeConfidence_decode_aper; +per_type_encoder_f AltitudeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h new file mode 100644 index 000000000..d3d0959fb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AltitudeValue.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AltitudeValue_H_ +#define _AltitudeValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AltitudeValue */ +typedef long AltitudeValue_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AltitudeValue; +asn_struct_free_f AltitudeValue_free; +asn_struct_print_f AltitudeValue_print; +asn_constr_check_f AltitudeValue_constraint; +ber_type_decoder_f AltitudeValue_decode_ber; +der_type_encoder_f AltitudeValue_encode_der; +xer_type_decoder_f AltitudeValue_decode_xer; +xer_type_encoder_f AltitudeValue_encode_xer; +oer_type_decoder_f AltitudeValue_decode_oer; +oer_type_encoder_f AltitudeValue_encode_oer; +per_type_decoder_f AltitudeValue_decode_uper; +per_type_encoder_f AltitudeValue_encode_uper; +per_type_decoder_f AltitudeValue_decode_aper; +per_type_encoder_f AltitudeValue_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AltitudeValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h new file mode 100644 index 000000000..085a50db1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirPressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AmbientAirPressure_H_ +#define _AmbientAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirPressure */ +typedef long AmbientAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure; +asn_struct_free_f AmbientAirPressure_free; +asn_struct_print_f AmbientAirPressure_print; +asn_constr_check_f AmbientAirPressure_constraint; +ber_type_decoder_f AmbientAirPressure_decode_ber; +der_type_encoder_f AmbientAirPressure_encode_der; +xer_type_decoder_f AmbientAirPressure_decode_xer; +xer_type_encoder_f AmbientAirPressure_encode_xer; +oer_type_decoder_f AmbientAirPressure_decode_oer; +oer_type_encoder_f AmbientAirPressure_encode_oer; +per_type_decoder_f AmbientAirPressure_decode_uper; +per_type_encoder_f AmbientAirPressure_encode_uper; +per_type_decoder_f AmbientAirPressure_decode_aper; +per_type_encoder_f AmbientAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h new file mode 100644 index 000000000..1250e7069 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AmbientAirTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AmbientAirTemperature_H_ +#define _AmbientAirTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AmbientAirTemperature */ +typedef long AmbientAirTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature; +asn_struct_free_f AmbientAirTemperature_free; +asn_struct_print_f AmbientAirTemperature_print; +asn_constr_check_f AmbientAirTemperature_constraint; +ber_type_decoder_f AmbientAirTemperature_decode_ber; +der_type_encoder_f AmbientAirTemperature_encode_der; +xer_type_decoder_f AmbientAirTemperature_decode_xer; +xer_type_encoder_f AmbientAirTemperature_encode_xer; +oer_type_decoder_f AmbientAirTemperature_decode_oer; +oer_type_encoder_f AmbientAirTemperature_encode_oer; +per_type_decoder_f AmbientAirTemperature_decode_uper; +per_type_encoder_f AmbientAirTemperature_encode_uper; +per_type_decoder_f AmbientAirTemperature_decode_aper; +per_type_encoder_f AmbientAirTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AmbientAirTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h new file mode 100644 index 000000000..2cb35471e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocity.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AngularVelocity_H_ +#define _AngularVelocity_H_ + + +#include + +/* Including external dependencies */ +#include "PitchRate.h" +#include "RollRate.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AngularVelocity */ +typedef struct AngularVelocity { + PitchRate_t pitchRate; + RollRate_t rollRate; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AngularVelocity_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AngularVelocity; +extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1; +extern asn_TYPE_member_t asn_MBR_AngularVelocity_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AngularVelocity_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h new file mode 100644 index 000000000..e1d1e73f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AngularVelocityConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AngularVelocityConfidence_H_ +#define _AngularVelocityConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "PitchRateConfidence.h" +#include "RollRateConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AngularVelocityConfidence */ +typedef struct AngularVelocityConfidence { + PitchRateConfidence_t *pitchRateConfidence /* OPTIONAL */; + RollRateConfidence_t *rollRateConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AngularVelocityConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AngularVelocityConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h new file mode 100644 index 000000000..6bf116c17 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalPropelledType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AnimalPropelledType_H_ +#define _AnimalPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalPropelledType { + AnimalPropelledType_unavailable = 0, + AnimalPropelledType_otherTypes = 1, + AnimalPropelledType_animalMounted = 2, + AnimalPropelledType_animalDrawnCarriage = 3 + /* + * Enumeration is extensible + */ +} e_AnimalPropelledType; + +/* AnimalPropelledType */ +typedef long AnimalPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1; +asn_struct_free_f AnimalPropelledType_free; +asn_struct_print_f AnimalPropelledType_print; +asn_constr_check_f AnimalPropelledType_constraint; +ber_type_decoder_f AnimalPropelledType_decode_ber; +der_type_encoder_f AnimalPropelledType_encode_der; +xer_type_decoder_f AnimalPropelledType_decode_xer; +xer_type_encoder_f AnimalPropelledType_encode_xer; +oer_type_decoder_f AnimalPropelledType_decode_oer; +oer_type_encoder_f AnimalPropelledType_encode_oer; +per_type_decoder_f AnimalPropelledType_decode_uper; +per_type_encoder_f AnimalPropelledType_encode_uper; +per_type_decoder_f AnimalPropelledType_decode_aper; +per_type_encoder_f AnimalPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h new file mode 100644 index 000000000..8ce608ed6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AnimalType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AnimalType_H_ +#define _AnimalType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AnimalType { + AnimalType_unavailable = 0, + AnimalType_serviceUse = 1, + AnimalType_pet = 2, + AnimalType_farm = 3 + /* + * Enumeration is extensible + */ +} e_AnimalType; + +/* AnimalType */ +typedef long AnimalType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AnimalType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AnimalType; +extern const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1; +asn_struct_free_f AnimalType_free; +asn_struct_print_f AnimalType_print; +asn_constr_check_f AnimalType_constraint; +ber_type_decoder_f AnimalType_decode_ber; +der_type_encoder_f AnimalType_encode_der; +xer_type_decoder_f AnimalType_decode_xer; +xer_type_encoder_f AnimalType_encode_xer; +oer_type_decoder_f AnimalType_decode_oer; +oer_type_encoder_f AnimalType_encode_oer; +per_type_decoder_f AnimalType_decode_uper; +per_type_encoder_f AnimalType_encode_uper; +per_type_decoder_f AnimalType_decode_aper; +per_type_encoder_f AnimalType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AnimalType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h new file mode 100644 index 000000000..8574249b9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntennaOffsetSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AntennaOffsetSet_H_ +#define _AntennaOffsetSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "Offset-B09.h" +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AntennaOffsetSet */ +typedef struct AntennaOffsetSet { + Offset_B12_t antOffsetX; + Offset_B09_t antOffsetY; + Offset_B10_t antOffsetZ; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AntennaOffsetSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntennaOffsetSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h new file mode 100644 index 000000000..6d39edf30 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AntiLockBrakeStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AntiLockBrakeStatus_H_ +#define _AntiLockBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AntiLockBrakeStatus { + AntiLockBrakeStatus_unavailable = 0, + AntiLockBrakeStatus_off = 1, + AntiLockBrakeStatus_on = 2, + AntiLockBrakeStatus_engaged = 3 +} e_AntiLockBrakeStatus; + +/* AntiLockBrakeStatus */ +typedef long AntiLockBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1; +asn_struct_free_f AntiLockBrakeStatus_free; +asn_struct_print_f AntiLockBrakeStatus_print; +asn_constr_check_f AntiLockBrakeStatus_constraint; +ber_type_decoder_f AntiLockBrakeStatus_decode_ber; +der_type_encoder_f AntiLockBrakeStatus_encode_der; +xer_type_decoder_f AntiLockBrakeStatus_decode_xer; +xer_type_encoder_f AntiLockBrakeStatus_encode_xer; +oer_type_decoder_f AntiLockBrakeStatus_decode_oer; +oer_type_encoder_f AntiLockBrakeStatus_encode_oer; +per_type_decoder_f AntiLockBrakeStatus_decode_uper; +per_type_encoder_f AntiLockBrakeStatus_encode_uper; +per_type_decoder_f AntiLockBrakeStatus_decode_aper; +per_type_encoder_f AntiLockBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AntiLockBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h new file mode 100644 index 000000000..385a80a5c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ApproachID_H_ +#define _ApproachID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ApproachID */ +typedef long ApproachID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ApproachID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ApproachID; +asn_struct_free_f ApproachID_free; +asn_struct_print_f ApproachID_print; +asn_constr_check_f ApproachID_constraint; +ber_type_decoder_f ApproachID_decode_ber; +der_type_encoder_f ApproachID_encode_der; +xer_type_decoder_f ApproachID_decode_xer; +xer_type_encoder_f ApproachID_encode_xer; +oer_type_decoder_f ApproachID_decode_oer; +oer_type_encoder_f ApproachID_encode_oer; +per_type_decoder_f ApproachID_decode_uper; +per_type_encoder_f ApproachID_encode_uper; +per_type_decoder_f ApproachID_decode_aper; +per_type_encoder_f ApproachID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h new file mode 100644 index 000000000..e09d06979 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ApproachOrLane.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ApproachOrLane_H_ +#define _ApproachOrLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ApproachID.h" +#include "LaneID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ApproachOrLane_PR { + ApproachOrLane_PR_NOTHING, /* No components present */ + ApproachOrLane_PR_approach, + ApproachOrLane_PR_lane +} ApproachOrLane_PR; + +/* ApproachOrLane */ +typedef struct ApproachOrLane { + ApproachOrLane_PR present; + union ApproachOrLane_u { + ApproachID_t approach; + LaneID_t lane; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ApproachOrLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ApproachOrLane; +extern asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ApproachOrLane_1[2]; +extern asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ApproachOrLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h new file mode 100644 index 000000000..9cb397f60 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attachment.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Attachment_H_ +#define _Attachment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Attachment { + Attachment_unavailable = 0, + Attachment_stroller = 1, + Attachment_bicycleTrailer = 2, + Attachment_cart = 3, + Attachment_wheelchair = 4, + Attachment_otherWalkAssistAttachments = 5, + Attachment_pet = 6 + /* + * Enumeration is extensible + */ +} e_Attachment; + +/* Attachment */ +typedef long Attachment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Attachment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Attachment; +extern const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1; +asn_struct_free_f Attachment_free; +asn_struct_print_f Attachment_print; +asn_constr_check_f Attachment_constraint; +ber_type_decoder_f Attachment_decode_ber; +der_type_encoder_f Attachment_encode_der; +xer_type_decoder_f Attachment_decode_xer; +xer_type_encoder_f Attachment_encode_xer; +oer_type_decoder_f Attachment_decode_oer; +oer_type_encoder_f Attachment_encode_oer; +per_type_decoder_f Attachment_decode_uper; +per_type_encoder_f Attachment_encode_uper; +per_type_decoder_f Attachment_decode_aper; +per_type_encoder_f Attachment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attachment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h new file mode 100644 index 000000000..0966c4538 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttachmentRadius.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AttachmentRadius_H_ +#define _AttachmentRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttachmentRadius */ +typedef long AttachmentRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AttachmentRadius; +asn_struct_free_f AttachmentRadius_free; +asn_struct_print_f AttachmentRadius_print; +asn_constr_check_f AttachmentRadius_constraint; +ber_type_decoder_f AttachmentRadius_decode_ber; +der_type_encoder_f AttachmentRadius_encode_der; +xer_type_decoder_f AttachmentRadius_decode_xer; +xer_type_encoder_f AttachmentRadius_encode_xer; +oer_type_decoder_f AttachmentRadius_decode_oer; +oer_type_encoder_f AttachmentRadius_encode_oer; +per_type_decoder_f AttachmentRadius_decode_uper; +per_type_encoder_f AttachmentRadius_encode_uper; +per_type_decoder_f AttachmentRadius_decode_aper; +per_type_encoder_f AttachmentRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttachmentRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h new file mode 100644 index 000000000..b2316ff61 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Attitude.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _Attitude_H_ +#define _Attitude_H_ + + +#include + +/* Including external dependencies */ +#include "PitchDetected.h" +#include "RollDetected.h" +#include "YawDetected.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Attitude */ +typedef struct Attitude { + PitchDetected_t pitch; + RollDetected_t roll; + YawDetected_t yaw; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Attitude_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Attitude; +extern asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1; +extern asn_TYPE_member_t asn_MBR_Attitude_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Attitude_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h new file mode 100644 index 000000000..b6377270b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AttitudeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _AttitudeConfidence_H_ +#define _AttitudeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "HeadingConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AttitudeConfidence */ +typedef struct AttitudeConfidence { + HeadingConfidence_t pitchConfidence; + HeadingConfidence_t rollConfidence; + HeadingConfidence_t yawConfidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AttitudeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AttitudeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h new file mode 100644 index 000000000..e1aa96579 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AuxiliaryBrakeStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AuxiliaryBrakeStatus_H_ +#define _AuxiliaryBrakeStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum AuxiliaryBrakeStatus { + AuxiliaryBrakeStatus_unavailable = 0, + AuxiliaryBrakeStatus_off = 1, + AuxiliaryBrakeStatus_on = 2, + AuxiliaryBrakeStatus_reserved = 3 +} e_AuxiliaryBrakeStatus; + +/* AuxiliaryBrakeStatus */ +typedef long AuxiliaryBrakeStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus; +extern const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1; +asn_struct_free_f AuxiliaryBrakeStatus_free; +asn_struct_print_f AuxiliaryBrakeStatus_print; +asn_constr_check_f AuxiliaryBrakeStatus_constraint; +ber_type_decoder_f AuxiliaryBrakeStatus_decode_ber; +der_type_encoder_f AuxiliaryBrakeStatus_encode_der; +xer_type_decoder_f AuxiliaryBrakeStatus_decode_xer; +xer_type_encoder_f AuxiliaryBrakeStatus_encode_xer; +oer_type_decoder_f AuxiliaryBrakeStatus_decode_oer; +oer_type_encoder_f AuxiliaryBrakeStatus_encode_oer; +per_type_decoder_f AuxiliaryBrakeStatus_decode_uper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_uper; +per_type_decoder_f AuxiliaryBrakeStatus_decode_aper; +per_type_encoder_f AuxiliaryBrakeStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AuxiliaryBrakeStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h new file mode 100644 index 000000000..e7e48a127 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AxleLocation_H_ +#define _AxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleLocation */ +typedef long AxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleLocation; +asn_struct_free_f AxleLocation_free; +asn_struct_print_f AxleLocation_print; +asn_constr_check_f AxleLocation_constraint; +ber_type_decoder_f AxleLocation_decode_ber; +der_type_encoder_f AxleLocation_encode_der; +xer_type_decoder_f AxleLocation_decode_xer; +xer_type_encoder_f AxleLocation_encode_xer; +oer_type_decoder_f AxleLocation_decode_oer; +oer_type_encoder_f AxleLocation_encode_oer; +per_type_decoder_f AxleLocation_decode_uper; +per_type_encoder_f AxleLocation_encode_uper; +per_type_decoder_f AxleLocation_decode_aper; +per_type_encoder_f AxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h new file mode 100644 index 000000000..433e1fd9e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AxleWeight_H_ +#define _AxleWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeight */ +typedef long AxleWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AxleWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AxleWeight; +asn_struct_free_f AxleWeight_free; +asn_struct_print_f AxleWeight_print; +asn_constr_check_f AxleWeight_constraint; +ber_type_decoder_f AxleWeight_decode_ber; +der_type_encoder_f AxleWeight_encode_der; +xer_type_decoder_f AxleWeight_decode_xer; +xer_type_encoder_f AxleWeight_encode_xer; +oer_type_decoder_f AxleWeight_decode_oer; +oer_type_encoder_f AxleWeight_encode_oer; +per_type_decoder_f AxleWeight_decode_uper; +per_type_encoder_f AxleWeight_encode_uper; +per_type_decoder_f AxleWeight_decode_aper; +per_type_encoder_f AxleWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h new file mode 100644 index 000000000..424ef65be --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AxleWeightList_H_ +#define _AxleWeightList_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 AxleWeightSet; + +/* AxleWeightList */ +typedef struct AxleWeightList { + A_SEQUENCE_OF(struct AxleWeightSet) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightList; +extern asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightList_1[1]; +extern asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AxleWeightSet.h" + +#endif /* _AxleWeightList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h new file mode 100644 index 000000000..345e92d4d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/AxleWeightSet.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _AxleWeightSet_H_ +#define _AxleWeightSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AxleLocation.h" +#include "AxleWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* AxleWeightSet */ +typedef struct AxleWeightSet { + AxleLocation_t *location; /* OPTIONAL */ + AxleWeight_t *weight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} AxleWeightSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_AxleWeightSet; +extern asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1; +extern asn_TYPE_member_t asn_MBR_AxleWeightSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _AxleWeightSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h new file mode 100644 index 000000000..c1bdbbcfb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BIT_STRING.h @@ -0,0 +1,48 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BIT_STRING_H_ +#define _BIT_STRING_H_ + +#include /* Some help from OCTET STRING */ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct BIT_STRING_s { + uint8_t *buf; /* BIT STRING body */ + size_t size; /* Size of the above buffer */ + + int bits_unused;/* Unused trailing bits in the last octet (0..7) */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} BIT_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING; +extern asn_TYPE_operation_t asn_OP_BIT_STRING; +extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs; + +asn_struct_print_f BIT_STRING_print; /* Human-readable output */ +asn_struct_compare_f BIT_STRING_compare; +asn_constr_check_f BIT_STRING_constraint; +xer_type_encoder_f BIT_STRING_encode_xer; +oer_type_decoder_f BIT_STRING_decode_oer; +oer_type_encoder_f BIT_STRING_encode_oer; +per_type_decoder_f BIT_STRING_decode_uper; +per_type_encoder_f BIT_STRING_encode_uper; +asn_random_fill_f BIT_STRING_random_fill; + +#define BIT_STRING_free OCTET_STRING_free +#define BIT_STRING_decode_ber OCTET_STRING_decode_ber +#define BIT_STRING_encode_der OCTET_STRING_encode_der +#define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary +#define BIT_STRING_decode_aper OCTET_STRING_decode_aper +#define BIT_STRING_encode_aper OCTET_STRING_encode_aper + +#ifdef __cplusplus +} +#endif + +#endif /* _BIT_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h new file mode 100644 index 000000000..198b9e5e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BMPString.h @@ -0,0 +1,37 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BMPString_H_ +#define _BMPString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t BMPString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_BMPString; +extern asn_TYPE_operation_t asn_OP_BMPString; +extern asn_OCTET_STRING_specifics_t asn_SPC_BMPString_specs; + +asn_struct_print_f BMPString_print; /* Human-readable output */ +xer_type_decoder_f BMPString_decode_xer; +xer_type_encoder_f BMPString_encode_xer; + +#define BMPString_free OCTET_STRING_free +#define BMPString_print BMPString_print +#define BMPString_compare OCTET_STRING_compare +#define BMPString_constraint asn_generic_no_constraint +#define BMPString_decode_ber OCTET_STRING_decode_ber +#define BMPString_encode_der OCTET_STRING_encode_der +#define BMPString_decode_uper OCTET_STRING_decode_uper +#define BMPString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _BMPString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h new file mode 100644 index 000000000..620acf7f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BOOLEAN.h @@ -0,0 +1,45 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BOOLEAN_H_ +#define _BOOLEAN_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The underlying integer may contain various values, but everything + * non-zero is capped to 0xff by the DER encoder. The BER decoder may + * yield non-zero values different from 1, beware. + */ +typedef int BOOLEAN_t; + +extern asn_TYPE_descriptor_t asn_DEF_BOOLEAN; +extern asn_TYPE_operation_t asn_OP_BOOLEAN; + +asn_struct_free_f BOOLEAN_free; +asn_struct_print_f BOOLEAN_print; +asn_struct_compare_f BOOLEAN_compare; +ber_type_decoder_f BOOLEAN_decode_ber; +der_type_encoder_f BOOLEAN_encode_der; +oer_type_decoder_f BOOLEAN_decode_oer; +oer_type_encoder_f BOOLEAN_encode_oer; +per_type_decoder_f BOOLEAN_decode_uper; +per_type_encoder_f BOOLEAN_encode_uper; +per_type_decoder_f BOOLEAN_decode_aper; +per_type_encoder_f BOOLEAN_encode_aper; +xer_type_decoder_f BOOLEAN_decode_xer; +xer_type_encoder_f BOOLEAN_encode_xer; +asn_random_fill_f BOOLEAN_random_fill; + +#define BOOLEAN_constraint asn_generic_no_constraint + +#ifdef __cplusplus +} +#endif + +#endif /* _BOOLEAN_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h new file mode 100644 index 000000000..44a91c329 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BSMcoreData.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BSMcoreData_H_ +#define _BSMcoreData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "TemporaryID.h" +#include "DSecond.h" +#include "Latitude.h" +#include "Longitude.h" +#include "DSRC_Elevation.h" +#include "PositionalAccuracy.h" +#include "TransmissionState.h" +#include "Speed.h" +#include "Heading.h" +#include "SteeringWheelAngle.h" +#include "AccelerationSet4Way.h" +#include "BrakeSystemStatus.h" +#include "VehicleSize.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BSMcoreData */ +typedef struct BSMcoreData { + DSRC_MsgCount_t msgCnt; + TemporaryID_t id; + DSecond_t secMark; + Latitude_t lat; + Longitude_t Long; + DSRC_Elevation_t elev; + PositionalAccuracy_t accuracy; + TransmissionState_t transmission; + Speed_t speed; + Heading_t heading; + SteeringWheelAngle_t angle; + AccelerationSet4Way_t accelSet; + BrakeSystemStatus_t brakes; + VehicleSize_t size; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMcoreData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMcoreData; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMcoreData_1[14]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BSMcoreData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h new file mode 100644 index 000000000..255eb247b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage-addGrpCarma.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _BasicSafetyMessage_addGrpCarma_H_ +#define _BasicSafetyMessage_addGrpCarma_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D_addGrpCarma; + +/* BasicSafetyMessage-addGrpCarma */ +typedef struct BasicSafetyMessage_addGrpCarma { + struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints { + A_SEQUENCE_OF(struct Position3D_addGrpCarma) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *routeDestinationPoints; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BasicSafetyMessage_addGrpCarma_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma; +extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1; +extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[1]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D-addGrpCarma.h" + +#endif /* _BasicSafetyMessage_addGrpCarma_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h new file mode 100644 index 000000000..be9886d80 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicSafetyMessage.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _BasicSafetyMessage_H_ +#define _BasicSafetyMessage_H_ + + +#include + +/* Including external dependencies */ +#include "BSMcoreData.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMpartIIExtension; +struct Reg_BasicSafetyMessage; + +/* BasicSafetyMessage */ +typedef struct BasicSafetyMessage { + BSMcoreData_t coreData; + struct BasicSafetyMessage__partII { + A_SEQUENCE_OF(struct BSMpartIIExtension) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *partII; + struct BasicSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} BasicSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PartIIcontent.h" +#include "RegionalExtension.h" + +#endif /* _BasicSafetyMessage_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h new file mode 100644 index 000000000..2d3a53ef6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleClass.h @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BasicVehicleClass_H_ +#define _BasicVehicleClass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BasicVehicleClass */ +typedef long BasicVehicleClass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass; +asn_struct_free_f BasicVehicleClass_free; +asn_struct_print_f BasicVehicleClass_print; +asn_constr_check_f BasicVehicleClass_constraint; +ber_type_decoder_f BasicVehicleClass_decode_ber; +der_type_encoder_f BasicVehicleClass_encode_der; +xer_type_decoder_f BasicVehicleClass_decode_xer; +xer_type_encoder_f BasicVehicleClass_encode_xer; +oer_type_decoder_f BasicVehicleClass_decode_oer; +oer_type_encoder_f BasicVehicleClass_encode_oer; +per_type_decoder_f BasicVehicleClass_decode_uper; +per_type_encoder_f BasicVehicleClass_encode_uper; +per_type_decoder_f BasicVehicleClass_decode_aper; +per_type_encoder_f BasicVehicleClass_encode_aper; +#define BasicVehicleClass_unknownVehicleClass ((BasicVehicleClass_t)0) +#define BasicVehicleClass_specialVehicleClass ((BasicVehicleClass_t)1) +#define BasicVehicleClass_passenger_Vehicle_TypeUnknown ((BasicVehicleClass_t)10) +#define BasicVehicleClass_passenger_Vehicle_TypeOther ((BasicVehicleClass_t)11) +#define BasicVehicleClass_lightTruck_Vehicle_TypeUnknown ((BasicVehicleClass_t)20) +#define BasicVehicleClass_lightTruck_Vehicle_TypeOther ((BasicVehicleClass_t)21) +#define BasicVehicleClass_truck_Vehicle_TypeUnknown ((BasicVehicleClass_t)25) +#define BasicVehicleClass_truck_Vehicle_TypeOther ((BasicVehicleClass_t)26) +#define BasicVehicleClass_truck_axleCnt2 ((BasicVehicleClass_t)27) +#define BasicVehicleClass_truck_axleCnt3 ((BasicVehicleClass_t)28) +#define BasicVehicleClass_truck_axleCnt4 ((BasicVehicleClass_t)29) +#define BasicVehicleClass_truck_axleCnt4Trailer ((BasicVehicleClass_t)30) +#define BasicVehicleClass_truck_axleCnt5Trailer ((BasicVehicleClass_t)31) +#define BasicVehicleClass_truck_axleCnt6Trailer ((BasicVehicleClass_t)32) +#define BasicVehicleClass_truck_axleCnt5MultiTrailer ((BasicVehicleClass_t)33) +#define BasicVehicleClass_truck_axleCnt6MultiTrailer ((BasicVehicleClass_t)34) +#define BasicVehicleClass_truck_axleCnt7MultiTrailer ((BasicVehicleClass_t)35) +#define BasicVehicleClass_motorcycle_TypeUnknown ((BasicVehicleClass_t)40) +#define BasicVehicleClass_motorcycle_TypeOther ((BasicVehicleClass_t)41) +#define BasicVehicleClass_motorcycle_Cruiser_Standard ((BasicVehicleClass_t)42) +#define BasicVehicleClass_motorcycle_SportUnclad ((BasicVehicleClass_t)43) +#define BasicVehicleClass_motorcycle_SportTouring ((BasicVehicleClass_t)44) +#define BasicVehicleClass_motorcycle_SuperSport ((BasicVehicleClass_t)45) +#define BasicVehicleClass_motorcycle_Touring ((BasicVehicleClass_t)46) +#define BasicVehicleClass_motorcycle_Trike ((BasicVehicleClass_t)47) +#define BasicVehicleClass_motorcycle_wPassengers ((BasicVehicleClass_t)48) +#define BasicVehicleClass_transit_TypeUnknown ((BasicVehicleClass_t)50) +#define BasicVehicleClass_transit_TypeOther ((BasicVehicleClass_t)51) +#define BasicVehicleClass_transit_BRT ((BasicVehicleClass_t)52) +#define BasicVehicleClass_transit_ExpressBus ((BasicVehicleClass_t)53) +#define BasicVehicleClass_transit_LocalBus ((BasicVehicleClass_t)54) +#define BasicVehicleClass_transit_SchoolBus ((BasicVehicleClass_t)55) +#define BasicVehicleClass_transit_FixedGuideway ((BasicVehicleClass_t)56) +#define BasicVehicleClass_transit_Paratransit ((BasicVehicleClass_t)57) +#define BasicVehicleClass_transit_Paratransit_Ambulance ((BasicVehicleClass_t)58) +#define BasicVehicleClass_emergency_TypeUnknown ((BasicVehicleClass_t)60) +#define BasicVehicleClass_emergency_TypeOther ((BasicVehicleClass_t)61) +#define BasicVehicleClass_emergency_Fire_Light_Vehicle ((BasicVehicleClass_t)62) +#define BasicVehicleClass_emergency_Fire_Heavy_Vehicle ((BasicVehicleClass_t)63) +#define BasicVehicleClass_emergency_Fire_Paramedic_Vehicle ((BasicVehicleClass_t)64) +#define BasicVehicleClass_emergency_Fire_Ambulance_Vehicle ((BasicVehicleClass_t)65) +#define BasicVehicleClass_emergency_Police_Light_Vehicle ((BasicVehicleClass_t)66) +#define BasicVehicleClass_emergency_Police_Heavy_Vehicle ((BasicVehicleClass_t)67) +#define BasicVehicleClass_emergency_Other_Responder ((BasicVehicleClass_t)68) +#define BasicVehicleClass_emergency_Other_Ambulance ((BasicVehicleClass_t)69) +#define BasicVehicleClass_otherTraveler_TypeUnknown ((BasicVehicleClass_t)80) +#define BasicVehicleClass_otherTraveler_TypeOther ((BasicVehicleClass_t)81) +#define BasicVehicleClass_otherTraveler_Pedestrian ((BasicVehicleClass_t)82) +#define BasicVehicleClass_otherTraveler_Visually_Disabled ((BasicVehicleClass_t)83) +#define BasicVehicleClass_otherTraveler_Physically_Disabled ((BasicVehicleClass_t)84) +#define BasicVehicleClass_otherTraveler_Bicycle ((BasicVehicleClass_t)85) +#define BasicVehicleClass_otherTraveler_Vulnerable_Roadworker ((BasicVehicleClass_t)86) +#define BasicVehicleClass_infrastructure_TypeUnknown ((BasicVehicleClass_t)90) +#define BasicVehicleClass_infrastructure_Fixed ((BasicVehicleClass_t)91) +#define BasicVehicleClass_infrastructure_Movable ((BasicVehicleClass_t)92) +#define BasicVehicleClass_equipped_CargoTrailer ((BasicVehicleClass_t)93) + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleClass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h new file mode 100644 index 000000000..b6c6e6faa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BasicVehicleRole.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BasicVehicleRole_H_ +#define _BasicVehicleRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BasicVehicleRole { + BasicVehicleRole_basicVehicle = 0, + BasicVehicleRole_publicTransport = 1, + BasicVehicleRole_specialTransport = 2, + BasicVehicleRole_dangerousGoods = 3, + BasicVehicleRole_roadWork = 4, + BasicVehicleRole_roadRescue = 5, + BasicVehicleRole_emergency = 6, + BasicVehicleRole_safetyCar = 7, + BasicVehicleRole_none_unknown = 8, + BasicVehicleRole_truck = 9, + BasicVehicleRole_motorcycle = 10, + BasicVehicleRole_roadSideSource = 11, + BasicVehicleRole_police = 12, + BasicVehicleRole_fire = 13, + BasicVehicleRole_ambulance = 14, + BasicVehicleRole_dot = 15, + BasicVehicleRole_transit = 16, + BasicVehicleRole_slowMoving = 17, + BasicVehicleRole_stopNgo = 18, + BasicVehicleRole_cyclist = 19, + BasicVehicleRole_pedestrian = 20, + BasicVehicleRole_nonMotorized = 21, + BasicVehicleRole_military = 22 + /* + * Enumeration is extensible + */ +} e_BasicVehicleRole; + +/* BasicVehicleRole */ +typedef long BasicVehicleRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole; +extern const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1; +asn_struct_free_f BasicVehicleRole_free; +asn_struct_print_f BasicVehicleRole_print; +asn_constr_check_f BasicVehicleRole_constraint; +ber_type_decoder_f BasicVehicleRole_decode_ber; +der_type_encoder_f BasicVehicleRole_encode_der; +xer_type_decoder_f BasicVehicleRole_decode_xer; +xer_type_encoder_f BasicVehicleRole_encode_xer; +oer_type_decoder_f BasicVehicleRole_decode_oer; +oer_type_encoder_f BasicVehicleRole_encode_oer; +per_type_decoder_f BasicVehicleRole_decode_uper; +per_type_encoder_f BasicVehicleRole_encode_uper; +per_type_decoder_f BasicVehicleRole_decode_aper; +per_type_encoder_f BasicVehicleRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BasicVehicleRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h new file mode 100644 index 000000000..ba577ef3f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedPressure.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BrakeAppliedPressure_H_ +#define _BrakeAppliedPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedPressure { + BrakeAppliedPressure_unavailable = 0, + BrakeAppliedPressure_minPressure = 1, + BrakeAppliedPressure_bkLvl_2 = 2, + BrakeAppliedPressure_bkLvl_3 = 3, + BrakeAppliedPressure_bkLvl_4 = 4, + BrakeAppliedPressure_bkLvl_5 = 5, + BrakeAppliedPressure_bkLvl_6 = 6, + BrakeAppliedPressure_bkLvl_7 = 7, + BrakeAppliedPressure_bkLvl_8 = 8, + BrakeAppliedPressure_bkLvl_9 = 9, + BrakeAppliedPressure_bkLvl_10 = 10, + BrakeAppliedPressure_bkLvl_11 = 11, + BrakeAppliedPressure_bkLvl_12 = 12, + BrakeAppliedPressure_bkLvl_13 = 13, + BrakeAppliedPressure_bkLvl_14 = 14, + BrakeAppliedPressure_maxPressure = 15 +} e_BrakeAppliedPressure; + +/* BrakeAppliedPressure */ +typedef long BrakeAppliedPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1; +asn_struct_free_f BrakeAppliedPressure_free; +asn_struct_print_f BrakeAppliedPressure_print; +asn_constr_check_f BrakeAppliedPressure_constraint; +ber_type_decoder_f BrakeAppliedPressure_decode_ber; +der_type_encoder_f BrakeAppliedPressure_encode_der; +xer_type_decoder_f BrakeAppliedPressure_decode_xer; +xer_type_encoder_f BrakeAppliedPressure_encode_xer; +oer_type_decoder_f BrakeAppliedPressure_decode_oer; +oer_type_encoder_f BrakeAppliedPressure_encode_oer; +per_type_decoder_f BrakeAppliedPressure_decode_uper; +per_type_encoder_f BrakeAppliedPressure_encode_uper; +per_type_decoder_f BrakeAppliedPressure_decode_aper; +per_type_encoder_f BrakeAppliedPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h new file mode 100644 index 000000000..d5a7d3225 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeAppliedStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BrakeAppliedStatus_H_ +#define _BrakeAppliedStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeAppliedStatus { + BrakeAppliedStatus_unavailable = 0, + BrakeAppliedStatus_leftFront = 1, + BrakeAppliedStatus_leftRear = 2, + BrakeAppliedStatus_rightFront = 3, + BrakeAppliedStatus_rightRear = 4 +} e_BrakeAppliedStatus; + +/* BrakeAppliedStatus */ +typedef BIT_STRING_t BrakeAppliedStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus; +asn_struct_free_f BrakeAppliedStatus_free; +asn_struct_print_f BrakeAppliedStatus_print; +asn_constr_check_f BrakeAppliedStatus_constraint; +ber_type_decoder_f BrakeAppliedStatus_decode_ber; +der_type_encoder_f BrakeAppliedStatus_encode_der; +xer_type_decoder_f BrakeAppliedStatus_decode_xer; +xer_type_encoder_f BrakeAppliedStatus_encode_xer; +oer_type_decoder_f BrakeAppliedStatus_decode_oer; +oer_type_encoder_f BrakeAppliedStatus_encode_oer; +per_type_decoder_f BrakeAppliedStatus_decode_uper; +per_type_encoder_f BrakeAppliedStatus_encode_uper; +per_type_decoder_f BrakeAppliedStatus_decode_aper; +per_type_encoder_f BrakeAppliedStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeAppliedStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h new file mode 100644 index 000000000..0248177eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeBoostApplied.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BrakeBoostApplied_H_ +#define _BrakeBoostApplied_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BrakeBoostApplied { + BrakeBoostApplied_unavailable = 0, + BrakeBoostApplied_off = 1, + BrakeBoostApplied_on = 2 +} e_BrakeBoostApplied; + +/* BrakeBoostApplied */ +typedef long BrakeBoostApplied_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied; +extern const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1; +asn_struct_free_f BrakeBoostApplied_free; +asn_struct_print_f BrakeBoostApplied_print; +asn_constr_check_f BrakeBoostApplied_constraint; +ber_type_decoder_f BrakeBoostApplied_decode_ber; +der_type_encoder_f BrakeBoostApplied_encode_der; +xer_type_decoder_f BrakeBoostApplied_decode_xer; +xer_type_encoder_f BrakeBoostApplied_encode_xer; +oer_type_decoder_f BrakeBoostApplied_decode_oer; +oer_type_encoder_f BrakeBoostApplied_encode_oer; +per_type_decoder_f BrakeBoostApplied_decode_uper; +per_type_encoder_f BrakeBoostApplied_encode_uper; +per_type_decoder_f BrakeBoostApplied_decode_aper; +per_type_encoder_f BrakeBoostApplied_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeBoostApplied_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h new file mode 100644 index 000000000..f17d9c5ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BrakeSystemStatus.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BrakeSystemStatus_H_ +#define _BrakeSystemStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BrakeAppliedStatus.h" +#include "TractionControlStatus.h" +#include "AntiLockBrakeStatus.h" +#include "StabilityControlStatus.h" +#include "BrakeBoostApplied.h" +#include "AuxiliaryBrakeStatus.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BrakeSystemStatus */ +typedef struct BrakeSystemStatus { + BrakeAppliedStatus_t wheelBrakes; + TractionControlStatus_t traction; + AntiLockBrakeStatus_t abs; + StabilityControlStatus_t scs; + BrakeBoostApplied_t brakeBoost; + AuxiliaryBrakeStatus_t auxBrakes; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BrakeSystemStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BrakeSystemStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h new file mode 100644 index 000000000..cf235ab96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BumperHeight_H_ +#define _BumperHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeight */ +typedef long BumperHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_BumperHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_BumperHeight; +asn_struct_free_f BumperHeight_free; +asn_struct_print_f BumperHeight_print; +asn_constr_check_f BumperHeight_constraint; +ber_type_decoder_f BumperHeight_decode_ber; +der_type_encoder_f BumperHeight_encode_der; +xer_type_decoder_f BumperHeight_decode_xer; +xer_type_encoder_f BumperHeight_encode_xer; +oer_type_decoder_f BumperHeight_decode_oer; +oer_type_encoder_f BumperHeight_encode_oer; +per_type_decoder_f BumperHeight_decode_uper; +per_type_encoder_f BumperHeight_encode_uper; +per_type_decoder_f BumperHeight_decode_aper; +per_type_encoder_f BumperHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h new file mode 100644 index 000000000..7509130f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/BumperHeights.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _BumperHeights_H_ +#define _BumperHeights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BumperHeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* BumperHeights */ +typedef struct BumperHeights { + BumperHeight_t front; + BumperHeight_t rear; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BumperHeights_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BumperHeights; +extern asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1; +extern asn_TYPE_member_t asn_MBR_BumperHeights_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _BumperHeights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h new file mode 100644 index 000000000..623b16869 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/CargoWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _CargoWeight_H_ +#define _CargoWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CargoWeight */ +typedef long CargoWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CargoWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CargoWeight; +asn_struct_free_f CargoWeight_free; +asn_struct_print_f CargoWeight_print; +asn_constr_check_f CargoWeight_constraint; +ber_type_decoder_f CargoWeight_decode_ber; +der_type_encoder_f CargoWeight_encode_der; +xer_type_decoder_f CargoWeight_decode_xer; +xer_type_encoder_f CargoWeight_encode_xer; +oer_type_decoder_f CargoWeight_decode_oer; +oer_type_encoder_f CargoWeight_encode_oer; +per_type_decoder_f CargoWeight_decode_uper; +per_type_encoder_f CargoWeight_encode_uper; +per_type_decoder_f CargoWeight_decode_aper; +per_type_encoder_f CargoWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CargoWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h new file mode 100644 index 000000000..a9ea7ad34 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Circle.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Circle_H_ +#define _Circle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "Radius-B12.h" +#include "DistanceUnits.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Circle */ +typedef struct Circle { + Position3D_t center; + Radius_B12_t radius; + DistanceUnits_t units; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Circle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Circle; +extern asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1; +extern asn_TYPE_member_t asn_MBR_Circle_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Circle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h new file mode 100644 index 000000000..155280700 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ClassificationConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ClassificationConfidence_H_ +#define _ClassificationConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ClassificationConfidence */ +typedef long ClassificationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence; +asn_struct_free_f ClassificationConfidence_free; +asn_struct_print_f ClassificationConfidence_print; +asn_constr_check_f ClassificationConfidence_constraint; +ber_type_decoder_f ClassificationConfidence_decode_ber; +der_type_encoder_f ClassificationConfidence_encode_der; +xer_type_decoder_f ClassificationConfidence_decode_xer; +xer_type_encoder_f ClassificationConfidence_encode_xer; +oer_type_decoder_f ClassificationConfidence_decode_oer; +oer_type_encoder_f ClassificationConfidence_encode_oer; +per_type_decoder_f ClassificationConfidence_decode_uper; +per_type_encoder_f ClassificationConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ClassificationConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h new file mode 100644 index 000000000..604c03038 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoarseHeading.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _CoarseHeading_H_ +#define _CoarseHeading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoarseHeading */ +typedef long CoarseHeading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoarseHeading; +asn_struct_free_f CoarseHeading_free; +asn_struct_print_f CoarseHeading_print; +asn_constr_check_f CoarseHeading_constraint; +ber_type_decoder_f CoarseHeading_decode_ber; +der_type_encoder_f CoarseHeading_encode_der; +xer_type_decoder_f CoarseHeading_decode_xer; +xer_type_encoder_f CoarseHeading_encode_xer; +oer_type_decoder_f CoarseHeading_decode_oer; +oer_type_encoder_f CoarseHeading_encode_oer; +per_type_decoder_f CoarseHeading_decode_uper; +per_type_encoder_f CoarseHeading_encode_uper; +per_type_decoder_f CoarseHeading_decode_aper; +per_type_encoder_f CoarseHeading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoarseHeading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h new file mode 100644 index 000000000..5afe7f9a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/CodeWord.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _CodeWord_H_ +#define _CodeWord_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CodeWord */ +typedef OCTET_STRING_t CodeWord_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CodeWord; +asn_struct_free_f CodeWord_free; +asn_struct_print_f CodeWord_print; +asn_constr_check_f CodeWord_constraint; +ber_type_decoder_f CodeWord_decode_ber; +der_type_encoder_f CodeWord_encode_der; +xer_type_decoder_f CodeWord_decode_xer; +xer_type_encoder_f CodeWord_encode_xer; +oer_type_decoder_f CodeWord_decode_oer; +oer_type_encoder_f CodeWord_encode_oer; +per_type_decoder_f CodeWord_decode_uper; +per_type_encoder_f CodeWord_encode_uper; +per_type_decoder_f CodeWord_decode_aper; +per_type_encoder_f CodeWord_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CodeWord_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h new file mode 100644 index 000000000..c8ade8838 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/CoefficientOfFriction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _CoefficientOfFriction_H_ +#define _CoefficientOfFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* CoefficientOfFriction */ +typedef long CoefficientOfFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction; +asn_struct_free_f CoefficientOfFriction_free; +asn_struct_print_f CoefficientOfFriction_print; +asn_constr_check_f CoefficientOfFriction_constraint; +ber_type_decoder_f CoefficientOfFriction_decode_ber; +der_type_encoder_f CoefficientOfFriction_encode_der; +xer_type_decoder_f CoefficientOfFriction_decode_xer; +xer_type_encoder_f CoefficientOfFriction_encode_xer; +oer_type_decoder_f CoefficientOfFriction_decode_oer; +oer_type_encoder_f CoefficientOfFriction_encode_oer; +per_type_decoder_f CoefficientOfFriction_decode_uper; +per_type_encoder_f CoefficientOfFriction_encode_uper; +per_type_decoder_f CoefficientOfFriction_decode_aper; +per_type_encoder_f CoefficientOfFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoefficientOfFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h new file mode 100644 index 000000000..0520b5082 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/CommonSafetyRequest.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _CommonSafetyRequest_H_ +#define _CommonSafetyRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSRC_MsgCount.h" +#include "TemporaryID.h" +#include "RequestedItemList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* CommonSafetyRequest */ +typedef struct CommonSafetyRequest { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSRC_MsgCount_t *msgCnt; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RequestedItemList_t requests; + struct CommonSafetyRequest__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} CommonSafetyRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _CommonSafetyRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h new file mode 100644 index 000000000..25b7e9de8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ComputedLane.h @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ComputedLane_H_ +#define _ComputedLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "DSRC_Angle.h" +#include "Scale-B12.h" +#include "DrivenLineOffsetSm.h" +#include "DrivenLineOffsetLg.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ComputedLane__offsetXaxis_PR { + ComputedLane__offsetXaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetXaxis_PR_small, + ComputedLane__offsetXaxis_PR_large +} ComputedLane__offsetXaxis_PR; +typedef enum ComputedLane__offsetYaxis_PR { + ComputedLane__offsetYaxis_PR_NOTHING, /* No components present */ + ComputedLane__offsetYaxis_PR_small, + ComputedLane__offsetYaxis_PR_large +} ComputedLane__offsetYaxis_PR; + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* ComputedLane */ +typedef struct ComputedLane { + LaneID_t referenceLaneId; + struct ComputedLane__offsetXaxis { + ComputedLane__offsetXaxis_PR present; + union ComputedLane__offsetXaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetXaxis; + struct ComputedLane__offsetYaxis { + ComputedLane__offsetYaxis_PR present; + union ComputedLane__offsetYaxis_u { + DrivenLineOffsetSm_t small; + DrivenLineOffsetLg_t large; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsetYaxis; + DSRC_Angle_t *rotateXY; /* OPTIONAL */ + Scale_B12_t *scaleXaxis; /* OPTIONAL */ + Scale_B12_t *scaleYaxis; /* OPTIONAL */ + struct ComputedLane__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} ComputedLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ComputedLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ComputedLane_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _ComputedLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h new file mode 100644 index 000000000..08e056145 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Confidence.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Confidence_H_ +#define _Confidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Confidence */ +typedef long Confidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Confidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Confidence; +asn_struct_free_f Confidence_free; +asn_struct_print_f Confidence_print; +asn_constr_check_f Confidence_constraint; +ber_type_decoder_f Confidence_decode_ber; +der_type_encoder_f Confidence_encode_der; +xer_type_decoder_f Confidence_decode_xer; +xer_type_encoder_f Confidence_encode_xer; +oer_type_decoder_f Confidence_decode_oer; +oer_type_encoder_f Confidence_encode_oer; +per_type_decoder_f Confidence_decode_uper; +per_type_encoder_f Confidence_encode_uper; +per_type_decoder_f Confidence_decode_aper; +per_type_encoder_f Confidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Confidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h new file mode 100644 index 000000000..ef2958bb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConfidenceSet.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ConfidenceSet_H_ +#define _ConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeConfidence.h" +#include "SteeringWheelAngleConfidence.h" +#include "HeadingConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelSteerYawRateConfidence; +struct SpeedandHeadingandThrottleConfidence; +struct PositionConfidenceSet; + +/* ConfidenceSet */ +typedef struct ConfidenceSet { + struct AccelSteerYawRateConfidence *accelConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + SteeringWheelAngleConfidence_t *steerConfidence; /* OPTIONAL */ + HeadingConfidence_t *headingConfidence; /* OPTIONAL */ + ThrottleConfidence_t *throttleConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ConfidenceSet_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelSteerYawRateConfidence.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "PositionConfidenceSet.h" + +#endif /* _ConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h new file mode 100644 index 000000000..8ba724afd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectingLane.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ConnectingLane_H_ +#define _ConnectingLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "AllowedManeuvers.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ConnectingLane */ +typedef struct ConnectingLane { + LaneID_t lane; + AllowedManeuvers_t *maneuver; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectingLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectingLane; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectingLane_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ConnectingLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h new file mode 100644 index 000000000..33c6a9d42 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Connection.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Connection_H_ +#define _Connection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ConnectingLane.h" +#include "SignalGroupID.h" +#include "RestrictionClassID.h" +#include "LaneConnectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionReferenceID; + +/* Connection */ +typedef struct Connection { + ConnectingLane_t connectingLane; + struct IntersectionReferenceID *remoteIntersection; /* OPTIONAL */ + SignalGroupID_t *signalGroup; /* OPTIONAL */ + RestrictionClassID_t *userClass; /* OPTIONAL */ + LaneConnectionID_t *connectionID; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Connection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Connection; +extern asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1; +extern asn_TYPE_member_t asn_MBR_Connection_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionReferenceID.h" + +#endif /* _Connection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h new file mode 100644 index 000000000..d7c556924 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist-addGrpC.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ConnectionManeuverAssist_addGrpC_H_ +#define _ConnectionManeuverAssist_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleToLanePositionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeOffsetPointXY; + +/* ConnectionManeuverAssist-addGrpC */ +typedef struct ConnectionManeuverAssist_addGrpC { + VehicleToLanePositionList_t vehicleToLanePositions; + struct NodeOffsetPointXY *rsuDistanceFromAnchor; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectionManeuverAssist_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeOffsetPointXY.h" + +#endif /* _ConnectionManeuverAssist_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h new file mode 100644 index 000000000..fd33e6319 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectionManeuverAssist.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ConnectionManeuverAssist_H_ +#define _ConnectionManeuverAssist_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneConnectionID.h" +#include "ZoneLength.h" +#include "WaitOnStopline.h" +#include "PedestrianBicycleDetect.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* ConnectionManeuverAssist */ +typedef struct ConnectionManeuverAssist { + LaneConnectionID_t connectionID; + ZoneLength_t *queueLength; /* OPTIONAL */ + ZoneLength_t *availableStorageLength; /* OPTIONAL */ + WaitOnStopline_t *waitOnStop; /* OPTIONAL */ + PedestrianBicycleDetect_t *pedBicycleDetect; /* OPTIONAL */ + struct ConnectionManeuverAssist__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} ConnectionManeuverAssist_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist; +extern asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _ConnectionManeuverAssist_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h new file mode 100644 index 000000000..f824b5938 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ConnectsToList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ConnectsToList_H_ +#define _ConnectsToList_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 Connection; + +/* ConnectsToList */ +typedef struct ConnectsToList { + A_SEQUENCE_OF(struct Connection) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ConnectsToList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ConnectsToList; +extern asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1; +extern asn_TYPE_member_t asn_MBR_ConnectsToList_1[1]; +extern asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Connection.h" + +#endif /* _ConnectsToList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h new file mode 100644 index 000000000..56e6b265e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Count.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Count_H_ +#define _Count_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Count */ +typedef long Count_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Count; +asn_struct_free_f Count_free; +asn_struct_print_f Count_print; +asn_constr_check_f Count_constraint; +ber_type_decoder_f Count_decode_ber; +der_type_encoder_f Count_encode_der; +xer_type_decoder_f Count_decode_xer; +xer_type_encoder_f Count_encode_xer; +oer_type_decoder_f Count_decode_oer; +oer_type_encoder_f Count_encode_oer; +per_type_decoder_f Count_decode_uper; +per_type_encoder_f Count_encode_uper; +per_type_decoder_f Count_decode_aper; +per_type_encoder_f Count_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Count_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h new file mode 100644 index 000000000..55a9cbbe6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDate.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DDate_H_ +#define _DDate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDate */ +typedef struct DDate { + DYear_t year; + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDate; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h new file mode 100644 index 000000000..1eebdbdfd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDateTime.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DDateTime_H_ +#define _DDateTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDateTime */ +typedef struct DDateTime { + DYear_t *year; /* OPTIONAL */ + DMonth_t *month; /* OPTIONAL */ + DDay_t *day; /* OPTIONAL */ + DHour_t *hour; /* OPTIONAL */ + DMinute_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DDateTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DDateTime; +extern asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1; +extern asn_TYPE_member_t asn_MBR_DDateTime_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDateTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h new file mode 100644 index 000000000..c961eb38c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DDay.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DDay_H_ +#define _DDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DDay */ +typedef long DDay_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DDay_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DDay; +asn_struct_free_f DDay_free; +asn_struct_print_f DDay_print; +asn_constr_check_f DDay_constraint; +ber_type_decoder_f DDay_decode_ber; +der_type_encoder_f DDay_encode_der; +xer_type_decoder_f DDay_decode_xer; +xer_type_encoder_f DDay_encode_xer; +oer_type_decoder_f DDay_decode_oer; +oer_type_encoder_f DDay_encode_oer; +per_type_decoder_f DDay_decode_uper; +per_type_encoder_f DDay_encode_uper; +per_type_decoder_f DDay_decode_aper; +per_type_encoder_f DDay_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h new file mode 100644 index 000000000..e29e919ec --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DFullTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DFullTime_H_ +#define _DFullTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "DDay.h" +#include "DHour.h" +#include "DMinute.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DFullTime */ +typedef struct DFullTime { + DYear_t year; + DMonth_t month; + DDay_t day; + DHour_t hour; + DMinute_t minute; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DFullTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DFullTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DFullTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h new file mode 100644 index 000000000..2c51bda7b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DHour.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DHour_H_ +#define _DHour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DHour */ +typedef long DHour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DHour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DHour; +asn_struct_free_f DHour_free; +asn_struct_print_f DHour_print; +asn_constr_check_f DHour_constraint; +ber_type_decoder_f DHour_decode_ber; +der_type_encoder_f DHour_encode_der; +xer_type_decoder_f DHour_decode_xer; +xer_type_encoder_f DHour_encode_xer; +oer_type_decoder_f DHour_decode_oer; +oer_type_encoder_f DHour_encode_oer; +per_type_decoder_f DHour_decode_uper; +per_type_encoder_f DHour_encode_uper; +per_type_decoder_f DHour_decode_aper; +per_type_encoder_f DHour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DHour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h new file mode 100644 index 000000000..85e6f241e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMinute.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DMinute_H_ +#define _DMinute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMinute */ +typedef long DMinute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMinute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMinute; +asn_struct_free_f DMinute_free; +asn_struct_print_f DMinute_print; +asn_constr_check_f DMinute_constraint; +ber_type_decoder_f DMinute_decode_ber; +der_type_encoder_f DMinute_encode_der; +xer_type_decoder_f DMinute_decode_xer; +xer_type_encoder_f DMinute_encode_xer; +oer_type_decoder_f DMinute_decode_oer; +oer_type_encoder_f DMinute_encode_oer; +per_type_decoder_f DMinute_decode_uper; +per_type_encoder_f DMinute_encode_uper; +per_type_decoder_f DMinute_decode_aper; +per_type_encoder_f DMinute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMinute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h new file mode 100644 index 000000000..ec28cbfd4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DMonth_H_ +#define _DMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonth */ +typedef long DMonth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DMonth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DMonth; +asn_struct_free_f DMonth_free; +asn_struct_print_f DMonth_print; +asn_constr_check_f DMonth_constraint; +ber_type_decoder_f DMonth_decode_ber; +der_type_encoder_f DMonth_encode_der; +xer_type_decoder_f DMonth_decode_xer; +xer_type_encoder_f DMonth_encode_xer; +oer_type_decoder_f DMonth_decode_oer; +oer_type_encoder_f DMonth_encode_oer; +per_type_decoder_f DMonth_decode_uper; +per_type_encoder_f DMonth_encode_uper; +per_type_decoder_f DMonth_decode_aper; +per_type_encoder_f DMonth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h new file mode 100644 index 000000000..53ef31858 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DMonthDay.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DMonthDay_H_ +#define _DMonthDay_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DMonth.h" +#include "DDay.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DMonthDay */ +typedef struct DMonthDay { + DMonth_t month; + DDay_t day; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DMonthDay_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DMonthDay; + +#ifdef __cplusplus +} +#endif + +#endif /* _DMonthDay_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h new file mode 100644 index 000000000..faf7a805c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DOffset.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DOffset_H_ +#define _DOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DOffset */ +typedef long DOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DOffset; +asn_struct_free_f DOffset_free; +asn_struct_print_f DOffset_print; +asn_constr_check_f DOffset_constraint; +ber_type_decoder_f DOffset_decode_ber; +der_type_encoder_f DOffset_encode_der; +xer_type_decoder_f DOffset_decode_xer; +xer_type_encoder_f DOffset_encode_xer; +oer_type_decoder_f DOffset_decode_oer; +oer_type_encoder_f DOffset_encode_oer; +per_type_decoder_f DOffset_decode_uper; +per_type_encoder_f DOffset_encode_uper; +per_type_decoder_f DOffset_decode_aper; +per_type_encoder_f DOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h new file mode 100644 index 000000000..310a0c081 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCEquippedType.h @@ -0,0 +1,41 @@ +/* + * 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 _DSRCEquippedType_H_ +#define _DSRCEquippedType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCEquippedType */ +typedef BOOLEAN_t DSRCEquippedType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType; +asn_struct_free_f DSRCEquippedType_free; +asn_struct_print_f DSRCEquippedType_print; +asn_constr_check_f DSRCEquippedType_constraint; +ber_type_decoder_f DSRCEquippedType_decode_ber; +der_type_encoder_f DSRCEquippedType_encode_der; +xer_type_decoder_f DSRCEquippedType_decode_xer; +xer_type_encoder_f DSRCEquippedType_encode_xer; +per_type_decoder_f DSRCEquippedType_decode_uper; +per_type_encoder_f DSRCEquippedType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCEquippedType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h new file mode 100644 index 000000000..a74b2e1ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Angle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_Angle_H_ +#define _DSRC_Angle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRC_Angle */ +typedef long DSRC_Angle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSRC_Angle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRC_Angle; +asn_struct_free_f DSRC_Angle_free; +asn_struct_print_f DSRC_Angle_print; +asn_constr_check_f DSRC_Angle_constraint; +ber_type_decoder_f DSRC_Angle_decode_ber; +der_type_encoder_f DSRC_Angle_encode_der; +xer_type_decoder_f DSRC_Angle_decode_xer; +xer_type_encoder_f DSRC_Angle_encode_xer; +oer_type_decoder_f DSRC_Angle_decode_oer; +oer_type_encoder_f DSRC_Angle_encode_oer; +per_type_decoder_f DSRC_Angle_decode_uper; +per_type_encoder_f DSRC_Angle_encode_uper; +per_type_decoder_f DSRC_Angle_decode_aper; +per_type_encoder_f DSRC_Angle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_Angle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h new file mode 100644 index 000000000..d826b978d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_DayOfWeek.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_DayOfWeek_H_ +#define _DSRC_DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DSRC_DayOfWeek { + DSRC_DayOfWeek_sun = 6, + DSRC_DayOfWeek_mon = 5, + DSRC_DayOfWeek_tue = 4, + DSRC_DayOfWeek_wed = 3, + DSRC_DayOfWeek_thu = 2, + DSRC_DayOfWeek_fri = 1, + DSRC_DayOfWeek_sat = 0 +} e_DSRC_DayOfWeek; + +/* DSRC_DayOfWeek */ +typedef BIT_STRING_t DSRC_DayOfWeek_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek; +asn_struct_free_f DSRC_DayOfWeek_free; +asn_struct_print_f DSRC_DayOfWeek_print; +asn_constr_check_f DSRC_DayOfWeek_constraint; +ber_type_decoder_f DSRC_DayOfWeek_decode_ber; +der_type_encoder_f DSRC_DayOfWeek_encode_der; +xer_type_decoder_f DSRC_DayOfWeek_decode_xer; +xer_type_encoder_f DSRC_DayOfWeek_encode_xer; +oer_type_decoder_f DSRC_DayOfWeek_decode_oer; +oer_type_encoder_f DSRC_DayOfWeek_encode_oer; +per_type_decoder_f DSRC_DayOfWeek_decode_uper; +per_type_encoder_f DSRC_DayOfWeek_encode_uper; +per_type_decoder_f DSRC_DayOfWeek_decode_aper; +per_type_encoder_f DSRC_DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h new file mode 100644 index 000000000..ee074893e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_Elevation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_Elevation_H_ +#define _DSRC_Elevation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRC_Elevation */ +typedef long DSRC_Elevation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSRC_Elevation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRC_Elevation; +asn_struct_free_f DSRC_Elevation_free; +asn_struct_print_f DSRC_Elevation_print; +asn_constr_check_f DSRC_Elevation_constraint; +ber_type_decoder_f DSRC_Elevation_decode_ber; +der_type_encoder_f DSRC_Elevation_encode_der; +xer_type_decoder_f DSRC_Elevation_decode_xer; +xer_type_encoder_f DSRC_Elevation_encode_xer; +oer_type_decoder_f DSRC_Elevation_decode_oer; +oer_type_encoder_f DSRC_Elevation_encode_oer; +per_type_decoder_f DSRC_Elevation_decode_uper; +per_type_encoder_f DSRC_Elevation_encode_uper; +per_type_decoder_f DSRC_Elevation_decode_aper; +per_type_encoder_f DSRC_Elevation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_Elevation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h new file mode 100644 index 000000000..1b4ea8b2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_MsgCount.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_MsgCount_H_ +#define _DSRC_MsgCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRC_MsgCount */ +typedef long DSRC_MsgCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSRC_MsgCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRC_MsgCount; +asn_struct_free_f DSRC_MsgCount_free; +asn_struct_print_f DSRC_MsgCount_print; +asn_constr_check_f DSRC_MsgCount_constraint; +ber_type_decoder_f DSRC_MsgCount_decode_ber; +der_type_encoder_f DSRC_MsgCount_encode_der; +xer_type_decoder_f DSRC_MsgCount_decode_xer; +xer_type_encoder_f DSRC_MsgCount_encode_xer; +oer_type_decoder_f DSRC_MsgCount_decode_oer; +oer_type_encoder_f DSRC_MsgCount_encode_oer; +per_type_decoder_f DSRC_MsgCount_decode_uper; +per_type_encoder_f DSRC_MsgCount_encode_uper; +per_type_decoder_f DSRC_MsgCount_decode_aper; +per_type_encoder_f DSRC_MsgCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_MsgCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h new file mode 100644 index 000000000..4e8390a5f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRC_TimeMark.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_TimeMark_H_ +#define _DSRC_TimeMark_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRC_TimeMark */ +typedef long DSRC_TimeMark_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSRC_TimeMark_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRC_TimeMark; +asn_struct_free_f DSRC_TimeMark_free; +asn_struct_print_f DSRC_TimeMark_print; +asn_constr_check_f DSRC_TimeMark_constraint; +ber_type_decoder_f DSRC_TimeMark_decode_ber; +der_type_encoder_f DSRC_TimeMark_encode_der; +xer_type_decoder_f DSRC_TimeMark_decode_xer; +xer_type_encoder_f DSRC_TimeMark_encode_xer; +oer_type_decoder_f DSRC_TimeMark_decode_oer; +oer_type_encoder_f DSRC_TimeMark_encode_oer; +per_type_decoder_f DSRC_TimeMark_decode_uper; +per_type_encoder_f DSRC_TimeMark_encode_uper; +per_type_decoder_f DSRC_TimeMark_decode_aper; +per_type_encoder_f DSRC_TimeMark_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_TimeMark_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h new file mode 100644 index 000000000..10c7dc44f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSRCmsgID.h @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRCmsgID_H_ +#define _DSRCmsgID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSRCmsgID */ +typedef long DSRCmsgID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSRCmsgID; +asn_struct_free_f DSRCmsgID_free; +asn_struct_print_f DSRCmsgID_print; +asn_constr_check_f DSRCmsgID_constraint; +ber_type_decoder_f DSRCmsgID_decode_ber; +der_type_encoder_f DSRCmsgID_encode_der; +xer_type_decoder_f DSRCmsgID_decode_xer; +xer_type_encoder_f DSRCmsgID_encode_xer; +oer_type_decoder_f DSRCmsgID_decode_oer; +oer_type_encoder_f DSRCmsgID_encode_oer; +per_type_decoder_f DSRCmsgID_decode_uper; +per_type_encoder_f DSRCmsgID_encode_uper; +per_type_decoder_f DSRCmsgID_decode_aper; +per_type_encoder_f DSRCmsgID_encode_aper; +// #define DSRCmsgID_reservedMessageId_D ((DSRCmsgID_t)0) +// #define DSRCmsgID_alaCarteMessage_D ((DSRCmsgID_t)1) +// #define DSRCmsgID_basicSafetyMessage_D ((DSRCmsgID_t)2) +// #define DSRCmsgID_basicSafetyMessageVerbose_D ((DSRCmsgID_t)3) +// #define DSRCmsgID_commonSafetyRequest_D ((DSRCmsgID_t)4) +// #define DSRCmsgID_emergencyVehicleAlert_D ((DSRCmsgID_t)5) +// #define DSRCmsgID_intersectionCollision_D ((DSRCmsgID_t)6) +// #define DSRCmsgID_mapData_D ((DSRCmsgID_t)7) +// #define DSRCmsgID_nmeaCorrections_D ((DSRCmsgID_t)8) +// #define DSRCmsgID_probeDataManagement_D ((DSRCmsgID_t)9) +// #define DSRCmsgID_probeVehicleData_D ((DSRCmsgID_t)10) +// #define DSRCmsgID_roadSideAlert_D ((DSRCmsgID_t)11) +// #define DSRCmsgID_rtcmCorrections_D ((DSRCmsgID_t)12) +// #define DSRCmsgID_signalPhaseAndTimingMessage_D ((DSRCmsgID_t)13) +// #define DSRCmsgID_signalRequestMessage_D ((DSRCmsgID_t)14) +// #define DSRCmsgID_signalStatusMessage_D ((DSRCmsgID_t)15) +// #define DSRCmsgID_travelerInformation_D ((DSRCmsgID_t)16) +// #define DSRCmsgID_uperFrame_D ((DSRCmsgID_t)17) +// #define DSRCmsgID_mapData ((DSRCmsgID_t)18) +// #define DSRCmsgID_signalPhaseAndTimingMessage ((DSRCmsgID_t)19) +// #define DSRCmsgID_basicSafetyMessage ((DSRCmsgID_t)20) +// #define DSRCmsgID_commonSafetyRequest ((DSRCmsgID_t)21) +// #define DSRCmsgID_emergencyVehicleAlert ((DSRCmsgID_t)22) +// #define DSRCmsgID_intersectionCollision ((DSRCmsgID_t)23) +// #define DSRCmsgID_nmeaCorrections ((DSRCmsgID_t)24) +// #define DSRCmsgID_probeDataManagement ((DSRCmsgID_t)25) +// #define DSRCmsgID_probeVehicleData ((DSRCmsgID_t)26) +// #define DSRCmsgID_roadSideAlert ((DSRCmsgID_t)27) +// #define DSRCmsgID_rtcmCorrections ((DSRCmsgID_t)28) +// #define DSRCmsgID_signalRequestMessage ((DSRCmsgID_t)29) +// #define DSRCmsgID_signalStatusMessage ((DSRCmsgID_t)30) +// #define DSRCmsgID_travelerInformation ((DSRCmsgID_t)31) +// #define DSRCmsgID_personalSafetyMessage ((DSRCmsgID_t)32) +// #define DSRCmsgID_testMessage00 ((DSRCmsgID_t)240) +// #define DSRCmsgID_testMessage01 ((DSRCmsgID_t)241) +// #define DSRCmsgID_testMessage02 ((DSRCmsgID_t)242) +// #define DSRCmsgID_testMessage03 ((DSRCmsgID_t)243) +// #define DSRCmsgID_testMessage04 ((DSRCmsgID_t)244) +// #define DSRCmsgID_testMessage05 ((DSRCmsgID_t)245) +// #define DSRCmsgID_testMessage06 ((DSRCmsgID_t)246) +// #define DSRCmsgID_testMessage07 ((DSRCmsgID_t)247) +// #define DSRCmsgID_testMessage08 ((DSRCmsgID_t)248) +// #define DSRCmsgID_testMessage09 ((DSRCmsgID_t)249) +// #define DSRCmsgID_testMessage10 ((DSRCmsgID_t)250) +// #define DSRCmsgID_testMessage11 ((DSRCmsgID_t)251) +// #define DSRCmsgID_testMessage12 ((DSRCmsgID_t)252) +// #define DSRCmsgID_testMessage13 ((DSRCmsgID_t)253) +// #define DSRCmsgID_testMessage14 ((DSRCmsgID_t)254) +// #define DSRCmsgID_testMessage15 ((DSRCmsgID_t)255) + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRCmsgID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h new file mode 100644 index 000000000..9ff59e29e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DSecond.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSecond_H_ +#define _DSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DSecond */ +typedef long DSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DSecond; +asn_struct_free_f DSecond_free; +asn_struct_print_f DSecond_print; +asn_constr_check_f DSecond_constraint; +ber_type_decoder_f DSecond_decode_ber; +der_type_encoder_f DSecond_encode_der; +xer_type_decoder_f DSecond_decode_xer; +xer_type_encoder_f DSecond_encode_xer; +oer_type_decoder_f DSecond_decode_oer; +oer_type_encoder_f DSecond_encode_oer; +per_type_decoder_f DSecond_decode_uper; +per_type_encoder_f DSecond_encode_uper; +per_type_decoder_f DSecond_decode_aper; +per_type_encoder_f DSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h new file mode 100644 index 000000000..13e17f4ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DTime_H_ +#define _DTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DHour.h" +#include "DMinute.h" +#include "DSecond.h" +#include "DOffset.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DTime */ +typedef struct DTime { + DHour_t hour; + DMinute_t minute; + DSecond_t second; + DOffset_t *offset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DTime; + +#ifdef __cplusplus +} +#endif + +#endif /* _DTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h new file mode 100644 index 000000000..43ef8535b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYear.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DYear_H_ +#define _DYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYear */ +typedef long DYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DYear; +asn_struct_free_f DYear_free; +asn_struct_print_f DYear_print; +asn_constr_check_f DYear_constraint; +ber_type_decoder_f DYear_decode_ber; +der_type_encoder_f DYear_encode_der; +xer_type_decoder_f DYear_decode_xer; +xer_type_encoder_f DYear_encode_xer; +oer_type_decoder_f DYear_decode_oer; +oer_type_encoder_f DYear_encode_oer; +per_type_decoder_f DYear_decode_uper; +per_type_encoder_f DYear_encode_uper; +per_type_decoder_f DYear_decode_aper; +per_type_encoder_f DYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h new file mode 100644 index 000000000..b76d1e7bf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DYearMonth.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DYearMonth_H_ +#define _DYearMonth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "DMonth.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DYearMonth */ +typedef struct DYearMonth { + DYear_t year; + DMonth_t month; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DYearMonth_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DYearMonth; + +#ifdef __cplusplus +} +#endif + +#endif /* _DYearMonth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h new file mode 100644 index 000000000..43dddacdc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DailySchedule.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DailySchedule_H_ +#define _DailySchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DailySchedule */ +typedef struct DailySchedule { + long begin; + long duration; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DailySchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DailySchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_DailySchedule_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DailySchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h new file mode 100644 index 000000000..f9b1381a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DataParameters.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DataParameters_H_ +#define _DataParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DataParameters */ +typedef struct DataParameters { + IA5String_t *processMethod; /* OPTIONAL */ + IA5String_t *processAgency; /* OPTIONAL */ + IA5String_t *lastCheckedDate; /* OPTIONAL */ + IA5String_t *geoidUsed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DataParameters_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DataParameters; +extern asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1; +extern asn_TYPE_member_t asn_MBR_DataParameters_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DataParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h new file mode 100644 index 000000000..3c984c16f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Day.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Day_H_ +#define _Day_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Day */ +typedef long Day_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Day_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Day; +asn_struct_free_f Day_free; +asn_struct_print_f Day_print; +asn_constr_check_f Day_constraint; +ber_type_decoder_f Day_decode_ber; +der_type_encoder_f Day_encode_der; +xer_type_decoder_f Day_decode_xer; +xer_type_encoder_f Day_encode_xer; +oer_type_decoder_f Day_decode_oer; +oer_type_encoder_f Day_encode_oer; +per_type_decoder_f Day_decode_uper; +per_type_encoder_f Day_encode_uper; +per_type_decoder_f Day_decode_aper; +per_type_encoder_f Day_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Day_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h new file mode 100644 index 000000000..ab125d84e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DayOfWeek.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DayOfWeek_H_ +#define _DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DayOfWeek { + DayOfWeek_unknown = 0, + DayOfWeek_monday = 1, + DayOfWeek_tuesday = 2, + DayOfWeek_wednesday = 3, + DayOfWeek_thursday = 4, + DayOfWeek_friday = 5, + DayOfWeek_saturday = 6, + DayOfWeek_sunday = 7 +} e_DayOfWeek; + +/* DayOfWeek */ +typedef long DayOfWeek_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DayOfWeek; +extern const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1; +asn_struct_free_f DayOfWeek_free; +asn_struct_print_f DayOfWeek_print; +asn_constr_check_f DayOfWeek_constraint; +ber_type_decoder_f DayOfWeek_decode_ber; +der_type_encoder_f DayOfWeek_encode_der; +xer_type_decoder_f DayOfWeek_decode_xer; +xer_type_encoder_f DayOfWeek_encode_xer; +oer_type_decoder_f DayOfWeek_decode_oer; +oer_type_encoder_f DayOfWeek_encode_oer; +per_type_decoder_f DayOfWeek_decode_uper; +per_type_encoder_f DayOfWeek_encode_uper; +per_type_decoder_f DayOfWeek_decode_aper; +per_type_encoder_f DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h new file mode 100644 index 000000000..75c77a2f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DaySchedule.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _DaySchedule_H_ +#define _DaySchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DaySchedule */ +typedef struct DaySchedule { + long begin; + long duration; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DaySchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DaySchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_DaySchedule_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DaySchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h new file mode 100644 index 000000000..1d0a68ea0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLat.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DegreesLat_H_ +#define _DegreesLat_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLat */ +typedef long DegreesLat_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLat_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLat; +asn_struct_free_f DegreesLat_free; +asn_struct_print_f DegreesLat_print; +asn_constr_check_f DegreesLat_constraint; +ber_type_decoder_f DegreesLat_decode_ber; +der_type_encoder_f DegreesLat_encode_der; +xer_type_decoder_f DegreesLat_decode_xer; +xer_type_encoder_f DegreesLat_encode_xer; +oer_type_decoder_f DegreesLat_decode_oer; +oer_type_encoder_f DegreesLat_encode_oer; +per_type_decoder_f DegreesLat_decode_uper; +per_type_encoder_f DegreesLat_encode_uper; +per_type_decoder_f DegreesLat_decode_aper; +per_type_encoder_f DegreesLat_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLat_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h new file mode 100644 index 000000000..46fd0ead3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DegreesLong.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DegreesLong_H_ +#define _DegreesLong_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DegreesLong */ +typedef long DegreesLong_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DegreesLong_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DegreesLong; +asn_struct_free_f DegreesLong_free; +asn_struct_print_f DegreesLong_print; +asn_constr_check_f DegreesLong_constraint; +ber_type_decoder_f DegreesLong_decode_ber; +der_type_encoder_f DegreesLong_encode_der; +xer_type_decoder_f DegreesLong_decode_xer; +xer_type_encoder_f DegreesLong_encode_xer; +oer_type_decoder_f DegreesLong_decode_oer; +oer_type_encoder_f DegreesLong_encode_oer; +per_type_decoder_f DegreesLong_decode_uper; +per_type_encoder_f DegreesLong_encode_uper; +per_type_decoder_f DegreesLong_decode_aper; +per_type_encoder_f DegreesLong_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DegreesLong_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h new file mode 100644 index 000000000..05ddac081 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DeltaAngle_H_ +#define _DeltaAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaAngle */ +typedef long DeltaAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaAngle; +asn_struct_free_f DeltaAngle_free; +asn_struct_print_f DeltaAngle_print; +asn_constr_check_f DeltaAngle_constraint; +ber_type_decoder_f DeltaAngle_decode_ber; +der_type_encoder_f DeltaAngle_encode_der; +xer_type_decoder_f DeltaAngle_decode_xer; +xer_type_encoder_f DeltaAngle_encode_xer; +oer_type_decoder_f DeltaAngle_decode_oer; +oer_type_encoder_f DeltaAngle_encode_oer; +per_type_decoder_f DeltaAngle_decode_uper; +per_type_encoder_f DeltaAngle_encode_uper; +per_type_decoder_f DeltaAngle_decode_aper; +per_type_encoder_f DeltaAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h new file mode 100644 index 000000000..27afd0f92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DeltaTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DeltaTime_H_ +#define _DeltaTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DeltaTime */ +typedef long DeltaTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DeltaTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DeltaTime; +asn_struct_free_f DeltaTime_free; +asn_struct_print_f DeltaTime_print; +asn_constr_check_f DeltaTime_constraint; +ber_type_decoder_f DeltaTime_decode_ber; +der_type_encoder_f DeltaTime_encode_der; +xer_type_decoder_f DeltaTime_decode_xer; +xer_type_encoder_f DeltaTime_encode_xer; +oer_type_decoder_f DeltaTime_decode_oer; +oer_type_encoder_f DeltaTime_encode_oer; +per_type_decoder_f DeltaTime_decode_uper; +per_type_encoder_f DeltaTime_encode_uper; +per_type_decoder_f DeltaTime_decode_aper; +per_type_encoder_f DeltaTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DeltaTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h new file mode 100644 index 000000000..3208b5ed3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DescriptiveName.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DescriptiveName_H_ +#define _DescriptiveName_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DescriptiveName */ +typedef IA5String_t DescriptiveName_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DescriptiveName; +asn_struct_free_f DescriptiveName_free; +asn_struct_print_f DescriptiveName_print; +asn_constr_check_f DescriptiveName_constraint; +ber_type_decoder_f DescriptiveName_decode_ber; +der_type_encoder_f DescriptiveName_encode_der; +xer_type_decoder_f DescriptiveName_decode_xer; +xer_type_encoder_f DescriptiveName_encode_xer; +oer_type_decoder_f DescriptiveName_decode_oer; +oer_type_encoder_f DescriptiveName_encode_oer; +per_type_decoder_f DescriptiveName_decode_uper; +per_type_encoder_f DescriptiveName_encode_uper; +per_type_decoder_f DescriptiveName_decode_aper; +per_type_encoder_f DescriptiveName_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DescriptiveName_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DestinationType.h new file mode 100644 index 000000000..2fd84bf3e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/DetectedObjectCommonData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h new file mode 100644 index 000000000..47a21dd85 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectCommonData.h @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectCommonData_H_ +#define _DetectedObjectCommonData_H_ + + +#include + +/* Including external dependencies */ +#include "ObjectType.h" +#include "ClassificationConfidence.h" +#include "ObjectID.h" +#include "MeasurementTimeOffset.h" +#include "TimeConfidence.h" +#include "PositionOffsetXYZ.h" +#include "PositionConfidenceSet.h" +#include "Speed.h" +#include "SpeedConfidence.h" +#include "Heading.h" +#include "HeadingConfidence.h" +#include "AccelerationConfidence.h" +#include "YawRateConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelerationSet4Way; + +/* DetectedObjectCommonData */ +typedef struct DetectedObjectCommonData { + ObjectType_t objType; + ClassificationConfidence_t objTypeCfd; + ObjectID_t objectID; + MeasurementTimeOffset_t measurementTime; + TimeConfidence_t timeConfidence; + PositionOffsetXYZ_t pos; + PositionConfidenceSet_t posConfidence; + Speed_t speed; + SpeedConfidence_t speedConfidence; + Speed_t *speedZ /* OPTIONAL */; + SpeedConfidence_t *speedConfidenceZ /* OPTIONAL */; + Heading_t heading; + HeadingConfidence_t headingConf; + struct AccelerationSet4Way *accel4way /* OPTIONAL */; + AccelerationConfidence_t *accCfdX /* OPTIONAL */; + AccelerationConfidence_t *accCfdY /* OPTIONAL */; + AccelerationConfidence_t *accCfdZ /* OPTIONAL */; + YawRateConfidence_t *accCfdYaw /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectCommonData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[18]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelerationSet4Way.h" + +#endif /* _DetectedObjectCommonData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h new file mode 100644 index 000000000..e856ddf5f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectData.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectData_H_ +#define _DetectedObjectData_H_ + + +#include + +/* Including external dependencies */ +#include "DetectedObjectCommonData.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DetectedObjectOptionalData; + +/* DetectedObjectData */ +typedef struct DetectedObjectData { + DetectedObjectCommonData_t detObjCommon; + struct DetectedObjectOptionalData *detObjOptData /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectData_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DetectedObjectOptionalData.h" + +#endif /* _DetectedObjectData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h new file mode 100644 index 000000000..c114380dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectList_H_ +#define _DetectedObjectList_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DetectedObjectData; + +/* DetectedObjectList */ +typedef struct DetectedObjectList { + A_SEQUENCE_OF(struct DetectedObjectData) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectList; +extern asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectList_1[1]; +extern asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DetectedObjectData.h" + +#endif /* _DetectedObjectList_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h new file mode 100644 index 000000000..97b9624cf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObjectOptionalData.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObjectOptionalData_H_ +#define _DetectedObjectOptionalData_H_ + + +#include + +/* Including external dependencies */ +#include "DetectedVehicleData.h" +#include "DetectedVRUData.h" +#include "DetectedObstacleData.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DetectedObjectOptionalData_PR { + DetectedObjectOptionalData_PR_NOTHING, /* No components present */ + DetectedObjectOptionalData_PR_detVeh, + DetectedObjectOptionalData_PR_detVRU, + DetectedObjectOptionalData_PR_detObst +} DetectedObjectOptionalData_PR; + +/* DetectedObjectOptionalData */ +typedef struct DetectedObjectOptionalData { + DetectedObjectOptionalData_PR present; + union DetectedObjectOptionalData_u { + DetectedVehicleData_t detVeh; + DetectedVRUData_t detVRU; + DetectedObstacleData_t detObst; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObjectOptionalData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData; +extern asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[3]; +extern asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _DetectedObjectOptionalData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h new file mode 100644 index 000000000..b6f5ad78e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedObstacleData.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedObstacleData_H_ +#define _DetectedObstacleData_H_ + + +#include + +/* Including external dependencies */ +#include "ObstacleSize.h" +#include "ObstacleSizeConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* DetectedObstacleData */ +typedef struct DetectedObstacleData { + ObstacleSize_t obstSize; + ObstacleSizeConfidence_t obstSizeConfidence; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedObstacleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DetectedObstacleData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h new file mode 100644 index 000000000..5bfaffda3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVRUData.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedVRUData_H_ +#define _DetectedVRUData_H_ + + +#include + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PropelledInformation; + +/* DetectedVRUData */ +typedef struct DetectedVRUData { + PersonalDeviceUserType_t *basicType /* OPTIONAL */; + struct PropelledInformation *propulsion /* OPTIONAL */; + Attachment_t *attachment /* OPTIONAL */; + AttachmentRadius_t *radius /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedVRUData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedVRUData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedVRUData_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PropelledInformation.h" + +#endif /* _DetectedVRUData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h new file mode 100644 index 000000000..49a988e5d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DetectedVehicleData.h @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _DetectedVehicleData_H_ +#define _DetectedVehicleData_H_ + + +#include + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "VehicleHeight.h" +#include "BasicVehicleClass.h" +#include "ClassificationConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Attitude; +struct AttitudeConfidence; +struct AngularVelocity; +struct AngularVelocityConfidence; +struct VehicleSize; +struct VehicleSizeConfidence; + +/* DetectedVehicleData */ +typedef struct DetectedVehicleData { + ExteriorLights_t *lights /* OPTIONAL */; + struct Attitude *vehAttitude /* OPTIONAL */; + struct AttitudeConfidence *vehAttitudeConfidence /* OPTIONAL */; + struct AngularVelocity *vehAngVel /* OPTIONAL */; + struct AngularVelocityConfidence *vehAngVelConfidence /* OPTIONAL */; + struct VehicleSize *size /* OPTIONAL */; + VehicleHeight_t *height /* OPTIONAL */; + struct VehicleSizeConfidence *vehicleSizeConfidence /* OPTIONAL */; + BasicVehicleClass_t *vehicleClass /* OPTIONAL */; + ClassificationConfidence_t *classConf /* OPTIONAL */; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DetectedVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Attitude.h" +#include "AttitudeConfidence.h" +#include "AngularVelocity.h" +#include "AngularVelocityConfidence.h" +#include "VehicleSize.h" +#include "VehicleSizeConfidence.h" + +#endif /* _DetectedVehicleData_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h new file mode 100644 index 000000000..908be36db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DirectionOfUse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DirectionOfUse_H_ +#define _DirectionOfUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DirectionOfUse { + DirectionOfUse_unavailable = 0, + DirectionOfUse_forward = 1, + DirectionOfUse_reverse = 2, + DirectionOfUse_both = 3 +} e_DirectionOfUse; + +/* DirectionOfUse */ +typedef long DirectionOfUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DirectionOfUse; +extern const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1; +asn_struct_free_f DirectionOfUse_free; +asn_struct_print_f DirectionOfUse_print; +asn_constr_check_f DirectionOfUse_constraint; +ber_type_decoder_f DirectionOfUse_decode_ber; +der_type_encoder_f DirectionOfUse_encode_der; +xer_type_decoder_f DirectionOfUse_decode_xer; +xer_type_encoder_f DirectionOfUse_encode_xer; +oer_type_decoder_f DirectionOfUse_decode_oer; +oer_type_encoder_f DirectionOfUse_encode_oer; +per_type_decoder_f DirectionOfUse_decode_uper; +per_type_encoder_f DirectionOfUse_encode_uper; +per_type_decoder_f DirectionOfUse_decode_aper; +per_type_encoder_f DirectionOfUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DirectionOfUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h new file mode 100644 index 000000000..4168c1771 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DisabledVehicle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DisabledVehicle_H_ +#define _DisabledVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DisabledVehicle */ +typedef struct DisabledVehicle { + ITIScodes_t statusDetails; + GenericLocations_t *locationDetails; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DisabledVehicle_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DisabledVehicle; +extern asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1; +extern asn_TYPE_member_t asn_MBR_DisabledVehicle_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DisabledVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h new file mode 100644 index 000000000..9c767c8f0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DistanceUnits.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DistanceUnits_H_ +#define _DistanceUnits_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DistanceUnits { + DistanceUnits_centimeter = 0, + DistanceUnits_cm2_5 = 1, + DistanceUnits_decimeter = 2, + DistanceUnits_meter = 3, + DistanceUnits_kilometer = 4, + DistanceUnits_foot = 5, + DistanceUnits_yard = 6, + DistanceUnits_mile = 7 +} e_DistanceUnits; + +/* DistanceUnits */ +typedef long DistanceUnits_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DistanceUnits; +extern const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1; +asn_struct_free_f DistanceUnits_free; +asn_struct_print_f DistanceUnits_print; +asn_constr_check_f DistanceUnits_constraint; +ber_type_decoder_f DistanceUnits_decode_ber; +der_type_encoder_f DistanceUnits_encode_der; +xer_type_decoder_f DistanceUnits_decode_xer; +xer_type_encoder_f DistanceUnits_encode_xer; +oer_type_decoder_f DistanceUnits_decode_oer; +oer_type_encoder_f DistanceUnits_encode_oer; +per_type_decoder_f DistanceUnits_decode_uper; +per_type_encoder_f DistanceUnits_encode_uper; +per_type_decoder_f DistanceUnits_decode_aper; +per_type_encoder_f DistanceUnits_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DistanceUnits_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h new file mode 100644 index 000000000..89ad97717 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLiftAirPressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DriveAxleLiftAirPressure_H_ +#define _DriveAxleLiftAirPressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLiftAirPressure */ +typedef long DriveAxleLiftAirPressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure; +asn_struct_free_f DriveAxleLiftAirPressure_free; +asn_struct_print_f DriveAxleLiftAirPressure_print; +asn_constr_check_f DriveAxleLiftAirPressure_constraint; +ber_type_decoder_f DriveAxleLiftAirPressure_decode_ber; +der_type_encoder_f DriveAxleLiftAirPressure_encode_der; +xer_type_decoder_f DriveAxleLiftAirPressure_decode_xer; +xer_type_encoder_f DriveAxleLiftAirPressure_encode_xer; +oer_type_decoder_f DriveAxleLiftAirPressure_decode_oer; +oer_type_encoder_f DriveAxleLiftAirPressure_encode_oer; +per_type_decoder_f DriveAxleLiftAirPressure_decode_uper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_uper; +per_type_decoder_f DriveAxleLiftAirPressure_decode_aper; +per_type_encoder_f DriveAxleLiftAirPressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLiftAirPressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h new file mode 100644 index 000000000..dd5c8c904 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DriveAxleLocation_H_ +#define _DriveAxleLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLocation */ +typedef long DriveAxleLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation; +asn_struct_free_f DriveAxleLocation_free; +asn_struct_print_f DriveAxleLocation_print; +asn_constr_check_f DriveAxleLocation_constraint; +ber_type_decoder_f DriveAxleLocation_decode_ber; +der_type_encoder_f DriveAxleLocation_encode_der; +xer_type_decoder_f DriveAxleLocation_decode_xer; +xer_type_encoder_f DriveAxleLocation_encode_xer; +oer_type_decoder_f DriveAxleLocation_decode_oer; +oer_type_encoder_f DriveAxleLocation_encode_oer; +per_type_decoder_f DriveAxleLocation_decode_uper; +per_type_encoder_f DriveAxleLocation_encode_uper; +per_type_decoder_f DriveAxleLocation_decode_aper; +per_type_encoder_f DriveAxleLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h new file mode 100644 index 000000000..a62542e19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleLubePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DriveAxleLubePressure_H_ +#define _DriveAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleLubePressure */ +typedef long DriveAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure; +asn_struct_free_f DriveAxleLubePressure_free; +asn_struct_print_f DriveAxleLubePressure_print; +asn_constr_check_f DriveAxleLubePressure_constraint; +ber_type_decoder_f DriveAxleLubePressure_decode_ber; +der_type_encoder_f DriveAxleLubePressure_encode_der; +xer_type_decoder_f DriveAxleLubePressure_decode_xer; +xer_type_encoder_f DriveAxleLubePressure_encode_xer; +oer_type_decoder_f DriveAxleLubePressure_decode_oer; +oer_type_encoder_f DriveAxleLubePressure_encode_oer; +per_type_decoder_f DriveAxleLubePressure_decode_uper; +per_type_encoder_f DriveAxleLubePressure_encode_uper; +per_type_decoder_f DriveAxleLubePressure_decode_aper; +per_type_encoder_f DriveAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h new file mode 100644 index 000000000..5295c7fed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DriveAxleTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DriveAxleTemperature_H_ +#define _DriveAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DriveAxleTemperature */ +typedef long DriveAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature; +asn_struct_free_f DriveAxleTemperature_free; +asn_struct_print_f DriveAxleTemperature_print; +asn_constr_check_f DriveAxleTemperature_constraint; +ber_type_decoder_f DriveAxleTemperature_decode_ber; +der_type_encoder_f DriveAxleTemperature_encode_der; +xer_type_decoder_f DriveAxleTemperature_decode_xer; +xer_type_encoder_f DriveAxleTemperature_encode_xer; +oer_type_decoder_f DriveAxleTemperature_decode_oer; +oer_type_encoder_f DriveAxleTemperature_encode_oer; +per_type_decoder_f DriveAxleTemperature_decode_uper; +per_type_encoder_f DriveAxleTemperature_encode_uper; +per_type_decoder_f DriveAxleTemperature_decode_aper; +per_type_encoder_f DriveAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DriveAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h new file mode 100644 index 000000000..022f842eb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetLg.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DrivenLineOffsetLg_H_ +#define _DrivenLineOffsetLg_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetLg */ +typedef long DrivenLineOffsetLg_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg; +asn_struct_free_f DrivenLineOffsetLg_free; +asn_struct_print_f DrivenLineOffsetLg_print; +asn_constr_check_f DrivenLineOffsetLg_constraint; +ber_type_decoder_f DrivenLineOffsetLg_decode_ber; +der_type_encoder_f DrivenLineOffsetLg_encode_der; +xer_type_decoder_f DrivenLineOffsetLg_decode_xer; +xer_type_encoder_f DrivenLineOffsetLg_encode_xer; +oer_type_decoder_f DrivenLineOffsetLg_decode_oer; +oer_type_encoder_f DrivenLineOffsetLg_encode_oer; +per_type_decoder_f DrivenLineOffsetLg_decode_uper; +per_type_encoder_f DrivenLineOffsetLg_encode_uper; +per_type_decoder_f DrivenLineOffsetLg_decode_aper; +per_type_encoder_f DrivenLineOffsetLg_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetLg_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h new file mode 100644 index 000000000..c8e2c9b4e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivenLineOffsetSm.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DrivenLineOffsetSm_H_ +#define _DrivenLineOffsetSm_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivenLineOffsetSm */ +typedef long DrivenLineOffsetSm_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm; +asn_struct_free_f DrivenLineOffsetSm_free; +asn_struct_print_f DrivenLineOffsetSm_print; +asn_constr_check_f DrivenLineOffsetSm_constraint; +ber_type_decoder_f DrivenLineOffsetSm_decode_ber; +der_type_encoder_f DrivenLineOffsetSm_encode_der; +xer_type_decoder_f DrivenLineOffsetSm_decode_xer; +xer_type_encoder_f DrivenLineOffsetSm_encode_xer; +oer_type_decoder_f DrivenLineOffsetSm_decode_oer; +oer_type_encoder_f DrivenLineOffsetSm_encode_oer; +per_type_decoder_f DrivenLineOffsetSm_decode_uper; +per_type_encoder_f DrivenLineOffsetSm_encode_uper; +per_type_decoder_f DrivenLineOffsetSm_decode_aper; +per_type_encoder_f DrivenLineOffsetSm_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivenLineOffsetSm_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h new file mode 100644 index 000000000..63060fdc9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/DrivingWheelAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DrivingWheelAngle_H_ +#define _DrivingWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DrivingWheelAngle */ +typedef long DrivingWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle; +asn_struct_free_f DrivingWheelAngle_free; +asn_struct_print_f DrivingWheelAngle_print; +asn_constr_check_f DrivingWheelAngle_constraint; +ber_type_decoder_f DrivingWheelAngle_decode_ber; +der_type_encoder_f DrivingWheelAngle_encode_der; +xer_type_decoder_f DrivingWheelAngle_decode_xer; +xer_type_encoder_f DrivingWheelAngle_encode_xer; +oer_type_decoder_f DrivingWheelAngle_decode_oer; +oer_type_encoder_f DrivingWheelAngle_encode_oer; +per_type_decoder_f DrivingWheelAngle_decode_uper; +per_type_encoder_f DrivingWheelAngle_encode_uper; +per_type_decoder_f DrivingWheelAngle_decode_aper; +per_type_encoder_f DrivingWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DrivingWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h new file mode 100644 index 000000000..958b4614a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Duration.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Duration_H_ +#define _Duration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Duration */ +typedef long Duration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Duration; +asn_struct_free_f Duration_free; +asn_struct_print_f Duration_print; +asn_constr_check_f Duration_constraint; +ber_type_decoder_f Duration_decode_ber; +der_type_encoder_f Duration_encode_der; +xer_type_decoder_f Duration_decode_xer; +xer_type_encoder_f Duration_encode_xer; +oer_type_decoder_f Duration_decode_oer; +oer_type_encoder_f Duration_encode_oer; +per_type_decoder_f Duration_decode_uper; +per_type_encoder_f Duration_encode_uper; +per_type_decoder_f Duration_decode_aper; +per_type_encoder_f Duration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Duration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ENUMERATED.h new file mode 100644 index 000000000..e4df29b4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/EXTERNAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h new file mode 100644 index 000000000..d6ec1c527 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EXTERNAL.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EXTERNAL_H_ +#define _EXTERNAL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OBJECT_IDENTIFIER.h" +#include "NativeInteger.h" +#include "ObjectDescriptor.h" +#include "ANY.h" +#include "OCTET_STRING.h" +#include "BIT_STRING.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EXTERNAL__encoding_PR { + EXTERNAL__encoding_PR_NOTHING, /* No components present */ + EXTERNAL__encoding_PR_single_ASN1_type, + EXTERNAL__encoding_PR_octet_aligned, + EXTERNAL__encoding_PR_arbitrary +} EXTERNAL__encoding_PR; + +/* EXTERNAL */ +typedef struct EXTERNAL { + OBJECT_IDENTIFIER_t *direct_reference; /* OPTIONAL */ + long *indirect_reference; /* OPTIONAL */ + ObjectDescriptor_t *data_value_descriptor; /* OPTIONAL */ + struct EXTERNAL__encoding { + EXTERNAL__encoding_PR present; + union EXTERNAL__encoding_u { + ANY_t single_ASN1_type; + OCTET_STRING_t octet_aligned; + BIT_STRING_t arbitrary; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } encoding; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EXTERNAL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EXTERNAL; + +#ifdef __cplusplus +} +#endif + +#endif /* _EXTERNAL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h new file mode 100644 index 000000000..80e9d0e97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ElevationConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ElevationConfidence_H_ +#define _ElevationConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ElevationConfidence { + ElevationConfidence_unavailable = 0, + ElevationConfidence_elev_500_00 = 1, + ElevationConfidence_elev_200_00 = 2, + ElevationConfidence_elev_100_00 = 3, + ElevationConfidence_elev_050_00 = 4, + ElevationConfidence_elev_020_00 = 5, + ElevationConfidence_elev_010_00 = 6, + ElevationConfidence_elev_005_00 = 7, + ElevationConfidence_elev_002_00 = 8, + ElevationConfidence_elev_001_00 = 9, + ElevationConfidence_elev_000_50 = 10, + ElevationConfidence_elev_000_20 = 11, + ElevationConfidence_elev_000_10 = 12, + ElevationConfidence_elev_000_05 = 13, + ElevationConfidence_elev_000_02 = 14, + ElevationConfidence_elev_000_01 = 15 +} e_ElevationConfidence; + +/* ElevationConfidence */ +typedef long ElevationConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ElevationConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1; +asn_struct_free_f ElevationConfidence_free; +asn_struct_print_f ElevationConfidence_print; +asn_constr_check_f ElevationConfidence_constraint; +ber_type_decoder_f ElevationConfidence_decode_ber; +der_type_encoder_f ElevationConfidence_encode_der; +xer_type_decoder_f ElevationConfidence_decode_xer; +xer_type_encoder_f ElevationConfidence_encode_xer; +oer_type_decoder_f ElevationConfidence_decode_oer; +oer_type_encoder_f ElevationConfidence_encode_oer; +per_type_decoder_f ElevationConfidence_decode_uper; +per_type_encoder_f ElevationConfidence_encode_uper; +per_type_decoder_f ElevationConfidence_decode_aper; +per_type_encoder_f ElevationConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ElevationConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h new file mode 100644 index 000000000..ee6226c4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyDetails.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EmergencyDetails_H_ +#define _EmergencyDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "SirenInUse.h" +#include "LightbarInUse.h" +#include "MultiVehicleResponse.h" +#include "ResponseType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrivilegedEvents; + +/* EmergencyDetails */ +typedef struct EmergencyDetails { + SSPindex_t sspRights; + SirenInUse_t sirenUse; + LightbarInUse_t lightsUse; + MultiVehicleResponse_t multi; + struct PrivilegedEvents *events; /* OPTIONAL */ + ResponseType_t *responseType; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EmergencyDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrivilegedEvents.h" + +#endif /* _EmergencyDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h new file mode 100644 index 000000000..e5eed12da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmergencyVehicleAlert.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EmergencyVehicleAlert_H_ +#define _EmergencyVehicleAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "TemporaryID.h" +#include "RoadSideAlert.h" +#include "ResponseType.h" +#include "VehicleMass.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct Reg_BasicSafetyMessage; + +/* EmergencyVehicleAlert */ +typedef struct EmergencyVehicleAlert { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + TemporaryID_t *id; /* OPTIONAL */ + RoadSideAlert_t rsaMsg; + ResponseType_t *responseType; /* OPTIONAL */ + struct EmergencyDetails *details; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + VehicleType_t *basicType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + struct EmergencyVehicleAlert__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} EmergencyVehicleAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[11]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EmergencyDetails.h" +#include "RegionalExtension.h" + +#endif /* _EmergencyVehicleAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h new file mode 100644 index 000000000..00f166e51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EmissionType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EmissionType_H_ +#define _EmissionType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EmissionType { + EmissionType_typeA = 0, + EmissionType_typeB = 1, + EmissionType_typeC = 2, + EmissionType_typeD = 3, + EmissionType_typeE = 4 + /* + * Enumeration is extensible + */ +} e_EmissionType; + +/* EmissionType */ +typedef long EmissionType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EmissionType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EmissionType; +extern const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1; +asn_struct_free_f EmissionType_free; +asn_struct_print_f EmissionType_print; +asn_constr_check_f EmissionType_constraint; +ber_type_decoder_f EmissionType_decode_ber; +der_type_encoder_f EmissionType_encode_der; +xer_type_decoder_f EmissionType_decode_xer; +xer_type_encoder_f EmissionType_encode_xer; +oer_type_decoder_f EmissionType_decode_oer; +oer_type_encoder_f EmissionType_encode_oer; +per_type_decoder_f EmissionType_decode_uper; +per_type_encoder_f EmissionType_encode_uper; +per_type_decoder_f EmissionType_decode_aper; +per_type_encoder_f EmissionType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EmissionType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h new file mode 100644 index 000000000..4496b02c9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EnabledLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EnabledLaneList_H_ +#define _EnabledLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EnabledLaneList */ +typedef struct EnabledLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EnabledLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EnabledLaneList; +extern asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_EnabledLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _EnabledLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h new file mode 100644 index 000000000..a116028f7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EpochMins.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EpochMins_H_ +#define _EpochMins_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "INTEGER.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EpochMins */ +typedef INTEGER_t EpochMins_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EpochMins_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EpochMins; +asn_struct_free_f EpochMins_free; +asn_struct_print_f EpochMins_print; +asn_constr_check_f EpochMins_constraint; +ber_type_decoder_f EpochMins_decode_ber; +der_type_encoder_f EpochMins_encode_der; +xer_type_decoder_f EpochMins_decode_xer; +xer_type_encoder_f EpochMins_encode_xer; +oer_type_decoder_f EpochMins_decode_oer; +oer_type_encoder_f EpochMins_encode_oer; +per_type_decoder_f EpochMins_decode_uper; +per_type_encoder_f EpochMins_encode_uper; +per_type_decoder_f EpochMins_decode_aper; +per_type_encoder_f EpochMins_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EpochMins_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h new file mode 100644 index 000000000..2d1799bb4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EquipmentType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _EquipmentType_H_ +#define _EquipmentType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EquipmentType { + EquipmentType_unknown = 0, + EquipmentType_rsu = 1, + EquipmentType_obu = 2, + EquipmentType_vru = 3 + /* + * Enumeration is extensible + */ +} e_EquipmentType; + +/* EquipmentType */ +typedef long EquipmentType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EquipmentType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EquipmentType; +extern const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1; +asn_struct_free_f EquipmentType_free; +asn_struct_print_f EquipmentType_print; +asn_constr_check_f EquipmentType_constraint; +ber_type_decoder_f EquipmentType_decode_ber; +der_type_encoder_f EquipmentType_encode_der; +xer_type_decoder_f EquipmentType_decode_xer; +xer_type_encoder_f EquipmentType_encode_xer; +oer_type_decoder_f EquipmentType_decode_oer; +oer_type_encoder_f EquipmentType_encode_oer; +per_type_decoder_f EquipmentType_decode_uper; +per_type_encoder_f EquipmentType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EquipmentType_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h new file mode 100644 index 000000000..9009de37f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssMobileFriction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EssMobileFriction_H_ +#define _EssMobileFriction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssMobileFriction */ +typedef long EssMobileFriction_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssMobileFriction; +asn_struct_free_f EssMobileFriction_free; +asn_struct_print_f EssMobileFriction_print; +asn_constr_check_f EssMobileFriction_constraint; +ber_type_decoder_f EssMobileFriction_decode_ber; +der_type_encoder_f EssMobileFriction_encode_der; +xer_type_decoder_f EssMobileFriction_decode_xer; +xer_type_encoder_f EssMobileFriction_encode_xer; +oer_type_decoder_f EssMobileFriction_decode_oer; +oer_type_encoder_f EssMobileFriction_encode_oer; +per_type_decoder_f EssMobileFriction_decode_uper; +per_type_encoder_f EssMobileFriction_encode_uper; +per_type_decoder_f EssMobileFriction_decode_aper; +per_type_encoder_f EssMobileFriction_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssMobileFriction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h new file mode 100644 index 000000000..d8e276f44 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EssPrecipRate_H_ +#define _EssPrecipRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssPrecipRate */ +typedef long EssPrecipRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipRate; +asn_struct_free_f EssPrecipRate_free; +asn_struct_print_f EssPrecipRate_print; +asn_constr_check_f EssPrecipRate_constraint; +ber_type_decoder_f EssPrecipRate_decode_ber; +der_type_encoder_f EssPrecipRate_encode_der; +xer_type_decoder_f EssPrecipRate_decode_xer; +xer_type_encoder_f EssPrecipRate_encode_xer; +oer_type_decoder_f EssPrecipRate_decode_oer; +oer_type_encoder_f EssPrecipRate_encode_oer; +per_type_decoder_f EssPrecipRate_decode_uper; +per_type_encoder_f EssPrecipRate_encode_uper; +per_type_decoder_f EssPrecipRate_decode_aper; +per_type_encoder_f EssPrecipRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h new file mode 100644 index 000000000..449b9d315 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipSituation.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EssPrecipSituation_H_ +#define _EssPrecipSituation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipSituation { + EssPrecipSituation_other = 1, + EssPrecipSituation_unknown = 2, + EssPrecipSituation_noPrecipitation = 3, + EssPrecipSituation_unidentifiedSlight = 4, + EssPrecipSituation_unidentifiedModerate = 5, + EssPrecipSituation_unidentifiedHeavy = 6, + EssPrecipSituation_snowSlight = 7, + EssPrecipSituation_snowModerate = 8, + EssPrecipSituation_snowHeavy = 9, + EssPrecipSituation_rainSlight = 10, + EssPrecipSituation_rainModerate = 11, + EssPrecipSituation_rainHeavy = 12, + EssPrecipSituation_frozenPrecipitationSlight = 13, + EssPrecipSituation_frozenPrecipitationModerate = 14, + EssPrecipSituation_frozenPrecipitationHeavy = 15 +} e_EssPrecipSituation; + +/* EssPrecipSituation */ +typedef long EssPrecipSituation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1; +asn_struct_free_f EssPrecipSituation_free; +asn_struct_print_f EssPrecipSituation_print; +asn_constr_check_f EssPrecipSituation_constraint; +ber_type_decoder_f EssPrecipSituation_decode_ber; +der_type_encoder_f EssPrecipSituation_encode_der; +xer_type_decoder_f EssPrecipSituation_decode_xer; +xer_type_encoder_f EssPrecipSituation_encode_xer; +oer_type_decoder_f EssPrecipSituation_decode_oer; +oer_type_encoder_f EssPrecipSituation_encode_oer; +per_type_decoder_f EssPrecipSituation_decode_uper; +per_type_encoder_f EssPrecipSituation_encode_uper; +per_type_decoder_f EssPrecipSituation_decode_aper; +per_type_encoder_f EssPrecipSituation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipSituation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h new file mode 100644 index 000000000..e2b438348 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssPrecipYesNo.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EssPrecipYesNo_H_ +#define _EssPrecipYesNo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EssPrecipYesNo { + EssPrecipYesNo_precip = 1, + EssPrecipYesNo_noPrecip = 2, + EssPrecipYesNo_error = 3 +} e_EssPrecipYesNo; + +/* EssPrecipYesNo */ +typedef long EssPrecipYesNo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo; +extern const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1; +asn_struct_free_f EssPrecipYesNo_free; +asn_struct_print_f EssPrecipYesNo_print; +asn_constr_check_f EssPrecipYesNo_constraint; +ber_type_decoder_f EssPrecipYesNo_decode_ber; +der_type_encoder_f EssPrecipYesNo_encode_der; +xer_type_decoder_f EssPrecipYesNo_decode_xer; +xer_type_encoder_f EssPrecipYesNo_encode_xer; +oer_type_decoder_f EssPrecipYesNo_decode_oer; +oer_type_encoder_f EssPrecipYesNo_encode_oer; +per_type_decoder_f EssPrecipYesNo_decode_uper; +per_type_encoder_f EssPrecipYesNo_encode_uper; +per_type_decoder_f EssPrecipYesNo_decode_aper; +per_type_encoder_f EssPrecipYesNo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssPrecipYesNo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h new file mode 100644 index 000000000..598be98fb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EssSolarRadiation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EssSolarRadiation_H_ +#define _EssSolarRadiation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EssSolarRadiation */ +typedef long EssSolarRadiation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation; +asn_struct_free_f EssSolarRadiation_free; +asn_struct_print_f EssSolarRadiation_print; +asn_constr_check_f EssSolarRadiation_constraint; +ber_type_decoder_f EssSolarRadiation_decode_ber; +der_type_encoder_f EssSolarRadiation_encode_der; +xer_type_decoder_f EssSolarRadiation_decode_xer; +xer_type_encoder_f EssSolarRadiation_encode_xer; +oer_type_decoder_f EssSolarRadiation_decode_oer; +oer_type_encoder_f EssSolarRadiation_encode_oer; +per_type_decoder_f EssSolarRadiation_decode_uper; +per_type_encoder_f EssSolarRadiation_encode_uper; +per_type_decoder_f EssSolarRadiation_decode_aper; +per_type_encoder_f EssSolarRadiation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EssSolarRadiation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EstimatedTimeType.h new file mode 100644 index 000000000..3108b5319 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/EventDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h new file mode 100644 index 000000000..c95d00b51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/EventDescription.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _EventDescription_H_ +#define _EventDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* EventDescription */ +typedef struct EventDescription { + ITIScodes_t typeEvent; + struct EventDescription__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct EventDescription__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} EventDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_EventDescription_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _EventDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h new file mode 100644 index 000000000..960e9e6a6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExitService.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ExitService_H_ +#define _ExitService_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExitService__Member__item_PR { + ExitService__Member__item_PR_NOTHING, /* No components present */ + ExitService__Member__item_PR_itis, + ExitService__Member__item_PR_text +} ExitService__Member__item_PR; + +/* Forward definitions */ +typedef struct ExitService__Member { + struct ExitService__Member__item { + ExitService__Member__item_PR present; + union ExitService__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService__Member; + +/* ExitService */ +typedef struct ExitService { + A_SEQUENCE_OF(ExitService__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ExitService_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ExitService; +extern asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1; +extern asn_TYPE_member_t asn_MBR_ExitService_1[1]; +extern asn_per_constraints_t asn_PER_type_ExitService_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExitService_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h new file mode 100644 index 000000000..0c2b78bf2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Extent.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Extent_H_ +#define _Extent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Extent { + Extent_useInstantlyOnly = 0, + Extent_useFor3meters = 1, + Extent_useFor10meters = 2, + Extent_useFor50meters = 3, + Extent_useFor100meters = 4, + Extent_useFor500meters = 5, + Extent_useFor1000meters = 6, + Extent_useFor5000meters = 7, + Extent_useFor10000meters = 8, + Extent_useFor50000meters = 9, + Extent_useFor100000meters = 10, + Extent_useFor500000meters = 11, + Extent_useFor1000000meters = 12, + Extent_useFor5000000meters = 13, + Extent_useFor10000000meters = 14, + Extent_forever = 15 +} e_Extent; + +/* Extent */ +typedef long Extent_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Extent_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Extent; +extern const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1; +asn_struct_free_f Extent_free; +asn_struct_print_f Extent_print; +asn_constr_check_f Extent_constraint; +ber_type_decoder_f Extent_decode_ber; +der_type_encoder_f Extent_encode_der; +xer_type_decoder_f Extent_decode_xer; +xer_type_encoder_f Extent_encode_xer; +oer_type_decoder_f Extent_decode_oer; +oer_type_encoder_f Extent_encode_oer; +per_type_decoder_f Extent_decode_uper; +per_type_encoder_f Extent_encode_uper; +per_type_decoder_f Extent_decode_aper; +per_type_encoder_f Extent_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Extent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h new file mode 100644 index 000000000..012cc9629 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ExteriorLights.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ExteriorLights_H_ +#define _ExteriorLights_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ExteriorLights { + ExteriorLights_lowBeamHeadlightsOn = 0, + ExteriorLights_highBeamHeadlightsOn = 1, + ExteriorLights_leftTurnSignalOn = 2, + ExteriorLights_rightTurnSignalOn = 3, + ExteriorLights_hazardSignalOn = 4, + ExteriorLights_automaticLightControlOn = 5, + ExteriorLights_daytimeRunningLightsOn = 6, + ExteriorLights_fogLightOn = 7, + ExteriorLights_parkingLightsOn = 8 +} e_ExteriorLights; + +/* ExteriorLights */ +typedef BIT_STRING_t ExteriorLights_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ExteriorLights; +asn_struct_free_f ExteriorLights_free; +asn_struct_print_f ExteriorLights_print; +asn_constr_check_f ExteriorLights_constraint; +ber_type_decoder_f ExteriorLights_decode_ber; +der_type_encoder_f ExteriorLights_encode_der; +xer_type_decoder_f ExteriorLights_decode_xer; +xer_type_encoder_f ExteriorLights_encode_xer; +oer_type_decoder_f ExteriorLights_decode_oer; +oer_type_encoder_f ExteriorLights_encode_oer; +per_type_decoder_f ExteriorLights_decode_uper; +per_type_encoder_f ExteriorLights_encode_uper; +per_type_decoder_f ExteriorLights_decode_aper; +per_type_encoder_f ExteriorLights_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ExteriorLights_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h new file mode 100644 index 000000000..079f8e0fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/FuelType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _FuelType_H_ +#define _FuelType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FuelType */ +typedef long FuelType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FuelType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FuelType; +asn_struct_free_f FuelType_free; +asn_struct_print_f FuelType_print; +asn_constr_check_f FuelType_constraint; +ber_type_decoder_f FuelType_decode_ber; +der_type_encoder_f FuelType_encode_der; +xer_type_decoder_f FuelType_decode_xer; +xer_type_encoder_f FuelType_encode_xer; +oer_type_decoder_f FuelType_decode_oer; +oer_type_encoder_f FuelType_encode_oer; +per_type_decoder_f FuelType_decode_uper; +per_type_encoder_f FuelType_encode_uper; +per_type_decoder_f FuelType_decode_aper; +per_type_encoder_f FuelType_encode_aper; +#define FuelType_unknownFuel ((FuelType_t)0) +#define FuelType_gasoline ((FuelType_t)1) +#define FuelType_ethanol ((FuelType_t)2) +#define FuelType_diesel ((FuelType_t)3) +#define FuelType_electric ((FuelType_t)4) +#define FuelType_hybrid ((FuelType_t)5) +#define FuelType_hydrogen ((FuelType_t)6) +#define FuelType_natGasLiquid ((FuelType_t)7) +#define FuelType_natGasComp ((FuelType_t)8) +#define FuelType_propane ((FuelType_t)9) + +#ifdef __cplusplus +} +#endif + +#endif /* _FuelType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h new file mode 100644 index 000000000..b5ef418e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/FullPositionVector.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _FullPositionVector_H_ +#define _FullPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "DSRC_Elevation.h" +#include "Heading.h" +#include "TimeConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct DDateTime; +struct TransmissionAndSpeed; +struct PositionalAccuracy; +struct PositionConfidenceSet; +struct SpeedandHeadingandThrottleConfidence; + +/* FullPositionVector */ +typedef struct FullPositionVector { + struct DDateTime *utcTime; /* OPTIONAL */ + Longitude_t Long; + Latitude_t lat; + DSRC_Elevation_t *elevation; /* OPTIONAL */ + Heading_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + TimeConfidence_t *timeConfidence; /* OPTIONAL */ + struct PositionConfidenceSet *posConfidence; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedConfidence; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} FullPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FullPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_FullPositionVector_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "DDateTime.h" +#include "TransmissionAndSpeed.h" +#include "PositionalAccuracy.h" +#include "PositionConfidenceSet.h" +#include "SpeedandHeadingandThrottleConfidence.h" + +#endif /* _FullPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h new file mode 100644 index 000000000..093c35cf6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/FurtherInfoID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _FurtherInfoID_H_ +#define _FurtherInfoID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* FurtherInfoID */ +typedef OCTET_STRING_t FurtherInfoID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FurtherInfoID; +asn_struct_free_f FurtherInfoID_free; +asn_struct_print_f FurtherInfoID_print; +asn_constr_check_f FurtherInfoID_constraint; +ber_type_decoder_f FurtherInfoID_decode_ber; +der_type_encoder_f FurtherInfoID_encode_der; +xer_type_decoder_f FurtherInfoID_decode_xer; +xer_type_encoder_f FurtherInfoID_encode_xer; +oer_type_decoder_f FurtherInfoID_decode_oer; +oer_type_encoder_f FurtherInfoID_encode_oer; +per_type_decoder_f FurtherInfoID_decode_uper; +per_type_encoder_f FurtherInfoID_encode_uper; +per_type_decoder_f FurtherInfoID_decode_aper; +per_type_encoder_f FurtherInfoID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _FurtherInfoID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h new file mode 100644 index 000000000..20d815eaa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GNSSstatus.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GNSSstatus_H_ +#define _GNSSstatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GNSSstatus { + GNSSstatus_unavailable = 0, + GNSSstatus_isHealthy = 1, + GNSSstatus_isMonitored = 2, + GNSSstatus_baseStationType = 3, + GNSSstatus_aPDOPofUnder5 = 4, + GNSSstatus_inViewOfUnder5 = 5, + GNSSstatus_localCorrectionsPresent = 6, + GNSSstatus_networkCorrectionsPresent = 7 +} e_GNSSstatus; + +/* GNSSstatus */ +typedef BIT_STRING_t GNSSstatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNSSstatus; +asn_struct_free_f GNSSstatus_free; +asn_struct_print_f GNSSstatus_print; +asn_constr_check_f GNSSstatus_constraint; +ber_type_decoder_f GNSSstatus_decode_ber; +der_type_encoder_f GNSSstatus_encode_der; +xer_type_decoder_f GNSSstatus_decode_xer; +xer_type_encoder_f GNSSstatus_encode_xer; +oer_type_decoder_f GNSSstatus_decode_oer; +oer_type_encoder_f GNSSstatus_encode_oer; +per_type_decoder_f GNSSstatus_decode_uper; +per_type_encoder_f GNSSstatus_encode_uper; +per_type_decoder_f GNSSstatus_decode_aper; +per_type_encoder_f GNSSstatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GNSSstatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralString.h new file mode 100644 index 000000000..55b994fa3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/GeneralizedTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeneralizedTime.h new file mode 100644 index 000000000..ace9c0271 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/GenericLane.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h new file mode 100644 index 000000000..cfddbb9b5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLane.h @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GenericLane_H_ +#define _GenericLane_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "DescriptiveName.h" +#include "ApproachID.h" +#include "LaneAttributes.h" +#include "AllowedManeuvers.h" +#include "NodeListXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ConnectsToList; +struct OverlayLaneList; +struct Reg_BasicSafetyMessage; + +/* GenericLane */ +typedef struct GenericLane { + LaneID_t laneID; + DescriptiveName_t *name; /* OPTIONAL */ + ApproachID_t *ingressApproach; /* OPTIONAL */ + ApproachID_t *egressApproach; /* OPTIONAL */ + LaneAttributes_t laneAttributes; + AllowedManeuvers_t *maneuvers; /* OPTIONAL */ + NodeListXY_t nodeList; + struct ConnectsToList *connectsTo; /* OPTIONAL */ + struct OverlayLaneList *overlays; /* OPTIONAL */ + struct GenericLane__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} GenericLane_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericLane; +extern asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericLane_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectsToList.h" +#include "OverlayLaneList.h" +#include "RegionalExtension.h" + +#endif /* _GenericLane_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h new file mode 100644 index 000000000..68087735c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericLocations.h @@ -0,0 +1,150 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GenericLocations_H_ +#define _GenericLocations_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericLocations { + GenericLocations_on_bridges = 7937, + GenericLocations_in_tunnels = 7938, + GenericLocations_entering_or_leaving_tunnels = 7939, + GenericLocations_on_ramps = 7940, + GenericLocations_in_road_construction_area = 7941, + GenericLocations_around_a_curve = 7942, + GenericLocations_on_curve = 8026, + GenericLocations_on_tracks = 8009, + GenericLocations_in_street = 8025, + GenericLocations_shoulder = 8027, + GenericLocations_on_minor_roads = 7943, + GenericLocations_in_the_opposing_lanes = 7944, + GenericLocations_adjacent_to_roadway = 7945, + GenericLocations_across_tracks = 8024, + GenericLocations_on_bend = 7946, + GenericLocations_intersection = 8032, + GenericLocations_entire_intersection = 7947, + GenericLocations_in_the_median = 7948, + GenericLocations_moved_to_side_of_road = 7949, + GenericLocations_moved_to_shoulder = 7950, + GenericLocations_on_the_roadway = 7951, + GenericLocations_dip = 8010, + GenericLocations_traffic_circle = 8011, + GenericLocations_crossover = 8028, + GenericLocations_cross_road = 8029, + GenericLocations_side_road = 8030, + GenericLocations_to = 8014, + GenericLocations_by = 8015, + GenericLocations_through = 8016, + GenericLocations_area_of = 8017, + GenericLocations_under = 8018, + GenericLocations_over = 8019, + GenericLocations_from = 8020, + GenericLocations_approaching = 8021, + GenericLocations_entering_at = 8022, + GenericLocations_exiting_at = 8023, + GenericLocations_in_shaded_areas = 7952, + GenericLocations_in_low_lying_areas = 7953, + GenericLocations_in_the_downtown_area = 7954, + GenericLocations_in_the_inner_city_area = 7955, + GenericLocations_in_parts = 7956, + GenericLocations_in_some_places = 7957, + GenericLocations_in_the_ditch = 7958, + GenericLocations_in_the_valley = 7959, + GenericLocations_on_hill_top = 7960, + GenericLocations_near_the_foothills = 7961, + GenericLocations_at_high_altitudes = 7962, + GenericLocations_near_the_lake = 7963, + GenericLocations_near_the_shore = 7964, + GenericLocations_nearby_basin = 8008, + GenericLocations_over_the_crest_of_a_hill = 7965, + GenericLocations_other_than_on_the_roadway = 7966, + GenericLocations_near_the_beach = 7967, + GenericLocations_near_beach_access_point = 7968, + GenericLocations_mountain_pass = 8006, + GenericLocations_lower_level = 7969, + GenericLocations_upper_level = 7970, + GenericLocations_airport = 7971, + GenericLocations_concourse = 7972, + GenericLocations_gate = 7973, + GenericLocations_baggage_claim = 7974, + GenericLocations_customs_point = 7975, + GenericLocations_reservation_center = 8007, + GenericLocations_station = 7976, + GenericLocations_platform = 7977, + GenericLocations_dock = 7978, + GenericLocations_depot = 7979, + GenericLocations_ev_charging_point = 7980, + GenericLocations_information_welcome_point = 7981, + GenericLocations_at_rest_area = 7982, + GenericLocations_at_service_area = 7983, + GenericLocations_at_weigh_station = 7984, + GenericLocations_roadside_park = 8033, + GenericLocations_picnic_areas = 7985, + GenericLocations_rest_area = 7986, + GenericLocations_service_stations = 7987, + GenericLocations_toilets = 7988, + GenericLocations_bus_stop = 8031, + GenericLocations_park_and_ride_lot = 8012, + GenericLocations_on_the_right = 7989, + GenericLocations_on_the_left = 7990, + GenericLocations_in_the_center = 7991, + GenericLocations_in_the_opposite_direction = 7992, + GenericLocations_cross_traffic = 7993, + GenericLocations_northbound_traffic = 7994, + GenericLocations_eastbound_traffic = 7995, + GenericLocations_southbound_traffic = 7996, + GenericLocations_westbound_traffic = 7997, + GenericLocations_north = 7998, + GenericLocations_south = 7999, + GenericLocations_east = 8000, + GenericLocations_west = 8001, + GenericLocations_northeast = 8002, + GenericLocations_northwest = 8003, + GenericLocations_southeast = 8004, + GenericLocations_southwest = 8005 + /* + * Enumeration is extensible + */ +} e_GenericLocations; + +/* GenericLocations */ +typedef long GenericLocations_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GenericLocations_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GenericLocations; +extern const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1; +asn_struct_free_f GenericLocations_free; +asn_struct_print_f GenericLocations_print; +asn_constr_check_f GenericLocations_constraint; +ber_type_decoder_f GenericLocations_decode_ber; +der_type_encoder_f GenericLocations_encode_der; +xer_type_decoder_f GenericLocations_decode_xer; +xer_type_encoder_f GenericLocations_encode_xer; +oer_type_decoder_f GenericLocations_decode_oer; +oer_type_encoder_f GenericLocations_encode_oer; +per_type_decoder_f GenericLocations_decode_uper; +per_type_encoder_f GenericLocations_encode_uper; +per_type_decoder_f GenericLocations_decode_aper; +per_type_encoder_f GenericLocations_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericLocations_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h new file mode 100644 index 000000000..857ac60e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GenericSignage.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GenericSignage_H_ +#define _GenericSignage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GenericSignage__Member__item_PR { + GenericSignage__Member__item_PR_NOTHING, /* No components present */ + GenericSignage__Member__item_PR_itis, + GenericSignage__Member__item_PR_text +} GenericSignage__Member__item_PR; + +/* Forward definitions */ +typedef struct GenericSignage__Member { + struct GenericSignage__Member__item { + GenericSignage__Member__item_PR present; + union GenericSignage__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage__Member; + +/* GenericSignage */ +typedef struct GenericSignage { + A_SEQUENCE_OF(GenericSignage__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GenericSignage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GenericSignage; +extern asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1; +extern asn_TYPE_member_t asn_MBR_GenericSignage_1[1]; +extern asn_per_constraints_t asn_PER_type_GenericSignage_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _GenericSignage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h new file mode 100644 index 000000000..61fc3f41d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeographicalPath.h @@ -0,0 +1,101 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GeographicalPath_H_ +#define _GeographicalPath_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "BOOLEAN.h" +#include "HeadingSlice.h" +#include "OffsetSystem.h" +#include "GeometricProjection.h" +#include "ValidRegion.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GeographicalPath__description_PR { + GeographicalPath__description_PR_NOTHING, /* No components present */ + GeographicalPath__description_PR_path, + GeographicalPath__description_PR_geometry, + GeographicalPath__description_PR_oldRegion + /* Extensions may appear below */ + +} GeographicalPath__description_PR; + +/* Forward declarations */ +struct RoadSegmentReferenceID; +struct Position3D; +struct Reg_BasicSafetyMessage; + +/* GeographicalPath */ +typedef struct GeographicalPath { + DescriptiveName_t *name; /* OPTIONAL */ + struct RoadSegmentReferenceID *id; /* OPTIONAL */ + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + BOOLEAN_t *closedPath; /* OPTIONAL */ + HeadingSlice_t *direction; /* OPTIONAL */ + struct GeographicalPath__description { + GeographicalPath__description_PR present; + union GeographicalPath__description_u { + OffsetSystem_t path; + GeometricProjection_t geometry; + ValidRegion_t oldRegion; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + struct GeographicalPath__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} GeographicalPath_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeographicalPath; +extern asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1; +extern asn_TYPE_member_t asn_MBR_GeographicalPath_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RoadSegmentReferenceID.h" +#include "Position3D.h" +#include "RegionalExtension.h" + +#endif /* _GeographicalPath_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h new file mode 100644 index 000000000..2dc56a908 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GeometricProjection.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GeometricProjection_H_ +#define _GeometricProjection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "LaneWidth.h" +#include "Circle.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* GeometricProjection */ +typedef struct GeometricProjection { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + Circle_t circle; + struct GeometricProjection__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} GeometricProjection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GeometricProjection; +extern asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1; +extern asn_TYPE_member_t asn_MBR_GeometricProjection_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _GeometricProjection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h new file mode 100644 index 000000000..19cac6852 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GraphicString.h @@ -0,0 +1,36 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _GraphicString_H_ +#define _GraphicString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t GraphicString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_GraphicString; +extern asn_TYPE_operation_t asn_OP_GraphicString; + +#define GraphicString_free OCTET_STRING_free +#define GraphicString_print OCTET_STRING_print +#define GraphicString_compare OCTET_STRING_compare +#define GraphicString_constraint asn_generic_unknown_constraint +#define GraphicString_decode_ber OCTET_STRING_decode_ber +#define GraphicString_encode_der OCTET_STRING_encode_der +#define GraphicString_decode_xer OCTET_STRING_decode_xer_hex +#define GraphicString_encode_xer OCTET_STRING_encode_xer +#define GraphicString_decode_uper OCTET_STRING_decode_uper +#define GraphicString_encode_uper OCTET_STRING_encode_uper +#define GraphicString_decode_aper OCTET_STRING_decode_aper +#define GraphicString_encode_aper OCTET_STRING_encode_aper + +#ifdef __cplusplus +} +#endif + +#endif /* _GraphicString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h new file mode 100644 index 000000000..f7e7b3092 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GrossDistance_H_ +#define _GrossDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossDistance */ +typedef long GrossDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossDistance; +asn_struct_free_f GrossDistance_free; +asn_struct_print_f GrossDistance_print; +asn_constr_check_f GrossDistance_constraint; +ber_type_decoder_f GrossDistance_decode_ber; +der_type_encoder_f GrossDistance_encode_der; +xer_type_decoder_f GrossDistance_decode_xer; +xer_type_encoder_f GrossDistance_encode_xer; +oer_type_decoder_f GrossDistance_decode_oer; +oer_type_encoder_f GrossDistance_encode_oer; +per_type_decoder_f GrossDistance_decode_uper; +per_type_encoder_f GrossDistance_encode_uper; +per_type_decoder_f GrossDistance_decode_aper; +per_type_encoder_f GrossDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h new file mode 100644 index 000000000..9d733f1f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/GrossSpeed.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _GrossSpeed_H_ +#define _GrossSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* GrossSpeed */ +typedef long GrossSpeed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GrossSpeed; +asn_struct_free_f GrossSpeed_free; +asn_struct_print_f GrossSpeed_print; +asn_constr_check_f GrossSpeed_constraint; +ber_type_decoder_f GrossSpeed_decode_ber; +der_type_encoder_f GrossSpeed_encode_der; +xer_type_decoder_f GrossSpeed_decode_xer; +xer_type_encoder_f GrossSpeed_encode_xer; +oer_type_decoder_f GrossSpeed_decode_oer; +oer_type_encoder_f GrossSpeed_encode_oer; +per_type_decoder_f GrossSpeed_decode_uper; +per_type_encoder_f GrossSpeed_encode_uper; +per_type_decoder_f GrossSpeed_decode_aper; +per_type_encoder_f GrossSpeed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GrossSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h new file mode 100644 index 000000000..dcc7776aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Header.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Header_H_ +#define _Header_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "DSRC_MsgCount.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Header */ +typedef struct Header { + DYear_t *year; /* OPTIONAL */ + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t *secMark; /* OPTIONAL */ + DSRC_MsgCount_t *msgIssueRevision; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Header_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Header; +extern asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1; +extern asn_TYPE_member_t asn_MBR_Header_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Header_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h new file mode 100644 index 000000000..a863ca24c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Heading.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Heading_H_ +#define _Heading_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Heading */ +typedef long Heading_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Heading_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Heading; +asn_struct_free_f Heading_free; +asn_struct_print_f Heading_print; +asn_constr_check_f Heading_constraint; +ber_type_decoder_f Heading_decode_ber; +der_type_encoder_f Heading_encode_der; +xer_type_decoder_f Heading_decode_xer; +xer_type_encoder_f Heading_encode_xer; +oer_type_decoder_f Heading_decode_oer; +oer_type_encoder_f Heading_encode_oer; +per_type_decoder_f Heading_decode_uper; +per_type_encoder_f Heading_encode_uper; +per_type_decoder_f Heading_decode_aper; +per_type_encoder_f Heading_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Heading_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h new file mode 100644 index 000000000..ef2a5ae0a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _HeadingConfidence_H_ +#define _HeadingConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingConfidence { + HeadingConfidence_unavailable = 0, + HeadingConfidence_prec10deg = 1, + HeadingConfidence_prec05deg = 2, + HeadingConfidence_prec01deg = 3, + HeadingConfidence_prec0_1deg = 4, + HeadingConfidence_prec0_05deg = 5, + HeadingConfidence_prec0_01deg = 6, + HeadingConfidence_prec0_0125deg = 7 +} e_HeadingConfidence; + +/* HeadingConfidence */ +typedef long HeadingConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1; +asn_struct_free_f HeadingConfidence_free; +asn_struct_print_f HeadingConfidence_print; +asn_constr_check_f HeadingConfidence_constraint; +ber_type_decoder_f HeadingConfidence_decode_ber; +der_type_encoder_f HeadingConfidence_encode_der; +xer_type_decoder_f HeadingConfidence_decode_xer; +xer_type_encoder_f HeadingConfidence_encode_xer; +oer_type_decoder_f HeadingConfidence_decode_oer; +oer_type_encoder_f HeadingConfidence_encode_oer; +per_type_decoder_f HeadingConfidence_decode_uper; +per_type_encoder_f HeadingConfidence_encode_uper; +per_type_decoder_f HeadingConfidence_decode_aper; +per_type_encoder_f HeadingConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h new file mode 100644 index 000000000..bd5c912c3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/HeadingSlice.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _HeadingSlice_H_ +#define _HeadingSlice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HeadingSlice { + HeadingSlice_from000_0to022_5degrees = 0, + HeadingSlice_from022_5to045_0degrees = 1, + HeadingSlice_from045_0to067_5degrees = 2, + HeadingSlice_from067_5to090_0degrees = 3, + HeadingSlice_from090_0to112_5degrees = 4, + HeadingSlice_from112_5to135_0degrees = 5, + HeadingSlice_from135_0to157_5degrees = 6, + HeadingSlice_from157_5to180_0degrees = 7, + HeadingSlice_from180_0to202_5degrees = 8, + HeadingSlice_from202_5to225_0degrees = 9, + HeadingSlice_from225_0to247_5degrees = 10, + HeadingSlice_from247_5to270_0degrees = 11, + HeadingSlice_from270_0to292_5degrees = 12, + HeadingSlice_from292_5to315_0degrees = 13, + HeadingSlice_from315_0to337_5degrees = 14, + HeadingSlice_from337_5to360_0degrees = 15 +} e_HeadingSlice; + +/* HeadingSlice */ +typedef BIT_STRING_t HeadingSlice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HeadingSlice; +asn_struct_free_f HeadingSlice_free; +asn_struct_print_f HeadingSlice_print; +asn_constr_check_f HeadingSlice_constraint; +ber_type_decoder_f HeadingSlice_decode_ber; +der_type_encoder_f HeadingSlice_encode_der; +xer_type_decoder_f HeadingSlice_decode_xer; +xer_type_encoder_f HeadingSlice_encode_xer; +oer_type_decoder_f HeadingSlice_decode_oer; +oer_type_encoder_f HeadingSlice_encode_oer; +per_type_decoder_f HeadingSlice_decode_uper; +per_type_encoder_f HeadingSlice_encode_uper; +per_type_decoder_f HeadingSlice_decode_aper; +per_type_encoder_f HeadingSlice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HeadingSlice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h new file mode 100644 index 000000000..50cde1c08 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Holiday.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Holiday_H_ +#define _Holiday_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Holiday { + Holiday_weekday = 0, + Holiday_holiday = 1 +} e_Holiday; + +/* Holiday */ +typedef long Holiday_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Holiday_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Holiday; +extern const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1; +asn_struct_free_f Holiday_free; +asn_struct_print_f Holiday_print; +asn_constr_check_f Holiday_constraint; +ber_type_decoder_f Holiday_decode_ber; +der_type_encoder_f Holiday_encode_der; +xer_type_decoder_f Holiday_decode_xer; +xer_type_encoder_f Holiday_encode_xer; +oer_type_decoder_f Holiday_decode_oer; +oer_type_encoder_f Holiday_encode_oer; +per_type_decoder_f Holiday_decode_uper; +per_type_encoder_f Holiday_encode_uper; +per_type_decoder_f Holiday_decode_aper; +per_type_encoder_f Holiday_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Holiday_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h new file mode 100644 index 000000000..2bb6858dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Hour.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Hour_H_ +#define _Hour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Hour */ +typedef long Hour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Hour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Hour; +asn_struct_free_f Hour_free; +asn_struct_print_f Hour_print; +asn_constr_check_f Hour_constraint; +ber_type_decoder_f Hour_decode_ber; +der_type_encoder_f Hour_encode_der; +xer_type_decoder_f Hour_decode_xer; +xer_type_encoder_f Hour_encode_xer; +oer_type_decoder_f Hour_decode_oer; +oer_type_encoder_f Hour_encode_oer; +per_type_decoder_f Hour_decode_uper; +per_type_encoder_f Hour_encode_uper; +per_type_decoder_f Hour_decode_aper; +per_type_encoder_f Hour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Hour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h new file mode 100644 index 000000000..b58cb8d62 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/HumanPropelledType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _HumanPropelledType_H_ +#define _HumanPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum HumanPropelledType { + HumanPropelledType_unavailable = 0, + HumanPropelledType_otherTypes = 1, + HumanPropelledType_onFoot = 2, + HumanPropelledType_skateboard = 3, + HumanPropelledType_pushOrKickScooter = 4, + HumanPropelledType_wheelchair = 5 + /* + * Enumeration is extensible + */ +} e_HumanPropelledType; + +/* HumanPropelledType */ +typedef long HumanPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_HumanPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1; +asn_struct_free_f HumanPropelledType_free; +asn_struct_print_f HumanPropelledType_print; +asn_constr_check_f HumanPropelledType_constraint; +ber_type_decoder_f HumanPropelledType_decode_ber; +der_type_encoder_f HumanPropelledType_encode_der; +xer_type_decoder_f HumanPropelledType_decode_xer; +xer_type_encoder_f HumanPropelledType_encode_xer; +oer_type_decoder_f HumanPropelledType_decode_oer; +oer_type_encoder_f HumanPropelledType_encode_oer; +per_type_decoder_f HumanPropelledType_decode_uper; +per_type_encoder_f HumanPropelledType_encode_uper; +per_type_decoder_f HumanPropelledType_decode_aper; +per_type_encoder_f HumanPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _HumanPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h new file mode 100644 index 000000000..321f0c7e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IA5String.h @@ -0,0 +1,40 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _IA5String_H_ +#define _IA5String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t IA5String_t; /* Implemented via OCTET STRING */ + +/* + * IA5String ASN.1 type definition. + */ +extern asn_TYPE_descriptor_t asn_DEF_IA5String; +extern asn_TYPE_operation_t asn_OP_IA5String; + +asn_constr_check_f IA5String_constraint; + +#define IA5String_free OCTET_STRING_free +#define IA5String_print OCTET_STRING_print_utf8 +#define IA5String_compare OCTET_STRING_compare +#define IA5String_decode_ber OCTET_STRING_decode_ber +#define IA5String_encode_der OCTET_STRING_encode_der +#define IA5String_decode_xer OCTET_STRING_decode_xer_utf8 +#define IA5String_encode_xer OCTET_STRING_encode_xer_utf8 +#define IA5String_decode_uper OCTET_STRING_decode_uper +#define IA5String_encode_uper OCTET_STRING_encode_uper +#define IA5String_decode_aper OCTET_STRING_decode_aper +#define IA5String_encode_aper OCTET_STRING_encode_aper + +#ifdef __cplusplus +} +#endif + +#endif /* _IA5String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h new file mode 100644 index 000000000..ca4bc1204 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/INTEGER.h @@ -0,0 +1,108 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _INTEGER_H_ +#define _INTEGER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ASN__PRIMITIVE_TYPE_t INTEGER_t; + +extern asn_TYPE_descriptor_t asn_DEF_INTEGER; +extern asn_TYPE_operation_t asn_OP_INTEGER; + +/* Map with to integer value association */ +typedef struct asn_INTEGER_enum_map_s { + long nat_value; /* associated native integer value */ + size_t enum_len; /* strlen("tag") */ + const char *enum_name; /* "tag" */ +} asn_INTEGER_enum_map_t; + +/* This type describes an enumeration for INTEGER and ENUMERATED types */ +typedef struct asn_INTEGER_specifics_s { + const asn_INTEGER_enum_map_t *value2enum; /* N -> "tag"; sorted by N */ + const unsigned int *enum2value; /* "tag" => N; sorted by tag */ + int map_count; /* Elements in either map */ + int extension; /* This map is extensible */ + int strict_enumeration; /* Enumeration set is fixed */ + int field_width; /* Size of native integer */ + int field_unsigned; /* Signed=0, unsigned=1 */ +} asn_INTEGER_specifics_t; + +#define INTEGER_free ASN__PRIMITIVE_TYPE_free +#define INTEGER_decode_ber ber_decode_primitive +#define INTEGER_constraint asn_generic_no_constraint +asn_struct_print_f INTEGER_print; +asn_struct_compare_f INTEGER_compare; +der_type_encoder_f INTEGER_encode_der; +xer_type_decoder_f INTEGER_decode_xer; +xer_type_encoder_f INTEGER_encode_xer; +oer_type_decoder_f INTEGER_decode_oer; +oer_type_encoder_f INTEGER_encode_oer; +per_type_decoder_f INTEGER_decode_uper; +per_type_encoder_f INTEGER_encode_uper; +per_type_decoder_f INTEGER_decode_aper; +per_type_encoder_f INTEGER_encode_aper; +asn_random_fill_f INTEGER_random_fill; + +/*********************************** + * Some handy conversion routines. * + ***********************************/ + +/* + * Natiwe size-independent conversion of native integers to/from INTEGER. + * (l_size) is in bytes. + * Returns 0 if it was possible to convert, -1 otherwise. + * -1/EINVAL: Mandatory argument missing + * -1/ERANGE: Value encoded is out of range for long representation + * -1/ENOMEM: Memory allocation failed (in asn_*2INTEGER()). + */ +int asn_INTEGER2imax(const INTEGER_t *i, intmax_t *l); +int asn_INTEGER2umax(const INTEGER_t *i, uintmax_t *l); +int asn_imax2INTEGER(INTEGER_t *i, intmax_t l); +int asn_umax2INTEGER(INTEGER_t *i, uintmax_t l); + +/* + * Size-specific conversion helpers. + */ +int asn_INTEGER2long(const INTEGER_t *i, long *l); +int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l); +int asn_long2INTEGER(INTEGER_t *i, long l); +int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l); +int asn_int642INTEGER(INTEGER_t *i, int64_t l); +int asn_uint642INTEGER(INTEGER_t *i, uint64_t l); + +/* A version of strtol/strtoimax(3) with nicer error reporting. */ +enum asn_strtox_result_e { + ASN_STRTOX_ERROR_RANGE = -3, /* Input outside of supported numeric range */ + ASN_STRTOX_ERROR_INVAL = -2, /* Invalid data encountered (e.g., "+-") */ + ASN_STRTOX_EXPECT_MORE = -1, /* More data expected (e.g. "+") */ + ASN_STRTOX_OK = 0, /* Conversion succeeded, number ends at (*end) */ + ASN_STRTOX_EXTRA_DATA = 1 /* Conversion succeeded, but the string has extra stuff */ +}; +enum asn_strtox_result_e asn_strtol_lim(const char *str, const char **end, + long *l); +enum asn_strtox_result_e asn_strtoul_lim(const char *str, const char **end, + unsigned long *l); +enum asn_strtox_result_e asn_strtoimax_lim(const char *str, const char **end, + intmax_t *l); +enum asn_strtox_result_e asn_strtoumax_lim(const char *str, const char **end, + uintmax_t *l); + +/* + * Convert the integer value into the corresponding enumeration map entry. + */ +const asn_INTEGER_enum_map_t *INTEGER_map_value2enum( + const asn_INTEGER_specifics_t *specs, long value); + +#ifdef __cplusplus +} +#endif + +#endif /* _INTEGER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h new file mode 100644 index 000000000..494831541 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ISO646String.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ISO646String_H_ +#define _ISO646String_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef VisibleString_t ISO646String_t; /* Implemented using VisibleString */ + +extern asn_TYPE_descriptor_t asn_DEF_ISO646String; +extern asn_TYPE_operation_t asn_OP_ISO646String; + +#define ISO646String_free OCTET_STRING_free +#define ISO646String_print OCTET_STRING_print_utf8 +#define ISO646String_compare OCTET_STRING_compare +#define ISO646String_constraint VisibleString_constraint +#define ISO646String_decode_ber OCTET_STRING_decode_ber +#define ISO646String_encode_der OCTET_STRING_encode_der +#define ISO646String_decode_xer OCTET_STRING_decode_xer_utf8 +#define ISO646String_encode_xer OCTET_STRING_encode_xer_utf8 +#define ISO646String_decode_uper OCTET_STRING_decode_uper +#define ISO646String_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _ISO646String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h new file mode 100644 index 000000000..6402c46d9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodes.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ITIScodes_H_ +#define _ITIScodes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIScodes */ +typedef long ITIScodes_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIScodes_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIScodes; +asn_struct_free_f ITIScodes_free; +asn_struct_print_f ITIScodes_print; +asn_constr_check_f ITIScodes_constraint; +ber_type_decoder_f ITIScodes_decode_ber; +der_type_encoder_f ITIScodes_encode_der; +xer_type_decoder_f ITIScodes_decode_xer; +xer_type_encoder_f ITIScodes_encode_xer; +oer_type_decoder_f ITIScodes_decode_oer; +oer_type_encoder_f ITIScodes_encode_oer; +per_type_decoder_f ITIScodes_decode_uper; +per_type_encoder_f ITIScodes_encode_uper; +per_type_decoder_f ITIScodes_decode_aper; +per_type_encoder_f ITIScodes_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h new file mode 100644 index 000000000..8560590bc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIScodesAndText.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _ITIScodesAndText_H_ +#define _ITIScodesAndText_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStext.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ITIScodesAndText__Memberitem_PR { + ITIScodesAndText__Memberitem_PR_NOTHING, /* No components present */ + ITIScodesAndText__Memberitem_PR_itis, + ITIScodesAndText__Memberitem_PR_text +} ITIScodesAndText__Memberitem_PR; + +/* Forward definitions */ +typedef struct ITIScodesAndText__Member { + struct ITIScodesAndText__Memberitem { + ITIScodesAndText__Memberitem_PR present; + union ITIScodesAndText__Memberitem_u { + ITIScodes_t itis; + ITIStext_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText__Member; + +/* ITIScodesAndText */ +typedef struct ITIScodesAndText { + A_SEQUENCE_OF(ITIScodesAndText__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ITIScodesAndText_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText; +extern asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1; +extern asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[1]; +extern asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIScodesAndText_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h new file mode 100644 index 000000000..bba7abbfc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStext.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ITIStext_H_ +#define _ITIStext_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStext */ +typedef IA5String_t ITIStext_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStext_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStext; +asn_struct_free_f ITIStext_free; +asn_struct_print_f ITIStext_print; +asn_constr_check_f ITIStext_constraint; +ber_type_decoder_f ITIStext_decode_ber; +der_type_encoder_f ITIStext_encode_der; +xer_type_decoder_f ITIStext_decode_xer; +xer_type_encoder_f ITIStext_encode_xer; +oer_type_decoder_f ITIStext_decode_oer; +oer_type_encoder_f ITIStext_encode_oer; +per_type_decoder_f ITIStext_decode_uper; +per_type_encoder_f ITIStext_encode_uper; +per_type_decoder_f ITIStext_decode_aper; +per_type_encoder_f ITIStext_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStext_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h new file mode 100644 index 000000000..9e54197da --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ITIStextPhrase.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ITIStextPhrase_H_ +#define _ITIStextPhrase_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ITIStextPhrase */ +typedef IA5String_t ITIStextPhrase_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase; +asn_struct_free_f ITIStextPhrase_free; +asn_struct_print_f ITIStextPhrase_print; +asn_constr_check_f ITIStextPhrase_constraint; +ber_type_decoder_f ITIStextPhrase_decode_ber; +der_type_encoder_f ITIStextPhrase_encode_der; +xer_type_decoder_f ITIStextPhrase_decode_xer; +xer_type_encoder_f ITIStextPhrase_encode_xer; +oer_type_decoder_f ITIStextPhrase_decode_oer; +oer_type_encoder_f ITIStextPhrase_encode_oer; +per_type_decoder_f ITIStextPhrase_decode_uper; +per_type_encoder_f ITIStextPhrase_encode_uper; +per_type_decoder_f ITIStextPhrase_decode_aper; +per_type_encoder_f ITIStextPhrase_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ITIStextPhrase_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h new file mode 100644 index 000000000..0c58f036d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id128b.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Id128b_H_ +#define _Id128b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Id128b */ +typedef OCTET_STRING_t Id128b_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Id128b_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Id128b; +asn_struct_free_f Id128b_free; +asn_struct_print_f Id128b_print; +asn_constr_check_f Id128b_constraint; +ber_type_decoder_f Id128b_decode_ber; +der_type_encoder_f Id128b_encode_der; +xer_type_decoder_f Id128b_decode_xer; +xer_type_encoder_f Id128b_encode_xer; +oer_type_decoder_f Id128b_decode_oer; +oer_type_encoder_f Id128b_encode_oer; +per_type_decoder_f Id128b_decode_uper; +per_type_encoder_f Id128b_encode_uper; +per_type_decoder_f Id128b_decode_aper; +per_type_encoder_f Id128b_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Id128b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h new file mode 100644 index 000000000..703feb0f8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Id64b.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Id64b_H_ +#define _Id64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Id64b */ +typedef OCTET_STRING_t Id64b_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Id64b_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Id64b; +asn_struct_free_f Id64b_free; +asn_struct_print_f Id64b_print; +asn_constr_check_f Id64b_constraint; +ber_type_decoder_f Id64b_decode_ber; +der_type_encoder_f Id64b_encode_der; +xer_type_decoder_f Id64b_decode_xer; +xer_type_encoder_f Id64b_encode_xer; +oer_type_decoder_f Id64b_decode_oer; +oer_type_encoder_f Id64b_encode_oer; +per_type_decoder_f Id64b_decode_uper; +per_type_encoder_f Id64b_encode_uper; +per_type_decoder_f Id64b_decode_aper; +per_type_encoder_f Id64b_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Id64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h new file mode 100644 index 000000000..7c90de341 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IncidentResponseEquipment.h @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IncidentResponseEquipment_H_ +#define _IncidentResponseEquipment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IncidentResponseEquipment { + IncidentResponseEquipment_ground_fire_suppression = 9985, + IncidentResponseEquipment_heavy_ground_equipment = 9986, + IncidentResponseEquipment_aircraft = 9988, + IncidentResponseEquipment_marine_equipment = 9989, + IncidentResponseEquipment_support_equipment = 9990, + IncidentResponseEquipment_medical_rescue_unit = 9991, + IncidentResponseEquipment_other = 9993, + IncidentResponseEquipment_ground_fire_suppression_other = 9994, + IncidentResponseEquipment_engine = 9995, + IncidentResponseEquipment_truck_or_aerial = 9996, + IncidentResponseEquipment_quint = 9997, + IncidentResponseEquipment_tanker_pumper_combination = 9998, + IncidentResponseEquipment_brush_truck = 10000, + IncidentResponseEquipment_aircraft_rescue_firefighting = 10001, + IncidentResponseEquipment_heavy_ground_equipment_other = 10004, + IncidentResponseEquipment_dozer_or_plow = 10005, + IncidentResponseEquipment_tractor = 10006, + IncidentResponseEquipment_tanker_or_tender = 10008, + IncidentResponseEquipment_aircraft_other = 10024, + IncidentResponseEquipment_aircraft_fixed_wing_tanker = 10025, + IncidentResponseEquipment_helitanker = 10026, + IncidentResponseEquipment_helicopter = 10027, + IncidentResponseEquipment_marine_equipment_other = 10034, + IncidentResponseEquipment_fire_boat_with_pump = 10035, + IncidentResponseEquipment_boat_no_pump = 10036, + IncidentResponseEquipment_support_apparatus_other = 10044, + IncidentResponseEquipment_breathing_apparatus_support = 10045, + IncidentResponseEquipment_light_and_air_unit = 10046, + IncidentResponseEquipment_medical_rescue_unit_other = 10054, + IncidentResponseEquipment_rescue_unit = 10055, + IncidentResponseEquipment_urban_search_rescue_unit = 10056, + IncidentResponseEquipment_high_angle_rescue = 10057, + IncidentResponseEquipment_crash_fire_rescue = 10058, + IncidentResponseEquipment_bLS_unit = 10059, + IncidentResponseEquipment_aLS_unit = 10060, + IncidentResponseEquipment_mobile_command_post = 10075, + IncidentResponseEquipment_chief_officer_car = 10076, + IncidentResponseEquipment_hAZMAT_unit = 10077, + IncidentResponseEquipment_type_i_hand_crew = 10078, + IncidentResponseEquipment_type_ii_hand_crew = 10079, + IncidentResponseEquipment_privately_owned_vehicle = 10083, + IncidentResponseEquipment_other_apparatus_resource = 10084, + IncidentResponseEquipment_ambulance = 10085, + IncidentResponseEquipment_bomb_squad_van = 10086, + IncidentResponseEquipment_combine_harvester = 10087, + IncidentResponseEquipment_construction_vehicle = 10088, + IncidentResponseEquipment_farm_tractor = 10089, + IncidentResponseEquipment_grass_cutting_machines = 10090, + IncidentResponseEquipment_hAZMAT_containment_tow = 10091, + IncidentResponseEquipment_heavy_tow = 10092, + IncidentResponseEquipment_light_tow = 10094, + IncidentResponseEquipment_flatbed_tow = 10114, + IncidentResponseEquipment_hedge_cutting_machines = 10093, + IncidentResponseEquipment_mobile_crane = 10095, + IncidentResponseEquipment_refuse_collection_vehicle = 10096, + IncidentResponseEquipment_resurfacing_vehicle = 10097, + IncidentResponseEquipment_road_sweeper = 10098, + IncidentResponseEquipment_roadside_litter_collection_crews = 10099, + IncidentResponseEquipment_salvage_vehicle = 10100, + IncidentResponseEquipment_sand_truck = 10101, + IncidentResponseEquipment_snowplow = 10102, + IncidentResponseEquipment_steam_roller = 10103, + IncidentResponseEquipment_swat_team_van = 10104, + IncidentResponseEquipment_track_laying_vehicle = 10105, + IncidentResponseEquipment_unknown_vehicle = 10106, + IncidentResponseEquipment_white_lining_vehicle = 10107, + IncidentResponseEquipment_dump_truck = 10108, + IncidentResponseEquipment_supervisor_vehicle = 10109, + IncidentResponseEquipment_snow_blower = 10110, + IncidentResponseEquipment_rotary_snow_blower = 10111, + IncidentResponseEquipment_road_grader = 10112, + IncidentResponseEquipment_steam_truck = 10113 + /* + * Enumeration is extensible + */ +} e_IncidentResponseEquipment; + +/* IncidentResponseEquipment */ +typedef long IncidentResponseEquipment_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment; +extern const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1; +asn_struct_free_f IncidentResponseEquipment_free; +asn_struct_print_f IncidentResponseEquipment_print; +asn_constr_check_f IncidentResponseEquipment_constraint; +ber_type_decoder_f IncidentResponseEquipment_decode_ber; +der_type_encoder_f IncidentResponseEquipment_encode_der; +xer_type_decoder_f IncidentResponseEquipment_decode_xer; +xer_type_encoder_f IncidentResponseEquipment_encode_xer; +oer_type_decoder_f IncidentResponseEquipment_decode_oer; +oer_type_encoder_f IncidentResponseEquipment_encode_oer; +per_type_decoder_f IncidentResponseEquipment_decode_uper; +per_type_encoder_f IncidentResponseEquipment_encode_uper; +per_type_decoder_f IncidentResponseEquipment_decode_aper; +per_type_encoder_f IncidentResponseEquipment_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IncidentResponseEquipment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h new file mode 100644 index 000000000..1ad412203 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionAccessPoint.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionAccessPoint_H_ +#define _IntersectionAccessPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "ApproachID.h" +#include "LaneConnectionID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionAccessPoint_PR { + IntersectionAccessPoint_PR_NOTHING, /* No components present */ + IntersectionAccessPoint_PR_lane, + IntersectionAccessPoint_PR_approach, + IntersectionAccessPoint_PR_connection + /* Extensions may appear below */ + +} IntersectionAccessPoint_PR; + +/* IntersectionAccessPoint */ +typedef struct IntersectionAccessPoint { + IntersectionAccessPoint_PR present; + union IntersectionAccessPoint_u { + LaneID_t lane; + ApproachID_t approach; + LaneConnectionID_t connection; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionAccessPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint; +extern asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[3]; +extern asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionAccessPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h new file mode 100644 index 000000000..36d3a0228 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionCollision.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionCollision_H_ +#define _IntersectionCollision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "TemporaryID.h" +#include "MinuteOfTheYear.h" +#include "IntersectionReferenceID.h" +#include "ApproachOrLane.h" +#include "VehicleEventFlags.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BSMcoreData; +struct PathHistory; +struct PathPrediction; +struct Reg_BasicSafetyMessage; + +/* IntersectionCollision */ +typedef struct IntersectionCollision { + DSRC_MsgCount_t msgCnt; + TemporaryID_t id; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct BSMcoreData *partOne; /* OPTIONAL */ + struct PathHistory *path; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + IntersectionReferenceID_t intersectionID; + ApproachOrLane_t laneNumber; + VehicleEventFlags_t eventFlag; + struct IntersectionCollision__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} IntersectionCollision_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionCollision; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionCollision_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BSMcoreData.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionCollision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h new file mode 100644 index 000000000..f9f087cd4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometry.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionGeometry_H_ +#define _IntersectionGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "DSRC_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "LaneList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct PreemptPriorityList; +struct Reg_BasicSafetyMessage; + +/* IntersectionGeometry */ +typedef struct IntersectionGeometry { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + DSRC_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + LaneList_t laneSet; + struct PreemptPriorityList *preemptPriorityData; /* OPTIONAL */ + struct IntersectionGeometry__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} IntersectionGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "PreemptPriorityList.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h new file mode 100644 index 000000000..dd0e7ea89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionGeometryList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionGeometryList_H_ +#define _IntersectionGeometryList_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 IntersectionGeometry; + +/* IntersectionGeometryList */ +typedef struct IntersectionGeometryList { + A_SEQUENCE_OF(struct IntersectionGeometry) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionGeometryList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometry.h" + +#endif /* _IntersectionGeometryList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h new file mode 100644 index 000000000..e4356814e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionID_H_ +#define _IntersectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionID */ +typedef long IntersectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionID; +asn_struct_free_f IntersectionID_free; +asn_struct_print_f IntersectionID_print; +asn_constr_check_f IntersectionID_constraint; +ber_type_decoder_f IntersectionID_decode_ber; +der_type_encoder_f IntersectionID_encode_der; +xer_type_decoder_f IntersectionID_decode_xer; +xer_type_encoder_f IntersectionID_encode_xer; +oer_type_decoder_f IntersectionID_decode_oer; +oer_type_encoder_f IntersectionID_encode_oer; +per_type_decoder_f IntersectionID_decode_uper; +per_type_encoder_f IntersectionID_encode_uper; +per_type_decoder_f IntersectionID_decode_aper; +per_type_encoder_f IntersectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h new file mode 100644 index 000000000..f28f3a847 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionReferenceID_H_ +#define _IntersectionReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "IntersectionID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IntersectionReferenceID */ +typedef struct IntersectionReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + IntersectionID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h new file mode 100644 index 000000000..32fc3725f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState-addGrpC.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionState_addGrpC_H_ +#define _IntersectionState_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PrioritizationResponseList; + +/* IntersectionState-addGrpC */ +typedef struct IntersectionState_addGrpC { + struct PrioritizationResponseList *activePrioritizations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionState_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponseList.h" + +#endif /* _IntersectionState_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h new file mode 100644 index 000000000..8092df39e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionState.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionState_H_ +#define _IntersectionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "IntersectionReferenceID.h" +#include "DSRC_MsgCount.h" +#include "IntersectionStatusObject.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "MovementList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EnabledLaneList; +struct ManeuverAssistList; +struct Reg_BasicSafetyMessage; + +/* IntersectionState */ +typedef struct IntersectionState { + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionReferenceID_t id; + DSRC_MsgCount_t revision; + IntersectionStatusObject_t status; + MinuteOfTheYear_t *moy; /* OPTIONAL */ + DSecond_t *timeStamp; /* OPTIONAL */ + struct EnabledLaneList *enabledLanes; /* OPTIONAL */ + MovementList_t states; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct IntersectionState__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} IntersectionState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionState; +extern asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionState_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EnabledLaneList.h" +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" + +#endif /* _IntersectionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h new file mode 100644 index 000000000..c37ab059c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStateList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionStateList_H_ +#define _IntersectionStateList_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 IntersectionState; + +/* IntersectionStateList */ +typedef struct IntersectionStateList { + A_SEQUENCE_OF(struct IntersectionState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} IntersectionStateList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStateList; +extern asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1; +extern asn_TYPE_member_t asn_MBR_IntersectionStateList_1[1]; +extern asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionState.h" + +#endif /* _IntersectionStateList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h new file mode 100644 index 000000000..ad87016b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IntersectionStatusObject.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IntersectionStatusObject_H_ +#define _IntersectionStatusObject_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum IntersectionStatusObject { + IntersectionStatusObject_manualControlIsEnabled = 0, + IntersectionStatusObject_stopTimeIsActivated = 1, + IntersectionStatusObject_failureFlash = 2, + IntersectionStatusObject_preemptIsActive = 3, + IntersectionStatusObject_signalPriorityIsActive = 4, + IntersectionStatusObject_fixedTimeOperation = 5, + IntersectionStatusObject_trafficDependentOperation = 6, + IntersectionStatusObject_standbyOperation = 7, + IntersectionStatusObject_failureMode = 8, + IntersectionStatusObject_off = 9, + IntersectionStatusObject_recentMAPmessageUpdate = 10, + IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed = 11, + IntersectionStatusObject_noValidMAPisAvailableAtThisTime = 12, + IntersectionStatusObject_noValidSPATisAvailableAtThisTime = 13 +} e_IntersectionStatusObject; + +/* IntersectionStatusObject */ +typedef BIT_STRING_t IntersectionStatusObject_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject; +asn_struct_free_f IntersectionStatusObject_free; +asn_struct_print_f IntersectionStatusObject_print; +asn_constr_check_f IntersectionStatusObject_constraint; +ber_type_decoder_f IntersectionStatusObject_decode_ber; +der_type_encoder_f IntersectionStatusObject_encode_der; +xer_type_decoder_f IntersectionStatusObject_decode_xer; +xer_type_encoder_f IntersectionStatusObject_encode_xer; +oer_type_decoder_f IntersectionStatusObject_decode_oer; +oer_type_encoder_f IntersectionStatusObject_encode_oer; +per_type_decoder_f IntersectionStatusObject_decode_uper; +per_type_encoder_f IntersectionStatusObject_encode_uper; +per_type_decoder_f IntersectionStatusObject_decode_aper; +per_type_encoder_f IntersectionStatusObject_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IntersectionStatusObject_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h new file mode 100644 index 000000000..912773497 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/IsDolly.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _IsDolly_H_ +#define _IsDolly_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* IsDolly */ +typedef BOOLEAN_t IsDolly_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IsDolly; +asn_struct_free_f IsDolly_free; +asn_struct_print_f IsDolly_print; +asn_constr_check_f IsDolly_constraint; +ber_type_decoder_f IsDolly_decode_ber; +der_type_encoder_f IsDolly_encode_der; +xer_type_decoder_f IsDolly_decode_xer; +xer_type_encoder_f IsDolly_encode_xer; +oer_type_decoder_f IsDolly_decode_oer; +oer_type_encoder_f IsDolly_encode_oer; +per_type_decoder_f IsDolly_decode_uper; +per_type_encoder_f IsDolly_encode_uper; +per_type_decoder_f IsDolly_decode_aper; +per_type_encoder_f IsDolly_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IsDolly_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h new file mode 100644 index 000000000..204b63b69 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Iso3833VehicleType.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Iso3833VehicleType_H_ +#define _Iso3833VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Iso3833VehicleType */ +typedef long Iso3833VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType; +asn_struct_free_f Iso3833VehicleType_free; +asn_struct_print_f Iso3833VehicleType_print; +asn_constr_check_f Iso3833VehicleType_constraint; +ber_type_decoder_f Iso3833VehicleType_decode_ber; +der_type_encoder_f Iso3833VehicleType_encode_der; +xer_type_decoder_f Iso3833VehicleType_decode_xer; +xer_type_encoder_f Iso3833VehicleType_encode_xer; +oer_type_decoder_f Iso3833VehicleType_decode_oer; +oer_type_encoder_f Iso3833VehicleType_encode_oer; +per_type_decoder_f Iso3833VehicleType_decode_uper; +per_type_encoder_f Iso3833VehicleType_encode_uper; +per_type_decoder_f Iso3833VehicleType_decode_aper; +per_type_encoder_f Iso3833VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Iso3833VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h new file mode 100644 index 000000000..aa579bbda --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/J1939data.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _J1939data_H_ +#define _J1939data_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrailerWeight.h" +#include "CargoWeight.h" +#include "SteeringAxleTemperature.h" +#include "DriveAxleLocation.h" +#include "DriveAxleLiftAirPressure.h" +#include "DriveAxleTemperature.h" +#include "DriveAxleLubePressure.h" +#include "SteeringAxleLubePressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TireDataList; +struct AxleWeightList; + +/* J1939data */ +typedef struct J1939data { + struct TireDataList *tires; /* OPTIONAL */ + struct AxleWeightList *axles; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + CargoWeight_t *cargoWeight; /* OPTIONAL */ + SteeringAxleTemperature_t *steeringAxleTemperature; /* OPTIONAL */ + DriveAxleLocation_t *driveAxleLocation; /* OPTIONAL */ + DriveAxleLiftAirPressure_t *driveAxleLiftAirPressure; /* OPTIONAL */ + DriveAxleTemperature_t *driveAxleTemperature; /* OPTIONAL */ + DriveAxleLubePressure_t *driveAxleLubePressure; /* OPTIONAL */ + SteeringAxleLubePressure_t *steeringAxleLubePressure; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} J1939data_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_J1939data; +extern asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1; +extern asn_TYPE_member_t asn_MBR_J1939data_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TireDataList.h" +#include "AxleWeightList.h" + +#endif /* _J1939data_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h new file mode 100644 index 000000000..1fd94f263 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Barrier.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Barrier_H_ +#define _LaneAttributes_Barrier_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Barrier { + LaneAttributes_Barrier_median_RevocableLane = 0, + LaneAttributes_Barrier_median = 1, + LaneAttributes_Barrier_whiteLineHashing = 2, + LaneAttributes_Barrier_stripedLines = 3, + LaneAttributes_Barrier_doubleStripedLines = 4, + LaneAttributes_Barrier_trafficCones = 5, + LaneAttributes_Barrier_constructionBarrier = 6, + LaneAttributes_Barrier_trafficChannels = 7, + LaneAttributes_Barrier_lowCurbs = 8, + LaneAttributes_Barrier_highCurbs = 9 +} e_LaneAttributes_Barrier; + +/* LaneAttributes-Barrier */ +typedef BIT_STRING_t LaneAttributes_Barrier_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier; +asn_struct_free_f LaneAttributes_Barrier_free; +asn_struct_print_f LaneAttributes_Barrier_print; +asn_constr_check_f LaneAttributes_Barrier_constraint; +ber_type_decoder_f LaneAttributes_Barrier_decode_ber; +der_type_encoder_f LaneAttributes_Barrier_encode_der; +xer_type_decoder_f LaneAttributes_Barrier_decode_xer; +xer_type_encoder_f LaneAttributes_Barrier_encode_xer; +oer_type_decoder_f LaneAttributes_Barrier_decode_oer; +oer_type_encoder_f LaneAttributes_Barrier_encode_oer; +per_type_decoder_f LaneAttributes_Barrier_decode_uper; +per_type_encoder_f LaneAttributes_Barrier_encode_uper; +per_type_decoder_f LaneAttributes_Barrier_decode_aper; +per_type_encoder_f LaneAttributes_Barrier_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Barrier_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h new file mode 100644 index 000000000..e9bd475a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Bike.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Bike_H_ +#define _LaneAttributes_Bike_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Bike { + LaneAttributes_Bike_bikeRevocableLane = 0, + LaneAttributes_Bike_pedestrianUseAllowed = 1, + LaneAttributes_Bike_isBikeFlyOverLane = 2, + LaneAttributes_Bike_fixedCycleTime = 3, + LaneAttributes_Bike_biDirectionalCycleTimes = 4, + LaneAttributes_Bike_isolatedByBarrier = 5, + LaneAttributes_Bike_unsignalizedSegmentsPresent = 6 +} e_LaneAttributes_Bike; + +/* LaneAttributes-Bike */ +typedef BIT_STRING_t LaneAttributes_Bike_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike; +asn_struct_free_f LaneAttributes_Bike_free; +asn_struct_print_f LaneAttributes_Bike_print; +asn_constr_check_f LaneAttributes_Bike_constraint; +ber_type_decoder_f LaneAttributes_Bike_decode_ber; +der_type_encoder_f LaneAttributes_Bike_encode_der; +xer_type_decoder_f LaneAttributes_Bike_decode_xer; +xer_type_encoder_f LaneAttributes_Bike_encode_xer; +oer_type_decoder_f LaneAttributes_Bike_decode_oer; +oer_type_encoder_f LaneAttributes_Bike_encode_oer; +per_type_decoder_f LaneAttributes_Bike_decode_uper; +per_type_encoder_f LaneAttributes_Bike_encode_uper; +per_type_decoder_f LaneAttributes_Bike_decode_aper; +per_type_encoder_f LaneAttributes_Bike_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Bike_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h new file mode 100644 index 000000000..7c6dde4e1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Crosswalk.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Crosswalk_H_ +#define _LaneAttributes_Crosswalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Crosswalk { + LaneAttributes_Crosswalk_crosswalkRevocableLane = 0, + LaneAttributes_Crosswalk_bicyleUseAllowed = 1, + LaneAttributes_Crosswalk_isXwalkFlyOverLane = 2, + LaneAttributes_Crosswalk_fixedCycleTime = 3, + LaneAttributes_Crosswalk_biDirectionalCycleTimes = 4, + LaneAttributes_Crosswalk_hasPushToWalkButton = 5, + LaneAttributes_Crosswalk_audioSupport = 6, + LaneAttributes_Crosswalk_rfSignalRequestPresent = 7, + LaneAttributes_Crosswalk_unsignalizedSegmentsPresent = 8 +} e_LaneAttributes_Crosswalk; + +/* LaneAttributes-Crosswalk */ +typedef BIT_STRING_t LaneAttributes_Crosswalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk; +asn_struct_free_f LaneAttributes_Crosswalk_free; +asn_struct_print_f LaneAttributes_Crosswalk_print; +asn_constr_check_f LaneAttributes_Crosswalk_constraint; +ber_type_decoder_f LaneAttributes_Crosswalk_decode_ber; +der_type_encoder_f LaneAttributes_Crosswalk_encode_der; +xer_type_decoder_f LaneAttributes_Crosswalk_decode_xer; +xer_type_encoder_f LaneAttributes_Crosswalk_encode_xer; +oer_type_decoder_f LaneAttributes_Crosswalk_decode_oer; +oer_type_encoder_f LaneAttributes_Crosswalk_encode_oer; +per_type_decoder_f LaneAttributes_Crosswalk_decode_uper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_uper; +per_type_decoder_f LaneAttributes_Crosswalk_decode_aper; +per_type_encoder_f LaneAttributes_Crosswalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Crosswalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h new file mode 100644 index 000000000..de7bbc0aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Parking.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Parking_H_ +#define _LaneAttributes_Parking_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Parking { + LaneAttributes_Parking_parkingRevocableLane = 0, + LaneAttributes_Parking_parallelParkingInUse = 1, + LaneAttributes_Parking_headInParkingInUse = 2, + LaneAttributes_Parking_doNotParkZone = 3, + LaneAttributes_Parking_parkingForBusUse = 4, + LaneAttributes_Parking_parkingForTaxiUse = 5, + LaneAttributes_Parking_noPublicParkingUse = 6 +} e_LaneAttributes_Parking; + +/* LaneAttributes-Parking */ +typedef BIT_STRING_t LaneAttributes_Parking_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking; +asn_struct_free_f LaneAttributes_Parking_free; +asn_struct_print_f LaneAttributes_Parking_print; +asn_constr_check_f LaneAttributes_Parking_constraint; +ber_type_decoder_f LaneAttributes_Parking_decode_ber; +der_type_encoder_f LaneAttributes_Parking_encode_der; +xer_type_decoder_f LaneAttributes_Parking_decode_xer; +xer_type_encoder_f LaneAttributes_Parking_encode_xer; +oer_type_decoder_f LaneAttributes_Parking_decode_oer; +oer_type_encoder_f LaneAttributes_Parking_encode_oer; +per_type_decoder_f LaneAttributes_Parking_decode_uper; +per_type_encoder_f LaneAttributes_Parking_encode_uper; +per_type_decoder_f LaneAttributes_Parking_decode_aper; +per_type_encoder_f LaneAttributes_Parking_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Parking_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h new file mode 100644 index 000000000..664a940c7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Sidewalk.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Sidewalk_H_ +#define _LaneAttributes_Sidewalk_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Sidewalk { + LaneAttributes_Sidewalk_sidewalk_RevocableLane = 0, + LaneAttributes_Sidewalk_bicyleUseAllowed = 1, + LaneAttributes_Sidewalk_isSidewalkFlyOverLane = 2, + LaneAttributes_Sidewalk_walkBikes = 3 +} e_LaneAttributes_Sidewalk; + +/* LaneAttributes-Sidewalk */ +typedef BIT_STRING_t LaneAttributes_Sidewalk_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk; +asn_struct_free_f LaneAttributes_Sidewalk_free; +asn_struct_print_f LaneAttributes_Sidewalk_print; +asn_constr_check_f LaneAttributes_Sidewalk_constraint; +ber_type_decoder_f LaneAttributes_Sidewalk_decode_ber; +der_type_encoder_f LaneAttributes_Sidewalk_encode_der; +xer_type_decoder_f LaneAttributes_Sidewalk_decode_xer; +xer_type_encoder_f LaneAttributes_Sidewalk_encode_xer; +oer_type_decoder_f LaneAttributes_Sidewalk_decode_oer; +oer_type_encoder_f LaneAttributes_Sidewalk_encode_oer; +per_type_decoder_f LaneAttributes_Sidewalk_decode_uper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_uper; +per_type_decoder_f LaneAttributes_Sidewalk_decode_aper; +per_type_encoder_f LaneAttributes_Sidewalk_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Sidewalk_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h new file mode 100644 index 000000000..76f22661f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Striping.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Striping_H_ +#define _LaneAttributes_Striping_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Striping { + LaneAttributes_Striping_stripeToConnectingLanesRevocableLane = 0, + LaneAttributes_Striping_stripeDrawOnLeft = 1, + LaneAttributes_Striping_stripeDrawOnRight = 2, + LaneAttributes_Striping_stripeToConnectingLanesLeft = 3, + LaneAttributes_Striping_stripeToConnectingLanesRight = 4, + LaneAttributes_Striping_stripeToConnectingLanesAhead = 5 +} e_LaneAttributes_Striping; + +/* LaneAttributes-Striping */ +typedef BIT_STRING_t LaneAttributes_Striping_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping; +asn_struct_free_f LaneAttributes_Striping_free; +asn_struct_print_f LaneAttributes_Striping_print; +asn_constr_check_f LaneAttributes_Striping_constraint; +ber_type_decoder_f LaneAttributes_Striping_decode_ber; +der_type_encoder_f LaneAttributes_Striping_encode_der; +xer_type_decoder_f LaneAttributes_Striping_decode_xer; +xer_type_encoder_f LaneAttributes_Striping_encode_xer; +oer_type_decoder_f LaneAttributes_Striping_decode_oer; +oer_type_encoder_f LaneAttributes_Striping_encode_oer; +per_type_decoder_f LaneAttributes_Striping_decode_uper; +per_type_encoder_f LaneAttributes_Striping_encode_uper; +per_type_decoder_f LaneAttributes_Striping_decode_aper; +per_type_encoder_f LaneAttributes_Striping_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Striping_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h new file mode 100644 index 000000000..af0891051 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-TrackedVehicle.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_TrackedVehicle_H_ +#define _LaneAttributes_TrackedVehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_TrackedVehicle { + LaneAttributes_TrackedVehicle_spec_RevocableLane = 0, + LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack = 1, + LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack = 2, + LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack = 3, + LaneAttributes_TrackedVehicle_spec_otherRailType = 4 +} e_LaneAttributes_TrackedVehicle; + +/* LaneAttributes-TrackedVehicle */ +typedef BIT_STRING_t LaneAttributes_TrackedVehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle; +asn_struct_free_f LaneAttributes_TrackedVehicle_free; +asn_struct_print_f LaneAttributes_TrackedVehicle_print; +asn_constr_check_f LaneAttributes_TrackedVehicle_constraint; +ber_type_decoder_f LaneAttributes_TrackedVehicle_decode_ber; +der_type_encoder_f LaneAttributes_TrackedVehicle_encode_der; +xer_type_decoder_f LaneAttributes_TrackedVehicle_decode_xer; +xer_type_encoder_f LaneAttributes_TrackedVehicle_encode_xer; +oer_type_decoder_f LaneAttributes_TrackedVehicle_decode_oer; +oer_type_encoder_f LaneAttributes_TrackedVehicle_encode_oer; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_uper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_uper; +per_type_decoder_f LaneAttributes_TrackedVehicle_decode_aper; +per_type_encoder_f LaneAttributes_TrackedVehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_TrackedVehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h new file mode 100644 index 000000000..07c014417 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes-Vehicle.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_Vehicle_H_ +#define _LaneAttributes_Vehicle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneAttributes_Vehicle { + LaneAttributes_Vehicle_isVehicleRevocableLane = 0, + LaneAttributes_Vehicle_isVehicleFlyOverLane = 1, + LaneAttributes_Vehicle_hovLaneUseOnly = 2, + LaneAttributes_Vehicle_restrictedToBusUse = 3, + LaneAttributes_Vehicle_restrictedToTaxiUse = 4, + LaneAttributes_Vehicle_restrictedFromPublicUse = 5, + LaneAttributes_Vehicle_hasIRbeaconCoverage = 6, + LaneAttributes_Vehicle_permissionOnRequest = 7 +} e_LaneAttributes_Vehicle; + +/* LaneAttributes-Vehicle */ +typedef BIT_STRING_t LaneAttributes_Vehicle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle; +asn_struct_free_f LaneAttributes_Vehicle_free; +asn_struct_print_f LaneAttributes_Vehicle_print; +asn_constr_check_f LaneAttributes_Vehicle_constraint; +ber_type_decoder_f LaneAttributes_Vehicle_decode_ber; +der_type_encoder_f LaneAttributes_Vehicle_encode_der; +xer_type_decoder_f LaneAttributes_Vehicle_decode_xer; +xer_type_encoder_f LaneAttributes_Vehicle_encode_xer; +oer_type_decoder_f LaneAttributes_Vehicle_decode_oer; +oer_type_encoder_f LaneAttributes_Vehicle_encode_oer; +per_type_decoder_f LaneAttributes_Vehicle_decode_uper; +per_type_encoder_f LaneAttributes_Vehicle_encode_uper; +per_type_decoder_f LaneAttributes_Vehicle_decode_aper; +per_type_encoder_f LaneAttributes_Vehicle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneAttributes_Vehicle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h new file mode 100644 index 000000000..964b77d5c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneAttributes.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneAttributes_H_ +#define _LaneAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneDirection.h" +#include "LaneSharing.h" +#include "LaneTypeAttributes.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* LaneAttributes */ +typedef struct LaneAttributes { + LaneDirection_t directionalUse; + LaneSharing_t sharedWith; + LaneTypeAttributes_t laneType; + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneAttributes; +extern asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneAttributes_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _LaneAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h new file mode 100644 index 000000000..623fcd5db --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneConnectionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneConnectionID_H_ +#define _LaneConnectionID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneConnectionID */ +typedef long LaneConnectionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneConnectionID; +asn_struct_free_f LaneConnectionID_free; +asn_struct_print_f LaneConnectionID_print; +asn_constr_check_f LaneConnectionID_constraint; +ber_type_decoder_f LaneConnectionID_decode_ber; +der_type_encoder_f LaneConnectionID_encode_der; +xer_type_decoder_f LaneConnectionID_decode_xer; +xer_type_encoder_f LaneConnectionID_encode_xer; +oer_type_decoder_f LaneConnectionID_decode_oer; +oer_type_encoder_f LaneConnectionID_encode_oer; +per_type_decoder_f LaneConnectionID_decode_uper; +per_type_encoder_f LaneConnectionID_encode_uper; +per_type_decoder_f LaneConnectionID_decode_aper; +per_type_encoder_f LaneConnectionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneConnectionID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h new file mode 100644 index 000000000..be6a5a704 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute-addGrpB.h @@ -0,0 +1,40 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneDataAttribute_addGrpB_H_ +#define _LaneDataAttribute_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneDataAttribute-addGrpB */ +typedef struct LaneDataAttribute_addGrpB { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDataAttribute_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h new file mode 100644 index 000000000..5c6e0af78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttribute.h @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneDataAttribute_H_ +#define _LaneDataAttribute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DeltaAngle.h" +#include "RoadwayCrownAngle.h" +#include "MergeDivergeNodeAngle.h" +#include "SpeedLimitList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDataAttribute_PR { + LaneDataAttribute_PR_NOTHING, /* No components present */ + LaneDataAttribute_PR_pathEndPointAngle, + LaneDataAttribute_PR_laneCrownPointCenter, + LaneDataAttribute_PR_laneCrownPointLeft, + LaneDataAttribute_PR_laneCrownPointRight, + LaneDataAttribute_PR_laneAngle, + LaneDataAttribute_PR_speedLimits, + LaneDataAttribute_PR_regional + /* Extensions may appear below */ + +} LaneDataAttribute_PR; + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* LaneDataAttribute */ +typedef struct LaneDataAttribute { + LaneDataAttribute_PR present; + union LaneDataAttribute_u { + DeltaAngle_t pathEndPointAngle; + RoadwayCrownAngle_t laneCrownPointCenter; + RoadwayCrownAngle_t laneCrownPointLeft; + RoadwayCrownAngle_t laneCrownPointRight; + MergeDivergeNodeAngle_t laneAngle; + SpeedLimitList_t speedLimits; + struct LaneDataAttribute__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttribute_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute; +extern asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[7]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _LaneDataAttribute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h new file mode 100644 index 000000000..4d9bc6f19 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDataAttributeList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneDataAttributeList_H_ +#define _LaneDataAttributeList_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 LaneDataAttribute; + +/* LaneDataAttributeList */ +typedef struct LaneDataAttributeList { + A_SEQUENCE_OF(struct LaneDataAttribute) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneDataAttributeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList; +extern asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "LaneDataAttribute.h" + +#endif /* _LaneDataAttributeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h new file mode 100644 index 000000000..6f6e9a911 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneDirection.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneDirection_H_ +#define _LaneDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneDirection { + LaneDirection_ingressPath = 0, + LaneDirection_egressPath = 1 +} e_LaneDirection; + +/* LaneDirection */ +typedef BIT_STRING_t LaneDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneDirection; +asn_struct_free_f LaneDirection_free; +asn_struct_print_f LaneDirection_print; +asn_constr_check_f LaneDirection_constraint; +ber_type_decoder_f LaneDirection_decode_ber; +der_type_encoder_f LaneDirection_encode_der; +xer_type_decoder_f LaneDirection_decode_xer; +xer_type_encoder_f LaneDirection_encode_xer; +oer_type_decoder_f LaneDirection_decode_oer; +oer_type_encoder_f LaneDirection_encode_oer; +per_type_decoder_f LaneDirection_decode_uper; +per_type_encoder_f LaneDirection_encode_uper; +per_type_decoder_f LaneDirection_decode_aper; +per_type_encoder_f LaneDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h new file mode 100644 index 000000000..c156fff6b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneID_H_ +#define _LaneID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneID */ +typedef long LaneID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneID; +asn_struct_free_f LaneID_free; +asn_struct_print_f LaneID_print; +asn_constr_check_f LaneID_constraint; +ber_type_decoder_f LaneID_decode_ber; +der_type_encoder_f LaneID_encode_der; +xer_type_decoder_f LaneID_decode_xer; +xer_type_encoder_f LaneID_encode_xer; +oer_type_decoder_f LaneID_decode_oer; +oer_type_encoder_f LaneID_encode_oer; +per_type_decoder_f LaneID_decode_uper; +per_type_encoder_f LaneID_encode_uper; +per_type_decoder_f LaneID_decode_aper; +per_type_encoder_f LaneID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h new file mode 100644 index 000000000..67993bfb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneList_H_ +#define _LaneList_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 GenericLane; + +/* LaneList */ +typedef struct LaneList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneList; +extern asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_LaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _LaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h new file mode 100644 index 000000000..720267101 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneSharing.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneSharing_H_ +#define _LaneSharing_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneSharing { + LaneSharing_overlappingLaneDescriptionProvided = 0, + LaneSharing_multipleLanesTreatedAsOneLane = 1, + LaneSharing_otherNonMotorizedTrafficTypes = 2, + LaneSharing_individualMotorizedVehicleTraffic = 3, + LaneSharing_busVehicleTraffic = 4, + LaneSharing_taxiVehicleTraffic = 5, + LaneSharing_pedestriansTraffic = 6, + LaneSharing_cyclistVehicleTraffic = 7, + LaneSharing_trackedVehicleTraffic = 8, + LaneSharing_pedestrianTraffic = 9 +} e_LaneSharing; + +/* LaneSharing */ +typedef BIT_STRING_t LaneSharing_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneSharing_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneSharing; +asn_struct_free_f LaneSharing_free; +asn_struct_print_f LaneSharing_print; +asn_constr_check_f LaneSharing_constraint; +ber_type_decoder_f LaneSharing_decode_ber; +der_type_encoder_f LaneSharing_encode_der; +xer_type_decoder_f LaneSharing_decode_xer; +xer_type_encoder_f LaneSharing_encode_xer; +oer_type_decoder_f LaneSharing_decode_oer; +oer_type_encoder_f LaneSharing_encode_oer; +per_type_decoder_f LaneSharing_decode_uper; +per_type_encoder_f LaneSharing_encode_uper; +per_type_decoder_f LaneSharing_decode_aper; +per_type_encoder_f LaneSharing_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneSharing_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h new file mode 100644 index 000000000..81808eb0b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneTypeAttributes.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneTypeAttributes_H_ +#define _LaneTypeAttributes_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneAttributes-Vehicle.h" +#include "LaneAttributes-Crosswalk.h" +#include "LaneAttributes-Bike.h" +#include "LaneAttributes-Sidewalk.h" +#include "LaneAttributes-Barrier.h" +#include "LaneAttributes-Striping.h" +#include "LaneAttributes-TrackedVehicle.h" +#include "LaneAttributes-Parking.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LaneTypeAttributes_PR { + LaneTypeAttributes_PR_NOTHING, /* No components present */ + LaneTypeAttributes_PR_vehicle, + LaneTypeAttributes_PR_crosswalk, + LaneTypeAttributes_PR_bikeLane, + LaneTypeAttributes_PR_sidewalk, + LaneTypeAttributes_PR_median, + LaneTypeAttributes_PR_striping, + LaneTypeAttributes_PR_trackedVehicle, + LaneTypeAttributes_PR_parking + /* Extensions may appear below */ + +} LaneTypeAttributes_PR; + +/* LaneTypeAttributes */ +typedef struct LaneTypeAttributes { + LaneTypeAttributes_PR present; + union LaneTypeAttributes_u { + LaneAttributes_Vehicle_t vehicle; + LaneAttributes_Crosswalk_t crosswalk; + LaneAttributes_Bike_t bikeLane; + LaneAttributes_Sidewalk_t sidewalk; + LaneAttributes_Barrier_t median; + LaneAttributes_Striping_t striping; + LaneAttributes_TrackedVehicle_t trackedVehicle; + LaneAttributes_Parking_t parking; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LaneTypeAttributes_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes; +extern asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1; +extern asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[8]; +extern asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneTypeAttributes_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h new file mode 100644 index 000000000..50d5fd190 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LaneWidth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LaneWidth_H_ +#define _LaneWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LaneWidth */ +typedef long LaneWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LaneWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LaneWidth; +asn_struct_free_f LaneWidth_free; +asn_struct_print_f LaneWidth_print; +asn_constr_check_f LaneWidth_constraint; +ber_type_decoder_f LaneWidth_decode_ber; +der_type_encoder_f LaneWidth_encode_der; +xer_type_decoder_f LaneWidth_decode_xer; +xer_type_encoder_f LaneWidth_encode_xer; +oer_type_decoder_f LaneWidth_decode_oer; +oer_type_encoder_f LaneWidth_encode_oer; +per_type_decoder_f LaneWidth_decode_uper; +per_type_encoder_f LaneWidth_encode_uper; +per_type_decoder_f LaneWidth_decode_aper; +per_type_encoder_f LaneWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LaneWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h new file mode 100644 index 000000000..dcdc3c7a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Latitude.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Latitude_H_ +#define _Latitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Latitude */ +typedef long Latitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Latitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Latitude; +asn_struct_free_f Latitude_free; +asn_struct_print_f Latitude_print; +asn_constr_check_f Latitude_constraint; +ber_type_decoder_f Latitude_decode_ber; +der_type_encoder_f Latitude_encode_der; +xer_type_decoder_f Latitude_decode_xer; +xer_type_encoder_f Latitude_encode_xer; +oer_type_decoder_f Latitude_decode_oer; +oer_type_encoder_f Latitude_encode_oer; +per_type_decoder_f Latitude_decode_uper; +per_type_encoder_f Latitude_encode_uper; +per_type_decoder_f Latitude_decode_aper; +per_type_encoder_f Latitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Latitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h new file mode 100644 index 000000000..8af1a7f51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LatitudeDMS_H_ +#define _LatitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS */ +typedef long LatitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS; +asn_struct_free_f LatitudeDMS_free; +asn_struct_print_f LatitudeDMS_print; +asn_constr_check_f LatitudeDMS_constraint; +ber_type_decoder_f LatitudeDMS_decode_ber; +der_type_encoder_f LatitudeDMS_encode_der; +xer_type_decoder_f LatitudeDMS_decode_xer; +xer_type_encoder_f LatitudeDMS_encode_xer; +oer_type_decoder_f LatitudeDMS_decode_oer; +oer_type_encoder_f LatitudeDMS_encode_oer; +per_type_decoder_f LatitudeDMS_decode_uper; +per_type_encoder_f LatitudeDMS_encode_uper; +per_type_decoder_f LatitudeDMS_decode_aper; +per_type_encoder_f LatitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h new file mode 100644 index 000000000..8e348b5fa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LatitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LatitudeDMS2_H_ +#define _LatitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLat.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LatitudeDMS2 */ +typedef struct LatitudeDMS2 { + DegreesLat_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LatitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LatitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h new file mode 100644 index 000000000..253716a10 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LayerID_H_ +#define _LayerID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LayerID */ +typedef long LayerID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerID; +asn_struct_free_f LayerID_free; +asn_struct_print_f LayerID_print; +asn_constr_check_f LayerID_constraint; +ber_type_decoder_f LayerID_decode_ber; +der_type_encoder_f LayerID_encode_der; +xer_type_decoder_f LayerID_decode_xer; +xer_type_encoder_f LayerID_encode_xer; +oer_type_decoder_f LayerID_decode_oer; +oer_type_encoder_f LayerID_encode_oer; +per_type_decoder_f LayerID_decode_uper; +per_type_encoder_f LayerID_encode_uper; +per_type_decoder_f LayerID_decode_aper; +per_type_encoder_f LayerID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h new file mode 100644 index 000000000..e2f59234c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LayerType.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LayerType_H_ +#define _LayerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LayerType { + LayerType_none = 0, + LayerType_mixedContent = 1, + LayerType_generalMapData = 2, + LayerType_intersectionData = 3, + LayerType_curveData = 4, + LayerType_roadwaySectionData = 5, + LayerType_parkingAreaData = 6, + LayerType_sharedLaneData = 7 + /* + * Enumeration is extensible + */ +} e_LayerType; + +/* LayerType */ +typedef long LayerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LayerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LayerType; +extern const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1; +asn_struct_free_f LayerType_free; +asn_struct_print_f LayerType_print; +asn_constr_check_f LayerType_constraint; +ber_type_decoder_f LayerType_decode_ber; +der_type_encoder_f LayerType_encode_der; +xer_type_decoder_f LayerType_decode_xer; +xer_type_encoder_f LayerType_encode_xer; +oer_type_decoder_f LayerType_decode_oer; +oer_type_encoder_f LayerType_encode_oer; +per_type_decoder_f LayerType_decode_uper; +per_type_encoder_f LayerType_encode_uper; +per_type_decoder_f LayerType_decode_aper; +per_type_encoder_f LayerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LayerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h new file mode 100644 index 000000000..bdf102f8b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LightbarInUse.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LightbarInUse_H_ +#define _LightbarInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LightbarInUse { + LightbarInUse_unavailable = 0, + LightbarInUse_notInUse = 1, + LightbarInUse_inUse = 2, + LightbarInUse_yellowCautionLights = 3, + LightbarInUse_schooldBusLights = 4, + LightbarInUse_arrowSignsActive = 5, + LightbarInUse_slowMovingVehicle = 6, + LightbarInUse_freqStops = 7 +} e_LightbarInUse; + +/* LightbarInUse */ +typedef long LightbarInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LightbarInUse; +extern const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1; +asn_struct_free_f LightbarInUse_free; +asn_struct_print_f LightbarInUse_print; +asn_constr_check_f LightbarInUse_constraint; +ber_type_decoder_f LightbarInUse_decode_ber; +der_type_encoder_f LightbarInUse_encode_der; +xer_type_decoder_f LightbarInUse_decode_xer; +xer_type_encoder_f LightbarInUse_encode_xer; +oer_type_decoder_f LightbarInUse_decode_oer; +oer_type_encoder_f LightbarInUse_encode_oer; +per_type_decoder_f LightbarInUse_decode_uper; +per_type_encoder_f LightbarInUse_encode_uper; +per_type_decoder_f LightbarInUse_decode_aper; +per_type_encoder_f LightbarInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LightbarInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h new file mode 100644 index 000000000..4005d1946 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-quality.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Location_quality_H_ +#define _Location_quality_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_quality { + Location_quality_loc_qual_bt1m = 0, + Location_quality_loc_qual_bt5m = 1, + Location_quality_loc_qual_bt12m = 2, + Location_quality_loc_qual_bt50m = 3, + Location_quality_loc_qual_bt125m = 4, + Location_quality_loc_qual_bt500m = 5, + Location_quality_loc_qual_bt1250m = 6, + Location_quality_loc_qual_unknown = 7 +} e_Location_quality; + +/* Location-quality */ +typedef long Location_quality_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_quality; +asn_struct_free_f Location_quality_free; +asn_struct_print_f Location_quality_print; +asn_constr_check_f Location_quality_constraint; +ber_type_decoder_f Location_quality_decode_ber; +der_type_encoder_f Location_quality_encode_der; +xer_type_decoder_f Location_quality_decode_xer; +xer_type_encoder_f Location_quality_encode_xer; +oer_type_decoder_f Location_quality_decode_oer; +oer_type_encoder_f Location_quality_encode_oer; +per_type_decoder_f Location_quality_decode_uper; +per_type_encoder_f Location_quality_encode_uper; +per_type_decoder_f Location_quality_decode_aper; +per_type_encoder_f Location_quality_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_quality_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h new file mode 100644 index 000000000..a8f892b73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Location-tech.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Location_tech_H_ +#define _Location_tech_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Location_tech { + Location_tech_loc_tech_unknown = 0, + Location_tech_loc_tech_GNSS = 1, + Location_tech_loc_tech_DGPS = 2, + Location_tech_loc_tech_RTK = 3, + Location_tech_loc_tech_PPP = 4, + Location_tech_loc_tech_drGPS = 5, + Location_tech_loc_tech_drDGPS = 6, + Location_tech_loc_tech_dr = 7, + Location_tech_loc_tech_nav = 8, + Location_tech_loc_tech_fault = 9 + /* + * Enumeration is extensible + */ +} e_Location_tech; + +/* Location-tech */ +typedef long Location_tech_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Location_tech; +asn_struct_free_f Location_tech_free; +asn_struct_print_f Location_tech_print; +asn_constr_check_f Location_tech_constraint; +ber_type_decoder_f Location_tech_decode_ber; +der_type_encoder_f Location_tech_encode_der; +xer_type_decoder_f Location_tech_decode_xer; +xer_type_encoder_f Location_tech_encode_xer; +oer_type_decoder_f Location_tech_decode_oer; +oer_type_encoder_f Location_tech_encode_oer; +per_type_decoder_f Location_tech_decode_uper; +per_type_encoder_f Location_tech_encode_uper; +per_type_decoder_f Location_tech_decode_aper; +per_type_encoder_f Location_tech_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Location_tech_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h new file mode 100644 index 000000000..ffb372cca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Longitude.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Longitude_H_ +#define _Longitude_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Longitude */ +typedef long Longitude_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Longitude_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Longitude; +asn_struct_free_f Longitude_free; +asn_struct_print_f Longitude_print; +asn_constr_check_f Longitude_constraint; +ber_type_decoder_f Longitude_decode_ber; +der_type_encoder_f Longitude_encode_der; +xer_type_decoder_f Longitude_decode_xer; +xer_type_encoder_f Longitude_encode_xer; +oer_type_decoder_f Longitude_decode_oer; +oer_type_encoder_f Longitude_encode_oer; +per_type_decoder_f Longitude_decode_uper; +per_type_encoder_f Longitude_encode_uper; +per_type_decoder_f Longitude_decode_aper; +per_type_encoder_f Longitude_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Longitude_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h new file mode 100644 index 000000000..c91c6701c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LongitudeDMS_H_ +#define _LongitudeDMS_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS */ +typedef long LongitudeDMS_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS; +asn_struct_free_f LongitudeDMS_free; +asn_struct_print_f LongitudeDMS_print; +asn_constr_check_f LongitudeDMS_constraint; +ber_type_decoder_f LongitudeDMS_decode_ber; +der_type_encoder_f LongitudeDMS_encode_der; +xer_type_decoder_f LongitudeDMS_decode_xer; +xer_type_encoder_f LongitudeDMS_encode_xer; +oer_type_decoder_f LongitudeDMS_decode_oer; +oer_type_encoder_f LongitudeDMS_encode_oer; +per_type_decoder_f LongitudeDMS_decode_uper; +per_type_encoder_f LongitudeDMS_encode_uper; +per_type_decoder_f LongitudeDMS_decode_aper; +per_type_encoder_f LongitudeDMS_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h new file mode 100644 index 000000000..f1e77739e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/LongitudeDMS2.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _LongitudeDMS2_H_ +#define _LongitudeDMS2_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DegreesLong.h" +#include "MinutesAngle.h" +#include "SecondsAngle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* LongitudeDMS2 */ +typedef struct LongitudeDMS2 { + DegreesLong_t d; + MinutesAngle_t m; + SecondsAngle_t s; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} LongitudeDMS2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2; +extern asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1; +extern asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _LongitudeDMS2_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h new file mode 100644 index 000000000..2505866a9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MUTCDCode.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MUTCDCode_H_ +#define _MUTCDCode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MUTCDCode { + MUTCDCode_none = 0, + MUTCDCode_regulatory = 1, + MUTCDCode_warning = 2, + MUTCDCode_maintenance = 3, + MUTCDCode_motoristService = 4, + MUTCDCode_guide = 5, + MUTCDCode_rec = 6 + /* + * Enumeration is extensible + */ +} e_MUTCDCode; + +/* MUTCDCode */ +typedef long MUTCDCode_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MUTCDCode; +extern const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1; +asn_struct_free_f MUTCDCode_free; +asn_struct_print_f MUTCDCode_print; +asn_constr_check_f MUTCDCode_constraint; +ber_type_decoder_f MUTCDCode_decode_ber; +der_type_encoder_f MUTCDCode_encode_der; +xer_type_decoder_f MUTCDCode_decode_xer; +xer_type_encoder_f MUTCDCode_encode_xer; +oer_type_decoder_f MUTCDCode_decode_oer; +oer_type_encoder_f MUTCDCode_encode_oer; +per_type_decoder_f MUTCDCode_decode_uper; +per_type_encoder_f MUTCDCode_encode_uper; +per_type_decoder_f MUTCDCode_decode_aper; +per_type_encoder_f MUTCDCode_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MUTCDCode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h new file mode 100644 index 000000000..189f35f86 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ManeuverAssistList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ManeuverAssistList_H_ +#define _ManeuverAssistList_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 ConnectionManeuverAssist; + +/* ManeuverAssistList */ +typedef struct ManeuverAssistList { + A_SEQUENCE_OF(struct ConnectionManeuverAssist) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ManeuverAssistList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList; +extern asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1; +extern asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[1]; +extern asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ConnectionManeuverAssist.h" + +#endif /* _ManeuverAssistList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h new file mode 100644 index 000000000..1084d0ce3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData-addGrpC.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MapData_addGrpC_H_ +#define _MapData_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalHeadLocationList; + +/* MapData-addGrpC */ +typedef struct MapData_addGrpC { + struct SignalHeadLocationList *signalHeadLocations; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MapData_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocationList.h" + +#endif /* _MapData_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h new file mode 100644 index 000000000..5f85a36ba --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MapData.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MapData_H_ +#define _MapData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSRC_MsgCount.h" +#include "LayerType.h" +#include "LayerID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionGeometryList; +struct RoadSegmentList; +struct DataParameters; +struct RestrictionClassList; +struct Reg_BasicSafetyMessage; + +/* MapData */ +typedef struct MapData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSRC_MsgCount_t msgIssueRevision; + LayerType_t *layerType; /* OPTIONAL */ + LayerID_t *layerID; /* OPTIONAL */ + struct IntersectionGeometryList *intersections; /* OPTIONAL */ + struct RoadSegmentList *roadSegments; /* OPTIONAL */ + struct DataParameters *dataParameters; /* OPTIONAL */ + struct RestrictionClassList *restrictionList; /* OPTIONAL */ + struct MapData__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} MapData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MapData; +extern asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1; +extern asn_TYPE_member_t asn_MBR_MapData_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionGeometryList.h" +#include "RoadSegmentList.h" +#include "DataParameters.h" +#include "RestrictionClassList.h" +#include "RegionalExtension.h" + +#endif /* _MapData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h new file mode 100644 index 000000000..b736c6387 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MaxTimetoChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MaxTimetoChange_H_ +#define _MaxTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MaxTimetoChange */ +typedef long MaxTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange; +asn_struct_free_f MaxTimetoChange_free; +asn_struct_print_f MaxTimetoChange_print; +asn_constr_check_f MaxTimetoChange_constraint; +ber_type_decoder_f MaxTimetoChange_decode_ber; +der_type_encoder_f MaxTimetoChange_encode_der; +xer_type_decoder_f MaxTimetoChange_decode_xer; +xer_type_encoder_f MaxTimetoChange_encode_xer; +oer_type_decoder_f MaxTimetoChange_decode_oer; +oer_type_encoder_f MaxTimetoChange_encode_oer; +per_type_decoder_f MaxTimetoChange_decode_uper; +per_type_encoder_f MaxTimetoChange_encode_uper; +per_type_decoder_f MaxTimetoChange_decode_aper; +per_type_encoder_f MaxTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MaxTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h new file mode 100644 index 000000000..59c1c0f1f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MeasurementTimeOffset.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names` + */ + +#ifndef _MeasurementTimeOffset_H_ +#define _MeasurementTimeOffset_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MeasurementTimeOffset */ +typedef long MeasurementTimeOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset; +asn_struct_free_f MeasurementTimeOffset_free; +asn_struct_print_f MeasurementTimeOffset_print; +asn_constr_check_f MeasurementTimeOffset_constraint; +ber_type_decoder_f MeasurementTimeOffset_decode_ber; +der_type_encoder_f MeasurementTimeOffset_encode_der; +xer_type_decoder_f MeasurementTimeOffset_decode_xer; +xer_type_encoder_f MeasurementTimeOffset_encode_xer; +oer_type_decoder_f MeasurementTimeOffset_decode_oer; +oer_type_encoder_f MeasurementTimeOffset_encode_oer; +per_type_decoder_f MeasurementTimeOffset_decode_uper; +per_type_encoder_f MeasurementTimeOffset_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MeasurementTimeOffset_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h new file mode 100644 index 000000000..1aed4a2ca --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MergeDivergeNodeAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MergeDivergeNodeAngle_H_ +#define _MergeDivergeNodeAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MergeDivergeNodeAngle */ +typedef long MergeDivergeNodeAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle; +asn_struct_free_f MergeDivergeNodeAngle_free; +asn_struct_print_f MergeDivergeNodeAngle_print; +asn_constr_check_f MergeDivergeNodeAngle_constraint; +ber_type_decoder_f MergeDivergeNodeAngle_decode_ber; +der_type_encoder_f MergeDivergeNodeAngle_encode_der; +xer_type_decoder_f MergeDivergeNodeAngle_decode_xer; +xer_type_encoder_f MergeDivergeNodeAngle_encode_xer; +oer_type_decoder_f MergeDivergeNodeAngle_decode_oer; +oer_type_encoder_f MergeDivergeNodeAngle_encode_oer; +per_type_decoder_f MergeDivergeNodeAngle_decode_uper; +per_type_encoder_f MergeDivergeNodeAngle_encode_uper; +per_type_decoder_f MergeDivergeNodeAngle_decode_aper; +per_type_encoder_f MergeDivergeNodeAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MergeDivergeNodeAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h new file mode 100644 index 000000000..9825b13b0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageBLOB.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MessageBLOB_H_ +#define _MessageBLOB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MessageBLOB */ +typedef OCTET_STRING_t MessageBLOB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageBLOB; +asn_struct_free_f MessageBLOB_free; +asn_struct_print_f MessageBLOB_print; +asn_constr_check_f MessageBLOB_constraint; +ber_type_decoder_f MessageBLOB_decode_ber; +der_type_encoder_f MessageBLOB_encode_der; +xer_type_decoder_f MessageBLOB_decode_xer; +xer_type_encoder_f MessageBLOB_encode_xer; +oer_type_decoder_f MessageBLOB_decode_oer; +oer_type_encoder_f MessageBLOB_encode_oer; +per_type_decoder_f MessageBLOB_decode_uper; +per_type_encoder_f MessageBLOB_encode_uper; +per_type_decoder_f MessageBLOB_decode_aper; +per_type_encoder_f MessageBLOB_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageBLOB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h new file mode 100644 index 000000000..422fc814a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MessageFrame.h @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names` + */ + +#ifndef _MessageFrame_H_ +#define _MessageFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRCmsgID.h" +#include "ANY.h" +#include "asn_ioc.h" +#include "BasicSafetyMessage.h" +#include "MapData.h" +#include "SPAT.h" +#include "CommonSafetyRequest.h" +#include "EmergencyVehicleAlert.h" +#include "IntersectionCollision.h" +#include "NMEAcorrections.h" +#include "ProbeDataManagement.h" +#include "ProbeVehicleData.h" +#include "RoadSideAlert.h" +#include "RTCMcorrections.h" +#include "SignalRequestMessage.h" +#include "SignalStatusMessage.h" +#include "TravelerInformation.h" +#include "PersonalSafetyMessage.h" +#include "TestMessage00.h" +#include "TestMessage01.h" +#include "TestMessage02.h" +#include "TestMessage03.h" +#include "TestMessage04.h" +#include "TestMessage05.h" +#include "TestMessage06.h" +#include "TestMessage07.h" +#include "TestMessage08.h" +#include "TestMessage09.h" +#include "TestMessage10.h" +#include "TestMessage11.h" +#include "TestMessage12.h" +#include "TestMessage13.h" +#include "TestMessage14.h" +#include "TestMessage15.h" +#include "SensorDataSharingMessage.h" +#include "OPEN_TYPE.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum value_PR { + value_PR_NOTHING, /* No components present */ + value_PR_BasicSafetyMessage, + value_PR_MapData, + value_PR_SPAT, + value_PR_CommonSafetyRequest, + value_PR_EmergencyVehicleAlert, + value_PR_IntersectionCollision, + value_PR_NMEAcorrections, + value_PR_ProbeDataManagement, + value_PR_ProbeVehicleData, + value_PR_RoadSideAlert, + value_PR_RTCMcorrections, + value_PR_SignalRequestMessage, + value_PR_SignalStatusMessage, + value_PR_TravelerInformation, + value_PR_PersonalSafetyMessage, + value_PR_TestMessage00, + value_PR_TestMessage01, + value_PR_TestMessage02, + value_PR_TestMessage03, + value_PR_TestMessage04, + value_PR_TestMessage05, + value_PR_TestMessage06, + value_PR_TestMessage07, + value_PR_TestMessage08, + value_PR_TestMessage09, + value_PR_TestMessage10, + value_PR_TestMessage11, + value_PR_TestMessage12, + value_PR_TestMessage13, + value_PR_TestMessage14, + value_PR_TestMessage15, + value_PR_SensorDataSharingMessage +} value_PR; + +/* MessageFrame */ +typedef struct MessageFrame { + DSRCmsgID_t messageId; + struct value { + value_PR present; + union value_u { + BasicSafetyMessage_t BasicSafetyMessage; + MapData_t MapData; + SPAT_t SPAT; + CommonSafetyRequest_t CommonSafetyRequest; + EmergencyVehicleAlert_t EmergencyVehicleAlert; + IntersectionCollision_t IntersectionCollision; + NMEAcorrections_t NMEAcorrections; + ProbeDataManagement_t ProbeDataManagement; + ProbeVehicleData_t ProbeVehicleData; + RoadSideAlert_t RoadSideAlert; + RTCMcorrections_t RTCMcorrections; + SignalRequestMessage_t SignalRequestMessage; + SignalStatusMessage_t SignalStatusMessage; + TravelerInformation_t TravelerInformation; + PersonalSafetyMessage_t PersonalSafetyMessage; + TestMessage00_t TestMessage00; + TestMessage01_t TestMessage01; + TestMessage02_t TestMessage02; + TestMessage03_t TestMessage03; + TestMessage04_t TestMessage04; + TestMessage05_t TestMessage05; + TestMessage06_t TestMessage06; + TestMessage07_t TestMessage07; + TestMessage08_t TestMessage08; + TestMessage09_t TestMessage09; + TestMessage10_t TestMessage10; + TestMessage11_t TestMessage11; + TestMessage12_t TestMessage12; + TestMessage13_t TestMessage13; + TestMessage14_t TestMessage14; + TestMessage15_t TestMessage15; + SensorDataSharingMessage_t SensorDataSharingMessage; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MessageFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageFrame; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h new file mode 100644 index 000000000..8a8146ea3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinTimetoChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MinTimetoChange_H_ +#define _MinTimetoChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinTimetoChange */ +typedef long MinTimetoChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinTimetoChange; +asn_struct_free_f MinTimetoChange_free; +asn_struct_print_f MinTimetoChange_print; +asn_constr_check_f MinTimetoChange_constraint; +ber_type_decoder_f MinTimetoChange_decode_ber; +der_type_encoder_f MinTimetoChange_encode_der; +xer_type_decoder_f MinTimetoChange_decode_xer; +xer_type_encoder_f MinTimetoChange_encode_xer; +oer_type_decoder_f MinTimetoChange_decode_oer; +oer_type_encoder_f MinTimetoChange_encode_oer; +per_type_decoder_f MinTimetoChange_decode_uper; +per_type_encoder_f MinTimetoChange_encode_uper; +per_type_decoder_f MinTimetoChange_decode_aper; +per_type_encoder_f MinTimetoChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinTimetoChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h new file mode 100644 index 000000000..dc2dedebe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Minute.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Minute_H_ +#define _Minute_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Minute */ +typedef long Minute_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Minute_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Minute; +asn_struct_free_f Minute_free; +asn_struct_print_f Minute_print; +asn_constr_check_f Minute_constraint; +ber_type_decoder_f Minute_decode_ber; +der_type_encoder_f Minute_encode_der; +xer_type_decoder_f Minute_decode_xer; +xer_type_encoder_f Minute_encode_xer; +oer_type_decoder_f Minute_decode_oer; +oer_type_encoder_f Minute_encode_oer; +per_type_decoder_f Minute_decode_uper; +per_type_encoder_f Minute_encode_uper; +per_type_decoder_f Minute_decode_aper; +per_type_encoder_f Minute_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Minute_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h new file mode 100644 index 000000000..a23f33684 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinuteOfTheYear.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MinuteOfTheYear_H_ +#define _MinuteOfTheYear_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinuteOfTheYear */ +typedef long MinuteOfTheYear_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear; +asn_struct_free_f MinuteOfTheYear_free; +asn_struct_print_f MinuteOfTheYear_print; +asn_constr_check_f MinuteOfTheYear_constraint; +ber_type_decoder_f MinuteOfTheYear_decode_ber; +der_type_encoder_f MinuteOfTheYear_encode_der; +xer_type_decoder_f MinuteOfTheYear_decode_xer; +xer_type_encoder_f MinuteOfTheYear_encode_xer; +oer_type_decoder_f MinuteOfTheYear_decode_oer; +oer_type_encoder_f MinuteOfTheYear_encode_oer; +per_type_decoder_f MinuteOfTheYear_decode_uper; +per_type_encoder_f MinuteOfTheYear_encode_uper; +per_type_decoder_f MinuteOfTheYear_decode_aper; +per_type_encoder_f MinuteOfTheYear_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinuteOfTheYear_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h new file mode 100644 index 000000000..0dd665595 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MinutesAngle_H_ +#define _MinutesAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesAngle */ +typedef long MinutesAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesAngle; +asn_struct_free_f MinutesAngle_free; +asn_struct_print_f MinutesAngle_print; +asn_constr_check_f MinutesAngle_constraint; +ber_type_decoder_f MinutesAngle_decode_ber; +der_type_encoder_f MinutesAngle_encode_der; +xer_type_decoder_f MinutesAngle_decode_xer; +xer_type_encoder_f MinutesAngle_encode_xer; +oer_type_decoder_f MinutesAngle_decode_oer; +oer_type_encoder_f MinutesAngle_encode_oer; +per_type_decoder_f MinutesAngle_decode_uper; +per_type_encoder_f MinutesAngle_encode_uper; +per_type_decoder_f MinutesAngle_decode_aper; +per_type_encoder_f MinutesAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h new file mode 100644 index 000000000..090dc2df1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MinutesDuration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MinutesDuration_H_ +#define _MinutesDuration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MinutesDuration */ +typedef long MinutesDuration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MinutesDuration; +asn_struct_free_f MinutesDuration_free; +asn_struct_print_f MinutesDuration_print; +asn_constr_check_f MinutesDuration_constraint; +ber_type_decoder_f MinutesDuration_decode_ber; +der_type_encoder_f MinutesDuration_encode_der; +xer_type_decoder_f MinutesDuration_decode_xer; +xer_type_encoder_f MinutesDuration_encode_xer; +oer_type_decoder_f MinutesDuration_decode_oer; +oer_type_encoder_f MinutesDuration_encode_oer; +per_type_decoder_f MinutesDuration_decode_uper; +per_type_encoder_f MinutesDuration_encode_uper; +per_type_decoder_f MinutesDuration_decode_aper; +per_type_encoder_f MinutesDuration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MinutesDuration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h new file mode 100644 index 000000000..6585d54e0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityDynamicID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityDynamicID_H_ +#define _MobilityDynamicID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityDynamicID */ +typedef IA5String_t MobilityDynamicID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID; +asn_struct_free_f MobilityDynamicID_free; +asn_struct_print_f MobilityDynamicID_print; +asn_constr_check_f MobilityDynamicID_constraint; +ber_type_decoder_f MobilityDynamicID_decode_ber; +der_type_encoder_f MobilityDynamicID_encode_der; +xer_type_decoder_f MobilityDynamicID_decode_xer; +xer_type_encoder_f MobilityDynamicID_encode_xer; +oer_type_decoder_f MobilityDynamicID_decode_oer; +oer_type_encoder_f MobilityDynamicID_encode_oer; +per_type_decoder_f MobilityDynamicID_decode_uper; +per_type_encoder_f MobilityDynamicID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityDynamicID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h new file mode 100644 index 000000000..886ddd37c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFCoordinate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFCoordinate_H_ +#define _MobilityECEFCoordinate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFCoordinate */ +typedef long MobilityECEFCoordinate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate; +asn_struct_free_f MobilityECEFCoordinate_free; +asn_struct_print_f MobilityECEFCoordinate_print; +asn_constr_check_f MobilityECEFCoordinate_constraint; +ber_type_decoder_f MobilityECEFCoordinate_decode_ber; +der_type_encoder_f MobilityECEFCoordinate_encode_der; +xer_type_decoder_f MobilityECEFCoordinate_decode_xer; +xer_type_encoder_f MobilityECEFCoordinate_encode_xer; +oer_type_decoder_f MobilityECEFCoordinate_decode_oer; +oer_type_encoder_f MobilityECEFCoordinate_encode_oer; +per_type_decoder_f MobilityECEFCoordinate_decode_uper; +per_type_encoder_f MobilityECEFCoordinate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFCoordinate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h new file mode 100644 index 000000000..abdf4de36 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffset.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFOffset_H_ +#define _MobilityECEFOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityECEFOffsetCoordinate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFOffset */ +typedef struct MobilityECEFOffset { + MobilityECEFOffsetCoordinate_t offsetX; + MobilityECEFOffsetCoordinate_t offsetY; + MobilityECEFOffsetCoordinate_t offsetZ; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityECEFOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h new file mode 100644 index 000000000..0515352ed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityECEFOffsetCoordinate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityECEFOffsetCoordinate_H_ +#define _MobilityECEFOffsetCoordinate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityECEFOffsetCoordinate */ +typedef long MobilityECEFOffsetCoordinate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate; +asn_struct_free_f MobilityECEFOffsetCoordinate_free; +asn_struct_print_f MobilityECEFOffsetCoordinate_print; +asn_constr_check_f MobilityECEFOffsetCoordinate_constraint; +ber_type_decoder_f MobilityECEFOffsetCoordinate_decode_ber; +der_type_encoder_f MobilityECEFOffsetCoordinate_encode_der; +xer_type_decoder_f MobilityECEFOffsetCoordinate_decode_xer; +xer_type_encoder_f MobilityECEFOffsetCoordinate_encode_xer; +oer_type_decoder_f MobilityECEFOffsetCoordinate_decode_oer; +oer_type_encoder_f MobilityECEFOffsetCoordinate_encode_oer; +per_type_decoder_f MobilityECEFOffsetCoordinate_decode_uper; +per_type_encoder_f MobilityECEFOffsetCoordinate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityECEFOffsetCoordinate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h new file mode 100644 index 000000000..b95a26e13 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityGUID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityGUID_H_ +#define _MobilityGUID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityGUID */ +typedef IA5String_t MobilityGUID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityGUID; +asn_struct_free_f MobilityGUID_free; +asn_struct_print_f MobilityGUID_print; +asn_constr_check_f MobilityGUID_constraint; +ber_type_decoder_f MobilityGUID_decode_ber; +der_type_encoder_f MobilityGUID_encode_der; +xer_type_decoder_f MobilityGUID_decode_xer; +xer_type_encoder_f MobilityGUID_encode_xer; +oer_type_decoder_f MobilityGUID_decode_oer; +oer_type_encoder_f MobilityGUID_encode_oer; +per_type_decoder_f MobilityGUID_decode_uper; +per_type_encoder_f MobilityGUID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityGUID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h new file mode 100644 index 000000000..7b32562ec --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityHeader.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityHeader_H_ +#define _MobilityHeader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStaticID.h" +#include "MobilityDynamicID.h" +#include "MobilityGUID.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityHeader */ +typedef struct MobilityHeader { + MobilityStaticID_t hostStaticId; + MobilityStaticID_t targetStaticId; + MobilityDynamicID_t hostBSMId; + MobilityGUID_t planId; + MobilityTimestamp_t timestamp; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityHeader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityHeader; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityHeader_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityHeader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h new file mode 100644 index 000000000..f73b68e2a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocation.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityLocation_H_ +#define _MobilityLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityECEFCoordinate.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityLocation */ +typedef struct MobilityLocation { + MobilityECEFCoordinate_t ecefX; + MobilityECEFCoordinate_t ecefY; + MobilityECEFCoordinate_t ecefZ; + MobilityTimestamp_t timestamp; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityLocation; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityLocation_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h new file mode 100644 index 000000000..f40add688 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityLocationOffsets.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityLocationOffsets_H_ +#define _MobilityLocationOffsets_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 MobilityECEFOffset; + +/* MobilityLocationOffsets */ +typedef struct MobilityLocationOffsets { + A_SEQUENCE_OF(struct MobilityECEFOffset) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityLocationOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets; +extern asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[1]; +extern asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MobilityECEFOffset.h" + +#endif /* _MobilityLocationOffsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeeds.h new file mode 100644 index 000000000..4eceaa686 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/MobilityNeedsList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsList.h new file mode 100644 index 000000000..05421eb09 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/MobilityNeedsType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityNeedsType.h new file mode 100644 index 000000000..9da4492ee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/MobilityOperation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h new file mode 100644 index 000000000..cf865e33b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityOperation.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityOperation_H_ +#define _MobilityOperation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStrategy.h" +#include "MobilityParameters.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityOperation */ +typedef struct MobilityOperation { + MobilityStrategy_t strategy; + MobilityParameters_t operationParams; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityOperation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityOperation; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityOperation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityOperation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h new file mode 100644 index 000000000..7db88393d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityParameters.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityParameters_H_ +#define _MobilityParameters_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityParameters */ +typedef IA5String_t MobilityParameters_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityParameters; +asn_struct_free_f MobilityParameters_free; +asn_struct_print_f MobilityParameters_print; +asn_constr_check_f MobilityParameters_constraint; +ber_type_decoder_f MobilityParameters_decode_ber; +der_type_encoder_f MobilityParameters_encode_der; +xer_type_decoder_f MobilityParameters_decode_xer; +xer_type_encoder_f MobilityParameters_encode_xer; +oer_type_decoder_f MobilityParameters_decode_oer; +oer_type_encoder_f MobilityParameters_encode_oer; +per_type_decoder_f MobilityParameters_decode_uper; +per_type_encoder_f MobilityParameters_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityParameters_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h new file mode 100644 index 000000000..2cab5ee68 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPath.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityPath_H_ +#define _MobilityPath_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityPath */ +typedef struct MobilityPath { + MobilityLocation_t location; + MobilityLocationOffsets_t trajectory; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityPath_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityPath; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityPath_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityPath_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h new file mode 100644 index 000000000..4e971e1aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityPlanType.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityPlanType_H_ +#define _MobilityPlanType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MobilityPlanType { + MobilityPlanType_unknown = 0, + MobilityPlanType_changingLanesToTheLeft = 1, + MobilityPlanType_changingLanesToTheRight = 2, + MobilityPlanType_joinPlatoonAtRear = 3, + MobilityPlanType_platoonFollowerJoin = 4 + /* + * Enumeration is extensible + */ +} e_MobilityPlanType; + +/* MobilityPlanType */ +typedef long MobilityPlanType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityPlanType; +extern const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1; +asn_struct_free_f MobilityPlanType_free; +asn_struct_print_f MobilityPlanType_print; +asn_constr_check_f MobilityPlanType_constraint; +ber_type_decoder_f MobilityPlanType_decode_ber; +der_type_encoder_f MobilityPlanType_encode_der; +xer_type_decoder_f MobilityPlanType_decode_xer; +xer_type_encoder_f MobilityPlanType_encode_xer; +oer_type_decoder_f MobilityPlanType_decode_oer; +oer_type_encoder_f MobilityPlanType_encode_oer; +per_type_decoder_f MobilityPlanType_decode_uper; +per_type_encoder_f MobilityPlanType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityPlanType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h new file mode 100644 index 000000000..83580ddac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityRequest.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityRequest_H_ +#define _MobilityRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityStrategy.h" +#include "MobilityPlanType.h" +#include "MobilityUrgency.h" +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" +#include "MobilityParameters.h" +#include "MobilityTimestamp.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct MobilityLocation; +struct MobilityLocationOffsets; + +/* MobilityRequest */ +typedef struct MobilityRequest { + MobilityStrategy_t strategy; + MobilityPlanType_t planType; + MobilityUrgency_t urgency; + MobilityLocation_t location; + MobilityParameters_t strategyParams; + MobilityLocation_t trajectoryStart /* OPTIONAL */; + MobilityLocationOffsets_t trajectory /* OPTIONAL */; + MobilityTimestamp_t expiration /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityRequest_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MobilityLocation.h" +#include "MobilityLocationOffsets.h" + +#endif /* _MobilityRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h new file mode 100644 index 000000000..76f7004a4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponse.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityResponse_H_ +#define _MobilityResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityUrgency.h" +#include "MobilityResponseFlag.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityResponse */ +typedef struct MobilityResponse { + MobilityUrgency_t urgency; + MobilityResponseFlag_t isAccepted; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityResponse; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityResponse_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h new file mode 100644 index 000000000..30f71521b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityResponseFlag.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityResponseFlag_H_ +#define _MobilityResponseFlag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityResponseFlag */ +typedef BOOLEAN_t MobilityResponseFlag_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag; +asn_struct_free_f MobilityResponseFlag_free; +asn_struct_print_f MobilityResponseFlag_print; +asn_constr_check_f MobilityResponseFlag_constraint; +ber_type_decoder_f MobilityResponseFlag_decode_ber; +der_type_encoder_f MobilityResponseFlag_encode_der; +xer_type_decoder_f MobilityResponseFlag_decode_xer; +xer_type_encoder_f MobilityResponseFlag_encode_xer; +oer_type_decoder_f MobilityResponseFlag_decode_oer; +oer_type_encoder_f MobilityResponseFlag_encode_oer; +per_type_decoder_f MobilityResponseFlag_decode_uper; +per_type_encoder_f MobilityResponseFlag_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityResponseFlag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h new file mode 100644 index 000000000..74a040938 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStaticID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityStaticID_H_ +#define _MobilityStaticID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityStaticID */ +typedef IA5String_t MobilityStaticID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityStaticID; +asn_struct_free_f MobilityStaticID_free; +asn_struct_print_f MobilityStaticID_print; +asn_constr_check_f MobilityStaticID_constraint; +ber_type_decoder_f MobilityStaticID_decode_ber; +der_type_encoder_f MobilityStaticID_encode_der; +xer_type_decoder_f MobilityStaticID_decode_xer; +xer_type_encoder_f MobilityStaticID_encode_xer; +oer_type_decoder_f MobilityStaticID_decode_oer; +oer_type_encoder_f MobilityStaticID_encode_oer; +per_type_decoder_f MobilityStaticID_decode_uper; +per_type_encoder_f MobilityStaticID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityStaticID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h new file mode 100644 index 000000000..e7c93479a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityStrategy.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityStrategy_H_ +#define _MobilityStrategy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityStrategy */ +typedef IA5String_t MobilityStrategy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityStrategy; +asn_struct_free_f MobilityStrategy_free; +asn_struct_print_f MobilityStrategy_print; +asn_constr_check_f MobilityStrategy_constraint; +ber_type_decoder_f MobilityStrategy_decode_ber; +der_type_encoder_f MobilityStrategy_encode_der; +xer_type_decoder_f MobilityStrategy_decode_xer; +xer_type_encoder_f MobilityStrategy_encode_xer; +oer_type_decoder_f MobilityStrategy_decode_oer; +oer_type_encoder_f MobilityStrategy_encode_oer; +per_type_decoder_f MobilityStrategy_decode_uper; +per_type_encoder_f MobilityStrategy_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityStrategy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h new file mode 100644 index 000000000..17e94afb7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityTimestamp.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityTimestamp_H_ +#define _MobilityTimestamp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityTimestamp */ +typedef IA5String_t MobilityTimestamp_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp; +asn_struct_free_f MobilityTimestamp_free; +asn_struct_print_f MobilityTimestamp_print; +asn_constr_check_f MobilityTimestamp_constraint; +ber_type_decoder_f MobilityTimestamp_decode_ber; +der_type_encoder_f MobilityTimestamp_encode_der; +xer_type_decoder_f MobilityTimestamp_decode_xer; +xer_type_encoder_f MobilityTimestamp_encode_xer; +oer_type_decoder_f MobilityTimestamp_decode_oer; +oer_type_encoder_f MobilityTimestamp_encode_oer; +per_type_decoder_f MobilityTimestamp_decode_uper; +per_type_encoder_f MobilityTimestamp_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityTimestamp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h new file mode 100644 index 000000000..eef5355ff --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MobilityUrgency.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _MobilityUrgency_H_ +#define _MobilityUrgency_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityUrgency */ +typedef long MobilityUrgency_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityUrgency; +asn_struct_free_f MobilityUrgency_free; +asn_struct_print_f MobilityUrgency_print; +asn_constr_check_f MobilityUrgency_constraint; +ber_type_decoder_f MobilityUrgency_decode_ber; +der_type_encoder_f MobilityUrgency_encode_der; +xer_type_decoder_f MobilityUrgency_decode_xer; +xer_type_encoder_f MobilityUrgency_encode_xer; +oer_type_decoder_f MobilityUrgency_decode_oer; +oer_type_encoder_f MobilityUrgency_encode_oer; +per_type_decoder_f MobilityUrgency_decode_uper; +per_type_encoder_f MobilityUrgency_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityUrgency_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ModeOfTransportType.h new file mode 100644 index 000000000..8d7f72926 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/Month.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h new file mode 100644 index 000000000..de2fa7172 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Month.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Month_H_ +#define _Month_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Month */ +typedef long Month_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Month_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Month; +asn_struct_free_f Month_free; +asn_struct_print_f Month_print; +asn_constr_check_f Month_constraint; +ber_type_decoder_f Month_decode_ber; +der_type_encoder_f Month_encode_der; +xer_type_decoder_f Month_decode_xer; +xer_type_encoder_f Month_encode_xer; +oer_type_decoder_f Month_decode_oer; +oer_type_encoder_f Month_encode_oer; +per_type_decoder_f Month_decode_uper; +per_type_encoder_f Month_encode_uper; +per_type_decoder_f Month_decode_aper; +per_type_encoder_f Month_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Month_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h new file mode 100644 index 000000000..360fbbd24 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MotorizedPropelledType.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MotorizedPropelledType_H_ +#define _MotorizedPropelledType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MotorizedPropelledType { + MotorizedPropelledType_unavailable = 0, + MotorizedPropelledType_otherTypes = 1, + MotorizedPropelledType_wheelChair = 2, + MotorizedPropelledType_bicycle = 3, + MotorizedPropelledType_scooter = 4, + MotorizedPropelledType_selfBalancingDevice = 5 + /* + * Enumeration is extensible + */ +} e_MotorizedPropelledType; + +/* MotorizedPropelledType */ +typedef long MotorizedPropelledType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType; +extern const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1; +asn_struct_free_f MotorizedPropelledType_free; +asn_struct_print_f MotorizedPropelledType_print; +asn_constr_check_f MotorizedPropelledType_constraint; +ber_type_decoder_f MotorizedPropelledType_decode_ber; +der_type_encoder_f MotorizedPropelledType_encode_der; +xer_type_decoder_f MotorizedPropelledType_decode_xer; +xer_type_encoder_f MotorizedPropelledType_encode_xer; +oer_type_decoder_f MotorizedPropelledType_decode_oer; +oer_type_encoder_f MotorizedPropelledType_encode_oer; +per_type_decoder_f MotorizedPropelledType_decode_uper; +per_type_encoder_f MotorizedPropelledType_encode_uper; +per_type_decoder_f MotorizedPropelledType_decode_aper; +per_type_encoder_f MotorizedPropelledType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MotorizedPropelledType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h new file mode 100644 index 000000000..591f753b4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent-addGrpB.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementEvent_addGrpB_H_ +#define _MovementEvent_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TimeRemaining.h" +#include "MinTimetoChange.h" +#include "MaxTimetoChange.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MovementEvent-addGrpB */ +typedef struct MovementEvent_addGrpB { + TimeRemaining_t *startTime; /* OPTIONAL */ + MinTimetoChange_t minEndTime; + MaxTimetoChange_t *maxEndTime; /* OPTIONAL */ + TimeRemaining_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + TimeRemaining_t *nextTime; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEvent_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementEvent_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h new file mode 100644 index 000000000..b7d557ada --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEvent.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementEvent_H_ +#define _MovementEvent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MovementPhaseState.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TimeChangeDetails; +struct AdvisorySpeedList; +struct Reg_BasicSafetyMessage; + +/* MovementEvent */ +typedef struct MovementEvent { + MovementPhaseState_t eventState; + struct TimeChangeDetails *timing; /* OPTIONAL */ + struct AdvisorySpeedList *speeds; /* OPTIONAL */ + struct MovementEvent__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} MovementEvent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEvent; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEvent_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TimeChangeDetails.h" +#include "AdvisorySpeedList.h" +#include "RegionalExtension.h" + +#endif /* _MovementEvent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h new file mode 100644 index 000000000..92ac9e11b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementEventList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementEventList_H_ +#define _MovementEventList_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 MovementEvent; + +/* MovementEventList */ +typedef struct MovementEventList { + A_SEQUENCE_OF(struct MovementEvent) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementEventList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementEventList; +extern asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementEventList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementEventList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementEvent.h" + +#endif /* _MovementEventList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h new file mode 100644 index 000000000..de0a0c0f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementList_H_ +#define _MovementList_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 MovementState; + +/* MovementList */ +typedef struct MovementList { + A_SEQUENCE_OF(struct MovementState) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MovementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementList; +extern asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementList_1[1]; +extern asn_per_constraints_t asn_PER_type_MovementList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MovementState.h" + +#endif /* _MovementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h new file mode 100644 index 000000000..e91612d64 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementPhaseState.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementPhaseState_H_ +#define _MovementPhaseState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MovementPhaseState { + MovementPhaseState_unavailable = 0, + MovementPhaseState_dark = 1, + MovementPhaseState_stop_Then_Proceed = 2, + MovementPhaseState_stop_And_Remain = 3, + MovementPhaseState_pre_Movement = 4, + MovementPhaseState_permissive_Movement_Allowed = 5, + MovementPhaseState_protected_Movement_Allowed = 6, + MovementPhaseState_permissive_clearance = 7, + MovementPhaseState_protected_clearance = 8, + MovementPhaseState_caution_Conflicting_Traffic = 9 +} e_MovementPhaseState; + +/* MovementPhaseState */ +typedef long MovementPhaseState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MovementPhaseState; +extern const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1; +asn_struct_free_f MovementPhaseState_free; +asn_struct_print_f MovementPhaseState_print; +asn_constr_check_f MovementPhaseState_constraint; +ber_type_decoder_f MovementPhaseState_decode_ber; +der_type_encoder_f MovementPhaseState_encode_der; +xer_type_decoder_f MovementPhaseState_decode_xer; +xer_type_encoder_f MovementPhaseState_encode_xer; +oer_type_decoder_f MovementPhaseState_decode_oer; +oer_type_encoder_f MovementPhaseState_encode_oer; +per_type_decoder_f MovementPhaseState_decode_uper; +per_type_encoder_f MovementPhaseState_encode_uper; +per_type_decoder_f MovementPhaseState_decode_aper; +per_type_encoder_f MovementPhaseState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MovementPhaseState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h new file mode 100644 index 000000000..1b540e37c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MovementState.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MovementState_H_ +#define _MovementState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "SignalGroupID.h" +#include "MovementEventList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ManeuverAssistList; +struct Reg_BasicSafetyMessage; + +/* MovementState */ +typedef struct MovementState { + DescriptiveName_t *movementName; /* OPTIONAL */ + SignalGroupID_t signalGroup; + MovementEventList_t state_time_speed; + struct ManeuverAssistList *maneuverAssistList; /* OPTIONAL */ + struct MovementState__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} MovementState_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MovementState; +extern asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1; +extern asn_TYPE_member_t asn_MBR_MovementState_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "ManeuverAssistList.h" +#include "RegionalExtension.h" + +#endif /* _MovementState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h new file mode 100644 index 000000000..98784e1e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MsgCRC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MsgCRC_H_ +#define _MsgCRC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MsgCRC */ +typedef OCTET_STRING_t MsgCRC_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MsgCRC_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MsgCRC; +asn_struct_free_f MsgCRC_free; +asn_struct_print_f MsgCRC_print; +asn_constr_check_f MsgCRC_constraint; +ber_type_decoder_f MsgCRC_decode_ber; +der_type_encoder_f MsgCRC_encode_der; +xer_type_decoder_f MsgCRC_decode_xer; +xer_type_encoder_f MsgCRC_encode_xer; +oer_type_decoder_f MsgCRC_decode_oer; +oer_type_encoder_f MsgCRC_encode_oer; +per_type_decoder_f MsgCRC_decode_uper; +per_type_encoder_f MsgCRC_encode_uper; +per_type_decoder_f MsgCRC_decode_aper; +per_type_encoder_f MsgCRC_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MsgCRC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h new file mode 100644 index 000000000..b5f3a32ab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/MultiVehicleResponse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _MultiVehicleResponse_H_ +#define _MultiVehicleResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MultiVehicleResponse { + MultiVehicleResponse_unavailable = 0, + MultiVehicleResponse_singleVehicle = 1, + MultiVehicleResponse_multiVehicle = 2, + MultiVehicleResponse_reserved = 3 +} e_MultiVehicleResponse; + +/* MultiVehicleResponse */ +typedef long MultiVehicleResponse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse; +extern const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1; +asn_struct_free_f MultiVehicleResponse_free; +asn_struct_print_f MultiVehicleResponse_print; +asn_constr_check_f MultiVehicleResponse_constraint; +ber_type_decoder_f MultiVehicleResponse_decode_ber; +der_type_encoder_f MultiVehicleResponse_encode_der; +xer_type_decoder_f MultiVehicleResponse_decode_xer; +xer_type_encoder_f MultiVehicleResponse_encode_xer; +oer_type_decoder_f MultiVehicleResponse_decode_oer; +oer_type_encoder_f MultiVehicleResponse_encode_oer; +per_type_decoder_f MultiVehicleResponse_decode_uper; +per_type_encoder_f MultiVehicleResponse_encode_uper; +per_type_decoder_f MultiVehicleResponse_decode_aper; +per_type_encoder_f MultiVehicleResponse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MultiVehicleResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h new file mode 100644 index 000000000..7c76ebf35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-MsgType.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NMEA_MsgType_H_ +#define _NMEA_MsgType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-MsgType */ +typedef long NMEA_MsgType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType; +asn_struct_free_f NMEA_MsgType_free; +asn_struct_print_f NMEA_MsgType_print; +asn_constr_check_f NMEA_MsgType_constraint; +ber_type_decoder_f NMEA_MsgType_decode_ber; +der_type_encoder_f NMEA_MsgType_encode_der; +xer_type_decoder_f NMEA_MsgType_decode_xer; +xer_type_encoder_f NMEA_MsgType_encode_xer; +oer_type_decoder_f NMEA_MsgType_decode_oer; +oer_type_encoder_f NMEA_MsgType_encode_oer; +per_type_decoder_f NMEA_MsgType_decode_uper; +per_type_encoder_f NMEA_MsgType_encode_uper; +per_type_decoder_f NMEA_MsgType_decode_aper; +per_type_encoder_f NMEA_MsgType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_MsgType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h new file mode 100644 index 000000000..6328e6313 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Payload.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NMEA_Payload_H_ +#define _NMEA_Payload_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NMEA-Payload */ +typedef OCTET_STRING_t NMEA_Payload_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Payload; +asn_struct_free_f NMEA_Payload_free; +asn_struct_print_f NMEA_Payload_print; +asn_constr_check_f NMEA_Payload_constraint; +ber_type_decoder_f NMEA_Payload_decode_ber; +der_type_encoder_f NMEA_Payload_encode_der; +xer_type_decoder_f NMEA_Payload_decode_xer; +xer_type_encoder_f NMEA_Payload_encode_xer; +oer_type_decoder_f NMEA_Payload_decode_oer; +oer_type_encoder_f NMEA_Payload_encode_oer; +per_type_decoder_f NMEA_Payload_decode_uper; +per_type_encoder_f NMEA_Payload_encode_uper; +per_type_decoder_f NMEA_Payload_decode_aper; +per_type_encoder_f NMEA_Payload_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Payload_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h new file mode 100644 index 000000000..584c4a602 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEA-Revision.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NMEA_Revision_H_ +#define _NMEA_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NMEA_Revision { + NMEA_Revision_unknown = 0, + NMEA_Revision_reserved = 1, + NMEA_Revision_rev1 = 2, + NMEA_Revision_rev2 = 3, + NMEA_Revision_rev3 = 4, + NMEA_Revision_rev4 = 5, + NMEA_Revision_rev5 = 6 + /* + * Enumeration is extensible + */ +} e_NMEA_Revision; + +/* NMEA-Revision */ +typedef long NMEA_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NMEA_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1; +asn_struct_free_f NMEA_Revision_free; +asn_struct_print_f NMEA_Revision_print; +asn_constr_check_f NMEA_Revision_constraint; +ber_type_decoder_f NMEA_Revision_decode_ber; +der_type_encoder_f NMEA_Revision_encode_der; +xer_type_decoder_f NMEA_Revision_decode_xer; +xer_type_encoder_f NMEA_Revision_encode_xer; +oer_type_decoder_f NMEA_Revision_decode_oer; +oer_type_encoder_f NMEA_Revision_encode_oer; +per_type_decoder_f NMEA_Revision_decode_uper; +per_type_encoder_f NMEA_Revision_encode_uper; +per_type_decoder_f NMEA_Revision_decode_aper; +per_type_encoder_f NMEA_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NMEA_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h new file mode 100644 index 000000000..2b8d14bb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NMEAcorrections.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NMEAcorrections_H_ +#define _NMEAcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "NMEA-Revision.h" +#include "NMEA-MsgType.h" +#include "ObjectCount.h" +#include "NMEA-Payload.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* NMEAcorrections */ +typedef struct NMEAcorrections { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + NMEA_Revision_t *rev; /* OPTIONAL */ + NMEA_MsgType_t *msg; /* OPTIONAL */ + ObjectCount_t *wdCount; /* OPTIONAL */ + NMEA_Payload_t payload; + struct NMEAcorrections__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} NMEAcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NMEAcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_NMEAcorrections_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _NMEAcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h new file mode 100644 index 000000000..802d12c00 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NULL.h @@ -0,0 +1,45 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_NULL_H +#define ASN_TYPE_NULL_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * The value of the NULL type is meaningless: see BOOLEAN if you want to + * carry true/false semantics. + */ +typedef int NULL_t; + +extern asn_TYPE_descriptor_t asn_DEF_NULL; +extern asn_TYPE_operation_t asn_OP_NULL; + +asn_struct_print_f NULL_print; +asn_struct_compare_f NULL_compare; +der_type_encoder_f NULL_encode_der; +xer_type_decoder_f NULL_decode_xer; +xer_type_encoder_f NULL_encode_xer; +oer_type_decoder_f NULL_decode_oer; +oer_type_encoder_f NULL_encode_oer; +per_type_decoder_f NULL_decode_uper; +per_type_encoder_f NULL_encode_uper; +per_type_decoder_f NULL_decode_aper; +per_type_encoder_f NULL_encode_aper; +asn_random_fill_f NULL_random_fill; + +#define NULL_free BOOLEAN_free +#define NULL_decode_ber BOOLEAN_decode_ber +#define NULL_constraint asn_generic_no_constraint + +#ifdef __cplusplus +} +#endif + +#endif /* NULL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h new file mode 100644 index 000000000..459f0e633 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeEnumerated.h @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard ENUMERATED in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeEnumerated_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeEnumerated_H_ +#define _NativeEnumerated_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeEnumerated; +extern asn_TYPE_operation_t asn_OP_NativeEnumerated; + +xer_type_encoder_f NativeEnumerated_encode_xer; +oer_type_decoder_f NativeEnumerated_decode_oer; +oer_type_encoder_f NativeEnumerated_encode_oer; +per_type_decoder_f NativeEnumerated_decode_uper; +per_type_encoder_f NativeEnumerated_encode_uper; +per_type_decoder_f NativeEnumerated_decode_aper; +per_type_encoder_f NativeEnumerated_encode_aper; + +#define NativeEnumerated_free NativeInteger_free +#define NativeEnumerated_print NativeInteger_print +#define NativeEnumerated_compare NativeInteger_compare +#define NativeEnumerated_random_fill NativeInteger_random_fill +#define NativeEnumerated_constraint asn_generic_no_constraint +#define NativeEnumerated_decode_ber NativeInteger_decode_ber +#define NativeEnumerated_encode_der NativeInteger_encode_der +#define NativeEnumerated_decode_xer NativeInteger_decode_xer + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeEnumerated_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h new file mode 100644 index 000000000..c74406a8a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeInteger.h @@ -0,0 +1,46 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard INTEGER in that it is modelled using + * the fixed machine type (long, int, short), so it can hold only values of + * limited length. There is no type (i.e., NativeInteger_t, any integer type + * will do). + * This type may be used when integer range is limited by subtype constraints. + */ +#ifndef _NativeInteger_H_ +#define _NativeInteger_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeInteger; +extern asn_TYPE_operation_t asn_OP_NativeInteger; + +asn_struct_free_f NativeInteger_free; +asn_struct_print_f NativeInteger_print; +asn_struct_compare_f NativeInteger_compare; +ber_type_decoder_f NativeInteger_decode_ber; +der_type_encoder_f NativeInteger_encode_der; +xer_type_decoder_f NativeInteger_decode_xer; +xer_type_encoder_f NativeInteger_encode_xer; +oer_type_decoder_f NativeInteger_decode_oer; +oer_type_encoder_f NativeInteger_encode_oer; +per_type_decoder_f NativeInteger_decode_uper; +per_type_encoder_f NativeInteger_encode_uper; +per_type_decoder_f NativeInteger_decode_aper; +per_type_encoder_f NativeInteger_encode_aper; +asn_random_fill_f NativeInteger_random_fill; + +#define NativeInteger_constraint asn_generic_no_constraint + +#ifdef __cplusplus +} +#endif + +#endif /* _NativeInteger_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NativeReal.h new file mode 100644 index 000000000..cfdd1bd1c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/Node-LL-24B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h new file mode 100644 index 000000000..572a7faa3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-24B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_24B_H_ +#define _Node_LL_24B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-24B */ +typedef struct Node_LL_24B { + OffsetLL_B12_t lon; + OffsetLL_B12_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_24B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_24B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_24B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_24B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h new file mode 100644 index 000000000..4ae4ccfc5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-28B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_28B_H_ +#define _Node_LL_28B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-28B */ +typedef struct Node_LL_28B { + OffsetLL_B14_t lon; + OffsetLL_B14_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_28B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_28B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_28B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_28B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h new file mode 100644 index 000000000..36bd5b49e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-32B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_32B_H_ +#define _Node_LL_32B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-32B */ +typedef struct Node_LL_32B { + OffsetLL_B16_t lon; + OffsetLL_B16_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_32B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_32B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_32B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_32B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h new file mode 100644 index 000000000..3dbb6f11a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-36B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_36B_H_ +#define _Node_LL_36B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-36B */ +typedef struct Node_LL_36B { + OffsetLL_B18_t lon; + OffsetLL_B18_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_36B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_36B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_36B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_36B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h new file mode 100644 index 000000000..13b7580a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-44B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_44B_H_ +#define _Node_LL_44B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B22.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-44B */ +typedef struct Node_LL_44B { + OffsetLL_B22_t lon; + OffsetLL_B22_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_44B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_44B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_44B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_44B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h new file mode 100644 index 000000000..fb2085c4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LL-48B.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LL_48B_H_ +#define _Node_LL_48B_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B24.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LL-48B */ +typedef struct Node_LL_48B { + OffsetLL_B24_t lon; + OffsetLL_B24_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LL_48B_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LL_48B; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LL_48B_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LL_48B_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h new file mode 100644 index 000000000..b6cd97e28 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-48b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LLdms_48b_H_ +#define _Node_LLdms_48b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS.h" +#include "LatitudeDMS.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-48b */ +typedef struct Node_LLdms_48b { + LongitudeDMS_t lon; + LatitudeDMS_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_48b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_48b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h new file mode 100644 index 000000000..41f2ffc21 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLdms-80b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LLdms_80b_H_ +#define _Node_LLdms_80b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LongitudeDMS2.h" +#include "LatitudeDMS2.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLdms-80b */ +typedef struct Node_LLdms_80b { + LongitudeDMS2_t lon; + LatitudeDMS2_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLdms_80b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLdms_80b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h new file mode 100644 index 000000000..da35ccf67 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-LLmD-64b.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_LLmD_64b_H_ +#define _Node_LLmD_64b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-LLmD-64b */ +typedef struct Node_LLmD_64b { + Longitude_t lon; + Latitude_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_LLmD_64b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_LLmD_64b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h new file mode 100644 index 000000000..219b22e66 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-20b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_20b_H_ +#define _Node_XY_20b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-20b */ +typedef struct Node_XY_20b { + Offset_B10_t x; + Offset_B10_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_20b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_20b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_20b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_20b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h new file mode 100644 index 000000000..2543a9109 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-22b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_22b_H_ +#define _Node_XY_22b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-22b */ +typedef struct Node_XY_22b { + Offset_B11_t x; + Offset_B11_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_22b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_22b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_22b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_22b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h new file mode 100644 index 000000000..73d6a8eb2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-24b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_24b_H_ +#define _Node_XY_24b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B12.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-24b */ +typedef struct Node_XY_24b { + Offset_B12_t x; + Offset_B12_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_24b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_24b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_24b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_24b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h new file mode 100644 index 000000000..8e511952b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-26b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_26b_H_ +#define _Node_XY_26b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B13.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-26b */ +typedef struct Node_XY_26b { + Offset_B13_t x; + Offset_B13_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_26b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_26b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_26b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_26b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h new file mode 100644 index 000000000..52710aff4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-28b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_28b_H_ +#define _Node_XY_28b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B14.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-28b */ +typedef struct Node_XY_28b { + Offset_B14_t x; + Offset_B14_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_28b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_28b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_28b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_28b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h new file mode 100644 index 000000000..ed1fdf0af --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Node-XY-32b.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Node_XY_32b_H_ +#define _Node_XY_32b_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Node-XY-32b */ +typedef struct Node_XY_32b { + Offset_B16_t x; + Offset_B16_t y; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Node_XY_32b_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Node_XY_32b; +extern asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1; +extern asn_TYPE_member_t asn_MBR_Node_XY_32b_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Node_XY_32b_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h new file mode 100644 index 000000000..12a1ea0a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLL.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeLL_H_ +#define _NodeAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeLL { + NodeAttributeLL_reserved = 0, + NodeAttributeLL_stopLine = 1, + NodeAttributeLL_roundedCapStyleA = 2, + NodeAttributeLL_roundedCapStyleB = 3, + NodeAttributeLL_mergePoint = 4, + NodeAttributeLL_divergePoint = 5, + NodeAttributeLL_downstreamStopLine = 6, + NodeAttributeLL_downstreamStartNode = 7, + NodeAttributeLL_closedToTraffic = 8, + NodeAttributeLL_safeIsland = 9, + NodeAttributeLL_curbPresentAtStepOff = 10, + NodeAttributeLL_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeLL; + +/* NodeAttributeLL */ +typedef long NodeAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1; +asn_struct_free_f NodeAttributeLL_free; +asn_struct_print_f NodeAttributeLL_print; +asn_constr_check_f NodeAttributeLL_constraint; +ber_type_decoder_f NodeAttributeLL_decode_ber; +der_type_encoder_f NodeAttributeLL_encode_der; +xer_type_decoder_f NodeAttributeLL_decode_xer; +xer_type_encoder_f NodeAttributeLL_encode_xer; +oer_type_decoder_f NodeAttributeLL_decode_oer; +oer_type_encoder_f NodeAttributeLL_encode_oer; +per_type_decoder_f NodeAttributeLL_decode_uper; +per_type_encoder_f NodeAttributeLL_encode_uper; +per_type_decoder_f NodeAttributeLL_decode_aper; +per_type_encoder_f NodeAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h new file mode 100644 index 000000000..45a489926 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeLLList_H_ +#define _NodeAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeLLList */ +typedef struct NodeAttributeLLList { + A_SEQUENCE_OF(NodeAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h new file mode 100644 index 000000000..dacae814f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetLL.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeSetLL_H_ +#define _NodeAttributeSetLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeLLList; +struct SegmentAttributeLLList; +struct LaneDataAttributeList; +struct Reg_BasicSafetyMessage; + +/* NodeAttributeSetLL */ +typedef struct NodeAttributeSetLL { + struct NodeAttributeLLList *localNode; /* OPTIONAL */ + struct SegmentAttributeLLList *disabled; /* OPTIONAL */ + struct SegmentAttributeLLList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetLL__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} NodeAttributeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeLLList.h" +#include "SegmentAttributeLLList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" + +#endif /* _NodeAttributeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h new file mode 100644 index 000000000..33bdfe84d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeSetXY.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeSetXY_H_ +#define _NodeAttributeSetXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B10.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeXYList; +struct SegmentAttributeXYList; +struct LaneDataAttributeList; +struct Reg_BasicSafetyMessage; + +/* NodeAttributeSetXY */ +typedef struct NodeAttributeSetXY { + struct NodeAttributeXYList *localNode; /* OPTIONAL */ + struct SegmentAttributeXYList *disabled; /* OPTIONAL */ + struct SegmentAttributeXYList *enabled; /* OPTIONAL */ + struct LaneDataAttributeList *data; /* OPTIONAL */ + Offset_B10_t *dWidth; /* OPTIONAL */ + Offset_B10_t *dElevation; /* OPTIONAL */ + struct NodeAttributeSetXY__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} NodeAttributeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeXYList.h" +#include "SegmentAttributeXYList.h" +#include "LaneDataAttributeList.h" +#include "RegionalExtension.h" + +#endif /* _NodeAttributeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h new file mode 100644 index 000000000..de034cf60 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXY.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeXY_H_ +#define _NodeAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeAttributeXY { + NodeAttributeXY_reserved = 0, + NodeAttributeXY_stopLine = 1, + NodeAttributeXY_roundedCapStyleA = 2, + NodeAttributeXY_roundedCapStyleB = 3, + NodeAttributeXY_mergePoint = 4, + NodeAttributeXY_divergePoint = 5, + NodeAttributeXY_downstreamStopLine = 6, + NodeAttributeXY_downstreamStartNode = 7, + NodeAttributeXY_closedToTraffic = 8, + NodeAttributeXY_safeIsland = 9, + NodeAttributeXY_curbPresentAtStepOff = 10, + NodeAttributeXY_hydrantPresent = 11 + /* + * Enumeration is extensible + */ +} e_NodeAttributeXY; + +/* NodeAttributeXY */ +typedef long NodeAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1; +asn_struct_free_f NodeAttributeXY_free; +asn_struct_print_f NodeAttributeXY_print; +asn_constr_check_f NodeAttributeXY_constraint; +ber_type_decoder_f NodeAttributeXY_decode_ber; +der_type_encoder_f NodeAttributeXY_encode_der; +xer_type_decoder_f NodeAttributeXY_decode_xer; +xer_type_encoder_f NodeAttributeXY_encode_xer; +oer_type_decoder_f NodeAttributeXY_decode_oer; +oer_type_encoder_f NodeAttributeXY_encode_oer; +per_type_decoder_f NodeAttributeXY_decode_uper; +per_type_encoder_f NodeAttributeXY_encode_uper; +per_type_decoder_f NodeAttributeXY_decode_aper; +per_type_encoder_f NodeAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h new file mode 100644 index 000000000..dfcd30217 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeAttributeXYList_H_ +#define _NodeAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* NodeAttributeXYList */ +typedef struct NodeAttributeXYList { + A_SEQUENCE_OF(NodeAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h new file mode 100644 index 000000000..dd267062b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeLL.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeLL_H_ +#define _NodeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointLL.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetLL; + +/* NodeLL */ +typedef struct NodeLL { + NodeOffsetPointLL_t delta; + struct NodeAttributeSetLL *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeLL; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeLL_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeSetLL.h" + +#endif /* _NodeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h new file mode 100644 index 000000000..a9c6d48e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListLL.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeListLL_H_ +#define _NodeListLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetLL.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListLL_PR { + NodeListLL_PR_NOTHING, /* No components present */ + NodeListLL_PR_nodes + /* Extensions may appear below */ + +} NodeListLL_PR; + +/* NodeListLL */ +typedef struct NodeListLL { + NodeListLL_PR present; + union NodeListLL_u { + NodeSetLL_t nodes; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeListLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h new file mode 100644 index 000000000..d98e75cb1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeListXY.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeListXY_H_ +#define _NodeListXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeSetXY.h" +#include "ComputedLane.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeListXY_PR { + NodeListXY_PR_NOTHING, /* No components present */ + NodeListXY_PR_nodes, + NodeListXY_PR_computed + /* Extensions may appear below */ + +} NodeListXY_PR; + +/* NodeListXY */ +typedef struct NodeListXY { + NodeListXY_PR present; + union NodeListXY_u { + NodeSetXY_t nodes; + ComputedLane_t computed; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeListXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeListXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeListXY_1[2]; +extern asn_per_constraints_t asn_PER_type_NodeListXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeListXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h new file mode 100644 index 000000000..0c192356d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointLL.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeOffsetPointLL_H_ +#define _NodeOffsetPointLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LL-24B.h" +#include "Node-LL-28B.h" +#include "Node-LL-32B.h" +#include "Node-LL-36B.h" +#include "Node-LL-44B.h" +#include "Node-LL-48B.h" +#include "Node-LLmD-64b.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointLL_PR { + NodeOffsetPointLL_PR_NOTHING, /* No components present */ + NodeOffsetPointLL_PR_node_LL1, + NodeOffsetPointLL_PR_node_LL2, + NodeOffsetPointLL_PR_node_LL3, + NodeOffsetPointLL_PR_node_LL4, + NodeOffsetPointLL_PR_node_LL5, + NodeOffsetPointLL_PR_node_LL6, + NodeOffsetPointLL_PR_node_LatLon, + NodeOffsetPointLL_PR_regional +} NodeOffsetPointLL_PR; + +/* NodeOffsetPointLL */ +typedef struct NodeOffsetPointLL { + NodeOffsetPointLL_PR present; + union NodeOffsetPointLL_u { + Node_LL_24B_t node_LL1; + Node_LL_28B_t node_LL2; + Node_LL_32B_t node_LL3; + Node_LL_36B_t node_LL4; + Node_LL_44B_t node_LL5; + Node_LL_48B_t node_LL6; + Node_LLmD_64b_t node_LatLon; + Reg_BasicSafetyMessage_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h new file mode 100644 index 000000000..828e78ed8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY-addGrpB.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeOffsetPointXY_addGrpB_H_ +#define _NodeOffsetPointXY_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-LLdms-48b.h" +#include "Node-LLdms-80b.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointXY_addGrpB_PR { + NodeOffsetPointXY_addGrpB_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_addGrpB_PR_posA, + NodeOffsetPointXY_addGrpB_PR_posB + /* Extensions may appear below */ + +} NodeOffsetPointXY_addGrpB_PR; + +/* NodeOffsetPointXY-addGrpB */ +typedef struct NodeOffsetPointXY_addGrpB { + NodeOffsetPointXY_addGrpB_PR present; + union NodeOffsetPointXY_addGrpB_u { + Node_LLdms_48b_t posA; + Node_LLdms_80b_t posB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointXY_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h new file mode 100644 index 000000000..9f5a83ac5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeOffsetPointXY.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeOffsetPointXY_H_ +#define _NodeOffsetPointXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Node-XY-20b.h" +#include "Node-XY-22b.h" +#include "Node-XY-24b.h" +#include "Node-XY-26b.h" +#include "Node-XY-28b.h" +#include "Node-XY-32b.h" +#include "Node-LLmD-64b.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NodeOffsetPointXY_PR { + NodeOffsetPointXY_PR_NOTHING, /* No components present */ + NodeOffsetPointXY_PR_node_XY1, + NodeOffsetPointXY_PR_node_XY2, + NodeOffsetPointXY_PR_node_XY3, + NodeOffsetPointXY_PR_node_XY4, + NodeOffsetPointXY_PR_node_XY5, + NodeOffsetPointXY_PR_node_XY6, + NodeOffsetPointXY_PR_node_LatLon, + NodeOffsetPointXY_PR_regional +} NodeOffsetPointXY_PR; + +/* NodeOffsetPointXY */ +typedef struct NodeOffsetPointXY { + NodeOffsetPointXY_PR present; + union NodeOffsetPointXY_u { + Node_XY_20b_t node_XY1; + Node_XY_22b_t node_XY2; + Node_XY_24b_t node_XY3; + Node_XY_26b_t node_XY4; + Node_XY_28b_t node_XY5; + Node_XY_32b_t node_XY6; + Node_LLmD_64b_t node_LatLon; + Reg_BasicSafetyMessage_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeOffsetPointXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY; +extern asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[8]; +extern asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NodeOffsetPointXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h new file mode 100644 index 000000000..75d08cf79 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetLL.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeSetLL_H_ +#define _NodeSetLL_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 NodeLL; + +/* NodeSetLL */ +typedef struct NodeSetLL { + A_SEQUENCE_OF(struct NodeLL) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetLL_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetLL; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetLL_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeLL.h" + +#endif /* _NodeSetLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h new file mode 100644 index 000000000..ea9ab508d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeSetXY.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeSetXY_H_ +#define _NodeSetXY_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 NodeXY; + +/* NodeSetXY */ +typedef struct NodeSetXY { + A_SEQUENCE_OF(struct NodeXY) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeSetXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeSetXY; +extern asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeSetXY_1[1]; +extern asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeXY.h" + +#endif /* _NodeSetXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h new file mode 100644 index 000000000..04bceb7d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NodeXY.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NodeXY_H_ +#define _NodeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NodeAttributeSetXY; + +/* NodeXY */ +typedef struct NodeXY { + NodeOffsetPointXY_t delta; + struct NodeAttributeSetXY *attributes; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NodeXY_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NodeXY; +extern asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1; +extern asn_TYPE_member_t asn_MBR_NodeXY_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "NodeAttributeSetXY.h" + +#endif /* _NodeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h new file mode 100644 index 000000000..37386edfd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/NumberOfParticipantsInCluster.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _NumberOfParticipantsInCluster_H_ +#define _NumberOfParticipantsInCluster_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NumberOfParticipantsInCluster { + NumberOfParticipantsInCluster_unavailable = 0, + NumberOfParticipantsInCluster_small = 1, + NumberOfParticipantsInCluster_medium = 2, + NumberOfParticipantsInCluster_large = 3 + /* + * Enumeration is extensible + */ +} e_NumberOfParticipantsInCluster; + +/* NumberOfParticipantsInCluster */ +typedef long NumberOfParticipantsInCluster_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster; +extern const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1; +asn_struct_free_f NumberOfParticipantsInCluster_free; +asn_struct_print_f NumberOfParticipantsInCluster_print; +asn_constr_check_f NumberOfParticipantsInCluster_constraint; +ber_type_decoder_f NumberOfParticipantsInCluster_decode_ber; +der_type_encoder_f NumberOfParticipantsInCluster_encode_der; +xer_type_decoder_f NumberOfParticipantsInCluster_decode_xer; +xer_type_encoder_f NumberOfParticipantsInCluster_encode_xer; +oer_type_decoder_f NumberOfParticipantsInCluster_decode_oer; +oer_type_encoder_f NumberOfParticipantsInCluster_encode_oer; +per_type_decoder_f NumberOfParticipantsInCluster_decode_uper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_uper; +per_type_decoder_f NumberOfParticipantsInCluster_decode_aper; +per_type_encoder_f NumberOfParticipantsInCluster_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NumberOfParticipantsInCluster_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/NumericString.h new file mode 100644 index 000000000..8e4f7ec9d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/OBJECT_IDENTIFIER.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h new file mode 100644 index 000000000..087c6fda1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OBJECT_IDENTIFIER.h @@ -0,0 +1,156 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OBJECT_IDENTIFIER_H_ +#define _OBJECT_IDENTIFIER_H_ + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef uint32_t asn_oid_arc_t; +#define ASN_OID_ARC_MAX (~((asn_oid_arc_t)0)) + +typedef ASN__PRIMITIVE_TYPE_t OBJECT_IDENTIFIER_t; + +extern asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER; +extern asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER; + +asn_struct_print_f OBJECT_IDENTIFIER_print; +asn_constr_check_f OBJECT_IDENTIFIER_constraint; +der_type_encoder_f OBJECT_IDENTIFIER_encode_der; +xer_type_decoder_f OBJECT_IDENTIFIER_decode_xer; +xer_type_encoder_f OBJECT_IDENTIFIER_encode_xer; +asn_random_fill_f OBJECT_IDENTIFIER_random_fill; + +#define OBJECT_IDENTIFIER_free ASN__PRIMITIVE_TYPE_free +#define OBJECT_IDENTIFIER_compare OCTET_STRING_compare +#define OBJECT_IDENTIFIER_decode_ber ber_decode_primitive +#define OBJECT_IDENTIFIER_encode_der der_encode_primitive +#define OBJECT_IDENTIFIER_decode_oer oer_decode_primitive +#define OBJECT_IDENTIFIER_encode_oer oer_encode_primitive +#define OBJECT_IDENTIFIER_decode_uper OCTET_STRING_decode_uper +#define OBJECT_IDENTIFIER_encode_uper OCTET_STRING_encode_uper +#define OBJECT_IDENTIFIER_decode_aper OCTET_STRING_decode_aper +#define OBJECT_IDENTIFIER_encode_aper OCTET_STRING_encode_aper + +/********************************** + * Some handy conversion routines * + **********************************/ + +/* + * This function fills an (arcs) array with OBJECT IDENTIFIER arcs + * up to specified (arc_slots) elements. + * + * EXAMPLE: + * void print_arcs(OBJECT_IDENTIFIER_t *oid) { + * asn_oid_arc_t fixed_arcs[10]; // Try with fixed space first + * asn_oid_arc_t *arcs = fixed_arcs; + * size_t arc_slots = sizeof(fixed_arcs)/sizeof(fixed_arcs[0]); // 10 + * ssize_t count; // Real number of arcs. + * int i; + * + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * // If necessary, reallocate arcs array and try again. + * if(count > arc_slots) { + * arc_slots = count; + * arcs = malloc(sizeof(asn_oid_arc_t) * arc_slots); + * if(!arcs) return; + * count = OBJECT_IDENTIFIER_get_arcs(oid, arcs, arc_slots); + * assert(count == arc_slots); + * } + * + * // Print the contents of the arcs array. + * for(i = 0; i < count; i++) + * printf("%"PRIu32"\n", arcs[i]); + * + * // Avoid memory leak. + * if(arcs != fixed_arcs) free(arcs); + * } + * + * RETURN VALUES: + * -1/EINVAL: Invalid arguments (oid is missing) + * -1/ERANGE: One or more arcs have value out of array cell type range. + * >=0: Number of arcs contained in the OBJECT IDENTIFIER + * + * WARNING: The function always returns the actual number of arcs, + * even if there is no sufficient (arc_slots) provided. + */ +ssize_t OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *oid, + asn_oid_arc_t *arcs, size_t arc_slots); + +/* + * This functions initializes the OBJECT IDENTIFIER object with + * the given set of arcs. + * The minimum of two arcs must be present; some restrictions apply. + * RETURN VALUES: + * -1/EINVAL: Invalid arguments + * -1/ERANGE: The first two arcs do not conform to ASN.1 restrictions. + * -1/ENOMEM: Memory allocation failed + * 0: The object was initialized with new arcs. + */ +int OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, + const asn_oid_arc_t *arcs, size_t arcs_count); + + +/* + * Parse the OBJECT IDENTIFIER textual representation ("1.3.6.1.4.1.9363"). + * No arc can exceed the (0..ASN_OID_ARC_MAX, which is the same as UINT32_MAX). + * This function is not specific to OBJECT IDENTIFIER, it may be used to parse + * the RELATIVE-OID data, or any other data consisting of dot-separated + * series of numeric values. + * + * If (oid_txt_length == -1), the strlen() will be invoked to determine the + * size of the (oid_text) string. + * + * After return, the optional (opt_oid_text_end) is set to the character after + * the last parsed one. (opt_oid_text_end) is never less than (oid_text). + * + * RETURN VALUES: + * -1: Parse error. + * >= 0: Number of arcs contained in the OBJECT IDENTIFIER. + * + * WARNING: The function always returns the real number of arcs, + * even if there is no sufficient (arc_slots) provided. + * This is useful for (arc_slots) value estimation. + */ +ssize_t OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, + ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end); + +/* + * Internal functions. + * Used by RELATIVE-OID implementation in particular. + */ + +/* + * Retrieve a single arc of size from the (arcbuf) buffer. + * RETURN VALUES: + * -1: Failed to retrieve the value from the (arcbuf). + * >0: Number of bytes consumed from the (arcbuf), <= (arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, + size_t arcbuf_len, + asn_oid_arc_t *ret_value); + +/* + * Write the unterminated arc value into the (arcbuf) which has the size at + * least (arcbuf_len). + * RETURN VALUES: + * -1: (arcbuf_len) size is not sufficient to write the value. + * : Number of bytes appended to the arcbuf (<= arcbuf_len). + */ +ssize_t OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t arc_value); + +#ifdef __cplusplus +} +#endif + +#endif /* _OBJECT_IDENTIFIER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h new file mode 100644 index 000000000..c2f8baed1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OCTET_STRING.h @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _OCTET_STRING_H_ +#define _OCTET_STRING_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct OCTET_STRING { + uint8_t *buf; /* Buffer with consecutive OCTET_STRING bits */ + size_t size; /* Size of the buffer */ + + asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */ +} OCTET_STRING_t; + +extern asn_TYPE_descriptor_t asn_DEF_OCTET_STRING; +extern asn_TYPE_operation_t asn_OP_OCTET_STRING; + +asn_struct_free_f OCTET_STRING_free; +asn_struct_print_f OCTET_STRING_print; +asn_struct_print_f OCTET_STRING_print_utf8; +asn_struct_compare_f OCTET_STRING_compare; +ber_type_decoder_f OCTET_STRING_decode_ber; +der_type_encoder_f OCTET_STRING_encode_der; +xer_type_decoder_f OCTET_STRING_decode_xer_hex; /* Hexadecimal */ +xer_type_decoder_f OCTET_STRING_decode_xer_binary; /* 01010111010 */ +xer_type_decoder_f OCTET_STRING_decode_xer_utf8; /* ASCII/UTF-8 */ +xer_type_encoder_f OCTET_STRING_encode_xer; +xer_type_encoder_f OCTET_STRING_encode_xer_utf8; +oer_type_decoder_f OCTET_STRING_decode_oer; +oer_type_encoder_f OCTET_STRING_encode_oer; +per_type_decoder_f OCTET_STRING_decode_uper; +per_type_encoder_f OCTET_STRING_encode_uper; +per_type_decoder_f OCTET_STRING_decode_aper; +per_type_encoder_f OCTET_STRING_encode_aper; +asn_random_fill_f OCTET_STRING_random_fill; + +#define OCTET_STRING_constraint asn_generic_no_constraint +#define OCTET_STRING_decode_xer OCTET_STRING_decode_xer_hex + +/****************************** + * Handy conversion routines. * + ******************************/ + +/* + * This function clears the previous value of the OCTET STRING (if any) + * and then allocates a new memory with the specified content (str/size). + * If size = -1, the size of the original string will be determined + * using strlen(str). + * If str equals to NULL, the function will silently clear the + * current contents of the OCTET STRING. + * Returns 0 if it was possible to perform operation, -1 otherwise. + */ +int OCTET_STRING_fromBuf(OCTET_STRING_t *s, const char *str, int size); + +/* Handy conversion from the C string into the OCTET STRING. */ +#define OCTET_STRING_fromString(s, str) OCTET_STRING_fromBuf(s, str, -1) + +/* + * Allocate and fill the new OCTET STRING and return a pointer to the newly + * allocated object. NULL is permitted in str: the function will just allocate + * empty OCTET STRING. + */ +OCTET_STRING_t *OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, + const char *str, int size); + +/**************************** + * Internally useful stuff. * + ****************************/ + +typedef struct asn_OCTET_STRING_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the structure */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + enum asn_OS_Subvariant { + ASN_OSUBV_ANY, /* The open type (ANY) */ + ASN_OSUBV_BIT, /* BIT STRING */ + ASN_OSUBV_STR, /* String types, not {BMP,Universal}String */ + ASN_OSUBV_U16, /* 16-bit character (BMPString) */ + ASN_OSUBV_U32 /* 32-bit character (UniversalString) */ + } subvariant; +} asn_OCTET_STRING_specifics_t; + +extern asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs; + +size_t OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *, const asn_encoding_constraints_t *, + size_t max_length); + +#ifdef __cplusplus +} +#endif + +#endif /* _OCTET_STRING_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h new file mode 100644 index 000000000..b0d023c1f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OPEN_TYPE.h @@ -0,0 +1,77 @@ +/*- + * Copyright (c) 2017-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_OPEN_TYPE_H +#define ASN_OPEN_TYPE_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#define OPEN_TYPE_free CHOICE_free +#define OPEN_TYPE_print CHOICE_print +#define OPEN_TYPE_compare CHOICE_compare +#define OPEN_TYPE_constraint CHOICE_constraint +#define OPEN_TYPE_decode_ber NULL +#define OPEN_TYPE_encode_der CHOICE_encode_der +#define OPEN_TYPE_decode_xer NULL +#define OPEN_TYPE_encode_xer CHOICE_encode_xer +#define OPEN_TYPE_decode_oer NULL +#define OPEN_TYPE_encode_oer CHOICE_encode_oer +#define OPEN_TYPE_decode_uper NULL +#define OPEN_TYPE_decode_aper NULL + +extern asn_TYPE_operation_t asn_OP_OPEN_TYPE; + +/* + * Decode an Open Type which is potentially constraiend + * by the other members of the parent structure. + */ +asn_dec_rval_t OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); + +asn_dec_rval_t OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + const void *ptr, size_t size); + +asn_dec_rval_t OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + asn_TYPE_member_t *element, const void *ptr, + size_t size); + +asn_dec_rval_t OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); + +asn_dec_rval_t OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *parent_type, + void *parent_structure, + const asn_TYPE_member_t *element, + asn_per_data_t *pd); + +asn_enc_rval_t OPEN_TYPE_encode_uper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +asn_enc_rval_t OPEN_TYPE_encode_aper( + const asn_TYPE_descriptor_t *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_OPEN_TYPE_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h new file mode 100644 index 000000000..9001f36d7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectCount.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ObjectCount_H_ +#define _ObjectCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectCount */ +typedef long ObjectCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectCount; +asn_struct_free_f ObjectCount_free; +asn_struct_print_f ObjectCount_print; +asn_constr_check_f ObjectCount_constraint; +ber_type_decoder_f ObjectCount_decode_ber; +der_type_encoder_f ObjectCount_encode_der; +xer_type_decoder_f ObjectCount_decode_xer; +xer_type_encoder_f ObjectCount_encode_xer; +oer_type_decoder_f ObjectCount_decode_oer; +oer_type_encoder_f ObjectCount_encode_oer; +per_type_decoder_f ObjectCount_decode_uper; +per_type_encoder_f ObjectCount_encode_uper; +per_type_decoder_f ObjectCount_decode_aper; +per_type_encoder_f ObjectCount_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h new file mode 100644 index 000000000..fa1c1fcc0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDescriptor.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ObjectDescriptor_H_ +#define _ObjectDescriptor_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef GraphicString_t ObjectDescriptor_t; /* Implemented via GraphicString */ + +extern asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor; +extern asn_TYPE_operation_t asn_OP_ObjectDescriptor; + +#define ObjectDescriptor_free OCTET_STRING_free +#define ObjectDescriptor_print OCTET_STRING_print_utf8 +#define ObjectDescriptor_constraint asn_generic_unknown_constraint +#define ObjectDescriptor_decode_ber OCTET_STRING_decode_ber +#define ObjectDescriptor_encode_der OCTET_STRING_encode_der +#define ObjectDescriptor_decode_xer OCTET_STRING_decode_xer_utf8 +#define ObjectDescriptor_encode_xer OCTET_STRING_encode_xer_utf8 +#define ObjectDescriptor_decode_uper OCTET_STRING_decode_uper +#define ObjectDescriptor_encode_uper OCTET_STRING_encode_uper +#define ObjectDescriptor_decode_aper OCTET_STRING_decode_aper +#define ObjectDescriptor_encode_aper OCTET_STRING_encode_aper + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectDescriptor_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h new file mode 100644 index 000000000..db97608e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectDistance.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectDistance_H_ +#define _ObjectDistance_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectDistance */ +typedef long ObjectDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectDistance; +asn_struct_free_f ObjectDistance_free; +asn_struct_print_f ObjectDistance_print; +asn_constr_check_f ObjectDistance_constraint; +ber_type_decoder_f ObjectDistance_decode_ber; +der_type_encoder_f ObjectDistance_encode_der; +xer_type_decoder_f ObjectDistance_decode_xer; +xer_type_encoder_f ObjectDistance_encode_xer; +oer_type_decoder_f ObjectDistance_decode_oer; +oer_type_encoder_f ObjectDistance_encode_oer; +per_type_decoder_f ObjectDistance_decode_uper; +per_type_encoder_f ObjectDistance_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectDistance_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h new file mode 100644 index 000000000..3b0a53b78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectID_H_ +#define _ObjectID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObjectID */ +typedef long ObjectID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectID; +asn_struct_free_f ObjectID_free; +asn_struct_print_f ObjectID_print; +asn_constr_check_f ObjectID_constraint; +ber_type_decoder_f ObjectID_decode_ber; +der_type_encoder_f ObjectID_encode_der; +xer_type_decoder_f ObjectID_decode_xer; +xer_type_encoder_f ObjectID_encode_xer; +oer_type_decoder_f ObjectID_decode_oer; +oer_type_encoder_f ObjectID_encode_oer; +per_type_decoder_f ObjectID_decode_uper; +per_type_encoder_f ObjectID_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectID_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h new file mode 100644 index 000000000..52837430b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObjectType.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObjectType_H_ +#define _ObjectType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ObjectType { + ObjectType_unknown = 0, + ObjectType_vehicle = 1, + ObjectType_vru = 2, + ObjectType_animal = 3 + /* + * Enumeration is extensible + */ +} e_ObjectType; + +/* ObjectType */ +typedef long ObjectType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObjectType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObjectType; +extern const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1; +asn_struct_free_f ObjectType_free; +asn_struct_print_f ObjectType_print; +asn_constr_check_f ObjectType_constraint; +ber_type_decoder_f ObjectType_decode_ber; +der_type_encoder_f ObjectType_encode_der; +xer_type_decoder_f ObjectType_decode_xer; +xer_type_encoder_f ObjectType_encode_xer; +oer_type_decoder_f ObjectType_decode_oer; +oer_type_encoder_f ObjectType_encode_oer; +per_type_decoder_f ObjectType_decode_uper; +per_type_encoder_f ObjectType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObjectType_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h new file mode 100644 index 000000000..904897ddc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDetection.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ObstacleDetection_H_ +#define _ObstacleDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ObstacleDistance.h" +#include "ObstacleDirection.h" +#include "ITIScodes.h" +#include "GenericLocations.h" +#include "DDateTime.h" +#include "VerticalAccelerationThreshold.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDetection */ +typedef struct ObstacleDetection { + ObstacleDistance_t obDist; + ObstacleDirection_t obDirect; + ITIScodes_t *description; /* OPTIONAL */ + GenericLocations_t *locationDetails; /* OPTIONAL */ + DDateTime_t dateTime; + VerticalAccelerationThreshold_t *vertEvent; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleDetection_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDetection; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleDetection_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h new file mode 100644 index 000000000..df1dba1fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDirection.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ObstacleDirection_H_ +#define _ObstacleDirection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_Angle.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDirection */ +typedef DSRC_Angle_t ObstacleDirection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDirection; +asn_struct_free_f ObstacleDirection_free; +asn_struct_print_f ObstacleDirection_print; +asn_constr_check_f ObstacleDirection_constraint; +ber_type_decoder_f ObstacleDirection_decode_ber; +der_type_encoder_f ObstacleDirection_encode_der; +xer_type_decoder_f ObstacleDirection_decode_xer; +xer_type_encoder_f ObstacleDirection_encode_xer; +oer_type_decoder_f ObstacleDirection_decode_oer; +oer_type_encoder_f ObstacleDirection_encode_oer; +per_type_decoder_f ObstacleDirection_decode_uper; +per_type_encoder_f ObstacleDirection_encode_uper; +per_type_decoder_f ObstacleDirection_decode_aper; +per_type_encoder_f ObstacleDirection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDirection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h new file mode 100644 index 000000000..3d4946269 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ObstacleDistance_H_ +#define _ObstacleDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleDistance */ +typedef long ObstacleDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ObstacleDistance; +asn_struct_free_f ObstacleDistance_free; +asn_struct_print_f ObstacleDistance_print; +asn_constr_check_f ObstacleDistance_constraint; +ber_type_decoder_f ObstacleDistance_decode_ber; +der_type_encoder_f ObstacleDistance_encode_der; +xer_type_decoder_f ObstacleDistance_decode_xer; +xer_type_encoder_f ObstacleDistance_encode_xer; +oer_type_decoder_f ObstacleDistance_decode_oer; +oer_type_encoder_f ObstacleDistance_encode_oer; +per_type_decoder_f ObstacleDistance_decode_uper; +per_type_encoder_f ObstacleDistance_encode_uper; +per_type_decoder_f ObstacleDistance_decode_aper; +per_type_encoder_f ObstacleDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h new file mode 100644 index 000000000..12206d92c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSize.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObstacleSize_H_ +#define _ObstacleSize_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValue.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleSize */ +typedef struct ObstacleSize { + SizeValue_t width; + SizeValue_t length; + SizeValue_t *height /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleSize; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleSize_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleSize_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h new file mode 100644 index 000000000..1ef36fbc5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ObstacleSizeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _ObstacleSizeConfidence_H_ +#define _ObstacleSizeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValueConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ObstacleSizeConfidence */ +typedef struct ObstacleSizeConfidence { + SizeValueConfidence_t widthConfidence; + SizeValueConfidence_t lengthConfidence; + SizeValueConfidence_t *heightConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ObstacleSizeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ObstacleSizeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h new file mode 100644 index 000000000..1a603757e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B09.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B09_H_ +#define _Offset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B09 */ +typedef long Offset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B09; +asn_struct_free_f Offset_B09_free; +asn_struct_print_f Offset_B09_print; +asn_constr_check_f Offset_B09_constraint; +ber_type_decoder_f Offset_B09_decode_ber; +der_type_encoder_f Offset_B09_encode_der; +xer_type_decoder_f Offset_B09_decode_xer; +xer_type_encoder_f Offset_B09_encode_xer; +oer_type_decoder_f Offset_B09_decode_oer; +oer_type_encoder_f Offset_B09_encode_oer; +per_type_decoder_f Offset_B09_decode_uper; +per_type_encoder_f Offset_B09_encode_uper; +per_type_decoder_f Offset_B09_decode_aper; +per_type_encoder_f Offset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h new file mode 100644 index 000000000..3deab0c89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B10.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B10_H_ +#define _Offset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B10 */ +typedef long Offset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B10; +asn_struct_free_f Offset_B10_free; +asn_struct_print_f Offset_B10_print; +asn_constr_check_f Offset_B10_constraint; +ber_type_decoder_f Offset_B10_decode_ber; +der_type_encoder_f Offset_B10_encode_der; +xer_type_decoder_f Offset_B10_decode_xer; +xer_type_encoder_f Offset_B10_encode_xer; +oer_type_decoder_f Offset_B10_decode_oer; +oer_type_encoder_f Offset_B10_encode_oer; +per_type_decoder_f Offset_B10_decode_uper; +per_type_encoder_f Offset_B10_encode_uper; +per_type_decoder_f Offset_B10_decode_aper; +per_type_encoder_f Offset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h new file mode 100644 index 000000000..8eaeb1a05 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B11.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B11_H_ +#define _Offset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B11 */ +typedef long Offset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B11; +asn_struct_free_f Offset_B11_free; +asn_struct_print_f Offset_B11_print; +asn_constr_check_f Offset_B11_constraint; +ber_type_decoder_f Offset_B11_decode_ber; +der_type_encoder_f Offset_B11_encode_der; +xer_type_decoder_f Offset_B11_decode_xer; +xer_type_encoder_f Offset_B11_encode_xer; +oer_type_decoder_f Offset_B11_decode_oer; +oer_type_encoder_f Offset_B11_encode_oer; +per_type_decoder_f Offset_B11_decode_uper; +per_type_encoder_f Offset_B11_encode_uper; +per_type_decoder_f Offset_B11_decode_aper; +per_type_encoder_f Offset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h new file mode 100644 index 000000000..259d798e3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B12_H_ +#define _Offset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B12 */ +typedef long Offset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B12; +asn_struct_free_f Offset_B12_free; +asn_struct_print_f Offset_B12_print; +asn_constr_check_f Offset_B12_constraint; +ber_type_decoder_f Offset_B12_decode_ber; +der_type_encoder_f Offset_B12_encode_der; +xer_type_decoder_f Offset_B12_decode_xer; +xer_type_encoder_f Offset_B12_encode_xer; +oer_type_decoder_f Offset_B12_decode_oer; +oer_type_encoder_f Offset_B12_encode_oer; +per_type_decoder_f Offset_B12_decode_uper; +per_type_encoder_f Offset_B12_encode_uper; +per_type_decoder_f Offset_B12_decode_aper; +per_type_encoder_f Offset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h new file mode 100644 index 000000000..d4136e536 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B13.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B13_H_ +#define _Offset_B13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B13 */ +typedef long Offset_B13_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B13_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B13; +asn_struct_free_f Offset_B13_free; +asn_struct_print_f Offset_B13_print; +asn_constr_check_f Offset_B13_constraint; +ber_type_decoder_f Offset_B13_decode_ber; +der_type_encoder_f Offset_B13_encode_der; +xer_type_decoder_f Offset_B13_decode_xer; +xer_type_encoder_f Offset_B13_encode_xer; +oer_type_decoder_f Offset_B13_decode_oer; +oer_type_encoder_f Offset_B13_encode_oer; +per_type_decoder_f Offset_B13_decode_uper; +per_type_encoder_f Offset_B13_encode_uper; +per_type_decoder_f Offset_B13_decode_aper; +per_type_encoder_f Offset_B13_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h new file mode 100644 index 000000000..2654bb851 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B14.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B14_H_ +#define _Offset_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B14 */ +typedef long Offset_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B14; +asn_struct_free_f Offset_B14_free; +asn_struct_print_f Offset_B14_print; +asn_constr_check_f Offset_B14_constraint; +ber_type_decoder_f Offset_B14_decode_ber; +der_type_encoder_f Offset_B14_encode_der; +xer_type_decoder_f Offset_B14_decode_xer; +xer_type_encoder_f Offset_B14_encode_xer; +oer_type_decoder_f Offset_B14_decode_oer; +oer_type_encoder_f Offset_B14_encode_oer; +per_type_decoder_f Offset_B14_decode_uper; +per_type_encoder_f Offset_B14_encode_uper; +per_type_decoder_f Offset_B14_decode_aper; +per_type_encoder_f Offset_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h new file mode 100644 index 000000000..986245f1e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Offset-B16.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Offset_B16_H_ +#define _Offset_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Offset-B16 */ +typedef long Offset_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Offset_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Offset_B16; +asn_struct_free_f Offset_B16_free; +asn_struct_print_f Offset_B16_print; +asn_constr_check_f Offset_B16_constraint; +ber_type_decoder_f Offset_B16_decode_ber; +der_type_encoder_f Offset_B16_encode_der; +xer_type_decoder_f Offset_B16_decode_xer; +xer_type_encoder_f Offset_B16_encode_xer; +oer_type_decoder_f Offset_B16_decode_oer; +oer_type_encoder_f Offset_B16_encode_oer; +per_type_decoder_f Offset_B16_decode_uper; +per_type_encoder_f Offset_B16_encode_uper; +per_type_decoder_f Offset_B16_decode_aper; +per_type_encoder_f Offset_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Offset_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h new file mode 100644 index 000000000..07e4ab338 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B12_H_ +#define _OffsetLL_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B12 */ +typedef long OffsetLL_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12; +asn_struct_free_f OffsetLL_B12_free; +asn_struct_print_f OffsetLL_B12_print; +asn_constr_check_f OffsetLL_B12_constraint; +ber_type_decoder_f OffsetLL_B12_decode_ber; +der_type_encoder_f OffsetLL_B12_encode_der; +xer_type_decoder_f OffsetLL_B12_decode_xer; +xer_type_encoder_f OffsetLL_B12_encode_xer; +oer_type_decoder_f OffsetLL_B12_decode_oer; +oer_type_encoder_f OffsetLL_B12_encode_oer; +per_type_decoder_f OffsetLL_B12_decode_uper; +per_type_encoder_f OffsetLL_B12_encode_uper; +per_type_decoder_f OffsetLL_B12_decode_aper; +per_type_encoder_f OffsetLL_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h new file mode 100644 index 000000000..3640f0308 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B14.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B14_H_ +#define _OffsetLL_B14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B14 */ +typedef long OffsetLL_B14_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14; +asn_struct_free_f OffsetLL_B14_free; +asn_struct_print_f OffsetLL_B14_print; +asn_constr_check_f OffsetLL_B14_constraint; +ber_type_decoder_f OffsetLL_B14_decode_ber; +der_type_encoder_f OffsetLL_B14_encode_der; +xer_type_decoder_f OffsetLL_B14_decode_xer; +xer_type_encoder_f OffsetLL_B14_encode_xer; +oer_type_decoder_f OffsetLL_B14_decode_oer; +oer_type_encoder_f OffsetLL_B14_encode_oer; +per_type_decoder_f OffsetLL_B14_decode_uper; +per_type_encoder_f OffsetLL_B14_encode_uper; +per_type_decoder_f OffsetLL_B14_decode_aper; +per_type_encoder_f OffsetLL_B14_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h new file mode 100644 index 000000000..abf2dce98 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B16.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B16_H_ +#define _OffsetLL_B16_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B16 */ +typedef long OffsetLL_B16_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16; +asn_struct_free_f OffsetLL_B16_free; +asn_struct_print_f OffsetLL_B16_print; +asn_constr_check_f OffsetLL_B16_constraint; +ber_type_decoder_f OffsetLL_B16_decode_ber; +der_type_encoder_f OffsetLL_B16_encode_der; +xer_type_decoder_f OffsetLL_B16_decode_xer; +xer_type_encoder_f OffsetLL_B16_encode_xer; +oer_type_decoder_f OffsetLL_B16_decode_oer; +oer_type_encoder_f OffsetLL_B16_encode_oer; +per_type_decoder_f OffsetLL_B16_decode_uper; +per_type_encoder_f OffsetLL_B16_encode_uper; +per_type_decoder_f OffsetLL_B16_decode_aper; +per_type_encoder_f OffsetLL_B16_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B16_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h new file mode 100644 index 000000000..e5d5521f5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B18.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B18_H_ +#define _OffsetLL_B18_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B18 */ +typedef long OffsetLL_B18_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18; +asn_struct_free_f OffsetLL_B18_free; +asn_struct_print_f OffsetLL_B18_print; +asn_constr_check_f OffsetLL_B18_constraint; +ber_type_decoder_f OffsetLL_B18_decode_ber; +der_type_encoder_f OffsetLL_B18_encode_der; +xer_type_decoder_f OffsetLL_B18_decode_xer; +xer_type_encoder_f OffsetLL_B18_encode_xer; +oer_type_decoder_f OffsetLL_B18_decode_oer; +oer_type_encoder_f OffsetLL_B18_encode_oer; +per_type_decoder_f OffsetLL_B18_decode_uper; +per_type_encoder_f OffsetLL_B18_encode_uper; +per_type_decoder_f OffsetLL_B18_decode_aper; +per_type_encoder_f OffsetLL_B18_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B18_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h new file mode 100644 index 000000000..8da0ed686 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B22.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B22_H_ +#define _OffsetLL_B22_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B22 */ +typedef long OffsetLL_B22_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22; +asn_struct_free_f OffsetLL_B22_free; +asn_struct_print_f OffsetLL_B22_print; +asn_constr_check_f OffsetLL_B22_constraint; +ber_type_decoder_f OffsetLL_B22_decode_ber; +der_type_encoder_f OffsetLL_B22_encode_der; +xer_type_decoder_f OffsetLL_B22_decode_xer; +xer_type_encoder_f OffsetLL_B22_encode_xer; +oer_type_decoder_f OffsetLL_B22_decode_oer; +oer_type_encoder_f OffsetLL_B22_encode_oer; +per_type_decoder_f OffsetLL_B22_decode_uper; +per_type_encoder_f OffsetLL_B22_encode_uper; +per_type_decoder_f OffsetLL_B22_decode_aper; +per_type_encoder_f OffsetLL_B22_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B22_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h new file mode 100644 index 000000000..8bef6fe3a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetLL-B24.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetLL_B24_H_ +#define _OffsetLL_B24_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetLL-B24 */ +typedef long OffsetLL_B24_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24; +asn_struct_free_f OffsetLL_B24_free; +asn_struct_print_f OffsetLL_B24_print; +asn_constr_check_f OffsetLL_B24_constraint; +ber_type_decoder_f OffsetLL_B24_decode_ber; +der_type_encoder_f OffsetLL_B24_encode_der; +xer_type_decoder_f OffsetLL_B24_decode_xer; +xer_type_encoder_f OffsetLL_B24_encode_xer; +oer_type_decoder_f OffsetLL_B24_decode_oer; +oer_type_encoder_f OffsetLL_B24_encode_oer; +per_type_decoder_f OffsetLL_B24_decode_uper; +per_type_encoder_f OffsetLL_B24_encode_uper; +per_type_decoder_f OffsetLL_B24_decode_aper; +per_type_encoder_f OffsetLL_B24_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetLL_B24_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h new file mode 100644 index 000000000..d46ced7dc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetPoint.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetPoint_H_ +#define _OffsetPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OffsetPoint */ +typedef struct OffsetPoint { + long deltax; + long deltay; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OffsetPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OffsetPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_OffsetPoint_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h new file mode 100644 index 000000000..5e4ba8bd4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OffsetSystem.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OffsetSystem_H_ +#define _OffsetSystem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "NodeListXY.h" +#include "NodeListLL.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum OffsetSystem__offset_PR { + OffsetSystem__offset_PR_NOTHING, /* No components present */ + OffsetSystem__offset_PR_xy, + OffsetSystem__offset_PR_ll +} OffsetSystem__offset_PR; + +/* OffsetSystem */ +typedef struct OffsetSystem { + Zoom_t *scale; /* OPTIONAL */ + struct OffsetSystem__offset { + OffsetSystem__offset_PR present; + union OffsetSystem__offset_u { + NodeListXY_t xy; + NodeListLL_t ll; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offset; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OffsetSystem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OffsetSystem; +extern asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1; +extern asn_TYPE_member_t asn_MBR_OffsetSystem_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _OffsetSystem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h new file mode 100644 index 000000000..0065e65aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/OverlayLaneList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _OverlayLaneList_H_ +#define _OverlayLaneList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* OverlayLaneList */ +typedef struct OverlayLaneList { + A_SEQUENCE_OF(LaneID_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} OverlayLaneList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_OverlayLaneList; +extern asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1; +extern asn_TYPE_member_t asn_MBR_OverlayLaneList_1[1]; +extern asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _OverlayLaneList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h new file mode 100644 index 000000000..8676fcc89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartII-Id.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _PartII_Id_H_ +#define _PartII_Id_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PartII-Id */ +typedef long PartII_Id_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PartII_Id_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PartII_Id; +asn_struct_free_f PartII_Id_free; +asn_struct_print_f PartII_Id_print; +asn_constr_check_f PartII_Id_constraint; +ber_type_decoder_f PartII_Id_decode_ber; +der_type_encoder_f PartII_Id_encode_der; +xer_type_decoder_f PartII_Id_decode_xer; +xer_type_encoder_f PartII_Id_encode_xer; +oer_type_decoder_f PartII_Id_decode_oer; +oer_type_encoder_f PartII_Id_encode_oer; +per_type_decoder_f PartII_Id_decode_uper; +per_type_encoder_f PartII_Id_encode_uper; +per_type_decoder_f PartII_Id_decode_aper; +per_type_encoder_f PartII_Id_encode_aper; +#define PartII_Id_vehicleSafetyExt ((PartII_Id_t)0) +#define PartII_Id_specialVehicleExt ((PartII_Id_t)1) +#define PartII_Id_supplementalVehicleExt ((PartII_Id_t)2) + +#ifdef __cplusplus +} +#endif + +#endif /* _PartII_Id_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h new file mode 100644 index 000000000..3a853e3df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PartIIcontent.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _PartIIcontent_H_ +#define _PartIIcontent_H_ + + +#include + +/* Including external dependencies */ +#include "PartII-Id.h" +#include +#include +#include "VehicleSafetyExtensions.h" +#include "SpecialVehicleExtensions.h" +#include "SupplementalVehicleExtensions.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum BSMpartIIExtension__partII_Value_PR { + BSMpartIIExtension__partII_Value_PR_NOTHING, /* No components present */ + BSMpartIIExtension__partII_Value_PR_VehicleSafetyExtensions, + BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions, + BSMpartIIExtension__partII_Value_PR_SupplementalVehicleExtensions +} BSMpartIIExtension__partII_Value_PR; + +/* PartIIcontent */ +typedef struct BSMpartIIExtension { + PartII_Id_t partII_Id; + struct BSMpartIIExtension__partII_Value { + BSMpartIIExtension__partII_Value_PR present; + union BSMpartIIExtension__partII_Value_u { + VehicleSafetyExtensions_t VehicleSafetyExtensions; + SpecialVehicleExtensions_t SpecialVehicleExtensions; + SupplementalVehicleExtensions_t SupplementalVehicleExtensions; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } partII_Value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} BSMpartIIExtension_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension; +extern asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1; +extern asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PartIIcontent_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h new file mode 100644 index 000000000..abf978c58 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistory.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathHistory_H_ +#define _PathHistory_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "PathHistoryPointList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; + +/* PathHistory */ +typedef struct PathHistory { + struct FullPositionVector *initialPosition; /* OPTIONAL */ + GNSSstatus_t *currGNSSstatus; /* OPTIONAL */ + PathHistoryPointList_t crumbData; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistory_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistory; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistory_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" + +#endif /* _PathHistory_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h new file mode 100644 index 000000000..733b8f2de --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPoint.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathHistoryPoint_H_ +#define _PathHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B18.h" +#include "VertOffset-B12.h" +#include "TimeOffset.h" +#include "Speed.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PositionalAccuracy; + +/* PathHistoryPoint */ +typedef struct PathHistoryPoint { + OffsetLL_B18_t latOffset; + OffsetLL_B18_t lonOffset; + VertOffset_B12_t elevationOffset; + TimeOffset_t timeOffset; + Speed_t *speed; /* OPTIONAL */ + struct PositionalAccuracy *posAccuracy; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PositionalAccuracy.h" + +#endif /* _PathHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h new file mode 100644 index 000000000..280db6a17 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathHistoryPointList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathHistoryPointList_H_ +#define _PathHistoryPointList_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 PathHistoryPoint; + +/* PathHistoryPointList */ +typedef struct PathHistoryPointList { + A_SEQUENCE_OF(struct PathHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistoryPoint.h" + +#endif /* _PathHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h new file mode 100644 index 000000000..8f92a2e4e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathNode.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathNode_H_ +#define _PathNode_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathNode */ +typedef struct PathNode { + long x; + long y; + long *z; /* OPTIONAL */ + long *width; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathNode_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathNode; +extern asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1; +extern asn_TYPE_member_t asn_MBR_PathNode_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathNode_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h new file mode 100644 index 000000000..695ca4341 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PathPrediction.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PathPrediction_H_ +#define _PathPrediction_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RadiusOfCurvature.h" +#include "Confidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PathPrediction */ +typedef struct PathPrediction { + RadiusOfCurvature_t radiusOfCurve; + Confidence_t confidence; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PathPrediction_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PathPrediction; +extern asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1; +extern asn_TYPE_member_t asn_MBR_PathPrediction_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PathPrediction_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h new file mode 100644 index 000000000..e8a266310 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PayloadData.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PayloadData_H_ +#define _PayloadData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PayloadData */ +typedef OCTET_STRING_t PayloadData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PayloadData; +asn_struct_free_f PayloadData_free; +asn_struct_print_f PayloadData_print; +asn_constr_check_f PayloadData_constraint; +ber_type_decoder_f PayloadData_decode_ber; +der_type_encoder_f PayloadData_encode_der; +xer_type_decoder_f PayloadData_decode_xer; +xer_type_encoder_f PayloadData_encode_xer; +oer_type_decoder_f PayloadData_decode_oer; +oer_type_encoder_f PayloadData_encode_oer; +per_type_decoder_f PayloadData_decode_uper; +per_type_encoder_f PayloadData_encode_uper; +per_type_decoder_f PayloadData_decode_aper; +per_type_encoder_f PayloadData_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PayloadData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h new file mode 100644 index 000000000..958c56db1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PedestrianBicycleDetect.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PedestrianBicycleDetect_H_ +#define _PedestrianBicycleDetect_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PedestrianBicycleDetect */ +typedef BOOLEAN_t PedestrianBicycleDetect_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect; +asn_struct_free_f PedestrianBicycleDetect_free; +asn_struct_print_f PedestrianBicycleDetect_print; +asn_constr_check_f PedestrianBicycleDetect_constraint; +ber_type_decoder_f PedestrianBicycleDetect_decode_ber; +der_type_encoder_f PedestrianBicycleDetect_encode_der; +xer_type_decoder_f PedestrianBicycleDetect_decode_xer; +xer_type_encoder_f PedestrianBicycleDetect_encode_xer; +oer_type_decoder_f PedestrianBicycleDetect_decode_oer; +oer_type_encoder_f PedestrianBicycleDetect_encode_oer; +per_type_decoder_f PedestrianBicycleDetect_decode_uper; +per_type_encoder_f PedestrianBicycleDetect_encode_uper; +per_type_decoder_f PedestrianBicycleDetect_decode_aper; +per_type_encoder_f PedestrianBicycleDetect_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PedestrianBicycleDetect_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h new file mode 100644 index 000000000..877c1d4fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalAssistive.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalAssistive_H_ +#define _PersonalAssistive_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalAssistive { + PersonalAssistive_unavailable = 0, + PersonalAssistive_otherType = 1, + PersonalAssistive_vision = 2, + PersonalAssistive_hearing = 3, + PersonalAssistive_movement = 4, + PersonalAssistive_cognition = 5 +} e_PersonalAssistive; + +/* PersonalAssistive */ +typedef BIT_STRING_t PersonalAssistive_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalAssistive; +asn_struct_free_f PersonalAssistive_free; +asn_struct_print_f PersonalAssistive_print; +asn_constr_check_f PersonalAssistive_constraint; +ber_type_decoder_f PersonalAssistive_decode_ber; +der_type_encoder_f PersonalAssistive_encode_der; +xer_type_decoder_f PersonalAssistive_decode_xer; +xer_type_encoder_f PersonalAssistive_encode_xer; +oer_type_decoder_f PersonalAssistive_decode_oer; +oer_type_encoder_f PersonalAssistive_encode_oer; +per_type_decoder_f PersonalAssistive_decode_uper; +per_type_encoder_f PersonalAssistive_encode_uper; +per_type_decoder_f PersonalAssistive_decode_aper; +per_type_encoder_f PersonalAssistive_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalAssistive_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h new file mode 100644 index 000000000..6d65f75d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalClusterRadius.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalClusterRadius_H_ +#define _PersonalClusterRadius_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalClusterRadius */ +typedef long PersonalClusterRadius_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius; +asn_struct_free_f PersonalClusterRadius_free; +asn_struct_print_f PersonalClusterRadius_print; +asn_constr_check_f PersonalClusterRadius_constraint; +ber_type_decoder_f PersonalClusterRadius_decode_ber; +der_type_encoder_f PersonalClusterRadius_encode_der; +xer_type_decoder_f PersonalClusterRadius_decode_xer; +xer_type_encoder_f PersonalClusterRadius_encode_xer; +oer_type_decoder_f PersonalClusterRadius_decode_oer; +oer_type_encoder_f PersonalClusterRadius_encode_oer; +per_type_decoder_f PersonalClusterRadius_decode_uper; +per_type_encoder_f PersonalClusterRadius_encode_uper; +per_type_decoder_f PersonalClusterRadius_decode_aper; +per_type_encoder_f PersonalClusterRadius_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalClusterRadius_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h new file mode 100644 index 000000000..e617106f2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingInProgress.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalCrossingInProgress_H_ +#define _PersonalCrossingInProgress_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingInProgress */ +typedef BOOLEAN_t PersonalCrossingInProgress_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress; +asn_struct_free_f PersonalCrossingInProgress_free; +asn_struct_print_f PersonalCrossingInProgress_print; +asn_constr_check_f PersonalCrossingInProgress_constraint; +ber_type_decoder_f PersonalCrossingInProgress_decode_ber; +der_type_encoder_f PersonalCrossingInProgress_encode_der; +xer_type_decoder_f PersonalCrossingInProgress_decode_xer; +xer_type_encoder_f PersonalCrossingInProgress_encode_xer; +oer_type_decoder_f PersonalCrossingInProgress_decode_oer; +oer_type_encoder_f PersonalCrossingInProgress_encode_oer; +per_type_decoder_f PersonalCrossingInProgress_decode_uper; +per_type_encoder_f PersonalCrossingInProgress_encode_uper; +per_type_decoder_f PersonalCrossingInProgress_decode_aper; +per_type_encoder_f PersonalCrossingInProgress_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingInProgress_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h new file mode 100644 index 000000000..d1b6635d2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalCrossingRequest.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalCrossingRequest_H_ +#define _PersonalCrossingRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PersonalCrossingRequest */ +typedef BOOLEAN_t PersonalCrossingRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest; +asn_struct_free_f PersonalCrossingRequest_free; +asn_struct_print_f PersonalCrossingRequest_print; +asn_constr_check_f PersonalCrossingRequest_constraint; +ber_type_decoder_f PersonalCrossingRequest_decode_ber; +der_type_encoder_f PersonalCrossingRequest_encode_der; +xer_type_decoder_f PersonalCrossingRequest_decode_xer; +xer_type_encoder_f PersonalCrossingRequest_encode_xer; +oer_type_decoder_f PersonalCrossingRequest_decode_oer; +oer_type_encoder_f PersonalCrossingRequest_encode_oer; +per_type_decoder_f PersonalCrossingRequest_decode_uper; +per_type_encoder_f PersonalCrossingRequest_encode_uper; +per_type_decoder_f PersonalCrossingRequest_decode_aper; +per_type_encoder_f PersonalCrossingRequest_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalCrossingRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h new file mode 100644 index 000000000..d153b1f84 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUsageState.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalDeviceUsageState_H_ +#define _PersonalDeviceUsageState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUsageState { + PersonalDeviceUsageState_unavailable = 0, + PersonalDeviceUsageState_other = 1, + PersonalDeviceUsageState_idle = 2, + PersonalDeviceUsageState_listeningToAudio = 3, + PersonalDeviceUsageState_typing = 4, + PersonalDeviceUsageState_calling = 5, + PersonalDeviceUsageState_playingGames = 6, + PersonalDeviceUsageState_reading = 7, + PersonalDeviceUsageState_viewing = 8 +} e_PersonalDeviceUsageState; + +/* PersonalDeviceUsageState */ +typedef BIT_STRING_t PersonalDeviceUsageState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState; +asn_struct_free_f PersonalDeviceUsageState_free; +asn_struct_print_f PersonalDeviceUsageState_print; +asn_constr_check_f PersonalDeviceUsageState_constraint; +ber_type_decoder_f PersonalDeviceUsageState_decode_ber; +der_type_encoder_f PersonalDeviceUsageState_encode_der; +xer_type_decoder_f PersonalDeviceUsageState_decode_xer; +xer_type_encoder_f PersonalDeviceUsageState_encode_xer; +oer_type_decoder_f PersonalDeviceUsageState_decode_oer; +oer_type_encoder_f PersonalDeviceUsageState_encode_oer; +per_type_decoder_f PersonalDeviceUsageState_decode_uper; +per_type_encoder_f PersonalDeviceUsageState_encode_uper; +per_type_decoder_f PersonalDeviceUsageState_decode_aper; +per_type_encoder_f PersonalDeviceUsageState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUsageState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h new file mode 100644 index 000000000..75778b8a1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalDeviceUserType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalDeviceUserType_H_ +#define _PersonalDeviceUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalDeviceUserType { + PersonalDeviceUserType_unavailable = 0, + PersonalDeviceUserType_aPEDESTRIAN = 1, + PersonalDeviceUserType_aPEDALCYCLIST = 2, + PersonalDeviceUserType_aPUBLICSAFETYWORKER = 3, + PersonalDeviceUserType_anANIMAL = 4 + /* + * Enumeration is extensible + */ +} e_PersonalDeviceUserType; + +/* PersonalDeviceUserType */ +typedef long PersonalDeviceUserType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType; +extern const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1; +asn_struct_free_f PersonalDeviceUserType_free; +asn_struct_print_f PersonalDeviceUserType_print; +asn_constr_check_f PersonalDeviceUserType_constraint; +ber_type_decoder_f PersonalDeviceUserType_decode_ber; +der_type_encoder_f PersonalDeviceUserType_encode_der; +xer_type_decoder_f PersonalDeviceUserType_decode_xer; +xer_type_encoder_f PersonalDeviceUserType_encode_xer; +oer_type_decoder_f PersonalDeviceUserType_decode_oer; +oer_type_encoder_f PersonalDeviceUserType_encode_oer; +per_type_decoder_f PersonalDeviceUserType_decode_uper; +per_type_encoder_f PersonalDeviceUserType_encode_uper; +per_type_decoder_f PersonalDeviceUserType_decode_aper; +per_type_encoder_f PersonalDeviceUserType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalDeviceUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessage.h new file mode 100644 index 000000000..5a1c80e51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/PersonalMobilityMessageStatusType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalMobilityMessageStatusType.h new file mode 100644 index 000000000..2821b8fcc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/PersonalSafetyMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h new file mode 100644 index 000000000..4641c0808 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PersonalSafetyMessage.h @@ -0,0 +1,110 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PersonalSafetyMessage_H_ +#define _PersonalSafetyMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PersonalDeviceUserType.h" +#include "DSecond.h" +#include "DSRC_MsgCount.h" +#include "TemporaryID.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "Velocity.h" +#include "Heading.h" +#include "PersonalDeviceUsageState.h" +#include "PersonalCrossingRequest.h" +#include "PersonalCrossingInProgress.h" +#include "NumberOfParticipantsInCluster.h" +#include "PersonalClusterRadius.h" +#include "PublicSafetyEventResponderWorkerType.h" +#include "PublicSafetyAndRoadWorkerActivity.h" +#include "PublicSafetyDirectingTrafficSubType.h" +#include "PersonalAssistive.h" +#include "UserSizeAndBehaviour.h" +#include "Attachment.h" +#include "AttachmentRadius.h" +#include "AnimalType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct AccelerationSet4Way; +struct PathHistory; +struct PathPrediction; +struct PropelledInformation; +struct Reg_BasicSafetyMessage; + +/* PersonalSafetyMessage */ +typedef struct PersonalSafetyMessage { + PersonalDeviceUserType_t basicType; + DSecond_t secMark; + DSRC_MsgCount_t msgCnt; + TemporaryID_t id; + Position3D_t position; + PositionalAccuracy_t accuracy; + Velocity_t speed; + Heading_t heading; + struct AccelerationSet4Way *accelSet; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + struct PropelledInformation *propulsion; /* OPTIONAL */ + PersonalDeviceUsageState_t *useState; /* OPTIONAL */ + PersonalCrossingRequest_t *crossRequest; /* OPTIONAL */ + PersonalCrossingInProgress_t *crossState; /* OPTIONAL */ + NumberOfParticipantsInCluster_t *clusterSize; /* OPTIONAL */ + PersonalClusterRadius_t *clusterRadius; /* OPTIONAL */ + PublicSafetyEventResponderWorkerType_t *eventResponderType; /* OPTIONAL */ + PublicSafetyAndRoadWorkerActivity_t *activityType; /* OPTIONAL */ + PublicSafetyDirectingTrafficSubType_t *activitySubType; /* OPTIONAL */ + PersonalAssistive_t *assistType; /* OPTIONAL */ + UserSizeAndBehaviour_t *sizing; /* OPTIONAL */ + Attachment_t *attachment; /* OPTIONAL */ + AttachmentRadius_t *attachmentRadius; /* OPTIONAL */ + AnimalType_t *animalType; /* OPTIONAL */ + struct PersonalSafetyMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} PersonalSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[26]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "AccelerationSet4Way.h" +#include "PathHistory.h" +#include "PathPrediction.h" +#include "PropelledInformation.h" +#include "RegionalExtension.h" + +#endif /* _PersonalSafetyMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h new file mode 100644 index 000000000..a028235b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchDetected_H_ +#define _PitchDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PitchDetected */ +typedef long PitchDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchDetected; +asn_struct_free_f PitchDetected_free; +asn_struct_print_f PitchDetected_print; +asn_constr_check_f PitchDetected_constraint; +ber_type_decoder_f PitchDetected_decode_ber; +der_type_encoder_f PitchDetected_encode_der; +xer_type_decoder_f PitchDetected_decode_xer; +xer_type_encoder_f PitchDetected_encode_xer; +oer_type_decoder_f PitchDetected_decode_oer; +oer_type_encoder_f PitchDetected_encode_oer; +per_type_decoder_f PitchDetected_decode_uper; +per_type_encoder_f PitchDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h new file mode 100644 index 000000000..145045cd2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchRate_H_ +#define _PitchRate_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PitchRate */ +typedef long PitchRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchRate; +asn_struct_free_f PitchRate_free; +asn_struct_print_f PitchRate_print; +asn_constr_check_f PitchRate_constraint; +ber_type_decoder_f PitchRate_decode_ber; +der_type_encoder_f PitchRate_encode_der; +xer_type_decoder_f PitchRate_decode_xer; +xer_type_encoder_f PitchRate_encode_xer; +oer_type_decoder_f PitchRate_decode_oer; +oer_type_encoder_f PitchRate_encode_oer; +per_type_decoder_f PitchRate_decode_uper; +per_type_encoder_f PitchRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchRate_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h new file mode 100644 index 000000000..df6f4e7a0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PitchRateConfidence.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PitchRateConfidence_H_ +#define _PitchRateConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PitchRateConfidence { + PitchRateConfidence_unavailable = 0, + PitchRateConfidence_degSec_100_00 = 1, + PitchRateConfidence_degSec_010_00 = 2, + PitchRateConfidence_degSec_005_00 = 3, + PitchRateConfidence_degSec_001_00 = 4, + PitchRateConfidence_degSec_000_10 = 5, + PitchRateConfidence_degSec_000_05 = 6, + PitchRateConfidence_degSec_000_01 = 7 +} e_PitchRateConfidence; + +/* PitchRateConfidence */ +typedef long PitchRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1; +asn_struct_free_f PitchRateConfidence_free; +asn_struct_print_f PitchRateConfidence_print; +asn_constr_check_f PitchRateConfidence_constraint; +ber_type_decoder_f PitchRateConfidence_decode_ber; +der_type_encoder_f PitchRateConfidence_encode_der; +xer_type_decoder_f PitchRateConfidence_decode_xer; +xer_type_encoder_f PitchRateConfidence_encode_xer; +oer_type_decoder_f PitchRateConfidence_decode_oer; +oer_type_encoder_f PitchRateConfidence_encode_oer; +per_type_decoder_f PitchRateConfidence_decode_uper; +per_type_encoder_f PitchRateConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PitchRateConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h new file mode 100644 index 000000000..009d288fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotPointDescription.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PivotPointDescription_H_ +#define _PivotPointDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Offset-B11.h" +#include "DSRC_Angle.h" +#include "PivotingAllowed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotPointDescription */ +typedef struct PivotPointDescription { + Offset_B11_t pivotOffset; + DSRC_Angle_t pivotAngle; + PivotingAllowed_t pivots; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PivotPointDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotPointDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_PivotPointDescription_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotPointDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h new file mode 100644 index 000000000..91a581cea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PivotingAllowed.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PivotingAllowed_H_ +#define _PivotingAllowed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PivotingAllowed */ +typedef BOOLEAN_t PivotingAllowed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PivotingAllowed; +asn_struct_free_f PivotingAllowed_free; +asn_struct_print_f PivotingAllowed_print; +asn_constr_check_f PivotingAllowed_constraint; +ber_type_decoder_f PivotingAllowed_decode_ber; +der_type_encoder_f PivotingAllowed_encode_der; +xer_type_decoder_f PivotingAllowed_decode_xer; +xer_type_encoder_f PivotingAllowed_encode_xer; +oer_type_decoder_f PivotingAllowed_decode_oer; +oer_type_encoder_f PivotingAllowed_encode_oer; +per_type_decoder_f PivotingAllowed_decode_uper; +per_type_encoder_f PivotingAllowed_encode_uper; +per_type_decoder_f PivotingAllowed_decode_aper; +per_type_encoder_f PivotingAllowed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PivotingAllowed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h new file mode 100644 index 000000000..9b6129097 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Point.h @@ -0,0 +1,43 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Point_H_ +#define _Point_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Point */ +typedef struct Point { + long x; + long y; + long *z; /* OPTIONAL */ + long width; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Point_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Point; +extern asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1; +extern asn_TYPE_member_t asn_MBR_Point_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Point_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h new file mode 100644 index 000000000..7b7470c1b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpB.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Position3D_addGrpB_H_ +#define _Position3D_addGrpB_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LatitudeDMS2.h" +#include "LongitudeDMS2.h" +#include "AddGrpB_Elevation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpB */ +typedef struct Position3D_addGrpB { + LatitudeDMS2_t latitude; + LongitudeDMS2_t longitude; + AddGrpB_Elevation_t elevation; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpB_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h new file mode 100644 index 000000000..0bc65e24a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpC.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Position3D_addGrpC_H_ +#define _Position3D_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Altitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpC */ +typedef struct Position3D_addGrpC { + Altitude_t altitude; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h new file mode 100644 index 000000000..2033e4705 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D-addGrpCarma.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _Position3D_addGrpCarma_H_ +#define _Position3D_addGrpCarma_H_ + + +#include + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "DSRC_Elevation.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Position3D-addGrpCarma */ +typedef struct Position3D_addGrpCarma { + Latitude_t lat; + Longitude_t Long; + DSRC_Elevation_t *elevation; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Position3D_addGrpCarma_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Position3D_addGrpCarma_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h new file mode 100644 index 000000000..ac4641bd3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Position3D.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Position3D_H_ +#define _Position3D_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Latitude.h" +#include "Longitude.h" +#include "DSRC_Elevation.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* Position3D */ +typedef struct Position3D { + Latitude_t lat; + Longitude_t Long; + DSRC_Elevation_t *elevation; /* OPTIONAL */ + struct Position3D__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} Position3D_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Position3D; +extern asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1; +extern asn_TYPE_member_t asn_MBR_Position3D_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _Position3D_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h new file mode 100644 index 000000000..6f6c51ac4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidence.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PositionConfidence_H_ +#define _PositionConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PositionConfidence { + PositionConfidence_unavailable = 0, + PositionConfidence_a500m = 1, + PositionConfidence_a200m = 2, + PositionConfidence_a100m = 3, + PositionConfidence_a50m = 4, + PositionConfidence_a20m = 5, + PositionConfidence_a10m = 6, + PositionConfidence_a5m = 7, + PositionConfidence_a2m = 8, + PositionConfidence_a1m = 9, + PositionConfidence_a50cm = 10, + PositionConfidence_a20cm = 11, + PositionConfidence_a10cm = 12, + PositionConfidence_a5cm = 13, + PositionConfidence_a2cm = 14, + PositionConfidence_a1cm = 15 +} e_PositionConfidence; + +/* PositionConfidence */ +typedef long PositionConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1; +asn_struct_free_f PositionConfidence_free; +asn_struct_print_f PositionConfidence_print; +asn_constr_check_f PositionConfidence_constraint; +ber_type_decoder_f PositionConfidence_decode_ber; +der_type_encoder_f PositionConfidence_encode_der; +xer_type_decoder_f PositionConfidence_decode_xer; +xer_type_encoder_f PositionConfidence_encode_xer; +oer_type_decoder_f PositionConfidence_decode_oer; +oer_type_encoder_f PositionConfidence_encode_oer; +per_type_decoder_f PositionConfidence_decode_uper; +per_type_encoder_f PositionConfidence_encode_uper; +per_type_decoder_f PositionConfidence_decode_aper; +per_type_encoder_f PositionConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h new file mode 100644 index 000000000..f74f5fd7a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionConfidenceSet.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PositionConfidenceSet_H_ +#define _PositionConfidenceSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "PositionConfidence.h" +#include "ElevationConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionConfidenceSet */ +typedef struct PositionConfidenceSet { + PositionConfidence_t pos; + ElevationConfidence_t elevation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionConfidenceSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionConfidenceSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h new file mode 100644 index 000000000..9a9890818 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionOffsetXYZ.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _PositionOffsetXYZ_H_ +#define _PositionOffsetXYZ_H_ + + +#include + +/* Including external dependencies */ +#include "ObjectDistance.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionOffsetXYZ */ +typedef struct PositionOffsetXYZ { + ObjectDistance_t offsetX; + ObjectDistance_t offsetY; + ObjectDistance_t *offsetZ /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionOffsetXYZ_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionOffsetXYZ_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h new file mode 100644 index 000000000..3a6b99d4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PositionalAccuracy.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PositionalAccuracy_H_ +#define _PositionalAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SemiMajorAxisAccuracy.h" +#include "SemiMinorAxisAccuracy.h" +#include "SemiMajorAxisOrientation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PositionalAccuracy */ +typedef struct PositionalAccuracy { + SemiMajorAxisAccuracy_t semiMajor; + SemiMinorAxisAccuracy_t semiMinor; + SemiMajorAxisOrientation_t orientation; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PositionalAccuracy_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy; +extern asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1; +extern asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PositionalAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h new file mode 100644 index 000000000..a33404445 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PreemptPriorityList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PreemptPriorityList_H_ +#define _PreemptPriorityList_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 SignalControlZone; + +/* PreemptPriorityList */ +typedef struct PreemptPriorityList { + A_SEQUENCE_OF(struct SignalControlZone) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PreemptPriorityList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList; +extern asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1; +extern asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[1]; +extern asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalControlZone.h" + +#endif /* _PreemptPriorityList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrintableString.h new file mode 100644 index 000000000..d7889445b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/PrioritizationResponse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h new file mode 100644 index 000000000..6011ce6fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponse.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PrioritizationResponse_H_ +#define _PrioritizationResponse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "PrioritizationResponseStatus.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrioritizationResponse */ +typedef struct PrioritizationResponse { + StationID_t stationID; + PrioritizationResponseStatus_t priorState; + SignalGroupID_t signalGroup; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse; +extern asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h new file mode 100644 index 000000000..e098544b5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PrioritizationResponseList_H_ +#define _PrioritizationResponseList_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 PrioritizationResponse; + +/* PrioritizationResponseList */ +typedef struct PrioritizationResponseList { + A_SEQUENCE_OF(struct PrioritizationResponse) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrioritizationResponseList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList; +extern asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1; +extern asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[1]; +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PrioritizationResponse.h" + +#endif /* _PrioritizationResponseList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h new file mode 100644 index 000000000..6161936b6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrioritizationResponseStatus.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PrioritizationResponseStatus_H_ +#define _PrioritizationResponseStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrioritizationResponseStatus { + PrioritizationResponseStatus_unknown = 0, + PrioritizationResponseStatus_requested = 1, + PrioritizationResponseStatus_processing = 2, + PrioritizationResponseStatus_watchOtherTraffic = 3, + PrioritizationResponseStatus_granted = 4, + PrioritizationResponseStatus_rejected = 5, + PrioritizationResponseStatus_maxPresence = 6, + PrioritizationResponseStatus_reserviceLocked = 7 + /* + * Enumeration is extensible + */ +} e_PrioritizationResponseStatus; + +/* PrioritizationResponseStatus */ +typedef long PrioritizationResponseStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus; +extern const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1; +asn_struct_free_f PrioritizationResponseStatus_free; +asn_struct_print_f PrioritizationResponseStatus_print; +asn_constr_check_f PrioritizationResponseStatus_constraint; +ber_type_decoder_f PrioritizationResponseStatus_decode_ber; +der_type_encoder_f PrioritizationResponseStatus_encode_der; +xer_type_decoder_f PrioritizationResponseStatus_decode_xer; +xer_type_encoder_f PrioritizationResponseStatus_encode_xer; +oer_type_decoder_f PrioritizationResponseStatus_decode_oer; +oer_type_encoder_f PrioritizationResponseStatus_encode_oer; +per_type_decoder_f PrioritizationResponseStatus_decode_uper; +per_type_encoder_f PrioritizationResponseStatus_encode_uper; +per_type_decoder_f PrioritizationResponseStatus_decode_aper; +per_type_encoder_f PrioritizationResponseStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrioritizationResponseStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h new file mode 100644 index 000000000..ae82579b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Priority.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Priority_H_ +#define _Priority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Priority */ +typedef OCTET_STRING_t Priority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Priority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Priority; +asn_struct_free_f Priority_free; +asn_struct_print_f Priority_print; +asn_constr_check_f Priority_constraint; +ber_type_decoder_f Priority_decode_ber; +der_type_encoder_f Priority_encode_der; +xer_type_decoder_f Priority_decode_xer; +xer_type_encoder_f Priority_encode_xer; +oer_type_decoder_f Priority_decode_oer; +oer_type_encoder_f Priority_encode_oer; +per_type_decoder_f Priority_decode_uper; +per_type_encoder_f Priority_encode_uper; +per_type_decoder_f Priority_decode_aper; +per_type_encoder_f Priority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Priority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h new file mode 100644 index 000000000..7609eb750 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PriorityRequestType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PriorityRequestType_H_ +#define _PriorityRequestType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PriorityRequestType { + PriorityRequestType_priorityRequestTypeReserved = 0, + PriorityRequestType_priorityRequest = 1, + PriorityRequestType_priorityRequestUpdate = 2, + PriorityRequestType_priorityCancellation = 3 + /* + * Enumeration is extensible + */ +} e_PriorityRequestType; + +/* PriorityRequestType */ +typedef long PriorityRequestType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PriorityRequestType; +extern const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1; +asn_struct_free_f PriorityRequestType_free; +asn_struct_print_f PriorityRequestType_print; +asn_constr_check_f PriorityRequestType_constraint; +ber_type_decoder_f PriorityRequestType_decode_ber; +der_type_encoder_f PriorityRequestType_encode_der; +xer_type_decoder_f PriorityRequestType_decode_xer; +xer_type_encoder_f PriorityRequestType_encode_xer; +oer_type_decoder_f PriorityRequestType_decode_oer; +oer_type_encoder_f PriorityRequestType_encode_oer; +per_type_decoder_f PriorityRequestType_decode_uper; +per_type_encoder_f PriorityRequestType_encode_uper; +per_type_decoder_f PriorityRequestType_decode_aper; +per_type_encoder_f PriorityRequestType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PriorityRequestType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h new file mode 100644 index 000000000..d86e73e45 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEventFlags.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PrivilegedEventFlags_H_ +#define _PrivilegedEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PrivilegedEventFlags { + PrivilegedEventFlags_peUnavailable = 0, + PrivilegedEventFlags_peEmergencyResponse = 1, + PrivilegedEventFlags_peEmergencyLightsActive = 2, + PrivilegedEventFlags_peEmergencySoundActive = 3, + PrivilegedEventFlags_peNonEmergencyLightsActive = 4, + PrivilegedEventFlags_peNonEmergencySoundActive = 5 +} e_PrivilegedEventFlags; + +/* PrivilegedEventFlags */ +typedef BIT_STRING_t PrivilegedEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags; +asn_struct_free_f PrivilegedEventFlags_free; +asn_struct_print_f PrivilegedEventFlags_print; +asn_constr_check_f PrivilegedEventFlags_constraint; +ber_type_decoder_f PrivilegedEventFlags_decode_ber; +der_type_encoder_f PrivilegedEventFlags_encode_der; +xer_type_decoder_f PrivilegedEventFlags_decode_xer; +xer_type_encoder_f PrivilegedEventFlags_encode_xer; +oer_type_decoder_f PrivilegedEventFlags_decode_oer; +oer_type_encoder_f PrivilegedEventFlags_encode_oer; +per_type_decoder_f PrivilegedEventFlags_decode_uper; +per_type_encoder_f PrivilegedEventFlags_encode_uper; +per_type_decoder_f PrivilegedEventFlags_decode_aper; +per_type_encoder_f PrivilegedEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h new file mode 100644 index 000000000..1353144e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PrivilegedEvents.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PrivilegedEvents_H_ +#define _PrivilegedEvents_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PrivilegedEventFlags.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* PrivilegedEvents */ +typedef struct PrivilegedEvents { + SSPindex_t sspRights; + PrivilegedEventFlags_t event; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PrivilegedEvents_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents; +extern asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1; +extern asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PrivilegedEvents_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h new file mode 100644 index 000000000..6eb6b0748 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeDataManagement.h @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ProbeDataManagement_H_ +#define _ProbeDataManagement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "Sample.h" +#include "HeadingSlice.h" +#include "SecondOfTime.h" +#include "TermTime.h" +#include "TermDistance.h" +#include "constr_CHOICE.h" +#include "SnapshotTime.h" +#include "SnapshotDistance.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ProbeDataManagement__term_PR { + ProbeDataManagement__term_PR_NOTHING, /* No components present */ + ProbeDataManagement__term_PR_termtime, + ProbeDataManagement__term_PR_termDistance +} ProbeDataManagement__term_PR; +typedef enum ProbeDataManagement__snapshot_PR { + ProbeDataManagement__snapshot_PR_NOTHING, /* No components present */ + ProbeDataManagement__snapshot_PR_snapshotTime, + ProbeDataManagement__snapshot_PR_snapshotDistance +} ProbeDataManagement__snapshot_PR; + +/* Forward declarations */ +struct VehicleStatusRequestList; +struct Reg_BasicSafetyMessage; + +/* ProbeDataManagement */ +typedef struct ProbeDataManagement { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + Sample_t sample; + HeadingSlice_t directions; + struct ProbeDataManagement__term { + ProbeDataManagement__term_PR present; + union ProbeDataManagement__term_u { + TermTime_t termtime; + TermDistance_t termDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } term; + struct ProbeDataManagement__snapshot { + ProbeDataManagement__snapshot_PR present; + union ProbeDataManagement__snapshot_u { + SnapshotTime_t snapshotTime; + SnapshotDistance_t snapshotDistance; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshot; + SecondOfTime_t txInterval; + struct VehicleStatusRequestList *dataElements; /* OPTIONAL */ + struct ProbeDataManagement__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} ProbeDataManagement_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleStatusRequestList.h" +#include "RegionalExtension.h" + +#endif /* _ProbeDataManagement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h new file mode 100644 index 000000000..8f88e706a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeSegmentNumber.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ProbeSegmentNumber_H_ +#define _ProbeSegmentNumber_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ProbeSegmentNumber */ +typedef long ProbeSegmentNumber_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber; +asn_struct_free_f ProbeSegmentNumber_free; +asn_struct_print_f ProbeSegmentNumber_print; +asn_constr_check_f ProbeSegmentNumber_constraint; +ber_type_decoder_f ProbeSegmentNumber_decode_ber; +der_type_encoder_f ProbeSegmentNumber_encode_der; +xer_type_decoder_f ProbeSegmentNumber_decode_xer; +xer_type_encoder_f ProbeSegmentNumber_encode_xer; +oer_type_decoder_f ProbeSegmentNumber_decode_oer; +oer_type_encoder_f ProbeSegmentNumber_encode_oer; +per_type_decoder_f ProbeSegmentNumber_decode_uper; +per_type_encoder_f ProbeSegmentNumber_encode_uper; +per_type_decoder_f ProbeSegmentNumber_decode_aper; +per_type_encoder_f ProbeSegmentNumber_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ProbeSegmentNumber_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h new file mode 100644 index 000000000..e063c5e52 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ProbeVehicleData.h @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ProbeVehicleData_H_ +#define _ProbeVehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "ProbeSegmentNumber.h" +#include "FullPositionVector.h" +#include "VehicleClassification.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleIdent; +struct Snapshot; +struct Reg_BasicSafetyMessage; + +/* ProbeVehicleData */ +typedef struct ProbeVehicleData { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ProbeSegmentNumber_t *segNum; /* OPTIONAL */ + struct VehicleIdent *probeID; /* OPTIONAL */ + FullPositionVector_t startVector; + VehicleClassification_t vehicleType; + struct ProbeVehicleData__snapshots { + A_SEQUENCE_OF(struct Snapshot) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } snapshots; + struct ProbeVehicleData__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} ProbeVehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleIdent.h" +#include "Snapshot.h" +#include "RegionalExtension.h" + +#endif /* _ProbeVehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h new file mode 100644 index 000000000..e5202fc40 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PropelledInformation.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PropelledInformation_H_ +#define _PropelledInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HumanPropelledType.h" +#include "AnimalPropelledType.h" +#include "MotorizedPropelledType.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PropelledInformation_PR { + PropelledInformation_PR_NOTHING, /* No components present */ + PropelledInformation_PR_human, + PropelledInformation_PR_animal, + PropelledInformation_PR_motor + /* Extensions may appear below */ + +} PropelledInformation_PR; + +/* PropelledInformation */ +typedef struct PropelledInformation { + PropelledInformation_PR present; + union PropelledInformation_u { + HumanPropelledType_t human; + AnimalPropelledType_t animal; + MotorizedPropelledType_t motor; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PropelledInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PropelledInformation; +extern asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_PropelledInformation_1[3]; +extern asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _PropelledInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h new file mode 100644 index 000000000..3e16c002e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyAndRoadWorkerActivity.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PublicSafetyAndRoadWorkerActivity_H_ +#define _PublicSafetyAndRoadWorkerActivity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyAndRoadWorkerActivity { + PublicSafetyAndRoadWorkerActivity_unavailable = 0, + PublicSafetyAndRoadWorkerActivity_workingOnRoad = 1, + PublicSafetyAndRoadWorkerActivity_settingUpClosures = 2, + PublicSafetyAndRoadWorkerActivity_respondingToEvents = 3, + PublicSafetyAndRoadWorkerActivity_directingTraffic = 4, + PublicSafetyAndRoadWorkerActivity_otherActivities = 5 +} e_PublicSafetyAndRoadWorkerActivity; + +/* PublicSafetyAndRoadWorkerActivity */ +typedef BIT_STRING_t PublicSafetyAndRoadWorkerActivity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity; +asn_struct_free_f PublicSafetyAndRoadWorkerActivity_free; +asn_struct_print_f PublicSafetyAndRoadWorkerActivity_print; +asn_constr_check_f PublicSafetyAndRoadWorkerActivity_constraint; +ber_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_ber; +der_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_der; +xer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_xer; +xer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_xer; +oer_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_oer; +oer_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_oer; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_uper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_uper; +per_type_decoder_f PublicSafetyAndRoadWorkerActivity_decode_aper; +per_type_encoder_f PublicSafetyAndRoadWorkerActivity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyAndRoadWorkerActivity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h new file mode 100644 index 000000000..22ea7e7c0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyDirectingTrafficSubType.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PublicSafetyDirectingTrafficSubType_H_ +#define _PublicSafetyDirectingTrafficSubType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyDirectingTrafficSubType { + PublicSafetyDirectingTrafficSubType_unavailable = 0, + PublicSafetyDirectingTrafficSubType_policeAndTrafficOfficers = 1, + PublicSafetyDirectingTrafficSubType_trafficControlPersons = 2, + PublicSafetyDirectingTrafficSubType_railroadCrossingGuards = 3, + PublicSafetyDirectingTrafficSubType_civilDefenseNationalGuardMilitaryPolice = 4, + PublicSafetyDirectingTrafficSubType_emergencyOrganizationPersonnel = 5, + PublicSafetyDirectingTrafficSubType_highwayServiceVehiclePersonnel = 6 +} e_PublicSafetyDirectingTrafficSubType; + +/* PublicSafetyDirectingTrafficSubType */ +typedef BIT_STRING_t PublicSafetyDirectingTrafficSubType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType; +asn_struct_free_f PublicSafetyDirectingTrafficSubType_free; +asn_struct_print_f PublicSafetyDirectingTrafficSubType_print; +asn_constr_check_f PublicSafetyDirectingTrafficSubType_constraint; +ber_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_ber; +der_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_der; +xer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_xer; +xer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_xer; +oer_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_oer; +oer_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_oer; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_uper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_uper; +per_type_decoder_f PublicSafetyDirectingTrafficSubType_decode_aper; +per_type_encoder_f PublicSafetyDirectingTrafficSubType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyDirectingTrafficSubType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h new file mode 100644 index 000000000..31f9b8d48 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/PublicSafetyEventResponderWorkerType.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _PublicSafetyEventResponderWorkerType_H_ +#define _PublicSafetyEventResponderWorkerType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PublicSafetyEventResponderWorkerType { + PublicSafetyEventResponderWorkerType_unavailable = 0, + PublicSafetyEventResponderWorkerType_towOperater = 1, + PublicSafetyEventResponderWorkerType_fireAndEMSWorker = 2, + PublicSafetyEventResponderWorkerType_aDOTWorker = 3, + PublicSafetyEventResponderWorkerType_lawEnforcement = 4, + PublicSafetyEventResponderWorkerType_hazmatResponder = 5, + PublicSafetyEventResponderWorkerType_animalControlWorker = 6, + PublicSafetyEventResponderWorkerType_otherPersonnel = 7 + /* + * Enumeration is extensible + */ +} e_PublicSafetyEventResponderWorkerType; + +/* PublicSafetyEventResponderWorkerType */ +typedef long PublicSafetyEventResponderWorkerType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType; +extern const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1; +asn_struct_free_f PublicSafetyEventResponderWorkerType_free; +asn_struct_print_f PublicSafetyEventResponderWorkerType_print; +asn_constr_check_f PublicSafetyEventResponderWorkerType_constraint; +ber_type_decoder_f PublicSafetyEventResponderWorkerType_decode_ber; +der_type_encoder_f PublicSafetyEventResponderWorkerType_encode_der; +xer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_xer; +xer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_xer; +oer_type_decoder_f PublicSafetyEventResponderWorkerType_decode_oer; +oer_type_encoder_f PublicSafetyEventResponderWorkerType_encode_oer; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_uper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_uper; +per_type_decoder_f PublicSafetyEventResponderWorkerType_decode_aper; +per_type_encoder_f PublicSafetyEventResponderWorkerType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PublicSafetyEventResponderWorkerType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/REAL.h new file mode 100644 index 000000000..8bc06230a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/RELATIVE-OID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RELATIVE-OID.h new file mode 100644 index 000000000..4a73d2787 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/RTCM-Revision.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h new file mode 100644 index 000000000..bc7ddf4f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCM-Revision.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCM_Revision_H_ +#define _RTCM_Revision_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RTCM_Revision { + RTCM_Revision_unknown = 0, + RTCM_Revision_rtcmRev2 = 1, + RTCM_Revision_rtcmRev3 = 2, + RTCM_Revision_reserved = 3 + /* + * Enumeration is extensible + */ +} e_RTCM_Revision; + +/* RTCM-Revision */ +typedef long RTCM_Revision_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCM_Revision; +extern const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1; +asn_struct_free_f RTCM_Revision_free; +asn_struct_print_f RTCM_Revision_print; +asn_constr_check_f RTCM_Revision_constraint; +ber_type_decoder_f RTCM_Revision_decode_ber; +der_type_encoder_f RTCM_Revision_encode_der; +xer_type_decoder_f RTCM_Revision_decode_xer; +xer_type_encoder_f RTCM_Revision_encode_xer; +oer_type_decoder_f RTCM_Revision_decode_oer; +oer_type_encoder_f RTCM_Revision_encode_oer; +per_type_decoder_f RTCM_Revision_decode_uper; +per_type_encoder_f RTCM_Revision_encode_uper; +per_type_decoder_f RTCM_Revision_decode_aper; +per_type_encoder_f RTCM_Revision_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCM_Revision_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h new file mode 100644 index 000000000..a006e427f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMPackage.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCMPackage_H_ +#define _RTCMPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessageList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RTCMheader; + +/* RTCMPackage */ +typedef struct RTCMPackage { + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMPackage_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RTCMheader.h" + +#endif /* _RTCMPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h new file mode 100644 index 000000000..8712ded80 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMcorrections.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCMcorrections_H_ +#define _RTCMcorrections_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "RTCM-Revision.h" +#include "MinuteOfTheYear.h" +#include "RTCMmessageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct RTCMheader; +struct Reg_BasicSafetyMessage; + +/* RTCMcorrections */ +typedef struct RTCMcorrections { + DSRC_MsgCount_t msgCnt; + RTCM_Revision_t rev; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + struct FullPositionVector *anchorPoint; /* OPTIONAL */ + struct RTCMheader *rtcmHeader; /* OPTIONAL */ + RTCMmessageList_t msgs; + struct RTCMcorrections__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} RTCMcorrections_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMcorrections; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMcorrections_1[7]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "RTCMheader.h" +#include "RegionalExtension.h" + +#endif /* _RTCMcorrections_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h new file mode 100644 index 000000000..4dfc71e74 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMheader.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCMheader_H_ +#define _RTCMheader_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GNSSstatus.h" +#include "AntennaOffsetSet.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMheader */ +typedef struct RTCMheader { + GNSSstatus_t status; + AntennaOffsetSet_t offsetSet; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMheader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMheader; +extern asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMheader_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMheader_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h new file mode 100644 index 000000000..bdd7de653 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessage.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCMmessage_H_ +#define _RTCMmessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessage */ +typedef OCTET_STRING_t RTCMmessage_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessage; +asn_struct_free_f RTCMmessage_free; +asn_struct_print_f RTCMmessage_print; +asn_constr_check_f RTCMmessage_constraint; +ber_type_decoder_f RTCMmessage_decode_ber; +der_type_encoder_f RTCMmessage_encode_der; +xer_type_decoder_f RTCMmessage_decode_xer; +xer_type_encoder_f RTCMmessage_encode_xer; +oer_type_decoder_f RTCMmessage_decode_oer; +oer_type_encoder_f RTCMmessage_encode_oer; +per_type_decoder_f RTCMmessage_decode_uper; +per_type_encoder_f RTCMmessage_encode_uper; +per_type_decoder_f RTCMmessage_decode_aper; +per_type_encoder_f RTCMmessage_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h new file mode 100644 index 000000000..5677363aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RTCMmessageList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RTCMmessageList_H_ +#define _RTCMmessageList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RTCMmessage.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RTCMmessageList */ +typedef struct RTCMmessageList { + A_SEQUENCE_OF(RTCMmessage_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RTCMmessageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RTCMmessageList; +extern asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1; +extern asn_TYPE_member_t asn_MBR_RTCMmessageList_1[1]; +extern asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RTCMmessageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h new file mode 100644 index 000000000..658c677e9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Radius-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Radius_B12_H_ +#define _Radius_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Radius-B12 */ +typedef long Radius_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Radius_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Radius_B12; +asn_struct_free_f Radius_B12_free; +asn_struct_print_f Radius_B12_print; +asn_constr_check_f Radius_B12_constraint; +ber_type_decoder_f Radius_B12_decode_ber; +der_type_encoder_f Radius_B12_encode_der; +xer_type_decoder_f Radius_B12_decode_xer; +xer_type_encoder_f Radius_B12_encode_xer; +oer_type_decoder_f Radius_B12_decode_oer; +oer_type_encoder_f Radius_B12_encode_oer; +per_type_decoder_f Radius_B12_decode_uper; +per_type_encoder_f Radius_B12_encode_uper; +per_type_decoder_f Radius_B12_decode_aper; +per_type_encoder_f Radius_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Radius_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h new file mode 100644 index 000000000..0842e51a3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RadiusOfCurvature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RadiusOfCurvature_H_ +#define _RadiusOfCurvature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RadiusOfCurvature */ +typedef long RadiusOfCurvature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature; +asn_struct_free_f RadiusOfCurvature_free; +asn_struct_print_f RadiusOfCurvature_print; +asn_constr_check_f RadiusOfCurvature_constraint; +ber_type_decoder_f RadiusOfCurvature_decode_ber; +der_type_encoder_f RadiusOfCurvature_encode_der; +xer_type_decoder_f RadiusOfCurvature_decode_xer; +xer_type_encoder_f RadiusOfCurvature_encode_xer; +oer_type_decoder_f RadiusOfCurvature_decode_oer; +oer_type_encoder_f RadiusOfCurvature_encode_oer; +per_type_decoder_f RadiusOfCurvature_decode_uper; +per_type_encoder_f RadiusOfCurvature_encode_uper; +per_type_decoder_f RadiusOfCurvature_decode_aper; +per_type_encoder_f RadiusOfCurvature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RadiusOfCurvature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h new file mode 100644 index 000000000..abd0aa897 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RainSensor.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RainSensor_H_ +#define _RainSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RainSensor { + RainSensor_none = 0, + RainSensor_lightMist = 1, + RainSensor_heavyMist = 2, + RainSensor_lightRainOrDrizzle = 3, + RainSensor_rain = 4, + RainSensor_moderateRain = 5, + RainSensor_heavyRain = 6, + RainSensor_heavyDownpour = 7 +} e_RainSensor; + +/* RainSensor */ +typedef long RainSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RainSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RainSensor; +extern const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1; +asn_struct_free_f RainSensor_free; +asn_struct_print_f RainSensor_print; +asn_constr_check_f RainSensor_constraint; +ber_type_decoder_f RainSensor_decode_ber; +der_type_encoder_f RainSensor_encode_der; +xer_type_decoder_f RainSensor_decode_xer; +xer_type_encoder_f RainSensor_encode_xer; +oer_type_decoder_f RainSensor_decode_oer; +oer_type_encoder_f RainSensor_encode_oer; +per_type_decoder_f RainSensor_decode_uper; +per_type_encoder_f RainSensor_encode_uper; +per_type_decoder_f RainSensor_decode_aper; +per_type_encoder_f RainSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RainSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h new file mode 100644 index 000000000..2f6fb4bf1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionId.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RegionId_H_ +#define _RegionId_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionId */ +typedef long RegionId_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RegionId_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RegionId; +asn_struct_free_f RegionId_free; +asn_struct_print_f RegionId_print; +asn_constr_check_f RegionId_constraint; +ber_type_decoder_f RegionId_decode_ber; +der_type_encoder_f RegionId_encode_der; +xer_type_decoder_f RegionId_decode_xer; +xer_type_encoder_f RegionId_encode_xer; +oer_type_decoder_f RegionId_decode_oer; +oer_type_encoder_f RegionId_encode_oer; +per_type_decoder_f RegionId_decode_uper; +per_type_encoder_f RegionId_encode_uper; +per_type_decoder_f RegionId_decode_aper; +per_type_encoder_f RegionId_encode_aper; +#define RegionId_noRegion ((RegionId_t)0) +#define RegionId_addGrpA ((RegionId_t)1) +#define RegionId_addGrpB ((RegionId_t)2) +#define RegionId_addGrpC ((RegionId_t)3) + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionId_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h new file mode 100644 index 000000000..322649479 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RegionList_H_ +#define _RegionList_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 RegionOffsets; + +/* RegionList */ +typedef struct RegionList { + A_SEQUENCE_OF(struct RegionOffsets) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionList; +extern asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionList_1[1]; +extern asn_per_constraints_t asn_PER_type_RegionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionOffsets.h" + +#endif /* _RegionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h new file mode 100644 index 000000000..ddfe1f093 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionOffsets.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RegionOffsets_H_ +#define _RegionOffsets_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OffsetLL-B16.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegionOffsets */ +typedef struct RegionOffsets { + OffsetLL_B16_t xOffset; + OffsetLL_B16_t yOffset; + OffsetLL_B16_t *zOffset; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionOffsets_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionOffsets; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionOffsets_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionOffsets_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h new file mode 100644 index 000000000..9040eefba --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionPointSet.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RegionPointSet_H_ +#define _RegionPointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Zoom.h" +#include "RegionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* RegionPointSet */ +typedef struct RegionPointSet { + struct Position3D *anchor; /* OPTIONAL */ + Zoom_t *scale; /* OPTIONAL */ + RegionList_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegionPointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegionPointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_RegionPointSet_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _RegionPointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h new file mode 100644 index 000000000..ac17e7561 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegionalExtension.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#ifndef _RegionalExtension_H_ +#define _RegionalExtension_H_ + + +#include + +/* Including external dependencies */ +#include "RegionId.h" +#include +#include +#include "BasicSafetyMessage-addGrpCarma.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Reg_BasicSafetyMessage__regExtValue_PR { + Reg_BasicSafetyMessage__regExtValue_PR_NOTHING, /* No components present */ + Reg_BasicSafetyMessage__regExtValue_PR_BasicSafetyMessage_addGrpCarma +} Reg_BasicSafetyMessage__regExtValue_PR; + +/* RegionalExtension */ +typedef struct Reg_BasicSafetyMessage { + RegionId_t regionId; + struct Reg_BasicSafetyMessage__regExtValue { + Reg_BasicSafetyMessage__regExtValue_PR present; + union Reg_BasicSafetyMessage__regExtValue_u { + BasicSafetyMessage_addGrpCarma_t BasicSafetyMessage_addGrpCarma; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regExtValue; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Reg_BasicSafetyMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegionalExtension_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h new file mode 100644 index 000000000..c76d38fcd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RegulatorySpeedLimit.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RegulatorySpeedLimit_H_ +#define _RegulatorySpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedLimitType.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RegulatorySpeedLimit */ +typedef struct RegulatorySpeedLimit { + SpeedLimitType_t type; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RegulatorySpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit; +extern asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RegulatorySpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h new file mode 100644 index 000000000..6f840bae7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RepeatParams.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RepeatParams_H_ +#define _RepeatParams_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RepeatParams */ +typedef struct RepeatParams { + long offset; + long period; + long span; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RepeatParams_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RepeatParams; +extern asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1; +extern asn_TYPE_member_t asn_MBR_RepeatParams_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RepeatParams_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h new file mode 100644 index 000000000..e8447cfe5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestID_H_ +#define _RequestID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestID */ +typedef long RequestID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestID; +asn_struct_free_f RequestID_free; +asn_struct_print_f RequestID_print; +asn_constr_check_f RequestID_constraint; +ber_type_decoder_f RequestID_decode_ber; +der_type_encoder_f RequestID_encode_der; +xer_type_decoder_f RequestID_decode_xer; +xer_type_encoder_f RequestID_encode_xer; +oer_type_decoder_f RequestID_decode_oer; +oer_type_encoder_f RequestID_encode_oer; +per_type_decoder_f RequestID_decode_uper; +per_type_encoder_f RequestID_encode_uper; +per_type_decoder_f RequestID_decode_aper; +per_type_encoder_f RequestID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h new file mode 100644 index 000000000..cb8e801dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestImportanceLevel.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestImportanceLevel_H_ +#define _RequestImportanceLevel_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestImportanceLevel { + RequestImportanceLevel_requestImportanceLevelUnKnown = 0, + RequestImportanceLevel_requestImportanceLevel1 = 1, + RequestImportanceLevel_requestImportanceLevel2 = 2, + RequestImportanceLevel_requestImportanceLevel3 = 3, + RequestImportanceLevel_requestImportanceLevel4 = 4, + RequestImportanceLevel_requestImportanceLevel5 = 5, + RequestImportanceLevel_requestImportanceLevel6 = 6, + RequestImportanceLevel_requestImportanceLevel7 = 7, + RequestImportanceLevel_requestImportanceLevel8 = 8, + RequestImportanceLevel_requestImportanceLevel9 = 9, + RequestImportanceLevel_requestImportanceLevel10 = 10, + RequestImportanceLevel_requestImportanceLevel11 = 11, + RequestImportanceLevel_requestImportanceLevel12 = 12, + RequestImportanceLevel_requestImportanceLevel13 = 13, + RequestImportanceLevel_requestImportanceLevel14 = 14, + RequestImportanceLevel_requestImportanceReserved = 15 +} e_RequestImportanceLevel; + +/* RequestImportanceLevel */ +typedef long RequestImportanceLevel_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel; +extern const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1; +asn_struct_free_f RequestImportanceLevel_free; +asn_struct_print_f RequestImportanceLevel_print; +asn_constr_check_f RequestImportanceLevel_constraint; +ber_type_decoder_f RequestImportanceLevel_decode_ber; +der_type_encoder_f RequestImportanceLevel_encode_der; +xer_type_decoder_f RequestImportanceLevel_decode_xer; +xer_type_encoder_f RequestImportanceLevel_encode_xer; +oer_type_decoder_f RequestImportanceLevel_decode_oer; +oer_type_encoder_f RequestImportanceLevel_encode_oer; +per_type_decoder_f RequestImportanceLevel_decode_uper; +per_type_encoder_f RequestImportanceLevel_encode_uper; +per_type_decoder_f RequestImportanceLevel_decode_aper; +per_type_encoder_f RequestImportanceLevel_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestImportanceLevel_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h new file mode 100644 index 000000000..f2b9637ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestSubRole.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestSubRole_H_ +#define _RequestSubRole_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestSubRole { + RequestSubRole_requestSubRoleUnKnown = 0, + RequestSubRole_requestSubRole1 = 1, + RequestSubRole_requestSubRole2 = 2, + RequestSubRole_requestSubRole3 = 3, + RequestSubRole_requestSubRole4 = 4, + RequestSubRole_requestSubRole5 = 5, + RequestSubRole_requestSubRole6 = 6, + RequestSubRole_requestSubRole7 = 7, + RequestSubRole_requestSubRole8 = 8, + RequestSubRole_requestSubRole9 = 9, + RequestSubRole_requestSubRole10 = 10, + RequestSubRole_requestSubRole11 = 11, + RequestSubRole_requestSubRole12 = 12, + RequestSubRole_requestSubRole13 = 13, + RequestSubRole_requestSubRole14 = 14, + RequestSubRole_requestSubRoleReserved = 15 +} e_RequestSubRole; + +/* RequestSubRole */ +typedef long RequestSubRole_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestSubRole; +extern const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1; +asn_struct_free_f RequestSubRole_free; +asn_struct_print_f RequestSubRole_print; +asn_constr_check_f RequestSubRole_constraint; +ber_type_decoder_f RequestSubRole_decode_ber; +der_type_encoder_f RequestSubRole_encode_der; +xer_type_decoder_f RequestSubRole_decode_xer; +xer_type_encoder_f RequestSubRole_encode_xer; +oer_type_decoder_f RequestSubRole_decode_oer; +oer_type_encoder_f RequestSubRole_encode_oer; +per_type_decoder_f RequestSubRole_decode_uper; +per_type_encoder_f RequestSubRole_encode_uper; +per_type_decoder_f RequestSubRole_decode_aper; +per_type_encoder_f RequestSubRole_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestSubRole_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h new file mode 100644 index 000000000..53c81955c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItem.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestedItem_H_ +#define _RequestedItem_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RequestedItem { + RequestedItem_reserved = 0, + RequestedItem_itemA = 1, + RequestedItem_itemB = 2, + RequestedItem_itemC = 3, + RequestedItem_itemD = 4, + RequestedItem_itemE = 5, + RequestedItem_itemF = 6, + RequestedItem_itemG = 7, + RequestedItem_itemI = 8, + RequestedItem_itemJ = 9, + RequestedItem_itemK = 10, + RequestedItem_itemL = 11, + RequestedItem_itemM = 12, + RequestedItem_itemN = 13, + RequestedItem_itemO = 14, + RequestedItem_itemP = 15, + RequestedItem_itemQ = 16 + /* + * Enumeration is extensible + */ +} e_RequestedItem; + +/* RequestedItem */ +typedef long RequestedItem_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RequestedItem_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RequestedItem; +extern const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1; +asn_struct_free_f RequestedItem_free; +asn_struct_print_f RequestedItem_print; +asn_constr_check_f RequestedItem_constraint; +ber_type_decoder_f RequestedItem_decode_ber; +der_type_encoder_f RequestedItem_encode_der; +xer_type_decoder_f RequestedItem_decode_xer; +xer_type_encoder_f RequestedItem_encode_xer; +oer_type_decoder_f RequestedItem_decode_oer; +oer_type_encoder_f RequestedItem_encode_oer; +per_type_decoder_f RequestedItem_decode_uper; +per_type_encoder_f RequestedItem_encode_uper; +per_type_decoder_f RequestedItem_decode_aper; +per_type_encoder_f RequestedItem_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItem_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h new file mode 100644 index 000000000..9d3fc910a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestedItemList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestedItemList_H_ +#define _RequestedItemList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RequestedItem.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RequestedItemList */ +typedef struct RequestedItemList { + A_SEQUENCE_OF(RequestedItem_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestedItemList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestedItemList; +extern asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestedItemList_1[1]; +extern asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RequestedItemList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h new file mode 100644 index 000000000..e31f2a1ac --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorDescription.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestorDescription_H_ +#define _RequestorDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "DescriptiveName.h" +#include "TransitVehicleStatus.h" +#include "TransitVehicleOccupancy.h" +#include "DeltaTime.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; +struct RequestorPositionVector; +struct Reg_BasicSafetyMessage; + +/* RequestorDescription */ +typedef struct RequestorDescription { + VehicleID_t id; + struct RequestorType *type; /* OPTIONAL */ + struct RequestorPositionVector *position; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + DescriptiveName_t *routeName; /* OPTIONAL */ + TransitVehicleStatus_t *transitStatus; /* OPTIONAL */ + TransitVehicleOccupancy_t *transitOccupancy; /* OPTIONAL */ + DeltaTime_t *transitSchedule; /* OPTIONAL */ + struct RequestorDescription__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} RequestorDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorDescription_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RequestorType.h" +#include "RequestorPositionVector.h" +#include "RegionalExtension.h" + +#endif /* _RequestorDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h new file mode 100644 index 000000000..85870f1f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorPositionVector.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestorPositionVector_H_ +#define _RequestorPositionVector_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "DSRC_Angle.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TransmissionAndSpeed; + +/* RequestorPositionVector */ +typedef struct RequestorPositionVector { + Position3D_t position; + DSRC_Angle_t *heading; /* OPTIONAL */ + struct TransmissionAndSpeed *speed; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorPositionVector_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TransmissionAndSpeed.h" + +#endif /* _RequestorPositionVector_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h new file mode 100644 index 000000000..1fd8c506a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RequestorType.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RequestorType_H_ +#define _RequestorType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleRole.h" +#include "RequestSubRole.h" +#include "RequestImportanceLevel.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* RequestorType */ +typedef struct RequestorType { + BasicVehicleRole_t role; + RequestSubRole_t *subrole; /* OPTIONAL */ + RequestImportanceLevel_t *request; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RequestorType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RequestorType; +extern asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1; +extern asn_TYPE_member_t asn_MBR_RequestorType_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _RequestorType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h new file mode 100644 index 000000000..7167916b4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponderGroupAffected.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ResponderGroupAffected_H_ +#define _ResponderGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponderGroupAffected { + ResponderGroupAffected_emergency_vehicle_units = 9729, + ResponderGroupAffected_federal_law_enforcement_units = 9730, + ResponderGroupAffected_state_police_units = 9731, + ResponderGroupAffected_county_police_units = 9732, + ResponderGroupAffected_local_police_units = 9733, + ResponderGroupAffected_ambulance_units = 9734, + ResponderGroupAffected_rescue_units = 9735, + ResponderGroupAffected_fire_units = 9736, + ResponderGroupAffected_hAZMAT_units = 9737, + ResponderGroupAffected_light_tow_unit = 9738, + ResponderGroupAffected_heavy_tow_unit = 9739, + ResponderGroupAffected_freeway_service_patrols = 9740, + ResponderGroupAffected_transportation_response_units = 9741, + ResponderGroupAffected_private_contractor_response_units = 9742 + /* + * Enumeration is extensible + */ +} e_ResponderGroupAffected; + +/* ResponderGroupAffected */ +typedef long ResponderGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1; +asn_struct_free_f ResponderGroupAffected_free; +asn_struct_print_f ResponderGroupAffected_print; +asn_constr_check_f ResponderGroupAffected_constraint; +ber_type_decoder_f ResponderGroupAffected_decode_ber; +der_type_encoder_f ResponderGroupAffected_encode_der; +xer_type_decoder_f ResponderGroupAffected_decode_xer; +xer_type_encoder_f ResponderGroupAffected_encode_xer; +oer_type_decoder_f ResponderGroupAffected_decode_oer; +oer_type_encoder_f ResponderGroupAffected_encode_oer; +per_type_decoder_f ResponderGroupAffected_decode_uper; +per_type_encoder_f ResponderGroupAffected_encode_uper; +per_type_decoder_f ResponderGroupAffected_decode_aper; +per_type_encoder_f ResponderGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponderGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h new file mode 100644 index 000000000..b7607f1cc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ResponseType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ResponseType_H_ +#define _ResponseType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ResponseType { + ResponseType_notInUseOrNotEquipped = 0, + ResponseType_emergency = 1, + ResponseType_nonEmergency = 2, + ResponseType_pursuit = 3, + ResponseType_stationary = 4, + ResponseType_slowMoving = 5, + ResponseType_stopAndGoMovement = 6 + /* + * Enumeration is extensible + */ +} e_ResponseType; + +/* ResponseType */ +typedef long ResponseType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ResponseType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ResponseType; +extern const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1; +asn_struct_free_f ResponseType_free; +asn_struct_print_f ResponseType_print; +asn_constr_check_f ResponseType_constraint; +ber_type_decoder_f ResponseType_decode_ber; +der_type_encoder_f ResponseType_encode_der; +xer_type_decoder_f ResponseType_decode_xer; +xer_type_encoder_f ResponseType_encode_xer; +oer_type_decoder_f ResponseType_decode_oer; +oer_type_encoder_f ResponseType_encode_oer; +per_type_decoder_f ResponseType_decode_uper; +per_type_encoder_f ResponseType_encode_uper; +per_type_decoder_f ResponseType_decode_aper; +per_type_encoder_f ResponseType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ResponseType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h new file mode 100644 index 000000000..4d634ff53 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionAppliesTo.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionAppliesTo_H_ +#define _RestrictionAppliesTo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionAppliesTo { + RestrictionAppliesTo_none = 0, + RestrictionAppliesTo_equippedTransit = 1, + RestrictionAppliesTo_equippedTaxis = 2, + RestrictionAppliesTo_equippedOther = 3, + RestrictionAppliesTo_emissionCompliant = 4, + RestrictionAppliesTo_equippedBicycle = 5, + RestrictionAppliesTo_weightCompliant = 6, + RestrictionAppliesTo_heightCompliant = 7, + RestrictionAppliesTo_pedestrians = 8, + RestrictionAppliesTo_slowMovingPersons = 9, + RestrictionAppliesTo_wheelchairUsers = 10, + RestrictionAppliesTo_visualDisabilities = 11, + RestrictionAppliesTo_audioDisabilities = 12, + RestrictionAppliesTo_otherUnknownDisabilities = 13 + /* + * Enumeration is extensible + */ +} e_RestrictionAppliesTo; + +/* RestrictionAppliesTo */ +typedef long RestrictionAppliesTo_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo; +extern const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1; +asn_struct_free_f RestrictionAppliesTo_free; +asn_struct_print_f RestrictionAppliesTo_print; +asn_constr_check_f RestrictionAppliesTo_constraint; +ber_type_decoder_f RestrictionAppliesTo_decode_ber; +der_type_encoder_f RestrictionAppliesTo_encode_der; +xer_type_decoder_f RestrictionAppliesTo_decode_xer; +xer_type_encoder_f RestrictionAppliesTo_encode_xer; +oer_type_decoder_f RestrictionAppliesTo_decode_oer; +oer_type_encoder_f RestrictionAppliesTo_encode_oer; +per_type_decoder_f RestrictionAppliesTo_decode_uper; +per_type_encoder_f RestrictionAppliesTo_encode_uper; +per_type_decoder_f RestrictionAppliesTo_decode_aper; +per_type_encoder_f RestrictionAppliesTo_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionAppliesTo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h new file mode 100644 index 000000000..8d39f57d5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassAssignment.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionClassAssignment_H_ +#define _RestrictionClassAssignment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionClassID.h" +#include "RestrictionUserTypeList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassAssignment */ +typedef struct RestrictionClassAssignment { + RestrictionClassID_t id; + RestrictionUserTypeList_t users; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassAssignment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment; +extern asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassAssignment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h new file mode 100644 index 000000000..51f358bef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionClassID_H_ +#define _RestrictionClassID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionClassID */ +typedef long RestrictionClassID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassID; +asn_struct_free_f RestrictionClassID_free; +asn_struct_print_f RestrictionClassID_print; +asn_constr_check_f RestrictionClassID_constraint; +ber_type_decoder_f RestrictionClassID_decode_ber; +der_type_encoder_f RestrictionClassID_encode_der; +xer_type_decoder_f RestrictionClassID_decode_xer; +xer_type_encoder_f RestrictionClassID_encode_xer; +oer_type_decoder_f RestrictionClassID_decode_oer; +oer_type_encoder_f RestrictionClassID_encode_oer; +per_type_decoder_f RestrictionClassID_decode_uper; +per_type_encoder_f RestrictionClassID_encode_uper; +per_type_decoder_f RestrictionClassID_decode_aper; +per_type_encoder_f RestrictionClassID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionClassID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h new file mode 100644 index 000000000..0a948d2e7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionClassList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionClassList_H_ +#define _RestrictionClassList_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 RestrictionClassAssignment; + +/* RestrictionClassList */ +typedef struct RestrictionClassList { + A_SEQUENCE_OF(struct RestrictionClassAssignment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionClassList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionClassList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionClassList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionClassAssignment.h" + +#endif /* _RestrictionClassList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h new file mode 100644 index 000000000..0925bee97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType-addGrpC.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionUserType_addGrpC_H_ +#define _RestrictionUserType_addGrpC_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EmissionType.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RestrictionUserType-addGrpC */ +typedef struct RestrictionUserType_addGrpC { + EmissionType_t *emission; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_addGrpC_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC; + +#ifdef __cplusplus +} +#endif + +#endif /* _RestrictionUserType_addGrpC_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h new file mode 100644 index 000000000..b104d7c50 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserType.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionUserType_H_ +#define _RestrictionUserType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RestrictionAppliesTo.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RestrictionUserType_PR { + RestrictionUserType_PR_NOTHING, /* No components present */ + RestrictionUserType_PR_basicType, + RestrictionUserType_PR_regional + /* Extensions may appear below */ + +} RestrictionUserType_PR; + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* RestrictionUserType */ +typedef struct RestrictionUserType { + RestrictionUserType_PR present; + union RestrictionUserType_u { + RestrictionAppliesTo_t basicType; + struct RestrictionUserType__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regional; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserType; +extern asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserType_1[2]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _RestrictionUserType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h new file mode 100644 index 000000000..dd1d205fe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RestrictionUserTypeList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RestrictionUserTypeList_H_ +#define _RestrictionUserTypeList_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 RestrictionUserType; + +/* RestrictionUserTypeList */ +typedef struct RestrictionUserTypeList { + A_SEQUENCE_OF(struct RestrictionUserType) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RestrictionUserTypeList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList; +extern asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1; +extern asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[1]; +extern asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RestrictionUserType.h" + +#endif /* _RestrictionUserTypeList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h new file mode 100644 index 000000000..d4b57e79c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadLaneSetList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadLaneSetList_H_ +#define _RoadLaneSetList_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 GenericLane; + +/* RoadLaneSetList */ +typedef struct RoadLaneSetList { + A_SEQUENCE_OF(struct GenericLane) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadLaneSetList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList; +extern asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GenericLane.h" + +#endif /* _RoadLaneSetList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h new file mode 100644 index 000000000..5dea18a89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadRegulatorID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadRegulatorID_H_ +#define _RoadRegulatorID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadRegulatorID */ +typedef long RoadRegulatorID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID; +asn_struct_free_f RoadRegulatorID_free; +asn_struct_print_f RoadRegulatorID_print; +asn_constr_check_f RoadRegulatorID_constraint; +ber_type_decoder_f RoadRegulatorID_decode_ber; +der_type_encoder_f RoadRegulatorID_encode_der; +xer_type_decoder_f RoadRegulatorID_decode_xer; +xer_type_encoder_f RoadRegulatorID_encode_xer; +oer_type_decoder_f RoadRegulatorID_decode_oer; +oer_type_encoder_f RoadRegulatorID_encode_oer; +per_type_decoder_f RoadRegulatorID_decode_uper; +per_type_encoder_f RoadRegulatorID_encode_uper; +per_type_decoder_f RoadRegulatorID_decode_aper; +per_type_encoder_f RoadRegulatorID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadRegulatorID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h new file mode 100644 index 000000000..4be7bdf65 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegment.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSegment_H_ +#define _RoadSegment_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "RoadSegmentReferenceID.h" +#include "DSRC_MsgCount.h" +#include "Position3D.h" +#include "LaneWidth.h" +#include "RoadLaneSetList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SpeedLimitList; +struct Reg_BasicSafetyMessage; + +/* RoadSegment */ +typedef struct RoadSegment { + DescriptiveName_t *name; /* OPTIONAL */ + RoadSegmentReferenceID_t id; + DSRC_MsgCount_t revision; + Position3D_t refPoint; + LaneWidth_t *laneWidth; /* OPTIONAL */ + struct SpeedLimitList *speedLimits; /* OPTIONAL */ + RoadLaneSetList_t roadLaneSet; + struct RoadSegment__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} RoadSegment_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegment; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegment_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SpeedLimitList.h" +#include "RegionalExtension.h" + +#endif /* _RoadSegment_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h new file mode 100644 index 000000000..3db17d835 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSegmentID_H_ +#define _RoadSegmentID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentID */ +typedef long RoadSegmentID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentID; +asn_struct_free_f RoadSegmentID_free; +asn_struct_print_f RoadSegmentID_print; +asn_constr_check_f RoadSegmentID_constraint; +ber_type_decoder_f RoadSegmentID_decode_ber; +der_type_encoder_f RoadSegmentID_encode_der; +xer_type_decoder_f RoadSegmentID_decode_xer; +xer_type_encoder_f RoadSegmentID_encode_xer; +oer_type_decoder_f RoadSegmentID_decode_oer; +oer_type_encoder_f RoadSegmentID_encode_oer; +per_type_decoder_f RoadSegmentID_decode_uper; +per_type_encoder_f RoadSegmentID_encode_uper; +per_type_decoder_f RoadSegmentID_decode_aper; +per_type_encoder_f RoadSegmentID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h new file mode 100644 index 000000000..8f876ca06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSegmentList_H_ +#define _RoadSegmentList_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 RoadSegment; + +/* RoadSegmentList */ +typedef struct RoadSegmentList { + A_SEQUENCE_OF(struct RoadSegment) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentList; +extern asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentList_1[1]; +extern asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RoadSegment.h" + +#endif /* _RoadSegmentList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h new file mode 100644 index 000000000..9170effd2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSegmentReferenceID.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSegmentReferenceID_H_ +#define _RoadSegmentReferenceID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RoadRegulatorID.h" +#include "RoadSegmentID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSegmentReferenceID */ +typedef struct RoadSegmentReferenceID { + RoadRegulatorID_t *region; /* OPTIONAL */ + RoadSegmentID_t id; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSegmentReferenceID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSegmentReferenceID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h new file mode 100644 index 000000000..2999caec9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSideAlert.h @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSideAlert_H_ +#define _RoadSideAlert_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "ITIScodes.h" +#include "Priority.h" +#include "HeadingSlice.h" +#include "Extent.h" +#include "FurtherInfoID.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct FullPositionVector; +struct Reg_BasicSafetyMessage; + +/* RoadSideAlert */ +typedef struct RoadSideAlert { + DSRC_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + ITIScodes_t typeEvent; + struct RoadSideAlert__description { + A_SEQUENCE_OF(ITIScodes_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *description; + Priority_t *priority; /* OPTIONAL */ + HeadingSlice_t *heading; /* OPTIONAL */ + Extent_t *extent; /* OPTIONAL */ + struct FullPositionVector *position; /* OPTIONAL */ + FurtherInfoID_t *furtherInfoID; /* OPTIONAL */ + struct RoadSideAlert__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} RoadSideAlert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSideAlert; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSideAlert_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "FullPositionVector.h" +#include "RegionalExtension.h" + +#endif /* _RoadSideAlert_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h new file mode 100644 index 000000000..a8f3938f4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadSignID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadSignID_H_ +#define _RoadSignID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Position3D.h" +#include "HeadingSlice.h" +#include "MUTCDCode.h" +#include "MsgCRC.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadSignID */ +typedef struct RoadSignID { + Position3D_t position; + HeadingSlice_t viewAngle; + MUTCDCode_t *mutcdCode; /* OPTIONAL */ + MsgCRC_t *crc; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RoadSignID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RoadSignID; +extern asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1; +extern asn_TYPE_member_t asn_MBR_RoadSignID_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadSignID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h new file mode 100644 index 000000000..b44368332 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RoadwayCrownAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _RoadwayCrownAngle_H_ +#define _RoadwayCrownAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* RoadwayCrownAngle */ +typedef long RoadwayCrownAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle; +asn_struct_free_f RoadwayCrownAngle_free; +asn_struct_print_f RoadwayCrownAngle_print; +asn_constr_check_f RoadwayCrownAngle_constraint; +ber_type_decoder_f RoadwayCrownAngle_decode_ber; +der_type_encoder_f RoadwayCrownAngle_encode_der; +xer_type_decoder_f RoadwayCrownAngle_decode_xer; +xer_type_encoder_f RoadwayCrownAngle_encode_xer; +oer_type_decoder_f RoadwayCrownAngle_decode_oer; +oer_type_encoder_f RoadwayCrownAngle_encode_oer; +per_type_decoder_f RoadwayCrownAngle_decode_uper; +per_type_encoder_f RoadwayCrownAngle_encode_uper; +per_type_decoder_f RoadwayCrownAngle_decode_aper; +per_type_encoder_f RoadwayCrownAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RoadwayCrownAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h new file mode 100644 index 000000000..5326257bd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollDetected_H_ +#define _RollDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RollDetected */ +typedef long RollDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollDetected; +asn_struct_free_f RollDetected_free; +asn_struct_print_f RollDetected_print; +asn_constr_check_f RollDetected_constraint; +ber_type_decoder_f RollDetected_decode_ber; +der_type_encoder_f RollDetected_encode_der; +xer_type_decoder_f RollDetected_decode_xer; +xer_type_encoder_f RollDetected_encode_xer; +oer_type_decoder_f RollDetected_decode_oer; +oer_type_encoder_f RollDetected_encode_oer; +per_type_decoder_f RollDetected_decode_uper; +per_type_encoder_f RollDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h new file mode 100644 index 000000000..86d4d3b25 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRate.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollRate_H_ +#define _RollRate_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RollRate */ +typedef long RollRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollRate; +asn_struct_free_f RollRate_free; +asn_struct_print_f RollRate_print; +asn_constr_check_f RollRate_constraint; +ber_type_decoder_f RollRate_decode_ber; +der_type_encoder_f RollRate_encode_der; +xer_type_decoder_f RollRate_decode_xer; +xer_type_encoder_f RollRate_encode_xer; +oer_type_decoder_f RollRate_decode_oer; +oer_type_encoder_f RollRate_encode_oer; +per_type_decoder_f RollRate_decode_uper; +per_type_encoder_f RollRate_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollRate_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h new file mode 100644 index 000000000..9fbfec7fd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/RollRateConfidence.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _RollRateConfidence_H_ +#define _RollRateConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RollRateConfidence { + RollRateConfidence_unavailable = 0, + RollRateConfidence_degSec_100_00 = 1, + RollRateConfidence_degSec_010_00 = 2, + RollRateConfidence_degSec_005_00 = 3, + RollRateConfidence_degSec_001_00 = 4, + RollRateConfidence_degSec_000_10 = 5, + RollRateConfidence_degSec_000_05 = 6, + RollRateConfidence_degSec_000_01 = 7 +} e_RollRateConfidence; + +/* RollRateConfidence */ +typedef long RollRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RollRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1; +asn_struct_free_f RollRateConfidence_free; +asn_struct_print_f RollRateConfidence_print; +asn_constr_check_f RollRateConfidence_constraint; +ber_type_decoder_f RollRateConfidence_decode_ber; +der_type_encoder_f RollRateConfidence_encode_der; +xer_type_decoder_f RollRateConfidence_decode_xer; +xer_type_encoder_f RollRateConfidence_encode_xer; +oer_type_decoder_f RollRateConfidence_decode_oer; +oer_type_encoder_f RollRateConfidence_encode_oer; +per_type_decoder_f RollRateConfidence_decode_uper; +per_type_encoder_f RollRateConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RollRateConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h new file mode 100644 index 000000000..484f4a152 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SPAT.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SPAT_H_ +#define _SPAT_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DescriptiveName.h" +#include "IntersectionStateList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* SPAT */ +typedef struct SPAT { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DescriptiveName_t *name; /* OPTIONAL */ + IntersectionStateList_t intersections; + struct SPAT__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SPAT_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SPAT; +extern asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1; +extern asn_TYPE_member_t asn_MBR_SPAT_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SPAT_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h new file mode 100644 index 000000000..418e7aa78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SSPindex.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SSPindex_H_ +#define _SSPindex_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SSPindex */ +typedef long SSPindex_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SSPindex_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SSPindex; +asn_struct_free_f SSPindex_free; +asn_struct_print_f SSPindex_print; +asn_constr_check_f SSPindex_constraint; +ber_type_decoder_f SSPindex_decode_ber; +der_type_encoder_f SSPindex_encode_der; +xer_type_decoder_f SSPindex_decode_xer; +xer_type_encoder_f SSPindex_encode_xer; +oer_type_decoder_f SSPindex_decode_oer; +oer_type_encoder_f SSPindex_encode_oer; +per_type_decoder_f SSPindex_decode_uper; +per_type_encoder_f SSPindex_encode_uper; +per_type_decoder_f SSPindex_decode_aper; +per_type_encoder_f SSPindex_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SSPindex_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h new file mode 100644 index 000000000..f109fe0c5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Sample.h @@ -0,0 +1,41 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Sample_H_ +#define _Sample_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Sample */ +typedef struct Sample { + long sampleStart; + long sampleEnd; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Sample_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Sample; +extern asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1; +extern asn_TYPE_member_t asn_MBR_Sample_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Sample_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h new file mode 100644 index 000000000..554a09567 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Scale-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Scale_B12_H_ +#define _Scale_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Scale-B12 */ +typedef long Scale_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Scale_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Scale_B12; +asn_struct_free_f Scale_B12_free; +asn_struct_print_f Scale_B12_print; +asn_constr_check_f Scale_B12_constraint; +ber_type_decoder_f Scale_B12_decode_ber; +der_type_encoder_f Scale_B12_encode_der; +xer_type_decoder_f Scale_B12_decode_xer; +xer_type_encoder_f Scale_B12_encode_xer; +oer_type_decoder_f Scale_B12_decode_oer; +oer_type_encoder_f Scale_B12_encode_oer; +per_type_decoder_f Scale_B12_decode_uper; +per_type_encoder_f Scale_B12_encode_uper; +per_type_decoder_f Scale_B12_decode_aper; +per_type_encoder_f Scale_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Scale_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h new file mode 100644 index 000000000..e05936375 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Schedule.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _Schedule_H_ +#define _Schedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "INTEGER.h" +#include "BOOLEAN.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RepeatParams; +struct DaySchedule; + +/* Schedule */ +typedef struct Schedule { + INTEGER_t start; + INTEGER_t end; + struct Schedule__dow { + A_SEQUENCE_OF(BOOLEAN_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } dow; + struct Schedule__between { + A_SEQUENCE_OF(struct DaySchedule) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *between; + struct RepeatParams *repeat; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Schedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Schedule; +extern asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1; +extern asn_TYPE_member_t asn_MBR_Schedule_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RepeatParams.h" +#include "DaySchedule.h" + +#endif /* _Schedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SeatCount.h new file mode 100644 index 000000000..165ab16df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/Second.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h new file mode 100644 index 000000000..63b2e27df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Second.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Second_H_ +#define _Second_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Second */ +typedef long Second_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Second_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Second; +asn_struct_free_f Second_free; +asn_struct_print_f Second_print; +asn_constr_check_f Second_constraint; +ber_type_decoder_f Second_decode_ber; +der_type_encoder_f Second_encode_der; +xer_type_decoder_f Second_decode_xer; +xer_type_encoder_f Second_encode_xer; +oer_type_decoder_f Second_decode_oer; +oer_type_encoder_f Second_encode_oer; +per_type_decoder_f Second_decode_uper; +per_type_encoder_f Second_encode_uper; +per_type_decoder_f Second_decode_aper; +per_type_encoder_f Second_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Second_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h new file mode 100644 index 000000000..8763b4cee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondOfTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SecondOfTime_H_ +#define _SecondOfTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondOfTime */ +typedef long SecondOfTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondOfTime; +asn_struct_free_f SecondOfTime_free; +asn_struct_print_f SecondOfTime_print; +asn_constr_check_f SecondOfTime_constraint; +ber_type_decoder_f SecondOfTime_decode_ber; +der_type_encoder_f SecondOfTime_encode_der; +xer_type_decoder_f SecondOfTime_decode_xer; +xer_type_encoder_f SecondOfTime_encode_xer; +oer_type_decoder_f SecondOfTime_decode_oer; +oer_type_encoder_f SecondOfTime_encode_oer; +per_type_decoder_f SecondOfTime_decode_uper; +per_type_encoder_f SecondOfTime_encode_uper; +per_type_decoder_f SecondOfTime_decode_aper; +per_type_encoder_f SecondOfTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondOfTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h new file mode 100644 index 000000000..e64559f3d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SecondsAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SecondsAngle_H_ +#define _SecondsAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SecondsAngle */ +typedef long SecondsAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SecondsAngle; +asn_struct_free_f SecondsAngle_free; +asn_struct_print_f SecondsAngle_print; +asn_constr_check_f SecondsAngle_constraint; +ber_type_decoder_f SecondsAngle_decode_ber; +der_type_encoder_f SecondsAngle_encode_der; +xer_type_decoder_f SecondsAngle_decode_xer; +xer_type_encoder_f SecondsAngle_encode_xer; +oer_type_decoder_f SecondsAngle_decode_oer; +oer_type_encoder_f SecondsAngle_encode_oer; +per_type_decoder_f SecondsAngle_decode_uper; +per_type_encoder_f SecondsAngle_encode_uper; +per_type_decoder_f SecondsAngle_decode_aper; +per_type_encoder_f SecondsAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SecondsAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h new file mode 100644 index 000000000..9684f00d6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLL.h @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SegmentAttributeLL_H_ +#define _SegmentAttributeLL_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeLL { + SegmentAttributeLL_reserved = 0, + SegmentAttributeLL_doNotBlock = 1, + SegmentAttributeLL_whiteLine = 2, + SegmentAttributeLL_mergingLaneLeft = 3, + SegmentAttributeLL_mergingLaneRight = 4, + SegmentAttributeLL_curbOnLeft = 5, + SegmentAttributeLL_curbOnRight = 6, + SegmentAttributeLL_loadingzoneOnLeft = 7, + SegmentAttributeLL_loadingzoneOnRight = 8, + SegmentAttributeLL_turnOutPointOnLeft = 9, + SegmentAttributeLL_turnOutPointOnRight = 10, + SegmentAttributeLL_adjacentParkingOnLeft = 11, + SegmentAttributeLL_adjacentParkingOnRight = 12, + SegmentAttributeLL_adjacentBikeLaneOnLeft = 13, + SegmentAttributeLL_adjacentBikeLaneOnRight = 14, + SegmentAttributeLL_sharedBikeLane = 15, + SegmentAttributeLL_bikeBoxInFront = 16, + SegmentAttributeLL_transitStopOnLeft = 17, + SegmentAttributeLL_transitStopOnRight = 18, + SegmentAttributeLL_transitStopInLane = 19, + SegmentAttributeLL_sharedWithTrackedVehicle = 20, + SegmentAttributeLL_safeIsland = 21, + SegmentAttributeLL_lowCurbsPresent = 22, + SegmentAttributeLL_rumbleStripPresent = 23, + SegmentAttributeLL_audibleSignalingPresent = 24, + SegmentAttributeLL_adaptiveTimingPresent = 25, + SegmentAttributeLL_rfSignalRequestPresent = 26, + SegmentAttributeLL_partialCurbIntrusion = 27, + SegmentAttributeLL_taperToLeft = 28, + SegmentAttributeLL_taperToRight = 29, + SegmentAttributeLL_taperToCenterLine = 30, + SegmentAttributeLL_parallelParking = 31, + SegmentAttributeLL_headInParking = 32, + SegmentAttributeLL_freeParking = 33, + SegmentAttributeLL_timeRestrictionsOnParking = 34, + SegmentAttributeLL_costToPark = 35, + SegmentAttributeLL_midBlockCurbPresent = 36, + SegmentAttributeLL_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeLL; + +/* SegmentAttributeLL */ +typedef long SegmentAttributeLL_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1; +asn_struct_free_f SegmentAttributeLL_free; +asn_struct_print_f SegmentAttributeLL_print; +asn_constr_check_f SegmentAttributeLL_constraint; +ber_type_decoder_f SegmentAttributeLL_decode_ber; +der_type_encoder_f SegmentAttributeLL_encode_der; +xer_type_decoder_f SegmentAttributeLL_decode_xer; +xer_type_encoder_f SegmentAttributeLL_encode_xer; +oer_type_decoder_f SegmentAttributeLL_decode_oer; +oer_type_encoder_f SegmentAttributeLL_encode_oer; +per_type_decoder_f SegmentAttributeLL_decode_uper; +per_type_encoder_f SegmentAttributeLL_encode_uper; +per_type_decoder_f SegmentAttributeLL_decode_aper; +per_type_encoder_f SegmentAttributeLL_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLL_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h new file mode 100644 index 000000000..27184759d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeLLList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SegmentAttributeLLList_H_ +#define _SegmentAttributeLLList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeLL.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeLLList */ +typedef struct SegmentAttributeLLList { + A_SEQUENCE_OF(SegmentAttributeLL_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeLLList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeLLList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h new file mode 100644 index 000000000..78412f1fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXY.h @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SegmentAttributeXY_H_ +#define _SegmentAttributeXY_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SegmentAttributeXY { + SegmentAttributeXY_reserved = 0, + SegmentAttributeXY_doNotBlock = 1, + SegmentAttributeXY_whiteLine = 2, + SegmentAttributeXY_mergingLaneLeft = 3, + SegmentAttributeXY_mergingLaneRight = 4, + SegmentAttributeXY_curbOnLeft = 5, + SegmentAttributeXY_curbOnRight = 6, + SegmentAttributeXY_loadingzoneOnLeft = 7, + SegmentAttributeXY_loadingzoneOnRight = 8, + SegmentAttributeXY_turnOutPointOnLeft = 9, + SegmentAttributeXY_turnOutPointOnRight = 10, + SegmentAttributeXY_adjacentParkingOnLeft = 11, + SegmentAttributeXY_adjacentParkingOnRight = 12, + SegmentAttributeXY_adjacentBikeLaneOnLeft = 13, + SegmentAttributeXY_adjacentBikeLaneOnRight = 14, + SegmentAttributeXY_sharedBikeLane = 15, + SegmentAttributeXY_bikeBoxInFront = 16, + SegmentAttributeXY_transitStopOnLeft = 17, + SegmentAttributeXY_transitStopOnRight = 18, + SegmentAttributeXY_transitStopInLane = 19, + SegmentAttributeXY_sharedWithTrackedVehicle = 20, + SegmentAttributeXY_safeIsland = 21, + SegmentAttributeXY_lowCurbsPresent = 22, + SegmentAttributeXY_rumbleStripPresent = 23, + SegmentAttributeXY_audibleSignalingPresent = 24, + SegmentAttributeXY_adaptiveTimingPresent = 25, + SegmentAttributeXY_rfSignalRequestPresent = 26, + SegmentAttributeXY_partialCurbIntrusion = 27, + SegmentAttributeXY_taperToLeft = 28, + SegmentAttributeXY_taperToRight = 29, + SegmentAttributeXY_taperToCenterLine = 30, + SegmentAttributeXY_parallelParking = 31, + SegmentAttributeXY_headInParking = 32, + SegmentAttributeXY_freeParking = 33, + SegmentAttributeXY_timeRestrictionsOnParking = 34, + SegmentAttributeXY_costToPark = 35, + SegmentAttributeXY_midBlockCurbPresent = 36, + SegmentAttributeXY_unEvenPavementPresent = 37 + /* + * Enumeration is extensible + */ +} e_SegmentAttributeXY; + +/* SegmentAttributeXY */ +typedef long SegmentAttributeXY_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY; +extern const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1; +asn_struct_free_f SegmentAttributeXY_free; +asn_struct_print_f SegmentAttributeXY_print; +asn_constr_check_f SegmentAttributeXY_constraint; +ber_type_decoder_f SegmentAttributeXY_decode_ber; +der_type_encoder_f SegmentAttributeXY_encode_der; +xer_type_decoder_f SegmentAttributeXY_decode_xer; +xer_type_encoder_f SegmentAttributeXY_encode_xer; +oer_type_decoder_f SegmentAttributeXY_decode_oer; +oer_type_encoder_f SegmentAttributeXY_encode_oer; +per_type_decoder_f SegmentAttributeXY_decode_uper; +per_type_encoder_f SegmentAttributeXY_encode_uper; +per_type_decoder_f SegmentAttributeXY_decode_aper; +per_type_encoder_f SegmentAttributeXY_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXY_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h new file mode 100644 index 000000000..0f7d31e89 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SegmentAttributeXYList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SegmentAttributeXYList_H_ +#define _SegmentAttributeXYList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SegmentAttributeXY.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SegmentAttributeXYList */ +typedef struct SegmentAttributeXYList { + A_SEQUENCE_OF(SegmentAttributeXY_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SegmentAttributeXYList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList; +extern asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1; +extern asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[1]; +extern asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SegmentAttributeXYList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h new file mode 100644 index 000000000..695d729a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisAccuracy.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SemiMajorAxisAccuracy_H_ +#define _SemiMajorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisAccuracy */ +typedef long SemiMajorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy; +asn_struct_free_f SemiMajorAxisAccuracy_free; +asn_struct_print_f SemiMajorAxisAccuracy_print; +asn_constr_check_f SemiMajorAxisAccuracy_constraint; +ber_type_decoder_f SemiMajorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMajorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMajorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMajorAxisAccuracy_encode_xer; +oer_type_decoder_f SemiMajorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMajorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMajorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMajorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMajorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h new file mode 100644 index 000000000..a7598878b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMajorAxisOrientation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SemiMajorAxisOrientation_H_ +#define _SemiMajorAxisOrientation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMajorAxisOrientation */ +typedef long SemiMajorAxisOrientation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation; +asn_struct_free_f SemiMajorAxisOrientation_free; +asn_struct_print_f SemiMajorAxisOrientation_print; +asn_constr_check_f SemiMajorAxisOrientation_constraint; +ber_type_decoder_f SemiMajorAxisOrientation_decode_ber; +der_type_encoder_f SemiMajorAxisOrientation_encode_der; +xer_type_decoder_f SemiMajorAxisOrientation_decode_xer; +xer_type_encoder_f SemiMajorAxisOrientation_encode_xer; +oer_type_decoder_f SemiMajorAxisOrientation_decode_oer; +oer_type_encoder_f SemiMajorAxisOrientation_encode_oer; +per_type_decoder_f SemiMajorAxisOrientation_decode_uper; +per_type_encoder_f SemiMajorAxisOrientation_encode_uper; +per_type_decoder_f SemiMajorAxisOrientation_decode_aper; +per_type_encoder_f SemiMajorAxisOrientation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMajorAxisOrientation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h new file mode 100644 index 000000000..0b696b25d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SemiMinorAxisAccuracy.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SemiMinorAxisAccuracy_H_ +#define _SemiMinorAxisAccuracy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SemiMinorAxisAccuracy */ +typedef long SemiMinorAxisAccuracy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy; +asn_struct_free_f SemiMinorAxisAccuracy_free; +asn_struct_print_f SemiMinorAxisAccuracy_print; +asn_constr_check_f SemiMinorAxisAccuracy_constraint; +ber_type_decoder_f SemiMinorAxisAccuracy_decode_ber; +der_type_encoder_f SemiMinorAxisAccuracy_encode_der; +xer_type_decoder_f SemiMinorAxisAccuracy_decode_xer; +xer_type_encoder_f SemiMinorAxisAccuracy_encode_xer; +oer_type_decoder_f SemiMinorAxisAccuracy_decode_oer; +oer_type_encoder_f SemiMinorAxisAccuracy_encode_oer; +per_type_decoder_f SemiMinorAxisAccuracy_decode_uper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_uper; +per_type_decoder_f SemiMinorAxisAccuracy_decode_aper; +per_type_encoder_f SemiMinorAxisAccuracy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SemiMinorAxisAccuracy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h new file mode 100644 index 000000000..5a4d08db2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SensorDataSharingMessage.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SensorDataSharingMessage_H_ +#define _SensorDataSharingMessage_H_ + + +#include + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "TemporaryID.h" +#include "EquipmentType.h" +#include "DDateTime.h" +#include "Position3D.h" +#include "PositionalAccuracy.h" +#include "ElevationConfidence.h" +#include "DetectedObjectList.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SensorDataSharingMessage */ +typedef struct SensorDataSharingMessage { + DSRC_MsgCount_t msgCnt; + TemporaryID_t sourceID; + EquipmentType_t equipmentType; + DDateTime_t sDSMTimeStamp; + Position3D_t refPos; + PositionalAccuracy_t refPosXYConf; + ElevationConfidence_t *refPosElConf /* OPTIONAL */; + DetectedObjectList_t objects; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SensorDataSharingMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SensorDataSharingMessage_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h new file mode 100644 index 000000000..f6fcf5033 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ShapePointSet.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ShapePointSet_H_ +#define _ShapePointSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "LaneWidth.h" +#include "DirectionOfUse.h" +#include "NodeListXY.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Position3D; + +/* ShapePointSet */ +typedef struct ShapePointSet { + struct Position3D *anchor; /* OPTIONAL */ + LaneWidth_t *laneWidth; /* OPTIONAL */ + DirectionOfUse_t *directionality; /* OPTIONAL */ + NodeListXY_t nodeList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ShapePointSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ShapePointSet; +extern asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1; +extern asn_TYPE_member_t asn_MBR_ShapePointSet_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Position3D.h" + +#endif /* _ShapePointSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h new file mode 100644 index 000000000..92fe6b018 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignPrority.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignPrority_H_ +#define _SignPrority_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignPrority */ +typedef long SignPrority_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignPrority_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignPrority; +asn_struct_free_f SignPrority_free; +asn_struct_print_f SignPrority_print; +asn_constr_check_f SignPrority_constraint; +ber_type_decoder_f SignPrority_decode_ber; +der_type_encoder_f SignPrority_encode_der; +xer_type_decoder_f SignPrority_decode_xer; +xer_type_encoder_f SignPrority_encode_xer; +oer_type_decoder_f SignPrority_decode_oer; +oer_type_encoder_f SignPrority_encode_oer; +per_type_decoder_f SignPrority_decode_uper; +per_type_encoder_f SignPrority_encode_uper; +per_type_decoder_f SignPrority_decode_aper; +per_type_encoder_f SignPrority_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignPrority_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h new file mode 100644 index 000000000..872070a3c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalControlZone.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalControlZone_H_ +#define _SignalControlZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "RegionalExtension.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalControlZone */ +typedef struct SignalControlZone { + Reg_BasicSafetyMessage_t zone; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalControlZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalControlZone; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalControlZone_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalControlZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h new file mode 100644 index 000000000..25f977690 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalGroupID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalGroupID_H_ +#define _SignalGroupID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalGroupID */ +typedef long SignalGroupID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SignalGroupID; +asn_struct_free_f SignalGroupID_free; +asn_struct_print_f SignalGroupID_print; +asn_constr_check_f SignalGroupID_constraint; +ber_type_decoder_f SignalGroupID_decode_ber; +der_type_encoder_f SignalGroupID_encode_der; +xer_type_decoder_f SignalGroupID_decode_xer; +xer_type_encoder_f SignalGroupID_encode_xer; +oer_type_decoder_f SignalGroupID_decode_oer; +oer_type_encoder_f SignalGroupID_encode_oer; +per_type_decoder_f SignalGroupID_decode_uper; +per_type_encoder_f SignalGroupID_encode_uper; +per_type_decoder_f SignalGroupID_decode_aper; +per_type_encoder_f SignalGroupID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalGroupID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h new file mode 100644 index 000000000..b4d22021a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalHeadLocation_H_ +#define _SignalHeadLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NodeOffsetPointXY.h" +#include "SignalGroupID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalHeadLocation */ +typedef struct SignalHeadLocation { + NodeOffsetPointXY_t node; + SignalGroupID_t signalGroupID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalHeadLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h new file mode 100644 index 000000000..c44a5f457 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalHeadLocationList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalHeadLocationList_H_ +#define _SignalHeadLocationList_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 SignalHeadLocation; + +/* SignalHeadLocationList */ +typedef struct SignalHeadLocationList { + A_SEQUENCE_OF(struct SignalHeadLocation) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalHeadLocationList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList; +extern asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalHeadLocation.h" + +#endif /* _SignalHeadLocationList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h new file mode 100644 index 000000000..8d35f517c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalReqScheme.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalReqScheme_H_ +#define _SignalReqScheme_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SignalReqScheme */ +typedef OCTET_STRING_t SignalReqScheme_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalReqScheme; +asn_struct_free_f SignalReqScheme_free; +asn_struct_print_f SignalReqScheme_print; +asn_constr_check_f SignalReqScheme_constraint; +ber_type_decoder_f SignalReqScheme_decode_ber; +der_type_encoder_f SignalReqScheme_encode_der; +xer_type_decoder_f SignalReqScheme_decode_xer; +xer_type_encoder_f SignalReqScheme_encode_xer; +oer_type_decoder_f SignalReqScheme_decode_oer; +oer_type_encoder_f SignalReqScheme_encode_oer; +per_type_decoder_f SignalReqScheme_decode_uper; +per_type_encoder_f SignalReqScheme_encode_uper; +per_type_decoder_f SignalReqScheme_decode_aper; +per_type_encoder_f SignalReqScheme_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SignalReqScheme_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h new file mode 100644 index 000000000..671eb3ada --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequest.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalRequest_H_ +#define _SignalRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionReferenceID.h" +#include "RequestID.h" +#include "PriorityRequestType.h" +#include "IntersectionAccessPoint.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct IntersectionAccessPoint; +struct Reg_BasicSafetyMessage; + +/* SignalRequest */ +typedef struct SignalRequest { + IntersectionReferenceID_t id; + RequestID_t requestID; + PriorityRequestType_t requestType; + IntersectionAccessPoint_t inBoundLane; + struct IntersectionAccessPoint *outBoundLane; /* OPTIONAL */ + struct SignalRequest__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequest_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" + +#endif /* _SignalRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h new file mode 100644 index 000000000..84bf74f73 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalRequestList_H_ +#define _SignalRequestList_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 SignalRequestPackage; + +/* SignalRequestList */ +typedef struct SignalRequestList { + A_SEQUENCE_OF(struct SignalRequestPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestList; +extern asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequestPackage.h" + +#endif /* _SignalRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h new file mode 100644 index 000000000..936fb5cd2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestMessage.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalRequestMessage_H_ +#define _SignalRequestMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "DSRC_MsgCount.h" +#include "RequestorDescription.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequestList; +struct Reg_BasicSafetyMessage; + +/* SignalRequestMessage */ +typedef struct SignalRequestMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + DSRC_MsgCount_t *sequenceNumber; /* OPTIONAL */ + struct SignalRequestList *requests; /* OPTIONAL */ + RequestorDescription_t requestor; + struct SignalRequestMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalRequestMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequestList.h" +#include "RegionalExtension.h" + +#endif /* _SignalRequestMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h new file mode 100644 index 000000000..1ca5fe0e3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequestPackage.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalRequestPackage_H_ +#define _SignalRequestPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SignalRequest.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* SignalRequestPackage */ +typedef struct SignalRequestPackage { + SignalRequest_t request; + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + struct SignalRequestPackage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalRequestPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalRequestPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h new file mode 100644 index 000000000..13ce41038 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalRequesterInfo.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalRequesterInfo_H_ +#define _SignalRequesterInfo_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleID.h" +#include "RequestID.h" +#include "DSRC_MsgCount.h" +#include "BasicVehicleRole.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RequestorType; + +/* SignalRequesterInfo */ +typedef struct SignalRequesterInfo { + VehicleID_t id; + RequestID_t request; + DSRC_MsgCount_t sequenceNumber; + BasicVehicleRole_t *role; /* OPTIONAL */ + struct RequestorType *typeData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalRequesterInfo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RequestorType.h" + +#endif /* _SignalRequesterInfo_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h new file mode 100644 index 000000000..657943018 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatus.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalStatus_H_ +#define _SignalStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "IntersectionReferenceID.h" +#include "SignalStatusPackageList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* SignalStatus */ +typedef struct SignalStatus { + DSRC_MsgCount_t sequenceNumber; + IntersectionReferenceID_t id; + SignalStatusPackageList_t sigStatus; + struct SignalStatus__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatus_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h new file mode 100644 index 000000000..0893ab609 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalStatusList_H_ +#define _SignalStatusList_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 SignalStatus; + +/* SignalStatusList */ +typedef struct SignalStatusList { + A_SEQUENCE_OF(struct SignalStatus) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalStatus.h" + +#endif /* _SignalStatusList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h new file mode 100644 index 000000000..8e8229cde --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusMessage.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalStatusMessage_H_ +#define _SignalStatusMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "DSRC_MsgCount.h" +#include "SignalStatusList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* SignalStatusMessage */ +typedef struct SignalStatusMessage { + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + DSecond_t second; + DSRC_MsgCount_t *sequenceNumber; /* OPTIONAL */ + SignalStatusList_t status; + struct SignalStatusMessage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalStatusMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _SignalStatusMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h new file mode 100644 index 000000000..bfade5473 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackage.h @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalStatusPackage_H_ +#define _SignalStatusPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IntersectionAccessPoint.h" +#include "MinuteOfTheYear.h" +#include "DSecond.h" +#include "PrioritizationResponseStatus.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SignalRequesterInfo; +struct IntersectionAccessPoint; +struct Reg_BasicSafetyMessage; + +/* SignalStatusPackage */ +typedef struct SignalStatusPackage { + struct SignalRequesterInfo *requester; /* OPTIONAL */ + IntersectionAccessPoint_t inboundOn; + struct IntersectionAccessPoint *outboundOn; /* OPTIONAL */ + MinuteOfTheYear_t *minute; /* OPTIONAL */ + DSecond_t *second; /* OPTIONAL */ + DSecond_t *duration; /* OPTIONAL */ + PrioritizationResponseStatus_t status; + struct SignalStatusPackage__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SignalStatusPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[8]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalRequesterInfo.h" +#include "IntersectionAccessPoint.h" +#include "RegionalExtension.h" + +#endif /* _SignalStatusPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h new file mode 100644 index 000000000..998de1e0c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SignalStatusPackageList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SignalStatusPackageList_H_ +#define _SignalStatusPackageList_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 SignalStatusPackage; + +/* SignalStatusPackageList */ +typedef struct SignalStatusPackageList { + A_SEQUENCE_OF(struct SignalStatusPackage) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SignalStatusPackageList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList; +extern asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1; +extern asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[1]; +extern asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "SignalStatusPackage.h" + +#endif /* _SignalStatusPackageList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h new file mode 100644 index 000000000..0f5652418 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SirenInUse.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SirenInUse_H_ +#define _SirenInUse_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SirenInUse { + SirenInUse_unavailable = 0, + SirenInUse_notInUse = 1, + SirenInUse_inUse = 2, + SirenInUse_reserved = 3 +} e_SirenInUse; + +/* SirenInUse */ +typedef long SirenInUse_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SirenInUse_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SirenInUse; +extern const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1; +asn_struct_free_f SirenInUse_free; +asn_struct_print_f SirenInUse_print; +asn_constr_check_f SirenInUse_constraint; +ber_type_decoder_f SirenInUse_decode_ber; +der_type_encoder_f SirenInUse_encode_der; +xer_type_decoder_f SirenInUse_decode_xer; +xer_type_encoder_f SirenInUse_encode_xer; +oer_type_decoder_f SirenInUse_decode_oer; +oer_type_encoder_f SirenInUse_encode_oer; +per_type_decoder_f SirenInUse_decode_uper; +per_type_encoder_f SirenInUse_encode_uper; +per_type_decoder_f SirenInUse_decode_aper; +per_type_encoder_f SirenInUse_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SirenInUse_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h new file mode 100644 index 000000000..7b35e76ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValue.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SizeValue_H_ +#define _SizeValue_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SizeValue */ +typedef long SizeValue_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SizeValue_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SizeValue; +asn_struct_free_f SizeValue_free; +asn_struct_print_f SizeValue_print; +asn_constr_check_f SizeValue_constraint; +ber_type_decoder_f SizeValue_decode_ber; +der_type_encoder_f SizeValue_encode_der; +xer_type_decoder_f SizeValue_decode_xer; +xer_type_encoder_f SizeValue_encode_xer; +oer_type_decoder_f SizeValue_decode_oer; +oer_type_encoder_f SizeValue_encode_oer; +per_type_decoder_f SizeValue_decode_uper; +per_type_encoder_f SizeValue_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SizeValue_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h new file mode 100644 index 000000000..b719b5570 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SizeValueConfidence.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _SizeValueConfidence_H_ +#define _SizeValueConfidence_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SizeValueConfidence { + SizeValueConfidence_unavailable = 0, + SizeValueConfidence_size_100_00 = 1, + SizeValueConfidence_size_050_00 = 2, + SizeValueConfidence_size_020_00 = 3, + SizeValueConfidence_size_010_00 = 4, + SizeValueConfidence_size_005_00 = 5, + SizeValueConfidence_size_002_00 = 6, + SizeValueConfidence_size_001_00 = 7, + SizeValueConfidence_size_000_50 = 8, + SizeValueConfidence_size_000_20 = 9, + SizeValueConfidence_size_000_10 = 10, + SizeValueConfidence_size_000_05 = 11, + SizeValueConfidence_size_000_02 = 12, + SizeValueConfidence_size_000_01 = 13 +} e_SizeValueConfidence; + +/* SizeValueConfidence */ +typedef long SizeValueConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1; +asn_struct_free_f SizeValueConfidence_free; +asn_struct_print_f SizeValueConfidence_print; +asn_constr_check_f SizeValueConfidence_constraint; +ber_type_decoder_f SizeValueConfidence_decode_ber; +der_type_encoder_f SizeValueConfidence_encode_der; +xer_type_decoder_f SizeValueConfidence_decode_xer; +xer_type_encoder_f SizeValueConfidence_encode_xer; +oer_type_decoder_f SizeValueConfidence_decode_oer; +oer_type_encoder_f SizeValueConfidence_encode_oer; +per_type_decoder_f SizeValueConfidence_decode_uper; +per_type_encoder_f SizeValueConfidence_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SizeValueConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h new file mode 100644 index 000000000..064db9f78 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Snapshot.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Snapshot_H_ +#define _Snapshot_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "FullPositionVector.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleSafetyExtensions; +struct VehicleStatus; + +/* Snapshot */ +typedef struct Snapshot { + FullPositionVector_t thePosition; + struct VehicleSafetyExtensions *safetyExt; /* OPTIONAL */ + struct VehicleStatus *dataSet; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Snapshot_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Snapshot; +extern asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1; +extern asn_TYPE_member_t asn_MBR_Snapshot_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleSafetyExtensions.h" +#include "VehicleStatus.h" + +#endif /* _Snapshot_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h new file mode 100644 index 000000000..3e10e580b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotDistance.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SnapshotDistance_H_ +#define _SnapshotDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossDistance.h" +#include "GrossSpeed.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotDistance */ +typedef struct SnapshotDistance { + GrossDistance_t distance1; + GrossSpeed_t speed1; + GrossDistance_t distance2; + GrossSpeed_t speed2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotDistance_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotDistance; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotDistance_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h new file mode 100644 index 000000000..044385102 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SnapshotTime.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SnapshotTime_H_ +#define _SnapshotTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" +#include "SecondOfTime.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SnapshotTime */ +typedef struct SnapshotTime { + GrossSpeed_t speed1; + SecondOfTime_t time1; + GrossSpeed_t speed2; + SecondOfTime_t time2; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SnapshotTime_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SnapshotTime; +extern asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1; +extern asn_TYPE_member_t asn_MBR_SnapshotTime_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SnapshotTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h new file mode 100644 index 000000000..18bdb403f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpecialVehicleExtensions.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SpecialVehicleExtensions_H_ +#define _SpecialVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EmergencyDetails; +struct EventDescription; +struct TrailerData; + +/* SpecialVehicleExtensions */ +typedef struct SpecialVehicleExtensions { + struct EmergencyDetails *vehicleAlerts; /* OPTIONAL */ + struct EventDescription *description; /* OPTIONAL */ + struct TrailerData *trailers; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpecialVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "EmergencyDetails.h" +#include "EventDescription.h" +#include "TrailerData.h" + +#endif /* _SpecialVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h new file mode 100644 index 000000000..cc26f0d53 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Speed.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Speed_H_ +#define _Speed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Speed */ +typedef long Speed_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Speed_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Speed; +asn_struct_free_f Speed_free; +asn_struct_print_f Speed_print; +asn_constr_check_f Speed_constraint; +ber_type_decoder_f Speed_decode_ber; +der_type_encoder_f Speed_encode_der; +xer_type_decoder_f Speed_decode_xer; +xer_type_encoder_f Speed_encode_xer; +oer_type_decoder_f Speed_decode_oer; +oer_type_encoder_f Speed_encode_oer; +per_type_decoder_f Speed_decode_uper; +per_type_encoder_f Speed_encode_uper; +per_type_decoder_f Speed_decode_aper; +per_type_encoder_f Speed_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Speed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h new file mode 100644 index 000000000..7c0984a49 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedAdvice.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedAdvice_H_ +#define _SpeedAdvice_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedAdvice */ +typedef long SpeedAdvice_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedAdvice; +asn_struct_free_f SpeedAdvice_free; +asn_struct_print_f SpeedAdvice_print; +asn_constr_check_f SpeedAdvice_constraint; +ber_type_decoder_f SpeedAdvice_decode_ber; +der_type_encoder_f SpeedAdvice_encode_der; +xer_type_decoder_f SpeedAdvice_decode_xer; +xer_type_encoder_f SpeedAdvice_encode_xer; +oer_type_decoder_f SpeedAdvice_decode_oer; +oer_type_encoder_f SpeedAdvice_encode_oer; +per_type_decoder_f SpeedAdvice_decode_uper; +per_type_encoder_f SpeedAdvice_encode_uper; +per_type_decoder_f SpeedAdvice_decode_aper; +per_type_encoder_f SpeedAdvice_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedAdvice_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h new file mode 100644 index 000000000..6f116f33e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedConfidence_H_ +#define _SpeedConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedConfidence { + SpeedConfidence_unavailable = 0, + SpeedConfidence_prec100ms = 1, + SpeedConfidence_prec10ms = 2, + SpeedConfidence_prec5ms = 3, + SpeedConfidence_prec1ms = 4, + SpeedConfidence_prec0_1ms = 5, + SpeedConfidence_prec0_05ms = 6, + SpeedConfidence_prec0_01ms = 7 +} e_SpeedConfidence; + +/* SpeedConfidence */ +typedef long SpeedConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1; +asn_struct_free_f SpeedConfidence_free; +asn_struct_print_f SpeedConfidence_print; +asn_constr_check_f SpeedConfidence_constraint; +ber_type_decoder_f SpeedConfidence_decode_ber; +der_type_encoder_f SpeedConfidence_encode_der; +xer_type_decoder_f SpeedConfidence_decode_xer; +xer_type_encoder_f SpeedConfidence_encode_xer; +oer_type_decoder_f SpeedConfidence_decode_oer; +oer_type_encoder_f SpeedConfidence_encode_oer; +per_type_decoder_f SpeedConfidence_decode_uper; +per_type_encoder_f SpeedConfidence_encode_uper; +per_type_decoder_f SpeedConfidence_decode_aper; +per_type_encoder_f SpeedConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h new file mode 100644 index 000000000..2599afe50 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimit.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedLimit_H_ +#define _SpeedLimit_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimit__Member__item_PR { + SpeedLimit__Member__item_PR_NOTHING, /* No components present */ + SpeedLimit__Member__item_PR_itis, + SpeedLimit__Member__item_PR_text +} SpeedLimit__Member__item_PR; + +/* Forward definitions */ +typedef struct SpeedLimit__Member { + struct SpeedLimit__Member__item { + SpeedLimit__Member__item_PR present; + union SpeedLimit__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit__Member; + +/* SpeedLimit */ +typedef struct SpeedLimit { + A_SEQUENCE_OF(SpeedLimit__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimit_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimit; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimit_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimit_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h new file mode 100644 index 000000000..637c48c2c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedLimitList_H_ +#define _SpeedLimitList_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 RegulatorySpeedLimit; + +/* SpeedLimitList */ +typedef struct SpeedLimitList { + A_SEQUENCE_OF(struct RegulatorySpeedLimit) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedLimitList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedLimitList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegulatorySpeedLimit.h" + +#endif /* _SpeedLimitList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h new file mode 100644 index 000000000..fc3229f9d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedLimitType.h @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedLimitType_H_ +#define _SpeedLimitType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SpeedLimitType { + SpeedLimitType_unknown = 0, + SpeedLimitType_maxSpeedInSchoolZone = 1, + SpeedLimitType_maxSpeedInSchoolZoneWhenChildrenArePresent = 2, + SpeedLimitType_maxSpeedInConstructionZone = 3, + SpeedLimitType_vehicleMinSpeed = 4, + SpeedLimitType_vehicleMaxSpeed = 5, + SpeedLimitType_vehicleNightMaxSpeed = 6, + SpeedLimitType_truckMinSpeed = 7, + SpeedLimitType_truckMaxSpeed = 8, + SpeedLimitType_truckNightMaxSpeed = 9, + SpeedLimitType_vehiclesWithTrailersMinSpeed = 10, + SpeedLimitType_vehiclesWithTrailersMaxSpeed = 11, + SpeedLimitType_vehiclesWithTrailersNightMaxSpeed = 12 + /* + * Enumeration is extensible + */ +} e_SpeedLimitType; + +/* SpeedLimitType */ +typedef long SpeedLimitType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedLimitType; +extern const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1; +asn_struct_free_f SpeedLimitType_free; +asn_struct_print_f SpeedLimitType_print; +asn_constr_check_f SpeedLimitType_constraint; +ber_type_decoder_f SpeedLimitType_decode_ber; +der_type_encoder_f SpeedLimitType_encode_der; +xer_type_decoder_f SpeedLimitType_decode_xer; +xer_type_encoder_f SpeedLimitType_encode_xer; +oer_type_decoder_f SpeedLimitType_decode_oer; +oer_type_encoder_f SpeedLimitType_encode_oer; +per_type_decoder_f SpeedLimitType_decode_uper; +per_type_encoder_f SpeedLimitType_encode_uper; +per_type_decoder_f SpeedLimitType_decode_aper; +per_type_encoder_f SpeedLimitType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedLimitType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h new file mode 100644 index 000000000..6ccaa60d4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfile.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedProfile_H_ +#define _SpeedProfile_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurementList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfile */ +typedef struct SpeedProfile { + SpeedProfileMeasurementList_t speedReports; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfile_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfile; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfile_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfile_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h new file mode 100644 index 000000000..4e86eccd7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurement.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedProfileMeasurement_H_ +#define _SpeedProfileMeasurement_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "GrossSpeed.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurement */ +typedef GrossSpeed_t SpeedProfileMeasurement_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement; +asn_struct_free_f SpeedProfileMeasurement_free; +asn_struct_print_f SpeedProfileMeasurement_print; +asn_constr_check_f SpeedProfileMeasurement_constraint; +ber_type_decoder_f SpeedProfileMeasurement_decode_ber; +der_type_encoder_f SpeedProfileMeasurement_encode_der; +xer_type_decoder_f SpeedProfileMeasurement_decode_xer; +xer_type_encoder_f SpeedProfileMeasurement_encode_xer; +oer_type_decoder_f SpeedProfileMeasurement_decode_oer; +oer_type_encoder_f SpeedProfileMeasurement_encode_oer; +per_type_decoder_f SpeedProfileMeasurement_decode_uper; +per_type_encoder_f SpeedProfileMeasurement_encode_uper; +per_type_decoder_f SpeedProfileMeasurement_decode_aper; +per_type_encoder_f SpeedProfileMeasurement_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurement_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h new file mode 100644 index 000000000..508ae694e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedProfileMeasurementList.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedProfileMeasurementList_H_ +#define _SpeedProfileMeasurementList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SpeedProfileMeasurement.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedProfileMeasurementList */ +typedef struct SpeedProfileMeasurementList { + A_SEQUENCE_OF(SpeedProfileMeasurement_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedProfileMeasurementList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList; +extern asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[1]; +extern asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedProfileMeasurementList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h new file mode 100644 index 000000000..2efa2234b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SpeedandHeadingandThrottleConfidence.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SpeedandHeadingandThrottleConfidence_H_ +#define _SpeedandHeadingandThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingConfidence.h" +#include "SpeedConfidence.h" +#include "ThrottleConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SpeedandHeadingandThrottleConfidence */ +typedef struct SpeedandHeadingandThrottleConfidence { + HeadingConfidence_t heading; + SpeedConfidence_t speed; + ThrottleConfidence_t throttle; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SpeedandHeadingandThrottleConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _SpeedandHeadingandThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h new file mode 100644 index 000000000..076654413 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/StabilityControlStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _StabilityControlStatus_H_ +#define _StabilityControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum StabilityControlStatus { + StabilityControlStatus_unavailable = 0, + StabilityControlStatus_off = 1, + StabilityControlStatus_on = 2, + StabilityControlStatus_engaged = 3 +} e_StabilityControlStatus; + +/* StabilityControlStatus */ +typedef long StabilityControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1; +asn_struct_free_f StabilityControlStatus_free; +asn_struct_print_f StabilityControlStatus_print; +asn_constr_check_f StabilityControlStatus_constraint; +ber_type_decoder_f StabilityControlStatus_decode_ber; +der_type_encoder_f StabilityControlStatus_encode_der; +xer_type_decoder_f StabilityControlStatus_decode_xer; +xer_type_encoder_f StabilityControlStatus_encode_xer; +oer_type_decoder_f StabilityControlStatus_decode_oer; +oer_type_encoder_f StabilityControlStatus_encode_oer; +per_type_decoder_f StabilityControlStatus_decode_uper; +per_type_encoder_f StabilityControlStatus_encode_uper; +per_type_decoder_f StabilityControlStatus_decode_aper; +per_type_encoder_f StabilityControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StabilityControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h new file mode 100644 index 000000000..66ebd295c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/StationID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _StationID_H_ +#define _StationID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* StationID */ +typedef unsigned long StationID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_StationID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_StationID; +extern const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1; +asn_struct_free_f StationID_free; +asn_struct_print_f StationID_print; +asn_constr_check_f StationID_constraint; +ber_type_decoder_f StationID_decode_ber; +der_type_encoder_f StationID_encode_der; +xer_type_decoder_f StationID_decode_xer; +xer_type_encoder_f StationID_encode_xer; +oer_type_decoder_f StationID_decode_oer; +oer_type_encoder_f StationID_encode_oer; +per_type_decoder_f StationID_decode_uper; +per_type_encoder_f StationID_encode_uper; +per_type_decoder_f StationID_decode_aper; +per_type_encoder_f StationID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _StationID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h new file mode 100644 index 000000000..fa44e8b96 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleLubePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SteeringAxleLubePressure_H_ +#define _SteeringAxleLubePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleLubePressure */ +typedef long SteeringAxleLubePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure; +asn_struct_free_f SteeringAxleLubePressure_free; +asn_struct_print_f SteeringAxleLubePressure_print; +asn_constr_check_f SteeringAxleLubePressure_constraint; +ber_type_decoder_f SteeringAxleLubePressure_decode_ber; +der_type_encoder_f SteeringAxleLubePressure_encode_der; +xer_type_decoder_f SteeringAxleLubePressure_decode_xer; +xer_type_encoder_f SteeringAxleLubePressure_encode_xer; +oer_type_decoder_f SteeringAxleLubePressure_decode_oer; +oer_type_encoder_f SteeringAxleLubePressure_encode_oer; +per_type_decoder_f SteeringAxleLubePressure_decode_uper; +per_type_encoder_f SteeringAxleLubePressure_encode_uper; +per_type_decoder_f SteeringAxleLubePressure_decode_aper; +per_type_encoder_f SteeringAxleLubePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleLubePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h new file mode 100644 index 000000000..7baa2408f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringAxleTemperature.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SteeringAxleTemperature_H_ +#define _SteeringAxleTemperature_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringAxleTemperature */ +typedef long SteeringAxleTemperature_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature; +asn_struct_free_f SteeringAxleTemperature_free; +asn_struct_print_f SteeringAxleTemperature_print; +asn_constr_check_f SteeringAxleTemperature_constraint; +ber_type_decoder_f SteeringAxleTemperature_decode_ber; +der_type_encoder_f SteeringAxleTemperature_encode_der; +xer_type_decoder_f SteeringAxleTemperature_decode_xer; +xer_type_encoder_f SteeringAxleTemperature_encode_xer; +oer_type_decoder_f SteeringAxleTemperature_decode_oer; +oer_type_encoder_f SteeringAxleTemperature_encode_oer; +per_type_decoder_f SteeringAxleTemperature_decode_uper; +per_type_encoder_f SteeringAxleTemperature_encode_uper; +per_type_decoder_f SteeringAxleTemperature_decode_aper; +per_type_encoder_f SteeringAxleTemperature_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringAxleTemperature_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h new file mode 100644 index 000000000..54e2770e2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngle.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SteeringWheelAngle_H_ +#define _SteeringWheelAngle_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngle */ +typedef long SteeringWheelAngle_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle; +asn_struct_free_f SteeringWheelAngle_free; +asn_struct_print_f SteeringWheelAngle_print; +asn_constr_check_f SteeringWheelAngle_constraint; +ber_type_decoder_f SteeringWheelAngle_decode_ber; +der_type_encoder_f SteeringWheelAngle_encode_der; +xer_type_decoder_f SteeringWheelAngle_decode_xer; +xer_type_encoder_f SteeringWheelAngle_encode_xer; +oer_type_decoder_f SteeringWheelAngle_decode_oer; +oer_type_encoder_f SteeringWheelAngle_encode_oer; +per_type_decoder_f SteeringWheelAngle_decode_uper; +per_type_encoder_f SteeringWheelAngle_encode_uper; +per_type_decoder_f SteeringWheelAngle_decode_aper; +per_type_encoder_f SteeringWheelAngle_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngle_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h new file mode 100644 index 000000000..a2c38b08e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleConfidence.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SteeringWheelAngleConfidence_H_ +#define _SteeringWheelAngleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SteeringWheelAngleConfidence { + SteeringWheelAngleConfidence_unavailable = 0, + SteeringWheelAngleConfidence_prec2deg = 1, + SteeringWheelAngleConfidence_prec1deg = 2, + SteeringWheelAngleConfidence_prec0_02deg = 3 +} e_SteeringWheelAngleConfidence; + +/* SteeringWheelAngleConfidence */ +typedef long SteeringWheelAngleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1; +asn_struct_free_f SteeringWheelAngleConfidence_free; +asn_struct_print_f SteeringWheelAngleConfidence_print; +asn_constr_check_f SteeringWheelAngleConfidence_constraint; +ber_type_decoder_f SteeringWheelAngleConfidence_decode_ber; +der_type_encoder_f SteeringWheelAngleConfidence_encode_der; +xer_type_decoder_f SteeringWheelAngleConfidence_decode_xer; +xer_type_encoder_f SteeringWheelAngleConfidence_encode_xer; +oer_type_decoder_f SteeringWheelAngleConfidence_decode_oer; +oer_type_encoder_f SteeringWheelAngleConfidence_encode_oer; +per_type_decoder_f SteeringWheelAngleConfidence_decode_uper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_uper; +per_type_decoder_f SteeringWheelAngleConfidence_decode_aper; +per_type_encoder_f SteeringWheelAngleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h new file mode 100644 index 000000000..7c6e8648f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SteeringWheelAngleRateOfChange.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SteeringWheelAngleRateOfChange_H_ +#define _SteeringWheelAngleRateOfChange_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SteeringWheelAngleRateOfChange */ +typedef long SteeringWheelAngleRateOfChange_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange; +asn_struct_free_f SteeringWheelAngleRateOfChange_free; +asn_struct_print_f SteeringWheelAngleRateOfChange_print; +asn_constr_check_f SteeringWheelAngleRateOfChange_constraint; +ber_type_decoder_f SteeringWheelAngleRateOfChange_decode_ber; +der_type_encoder_f SteeringWheelAngleRateOfChange_encode_der; +xer_type_decoder_f SteeringWheelAngleRateOfChange_decode_xer; +xer_type_encoder_f SteeringWheelAngleRateOfChange_encode_xer; +oer_type_decoder_f SteeringWheelAngleRateOfChange_decode_oer; +oer_type_encoder_f SteeringWheelAngleRateOfChange_encode_oer; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_uper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_uper; +per_type_decoder_f SteeringWheelAngleRateOfChange_decode_aper; +per_type_encoder_f SteeringWheelAngleRateOfChange_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SteeringWheelAngleRateOfChange_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h new file mode 100644 index 000000000..b3817ca2f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SummerTime.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SummerTime_H_ +#define _SummerTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum SummerTime { + SummerTime_notInSummerTime = 0, + SummerTime_inSummerTime = 1 +} e_SummerTime; + +/* SummerTime */ +typedef long SummerTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SummerTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SummerTime; +extern const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1; +asn_struct_free_f SummerTime_free; +asn_struct_print_f SummerTime_print; +asn_constr_check_f SummerTime_constraint; +ber_type_decoder_f SummerTime_decode_ber; +der_type_encoder_f SummerTime_encode_der; +xer_type_decoder_f SummerTime_decode_xer; +xer_type_encoder_f SummerTime_encode_xer; +oer_type_decoder_f SummerTime_decode_oer; +oer_type_encoder_f SummerTime_encode_oer; +per_type_decoder_f SummerTime_decode_uper; +per_type_encoder_f SummerTime_encode_uper; +per_type_decoder_f SummerTime_decode_aper; +per_type_encoder_f SummerTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SummerTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h new file mode 100644 index 000000000..e5449f7fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SunSensor.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _SunSensor_H_ +#define _SunSensor_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SunSensor */ +typedef long SunSensor_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SunSensor_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SunSensor; +asn_struct_free_f SunSensor_free; +asn_struct_print_f SunSensor_print; +asn_constr_check_f SunSensor_constraint; +ber_type_decoder_f SunSensor_decode_ber; +der_type_encoder_f SunSensor_encode_der; +xer_type_decoder_f SunSensor_decode_xer; +xer_type_encoder_f SunSensor_encode_xer; +oer_type_decoder_f SunSensor_decode_oer; +oer_type_encoder_f SunSensor_encode_oer; +per_type_decoder_f SunSensor_decode_uper; +per_type_encoder_f SunSensor_encode_uper; +per_type_decoder_f SunSensor_decode_aper; +per_type_encoder_f SunSensor_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SunSensor_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h new file mode 100644 index 000000000..957361098 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/SupplementalVehicleExtensions.h @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _SupplementalVehicleExtensions_H_ +#define _SupplementalVehicleExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct VehicleClassification; +struct VehicleData; +struct WeatherReport; +struct WeatherProbe; +struct ObstacleDetection; +struct DisabledVehicle; +struct SpeedProfile; +struct RTCMPackage; +struct Reg_BasicSafetyMessage; + +/* SupplementalVehicleExtensions */ +typedef struct SupplementalVehicleExtensions { + BasicVehicleClass_t *classification; /* OPTIONAL */ + struct VehicleClassification *classDetails; /* OPTIONAL */ + struct VehicleData *vehicleData; /* OPTIONAL */ + struct WeatherReport *weatherReport; /* OPTIONAL */ + struct WeatherProbe *weatherProbe; /* OPTIONAL */ + struct ObstacleDetection *obstacle; /* OPTIONAL */ + struct DisabledVehicle *status; /* OPTIONAL */ + struct SpeedProfile *speedProfile; /* OPTIONAL */ + struct RTCMPackage *theRTCM; /* OPTIONAL */ + struct SupplementalVehicleExtensions__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} SupplementalVehicleExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[10]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleClassification.h" +#include "VehicleData.h" +#include "WeatherReport.h" +#include "WeatherProbe.h" +#include "ObstacleDetection.h" +#include "DisabledVehicle.h" +#include "SpeedProfile.h" +#include "RTCMPackage.h" +#include "RegionalExtension.h" + +#endif /* _SupplementalVehicleExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/T61String.h new file mode 100644 index 000000000..27f7cc6d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/TeletexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TeletexString.h new file mode 100644 index 000000000..59d0ef79c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/TemporaryID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h new file mode 100644 index 000000000..35a7f3fe4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TemporaryID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TemporaryID_H_ +#define _TemporaryID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TemporaryID */ +typedef OCTET_STRING_t TemporaryID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TemporaryID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TemporaryID; +asn_struct_free_f TemporaryID_free; +asn_struct_print_f TemporaryID_print; +asn_constr_check_f TemporaryID_constraint; +ber_type_decoder_f TemporaryID_decode_ber; +der_type_encoder_f TemporaryID_encode_der; +xer_type_decoder_f TemporaryID_decode_xer; +xer_type_encoder_f TemporaryID_encode_xer; +oer_type_decoder_f TemporaryID_decode_oer; +oer_type_encoder_f TemporaryID_encode_oer; +per_type_decoder_f TemporaryID_decode_uper; +per_type_encoder_f TemporaryID_encode_uper; +per_type_decoder_f TemporaryID_decode_aper; +per_type_encoder_f TemporaryID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TemporaryID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h new file mode 100644 index 000000000..152e69bae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TenthSecond.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TenthSecond_H_ +#define _TenthSecond_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TenthSecond */ +typedef long TenthSecond_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TenthSecond_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TenthSecond; +asn_struct_free_f TenthSecond_free; +asn_struct_print_f TenthSecond_print; +asn_constr_check_f TenthSecond_constraint; +ber_type_decoder_f TenthSecond_decode_ber; +der_type_encoder_f TenthSecond_encode_der; +xer_type_decoder_f TenthSecond_decode_xer; +xer_type_encoder_f TenthSecond_encode_xer; +oer_type_decoder_f TenthSecond_decode_oer; +oer_type_encoder_f TenthSecond_encode_oer; +per_type_decoder_f TenthSecond_decode_uper; +per_type_encoder_f TenthSecond_encode_uper; +per_type_decoder_f TenthSecond_decode_aper; +per_type_encoder_f TenthSecond_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TenthSecond_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h new file mode 100644 index 000000000..0dafc2785 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermDistance.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TermDistance_H_ +#define _TermDistance_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermDistance */ +typedef long TermDistance_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermDistance_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermDistance; +asn_struct_free_f TermDistance_free; +asn_struct_print_f TermDistance_print; +asn_constr_check_f TermDistance_constraint; +ber_type_decoder_f TermDistance_decode_ber; +der_type_encoder_f TermDistance_encode_der; +xer_type_decoder_f TermDistance_decode_xer; +xer_type_encoder_f TermDistance_encode_xer; +oer_type_decoder_f TermDistance_decode_oer; +oer_type_encoder_f TermDistance_encode_oer; +per_type_decoder_f TermDistance_decode_uper; +per_type_encoder_f TermDistance_encode_uper; +per_type_decoder_f TermDistance_decode_aper; +per_type_encoder_f TermDistance_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermDistance_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h new file mode 100644 index 000000000..f1bd4cfc3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TermTime.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TermTime_H_ +#define _TermTime_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TermTime */ +typedef long TermTime_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TermTime_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TermTime; +asn_struct_free_f TermTime_free; +asn_struct_print_f TermTime_print; +asn_constr_check_f TermTime_constraint; +ber_type_decoder_f TermTime_decode_ber; +der_type_encoder_f TermTime_encode_der; +xer_type_decoder_f TermTime_decode_xer; +xer_type_encoder_f TermTime_encode_xer; +oer_type_decoder_f TermTime_decode_oer; +oer_type_encoder_f TermTime_encode_oer; +per_type_decoder_f TermTime_decode_uper; +per_type_encoder_f TermTime_encode_uper; +per_type_decoder_f TermTime_decode_aper; +per_type_encoder_f TermTime_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TermTime_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h new file mode 100644 index 000000000..a420a7fd3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage00.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage00_H_ +#define _TestMessage00_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityRequest.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +// struct Header; +// struct Reg_BasicSafetyMessage; + +/* TestMessage00 */ +typedef struct TestMessage00 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityRequest_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage00_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage00; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage00_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +// #include "Header.h" +// #include "RegionalExtension.h" + +#endif /* _TestMessage00_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h new file mode 100644 index 000000000..31f0bf377 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage01.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage01_H_ +#define _TestMessage01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityResponse.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +// struct Header; +// struct Reg_BasicSafetyMessage; + +/* TestMessage01 */ +typedef struct TestMessage01 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityResponse_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage01; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage01_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +// #include "Header.h" +// #include "RegionalExtension.h" + +#endif /* _TestMessage01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h new file mode 100644 index 000000000..1010456d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage02.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage02_H_ +#define _TestMessage02_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityPath.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +/* TestMessage02 */ +typedef struct TestMessage02 { + MobilityHeader_t header; /* OPTIONAL */ + MobilityPath_t body; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage02_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage02; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage02_1[2]; + +#ifdef __cplusplus +} +#endif + + +#endif /* _TestMessage02_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h new file mode 100644 index 000000000..9037ab733 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage03.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TestMessage03_H_ +#define _TestMessage03_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityHeader.h" +#include "MobilityOperation.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage03 */ +typedef struct TestMessage03 { + MobilityHeader_t header; + MobilityOperation_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage03_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage03; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage03_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage03_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h new file mode 100644 index 000000000..49bd4749b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage04.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage04_H_ +#define _TestMessage04_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlRequest.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage04 */ +typedef struct TestMessage04 { + TrafficControlRequest_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage04_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage04; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage04_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage04_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h new file mode 100644 index 000000000..1f59196ef --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage05.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage05_H_ +#define _TestMessage05_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlMessage.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TestMessage05 */ +typedef struct TestMessage05 { + TrafficControlMessage_t body; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage05_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage05; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage05_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TestMessage05_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h new file mode 100644 index 000000000..4b807ad71 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage06.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage06_H_ +#define _TestMessage06_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage06 */ +typedef struct TestMessage06 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage06_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage06; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage06_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage06_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h new file mode 100644 index 000000000..902a90c94 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage07.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage07_H_ +#define _TestMessage07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage07 */ +typedef struct TestMessage07 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage07_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage07; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage07_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h new file mode 100644 index 000000000..aaa4633cb --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage08.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage08_H_ +#define _TestMessage08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage08 */ +typedef struct TestMessage08 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage08_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage08; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage08_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h new file mode 100644 index 000000000..317d05a2d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage09.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage09_H_ +#define _TestMessage09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage09 */ +typedef struct TestMessage09 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage09_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage09; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage09_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h new file mode 100644 index 000000000..b4be46ed5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage10.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage10_H_ +#define _TestMessage10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage10 */ +typedef struct TestMessage10 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage10_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage10; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage10_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h new file mode 100644 index 000000000..38ac44dd7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage11.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage11_H_ +#define _TestMessage11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage11 */ +typedef struct TestMessage11 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage11_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage11; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage11_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h new file mode 100644 index 000000000..6078daae4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage12.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage12_H_ +#define _TestMessage12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage12 */ +typedef struct TestMessage12 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage12_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage12; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage12_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h new file mode 100644 index 000000000..659e64717 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage13.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage13_H_ +#define _TestMessage13_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage13 */ +typedef struct TestMessage13 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage13_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage13; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage13_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage13_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h new file mode 100644 index 000000000..f8b33ddc4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage14.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage14_H_ +#define _TestMessage14_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage14 */ +typedef struct TestMessage14 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage14_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage14; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage14_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage14_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h new file mode 100644 index 000000000..843a92289 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TestMessage15.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TestMessage15_H_ +#define _TestMessage15_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Header; +struct Reg_BasicSafetyMessage; + +/* TestMessage15 */ +typedef struct TestMessage15 { + struct Header *header; /* OPTIONAL */ + struct Reg_BasicSafetyMessage *regional; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TestMessage15_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TestMessage15; +extern asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1; +extern asn_TYPE_member_t asn_MBR_TestMessage15_1[2]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Header.h" +#include "RegionalExtension.h" + +#endif /* _TestMessage15_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h new file mode 100644 index 000000000..2ef0c8b54 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottleConfidence.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ThrottleConfidence_H_ +#define _ThrottleConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ThrottleConfidence { + ThrottleConfidence_unavailable = 0, + ThrottleConfidence_prec10percent = 1, + ThrottleConfidence_prec1percent = 2, + ThrottleConfidence_prec0_5percent = 3 +} e_ThrottleConfidence; + +/* ThrottleConfidence */ +typedef long ThrottleConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1; +asn_struct_free_f ThrottleConfidence_free; +asn_struct_print_f ThrottleConfidence_print; +asn_constr_check_f ThrottleConfidence_constraint; +ber_type_decoder_f ThrottleConfidence_decode_ber; +der_type_encoder_f ThrottleConfidence_encode_der; +xer_type_decoder_f ThrottleConfidence_decode_xer; +xer_type_encoder_f ThrottleConfidence_encode_xer; +oer_type_decoder_f ThrottleConfidence_decode_oer; +oer_type_encoder_f ThrottleConfidence_encode_oer; +per_type_decoder_f ThrottleConfidence_decode_uper; +per_type_encoder_f ThrottleConfidence_encode_uper; +per_type_decoder_f ThrottleConfidence_decode_aper; +per_type_encoder_f ThrottleConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottleConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h new file mode 100644 index 000000000..ca06d4f65 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ThrottlePosition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ThrottlePosition_H_ +#define _ThrottlePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ThrottlePosition */ +typedef long ThrottlePosition_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ThrottlePosition; +asn_struct_free_f ThrottlePosition_free; +asn_struct_print_f ThrottlePosition_print; +asn_constr_check_f ThrottlePosition_constraint; +ber_type_decoder_f ThrottlePosition_decode_ber; +der_type_encoder_f ThrottlePosition_encode_der; +xer_type_decoder_f ThrottlePosition_decode_xer; +xer_type_encoder_f ThrottlePosition_encode_xer; +oer_type_decoder_f ThrottlePosition_decode_oer; +oer_type_encoder_f ThrottlePosition_encode_oer; +per_type_decoder_f ThrottlePosition_decode_uper; +per_type_encoder_f ThrottlePosition_encode_uper; +per_type_decoder_f ThrottlePosition_decode_aper; +per_type_encoder_f ThrottlePosition_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ThrottlePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h new file mode 100644 index 000000000..67d768e98 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeChangeDetails.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TimeChangeDetails_H_ +#define _TimeChangeDetails_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_TimeMark.h" +#include "TimeIntervalConfidence.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeChangeDetails */ +typedef struct TimeChangeDetails { + DSRC_TimeMark_t *startTime; /* OPTIONAL */ + DSRC_TimeMark_t minEndTime; + DSRC_TimeMark_t *maxEndTime; /* OPTIONAL */ + DSRC_TimeMark_t *likelyTime; /* OPTIONAL */ + TimeIntervalConfidence_t *confidence; /* OPTIONAL */ + DSRC_TimeMark_t *nextTime; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TimeChangeDetails_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails; +extern asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1; +extern asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeChangeDetails_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h new file mode 100644 index 000000000..efeae747a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeConfidence.h @@ -0,0 +1,91 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TimeConfidence_H_ +#define _TimeConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TimeConfidence { + TimeConfidence_unavailable = 0, + TimeConfidence_time_100_000 = 1, + TimeConfidence_time_050_000 = 2, + TimeConfidence_time_020_000 = 3, + TimeConfidence_time_010_000 = 4, + TimeConfidence_time_002_000 = 5, + TimeConfidence_time_001_000 = 6, + TimeConfidence_time_000_500 = 7, + TimeConfidence_time_000_200 = 8, + TimeConfidence_time_000_100 = 9, + TimeConfidence_time_000_050 = 10, + TimeConfidence_time_000_020 = 11, + TimeConfidence_time_000_010 = 12, + TimeConfidence_time_000_005 = 13, + TimeConfidence_time_000_002 = 14, + TimeConfidence_time_000_001 = 15, + TimeConfidence_time_000_000_5 = 16, + TimeConfidence_time_000_000_2 = 17, + TimeConfidence_time_000_000_1 = 18, + TimeConfidence_time_000_000_05 = 19, + TimeConfidence_time_000_000_02 = 20, + TimeConfidence_time_000_000_01 = 21, + TimeConfidence_time_000_000_005 = 22, + TimeConfidence_time_000_000_002 = 23, + TimeConfidence_time_000_000_001 = 24, + TimeConfidence_time_000_000_000_5 = 25, + TimeConfidence_time_000_000_000_2 = 26, + TimeConfidence_time_000_000_000_1 = 27, + TimeConfidence_time_000_000_000_05 = 28, + TimeConfidence_time_000_000_000_02 = 29, + TimeConfidence_time_000_000_000_01 = 30, + TimeConfidence_time_000_000_000_005 = 31, + TimeConfidence_time_000_000_000_002 = 32, + TimeConfidence_time_000_000_000_001 = 33, + TimeConfidence_time_000_000_000_000_5 = 34, + TimeConfidence_time_000_000_000_000_2 = 35, + TimeConfidence_time_000_000_000_000_1 = 36, + TimeConfidence_time_000_000_000_000_05 = 37, + TimeConfidence_time_000_000_000_000_02 = 38, + TimeConfidence_time_000_000_000_000_01 = 39 +} e_TimeConfidence; + +/* TimeConfidence */ +typedef long TimeConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1; +asn_struct_free_f TimeConfidence_free; +asn_struct_print_f TimeConfidence_print; +asn_constr_check_f TimeConfidence_constraint; +ber_type_decoder_f TimeConfidence_decode_ber; +der_type_encoder_f TimeConfidence_encode_der; +xer_type_decoder_f TimeConfidence_decode_xer; +xer_type_encoder_f TimeConfidence_encode_xer; +oer_type_decoder_f TimeConfidence_decode_oer; +oer_type_encoder_f TimeConfidence_encode_oer; +per_type_decoder_f TimeConfidence_decode_uper; +per_type_encoder_f TimeConfidence_encode_uper; +per_type_decoder_f TimeConfidence_decode_aper; +per_type_encoder_f TimeConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h new file mode 100644 index 000000000..b43e60794 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeIntervalConfidence.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TimeIntervalConfidence_H_ +#define _TimeIntervalConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeIntervalConfidence */ +typedef long TimeIntervalConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence; +asn_struct_free_f TimeIntervalConfidence_free; +asn_struct_print_f TimeIntervalConfidence_print; +asn_constr_check_f TimeIntervalConfidence_constraint; +ber_type_decoder_f TimeIntervalConfidence_decode_ber; +der_type_encoder_f TimeIntervalConfidence_encode_der; +xer_type_decoder_f TimeIntervalConfidence_decode_xer; +xer_type_encoder_f TimeIntervalConfidence_encode_xer; +oer_type_decoder_f TimeIntervalConfidence_decode_oer; +oer_type_encoder_f TimeIntervalConfidence_encode_oer; +per_type_decoder_f TimeIntervalConfidence_decode_uper; +per_type_encoder_f TimeIntervalConfidence_encode_uper; +per_type_decoder_f TimeIntervalConfidence_decode_aper; +per_type_encoder_f TimeIntervalConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeIntervalConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h new file mode 100644 index 000000000..76f17cdc7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeOffset.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TimeOffset_H_ +#define _TimeOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeOffset */ +typedef long TimeOffset_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeOffset_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeOffset; +asn_struct_free_f TimeOffset_free; +asn_struct_print_f TimeOffset_print; +asn_constr_check_f TimeOffset_constraint; +ber_type_decoder_f TimeOffset_decode_ber; +der_type_encoder_f TimeOffset_encode_der; +xer_type_decoder_f TimeOffset_decode_xer; +xer_type_encoder_f TimeOffset_encode_xer; +oer_type_decoder_f TimeOffset_decode_oer; +oer_type_encoder_f TimeOffset_encode_oer; +per_type_decoder_f TimeOffset_decode_uper; +per_type_encoder_f TimeOffset_encode_uper; +per_type_decoder_f TimeOffset_decode_aper; +per_type_encoder_f TimeOffset_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h new file mode 100644 index 000000000..0b5add3a8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TimeRemaining.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TimeRemaining_H_ +#define _TimeRemaining_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TimeRemaining */ +typedef long TimeRemaining_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TimeRemaining; +asn_struct_free_f TimeRemaining_free; +asn_struct_print_f TimeRemaining_print; +asn_constr_check_f TimeRemaining_constraint; +ber_type_decoder_f TimeRemaining_decode_ber; +der_type_encoder_f TimeRemaining_encode_der; +xer_type_decoder_f TimeRemaining_decode_xer; +xer_type_encoder_f TimeRemaining_encode_xer; +oer_type_decoder_f TimeRemaining_decode_oer; +oer_type_encoder_f TimeRemaining_encode_oer; +per_type_decoder_f TimeRemaining_decode_uper; +per_type_encoder_f TimeRemaining_encode_uper; +per_type_decoder_f TimeRemaining_decode_aper; +per_type_encoder_f TimeRemaining_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TimeRemaining_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h new file mode 100644 index 000000000..4f5a61e8b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireData.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TireData_H_ +#define _TireData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TireLocation.h" +#include "TirePressure.h" +#include "TireTemp.h" +#include "WheelSensorStatus.h" +#include "WheelEndElectFault.h" +#include "TireLeakageRate.h" +#include "TirePressureThresholdDetection.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireData */ +typedef struct TireData { + TireLocation_t *location; /* OPTIONAL */ + TirePressure_t *pressure; /* OPTIONAL */ + TireTemp_t *temp; /* OPTIONAL */ + WheelSensorStatus_t *wheelSensorStatus; /* OPTIONAL */ + WheelEndElectFault_t *wheelEndElectFault; /* OPTIONAL */ + TireLeakageRate_t *leakageRate; /* OPTIONAL */ + TirePressureThresholdDetection_t *detection; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireData; +extern asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1; +extern asn_TYPE_member_t asn_MBR_TireData_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h new file mode 100644 index 000000000..edfa9a89a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireDataList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TireDataList_H_ +#define _TireDataList_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 TireData; + +/* TireDataList */ +typedef struct TireDataList { + A_SEQUENCE_OF(struct TireData) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TireDataList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TireDataList; +extern asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1; +extern asn_TYPE_member_t asn_MBR_TireDataList_1[1]; +extern asn_per_constraints_t asn_PER_type_TireDataList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TireData.h" + +#endif /* _TireDataList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h new file mode 100644 index 000000000..966da62b2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLeakageRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TireLeakageRate_H_ +#define _TireLeakageRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLeakageRate */ +typedef long TireLeakageRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLeakageRate; +asn_struct_free_f TireLeakageRate_free; +asn_struct_print_f TireLeakageRate_print; +asn_constr_check_f TireLeakageRate_constraint; +ber_type_decoder_f TireLeakageRate_decode_ber; +der_type_encoder_f TireLeakageRate_encode_der; +xer_type_decoder_f TireLeakageRate_decode_xer; +xer_type_encoder_f TireLeakageRate_encode_xer; +oer_type_decoder_f TireLeakageRate_decode_oer; +oer_type_encoder_f TireLeakageRate_encode_oer; +per_type_decoder_f TireLeakageRate_decode_uper; +per_type_encoder_f TireLeakageRate_encode_uper; +per_type_decoder_f TireLeakageRate_decode_aper; +per_type_encoder_f TireLeakageRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLeakageRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h new file mode 100644 index 000000000..7ba534db0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireLocation.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TireLocation_H_ +#define _TireLocation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireLocation */ +typedef long TireLocation_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireLocation_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireLocation; +asn_struct_free_f TireLocation_free; +asn_struct_print_f TireLocation_print; +asn_constr_check_f TireLocation_constraint; +ber_type_decoder_f TireLocation_decode_ber; +der_type_encoder_f TireLocation_encode_der; +xer_type_decoder_f TireLocation_decode_xer; +xer_type_encoder_f TireLocation_encode_xer; +oer_type_decoder_f TireLocation_decode_oer; +oer_type_encoder_f TireLocation_encode_oer; +per_type_decoder_f TireLocation_decode_uper; +per_type_encoder_f TireLocation_encode_uper; +per_type_decoder_f TireLocation_decode_aper; +per_type_encoder_f TireLocation_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireLocation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h new file mode 100644 index 000000000..ba35fe800 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TirePressure_H_ +#define _TirePressure_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TirePressure */ +typedef long TirePressure_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressure_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressure; +asn_struct_free_f TirePressure_free; +asn_struct_print_f TirePressure_print; +asn_constr_check_f TirePressure_constraint; +ber_type_decoder_f TirePressure_decode_ber; +der_type_encoder_f TirePressure_encode_der; +xer_type_decoder_f TirePressure_decode_xer; +xer_type_encoder_f TirePressure_encode_xer; +oer_type_decoder_f TirePressure_decode_oer; +oer_type_encoder_f TirePressure_encode_oer; +per_type_decoder_f TirePressure_decode_uper; +per_type_encoder_f TirePressure_encode_uper; +per_type_decoder_f TirePressure_decode_aper; +per_type_encoder_f TirePressure_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressure_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h new file mode 100644 index 000000000..a232be801 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TirePressureThresholdDetection.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TirePressureThresholdDetection_H_ +#define _TirePressureThresholdDetection_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TirePressureThresholdDetection { + TirePressureThresholdDetection_noData = 0, + TirePressureThresholdDetection_overPressure = 1, + TirePressureThresholdDetection_noWarningPressure = 2, + TirePressureThresholdDetection_underPressure = 3, + TirePressureThresholdDetection_extremeUnderPressure = 4, + TirePressureThresholdDetection_undefined = 5, + TirePressureThresholdDetection_errorIndicator = 6, + TirePressureThresholdDetection_notAvailable = 7 +} e_TirePressureThresholdDetection; + +/* TirePressureThresholdDetection */ +typedef long TirePressureThresholdDetection_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection; +extern const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1; +asn_struct_free_f TirePressureThresholdDetection_free; +asn_struct_print_f TirePressureThresholdDetection_print; +asn_constr_check_f TirePressureThresholdDetection_constraint; +ber_type_decoder_f TirePressureThresholdDetection_decode_ber; +der_type_encoder_f TirePressureThresholdDetection_encode_der; +xer_type_decoder_f TirePressureThresholdDetection_decode_xer; +xer_type_encoder_f TirePressureThresholdDetection_encode_xer; +oer_type_decoder_f TirePressureThresholdDetection_decode_oer; +oer_type_encoder_f TirePressureThresholdDetection_encode_oer; +per_type_decoder_f TirePressureThresholdDetection_decode_uper; +per_type_encoder_f TirePressureThresholdDetection_encode_uper; +per_type_decoder_f TirePressureThresholdDetection_decode_aper; +per_type_encoder_f TirePressureThresholdDetection_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TirePressureThresholdDetection_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h new file mode 100644 index 000000000..1bfff6cdc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TireTemp.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TireTemp_H_ +#define _TireTemp_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TireTemp */ +typedef long TireTemp_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TireTemp_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TireTemp; +asn_struct_free_f TireTemp_free; +asn_struct_print_f TireTemp_print; +asn_constr_check_f TireTemp_constraint; +ber_type_decoder_f TireTemp_decode_ber; +der_type_encoder_f TireTemp_encode_der; +xer_type_decoder_f TireTemp_decode_xer; +xer_type_encoder_f TireTemp_encode_xer; +oer_type_decoder_f TireTemp_decode_oer; +oer_type_encoder_f TireTemp_encode_oer; +per_type_decoder_f TireTemp_decode_uper; +per_type_encoder_f TireTemp_encode_uper; +per_type_decoder_f TireTemp_decode_aper; +per_type_encoder_f TireTemp_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TireTemp_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h new file mode 100644 index 000000000..f3ca7280e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TractionControlStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TractionControlStatus_H_ +#define _TractionControlStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TractionControlStatus { + TractionControlStatus_unavailable = 0, + TractionControlStatus_off = 1, + TractionControlStatus_on = 2, + TractionControlStatus_engaged = 3 +} e_TractionControlStatus; + +/* TractionControlStatus */ +typedef long TractionControlStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TractionControlStatus; +extern const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1; +asn_struct_free_f TractionControlStatus_free; +asn_struct_print_f TractionControlStatus_print; +asn_constr_check_f TractionControlStatus_constraint; +ber_type_decoder_f TractionControlStatus_decode_ber; +der_type_encoder_f TractionControlStatus_encode_der; +xer_type_decoder_f TractionControlStatus_decode_xer; +xer_type_encoder_f TractionControlStatus_encode_xer; +oer_type_decoder_f TractionControlStatus_decode_oer; +oer_type_encoder_f TractionControlStatus_encode_oer; +per_type_decoder_f TractionControlStatus_decode_uper; +per_type_encoder_f TractionControlStatus_encode_uper; +per_type_decoder_f TractionControlStatus_decode_aper; +per_type_encoder_f TractionControlStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TractionControlStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h new file mode 100644 index 000000000..6bf623745 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlBounds.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlBounds_H_ +#define _TrafficControlBounds_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EpochMins.h" +#include "Longitude.h" +#include "Latitude.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct OffsetPoint; + +/* TrafficControlBounds */ +typedef struct TrafficControlBounds { + EpochMins_t oldest; + Longitude_t reflon; + Latitude_t reflat; + struct TrafficControlBounds__offsets { + A_SEQUENCE_OF(struct OffsetPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } offsets; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlBounds_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "OffsetPoint.h" + +#endif /* _TrafficControlBounds_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h new file mode 100644 index 000000000..e3bf5539c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlDetail.h @@ -0,0 +1,146 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlDetail_H_ +#define _TrafficControlDetail_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" +#include "NULL.h" +#include "NativeEnumerated.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlDetail_PR { + TrafficControlDetail_PR_NOTHING, /* No components present */ + TrafficControlDetail_PR_signal, + TrafficControlDetail_PR_stop, + TrafficControlDetail_PR_yield, + TrafficControlDetail_PR_notowing, + TrafficControlDetail_PR_restricted, + TrafficControlDetail_PR_closed, + TrafficControlDetail_PR_chains, + TrafficControlDetail_PR_direction, + TrafficControlDetail_PR_lataffinity, + TrafficControlDetail_PR_latperm, + TrafficControlDetail_PR_parking, + TrafficControlDetail_PR_minspeed, + TrafficControlDetail_PR_maxspeed, + TrafficControlDetail_PR_minhdwy, + TrafficControlDetail_PR_maxvehmass, + TrafficControlDetail_PR_maxvehheight, + TrafficControlDetail_PR_maxvehwidth, + TrafficControlDetail_PR_maxvehlength, + TrafficControlDetail_PR_maxvehaxles, + TrafficControlDetail_PR_minvehocc, + TrafficControlDetail_PR_maxplatoonsize, + TrafficControlDetail_PR_minplatoonhdwy, + /* Extensions may appear below */ + +} TrafficControlDetail_PR; +typedef enum TrafficControlDetail__closed { + TrafficControlDetail__closed_open = 0, + TrafficControlDetail__closed_closed = 1, + TrafficControlDetail__closed_taperleft = 2, + TrafficControlDetail__closed_taperright = 3, + TrafficControlDetail__closed_openleft = 4, + TrafficControlDetail__closed_openright = 5 +} e_TrafficControlDetail__closed; +typedef enum TrafficControlDetail__chains { + TrafficControlDetail__chains_no = 0, + TrafficControlDetail__chains_permitted = 1, + TrafficControlDetail__chains_required = 2 +} e_TrafficControlDetail__chains; +typedef enum TrafficControlDetail__direction { + TrafficControlDetail__direction_forward = 0, + TrafficControlDetail__direction_reverse = 1 +} e_TrafficControlDetail__direction; +typedef enum TrafficControlDetail__lataffinity { + TrafficControlDetail__lataffinity_left = 0, + TrafficControlDetail__lataffinity_right = 1 +} e_TrafficControlDetail__lataffinity; +typedef enum TrafficControlDetail__latperm__Member { + TrafficControlDetail__latperm__Member_none = 0, + TrafficControlDetail__latperm__Member_permitted = 1, + TrafficControlDetail__latperm__Member_passing_only = 2, + TrafficControlDetail__latperm__Member_emergency_only = 3 +} e_TrafficControlDetail__latperm__Member; +typedef enum TrafficControlDetail__parking { + TrafficControlDetail__parking_no = 0, + TrafficControlDetail__parking_parallel = 1, + TrafficControlDetail__parking_angled = 2 +} e_TrafficControlDetail__parking; + +/* TrafficControlDetail */ +typedef struct TrafficControlDetail { + TrafficControlDetail_PR present; + union TrafficControlDetail_u { + OCTET_STRING_t signal; + NULL_t stop; + NULL_t yield; + NULL_t notowing; + NULL_t restricted; + long closed; + long chains; + long direction; + long lataffinity; + struct TrafficControlDetail__latperm { + A_SEQUENCE_OF(long) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } latperm; + long parking; + long minspeed; + long maxspeed; + long minhdwy; + long maxvehmass; + long maxvehheight; + long maxvehwidth; + long maxvehlength; + long maxvehaxles; + long minvehocc; + long maxplatoonsize; + long minplatoonhdwy; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlDetail_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_closed_7; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_chains_14; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_direction_18; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_21; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_Member_25; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_parking_30; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[22]; +extern asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlDetail_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h new file mode 100644 index 000000000..587288aed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlGeometry.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlGeometry_H_ +#define _TrafficControlGeometry_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "EpochMins.h" +#include "Longitude.h" +#include "Latitude.h" +#include "DSRC_Elevation.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathNode; + +/* TrafficControlGeometry */ +typedef struct TrafficControlGeometry { + IA5String_t proj; + IA5String_t datum; + EpochMins_t reftime; + Longitude_t reflon; + Latitude_t reflat; + DSRC_Elevation_t refelv; + long *refwidth /* OPTIONAL */; + long heading; + struct TrafficControlGeometry__nodes { + A_SEQUENCE_OF(struct PathNode) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } nodes; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlGeometry_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathNode.h" + +#endif /* _TrafficControlGeometry_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h new file mode 100644 index 000000000..2c0d35647 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessage.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlMessage_H_ +#define _TrafficControlMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NULL.h" +#include "TrafficControlMessageV01.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlMessage_PR { + TrafficControlMessage_PR_NOTHING, /* No components present */ + TrafficControlMessage_PR_reserved, + TrafficControlMessage_PR_tcmV01 + /* Extensions may appear below */ + +} TrafficControlMessage_PR; + +/* TrafficControlMessage */ +typedef struct TrafficControlMessage { + TrafficControlMessage_PR present; + union TrafficControlMessage_u { + NULL_t reserved; + TrafficControlMessageV01_t tcmV01; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[2]; +extern asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h new file mode 100644 index 000000000..2a77214c5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlMessageV01.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlMessageV01_H_ +#define _TrafficControlMessageV01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Id64b.h" +#include "NativeInteger.h" +#include "Id128b.h" +#include "EpochMins.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TrafficControlPackage; +struct TrafficControlParams; +struct TrafficControlGeometry; + +/* TrafficControlMessageV01 */ +typedef struct TrafficControlMessageV01 { + Id64b_t reqid; + long reqseq; + long msgtot; + long msgnum; + Id128b_t id; + EpochMins_t updated; + struct TrafficControlPackage *package; /* OPTIONAL */ + struct TrafficControlParams *params; /* OPTIONAL */ + struct TrafficControlGeometry *geometry; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlMessageV01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrafficControlPackage.h" +#include "TrafficControlParams.h" +#include "TrafficControlGeometry.h" + +#endif /* _TrafficControlMessageV01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h new file mode 100644 index 000000000..e898b45f6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPackage.h @@ -0,0 +1,49 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlPackage_H_ +#define _TrafficControlPackage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" +#include "Id128b.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrafficControlPackage */ +typedef struct TrafficControlPackage { + IA5String_t *label; /* OPTIONAL */ + struct TrafficControlPackage__tcids { + A_SEQUENCE_OF(Id128b_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } tcids; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlPackage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlPackage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h new file mode 100644 index 000000000..82aa4501c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlParams.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlParams_H_ +#define _TrafficControlParams_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TrafficControlSchedule.h" +#include "BOOLEAN.h" +#include "TrafficControlDetail.h" +#include "TrafficControlVehClass.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrafficControlParams */ +typedef struct TrafficControlParams { + struct TrafficControlParams__vclasses { + A_SEQUENCE_OF(TrafficControlVehClass_t) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } vclasses; + TrafficControlSchedule_t schedule; + BOOLEAN_t regulatory; + TrafficControlDetail_t detail; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlParams_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlParams; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlParams_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlParams_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h new file mode 100644 index 000000000..c0e8eaa5e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlPathPart.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlPathPart_H_ +#define _TrafficControlPathPart_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" +#include "INTEGER.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Point; + +/* TrafficControlPathPart */ +typedef struct TrafficControlPathPart { + OCTET_STRING_t id; + INTEGER_t updated; + long pathindex; + struct TrafficControlPathPart__points { + A_SEQUENCE_OF(struct Point) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } points; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlPathPart_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "Point.h" + +#endif /* _TrafficControlPathPart_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h new file mode 100644 index 000000000..ae342fa87 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequest.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlRequest_H_ +#define _TrafficControlRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NULL.h" +#include "TrafficControlRequestV01.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlRequest_PR { + TrafficControlRequest_PR_NOTHING, /* No components present */ + TrafficControlRequest_PR_reserved, + TrafficControlRequest_PR_tcrV01 + /* Extensions may appear below */ + +} TrafficControlRequest_PR; + +/* TrafficControlRequest */ +typedef struct TrafficControlRequest { + TrafficControlRequest_PR present; + union TrafficControlRequest_u { + NULL_t reserved; + TrafficControlRequestV01_t tcrV01; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[2]; +extern asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h new file mode 100644 index 000000000..093f9d0b1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlRequestV01.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlRequestV01_H_ +#define _TrafficControlRequestV01_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Id64b.h" +#include "NativeInteger.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct TrafficControlBounds; + +/* TrafficControlRequestV01 */ +typedef struct TrafficControlRequestV01 { + Id64b_t reqid; + long reqseq; + long scale; + struct TrafficControlRequestV01__bounds { + A_SEQUENCE_OF(struct TrafficControlBounds) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } bounds; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlRequestV01_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrafficControlBounds.h" + +#endif /* _TrafficControlRequestV01_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h new file mode 100644 index 000000000..1a985b63d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlSchedule.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlSchedule_H_ +#define _TrafficControlSchedule_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EpochMins.h" +#include "DSRC_DayOfWeek.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RepeatParams; +struct DailySchedule; + +/* TrafficControlSchedule */ +typedef struct TrafficControlSchedule { + EpochMins_t start; + EpochMins_t *end; /* OPTIONAL */ + DSRC_DayOfWeek_t *dow; /* OPTIONAL */ + struct TrafficControlSchedule__between { + A_SEQUENCE_OF(struct DailySchedule) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *between; + struct RepeatParams *repeat; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlSchedule_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule; +extern asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[5]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RepeatParams.h" +#include "DailySchedule.h" + +#endif /* _TrafficControlSchedule_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h new file mode 100644 index 000000000..0bcd62292 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlType.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlType_H_ +#define _TrafficControlType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlType { + TrafficControlType_signal = 0, + TrafficControlType_stop = 1, + TrafficControlType_yield = 2, + TrafficControlType_notowing = 3, + TrafficControlType_restricted = 4, + TrafficControlType_closed = 5, + TrafficControlType_chains = 6, + TrafficControlType_direction = 7, + TrafficControlType_lataffinity = 8, + TrafficControlType_leftperm = 9, + TrafficControlType_rightperm = 10, + TrafficControlType_opening = 11, + TrafficControlType_closing = 12, + TrafficControlType_parking = 13, + TrafficControlType_minspeed = 14, + TrafficControlType_maxspeed = 15, + TrafficControlType_minhdwy = 16, + TrafficControlType_maxvehmass = 17, + TrafficControlType_maxvehheight = 18, + TrafficControlType_maxvehwidth = 19, + TrafficControlType_maxvehlength = 20, + TrafficControlType_maxaxles = 21, + TrafficControlType_minvehocc = 22 +} e_TrafficControlType; + +/* TrafficControlType */ +typedef long TrafficControlType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlType; +extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1; +asn_struct_free_f TrafficControlType_free; +asn_struct_print_f TrafficControlType_print; +asn_constr_check_f TrafficControlType_constraint; +ber_type_decoder_f TrafficControlType_decode_ber; +der_type_encoder_f TrafficControlType_encode_der; +xer_type_decoder_f TrafficControlType_decode_xer; +xer_type_encoder_f TrafficControlType_encode_xer; +oer_type_decoder_f TrafficControlType_decode_oer; +oer_type_encoder_f TrafficControlType_encode_oer; +per_type_decoder_f TrafficControlType_decode_uper; +per_type_encoder_f TrafficControlType_encode_uper; +per_type_decoder_f TrafficControlType_decode_aper; +per_type_encoder_f TrafficControlType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h new file mode 100644 index 000000000..b7f0f87c6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlValue.h @@ -0,0 +1,113 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _TrafficControlValue_H_ +#define _TrafficControlValue_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" +#include "NativeEnumerated.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlValue_PR { + TrafficControlValue_PR_NOTHING, /* No components present */ + TrafficControlValue_PR_value, + TrafficControlValue_PR_chains, + TrafficControlValue_PR_direction, + TrafficControlValue_PR_lataffinity, + TrafficControlValue_PR_leftperm, + TrafficControlValue_PR_rightperm, + TrafficControlValue_PR_opening, + TrafficControlValue_PR_closing, + TrafficControlValue_PR_parking +} TrafficControlValue_PR; +typedef enum TrafficControlValue__chains { + TrafficControlValue__chains_no = 0, + TrafficControlValue__chains_permitted = 1, + TrafficControlValue__chains_required = 2 +} e_TrafficControlValue__chains; +typedef enum TrafficControlValue__direction { + TrafficControlValue__direction_forward = 0, + TrafficControlValue__direction_reverse = 1 +} e_TrafficControlValue__direction; +typedef enum TrafficControlValue__lataffinity { + TrafficControlValue__lataffinity_left = 0, + TrafficControlValue__lataffinity_right = 1 +} e_TrafficControlValue__lataffinity; +typedef enum TrafficControlValue__leftperm { + TrafficControlValue__leftperm_none = 0, + TrafficControlValue__leftperm_permitted = 1, + TrafficControlValue__leftperm_passing_only = 2, + TrafficControlValue__leftperm_emergency_only = 3 +} e_TrafficControlValue__leftperm; +typedef enum TrafficControlValue__rightperm { + TrafficControlValue__rightperm_none = 0, + TrafficControlValue__rightperm_permitted = 1, + TrafficControlValue__rightperm_passing_only = 2, + TrafficControlValue__rightperm_emergency_only = 3 +} e_TrafficControlValue__rightperm; +typedef enum TrafficControlValue__opening { + TrafficControlValue__opening_left = 0, + TrafficControlValue__opening_right = 1 +} e_TrafficControlValue__opening; +typedef enum TrafficControlValue__closing { + TrafficControlValue__closing_left = 0, + TrafficControlValue__closing_right = 1 +} e_TrafficControlValue__closing; +typedef enum TrafficControlValue__parking { + TrafficControlValue__parking_no = 0, + TrafficControlValue__parking_parallel = 1, + TrafficControlValue__parking_angled = 2 +} e_TrafficControlValue__parking; + +/* TrafficControlValue */ +typedef struct TrafficControlValue { + TrafficControlValue_PR present; + union TrafficControlValue_u { + long value; + long chains; + long direction; + long lataffinity; + long leftperm; + long rightperm; + long opening; + long closing; + long parking; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrafficControlValue_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_chains_3; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_direction_7; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_lataffinity_10; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_leftperm_13; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_rightperm_18; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_opening_23; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_closing_26; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_parking_29; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlValue; +extern asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1; +extern asn_TYPE_member_t asn_MBR_TrafficControlValue_1[9]; +extern asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlValue_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h new file mode 100644 index 000000000..45bce8529 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrafficControlVehClass.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrafficControlVehClass_H_ +#define _TrafficControlVehClass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TrafficControlVehClass { + TrafficControlVehClass_any = 0, + TrafficControlVehClass_pedestrian = 1, + TrafficControlVehClass_bicycle = 2, + TrafficControlVehClass_micromobile = 3, + TrafficControlVehClass_motorcycle = 4, + TrafficControlVehClass_passenger_car = 5, + TrafficControlVehClass_light_truck_van = 6, + TrafficControlVehClass_bus = 7, + TrafficControlVehClass_two_axle_six_tire_single_unit_truck = 8, + TrafficControlVehClass_three_axle_single_unit_truck = 9, + TrafficControlVehClass_four_or_more_axle_single_unit_truck = 10, + TrafficControlVehClass_four_or_fewer_axle_single_trailer_truck = 11, + TrafficControlVehClass_five_axle_single_trailer_truck = 12, + TrafficControlVehClass_six_or_more_axle_single_trailer_truck = 13, + TrafficControlVehClass_five_or_fewer_axle_multi_trailer_truck = 14, + TrafficControlVehClass_six_axle_multi_trailer_truck = 15, + TrafficControlVehClass_seven_or_more_axle_multi_trailer_truck = 16, + TrafficControlVehClass_rail = 17, + TrafficControlVehClass_unclassified = 18 + /* + * Enumeration is extensible + */ +} e_TrafficControlVehClass; + +/* TrafficControlVehClass */ +typedef long TrafficControlVehClass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass; +extern const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1; +asn_struct_free_f TrafficControlVehClass_free; +asn_struct_print_f TrafficControlVehClass_print; +asn_constr_check_f TrafficControlVehClass_constraint; +ber_type_decoder_f TrafficControlVehClass_decode_ber; +der_type_encoder_f TrafficControlVehClass_encode_der; +xer_type_decoder_f TrafficControlVehClass_decode_xer; +xer_type_encoder_f TrafficControlVehClass_encode_xer; +oer_type_decoder_f TrafficControlVehClass_decode_oer; +oer_type_encoder_f TrafficControlVehClass_encode_oer; +per_type_decoder_f TrafficControlVehClass_decode_uper; +per_type_encoder_f TrafficControlVehClass_encode_uper; +per_type_decoder_f TrafficControlVehClass_decode_aper; +per_type_encoder_f TrafficControlVehClass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrafficControlVehClass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h new file mode 100644 index 000000000..90ace7e97 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerData.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerData_H_ +#define _TrailerData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "PivotPointDescription.h" +#include "TrailerUnitDescriptionList.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerData */ +typedef struct TrailerData { + SSPindex_t sspRights; + PivotPointDescription_t connection; + TrailerUnitDescriptionList_t units; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerData; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerData_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h new file mode 100644 index 000000000..d60da9f6a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPoint.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerHistoryPoint_H_ +#define _TrailerHistoryPoint_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_Angle.h" +#include "TimeOffset.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "CoarseHeading.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerHistoryPoint */ +typedef struct TrailerHistoryPoint { + DSRC_Angle_t pivotAngle; + TimeOffset_t timeOffset; + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + CoarseHeading_t *heading; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPoint_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerHistoryPoint_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h new file mode 100644 index 000000000..40a493b13 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerHistoryPointList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerHistoryPointList_H_ +#define _TrailerHistoryPointList_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 TrailerHistoryPoint; + +/* TrailerHistoryPointList */ +typedef struct TrailerHistoryPointList { + A_SEQUENCE_OF(struct TrailerHistoryPoint) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerHistoryPointList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrailerHistoryPoint.h" + +#endif /* _TrailerHistoryPointList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h new file mode 100644 index 000000000..be840bbaf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerMass.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerMass_H_ +#define _TrailerMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerMass */ +typedef long TrailerMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerMass; +asn_struct_free_f TrailerMass_free; +asn_struct_print_f TrailerMass_print; +asn_constr_check_f TrailerMass_constraint; +ber_type_decoder_f TrailerMass_decode_ber; +der_type_encoder_f TrailerMass_encode_der; +xer_type_decoder_f TrailerMass_decode_xer; +xer_type_encoder_f TrailerMass_encode_xer; +oer_type_decoder_f TrailerMass_decode_oer; +oer_type_encoder_f TrailerMass_encode_oer; +per_type_decoder_f TrailerMass_decode_uper; +per_type_encoder_f TrailerMass_encode_uper; +per_type_decoder_f TrailerMass_decode_aper; +per_type_encoder_f TrailerMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h new file mode 100644 index 000000000..9be9933d4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescription.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerUnitDescription_H_ +#define _TrailerUnitDescription_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IsDolly.h" +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "VehicleHeight.h" +#include "TrailerMass.h" +#include "PivotPointDescription.h" +#include "Offset-B12.h" +#include "Node-XY-24b.h" +#include "VertOffset-B07.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; +struct PivotPointDescription; +struct TrailerHistoryPointList; + +/* TrailerUnitDescription */ +typedef struct TrailerUnitDescription { + IsDolly_t isDolly; + VehicleWidth_t width; + VehicleLength_t length; + VehicleHeight_t *height; /* OPTIONAL */ + TrailerMass_t *mass; /* OPTIONAL */ + struct BumperHeights *bumperHeights; /* OPTIONAL */ + VehicleHeight_t *centerOfGravity; /* OPTIONAL */ + PivotPointDescription_t frontPivot; + struct PivotPointDescription *rearPivot; /* OPTIONAL */ + Offset_B12_t *rearWheelOffset; /* OPTIONAL */ + Node_XY_24b_t positionOffset; + VertOffset_B07_t *elevationOffset; /* OPTIONAL */ + struct TrailerHistoryPointList *crumbData; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescription_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription; +extern asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[13]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BumperHeights.h" +#include "PivotPointDescription.h" +#include "TrailerHistoryPointList.h" + +#endif /* _TrailerUnitDescription_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h new file mode 100644 index 000000000..3f324eb92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerUnitDescriptionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerUnitDescriptionList_H_ +#define _TrailerUnitDescriptionList_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 TrailerUnitDescription; + +/* TrailerUnitDescriptionList */ +typedef struct TrailerUnitDescriptionList { + A_SEQUENCE_OF(struct TrailerUnitDescription) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TrailerUnitDescriptionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList; +extern asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1; +extern asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[1]; +extern asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TrailerUnitDescription.h" + +#endif /* _TrailerUnitDescriptionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h new file mode 100644 index 000000000..8412ef1e6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TrailerWeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TrailerWeight_H_ +#define _TrailerWeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TrailerWeight */ +typedef long TrailerWeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TrailerWeight; +asn_struct_free_f TrailerWeight_free; +asn_struct_print_f TrailerWeight_print; +asn_constr_check_f TrailerWeight_constraint; +ber_type_decoder_f TrailerWeight_decode_ber; +der_type_encoder_f TrailerWeight_encode_der; +xer_type_decoder_f TrailerWeight_decode_xer; +xer_type_encoder_f TrailerWeight_encode_xer; +oer_type_decoder_f TrailerWeight_decode_oer; +oer_type_encoder_f TrailerWeight_encode_oer; +per_type_decoder_f TrailerWeight_decode_uper; +per_type_encoder_f TrailerWeight_encode_uper; +per_type_decoder_f TrailerWeight_decode_aper; +per_type_encoder_f TrailerWeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TrailerWeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h new file mode 100644 index 000000000..3c80d5627 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TransitStatus_H_ +#define _TransitStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitStatus { + TransitStatus_none = 0, + TransitStatus_anADAuse = 1, + TransitStatus_aBikeLoad = 2, + TransitStatus_doorOpen = 3, + TransitStatus_occM = 4, + TransitStatus_occL = 5 +} e_TransitStatus; + +/* TransitStatus */ +typedef BIT_STRING_t TransitStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransitStatus; +asn_struct_free_f TransitStatus_free; +asn_struct_print_f TransitStatus_print; +asn_constr_check_f TransitStatus_constraint; +ber_type_decoder_f TransitStatus_decode_ber; +der_type_encoder_f TransitStatus_encode_der; +xer_type_decoder_f TransitStatus_decode_xer; +xer_type_encoder_f TransitStatus_encode_xer; +oer_type_decoder_f TransitStatus_decode_oer; +oer_type_encoder_f TransitStatus_encode_oer; +per_type_decoder_f TransitStatus_decode_uper; +per_type_encoder_f TransitStatus_encode_uper; +per_type_decoder_f TransitStatus_decode_aper; +per_type_encoder_f TransitStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h new file mode 100644 index 000000000..60e640a52 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleOccupancy.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TransitVehicleOccupancy_H_ +#define _TransitVehicleOccupancy_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleOccupancy { + TransitVehicleOccupancy_occupancyUnknown = 0, + TransitVehicleOccupancy_occupancyEmpty = 1, + TransitVehicleOccupancy_occupancyVeryLow = 2, + TransitVehicleOccupancy_occupancyLow = 3, + TransitVehicleOccupancy_occupancyMed = 4, + TransitVehicleOccupancy_occupancyHigh = 5, + TransitVehicleOccupancy_occupancyNearlyFull = 6, + TransitVehicleOccupancy_occupancyFull = 7 +} e_TransitVehicleOccupancy; + +/* TransitVehicleOccupancy */ +typedef long TransitVehicleOccupancy_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy; +extern const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1; +asn_struct_free_f TransitVehicleOccupancy_free; +asn_struct_print_f TransitVehicleOccupancy_print; +asn_constr_check_f TransitVehicleOccupancy_constraint; +ber_type_decoder_f TransitVehicleOccupancy_decode_ber; +der_type_encoder_f TransitVehicleOccupancy_encode_der; +xer_type_decoder_f TransitVehicleOccupancy_decode_xer; +xer_type_encoder_f TransitVehicleOccupancy_encode_xer; +oer_type_decoder_f TransitVehicleOccupancy_decode_oer; +oer_type_encoder_f TransitVehicleOccupancy_encode_oer; +per_type_decoder_f TransitVehicleOccupancy_decode_uper; +per_type_encoder_f TransitVehicleOccupancy_encode_uper; +per_type_decoder_f TransitVehicleOccupancy_decode_aper; +per_type_encoder_f TransitVehicleOccupancy_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleOccupancy_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h new file mode 100644 index 000000000..dc5a501af --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransitVehicleStatus.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TransitVehicleStatus_H_ +#define _TransitVehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransitVehicleStatus { + TransitVehicleStatus_loading = 0, + TransitVehicleStatus_anADAuse = 1, + TransitVehicleStatus_aBikeLoad = 2, + TransitVehicleStatus_doorOpen = 3, + TransitVehicleStatus_charging = 4, + TransitVehicleStatus_atStopLine = 5 +} e_TransitVehicleStatus; + +/* TransitVehicleStatus */ +typedef BIT_STRING_t TransitVehicleStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus; +asn_struct_free_f TransitVehicleStatus_free; +asn_struct_print_f TransitVehicleStatus_print; +asn_constr_check_f TransitVehicleStatus_constraint; +ber_type_decoder_f TransitVehicleStatus_decode_ber; +der_type_encoder_f TransitVehicleStatus_encode_der; +xer_type_decoder_f TransitVehicleStatus_decode_xer; +xer_type_encoder_f TransitVehicleStatus_encode_xer; +oer_type_decoder_f TransitVehicleStatus_decode_oer; +oer_type_encoder_f TransitVehicleStatus_encode_oer; +per_type_decoder_f TransitVehicleStatus_decode_uper; +per_type_encoder_f TransitVehicleStatus_encode_uper; +per_type_decoder_f TransitVehicleStatus_decode_aper; +per_type_encoder_f TransitVehicleStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransitVehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h new file mode 100644 index 000000000..4c45062e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionAndSpeed.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TransmissionAndSpeed_H_ +#define _TransmissionAndSpeed_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TransmissionState.h" +#include "Velocity.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* TransmissionAndSpeed */ +typedef struct TransmissionAndSpeed { + TransmissionState_t transmisson; + Velocity_t speed; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TransmissionAndSpeed_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed; +extern asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1; +extern asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionAndSpeed_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h new file mode 100644 index 000000000..c12fb0335 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TransmissionState.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TransmissionState_H_ +#define _TransmissionState_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TransmissionState { + TransmissionState_neutral = 0, + TransmissionState_park = 1, + TransmissionState_forwardGears = 2, + TransmissionState_reverseGears = 3, + TransmissionState_reserved1 = 4, + TransmissionState_reserved2 = 5, + TransmissionState_reserved3 = 6, + TransmissionState_unavailable = 7 +} e_TransmissionState; + +/* TransmissionState */ +typedef long TransmissionState_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransmissionState_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransmissionState; +extern const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1; +asn_struct_free_f TransmissionState_free; +asn_struct_print_f TransmissionState_print; +asn_constr_check_f TransmissionState_constraint; +ber_type_decoder_f TransmissionState_decode_ber; +der_type_encoder_f TransmissionState_encode_der; +xer_type_decoder_f TransmissionState_decode_xer; +xer_type_encoder_f TransmissionState_encode_xer; +oer_type_decoder_f TransmissionState_decode_oer; +oer_type_encoder_f TransmissionState_encode_oer; +per_type_decoder_f TransmissionState_decode_uper; +per_type_encoder_f TransmissionState_encode_uper; +per_type_decoder_f TransmissionState_decode_aper; +per_type_encoder_f TransmissionState_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransmissionState_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h new file mode 100644 index 000000000..d7215b7ae --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrame.h @@ -0,0 +1,119 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TravelerDataFrame_H_ +#define _TravelerDataFrame_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "SSPindex.h" +#include "TravelerInfoType.h" +#include "DYear.h" +#include "MinuteOfTheYear.h" +#include "MinutesDuration.h" +#include "SignPrority.h" +#include "URL-Short.h" +#include "FurtherInfoID.h" +#include "RoadSignID.h" +#include "constr_CHOICE.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "ITIScodesAndText.h" +#include "WorkZone.h" +#include "GenericSignage.h" +#include "SpeedLimit.h" +#include "ExitService.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerDataFrame__msgId_PR { + TravelerDataFrame__msgId_PR_NOTHING, /* No components present */ + TravelerDataFrame__msgId_PR_furtherInfoID, + TravelerDataFrame__msgId_PR_roadSignID +} TravelerDataFrame__msgId_PR; +typedef enum TravelerDataFrame__content_PR { + TravelerDataFrame__content_PR_NOTHING, /* No components present */ + TravelerDataFrame__content_PR_advisory, + TravelerDataFrame__content_PR_workZone, + TravelerDataFrame__content_PR_genericSign, + TravelerDataFrame__content_PR_speedLimit, + TravelerDataFrame__content_PR_exitService +} TravelerDataFrame__content_PR; + +/* Forward declarations */ +struct GeographicalPath; + +/* TravelerDataFrame */ +typedef struct TravelerDataFrame { + SSPindex_t sspTimRights; + TravelerInfoType_t frameType; + struct TravelerDataFrame__msgId { + TravelerDataFrame__msgId_PR present; + union TravelerDataFrame__msgId_u { + FurtherInfoID_t furtherInfoID; + RoadSignID_t roadSignID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } msgId; + DYear_t *startYear; /* OPTIONAL */ + MinuteOfTheYear_t startTime; + MinutesDuration_t duratonTime; + SignPrority_t priority; + SSPindex_t sspLocationRights; + struct TravelerDataFrame__regions { + A_SEQUENCE_OF(struct GeographicalPath) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } regions; + SSPindex_t sspMsgRights1; + SSPindex_t sspMsgRights2; + struct TravelerDataFrame__content { + TravelerDataFrame__content_PR present; + union TravelerDataFrame__content_u { + ITIScodesAndText_t advisory; + WorkZone_t workZone; + GenericSignage_t genericSign; + SpeedLimit_t speedLimit; + ExitService_t exitService; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } content; + URL_Short_t *url; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrame_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[13]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "GeographicalPath.h" + +#endif /* _TravelerDataFrame_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h new file mode 100644 index 000000000..7ee423803 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerDataFrameList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TravelerDataFrameList_H_ +#define _TravelerDataFrameList_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 TravelerDataFrame; + +/* TravelerDataFrameList */ +typedef struct TravelerDataFrameList { + A_SEQUENCE_OF(struct TravelerDataFrame) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TravelerDataFrameList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList; +extern asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[1]; +extern asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "TravelerDataFrame.h" + +#endif /* _TravelerDataFrameList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h new file mode 100644 index 000000000..f023a04c9 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInfoType.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TravelerInfoType_H_ +#define _TravelerInfoType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TravelerInfoType { + TravelerInfoType_unknown = 0, + TravelerInfoType_advisory = 1, + TravelerInfoType_roadSignage = 2, + TravelerInfoType_commercialSignage = 3 + /* + * Enumeration is extensible + */ +} e_TravelerInfoType; + +/* TravelerInfoType */ +typedef long TravelerInfoType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TravelerInfoType; +extern const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1; +asn_struct_free_f TravelerInfoType_free; +asn_struct_print_f TravelerInfoType_print; +asn_constr_check_f TravelerInfoType_constraint; +ber_type_decoder_f TravelerInfoType_decode_ber; +der_type_encoder_f TravelerInfoType_encode_der; +xer_type_decoder_f TravelerInfoType_decode_xer; +xer_type_encoder_f TravelerInfoType_encode_xer; +oer_type_decoder_f TravelerInfoType_decode_oer; +oer_type_encoder_f TravelerInfoType_encode_oer; +per_type_decoder_f TravelerInfoType_decode_uper; +per_type_encoder_f TravelerInfoType_encode_uper; +per_type_decoder_f TravelerInfoType_decode_aper; +per_type_encoder_f TravelerInfoType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TravelerInfoType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h new file mode 100644 index 000000000..e22b4e9dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/TravelerInformation.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _TravelerInformation_H_ +#define _TravelerInformation_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DSRC_MsgCount.h" +#include "MinuteOfTheYear.h" +#include "UniqueMSGID.h" +#include "URL-Base.h" +#include "TravelerDataFrameList.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* TravelerInformation */ +typedef struct TravelerInformation { + DSRC_MsgCount_t msgCnt; + MinuteOfTheYear_t *timeStamp; /* OPTIONAL */ + UniqueMSGID_t *packetID; /* OPTIONAL */ + URL_Base_t *urlB; /* OPTIONAL */ + TravelerDataFrameList_t dataFrames; + struct TravelerInformation__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} TravelerInformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TravelerInformation; +extern asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1; +extern asn_TYPE_member_t asn_MBR_TravelerInformation_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _TravelerInformation_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h new file mode 100644 index 000000000..7c23f9ed8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Base.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _URL_Base_H_ +#define _URL_Base_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Base */ +typedef IA5String_t URL_Base_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Base_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Base; +asn_struct_free_f URL_Base_free; +asn_struct_print_f URL_Base_print; +asn_constr_check_f URL_Base_constraint; +ber_type_decoder_f URL_Base_decode_ber; +der_type_encoder_f URL_Base_encode_der; +xer_type_decoder_f URL_Base_decode_xer; +xer_type_encoder_f URL_Base_encode_xer; +oer_type_decoder_f URL_Base_decode_oer; +oer_type_encoder_f URL_Base_encode_oer; +per_type_decoder_f URL_Base_decode_uper; +per_type_encoder_f URL_Base_encode_uper; +per_type_decoder_f URL_Base_decode_aper; +per_type_encoder_f URL_Base_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Base_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h new file mode 100644 index 000000000..446d4d0e4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Link.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _URL_Link_H_ +#define _URL_Link_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Link */ +typedef IA5String_t URL_Link_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_URL_Link; +asn_struct_free_f URL_Link_free; +asn_struct_print_f URL_Link_print; +asn_constr_check_f URL_Link_constraint; +ber_type_decoder_f URL_Link_decode_ber; +der_type_encoder_f URL_Link_encode_der; +xer_type_decoder_f URL_Link_decode_xer; +xer_type_encoder_f URL_Link_encode_xer; +oer_type_decoder_f URL_Link_decode_oer; +oer_type_encoder_f URL_Link_encode_oer; +per_type_decoder_f URL_Link_decode_uper; +per_type_encoder_f URL_Link_encode_uper; +per_type_decoder_f URL_Link_decode_aper; +per_type_encoder_f URL_Link_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Link_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h new file mode 100644 index 000000000..7e807e9fc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/URL-Short.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _URL_Short_H_ +#define _URL_Short_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* URL-Short */ +typedef IA5String_t URL_Short_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_URL_Short_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_URL_Short; +asn_struct_free_f URL_Short_free; +asn_struct_print_f URL_Short_print; +asn_constr_check_f URL_Short_constraint; +ber_type_decoder_f URL_Short_decode_ber; +der_type_encoder_f URL_Short_encode_der; +xer_type_decoder_f URL_Short_decode_xer; +xer_type_encoder_f URL_Short_encode_xer; +oer_type_decoder_f URL_Short_decode_oer; +oer_type_encoder_f URL_Short_encode_oer; +per_type_decoder_f URL_Short_decode_uper; +per_type_encoder_f URL_Short_encode_uper; +per_type_decoder_f URL_Short_decode_aper; +per_type_encoder_f URL_Short_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _URL_Short_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h new file mode 100644 index 000000000..553702013 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTCTime.h @@ -0,0 +1,47 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UTCTime_H_ +#define _UTCTime_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UTCTime_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UTCTime; +extern asn_TYPE_operation_t asn_OP_UTCTime; + +asn_struct_print_f UTCTime_print; +asn_constr_check_f UTCTime_constraint; +xer_type_encoder_f UTCTime_encode_xer; + +#define UTCTime_free OCTET_STRING_free +#define UTCTime_compare OCTET_STRING_compare +#define UTCTime_decode_ber OCTET_STRING_decode_ber +#define UTCTime_encode_der OCTET_STRING_encode_der +#define UTCTime_decode_xer OCTET_STRING_decode_xer_utf8 +#define UTCTime_decode_uper OCTET_STRING_decode_uper +#define UTCTime_encode_uper OCTET_STRING_encode_uper + +/*********************** + * Some handy helpers. * + ***********************/ + +struct tm; /* */ + +/* See asn_GT2time() in GeneralizedTime.h */ +time_t asn_UT2time(const UTCTime_t *, struct tm *_optional_tm4fill, int as_gmt); + +/* See asn_time2GT() in GeneralizedTime.h */ +UTCTime_t *asn_time2UT(UTCTime_t *__opt_ut, const struct tm *, int force_gmt); + +#ifdef __cplusplus +} +#endif + +#endif /* _UTCTime_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h new file mode 100644 index 000000000..1853573a7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/UTF8String.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UTF8String_H_ +#define _UTF8String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UTF8String_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UTF8String; +extern asn_TYPE_operation_t asn_OP_UTF8String; + +asn_struct_print_f UTF8String_print; +asn_constr_check_f UTF8String_constraint; + +#define UTF8String_free OCTET_STRING_free +#define UTF8String_compare OCTET_STRING_compare +#define UTF8String_constraint UTF8String_constraint +#define UTF8String_decode_ber OCTET_STRING_decode_ber +#define UTF8String_encode_der OCTET_STRING_encode_der +#define UTF8String_decode_xer OCTET_STRING_decode_xer_utf8 +#define UTF8String_encode_xer OCTET_STRING_encode_xer_utf8 +#define UTF8String_decode_uper OCTET_STRING_decode_uper +#define UTF8String_encode_uper OCTET_STRING_encode_uper + +/* + * Returns length of the given UTF-8 string in characters, + * or a negative error code: + * -1: UTF-8 sequence truncated + * -2: Illegal UTF-8 sequence start + * -3: Continuation expectation failed + * -4: Not minimal length encoding + * -5: Invalid arguments + */ +ssize_t UTF8String_length(const UTF8String_t *st); + +/* + * Convert the UTF-8 string into a sequence of wide characters. + * Returns the number of characters necessary. + * Returned value might be greater than dstlen. + * In case of conversion error, 0 is returned. + * + * If st points to a valid UTF-8 string, calling + * UTF8String_to_wcs(st, 0, 0); + * is equivalent to + * UTF8String_length(const UTF8String_t *st); + */ +size_t UTF8String_to_wcs(const UTF8String_t *st, uint32_t *dst, size_t dstlen); + +#ifdef __cplusplus +} +#endif + +#endif /* _UTF8String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UUIDType.h new file mode 100644 index 000000000..d0486182e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/UniqueMSGID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h new file mode 100644 index 000000000..b8a6f6929 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniqueMSGID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _UniqueMSGID_H_ +#define _UniqueMSGID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UniqueMSGID */ +typedef OCTET_STRING_t UniqueMSGID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UniqueMSGID; +asn_struct_free_f UniqueMSGID_free; +asn_struct_print_f UniqueMSGID_print; +asn_constr_check_f UniqueMSGID_constraint; +ber_type_decoder_f UniqueMSGID_decode_ber; +der_type_encoder_f UniqueMSGID_encode_der; +xer_type_decoder_f UniqueMSGID_decode_xer; +xer_type_encoder_f UniqueMSGID_encode_xer; +oer_type_decoder_f UniqueMSGID_decode_oer; +oer_type_encoder_f UniqueMSGID_encode_oer; +per_type_decoder_f UniqueMSGID_decode_uper; +per_type_encoder_f UniqueMSGID_encode_uper; +per_type_decoder_f UniqueMSGID_decode_aper; +per_type_encoder_f UniqueMSGID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UniqueMSGID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h new file mode 100644 index 000000000..ff2253739 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/UniversalString.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _UniversalString_H_ +#define _UniversalString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t UniversalString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_UniversalString; +extern asn_TYPE_operation_t asn_OP_UniversalString; +extern asn_OCTET_STRING_specifics_t asn_SPC_UniversalString_specs; + +asn_struct_print_f UniversalString_print; /* Human-readable output */ +xer_type_decoder_f UniversalString_decode_xer; +xer_type_encoder_f UniversalString_encode_xer; + +#define UniversalString_free OCTET_STRING_free +#define UniversalString_compare OCTET_STRING_compare +#define UniversalString_decode_ber OCTET_STRING_decode_ber +#define UniversalString_encode_der OCTET_STRING_encode_der +#define UniversalString_decode_uper OCTET_STRING_decode_uper +#define UniversalString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _UniversalString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h new file mode 100644 index 000000000..3b5e5e127 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/UserSizeAndBehaviour.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _UserSizeAndBehaviour_H_ +#define _UserSizeAndBehaviour_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum UserSizeAndBehaviour { + UserSizeAndBehaviour_unavailable = 0, + UserSizeAndBehaviour_smallStature = 1, + UserSizeAndBehaviour_largeStature = 2, + UserSizeAndBehaviour_erraticMoving = 3, + UserSizeAndBehaviour_slowMoving = 4 +} e_UserSizeAndBehaviour; + +/* UserSizeAndBehaviour */ +typedef BIT_STRING_t UserSizeAndBehaviour_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour; +asn_struct_free_f UserSizeAndBehaviour_free; +asn_struct_print_f UserSizeAndBehaviour_print; +asn_constr_check_f UserSizeAndBehaviour_constraint; +ber_type_decoder_f UserSizeAndBehaviour_decode_ber; +der_type_encoder_f UserSizeAndBehaviour_encode_der; +xer_type_decoder_f UserSizeAndBehaviour_decode_xer; +xer_type_encoder_f UserSizeAndBehaviour_encode_xer; +oer_type_decoder_f UserSizeAndBehaviour_decode_oer; +oer_type_encoder_f UserSizeAndBehaviour_encode_oer; +per_type_decoder_f UserSizeAndBehaviour_decode_uper; +per_type_encoder_f UserSizeAndBehaviour_encode_uper; +per_type_decoder_f UserSizeAndBehaviour_decode_aper; +per_type_encoder_f UserSizeAndBehaviour_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UserSizeAndBehaviour_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h new file mode 100644 index 000000000..816599783 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VINstring.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VINstring_H_ +#define _VINstring_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "OCTET_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VINstring */ +typedef OCTET_STRING_t VINstring_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VINstring_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VINstring; +asn_struct_free_f VINstring_free; +asn_struct_print_f VINstring_print; +asn_constr_check_f VINstring_constraint; +ber_type_decoder_f VINstring_decode_ber; +der_type_encoder_f VINstring_encode_der; +xer_type_decoder_f VINstring_decode_xer; +xer_type_encoder_f VINstring_encode_xer; +oer_type_decoder_f VINstring_decode_oer; +oer_type_encoder_f VINstring_encode_oer; +per_type_decoder_f VINstring_decode_uper; +per_type_encoder_f VINstring_encode_uper; +per_type_decoder_f VINstring_decode_aper; +per_type_encoder_f VINstring_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VINstring_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h new file mode 100644 index 000000000..6b8267016 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VType.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VType_H_ +#define _VType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VType { + VType_pedestrian = 0, + VType_bicycle = 1, + VType_micromobile = 2, + VType_motorcycle = 3, + VType_passenger_car = 4, + VType_light_truck_van = 5, + VType_bus = 6, + VType_two_axle_six_tire_single_unit_truck = 7, + VType_three_axle_single_unit_truck = 8, + VType_four_or_more_axle_single_unit_truck = 9, + VType_four_or_fewer_axle_single_trailer_truck = 10, + VType_five_axle_single_trailer_truck = 11, + VType_six_or_more_axle_single_trailer_truck = 12, + VType_five_or_fewer_axle_multi_trailer_truck = 13, + VType_six_axle_multi_trailer_truck = 14, + VType_seven_or_more_axle_multi_trailer_truck = 15, + VType_rail = 16, + VType_unclassified = 17 +} e_VType; + +/* VType */ +typedef long VType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VType; +extern const asn_INTEGER_specifics_t asn_SPC_VType_specs_1; +asn_struct_free_f VType_free; +asn_struct_print_f VType_print; +asn_constr_check_f VType_constraint; +ber_type_decoder_f VType_decode_ber; +der_type_encoder_f VType_encode_der; +xer_type_decoder_f VType_decode_xer; +xer_type_encoder_f VType_encode_xer; +oer_type_decoder_f VType_decode_oer; +oer_type_encoder_f VType_encode_oer; +per_type_decoder_f VType_decode_uper; +per_type_encoder_f VType_encode_uper; +per_type_decoder_f VType_decode_aper; +per_type_encoder_f VType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h new file mode 100644 index 000000000..ca92a88b7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ValidRegion.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ValidRegion_H_ +#define _ValidRegion_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "HeadingSlice.h" +#include "Extent.h" +#include "ShapePointSet.h" +#include "Circle.h" +#include "RegionPointSet.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ValidRegion__area_PR { + ValidRegion__area_PR_NOTHING, /* No components present */ + ValidRegion__area_PR_shapePointSet, + ValidRegion__area_PR_circle, + ValidRegion__area_PR_regionPointSet +} ValidRegion__area_PR; + +/* ValidRegion */ +typedef struct ValidRegion { + HeadingSlice_t direction; + Extent_t *extent; /* OPTIONAL */ + struct ValidRegion__area { + ValidRegion__area_PR present; + union ValidRegion__area_u { + ShapePointSet_t shapePointSet; + Circle_t circle; + RegionPointSet_t regionPointSet; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } area; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ValidRegion_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ValidRegion; +extern asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1; +extern asn_TYPE_member_t asn_MBR_ValidRegion_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ValidRegion_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h new file mode 100644 index 000000000..d541644f3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleClassification.h @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleClassification_H_ +#define _VehicleClassification_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BasicVehicleClass.h" +#include "BasicVehicleRole.h" +#include "Iso3833VehicleType.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "ResponderGroupAffected.h" +#include "FuelType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Reg_BasicSafetyMessage; + +/* VehicleClassification */ +typedef struct VehicleClassification { + BasicVehicleClass_t *keyType; /* OPTIONAL */ + BasicVehicleRole_t *role; /* OPTIONAL */ + Iso3833VehicleType_t *iso3883; /* OPTIONAL */ + VehicleType_t *hpmsType; /* OPTIONAL */ + VehicleGroupAffected_t *vehicleType; /* OPTIONAL */ + IncidentResponseEquipment_t *responseEquip; /* OPTIONAL */ + ResponderGroupAffected_t *responderType; /* OPTIONAL */ + FuelType_t *fuelType; /* OPTIONAL */ + struct VehicleClassification__regional { + A_SEQUENCE_OF(struct Reg_BasicSafetyMessage) 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; +} VehicleClassification_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleClassification; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleClassification_1[9]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "RegionalExtension.h" + +#endif /* _VehicleClassification_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h new file mode 100644 index 000000000..bc1a05562 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleData.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleData_H_ +#define _VehicleData_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleHeight.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct BumperHeights; + +/* VehicleData */ +typedef struct VehicleData { + VehicleHeight_t *height; /* OPTIONAL */ + struct BumperHeights *bumpers; /* OPTIONAL */ + VehicleMass_t *mass; /* OPTIONAL */ + TrailerWeight_t *trailerWeight; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleData_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleData; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleData_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "BumperHeights.h" + +#endif /* _VehicleData_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleDescriptionType.h new file mode 100644 index 000000000..d3daf790c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/VehicleEventFlags.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h new file mode 100644 index 000000000..d2fa83879 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleEventFlags.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleEventFlags_H_ +#define _VehicleEventFlags_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleEventFlags { + VehicleEventFlags_eventHazardLights = 0, + VehicleEventFlags_eventStopLineViolation = 1, + VehicleEventFlags_eventABSactivated = 2, + VehicleEventFlags_eventTractionControlLoss = 3, + VehicleEventFlags_eventStabilityControlactivated = 4, + VehicleEventFlags_eventHazardousMaterials = 5, + VehicleEventFlags_eventReserved1 = 6, + VehicleEventFlags_eventHardBraking = 7, + VehicleEventFlags_eventLightsChanged = 8, + VehicleEventFlags_eventWipersChanged = 9, + VehicleEventFlags_eventFlatTire = 10, + VehicleEventFlags_eventDisabledVehicle = 11, + VehicleEventFlags_eventAirBagDeployment = 12 +} e_VehicleEventFlags; + +/* VehicleEventFlags */ +typedef BIT_STRING_t VehicleEventFlags_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags; +asn_struct_free_f VehicleEventFlags_free; +asn_struct_print_f VehicleEventFlags_print; +asn_constr_check_f VehicleEventFlags_constraint; +ber_type_decoder_f VehicleEventFlags_decode_ber; +der_type_encoder_f VehicleEventFlags_encode_der; +xer_type_decoder_f VehicleEventFlags_decode_xer; +xer_type_encoder_f VehicleEventFlags_encode_xer; +oer_type_decoder_f VehicleEventFlags_decode_oer; +oer_type_encoder_f VehicleEventFlags_encode_oer; +per_type_decoder_f VehicleEventFlags_decode_uper; +per_type_encoder_f VehicleEventFlags_encode_uper; +per_type_decoder_f VehicleEventFlags_decode_aper; +per_type_encoder_f VehicleEventFlags_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleEventFlags_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h new file mode 100644 index 000000000..19ffd91f1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleGroupAffected.h @@ -0,0 +1,89 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleGroupAffected_H_ +#define _VehicleGroupAffected_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleGroupAffected { + VehicleGroupAffected_all_vehicles = 9217, + VehicleGroupAffected_bicycles = 9218, + VehicleGroupAffected_motorcycles = 9219, + VehicleGroupAffected_cars = 9220, + VehicleGroupAffected_light_vehicles = 9221, + VehicleGroupAffected_cars_and_light_vehicles = 9222, + VehicleGroupAffected_cars_with_trailers = 9223, + VehicleGroupAffected_cars_with_recreational_trailers = 9224, + VehicleGroupAffected_vehicles_with_trailers = 9225, + VehicleGroupAffected_heavy_vehicles = 9226, + VehicleGroupAffected_trucks = 9227, + VehicleGroupAffected_buses = 9228, + VehicleGroupAffected_articulated_buses = 9229, + VehicleGroupAffected_school_buses = 9230, + VehicleGroupAffected_vehicles_with_semi_trailers = 9231, + VehicleGroupAffected_vehicles_with_double_trailers = 9232, + VehicleGroupAffected_high_profile_vehicles = 9233, + VehicleGroupAffected_wide_vehicles = 9234, + VehicleGroupAffected_long_vehicles = 9235, + VehicleGroupAffected_hazardous_loads = 9236, + VehicleGroupAffected_exceptional_loads = 9237, + VehicleGroupAffected_abnormal_loads = 9238, + VehicleGroupAffected_convoys = 9239, + VehicleGroupAffected_maintenance_vehicles = 9240, + VehicleGroupAffected_delivery_vehicles = 9241, + VehicleGroupAffected_vehicles_with_even_numbered_license_plates = 9242, + VehicleGroupAffected_vehicles_with_odd_numbered_license_plates = 9243, + VehicleGroupAffected_vehicles_with_parking_permits = 9244, + VehicleGroupAffected_vehicles_with_catalytic_converters = 9245, + VehicleGroupAffected_vehicles_without_catalytic_converters = 9246, + VehicleGroupAffected_gas_powered_vehicles = 9247, + VehicleGroupAffected_diesel_powered_vehicles = 9248, + VehicleGroupAffected_lPG_vehicles = 9249, + VehicleGroupAffected_military_convoys = 9250, + VehicleGroupAffected_military_vehicles = 9251 + /* + * Enumeration is extensible + */ +} e_VehicleGroupAffected; + +/* VehicleGroupAffected */ +typedef long VehicleGroupAffected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1; +asn_struct_free_f VehicleGroupAffected_free; +asn_struct_print_f VehicleGroupAffected_print; +asn_constr_check_f VehicleGroupAffected_constraint; +ber_type_decoder_f VehicleGroupAffected_decode_ber; +der_type_encoder_f VehicleGroupAffected_encode_der; +xer_type_decoder_f VehicleGroupAffected_decode_xer; +xer_type_encoder_f VehicleGroupAffected_encode_xer; +oer_type_decoder_f VehicleGroupAffected_decode_oer; +oer_type_encoder_f VehicleGroupAffected_encode_oer; +per_type_decoder_f VehicleGroupAffected_decode_uper; +per_type_encoder_f VehicleGroupAffected_encode_uper; +per_type_decoder_f VehicleGroupAffected_decode_aper; +per_type_encoder_f VehicleGroupAffected_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleGroupAffected_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h new file mode 100644 index 000000000..7bb559d76 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleHeight.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleHeight_H_ +#define _VehicleHeight_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleHeight */ +typedef long VehicleHeight_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleHeight; +asn_struct_free_f VehicleHeight_free; +asn_struct_print_f VehicleHeight_print; +asn_constr_check_f VehicleHeight_constraint; +ber_type_decoder_f VehicleHeight_decode_ber; +der_type_encoder_f VehicleHeight_encode_der; +xer_type_decoder_f VehicleHeight_decode_xer; +xer_type_encoder_f VehicleHeight_encode_xer; +oer_type_decoder_f VehicleHeight_decode_oer; +oer_type_encoder_f VehicleHeight_encode_oer; +per_type_decoder_f VehicleHeight_decode_uper; +per_type_encoder_f VehicleHeight_encode_uper; +per_type_decoder_f VehicleHeight_decode_aper; +per_type_encoder_f VehicleHeight_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleHeight_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h new file mode 100644 index 000000000..8ef741b06 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleID.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleID_H_ +#define _VehicleID_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "TemporaryID.h" +#include "StationID.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleID_PR { + VehicleID_PR_NOTHING, /* No components present */ + VehicleID_PR_entityID, + VehicleID_PR_stationID +} VehicleID_PR; + +/* VehicleID */ +typedef struct VehicleID { + VehicleID_PR present; + union VehicleID_u { + TemporaryID_t entityID; + StationID_t stationID; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleID; +extern asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleID_1[2]; +extern asn_per_constraints_t asn_PER_type_VehicleID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleID_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h new file mode 100644 index 000000000..2fcfcb812 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleIdent.h @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleIdent_H_ +#define _VehicleIdent_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "DescriptiveName.h" +#include "VINstring.h" +#include "IA5String.h" +#include "VehicleType.h" +#include "VehicleGroupAffected.h" +#include "ResponderGroupAffected.h" +#include "IncidentResponseEquipment.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleIdent__vehicleClass_PR { + VehicleIdent__vehicleClass_PR_NOTHING, /* No components present */ + VehicleIdent__vehicleClass_PR_vGroup, + VehicleIdent__vehicleClass_PR_rGroup, + VehicleIdent__vehicleClass_PR_rEquip +} VehicleIdent__vehicleClass_PR; + +/* Forward declarations */ +struct VehicleID; + +/* VehicleIdent */ +typedef struct VehicleIdent { + DescriptiveName_t *name; /* OPTIONAL */ + VINstring_t *vin; /* OPTIONAL */ + IA5String_t *ownerCode; /* OPTIONAL */ + struct VehicleID *id; /* OPTIONAL */ + VehicleType_t *vehicleType; /* OPTIONAL */ + struct VehicleIdent__vehicleClass { + VehicleIdent__vehicleClass_PR present; + union VehicleIdent__vehicleClass_u { + VehicleGroupAffected_t vGroup; + ResponderGroupAffected_t rGroup; + IncidentResponseEquipment_t rEquip; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleClass; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleIdent_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleIdent; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleIdent_1[6]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleID.h" + +#endif /* _VehicleIdent_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h new file mode 100644 index 000000000..dbd4aeef7 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleLength.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleLength_H_ +#define _VehicleLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleLength */ +typedef long VehicleLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleLength; +asn_struct_free_f VehicleLength_free; +asn_struct_print_f VehicleLength_print; +asn_constr_check_f VehicleLength_constraint; +ber_type_decoder_f VehicleLength_decode_ber; +der_type_encoder_f VehicleLength_encode_der; +xer_type_decoder_f VehicleLength_decode_xer; +xer_type_encoder_f VehicleLength_encode_xer; +oer_type_decoder_f VehicleLength_decode_oer; +oer_type_encoder_f VehicleLength_encode_oer; +per_type_decoder_f VehicleLength_decode_uper; +per_type_encoder_f VehicleLength_encode_uper; +per_type_decoder_f VehicleLength_decode_aper; +per_type_encoder_f VehicleLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h new file mode 100644 index 000000000..a18268a37 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleMass.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleMass_H_ +#define _VehicleMass_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleMass */ +typedef long VehicleMass_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleMass_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleMass; +asn_struct_free_f VehicleMass_free; +asn_struct_print_f VehicleMass_print; +asn_constr_check_f VehicleMass_constraint; +ber_type_decoder_f VehicleMass_decode_ber; +der_type_encoder_f VehicleMass_encode_der; +xer_type_decoder_f VehicleMass_decode_xer; +xer_type_encoder_f VehicleMass_encode_xer; +oer_type_decoder_f VehicleMass_decode_oer; +oer_type_encoder_f VehicleMass_encode_oer; +per_type_decoder_f VehicleMass_decode_uper; +per_type_encoder_f VehicleMass_encode_uper; +per_type_decoder_f VehicleMass_decode_aper; +per_type_encoder_f VehicleMass_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleMass_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h new file mode 100644 index 000000000..7d147d14c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSafetyExtensions.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#ifndef _VehicleSafetyExtensions_H_ +#define _VehicleSafetyExtensions_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleEventFlags.h" +#include "ExteriorLights.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PathHistory; +struct PathPrediction; + +/* VehicleSafetyExtensions */ +typedef struct VehicleSafetyExtensions { + VehicleEventFlags_t *events; /* OPTIONAL */ + struct PathHistory *pathHistory; /* OPTIONAL */ + struct PathPrediction *pathPrediction; /* OPTIONAL */ + ExteriorLights_t *lights; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSafetyExtensions_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[4]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PathHistory.h" +#include "PathPrediction.h" + +#endif /* _VehicleSafetyExtensions_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h new file mode 100644 index 000000000..db7acf91c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSize.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleSize_H_ +#define _VehicleSize_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleWidth.h" +#include "VehicleLength.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSize */ +typedef struct VehicleSize { + VehicleWidth_t width; + VehicleLength_t length; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSize_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSize; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSize_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSize_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h new file mode 100644 index 000000000..7ab00134d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleSizeConfidence.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _VehicleSizeConfidence_H_ +#define _VehicleSizeConfidence_H_ + + +#include + +/* Including external dependencies */ +#include "SizeValueConfidence.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleSizeConfidence */ +typedef struct VehicleSizeConfidence { + SizeValueConfidence_t vehicleWidthConfidence; + SizeValueConfidence_t vehicleLengthConfidence; + SizeValueConfidence_t *vehicleHeightConfidence /* OPTIONAL */; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleSizeConfidence_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleSizeConfidence_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h new file mode 100644 index 000000000..bca8ec1ab --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatus.h @@ -0,0 +1,157 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleStatus_H_ +#define _VehicleStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "ExteriorLights.h" +#include "LightbarInUse.h" +#include "BrakeAppliedPressure.h" +#include "CoefficientOfFriction.h" +#include "SunSensor.h" +#include "RainSensor.h" +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "ThrottlePosition.h" +#include "SpeedConfidence.h" +#include "GNSSstatus.h" +#include "SteeringWheelAngle.h" +#include "SteeringWheelAngleConfidence.h" +#include "SteeringWheelAngleRateOfChange.h" +#include "DrivingWheelAngle.h" +#include "constr_SEQUENCE.h" +#include "VerticalAccelerationThreshold.h" +#include "YawRateConfidence.h" +#include "AccelerationConfidence.h" +#include "ObstacleDistance.h" +#include "DSRC_Angle.h" +#include "DDateTime.h" +#include "VehicleHeight.h" +#include "BumperHeights.h" +#include "VehicleMass.h" +#include "TrailerWeight.h" +#include "VehicleType.h" +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; +struct BrakeSystemStatus; +struct FullPositionVector; +struct SpeedandHeadingandThrottleConfidence; +struct VehicleIdent; +struct J1939data; +struct AccelerationSet4Way; +struct ConfidenceSet; + +/* VehicleStatus */ +typedef struct VehicleStatus { + ExteriorLights_t *lights; /* OPTIONAL */ + LightbarInUse_t *lightBar; /* OPTIONAL */ + struct WiperSet *wipers; /* OPTIONAL */ + struct BrakeSystemStatus *brakeStatus; /* OPTIONAL */ + BrakeAppliedPressure_t *brakePressure; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + SunSensor_t *sunData; /* OPTIONAL */ + RainSensor_t *rainData; /* OPTIONAL */ + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPres; /* OPTIONAL */ + struct VehicleStatus__steering { + SteeringWheelAngle_t angle; + SteeringWheelAngleConfidence_t *confidence; /* OPTIONAL */ + SteeringWheelAngleRateOfChange_t *rate; /* OPTIONAL */ + DrivingWheelAngle_t *wheels; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *steering; + struct VehicleStatus__accelSets { + struct AccelerationSet4Way *accel4way; /* OPTIONAL */ + VerticalAccelerationThreshold_t *vertAccelThres; /* OPTIONAL */ + YawRateConfidence_t *yawRateCon; /* OPTIONAL */ + AccelerationConfidence_t *hozAccelCon; /* OPTIONAL */ + struct ConfidenceSet *confidenceSet; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *accelSets; + struct VehicleStatus__object { + ObstacleDistance_t obDist; + DSRC_Angle_t obDirect; + DDateTime_t dateTime; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *object; + struct FullPositionVector *fullPos; /* OPTIONAL */ + ThrottlePosition_t *throttlePos; /* OPTIONAL */ + struct SpeedandHeadingandThrottleConfidence *speedHeadC; /* OPTIONAL */ + SpeedConfidence_t *speedC; /* OPTIONAL */ + struct VehicleStatus__vehicleData { + VehicleHeight_t height; + BumperHeights_t bumpers; + VehicleMass_t mass; + TrailerWeight_t trailerWeight; + VehicleType_t type; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *vehicleData; + struct VehicleIdent *vehicleIdent; /* OPTIONAL */ + struct J1939data *j1939data; /* OPTIONAL */ + struct VehicleStatus__weatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *weatherReport; + GNSSstatus_t *gnssStatus; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatus_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatus; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatus_1[22]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "WiperSet.h" +#include "BrakeSystemStatus.h" +#include "FullPositionVector.h" +#include "SpeedandHeadingandThrottleConfidence.h" +#include "VehicleIdent.h" +#include "J1939data.h" +#include "AccelerationSet4Way.h" +#include "ConfidenceSet.h" + +#endif /* _VehicleStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h new file mode 100644 index 000000000..6799429aa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusDeviceTypeTag.h @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleStatusDeviceTypeTag_H_ +#define _VehicleStatusDeviceTypeTag_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleStatusDeviceTypeTag { + VehicleStatusDeviceTypeTag_unknown = 0, + VehicleStatusDeviceTypeTag_lights = 1, + VehicleStatusDeviceTypeTag_wipers = 2, + VehicleStatusDeviceTypeTag_brakes = 3, + VehicleStatusDeviceTypeTag_stab = 4, + VehicleStatusDeviceTypeTag_trac = 5, + VehicleStatusDeviceTypeTag_abs = 6, + VehicleStatusDeviceTypeTag_sunS = 7, + VehicleStatusDeviceTypeTag_rainS = 8, + VehicleStatusDeviceTypeTag_airTemp = 9, + VehicleStatusDeviceTypeTag_steering = 10, + VehicleStatusDeviceTypeTag_vertAccelThres = 11, + VehicleStatusDeviceTypeTag_vertAccel = 12, + VehicleStatusDeviceTypeTag_hozAccelLong = 13, + VehicleStatusDeviceTypeTag_hozAccelLat = 14, + VehicleStatusDeviceTypeTag_hozAccelCon = 15, + VehicleStatusDeviceTypeTag_accel4way = 16, + VehicleStatusDeviceTypeTag_confidenceSet = 17, + VehicleStatusDeviceTypeTag_obDist = 18, + VehicleStatusDeviceTypeTag_obDirect = 19, + VehicleStatusDeviceTypeTag_yaw = 20, + VehicleStatusDeviceTypeTag_yawRateCon = 21, + VehicleStatusDeviceTypeTag_dateTime = 22, + VehicleStatusDeviceTypeTag_fullPos = 23, + VehicleStatusDeviceTypeTag_position2D = 24, + VehicleStatusDeviceTypeTag_position3D = 25, + VehicleStatusDeviceTypeTag_vehicle = 26, + VehicleStatusDeviceTypeTag_speedHeadC = 27, + VehicleStatusDeviceTypeTag_speedC = 28 + /* + * Enumeration is extensible + */ +} e_VehicleStatusDeviceTypeTag; + +/* VehicleStatusDeviceTypeTag */ +typedef long VehicleStatusDeviceTypeTag_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1; +asn_struct_free_f VehicleStatusDeviceTypeTag_free; +asn_struct_print_f VehicleStatusDeviceTypeTag_print; +asn_constr_check_f VehicleStatusDeviceTypeTag_constraint; +ber_type_decoder_f VehicleStatusDeviceTypeTag_decode_ber; +der_type_encoder_f VehicleStatusDeviceTypeTag_encode_der; +xer_type_decoder_f VehicleStatusDeviceTypeTag_decode_xer; +xer_type_encoder_f VehicleStatusDeviceTypeTag_encode_xer; +oer_type_decoder_f VehicleStatusDeviceTypeTag_decode_oer; +oer_type_encoder_f VehicleStatusDeviceTypeTag_encode_oer; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_uper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_uper; +per_type_decoder_f VehicleStatusDeviceTypeTag_decode_aper; +per_type_encoder_f VehicleStatusDeviceTypeTag_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusDeviceTypeTag_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h new file mode 100644 index 000000000..f75bc8eea --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequest.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleStatusRequest_H_ +#define _VehicleStatusRequest_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VehicleStatusDeviceTypeTag.h" +#include "NativeInteger.h" +#include "BOOLEAN.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleStatusRequest */ +typedef struct VehicleStatusRequest { + VehicleStatusDeviceTypeTag_t dataType; + long *subType; /* OPTIONAL */ + long *sendOnLessThenValue; /* OPTIONAL */ + long *sendOnMoreThenValue; /* OPTIONAL */ + BOOLEAN_t *sendAll; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequest_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleStatusRequest_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h new file mode 100644 index 000000000..8251c836d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleStatusRequestList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleStatusRequestList_H_ +#define _VehicleStatusRequestList_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 VehicleStatusRequest; + +/* VehicleStatusRequestList */ +typedef struct VehicleStatusRequestList { + A_SEQUENCE_OF(struct VehicleStatusRequest) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleStatusRequestList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleStatusRequest.h" + +#endif /* _VehicleStatusRequestList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h new file mode 100644 index 000000000..a4447d060 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePosition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleToLanePosition_H_ +#define _VehicleToLanePosition_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "StationID.h" +#include "LaneID.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleToLanePosition */ +typedef struct VehicleToLanePosition { + StationID_t stationID; + LaneID_t laneID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePosition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition; +extern asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleToLanePosition_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h new file mode 100644 index 000000000..1865e5a92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleToLanePositionList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleToLanePositionList_H_ +#define _VehicleToLanePositionList_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 VehicleToLanePosition; + +/* VehicleToLanePositionList */ +typedef struct VehicleToLanePositionList { + A_SEQUENCE_OF(struct VehicleToLanePosition) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VehicleToLanePositionList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList; +extern asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1; +extern asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[1]; +extern asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "VehicleToLanePosition.h" + +#endif /* _VehicleToLanePositionList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h new file mode 100644 index 000000000..a793e3735 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleType.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleType_H_ +#define _VehicleType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VehicleType { + VehicleType_none = 0, + VehicleType_unknown = 1, + VehicleType_special = 2, + VehicleType_moto = 3, + VehicleType_car = 4, + VehicleType_carOther = 5, + VehicleType_bus = 6, + VehicleType_axleCnt2 = 7, + VehicleType_axleCnt3 = 8, + VehicleType_axleCnt4 = 9, + VehicleType_axleCnt4Trailer = 10, + VehicleType_axleCnt5Trailer = 11, + VehicleType_axleCnt6Trailer = 12, + VehicleType_axleCnt5MultiTrailer = 13, + VehicleType_axleCnt6MultiTrailer = 14, + VehicleType_axleCnt7MultiTrailer = 15 + /* + * Enumeration is extensible + */ +} e_VehicleType; + +/* VehicleType */ +typedef long VehicleType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleType; +extern const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1; +asn_struct_free_f VehicleType_free; +asn_struct_print_f VehicleType_print; +asn_constr_check_f VehicleType_constraint; +ber_type_decoder_f VehicleType_decode_ber; +der_type_encoder_f VehicleType_encode_der; +xer_type_decoder_f VehicleType_decode_xer; +xer_type_encoder_f VehicleType_encode_xer; +oer_type_decoder_f VehicleType_decode_oer; +oer_type_encoder_f VehicleType_encode_oer; +per_type_decoder_f VehicleType_decode_uper; +per_type_encoder_f VehicleType_encode_uper; +per_type_decoder_f VehicleType_decode_aper; +per_type_encoder_f VehicleType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h new file mode 100644 index 000000000..e0bf0a82b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VehicleWidth.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VehicleWidth_H_ +#define _VehicleWidth_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleWidth */ +typedef long VehicleWidth_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleWidth; +asn_struct_free_f VehicleWidth_free; +asn_struct_print_f VehicleWidth_print; +asn_constr_check_f VehicleWidth_constraint; +ber_type_decoder_f VehicleWidth_decode_ber; +der_type_encoder_f VehicleWidth_encode_der; +xer_type_decoder_f VehicleWidth_decode_xer; +xer_type_encoder_f VehicleWidth_encode_xer; +oer_type_decoder_f VehicleWidth_decode_oer; +oer_type_encoder_f VehicleWidth_encode_oer; +per_type_decoder_f VehicleWidth_decode_uper; +per_type_encoder_f VehicleWidth_encode_uper; +per_type_decoder_f VehicleWidth_decode_aper; +per_type_encoder_f VehicleWidth_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleWidth_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h new file mode 100644 index 000000000..7cb76fe22 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Velocity.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Velocity_H_ +#define _Velocity_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Velocity */ +typedef long Velocity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Velocity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Velocity; +asn_struct_free_f Velocity_free; +asn_struct_print_f Velocity_print; +asn_constr_check_f Velocity_constraint; +ber_type_decoder_f Velocity_decode_ber; +der_type_encoder_f Velocity_encode_der; +xer_type_decoder_f Velocity_decode_xer; +xer_type_encoder_f Velocity_encode_xer; +oer_type_decoder_f Velocity_decode_oer; +oer_type_encoder_f Velocity_encode_oer; +per_type_decoder_f Velocity_decode_uper; +per_type_encoder_f Velocity_encode_uper; +per_type_decoder_f Velocity_decode_aper; +per_type_encoder_f Velocity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Velocity_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h new file mode 100644 index 000000000..bdc555719 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B07.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B07_H_ +#define _VertOffset_B07_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B07 */ +typedef long VertOffset_B07_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B07; +asn_struct_free_f VertOffset_B07_free; +asn_struct_print_f VertOffset_B07_print; +asn_constr_check_f VertOffset_B07_constraint; +ber_type_decoder_f VertOffset_B07_decode_ber; +der_type_encoder_f VertOffset_B07_encode_der; +xer_type_decoder_f VertOffset_B07_decode_xer; +xer_type_encoder_f VertOffset_B07_encode_xer; +oer_type_decoder_f VertOffset_B07_decode_oer; +oer_type_encoder_f VertOffset_B07_encode_oer; +per_type_decoder_f VertOffset_B07_decode_uper; +per_type_encoder_f VertOffset_B07_encode_uper; +per_type_decoder_f VertOffset_B07_decode_aper; +per_type_encoder_f VertOffset_B07_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B07_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h new file mode 100644 index 000000000..2f6e93460 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B08.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B08_H_ +#define _VertOffset_B08_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B08 */ +typedef long VertOffset_B08_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B08; +asn_struct_free_f VertOffset_B08_free; +asn_struct_print_f VertOffset_B08_print; +asn_constr_check_f VertOffset_B08_constraint; +ber_type_decoder_f VertOffset_B08_decode_ber; +der_type_encoder_f VertOffset_B08_encode_der; +xer_type_decoder_f VertOffset_B08_decode_xer; +xer_type_encoder_f VertOffset_B08_encode_xer; +oer_type_decoder_f VertOffset_B08_decode_oer; +oer_type_encoder_f VertOffset_B08_encode_oer; +per_type_decoder_f VertOffset_B08_decode_uper; +per_type_encoder_f VertOffset_B08_encode_uper; +per_type_decoder_f VertOffset_B08_decode_aper; +per_type_encoder_f VertOffset_B08_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B08_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h new file mode 100644 index 000000000..841a860ad --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B09.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B09_H_ +#define _VertOffset_B09_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B09 */ +typedef long VertOffset_B09_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B09; +asn_struct_free_f VertOffset_B09_free; +asn_struct_print_f VertOffset_B09_print; +asn_constr_check_f VertOffset_B09_constraint; +ber_type_decoder_f VertOffset_B09_decode_ber; +der_type_encoder_f VertOffset_B09_encode_der; +xer_type_decoder_f VertOffset_B09_decode_xer; +xer_type_encoder_f VertOffset_B09_encode_xer; +oer_type_decoder_f VertOffset_B09_decode_oer; +oer_type_encoder_f VertOffset_B09_encode_oer; +per_type_decoder_f VertOffset_B09_decode_uper; +per_type_encoder_f VertOffset_B09_encode_uper; +per_type_decoder_f VertOffset_B09_decode_aper; +per_type_encoder_f VertOffset_B09_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B09_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h new file mode 100644 index 000000000..8ce6f1bee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B10.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B10_H_ +#define _VertOffset_B10_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B10 */ +typedef long VertOffset_B10_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B10; +asn_struct_free_f VertOffset_B10_free; +asn_struct_print_f VertOffset_B10_print; +asn_constr_check_f VertOffset_B10_constraint; +ber_type_decoder_f VertOffset_B10_decode_ber; +der_type_encoder_f VertOffset_B10_encode_der; +xer_type_decoder_f VertOffset_B10_decode_xer; +xer_type_encoder_f VertOffset_B10_encode_xer; +oer_type_decoder_f VertOffset_B10_decode_oer; +oer_type_encoder_f VertOffset_B10_encode_oer; +per_type_decoder_f VertOffset_B10_decode_uper; +per_type_encoder_f VertOffset_B10_encode_uper; +per_type_decoder_f VertOffset_B10_decode_aper; +per_type_encoder_f VertOffset_B10_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B10_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h new file mode 100644 index 000000000..060aab625 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B11.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B11_H_ +#define _VertOffset_B11_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B11 */ +typedef long VertOffset_B11_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B11; +asn_struct_free_f VertOffset_B11_free; +asn_struct_print_f VertOffset_B11_print; +asn_constr_check_f VertOffset_B11_constraint; +ber_type_decoder_f VertOffset_B11_decode_ber; +der_type_encoder_f VertOffset_B11_encode_der; +xer_type_decoder_f VertOffset_B11_decode_xer; +xer_type_encoder_f VertOffset_B11_encode_xer; +oer_type_decoder_f VertOffset_B11_decode_oer; +oer_type_encoder_f VertOffset_B11_encode_oer; +per_type_decoder_f VertOffset_B11_decode_uper; +per_type_encoder_f VertOffset_B11_encode_uper; +per_type_decoder_f VertOffset_B11_decode_aper; +per_type_encoder_f VertOffset_B11_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B11_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h new file mode 100644 index 000000000..74b07b8cc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VertOffset-B12.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VertOffset_B12_H_ +#define _VertOffset_B12_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VertOffset-B12 */ +typedef long VertOffset_B12_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VertOffset_B12; +asn_struct_free_f VertOffset_B12_free; +asn_struct_print_f VertOffset_B12_print; +asn_constr_check_f VertOffset_B12_constraint; +ber_type_decoder_f VertOffset_B12_decode_ber; +der_type_encoder_f VertOffset_B12_encode_der; +xer_type_decoder_f VertOffset_B12_decode_xer; +xer_type_encoder_f VertOffset_B12_encode_xer; +oer_type_decoder_f VertOffset_B12_decode_oer; +oer_type_encoder_f VertOffset_B12_encode_oer; +per_type_decoder_f VertOffset_B12_decode_uper; +per_type_encoder_f VertOffset_B12_encode_uper; +per_type_decoder_f VertOffset_B12_decode_aper; +per_type_encoder_f VertOffset_B12_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VertOffset_B12_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h new file mode 100644 index 000000000..7c60fb9a5 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAcceleration.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VerticalAcceleration_H_ +#define _VerticalAcceleration_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VerticalAcceleration */ +typedef long VerticalAcceleration_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration; +asn_struct_free_f VerticalAcceleration_free; +asn_struct_print_f VerticalAcceleration_print; +asn_constr_check_f VerticalAcceleration_constraint; +ber_type_decoder_f VerticalAcceleration_decode_ber; +der_type_encoder_f VerticalAcceleration_encode_der; +xer_type_decoder_f VerticalAcceleration_decode_xer; +xer_type_encoder_f VerticalAcceleration_encode_xer; +oer_type_decoder_f VerticalAcceleration_decode_oer; +oer_type_encoder_f VerticalAcceleration_encode_oer; +per_type_decoder_f VerticalAcceleration_decode_uper; +per_type_encoder_f VerticalAcceleration_encode_uper; +per_type_decoder_f VerticalAcceleration_decode_aper; +per_type_encoder_f VerticalAcceleration_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAcceleration_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h new file mode 100644 index 000000000..53b1f6a47 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalAccelerationThreshold.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VerticalAccelerationThreshold_H_ +#define _VerticalAccelerationThreshold_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalAccelerationThreshold { + VerticalAccelerationThreshold_notEquipped = 0, + VerticalAccelerationThreshold_leftFront = 1, + VerticalAccelerationThreshold_leftRear = 2, + VerticalAccelerationThreshold_rightFront = 3, + VerticalAccelerationThreshold_rightRear = 4 +} e_VerticalAccelerationThreshold; + +/* VerticalAccelerationThreshold */ +typedef BIT_STRING_t VerticalAccelerationThreshold_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold; +asn_struct_free_f VerticalAccelerationThreshold_free; +asn_struct_print_f VerticalAccelerationThreshold_print; +asn_constr_check_f VerticalAccelerationThreshold_constraint; +ber_type_decoder_f VerticalAccelerationThreshold_decode_ber; +der_type_encoder_f VerticalAccelerationThreshold_encode_der; +xer_type_decoder_f VerticalAccelerationThreshold_decode_xer; +xer_type_encoder_f VerticalAccelerationThreshold_encode_xer; +oer_type_decoder_f VerticalAccelerationThreshold_decode_oer; +oer_type_encoder_f VerticalAccelerationThreshold_encode_oer; +per_type_decoder_f VerticalAccelerationThreshold_decode_uper; +per_type_encoder_f VerticalAccelerationThreshold_encode_uper; +per_type_decoder_f VerticalAccelerationThreshold_decode_aper; +per_type_encoder_f VerticalAccelerationThreshold_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalAccelerationThreshold_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h new file mode 100644 index 000000000..00a2b6223 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VerticalOffset.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _VerticalOffset_H_ +#define _VerticalOffset_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "VertOffset-B07.h" +#include "VertOffset-B08.h" +#include "VertOffset-B09.h" +#include "VertOffset-B10.h" +#include "VertOffset-B11.h" +#include "VertOffset-B12.h" +#include "DSRC_Elevation.h" +#include "RegionalExtension.h" +#include "constr_CHOICE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum VerticalOffset_PR { + VerticalOffset_PR_NOTHING, /* No components present */ + VerticalOffset_PR_offset1, + VerticalOffset_PR_offset2, + VerticalOffset_PR_offset3, + VerticalOffset_PR_offset4, + VerticalOffset_PR_offset5, + VerticalOffset_PR_offset6, + VerticalOffset_PR_elevation, + VerticalOffset_PR_regional +} VerticalOffset_PR; + +/* VerticalOffset */ +typedef struct VerticalOffset { + VerticalOffset_PR present; + union VerticalOffset_u { + VertOffset_B07_t offset1; + VertOffset_B08_t offset2; + VertOffset_B09_t offset3; + VertOffset_B10_t offset4; + VertOffset_B11_t offset5; + VertOffset_B12_t offset6; + DSRC_Elevation_t elevation; + Reg_BasicSafetyMessage_t regional; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} VerticalOffset_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_VerticalOffset; + +#ifdef __cplusplus +} +#endif + +#endif /* _VerticalOffset_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VideotexString.h new file mode 100644 index 000000000..1227f581d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/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_r63/VisibleString.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h new file mode 100644 index 000000000..a8d278bed --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/VisibleString.h @@ -0,0 +1,36 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _VisibleString_H_ +#define _VisibleString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t VisibleString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_VisibleString; +extern asn_TYPE_operation_t asn_OP_VisibleString; + +asn_constr_check_f VisibleString_constraint; + +#define VisibleString_free OCTET_STRING_free +#define VisibleString_print OCTET_STRING_print +#define VisibleString_compare OCTET_STRING_compare +#define VisibleString_constraint VisibleString_constraint +#define VisibleString_decode_ber OCTET_STRING_decode_ber +#define VisibleString_encode_der OCTET_STRING_encode_der +#define VisibleString_decode_xer OCTET_STRING_decode_xer_hex +#define VisibleString_encode_xer OCTET_STRING_encode_xer +#define VisibleString_decode_uper OCTET_STRING_decode_uper +#define VisibleString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _VisibleString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h new file mode 100644 index 000000000..0b115f41c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WaitOnStopline.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WaitOnStopline_H_ +#define _WaitOnStopline_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BOOLEAN.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WaitOnStopline */ +typedef BOOLEAN_t WaitOnStopline_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WaitOnStopline; +asn_struct_free_f WaitOnStopline_free; +asn_struct_print_f WaitOnStopline_print; +asn_constr_check_f WaitOnStopline_constraint; +ber_type_decoder_f WaitOnStopline_decode_ber; +der_type_encoder_f WaitOnStopline_encode_der; +xer_type_decoder_f WaitOnStopline_decode_xer; +xer_type_encoder_f WaitOnStopline_encode_xer; +oer_type_decoder_f WaitOnStopline_decode_oer; +oer_type_encoder_f WaitOnStopline_encode_oer; +per_type_decoder_f WaitOnStopline_decode_uper; +per_type_encoder_f WaitOnStopline_encode_uper; +per_type_decoder_f WaitOnStopline_decode_aper; +per_type_encoder_f WaitOnStopline_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WaitOnStopline_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h new file mode 100644 index 000000000..5ffd3feee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherProbe.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WeatherProbe_H_ +#define _WeatherProbe_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "AmbientAirTemperature.h" +#include "AmbientAirPressure.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct WiperSet; + +/* WeatherProbe */ +typedef struct WeatherProbe { + AmbientAirTemperature_t *airTemp; /* OPTIONAL */ + AmbientAirPressure_t *airPressure; /* OPTIONAL */ + struct WiperSet *rainRates; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherProbe_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherProbe; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherProbe_1[3]; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "WiperSet.h" + +#endif /* _WeatherProbe_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h new file mode 100644 index 000000000..c3fd41335 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WeatherReport.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WeatherReport_H_ +#define _WeatherReport_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "EssPrecipYesNo.h" +#include "EssPrecipRate.h" +#include "EssPrecipSituation.h" +#include "EssSolarRadiation.h" +#include "EssMobileFriction.h" +#include "CoefficientOfFriction.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WeatherReport */ +typedef struct WeatherReport { + EssPrecipYesNo_t isRaining; + EssPrecipRate_t *rainRate; /* OPTIONAL */ + EssPrecipSituation_t *precipSituation; /* OPTIONAL */ + EssSolarRadiation_t *solarRadiation; /* OPTIONAL */ + EssMobileFriction_t *friction; /* OPTIONAL */ + CoefficientOfFriction_t *roadFriction; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WeatherReport_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WeatherReport; +extern asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1; +extern asn_TYPE_member_t asn_MBR_WeatherReport_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WeatherReport_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h new file mode 100644 index 000000000..023abecc2 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelEndElectFault.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WheelEndElectFault_H_ +#define _WheelEndElectFault_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelEndElectFault { + WheelEndElectFault_isOk = 0, + WheelEndElectFault_isNotDefined = 1, + WheelEndElectFault_isError = 2, + WheelEndElectFault_isNotSupported = 3 +} e_WheelEndElectFault; + +/* WheelEndElectFault */ +typedef long WheelEndElectFault_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault; +extern const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1; +asn_struct_free_f WheelEndElectFault_free; +asn_struct_print_f WheelEndElectFault_print; +asn_constr_check_f WheelEndElectFault_constraint; +ber_type_decoder_f WheelEndElectFault_decode_ber; +der_type_encoder_f WheelEndElectFault_encode_der; +xer_type_decoder_f WheelEndElectFault_decode_xer; +xer_type_encoder_f WheelEndElectFault_encode_xer; +oer_type_decoder_f WheelEndElectFault_decode_oer; +oer_type_encoder_f WheelEndElectFault_encode_oer; +per_type_decoder_f WheelEndElectFault_decode_uper; +per_type_encoder_f WheelEndElectFault_encode_uper; +per_type_decoder_f WheelEndElectFault_decode_aper; +per_type_encoder_f WheelEndElectFault_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelEndElectFault_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h new file mode 100644 index 000000000..5fa91a740 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WheelSensorStatus.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WheelSensorStatus_H_ +#define _WheelSensorStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WheelSensorStatus { + WheelSensorStatus_off = 0, + WheelSensorStatus_on = 1, + WheelSensorStatus_notDefined = 2, + WheelSensorStatus_notSupported = 3 +} e_WheelSensorStatus; + +/* WheelSensorStatus */ +typedef long WheelSensorStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1; +asn_struct_free_f WheelSensorStatus_free; +asn_struct_print_f WheelSensorStatus_print; +asn_constr_check_f WheelSensorStatus_constraint; +ber_type_decoder_f WheelSensorStatus_decode_ber; +der_type_encoder_f WheelSensorStatus_encode_der; +xer_type_decoder_f WheelSensorStatus_decode_xer; +xer_type_encoder_f WheelSensorStatus_encode_xer; +oer_type_decoder_f WheelSensorStatus_decode_oer; +oer_type_encoder_f WheelSensorStatus_encode_oer; +per_type_decoder_f WheelSensorStatus_decode_uper; +per_type_encoder_f WheelSensorStatus_encode_uper; +per_type_decoder_f WheelSensorStatus_decode_aper; +per_type_encoder_f WheelSensorStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WheelSensorStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h new file mode 100644 index 000000000..a17962823 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WiperRate_H_ +#define _WiperRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperRate */ +typedef long WiperRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperRate; +asn_struct_free_f WiperRate_free; +asn_struct_print_f WiperRate_print; +asn_constr_check_f WiperRate_constraint; +ber_type_decoder_f WiperRate_decode_ber; +der_type_encoder_f WiperRate_encode_der; +xer_type_decoder_f WiperRate_decode_xer; +xer_type_encoder_f WiperRate_encode_xer; +oer_type_decoder_f WiperRate_decode_oer; +oer_type_encoder_f WiperRate_encode_oer; +per_type_decoder_f WiperRate_decode_uper; +per_type_encoder_f WiperRate_encode_uper; +per_type_decoder_f WiperRate_decode_aper; +per_type_encoder_f WiperRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h new file mode 100644 index 000000000..1b0597788 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperSet.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WiperSet_H_ +#define _WiperSet_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "WiperStatus.h" +#include "WiperRate.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* WiperSet */ +typedef struct WiperSet { + WiperStatus_t statusFront; + WiperRate_t rateFront; + WiperStatus_t *statusRear; /* OPTIONAL */ + WiperRate_t *rateRear; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WiperSet_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WiperSet; +extern asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1; +extern asn_TYPE_member_t asn_MBR_WiperSet_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperSet_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h new file mode 100644 index 000000000..56c90e94d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WiperStatus.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WiperStatus_H_ +#define _WiperStatus_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WiperStatus { + WiperStatus_unavailable = 0, + WiperStatus_off = 1, + WiperStatus_intermittent = 2, + WiperStatus_low = 3, + WiperStatus_high = 4, + WiperStatus_washerInUse = 5, + WiperStatus_automaticPresent = 6 + /* + * Enumeration is extensible + */ +} e_WiperStatus; + +/* WiperStatus */ +typedef long WiperStatus_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_WiperStatus_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_WiperStatus; +extern const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1; +asn_struct_free_f WiperStatus_free; +asn_struct_print_f WiperStatus_print; +asn_constr_check_f WiperStatus_constraint; +ber_type_decoder_f WiperStatus_decode_ber; +der_type_encoder_f WiperStatus_encode_der; +xer_type_decoder_f WiperStatus_decode_xer; +xer_type_encoder_f WiperStatus_encode_xer; +oer_type_decoder_f WiperStatus_decode_oer; +oer_type_encoder_f WiperStatus_encode_oer; +per_type_decoder_f WiperStatus_decode_uper; +per_type_encoder_f WiperStatus_encode_uper; +per_type_decoder_f WiperStatus_decode_aper; +per_type_encoder_f WiperStatus_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _WiperStatus_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h new file mode 100644 index 000000000..4e35e4236 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/WorkZone.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _WorkZone_H_ +#define _WorkZone_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "ITIScodes.h" +#include "ITIStextPhrase.h" +#include "constr_CHOICE.h" +#include "constr_SEQUENCE.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum WorkZone__Member__item_PR { + WorkZone__Member__item_PR_NOTHING, /* No components present */ + WorkZone__Member__item_PR_itis, + WorkZone__Member__item_PR_text +} WorkZone__Member__item_PR; + +/* Forward definitions */ +typedef struct WorkZone__Member { + struct WorkZone__Member__item { + WorkZone__Member__item_PR present; + union WorkZone__Member__item_u { + ITIScodes_t itis; + ITIStextPhrase_t text; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } item; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone__Member; + +/* WorkZone */ +typedef struct WorkZone { + A_SEQUENCE_OF(WorkZone__Member) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} WorkZone_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_WorkZone; +extern asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1; +extern asn_TYPE_member_t asn_MBR_WorkZone_1[1]; +extern asn_per_constraints_t asn_PER_type_WorkZone_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _WorkZone_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h new file mode 100644 index 000000000..394867a92 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawDetected.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#ifndef _YawDetected_H_ +#define _YawDetected_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawDetected */ +typedef long YawDetected_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawDetected_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawDetected; +asn_struct_free_f YawDetected_free; +asn_struct_print_f YawDetected_print; +asn_constr_check_f YawDetected_constraint; +ber_type_decoder_f YawDetected_decode_ber; +der_type_encoder_f YawDetected_encode_der; +xer_type_decoder_f YawDetected_decode_xer; +xer_type_encoder_f YawDetected_encode_xer; +oer_type_decoder_f YawDetected_decode_oer; +oer_type_encoder_f YawDetected_encode_oer; +per_type_decoder_f YawDetected_decode_uper; +per_type_encoder_f YawDetected_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawDetected_H_ */ +#include diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h new file mode 100644 index 000000000..472aef2be --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRate.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _YawRate_H_ +#define _YawRate_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* YawRate */ +typedef long YawRate_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRate_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRate; +asn_struct_free_f YawRate_free; +asn_struct_print_f YawRate_print; +asn_constr_check_f YawRate_constraint; +ber_type_decoder_f YawRate_decode_ber; +der_type_encoder_f YawRate_encode_der; +xer_type_decoder_f YawRate_decode_xer; +xer_type_encoder_f YawRate_encode_xer; +oer_type_decoder_f YawRate_decode_oer; +oer_type_encoder_f YawRate_encode_oer; +per_type_decoder_f YawRate_decode_uper; +per_type_encoder_f YawRate_encode_uper; +per_type_decoder_f YawRate_decode_aper; +per_type_encoder_f YawRate_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRate_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h new file mode 100644 index 000000000..462a090d8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/YawRateConfidence.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _YawRateConfidence_H_ +#define _YawRateConfidence_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum YawRateConfidence { + YawRateConfidence_unavailable = 0, + YawRateConfidence_degSec_100_00 = 1, + YawRateConfidence_degSec_010_00 = 2, + YawRateConfidence_degSec_005_00 = 3, + YawRateConfidence_degSec_001_00 = 4, + YawRateConfidence_degSec_000_10 = 5, + YawRateConfidence_degSec_000_05 = 6, + YawRateConfidence_degSec_000_01 = 7 +} e_YawRateConfidence; + +/* YawRateConfidence */ +typedef long YawRateConfidence_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_YawRateConfidence; +extern const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1; +asn_struct_free_f YawRateConfidence_free; +asn_struct_print_f YawRateConfidence_print; +asn_constr_check_f YawRateConfidence_constraint; +ber_type_decoder_f YawRateConfidence_decode_ber; +der_type_encoder_f YawRateConfidence_encode_der; +xer_type_decoder_f YawRateConfidence_decode_xer; +xer_type_encoder_f YawRateConfidence_encode_xer; +oer_type_decoder_f YawRateConfidence_decode_oer; +oer_type_encoder_f YawRateConfidence_encode_oer; +per_type_decoder_f YawRateConfidence_decode_uper; +per_type_encoder_f YawRateConfidence_encode_uper; +per_type_decoder_f YawRateConfidence_decode_aper; +per_type_encoder_f YawRateConfidence_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _YawRateConfidence_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h new file mode 100644 index 000000000..346110b83 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Year.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Year_H_ +#define _Year_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Year */ +typedef long Year_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Year_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Year; +asn_struct_free_f Year_free; +asn_struct_print_f Year_print; +asn_constr_check_f Year_constraint; +ber_type_decoder_f Year_decode_ber; +der_type_encoder_f Year_encode_der; +xer_type_decoder_f Year_decode_xer; +xer_type_encoder_f Year_encode_xer; +oer_type_decoder_f Year_decode_oer; +oer_type_encoder_f Year_encode_oer; +per_type_decoder_f Year_decode_uper; +per_type_encoder_f Year_encode_uper; +per_type_decoder_f Year_decode_aper; +per_type_encoder_f Year_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Year_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h new file mode 100644 index 000000000..9c942512c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ZoneLength.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _ZoneLength_H_ +#define _ZoneLength_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* ZoneLength */ +typedef long ZoneLength_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ZoneLength_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ZoneLength; +asn_struct_free_f ZoneLength_free; +asn_struct_print_f ZoneLength_print; +asn_constr_check_f ZoneLength_constraint; +ber_type_decoder_f ZoneLength_decode_ber; +der_type_encoder_f ZoneLength_encode_der; +xer_type_decoder_f ZoneLength_decode_xer; +xer_type_encoder_f ZoneLength_encode_xer; +oer_type_decoder_f ZoneLength_decode_oer; +oer_type_encoder_f ZoneLength_encode_oer; +per_type_decoder_f ZoneLength_decode_uper; +per_type_encoder_f ZoneLength_encode_uper; +per_type_decoder_f ZoneLength_decode_aper; +per_type_encoder_f ZoneLength_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ZoneLength_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h new file mode 100644 index 000000000..7c9756f67 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/Zoom.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _Zoom_H_ +#define _Zoom_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Zoom */ +typedef long Zoom_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_Zoom_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_Zoom; +asn_struct_free_f Zoom_free; +asn_struct_print_f Zoom_print; +asn_constr_check_f Zoom_constraint; +ber_type_decoder_f Zoom_decode_ber; +der_type_encoder_f Zoom_encode_der; +xer_type_decoder_f Zoom_decode_xer; +xer_type_encoder_f Zoom_encode_xer; +oer_type_decoder_f Zoom_decode_oer; +oer_type_encoder_f Zoom_encode_oer; +per_type_decoder_f Zoom_decode_uper; +per_type_encoder_f Zoom_encode_uper; +per_type_decoder_f Zoom_decode_aper; +per_type_encoder_f Zoom_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _Zoom_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h new file mode 100644 index 000000000..e35bc447a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SEQUENCE_OF.h @@ -0,0 +1,52 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SEQUENCE_OF_H +#define ASN_SEQUENCE_OF_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * SEQUENCE OF is the same as SET OF with a tiny difference: + * the delete operation preserves the initial order of elements + * and thus MAY operate in non-constant time. + */ +#define A_SEQUENCE_OF(type) A_SET_OF(type) + +#define ASN_SEQUENCE_ADD(headptr, ptr) \ + asn_sequence_add((headptr), (ptr)) + +/*********************************************** + * Implementation of the SEQUENCE OF structure. + */ + +#define asn_sequence_add asn_set_add +#define asn_sequence_empty asn_set_empty + +/* + * Delete the element from the set by its number (base 0). + * This is NOT a constant-time operation. + * The order of elements is preserved. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SEQUENCE_OF(void) asn_anonymous_sequence_; +#define _A_SEQUENCE_FROM_VOID(ptr) ((asn_anonymous_sequence_ *)(ptr)) +#define _A_CSEQUENCE_FROM_VOID(ptr) ((const asn_anonymous_sequence_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SEQUENCE_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h new file mode 100644 index 000000000..882e1a47d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_SET_OF.h @@ -0,0 +1,72 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_SET_OF_H +#define ASN_SET_OF_H + +#ifdef __cplusplus +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(decltype(*array)); \ + } +#else /* C */ +#define A_SET_OF(type) \ + struct { \ + type **array; \ + int count; /* Meaningful size */ \ + int size; /* Allocated size */ \ + void (*free)(type *); \ + } +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define ASN_SET_ADD(headptr, ptr) \ + asn_set_add((headptr), (ptr)) + +/******************************************* + * Implementation of the SET OF structure. + */ + +/* + * Add another structure into the set by its pointer. + * RETURN VALUES: + * 0 for success and -1/errno for failure. + */ +int asn_set_add(void *asn_set_of_x, void *ptr); + +/* + * Delete the element from the set by its number (base 0). + * This is a constant-time operation. The order of elements before the + * deleted ones is guaranteed, the order of elements after the deleted + * one is NOT guaranteed. + * If _do_free is given AND the (*free) is initialized, the element + * will be freed using the custom (*free) function as well. + */ +void asn_set_del(void *asn_set_of_x, int number, int _do_free); + +/* + * Empty the contents of the set. Will free the elements, if (*free) is given. + * Will NOT free the set itself. + */ +void asn_set_empty(void *asn_set_of_x); + +/* + * Cope with different conversions requirements to/from void in C and C++. + * This is mostly useful for support library. + */ +typedef A_SET_OF(void) asn_anonymous_set_; +#define _A_SET_FROM_VOID(ptr) ((asn_anonymous_set_ *)(ptr)) +#define _A_CSET_FROM_VOID(ptr) ((const asn_anonymous_set_ *)(ptr)) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h new file mode 100644 index 000000000..034f64612 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_application.h @@ -0,0 +1,171 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Application-level ASN.1 callbacks. + */ +#ifndef ASN_APPLICATION_H +#define ASN_APPLICATION_H + +#include "asn_system.h" /* for platform-dependent types */ +#include "asn_codecs.h" /* for ASN.1 codecs specifics */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A selection of ASN.1 Transfer Syntaxes to use with generalized + * encoders and decoders declared further in this .h file. + */ +enum asn_transfer_syntax { + /* Avoid appearance of a default transfer syntax. */ + ATS_INVALID = 0, + /* Plaintext output (not conforming to any standard), for debugging. */ + ATS_NONSTANDARD_PLAINTEXT, + /* Returns a randomly generated structure. */ + ATS_RANDOM, + /* + * X.690: + * BER: Basic Encoding Rules. + * DER: Distinguished Encoding Rules. + * CER: Canonical Encoding Rules. + * DER and CER are more strict variants of BER. + */ + ATS_BER, + ATS_DER, + ATS_CER, /* Only decoding is supported */ + /* + * X.696: + * OER: Octet Encoding Rules. + * CANONICAL-OER is a more strict variant of BASIC-OER. + */ + ATS_BASIC_OER, + ATS_CANONICAL_OER, + /* + * X.691: + * PER: Packed Encoding Rules. + * CANONICAL-PER is a more strict variant of BASIC-PER. + * NOTE: Produces or consumes a complete encoding (X.691 (08/2015) #11.1). + */ + ATS_UNALIGNED_BASIC_PER, + ATS_UNALIGNED_CANONICAL_PER, + ATS_ALIGNED_BASIC_PER, + ATS_ALIGNED_CANONICAL_PER, + /* + * X.693: + * XER: XML Encoding Rules. + * CANONICAL-XER is a more strict variant of BASIC-XER. + */ + ATS_BASIC_XER, + ATS_CANONICAL_XER +}; + +/* + * A generic encoder for any supported transfer syntax. + * RETURN VALUES: + * The (.encoded) field of the return value is REDEFINED to mean the following: + * >=0: The computed size of the encoded data. Can exceed the (buffer_size). + * -1: Error encoding the structure. See the error code in (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * The (.failed_type) and (.structure_ptr) MIGHT be set to the appropriate + * values at the place of failure, if at all possible. + * WARNING: The (.encoded) field of the return value can exceed the buffer_size. + * This is similar to snprintf(3) contract which might return values + * greater than the buffer size. + */ +asn_enc_rval_t asn_encode_to_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, void *buffer, size_t buffer_size); + +/* + * A variant of asn_encode_to_buffer() with automatically allocated buffer. + * RETURN VALUES: + * On success, returns a newly allocated (.buffer) containing the whole message. + * The message size is returned in (.result.encoded). + * On failure: + * (.buffer) is NULL, + * (.result.encoded) as in asn_encode_to_buffer(), + * The errno codes as in asn_encode_to_buffer(), plus the following: + * ENOMEM: Memory allocation failed due to system or internal limits. + * The user is responsible for freeing the (.buffer). + */ +typedef struct asn_encode_to_new_buffer_result_s { + void *buffer; /* NULL if failed to encode. */ + asn_enc_rval_t result; +} asn_encode_to_new_buffer_result_t; +asn_encode_to_new_buffer_result_t asn_encode_to_new_buffer( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode); + + +/* + * Generic type of an application-defined callback to return various + * types of data to the application. + * EXPECTED RETURN VALUES: + * -1: Failed to consume bytes. Abort the mission. + * Non-negative return values indicate success, and ignored. + */ +typedef int(asn_app_consume_bytes_f)(const void *buffer, size_t size, + void *application_specific_key); + + +/* + * A generic encoder for any supported transfer syntax. + * Returns the comprehensive encoding result descriptor (see asn_codecs.h). + * RETURN VALUES: + * The negative (.encoded) field of the return values is accompanied with the + * following error codes (errno): + * EINVAL: Incorrect parameters to the function, such as NULLs. + * ENOENT: Encoding transfer syntax is not defined (for this type). + * EBADF: The structure has invalid form or content constraint failed. + * EIO: The (callback) has returned negative value during encoding. + */ +asn_enc_rval_t asn_encode( + const asn_codec_ctx_t *opt_codec_parameters, /* See asn_codecs.h */ + enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_encode, + const void *structure_to_encode, + asn_app_consume_bytes_f *callback, void *callback_key); + + +/* + * A generic decoder for any supported transfer syntax. + */ +asn_dec_rval_t asn_decode( + const asn_codec_ctx_t *opt_codec_parameters, enum asn_transfer_syntax, + const struct asn_TYPE_descriptor_s *type_to_decode, + void **structure_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + + +/* + * A callback of this type is called whenever constraint validation fails + * on some ASN.1 type. See "constraints.h" for more details on constraint + * validation. + * This callback specifies a descriptor of the ASN.1 type which failed + * the constraint check, as well as human readable message on what + * particular constraint has failed. + */ +typedef void (asn_app_constraint_failed_f)(void *application_specific_key, + const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, + const void *structure_which_failed_ptr, + const char *error_message_format, ...) CC_PRINTFLIKE(4, 5); + + +#ifdef __cplusplus +} +#endif + +#include "constr_TYPE.h" /* for asn_TYPE_descriptor_t */ + +#endif /* ASN_APPLICATION_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h new file mode 100644 index 000000000..f14714bbd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_bit_data.h @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_BIT_DATA +#define ASN_BIT_DATA + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * This structure describes a position inside an incoming PER bit stream. + */ +typedef struct asn_bit_data_s { + const uint8_t *buffer; /* Pointer to the octet stream */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits in the stream */ + size_t moved; /* Number of bits moved through this bit stream */ + int (*refill)(struct asn_bit_data_s *); + void *refill_key; +} asn_bit_data_t; + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t *asn_bit_data_new_contiguous(const void *data, size_t size_bits); + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int32_t asn_get_few_bits(asn_bit_data_t *, int get_nbits); + +/* Undo the immediately preceding "get_few_bits" operation */ +void asn_get_undo(asn_bit_data_t *, int get_nbits); + +/* + * Extract a large number of bits from the specified PER data pointer. + * This function returns -1 if the specified number of bits could not be + * extracted due to EOD or other conditions. + */ +int asn_get_many_bits(asn_bit_data_t *, uint8_t *dst, int right_align, + int get_nbits); + +/* Non-thread-safe debugging function, don't use it */ +char *asn_bit_data_string(asn_bit_data_t *); + +/* + * This structure supports forming bit output. + */ +typedef struct asn_bit_outp_s { + uint8_t *buffer; /* Pointer into the (tmpspace) */ + size_t nboff; /* Bit offset to the meaningful bit */ + size_t nbits; /* Number of bits left in (tmpspace) */ + uint8_t tmpspace[32]; /* Preliminary storage to hold data */ + int (*output)(const void *data, size_t size, void *op_key); + void *op_key; /* Key for (output) data callback */ + size_t flushed_bytes; /* Bytes already flushed through (output) */ +} asn_bit_outp_t; + +/* Output a small number of bits (<= 31) */ +int asn_put_few_bits(asn_bit_outp_t *, uint32_t bits, int obits); + +/* Output a large number of bits */ +int asn_put_many_bits(asn_bit_outp_t *, const uint8_t *src, int put_nbits); + +/* + * Flush whole bytes (0 or more) through (outper) member. + * The least significant bits which are not used are guaranteed to be set to 0. + * Returns -1 if callback returns -1. Otherwise, 0. + */ +int asn_put_aligned_flush(asn_bit_outp_t *); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_BIT_DATA */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h new file mode 100644 index 000000000..e75c2709c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs.h @@ -0,0 +1,108 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_H +#define ASN_CODECS_H + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * This structure defines a set of parameters that may be passed + * to every ASN.1 encoder or decoder function. + * WARNING: if max_stack_size member is set, and you are calling the + * function pointers of the asn_TYPE_descriptor_t directly, + * this structure must be ALLOCATED ON THE STACK! + * If you can't always satisfy this requirement, use ber_decode(), + * xer_decode() and uper_decode() functions instead. + */ +typedef struct asn_codec_ctx_s { + /* + * Limit the decoder routines to use no (much) more stack than a given + * number of bytes. Most of decoders are stack-based, and this + * would protect against stack overflows if the number of nested + * encodings is high. + * The OCTET STRING, BIT STRING and ANY BER decoders are heap-based, + * and are safe from this kind of overflow. + * A value from getrlimit(RLIMIT_STACK) may be used to initialize + * this variable. Be careful in multithreaded environments, as the + * stack size is rather limited. + */ + size_t max_stack_size; /* 0 disables stack bounds checking */ +} asn_codec_ctx_t; + +/* + * Type of the return value of the encoding functions (der_encode, xer_encode). + */ +typedef struct asn_enc_rval_s { + /* + * Number of bytes encoded. + * -1 indicates failure to encode the structure. + * In this case, the members below this one are meaningful. + */ + ssize_t encoded; + + /* + * Members meaningful when (encoded == -1), for post mortem analysis. + */ + + /* Type which cannot be encoded */ + const struct asn_TYPE_descriptor_s *failed_type; + + /* Pointer to the structure of that type */ + const void *structure_ptr; +} asn_enc_rval_t; +#define ASN__ENCODE_FAILED do { \ + asn_enc_rval_t tmp_error; \ + tmp_error.encoded = -1; \ + tmp_error.failed_type = td; \ + tmp_error.structure_ptr = sptr; \ + ASN_DEBUG("Failed to encode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__ENCODED_OK(rval) do { \ + rval.structure_ptr = 0; \ + rval.failed_type = 0; \ + return rval; \ +} while(0) + +/* + * Type of the return value of the decoding functions (ber_decode, xer_decode) + * + * Please note that the number of consumed bytes is ALWAYS meaningful, + * even if code==RC_FAIL. This is to indicate the number of successfully + * decoded bytes, hence providing a possibility to fail with more diagnostics + * (i.e., print the offending remainder of the buffer). + */ +enum asn_dec_rval_code_e { + RC_OK, /* Decoded successfully */ + RC_WMORE, /* More data expected, call again */ + RC_FAIL /* Failure to decode data */ +}; +typedef struct asn_dec_rval_s { + enum asn_dec_rval_code_e code; /* Result code */ + size_t consumed; /* Number of bytes consumed */ +} asn_dec_rval_t; +#define ASN__DECODE_FAILED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_FAIL; \ + tmp_error.consumed = 0; \ + ASN_DEBUG("Failed to decode element %s", td ? td->name : ""); \ + return tmp_error; \ +} while(0) +#define ASN__DECODE_STARVED do { \ + asn_dec_rval_t tmp_error; \ + tmp_error.code = RC_WMORE; \ + tmp_error.consumed = 0; \ + return tmp_error; \ +} while(0) + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h new file mode 100644 index 000000000..fbc557648 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_codecs_prim.h @@ -0,0 +1,51 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_CODECS_PRIM_H +#define ASN_CODECS_PRIM_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct ASN__PRIMITIVE_TYPE_s { + uint8_t *buf; /* Buffer with consecutive primitive encoding bytes */ + size_t size; /* Size of the buffer */ +} ASN__PRIMITIVE_TYPE_t; /* Do not use this type directly! */ + +asn_struct_free_f ASN__PRIMITIVE_TYPE_free; +ber_type_decoder_f ber_decode_primitive; +der_type_encoder_f der_encode_primitive; + +/* + * A callback specification for the xer_decode_primitive() function below. + */ +enum xer_pbd_rval { + XPBD_SYSTEM_FAILURE, /* System failure (memory shortage, etc) */ + XPBD_DECODER_LIMIT, /* Hit some decoder limitation or deficiency */ + XPBD_BROKEN_ENCODING, /* Encoding of a primitive body is broken */ + XPBD_NOT_BODY_IGNORE, /* Not a body format, but safe to ignore */ + XPBD_BODY_CONSUMED /* Body is recognized and consumed */ +}; +typedef enum xer_pbd_rval(xer_primitive_body_decoder_f)( + const asn_TYPE_descriptor_t *td, void *struct_ptr, const void *chunk_buf, + size_t chunk_size); + +/* + * Specific function to decode simple primitive types. + * Also see xer_decode_general() in xer_decoder.h + */ +asn_dec_rval_t xer_decode_primitive( + const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + size_t struct_size, const char *opt_mname, const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_CODECS_PRIM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h new file mode 100644 index 000000000..77b270c35 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_internal.h @@ -0,0 +1,153 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Declarations internally useful for the ASN.1 support code. + */ +#ifndef ASN_INTERNAL_H +#define ASN_INTERNAL_H +#ifndef __EXTENSIONS__ +#define __EXTENSIONS__ /* for Sun */ +#endif + +#include "asn_application.h" /* Application-visible API */ + +#ifndef __NO_ASSERT_H__ /* Include assert.h only for internal use. */ +#include /* for assert() macro */ +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* Environment version might be used to avoid running with the old library */ +#define ASN1C_ENVIRONMENT_VERSION 923 /* Compile-time version */ +int get_asn1c_environment_version(void); /* Run-time version */ + +#define CALLOC(nmemb, size) calloc(nmemb, size) +#define MALLOC(size) malloc(size) +#define REALLOC(oldptr, size) realloc(oldptr, size) +#define FREEMEM(ptr) free(ptr) + +#define asn_debug_indent 0 +#define ASN_DEBUG_INDENT_ADD(i) do{}while(0) + +#ifdef EMIT_ASN_DEBUG +#warning "Use ASN_EMIT_DEBUG instead of EMIT_ASN_DEBUG" +#define ASN_EMIT_DEBUG EMIT_ASN_DEBUG +#endif + +/* + * A macro for debugging the ASN.1 internals. + * You may enable or override it. + */ +#ifndef ASN_DEBUG /* If debugging code is not defined elsewhere... */ +#if ASN_EMIT_DEBUG == 1 /* And it was asked to emit this code... */ +#if __STDC_VERSION__ >= 199901L +#ifdef ASN_THREAD_SAFE +/* Thread safety requires sacrifice in output indentation: + * Retain empty definition of ASN_DEBUG_INDENT_ADD. */ +#else /* !ASN_THREAD_SAFE */ +#undef ASN_DEBUG_INDENT_ADD +#undef asn_debug_indent +int asn_debug_indent; +#define ASN_DEBUG_INDENT_ADD(i) do { asn_debug_indent += i; } while(0) +#endif /* ASN_THREAD_SAFE */ +#define ASN_DEBUG(fmt, args...) do { \ + int adi = asn_debug_indent; \ + while(adi--) fprintf(stderr, " "); \ + fprintf(stderr, fmt, ##args); \ + fprintf(stderr, " (%s:%d)\n", \ + __FILE__, __LINE__); \ + } while(0) +#else /* !C99 */ +void CC_PRINTFLIKE(1, 2) ASN_DEBUG_f(const char *fmt, ...); +#define ASN_DEBUG ASN_DEBUG_f +#endif /* C99 */ +#else /* ASN_EMIT_DEBUG != 1 */ +#if __STDC_VERSION__ >= 199901L +#define ASN_DEBUG(...) do{}while(0) +#else /* not C99 */ +static void CC_PRINTFLIKE(1, 2) ASN_DEBUG(const char *fmt, ...) { (void)fmt; } +#endif /* C99 or better */ +#endif /* ASN_EMIT_DEBUG */ +#endif /* ASN_DEBUG */ + +/* + * Print to a callback. + * The callback is expected to return negative values on error. + * 0 and positive values are treated as success. + * RETURN VALUES: + * -1: Failed to format or invoke the callback. + * >0: Size of the data that got delivered to the callback. + */ +ssize_t CC_PRINTFLIKE(3, 4) +asn__format_to_callback( + int (*callback)(const void *, size_t, void *key), void *key, + const char *fmt, ...); + +/* + * Invoke the application-supplied callback and fail, if something is wrong. + */ +#define ASN__E_cbc(buf, size) (cb((buf), (size), app_key) < 0) +#define ASN__E_CALLBACK(size, foo) \ + do { \ + if(foo) goto cb_failed; \ + er.encoded += (size); \ + } while(0) +#define ASN__CALLBACK(buf, size) ASN__E_CALLBACK(size, ASN__E_cbc(buf, size)) +#define ASN__CALLBACK2(buf1, size1, buf2, size2) \ + ASN__E_CALLBACK((size1) + (size2), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2)) +#define ASN__CALLBACK3(buf1, size1, buf2, size2, buf3, size3) \ + ASN__E_CALLBACK((size1) + (size2) + (size3), \ + ASN__E_cbc(buf1, size1) || ASN__E_cbc(buf2, size2) \ + || ASN__E_cbc(buf3, size3)) + +#define ASN__TEXT_INDENT(nl, level) \ + do { \ + int tmp_level = (level); \ + int tmp_nl = ((nl) != 0); \ + int tmp_i; \ + if(tmp_nl) ASN__CALLBACK("\n", 1); \ + if(tmp_level < 0) tmp_level = 0; \ + for(tmp_i = 0; tmp_i < tmp_level; tmp_i++) ASN__CALLBACK(" ", 4); \ + } while(0) + +#define _i_INDENT(nl) do { \ + int tmp_i; \ + if((nl) && cb("\n", 1, app_key) < 0) \ + return -1; \ + for(tmp_i = 0; tmp_i < ilevel; tmp_i++) \ + if(cb(" ", 4, app_key) < 0) \ + return -1; \ + } while(0) + +/* + * Check stack against overflow, if limit is set. + */ +#define ASN__DEFAULT_STACK_MAX (30000) +static int CC_NOTUSED +ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) { + if(ctx && ctx->max_stack_size) { + + /* ctx MUST be allocated on the stack */ + ptrdiff_t usedstack = ((const char *)ctx - (const char *)&ctx); + if(usedstack > 0) usedstack = -usedstack; /* grows up! */ + + /* double negative required to avoid int wrap-around */ + if(usedstack < -(ptrdiff_t)ctx->max_stack_size) { + ASN_DEBUG("Stack limit %ld reached", + (long)ctx->max_stack_size); + return -1; + } + } + return 0; +} + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_INTERNAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h new file mode 100644 index 000000000..7de210ee0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_ioc.h @@ -0,0 +1,51 @@ +/* + * Run-time support for Information Object Classes. + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_IOC_H +#define ASN_IOC_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; +struct asn_ioc_cell_s; + +/* + * X.681, #13 + */ +typedef struct asn_ioc_set_s { + size_t rows_count; + size_t columns_count; + const struct asn_ioc_cell_s *rows; +} asn_ioc_set_t; + + +typedef struct asn_ioc_cell_s { + const char *field_name; /* Is equal to corresponding column_name */ + enum { + aioc__undefined = 0, + aioc__value, + aioc__type, + aioc__open_type, + } cell_kind; + struct asn_TYPE_descriptor_s *type_descriptor; + const void *value_sptr; + struct { + size_t types_count; + struct { + unsigned choice_position; + } *types; + } open_type; +} asn_ioc_cell_t; + + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_IOC_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h new file mode 100644 index 000000000..47f9b8af0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_random_fill.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_RANDOM_FILL +#define ASN_RANDOM_FILL + +/* Forward declarations */ +struct asn_TYPE_descriptor_s; +struct asn_encoding_constraints_s; + +/* + * Initialize a structure with random data according to the type specification + * and optional member constraints. + * ARGUMENTS: + * (max_length) - See (approx_max_length_limit). + * (memb_constraints) - Member constraints, if exist. + * The type can be constrained differently according + * to PER and OER specifications, so we find a value + * at the intersection of these constraints. + * In case the return differs from ARFILL_OK, the (struct_ptr) contents + * and (current_length) value remain in their original state. + */ +typedef struct asn_random_fill_result_s { + enum { + ARFILL_FAILED = -1, /* System error (memory?) */ + ARFILL_OK = 0, /* Initialization succeeded */ + ARFILL_SKIPPED = 1 /* Not done due to (length?) constraint */ + } code; + size_t length; /* Approximate number of bytes created. */ +} asn_random_fill_result_t; +typedef asn_random_fill_result_t(asn_random_fill_f)( + const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + const struct asn_encoding_constraints_s *memb_constraints, + size_t max_length); + +/* + * Returns 0 if the structure was properly initialized, -1 otherwise. + * The (approx_max_length_limit) specifies the approximate limit of the + * resulting structure in units closely resembling bytes. The actual result + * might be several times larger or smaller than the length limit. + */ +int asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t approx_max_length_limit); + +/* + * Returns a random number between min and max. + */ +intmax_t asn_random_between(intmax_t min, intmax_t max); + +#endif /* ASN_RANDOM_FILL */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h new file mode 100644 index 000000000..fa8cf1165 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/asn_system.h @@ -0,0 +1,150 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Miscellaneous system-dependent types. + */ +#ifndef ASN_SYSTEM_H +#define ASN_SYSTEM_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifndef _DEFAULT_SOURCE +#define _DEFAULT_SOURCE 1 +#endif + +#ifndef _BSD_SOURCE +#define _BSD_SOURCE /* for snprintf() on some linux systems */ +#endif + +#include /* For snprintf(3) */ +#include /* For *alloc(3) */ +#include /* For memcpy(3) */ +#include /* For size_t */ +#include /* For LONG_MAX */ +#include /* For va_start */ +#include /* for offsetof and ptrdiff_t */ + +#ifdef _WIN32 + +#include +#define snprintf _snprintf +#define vsnprintf _vsnprintf + +/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ +#define sys_ntohl(l) ((((l) << 24) & 0xff000000) \ + | (((l) << 8) & 0xff0000) \ + | (((l) >> 8) & 0xff00) \ + | ((l >> 24) & 0xff)) + +#ifdef _MSC_VER /* MSVS.Net */ +#ifndef __cplusplus +#define inline __inline +#endif +#ifndef ASSUMESTDTYPES /* Standard types have been defined elsewhere */ +#define ssize_t SSIZE_T +#if _MSC_VER < 1600 +typedef char int8_t; +typedef short int16_t; +typedef int int32_t; +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; +#else /* _MSC_VER >= 1600 */ +#include +#endif /* _MSC_VER < 1600 */ +#endif /* ASSUMESTDTYPES */ +#define WIN32_LEAN_AND_MEAN +#include +#include +#define isnan _isnan +#define finite _finite +#define copysign _copysign +#define ilogb _logb +#else /* !_MSC_VER */ +#include +#endif /* _MSC_VER */ + +#else /* !_WIN32 */ + +#if defined(__vxworks) +#include +#else /* !defined(__vxworks) */ + +#include /* C99 specifies this file */ +#include /* for ntohl() */ +#define sys_ntohl(foo) ntohl(foo) +#endif /* defined(__vxworks) */ + +#endif /* _WIN32 */ + +#if __GNUC__ >= 3 || defined(__clang__) +#define CC_ATTRIBUTE(attr) __attribute__((attr)) +#else +#define CC_ATTRIBUTE(attr) +#endif +#define CC_PRINTFLIKE(fmt, var) CC_ATTRIBUTE(format(printf, fmt, var)) +#define CC_NOTUSED CC_ATTRIBUTE(unused) +#ifndef CC_ATTR_NO_SANITIZE +#define CC_ATTR_NO_SANITIZE(what) CC_ATTRIBUTE(no_sanitize(what)) +#endif + +/* Figure out if thread safety is requested */ +#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT)) +#define ASN_THREAD_SAFE +#endif /* Thread safety */ + +#ifndef offsetof /* If not defined by */ +#define offsetof(s, m) ((ptrdiff_t)&(((s *)0)->m) - (ptrdiff_t)((s *)0)) +#endif /* offsetof */ + +#ifndef MIN /* Suitable for comparing primitive types (integers) */ +#if defined(__GNUC__) +#define MIN(a,b) ({ __typeof a _a = a; __typeof b _b = b; \ + ((_a)<(_b)?(_a):(_b)); }) +#else /* !__GNUC__ */ +#define MIN(a,b) ((a)<(b)?(a):(b)) /* Unsafe variant */ +#endif /* __GNUC__ */ +#endif /* MIN */ + +#if __STDC_VERSION__ >= 199901L +#ifndef SIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#endif + +#ifndef RSIZE_MAX /* C11, Annex K */ +#define RSIZE_MAX (SIZE_MAX >> 1) +#endif +#ifndef RSSIZE_MAX /* Halve signed size even further than unsigned */ +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif +#else /* Old compiler */ +#undef SIZE_MAX +#undef RSIZE_MAX +#undef RSSIZE_MAX +#define SIZE_MAX ((~((size_t)0)) >> 1) +#define RSIZE_MAX (SIZE_MAX >> 1) +#define RSSIZE_MAX ((ssize_t)(RSIZE_MAX >> 1)) +#endif + +#if __STDC_VERSION__ >= 199901L +#define ASN_PRI_SIZE "zu" +#define ASN_PRI_SSIZE "zd" +#define ASN_PRIuMAX PRIuMAX +#define ASN_PRIdMAX PRIdMAX +#else +#define ASN_PRI_SIZE "lu" +#define ASN_PRI_SSIZE "ld" +#if LLONG_MAX > LONG_MAX +#define ASN_PRIuMAX "llu" +#define ASN_PRIdMAX "lld" +#else +#define ASN_PRIuMAX "lu" +#define ASN_PRIdMAX "ld" +#endif +#endif + +#endif /* ASN_SYSTEM_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h new file mode 100644 index 000000000..1ac2a5ef0 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_decoder.h @@ -0,0 +1,66 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_DECODER_H_ +#define _BER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The BER decoder of any type. + * This function may be invoked directly from the application. + * Decodes BER, DER and CER data (DER and CER are different subsets of BER). + * + * NOTE: Use the der_encode() function (der_encoder.h) to produce encoding + * which is compliant with ber_decode(). + */ +asn_dec_rval_t ber_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ +); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(ber_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const void *buf_ptr, size_t size, int tag_mode); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Check that all tags correspond to the type definition (as given in head). + * On return, last_length would contain either a non-negative length of the + * value part of the last TLV, or the negative number of expected + * "end of content" sequences. The number may only be negative if the + * head->last_tag_form is non-zero. + */ +asn_dec_rval_t ber_check_tags( + const struct asn_codec_ctx_s *opt_codec_ctx, /* codec options */ + const struct asn_TYPE_descriptor_s *type_descriptor, + asn_struct_ctx_t *opt_ctx, /* saved decoding context */ + const void *ptr, size_t size, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {-1,0:1}: any, primitive, constr */ + ber_tlv_len_t *last_length, int *opt_tlv_form /* optional tag form */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h new file mode 100644 index 000000000..d1e4d48dd --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_length.h @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_LENGTH_H_ +#define _BER_TLV_LENGTH_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ssize_t ber_tlv_len_t; + +/* + * This function tries to fetch the length of the BER TLV value and place it + * in *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + * On return with >0, len_r is constrained as -1..MAX, where -1 mean + * that the value is of indefinite length. + */ +ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r); + +/* + * This function expects bufptr to be positioned over L in TLV. + * It returns number of bytes occupied by L and V together, suitable + * for skipping. The function properly handles indefinite length. + * RETURN VALUES: + * Standard {-1,0,>0} convention. + */ +ssize_t ber_skip_length( + const struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */ + int _is_constructed, const void *bufptr, size_t size); + +/* + * This function serializes the length (L from TLV) in DER format. + * It always returns number of bytes necessary to represent the length, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t der_tlv_length_serialize(ber_tlv_len_t len, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_LENGTH_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h new file mode 100644 index 000000000..ce227add6 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/ber_tlv_tag.h @@ -0,0 +1,60 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _BER_TLV_TAG_H_ +#define _BER_TLV_TAG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum asn_tag_class { + ASN_TAG_CLASS_UNIVERSAL = 0, /* 0b00 */ + ASN_TAG_CLASS_APPLICATION = 1, /* 0b01 */ + ASN_TAG_CLASS_CONTEXT = 2, /* 0b10 */ + ASN_TAG_CLASS_PRIVATE = 3 /* 0b11 */ +}; +typedef unsigned ber_tlv_tag_t; /* BER TAG from Tag-Length-Value */ + +/* + * Tag class is encoded together with tag value for optimization purposes. + */ +#define BER_TAG_CLASS(tag) ((tag) & 0x3) +#define BER_TAG_VALUE(tag) ((tag) >> 2) +#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0) + +#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2)) + +/* + * Several functions for printing the TAG in the canonical form + * (i.e. "[PRIVATE 0]"). + * Return values correspond to their libc counterparts (if any). + */ +ssize_t ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t buflen); +ssize_t ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *); +char *ber_tlv_tag_string(ber_tlv_tag_t tag); + + +/* + * This function tries to fetch the tag from the input stream. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering tag. + * >0: Number of bytes used from bufptr. tag_r will contain the tag. + */ +ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r); + +/* + * This function serializes the tag (T from TLV) in BER format. + * It always returns number of bytes necessary to represent the tag, + * it is a caller's responsibility to check the return value + * against the supplied buffer's size. + */ +size_t ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufptr, size_t size); + +#ifdef __cplusplus +} +#endif + +#endif /* _BER_TLV_TAG_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h new file mode 100644 index 000000000..a1999edc4 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_CHOICE.h @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_CHOICE_H_ +#define _CONSTR_CHOICE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_CHOICE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_codec_ctx_t member */ + unsigned pres_offset; /* Identifier of the present member */ + unsigned pres_size; /* Size of the identifier (enum) */ + + /* + * Tags to members mapping table. + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* Canonical ordering of CHOICE elements, for PER */ + const unsigned *to_canonical_order; + const unsigned *from_canonical_order; + + /* + * Extensions-related stuff. + */ + signed ext_start; /* First member of extensions, or -1 */ +} asn_CHOICE_specifics_t; + +/* + * A set specialized functions dealing with the CHOICE type. + */ +asn_struct_free_f CHOICE_free; +asn_struct_print_f CHOICE_print; +asn_struct_compare_f CHOICE_compare; +asn_constr_check_f CHOICE_constraint; +ber_type_decoder_f CHOICE_decode_ber; +der_type_encoder_f CHOICE_encode_der; +xer_type_decoder_f CHOICE_decode_xer; +xer_type_encoder_f CHOICE_encode_xer; +oer_type_decoder_f CHOICE_decode_oer; +oer_type_encoder_f CHOICE_encode_oer; +per_type_decoder_f CHOICE_decode_uper; +per_type_encoder_f CHOICE_encode_uper; +per_type_decoder_f CHOICE_decode_aper; +per_type_encoder_f CHOICE_encode_aper; +asn_outmost_tag_f CHOICE_outmost_tag; +asn_random_fill_f CHOICE_random_fill; +extern asn_TYPE_operation_t asn_OP_CHOICE; + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, + const void *structure_ptr); + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, + void *structure_ptr, unsigned present); + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_CHOICE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h new file mode 100644 index 000000000..a22ed3a27 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE.h @@ -0,0 +1,68 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_H_ +#define _CONSTR_SEQUENCE_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SEQUENCE_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* + * Tags to members mapping table (sorted). + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* + * Optional members of the extensions root (roms) or additions (aoms). + * Meaningful for PER. + */ + const int *oms; /* Optional MemberS */ + unsigned roms_count; /* Root optional members count */ + unsigned aoms_count; /* Additions optional members count */ + + /* + * Description of an extensions group. + * Root components are clustered at the beginning of the structure, + * whereas extensions are clustered at the end. -1 means not extensible. + */ + signed first_extension; /* First extension addition */ +} asn_SEQUENCE_specifics_t; + + +/* + * A set specialized functions dealing with the SEQUENCE type. + */ +asn_struct_free_f SEQUENCE_free; +asn_struct_print_f SEQUENCE_print; +asn_struct_compare_f SEQUENCE_compare; +asn_constr_check_f SEQUENCE_constraint; +ber_type_decoder_f SEQUENCE_decode_ber; +der_type_encoder_f SEQUENCE_encode_der; +xer_type_decoder_f SEQUENCE_decode_xer; +xer_type_encoder_f SEQUENCE_encode_xer; +oer_type_decoder_f SEQUENCE_decode_oer; +oer_type_encoder_f SEQUENCE_encode_oer; +per_type_decoder_f SEQUENCE_decode_uper; +per_type_encoder_f SEQUENCE_encode_uper; +per_type_decoder_f SEQUENCE_decode_aper; +per_type_encoder_f SEQUENCE_encode_aper; +asn_random_fill_f SEQUENCE_random_fill; +extern asn_TYPE_operation_t asn_OP_SEQUENCE; + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SEQUENCE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h new file mode 100644 index 000000000..6857f0f0c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SEQUENCE_OF.h @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SEQUENCE_OF_H_ +#define _CONSTR_SEQUENCE_OF_H_ + +#include +#include /* Implemented using SET OF */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * A set specialized functions dealing with the SEQUENCE OF type. + * Generally implemented using SET OF. + */ +asn_struct_compare_f SEQUENCE_OF_compare; +der_type_encoder_f SEQUENCE_OF_encode_der; +xer_type_encoder_f SEQUENCE_OF_encode_xer; +per_type_encoder_f SEQUENCE_OF_encode_uper; +per_type_encoder_f SEQUENCE_OF_encode_aper; +extern asn_TYPE_operation_t asn_OP_SEQUENCE_OF; + +#define SEQUENCE_OF_free SET_OF_free +#define SEQUENCE_OF_print SET_OF_print +#define SEQUENCE_OF_constraint SET_OF_constraint +#define SEQUENCE_OF_decode_ber SET_OF_decode_ber +#define SEQUENCE_OF_decode_xer SET_OF_decode_xer +#define SEQUENCE_OF_decode_oer SET_OF_decode_oer +#define SEQUENCE_OF_encode_oer SET_OF_encode_oer +#define SEQUENCE_OF_decode_uper SET_OF_decode_uper +#define SEQUENCE_OF_decode_aper SET_OF_decode_aper +#define SEQUENCE_OF_random_fill SET_OF_random_fill + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_OF_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h new file mode 100644 index 000000000..eb61b5a39 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET.h @@ -0,0 +1,86 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _CONSTR_SET_H_ +#define _CONSTR_SET_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +typedef const struct asn_SET_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + unsigned pres_offset; /* Offset of _presence_map member */ + + /* + * Tags to members mapping table (sorted). + * Sometimes suitable for DER encoding (untagged CHOICE is present); + * if so, tag2el_count will be greater than td->elements_count. + */ + const asn_TYPE_tag2member_t *tag2el; + unsigned tag2el_count; + + /* + * Tags to members mapping table, second edition. + * Suitable for CANONICAL-XER encoding. + */ + const asn_TYPE_tag2member_t *tag2el_cxer; + unsigned tag2el_cxer_count; + + /* + * Extensions-related stuff. + */ + int extensible; /* Whether SET is extensible */ + const unsigned int *_mandatory_elements; /* Bitmask of mandatory ones */ +} asn_SET_specifics_t; + +/* + * A set specialized functions dealing with the SET type. + */ +asn_struct_free_f SET_free; +asn_struct_print_f SET_print; +asn_struct_compare_f SET_compare; +asn_constr_check_f SET_constraint; +ber_type_decoder_f SET_decode_ber; +der_type_encoder_f SET_encode_der; +xer_type_decoder_f SET_decode_xer; +xer_type_encoder_f SET_encode_xer; +per_type_decoder_f SET_decode_uper; +per_type_encoder_f SET_encode_uper; +extern asn_TYPE_operation_t asn_OP_SET; + +/*********************** + * Some handy helpers. * + ***********************/ + +/* + * Figure out whether the SET member indicated by PR_x has already been decoded. + * It is very simple bitfield test, despite its visual complexity. + */ +#define ASN_SET_ISPRESENT(set_ptr, PR_x) \ + ASN_SET_ISPRESENT2(&((set_ptr)->_presence_map), PR_x) +#define ASN_SET_ISPRESENT2(map_ptr, PR_x) \ + (((unsigned int *)(map_ptr)) \ + [(PR_x) / (8 * sizeof(unsigned int))] \ + & (1 << ((8 * sizeof(unsigned int)) - 1 \ + - ((PR_x) % (8 * sizeof(unsigned int)))))) + +#define ASN_SET_MKPRESENT(map_ptr, PR_x) \ + (((unsigned int *)(map_ptr)) \ + [(PR_x) / (8 * sizeof(unsigned int))] \ + |= (1 << ((8 * sizeof(unsigned int)) - 1 \ + - ((PR_x) % (8 * sizeof(unsigned int)))))) + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_SET_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h new file mode 100644 index 000000000..768106271 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_SET_OF.h @@ -0,0 +1,49 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef CONSTR_SET_OF_H +#define CONSTR_SET_OF_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct asn_SET_OF_specifics_s { + /* + * Target structure description. + */ + unsigned struct_size; /* Size of the target structure. */ + unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */ + + /* XER-specific stuff */ + int as_XMLValueList; /* The member type must be encoded like this */ +} asn_SET_OF_specifics_t; + +/* + * A set specialized functions dealing with the SET OF type. + */ +asn_struct_free_f SET_OF_free; +asn_struct_print_f SET_OF_print; +asn_struct_compare_f SET_OF_compare; +asn_constr_check_f SET_OF_constraint; +ber_type_decoder_f SET_OF_decode_ber; +der_type_encoder_f SET_OF_encode_der; +xer_type_decoder_f SET_OF_decode_xer; +xer_type_encoder_f SET_OF_encode_xer; +oer_type_decoder_f SET_OF_decode_oer; +oer_type_encoder_f SET_OF_encode_oer; +per_type_decoder_f SET_OF_decode_uper; +per_type_encoder_f SET_OF_encode_uper; +per_type_decoder_f SET_OF_decode_aper; +per_type_encoder_f SET_OF_encode_aper; +asn_random_fill_f SET_OF_random_fill; +extern asn_TYPE_operation_t asn_OP_SET_OF; + +#ifdef __cplusplus +} +#endif + +#endif /* CONSTR_SET_OF_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h new file mode 100644 index 000000000..567a75cbe --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constr_TYPE.h @@ -0,0 +1,262 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This file contains the declaration structure called "ASN.1 Type Definition", + * which holds all information necessary for encoding and decoding routines. + * This structure even contains pointer to these encoding and decoding routines + * for each defined ASN.1 type. + */ +#ifndef _CONSTR_TYPE_H_ +#define _CONSTR_TYPE_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_TYPE_member_s; /* Forward declaration */ + +/* + * This type provides the context information for various ASN.1 routines, + * primarily ones doing decoding. A member _asn_ctx of this type must be + * included into certain target language's structures, such as compound types. + */ +typedef struct asn_struct_ctx_s { + short phase; /* Decoding phase */ + short step; /* Elementary step of a phase */ + int context; /* Other context information */ + void *ptr; /* Decoder-specific stuff (stack elements) */ + ber_tlv_len_t left; /* Number of bytes left, -1 for indefinite */ +} asn_struct_ctx_t; + +#include /* Basic Encoding Rules decoder */ +#include /* Distinguished Encoding Rules encoder */ +#include /* Decoder of XER (XML, text) */ +#include /* Encoder into XER (XML, text) */ +#include /* Packet Encoding Rules decoder */ +#include /* Packet Encoding Rules encoder */ +#include /* Subtype constraints support */ +#include /* Random structures support */ + +#ifdef ASN_DISABLE_OER_SUPPORT +typedef void (oer_type_decoder_f)(void); +typedef void (oer_type_encoder_f)(void); +typedef void asn_oer_constraints_t; +#else +#include /* Octet Encoding Rules encoder */ +#include /* Octet Encoding Rules encoder */ +#endif + +/* + * Free the structure according to its specification. + * Use one of ASN_STRUCT_{FREE,RESET,CONTENTS_ONLY} macros instead. + * Do not use directly. + */ +enum asn_struct_free_method { + ASFM_FREE_EVERYTHING, /* free(struct_ptr) and underlying members */ + ASFM_FREE_UNDERLYING, /* free underlying members */ + ASFM_FREE_UNDERLYING_AND_RESET /* FREE_UNDERLYING + memset(0) */ +}; +typedef void (asn_struct_free_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + void *struct_ptr, enum asn_struct_free_method); + +/* + * Free the structure including freeing the memory pointed to by ptr itself. + */ +#define ASN_STRUCT_FREE(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_EVERYTHING) + +/* + * Free the memory used by the members of the structure without freeing the + * the structure pointer itself. + * ZERO-OUT the structure to the safe clean state. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + */ +#define ASN_STRUCT_RESET(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING_AND_RESET) + +/* + * Free memory used by the members of the structure without freeing + * the structure pointer itself. + * (Retaining the pointer may be useful in case the structure is allocated + * statically or arranged on the stack, yet its elements are dynamic.) + * AVOID using it in the application code; + * Use a safer ASN_STRUCT_RESET() instead. + */ +#define ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr) \ + (asn_DEF).op->free_struct(&(asn_DEF), (ptr), ASFM_FREE_UNDERLYING) + +/* + * Print the structure according to its specification. + */ +typedef int(asn_struct_print_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, + int level, /* Indentation level */ + asn_app_consume_bytes_f *callback, void *app_key); + +/* + * Compare two structs between each other. + * Returns <0 if struct_A is "smaller" than struct_B, >0 if "greater", + * and =0 if "equal to", for some type-specific, stable definition of + * "smaller", "greater" and "equal to". + */ +typedef int (asn_struct_compare_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_A, + const void *struct_B); + +/* + * Return the outmost tag of the type. + * If the type is untagged CHOICE, the dynamic operation is performed. + * NOTE: This function pointer type is only useful internally. + * Do not use it in your application. + */ +typedef ber_tlv_tag_t (asn_outmost_tag_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag); +/* The instance of the above function type; used internally. */ +asn_outmost_tag_f asn_TYPE_outmost_tag; + +/* + * Fetch the desired type of the Open Type based on the + * Information Object Set driven constraints. + */ +typedef struct asn_type_selector_result_s { + const struct asn_TYPE_descriptor_s *type_descriptor; /* Type encoded. */ + unsigned presence_index; /* Associated choice variant. */ +} asn_type_selector_result_t; +typedef asn_type_selector_result_t(asn_type_selector_f)( + const struct asn_TYPE_descriptor_s *parent_type_descriptor, + const void *parent_structure_ptr); + +/* + * Generalized functions for dealing with the speciic type. + * May be directly invoked by applications. + */ +typedef struct asn_TYPE_operation_s { + asn_struct_free_f *free_struct; /* Free the structure */ + asn_struct_print_f *print_struct; /* Human readable output */ + asn_struct_compare_f *compare_struct; /* Compare two structures */ + ber_type_decoder_f *ber_decoder; /* Generic BER decoder */ + der_type_encoder_f *der_encoder; /* Canonical DER encoder */ + xer_type_decoder_f *xer_decoder; /* Generic XER decoder */ + xer_type_encoder_f *xer_encoder; /* [Canonical] XER encoder */ + oer_type_decoder_f *oer_decoder; /* Generic OER decoder */ + oer_type_encoder_f *oer_encoder; /* Canonical OER encoder */ + per_type_decoder_f *uper_decoder; /* Unaligned PER decoder */ + per_type_encoder_f *uper_encoder; /* Unaligned PER encoder */ + per_type_decoder_f *aper_decoder; /* Aligned PER decoder */ + per_type_encoder_f *aper_encoder; /* Aligned PER encoder */ + asn_random_fill_f *random_fill; /* Initialize with a random value */ + asn_outmost_tag_f *outmost_tag; /* */ +} asn_TYPE_operation_t; + +/* + * A constraints tuple specifying both the OER and PER constraints. + */ +typedef struct asn_encoding_constraints_s { + const struct asn_oer_constraints_s *oer_constraints; + const struct asn_per_constraints_s *per_constraints; + asn_constr_check_f *general_constraints; +} asn_encoding_constraints_t; + +/* + * The definitive description of the destination language's structure. + */ +typedef struct asn_TYPE_descriptor_s { + const char *name; /* A name of the ASN.1 type. "" in some cases. */ + const char *xml_tag; /* Name used in XML tag */ + + /* + * Generalized functions for dealing with the specific type. + * May be directly invoked by applications. + */ + asn_TYPE_operation_t *op; + + /*********************************************************************** + * Internally useful members. Not to be used by applications directly. * + **********************************************************************/ + + /* + * Tags that are expected to occur. + */ + const ber_tlv_tag_t *tags; /* Effective tags sequence for this type */ + unsigned tags_count; /* Number of tags which are expected */ + const ber_tlv_tag_t *all_tags; /* Every tag for BER/containment */ + unsigned all_tags_count; /* Number of tags */ + + /* OER, PER, and general constraints */ + asn_encoding_constraints_t encoding_constraints; + + /* + * An ASN.1 production type members (members of SEQUENCE, SET, CHOICE). + */ + struct asn_TYPE_member_s *elements; + unsigned elements_count; + + /* + * Additional information describing the type, used by appropriate + * functions above. + */ + const void *specifics; +} asn_TYPE_descriptor_t; + +/* + * This type describes an element of the constructed type, + * i.e. SEQUENCE, SET, CHOICE, etc. + */ + enum asn_TYPE_flags_e { + ATF_NOFLAGS, + ATF_POINTER = 0x01, /* Represented by the pointer */ + ATF_OPEN_TYPE = 0x02, /* Open Type */ + ATF_ANY_TYPE = 0x04 /* ANY type (deprecated!) */ + }; +typedef struct asn_TYPE_member_s { + enum asn_TYPE_flags_e flags; /* Element's presentation flags */ + unsigned optional; /* Following optional members, including current */ + unsigned memb_offset; /* Offset of the element */ + ber_tlv_tag_t tag; /* Outmost (most immediate) tag */ + int tag_mode; /* IMPLICIT/no/EXPLICIT tag at current level */ + asn_TYPE_descriptor_t *type; /* Member type descriptor */ + asn_type_selector_f *type_selector; /* IoS runtime type selector */ + asn_encoding_constraints_t encoding_constraints; + int (*default_value_cmp)(const void *sptr); /* Compare DEFAULT */ + int (*default_value_set)(void **sptr); /* Set DEFAULT */ + const char *name; /* ASN.1 identifier of the element */ +} asn_TYPE_member_t; + +/* + * BER tag to element number mapping. + */ +typedef struct asn_TYPE_tag2member_s { + ber_tlv_tag_t el_tag; /* Outmost tag of the member */ + unsigned el_no; /* Index of the associated member, base 0 */ + int toff_first; /* First occurrence of the el_tag, relative */ + int toff_last; /* Last occurrence of the el_tag, relative */ +} asn_TYPE_tag2member_t; + +/* + * This function prints out the contents of the target language's structure + * (struct_ptr) into the file pointer (stream) in human readable form. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem dumping the structure. + * (See also xer_fprint() in xer_encoder.h) + */ +int asn_fprint(FILE *stream, /* Destination stream descriptor */ + const asn_TYPE_descriptor_t *td, /* ASN.1 type descriptor */ + const void *struct_ptr); /* Structure to be printed */ + +#ifdef __cplusplus +} +#endif + +#endif /* _CONSTR_TYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h new file mode 100644 index 000000000..0bd86a96b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/constraints.h @@ -0,0 +1,62 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN1_CONSTRAINTS_VALIDATOR_H +#define ASN1_CONSTRAINTS_VALIDATOR_H + +#include /* Platform-dependent types */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Validate the structure according to the ASN.1 constraints. + * If errbuf and errlen are given, they shall be pointing to the appropriate + * buffer space and its length before calling this function. Alternatively, + * they could be passed as NULL's. If constraints validation fails, + * errlen will contain the actual number of bytes taken from the errbuf + * to encode an error message (properly 0-terminated). + * + * RETURN VALUES: + * This function returns 0 in case all ASN.1 constraints are met + * and -1 if one or more constraints were failed. + */ +int asn_check_constraints( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Target language's structure */ + char *errbuf, /* Returned error description */ + size_t *errlen /* Length of the error description */ +); + + +/* + * Generic type for constraint checking callback, + * associated with every type descriptor. + */ +typedef int(asn_constr_check_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct_ptr, + asn_app_constraint_failed_f *optional_callback, /* Log the error */ + void *optional_app_key /* Opaque key passed to a callback */ +); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +asn_constr_check_f asn_generic_no_constraint; /* No constraint whatsoever */ +asn_constr_check_f asn_generic_unknown_constraint; /* Not fully supported */ + +/* + * Invoke the callback with a complete error message. + */ +#define ASN__CTFAIL if(ctfailcb) ctfailcb + +#ifdef __cplusplus +} +#endif + +#endif /* ASN1_CONSTRAINTS_VALIDATOR_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h new file mode 100644 index 000000000..e93944edc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/der_encoder.h @@ -0,0 +1,68 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _DER_ENCODER_H_ +#define _DER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The DER encoder of any type. May be invoked by the application. + * Produces DER- and BER-compliant encoding. (DER is a subset of BER). + * + * NOTE: Use the ber_decode() function (ber_decoder.h) to decode data + * produced by der_encode(). + */ +asn_enc_rval_t der_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of der_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t der_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic DER encoder. + */ +typedef asn_enc_rval_t(der_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + ber_tlv_tag_t tag, asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t der_write_tags(const struct asn_TYPE_descriptor_s *type_descriptor, + size_t struct_length, + int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */ + int last_tag_form, /* {0,!0}: prim, constructed */ + ber_tlv_tag_t tag, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _DER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h new file mode 100644 index 000000000..40992e948 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_decoder.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_DECODER_H +#define OER_DECODER_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ +struct asn_codec_ctx_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type. + * This function may be invoked directly by the application. + * Parses CANONICAL-OER and BASIC-OER. + */ +asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of that buffer */ + ); + +/* + * Type of generic function which decodes the byte stream into the structure. + */ +typedef asn_dec_rval_t(oer_type_decoder_f)( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + void **struct_ptr, + const void *buf_ptr, + size_t size); + +/* + * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null. + * RETURN VALUES: + * -1: Fatal error deciphering length. + * 0: More data expected than bufptr contains. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_skip(const void *bufptr, size_t size); + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + void **struct_ptr, const void *bufptr, size_t size); + +/* + * Length-prefixed buffer decoding for primitive types. + */ +oer_type_decoder_f oer_decode_primitive; + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_DECODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h new file mode 100644 index 000000000..6a7b68125 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_encoder.h @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_ENCODER_H +#define OER_ENCODER_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type. + * This function may be invoked directly by the application. + * Produces CANONICAL-OER output compatible with CANONICAL-OER + * and BASIC-OER decoders. + */ +asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* A variant of oer_encode() which encodes data into the pre-allocated buffer */ +asn_enc_rval_t oer_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +); + +/* + * Type of the generic OER encoder. + */ +typedef asn_enc_rval_t(oer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * Write out the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * -1: Fatal error encoding the type. + * >0: Number of bytes serialized. + */ +ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key); + + +/* + * Length-prefixed buffer encoding for primitive types. + */ +oer_type_encoder_f oer_encode_primitive; + +#ifdef __cplusplus +} +#endif + +#endif /* OER_ENCODER_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h new file mode 100644 index 000000000..dbc9b5fcf --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/oer_support.h @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef OER_SUPPORT_H +#define OER_SUPPORT_H + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed OER constraints. + */ +typedef struct asn_oer_constraint_number_s { + unsigned width; /* ±8,4,2,1 fixed bytes */ + unsigned positive; /* 1 for unsigned number, 0 for signed */ +} asn_oer_constraint_number_t; +typedef struct asn_oer_constraints_s { + asn_oer_constraint_number_t value; + ssize_t size; /* -1 (no constraint) or >= 0 */ +} asn_oer_constraints_t; + + +/* + * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r); + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key); + + +#ifdef __cplusplus +} +#endif + +#endif /* OER_SUPPORT_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h new file mode 100644 index 000000000..eea474a9e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_decoder.h @@ -0,0 +1,82 @@ +/*- + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_DECODER_H_ +#define _PER_DECODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER decoder of a "complete encoding" as per X.691 (08/2015) #11.1. + * On success, this call always returns (.consumed >= 1), as per #11.1.3. + */ +asn_dec_rval_t uper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Unaligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t uper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of the input data buffer, in bytes */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ +); + +/* + * Aligned PER decoder of a "complete encoding" as per X.691#10.1. + * On success, this call always returns (.consumed >= 1), in BITS, as per X.691#10.1.3. + */ +asn_dec_rval_t aper_decode_complete( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ + ); + +/* + * Aligned PER decoder of any ASN.1 type. May be invoked by the application. + * WARNING: This call returns the number of BITS read from the stream. Beware. + */ +asn_dec_rval_t aper_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, /* Type to decode */ + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size, /* Size of data buffer */ + int skip_bits, /* Number of unused leading bits, 0..7 */ + int unused_bits /* Number of unused tailing bits, 0..7 */ + ); + +/* + * Type of the type-specific PER decoder function. + */ +typedef asn_dec_rval_t(per_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, void **struct_ptr, + asn_per_data_t *per_data); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h new file mode 100644 index 000000000..b615ef028 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_encoder.h @@ -0,0 +1,93 @@ +/*- + * Copyright (c) 2006-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_ENCODER_H_ +#define _PER_ENCODER_H_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * Unaligned PER encoder of any ASN.1 type. May be invoked by the application. + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. Use the following formula to convert to bytes: + * bytes = ((.encoded + 7) / 8) + */ +asn_enc_rval_t uper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +asn_enc_rval_t aper_encode( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + asn_app_consume_bytes_f *consume_bytes_cb, /* Data collector */ + void *app_key /* Arbitrary callback argument */ +); + +/* + * A variant of uper_encode() which encodes data into the existing buffer + * WARNING: This function returns the number of encoded bits in the .encoded + * field of the return value. + */ +asn_enc_rval_t uper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); + +asn_enc_rval_t aper_encode_to_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (max) */ +); +/* + * A variant of uper_encode_to_buffer() which allocates buffer itself. + * Returns the number of bytes in the buffer or -1 in case of failure. + * WARNING: This function produces a "Production of the complete encoding", + * with length of at least one octet. Contrast this to precise bit-packing + * encoding of uper_encode() and uper_encode_to_buffer(). + */ +ssize_t uper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void **buffer_r /* Buffer allocated and returned */ +); + +ssize_t +aper_encode_to_new_buffer( + const struct asn_TYPE_descriptor_s *td, + const asn_per_constraints_t *constraints, + const void *sptr, + void **buffer_r +); + +/* + * Type of the generic PER encoder function. + */ +typedef asn_enc_rval_t(per_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const asn_per_constraints_t *constraints, const void *struct_ptr, + asn_per_outp_t *per_output); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h new file mode 100644 index 000000000..1493b2d8e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_opentype.h @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2007-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_OPENTYPE_H_ +#define _PER_OPENTYPE_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +asn_dec_rval_t uper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +int uper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, + asn_per_data_t *pd); + +/* + * X.691 (2015/08), #11.2 + * Returns -1 if error is encountered. 0 if all OK. + */ +int uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +asn_dec_rval_t aper_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + + +int aper_open_type_skip(const asn_codec_ctx_t *opt_codec_ctx, asn_per_data_t *pd); + +int aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_OPENTYPE_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h new file mode 100644 index 000000000..d13f50415 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/per_support.h @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PER_SUPPORT_H_ +#define _PER_SUPPORT_H_ + +#include /* Platform-specific types */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Pre-computed PER constraints. + */ +typedef struct asn_per_constraint_s { + enum asn_per_constraint_flags { + APC_UNCONSTRAINED = 0x0, /* No PER visible constraints */ + APC_SEMI_CONSTRAINED = 0x1, /* Constrained at "lb" */ + APC_CONSTRAINED = 0x2, /* Fully constrained */ + APC_EXTENSIBLE = 0x4 /* May have extension */ + } flags; + int range_bits; /* Full number of bits in the range */ + int effective_bits; /* Effective bits */ + intmax_t lower_bound; /* "lb" value */ + intmax_t upper_bound; /* "ub" value */ +} asn_per_constraint_t; +typedef struct asn_per_constraints_s { + asn_per_constraint_t value; + asn_per_constraint_t size; + int (*value2code)(unsigned int value); + int (*code2value)(unsigned int code); +} asn_per_constraints_t; + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_data_s asn_per_data_t; +#define per_get_few_bits(data, bits) asn_get_few_bits(data, bits) +#define per_get_undo(data, bits) asn_get_undo(data, bits) +#define per_get_many_bits(data, dst, align, bits) \ + asn_get_many_bits(data, dst, align, bits) + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Get the length "n" from the Unaligned PER stream. + */ +ssize_t uper_get_length(asn_per_data_t *pd, int effective_bound_bits, + size_t lower_bound, int *repeat); + +ssize_t aper_get_length(asn_per_data_t *pd, int range, + int effective_bound_bits, int *repeat); + +/* + * Get the normally small length "n". + */ +ssize_t uper_get_nslength(asn_per_data_t *pd); +ssize_t aper_get_nslength(asn_per_data_t *pd); + +/* + * Get the normally small non-negative whole number. + */ +ssize_t uper_get_nsnnwn(asn_per_data_t *pd); +ssize_t aper_get_nsnnwn(asn_per_data_t *pd, int range); + +/* X.691-2008/11, #11.5.6 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *v, int nbits); + + +/* Temporary compatibility layer. Will get removed. */ +typedef struct asn_bit_outp_s asn_per_outp_t; +#define per_put_few_bits(out, bits, obits) asn_put_few_bits(out, bits, obits) +#define per_put_many_bits(out, src, nbits) asn_put_many_bits(out, src, nbits) +#define per_put_aligned_flush(out) asn_put_aligned_flush(out) + + +/* + * Rebase the given value as an offset into the range specified by the + * lower bound (lb) and upper bound (ub). + * RETURN VALUES: + * -1: Conversion failed due to range problems. + * 0: Conversion was successful. + */ +int per_long_range_rebase(long, intmax_t lb, intmax_t ub, unsigned long *output); +int per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output); +/* The inverse operation: restores the value by the offset and its bounds. */ +int per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp); +int per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp); + +/* X.691-2008/11, #11.5 */ +int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits); + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "whole_length" to the Unaligned PER stream. + * If (opt_need_eom) is given, it will be set to 1 if final 0-length is needed. + * In that case, invoke uper_put_length(po, 0, 0) after encoding the last block. + * This function returns the number of units which may be flushed + * in the next units saving iteration. + */ +ssize_t uper_put_length(asn_per_outp_t *po, size_t whole_length, + int *opt_need_eom); + +ssize_t aper_put_length(asn_per_outp_t *po, int range, size_t length, + int *opt_need_eom); + +/* Align the current bit position to octet bundary */ +int aper_put_align(asn_per_outp_t *po); +int32_t aper_get_align(asn_per_data_t *pd); + +/* + * Put the normally small length "n" to the Unaligned PER stream. + * Returns 0 or -1. + */ +int uper_put_nslength(asn_per_outp_t *po, size_t length); + +int aper_put_nslength(asn_per_outp_t *po, size_t length); + +/* + * Put the normally small non-negative whole number. + */ +int uper_put_nsnnwn(asn_per_outp_t *po, int n); + +int aper_put_nsnnwn(asn_per_outp_t *po, int range, int number); + +#ifdef __cplusplus +} +#endif + +#endif /* _PER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h new file mode 100644 index 000000000..f9d6fc209 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/version.h @@ -0,0 +1,14 @@ +/* + * version.h + * + * Created on: Aug 29, 2014 + * Author: ivp + */ + +#ifndef VERSION_H_ +#define VERSION_H_ + +#define TMXASN_VERSION "3.1.0" +#define TMXASN_SPEC "2016" + +#endif /* VERSION_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h new file mode 100644 index 000000000..b951c41d1 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_decoder.h @@ -0,0 +1,106 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_DECODER_H_ +#define _XER_DECODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* + * The XER decoder of any ASN.1 type. May be invoked by the application. + * Decodes CANONICAL-XER and BASIC-XER. + */ +asn_dec_rval_t xer_decode( + const struct asn_codec_ctx_s *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, + void **struct_ptr, /* Pointer to a target structure's pointer */ + const void *buffer, /* Data to be decoded */ + size_t size /* Size of data buffer */ +); + +/* + * Type of the type-specific XER decoder function. + */ +typedef asn_dec_rval_t(xer_type_decoder_f)( + const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *type_descriptor, void **struct_ptr, + const char *opt_mname, /* Member name */ + const void *buf_ptr, size_t size); + +/******************************* + * INTERNALLY USEFUL FUNCTIONS * + *******************************/ + +/* + * Generalized function for decoding the primitive values. + * Used by more specialized functions, such as OCTET_STRING_decode_xer_utf8 + * and others. This function should not be used by applications, as its API + * is subject to changes. + */ +asn_dec_rval_t xer_decode_general( + const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, /* Treated as opaque pointer */ + const char *xml_tag, /* Expected XML tag name */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_key, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_key, const void *chunk_buf, + size_t chunk_size, int have_more)); + + +/* + * Fetch the next XER (XML) token from the stream. + * The function returns the number of bytes occupied by the chunk type, + * returned in the _ch_type. The _ch_type is only set (and valid) when + * the return value is >= 0. + */ + typedef enum pxer_chunk_type { + PXER_WMORE, /* Chunk type is not clear, more data expected. */ + PXER_TAG, /* Complete XER tag */ + PXER_TEXT, /* Plain text between XER tags */ + PXER_COMMENT /* A comment, may be part of */ + } pxer_chunk_type_e; +ssize_t xer_next_token(int *stateContext, + const void *buffer, size_t size, pxer_chunk_type_e *_ch_type); + +/* + * This function checks the buffer against the tag name is expected to occur. + */ + typedef enum xer_check_tag { + XCT_BROKEN = 0, /* The tag is broken */ + XCT_OPENING = 1, /* This is the tag */ + XCT_CLOSING = 2, /* This is the tag */ + XCT_BOTH = 3, /* This is the tag */ + XCT__UNK__MASK = 4, /* Mask of everything unexpected */ + XCT_UNKNOWN_OP = 5, /* Unexpected tag */ + XCT_UNKNOWN_CL = 6, /* Unexpected tag */ + XCT_UNKNOWN_BO = 7 /* Unexpected tag */ + } xer_check_tag_e; +xer_check_tag_e xer_check_tag(const void *buf_ptr, int size, + const char *need_tag); + +/* + * Get the number of bytes consisting entirely of XER whitespace characters. + * RETURN VALUES: + * >=0: Number of whitespace characters in the string. + */ +size_t xer_whitespace_span(const void *chunk_buf, size_t chunk_size); + +/* + * Skip the series of anticipated extensions. + */ +int xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_DECODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h new file mode 100644 index 000000000..6cfc505fa --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_encoder.h @@ -0,0 +1,83 @@ +/*- + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_ENCODER_H_ +#define _XER_ENCODER_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +/* Flags used by the xer_encode() and (*xer_type_encoder_f), defined below */ +enum xer_encoder_flags_e { + /* Mode of encoding */ + XER_F_BASIC = 0x01, /* BASIC-XER (pretty-printing) */ + XER_F_CANONICAL = 0x02 /* Canonical XER (strict rules) */ +}; + +/* + * The XER encoder of any type. May be invoked by the application. + * Produces CANONICAL-XER and BASIC-XER depending on the (xer_flags). + */ +asn_enc_rval_t xer_encode(const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, + void *app_key /* Arbitrary callback argument */ +); + +/* + * The variant of the above function which dumps the BASIC-XER (XER_F_BASIC) + * output into the chosen file pointer. + * RETURN VALUES: + * 0: The structure is printed. + * -1: Problem printing the structure. + * WARNING: No sensible errno value is returned. + */ +int xer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td, + const void *struct_ptr); + +/* + * A helper function that uses XER encoding/decoding to verify that: + * - Both structures encode into the same BASIC XER. + * - Both resulting XER byte streams can be decoded back. + * - Both decoded structures encode into the same BASIC XER (round-trip). + * All of this verifies equivalence between structures and a round-trip. + * ARGUMENTS: + * (opt_debug_stream) - If specified, prints ongoing details. + */ +enum xer_equivalence_e { + XEQ_SUCCESS, /* The only completely positive return value */ + XEQ_FAILURE, /* General failure */ + XEQ_ENCODE1_FAILED, /* First structure XER encoding failed */ + XEQ_ENCODE2_FAILED, /* Second structure XER encoding failed */ + XEQ_DIFFERENT, /* Structures encoded into different XER */ + XEQ_DECODE_FAILED, /* Decode of the XER data failed */ + XEQ_ROUND_TRIP_FAILED /* Bad round-trip */ +}; +enum xer_equivalence_e xer_equivalent( + const struct asn_TYPE_descriptor_s *type_descriptor, const void *struct1, + const void *struct2, FILE *opt_debug_stream); + +/* + * Type of the generic XER encoder. + */ +typedef asn_enc_rval_t(xer_type_encoder_f)( + const struct asn_TYPE_descriptor_s *type_descriptor, + const void *struct_ptr, /* Structure to be encoded */ + int ilevel, /* Level of indentation */ + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */ + void *app_key /* Arbitrary callback argument */ +); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_ENCODER_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h new file mode 100644 index 000000000..2c3f369b8 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r63/xer_support.h @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _XER_SUPPORT_H_ +#define _XER_SUPPORT_H_ + +#include /* Platform-specific types */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Types of data transferred to the application. + */ +typedef enum { + PXML_TEXT, /* Plain text between XML tags. */ + PXML_TAG, /* A tag, starting with '<'. */ + PXML_COMMENT, /* An XML comment, including "". */ + /* + * The following chunk types are reported if the chunk + * terminates the specified XML element. + */ + PXML_TAG_END, /* Tag ended */ + PXML_COMMENT_END /* Comment ended */ +} pxml_chunk_type_e; + +/* + * Callback function that is called by the parser when parsed data is + * available. The _opaque is the pointer to a field containing opaque user + * data specified in pxml_create() call. The chunk type is _type and the text + * data is the piece of buffer identified by _bufid (as supplied to + * pxml_feed() call) starting at offset _offset and of _size bytes size. + * The chunk is NOT '\0'-terminated. + */ +typedef int (pxml_callback_f)(pxml_chunk_type_e _type, + const void *_chunk_data, size_t _chunk_size, void *_key); + +/* + * Parse the given buffer as it were a chunk of XML data. + * Invoke the specified callback each time the meaningful data is found. + * This function returns number of bytes consumed from the buffer. + * It will always be lesser than or equal to the specified _size. + * The next invocation of this function must account the difference. + */ +ssize_t pxml_parse(int *_stateContext, const void *_buf, size_t _size, + pxml_callback_f *cb, void *_key); + +#ifdef __cplusplus +} +#endif + +#endif /* _XER_SUPPORT_H_ */ diff --git a/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c new file mode 100644 index 000000000..4564e5209 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AccelSteerYawRateConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AccelSteerYawRateConfidence.h" + +static asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "yawRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "acceleration" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "steeringWheelAngle" + }, +}; +static ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { + sizeof(struct AccelSteerYawRateConfidence), + offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), + asn_MAP_AccelSteerYawRateConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { + "AccelSteerYawRateConfidence", + "AccelSteerYawRateConfidence", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AccelSteerYawRateConfidence_tags_1, + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_AccelSteerYawRateConfidence_1, + 3, /* Elements count */ + &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Acceleration.c b/src/tmx/Asn_J2735/src/r41/Acceleration.c new file mode 100644 index 000000000..1b3cc52ea --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Acceleration.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Acceleration.h" + +int +Acceleration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2000 && value <= 2001)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Acceleration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Acceleration_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Acceleration_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Acceleration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Acceleration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Acceleration_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Acceleration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Acceleration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Acceleration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Acceleration_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Acceleration_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Acceleration_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Acceleration = { + "Acceleration", + "Acceleration", + Acceleration_free, + Acceleration_print, + Acceleration_constraint, + Acceleration_decode_ber, + Acceleration_encode_der, + Acceleration_decode_xer, + Acceleration_encode_xer, + Acceleration_decode_uper, + Acceleration_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Acceleration_tags_1, + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + asn_DEF_Acceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + &asn_PER_type_Acceleration_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c new file mode 100644 index 000000000..0dc565129 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AccelerationConfidence.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AccelerationConfidence.h" + +int +AccelerationConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AccelerationConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AccelerationConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AccelerationConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AccelerationConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AccelerationConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AccelerationConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AccelerationConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AccelerationConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AccelerationConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AccelerationConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "accl-100-00" }, + { 2, 11, "accl-010-00" }, + { 3, 11, "accl-005-00" }, + { 4, 11, "accl-001-00" }, + { 5, 11, "accl-000-10" }, + { 6, 11, "accl-000-05" }, + { 7, 11, "accl-000-01" } +}; +static unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { + 7, /* accl-000-01(7) */ + 6, /* accl-000-05(6) */ + 5, /* accl-000-10(5) */ + 4, /* accl-001-00(4) */ + 3, /* accl-005-00(3) */ + 2, /* accl-010-00(2) */ + 1, /* accl-100-00(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { + asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { + "AccelerationConfidence", + "AccelerationConfidence", + AccelerationConfidence_free, + AccelerationConfidence_print, + AccelerationConfidence_constraint, + AccelerationConfidence_decode_ber, + AccelerationConfidence_encode_der, + AccelerationConfidence_decode_xer, + AccelerationConfidence_encode_xer, + AccelerationConfidence_decode_uper, + AccelerationConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AccelerationConfidence_tags_1, + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_AccelerationConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c new file mode 100644 index 000000000..565a7ecef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AccelerationSet4Way.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AccelerationSet4Way.h" + +int +AccelerationSet4Way_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 7)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +AccelerationSet4Way_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +AccelerationSet4Way_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AccelerationSet4Way_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AccelerationSet4Way_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AccelerationSet4Way_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AccelerationSet4Way_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AccelerationSet4Way_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AccelerationSet4Way_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AccelerationSet4Way_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AccelerationSet4Way_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AccelerationSet4Way_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { + "AccelerationSet4Way", + "AccelerationSet4Way", + AccelerationSet4Way_free, + AccelerationSet4Way_print, + AccelerationSet4Way_constraint, + AccelerationSet4Way_decode_ber, + AccelerationSet4Way_encode_der, + AccelerationSet4Way_decode_xer, + AccelerationSet4Way_encode_xer, + AccelerationSet4Way_decode_uper, + AccelerationSet4Way_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AccelerationSet4Way_tags_1, + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + &asn_PER_type_AccelerationSet4Way_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c new file mode 100644 index 000000000..536a52d4e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AdvisorySpeed.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AdvisorySpeed.h" + +static asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "type" + }, + { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedAdvice, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, + { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidence" + }, + { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "distance" + }, + { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "class" + }, + { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalAdvisorySpeed, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { + sizeof(struct AdvisorySpeed), + offsetof(struct AdvisorySpeed, _asn_ctx), + asn_MAP_AdvisorySpeed_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { + "AdvisorySpeed", + "AdvisorySpeed", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AdvisorySpeed_tags_1, + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_AdvisorySpeed_1, + 6, /* Elements count */ + &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c new file mode 100644 index 000000000..eaed27d15 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AdvisorySpeedList.h" + +static asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AdvisorySpeed, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { + sizeof(struct AdvisorySpeedList), + offsetof(struct AdvisorySpeedList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { + "AdvisorySpeedList", + "AdvisorySpeedList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AdvisorySpeedList_tags_1, + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + &asn_PER_type_AdvisorySpeedList_constr_1, + asn_MBR_AdvisorySpeedList_1, + 1, /* Single element */ + &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c new file mode 100644 index 000000000..6ddc14d97 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AdvisorySpeedType.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AdvisorySpeedType.h" + +int +AdvisorySpeedType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AdvisorySpeedType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AdvisorySpeedType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AdvisorySpeedType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AdvisorySpeedType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AdvisorySpeedType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AdvisorySpeedType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AdvisorySpeedType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AdvisorySpeedType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AdvisorySpeedType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AdvisorySpeedType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "greenwave" }, + { 2, 8, "ecoDrive" }, + { 3, 7, "transit" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { + 2, /* ecoDrive(2) */ + 1, /* greenwave(1) */ + 0, /* none(0) */ + 3 /* transit(3) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { + asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { + "AdvisorySpeedType", + "AdvisorySpeedType", + AdvisorySpeedType_free, + AdvisorySpeedType_print, + AdvisorySpeedType_constraint, + AdvisorySpeedType_decode_ber, + AdvisorySpeedType_encode_der, + AdvisorySpeedType_decode_xer, + AdvisorySpeedType_encode_xer, + AdvisorySpeedType_decode_uper, + AdvisorySpeedType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AdvisorySpeedType_tags_1, + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + &asn_PER_type_AdvisorySpeedType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c new file mode 100644 index 000000000..3fdc9e273 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AllowedManeuvers.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AllowedManeuvers.h" + +int +AllowedManeuvers_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 12)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +AllowedManeuvers_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +AllowedManeuvers_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AllowedManeuvers_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AllowedManeuvers_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AllowedManeuvers_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AllowedManeuvers_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AllowedManeuvers_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AllowedManeuvers_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AllowedManeuvers_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AllowedManeuvers_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { + "AllowedManeuvers", + "AllowedManeuvers", + AllowedManeuvers_free, + AllowedManeuvers_print, + AllowedManeuvers_constraint, + AllowedManeuvers_decode_ber, + AllowedManeuvers_encode_der, + AllowedManeuvers_decode_xer, + AllowedManeuvers_encode_xer, + AllowedManeuvers_decode_uper, + AllowedManeuvers_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AllowedManeuvers_tags_1, + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + &asn_PER_type_AllowedManeuvers_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Altitude.c b/src/tmx/Asn_J2735/src/r41/Altitude.c new file mode 100644 index 000000000..1ed1e3abc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Altitude.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Altitude.h" + +static asn_TYPE_member_t asn_MBR_Altitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeValue, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidence" + }, +}; +static ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { + sizeof(struct Altitude), + offsetof(struct Altitude, _asn_ctx), + asn_MAP_Altitude_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Altitude = { + "Altitude", + "Altitude", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Altitude_tags_1, + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + asn_DEF_Altitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Altitude_1, + 2, /* Elements count */ + &asn_SPC_Altitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c new file mode 100644 index 000000000..be7287409 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AltitudeConfidence.c @@ -0,0 +1,175 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AltitudeConfidence.h" + +int +AltitudeConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AltitudeConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AltitudeConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AltitudeConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AltitudeConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AltitudeConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AltitudeConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AltitudeConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AltitudeConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AltitudeConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AltitudeConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { + { 0, 10, "alt-000-01" }, + { 1, 10, "alt-000-02" }, + { 2, 10, "alt-000-05" }, + { 3, 10, "alt-000-10" }, + { 4, 10, "alt-000-20" }, + { 5, 10, "alt-000-50" }, + { 6, 10, "alt-001-00" }, + { 7, 10, "alt-002-00" }, + { 8, 10, "alt-005-00" }, + { 9, 10, "alt-010-00" }, + { 10, 10, "alt-020-00" }, + { 11, 10, "alt-050-00" }, + { 12, 10, "alt-100-00" }, + { 13, 10, "alt-200-00" }, + { 14, 10, "outOfRange" }, + { 15, 11, "unavailable" } +}; +static unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { + 0, /* alt-000-01(0) */ + 1, /* alt-000-02(1) */ + 2, /* alt-000-05(2) */ + 3, /* alt-000-10(3) */ + 4, /* alt-000-20(4) */ + 5, /* alt-000-50(5) */ + 6, /* alt-001-00(6) */ + 7, /* alt-002-00(7) */ + 8, /* alt-005-00(8) */ + 9, /* alt-010-00(9) */ + 10, /* alt-020-00(10) */ + 11, /* alt-050-00(11) */ + 12, /* alt-100-00(12) */ + 13, /* alt-200-00(13) */ + 14, /* outOfRange(14) */ + 15 /* unavailable(15) */ +}; +static asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { + asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { + "AltitudeConfidence", + "AltitudeConfidence", + AltitudeConfidence_free, + AltitudeConfidence_print, + AltitudeConfidence_constraint, + AltitudeConfidence_decode_ber, + AltitudeConfidence_encode_der, + AltitudeConfidence_decode_xer, + AltitudeConfidence_encode_xer, + AltitudeConfidence_decode_uper, + AltitudeConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AltitudeConfidence_tags_1, + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_AltitudeConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AltitudeValue.c b/src/tmx/Asn_J2735/src/r41/AltitudeValue.c new file mode 100644 index 000000000..7f047cc9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AltitudeValue.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AltitudeValue.h" + +int +AltitudeValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -100000 && value <= 800001)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AltitudeValue_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AltitudeValue_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AltitudeValue_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AltitudeValue_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AltitudeValue_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AltitudeValue_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AltitudeValue_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AltitudeValue_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AltitudeValue_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AltitudeValue_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { + "AltitudeValue", + "AltitudeValue", + AltitudeValue_free, + AltitudeValue_print, + AltitudeValue_constraint, + AltitudeValue_decode_ber, + AltitudeValue_encode_der, + AltitudeValue_decode_xer, + AltitudeValue_encode_xer, + AltitudeValue_decode_uper, + AltitudeValue_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AltitudeValue_tags_1, + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + asn_DEF_AltitudeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + &asn_PER_type_AltitudeValue_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c new file mode 100644 index 000000000..c02c21208 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AmbientAirPressure.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AmbientAirPressure.h" + +int +AmbientAirPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AmbientAirPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AmbientAirPressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AmbientAirPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AmbientAirPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AmbientAirPressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AmbientAirPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AmbientAirPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AmbientAirPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AmbientAirPressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AmbientAirPressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { + "AmbientAirPressure", + "AmbientAirPressure", + AmbientAirPressure_free, + AmbientAirPressure_print, + AmbientAirPressure_constraint, + AmbientAirPressure_decode_ber, + AmbientAirPressure_encode_der, + AmbientAirPressure_decode_xer, + AmbientAirPressure_encode_xer, + AmbientAirPressure_decode_uper, + AmbientAirPressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AmbientAirPressure_tags_1, + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + &asn_PER_type_AmbientAirPressure_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c new file mode 100644 index 000000000..b42432616 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AmbientAirTemperature.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AmbientAirTemperature.h" + +int +AmbientAirTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 191)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AmbientAirTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AmbientAirTemperature_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AmbientAirTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AmbientAirTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AmbientAirTemperature_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AmbientAirTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AmbientAirTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AmbientAirTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AmbientAirTemperature_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AmbientAirTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { + "AmbientAirTemperature", + "AmbientAirTemperature", + AmbientAirTemperature_free, + AmbientAirTemperature_print, + AmbientAirTemperature_constraint, + AmbientAirTemperature_decode_ber, + AmbientAirTemperature_encode_der, + AmbientAirTemperature_decode_xer, + AmbientAirTemperature_encode_xer, + AmbientAirTemperature_decode_uper, + AmbientAirTemperature_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AmbientAirTemperature_tags_1, + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + &asn_PER_type_AmbientAirTemperature_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Angle.c b/src/tmx/Asn_J2735/src/r41/Angle.c new file mode 100644 index 000000000..cf46bb91c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Angle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Angle.h" + +int +Angle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Angle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Angle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Angle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Angle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Angle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Angle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Angle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Angle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Angle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Angle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Angle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Angle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Angle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Angle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Angle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Angle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Angle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Angle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Angle = { + "Angle", + "Angle", + Angle_free, + Angle_print, + Angle_constraint, + Angle_decode_ber, + Angle_encode_der, + Angle_decode_xer, + Angle_encode_xer, + Angle_decode_uper, + Angle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Angle_tags_1, + sizeof(asn_DEF_Angle_tags_1) + /sizeof(asn_DEF_Angle_tags_1[0]), /* 1 */ + asn_DEF_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_Angle_tags_1) + /sizeof(asn_DEF_Angle_tags_1[0]), /* 1 */ + &asn_PER_type_Angle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c new file mode 100644 index 000000000..6f779422c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AnimalPropelledType.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "AnimalPropelledType.h" + +int +AnimalPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AnimalPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AnimalPropelledType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AnimalPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AnimalPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AnimalPropelledType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AnimalPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AnimalPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AnimalPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AnimalPropelledType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AnimalPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 13, "animalMounted" }, + { 3, 19, "animalDrawnCarriage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { + 3, /* animalDrawnCarriage(3) */ + 2, /* animalMounted(2) */ + 1, /* otherTypes(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { + asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { + "AnimalPropelledType", + "AnimalPropelledType", + AnimalPropelledType_free, + AnimalPropelledType_print, + AnimalPropelledType_constraint, + AnimalPropelledType_decode_ber, + AnimalPropelledType_encode_der, + AnimalPropelledType_decode_xer, + AnimalPropelledType_encode_xer, + AnimalPropelledType_decode_uper, + AnimalPropelledType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AnimalPropelledType_tags_1, + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + &asn_PER_type_AnimalPropelledType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AnimalType.c b/src/tmx/Asn_J2735/src/r41/AnimalType.c new file mode 100644 index 000000000..588ae5b4b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AnimalType.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "AnimalType.h" + +int +AnimalType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AnimalType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AnimalType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AnimalType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AnimalType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AnimalType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AnimalType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AnimalType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AnimalType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AnimalType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AnimalType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AnimalType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AnimalType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "serviceUse" }, + { 2, 3, "pet" }, + { 3, 4, "farm" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { + 3, /* farm(3) */ + 2, /* pet(2) */ + 1, /* serviceUse(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { + asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalType = { + "AnimalType", + "AnimalType", + AnimalType_free, + AnimalType_print, + AnimalType_constraint, + AnimalType_decode_ber, + AnimalType_encode_der, + AnimalType_decode_xer, + AnimalType_encode_xer, + AnimalType_decode_uper, + AnimalType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AnimalType_tags_1, + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + asn_DEF_AnimalType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + &asn_PER_type_AnimalType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c new file mode 100644 index 000000000..9af931ecc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AntennaOffsetSet.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AntennaOffsetSet.h" + +int +AntennaOffsetSet_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +AntennaOffsetSet_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +AntennaOffsetSet_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AntennaOffsetSet_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AntennaOffsetSet_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AntennaOffsetSet_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AntennaOffsetSet_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AntennaOffsetSet_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AntennaOffsetSet_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AntennaOffsetSet_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AntennaOffsetSet_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AntennaOffsetSet_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { + "AntennaOffsetSet", + "AntennaOffsetSet", + AntennaOffsetSet_free, + AntennaOffsetSet_print, + AntennaOffsetSet_constraint, + AntennaOffsetSet_decode_ber, + AntennaOffsetSet_encode_der, + AntennaOffsetSet_decode_xer, + AntennaOffsetSet_encode_xer, + AntennaOffsetSet_decode_uper, + AntennaOffsetSet_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AntennaOffsetSet_tags_1, + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + &asn_PER_type_AntennaOffsetSet_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c new file mode 100644 index 000000000..f0d96379c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AntiLockBrakeStatus.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AntiLockBrakeStatus.h" + +int +AntiLockBrakeStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AntiLockBrakeStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AntiLockBrakeStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AntiLockBrakeStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AntiLockBrakeStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AntiLockBrakeStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AntiLockBrakeStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AntiLockBrakeStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AntiLockBrakeStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AntiLockBrakeStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AntiLockBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { + asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { + "AntiLockBrakeStatus", + "AntiLockBrakeStatus", + AntiLockBrakeStatus_free, + AntiLockBrakeStatus_print, + AntiLockBrakeStatus_constraint, + AntiLockBrakeStatus_decode_ber, + AntiLockBrakeStatus_encode_der, + AntiLockBrakeStatus_decode_xer, + AntiLockBrakeStatus_encode_xer, + AntiLockBrakeStatus_decode_uper, + AntiLockBrakeStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AntiLockBrakeStatus_tags_1, + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + &asn_PER_type_AntiLockBrakeStatus_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ApproachID.c b/src/tmx/Asn_J2735/src/r41/ApproachID.c new file mode 100644 index 000000000..14f57035b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ApproachID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ApproachID.h" + +int +ApproachID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ApproachID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ApproachID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ApproachID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ApproachID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ApproachID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ApproachID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ApproachID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ApproachID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ApproachID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ApproachID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ApproachID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ApproachID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ApproachID = { + "ApproachID", + "ApproachID", + ApproachID_free, + ApproachID_print, + ApproachID_constraint, + ApproachID_decode_ber, + ApproachID_encode_der, + ApproachID_decode_xer, + ApproachID_encode_xer, + ApproachID_decode_uper, + ApproachID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ApproachID_tags_1, + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + asn_DEF_ApproachID_tags_1, /* Same as above */ + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + &asn_PER_type_ApproachID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Attachment.c b/src/tmx/Asn_J2735/src/r41/Attachment.c new file mode 100644 index 000000000..99c352e38 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Attachment.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "Attachment.h" + +int +Attachment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +Attachment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +Attachment_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Attachment_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Attachment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Attachment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Attachment_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Attachment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Attachment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Attachment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Attachment_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Attachment_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Attachment_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "stroller" }, + { 2, 14, "bicycleTrailer" }, + { 3, 4, "cart" }, + { 4, 10, "wheelchair" }, + { 5, 26, "otherWalkAssistAttachments" }, + { 6, 3, "pet" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Attachment_enum2value_1[] = { + 2, /* bicycleTrailer(2) */ + 3, /* cart(3) */ + 5, /* otherWalkAssistAttachments(5) */ + 6, /* pet(6) */ + 1, /* stroller(1) */ + 0, /* unavailable(0) */ + 4 /* wheelchair(4) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { + asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Attachment = { + "Attachment", + "Attachment", + Attachment_free, + Attachment_print, + Attachment_constraint, + Attachment_decode_ber, + Attachment_encode_der, + Attachment_decode_xer, + Attachment_encode_xer, + Attachment_decode_uper, + Attachment_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Attachment_tags_1, + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + asn_DEF_Attachment_tags_1, /* Same as above */ + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + &asn_PER_type_Attachment_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Attachment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c b/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c new file mode 100644 index 000000000..5a37cb951 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AttachmentRadius.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "AttachmentRadius.h" + +int +AttachmentRadius_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AttachmentRadius_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AttachmentRadius_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AttachmentRadius_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AttachmentRadius_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AttachmentRadius_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AttachmentRadius_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AttachmentRadius_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AttachmentRadius_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AttachmentRadius_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AttachmentRadius_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { + "AttachmentRadius", + "AttachmentRadius", + AttachmentRadius_free, + AttachmentRadius_print, + AttachmentRadius_constraint, + AttachmentRadius_decode_ber, + AttachmentRadius_encode_der, + AttachmentRadius_decode_xer, + AttachmentRadius_encode_xer, + AttachmentRadius_decode_uper, + AttachmentRadius_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AttachmentRadius_tags_1, + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + asn_DEF_AttachmentRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + &asn_PER_type_AttachmentRadius_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c new file mode 100644 index 000000000..9c6edabac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AuxiliaryBrakeStatus.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AuxiliaryBrakeStatus.h" + +int +AuxiliaryBrakeStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +AuxiliaryBrakeStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AuxiliaryBrakeStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AuxiliaryBrakeStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AuxiliaryBrakeStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AuxiliaryBrakeStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AuxiliaryBrakeStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AuxiliaryBrakeStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AuxiliaryBrakeStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AuxiliaryBrakeStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 8, "reserved" } +}; +static unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { + asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { + "AuxiliaryBrakeStatus", + "AuxiliaryBrakeStatus", + AuxiliaryBrakeStatus_free, + AuxiliaryBrakeStatus_print, + AuxiliaryBrakeStatus_constraint, + AuxiliaryBrakeStatus_decode_ber, + AuxiliaryBrakeStatus_encode_der, + AuxiliaryBrakeStatus_decode_xer, + AuxiliaryBrakeStatus_encode_xer, + AuxiliaryBrakeStatus_decode_uper, + AuxiliaryBrakeStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AuxiliaryBrakeStatus_tags_1, + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + &asn_PER_type_AuxiliaryBrakeStatus_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AxleLocation.c b/src/tmx/Asn_J2735/src/r41/AxleLocation.c new file mode 100644 index 000000000..efcb6fb34 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AxleLocation.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AxleLocation.h" + +int +AxleLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AxleLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AxleLocation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AxleLocation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AxleLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AxleLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AxleLocation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AxleLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AxleLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AxleLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AxleLocation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AxleLocation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleLocation = { + "AxleLocation", + "AxleLocation", + AxleLocation_free, + AxleLocation_print, + AxleLocation_constraint, + AxleLocation_decode_ber, + AxleLocation_encode_der, + AxleLocation_decode_xer, + AxleLocation_encode_xer, + AxleLocation_decode_uper, + AxleLocation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AxleLocation_tags_1, + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + asn_DEF_AxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + &asn_PER_type_AxleLocation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/AxleWeight.c b/src/tmx/Asn_J2735/src/r41/AxleWeight.c new file mode 100644 index 000000000..764552876 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/AxleWeight.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "AxleWeight.h" + +int +AxleWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +AxleWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +AxleWeight_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + AxleWeight_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +AxleWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +AxleWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +AxleWeight_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +AxleWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +AxleWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +AxleWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +AxleWeight_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + AxleWeight_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeight = { + "AxleWeight", + "AxleWeight", + AxleWeight_free, + AxleWeight_print, + AxleWeight_constraint, + AxleWeight_decode_ber, + AxleWeight_encode_der, + AxleWeight_decode_xer, + AxleWeight_encode_xer, + AxleWeight_decode_uper, + AxleWeight_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_AxleWeight_tags_1, + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + asn_DEF_AxleWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + &asn_PER_type_AxleWeight_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BIT_STRING.c b/src/tmx/Asn_J2735/src/r41/BIT_STRING.c new file mode 100644 index 000000000..9b9827127 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BIT_STRING.c @@ -0,0 +1,189 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * BIT STRING basic type description. + */ +static ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +static asn_OCTET_STRING_specifics_t asn_DEF_BIT_STRING_specs = { + sizeof(BIT_STRING_t), + offsetof(BIT_STRING_t, _asn_ctx), + ASN_OSUBV_BIT +}; +asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { + "BIT STRING", + "BIT_STRING", + OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ + BIT_STRING_print, + BIT_STRING_constraint, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_decode_xer_binary, + BIT_STRING_encode_xer, + OCTET_STRING_decode_uper, /* Unaligned PER decoder */ + OCTET_STRING_encode_uper, /* Unaligned PER encoder */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BIT_STRING_tags, + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + asn_DEF_BIT_STRING_tags, /* Same as above */ + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_DEF_BIT_STRING_specs +}; + +/* + * BIT STRING generic constraint. + */ +int +BIT_STRING_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + + if(st && st->buf) { + if((st->size == 0 && st->bits_unused) + || st->bits_unused < 0 || st->bits_unused > 7) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: invalid padding byte (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +static char *_bit_pattern[16] = { + "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", + "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" +}; + +asn_enc_rval_t +BIT_STRING_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er; + char scratch[128]; + char *p = scratch; + char *scend = scratch + (sizeof(scratch) - 10); + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + int xcan = (flags & XER_F_CANONICAL); + uint8_t *buf; + uint8_t *end; + + if(!st || !st->buf) + _ASN_ENCODE_FAILED; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size - 1; /* Last byte is special */ + + /* + * Binary dump + */ + for(; buf < end; buf++) { + int v = *buf; + int nline = xcan?0:(((buf - st->buf) % 8) == 0); + if(p >= scend || nline) { + er.encoded += p - scratch; + _ASN_CALLBACK(scratch, p - scratch); + p = scratch; + if(nline) _i_ASN_TEXT_INDENT(1, ilevel); + } + memcpy(p + 0, _bit_pattern[v >> 4], 4); + memcpy(p + 4, _bit_pattern[v & 0x0f], 4); + p += 8; + } + + if(!xcan && ((buf - st->buf) % 8) == 0) + _i_ASN_TEXT_INDENT(1, ilevel); + er.encoded += p - scratch; + _ASN_CALLBACK(scratch, p - scratch); + p = scratch; + + if(buf == end) { + int v = *buf; + int ubits = st->bits_unused; + int i; + for(i = 7; i >= ubits; i--) + *p++ = (v & (1 << i)) ? 0x31 : 0x30; + er.encoded += p - scratch; + _ASN_CALLBACK(scratch, p - scratch); + } + + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + + +/* + * BIT STRING specific contents printer. + */ +int +BIT_STRING_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + static const char *h2c = "0123456789ABCDEF"; + char scratch[64]; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + uint8_t *buf; + uint8_t *end; + char *p = scratch; + + (void)td; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + ilevel++; + buf = st->buf; + end = buf + st->size; + + /* + * Hexadecimal dump. + */ + for(; buf < end; buf++) { + if((buf - st->buf) % 16 == 0 && (st->size > 16) + && buf != st->buf) { + _i_INDENT(1); + /* Dump the string */ + if(cb(scratch, p - scratch, app_key) < 0) return -1; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Eat the tailing space */ + + if((st->size > 16)) { + _i_INDENT(1); + } + + /* Dump the incomplete 16-bytes row */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/r41/BOOLEAN.c b/src/tmx/Asn_J2735/src/r41/BOOLEAN.c new file mode 100644 index 000000000..1b74ea1cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BOOLEAN.c @@ -0,0 +1,282 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * BOOLEAN basic type description. + */ +static ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { + "BOOLEAN", + "BOOLEAN", + BOOLEAN_free, + BOOLEAN_print, + asn_generic_no_constraint, + BOOLEAN_decode_ber, + BOOLEAN_encode_der, + BOOLEAN_decode_xer, + BOOLEAN_encode_xer, + BOOLEAN_decode_uper, /* Unaligned PER decoder */ + BOOLEAN_encode_uper, /* Unaligned PER encoder */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BOOLEAN_tags, + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + asn_DEF_BOOLEAN_tags, /* Same as above */ + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Decode BOOLEAN type. + */ +asn_dec_rval_t +BOOLEAN_decode_ber(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + void **bool_value, const void *buf_ptr, size_t size, + int tag_mode) { + BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; + asn_dec_rval_t rval; + ber_tlv_len_t length; + ber_tlv_len_t lidx; + + if(st == NULL) { + st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); + if(st == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("Boolean length is %d bytes", (int)length); + + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * Compute boolean value. + */ + for(*st = 0, lidx = 0; + (lidx < length) && *st == 0; lidx++) { + /* + * Very simple approach: read bytes until the end or + * value is already TRUE. + * BOOLEAN is not supposed to contain meaningful data anyway. + */ + *st |= ((const uint8_t *)buf_ptr)[lidx]; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", + (long)rval.consumed, (long)length, + td->name, *st); + + return rval; +} + +asn_enc_rval_t +BOOLEAN_encode_der(asn_TYPE_descriptor_t *td, void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval; + BOOLEAN_t *st = (BOOLEAN_t *)sptr; + + erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb) { + uint8_t bool_value; + + bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ + + if(cb(&bool_value, 1, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } + + erval.encoded += 1; + + _ASN_ENCODED_OK(erval); +} + + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +BOOLEAN__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) { + BOOLEAN_t *st = (BOOLEAN_t *)sptr; + const char *p = (const char *)chunk_buf; + + (void)td; + + if(chunk_size && p[0] == 0x3c /* '<' */) { + switch(xer_check_tag(chunk_buf, chunk_size, "false")) { + case XCT_BOTH: + /* "" */ + *st = 0; + break; + case XCT_UNKNOWN_BO: + if(xer_check_tag(chunk_buf, chunk_size, "true") + != XCT_BOTH) + return XPBD_BROKEN_ENCODING; + /* "" */ + *st = 1; /* Or 0xff as in DER?.. */ + break; + default: + return XPBD_BROKEN_ENCODING; + } + return XPBD_BODY_CONSUMED; + } else { + return XPBD_BROKEN_ENCODING; + } +} + + +asn_dec_rval_t +BOOLEAN_decode_xer(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, + BOOLEAN__xer_body_decode); +} + +asn_enc_rval_t +BOOLEAN_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er; + + (void)ilevel; + (void)flags; + + if(!st) _ASN_ENCODE_FAILED; + + if(*st) { + _ASN_CALLBACK("", 7); + er.encoded = 7; + } else { + _ASN_CALLBACK("", 8); + er.encoded = 8; + } + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +int +BOOLEAN_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + const char *buf; + size_t buflen; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st) { + if(*st) { + buf = "TRUE"; + buflen = 4; + } else { + buf = "FALSE"; + buflen = 5; + } + } else { + buf = ""; + buflen = 8; + } + + return (cb(buf, buflen, app_key) < 0) ? -1 : 0; +} + +void +BOOLEAN_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { + if(td && ptr && !contents_only) { + FREEMEM(ptr); + } +} + +asn_dec_rval_t +BOOLEAN_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) _ASN_DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: *st = 1; break; + case 0: *st = 0; break; + case -1: default: _ASN_DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + + +asn_enc_rval_t +BOOLEAN_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) _ASN_ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r41/BSMblob.c b/src/tmx/Asn_J2735/src/r41/BSMblob.c new file mode 100644 index 000000000..916d1ea95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BSMblob.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BSMblob.h" + +int +BSMblob_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 38)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +BSMblob_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +BSMblob_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BSMblob_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BSMblob_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BSMblob_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BSMblob_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BSMblob_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BSMblob_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BSMblob_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BSMblob_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BSMblob_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BSMblob_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 38, 38 } /* (SIZE(38..38)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_BSMblob_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BSMblob = { + "BSMblob", + "BSMblob", + BSMblob_free, + BSMblob_print, + BSMblob_constraint, + BSMblob_decode_ber, + BSMblob_encode_der, + BSMblob_decode_xer, + BSMblob_encode_xer, + BSMblob_decode_uper, + BSMblob_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BSMblob_tags_1, + sizeof(asn_DEF_BSMblob_tags_1) + /sizeof(asn_DEF_BSMblob_tags_1[0]), /* 1 */ + asn_DEF_BSMblob_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMblob_tags_1) + /sizeof(asn_DEF_BSMblob_tags_1[0]), /* 1 */ + &asn_PER_type_BSMblob_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c new file mode 100644 index 000000000..b0da90bae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessage.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BasicSafetyMessage.h" + +static asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, blob1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMblob, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "blob1" + }, + { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtension, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, +}; +static int asn_MAP_BasicSafetyMessage_oms_1[] = { 2, 3 }; +static ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* blob1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* status */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { + sizeof(struct BasicSafetyMessage), + offsetof(struct BasicSafetyMessage, _asn_ctx), + asn_MAP_BasicSafetyMessage_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { + "BasicSafetyMessage", + "BasicSafetyMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_BasicSafetyMessage_1, + 4, /* Elements count */ + &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c new file mode 100644 index 000000000..bfe6e0ad8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BasicSafetyMessageVerbose.c @@ -0,0 +1,212 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BasicSafetyMessageVerbose.h" + +static asn_TYPE_member_t asn_MBR_BasicSafetyMessageVerbose_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, secMark), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, lat), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, Long), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, elev), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Elevation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "elev" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, accuracy), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, speed), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, heading), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, angle), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "angle" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, accelSet), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accelSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, brakes), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "brakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessageVerbose, size), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "size" + }, + { ATF_POINTER, 2, offsetof(struct BasicSafetyMessageVerbose, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtension, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessageVerbose, status), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, +}; +static int asn_MAP_BasicSafetyMessageVerbose_oms_1[] = { 14, 15 }; +static ber_tlv_tag_t asn_DEF_BasicSafetyMessageVerbose_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessageVerbose_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elev */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* size */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 } /* status */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessageVerbose_specs_1 = { + sizeof(struct BasicSafetyMessageVerbose), + offsetof(struct BasicSafetyMessageVerbose, _asn_ctx), + asn_MAP_BasicSafetyMessageVerbose_tag2el_1, + 16, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessageVerbose_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 15, /* Start extensions */ + 17 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessageVerbose = { + "BasicSafetyMessageVerbose", + "BasicSafetyMessageVerbose", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BasicSafetyMessageVerbose_tags_1, + sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1) + /sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessageVerbose_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1) + /sizeof(asn_DEF_BasicSafetyMessageVerbose_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_BasicSafetyMessageVerbose_1, + 16, /* Elements count */ + &asn_SPC_BasicSafetyMessageVerbose_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c new file mode 100644 index 000000000..6073f2a53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BrakeAppliedPressure.c @@ -0,0 +1,175 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BrakeAppliedPressure.h" + +int +BrakeAppliedPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +BrakeAppliedPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +BrakeAppliedPressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BrakeAppliedPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BrakeAppliedPressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BrakeAppliedPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BrakeAppliedPressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BrakeAppliedPressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "minPressure" }, + { 2, 7, "bkLvl-2" }, + { 3, 7, "bkLvl-3" }, + { 4, 7, "bkLvl-4" }, + { 5, 7, "bkLvl-5" }, + { 6, 7, "bkLvl-6" }, + { 7, 7, "bkLvl-7" }, + { 8, 7, "bkLvl-8" }, + { 9, 7, "bkLvl-9" }, + { 10, 8, "bkLvl-10" }, + { 11, 8, "bkLvl-11" }, + { 12, 8, "bkLvl-12" }, + { 13, 8, "bkLvl-13" }, + { 14, 8, "bkLvl-14" }, + { 15, 11, "maxPressure" } +}; +static unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { + 10, /* bkLvl-10(10) */ + 11, /* bkLvl-11(11) */ + 12, /* bkLvl-12(12) */ + 13, /* bkLvl-13(13) */ + 14, /* bkLvl-14(14) */ + 2, /* bkLvl-2(2) */ + 3, /* bkLvl-3(3) */ + 4, /* bkLvl-4(4) */ + 5, /* bkLvl-5(5) */ + 6, /* bkLvl-6(6) */ + 7, /* bkLvl-7(7) */ + 8, /* bkLvl-8(8) */ + 9, /* bkLvl-9(9) */ + 15, /* maxPressure(15) */ + 1, /* minPressure(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { + asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { + "BrakeAppliedPressure", + "BrakeAppliedPressure", + BrakeAppliedPressure_free, + BrakeAppliedPressure_print, + BrakeAppliedPressure_constraint, + BrakeAppliedPressure_decode_ber, + BrakeAppliedPressure_encode_der, + BrakeAppliedPressure_decode_xer, + BrakeAppliedPressure_encode_xer, + BrakeAppliedPressure_decode_uper, + BrakeAppliedPressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BrakeAppliedPressure_tags_1, + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + &asn_PER_type_BrakeAppliedPressure_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c new file mode 100644 index 000000000..ea6fbd349 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BrakeAppliedStatus.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BrakeAppliedStatus.h" + +int +BrakeAppliedStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +BrakeAppliedStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +BrakeAppliedStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BrakeAppliedStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BrakeAppliedStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BrakeAppliedStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BrakeAppliedStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BrakeAppliedStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BrakeAppliedStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { + "BrakeAppliedStatus", + "BrakeAppliedStatus", + BrakeAppliedStatus_free, + BrakeAppliedStatus_print, + BrakeAppliedStatus_constraint, + BrakeAppliedStatus_decode_ber, + BrakeAppliedStatus_encode_der, + BrakeAppliedStatus_decode_xer, + BrakeAppliedStatus_encode_xer, + BrakeAppliedStatus_decode_uper, + BrakeAppliedStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BrakeAppliedStatus_tags_1, + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c new file mode 100644 index 000000000..5b8ae6068 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BrakeBoostApplied.c @@ -0,0 +1,149 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BrakeBoostApplied.h" + +int +BrakeBoostApplied_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +BrakeBoostApplied_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +BrakeBoostApplied_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BrakeBoostApplied_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BrakeBoostApplied_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BrakeBoostApplied_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BrakeBoostApplied_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BrakeBoostApplied_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BrakeBoostApplied_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BrakeBoostApplied_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BrakeBoostApplied_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" } +}; +static unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { + asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { + "BrakeBoostApplied", + "BrakeBoostApplied", + BrakeBoostApplied_free, + BrakeBoostApplied_print, + BrakeBoostApplied_constraint, + BrakeBoostApplied_decode_ber, + BrakeBoostApplied_encode_der, + BrakeBoostApplied_decode_xer, + BrakeBoostApplied_encode_xer, + BrakeBoostApplied_decode_uper, + BrakeBoostApplied_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BrakeBoostApplied_tags_1, + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + &asn_PER_type_BrakeBoostApplied_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c new file mode 100644 index 000000000..e45cf3583 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BrakeSystemStatus.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BrakeSystemStatus.h" + +int +BrakeSystemStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +BrakeSystemStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +BrakeSystemStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BrakeSystemStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BrakeSystemStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BrakeSystemStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BrakeSystemStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BrakeSystemStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BrakeSystemStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BrakeSystemStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BrakeSystemStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BrakeSystemStatus_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { + "BrakeSystemStatus", + "BrakeSystemStatus", + BrakeSystemStatus_free, + BrakeSystemStatus_print, + BrakeSystemStatus_constraint, + BrakeSystemStatus_decode_ber, + BrakeSystemStatus_encode_der, + BrakeSystemStatus_decode_xer, + BrakeSystemStatus_encode_xer, + BrakeSystemStatus_decode_uper, + BrakeSystemStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BrakeSystemStatus_tags_1, + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + &asn_PER_type_BrakeSystemStatus_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c b/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c new file mode 100644 index 000000000..5c35946b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BumperHeightFront.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BumperHeightFront.h" + +int +BumperHeightFront_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +BumperHeightFront_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +BumperHeightFront_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BumperHeightFront_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BumperHeightFront_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BumperHeightFront_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BumperHeightFront_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BumperHeightFront_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BumperHeightFront_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BumperHeightFront_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BumperHeightFront_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BumperHeightFront_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_BumperHeightFront_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeightFront = { + "BumperHeightFront", + "BumperHeightFront", + BumperHeightFront_free, + BumperHeightFront_print, + BumperHeightFront_constraint, + BumperHeightFront_decode_ber, + BumperHeightFront_encode_der, + BumperHeightFront_decode_xer, + BumperHeightFront_encode_xer, + BumperHeightFront_decode_uper, + BumperHeightFront_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BumperHeightFront_tags_1, + sizeof(asn_DEF_BumperHeightFront_tags_1) + /sizeof(asn_DEF_BumperHeightFront_tags_1[0]), /* 1 */ + asn_DEF_BumperHeightFront_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeightFront_tags_1) + /sizeof(asn_DEF_BumperHeightFront_tags_1[0]), /* 1 */ + &asn_PER_type_BumperHeightFront_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c b/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c new file mode 100644 index 000000000..d2207b7ff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BumperHeightRear.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BumperHeightRear.h" + +int +BumperHeightRear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +BumperHeightRear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +BumperHeightRear_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +BumperHeightRear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +BumperHeightRear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +BumperHeightRear_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +BumperHeightRear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +BumperHeightRear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +BumperHeightRear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +BumperHeightRear_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + BumperHeightRear_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_BumperHeightRear_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_BumperHeightRear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeightRear = { + "BumperHeightRear", + "BumperHeightRear", + BumperHeightRear_free, + BumperHeightRear_print, + BumperHeightRear_constraint, + BumperHeightRear_decode_ber, + BumperHeightRear_encode_der, + BumperHeightRear_decode_xer, + BumperHeightRear_encode_xer, + BumperHeightRear_decode_uper, + BumperHeightRear_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BumperHeightRear_tags_1, + sizeof(asn_DEF_BumperHeightRear_tags_1) + /sizeof(asn_DEF_BumperHeightRear_tags_1[0]), /* 1 */ + asn_DEF_BumperHeightRear_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeightRear_tags_1) + /sizeof(asn_DEF_BumperHeightRear_tags_1[0]), /* 1 */ + &asn_PER_type_BumperHeightRear_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/BumperHeights.c b/src/tmx/Asn_J2735/src/r41/BumperHeights.c new file mode 100644 index 000000000..3d9647fc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/BumperHeights.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "BumperHeights.h" + +static asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, frnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeightFront, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "frnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeightRear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rear" + }, +}; +static ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { + sizeof(struct BumperHeights), + offsetof(struct BumperHeights, _asn_ctx), + asn_MAP_BumperHeights_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeights = { + "BumperHeights", + "BumperHeights", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_BumperHeights_tags_1, + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + asn_DEF_BumperHeights_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_BumperHeights_1, + 2, /* Elements count */ + &asn_SPC_BumperHeights_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/CargoWeight.c b/src/tmx/Asn_J2735/src/r41/CargoWeight.c new file mode 100644 index 000000000..0f3d9a6d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/CargoWeight.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "CargoWeight.h" + +int +CargoWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +CargoWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +CargoWeight_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + CargoWeight_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +CargoWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +CargoWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +CargoWeight_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +CargoWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +CargoWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +CargoWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +CargoWeight_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + CargoWeight_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CargoWeight = { + "CargoWeight", + "CargoWeight", + CargoWeight_free, + CargoWeight_print, + CargoWeight_constraint, + CargoWeight_decode_ber, + CargoWeight_encode_der, + CargoWeight_decode_xer, + CargoWeight_encode_xer, + CargoWeight_decode_uper, + CargoWeight_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_CargoWeight_tags_1, + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + asn_DEF_CargoWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + &asn_PER_type_CargoWeight_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Circle.c b/src/tmx/Asn_J2735/src/r41/Circle.c new file mode 100644 index 000000000..788fd0969 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Circle.c @@ -0,0 +1,233 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Circle.h" + +static int +memb_radiusSteps_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_miles_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 2000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_km_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 5000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_radiusSteps_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_miles_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 1, 2000 } /* (1..2000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_km_constr_6 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 1, 5000 } /* (1..5000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_raduis_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_raduis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.radiusSteps), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_radiusSteps_constraint_3, + &asn_PER_memb_radiusSteps_constr_4, + 0, + "radiusSteps" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.miles), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_miles_constraint_3, + &asn_PER_memb_miles_constr_5, + 0, + "miles" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle__raduis, choice.km), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_km_constraint_3, + &asn_PER_memb_km_constr_6, + 0, + "km" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_raduis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusSteps */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* miles */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* km */ +}; +static asn_CHOICE_specifics_t asn_SPC_raduis_specs_3 = { + sizeof(struct Circle__raduis), + offsetof(struct Circle__raduis, _asn_ctx), + offsetof(struct Circle__raduis, present), + sizeof(((struct Circle__raduis *)0)->present), + asn_MAP_raduis_tag2el_3, + 3, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_raduis_3 = { + "raduis", + "raduis", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_raduis_constr_3, + asn_MBR_raduis_3, + 3, /* Elements count */ + &asn_SPC_raduis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Circle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Circle, center), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "center" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, raduis), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_raduis_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "raduis" + }, +}; +static ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* raduis */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { + sizeof(struct Circle), + offsetof(struct Circle, _asn_ctx), + asn_MAP_Circle_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Circle = { + "Circle", + "Circle", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Circle_tags_1, + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + asn_DEF_Circle_tags_1, /* Same as above */ + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Circle_1, + 2, /* Elements count */ + &asn_SPC_Circle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/CodeWord.c b/src/tmx/Asn_J2735/src/r41/CodeWord.c new file mode 100644 index 000000000..0bc3a3901 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/CodeWord.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "CodeWord.h" + +int +CodeWord_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +CodeWord_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +CodeWord_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + CodeWord_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +CodeWord_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +CodeWord_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +CodeWord_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +CodeWord_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +CodeWord_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +CodeWord_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +CodeWord_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + CodeWord_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CodeWord = { + "CodeWord", + "CodeWord", + CodeWord_free, + CodeWord_print, + CodeWord_constraint, + CodeWord_decode_ber, + CodeWord_encode_der, + CodeWord_decode_xer, + CodeWord_encode_xer, + CodeWord_decode_uper, + CodeWord_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_CodeWord_tags_1, + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + asn_DEF_CodeWord_tags_1, /* Same as above */ + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + &asn_PER_type_CodeWord_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c new file mode 100644 index 000000000..20c741356 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/CoefficientOfFriction.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "CoefficientOfFriction.h" + +int +CoefficientOfFriction_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +CoefficientOfFriction_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +CoefficientOfFriction_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +CoefficientOfFriction_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +CoefficientOfFriction_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +CoefficientOfFriction_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +CoefficientOfFriction_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +CoefficientOfFriction_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +CoefficientOfFriction_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +CoefficientOfFriction_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + CoefficientOfFriction_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { + "CoefficientOfFriction", + "CoefficientOfFriction", + CoefficientOfFriction_free, + CoefficientOfFriction_print, + CoefficientOfFriction_constraint, + CoefficientOfFriction_decode_ber, + CoefficientOfFriction_encode_der, + CoefficientOfFriction_decode_xer, + CoefficientOfFriction_encode_xer, + CoefficientOfFriction_decode_uper, + CoefficientOfFriction_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_CoefficientOfFriction_tags_1, + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + &asn_PER_type_CoefficientOfFriction_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c new file mode 100644 index 000000000..ad8feae5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/CommonSafetyRequest.c @@ -0,0 +1,174 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "CommonSafetyRequest.h" + +static int +memb_requests_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_requests_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_requests_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_requests_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RequestedItem, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_requests_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_requests_specs_5 = { + sizeof(struct CommonSafetyRequest__requests), + offsetof(struct CommonSafetyRequest__requests, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_requests_5 = { + "requests", + "requests", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_requests_tags_5, + sizeof(asn_DEF_requests_tags_5) + /sizeof(asn_DEF_requests_tags_5[0]) - 1, /* 1 */ + asn_DEF_requests_tags_5, /* Same as above */ + sizeof(asn_DEF_requests_tags_5) + /sizeof(asn_DEF_requests_tags_5[0]), /* 2 */ + &asn_PER_type_requests_constr_5, + asn_MBR_requests_5, + 1, /* Single element */ + &asn_SPC_requests_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_requests_5, + memb_requests_constraint_1, + &asn_PER_memb_requests_constr_5, + 0, + "requests" + }, +}; +static int asn_MAP_CommonSafetyRequest_oms_1[] = { 1, 2 }; +static ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* requests */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { + sizeof(struct CommonSafetyRequest), + offsetof(struct CommonSafetyRequest, _asn_ctx), + asn_MAP_CommonSafetyRequest_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { + "CommonSafetyRequest", + "CommonSafetyRequest", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_CommonSafetyRequest_tags_1, + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_CommonSafetyRequest_1, + 4, /* Elements count */ + &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ComputedLane.c b/src/tmx/Asn_J2735/src/r41/ComputedLane.c new file mode 100644 index 000000000..2c2ca6dba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ComputedLane.c @@ -0,0 +1,248 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ComputedLane.h" + +static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "large" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { + sizeof(struct ComputedLane__offsetXaxis), + offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetXaxis, present), + sizeof(((struct ComputedLane__offsetXaxis *)0)->present), + asn_MAP_offsetXaxis_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { + "offsetXaxis", + "offsetXaxis", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_offsetXaxis_constr_3, + asn_MBR_offsetXaxis_3, + 2, /* Elements count */ + &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "large" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { + sizeof(struct ComputedLane__offsetYaxis), + offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetYaxis, present), + sizeof(((struct ComputedLane__offsetYaxis *)0)->present), + asn_MAP_offsetYaxis_tag2el_6, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { + "offsetYaxis", + "offsetYaxis", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_offsetYaxis_constr_6, + asn_MBR_offsetYaxis_6, + 2, /* Elements count */ + &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "referenceLaneId" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetXaxis_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "offsetXaxis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetYaxis_6, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "offsetYaxis" + }, + { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Angle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rotateXY" + }, + { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "scaleXaxis" + }, + { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "scaleYaxis" + }, + { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalComputedLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; +static ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { + sizeof(struct ComputedLane), + offsetof(struct ComputedLane, _asn_ctx), + asn_MAP_ComputedLane_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ComputedLane_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* Start extensions */ + 8 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ComputedLane = { + "ComputedLane", + "ComputedLane", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ComputedLane_tags_1, + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + asn_DEF_ComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ComputedLane_1, + 7, /* Elements count */ + &asn_SPC_ComputedLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c b/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c new file mode 100644 index 000000000..955310f35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ConfidenceSet.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ConfidenceSet.h" + +static asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { + { ATF_POINTER, 6, offsetof(struct ConfidenceSet, accelConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelSteerYawRateConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accelConfidence" + }, + { ATF_POINTER, 5, offsetof(struct ConfidenceSet, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedConfidence" + }, + { ATF_POINTER, 4, offsetof(struct ConfidenceSet, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timeConfidence" + }, + { ATF_POINTER, 3, offsetof(struct ConfidenceSet, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posConfidence" + }, + { ATF_POINTER, 2, offsetof(struct ConfidenceSet, steerConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "steerConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "throttleConfidence" + }, +}; +static int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* throttleConfidence */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { + sizeof(struct ConfidenceSet), + offsetof(struct ConfidenceSet, _asn_ctx), + asn_MAP_ConfidenceSet_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ConfidenceSet_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { + "ConfidenceSet", + "ConfidenceSet", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ConfidenceSet_tags_1, + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_ConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ConfidenceSet_1, + 6, /* Elements count */ + &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ConnectingLane.c b/src/tmx/Asn_J2735/src/r41/ConnectingLane.c new file mode 100644 index 000000000..b372bb0df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ConnectingLane.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ConnectingLane.h" + +static asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lane" + }, + { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maneuver" + }, +}; +static int asn_MAP_ConnectingLane_oms_1[] = { 1 }; +static ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { + sizeof(struct ConnectingLane), + offsetof(struct ConnectingLane, _asn_ctx), + asn_MAP_ConnectingLane_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectingLane_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { + "ConnectingLane", + "ConnectingLane", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ConnectingLane_tags_1, + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + asn_DEF_ConnectingLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ConnectingLane_1, + 2, /* Elements count */ + &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Connection.c b/src/tmx/Asn_J2735/src/r41/Connection.c new file mode 100644 index 000000000..cf2b00f0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Connection.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Connection.h" + +static asn_TYPE_member_t asn_MBR_Connection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectingLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "connectingLane" + }, + { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "remoteIntersection" + }, + { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "signalGroup" + }, + { ATF_POINTER, 2, offsetof(struct Connection, userClass), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "userClass" + }, + { ATF_POINTER, 1, offsetof(struct Connection, connectionID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "connectionID" + }, +}; +static int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; +static ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { + sizeof(struct Connection), + offsetof(struct Connection, _asn_ctx), + asn_MAP_Connection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Connection_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Connection = { + "Connection", + "Connection", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Connection_tags_1, + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + asn_DEF_Connection_tags_1, /* Same as above */ + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Connection_1, + 5, /* Elements count */ + &asn_SPC_Connection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c new file mode 100644 index 000000000..f2b38fc72 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ConnectionManeuverAssist.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ConnectionManeuverAssist.h" + +static asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "connectionID" + }, + { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "queueLength" + }, + { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "availableStorageLength" + }, + { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WaitOnStopline, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "waitOnStop" + }, + { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PedestrianBicycleDetect, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pedBicycleDetect" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalConnectionManeuverAssist, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { + sizeof(struct ConnectionManeuverAssist), + offsetof(struct ConnectionManeuverAssist, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { + "ConnectionManeuverAssist", + "ConnectionManeuverAssist", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ConnectionManeuverAssist_1, + 6, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ConnectsToList.c b/src/tmx/Asn_J2735/src/r41/ConnectsToList.c new file mode 100644 index 000000000..4aef6b8f2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ConnectsToList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ConnectsToList.h" + +static asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Connection, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { + sizeof(struct ConnectsToList), + offsetof(struct ConnectsToList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { + "ConnectsToList", + "ConnectsToList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ConnectsToList_tags_1, + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + asn_DEF_ConnectsToList_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + &asn_PER_type_ConnectsToList_constr_1, + asn_MBR_ConnectsToList_1, + 1, /* Single element */ + &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Count.c b/src/tmx/Asn_J2735/src/r41/Count.c new file mode 100644 index 000000000..571747630 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Count.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Count.h" + +int +Count_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Count_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Count_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Count_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Count_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Count_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Count_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Count_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Count_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Count_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Count_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Count_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Count_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Count_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Count_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Count_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Count_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Count_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Count_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Count_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Count = { + "Count", + "Count", + Count_free, + Count_print, + Count_constraint, + Count_decode_ber, + Count_encode_der, + Count_decode_xer, + Count_encode_xer, + Count_decode_uper, + Count_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Count_tags_1, + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + asn_DEF_Count_tags_1, /* Same as above */ + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + &asn_PER_type_Count_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DDate.c b/src/tmx/Asn_J2735/src/r41/DDate.c new file mode 100644 index 000000000..47cd76e3e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DDate.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DDate.h" + +static asn_TYPE_member_t asn_MBR_DDate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DDate, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "day" + }, +}; +static ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { + sizeof(struct DDate), + offsetof(struct DDate, _asn_ctx), + asn_MAP_DDate_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DDate = { + "DDate", + "DDate", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DDate_tags_1, + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + asn_DEF_DDate_tags_1, /* Same as above */ + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DDate_1, + 3, /* Elements count */ + &asn_SPC_DDate_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DDateTime.c b/src/tmx/Asn_J2735/src/r41/DDateTime.c new file mode 100644 index 000000000..6fae387d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DDateTime.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DDateTime.h" + +static asn_TYPE_member_t asn_MBR_DDateTime_1[] = { + { ATF_POINTER, 6, offsetof(struct DDateTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "year" + }, + { ATF_POINTER, 5, offsetof(struct DDateTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, + { ATF_POINTER, 4, offsetof(struct DDateTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "day" + }, + { ATF_POINTER, 3, offsetof(struct DDateTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "hour" + }, + { ATF_POINTER, 2, offsetof(struct DDateTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minute" + }, + { ATF_POINTER, 1, offsetof(struct DDateTime, second), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "second" + }, +}; +static int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* second */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { + sizeof(struct DDateTime), + offsetof(struct DDateTime, _asn_ctx), + asn_MAP_DDateTime_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_DDateTime_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DDateTime = { + "DDateTime", + "DDateTime", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DDateTime_tags_1, + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + asn_DEF_DDateTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DDateTime_1, + 6, /* Elements count */ + &asn_SPC_DDateTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DDay.c b/src/tmx/Asn_J2735/src/r41/DDay.c new file mode 100644 index 000000000..6b5a39e78 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DDay.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DDay.h" + +int +DDay_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DDay_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DDay_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DDay_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DDay_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DDay_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DDay_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DDay_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DDay_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DDay_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DDay_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DDay_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DDay_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DDay_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DDay_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DDay_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DDay_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DDay_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DDay_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DDay = { + "DDay", + "DDay", + DDay_free, + DDay_print, + DDay_constraint, + DDay_decode_ber, + DDay_encode_der, + DDay_decode_xer, + DDay_encode_xer, + DDay_decode_uper, + DDay_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DDay_tags_1, + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + asn_DEF_DDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + &asn_PER_type_DDay_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DFullTime.c b/src/tmx/Asn_J2735/src/r41/DFullTime.c new file mode 100644 index 000000000..7cc23837d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DFullTime.c @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DFullTime.h" + +static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minute" + }, +}; +static ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { + sizeof(struct DFullTime), + offsetof(struct DFullTime, _asn_ctx), + asn_MAP_DFullTime_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DFullTime = { + "DFullTime", + "DFullTime", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DFullTime_tags_1, + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + asn_DEF_DFullTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DFullTime_1, + 5, /* Elements count */ + &asn_SPC_DFullTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DHour.c b/src/tmx/Asn_J2735/src/r41/DHour.c new file mode 100644 index 000000000..770068265 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DHour.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DHour.h" + +int +DHour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DHour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DHour_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DHour_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DHour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DHour_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DHour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DHour_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DHour_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DHour_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DHour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DHour_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DHour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DHour_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DHour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DHour_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DHour_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DHour_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DHour_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DHour = { + "DHour", + "DHour", + DHour_free, + DHour_print, + DHour_constraint, + DHour_decode_ber, + DHour_encode_der, + DHour_decode_xer, + DHour_encode_xer, + DHour_decode_uper, + DHour_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DHour_tags_1, + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + asn_DEF_DHour_tags_1, /* Same as above */ + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + &asn_PER_type_DHour_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DMinute.c b/src/tmx/Asn_J2735/src/r41/DMinute.c new file mode 100644 index 000000000..be6baa92c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DMinute.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DMinute.h" + +int +DMinute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DMinute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DMinute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DMinute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DMinute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DMinute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DMinute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DMinute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DMinute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DMinute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DMinute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DMinute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DMinute_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMinute = { + "DMinute", + "DMinute", + DMinute_free, + DMinute_print, + DMinute_constraint, + DMinute_decode_ber, + DMinute_encode_der, + DMinute_decode_xer, + DMinute_encode_xer, + DMinute_decode_uper, + DMinute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DMinute_tags_1, + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + asn_DEF_DMinute_tags_1, /* Same as above */ + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + &asn_PER_type_DMinute_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DMonth.c b/src/tmx/Asn_J2735/src/r41/DMonth.c new file mode 100644 index 000000000..9303b3c3d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DMonth.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DMonth.h" + +int +DMonth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DMonth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DMonth_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DMonth_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DMonth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DMonth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DMonth_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DMonth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DMonth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DMonth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DMonth_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DMonth_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DMonth_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMonth = { + "DMonth", + "DMonth", + DMonth_free, + DMonth_print, + DMonth_constraint, + DMonth_decode_ber, + DMonth_encode_der, + DMonth_decode_xer, + DMonth_encode_xer, + DMonth_decode_uper, + DMonth_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DMonth_tags_1, + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + asn_DEF_DMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + &asn_PER_type_DMonth_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DMonthDay.c b/src/tmx/Asn_J2735/src/r41/DMonthDay.c new file mode 100644 index 000000000..d215d4054 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DMonthDay.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DMonthDay.h" + +static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "day" + }, +}; +static ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { + sizeof(struct DMonthDay), + offsetof(struct DMonthDay, _asn_ctx), + asn_MAP_DMonthDay_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DMonthDay = { + "DMonthDay", + "DMonthDay", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DMonthDay_tags_1, + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + asn_DEF_DMonthDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DMonthDay_1, + 2, /* Elements count */ + &asn_SPC_DMonthDay_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DOffset.c b/src/tmx/Asn_J2735/src/r41/DOffset.c new file mode 100644 index 000000000..795aafeb8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DOffset.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DOffset.h" + +int +DOffset_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -840 && value <= 840)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DOffset_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DOffset_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DOffset_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DOffset_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DOffset_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DOffset_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DOffset_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DOffset_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DOffset_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DOffset_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DOffset_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DOffset_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DOffset = { + "DOffset", + "DOffset", + DOffset_free, + DOffset_print, + DOffset_constraint, + DOffset_decode_ber, + DOffset_encode_der, + DOffset_decode_xer, + DOffset_encode_xer, + DOffset_decode_uper, + DOffset_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DOffset_tags_1, + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + asn_DEF_DOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + &asn_PER_type_DOffset_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c b/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c new file mode 100644 index 000000000..458d5e5d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSRCEquippedType.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "DSRCEquippedType.h" + +int +DSRCEquippedType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static void +DSRCEquippedType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BOOLEAN.free_struct; + td->print_struct = asn_DEF_BOOLEAN.print_struct; + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; + td->der_encoder = asn_DEF_BOOLEAN.der_encoder; + td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; + td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; + td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; + td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BOOLEAN.per_constraints; + td->elements = asn_DEF_BOOLEAN.elements; + td->elements_count = asn_DEF_BOOLEAN.elements_count; + td->specifics = asn_DEF_BOOLEAN.specifics; +} + +void +DSRCEquippedType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSRCEquippedType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSRCEquippedType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSRCEquippedType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSRCEquippedType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSRCEquippedType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSRCEquippedType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSRCEquippedType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSRCEquippedType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static const ber_tlv_tag_t asn_DEF_DSRCEquippedType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCEquippedType = { + "DSRCEquippedType", + "DSRCEquippedType", + DSRCEquippedType_free, + DSRCEquippedType_print, + DSRCEquippedType_constraint, + DSRCEquippedType_decode_ber, + DSRCEquippedType_encode_der, + DSRCEquippedType_decode_xer, + DSRCEquippedType_encode_xer, + DSRCEquippedType_decode_uper, + DSRCEquippedType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSRCEquippedType_tags_1, + sizeof(asn_DEF_DSRCEquippedType_tags_1) + /sizeof(asn_DEF_DSRCEquippedType_tags_1[0]), /* 1 */ + asn_DEF_DSRCEquippedType_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCEquippedType_tags_1) + /sizeof(asn_DEF_DSRCEquippedType_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c new file mode 100644 index 000000000..88f7cbbfe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSRCmsgID.c @@ -0,0 +1,179 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DSRCmsgID.h" + +int +DSRCmsgID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +DSRCmsgID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +DSRCmsgID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSRCmsgID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSRCmsgID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSRCmsgID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSRCmsgID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSRCmsgID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_DSRCmsgID_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 15, "alaCarteMessage" }, + { 2, 18, "basicSafetyMessage" }, + { 3, 25, "basicSafetyMessageVerbose" }, + { 4, 19, "commonSafetyRequest" }, + { 5, 21, "emergencyVehicleAlert" }, + { 6, 26, "intersectionCollisionAlert" }, + { 7, 7, "mapData" }, + { 8, 15, "nmeaCorrections" }, + { 9, 19, "probeDataManagement" }, + { 10, 16, "probeVehicleData" }, + { 11, 13, "roadSideAlert" }, + { 12, 15, "rtcmCorrections" }, + { 13, 27, "signalPhaseAndTimingMessage" }, + { 14, 20, "signalRequestMessage" }, + { 15, 19, "signalStatusMessage" }, + { 16, 19, "travelerInformation" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_DSRCmsgID_enum2value_1[] = { + 1, /* alaCarteMessage(1) */ + 2, /* basicSafetyMessage(2) */ + 3, /* basicSafetyMessageVerbose(3) */ + 4, /* commonSafetyRequest(4) */ + 5, /* emergencyVehicleAlert(5) */ + 6, /* intersectionCollisionAlert(6) */ + 7, /* mapData(7) */ + 8, /* nmeaCorrections(8) */ + 9, /* probeDataManagement(9) */ + 10, /* probeVehicleData(10) */ + 0, /* reserved(0) */ + 11, /* roadSideAlert(11) */ + 12, /* rtcmCorrections(12) */ + 13, /* signalPhaseAndTimingMessage(13) */ + 14, /* signalRequestMessage(14) */ + 15, /* signalStatusMessage(15) */ + 16 /* travelerInformation(16) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_DSRCmsgID_specs_1 = { + asn_MAP_DSRCmsgID_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DSRCmsgID_enum2value_1, /* N => "tag"; sorted by N */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { + "DSRCmsgID", + "DSRCmsgID", + DSRCmsgID_free, + DSRCmsgID_print, + DSRCmsgID_constraint, + DSRCmsgID_decode_ber, + DSRCmsgID_encode_der, + DSRCmsgID_decode_xer, + DSRCmsgID_encode_xer, + DSRCmsgID_decode_uper, + DSRCmsgID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSRCmsgID_tags_1, + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgID_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + &asn_PER_type_DSRCmsgID_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DSRCmsgID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c new file mode 100644 index 000000000..803b6f481 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSRCmsgID2.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DSRCmsgID2.h" + +int +DSRCmsgID2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DSRCmsgID2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DSRCmsgID2_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSRCmsgID2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSRCmsgID2_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSRCmsgID2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgID2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSRCmsgID2_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSRCmsgID2_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DSRCmsgID2_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DSRCmsgID2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgID2 = { + "DSRCmsgID2", + "DSRCmsgID2", + DSRCmsgID2_free, + DSRCmsgID2_print, + DSRCmsgID2_constraint, + DSRCmsgID2_decode_ber, + DSRCmsgID2_encode_der, + DSRCmsgID2_decode_xer, + DSRCmsgID2_encode_xer, + DSRCmsgID2_decode_uper, + DSRCmsgID2_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSRCmsgID2_tags_1, + sizeof(asn_DEF_DSRCmsgID2_tags_1) + /sizeof(asn_DEF_DSRCmsgID2_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgID2_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgID2_tags_1) + /sizeof(asn_DEF_DSRCmsgID2_tags_1[0]), /* 1 */ + &asn_PER_type_DSRCmsgID2_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c b/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c new file mode 100644 index 000000000..8fb6a5188 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSRCmsgSubID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DSRCmsgSubID.h" + +int +DSRCmsgSubID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DSRCmsgSubID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DSRCmsgSubID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSRCmsgSubID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgSubID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSRCmsgSubID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgSubID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSRCmsgSubID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSRCmsgSubID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSRCmsgSubID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSRCmsgSubID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DSRCmsgSubID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DSRCmsgSubID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgSubID = { + "DSRCmsgSubID", + "DSRCmsgSubID", + DSRCmsgSubID_free, + DSRCmsgSubID_print, + DSRCmsgSubID_constraint, + DSRCmsgSubID_decode_ber, + DSRCmsgSubID_encode_der, + DSRCmsgSubID_decode_xer, + DSRCmsgSubID_encode_xer, + DSRCmsgSubID_decode_uper, + DSRCmsgSubID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSRCmsgSubID_tags_1, + sizeof(asn_DEF_DSRCmsgSubID_tags_1) + /sizeof(asn_DEF_DSRCmsgSubID_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgSubID_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgSubID_tags_1) + /sizeof(asn_DEF_DSRCmsgSubID_tags_1[0]), /* 1 */ + &asn_PER_type_DSRCmsgSubID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSecond.c b/src/tmx/Asn_J2735/src/r41/DSecond.c new file mode 100644 index 000000000..278f5ddf4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSecond.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DSecond.h" + +int +DSecond_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DSecond_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DSecond_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSecond_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSecond_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSecond_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSecond_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSecond_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSecond_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSecond_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSecond_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSecond_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DSecond_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSecond = { + "DSecond", + "DSecond", + DSecond_free, + DSecond_print, + DSecond_constraint, + DSecond_decode_ber, + DSecond_encode_der, + DSecond_decode_xer, + DSecond_encode_xer, + DSecond_decode_uper, + DSecond_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSecond_tags_1, + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + asn_DEF_DSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + &asn_PER_type_DSecond_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DSecond2.c b/src/tmx/Asn_J2735/src/r41/DSecond2.c new file mode 100644 index 000000000..337733ba0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DSecond2.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DSecond2.h" + +int +DSecond2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DSecond2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DSecond2_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DSecond2_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DSecond2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DSecond2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DSecond2_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DSecond2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DSecond2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DSecond2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DSecond2_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DSecond2_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DSecond2_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DSecond2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSecond2 = { + "DSecond2", + "DSecond2", + DSecond2_free, + DSecond2_print, + DSecond2_constraint, + DSecond2_decode_ber, + DSecond2_encode_der, + DSecond2_decode_xer, + DSecond2_encode_xer, + DSecond2_decode_uper, + DSecond2_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DSecond2_tags_1, + sizeof(asn_DEF_DSecond2_tags_1) + /sizeof(asn_DEF_DSecond2_tags_1[0]), /* 1 */ + asn_DEF_DSecond2_tags_1, /* Same as above */ + sizeof(asn_DEF_DSecond2_tags_1) + /sizeof(asn_DEF_DSecond2_tags_1[0]), /* 1 */ + &asn_PER_type_DSecond2_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DTime.c b/src/tmx/Asn_J2735/src/r41/DTime.c new file mode 100644 index 000000000..58d05cb88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DTime.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DTime.h" + +static asn_TYPE_member_t asn_MBR_DTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "second" + }, +}; +static ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* second */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { + sizeof(struct DTime), + offsetof(struct DTime, _asn_ctx), + asn_MAP_DTime_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DTime = { + "DTime", + "DTime", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DTime_tags_1, + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + asn_DEF_DTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DTime_1, + 3, /* Elements count */ + &asn_SPC_DTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DYear.c b/src/tmx/Asn_J2735/src/r41/DYear.c new file mode 100644 index 000000000..fe58abd53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DYear.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DYear.h" + +int +DYear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 9999)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DYear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DYear_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DYear_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DYear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DYear_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DYear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DYear_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DYear_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DYear_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DYear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DYear_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DYear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DYear_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DYear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DYear_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DYear_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DYear_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DYear_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 9999 } /* (0..9999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DYear = { + "DYear", + "DYear", + DYear_free, + DYear_print, + DYear_constraint, + DYear_decode_ber, + DYear_encode_der, + DYear_decode_xer, + DYear_encode_xer, + DYear_decode_uper, + DYear_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DYear_tags_1, + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + asn_DEF_DYear_tags_1, /* Same as above */ + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + &asn_PER_type_DYear_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DYearMonth.c b/src/tmx/Asn_J2735/src/r41/DYearMonth.c new file mode 100644 index 000000000..3cc3a7827 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DYearMonth.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DYearMonth.h" + +static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, +}; +static ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { + sizeof(struct DYearMonth), + offsetof(struct DYearMonth, _asn_ctx), + asn_MAP_DYearMonth_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DYearMonth = { + "DYearMonth", + "DYearMonth", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DYearMonth_tags_1, + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + asn_DEF_DYearMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DYearMonth_1, + 2, /* Elements count */ + &asn_SPC_DYearMonth_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DataParameters.c b/src/tmx/Asn_J2735/src/r41/DataParameters.c new file mode 100644 index 000000000..86092d02c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DataParameters.c @@ -0,0 +1,272 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DataParameters.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_processMethod_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_processAgency_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_lastCheckedDate_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_geoidUsed_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_TYPE_member_t asn_MBR_DataParameters_1[] = { + { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_processMethod_constraint_1, + &asn_PER_memb_processMethod_constr_2, + 0, + "processMethod" + }, + { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_processAgency_constraint_1, + &asn_PER_memb_processAgency_constr_3, + 0, + "processAgency" + }, + { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_lastCheckedDate_constraint_1, + &asn_PER_memb_lastCheckedDate_constr_4, + 0, + "lastCheckedDate" + }, + { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_geoidUsed_constraint_1, + &asn_PER_memb_geoidUsed_constr_5, + 0, + "geoidUsed" + }, +}; +static int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; +static ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { + sizeof(struct DataParameters), + offsetof(struct DataParameters, _asn_ctx), + asn_MAP_DataParameters_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DataParameters_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DataParameters = { + "DataParameters", + "DataParameters", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DataParameters_tags_1, + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + asn_DEF_DataParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DataParameters_1, + 4, /* Elements count */ + &asn_SPC_DataParameters_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Day.c b/src/tmx/Asn_J2735/src/r41/Day.c new file mode 100644 index 000000000..545fb8651 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Day.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Day.h" + +int +Day_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Day_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Day_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Day_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Day_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Day_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Day_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Day_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Day_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Day_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Day_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Day_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Day_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Day_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Day_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Day_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Day_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Day_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Day_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Day_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Day = { + "Day", + "Day", + Day_free, + Day_print, + Day_constraint, + Day_decode_ber, + Day_encode_der, + Day_decode_xer, + Day_encode_xer, + Day_decode_uper, + Day_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Day_tags_1, + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + asn_DEF_Day_tags_1, /* Same as above */ + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + &asn_PER_type_Day_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DayOfWeek.c b/src/tmx/Asn_J2735/src/r41/DayOfWeek.c new file mode 100644 index 000000000..9a4eb85a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DayOfWeek.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DayOfWeek.h" + +int +DayOfWeek_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +DayOfWeek_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +DayOfWeek_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DayOfWeek_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DayOfWeek_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DayOfWeek_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DayOfWeek_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DayOfWeek_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DayOfWeek_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DayOfWeek_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DayOfWeek_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +static asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { + asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + DayOfWeek_free, + DayOfWeek_print, + DayOfWeek_constraint, + DayOfWeek_decode_ber, + DayOfWeek_encode_der, + DayOfWeek_decode_xer, + DayOfWeek_encode_xer, + DayOfWeek_decode_uper, + DayOfWeek_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DayOfWeek_tags_1, + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + &asn_PER_type_DayOfWeek_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DegreesLat.c b/src/tmx/Asn_J2735/src/r41/DegreesLat.c new file mode 100644 index 000000000..0946268c2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DegreesLat.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DegreesLat.h" + +int +DegreesLat_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -90 && value <= 90)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DegreesLat_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DegreesLat_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DegreesLat_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DegreesLat_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DegreesLat_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DegreesLat_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DegreesLat_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DegreesLat_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DegreesLat_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DegreesLat_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DegreesLat_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLat = { + "DegreesLat", + "DegreesLat", + DegreesLat_free, + DegreesLat_print, + DegreesLat_constraint, + DegreesLat_decode_ber, + DegreesLat_encode_der, + DegreesLat_decode_xer, + DegreesLat_encode_xer, + DegreesLat_decode_uper, + DegreesLat_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DegreesLat_tags_1, + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + asn_DEF_DegreesLat_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + &asn_PER_type_DegreesLat_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DegreesLong.c b/src/tmx/Asn_J2735/src/r41/DegreesLong.c new file mode 100644 index 000000000..18e1f4280 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DegreesLong.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DegreesLong.h" + +int +DegreesLong_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180 && value <= 180)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DegreesLong_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DegreesLong_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DegreesLong_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DegreesLong_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DegreesLong_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DegreesLong_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DegreesLong_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DegreesLong_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DegreesLong_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DegreesLong_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DegreesLong_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLong = { + "DegreesLong", + "DegreesLong", + DegreesLong_free, + DegreesLong_print, + DegreesLong_constraint, + DegreesLong_decode_ber, + DegreesLong_encode_der, + DegreesLong_decode_xer, + DegreesLong_encode_xer, + DegreesLong_decode_uper, + DegreesLong_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DegreesLong_tags_1, + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + asn_DEF_DegreesLong_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + &asn_PER_type_DegreesLong_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DeltaAngle.c b/src/tmx/Asn_J2735/src/r41/DeltaAngle.c new file mode 100644 index 000000000..44174e507 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DeltaAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DeltaAngle.h" + +int +DeltaAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -150 && value <= 150)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DeltaAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DeltaAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DeltaAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DeltaAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DeltaAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DeltaAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DeltaAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DeltaAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DeltaAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DeltaAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { + "DeltaAngle", + "DeltaAngle", + DeltaAngle_free, + DeltaAngle_print, + DeltaAngle_constraint, + DeltaAngle_decode_ber, + DeltaAngle_encode_der, + DeltaAngle_decode_xer, + DeltaAngle_encode_xer, + DeltaAngle_decode_uper, + DeltaAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DeltaAngle_tags_1, + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + asn_DEF_DeltaAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + &asn_PER_type_DeltaAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DescriptiveName.c b/src/tmx/Asn_J2735/src/r41/DescriptiveName.c new file mode 100644 index 000000000..528903913 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DescriptiveName.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DescriptiveName.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +DescriptiveName_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 63) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +DescriptiveName_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +DescriptiveName_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DescriptiveName_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DescriptiveName_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DescriptiveName_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DescriptiveName_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DescriptiveName_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DescriptiveName_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DescriptiveName_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DescriptiveName_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { + "DescriptiveName", + "DescriptiveName", + DescriptiveName_free, + DescriptiveName_print, + DescriptiveName_constraint, + DescriptiveName_decode_ber, + DescriptiveName_encode_der, + DescriptiveName_decode_xer, + DescriptiveName_encode_xer, + DescriptiveName_decode_uper, + DescriptiveName_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DescriptiveName_tags_1, + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + asn_DEF_DescriptiveName_tags_1, /* Same as above */ + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + &asn_PER_type_DescriptiveName_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DestinationType.c b/src/tmx/Asn_J2735/src/r41/DestinationType.c new file mode 100644 index 000000000..a578cf453 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DestinationType.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "DestinationType.h" + +static asn_TYPE_member_t asn_MBR_DestinationType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DestinationType, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct DestinationType, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_DestinationType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DestinationType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DestinationType_specs_1 = { + sizeof(struct DestinationType), + offsetof(struct DestinationType, _asn_ctx), + asn_MAP_DestinationType_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_DestinationType = { + "DestinationType", + "DestinationType", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DestinationType_tags_1, + sizeof(asn_DEF_DestinationType_tags_1) + /sizeof(asn_DEF_DestinationType_tags_1[0]), /* 1 */ + asn_DEF_DestinationType_tags_1, /* Same as above */ + sizeof(asn_DEF_DestinationType_tags_1) + /sizeof(asn_DEF_DestinationType_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_DestinationType_1, + 2, /* Elements count */ + &asn_SPC_DestinationType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c b/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c new file mode 100644 index 000000000..976af1c53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DirectionOfUse.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DirectionOfUse.h" + +int +DirectionOfUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +DirectionOfUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +DirectionOfUse_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DirectionOfUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DirectionOfUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DirectionOfUse_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DirectionOfUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DirectionOfUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DirectionOfUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DirectionOfUse_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DirectionOfUse_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { + { 0, 7, "forward" }, + { 1, 7, "reverse" }, + { 2, 4, "both" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { + 2, /* both(2) */ + 0, /* forward(0) */ + 1 /* reverse(1) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { + asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 4, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { + "DirectionOfUse", + "DirectionOfUse", + DirectionOfUse_free, + DirectionOfUse_print, + DirectionOfUse_constraint, + DirectionOfUse_decode_ber, + DirectionOfUse_encode_der, + DirectionOfUse_decode_xer, + DirectionOfUse_encode_xer, + DirectionOfUse_decode_uper, + DirectionOfUse_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DirectionOfUse_tags_1, + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + asn_DEF_DirectionOfUse_tags_1, /* Same as above */ + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + &asn_PER_type_DirectionOfUse_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c new file mode 100644 index 000000000..191cb0707 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DriveAxleLiftAirPressure.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DriveAxleLiftAirPressure.h" + +int +DriveAxleLiftAirPressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DriveAxleLiftAirPressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DriveAxleLiftAirPressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLiftAirPressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DriveAxleLiftAirPressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLiftAirPressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DriveAxleLiftAirPressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLiftAirPressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DriveAxleLiftAirPressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DriveAxleLiftAirPressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { + "DriveAxleLiftAirPressure", + "DriveAxleLiftAirPressure", + DriveAxleLiftAirPressure_free, + DriveAxleLiftAirPressure_print, + DriveAxleLiftAirPressure_constraint, + DriveAxleLiftAirPressure_decode_ber, + DriveAxleLiftAirPressure_encode_der, + DriveAxleLiftAirPressure_decode_xer, + DriveAxleLiftAirPressure_encode_xer, + DriveAxleLiftAirPressure_decode_uper, + DriveAxleLiftAirPressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DriveAxleLiftAirPressure_tags_1, + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + &asn_PER_type_DriveAxleLiftAirPressure_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c new file mode 100644 index 000000000..31a6668e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DriveAxleLocation.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DriveAxleLocation.h" + +int +DriveAxleLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DriveAxleLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DriveAxleLocation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DriveAxleLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DriveAxleLocation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DriveAxleLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DriveAxleLocation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DriveAxleLocation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { + "DriveAxleLocation", + "DriveAxleLocation", + DriveAxleLocation_free, + DriveAxleLocation_print, + DriveAxleLocation_constraint, + DriveAxleLocation_decode_ber, + DriveAxleLocation_encode_der, + DriveAxleLocation_decode_xer, + DriveAxleLocation_encode_xer, + DriveAxleLocation_decode_uper, + DriveAxleLocation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DriveAxleLocation_tags_1, + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + &asn_PER_type_DriveAxleLocation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c new file mode 100644 index 000000000..e2d348f88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DriveAxleLubePressure.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DriveAxleLubePressure.h" + +int +DriveAxleLubePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DriveAxleLubePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DriveAxleLubePressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DriveAxleLubePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLubePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DriveAxleLubePressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLubePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DriveAxleLubePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DriveAxleLubePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DriveAxleLubePressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DriveAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { + "DriveAxleLubePressure", + "DriveAxleLubePressure", + DriveAxleLubePressure_free, + DriveAxleLubePressure_print, + DriveAxleLubePressure_constraint, + DriveAxleLubePressure_decode_ber, + DriveAxleLubePressure_encode_der, + DriveAxleLubePressure_decode_xer, + DriveAxleLubePressure_encode_xer, + DriveAxleLubePressure_decode_uper, + DriveAxleLubePressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DriveAxleLubePressure_tags_1, + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + &asn_PER_type_DriveAxleLubePressure_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c new file mode 100644 index 000000000..446ee2e7f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DriveAxleTemperature.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DriveAxleTemperature.h" + +int +DriveAxleTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40 && value <= 210)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DriveAxleTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DriveAxleTemperature_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DriveAxleTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DriveAxleTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DriveAxleTemperature_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DriveAxleTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DriveAxleTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DriveAxleTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DriveAxleTemperature_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DriveAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { + "DriveAxleTemperature", + "DriveAxleTemperature", + DriveAxleTemperature_free, + DriveAxleTemperature_print, + DriveAxleTemperature_constraint, + DriveAxleTemperature_decode_ber, + DriveAxleTemperature_encode_der, + DriveAxleTemperature_decode_xer, + DriveAxleTemperature_encode_xer, + DriveAxleTemperature_decode_uper, + DriveAxleTemperature_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DriveAxleTemperature_tags_1, + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + &asn_PER_type_DriveAxleTemperature_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c new file mode 100644 index 000000000..814d6948a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetLg.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DrivenLineOffsetLg.h" + +int +DrivenLineOffsetLg_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DrivenLineOffsetLg_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DrivenLineOffsetLg_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DrivenLineOffsetLg_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetLg_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DrivenLineOffsetLg_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetLg_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DrivenLineOffsetLg_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetLg_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DrivenLineOffsetLg_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DrivenLineOffsetLg_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { + "DrivenLineOffsetLg", + "DrivenLineOffsetLg", + DrivenLineOffsetLg_free, + DrivenLineOffsetLg_print, + DrivenLineOffsetLg_constraint, + DrivenLineOffsetLg_decode_ber, + DrivenLineOffsetLg_encode_der, + DrivenLineOffsetLg_decode_xer, + DrivenLineOffsetLg_encode_xer, + DrivenLineOffsetLg_decode_uper, + DrivenLineOffsetLg_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DrivenLineOffsetLg_tags_1, + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + &asn_PER_type_DrivenLineOffsetLg_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c new file mode 100644 index 000000000..66437c787 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DrivenLineOffsetSm.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DrivenLineOffsetSm.h" + +int +DrivenLineOffsetSm_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2047 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DrivenLineOffsetSm_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DrivenLineOffsetSm_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DrivenLineOffsetSm_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetSm_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DrivenLineOffsetSm_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetSm_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DrivenLineOffsetSm_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DrivenLineOffsetSm_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DrivenLineOffsetSm_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DrivenLineOffsetSm_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { + "DrivenLineOffsetSm", + "DrivenLineOffsetSm", + DrivenLineOffsetSm_free, + DrivenLineOffsetSm_print, + DrivenLineOffsetSm_constraint, + DrivenLineOffsetSm_decode_ber, + DrivenLineOffsetSm_encode_der, + DrivenLineOffsetSm_decode_xer, + DrivenLineOffsetSm_encode_xer, + DrivenLineOffsetSm_decode_uper, + DrivenLineOffsetSm_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DrivenLineOffsetSm_tags_1, + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + &asn_PER_type_DrivenLineOffsetSm_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c new file mode 100644 index 000000000..8fbda12f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/DrivingWheelAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DrivingWheelAngle.h" + +int +DrivingWheelAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +DrivingWheelAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +DrivingWheelAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +DrivingWheelAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +DrivingWheelAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +DrivingWheelAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +DrivingWheelAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +DrivingWheelAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +DrivingWheelAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +DrivingWheelAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + DrivingWheelAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { + "DrivingWheelAngle", + "DrivingWheelAngle", + DrivingWheelAngle_free, + DrivingWheelAngle_print, + DrivingWheelAngle_constraint, + DrivingWheelAngle_decode_ber, + DrivingWheelAngle_encode_der, + DrivingWheelAngle_decode_xer, + DrivingWheelAngle_encode_xer, + DrivingWheelAngle_decode_uper, + DrivingWheelAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_DrivingWheelAngle_tags_1, + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + &asn_PER_type_DrivingWheelAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c new file mode 100644 index 000000000..5fe0bacb5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EU-Reg-ConnectionManeuverAssist.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EU-Reg-ConnectionManeuverAssist.h" + +static asn_TYPE_member_t asn_MBR_EU_Reg_ConnectionManeuverAssist_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EU_Reg_ConnectionManeuverAssist, vehicleToLanePositions), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleToLanePositionList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleToLanePositions" + }, + { ATF_POINTER, 1, offsetof(struct EU_Reg_ConnectionManeuverAssist, rsuDistanceFromAnchor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPoint, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rsuDistanceFromAnchor" + }, +}; +static int asn_MAP_EU_Reg_ConnectionManeuverAssist_oms_1[] = { 1 }; +static ber_tlv_tag_t asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EU_Reg_ConnectionManeuverAssist_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_ConnectionManeuverAssist_specs_1 = { + sizeof(struct EU_Reg_ConnectionManeuverAssist), + offsetof(struct EU_Reg_ConnectionManeuverAssist, _asn_ctx), + asn_MAP_EU_Reg_ConnectionManeuverAssist_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_EU_Reg_ConnectionManeuverAssist_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EU_Reg_ConnectionManeuverAssist = { + "EU-Reg-ConnectionManeuverAssist", + "EU-Reg-ConnectionManeuverAssist", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_EU_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EU_Reg_ConnectionManeuverAssist_1, + 2, /* Elements count */ + &asn_SPC_EU_Reg_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c new file mode 100644 index 000000000..927b82500 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EU-Reg-IntersectionState.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EU-Reg-IntersectionState.h" + +static asn_TYPE_member_t asn_MBR_EU_Reg_IntersectionState_1[] = { + { ATF_POINTER, 1, offsetof(struct EU_Reg_IntersectionState, activePrioritizations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "activePrioritizations" + }, +}; +static int asn_MAP_EU_Reg_IntersectionState_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_EU_Reg_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EU_Reg_IntersectionState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_IntersectionState_specs_1 = { + sizeof(struct EU_Reg_IntersectionState), + offsetof(struct EU_Reg_IntersectionState, _asn_ctx), + asn_MAP_EU_Reg_IntersectionState_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_EU_Reg_IntersectionState_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 0, /* Start extensions */ + 2 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EU_Reg_IntersectionState = { + "EU-Reg-IntersectionState", + "EU-Reg-IntersectionState", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EU_Reg_IntersectionState_tags_1, + sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1) + /sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_EU_Reg_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1) + /sizeof(asn_DEF_EU_Reg_IntersectionState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EU_Reg_IntersectionState_1, + 1, /* Elements count */ + &asn_SPC_EU_Reg_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c new file mode 100644 index 000000000..90422e102 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EU-Reg-MapData.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EU-Reg-MapData.h" + +static asn_TYPE_member_t asn_MBR_EU_Reg_MapData_1[] = { + { ATF_POINTER, 1, offsetof(struct EU_Reg_MapData, signalHeadLocations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalHeadLocationList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "signalHeadLocations" + }, +}; +static int asn_MAP_EU_Reg_MapData_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_EU_Reg_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EU_Reg_MapData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_MapData_specs_1 = { + sizeof(struct EU_Reg_MapData), + offsetof(struct EU_Reg_MapData, _asn_ctx), + asn_MAP_EU_Reg_MapData_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_EU_Reg_MapData_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 0, /* Start extensions */ + 2 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EU_Reg_MapData = { + "EU-Reg-MapData", + "EU-Reg-MapData", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EU_Reg_MapData_tags_1, + sizeof(asn_DEF_EU_Reg_MapData_tags_1) + /sizeof(asn_DEF_EU_Reg_MapData_tags_1[0]), /* 1 */ + asn_DEF_EU_Reg_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_EU_Reg_MapData_tags_1) + /sizeof(asn_DEF_EU_Reg_MapData_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EU_Reg_MapData_1, + 1, /* Elements count */ + &asn_SPC_EU_Reg_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c new file mode 100644 index 000000000..583316ac2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EU-Reg-Position3D.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EU-Reg-Position3D.h" + +static asn_TYPE_member_t asn_MBR_EU_Reg_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EU_Reg_Position3D, altitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Altitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "altitude" + }, +}; +static ber_tlv_tag_t asn_DEF_EU_Reg_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EU_Reg_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_Position3D_specs_1 = { + sizeof(struct EU_Reg_Position3D), + offsetof(struct EU_Reg_Position3D, _asn_ctx), + asn_MAP_EU_Reg_Position3D_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 0, /* Start extensions */ + 2 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EU_Reg_Position3D = { + "EU-Reg-Position3D", + "EU-Reg-Position3D", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EU_Reg_Position3D_tags_1, + sizeof(asn_DEF_EU_Reg_Position3D_tags_1) + /sizeof(asn_DEF_EU_Reg_Position3D_tags_1[0]), /* 1 */ + asn_DEF_EU_Reg_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_EU_Reg_Position3D_tags_1) + /sizeof(asn_DEF_EU_Reg_Position3D_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EU_Reg_Position3D_1, + 1, /* Elements count */ + &asn_SPC_EU_Reg_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c new file mode 100644 index 000000000..25762e7a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EU-Reg-RestrictionUserType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EU-Reg-RestrictionUserType.h" + +static asn_TYPE_member_t asn_MBR_EU_Reg_RestrictionUserType_1[] = { + { ATF_POINTER, 1, offsetof(struct EU_Reg_RestrictionUserType, emission), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmissionType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "emission" + }, +}; +static int asn_MAP_EU_Reg_RestrictionUserType_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_EU_Reg_RestrictionUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EU_Reg_RestrictionUserType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EU_Reg_RestrictionUserType_specs_1 = { + sizeof(struct EU_Reg_RestrictionUserType), + offsetof(struct EU_Reg_RestrictionUserType, _asn_ctx), + asn_MAP_EU_Reg_RestrictionUserType_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_EU_Reg_RestrictionUserType_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 0, /* Start extensions */ + 2 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EU_Reg_RestrictionUserType = { + "EU-Reg-RestrictionUserType", + "EU-Reg-RestrictionUserType", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EU_Reg_RestrictionUserType_tags_1, + sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1) + /sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1[0]), /* 1 */ + asn_DEF_EU_Reg_RestrictionUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1) + /sizeof(asn_DEF_EU_Reg_RestrictionUserType_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EU_Reg_RestrictionUserType_1, + 1, /* Elements count */ + &asn_SPC_EU_Reg_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Elevation.c b/src/tmx/Asn_J2735/src/r41/Elevation.c new file mode 100644 index 000000000..804266a0a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Elevation.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Elevation.h" + +int +Elevation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +Elevation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +Elevation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Elevation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Elevation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Elevation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Elevation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Elevation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Elevation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Elevation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Elevation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Elevation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Elevation_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Elevation = { + "Elevation", + "Elevation", + Elevation_free, + Elevation_print, + Elevation_constraint, + Elevation_decode_ber, + Elevation_encode_der, + Elevation_decode_xer, + Elevation_encode_xer, + Elevation_decode_uper, + Elevation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Elevation_tags_1, + sizeof(asn_DEF_Elevation_tags_1) + /sizeof(asn_DEF_Elevation_tags_1[0]), /* 1 */ + asn_DEF_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_Elevation_tags_1) + /sizeof(asn_DEF_Elevation_tags_1[0]), /* 1 */ + &asn_PER_type_Elevation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Elevation2.c b/src/tmx/Asn_J2735/src/r41/Elevation2.c new file mode 100644 index 000000000..0ee3cdc9c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Elevation2.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Elevation2.h" + +int +Elevation2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096 && value <= 61439)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Elevation2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Elevation2_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Elevation2_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Elevation2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Elevation2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Elevation2_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Elevation2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Elevation2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Elevation2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Elevation2_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Elevation2_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Elevation2_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Elevation2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Elevation2 = { + "Elevation2", + "Elevation2", + Elevation2_free, + Elevation2_print, + Elevation2_constraint, + Elevation2_decode_ber, + Elevation2_encode_der, + Elevation2_decode_xer, + Elevation2_encode_xer, + Elevation2_decode_uper, + Elevation2_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Elevation2_tags_1, + sizeof(asn_DEF_Elevation2_tags_1) + /sizeof(asn_DEF_Elevation2_tags_1[0]), /* 1 */ + asn_DEF_Elevation2_tags_1, /* Same as above */ + sizeof(asn_DEF_Elevation2_tags_1) + /sizeof(asn_DEF_Elevation2_tags_1[0]), /* 1 */ + &asn_PER_type_Elevation2_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c b/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c new file mode 100644 index 000000000..03a90d95c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ElevationConfidence.c @@ -0,0 +1,175 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ElevationConfidence.h" + +int +ElevationConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +ElevationConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +ElevationConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ElevationConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ElevationConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ElevationConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ElevationConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ElevationConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ElevationConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ElevationConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ElevationConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "elev-500-00" }, + { 2, 11, "elev-200-00" }, + { 3, 11, "elev-100-00" }, + { 4, 11, "elev-050-00" }, + { 5, 11, "elev-020-00" }, + { 6, 11, "elev-010-00" }, + { 7, 11, "elev-005-00" }, + { 8, 11, "elev-002-00" }, + { 9, 11, "elev-001-00" }, + { 10, 11, "elev-000-50" }, + { 11, 11, "elev-000-20" }, + { 12, 11, "elev-000-10" }, + { 13, 11, "elev-000-05" }, + { 14, 11, "elev-000-02" }, + { 15, 11, "elev-000-01" } +}; +static unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { + 15, /* elev-000-01(15) */ + 14, /* elev-000-02(14) */ + 13, /* elev-000-05(13) */ + 12, /* elev-000-10(12) */ + 11, /* elev-000-20(11) */ + 10, /* elev-000-50(10) */ + 9, /* elev-001-00(9) */ + 8, /* elev-002-00(8) */ + 7, /* elev-005-00(7) */ + 6, /* elev-010-00(6) */ + 5, /* elev-020-00(5) */ + 4, /* elev-050-00(4) */ + 3, /* elev-100-00(3) */ + 2, /* elev-200-00(2) */ + 1, /* elev-500-00(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { + asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { + "ElevationConfidence", + "ElevationConfidence", + ElevationConfidence_free, + ElevationConfidence_print, + ElevationConfidence_constraint, + ElevationConfidence_decode_ber, + ElevationConfidence_encode_der, + ElevationConfidence_decode_xer, + ElevationConfidence_encode_xer, + ElevationConfidence_decode_uper, + ElevationConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ElevationConfidence_tags_1, + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ElevationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_ElevationConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c b/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c new file mode 100644 index 000000000..b79ef9f85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EmergencyDetails.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EmergencyDetails.h" + +int +EmergencyDetails_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EmergencyDetails_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EmergencyDetails_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EmergencyDetails_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EmergencyDetails_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EmergencyDetails_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EmergencyDetails_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EmergencyDetails_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EmergencyDetails_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EmergencyDetails_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EmergencyDetails_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EmergencyDetails_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { + "EmergencyDetails", + "EmergencyDetails", + EmergencyDetails_free, + EmergencyDetails_print, + EmergencyDetails_constraint, + EmergencyDetails_decode_ber, + EmergencyDetails_encode_der, + EmergencyDetails_decode_xer, + EmergencyDetails_encode_xer, + EmergencyDetails_decode_uper, + EmergencyDetails_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EmergencyDetails_tags_1, + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + asn_DEF_EmergencyDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + &asn_PER_type_EmergencyDetails_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c new file mode 100644 index 000000000..9f8306855 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EmergencyVehicleAlert.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EmergencyVehicleAlert.h" + +static asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSideAlert, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rsaMsg" + }, + { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, responseType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "responseType" + }, + { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, details), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "details" + }, + { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, mass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "mass" + }, + { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, basicType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "basicType" + }, + { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleType" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "responseEquip" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, responderType), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "responderType" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, crc), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; +static ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { + sizeof(struct EmergencyVehicleAlert), + offsetof(struct EmergencyVehicleAlert, _asn_ctx), + asn_MAP_EmergencyVehicleAlert_tag2el_1, + 11, /* Count of tags in the map */ + asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* Start extensions */ + 12 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { + "EmergencyVehicleAlert", + "EmergencyVehicleAlert", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EmergencyVehicleAlert_tags_1, + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_EmergencyVehicleAlert_1, + 11, /* Elements count */ + &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EmissionType.c b/src/tmx/Asn_J2735/src/r41/EmissionType.c new file mode 100644 index 000000000..09035f577 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EmissionType.c @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EmissionType.h" + +int +EmissionType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +EmissionType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +EmissionType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EmissionType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EmissionType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EmissionType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EmissionType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EmissionType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EmissionType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EmissionType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EmissionType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EmissionType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EmissionType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { + { 0, 5, "typeA" }, + { 1, 5, "typeB" }, + { 2, 5, "typeC" }, + { 3, 5, "typeD" }, + { 4, 5, "typeE" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_EmissionType_enum2value_1[] = { + 0, /* typeA(0) */ + 1, /* typeB(1) */ + 2, /* typeC(2) */ + 3, /* typeD(3) */ + 4 /* typeE(4) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { + asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EmissionType = { + "EmissionType", + "EmissionType", + EmissionType_free, + EmissionType_print, + EmissionType_constraint, + EmissionType_decode_ber, + EmissionType_encode_der, + EmissionType_decode_xer, + EmissionType_encode_xer, + EmissionType_decode_uper, + EmissionType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EmissionType_tags_1, + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + asn_DEF_EmissionType_tags_1, /* Same as above */ + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + &asn_PER_type_EmissionType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EmissionType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c b/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c new file mode 100644 index 000000000..69eef2088 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EnabledLaneList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EnabledLaneList.h" + +static asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { + sizeof(struct EnabledLaneList), + offsetof(struct EnabledLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { + "EnabledLaneList", + "EnabledLaneList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EnabledLaneList_tags_1, + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + asn_DEF_EnabledLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + &asn_PER_type_EnabledLaneList_constr_1, + asn_MBR_EnabledLaneList_1, + 1, /* Single element */ + &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c b/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c new file mode 100644 index 000000000..a539267d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EssMobileFriction.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EssMobileFriction.h" + +int +EssMobileFriction_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 101)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EssMobileFriction_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EssMobileFriction_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EssMobileFriction_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EssMobileFriction_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EssMobileFriction_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EssMobileFriction_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EssMobileFriction_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EssMobileFriction_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EssMobileFriction_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EssMobileFriction_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { + "EssMobileFriction", + "EssMobileFriction", + EssMobileFriction_free, + EssMobileFriction_print, + EssMobileFriction_constraint, + EssMobileFriction_decode_ber, + EssMobileFriction_encode_der, + EssMobileFriction_decode_xer, + EssMobileFriction_encode_xer, + EssMobileFriction_decode_uper, + EssMobileFriction_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EssMobileFriction_tags_1, + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + asn_DEF_EssMobileFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + &asn_PER_type_EssMobileFriction_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c b/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c new file mode 100644 index 000000000..ef1aa5874 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EssPrecipRate.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EssPrecipRate.h" + +int +EssPrecipRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EssPrecipRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EssPrecipRate_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EssPrecipRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EssPrecipRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EssPrecipRate_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EssPrecipRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EssPrecipRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EssPrecipRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EssPrecipRate_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EssPrecipRate_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { + "EssPrecipRate", + "EssPrecipRate", + EssPrecipRate_free, + EssPrecipRate_print, + EssPrecipRate_constraint, + EssPrecipRate_decode_ber, + EssPrecipRate_encode_der, + EssPrecipRate_decode_xer, + EssPrecipRate_encode_xer, + EssPrecipRate_decode_uper, + EssPrecipRate_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EssPrecipRate_tags_1, + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipRate_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + &asn_PER_type_EssPrecipRate_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c new file mode 100644 index 000000000..6c7cfbb35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EssPrecipSituation.c @@ -0,0 +1,173 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EssPrecipSituation.h" + +int +EssPrecipSituation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +EssPrecipSituation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +EssPrecipSituation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EssPrecipSituation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EssPrecipSituation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EssPrecipSituation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EssPrecipSituation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EssPrecipSituation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EssPrecipSituation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EssPrecipSituation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EssPrecipSituation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { + { 1, 5, "other" }, + { 2, 7, "unknown" }, + { 3, 15, "noPrecipitation" }, + { 4, 18, "unidentifiedSlight" }, + { 5, 20, "unidentifiedModerate" }, + { 6, 17, "unidentifiedHeavy" }, + { 7, 10, "snowSlight" }, + { 8, 12, "snowModerate" }, + { 9, 9, "snowHeavy" }, + { 10, 10, "rainSlight" }, + { 11, 12, "rainModerate" }, + { 12, 9, "rainHeavy" }, + { 13, 25, "frozenPrecipitationSlight" }, + { 14, 27, "frozenPrecipitationModerate" }, + { 15, 24, "frozenPrecipitationHeavy" } +}; +static unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { + 14, /* frozenPrecipitationHeavy(15) */ + 13, /* frozenPrecipitationModerate(14) */ + 12, /* frozenPrecipitationSlight(13) */ + 2, /* noPrecipitation(3) */ + 0, /* other(1) */ + 11, /* rainHeavy(12) */ + 10, /* rainModerate(11) */ + 9, /* rainSlight(10) */ + 8, /* snowHeavy(9) */ + 7, /* snowModerate(8) */ + 6, /* snowSlight(7) */ + 5, /* unidentifiedHeavy(6) */ + 4, /* unidentifiedModerate(5) */ + 3, /* unidentifiedSlight(4) */ + 1 /* unknown(2) */ +}; +static asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { + asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ + 15, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { + "EssPrecipSituation", + "EssPrecipSituation", + EssPrecipSituation_free, + EssPrecipSituation_print, + EssPrecipSituation_constraint, + EssPrecipSituation_decode_ber, + EssPrecipSituation_encode_der, + EssPrecipSituation_decode_xer, + EssPrecipSituation_encode_xer, + EssPrecipSituation_decode_uper, + EssPrecipSituation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EssPrecipSituation_tags_1, + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + &asn_PER_type_EssPrecipSituation_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c new file mode 100644 index 000000000..834c0bf35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EssPrecipYesNo.c @@ -0,0 +1,149 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EssPrecipYesNo.h" + +int +EssPrecipYesNo_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +EssPrecipYesNo_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +EssPrecipYesNo_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EssPrecipYesNo_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EssPrecipYesNo_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EssPrecipYesNo_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EssPrecipYesNo_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EssPrecipYesNo_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EssPrecipYesNo_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EssPrecipYesNo_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EssPrecipYesNo_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { + { 1, 6, "precip" }, + { 2, 8, "noPrecip" }, + { 3, 5, "error" } +}; +static unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { + 2, /* error(3) */ + 1, /* noPrecip(2) */ + 0 /* precip(1) */ +}; +static asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { + asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { + "EssPrecipYesNo", + "EssPrecipYesNo", + EssPrecipYesNo_free, + EssPrecipYesNo_print, + EssPrecipYesNo_constraint, + EssPrecipYesNo_decode_ber, + EssPrecipYesNo_encode_der, + EssPrecipYesNo_decode_xer, + EssPrecipYesNo_encode_xer, + EssPrecipYesNo_decode_uper, + EssPrecipYesNo_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EssPrecipYesNo_tags_1, + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + &asn_PER_type_EssPrecipYesNo_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c new file mode 100644 index 000000000..f7bb0733e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EssSolarRadiation.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EssSolarRadiation.h" + +int +EssSolarRadiation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EssSolarRadiation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EssSolarRadiation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EssSolarRadiation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EssSolarRadiation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EssSolarRadiation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EssSolarRadiation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EssSolarRadiation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EssSolarRadiation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EssSolarRadiation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EssSolarRadiation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { + "EssSolarRadiation", + "EssSolarRadiation", + EssSolarRadiation_free, + EssSolarRadiation_print, + EssSolarRadiation_constraint, + EssSolarRadiation_decode_ber, + EssSolarRadiation_encode_der, + EssSolarRadiation_decode_xer, + EssSolarRadiation_encode_xer, + EssSolarRadiation_decode_uper, + EssSolarRadiation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EssSolarRadiation_tags_1, + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + &asn_PER_type_EssSolarRadiation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c b/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c new file mode 100644 index 000000000..ee90e0acc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EstimatedTimeType.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "EstimatedTimeType.h" + +int +EstimatedTimeType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 3000000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EstimatedTimeType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EstimatedTimeType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EstimatedTimeType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EstimatedTimeType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EstimatedTimeType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EstimatedTimeType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EstimatedTimeType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EstimatedTimeType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EstimatedTimeType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EstimatedTimeType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EstimatedTimeType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 22, -1, 0, 3000000 } /* (0..3000000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EstimatedTimeType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EstimatedTimeType = { + "EstimatedTimeType", + "EstimatedTimeType", + EstimatedTimeType_free, + EstimatedTimeType_print, + EstimatedTimeType_constraint, + EstimatedTimeType_decode_ber, + EstimatedTimeType_encode_der, + EstimatedTimeType_decode_xer, + EstimatedTimeType_encode_xer, + EstimatedTimeType_decode_uper, + EstimatedTimeType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EstimatedTimeType_tags_1, + sizeof(asn_DEF_EstimatedTimeType_tags_1) + /sizeof(asn_DEF_EstimatedTimeType_tags_1[0]), /* 1 */ + asn_DEF_EstimatedTimeType_tags_1, /* Same as above */ + sizeof(asn_DEF_EstimatedTimeType_tags_1) + /sizeof(asn_DEF_EstimatedTimeType_tags_1[0]), /* 1 */ + &asn_PER_type_EstimatedTimeType_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/EventFlags.c b/src/tmx/Asn_J2735/src/r41/EventFlags.c new file mode 100644 index 000000000..91ae574cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/EventFlags.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "EventFlags.h" + +int +EventFlags_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 8192)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +EventFlags_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +EventFlags_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + EventFlags_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +EventFlags_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +EventFlags_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +EventFlags_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +EventFlags_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +EventFlags_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +EventFlags_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +EventFlags_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + EventFlags_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_EventFlags_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 8192 } /* (0..8192) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_EventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EventFlags = { + "EventFlags", + "EventFlags", + EventFlags_free, + EventFlags_print, + EventFlags_constraint, + EventFlags_decode_ber, + EventFlags_encode_der, + EventFlags_decode_xer, + EventFlags_encode_xer, + EventFlags_decode_uper, + EventFlags_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_EventFlags_tags_1, + sizeof(asn_DEF_EventFlags_tags_1) + /sizeof(asn_DEF_EventFlags_tags_1[0]), /* 1 */ + asn_DEF_EventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_EventFlags_tags_1) + /sizeof(asn_DEF_EventFlags_tags_1[0]), /* 1 */ + &asn_PER_type_EventFlags_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ExitService.c b/src/tmx/Asn_J2735/src/r41/ExitService.c new file mode 100644 index 000000000..221381ae8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ExitService.c @@ -0,0 +1,218 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ExitService.h" + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_type_item_es_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_ExitService_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_es_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct item_es, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct item_es, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_text_constraint_3, + &asn_PER_memb_text_constr_5, + 0, + "text" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_item_es_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_es_specs_3 = { + sizeof(struct item_es), + offsetof(struct item_es, _asn_ctx), + offsetof(struct item_es, present), + sizeof(((struct item_es *)0)->present), + asn_MAP_item_es_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_es_3 = { + "item-es", + "item-es", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_item_es_constr_3, + asn_MBR_item_es_3, + 2, /* Elements count */ + &asn_SPC_item_es_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item_es), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_es_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "item-es" + }, +}; +static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-es */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ExitService__Member), + offsetof(struct ExitService__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ExitService_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { + sizeof(struct ExitService), + offsetof(struct ExitService, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ExitService = { + "ExitService", + "ExitService", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ExitService_tags_1, + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + asn_DEF_ExitService_tags_1, /* Same as above */ + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + &asn_PER_type_ExitService_constr_1, + asn_MBR_ExitService_1, + 1, /* Single element */ + &asn_SPC_ExitService_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Extent.c b/src/tmx/Asn_J2735/src/r41/Extent.c new file mode 100644 index 000000000..6a2a39fdc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Extent.c @@ -0,0 +1,167 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Extent.h" + +int +Extent_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +Extent_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +Extent_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Extent_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Extent_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Extent_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Extent_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Extent_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Extent_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Extent_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Extent_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Extent_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Extent_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Extent_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Extent_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Extent_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Extent_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Extent_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Extent_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 11 } /* (0..11) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { + { 0, 16, "useInstantlyOnly" }, + { 1, 13, "useFor3meters" }, + { 2, 14, "useFor10meters" }, + { 3, 14, "useFor50meters" }, + { 4, 15, "useFor100meters" }, + { 5, 15, "useFor500meters" }, + { 6, 16, "useFor1000meters" }, + { 7, 16, "useFor5000meters" }, + { 8, 17, "useFor10000meters" }, + { 9, 17, "useFor50000meters" }, + { 10, 18, "useFor100000meters" }, + { 127, 7, "forever" } +}; +static unsigned int asn_MAP_Extent_enum2value_1[] = { + 11, /* forever(127) */ + 10, /* useFor100000meters(10) */ + 8, /* useFor10000meters(8) */ + 6, /* useFor1000meters(6) */ + 4, /* useFor100meters(4) */ + 2, /* useFor10meters(2) */ + 1, /* useFor3meters(1) */ + 9, /* useFor50000meters(9) */ + 7, /* useFor5000meters(7) */ + 5, /* useFor500meters(5) */ + 3, /* useFor50meters(3) */ + 0 /* useInstantlyOnly(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { + asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Extent = { + "Extent", + "Extent", + Extent_free, + Extent_print, + Extent_constraint, + Extent_decode_ber, + Extent_encode_der, + Extent_decode_xer, + Extent_encode_xer, + Extent_decode_uper, + Extent_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Extent_tags_1, + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + asn_DEF_Extent_tags_1, /* Same as above */ + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + &asn_PER_type_Extent_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Extent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ExteriorLights.c b/src/tmx/Asn_J2735/src/r41/ExteriorLights.c new file mode 100644 index 000000000..6b3250b95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ExteriorLights.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ExteriorLights.h" + +int +ExteriorLights_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 256)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ExteriorLights_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ExteriorLights_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ExteriorLights_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ExteriorLights_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ExteriorLights_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ExteriorLights_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ExteriorLights_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ExteriorLights_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ExteriorLights_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ExteriorLights_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, 0, 256 } /* (0..256) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { + "ExteriorLights", + "ExteriorLights", + ExteriorLights_free, + ExteriorLights_print, + ExteriorLights_constraint, + ExteriorLights_decode_ber, + ExteriorLights_encode_der, + ExteriorLights_decode_xer, + ExteriorLights_encode_xer, + ExteriorLights_decode_uper, + ExteriorLights_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ExteriorLights_tags_1, + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + asn_DEF_ExteriorLights_tags_1, /* Same as above */ + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + &asn_PER_type_ExteriorLights_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/FullPositionVector.c b/src/tmx/Asn_J2735/src/r41/FullPositionVector.c new file mode 100644 index 000000000..09a51566c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/FullPositionVector.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "FullPositionVector.h" + +static asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { + { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "utcTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, + { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Elevation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "elevation" + }, + { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "heading" + }, + { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, + { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posAccuracy" + }, + { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posConfidence" + }, + { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedConfidence" + }, +}; +static int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; +static ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { + sizeof(struct FullPositionVector), + offsetof(struct FullPositionVector, _asn_ctx), + asn_MAP_FullPositionVector_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_FullPositionVector_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* Start extensions */ + 11 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { + "FullPositionVector", + "FullPositionVector", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_FullPositionVector_tags_1, + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + asn_DEF_FullPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_FullPositionVector_1, + 10, /* Elements count */ + &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c b/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c new file mode 100644 index 000000000..99c4301f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/FurtherInfoID.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "FurtherInfoID.h" + +int +FurtherInfoID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +FurtherInfoID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +FurtherInfoID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +FurtherInfoID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +FurtherInfoID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +FurtherInfoID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +FurtherInfoID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +FurtherInfoID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +FurtherInfoID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +FurtherInfoID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + FurtherInfoID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { + "FurtherInfoID", + "FurtherInfoID", + FurtherInfoID_free, + FurtherInfoID_print, + FurtherInfoID_constraint, + FurtherInfoID_decode_ber, + FurtherInfoID_encode_der, + FurtherInfoID_decode_xer, + FurtherInfoID_encode_xer, + FurtherInfoID_decode_uper, + FurtherInfoID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_FurtherInfoID_tags_1, + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + asn_DEF_FurtherInfoID_tags_1, /* Same as above */ + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + &asn_PER_type_FurtherInfoID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/GPSstatus.c b/src/tmx/Asn_J2735/src/r41/GPSstatus.c new file mode 100644 index 000000000..f72e8b695 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/GPSstatus.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "GPSstatus.h" + +int +GPSstatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +GPSstatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +GPSstatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + GPSstatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +GPSstatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +GPSstatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +GPSstatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +GPSstatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +GPSstatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +GPSstatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +GPSstatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + GPSstatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_GPSstatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GPSstatus = { + "GPSstatus", + "GPSstatus", + GPSstatus_free, + GPSstatus_print, + GPSstatus_constraint, + GPSstatus_decode_ber, + GPSstatus_encode_der, + GPSstatus_decode_xer, + GPSstatus_encode_xer, + GPSstatus_decode_uper, + GPSstatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_GPSstatus_tags_1, + sizeof(asn_DEF_GPSstatus_tags_1) + /sizeof(asn_DEF_GPSstatus_tags_1[0]), /* 1 */ + asn_DEF_GPSstatus_tags_1, /* Same as above */ + sizeof(asn_DEF_GPSstatus_tags_1) + /sizeof(asn_DEF_GPSstatus_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/GenericLane.c b/src/tmx/Asn_J2735/src/r41/GenericLane.c new file mode 100644 index 000000000..91857829c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/GenericLane.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "GenericLane.h" + +static asn_TYPE_member_t asn_MBR_GenericLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneID" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "ingressApproach" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "egressApproach" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneAttributes" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maneuvers" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeList2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nodeList" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectsToList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "connectsTo" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OverlayLaneList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "overlays" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalGenericLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; +static ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { + sizeof(struct GenericLane), + offsetof(struct GenericLane, _asn_ctx), + asn_MAP_GenericLane_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_GenericLane_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 9, /* Start extensions */ + 11 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericLane = { + "GenericLane", + "GenericLane", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_GenericLane_tags_1, + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + asn_DEF_GenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_GenericLane_1, + 10, /* Elements count */ + &asn_SPC_GenericLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/GenericSignage.c b/src/tmx/Asn_J2735/src/r41/GenericSignage.c new file mode 100644 index 000000000..e6100577b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/GenericSignage.c @@ -0,0 +1,218 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "GenericSignage.h" + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_type_item_gs_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_gs_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct item_gs, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct item_gs, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_text_constraint_3, + &asn_PER_memb_text_constr_5, + 0, + "text" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_item_gs_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_gs_specs_3 = { + sizeof(struct item_gs), + offsetof(struct item_gs, _asn_ctx), + offsetof(struct item_gs, present), + sizeof(((struct item_gs *)0)->present), + asn_MAP_item_gs_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_gs_3 = { + "item-gs", + "item-gs", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_item_gs_constr_3, + asn_MBR_item_gs_3, + 2, /* Elements count */ + &asn_SPC_item_gs_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item_gs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_gs_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "item-gs" + }, +}; +static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-gs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct GenericSignage__Member), + offsetof(struct GenericSignage__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { + sizeof(struct GenericSignage), + offsetof(struct GenericSignage, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericSignage = { + "GenericSignage", + "GenericSignage", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_GenericSignage_tags_1, + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + asn_DEF_GenericSignage_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + &asn_PER_type_GenericSignage_constr_1, + asn_MBR_GenericSignage_1, + 1, /* Single element */ + &asn_SPC_GenericSignage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Heading.c b/src/tmx/Asn_J2735/src/r41/Heading.c new file mode 100644 index 000000000..37d108eb8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Heading.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Heading.h" + +int +Heading_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Heading_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Heading_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Heading_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Heading_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Heading_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Heading_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Heading_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Heading_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Heading_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Heading_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Heading_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Heading_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Heading_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Heading_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Heading_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Heading_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Heading_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Heading_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Heading = { + "Heading", + "Heading", + Heading_free, + Heading_print, + Heading_constraint, + Heading_decode_ber, + Heading_encode_der, + Heading_decode_xer, + Heading_encode_xer, + Heading_decode_uper, + Heading_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Heading_tags_1, + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + asn_DEF_Heading_tags_1, /* Same as above */ + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + &asn_PER_type_Heading_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c b/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c new file mode 100644 index 000000000..92d2bdb51 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/HeadingConfidence.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "HeadingConfidence.h" + +int +HeadingConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +HeadingConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +HeadingConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +HeadingConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +HeadingConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +HeadingConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +HeadingConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +HeadingConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +HeadingConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +HeadingConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + HeadingConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec45deg" }, + { 2, 9, "prec10deg" }, + { 3, 9, "prec05deg" }, + { 4, 9, "prec01deg" }, + { 5, 10, "prec0-1deg" }, + { 6, 11, "prec0-05deg" }, + { 7, 11, "prec0-01deg" } +}; +static unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { + 7, /* prec0-01deg(7) */ + 6, /* prec0-05deg(6) */ + 5, /* prec0-1deg(5) */ + 4, /* prec01deg(4) */ + 3, /* prec05deg(3) */ + 2, /* prec10deg(2) */ + 1, /* prec45deg(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { + asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { + "HeadingConfidence", + "HeadingConfidence", + HeadingConfidence_free, + HeadingConfidence_print, + HeadingConfidence_constraint, + HeadingConfidence_decode_ber, + HeadingConfidence_encode_der, + HeadingConfidence_decode_xer, + HeadingConfidence_encode_xer, + HeadingConfidence_decode_uper, + HeadingConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_HeadingConfidence_tags_1, + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + asn_DEF_HeadingConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_HeadingConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/HeadingSlice.c b/src/tmx/Asn_J2735/src/r41/HeadingSlice.c new file mode 100644 index 000000000..8bddc4afb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/HeadingSlice.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "HeadingSlice.h" + +int +HeadingSlice_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +HeadingSlice_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +HeadingSlice_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +HeadingSlice_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +HeadingSlice_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +HeadingSlice_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +HeadingSlice_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +HeadingSlice_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +HeadingSlice_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +HeadingSlice_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + HeadingSlice_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { + "HeadingSlice", + "HeadingSlice", + HeadingSlice_free, + HeadingSlice_print, + HeadingSlice_constraint, + HeadingSlice_decode_ber, + HeadingSlice_encode_der, + HeadingSlice_decode_xer, + HeadingSlice_encode_xer, + HeadingSlice_decode_uper, + HeadingSlice_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_HeadingSlice_tags_1, + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + asn_DEF_HeadingSlice_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + &asn_PER_type_HeadingSlice_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Holiday.c b/src/tmx/Asn_J2735/src/r41/Holiday.c new file mode 100644 index 000000000..50df1f8b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Holiday.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Holiday.h" + +int +Holiday_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +Holiday_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +Holiday_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Holiday_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Holiday_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Holiday_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Holiday_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Holiday_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Holiday_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Holiday_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Holiday_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Holiday_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Holiday_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { + { 0, 7, "weekday" }, + { 1, 7, "holiday" } +}; +static unsigned int asn_MAP_Holiday_enum2value_1[] = { + 1, /* holiday(1) */ + 0 /* weekday(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { + asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Holiday = { + "Holiday", + "Holiday", + Holiday_free, + Holiday_print, + Holiday_constraint, + Holiday_decode_ber, + Holiday_encode_der, + Holiday_decode_xer, + Holiday_encode_xer, + Holiday_decode_uper, + Holiday_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Holiday_tags_1, + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + asn_DEF_Holiday_tags_1, /* Same as above */ + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + &asn_PER_type_Holiday_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Holiday_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Hour.c b/src/tmx/Asn_J2735/src/r41/Hour.c new file mode 100644 index 000000000..cc9dd2e21 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Hour.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Hour.h" + +int +Hour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Hour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Hour_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Hour_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Hour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Hour_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Hour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Hour_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Hour_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Hour_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Hour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Hour_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Hour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Hour_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Hour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Hour_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Hour_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Hour_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Hour_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Hour = { + "Hour", + "Hour", + Hour_free, + Hour_print, + Hour_constraint, + Hour_decode_ber, + Hour_encode_der, + Hour_decode_xer, + Hour_encode_xer, + Hour_decode_uper, + Hour_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Hour_tags_1, + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + asn_DEF_Hour_tags_1, /* Same as above */ + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + &asn_PER_type_Hour_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c b/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c new file mode 100644 index 000000000..f0d7631d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/HumanPropelledType.c @@ -0,0 +1,157 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "HumanPropelledType.h" + +int +HumanPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +HumanPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +HumanPropelledType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +HumanPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +HumanPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +HumanPropelledType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +HumanPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +HumanPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +HumanPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +HumanPropelledType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + HumanPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 6, "onFoot" }, + { 3, 10, "skateboard" }, + { 4, 17, "pushOrKickScooter" }, + { 5, 10, "wheelchair" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { + 2, /* onFoot(2) */ + 1, /* otherTypes(1) */ + 4, /* pushOrKickScooter(4) */ + 3, /* skateboard(3) */ + 0, /* unavailable(0) */ + 5 /* wheelchair(5) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { + asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { + "HumanPropelledType", + "HumanPropelledType", + HumanPropelledType_free, + HumanPropelledType_print, + HumanPropelledType_constraint, + HumanPropelledType_decode_ber, + HumanPropelledType_encode_der, + HumanPropelledType_decode_xer, + HumanPropelledType_encode_xer, + HumanPropelledType_decode_uper, + HumanPropelledType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_HumanPropelledType_tags_1, + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + asn_DEF_HumanPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + &asn_PER_type_HumanPropelledType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IA5String.c b/src/tmx/Asn_J2735/src/r41/IA5String.c new file mode 100644 index 000000000..02ecd3ee7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IA5String.c @@ -0,0 +1,77 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * IA5String basic type description. + */ +static ber_tlv_tag_t asn_DEF_IA5String_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +static asn_per_constraints_t asn_DEF_IA5String_constraints = { + { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ + 0, 0 +}; +asn_TYPE_descriptor_t asn_DEF_IA5String = { + "IA5String", + "IA5String", + OCTET_STRING_free, + OCTET_STRING_print_utf8, /* ASCII subset */ + IA5String_constraint, /* Constraint on the alphabet */ + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]) - 1, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]), + &asn_DEF_IA5String_constraints, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +IA5String_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + + if(st && st->buf) { + uint8_t *buf = st->buf; + uint8_t *end = buf + st->size; + /* + * IA5String is generally equivalent to 7bit ASCII. + * ISO/ITU-T T.50, 1963. + */ + for(; buf < end; buf++) { + if(*buf > 0x7F) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value byte %ld out of range: " + "%d > 127 (%s:%d)", + td->name, + (long)((buf - st->buf) + 1), + *buf, + __FILE__, __LINE__); + return -1; + } + } + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/r41/INTEGER.c b/src/tmx/Asn_J2735/src/r41/INTEGER.c new file mode 100644 index 000000000..38ddb60bd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/INTEGER.c @@ -0,0 +1,1023 @@ +/*- + * Copyright (c) 2003-2014 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* Encoder and decoder of a primitive type */ +#include + +/* + * INTEGER basic type description. + */ +static ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_INTEGER = { + "INTEGER", + "INTEGER", + ASN__PRIMITIVE_TYPE_free, + INTEGER_print, + asn_generic_no_constraint, + ber_decode_primitive, + INTEGER_encode_der, + INTEGER_decode_xer, + INTEGER_encode_xer, +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, +#else + INTEGER_decode_uper, /* Unaligned PER decoder */ + INTEGER_encode_uper, /* Unaligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_INTEGER_tags, + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + asn_DEF_INTEGER_tags, /* Same as above */ + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Encode INTEGER type using DER. + */ +asn_enc_rval_t +INTEGER_encode_der(asn_TYPE_descriptor_t *td, void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + INTEGER_t *st = (INTEGER_t *)sptr; + + ASN_DEBUG("%s %s as INTEGER (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + /* + * Canonicalize integer in the buffer. + * (Remove too long sign extension, remove some first 0x00 bytes) + */ + if(st->buf) { + uint8_t *buf = st->buf; + uint8_t *end1 = buf + st->size - 1; + int shift; + + /* Compute the number of superfluous leading bytes */ + for(; buf < end1; buf++) { + /* + * If the contents octets of an integer value encoding + * consist of more than one octet, then the bits of the + * first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + switch(*buf) { + case 0x00: if((buf[1] & 0x80) == 0) + continue; + break; + case 0xff: if((buf[1] & 0x80)) + continue; + break; + } + break; + } + + /* Remove leading superfluous bytes from the integer */ + shift = buf - st->buf; + if(shift) { + uint8_t *nb = st->buf; + uint8_t *end; + + st->size -= shift; /* New size, minus bad bytes */ + end = nb + st->size; + + for(; nb < end; nb++, buf++) + *nb = *buf; + } + + } /* if(1) */ + + return der_encode_primitive(td, sptr, tag_mode, tag, cb, app_key); +} + +static const asn_INTEGER_enum_map_t *INTEGER_map_enum2value(asn_INTEGER_specifics_t *specs, const char *lstart, const char *lstop); + +/* + * INTEGER specific human-readable output. + */ +static ssize_t +INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit integer */ + uint8_t *buf = st->buf; + uint8_t *buf_end = st->buf + st->size; + signed long value; + ssize_t wrote = 0; + char *p; + int ret; + + if(specs && specs->field_unsigned) + ret = asn_INTEGER2ulong(st, (unsigned long *)&value); + else + ret = asn_INTEGER2long(st, &value); + + /* Simple case: the integer size is small */ + if(ret == 0) { + const asn_INTEGER_enum_map_t *el; + size_t scrsize; + char *scr; + + el = (value >= 0 || !specs || !specs->field_unsigned) + ? INTEGER_map_value2enum(specs, value) : 0; + if(el) { + scrsize = el->enum_len + 32; + scr = (char *)alloca(scrsize); + if(plainOrXER == 0) + ret = snprintf(scr, scrsize, + "%ld (%s)", value, el->enum_name); + else + ret = snprintf(scr, scrsize, + "<%s/>", el->enum_name); + } else if(plainOrXER && specs && specs->strict_enumeration) { + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } else { + scrsize = sizeof(scratch); + scr = scratch; + ret = snprintf(scr, scrsize, + (specs && specs->field_unsigned) + ?"%lu":"%ld", value); + } + assert(ret > 0 && (size_t)ret < scrsize); + return (cb(scr, ret, app_key) < 0) ? -1 : ret; + } else if(plainOrXER && specs && specs->strict_enumeration) { + /* + * Here and earlier, we cannot encode the ENUMERATED values + * if there is no corresponding identifier. + */ + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } + + /* Output in the long xx:yy:zz... format */ + /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ + for(p = scratch; buf < buf_end; buf++) { + static const char *h2c = "0123456789ABCDEF"; + if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { + /* Flush buffer */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + wrote += p - scratch; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x3a; /* ":" */ + } + if(p != scratch) + p--; /* Remove the last ":" */ + + wrote += p - scratch; + return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; +} + +/* + * INTEGER specific human-readable output. + */ +int +INTEGER_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + ssize_t ret; + + (void)td; + (void)ilevel; + + if(!st || !st->buf) + ret = cb("", 8, app_key); + else + ret = INTEGER__dump(td, st, cb, app_key, 0); + + return (ret < 0) ? -1 : 0; +} + +struct e2v_key { + const char *start; + const char *stop; + asn_INTEGER_enum_map_t *vemap; + unsigned int *evmap; +}; +static int +INTEGER__compar_enum2value(const void *kp, const void *am) { + const struct e2v_key *key = (const struct e2v_key *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + const char *ptr, *end, *name; + + /* Remap the element (sort by different criterion) */ + el = key->vemap + key->evmap[el - key->vemap]; + + /* Compare strings */ + for(ptr = key->start, end = key->stop, name = el->enum_name; + ptr < end; ptr++, name++) { + if(*ptr != *name) + return *(const unsigned char *)ptr + - *(const unsigned char *)name; + } + return name[0] ? -1 : 0; +} + +static const asn_INTEGER_enum_map_t * +INTEGER_map_enum2value(asn_INTEGER_specifics_t *specs, const char *lstart, const char *lstop) { + asn_INTEGER_enum_map_t *el_found; + int count = specs ? specs->map_count : 0; + struct e2v_key key; + const char *lp; + + if(!count) return NULL; + + /* Guaranteed: assert(lstart < lstop); */ + /* Figure out the tag name */ + for(lstart++, lp = lstart; lp < lstop; lp++) { + switch(*lp) { + case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ + case 0x2f: /* '/' */ case 0x3e: /* '>' */ + break; + default: + continue; + } + break; + } + if(lp == lstop) return NULL; /* No tag found */ + lstop = lp; + + key.start = lstart; + key.stop = lstop; + key.vemap = specs->value2enum; + key.evmap = specs->enum2value; + el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, + specs->value2enum, count, sizeof(specs->value2enum[0]), + INTEGER__compar_enum2value); + if(el_found) { + /* Remap enum2value into value2enum */ + el_found = key.vemap + key.evmap[el_found - key.vemap]; + } + return el_found; +} + +static int +INTEGER__compar_value2enum(const void *kp, const void *am) { + long a = *(const long *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + long b = el->nat_value; + if(a < b) return -1; + else if(a == b) return 0; + else return 1; +} + +const asn_INTEGER_enum_map_t * +INTEGER_map_value2enum(asn_INTEGER_specifics_t *specs, long value) { + int count = specs ? specs->map_count : 0; + if(!count) return 0; + return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, + count, sizeof(specs->value2enum[0]), + INTEGER__compar_value2enum); +} + +static int +INTEGER_st_prealloc(INTEGER_t *st, int min_size) { + void *p = MALLOC(min_size + 1); + if(p) { + void *b = st->buf; + st->size = 0; + st->buf = p; + FREEMEM(b); + return 0; + } else { + return -1; + } +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) { + INTEGER_t *st = (INTEGER_t *)sptr; + long dec_value; + long hex_value = 0; + const char *lp; + const char *lstart = (const char *)chunk_buf; + const char *lstop = lstart + chunk_size; + enum { + ST_LEADSPACE, + ST_SKIPSPHEX, + ST_WAITDIGITS, + ST_DIGITS, + ST_DIGITS_TRAILSPACE, + ST_HEXDIGIT1, + ST_HEXDIGIT2, + ST_HEXDIGITS_TRAILSPACE, + ST_HEXCOLON, + ST_END_ENUM, + ST_UNEXPECTED + } state = ST_LEADSPACE; + const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ + const char *dec_value_end = 0; + + if(chunk_size) + ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", + (long)chunk_size, *lstart, lstop[-1]); + + if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) + return XPBD_SYSTEM_FAILURE; + + /* + * We may have received a tag here. It will be processed inline. + * Use strtoul()-like code and serialize the result. + */ + for(lp = lstart; lp < lstop; lp++) { + int lv = *lp; + switch(lv) { + case 0x09: case 0x0a: case 0x0d: case 0x20: + switch(state) { + case ST_LEADSPACE: + case ST_DIGITS_TRAILSPACE: + case ST_HEXDIGITS_TRAILSPACE: + case ST_SKIPSPHEX: + continue; + case ST_DIGITS: + dec_value_end = lp; + state = ST_DIGITS_TRAILSPACE; + continue; + case ST_HEXCOLON: + state = ST_HEXDIGITS_TRAILSPACE; + continue; + default: + break; + } + break; + case 0x2d: /* '-' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x2b: /* '+' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: + switch(state) { + case ST_DIGITS: continue; + case ST_SKIPSPHEX: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = (lv - 0x30) << 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += (lv - 0x30); + state = ST_HEXCOLON; + st->buf[st->size++] = (uint8_t)hex_value; + continue; + case ST_HEXCOLON: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + dec_value = 0; + dec_value_start = lp; + /* FALL THROUGH */ + case ST_WAITDIGITS: + state = ST_DIGITS; + continue; + default: + break; + } + break; + case 0x3c: /* '<', start of XML encoded enumeration */ + if(state == ST_LEADSPACE) { + const asn_INTEGER_enum_map_t *el; + el = INTEGER_map_enum2value( + (asn_INTEGER_specifics_t *) + td->specifics, lstart, lstop); + if(el) { + ASN_DEBUG("Found \"%s\" => %ld", + el->enum_name, el->nat_value); + dec_value = el->nat_value; + state = ST_END_ENUM; + lp = lstop - 1; + continue; + } + ASN_DEBUG("Unknown identifier for INTEGER"); + } + return XPBD_BROKEN_ENCODING; + case 0x3a: /* ':' */ + if(state == ST_HEXCOLON) { + /* This colon is expected */ + state = ST_HEXDIGIT1; + continue; + } else if(state == ST_DIGITS) { + /* The colon here means that we have + * decoded the first two hexadecimal + * places as a decimal value. + * Switch decoding mode. */ + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + } else { + ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); + break; + } + /* [A-Fa-f] */ + case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: + case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: + switch(state) { + case ST_SKIPSPHEX: + case ST_LEADSPACE: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + hex_value <<= 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + st->buf[st->size++] = (uint8_t)hex_value; + state = ST_HEXCOLON; + continue; + case ST_DIGITS: + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + default: + break; + } + break; + } + + /* Found extra non-numeric stuff */ + ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", + lv, (long)(lp - lstart)); + state = ST_UNEXPECTED; + break; + } + + switch(state) { + case ST_END_ENUM: + /* Got a complete and valid enumeration encoded as a tag. */ + break; + case ST_DIGITS: + dec_value_end = lstop; + /* FALL THROUGH */ + case ST_DIGITS_TRAILSPACE: + /* The last symbol encountered was a digit. */ + switch(asn_strtol_lim(dec_value_start, &dec_value_end, &dec_value)) { + case ASN_STRTOL_OK: + break; + case ASN_STRTOL_ERROR_RANGE: + return XPBD_DECODER_LIMIT; + case ASN_STRTOL_ERROR_INVAL: + case ASN_STRTOL_EXPECT_MORE: + case ASN_STRTOL_EXTRA_DATA: + return XPBD_BROKEN_ENCODING; + } + break; + case ST_HEXCOLON: + case ST_HEXDIGITS_TRAILSPACE: + st->buf[st->size] = 0; /* Just in case termination */ + return XPBD_BODY_CONSUMED; + case ST_HEXDIGIT1: + case ST_HEXDIGIT2: + case ST_SKIPSPHEX: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + /* Content not found */ + return XPBD_NOT_BODY_IGNORE; + case ST_WAITDIGITS: + case ST_UNEXPECTED: + ASN_DEBUG("INTEGER: No useful digits (state %d)", state); + return XPBD_BROKEN_ENCODING; /* No digits */ + } + + /* + * Convert the result of parsing of enumeration or a straight + * decimal value into a BER representation. + */ + if(asn_long2INTEGER(st, dec_value)) + return XPBD_SYSTEM_FAILURE; + + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +INTEGER_decode_xer(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(INTEGER_t), opt_mname, + buf_ptr, size, INTEGER__xer_body_decode); +} + +asn_enc_rval_t +INTEGER_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t er; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) + _ASN_ENCODE_FAILED; + + er.encoded = INTEGER__dump(td, st, cb, app_key, 1); + if(er.encoded < 0) _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(er); +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +INTEGER_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) _ASN_DECODE_FAILED; + } + + if(!constraints) constraints = td->per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) _ASN_DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) _ASN_DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) _ASN_DECODE_FAILED; + st->size = size; + } + } + + /* X.691-2008/11, #13.2.2, constrained whole number */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #11.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if((size_t)ct->range_bits > 8 * sizeof(unsigned long)) + _ASN_DECODE_FAILED; + + if(specs && specs->field_unsigned) { + unsigned long uvalue; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + _ASN_DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + uvalue += ct->lower_bound; + if(asn_ulong2INTEGER(st, uvalue)) + _ASN_DECODE_FAILED; + } else { + unsigned long svalue; + if(uper_get_constrained_whole_number(pd, + &svalue, ct->range_bits)) + _ASN_DECODE_STARVED; + ASN_DEBUG("Got value %ld + low %ld", + svalue, ct->lower_bound); + svalue += ct->lower_bound; + if(asn_long2INTEGER(st, svalue)) + _ASN_DECODE_FAILED; + } + return rval; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len; + void *p; + int ret; + + /* Get the PER length */ + len = uper_get_length(pd, -1, &repeat); + if(len < 0) _ASN_DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) _ASN_DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) _ASN_DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetics. + */ + long value; + if(asn_INTEGER2long(st, &value)) + _ASN_DECODE_FAILED; + if(asn_long2INTEGER(st, value + ct->lower_bound)) + _ASN_DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er; + INTEGER_t *st = (INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + asn_per_constraint_t *ct; + long value = 0; + + if(!st || st->size == 0) _ASN_ENCODE_FAILED; + + if(!constraints) constraints = td->per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + unsigned long uval; + if(asn_INTEGER2ulong(st, &uval)) + _ASN_ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(uval < (unsigned long)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(uval < (unsigned long)ct->lower_bound + || uval > (unsigned long)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%d) lb %lu ub %lu %s", + uval, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + value = uval; + } else { + if(asn_INTEGER2long(st, &value)) + _ASN_ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value < ct->lower_bound + || value > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %ld (%02x/%d) lb %ld ub %ld %s", + value, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + _ASN_ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + _ASN_ENCODE_FAILED; + } + } + + + /* X.691-11/2008, #13.2.2, test if constrained whole number */ + if(ct && ct->range_bits >= 0) { + /* #11.5.6 -> #11.3 */ + ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", + value, value - ct->lower_bound, ct->range_bits); + unsigned long v = value - ct->lower_bound; + if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) + _ASN_ENCODE_FAILED; + _ASN_ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); + /* TODO: adjust lower bound */ + _ASN_ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + ssize_t mayEncode = uper_put_length(po, end - buf); + if(mayEncode < 0) + _ASN_ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + _ASN_ENCODE_FAILED; + buf += mayEncode; + } + + _ASN_ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +int +asn_INTEGER2long(const INTEGER_t *iptr, long *lptr) { + uint8_t *b, *end; + size_t size; + long l; + + /* Sanity checking */ + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + /* Cache the begin/end of the buffer */ + b = iptr->buf; /* Start of the INTEGER buffer */ + size = iptr->size; + end = b + size; /* Where to stop */ + + if(size > sizeof(long)) { + uint8_t *end1 = end - 1; + /* + * Slightly more advanced processing, + * able to >sizeof(long) bytes, + * when the actual value is small + * (0x0000000000abcdef would yield a fine 0x00abcdef) + */ + /* Skip out the insignificant leading bytes */ + for(; b < end1; b++) { + switch(*b) { + case 0x00: if((b[1] & 0x80) == 0) continue; break; + case 0xff: if((b[1] & 0x80) != 0) continue; break; + } + break; + } + + size = end - b; + if(size > sizeof(long)) { + /* Still cannot fit the long */ + errno = ERANGE; + return -1; + } + } + + /* Shortcut processing of a corner case */ + if(end == b) { + *lptr = 0; + return 0; + } + + /* Perform the sign initialization */ + /* Actually l = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) l = -1; else l = 0; + + /* Conversion engine */ + for(; b < end; b++) + l = (l << 8) | *b; + + *lptr = l; + return 0; +} + +int +asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *lptr) { + uint8_t *b, *end; + unsigned long l; + size_t size; + + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + b = iptr->buf; + size = iptr->size; + end = b + size; + + /* If all extra leading bytes are zeroes, ignore them */ + for(; size > sizeof(unsigned long); b++, size--) { + if(*b) { + /* Value won't fit unsigned long */ + errno = ERANGE; + return -1; + } + } + + /* Conversion engine */ + for(l = 0; b < end; b++) + l = (l << 8) | *b; + + *lptr = l; + return 0; +} + +int +asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= LONG_MAX) + return asn_long2INTEGER(st, value); + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; + for(b = buf + 1, shr = (sizeof(long)-1)*8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_long2INTEGER(INTEGER_t *st, long value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +/* + * This function is going to be DEPRECATED soon. + */ +enum asn_strtol_result_e +asn_strtol(const char *str, const char *end, long *lp) { + const char *endp = end; + + switch(asn_strtol_lim(str, &endp, lp)) { + case ASN_STRTOL_ERROR_RANGE: + return ASN_STRTOL_ERROR_RANGE; + case ASN_STRTOL_ERROR_INVAL: + return ASN_STRTOL_ERROR_INVAL; + case ASN_STRTOL_EXPECT_MORE: + return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ + case ASN_STRTOL_OK: + return ASN_STRTOL_OK; + case ASN_STRTOL_EXTRA_DATA: + return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ + } + + return ASN_STRTOL_ERROR_INVAL; /* Retain old behavior */ +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtol(3). + */ +enum asn_strtol_result_e +asn_strtol_lim(const char *str, const char **end, long *lp) { + int sign = 1; + long l; + + const long upper_boundary = LONG_MAX / 10; + long last_digit_max = LONG_MAX % 10; + + if(str >= *end) return ASN_STRTOL_ERROR_INVAL; + + switch(*str) { + case '-': + last_digit_max++; + sign = -1; + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOL_EXPECT_MORE; + } + } + + for(l = 0; str < (*end); str++) { + switch(*str) { + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: { + int d = *str - '0'; + if(l < upper_boundary) { + l = l * 10 + d; + } else if(l == upper_boundary) { + if(d <= last_digit_max) { + if(sign > 0) { + l = l * 10 + d; + } else { + sign = 1; + l = -l * 10 - d; + } + } else { + *end = str; + return ASN_STRTOL_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOL_ERROR_RANGE; + } + } + continue; + default: + *end = str; + *lp = sign * l; + return ASN_STRTOL_EXTRA_DATA; + } + } + + *end = str; + *lp = sign * l; + return ASN_STRTOL_OK; +} + diff --git a/src/tmx/Asn_J2735/src/r41/ITIScodes.c b/src/tmx/Asn_J2735/src/r41/ITIScodes.c new file mode 100644 index 000000000..4d587806f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ITIScodes.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ITIScodes.h" + +int +ITIScodes_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65565)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ITIScodes_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ITIScodes_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ITIScodes_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ITIScodes_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ITIScodes_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ITIScodes_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ITIScodes_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ITIScodes_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ITIScodes_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ITIScodes_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ITIScodes_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 17, -1, 0, 65565 } /* (0..65565) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodes = { + "ITIScodes", + "ITIScodes", + ITIScodes_free, + ITIScodes_print, + ITIScodes_constraint, + ITIScodes_decode_ber, + ITIScodes_encode_der, + ITIScodes_decode_xer, + ITIScodes_encode_xer, + ITIScodes_decode_uper, + ITIScodes_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ITIScodes_tags_1, + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + asn_DEF_ITIScodes_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + &asn_PER_type_ITIScodes_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c new file mode 100644 index 000000000..729aad043 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ITIScodesAndText.c @@ -0,0 +1,173 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ITIScodesAndText.h" + +static asn_per_constraints_t asn_PER_type_item_itis_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_itis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct item_itis, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct item_itis, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStext, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "text" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_item_itis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_itis_specs_3 = { + sizeof(struct item_itis), + offsetof(struct item_itis, _asn_ctx), + offsetof(struct item_itis, present), + sizeof(((struct item_itis *)0)->present), + asn_MAP_item_itis_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_itis_3 = { + "item-itis", + "item-itis", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_item_itis_constr_3, + asn_MBR_item_itis_3, + 2, /* Elements count */ + &asn_SPC_item_itis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item_itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_itis_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "item-itis" + }, +}; +static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-itis */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ITIScodesAndText__Member), + offsetof(struct ITIScodesAndText__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { + sizeof(struct ITIScodesAndText), + offsetof(struct ITIScodesAndText, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { + "ITIScodesAndText", + "ITIScodesAndText", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ITIScodesAndText_tags_1, + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + &asn_PER_type_ITIScodesAndText_constr_1, + asn_MBR_ITIScodesAndText_1, + 1, /* Single element */ + &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ITIStext.c b/src/tmx/Asn_J2735/src/r41/ITIStext.c new file mode 100644 index 000000000..53879eb3e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ITIStext.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ITIStext.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +ITIStext_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 500) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +ITIStext_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +ITIStext_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ITIStext_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ITIStext_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ITIStext_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ITIStext_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ITIStext_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ITIStext_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ITIStext_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ITIStext_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ITIStext_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ITIStext_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, + 0, 0 /* No PER character map necessary */ +}; +static ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStext = { + "ITIStext", + "ITIStext", + ITIStext_free, + ITIStext_print, + ITIStext_constraint, + ITIStext_decode_ber, + ITIStext_encode_der, + ITIStext_decode_xer, + ITIStext_encode_xer, + ITIStext_decode_uper, + ITIStext_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ITIStext_tags_1, + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + asn_DEF_ITIStext_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + &asn_PER_type_ITIStext_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c new file mode 100644 index 000000000..f6ac407ce --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IncidentResponseEquipment.c @@ -0,0 +1,289 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IncidentResponseEquipment.h" + +int +IncidentResponseEquipment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +IncidentResponseEquipment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +IncidentResponseEquipment_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +IncidentResponseEquipment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +IncidentResponseEquipment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +IncidentResponseEquipment_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +IncidentResponseEquipment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +IncidentResponseEquipment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +IncidentResponseEquipment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +IncidentResponseEquipment_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + IncidentResponseEquipment_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { + { 9985, 23, "ground-fire-suppression" }, + { 9986, 22, "heavy-ground-equipment" }, + { 9988, 8, "aircraft" }, + { 9989, 16, "marine-equipment" }, + { 9990, 17, "support-equipment" }, + { 9991, 19, "medical-rescue-unit" }, + { 9993, 5, "other" }, + { 9994, 29, "ground-fire-suppression-other" }, + { 9995, 6, "engine" }, + { 9996, 15, "truck-or-aerial" }, + { 9997, 5, "quint" }, + { 9998, 25, "tanker-pumper-combination" }, + { 10000, 11, "brush-truck" }, + { 10001, 28, "aircraft-rescue-firefighting" }, + { 10004, 28, "heavy-ground-equipment-other" }, + { 10005, 13, "dozer-or-plow" }, + { 10006, 7, "tractor" }, + { 10008, 16, "tanker-or-tender" }, + { 10024, 14, "aircraft-other" }, + { 10025, 26, "aircraft-fixed-wing-tanker" }, + { 10026, 10, "helitanker" }, + { 10027, 10, "helicopter" }, + { 10034, 22, "marine-equipment-other" }, + { 10035, 19, "fire-boat-with-pump" }, + { 10036, 12, "boat-no-pump" }, + { 10044, 23, "support-apparatus-other" }, + { 10045, 27, "breathing-apparatus-support" }, + { 10046, 18, "light-and-air-unit" }, + { 10054, 25, "medical-rescue-unit-other" }, + { 10055, 11, "rescue-unit" }, + { 10056, 24, "urban-search-rescue-unit" }, + { 10057, 17, "high-angle-rescue" }, + { 10058, 17, "crash-fire-rescue" }, + { 10059, 8, "bLS-unit" }, + { 10060, 8, "aLS-unit" }, + { 10075, 19, "mobile-command-post" }, + { 10076, 17, "chief-officer-car" }, + { 10077, 11, "hAZMAT-unit" }, + { 10078, 16, "type-i-hand-crew" }, + { 10079, 17, "type-ii-hand-crew" }, + { 10083, 23, "privately-owned-vehicle" }, + { 10084, 24, "other-apparatus-resource" }, + { 10085, 9, "ambulance" }, + { 10086, 14, "bomb-squad-van" }, + { 10087, 17, "combine-harvester" }, + { 10088, 20, "construction-vehicle" }, + { 10089, 12, "farm-tractor" }, + { 10090, 22, "grass-cutting-machines" }, + { 10091, 22, "hAZMAT-containment-tow" }, + { 10092, 9, "heavy-tow" }, + { 10093, 22, "hedge-cutting-machines" }, + { 10094, 9, "light-tow" }, + { 10095, 12, "mobile-crane" }, + { 10096, 25, "refuse-collection-vehicle" }, + { 10097, 19, "resurfacing-vehicle" }, + { 10098, 12, "road-sweeper" }, + { 10099, 32, "roadside-litter-collection-crews" }, + { 10100, 15, "salvage-vehicle" }, + { 10101, 10, "sand-truck" }, + { 10102, 8, "snowplow" }, + { 10103, 12, "steam-roller" }, + { 10104, 13, "swat-team-van" }, + { 10105, 20, "track-laying-vehicle" }, + { 10106, 15, "unknown-vehicle" }, + { 10107, 20, "white-lining-vehicle" }, + { 10108, 10, "dump-truck" }, + { 10109, 18, "supervisor-vehicle" }, + { 10110, 11, "snow-blower" }, + { 10111, 18, "rotary-snow-blower" }, + { 10112, 11, "road-grader" }, + { 10113, 11, "steam-truck" }, + { 10114, 11, "flatbed-tow" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { + 34, /* aLS-unit(10060) */ + 2, /* aircraft(9988) */ + 19, /* aircraft-fixed-wing-tanker(10025) */ + 18, /* aircraft-other(10024) */ + 13, /* aircraft-rescue-firefighting(10001) */ + 42, /* ambulance(10085) */ + 33, /* bLS-unit(10059) */ + 24, /* boat-no-pump(10036) */ + 43, /* bomb-squad-van(10086) */ + 26, /* breathing-apparatus-support(10045) */ + 12, /* brush-truck(10000) */ + 36, /* chief-officer-car(10076) */ + 44, /* combine-harvester(10087) */ + 45, /* construction-vehicle(10088) */ + 32, /* crash-fire-rescue(10058) */ + 15, /* dozer-or-plow(10005) */ + 65, /* dump-truck(10108) */ + 8, /* engine(9995) */ + 46, /* farm-tractor(10089) */ + 23, /* fire-boat-with-pump(10035) */ + 71, /* flatbed-tow(10114) */ + 47, /* grass-cutting-machines(10090) */ + 0, /* ground-fire-suppression(9985) */ + 7, /* ground-fire-suppression-other(9994) */ + 48, /* hAZMAT-containment-tow(10091) */ + 37, /* hAZMAT-unit(10077) */ + 1, /* heavy-ground-equipment(9986) */ + 14, /* heavy-ground-equipment-other(10004) */ + 49, /* heavy-tow(10092) */ + 50, /* hedge-cutting-machines(10093) */ + 21, /* helicopter(10027) */ + 20, /* helitanker(10026) */ + 31, /* high-angle-rescue(10057) */ + 27, /* light-and-air-unit(10046) */ + 51, /* light-tow(10094) */ + 3, /* marine-equipment(9989) */ + 22, /* marine-equipment-other(10034) */ + 5, /* medical-rescue-unit(9991) */ + 28, /* medical-rescue-unit-other(10054) */ + 35, /* mobile-command-post(10075) */ + 52, /* mobile-crane(10095) */ + 6, /* other(9993) */ + 41, /* other-apparatus-resource(10084) */ + 40, /* privately-owned-vehicle(10083) */ + 10, /* quint(9997) */ + 53, /* refuse-collection-vehicle(10096) */ + 29, /* rescue-unit(10055) */ + 54, /* resurfacing-vehicle(10097) */ + 69, /* road-grader(10112) */ + 55, /* road-sweeper(10098) */ + 56, /* roadside-litter-collection-crews(10099) */ + 68, /* rotary-snow-blower(10111) */ + 57, /* salvage-vehicle(10100) */ + 58, /* sand-truck(10101) */ + 67, /* snow-blower(10110) */ + 59, /* snowplow(10102) */ + 60, /* steam-roller(10103) */ + 70, /* steam-truck(10113) */ + 66, /* supervisor-vehicle(10109) */ + 25, /* support-apparatus-other(10044) */ + 4, /* support-equipment(9990) */ + 61, /* swat-team-van(10104) */ + 17, /* tanker-or-tender(10008) */ + 11, /* tanker-pumper-combination(9998) */ + 62, /* track-laying-vehicle(10105) */ + 16, /* tractor(10006) */ + 9, /* truck-or-aerial(9996) */ + 38, /* type-i-hand-crew(10078) */ + 39, /* type-ii-hand-crew(10079) */ + 63, /* unknown-vehicle(10106) */ + 30, /* urban-search-rescue-unit(10056) */ + 64 /* white-lining-vehicle(10107) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { + asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ + 72, /* Number of elements in the maps */ + 73, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { + "IncidentResponseEquipment", + "IncidentResponseEquipment", + IncidentResponseEquipment_free, + IncidentResponseEquipment_print, + IncidentResponseEquipment_constraint, + IncidentResponseEquipment_decode_ber, + IncidentResponseEquipment_encode_der, + IncidentResponseEquipment_decode_xer, + IncidentResponseEquipment_encode_xer, + IncidentResponseEquipment_decode_uper, + IncidentResponseEquipment_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IncidentResponseEquipment_tags_1, + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + &asn_PER_type_IncidentResponseEquipment_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c b/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c new file mode 100644 index 000000000..686675003 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionCollision.c @@ -0,0 +1,132 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionCollision.h" + +static asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, secMark), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, path), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "path" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersetionID), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "intersetionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventFlags, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "eventFlag" + }, +}; +static int asn_MAP_IntersectionCollision_oms_1[] = { 3 }; +static ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* intersetionID */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneNumber */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* eventFlag */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { + sizeof(struct IntersectionCollision), + offsetof(struct IntersectionCollision, _asn_ctx), + asn_MAP_IntersectionCollision_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_IntersectionCollision_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 7, /* Start extensions */ + 9 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { + "IntersectionCollision", + "IntersectionCollision", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionCollision_tags_1, + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + asn_DEF_IntersectionCollision_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_IntersectionCollision_1, + 8, /* Elements count */ + &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c new file mode 100644 index 000000000..231564d85 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionGeometry.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionGeometry.h" + +static asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneSet" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PreemptPriorityList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "preemptPriorityData" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalIntersection, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; +static ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { + sizeof(struct IntersectionGeometry), + offsetof(struct IntersectionGeometry, _asn_ctx), + asn_MAP_IntersectionGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 8, /* Start extensions */ + 10 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { + "IntersectionGeometry", + "IntersectionGeometry", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionGeometry_tags_1, + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_IntersectionGeometry_1, + 9, /* Elements count */ + &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c new file mode 100644 index 000000000..9c006a4bc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionGeometryList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionGeometryList.h" + +static asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionGeometry, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { + sizeof(struct IntersectionGeometryList), + offsetof(struct IntersectionGeometryList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { + "IntersectionGeometryList", + "IntersectionGeometryList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionGeometryList_tags_1, + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + &asn_PER_type_IntersectionGeometryList_constr_1, + asn_MBR_IntersectionGeometryList_1, + 1, /* Single element */ + &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionID.c b/src/tmx/Asn_J2735/src/r41/IntersectionID.c new file mode 100644 index 000000000..be06f5545 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionID.h" + +int +IntersectionID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +IntersectionID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +IntersectionID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + IntersectionID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +IntersectionID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +IntersectionID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +IntersectionID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +IntersectionID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +IntersectionID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +IntersectionID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +IntersectionID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + IntersectionID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionID = { + "IntersectionID", + "IntersectionID", + IntersectionID_free, + IntersectionID_print, + IntersectionID_constraint, + IntersectionID_decode_ber, + IntersectionID_encode_der, + IntersectionID_decode_xer, + IntersectionID_encode_xer, + IntersectionID_decode_uper, + IntersectionID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionID_tags_1, + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + &asn_PER_type_IntersectionID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c new file mode 100644 index 000000000..76d332890 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionReferenceID.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionReferenceID.h" + +static asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, +}; +static int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { + sizeof(struct IntersectionReferenceID), + offsetof(struct IntersectionReferenceID, _asn_ctx), + asn_MAP_IntersectionReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { + "IntersectionReferenceID", + "IntersectionReferenceID", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionReferenceID_tags_1, + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_IntersectionReferenceID_1, + 2, /* Elements count */ + &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionState.c b/src/tmx/Asn_J2735/src/r41/IntersectionState.c new file mode 100644 index 000000000..ba77d6bf1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionState.c @@ -0,0 +1,172 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionState.h" + +static asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStatusObject, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "moy" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EnabledLaneList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "enabledLanes" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "states" + }, + { ATF_POINTER, 4, offsetof(struct IntersectionState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maneuverAssistList" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionState, priority), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalControlState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "priority" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, preempt), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalControlState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "preempt" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalIntersectionState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9, 10, 11 }; +static ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* preempt */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { + sizeof(struct IntersectionState), + offsetof(struct IntersectionState, _asn_ctx), + asn_MAP_IntersectionState_tag2el_1, + 12, /* Count of tags in the map */ + asn_MAP_IntersectionState_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 11, /* Start extensions */ + 13 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState = { + "IntersectionState", + "IntersectionState", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionState_tags_1, + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_IntersectionState_1, + 12, /* Elements count */ + &asn_SPC_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c b/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c new file mode 100644 index 000000000..822c1eae9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionStateList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionStateList.h" + +static asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { + sizeof(struct IntersectionStateList), + offsetof(struct IntersectionStateList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { + "IntersectionStateList", + "IntersectionStateList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionStateList_tags_1, + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStateList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + &asn_PER_type_IntersectionStateList_constr_1, + asn_MBR_IntersectionStateList_1, + 1, /* Single element */ + &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c new file mode 100644 index 000000000..d630c8f87 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/IntersectionStatusObject.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "IntersectionStatusObject.h" + +int +IntersectionStatusObject_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +IntersectionStatusObject_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +IntersectionStatusObject_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +IntersectionStatusObject_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +IntersectionStatusObject_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +IntersectionStatusObject_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +IntersectionStatusObject_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +IntersectionStatusObject_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +IntersectionStatusObject_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +IntersectionStatusObject_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + IntersectionStatusObject_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { + "IntersectionStatusObject", + "IntersectionStatusObject", + IntersectionStatusObject_free, + IntersectionStatusObject_print, + IntersectionStatusObject_constraint, + IntersectionStatusObject_decode_ber, + IntersectionStatusObject_encode_der, + IntersectionStatusObject_decode_xer, + IntersectionStatusObject_encode_xer, + IntersectionStatusObject_decode_uper, + IntersectionStatusObject_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_IntersectionStatusObject_tags_1, + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + &asn_PER_type_IntersectionStatusObject_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/J1939data.c b/src/tmx/Asn_J2735/src/r41/J1939data.c new file mode 100644 index 000000000..00f6ffb47 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/J1939data.c @@ -0,0 +1,494 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "J1939data.h" + +static int +memb_tires_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 16)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_axle_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 16)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_tires_constr_2 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_axle_constr_12 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_tires_constr_2 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_axle_constr_12 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 0, 16 } /* (SIZE(0..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_Member_3[] = { + { ATF_POINTER, 7, offsetof(struct J1939data__tires__Member, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLocation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "location" + }, + { ATF_POINTER, 6, offsetof(struct J1939data__tires__Member, pressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pressure" + }, + { ATF_POINTER, 5, offsetof(struct J1939data__tires__Member, temp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireTemp, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "temp" + }, + { ATF_POINTER, 4, offsetof(struct J1939data__tires__Member, wheelSensorStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelSensorStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "wheelSensorStatus" + }, + { ATF_POINTER, 3, offsetof(struct J1939data__tires__Member, wheelEndElectFault), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelEndElectFault, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "wheelEndElectFault" + }, + { ATF_POINTER, 2, offsetof(struct J1939data__tires__Member, leakageRate), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLeakageRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "leakageRate" + }, + { ATF_POINTER, 1, offsetof(struct J1939data__tires__Member, detection), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressureThresholdDetection, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "detection" + }, +}; +static int asn_MAP_Member_oms_3[] = { 0, 1, 2, 3, 4, 5, 6 }; +static ber_tlv_tag_t asn_DEF_Member_tags_3[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_3 = { + sizeof(struct J1939data__tires__Member), + offsetof(struct J1939data__tires__Member, _asn_ctx), + asn_MAP_Member_tag2el_3, + 7, /* Count of tags in the map */ + asn_MAP_Member_oms_3, /* Optional members */ + 7, 0, /* Root/Additions */ + 6, /* Start extensions */ + 8 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_3 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_3, + sizeof(asn_DEF_Member_tags_3) + /sizeof(asn_DEF_Member_tags_3[0]), /* 1 */ + asn_DEF_Member_tags_3, /* Same as above */ + sizeof(asn_DEF_Member_tags_3) + /sizeof(asn_DEF_Member_tags_3[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_3, + 7, /* Elements count */ + &asn_SPC_Member_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_tires_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_tires_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_tires_specs_2 = { + sizeof(struct J1939data__tires), + offsetof(struct J1939data__tires, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_tires_2 = { + "tires", + "tires", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_tires_tags_2, + sizeof(asn_DEF_tires_tags_2) + /sizeof(asn_DEF_tires_tags_2[0]) - 1, /* 1 */ + asn_DEF_tires_tags_2, /* Same as above */ + sizeof(asn_DEF_tires_tags_2) + /sizeof(asn_DEF_tires_tags_2[0]), /* 2 */ + &asn_PER_type_tires_constr_2, + asn_MBR_tires_2, + 1, /* Single element */ + &asn_SPC_tires_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_13[] = { + { ATF_POINTER, 2, offsetof(struct J1939data__axle__Member, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleLocation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "location" + }, + { ATF_POINTER, 1, offsetof(struct J1939data__axle__Member, weight), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeight, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "weight" + }, +}; +static int asn_MAP_Member_oms_13[] = { 0, 1 }; +static ber_tlv_tag_t asn_DEF_Member_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_13[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_13 = { + sizeof(struct J1939data__axle__Member), + offsetof(struct J1939data__axle__Member, _asn_ctx), + asn_MAP_Member_tag2el_13, + 2, /* Count of tags in the map */ + asn_MAP_Member_oms_13, /* Optional members */ + 2, 0, /* Root/Additions */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_13 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_13, + sizeof(asn_DEF_Member_tags_13) + /sizeof(asn_DEF_Member_tags_13[0]), /* 1 */ + asn_DEF_Member_tags_13, /* Same as above */ + sizeof(asn_DEF_Member_tags_13) + /sizeof(asn_DEF_Member_tags_13[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_13, + 2, /* Elements count */ + &asn_SPC_Member_specs_13 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_axle_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_13, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_axle_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_axle_specs_12 = { + sizeof(struct J1939data__axle), + offsetof(struct J1939data__axle, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_axle_12 = { + "axle", + "axle", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_axle_tags_12, + sizeof(asn_DEF_axle_tags_12) + /sizeof(asn_DEF_axle_tags_12[0]) - 1, /* 1 */ + asn_DEF_axle_tags_12, /* Same as above */ + sizeof(asn_DEF_axle_tags_12) + /sizeof(asn_DEF_axle_tags_12[0]), /* 2 */ + &asn_PER_type_axle_constr_12, + asn_MBR_axle_12, + 1, /* Single element */ + &asn_SPC_axle_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_J1939data_1[] = { + { ATF_POINTER, 10, offsetof(struct J1939data, tires), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_tires_2, + memb_tires_constraint_1, + &asn_PER_memb_tires_constr_2, + 0, + "tires" + }, + { ATF_POINTER, 9, offsetof(struct J1939data, axle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_axle_12, + memb_axle_constraint_1, + &asn_PER_memb_axle_constr_12, + 0, + "axle" + }, + { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "trailerWeight" + }, + { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CargoWeight, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "cargoWeight" + }, + { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleTemperature, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "steeringAxleTemperature" + }, + { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLocation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "driveAxleLocation" + }, + { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLiftAirPressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "driveAxleLiftAirPressure" + }, + { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleTemperature, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "driveAxleTemperature" + }, + { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLubePressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "driveAxleLubePressure" + }, + { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleLubePressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "steeringAxleLubePressure" + }, +}; +static int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { + sizeof(struct J1939data), + offsetof(struct J1939data, _asn_ctx), + asn_MAP_J1939data_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_J1939data_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 9, /* Start extensions */ + 11 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_J1939data = { + "J1939data", + "J1939data", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_J1939data_tags_1, + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + asn_DEF_J1939data_tags_1, /* Same as above */ + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_J1939data_1, + 10, /* Elements count */ + &asn_SPC_J1939data_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Angle.c b/src/tmx/Asn_J2735/src/r41/JPN-Angle.c new file mode 100644 index 000000000..5bb5581d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Angle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Angle.h" + +int +JPN_Angle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 239)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +JPN_Angle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +JPN_Angle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +JPN_Angle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +JPN_Angle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +JPN_Angle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +JPN_Angle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +JPN_Angle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +JPN_Angle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +JPN_Angle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + JPN_Angle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_JPN_Angle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_JPN_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Angle = { + "JPN-Angle", + "JPN-Angle", + JPN_Angle_free, + JPN_Angle_print, + JPN_Angle_constraint, + JPN_Angle_decode_ber, + JPN_Angle_encode_der, + JPN_Angle_decode_xer, + JPN_Angle_encode_xer, + JPN_Angle_decode_uper, + JPN_Angle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_Angle_tags_1, + sizeof(asn_DEF_JPN_Angle_tags_1) + /sizeof(asn_DEF_JPN_Angle_tags_1[0]), /* 1 */ + asn_DEF_JPN_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_Angle_tags_1) + /sizeof(asn_DEF_JPN_Angle_tags_1[0]), /* 1 */ + &asn_PER_type_JPN_Angle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c b/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c new file mode 100644 index 000000000..306248691 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Elevation.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Elevation.h" + +int +JPN_Elevation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +JPN_Elevation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +JPN_Elevation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +JPN_Elevation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +JPN_Elevation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +JPN_Elevation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +JPN_Elevation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +JPN_Elevation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +JPN_Elevation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +JPN_Elevation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + JPN_Elevation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_JPN_Elevation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_JPN_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Elevation = { + "JPN-Elevation", + "JPN-Elevation", + JPN_Elevation_free, + JPN_Elevation_print, + JPN_Elevation_constraint, + JPN_Elevation_decode_ber, + JPN_Elevation_encode_der, + JPN_Elevation_decode_xer, + JPN_Elevation_encode_xer, + JPN_Elevation_decode_uper, + JPN_Elevation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_Elevation_tags_1, + sizeof(asn_DEF_JPN_Elevation_tags_1) + /sizeof(asn_DEF_JPN_Elevation_tags_1[0]), /* 1 */ + asn_DEF_JPN_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_Elevation_tags_1) + /sizeof(asn_DEF_JPN_Elevation_tags_1[0]), /* 1 */ + &asn_PER_type_JPN_Elevation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c b/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c new file mode 100644 index 000000000..48f5f9391 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-MsgCount.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-MsgCount.h" + +int +JPN_MsgCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +JPN_MsgCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +JPN_MsgCount_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +JPN_MsgCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +JPN_MsgCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +JPN_MsgCount_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +JPN_MsgCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +JPN_MsgCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +JPN_MsgCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +JPN_MsgCount_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + JPN_MsgCount_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_JPN_MsgCount_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_JPN_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_JPN_MsgCount = { + "JPN-MsgCount", + "JPN-MsgCount", + JPN_MsgCount_free, + JPN_MsgCount_print, + JPN_MsgCount_constraint, + JPN_MsgCount_decode_ber, + JPN_MsgCount_encode_der, + JPN_MsgCount_decode_xer, + JPN_MsgCount_encode_xer, + JPN_MsgCount_decode_uper, + JPN_MsgCount_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_MsgCount_tags_1, + sizeof(asn_DEF_JPN_MsgCount_tags_1) + /sizeof(asn_DEF_JPN_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_JPN_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_MsgCount_tags_1) + /sizeof(asn_DEF_JPN_MsgCount_tags_1[0]), /* 1 */ + &asn_PER_type_JPN_MsgCount_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c new file mode 100644 index 000000000..727cad892 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Reg-LaneDataAttribute.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Reg-LaneDataAttribute.h" + +static ber_tlv_tag_t asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_LaneDataAttribute_specs_1 = { + sizeof(struct JPN_Reg_LaneDataAttribute), + offsetof(struct JPN_Reg_LaneDataAttribute, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Reg_LaneDataAttribute = { + "JPN-Reg-LaneDataAttribute", + "JPN-Reg-LaneDataAttribute", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_Reg_LaneDataAttribute_tags_1, + sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1) + /sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ + asn_DEF_JPN_Reg_LaneDataAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1) + /sizeof(asn_DEF_JPN_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_JPN_Reg_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c new file mode 100644 index 000000000..5af92ca2d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Reg-MovementEvent.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Reg-MovementEvent.h" + +static asn_TYPE_member_t asn_MBR_JPN_Reg_MovementEvent_1[] = { + { ATF_POINTER, 1, offsetof(struct JPN_Reg_MovementEvent, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_MovementEvent, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinTimetoChange, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct JPN_Reg_MovementEvent, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MaxTimetoChange, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct JPN_Reg_MovementEvent, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct JPN_Reg_MovementEvent, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct JPN_Reg_MovementEvent, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nextTime" + }, +}; +static int asn_MAP_JPN_Reg_MovementEvent_oms_1[] = { 0, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_JPN_Reg_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_MovementEvent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_MovementEvent_specs_1 = { + sizeof(struct JPN_Reg_MovementEvent), + offsetof(struct JPN_Reg_MovementEvent, _asn_ctx), + asn_MAP_JPN_Reg_MovementEvent_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_JPN_Reg_MovementEvent_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Reg_MovementEvent = { + "JPN-Reg-MovementEvent", + "JPN-Reg-MovementEvent", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_Reg_MovementEvent_tags_1, + sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1) + /sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_JPN_Reg_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1) + /sizeof(asn_DEF_JPN_Reg_MovementEvent_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_JPN_Reg_MovementEvent_1, + 6, /* Elements count */ + &asn_SPC_JPN_Reg_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c new file mode 100644 index 000000000..d3999efee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Reg-NodeOffsetPoint.c @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Reg-NodeOffsetPoint.h" + +static asn_per_constraints_t asn_PER_type_JPN_Reg_NodeOffsetPoint_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_JPN_Reg_NodeOffsetPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_NodeOffsetPoint, choice.posA), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_48b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posA" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_NodeOffsetPoint, choice.posB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_80b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posB" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_NodeOffsetPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ +}; +static asn_CHOICE_specifics_t asn_SPC_JPN_Reg_NodeOffsetPoint_specs_1 = { + sizeof(struct JPN_Reg_NodeOffsetPoint), + offsetof(struct JPN_Reg_NodeOffsetPoint, _asn_ctx), + offsetof(struct JPN_Reg_NodeOffsetPoint, present), + sizeof(((struct JPN_Reg_NodeOffsetPoint *)0)->present), + asn_MAP_JPN_Reg_NodeOffsetPoint_tag2el_1, + 2, /* Count of tags in the map */ + 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Reg_NodeOffsetPoint = { + "JPN-Reg-NodeOffsetPoint", + "JPN-Reg-NodeOffsetPoint", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_JPN_Reg_NodeOffsetPoint_constr_1, + asn_MBR_JPN_Reg_NodeOffsetPoint_1, + 2, /* Elements count */ + &asn_SPC_JPN_Reg_NodeOffsetPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c new file mode 100644 index 000000000..57a4bfd6d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-Reg-Position3D.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-Reg-Position3D.h" + +static asn_TYPE_member_t asn_MBR_JPN_Reg_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, latitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "latitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, longitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "longitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_Reg_Position3D, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_JPN_Elevation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "elevation" + }, +}; +static ber_tlv_tag_t asn_DEF_JPN_Reg_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_JPN_Reg_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_JPN_Reg_Position3D_specs_1 = { + sizeof(struct JPN_Reg_Position3D), + offsetof(struct JPN_Reg_Position3D, _asn_ctx), + asn_MAP_JPN_Reg_Position3D_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_JPN_Reg_Position3D = { + "JPN-Reg-Position3D", + "JPN-Reg-Position3D", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_Reg_Position3D_tags_1, + sizeof(asn_DEF_JPN_Reg_Position3D_tags_1) + /sizeof(asn_DEF_JPN_Reg_Position3D_tags_1[0]), /* 1 */ + asn_DEF_JPN_Reg_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_Reg_Position3D_tags_1) + /sizeof(asn_DEF_JPN_Reg_Position3D_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_JPN_Reg_Position3D_1, + 3, /* Elements count */ + &asn_SPC_JPN_Reg_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c b/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c new file mode 100644 index 000000000..701ec0a9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/JPN-TimeMark.c @@ -0,0 +1,150 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "JPN-TimeMark.h" + +static asn_TYPE_member_t asn_MBR_JPN_TimeMark_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Year, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Month, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Day, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, summerTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SummerTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "summerTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, holiday), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Holiday, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "holiday" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, dayofWeek), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DayOfWeek, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dayofWeek" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, hour), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Hour, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, minute), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Minute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, second), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Second, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "second" + }, + { ATF_NOFLAGS, 0, offsetof(struct JPN_TimeMark, tenthSecond), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TenthSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "tenthSecond" + }, +}; +static ber_tlv_tag_t asn_DEF_JPN_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_JPN_TimeMark_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_JPN_TimeMark_specs_1 = { + sizeof(struct JPN_TimeMark), + offsetof(struct JPN_TimeMark, _asn_ctx), + asn_MAP_JPN_TimeMark_tag2el_1, + 10, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_JPN_TimeMark = { + "JPN-TimeMark", + "JPN-TimeMark", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_JPN_TimeMark_tags_1, + sizeof(asn_DEF_JPN_TimeMark_tags_1) + /sizeof(asn_DEF_JPN_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_JPN_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_JPN_TimeMark_tags_1) + /sizeof(asn_DEF_JPN_TimeMark_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_JPN_TimeMark_1, + 10, /* Elements count */ + &asn_SPC_JPN_TimeMark_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c new file mode 100644 index 000000000..5f5d4efcb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Barrier.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Barrier.h" + +int +LaneAttributes_Barrier_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Barrier_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Barrier_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Barrier_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Barrier_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Barrier_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Barrier_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Barrier_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Barrier_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Barrier_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Barrier_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { + "LaneAttributes-Barrier", + "LaneAttributes-Barrier", + LaneAttributes_Barrier_free, + LaneAttributes_Barrier_print, + LaneAttributes_Barrier_constraint, + LaneAttributes_Barrier_decode_ber, + LaneAttributes_Barrier_encode_der, + LaneAttributes_Barrier_decode_xer, + LaneAttributes_Barrier_encode_xer, + LaneAttributes_Barrier_decode_uper, + LaneAttributes_Barrier_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Barrier_tags_1, + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Barrier_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c new file mode 100644 index 000000000..b20c6b250 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Bike.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Bike.h" + +int +LaneAttributes_Bike_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Bike_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Bike_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Bike_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Bike_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Bike_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Bike_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Bike_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Bike_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Bike_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Bike_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { + "LaneAttributes-Bike", + "LaneAttributes-Bike", + LaneAttributes_Bike_free, + LaneAttributes_Bike_print, + LaneAttributes_Bike_constraint, + LaneAttributes_Bike_decode_ber, + LaneAttributes_Bike_encode_der, + LaneAttributes_Bike_decode_xer, + LaneAttributes_Bike_encode_xer, + LaneAttributes_Bike_decode_uper, + LaneAttributes_Bike_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Bike_tags_1, + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Bike_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c new file mode 100644 index 000000000..643257c42 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Crosswalk.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Crosswalk.h" + +int +LaneAttributes_Crosswalk_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Crosswalk_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Crosswalk_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Crosswalk_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Crosswalk_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Crosswalk_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Crosswalk_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Crosswalk_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Crosswalk_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Crosswalk_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { + "LaneAttributes-Crosswalk", + "LaneAttributes-Crosswalk", + LaneAttributes_Crosswalk_free, + LaneAttributes_Crosswalk_print, + LaneAttributes_Crosswalk_constraint, + LaneAttributes_Crosswalk_decode_ber, + LaneAttributes_Crosswalk_encode_der, + LaneAttributes_Crosswalk_decode_xer, + LaneAttributes_Crosswalk_encode_xer, + LaneAttributes_Crosswalk_decode_uper, + LaneAttributes_Crosswalk_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Crosswalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Crosswalk_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c new file mode 100644 index 000000000..cc3012047 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Parking.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Parking.h" + +int +LaneAttributes_Parking_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Parking_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Parking_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Parking_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Parking_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Parking_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Parking_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Parking_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Parking_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Parking_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Parking_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { + "LaneAttributes-Parking", + "LaneAttributes-Parking", + LaneAttributes_Parking_free, + LaneAttributes_Parking_print, + LaneAttributes_Parking_constraint, + LaneAttributes_Parking_decode_ber, + LaneAttributes_Parking_encode_der, + LaneAttributes_Parking_decode_xer, + LaneAttributes_Parking_encode_xer, + LaneAttributes_Parking_decode_uper, + LaneAttributes_Parking_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Parking_tags_1, + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Parking_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c new file mode 100644 index 000000000..45dfd3944 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Sidewalk.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Sidewalk.h" + +int +LaneAttributes_Sidewalk_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Sidewalk_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Sidewalk_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Sidewalk_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Sidewalk_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Sidewalk_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Sidewalk_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Sidewalk_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Sidewalk_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Sidewalk_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { + "LaneAttributes-Sidewalk", + "LaneAttributes-Sidewalk", + LaneAttributes_Sidewalk_free, + LaneAttributes_Sidewalk_print, + LaneAttributes_Sidewalk_constraint, + LaneAttributes_Sidewalk_decode_ber, + LaneAttributes_Sidewalk_encode_der, + LaneAttributes_Sidewalk_decode_xer, + LaneAttributes_Sidewalk_encode_xer, + LaneAttributes_Sidewalk_decode_uper, + LaneAttributes_Sidewalk_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Sidewalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Sidewalk_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c new file mode 100644 index 000000000..2cc282482 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Striping.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Striping.h" + +int +LaneAttributes_Striping_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Striping_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Striping_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Striping_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Striping_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Striping_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Striping_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Striping_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Striping_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Striping_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Striping_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { + "LaneAttributes-Striping", + "LaneAttributes-Striping", + LaneAttributes_Striping_free, + LaneAttributes_Striping_print, + LaneAttributes_Striping_constraint, + LaneAttributes_Striping_decode_ber, + LaneAttributes_Striping_encode_der, + LaneAttributes_Striping_decode_xer, + LaneAttributes_Striping_encode_xer, + LaneAttributes_Striping_decode_uper, + LaneAttributes_Striping_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Striping_tags_1, + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Striping_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c new file mode 100644 index 000000000..e0b6c6102 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-TrackedVehicle.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-TrackedVehicle.h" + +int +LaneAttributes_TrackedVehicle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_TrackedVehicle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_TrackedVehicle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_TrackedVehicle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_TrackedVehicle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_TrackedVehicle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_TrackedVehicle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_TrackedVehicle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_TrackedVehicle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_TrackedVehicle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { + "LaneAttributes-TrackedVehicle", + "LaneAttributes-TrackedVehicle", + LaneAttributes_TrackedVehicle_free, + LaneAttributes_TrackedVehicle_print, + LaneAttributes_TrackedVehicle_constraint, + LaneAttributes_TrackedVehicle_decode_ber, + LaneAttributes_TrackedVehicle_encode_der, + LaneAttributes_TrackedVehicle_decode_xer, + LaneAttributes_TrackedVehicle_encode_xer, + LaneAttributes_TrackedVehicle_decode_uper, + LaneAttributes_TrackedVehicle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c new file mode 100644 index 000000000..a596e8ff1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes-Vehicle.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes-Vehicle.h" + +int +LaneAttributes_Vehicle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneAttributes_Vehicle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneAttributes_Vehicle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Vehicle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneAttributes_Vehicle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Vehicle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneAttributes_Vehicle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneAttributes_Vehicle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneAttributes_Vehicle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneAttributes_Vehicle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { + "LaneAttributes-Vehicle", + "LaneAttributes-Vehicle", + LaneAttributes_Vehicle_free, + LaneAttributes_Vehicle_print, + LaneAttributes_Vehicle_constraint, + LaneAttributes_Vehicle_decode_ber, + LaneAttributes_Vehicle_encode_der, + LaneAttributes_Vehicle_decode_xer, + LaneAttributes_Vehicle_encode_xer, + LaneAttributes_Vehicle_decode_uper, + LaneAttributes_Vehicle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_Vehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + &asn_PER_type_LaneAttributes_Vehicle_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneAttributes.c b/src/tmx/Asn_J2735/src/r41/LaneAttributes.c new file mode 100644 index 000000000..d892c2993 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneAttributes.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneAttributes.h" + +static asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDirection, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "directionalUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneSharing, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sharedWith" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_LaneTypeAttributes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneType" + }, + { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalLaneAttributes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_LaneAttributes_oms_1[] = { 3 }; +static ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { + sizeof(struct LaneAttributes), + offsetof(struct LaneAttributes, _asn_ctx), + asn_MAP_LaneAttributes_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_LaneAttributes_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { + "LaneAttributes", + "LaneAttributes", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneAttributes_tags_1, + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_LaneAttributes_1, + 4, /* Elements count */ + &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c b/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c new file mode 100644 index 000000000..6aed17efb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneConnectionID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneConnectionID.h" + +int +LaneConnectionID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LaneConnectionID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LaneConnectionID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneConnectionID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneConnectionID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneConnectionID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneConnectionID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneConnectionID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneConnectionID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneConnectionID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneConnectionID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { + "LaneConnectionID", + "LaneConnectionID", + LaneConnectionID_free, + LaneConnectionID_print, + LaneConnectionID_constraint, + LaneConnectionID_decode_ber, + LaneConnectionID_encode_der, + LaneConnectionID_decode_xer, + LaneConnectionID_encode_xer, + LaneConnectionID_decode_uper, + LaneConnectionID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneConnectionID_tags_1, + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + asn_DEF_LaneConnectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + &asn_PER_type_LaneConnectionID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c new file mode 100644 index 000000000..44824d4e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneDataAttribute.c @@ -0,0 +1,121 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneDataAttribute.h" + +static asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pathEndPointAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneCrownPointCenter" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneCrownPointLeft" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneCrownPointRight" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MergeDivergeNodeAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalLaneDataAttribute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { + sizeof(struct LaneDataAttribute), + offsetof(struct LaneDataAttribute, _asn_ctx), + offsetof(struct LaneDataAttribute, present), + sizeof(((struct LaneDataAttribute *)0)->present), + asn_MAP_LaneDataAttribute_tag2el_1, + 7, /* Count of tags in the map */ + 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { + "LaneDataAttribute", + "LaneDataAttribute", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_LaneDataAttribute_constr_1, + asn_MBR_LaneDataAttribute_1, + 7, /* Elements count */ + &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c new file mode 100644 index 000000000..1c5b52a1d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneDataAttributeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneDataAttributeList.h" + +static asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_LaneDataAttribute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { + sizeof(struct LaneDataAttributeList), + offsetof(struct LaneDataAttributeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { + "LaneDataAttributeList", + "LaneDataAttributeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneDataAttributeList_tags_1, + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + &asn_PER_type_LaneDataAttributeList_constr_1, + asn_MBR_LaneDataAttributeList_1, + 1, /* Single element */ + &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneDirection.c b/src/tmx/Asn_J2735/src/r41/LaneDirection.c new file mode 100644 index 000000000..7ca26e866 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneDirection.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneDirection.h" + +int +LaneDirection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneDirection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneDirection_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneDirection_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneDirection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneDirection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneDirection_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneDirection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneDirection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneDirection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneDirection_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneDirection_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneDirection = { + "LaneDirection", + "LaneDirection", + LaneDirection_free, + LaneDirection_print, + LaneDirection_constraint, + LaneDirection_decode_ber, + LaneDirection_encode_der, + LaneDirection_decode_xer, + LaneDirection_encode_xer, + LaneDirection_decode_uper, + LaneDirection_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneDirection_tags_1, + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + asn_DEF_LaneDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + &asn_PER_type_LaneDirection_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneID.c b/src/tmx/Asn_J2735/src/r41/LaneID.c new file mode 100644 index 000000000..a4354d1b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneID.h" + +int +LaneID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LaneID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LaneID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneID = { + "LaneID", + "LaneID", + LaneID_free, + LaneID_print, + LaneID_constraint, + LaneID_decode_ber, + LaneID_encode_der, + LaneID_decode_xer, + LaneID_encode_xer, + LaneID_decode_uper, + LaneID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneID_tags_1, + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + asn_DEF_LaneID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + &asn_PER_type_LaneID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneList.c b/src/tmx/Asn_J2735/src/r41/LaneList.c new file mode 100644 index 000000000..d3b2db84c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneList.h" + +static asn_per_constraints_t asn_PER_type_LaneList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_LaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { + sizeof(struct LaneList), + offsetof(struct LaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneList = { + "LaneList", + "LaneList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneList_tags_1, + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + asn_DEF_LaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + &asn_PER_type_LaneList_constr_1, + asn_MBR_LaneList_1, + 1, /* Single element */ + &asn_SPC_LaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneNumber.c b/src/tmx/Asn_J2735/src/r41/LaneNumber.c new file mode 100644 index 000000000..33a6d80d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneNumber.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneNumber.h" + +int +LaneNumber_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneNumber_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +LaneNumber_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneNumber_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneNumber_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneNumber_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneNumber_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneNumber_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneNumber_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneNumber_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneNumber_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneNumber_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneNumber_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneNumber_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneNumber = { + "LaneNumber", + "LaneNumber", + LaneNumber_free, + LaneNumber_print, + LaneNumber_constraint, + LaneNumber_decode_ber, + LaneNumber_encode_der, + LaneNumber_decode_xer, + LaneNumber_encode_xer, + LaneNumber_decode_uper, + LaneNumber_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneNumber_tags_1, + sizeof(asn_DEF_LaneNumber_tags_1) + /sizeof(asn_DEF_LaneNumber_tags_1[0]), /* 1 */ + asn_DEF_LaneNumber_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneNumber_tags_1) + /sizeof(asn_DEF_LaneNumber_tags_1[0]), /* 1 */ + &asn_PER_type_LaneNumber_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneSharing.c b/src/tmx/Asn_J2735/src/r41/LaneSharing.c new file mode 100644 index 000000000..e06b131dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneSharing.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneSharing.h" + +int +LaneSharing_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 10)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +LaneSharing_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +LaneSharing_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneSharing_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneSharing_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneSharing_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneSharing_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneSharing_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneSharing_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneSharing_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneSharing_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneSharing_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneSharing = { + "LaneSharing", + "LaneSharing", + LaneSharing_free, + LaneSharing_print, + LaneSharing_constraint, + LaneSharing_decode_ber, + LaneSharing_encode_der, + LaneSharing_decode_xer, + LaneSharing_encode_xer, + LaneSharing_decode_uper, + LaneSharing_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneSharing_tags_1, + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + asn_DEF_LaneSharing_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + &asn_PER_type_LaneSharing_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c new file mode 100644 index 000000000..78343df50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneTypeAttributes.c @@ -0,0 +1,131 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneTypeAttributes.h" + +static asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Vehicle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Crosswalk, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crosswalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Bike, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "bikeLane" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Sidewalk, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sidewalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Barrier, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "median" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Striping, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "striping" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_TrackedVehicle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "trackedVehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Parking, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "parking" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ +}; +static asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { + sizeof(struct LaneTypeAttributes), + offsetof(struct LaneTypeAttributes, _asn_ctx), + offsetof(struct LaneTypeAttributes, present), + sizeof(((struct LaneTypeAttributes *)0)->present), + asn_MAP_LaneTypeAttributes_tag2el_1, + 8, /* Count of tags in the map */ + 0, + 8 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { + "LaneTypeAttributes", + "LaneTypeAttributes", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_LaneTypeAttributes_constr_1, + asn_MBR_LaneTypeAttributes_1, + 8, /* Elements count */ + &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LaneWidth.c b/src/tmx/Asn_J2735/src/r41/LaneWidth.c new file mode 100644 index 000000000..119112687 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LaneWidth.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LaneWidth.h" + +int +LaneWidth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LaneWidth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LaneWidth_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LaneWidth_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LaneWidth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LaneWidth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LaneWidth_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LaneWidth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LaneWidth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LaneWidth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LaneWidth_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LaneWidth_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneWidth = { + "LaneWidth", + "LaneWidth", + LaneWidth_free, + LaneWidth_print, + LaneWidth_constraint, + LaneWidth_decode_ber, + LaneWidth_encode_der, + LaneWidth_decode_xer, + LaneWidth_encode_xer, + LaneWidth_decode_uper, + LaneWidth_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LaneWidth_tags_1, + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + asn_DEF_LaneWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + &asn_PER_type_LaneWidth_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Latitude.c b/src/tmx/Asn_J2735/src/r41/Latitude.c new file mode 100644 index 000000000..0a67c84ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Latitude.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Latitude.h" + +int +Latitude_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -900000000 && value <= 900000001)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Latitude_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Latitude_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Latitude_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Latitude_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Latitude_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Latitude_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Latitude_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Latitude_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Latitude_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Latitude_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Latitude_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Latitude_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Latitude = { + "Latitude", + "Latitude", + Latitude_free, + Latitude_print, + Latitude_constraint, + Latitude_decode_ber, + Latitude_encode_der, + Latitude_decode_xer, + Latitude_encode_xer, + Latitude_decode_uper, + Latitude_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Latitude_tags_1, + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + asn_DEF_Latitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + &asn_PER_type_Latitude_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c b/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c new file mode 100644 index 000000000..4506602c3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LatitudeDMS.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LatitudeDMS.h" + +int +LatitudeDMS_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32400000 && value <= 32400000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LatitudeDMS_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LatitudeDMS_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LatitudeDMS_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LatitudeDMS_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LatitudeDMS_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LatitudeDMS_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LatitudeDMS_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LatitudeDMS_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LatitudeDMS_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LatitudeDMS_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { + "LatitudeDMS", + "LatitudeDMS", + LatitudeDMS_free, + LatitudeDMS_print, + LatitudeDMS_constraint, + LatitudeDMS_decode_ber, + LatitudeDMS_encode_der, + LatitudeDMS_decode_xer, + LatitudeDMS_encode_xer, + LatitudeDMS_decode_uper, + LatitudeDMS_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LatitudeDMS_tags_1, + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + &asn_PER_type_LatitudeDMS_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c new file mode 100644 index 000000000..b83fa19c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LatitudeDMS2.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LatitudeDMS2.h" + +static asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLat, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "s" + }, +}; +static ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { + sizeof(struct LatitudeDMS2), + offsetof(struct LatitudeDMS2, _asn_ctx), + asn_MAP_LatitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { + "LatitudeDMS2", + "LatitudeDMS2", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LatitudeDMS2_tags_1, + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_LatitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LayerID.c b/src/tmx/Asn_J2735/src/r41/LayerID.c new file mode 100644 index 000000000..4936dea08 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LayerID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LayerID.h" + +int +LayerID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LayerID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LayerID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LayerID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LayerID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LayerID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LayerID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LayerID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LayerID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LayerID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LayerID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LayerID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LayerID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerID = { + "LayerID", + "LayerID", + LayerID_free, + LayerID_print, + LayerID_constraint, + LayerID_decode_ber, + LayerID_encode_der, + LayerID_decode_xer, + LayerID_encode_xer, + LayerID_decode_uper, + LayerID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LayerID_tags_1, + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + asn_DEF_LayerID_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + &asn_PER_type_LayerID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LayerType.c b/src/tmx/Asn_J2735/src/r41/LayerType.c new file mode 100644 index 000000000..d0ddd886d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LayerType.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LayerType.h" + +int +LayerType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +LayerType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +LayerType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LayerType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LayerType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LayerType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LayerType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LayerType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LayerType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LayerType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LayerType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LayerType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LayerType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 12, "mixedContent" }, + { 2, 14, "generalMapData" }, + { 3, 16, "intersectionData" }, + { 4, 9, "curveData" }, + { 5, 18, "roadwaySectionData" }, + { 6, 15, "parkingAreaData" }, + { 7, 14, "sharedLaneData" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_LayerType_enum2value_1[] = { + 4, /* curveData(4) */ + 2, /* generalMapData(2) */ + 3, /* intersectionData(3) */ + 1, /* mixedContent(1) */ + 0, /* none(0) */ + 6, /* parkingAreaData(6) */ + 5, /* roadwaySectionData(5) */ + 7 /* sharedLaneData(7) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { + asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerType = { + "LayerType", + "LayerType", + LayerType_free, + LayerType_print, + LayerType_constraint, + LayerType_decode_ber, + LayerType_encode_der, + LayerType_decode_xer, + LayerType_encode_xer, + LayerType_decode_uper, + LayerType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LayerType_tags_1, + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + asn_DEF_LayerType_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + &asn_PER_type_LayerType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LayerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LightbarInUse.c b/src/tmx/Asn_J2735/src/r41/LightbarInUse.c new file mode 100644 index 000000000..bbf3c695e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LightbarInUse.c @@ -0,0 +1,163 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LightbarInUse.h" + +int +LightbarInUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +LightbarInUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +LightbarInUse_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LightbarInUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LightbarInUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LightbarInUse_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LightbarInUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LightbarInUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LightbarInUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LightbarInUse_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LightbarInUse_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 10, "sirenInUse" }, + { 4, 19, "yellowCautionLights" }, + { 5, 16, "schooldBusLights" }, + { 6, 16, "arrowSignsActive" }, + { 7, 17, "slowMovingVehicle" }, + { 8, 9, "freqStops" }, + { 9, 8, "reserved" } +}; +static unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { + 6, /* arrowSignsActive(6) */ + 8, /* freqStops(8) */ + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 9, /* reserved(9) */ + 5, /* schooldBusLights(5) */ + 3, /* sirenInUse(3) */ + 7, /* slowMovingVehicle(7) */ + 0, /* unavailable(0) */ + 4 /* yellowCautionLights(4) */ +}; +static asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { + asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { + "LightbarInUse", + "LightbarInUse", + LightbarInUse_free, + LightbarInUse_print, + LightbarInUse_constraint, + LightbarInUse_decode_ber, + LightbarInUse_encode_der, + LightbarInUse_decode_xer, + LightbarInUse_encode_xer, + LightbarInUse_decode_uper, + LightbarInUse_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LightbarInUse_tags_1, + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + asn_DEF_LightbarInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + &asn_PER_type_LightbarInUse_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Location-quality.c b/src/tmx/Asn_J2735/src/r41/Location-quality.c new file mode 100644 index 000000000..ab0edafb2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Location-quality.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Location-quality.h" + +int +Location_quality_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +Location_quality_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +Location_quality_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Location_quality_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Location_quality_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Location_quality_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Location_quality_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Location_quality_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Location_quality_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Location_quality_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Location_quality_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Location_quality_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { + { 0, 13, "loc-qual-bt1m" }, + { 1, 13, "loc-qual-bt5m" }, + { 2, 14, "loc-qual-bt12m" }, + { 3, 14, "loc-qual-bt50m" }, + { 4, 15, "loc-qual-bt125m" }, + { 5, 15, "loc-qual-bt500m" }, + { 6, 16, "loc-qual-bt1250m" }, + { 7, 16, "loc-qual-unknown" } +}; +static unsigned int asn_MAP_Location_quality_enum2value_1[] = { + 6, /* loc-qual-bt1250m(6) */ + 4, /* loc-qual-bt125m(4) */ + 2, /* loc-qual-bt12m(2) */ + 0, /* loc-qual-bt1m(0) */ + 5, /* loc-qual-bt500m(5) */ + 3, /* loc-qual-bt50m(3) */ + 1, /* loc-qual-bt5m(1) */ + 7 /* loc-qual-unknown(7) */ +}; +static asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { + asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_quality = { + "Location-quality", + "Location-quality", + Location_quality_free, + Location_quality_print, + Location_quality_constraint, + Location_quality_decode_ber, + Location_quality_encode_der, + Location_quality_decode_xer, + Location_quality_encode_xer, + Location_quality_decode_uper, + Location_quality_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Location_quality_tags_1, + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + asn_DEF_Location_quality_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + &asn_PER_type_Location_quality_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_quality_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Location-tech.c b/src/tmx/Asn_J2735/src/r41/Location-tech.c new file mode 100644 index 000000000..167e89be6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Location-tech.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Location-tech.h" + +int +Location_tech_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +Location_tech_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +Location_tech_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Location_tech_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Location_tech_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Location_tech_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Location_tech_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Location_tech_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Location_tech_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Location_tech_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Location_tech_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Location_tech_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { + { 0, 16, "loc-tech-unknown" }, + { 1, 12, "loc-tech-GPS" }, + { 2, 13, "loc-tech-DGPS" }, + { 3, 14, "loc-tech-drGPS" }, + { 4, 15, "loc-tech-drDGPS" }, + { 5, 11, "loc-tech-dr" }, + { 6, 12, "loc-tech-nav" }, + { 31, 14, "loc-tech-fault" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_Location_tech_enum2value_1[] = { + 2, /* loc-tech-DGPS(2) */ + 1, /* loc-tech-GPS(1) */ + 5, /* loc-tech-dr(5) */ + 4, /* loc-tech-drDGPS(4) */ + 3, /* loc-tech-drGPS(3) */ + 7, /* loc-tech-fault(31) */ + 6, /* loc-tech-nav(6) */ + 0 /* loc-tech-unknown(0) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { + asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_tech = { + "Location-tech", + "Location-tech", + Location_tech_free, + Location_tech_print, + Location_tech_constraint, + Location_tech_decode_ber, + Location_tech_encode_der, + Location_tech_decode_xer, + Location_tech_encode_xer, + Location_tech_decode_uper, + Location_tech_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Location_tech_tags_1, + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + asn_DEF_Location_tech_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + &asn_PER_type_Location_tech_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_tech_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Longitude.c b/src/tmx/Asn_J2735/src/r41/Longitude.c new file mode 100644 index 000000000..7e627d2bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Longitude.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Longitude.h" + +int +Longitude_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1799999999 && value <= 1800000001)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Longitude_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Longitude_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Longitude_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Longitude_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Longitude_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Longitude_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Longitude_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Longitude_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Longitude_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Longitude_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Longitude_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Longitude_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Longitude = { + "Longitude", + "Longitude", + Longitude_free, + Longitude_print, + Longitude_constraint, + Longitude_decode_ber, + Longitude_encode_der, + Longitude_decode_xer, + Longitude_encode_xer, + Longitude_decode_uper, + Longitude_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Longitude_tags_1, + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + asn_DEF_Longitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + &asn_PER_type_Longitude_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c b/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c new file mode 100644 index 000000000..201a1cb71 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LongitudeDMS.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LongitudeDMS.h" + +int +LongitudeDMS_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64800000 && value <= 64800000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +LongitudeDMS_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +LongitudeDMS_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +LongitudeDMS_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +LongitudeDMS_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +LongitudeDMS_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +LongitudeDMS_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +LongitudeDMS_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +LongitudeDMS_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +LongitudeDMS_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + LongitudeDMS_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { + "LongitudeDMS", + "LongitudeDMS", + LongitudeDMS_free, + LongitudeDMS_print, + LongitudeDMS_constraint, + LongitudeDMS_decode_ber, + LongitudeDMS_encode_der, + LongitudeDMS_decode_xer, + LongitudeDMS_encode_xer, + LongitudeDMS_decode_uper, + LongitudeDMS_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LongitudeDMS_tags_1, + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + &asn_PER_type_LongitudeDMS_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c new file mode 100644 index 000000000..fa04d4ba7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/LongitudeDMS2.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "LongitudeDMS2.h" + +static asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLong, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "s" + }, +}; +static ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { + sizeof(struct LongitudeDMS2), + offsetof(struct LongitudeDMS2, _asn_ctx), + asn_MAP_LongitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { + "LongitudeDMS2", + "LongitudeDMS2", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_LongitudeDMS2_tags_1, + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_LongitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MUTCDCode.c b/src/tmx/Asn_J2735/src/r41/MUTCDCode.c new file mode 100644 index 000000000..fa91b7f2c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MUTCDCode.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MUTCDCode.h" + +int +MUTCDCode_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +MUTCDCode_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +MUTCDCode_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MUTCDCode_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MUTCDCode_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MUTCDCode_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MUTCDCode_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MUTCDCode_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MUTCDCode_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MUTCDCode_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MUTCDCode_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 10, "regulatory" }, + { 2, 7, "warning" }, + { 3, 11, "maintenance" }, + { 4, 15, "motoristService" }, + { 5, 5, "guide" }, + { 6, 3, "rec" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { + 5, /* guide(5) */ + 3, /* maintenance(3) */ + 4, /* motoristService(4) */ + 0, /* none(0) */ + 6, /* rec(6) */ + 1, /* regulatory(1) */ + 2 /* warning(2) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { + asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { + "MUTCDCode", + "MUTCDCode", + MUTCDCode_free, + MUTCDCode_print, + MUTCDCode_constraint, + MUTCDCode_decode_ber, + MUTCDCode_encode_der, + MUTCDCode_decode_xer, + MUTCDCode_encode_xer, + MUTCDCode_decode_uper, + MUTCDCode_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MUTCDCode_tags_1, + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + asn_DEF_MUTCDCode_tags_1, /* Same as above */ + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + &asn_PER_type_MUTCDCode_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c new file mode 100644 index 000000000..c9b7a407e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ManeuverAssistList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ManeuverAssistList.h" + +static asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { + sizeof(struct ManeuverAssistList), + offsetof(struct ManeuverAssistList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { + "ManeuverAssistList", + "ManeuverAssistList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ManeuverAssistList_tags_1, + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + &asn_PER_type_ManeuverAssistList_constr_1, + asn_MBR_ManeuverAssistList_1, + 1, /* Single element */ + &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MapData.c b/src/tmx/Asn_J2735/src/r41/MapData.c new file mode 100644 index 000000000..b5a92d3fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MapData.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MapData.h" + +static asn_TYPE_member_t asn_MBR_MapData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MapData, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 1, offsetof(struct MapData, msgSubID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgSubID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgSubID" + }, + { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgIssueRevision" + }, + { ATF_POINTER, 8, offsetof(struct MapData, layerType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "layerType" + }, + { ATF_POINTER, 7, offsetof(struct MapData, layerID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "layerID" + }, + { ATF_POINTER, 6, offsetof(struct MapData, intersections), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionGeometryList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "intersections" + }, + { ATF_POINTER, 5, offsetof(struct MapData, roadSegments), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "roadSegments" + }, + { ATF_POINTER, 4, offsetof(struct MapData, dataParameters), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DataParameters, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dataParameters" + }, + { ATF_POINTER, 3, offsetof(struct MapData, restrictionList), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "restrictionList" + }, + { ATF_POINTER, 2, offsetof(struct MapData, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalMapData, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, + { ATF_POINTER, 1, offsetof(struct MapData, crc), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_MapData_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9, 10 }; +static ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgIssueRevision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* layerID */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadSegments */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* dataParameters */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* restrictionList */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* regional */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { + sizeof(struct MapData), + offsetof(struct MapData, _asn_ctx), + asn_MAP_MapData_tag2el_1, + 11, /* Count of tags in the map */ + asn_MAP_MapData_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 10, /* Start extensions */ + 12 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData = { + "MapData", + "MapData", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MapData_tags_1, + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + asn_DEF_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_MapData_1, + 11, /* Elements count */ + &asn_SPC_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c new file mode 100644 index 000000000..811a46f44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MaxTimetoChange.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MaxTimetoChange.h" + +int +MaxTimetoChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2402)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MaxTimetoChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MaxTimetoChange_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MaxTimetoChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MaxTimetoChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MaxTimetoChange_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MaxTimetoChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MaxTimetoChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MaxTimetoChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MaxTimetoChange_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MaxTimetoChange_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { + "MaxTimetoChange", + "MaxTimetoChange", + MaxTimetoChange_free, + MaxTimetoChange_print, + MaxTimetoChange_constraint, + MaxTimetoChange_decode_ber, + MaxTimetoChange_encode_der, + MaxTimetoChange_decode_xer, + MaxTimetoChange_encode_xer, + MaxTimetoChange_decode_uper, + MaxTimetoChange_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MaxTimetoChange_tags_1, + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + &asn_PER_type_MaxTimetoChange_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c new file mode 100644 index 000000000..13f51e970 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MergeDivergeNodeAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MergeDivergeNodeAngle.h" + +int +MergeDivergeNodeAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180 && value <= 180)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MergeDivergeNodeAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MergeDivergeNodeAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MergeDivergeNodeAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MergeDivergeNodeAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MergeDivergeNodeAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MergeDivergeNodeAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MergeDivergeNodeAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MergeDivergeNodeAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MergeDivergeNodeAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { + "MergeDivergeNodeAngle", + "MergeDivergeNodeAngle", + MergeDivergeNodeAngle_free, + MergeDivergeNodeAngle_print, + MergeDivergeNodeAngle_constraint, + MergeDivergeNodeAngle_decode_ber, + MergeDivergeNodeAngle_encode_der, + MergeDivergeNodeAngle_decode_xer, + MergeDivergeNodeAngle_encode_xer, + MergeDivergeNodeAngle_decode_uper, + MergeDivergeNodeAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MergeDivergeNodeAngle_tags_1, + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + &asn_PER_type_MergeDivergeNodeAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c b/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c new file mode 100644 index 000000000..b32329e14 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MinTimetoChange.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MinTimetoChange.h" + +int +MinTimetoChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2402)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MinTimetoChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MinTimetoChange_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MinTimetoChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MinTimetoChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MinTimetoChange_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MinTimetoChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MinTimetoChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MinTimetoChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MinTimetoChange_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MinTimetoChange_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { + "MinTimetoChange", + "MinTimetoChange", + MinTimetoChange_free, + MinTimetoChange_print, + MinTimetoChange_constraint, + MinTimetoChange_decode_ber, + MinTimetoChange_encode_der, + MinTimetoChange_decode_xer, + MinTimetoChange_encode_xer, + MinTimetoChange_decode_uper, + MinTimetoChange_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MinTimetoChange_tags_1, + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MinTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + &asn_PER_type_MinTimetoChange_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Minute.c b/src/tmx/Asn_J2735/src/r41/Minute.c new file mode 100644 index 000000000..3122f6bd4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Minute.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Minute.h" + +int +Minute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Minute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Minute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Minute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Minute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Minute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Minute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Minute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Minute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Minute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Minute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Minute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Minute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Minute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Minute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Minute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Minute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Minute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Minute_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Minute = { + "Minute", + "Minute", + Minute_free, + Minute_print, + Minute_constraint, + Minute_decode_ber, + Minute_encode_der, + Minute_decode_xer, + Minute_encode_xer, + Minute_decode_uper, + Minute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Minute_tags_1, + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + asn_DEF_Minute_tags_1, /* Same as above */ + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + &asn_PER_type_Minute_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c new file mode 100644 index 000000000..1fb58ab19 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MinuteOfTheYear.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MinuteOfTheYear.h" + +int +MinuteOfTheYear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 527040)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MinuteOfTheYear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MinuteOfTheYear_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MinuteOfTheYear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MinuteOfTheYear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MinuteOfTheYear_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MinuteOfTheYear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MinuteOfTheYear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MinuteOfTheYear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MinuteOfTheYear_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MinuteOfTheYear_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { + "MinuteOfTheYear", + "MinuteOfTheYear", + MinuteOfTheYear_free, + MinuteOfTheYear_print, + MinuteOfTheYear_constraint, + MinuteOfTheYear_decode_ber, + MinuteOfTheYear_encode_der, + MinuteOfTheYear_decode_xer, + MinuteOfTheYear_encode_xer, + MinuteOfTheYear_decode_uper, + MinuteOfTheYear_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MinuteOfTheYear_tags_1, + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + &asn_PER_type_MinuteOfTheYear_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MinutesAngle.c b/src/tmx/Asn_J2735/src/r41/MinutesAngle.c new file mode 100644 index 000000000..0325ce70a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MinutesAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MinutesAngle.h" + +int +MinutesAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 59)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MinutesAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MinutesAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MinutesAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MinutesAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MinutesAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MinutesAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MinutesAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MinutesAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MinutesAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MinutesAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { + "MinutesAngle", + "MinutesAngle", + MinutesAngle_free, + MinutesAngle_print, + MinutesAngle_constraint, + MinutesAngle_decode_ber, + MinutesAngle_encode_der, + MinutesAngle_decode_xer, + MinutesAngle_encode_xer, + MinutesAngle_decode_uper, + MinutesAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MinutesAngle_tags_1, + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + asn_DEF_MinutesAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + &asn_PER_type_MinutesAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MinutesDuration.c b/src/tmx/Asn_J2735/src/r41/MinutesDuration.c new file mode 100644 index 000000000..4300a6f09 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MinutesDuration.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MinutesDuration.h" + +int +MinutesDuration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MinutesDuration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MinutesDuration_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MinutesDuration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MinutesDuration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MinutesDuration_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MinutesDuration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MinutesDuration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MinutesDuration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MinutesDuration_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MinutesDuration_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { + "MinutesDuration", + "MinutesDuration", + MinutesDuration_free, + MinutesDuration_print, + MinutesDuration_constraint, + MinutesDuration_decode_ber, + MinutesDuration_encode_der, + MinutesDuration_decode_xer, + MinutesDuration_encode_xer, + MinutesDuration_decode_uper, + MinutesDuration_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MinutesDuration_tags_1, + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + asn_DEF_MinutesDuration_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + &asn_PER_type_MinutesDuration_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c b/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c new file mode 100644 index 000000000..3654a439e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MobilityNeeds.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "MobilityNeeds.h" + +static asn_TYPE_member_t asn_MBR_MobilityNeeds_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityNeeds, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityNeedsType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "type" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityNeeds, count), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SeatCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "count" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityNeeds_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityNeeds_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* count */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MobilityNeeds_specs_1 = { + sizeof(struct MobilityNeeds), + offsetof(struct MobilityNeeds, _asn_ctx), + asn_MAP_MobilityNeeds_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityNeeds = { + "MobilityNeeds", + "MobilityNeeds", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MobilityNeeds_tags_1, + sizeof(asn_DEF_MobilityNeeds_tags_1) + /sizeof(asn_DEF_MobilityNeeds_tags_1[0]), /* 1 */ + asn_DEF_MobilityNeeds_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityNeeds_tags_1) + /sizeof(asn_DEF_MobilityNeeds_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_MobilityNeeds_1, + 2, /* Elements count */ + &asn_SPC_MobilityNeeds_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c b/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c new file mode 100644 index 000000000..a4a6f936e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MobilityNeedsList.c @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "MobilityNeedsList.h" + +#include "MobilityNeeds.h" +static asn_per_constraints_t asn_PER_type_MobilityNeedsList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_MobilityNeedsList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MobilityNeeds, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityNeedsList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_MobilityNeedsList_specs_1 = { + sizeof(struct MobilityNeedsList), + offsetof(struct MobilityNeedsList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityNeedsList = { + "MobilityNeedsList", + "MobilityNeedsList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MobilityNeedsList_tags_1, + sizeof(asn_DEF_MobilityNeedsList_tags_1) + /sizeof(asn_DEF_MobilityNeedsList_tags_1[0]), /* 1 */ + asn_DEF_MobilityNeedsList_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityNeedsList_tags_1) + /sizeof(asn_DEF_MobilityNeedsList_tags_1[0]), /* 1 */ + &asn_PER_type_MobilityNeedsList_constr_1, + asn_MBR_MobilityNeedsList_1, + 1, /* Single element */ + &asn_SPC_MobilityNeedsList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c b/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c new file mode 100644 index 000000000..d3809087e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MobilityNeedsType.c @@ -0,0 +1,149 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "MobilityNeedsType.h" + +int +MobilityNeedsType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +MobilityNeedsType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +MobilityNeedsType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MobilityNeedsType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MobilityNeedsType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MobilityNeedsType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MobilityNeedsType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MobilityNeedsType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MobilityNeedsType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MobilityNeedsType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MobilityNeedsType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MobilityNeedsType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MobilityNeedsType_value2enum_1[] = { + { 0, 14, "noSpecialNeeds" }, + { 1, 10, "wheelchair" }, + { 2, 9, "needsSeat" } +}; +static const unsigned int asn_MAP_MobilityNeedsType_enum2value_1[] = { + 2, /* needsSeat(2) */ + 0, /* noSpecialNeeds(0) */ + 1 /* wheelchair(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_MobilityNeedsType_specs_1 = { + asn_MAP_MobilityNeedsType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MobilityNeedsType_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MobilityNeedsType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityNeedsType = { + "MobilityNeedsType", + "MobilityNeedsType", + MobilityNeedsType_free, + MobilityNeedsType_print, + MobilityNeedsType_constraint, + MobilityNeedsType_decode_ber, + MobilityNeedsType_encode_der, + MobilityNeedsType_decode_xer, + MobilityNeedsType_encode_xer, + MobilityNeedsType_decode_uper, + MobilityNeedsType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MobilityNeedsType_tags_1, + sizeof(asn_DEF_MobilityNeedsType_tags_1) + /sizeof(asn_DEF_MobilityNeedsType_tags_1[0]), /* 1 */ + asn_DEF_MobilityNeedsType_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityNeedsType_tags_1) + /sizeof(asn_DEF_MobilityNeedsType_tags_1[0]), /* 1 */ + &asn_PER_type_MobilityNeedsType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MobilityNeedsType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c b/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c new file mode 100644 index 000000000..8e2425543 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ModeOfTransportType.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "ModeOfTransportType.h" + +int +ModeOfTransportType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +ModeOfTransportType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +ModeOfTransportType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ModeOfTransportType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ModeOfTransportType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ModeOfTransportType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ModeOfTransportType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ModeOfTransportType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ModeOfTransportType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ModeOfTransportType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ModeOfTransportType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ModeOfTransportType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ModeOfTransportType_value2enum_1[] = { + { 0, 12, "noPreference" }, + { 1, 7, "transit" }, + { 2, 4, "taxi" }, + { 3, 9, "rideShare" } +}; +static const unsigned int asn_MAP_ModeOfTransportType_enum2value_1[] = { + 0, /* noPreference(0) */ + 3, /* rideShare(3) */ + 2, /* taxi(2) */ + 1 /* transit(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_ModeOfTransportType_specs_1 = { + asn_MAP_ModeOfTransportType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ModeOfTransportType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ModeOfTransportType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ModeOfTransportType = { + "ModeOfTransportType", + "ModeOfTransportType", + ModeOfTransportType_free, + ModeOfTransportType_print, + ModeOfTransportType_constraint, + ModeOfTransportType_decode_ber, + ModeOfTransportType_encode_der, + ModeOfTransportType_decode_xer, + ModeOfTransportType_encode_xer, + ModeOfTransportType_decode_uper, + ModeOfTransportType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ModeOfTransportType_tags_1, + sizeof(asn_DEF_ModeOfTransportType_tags_1) + /sizeof(asn_DEF_ModeOfTransportType_tags_1[0]), /* 1 */ + asn_DEF_ModeOfTransportType_tags_1, /* Same as above */ + sizeof(asn_DEF_ModeOfTransportType_tags_1) + /sizeof(asn_DEF_ModeOfTransportType_tags_1[0]), /* 1 */ + &asn_PER_type_ModeOfTransportType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ModeOfTransportType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Month.c b/src/tmx/Asn_J2735/src/r41/Month.c new file mode 100644 index 000000000..68157f677 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Month.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Month.h" + +int +Month_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Month_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Month_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Month_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Month_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Month_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Month_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Month_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Month_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Month_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Month_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Month_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Month_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Month_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Month_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Month_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Month_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Month_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Month_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Month_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Month = { + "Month", + "Month", + Month_free, + Month_print, + Month_constraint, + Month_decode_ber, + Month_encode_der, + Month_decode_xer, + Month_encode_xer, + Month_decode_uper, + Month_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Month_tags_1, + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + asn_DEF_Month_tags_1, /* Same as above */ + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + &asn_PER_type_Month_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c new file mode 100644 index 000000000..e2d0795fe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MotorizedPropelledType.c @@ -0,0 +1,157 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "MotorizedPropelledType.h" + +int +MotorizedPropelledType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +MotorizedPropelledType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +MotorizedPropelledType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MotorizedPropelledType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MotorizedPropelledType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MotorizedPropelledType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MotorizedPropelledType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MotorizedPropelledType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MotorizedPropelledType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MotorizedPropelledType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MotorizedPropelledType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 10, "wheelChair" }, + { 3, 7, "bicycle" }, + { 4, 7, "scooter" }, + { 5, 19, "selfBalancingDevice" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { + 3, /* bicycle(3) */ + 1, /* otherTypes(1) */ + 4, /* scooter(4) */ + 5, /* selfBalancingDevice(5) */ + 0, /* unavailable(0) */ + 2 /* wheelChair(2) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { + asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { + "MotorizedPropelledType", + "MotorizedPropelledType", + MotorizedPropelledType_free, + MotorizedPropelledType_print, + MotorizedPropelledType_constraint, + MotorizedPropelledType_decode_ber, + MotorizedPropelledType_encode_der, + MotorizedPropelledType_decode_xer, + MotorizedPropelledType_encode_xer, + MotorizedPropelledType_decode_uper, + MotorizedPropelledType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MotorizedPropelledType_tags_1, + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + &asn_PER_type_MotorizedPropelledType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MovementEvent.c b/src/tmx/Asn_J2735/src/r41/MovementEvent.c new file mode 100644 index 000000000..a295790b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MovementEvent.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MovementEvent.h" + +static asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementPhaseState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "eventState" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeChangeDetails, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timing" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speeds" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalMovementEvent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; +static ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { + sizeof(struct MovementEvent), + offsetof(struct MovementEvent, _asn_ctx), + asn_MAP_MovementEvent_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_MovementEvent_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent = { + "MovementEvent", + "MovementEvent", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MovementEvent_tags_1, + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_MovementEvent_1, + 4, /* Elements count */ + &asn_SPC_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MovementEventList.c b/src/tmx/Asn_J2735/src/r41/MovementEventList.c new file mode 100644 index 000000000..62fe0ef7b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MovementEventList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MovementEventList.h" + +static asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { + sizeof(struct MovementEventList), + offsetof(struct MovementEventList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEventList = { + "MovementEventList", + "MovementEventList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MovementEventList_tags_1, + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + asn_DEF_MovementEventList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + &asn_PER_type_MovementEventList_constr_1, + asn_MBR_MovementEventList_1, + 1, /* Single element */ + &asn_SPC_MovementEventList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MovementList.c b/src/tmx/Asn_J2735/src/r41/MovementList.c new file mode 100644 index 000000000..c5ace2564 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MovementList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MovementList.h" + +static asn_per_constraints_t asn_PER_type_MovementList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_MovementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { + sizeof(struct MovementList), + offsetof(struct MovementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementList = { + "MovementList", + "MovementList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MovementList_tags_1, + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + asn_DEF_MovementList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + &asn_PER_type_MovementList_constr_1, + asn_MBR_MovementList_1, + 1, /* Single element */ + &asn_SPC_MovementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c b/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c new file mode 100644 index 000000000..e19e2b69c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MovementPhaseState.c @@ -0,0 +1,163 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MovementPhaseState.h" + +int +MovementPhaseState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +MovementPhaseState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +MovementPhaseState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MovementPhaseState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MovementPhaseState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MovementPhaseState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MovementPhaseState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MovementPhaseState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MovementPhaseState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MovementPhaseState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MovementPhaseState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 4, "dark" }, + { 2, 17, "stop-Then-Proceed" }, + { 3, 15, "stop-And-Remain" }, + { 4, 12, "pre-Movement" }, + { 5, 27, "permissive-Movement-Allowed" }, + { 6, 26, "protected-Movement-Allowed" }, + { 7, 20, "permissive-clearance" }, + { 8, 19, "protected-clearance" }, + { 9, 27, "caution-Conflicting-Traffic" } +}; +static unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { + 9, /* caution-Conflicting-Traffic(9) */ + 1, /* dark(1) */ + 5, /* permissive-Movement-Allowed(5) */ + 7, /* permissive-clearance(7) */ + 4, /* pre-Movement(4) */ + 6, /* protected-Movement-Allowed(6) */ + 8, /* protected-clearance(8) */ + 3, /* stop-And-Remain(3) */ + 2, /* stop-Then-Proceed(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { + asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { + "MovementPhaseState", + "MovementPhaseState", + MovementPhaseState_free, + MovementPhaseState_print, + MovementPhaseState_constraint, + MovementPhaseState_decode_ber, + MovementPhaseState_encode_der, + MovementPhaseState_decode_xer, + MovementPhaseState_encode_xer, + MovementPhaseState_decode_uper, + MovementPhaseState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MovementPhaseState_tags_1, + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + asn_DEF_MovementPhaseState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + &asn_PER_type_MovementPhaseState_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MovementState.c b/src/tmx/Asn_J2735/src/r41/MovementState.c new file mode 100644 index 000000000..4f26c599a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MovementState.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MovementState.h" + +static asn_TYPE_member_t asn_MBR_MovementState_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementState, movementName), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "movementName" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "signalGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementEventList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "state-time-speed" + }, + { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct MovementState, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalMovementState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; +static ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { + sizeof(struct MovementState), + offsetof(struct MovementState, _asn_ctx), + asn_MAP_MovementState_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_MovementState_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* Start extensions */ + 6 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementState = { + "MovementState", + "MovementState", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MovementState_tags_1, + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + asn_DEF_MovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_MovementState_1, + 5, /* Elements count */ + &asn_SPC_MovementState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MsgCRC.c b/src/tmx/Asn_J2735/src/r41/MsgCRC.c new file mode 100644 index 000000000..ba56537d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MsgCRC.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MsgCRC.h" + +int +MsgCRC_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +MsgCRC_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +MsgCRC_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MsgCRC_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MsgCRC_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MsgCRC_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MsgCRC_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MsgCRC_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MsgCRC_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MsgCRC_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MsgCRC_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MsgCRC_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MsgCRC = { + "MsgCRC", + "MsgCRC", + MsgCRC_free, + MsgCRC_print, + MsgCRC_constraint, + MsgCRC_decode_ber, + MsgCRC_encode_der, + MsgCRC_decode_xer, + MsgCRC_encode_xer, + MsgCRC_decode_uper, + MsgCRC_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MsgCRC_tags_1, + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + asn_DEF_MsgCRC_tags_1, /* Same as above */ + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + &asn_PER_type_MsgCRC_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MsgCount.c b/src/tmx/Asn_J2735/src/r41/MsgCount.c new file mode 100644 index 000000000..122b7d68f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MsgCount.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MsgCount.h" + +int +MsgCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +MsgCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +MsgCount_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MsgCount_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MsgCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MsgCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MsgCount_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MsgCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MsgCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MsgCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MsgCount_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MsgCount_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MsgCount_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MsgCount = { + "MsgCount", + "MsgCount", + MsgCount_free, + MsgCount_print, + MsgCount_constraint, + MsgCount_decode_ber, + MsgCount_encode_der, + MsgCount_decode_xer, + MsgCount_encode_xer, + MsgCount_decode_uper, + MsgCount_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MsgCount_tags_1, + sizeof(asn_DEF_MsgCount_tags_1) + /sizeof(asn_DEF_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_MsgCount_tags_1) + /sizeof(asn_DEF_MsgCount_tags_1[0]), /* 1 */ + &asn_PER_type_MsgCount_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c new file mode 100644 index 000000000..7a2fb00b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/MultiVehicleResponse.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MultiVehicleResponse.h" + +int +MultiVehicleResponse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +MultiVehicleResponse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +MultiVehicleResponse_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +MultiVehicleResponse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +MultiVehicleResponse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +MultiVehicleResponse_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +MultiVehicleResponse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +MultiVehicleResponse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +MultiVehicleResponse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +MultiVehicleResponse_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + MultiVehicleResponse_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "singleVehicle" }, + { 2, 12, "multiVehicle" }, + { 3, 8, "reserved" } +}; +static unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { + 2, /* multiVehicle(2) */ + 3, /* reserved(3) */ + 1, /* singleVehicle(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { + asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { + "MultiVehicleResponse", + "MultiVehicleResponse", + MultiVehicleResponse_free, + MultiVehicleResponse_print, + MultiVehicleResponse_constraint, + MultiVehicleResponse_decode_ber, + MultiVehicleResponse_encode_der, + MultiVehicleResponse_decode_xer, + MultiVehicleResponse_encode_xer, + MultiVehicleResponse_decode_uper, + MultiVehicleResponse_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_MultiVehicleResponse_tags_1, + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + &asn_PER_type_MultiVehicleResponse_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c b/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c new file mode 100644 index 000000000..57e3a54d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NMEA-Corrections.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NMEA-Corrections.h" + +static int +memb_wdCount_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_wdCount_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NMEA_Corrections_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Revision, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rev" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, msg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_MsgType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msg" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, wdCount), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_wdCount_constraint_1, + &asn_PER_memb_wdCount_constr_5, + 0, + "wdCount" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEA_Corrections, payload), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Payload, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "payload" + }, +}; +static ber_tlv_tag_t asn_DEF_NMEA_Corrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_NMEA_Corrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* payload */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_NMEA_Corrections_specs_1 = { + sizeof(struct NMEA_Corrections), + offsetof(struct NMEA_Corrections, _asn_ctx), + asn_MAP_NMEA_Corrections_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 4, /* Start extensions */ + 6 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Corrections = { + "NMEA-Corrections", + "NMEA-Corrections", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NMEA_Corrections_tags_1, + sizeof(asn_DEF_NMEA_Corrections_tags_1) + /sizeof(asn_DEF_NMEA_Corrections_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Corrections_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Corrections_tags_1) + /sizeof(asn_DEF_NMEA_Corrections_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_NMEA_Corrections_1, + 5, /* Elements count */ + &asn_SPC_NMEA_Corrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c new file mode 100644 index 000000000..f667cf655 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NMEA-MsgType.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NMEA-MsgType.h" + +int +NMEA_MsgType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +NMEA_MsgType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +NMEA_MsgType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NMEA_MsgType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NMEA_MsgType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NMEA_MsgType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NMEA_MsgType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NMEA_MsgType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NMEA_MsgType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NMEA_MsgType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NMEA_MsgType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { + "NMEA-MsgType", + "NMEA-MsgType", + NMEA_MsgType_free, + NMEA_MsgType_print, + NMEA_MsgType_constraint, + NMEA_MsgType_decode_ber, + NMEA_MsgType_encode_der, + NMEA_MsgType_decode_xer, + NMEA_MsgType_encode_xer, + NMEA_MsgType_decode_uper, + NMEA_MsgType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NMEA_MsgType_tags_1, + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + &asn_PER_type_NMEA_MsgType_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c b/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c new file mode 100644 index 000000000..e128bf077 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NMEA-Payload.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NMEA-Payload.h" + +int +NMEA_Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +NMEA_Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +NMEA_Payload_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NMEA_Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NMEA_Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NMEA_Payload_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NMEA_Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NMEA_Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NMEA_Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NMEA_Payload_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NMEA_Payload_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { + "NMEA-Payload", + "NMEA-Payload", + NMEA_Payload_free, + NMEA_Payload_print, + NMEA_Payload_constraint, + NMEA_Payload_decode_ber, + NMEA_Payload_encode_der, + NMEA_Payload_decode_xer, + NMEA_Payload_encode_xer, + NMEA_Payload_decode_uper, + NMEA_Payload_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NMEA_Payload_tags_1, + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + &asn_PER_type_NMEA_Payload_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c b/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c new file mode 100644 index 000000000..2caca3085 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NMEA-Revision.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NMEA-Revision.h" + +int +NMEA_Revision_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +NMEA_Revision_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +NMEA_Revision_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NMEA_Revision_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NMEA_Revision_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NMEA_Revision_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NMEA_Revision_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NMEA_Revision_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NMEA_Revision_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NMEA_Revision_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NMEA_Revision_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "reserved" }, + { 10, 4, "rev1" }, + { 20, 4, "rev2" }, + { 30, 4, "rev3" }, + { 40, 4, "rev4" }, + { 50, 4, "rev5" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { + 1, /* reserved(1) */ + 2, /* rev1(10) */ + 3, /* rev2(20) */ + 4, /* rev3(30) */ + 5, /* rev4(40) */ + 6, /* rev5(50) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { + asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { + "NMEA-Revision", + "NMEA-Revision", + NMEA_Revision_free, + NMEA_Revision_print, + NMEA_Revision_constraint, + NMEA_Revision_decode_ber, + NMEA_Revision_encode_der, + NMEA_Revision_decode_xer, + NMEA_Revision_encode_xer, + NMEA_Revision_decode_uper, + NMEA_Revision_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NMEA_Revision_tags_1, + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + &asn_PER_type_NMEA_Revision_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c b/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c new file mode 100644 index 000000000..881b308b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NTCIPVehicleclass.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NTCIPVehicleclass.h" + +int +NTCIPVehicleclass_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +NTCIPVehicleclass_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +NTCIPVehicleclass_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NTCIPVehicleclass_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NTCIPVehicleclass_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NTCIPVehicleclass_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NTCIPVehicleclass_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NTCIPVehicleclass_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NTCIPVehicleclass_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NTCIPVehicleclass_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NTCIPVehicleclass_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NTCIPVehicleclass_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_NTCIPVehicleclass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NTCIPVehicleclass = { + "NTCIPVehicleclass", + "NTCIPVehicleclass", + NTCIPVehicleclass_free, + NTCIPVehicleclass_print, + NTCIPVehicleclass_constraint, + NTCIPVehicleclass_decode_ber, + NTCIPVehicleclass_encode_der, + NTCIPVehicleclass_decode_xer, + NTCIPVehicleclass_encode_xer, + NTCIPVehicleclass_decode_uper, + NTCIPVehicleclass_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NTCIPVehicleclass_tags_1, + sizeof(asn_DEF_NTCIPVehicleclass_tags_1) + /sizeof(asn_DEF_NTCIPVehicleclass_tags_1[0]), /* 1 */ + asn_DEF_NTCIPVehicleclass_tags_1, /* Same as above */ + sizeof(asn_DEF_NTCIPVehicleclass_tags_1) + /sizeof(asn_DEF_NTCIPVehicleclass_tags_1[0]), /* 1 */ + &asn_PER_type_NTCIPVehicleclass_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c b/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c new file mode 100644 index 000000000..1554220f8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NativeEnumerated.c @@ -0,0 +1,207 @@ +/*- + * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeEnumerated basic type description. + */ +static ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { + "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ + "ENUMERATED", + NativeInteger_free, + NativeInteger_print, + asn_generic_no_constraint, + NativeInteger_decode_ber, + NativeInteger_encode_der, + NativeInteger_decode_xer, + NativeEnumerated_encode_xer, + NativeEnumerated_decode_uper, + NativeEnumerated_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NativeEnumerated_tags, + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + asn_DEF_NativeEnumerated_tags, /* Same as above */ + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +asn_enc_rval_t +NativeEnumerated_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er; + const long *native = (const long *)sptr; + const asn_INTEGER_enum_map_t *el; + + (void)ilevel; + (void)flags; + + if(!native) _ASN_ENCODE_FAILED; + + el = INTEGER_map_value2enum(specs, *native); + if(el) { + size_t srcsize = el->enum_len + 5; + char *src = (char *)alloca(srcsize); + + er.encoded = snprintf(src, srcsize, "<%s/>", el->enum_name); + assert(er.encoded > 0 && (size_t)er.encoded < srcsize); + if(cb(src, er.encoded, app_key) < 0) _ASN_ENCODE_FAILED; + _ASN_ENCODED_OK(er); + } else { + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + _ASN_ENCODE_FAILED; + } +} + +asn_dec_rval_t +NativeEnumerated_decode_uper(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + asn_INTEGER_specifics_t *specs = (asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->per_constraints) ct = &td->per_constraints->value; + else _ASN_DECODE_FAILED; /* Mandatory! */ + if(!specs) _ASN_DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) _ASN_DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) _ASN_DECODE_STARVED; + if(inext) ct = 0; + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) _ASN_DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + _ASN_DECODE_FAILED; + } else { + if(!specs->extension) + _ASN_DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + value = uper_get_nsnnwn(pd); + if(value < 0) _ASN_DECODE_STARVED; + value += specs->extension - 1; + if(value >= specs->map_count) + _ASN_DECODE_FAILED; + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +static int +NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { + const asn_INTEGER_enum_map_t *a = ap; + const asn_INTEGER_enum_map_t *b = bp; + if(a->nat_value == b->nat_value) + return 0; + if(a->nat_value < b->nat_value) + return -1; + return 1; +} + +asn_enc_rval_t +NativeEnumerated_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_INTEGER_specifics_t *specs = (asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er; + long native, value; + asn_per_constraint_t *ct; + int inext = 0; + asn_INTEGER_enum_map_t key; + asn_INTEGER_enum_map_t *kf; + + if(!sptr) _ASN_ENCODE_FAILED; + if(!specs) _ASN_ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->per_constraints) ct = &td->per_constraints->value; + else _ASN_ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(long *)sptr; + if(native < 0) _ASN_ENCODE_FAILED; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + _ASN_ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + _ASN_ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + _ASN_ENCODE_FAILED; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + _ASN_ENCODE_FAILED; + _ASN_ENCODED_OK(er); + } + + if(!specs->extension) + _ASN_ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) + _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(er); +} + diff --git a/src/tmx/Asn_J2735/src/r41/NativeInteger.c b/src/tmx/Asn_J2735/src/r41/NativeInteger.c new file mode 100644 index 000000000..cffd0be8e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NativeInteger.c @@ -0,0 +1,332 @@ +/*- + * Copyright (c) 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeInteger basic type description. + */ +static ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NativeInteger = { + "INTEGER", /* The ASN.1 type is still INTEGER */ + "INTEGER", + NativeInteger_free, + NativeInteger_print, + asn_generic_no_constraint, + NativeInteger_decode_ber, + NativeInteger_encode_der, + NativeInteger_decode_xer, + NativeInteger_encode_xer, + NativeInteger_decode_uper, /* Unaligned PER decoder */ + NativeInteger_encode_uper, /* Unaligned PER encoder */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NativeInteger_tags, + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + asn_DEF_NativeInteger_tags, /* Same as above */ + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Decode INTEGER type. + */ +asn_dec_rval_t +NativeInteger_decode_ber(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + void **nint_ptr, const void *buf_ptr, size_t size, int tag_mode) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + long *native = (long *)*nint_ptr; + asn_dec_rval_t rval; + ber_tlv_len_t length; + + /* + * If the structure is not there, allocate it. + */ + if(native == NULL) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(native == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * ASN.1 encoded INTEGER: buf_ptr, length + * Fill the native, at the same time checking for overflow. + * If overflow occured, return with RC_FAIL. + */ + { + INTEGER_t tmp; + union { + const void *constbuf; + void *nonconstbuf; + } unconst_buf; + long l; + + unconst_buf.constbuf = buf_ptr; + tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; + tmp.size = length; + + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&tmp, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + + *native = l; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", + (long)rval.consumed, (long)length, td->name, (long)*native); + + return rval; +} + +/* + * Encode the NativeInteger using the standard INTEGER type DER encoder. + */ +asn_enc_rval_t +NativeInteger_encode_der(asn_TYPE_descriptor_t *sd, void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + unsigned long native = *(unsigned long *)ptr; /* Disable sign ext. */ + asn_enc_rval_t erval; + INTEGER_t tmp; + +#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ + + tmp.buf = (uint8_t *)&native; + tmp.size = sizeof(native); + +#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ + uint8_t buf[sizeof(native)]; + uint8_t *p; + + /* Prepare a fake INTEGER */ + for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) + *p = (uint8_t)native; + + tmp.buf = buf; + tmp.size = sizeof(buf); +#endif /* WORDS_BIGENDIAN */ + + /* Encode fake INTEGER */ + erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); + if(erval.encoded == -1) { + assert(erval.structure_ptr == &tmp); + erval.structure_ptr = ptr; + } + return erval; +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +asn_dec_rval_t +NativeInteger_decode_xer(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + INTEGER_t st; + void *st_ptr = (void *)&st; + long *native = (long *)*sptr; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) _ASN_DECODE_FAILED; + } + + memset(&st, 0, sizeof(st)); + rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, + opt_mname, buf_ptr, size); + if(rval.code == RC_OK) { + long l; + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&st, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + } else { + *native = l; + } + } else { + /* + * Cannot restart from the middle; + * there is no place to save state in the native type. + * Request a continuation from the very beginning. + */ + rval.consumed = 0; + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); + return rval; +} + + +asn_enc_rval_t +NativeInteger_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit int */ + asn_enc_rval_t er; + const long *native = (const long *)sptr; + + (void)ilevel; + (void)flags; + + if(!native) _ASN_ENCODE_FAILED; + + er.encoded = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) + || cb(scratch, er.encoded, app_key) < 0) + _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(er); +} + +asn_dec_rval_t +NativeInteger_decode_uper(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) _ASN_DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er; + long native; + INTEGER_t tmpint; + + if(!sptr) _ASN_ENCODE_FAILED; + + native = *(long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) + _ASN_ENCODE_FAILED; + er = INTEGER_encode_uper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} + +/* + * INTEGER specific human-readable output. + */ +int +NativeInteger_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; + const long *native = (const long *)sptr; + char scratch[32]; /* Enough for 64-bit int */ + int ret; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(native) { + ret = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + assert(ret > 0 && (size_t)ret < sizeof(scratch)); + return (cb(scratch, ret, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +NativeInteger_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { + + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", + td->name, contents_only, ptr); + + if(!contents_only) { + FREEMEM(ptr); + } +} + diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c new file mode 100644 index 000000000..7039148a6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-LLdms-48b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-LLdms-48b.h" + +static asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { + sizeof(struct Node_LLdms_48b), + offsetof(struct Node_LLdms_48b, _asn_ctx), + asn_MAP_Node_LLdms_48b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { + "Node-LLdms-48b", + "Node-LLdms-48b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_LLdms_48b_tags_1, + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_LLdms_48b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c new file mode 100644 index 000000000..a39433577 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-LLdms-80b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-LLdms-80b.h" + +static asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { + sizeof(struct Node_LLdms_80b), + offsetof(struct Node_LLdms_80b, _asn_ctx), + asn_MAP_Node_LLdms_80b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { + "Node-LLdms-80b", + "Node-LLdms-80b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_LLdms_80b_tags_1, + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_LLdms_80b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c new file mode 100644 index 000000000..23c1f4e13 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-LLmD-64b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-LLmD-64b.h" + +static asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { + sizeof(struct Node_LLmD_64b), + offsetof(struct Node_LLmD_64b, _asn_ctx), + asn_MAP_Node_LLmD_64b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { + "Node-LLmD-64b", + "Node-LLmD-64b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_LLmD_64b_tags_1, + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_LLmD_64b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c new file mode 100644 index 000000000..63dbb7f73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-20b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-20b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { + sizeof(struct Node_XY_20b), + offsetof(struct Node_XY_20b, _asn_ctx), + asn_MAP_Node_XY_20b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { + "Node-XY-20b", + "Node-XY-20b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_20b_tags_1, + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_20b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_20b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c new file mode 100644 index 000000000..f8ed57a6d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-22b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-22b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { + sizeof(struct Node_XY_22b), + offsetof(struct Node_XY_22b, _asn_ctx), + asn_MAP_Node_XY_22b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { + "Node-XY-22b", + "Node-XY-22b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_22b_tags_1, + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_22b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_22b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c new file mode 100644 index 000000000..62a13e852 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-24b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-24b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { + sizeof(struct Node_XY_24b), + offsetof(struct Node_XY_24b, _asn_ctx), + asn_MAP_Node_XY_24b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { + "Node-XY-24b", + "Node-XY-24b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_24b_tags_1, + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_24b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_24b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c new file mode 100644 index 000000000..5a15d3093 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-26b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-26b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { + sizeof(struct Node_XY_26b), + offsetof(struct Node_XY_26b, _asn_ctx), + asn_MAP_Node_XY_26b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { + "Node-XY-26b", + "Node-XY-26b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_26b_tags_1, + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_26b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_26b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c new file mode 100644 index 000000000..ad9837eee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-28b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-28b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { + sizeof(struct Node_XY_28b), + offsetof(struct Node_XY_28b, _asn_ctx), + asn_MAP_Node_XY_28b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { + "Node-XY-28b", + "Node-XY-28b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_28b_tags_1, + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_28b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_28b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c b/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c new file mode 100644 index 000000000..629ad4793 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node-XY-32b.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node-XY-32b.h" + +static asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "y" + }, +}; +static ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { + sizeof(struct Node_XY_32b), + offsetof(struct Node_XY_32b, _asn_ctx), + asn_MAP_Node_XY_32b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { + "Node-XY-32b", + "Node-XY-32b", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_XY_32b_tags_1, + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_32b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_XY_32b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Node.c b/src/tmx/Asn_J2735/src/r41/Node.c new file mode 100644 index 000000000..083d8c234 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Node.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Node.h" + +static asn_TYPE_member_t asn_MBR_Node_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPoint, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "delta" + }, + { ATF_POINTER, 1, offsetof(struct Node, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "attributes" + }, +}; +static int asn_MAP_Node_oms_1[] = { 1 }; +static ber_tlv_tag_t asn_DEF_Node_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Node_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Node_specs_1 = { + sizeof(struct Node), + offsetof(struct Node, _asn_ctx), + asn_MAP_Node_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_Node_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Node = { + "Node", + "Node", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Node_tags_1, + sizeof(asn_DEF_Node_tags_1) + /sizeof(asn_DEF_Node_tags_1[0]), /* 1 */ + asn_DEF_Node_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_tags_1) + /sizeof(asn_DEF_Node_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Node_1, + 2, /* Elements count */ + &asn_SPC_Node_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttribute.c b/src/tmx/Asn_J2735/src/r41/NodeAttribute.c new file mode 100644 index 000000000..11a1999d4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeAttribute.c @@ -0,0 +1,169 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeAttribute.h" + +int +NodeAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +NodeAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +NodeAttribute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NodeAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NodeAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NodeAttribute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NodeAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NodeAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NodeAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NodeAttribute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NodeAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NodeAttribute_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_NodeAttribute_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_NodeAttribute_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_NodeAttribute_specs_1 = { + asn_MAP_NodeAttribute_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttribute_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_NodeAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttribute = { + "NodeAttribute", + "NodeAttribute", + NodeAttribute_free, + NodeAttribute_print, + NodeAttribute_constraint, + NodeAttribute_decode_ber, + NodeAttribute_encode_der, + NodeAttribute_decode_xer, + NodeAttribute_encode_xer, + NodeAttribute_decode_uper, + NodeAttribute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NodeAttribute_tags_1, + sizeof(asn_DEF_NodeAttribute_tags_1) + /sizeof(asn_DEF_NodeAttribute_tags_1[0]), /* 1 */ + asn_DEF_NodeAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttribute_tags_1) + /sizeof(asn_DEF_NodeAttribute_tags_1[0]), /* 1 */ + &asn_PER_type_NodeAttribute_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c b/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c new file mode 100644 index 000000000..54fff39dd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeAttributeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeAttributeList.h" + +static asn_per_constraints_t asn_PER_type_NodeAttributeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeAttributeList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttribute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_NodeAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_NodeAttributeList_specs_1 = { + sizeof(struct NodeAttributeList), + offsetof(struct NodeAttributeList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeList = { + "NodeAttributeList", + "NodeAttributeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NodeAttributeList_tags_1, + sizeof(asn_DEF_NodeAttributeList_tags_1) + /sizeof(asn_DEF_NodeAttributeList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeList_tags_1) + /sizeof(asn_DEF_NodeAttributeList_tags_1[0]), /* 1 */ + &asn_PER_type_NodeAttributeList_constr_1, + asn_MBR_NodeAttributeList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c b/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c new file mode 100644 index 000000000..f7296461d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeAttributeSet.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeAttributeSet.h" + +static asn_TYPE_member_t asn_MBR_NodeAttributeSet_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSet, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSet, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSet, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSet, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSet, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalNodeAttributeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSet, dWidth), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dWidth" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSet, dElevation), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dElevation" + }, +}; +static int asn_MAP_NodeAttributeSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static ber_tlv_tag_t asn_DEF_NodeAttributeSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_NodeAttributeSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* regional */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* dElevation */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSet_specs_1 = { + sizeof(struct NodeAttributeSet), + offsetof(struct NodeAttributeSet, _asn_ctx), + asn_MAP_NodeAttributeSet_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSet_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 6, /* Start extensions */ + 8 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSet = { + "NodeAttributeSet", + "NodeAttributeSet", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NodeAttributeSet_tags_1, + sizeof(asn_DEF_NodeAttributeSet_tags_1) + /sizeof(asn_DEF_NodeAttributeSet_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSet_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSet_tags_1) + /sizeof(asn_DEF_NodeAttributeSet_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_NodeAttributeSet_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeList.c b/src/tmx/Asn_J2735/src/r41/NodeList.c new file mode 100644 index 000000000..f2e840486 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeList.h" + +static asn_per_constraints_t asn_PER_type_NodeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Offsets, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_NodeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_NodeList_specs_1 = { + sizeof(struct NodeList), + offsetof(struct NodeList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeList = { + "NodeList", + "NodeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NodeList_tags_1, + sizeof(asn_DEF_NodeList_tags_1) + /sizeof(asn_DEF_NodeList_tags_1[0]), /* 1 */ + asn_DEF_NodeList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeList_tags_1) + /sizeof(asn_DEF_NodeList_tags_1[0]), /* 1 */ + &asn_PER_type_NodeList_constr_1, + asn_MBR_NodeList_1, + 1, /* Single element */ + &asn_SPC_NodeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeList2.c b/src/tmx/Asn_J2735/src/r41/NodeList2.c new file mode 100644 index 000000000..70360a712 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeList2.c @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeList2.h" + +static asn_per_constraints_t asn_PER_type_NodeList2_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeList2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeList2, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nodes" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeList2, choice.computed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ComputedLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "computed" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_NodeList2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ +}; +static asn_CHOICE_specifics_t asn_SPC_NodeList2_specs_1 = { + sizeof(struct NodeList2), + offsetof(struct NodeList2, _asn_ctx), + offsetof(struct NodeList2, present), + sizeof(((struct NodeList2 *)0)->present), + asn_MAP_NodeList2_tag2el_1, + 2, /* Count of tags in the map */ + 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeList2 = { + "NodeList2", + "NodeList2", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_NodeList2_constr_1, + asn_MBR_NodeList2_1, + 2, /* Elements count */ + &asn_SPC_NodeList2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c new file mode 100644 index 000000000..537b9e2a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeOffsetPoint.c @@ -0,0 +1,131 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeOffsetPoint.h" + +static asn_per_constraints_t asn_PER_type_NodeOffsetPoint_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeOffsetPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_20b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_22b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_26b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_28b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_XY6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_32b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-XY6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPoint, choice.node_Regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalNodeOffsetPoint, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node-Regional" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_NodeOffsetPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* node-Regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_NodeOffsetPoint_specs_1 = { + sizeof(struct NodeOffsetPoint), + offsetof(struct NodeOffsetPoint, _asn_ctx), + offsetof(struct NodeOffsetPoint, present), + sizeof(((struct NodeOffsetPoint *)0)->present), + asn_MAP_NodeOffsetPoint_tag2el_1, + 8, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPoint = { + "NodeOffsetPoint", + "NodeOffsetPoint", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_NodeOffsetPoint_constr_1, + asn_MBR_NodeOffsetPoint_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NodeSet.c b/src/tmx/Asn_J2735/src/r41/NodeSet.c new file mode 100644 index 000000000..f8cd69c31 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NodeSet.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "NodeSet.h" + +static asn_per_constraints_t asn_PER_type_NodeSet_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeSet_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Node, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_NodeSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_NodeSet_specs_1 = { + sizeof(struct NodeSet), + offsetof(struct NodeSet, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSet = { + "NodeSet", + "NodeSet", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NodeSet_tags_1, + sizeof(asn_DEF_NodeSet_tags_1) + /sizeof(asn_DEF_NodeSet_tags_1[0]), /* 1 */ + asn_DEF_NodeSet_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSet_tags_1) + /sizeof(asn_DEF_NodeSet_tags_1[0]), /* 1 */ + &asn_PER_type_NodeSet_constr_1, + asn_MBR_NodeSet_1, + 1, /* Single element */ + &asn_SPC_NodeSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c new file mode 100644 index 000000000..95a2fa378 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/NumberOfParticipantsInCluster.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "NumberOfParticipantsInCluster.h" + +int +NumberOfParticipantsInCluster_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +NumberOfParticipantsInCluster_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +NumberOfParticipantsInCluster_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +NumberOfParticipantsInCluster_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +NumberOfParticipantsInCluster_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +NumberOfParticipantsInCluster_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +NumberOfParticipantsInCluster_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +NumberOfParticipantsInCluster_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +NumberOfParticipantsInCluster_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + NumberOfParticipantsInCluster_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "small" }, + { 2, 6, "medium" }, + { 3, 5, "large" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { + 3, /* large(3) */ + 2, /* medium(2) */ + 1, /* small(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { + asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { + "NumberOfParticipantsInCluster", + "NumberOfParticipantsInCluster", + NumberOfParticipantsInCluster_free, + NumberOfParticipantsInCluster_print, + NumberOfParticipantsInCluster_constraint, + NumberOfParticipantsInCluster_decode_ber, + NumberOfParticipantsInCluster_encode_der, + NumberOfParticipantsInCluster_decode_xer, + NumberOfParticipantsInCluster_encode_xer, + NumberOfParticipantsInCluster_decode_uper, + NumberOfParticipantsInCluster_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_NumberOfParticipantsInCluster_tags_1, + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + &asn_PER_type_NumberOfParticipantsInCluster_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c b/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c new file mode 100644 index 000000000..f2eec13aa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/OCTET_STRING.c @@ -0,0 +1,1805 @@ +/*- + * Copyright (c) 2003, 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ +#include + +/* + * OCTET STRING basic type description. + */ +static ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +static asn_OCTET_STRING_specifics_t asn_DEF_OCTET_STRING_specs = { + sizeof(OCTET_STRING_t), + offsetof(OCTET_STRING_t, _asn_ctx), + ASN_OSUBV_STR +}; +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; +asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { + "OCTET STRING", /* Canonical name */ + "OCTET_STRING", /* XML tag name */ + OCTET_STRING_free, + OCTET_STRING_print, /* non-ascii stuff, generally */ + asn_generic_no_constraint, + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, + OCTET_STRING_decode_uper, /* Unaligned PER decoder */ + OCTET_STRING_encode_uper, /* Unaligned PER encoder */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_OCTET_STRING_tags, + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + asn_DEF_OCTET_STRING_tags, /* Same as above */ + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_DEF_OCTET_STRING_specs +}; + +#undef _CH_PHASE +#undef NEXT_PHASE +#undef PREV_PHASE +#define _CH_PHASE(ctx, inc) do { \ + if(ctx->phase == 0) \ + ctx->context = 0; \ + ctx->phase += inc; \ + } while(0) +#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) +#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +#undef APPEND +#define APPEND(bufptr, bufsize) do { \ + size_t _bs = (bufsize); /* Append size */ \ + size_t _ns = ctx->context; /* Allocated now */ \ + size_t _es = st->size + _bs; /* Expected size */ \ + /* int is really a typeof(st->size): */ \ + if((int)_es < 0) RETURN(RC_FAIL); \ + if(_ns <= _es) { \ + void *ptr; \ + /* Be nice and round to the memory allocator */ \ + do { _ns = _ns ? _ns << 1 : 16; } \ + while(_ns <= _es); \ + /* int is really a typeof(st->size): */ \ + if((int)_ns < 0) RETURN(RC_FAIL); \ + ptr = REALLOC(st->buf, _ns); \ + if(ptr) { \ + st->buf = (uint8_t *)ptr; \ + ctx->context = _ns; \ + } else { \ + RETURN(RC_FAIL); \ + } \ + ASN_DEBUG("Reallocating into %ld", (long)_ns); \ + } \ + memcpy(st->buf + st->size, bufptr, _bs); \ + /* Convenient nul-termination */ \ + st->buf[_es] = '\0'; \ + st->size = _es; \ + } while(0) + +/* + * The main reason why ASN.1 is still alive is that too much time and effort + * is necessary for learning it more or less adequately, thus creating a gut + * necessity to demonstrate that aquired skill everywhere afterwards. + * No, I am not going to explain what the following stuff is. + */ +struct _stack_el { + ber_tlv_len_t left; /* What's left to read (or -1) */ + ber_tlv_len_t got; /* What was actually processed */ + int cont_level; /* Depth of subcontainment */ + int want_nulls; /* Want null "end of content" octets? */ + int bits_chopped; /* Flag in BIT STRING mode */ + ber_tlv_tag_t tag; /* For debugging purposes */ + struct _stack_el *prev; + struct _stack_el *next; +}; +struct _stack { + struct _stack_el *tail; + struct _stack_el *cur_ptr; +}; + +static struct _stack_el * +OS__add_stack_el(struct _stack *st) { + struct _stack_el *nel; + + /* + * Reuse the old stack frame or allocate a new one. + */ + if(st->cur_ptr && st->cur_ptr->next) { + nel = st->cur_ptr->next; + nel->bits_chopped = 0; + nel->got = 0; + /* Retain the nel->cont_level, it's correct. */ + } else { + nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); + if(nel == NULL) + return NULL; + + if(st->tail) { + /* Increase a subcontainment depth */ + nel->cont_level = st->tail->cont_level + 1; + st->tail->next = nel; + } + nel->prev = st->tail; + st->tail = nel; + } + + st->cur_ptr = nel; + + return nel; +} + +static struct _stack * +_new_stack() { + return (struct _stack *)CALLOC(1, sizeof(struct _stack)); +} + +/* + * Decode OCTET STRING type. + */ +asn_dec_rval_t +OCTET_STRING_decode_ber(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + void **sptr, const void *buf_ptr, size_t size, int tag_mode) { + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + asn_dec_rval_t rval; + asn_struct_ctx_t *ctx; + ssize_t consumed_myself = 0; + struct _stack *stck; /* Expectations stack structure */ + struct _stack_el *sel = 0; /* Stack element */ + int tlv_constr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + + ASN_DEBUG("Decoding %s as %s (frame %ld)", + td->name, + (type_variant == ASN_OSUBV_STR) ? + "OCTET STRING" : "OS-SpecialCase", + (long)size); + + /* + * Create the string if does not exist. + */ + if(st == NULL) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) RETURN(RC_FAIL); + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + switch(ctx->phase) { + case 0: + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, ctx, + buf_ptr, size, tag_mode, -1, + &ctx->left, &tlv_constr); + if(rval.code != RC_OK) + return rval; + + if(tlv_constr) { + /* + * Complex operation, requires stack of expectations. + */ + ctx->ptr = _new_stack(); + if(ctx->ptr) { + stck = (struct _stack *)ctx->ptr; + } else { + RETURN(RC_FAIL); + } + } else { + /* + * Jump into stackless primitive decoding. + */ + _CH_PHASE(ctx, 3); + if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) + APPEND(buf_ptr, rval.consumed); + ADVANCE(rval.consumed); + goto phase3; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + phase1: + /* + * Fill the stack with expectations. + */ + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + do { + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_tag_t expected_tag; + ssize_t tl, ll, tlvl; + /* This one works even if (sel->left == -1) */ + ssize_t Left = ((!sel||(size_t)sel->left >= size) + ?(ssize_t)size:sel->left); + + + ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", sel, + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)(sel?sel->got:0) + ); + if(sel && sel->left <= 0 && sel->want_nulls == 0) { + if(sel->prev) { + struct _stack_el *prev = sel->prev; + if(prev->left != -1) { + if(prev->left < sel->got) + RETURN(RC_FAIL); + prev->left -= sel->got; + } + prev->got += sel->got; + sel = stck->cur_ptr = prev; + if(!sel) break; + tlv_constr = 1; + continue; + } else { + sel = stck->cur_ptr = 0; + break; /* Nothing to wait */ + } + } + + tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); + ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", + (long)size, (long)Left, sel?"":"!", + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)tl); + switch(tl) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); + + ll = ber_fetch_length(tlv_constr, + (const char *)buf_ptr + tl,Left - tl,&tlv_len); + ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", + ber_tlv_tag_string(tlv_tag), tlv_constr, + (long)Left, (long)tl, (long)tlv_len, (long)ll); + switch(ll) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + if(sel && sel->want_nulls + && ((const uint8_t *)buf_ptr)[0] == 0 + && ((const uint8_t *)buf_ptr)[1] == 0) + { + + ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); + + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND("\0\0", 2); + + ADVANCE(2); + sel->got += 2; + if(sel->left != -1) { + sel->left -= 2; /* assert(sel->left >= 2) */ + } + + sel->want_nulls--; + if(sel->want_nulls == 0) { + /* Move to the next expectation */ + sel->left = 0; + tlv_constr = 1; + } + + continue; + } + + /* + * Set up expected tags, + * depending on ASN.1 type being decoded. + */ + switch(type_variant) { + case ASN_OSUBV_BIT: + /* X.690: 8.6.4.1, NOTE 2 */ + /* Fall through */ + case ASN_OSUBV_STR: + default: + if(sel) { + int level = sel->cont_level; + if(level < td->all_tags_count) { + expected_tag = td->all_tags[level]; + break; + } else if(td->all_tags_count) { + expected_tag = td->all_tags + [td->all_tags_count - 1]; + break; + } + /* else, Fall through */ + } + /* Fall through */ + case ASN_OSUBV_ANY: + expected_tag = tlv_tag; + break; + } + + + if(tlv_tag != expected_tag) { + char buf[2][32]; + ber_tlv_tag_snprint(tlv_tag, + buf[0], sizeof(buf[0])); + ber_tlv_tag_snprint(td->tags[td->tags_count-1], + buf[1], sizeof(buf[1])); + ASN_DEBUG("Tag does not match expectation: %s != %s", + buf[0], buf[1]); + RETURN(RC_FAIL); + } + + tlvl = tl + ll; /* Combined length of T and L encoding */ + if((tlv_len + tlvl) < 0) { + /* tlv_len value is too big */ + ASN_DEBUG("TLV encoding + length (%ld) is too big", + (long)tlv_len); + RETURN(RC_FAIL); + } + + /* + * Append a new expectation. + */ + sel = OS__add_stack_el(stck); + if(!sel) RETURN(RC_FAIL); + + sel->tag = tlv_tag; + + sel->want_nulls = (tlv_len==-1); + if(sel->prev && sel->prev->left != -1) { + /* Check that the parent frame is big enough */ + if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) + RETURN(RC_FAIL); + if(tlv_len == -1) + sel->left = sel->prev->left - tlvl; + else + sel->left = tlv_len; + } else { + sel->left = tlv_len; + } + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND(buf_ptr, tlvl); + sel->got += tlvl; + ADVANCE(tlvl); + + ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%d", + (long)sel->got, (long)sel->left, + sel->want_nulls, sel->cont_level); + + } while(tlv_constr); + if(sel == NULL) { + /* Finished operation, "phase out" */ + ASN_DEBUG("Phase out"); + _CH_PHASE(ctx, +3); + break; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 2: + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", + (long)sel->left, (long)size, (long)sel->got, + sel->want_nulls); + { + ber_tlv_len_t len; + + assert(sel->left >= 0); + + len = ((ber_tlv_len_t)size < sel->left) + ? (ber_tlv_len_t)size : sel->left; + if(len > 0) { + if(type_variant == ASN_OSUBV_BIT + && sel->bits_chopped == 0) { + /* Put the unused-bits-octet away */ + st->bits_unused = *(const uint8_t *)buf_ptr; + APPEND(((const char *)buf_ptr+1), (len - 1)); + sel->bits_chopped = 1; + } else { + APPEND(buf_ptr, len); + } + ADVANCE(len); + sel->left -= len; + sel->got += len; + } + + if(sel->left) { + ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", + (long)sel->left, (long)size, sel->want_nulls); + RETURN(RC_WMORE); + } + + PREV_PHASE(ctx); + goto phase1; + } + break; + case 3: + phase3: + /* + * Primitive form, no stack required. + */ + assert(ctx->left >= 0); + + if(size < (size_t)ctx->left) { + if(!size) RETURN(RC_WMORE); + if(type_variant == ASN_OSUBV_BIT && !ctx->context) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, size); + assert(ctx->context > 0); + ctx->left -= size; + ADVANCE(size); + RETURN(RC_WMORE); + } else { + if(type_variant == ASN_OSUBV_BIT + && !ctx->context && ctx->left) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, ctx->left); + ADVANCE(ctx->left); + ctx->left = 0; + + NEXT_PHASE(ctx); + } + break; + } + + if(sel) { + ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", + sel->prev, sel->want_nulls, + (long)sel->left, (long)sel->got, (long)size); + if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { + RETURN(RC_WMORE); + } + } + + /* + * BIT STRING-specific processing. + */ + if(type_variant == ASN_OSUBV_BIT && st->size) { + /* Finalize BIT STRING: zero out unused bits. */ + st->buf[st->size-1] &= 0xff << st->bits_unused; + } + + ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", + (long)consumed_myself, td->name, + (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", + (long)st->size); + + + RETURN(RC_OK); +} + +/* + * Encode OCTET STRING type using DER. + */ +asn_enc_rval_t +OCTET_STRING_encode_der(asn_TYPE_descriptor_t *td, void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er; + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + BIT_STRING_t *st = (BIT_STRING_t *)sptr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + int fix_last_byte = 0; + + ASN_DEBUG("%s %s as OCTET STRING", + cb?"Estimating":"Encoding", td->name); + + /* + * Write tags. + */ + if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { + er.encoded = der_write_tags(td, + (type_variant == ASN_OSUBV_BIT) + st->size, + tag_mode, type_variant == ASN_OSUBV_ANY, tag, + cb, app_key); + if(er.encoded == -1) { + er.failed_type = td; + er.structure_ptr = sptr; + return er; + } + } else { + /* Disallow: [] IMPLICIT ANY */ + assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); + er.encoded = 0; + } + + if(!cb) { + er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; + _ASN_ENCODED_OK(er); + } + + /* + * Prepare to deal with the last octet of BIT STRING. + */ + if(type_variant == ASN_OSUBV_BIT) { + uint8_t b = st->bits_unused & 0x07; + if(b && st->size) fix_last_byte = 1; + _ASN_CALLBACK(&b, 1); + er.encoded++; + } + + /* Invoke callback for the main part of the buffer */ + _ASN_CALLBACK(st->buf, st->size - fix_last_byte); + + /* The last octet should be stripped off the unused bits */ + if(fix_last_byte) { + uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); + _ASN_CALLBACK(&b, 1); + } + + er.encoded += st->size; + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +asn_enc_rval_t +OCTET_STRING_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + static const char *h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + if(!st || (!st->buf && st->size)) + _ASN_ENCODE_FAILED; + + er.encoded = 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + if(flags & XER_F_CANONICAL) { + char *scend = scratch + (sizeof(scratch) - 2); + for(; buf < end; buf++) { + if(p >= scend) { + _ASN_CALLBACK(scratch, p - scratch); + er.encoded += p - scratch; + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + } + + _ASN_CALLBACK(scratch, p-scratch); /* Dump the rest */ + er.encoded += p - scratch; + } else { + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + _ASN_CALLBACK(scratch, p-scratch); + er.encoded += (p-scratch); + p = scratch; + _i_ASN_TEXT_INDENT(1, ilevel); + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + if(p - scratch) { + p--; /* Remove the tail space */ + _ASN_CALLBACK(scratch, p-scratch); /* Dump the rest */ + er.encoded += p - scratch; + if(st->size > 16) + _i_ASN_TEXT_INDENT(1, ilevel-1); + } + } + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +static struct OCTET_STRING__xer_escape_table_s { + char *string; + int size; +} OCTET_STRING__xer_escape_table[] = { +#define OSXET(s) { s, sizeof(s) - 1 } + OSXET("\074\156\165\154\057\076"), /* */ + OSXET("\074\163\157\150\057\076"), /* */ + OSXET("\074\163\164\170\057\076"), /* */ + OSXET("\074\145\164\170\057\076"), /* */ + OSXET("\074\145\157\164\057\076"), /* */ + OSXET("\074\145\156\161\057\076"), /* */ + OSXET("\074\141\143\153\057\076"), /* */ + OSXET("\074\142\145\154\057\076"), /* */ + OSXET("\074\142\163\057\076"), /* */ + OSXET("\011"), /* \t */ + OSXET("\012"), /* \n */ + OSXET("\074\166\164\057\076"), /* */ + OSXET("\074\146\146\057\076"), /* */ + OSXET("\015"), /* \r */ + OSXET("\074\163\157\057\076"), /* */ + OSXET("\074\163\151\057\076"), /* */ + OSXET("\074\144\154\145\057\076"), /* */ + OSXET("\074\144\143\061\057\076"), /* */ + OSXET("\074\144\143\062\057\076"), /* */ + OSXET("\074\144\143\063\057\076"), /* */ + OSXET("\074\144\143\064\057\076"), /* */ + OSXET("\074\156\141\153\057\076"), /* */ + OSXET("\074\163\171\156\057\076"), /* */ + OSXET("\074\145\164\142\057\076"), /* */ + OSXET("\074\143\141\156\057\076"), /* */ + OSXET("\074\145\155\057\076"), /* */ + OSXET("\074\163\165\142\057\076"), /* */ + OSXET("\074\145\163\143\057\076"), /* */ + OSXET("\074\151\163\064\057\076"), /* */ + OSXET("\074\151\163\063\057\076"), /* */ + OSXET("\074\151\163\062\057\076"), /* */ + OSXET("\074\151\163\061\057\076"), /* */ + { 0, 0 }, /* " " */ + { 0, 0 }, /* ! */ + { 0, 0 }, /* \" */ + { 0, 0 }, /* # */ + { 0, 0 }, /* $ */ + { 0, 0 }, /* % */ + OSXET("\046\141\155\160\073"), /* & */ + { 0, 0 }, /* ' */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ + {0,0},{0,0},{0,0},{0,0}, /* 89:; */ + OSXET("\046\154\164\073"), /* < */ + { 0, 0 }, /* = */ + OSXET("\046\147\164\073"), /* > */ +}; + +static int +OS__check_escaped_control_char(const void *buf, int size) { + size_t i; + /* + * Inefficient algorithm which translates the escape sequences + * defined above into characters. Returns -1 if not found. + * TODO: replace by a faster algorithm (bsearch(), hash or + * nested table lookups). + */ + for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { + struct OCTET_STRING__xer_escape_table_s *el; + el = &OCTET_STRING__xer_escape_table[i]; + if(el->size == size && memcmp(buf, el->string, size) == 0) + return i; + } + return -1; +} + +static int +OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { + /* + * This might be one of the escape sequences + * for control characters. Check it out. + * #11.15.5 + */ + int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); + if(control_char >= 0) { + OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; + void *p = REALLOC(st->buf, st->size + 2); + if(p) { + st->buf = (uint8_t *)p; + st->buf[st->size++] = control_char; + st->buf[st->size] = '\0'; /* nul-termination */ + return 0; + } + } + + return -1; /* No, it's not */ +} + +asn_enc_rval_t +OCTET_STRING_encode_xer_utf8(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er; + uint8_t *buf, *end; + uint8_t *ss; /* Sequence start */ + ssize_t encoded_len = 0; + + (void)ilevel; /* Unused argument */ + (void)flags; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + _ASN_ENCODE_FAILED; + + buf = st->buf; + end = buf + st->size; + for(ss = buf; buf < end; buf++) { + unsigned int ch = *buf; + int s_len; /* Special encoding sequence length */ + + /* + * Escape certain characters: X.680/11.15 + */ + if(ch < sizeof(OCTET_STRING__xer_escape_table) + /sizeof(OCTET_STRING__xer_escape_table[0]) + && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { + if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) + || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, + app_key) < 0) + _ASN_ENCODE_FAILED; + encoded_len += (buf - ss) + s_len; + ss = buf + 1; + } + } + + encoded_len += (buf - ss); + if((buf - ss) && cb(ss, buf - ss, app_key) < 0) + _ASN_ENCODE_FAILED; + + er.encoded = encoded_len; + _ASN_ENCODED_OK(er); +} + +/* + * Convert from hexadecimal format (cstring): "AB CD EF" + */ +static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *chunk_stop = (const char *)chunk_buf; + const char *p = chunk_stop; + const char *pend = p + chunk_size; + unsigned int clv = 0; + int half = 0; /* Half bit */ + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + ssize_t _ns = st->size + (chunk_size + 1) / 2; + void *nptr = REALLOC(st->buf, _ns + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * If something like " a b c " appears here, the " a b":3 will be + * converted, and the rest skipped. That is, unless buf_size is greater + * than chunk_size, then it'll be equivalent to "ABC0". + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + continue; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + clv = (clv << 4) + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + clv = (clv << 4) + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + clv = (clv << 4) + (ch - 0x61 + 10); + break; + default: + *buf = 0; /* JIC */ + return -1; + } + if(half++) { + half = 0; + *buf++ = clv; + chunk_stop = p + 1; + } + } + + /* + * Check partial decoding. + */ + if(half) { + if(have_more) { + /* + * Partial specification is fine, + * because no more more PXER_TEXT data is available. + */ + *buf++ = clv << 4; + chunk_stop = p; + } + } else { + chunk_stop = p; + } + + st->size = buf - st->buf; /* Adjust the buffer size */ + assert(st->size <= _ns); + st->buf[st->size] = 0; /* Courtesy termination */ + + return (chunk_stop - (const char *)chunk_buf); /* Converted size */ +} + +/* + * Convert from binary format: "00101011101" + */ +static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + BIT_STRING_t *st = (BIT_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + int bits_unused = st->bits_unused & 0x7; + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + ssize_t _ns = st->size + (chunk_size + 7) / 8; + void *nptr = REALLOC(st->buf, _ns + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + (void)have_more; + + if(bits_unused == 0) + bits_unused = 8; + else if(st->size) + buf--; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + break; + case 0x30: + case 0x31: + if(bits_unused-- <= 0) { + *++buf = 0; /* Clean the cell */ + bits_unused = 7; + } + *buf |= (ch&1) << bits_unused; + break; + default: + st->bits_unused = bits_unused; + return -1; + } + } + + if(bits_unused == 8) { + st->size = buf - st->buf; + st->bits_unused = 0; + } else { + st->size = buf - st->buf + 1; + st->bits_unused = bits_unused; + } + + assert(st->size <= _ns); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Something like strtod(), but with stricter rules. + */ +static int +OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { + int32_t val = 0; + const char *p; + + for(p = buf; p < end; p++) { + int ch = *p; + + /* Strange huge value */ + if((val * base + base) < 0) + return -1; + + switch(ch) { + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + val = val * base + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + val = val * base + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + val = val * base + (ch - 0x61 + 10); + break; + case 0x3b: /* ';' */ + *ret_value = val; + return (p - buf) + 1; + default: + return -1; /* Character set error */ + } + } + + *ret_value = -1; + return (p - buf); +} + +/* + * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" + */ +static ssize_t OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + uint8_t *buf; + + /* Reallocate buffer */ + ssize_t _ns = st->size + chunk_size; + void *nptr = REALLOC(st->buf, _ns + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + int len; /* Length of the rest of the chunk */ + + if(ch != 0x26 /* '&' */) { + *buf++ = ch; + continue; /* That was easy... */ + } + + /* + * Process entity reference. + */ + len = chunk_size - (p - (const char *)chunk_buf); + if(len == 1 /* "&" */) goto want_more; + if(p[1] == 0x23 /* '#' */) { + const char *pval; /* Pointer to start of digits */ + int32_t val = 0; /* Entity reference value */ + int base; + + if(len == 2 /* "&#" */) goto want_more; + if(p[2] == 0x78 /* 'x' */) + pval = p + 3, base = 16; + else + pval = p + 2, base = 10; + len = OS__strtoent(base, pval, p + len, &val); + if(len == -1) { + /* Invalid charset. Just copy verbatim. */ + *buf++ = ch; + continue; + } + if(!len || pval[len-1] != 0x3b) goto want_more; + assert(val > 0); + p += (pval - p) + len - 1; /* Advance past entref */ + + if(val < 0x80) { + *buf++ = (char)val; + } else if(val < 0x800) { + *buf++ = 0xc0 | ((val >> 6)); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x10000) { + *buf++ = 0xe0 | ((val >> 12)); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x200000) { + *buf++ = 0xf0 | ((val >> 18)); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x4000000) { + *buf++ = 0xf8 | ((val >> 24)); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else { + *buf++ = 0xfc | ((val >> 30) & 0x1); + *buf++ = 0x80 | ((val >> 24) & 0x3f); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } + } else { + /* + * Ugly, limited parsing of & > < + */ + char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); + if(!sc) goto want_more; + if((sc - p) == 4 + && p[1] == 0x61 /* 'a' */ + && p[2] == 0x6d /* 'm' */ + && p[3] == 0x70 /* 'p' */) { + *buf++ = 0x26; + p = sc; + continue; + } + if((sc - p) == 3) { + if(p[1] == 0x6c) { + *buf = 0x3c; /* '<' */ + } else if(p[1] == 0x67) { + *buf = 0x3e; /* '>' */ + } else { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + if(p[2] != 0x74) { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + buf++; + p = sc; + continue; + } + /* Unsupported entity reference */ + *buf++ = ch; + } + + continue; + want_more: + if(have_more) { + /* + * We know that no more data (of the same type) + * is coming. Copy the rest verbatim. + */ + *buf++ = ch; + continue; + } + chunk_size = (p - (const char *)chunk_buf); + /* Processing stalled: need more data */ + break; + } + + st->size = buf - st->buf; + assert(st->size <= _ns); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Decode OCTET STRING from the XML element's body. + */ +static asn_dec_rval_t +OCTET_STRING__decode_xer(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_ptr, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_ptr, const void *chunk_buf, size_t chunk_size, + int have_more) +) { + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t *ctx; /* Per-structure parser context */ + asn_dec_rval_t rval; /* Return value from the decoder */ + int st_allocated; + + /* + * Create the string if does not exist. + */ + if(!st) { + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + *sptr = (void *)st; + if(!st) goto sta_failed; + st_allocated = 1; + } else { + st_allocated = 0; + } + if(!st->buf) { + /* This is separate from above section */ + st->buf = (uint8_t *)CALLOC(1, 1); + if(!st->buf) { + if(st_allocated) { + *sptr = 0; + goto stb_failed; + } else { + goto sta_failed; + } + } + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); + + return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, + buf_ptr, size, opt_unexpected_tag_decoder, body_receiver); + +stb_failed: + FREEMEM(st); +sta_failed: + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; +} + +/* + * Decode OCTET STRING from the hexadecimal data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_hex(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, OCTET_STRING__convert_hexadecimal); +} + +/* + * Decode OCTET STRING from the binary (0/1) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_binary(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, OCTET_STRING__convert_binary); +} + +/* + * Decode OCTET STRING from the string (ASCII/UTF-8) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_utf8(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, + OCTET_STRING__handle_control_chars, + OCTET_STRING__convert_entrefs); +} + +static int +OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, asn_per_constraints_t *pc) { + uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", + (int)units, lb, ub, unit_bits); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Decode without translation */ + lb = 0; + } else if(pc && pc->code2value) { + if(unit_bits > 16) + return 1; /* FATAL: can't have constrained + * UniversalString with more than + * 16 million code points */ + for(; buf < end; buf += bpc) { + int value; + int code = per_get_few_bits(po, unit_bits); + if(code < 0) return -1; /* WMORE */ + value = pc->code2value(code); + if(value < 0) { + ASN_DEBUG("Code %d (0x%02x) is" + " not in map (%ld..%ld)", + code, code, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = value; break; + case 2: buf[0] = value >> 8; buf[1] = value; break; + case 4: buf[0] = value >> 24; buf[1] = value >> 16; + buf[2] = value >> 8; buf[3] = value; break; + } + } + return 0; + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_get_many_bits(po, buf, 0, unit_bits * units); + } + + for(; buf < end; buf += bpc) { + int code = per_get_few_bits(po, unit_bits); + int ch = code + lb; + if(code < 0) return -1; /* WMORE */ + if(ch > ub) { + ASN_DEBUG("Code %d is out of range (%ld..%ld)", + ch, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = ch; break; + case 2: buf[0] = ch >> 8; buf[1] = ch; break; + case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; + buf[2] = ch >> 8; buf[3] = ch; break; + } + } + + return 0; +} + +static int +OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, asn_per_constraints_t *pc) { + const uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", + (int)units, lb, ub, unit_bits, bpc); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Encode as is */ + lb = 0; + } else if(pc && pc->value2code) { + for(; buf < end; buf += bpc) { + int code; + uint32_t value; + switch(bpc) { + case 1: value = *(const uint8_t *)buf; break; + case 2: value = (buf[0] << 8) | buf[1]; break; + case 4: value = (buf[0] << 24) | (buf[1] << 16) + | (buf[2] << 8) | buf[3]; break; + default: return -1; + } + code = pc->value2code(value); + if(code < 0) { + ASN_DEBUG("Character %d (0x%02x) is" + " not in map (%ld..%ld)", + *buf, *buf, lb, ub); + return -1; + } + if(per_put_few_bits(po, code, unit_bits)) + return -1; + } + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_put_many_bits(po, buf, unit_bits * units); + } + + for(ub -= lb; buf < end; buf += bpc) { + int ch; + uint32_t value; + switch(bpc) { + case 1: value = *(const uint8_t *)buf; break; + case 2: value = (buf[0] << 8) | buf[1]; break; + case 4: value = (buf[0] << 24) | (buf[1] << 16) + | (buf[2] << 8) | buf[3]; break; + default: return -1; + } + ch = value - lb; + if(ch < 0 || ch > ub) { + ASN_DEBUG("Character %d (0x%02x)" + " is out of range (%ld..%ld)", + *buf, *buf, lb, ub + lb); + return -1; + } + if(per_put_few_bits(po, ch, unit_bits)) + return -1; + } + + return 0; +} + +asn_dec_rval_t +OCTET_STRING_decode_uper(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + asn_per_constraints_t *pc = constraints ? constraints + : td->per_constraints; + asn_per_constraint_t *cval; + asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + break; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + cval = &asn_DEF_OCTET_STRING_constraints.value; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + if(bpc) { + ASN_DEBUG("Encoding OCTET STRING size %ld", + csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Encoding BIT STRING size %ld", + csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + if(bpc == 0) { + int ubs = (csiz->upper_bound & 0x7); + st->bits_unused = ubs ? 8 - ubs : 0; + } + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + raw_len += csiz->lower_bound; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + if(bpc) { + len_bytes = raw_len * bpc; + len_bits = len_bytes * unit_bits; + } else { + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) + st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + } + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + if(bpc) { + ret = OCTET_STRING_per_get_characters(pd, + &st->buf[st->size], raw_len, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ret = per_get_many_bits(pd, &st->buf[st->size], + 0, len_bits); + } + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + asn_per_constraints_t *pc = constraints ? constraints + : td->per_constraints; + asn_per_constraint_t *cval; + asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + unsigned int sizeinunits; + const uint8_t *buf; + int ret; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + _ASN_ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + _ASN_ENCODE_FAILED; + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + sizeinunits = st->size * 8 - (st->bits_unused & 0x07); + ASN_DEBUG("BIT STRING of %d bytes, %d bits unused", + sizeinunits, st->bits_unused); + break; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + sizeinunits = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + sizeinunits = st->size / 2; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + sizeinunits = st->size / 4; + break; + } + + ASN_DEBUG("Encoding %s into %d units of %d bits" + " (%ld..%ld, effective %d)%s", + td->name, sizeinunits, unit_bits, + csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((int)sizeinunits < csiz->lower_bound + || (int)sizeinunits > csiz->upper_bound) { + if(ct_extensible) { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else + _ASN_ENCODE_FAILED; + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + _ASN_ENCODE_FAILED; + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits >= 0) { + ASN_DEBUG("Encoding %d bytes (%ld), length in %d bits", + st->size, sizeinunits - csiz->lower_bound, + csiz->effective_bits); + ret = per_put_few_bits(po, sizeinunits - csiz->lower_bound, + csiz->effective_bits); + if(ret) _ASN_ENCODE_FAILED; + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, st->buf, + sizeinunits, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + } else { + ret = per_put_many_bits(po, st->buf, + sizeinunits * unit_bits); + } + if(ret) _ASN_ENCODE_FAILED; + _ASN_ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %d bytes", st->size); + + if(sizeinunits == 0) { + if(uper_put_length(po, 0)) + _ASN_ENCODE_FAILED; + _ASN_ENCODED_OK(er); + } + + buf = st->buf; + while(sizeinunits) { + ssize_t maySave = uper_put_length(po, sizeinunits); + if(maySave < 0) _ASN_ENCODE_FAILED; + + ASN_DEBUG("Encoding %ld of %ld", + (long)maySave, (long)sizeinunits); + + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, buf, + maySave, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + } else { + ret = per_put_many_bits(po, buf, maySave * unit_bits); + } + if(ret) _ASN_ENCODE_FAILED; + + if(bpc) + buf += maySave * bpc; + else + buf += maySave >> 3; + sizeinunits -= maySave; + assert(!(maySave & 0x07) || !sizeinunits); + } + + _ASN_ENCODED_OK(er); +} + +int +OCTET_STRING_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + static const char *h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + (void)td; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + _i_INDENT(1); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Remove the tail space */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + return 0; +} + +int +OCTET_STRING_print_utf8(asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st && (st->buf || !st->size)) { + return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +OCTET_STRING_free(asn_TYPE_descriptor_t *td, void *sptr, int contents_only) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + asn_struct_ctx_t *ctx = (asn_struct_ctx_t *) + ((char *)st + specs->ctx_offset); + struct _stack *stck; + + if(!td || !st) + return; + + ASN_DEBUG("Freeing %s as OCTET STRING", td->name); + + if(st->buf) { + FREEMEM(st->buf); + st->buf = 0; + } + + /* + * Remove decode-time stack. + */ + stck = (struct _stack *)ctx->ptr; + if(stck) { + while(stck->tail) { + struct _stack_el *sel = stck->tail; + stck->tail = sel->prev; + FREEMEM(sel); + } + FREEMEM(stck); + } + + if(!contents_only) { + FREEMEM(st); + } +} + +/* + * Conversion routines. + */ +int +OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { + void *buf; + + if(st == 0 || (str == 0 && len)) { + errno = EINVAL; + return -1; + } + + /* + * Clear the OCTET STRING. + */ + if(str == NULL) { + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + return 0; + } + + /* Determine the original string size, if not explicitly given */ + if(len < 0) + len = strlen(str); + + /* Allocate and fill the memory */ + buf = MALLOC(len + 1); + if(buf == NULL) + return -1; + + memcpy(buf, str, len); + ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ + FREEMEM(st->buf); + st->buf = (uint8_t *)buf; + st->size = len; + + return 0; +} + +OCTET_STRING_t * +OCTET_STRING_new_fromBuf(asn_TYPE_descriptor_t *td, const char *str, int len) { + asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_DEF_OCTET_STRING_specs; + OCTET_STRING_t *st; + + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + if(st && str && OCTET_STRING_fromBuf(st, str, len)) { + FREEMEM(st); + st = NULL; + } + + return st; +} + diff --git a/src/tmx/Asn_J2735/src/r41/ObjectCount.c b/src/tmx/Asn_J2735/src/r41/ObjectCount.c new file mode 100644 index 000000000..b62cad6f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ObjectCount.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ObjectCount.h" + +int +ObjectCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 6000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ObjectCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ObjectCount_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ObjectCount_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ObjectCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ObjectCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ObjectCount_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ObjectCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ObjectCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ObjectCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ObjectCount_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ObjectCount_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 6000 } /* (0..6000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectCount = { + "ObjectCount", + "ObjectCount", + ObjectCount_free, + ObjectCount_print, + ObjectCount_constraint, + ObjectCount_decode_ber, + ObjectCount_encode_der, + ObjectCount_decode_xer, + ObjectCount_encode_xer, + ObjectCount_decode_uper, + ObjectCount_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ObjectCount_tags_1, + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + asn_DEF_ObjectCount_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + &asn_PER_type_ObjectCount_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c b/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c new file mode 100644 index 000000000..6c9eee7ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ObstacleDirection.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ObstacleDirection.h" + +int +ObstacleDirection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using Heading, + * so here we adjust the DEF accordingly. + */ +static void +ObstacleDirection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Heading.free_struct; + td->print_struct = asn_DEF_Heading.print_struct; + td->check_constraints = asn_DEF_Heading.check_constraints; + td->ber_decoder = asn_DEF_Heading.ber_decoder; + td->der_encoder = asn_DEF_Heading.der_encoder; + td->xer_decoder = asn_DEF_Heading.xer_decoder; + td->xer_encoder = asn_DEF_Heading.xer_encoder; + td->uper_decoder = asn_DEF_Heading.uper_decoder; + td->uper_encoder = asn_DEF_Heading.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Heading.per_constraints; + td->elements = asn_DEF_Heading.elements; + td->elements_count = asn_DEF_Heading.elements_count; + td->specifics = asn_DEF_Heading.specifics; +} + +void +ObstacleDirection_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ObstacleDirection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ObstacleDirection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ObstacleDirection_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ObstacleDirection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ObstacleDirection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ObstacleDirection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ObstacleDirection_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ObstacleDirection_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { + "ObstacleDirection", + "ObstacleDirection", + ObstacleDirection_free, + ObstacleDirection_print, + ObstacleDirection_constraint, + ObstacleDirection_decode_ber, + ObstacleDirection_encode_der, + ObstacleDirection_decode_xer, + ObstacleDirection_encode_xer, + ObstacleDirection_decode_uper, + ObstacleDirection_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ObstacleDirection_tags_1, + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c b/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c new file mode 100644 index 000000000..e1067370f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ObstacleDistance.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ObstacleDistance.h" + +int +ObstacleDistance_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ObstacleDistance_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ObstacleDistance_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ObstacleDistance_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ObstacleDistance_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ObstacleDistance_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ObstacleDistance_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ObstacleDistance_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ObstacleDistance_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ObstacleDistance_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ObstacleDistance_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { + "ObstacleDistance", + "ObstacleDistance", + ObstacleDistance_free, + ObstacleDistance_print, + ObstacleDistance_constraint, + ObstacleDistance_decode_ber, + ObstacleDistance_encode_der, + ObstacleDistance_decode_xer, + ObstacleDistance_encode_xer, + ObstacleDistance_decode_uper, + ObstacleDistance_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ObstacleDistance_tags_1, + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + &asn_PER_type_ObstacleDistance_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B10.c b/src/tmx/Asn_J2735/src/r41/Offset-B10.c new file mode 100644 index 000000000..53c6c424f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B10.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B10.h" + +int +Offset_B10_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512 && value <= 511)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B10_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B10_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B10_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B10_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B10_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B10_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B10_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B10_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B10_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B10_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B10_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { + "Offset-B10", + "Offset-B10", + Offset_B10_free, + Offset_B10_print, + Offset_B10_constraint, + Offset_B10_decode_ber, + Offset_B10_encode_der, + Offset_B10_decode_xer, + Offset_B10_encode_xer, + Offset_B10_decode_uper, + Offset_B10_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B10_tags_1, + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + asn_DEF_Offset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B10_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B11.c b/src/tmx/Asn_J2735/src/r41/Offset-B11.c new file mode 100644 index 000000000..b2133136e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B11.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B11.h" + +int +Offset_B11_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B11_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B11_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B11_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B11_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B11_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B11_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B11_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B11_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B11_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B11_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B11_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { + "Offset-B11", + "Offset-B11", + Offset_B11_free, + Offset_B11_print, + Offset_B11_constraint, + Offset_B11_decode_ber, + Offset_B11_encode_der, + Offset_B11_decode_xer, + Offset_B11_encode_xer, + Offset_B11_decode_uper, + Offset_B11_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B11_tags_1, + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + asn_DEF_Offset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B11_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B12.c b/src/tmx/Asn_J2735/src/r41/Offset-B12.c new file mode 100644 index 000000000..d793673cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B12.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B12.h" + +int +Offset_B12_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B12_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B12_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B12_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B12_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B12_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B12_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B12_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B12_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B12_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B12_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B12_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { + "Offset-B12", + "Offset-B12", + Offset_B12_free, + Offset_B12_print, + Offset_B12_constraint, + Offset_B12_decode_ber, + Offset_B12_encode_der, + Offset_B12_decode_xer, + Offset_B12_encode_xer, + Offset_B12_decode_uper, + Offset_B12_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B12_tags_1, + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + asn_DEF_Offset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B12_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B13.c b/src/tmx/Asn_J2735/src/r41/Offset-B13.c new file mode 100644 index 000000000..c8a08a24b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B13.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B13.h" + +int +Offset_B13_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B13_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B13_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B13_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B13_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B13_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B13_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B13_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B13_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B13_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B13_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B13_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { + "Offset-B13", + "Offset-B13", + Offset_B13_free, + Offset_B13_print, + Offset_B13_constraint, + Offset_B13_decode_ber, + Offset_B13_encode_der, + Offset_B13_decode_xer, + Offset_B13_encode_xer, + Offset_B13_decode_uper, + Offset_B13_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B13_tags_1, + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + asn_DEF_Offset_B13_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B13_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B14.c b/src/tmx/Asn_J2735/src/r41/Offset-B14.c new file mode 100644 index 000000000..f69a4355e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B14.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B14.h" + +int +Offset_B14_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B14_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B14_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B14_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B14_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B14_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B14_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B14_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B14_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B14_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B14_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B14_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { + "Offset-B14", + "Offset-B14", + Offset_B14_free, + Offset_B14_print, + Offset_B14_constraint, + Offset_B14_decode_ber, + Offset_B14_encode_der, + Offset_B14_decode_xer, + Offset_B14_encode_xer, + Offset_B14_decode_uper, + Offset_B14_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B14_tags_1, + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + asn_DEF_Offset_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B14_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offset-B16.c b/src/tmx/Asn_J2735/src/r41/Offset-B16.c new file mode 100644 index 000000000..e20d64d97 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offset-B16.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offset-B16.h" + +int +Offset_B16_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Offset_B16_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Offset_B16_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offset_B16_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offset_B16_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offset_B16_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offset_B16_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offset_B16_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offset_B16_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offset_B16_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offset_B16_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offset_B16_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { + "Offset-B16", + "Offset-B16", + Offset_B16_free, + Offset_B16_print, + Offset_B16_constraint, + Offset_B16_decode_ber, + Offset_B16_encode_der, + Offset_B16_decode_xer, + Offset_B16_encode_xer, + Offset_B16_decode_uper, + Offset_B16_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offset_B16_tags_1, + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + asn_DEF_Offset_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + &asn_PER_type_Offset_B16_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Offsets.c b/src/tmx/Asn_J2735/src/r41/Offsets.c new file mode 100644 index 000000000..48a0c05ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Offsets.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Offsets.h" + +int +Offsets_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 4 && size <= 8)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +Offsets_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +Offsets_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Offsets_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Offsets_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Offsets_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Offsets_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Offsets_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Offsets_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Offsets_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Offsets_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Offsets_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Offsets_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 4, 8 } /* (SIZE(4..8)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Offsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offsets = { + "Offsets", + "Offsets", + Offsets_free, + Offsets_print, + Offsets_constraint, + Offsets_decode_ber, + Offsets_encode_der, + Offsets_decode_xer, + Offsets_encode_xer, + Offsets_decode_uper, + Offsets_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Offsets_tags_1, + sizeof(asn_DEF_Offsets_tags_1) + /sizeof(asn_DEF_Offsets_tags_1[0]), /* 1 */ + asn_DEF_Offsets_tags_1, /* Same as above */ + sizeof(asn_DEF_Offsets_tags_1) + /sizeof(asn_DEF_Offsets_tags_1[0]), /* 1 */ + &asn_PER_type_Offsets_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c b/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c new file mode 100644 index 000000000..457e0da7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/OverlayLaneList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "OverlayLaneList.h" + +static asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { + sizeof(struct OverlayLaneList), + offsetof(struct OverlayLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { + "OverlayLaneList", + "OverlayLaneList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_OverlayLaneList_tags_1, + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + asn_DEF_OverlayLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + &asn_PER_type_OverlayLaneList_constr_1, + asn_MBR_OverlayLaneList_1, + 1, /* Single element */ + &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistory.c b/src/tmx/Asn_J2735/src/r41/PathHistory.c new file mode 100644 index 000000000..9a8ef892c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistory.c @@ -0,0 +1,596 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistory.h" + +static int +memb_pathHistoryPointSets_01_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 23)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_02_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 15 && size <= 345)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_03_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 12 && size <= 276)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_04_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 8 && size <= 184)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_05_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10 && size <= 230)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_06_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 6 && size <= 138)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_07_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 11 && size <= 242)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_08_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 7 && size <= 161)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_09_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 9 && size <= 196)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathHistoryPointSets_10_constraint_5(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 5 && size <= 104)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_pathHistoryPointSets_01_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_01_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_02_constr_8 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 9, 9, 15, 345 } /* (SIZE(15..345)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_03_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 9, 9, 12, 276 } /* (SIZE(12..276)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_04_constr_10 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 8, 184 } /* (SIZE(8..184)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_05_constr_11 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 10, 230 } /* (SIZE(10..230)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_06_constr_12 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 6, 138 } /* (SIZE(6..138)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_07_constr_13 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 11, 242 } /* (SIZE(11..242)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_08_constr_14 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 7, 161 } /* (SIZE(7..161)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_09_constr_15 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 9, 196 } /* (SIZE(9..196)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_pathHistoryPointSets_10_constr_16 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 5, 104 } /* (SIZE(5..104)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_crumbData_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_pathHistoryPointSets_01_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathHistoryPointType_01, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_pathHistoryPointSets_01_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_pathHistoryPointSets_01_specs_6 = { + sizeof(struct PathHistory__crumbData__pathHistoryPointSets_01), + offsetof(struct PathHistory__crumbData__pathHistoryPointSets_01, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_pathHistoryPointSets_01_6 = { + "pathHistoryPointSets-01", + "pathHistoryPointSets-01", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_pathHistoryPointSets_01_tags_6, + sizeof(asn_DEF_pathHistoryPointSets_01_tags_6) + /sizeof(asn_DEF_pathHistoryPointSets_01_tags_6[0]) - 1, /* 1 */ + asn_DEF_pathHistoryPointSets_01_tags_6, /* Same as above */ + sizeof(asn_DEF_pathHistoryPointSets_01_tags_6) + /sizeof(asn_DEF_pathHistoryPointSets_01_tags_6[0]), /* 2 */ + &asn_PER_type_pathHistoryPointSets_01_constr_6, + asn_MBR_pathHistoryPointSets_01_6, + 1, /* Single element */ + &asn_SPC_pathHistoryPointSets_01_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_crumbData_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_01), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_pathHistoryPointSets_01_6, + memb_pathHistoryPointSets_01_constraint_5, + &asn_PER_memb_pathHistoryPointSets_01_constr_6, + 0, + "pathHistoryPointSets-01" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_02), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_02_constraint_5, + &asn_PER_memb_pathHistoryPointSets_02_constr_8, + 0, + "pathHistoryPointSets-02" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_03), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_03_constraint_5, + &asn_PER_memb_pathHistoryPointSets_03_constr_9, + 0, + "pathHistoryPointSets-03" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_04), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_04_constraint_5, + &asn_PER_memb_pathHistoryPointSets_04_constr_10, + 0, + "pathHistoryPointSets-04" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_05), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_05_constraint_5, + &asn_PER_memb_pathHistoryPointSets_05_constr_11, + 0, + "pathHistoryPointSets-05" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_06), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_06_constraint_5, + &asn_PER_memb_pathHistoryPointSets_06_constr_12, + 0, + "pathHistoryPointSets-06" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_07), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_07_constraint_5, + &asn_PER_memb_pathHistoryPointSets_07_constr_13, + 0, + "pathHistoryPointSets-07" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_08), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_08_constraint_5, + &asn_PER_memb_pathHistoryPointSets_08_constr_14, + 0, + "pathHistoryPointSets-08" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_09), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_09_constraint_5, + &asn_PER_memb_pathHistoryPointSets_09_constr_15, + 0, + "pathHistoryPointSets-09" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory__crumbData, choice.pathHistoryPointSets_10), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_pathHistoryPointSets_10_constraint_5, + &asn_PER_memb_pathHistoryPointSets_10_constr_16, + 0, + "pathHistoryPointSets-10" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_crumbData_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathHistoryPointSets-01 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistoryPointSets-02 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathHistoryPointSets-03 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* pathHistoryPointSets-04 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pathHistoryPointSets-05 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathHistoryPointSets-06 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* pathHistoryPointSets-07 */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* pathHistoryPointSets-08 */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* pathHistoryPointSets-09 */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* pathHistoryPointSets-10 */ +}; +static asn_CHOICE_specifics_t asn_SPC_crumbData_specs_5 = { + sizeof(struct PathHistory__crumbData), + offsetof(struct PathHistory__crumbData, _asn_ctx), + offsetof(struct PathHistory__crumbData, present), + sizeof(((struct PathHistory__crumbData *)0)->present), + asn_MAP_crumbData_tag2el_5, + 10, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_crumbData_5 = { + "crumbData", + "crumbData", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_crumbData_constr_5, + asn_MBR_crumbData_5, + 10, /* Elements count */ + &asn_SPC_crumbData_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_PathHistory_1[] = { + { ATF_POINTER, 3, offsetof(struct PathHistory, initialPosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "initialPosition" + }, + { ATF_POINTER, 2, offsetof(struct PathHistory, currGPSstatus), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GPSstatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "currGPSstatus" + }, + { ATF_POINTER, 1, offsetof(struct PathHistory, itemCnt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Count, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itemCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_crumbData_5, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crumbData" + }, +}; +static int asn_MAP_PathHistory_oms_1[] = { 0, 1, 2 }; +static ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGPSstatus */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* itemCnt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crumbData */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { + sizeof(struct PathHistory), + offsetof(struct PathHistory, _asn_ctx), + asn_MAP_PathHistory_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_PathHistory_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistory = { + "PathHistory", + "PathHistory", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistory_tags_1, + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + asn_DEF_PathHistory_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PathHistory_1, + 4, /* Elements count */ + &asn_SPC_PathHistory_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c new file mode 100644 index 000000000..656df14c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-01.c @@ -0,0 +1,272 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-01.h" + +static int +memb_latOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -131072 && value <= 131071)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_longOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -131072 && value <= 131071)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_elevationOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_timeOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_heading_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_latOffset_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_longOffset_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_elevationOffset_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_timeOffset_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_heading_constr_7 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_PathHistoryPointType_01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPointType_01, latOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_latOffset_constraint_1, + &asn_PER_memb_latOffset_constr_2, + 0, + "latOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPointType_01, longOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_longOffset_constraint_1, + &asn_PER_memb_longOffset_constr_3, + 0, + "longOffset" + }, + { ATF_POINTER, 5, offsetof(struct PathHistoryPointType_01, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_elevationOffset_constraint_1, + &asn_PER_memb_elevationOffset_constr_4, + 0, + "elevationOffset" + }, + { ATF_POINTER, 4, offsetof(struct PathHistoryPointType_01, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_timeOffset_constraint_1, + &asn_PER_memb_timeOffset_constr_5, + 0, + "timeOffset" + }, + { ATF_POINTER, 3, offsetof(struct PathHistoryPointType_01, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "posAccuracy" + }, + { ATF_POINTER, 2, offsetof(struct PathHistoryPointType_01, heading), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_heading_constraint_1, + &asn_PER_memb_heading_constr_7, + 0, + "heading" + }, + { ATF_POINTER, 1, offsetof(struct PathHistoryPointType_01, speed), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, +}; +static int asn_MAP_PathHistoryPointType_01_oms_1[] = { 2, 3, 4, 5, 6 }; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_PathHistoryPointType_01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* speed */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPointType_01_specs_1 = { + sizeof(struct PathHistoryPointType_01), + offsetof(struct PathHistoryPointType_01, _asn_ctx), + asn_MAP_PathHistoryPointType_01_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_PathHistoryPointType_01_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_01 = { + "PathHistoryPointType-01", + "PathHistoryPointType-01", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_01_tags_1, + sizeof(asn_DEF_PathHistoryPointType_01_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_01_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_01_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_01_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_01_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PathHistoryPointType_01_1, + 7, /* Elements count */ + &asn_SPC_PathHistoryPointType_01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c new file mode 100644 index 000000000..de3e95a03 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-02.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-02.h" + +int +PathHistoryPointType_02_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_02_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_02_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_02_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_02_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_02_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_02_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_02_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_02_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_02_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_02_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_02_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 15, 15 } /* (SIZE(15..15)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_02_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_02 = { + "PathHistoryPointType-02", + "PathHistoryPointType-02", + PathHistoryPointType_02_free, + PathHistoryPointType_02_print, + PathHistoryPointType_02_constraint, + PathHistoryPointType_02_decode_ber, + PathHistoryPointType_02_encode_der, + PathHistoryPointType_02_decode_xer, + PathHistoryPointType_02_encode_xer, + PathHistoryPointType_02_decode_uper, + PathHistoryPointType_02_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_02_tags_1, + sizeof(asn_DEF_PathHistoryPointType_02_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_02_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_02_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_02_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_02_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_02_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c new file mode 100644 index 000000000..e8780e6dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-03.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-03.h" + +int +PathHistoryPointType_03_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 12)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_03_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_03_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_03_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_03_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_03_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_03_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_03_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_03_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_03_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_03_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_03_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_03_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_03 = { + "PathHistoryPointType-03", + "PathHistoryPointType-03", + PathHistoryPointType_03_free, + PathHistoryPointType_03_print, + PathHistoryPointType_03_constraint, + PathHistoryPointType_03_decode_ber, + PathHistoryPointType_03_encode_der, + PathHistoryPointType_03_decode_xer, + PathHistoryPointType_03_encode_xer, + PathHistoryPointType_03_decode_uper, + PathHistoryPointType_03_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_03_tags_1, + sizeof(asn_DEF_PathHistoryPointType_03_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_03_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_03_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_03_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_03_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_03_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c new file mode 100644 index 000000000..4a07afd89 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-04.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-04.h" + +int +PathHistoryPointType_04_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_04_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_04_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_04_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_04_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_04_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_04_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_04_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_04_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_04_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_04_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_04_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_04_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_04 = { + "PathHistoryPointType-04", + "PathHistoryPointType-04", + PathHistoryPointType_04_free, + PathHistoryPointType_04_print, + PathHistoryPointType_04_constraint, + PathHistoryPointType_04_decode_ber, + PathHistoryPointType_04_encode_der, + PathHistoryPointType_04_decode_xer, + PathHistoryPointType_04_encode_xer, + PathHistoryPointType_04_decode_uper, + PathHistoryPointType_04_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_04_tags_1, + sizeof(asn_DEF_PathHistoryPointType_04_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_04_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_04_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_04_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_04_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_04_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c new file mode 100644 index 000000000..219d2e17f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-05.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-05.h" + +int +PathHistoryPointType_05_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 10)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_05_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_05_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_05_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_05_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_05_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_05_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_05_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_05_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_05_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_05_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_05_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_05_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_05 = { + "PathHistoryPointType-05", + "PathHistoryPointType-05", + PathHistoryPointType_05_free, + PathHistoryPointType_05_print, + PathHistoryPointType_05_constraint, + PathHistoryPointType_05_decode_ber, + PathHistoryPointType_05_encode_der, + PathHistoryPointType_05_decode_xer, + PathHistoryPointType_05_encode_xer, + PathHistoryPointType_05_decode_uper, + PathHistoryPointType_05_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_05_tags_1, + sizeof(asn_DEF_PathHistoryPointType_05_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_05_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_05_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_05_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_05_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_05_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c new file mode 100644 index 000000000..329dca594 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-06.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-06.h" + +int +PathHistoryPointType_06_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_06_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_06_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_06_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_06_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_06_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_06_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_06_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_06_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_06_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_06_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_06_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_06_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_06 = { + "PathHistoryPointType-06", + "PathHistoryPointType-06", + PathHistoryPointType_06_free, + PathHistoryPointType_06_print, + PathHistoryPointType_06_constraint, + PathHistoryPointType_06_decode_ber, + PathHistoryPointType_06_encode_der, + PathHistoryPointType_06_decode_xer, + PathHistoryPointType_06_encode_xer, + PathHistoryPointType_06_decode_uper, + PathHistoryPointType_06_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_06_tags_1, + sizeof(asn_DEF_PathHistoryPointType_06_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_06_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_06_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_06_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_06_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_06_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c new file mode 100644 index 000000000..427056b6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-07.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-07.h" + +int +PathHistoryPointType_07_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 11)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_07_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_07_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_07_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_07_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_07_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_07_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_07_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_07_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_07_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_07_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_07_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 11, 11 } /* (SIZE(11..11)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_07 = { + "PathHistoryPointType-07", + "PathHistoryPointType-07", + PathHistoryPointType_07_free, + PathHistoryPointType_07_print, + PathHistoryPointType_07_constraint, + PathHistoryPointType_07_decode_ber, + PathHistoryPointType_07_encode_der, + PathHistoryPointType_07_decode_xer, + PathHistoryPointType_07_encode_xer, + PathHistoryPointType_07_decode_uper, + PathHistoryPointType_07_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_07_tags_1, + sizeof(asn_DEF_PathHistoryPointType_07_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_07_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_07_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_07_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_07_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_07_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c new file mode 100644 index 000000000..83da71b0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-08.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-08.h" + +int +PathHistoryPointType_08_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 7)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_08_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_08_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_08_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_08_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_08_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_08_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_08_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_08_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_08_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_08_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_08_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_08 = { + "PathHistoryPointType-08", + "PathHistoryPointType-08", + PathHistoryPointType_08_free, + PathHistoryPointType_08_print, + PathHistoryPointType_08_constraint, + PathHistoryPointType_08_decode_ber, + PathHistoryPointType_08_encode_der, + PathHistoryPointType_08_decode_xer, + PathHistoryPointType_08_encode_xer, + PathHistoryPointType_08_decode_uper, + PathHistoryPointType_08_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_08_tags_1, + sizeof(asn_DEF_PathHistoryPointType_08_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_08_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_08_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_08_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_08_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_08_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c new file mode 100644 index 000000000..063ed3f53 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-09.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-09.h" + +int +PathHistoryPointType_09_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_09_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_09_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_09_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_09_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_09_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_09_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_09_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_09_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_09_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_09_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_09_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_09 = { + "PathHistoryPointType-09", + "PathHistoryPointType-09", + PathHistoryPointType_09_free, + PathHistoryPointType_09_print, + PathHistoryPointType_09_constraint, + PathHistoryPointType_09_decode_ber, + PathHistoryPointType_09_encode_der, + PathHistoryPointType_09_decode_xer, + PathHistoryPointType_09_encode_xer, + PathHistoryPointType_09_decode_uper, + PathHistoryPointType_09_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_09_tags_1, + sizeof(asn_DEF_PathHistoryPointType_09_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_09_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_09_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_09_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_09_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_09_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c new file mode 100644 index 000000000..cf1af02c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathHistoryPointType-10.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathHistoryPointType-10.h" + +int +PathHistoryPointType_10_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PathHistoryPointType_10_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PathHistoryPointType_10_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PathHistoryPointType_10_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_10_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PathHistoryPointType_10_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_10_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PathHistoryPointType_10_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PathHistoryPointType_10_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PathHistoryPointType_10_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PathHistoryPointType_10_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PathHistoryPointType_10_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PathHistoryPointType_10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointType_10 = { + "PathHistoryPointType-10", + "PathHistoryPointType-10", + PathHistoryPointType_10_free, + PathHistoryPointType_10_print, + PathHistoryPointType_10_constraint, + PathHistoryPointType_10_decode_ber, + PathHistoryPointType_10_encode_der, + PathHistoryPointType_10_decode_xer, + PathHistoryPointType_10_encode_xer, + PathHistoryPointType_10_decode_uper, + PathHistoryPointType_10_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathHistoryPointType_10_tags_1, + sizeof(asn_DEF_PathHistoryPointType_10_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_10_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointType_10_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointType_10_tags_1) + /sizeof(asn_DEF_PathHistoryPointType_10_tags_1[0]), /* 1 */ + &asn_PER_type_PathHistoryPointType_10_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PathPrediction.c b/src/tmx/Asn_J2735/src/r41/PathPrediction.c new file mode 100644 index 000000000..96fdccb1e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PathPrediction.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PathPrediction.h" + +static int +memb_radiusOfCurve_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_confidence_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_radiusOfCurve_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_confidence_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_radiusOfCurve_constraint_1, + &asn_PER_memb_radiusOfCurve_constr_2, + 0, + "radiusOfCurve" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_confidence_constraint_1, + &asn_PER_memb_confidence_constr_3, + 0, + "confidence" + }, +}; +static ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { + sizeof(struct PathPrediction), + offsetof(struct PathPrediction, _asn_ctx), + asn_MAP_PathPrediction_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PathPrediction = { + "PathPrediction", + "PathPrediction", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PathPrediction_tags_1, + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + asn_DEF_PathPrediction_tags_1, /* Same as above */ + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PathPrediction_1, + 2, /* Elements count */ + &asn_SPC_PathPrediction_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Payload.c b/src/tmx/Asn_J2735/src/r41/Payload.c new file mode 100644 index 000000000..1cdb7b75c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Payload.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Payload.h" + +int +Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 64)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +Payload_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Payload_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Payload_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Payload_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Payload_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Payload_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Payload_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Payload_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Payload_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Payload_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Payload_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Payload_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Payload = { + "Payload", + "Payload", + Payload_free, + Payload_print, + Payload_constraint, + Payload_decode_ber, + Payload_encode_der, + Payload_decode_xer, + Payload_encode_xer, + Payload_decode_uper, + Payload_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Payload_tags_1, + sizeof(asn_DEF_Payload_tags_1) + /sizeof(asn_DEF_Payload_tags_1[0]), /* 1 */ + asn_DEF_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_Payload_tags_1) + /sizeof(asn_DEF_Payload_tags_1[0]), /* 1 */ + &asn_PER_type_Payload_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PayloadData.c b/src/tmx/Asn_J2735/src/r41/PayloadData.c new file mode 100644 index 000000000..9099c5570 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PayloadData.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PayloadData.h" + +int +PayloadData_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 2048)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PayloadData_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PayloadData_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PayloadData_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PayloadData_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PayloadData_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PayloadData_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PayloadData_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PayloadData_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PayloadData_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PayloadData_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PayloadData_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PayloadData = { + "PayloadData", + "PayloadData", + PayloadData_free, + PayloadData_print, + PayloadData_constraint, + PayloadData_decode_ber, + PayloadData_encode_der, + PayloadData_decode_xer, + PayloadData_encode_xer, + PayloadData_decode_uper, + PayloadData_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PayloadData_tags_1, + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + asn_DEF_PayloadData_tags_1, /* Same as above */ + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + &asn_PER_type_PayloadData_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c new file mode 100644 index 000000000..0135b5f36 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PedestrianBicycleDetect.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PedestrianBicycleDetect.h" + +int +PedestrianBicycleDetect_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static void +PedestrianBicycleDetect_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BOOLEAN.free_struct; + td->print_struct = asn_DEF_BOOLEAN.print_struct; + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; + td->der_encoder = asn_DEF_BOOLEAN.der_encoder; + td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; + td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; + td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; + td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BOOLEAN.per_constraints; + td->elements = asn_DEF_BOOLEAN.elements; + td->elements_count = asn_DEF_BOOLEAN.elements_count; + td->specifics = asn_DEF_BOOLEAN.specifics; +} + +void +PedestrianBicycleDetect_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PedestrianBicycleDetect_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PedestrianBicycleDetect_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PedestrianBicycleDetect_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PedestrianBicycleDetect_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PedestrianBicycleDetect_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PedestrianBicycleDetect_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PedestrianBicycleDetect_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PedestrianBicycleDetect_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { + "PedestrianBicycleDetect", + "PedestrianBicycleDetect", + PedestrianBicycleDetect_free, + PedestrianBicycleDetect_print, + PedestrianBicycleDetect_constraint, + PedestrianBicycleDetect_decode_ber, + PedestrianBicycleDetect_encode_der, + PedestrianBicycleDetect_decode_xer, + PedestrianBicycleDetect_encode_xer, + PedestrianBicycleDetect_decode_uper, + PedestrianBicycleDetect_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PedestrianBicycleDetect_tags_1, + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c b/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c new file mode 100644 index 000000000..981e1d3c7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalAssistive.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalAssistive.h" + +int +PersonalAssistive_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PersonalAssistive_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +PersonalAssistive_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalAssistive_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalAssistive_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalAssistive_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalAssistive_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalAssistive_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalAssistive_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalAssistive_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalAssistive_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { + "PersonalAssistive", + "PersonalAssistive", + PersonalAssistive_free, + PersonalAssistive_print, + PersonalAssistive_constraint, + PersonalAssistive_decode_ber, + PersonalAssistive_encode_der, + PersonalAssistive_decode_xer, + PersonalAssistive_encode_xer, + PersonalAssistive_decode_uper, + PersonalAssistive_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalAssistive_tags_1, + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + asn_DEF_PersonalAssistive_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + &asn_PER_type_PersonalAssistive_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c new file mode 100644 index 000000000..34c180cff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalClusterRadius.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalClusterRadius.h" + +int +PersonalClusterRadius_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +PersonalClusterRadius_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +PersonalClusterRadius_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalClusterRadius_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalClusterRadius_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalClusterRadius_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalClusterRadius_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalClusterRadius_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalClusterRadius_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalClusterRadius_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalClusterRadius_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { + "PersonalClusterRadius", + "PersonalClusterRadius", + PersonalClusterRadius_free, + PersonalClusterRadius_print, + PersonalClusterRadius_constraint, + PersonalClusterRadius_decode_ber, + PersonalClusterRadius_encode_der, + PersonalClusterRadius_decode_xer, + PersonalClusterRadius_encode_xer, + PersonalClusterRadius_decode_uper, + PersonalClusterRadius_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalClusterRadius_tags_1, + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + &asn_PER_type_PersonalClusterRadius_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c new file mode 100644 index 000000000..a95df47b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalCrossingInProgress.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalCrossingInProgress.h" + +int +PersonalCrossingInProgress_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static void +PersonalCrossingInProgress_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BOOLEAN.free_struct; + td->print_struct = asn_DEF_BOOLEAN.print_struct; + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; + td->der_encoder = asn_DEF_BOOLEAN.der_encoder; + td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; + td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; + td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; + td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BOOLEAN.per_constraints; + td->elements = asn_DEF_BOOLEAN.elements; + td->elements_count = asn_DEF_BOOLEAN.elements_count; + td->specifics = asn_DEF_BOOLEAN.specifics; +} + +void +PersonalCrossingInProgress_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalCrossingInProgress_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingInProgress_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalCrossingInProgress_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingInProgress_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalCrossingInProgress_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingInProgress_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalCrossingInProgress_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalCrossingInProgress_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { + "PersonalCrossingInProgress", + "PersonalCrossingInProgress", + PersonalCrossingInProgress_free, + PersonalCrossingInProgress_print, + PersonalCrossingInProgress_constraint, + PersonalCrossingInProgress_decode_ber, + PersonalCrossingInProgress_encode_der, + PersonalCrossingInProgress_decode_xer, + PersonalCrossingInProgress_encode_xer, + PersonalCrossingInProgress_decode_uper, + PersonalCrossingInProgress_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalCrossingInProgress_tags_1, + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c new file mode 100644 index 000000000..c95dbc8c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalCrossingRequest.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalCrossingRequest.h" + +int +PersonalCrossingRequest_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static void +PersonalCrossingRequest_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BOOLEAN.free_struct; + td->print_struct = asn_DEF_BOOLEAN.print_struct; + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; + td->der_encoder = asn_DEF_BOOLEAN.der_encoder; + td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; + td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; + td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; + td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BOOLEAN.per_constraints; + td->elements = asn_DEF_BOOLEAN.elements; + td->elements_count = asn_DEF_BOOLEAN.elements_count; + td->specifics = asn_DEF_BOOLEAN.specifics; +} + +void +PersonalCrossingRequest_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalCrossingRequest_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingRequest_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalCrossingRequest_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingRequest_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalCrossingRequest_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalCrossingRequest_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalCrossingRequest_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalCrossingRequest_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { + "PersonalCrossingRequest", + "PersonalCrossingRequest", + PersonalCrossingRequest_free, + PersonalCrossingRequest_print, + PersonalCrossingRequest_constraint, + PersonalCrossingRequest_decode_ber, + PersonalCrossingRequest_encode_der, + PersonalCrossingRequest_decode_xer, + PersonalCrossingRequest_encode_xer, + PersonalCrossingRequest_decode_uper, + PersonalCrossingRequest_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalCrossingRequest_tags_1, + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c new file mode 100644 index 000000000..a5c987766 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUsageState.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalDeviceUsageState.h" + +int +PersonalDeviceUsageState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PersonalDeviceUsageState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +PersonalDeviceUsageState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalDeviceUsageState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUsageState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalDeviceUsageState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUsageState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalDeviceUsageState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUsageState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalDeviceUsageState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalDeviceUsageState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { + "PersonalDeviceUsageState", + "PersonalDeviceUsageState", + PersonalDeviceUsageState_free, + PersonalDeviceUsageState_print, + PersonalDeviceUsageState_constraint, + PersonalDeviceUsageState_decode_ber, + PersonalDeviceUsageState_encode_der, + PersonalDeviceUsageState_decode_xer, + PersonalDeviceUsageState_encode_xer, + PersonalDeviceUsageState_decode_uper, + PersonalDeviceUsageState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalDeviceUsageState_tags_1, + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + &asn_PER_type_PersonalDeviceUsageState_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c new file mode 100644 index 000000000..03e30ee4f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalDeviceUserType.c @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalDeviceUserType.h" + +int +PersonalDeviceUserType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +PersonalDeviceUserType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +PersonalDeviceUserType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalDeviceUserType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUserType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalDeviceUserType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUserType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalDeviceUserType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalDeviceUserType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalDeviceUserType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalDeviceUserType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "aPEDESTRIAN" }, + { 2, 13, "aPEDALCYCLIST" }, + { 3, 19, "aPUBLICSAFETYWORKER" }, + { 4, 8, "anANIMAL" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { + 2, /* aPEDALCYCLIST(2) */ + 1, /* aPEDESTRIAN(1) */ + 3, /* aPUBLICSAFETYWORKER(3) */ + 4, /* anANIMAL(4) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { + asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { + "PersonalDeviceUserType", + "PersonalDeviceUserType", + PersonalDeviceUserType_free, + PersonalDeviceUserType_print, + PersonalDeviceUserType_constraint, + PersonalDeviceUserType_decode_ber, + PersonalDeviceUserType_encode_der, + PersonalDeviceUserType_decode_xer, + PersonalDeviceUserType_encode_xer, + PersonalDeviceUserType_decode_uper, + PersonalDeviceUserType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalDeviceUserType_tags_1, + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + &asn_PER_type_PersonalDeviceUserType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c new file mode 100644 index 000000000..d3bbdaa0f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessage.c @@ -0,0 +1,195 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "PersonalMobilityMessage.h" + +#include "DFullTime.h" +#include "DestinationType.h" +#include "MobilityNeedsList.h" +static asn_TYPE_member_t asn_MBR_PersonalMobilityMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, groupId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UUIDType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "groupId" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, requestId), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "requestId" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, status), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalMobilityMessageStatusType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, position), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "position" + }, + { ATF_POINTER, 9, offsetof(struct PersonalMobilityMessage, accuracy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accuracy" + }, + { ATF_POINTER, 8, offsetof(struct PersonalMobilityMessage, requestDate), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DFullTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "requestDate" + }, + { ATF_POINTER, 7, offsetof(struct PersonalMobilityMessage, pickupDate), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DFullTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pickupDate" + }, + { ATF_POINTER, 6, offsetof(struct PersonalMobilityMessage, destination), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DestinationType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "destination" + }, + { ATF_POINTER, 5, offsetof(struct PersonalMobilityMessage, mobilityNeeds), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityNeedsList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "mobilityNeeds" + }, + { ATF_POINTER, 4, offsetof(struct PersonalMobilityMessage, modeOfTransport), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ModeOfTransportType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "modeOfTransport" + }, + { ATF_POINTER, 3, offsetof(struct PersonalMobilityMessage, eta), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EstimatedTimeType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "eta" + }, + { ATF_POINTER, 2, offsetof(struct PersonalMobilityMessage, isDSRCEquipped), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCEquippedType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "isDSRCEquipped" + }, + { ATF_POINTER, 1, offsetof(struct PersonalMobilityMessage, vehicleDesc), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleDescriptionType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleDesc" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalMobilityMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalPersonalMobilityMessage, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static const int asn_MAP_PersonalMobilityMessage_oms_1[] = { 4, 5, 6, 7, 8, 9, 10, 11, 12 }; +static const ber_tlv_tag_t asn_DEF_PersonalMobilityMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PersonalMobilityMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* groupId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestId */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* requestDate */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* pickupDate */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* destination */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* mobilityNeeds */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* modeOfTransport */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* eta */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* isDSRCEquipped */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* vehicleDesc */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PersonalMobilityMessage_specs_1 = { + sizeof(struct PersonalMobilityMessage), + offsetof(struct PersonalMobilityMessage, _asn_ctx), + asn_MAP_PersonalMobilityMessage_tag2el_1, + 14, /* Count of tags in the map */ + asn_MAP_PersonalMobilityMessage_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessage = { + "PersonalMobilityMessage", + "PersonalMobilityMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalMobilityMessage_tags_1, + sizeof(asn_DEF_PersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_PersonalMobilityMessage_tags_1[0]), /* 1 */ + asn_DEF_PersonalMobilityMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_PersonalMobilityMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PersonalMobilityMessage_1, + 14, /* Elements count */ + &asn_SPC_PersonalMobilityMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c new file mode 100644 index 000000000..30b7e9562 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalMobilityMessageStatusType.c @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "PersonalMobilityMessageStatusType.h" + +int +PersonalMobilityMessageStatusType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +PersonalMobilityMessageStatusType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PersonalMobilityMessageStatusType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PersonalMobilityMessageStatusType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PersonalMobilityMessageStatusType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PersonalMobilityMessageStatusType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PersonalMobilityMessageStatusType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PersonalMobilityMessageStatusType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PersonalMobilityMessageStatusType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PersonalMobilityMessageStatusType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PersonalMobilityMessageStatusType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PersonalMobilityMessageStatusType_value2enum_1[] = { + { 0, 3, "new" }, + { 1, 6, "update" }, + { 2, 8, "response" }, + { 3, 6, "cancel" }, + { 4, 7, "arrival" }, + { 5, 9, "completed" } +}; +static const unsigned int asn_MAP_PersonalMobilityMessageStatusType_enum2value_1[] = { + 4, /* arrival(4) */ + 3, /* cancel(3) */ + 5, /* completed(5) */ + 0, /* new(0) */ + 2, /* response(2) */ + 1 /* update(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_PersonalMobilityMessageStatusType_specs_1 = { + asn_MAP_PersonalMobilityMessageStatusType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PersonalMobilityMessageStatusType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PersonalMobilityMessageStatusType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessageStatusType = { + "PersonalMobilityMessageStatusType", + "PersonalMobilityMessageStatusType", + PersonalMobilityMessageStatusType_free, + PersonalMobilityMessageStatusType_print, + PersonalMobilityMessageStatusType_constraint, + PersonalMobilityMessageStatusType_decode_ber, + PersonalMobilityMessageStatusType_encode_der, + PersonalMobilityMessageStatusType_decode_xer, + PersonalMobilityMessageStatusType_encode_xer, + PersonalMobilityMessageStatusType_decode_uper, + PersonalMobilityMessageStatusType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalMobilityMessageStatusType_tags_1, + sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1) + /sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1[0]), /* 1 */ + asn_DEF_PersonalMobilityMessageStatusType_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1) + /sizeof(asn_DEF_PersonalMobilityMessageStatusType_tags_1[0]), /* 1 */ + &asn_PER_type_PersonalMobilityMessageStatusType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PersonalMobilityMessageStatusType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c new file mode 100644 index 000000000..862972046 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PersonalSafetyMessage.c @@ -0,0 +1,312 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PersonalSafetyMessage.h" + +static asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "heading" + }, + { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, accelSet), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accelSet" + }, + { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pathHistory" + }, + { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pathPrediction" + }, + { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, propulsion), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "propulsion" + }, + { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, useState), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUsageState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "useState" + }, + { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossRequest), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingRequest, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crossRequest" + }, + { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, crossState), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingInProgress, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crossState" + }, + { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterSize), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NumberOfParticipantsInCluster, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "clusterSize" + }, + { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, clusterRadius), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalClusterRadius, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "clusterRadius" + }, + { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, eventResponderType), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyEventResponderWorkerType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "eventResponderType" + }, + { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activityType), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyAndRoadWorkerActivity, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "activityType" + }, + { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, activitySubType), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyDirectingTrafficSubType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "activitySubType" + }, + { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, assistType), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalAssistive, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "assistType" + }, + { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, sizing), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UserSizeAndBehaviour, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sizing" + }, + { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachment), + (ASN_TAG_CLASS_CONTEXT | (22 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "attachment" + }, + { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, attachmentRadius), + (ASN_TAG_CLASS_CONTEXT | (23 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "attachmentRadius" + }, + { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, animalType), + (ASN_TAG_CLASS_CONTEXT | (24 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "animalType" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalPersonalSafetyMessage, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 }; +static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ + { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ + { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ + { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { + sizeof(struct PersonalSafetyMessage), + offsetof(struct PersonalSafetyMessage, _asn_ctx), + asn_MAP_PersonalSafetyMessage_tag2el_1, + 26, /* Count of tags in the map */ + asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ + 17, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { + "PersonalSafetyMessage", + "PersonalSafetyMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PersonalSafetyMessage_tags_1, + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PersonalSafetyMessage_1, + 26, /* Elements count */ + &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Position3D-2.c b/src/tmx/Asn_J2735/src/r41/Position3D-2.c new file mode 100644 index 000000000..e6fa1e060 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Position3D-2.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Position3D-2.h" + +static asn_TYPE_member_t asn_MBR_Position3D_2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_2, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_2, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "long" + }, + { ATF_POINTER, 2, offsetof(struct Position3D_2, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Elevation2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "elevation" + }, + { ATF_POINTER, 1, offsetof(struct Position3D_2, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalPosition3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_Position3D_2_oms_1[] = { 2, 3 }; +static ber_tlv_tag_t asn_DEF_Position3D_2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Position3D_2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Position3D_2_specs_1 = { + sizeof(struct Position3D_2), + offsetof(struct Position3D_2, _asn_ctx), + asn_MAP_Position3D_2_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Position3D_2_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_2 = { + "Position3D-2", + "Position3D-2", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Position3D_2_tags_1, + sizeof(asn_DEF_Position3D_2_tags_1) + /sizeof(asn_DEF_Position3D_2_tags_1[0]), /* 1 */ + asn_DEF_Position3D_2_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_2_tags_1) + /sizeof(asn_DEF_Position3D_2_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Position3D_2_1, + 4, /* Elements count */ + &asn_SPC_Position3D_2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Position3D.c b/src/tmx/Asn_J2735/src/r41/Position3D.c new file mode 100644 index 000000000..93c1eb810 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Position3D.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Position3D.h" + +static asn_TYPE_member_t asn_MBR_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "long" + }, + { ATF_POINTER, 1, offsetof(struct Position3D, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Elevation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "elevation" + }, +}; +static int asn_MAP_Position3D_oms_1[] = { 2 }; +static ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { + sizeof(struct Position3D), + offsetof(struct Position3D, _asn_ctx), + asn_MAP_Position3D_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Position3D_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D = { + "Position3D", + "Position3D", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Position3D_tags_1, + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + asn_DEF_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Position3D_1, + 3, /* Elements count */ + &asn_SPC_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PositionConfidence.c b/src/tmx/Asn_J2735/src/r41/PositionConfidence.c new file mode 100644 index 000000000..cf749f712 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PositionConfidence.c @@ -0,0 +1,175 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PositionConfidence.h" + +int +PositionConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +PositionConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +PositionConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PositionConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PositionConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PositionConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PositionConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PositionConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PositionConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PositionConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PositionConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "a500m" }, + { 2, 5, "a200m" }, + { 3, 5, "a100m" }, + { 4, 4, "a50m" }, + { 5, 4, "a20m" }, + { 6, 4, "a10m" }, + { 7, 3, "a5m" }, + { 8, 3, "a2m" }, + { 9, 3, "a1m" }, + { 10, 5, "a50cm" }, + { 11, 5, "a20cm" }, + { 12, 5, "a10cm" }, + { 13, 4, "a5cm" }, + { 14, 4, "a2cm" }, + { 15, 4, "a1cm" } +}; +static unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { + 3, /* a100m(3) */ + 12, /* a10cm(12) */ + 6, /* a10m(6) */ + 15, /* a1cm(15) */ + 9, /* a1m(9) */ + 2, /* a200m(2) */ + 11, /* a20cm(11) */ + 5, /* a20m(5) */ + 14, /* a2cm(14) */ + 8, /* a2m(8) */ + 1, /* a500m(1) */ + 10, /* a50cm(10) */ + 4, /* a50m(4) */ + 13, /* a5cm(13) */ + 7, /* a5m(7) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { + asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { + "PositionConfidence", + "PositionConfidence", + PositionConfidence_free, + PositionConfidence_print, + PositionConfidence_constraint, + PositionConfidence_decode_ber, + PositionConfidence_encode_der, + PositionConfidence_decode_xer, + PositionConfidence_encode_xer, + PositionConfidence_decode_uper, + PositionConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PositionConfidence_tags_1, + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_PositionConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c new file mode 100644 index 000000000..49b38d368 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PositionConfidenceSet.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PositionConfidenceSet.h" + +int +PositionConfidenceSet_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PositionConfidenceSet_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PositionConfidenceSet_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PositionConfidenceSet_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PositionConfidenceSet_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PositionConfidenceSet_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PositionConfidenceSet_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PositionConfidenceSet_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PositionConfidenceSet_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PositionConfidenceSet_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PositionConfidenceSet_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PositionConfidenceSet_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { + "PositionConfidenceSet", + "PositionConfidenceSet", + PositionConfidenceSet_free, + PositionConfidenceSet_print, + PositionConfidenceSet_constraint, + PositionConfidenceSet_decode_ber, + PositionConfidenceSet_encode_der, + PositionConfidenceSet_decode_xer, + PositionConfidenceSet_encode_xer, + PositionConfidenceSet_decode_uper, + PositionConfidenceSet_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PositionConfidenceSet_tags_1, + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + &asn_PER_type_PositionConfidenceSet_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c new file mode 100644 index 000000000..b5b3c679d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PositionalAccuracy.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PositionalAccuracy.h" + +int +PositionalAccuracy_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PositionalAccuracy_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +PositionalAccuracy_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PositionalAccuracy_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PositionalAccuracy_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PositionalAccuracy_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PositionalAccuracy_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PositionalAccuracy_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PositionalAccuracy_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PositionalAccuracy_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PositionalAccuracy_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PositionalAccuracy_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { + "PositionalAccuracy", + "PositionalAccuracy", + PositionalAccuracy_free, + PositionalAccuracy_print, + PositionalAccuracy_constraint, + PositionalAccuracy_decode_ber, + PositionalAccuracy_encode_der, + PositionalAccuracy_decode_xer, + PositionalAccuracy_encode_xer, + PositionalAccuracy_decode_uper, + PositionalAccuracy_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PositionalAccuracy_tags_1, + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + &asn_PER_type_PositionalAccuracy_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c new file mode 100644 index 000000000..a4f0c6c96 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PreemptPriorityList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PreemptPriorityList.h" + +static asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionalSignalControlZone, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { + sizeof(struct PreemptPriorityList), + offsetof(struct PreemptPriorityList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { + "PreemptPriorityList", + "PreemptPriorityList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PreemptPriorityList_tags_1, + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + &asn_PER_type_PreemptPriorityList_constr_1, + asn_MBR_PreemptPriorityList_1, + 1, /* Single element */ + &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c new file mode 100644 index 000000000..85f1f4bb2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PrioritizationResponse.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PrioritizationResponse.h" + +static asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "priorState" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "signalGroup" + }, +}; +static ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { + sizeof(struct PrioritizationResponse), + offsetof(struct PrioritizationResponse, _asn_ctx), + asn_MAP_PrioritizationResponse_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { + "PrioritizationResponse", + "PrioritizationResponse", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PrioritizationResponse_tags_1, + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_PrioritizationResponse_1, + 3, /* Elements count */ + &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c new file mode 100644 index 000000000..0023ae0cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PrioritizationResponseList.h" + +static asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PrioritizationResponse, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { + sizeof(struct PrioritizationResponseList), + offsetof(struct PrioritizationResponseList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { + "PrioritizationResponseList", + "PrioritizationResponseList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PrioritizationResponseList_tags_1, + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + &asn_PER_type_PrioritizationResponseList_constr_1, + asn_MBR_PrioritizationResponseList_1, + 1, /* Single element */ + &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c new file mode 100644 index 000000000..207cae4f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PrioritizationResponseStatus.c @@ -0,0 +1,157 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PrioritizationResponseStatus.h" + +int +PrioritizationResponseStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +PrioritizationResponseStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +PrioritizationResponseStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PrioritizationResponseStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PrioritizationResponseStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PrioritizationResponseStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PrioritizationResponseStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PrioritizationResponseStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PrioritizationResponseStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PrioritizationResponseStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PrioritizationResponseStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 9, "requested" }, + { 2, 10, "processing" }, + { 3, 17, "watchOtherTraffic" }, + { 4, 7, "granted" }, + { 5, 8, "rejected" }, + { 6, 11, "maxPresence" } +}; +static unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { + 4, /* granted(4) */ + 6, /* maxPresence(6) */ + 2, /* processing(2) */ + 5, /* rejected(5) */ + 1, /* requested(1) */ + 0, /* unknown(0) */ + 3 /* watchOtherTraffic(3) */ +}; +static asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { + asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { + "PrioritizationResponseStatus", + "PrioritizationResponseStatus", + PrioritizationResponseStatus_free, + PrioritizationResponseStatus_print, + PrioritizationResponseStatus_constraint, + PrioritizationResponseStatus_decode_ber, + PrioritizationResponseStatus_encode_der, + PrioritizationResponseStatus_decode_xer, + PrioritizationResponseStatus_encode_xer, + PrioritizationResponseStatus_decode_uper, + PrioritizationResponseStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PrioritizationResponseStatus_tags_1, + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + &asn_PER_type_PrioritizationResponseStatus_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Priority.c b/src/tmx/Asn_J2735/src/r41/Priority.c new file mode 100644 index 000000000..d9df55293 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Priority.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Priority.h" + +int +Priority_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +Priority_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +Priority_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Priority_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Priority_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Priority_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Priority_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Priority_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Priority_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Priority_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Priority_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Priority_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Priority_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Priority_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Priority_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Priority_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Priority_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Priority_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Priority_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Priority = { + "Priority", + "Priority", + Priority_free, + Priority_print, + Priority_constraint, + Priority_decode_ber, + Priority_encode_der, + Priority_decode_xer, + Priority_encode_xer, + Priority_decode_uper, + Priority_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Priority_tags_1, + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + asn_DEF_Priority_tags_1, /* Same as above */ + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + &asn_PER_type_Priority_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c new file mode 100644 index 000000000..6fc7d4761 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ProbeDataManagement.c @@ -0,0 +1,338 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ProbeDataManagement.h" + +static int +memb_dataElements_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_term_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_snapshot_constr_8 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_dataElements_constr_13 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_dataElements_constr_13 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_term_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "termtime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermDistance, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "termDistance" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { + sizeof(struct ProbeDataManagement__term), + offsetof(struct ProbeDataManagement__term, _asn_ctx), + offsetof(struct ProbeDataManagement__term, present), + sizeof(((struct ProbeDataManagement__term *)0)->present), + asn_MAP_term_tag2el_5, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_term_5 = { + "term", + "term", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_term_constr_5, + asn_MBR_term_5, + 2, /* Elements count */ + &asn_SPC_term_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_snapshot_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "snapshotTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotDistance, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "snapshotDistance" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { + sizeof(struct ProbeDataManagement__snapshot), + offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), + offsetof(struct ProbeDataManagement__snapshot, present), + sizeof(((struct ProbeDataManagement__snapshot *)0)->present), + asn_MAP_snapshot_tag2el_8, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { + "snapshot", + "snapshot", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_snapshot_constr_8, + asn_MBR_snapshot_8, + 2, /* Elements count */ + &asn_SPC_snapshot_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_dataElements_13[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleStatusRequest, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_dataElements_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_dataElements_specs_13 = { + sizeof(struct ProbeDataManagement__dataElements), + offsetof(struct ProbeDataManagement__dataElements, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_dataElements_13 = { + "dataElements", + "dataElements", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_dataElements_tags_13, + sizeof(asn_DEF_dataElements_tags_13) + /sizeof(asn_DEF_dataElements_tags_13[0]) - 1, /* 1 */ + asn_DEF_dataElements_tags_13, /* Same as above */ + sizeof(asn_DEF_dataElements_tags_13) + /sizeof(asn_DEF_dataElements_tags_13[0]), /* 2 */ + &asn_PER_type_dataElements_constr_13, + asn_MBR_dataElements_13, + 1, /* Single element */ + &asn_SPC_dataElements_specs_13 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Sample, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sample" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "directions" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_term_5, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "term" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_snapshot_8, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "snapshot" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TxTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "txInterval" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, cntTthreshold), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Count, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "cntTthreshold" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, dataElements), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_dataElements_13, + memb_dataElements_constraint_1, + &asn_PER_memb_dataElements_constr_13, + 0, + "dataElements" + }, +}; +static ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* cntTthreshold */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* dataElements */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { + sizeof(struct ProbeDataManagement), + offsetof(struct ProbeDataManagement, _asn_ctx), + asn_MAP_ProbeDataManagement_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 7, /* Start extensions */ + 9 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { + "ProbeDataManagement", + "ProbeDataManagement", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProbeDataManagement_tags_1, + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ProbeDataManagement_1, + 8, /* Elements count */ + &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c new file mode 100644 index 000000000..0f25ffa73 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ProbeSegmentNumber.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ProbeSegmentNumber.h" + +int +ProbeSegmentNumber_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ProbeSegmentNumber_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ProbeSegmentNumber_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProbeSegmentNumber_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProbeSegmentNumber_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProbeSegmentNumber_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProbeSegmentNumber_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProbeSegmentNumber_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProbeSegmentNumber_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProbeSegmentNumber_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProbeSegmentNumber_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { + "ProbeSegmentNumber", + "ProbeSegmentNumber", + ProbeSegmentNumber_free, + ProbeSegmentNumber_print, + ProbeSegmentNumber_constraint, + ProbeSegmentNumber_decode_ber, + ProbeSegmentNumber_encode_der, + ProbeSegmentNumber_decode_xer, + ProbeSegmentNumber_encode_xer, + ProbeSegmentNumber_decode_uper, + ProbeSegmentNumber_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProbeSegmentNumber_tags_1, + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + &asn_PER_type_ProbeSegmentNumber_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c new file mode 100644 index 000000000..cb943ee9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ProbeVehicleData.c @@ -0,0 +1,204 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ProbeVehicleData.h" + +static int +memb_snapshots_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_snapshots_constr_8 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_snapshots_constr_8 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_snapshots_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Snapshot, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_snapshots_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_8 = { + sizeof(struct ProbeVehicleData__snapshots), + offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshots_8 = { + "snapshots", + "snapshots", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_snapshots_tags_8, + sizeof(asn_DEF_snapshots_tags_8) + /sizeof(asn_DEF_snapshots_tags_8[0]) - 1, /* 1 */ + asn_DEF_snapshots_tags_8, /* Same as above */ + sizeof(asn_DEF_snapshots_tags_8) + /sizeof(asn_DEF_snapshots_tags_8[0]), /* 2 */ + &asn_PER_type_snapshots_constr_8, + asn_MBR_snapshots_8, + 1, /* Single element */ + &asn_SPC_snapshots_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProbeSegmentNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "segNum" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "probeID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "startVector" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleType" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, cntSnapshots), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Count, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "cntSnapshots" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_snapshots_8, + memb_snapshots_constraint_1, + &asn_PER_memb_snapshots_constr_8, + 0, + "snapshots" + }, +}; +static int asn_MAP_ProbeVehicleData_oms_1[] = { 1, 2, 5 }; +static ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* cntSnapshots */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* snapshots */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { + sizeof(struct ProbeVehicleData), + offsetof(struct ProbeVehicleData, _asn_ctx), + asn_MAP_ProbeVehicleData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 6, /* Start extensions */ + 8 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { + "ProbeVehicleData", + "ProbeVehicleData", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProbeVehicleData_tags_1, + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ProbeVehicleData_1, + 7, /* Elements count */ + &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PropelledInformation.c b/src/tmx/Asn_J2735/src/r41/PropelledInformation.c new file mode 100644 index 000000000..58038a70c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PropelledInformation.c @@ -0,0 +1,81 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PropelledInformation.h" + +static asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HumanPropelledType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "human" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalPropelledType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "animal" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MotorizedPropelledType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "motor" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ +}; +static asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { + sizeof(struct PropelledInformation), + offsetof(struct PropelledInformation, _asn_ctx), + offsetof(struct PropelledInformation, present), + sizeof(((struct PropelledInformation *)0)->present), + asn_MAP_PropelledInformation_tag2el_1, + 3, /* Count of tags in the map */ + 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { + "PropelledInformation", + "PropelledInformation", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_PropelledInformation_constr_1, + asn_MBR_PropelledInformation_1, + 3, /* Elements count */ + &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c new file mode 100644 index 000000000..baeba2c95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PublicSafetyAndRoadWorkerActivity.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PublicSafetyAndRoadWorkerActivity.h" + +int +PublicSafetyAndRoadWorkerActivity_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +PublicSafetyAndRoadWorkerActivity_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PublicSafetyAndRoadWorkerActivity_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyAndRoadWorkerActivity_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PublicSafetyAndRoadWorkerActivity_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyAndRoadWorkerActivity_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PublicSafetyAndRoadWorkerActivity_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyAndRoadWorkerActivity_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PublicSafetyAndRoadWorkerActivity_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PublicSafetyAndRoadWorkerActivity_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { + "PublicSafetyAndRoadWorkerActivity", + "PublicSafetyAndRoadWorkerActivity", + PublicSafetyAndRoadWorkerActivity_free, + PublicSafetyAndRoadWorkerActivity_print, + PublicSafetyAndRoadWorkerActivity_constraint, + PublicSafetyAndRoadWorkerActivity_decode_ber, + PublicSafetyAndRoadWorkerActivity_encode_der, + PublicSafetyAndRoadWorkerActivity_decode_xer, + PublicSafetyAndRoadWorkerActivity_encode_xer, + PublicSafetyAndRoadWorkerActivity_decode_uper, + PublicSafetyAndRoadWorkerActivity_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c new file mode 100644 index 000000000..f0a2946ba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PublicSafetyDirectingTrafficSubType.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PublicSafetyDirectingTrafficSubType.h" + +int +PublicSafetyDirectingTrafficSubType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 7)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +PublicSafetyDirectingTrafficSubType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PublicSafetyDirectingTrafficSubType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyDirectingTrafficSubType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PublicSafetyDirectingTrafficSubType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyDirectingTrafficSubType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PublicSafetyDirectingTrafficSubType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyDirectingTrafficSubType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PublicSafetyDirectingTrafficSubType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PublicSafetyDirectingTrafficSubType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { + "PublicSafetyDirectingTrafficSubType", + "PublicSafetyDirectingTrafficSubType", + PublicSafetyDirectingTrafficSubType_free, + PublicSafetyDirectingTrafficSubType_print, + PublicSafetyDirectingTrafficSubType_constraint, + PublicSafetyDirectingTrafficSubType_decode_ber, + PublicSafetyDirectingTrafficSubType_encode_der, + PublicSafetyDirectingTrafficSubType_decode_xer, + PublicSafetyDirectingTrafficSubType_encode_xer, + PublicSafetyDirectingTrafficSubType_decode_uper, + PublicSafetyDirectingTrafficSubType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c new file mode 100644 index 000000000..9e5e94783 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/PublicSafetyEventResponderWorkerType.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "PublicSafetyEventResponderWorkerType.h" + +int +PublicSafetyEventResponderWorkerType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +PublicSafetyEventResponderWorkerType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +PublicSafetyEventResponderWorkerType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyEventResponderWorkerType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +PublicSafetyEventResponderWorkerType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyEventResponderWorkerType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +PublicSafetyEventResponderWorkerType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +PublicSafetyEventResponderWorkerType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +PublicSafetyEventResponderWorkerType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + PublicSafetyEventResponderWorkerType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "towOperater" }, + { 2, 16, "fireAndEMSWorker" }, + { 3, 10, "aDOTWorker" }, + { 4, 14, "lawEnforcement" }, + { 5, 15, "hazmatResponder" }, + { 6, 19, "animalControlWorker" }, + { 7, 14, "otherPersonnel" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { + 3, /* aDOTWorker(3) */ + 6, /* animalControlWorker(6) */ + 2, /* fireAndEMSWorker(2) */ + 5, /* hazmatResponder(5) */ + 4, /* lawEnforcement(4) */ + 7, /* otherPersonnel(7) */ + 1, /* towOperater(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { + asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { + "PublicSafetyEventResponderWorkerType", + "PublicSafetyEventResponderWorkerType", + PublicSafetyEventResponderWorkerType_free, + PublicSafetyEventResponderWorkerType_print, + PublicSafetyEventResponderWorkerType_constraint, + PublicSafetyEventResponderWorkerType_decode_ber, + PublicSafetyEventResponderWorkerType_encode_der, + PublicSafetyEventResponderWorkerType_decode_xer, + PublicSafetyEventResponderWorkerType_encode_xer, + PublicSafetyEventResponderWorkerType_decode_uper, + PublicSafetyEventResponderWorkerType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c b/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c new file mode 100644 index 000000000..f7d7c7779 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCM-Corrections.c @@ -0,0 +1,194 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCM-Corrections.h" + +static int +memb_rtcmSets_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 5)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_rtcmSets_constr_7 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_rtcmSets_constr_7 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_rtcmSets_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RTCMmsg, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_rtcmSets_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_rtcmSets_specs_7 = { + sizeof(struct RTCM_Corrections__rtcmSets), + offsetof(struct RTCM_Corrections__rtcmSets, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_rtcmSets_7 = { + "rtcmSets", + "rtcmSets", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_rtcmSets_tags_7, + sizeof(asn_DEF_rtcmSets_tags_7) + /sizeof(asn_DEF_rtcmSets_tags_7[0]) - 1, /* 1 */ + asn_DEF_rtcmSets_tags_7, /* Same as above */ + sizeof(asn_DEF_rtcmSets_tags_7) + /sizeof(asn_DEF_rtcmSets_tags_7[0]), /* 2 */ + &asn_PER_type_rtcmSets_constr_7, + asn_MBR_rtcmSets_7, + 1, /* Single element */ + &asn_SPC_rtcmSets_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_RTCM_Corrections_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rev), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Revision, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rev" + }, + { ATF_POINTER, 1, offsetof(struct RTCM_Corrections, anchorPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "anchorPoint" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMHeader, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCM_Corrections, rtcmSets), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_rtcmSets_7, + memb_rtcmSets_constraint_1, + &asn_PER_memb_rtcmSets_constr_7, + 0, + "rtcmSets" + }, +}; +static int asn_MAP_RTCM_Corrections_oms_1[] = { 3 }; +static ber_tlv_tag_t asn_DEF_RTCM_Corrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RTCM_Corrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* rtcmSets */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RTCM_Corrections_specs_1 = { + sizeof(struct RTCM_Corrections), + offsetof(struct RTCM_Corrections, _asn_ctx), + asn_MAP_RTCM_Corrections_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_RTCM_Corrections_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Corrections = { + "RTCM-Corrections", + "RTCM-Corrections", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCM_Corrections_tags_1, + sizeof(asn_DEF_RTCM_Corrections_tags_1) + /sizeof(asn_DEF_RTCM_Corrections_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Corrections_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Corrections_tags_1) + /sizeof(asn_DEF_RTCM_Corrections_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RTCM_Corrections_1, + 6, /* Elements count */ + &asn_SPC_RTCM_Corrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-ID.c b/src/tmx/Asn_J2735/src/r41/RTCM-ID.c new file mode 100644 index 000000000..d56e0259c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCM-ID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCM-ID.h" + +int +RTCM_ID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RTCM_ID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RTCM_ID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RTCM_ID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RTCM_ID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RTCM_ID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RTCM_ID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RTCM_ID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RTCM_ID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RTCM_ID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RTCM_ID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RTCM_ID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RTCM_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_ID = { + "RTCM-ID", + "RTCM-ID", + RTCM_ID_free, + RTCM_ID_print, + RTCM_ID_constraint, + RTCM_ID_decode_ber, + RTCM_ID_encode_der, + RTCM_ID_decode_xer, + RTCM_ID_encode_xer, + RTCM_ID_decode_uper, + RTCM_ID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCM_ID_tags_1, + sizeof(asn_DEF_RTCM_ID_tags_1) + /sizeof(asn_DEF_RTCM_ID_tags_1[0]), /* 1 */ + asn_DEF_RTCM_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_ID_tags_1) + /sizeof(asn_DEF_RTCM_ID_tags_1[0]), /* 1 */ + &asn_PER_type_RTCM_ID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c b/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c new file mode 100644 index 000000000..c87e06958 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCM-Payload.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCM-Payload.h" + +int +RTCM_Payload_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +RTCM_Payload_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +RTCM_Payload_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RTCM_Payload_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RTCM_Payload_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RTCM_Payload_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RTCM_Payload_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RTCM_Payload_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RTCM_Payload_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RTCM_Payload_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RTCM_Payload_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RTCM_Payload_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RTCM_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Payload = { + "RTCM-Payload", + "RTCM-Payload", + RTCM_Payload_free, + RTCM_Payload_print, + RTCM_Payload_constraint, + RTCM_Payload_decode_ber, + RTCM_Payload_encode_der, + RTCM_Payload_decode_xer, + RTCM_Payload_encode_xer, + RTCM_Payload_decode_uper, + RTCM_Payload_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCM_Payload_tags_1, + sizeof(asn_DEF_RTCM_Payload_tags_1) + /sizeof(asn_DEF_RTCM_Payload_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Payload_tags_1) + /sizeof(asn_DEF_RTCM_Payload_tags_1[0]), /* 1 */ + &asn_PER_type_RTCM_Payload_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c b/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c new file mode 100644 index 000000000..4f0f400d3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCM-Revision.c @@ -0,0 +1,179 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCM-Revision.h" + +int +RTCM_Revision_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +RTCM_Revision_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +RTCM_Revision_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RTCM_Revision_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RTCM_Revision_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RTCM_Revision_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RTCM_Revision_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RTCM_Revision_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RTCM_Revision_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RTCM_Revision_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RTCM_Revision_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "reserved" }, + { 2, 7, "rtcmCMR" }, + { 3, 12, "rtcmCMR-Plus" }, + { 4, 9, "rtcmSAPOS" }, + { 5, 13, "rtcmSAPOS-Adv" }, + { 6, 8, "rtcmRTCA" }, + { 7, 7, "rtcmRAW" }, + { 8, 9, "rtcmRINEX" }, + { 9, 7, "rtcmSP3" }, + { 10, 9, "rtcmBINEX" }, + { 19, 10, "rtcmRev2-x" }, + { 20, 10, "rtcmRev2-0" }, + { 21, 10, "rtcmRev2-1" }, + { 23, 10, "rtcmRev2-3" }, + { 30, 10, "rtcmRev3-0" }, + { 31, 10, "rtcmRev3-1" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { + 1, /* reserved(1) */ + 10, /* rtcmBINEX(10) */ + 2, /* rtcmCMR(2) */ + 3, /* rtcmCMR-Plus(3) */ + 7, /* rtcmRAW(7) */ + 8, /* rtcmRINEX(8) */ + 6, /* rtcmRTCA(6) */ + 12, /* rtcmRev2-0(20) */ + 13, /* rtcmRev2-1(21) */ + 14, /* rtcmRev2-3(23) */ + 11, /* rtcmRev2-x(19) */ + 15, /* rtcmRev3-0(30) */ + 16, /* rtcmRev3-1(31) */ + 4, /* rtcmSAPOS(4) */ + 5, /* rtcmSAPOS-Adv(5) */ + 9, /* rtcmSP3(9) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { + asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { + "RTCM-Revision", + "RTCM-Revision", + RTCM_Revision_free, + RTCM_Revision_print, + RTCM_Revision_constraint, + RTCM_Revision_decode_ber, + RTCM_Revision_encode_der, + RTCM_Revision_decode_xer, + RTCM_Revision_encode_xer, + RTCM_Revision_decode_uper, + RTCM_Revision_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCM_Revision_tags_1, + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + &asn_PER_type_RTCM_Revision_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCMHeader.c b/src/tmx/Asn_J2735/src/r41/RTCMHeader.c new file mode 100644 index 000000000..2ccd59962 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCMHeader.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCMHeader.h" + +int +RTCMHeader_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +RTCMHeader_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +RTCMHeader_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RTCMHeader_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RTCMHeader_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RTCMHeader_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RTCMHeader_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RTCMHeader_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RTCMHeader_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RTCMHeader_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RTCMHeader_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RTCMHeader_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RTCMHeader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCMHeader = { + "RTCMHeader", + "RTCMHeader", + RTCMHeader_free, + RTCMHeader_print, + RTCMHeader_constraint, + RTCMHeader_decode_ber, + RTCMHeader_encode_der, + RTCMHeader_decode_xer, + RTCMHeader_encode_xer, + RTCMHeader_decode_uper, + RTCMHeader_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCMHeader_tags_1, + sizeof(asn_DEF_RTCMHeader_tags_1) + /sizeof(asn_DEF_RTCMHeader_tags_1[0]), /* 1 */ + asn_DEF_RTCMHeader_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMHeader_tags_1) + /sizeof(asn_DEF_RTCMHeader_tags_1[0]), /* 1 */ + &asn_PER_type_RTCMHeader_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCMPackage.c b/src/tmx/Asn_J2735/src/r41/RTCMPackage.c new file mode 100644 index 000000000..57b4f7a35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCMPackage.c @@ -0,0 +1,1302 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCMPackage.h" + +static int +memb_msg1001_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 16 && size <= 124)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1002_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 18 && size <= 156)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1003_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 21 && size <= 210)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1004_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 24 && size <= 258)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1005_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 19)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1006_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 21)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1007_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 5 && size <= 36)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1008_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 6 && size <= 68)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1009_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 16 && size <= 136)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1010_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 18 && size <= 166)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1011_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 21 && size <= 222)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1012_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 24 && size <= 268)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1013_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 13 && size <= 27)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1014_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1015_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 13 && size <= 69)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1016_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 14 && size <= 81)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1017_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 16 && size <= 115)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1019_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 62)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1020_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 45)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1021_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 62)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1022_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 75)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1023_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 73)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1024_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 74)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1025_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 25)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1026_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 30)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1027_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 33)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1029_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10 && size <= 69)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1030_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 14 && size <= 105)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1031_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 15 && size <= 107)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msg1032_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 20)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_msg1001_constr_4 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 16, 124 } /* (SIZE(16..124)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1002_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 18, 156 } /* (SIZE(18..156)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1003_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 21, 210 } /* (SIZE(21..210)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1004_constr_7 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 24, 258 } /* (SIZE(24..258)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1005_constr_8 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1006_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 21, 21 } /* (SIZE(21..21)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1007_constr_10 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 5, 36 } /* (SIZE(5..36)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1008_constr_11 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 6, 68 } /* (SIZE(6..68)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1009_constr_12 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 16, 136 } /* (SIZE(16..136)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1010_constr_13 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 18, 166 } /* (SIZE(18..166)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1011_constr_14 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 21, 222 } /* (SIZE(21..222)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1012_constr_15 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 24, 268 } /* (SIZE(24..268)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1013_constr_16 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 13, 27 } /* (SIZE(13..27)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1014_constr_18 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 15, 15 } /* (SIZE(15..15)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1015_constr_19 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 13, 69 } /* (SIZE(13..69)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1016_constr_20 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 14, 81 } /* (SIZE(14..81)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1017_constr_21 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 16, 115 } /* (SIZE(16..115)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1019_constr_22 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 62, 62 } /* (SIZE(62..62)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1020_constr_23 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 45, 45 } /* (SIZE(45..45)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1021_constr_24 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 62, 62 } /* (SIZE(62..62)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1022_constr_25 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 75, 75 } /* (SIZE(75..75)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1023_constr_26 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 73, 73 } /* (SIZE(73..73)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1024_constr_27 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 74, 74 } /* (SIZE(74..74)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1025_constr_28 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 25, 25 } /* (SIZE(25..25)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1026_constr_29 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 30, 30 } /* (SIZE(30..30)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1027_constr_30 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 33, 33 } /* (SIZE(33..33)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1029_constr_31 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 10, 69 } /* (SIZE(10..69)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1030_constr_32 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 14, 105 } /* (SIZE(14..105)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1031_constr_33 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 15, 107 } /* (SIZE(15..107)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_msg1032_constr_34 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 20, 20 } /* (SIZE(20..20)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct RTCMPackage, anchorPoint), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "anchorPoint" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMHeader, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rtcmHeader" + }, + { ATF_POINTER, 30, offsetof(struct RTCMPackage, msg1001), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1001_constraint_1, + &asn_PER_memb_msg1001_constr_4, + 0, + "msg1001" + }, + { ATF_POINTER, 29, offsetof(struct RTCMPackage, msg1002), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1002_constraint_1, + &asn_PER_memb_msg1002_constr_5, + 0, + "msg1002" + }, + { ATF_POINTER, 28, offsetof(struct RTCMPackage, msg1003), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1003_constraint_1, + &asn_PER_memb_msg1003_constr_6, + 0, + "msg1003" + }, + { ATF_POINTER, 27, offsetof(struct RTCMPackage, msg1004), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1004_constraint_1, + &asn_PER_memb_msg1004_constr_7, + 0, + "msg1004" + }, + { ATF_POINTER, 26, offsetof(struct RTCMPackage, msg1005), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1005_constraint_1, + &asn_PER_memb_msg1005_constr_8, + 0, + "msg1005" + }, + { ATF_POINTER, 25, offsetof(struct RTCMPackage, msg1006), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1006_constraint_1, + &asn_PER_memb_msg1006_constr_9, + 0, + "msg1006" + }, + { ATF_POINTER, 24, offsetof(struct RTCMPackage, msg1007), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1007_constraint_1, + &asn_PER_memb_msg1007_constr_10, + 0, + "msg1007" + }, + { ATF_POINTER, 23, offsetof(struct RTCMPackage, msg1008), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1008_constraint_1, + &asn_PER_memb_msg1008_constr_11, + 0, + "msg1008" + }, + { ATF_POINTER, 22, offsetof(struct RTCMPackage, msg1009), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1009_constraint_1, + &asn_PER_memb_msg1009_constr_12, + 0, + "msg1009" + }, + { ATF_POINTER, 21, offsetof(struct RTCMPackage, msg1010), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1010_constraint_1, + &asn_PER_memb_msg1010_constr_13, + 0, + "msg1010" + }, + { ATF_POINTER, 20, offsetof(struct RTCMPackage, msg1011), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1011_constraint_1, + &asn_PER_memb_msg1011_constr_14, + 0, + "msg1011" + }, + { ATF_POINTER, 19, offsetof(struct RTCMPackage, msg1012), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1012_constraint_1, + &asn_PER_memb_msg1012_constr_15, + 0, + "msg1012" + }, + { ATF_POINTER, 18, offsetof(struct RTCMPackage, msg1013), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1013_constraint_1, + &asn_PER_memb_msg1013_constr_16, + 0, + "msg1013" + }, + { ATF_POINTER, 17, offsetof(struct RTCMPackage, msg1014), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1014_constraint_1, + &asn_PER_memb_msg1014_constr_18, + 0, + "msg1014" + }, + { ATF_POINTER, 16, offsetof(struct RTCMPackage, msg1015), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1015_constraint_1, + &asn_PER_memb_msg1015_constr_19, + 0, + "msg1015" + }, + { ATF_POINTER, 15, offsetof(struct RTCMPackage, msg1016), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1016_constraint_1, + &asn_PER_memb_msg1016_constr_20, + 0, + "msg1016" + }, + { ATF_POINTER, 14, offsetof(struct RTCMPackage, msg1017), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1017_constraint_1, + &asn_PER_memb_msg1017_constr_21, + 0, + "msg1017" + }, + { ATF_POINTER, 13, offsetof(struct RTCMPackage, msg1019), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1019_constraint_1, + &asn_PER_memb_msg1019_constr_22, + 0, + "msg1019" + }, + { ATF_POINTER, 12, offsetof(struct RTCMPackage, msg1020), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1020_constraint_1, + &asn_PER_memb_msg1020_constr_23, + 0, + "msg1020" + }, + { ATF_POINTER, 11, offsetof(struct RTCMPackage, msg1021), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1021_constraint_1, + &asn_PER_memb_msg1021_constr_24, + 0, + "msg1021" + }, + { ATF_POINTER, 10, offsetof(struct RTCMPackage, msg1022), + (ASN_TAG_CLASS_CONTEXT | (22 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1022_constraint_1, + &asn_PER_memb_msg1022_constr_25, + 0, + "msg1022" + }, + { ATF_POINTER, 9, offsetof(struct RTCMPackage, msg1023), + (ASN_TAG_CLASS_CONTEXT | (23 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1023_constraint_1, + &asn_PER_memb_msg1023_constr_26, + 0, + "msg1023" + }, + { ATF_POINTER, 8, offsetof(struct RTCMPackage, msg1024), + (ASN_TAG_CLASS_CONTEXT | (24 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1024_constraint_1, + &asn_PER_memb_msg1024_constr_27, + 0, + "msg1024" + }, + { ATF_POINTER, 7, offsetof(struct RTCMPackage, msg1025), + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1025_constraint_1, + &asn_PER_memb_msg1025_constr_28, + 0, + "msg1025" + }, + { ATF_POINTER, 6, offsetof(struct RTCMPackage, msg1026), + (ASN_TAG_CLASS_CONTEXT | (26 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1026_constraint_1, + &asn_PER_memb_msg1026_constr_29, + 0, + "msg1026" + }, + { ATF_POINTER, 5, offsetof(struct RTCMPackage, msg1027), + (ASN_TAG_CLASS_CONTEXT | (27 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1027_constraint_1, + &asn_PER_memb_msg1027_constr_30, + 0, + "msg1027" + }, + { ATF_POINTER, 4, offsetof(struct RTCMPackage, msg1029), + (ASN_TAG_CLASS_CONTEXT | (28 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1029_constraint_1, + &asn_PER_memb_msg1029_constr_31, + 0, + "msg1029" + }, + { ATF_POINTER, 3, offsetof(struct RTCMPackage, msg1030), + (ASN_TAG_CLASS_CONTEXT | (29 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1030_constraint_1, + &asn_PER_memb_msg1030_constr_32, + 0, + "msg1030" + }, + { ATF_POINTER, 2, offsetof(struct RTCMPackage, msg1031), + (ASN_TAG_CLASS_CONTEXT | (30 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1031_constraint_1, + &asn_PER_memb_msg1031_constr_33, + 0, + "msg1031" + }, + { ATF_POINTER, 1, offsetof(struct RTCMPackage, msg1032), + (ASN_TAG_CLASS_CONTEXT | (31 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + memb_msg1032_constraint_1, + &asn_PER_memb_msg1032_constr_34, + 0, + "msg1032" + }, +}; +static int asn_MAP_RTCMPackage_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 }; +static ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchorPoint */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg1001 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* msg1002 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* msg1003 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msg1004 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* msg1005 */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* msg1006 */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* msg1007 */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* msg1008 */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* msg1009 */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* msg1010 */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* msg1011 */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* msg1012 */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* msg1013 */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* msg1014 */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* msg1015 */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* msg1016 */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* msg1017 */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* msg1019 */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* msg1020 */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* msg1021 */ + { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* msg1022 */ + { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* msg1023 */ + { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* msg1024 */ + { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 }, /* msg1025 */ + { (ASN_TAG_CLASS_CONTEXT | (26 << 2)), 26, 0, 0 }, /* msg1026 */ + { (ASN_TAG_CLASS_CONTEXT | (27 << 2)), 27, 0, 0 }, /* msg1027 */ + { (ASN_TAG_CLASS_CONTEXT | (28 << 2)), 28, 0, 0 }, /* msg1029 */ + { (ASN_TAG_CLASS_CONTEXT | (29 << 2)), 29, 0, 0 }, /* msg1030 */ + { (ASN_TAG_CLASS_CONTEXT | (30 << 2)), 30, 0, 0 }, /* msg1031 */ + { (ASN_TAG_CLASS_CONTEXT | (31 << 2)), 31, 0, 0 } /* msg1032 */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { + sizeof(struct RTCMPackage), + offsetof(struct RTCMPackage, _asn_ctx), + asn_MAP_RTCMPackage_tag2el_1, + 32, /* Count of tags in the map */ + asn_MAP_RTCMPackage_oms_1, /* Optional members */ + 14, 17, /* Root/Additions */ + 14, /* Start extensions */ + 33 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { + "RTCMPackage", + "RTCMPackage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCMPackage_tags_1, + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + asn_DEF_RTCMPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RTCMPackage_1, + 32, /* Elements count */ + &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RTCMmsg.c b/src/tmx/Asn_J2735/src/r41/RTCMmsg.c new file mode 100644 index 000000000..2643389e5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RTCMmsg.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RTCMmsg.h" + +static asn_TYPE_member_t asn_MBR_RTCMmsg_1[] = { + { ATF_POINTER, 2, offsetof(struct RTCMmsg, rev), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Revision, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rev" + }, + { ATF_POINTER, 1, offsetof(struct RTCMmsg, rtcmID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_ID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rtcmID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMmsg, payload), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Payload, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "payload" + }, +}; +static int asn_MAP_RTCMmsg_oms_1[] = { 0, 1 }; +static ber_tlv_tag_t asn_DEF_RTCMmsg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RTCMmsg_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rtcmID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* payload */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RTCMmsg_specs_1 = { + sizeof(struct RTCMmsg), + offsetof(struct RTCMmsg, _asn_ctx), + asn_MAP_RTCMmsg_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RTCMmsg_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmsg = { + "RTCMmsg", + "RTCMmsg", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RTCMmsg_tags_1, + sizeof(asn_DEF_RTCMmsg_tags_1) + /sizeof(asn_DEF_RTCMmsg_tags_1[0]), /* 1 */ + asn_DEF_RTCMmsg_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmsg_tags_1) + /sizeof(asn_DEF_RTCMmsg_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RTCMmsg_1, + 3, /* Elements count */ + &asn_SPC_RTCMmsg_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RainSensor.c b/src/tmx/Asn_J2735/src/r41/RainSensor.c new file mode 100644 index 000000000..5e1d219a4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RainSensor.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RainSensor.h" + +int +RainSensor_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +RainSensor_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +RainSensor_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RainSensor_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RainSensor_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RainSensor_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RainSensor_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RainSensor_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RainSensor_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RainSensor_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RainSensor_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RainSensor_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RainSensor_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "lightMist" }, + { 2, 9, "heavyMist" }, + { 3, 18, "lightRainOrDrizzle" }, + { 4, 4, "rain" }, + { 5, 12, "moderateRain" }, + { 6, 9, "heavyRain" }, + { 7, 13, "heavyDownpour" } +}; +static unsigned int asn_MAP_RainSensor_enum2value_1[] = { + 7, /* heavyDownpour(7) */ + 2, /* heavyMist(2) */ + 6, /* heavyRain(6) */ + 1, /* lightMist(1) */ + 3, /* lightRainOrDrizzle(3) */ + 5, /* moderateRain(5) */ + 0, /* none(0) */ + 4 /* rain(4) */ +}; +static asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { + asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RainSensor = { + "RainSensor", + "RainSensor", + RainSensor_free, + RainSensor_print, + RainSensor_constraint, + RainSensor_decode_ber, + RainSensor_encode_der, + RainSensor_decode_xer, + RainSensor_encode_xer, + RainSensor_decode_uper, + RainSensor_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RainSensor_tags_1, + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + asn_DEF_RainSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + &asn_PER_type_RainSensor_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RainSensor_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c new file mode 100644 index 000000000..03b2ccd91 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-AdvisorySpeed.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-AdvisorySpeed.h" + +static ber_tlv_tag_t asn_DEF_Reg_AdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_AdvisorySpeed_specs_1 = { + sizeof(struct Reg_AdvisorySpeed), + offsetof(struct Reg_AdvisorySpeed, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_AdvisorySpeed = { + "Reg-AdvisorySpeed", + "Reg-AdvisorySpeed", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_AdvisorySpeed_tags_1, + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_Reg_AdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_Reg_AdvisorySpeed_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_AdvisorySpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c b/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c new file mode 100644 index 000000000..a372ab5f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-ComputedLane.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-ComputedLane.h" + +static ber_tlv_tag_t asn_DEF_Reg_ComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_ComputedLane_specs_1 = { + sizeof(struct Reg_ComputedLane), + offsetof(struct Reg_ComputedLane, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ComputedLane = { + "Reg-ComputedLane", + "Reg-ComputedLane", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_ComputedLane_tags_1, + sizeof(asn_DEF_Reg_ComputedLane_tags_1) + /sizeof(asn_DEF_Reg_ComputedLane_tags_1[0]), /* 1 */ + asn_DEF_Reg_ComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_ComputedLane_tags_1) + /sizeof(asn_DEF_Reg_ComputedLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_ComputedLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c new file mode 100644 index 000000000..608c744e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-ConnectionManeuverAssist.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-ConnectionManeuverAssist.h" + +static ber_tlv_tag_t asn_DEF_Reg_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_ConnectionManeuverAssist_specs_1 = { + sizeof(struct Reg_ConnectionManeuverAssist), + offsetof(struct Reg_ConnectionManeuverAssist, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_ConnectionManeuverAssist = { + "Reg-ConnectionManeuverAssist", + "Reg-ConnectionManeuverAssist", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_Reg_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_Reg_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c b/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c new file mode 100644 index 000000000..37d1269b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-GenericLane.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-GenericLane.h" + +static ber_tlv_tag_t asn_DEF_Reg_GenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_GenericLane_specs_1 = { + sizeof(struct Reg_GenericLane), + offsetof(struct Reg_GenericLane, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_GenericLane = { + "Reg-GenericLane", + "Reg-GenericLane", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_GenericLane_tags_1, + sizeof(asn_DEF_Reg_GenericLane_tags_1) + /sizeof(asn_DEF_Reg_GenericLane_tags_1[0]), /* 1 */ + asn_DEF_Reg_GenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_GenericLane_tags_1) + /sizeof(asn_DEF_Reg_GenericLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_GenericLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c b/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c new file mode 100644 index 000000000..e4c86abb3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-Intersection.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-Intersection.h" + +static ber_tlv_tag_t asn_DEF_Reg_Intersection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_Intersection_specs_1 = { + sizeof(struct Reg_Intersection), + offsetof(struct Reg_Intersection, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_Intersection = { + "Reg-Intersection", + "Reg-Intersection", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_Intersection_tags_1, + sizeof(asn_DEF_Reg_Intersection_tags_1) + /sizeof(asn_DEF_Reg_Intersection_tags_1[0]), /* 1 */ + asn_DEF_Reg_Intersection_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_Intersection_tags_1) + /sizeof(asn_DEF_Reg_Intersection_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_Intersection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c b/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c new file mode 100644 index 000000000..52483a6f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-IntersectionState.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-IntersectionState.h" + +static ber_tlv_tag_t asn_DEF_Reg_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_IntersectionState_specs_1 = { + sizeof(struct Reg_IntersectionState), + offsetof(struct Reg_IntersectionState, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_IntersectionState = { + "Reg-IntersectionState", + "Reg-IntersectionState", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_IntersectionState_tags_1, + sizeof(asn_DEF_Reg_IntersectionState_tags_1) + /sizeof(asn_DEF_Reg_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_Reg_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_IntersectionState_tags_1) + /sizeof(asn_DEF_Reg_IntersectionState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c b/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c new file mode 100644 index 000000000..d0150ff47 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-LaneAttributes.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-LaneAttributes.h" + +static ber_tlv_tag_t asn_DEF_Reg_LaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneAttributes_specs_1 = { + sizeof(struct Reg_LaneAttributes), + offsetof(struct Reg_LaneAttributes, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneAttributes = { + "Reg-LaneAttributes", + "Reg-LaneAttributes", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_LaneAttributes_tags_1, + sizeof(asn_DEF_Reg_LaneAttributes_tags_1) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_Reg_LaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_LaneAttributes_tags_1) + /sizeof(asn_DEF_Reg_LaneAttributes_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_LaneAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c new file mode 100644 index 000000000..0af1e39b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-LaneDataAttribute.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-LaneDataAttribute.h" + +static ber_tlv_tag_t asn_DEF_Reg_LaneDataAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_LaneDataAttribute_specs_1 = { + sizeof(struct Reg_LaneDataAttribute), + offsetof(struct Reg_LaneDataAttribute, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_LaneDataAttribute = { + "Reg-LaneDataAttribute", + "Reg-LaneDataAttribute", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_LaneDataAttribute_tags_1, + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ + asn_DEF_Reg_LaneDataAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1) + /sizeof(asn_DEF_Reg_LaneDataAttribute_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MapData.c b/src/tmx/Asn_J2735/src/r41/Reg-MapData.c new file mode 100644 index 000000000..5c1d1cf6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-MapData.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-MapData.h" + +static ber_tlv_tag_t asn_DEF_Reg_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_MapData_specs_1 = { + sizeof(struct Reg_MapData), + offsetof(struct Reg_MapData, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MapData = { + "Reg-MapData", + "Reg-MapData", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_MapData_tags_1, + sizeof(asn_DEF_Reg_MapData_tags_1) + /sizeof(asn_DEF_Reg_MapData_tags_1[0]), /* 1 */ + asn_DEF_Reg_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_MapData_tags_1) + /sizeof(asn_DEF_Reg_MapData_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c b/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c new file mode 100644 index 000000000..a63b5d598 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-MovementEvent.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-MovementEvent.h" + +static ber_tlv_tag_t asn_DEF_Reg_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementEvent_specs_1 = { + sizeof(struct Reg_MovementEvent), + offsetof(struct Reg_MovementEvent, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementEvent = { + "Reg-MovementEvent", + "Reg-MovementEvent", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_MovementEvent_tags_1, + sizeof(asn_DEF_Reg_MovementEvent_tags_1) + /sizeof(asn_DEF_Reg_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_Reg_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_MovementEvent_tags_1) + /sizeof(asn_DEF_Reg_MovementEvent_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c b/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c new file mode 100644 index 000000000..1925bbf35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-MovementState.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-MovementState.h" + +static ber_tlv_tag_t asn_DEF_Reg_MovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_MovementState_specs_1 = { + sizeof(struct Reg_MovementState), + offsetof(struct Reg_MovementState, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_MovementState = { + "Reg-MovementState", + "Reg-MovementState", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_MovementState_tags_1, + sizeof(asn_DEF_Reg_MovementState_tags_1) + /sizeof(asn_DEF_Reg_MovementState_tags_1[0]), /* 1 */ + asn_DEF_Reg_MovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_MovementState_tags_1) + /sizeof(asn_DEF_Reg_MovementState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_MovementState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c b/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c new file mode 100644 index 000000000..99923fcac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-NodeAttribute.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-NodeAttribute.h" + +static ber_tlv_tag_t asn_DEF_Reg_NodeAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeAttribute_specs_1 = { + sizeof(struct Reg_NodeAttribute), + offsetof(struct Reg_NodeAttribute, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeAttribute = { + "Reg-NodeAttribute", + "Reg-NodeAttribute", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_NodeAttribute_tags_1, + sizeof(asn_DEF_Reg_NodeAttribute_tags_1) + /sizeof(asn_DEF_Reg_NodeAttribute_tags_1[0]), /* 1 */ + asn_DEF_Reg_NodeAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_NodeAttribute_tags_1) + /sizeof(asn_DEF_Reg_NodeAttribute_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_NodeAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c new file mode 100644 index 000000000..697cba849 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-NodeOffsetPoint.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-NodeOffsetPoint.h" + +static ber_tlv_tag_t asn_DEF_Reg_NodeOffsetPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_NodeOffsetPoint_specs_1 = { + sizeof(struct Reg_NodeOffsetPoint), + offsetof(struct Reg_NodeOffsetPoint, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_NodeOffsetPoint = { + "Reg-NodeOffsetPoint", + "Reg-NodeOffsetPoint", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_NodeOffsetPoint_tags_1, + sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1) + /sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1[0]), /* 1 */ + asn_DEF_Reg_NodeOffsetPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1) + /sizeof(asn_DEF_Reg_NodeOffsetPoint_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_NodeOffsetPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c new file mode 100644 index 000000000..8890985f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-PersonalMobilityMessage.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "Reg-PersonalMobilityMessage.h" + +static const ber_tlv_tag_t asn_DEF_Reg_PersonalMobilityMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalMobilityMessage_specs_1 = { + sizeof(struct Reg_PersonalMobilityMessage), + offsetof(struct Reg_PersonalMobilityMessage, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_PersonalMobilityMessage = { + "Reg-PersonalMobilityMessage", + "Reg-PersonalMobilityMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_PersonalMobilityMessage_tags_1, + sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1[0]), /* 1 */ + asn_DEF_Reg_PersonalMobilityMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_Reg_PersonalMobilityMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_PersonalMobilityMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c new file mode 100644 index 000000000..cb4cd9fa3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-PersonalSafetyMessage.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "Reg-PersonalSafetyMessage.h" + +static const ber_tlv_tag_t asn_DEF_Reg_PersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_PersonalSafetyMessage_specs_1 = { + sizeof(struct Reg_PersonalSafetyMessage), + offsetof(struct Reg_PersonalSafetyMessage, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_PersonalSafetyMessage = { + "Reg-PersonalSafetyMessage", + "Reg-PersonalSafetyMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_PersonalSafetyMessage_tags_1, + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_Reg_PersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_PersonalSafetyMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_PersonalSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c b/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c new file mode 100644 index 000000000..af1fb0e0c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-Position3D.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-Position3D.h" + +static ber_tlv_tag_t asn_DEF_Reg_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_Position3D_specs_1 = { + sizeof(struct Reg_Position3D), + offsetof(struct Reg_Position3D, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_Position3D = { + "Reg-Position3D", + "Reg-Position3D", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_Position3D_tags_1, + sizeof(asn_DEF_Reg_Position3D_tags_1) + /sizeof(asn_DEF_Reg_Position3D_tags_1[0]), /* 1 */ + asn_DEF_Reg_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_Position3D_tags_1) + /sizeof(asn_DEF_Reg_Position3D_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c new file mode 100644 index 000000000..f6915ed03 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-RestrictionUserType.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-RestrictionUserType.h" + +static ber_tlv_tag_t asn_DEF_Reg_RestrictionUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_RestrictionUserType_specs_1 = { + sizeof(struct Reg_RestrictionUserType), + offsetof(struct Reg_RestrictionUserType, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RestrictionUserType = { + "Reg-RestrictionUserType", + "Reg-RestrictionUserType", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_RestrictionUserType_tags_1, + sizeof(asn_DEF_Reg_RestrictionUserType_tags_1) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_1[0]), /* 1 */ + asn_DEF_Reg_RestrictionUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_RestrictionUserType_tags_1) + /sizeof(asn_DEF_Reg_RestrictionUserType_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c b/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c new file mode 100644 index 000000000..55c0e89f6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-RoadSegment.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-RoadSegment.h" + +static ber_tlv_tag_t asn_DEF_Reg_RoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_RoadSegment_specs_1 = { + sizeof(struct Reg_RoadSegment), + offsetof(struct Reg_RoadSegment, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_RoadSegment = { + "Reg-RoadSegment", + "Reg-RoadSegment", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_RoadSegment_tags_1, + sizeof(asn_DEF_Reg_RoadSegment_tags_1) + /sizeof(asn_DEF_Reg_RoadSegment_tags_1[0]), /* 1 */ + asn_DEF_Reg_RoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_RoadSegment_tags_1) + /sizeof(asn_DEF_Reg_RoadSegment_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_RoadSegment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c b/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c new file mode 100644 index 000000000..cf3024414 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-SPAT.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-SPAT.h" + +static ber_tlv_tag_t asn_DEF_Reg_SPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_SPAT_specs_1 = { + sizeof(struct Reg_SPAT), + offsetof(struct Reg_SPAT, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SPAT = { + "Reg-SPAT", + "Reg-SPAT", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_SPAT_tags_1, + sizeof(asn_DEF_Reg_SPAT_tags_1) + /sizeof(asn_DEF_Reg_SPAT_tags_1[0]), /* 1 */ + asn_DEF_Reg_SPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_SPAT_tags_1) + /sizeof(asn_DEF_Reg_SPAT_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_SPAT_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c b/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c new file mode 100644 index 000000000..1c6e4d383 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Reg-SignalControlZone.c @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "REGION" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Reg-SignalControlZone.h" + +static ber_tlv_tag_t asn_DEF_Reg_SignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_Reg_SignalControlZone_specs_1 = { + sizeof(struct Reg_SignalControlZone), + offsetof(struct Reg_SignalControlZone, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_SignalControlZone = { + "Reg-SignalControlZone", + "Reg-SignalControlZone", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Reg_SignalControlZone_tags_1, + sizeof(asn_DEF_Reg_SignalControlZone_tags_1) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_Reg_SignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_SignalControlZone_tags_1) + /sizeof(asn_DEF_Reg_SignalControlZone_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + &asn_SPC_Reg_SignalControlZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionList.c b/src/tmx/Asn_J2735/src/r41/RegionList.c new file mode 100644 index 000000000..ff9390ff1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionList.h" + +static asn_per_constraints_t asn_PER_type_RegionList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RegionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionOffsets, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { + sizeof(struct RegionList), + offsetof(struct RegionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionList = { + "RegionList", + "RegionList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionList_tags_1, + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + asn_DEF_RegionList_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + &asn_PER_type_RegionList_constr_1, + asn_MBR_RegionList_1, + 1, /* Single element */ + &asn_SPC_RegionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionOffsets.c b/src/tmx/Asn_J2735/src/r41/RegionOffsets.c new file mode 100644 index 000000000..3d15ad0cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionOffsets.c @@ -0,0 +1,172 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionOffsets.h" + +static int +memb_xOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_yOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_zOffset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_xOffset_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_yOffset_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_zOffset_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_xOffset_constraint_1, + &asn_PER_memb_xOffset_constr_2, + 0, + "xOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_yOffset_constraint_1, + &asn_PER_memb_yOffset_constr_3, + 0, + "yOffset" + }, + { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_zOffset_constraint_1, + &asn_PER_memb_zOffset_constr_4, + 0, + "zOffset" + }, +}; +static int asn_MAP_RegionOffsets_oms_1[] = { 2 }; +static ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { + sizeof(struct RegionOffsets), + offsetof(struct RegionOffsets, _asn_ctx), + asn_MAP_RegionOffsets_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionOffsets_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { + "RegionOffsets", + "RegionOffsets", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionOffsets_tags_1, + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + asn_DEF_RegionOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RegionOffsets_1, + 3, /* Elements count */ + &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionPointSet.c b/src/tmx/Asn_J2735/src/r41/RegionPointSet.c new file mode 100644 index 000000000..bb1575274 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionPointSet.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionPointSet.h" + +static asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { + { ATF_POINTER, 1, offsetof(struct RegionPointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "anchor" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nodeList" + }, +}; +static int asn_MAP_RegionPointSet_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* nodeList */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { + sizeof(struct RegionPointSet), + offsetof(struct RegionPointSet, _asn_ctx), + asn_MAP_RegionPointSet_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RegionPointSet_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { + "RegionPointSet", + "RegionPointSet", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionPointSet_tags_1, + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + asn_DEF_RegionPointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RegionPointSet_1, + 2, /* Elements count */ + &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c b/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c new file mode 100644 index 000000000..1e306af44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalAdvisorySpeed.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalAdvisorySpeed.h" + +int +RegionalAdvisorySpeed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_AdvisorySpeed.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_AdvisorySpeed, + * so here we adjust the DEF accordingly. + */ +static void +RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_AdvisorySpeed.free_struct; + td->print_struct = asn_DEF_Reg_AdvisorySpeed.print_struct; + td->check_constraints = asn_DEF_Reg_AdvisorySpeed.check_constraints; + td->ber_decoder = asn_DEF_Reg_AdvisorySpeed.ber_decoder; + td->der_encoder = asn_DEF_Reg_AdvisorySpeed.der_encoder; + td->xer_decoder = asn_DEF_Reg_AdvisorySpeed.xer_decoder; + td->xer_encoder = asn_DEF_Reg_AdvisorySpeed.xer_encoder; + td->uper_decoder = asn_DEF_Reg_AdvisorySpeed.uper_decoder; + td->uper_encoder = asn_DEF_Reg_AdvisorySpeed.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_AdvisorySpeed.per_constraints; + td->elements = asn_DEF_Reg_AdvisorySpeed.elements; + td->elements_count = asn_DEF_Reg_AdvisorySpeed.elements_count; + td->specifics = asn_DEF_Reg_AdvisorySpeed.specifics; +} + +void +RegionalAdvisorySpeed_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalAdvisorySpeed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalAdvisorySpeed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalAdvisorySpeed_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalAdvisorySpeed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalAdvisorySpeed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalAdvisorySpeed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalAdvisorySpeed_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalAdvisorySpeed_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalAdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalAdvisorySpeed = { + "RegionalAdvisorySpeed", + "RegionalAdvisorySpeed", + RegionalAdvisorySpeed_free, + RegionalAdvisorySpeed_print, + RegionalAdvisorySpeed_constraint, + RegionalAdvisorySpeed_decode_ber, + RegionalAdvisorySpeed_encode_der, + RegionalAdvisorySpeed_decode_xer, + RegionalAdvisorySpeed_encode_xer, + RegionalAdvisorySpeed_decode_uper, + RegionalAdvisorySpeed_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalAdvisorySpeed_tags_1, + sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1) + /sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_RegionalAdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1) + /sizeof(asn_DEF_RegionalAdvisorySpeed_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c b/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c new file mode 100644 index 000000000..40cdd783e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalComputedLane.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalComputedLane.h" + +int +RegionalComputedLane_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_ComputedLane.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_ComputedLane, + * so here we adjust the DEF accordingly. + */ +static void +RegionalComputedLane_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_ComputedLane.free_struct; + td->print_struct = asn_DEF_Reg_ComputedLane.print_struct; + td->check_constraints = asn_DEF_Reg_ComputedLane.check_constraints; + td->ber_decoder = asn_DEF_Reg_ComputedLane.ber_decoder; + td->der_encoder = asn_DEF_Reg_ComputedLane.der_encoder; + td->xer_decoder = asn_DEF_Reg_ComputedLane.xer_decoder; + td->xer_encoder = asn_DEF_Reg_ComputedLane.xer_encoder; + td->uper_decoder = asn_DEF_Reg_ComputedLane.uper_decoder; + td->uper_encoder = asn_DEF_Reg_ComputedLane.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_ComputedLane.per_constraints; + td->elements = asn_DEF_Reg_ComputedLane.elements; + td->elements_count = asn_DEF_Reg_ComputedLane.elements_count; + td->specifics = asn_DEF_Reg_ComputedLane.specifics; +} + +void +RegionalComputedLane_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalComputedLane_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalComputedLane_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalComputedLane_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalComputedLane_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalComputedLane_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalComputedLane_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalComputedLane_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalComputedLane_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalComputedLane = { + "RegionalComputedLane", + "RegionalComputedLane", + RegionalComputedLane_free, + RegionalComputedLane_print, + RegionalComputedLane_constraint, + RegionalComputedLane_decode_ber, + RegionalComputedLane_encode_der, + RegionalComputedLane_decode_xer, + RegionalComputedLane_encode_xer, + RegionalComputedLane_decode_uper, + RegionalComputedLane_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalComputedLane_tags_1, + sizeof(asn_DEF_RegionalComputedLane_tags_1) + /sizeof(asn_DEF_RegionalComputedLane_tags_1[0]), /* 1 */ + asn_DEF_RegionalComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalComputedLane_tags_1) + /sizeof(asn_DEF_RegionalComputedLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c new file mode 100644 index 000000000..65ebd4a98 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalConnectionManeuverAssist.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalConnectionManeuverAssist.h" + +int +RegionalConnectionManeuverAssist_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_ConnectionManeuverAssist.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_ConnectionManeuverAssist, + * so here we adjust the DEF accordingly. + */ +static void +RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_ConnectionManeuverAssist.free_struct; + td->print_struct = asn_DEF_Reg_ConnectionManeuverAssist.print_struct; + td->check_constraints = asn_DEF_Reg_ConnectionManeuverAssist.check_constraints; + td->ber_decoder = asn_DEF_Reg_ConnectionManeuverAssist.ber_decoder; + td->der_encoder = asn_DEF_Reg_ConnectionManeuverAssist.der_encoder; + td->xer_decoder = asn_DEF_Reg_ConnectionManeuverAssist.xer_decoder; + td->xer_encoder = asn_DEF_Reg_ConnectionManeuverAssist.xer_encoder; + td->uper_decoder = asn_DEF_Reg_ConnectionManeuverAssist.uper_decoder; + td->uper_encoder = asn_DEF_Reg_ConnectionManeuverAssist.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_ConnectionManeuverAssist.per_constraints; + td->elements = asn_DEF_Reg_ConnectionManeuverAssist.elements; + td->elements_count = asn_DEF_Reg_ConnectionManeuverAssist.elements_count; + td->specifics = asn_DEF_Reg_ConnectionManeuverAssist.specifics; +} + +void +RegionalConnectionManeuverAssist_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalConnectionManeuverAssist_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalConnectionManeuverAssist_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalConnectionManeuverAssist_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalConnectionManeuverAssist_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalConnectionManeuverAssist_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalConnectionManeuverAssist_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalConnectionManeuverAssist_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalConnectionManeuverAssist_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalConnectionManeuverAssist = { + "RegionalConnectionManeuverAssist", + "RegionalConnectionManeuverAssist", + RegionalConnectionManeuverAssist_free, + RegionalConnectionManeuverAssist_print, + RegionalConnectionManeuverAssist_constraint, + RegionalConnectionManeuverAssist_decode_ber, + RegionalConnectionManeuverAssist_encode_der, + RegionalConnectionManeuverAssist_decode_xer, + RegionalConnectionManeuverAssist_encode_xer, + RegionalConnectionManeuverAssist_decode_uper, + RegionalConnectionManeuverAssist_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_RegionalConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_RegionalConnectionManeuverAssist_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c b/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c new file mode 100644 index 000000000..f571b51d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalGenericLane.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalGenericLane.h" + +int +RegionalGenericLane_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_GenericLane.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_GenericLane, + * so here we adjust the DEF accordingly. + */ +static void +RegionalGenericLane_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_GenericLane.free_struct; + td->print_struct = asn_DEF_Reg_GenericLane.print_struct; + td->check_constraints = asn_DEF_Reg_GenericLane.check_constraints; + td->ber_decoder = asn_DEF_Reg_GenericLane.ber_decoder; + td->der_encoder = asn_DEF_Reg_GenericLane.der_encoder; + td->xer_decoder = asn_DEF_Reg_GenericLane.xer_decoder; + td->xer_encoder = asn_DEF_Reg_GenericLane.xer_encoder; + td->uper_decoder = asn_DEF_Reg_GenericLane.uper_decoder; + td->uper_encoder = asn_DEF_Reg_GenericLane.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_GenericLane.per_constraints; + td->elements = asn_DEF_Reg_GenericLane.elements; + td->elements_count = asn_DEF_Reg_GenericLane.elements_count; + td->specifics = asn_DEF_Reg_GenericLane.specifics; +} + +void +RegionalGenericLane_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalGenericLane_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalGenericLane_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalGenericLane_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalGenericLane_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalGenericLane_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalGenericLane_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalGenericLane_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalGenericLane_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalGenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalGenericLane = { + "RegionalGenericLane", + "RegionalGenericLane", + RegionalGenericLane_free, + RegionalGenericLane_print, + RegionalGenericLane_constraint, + RegionalGenericLane_decode_ber, + RegionalGenericLane_encode_der, + RegionalGenericLane_decode_xer, + RegionalGenericLane_encode_xer, + RegionalGenericLane_decode_uper, + RegionalGenericLane_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalGenericLane_tags_1, + sizeof(asn_DEF_RegionalGenericLane_tags_1) + /sizeof(asn_DEF_RegionalGenericLane_tags_1[0]), /* 1 */ + asn_DEF_RegionalGenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalGenericLane_tags_1) + /sizeof(asn_DEF_RegionalGenericLane_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c b/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c new file mode 100644 index 000000000..73c340e3c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalIntersection.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalIntersection.h" + +int +RegionalIntersection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_Intersection.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_Intersection, + * so here we adjust the DEF accordingly. + */ +static void +RegionalIntersection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_Intersection.free_struct; + td->print_struct = asn_DEF_Reg_Intersection.print_struct; + td->check_constraints = asn_DEF_Reg_Intersection.check_constraints; + td->ber_decoder = asn_DEF_Reg_Intersection.ber_decoder; + td->der_encoder = asn_DEF_Reg_Intersection.der_encoder; + td->xer_decoder = asn_DEF_Reg_Intersection.xer_decoder; + td->xer_encoder = asn_DEF_Reg_Intersection.xer_encoder; + td->uper_decoder = asn_DEF_Reg_Intersection.uper_decoder; + td->uper_encoder = asn_DEF_Reg_Intersection.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_Intersection.per_constraints; + td->elements = asn_DEF_Reg_Intersection.elements; + td->elements_count = asn_DEF_Reg_Intersection.elements_count; + td->specifics = asn_DEF_Reg_Intersection.specifics; +} + +void +RegionalIntersection_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalIntersection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalIntersection_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalIntersection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalIntersection_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalIntersection_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalIntersection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalIntersection = { + "RegionalIntersection", + "RegionalIntersection", + RegionalIntersection_free, + RegionalIntersection_print, + RegionalIntersection_constraint, + RegionalIntersection_decode_ber, + RegionalIntersection_encode_der, + RegionalIntersection_decode_xer, + RegionalIntersection_encode_xer, + RegionalIntersection_decode_uper, + RegionalIntersection_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalIntersection_tags_1, + sizeof(asn_DEF_RegionalIntersection_tags_1) + /sizeof(asn_DEF_RegionalIntersection_tags_1[0]), /* 1 */ + asn_DEF_RegionalIntersection_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalIntersection_tags_1) + /sizeof(asn_DEF_RegionalIntersection_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c b/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c new file mode 100644 index 000000000..76dc29cf6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalIntersectionState.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalIntersectionState.h" + +int +RegionalIntersectionState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_IntersectionState.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_IntersectionState, + * so here we adjust the DEF accordingly. + */ +static void +RegionalIntersectionState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_IntersectionState.free_struct; + td->print_struct = asn_DEF_Reg_IntersectionState.print_struct; + td->check_constraints = asn_DEF_Reg_IntersectionState.check_constraints; + td->ber_decoder = asn_DEF_Reg_IntersectionState.ber_decoder; + td->der_encoder = asn_DEF_Reg_IntersectionState.der_encoder; + td->xer_decoder = asn_DEF_Reg_IntersectionState.xer_decoder; + td->xer_encoder = asn_DEF_Reg_IntersectionState.xer_encoder; + td->uper_decoder = asn_DEF_Reg_IntersectionState.uper_decoder; + td->uper_encoder = asn_DEF_Reg_IntersectionState.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_IntersectionState.per_constraints; + td->elements = asn_DEF_Reg_IntersectionState.elements; + td->elements_count = asn_DEF_Reg_IntersectionState.elements_count; + td->specifics = asn_DEF_Reg_IntersectionState.specifics; +} + +void +RegionalIntersectionState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalIntersectionState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersectionState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalIntersectionState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersectionState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalIntersectionState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalIntersectionState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalIntersectionState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalIntersectionState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalIntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalIntersectionState = { + "RegionalIntersectionState", + "RegionalIntersectionState", + RegionalIntersectionState_free, + RegionalIntersectionState_print, + RegionalIntersectionState_constraint, + RegionalIntersectionState_decode_ber, + RegionalIntersectionState_encode_der, + RegionalIntersectionState_decode_xer, + RegionalIntersectionState_encode_xer, + RegionalIntersectionState_decode_uper, + RegionalIntersectionState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalIntersectionState_tags_1, + sizeof(asn_DEF_RegionalIntersectionState_tags_1) + /sizeof(asn_DEF_RegionalIntersectionState_tags_1[0]), /* 1 */ + asn_DEF_RegionalIntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalIntersectionState_tags_1) + /sizeof(asn_DEF_RegionalIntersectionState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c b/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c new file mode 100644 index 000000000..cc3ad6fb3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalLaneAttributes.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalLaneAttributes.h" + +int +RegionalLaneAttributes_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_LaneAttributes.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_LaneAttributes, + * so here we adjust the DEF accordingly. + */ +static void +RegionalLaneAttributes_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_LaneAttributes.free_struct; + td->print_struct = asn_DEF_Reg_LaneAttributes.print_struct; + td->check_constraints = asn_DEF_Reg_LaneAttributes.check_constraints; + td->ber_decoder = asn_DEF_Reg_LaneAttributes.ber_decoder; + td->der_encoder = asn_DEF_Reg_LaneAttributes.der_encoder; + td->xer_decoder = asn_DEF_Reg_LaneAttributes.xer_decoder; + td->xer_encoder = asn_DEF_Reg_LaneAttributes.xer_encoder; + td->uper_decoder = asn_DEF_Reg_LaneAttributes.uper_decoder; + td->uper_encoder = asn_DEF_Reg_LaneAttributes.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_LaneAttributes.per_constraints; + td->elements = asn_DEF_Reg_LaneAttributes.elements; + td->elements_count = asn_DEF_Reg_LaneAttributes.elements_count; + td->specifics = asn_DEF_Reg_LaneAttributes.specifics; +} + +void +RegionalLaneAttributes_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalLaneAttributes_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneAttributes_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalLaneAttributes_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneAttributes_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalLaneAttributes_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneAttributes_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalLaneAttributes_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalLaneAttributes_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalLaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalLaneAttributes = { + "RegionalLaneAttributes", + "RegionalLaneAttributes", + RegionalLaneAttributes_free, + RegionalLaneAttributes_print, + RegionalLaneAttributes_constraint, + RegionalLaneAttributes_decode_ber, + RegionalLaneAttributes_encode_der, + RegionalLaneAttributes_decode_xer, + RegionalLaneAttributes_encode_xer, + RegionalLaneAttributes_decode_uper, + RegionalLaneAttributes_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalLaneAttributes_tags_1, + sizeof(asn_DEF_RegionalLaneAttributes_tags_1) + /sizeof(asn_DEF_RegionalLaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_RegionalLaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalLaneAttributes_tags_1) + /sizeof(asn_DEF_RegionalLaneAttributes_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c b/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c new file mode 100644 index 000000000..80e23be1d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalLaneDataAttribute.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalLaneDataAttribute.h" + +int +RegionalLaneDataAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_LaneDataAttribute.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_LaneDataAttribute, + * so here we adjust the DEF accordingly. + */ +static void +RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_LaneDataAttribute.free_struct; + td->print_struct = asn_DEF_Reg_LaneDataAttribute.print_struct; + td->check_constraints = asn_DEF_Reg_LaneDataAttribute.check_constraints; + td->ber_decoder = asn_DEF_Reg_LaneDataAttribute.ber_decoder; + td->der_encoder = asn_DEF_Reg_LaneDataAttribute.der_encoder; + td->xer_decoder = asn_DEF_Reg_LaneDataAttribute.xer_decoder; + td->xer_encoder = asn_DEF_Reg_LaneDataAttribute.xer_encoder; + td->uper_decoder = asn_DEF_Reg_LaneDataAttribute.uper_decoder; + td->uper_encoder = asn_DEF_Reg_LaneDataAttribute.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_LaneDataAttribute.per_constraints; + td->elements = asn_DEF_Reg_LaneDataAttribute.elements; + td->elements_count = asn_DEF_Reg_LaneDataAttribute.elements_count; + td->specifics = asn_DEF_Reg_LaneDataAttribute.specifics; +} + +void +RegionalLaneDataAttribute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalLaneDataAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneDataAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalLaneDataAttribute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneDataAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalLaneDataAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalLaneDataAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalLaneDataAttribute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalLaneDataAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalLaneDataAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalLaneDataAttribute = { + "RegionalLaneDataAttribute", + "RegionalLaneDataAttribute", + RegionalLaneDataAttribute_free, + RegionalLaneDataAttribute_print, + RegionalLaneDataAttribute_constraint, + RegionalLaneDataAttribute_decode_ber, + RegionalLaneDataAttribute_encode_der, + RegionalLaneDataAttribute_decode_xer, + RegionalLaneDataAttribute_encode_xer, + RegionalLaneDataAttribute_decode_uper, + RegionalLaneDataAttribute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalLaneDataAttribute_tags_1, + sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1) + /sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1[0]), /* 1 */ + asn_DEF_RegionalLaneDataAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1) + /sizeof(asn_DEF_RegionalLaneDataAttribute_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMapData.c b/src/tmx/Asn_J2735/src/r41/RegionalMapData.c new file mode 100644 index 000000000..59f8f1fd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalMapData.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalMapData.h" + +int +RegionalMapData_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_MapData.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_MapData, + * so here we adjust the DEF accordingly. + */ +static void +RegionalMapData_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_MapData.free_struct; + td->print_struct = asn_DEF_Reg_MapData.print_struct; + td->check_constraints = asn_DEF_Reg_MapData.check_constraints; + td->ber_decoder = asn_DEF_Reg_MapData.ber_decoder; + td->der_encoder = asn_DEF_Reg_MapData.der_encoder; + td->xer_decoder = asn_DEF_Reg_MapData.xer_decoder; + td->xer_encoder = asn_DEF_Reg_MapData.xer_encoder; + td->uper_decoder = asn_DEF_Reg_MapData.uper_decoder; + td->uper_encoder = asn_DEF_Reg_MapData.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_MapData.per_constraints; + td->elements = asn_DEF_Reg_MapData.elements; + td->elements_count = asn_DEF_Reg_MapData.elements_count; + td->specifics = asn_DEF_Reg_MapData.specifics; +} + +void +RegionalMapData_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalMapData_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalMapData_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalMapData_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalMapData_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalMapData_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalMapData_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalMapData_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalMapData_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalMapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalMapData = { + "RegionalMapData", + "RegionalMapData", + RegionalMapData_free, + RegionalMapData_print, + RegionalMapData_constraint, + RegionalMapData_decode_ber, + RegionalMapData_encode_der, + RegionalMapData_decode_xer, + RegionalMapData_encode_xer, + RegionalMapData_decode_uper, + RegionalMapData_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalMapData_tags_1, + sizeof(asn_DEF_RegionalMapData_tags_1) + /sizeof(asn_DEF_RegionalMapData_tags_1[0]), /* 1 */ + asn_DEF_RegionalMapData_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalMapData_tags_1) + /sizeof(asn_DEF_RegionalMapData_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c b/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c new file mode 100644 index 000000000..1c54437cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalMovementEvent.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalMovementEvent.h" + +int +RegionalMovementEvent_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_MovementEvent.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_MovementEvent, + * so here we adjust the DEF accordingly. + */ +static void +RegionalMovementEvent_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_MovementEvent.free_struct; + td->print_struct = asn_DEF_Reg_MovementEvent.print_struct; + td->check_constraints = asn_DEF_Reg_MovementEvent.check_constraints; + td->ber_decoder = asn_DEF_Reg_MovementEvent.ber_decoder; + td->der_encoder = asn_DEF_Reg_MovementEvent.der_encoder; + td->xer_decoder = asn_DEF_Reg_MovementEvent.xer_decoder; + td->xer_encoder = asn_DEF_Reg_MovementEvent.xer_encoder; + td->uper_decoder = asn_DEF_Reg_MovementEvent.uper_decoder; + td->uper_encoder = asn_DEF_Reg_MovementEvent.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_MovementEvent.per_constraints; + td->elements = asn_DEF_Reg_MovementEvent.elements; + td->elements_count = asn_DEF_Reg_MovementEvent.elements_count; + td->specifics = asn_DEF_Reg_MovementEvent.specifics; +} + +void +RegionalMovementEvent_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalMovementEvent_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementEvent_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalMovementEvent_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementEvent_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalMovementEvent_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementEvent_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalMovementEvent_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalMovementEvent_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalMovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalMovementEvent = { + "RegionalMovementEvent", + "RegionalMovementEvent", + RegionalMovementEvent_free, + RegionalMovementEvent_print, + RegionalMovementEvent_constraint, + RegionalMovementEvent_decode_ber, + RegionalMovementEvent_encode_der, + RegionalMovementEvent_decode_xer, + RegionalMovementEvent_encode_xer, + RegionalMovementEvent_decode_uper, + RegionalMovementEvent_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalMovementEvent_tags_1, + sizeof(asn_DEF_RegionalMovementEvent_tags_1) + /sizeof(asn_DEF_RegionalMovementEvent_tags_1[0]), /* 1 */ + asn_DEF_RegionalMovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalMovementEvent_tags_1) + /sizeof(asn_DEF_RegionalMovementEvent_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c b/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c new file mode 100644 index 000000000..368b064f3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalMovementState.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalMovementState.h" + +int +RegionalMovementState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_MovementState.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_MovementState, + * so here we adjust the DEF accordingly. + */ +static void +RegionalMovementState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_MovementState.free_struct; + td->print_struct = asn_DEF_Reg_MovementState.print_struct; + td->check_constraints = asn_DEF_Reg_MovementState.check_constraints; + td->ber_decoder = asn_DEF_Reg_MovementState.ber_decoder; + td->der_encoder = asn_DEF_Reg_MovementState.der_encoder; + td->xer_decoder = asn_DEF_Reg_MovementState.xer_decoder; + td->xer_encoder = asn_DEF_Reg_MovementState.xer_encoder; + td->uper_decoder = asn_DEF_Reg_MovementState.uper_decoder; + td->uper_encoder = asn_DEF_Reg_MovementState.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_MovementState.per_constraints; + td->elements = asn_DEF_Reg_MovementState.elements; + td->elements_count = asn_DEF_Reg_MovementState.elements_count; + td->specifics = asn_DEF_Reg_MovementState.specifics; +} + +void +RegionalMovementState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalMovementState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalMovementState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalMovementState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalMovementState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalMovementState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalMovementState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalMovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalMovementState = { + "RegionalMovementState", + "RegionalMovementState", + RegionalMovementState_free, + RegionalMovementState_print, + RegionalMovementState_constraint, + RegionalMovementState_decode_ber, + RegionalMovementState_encode_der, + RegionalMovementState_decode_xer, + RegionalMovementState_encode_xer, + RegionalMovementState_decode_uper, + RegionalMovementState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalMovementState_tags_1, + sizeof(asn_DEF_RegionalMovementState_tags_1) + /sizeof(asn_DEF_RegionalMovementState_tags_1[0]), /* 1 */ + asn_DEF_RegionalMovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalMovementState_tags_1) + /sizeof(asn_DEF_RegionalMovementState_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c new file mode 100644 index 000000000..2b4389e78 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttribute.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalNodeAttribute.h" + +int +RegionalNodeAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_NodeAttribute.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_NodeAttribute, + * so here we adjust the DEF accordingly. + */ +static void +RegionalNodeAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_NodeAttribute.free_struct; + td->print_struct = asn_DEF_Reg_NodeAttribute.print_struct; + td->check_constraints = asn_DEF_Reg_NodeAttribute.check_constraints; + td->ber_decoder = asn_DEF_Reg_NodeAttribute.ber_decoder; + td->der_encoder = asn_DEF_Reg_NodeAttribute.der_encoder; + td->xer_decoder = asn_DEF_Reg_NodeAttribute.xer_decoder; + td->xer_encoder = asn_DEF_Reg_NodeAttribute.xer_encoder; + td->uper_decoder = asn_DEF_Reg_NodeAttribute.uper_decoder; + td->uper_encoder = asn_DEF_Reg_NodeAttribute.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_NodeAttribute.per_constraints; + td->elements = asn_DEF_Reg_NodeAttribute.elements; + td->elements_count = asn_DEF_Reg_NodeAttribute.elements_count; + td->specifics = asn_DEF_Reg_NodeAttribute.specifics; +} + +void +RegionalNodeAttribute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalNodeAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalNodeAttribute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalNodeAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalNodeAttribute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalNodeAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalNodeAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttribute = { + "RegionalNodeAttribute", + "RegionalNodeAttribute", + RegionalNodeAttribute_free, + RegionalNodeAttribute_print, + RegionalNodeAttribute_constraint, + RegionalNodeAttribute_decode_ber, + RegionalNodeAttribute_encode_der, + RegionalNodeAttribute_decode_xer, + RegionalNodeAttribute_encode_xer, + RegionalNodeAttribute_decode_uper, + RegionalNodeAttribute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalNodeAttribute_tags_1, + sizeof(asn_DEF_RegionalNodeAttribute_tags_1) + /sizeof(asn_DEF_RegionalNodeAttribute_tags_1[0]), /* 1 */ + asn_DEF_RegionalNodeAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalNodeAttribute_tags_1) + /sizeof(asn_DEF_RegionalNodeAttribute_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c new file mode 100644 index 000000000..c28461123 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalNodeAttributeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalNodeAttributeList.h" + +static asn_per_constraints_t asn_PER_type_RegionalNodeAttributeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RegionalNodeAttributeList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionalNodeAttribute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RegionalNodeAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RegionalNodeAttributeList_specs_1 = { + sizeof(struct RegionalNodeAttributeList), + offsetof(struct RegionalNodeAttributeList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionalNodeAttributeList = { + "RegionalNodeAttributeList", + "RegionalNodeAttributeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalNodeAttributeList_tags_1, + sizeof(asn_DEF_RegionalNodeAttributeList_tags_1) + /sizeof(asn_DEF_RegionalNodeAttributeList_tags_1[0]), /* 1 */ + asn_DEF_RegionalNodeAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalNodeAttributeList_tags_1) + /sizeof(asn_DEF_RegionalNodeAttributeList_tags_1[0]), /* 1 */ + &asn_PER_type_RegionalNodeAttributeList_constr_1, + asn_MBR_RegionalNodeAttributeList_1, + 1, /* Single element */ + &asn_SPC_RegionalNodeAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c b/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c new file mode 100644 index 000000000..09c946274 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalNodeOffsetPoint.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalNodeOffsetPoint.h" + +int +RegionalNodeOffsetPoint_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_NodeOffsetPoint.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_NodeOffsetPoint, + * so here we adjust the DEF accordingly. + */ +static void +RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_NodeOffsetPoint.free_struct; + td->print_struct = asn_DEF_Reg_NodeOffsetPoint.print_struct; + td->check_constraints = asn_DEF_Reg_NodeOffsetPoint.check_constraints; + td->ber_decoder = asn_DEF_Reg_NodeOffsetPoint.ber_decoder; + td->der_encoder = asn_DEF_Reg_NodeOffsetPoint.der_encoder; + td->xer_decoder = asn_DEF_Reg_NodeOffsetPoint.xer_decoder; + td->xer_encoder = asn_DEF_Reg_NodeOffsetPoint.xer_encoder; + td->uper_decoder = asn_DEF_Reg_NodeOffsetPoint.uper_decoder; + td->uper_encoder = asn_DEF_Reg_NodeOffsetPoint.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_NodeOffsetPoint.per_constraints; + td->elements = asn_DEF_Reg_NodeOffsetPoint.elements; + td->elements_count = asn_DEF_Reg_NodeOffsetPoint.elements_count; + td->specifics = asn_DEF_Reg_NodeOffsetPoint.specifics; +} + +void +RegionalNodeOffsetPoint_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalNodeOffsetPoint_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeOffsetPoint_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalNodeOffsetPoint_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeOffsetPoint_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalNodeOffsetPoint_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalNodeOffsetPoint_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalNodeOffsetPoint_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalNodeOffsetPoint_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalNodeOffsetPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalNodeOffsetPoint = { + "RegionalNodeOffsetPoint", + "RegionalNodeOffsetPoint", + RegionalNodeOffsetPoint_free, + RegionalNodeOffsetPoint_print, + RegionalNodeOffsetPoint_constraint, + RegionalNodeOffsetPoint_decode_ber, + RegionalNodeOffsetPoint_encode_der, + RegionalNodeOffsetPoint_decode_xer, + RegionalNodeOffsetPoint_encode_xer, + RegionalNodeOffsetPoint_decode_uper, + RegionalNodeOffsetPoint_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalNodeOffsetPoint_tags_1, + sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1) + /sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1[0]), /* 1 */ + asn_DEF_RegionalNodeOffsetPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1) + /sizeof(asn_DEF_RegionalNodeOffsetPoint_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c b/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c new file mode 100644 index 000000000..63253099c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalPersonalMobilityMessage.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "RegionalPersonalMobilityMessage.h" + +int +RegionalPersonalMobilityMessage_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_PersonalMobilityMessage.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_PersonalMobilityMessage, + * so here we adjust the DEF accordingly. + */ +static void +RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_PersonalMobilityMessage.free_struct; + td->print_struct = asn_DEF_Reg_PersonalMobilityMessage.print_struct; + td->check_constraints = asn_DEF_Reg_PersonalMobilityMessage.check_constraints; + td->ber_decoder = asn_DEF_Reg_PersonalMobilityMessage.ber_decoder; + td->der_encoder = asn_DEF_Reg_PersonalMobilityMessage.der_encoder; + td->xer_decoder = asn_DEF_Reg_PersonalMobilityMessage.xer_decoder; + td->xer_encoder = asn_DEF_Reg_PersonalMobilityMessage.xer_encoder; + td->uper_decoder = asn_DEF_Reg_PersonalMobilityMessage.uper_decoder; + td->uper_encoder = asn_DEF_Reg_PersonalMobilityMessage.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_PersonalMobilityMessage.per_constraints; + td->elements = asn_DEF_Reg_PersonalMobilityMessage.elements; + td->elements_count = asn_DEF_Reg_PersonalMobilityMessage.elements_count; + td->specifics = asn_DEF_Reg_PersonalMobilityMessage.specifics; +} + +void +RegionalPersonalMobilityMessage_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalPersonalMobilityMessage_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalMobilityMessage_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalPersonalMobilityMessage_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalMobilityMessage_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalPersonalMobilityMessage_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalMobilityMessage_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalPersonalMobilityMessage_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalPersonalMobilityMessage_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static const ber_tlv_tag_t asn_DEF_RegionalPersonalMobilityMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalPersonalMobilityMessage = { + "RegionalPersonalMobilityMessage", + "RegionalPersonalMobilityMessage", + RegionalPersonalMobilityMessage_free, + RegionalPersonalMobilityMessage_print, + RegionalPersonalMobilityMessage_constraint, + RegionalPersonalMobilityMessage_decode_ber, + RegionalPersonalMobilityMessage_encode_der, + RegionalPersonalMobilityMessage_decode_xer, + RegionalPersonalMobilityMessage_encode_xer, + RegionalPersonalMobilityMessage_decode_uper, + RegionalPersonalMobilityMessage_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalPersonalMobilityMessage_tags_1, + sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1[0]), /* 1 */ + asn_DEF_RegionalPersonalMobilityMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1) + /sizeof(asn_DEF_RegionalPersonalMobilityMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c new file mode 100644 index 000000000..ed95f33ed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalPersonalSafetyMessage.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "RegionalPersonalSafetyMessage.h" + +int +RegionalPersonalSafetyMessage_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_PersonalSafetyMessage.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_PersonalSafetyMessage, + * so here we adjust the DEF accordingly. + */ +static void +RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_PersonalSafetyMessage.free_struct; + td->print_struct = asn_DEF_Reg_PersonalSafetyMessage.print_struct; + td->check_constraints = asn_DEF_Reg_PersonalSafetyMessage.check_constraints; + td->ber_decoder = asn_DEF_Reg_PersonalSafetyMessage.ber_decoder; + td->der_encoder = asn_DEF_Reg_PersonalSafetyMessage.der_encoder; + td->xer_decoder = asn_DEF_Reg_PersonalSafetyMessage.xer_decoder; + td->xer_encoder = asn_DEF_Reg_PersonalSafetyMessage.xer_encoder; + td->uper_decoder = asn_DEF_Reg_PersonalSafetyMessage.uper_decoder; + td->uper_encoder = asn_DEF_Reg_PersonalSafetyMessage.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_PersonalSafetyMessage.per_constraints; + td->elements = asn_DEF_Reg_PersonalSafetyMessage.elements; + td->elements_count = asn_DEF_Reg_PersonalSafetyMessage.elements_count; + td->specifics = asn_DEF_Reg_PersonalSafetyMessage.specifics; +} + +void +RegionalPersonalSafetyMessage_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalPersonalSafetyMessage_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalSafetyMessage_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalPersonalSafetyMessage_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalSafetyMessage_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalPersonalSafetyMessage_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalPersonalSafetyMessage_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalPersonalSafetyMessage_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalPersonalSafetyMessage_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static const ber_tlv_tag_t asn_DEF_RegionalPersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalPersonalSafetyMessage = { + "RegionalPersonalSafetyMessage", + "RegionalPersonalSafetyMessage", + RegionalPersonalSafetyMessage_free, + RegionalPersonalSafetyMessage_print, + RegionalPersonalSafetyMessage_constraint, + RegionalPersonalSafetyMessage_decode_ber, + RegionalPersonalSafetyMessage_encode_der, + RegionalPersonalSafetyMessage_decode_xer, + RegionalPersonalSafetyMessage_encode_xer, + RegionalPersonalSafetyMessage_decode_uper, + RegionalPersonalSafetyMessage_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalPersonalSafetyMessage_tags_1, + sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_RegionalPersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_RegionalPersonalSafetyMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c b/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c new file mode 100644 index 000000000..48ac2a4c3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalPosition3D.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalPosition3D.h" + +int +RegionalPosition3D_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_Position3D.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_Position3D, + * so here we adjust the DEF accordingly. + */ +static void +RegionalPosition3D_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_Position3D.free_struct; + td->print_struct = asn_DEF_Reg_Position3D.print_struct; + td->check_constraints = asn_DEF_Reg_Position3D.check_constraints; + td->ber_decoder = asn_DEF_Reg_Position3D.ber_decoder; + td->der_encoder = asn_DEF_Reg_Position3D.der_encoder; + td->xer_decoder = asn_DEF_Reg_Position3D.xer_decoder; + td->xer_encoder = asn_DEF_Reg_Position3D.xer_encoder; + td->uper_decoder = asn_DEF_Reg_Position3D.uper_decoder; + td->uper_encoder = asn_DEF_Reg_Position3D.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_Position3D.per_constraints; + td->elements = asn_DEF_Reg_Position3D.elements; + td->elements_count = asn_DEF_Reg_Position3D.elements_count; + td->specifics = asn_DEF_Reg_Position3D.specifics; +} + +void +RegionalPosition3D_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalPosition3D_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalPosition3D_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalPosition3D_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalPosition3D_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalPosition3D_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalPosition3D_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalPosition3D_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalPosition3D_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalPosition3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalPosition3D = { + "RegionalPosition3D", + "RegionalPosition3D", + RegionalPosition3D_free, + RegionalPosition3D_print, + RegionalPosition3D_constraint, + RegionalPosition3D_decode_ber, + RegionalPosition3D_encode_der, + RegionalPosition3D_decode_xer, + RegionalPosition3D_encode_xer, + RegionalPosition3D_decode_uper, + RegionalPosition3D_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalPosition3D_tags_1, + sizeof(asn_DEF_RegionalPosition3D_tags_1) + /sizeof(asn_DEF_RegionalPosition3D_tags_1[0]), /* 1 */ + asn_DEF_RegionalPosition3D_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalPosition3D_tags_1) + /sizeof(asn_DEF_RegionalPosition3D_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c new file mode 100644 index 000000000..9f289eeab --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalRestrictionUserType.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalRestrictionUserType.h" + +int +RegionalRestrictionUserType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_RestrictionUserType.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_RestrictionUserType, + * so here we adjust the DEF accordingly. + */ +static void +RegionalRestrictionUserType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_RestrictionUserType.free_struct; + td->print_struct = asn_DEF_Reg_RestrictionUserType.print_struct; + td->check_constraints = asn_DEF_Reg_RestrictionUserType.check_constraints; + td->ber_decoder = asn_DEF_Reg_RestrictionUserType.ber_decoder; + td->der_encoder = asn_DEF_Reg_RestrictionUserType.der_encoder; + td->xer_decoder = asn_DEF_Reg_RestrictionUserType.xer_decoder; + td->xer_encoder = asn_DEF_Reg_RestrictionUserType.xer_encoder; + td->uper_decoder = asn_DEF_Reg_RestrictionUserType.uper_decoder; + td->uper_encoder = asn_DEF_Reg_RestrictionUserType.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_RestrictionUserType.per_constraints; + td->elements = asn_DEF_Reg_RestrictionUserType.elements; + td->elements_count = asn_DEF_Reg_RestrictionUserType.elements_count; + td->specifics = asn_DEF_Reg_RestrictionUserType.specifics; +} + +void +RegionalRestrictionUserType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalRestrictionUserType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalRestrictionUserType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalRestrictionUserType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalRestrictionUserType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalRestrictionUserType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalRestrictionUserType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalRestrictionUserType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalRestrictionUserType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalRestrictionUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalRestrictionUserType = { + "RegionalRestrictionUserType", + "RegionalRestrictionUserType", + RegionalRestrictionUserType_free, + RegionalRestrictionUserType_print, + RegionalRestrictionUserType_constraint, + RegionalRestrictionUserType_decode_ber, + RegionalRestrictionUserType_encode_der, + RegionalRestrictionUserType_decode_xer, + RegionalRestrictionUserType_encode_xer, + RegionalRestrictionUserType_decode_uper, + RegionalRestrictionUserType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalRestrictionUserType_tags_1, + sizeof(asn_DEF_RegionalRestrictionUserType_tags_1) + /sizeof(asn_DEF_RegionalRestrictionUserType_tags_1[0]), /* 1 */ + asn_DEF_RegionalRestrictionUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalRestrictionUserType_tags_1) + /sizeof(asn_DEF_RegionalRestrictionUserType_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c b/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c new file mode 100644 index 000000000..48a7d2ffa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalRoadSegment.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalRoadSegment.h" + +int +RegionalRoadSegment_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_RoadSegment.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_RoadSegment, + * so here we adjust the DEF accordingly. + */ +static void +RegionalRoadSegment_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_RoadSegment.free_struct; + td->print_struct = asn_DEF_Reg_RoadSegment.print_struct; + td->check_constraints = asn_DEF_Reg_RoadSegment.check_constraints; + td->ber_decoder = asn_DEF_Reg_RoadSegment.ber_decoder; + td->der_encoder = asn_DEF_Reg_RoadSegment.der_encoder; + td->xer_decoder = asn_DEF_Reg_RoadSegment.xer_decoder; + td->xer_encoder = asn_DEF_Reg_RoadSegment.xer_encoder; + td->uper_decoder = asn_DEF_Reg_RoadSegment.uper_decoder; + td->uper_encoder = asn_DEF_Reg_RoadSegment.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_RoadSegment.per_constraints; + td->elements = asn_DEF_Reg_RoadSegment.elements; + td->elements_count = asn_DEF_Reg_RoadSegment.elements_count; + td->specifics = asn_DEF_Reg_RoadSegment.specifics; +} + +void +RegionalRoadSegment_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalRoadSegment_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalRoadSegment_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalRoadSegment_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalRoadSegment_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalRoadSegment_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalRoadSegment_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalRoadSegment_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalRoadSegment_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalRoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalRoadSegment = { + "RegionalRoadSegment", + "RegionalRoadSegment", + RegionalRoadSegment_free, + RegionalRoadSegment_print, + RegionalRoadSegment_constraint, + RegionalRoadSegment_decode_ber, + RegionalRoadSegment_encode_der, + RegionalRoadSegment_decode_xer, + RegionalRoadSegment_encode_xer, + RegionalRoadSegment_decode_uper, + RegionalRoadSegment_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalRoadSegment_tags_1, + sizeof(asn_DEF_RegionalRoadSegment_tags_1) + /sizeof(asn_DEF_RegionalRoadSegment_tags_1[0]), /* 1 */ + asn_DEF_RegionalRoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalRoadSegment_tags_1) + /sizeof(asn_DEF_RegionalRoadSegment_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c b/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c new file mode 100644 index 000000000..52df66e1e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalSPAT.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalSPAT.h" + +int +RegionalSPAT_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_SPAT.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_SPAT, + * so here we adjust the DEF accordingly. + */ +static void +RegionalSPAT_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_SPAT.free_struct; + td->print_struct = asn_DEF_Reg_SPAT.print_struct; + td->check_constraints = asn_DEF_Reg_SPAT.check_constraints; + td->ber_decoder = asn_DEF_Reg_SPAT.ber_decoder; + td->der_encoder = asn_DEF_Reg_SPAT.der_encoder; + td->xer_decoder = asn_DEF_Reg_SPAT.xer_decoder; + td->xer_encoder = asn_DEF_Reg_SPAT.xer_encoder; + td->uper_decoder = asn_DEF_Reg_SPAT.uper_decoder; + td->uper_encoder = asn_DEF_Reg_SPAT.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_SPAT.per_constraints; + td->elements = asn_DEF_Reg_SPAT.elements; + td->elements_count = asn_DEF_Reg_SPAT.elements_count; + td->specifics = asn_DEF_Reg_SPAT.specifics; +} + +void +RegionalSPAT_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalSPAT_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalSPAT_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalSPAT_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalSPAT_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalSPAT_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalSPAT_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalSPAT_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalSPAT_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalSPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalSPAT = { + "RegionalSPAT", + "RegionalSPAT", + RegionalSPAT_free, + RegionalSPAT_print, + RegionalSPAT_constraint, + RegionalSPAT_decode_ber, + RegionalSPAT_encode_der, + RegionalSPAT_decode_xer, + RegionalSPAT_encode_xer, + RegionalSPAT_decode_uper, + RegionalSPAT_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalSPAT_tags_1, + sizeof(asn_DEF_RegionalSPAT_tags_1) + /sizeof(asn_DEF_RegionalSPAT_tags_1[0]), /* 1 */ + asn_DEF_RegionalSPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalSPAT_tags_1) + /sizeof(asn_DEF_RegionalSPAT_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c b/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c new file mode 100644 index 000000000..a21403970 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegionalSignalControlZone.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegionalSignalControlZone.h" + +int +RegionalSignalControlZone_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_Reg_SignalControlZone.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using Reg_SignalControlZone, + * so here we adjust the DEF accordingly. + */ +static void +RegionalSignalControlZone_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_Reg_SignalControlZone.free_struct; + td->print_struct = asn_DEF_Reg_SignalControlZone.print_struct; + td->check_constraints = asn_DEF_Reg_SignalControlZone.check_constraints; + td->ber_decoder = asn_DEF_Reg_SignalControlZone.ber_decoder; + td->der_encoder = asn_DEF_Reg_SignalControlZone.der_encoder; + td->xer_decoder = asn_DEF_Reg_SignalControlZone.xer_decoder; + td->xer_encoder = asn_DEF_Reg_SignalControlZone.xer_encoder; + td->uper_decoder = asn_DEF_Reg_SignalControlZone.uper_decoder; + td->uper_encoder = asn_DEF_Reg_SignalControlZone.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_Reg_SignalControlZone.per_constraints; + td->elements = asn_DEF_Reg_SignalControlZone.elements; + td->elements_count = asn_DEF_Reg_SignalControlZone.elements_count; + td->specifics = asn_DEF_Reg_SignalControlZone.specifics; +} + +void +RegionalSignalControlZone_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RegionalSignalControlZone_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RegionalSignalControlZone_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RegionalSignalControlZone_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RegionalSignalControlZone_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RegionalSignalControlZone_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RegionalSignalControlZone_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RegionalSignalControlZone_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RegionalSignalControlZone_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_RegionalSignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionalSignalControlZone = { + "RegionalSignalControlZone", + "RegionalSignalControlZone", + RegionalSignalControlZone_free, + RegionalSignalControlZone_print, + RegionalSignalControlZone_constraint, + RegionalSignalControlZone_decode_ber, + RegionalSignalControlZone_encode_der, + RegionalSignalControlZone_decode_xer, + RegionalSignalControlZone_encode_xer, + RegionalSignalControlZone_decode_uper, + RegionalSignalControlZone_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegionalSignalControlZone_tags_1, + sizeof(asn_DEF_RegionalSignalControlZone_tags_1) + /sizeof(asn_DEF_RegionalSignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_RegionalSignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionalSignalControlZone_tags_1) + /sizeof(asn_DEF_RegionalSignalControlZone_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c new file mode 100644 index 000000000..cb01d134e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RegulatorySpeedLimit.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RegulatorySpeedLimit.h" + +static asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speed" + }, +}; +static ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { + sizeof(struct RegulatorySpeedLimit), + offsetof(struct RegulatorySpeedLimit, _asn_ctx), + asn_MAP_RegulatorySpeedLimit_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { + "RegulatorySpeedLimit", + "RegulatorySpeedLimit", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RegulatorySpeedLimit_tags_1, + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RegulatorySpeedLimit_1, + 2, /* Elements count */ + &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RequestID.c b/src/tmx/Asn_J2735/src/r41/RequestID.c new file mode 100644 index 000000000..47c21d23a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RequestID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "RequestID.h" + +int +RequestID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RequestID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RequestID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RequestID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RequestID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RequestID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RequestID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RequestID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RequestID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RequestID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RequestID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RequestID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RequestID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 100 } /* (1..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestID = { + "RequestID", + "RequestID", + RequestID_free, + RequestID_print, + RequestID_constraint, + RequestID_decode_ber, + RequestID_encode_der, + RequestID_decode_xer, + RequestID_encode_xer, + RequestID_decode_uper, + RequestID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RequestID_tags_1, + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + asn_DEF_RequestID_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + &asn_PER_type_RequestID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RequestedItem.c b/src/tmx/Asn_J2735/src/r41/RequestedItem.c new file mode 100644 index 000000000..d4ebdda21 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RequestedItem.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RequestedItem.h" + +int +RequestedItem_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +RequestedItem_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +RequestedItem_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RequestedItem_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RequestedItem_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RequestedItem_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RequestedItem_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RequestedItem_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RequestedItem_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RequestedItem_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RequestedItem_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RequestedItem_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 17 } /* (0..17,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 5, "itemA" }, + { 2, 5, "itemB" }, + { 3, 5, "itemC" }, + { 4, 5, "itemD" }, + { 5, 5, "itemE" }, + { 6, 5, "itemF" }, + { 7, 5, "itemG" }, + { 8, 5, "itemH" }, + { 9, 5, "itemI" }, + { 10, 5, "itemJ" }, + { 11, 5, "itemK" }, + { 12, 5, "itemL" }, + { 13, 5, "itemM" }, + { 14, 5, "itemN" }, + { 15, 5, "itemO" }, + { 16, 5, "itemP" }, + { 17, 5, "itemQ" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_RequestedItem_enum2value_1[] = { + 1, /* itemA(1) */ + 2, /* itemB(2) */ + 3, /* itemC(3) */ + 4, /* itemD(4) */ + 5, /* itemE(5) */ + 6, /* itemF(6) */ + 7, /* itemG(7) */ + 8, /* itemH(8) */ + 9, /* itemI(9) */ + 10, /* itemJ(10) */ + 11, /* itemK(11) */ + 12, /* itemL(12) */ + 13, /* itemM(13) */ + 14, /* itemN(14) */ + 15, /* itemO(15) */ + 16, /* itemP(16) */ + 17, /* itemQ(17) */ + 0 /* reserved(0) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { + asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ + 18, /* Number of elements in the maps */ + 19, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItem = { + "RequestedItem", + "RequestedItem", + RequestedItem_free, + RequestedItem_print, + RequestedItem_constraint, + RequestedItem_decode_ber, + RequestedItem_encode_der, + RequestedItem_decode_xer, + RequestedItem_encode_xer, + RequestedItem_decode_uper, + RequestedItem_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RequestedItem_tags_1, + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + asn_DEF_RequestedItem_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + &asn_PER_type_RequestedItem_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestedItem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c new file mode 100644 index 000000000..d66a3ee7f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ResponderGroupAffected.c @@ -0,0 +1,173 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ResponderGroupAffected.h" + +int +ResponderGroupAffected_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +ResponderGroupAffected_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +ResponderGroupAffected_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ResponderGroupAffected_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ResponderGroupAffected_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ResponderGroupAffected_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ResponderGroupAffected_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ResponderGroupAffected_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ResponderGroupAffected_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ResponderGroupAffected_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ResponderGroupAffected_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { + { 9729, 23, "emergency-vehicle-units" }, + { 9730, 29, "federal-law-enforcement-units" }, + { 9731, 18, "state-police-units" }, + { 9732, 19, "county-police-units" }, + { 9733, 18, "local-police-units" }, + { 9734, 15, "ambulance-units" }, + { 9735, 12, "rescue-units" }, + { 9736, 10, "fire-units" }, + { 9737, 12, "hAZMAT-units" }, + { 9738, 14, "light-tow-unit" }, + { 9739, 14, "heavy-tow-unit" }, + { 9740, 23, "freeway-service-patrols" }, + { 9741, 29, "transportation-response-units" }, + { 9742, 33, "private-contractor-response-units" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { + 5, /* ambulance-units(9734) */ + 3, /* county-police-units(9732) */ + 0, /* emergency-vehicle-units(9729) */ + 1, /* federal-law-enforcement-units(9730) */ + 7, /* fire-units(9736) */ + 11, /* freeway-service-patrols(9740) */ + 8, /* hAZMAT-units(9737) */ + 10, /* heavy-tow-unit(9739) */ + 9, /* light-tow-unit(9738) */ + 4, /* local-police-units(9733) */ + 13, /* private-contractor-response-units(9742) */ + 6, /* rescue-units(9735) */ + 2, /* state-police-units(9731) */ + 12 /* transportation-response-units(9741) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { + asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { + "ResponderGroupAffected", + "ResponderGroupAffected", + ResponderGroupAffected_free, + ResponderGroupAffected_print, + ResponderGroupAffected_constraint, + ResponderGroupAffected_decode_ber, + ResponderGroupAffected_encode_der, + ResponderGroupAffected_decode_xer, + ResponderGroupAffected_encode_xer, + ResponderGroupAffected_decode_uper, + ResponderGroupAffected_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ResponderGroupAffected_tags_1, + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + &asn_PER_type_ResponderGroupAffected_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ResponseType.c b/src/tmx/Asn_J2735/src/r41/ResponseType.c new file mode 100644 index 000000000..43927d044 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ResponseType.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ResponseType.h" + +int +ResponseType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +ResponseType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +ResponseType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ResponseType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ResponseType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ResponseType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ResponseType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ResponseType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ResponseType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ResponseType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ResponseType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ResponseType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ResponseType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { + { 0, 21, "notInUseOrNotEquipped" }, + { 1, 9, "emergency" }, + { 2, 12, "nonEmergency" }, + { 3, 7, "pursuit" } +}; +static unsigned int asn_MAP_ResponseType_enum2value_1[] = { + 1, /* emergency(1) */ + 2, /* nonEmergency(2) */ + 0, /* notInUseOrNotEquipped(0) */ + 3 /* pursuit(3) */ +}; +static asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { + asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponseType = { + "ResponseType", + "ResponseType", + ResponseType_free, + ResponseType_print, + ResponseType_constraint, + ResponseType_decode_ber, + ResponseType_encode_der, + ResponseType_decode_xer, + ResponseType_encode_xer, + ResponseType_decode_uper, + ResponseType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ResponseType_tags_1, + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + asn_DEF_ResponseType_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + &asn_PER_type_ResponseType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponseType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c new file mode 100644 index 000000000..acb174e0c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionAppliesTo.c @@ -0,0 +1,173 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionAppliesTo.h" + +int +RestrictionAppliesTo_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +RestrictionAppliesTo_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +RestrictionAppliesTo_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RestrictionAppliesTo_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RestrictionAppliesTo_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RestrictionAppliesTo_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RestrictionAppliesTo_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RestrictionAppliesTo_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RestrictionAppliesTo_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RestrictionAppliesTo_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RestrictionAppliesTo_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 15, "equippedTransit" }, + { 2, 13, "equippedTaxis" }, + { 3, 13, "equippedOther" }, + { 4, 17, "emissionCompliant" }, + { 5, 15, "equippedBicycle" }, + { 6, 15, "weightCompliant" }, + { 7, 15, "heightCompliant" }, + { 8, 11, "pedestrians" }, + { 9, 17, "slowMovingPersons" }, + { 10, 15, "wheelchairUsers" }, + { 11, 18, "visualDisabilities" }, + { 12, 17, "audioDisabilities" }, + { 13, 24, "otherUnknownDisabilities" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { + 12, /* audioDisabilities(12) */ + 4, /* emissionCompliant(4) */ + 5, /* equippedBicycle(5) */ + 3, /* equippedOther(3) */ + 2, /* equippedTaxis(2) */ + 1, /* equippedTransit(1) */ + 7, /* heightCompliant(7) */ + 0, /* none(0) */ + 13, /* otherUnknownDisabilities(13) */ + 8, /* pedestrians(8) */ + 9, /* slowMovingPersons(9) */ + 11, /* visualDisabilities(11) */ + 6, /* weightCompliant(6) */ + 10 /* wheelchairUsers(10) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { + asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { + "RestrictionAppliesTo", + "RestrictionAppliesTo", + RestrictionAppliesTo_free, + RestrictionAppliesTo_print, + RestrictionAppliesTo_constraint, + RestrictionAppliesTo_decode_ber, + RestrictionAppliesTo_encode_der, + RestrictionAppliesTo_decode_xer, + RestrictionAppliesTo_encode_xer, + RestrictionAppliesTo_decode_uper, + RestrictionAppliesTo_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RestrictionAppliesTo_tags_1, + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + &asn_PER_type_RestrictionAppliesTo_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c new file mode 100644 index 000000000..cccae4c1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionClassAssignment.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionClassAssignment.h" + +static asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionUserTypeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "users" + }, +}; +static ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { + sizeof(struct RestrictionClassAssignment), + offsetof(struct RestrictionClassAssignment, _asn_ctx), + asn_MAP_RestrictionClassAssignment_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { + "RestrictionClassAssignment", + "RestrictionClassAssignment", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RestrictionClassAssignment_tags_1, + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RestrictionClassAssignment_1, + 2, /* Elements count */ + &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c new file mode 100644 index 000000000..4ce491747 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionClassID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionClassID.h" + +int +RestrictionClassID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RestrictionClassID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RestrictionClassID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RestrictionClassID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RestrictionClassID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RestrictionClassID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RestrictionClassID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RestrictionClassID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RestrictionClassID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RestrictionClassID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RestrictionClassID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { + "RestrictionClassID", + "RestrictionClassID", + RestrictionClassID_free, + RestrictionClassID_print, + RestrictionClassID_constraint, + RestrictionClassID_decode_ber, + RestrictionClassID_encode_der, + RestrictionClassID_decode_xer, + RestrictionClassID_encode_xer, + RestrictionClassID_decode_uper, + RestrictionClassID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RestrictionClassID_tags_1, + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassID_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + &asn_PER_type_RestrictionClassID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c b/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c new file mode 100644 index 000000000..603d11ad9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionClassList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionClassList.h" + +static asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionClassAssignment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { + sizeof(struct RestrictionClassList), + offsetof(struct RestrictionClassList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { + "RestrictionClassList", + "RestrictionClassList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RestrictionClassList_tags_1, + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + &asn_PER_type_RestrictionClassList_constr_1, + asn_MBR_RestrictionClassList_1, + 1, /* Single element */ + &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c b/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c new file mode 100644 index 000000000..b7ca48f78 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionUserType.c @@ -0,0 +1,71 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionUserType.h" + +static asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionAppliesTo, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalRestrictionUserType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { + sizeof(struct RestrictionUserType), + offsetof(struct RestrictionUserType, _asn_ctx), + offsetof(struct RestrictionUserType, present), + sizeof(((struct RestrictionUserType *)0)->present), + asn_MAP_RestrictionUserType_tag2el_1, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { + "RestrictionUserType", + "RestrictionUserType", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_RestrictionUserType_constr_1, + asn_MBR_RestrictionUserType_1, + 2, /* Elements count */ + &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c new file mode 100644 index 000000000..37e899313 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RestrictionUserTypeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RestrictionUserTypeList.h" + +static asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_RestrictionUserType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { + sizeof(struct RestrictionUserTypeList), + offsetof(struct RestrictionUserTypeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { + "RestrictionUserTypeList", + "RestrictionUserTypeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RestrictionUserTypeList_tags_1, + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + &asn_PER_type_RestrictionUserTypeList_constr_1, + asn_MBR_RestrictionUserTypeList_1, + 1, /* Single element */ + &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c new file mode 100644 index 000000000..501064acf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadLaneSetList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadLaneSetList.h" + +static asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { + sizeof(struct RoadLaneSetList), + offsetof(struct RoadLaneSetList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { + "RoadLaneSetList", + "RoadLaneSetList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadLaneSetList_tags_1, + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + &asn_PER_type_RoadLaneSetList_constr_1, + asn_MBR_RoadLaneSetList_1, + 1, /* Single element */ + &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c new file mode 100644 index 000000000..b9fee5399 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadRegulatorID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadRegulatorID.h" + +int +RoadRegulatorID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RoadRegulatorID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RoadRegulatorID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RoadRegulatorID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RoadRegulatorID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RoadRegulatorID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RoadRegulatorID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RoadRegulatorID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RoadRegulatorID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RoadRegulatorID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RoadRegulatorID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { + "RoadRegulatorID", + "RoadRegulatorID", + RoadRegulatorID_free, + RoadRegulatorID_print, + RoadRegulatorID_constraint, + RoadRegulatorID_decode_ber, + RoadRegulatorID_encode_der, + RoadRegulatorID_decode_xer, + RoadRegulatorID_encode_xer, + RoadRegulatorID_decode_uper, + RoadRegulatorID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadRegulatorID_tags_1, + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + &asn_PER_type_RoadRegulatorID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegment.c b/src/tmx/Asn_J2735/src/r41/RoadSegment.c new file mode 100644 index 000000000..1036ba713 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSegment.c @@ -0,0 +1,132 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSegment.h" + +static asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegment, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadLaneSetList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "roadLaneSet" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalRoadSegment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; +static ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { + sizeof(struct RoadSegment), + offsetof(struct RoadSegment, _asn_ctx), + asn_MAP_RoadSegment_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RoadSegment_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* Start extensions */ + 9 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegment = { + "RoadSegment", + "RoadSegment", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSegment_tags_1, + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + asn_DEF_RoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RoadSegment_1, + 8, /* Elements count */ + &asn_SPC_RoadSegment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c new file mode 100644 index 000000000..44d178e1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSegmentID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSegmentID.h" + +int +RoadSegmentID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RoadSegmentID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RoadSegmentID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RoadSegmentID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RoadSegmentID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RoadSegmentID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RoadSegmentID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RoadSegmentID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RoadSegmentID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RoadSegmentID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RoadSegmentID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { + "RoadSegmentID", + "RoadSegmentID", + RoadSegmentID_free, + RoadSegmentID_print, + RoadSegmentID_constraint, + RoadSegmentID_decode_ber, + RoadSegmentID_encode_der, + RoadSegmentID_decode_xer, + RoadSegmentID_encode_xer, + RoadSegmentID_decode_uper, + RoadSegmentID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSegmentID_tags_1, + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + &asn_PER_type_RoadSegmentID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c new file mode 100644 index 000000000..a96cf890d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSegmentList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSegmentList.h" + +static asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSegment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { + sizeof(struct RoadSegmentList), + offsetof(struct RoadSegmentList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { + "RoadSegmentList", + "RoadSegmentList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSegmentList_tags_1, + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + &asn_PER_type_RoadSegmentList_constr_1, + asn_MBR_RoadSegmentList_1, + 1, /* Single element */ + &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c new file mode 100644 index 000000000..35ff934f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSegmentReferenceID.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSegmentReferenceID.h" + +static asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, +}; +static int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { + sizeof(struct RoadSegmentReferenceID), + offsetof(struct RoadSegmentReferenceID, _asn_ctx), + asn_MAP_RoadSegmentReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { + "RoadSegmentReferenceID", + "RoadSegmentReferenceID", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSegmentReferenceID_tags_1, + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RoadSegmentReferenceID_1, + 2, /* Elements count */ + &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c b/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c new file mode 100644 index 000000000..1b736789a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSideAlert.c @@ -0,0 +1,234 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSideAlert.h" + +static int +memb_description_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 8)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_description_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_description_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_description_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_description_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { + sizeof(struct RoadSideAlert__description), + offsetof(struct RoadSideAlert__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_5 = { + "description", + "description", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_description_tags_5, + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ + asn_DEF_description_tags_5, /* Same as above */ + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ + &asn_PER_type_description_constr_5, + asn_MBR_description_5, + 1, /* Single element */ + &asn_SPC_description_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "typeEvent" + }, + { ATF_POINTER, 6, offsetof(struct RoadSideAlert, description), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_description_5, + memb_description_constraint_1, + &asn_PER_memb_description_constr_5, + 0, + "description" + }, + { ATF_POINTER, 5, offsetof(struct RoadSideAlert, priority), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "priority" + }, + { ATF_POINTER, 4, offsetof(struct RoadSideAlert, heading), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "heading" + }, + { ATF_POINTER, 3, offsetof(struct RoadSideAlert, extent), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "extent" + }, + { ATF_POINTER, 2, offsetof(struct RoadSideAlert, positon), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "positon" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "furtherInfoID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, crc), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_RoadSideAlert_oms_1[] = { 3, 4, 5, 6, 7, 8 }; +static ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* positon */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { + sizeof(struct RoadSideAlert), + offsetof(struct RoadSideAlert, _asn_ctx), + asn_MAP_RoadSideAlert_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_RoadSideAlert_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { + "RoadSideAlert", + "RoadSideAlert", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSideAlert_tags_1, + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + asn_DEF_RoadSideAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RoadSideAlert_1, + 10, /* Elements count */ + &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadSignID.c b/src/tmx/Asn_J2735/src/r41/RoadSignID.c new file mode 100644 index 000000000..03f394270 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadSignID.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadSignID.h" + +static asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "viewAngle" + }, + { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MUTCDCode, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "mutcdCode" + }, + { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; +static ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { + sizeof(struct RoadSignID), + offsetof(struct RoadSignID, _asn_ctx), + asn_MAP_RoadSignID_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RoadSignID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSignID = { + "RoadSignID", + "RoadSignID", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadSignID_tags_1, + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + asn_DEF_RoadSignID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RoadSignID_1, + 4, /* Elements count */ + &asn_SPC_RoadSignID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c new file mode 100644 index 000000000..0c593b9a1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/RoadwayCrownAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "RoadwayCrownAngle.h" + +int +RoadwayCrownAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +RoadwayCrownAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +RoadwayCrownAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +RoadwayCrownAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +RoadwayCrownAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +RoadwayCrownAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +RoadwayCrownAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +RoadwayCrownAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +RoadwayCrownAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +RoadwayCrownAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + RoadwayCrownAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { + "RoadwayCrownAngle", + "RoadwayCrownAngle", + RoadwayCrownAngle_free, + RoadwayCrownAngle_print, + RoadwayCrownAngle_constraint, + RoadwayCrownAngle_decode_ber, + RoadwayCrownAngle_encode_der, + RoadwayCrownAngle_decode_xer, + RoadwayCrownAngle_encode_xer, + RoadwayCrownAngle_decode_uper, + RoadwayCrownAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_RoadwayCrownAngle_tags_1, + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + &asn_PER_type_RoadwayCrownAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SPAT.c b/src/tmx/Asn_J2735/src/r41/SPAT.c new file mode 100644 index 000000000..bc37a493b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SPAT.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SPAT.h" + +static asn_TYPE_member_t asn_MBR_SPAT_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SPAT, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 2, offsetof(struct SPAT, msgSubID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgSubID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgSubID" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, name), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStateList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "intersections" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionalSPAT, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regional" + }, +}; +static int asn_MAP_SPAT_oms_1[] = { 1, 2, 4 }; +static ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { + sizeof(struct SPAT), + offsetof(struct SPAT, _asn_ctx), + asn_MAP_SPAT_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SPAT_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* Start extensions */ + 6 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SPAT = { + "SPAT", + "SPAT", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SPAT_tags_1, + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + asn_DEF_SPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SPAT_1, + 5, /* Elements count */ + &asn_SPC_SPAT_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Sample.c b/src/tmx/Asn_J2735/src/r41/Sample.c new file mode 100644 index 000000000..5a07b1de9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Sample.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Sample.h" + +static int +memb_sampleStart_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sampleEnd_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_Sample_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_sampleStart_constraint_1, + &asn_PER_memb_sampleStart_constr_2, + 0, + "sampleStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_sampleEnd_constraint_1, + &asn_PER_memb_sampleEnd_constr_3, + 0, + "sampleEnd" + }, +}; +static ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { + sizeof(struct Sample), + offsetof(struct Sample, _asn_ctx), + asn_MAP_Sample_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Sample = { + "Sample", + "Sample", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Sample_tags_1, + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + asn_DEF_Sample_tags_1, /* Same as above */ + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Sample_1, + 2, /* Elements count */ + &asn_SPC_Sample_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Scale-B12.c b/src/tmx/Asn_J2735/src/r41/Scale-B12.c new file mode 100644 index 000000000..55984dfb5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Scale-B12.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Scale-B12.h" + +int +Scale_B12_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Scale_B12_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Scale_B12_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Scale_B12_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Scale_B12_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Scale_B12_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Scale_B12_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Scale_B12_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Scale_B12_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Scale_B12_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Scale_B12_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Scale_B12_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { + "Scale-B12", + "Scale-B12", + Scale_B12_free, + Scale_B12_print, + Scale_B12_constraint, + Scale_B12_decode_ber, + Scale_B12_encode_der, + Scale_B12_decode_xer, + Scale_B12_encode_xer, + Scale_B12_decode_uper, + Scale_B12_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Scale_B12_tags_1, + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + asn_DEF_Scale_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + &asn_PER_type_Scale_B12_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SeatCount.c b/src/tmx/Asn_J2735/src/r41/SeatCount.c new file mode 100644 index 000000000..b2b18b67b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SeatCount.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "SeatCount.h" + +int +SeatCount_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 999)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SeatCount_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SeatCount_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SeatCount_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SeatCount_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SeatCount_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SeatCount_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SeatCount_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SeatCount_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SeatCount_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SeatCount_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SeatCount_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SeatCount_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SeatCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SeatCount = { + "SeatCount", + "SeatCount", + SeatCount_free, + SeatCount_print, + SeatCount_constraint, + SeatCount_decode_ber, + SeatCount_encode_der, + SeatCount_decode_xer, + SeatCount_encode_xer, + SeatCount_decode_uper, + SeatCount_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SeatCount_tags_1, + sizeof(asn_DEF_SeatCount_tags_1) + /sizeof(asn_DEF_SeatCount_tags_1[0]), /* 1 */ + asn_DEF_SeatCount_tags_1, /* Same as above */ + sizeof(asn_DEF_SeatCount_tags_1) + /sizeof(asn_DEF_SeatCount_tags_1[0]), /* 1 */ + &asn_PER_type_SeatCount_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Second.c b/src/tmx/Asn_J2735/src/r41/Second.c new file mode 100644 index 000000000..3347c06ea --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Second.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Second.h" + +int +Second_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 60)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Second_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Second_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Second_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Second_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Second_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Second_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Second_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Second_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Second_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Second_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Second_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Second_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Second_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Second_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Second_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Second_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Second_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Second_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Second_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Second = { + "Second", + "Second", + Second_free, + Second_print, + Second_constraint, + Second_decode_ber, + Second_encode_der, + Second_decode_xer, + Second_encode_xer, + Second_decode_uper, + Second_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Second_tags_1, + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + asn_DEF_Second_tags_1, /* Same as above */ + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + &asn_PER_type_Second_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SecondsAngle.c b/src/tmx/Asn_J2735/src/r41/SecondsAngle.c new file mode 100644 index 000000000..b8e4eaae5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SecondsAngle.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SecondsAngle.h" + +int +SecondsAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 5999)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SecondsAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SecondsAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SecondsAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SecondsAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SecondsAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SecondsAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SecondsAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SecondsAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SecondsAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SecondsAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { + "SecondsAngle", + "SecondsAngle", + SecondsAngle_free, + SecondsAngle_print, + SecondsAngle_constraint, + SecondsAngle_decode_ber, + SecondsAngle_encode_der, + SecondsAngle_decode_xer, + SecondsAngle_encode_xer, + SecondsAngle_decode_uper, + SecondsAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SecondsAngle_tags_1, + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + asn_DEF_SecondsAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + &asn_PER_type_SecondsAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c b/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c new file mode 100644 index 000000000..acef5b815 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SegmentAttribute.c @@ -0,0 +1,221 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SegmentAttribute.h" + +int +SegmentAttribute_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SegmentAttribute_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SegmentAttribute_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SegmentAttribute_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SegmentAttribute_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SegmentAttribute_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SegmentAttribute_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SegmentAttribute_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SegmentAttribute_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SegmentAttribute_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SegmentAttribute_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SegmentAttribute_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SegmentAttribute_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_SegmentAttribute_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_SegmentAttribute_specs_1 = { + asn_MAP_SegmentAttribute_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttribute_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SegmentAttribute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttribute = { + "SegmentAttribute", + "SegmentAttribute", + SegmentAttribute_free, + SegmentAttribute_print, + SegmentAttribute_constraint, + SegmentAttribute_decode_ber, + SegmentAttribute_encode_der, + SegmentAttribute_decode_xer, + SegmentAttribute_encode_xer, + SegmentAttribute_decode_uper, + SegmentAttribute_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SegmentAttribute_tags_1, + sizeof(asn_DEF_SegmentAttribute_tags_1) + /sizeof(asn_DEF_SegmentAttribute_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttribute_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttribute_tags_1) + /sizeof(asn_DEF_SegmentAttribute_tags_1[0]), /* 1 */ + &asn_PER_type_SegmentAttribute_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c b/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c new file mode 100644 index 000000000..62e93534e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SegmentAttributeList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SegmentAttributeList.h" + +static asn_per_constraints_t asn_PER_type_SegmentAttributeList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_SegmentAttributeList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttribute, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_SegmentAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_SegmentAttributeList_specs_1 = { + sizeof(struct SegmentAttributeList), + offsetof(struct SegmentAttributeList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeList = { + "SegmentAttributeList", + "SegmentAttributeList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SegmentAttributeList_tags_1, + sizeof(asn_DEF_SegmentAttributeList_tags_1) + /sizeof(asn_DEF_SegmentAttributeList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeList_tags_1) + /sizeof(asn_DEF_SegmentAttributeList_tags_1[0]), /* 1 */ + &asn_PER_type_SegmentAttributeList_constr_1, + asn_MBR_SegmentAttributeList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ShapePointSet.c b/src/tmx/Asn_J2735/src/r41/ShapePointSet.c new file mode 100644 index 000000000..61640cba1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ShapePointSet.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ShapePointSet.h" + +static asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { + { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "anchor" + }, + { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "directionality" + }, + { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nodeList" + }, +}; +static int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; +static ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { + sizeof(struct ShapePointSet), + offsetof(struct ShapePointSet, _asn_ctx), + asn_MAP_ShapePointSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_ShapePointSet_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { + "ShapePointSet", + "ShapePointSet", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ShapePointSet_tags_1, + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + asn_DEF_ShapePointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ShapePointSet_1, + 4, /* Elements count */ + &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignPrority.c b/src/tmx/Asn_J2735/src/r41/SignPrority.c new file mode 100644 index 000000000..6eb6523cf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignPrority.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignPrority.h" + +int +SignPrority_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 7)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SignPrority_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SignPrority_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SignPrority_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SignPrority_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SignPrority_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SignPrority_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SignPrority_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SignPrority_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SignPrority_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SignPrority_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SignPrority_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SignPrority_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignPrority = { + "SignPrority", + "SignPrority", + SignPrority_free, + SignPrority_print, + SignPrority_constraint, + SignPrority_decode_ber, + SignPrority_encode_der, + SignPrority_decode_xer, + SignPrority_encode_xer, + SignPrority_decode_uper, + SignPrority_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignPrority_tags_1, + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + asn_DEF_SignPrority_tags_1, /* Same as above */ + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + &asn_PER_type_SignPrority_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalControlState.c b/src/tmx/Asn_J2735/src/r41/SignalControlState.c new file mode 100644 index 000000000..dc6c92c74 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalControlState.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalControlState.h" + +int +SignalControlState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +SignalControlState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +SignalControlState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SignalControlState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SignalControlState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SignalControlState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SignalControlState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SignalControlState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SignalControlState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SignalControlState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SignalControlState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SignalControlState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SignalControlState_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SignalControlState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalControlState = { + "SignalControlState", + "SignalControlState", + SignalControlState_free, + SignalControlState_print, + SignalControlState_constraint, + SignalControlState_decode_ber, + SignalControlState_encode_der, + SignalControlState_decode_xer, + SignalControlState_encode_xer, + SignalControlState_decode_uper, + SignalControlState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalControlState_tags_1, + sizeof(asn_DEF_SignalControlState_tags_1) + /sizeof(asn_DEF_SignalControlState_tags_1[0]), /* 1 */ + asn_DEF_SignalControlState_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalControlState_tags_1) + /sizeof(asn_DEF_SignalControlState_tags_1[0]), /* 1 */ + &asn_PER_type_SignalControlState_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalControlZone.c b/src/tmx/Asn_J2735/src/r41/SignalControlZone.c new file mode 100644 index 000000000..69ff4ba9b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalControlZone.c @@ -0,0 +1,465 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalControlZone.h" + +static int +memb_enclosed_constraint_8(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_laneSet_constraint_4(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_zones_constraint_4(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_laneSet_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_enclosed_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_enclosed_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_zones_constr_7 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_laneSet_constr_5 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_zones_constr_7 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_data_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_laneSet_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_LaneNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_laneSet_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_laneSet_specs_5 = { + sizeof(struct SignalControlZone__data__laneSet), + offsetof(struct SignalControlZone__data__laneSet, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_laneSet_5 = { + "laneSet", + "laneSet", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_laneSet_tags_5, + sizeof(asn_DEF_laneSet_tags_5) + /sizeof(asn_DEF_laneSet_tags_5[0]) - 1, /* 1 */ + asn_DEF_laneSet_tags_5, /* Same as above */ + sizeof(asn_DEF_laneSet_tags_5) + /sizeof(asn_DEF_laneSet_tags_5[0]), /* 2 */ + &asn_PER_type_laneSet_constr_5, + asn_MBR_laneSet_5, + 1, /* Single element */ + &asn_SPC_laneSet_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_enclosed_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_LaneNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_enclosed_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_enclosed_specs_9 = { + sizeof(struct enclosed), + offsetof(struct enclosed, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_enclosed_9 = { + "enclosed", + "enclosed", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_enclosed_tags_9, + sizeof(asn_DEF_enclosed_tags_9) + /sizeof(asn_DEF_enclosed_tags_9[0]) - 1, /* 1 */ + asn_DEF_enclosed_tags_9, /* Same as above */ + sizeof(asn_DEF_enclosed_tags_9) + /sizeof(asn_DEF_enclosed_tags_9[0]), /* 2 */ + &asn_PER_type_enclosed_constr_9, + asn_MBR_enclosed_9, + 1, /* Single element */ + &asn_SPC_enclosed_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_8[] = { + { ATF_POINTER, 2, offsetof(struct SignalControlZone__data__zones__Member, enclosed), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_enclosed_9, + memb_enclosed_constraint_8, + &asn_PER_memb_enclosed_constr_9, + 0, + "enclosed" + }, + { ATF_POINTER, 1, offsetof(struct SignalControlZone__data__zones__Member, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneWidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data__zones__Member, nodeList), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeList, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nodeList" + }, +}; +static int asn_MAP_Member_oms_8[] = { 0, 1 }; +static ber_tlv_tag_t asn_DEF_Member_tags_8[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_8[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* enclosed */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_8 = { + sizeof(struct SignalControlZone__data__zones__Member), + offsetof(struct SignalControlZone__data__zones__Member, _asn_ctx), + asn_MAP_Member_tag2el_8, + 3, /* Count of tags in the map */ + asn_MAP_Member_oms_8, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_8 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_8, + sizeof(asn_DEF_Member_tags_8) + /sizeof(asn_DEF_Member_tags_8[0]), /* 1 */ + asn_DEF_Member_tags_8, /* Same as above */ + sizeof(asn_DEF_Member_tags_8) + /sizeof(asn_DEF_Member_tags_8[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_8, + 3, /* Elements count */ + &asn_SPC_Member_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_zones_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_8, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_zones_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_zones_specs_7 = { + sizeof(struct SignalControlZone__data__zones), + offsetof(struct SignalControlZone__data__zones, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_zones_7 = { + "zones", + "zones", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_zones_tags_7, + sizeof(asn_DEF_zones_tags_7) + /sizeof(asn_DEF_zones_tags_7[0]) - 1, /* 1 */ + asn_DEF_zones_tags_7, /* Same as above */ + sizeof(asn_DEF_zones_tags_7) + /sizeof(asn_DEF_zones_tags_7[0]), /* 2 */ + &asn_PER_type_zones_constr_7, + asn_MBR_zones_7, + 1, /* Single element */ + &asn_SPC_zones_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_data_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data, choice.laneSet), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_laneSet_5, + memb_laneSet_constraint_4, + &asn_PER_memb_laneSet_constr_5, + 0, + "laneSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone__data, choice.zones), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_zones_7, + memb_zones_constraint_4, + &asn_PER_memb_zones_constr_7, + 0, + "zones" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_data_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneSet */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* zones */ +}; +static asn_CHOICE_specifics_t asn_SPC_data_specs_4 = { + sizeof(struct SignalControlZone__data), + offsetof(struct SignalControlZone__data, _asn_ctx), + offsetof(struct SignalControlZone__data, present), + sizeof(((struct SignalControlZone__data *)0)->present), + asn_MAP_data_tag2el_4, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_data_4 = { + "data", + "data", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_data_constr_4, + asn_MBR_data_4, + 2, /* Elements count */ + &asn_SPC_data_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalControlZone, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, pValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalReqScheme, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pValue" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, data), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_data_4, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "data" + }, +}; +static int asn_MAP_SignalControlZone_oms_1[] = { 0 }; +static ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pValue */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* data */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { + sizeof(struct SignalControlZone), + offsetof(struct SignalControlZone, _asn_ctx), + asn_MAP_SignalControlZone_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_SignalControlZone_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { + "SignalControlZone", + "SignalControlZone", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalControlZone_tags_1, + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_SignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SignalControlZone_1, + 3, /* Elements count */ + &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalGroupID.c b/src/tmx/Asn_J2735/src/r41/SignalGroupID.c new file mode 100644 index 000000000..dbf9564bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalGroupID.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalGroupID.h" + +int +SignalGroupID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SignalGroupID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SignalGroupID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SignalGroupID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SignalGroupID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SignalGroupID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SignalGroupID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SignalGroupID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SignalGroupID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SignalGroupID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SignalGroupID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { + "SignalGroupID", + "SignalGroupID", + SignalGroupID_free, + SignalGroupID_print, + SignalGroupID_constraint, + SignalGroupID_decode_ber, + SignalGroupID_encode_der, + SignalGroupID_decode_xer, + SignalGroupID_encode_xer, + SignalGroupID_decode_uper, + SignalGroupID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalGroupID_tags_1, + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + asn_DEF_SignalGroupID_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + &asn_PER_type_SignalGroupID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c new file mode 100644 index 000000000..1e56cd513 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalHeadLocation.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalHeadLocation.h" + +static asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPoint, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "node" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "signalGroupID" + }, +}; +static ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { + sizeof(struct SignalHeadLocation), + offsetof(struct SignalHeadLocation, _asn_ctx), + asn_MAP_SignalHeadLocation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { + "SignalHeadLocation", + "SignalHeadLocation", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalHeadLocation_tags_1, + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SignalHeadLocation_1, + 2, /* Elements count */ + &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c new file mode 100644 index 000000000..b60f8700a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalHeadLocationList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalHeadLocationList.h" + +static asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalHeadLocation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { + sizeof(struct SignalHeadLocationList), + offsetof(struct SignalHeadLocationList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { + "SignalHeadLocationList", + "SignalHeadLocationList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalHeadLocationList_tags_1, + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + &asn_PER_type_SignalHeadLocationList_constr_1, + asn_MBR_SignalHeadLocationList_1, + 1, /* Single element */ + &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c b/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c new file mode 100644 index 000000000..444f192a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalReqScheme.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalReqScheme.h" + +int +SignalReqScheme_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +SignalReqScheme_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +SignalReqScheme_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SignalReqScheme_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SignalReqScheme_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SignalReqScheme_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SignalReqScheme_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SignalReqScheme_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SignalReqScheme_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SignalReqScheme_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SignalReqScheme_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { + "SignalReqScheme", + "SignalReqScheme", + SignalReqScheme_free, + SignalReqScheme_print, + SignalReqScheme_constraint, + SignalReqScheme_decode_ber, + SignalReqScheme_encode_der, + SignalReqScheme_decode_xer, + SignalReqScheme_encode_xer, + SignalReqScheme_decode_uper, + SignalReqScheme_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalReqScheme_tags_1, + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + asn_DEF_SignalReqScheme_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + &asn_PER_type_SignalReqScheme_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalRequest.c b/src/tmx/Asn_J2735/src/r41/SignalRequest.c new file mode 100644 index 000000000..7c555aa14 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalRequest.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalRequest.h" + +static asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_POINTER, 4, offsetof(struct SignalRequest, isCancel), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalReqScheme, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "isCancel" + }, + { ATF_POINTER, 3, offsetof(struct SignalRequest, requestedAction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalReqScheme, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "requestedAction" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequest, inLane), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "inLane" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequest, outLane), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneNumber, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "outLane" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, type), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NTCIPVehicleclass, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "type" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequest, codeWord), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CodeWord, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "codeWord" + }, +}; +static int asn_MAP_SignalRequest_oms_1[] = { 1, 2, 3, 4, 6 }; +static ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* isCancel */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestedAction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inLane */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outLane */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* codeWord */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { + sizeof(struct SignalRequest), + offsetof(struct SignalRequest, _asn_ctx), + asn_MAP_SignalRequest_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_SignalRequest_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* Start extensions */ + 8 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequest = { + "SignalRequest", + "SignalRequest", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalRequest_tags_1, + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + asn_DEF_SignalRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SignalRequest_1, + 7, /* Elements count */ + &asn_SPC_SignalRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c b/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c new file mode 100644 index 000000000..2784f11c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalRequestMsg.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalRequestMsg.h" + +static asn_TYPE_member_t asn_MBR_SignalRequestMsg_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, request), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequest, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "request" + }, + { ATF_POINTER, 4, offsetof(struct SignalRequestMsg, timeOfService), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timeOfService" + }, + { ATF_POINTER, 3, offsetof(struct SignalRequestMsg, endOfService), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "endOfService" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestMsg, transitStatus), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "transitStatus" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMsg, vehicleVIN), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleVIN" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMsg, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMblob, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleData" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMsg, status), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleRequestStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, +}; +static int asn_MAP_SignalRequestMsg_oms_1[] = { 3, 4, 5, 6, 8 }; +static ber_tlv_tag_t asn_DEF_SignalRequestMsg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SignalRequestMsg_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOfService */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* endOfService */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* vehicleVIN */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* status */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMsg_specs_1 = { + sizeof(struct SignalRequestMsg), + offsetof(struct SignalRequestMsg, _asn_ctx), + asn_MAP_SignalRequestMsg_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_SignalRequestMsg_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 8, /* Start extensions */ + 10 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestMsg = { + "SignalRequestMsg", + "SignalRequestMsg", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalRequestMsg_tags_1, + sizeof(asn_DEF_SignalRequestMsg_tags_1) + /sizeof(asn_DEF_SignalRequestMsg_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestMsg_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestMsg_tags_1) + /sizeof(asn_DEF_SignalRequestMsg_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SignalRequestMsg_1, + 9, /* Elements count */ + &asn_SPC_SignalRequestMsg_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalState.c b/src/tmx/Asn_J2735/src/r41/SignalState.c new file mode 100644 index 000000000..577e81839 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalState.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalState.h" + +int +SignalState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +SignalState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +SignalState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SignalState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SignalState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SignalState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SignalState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SignalState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SignalState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SignalState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SignalState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SignalState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SignalState_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SignalState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalState = { + "SignalState", + "SignalState", + SignalState_free, + SignalState_print, + SignalState_constraint, + SignalState_decode_ber, + SignalState_encode_der, + SignalState_decode_xer, + SignalState_encode_xer, + SignalState_decode_uper, + SignalState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalState_tags_1, + sizeof(asn_DEF_SignalState_tags_1) + /sizeof(asn_DEF_SignalState_tags_1[0]), /* 1 */ + asn_DEF_SignalState_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalState_tags_1) + /sizeof(asn_DEF_SignalState_tags_1[0]), /* 1 */ + &asn_PER_type_SignalState_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c new file mode 100644 index 000000000..06c29945f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SignalStatusMessage.c @@ -0,0 +1,306 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SignalStatusMessage.h" + +static int +memb_priority_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 7)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_prempt_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 7)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_priority_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_prempt_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_priority_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_prempt_constr_9 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 7 } /* (SIZE(1..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_priority_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_SignalState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_priority_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_priority_specs_6 = { + sizeof(struct SignalStatusMessage__priority), + offsetof(struct SignalStatusMessage__priority, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_priority_6 = { + "priority", + "priority", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_priority_tags_6, + sizeof(asn_DEF_priority_tags_6) + /sizeof(asn_DEF_priority_tags_6[0]) - 1, /* 1 */ + asn_DEF_priority_tags_6, /* Same as above */ + sizeof(asn_DEF_priority_tags_6) + /sizeof(asn_DEF_priority_tags_6[0]), /* 2 */ + &asn_PER_type_priority_constr_6, + asn_MBR_priority_6, + 1, /* Single element */ + &asn_SPC_priority_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_prempt_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_SignalState, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_prempt_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_prempt_specs_9 = { + sizeof(struct SignalStatusMessage__prempt), + offsetof(struct SignalStatusMessage__prempt, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_prempt_9 = { + "prempt", + "prempt", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_prempt_tags_9, + sizeof(asn_DEF_prempt_tags_9) + /sizeof(asn_DEF_prempt_tags_9[0]) - 1, /* 1 */ + asn_DEF_prempt_tags_9, /* Same as above */ + sizeof(asn_DEF_prempt_tags_9) + /sizeof(asn_DEF_prempt_tags_9[0]), /* 2 */ + &asn_PER_type_prempt_constr_9, + asn_MBR_prempt_9, + 1, /* Single element */ + &asn_SPC_prempt_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCount, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStatusObject, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "status" + }, + { ATF_POINTER, 5, offsetof(struct SignalStatusMessage, priority), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_priority_6, + memb_priority_constraint_1, + &asn_PER_memb_priority_constr_6, + 0, + "priority" + }, + { ATF_POINTER, 4, offsetof(struct SignalStatusMessage, priorityCause), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "priorityCause" + }, + { ATF_POINTER, 3, offsetof(struct SignalStatusMessage, prempt), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_prempt_9, + memb_prempt_constraint_1, + &asn_PER_memb_prempt_constr_9, + 0, + "prempt" + }, + { ATF_POINTER, 2, offsetof(struct SignalStatusMessage, preemptCause), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "preemptCause" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, transitStatus), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "transitStatus" + }, +}; +static int asn_MAP_SignalStatusMessage_oms_1[] = { 4, 5, 6, 7, 8 }; +static ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* priorityCause */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* prempt */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptCause */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* transitStatus */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { + sizeof(struct SignalStatusMessage), + offsetof(struct SignalStatusMessage, _asn_ctx), + asn_MAP_SignalStatusMessage_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 8, /* Start extensions */ + 10 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { + "SignalStatusMessage", + "SignalStatusMessage", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SignalStatusMessage_tags_1, + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SignalStatusMessage_1, + 9, /* Elements count */ + &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SirenInUse.c b/src/tmx/Asn_J2735/src/r41/SirenInUse.c new file mode 100644 index 000000000..80b59a1d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SirenInUse.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SirenInUse.h" + +int +SirenInUse_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SirenInUse_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SirenInUse_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SirenInUse_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SirenInUse_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SirenInUse_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SirenInUse_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SirenInUse_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SirenInUse_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SirenInUse_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SirenInUse_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SirenInUse_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 8, "reserved" } +}; +static unsigned int asn_MAP_SirenInUse_enum2value_1[] = { + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { + asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SirenInUse = { + "SirenInUse", + "SirenInUse", + SirenInUse_free, + SirenInUse_print, + SirenInUse_constraint, + SirenInUse_decode_ber, + SirenInUse_encode_der, + SirenInUse_decode_xer, + SirenInUse_encode_xer, + SirenInUse_decode_uper, + SirenInUse_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SirenInUse_tags_1, + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + asn_DEF_SirenInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + &asn_PER_type_SirenInUse_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SirenInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Snapshot.c b/src/tmx/Asn_J2735/src/r41/Snapshot.c new file mode 100644 index 000000000..1582ac3b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Snapshot.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Snapshot.h" + +static asn_TYPE_member_t asn_MBR_Snapshot_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "thePosition" + }, + { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtension, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct Snapshot, datSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "datSet" + }, +}; +static int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; +static ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* datSet */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { + sizeof(struct Snapshot), + offsetof(struct Snapshot, _asn_ctx), + asn_MAP_Snapshot_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Snapshot_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* Start extensions */ + 4 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_Snapshot = { + "Snapshot", + "Snapshot", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Snapshot_tags_1, + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + asn_DEF_Snapshot_tags_1, /* Same as above */ + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Snapshot_1, + 3, /* Elements count */ + &asn_SPC_Snapshot_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c b/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c new file mode 100644 index 000000000..caaa7e683 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SnapshotDistance.c @@ -0,0 +1,210 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SnapshotDistance.h" + +static int +memb_d1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 999)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_s1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_d2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 999)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_s2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_d1_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_s1_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_d2_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 999 } /* (0..999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_s2_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, d1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_d1_constraint_1, + &asn_PER_memb_d1_constr_2, + 0, + "d1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, s1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_s1_constraint_1, + &asn_PER_memb_s1_constr_3, + 0, + "s1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, d2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_d2_constraint_1, + &asn_PER_memb_d2_constr_4, + 0, + "d2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, s2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_s2_constraint_1, + &asn_PER_memb_s2_constr_5, + 0, + "s2" + }, +}; +static ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* s1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* d2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* s2 */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { + sizeof(struct SnapshotDistance), + offsetof(struct SnapshotDistance, _asn_ctx), + asn_MAP_SnapshotDistance_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { + "SnapshotDistance", + "SnapshotDistance", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SnapshotDistance_tags_1, + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + asn_DEF_SnapshotDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SnapshotDistance_1, + 4, /* Elements count */ + &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SnapshotTime.c b/src/tmx/Asn_J2735/src/r41/SnapshotTime.c new file mode 100644 index 000000000..3f2e2fec4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SnapshotTime.c @@ -0,0 +1,210 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SnapshotTime.h" + +static int +memb_t1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 99)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_s1_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_t2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 99)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_s2_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_t1_constr_2 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 99 } /* (1..99) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_s1_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_t2_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 99 } /* (1..99) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_s2_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, t1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_t1_constraint_1, + &asn_PER_memb_t1_constr_2, + 0, + "t1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, s1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_s1_constraint_1, + &asn_PER_memb_s1_constr_3, + 0, + "s1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, t2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_t2_constraint_1, + &asn_PER_memb_t2_constr_4, + 0, + "t2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, s2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_s2_constraint_1, + &asn_PER_memb_s2_constr_5, + 0, + "s2" + }, +}; +static ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* t1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* s1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* t2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* s2 */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { + sizeof(struct SnapshotTime), + offsetof(struct SnapshotTime, _asn_ctx), + asn_MAP_SnapshotTime_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { + "SnapshotTime", + "SnapshotTime", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SnapshotTime_tags_1, + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + asn_DEF_SnapshotTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_SnapshotTime_1, + 4, /* Elements count */ + &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Speed.c b/src/tmx/Asn_J2735/src/r41/Speed.c new file mode 100644 index 000000000..5657ea36d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Speed.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Speed.h" + +int +Speed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Speed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Speed_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Speed_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Speed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Speed_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Speed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Speed_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Speed_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Speed_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Speed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Speed_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Speed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Speed_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Speed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Speed_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Speed_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Speed_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Speed_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Speed = { + "Speed", + "Speed", + Speed_free, + Speed_print, + Speed_constraint, + Speed_decode_ber, + Speed_encode_der, + Speed_decode_xer, + Speed_encode_xer, + Speed_decode_uper, + Speed_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Speed_tags_1, + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + asn_DEF_Speed_tags_1, /* Same as above */ + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + &asn_PER_type_Speed_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c b/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c new file mode 100644 index 000000000..136578963 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedAdvice.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedAdvice.h" + +int +SpeedAdvice_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 500)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SpeedAdvice_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SpeedAdvice_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SpeedAdvice_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SpeedAdvice_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SpeedAdvice_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SpeedAdvice_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SpeedAdvice_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SpeedAdvice_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SpeedAdvice_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SpeedAdvice_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { + "SpeedAdvice", + "SpeedAdvice", + SpeedAdvice_free, + SpeedAdvice_print, + SpeedAdvice_constraint, + SpeedAdvice_decode_ber, + SpeedAdvice_encode_der, + SpeedAdvice_decode_xer, + SpeedAdvice_encode_xer, + SpeedAdvice_decode_uper, + SpeedAdvice_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedAdvice_tags_1, + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + asn_DEF_SpeedAdvice_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedAdvice_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c b/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c new file mode 100644 index 000000000..ff96b4d46 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedConfidence.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedConfidence.h" + +int +SpeedConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SpeedConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SpeedConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SpeedConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SpeedConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SpeedConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SpeedConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SpeedConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SpeedConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SpeedConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SpeedConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec100ms" }, + { 2, 8, "prec10ms" }, + { 3, 7, "prec5ms" }, + { 4, 7, "prec1ms" }, + { 5, 9, "prec0-1ms" }, + { 6, 10, "prec0-05ms" }, + { 7, 10, "prec0-01ms" } +}; +static unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { + 7, /* prec0-01ms(7) */ + 6, /* prec0-05ms(6) */ + 5, /* prec0-1ms(5) */ + 1, /* prec100ms(1) */ + 2, /* prec10ms(2) */ + 4, /* prec1ms(4) */ + 3, /* prec5ms(3) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { + asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { + "SpeedConfidence", + "SpeedConfidence", + SpeedConfidence_free, + SpeedConfidence_print, + SpeedConfidence_constraint, + SpeedConfidence_decode_ber, + SpeedConfidence_encode_der, + SpeedConfidence_decode_xer, + SpeedConfidence_encode_xer, + SpeedConfidence_decode_uper, + SpeedConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedConfidence_tags_1, + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimit.c b/src/tmx/Asn_J2735/src/r41/SpeedLimit.c new file mode 100644 index 000000000..83c854290 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedLimit.c @@ -0,0 +1,218 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedLimit.h" + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_type_item_sl_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_sl_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct item_sl, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct item_sl, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_text_constraint_3, + &asn_PER_memb_text_constr_5, + 0, + "text" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_item_sl_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_sl_specs_3 = { + sizeof(struct item_sl), + offsetof(struct item_sl, _asn_ctx), + offsetof(struct item_sl, present), + sizeof(((struct item_sl *)0)->present), + asn_MAP_item_sl_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_sl_3 = { + "item-sl", + "item-sl", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_item_sl_constr_3, + asn_MBR_item_sl_3, + 2, /* Elements count */ + &asn_SPC_item_sl_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item_sl), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_sl_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "item-sl" + }, +}; +static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-sl */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct SpeedLimit__Member), + offsetof(struct SpeedLimit__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { + sizeof(struct SpeedLimit), + offsetof(struct SpeedLimit, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { + "SpeedLimit", + "SpeedLimit", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedLimit_tags_1, + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedLimit_constr_1, + asn_MBR_SpeedLimit_1, + 1, /* Single element */ + &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c b/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c new file mode 100644 index 000000000..5e7cd20cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedLimitList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedLimitList.h" + +static asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegulatorySpeedLimit, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { + sizeof(struct SpeedLimitList), + offsetof(struct SpeedLimitList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { + "SpeedLimitList", + "SpeedLimitList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedLimitList_tags_1, + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedLimitList_constr_1, + asn_MBR_SpeedLimitList_1, + 1, /* Single element */ + &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c b/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c new file mode 100644 index 000000000..f112a45e6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedLimitType.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedLimitType.h" + +int +SpeedLimitType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SpeedLimitType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SpeedLimitType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SpeedLimitType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SpeedLimitType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SpeedLimitType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SpeedLimitType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SpeedLimitType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SpeedLimitType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SpeedLimitType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SpeedLimitType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 20, "maxSpeedInSchoolZone" }, + { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, + { 3, 26, "maxSpeedInConstructionZone" }, + { 4, 15, "vehicleMinSpeed" }, + { 5, 15, "vehicleMaxSpeed" }, + { 6, 20, "vehicleNightMaxSpeed" }, + { 7, 13, "truckMinSpeed" }, + { 8, 13, "truckMaxSpeed" }, + { 9, 18, "truckNightMaxSpeed" }, + { 10, 28, "vehiclesWithTrailersMinSpeed" }, + { 11, 28, "vehiclesWithTrailersMaxSpeed" }, + { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { + 3, /* maxSpeedInConstructionZone(3) */ + 1, /* maxSpeedInSchoolZone(1) */ + 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ + 8, /* truckMaxSpeed(8) */ + 7, /* truckMinSpeed(7) */ + 9, /* truckNightMaxSpeed(9) */ + 0, /* unknown(0) */ + 5, /* vehicleMaxSpeed(5) */ + 4, /* vehicleMinSpeed(4) */ + 6, /* vehicleNightMaxSpeed(6) */ + 11, /* vehiclesWithTrailersMaxSpeed(11) */ + 10, /* vehiclesWithTrailersMinSpeed(10) */ + 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { + asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ + 13, /* Number of elements in the maps */ + 14, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { + "SpeedLimitType", + "SpeedLimitType", + SpeedLimitType_free, + SpeedLimitType_print, + SpeedLimitType_constraint, + SpeedLimitType_decode_ber, + SpeedLimitType_encode_der, + SpeedLimitType_decode_xer, + SpeedLimitType_encode_xer, + SpeedLimitType_decode_uper, + SpeedLimitType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedLimitType_tags_1, + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitType_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedLimitType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c new file mode 100644 index 000000000..f5cb5ec6f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SpeedandHeadingandThrottleConfidence.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpeedandHeadingandThrottleConfidence.h" + +int +SpeedandHeadingandThrottleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +SpeedandHeadingandThrottleConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SpeedandHeadingandThrottleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SpeedandHeadingandThrottleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SpeedandHeadingandThrottleConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SpeedandHeadingandThrottleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SpeedandHeadingandThrottleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SpeedandHeadingandThrottleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SpeedandHeadingandThrottleConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SpeedandHeadingandThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SpeedandHeadingandThrottleConfidence_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { + "SpeedandHeadingandThrottleConfidence", + "SpeedandHeadingandThrottleConfidence", + SpeedandHeadingandThrottleConfidence_free, + SpeedandHeadingandThrottleConfidence_print, + SpeedandHeadingandThrottleConfidence_constraint, + SpeedandHeadingandThrottleConfidence_decode_ber, + SpeedandHeadingandThrottleConfidence_encode_der, + SpeedandHeadingandThrottleConfidence_decode_xer, + SpeedandHeadingandThrottleConfidence_encode_xer, + SpeedandHeadingandThrottleConfidence_decode_uper, + SpeedandHeadingandThrottleConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_SpeedandHeadingandThrottleConfidence_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c new file mode 100644 index 000000000..9874d7847 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/StabilityControlStatus.c @@ -0,0 +1,149 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "StabilityControlStatus.h" + +int +StabilityControlStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +StabilityControlStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +StabilityControlStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +StabilityControlStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +StabilityControlStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +StabilityControlStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +StabilityControlStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +StabilityControlStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +StabilityControlStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +StabilityControlStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + StabilityControlStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" } +}; +static unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { + asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { + "StabilityControlStatus", + "StabilityControlStatus", + StabilityControlStatus_free, + StabilityControlStatus_print, + StabilityControlStatus_constraint, + StabilityControlStatus_decode_ber, + StabilityControlStatus_encode_der, + StabilityControlStatus_decode_xer, + StabilityControlStatus_encode_xer, + StabilityControlStatus_decode_uper, + StabilityControlStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_StabilityControlStatus_tags_1, + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + &asn_PER_type_StabilityControlStatus_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/StationID.c b/src/tmx/Asn_J2735/src/r41/StationID.c new file mode 100644 index 000000000..ddedfaadb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/StationID.c @@ -0,0 +1,143 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "StationID.h" + +int +StationID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +StationID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */ +} + +void +StationID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + StationID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +StationID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + StationID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +StationID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + StationID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +StationID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + StationID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +StationID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + StationID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +StationID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + StationID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +StationID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + StationID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +StationID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + StationID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_StationID_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StationID = { + "StationID", + "StationID", + StationID_free, + StationID_print, + StationID_constraint, + StationID_decode_ber, + StationID_encode_der, + StationID_decode_xer, + StationID_encode_xer, + StationID_decode_uper, + StationID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_StationID_tags_1, + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + asn_DEF_StationID_tags_1, /* Same as above */ + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + &asn_PER_type_StationID_constr_1, + 0, 0, /* No members */ + &asn_SPC_StationID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c new file mode 100644 index 000000000..76aeb3ba8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SteeringAxleLubePressure.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SteeringAxleLubePressure.h" + +int +SteeringAxleLubePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SteeringAxleLubePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SteeringAxleLubePressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SteeringAxleLubePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleLubePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SteeringAxleLubePressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleLubePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SteeringAxleLubePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleLubePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SteeringAxleLubePressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SteeringAxleLubePressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { + "SteeringAxleLubePressure", + "SteeringAxleLubePressure", + SteeringAxleLubePressure_free, + SteeringAxleLubePressure_print, + SteeringAxleLubePressure_constraint, + SteeringAxleLubePressure_decode_ber, + SteeringAxleLubePressure_encode_der, + SteeringAxleLubePressure_decode_xer, + SteeringAxleLubePressure_encode_xer, + SteeringAxleLubePressure_decode_uper, + SteeringAxleLubePressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SteeringAxleLubePressure_tags_1, + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + &asn_PER_type_SteeringAxleLubePressure_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c new file mode 100644 index 000000000..a7c50dd5f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SteeringAxleTemperature.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SteeringAxleTemperature.h" + +int +SteeringAxleTemperature_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SteeringAxleTemperature_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SteeringAxleTemperature_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SteeringAxleTemperature_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleTemperature_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SteeringAxleTemperature_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleTemperature_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SteeringAxleTemperature_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SteeringAxleTemperature_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SteeringAxleTemperature_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SteeringAxleTemperature_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { + "SteeringAxleTemperature", + "SteeringAxleTemperature", + SteeringAxleTemperature_free, + SteeringAxleTemperature_print, + SteeringAxleTemperature_constraint, + SteeringAxleTemperature_decode_ber, + SteeringAxleTemperature_encode_der, + SteeringAxleTemperature_decode_xer, + SteeringAxleTemperature_encode_xer, + SteeringAxleTemperature_decode_uper, + SteeringAxleTemperature_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SteeringAxleTemperature_tags_1, + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + &asn_PER_type_SteeringAxleTemperature_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c new file mode 100644 index 000000000..59331caa8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngle.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SteeringWheelAngle.h" + +int +SteeringWheelAngle_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +SteeringWheelAngle_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +SteeringWheelAngle_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SteeringWheelAngle_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngle_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SteeringWheelAngle_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngle_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SteeringWheelAngle_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngle_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SteeringWheelAngle_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SteeringWheelAngle_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { + "SteeringWheelAngle", + "SteeringWheelAngle", + SteeringWheelAngle_free, + SteeringWheelAngle_print, + SteeringWheelAngle_constraint, + SteeringWheelAngle_decode_ber, + SteeringWheelAngle_encode_der, + SteeringWheelAngle_decode_xer, + SteeringWheelAngle_encode_xer, + SteeringWheelAngle_decode_uper, + SteeringWheelAngle_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SteeringWheelAngle_tags_1, + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + &asn_PER_type_SteeringWheelAngle_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c new file mode 100644 index 000000000..ee46a8aa5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleConfidence.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SteeringWheelAngleConfidence.h" + +int +SteeringWheelAngleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SteeringWheelAngleConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SteeringWheelAngleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SteeringWheelAngleConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SteeringWheelAngleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SteeringWheelAngleConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SteeringWheelAngleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "prec2deg" }, + { 2, 8, "prec1deg" }, + { 3, 11, "prec0-02deg" } +}; +static unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { + 3, /* prec0-02deg(3) */ + 2, /* prec1deg(2) */ + 1, /* prec2deg(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { + asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { + "SteeringWheelAngleConfidence", + "SteeringWheelAngleConfidence", + SteeringWheelAngleConfidence_free, + SteeringWheelAngleConfidence_print, + SteeringWheelAngleConfidence_constraint, + SteeringWheelAngleConfidence_decode_ber, + SteeringWheelAngleConfidence_encode_der, + SteeringWheelAngleConfidence_decode_xer, + SteeringWheelAngleConfidence_encode_xer, + SteeringWheelAngleConfidence_decode_uper, + SteeringWheelAngleConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SteeringWheelAngleConfidence_tags_1, + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_SteeringWheelAngleConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c new file mode 100644 index 000000000..720d3f2a0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SteeringWheelAngleRateOfChange.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SteeringWheelAngleRateOfChange.h" + +int +SteeringWheelAngleRateOfChange_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SteeringWheelAngleRateOfChange_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SteeringWheelAngleRateOfChange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleRateOfChange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SteeringWheelAngleRateOfChange_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleRateOfChange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SteeringWheelAngleRateOfChange_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SteeringWheelAngleRateOfChange_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SteeringWheelAngleRateOfChange_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SteeringWheelAngleRateOfChange_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { + "SteeringWheelAngleRateOfChange", + "SteeringWheelAngleRateOfChange", + SteeringWheelAngleRateOfChange_free, + SteeringWheelAngleRateOfChange_print, + SteeringWheelAngleRateOfChange_constraint, + SteeringWheelAngleRateOfChange_decode_ber, + SteeringWheelAngleRateOfChange_encode_der, + SteeringWheelAngleRateOfChange_decode_xer, + SteeringWheelAngleRateOfChange_encode_xer, + SteeringWheelAngleRateOfChange_decode_uper, + SteeringWheelAngleRateOfChange_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SummerTime.c b/src/tmx/Asn_J2735/src/r41/SummerTime.c new file mode 100644 index 000000000..9bfa20bea --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SummerTime.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SummerTime.h" + +int +SummerTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +SummerTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +SummerTime_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SummerTime_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SummerTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SummerTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SummerTime_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SummerTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SummerTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SummerTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SummerTime_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SummerTime_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SummerTime_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { + { 0, 15, "notInSummerTime" }, + { 1, 12, "inSummerTime" } +}; +static unsigned int asn_MAP_SummerTime_enum2value_1[] = { + 1, /* inSummerTime(1) */ + 0 /* notInSummerTime(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { + asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SummerTime = { + "SummerTime", + "SummerTime", + SummerTime_free, + SummerTime_print, + SummerTime_constraint, + SummerTime_decode_ber, + SummerTime_encode_der, + SummerTime_decode_xer, + SummerTime_encode_xer, + SummerTime_decode_uper, + SummerTime_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SummerTime_tags_1, + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + asn_DEF_SummerTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + &asn_PER_type_SummerTime_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SummerTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/SunSensor.c b/src/tmx/Asn_J2735/src/r41/SunSensor.c new file mode 100644 index 000000000..b94bdf771 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/SunSensor.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SunSensor.h" + +int +SunSensor_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +SunSensor_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +SunSensor_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + SunSensor_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +SunSensor_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +SunSensor_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +SunSensor_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +SunSensor_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +SunSensor_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +SunSensor_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +SunSensor_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + SunSensor_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_SunSensor_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SunSensor = { + "SunSensor", + "SunSensor", + SunSensor_free, + SunSensor_print, + SunSensor_constraint, + SunSensor_decode_ber, + SunSensor_encode_der, + SunSensor_decode_xer, + SunSensor_encode_xer, + SunSensor_decode_uper, + SunSensor_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_SunSensor_tags_1, + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + asn_DEF_SunSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + &asn_PER_type_SunSensor_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TemporaryID.c b/src/tmx/Asn_J2735/src/r41/TemporaryID.c new file mode 100644 index 000000000..7cb94e610 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TemporaryID.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TemporaryID.h" + +int +TemporaryID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +TemporaryID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +TemporaryID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TemporaryID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TemporaryID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TemporaryID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TemporaryID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TemporaryID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TemporaryID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TemporaryID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TemporaryID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TemporaryID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TemporaryID = { + "TemporaryID", + "TemporaryID", + TemporaryID_free, + TemporaryID_print, + TemporaryID_constraint, + TemporaryID_decode_ber, + TemporaryID_encode_der, + TemporaryID_decode_xer, + TemporaryID_encode_xer, + TemporaryID_decode_uper, + TemporaryID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TemporaryID_tags_1, + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + asn_DEF_TemporaryID_tags_1, /* Same as above */ + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + &asn_PER_type_TemporaryID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TenthSecond.c b/src/tmx/Asn_J2735/src/r41/TenthSecond.c new file mode 100644 index 000000000..339f74f3c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TenthSecond.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TenthSecond.h" + +int +TenthSecond_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 9)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TenthSecond_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TenthSecond_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TenthSecond_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TenthSecond_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TenthSecond_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TenthSecond_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TenthSecond_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TenthSecond_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TenthSecond_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TenthSecond_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TenthSecond_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TenthSecond = { + "TenthSecond", + "TenthSecond", + TenthSecond_free, + TenthSecond_print, + TenthSecond_constraint, + TenthSecond_decode_ber, + TenthSecond_encode_der, + TenthSecond_decode_xer, + TenthSecond_encode_xer, + TenthSecond_decode_uper, + TenthSecond_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TenthSecond_tags_1, + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + asn_DEF_TenthSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + &asn_PER_type_TenthSecond_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TermDistance.c b/src/tmx/Asn_J2735/src/r41/TermDistance.c new file mode 100644 index 000000000..098fe7661 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TermDistance.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TermDistance.h" + +int +TermDistance_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 30000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TermDistance_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TermDistance_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TermDistance_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TermDistance_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TermDistance_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TermDistance_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TermDistance_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TermDistance_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TermDistance_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TermDistance_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TermDistance_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TermDistance_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermDistance = { + "TermDistance", + "TermDistance", + TermDistance_free, + TermDistance_print, + TermDistance_constraint, + TermDistance_decode_ber, + TermDistance_encode_der, + TermDistance_decode_xer, + TermDistance_encode_xer, + TermDistance_decode_uper, + TermDistance_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TermDistance_tags_1, + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + asn_DEF_TermDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + &asn_PER_type_TermDistance_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TermTime.c b/src/tmx/Asn_J2735/src/r41/TermTime.c new file mode 100644 index 000000000..bd7592d9e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TermTime.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TermTime.h" + +int +TermTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 1800)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TermTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TermTime_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TermTime_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TermTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TermTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TermTime_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TermTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TermTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TermTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TermTime_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TermTime_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TermTime_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermTime = { + "TermTime", + "TermTime", + TermTime_free, + TermTime_print, + TermTime_constraint, + TermTime_decode_ber, + TermTime_encode_der, + TermTime_decode_xer, + TermTime_encode_xer, + TermTime_decode_uper, + TermTime_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TermTime_tags_1, + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + asn_DEF_TermTime_tags_1, /* Same as above */ + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + &asn_PER_type_TermTime_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c new file mode 100644 index 000000000..8988990bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ThrottleConfidence.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ThrottleConfidence.h" + +int +ThrottleConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +ThrottleConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +ThrottleConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ThrottleConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ThrottleConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ThrottleConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ThrottleConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ThrottleConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ThrottleConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ThrottleConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ThrottleConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "prec10percent" }, + { 2, 12, "prec1percent" }, + { 3, 14, "prec0-5percent" } +}; +static unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { + 3, /* prec0-5percent(3) */ + 1, /* prec10percent(1) */ + 2, /* prec1percent(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { + asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { + "ThrottleConfidence", + "ThrottleConfidence", + ThrottleConfidence_free, + ThrottleConfidence_print, + ThrottleConfidence_constraint, + ThrottleConfidence_decode_ber, + ThrottleConfidence_encode_der, + ThrottleConfidence_decode_xer, + ThrottleConfidence_encode_xer, + ThrottleConfidence_decode_uper, + ThrottleConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ThrottleConfidence_tags_1, + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_ThrottleConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c b/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c new file mode 100644 index 000000000..6631ed9f5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ThrottlePosition.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ThrottlePosition.h" + +int +ThrottlePosition_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ThrottlePosition_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ThrottlePosition_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ThrottlePosition_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ThrottlePosition_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ThrottlePosition_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ThrottlePosition_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ThrottlePosition_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ThrottlePosition_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ThrottlePosition_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ThrottlePosition_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { + "ThrottlePosition", + "ThrottlePosition", + ThrottlePosition_free, + ThrottlePosition_print, + ThrottlePosition_constraint, + ThrottlePosition_decode_ber, + ThrottlePosition_encode_der, + ThrottlePosition_decode_xer, + ThrottlePosition_encode_xer, + ThrottlePosition_decode_uper, + ThrottlePosition_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ThrottlePosition_tags_1, + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + asn_DEF_ThrottlePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + &asn_PER_type_ThrottlePosition_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c new file mode 100644 index 000000000..7ac97c06b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TimeChangeDetails.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TimeChangeDetails.h" + +static asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeMark, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeMark, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeMark, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeMark, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeMark, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "nextTime" + }, +}; +static int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { + sizeof(struct TimeChangeDetails), + offsetof(struct TimeChangeDetails, _asn_ctx), + asn_MAP_TimeChangeDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { + "TimeChangeDetails", + "TimeChangeDetails", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TimeChangeDetails_tags_1, + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_TimeChangeDetails_1, + 6, /* Elements count */ + &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TimeConfidence.c b/src/tmx/Asn_J2735/src/r41/TimeConfidence.c new file mode 100644 index 000000000..8a836d098 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TimeConfidence.c @@ -0,0 +1,223 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TimeConfidence.h" + +int +TimeConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +TimeConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +TimeConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TimeConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TimeConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TimeConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TimeConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TimeConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TimeConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TimeConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TimeConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 12, "time-100-000" }, + { 2, 12, "time-050-000" }, + { 3, 12, "time-020-000" }, + { 4, 12, "time-010-000" }, + { 5, 12, "time-002-000" }, + { 6, 12, "time-001-000" }, + { 7, 12, "time-000-500" }, + { 8, 12, "time-000-200" }, + { 9, 12, "time-000-100" }, + { 10, 12, "time-000-050" }, + { 11, 12, "time-000-020" }, + { 12, 12, "time-000-010" }, + { 13, 12, "time-000-005" }, + { 14, 12, "time-000-002" }, + { 15, 12, "time-000-001" }, + { 16, 14, "time-000-000-5" }, + { 17, 14, "time-000-000-2" }, + { 18, 14, "time-000-000-1" }, + { 19, 15, "time-000-000-05" }, + { 20, 15, "time-000-000-02" }, + { 21, 15, "time-000-000-01" }, + { 22, 16, "time-000-000-005" }, + { 23, 16, "time-000-000-002" }, + { 24, 16, "time-000-000-001" }, + { 25, 18, "time-000-000-000-5" }, + { 26, 18, "time-000-000-000-2" }, + { 27, 18, "time-000-000-000-1" }, + { 28, 19, "time-000-000-000-05" }, + { 29, 19, "time-000-000-000-02" }, + { 30, 19, "time-000-000-000-01" }, + { 31, 20, "time-000-000-000-005" }, + { 32, 20, "time-000-000-000-002" }, + { 33, 20, "time-000-000-000-001" }, + { 34, 22, "time-000-000-000-000-5" }, + { 35, 22, "time-000-000-000-000-2" }, + { 36, 22, "time-000-000-000-000-1" }, + { 37, 23, "time-000-000-000-000-05" }, + { 38, 23, "time-000-000-000-000-02" }, + { 39, 23, "time-000-000-000-000-01" } +}; +static unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { + 39, /* time-000-000-000-000-01(39) */ + 38, /* time-000-000-000-000-02(38) */ + 37, /* time-000-000-000-000-05(37) */ + 36, /* time-000-000-000-000-1(36) */ + 35, /* time-000-000-000-000-2(35) */ + 34, /* time-000-000-000-000-5(34) */ + 33, /* time-000-000-000-001(33) */ + 32, /* time-000-000-000-002(32) */ + 31, /* time-000-000-000-005(31) */ + 30, /* time-000-000-000-01(30) */ + 29, /* time-000-000-000-02(29) */ + 28, /* time-000-000-000-05(28) */ + 27, /* time-000-000-000-1(27) */ + 26, /* time-000-000-000-2(26) */ + 25, /* time-000-000-000-5(25) */ + 24, /* time-000-000-001(24) */ + 23, /* time-000-000-002(23) */ + 22, /* time-000-000-005(22) */ + 21, /* time-000-000-01(21) */ + 20, /* time-000-000-02(20) */ + 19, /* time-000-000-05(19) */ + 18, /* time-000-000-1(18) */ + 17, /* time-000-000-2(17) */ + 16, /* time-000-000-5(16) */ + 15, /* time-000-001(15) */ + 14, /* time-000-002(14) */ + 13, /* time-000-005(13) */ + 12, /* time-000-010(12) */ + 11, /* time-000-020(11) */ + 10, /* time-000-050(10) */ + 9, /* time-000-100(9) */ + 8, /* time-000-200(8) */ + 7, /* time-000-500(7) */ + 6, /* time-001-000(6) */ + 5, /* time-002-000(5) */ + 4, /* time-010-000(4) */ + 3, /* time-020-000(3) */ + 2, /* time-050-000(2) */ + 1, /* time-100-000(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { + asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 40, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { + "TimeConfidence", + "TimeConfidence", + TimeConfidence_free, + TimeConfidence_print, + TimeConfidence_constraint, + TimeConfidence_decode_ber, + TimeConfidence_encode_der, + TimeConfidence_decode_xer, + TimeConfidence_encode_xer, + TimeConfidence_decode_uper, + TimeConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TimeConfidence_tags_1, + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_TimeConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c new file mode 100644 index 000000000..403c07347 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TimeIntervalConfidence.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TimeIntervalConfidence.h" + +int +TimeIntervalConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TimeIntervalConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TimeIntervalConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TimeIntervalConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TimeIntervalConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TimeIntervalConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TimeIntervalConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TimeIntervalConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TimeIntervalConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TimeIntervalConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TimeIntervalConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { + "TimeIntervalConfidence", + "TimeIntervalConfidence", + TimeIntervalConfidence_free, + TimeIntervalConfidence_print, + TimeIntervalConfidence_constraint, + TimeIntervalConfidence_decode_ber, + TimeIntervalConfidence_encode_der, + TimeIntervalConfidence_decode_xer, + TimeIntervalConfidence_encode_xer, + TimeIntervalConfidence_decode_uper, + TimeIntervalConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TimeIntervalConfidence_tags_1, + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_TimeIntervalConfidence_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TimeMark.c b/src/tmx/Asn_J2735/src/r41/TimeMark.c new file mode 100644 index 000000000..99ad19a4e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TimeMark.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TimeMark.h" + +int +TimeMark_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 36002)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TimeMark_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TimeMark_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TimeMark_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TimeMark_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TimeMark_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TimeMark_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TimeMark_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TimeMark_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TimeMark_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TimeMark_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TimeMark_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TimeMark_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 36002 } /* (0..36002) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeMark = { + "TimeMark", + "TimeMark", + TimeMark_free, + TimeMark_print, + TimeMark_constraint, + TimeMark_decode_ber, + TimeMark_encode_der, + TimeMark_decode_xer, + TimeMark_encode_xer, + TimeMark_decode_uper, + TimeMark_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TimeMark_tags_1, + sizeof(asn_DEF_TimeMark_tags_1) + /sizeof(asn_DEF_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeMark_tags_1) + /sizeof(asn_DEF_TimeMark_tags_1[0]), /* 1 */ + &asn_PER_type_TimeMark_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TimeRemaining.c b/src/tmx/Asn_J2735/src/r41/TimeRemaining.c new file mode 100644 index 000000000..c9e0a2ff9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TimeRemaining.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TimeRemaining.h" + +int +TimeRemaining_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 9001)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TimeRemaining_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TimeRemaining_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TimeRemaining_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TimeRemaining_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TimeRemaining_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TimeRemaining_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TimeRemaining_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TimeRemaining_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TimeRemaining_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TimeRemaining_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { + "TimeRemaining", + "TimeRemaining", + TimeRemaining_free, + TimeRemaining_print, + TimeRemaining_constraint, + TimeRemaining_decode_ber, + TimeRemaining_encode_der, + TimeRemaining_decode_xer, + TimeRemaining_encode_xer, + TimeRemaining_decode_uper, + TimeRemaining_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TimeRemaining_tags_1, + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + asn_DEF_TimeRemaining_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + &asn_PER_type_TimeRemaining_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c b/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c new file mode 100644 index 000000000..e5ad540e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TireLeakageRate.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TireLeakageRate.h" + +int +TireLeakageRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TireLeakageRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TireLeakageRate_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TireLeakageRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TireLeakageRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TireLeakageRate_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TireLeakageRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TireLeakageRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TireLeakageRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TireLeakageRate_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TireLeakageRate_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { + "TireLeakageRate", + "TireLeakageRate", + TireLeakageRate_free, + TireLeakageRate_print, + TireLeakageRate_constraint, + TireLeakageRate_decode_ber, + TireLeakageRate_encode_der, + TireLeakageRate_decode_xer, + TireLeakageRate_encode_xer, + TireLeakageRate_decode_uper, + TireLeakageRate_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TireLeakageRate_tags_1, + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + asn_DEF_TireLeakageRate_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + &asn_PER_type_TireLeakageRate_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TireLocation.c b/src/tmx/Asn_J2735/src/r41/TireLocation.c new file mode 100644 index 000000000..828a728b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TireLocation.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TireLocation.h" + +int +TireLocation_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TireLocation_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TireLocation_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TireLocation_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TireLocation_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TireLocation_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TireLocation_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TireLocation_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TireLocation_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TireLocation_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TireLocation_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TireLocation_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TireLocation_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLocation = { + "TireLocation", + "TireLocation", + TireLocation_free, + TireLocation_print, + TireLocation_constraint, + TireLocation_decode_ber, + TireLocation_encode_der, + TireLocation_decode_xer, + TireLocation_encode_xer, + TireLocation_decode_uper, + TireLocation_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TireLocation_tags_1, + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + asn_DEF_TireLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + &asn_PER_type_TireLocation_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TirePressure.c b/src/tmx/Asn_J2735/src/r41/TirePressure.c new file mode 100644 index 000000000..17082f3db --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TirePressure.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TirePressure.h" + +int +TirePressure_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TirePressure_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TirePressure_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TirePressure_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TirePressure_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TirePressure_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TirePressure_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TirePressure_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TirePressure_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TirePressure_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TirePressure_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TirePressure_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TirePressure_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressure = { + "TirePressure", + "TirePressure", + TirePressure_free, + TirePressure_print, + TirePressure_constraint, + TirePressure_decode_ber, + TirePressure_encode_der, + TirePressure_decode_xer, + TirePressure_encode_xer, + TirePressure_decode_uper, + TirePressure_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TirePressure_tags_1, + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + asn_DEF_TirePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + &asn_PER_type_TirePressure_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c new file mode 100644 index 000000000..9f6739ab9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TirePressureThresholdDetection.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TirePressureThresholdDetection.h" + +int +TirePressureThresholdDetection_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +TirePressureThresholdDetection_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +TirePressureThresholdDetection_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TirePressureThresholdDetection_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TirePressureThresholdDetection_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TirePressureThresholdDetection_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TirePressureThresholdDetection_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TirePressureThresholdDetection_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TirePressureThresholdDetection_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TirePressureThresholdDetection_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TirePressureThresholdDetection_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { + { 0, 6, "noData" }, + { 1, 12, "overPressure" }, + { 2, 17, "noWarningPressure" }, + { 3, 13, "underPressure" }, + { 4, 20, "extremeUnderPressure" }, + { 5, 9, "undefined" }, + { 6, 14, "errorIndicator" }, + { 7, 12, "notAvailable" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { + 6, /* errorIndicator(6) */ + 4, /* extremeUnderPressure(4) */ + 0, /* noData(0) */ + 2, /* noWarningPressure(2) */ + 7, /* notAvailable(7) */ + 1, /* overPressure(1) */ + 5, /* undefined(5) */ + 3 /* underPressure(3) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { + asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { + "TirePressureThresholdDetection", + "TirePressureThresholdDetection", + TirePressureThresholdDetection_free, + TirePressureThresholdDetection_print, + TirePressureThresholdDetection_constraint, + TirePressureThresholdDetection_decode_ber, + TirePressureThresholdDetection_encode_der, + TirePressureThresholdDetection_decode_xer, + TirePressureThresholdDetection_encode_xer, + TirePressureThresholdDetection_decode_uper, + TirePressureThresholdDetection_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TirePressureThresholdDetection_tags_1, + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + &asn_PER_type_TirePressureThresholdDetection_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TireTemp.c b/src/tmx/Asn_J2735/src/r41/TireTemp.c new file mode 100644 index 000000000..f11b2f019 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TireTemp.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TireTemp.h" + +int +TireTemp_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TireTemp_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TireTemp_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TireTemp_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TireTemp_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TireTemp_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TireTemp_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TireTemp_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TireTemp_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TireTemp_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TireTemp_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TireTemp_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TireTemp_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireTemp = { + "TireTemp", + "TireTemp", + TireTemp_free, + TireTemp_print, + TireTemp_constraint, + TireTemp_decode_ber, + TireTemp_encode_der, + TireTemp_decode_xer, + TireTemp_encode_xer, + TireTemp_decode_uper, + TireTemp_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TireTemp_tags_1, + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + asn_DEF_TireTemp_tags_1, /* Same as above */ + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + &asn_PER_type_TireTemp_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TractionControlState.c b/src/tmx/Asn_J2735/src/r41/TractionControlState.c new file mode 100644 index 000000000..079c663da --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TractionControlState.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TractionControlState.h" + +int +TractionControlState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +TractionControlState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +TractionControlState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TractionControlState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TractionControlState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TractionControlState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TractionControlState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TractionControlState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TractionControlState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TractionControlState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TractionControlState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TractionControlState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TractionControlState_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_TractionControlState_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static unsigned int asn_MAP_TractionControlState_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_TractionControlState_specs_1 = { + asn_MAP_TractionControlState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TractionControlState_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_TractionControlState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TractionControlState = { + "TractionControlState", + "TractionControlState", + TractionControlState_free, + TractionControlState_print, + TractionControlState_constraint, + TractionControlState_decode_ber, + TractionControlState_encode_der, + TractionControlState_decode_xer, + TractionControlState_encode_xer, + TractionControlState_decode_uper, + TractionControlState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TractionControlState_tags_1, + sizeof(asn_DEF_TractionControlState_tags_1) + /sizeof(asn_DEF_TractionControlState_tags_1[0]), /* 1 */ + asn_DEF_TractionControlState_tags_1, /* Same as above */ + sizeof(asn_DEF_TractionControlState_tags_1) + /sizeof(asn_DEF_TractionControlState_tags_1[0]), /* 1 */ + &asn_PER_type_TractionControlState_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TractionControlState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TrailerWeight.c b/src/tmx/Asn_J2735/src/r41/TrailerWeight.c new file mode 100644 index 000000000..858dc68b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TrailerWeight.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrailerWeight.h" + +int +TrailerWeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TrailerWeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TrailerWeight_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TrailerWeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TrailerWeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TrailerWeight_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TrailerWeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TrailerWeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TrailerWeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TrailerWeight_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TrailerWeight_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { + "TrailerWeight", + "TrailerWeight", + TrailerWeight_free, + TrailerWeight_print, + TrailerWeight_constraint, + TrailerWeight_decode_ber, + TrailerWeight_encode_der, + TrailerWeight_decode_xer, + TrailerWeight_encode_xer, + TrailerWeight_decode_uper, + TrailerWeight_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TrailerWeight_tags_1, + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + asn_DEF_TrailerWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + &asn_PER_type_TrailerWeight_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TransitStatus.c b/src/tmx/Asn_J2735/src/r41/TransitStatus.c new file mode 100644 index 000000000..9633b4ecb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TransitStatus.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TransitStatus.h" + +int +TransitStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +TransitStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +TransitStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TransitStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TransitStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TransitStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TransitStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TransitStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TransitStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TransitStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TransitStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TransitStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitStatus = { + "TransitStatus", + "TransitStatus", + TransitStatus_free, + TransitStatus_print, + TransitStatus_constraint, + TransitStatus_decode_ber, + TransitStatus_encode_der, + TransitStatus_decode_xer, + TransitStatus_encode_xer, + TransitStatus_decode_uper, + TransitStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TransitStatus_tags_1, + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + &asn_PER_type_TransitStatus_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c new file mode 100644 index 000000000..83a6c2d92 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TransmissionAndSpeed.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TransmissionAndSpeed.h" + +int +TransmissionAndSpeed_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +TransmissionAndSpeed_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +TransmissionAndSpeed_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TransmissionAndSpeed_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TransmissionAndSpeed_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TransmissionAndSpeed_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TransmissionAndSpeed_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TransmissionAndSpeed_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TransmissionAndSpeed_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TransmissionAndSpeed_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TransmissionAndSpeed_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TransmissionAndSpeed_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { + "TransmissionAndSpeed", + "TransmissionAndSpeed", + TransmissionAndSpeed_free, + TransmissionAndSpeed_print, + TransmissionAndSpeed_constraint, + TransmissionAndSpeed_decode_ber, + TransmissionAndSpeed_encode_der, + TransmissionAndSpeed_decode_xer, + TransmissionAndSpeed_encode_xer, + TransmissionAndSpeed_decode_uper, + TransmissionAndSpeed_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TransmissionAndSpeed_tags_1, + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + &asn_PER_type_TransmissionAndSpeed_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TransmissionState.c b/src/tmx/Asn_J2735/src/r41/TransmissionState.c new file mode 100644 index 000000000..86716cef8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TransmissionState.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TransmissionState.h" + +int +TransmissionState_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +TransmissionState_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +TransmissionState_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TransmissionState_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TransmissionState_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TransmissionState_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TransmissionState_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TransmissionState_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TransmissionState_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TransmissionState_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TransmissionState_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TransmissionState_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { + { 0, 7, "neutral" }, + { 1, 4, "park" }, + { 2, 12, "forwardGears" }, + { 3, 12, "reverseGears" }, + { 4, 9, "reserved1" }, + { 5, 9, "reserved2" }, + { 6, 9, "reserved3" }, + { 7, 11, "unavailable" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_TransmissionState_enum2value_1[] = { + 2, /* forwardGears(2) */ + 0, /* neutral(0) */ + 1, /* park(1) */ + 4, /* reserved1(4) */ + 5, /* reserved2(5) */ + 6, /* reserved3(6) */ + 3, /* reverseGears(3) */ + 7 /* unavailable(7) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { + asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionState = { + "TransmissionState", + "TransmissionState", + TransmissionState_free, + TransmissionState_print, + TransmissionState_constraint, + TransmissionState_decode_ber, + TransmissionState_encode_der, + TransmissionState_decode_xer, + TransmissionState_encode_xer, + TransmissionState_decode_uper, + TransmissionState_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TransmissionState_tags_1, + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + asn_DEF_TransmissionState_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + &asn_PER_type_TransmissionState_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransmissionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c b/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c new file mode 100644 index 000000000..bcb2131a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TravelerInfoType.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TravelerInfoType.h" + +int +TravelerInfoType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +TravelerInfoType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +TravelerInfoType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TravelerInfoType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TravelerInfoType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TravelerInfoType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TravelerInfoType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TravelerInfoType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TravelerInfoType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TravelerInfoType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TravelerInfoType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "advisory" }, + { 2, 11, "roadSignage" }, + { 3, 17, "commercialSignage" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { + 1, /* advisory(1) */ + 3, /* commercialSignage(3) */ + 2, /* roadSignage(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { + asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { + "TravelerInfoType", + "TravelerInfoType", + TravelerInfoType_free, + TravelerInfoType_print, + TravelerInfoType_constraint, + TravelerInfoType_decode_ber, + TravelerInfoType_encode_der, + TravelerInfoType_decode_xer, + TravelerInfoType_encode_xer, + TravelerInfoType_decode_uper, + TravelerInfoType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TravelerInfoType_tags_1, + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + asn_DEF_TravelerInfoType_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + &asn_PER_type_TravelerInfoType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TravelerInformation.c b/src/tmx/Asn_J2735/src/r41/TravelerInformation.c new file mode 100644 index 000000000..bc6aaff1e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TravelerInformation.c @@ -0,0 +1,596 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TravelerInformation.h" + +static int +memb_regions_constraint_7(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 16)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_dataFrames_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 8)) { + /* Perform validation of the inner elements */ + return td->check_constraints(td, sptr, ctfailcb, app_key); + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_msgId_constr_9 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_regions_constr_19 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_content_constr_21 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_regions_constr_19 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_dataFrames_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_dataFrames_constr_6 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_msgId_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct msgId, choice.furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "furtherInfoID" + }, + { ATF_NOFLAGS, 0, offsetof(struct msgId, choice.roadSignID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSignID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "roadSignID" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_9[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ +}; +static asn_CHOICE_specifics_t asn_SPC_msgId_specs_9 = { + sizeof(struct msgId), + offsetof(struct msgId, _asn_ctx), + offsetof(struct msgId, present), + sizeof(((struct msgId *)0)->present), + asn_MAP_msgId_tag2el_9, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_msgId_9 = { + "msgId", + "msgId", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_msgId_constr_9, + asn_MBR_msgId_9, + 2, /* Elements count */ + &asn_SPC_msgId_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regions_19[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ValidRegion, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_regions_tags_19[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regions_specs_19 = { + sizeof(struct regions), + offsetof(struct regions, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regions_19 = { + "regions", + "regions", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_regions_tags_19, + sizeof(asn_DEF_regions_tags_19) + /sizeof(asn_DEF_regions_tags_19[0]) - 1, /* 1 */ + asn_DEF_regions_tags_19, /* Same as above */ + sizeof(asn_DEF_regions_tags_19) + /sizeof(asn_DEF_regions_tags_19[0]), /* 2 */ + &asn_PER_type_regions_constr_19, + asn_MBR_regions_19, + 1, /* Single element */ + &asn_SPC_regions_specs_19 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_content_21[] = { + { ATF_NOFLAGS, 0, offsetof(struct content, choice.advisory), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodesAndText, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "advisory" + }, + { ATF_NOFLAGS, 0, offsetof(struct content, choice.workZone), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WorkZone, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "workZone" + }, + { ATF_NOFLAGS, 0, offsetof(struct content, choice.genericSign), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericSignage, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "genericSign" + }, + { ATF_NOFLAGS, 0, offsetof(struct content, choice.speedLimit), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimit, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedLimit" + }, + { ATF_NOFLAGS, 0, offsetof(struct content, choice.exitService), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExitService, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "exitService" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_content_tag2el_21[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ +}; +static asn_CHOICE_specifics_t asn_SPC_content_specs_21 = { + sizeof(struct content), + offsetof(struct content, _asn_ctx), + offsetof(struct content, present), + sizeof(((struct content *)0)->present), + asn_MAP_content_tag2el_21, + 5, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_content_21 = { + "content", + "content", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_content_constr_21, + asn_MBR_content_21, + 5, /* Elements count */ + &asn_SPC_content_specs_21 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, frameType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerInfoType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "frameType" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, msgId), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_msgId_9, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgId" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, startYear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "startYear" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, startTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, duratonTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesDuration, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "duratonTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, priority), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignPrority, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "priority" + }, + { ATF_POINTER, 3, offsetof(struct TravelerInformation__dataFrames__Member, commonAnchor), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "commonAnchor" + }, + { ATF_POINTER, 2, offsetof(struct TravelerInformation__dataFrames__Member, commonLaneWidth), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "commonLaneWidth" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, commonDirectionality), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "commonDirectionality" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, regions), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regions_19, + memb_regions_constraint_7, + &asn_PER_memb_regions_constr_19, + 0, + "regions" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation__dataFrames__Member, content), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_content_21, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "content" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation__dataFrames__Member, url), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Short, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "url" + }, +}; +static int asn_MAP_Member_oms_7[] = { 2, 6, 7, 8, 11 }; +static ber_tlv_tag_t asn_DEF_Member_tags_7[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frameType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgId */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* startYear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* duratonTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* commonAnchor */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* commonLaneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* commonDirectionality */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* regions */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* content */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 } /* url */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_7 = { + sizeof(struct TravelerInformation__dataFrames__Member), + offsetof(struct TravelerInformation__dataFrames__Member, _asn_ctx), + asn_MAP_Member_tag2el_7, + 12, /* Count of tags in the map */ + asn_MAP_Member_oms_7, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_7 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_7, + sizeof(asn_DEF_Member_tags_7) + /sizeof(asn_DEF_Member_tags_7[0]), /* 1 */ + asn_DEF_Member_tags_7, /* Same as above */ + sizeof(asn_DEF_Member_tags_7) + /sizeof(asn_DEF_Member_tags_7[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_7, + 12, /* Elements count */ + &asn_SPC_Member_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_dataFrames_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_7, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_dataFrames_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_dataFrames_specs_6 = { + sizeof(struct TravelerInformation__dataFrames), + offsetof(struct TravelerInformation__dataFrames, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_dataFrames_6 = { + "dataFrames", + "dataFrames", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_dataFrames_tags_6, + sizeof(asn_DEF_dataFrames_tags_6) + /sizeof(asn_DEF_dataFrames_tags_6[0]) - 1, /* 1 */ + asn_DEF_dataFrames_tags_6, /* Same as above */ + sizeof(asn_DEF_dataFrames_tags_6) + /sizeof(asn_DEF_dataFrames_tags_6[0]), /* 2 */ + &asn_PER_type_dataFrames_constr_6, + asn_MBR_dataFrames_6, + 1, /* Single element */ + &asn_SPC_dataFrames_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 3, offsetof(struct TravelerInformation, packetID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UniqueMSGID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "packetID" + }, + { ATF_POINTER, 2, offsetof(struct TravelerInformation, urlB), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Base, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "urlB" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, dataFrameCount), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Count, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dataFrameCount" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_dataFrames_6, + memb_dataFrames_constraint_1, + &asn_PER_memb_dataFrames_constr_6, + 0, + "dataFrames" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, crc), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3 }; +static ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* packetID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* urlB */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dataFrameCount */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { + sizeof(struct TravelerInformation), + offsetof(struct TravelerInformation, _asn_ctx), + asn_MAP_TravelerInformation_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TravelerInformation_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { + "TravelerInformation", + "TravelerInformation", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TravelerInformation_tags_1, + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + asn_DEF_TravelerInformation_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_TravelerInformation_1, + 6, /* Elements count */ + &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/TxTime.c b/src/tmx/Asn_J2735/src/r41/TxTime.c new file mode 100644 index 000000000..7883fcd1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/TxTime.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TxTime.h" + +int +TxTime_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 20)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +TxTime_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +TxTime_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + TxTime_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +TxTime_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +TxTime_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +TxTime_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +TxTime_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +TxTime_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +TxTime_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +TxTime_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + TxTime_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_TxTime_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (1..20) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_TxTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TxTime = { + "TxTime", + "TxTime", + TxTime_free, + TxTime_print, + TxTime_constraint, + TxTime_decode_ber, + TxTime_encode_der, + TxTime_decode_xer, + TxTime_encode_xer, + TxTime_decode_uper, + TxTime_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_TxTime_tags_1, + sizeof(asn_DEF_TxTime_tags_1) + /sizeof(asn_DEF_TxTime_tags_1[0]), /* 1 */ + asn_DEF_TxTime_tags_1, /* Same as above */ + sizeof(asn_DEF_TxTime_tags_1) + /sizeof(asn_DEF_TxTime_tags_1[0]), /* 1 */ + &asn_PER_type_TxTime_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/UPER-Blob.c b/src/tmx/Asn_J2735/src/r41/UPER-Blob.c new file mode 100644 index 000000000..5d6b176b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/UPER-Blob.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "UPER-Blob.h" + +int +UPER_Blob_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10 && size <= 2000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +UPER_Blob_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +UPER_Blob_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +UPER_Blob_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +UPER_Blob_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +UPER_Blob_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +UPER_Blob_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +UPER_Blob_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +UPER_Blob_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +UPER_Blob_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + UPER_Blob_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_UPER_Blob_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_UPER_Blob_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UPER_Blob = { + "UPER-Blob", + "UPER-Blob", + UPER_Blob_free, + UPER_Blob_print, + UPER_Blob_constraint, + UPER_Blob_decode_ber, + UPER_Blob_encode_der, + UPER_Blob_decode_xer, + UPER_Blob_encode_xer, + UPER_Blob_decode_uper, + UPER_Blob_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_UPER_Blob_tags_1, + sizeof(asn_DEF_UPER_Blob_tags_1) + /sizeof(asn_DEF_UPER_Blob_tags_1[0]), /* 1 */ + asn_DEF_UPER_Blob_tags_1, /* Same as above */ + sizeof(asn_DEF_UPER_Blob_tags_1) + /sizeof(asn_DEF_UPER_Blob_tags_1[0]), /* 1 */ + &asn_PER_type_UPER_Blob_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/UPERframe.c b/src/tmx/Asn_J2735/src/r41/UPERframe.c new file mode 100644 index 000000000..2f321228c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/UPERframe.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "UPERframe.h" + +static asn_TYPE_member_t asn_MBR_UPERframe_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UPERframe, msgID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgID" + }, + { ATF_POINTER, 2, offsetof(struct UPERframe, msgSubID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgSubID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgSubID" + }, + { ATF_POINTER, 1, offsetof(struct UPERframe, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct UPERframe, contentID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "contentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct UPERframe, msgBlob), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UPER_Blob, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "msgBlob" + }, + { ATF_POINTER, 1, offsetof(struct UPERframe, crc), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "crc" + }, +}; +static int asn_MAP_UPERframe_oms_1[] = { 1, 2, 5 }; +static ber_tlv_tag_t asn_DEF_UPERframe_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_UPERframe_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgSubID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* contentID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* msgBlob */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* crc */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_UPERframe_specs_1 = { + sizeof(struct UPERframe), + offsetof(struct UPERframe, _asn_ctx), + asn_MAP_UPERframe_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_UPERframe_oms_1, /* Optional members */ + 2, 1, /* Root/Additions */ + 4, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_UPERframe = { + "UPERframe", + "UPERframe", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_UPERframe_tags_1, + sizeof(asn_DEF_UPERframe_tags_1) + /sizeof(asn_DEF_UPERframe_tags_1[0]), /* 1 */ + asn_DEF_UPERframe_tags_1, /* Same as above */ + sizeof(asn_DEF_UPERframe_tags_1) + /sizeof(asn_DEF_UPERframe_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_UPERframe_1, + 6, /* Elements count */ + &asn_SPC_UPERframe_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/URL-Base.c b/src/tmx/Asn_J2735/src/r41/URL-Base.c new file mode 100644 index 000000000..29ef6152b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/URL-Base.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "URL-Base.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Base_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 45) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +URL_Base_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +URL_Base_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + URL_Base_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +URL_Base_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +URL_Base_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +URL_Base_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +URL_Base_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +URL_Base_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +URL_Base_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +URL_Base_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + URL_Base_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_URL_Base_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, + 0, 0 /* No PER character map necessary */ +}; +static ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Base = { + "URL-Base", + "URL-Base", + URL_Base_free, + URL_Base_print, + URL_Base_constraint, + URL_Base_decode_ber, + URL_Base_encode_der, + URL_Base_decode_xer, + URL_Base_encode_xer, + URL_Base_decode_uper, + URL_Base_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_URL_Base_tags_1, + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + asn_DEF_URL_Base_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + &asn_PER_type_URL_Base_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/URL-Link.c b/src/tmx/Asn_J2735/src/r41/URL-Link.c new file mode 100644 index 000000000..46d813569 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/URL-Link.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "URL-Link.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Link_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +URL_Link_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +URL_Link_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + URL_Link_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +URL_Link_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +URL_Link_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +URL_Link_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +URL_Link_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +URL_Link_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +URL_Link_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +URL_Link_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + URL_Link_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Link = { + "URL-Link", + "URL-Link", + URL_Link_free, + URL_Link_print, + URL_Link_constraint, + URL_Link_decode_ber, + URL_Link_encode_der, + URL_Link_decode_xer, + URL_Link_encode_xer, + URL_Link_decode_uper, + URL_Link_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_URL_Link_tags_1, + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + asn_DEF_URL_Link_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + &asn_PER_type_URL_Link_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/URL-Short.c b/src/tmx/Asn_J2735/src/r41/URL-Short.c new file mode 100644 index 000000000..448207faa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/URL-Short.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "URL-Short.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Short_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 15) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +URL_Short_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +URL_Short_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + URL_Short_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +URL_Short_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +URL_Short_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +URL_Short_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +URL_Short_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +URL_Short_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +URL_Short_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +URL_Short_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + URL_Short_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_URL_Short_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, + 0, 0 /* No PER character map necessary */ +}; +static ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Short = { + "URL-Short", + "URL-Short", + URL_Short_free, + URL_Short_print, + URL_Short_constraint, + URL_Short_decode_ber, + URL_Short_encode_der, + URL_Short_decode_xer, + URL_Short_encode_xer, + URL_Short_decode_uper, + URL_Short_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_URL_Short_tags_1, + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + asn_DEF_URL_Short_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + &asn_PER_type_URL_Short_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/UUIDType.c b/src/tmx/Asn_J2735/src/r41/UUIDType.c new file mode 100644 index 000000000..53f233ca7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/UUIDType.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "UUIDType.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +UUIDType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 128) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +UUIDType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +UUIDType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + UUIDType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +UUIDType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +UUIDType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +UUIDType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +UUIDType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +UUIDType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +UUIDType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +UUIDType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + UUIDType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_UUIDType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 7, 7, 1, 128 } /* (SIZE(1..128)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_UUIDType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UUIDType = { + "UUIDType", + "UUIDType", + UUIDType_free, + UUIDType_print, + UUIDType_constraint, + UUIDType_decode_ber, + UUIDType_encode_der, + UUIDType_decode_xer, + UUIDType_encode_xer, + UUIDType_decode_uper, + UUIDType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_UUIDType_tags_1, + sizeof(asn_DEF_UUIDType_tags_1) + /sizeof(asn_DEF_UUIDType_tags_1[0]), /* 1 */ + asn_DEF_UUIDType_tags_1, /* Same as above */ + sizeof(asn_DEF_UUIDType_tags_1) + /sizeof(asn_DEF_UUIDType_tags_1[0]), /* 1 */ + &asn_PER_type_UUIDType_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c b/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c new file mode 100644 index 000000000..87f2f38e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/UniqueMSGID.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "UniqueMSGID.h" + +int +UniqueMSGID_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +UniqueMSGID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +UniqueMSGID_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +UniqueMSGID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +UniqueMSGID_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +UniqueMSGID_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +UniqueMSGID_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +UniqueMSGID_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +UniqueMSGID_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +UniqueMSGID_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + UniqueMSGID_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { + "UniqueMSGID", + "UniqueMSGID", + UniqueMSGID_free, + UniqueMSGID_print, + UniqueMSGID_constraint, + UniqueMSGID_decode_ber, + UniqueMSGID_encode_der, + UniqueMSGID_decode_xer, + UniqueMSGID_encode_xer, + UniqueMSGID_decode_uper, + UniqueMSGID_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_UniqueMSGID_tags_1, + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + asn_DEF_UniqueMSGID_tags_1, /* Same as above */ + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + &asn_PER_type_UniqueMSGID_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c new file mode 100644 index 000000000..10f406dd7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/UserSizeAndBehaviour.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fcompound-names` + */ + +#include "UserSizeAndBehaviour.h" + +int +UserSizeAndBehaviour_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +UserSizeAndBehaviour_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +UserSizeAndBehaviour_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +UserSizeAndBehaviour_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +UserSizeAndBehaviour_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +UserSizeAndBehaviour_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +UserSizeAndBehaviour_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +UserSizeAndBehaviour_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +UserSizeAndBehaviour_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +UserSizeAndBehaviour_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + UserSizeAndBehaviour_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { + "UserSizeAndBehaviour", + "UserSizeAndBehaviour", + UserSizeAndBehaviour_free, + UserSizeAndBehaviour_print, + UserSizeAndBehaviour_constraint, + UserSizeAndBehaviour_decode_ber, + UserSizeAndBehaviour_encode_der, + UserSizeAndBehaviour_decode_xer, + UserSizeAndBehaviour_encode_xer, + UserSizeAndBehaviour_decode_uper, + UserSizeAndBehaviour_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_UserSizeAndBehaviour_tags_1, + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + &asn_PER_type_UserSizeAndBehaviour_constr_1, + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VINstring.c b/src/tmx/Asn_J2735/src/r41/VINstring.c new file mode 100644 index 000000000..ee5530431 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VINstring.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VINstring.h" + +int +VINstring_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 17)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +VINstring_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +VINstring_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VINstring_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VINstring_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VINstring_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VINstring_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VINstring_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VINstring_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VINstring_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VINstring_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VINstring_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VINstring_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VINstring = { + "VINstring", + "VINstring", + VINstring_free, + VINstring_print, + VINstring_constraint, + VINstring_decode_ber, + VINstring_encode_der, + VINstring_decode_xer, + VINstring_encode_xer, + VINstring_decode_uper, + VINstring_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VINstring_tags_1, + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + asn_DEF_VINstring_tags_1, /* Same as above */ + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + &asn_PER_type_VINstring_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ValidRegion.c b/src/tmx/Asn_J2735/src/r41/ValidRegion.c new file mode 100644 index 000000000..df42c5758 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ValidRegion.c @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ValidRegion.h" + +static asn_per_constraints_t asn_PER_type_area_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_area_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ShapePointSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "shapePointSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "circle" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionPointSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "regionPointSet" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ +}; +static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { + sizeof(struct ValidRegion__area), + offsetof(struct ValidRegion__area, _asn_ctx), + offsetof(struct ValidRegion__area, present), + sizeof(((struct ValidRegion__area *)0)->present), + asn_MAP_area_tag2el_4, + 3, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_area_4 = { + "area", + "area", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_area_constr_4, + asn_MBR_area_4, + 3, /* Elements count */ + &asn_SPC_area_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "direction" + }, + { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "extent" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_area_4, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "area" + }, +}; +static int asn_MAP_ValidRegion_oms_1[] = { 1 }; +static ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { + sizeof(struct ValidRegion), + offsetof(struct ValidRegion, _asn_ctx), + asn_MAP_ValidRegion_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ValidRegion_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_ValidRegion = { + "ValidRegion", + "ValidRegion", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ValidRegion_tags_1, + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + asn_DEF_ValidRegion_tags_1, /* Same as above */ + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_ValidRegion_1, + 3, /* Elements count */ + &asn_SPC_ValidRegion_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c b/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c new file mode 100644 index 000000000..93a8b6047 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleDescriptionType.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod_with_PSM.ASN" + * `asn1c -gen-PER -fno-include-deps` + */ + +#include "VehicleDescriptionType.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +VehicleDescriptionType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 80) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static void +VehicleDescriptionType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_IA5String.free_struct; + td->print_struct = asn_DEF_IA5String.print_struct; + td->check_constraints = asn_DEF_IA5String.check_constraints; + td->ber_decoder = asn_DEF_IA5String.ber_decoder; + td->der_encoder = asn_DEF_IA5String.der_encoder; + td->xer_decoder = asn_DEF_IA5String.xer_decoder; + td->xer_encoder = asn_DEF_IA5String.xer_encoder; + td->uper_decoder = asn_DEF_IA5String.uper_decoder; + td->uper_encoder = asn_DEF_IA5String.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_IA5String.per_constraints; + td->elements = asn_DEF_IA5String.elements; + td->elements_count = asn_DEF_IA5String.elements_count; + td->specifics = asn_DEF_IA5String.specifics; +} + +void +VehicleDescriptionType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleDescriptionType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleDescriptionType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleDescriptionType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleDescriptionType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleDescriptionType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleDescriptionType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleDescriptionType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleDescriptionType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleDescriptionType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 7, 7, 1, 80 } /* (SIZE(1..80)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleDescriptionType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleDescriptionType = { + "VehicleDescriptionType", + "VehicleDescriptionType", + VehicleDescriptionType_free, + VehicleDescriptionType_print, + VehicleDescriptionType_constraint, + VehicleDescriptionType_decode_ber, + VehicleDescriptionType_encode_der, + VehicleDescriptionType_decode_xer, + VehicleDescriptionType_encode_xer, + VehicleDescriptionType_decode_uper, + VehicleDescriptionType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleDescriptionType_tags_1, + sizeof(asn_DEF_VehicleDescriptionType_tags_1) + /sizeof(asn_DEF_VehicleDescriptionType_tags_1[0]), /* 1 */ + asn_DEF_VehicleDescriptionType_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleDescriptionType_tags_1) + /sizeof(asn_DEF_VehicleDescriptionType_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleDescriptionType_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c new file mode 100644 index 000000000..763221a61 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleGroupAffected.c @@ -0,0 +1,215 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleGroupAffected.h" + +int +VehicleGroupAffected_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +VehicleGroupAffected_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +VehicleGroupAffected_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleGroupAffected_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleGroupAffected_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleGroupAffected_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleGroupAffected_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleGroupAffected_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleGroupAffected_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleGroupAffected_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleGroupAffected_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { + { 9217, 12, "all-vehicles" }, + { 9218, 8, "bicycles" }, + { 9219, 11, "motorcycles" }, + { 9220, 4, "cars" }, + { 9221, 14, "light-vehicles" }, + { 9222, 23, "cars-and-light-vehicles" }, + { 9223, 18, "cars-with-trailers" }, + { 9224, 31, "cars-with-recreational-trailers" }, + { 9225, 22, "vehicles-with-trailers" }, + { 9226, 14, "heavy-vehicles" }, + { 9227, 6, "trucks" }, + { 9228, 5, "buses" }, + { 9229, 17, "articulated-buses" }, + { 9230, 12, "school-buses" }, + { 9231, 27, "vehicles-with-semi-trailers" }, + { 9232, 29, "vehicles-with-double-trailers" }, + { 9233, 21, "high-profile-vehicles" }, + { 9234, 13, "wide-vehicles" }, + { 9235, 13, "long-vehicles" }, + { 9236, 15, "hazardous-loads" }, + { 9237, 17, "exceptional-loads" }, + { 9238, 14, "abnormal-loads" }, + { 9239, 7, "convoys" }, + { 9240, 20, "maintenance-vehicles" }, + { 9241, 17, "delivery-vehicles" }, + { 9242, 42, "vehicles-with-even-numbered-license-plates" }, + { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, + { 9244, 29, "vehicles-with-parking-permits" }, + { 9245, 34, "vehicles-with-catalytic-converters" }, + { 9246, 37, "vehicles-without-catalytic-converters" }, + { 9247, 20, "gas-powered-vehicles" }, + { 9248, 23, "diesel-powered-vehicles" }, + { 9249, 12, "lPG-vehicles" }, + { 9250, 16, "military-convoys" }, + { 9251, 17, "military-vehicles" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { + 21, /* abnormal-loads(9238) */ + 0, /* all-vehicles(9217) */ + 12, /* articulated-buses(9229) */ + 1, /* bicycles(9218) */ + 11, /* buses(9228) */ + 3, /* cars(9220) */ + 5, /* cars-and-light-vehicles(9222) */ + 7, /* cars-with-recreational-trailers(9224) */ + 6, /* cars-with-trailers(9223) */ + 22, /* convoys(9239) */ + 24, /* delivery-vehicles(9241) */ + 31, /* diesel-powered-vehicles(9248) */ + 20, /* exceptional-loads(9237) */ + 30, /* gas-powered-vehicles(9247) */ + 19, /* hazardous-loads(9236) */ + 9, /* heavy-vehicles(9226) */ + 16, /* high-profile-vehicles(9233) */ + 32, /* lPG-vehicles(9249) */ + 4, /* light-vehicles(9221) */ + 18, /* long-vehicles(9235) */ + 23, /* maintenance-vehicles(9240) */ + 33, /* military-convoys(9250) */ + 34, /* military-vehicles(9251) */ + 2, /* motorcycles(9219) */ + 13, /* school-buses(9230) */ + 10, /* trucks(9227) */ + 28, /* vehicles-with-catalytic-converters(9245) */ + 15, /* vehicles-with-double-trailers(9232) */ + 25, /* vehicles-with-even-numbered-license-plates(9242) */ + 26, /* vehicles-with-odd-numbered-license-plates(9243) */ + 27, /* vehicles-with-parking-permits(9244) */ + 14, /* vehicles-with-semi-trailers(9231) */ + 8, /* vehicles-with-trailers(9225) */ + 29, /* vehicles-without-catalytic-converters(9246) */ + 17 /* wide-vehicles(9234) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { + asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 35, /* Number of elements in the maps */ + 36, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { + "VehicleGroupAffected", + "VehicleGroupAffected", + VehicleGroupAffected_free, + VehicleGroupAffected_print, + VehicleGroupAffected_constraint, + VehicleGroupAffected_decode_ber, + VehicleGroupAffected_encode_der, + VehicleGroupAffected_decode_xer, + VehicleGroupAffected_encode_xer, + VehicleGroupAffected_decode_uper, + VehicleGroupAffected_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleGroupAffected_tags_1, + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleGroupAffected_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleHeight.c b/src/tmx/Asn_J2735/src/r41/VehicleHeight.c new file mode 100644 index 000000000..0dc852371 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleHeight.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleHeight.h" + +int +VehicleHeight_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +VehicleHeight_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +VehicleHeight_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleHeight_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleHeight_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleHeight_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleHeight_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleHeight_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleHeight_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleHeight_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleHeight_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { + "VehicleHeight", + "VehicleHeight", + VehicleHeight_free, + VehicleHeight_print, + VehicleHeight_constraint, + VehicleHeight_decode_ber, + VehicleHeight_encode_der, + VehicleHeight_decode_xer, + VehicleHeight_encode_xer, + VehicleHeight_decode_uper, + VehicleHeight_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleHeight_tags_1, + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + asn_DEF_VehicleHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleHeight_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleIdent.c b/src/tmx/Asn_J2735/src/r41/VehicleIdent.c new file mode 100644 index 000000000..7d7dadf87 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleIdent.c @@ -0,0 +1,230 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleIdent.h" + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_ownerCode_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 32) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rEquip" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ +}; +static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { + sizeof(struct VehicleIdent__vehicleClass), + offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), + offsetof(struct VehicleIdent__vehicleClass, present), + sizeof(((struct VehicleIdent__vehicleClass *)0)->present), + asn_MAP_vehicleClass_tag2el_7, + 3, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { + "vehicleClass", + "vehicleClass", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_vehicleClass_constr_7, + asn_MBR_vehicleClass_7, + 3, /* Elements count */ + &asn_SPC_vehicleClass_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { + { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "name" + }, + { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VINstring, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vin" + }, + { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_ownerCode_constraint_1, + &asn_PER_memb_ownerCode_constr_4, + 0, + "ownerCode" + }, + { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "id" + }, + { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_vehicleClass_7, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleClass" + }, +}; +static int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { + sizeof(struct VehicleIdent), + offsetof(struct VehicleIdent, _asn_ctx), + asn_MAP_VehicleIdent_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_VehicleIdent_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 5, /* Start extensions */ + 7 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { + "VehicleIdent", + "VehicleIdent", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleIdent_tags_1, + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + asn_DEF_VehicleIdent_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleIdent_1, + 6, /* Elements count */ + &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleLength.c b/src/tmx/Asn_J2735/src/r41/VehicleLength.c new file mode 100644 index 000000000..8dbcbd9e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleLength.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleLength.h" + +int +VehicleLength_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 16383)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +VehicleLength_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +VehicleLength_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleLength_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleLength_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleLength_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleLength_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleLength_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleLength_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleLength_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleLength_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleLength_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 16383 } /* (0..16383) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleLength = { + "VehicleLength", + "VehicleLength", + VehicleLength_free, + VehicleLength_print, + VehicleLength_constraint, + VehicleLength_decode_ber, + VehicleLength_encode_der, + VehicleLength_decode_xer, + VehicleLength_encode_xer, + VehicleLength_decode_uper, + VehicleLength_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleLength_tags_1, + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + asn_DEF_VehicleLength_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleLength_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleMass.c b/src/tmx/Asn_J2735/src/r41/VehicleMass.c new file mode 100644 index 000000000..86c9e7f2d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleMass.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleMass.h" + +int +VehicleMass_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +VehicleMass_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +VehicleMass_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleMass_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleMass_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleMass_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleMass_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleMass_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleMass_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleMass_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleMass_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleMass_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 127 } /* (1..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleMass = { + "VehicleMass", + "VehicleMass", + VehicleMass_free, + VehicleMass_print, + VehicleMass_constraint, + VehicleMass_decode_ber, + VehicleMass_encode_der, + VehicleMass_decode_xer, + VehicleMass_encode_xer, + VehicleMass_decode_uper, + VehicleMass_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleMass_tags_1, + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + asn_DEF_VehicleMass_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleMass_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c b/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c new file mode 100644 index 000000000..911909628 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleRequestStatus.c @@ -0,0 +1,148 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleRequestStatus.h" + +int +VehicleRequestStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static void +VehicleRequestStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_OCTET_STRING.free_struct; + td->print_struct = asn_DEF_OCTET_STRING.print_struct; + td->check_constraints = asn_DEF_OCTET_STRING.check_constraints; + td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder; + td->der_encoder = asn_DEF_OCTET_STRING.der_encoder; + td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder; + td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder; + td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder; + td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_OCTET_STRING.per_constraints; + td->elements = asn_DEF_OCTET_STRING.elements; + td->elements_count = asn_DEF_OCTET_STRING.elements_count; + td->specifics = asn_DEF_OCTET_STRING.specifics; +} + +void +VehicleRequestStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleRequestStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleRequestStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleRequestStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleRequestStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleRequestStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleRequestStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleRequestStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleRequestStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleRequestStatus_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VehicleRequestStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleRequestStatus = { + "VehicleRequestStatus", + "VehicleRequestStatus", + VehicleRequestStatus_free, + VehicleRequestStatus_print, + VehicleRequestStatus_constraint, + VehicleRequestStatus_decode_ber, + VehicleRequestStatus_encode_der, + VehicleRequestStatus_decode_xer, + VehicleRequestStatus_encode_xer, + VehicleRequestStatus_decode_uper, + VehicleRequestStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleRequestStatus_tags_1, + sizeof(asn_DEF_VehicleRequestStatus_tags_1) + /sizeof(asn_DEF_VehicleRequestStatus_tags_1[0]), /* 1 */ + asn_DEF_VehicleRequestStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleRequestStatus_tags_1) + /sizeof(asn_DEF_VehicleRequestStatus_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleRequestStatus_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c b/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c new file mode 100644 index 000000000..9f36c6630 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleSafetyExtension.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleSafetyExtension.h" + +static asn_TYPE_member_t asn_MBR_VehicleSafetyExtension_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtension, events), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventFlags, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "events" + }, + { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtension, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pathHistory" + }, + { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtension, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "pathPrediction" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtension, theRTCM), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMPackage, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "theRTCM" + }, +}; +static int asn_MAP_VehicleSafetyExtension_oms_1[] = { 0, 1, 2, 3 }; +static ber_tlv_tag_t asn_DEF_VehicleSafetyExtension_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtension_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* theRTCM */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtension_specs_1 = { + sizeof(struct VehicleSafetyExtension), + offsetof(struct VehicleSafetyExtension, _asn_ctx), + asn_MAP_VehicleSafetyExtension_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleSafetyExtension_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 3, /* Start extensions */ + 5 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtension = { + "VehicleSafetyExtension", + "VehicleSafetyExtension", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleSafetyExtension_tags_1, + sizeof(asn_DEF_VehicleSafetyExtension_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtension_tags_1[0]), /* 1 */ + asn_DEF_VehicleSafetyExtension_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSafetyExtension_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtension_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleSafetyExtension_1, + 4, /* Elements count */ + &asn_SPC_VehicleSafetyExtension_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleSize.c b/src/tmx/Asn_J2735/src/r41/VehicleSize.c new file mode 100644 index 000000000..c1862466e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleSize.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleSize.h" + +static asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "length" + }, +}; +static ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { + sizeof(struct VehicleSize), + offsetof(struct VehicleSize, _asn_ctx), + asn_MAP_VehicleSize_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSize = { + "VehicleSize", + "VehicleSize", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleSize_tags_1, + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + asn_DEF_VehicleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleSize_1, + 2, /* Elements count */ + &asn_SPC_VehicleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatus.c b/src/tmx/Asn_J2735/src/r41/VehicleStatus.c new file mode 100644 index 000000000..baabcd693 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleStatus.c @@ -0,0 +1,798 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleStatus.h" + +static asn_TYPE_member_t asn_MBR_wipers_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__wipers, statusFront), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatusFront, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "statusFront" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__wipers, rateFront), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rateFront" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__wipers, statusRear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatusRear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "statusRear" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__wipers, rateRear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rateRear" + }, +}; +static int asn_MAP_wipers_oms_4[] = { 2, 3 }; +static ber_tlv_tag_t asn_DEF_wipers_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_wipers_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_wipers_specs_4 = { + sizeof(struct VehicleStatus__wipers), + offsetof(struct VehicleStatus__wipers, _asn_ctx), + asn_MAP_wipers_tag2el_4, + 4, /* Count of tags in the map */ + asn_MAP_wipers_oms_4, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_wipers_4 = { + "wipers", + "wipers", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_wipers_tags_4, + sizeof(asn_DEF_wipers_tags_4) + /sizeof(asn_DEF_wipers_tags_4[0]) - 1, /* 1 */ + asn_DEF_wipers_tags_4, /* Same as above */ + sizeof(asn_DEF_wipers_tags_4) + /sizeof(asn_DEF_wipers_tags_4[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_wipers_4, + 4, /* Elements count */ + &asn_SPC_wipers_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_steering_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "angle" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidence" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleRateOfChange, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rate" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivingWheelAngle, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "wheels" + }, +}; +static int asn_MAP_steering_oms_16[] = { 1, 2, 3 }; +static ber_tlv_tag_t asn_DEF_steering_tags_16[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_steering_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_16 = { + sizeof(struct VehicleStatus__steering), + offsetof(struct VehicleStatus__steering, _asn_ctx), + asn_MAP_steering_tag2el_16, + 4, /* Count of tags in the map */ + asn_MAP_steering_oms_16, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_steering_16 = { + "steering", + "steering", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_steering_tags_16, + sizeof(asn_DEF_steering_tags_16) + /sizeof(asn_DEF_steering_tags_16[0]) - 1, /* 1 */ + asn_DEF_steering_tags_16, /* Same as above */ + sizeof(asn_DEF_steering_tags_16) + /sizeof(asn_DEF_steering_tags_16[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_steering_16, + 4, /* Elements count */ + &asn_SPC_steering_specs_16 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_accelSets_21[] = { + { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vertAccelThres" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "yawRateCon" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "hozAccelCon" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConfidenceSet, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "confidenceSet" + }, +}; +static int asn_MAP_accelSets_oms_21[] = { 0, 1, 2, 3, 4 }; +static ber_tlv_tag_t asn_DEF_accelSets_tags_21[] = { + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_21[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_21 = { + sizeof(struct VehicleStatus__accelSets), + offsetof(struct VehicleStatus__accelSets, _asn_ctx), + asn_MAP_accelSets_tag2el_21, + 5, /* Count of tags in the map */ + asn_MAP_accelSets_oms_21, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_accelSets_21 = { + "accelSets", + "accelSets", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_accelSets_tags_21, + sizeof(asn_DEF_accelSets_tags_21) + /sizeof(asn_DEF_accelSets_tags_21[0]) - 1, /* 1 */ + asn_DEF_accelSets_tags_21, /* Same as above */ + sizeof(asn_DEF_accelSets_tags_21) + /sizeof(asn_DEF_accelSets_tags_21[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_accelSets_21, + 5, /* Elements count */ + &asn_SPC_accelSets_specs_21 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_object_27[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDirection, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "obDirect" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dateTime" + }, +}; +static ber_tlv_tag_t asn_DEF_object_tags_27[] = { + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_object_tag2el_27[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_object_specs_27 = { + sizeof(struct VehicleStatus__object), + offsetof(struct VehicleStatus__object, _asn_ctx), + asn_MAP_object_tag2el_27, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_object_27 = { + "object", + "object", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_object_tags_27, + sizeof(asn_DEF_object_tags_27) + /sizeof(asn_DEF_object_tags_27[0]) - 1, /* 1 */ + asn_DEF_object_tags_27, /* Same as above */ + sizeof(asn_DEF_object_tags_27) + /sizeof(asn_DEF_object_tags_27[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_object_27, + 3, /* Elements count */ + &asn_SPC_object_specs_27 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_vehicleData_35[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "height" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "bumpers" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "mass" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "trailerWeight" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "type" + }, +}; +static ber_tlv_tag_t asn_DEF_vehicleData_tags_35[] = { + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_35[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_35 = { + sizeof(struct VehicleStatus__vehicleData), + offsetof(struct VehicleStatus__vehicleData, _asn_ctx), + asn_MAP_vehicleData_tag2el_35, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleData_35 = { + "vehicleData", + "vehicleData", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_vehicleData_tags_35, + sizeof(asn_DEF_vehicleData_tags_35) + /sizeof(asn_DEF_vehicleData_tags_35[0]) - 1, /* 1 */ + asn_DEF_vehicleData_tags_35, /* Same as above */ + sizeof(asn_DEF_vehicleData_tags_35) + /sizeof(asn_DEF_vehicleData_tags_35[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_vehicleData_35, + 5, /* Elements count */ + &asn_SPC_vehicleData_specs_35 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_weatherReport_43[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "isRaining" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rainRate" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "precipSituation" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "solarRadiation" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "friction" + }, +}; +static int asn_MAP_weatherReport_oms_43[] = { 1, 2, 3, 4 }; +static ber_tlv_tag_t asn_DEF_weatherReport_tags_43[] = { + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_43[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_43 = { + sizeof(struct VehicleStatus__weatherReport), + offsetof(struct VehicleStatus__weatherReport, _asn_ctx), + asn_MAP_weatherReport_tag2el_43, + 5, /* Count of tags in the map */ + asn_MAP_weatherReport_oms_43, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_weatherReport_43 = { + "weatherReport", + "weatherReport", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_weatherReport_tags_43, + sizeof(asn_DEF_weatherReport_tags_43) + /sizeof(asn_DEF_weatherReport_tags_43[0]) - 1, /* 1 */ + asn_DEF_weatherReport_tags_43, /* Same as above */ + sizeof(asn_DEF_weatherReport_tags_43) + /sizeof(asn_DEF_weatherReport_tags_43[0]), /* 2 */ + 0, /* No PER visible constraints */ + asn_MBR_weatherReport_43, + 5, /* Elements count */ + &asn_SPC_weatherReport_specs_43 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { + { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lights" + }, + { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "lightBar" + }, + { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_wipers_4, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "wipers" + }, + { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "brakeStatus" + }, + { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedPressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "brakePressure" + }, + { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "roadFriction" + }, + { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SunSensor, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sunData" + }, + { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RainSensor, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rainData" + }, + { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "airTemp" + }, + { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "airPres" + }, + { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_steering_16, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "steering" + }, + { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + 0, + &asn_DEF_accelSets_21, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "accelSets" + }, + { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + 0, + &asn_DEF_object_27, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "object" + }, + { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "fullPos" + }, + { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottlePosition, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "throttlePos" + }, + { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedHeadC" + }, + { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "speedC" + }, + { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + 0, + &asn_DEF_vehicleData_35, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleData" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "vehicleIdent" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_J1939data, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "j1939data" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + 0, + &asn_DEF_weatherReport_43, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "weatherReport" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus, gpsStatus), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GPSstatus, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "gpsStatus" + }, +}; +static int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; +static ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gpsStatus */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { + sizeof(struct VehicleStatus), + offsetof(struct VehicleStatus, _asn_ctx), + asn_MAP_VehicleStatus_tag2el_1, + 22, /* Count of tags in the map */ + asn_MAP_VehicleStatus_oms_1, /* Optional members */ + 22, 0, /* Root/Additions */ + 21, /* Start extensions */ + 23 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { + "VehicleStatus", + "VehicleStatus", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleStatus_tags_1, + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleStatus_1, + 22, /* Elements count */ + &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c new file mode 100644 index 000000000..6f93022bb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleStatusDeviceTypeTag.c @@ -0,0 +1,203 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleStatusDeviceTypeTag.h" + +int +VehicleStatusDeviceTypeTag_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +VehicleStatusDeviceTypeTag_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleStatusDeviceTypeTag_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleStatusDeviceTypeTag_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleStatusDeviceTypeTag_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleStatusDeviceTypeTag_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleStatusDeviceTypeTag_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleStatusDeviceTypeTag_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleStatusDeviceTypeTag_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleStatusDeviceTypeTag_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "lights" }, + { 2, 6, "wipers" }, + { 3, 6, "brakes" }, + { 4, 4, "stab" }, + { 5, 4, "trac" }, + { 6, 3, "abs" }, + { 7, 4, "sunS" }, + { 8, 5, "rainS" }, + { 9, 7, "airTemp" }, + { 10, 8, "steering" }, + { 11, 14, "vertAccelThres" }, + { 12, 9, "vertAccel" }, + { 13, 12, "hozAccelLong" }, + { 14, 11, "hozAccelLat" }, + { 15, 11, "hozAccelCon" }, + { 16, 9, "accel4way" }, + { 17, 13, "confidenceSet" }, + { 18, 6, "obDist" }, + { 19, 8, "obDirect" }, + { 20, 3, "yaw" }, + { 21, 10, "yawRateCon" }, + { 22, 8, "dateTime" }, + { 23, 7, "fullPos" }, + { 24, 10, "position2D" }, + { 25, 10, "position3D" }, + { 26, 7, "vehicle" }, + { 27, 10, "speedHeadC" }, + { 28, 6, "speedC" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { + 6, /* abs(6) */ + 16, /* accel4way(16) */ + 9, /* airTemp(9) */ + 3, /* brakes(3) */ + 17, /* confidenceSet(17) */ + 22, /* dateTime(22) */ + 23, /* fullPos(23) */ + 15, /* hozAccelCon(15) */ + 14, /* hozAccelLat(14) */ + 13, /* hozAccelLong(13) */ + 1, /* lights(1) */ + 19, /* obDirect(19) */ + 18, /* obDist(18) */ + 24, /* position2D(24) */ + 25, /* position3D(25) */ + 8, /* rainS(8) */ + 28, /* speedC(28) */ + 27, /* speedHeadC(27) */ + 4, /* stab(4) */ + 10, /* steering(10) */ + 7, /* sunS(7) */ + 5, /* trac(5) */ + 0, /* unknown(0) */ + 26, /* vehicle(26) */ + 12, /* vertAccel(12) */ + 11, /* vertAccelThres(11) */ + 2, /* wipers(2) */ + 20, /* yaw(20) */ + 21 /* yawRateCon(21) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { + asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ + 29, /* Number of elements in the maps */ + 30, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { + "VehicleStatusDeviceTypeTag", + "VehicleStatusDeviceTypeTag", + VehicleStatusDeviceTypeTag_free, + VehicleStatusDeviceTypeTag_print, + VehicleStatusDeviceTypeTag_constraint, + VehicleStatusDeviceTypeTag_decode_ber, + VehicleStatusDeviceTypeTag_encode_der, + VehicleStatusDeviceTypeTag_decode_xer, + VehicleStatusDeviceTypeTag_encode_xer, + VehicleStatusDeviceTypeTag_decode_uper, + VehicleStatusDeviceTypeTag_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c new file mode 100644 index 000000000..290379a66 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleStatusRequest.c @@ -0,0 +1,192 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleStatusRequest.h" + +static int +memb_subType_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnLessThenValue_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnMoreThenValue_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_subType_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusDeviceTypeTag, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "dataType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_subType_constraint_1, + &asn_PER_memb_subType_constr_3, + 0, + "subType" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_sendOnLessThenValue_constraint_1, + &asn_PER_memb_sendOnLessThenValue_constr_4, + 0, + "sendOnLessThenValue" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + memb_sendOnMoreThenValue_constraint_1, + &asn_PER_memb_sendOnMoreThenValue_constr_5, + 0, + "sendOnMoreThenValue" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sendAll" + }, +}; +static int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; +static ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { + sizeof(struct VehicleStatusRequest), + offsetof(struct VehicleStatusRequest, _asn_ctx), + asn_MAP_VehicleStatusRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* Start extensions */ + 6 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { + "VehicleStatusRequest", + "VehicleStatusRequest", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleStatusRequest_tags_1, + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleStatusRequest_1, + 5, /* Elements count */ + &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c new file mode 100644 index 000000000..f6de7e84e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleToLanePosition.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleToLanePosition.h" + +static asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "laneID" + }, +}; +static ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { + sizeof(struct VehicleToLanePosition), + offsetof(struct VehicleToLanePosition, _asn_ctx), + asn_MAP_VehicleToLanePosition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* Start extensions */ + 3 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { + "VehicleToLanePosition", + "VehicleToLanePosition", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleToLanePosition_tags_1, + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_VehicleToLanePosition_1, + 2, /* Elements count */ + &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c new file mode 100644 index 000000000..a9b3ace3b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleToLanePositionList.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "EU" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleToLanePositionList.h" + +static asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleToLanePosition, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { + sizeof(struct VehicleToLanePositionList), + offsetof(struct VehicleToLanePositionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { + "VehicleToLanePositionList", + "VehicleToLanePositionList", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleToLanePositionList_tags_1, + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleToLanePositionList_constr_1, + asn_MBR_VehicleToLanePositionList_1, + 1, /* Single element */ + &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleType.c b/src/tmx/Asn_J2735/src/r41/VehicleType.c new file mode 100644 index 000000000..eecf7c649 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleType.c @@ -0,0 +1,177 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleType.h" + +int +VehicleType_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +VehicleType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +VehicleType_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleType_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleType_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleType_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleType_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleType_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleType_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleType_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleType_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleType_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 7, "unknown" }, + { 2, 7, "special" }, + { 3, 4, "moto" }, + { 4, 3, "car" }, + { 5, 8, "carOther" }, + { 6, 3, "bus" }, + { 7, 8, "axleCnt2" }, + { 8, 8, "axleCnt3" }, + { 9, 8, "axleCnt4" }, + { 10, 15, "axleCnt4Trailer" }, + { 11, 15, "axleCnt5Trailer" }, + { 12, 15, "axleCnt6Trailer" }, + { 13, 20, "axleCnt5MultiTrailer" }, + { 14, 20, "axleCnt6MultiTrailer" }, + { 15, 20, "axleCnt7MultiTrailer" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_VehicleType_enum2value_1[] = { + 7, /* axleCnt2(7) */ + 8, /* axleCnt3(8) */ + 9, /* axleCnt4(9) */ + 10, /* axleCnt4Trailer(10) */ + 13, /* axleCnt5MultiTrailer(13) */ + 11, /* axleCnt5Trailer(11) */ + 14, /* axleCnt6MultiTrailer(14) */ + 12, /* axleCnt6Trailer(12) */ + 15, /* axleCnt7MultiTrailer(15) */ + 6, /* bus(6) */ + 4, /* car(4) */ + 5, /* carOther(5) */ + 3, /* moto(3) */ + 0, /* none(0) */ + 2, /* special(2) */ + 1 /* unknown(1) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { + asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 17, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleType = { + "VehicleType", + "VehicleType", + VehicleType_free, + VehicleType_print, + VehicleType_constraint, + VehicleType_decode_ber, + VehicleType_encode_der, + VehicleType_decode_xer, + VehicleType_encode_xer, + VehicleType_decode_uper, + VehicleType_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleType_tags_1, + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + asn_DEF_VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleType_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VehicleWidth.c b/src/tmx/Asn_J2735/src/r41/VehicleWidth.c new file mode 100644 index 000000000..68f46c04e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VehicleWidth.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleWidth.h" + +int +VehicleWidth_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +VehicleWidth_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +VehicleWidth_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VehicleWidth_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VehicleWidth_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VehicleWidth_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VehicleWidth_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VehicleWidth_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VehicleWidth_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VehicleWidth_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VehicleWidth_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { + "VehicleWidth", + "VehicleWidth", + VehicleWidth_free, + VehicleWidth_print, + VehicleWidth_constraint, + VehicleWidth_decode_ber, + VehicleWidth_encode_der, + VehicleWidth_decode_xer, + VehicleWidth_encode_xer, + VehicleWidth_decode_uper, + VehicleWidth_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VehicleWidth_tags_1, + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + asn_DEF_VehicleWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + &asn_PER_type_VehicleWidth_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Velocity.c b/src/tmx/Asn_J2735/src/r41/Velocity.c new file mode 100644 index 000000000..397c8a7f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Velocity.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Velocity.h" + +int +Velocity_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Velocity_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Velocity_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Velocity_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Velocity_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Velocity_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Velocity_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Velocity_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Velocity_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Velocity_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Velocity_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Velocity_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Velocity_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Velocity = { + "Velocity", + "Velocity", + Velocity_free, + Velocity_print, + Velocity_constraint, + Velocity_decode_ber, + Velocity_encode_der, + Velocity_decode_xer, + Velocity_encode_xer, + Velocity_decode_uper, + Velocity_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Velocity_tags_1, + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + asn_DEF_Velocity_tags_1, /* Same as above */ + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + &asn_PER_type_Velocity_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c new file mode 100644 index 000000000..2a4c4f2b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VerticalAcceleration.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VerticalAcceleration.h" + +int +VerticalAcceleration_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +VerticalAcceleration_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +VerticalAcceleration_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VerticalAcceleration_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VerticalAcceleration_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VerticalAcceleration_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VerticalAcceleration_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VerticalAcceleration_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VerticalAcceleration_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VerticalAcceleration_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VerticalAcceleration_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { + "VerticalAcceleration", + "VerticalAcceleration", + VerticalAcceleration_free, + VerticalAcceleration_print, + VerticalAcceleration_constraint, + VerticalAcceleration_decode_ber, + VerticalAcceleration_encode_der, + VerticalAcceleration_decode_xer, + VerticalAcceleration_encode_xer, + VerticalAcceleration_decode_uper, + VerticalAcceleration_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VerticalAcceleration_tags_1, + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + &asn_PER_type_VerticalAcceleration_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c new file mode 100644 index 000000000..a300f7a11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/VerticalAccelerationThreshold.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VerticalAccelerationThreshold.h" + +int +VerticalAccelerationThreshold_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +VerticalAccelerationThreshold_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +VerticalAccelerationThreshold_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +VerticalAccelerationThreshold_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +VerticalAccelerationThreshold_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +VerticalAccelerationThreshold_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +VerticalAccelerationThreshold_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +VerticalAccelerationThreshold_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +VerticalAccelerationThreshold_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + VerticalAccelerationThreshold_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { + "VerticalAccelerationThreshold", + "VerticalAccelerationThreshold", + VerticalAccelerationThreshold_free, + VerticalAccelerationThreshold_print, + VerticalAccelerationThreshold_constraint, + VerticalAccelerationThreshold_decode_ber, + VerticalAccelerationThreshold_encode_der, + VerticalAccelerationThreshold_decode_xer, + VerticalAccelerationThreshold_encode_xer, + VerticalAccelerationThreshold_decode_uper, + VerticalAccelerationThreshold_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_VerticalAccelerationThreshold_tags_1, + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c b/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c new file mode 100644 index 000000000..b5252c340 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WaitOnStopline.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WaitOnStopline.h" + +int +WaitOnStopline_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static void +WaitOnStopline_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BOOLEAN.free_struct; + td->print_struct = asn_DEF_BOOLEAN.print_struct; + td->check_constraints = asn_DEF_BOOLEAN.check_constraints; + td->ber_decoder = asn_DEF_BOOLEAN.ber_decoder; + td->der_encoder = asn_DEF_BOOLEAN.der_encoder; + td->xer_decoder = asn_DEF_BOOLEAN.xer_decoder; + td->xer_encoder = asn_DEF_BOOLEAN.xer_encoder; + td->uper_decoder = asn_DEF_BOOLEAN.uper_decoder; + td->uper_encoder = asn_DEF_BOOLEAN.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BOOLEAN.per_constraints; + td->elements = asn_DEF_BOOLEAN.elements; + td->elements_count = asn_DEF_BOOLEAN.elements_count; + td->specifics = asn_DEF_BOOLEAN.specifics; +} + +void +WaitOnStopline_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WaitOnStopline_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WaitOnStopline_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WaitOnStopline_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WaitOnStopline_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WaitOnStopline_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WaitOnStopline_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WaitOnStopline_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WaitOnStopline_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { + "WaitOnStopline", + "WaitOnStopline", + WaitOnStopline_free, + WaitOnStopline_print, + WaitOnStopline_constraint, + WaitOnStopline_decode_ber, + WaitOnStopline_encode_der, + WaitOnStopline_decode_xer, + WaitOnStopline_encode_xer, + WaitOnStopline_decode_uper, + WaitOnStopline_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WaitOnStopline_tags_1, + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + asn_DEF_WaitOnStopline_tags_1, /* Same as above */ + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c new file mode 100644 index 000000000..ed5a19f4c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WheelEndElectFault.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WheelEndElectFault.h" + +int +WheelEndElectFault_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static void +WheelEndElectFault_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_BIT_STRING.free_struct; + td->print_struct = asn_DEF_BIT_STRING.print_struct; + td->check_constraints = asn_DEF_BIT_STRING.check_constraints; + td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder; + td->der_encoder = asn_DEF_BIT_STRING.der_encoder; + td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder; + td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder; + td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder; + td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_BIT_STRING.per_constraints; + td->elements = asn_DEF_BIT_STRING.elements; + td->elements_count = asn_DEF_BIT_STRING.elements_count; + td->specifics = asn_DEF_BIT_STRING.specifics; +} + +void +WheelEndElectFault_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WheelEndElectFault_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WheelEndElectFault_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WheelEndElectFault_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WheelEndElectFault_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WheelEndElectFault_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WheelEndElectFault_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WheelEndElectFault_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WheelEndElectFault_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { + "WheelEndElectFault", + "WheelEndElectFault", + WheelEndElectFault_free, + WheelEndElectFault_print, + WheelEndElectFault_constraint, + WheelEndElectFault_decode_ber, + WheelEndElectFault_encode_der, + WheelEndElectFault_decode_xer, + WheelEndElectFault_encode_xer, + WheelEndElectFault_decode_uper, + WheelEndElectFault_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WheelEndElectFault_tags_1, + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c new file mode 100644 index 000000000..c4af7ca99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WheelSensorStatus.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WheelSensorStatus.h" + +int +WheelSensorStatus_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +WheelSensorStatus_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +WheelSensorStatus_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WheelSensorStatus_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WheelSensorStatus_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WheelSensorStatus_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WheelSensorStatus_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WheelSensorStatus_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WheelSensorStatus_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WheelSensorStatus_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WheelSensorStatus_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { + { 0, 3, "off" }, + { 1, 2, "on" }, + { 2, 10, "notDefined" }, + { 3, 12, "notSupoprted" } +}; +static unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { + 2, /* notDefined(2) */ + 3, /* notSupoprted(3) */ + 0, /* off(0) */ + 1 /* on(1) */ +}; +static asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { + asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { + "WheelSensorStatus", + "WheelSensorStatus", + WheelSensorStatus_free, + WheelSensorStatus_print, + WheelSensorStatus_constraint, + WheelSensorStatus_decode_ber, + WheelSensorStatus_encode_der, + WheelSensorStatus_decode_xer, + WheelSensorStatus_encode_xer, + WheelSensorStatus_decode_uper, + WheelSensorStatus_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WheelSensorStatus_tags_1, + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + &asn_PER_type_WheelSensorStatus_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WiperRate.c b/src/tmx/Asn_J2735/src/r41/WiperRate.c new file mode 100644 index 000000000..ba306373a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WiperRate.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WiperRate.h" + +int +WiperRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +WiperRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +WiperRate_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WiperRate_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WiperRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WiperRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WiperRate_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WiperRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WiperRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WiperRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WiperRate_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WiperRate_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_WiperRate_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperRate = { + "WiperRate", + "WiperRate", + WiperRate_free, + WiperRate_print, + WiperRate_constraint, + WiperRate_decode_ber, + WiperRate_encode_der, + WiperRate_decode_xer, + WiperRate_encode_xer, + WiperRate_decode_uper, + WiperRate_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WiperRate_tags_1, + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + asn_DEF_WiperRate_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + &asn_PER_type_WiperRate_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatus.c b/src/tmx/Asn_J2735/src/r41/WiperStatus.c new file mode 100644 index 000000000..20fd9f648 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WiperStatus.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WiperStatus.h" + +static asn_TYPE_member_t asn_MBR_WiperStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WiperStatus, statusFront), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatusFront, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "statusFront" + }, + { ATF_NOFLAGS, 0, offsetof(struct WiperStatus, rateFront), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rateFront" + }, + { ATF_POINTER, 2, offsetof(struct WiperStatus, statusRear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatusRear, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "statusRear" + }, + { ATF_POINTER, 1, offsetof(struct WiperStatus, rateRear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "rateRear" + }, +}; +static int asn_MAP_WiperStatus_oms_1[] = { 2, 3 }; +static ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_WiperStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_WiperStatus_specs_1 = { + sizeof(struct WiperStatus), + offsetof(struct WiperStatus, _asn_ctx), + asn_MAP_WiperStatus_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_WiperStatus_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatus = { + "WiperStatus", + "WiperStatus", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WiperStatus_tags_1, + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + asn_DEF_WiperStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_WiperStatus_1, + 4, /* Elements count */ + &asn_SPC_WiperStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c b/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c new file mode 100644 index 000000000..a17757ef0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WiperStatusFront.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WiperStatusFront.h" + +int +WiperStatusFront_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +WiperStatusFront_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +WiperStatusFront_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WiperStatusFront_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WiperStatusFront_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WiperStatusFront_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WiperStatusFront_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WiperStatusFront_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WiperStatusFront_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WiperStatusFront_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WiperStatusFront_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_WiperStatusFront_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_WiperStatusFront_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 12, "intermittent" }, + { 3, 3, "low" }, + { 4, 4, "high" }, + { 126, 11, "washerInUse" }, + { 127, 16, "automaticPresent" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_WiperStatusFront_enum2value_1[] = { + 6, /* automaticPresent(127) */ + 4, /* high(4) */ + 2, /* intermittent(2) */ + 3, /* low(3) */ + 1, /* off(1) */ + 0, /* unavailable(0) */ + 5 /* washerInUse(126) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_WiperStatusFront_specs_1 = { + asn_MAP_WiperStatusFront_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WiperStatusFront_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_WiperStatusFront_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatusFront = { + "WiperStatusFront", + "WiperStatusFront", + WiperStatusFront_free, + WiperStatusFront_print, + WiperStatusFront_constraint, + WiperStatusFront_decode_ber, + WiperStatusFront_encode_der, + WiperStatusFront_decode_xer, + WiperStatusFront_encode_xer, + WiperStatusFront_decode_uper, + WiperStatusFront_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WiperStatusFront_tags_1, + sizeof(asn_DEF_WiperStatusFront_tags_1) + /sizeof(asn_DEF_WiperStatusFront_tags_1[0]), /* 1 */ + asn_DEF_WiperStatusFront_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatusFront_tags_1) + /sizeof(asn_DEF_WiperStatusFront_tags_1[0]), /* 1 */ + &asn_PER_type_WiperStatusFront_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WiperStatusFront_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c b/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c new file mode 100644 index 000000000..1650420f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WiperStatusRear.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WiperStatusRear.h" + +int +WiperStatusRear_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +WiperStatusRear_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +WiperStatusRear_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +WiperStatusRear_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +WiperStatusRear_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +WiperStatusRear_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +WiperStatusRear_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +WiperStatusRear_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +WiperStatusRear_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +WiperStatusRear_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + WiperStatusRear_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_WiperStatusRear_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_WiperStatusRear_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 12, "intermittent" }, + { 3, 3, "low" }, + { 4, 4, "high" }, + { 126, 11, "washerInUse" }, + { 127, 16, "automaticPresent" } + /* This list is extensible */ +}; +static unsigned int asn_MAP_WiperStatusRear_enum2value_1[] = { + 6, /* automaticPresent(127) */ + 4, /* high(4) */ + 2, /* intermittent(2) */ + 3, /* low(3) */ + 1, /* off(1) */ + 0, /* unavailable(0) */ + 5 /* washerInUse(126) */ + /* This list is extensible */ +}; +static asn_INTEGER_specifics_t asn_SPC_WiperStatusRear_specs_1 = { + asn_MAP_WiperStatusRear_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WiperStatusRear_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_WiperStatusRear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatusRear = { + "WiperStatusRear", + "WiperStatusRear", + WiperStatusRear_free, + WiperStatusRear_print, + WiperStatusRear_constraint, + WiperStatusRear_decode_ber, + WiperStatusRear_encode_der, + WiperStatusRear_decode_xer, + WiperStatusRear_encode_xer, + WiperStatusRear_decode_uper, + WiperStatusRear_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WiperStatusRear_tags_1, + sizeof(asn_DEF_WiperStatusRear_tags_1) + /sizeof(asn_DEF_WiperStatusRear_tags_1[0]), /* 1 */ + asn_DEF_WiperStatusRear_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatusRear_tags_1) + /sizeof(asn_DEF_WiperStatusRear_tags_1[0]), /* 1 */ + &asn_PER_type_WiperStatusRear_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WiperStatusRear_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/WorkZone.c b/src/tmx/Asn_J2735/src/r41/WorkZone.c new file mode 100644 index 000000000..9c6a06912 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/WorkZone.c @@ -0,0 +1,218 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "WorkZone.h" + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_text_constraint_3(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_per_constraints_t asn_PER_memb_text_constr_5 GCC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_per_constraints_t asn_PER_type_item_wk_constr_3 GCC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_per_constraints_t asn_PER_type_WorkZone_constr_1 GCC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_wk_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct item_wk, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct item_wk, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + memb_text_constraint_3, + &asn_PER_memb_text_constr_5, + 0, + "text" + }, +}; +static asn_TYPE_tag2member_t asn_MAP_item_wk_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_wk_specs_3 = { + sizeof(struct item_wk), + offsetof(struct item_wk, _asn_ctx), + offsetof(struct item_wk, present), + sizeof(((struct item_wk *)0)->present), + asn_MAP_item_wk_tag2el_3, + 2, /* Count of tags in the map */ + 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_wk_3 = { + "item-wk", + "item-wk", + CHOICE_free, + CHOICE_print, + CHOICE_constraint, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_outmost_tag, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + &asn_PER_type_item_wk_constr_3, + asn_MBR_item_wk_3, + 2, /* Elements count */ + &asn_SPC_item_wk_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item_wk), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_wk_3, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "item-wk" + }, +}; +static ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item-wk */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct WorkZone__Member), + offsetof(struct WorkZone__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_WorkZone_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "" + }, +}; +static ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { + sizeof(struct WorkZone), + offsetof(struct WorkZone, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_WorkZone = { + "WorkZone", + "WorkZone", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, + SEQUENCE_OF_decode_uper, + SEQUENCE_OF_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_WorkZone_tags_1, + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + asn_DEF_WorkZone_tags_1, /* Same as above */ + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + &asn_PER_type_WorkZone_constr_1, + asn_MBR_WorkZone_1, + 1, /* Single element */ + &asn_SPC_WorkZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/YawRate.c b/src/tmx/Asn_J2735/src/r41/YawRate.c new file mode 100644 index 000000000..855b8fa7f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/YawRate.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "YawRate.h" + +int +YawRate_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +YawRate_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +YawRate_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + YawRate_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +YawRate_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +YawRate_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +YawRate_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +YawRate_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +YawRate_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +YawRate_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +YawRate_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + YawRate_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_YawRate_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRate = { + "YawRate", + "YawRate", + YawRate_free, + YawRate_print, + YawRate_constraint, + YawRate_decode_ber, + YawRate_encode_der, + YawRate_decode_xer, + YawRate_encode_xer, + YawRate_decode_uper, + YawRate_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_YawRate_tags_1, + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + asn_DEF_YawRate_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + &asn_PER_type_YawRate_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c b/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c new file mode 100644 index 000000000..e977df430 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/YawRateConfidence.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "YawRateConfidence.h" + +int +YawRateConfidence_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static void +YawRateConfidence_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeEnumerated.free_struct; + td->print_struct = asn_DEF_NativeEnumerated.print_struct; + td->check_constraints = asn_DEF_NativeEnumerated.check_constraints; + td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder; + td->der_encoder = asn_DEF_NativeEnumerated.der_encoder; + td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder; + td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder; + td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder; + td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeEnumerated.per_constraints; + td->elements = asn_DEF_NativeEnumerated.elements; + td->elements_count = asn_DEF_NativeEnumerated.elements_count; + /* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */ +} + +void +YawRateConfidence_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +YawRateConfidence_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +YawRateConfidence_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +YawRateConfidence_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +YawRateConfidence_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +YawRateConfidence_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +YawRateConfidence_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +YawRateConfidence_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + YawRateConfidence_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +static asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { + asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { + "YawRateConfidence", + "YawRateConfidence", + YawRateConfidence_free, + YawRateConfidence_print, + YawRateConfidence_constraint, + YawRateConfidence_decode_ber, + YawRateConfidence_encode_der, + YawRateConfidence_decode_xer, + YawRateConfidence_encode_xer, + YawRateConfidence_decode_uper, + YawRateConfidence_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_YawRateConfidence_tags_1, + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_YawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + &asn_PER_type_YawRateConfidence_constr_1, + 0, 0, /* Defined elsewhere */ + &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/Year.c b/src/tmx/Asn_J2735/src/r41/Year.c new file mode 100644 index 000000000..ef91fcf96 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/Year.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "JPN" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Year.h" + +int +Year_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +Year_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +Year_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + Year_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +Year_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + Year_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +Year_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + Year_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +Year_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + Year_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +Year_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + Year_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +Year_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + Year_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +Year_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + Year_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +Year_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + Year_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_Year_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_Year_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Year = { + "Year", + "Year", + Year_free, + Year_print, + Year_constraint, + Year_decode_ber, + Year_encode_der, + Year_decode_xer, + Year_encode_xer, + Year_decode_uper, + Year_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_Year_tags_1, + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + asn_DEF_Year_tags_1, /* Same as above */ + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + &asn_PER_type_Year_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/ZoneLength.c b/src/tmx/Asn_J2735/src/r41/ZoneLength.c new file mode 100644 index 000000000..62e2d8f56 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ZoneLength.c @@ -0,0 +1,147 @@ +/* + * Generated by asn1c-0.9.27 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_R41_Source_mod.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ZoneLength.h" + +int +ZoneLength_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 10000)) { + /* Constraint check succeeded */ + return 0; + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static void +ZoneLength_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_NativeInteger.free_struct; + td->print_struct = asn_DEF_NativeInteger.print_struct; + td->check_constraints = asn_DEF_NativeInteger.check_constraints; + td->ber_decoder = asn_DEF_NativeInteger.ber_decoder; + td->der_encoder = asn_DEF_NativeInteger.der_encoder; + td->xer_decoder = asn_DEF_NativeInteger.xer_decoder; + td->xer_encoder = asn_DEF_NativeInteger.xer_encoder; + td->uper_decoder = asn_DEF_NativeInteger.uper_decoder; + td->uper_encoder = asn_DEF_NativeInteger.uper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_NativeInteger.per_constraints; + td->elements = asn_DEF_NativeInteger.elements; + td->elements_count = asn_DEF_NativeInteger.elements_count; + td->specifics = asn_DEF_NativeInteger.specifics; +} + +void +ZoneLength_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ZoneLength_1_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ZoneLength_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ZoneLength_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ZoneLength_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ZoneLength_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ZoneLength_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ZoneLength_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ZoneLength_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ZoneLength_1_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +static asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 GCC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ZoneLength = { + "ZoneLength", + "ZoneLength", + ZoneLength_free, + ZoneLength_print, + ZoneLength_constraint, + ZoneLength_decode_ber, + ZoneLength_encode_der, + ZoneLength_decode_xer, + ZoneLength_encode_xer, + ZoneLength_decode_uper, + ZoneLength_encode_uper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ZoneLength_tags_1, + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + asn_DEF_ZoneLength_tags_1, /* Same as above */ + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + &asn_PER_type_ZoneLength_constr_1, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c new file mode 100644 index 000000000..ec952fc99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/asn_SEQUENCE_OF.c @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +typedef A_SEQUENCE_OF(void) asn_sequence; + +void +asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { + asn_sequence *as = (asn_sequence *)asn_sequence_of_x; + + if(as) { + void *ptr; + int n; + + if(number < 0 || number >= as->count) + return; /* Nothing to delete */ + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + /* + * Shift all elements to the left to hide the gap. + */ + --as->count; + for(n = number; n < as->count; n++) + as->array[n] = as->array[n+1]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + diff --git a/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c b/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c new file mode 100644 index 000000000..944f2cb8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/asn_SET_OF.c @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Add another element into the set. + */ +int +asn_set_add(void *asn_set_of_x, void *ptr) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as == 0 || ptr == 0) { + errno = EINVAL; /* Invalid arguments */ + return -1; + } + + /* + * Make sure there's enough space to insert an element. + */ + if(as->count == as->size) { + int _newsize = as->size ? (as->size << 1) : 4; + void *_new_arr; + _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); + if(_new_arr) { + as->array = (void **)_new_arr; + as->size = _newsize; + } else { + /* ENOMEM */ + return -1; + } + } + + as->array[as->count++] = ptr; + + return 0; +} + +void +asn_set_del(void *asn_set_of_x, int number, int _do_free) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + void *ptr; + if(number < 0 || number >= as->count) + return; + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + as->array[number] = as->array[--as->count]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + +/* + * Free the contents of the set, do not free the set itself. + */ +void +asn_set_empty(void *asn_set_of_x) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + if(as->array) { + if(as->free) { + while(as->count--) + as->free(as->array[as->count]); + } + FREEMEM(as->array); + as->array = 0; + } + as->count = 0; + as->size = 0; + } + +} + diff --git a/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c new file mode 100644 index 000000000..8e604a492 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/asn_codecs_prim.c @@ -0,0 +1,312 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Decode an always-primitive type. + */ +asn_dec_rval_t +ber_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + void **sptr, const void *buf_ptr, size_t size, int tag_mode) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval; + ber_tlv_len_t length = 0; // =0 to avoid [incorrect] warning. + + /* + * If the structure is not there, allocate it. + */ + if(st == NULL) { + st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) _ASN_DECODE_FAILED; + *sptr = (void *)st; + } + + ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", + td->name, tag_mode); + + /* + * Check tags and extract value length. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + st->size = (int)length; + /* The following better be optimized away. */ + if(sizeof(st->size) != sizeof(length) + && (ber_tlv_len_t)st->size != length) { + st->size = 0; + _ASN_DECODE_FAILED; + } + + st->buf = (uint8_t *)MALLOC(length + 1); + if(!st->buf) { + st->size = 0; + _ASN_DECODE_FAILED; + } + + memcpy(st->buf, buf_ptr, length); + st->buf[length] = '\0'; /* Just in case */ + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s", + (long)rval.consumed, + (long)length, td->name); + + return rval; +} + +/* + * Encode an always-primitive type using DER. + */ +asn_enc_rval_t +der_encode_primitive(asn_TYPE_descriptor_t *td, void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval; + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; + + ASN_DEBUG("%s %s as a primitive type (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, + cb, app_key); + ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb && st->buf) { + if(cb(st->buf, st->size, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } else { + assert(st->buf || st->size == 0); + } + + erval.encoded += st->size; + _ASN_ENCODED_OK(erval); +} + +void +ASN__PRIMITIVE_TYPE_free(asn_TYPE_descriptor_t *td, void *sptr, + int contents_only) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as a primitive type", td->name); + + if(st->buf) + FREEMEM(st->buf); + + if(!contents_only) + FREEMEM(st); +} + + +/* + * Local internal type passed around as an argument. + */ +struct xdp_arg_s { + asn_TYPE_descriptor_t *type_descriptor; + void *struct_key; + xer_primitive_body_decoder_f *prim_body_decoder; + int decoded_something; + int want_more; +}; + +/* + * Since some kinds of primitive values can be encoded using value-specific + * tags (, , etc), the primitive decoder must + * be supplied with such tags to parse them as needed. + */ +static int +xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + + /* + * The chunk_buf is guaranteed to start at '<'. + */ + assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); + + /* + * Decoding was performed once already. Prohibit doing it again. + */ + if(arg->decoded_something) + return -1; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return 0; + } + + return -1; +} + +static ssize_t +xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + size_t lead_wsp_size; + + if(arg->decoded_something) { + if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { + /* + * Example: + * "123 " + * ^- chunk_buf position. + */ + return chunk_size; + } + /* + * Decoding was done once already. Prohibit doing it again. + */ + return -1; + } + + if(!have_more) { + /* + * If we've received something like "1", we can't really + * tell whether it is really `1` or `123`, until we know + * that there is no more data coming. + * The have_more argument will be set to 1 once something + * like this is available to the caller of this callback: + * "1want_more = 1; + return -1; + } + + lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); + chunk_buf = (const char *)chunk_buf + lead_wsp_size; + chunk_size -= lead_wsp_size; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return lead_wsp_size + chunk_size; + } + + return -1; +} + + +asn_dec_rval_t +xer_decode_primitive(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, + void **sptr, + size_t struct_size, + const char *opt_mname, + const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder +) { + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t s_ctx; + struct xdp_arg_s s_arg; + asn_dec_rval_t rc; + + /* + * Create the structure if does not exist. + */ + if(!*sptr) { + *sptr = CALLOC(1, struct_size); + if(!*sptr) _ASN_DECODE_FAILED; + } + + memset(&s_ctx, 0, sizeof(s_ctx)); + s_arg.type_descriptor = td; + s_arg.struct_key = *sptr; + s_arg.prim_body_decoder = prim_body_decoder; + s_arg.decoded_something = 0; + s_arg.want_more = 0; + + rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, + xml_tag, buf_ptr, size, + xer_decode__unexpected_tag, xer_decode__primitive_body); + switch(rc.code) { + case RC_OK: + if(!s_arg.decoded_something) { + char ch; + ASN_DEBUG("Primitive body is not recognized, " + "supplying empty one"); + /* + * Decoding opportunity has come and gone. + * Where's the result? + * Try to feed with empty body, see if it eats it. + */ + if(prim_body_decoder(s_arg.type_descriptor, + s_arg.struct_key, &ch, 0) + != XPBD_BODY_CONSUMED) { + /* + * This decoder does not like empty stuff. + */ + _ASN_DECODE_FAILED; + } + } + break; + case RC_WMORE: + /* + * Redo the whole thing later. + * We don't have a context to save intermediate parsing state. + */ + rc.consumed = 0; + break; + case RC_FAIL: + rc.consumed = 0; + if(s_arg.want_more) + rc.code = RC_WMORE; + else + _ASN_DECODE_FAILED; + break; + } + return rc; +} + diff --git a/src/tmx/Asn_J2735/src/r41/ber_decoder.c b/src/tmx/Asn_J2735/src/r41/ber_decoder.c new file mode 100644 index 000000000..0f9940090 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ber_decoder.c @@ -0,0 +1,283 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + if(opt_ctx) opt_ctx->step = step; /* Save context */ \ + if(_code == RC_OK || opt_ctx) \ + rval.consumed = consumed_myself; \ + else \ + rval.consumed = 0; /* Context-free */ \ + return rval; \ + } while(0) + +/* + * The BER decoder of any type. + */ +asn_dec_rval_t +ber_decode(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *type_descriptor, + void **struct_ptr, const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->ber_decoder(opt_codec_ctx, type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + ptr, size, /* Buffer and its size */ + 0 /* Default tag mode is 0 */ + ); +} + +/* + * Check the set of >> tags matches the definition. + */ +asn_dec_rval_t +ber_check_tags(asn_codec_ctx_t *opt_codec_ctx, + asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, + const void *ptr, size_t size, int tag_mode, int last_tag_form, + ber_tlv_len_t *last_length, int *opt_tlv_form) { + ssize_t consumed_myself = 0; + ssize_t tag_len; + ssize_t len_len; + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_len_t limit_len = -1; + int expect_00_terminators = 0; + int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ + int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ + int tagno; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) + RETURN(RC_FAIL); + + /* + * So what does all this implicit skip stuff mean? + * Imagine two types, + * A ::= [5] IMPLICIT T + * B ::= [2] EXPLICIT T + * Where T is defined as + * T ::= [4] IMPLICIT SEQUENCE { ... } + * + * Let's say, we are starting to decode type A, given the + * following TLV stream: <5> <0>. What does this mean? + * It means that the type A contains type T which is, + * in turn, empty. + * Remember though, that we are still in A. We cannot + * just pass control to the type T decoder. Why? Because + * the type T decoder expects <4> <0>, not <5> <0>. + * So, we must make sure we are going to receive <5> while + * still in A, then pass control to the T decoder, indicating + * that the tag <4> was implicitly skipped. The decoder of T + * hence will be prepared to treat <4> as valid tag, and decode + * it appropriately. + */ + + tagno = step /* Continuing where left previously */ + + (tag_mode==1?-1:0) + ; + ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", + td->name, (long)size, tag_mode, step, tagno); + /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ + + if(tag_mode == 0 && tagno == td->tags_count) { + /* + * This must be the _untagged_ ANY type, + * which outermost tag isn't known in advance. + * Fetch the tag and length separately. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + ASN_DEBUG("Advancing %ld in ANY case", + (long)(tag_len + len_len)); + ADVANCE(tag_len + len_len); + } else { + assert(tagno < td->tags_count); /* At least one loop */ + } + for((void)tagno; tagno < td->tags_count; tagno++, step++) { + + /* + * Fetch and process T from TLV. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + ASN_DEBUG("Fetching tag from {%p,%ld}: " + "len %ld, step %d, tagno %d got %s", + ptr, (long)size, + (long)tag_len, step, tagno, + ber_tlv_tag_string(tlv_tag)); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + + /* + * If {I}, don't check anything. + * If {I,B,C}, check B and C unless we're at I. + */ + if(tag_mode != 0 && step == 0) { + /* + * We don't expect tag to match here. + * It's just because we don't know how the tag + * is supposed to look like. + */ + } else { + assert(tagno >= 0); /* Guaranteed by the code above */ + if(tlv_tag != td->tags[tagno]) { + /* + * Unexpected tag. Too bad. + */ + ASN_DEBUG("Expected: %s, " + "expectation failed (tn=%d, tm=%d)", + ber_tlv_tag_string(td->tags[tagno]), + tagno, tag_mode + ); + RETURN(RC_FAIL); + } + } + + /* + * Attention: if there are more tags expected, + * ensure that the current tag is presented + * in constructed form (it contains other tags!). + * If this one is the last one, check that the tag form + * matches the one given in descriptor. + */ + if(tagno < (td->tags_count - 1)) { + if(tlv_constr == 0) { + ASN_DEBUG("tlv_constr = %d, expfail", + tlv_constr); + RETURN(RC_FAIL); + } + } else { + if(last_tag_form != tlv_constr + && last_tag_form != -1) { + ASN_DEBUG("last_tag_form %d != %d", + last_tag_form, tlv_constr); + RETURN(RC_FAIL); + } + } + + /* + * Fetch and process L from TLV. + */ + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + ASN_DEBUG("Fetching len = %ld", (long)len_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + /* + * FIXME + * As of today, the chain of tags + * must either contain several indefinite length TLVs, + * or several definite length ones. + * No mixing is allowed. + */ + if(tlv_len == -1) { + /* + * Indefinite length. + */ + if(limit_len == -1) { + expect_00_terminators++; + } else { + ASN_DEBUG("Unexpected indefinite length " + "in a chain of definite lengths"); + RETURN(RC_FAIL); + } + ADVANCE(tag_len + len_len); + continue; + } else { + if(expect_00_terminators) { + ASN_DEBUG("Unexpected definite length " + "in a chain of indefinite lengths"); + RETURN(RC_FAIL); + } + } + + /* + * Check that multiple TLVs specify ever decreasing length, + * which is consistent. + */ + if(limit_len == -1) { + limit_len = tlv_len + tag_len + len_len; + if(limit_len < 0) { + /* Too great tlv_len value? */ + RETURN(RC_FAIL); + } + } else if(limit_len != tlv_len + tag_len + len_len) { + /* + * Inner TLV specifies length which is inconsistent + * with the outer TLV's length value. + */ + ASN_DEBUG("Outer TLV is %ld and inner is %ld", + (long)limit_len, (long)tlv_len); + RETURN(RC_FAIL); + } + + ADVANCE(tag_len + len_len); + + limit_len -= (tag_len + len_len); + if((ssize_t)size > limit_len) { + /* + * Make sure that we won't consume more bytes + * from the parent frame than the inferred limit. + */ + size = limit_len; + } + } + + if(opt_tlv_form) + *opt_tlv_form = tlv_constr; + if(expect_00_terminators) + *last_length = -expect_00_terminators; + else + *last_length = tlv_len; + + RETURN(RC_OK); +} diff --git a/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c b/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c new file mode 100644 index 000000000..b87e75e04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ber_tlv_length.c @@ -0,0 +1,178 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r) { + const uint8_t *buf = (const uint8_t *)bufptr; + unsigned oct; + + if(size == 0) + return 0; /* Want more */ + + oct = *(const uint8_t *)buf; + if((oct & 0x80) == 0) { + /* + * Short definite length. + */ + *len_r = oct; /* & 0x7F */ + return 1; + } else { + ber_tlv_len_t len; + size_t skipped; + + if(_is_constructed && oct == 0x80) { + *len_r = -1; /* Indefinite length */ + return 1; + } + + if(oct == 0xff) { + /* Reserved in standard for future use. */ + return -1; + } + + oct &= 0x7F; /* Leave only the 7 LS bits */ + for(len = 0, buf++, skipped = 1; + oct && (++skipped <= size); buf++, oct--) { + + len = (len << 8) | *buf; + if(len < 0 + || (len >> ((8 * sizeof(len)) - 8) && oct > 1)) { + /* + * Too large length value. + */ + return -1; + } + } + + if(oct == 0) { + ber_tlv_len_t lenplusepsilon = (size_t)len + 1024; + /* + * Here length may be very close or equal to 2G. + * However, the arithmetics used in some decoders + * may add some (small) quantities to the length, + * to check the resulting value against some limits. + * This may result in integer wrap-around, which + * we try to avoid by checking it earlier here. + */ + if(lenplusepsilon < 0) { + /* Too large length value */ + return -1; + } + + *len_r = len; + return skipped; + } + + return 0; /* Want more */ + } + +} + +ssize_t +ber_skip_length(asn_codec_ctx_t *opt_codec_ctx, + int _is_constructed, const void *ptr, size_t size) { + ber_tlv_len_t vlen; /* Length of V in TLV */ + ssize_t tl; /* Length of L in TLV */ + ssize_t ll; /* Length of L in TLV */ + size_t skip; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) + return -1; + + /* + * Determine the size of L in TLV. + */ + ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); + if(ll <= 0) return ll; + + /* + * Definite length. + */ + if(vlen >= 0) { + skip = ll + vlen; + if(skip > size) + return 0; /* Want more */ + return skip; + } + + /* + * Indefinite length! + */ + ASN_DEBUG("Skipping indefinite length"); + for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { + ber_tlv_tag_t tag; + + /* Fetch the tag */ + tl = ber_fetch_tag(ptr, size, &tag); + if(tl <= 0) return tl; + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + ((const char *)ptr) + tl, size - tl); + if(ll <= 0) return ll; + + skip += tl + ll; + + /* + * This may be the end of the indefinite length structure, + * two consecutive 0 octets. + * Check if it is true. + */ + if(((const uint8_t *)ptr)[0] == 0 + && ((const uint8_t *)ptr)[1] == 0) + return skip; + + ptr = ((const char *)ptr) + tl + ll; + size -= tl + ll; + } + + /* UNREACHABLE */ +} + +size_t +der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { + size_t required_size; /* Size of len encoding */ + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + size_t i; + + if(len <= 127) { + /* Encoded in 1 octet */ + if(size) *buf = (uint8_t)len; + return 1; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 8; i < 8 * sizeof(len); i += 8) { + if(len >> i) + required_size++; + else + break; + } + + if(size <= required_size) + return required_size + 1; + + *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ + + /* + * Produce the len encoding, space permitting. + */ + end = buf + required_size; + for(i -= 8; buf < end; i -= 8, buf++) + *buf = (uint8_t)(len >> i); + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c new file mode 100644 index 000000000..42708760e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/ber_tlv_tag.c @@ -0,0 +1,144 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val &= 0x1F) != 0x1F) { + /* + * Simple form: everything encoded in a single octet. + * Tag Class is encoded using two least significant bits. + */ + *tag_r = (val << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; + skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accomodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + + +ssize_t +ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { + char buf[sizeof("[APPLICATION ]") + 32]; + ssize_t ret; + + ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + if(ret >= (ssize_t)sizeof(buf) || ret < 2) { + errno = EPERM; + return -1; + } + + return fwrite(buf, 1, ret, f); +} + +ssize_t +ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { + char *type = 0; + int ret; + + switch(tag & 0x3) { + case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; + case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; + case ASN_TAG_CLASS_CONTEXT: type = ""; break; + case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; + } + + ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); + if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ + + return ret; +} + +char * +ber_tlv_tag_string(ber_tlv_tag_t tag) { + static char buf[sizeof("[APPLICATION ]") + 32]; + + (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + + return buf; +} + + +size_t +ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { + int tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + size_t required_size; + size_t i; + + if(tval <= 30) { + /* Encoded in 1 octet */ + if(size) buf[0] = (tclass << 6) | tval; + return 1; + } else if(size) { + *buf++ = (tclass << 6) | 0x1F; + size--; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { + if(tval >> i) + required_size++; + else + break; + } + + if(size < required_size) + return required_size + 1; + + /* + * Fill in the buffer, space permitting. + */ + end = buf + required_size - 1; + for(i -= 7; buf < end; i -= 7, buf++) + *buf = 0x80 | ((tval >> i) & 0x7F); + *buf = (tval & 0x7F); /* Last octet without high bit */ + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c b/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c new file mode 100644 index 000000000..5a1e0d386 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constr_CHOICE.c @@ -0,0 +1,1113 @@ +/* + * Copyright (c) 2003, 2004, 2005, 2006, 2007 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num;\ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * See the definitions. + */ +static int _fetch_present_idx(const void *struct_ptr, int off, int size); +static void _set_present_idx(void *sptr, int offset, int size, int pres); + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the CHOICE type. + */ +asn_dec_rval_t +CHOICE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + if(tag_mode || td->tags_count) { + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, -1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) { + /* ?Substracted below! */ + ctx->left += rval.consumed; + } + ADVANCE(rval.consumed); + } else { + ctx->left = -1; + } + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + do { + asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key; + + key.el_tag = tlv_tag; + t2m = (asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG("Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + + ASN_DEBUG("Skipping unknown tag %s", + ber_tlv_tag_string(tlv_tag)); + + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + RETURN(RC_OK); + } + } while(0); + + case 2: + /* + * PHASE 2. + * Read in the element. + */ + do { + asn_TYPE_member_t *elm;/* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &elements[ctx->step]; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + /* Set presence to be able to free it properly at any time */ + _set_present_idx(st, specs->pres_offset, + specs->pres_size, ctx->step + 1); + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->ber_decoder(opt_codec_ctx, elm->type, + memb_ptr2, ptr, LEFT, elm->tag_mode); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + RETURN(RC_FAIL); + case RC_FAIL: /* Fatal error */ + RETURN(rval.code); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } while(0); + + NEXT_PHASE(ctx); + + /* Fall through */ + case 3: + ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", + td->name, (long)ctx->left, (long)size, + tag_mode, td->tags_count); + + if(ctx->left > 0) { + /* + * The type must be fully decoded + * by the CHOICE member-specific decoder. + */ + RETURN(RC_FAIL); + } + + if(ctx->left == -1 + && !(tag_mode || td->tags_count)) { + /* + * This is an untagged CHOICE. + * It doesn't contain nothing + * except for the member itself, including all its tags. + * The decoding is completed. + */ + NEXT_PHASE(ctx); + break; + } + + /* + * Read in the "end of data chunks"'s. + */ + while(ctx->left < 0) { + ssize_t tl; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * Expected <0><0>... + */ + if(((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + continue; + } + } else { + ASN_DEBUG("Unexpected continuation in %s", + td->name); + RETURN(RC_FAIL); + } + + /* UNREACHABLE */ + } + + NEXT_PHASE(ctx); + case 4: + /* No meaningful work here */ + break; + } + + RETURN(RC_OK); +} + +asn_enc_rval_t +CHOICE_encode_der(asn_TYPE_descriptor_t *td, void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + asn_enc_rval_t erval; + void *memb_ptr; + size_t computed_size = 0; + int present; + + if(!sptr) _ASN_ENCODE_FAILED; + + ASN_DEBUG("%s %s as CHOICE", + cb?"Encoding":"Estimating", td->name); + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present <= 0 || present > td->elements_count) { + if(present == 0 && td->elements_count == 0) { + /* The CHOICE is empty?! */ + erval.encoded = 0; + _ASN_ENCODED_OK(erval); + } + _ASN_ENCODE_FAILED; + } + + /* + * Seek over the present member of the structure. + */ + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + if(elm->optional) { + erval.encoded = 0; + _ASN_ENCODED_OK(erval); + } + /* Mandatory element absent */ + _ASN_ENCODE_FAILED; + } + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + } + + /* + * If the CHOICE itself is tagged EXPLICIT: + * T ::= [2] EXPLICIT CHOICE { ... } + * Then emit the appropriate tags. + */ + if(tag_mode == 1 || td->tags_count) { + /* + * For this, we need to pre-compute the member. + */ + ssize_t ret; + + /* Encode member with its tag */ + erval = elm->type->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, 0, 0); + if(erval.encoded == -1) + return erval; + + /* Encode CHOICE with parent or my own tag */ + ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, + cb, app_key); + if(ret == -1) + _ASN_ENCODE_FAILED; + computed_size += ret; + } + + /* + * Encode the single underlying member. + */ + erval = elm->type->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, cb, app_key); + if(erval.encoded == -1) + return erval; + + ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", + (long)erval.encoded, (long)computed_size); + + erval.encoded += computed_size; + + return erval; +} + +ber_tlv_tag_t +CHOICE_outmost_tag(asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + int present; + + assert(tag_mode == 0); (void)tag_mode; + assert(tag == 0); (void)tag; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + if(present > 0 || present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *) + ((const char *)ptr + elm->memb_offset); + } else { + memb_ptr = (const void *) + ((const char *)ptr + elm->memb_offset); + } + + return asn_TYPE_outmost_tag(elm->type, memb_ptr, + elm->tag_mode, elm->tag); + } else { + return (ber_tlv_tag_t)-1; + } +} + +int +CHOICE_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + int present; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + return 0; + _ASN_CTFAIL(app_key, td, sptr, + "%s: mandatory CHOICE element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->memb_constraints) { + return elm->memb_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + } else { + int ret = elm->type->check_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + /* + * Cannot inherit it eralier: + * need to make sure we get the updated version. + */ + elm->memb_constraints = elm->type->check_constraints; + return ret; + } + } else { + _ASN_CTFAIL(app_key, td, sptr, + "%s: no CHOICE element given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +CHOICE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value of a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + int edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + if(ctx->phase == 0 && !*xml_tag) + ctx->phase = 1; /* Skip the outer tag checking phase */ + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Only waiting for closing tag. + * Phase 4: Skipping unknown extensions. + * Phase 5: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 4;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the member. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Start/Continue decoding the inner member */ + tmprval = elm->type->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + buf_ptr, size); + XER_ADVANCE(tmprval.consumed); + ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", + elm->type->name, tmprval.code); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + assert(_fetch_present_idx(st, + specs->pres_offset, specs->pres_size) == 0); + /* Record what we've got */ + _set_present_idx(st, + specs->pres_offset, specs->pres_size, edx + 1); + ctx->phase = 3; + /* Fall through */ + } + + /* No need to wait for closing tag; special mode. */ + if(ctx->phase == 3 && !*xml_tag) { + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); + switch(ch_size) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + default: + switch(ch_type) { + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + xml_tag, tcv); + + /* Skip the extensions section */ + if(ctx->phase == 4) { + ASN_DEBUG("skip_unknown(%d, %ld)", + tcv, (long)ctx->left); + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 5; + RETURN(RC_FAIL); + continue; + case 1: + ctx->phase = 3; + /* Fall through */ + case 0: + XER_ADVANCE(ch_size); + continue; + case 2: + ctx->phase = 3; + break; + } + } + + switch(tcv) { + case XCT_BOTH: + break; /* No CHOICE? */ + case XCT_CLOSING: + if(ctx->phase != 3) + break; + XER_ADVANCE(ch_size); + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + if(ctx->phase != 1) + break; /* Really unexpected */ + + /* + * Search which inner member corresponds to this tag. + */ + for(edx = 0; edx < td->elements_count; edx++) { + elm = &td->elements[edx]; + tcv = xer_check_tag(buf_ptr,ch_size,elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + edx = td->elements_count; + break; /* Phase out */ + } + break; + } + if(edx != td->elements_count) + continue; + + /* It is expected extension */ + if(specs->ext_start != -1) { + ASN_DEBUG("Got anticipated extension"); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + ctx->phase = 3; /* Terminating */ + } else { + ctx->left = 1; + ctx->phase = 4; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" + " (ph=%d, tag=%s)", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + td->name, ctx->phase, xml_tag); + break; + } + + ctx->phase = 5; /* Phase out, just in case */ + RETURN(RC_FAIL); +} + + +asn_enc_rval_t +CHOICE_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_CHOICE_specifics_t *specs=(asn_CHOICE_specifics_t *)td->specifics; + asn_enc_rval_t er; + int present; + + if(!sptr) + _ASN_ENCODE_FAILED; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + if(present <= 0 || present > td->elements_count) { + _ASN_ENCODE_FAILED; + } else { + asn_enc_rval_t tmper; + asn_TYPE_member_t *elm = &td->elements[present-1]; + void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(!memb_ptr) _ASN_ENCODE_FAILED; + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + } + + er.encoded = 0; + + if(!(flags & XER_F_CANONICAL)) _i_ASN_TEXT_INDENT(1, ilevel); + _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = elm->type->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + + _ASN_CALLBACK3("", 1); + + er.encoded += 5 + (2 * mlen) + tmper.encoded; + } + + if(!(flags & XER_F_CANONICAL)) _i_ASN_TEXT_INDENT(1, ilevel - 1); + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +asn_dec_rval_t +CHOICE_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + asn_per_constraint_t *ct; + asn_TYPE_member_t *elm; /* CHOICE's element */ + void *memb_ptr; + void **memb_ptr2; + void *st = *sptr; + int value; + + if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) + _ASN_DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) _ASN_DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->per_constraints) ct = &td->per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) _ASN_DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) _ASN_DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + _ASN_DECODE_FAILED; + } else { + if(specs->ext_start == -1) + _ASN_DECODE_FAILED; + value = uper_get_nsnnwn(pd); + if(value < 0) _ASN_DECODE_STARVED; + value += specs->ext_start; + if(value >= td->elements_count) + _ASN_DECODE_FAILED; + } + + /* Adjust if canonical order is different from natural order */ + if(specs->canonical_order) + value = specs->canonical_order[value]; + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, + elm->per_constraints, memb_ptr2, pd); + } else { + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->per_constraints, memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_per_constraint_t *ct; + void *memb_ptr; + int present; + int present_enc; + + if(!sptr) _ASN_ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE", td->name); + + if(constraints) ct = &constraints->value; + else if(td->per_constraints) ct = &td->per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present <= 0 || present > td->elements_count) + _ASN_ENCODE_FAILED; + else + present--; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + /* Adjust if canonical order is different from natural order */ + if(specs->canonical_order) + present_enc = specs->canonical_order[present]; + else + present_enc = present; + + if(ct && ct->range_bits >= 0) { + if(present_enc < ct->lower_bound + || present_enc > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 1, 1)) + _ASN_ENCODE_FAILED; + } else { + _ASN_ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) + if(per_put_few_bits(po, 0, 1)) + _ASN_ENCODE_FAILED; + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(!memb_ptr) _ASN_ENCODE_FAILED; + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present_enc, ct->range_bits)) + _ASN_ENCODE_FAILED; + + return elm->type->uper_encoder(elm->type, elm->per_constraints, + memb_ptr, po); + } else { + asn_enc_rval_t rval; + if(specs->ext_start == -1) + _ASN_ENCODE_FAILED; + if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) + _ASN_ENCODE_FAILED; + if(uper_open_type_put(elm->type, elm->per_constraints, + memb_ptr, po)) + _ASN_ENCODE_FAILED; + rval.encoded = 0; + _ASN_ENCODED_OK(rval); + } +} + + +int +CHOICE_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + int present; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + /* + * Print that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Print member's name and stuff */ + if(0) { + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + } + + return elm->type->print_struct(elm->type, memb_ptr, ilevel, + cb, app_key); + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +CHOICE_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { + asn_CHOICE_specifics_t *specs = (asn_CHOICE_specifics_t *)td->specifics; + int present; + + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as CHOICE", td->name); + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + /* + * Free that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)ptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)ptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + if(!contents_only) { + FREEMEM(ptr); + } +} + + +/* + * The following functions functions offer protection against -fshort-enums, + * compatible with little- and big-endian machines. + * If assertion is triggered, either disable -fshort-enums, or add an entry + * here with the ->pres_size of your target stracture. + * Unless the target structure is packed, the ".present" member + * is guaranteed to be aligned properly. ASN.1 compiler itself does not + * produce packed code. + */ +static int +_fetch_present_idx(const void *struct_ptr, int pres_offset, int pres_size) { + const void *present_ptr; + int present; + + present_ptr = ((const char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): present = *(const int *)present_ptr; break; + case sizeof(short): present = *(const short *)present_ptr; break; + case sizeof(char): present = *(const char *)present_ptr; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + return 0; /* If not aborted, pass back safe value */ + } + + return present; +} + +static void +_set_present_idx(void *struct_ptr, int pres_offset, int pres_size, int present) { + void *present_ptr; + present_ptr = ((char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): *(int *)present_ptr = present; break; + case sizeof(short): *(short *)present_ptr = present; break; + case sizeof(char): *(char *)present_ptr = present; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + } +} diff --git a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c new file mode 100644 index 000000000..c405a18f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE.c @@ -0,0 +1,1422 @@ +/*- + * Copyright (c) 2003, 2004, 2005, 2006, 2007 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ( ((memb_idx) > (specs)->ext_after) \ + &&((memb_idx) < (specs)->ext_before)) + + +/* + * Tags are canonically sorted in the tag2element map. + */ +static int +_t2e_cmp(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) { + if(a->el_no > b->el_no) + return 1; + /* + * Important: we do not check + * for a->el_no <= b->el_no! + */ + return 0; + } else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + + +/* + * The decoder of the SEQUENCE type. + */ +asn_dec_rval_t +SEQUENCE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + asn_SEQUENCE_specifics_t *specs = (asn_SEQUENCE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + int edx; /* SEQUENCE element's index */ + + ASN_DEBUG("Decoding %s as SEQUENCE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Substracted below! */ + ADVANCE(rval.consumed); + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next member from the list of + * this structure's elements. + * (ctx->step) stores the member being processed + * between invocations and the microphase {0,1} of parsing + * that member: + * step = ( * 2 + ). + */ + for(edx = (ctx->step >> 1); edx < td->elements_count; + edx++, ctx->step = (ctx->step & ~1) + 2) { + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + ssize_t tag_len; /* Length of TLV's T */ + int opt_edx_end; /* Next non-optional element */ + int use_bsearch; + int n; + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + ASN_DEBUG("In %s SEQUENCE left %d, edx=%d flags=%d" + " opt=%d ec=%d", + td->name, (int)ctx->left, edx, + elements[edx].flags, elements[edx].optional, + td->elements_count); + + if(ctx->left == 0 /* No more stuff is expected */ + && ( + /* Explicit OPTIONAL specification reaches the end */ + (edx + elements[edx].optional + == td->elements_count) + || + /* All extensions are optional */ + (IN_EXTENSION_GROUP(specs, edx) + && specs->ext_before > td->elements_count) + ) + ) { + ASN_DEBUG("End of SEQUENCE %s", td->name); + /* + * Found the legitimate end of the structure. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("Current tag in %s SEQUENCE for element %d " + "(%s) is %s encoded in %d bytes, of frame %ld", + td->name, edx, elements[edx].name, + ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + ASN_DEBUG("edx = %d, opt = %d, ec=%d", + edx, elements[edx].optional, + td->elements_count); + if((edx + elements[edx].optional + == td->elements_count) + || (IN_EXTENSION_GROUP(specs, edx) + && specs->ext_before + > td->elements_count)) { + /* + * Yeah, baby! Found the terminator + * of the indefinite length structure. + */ + /* + * Proceed to the canonical + * finalization function. + * No advancing is necessary. + */ + goto phase3; + } + } + } + + /* + * Find the next available type with this tag. + */ + use_bsearch = 0; + opt_edx_end = edx + elements[edx].optional + 1; + if(opt_edx_end > td->elements_count) + opt_edx_end = td->elements_count; /* Cap */ + else if(opt_edx_end - edx > 8) { + /* Limit the scope of linear search... */ + opt_edx_end = edx + 8; + use_bsearch = 1; + /* ... and resort to bsearch() */ + } + for(n = edx; n < opt_edx_end; n++) { + if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { + /* + * Found element corresponding to the tag + * being looked at. + * Reposition over the right element. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].flags & ATF_OPEN_TYPE) { + /* + * This is the ANY type, which may bear + * any flag whatsoever. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].tag == (ber_tlv_tag_t)-1) { + use_bsearch = 1; + break; + } + } + if(use_bsearch) { + /* + * Resort to a binary search over + * sorted array of tags. + */ + asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key; + key.el_tag = tlv_tag; + key.el_no = edx; + t2m = (asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _t2e_cmp); + if(t2m) { + asn_TYPE_tag2member_t *best = 0; + asn_TYPE_tag2member_t *t2m_f, *t2m_l; + int edx_max = edx + elements[edx].optional; + /* + * Rewind to the first element with that tag, + * `cause bsearch() does not guarantee order. + */ + t2m_f = t2m + t2m->toff_first; + t2m_l = t2m + t2m->toff_last; + for(t2m = t2m_f; t2m <= t2m_l; t2m++) { + if(t2m->el_no > edx_max) break; + if(t2m->el_no < edx) continue; + best = t2m; + } + if(best) { + edx = best->el_no; + ctx->step = 1 + 2 * edx; + goto microphase2; + } + } + n = opt_edx_end; + } + if(n == opt_edx_end) { + /* + * If tag is unknown, it may be either + * an unknown (thus, incorrect) tag, + * or an extension (...), + * or an end of the indefinite-length structure. + */ + if(!IN_EXTENSION_GROUP(specs, + edx + elements[edx].optional)) { + ASN_DEBUG("Unexpected tag %s (at %d)", + ber_tlv_tag_string(tlv_tag), edx); + ASN_DEBUG("Expected tag %s (%s)%s", + ber_tlv_tag_string(elements[edx].tag), + elements[edx].name, + elements[edx].optional + ?" or alternatives":""); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + edx += elements[edx].optional; + + ASN_DEBUG("Skipping unexpected %s (at %d)", + ber_tlv_tag_string(tlv_tag), edx); + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + ASN_DEBUG("Skip length %d in %s", + (int)skip, td->name); + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + ctx->step -= 2; + edx--; + continue; /* Try again with the next tag */ + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elements[edx].flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elements[edx].memb_offset; + memb_ptr2 = &memb_ptr; + } + /* + * Invoke the member fetch routine according to member's type + */ + rval = elements[edx].type->ber_decoder(opt_codec_ctx, + elements[edx].type, + memb_ptr2, ptr, LEFT, + elements[edx].tag_mode); + ASN_DEBUG("In %s SEQUENCE decoded %d %s of %d " + "in %d bytes rval.code %d, size=%d", + td->name, edx, elements[edx].type->name, + (int)LEFT, (int)rval.consumed, rval.code, (int)size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", + (long)ctx->left, (long)size); + /* Fall through */ + case RC_FAIL: /* Fatal error */ + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all structure members) */ + + phase3: + ctx->phase = 3; + case 3: /* 00 and other tags expected */ + case 4: /* only 00's expected */ + + ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", + td->name, (long)ctx->left, (long)size); + + /* + * Skip everything until the end of the SEQUENCE. + */ + while(ctx->left) { + ssize_t tl, ll; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * If expected <0><0>... + */ + if(ctx->left < 0 + && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + ctx->phase = 4; + continue; + } + } + + if(!IN_EXTENSION_GROUP(specs, td->elements_count) + || ctx->phase == 4) { + ASN_DEBUG("Unexpected continuation " + "of a non-extensible type " + "%s (SEQUENCE): %s", + td->name, + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tl, LEFT - tl); + switch(ll) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(tl + ll); + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + + +/* + * The DER encoder of the SEQUENCE type. + */ +asn_enc_rval_t +SEQUENCE_encode_der(asn_TYPE_descriptor_t *td, + void *sptr, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t computed_size = 0; + asn_enc_rval_t erval; + ssize_t ret; + int edx; + + ASN_DEBUG("%s %s as SEQUENCE", + cb?"Encoding":"Estimating", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) continue; + /* Mandatory element is missing */ + _ASN_ENCODE_FAILED; + } + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + } + erval = elm->type->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + ASN_DEBUG("Member %d %s estimated %ld bytes", + edx, elm->name, (long)erval.encoded); + } + + /* + * Encode the TLV for the sequence itself. + */ + ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); + if(ret == -1) + _ASN_ENCODE_FAILED; + erval.encoded = computed_size + ret; + + if(!cb) _ASN_ENCODED_OK(erval); + + /* + * Encode all members. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t tmperval; + void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(!memb_ptr) continue; + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + } + tmperval = elm->type->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, + cb, app_key); + if(tmperval.encoded == -1) + return tmperval; + computed_size -= tmperval.encoded; + ASN_DEBUG("Member %d %s of SEQUENCE %s encoded in %ld bytes", + edx, elm->name, td->name, (long)tmperval.encoded); + } + + if(computed_size != 0) + /* + * Encoded size is not equal to the computed size. + */ + _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(erval); +} + + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + buf_ptr = ((const char *)buf_ptr) + num;\ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SEQUENCE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + asn_SEQUENCE_specifics_t *specs + = (asn_SEQUENCE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + int edx; /* Element index */ + int edx_end; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Skipping unknown extensions. + * Phase 4: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 3;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + int n; + + /* + * Go inside the inner member of a sequence. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Invoke the inner type decoder, m.b. multiple times */ + tmprval = elm->type->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + buf_ptr, size); + XER_ADVANCE(tmprval.consumed); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 1; /* Back to body processing */ + ctx->step = ++edx; + ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", + ctx->phase, ctx->step); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, + &ch_type); + switch(ch_size) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + default: + switch(ch_type) { + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", + tcv, ctx->phase, xml_tag); + + /* Skip the extensions section */ + if(ctx->phase == 3) { + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 4; + RETURN(RC_FAIL); + case 0: + XER_ADVANCE(ch_size); + continue; + case 1: + XER_ADVANCE(ch_size); + ctx->phase = 1; + continue; + case 2: + ctx->phase = 1; + break; + } + } + + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + if(edx >= td->elements_count + || + /* Explicit OPTIONAL specs reaches the end */ + (edx + elements[edx].optional + == td->elements_count) + || + /* All extensions are optional */ + (IN_EXTENSION_GROUP(specs, edx) + && specs->ext_before + > td->elements_count) + ) { + XER_ADVANCE(ch_size); + ctx->phase = 4; /* Phase out */ + RETURN(RC_OK); + } else { + ASN_DEBUG("Premature end of XER SEQUENCE"); + RETURN(RC_FAIL); + } + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%d", + tcv, ctx->phase, edx); + if(ctx->phase != 1) { + break; /* Really unexpected */ + } + + if(edx < td->elements_count) { + /* + * Search which member corresponds to this tag. + */ + edx_end = edx + elements[edx].optional + 1; + if(edx_end > td->elements_count) + edx_end = td->elements_count; + for(n = edx; n < edx_end; n++) { + elm = &td->elements[n]; + tcv = xer_check_tag(buf_ptr, + ch_size, elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx = n; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + n = edx_end; + break; /* Phase out */ + } + break; + } + if(n != edx_end) + continue; + } else { + ASN_DEBUG("Out of defined members: %d/%d", + edx, td->elements_count); + } + + /* It is expected extension */ + if(IN_EXTENSION_GROUP(specs, + edx + (edx < td->elements_count + ? elements[edx].optional : 0))) { + ASN_DEBUG("Got anticipated extension at %d", + edx); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + } else { + ctx->left = 1; + ctx->phase = 3; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", + size>0?((const char *)buf_ptr)[0]:'.', + size>1?((const char *)buf_ptr)[1]:'.', + size>2?((const char *)buf_ptr)[2]:'.', + size>3?((const char *)buf_ptr)[3]:'.', + size>4?((const char *)buf_ptr)[4]:'.', + size>5?((const char *)buf_ptr)[5]:'.'); + break; + } + + ctx->phase = 4; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +SEQUENCE_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er; + int xcan = (flags & XER_F_CANONICAL); + int edx; + + if(!sptr) + _ASN_ENCODE_FAILED; + + er.encoded = 0; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_enc_rval_t tmper; + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + continue; + /* Mandatory element is missing */ + _ASN_ENCODE_FAILED; + } + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + } + + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); + _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + + /* Print the member itself */ + tmper = elm->type->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + + _ASN_CALLBACK3("", 1); + er.encoded += 5 + (2 * mlen) + tmper.encoded; + } + + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +int +SEQUENCE_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + int edx; + int ret; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) continue; + /* Print line */ + /* Fall through */ + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Indentation */ + _i_INDENT(1); + + /* Print the member's name and stuff */ + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + + /* Print the member itself */ + ret = elm->type->print_struct(elm->type, memb_ptr, ilevel + 1, + cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} + +void +SEQUENCE_free(asn_TYPE_descriptor_t *td, void *sptr, int contents_only) { + int edx; + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as SEQUENCE", td->name); + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + if(!contents_only) { + FREEMEM(sptr); + } +} + +int +SEQUENCE_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + int edx; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Iterate over structure members and check their validity. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + continue; + _ASN_CTFAIL(app_key, td, sptr, + "%s: mandatory element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->memb_constraints) { + int ret = elm->memb_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + if(ret) return ret; + } else { + int ret = elm->type->check_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + if(ret) return ret; + /* + * Cannot inherit it earlier: + * need to make sure we get the updated version. + */ + elm->memb_constraints = elm->type->check_constraints; + } + } + + return 0; +} + +asn_dec_rval_t +SEQUENCE_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_SEQUENCE_specifics_t *specs = (asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + int edx; + + (void)constraints; + + if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) + _ASN_DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) _ASN_DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); + + /* Handle extensions */ + if(specs->ext_before >= 0) { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) _ASN_DECODE_STARVED; + } else { + extpresent = 0; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) _ASN_DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + _ASN_DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value) { + /* Fill-in DEFAULT */ + if(elm->default_value(1, memb_ptr2)) { + FREEMEM(opres); + _ASN_DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member %s in %s", elm->name, td->name); + rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, + elm->per_constraints, memb_ptr2, pd); + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = uper_get_nslength(pd); + if(bmlength < 0) _ASN_DECODE_STARVED; + + ASN_DEBUG("Extensions %ld present in %s", (long)bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) _ASN_DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) + _ASN_DECODE_STARVED; + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", + td->name, (long)bmlength, *epres); + + /* Go over extensions and read them in */ + for(edx = specs->ext_after + 1; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%d is not extension", edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->per_constraints, memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: break; + case 0: continue; + default: + if(uper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + _ASN_DECODE_STARVED; + } + } + break; + } + + FREEMEM(epres); + } + + /* Fill DEFAULT members in extensions */ + for(edx = specs->roms_count; edx < specs->roms_count + + specs->aoms_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void **memb_ptr2; /* Pointer to member pointer */ + + if(!elm->default_value) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value(1, memb_ptr2)) { + _ASN_DECODE_FAILED; + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE_handle_extensions(asn_TYPE_descriptor_t *td, void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + asn_SEQUENCE_specifics_t *specs + = (asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + int edx; + + if(specs->ext_before < 0) + return 0; + + /* Find out which extensions are present */ + for(edx = specs->ext_after + 1; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%s (@%d) is not extension", elm->type->name, edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s (@%d) present => %d", + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) + return -1; + /* Encode as open type field */ + if(po2 && present && uper_open_type_put(elm->type, + elm->per_constraints, *memb_ptr2, po2)) + return -1; + + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_SEQUENCE_specifics_t *specs + = (asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er; + int n_extensions; + int edx; + int i; + + (void)constraints; + + if(!sptr) + _ASN_ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); + + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->ext_before >= 0) { + n_extensions = SEQUENCE_handle_extensions(td, sptr, 0, 0); + per_put_few_bits(po, n_extensions ? 1 : 0, 1); + } else { + n_extensions = 0; /* There are no extensions to encode */ + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value + && elm->default_value(0, memb_ptr2) == 1) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + _ASN_ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("ext_after = %d, ec = %d, eb = %d", specs->ext_after, td->elements_count, specs->ext_before); + for(edx = 0; edx < ((specs->ext_after < 0) + ? td->elements_count : specs->ext_before - 1); edx++) { + + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %d not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + _ASN_ENCODE_FAILED; + } + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value && elm->default_value(0, memb_ptr2) == 1) + continue; + + ASN_DEBUG("Encoding %s->%s", td->name, elm->name); + er = elm->type->uper_encoder(elm->type, elm->per_constraints, + *memb_ptr2, po); + if(er.encoded == -1) + return er; + } + + /* No extensions to encode */ + if(!n_extensions) _ASN_ENCODED_OK(er); + + ASN_DEBUG("Length of %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(uper_put_nslength(po, n_extensions)) + _ASN_ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE_handle_extensions(td, sptr, po, 0) != n_extensions) + _ASN_ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE_handle_extensions(td, sptr, 0, po) != n_extensions) + _ASN_ENCODE_FAILED; + + _ASN_ENCODED_OK(er); +} + diff --git a/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c new file mode 100644 index 000000000..aa101176d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constr_SEQUENCE_OF.c @@ -0,0 +1,208 @@ +/*- + * Copyright (c) 2003, 2004, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The DER encoder of the SEQUENCE OF type. + */ +asn_enc_rval_t +SEQUENCE_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_sequence_ *list = _A_SEQUENCE_FROM_VOID(ptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + asn_enc_rval_t erval; + int edx; + + ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, + cb, app_key); + if(encoding_size == -1) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + computed_size += encoding_size; + if(!cb) { + erval.encoded = computed_size; + _ASN_ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + encoding_size += erval.encoded; + } + + if(computed_size != (size_t)encoding_size) { + /* + * Encoded size is not equal to the computed size. + */ + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + } else { + erval.encoded = computed_size; + erval.structure_ptr = 0; + erval.failed_type = 0; + } + + return erval; +} + +asn_enc_rval_t +SEQUENCE_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er; + asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_sequence_ *list = _A_SEQUENCE_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + unsigned int mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + int i; + + if(!sptr) _ASN_ENCODE_FAILED; + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper; + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(mname) { + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); + _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + tmper = elm->type->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel + 1); + _ASN_CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + _ASN_CALLBACK3("", 1); + er.encoded += 5; + } + + er.encoded += (2 * mlen) + tmper.encoded; + } + + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +asn_enc_rval_t +SEQUENCE_OF_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + asn_anonymous_sequence_ *list; + asn_per_constraint_t *ct; + asn_enc_rval_t er; + asn_TYPE_member_t *elm = td->elements; + int seq; + + if(!sptr) _ASN_ENCODE_FAILED; + list = _A_SEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->per_constraints) ct = &td->per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = (list->count < ct->lower_bound + || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", + ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) + _ASN_ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) + _ASN_ENCODE_FAILED; + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + _ASN_ENCODE_FAILED; + } + + for(seq = -1; seq < list->count;) { + ssize_t mayEncode; + if(seq < 0) seq = 0; + if(ct && ct->effective_bits >= 0) { + mayEncode = list->count; + } else { + mayEncode = uper_put_length(po, list->count - seq); + if(mayEncode < 0) _ASN_ENCODE_FAILED; + } + + while(mayEncode--) { + void *memb_ptr = list->array[seq++]; + if(!memb_ptr) _ASN_ENCODE_FAILED; + er = elm->type->uper_encoder(elm->type, + elm->per_constraints, memb_ptr, po); + if(er.encoded == -1) + _ASN_ENCODE_FAILED; + } + } + + _ASN_ENCODED_OK(er); +} + diff --git a/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c b/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c new file mode 100644 index 000000000..b68d7ca1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constr_SET_OF.c @@ -0,0 +1,953 @@ +/*- + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num;\ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * The decoder of the SET OF type. + */ +asn_dec_rval_t +SET_OF_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; + asn_TYPE_member_t *elm = td->elements; /* Single one */ + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as SET OF", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Substracted below! */ + ADVANCE(rval.consumed); + + ASN_DEBUG("Structure consumes %ld bytes, " + "buffer %ld", (long)ctx->left, (long)size); + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next item. + */ + for(;; ctx->step = 0) { + ssize_t tag_len; /* Length of TLV's T */ + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + + if(ctx->left == 0) { + ASN_DEBUG("End of SET OF %s", td->name); + /* + * No more things to decode. + * Exit out of here. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Found the terminator of the + * indefinite length structure. + */ + break; + } + } + + /* Outmost tag may be unknown and cannot be fetched/compared */ + if(elm->tag != (ber_tlv_tag_t)-1) { + if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { + /* + * The new list member of expected type has arrived. + */ + } else { + ASN_DEBUG("Unexpected tag %s fixed SET OF %s", + ber_tlv_tag_string(tlv_tag), td->name); + ASN_DEBUG("%s SET OF has tag %s", + td->name, ber_tlv_tag_string(elm->tag)); + RETURN(RC_FAIL); + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->ber_decoder(opt_codec_ctx, + elm->type, &ctx->ptr, ptr, LEFT, 0); + ASN_DEBUG("In %s SET OF %s code %d consumed %d", + td->name, elm->type->name, + rval.code, (int)rval.consumed); + switch(rval.code) { + case RC_OK: + { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + else + ctx->ptr = 0; + } + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + /* Fall through */ + case RC_FAIL: /* Fatal error */ + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all list members) */ + + NEXT_PHASE(ctx); + case 2: + /* + * Read in all "end of content" TLVs. + */ + while(ctx->left < 0) { + if(LEFT < 2) { + if(LEFT > 0 && ((const char *)ptr)[0] != 0) { + /* Unexpected tag */ + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } + if(((const char *)ptr)[0] == 0 + && ((const char *)ptr)[1] == 0) { + ADVANCE(2); + ctx->left++; + } else { + RETURN(RC_FAIL); + } + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + +/* + * Internally visible buffer holding a single encoded element. + */ +struct _el_buffer { + uint8_t *buf; + size_t length; + size_t size; +}; +/* Append bytes to the above structure */ +static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { + struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; + + if(el_buf->length + size > el_buf->size) + return -1; + + memcpy(el_buf->buf + el_buf->length, buffer, size); + + el_buf->length += size; + return 0; +} +static int _el_buf_cmp(const void *ap, const void *bp) { + const struct _el_buffer *a = (const struct _el_buffer *)ap; + const struct _el_buffer *b = (const struct _el_buffer *)bp; + int ret; + size_t common_len; + + if(a->length < b->length) + common_len = a->length; + else + common_len = b->length; + + ret = memcmp(a->buf, b->buf, common_len); + if(ret == 0) { + if(a->length < b->length) + ret = -1; + else if(a->length > b->length) + ret = 1; + } + + return ret; +} + +/* + * The DER encoder of the SET OF type. + */ +asn_enc_rval_t +SET_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + asn_TYPE_descriptor_t *elm_type = elm->type; + der_type_encoder_f *der_encoder = elm_type->der_encoder; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + struct _el_buffer *encoded_els; + ssize_t eels_count = 0; + size_t max_encoded_len = 1; + asn_enc_rval_t erval; + int ret; + int edx; + + ASN_DEBUG("Estimating size for SET OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = der_encoder(elm_type, memb_ptr, 0, elm->tag, 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + + /* Compute maximum encoding's size */ + if(max_encoded_len < (size_t)erval.encoded) + max_encoded_len = erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, + cb, app_key); + if(encoding_size == -1) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + computed_size += encoding_size; + + if(!cb || list->count == 0) { + erval.encoded = computed_size; + _ASN_ENCODED_OK(erval); + } + + /* + * DER mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the + * encoded elements. + */ + encoded_els = (struct _el_buffer *)MALLOC( + list->count * sizeof(encoded_els[0])); + if(encoded_els == NULL) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + ASN_DEBUG("Encoding members of %s SET OF", td->name); + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + struct _el_buffer *encoded_el = &encoded_els[eels_count]; + + if(!memb_ptr) continue; + + /* + * Prepare space for encoding. + */ + encoded_el->buf = (uint8_t *)MALLOC(max_encoded_len); + if(encoded_el->buf) { + encoded_el->length = 0; + encoded_el->size = max_encoded_len; + } else { + for(edx--; edx >= 0; edx--) + FREEMEM(encoded_els[edx].buf); + FREEMEM(encoded_els); + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + /* + * Encode the member into the prepared space. + */ + erval = der_encoder(elm_type, memb_ptr, 0, elm->tag, + _el_addbytes, encoded_el); + if(erval.encoded == -1) { + for(; edx >= 0; edx--) + FREEMEM(encoded_els[edx].buf); + FREEMEM(encoded_els); + return erval; + } + encoding_size += erval.encoded; + eels_count++; + } + + /* + * Sort the encoded elements according to their encoding. + */ + qsort(encoded_els, eels_count, sizeof(encoded_els[0]), _el_buf_cmp); + + /* + * Report encoded elements to the application. + * Dispose of temporary sorted members table. + */ + ret = 0; + for(edx = 0; edx < eels_count; edx++) { + struct _el_buffer *encoded_el = &encoded_els[edx]; + /* Report encoded chunks to the application */ + if(ret == 0 + && cb(encoded_el->buf, encoded_el->length, app_key) < 0) + ret = -1; + FREEMEM(encoded_el->buf); + } + FREEMEM(encoded_els); + + if(ret || computed_size != (size_t)encoding_size) { + /* + * Standard callback failed, or + * encoded size is not equal to the computed size. + */ + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + } else { + erval.encoded = computed_size; + } + + _ASN_ENCODED_OK(erval); +} + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + buf_ptr = ((const char *)buf_ptr) + num;\ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SET_OF_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const char *opt_mname, + const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; + asn_TYPE_member_t *element = td->elements; + const char *elm_tag; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* Which tag is expected for the downstream */ + if(specs->as_XMLValueList) { + elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; + } else { + elm_tag = (*element->name) + ? element->name : element->type->xml_tag; + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + */ + for(; ctx->phase <= 2;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Go inside the inner member of a set. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + + /* Invoke the inner type decoder, m.b. multiple times */ + ASN_DEBUG("XER/SET OF element [%s]", elm_tag); + tmprval = element->type->xer_decoder(opt_codec_ctx, + element->type, &ctx->ptr, elm_tag, + buf_ptr, size); + if(tmprval.code == RC_OK) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + ctx->ptr = 0; + XER_ADVANCE(tmprval.consumed); + } else { + XER_ADVANCE(tmprval.consumed); + RETURN(tmprval.code); + } + ctx->phase = 1; /* Back to body processing */ + ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, + buf_ptr, size, &ch_type); + switch(ch_size) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + default: + switch(ch_type) { + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", + tcv, ctx->phase, xml_tag); + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + /* No more things to decode */ + XER_ADVANCE(ch_size); + ctx->phase = 3; /* Phase out */ + RETURN(RC_OK); + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); + if(ctx->phase == 1) { + /* + * Process a single possible member. + */ + ctx->phase = 2; + continue; + } + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SET OF"); + break; + } + + ctx->phase = 3; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + + + +typedef struct xer_tmp_enc_s { + void *buffer; + size_t offset; + size_t size; +} xer_tmp_enc_t; +static int +SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { + xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; + if(t->offset + size >= t->size) { + size_t newsize = (t->size << 2) + size; + void *p = REALLOC(t->buffer, newsize); + if(!p) return -1; + t->buffer = p; + t->size = newsize; + } + memcpy((char *)t->buffer + t->offset, buffer, size); + t->offset += size; + return 0; +} +static int +SET_OF_xer_order(const void *aptr, const void *bptr) { + const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; + const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; + size_t minlen = a->offset; + int ret; + if(b->offset < minlen) minlen = b->offset; + /* Well-formed UTF-8 has this nice lexicographical property... */ + ret = memcmp(a->buffer, b->buffer, minlen); + if(ret != 0) return ret; + if(a->offset == b->offset) + return 0; + if(a->offset == minlen) + return -1; + return 1; +} + + +asn_enc_rval_t +SET_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er; + asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + xer_tmp_enc_t *encs = 0; + size_t encs_count = 0; + void *original_app_key = app_key; + asn_app_consume_bytes_f *original_cb = cb; + int i; + + if(!sptr) _ASN_ENCODE_FAILED; + + if(xcan) { + encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); + if(!encs) _ASN_ENCODE_FAILED; + cb = SET_OF_encode_xer_callback; + } + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper; + + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(encs) { + memset(&encs[encs_count], 0, sizeof(encs[0])); + app_key = &encs[encs_count]; + encs_count++; + } + + if(mname) { + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel); + _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + if(!xcan && specs->as_XMLValueList == 1) + _i_ASN_TEXT_INDENT(1, ilevel + 1); + tmper = elm->type->xer_encoder(elm->type, memb_ptr, + ilevel + (specs->as_XMLValueList != 2), + flags, cb, app_key); + if(tmper.encoded == -1) { + td = tmper.failed_type; + sptr = tmper.structure_ptr; + goto cb_failed; + } + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + _ASN_CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + _ASN_CALLBACK3("", 1); + er.encoded += 5; + } + + er.encoded += (2 * mlen) + tmper.encoded; + } + + if(!xcan) _i_ASN_TEXT_INDENT(1, ilevel - 1); + + if(encs) { + xer_tmp_enc_t *enc = encs; + xer_tmp_enc_t *end = encs + encs_count; + ssize_t control_size = 0; + + cb = original_cb; + app_key = original_app_key; + qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); + + for(; enc < end; enc++) { + _ASN_CALLBACK(enc->buffer, enc->offset); + FREEMEM(enc->buffer); + enc->buffer = 0; + control_size += enc->offset; + } + assert(control_size == er.encoded); + } + + goto cleanup; +cb_failed: + er.encoded = -1; + er.failed_type = td; + er.structure_ptr = sptr; +cleanup: + if(encs) { + while(encs_count-- > 0) { + if(encs[encs_count].buffer) + FREEMEM(encs[encs_count].buffer); + } + FREEMEM(encs); + } + _ASN_ENCODED_OK(er); +} + +int +SET_OF_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int ret; + int i; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + _i_INDENT(1); + + ret = elm->type->print_struct(elm->type, memb_ptr, + ilevel + 1, cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} + +void +SET_OF_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { + if(td && ptr) { + asn_SET_OF_specifics_t *specs; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); + asn_struct_ctx_t *ctx; /* Decoder context */ + int i; + + /* + * Could not use set_of_empty() because of (*free) + * incompatibility. + */ + for(i = 0; i < list->count; i++) { + void *memb_ptr = list->array[i]; + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } + list->count = 0; /* No meaningful elements left */ + + asn_set_empty(list); /* Remove (list->array) */ + + specs = (asn_SET_OF_specifics_t *)td->specifics; + ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); + if(ctx->ptr) { + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + } + + if(!contents_only) { + FREEMEM(ptr); + } + } +} + +int +SET_OF_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + asn_constr_check_f *constr; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int i; + + if(!sptr) { + _ASN_CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + constr = elm->memb_constraints; + if(!constr) constr = elm->type->check_constraints; + + /* + * Iterate over the members of an array. + * Validate each in turn, until one fails. + */ + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + int ret; + + if(!memb_ptr) continue; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + /* + * Cannot inherit it eralier: + * need to make sure we get the updated version. + */ + if(!elm->memb_constraints) + elm->memb_constraints = elm->type->check_constraints; + + return 0; +} + +asn_dec_rval_t +SET_OF_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + asn_SET_OF_specifics_t *specs = (asn_SET_OF_specifics_t *)td->specifics; + asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(_ASN_STACK_OVERFLOW_CHECK(opt_codec_ctx)) + _ASN_DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) _ASN_DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->per_constraints) ct = &td->per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) _ASN_DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = per_get_few_bits(pd, ct->effective_bits); + ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", + (long)nelems, ct->lower_bound, td->name); + if(nelems < 0) _ASN_DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + nelems = uper_get_length(pd, + ct ? ct->effective_bits : -1, &repeat); + ASN_DEBUG("Got to decode %d elements (eff %d)", + (int)nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) _ASN_DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->uper_decoder(opt_codec_ctx, elm->type, + elm->per_constraints, &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) + continue; + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + diff --git a/src/tmx/Asn_J2735/src/r41/constr_TYPE.c b/src/tmx/Asn_J2735/src/r41/constr_TYPE.c new file mode 100644 index 000000000..4bc88d44f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constr_TYPE.c @@ -0,0 +1,77 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Version of the ASN.1 infrastructure shipped with compiler. + */ +int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } + +static asn_app_consume_bytes_f _print2fp; + +/* + * Return the outmost tag of the type. + */ +ber_tlv_tag_t +asn_TYPE_outmost_tag(asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { + + if(tag_mode) + return tag; + + if(type_descriptor->tags_count) + return type_descriptor->tags[0]; + + return type_descriptor->outmost_tag(type_descriptor, struct_ptr, 0, 0); +} + +/* + * Print the target language's structure in human readable form. + */ +int +asn_fprint(FILE *stream, asn_TYPE_descriptor_t *td, const void *struct_ptr) { + if(!stream) stream = stdout; + if(!td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + /* Invoke type-specific printer */ + if(td->print_struct(td, struct_ptr, 1, _print2fp, stream)) + return -1; + + /* Terminate the output */ + if(_print2fp("\n", 1, stream)) + return -1; + + return fflush(stream); +} + +/* Dump the data into the specified stdio stream */ +static int +_print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + + +/* + * Some compilers do not support variable args macros. + * This function is a replacement of ASN_DEBUG() macro. + */ +void ASN_DEBUG_f(const char *fmt, ...); +void ASN_DEBUG_f(const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} diff --git a/src/tmx/Asn_J2735/src/r41/constraints.c b/src/tmx/Asn_J2735/src/r41/constraints.c new file mode 100644 index 000000000..1bdda73e5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/constraints.c @@ -0,0 +1,93 @@ +#include "asn_internal.h" +#include "constraints.h" + +int +asn_generic_no_constraint(asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, asn_app_constraint_failed_f *cb, void *key) { + + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Nothing to check */ + return 0; +} + +int +asn_generic_unknown_constraint(asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, asn_app_constraint_failed_f *cb, void *key) { + + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Unknown how to check */ + return 0; +} + +struct errbufDesc { + asn_TYPE_descriptor_t *failed_type; + const void *failed_struct_ptr; + char *errbuf; + size_t errlen; +}; + +static void +_asn_i_ctfailcb(void *key, asn_TYPE_descriptor_t *td, const void *sptr, const char *fmt, ...) { + struct errbufDesc *arg = key; + va_list ap; + ssize_t vlen; + ssize_t maxlen; + + arg->failed_type = td; + arg->failed_struct_ptr = sptr; + + maxlen = arg->errlen; + if(maxlen <= 0) + return; + + va_start(ap, fmt); + vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); + va_end(ap); + if(vlen >= maxlen) { + arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ + arg->errlen = maxlen - 1; /* Not counting termination */ + return; + } else if(vlen >= 0) { + arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ + arg->errlen = vlen; /* Not counting termination */ + } else { + /* + * The libc on this system is broken. + */ + vlen = sizeof("") - 1; + maxlen--; + arg->errlen = vlen < maxlen ? vlen : maxlen; + memcpy(arg->errbuf, "", arg->errlen); + arg->errbuf[arg->errlen] = 0; + } + + return; +} + +int +asn_check_constraints(asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, char *errbuf, size_t *errlen) { + struct errbufDesc arg; + int ret; + + arg.failed_type = 0; + arg.failed_struct_ptr = 0; + arg.errbuf = errbuf; + arg.errlen = errlen ? *errlen : 0; + + ret = type_descriptor->check_constraints(type_descriptor, + struct_ptr, _asn_i_ctfailcb, &arg); + if(ret == -1 && errlen) + *errlen = arg.errlen; + + return ret; +} + diff --git a/src/tmx/Asn_J2735/src/r41/der_encoder.c b/src/tmx/Asn_J2735/src/r41/der_encoder.c new file mode 100644 index 000000000..6c859e1b0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/der_encoder.c @@ -0,0 +1,199 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, int constructed); + +/* + * The DER encoder of any type. + */ +asn_enc_rval_t +der_encode(asn_TYPE_descriptor_t *type_descriptor, void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + + ASN_DEBUG("DER encoder invoked for %s", + type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->der_encoder(type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + 0, 0, + consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for der_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the der_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +der_encode_to_buffer(asn_TYPE_descriptor_t *type_descriptor, void *struct_ptr, + void *buffer, size_t buffer_size) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + ec = type_descriptor->der_encoder(type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + 0, 0, encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + return ec; +} + + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t +der_write_tags(asn_TYPE_descriptor_t *sd, + size_t struct_length, + int tag_mode, int last_tag_form, + ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ + asn_app_consume_bytes_f *cb, + void *app_key) { + ber_tlv_tag_t *tags; /* Copy of tags stream */ + int tags_count; /* Number of tags */ + size_t overall_length; + ssize_t *lens; + int i; + + ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", + sd->name, tag_mode, sd->tags_count, + ber_tlv_tag_string(tag), + tag_mode + ?(sd->tags_count+1 + -((tag_mode == -1) && sd->tags_count)) + :sd->tags_count + ); + + if(tag_mode) { + /* + * Instead of doing shaman dance like we do in ber_check_tags(), + * allocate a small array on the stack + * and initialize it appropriately. + */ + int stag_offset; + tags = (ber_tlv_tag_t *)alloca((sd->tags_count + 1) * sizeof(ber_tlv_tag_t)); + if(!tags) { /* Can fail on !x86 */ + errno = ENOMEM; + return -1; + } + tags_count = sd->tags_count + + 1 /* EXPLICIT or IMPLICIT tag is given */ + - ((tag_mode == -1) && sd->tags_count); + /* Copy tags over */ + tags[0] = tag; + stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); + for(i = 1; i < tags_count; i++) + tags[i] = sd->tags[i + stag_offset]; + } else { + tags = sd->tags; + tags_count = sd->tags_count; + } + + /* No tags to write */ + if(tags_count == 0) + return 0; + + lens = (ssize_t *)alloca(tags_count * sizeof(lens[0])); + if(!lens) { + errno = ENOMEM; + return -1; + } + + /* + * Array of tags is initialized. + * Now, compute the size of the TLV pairs, from right to left. + */ + overall_length = struct_length; + for(i = tags_count - 1; i >= 0; --i) { + lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); + if(lens[i] == -1) return -1; + overall_length += lens[i]; + lens[i] = overall_length - lens[i]; + } + + if(!cb) return overall_length - struct_length; + + ASN_DEBUG("%s %s TL sequence (%d elements)", + cb?"Encoding":"Estimating", sd->name, tags_count); + + /* + * Encode the TL sequence for real. + */ + for(i = 0; i < tags_count; i++) { + ssize_t len; + int _constr; + + /* Check if this tag happens to be constructed */ + _constr = (last_tag_form || i < (tags_count - 1)); + + len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); + if(len == -1) return -1; + } + + return overall_length - struct_length; +} + +static ssize_t +der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, + int constructed) { + uint8_t buf[32]; + size_t size = 0; + int buf_size = cb?sizeof(buf):0; + ssize_t tmp; + + /* Serialize tag (T from TLV) into possibly zero-length buffer */ + tmp = ber_tlv_tag_serialize(tag, buf, buf_size); + if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; + size += tmp; + + /* Serialize length (L from TLV) into possibly zero-length buffer */ + tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); + if(tmp == -1) return -1; + size += tmp; + + if(size > sizeof(buf)) + return -1; + + /* + * If callback is specified, invoke it, and check its return value. + */ + if(cb) { + if(constructed) *buf |= 0x20; + if(cb(buf, size, app_key) < 0) + return -1; + } + + return size; +} diff --git a/src/tmx/Asn_J2735/src/r41/per_decoder.c b/src/tmx/Asn_J2735/src/r41/per_decoder.c new file mode 100644 index 000000000..220d7f9f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/per_decoder.c @@ -0,0 +1,93 @@ +#include +#include +#include + +/* + * Decode a "Production of a complete encoding", X.691#10.1. + * The complete encoding contains at least one byte, and is an integral + * multiple of 8 bytes. + */ +asn_dec_rval_t +uper_decode_complete(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +uper_decode(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + _ASN_DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + _ASN_DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->uper_decoder) + _ASN_DECODE_FAILED; /* PER is not compiled in */ + rval = td->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %ld, counted %ld", + (long)rval.consumed, (long)pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} + diff --git a/src/tmx/Asn_J2735/src/r41/per_encoder.c b/src/tmx/Asn_J2735/src/r41/per_encoder.c new file mode 100644 index 000000000..e76ef74a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/per_encoder.c @@ -0,0 +1,151 @@ +#include +#include +#include + +static asn_enc_rval_t uper_encode_internal(asn_TYPE_descriptor_t *td, asn_per_constraints_t *, void *sptr, asn_app_consume_bytes_f *cb, void *app_key); + +asn_enc_rval_t +uper_encode(asn_TYPE_descriptor_t *td, void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { + return uper_encode_internal(td, 0, sptr, cb, app_key); +} + +/* + * Argument type and callback necessary for uper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +uper_encode_to_buffer(asn_TYPE_descriptor_t *td, void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); + + return uper_encode_internal(td, 0, sptr, encode_to_buffer_cb, &key); +} + +typedef struct enc_dyn_arg { + void *buffer; + size_t length; + size_t allocated; +} enc_dyn_arg; +static int +encode_dyn_cb(const void *buffer, size_t size, void *key) { + enc_dyn_arg *arg = key; + if(arg->length + size >= arg->allocated) { + void *p; + arg->allocated = arg->allocated ? (arg->allocated << 2) : size; + p = REALLOC(arg->buffer, arg->allocated); + if(!p) { + FREEMEM(arg->buffer); + memset(arg, 0, sizeof(*arg)); + return -1; + } + arg->buffer = p; + } + memcpy(((char *)arg->buffer) + arg->length, buffer, size); + arg->length += size; + return 0; +} +ssize_t +uper_encode_to_new_buffer(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, void **buffer_r) { + asn_enc_rval_t er; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = uper_encode_internal(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_uper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + return po->outper(po->tmpspace, buf - po->tmpspace, po->op_key); +} + +static asn_enc_rval_t +uper_encode_internal(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->uper_encoder) + _ASN_ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.outper = cb; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->uper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_uper_encode_flush_outp(&po)) + _ASN_ENCODE_FAILED; + } + + return er; +} + diff --git a/src/tmx/Asn_J2735/src/r41/per_opentype.c b/src/tmx/Asn_J2735/src/r41/per_opentype.c new file mode 100644 index 000000000..ec404cf9b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/per_opentype.c @@ -0,0 +1,378 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +typedef struct uper_ugot_key { + asn_per_data_t oldpd; /* Old per data source */ + size_t unclaimed; + size_t ot_moved; /* Number of bits moved by OT processing */ + int repeat; +} uper_ugot_key; + +static int uper_ugot_refill(asn_per_data_t *pd); +static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); +static asn_dec_rval_t uper_sot_suck(asn_codec_ctx_t *, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd); + +/* + * Encode an "open type field". + * #10.1, #10.2 + */ +int +uper_open_type_put(asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + size_t toGo; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + for(bptr = buf, toGo = size; toGo;) { + ssize_t maySave = uper_put_length(po, toGo); + ASN_DEBUG("Prepending length %d to %s and allowing to save %d", + (int)size, td->name, (int)maySave); + if(maySave < 0) break; + if(per_put_many_bits(po, bptr, maySave * 8)) break; + bptr = (char *)bptr + maySave; + toGo -= maySave; + } + + FREEMEM(buf); + if(toGo) return -1; + + ASN_DEBUG("Open type put %s of length %ld + overhead (1byte?)", + td->name, (long)size); + + return 0; +} + +static asn_dec_rval_t +uper_open_type_get_simple(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + _ASN_STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = uper_get_length(pd, -1, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + _ASN_DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + _ASN_DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + _ASN_DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->uper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if ((padding < 8 || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + _ASN_DECODE_FAILED; + } else { + ASN_DEBUG("Non-zero padding"); + _ASN_DECODE_FAILED; + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* Noone would give us more */ + } + + return rv; +} + +static asn_dec_rval_t GCC_NOTUSED +uper_open_type_get_complex(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + uper_ugot_key arg; + asn_dec_rval_t rv; + ssize_t padding; + + _ASN_STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s from %s", td->name, + per_data_string(pd)); + arg.oldpd = *pd; + arg.unclaimed = 0; + arg.ot_moved = 0; + arg.repeat = 1; + pd->refill = uper_ugot_refill; + pd->refill_key = &arg; + pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ + pd->moved = 0; /* This now counts the open type size in bits */ + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->uper_decoder(ctx, td, constraints, sptr, pd); + ASN_DEBUG_INDENT_ADD(-4); + +#define UPDRESTOREPD do { \ + /* buffer and nboff are valid, preserve them. */ \ + pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ + pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ + pd->refill = arg.oldpd.refill; \ + pd->refill_key = arg.oldpd.refill_key; \ + } while(0) + + if(rv.code != RC_OK) { + UPDRESTOREPD; + return rv; + } + + ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, + per_data_string(pd), + per_data_string(&arg.oldpd), + (int)arg.unclaimed, (int)arg.repeat); + + padding = pd->moved % 8; + if(padding) { + int32_t pvalue; + if(padding > 7) { + ASN_DEBUG("Too large padding %d in open type", + (int)padding); + rv.code = RC_FAIL; + UPDRESTOREPD; + return rv; + } + padding = 8 - padding; + ASN_DEBUG("Getting padding of %d bits", (int)padding); + pvalue = per_get_few_bits(pd, padding); + switch(pvalue) { + case -1: + ASN_DEBUG("Padding skip failed"); + UPDRESTOREPD; + _ASN_DECODE_STARVED; + case 0: break; + default: + ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", + (int)padding, (int)pvalue); + UPDRESTOREPD; + _ASN_DECODE_FAILED; + } + } + if(pd->nboff != pd->nbits) { + ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, + per_data_string(pd), per_data_string(&arg.oldpd)); + if(1) { + UPDRESTOREPD; + _ASN_DECODE_FAILED; + } else { + arg.unclaimed += pd->nbits - pd->nboff; + } + } + + /* Adjust pd back so it points to original data */ + UPDRESTOREPD; + + /* Skip data not consumed by the decoder */ + if(arg.unclaimed) { + ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); + switch(per_skip_bits(pd, arg.unclaimed)) { + case -1: + ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); + _ASN_DECODE_STARVED; + case 0: + ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); + break; + default: + /* Padding must be blank */ + ASN_DEBUG("Non-blank unconsumed padding"); + _ASN_DECODE_FAILED; + } + arg.unclaimed = 0; + } + + if(arg.repeat) { + ASN_DEBUG("Not consumed the whole thing"); + rv.code = RC_FAIL; + return rv; + } + + return rv; +} + + +asn_dec_rval_t +uper_open_type_get(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + + return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +uper_open_type_skip(asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_dec_rval_t rv; + + s_td.name = ""; + s_td.uper_decoder = uper_sot_suck; + + rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} + +/* + * Internal functions. + */ + +static asn_dec_rval_t +uper_sot_suck(asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)ctx; + (void)td; + (void)constraints; + (void)sptr; + + while(per_get_few_bits(pd, 24) >= 0); + + rv.code = RC_OK; + rv.consumed = pd->moved; + + return rv; +} + +static int +uper_ugot_refill(asn_per_data_t *pd) { + uper_ugot_key *arg = pd->refill_key; + ssize_t next_chunk_bytes, next_chunk_bits; + ssize_t avail; + + asn_per_data_t *oldpd = &arg->oldpd; + + ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", + (long)pd->moved, (long)oldpd->moved); + + /* Advance our position to where pd is */ + oldpd->buffer = pd->buffer; + oldpd->nboff = pd->nboff; + oldpd->nbits -= pd->moved - arg->ot_moved; + oldpd->moved += pd->moved - arg->ot_moved; + arg->ot_moved = pd->moved; + + if(arg->unclaimed) { + /* Refill the container */ + if(per_get_few_bits(oldpd, 1)) + return -1; + if(oldpd->nboff == 0) { + assert(0); + return -1; + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff - 1; + pd->nbits = oldpd->nbits; + ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", + (long)pd->moved); + return 0; + } + + if(!arg->repeat) { + ASN_DEBUG("Want more but refill doesn't have it"); + return -1; + } + + next_chunk_bytes = uper_get_length(oldpd, -1, &arg->repeat); + ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", + (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); + if(next_chunk_bytes < 0) return -1; + if(next_chunk_bytes == 0) { + pd->refill = 0; /* No more refills, naturally */ + assert(!arg->repeat); /* Implementation guarantee */ + } + next_chunk_bits = next_chunk_bytes << 3; + avail = oldpd->nbits - oldpd->nboff; + if(avail >= next_chunk_bits) { + pd->nbits = oldpd->nboff + next_chunk_bits; + arg->unclaimed = 0; + ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", + (long)next_chunk_bits, (long)oldpd->moved, + (long)oldpd->nboff, (long)oldpd->nbits, + (long)(oldpd->nbits - oldpd->nboff)); + } else { + pd->nbits = oldpd->nbits; + arg->unclaimed = next_chunk_bits - avail; + ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", + (long)avail, (long)next_chunk_bits, + (long)arg->unclaimed); + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff; + ASN_DEBUG("Refilled pd%s old%s", + per_data_string(pd), per_data_string(oldpd)); + return 0; +} + +static int +per_skip_bits(asn_per_data_t *pd, int skip_nbits) { + int hasNonZeroBits = 0; + while(skip_nbits > 0) { + int skip; + + /* per_get_few_bits() is more efficient when nbits <= 24 */ + if(skip_nbits < 24) + skip = skip_nbits; + else + skip = 24; + skip_nbits -= skip; + + switch(per_get_few_bits(pd, skip)) { + case -1: return -1; /* Starving */ + case 0: continue; /* Skipped empty space */ + default: hasNonZeroBits = 1; continue; + } + } + return hasNonZeroBits; +} diff --git a/src/tmx/Asn_J2735/src/r41/per_support.c b/src/tmx/Asn_J2735/src/r41/per_support.c new file mode 100644 index 000000000..0d089f495 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/per_support.c @@ -0,0 +1,483 @@ +/* + * Copyright (c) 2005-2014 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +char * +per_data_string(asn_per_data_t *pd) { + static char buf[2][32]; + static int n; + n = (n+1) % 2; + snprintf(buf[n], sizeof(buf), + "{m=%ld span %+ld[%d..%d] (%d)}", + (long)pd->moved, + (((long)pd->buffer) & 0xf), + (int)pd->nboff, (int)pd->nbits, + (int)(pd->nbits - pd->nboff)); + return buf[n]; +} + +void +per_get_undo(asn_per_data_t *pd, int nbits) { + if((ssize_t)pd->nboff < nbits) { + assert((ssize_t)pd->nboff < nbits); + } else { + pd->nboff -= nbits; + pd->moved -= nbits; + } +} + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + */ +int32_t +per_get_few_bits(asn_per_data_t *pd, int nbits) { + size_t off; /* Next after last bit offset */ + ssize_t nleft; /* Number of bits left in this stream */ + uint32_t accum; + const uint8_t *buf; + + if(nbits < 0) + return -1; + + nleft = pd->nbits - pd->nboff; + if(nbits > nleft) { + int32_t tailv, vhead; + if(!pd->refill || nbits > 31) return -1; + /* Accumulate unused bytes before refill */ + ASN_DEBUG("Obtain the rest %d bits (want %d)", + (int)nleft, (int)nbits); + tailv = per_get_few_bits(pd, nleft); + if(tailv < 0) return -1; + /* Refill (replace pd contents with new data) */ + if(pd->refill(pd)) + return -1; + nbits -= nleft; + vhead = per_get_few_bits(pd, nbits); + /* Combine the rest of previous pd with the head of new one */ + tailv = (tailv << nbits) | vhead; /* Could == -1 */ + return tailv; + } + + /* + * Normalize position indicator. + */ + if(pd->nboff >= 8) { + pd->buffer += (pd->nboff >> 3); + pd->nbits -= (pd->nboff & ~0x07); + pd->nboff &= 0x07; + } + pd->moved += nbits; + pd->nboff += nbits; + off = pd->nboff; + buf = pd->buffer; + + /* + * Extract specified number of bits. + */ + if(off <= 8) + accum = nbits ? (buf[0]) >> (8 - off) : 0; + else if(off <= 16) + accum = ((buf[0] << 8) + buf[1]) >> (16 - off); + else if(off <= 24) + accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); + else if(off <= 31) + accum = ((buf[0] << 24) + (buf[1] << 16) + + (buf[2] << 8) + (buf[3])) >> (32 - off); + else if(nbits <= 31) { + asn_per_data_t tpd = *pd; + /* Here are we with our 31-bits limit plus 1..7 bits offset. */ + per_get_undo(&tpd, nbits); + /* The number of available bits in the stream allow + * for the following operations to take place without + * invoking the ->refill() function */ + accum = per_get_few_bits(&tpd, nbits - 24) << 24; + accum |= per_get_few_bits(&tpd, 24); + } else { + per_get_undo(pd, nbits); + return -1; + } + + accum &= (((uint32_t)1 << nbits) - 1); + + ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", + (int)nbits, (int)nleft, + (int)pd->moved, + (((long)pd->buffer) & 0xf), + (int)pd->nboff, (int)pd->nbits, + pd->buffer[0], + (int)(pd->nbits - pd->nboff), + (int)accum); + + return accum; +} + +/* + * Extract a large number of bits from the specified PER data pointer. + */ +int +per_get_many_bits(asn_per_data_t *pd, uint8_t *dst, int alright, int nbits) { + int32_t value; + + if(alright && (nbits & 7)) { + /* Perform right alignment of a first few bits */ + value = per_get_few_bits(pd, nbits & 0x07); + if(value < 0) return -1; + *dst++ = value; /* value is already right-aligned */ + nbits &= ~7; + } + + while(nbits) { + if(nbits >= 24) { + value = per_get_few_bits(pd, 24); + if(value < 0) return -1; + *(dst++) = value >> 16; + *(dst++) = value >> 8; + *(dst++) = value; + nbits -= 24; + } else { + value = per_get_few_bits(pd, nbits); + if(value < 0) return -1; + if(nbits & 7) { /* implies left alignment */ + value <<= 8 - (nbits & 7), + nbits += 8 - (nbits & 7); + if(nbits > 24) + *dst++ = value >> 24; + } + if(nbits > 16) + *dst++ = value >> 16; + if(nbits > 8) + *dst++ = value >> 8; + *dst++ = value; + break; + } + } + + return 0; +} + +/* + * Get the length "n" from the stream. + */ +ssize_t +uper_get_length(asn_per_data_t *pd, int ebits, int *repeat) { + ssize_t value; + + *repeat = 0; + + if(ebits >= 0) return per_get_few_bits(pd, ebits); + + value = per_get_few_bits(pd, 8); + if(value < 0) return -1; + if((value & 128) == 0) /* #10.9.3.6 */ + return (value & 0x7F); + if((value & 64) == 0) { /* #10.9.3.7 */ + value = ((value & 63) << 8) | per_get_few_bits(pd, 8); + if(value < 0) return -1; + return value; + } + value &= 63; /* this is "m" from X.691, #10.9.3.8 */ + if(value < 1 || value > 4) + return -1; + *repeat = 1; + return (16384 * value); +} + +/* + * Get the normally small length "n". + * This procedure used to decode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +ssize_t +uper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%d", (int)length); + return length; + } else { + int repeat; + length = uper_get_length(pd, -1, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +/* + * Get the normally small non-negative whole number. + * X.691, #10.6 + */ +ssize_t +uper_get_nsnnwn(asn_per_data_t *pd) { + ssize_t value; + + value = per_get_few_bits(pd, 7); + if(value & 64) { /* implicit (value < 0) */ + value &= 63; + value <<= 2; + value |= per_get_few_bits(pd, 2); + if(value & 128) /* implicit (value < 0) */ + return -1; + if(value == 0) + return 0; + if(value >= 3) + return -1; + value = per_get_few_bits(pd, 8 * value); + return value; + } + + return value; +} + +/* + * X.691-11/2008, #11.6 + * Encoding of a normally small non-negative whole number + */ +int +uper_put_nsnnwn(asn_per_outp_t *po, int n) { + int bytes; + + if(n <= 63) { + if(n < 0) return -1; + return per_put_few_bits(po, n, 7); + } + if(n < 256) + bytes = 1; + else if(n < 65536) + bytes = 2; + else if(n < 256 * 65536) + bytes = 3; + else + return -1; /* This is not a "normally small" value */ + if(per_put_few_bits(po, bytes, 8)) + return -1; + + return per_put_few_bits(po, n, 8 * bytes); +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, unsigned long *out_value, int nbits) { + unsigned long lhalf; /* Lower half of the number*/ + long half; + + if(nbits <= 31) { + half = per_get_few_bits(pd, nbits); + if(half < 0) return -1; + *out_value = half; + return 0; + } + + if((size_t)nbits > 8 * sizeof(*out_value)) + return -1; /* RANGE */ + + half = per_get_few_bits(pd, 31); + if(half < 0) return -1; + + if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) + return -1; + + *out_value = ((unsigned long)half << (nbits - 31)) | lhalf; + return 0; +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int uper_put_constrained_whole_number_s(asn_per_outp_t *po, long v, int nbits) { + /* + * Assume signed number can be safely coerced into + * unsigned of the same range. + * The following testing code will likely be optimized out + * by compiler if it is true. + */ + unsigned long uvalue1 = ULONG_MAX; + long svalue = uvalue1; + unsigned long uvalue2 = svalue; + assert(uvalue1 == uvalue2); + return uper_put_constrained_whole_number_u(po, v, nbits); +} + +int uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, int nbits) { + if(nbits <= 31) { + return per_put_few_bits(po, v, nbits); + } else { + /* Put higher portion first, followed by lower 31-bit */ + if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) + return -1; + return per_put_few_bits(po, v, 31); + } +} + +/* + * Put a small number of bits (<= 31). + */ +int +per_put_few_bits(asn_per_outp_t *po, uint32_t bits, int obits) { + size_t off; /* Next after last bit offset */ + size_t omsk; /* Existing last byte meaningful bits mask */ + uint8_t *buf; + + if(obits <= 0 || obits >= 32) return obits ? -1 : 0; + + ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", + obits, (int)bits, po->buffer, (int)po->nboff); + + /* + * Normalize position indicator. + */ + if(po->nboff >= 8) { + po->buffer += (po->nboff >> 3); + po->nbits -= (po->nboff & ~0x07); + po->nboff &= 0x07; + } + + /* + * Flush whole-bytes output, if necessary. + */ + if(po->nboff + obits > po->nbits) { + int complete_bytes = (po->buffer - po->tmpspace); + ASN_DEBUG("[PER output %ld complete + %ld]", + (long)complete_bytes, (long)po->flushed_bytes); + if(po->outper(po->tmpspace, complete_bytes, po->op_key) < 0) + return -1; + if(po->nboff) + po->tmpspace[0] = po->buffer[0]; + po->buffer = po->tmpspace; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + } + + /* + * Now, due to sizeof(tmpspace), we are guaranteed large enough space. + */ + buf = po->buffer; + omsk = ~((1 << (8 - po->nboff)) - 1); + off = (po->nboff + obits); + + /* Clear data of debris before meaningful bits */ + bits &= (((uint32_t)1 << obits) - 1); + + ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, + (int)bits, (int)bits, + (int)po->nboff, (int)off, + buf[0], (int)(omsk&0xff), + (int)(buf[0] & omsk)); + + if(off <= 8) /* Completely within 1 byte */ + po->nboff = off, + bits <<= (8 - off), + buf[0] = (buf[0] & omsk) | bits; + else if(off <= 16) + po->nboff = off, + bits <<= (16 - off), + buf[0] = (buf[0] & omsk) | (bits >> 8), + buf[1] = bits; + else if(off <= 24) + po->nboff = off, + bits <<= (24 - off), + buf[0] = (buf[0] & omsk) | (bits >> 16), + buf[1] = bits >> 8, + buf[2] = bits; + else if(off <= 31) + po->nboff = off, + bits <<= (32 - off), + buf[0] = (buf[0] & omsk) | (bits >> 24), + buf[1] = bits >> 16, + buf[2] = bits >> 8, + buf[3] = bits; + else { + per_put_few_bits(po, bits >> (obits - 24), 24); + per_put_few_bits(po, bits, obits - 24); + } + + ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", + (int)bits, (int)bits, buf[0], + (long)(po->buffer - po->tmpspace)); + + return 0; +} + + +/* + * Output a large number of bits. + */ +int +per_put_many_bits(asn_per_outp_t *po, const uint8_t *src, int nbits) { + + while(nbits) { + uint32_t value; + + if(nbits >= 24) { + value = (src[0] << 16) | (src[1] << 8) | src[2]; + src += 3; + nbits -= 24; + if(per_put_few_bits(po, value, 24)) + return -1; + } else { + value = src[0]; + if(nbits > 8) + value = (value << 8) | src[1]; + if(nbits > 16) + value = (value << 8) | src[2]; + if(nbits & 0x07) + value >>= (8 - (nbits & 0x07)); + if(per_put_few_bits(po, value, nbits)) + return -1; + break; + } + } + + return 0; +} + +/* + * Put the length "n" (or part of it) into the stream. + */ +ssize_t +uper_put_length(asn_per_outp_t *po, size_t length) { + + if(length <= 127) /* #10.9.3.6 */ + return per_put_few_bits(po, length, 8) + ? -1 : (ssize_t)length; + else if(length < 16384) /* #10.9.3.7 */ + return per_put_few_bits(po, length|0x8000, 16) + ? -1 : (ssize_t)length; + + length >>= 14; + if(length > 4) length = 4; + + return per_put_few_bits(po, 0xC0 | length, 8) + ? -1 : (ssize_t)(length << 14); +} + + +/* + * Put the normally small length "n" into the stream. + * This procedure used to encode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +int +uper_put_nslength(asn_per_outp_t *po, size_t length) { + + if(length <= 64) { + /* #10.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length-1, 7) ? -1 : 0; + } else { + if(uper_put_length(po, length) != (ssize_t)length) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/r41/xer_decoder.c b/src/tmx/Asn_J2735/src/r41/xer_decoder.c new file mode 100644 index 000000000..cb4b5f878 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/xer_decoder.c @@ -0,0 +1,365 @@ +/* + * Copyright (c) 2004, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* XER/XML parsing support */ + + +/* + * Decode the XER encoding of a given type. + */ +asn_dec_rval_t +xer_decode(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **struct_ptr, const void *buffer, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = _ASN_DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return td->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); +} + + + +struct xer__cb_arg { + pxml_chunk_type_e chunk_type; + size_t chunk_size; + const void *chunk_buf; + int callback_not_invoked; +}; + +static int +xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { + struct xer__cb_arg *arg = (struct xer__cb_arg *)key; + arg->chunk_type = type; + arg->chunk_size = _chunk_size; + arg->chunk_buf = _chunk_data; + arg->callback_not_invoked = 0; + return -1; /* Terminate the XML parsing */ +} + +/* + * Fetch the next token from the XER/XML stream. + */ +ssize_t +xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { + struct xer__cb_arg arg; + int new_stateContext = *stateContext; + ssize_t ret; + + arg.callback_not_invoked = 1; + ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); + if(ret < 0) return -1; + if(arg.callback_not_invoked) { + assert(ret == 0); /* No data was consumed */ + return 0; /* Try again with more data */ + } else { + assert(arg.chunk_size); + assert(arg.chunk_buf == buffer); + } + + /* + * Translate the XML chunk types into more convenient ones. + */ + switch(arg.chunk_type) { + case PXML_TEXT: + *ch_type = PXER_TEXT; + break; + case PXML_TAG: return 0; /* Want more */ + case PXML_TAG_END: + *ch_type = PXER_TAG; + break; + case PXML_COMMENT: + case PXML_COMMENT_END: + *ch_type = PXER_COMMENT; + break; + } + + *stateContext = new_stateContext; + return arg.chunk_size; +} + +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define RANGLE 0x3e /* '>' */ + +xer_check_tag_e +xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { + const char *buf = (const char *)buf_ptr; + const char *end; + xer_check_tag_e ct = XCT_OPENING; + + if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { + if(size >= 2) + ASN_DEBUG("Broken XML tag: \"%c...%c\"", + buf[0], buf[size - 1]); + return XCT_BROKEN; + } + + /* + * Determine the tag class. + */ + if(buf[1] == CSLASH) { + buf += 2; /* advance past "" */ + ct = XCT_CLOSING; + if(size > 0 && buf[size-1] == CSLASH) + return XCT_BROKEN; /*
*/ + } else { + buf++; /* advance past "<" */ + size -= 2; /* strip "<" and ">" */ + if(size > 0 && buf[size-1] == CSLASH) { + ct = XCT_BOTH; + size--; /* One more, for "/" */ + } + } + + /* Sometimes we don't care about the tag */ + if(!need_tag || !*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + /* + * Determine the tag name. + */ + for(end = buf + size; buf < end; buf++, need_tag++) { + int b = *buf, n = *need_tag; + if(b != n) { + if(n == 0) { + switch(b) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* "": whitespace is normal */ + return ct; + } + } + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + } + if(b == 0) + return XCT_BROKEN; /* Embedded 0 in buf?! */ + } + if(*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + return ct; +} + + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + if(rval.code != RC_OK) \ + ASN_DEBUG("Failed with %d", rval.code); \ + return rval; \ + } while(0) + +#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ + ssize_t converted_size = body_receiver \ + (struct_key, chunk_buf, chunk_size, \ + (size_t)chunk_size < size); \ + if(converted_size == -1) RETURN(RC_FAIL); \ + if(converted_size == 0 \ + && size == (size_t)chunk_size) \ + RETURN(RC_WMORE); \ + chunk_size = converted_size; \ + } while(0) +#define XER_GOT_EMPTY() do { \ + if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ + RETURN(RC_FAIL); \ + } while(0) + +/* + * Generalized function for decoding the primitive values. + */ +asn_dec_rval_t +xer_decode_general(asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, + const char *xml_tag, /* Expected XML tag */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_key, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_key, const void *chunk_buf, size_t chunk_size, + int have_more) + ) { + + asn_dec_rval_t rval; + ssize_t consumed_myself = 0; + + (void)opt_codec_ctx; + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + */ + if(ctx->phase > 1) RETURN(RC_FAIL); + for(;;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, + &ch_type); + switch(ch_size) { + case -1: RETURN(RC_FAIL); + case 0: + RETURN(RC_WMORE); + default: + switch(ch_type) { + case PXER_COMMENT: /* Got XML comment */ + ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TEXT: + if(ctx->phase == 0) { + /* + * We have to ignore whitespace here, + * but in order to be forward compatible + * with EXTENDED-XER (EMBED-VALUES, #25) + * any text is just ignored here. + */ + } else { + XER_GOT_BODY(buf_ptr, ch_size, size); + } + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + assert(ch_type == PXER_TAG && size); + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + /* + * Phase 0: + * Expecting the opening tag + * for the type being processed. + * Phase 1: + * Waiting for the closing XML tag. + */ + switch(tcv) { + case XCT_BOTH: + if(ctx->phase) break; + /* Finished decoding of an empty element */ + XER_GOT_EMPTY(); + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + case XCT_CLOSING: + if(!ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_UNKNOWN_BO: + /* + * Certain tags in the body may be expected. + */ + if(opt_unexpected_tag_decoder + && opt_unexpected_tag_decoder(struct_key, + buf_ptr, ch_size) >= 0) { + /* Tag's processed fine */ + ADVANCE(ch_size); + if(!ctx->phase) { + /* We are not expecting + * the closing tag anymore. */ + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + } + continue; + } + /* Fall through */ + default: + break; /* Unexpected tag */ + } + + ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); + break; /* Dark and mysterious things have just happened */ + } + + RETURN(RC_FAIL); +} + + +size_t +xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + + for(; p < pend; p++) { + switch(*p) { + /* X.693, #8.1.4 + * HORISONTAL TAB (9) + * LINE FEED (10) + * CARRIAGE RETURN (13) + * SPACE (32) + */ + case 0x09: case 0x0a: case 0x0d: case 0x20: + continue; + default: + break; + } + break; + } + return (p - (const char *)chunk_buf); +} + +/* + * This is a vastly simplified, non-validating XML tree skipper. + */ +int +xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { + assert(*depth > 0); + switch(tcv) { + case XCT_BOTH: + case XCT_UNKNOWN_BO: + /* These negate each other. */ + return 0; + case XCT_OPENING: + case XCT_UNKNOWN_OP: + ++(*depth); + return 0; + case XCT_CLOSING: + case XCT_UNKNOWN_CL: + if(--(*depth) == 0) + return (tcv == XCT_CLOSING) ? 2 : 1; + return 0; + default: + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/r41/xer_encoder.c b/src/tmx/Asn_J2735/src/r41/xer_encoder.c new file mode 100644 index 000000000..aa7cf040a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/xer_encoder.c @@ -0,0 +1,67 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The XER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t +xer_encode(asn_TYPE_descriptor_t *td, void *sptr, + enum xer_encoder_flags_e xer_flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er, tmper; + const char *mname; + size_t mlen; + int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; + + if(!td || !sptr) goto cb_failed; + + mname = td->xml_tag; + mlen = strlen(mname); + + _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = td->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + + _ASN_CALLBACK3("\n", xcan); + + er.encoded = 4 + xcan + (2 * mlen) + tmper.encoded; + + _ASN_ENCODED_OK(er); +cb_failed: + _ASN_ENCODE_FAILED; +} + +/* + * This is a helper function for xer_fprint, which directs all incoming data + * into the provided file descriptor. + */ +static int +xer__print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + +int +xer_fprint(FILE *stream, asn_TYPE_descriptor_t *td, void *sptr) { + asn_enc_rval_t er; + + if(!stream) stream = stdout; + if(!td || !sptr) + return -1; + + er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); + if(er.encoded == -1) + return -1; + + return fflush(stream); +} diff --git a/src/tmx/Asn_J2735/src/r41/xer_support.c b/src/tmx/Asn_J2735/src/r41/xer_support.c new file mode 100644 index 000000000..9e34e6923 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r41/xer_support.c @@ -0,0 +1,233 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* Parser states */ +typedef enum { + ST_TEXT, + ST_TAG_START, + ST_TAG_BODY, + ST_TAG_QUOTE_WAIT, + ST_TAG_QUOTED_STRING, + ST_TAG_UNQUOTED_STRING, + ST_COMMENT_WAIT_DASH1, /* ""[0] */ + ST_COMMENT_CLO_RT /* "-->"[1] */ +} pstate_e; + +static pxml_chunk_type_e final_chunk_type[] = { + PXML_TEXT, + PXML_TAG_END, + PXML_COMMENT_END, + PXML_TAG_END, + PXML_COMMENT_END, +}; + + +static int +_charclass[256] = { + 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, + 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ +}; +#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) +#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) +#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) + +/* Aliases for characters, ASCII/UTF-8 */ +#define EXCLAM 0x21 /* '!' */ +#define CQUOTE 0x22 /* '"' */ +#define CDASH 0x2d /* '-' */ +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define CEQUAL 0x3d /* '=' */ +#define RANGLE 0x3e /* '>' */ +#define CQUEST 0x3f /* '?' */ + +/* Invoke token callback */ +#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ + int _ret; \ + pstate_e ns = _ns; \ + ssize_t _sz = (p - chunk_start) + _current_too; \ + if (!_sz) { \ + /* Shortcut */ \ + state = _ns; \ + break; \ + } \ + _ret = cb(type, chunk_start, _sz, key); \ + if(_ret < _sz) { \ + if(_current_too && _ret == -1) \ + state = ns; \ + goto finish; \ + } \ + chunk_start = p + _current_too; \ + state = ns; \ + } while(0) + +#define TOKEN_CB(_type, _ns, _current_too) \ + TOKEN_CB_CALL(_type, _ns, _current_too, 0) + +#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ + TOKEN_CB_CALL(final_chunk_type[_type], _ns, _current_too, 1) + +/* + * Parser itself + */ +ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { + pstate_e state = (pstate_e)*stateContext; + const char *chunk_start = (const char *)xmlbuf; + const char *p = chunk_start; + const char *end = p + size; + + for(; p < end; p++) { + int C = *(const unsigned char *)p; + switch(state) { + case ST_TEXT: + /* + * Initial state: we're in the middle of some text, + * or just have started. + */ + if (C == LANGLE) + /* We're now in the tag, probably */ + TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); + break; + case ST_TAG_START: + if (ALPHA(C) || (C == CSLASH)) + state = ST_TAG_BODY; + else if (C == EXCLAM) + state = ST_COMMENT_WAIT_DASH1; + else + /* + * Not characters and not whitespace. + * Must be something like "3 < 4". + */ + TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ + break; + case ST_TAG_BODY: + switch(C) { + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + case LANGLE: + /* + * The previous tag wasn't completed, but still + * recognized as valid. (Mozilla-compatible) + */ + TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); + break; + case CEQUAL: + state = ST_TAG_QUOTE_WAIT; + break; + } + break; + case ST_TAG_QUOTE_WAIT: + /* + * State after the equal sign ("=") in the tag. + */ + switch(C) { + case CQUOTE: + state = ST_TAG_QUOTED_STRING; + break; + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + default: + if(!WHITESPACE(C)) + /* Unquoted string value */ + state = ST_TAG_UNQUOTED_STRING; + } + break; + case ST_TAG_QUOTED_STRING: + /* + * Tag attribute's string value in quotes. + */ + if(C == CQUOTE) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_TAG_UNQUOTED_STRING: + if(C == RANGLE) { + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + } else if(WHITESPACE(C)) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH1: + if(C == CDASH) { + state = ST_COMMENT_WAIT_DASH2; + } else { + /* Some ordinary tag. */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH2: + if(C == CDASH) { + /* Seen "<--" */ + state = ST_COMMENT; + } else { + /* Some ordinary tag */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT: + if(C == CDASH) { + state = ST_COMMENT_CLO_DASH2; + } + break; + case ST_COMMENT_CLO_DASH2: + if(C == CDASH) { + state = ST_COMMENT_CLO_RT; + } else { + /* This is not an end of a comment */ + state = ST_COMMENT; + } + break; + case ST_COMMENT_CLO_RT: + if(C == RANGLE) { + TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); + } else if(C == CDASH) { + /* Maintain current state, still waiting for '>' */ + } else { + state = ST_COMMENT; + } + break; + } /* switch(*ptr) */ + } /* for() */ + + /* + * Flush the partially processed chunk, state permitting. + */ + if(p - chunk_start) { + switch (state) { + case ST_COMMENT: + TOKEN_CB(PXML_COMMENT, state, 0); + break; + case ST_TEXT: + TOKEN_CB(PXML_TEXT, state, 0); + break; + default: break; /* a no-op */ + } + } + +finish: + *stateContext = (int)state; + return chunk_start - (const char *)xmlbuf; +} + diff --git a/src/tmx/Asn_J2735/src/r63/ANY.c b/src/tmx/Asn_J2735/src/r63/ANY.c new file mode 100644 index 000000000..0b815577e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ANY.c @@ -0,0 +1,450 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs = { + sizeof(ANY_t), + offsetof(ANY_t, _asn_ctx), + ASN_OSUBV_ANY +}; +asn_TYPE_operation_t asn_OP_ANY = { + OCTET_STRING_free, + OCTET_STRING_print, + OCTET_STRING_compare, + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_hex, + ANY_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + 0, + 0, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, 0, 0, 0, +#else + ANY_decode_uper, + ANY_encode_uper, + ANY_decode_aper, + ANY_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + 0, /* Random fill is not defined for ANY type */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ANY = { + "ANY", + "ANY", + &asn_OP_ANY, + 0, 0, 0, 0, + { 0, 0, asn_generic_no_constraint }, /* No constraints */ + 0, 0, /* No members */ + &asn_SPC_ANY_specs, +}; + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +asn_enc_rval_t +ANY_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + if(flags & XER_F_CANONICAL) { + /* + * Canonical XER-encoding of ANY type is not supported. + */ + ASN__ENCODE_FAILED; + } + + /* Dump as binary */ + return OCTET_STRING_encode_xer(td, sptr, ilevel, flags, cb, app_key); +} + +struct _callback_arg { + uint8_t *buffer; + size_t offset; + size_t size; +}; + +static int ANY__consume_bytes(const void *buffer, size_t size, void *key); + +int +ANY_fromType(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + struct _callback_arg arg; + asn_enc_rval_t erval = {0,0,0}; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + arg.offset = arg.size = 0; + arg.buffer = 0; + + erval = der_encode(td, sptr, ANY__consume_bytes, &arg); + if(erval.encoded == -1) { + if(arg.buffer) FREEMEM(arg.buffer); + return -1; + } + assert((size_t)erval.encoded == arg.offset); + + if(st->buf) FREEMEM(st->buf); + st->buf = arg.buffer; + st->size = arg.offset; + + return 0; +} + +int +ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr) { + uint8_t *buffer = NULL; + ssize_t erval; + + if(!st || !td) { + errno = EINVAL; + return -1; + } + + if(!sptr) { + if(st->buf) FREEMEM(st->buf); + st->size = 0; + return 0; + } + + erval = aper_encode_to_new_buffer(td, td->encoding_constraints.per_constraints, sptr, (void**)&buffer); + + if(erval == -1) { + if(buffer) FREEMEM(buffer); + return -1; + } + assert((size_t)erval > 0); + + if(st->buf) FREEMEM(st->buf); + st->buf = buffer; + st->size = erval; + + return 0; +} + +ANY_t * +ANY_new_fromType(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +ANY_t * +ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr) { + ANY_t tmp; + ANY_t *st; + + if(!td || !sptr) { + errno = EINVAL; + return 0; + } + + memset(&tmp, 0, sizeof(tmp)); + + if(ANY_fromType_aper(&tmp, td, sptr)) return 0; + + st = (ANY_t *)CALLOC(1, sizeof(ANY_t)); + if(st) { + *st = tmp; + return st; + } else { + FREEMEM(tmp.buf); + return 0; + } +} + +int +ANY_to_type(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = ber_decode(0, td, (void **)&newst, st->buf, st->size); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} + +int +ANY_to_type_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void **struct_ptr) { + asn_dec_rval_t rval; + void *newst = 0; + + if(!st || !td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + if(st->buf == 0) { + /* Nothing to convert, make it empty. */ + *struct_ptr = (void *)0; + return 0; + } + + rval = aper_decode(0, td, (void **)&newst, st->buf, st->size, 0, 0); + if(rval.code == RC_OK) { + *struct_ptr = newst; + return 0; + } else { + /* Remove possibly partially decoded data. */ + ASN_STRUCT_FREE(*td, newst); + return -1; + } +} + +static int ANY__consume_bytes(const void *buffer, size_t size, void *key) { + struct _callback_arg *arg = (struct _callback_arg *)key; + + if((arg->offset + size) >= arg->size) { + size_t nsize = (arg->size ? arg->size << 2 : 16) + size; + void *p = REALLOC(arg->buffer, nsize); + if(!p) return -1; + arg->buffer = (uint8_t *)p; + arg->size = nsize; + } + + memcpy(arg->buffer + arg->offset, buffer, size); + arg->offset += size; + assert(arg->offset < arg->size); + + return 0; +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +ANY_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("UPER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +ANY_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_ANY_specs; + size_t consumed_myself = 0; + int repeat; + ANY_t *st = (ANY_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + + /* + * Allocate the structure. + */ + if(!st) { + st = (ANY_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("APER Decoding ANY type"); + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = aper_get_length(pd, -1, 0, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length len %" ASN_PRI_SIZE ", %s (%s)", raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len; + len_bits = len_bytes * 8; + + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += len_bits; + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + RETURN(RC_OK); +} + +asn_enc_rval_t +ANY_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const ANY_t *st = (const ANY_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + const uint8_t *buf; + size_t size; + int ret; + + (void)constraints; + + if(!st || (!st->buf && st->size)) ASN__ENCODE_FAILED; + + buf = st->buf; + size = st->size; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ret = per_put_many_bits(po, buf, may_save * 8); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save; + size -= may_save; + assert(!(may_save & 0x07) || !size); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size); + + ASN__ENCODED_OK(er); +} +#endif /* ASN_DISABLE_PER_SUPPORT */ + diff --git a/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c b/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c new file mode 100644 index 000000000..e09906326 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AccelSteerYawRateConfidence.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AccelSteerYawRateConfidence.h" + +asn_TYPE_member_t asn_MBR_AccelSteerYawRateConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, yawRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yawRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, acceleration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "acceleration" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelSteerYawRateConfidence, steeringWheelAngle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "steeringWheelAngle" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelSteerYawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelSteerYawRateConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* yawRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* acceleration */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* steeringWheelAngle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelSteerYawRateConfidence_specs_1 = { + sizeof(struct AccelSteerYawRateConfidence), + offsetof(struct AccelSteerYawRateConfidence, _asn_ctx), + asn_MAP_AccelSteerYawRateConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelSteerYawRateConfidence = { + "AccelSteerYawRateConfidence", + "AccelSteerYawRateConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AccelSteerYawRateConfidence_tags_1, + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelSteerYawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1) + /sizeof(asn_DEF_AccelSteerYawRateConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AccelSteerYawRateConfidence_1, + 3, /* Elements count */ + &asn_SPC_AccelSteerYawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Acceleration.c b/src/tmx/Asn_J2735/src/r63/Acceleration.c new file mode 100644 index 000000000..b5c8b5e88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Acceleration.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Acceleration.h" + +int +Acceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2000 && value <= 2001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Acceleration_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2000..2001) */, + -1}; +asn_per_constraints_t asn_PER_type_Acceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2000, 2001 } /* (-2000..2001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Acceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Acceleration = { + "Acceleration", + "Acceleration", + &asn_OP_NativeInteger, + asn_DEF_Acceleration_tags_1, + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + asn_DEF_Acceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_Acceleration_tags_1) + /sizeof(asn_DEF_Acceleration_tags_1[0]), /* 1 */ + { &asn_OER_type_Acceleration_constr_1, &asn_PER_type_Acceleration_constr_1, Acceleration_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c b/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c new file mode 100644 index 000000000..68c6da8c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AccelerationConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AccelerationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AccelerationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AccelerationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "accl-100-00" }, + { 2, 11, "accl-010-00" }, + { 3, 11, "accl-005-00" }, + { 4, 11, "accl-001-00" }, + { 5, 11, "accl-000-10" }, + { 6, 11, "accl-000-05" }, + { 7, 11, "accl-000-01" } +}; +static const unsigned int asn_MAP_AccelerationConfidence_enum2value_1[] = { + 7, /* accl-000-01(7) */ + 6, /* accl-000-05(6) */ + 5, /* accl-000-10(5) */ + 4, /* accl-001-00(4) */ + 3, /* accl-005-00(3) */ + 2, /* accl-010-00(2) */ + 1, /* accl-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AccelerationConfidence_specs_1 = { + asn_MAP_AccelerationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AccelerationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AccelerationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationConfidence = { + "AccelerationConfidence", + "AccelerationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AccelerationConfidence_tags_1, + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + asn_DEF_AccelerationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationConfidence_tags_1) + /sizeof(asn_DEF_AccelerationConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_AccelerationConfidence_constr_1, &asn_PER_type_AccelerationConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AccelerationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c b/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c new file mode 100644 index 000000000..58666b3c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AccelerationSet4Way.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AccelerationSet4Way.h" + +asn_TYPE_member_t asn_MBR_AccelerationSet4Way_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, Long), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Acceleration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, vert), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAcceleration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vert" + }, + { ATF_NOFLAGS, 0, offsetof(struct AccelerationSet4Way, yaw), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yaw" + }, +}; +static const ber_tlv_tag_t asn_DEF_AccelerationSet4Way_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AccelerationSet4Way_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vert */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* yaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AccelerationSet4Way_specs_1 = { + sizeof(struct AccelerationSet4Way), + offsetof(struct AccelerationSet4Way, _asn_ctx), + asn_MAP_AccelerationSet4Way_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AccelerationSet4Way = { + "AccelerationSet4Way", + "AccelerationSet4Way", + &asn_OP_SEQUENCE, + asn_DEF_AccelerationSet4Way_tags_1, + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + asn_DEF_AccelerationSet4Way_tags_1, /* Same as above */ + sizeof(asn_DEF_AccelerationSet4Way_tags_1) + /sizeof(asn_DEF_AccelerationSet4Way_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AccelerationSet4Way_1, + 4, /* Elements count */ + &asn_SPC_AccelerationSet4Way_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c new file mode 100644 index 000000000..f4c63efa6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AddGrpB_Angle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_Angle.h" + +int +AddGrpB_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 239)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..239) */, + -1}; +static asn_per_constraints_t asn_PER_type_AddGrpB_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 239 } /* (0..239) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Angle_tags_1, + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Angle_tags_1) + /sizeof(asn_DEF_AddGrpB_Angle_tags_1[0]), /* 1 */ + { &asn_OER_type_AddGrpB_Angle_constr_1, &asn_PER_type_AddGrpB_Angle_constr_1, AddGrpB_Angle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c new file mode 100644 index 000000000..a441d8fd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AddGrpB_DayOfWeek.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_DayOfWeek.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AddGrpB_DayOfWeek_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AddGrpB_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static const unsigned int asn_MAP_AddGrpB_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AddGrpB_DayOfWeek_specs_1 = { + asn_MAP_AddGrpB_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AddGrpB_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_NativeEnumerated, + asn_DEF_AddGrpB_DayOfWeek_tags_1, + sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) + /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1) + /sizeof(asn_DEF_AddGrpB_DayOfWeek_tags_1[0]), /* 1 */ + { &asn_OER_type_AddGrpB_DayOfWeek_constr_1, &asn_PER_type_AddGrpB_DayOfWeek_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AddGrpB_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c new file mode 100644 index 000000000..aad6c0a6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AddGrpB_Elevation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_Elevation.h" + +int +AddGrpB_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_AddGrpB_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_Elevation_tags_1, + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_Elevation_tags_1) + /sizeof(asn_DEF_AddGrpB_Elevation_tags_1[0]), /* 1 */ + { &asn_OER_type_AddGrpB_Elevation_constr_1, &asn_PER_type_AddGrpB_Elevation_constr_1, AddGrpB_Elevation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c new file mode 100644 index 000000000..0c4d81493 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AddGrpB_MsgCount.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_MsgCount.h" + +int +AddGrpB_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_type_AddGrpB_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_AddGrpB_MsgCount_tags_1, + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_MsgCount_tags_1) + /sizeof(asn_DEF_AddGrpB_MsgCount_tags_1[0]), /* 1 */ + { &asn_OER_type_AddGrpB_MsgCount_constr_1, &asn_PER_type_AddGrpB_MsgCount_constr_1, AddGrpB_MsgCount_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c b/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c new file mode 100644 index 000000000..1e42c3ca6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AddGrpB_TimeMark.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AddGrpB_TimeMark.h" + +static asn_TYPE_member_t asn_MBR_AddGrpB_TimeMark_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Year, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Month, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Day, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, summerTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SummerTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "summerTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, holiday), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Holiday, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "holiday" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, dayofWeek), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AddGrpB_DayOfWeek, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dayofWeek" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, hour), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Hour, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, minute), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Minute, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, second), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Second, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_NOFLAGS, 0, offsetof(struct AddGrpB_TimeMark, tenthSecond), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TenthSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tenthSecond" + }, +}; +static const ber_tlv_tag_t asn_DEF_AddGrpB_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AddGrpB_TimeMark_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* summerTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* holiday */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dayofWeek */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* tenthSecond */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_AddGrpB_TimeMark_specs_1 = { + sizeof(struct AddGrpB_TimeMark), + offsetof(struct AddGrpB_TimeMark, _asn_ctx), + asn_MAP_AddGrpB_TimeMark_tag2el_1, + 10, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AddGrpB_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_SEQUENCE, + asn_DEF_AddGrpB_TimeMark_tags_1, + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_AddGrpB_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_AddGrpB_TimeMark_tags_1) + /sizeof(asn_DEF_AddGrpB_TimeMark_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AddGrpB_TimeMark_1, + 10, /* Elements count */ + &asn_SPC_AddGrpB_TimeMark_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c new file mode 100644 index 000000000..7de5ed6bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AdvisorySpeed.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AdvisorySpeed.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct AdvisorySpeed__regional), + offsetof(struct AdvisorySpeed__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_AdvisorySpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AdvisorySpeed, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 5, offsetof(struct AdvisorySpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedAdvice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct AdvisorySpeed, confidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 3, offsetof(struct AdvisorySpeed, distance), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "distance" + }, + { ATF_POINTER, 2, offsetof(struct AdvisorySpeed, Class), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "class" + }, + { ATF_POINTER, 1, offsetof(struct AdvisorySpeed, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_AdvisorySpeed_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AdvisorySpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* distance */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* class */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AdvisorySpeed_specs_1 = { + sizeof(struct AdvisorySpeed), + offsetof(struct AdvisorySpeed, _asn_ctx), + asn_MAP_AdvisorySpeed_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_AdvisorySpeed_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeed = { + "AdvisorySpeed", + "AdvisorySpeed", + &asn_OP_SEQUENCE, + asn_DEF_AdvisorySpeed_tags_1, + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeed_tags_1) + /sizeof(asn_DEF_AdvisorySpeed_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AdvisorySpeed_1, + 6, /* Elements count */ + &asn_SPC_AdvisorySpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c new file mode 100644 index 000000000..a7d2b676e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AdvisorySpeedList.h" + +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_AdvisorySpeedList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_AdvisorySpeedList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AdvisorySpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AdvisorySpeedList_specs_1 = { + sizeof(struct AdvisorySpeedList), + offsetof(struct AdvisorySpeedList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedList = { + "AdvisorySpeedList", + "AdvisorySpeedList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AdvisorySpeedList_tags_1, + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedList_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedList_tags_1) + /sizeof(asn_DEF_AdvisorySpeedList_tags_1[0]), /* 1 */ + { &asn_OER_type_AdvisorySpeedList_constr_1, &asn_PER_type_AdvisorySpeedList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_AdvisorySpeedList_1, + 1, /* Single element */ + &asn_SPC_AdvisorySpeedList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c new file mode 100644 index 000000000..80a7b9d88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AdvisorySpeedType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AdvisorySpeedType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AdvisorySpeedType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AdvisorySpeedType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "greenwave" }, + { 2, 8, "ecoDrive" }, + { 3, 7, "transit" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AdvisorySpeedType_enum2value_1[] = { + 2, /* ecoDrive(2) */ + 1, /* greenwave(1) */ + 0, /* none(0) */ + 3 /* transit(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AdvisorySpeedType_specs_1 = { + asn_MAP_AdvisorySpeedType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AdvisorySpeedType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AdvisorySpeedType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AdvisorySpeedType = { + "AdvisorySpeedType", + "AdvisorySpeedType", + &asn_OP_NativeEnumerated, + asn_DEF_AdvisorySpeedType_tags_1, + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + asn_DEF_AdvisorySpeedType_tags_1, /* Same as above */ + sizeof(asn_DEF_AdvisorySpeedType_tags_1) + /sizeof(asn_DEF_AdvisorySpeedType_tags_1[0]), /* 1 */ + { &asn_OER_type_AdvisorySpeedType_constr_1, &asn_PER_type_AdvisorySpeedType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AdvisorySpeedType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c b/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c new file mode 100644 index 000000000..162ee75b8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AllowedManeuvers.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AllowedManeuvers.h" + +int +AllowedManeuvers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 12)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { 0, 0 }, + 12 /* (SIZE(12..12)) */}; +asn_per_constraints_t asn_PER_type_AllowedManeuvers_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AllowedManeuvers_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AllowedManeuvers = { + "AllowedManeuvers", + "AllowedManeuvers", + &asn_OP_BIT_STRING, + asn_DEF_AllowedManeuvers_tags_1, + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + asn_DEF_AllowedManeuvers_tags_1, /* Same as above */ + sizeof(asn_DEF_AllowedManeuvers_tags_1) + /sizeof(asn_DEF_AllowedManeuvers_tags_1[0]), /* 1 */ + { &asn_OER_type_AllowedManeuvers_constr_1, &asn_PER_type_AllowedManeuvers_constr_1, AllowedManeuvers_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Altitude.c b/src/tmx/Asn_J2735/src/r63/Altitude.c new file mode 100644 index 000000000..cc01be1f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Altitude.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Altitude.h" + +asn_TYPE_member_t asn_MBR_Altitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Altitude, value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct Altitude, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AltitudeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_Altitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Altitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Altitude_specs_1 = { + sizeof(struct Altitude), + offsetof(struct Altitude, _asn_ctx), + asn_MAP_Altitude_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Altitude = { + "Altitude", + "Altitude", + &asn_OP_SEQUENCE, + asn_DEF_Altitude_tags_1, + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + asn_DEF_Altitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Altitude_tags_1) + /sizeof(asn_DEF_Altitude_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Altitude_1, + 2, /* Elements count */ + &asn_SPC_Altitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c b/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c new file mode 100644 index 000000000..c662ef1a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AltitudeConfidence.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AltitudeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AltitudeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AltitudeConfidence_value2enum_1[] = { + { 0, 10, "alt-000-01" }, + { 1, 10, "alt-000-02" }, + { 2, 10, "alt-000-05" }, + { 3, 10, "alt-000-10" }, + { 4, 10, "alt-000-20" }, + { 5, 10, "alt-000-50" }, + { 6, 10, "alt-001-00" }, + { 7, 10, "alt-002-00" }, + { 8, 10, "alt-005-00" }, + { 9, 10, "alt-010-00" }, + { 10, 10, "alt-020-00" }, + { 11, 10, "alt-050-00" }, + { 12, 10, "alt-100-00" }, + { 13, 10, "alt-200-00" }, + { 14, 10, "outOfRange" }, + { 15, 11, "unavailable" } +}; +static const unsigned int asn_MAP_AltitudeConfidence_enum2value_1[] = { + 0, /* alt-000-01(0) */ + 1, /* alt-000-02(1) */ + 2, /* alt-000-05(2) */ + 3, /* alt-000-10(3) */ + 4, /* alt-000-20(4) */ + 5, /* alt-000-50(5) */ + 6, /* alt-001-00(6) */ + 7, /* alt-002-00(7) */ + 8, /* alt-005-00(8) */ + 9, /* alt-010-00(9) */ + 10, /* alt-020-00(10) */ + 11, /* alt-050-00(11) */ + 12, /* alt-100-00(12) */ + 13, /* alt-200-00(13) */ + 14, /* outOfRange(14) */ + 15 /* unavailable(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AltitudeConfidence_specs_1 = { + asn_MAP_AltitudeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AltitudeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AltitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeConfidence = { + "AltitudeConfidence", + "AltitudeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_AltitudeConfidence_tags_1, + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AltitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeConfidence_tags_1) + /sizeof(asn_DEF_AltitudeConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_AltitudeConfidence_constr_1, &asn_PER_type_AltitudeConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AltitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AltitudeValue.c b/src/tmx/Asn_J2735/src/r63/AltitudeValue.c new file mode 100644 index 000000000..f5475b8e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AltitudeValue.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AltitudeValue.h" + +int +AltitudeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -100000 && value <= 800001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-100000..800001) */, + -1}; +asn_per_constraints_t asn_PER_type_AltitudeValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, -100000, 800001 } /* (-100000..800001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AltitudeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AltitudeValue = { + "AltitudeValue", + "AltitudeValue", + &asn_OP_NativeInteger, + asn_DEF_AltitudeValue_tags_1, + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + asn_DEF_AltitudeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_AltitudeValue_tags_1) + /sizeof(asn_DEF_AltitudeValue_tags_1[0]), /* 1 */ + { &asn_OER_type_AltitudeValue_constr_1, &asn_PER_type_AltitudeValue_constr_1, AltitudeValue_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c b/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c new file mode 100644 index 000000000..60ab54971 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AmbientAirPressure.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AmbientAirPressure.h" + +int +AmbientAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_AmbientAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AmbientAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirPressure = { + "AmbientAirPressure", + "AmbientAirPressure", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirPressure_tags_1, + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirPressure_tags_1) + /sizeof(asn_DEF_AmbientAirPressure_tags_1[0]), /* 1 */ + { &asn_OER_type_AmbientAirPressure_constr_1, &asn_PER_type_AmbientAirPressure_constr_1, AmbientAirPressure_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c b/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c new file mode 100644 index 000000000..6c2241667 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AmbientAirTemperature.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AmbientAirTemperature.h" + +int +AmbientAirTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 191)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..191) */, + -1}; +asn_per_constraints_t asn_PER_type_AmbientAirTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 191 } /* (0..191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AmbientAirTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AmbientAirTemperature = { + "AmbientAirTemperature", + "AmbientAirTemperature", + &asn_OP_NativeInteger, + asn_DEF_AmbientAirTemperature_tags_1, + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + asn_DEF_AmbientAirTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_AmbientAirTemperature_tags_1) + /sizeof(asn_DEF_AmbientAirTemperature_tags_1[0]), /* 1 */ + { &asn_OER_type_AmbientAirTemperature_constr_1, &asn_PER_type_AmbientAirTemperature_constr_1, AmbientAirTemperature_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AngularVelocity.c b/src/tmx/Asn_J2735/src/r63/AngularVelocity.c new file mode 100644 index 000000000..eedd75054 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AngularVelocity.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AngularVelocity.h" + +asn_TYPE_member_t asn_MBR_AngularVelocity_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, pitchRate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchRate" + }, + { ATF_NOFLAGS, 0, offsetof(struct AngularVelocity, rollRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollRate" + }, +}; +static const ber_tlv_tag_t asn_DEF_AngularVelocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AngularVelocity_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRate */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AngularVelocity_specs_1 = { + sizeof(struct AngularVelocity), + offsetof(struct AngularVelocity, _asn_ctx), + asn_MAP_AngularVelocity_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AngularVelocity = { + "AngularVelocity", + "AngularVelocity", + &asn_OP_SEQUENCE, + asn_DEF_AngularVelocity_tags_1, + sizeof(asn_DEF_AngularVelocity_tags_1) + /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ + asn_DEF_AngularVelocity_tags_1, /* Same as above */ + sizeof(asn_DEF_AngularVelocity_tags_1) + /sizeof(asn_DEF_AngularVelocity_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AngularVelocity_1, + 2, /* Elements count */ + &asn_SPC_AngularVelocity_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c b/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c new file mode 100644 index 000000000..8ff44510f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AngularVelocityConfidence.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AngularVelocityConfidence.h" + +asn_TYPE_member_t asn_MBR_AngularVelocityConfidence_1[] = { + { ATF_POINTER, 2, offsetof(struct AngularVelocityConfidence, pitchRateConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchRateConfidence" + }, + { ATF_POINTER, 1, offsetof(struct AngularVelocityConfidence, rollRateConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollRateConfidence" + }, +}; +static const int asn_MAP_AngularVelocityConfidence_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_AngularVelocityConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AngularVelocityConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchRateConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rollRateConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AngularVelocityConfidence_specs_1 = { + sizeof(struct AngularVelocityConfidence), + offsetof(struct AngularVelocityConfidence, _asn_ctx), + asn_MAP_AngularVelocityConfidence_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_AngularVelocityConfidence_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AngularVelocityConfidence = { + "AngularVelocityConfidence", + "AngularVelocityConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AngularVelocityConfidence_tags_1, + sizeof(asn_DEF_AngularVelocityConfidence_tags_1) + /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ + asn_DEF_AngularVelocityConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AngularVelocityConfidence_tags_1) + /sizeof(asn_DEF_AngularVelocityConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AngularVelocityConfidence_1, + 2, /* Elements count */ + &asn_SPC_AngularVelocityConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c b/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c new file mode 100644 index 000000000..381663afe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AnimalPropelledType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AnimalPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AnimalPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AnimalPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 13, "animalMounted" }, + { 3, 19, "animalDrawnCarriage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalPropelledType_enum2value_1[] = { + 3, /* animalDrawnCarriage(3) */ + 2, /* animalMounted(2) */ + 1, /* otherTypes(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalPropelledType_specs_1 = { + asn_MAP_AnimalPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalPropelledType = { + "AnimalPropelledType", + "AnimalPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalPropelledType_tags_1, + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + asn_DEF_AnimalPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalPropelledType_tags_1) + /sizeof(asn_DEF_AnimalPropelledType_tags_1[0]), /* 1 */ + { &asn_OER_type_AnimalPropelledType_constr_1, &asn_PER_type_AnimalPropelledType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AnimalType.c b/src/tmx/Asn_J2735/src/r63/AnimalType.c new file mode 100644 index 000000000..525b3e61b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AnimalType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AnimalType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AnimalType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AnimalType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AnimalType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "serviceUse" }, + { 2, 3, "pet" }, + { 3, 4, "farm" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_AnimalType_enum2value_1[] = { + 3, /* farm(3) */ + 2, /* pet(2) */ + 1, /* serviceUse(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_AnimalType_specs_1 = { + asn_MAP_AnimalType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AnimalType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AnimalType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AnimalType = { + "AnimalType", + "AnimalType", + &asn_OP_NativeEnumerated, + asn_DEF_AnimalType_tags_1, + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + asn_DEF_AnimalType_tags_1, /* Same as above */ + sizeof(asn_DEF_AnimalType_tags_1) + /sizeof(asn_DEF_AnimalType_tags_1[0]), /* 1 */ + { &asn_OER_type_AnimalType_constr_1, &asn_PER_type_AnimalType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AnimalType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c b/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c new file mode 100644 index 000000000..dd488fd52 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AntennaOffsetSet.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AntennaOffsetSet.h" + +asn_TYPE_member_t asn_MBR_AntennaOffsetSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "antOffsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B09, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "antOffsetY" + }, + { ATF_NOFLAGS, 0, offsetof(struct AntennaOffsetSet, antOffsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "antOffsetZ" + }, +}; +static const ber_tlv_tag_t asn_DEF_AntennaOffsetSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AntennaOffsetSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* antOffsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* antOffsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* antOffsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AntennaOffsetSet_specs_1 = { + sizeof(struct AntennaOffsetSet), + offsetof(struct AntennaOffsetSet, _asn_ctx), + asn_MAP_AntennaOffsetSet_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AntennaOffsetSet = { + "AntennaOffsetSet", + "AntennaOffsetSet", + &asn_OP_SEQUENCE, + asn_DEF_AntennaOffsetSet_tags_1, + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + asn_DEF_AntennaOffsetSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AntennaOffsetSet_tags_1) + /sizeof(asn_DEF_AntennaOffsetSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AntennaOffsetSet_1, + 3, /* Elements count */ + &asn_SPC_AntennaOffsetSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c b/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c new file mode 100644 index 000000000..f68ae2220 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AntiLockBrakeStatus.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AntiLockBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AntiLockBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AntiLockBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_AntiLockBrakeStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AntiLockBrakeStatus_specs_1 = { + asn_MAP_AntiLockBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AntiLockBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AntiLockBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AntiLockBrakeStatus = { + "AntiLockBrakeStatus", + "AntiLockBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AntiLockBrakeStatus_tags_1, + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AntiLockBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AntiLockBrakeStatus_tags_1) + /sizeof(asn_DEF_AntiLockBrakeStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_AntiLockBrakeStatus_constr_1, &asn_PER_type_AntiLockBrakeStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AntiLockBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ApproachID.c b/src/tmx/Asn_J2735/src/r63/ApproachID.c new file mode 100644 index 000000000..a4b3e8951 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ApproachID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ApproachID.h" + +int +ApproachID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ApproachID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +asn_per_constraints_t asn_PER_type_ApproachID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ApproachID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ApproachID = { + "ApproachID", + "ApproachID", + &asn_OP_NativeInteger, + asn_DEF_ApproachID_tags_1, + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + asn_DEF_ApproachID_tags_1, /* Same as above */ + sizeof(asn_DEF_ApproachID_tags_1) + /sizeof(asn_DEF_ApproachID_tags_1[0]), /* 1 */ + { &asn_OER_type_ApproachID_constr_1, &asn_PER_type_ApproachID_constr_1, ApproachID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c b/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c new file mode 100644 index 000000000..c86811bbd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ApproachOrLane.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ApproachOrLane.h" + +static asn_oer_constraints_t asn_OER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ApproachOrLane_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ApproachOrLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct ApproachOrLane, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lane" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ApproachOrLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lane */ +}; +asn_CHOICE_specifics_t asn_SPC_ApproachOrLane_specs_1 = { + sizeof(struct ApproachOrLane), + offsetof(struct ApproachOrLane, _asn_ctx), + offsetof(struct ApproachOrLane, present), + sizeof(((struct ApproachOrLane *)0)->present), + asn_MAP_ApproachOrLane_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_ApproachOrLane = { + "ApproachOrLane", + "ApproachOrLane", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ApproachOrLane_constr_1, &asn_PER_type_ApproachOrLane_constr_1, CHOICE_constraint }, + asn_MBR_ApproachOrLane_1, + 2, /* Elements count */ + &asn_SPC_ApproachOrLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Attachment.c b/src/tmx/Asn_J2735/src/r63/Attachment.c new file mode 100644 index 000000000..3a11c3dd4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Attachment.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Attachment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Attachment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_Attachment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Attachment_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "stroller" }, + { 2, 14, "bicycleTrailer" }, + { 3, 4, "cart" }, + { 4, 10, "wheelchair" }, + { 5, 26, "otherWalkAssistAttachments" }, + { 6, 3, "pet" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Attachment_enum2value_1[] = { + 2, /* bicycleTrailer(2) */ + 3, /* cart(3) */ + 5, /* otherWalkAssistAttachments(5) */ + 6, /* pet(6) */ + 1, /* stroller(1) */ + 0, /* unavailable(0) */ + 4 /* wheelchair(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_Attachment_specs_1 = { + asn_MAP_Attachment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Attachment_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Attachment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Attachment = { + "Attachment", + "Attachment", + &asn_OP_NativeEnumerated, + asn_DEF_Attachment_tags_1, + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + asn_DEF_Attachment_tags_1, /* Same as above */ + sizeof(asn_DEF_Attachment_tags_1) + /sizeof(asn_DEF_Attachment_tags_1[0]), /* 1 */ + { &asn_OER_type_Attachment_constr_1, &asn_PER_type_Attachment_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Attachment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c b/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c new file mode 100644 index 000000000..bf3a0e020 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AttachmentRadius.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AttachmentRadius.h" + +int +AttachmentRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +asn_per_constraints_t asn_PER_type_AttachmentRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AttachmentRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AttachmentRadius = { + "AttachmentRadius", + "AttachmentRadius", + &asn_OP_NativeInteger, + asn_DEF_AttachmentRadius_tags_1, + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + asn_DEF_AttachmentRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_AttachmentRadius_tags_1) + /sizeof(asn_DEF_AttachmentRadius_tags_1[0]), /* 1 */ + { &asn_OER_type_AttachmentRadius_constr_1, &asn_PER_type_AttachmentRadius_constr_1, AttachmentRadius_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Attitude.c b/src/tmx/Asn_J2735/src/r63/Attitude.c new file mode 100644 index 000000000..4af80a825 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Attitude.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "Attitude.h" + +asn_TYPE_member_t asn_MBR_Attitude_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Attitude, pitch), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PitchDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitch" + }, + { ATF_NOFLAGS, 0, offsetof(struct Attitude, roll), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RollDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roll" + }, + { ATF_NOFLAGS, 0, offsetof(struct Attitude, yaw), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawDetected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yaw" + }, +}; +static const ber_tlv_tag_t asn_DEF_Attitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Attitude_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitch */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* roll */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Attitude_specs_1 = { + sizeof(struct Attitude), + offsetof(struct Attitude, _asn_ctx), + asn_MAP_Attitude_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Attitude = { + "Attitude", + "Attitude", + &asn_OP_SEQUENCE, + asn_DEF_Attitude_tags_1, + sizeof(asn_DEF_Attitude_tags_1) + /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ + asn_DEF_Attitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Attitude_tags_1) + /sizeof(asn_DEF_Attitude_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Attitude_1, + 3, /* Elements count */ + &asn_SPC_Attitude_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c b/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c new file mode 100644 index 000000000..f521222c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AttitudeConfidence.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "AttitudeConfidence.h" + +asn_TYPE_member_t asn_MBR_AttitudeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, pitchConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pitchConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, rollConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rollConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct AttitudeConfidence, yawConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yawConfidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_AttitudeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AttitudeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pitchConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rollConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* yawConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AttitudeConfidence_specs_1 = { + sizeof(struct AttitudeConfidence), + offsetof(struct AttitudeConfidence, _asn_ctx), + asn_MAP_AttitudeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AttitudeConfidence = { + "AttitudeConfidence", + "AttitudeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_AttitudeConfidence_tags_1, + sizeof(asn_DEF_AttitudeConfidence_tags_1) + /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ + asn_DEF_AttitudeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_AttitudeConfidence_tags_1) + /sizeof(asn_DEF_AttitudeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AttitudeConfidence_1, + 3, /* Elements count */ + &asn_SPC_AttitudeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c b/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c new file mode 100644 index 000000000..9a8075e5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AuxiliaryBrakeStatus.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AuxiliaryBrakeStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_AuxiliaryBrakeStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_AuxiliaryBrakeStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_AuxiliaryBrakeStatus_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_AuxiliaryBrakeStatus_specs_1 = { + asn_MAP_AuxiliaryBrakeStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_AuxiliaryBrakeStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_AuxiliaryBrakeStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AuxiliaryBrakeStatus = { + "AuxiliaryBrakeStatus", + "AuxiliaryBrakeStatus", + &asn_OP_NativeEnumerated, + asn_DEF_AuxiliaryBrakeStatus_tags_1, + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + asn_DEF_AuxiliaryBrakeStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1) + /sizeof(asn_DEF_AuxiliaryBrakeStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_AuxiliaryBrakeStatus_constr_1, &asn_PER_type_AuxiliaryBrakeStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_AuxiliaryBrakeStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AxleLocation.c b/src/tmx/Asn_J2735/src/r63/AxleLocation.c new file mode 100644 index 000000000..0945bc6ab --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AxleLocation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AxleLocation.h" + +int +AxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_AxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleLocation = { + "AxleLocation", + "AxleLocation", + &asn_OP_NativeInteger, + asn_DEF_AxleLocation_tags_1, + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + asn_DEF_AxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleLocation_tags_1) + /sizeof(asn_DEF_AxleLocation_tags_1[0]), /* 1 */ + { &asn_OER_type_AxleLocation_constr_1, &asn_PER_type_AxleLocation_constr_1, AxleLocation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeight.c b/src/tmx/Asn_J2735/src/r63/AxleWeight.c new file mode 100644 index 000000000..162199755 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AxleWeight.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AxleWeight.h" + +int +AxleWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 64255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AxleWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +asn_per_constraints_t asn_PER_type_AxleWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AxleWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeight = { + "AxleWeight", + "AxleWeight", + &asn_OP_NativeInteger, + asn_DEF_AxleWeight_tags_1, + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + asn_DEF_AxleWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeight_tags_1) + /sizeof(asn_DEF_AxleWeight_tags_1[0]), /* 1 */ + { &asn_OER_type_AxleWeight_constr_1, &asn_PER_type_AxleWeight_constr_1, AxleWeight_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeightList.c b/src/tmx/Asn_J2735/src/r63/AxleWeightList.c new file mode 100644 index 000000000..b55198f92 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AxleWeightList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AxleWeightList.h" + +static asn_oer_constraints_t asn_OER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_AxleWeightList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_AxleWeightList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_AxleWeightSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_AxleWeightList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_AxleWeightList_specs_1 = { + sizeof(struct AxleWeightList), + offsetof(struct AxleWeightList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightList = { + "AxleWeightList", + "AxleWeightList", + &asn_OP_SEQUENCE_OF, + asn_DEF_AxleWeightList_tags_1, + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightList_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightList_tags_1) + /sizeof(asn_DEF_AxleWeightList_tags_1[0]), /* 1 */ + { &asn_OER_type_AxleWeightList_constr_1, &asn_PER_type_AxleWeightList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_AxleWeightList_1, + 1, /* Single element */ + &asn_SPC_AxleWeightList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c b/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c new file mode 100644 index 000000000..ec283f9e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/AxleWeightSet.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "AxleWeightSet.h" + +asn_TYPE_member_t asn_MBR_AxleWeightSet_1[] = { + { ATF_POINTER, 2, offsetof(struct AxleWeightSet, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 1, offsetof(struct AxleWeightSet, weight), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "weight" + }, +}; +static const int asn_MAP_AxleWeightSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_AxleWeightSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_AxleWeightSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* weight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_AxleWeightSet_specs_1 = { + sizeof(struct AxleWeightSet), + offsetof(struct AxleWeightSet, _asn_ctx), + asn_MAP_AxleWeightSet_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_AxleWeightSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_AxleWeightSet = { + "AxleWeightSet", + "AxleWeightSet", + &asn_OP_SEQUENCE, + asn_DEF_AxleWeightSet_tags_1, + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + asn_DEF_AxleWeightSet_tags_1, /* Same as above */ + sizeof(asn_DEF_AxleWeightSet_tags_1) + /sizeof(asn_DEF_AxleWeightSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_AxleWeightSet_1, + 2, /* Elements count */ + &asn_SPC_AxleWeightSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BIT_STRING.c b/src/tmx/Asn_J2735/src/r63/BIT_STRING.c new file mode 100644 index 000000000..e8d7354c8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BIT_STRING.c @@ -0,0 +1,656 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * BIT STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BIT_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs = { + sizeof(BIT_STRING_t), + offsetof(BIT_STRING_t, _asn_ctx), + ASN_OSUBV_BIT +}; +asn_TYPE_operation_t asn_OP_BIT_STRING = { + OCTET_STRING_free, /* Implemented in terms of OCTET STRING */ + BIT_STRING_print, + BIT_STRING_compare, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_decode_xer_binary, + BIT_STRING_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + BIT_STRING_decode_oer, + BIT_STRING_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + BIT_STRING_decode_uper, /* Unaligned PER decoder */ + BIT_STRING_encode_uper, /* Unaligned PER encoder */ + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + BIT_STRING_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BIT_STRING = { + "BIT STRING", + "BIT_STRING", + &asn_OP_BIT_STRING, + asn_DEF_BIT_STRING_tags, + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + asn_DEF_BIT_STRING_tags, /* Same as above */ + sizeof(asn_DEF_BIT_STRING_tags) + / sizeof(asn_DEF_BIT_STRING_tags[0]), + { 0, 0, BIT_STRING_constraint }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs +}; + +/* + * BIT STRING generic constraint. + */ +int +BIT_STRING_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + + if(st && st->buf) { + if((st->size == 0 && st->bits_unused) + || st->bits_unused < 0 || st->bits_unused > 7) { + ASN__CTFAIL(app_key, td, sptr, + "%s: invalid padding byte (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +static const char *_bit_pattern[16] = { + "0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", + "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111" +}; + +asn_enc_rval_t +BIT_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + char scratch[128]; + char *p = scratch; + char *scend = scratch + (sizeof(scratch) - 10); + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + int xcan = (flags & XER_F_CANONICAL); + uint8_t *buf; + uint8_t *end; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size - 1; /* Last byte is special */ + + /* + * Binary dump + */ + for(; buf < end; buf++) { + int v = *buf; + int nline = xcan?0:(((buf - st->buf) % 8) == 0); + if(p >= scend || nline) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + if(nline) ASN__TEXT_INDENT(1, ilevel); + } + memcpy(p + 0, _bit_pattern[v >> 4], 4); + memcpy(p + 4, _bit_pattern[v & 0x0f], 4); + p += 8; + } + + if(!xcan && ((buf - st->buf) % 8) == 0) + ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + + if(buf == end) { + int v = *buf; + int ubits = st->bits_unused; + int i; + for(i = 7; i >= ubits; i--) + *p++ = (v & (1 << i)) ? 0x31 : 0x30; + ASN__CALLBACK(scratch, p - scratch); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + + +/* + * BIT STRING specific contents printer. + */ +int +BIT_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + char scratch[64]; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + uint8_t *buf; + uint8_t *end; + char *p = scratch; + + (void)td; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + ilevel++; + buf = st->buf; + end = buf + st->size; + + /* + * Hexadecimal dump. + */ + for(; buf < end; buf++) { + if((buf - st->buf) % 16 == 0 && (st->size > 16) + && buf != st->buf) { + _i_INDENT(1); + /* Dump the string */ + if(cb(scratch, p - scratch, app_key) < 0) return -1; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Eat the tailing space */ + + if((st->size > 16)) { + _i_INDENT(1); + } + + /* Dump the incomplete 16-bytes row */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + if(st->bits_unused) { + int ret = snprintf(scratch, sizeof(scratch), " (%d bit%s unused)", + st->bits_unused, st->bits_unused == 1 ? "" : "s"); + assert(ret > 0 && ret < (ssize_t)sizeof(scratch)); + if(ret > 0 && ret < (ssize_t)sizeof(scratch) + && cb(scratch, ret, app_key) < 0) + return -1; + } + + return 0; +} + +/* + * Non-destructively remove the trailing 0-bits from the given bit string. + */ +static const BIT_STRING_t * +BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp) { + const uint8_t *b; + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + + if(st->size == 0) { + assert(st->bits_unused == 0); + return st; + } else { + for(b = &st->buf[st->size - 1]; b > st->buf && *b == 0; b--) { + ; + } + /* b points to the last byte which may contain data */ + if(*b) { + int unused = 7; + uint8_t v = *b; + v &= -(int8_t)v; + if(v & 0x0F) unused -= 4; + if(v & 0x33) unused -= 2; + if(v & 0x55) unused -= 1; + tmp->size = b-st->buf + 1; + tmp->bits_unused = unused; + } else { + tmp->size = b-st->buf; + tmp->bits_unused = 0; + } + + assert(b >= st->buf); + } + + unconst.c_buf = st->buf; + tmp->buf = unconst.nc_buf; + return tmp; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +BIT_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + /* + * Remove information about trailing bits, since + * X.680 (08/2015) #22.7 "ensure that different semantics are not" + * "associated with [values that differ only in] the trailing 0 bits." + */ + BIT_STRING_t compact_a, compact_b; + const BIT_STRING_t *a = BIT_STRING__compactify(aptr, &compact_a); + const BIT_STRING_t *b = BIT_STRING__compactify(bptr, &compact_b); + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + + assert(specs && specs->subvariant == ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + /* Figure out how many unused bits */ + if(a->bits_unused > b->bits_unused) { + return -1; + } else if(a->bits_unused < b->bits_unused) { + return 1; + } else { + return 0; + } + } + } else { + return ret; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +static asn_per_constraint_t asn_DEF_BIT_STRING_constraint_size = { + APC_SEMI_CONSTRAINED, -1, -1, 0, 0}; + +asn_dec_rval_t +BIT_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + + (void)opt_codec_ctx; + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + + if(specs->subvariant != ASN_OSUBV_BIT) { + ASN_DEBUG("Subvariant %d is not BIT OSUBV_BIT", specs->subvariant); + RETURN(RC_FAIL); + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + st->size = (csiz->upper_bound + 7) >> 3; + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + ASN_DEBUG("Encoding BIT STRING size %ld", csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, csiz->upper_bound); + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += csiz->upper_bound; + st->buf[st->size] = 0; + st->bits_unused = (8 - (csiz->upper_bound & 0x7)) & 0x7; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, len_bits); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +BIT_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + BIT_STRING_t compact_bstr; /* Do not modify this directly! */ + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + size_t size_in_bits; + const uint8_t *buf; + int ret; + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(specs->subvariant == ASN_OSUBV_BIT) { + if((st->size == 0 && st->bits_unused) || (st->bits_unused & ~7)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + + if(pc) { + csiz = &pc->size; + } else { + csiz = &asn_DEF_BIT_STRING_constraint_size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + /* Figure out the size without the trailing bits */ + st = BIT_STRING__compactify(st, &compact_bstr); + size_in_bits = 8 * st->size - st->bits_unused; + + ASN_DEBUG( + "Encoding %s into %" ASN_PRI_SIZE " bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_bits, csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_bits > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_BIT_STRING_constraint_size; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + int add_trailer = (ssize_t)size_in_bits < csiz->lower_bound; + ASN_DEBUG( + "Encoding %" ASN_PRI_SIZE " bytes (%ld), length (in %d bits) trailer %d; actual " + "value %" ASN_PRI_SSIZE "", + st->size, size_in_bits - csiz->lower_bound, csiz->effective_bits, + add_trailer, + add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound); + ret = per_put_few_bits( + po, add_trailer ? 0 : (ssize_t)size_in_bits - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = per_put_many_bits(po, st->buf, size_in_bits); + if(ret) ASN__ENCODE_FAILED; + if(add_trailer) { + static const uint8_t zeros[16]; + size_t trailing_zero_bits = csiz->lower_bound - size_in_bits; + while(trailing_zero_bits > 0) { + if(trailing_zero_bits > 8 * sizeof(zeros)) { + ret = per_put_many_bits(po, zeros, 8 * sizeof(zeros)); + trailing_zero_bits -= 8 * sizeof(zeros); + } else { + ret = per_put_many_bits(po, zeros, trailing_zero_bits); + trailing_zero_bits = 0; + } + if(ret) ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + do { + int need_eom = 0; + ssize_t maySave = uper_put_length(po, size_in_bits, &need_eom); + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "", maySave, size_in_bits); + + ret = per_put_many_bits(po, buf, maySave); + if(ret) ASN__ENCODE_FAILED; + + buf += maySave >> 3; + size_in_bits -= maySave; + assert(!(maySave & 0x07) || !size_in_bits); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_bits); + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +asn_random_fill_result_t +BIT_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_BIT_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + static unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_bits, rnd_len; + BIT_STRING_t *st; + + if(max_length == 0) return result_skipped; + + switch(specs->subvariant) { + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + break; + default: + break; + } + + /* Figure out how far we should go */ + rnd_bits = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length < (size_t)pc->lower_bound) { + return result_skipped; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_bits = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_bits = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_bits from the table */ + if(rnd_bits < max_length) { + break; + } + /* Fall through */ + default: + rnd_bits = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_bits = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_bits = asn_random_between(0, max_length - 1); + } + } else if(rnd_bits >= max_length) { + rnd_bits = asn_random_between(0, max_length - 1); + } + + rnd_len = (rnd_bits + 7) / 8; + buf = CALLOC(1, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[rnd_len]; + + for(b = buf; b < bend; b++) { + *(uint8_t *)b = asn_random_between(0, 255); + } + *b = 0; /* Zero-terminate just in case. */ + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = rnd_len; + st->bits_unused = (8 - (rnd_bits & 0x7)) & 0x7; + if(st->bits_unused) { + assert(st->size > 0); + st->buf[st->size-1] &= 0xff << st->bits_unused; + } + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c new file mode 100644 index 000000000..aff5075cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BIT_STRING_oer.c @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +asn_dec_rval_t +BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + (void)opt_codec_ctx; + + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = (ct_size + 7) >> 3; + st->bits_unused = (8 - (ct_size & 7)) & 7; + } else { + /* + * X.696 (08/2015) #13.3.1 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length < 1) { + ASN__DECODE_FAILED; + } else if(expected_length > size) { + ASN__DECODE_STARVED; + } + + st->bits_unused = ((const uint8_t *)ptr)[0]; + if(st->bits_unused & ~7) { + ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name); + ASN__DECODE_FAILED; + } + ptr = (const char *)ptr + 1; + size--; + expected_length--; + rval.consumed = len_len + 1; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + if(expected_length > 0) { + buf[expected_length - 1] &= (0xff << st->bits_unused); + } + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t erval = {0, 0, 0}; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + size_t trailing_zeros = 0; + int fix_last_byte = 0; + + if(!st) ASN__ENCODE_FAILED; + + if(st->bits_unused & ~7) { + ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range", + st->bits_unused); + ASN__ENCODE_FAILED; + } + if(st->bits_unused && !(st->size && st->buf)) { + ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name, + st->bits_unused); + ASN__ENCODE_FAILED; + } + + if(ct_size >= 0) { + size_t ct_bytes = (ct_size + 7) >> 3; + if(st->size > ct_bytes) { + ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "", + td->name, 8 * st->size - st->bits_unused, ct_size); + ASN__ENCODE_FAILED; + } + trailing_zeros = ct_bytes - st->size; /* Allow larger constraint */ + } else { + uint8_t ub = st->bits_unused & 7; + ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key); + if(len_len < 0) ASN__ENCODE_FAILED; + if(cb(&ub, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + erval.encoded += len_len + 1; + } + + if(st->bits_unused) { + if(st->buf[st->size - 1] & (0xff << st->bits_unused)) { + fix_last_byte = 1; + } + } + + if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + if(fix_last_byte) { + uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused); + if(cb(&b, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + erval.encoded += st->size; + + if(trailing_zeros) { + static uint8_t zeros[16]; + while(trailing_zeros > 0) { + int ret; + if(trailing_zeros < sizeof(zeros)) { + ret = cb(zeros, trailing_zeros, app_key); + erval.encoded += trailing_zeros; + } else { + ret = cb(zeros, sizeof(zeros), app_key); + erval.encoded += sizeof(zeros); + } + if(ret < 0) ASN__ENCODE_FAILED; + } + } + + return erval; +} + + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/BOOLEAN.c b/src/tmx/Asn_J2735/src/r63/BOOLEAN.c new file mode 100644 index 000000000..25831e2b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BOOLEAN.c @@ -0,0 +1,492 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * BOOLEAN basic type description. + */ +static const ber_tlv_tag_t asn_DEF_BOOLEAN_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_operation_t asn_OP_BOOLEAN = { + BOOLEAN_free, + BOOLEAN_print, + BOOLEAN_compare, + BOOLEAN_decode_ber, + BOOLEAN_encode_der, + BOOLEAN_decode_xer, + BOOLEAN_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + BOOLEAN_decode_oer, + BOOLEAN_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + BOOLEAN_decode_uper, /* Unaligned PER decoder */ + BOOLEAN_encode_uper, /* Unaligned PER encoder */ + BOOLEAN_decode_aper, /* Aligned PER decoder */ + BOOLEAN_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + BOOLEAN_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_BOOLEAN = { + "BOOLEAN", + "BOOLEAN", + &asn_OP_BOOLEAN, + asn_DEF_BOOLEAN_tags, + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + asn_DEF_BOOLEAN_tags, /* Same as above */ + sizeof(asn_DEF_BOOLEAN_tags) / sizeof(asn_DEF_BOOLEAN_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Decode BOOLEAN type. + */ +asn_dec_rval_t +BOOLEAN_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **bool_value, + const void *buf_ptr, size_t size, int tag_mode) { + BOOLEAN_t *st = (BOOLEAN_t *)*bool_value; + asn_dec_rval_t rval; + ber_tlv_len_t length; + ber_tlv_len_t lidx; + + if(st == NULL) { + st = (BOOLEAN_t *)(*bool_value = CALLOC(1, sizeof(*st))); + if(st == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as BOOLEAN (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("Boolean length is %d bytes", (int)length); + + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * Compute boolean value. + */ + for(*st = 0, lidx = 0; + (lidx < length) && *st == 0; lidx++) { + /* + * Very simple approach: read bytes until the end or + * value is already TRUE. + * BOOLEAN is not supposed to contain meaningful data anyway. + */ + *st |= ((const uint8_t *)buf_ptr)[lidx]; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s, value=%d", + (long)rval.consumed, (long)length, + td->name, *st); + + return rval; +} + +asn_enc_rval_t +BOOLEAN_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + + erval.encoded = der_write_tags(td, 1, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb) { + uint8_t bool_value; + + bool_value = *st ? 0xff : 0; /* 0xff mandated by DER */ + + if(cb(&bool_value, 1, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } + + erval.encoded += 1; + + ASN__ENCODED_OK(erval); +} + + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +BOOLEAN__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + BOOLEAN_t *st = (BOOLEAN_t *)sptr; + const char *p = (const char *)chunk_buf; + + (void)td; + + if(chunk_size && p[0] == 0x3c /* '<' */) { + switch(xer_check_tag(chunk_buf, chunk_size, "false")) { + case XCT_BOTH: + /* "" */ + *st = 0; + break; + case XCT_UNKNOWN_BO: + if(xer_check_tag(chunk_buf, chunk_size, "true") + != XCT_BOTH) + return XPBD_BROKEN_ENCODING; + /* "" */ + *st = 1; /* Or 0xff as in DER?.. */ + break; + default: + return XPBD_BROKEN_ENCODING; + } + return XPBD_BODY_CONSUMED; + } else { + return XPBD_BROKEN_ENCODING; + } +} + + +asn_dec_rval_t +BOOLEAN_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size, + BOOLEAN__xer_body_decode); +} + +asn_enc_rval_t +BOOLEAN_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + + (void)ilevel; + (void)flags; + + if(!st) ASN__ENCODE_FAILED; + + if(*st) { + ASN__CALLBACK("", 7); + } else { + ASN__CALLBACK("", 8); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +int +BOOLEAN_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + const char *buf; + size_t buflen; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st) { + if(*st) { + buf = "TRUE"; + buflen = 4; + } else { + buf = "FALSE"; + buflen = 5; + } + } else { + buf = ""; + buflen = 8; + } + + return (cb(buf, buflen, app_key) < 0) ? -1 : 0; +} + +void +BOOLEAN_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(BOOLEAN_t)); + break; + } + } +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +BOOLEAN_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: *st = 1; break; + case 0: *st = 0; break; + case -1: default: ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + + +asn_enc_rval_t +BOOLEAN_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +BOOLEAN_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + BOOLEAN_t *st = (BOOLEAN_t *)*sptr; + + (void)opt_codec_ctx; + (void)constraints; + (void)td; + + if(!st) { + st = (BOOLEAN_t *)(*sptr = MALLOC(sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + /* + * Extract a single bit + */ + switch(per_get_few_bits(pd, 1)) { + case 1: + *st = 1; + break; + case 0: + *st = 0; + break; + case -1: + default: + ASN__DECODE_STARVED; + } + + ASN_DEBUG("%s decoded as %s", td->name, *st ? "TRUE" : "FALSE"); + + rv.code = RC_OK; + rv.consumed = 1; + return rv; +} + +asn_enc_rval_t +BOOLEAN_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const BOOLEAN_t *st = (const BOOLEAN_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + if(per_put_few_bits(po, *st ? 1 : 0, 1)) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +#ifndef ASN_DISABLE_OER_SUPPORT + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +BOOLEAN_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 1, 0, 0 }; + const BOOLEAN_t *st = sptr; + uint8_t bool_value = *st ? 0xff : 0; /* 0xff mandated by OER */ + + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(cb(&bool_value, 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +asn_dec_rval_t +BOOLEAN_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + asn_dec_rval_t ok = {RC_OK, 1}; + BOOLEAN_t *st; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; /* Constraints are unused in OER */ + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if(!(st = *sptr)) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + *st = *(const uint8_t *)ptr; + + return ok; +} + + + +#endif + +int +BOOLEAN_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const BOOLEAN_t *a = aptr; + const BOOLEAN_t *b = bptr; + + (void)td; + + if(a && b) { + if(!*a == !*b) { /* TRUE can be encoded by any non-zero byte. */ + return 0; + } else if(!*a) { + return -1; + } else { + return 1; + } + } else if(!a) { + return -1; + } else { + return 1; + } +} + +asn_random_fill_result_t +BOOLEAN_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + BOOLEAN_t *st = *sptr; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (BOOLEAN_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(st == NULL) { + return result_failed; + } + } + + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_CONSTRAINED) { + *st = asn_random_between(pc->lower_bound, pc->upper_bound); + return result_ok; + } + } + + /* Simulate booleans that are sloppily set and biased. */ + switch(asn_random_between(0, 7)) { + case 0: + case 1: + case 2: + *st = 0; break; + case 3: *st = -1; break; + case 4: *st = 1; break; + case 5: *st = INT_MIN; break; + case 6: *st = INT_MAX; break; + default: + *st = asn_random_between(INT_MIN, INT_MAX); + break; + } + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r63/BSMcoreData.c b/src/tmx/Asn_J2735/src/r63/BSMcoreData.c new file mode 100644 index 000000000..276602b05 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BSMcoreData.c @@ -0,0 +1,180 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BSMcoreData.h" + +asn_TYPE_member_t asn_MBR_BSMcoreData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, lat), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, Long), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, elev), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elev" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, transmission), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "transmission" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, speed), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, heading), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, angle), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, accelSet), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, brakes), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "brakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMcoreData, size), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "size" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMcoreData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMcoreData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* elev */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transmission */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* brakes */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 } /* size */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMcoreData_specs_1 = { + sizeof(struct BSMcoreData), + offsetof(struct BSMcoreData, _asn_ctx), + asn_MAP_BSMcoreData_tag2el_1, + 14, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMcoreData = { + "BSMcoreData", + "BSMcoreData", + &asn_OP_SEQUENCE, + asn_DEF_BSMcoreData_tags_1, + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + asn_DEF_BSMcoreData_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMcoreData_tags_1) + /sizeof(asn_DEF_BSMcoreData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_BSMcoreData_1, + 14, /* Elements count */ + &asn_SPC_BSMcoreData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c new file mode 100644 index 000000000..d4a4cadb1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage-addGrpCarma.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "BasicSafetyMessage-addGrpCarma.h" + +static int +memb_routeDestinationPoints_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_routeDestinationPoints_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_routeDestinationPoints_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_routeDestinationPoints_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Position3D_addGrpCarma, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_routeDestinationPoints_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_routeDestinationPoints_specs_2 = { + sizeof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints), + offsetof(struct BasicSafetyMessage_addGrpCarma__routeDestinationPoints, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_routeDestinationPoints_2 = { + "routeDestinationPoints", + "routeDestinationPoints", + &asn_OP_SEQUENCE_OF, + asn_DEF_routeDestinationPoints_tags_2, + sizeof(asn_DEF_routeDestinationPoints_tags_2) + /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]) - 1, /* 1 */ + asn_DEF_routeDestinationPoints_tags_2, /* Same as above */ + sizeof(asn_DEF_routeDestinationPoints_tags_2) + /sizeof(asn_DEF_routeDestinationPoints_tags_2[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_routeDestinationPoints_2, + 1, /* Single element */ + &asn_SPC_routeDestinationPoints_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[] = { + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage_addGrpCarma, routeDestinationPoints), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_routeDestinationPoints_2, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_routeDestinationPoints_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_routeDestinationPoints_constraint_1 + }, + 0, 0, /* No default value */ + "routeDestinationPoints" + }, +}; +static const int asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routeDestinationPoints */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 = { + sizeof(struct BasicSafetyMessage_addGrpCarma), + offsetof(struct BasicSafetyMessage_addGrpCarma, _asn_ctx), + asn_MAP_BasicSafetyMessage_addGrpCarma_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_addGrpCarma_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage_addGrpCarma = { + "BasicSafetyMessage-addGrpCarma", + "BasicSafetyMessage-addGrpCarma", + &asn_OP_SEQUENCE, + asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_addGrpCarma_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BasicSafetyMessage_addGrpCarma_1, + 1, /* Elements count */ + &asn_SPC_BasicSafetyMessage_addGrpCarma_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c new file mode 100644 index 000000000..1090c478d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BasicSafetyMessage.c @@ -0,0 +1,310 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "BasicSafetyMessage.h" + +static int +memb_partII_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 8UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1UL && size <= 4UL)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BSMpartIIExtension, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_partII_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_partII_specs_3 = { + sizeof(struct BasicSafetyMessage__partII), + offsetof(struct BasicSafetyMessage__partII, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_3 = { + "partII", + "partII", + &asn_OP_SEQUENCE_OF, + asn_DEF_partII_tags_3, + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]) - 1, /* 1 */ + asn_DEF_partII_tags_3, /* Same as above */ + sizeof(asn_DEF_partII_tags_3) + /sizeof(asn_DEF_partII_tags_3[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_partII_3, + 1, /* Single element */ + &asn_SPC_partII_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct BasicSafetyMessage__regional), + offsetof(struct BasicSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_type_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_OF_constraint + }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BasicSafetyMessage, coreData), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "coreData" + }, + { ATF_POINTER, 2, offsetof(struct BasicSafetyMessage, partII), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_partII_3, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_constraint_1 + }, + 0, 0, /* No default value */ + "partII" + }, + { ATF_POINTER, 1, offsetof(struct BasicSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regional_constr_5, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regional_constraint_1 + }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_BasicSafetyMessage_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* coreData */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* partII */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BasicSafetyMessage_specs_1 = { + sizeof(struct BasicSafetyMessage), + offsetof(struct BasicSafetyMessage, _asn_ctx), + asn_MAP_BasicSafetyMessage_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_BasicSafetyMessage_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BasicSafetyMessage = { + "BasicSafetyMessage", + "BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BasicSafetyMessage_1, + 3, /* Elements count */ + &asn_SPC_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c b/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c new file mode 100644 index 000000000..daf20838c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BasicVehicleClass.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BasicVehicleClass.h" + +int +BasicVehicleClass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_BasicVehicleClass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_BasicVehicleClass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleClass = { + "BasicVehicleClass", + "BasicVehicleClass", + &asn_OP_NativeInteger, + asn_DEF_BasicVehicleClass_tags_1, + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleClass_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleClass_tags_1) + /sizeof(asn_DEF_BasicVehicleClass_tags_1[0]), /* 1 */ + { &asn_OER_type_BasicVehicleClass_constr_1, &asn_PER_type_BasicVehicleClass_constr_1, BasicVehicleClass_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c b/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c new file mode 100644 index 000000000..6ec89742e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BasicVehicleRole.c @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BasicVehicleRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_BasicVehicleRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 22 } /* (0..22,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_BasicVehicleRole_value2enum_1[] = { + { 0, 12, "basicVehicle" }, + { 1, 15, "publicTransport" }, + { 2, 16, "specialTransport" }, + { 3, 14, "dangerousGoods" }, + { 4, 8, "roadWork" }, + { 5, 10, "roadRescue" }, + { 6, 9, "emergency" }, + { 7, 9, "safetyCar" }, + { 8, 12, "none-unknown" }, + { 9, 5, "truck" }, + { 10, 10, "motorcycle" }, + { 11, 14, "roadSideSource" }, + { 12, 6, "police" }, + { 13, 4, "fire" }, + { 14, 9, "ambulance" }, + { 15, 3, "dot" }, + { 16, 7, "transit" }, + { 17, 10, "slowMoving" }, + { 18, 7, "stopNgo" }, + { 19, 7, "cyclist" }, + { 20, 10, "pedestrian" }, + { 21, 12, "nonMotorized" }, + { 22, 8, "military" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_BasicVehicleRole_enum2value_1[] = { + 14, /* ambulance(14) */ + 0, /* basicVehicle(0) */ + 19, /* cyclist(19) */ + 3, /* dangerousGoods(3) */ + 15, /* dot(15) */ + 6, /* emergency(6) */ + 13, /* fire(13) */ + 22, /* military(22) */ + 10, /* motorcycle(10) */ + 21, /* nonMotorized(21) */ + 8, /* none-unknown(8) */ + 20, /* pedestrian(20) */ + 12, /* police(12) */ + 1, /* publicTransport(1) */ + 5, /* roadRescue(5) */ + 11, /* roadSideSource(11) */ + 4, /* roadWork(4) */ + 7, /* safetyCar(7) */ + 17, /* slowMoving(17) */ + 2, /* specialTransport(2) */ + 18, /* stopNgo(18) */ + 16, /* transit(16) */ + 9 /* truck(9) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_BasicVehicleRole_specs_1 = { + asn_MAP_BasicVehicleRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BasicVehicleRole_enum2value_1, /* N => "tag"; sorted by N */ + 23, /* Number of elements in the maps */ + 24, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BasicVehicleRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BasicVehicleRole = { + "BasicVehicleRole", + "BasicVehicleRole", + &asn_OP_NativeEnumerated, + asn_DEF_BasicVehicleRole_tags_1, + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + asn_DEF_BasicVehicleRole_tags_1, /* Same as above */ + sizeof(asn_DEF_BasicVehicleRole_tags_1) + /sizeof(asn_DEF_BasicVehicleRole_tags_1[0]), /* 1 */ + { &asn_OER_type_BasicVehicleRole_constr_1, &asn_PER_type_BasicVehicleRole_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BasicVehicleRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c b/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c new file mode 100644 index 000000000..b337b154e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BrakeAppliedPressure.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BrakeAppliedPressure.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_BrakeAppliedPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_BrakeAppliedPressure_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "minPressure" }, + { 2, 7, "bkLvl-2" }, + { 3, 7, "bkLvl-3" }, + { 4, 7, "bkLvl-4" }, + { 5, 7, "bkLvl-5" }, + { 6, 7, "bkLvl-6" }, + { 7, 7, "bkLvl-7" }, + { 8, 7, "bkLvl-8" }, + { 9, 7, "bkLvl-9" }, + { 10, 8, "bkLvl-10" }, + { 11, 8, "bkLvl-11" }, + { 12, 8, "bkLvl-12" }, + { 13, 8, "bkLvl-13" }, + { 14, 8, "bkLvl-14" }, + { 15, 11, "maxPressure" } +}; +static const unsigned int asn_MAP_BrakeAppliedPressure_enum2value_1[] = { + 10, /* bkLvl-10(10) */ + 11, /* bkLvl-11(11) */ + 12, /* bkLvl-12(12) */ + 13, /* bkLvl-13(13) */ + 14, /* bkLvl-14(14) */ + 2, /* bkLvl-2(2) */ + 3, /* bkLvl-3(3) */ + 4, /* bkLvl-4(4) */ + 5, /* bkLvl-5(5) */ + 6, /* bkLvl-6(6) */ + 7, /* bkLvl-7(7) */ + 8, /* bkLvl-8(8) */ + 9, /* bkLvl-9(9) */ + 15, /* maxPressure(15) */ + 1, /* minPressure(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeAppliedPressure_specs_1 = { + asn_MAP_BrakeAppliedPressure_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeAppliedPressure_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeAppliedPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedPressure = { + "BrakeAppliedPressure", + "BrakeAppliedPressure", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeAppliedPressure_tags_1, + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedPressure_tags_1) + /sizeof(asn_DEF_BrakeAppliedPressure_tags_1[0]), /* 1 */ + { &asn_OER_type_BrakeAppliedPressure_constr_1, &asn_PER_type_BrakeAppliedPressure_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeAppliedPressure_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c b/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c new file mode 100644 index 000000000..7fe2fa19a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BrakeAppliedStatus.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BrakeAppliedStatus.h" + +int +BrakeAppliedStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +asn_per_constraints_t asn_PER_type_BrakeAppliedStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_BrakeAppliedStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeAppliedStatus = { + "BrakeAppliedStatus", + "BrakeAppliedStatus", + &asn_OP_BIT_STRING, + asn_DEF_BrakeAppliedStatus_tags_1, + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeAppliedStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeAppliedStatus_tags_1) + /sizeof(asn_DEF_BrakeAppliedStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_BrakeAppliedStatus_constr_1, &asn_PER_type_BrakeAppliedStatus_constr_1, BrakeAppliedStatus_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c b/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c new file mode 100644 index 000000000..8f67bdbfa --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BrakeBoostApplied.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BrakeBoostApplied.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_BrakeBoostApplied_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_BrakeBoostApplied_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" } +}; +static const unsigned int asn_MAP_BrakeBoostApplied_enum2value_1[] = { + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_BrakeBoostApplied_specs_1 = { + asn_MAP_BrakeBoostApplied_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_BrakeBoostApplied_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_BrakeBoostApplied_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BrakeBoostApplied = { + "BrakeBoostApplied", + "BrakeBoostApplied", + &asn_OP_NativeEnumerated, + asn_DEF_BrakeBoostApplied_tags_1, + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + asn_DEF_BrakeBoostApplied_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeBoostApplied_tags_1) + /sizeof(asn_DEF_BrakeBoostApplied_tags_1[0]), /* 1 */ + { &asn_OER_type_BrakeBoostApplied_constr_1, &asn_PER_type_BrakeBoostApplied_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BrakeBoostApplied_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c b/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c new file mode 100644 index 000000000..54d708b9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BrakeSystemStatus.c @@ -0,0 +1,100 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BrakeSystemStatus.h" + +asn_TYPE_member_t asn_MBR_BrakeSystemStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, wheelBrakes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wheelBrakes" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, traction), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TractionControlStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "traction" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, abs), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntiLockBrakeStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "abs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, scs), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StabilityControlStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "scs" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, brakeBoost), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeBoostApplied, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "brakeBoost" + }, + { ATF_NOFLAGS, 0, offsetof(struct BrakeSystemStatus, auxBrakes), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AuxiliaryBrakeStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "auxBrakes" + }, +}; +static const ber_tlv_tag_t asn_DEF_BrakeSystemStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BrakeSystemStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* wheelBrakes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* traction */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* abs */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* scs */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakeBoost */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* auxBrakes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BrakeSystemStatus_specs_1 = { + sizeof(struct BrakeSystemStatus), + offsetof(struct BrakeSystemStatus, _asn_ctx), + asn_MAP_BrakeSystemStatus_tag2el_1, + 6, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BrakeSystemStatus = { + "BrakeSystemStatus", + "BrakeSystemStatus", + &asn_OP_SEQUENCE, + asn_DEF_BrakeSystemStatus_tags_1, + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + asn_DEF_BrakeSystemStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_BrakeSystemStatus_tags_1) + /sizeof(asn_DEF_BrakeSystemStatus_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_BrakeSystemStatus_1, + 6, /* Elements count */ + &asn_SPC_BrakeSystemStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BumperHeight.c b/src/tmx/Asn_J2735/src/r63/BumperHeight.c new file mode 100644 index 000000000..fc68b2bd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BumperHeight.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BumperHeight.h" + +int +BumperHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_BumperHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +asn_per_constraints_t asn_PER_type_BumperHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_BumperHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeight = { + "BumperHeight", + "BumperHeight", + &asn_OP_NativeInteger, + asn_DEF_BumperHeight_tags_1, + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + asn_DEF_BumperHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeight_tags_1) + /sizeof(asn_DEF_BumperHeight_tags_1[0]), /* 1 */ + { &asn_OER_type_BumperHeight_constr_1, &asn_PER_type_BumperHeight_constr_1, BumperHeight_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/BumperHeights.c b/src/tmx/Asn_J2735/src/r63/BumperHeights.c new file mode 100644 index 000000000..994d88a7b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/BumperHeights.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "BumperHeights.h" + +asn_TYPE_member_t asn_MBR_BumperHeights_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, front), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "front" + }, + { ATF_NOFLAGS, 0, offsetof(struct BumperHeights, rear), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rear" + }, +}; +static const ber_tlv_tag_t asn_DEF_BumperHeights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BumperHeights_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* front */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BumperHeights_specs_1 = { + sizeof(struct BumperHeights), + offsetof(struct BumperHeights, _asn_ctx), + asn_MAP_BumperHeights_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BumperHeights = { + "BumperHeights", + "BumperHeights", + &asn_OP_SEQUENCE, + asn_DEF_BumperHeights_tags_1, + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + asn_DEF_BumperHeights_tags_1, /* Same as above */ + sizeof(asn_DEF_BumperHeights_tags_1) + /sizeof(asn_DEF_BumperHeights_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_BumperHeights_1, + 2, /* Elements count */ + &asn_SPC_BumperHeights_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/CargoWeight.c b/src/tmx/Asn_J2735/src/r63/CargoWeight.c new file mode 100644 index 000000000..611f6d454 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/CargoWeight.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "CargoWeight.h" + +int +CargoWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 64255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CargoWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +asn_per_constraints_t asn_PER_type_CargoWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_CargoWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CargoWeight = { + "CargoWeight", + "CargoWeight", + &asn_OP_NativeInteger, + asn_DEF_CargoWeight_tags_1, + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + asn_DEF_CargoWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_CargoWeight_tags_1) + /sizeof(asn_DEF_CargoWeight_tags_1[0]), /* 1 */ + { &asn_OER_type_CargoWeight_constr_1, &asn_PER_type_CargoWeight_constr_1, CargoWeight_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Circle.c b/src/tmx/Asn_J2735/src/r63/Circle.c new file mode 100644 index 000000000..d3f96888a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Circle.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Circle.h" + +asn_TYPE_member_t asn_MBR_Circle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Circle, center), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "center" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, radius), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Radius_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "radius" + }, + { ATF_NOFLAGS, 0, offsetof(struct Circle, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DistanceUnits, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_Circle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Circle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* center */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* radius */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Circle_specs_1 = { + sizeof(struct Circle), + offsetof(struct Circle, _asn_ctx), + asn_MAP_Circle_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Circle = { + "Circle", + "Circle", + &asn_OP_SEQUENCE, + asn_DEF_Circle_tags_1, + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + asn_DEF_Circle_tags_1, /* Same as above */ + sizeof(asn_DEF_Circle_tags_1) + /sizeof(asn_DEF_Circle_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Circle_1, + 3, /* Elements count */ + &asn_SPC_Circle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c b/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c new file mode 100644 index 000000000..423fdca04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ClassificationConfidence.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ClassificationConfidence.h" + +int +ClassificationConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 101)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..101) */, + -1}; +asn_per_constraints_t asn_PER_type_ClassificationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ClassificationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ClassificationConfidence = { + "ClassificationConfidence", + "ClassificationConfidence", + &asn_OP_NativeInteger, + asn_DEF_ClassificationConfidence_tags_1, + sizeof(asn_DEF_ClassificationConfidence_tags_1) + /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ClassificationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ClassificationConfidence_tags_1) + /sizeof(asn_DEF_ClassificationConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_ClassificationConfidence_constr_1, &asn_PER_type_ClassificationConfidence_constr_1, ClassificationConfidence_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/CoarseHeading.c b/src/tmx/Asn_J2735/src/r63/CoarseHeading.c new file mode 100644 index 000000000..de6a9969a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/CoarseHeading.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "CoarseHeading.h" + +int +CoarseHeading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 240)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..240) */, + -1}; +asn_per_constraints_t asn_PER_type_CoarseHeading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 240 } /* (0..240) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_CoarseHeading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoarseHeading = { + "CoarseHeading", + "CoarseHeading", + &asn_OP_NativeInteger, + asn_DEF_CoarseHeading_tags_1, + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + asn_DEF_CoarseHeading_tags_1, /* Same as above */ + sizeof(asn_DEF_CoarseHeading_tags_1) + /sizeof(asn_DEF_CoarseHeading_tags_1[0]), /* 1 */ + { &asn_OER_type_CoarseHeading_constr_1, &asn_PER_type_CoarseHeading_constr_1, CoarseHeading_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/CodeWord.c b/src/tmx/Asn_J2735/src/r63/CodeWord.c new file mode 100644 index 000000000..86abda0df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/CodeWord.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "CodeWord.h" + +int +CodeWord_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CodeWord_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +static asn_per_constraints_t asn_PER_type_CodeWord_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_CodeWord_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CodeWord = { + "CodeWord", + "CodeWord", + &asn_OP_OCTET_STRING, + asn_DEF_CodeWord_tags_1, + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + asn_DEF_CodeWord_tags_1, /* Same as above */ + sizeof(asn_DEF_CodeWord_tags_1) + /sizeof(asn_DEF_CodeWord_tags_1[0]), /* 1 */ + { &asn_OER_type_CodeWord_constr_1, &asn_PER_type_CodeWord_constr_1, CodeWord_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c b/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c new file mode 100644 index 000000000..573f1f3d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/CoefficientOfFriction.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "CoefficientOfFriction.h" + +int +CoefficientOfFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 50)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..50) */, + -1}; +asn_per_constraints_t asn_PER_type_CoefficientOfFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 50 } /* (0..50) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_CoefficientOfFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CoefficientOfFriction = { + "CoefficientOfFriction", + "CoefficientOfFriction", + &asn_OP_NativeInteger, + asn_DEF_CoefficientOfFriction_tags_1, + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + asn_DEF_CoefficientOfFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_CoefficientOfFriction_tags_1) + /sizeof(asn_DEF_CoefficientOfFriction_tags_1[0]), /* 1 */ + { &asn_OER_type_CoefficientOfFriction_constr_1, &asn_PER_type_CoefficientOfFriction_constr_1, CoefficientOfFriction_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c b/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c new file mode 100644 index 000000000..83a5e8e44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/CommonSafetyRequest.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "CommonSafetyRequest.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct CommonSafetyRequest__regional), + offsetof(struct CommonSafetyRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_CommonSafetyRequest_1[] = { + { ATF_POINTER, 3, offsetof(struct CommonSafetyRequest, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct CommonSafetyRequest, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, id), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct CommonSafetyRequest, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestedItemList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_POINTER, 1, offsetof(struct CommonSafetyRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_CommonSafetyRequest_oms_1[] = { 0, 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_CommonSafetyRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_CommonSafetyRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_CommonSafetyRequest_specs_1 = { + sizeof(struct CommonSafetyRequest), + offsetof(struct CommonSafetyRequest, _asn_ctx), + asn_MAP_CommonSafetyRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_CommonSafetyRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_CommonSafetyRequest = { + "CommonSafetyRequest", + "CommonSafetyRequest", + &asn_OP_SEQUENCE, + asn_DEF_CommonSafetyRequest_tags_1, + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + asn_DEF_CommonSafetyRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_CommonSafetyRequest_tags_1) + /sizeof(asn_DEF_CommonSafetyRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_CommonSafetyRequest_1, + 5, /* Elements count */ + &asn_SPC_CommonSafetyRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ComputedLane.c b/src/tmx/Asn_J2735/src/r63/ComputedLane.c new file mode 100644 index 000000000..5a31bf6bd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ComputedLane.c @@ -0,0 +1,305 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ComputedLane.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_offsetXaxis_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_offsetYaxis_constr_6 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_offsetXaxis_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetXaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetXaxis_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetXaxis_specs_3 = { + sizeof(struct ComputedLane__offsetXaxis), + offsetof(struct ComputedLane__offsetXaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetXaxis, present), + sizeof(((struct ComputedLane__offsetXaxis *)0)->present), + asn_MAP_offsetXaxis_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetXaxis_3 = { + "offsetXaxis", + "offsetXaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_offsetXaxis_constr_3, &asn_PER_type_offsetXaxis_constr_3, CHOICE_constraint }, + asn_MBR_offsetXaxis_3, + 2, /* Elements count */ + &asn_SPC_offsetXaxis_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_offsetYaxis_6[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.small), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetSm, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "small" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane__offsetYaxis, choice.large), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivenLineOffsetLg, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "large" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offsetYaxis_tag2el_6[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* small */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* large */ +}; +static asn_CHOICE_specifics_t asn_SPC_offsetYaxis_specs_6 = { + sizeof(struct ComputedLane__offsetYaxis), + offsetof(struct ComputedLane__offsetYaxis, _asn_ctx), + offsetof(struct ComputedLane__offsetYaxis, present), + sizeof(((struct ComputedLane__offsetYaxis *)0)->present), + asn_MAP_offsetYaxis_tag2el_6, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsetYaxis_6 = { + "offsetYaxis", + "offsetYaxis", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_offsetYaxis_constr_6, &asn_PER_type_offsetYaxis_constr_6, CHOICE_constraint }, + asn_MBR_offsetYaxis_6, + 2, /* Elements count */ + &asn_SPC_offsetYaxis_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct ComputedLane__regional), + offsetof(struct ComputedLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ComputedLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, referenceLaneId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "referenceLaneId" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetXaxis), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetXaxis_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetXaxis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ComputedLane, offsetYaxis), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offsetYaxis_6, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetYaxis" + }, + { ATF_POINTER, 4, offsetof(struct ComputedLane, rotateXY), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Angle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rotateXY" + }, + { ATF_POINTER, 3, offsetof(struct ComputedLane, scaleXaxis), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "scaleXaxis" + }, + { ATF_POINTER, 2, offsetof(struct ComputedLane, scaleYaxis), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Scale_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "scaleYaxis" + }, + { ATF_POINTER, 1, offsetof(struct ComputedLane, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ComputedLane_oms_1[] = { 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ComputedLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ComputedLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* referenceLaneId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offsetYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* rotateXY */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* scaleXaxis */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* scaleYaxis */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ComputedLane_specs_1 = { + sizeof(struct ComputedLane), + offsetof(struct ComputedLane, _asn_ctx), + asn_MAP_ComputedLane_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ComputedLane_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ComputedLane = { + "ComputedLane", + "ComputedLane", + &asn_OP_SEQUENCE, + asn_DEF_ComputedLane_tags_1, + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + asn_DEF_ComputedLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ComputedLane_tags_1) + /sizeof(asn_DEF_ComputedLane_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ComputedLane_1, + 7, /* Elements count */ + &asn_SPC_ComputedLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Confidence.c b/src/tmx/Asn_J2735/src/r63/Confidence.c new file mode 100644 index 000000000..cb47864d4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Confidence.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Confidence.h" + +int +Confidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Confidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +asn_per_constraints_t asn_PER_type_Confidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Confidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Confidence = { + "Confidence", + "Confidence", + &asn_OP_NativeInteger, + asn_DEF_Confidence_tags_1, + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + asn_DEF_Confidence_tags_1, /* Same as above */ + sizeof(asn_DEF_Confidence_tags_1) + /sizeof(asn_DEF_Confidence_tags_1[0]), /* 1 */ + { &asn_OER_type_Confidence_constr_1, &asn_PER_type_Confidence_constr_1, Confidence_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c b/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c new file mode 100644 index 000000000..1b97b9b3e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ConfidenceSet.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ConfidenceSet.h" + +asn_TYPE_member_t asn_MBR_ConfidenceSet_1[] = { + { ATF_POINTER, 7, offsetof(struct ConfidenceSet, accelConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelSteerYawRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accelConfidence" + }, + { ATF_POINTER, 6, offsetof(struct ConfidenceSet, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidence" + }, + { ATF_POINTER, 5, offsetof(struct ConfidenceSet, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 4, offsetof(struct ConfidenceSet, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 3, offsetof(struct ConfidenceSet, steerConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "steerConfidence" + }, + { ATF_POINTER, 2, offsetof(struct ConfidenceSet, headingConfidence), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "headingConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ConfidenceSet, throttleConfidence), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "throttleConfidence" + }, +}; +static const int asn_MAP_ConfidenceSet_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_ConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steerConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* headingConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* throttleConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConfidenceSet_specs_1 = { + sizeof(struct ConfidenceSet), + offsetof(struct ConfidenceSet, _asn_ctx), + asn_MAP_ConfidenceSet_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ConfidenceSet_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConfidenceSet = { + "ConfidenceSet", + "ConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_ConfidenceSet_tags_1, + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_ConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ConfidenceSet_tags_1) + /sizeof(asn_DEF_ConfidenceSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ConfidenceSet_1, + 7, /* Elements count */ + &asn_SPC_ConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ConnectingLane.c b/src/tmx/Asn_J2735/src/r63/ConnectingLane.c new file mode 100644 index 000000000..dc0fa6986 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ConnectingLane.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ConnectingLane.h" + +asn_TYPE_member_t asn_MBR_ConnectingLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectingLane, lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_POINTER, 1, offsetof(struct ConnectingLane, maneuver), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maneuver" + }, +}; +static const int asn_MAP_ConnectingLane_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectingLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectingLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maneuver */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectingLane_specs_1 = { + sizeof(struct ConnectingLane), + offsetof(struct ConnectingLane, _asn_ctx), + asn_MAP_ConnectingLane_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectingLane_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectingLane = { + "ConnectingLane", + "ConnectingLane", + &asn_OP_SEQUENCE, + asn_DEF_ConnectingLane_tags_1, + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + asn_DEF_ConnectingLane_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectingLane_tags_1) + /sizeof(asn_DEF_ConnectingLane_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ConnectingLane_1, + 2, /* Elements count */ + &asn_SPC_ConnectingLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Connection.c b/src/tmx/Asn_J2735/src/r63/Connection.c new file mode 100644 index 000000000..bb1df0c41 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Connection.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Connection.h" + +asn_TYPE_member_t asn_MBR_Connection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Connection, connectingLane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectingLane, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connectingLane" + }, + { ATF_POINTER, 4, offsetof(struct Connection, remoteIntersection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "remoteIntersection" + }, + { ATF_POINTER, 3, offsetof(struct Connection, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_POINTER, 2, offsetof(struct Connection, userClass), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "userClass" + }, + { ATF_POINTER, 1, offsetof(struct Connection, connectionID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connectionID" + }, +}; +static const int asn_MAP_Connection_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_Connection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Connection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectingLane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* remoteIntersection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userClass */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* connectionID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Connection_specs_1 = { + sizeof(struct Connection), + offsetof(struct Connection, _asn_ctx), + asn_MAP_Connection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Connection_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Connection = { + "Connection", + "Connection", + &asn_OP_SEQUENCE, + asn_DEF_Connection_tags_1, + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + asn_DEF_Connection_tags_1, /* Same as above */ + sizeof(asn_DEF_Connection_tags_1) + /sizeof(asn_DEF_Connection_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Connection_1, + 5, /* Elements count */ + &asn_SPC_Connection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c new file mode 100644 index 000000000..3ed6e79a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist-addGrpC.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ConnectionManeuverAssist-addGrpC.h" + +static asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist_addGrpC, vehicleToLanePositions), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleToLanePositionList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleToLanePositions" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist_addGrpC, rsuDistanceFromAnchor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rsuDistanceFromAnchor" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleToLanePositions */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsuDistanceFromAnchor */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 = { + sizeof(struct ConnectionManeuverAssist_addGrpC), + offsetof(struct ConnectionManeuverAssist_addGrpC, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_addGrpC_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist_addGrpC = { + "ConnectionManeuverAssist-addGrpC", + "ConnectionManeuverAssist-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_addGrpC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ConnectionManeuverAssist_addGrpC_1, + 2, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c new file mode 100644 index 000000000..9198d94b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ConnectionManeuverAssist.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ConnectionManeuverAssist.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct ConnectionManeuverAssist__regional), + offsetof(struct ConnectionManeuverAssist__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ConnectionManeuverAssist_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ConnectionManeuverAssist, connectionID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connectionID" + }, + { ATF_POINTER, 5, offsetof(struct ConnectionManeuverAssist, queueLength), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "queueLength" + }, + { ATF_POINTER, 4, offsetof(struct ConnectionManeuverAssist, availableStorageLength), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ZoneLength, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "availableStorageLength" + }, + { ATF_POINTER, 3, offsetof(struct ConnectionManeuverAssist, waitOnStop), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WaitOnStopline, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "waitOnStop" + }, + { ATF_POINTER, 2, offsetof(struct ConnectionManeuverAssist, pedBicycleDetect), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PedestrianBicycleDetect, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pedBicycleDetect" + }, + { ATF_POINTER, 1, offsetof(struct ConnectionManeuverAssist, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ConnectionManeuverAssist_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_ConnectionManeuverAssist_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ConnectionManeuverAssist_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* connectionID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* queueLength */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* availableStorageLength */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* waitOnStop */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pedBicycleDetect */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ConnectionManeuverAssist_specs_1 = { + sizeof(struct ConnectionManeuverAssist), + offsetof(struct ConnectionManeuverAssist, _asn_ctx), + asn_MAP_ConnectionManeuverAssist_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ConnectionManeuverAssist_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectionManeuverAssist = { + "ConnectionManeuverAssist", + "ConnectionManeuverAssist", + &asn_OP_SEQUENCE, + asn_DEF_ConnectionManeuverAssist_tags_1, + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + asn_DEF_ConnectionManeuverAssist_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectionManeuverAssist_tags_1) + /sizeof(asn_DEF_ConnectionManeuverAssist_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ConnectionManeuverAssist_1, + 6, /* Elements count */ + &asn_SPC_ConnectionManeuverAssist_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ConnectsToList.c b/src/tmx/Asn_J2735/src/r63/ConnectsToList.c new file mode 100644 index 000000000..5c6b41fa2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ConnectsToList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ConnectsToList.h" + +static asn_oer_constraints_t asn_OER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_ConnectsToList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ConnectsToList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Connection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ConnectsToList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ConnectsToList_specs_1 = { + sizeof(struct ConnectsToList), + offsetof(struct ConnectsToList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ConnectsToList = { + "ConnectsToList", + "ConnectsToList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ConnectsToList_tags_1, + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + asn_DEF_ConnectsToList_tags_1, /* Same as above */ + sizeof(asn_DEF_ConnectsToList_tags_1) + /sizeof(asn_DEF_ConnectsToList_tags_1[0]), /* 1 */ + { &asn_OER_type_ConnectsToList_constr_1, &asn_PER_type_ConnectsToList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_ConnectsToList_1, + 1, /* Single element */ + &asn_SPC_ConnectsToList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Count.c b/src/tmx/Asn_J2735/src/r63/Count.c new file mode 100644 index 000000000..7efa6b9b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Count.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Count.h" + +int +Count_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Count_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..32) */, + -1}; +static asn_per_constraints_t asn_PER_type_Count_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (0..32) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Count_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Count = { + "Count", + "Count", + &asn_OP_NativeInteger, + asn_DEF_Count_tags_1, + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + asn_DEF_Count_tags_1, /* Same as above */ + sizeof(asn_DEF_Count_tags_1) + /sizeof(asn_DEF_Count_tags_1[0]), /* 1 */ + { &asn_OER_type_Count_constr_1, &asn_PER_type_Count_constr_1, Count_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DDate.c b/src/tmx/Asn_J2735/src/r63/DDate.c new file mode 100644 index 000000000..9d1767489 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DDate.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DDate.h" + +static asn_TYPE_member_t asn_MBR_DDate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DDate, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DDate, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DDate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DDate_specs_1 = { + sizeof(struct DDate), + offsetof(struct DDate, _asn_ctx), + asn_MAP_DDate_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDate = { + "DDate", + "DDate", + &asn_OP_SEQUENCE, + asn_DEF_DDate_tags_1, + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + asn_DEF_DDate_tags_1, /* Same as above */ + sizeof(asn_DEF_DDate_tags_1) + /sizeof(asn_DEF_DDate_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DDate_1, + 3, /* Elements count */ + &asn_SPC_DDate_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DDateTime.c b/src/tmx/Asn_J2735/src/r63/DDateTime.c new file mode 100644 index 000000000..ba4c46c44 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DDateTime.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DDateTime.h" + +asn_TYPE_member_t asn_MBR_DDateTime_1[] = { + { ATF_POINTER, 7, offsetof(struct DDateTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 6, offsetof(struct DDateTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, + { ATF_POINTER, 5, offsetof(struct DDateTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "day" + }, + { ATF_POINTER, 4, offsetof(struct DDateTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_POINTER, 3, offsetof(struct DDateTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct DDateTime, second), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DDateTime, offset), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DDateTime_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_DDateTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DDateTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DDateTime_specs_1 = { + sizeof(struct DDateTime), + offsetof(struct DDateTime, _asn_ctx), + asn_MAP_DDateTime_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_DDateTime_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DDateTime = { + "DDateTime", + "DDateTime", + &asn_OP_SEQUENCE, + asn_DEF_DDateTime_tags_1, + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + asn_DEF_DDateTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DDateTime_tags_1) + /sizeof(asn_DEF_DDateTime_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DDateTime_1, + 7, /* Elements count */ + &asn_SPC_DDateTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DDay.c b/src/tmx/Asn_J2735/src/r63/DDay.c new file mode 100644 index 000000000..b01fcfe9b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DDay.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DDay.h" + +int +DDay_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DDay_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +asn_per_constraints_t asn_PER_type_DDay_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DDay = { + "DDay", + "DDay", + &asn_OP_NativeInteger, + asn_DEF_DDay_tags_1, + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + asn_DEF_DDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DDay_tags_1) + /sizeof(asn_DEF_DDay_tags_1[0]), /* 1 */ + { &asn_OER_type_DDay_constr_1, &asn_PER_type_DDay_constr_1, DDay_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DFullTime.c b/src/tmx/Asn_J2735/src/r63/DFullTime.c new file mode 100644 index 000000000..ef4476a05 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DFullTime.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DFullTime.h" + +static asn_TYPE_member_t asn_MBR_DFullTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, day), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "day" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, hour), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DFullTime, minute), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, +}; +static const ber_tlv_tag_t asn_DEF_DFullTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DFullTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* day */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* minute */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DFullTime_specs_1 = { + sizeof(struct DFullTime), + offsetof(struct DFullTime, _asn_ctx), + asn_MAP_DFullTime_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DFullTime = { + "DFullTime", + "DFullTime", + &asn_OP_SEQUENCE, + asn_DEF_DFullTime_tags_1, + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + asn_DEF_DFullTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DFullTime_tags_1) + /sizeof(asn_DEF_DFullTime_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DFullTime_1, + 5, /* Elements count */ + &asn_SPC_DFullTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DHour.c b/src/tmx/Asn_J2735/src/r63/DHour.c new file mode 100644 index 000000000..a45233f81 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DHour.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DHour.h" + +int +DHour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DHour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +asn_per_constraints_t asn_PER_type_DHour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DHour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DHour = { + "DHour", + "DHour", + &asn_OP_NativeInteger, + asn_DEF_DHour_tags_1, + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + asn_DEF_DHour_tags_1, /* Same as above */ + sizeof(asn_DEF_DHour_tags_1) + /sizeof(asn_DEF_DHour_tags_1[0]), /* 1 */ + { &asn_OER_type_DHour_constr_1, &asn_PER_type_DHour_constr_1, DHour_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DMinute.c b/src/tmx/Asn_J2735/src/r63/DMinute.c new file mode 100644 index 000000000..31136aa48 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DMinute.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DMinute.h" + +int +DMinute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 60)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DMinute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +asn_per_constraints_t asn_PER_type_DMinute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DMinute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMinute = { + "DMinute", + "DMinute", + &asn_OP_NativeInteger, + asn_DEF_DMinute_tags_1, + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + asn_DEF_DMinute_tags_1, /* Same as above */ + sizeof(asn_DEF_DMinute_tags_1) + /sizeof(asn_DEF_DMinute_tags_1[0]), /* 1 */ + { &asn_OER_type_DMinute_constr_1, &asn_PER_type_DMinute_constr_1, DMinute_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DMonth.c b/src/tmx/Asn_J2735/src/r63/DMonth.c new file mode 100644 index 000000000..526651e1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DMonth.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DMonth.h" + +int +DMonth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 12)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DMonth_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..12) */, + -1}; +asn_per_constraints_t asn_PER_type_DMonth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 12 } /* (0..12) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DMonth = { + "DMonth", + "DMonth", + &asn_OP_NativeInteger, + asn_DEF_DMonth_tags_1, + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + asn_DEF_DMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonth_tags_1) + /sizeof(asn_DEF_DMonth_tags_1[0]), /* 1 */ + { &asn_OER_type_DMonth_constr_1, &asn_PER_type_DMonth_constr_1, DMonth_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DMonthDay.c b/src/tmx/Asn_J2735/src/r63/DMonthDay.c new file mode 100644 index 000000000..37e039ff1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DMonthDay.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DMonthDay.h" + +static asn_TYPE_member_t asn_MBR_DMonthDay_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, month), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, + { ATF_NOFLAGS, 0, offsetof(struct DMonthDay, day), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDay, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "day" + }, +}; +static const ber_tlv_tag_t asn_DEF_DMonthDay_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DMonthDay_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* month */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* day */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DMonthDay_specs_1 = { + sizeof(struct DMonthDay), + offsetof(struct DMonthDay, _asn_ctx), + asn_MAP_DMonthDay_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DMonthDay = { + "DMonthDay", + "DMonthDay", + &asn_OP_SEQUENCE, + asn_DEF_DMonthDay_tags_1, + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + asn_DEF_DMonthDay_tags_1, /* Same as above */ + sizeof(asn_DEF_DMonthDay_tags_1) + /sizeof(asn_DEF_DMonthDay_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DMonthDay_1, + 2, /* Elements count */ + &asn_SPC_DMonthDay_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DOffset.c b/src/tmx/Asn_J2735/src/r63/DOffset.c new file mode 100644 index 000000000..b9da04733 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DOffset.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DOffset.h" + +int +DOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -840 && value <= 840)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DOffset_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-840..840) */, + -1}; +asn_per_constraints_t asn_PER_type_DOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -840, 840 } /* (-840..840) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DOffset = { + "DOffset", + "DOffset", + &asn_OP_NativeInteger, + asn_DEF_DOffset_tags_1, + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + asn_DEF_DOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_DOffset_tags_1) + /sizeof(asn_DEF_DOffset_tags_1[0]), /* 1 */ + { &asn_OER_type_DOffset_constr_1, &asn_PER_type_DOffset_constr_1, DOffset_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c b/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c new file mode 100644 index 000000000..30d0c4c5d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRC_Angle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_Angle.h" + +int +DSRC_Angle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSRC_Angle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +asn_per_constraints_t asn_PER_type_DSRC_Angle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSRC_Angle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_Angle = { + "Angle", + "Angle", + &asn_OP_NativeInteger, + asn_DEF_DSRC_Angle_tags_1, + sizeof(asn_DEF_DSRC_Angle_tags_1) + /sizeof(asn_DEF_DSRC_Angle_tags_1[0]), /* 1 */ + asn_DEF_DSRC_Angle_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_Angle_tags_1) + /sizeof(asn_DEF_DSRC_Angle_tags_1[0]), /* 1 */ + { &asn_OER_type_DSRC_Angle_constr_1, &asn_PER_type_DSRC_Angle_constr_1, DSRC_Angle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c new file mode 100644 index 000000000..d2958927b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRC_DayOfWeek.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_DayOfWeek.h" + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_DSRC_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_BIT_STRING, + asn_DEF_DSRC_DayOfWeek_tags_1, + sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) + /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DSRC_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) + /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ + { 0, 0, BIT_STRING_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c b/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c new file mode 100644 index 000000000..f36c5ffa0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRC_Elevation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_Elevation.h" + +int +DSRC_Elevation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096 && value <= 61439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSRC_Elevation_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-4096..61439) */, + -1}; +asn_per_constraints_t asn_PER_type_DSRC_Elevation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -4096, 61439 } /* (-4096..61439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSRC_Elevation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_Elevation = { + "Elevation", + "Elevation", + &asn_OP_NativeInteger, + asn_DEF_DSRC_Elevation_tags_1, + sizeof(asn_DEF_DSRC_Elevation_tags_1) + /sizeof(asn_DEF_DSRC_Elevation_tags_1[0]), /* 1 */ + asn_DEF_DSRC_Elevation_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_Elevation_tags_1) + /sizeof(asn_DEF_DSRC_Elevation_tags_1[0]), /* 1 */ + { &asn_OER_type_DSRC_Elevation_constr_1, &asn_PER_type_DSRC_Elevation_constr_1, DSRC_Elevation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c b/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c new file mode 100644 index 000000000..1a70c3bf6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRC_MsgCount.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_MsgCount.h" + +int +DSRC_MsgCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSRC_MsgCount_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +asn_per_constraints_t asn_PER_type_DSRC_MsgCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSRC_MsgCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_MsgCount = { + "MsgCount", + "MsgCount", + &asn_OP_NativeInteger, + asn_DEF_DSRC_MsgCount_tags_1, + sizeof(asn_DEF_DSRC_MsgCount_tags_1) + /sizeof(asn_DEF_DSRC_MsgCount_tags_1[0]), /* 1 */ + asn_DEF_DSRC_MsgCount_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_MsgCount_tags_1) + /sizeof(asn_DEF_DSRC_MsgCount_tags_1[0]), /* 1 */ + { &asn_OER_type_DSRC_MsgCount_constr_1, &asn_PER_type_DSRC_MsgCount_constr_1, DSRC_MsgCount_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c b/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c new file mode 100644 index 000000000..5a2cbb04f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRC_TimeMark.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_TimeMark.h" + +int +DSRC_TimeMark_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 36001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSRC_TimeMark_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..36001) */, + -1}; +asn_per_constraints_t asn_PER_type_DSRC_TimeMark_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 36001 } /* (0..36001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSRC_TimeMark_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_TimeMark = { + "TimeMark", + "TimeMark", + &asn_OP_NativeInteger, + asn_DEF_DSRC_TimeMark_tags_1, + sizeof(asn_DEF_DSRC_TimeMark_tags_1) + /sizeof(asn_DEF_DSRC_TimeMark_tags_1[0]), /* 1 */ + asn_DEF_DSRC_TimeMark_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_TimeMark_tags_1) + /sizeof(asn_DEF_DSRC_TimeMark_tags_1[0]), /* 1 */ + { &asn_OER_type_DSRC_TimeMark_constr_1, &asn_PER_type_DSRC_TimeMark_constr_1, DSRC_TimeMark_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c b/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c new file mode 100644 index 000000000..df12e48d3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSRCmsgID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRCmsgID.h" + +int +DSRCmsgID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_DSRCmsgID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSRCmsgID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRCmsgID = { + "DSRCmsgID", + "DSRCmsgID", + &asn_OP_NativeInteger, + asn_DEF_DSRCmsgID_tags_1, + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + asn_DEF_DSRCmsgID_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRCmsgID_tags_1) + /sizeof(asn_DEF_DSRCmsgID_tags_1[0]), /* 1 */ + { &asn_OER_type_DSRCmsgID_constr_1, &asn_PER_type_DSRCmsgID_constr_1, DSRCmsgID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DSecond.c b/src/tmx/Asn_J2735/src/r63/DSecond.c new file mode 100644 index 000000000..87a84b30f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DSecond.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSecond.h" + +int +DSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DSecond_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_DSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSecond = { + "DSecond", + "DSecond", + &asn_OP_NativeInteger, + asn_DEF_DSecond_tags_1, + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + asn_DEF_DSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_DSecond_tags_1) + /sizeof(asn_DEF_DSecond_tags_1[0]), /* 1 */ + { &asn_OER_type_DSecond_constr_1, &asn_PER_type_DSecond_constr_1, DSecond_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DTime.c b/src/tmx/Asn_J2735/src/r63/DTime.c new file mode 100644 index 000000000..642441f3b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DTime.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DTime.h" + +static asn_TYPE_member_t asn_MBR_DTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DTime, hour), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DHour, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hour" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMinute, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_NOFLAGS, 0, offsetof(struct DTime, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct DTime, offset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_DTime_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_DTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hour */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offset */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DTime_specs_1 = { + sizeof(struct DTime), + offsetof(struct DTime, _asn_ctx), + asn_MAP_DTime_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DTime_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DTime = { + "DTime", + "DTime", + &asn_OP_SEQUENCE, + asn_DEF_DTime_tags_1, + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + asn_DEF_DTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DTime_tags_1) + /sizeof(asn_DEF_DTime_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DTime_1, + 4, /* Elements count */ + &asn_SPC_DTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DYear.c b/src/tmx/Asn_J2735/src/r63/DYear.c new file mode 100644 index 000000000..8a7f689cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DYear.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DYear.h" + +int +DYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DYear_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +asn_per_constraints_t asn_PER_type_DYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DYear = { + "DYear", + "DYear", + &asn_OP_NativeInteger, + asn_DEF_DYear_tags_1, + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + asn_DEF_DYear_tags_1, /* Same as above */ + sizeof(asn_DEF_DYear_tags_1) + /sizeof(asn_DEF_DYear_tags_1[0]), /* 1 */ + { &asn_OER_type_DYear_constr_1, &asn_PER_type_DYear_constr_1, DYear_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DYearMonth.c b/src/tmx/Asn_J2735/src/r63/DYearMonth.c new file mode 100644 index 000000000..dad3e3008 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DYearMonth.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DYearMonth.h" + +static asn_TYPE_member_t asn_MBR_DYearMonth_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_NOFLAGS, 0, offsetof(struct DYearMonth, month), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DMonth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "month" + }, +}; +static const ber_tlv_tag_t asn_DEF_DYearMonth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DYearMonth_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* month */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_DYearMonth_specs_1 = { + sizeof(struct DYearMonth), + offsetof(struct DYearMonth, _asn_ctx), + asn_MAP_DYearMonth_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DYearMonth = { + "DYearMonth", + "DYearMonth", + &asn_OP_SEQUENCE, + asn_DEF_DYearMonth_tags_1, + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + asn_DEF_DYearMonth_tags_1, /* Same as above */ + sizeof(asn_DEF_DYearMonth_tags_1) + /sizeof(asn_DEF_DYearMonth_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DYearMonth_1, + 2, /* Elements count */ + &asn_SPC_DYearMonth_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DailySchedule.c b/src/tmx/Asn_J2735/src/r63/DailySchedule.c new file mode 100644 index 000000000..4c6671ab3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DailySchedule.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DailySchedule.h" + +static int +memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DailySchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, begin), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, + 0, 0, /* No default value */ + "begin" + }, + { ATF_NOFLAGS, 0, offsetof(struct DailySchedule, duration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, + 0, 0, /* No default value */ + "duration" + }, +}; +static const ber_tlv_tag_t asn_DEF_DailySchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DailySchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DailySchedule_specs_1 = { + sizeof(struct DailySchedule), + offsetof(struct DailySchedule, _asn_ctx), + asn_MAP_DailySchedule_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DailySchedule = { + "DailySchedule", + "DailySchedule", + &asn_OP_SEQUENCE, + asn_DEF_DailySchedule_tags_1, + sizeof(asn_DEF_DailySchedule_tags_1) + /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ + asn_DEF_DailySchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_DailySchedule_tags_1) + /sizeof(asn_DEF_DailySchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DailySchedule_1, + 2, /* Elements count */ + &asn_SPC_DailySchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DataParameters.c b/src/tmx/Asn_J2735/src/r63/DataParameters.c new file mode 100644 index 000000000..0d35ff098 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DataParameters.c @@ -0,0 +1,274 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DataParameters.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_5(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_processMethod_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_processAgency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_lastCheckedDate_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_geoidUsed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_5(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_processMethod_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_processMethod_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_processAgency_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_processAgency_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_lastCheckedDate_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_geoidUsed_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +asn_TYPE_member_t asn_MBR_DataParameters_1[] = { + { ATF_POINTER, 4, offsetof(struct DataParameters, processMethod), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_processMethod_constr_2, &asn_PER_memb_processMethod_constr_2, memb_processMethod_constraint_1 }, + 0, 0, /* No default value */ + "processMethod" + }, + { ATF_POINTER, 3, offsetof(struct DataParameters, processAgency), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_processAgency_constr_3, &asn_PER_memb_processAgency_constr_3, memb_processAgency_constraint_1 }, + 0, 0, /* No default value */ + "processAgency" + }, + { ATF_POINTER, 2, offsetof(struct DataParameters, lastCheckedDate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_lastCheckedDate_constr_4, &asn_PER_memb_lastCheckedDate_constr_4, memb_lastCheckedDate_constraint_1 }, + 0, 0, /* No default value */ + "lastCheckedDate" + }, + { ATF_POINTER, 1, offsetof(struct DataParameters, geoidUsed), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_geoidUsed_constr_5, &asn_PER_memb_geoidUsed_constr_5, memb_geoidUsed_constraint_1 }, + 0, 0, /* No default value */ + "geoidUsed" + }, +}; +static const int asn_MAP_DataParameters_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_DataParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DataParameters_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* processMethod */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* processAgency */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lastCheckedDate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* geoidUsed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DataParameters_specs_1 = { + sizeof(struct DataParameters), + offsetof(struct DataParameters, _asn_ctx), + asn_MAP_DataParameters_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DataParameters_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DataParameters = { + "DataParameters", + "DataParameters", + &asn_OP_SEQUENCE, + asn_DEF_DataParameters_tags_1, + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + asn_DEF_DataParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_DataParameters_tags_1) + /sizeof(asn_DEF_DataParameters_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DataParameters_1, + 4, /* Elements count */ + &asn_SPC_DataParameters_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Day.c b/src/tmx/Asn_J2735/src/r63/Day.c new file mode 100644 index 000000000..0bd5197ac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Day.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Day.h" + +int +Day_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Day_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_Day_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Day_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Day = { + "Day", + "Day", + &asn_OP_NativeInteger, + asn_DEF_Day_tags_1, + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + asn_DEF_Day_tags_1, /* Same as above */ + sizeof(asn_DEF_Day_tags_1) + /sizeof(asn_DEF_Day_tags_1[0]), /* 1 */ + { &asn_OER_type_Day_constr_1, &asn_PER_type_Day_constr_1, Day_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DayOfWeek.c b/src/tmx/Asn_J2735/src/r63/DayOfWeek.c new file mode 100644 index 000000000..8d35c8b23 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DayOfWeek.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DayOfWeek.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_DayOfWeek_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_DayOfWeek_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "monday" }, + { 2, 7, "tuesday" }, + { 3, 9, "wednesday" }, + { 4, 8, "thursday" }, + { 5, 6, "friday" }, + { 6, 8, "saturday" }, + { 7, 6, "sunday" } +}; +static const unsigned int asn_MAP_DayOfWeek_enum2value_1[] = { + 5, /* friday(5) */ + 1, /* monday(1) */ + 6, /* saturday(6) */ + 7, /* sunday(7) */ + 4, /* thursday(4) */ + 2, /* tuesday(2) */ + 0, /* unknown(0) */ + 3 /* wednesday(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DayOfWeek_specs_1 = { + asn_MAP_DayOfWeek_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DayOfWeek_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_NativeEnumerated, + asn_DEF_DayOfWeek_tags_1, + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DayOfWeek_tags_1) + /sizeof(asn_DEF_DayOfWeek_tags_1[0]), /* 1 */ + { &asn_OER_type_DayOfWeek_constr_1, &asn_PER_type_DayOfWeek_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DayOfWeek_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DaySchedule.c b/src/tmx/Asn_J2735/src/r63/DaySchedule.c new file mode 100644 index 000000000..9b915fccc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DaySchedule.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "DaySchedule.h" + +static int +memb_begin_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_duration_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_begin_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_begin_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_duration_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_duration_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DaySchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, begin), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_begin_constr_2, &asn_PER_memb_begin_constr_2, memb_begin_constraint_1 }, + 0, 0, /* No default value */ + "begin" + }, + { ATF_NOFLAGS, 0, offsetof(struct DaySchedule, duration), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_duration_constr_3, &asn_PER_memb_duration_constr_3, memb_duration_constraint_1 }, + 0, 0, /* No default value */ + "duration" + }, +}; +static const ber_tlv_tag_t asn_DEF_DaySchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DaySchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* begin */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* duration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DaySchedule_specs_1 = { + sizeof(struct DaySchedule), + offsetof(struct DaySchedule, _asn_ctx), + asn_MAP_DaySchedule_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DaySchedule = { + "DaySchedule", + "DaySchedule", + &asn_OP_SEQUENCE, + asn_DEF_DaySchedule_tags_1, + sizeof(asn_DEF_DaySchedule_tags_1) + /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ + asn_DEF_DaySchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_DaySchedule_tags_1) + /sizeof(asn_DEF_DaySchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DaySchedule_1, + 2, /* Elements count */ + &asn_SPC_DaySchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DegreesLat.c b/src/tmx/Asn_J2735/src/r63/DegreesLat.c new file mode 100644 index 000000000..01fe51b76 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DegreesLat.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DegreesLat.h" + +int +DegreesLat_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -90 && value <= 90)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DegreesLat_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-90..90) */, + -1}; +asn_per_constraints_t asn_PER_type_DegreesLat_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -90, 90 } /* (-90..90) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DegreesLat_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLat = { + "DegreesLat", + "DegreesLat", + &asn_OP_NativeInteger, + asn_DEF_DegreesLat_tags_1, + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + asn_DEF_DegreesLat_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLat_tags_1) + /sizeof(asn_DEF_DegreesLat_tags_1[0]), /* 1 */ + { &asn_OER_type_DegreesLat_constr_1, &asn_PER_type_DegreesLat_constr_1, DegreesLat_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DegreesLong.c b/src/tmx/Asn_J2735/src/r63/DegreesLong.c new file mode 100644 index 000000000..5ed0b14a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DegreesLong.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DegreesLong.h" + +int +DegreesLong_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180 && value <= 180)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DegreesLong_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +asn_per_constraints_t asn_PER_type_DegreesLong_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DegreesLong_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DegreesLong = { + "DegreesLong", + "DegreesLong", + &asn_OP_NativeInteger, + asn_DEF_DegreesLong_tags_1, + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + asn_DEF_DegreesLong_tags_1, /* Same as above */ + sizeof(asn_DEF_DegreesLong_tags_1) + /sizeof(asn_DEF_DegreesLong_tags_1[0]), /* 1 */ + { &asn_OER_type_DegreesLong_constr_1, &asn_PER_type_DegreesLong_constr_1, DegreesLong_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DeltaAngle.c b/src/tmx/Asn_J2735/src/r63/DeltaAngle.c new file mode 100644 index 000000000..0362f2cad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DeltaAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DeltaAngle.h" + +int +DeltaAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -150 && value <= 150)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-150..150) */, + -1}; +asn_per_constraints_t asn_PER_type_DeltaAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -150, 150 } /* (-150..150) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DeltaAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaAngle = { + "DeltaAngle", + "DeltaAngle", + &asn_OP_NativeInteger, + asn_DEF_DeltaAngle_tags_1, + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + asn_DEF_DeltaAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaAngle_tags_1) + /sizeof(asn_DEF_DeltaAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_DeltaAngle_constr_1, &asn_PER_type_DeltaAngle_constr_1, DeltaAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DeltaTime.c b/src/tmx/Asn_J2735/src/r63/DeltaTime.c new file mode 100644 index 000000000..d270ffd7b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DeltaTime.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DeltaTime.h" + +int +DeltaTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -122 && value <= 121)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DeltaTime_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-122..121) */, + -1}; +asn_per_constraints_t asn_PER_type_DeltaTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -122, 121 } /* (-122..121) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DeltaTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DeltaTime = { + "DeltaTime", + "DeltaTime", + &asn_OP_NativeInteger, + asn_DEF_DeltaTime_tags_1, + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + asn_DEF_DeltaTime_tags_1, /* Same as above */ + sizeof(asn_DEF_DeltaTime_tags_1) + /sizeof(asn_DEF_DeltaTime_tags_1[0]), /* 1 */ + { &asn_OER_type_DeltaTime_constr_1, &asn_PER_type_DeltaTime_constr_1, DeltaTime_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DescriptiveName.c b/src/tmx/Asn_J2735/src/r63/DescriptiveName.c new file mode 100644 index 000000000..7a896feec --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DescriptiveName.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DescriptiveName.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +DescriptiveName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 63) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +asn_per_constraints_t asn_PER_type_DescriptiveName_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_DescriptiveName_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DescriptiveName = { + "DescriptiveName", + "DescriptiveName", + &asn_OP_IA5String, + asn_DEF_DescriptiveName_tags_1, + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + asn_DEF_DescriptiveName_tags_1, /* Same as above */ + sizeof(asn_DEF_DescriptiveName_tags_1) + /sizeof(asn_DEF_DescriptiveName_tags_1[0]), /* 1 */ + { &asn_OER_type_DescriptiveName_constr_1, &asn_PER_type_DescriptiveName_constr_1, DescriptiveName_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c new file mode 100644 index 000000000..d22ee61a2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedObjectCommonData.c @@ -0,0 +1,222 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectCommonData.h" + +asn_TYPE_member_t asn_MBR_DetectedObjectCommonData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objType" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objTypeCfd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ClassificationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objTypeCfd" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, objectID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objectID" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, measurementTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MeasurementTimeOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "measurementTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, pos), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionOffsetXYZ, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pos" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speed), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidence" + }, + { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, speedZ), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedZ" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, speedConfidenceZ), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidenceZ" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, heading), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectCommonData, headingConf), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "headingConf" + }, + { ATF_POINTER, 5, offsetof(struct DetectedObjectCommonData, accel4way), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct DetectedObjectCommonData, accCfdX), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdX" + }, + { ATF_POINTER, 3, offsetof(struct DetectedObjectCommonData, accCfdY), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdY" + }, + { ATF_POINTER, 2, offsetof(struct DetectedObjectCommonData, accCfdZ), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdZ" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectCommonData, accCfdYaw), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accCfdYaw" + }, +}; +static const int asn_MAP_DetectedObjectCommonData_oms_1[] = { 9, 10, 13, 14, 15, 16, 17 }; +static const ber_tlv_tag_t asn_DEF_DetectedObjectCommonData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectCommonData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* objType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* objTypeCfd */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* objectID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* measurementTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pos */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* speedConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* speedZ */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* speedConfidenceZ */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* headingConf */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* accCfdX */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* accCfdY */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* accCfdZ */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 } /* accCfdYaw */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectCommonData_specs_1 = { + sizeof(struct DetectedObjectCommonData), + offsetof(struct DetectedObjectCommonData, _asn_ctx), + asn_MAP_DetectedObjectCommonData_tag2el_1, + 18, /* Count of tags in the map */ + asn_MAP_DetectedObjectCommonData_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 18, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectCommonData = { + "DetectedObjectCommonData", + "DetectedObjectCommonData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObjectCommonData_tags_1, + sizeof(asn_DEF_DetectedObjectCommonData_tags_1) + /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectCommonData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectCommonData_tags_1) + /sizeof(asn_DEF_DetectedObjectCommonData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObjectCommonData_1, + 18, /* Elements count */ + &asn_SPC_DetectedObjectCommonData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c new file mode 100644 index 000000000..f15b14725 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedObjectData.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectData.h" + +asn_TYPE_member_t asn_MBR_DetectedObjectData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectData, detObjCommon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObjectCommonData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObjCommon" + }, + { ATF_POINTER, 1, offsetof(struct DetectedObjectData, detObjOptData), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_DetectedObjectOptionalData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObjOptData" + }, +}; +static const int asn_MAP_DetectedObjectData_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_DetectedObjectData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detObjCommon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* detObjOptData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObjectData_specs_1 = { + sizeof(struct DetectedObjectData), + offsetof(struct DetectedObjectData, _asn_ctx), + asn_MAP_DetectedObjectData_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_DetectedObjectData_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectData = { + "DetectedObjectData", + "DetectedObjectData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObjectData_tags_1, + sizeof(asn_DEF_DetectedObjectData_tags_1) + /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectData_tags_1) + /sizeof(asn_DEF_DetectedObjectData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObjectData_1, + 2, /* Elements count */ + &asn_SPC_DetectedObjectData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c new file mode 100644 index 000000000..9cf444254 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedObjectList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectList.h" + +static asn_oer_constraints_t asn_OER_type_DetectedObjectList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..256)) */}; +asn_per_constraints_t asn_PER_type_DetectedObjectList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DetectedObjectList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DetectedObjectData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_DetectedObjectList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_DetectedObjectList_specs_1 = { + sizeof(struct DetectedObjectList), + offsetof(struct DetectedObjectList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectList = { + "DetectedObjectList", + "DetectedObjectList", + &asn_OP_SEQUENCE_OF, + asn_DEF_DetectedObjectList_tags_1, + sizeof(asn_DEF_DetectedObjectList_tags_1) + /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ + asn_DEF_DetectedObjectList_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObjectList_tags_1) + /sizeof(asn_DEF_DetectedObjectList_tags_1[0]), /* 1 */ + { &asn_OER_type_DetectedObjectList_constr_1, &asn_PER_type_DetectedObjectList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_DetectedObjectList_1, + 1, /* Single element */ + &asn_SPC_DetectedObjectList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c b/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c new file mode 100644 index 000000000..c00b24eeb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedObjectOptionalData.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObjectOptionalData.h" + +static asn_oer_constraints_t asn_OER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_DetectedObjectOptionalData_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DetectedObjectOptionalData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVeh), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedVehicleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detVeh" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detVRU), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedVRUData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detVRU" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObjectOptionalData, choice.detObst), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObstacleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detObst" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObjectOptionalData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* detVeh */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* detVRU */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* detObst */ +}; +asn_CHOICE_specifics_t asn_SPC_DetectedObjectOptionalData_specs_1 = { + sizeof(struct DetectedObjectOptionalData), + offsetof(struct DetectedObjectOptionalData, _asn_ctx), + offsetof(struct DetectedObjectOptionalData, present), + sizeof(((struct DetectedObjectOptionalData *)0)->present), + asn_MAP_DetectedObjectOptionalData_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObjectOptionalData = { + "DetectedObjectOptionalData", + "DetectedObjectOptionalData", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_DetectedObjectOptionalData_constr_1, &asn_PER_type_DetectedObjectOptionalData_constr_1, CHOICE_constraint }, + asn_MBR_DetectedObjectOptionalData_1, + 3, /* Elements count */ + &asn_SPC_DetectedObjectOptionalData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c b/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c new file mode 100644 index 000000000..fafab50a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedObstacleData.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedObstacleData.h" + +asn_TYPE_member_t asn_MBR_DetectedObstacleData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSize), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleSize, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obstSize" + }, + { ATF_NOFLAGS, 0, offsetof(struct DetectedObstacleData, obstSizeConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleSizeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obstSizeConfidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_DetectedObstacleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedObstacleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obstSize */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* obstSizeConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedObstacleData_specs_1 = { + sizeof(struct DetectedObstacleData), + offsetof(struct DetectedObstacleData, _asn_ctx), + asn_MAP_DetectedObstacleData_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedObstacleData = { + "DetectedObstacleData", + "DetectedObstacleData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedObstacleData_tags_1, + sizeof(asn_DEF_DetectedObstacleData_tags_1) + /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ + asn_DEF_DetectedObstacleData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedObstacleData_tags_1) + /sizeof(asn_DEF_DetectedObstacleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedObstacleData_1, + 2, /* Elements count */ + &asn_SPC_DetectedObstacleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c b/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c new file mode 100644 index 000000000..29d981cbe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedVRUData.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedVRUData.h" + +asn_TYPE_member_t asn_MBR_DetectedVRUData_1[] = { + { ATF_POINTER, 4, offsetof(struct DetectedVRUData, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_POINTER, 3, offsetof(struct DetectedVRUData, propulsion), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "propulsion" + }, + { ATF_POINTER, 2, offsetof(struct DetectedVRUData, attachment), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attachment" + }, + { ATF_POINTER, 1, offsetof(struct DetectedVRUData, radius), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "radius" + }, +}; +static const int asn_MAP_DetectedVRUData_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_DetectedVRUData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedVRUData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* radius */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedVRUData_specs_1 = { + sizeof(struct DetectedVRUData), + offsetof(struct DetectedVRUData, _asn_ctx), + asn_MAP_DetectedVRUData_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_DetectedVRUData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedVRUData = { + "DetectedVRUData", + "DetectedVRUData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedVRUData_tags_1, + sizeof(asn_DEF_DetectedVRUData_tags_1) + /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ + asn_DEF_DetectedVRUData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedVRUData_tags_1) + /sizeof(asn_DEF_DetectedVRUData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedVRUData_1, + 4, /* Elements count */ + &asn_SPC_DetectedVRUData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c b/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c new file mode 100644 index 000000000..6fdf3e2e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DetectedVehicleData.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "DetectedVehicleData.h" + +asn_TYPE_member_t asn_MBR_DetectedVehicleData_1[] = { + { ATF_POINTER, 10, offsetof(struct DetectedVehicleData, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lights" + }, + { ATF_POINTER, 9, offsetof(struct DetectedVehicleData, vehAttitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAttitude" + }, + { ATF_POINTER, 8, offsetof(struct DetectedVehicleData, vehAttitudeConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttitudeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAttitudeConfidence" + }, + { ATF_POINTER, 7, offsetof(struct DetectedVehicleData, vehAngVel), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AngularVelocity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAngVel" + }, + { ATF_POINTER, 6, offsetof(struct DetectedVehicleData, vehAngVelConfidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AngularVelocityConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehAngVelConfidence" + }, + { ATF_POINTER, 5, offsetof(struct DetectedVehicleData, size), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSize, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "size" + }, + { ATF_POINTER, 4, offsetof(struct DetectedVehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct DetectedVehicleData, vehicleSizeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSizeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleSizeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct DetectedVehicleData, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleClass" + }, + { ATF_POINTER, 1, offsetof(struct DetectedVehicleData, classConf), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ClassificationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "classConf" + }, +}; +static const int asn_MAP_DetectedVehicleData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_DetectedVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DetectedVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehAttitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehAttitudeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* vehAngVel */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehAngVelConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* size */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleSizeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* vehicleClass */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* classConf */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DetectedVehicleData_specs_1 = { + sizeof(struct DetectedVehicleData), + offsetof(struct DetectedVehicleData, _asn_ctx), + asn_MAP_DetectedVehicleData_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_DetectedVehicleData_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DetectedVehicleData = { + "DetectedVehicleData", + "DetectedVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_DetectedVehicleData_tags_1, + sizeof(asn_DEF_DetectedVehicleData_tags_1) + /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ + asn_DEF_DetectedVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_DetectedVehicleData_tags_1) + /sizeof(asn_DEF_DetectedVehicleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DetectedVehicleData_1, + 10, /* Elements count */ + &asn_SPC_DetectedVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c b/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c new file mode 100644 index 000000000..e830c5fff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DirectionOfUse.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DirectionOfUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_DirectionOfUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_DirectionOfUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 7, "forward" }, + { 2, 7, "reverse" }, + { 3, 4, "both" } +}; +static const unsigned int asn_MAP_DirectionOfUse_enum2value_1[] = { + 3, /* both(3) */ + 1, /* forward(1) */ + 2, /* reverse(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DirectionOfUse_specs_1 = { + asn_MAP_DirectionOfUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DirectionOfUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DirectionOfUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DirectionOfUse = { + "DirectionOfUse", + "DirectionOfUse", + &asn_OP_NativeEnumerated, + asn_DEF_DirectionOfUse_tags_1, + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + asn_DEF_DirectionOfUse_tags_1, /* Same as above */ + sizeof(asn_DEF_DirectionOfUse_tags_1) + /sizeof(asn_DEF_DirectionOfUse_tags_1[0]), /* 1 */ + { &asn_OER_type_DirectionOfUse_constr_1, &asn_PER_type_DirectionOfUse_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DirectionOfUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c b/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c new file mode 100644 index 000000000..660f14778 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DisabledVehicle.c @@ -0,0 +1,95 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DisabledVehicle.h" + +static int +memb_statusDetails_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523 && value <= 541)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_statusDetails_constr_2 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +static asn_per_constraints_t asn_PER_memb_statusDetails_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_DisabledVehicle_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct DisabledVehicle, statusDetails), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { &asn_OER_memb_statusDetails_constr_2, &asn_PER_memb_statusDetails_constr_2, memb_statusDetails_constraint_1 }, + 0, 0, /* No default value */ + "statusDetails" + }, + { ATF_POINTER, 1, offsetof(struct DisabledVehicle, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "locationDetails" + }, +}; +static const int asn_MAP_DisabledVehicle_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_DisabledVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_DisabledVehicle_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusDetails */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* locationDetails */ +}; +asn_SEQUENCE_specifics_t asn_SPC_DisabledVehicle_specs_1 = { + sizeof(struct DisabledVehicle), + offsetof(struct DisabledVehicle, _asn_ctx), + asn_MAP_DisabledVehicle_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_DisabledVehicle_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_DisabledVehicle = { + "DisabledVehicle", + "DisabledVehicle", + &asn_OP_SEQUENCE, + asn_DEF_DisabledVehicle_tags_1, + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + asn_DEF_DisabledVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_DisabledVehicle_tags_1) + /sizeof(asn_DEF_DisabledVehicle_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_DisabledVehicle_1, + 2, /* Elements count */ + &asn_SPC_DisabledVehicle_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DistanceUnits.c b/src/tmx/Asn_J2735/src/r63/DistanceUnits.c new file mode 100644 index 000000000..e9d68ed93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DistanceUnits.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DistanceUnits.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_DistanceUnits_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_DistanceUnits_value2enum_1[] = { + { 0, 10, "centimeter" }, + { 1, 5, "cm2-5" }, + { 2, 9, "decimeter" }, + { 3, 5, "meter" }, + { 4, 9, "kilometer" }, + { 5, 4, "foot" }, + { 6, 4, "yard" }, + { 7, 4, "mile" } +}; +static const unsigned int asn_MAP_DistanceUnits_enum2value_1[] = { + 0, /* centimeter(0) */ + 1, /* cm2-5(1) */ + 2, /* decimeter(2) */ + 5, /* foot(5) */ + 4, /* kilometer(4) */ + 3, /* meter(3) */ + 7, /* mile(7) */ + 6 /* yard(6) */ +}; +const asn_INTEGER_specifics_t asn_SPC_DistanceUnits_specs_1 = { + asn_MAP_DistanceUnits_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_DistanceUnits_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_DistanceUnits_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DistanceUnits = { + "DistanceUnits", + "DistanceUnits", + &asn_OP_NativeEnumerated, + asn_DEF_DistanceUnits_tags_1, + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + asn_DEF_DistanceUnits_tags_1, /* Same as above */ + sizeof(asn_DEF_DistanceUnits_tags_1) + /sizeof(asn_DEF_DistanceUnits_tags_1[0]), /* 1 */ + { &asn_OER_type_DistanceUnits_constr_1, &asn_PER_type_DistanceUnits_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_DistanceUnits_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c new file mode 100644 index 000000000..f204eae88 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DriveAxleLiftAirPressure.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DriveAxleLiftAirPressure.h" + +int +DriveAxleLiftAirPressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +asn_per_constraints_t asn_PER_type_DriveAxleLiftAirPressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DriveAxleLiftAirPressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLiftAirPressure = { + "DriveAxleLiftAirPressure", + "DriveAxleLiftAirPressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLiftAirPressure_tags_1, + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLiftAirPressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1) + /sizeof(asn_DEF_DriveAxleLiftAirPressure_tags_1[0]), /* 1 */ + { &asn_OER_type_DriveAxleLiftAirPressure_constr_1, &asn_PER_type_DriveAxleLiftAirPressure_constr_1, DriveAxleLiftAirPressure_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c new file mode 100644 index 000000000..5ac72d25f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DriveAxleLocation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DriveAxleLocation.h" + +int +DriveAxleLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_DriveAxleLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DriveAxleLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLocation = { + "DriveAxleLocation", + "DriveAxleLocation", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLocation_tags_1, + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLocation_tags_1) + /sizeof(asn_DEF_DriveAxleLocation_tags_1[0]), /* 1 */ + { &asn_OER_type_DriveAxleLocation_constr_1, &asn_PER_type_DriveAxleLocation_constr_1, DriveAxleLocation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c b/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c new file mode 100644 index 000000000..bcc52459f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DriveAxleLubePressure.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DriveAxleLubePressure.h" + +int +DriveAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 250)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +asn_per_constraints_t asn_PER_type_DriveAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DriveAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleLubePressure = { + "DriveAxleLubePressure", + "DriveAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleLubePressure_tags_1, + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleLubePressure_tags_1) + /sizeof(asn_DEF_DriveAxleLubePressure_tags_1[0]), /* 1 */ + { &asn_OER_type_DriveAxleLubePressure_constr_1, &asn_PER_type_DriveAxleLubePressure_constr_1, DriveAxleLubePressure_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c b/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c new file mode 100644 index 000000000..d3e8870a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DriveAxleTemperature.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DriveAxleTemperature.h" + +int +DriveAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40 && value <= 210)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +asn_per_constraints_t asn_PER_type_DriveAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DriveAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DriveAxleTemperature = { + "DriveAxleTemperature", + "DriveAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_DriveAxleTemperature_tags_1, + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_DriveAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_DriveAxleTemperature_tags_1) + /sizeof(asn_DEF_DriveAxleTemperature_tags_1[0]), /* 1 */ + { &asn_OER_type_DriveAxleTemperature_constr_1, &asn_PER_type_DriveAxleTemperature_constr_1, DriveAxleTemperature_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c new file mode 100644 index 000000000..8e32dfffc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetLg.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DrivenLineOffsetLg.h" + +int +DrivenLineOffsetLg_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_DrivenLineOffsetLg_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetLg_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetLg = { + "DrivenLineOffsetLg", + "DrivenLineOffsetLg", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetLg_tags_1, + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetLg_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetLg_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetLg_tags_1[0]), /* 1 */ + { &asn_OER_type_DrivenLineOffsetLg_constr_1, &asn_PER_type_DrivenLineOffsetLg_constr_1, DrivenLineOffsetLg_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c new file mode 100644 index 000000000..2cc7388de --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DrivenLineOffsetSm.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DrivenLineOffsetSm.h" + +int +DrivenLineOffsetSm_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2047 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2047..2047) */, + -1}; +asn_per_constraints_t asn_PER_type_DrivenLineOffsetSm_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2047, 2047 } /* (-2047..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DrivenLineOffsetSm_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivenLineOffsetSm = { + "DrivenLineOffsetSm", + "DrivenLineOffsetSm", + &asn_OP_NativeInteger, + asn_DEF_DrivenLineOffsetSm_tags_1, + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + asn_DEF_DrivenLineOffsetSm_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivenLineOffsetSm_tags_1) + /sizeof(asn_DEF_DrivenLineOffsetSm_tags_1[0]), /* 1 */ + { &asn_OER_type_DrivenLineOffsetSm_constr_1, &asn_PER_type_DrivenLineOffsetSm_constr_1, DrivenLineOffsetSm_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c b/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c new file mode 100644 index 000000000..f65d3b82c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/DrivingWheelAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DrivingWheelAngle.h" + +int +DrivingWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +asn_per_constraints_t asn_PER_type_DrivingWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_DrivingWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DrivingWheelAngle = { + "DrivingWheelAngle", + "DrivingWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_DrivingWheelAngle_tags_1, + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_DrivingWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_DrivingWheelAngle_tags_1) + /sizeof(asn_DEF_DrivingWheelAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_DrivingWheelAngle_constr_1, &asn_PER_type_DrivingWheelAngle_constr_1, DrivingWheelAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Duration.c b/src/tmx/Asn_J2735/src/r63/Duration.c new file mode 100644 index 000000000..23dded69e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Duration.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Duration.h" + +int +Duration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 3600)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Duration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..3600) */, + -1}; +static asn_per_constraints_t asn_PER_type_Duration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 3600 } /* (0..3600) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Duration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Duration = { + "Duration", + "Duration", + &asn_OP_NativeInteger, + asn_DEF_Duration_tags_1, + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + asn_DEF_Duration_tags_1, /* Same as above */ + sizeof(asn_DEF_Duration_tags_1) + /sizeof(asn_DEF_Duration_tags_1[0]), /* 1 */ + { &asn_OER_type_Duration_constr_1, &asn_PER_type_Duration_constr_1, Duration_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EXTERNAL.c b/src/tmx/Asn_J2735/src/r63/EXTERNAL.c new file mode 100644 index 000000000..c6bb518b5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EXTERNAL.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ASN1C-UsefulInformationObjectClasses" + * found in "/usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EXTERNAL.h" + +static asn_oer_constraints_t asn_OER_type_encoding_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_encoding_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_encoding_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.single_ASN1_type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ANY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "single-ASN1-type" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.octet_aligned), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "octet-aligned" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL__encoding, choice.arbitrary), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "arbitrary" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_encoding_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* arbitrary */ +}; +static asn_CHOICE_specifics_t asn_SPC_encoding_specs_5 = { + sizeof(struct EXTERNAL__encoding), + offsetof(struct EXTERNAL__encoding, _asn_ctx), + offsetof(struct EXTERNAL__encoding, present), + sizeof(((struct EXTERNAL__encoding *)0)->present), + asn_MAP_encoding_tag2el_5, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_encoding_5 = { + "encoding", + "encoding", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_encoding_constr_5, &asn_PER_type_encoding_constr_5, CHOICE_constraint }, + asn_MBR_encoding_5, + 3, /* Elements count */ + &asn_SPC_encoding_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_EXTERNAL_1[] = { + { ATF_POINTER, 3, offsetof(struct EXTERNAL, direct_reference), + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), + 0, + &asn_DEF_OBJECT_IDENTIFIER, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direct-reference" + }, + { ATF_POINTER, 2, offsetof(struct EXTERNAL, indirect_reference), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indirect-reference" + }, + { ATF_POINTER, 1, offsetof(struct EXTERNAL, data_value_descriptor), + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), + 0, + &asn_DEF_ObjectDescriptor, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "data-value-descriptor" + }, + { ATF_NOFLAGS, 0, offsetof(struct EXTERNAL, encoding), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_encoding_5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "encoding" + }, +}; +static const int asn_MAP_EXTERNAL_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_EXTERNAL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EXTERNAL_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* indirect-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)), 0, 0, 0 }, /* direct-reference */ + { (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), 2, 0, 0 }, /* data-value-descriptor */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* single-ASN1-type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* octet-aligned */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 } /* arbitrary */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_EXTERNAL_specs_1 = { + sizeof(struct EXTERNAL), + offsetof(struct EXTERNAL, _asn_ctx), + asn_MAP_EXTERNAL_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EXTERNAL_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EXTERNAL = { + "EXTERNAL", + "EXTERNAL", + &asn_OP_SEQUENCE, + asn_DEF_EXTERNAL_tags_1, + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]) - 1, /* 1 */ + asn_DEF_EXTERNAL_tags_1, /* Same as above */ + sizeof(asn_DEF_EXTERNAL_tags_1) + /sizeof(asn_DEF_EXTERNAL_tags_1[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EXTERNAL_1, + 4, /* Elements count */ + &asn_SPC_EXTERNAL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c b/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c new file mode 100644 index 000000000..c4e4e1943 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ElevationConfidence.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ElevationConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ElevationConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ElevationConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "elev-500-00" }, + { 2, 11, "elev-200-00" }, + { 3, 11, "elev-100-00" }, + { 4, 11, "elev-050-00" }, + { 5, 11, "elev-020-00" }, + { 6, 11, "elev-010-00" }, + { 7, 11, "elev-005-00" }, + { 8, 11, "elev-002-00" }, + { 9, 11, "elev-001-00" }, + { 10, 11, "elev-000-50" }, + { 11, 11, "elev-000-20" }, + { 12, 11, "elev-000-10" }, + { 13, 11, "elev-000-05" }, + { 14, 11, "elev-000-02" }, + { 15, 11, "elev-000-01" } +}; +static const unsigned int asn_MAP_ElevationConfidence_enum2value_1[] = { + 15, /* elev-000-01(15) */ + 14, /* elev-000-02(14) */ + 13, /* elev-000-05(13) */ + 12, /* elev-000-10(12) */ + 11, /* elev-000-20(11) */ + 10, /* elev-000-50(10) */ + 9, /* elev-001-00(9) */ + 8, /* elev-002-00(8) */ + 7, /* elev-005-00(7) */ + 6, /* elev-010-00(6) */ + 5, /* elev-020-00(5) */ + 4, /* elev-050-00(4) */ + 3, /* elev-100-00(3) */ + 2, /* elev-200-00(2) */ + 1, /* elev-500-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ElevationConfidence_specs_1 = { + asn_MAP_ElevationConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ElevationConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ElevationConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ElevationConfidence = { + "ElevationConfidence", + "ElevationConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ElevationConfidence_tags_1, + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + asn_DEF_ElevationConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ElevationConfidence_tags_1) + /sizeof(asn_DEF_ElevationConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_ElevationConfidence_constr_1, &asn_PER_type_ElevationConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ElevationConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c b/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c new file mode 100644 index 000000000..313c518f6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EmergencyDetails.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EmergencyDetails.h" + +asn_TYPE_member_t asn_MBR_EmergencyDetails_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sspRights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspRights" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, sirenUse), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SirenInUse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sirenUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, lightsUse), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lightsUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyDetails, multi), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MultiVehicleResponse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "multi" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyDetails, events), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEvents, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyDetails, responseType), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responseType" + }, +}; +static const int asn_MAP_EmergencyDetails_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EmergencyDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sirenUse */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lightsUse */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* multi */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* responseType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyDetails_specs_1 = { + sizeof(struct EmergencyDetails), + offsetof(struct EmergencyDetails, _asn_ctx), + asn_MAP_EmergencyDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EmergencyDetails_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyDetails = { + "EmergencyDetails", + "EmergencyDetails", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyDetails_tags_1, + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + asn_DEF_EmergencyDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyDetails_tags_1) + /sizeof(asn_DEF_EmergencyDetails_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EmergencyDetails_1, + 6, /* Elements count */ + &asn_SPC_EmergencyDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c b/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c new file mode 100644 index 000000000..02c57db90 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EmergencyVehicleAlert.c @@ -0,0 +1,231 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EmergencyVehicleAlert.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct EmergencyVehicleAlert__regional), + offsetof(struct EmergencyVehicleAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EmergencyVehicleAlert_1[] = { + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct EmergencyVehicleAlert, rsaMsg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSideAlert, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rsaMsg" + }, + { ATF_POINTER, 8, offsetof(struct EmergencyVehicleAlert, responseType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponseType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responseType" + }, + { ATF_POINTER, 7, offsetof(struct EmergencyVehicleAlert, details), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "details" + }, + { ATF_POINTER, 6, offsetof(struct EmergencyVehicleAlert, mass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 5, offsetof(struct EmergencyVehicleAlert, basicType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_POINTER, 4, offsetof(struct EmergencyVehicleAlert, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 3, offsetof(struct EmergencyVehicleAlert, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 2, offsetof(struct EmergencyVehicleAlert, responderType), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 1, offsetof(struct EmergencyVehicleAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EmergencyVehicleAlert_oms_1[] = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10 }; +static const ber_tlv_tag_t asn_DEF_EmergencyVehicleAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EmergencyVehicleAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rsaMsg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* responseType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* details */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EmergencyVehicleAlert_specs_1 = { + sizeof(struct EmergencyVehicleAlert), + offsetof(struct EmergencyVehicleAlert, _asn_ctx), + asn_MAP_EmergencyVehicleAlert_tag2el_1, + 11, /* Count of tags in the map */ + asn_MAP_EmergencyVehicleAlert_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 11, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EmergencyVehicleAlert = { + "EmergencyVehicleAlert", + "EmergencyVehicleAlert", + &asn_OP_SEQUENCE, + asn_DEF_EmergencyVehicleAlert_tags_1, + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + asn_DEF_EmergencyVehicleAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_EmergencyVehicleAlert_tags_1) + /sizeof(asn_DEF_EmergencyVehicleAlert_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EmergencyVehicleAlert_1, + 11, /* Elements count */ + &asn_SPC_EmergencyVehicleAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EmissionType.c b/src/tmx/Asn_J2735/src/r63/EmissionType.c new file mode 100644 index 000000000..1cbdda68f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EmissionType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EmissionType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EmissionType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_EmissionType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_EmissionType_value2enum_1[] = { + { 0, 5, "typeA" }, + { 1, 5, "typeB" }, + { 2, 5, "typeC" }, + { 3, 5, "typeD" }, + { 4, 5, "typeE" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_EmissionType_enum2value_1[] = { + 0, /* typeA(0) */ + 1, /* typeB(1) */ + 2, /* typeC(2) */ + 3, /* typeD(3) */ + 4 /* typeE(4) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_EmissionType_specs_1 = { + asn_MAP_EmissionType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EmissionType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EmissionType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EmissionType = { + "EmissionType", + "EmissionType", + &asn_OP_NativeEnumerated, + asn_DEF_EmissionType_tags_1, + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + asn_DEF_EmissionType_tags_1, /* Same as above */ + sizeof(asn_DEF_EmissionType_tags_1) + /sizeof(asn_DEF_EmissionType_tags_1[0]), /* 1 */ + { &asn_OER_type_EmissionType_constr_1, &asn_PER_type_EmissionType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EmissionType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c b/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c new file mode 100644 index 000000000..36b928837 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EnabledLaneList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EnabledLaneList.h" + +static asn_oer_constraints_t asn_OER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_EnabledLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_EnabledLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_EnabledLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_EnabledLaneList_specs_1 = { + sizeof(struct EnabledLaneList), + offsetof(struct EnabledLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_EnabledLaneList = { + "EnabledLaneList", + "EnabledLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_EnabledLaneList_tags_1, + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + asn_DEF_EnabledLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_EnabledLaneList_tags_1) + /sizeof(asn_DEF_EnabledLaneList_tags_1[0]), /* 1 */ + { &asn_OER_type_EnabledLaneList_constr_1, &asn_PER_type_EnabledLaneList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_EnabledLaneList_1, + 1, /* Single element */ + &asn_SPC_EnabledLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EpochMins.c b/src/tmx/Asn_J2735/src/r63/EpochMins.c new file mode 100644 index 000000000..2c289fae8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EpochMins.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EpochMins.h" + +int +EpochMins_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 153722867280912)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using INTEGER, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EpochMins_constr_1 CC_NOTUSED = { + { 8, 1 } /* (0..153722867280912) */, + -1}; +asn_per_constraints_t asn_PER_type_EpochMins_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 48, -1, 0, 153722867280912 } /* (0..153722867280912) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EpochMins_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EpochMins = { + "EpochMins", + "EpochMins", + &asn_OP_INTEGER, + asn_DEF_EpochMins_tags_1, + sizeof(asn_DEF_EpochMins_tags_1) + /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ + asn_DEF_EpochMins_tags_1, /* Same as above */ + sizeof(asn_DEF_EpochMins_tags_1) + /sizeof(asn_DEF_EpochMins_tags_1[0]), /* 1 */ + { &asn_OER_type_EpochMins_constr_1, &asn_PER_type_EpochMins_constr_1, EpochMins_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EquipmentType.c b/src/tmx/Asn_J2735/src/r63/EquipmentType.c new file mode 100644 index 000000000..7707fbfe9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EquipmentType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "EquipmentType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EquipmentType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_EquipmentType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_EquipmentType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 3, "rsu" }, + { 2, 3, "obu" }, + { 3, 3, "vru" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_EquipmentType_enum2value_1[] = { + 2, /* obu(2) */ + 1, /* rsu(1) */ + 0, /* unknown(0) */ + 3 /* vru(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_EquipmentType_specs_1 = { + asn_MAP_EquipmentType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EquipmentType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EquipmentType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EquipmentType = { + "EquipmentType", + "EquipmentType", + &asn_OP_NativeEnumerated, + asn_DEF_EquipmentType_tags_1, + sizeof(asn_DEF_EquipmentType_tags_1) + /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ + asn_DEF_EquipmentType_tags_1, /* Same as above */ + sizeof(asn_DEF_EquipmentType_tags_1) + /sizeof(asn_DEF_EquipmentType_tags_1[0]), /* 1 */ + { &asn_OER_type_EquipmentType_constr_1, &asn_PER_type_EquipmentType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EquipmentType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c b/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c new file mode 100644 index 000000000..5b0603e06 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EssMobileFriction.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EssMobileFriction.h" + +int +EssMobileFriction_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 101)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..101) */, + -1}; +asn_per_constraints_t asn_PER_type_EssMobileFriction_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 101 } /* (0..101) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EssMobileFriction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssMobileFriction = { + "EssMobileFriction", + "EssMobileFriction", + &asn_OP_NativeInteger, + asn_DEF_EssMobileFriction_tags_1, + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + asn_DEF_EssMobileFriction_tags_1, /* Same as above */ + sizeof(asn_DEF_EssMobileFriction_tags_1) + /sizeof(asn_DEF_EssMobileFriction_tags_1[0]), /* 1 */ + { &asn_OER_type_EssMobileFriction_constr_1, &asn_PER_type_EssMobileFriction_constr_1, EssMobileFriction_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c b/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c new file mode 100644 index 000000000..027197c33 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EssPrecipRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EssPrecipRate.h" + +int +EssPrecipRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_EssPrecipRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipRate = { + "EssPrecipRate", + "EssPrecipRate", + &asn_OP_NativeInteger, + asn_DEF_EssPrecipRate_tags_1, + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipRate_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipRate_tags_1) + /sizeof(asn_DEF_EssPrecipRate_tags_1[0]), /* 1 */ + { &asn_OER_type_EssPrecipRate_constr_1, &asn_PER_type_EssPrecipRate_constr_1, EssPrecipRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c b/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c new file mode 100644 index 000000000..0cf1b0fa4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EssPrecipSituation.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EssPrecipSituation.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_EssPrecipSituation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 14 } /* (0..14) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipSituation_value2enum_1[] = { + { 1, 5, "other" }, + { 2, 7, "unknown" }, + { 3, 15, "noPrecipitation" }, + { 4, 18, "unidentifiedSlight" }, + { 5, 20, "unidentifiedModerate" }, + { 6, 17, "unidentifiedHeavy" }, + { 7, 10, "snowSlight" }, + { 8, 12, "snowModerate" }, + { 9, 9, "snowHeavy" }, + { 10, 10, "rainSlight" }, + { 11, 12, "rainModerate" }, + { 12, 9, "rainHeavy" }, + { 13, 25, "frozenPrecipitationSlight" }, + { 14, 27, "frozenPrecipitationModerate" }, + { 15, 24, "frozenPrecipitationHeavy" } +}; +static const unsigned int asn_MAP_EssPrecipSituation_enum2value_1[] = { + 14, /* frozenPrecipitationHeavy(15) */ + 13, /* frozenPrecipitationModerate(14) */ + 12, /* frozenPrecipitationSlight(13) */ + 2, /* noPrecipitation(3) */ + 0, /* other(1) */ + 11, /* rainHeavy(12) */ + 10, /* rainModerate(11) */ + 9, /* rainSlight(10) */ + 8, /* snowHeavy(9) */ + 7, /* snowModerate(8) */ + 6, /* snowSlight(7) */ + 5, /* unidentifiedHeavy(6) */ + 4, /* unidentifiedModerate(5) */ + 3, /* unidentifiedSlight(4) */ + 1 /* unknown(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipSituation_specs_1 = { + asn_MAP_EssPrecipSituation_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipSituation_enum2value_1, /* N => "tag"; sorted by N */ + 15, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipSituation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipSituation = { + "EssPrecipSituation", + "EssPrecipSituation", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipSituation_tags_1, + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipSituation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipSituation_tags_1) + /sizeof(asn_DEF_EssPrecipSituation_tags_1[0]), /* 1 */ + { &asn_OER_type_EssPrecipSituation_constr_1, &asn_PER_type_EssPrecipSituation_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipSituation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c b/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c new file mode 100644 index 000000000..0eb20477e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EssPrecipYesNo.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EssPrecipYesNo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_EssPrecipYesNo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_EssPrecipYesNo_value2enum_1[] = { + { 1, 6, "precip" }, + { 2, 8, "noPrecip" }, + { 3, 5, "error" } +}; +static const unsigned int asn_MAP_EssPrecipYesNo_enum2value_1[] = { + 2, /* error(3) */ + 1, /* noPrecip(2) */ + 0 /* precip(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_EssPrecipYesNo_specs_1 = { + asn_MAP_EssPrecipYesNo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_EssPrecipYesNo_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_EssPrecipYesNo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssPrecipYesNo = { + "EssPrecipYesNo", + "EssPrecipYesNo", + &asn_OP_NativeEnumerated, + asn_DEF_EssPrecipYesNo_tags_1, + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + asn_DEF_EssPrecipYesNo_tags_1, /* Same as above */ + sizeof(asn_DEF_EssPrecipYesNo_tags_1) + /sizeof(asn_DEF_EssPrecipYesNo_tags_1[0]), /* 1 */ + { &asn_OER_type_EssPrecipYesNo_constr_1, &asn_PER_type_EssPrecipYesNo_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_EssPrecipYesNo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c b/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c new file mode 100644 index 000000000..e38320e9e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EssSolarRadiation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NTCIP" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EssSolarRadiation.h" + +int +EssSolarRadiation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_EssSolarRadiation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EssSolarRadiation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EssSolarRadiation = { + "EssSolarRadiation", + "EssSolarRadiation", + &asn_OP_NativeInteger, + asn_DEF_EssSolarRadiation_tags_1, + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + asn_DEF_EssSolarRadiation_tags_1, /* Same as above */ + sizeof(asn_DEF_EssSolarRadiation_tags_1) + /sizeof(asn_DEF_EssSolarRadiation_tags_1[0]), /* 1 */ + { &asn_OER_type_EssSolarRadiation_constr_1, &asn_PER_type_EssSolarRadiation_constr_1, EssSolarRadiation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/EventDescription.c b/src/tmx/Asn_J2735/src/r63/EventDescription.c new file mode 100644 index 000000000..9c1e2fd6a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/EventDescription.c @@ -0,0 +1,260 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "EventDescription.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 8)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_type_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_description_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_memb_description_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_description_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_3 = { + sizeof(struct EventDescription__description), + offsetof(struct EventDescription__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_3 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_3, + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]) - 1, /* 1 */ + asn_DEF_description_tags_3, /* Same as above */ + sizeof(asn_DEF_description_tags_3) + /sizeof(asn_DEF_description_tags_3[0]), /* 2 */ + { &asn_OER_type_description_constr_3, &asn_PER_type_description_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_description_3, + 1, /* Single element */ + &asn_SPC_description_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct EventDescription__regional), + offsetof(struct EventDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventDescription, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 5, offsetof(struct EventDescription, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_description_3, + 0, + { &asn_OER_memb_description_constr_3, &asn_PER_memb_description_constr_3, memb_description_constraint_1 }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 4, offsetof(struct EventDescription, priority), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 3, offsetof(struct EventDescription, heading), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 2, offsetof(struct EventDescription, extent), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct EventDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_EventDescription_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_EventDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventDescription_specs_1 = { + sizeof(struct EventDescription), + offsetof(struct EventDescription, _asn_ctx), + asn_MAP_EventDescription_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_EventDescription_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventDescription = { + "EventDescription", + "EventDescription", + &asn_OP_SEQUENCE, + asn_DEF_EventDescription_tags_1, + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + asn_DEF_EventDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_EventDescription_tags_1) + /sizeof(asn_DEF_EventDescription_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventDescription_1, + 6, /* Elements count */ + &asn_SPC_EventDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ExitService.c b/src/tmx/Asn_J2735/src/r63/ExitService.c new file mode 100644 index 000000000..c17a5f4ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ExitService.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ExitService.h" + +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ExitService_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_ExitService_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ExitService__Member__item), + offsetof(struct ExitService__Member__item, _asn_ctx), + offsetof(struct ExitService__Member__item, present), + sizeof(((struct ExitService__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ExitService__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ExitService__Member), + offsetof(struct ExitService__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ExitService_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ExitService_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ExitService_specs_1 = { + sizeof(struct ExitService), + offsetof(struct ExitService, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ExitService = { + "ExitService", + "ExitService", + &asn_OP_SEQUENCE_OF, + asn_DEF_ExitService_tags_1, + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + asn_DEF_ExitService_tags_1, /* Same as above */ + sizeof(asn_DEF_ExitService_tags_1) + /sizeof(asn_DEF_ExitService_tags_1[0]), /* 1 */ + { &asn_OER_type_ExitService_constr_1, &asn_PER_type_ExitService_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_ExitService_1, + 1, /* Single element */ + &asn_SPC_ExitService_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Extent.c b/src/tmx/Asn_J2735/src/r63/Extent.c new file mode 100644 index 000000000..cb65fdde9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Extent.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Extent.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Extent_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_Extent_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Extent_value2enum_1[] = { + { 0, 16, "useInstantlyOnly" }, + { 1, 13, "useFor3meters" }, + { 2, 14, "useFor10meters" }, + { 3, 14, "useFor50meters" }, + { 4, 15, "useFor100meters" }, + { 5, 15, "useFor500meters" }, + { 6, 16, "useFor1000meters" }, + { 7, 16, "useFor5000meters" }, + { 8, 17, "useFor10000meters" }, + { 9, 17, "useFor50000meters" }, + { 10, 18, "useFor100000meters" }, + { 11, 18, "useFor500000meters" }, + { 12, 19, "useFor1000000meters" }, + { 13, 19, "useFor5000000meters" }, + { 14, 20, "useFor10000000meters" }, + { 15, 7, "forever" } +}; +static const unsigned int asn_MAP_Extent_enum2value_1[] = { + 15, /* forever(15) */ + 14, /* useFor10000000meters(14) */ + 12, /* useFor1000000meters(12) */ + 10, /* useFor100000meters(10) */ + 8, /* useFor10000meters(8) */ + 6, /* useFor1000meters(6) */ + 4, /* useFor100meters(4) */ + 2, /* useFor10meters(2) */ + 1, /* useFor3meters(1) */ + 13, /* useFor5000000meters(13) */ + 11, /* useFor500000meters(11) */ + 9, /* useFor50000meters(9) */ + 7, /* useFor5000meters(7) */ + 5, /* useFor500meters(5) */ + 3, /* useFor50meters(3) */ + 0 /* useInstantlyOnly(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Extent_specs_1 = { + asn_MAP_Extent_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Extent_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Extent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Extent = { + "Extent", + "Extent", + &asn_OP_NativeEnumerated, + asn_DEF_Extent_tags_1, + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + asn_DEF_Extent_tags_1, /* Same as above */ + sizeof(asn_DEF_Extent_tags_1) + /sizeof(asn_DEF_Extent_tags_1[0]), /* 1 */ + { &asn_OER_type_Extent_constr_1, &asn_PER_type_Extent_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Extent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ExteriorLights.c b/src/tmx/Asn_J2735/src/r63/ExteriorLights.c new file mode 100644 index 000000000..fad1993b6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ExteriorLights.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ExteriorLights.h" + +int +ExteriorLights_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_ExteriorLights_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ExteriorLights_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ExteriorLights = { + "ExteriorLights", + "ExteriorLights", + &asn_OP_BIT_STRING, + asn_DEF_ExteriorLights_tags_1, + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + asn_DEF_ExteriorLights_tags_1, /* Same as above */ + sizeof(asn_DEF_ExteriorLights_tags_1) + /sizeof(asn_DEF_ExteriorLights_tags_1[0]), /* 1 */ + { &asn_OER_type_ExteriorLights_constr_1, &asn_PER_type_ExteriorLights_constr_1, ExteriorLights_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/FuelType.c b/src/tmx/Asn_J2735/src/r63/FuelType.c new file mode 100644 index 000000000..301ed513c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/FuelType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "FuelType.h" + +int +FuelType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_FuelType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +asn_per_constraints_t asn_PER_type_FuelType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_FuelType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FuelType = { + "FuelType", + "FuelType", + &asn_OP_NativeInteger, + asn_DEF_FuelType_tags_1, + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + asn_DEF_FuelType_tags_1, /* Same as above */ + sizeof(asn_DEF_FuelType_tags_1) + /sizeof(asn_DEF_FuelType_tags_1[0]), /* 1 */ + { &asn_OER_type_FuelType_constr_1, &asn_PER_type_FuelType_constr_1, FuelType_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/FullPositionVector.c b/src/tmx/Asn_J2735/src/r63/FullPositionVector.c new file mode 100644 index 000000000..cfad9fe61 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/FullPositionVector.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "FullPositionVector.h" + +asn_TYPE_member_t asn_MBR_FullPositionVector_1[] = { + { ATF_POINTER, 1, offsetof(struct FullPositionVector, utcTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "utcTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "long" + }, + { ATF_NOFLAGS, 0, offsetof(struct FullPositionVector, lat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_POINTER, 7, offsetof(struct FullPositionVector, elevation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 6, offsetof(struct FullPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 5, offsetof(struct FullPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 4, offsetof(struct FullPositionVector, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 3, offsetof(struct FullPositionVector, timeConfidence), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeConfidence" + }, + { ATF_POINTER, 2, offsetof(struct FullPositionVector, posConfidence), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidenceSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posConfidence" + }, + { ATF_POINTER, 1, offsetof(struct FullPositionVector, speedConfidence), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedConfidence" + }, +}; +static const int asn_MAP_FullPositionVector_oms_1[] = { 0, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_FullPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_FullPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* utcTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* timeConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* posConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* speedConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_FullPositionVector_specs_1 = { + sizeof(struct FullPositionVector), + offsetof(struct FullPositionVector, _asn_ctx), + asn_MAP_FullPositionVector_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_FullPositionVector_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_FullPositionVector = { + "FullPositionVector", + "FullPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_FullPositionVector_tags_1, + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + asn_DEF_FullPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_FullPositionVector_tags_1) + /sizeof(asn_DEF_FullPositionVector_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_FullPositionVector_1, + 10, /* Elements count */ + &asn_SPC_FullPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c b/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c new file mode 100644 index 000000000..832211635 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/FurtherInfoID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "FurtherInfoID.h" + +int +FurtherInfoID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +asn_per_constraints_t asn_PER_type_FurtherInfoID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_FurtherInfoID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_FurtherInfoID = { + "FurtherInfoID", + "FurtherInfoID", + &asn_OP_OCTET_STRING, + asn_DEF_FurtherInfoID_tags_1, + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + asn_DEF_FurtherInfoID_tags_1, /* Same as above */ + sizeof(asn_DEF_FurtherInfoID_tags_1) + /sizeof(asn_DEF_FurtherInfoID_tags_1[0]), /* 1 */ + { &asn_OER_type_FurtherInfoID_constr_1, &asn_PER_type_FurtherInfoID_constr_1, FurtherInfoID_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GNSSstatus.c b/src/tmx/Asn_J2735/src/r63/GNSSstatus.c new file mode 100644 index 000000000..390afecfb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GNSSstatus.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GNSSstatus.h" + +int +GNSSstatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_GNSSstatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_GNSSstatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GNSSstatus = { + "GNSSstatus", + "GNSSstatus", + &asn_OP_BIT_STRING, + asn_DEF_GNSSstatus_tags_1, + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + asn_DEF_GNSSstatus_tags_1, /* Same as above */ + sizeof(asn_DEF_GNSSstatus_tags_1) + /sizeof(asn_DEF_GNSSstatus_tags_1[0]), /* 1 */ + { &asn_OER_type_GNSSstatus_constr_1, &asn_PER_type_GNSSstatus_constr_1, GNSSstatus_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GenericLane.c b/src/tmx/Asn_J2735/src/r63/GenericLane.c new file mode 100644 index 000000000..868910cde --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GenericLane.c @@ -0,0 +1,221 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GenericLane.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct GenericLane__regional), + offsetof(struct GenericLane__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericLane_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneID" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, ingressApproach), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ingressApproach" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, egressApproach), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "egressApproach" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, laneAttributes), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneAttributes" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, maneuvers), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AllowedManeuvers, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maneuvers" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericLane, nodeList), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodeList" + }, + { ATF_POINTER, 3, offsetof(struct GenericLane, connectsTo), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConnectsToList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connectsTo" + }, + { ATF_POINTER, 2, offsetof(struct GenericLane, overlays), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OverlayLaneList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "overlays" + }, + { ATF_POINTER, 1, offsetof(struct GenericLane, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GenericLane_oms_1[] = { 1, 2, 3, 5, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_GenericLane_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GenericLane_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* laneID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ingressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* egressApproach */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAttributes */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* maneuvers */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nodeList */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* connectsTo */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* overlays */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GenericLane_specs_1 = { + sizeof(struct GenericLane), + offsetof(struct GenericLane, _asn_ctx), + asn_MAP_GenericLane_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_GenericLane_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericLane = { + "GenericLane", + "GenericLane", + &asn_OP_SEQUENCE, + asn_DEF_GenericLane_tags_1, + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + asn_DEF_GenericLane_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLane_tags_1) + /sizeof(asn_DEF_GenericLane_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GenericLane_1, + 10, /* Elements count */ + &asn_SPC_GenericLane_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GenericLocations.c b/src/tmx/Asn_J2735/src/r63/GenericLocations.c new file mode 100644 index 000000000..ede6aac95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GenericLocations.c @@ -0,0 +1,246 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GenericLocations.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GenericLocations_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_GenericLocations_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 95 } /* (0..95,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_GenericLocations_value2enum_1[] = { + { 7937, 10, "on-bridges" }, + { 7938, 10, "in-tunnels" }, + { 7939, 27, "entering-or-leaving-tunnels" }, + { 7940, 8, "on-ramps" }, + { 7941, 25, "in-road-construction-area" }, + { 7942, 14, "around-a-curve" }, + { 7943, 14, "on-minor-roads" }, + { 7944, 21, "in-the-opposing-lanes" }, + { 7945, 19, "adjacent-to-roadway" }, + { 7946, 7, "on-bend" }, + { 7947, 19, "entire-intersection" }, + { 7948, 13, "in-the-median" }, + { 7949, 21, "moved-to-side-of-road" }, + { 7950, 17, "moved-to-shoulder" }, + { 7951, 14, "on-the-roadway" }, + { 7952, 15, "in-shaded-areas" }, + { 7953, 18, "in-low-lying-areas" }, + { 7954, 20, "in-the-downtown-area" }, + { 7955, 22, "in-the-inner-city-area" }, + { 7956, 8, "in-parts" }, + { 7957, 14, "in-some-places" }, + { 7958, 12, "in-the-ditch" }, + { 7959, 13, "in-the-valley" }, + { 7960, 11, "on-hill-top" }, + { 7961, 18, "near-the-foothills" }, + { 7962, 17, "at-high-altitudes" }, + { 7963, 13, "near-the-lake" }, + { 7964, 14, "near-the-shore" }, + { 7965, 24, "over-the-crest-of-a-hill" }, + { 7966, 25, "other-than-on-the-roadway" }, + { 7967, 14, "near-the-beach" }, + { 7968, 23, "near-beach-access-point" }, + { 7969, 11, "lower-level" }, + { 7970, 11, "upper-level" }, + { 7971, 7, "airport" }, + { 7972, 9, "concourse" }, + { 7973, 4, "gate" }, + { 7974, 13, "baggage-claim" }, + { 7975, 13, "customs-point" }, + { 7976, 7, "station" }, + { 7977, 8, "platform" }, + { 7978, 4, "dock" }, + { 7979, 5, "depot" }, + { 7980, 17, "ev-charging-point" }, + { 7981, 25, "information-welcome-point" }, + { 7982, 12, "at-rest-area" }, + { 7983, 15, "at-service-area" }, + { 7984, 16, "at-weigh-station" }, + { 7985, 12, "picnic-areas" }, + { 7986, 9, "rest-area" }, + { 7987, 16, "service-stations" }, + { 7988, 7, "toilets" }, + { 7989, 12, "on-the-right" }, + { 7990, 11, "on-the-left" }, + { 7991, 13, "in-the-center" }, + { 7992, 25, "in-the-opposite-direction" }, + { 7993, 13, "cross-traffic" }, + { 7994, 18, "northbound-traffic" }, + { 7995, 17, "eastbound-traffic" }, + { 7996, 18, "southbound-traffic" }, + { 7997, 17, "westbound-traffic" }, + { 7998, 5, "north" }, + { 7999, 5, "south" }, + { 8000, 4, "east" }, + { 8001, 4, "west" }, + { 8002, 9, "northeast" }, + { 8003, 9, "northwest" }, + { 8004, 9, "southeast" }, + { 8005, 9, "southwest" }, + { 8006, 13, "mountain-pass" }, + { 8007, 18, "reservation-center" }, + { 8008, 12, "nearby-basin" }, + { 8009, 9, "on-tracks" }, + { 8010, 3, "dip" }, + { 8011, 14, "traffic-circle" }, + { 8012, 17, "park-and-ride-lot" }, + { 8014, 2, "to" }, + { 8015, 2, "by" }, + { 8016, 7, "through" }, + { 8017, 7, "area-of" }, + { 8018, 5, "under" }, + { 8019, 4, "over" }, + { 8020, 4, "from" }, + { 8021, 11, "approaching" }, + { 8022, 11, "entering-at" }, + { 8023, 10, "exiting-at" }, + { 8024, 13, "across-tracks" }, + { 8025, 9, "in-street" }, + { 8026, 8, "on-curve" }, + { 8027, 8, "shoulder" }, + { 8028, 9, "crossover" }, + { 8029, 10, "cross-road" }, + { 8030, 9, "side-road" }, + { 8031, 8, "bus-stop" }, + { 8032, 12, "intersection" }, + { 8033, 13, "roadside-park" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_GenericLocations_enum2value_1[] = { + 86, /* across-tracks(8024) */ + 8, /* adjacent-to-roadway(7945) */ + 34, /* airport(7971) */ + 83, /* approaching(8021) */ + 79, /* area-of(8017) */ + 5, /* around-a-curve(7942) */ + 25, /* at-high-altitudes(7962) */ + 45, /* at-rest-area(7982) */ + 46, /* at-service-area(7983) */ + 47, /* at-weigh-station(7984) */ + 37, /* baggage-claim(7974) */ + 93, /* bus-stop(8031) */ + 77, /* by(8015) */ + 35, /* concourse(7972) */ + 91, /* cross-road(8029) */ + 56, /* cross-traffic(7993) */ + 90, /* crossover(8028) */ + 38, /* customs-point(7975) */ + 42, /* depot(7979) */ + 73, /* dip(8010) */ + 41, /* dock(7978) */ + 63, /* east(8000) */ + 58, /* eastbound-traffic(7995) */ + 84, /* entering-at(8022) */ + 2, /* entering-or-leaving-tunnels(7939) */ + 10, /* entire-intersection(7947) */ + 43, /* ev-charging-point(7980) */ + 85, /* exiting-at(8023) */ + 82, /* from(8020) */ + 36, /* gate(7973) */ + 16, /* in-low-lying-areas(7953) */ + 19, /* in-parts(7956) */ + 4, /* in-road-construction-area(7941) */ + 15, /* in-shaded-areas(7952) */ + 20, /* in-some-places(7957) */ + 87, /* in-street(8025) */ + 54, /* in-the-center(7991) */ + 21, /* in-the-ditch(7958) */ + 17, /* in-the-downtown-area(7954) */ + 18, /* in-the-inner-city-area(7955) */ + 11, /* in-the-median(7948) */ + 7, /* in-the-opposing-lanes(7944) */ + 55, /* in-the-opposite-direction(7992) */ + 22, /* in-the-valley(7959) */ + 1, /* in-tunnels(7938) */ + 44, /* information-welcome-point(7981) */ + 94, /* intersection(8032) */ + 32, /* lower-level(7969) */ + 69, /* mountain-pass(8006) */ + 13, /* moved-to-shoulder(7950) */ + 12, /* moved-to-side-of-road(7949) */ + 31, /* near-beach-access-point(7968) */ + 30, /* near-the-beach(7967) */ + 24, /* near-the-foothills(7961) */ + 26, /* near-the-lake(7963) */ + 27, /* near-the-shore(7964) */ + 71, /* nearby-basin(8008) */ + 61, /* north(7998) */ + 57, /* northbound-traffic(7994) */ + 65, /* northeast(8002) */ + 66, /* northwest(8003) */ + 9, /* on-bend(7946) */ + 0, /* on-bridges(7937) */ + 88, /* on-curve(8026) */ + 23, /* on-hill-top(7960) */ + 6, /* on-minor-roads(7943) */ + 3, /* on-ramps(7940) */ + 53, /* on-the-left(7990) */ + 52, /* on-the-right(7989) */ + 14, /* on-the-roadway(7951) */ + 72, /* on-tracks(8009) */ + 29, /* other-than-on-the-roadway(7966) */ + 81, /* over(8019) */ + 28, /* over-the-crest-of-a-hill(7965) */ + 75, /* park-and-ride-lot(8012) */ + 48, /* picnic-areas(7985) */ + 40, /* platform(7977) */ + 70, /* reservation-center(8007) */ + 49, /* rest-area(7986) */ + 95, /* roadside-park(8033) */ + 50, /* service-stations(7987) */ + 89, /* shoulder(8027) */ + 92, /* side-road(8030) */ + 62, /* south(7999) */ + 59, /* southbound-traffic(7996) */ + 67, /* southeast(8004) */ + 68, /* southwest(8005) */ + 39, /* station(7976) */ + 78, /* through(8016) */ + 76, /* to(8014) */ + 51, /* toilets(7988) */ + 74, /* traffic-circle(8011) */ + 80, /* under(8018) */ + 33, /* upper-level(7970) */ + 64, /* west(8001) */ + 60 /* westbound-traffic(7997) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_GenericLocations_specs_1 = { + asn_MAP_GenericLocations_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_GenericLocations_enum2value_1, /* N => "tag"; sorted by N */ + 96, /* Number of elements in the maps */ + 97, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_GenericLocations_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GenericLocations = { + "GenericLocations", + "GenericLocations", + &asn_OP_NativeEnumerated, + asn_DEF_GenericLocations_tags_1, + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + asn_DEF_GenericLocations_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericLocations_tags_1) + /sizeof(asn_DEF_GenericLocations_tags_1[0]), /* 1 */ + { &asn_OER_type_GenericLocations_constr_1, &asn_PER_type_GenericLocations_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_GenericLocations_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GenericSignage.c b/src/tmx/Asn_J2735/src/r63/GenericSignage.c new file mode 100644 index 000000000..2235eb076 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GenericSignage.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GenericSignage.h" + +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_GenericSignage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_GenericSignage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct GenericSignage__Member__item), + offsetof(struct GenericSignage__Member__item, _asn_ctx), + offsetof(struct GenericSignage__Member__item, present), + sizeof(((struct GenericSignage__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct GenericSignage__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct GenericSignage__Member), + offsetof(struct GenericSignage__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GenericSignage_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_GenericSignage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_GenericSignage_specs_1 = { + sizeof(struct GenericSignage), + offsetof(struct GenericSignage, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_GenericSignage = { + "GenericSignage", + "GenericSignage", + &asn_OP_SEQUENCE_OF, + asn_DEF_GenericSignage_tags_1, + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + asn_DEF_GenericSignage_tags_1, /* Same as above */ + sizeof(asn_DEF_GenericSignage_tags_1) + /sizeof(asn_DEF_GenericSignage_tags_1[0]), /* 1 */ + { &asn_OER_type_GenericSignage_constr_1, &asn_PER_type_GenericSignage_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_GenericSignage_1, + 1, /* Single element */ + &asn_SPC_GenericSignage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GeographicalPath.c b/src/tmx/Asn_J2735/src/r63/GeographicalPath.c new file mode 100644 index 000000000..fe2af3be1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GeographicalPath.c @@ -0,0 +1,278 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GeographicalPath.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_description_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_description_constr_9 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_14 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_description_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.path), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetSystem, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "path" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.geometry), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GeometricProjection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "geometry" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeographicalPath__description, choice.oldRegion), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ValidRegion, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "oldRegion" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_description_tag2el_9[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* geometry */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oldRegion */ +}; +static asn_CHOICE_specifics_t asn_SPC_description_specs_9 = { + sizeof(struct GeographicalPath__description), + offsetof(struct GeographicalPath__description, _asn_ctx), + offsetof(struct GeographicalPath__description, present), + sizeof(((struct GeographicalPath__description *)0)->present), + asn_MAP_description_tag2el_9, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_9 = { + "description", + "description", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_description_constr_9, &asn_PER_type_description_constr_9, CHOICE_constraint }, + asn_MBR_description_9, + 3, /* Elements count */ + &asn_SPC_description_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_14[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_14 = { + sizeof(struct GeographicalPath__regional), + offsetof(struct GeographicalPath__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_14 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_14, + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]) - 1, /* 1 */ + asn_DEF_regional_tags_14, /* Same as above */ + sizeof(asn_DEF_regional_tags_14) + /sizeof(asn_DEF_regional_tags_14[0]), /* 2 */ + { &asn_OER_type_regional_constr_14, &asn_PER_type_regional_constr_14, SEQUENCE_OF_constraint }, + asn_MBR_regional_14, + 1, /* Single element */ + &asn_SPC_regional_specs_14 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeographicalPath_1[] = { + { ATF_POINTER, 9, offsetof(struct GeographicalPath, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 8, offsetof(struct GeographicalPath, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 7, offsetof(struct GeographicalPath, anchor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 6, offsetof(struct GeographicalPath, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 5, offsetof(struct GeographicalPath, directionality), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_POINTER, 4, offsetof(struct GeographicalPath, closedPath), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "closedPath" + }, + { ATF_POINTER, 3, offsetof(struct GeographicalPath, direction), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeographicalPath, description), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_description_9, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct GeographicalPath, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_14, + 0, + { &asn_OER_memb_regional_constr_14, &asn_PER_memb_regional_constr_14, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeographicalPath_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_GeographicalPath_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeographicalPath_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closedPath */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeographicalPath_specs_1 = { + sizeof(struct GeographicalPath), + offsetof(struct GeographicalPath, _asn_ctx), + asn_MAP_GeographicalPath_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_GeographicalPath_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeographicalPath = { + "GeographicalPath", + "GeographicalPath", + &asn_OP_SEQUENCE, + asn_DEF_GeographicalPath_tags_1, + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + asn_DEF_GeographicalPath_tags_1, /* Same as above */ + sizeof(asn_DEF_GeographicalPath_tags_1) + /sizeof(asn_DEF_GeographicalPath_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GeographicalPath_1, + 9, /* Elements count */ + &asn_SPC_GeographicalPath_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GeometricProjection.c b/src/tmx/Asn_J2735/src/r63/GeometricProjection.c new file mode 100644 index 000000000..7c163f4e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GeometricProjection.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GeometricProjection.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct GeometricProjection__regional), + offsetof(struct GeometricProjection__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_GeometricProjection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 2, offsetof(struct GeometricProjection, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct GeometricProjection, circle), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_POINTER, 1, offsetof(struct GeometricProjection, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_GeometricProjection_oms_1[] = { 1, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_GeometricProjection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GeometricProjection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GeometricProjection_specs_1 = { + sizeof(struct GeometricProjection), + offsetof(struct GeometricProjection, _asn_ctx), + asn_MAP_GeometricProjection_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_GeometricProjection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GeometricProjection = { + "GeometricProjection", + "GeometricProjection", + &asn_OP_SEQUENCE, + asn_DEF_GeometricProjection_tags_1, + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + asn_DEF_GeometricProjection_tags_1, /* Same as above */ + sizeof(asn_DEF_GeometricProjection_tags_1) + /sizeof(asn_DEF_GeometricProjection_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GeometricProjection_1, + 5, /* Elements count */ + &asn_SPC_GeometricProjection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GraphicString.c b/src/tmx/Asn_J2735/src/r63/GraphicString.c new file mode 100644 index 000000000..e6642c9ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GraphicString.c @@ -0,0 +1,58 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * GraphicString basic type description. + */ +static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_GraphicString = { + OCTET_STRING_free, + OCTET_STRING_print, /* non-ascii string */ + OCTET_STRING_compare, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */ +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_uper, + OCTET_STRING_decode_aper, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + OCTET_STRING_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_GraphicString = { + "GraphicString", + "GraphicString", + &asn_OP_GraphicString, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]) - 1, + asn_DEF_GraphicString_tags, + sizeof(asn_DEF_GraphicString_tags) + / sizeof(asn_DEF_GraphicString_tags[0]), + { 0, 0, asn_generic_unknown_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GrossDistance.c b/src/tmx/Asn_J2735/src/r63/GrossDistance.c new file mode 100644 index 000000000..921377318 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GrossDistance.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GrossDistance.h" + +int +GrossDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GrossDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_GrossDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_GrossDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossDistance = { + "GrossDistance", + "GrossDistance", + &asn_OP_NativeInteger, + asn_DEF_GrossDistance_tags_1, + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + asn_DEF_GrossDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossDistance_tags_1) + /sizeof(asn_DEF_GrossDistance_tags_1[0]), /* 1 */ + { &asn_OER_type_GrossDistance_constr_1, &asn_PER_type_GrossDistance_constr_1, GrossDistance_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/GrossSpeed.c b/src/tmx/Asn_J2735/src/r63/GrossSpeed.c new file mode 100644 index 000000000..2ef1604ae --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/GrossSpeed.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "GrossSpeed.h" + +int +GrossSpeed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +asn_per_constraints_t asn_PER_type_GrossSpeed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_GrossSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GrossSpeed = { + "GrossSpeed", + "GrossSpeed", + &asn_OP_NativeInteger, + asn_DEF_GrossSpeed_tags_1, + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + asn_DEF_GrossSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_GrossSpeed_tags_1) + /sizeof(asn_DEF_GrossSpeed_tags_1[0]), /* 1 */ + { &asn_OER_type_GrossSpeed_constr_1, &asn_PER_type_GrossSpeed_constr_1, GrossSpeed_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Header.c b/src/tmx/Asn_J2735/src/r63/Header.c new file mode 100644 index 000000000..5b5c9c36d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Header.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Header.h" + +asn_TYPE_member_t asn_MBR_Header_1[] = { + { ATF_POINTER, 4, offsetof(struct Header, year), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "year" + }, + { ATF_POINTER, 3, offsetof(struct Header, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct Header, secMark), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_POINTER, 1, offsetof(struct Header, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, +}; +static const int asn_MAP_Header_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Header_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Header_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* year */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* msgIssueRevision */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Header_specs_1 = { + sizeof(struct Header), + offsetof(struct Header, _asn_ctx), + asn_MAP_Header_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Header_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Header = { + "Header", + "Header", + &asn_OP_SEQUENCE, + asn_DEF_Header_tags_1, + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + asn_DEF_Header_tags_1, /* Same as above */ + sizeof(asn_DEF_Header_tags_1) + /sizeof(asn_DEF_Header_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Header_1, + 4, /* Elements count */ + &asn_SPC_Header_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Heading.c b/src/tmx/Asn_J2735/src/r63/Heading.c new file mode 100644 index 000000000..28b459e1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Heading.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Heading.h" + +int +Heading_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Heading_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +asn_per_constraints_t asn_PER_type_Heading_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Heading_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Heading = { + "Heading", + "Heading", + &asn_OP_NativeInteger, + asn_DEF_Heading_tags_1, + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + asn_DEF_Heading_tags_1, /* Same as above */ + sizeof(asn_DEF_Heading_tags_1) + /sizeof(asn_DEF_Heading_tags_1[0]), /* 1 */ + { &asn_OER_type_Heading_constr_1, &asn_PER_type_Heading_constr_1, Heading_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c b/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c new file mode 100644 index 000000000..9dc9ec183 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/HeadingConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "HeadingConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_HeadingConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_HeadingConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec10deg" }, + { 2, 9, "prec05deg" }, + { 3, 9, "prec01deg" }, + { 4, 10, "prec0-1deg" }, + { 5, 11, "prec0-05deg" }, + { 6, 11, "prec0-01deg" }, + { 7, 13, "prec0-0125deg" } +}; +static const unsigned int asn_MAP_HeadingConfidence_enum2value_1[] = { + 7, /* prec0-0125deg(7) */ + 6, /* prec0-01deg(6) */ + 5, /* prec0-05deg(5) */ + 4, /* prec0-1deg(4) */ + 3, /* prec01deg(3) */ + 2, /* prec05deg(2) */ + 1, /* prec10deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_HeadingConfidence_specs_1 = { + asn_MAP_HeadingConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HeadingConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HeadingConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingConfidence = { + "HeadingConfidence", + "HeadingConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_HeadingConfidence_tags_1, + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + asn_DEF_HeadingConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingConfidence_tags_1) + /sizeof(asn_DEF_HeadingConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_HeadingConfidence_constr_1, &asn_PER_type_HeadingConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HeadingConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/HeadingSlice.c b/src/tmx/Asn_J2735/src/r63/HeadingSlice.c new file mode 100644 index 000000000..f22662942 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/HeadingSlice.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "HeadingSlice.h" + +int +HeadingSlice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_HeadingSlice_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_HeadingSlice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HeadingSlice = { + "HeadingSlice", + "HeadingSlice", + &asn_OP_BIT_STRING, + asn_DEF_HeadingSlice_tags_1, + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + asn_DEF_HeadingSlice_tags_1, /* Same as above */ + sizeof(asn_DEF_HeadingSlice_tags_1) + /sizeof(asn_DEF_HeadingSlice_tags_1[0]), /* 1 */ + { &asn_OER_type_HeadingSlice_constr_1, &asn_PER_type_HeadingSlice_constr_1, HeadingSlice_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Holiday.c b/src/tmx/Asn_J2735/src/r63/Holiday.c new file mode 100644 index 000000000..21b96702b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Holiday.c @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Holiday.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Holiday_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_Holiday_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Holiday_value2enum_1[] = { + { 0, 7, "weekday" }, + { 1, 7, "holiday" } +}; +static const unsigned int asn_MAP_Holiday_enum2value_1[] = { + 1, /* holiday(1) */ + 0 /* weekday(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_Holiday_specs_1 = { + asn_MAP_Holiday_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Holiday_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Holiday_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Holiday = { + "Holiday", + "Holiday", + &asn_OP_NativeEnumerated, + asn_DEF_Holiday_tags_1, + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + asn_DEF_Holiday_tags_1, /* Same as above */ + sizeof(asn_DEF_Holiday_tags_1) + /sizeof(asn_DEF_Holiday_tags_1[0]), /* 1 */ + { &asn_OER_type_Holiday_constr_1, &asn_PER_type_Holiday_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Holiday_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Hour.c b/src/tmx/Asn_J2735/src/r63/Hour.c new file mode 100644 index 000000000..6e7eb67b0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Hour.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Hour.h" + +int +Hour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Hour_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_Hour_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Hour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Hour = { + "Hour", + "Hour", + &asn_OP_NativeInteger, + asn_DEF_Hour_tags_1, + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + asn_DEF_Hour_tags_1, /* Same as above */ + sizeof(asn_DEF_Hour_tags_1) + /sizeof(asn_DEF_Hour_tags_1[0]), /* 1 */ + { &asn_OER_type_Hour_constr_1, &asn_PER_type_Hour_constr_1, Hour_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c b/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c new file mode 100644 index 000000000..fbfc32578 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/HumanPropelledType.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "HumanPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_HumanPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_HumanPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 6, "onFoot" }, + { 3, 10, "skateboard" }, + { 4, 17, "pushOrKickScooter" }, + { 5, 10, "wheelchair" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_HumanPropelledType_enum2value_1[] = { + 2, /* onFoot(2) */ + 1, /* otherTypes(1) */ + 4, /* pushOrKickScooter(4) */ + 3, /* skateboard(3) */ + 0, /* unavailable(0) */ + 5 /* wheelchair(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_HumanPropelledType_specs_1 = { + asn_MAP_HumanPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_HumanPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_HumanPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_HumanPropelledType = { + "HumanPropelledType", + "HumanPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_HumanPropelledType_tags_1, + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + asn_DEF_HumanPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_HumanPropelledType_tags_1) + /sizeof(asn_DEF_HumanPropelledType_tags_1[0]), /* 1 */ + { &asn_OER_type_HumanPropelledType_constr_1, &asn_PER_type_HumanPropelledType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_HumanPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IA5String.c b/src/tmx/Asn_J2735/src/r63/IA5String.c new file mode 100644 index 000000000..1aeebf41b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IA5String.c @@ -0,0 +1,97 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * IA5String basic type description. + */ +static const ber_tlv_tag_t asn_DEF_IA5String_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), /* [UNIVERSAL 22] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +static asn_per_constraints_t asn_DEF_IA5String_per_constraints = { + { APC_CONSTRAINED, 7, 7, 0, 0x7f }, /* Value */ + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ + 0, 0 +}; +asn_TYPE_operation_t asn_OP_IA5String = { + OCTET_STRING_free, + OCTET_STRING_print_utf8, /* ASCII subset */ + OCTET_STRING_compare, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + OCTET_STRING_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_IA5String = { + "IA5String", + "IA5String", + &asn_OP_IA5String, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]) - 1, + asn_DEF_IA5String_tags, + sizeof(asn_DEF_IA5String_tags) + / sizeof(asn_DEF_IA5String_tags[0]), + { 0, &asn_DEF_IA5String_per_constraints, IA5String_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +IA5String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + + if(st && st->buf) { + uint8_t *buf = st->buf; + uint8_t *end = buf + st->size; + /* + * IA5String is generally equivalent to 7bit ASCII. + * ISO/ITU-T T.50, 1963. + */ + for(; buf < end; buf++) { + if(*buf > 0x7F) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value byte %ld out of range: " + "%d > 127 (%s:%d)", + td->name, + (long)((buf - st->buf) + 1), + *buf, + __FILE__, __LINE__); + return -1; + } + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + diff --git a/src/tmx/Asn_J2735/src/r63/INTEGER.c b/src/tmx/Asn_J2735/src/r63/INTEGER.c new file mode 100644 index 000000000..beb572e35 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/INTEGER.c @@ -0,0 +1,1752 @@ +/* + * Copyright (c) 2003-2019 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* Encoder and decoder of a primitive type */ +#include + +/* + * INTEGER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_INTEGER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_INTEGER = { + INTEGER_free, + INTEGER_print, + INTEGER_compare, + ber_decode_primitive, + INTEGER_encode_der, + INTEGER_decode_xer, + INTEGER_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + INTEGER_decode_oer, /* OER decoder */ + INTEGER_encode_oer, /* Canonical OER encoder */ +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + INTEGER_decode_uper, /* Unaligned PER decoder */ + INTEGER_encode_uper, /* Unaligned PER encoder */ + INTEGER_decode_aper, /* Aligned PER decoder */ + INTEGER_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + INTEGER_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_INTEGER = { + "INTEGER", + "INTEGER", + &asn_OP_INTEGER, + asn_DEF_INTEGER_tags, + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + asn_DEF_INTEGER_tags, /* Same as above */ + sizeof(asn_DEF_INTEGER_tags) / sizeof(asn_DEF_INTEGER_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Encode INTEGER type using DER. + */ +asn_enc_rval_t +INTEGER_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t rval; + INTEGER_t effective_integer; + + ASN_DEBUG("%s %s as INTEGER (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + /* + * Canonicalize integer in the buffer. + * (Remove too long sign extension, remove some first 0x00 bytes) + */ + if(st->buf) { + uint8_t *buf = st->buf; + uint8_t *end1 = buf + st->size - 1; + int shift; + + /* Compute the number of superfluous leading bytes */ + for(; buf < end1; buf++) { + /* + * If the contents octets of an integer value encoding + * consist of more than one octet, then the bits of the + * first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + switch(*buf) { + case 0x00: if((buf[1] & 0x80) == 0) + continue; + break; + case 0xff: if((buf[1] & 0x80)) + continue; + break; + } + break; + } + + /* Remove leading superfluous bytes from the integer */ + shift = buf - st->buf; + if(shift) { + union { + const uint8_t *c_buf; + uint8_t *nc_buf; + } unconst; + unconst.c_buf = st->buf; + effective_integer.buf = unconst.nc_buf + shift; + effective_integer.size = st->size - shift; + + st = &effective_integer; + } + } + + rval = der_encode_primitive(td, st, tag_mode, tag, cb, app_key); + if(rval.structure_ptr == &effective_integer) { + rval.structure_ptr = sptr; + } + return rval; +} + +static const asn_INTEGER_enum_map_t *INTEGER_map_enum2value( + const asn_INTEGER_specifics_t *specs, const char *lstart, + const char *lstop); + +/* + * INTEGER specific human-readable output. + */ +static ssize_t +INTEGER__dump(const asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_bytes_f *cb, void *app_key, int plainOrXER) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; + uint8_t *buf = st->buf; + uint8_t *buf_end = st->buf + st->size; + intmax_t value; + ssize_t wrote = 0; + char *p; + int ret; + + if(specs && specs->field_unsigned) + ret = asn_INTEGER2umax(st, (uintmax_t *)&value); + else + ret = asn_INTEGER2imax(st, &value); + + /* Simple case: the integer size is small */ + if(ret == 0) { + const asn_INTEGER_enum_map_t *el; + el = (value >= 0 || !specs || !specs->field_unsigned) + ? INTEGER_map_value2enum(specs, value) : 0; + if(el) { + if(plainOrXER == 0) + return asn__format_to_callback(cb, app_key, + "%" ASN_PRIdMAX " (%s)", value, el->enum_name); + else + return asn__format_to_callback(cb, app_key, + "<%s/>", el->enum_name); + } else if(plainOrXER && specs && specs->strict_enumeration) { + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } else { + return asn__format_to_callback(cb, app_key, + (specs && specs->field_unsigned) + ? "%" ASN_PRIuMAX + : "%" ASN_PRIdMAX, + value); + } + } else if(plainOrXER && specs && specs->strict_enumeration) { + /* + * Here and earlier, we cannot encode the ENUMERATED values + * if there is no corresponding identifier. + */ + ASN_DEBUG("ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + errno = EPERM; + return -1; + } + + /* Output in the long xx:yy:zz... format */ + /* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */ + for(p = scratch; buf < buf_end; buf++) { + const char * const h2c = "0123456789ABCDEF"; + if((p - scratch) >= (ssize_t)(sizeof(scratch) - 4)) { + /* Flush buffer */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + wrote += p - scratch; + p = scratch; + } + *p++ = h2c[*buf >> 4]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x3a; /* ":" */ + } + if(p != scratch) + p--; /* Remove the last ":" */ + + wrote += p - scratch; + return (cb(scratch, p - scratch, app_key) < 0) ? -1 : wrote; +} + +/* + * INTEGER specific human-readable output. + */ +int +INTEGER_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + ssize_t ret; + + (void)ilevel; + + if(!st || !st->buf) + ret = cb("", 8, app_key); + else + ret = INTEGER__dump(td, st, cb, app_key, 0); + + return (ret < 0) ? -1 : 0; +} + +struct e2v_key { + const char *start; + const char *stop; + const asn_INTEGER_enum_map_t *vemap; + const unsigned int *evmap; +}; +static int +INTEGER__compar_enum2value(const void *kp, const void *am) { + const struct e2v_key *key = (const struct e2v_key *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + const char *ptr, *end, *name; + + /* Remap the element (sort by different criterion) */ + el = key->vemap + key->evmap[el - key->vemap]; + + /* Compare strings */ + for(ptr = key->start, end = key->stop, name = el->enum_name; + ptr < end; ptr++, name++) { + if(*ptr != *name || !*name) + return *(const unsigned char *)ptr + - *(const unsigned char *)name; + } + return name[0] ? -1 : 0; +} + +static const asn_INTEGER_enum_map_t * +INTEGER_map_enum2value(const asn_INTEGER_specifics_t *specs, const char *lstart, + const char *lstop) { + const asn_INTEGER_enum_map_t *el_found; + int count = specs ? specs->map_count : 0; + struct e2v_key key; + const char *lp; + + if(!count) return NULL; + + /* Guaranteed: assert(lstart < lstop); */ + /* Figure out the tag name */ + for(lstart++, lp = lstart; lp < lstop; lp++) { + switch(*lp) { + case 9: case 10: case 11: case 12: case 13: case 32: /* WSP */ + case 0x2f: /* '/' */ case 0x3e: /* '>' */ + break; + default: + continue; + } + break; + } + if(lp == lstop) return NULL; /* No tag found */ + lstop = lp; + + key.start = lstart; + key.stop = lstop; + key.vemap = specs->value2enum; + key.evmap = specs->enum2value; + el_found = (asn_INTEGER_enum_map_t *)bsearch(&key, + specs->value2enum, count, sizeof(specs->value2enum[0]), + INTEGER__compar_enum2value); + if(el_found) { + /* Remap enum2value into value2enum */ + el_found = key.vemap + key.evmap[el_found - key.vemap]; + } + return el_found; +} + +static int +INTEGER__compar_value2enum(const void *kp, const void *am) { + long a = *(const long *)kp; + const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am; + long b = el->nat_value; + if(a < b) return -1; + else if(a == b) return 0; + else return 1; +} + +const asn_INTEGER_enum_map_t * +INTEGER_map_value2enum(const asn_INTEGER_specifics_t *specs, long value) { + int count = specs ? specs->map_count : 0; + if(!count) return 0; + return (asn_INTEGER_enum_map_t *)bsearch(&value, specs->value2enum, + count, sizeof(specs->value2enum[0]), + INTEGER__compar_value2enum); +} + +static int +INTEGER_st_prealloc(INTEGER_t *st, int min_size) { + void *p = MALLOC(min_size + 1); + if(p) { + void *b = st->buf; + st->size = 0; + st->buf = p; + FREEMEM(b); + return 0; + } else { + return -1; + } +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +static enum xer_pbd_rval +INTEGER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t *st = (INTEGER_t *)sptr; + intmax_t dec_value; + intmax_t hex_value = 0; + const char *lp; + const char *lstart = (const char *)chunk_buf; + const char *lstop = lstart + chunk_size; + enum { + ST_LEADSPACE, + ST_SKIPSPHEX, + ST_WAITDIGITS, + ST_DIGITS, + ST_DIGITS_TRAILSPACE, + ST_HEXDIGIT1, + ST_HEXDIGIT2, + ST_HEXDIGITS_TRAILSPACE, + ST_HEXCOLON, + ST_END_ENUM, + ST_UNEXPECTED + } state = ST_LEADSPACE; + const char *dec_value_start = 0; /* INVARIANT: always !0 in ST_DIGITS */ + const char *dec_value_end = 0; + + if(chunk_size) + ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x", + (long)chunk_size, *lstart, lstop[-1]); + + if(INTEGER_st_prealloc(st, (chunk_size/3) + 1)) + return XPBD_SYSTEM_FAILURE; + + /* + * We may have received a tag here. It will be processed inline. + * Use strtoul()-like code and serialize the result. + */ + for(lp = lstart; lp < lstop; lp++) { + int lv = *lp; + switch(lv) { + case 0x09: case 0x0a: case 0x0d: case 0x20: + switch(state) { + case ST_LEADSPACE: + case ST_DIGITS_TRAILSPACE: + case ST_HEXDIGITS_TRAILSPACE: + case ST_SKIPSPHEX: + continue; + case ST_DIGITS: + dec_value_end = lp; + state = ST_DIGITS_TRAILSPACE; + continue; + case ST_HEXCOLON: + state = ST_HEXDIGITS_TRAILSPACE; + continue; + default: + break; + } + break; + case 0x2d: /* '-' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x2b: /* '+' */ + if(state == ST_LEADSPACE) { + dec_value = 0; + dec_value_start = lp; + state = ST_WAITDIGITS; + continue; + } + break; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: + switch(state) { + case ST_DIGITS: continue; + case ST_SKIPSPHEX: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = (lv - 0x30) << 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += (lv - 0x30); + state = ST_HEXCOLON; + st->buf[st->size++] = (uint8_t)hex_value; + continue; + case ST_HEXCOLON: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + dec_value = 0; + dec_value_start = lp; + /* FALL THROUGH */ + case ST_WAITDIGITS: + state = ST_DIGITS; + continue; + default: + break; + } + break; + case 0x3c: /* '<', start of XML encoded enumeration */ + if(state == ST_LEADSPACE) { + const asn_INTEGER_enum_map_t *el; + el = INTEGER_map_enum2value( + (const asn_INTEGER_specifics_t *) + td->specifics, lstart, lstop); + if(el) { + ASN_DEBUG("Found \"%s\" => %ld", + el->enum_name, el->nat_value); + dec_value = el->nat_value; + state = ST_END_ENUM; + lp = lstop - 1; + continue; + } + ASN_DEBUG("Unknown identifier for INTEGER"); + } + return XPBD_BROKEN_ENCODING; + case 0x3a: /* ':' */ + if(state == ST_HEXCOLON) { + /* This colon is expected */ + state = ST_HEXDIGIT1; + continue; + } else if(state == ST_DIGITS) { + /* The colon here means that we have + * decoded the first two hexadecimal + * places as a decimal value. + * Switch decoding mode. */ + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + } else { + ASN_DEBUG("state %d at %ld", state, (long)(lp - lstart)); + break; + } + /* [A-Fa-f] */ + case 0x41:case 0x42:case 0x43:case 0x44:case 0x45:case 0x46: + case 0x61:case 0x62:case 0x63:case 0x64:case 0x65:case 0x66: + switch(state) { + case ST_SKIPSPHEX: + case ST_LEADSPACE: /* Fall through */ + case ST_HEXDIGIT1: + hex_value = lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + hex_value <<= 4; + state = ST_HEXDIGIT2; + continue; + case ST_HEXDIGIT2: + hex_value += lv - ((lv < 0x61) ? 0x41 : 0x61); + hex_value += 10; + st->buf[st->size++] = (uint8_t)hex_value; + state = ST_HEXCOLON; + continue; + case ST_DIGITS: + ASN_DEBUG("INTEGER re-evaluate as hex form"); + state = ST_SKIPSPHEX; + dec_value_start = 0; + lp = lstart - 1; + continue; + default: + break; + } + break; + } + + /* Found extra non-numeric stuff */ + ASN_DEBUG("INTEGER :: Found non-numeric 0x%2x at %ld", + lv, (long)(lp - lstart)); + state = ST_UNEXPECTED; + break; + } + + switch(state) { + case ST_END_ENUM: + /* Got a complete and valid enumeration encoded as a tag. */ + break; + case ST_DIGITS: + dec_value_end = lstop; + /* FALL THROUGH */ + case ST_DIGITS_TRAILSPACE: + /* The last symbol encountered was a digit. */ + switch(asn_strtoimax_lim(dec_value_start, &dec_value_end, &dec_value)) { + case ASN_STRTOX_OK: + if(specs && specs->field_unsigned && (uintmax_t) dec_value <= ULONG_MAX) { + break; + } else if(dec_value >= LONG_MIN && dec_value <= LONG_MAX) { + break; + } else { + /* + * We model INTEGER on long for XER, + * to avoid rewriting all the tests at once. + */ + ASN_DEBUG("INTEGER exceeds long range"); + } + /* Fall through */ + case ASN_STRTOX_ERROR_RANGE: + ASN_DEBUG("INTEGER decode %s hit range limit", td->name); + return XPBD_DECODER_LIMIT; + case ASN_STRTOX_ERROR_INVAL: + case ASN_STRTOX_EXPECT_MORE: + case ASN_STRTOX_EXTRA_DATA: + return XPBD_BROKEN_ENCODING; + } + break; + case ST_HEXCOLON: + case ST_HEXDIGITS_TRAILSPACE: + st->buf[st->size] = 0; /* Just in case termination */ + return XPBD_BODY_CONSUMED; + case ST_HEXDIGIT1: + case ST_HEXDIGIT2: + case ST_SKIPSPHEX: + return XPBD_BROKEN_ENCODING; + case ST_LEADSPACE: + /* Content not found */ + return XPBD_NOT_BODY_IGNORE; + case ST_WAITDIGITS: + case ST_UNEXPECTED: + ASN_DEBUG("INTEGER: No useful digits (state %d)", state); + return XPBD_BROKEN_ENCODING; /* No digits */ + } + + /* + * Convert the result of parsing of enumeration or a straight + * decimal value into a BER representation. + */ + if(asn_imax2INTEGER(st, dec_value)) { + ASN_DEBUG("INTEGER decode %s conversion failed", td->name); + return XPBD_SYSTEM_FAILURE; + } + + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +INTEGER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(INTEGER_t), opt_mname, + buf_ptr, size, INTEGER__xer_body_decode); +} + +asn_enc_rval_t +INTEGER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) + ASN__ENCODE_FAILED; + + er.encoded = INTEGER__dump(td, st, cb, app_key, 1); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +INTEGER_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691-2008/11, #13.2.2, constrained whole number */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #11.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if((size_t)ct->range_bits > 8 * sizeof(uintmax_t)) + ASN__DECODE_FAILED; + + if(specs && specs->field_unsigned) { + uintmax_t uvalue = 0; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + uvalue += ct->lower_bound; + if(asn_ulong2INTEGER(st, uvalue)) + ASN__DECODE_FAILED; + } else { + uintmax_t uvalue = 0; + intmax_t svalue; + if(uper_get_constrained_whole_number(pd, + &uvalue, ct->range_bits)) + ASN__DECODE_STARVED; + ASN_DEBUG("Got value %lu + low %ld", + uvalue, ct->lower_bound); + if(per_imax_range_unrebase(uvalue, ct->lower_bound, + ct->upper_bound, &svalue) + || asn_imax2INTEGER(st, svalue)) { + ASN__DECODE_FAILED; + } + } + return rval; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len = 0; + void *p = NULL; + int ret = 0; + + /* Get the PER length */ + len = uper_get_length(pd, -1, 0, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetic. + */ + long value = 0; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_imax2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + intmax_t value = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + uintmax_t uval; + if(asn_INTEGER2umax(st, &uval)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(uval < (uintmax_t)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(uval < (uintmax_t)ct->lower_bound + || uval > (uintmax_t)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%" ASN_PRI_SIZE ") lb %lu ub %lu %s", + uval, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + value = uval; + } else { + if(asn_INTEGER2imax(st, &value)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value < ct->lower_bound + || value > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %ld (%02x/%" ASN_PRI_SIZE ") lb %ld ub %ld %s", + value, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + + /* X.691-11/2008, #13.2.2, test if constrained whole number */ + if(ct && ct->range_bits >= 0) { + uintmax_t v; + /* #11.5.6 -> #11.3 */ + ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", + value, value - ct->lower_bound, ct->range_bits); + if(specs && specs->field_unsigned) { + if ( ((uintmax_t)ct->lower_bound > (uintmax_t)(ct->upper_bound) + || ((uintmax_t)value < (uintmax_t)ct->lower_bound)) + || ((uintmax_t)value > (uintmax_t)ct->upper_bound) + ) { + ASN_DEBUG("Value %lu to-be-encoded is outside the bounds [%lu, %lu]!", + value, ct->lower_bound, ct->upper_bound); + ASN__ENCODE_FAILED; + } + v = (uintmax_t)value - (uintmax_t)ct->lower_bound; + } else { + if(per_imax_range_rebase(value, ct->lower_bound, ct->upper_bound, &v)) { + ASN__ENCODE_FAILED; + } + } + if(uper_put_constrained_whole_number_u(po, v, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = uper_put_length(po, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && uper_put_length(po, 0, 0)) ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +INTEGER_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + INTEGER_t *st = (INTEGER_t *)*sptr; + const asn_per_constraint_t *ct; + int repeat; + + (void)opt_codec_ctx; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + if(ct) { + if(ct->flags & APC_SEMI_CONSTRAINED) { + st->buf = (uint8_t *)CALLOC(1, 2); + if(!st->buf) ASN__DECODE_FAILED; + st->size = 1; + } else if(ct->flags & APC_CONSTRAINED && ct->range_bits >= 0) { + size_t size = (ct->range_bits + 7) >> 3; + st->buf = (uint8_t *)MALLOC(1 + size + 1); + if(!st->buf) ASN__DECODE_FAILED; + st->size = size; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->flags != APC_UNCONSTRAINED) { + /* #10.5.6 */ + ASN_DEBUG("Integer with range %d bits", ct->range_bits); + if(ct->range_bits >= 0) { + if (ct->range_bits > 16) { + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + int length = 0, i; + long value = 0; + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + ASN_DEBUG("Can encode %d (%d bytes) in %d bits", ct->range_bits, + max_range_bytes, i); + + if ((length = per_get_few_bits(pd, i)) < 0) + ASN__DECODE_FAILED; + + /* X.691 #12.2.6 length determinant + lb (1) */ + length += 1; + ASN_DEBUG("Got length %d", length); + if (aper_get_align(pd) != 0) + ASN__DECODE_FAILED; + while (length--) { + int buf = per_get_few_bits(pd, 8); + if (buf < 0) + ASN__DECODE_FAILED; + value += (((long)buf) << (8 * length)); + } + + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_uint642INTEGER(st, (unsigned long)value) + : asn_int642INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %ld", + value, ct->lower_bound); + } else { + long value = 0; + if (ct->range_bits < 8) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else if (ct->range_bits == 8) { + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + } else { + /* Align */ + if (aper_get_align(pd) < 0) + ASN__DECODE_FAILED; + value = per_get_few_bits(pd, 16); + if(value < 0) ASN__DECODE_STARVED; + } + value += ct->lower_bound; + if((specs && specs->field_unsigned) + ? asn_ulong2INTEGER(st, value) + : asn_long2INTEGER(st, value)) + ASN__DECODE_FAILED; + ASN_DEBUG("Got value %ld + low %ld", + value, ct->lower_bound); + } + return rval; + } else { + ASN__DECODE_FAILED; + } + } else { + ASN_DEBUG("Decoding unconstrained integer %s", td->name); + } + + /* X.691, #12.2.3, #12.2.4 */ + do { + ssize_t len; + void *p; + int ret; + + /* Get the PER length */ + len = aper_get_length(pd, -1, -1, &repeat); + if(len < 0) ASN__DECODE_STARVED; + + p = REALLOC(st->buf, st->size + len + 1); + if(!p) ASN__DECODE_FAILED; + st->buf = (uint8_t *)p; + + ret = per_get_many_bits(pd, &st->buf[st->size], 0, 8 * len); + if(ret < 0) ASN__DECODE_STARVED; + st->size += len; + } while(repeat); + st->buf[st->size] = 0; /* JIC */ + + /* #12.2.3 */ + if(ct && ct->lower_bound) { + /* + * TODO: replace by in-place arithmetics. + */ + long value; + if(asn_INTEGER2long(st, &value)) + ASN__DECODE_FAILED; + if(asn_long2INTEGER(st, value + ct->lower_bound)) + ASN__DECODE_FAILED; + } + + return rval; +} + +asn_enc_rval_t +INTEGER_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const INTEGER_t *st = (const INTEGER_t *)sptr; + const uint8_t *buf; + const uint8_t *end; + const asn_per_constraint_t *ct; + long value = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.per_constraints; + ct = constraints ? &constraints->value : 0; + + er.encoded = 0; + + if(ct) { + int inext = 0; + if(specs && specs->field_unsigned) { + unsigned long uval; + if(asn_INTEGER2ulong(st, &uval)) + ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(uval < (unsigned long)ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(uval < (unsigned long)ct->lower_bound + || uval > (unsigned long)ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%lu) lb %ld ub %ld %s", + uval, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + value = uval; + } else { + if(asn_INTEGER2long(st, &value)) ASN__ENCODE_FAILED; + /* Check proper range */ + if(ct->flags & APC_SEMI_CONSTRAINED) { + if(value < ct->lower_bound) + inext = 1; + } else if(ct->range_bits >= 0) { + if(value < ct->lower_bound + || value > ct->upper_bound) + inext = 1; + } + ASN_DEBUG("Value %lu (%02x/%lu) lb %ld ub %ld %s", + value, st->buf[0], st->size, + ct->lower_bound, ct->upper_bound, + inext ? "ext" : "fix"); + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + } + + /* X.691, #12.2.2 */ + if(ct && ct->range_bits >= 0) { + unsigned long v; + + /* #10.5.6 */ + ASN_DEBUG("Encoding integer %ld (%lu) with range %d bits", + value, value - ct->lower_bound, ct->range_bits); + + v = value - ct->lower_bound; + + /* #12 <= 8 -> alignment ? */ + int range = ct->upper_bound - ct->lower_bound + 1; + if (ct->range_bits < 8 || (ct->range_bits == 8 && range < 256)) { + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits == 8) { + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x00 | v, ct->range_bits)) + ASN__ENCODE_FAILED; + } else if (ct->range_bits <= 16) { + /* Consume the bytes to align on octet */ + if(aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + if(per_put_few_bits(po, 0x0000 | v, + 16)) + ASN__ENCODE_FAILED; + } else { + /* TODO: extend to >64 bits */ + int64_t v64 = v; + int i, j; + int max_range_bytes = (ct->range_bits >> 3) + + (((ct->range_bits % 8) > 0) ? 1 : 0); + + for (i = 1; ; i++) { + int upper = 1 << i; + if (upper >= max_range_bytes) + break; + } + + for (j = sizeof(int64_t) -1; j != 0; j--) { + int64_t val; + val = v64 >> (j * 8); + if (val != 0) + break; + } + + /* Putting length in the minimum number of bits ex: 5 = 3bits */ + if (per_put_few_bits(po, j, i)) + ASN__ENCODE_FAILED; + + /* Consume the bits to align on octet */ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + /* Put the value */ + for (i = 0; i <= j; i++) { + if(per_put_few_bits(po, (v64 >> (8 * (j - i))) & 0xff, 8)) + ASN__ENCODE_FAILED; + } + } + ASN__ENCODED_OK(er); + } + + if(ct && ct->lower_bound) { + ASN_DEBUG("Adjust lower bound to %ld", ct->lower_bound); + /* TODO: adjust lower bound */ + ASN__ENCODE_FAILED; + } + + for(buf = st->buf, end = st->buf + st->size; buf < end;) { + int need_eom = 0; + ssize_t mayEncode = aper_put_length(po, -1, end - buf, &need_eom); + if(mayEncode < 0) + ASN__ENCODE_FAILED; + if(per_put_many_bits(po, buf, 8 * mayEncode)) + ASN__ENCODE_FAILED; + buf += mayEncode; + if(need_eom && aper_put_length(po, -1, 0, 0)) ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +static intmax_t +asn__integer_convert(const uint8_t *b, const uint8_t *end) { + uintmax_t value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (uintmax_t)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +int +asn_INTEGER2imax(const INTEGER_t *iptr, intmax_t *lptr) { + uint8_t *b, *end; + size_t size; + + /* Sanity checking */ + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + /* Cache the begin/end of the buffer */ + b = iptr->buf; /* Start of the INTEGER buffer */ + size = iptr->size; + end = b + size; /* Where to stop */ + + if(size > sizeof(intmax_t)) { + uint8_t *end1 = end - 1; + /* + * Slightly more advanced processing, + * able to process INTEGERs with >sizeof(intmax_t) bytes + * when the actual value is small, e.g. for intmax_t == int32_t + * (0x0000000000abcdef INTEGER would yield a fine 0x00abcdef int32_t) + */ + /* Skip out the insignificant leading bytes */ + for(; b < end1; b++) { + switch(*b) { + case 0x00: if((b[1] & 0x80) == 0) continue; break; + case 0xff: if((b[1] & 0x80) != 0) continue; break; + } + break; + } + + size = end - b; + if(size > sizeof(intmax_t)) { + /* Still cannot fit the sizeof(intmax_t) */ + errno = ERANGE; + return -1; + } + } + + /* Shortcut processing of a corner case */ + if(end == b) { + *lptr = 0; + return 0; + } + + *lptr = asn__integer_convert(b, end); + return 0; +} + +/* FIXME: negative INTEGER values are silently interpreted as large unsigned ones. */ +int +asn_INTEGER2umax(const INTEGER_t *iptr, uintmax_t *lptr) { + uint8_t *b, *end; + uintmax_t value; + size_t size; + + if(!iptr || !iptr->buf || !lptr) { + errno = EINVAL; + return -1; + } + + b = iptr->buf; + size = iptr->size; + end = b + size; + + /* If all extra leading bytes are zeroes, ignore them */ + for(; size > sizeof(value); b++, size--) { + if(*b) { + /* Value won't fit into uintmax_t */ + errno = ERANGE; + return -1; + } + } + + /* Conversion engine */ + for(value = 0; b < end; b++) + value = (value << 8) | *b; + + *lptr = value; + return 0; +} + +int +asn_umax2INTEGER(INTEGER_t *st, uintmax_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= ((~(uintmax_t)0) >> 1)) { + return asn_imax2INTEGER(st, value); + } + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; /* INTEGERs are signed. 0-byte indicates positive. */ + for(b = buf + 1, shr = (sizeof(value) - 1) * 8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_imax2INTEGER(INTEGER_t *st, intmax_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)(long *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +int +asn_INTEGER2long(const INTEGER_t *iptr, long *l) { + intmax_t v; + if(asn_INTEGER2imax(iptr, &v) == 0) { + if(v < LONG_MIN || v > LONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_INTEGER2ulong(const INTEGER_t *iptr, unsigned long *l) { + uintmax_t v; + if(asn_INTEGER2umax(iptr, &v) == 0) { + if(v > ULONG_MAX) { + errno = ERANGE; + return -1; + } + *l = v; + return 0; + } else { + return -1; + } +} + +int +asn_long2INTEGER(INTEGER_t *st, long value) { + return asn_imax2INTEGER(st, value); +} + +int +asn_ulong2INTEGER(INTEGER_t *st, unsigned long value) { + return asn_imax2INTEGER(st, value); +} + + +int +asn_uint642INTEGER(INTEGER_t *st, uint64_t value) { + uint8_t *buf; + uint8_t *end; + uint8_t *b; + int shr; + + if(value <= INT64_MAX) + return asn_int642INTEGER(st, value); + + buf = (uint8_t *)MALLOC(1 + sizeof(value)); + if(!buf) return -1; + + end = buf + (sizeof(value) + 1); + buf[0] = 0; + for(b = buf + 1, shr = (sizeof(value)-1)*8; b < end; shr -= 8, b++) + *b = (uint8_t)(value >> shr); + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = 1 + sizeof(value); + + return 0; +} + +int +asn_int642INTEGER(INTEGER_t *st, int64_t value) { + uint8_t *buf, *bp; + uint8_t *p; + uint8_t *pstart; + uint8_t *pend1; + int littleEndian = 1; /* Run-time detection */ + int add; + + if(!st) { + errno = EINVAL; + return -1; + } + + buf = (uint8_t *)MALLOC(sizeof(value)); + if(!buf) return -1; + + if(*(char *)&littleEndian) { + pstart = (uint8_t *)&value + sizeof(value) - 1; + pend1 = (uint8_t *)&value; + add = -1; + } else { + pstart = (uint8_t *)&value; + pend1 = pstart + sizeof(value) - 1; + add = 1; + } + + /* + * If the contents octet consists of more than one octet, + * then bits of the first octet and bit 8 of the second octet: + * a) shall not all be ones; and + * b) shall not all be zero. + */ + for(p = pstart; p != pend1; p += add) { + switch(*p) { + case 0x00: if((*(p+add) & 0x80) == 0) + continue; + break; + case 0xff: if((*(p+add) & 0x80)) + continue; + break; + } + break; + } + /* Copy the integer body */ + for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add) + *bp++ = *p; + + if(st->buf) FREEMEM(st->buf); + st->buf = buf; + st->size = bp - buf; + + return 0; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtol/strtoimax(3). + */ +enum asn_strtox_result_e +asn_strtoimax_lim(const char *str, const char **end, intmax_t *intp) { + int sign = 1; + intmax_t value; + + const intmax_t asn1_intmax_max = ((~(uintmax_t)0) >> 1); + const intmax_t upper_boundary = asn1_intmax_max / 10; + intmax_t last_digit_max = asn1_intmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + last_digit_max++; + sign = -1; + /* FALL THROUGH */ + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + if(sign > 0) { + value = value * 10 + d; + } else { + sign = 1; + value = -value * 10 - d; + } + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *intp = sign * value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *intp = sign * value; + return ASN_STRTOX_OK; +} + +/* + * Parse the number in the given string until the given *end position, + * returning the position after the last parsed character back using the + * same (*end) pointer. + * WARNING: This behavior is different from the standard strtoul/strtoumax(3). + */ +enum asn_strtox_result_e +asn_strtoumax_lim(const char *str, const char **end, uintmax_t *uintp) { + uintmax_t value; + + const uintmax_t asn1_uintmax_max = ((~(uintmax_t)0)); + const uintmax_t upper_boundary = asn1_uintmax_max / 10; + uintmax_t last_digit_max = asn1_uintmax_max % 10; + + if(str >= *end) return ASN_STRTOX_ERROR_INVAL; + + switch(*str) { + case '-': + return ASN_STRTOX_ERROR_INVAL; + case '+': + str++; + if(str >= *end) { + *end = str; + return ASN_STRTOX_EXPECT_MORE; + } + } + + for(value = 0; str < (*end); str++) { + if(*str >= 0x30 && *str <= 0x39) { + unsigned int d = *str - '0'; + if(value < upper_boundary) { + value = value * 10 + d; + } else if(value == upper_boundary) { + if(d <= last_digit_max) { + value = value * 10 + d; + str += 1; + if(str < *end) { + // If digits continue, we're guaranteed out of range. + *end = str; + if(*str >= 0x30 && *str <= 0x39) { + return ASN_STRTOX_ERROR_RANGE; + } else { + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + break; + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + return ASN_STRTOX_ERROR_RANGE; + } + } else { + *end = str; + *uintp = value; + return ASN_STRTOX_EXTRA_DATA; + } + } + + *end = str; + *uintp = value; + return ASN_STRTOX_OK; +} + +enum asn_strtox_result_e +asn_strtol_lim(const char *str, const char **end, long *lp) { + intmax_t value; + switch(asn_strtoimax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value >= LONG_MIN && value <= LONG_MAX) { + *lp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +enum asn_strtox_result_e +asn_strtoul_lim(const char *str, const char **end, unsigned long *ulp) { + uintmax_t value; + switch(asn_strtoumax_lim(str, end, &value)) { + case ASN_STRTOX_ERROR_RANGE: + return ASN_STRTOX_ERROR_RANGE; + case ASN_STRTOX_ERROR_INVAL: + return ASN_STRTOX_ERROR_INVAL; + case ASN_STRTOX_EXPECT_MORE: + return ASN_STRTOX_EXPECT_MORE; + case ASN_STRTOX_OK: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_OK; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + case ASN_STRTOX_EXTRA_DATA: + if(value <= ULONG_MAX) { + *ulp = value; + return ASN_STRTOX_EXTRA_DATA; + } else { + return ASN_STRTOX_ERROR_RANGE; + } + } + + assert(!"Unreachable"); + return ASN_STRTOX_ERROR_INVAL; +} + +int +INTEGER_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const INTEGER_t *a = aptr; + const INTEGER_t *b = bptr; + + (void)td; + + if(a && b) { + if(a->size && b->size) { + int sign_a = (a->buf[0] & 0x80) ? -1 : 1; + int sign_b = (b->buf[0] & 0x80) ? -1 : 1; + + if(sign_a < sign_b) return -1; + if(sign_a > sign_b) return 1; + + /* The shortest integer wins, unless comparing negatives */ + if(a->size < b->size) { + return -1 * sign_a; + } else if(a->size > b->size) { + return 1 * sign_b; + } + + return sign_a * memcmp(a->buf, b->buf, a->size); + } else if(a->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (1) * sign; + } else if(b->size) { + int sign = (a->buf[0] & 0x80) ? -1 : 1; + return (-1) * sign; + } else { + return 0; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} + +asn_random_fill_result_t +INTEGER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + INTEGER_t *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (INTEGER_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + const asn_per_constraints_t *ct; + + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } + } + + if(asn_imax2INTEGER(st, value)) { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } else { + *sptr = st; + result_ok.length = st->size; + return result_ok; + } +} diff --git a/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c b/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c new file mode 100644 index 000000000..110689b2d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/INTEGER_oer.c @@ -0,0 +1,179 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +asn_dec_rval_t +INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + INTEGER_t *st = (INTEGER_t *)*sptr; + struct asn_oer_constraint_number_s ct = {0, 0}; + size_t req_bytes; + + (void)opt_codec_ctx; + (void)specs; + + if(!st) { + st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(!st) ASN__DECODE_FAILED; + } + + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + if(ct.width) { + req_bytes = ct.width; + } else { + /* No lower bound and no upper bound, effectively */ + + ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes); + if(consumed == 0) { + ASN__DECODE_STARVED; + } else if(consumed == -1) { + ASN__DECODE_FAILED; + } + rval.consumed += consumed; + ptr = (const char *)ptr + consumed; + size -= consumed; + } + + if(req_bytes > size) { + ASN__DECODE_STARVED; + } + + if(ct.positive) { + /* X.969 08/2015 10.2(a) */ + unsigned msb; /* Most significant bit */ + size_t useful_size; + + /* Check most significant bit */ + msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */ + useful_size = msb + req_bytes; + st->buf = (uint8_t *)MALLOC(useful_size + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + /* + * Record a large unsigned in a way not to confuse it + * with signed value. + */ + st->buf[0] = '\0'; + memcpy(st->buf + msb, ptr, req_bytes); + st->buf[useful_size] = '\0'; /* Just in case, 0-terminate */ + st->size = useful_size; + + rval.consumed += req_bytes; + return rval; + } else { + /* X.969 08/2015 10.2(b) */ + st->buf = (uint8_t *)MALLOC(req_bytes + 1); + if(!st->buf) { + ASN__DECODE_FAILED; + } + + memcpy(st->buf, ptr, req_bytes); + st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */ + st->size = req_bytes; + + rval.consumed += req_bytes; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +INTEGER_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const INTEGER_t *st = sptr; + asn_enc_rval_t er = {0,0,0}; + struct asn_oer_constraint_number_s ct = {0, 0}; + const uint8_t *buf; + const uint8_t *end; + size_t useful_bytes; + size_t req_bytes = 0; + int sign = 0; + + if(!st || st->size == 0) ASN__ENCODE_FAILED; + + if(!constraints) constraints = td->encoding_constraints.oer_constraints; + if(constraints) ct = constraints->value; + + er.encoded = 0; + + buf = st->buf; + end = buf + st->size; + + sign = (buf && buf < end) ? buf[0] & 0x80 : 0; + + /* Ignore 9 leading zeroes or ones */ + if(ct.positive) { + if(sign) { + /* The value given is a signed value. Can't proceed. */ + ASN__ENCODE_FAILED; + } + /* Remove leading zeros. */ + for(; buf + 1 < end; buf++) { + if(buf[0] != 0x0) break; + } + } else { + for(; buf + 1 < end; buf++) { + if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) { + continue; + } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) { + continue; + } + break; + } + } + + useful_bytes = end - buf; + if(ct.width) { + req_bytes = ct.width; + } else { + ssize_t r = oer_serialize_length(useful_bytes, cb, app_key); + if(r < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += r; + req_bytes = useful_bytes; + } + + if(req_bytes < useful_bytes) { + ASN__ENCODE_FAILED; + } + + er.encoded += req_bytes; + + for(; req_bytes > useful_bytes; req_bytes--) { + if(cb(sign?"\xff":"\0", 1, app_key) < 0) { + ASN__ENCODE_FAILED; + } + } + + if(cb(buf, useful_bytes, app_key) < 0) { + ASN__ENCODE_FAILED; + } + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/ITIScodes.c b/src/tmx/Asn_J2735/src/r63/ITIScodes.c new file mode 100644 index 000000000..002835f93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ITIScodes.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ITIScodes.h" + +int +ITIScodes_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ITIScodes_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_ITIScodes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ITIScodes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodes = { + "ITIScodes", + "ITIScodes", + &asn_OP_NativeInteger, + asn_DEF_ITIScodes_tags_1, + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + asn_DEF_ITIScodes_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodes_tags_1) + /sizeof(asn_DEF_ITIScodes_tags_1[0]), /* 1 */ + { &asn_OER_type_ITIScodes_constr_1, &asn_PER_type_ITIScodes_constr_1, ITIScodes_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c b/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c new file mode 100644 index 000000000..68d5f9eac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ITIScodesAndText.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "ITIScodesAndText.h" + +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..100)) */}; +asn_per_constraints_t asn_PER_type_ITIScodesAndText_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 100 } /* (SIZE(1..100)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Memberitem, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Memberitem, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStext, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct ITIScodesAndText__Memberitem), + offsetof(struct ITIScodesAndText__Memberitem, _asn_ctx), + offsetof(struct ITIScodesAndText__Memberitem, present), + sizeof(((struct ITIScodesAndText__Memberitem *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct ITIScodesAndText__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct ITIScodesAndText__Member), + offsetof(struct ITIScodesAndText__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ITIScodesAndText_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ITIScodesAndText_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ITIScodesAndText_specs_1 = { + sizeof(struct ITIScodesAndText), + offsetof(struct ITIScodesAndText, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ITIScodesAndText = { + "ITIScodesAndText", + "ITIScodesAndText", + &asn_OP_SEQUENCE_OF, + asn_DEF_ITIScodesAndText_tags_1, + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + asn_DEF_ITIScodesAndText_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIScodesAndText_tags_1) + /sizeof(asn_DEF_ITIScodesAndText_tags_1[0]), /* 1 */ + { &asn_OER_type_ITIScodesAndText_constr_1, &asn_PER_type_ITIScodesAndText_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_ITIScodesAndText_1, + 1, /* Single element */ + &asn_SPC_ITIScodesAndText_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ITIStext.c b/src/tmx/Asn_J2735/src/r63/ITIStext.c new file mode 100644 index 000000000..687f9751f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ITIStext.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ITIStext.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +ITIStext_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 500) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ITIStext_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..500)) */}; +asn_per_constraints_t asn_PER_type_ITIStext_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 9, 9, 1, 500 } /* (SIZE(1..500)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_ITIStext_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStext = { + "ITIStext", + "ITIStext", + &asn_OP_IA5String, + asn_DEF_ITIStext_tags_1, + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + asn_DEF_ITIStext_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStext_tags_1) + /sizeof(asn_DEF_ITIStext_tags_1[0]), /* 1 */ + { &asn_OER_type_ITIStext_constr_1, &asn_PER_type_ITIStext_constr_1, ITIStext_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c b/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c new file mode 100644 index 000000000..b4e844fa8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ITIStextPhrase.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ITIStextPhrase.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +ITIStextPhrase_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 16) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_ITIStextPhrase_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_ITIStextPhrase_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ITIStextPhrase = { + "ITIStextPhrase", + "ITIStextPhrase", + &asn_OP_IA5String, + asn_DEF_ITIStextPhrase_tags_1, + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + asn_DEF_ITIStextPhrase_tags_1, /* Same as above */ + sizeof(asn_DEF_ITIStextPhrase_tags_1) + /sizeof(asn_DEF_ITIStextPhrase_tags_1[0]), /* 1 */ + { &asn_OER_type_ITIStextPhrase_constr_1, &asn_PER_type_ITIStextPhrase_constr_1, ITIStextPhrase_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Id128b.c b/src/tmx/Asn_J2735/src/r63/Id128b.c new file mode 100644 index 000000000..69d7d562a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Id128b.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Id128b.h" + +int +Id128b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Id128b_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_Id128b_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Id128b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Id128b = { + "Id128b", + "Id128b", + &asn_OP_OCTET_STRING, + asn_DEF_Id128b_tags_1, + sizeof(asn_DEF_Id128b_tags_1) + /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ + asn_DEF_Id128b_tags_1, /* Same as above */ + sizeof(asn_DEF_Id128b_tags_1) + /sizeof(asn_DEF_Id128b_tags_1[0]), /* 1 */ + { &asn_OER_type_Id128b_constr_1, &asn_PER_type_Id128b_constr_1, Id128b_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Id64b.c b/src/tmx/Asn_J2735/src/r63/Id64b.c new file mode 100644 index 000000000..0b7d291d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Id64b.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Id64b.h" + +int +Id64b_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Id64b_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_Id64b_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Id64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Id64b = { + "Id64b", + "Id64b", + &asn_OP_OCTET_STRING, + asn_DEF_Id64b_tags_1, + sizeof(asn_DEF_Id64b_tags_1) + /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ + asn_DEF_Id64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Id64b_tags_1) + /sizeof(asn_DEF_Id64b_tags_1[0]), /* 1 */ + { &asn_OER_type_Id64b_constr_1, &asn_PER_type_Id64b_constr_1, Id64b_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c b/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c new file mode 100644 index 000000000..41442bbf3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IncidentResponseEquipment.c @@ -0,0 +1,198 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IncidentResponseEquipment.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_IncidentResponseEquipment_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 7, 7, 0, 71 } /* (0..71,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_IncidentResponseEquipment_value2enum_1[] = { + { 9985, 23, "ground-fire-suppression" }, + { 9986, 22, "heavy-ground-equipment" }, + { 9988, 8, "aircraft" }, + { 9989, 16, "marine-equipment" }, + { 9990, 17, "support-equipment" }, + { 9991, 19, "medical-rescue-unit" }, + { 9993, 5, "other" }, + { 9994, 29, "ground-fire-suppression-other" }, + { 9995, 6, "engine" }, + { 9996, 15, "truck-or-aerial" }, + { 9997, 5, "quint" }, + { 9998, 25, "tanker-pumper-combination" }, + { 10000, 11, "brush-truck" }, + { 10001, 28, "aircraft-rescue-firefighting" }, + { 10004, 28, "heavy-ground-equipment-other" }, + { 10005, 13, "dozer-or-plow" }, + { 10006, 7, "tractor" }, + { 10008, 16, "tanker-or-tender" }, + { 10024, 14, "aircraft-other" }, + { 10025, 26, "aircraft-fixed-wing-tanker" }, + { 10026, 10, "helitanker" }, + { 10027, 10, "helicopter" }, + { 10034, 22, "marine-equipment-other" }, + { 10035, 19, "fire-boat-with-pump" }, + { 10036, 12, "boat-no-pump" }, + { 10044, 23, "support-apparatus-other" }, + { 10045, 27, "breathing-apparatus-support" }, + { 10046, 18, "light-and-air-unit" }, + { 10054, 25, "medical-rescue-unit-other" }, + { 10055, 11, "rescue-unit" }, + { 10056, 24, "urban-search-rescue-unit" }, + { 10057, 17, "high-angle-rescue" }, + { 10058, 17, "crash-fire-rescue" }, + { 10059, 8, "bLS-unit" }, + { 10060, 8, "aLS-unit" }, + { 10075, 19, "mobile-command-post" }, + { 10076, 17, "chief-officer-car" }, + { 10077, 11, "hAZMAT-unit" }, + { 10078, 16, "type-i-hand-crew" }, + { 10079, 17, "type-ii-hand-crew" }, + { 10083, 23, "privately-owned-vehicle" }, + { 10084, 24, "other-apparatus-resource" }, + { 10085, 9, "ambulance" }, + { 10086, 14, "bomb-squad-van" }, + { 10087, 17, "combine-harvester" }, + { 10088, 20, "construction-vehicle" }, + { 10089, 12, "farm-tractor" }, + { 10090, 22, "grass-cutting-machines" }, + { 10091, 22, "hAZMAT-containment-tow" }, + { 10092, 9, "heavy-tow" }, + { 10093, 22, "hedge-cutting-machines" }, + { 10094, 9, "light-tow" }, + { 10095, 12, "mobile-crane" }, + { 10096, 25, "refuse-collection-vehicle" }, + { 10097, 19, "resurfacing-vehicle" }, + { 10098, 12, "road-sweeper" }, + { 10099, 32, "roadside-litter-collection-crews" }, + { 10100, 15, "salvage-vehicle" }, + { 10101, 10, "sand-truck" }, + { 10102, 8, "snowplow" }, + { 10103, 12, "steam-roller" }, + { 10104, 13, "swat-team-van" }, + { 10105, 20, "track-laying-vehicle" }, + { 10106, 15, "unknown-vehicle" }, + { 10107, 20, "white-lining-vehicle" }, + { 10108, 10, "dump-truck" }, + { 10109, 18, "supervisor-vehicle" }, + { 10110, 11, "snow-blower" }, + { 10111, 18, "rotary-snow-blower" }, + { 10112, 11, "road-grader" }, + { 10113, 11, "steam-truck" }, + { 10114, 11, "flatbed-tow" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_IncidentResponseEquipment_enum2value_1[] = { + 34, /* aLS-unit(10060) */ + 2, /* aircraft(9988) */ + 19, /* aircraft-fixed-wing-tanker(10025) */ + 18, /* aircraft-other(10024) */ + 13, /* aircraft-rescue-firefighting(10001) */ + 42, /* ambulance(10085) */ + 33, /* bLS-unit(10059) */ + 24, /* boat-no-pump(10036) */ + 43, /* bomb-squad-van(10086) */ + 26, /* breathing-apparatus-support(10045) */ + 12, /* brush-truck(10000) */ + 36, /* chief-officer-car(10076) */ + 44, /* combine-harvester(10087) */ + 45, /* construction-vehicle(10088) */ + 32, /* crash-fire-rescue(10058) */ + 15, /* dozer-or-plow(10005) */ + 65, /* dump-truck(10108) */ + 8, /* engine(9995) */ + 46, /* farm-tractor(10089) */ + 23, /* fire-boat-with-pump(10035) */ + 71, /* flatbed-tow(10114) */ + 47, /* grass-cutting-machines(10090) */ + 0, /* ground-fire-suppression(9985) */ + 7, /* ground-fire-suppression-other(9994) */ + 48, /* hAZMAT-containment-tow(10091) */ + 37, /* hAZMAT-unit(10077) */ + 1, /* heavy-ground-equipment(9986) */ + 14, /* heavy-ground-equipment-other(10004) */ + 49, /* heavy-tow(10092) */ + 50, /* hedge-cutting-machines(10093) */ + 21, /* helicopter(10027) */ + 20, /* helitanker(10026) */ + 31, /* high-angle-rescue(10057) */ + 27, /* light-and-air-unit(10046) */ + 51, /* light-tow(10094) */ + 3, /* marine-equipment(9989) */ + 22, /* marine-equipment-other(10034) */ + 5, /* medical-rescue-unit(9991) */ + 28, /* medical-rescue-unit-other(10054) */ + 35, /* mobile-command-post(10075) */ + 52, /* mobile-crane(10095) */ + 6, /* other(9993) */ + 41, /* other-apparatus-resource(10084) */ + 40, /* privately-owned-vehicle(10083) */ + 10, /* quint(9997) */ + 53, /* refuse-collection-vehicle(10096) */ + 29, /* rescue-unit(10055) */ + 54, /* resurfacing-vehicle(10097) */ + 69, /* road-grader(10112) */ + 55, /* road-sweeper(10098) */ + 56, /* roadside-litter-collection-crews(10099) */ + 68, /* rotary-snow-blower(10111) */ + 57, /* salvage-vehicle(10100) */ + 58, /* sand-truck(10101) */ + 67, /* snow-blower(10110) */ + 59, /* snowplow(10102) */ + 60, /* steam-roller(10103) */ + 70, /* steam-truck(10113) */ + 66, /* supervisor-vehicle(10109) */ + 25, /* support-apparatus-other(10044) */ + 4, /* support-equipment(9990) */ + 61, /* swat-team-van(10104) */ + 17, /* tanker-or-tender(10008) */ + 11, /* tanker-pumper-combination(9998) */ + 62, /* track-laying-vehicle(10105) */ + 16, /* tractor(10006) */ + 9, /* truck-or-aerial(9996) */ + 38, /* type-i-hand-crew(10078) */ + 39, /* type-ii-hand-crew(10079) */ + 63, /* unknown-vehicle(10106) */ + 30, /* urban-search-rescue-unit(10056) */ + 64 /* white-lining-vehicle(10107) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_IncidentResponseEquipment_specs_1 = { + asn_MAP_IncidentResponseEquipment_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_IncidentResponseEquipment_enum2value_1, /* N => "tag"; sorted by N */ + 72, /* Number of elements in the maps */ + 73, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_IncidentResponseEquipment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IncidentResponseEquipment = { + "IncidentResponseEquipment", + "IncidentResponseEquipment", + &asn_OP_NativeEnumerated, + asn_DEF_IncidentResponseEquipment_tags_1, + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + asn_DEF_IncidentResponseEquipment_tags_1, /* Same as above */ + sizeof(asn_DEF_IncidentResponseEquipment_tags_1) + /sizeof(asn_DEF_IncidentResponseEquipment_tags_1[0]), /* 1 */ + { &asn_OER_type_IncidentResponseEquipment_constr_1, &asn_PER_type_IncidentResponseEquipment_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_IncidentResponseEquipment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c b/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c new file mode 100644 index 000000000..ae199275b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionAccessPoint.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionAccessPoint.h" + +static asn_oer_constraints_t asn_OER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_IntersectionAccessPoint_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_IntersectionAccessPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.lane), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lane" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.approach), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ApproachID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "approach" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionAccessPoint, choice.connection), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneConnectionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connection" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionAccessPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lane */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* approach */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* connection */ +}; +asn_CHOICE_specifics_t asn_SPC_IntersectionAccessPoint_specs_1 = { + sizeof(struct IntersectionAccessPoint), + offsetof(struct IntersectionAccessPoint, _asn_ctx), + offsetof(struct IntersectionAccessPoint, present), + sizeof(((struct IntersectionAccessPoint *)0)->present), + asn_MAP_IntersectionAccessPoint_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionAccessPoint = { + "IntersectionAccessPoint", + "IntersectionAccessPoint", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_IntersectionAccessPoint_constr_1, &asn_PER_type_IntersectionAccessPoint_constr_1, CHOICE_constraint }, + asn_MBR_IntersectionAccessPoint_1, + 3, /* Elements count */ + &asn_SPC_IntersectionAccessPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c b/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c new file mode 100644 index 000000000..3fe7c1079 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionCollision.c @@ -0,0 +1,221 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionCollision.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionCollision__regional), + offsetof(struct IntersectionCollision__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionCollision_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 4, offsetof(struct IntersectionCollision, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionCollision, partOne), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BSMcoreData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "partOne" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionCollision, path), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "path" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, intersectionID), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "intersectionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, laneNumber), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ApproachOrLane, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionCollision, eventFlag), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventFlag" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionCollision, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionCollision_oms_1[] = { 2, 3, 4, 5, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionCollision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionCollision_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* partOne */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* path */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* intersectionID */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* laneNumber */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* eventFlag */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionCollision_specs_1 = { + sizeof(struct IntersectionCollision), + offsetof(struct IntersectionCollision, _asn_ctx), + asn_MAP_IntersectionCollision_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionCollision_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionCollision = { + "IntersectionCollision", + "IntersectionCollision", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionCollision_tags_1, + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + asn_DEF_IntersectionCollision_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionCollision_tags_1) + /sizeof(asn_DEF_IntersectionCollision_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_IntersectionCollision_1, + 10, /* Elements count */ + &asn_SPC_IntersectionCollision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c b/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c new file mode 100644 index 000000000..71bd4819e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionGeometry.c @@ -0,0 +1,211 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionGeometry.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct IntersectionGeometry__regional), + offsetof(struct IntersectionGeometry__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionGeometry_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionGeometry, laneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneSet" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionGeometry, preemptPriorityData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PreemptPriorityList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "preemptPriorityData" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionGeometry, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionGeometry_oms_1[] = { 0, 4, 5, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* laneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* preemptPriorityData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionGeometry_specs_1 = { + sizeof(struct IntersectionGeometry), + offsetof(struct IntersectionGeometry, _asn_ctx), + asn_MAP_IntersectionGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_IntersectionGeometry_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometry = { + "IntersectionGeometry", + "IntersectionGeometry", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionGeometry_tags_1, + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometry_tags_1) + /sizeof(asn_DEF_IntersectionGeometry_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_IntersectionGeometry_1, + 9, /* Elements count */ + &asn_SPC_IntersectionGeometry_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c b/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c new file mode 100644 index 000000000..6baeb8df1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionGeometryList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionGeometryList.h" + +static asn_oer_constraints_t asn_OER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_IntersectionGeometryList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_IntersectionGeometryList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionGeometry, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionGeometryList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionGeometryList_specs_1 = { + sizeof(struct IntersectionGeometryList), + offsetof(struct IntersectionGeometryList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionGeometryList = { + "IntersectionGeometryList", + "IntersectionGeometryList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionGeometryList_tags_1, + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionGeometryList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionGeometryList_tags_1) + /sizeof(asn_DEF_IntersectionGeometryList_tags_1[0]), /* 1 */ + { &asn_OER_type_IntersectionGeometryList_constr_1, &asn_PER_type_IntersectionGeometryList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_IntersectionGeometryList_1, + 1, /* Single element */ + &asn_SPC_IntersectionGeometryList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionID.c b/src/tmx/Asn_J2735/src/r63/IntersectionID.c new file mode 100644 index 000000000..a66dd5c9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionID.h" + +int +IntersectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_IntersectionID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_IntersectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_IntersectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionID = { + "IntersectionID", + "IntersectionID", + &asn_OP_NativeInteger, + asn_DEF_IntersectionID_tags_1, + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionID_tags_1) + /sizeof(asn_DEF_IntersectionID_tags_1[0]), /* 1 */ + { &asn_OER_type_IntersectionID_constr_1, &asn_PER_type_IntersectionID_constr_1, IntersectionID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c b/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c new file mode 100644 index 000000000..cc5fddd83 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionReferenceID.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionReferenceID.h" + +asn_TYPE_member_t asn_MBR_IntersectionReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_IntersectionReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionReferenceID_specs_1 = { + sizeof(struct IntersectionReferenceID), + offsetof(struct IntersectionReferenceID, _asn_ctx), + asn_MAP_IntersectionReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_IntersectionReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionReferenceID = { + "IntersectionReferenceID", + "IntersectionReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionReferenceID_tags_1, + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + asn_DEF_IntersectionReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionReferenceID_tags_1) + /sizeof(asn_DEF_IntersectionReferenceID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_IntersectionReferenceID_1, + 2, /* Elements count */ + &asn_SPC_IntersectionReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c b/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c new file mode 100644 index 000000000..3ab253464 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionState-addGrpC.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionState-addGrpC.h" + +static asn_TYPE_member_t asn_MBR_IntersectionState_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState_addGrpC, activePrioritizations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "activePrioritizations" + }, +}; +static const int asn_MAP_IntersectionState_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* activePrioritizations */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_addGrpC_specs_1 = { + sizeof(struct IntersectionState_addGrpC), + offsetof(struct IntersectionState_addGrpC, _asn_ctx), + asn_MAP_IntersectionState_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_IntersectionState_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState_addGrpC = { + "IntersectionState-addGrpC", + "IntersectionState-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_addGrpC_tags_1, + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_addGrpC_tags_1) + /sizeof(asn_DEF_IntersectionState_addGrpC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_IntersectionState_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_IntersectionState_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionState.c b/src/tmx/Asn_J2735/src/r63/IntersectionState.c new file mode 100644 index 000000000..44f3f9dda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionState.c @@ -0,0 +1,221 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionState.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct IntersectionState__regional), + offsetof(struct IntersectionState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_IntersectionState_1[] = { + { ATF_POINTER, 1, offsetof(struct IntersectionState, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStatusObject, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct IntersectionState, moy), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "moy" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, enabledLanes), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EnabledLaneList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "enabledLanes" + }, + { ATF_NOFLAGS, 0, offsetof(struct IntersectionState, states), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "states" + }, + { ATF_POINTER, 2, offsetof(struct IntersectionState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct IntersectionState, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_IntersectionState_oms_1[] = { 0, 4, 5, 6, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_IntersectionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_IntersectionState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* moy */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* enabledLanes */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* states */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_IntersectionState_specs_1 = { + sizeof(struct IntersectionState), + offsetof(struct IntersectionState, _asn_ctx), + asn_MAP_IntersectionState_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_IntersectionState_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionState = { + "IntersectionState", + "IntersectionState", + &asn_OP_SEQUENCE, + asn_DEF_IntersectionState_tags_1, + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + asn_DEF_IntersectionState_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionState_tags_1) + /sizeof(asn_DEF_IntersectionState_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_IntersectionState_1, + 10, /* Elements count */ + &asn_SPC_IntersectionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c b/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c new file mode 100644 index 000000000..afa2ccb7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionStateList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionStateList.h" + +static asn_oer_constraints_t asn_OER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_IntersectionStateList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_IntersectionStateList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_IntersectionStateList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_IntersectionStateList_specs_1 = { + sizeof(struct IntersectionStateList), + offsetof(struct IntersectionStateList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStateList = { + "IntersectionStateList", + "IntersectionStateList", + &asn_OP_SEQUENCE_OF, + asn_DEF_IntersectionStateList_tags_1, + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStateList_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStateList_tags_1) + /sizeof(asn_DEF_IntersectionStateList_tags_1[0]), /* 1 */ + { &asn_OER_type_IntersectionStateList_constr_1, &asn_PER_type_IntersectionStateList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_IntersectionStateList_1, + 1, /* Single element */ + &asn_SPC_IntersectionStateList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c b/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c new file mode 100644 index 000000000..c77019ee8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IntersectionStatusObject.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IntersectionStatusObject.h" + +int +IntersectionStatusObject_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_IntersectionStatusObject_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_IntersectionStatusObject_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IntersectionStatusObject = { + "IntersectionStatusObject", + "IntersectionStatusObject", + &asn_OP_BIT_STRING, + asn_DEF_IntersectionStatusObject_tags_1, + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + asn_DEF_IntersectionStatusObject_tags_1, /* Same as above */ + sizeof(asn_DEF_IntersectionStatusObject_tags_1) + /sizeof(asn_DEF_IntersectionStatusObject_tags_1[0]), /* 1 */ + { &asn_OER_type_IntersectionStatusObject_constr_1, &asn_PER_type_IntersectionStatusObject_constr_1, IntersectionStatusObject_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/IsDolly.c b/src/tmx/Asn_J2735/src/r63/IsDolly.c new file mode 100644 index 000000000..92ffa43f2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/IsDolly.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "IsDolly.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_IsDolly_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IsDolly = { + "IsDolly", + "IsDolly", + &asn_OP_BOOLEAN, + asn_DEF_IsDolly_tags_1, + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + asn_DEF_IsDolly_tags_1, /* Same as above */ + sizeof(asn_DEF_IsDolly_tags_1) + /sizeof(asn_DEF_IsDolly_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c b/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c new file mode 100644 index 000000000..3e489e311 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Iso3833VehicleType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Iso3833VehicleType.h" + +int +Iso3833VehicleType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +asn_per_constraints_t asn_PER_type_Iso3833VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Iso3833VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Iso3833VehicleType = { + "Iso3833VehicleType", + "Iso3833VehicleType", + &asn_OP_NativeInteger, + asn_DEF_Iso3833VehicleType_tags_1, + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + asn_DEF_Iso3833VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_Iso3833VehicleType_tags_1) + /sizeof(asn_DEF_Iso3833VehicleType_tags_1[0]), /* 1 */ + { &asn_OER_type_Iso3833VehicleType_constr_1, &asn_PER_type_Iso3833VehicleType_constr_1, Iso3833VehicleType_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/J1939data.c b/src/tmx/Asn_J2735/src/r63/J1939data.c new file mode 100644 index 000000000..b0f2e2dad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/J1939data.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "J1939data.h" + +asn_TYPE_member_t asn_MBR_J1939data_1[] = { + { ATF_POINTER, 10, offsetof(struct J1939data, tires), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireDataList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tires" + }, + { ATF_POINTER, 9, offsetof(struct J1939data, axles), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AxleWeightList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "axles" + }, + { ATF_POINTER, 8, offsetof(struct J1939data, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_POINTER, 7, offsetof(struct J1939data, cargoWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CargoWeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cargoWeight" + }, + { ATF_POINTER, 6, offsetof(struct J1939data, steeringAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleTemperature, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "steeringAxleTemperature" + }, + { ATF_POINTER, 5, offsetof(struct J1939data, driveAxleLocation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "driveAxleLocation" + }, + { ATF_POINTER, 4, offsetof(struct J1939data, driveAxleLiftAirPressure), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLiftAirPressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "driveAxleLiftAirPressure" + }, + { ATF_POINTER, 3, offsetof(struct J1939data, driveAxleTemperature), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleTemperature, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "driveAxleTemperature" + }, + { ATF_POINTER, 2, offsetof(struct J1939data, driveAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DriveAxleLubePressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "driveAxleLubePressure" + }, + { ATF_POINTER, 1, offsetof(struct J1939data, steeringAxleLubePressure), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringAxleLubePressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "steeringAxleLubePressure" + }, +}; +static const int asn_MAP_J1939data_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_J1939data_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_J1939data_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tires */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* axles */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* cargoWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* steeringAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* driveAxleLocation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* driveAxleLiftAirPressure */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* driveAxleTemperature */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* driveAxleLubePressure */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* steeringAxleLubePressure */ +}; +asn_SEQUENCE_specifics_t asn_SPC_J1939data_specs_1 = { + sizeof(struct J1939data), + offsetof(struct J1939data, _asn_ctx), + asn_MAP_J1939data_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_J1939data_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_J1939data = { + "J1939data", + "J1939data", + &asn_OP_SEQUENCE, + asn_DEF_J1939data_tags_1, + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + asn_DEF_J1939data_tags_1, /* Same as above */ + sizeof(asn_DEF_J1939data_tags_1) + /sizeof(asn_DEF_J1939data_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_J1939data_1, + 10, /* Elements count */ + &asn_SPC_J1939data_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c new file mode 100644 index 000000000..683c14abb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Barrier.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Barrier.h" + +int +LaneAttributes_Barrier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Barrier_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Barrier_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Barrier = { + "LaneAttributes-Barrier", + "LaneAttributes-Barrier", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Barrier_tags_1, + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Barrier_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Barrier_tags_1) + /sizeof(asn_DEF_LaneAttributes_Barrier_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Barrier_constr_1, &asn_PER_type_LaneAttributes_Barrier_constr_1, LaneAttributes_Barrier_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c new file mode 100644 index 000000000..ad77e995e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Bike.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Bike.h" + +int +LaneAttributes_Bike_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Bike_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Bike_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Bike = { + "LaneAttributes-Bike", + "LaneAttributes-Bike", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Bike_tags_1, + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Bike_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Bike_tags_1) + /sizeof(asn_DEF_LaneAttributes_Bike_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Bike_constr_1, &asn_PER_type_LaneAttributes_Bike_constr_1, LaneAttributes_Bike_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c new file mode 100644 index 000000000..9824539a9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Crosswalk.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Crosswalk.h" + +int +LaneAttributes_Crosswalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Crosswalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Crosswalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Crosswalk = { + "LaneAttributes-Crosswalk", + "LaneAttributes-Crosswalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Crosswalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Crosswalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Crosswalk_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Crosswalk_constr_1, &asn_PER_type_LaneAttributes_Crosswalk_constr_1, LaneAttributes_Crosswalk_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c new file mode 100644 index 000000000..774505618 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Parking.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Parking.h" + +int +LaneAttributes_Parking_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Parking_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Parking_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Parking = { + "LaneAttributes-Parking", + "LaneAttributes-Parking", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Parking_tags_1, + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Parking_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Parking_tags_1) + /sizeof(asn_DEF_LaneAttributes_Parking_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Parking_constr_1, &asn_PER_type_LaneAttributes_Parking_constr_1, LaneAttributes_Parking_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c new file mode 100644 index 000000000..98d171e04 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Sidewalk.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Sidewalk.h" + +int +LaneAttributes_Sidewalk_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Sidewalk_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Sidewalk_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Sidewalk = { + "LaneAttributes-Sidewalk", + "LaneAttributes-Sidewalk", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Sidewalk_tags_1, + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Sidewalk_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1) + /sizeof(asn_DEF_LaneAttributes_Sidewalk_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Sidewalk_constr_1, &asn_PER_type_LaneAttributes_Sidewalk_constr_1, LaneAttributes_Sidewalk_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c new file mode 100644 index 000000000..a5b497db6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Striping.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Striping.h" + +int +LaneAttributes_Striping_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Striping_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Striping_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Striping = { + "LaneAttributes-Striping", + "LaneAttributes-Striping", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Striping_tags_1, + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Striping_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Striping_tags_1) + /sizeof(asn_DEF_LaneAttributes_Striping_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Striping_constr_1, &asn_PER_type_LaneAttributes_Striping_constr_1, LaneAttributes_Striping_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c new file mode 100644 index 000000000..022343b98 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-TrackedVehicle.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-TrackedVehicle.h" + +int +LaneAttributes_TrackedVehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_TrackedVehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_TrackedVehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_TrackedVehicle = { + "LaneAttributes-TrackedVehicle", + "LaneAttributes-TrackedVehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_TrackedVehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_TrackedVehicle_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_TrackedVehicle_constr_1, &asn_PER_type_LaneAttributes_TrackedVehicle_constr_1, LaneAttributes_TrackedVehicle_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c new file mode 100644 index 000000000..c6b91a677 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes-Vehicle.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes-Vehicle.h" + +int +LaneAttributes_Vehicle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_LaneAttributes_Vehicle_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 8, 8 } /* (SIZE(8..8,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_Vehicle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes_Vehicle = { + "LaneAttributes-Vehicle", + "LaneAttributes-Vehicle", + &asn_OP_BIT_STRING, + asn_DEF_LaneAttributes_Vehicle_tags_1, + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_Vehicle_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1) + /sizeof(asn_DEF_LaneAttributes_Vehicle_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneAttributes_Vehicle_constr_1, &asn_PER_type_LaneAttributes_Vehicle_constr_1, LaneAttributes_Vehicle_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneAttributes.c b/src/tmx/Asn_J2735/src/r63/LaneAttributes.c new file mode 100644 index 000000000..32fde7bf0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneAttributes.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneAttributes.h" + +asn_TYPE_member_t asn_MBR_LaneAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, directionalUse), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDirection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "directionalUse" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, sharedWith), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneSharing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sharedWith" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneAttributes, laneType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_LaneTypeAttributes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneType" + }, + { ATF_POINTER, 1, offsetof(struct LaneAttributes, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_LaneAttributes_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_LaneAttributes_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* directionalUse */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sharedWith */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LaneAttributes_specs_1 = { + sizeof(struct LaneAttributes), + offsetof(struct LaneAttributes, _asn_ctx), + asn_MAP_LaneAttributes_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_LaneAttributes_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneAttributes = { + "LaneAttributes", + "LaneAttributes", + &asn_OP_SEQUENCE, + asn_DEF_LaneAttributes_tags_1, + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + asn_DEF_LaneAttributes_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneAttributes_tags_1) + /sizeof(asn_DEF_LaneAttributes_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_LaneAttributes_1, + 4, /* Elements count */ + &asn_SPC_LaneAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c b/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c new file mode 100644 index 000000000..95bf955fe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneConnectionID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneConnectionID.h" + +int +LaneConnectionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_LaneConnectionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneConnectionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneConnectionID = { + "LaneConnectionID", + "LaneConnectionID", + &asn_OP_NativeInteger, + asn_DEF_LaneConnectionID_tags_1, + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + asn_DEF_LaneConnectionID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneConnectionID_tags_1) + /sizeof(asn_DEF_LaneConnectionID_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneConnectionID_constr_1, &asn_PER_type_LaneConnectionID_constr_1, LaneConnectionID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c new file mode 100644 index 000000000..f54e35cff --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute-addGrpB.c @@ -0,0 +1,35 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneDataAttribute-addGrpB.h" + +static const ber_tlv_tag_t asn_DEF_LaneDataAttribute_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_LaneDataAttribute_addGrpB_specs_1 = { + sizeof(struct LaneDataAttribute_addGrpB), + offsetof(struct LaneDataAttribute_addGrpB, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 0, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute_addGrpB = { + "LaneDataAttribute-addGrpB", + "LaneDataAttribute-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_LaneDataAttribute_addGrpB_tags_1, + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttribute_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1) + /sizeof(asn_DEF_LaneDataAttribute_addGrpB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + 0, 0, /* No members */ + &asn_SPC_LaneDataAttribute_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c new file mode 100644 index 000000000..f6afade0e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneDataAttribute.c @@ -0,0 +1,194 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneDataAttribute.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_LaneDataAttribute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct LaneDataAttribute__regional), + offsetof(struct LaneDataAttribute__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_LaneDataAttribute_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.pathEndPointAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathEndPointAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointCenter), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneCrownPointCenter" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointLeft), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneCrownPointLeft" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneCrownPointRight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadwayCrownAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneCrownPointRight" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.laneAngle), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MergeDivergeNodeAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneDataAttribute, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneDataAttribute_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pathEndPointAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneCrownPointCenter */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* laneCrownPointLeft */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* laneCrownPointRight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneAngle */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneDataAttribute_specs_1 = { + sizeof(struct LaneDataAttribute), + offsetof(struct LaneDataAttribute, _asn_ctx), + offsetof(struct LaneDataAttribute, present), + sizeof(((struct LaneDataAttribute *)0)->present), + asn_MAP_LaneDataAttribute_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttribute = { + "LaneDataAttribute", + "LaneDataAttribute", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_LaneDataAttribute_constr_1, &asn_PER_type_LaneDataAttribute_constr_1, CHOICE_constraint }, + asn_MBR_LaneDataAttribute_1, + 7, /* Elements count */ + &asn_SPC_LaneDataAttribute_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c b/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c new file mode 100644 index 000000000..a78358fda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneDataAttributeList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneDataAttributeList.h" + +static asn_oer_constraints_t asn_OER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_LaneDataAttributeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_LaneDataAttributeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_LaneDataAttribute, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneDataAttributeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneDataAttributeList_specs_1 = { + sizeof(struct LaneDataAttributeList), + offsetof(struct LaneDataAttributeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneDataAttributeList = { + "LaneDataAttributeList", + "LaneDataAttributeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneDataAttributeList_tags_1, + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + asn_DEF_LaneDataAttributeList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDataAttributeList_tags_1) + /sizeof(asn_DEF_LaneDataAttributeList_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneDataAttributeList_constr_1, &asn_PER_type_LaneDataAttributeList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_LaneDataAttributeList_1, + 1, /* Single element */ + &asn_SPC_LaneDataAttributeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneDirection.c b/src/tmx/Asn_J2735/src/r63/LaneDirection.c new file mode 100644 index 000000000..a7e992f7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneDirection.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneDirection.h" + +int +LaneDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneDirection_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +asn_per_constraints_t asn_PER_type_LaneDirection_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneDirection = { + "LaneDirection", + "LaneDirection", + &asn_OP_BIT_STRING, + asn_DEF_LaneDirection_tags_1, + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + asn_DEF_LaneDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneDirection_tags_1) + /sizeof(asn_DEF_LaneDirection_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneDirection_constr_1, &asn_PER_type_LaneDirection_constr_1, LaneDirection_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneID.c b/src/tmx/Asn_J2735/src/r63/LaneID.c new file mode 100644 index 000000000..749835d2f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneID.h" + +int +LaneID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_LaneID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneID = { + "LaneID", + "LaneID", + &asn_OP_NativeInteger, + asn_DEF_LaneID_tags_1, + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + asn_DEF_LaneID_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneID_tags_1) + /sizeof(asn_DEF_LaneID_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneID_constr_1, &asn_PER_type_LaneID_constr_1, LaneID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneList.c b/src/tmx/Asn_J2735/src/r63/LaneList.c new file mode 100644 index 000000000..173958241 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneList.h" + +static asn_oer_constraints_t asn_OER_type_LaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +asn_per_constraints_t asn_PER_type_LaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_LaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_LaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_LaneList_specs_1 = { + sizeof(struct LaneList), + offsetof(struct LaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneList = { + "LaneList", + "LaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_LaneList_tags_1, + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + asn_DEF_LaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneList_tags_1) + /sizeof(asn_DEF_LaneList_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneList_constr_1, &asn_PER_type_LaneList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_LaneList_1, + 1, /* Single element */ + &asn_SPC_LaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneSharing.c b/src/tmx/Asn_J2735/src/r63/LaneSharing.c new file mode 100644 index 000000000..968ebb6d6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneSharing.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneSharing.h" + +int +LaneSharing_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 10)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneSharing_constr_1 CC_NOTUSED = { + { 0, 0 }, + 10 /* (SIZE(10..10)) */}; +asn_per_constraints_t asn_PER_type_LaneSharing_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneSharing_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneSharing = { + "LaneSharing", + "LaneSharing", + &asn_OP_BIT_STRING, + asn_DEF_LaneSharing_tags_1, + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + asn_DEF_LaneSharing_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneSharing_tags_1) + /sizeof(asn_DEF_LaneSharing_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneSharing_constr_1, &asn_PER_type_LaneSharing_constr_1, LaneSharing_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c b/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c new file mode 100644 index 000000000..effe77a26 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneTypeAttributes.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneTypeAttributes.h" + +static asn_oer_constraints_t asn_OER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_LaneTypeAttributes_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_LaneTypeAttributes_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.vehicle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Vehicle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.crosswalk), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Crosswalk, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crosswalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.bikeLane), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Bike, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "bikeLane" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.sidewalk), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Sidewalk, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sidewalk" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.median), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Barrier, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "median" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.striping), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Striping, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "striping" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.trackedVehicle), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_TrackedVehicle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trackedVehicle" + }, + { ATF_NOFLAGS, 0, offsetof(struct LaneTypeAttributes, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneAttributes_Parking, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "parking" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_LaneTypeAttributes_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* crosswalk */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bikeLane */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sidewalk */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* median */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* striping */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trackedVehicle */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* parking */ +}; +asn_CHOICE_specifics_t asn_SPC_LaneTypeAttributes_specs_1 = { + sizeof(struct LaneTypeAttributes), + offsetof(struct LaneTypeAttributes, _asn_ctx), + offsetof(struct LaneTypeAttributes, present), + sizeof(((struct LaneTypeAttributes *)0)->present), + asn_MAP_LaneTypeAttributes_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + 8 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_LaneTypeAttributes = { + "LaneTypeAttributes", + "LaneTypeAttributes", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_LaneTypeAttributes_constr_1, &asn_PER_type_LaneTypeAttributes_constr_1, CHOICE_constraint }, + asn_MBR_LaneTypeAttributes_1, + 8, /* Elements count */ + &asn_SPC_LaneTypeAttributes_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LaneWidth.c b/src/tmx/Asn_J2735/src/r63/LaneWidth.c new file mode 100644 index 000000000..30f9972b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LaneWidth.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LaneWidth.h" + +int +LaneWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LaneWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_LaneWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LaneWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LaneWidth = { + "LaneWidth", + "LaneWidth", + &asn_OP_NativeInteger, + asn_DEF_LaneWidth_tags_1, + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + asn_DEF_LaneWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_LaneWidth_tags_1) + /sizeof(asn_DEF_LaneWidth_tags_1[0]), /* 1 */ + { &asn_OER_type_LaneWidth_constr_1, &asn_PER_type_LaneWidth_constr_1, LaneWidth_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Latitude.c b/src/tmx/Asn_J2735/src/r63/Latitude.c new file mode 100644 index 000000000..b38dc236c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Latitude.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Latitude.h" + +int +Latitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -900000000 && value <= 900000001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Latitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-900000000..900000001) */, + -1}; +asn_per_constraints_t asn_PER_type_Latitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -900000000, 900000001 } /* (-900000000..900000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Latitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Latitude = { + "Latitude", + "Latitude", + &asn_OP_NativeInteger, + asn_DEF_Latitude_tags_1, + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + asn_DEF_Latitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Latitude_tags_1) + /sizeof(asn_DEF_Latitude_tags_1[0]), /* 1 */ + { &asn_OER_type_Latitude_constr_1, &asn_PER_type_Latitude_constr_1, Latitude_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c b/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c new file mode 100644 index 000000000..891024c54 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LatitudeDMS.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LatitudeDMS.h" + +int +LatitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32400000 && value <= 32400000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-32400000..32400000) */, + -1}; +asn_per_constraints_t asn_PER_type_LatitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 26, -1, -32400000, 32400000 } /* (-32400000..32400000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LatitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS = { + "LatitudeDMS", + "LatitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LatitudeDMS_tags_1, + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS_tags_1) + /sizeof(asn_DEF_LatitudeDMS_tags_1[0]), /* 1 */ + { &asn_OER_type_LatitudeDMS_constr_1, &asn_PER_type_LatitudeDMS_constr_1, LatitudeDMS_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c b/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c new file mode 100644 index 000000000..8308268fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LatitudeDMS2.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LatitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LatitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLat, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LatitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LatitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LatitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LatitudeDMS2_specs_1 = { + sizeof(struct LatitudeDMS2), + offsetof(struct LatitudeDMS2, _asn_ctx), + asn_MAP_LatitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LatitudeDMS2 = { + "LatitudeDMS2", + "LatitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LatitudeDMS2_tags_1, + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LatitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LatitudeDMS2_tags_1) + /sizeof(asn_DEF_LatitudeDMS2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_LatitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LatitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LayerID.c b/src/tmx/Asn_J2735/src/r63/LayerID.c new file mode 100644 index 000000000..31a98b092 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LayerID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LayerID.h" + +int +LayerID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LayerID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +asn_per_constraints_t asn_PER_type_LayerID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LayerID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerID = { + "LayerID", + "LayerID", + &asn_OP_NativeInteger, + asn_DEF_LayerID_tags_1, + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + asn_DEF_LayerID_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerID_tags_1) + /sizeof(asn_DEF_LayerID_tags_1[0]), /* 1 */ + { &asn_OER_type_LayerID_constr_1, &asn_PER_type_LayerID_constr_1, LayerID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LayerType.c b/src/tmx/Asn_J2735/src/r63/LayerType.c new file mode 100644 index 000000000..a0b83afb3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LayerType.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LayerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LayerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_LayerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_LayerType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 12, "mixedContent" }, + { 2, 14, "generalMapData" }, + { 3, 16, "intersectionData" }, + { 4, 9, "curveData" }, + { 5, 18, "roadwaySectionData" }, + { 6, 15, "parkingAreaData" }, + { 7, 14, "sharedLaneData" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_LayerType_enum2value_1[] = { + 4, /* curveData(4) */ + 2, /* generalMapData(2) */ + 3, /* intersectionData(3) */ + 1, /* mixedContent(1) */ + 0, /* none(0) */ + 6, /* parkingAreaData(6) */ + 5, /* roadwaySectionData(5) */ + 7 /* sharedLaneData(7) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_LayerType_specs_1 = { + asn_MAP_LayerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LayerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LayerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LayerType = { + "LayerType", + "LayerType", + &asn_OP_NativeEnumerated, + asn_DEF_LayerType_tags_1, + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + asn_DEF_LayerType_tags_1, /* Same as above */ + sizeof(asn_DEF_LayerType_tags_1) + /sizeof(asn_DEF_LayerType_tags_1[0]), /* 1 */ + { &asn_OER_type_LayerType_constr_1, &asn_PER_type_LayerType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LayerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LightbarInUse.c b/src/tmx/Asn_J2735/src/r63/LightbarInUse.c new file mode 100644 index 000000000..6d4821e95 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LightbarInUse.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LightbarInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_LightbarInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_LightbarInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 19, "yellowCautionLights" }, + { 4, 16, "schooldBusLights" }, + { 5, 16, "arrowSignsActive" }, + { 6, 17, "slowMovingVehicle" }, + { 7, 9, "freqStops" } +}; +static const unsigned int asn_MAP_LightbarInUse_enum2value_1[] = { + 5, /* arrowSignsActive(5) */ + 7, /* freqStops(7) */ + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 4, /* schooldBusLights(4) */ + 6, /* slowMovingVehicle(6) */ + 0, /* unavailable(0) */ + 3 /* yellowCautionLights(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_LightbarInUse_specs_1 = { + asn_MAP_LightbarInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LightbarInUse_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LightbarInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LightbarInUse = { + "LightbarInUse", + "LightbarInUse", + &asn_OP_NativeEnumerated, + asn_DEF_LightbarInUse_tags_1, + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + asn_DEF_LightbarInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_LightbarInUse_tags_1) + /sizeof(asn_DEF_LightbarInUse_tags_1[0]), /* 1 */ + { &asn_OER_type_LightbarInUse_constr_1, &asn_PER_type_LightbarInUse_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LightbarInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Location-quality.c b/src/tmx/Asn_J2735/src/r63/Location-quality.c new file mode 100644 index 000000000..3c8845caf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Location-quality.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Location-quality.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Location_quality_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_Location_quality_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Location_quality_value2enum_1[] = { + { 0, 13, "loc-qual-bt1m" }, + { 1, 13, "loc-qual-bt5m" }, + { 2, 14, "loc-qual-bt12m" }, + { 3, 14, "loc-qual-bt50m" }, + { 4, 15, "loc-qual-bt125m" }, + { 5, 15, "loc-qual-bt500m" }, + { 6, 16, "loc-qual-bt1250m" }, + { 7, 16, "loc-qual-unknown" } +}; +static const unsigned int asn_MAP_Location_quality_enum2value_1[] = { + 6, /* loc-qual-bt1250m(6) */ + 4, /* loc-qual-bt125m(4) */ + 2, /* loc-qual-bt12m(2) */ + 0, /* loc-qual-bt1m(0) */ + 5, /* loc-qual-bt500m(5) */ + 3, /* loc-qual-bt50m(3) */ + 1, /* loc-qual-bt5m(1) */ + 7 /* loc-qual-unknown(7) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_quality_specs_1 = { + asn_MAP_Location_quality_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_quality_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_quality_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_quality = { + "Location-quality", + "Location-quality", + &asn_OP_NativeEnumerated, + asn_DEF_Location_quality_tags_1, + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + asn_DEF_Location_quality_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_quality_tags_1) + /sizeof(asn_DEF_Location_quality_tags_1[0]), /* 1 */ + { &asn_OER_type_Location_quality_constr_1, &asn_PER_type_Location_quality_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_quality_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Location-tech.c b/src/tmx/Asn_J2735/src/r63/Location-tech.c new file mode 100644 index 000000000..033863412 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Location-tech.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Location-tech.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Location_tech_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_Location_tech_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 9 } /* (0..9,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_Location_tech_value2enum_1[] = { + { 0, 16, "loc-tech-unknown" }, + { 1, 13, "loc-tech-GNSS" }, + { 2, 13, "loc-tech-DGPS" }, + { 3, 12, "loc-tech-RTK" }, + { 4, 12, "loc-tech-PPP" }, + { 5, 14, "loc-tech-drGPS" }, + { 6, 15, "loc-tech-drDGPS" }, + { 7, 11, "loc-tech-dr" }, + { 8, 12, "loc-tech-nav" }, + { 9, 14, "loc-tech-fault" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_Location_tech_enum2value_1[] = { + 2, /* loc-tech-DGPS(2) */ + 1, /* loc-tech-GNSS(1) */ + 4, /* loc-tech-PPP(4) */ + 3, /* loc-tech-RTK(3) */ + 7, /* loc-tech-dr(7) */ + 6, /* loc-tech-drDGPS(6) */ + 5, /* loc-tech-drGPS(5) */ + 9, /* loc-tech-fault(9) */ + 8, /* loc-tech-nav(8) */ + 0 /* loc-tech-unknown(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Location_tech_specs_1 = { + asn_MAP_Location_tech_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_Location_tech_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 11, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Location_tech_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Location_tech = { + "Location-tech", + "Location-tech", + &asn_OP_NativeEnumerated, + asn_DEF_Location_tech_tags_1, + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + asn_DEF_Location_tech_tags_1, /* Same as above */ + sizeof(asn_DEF_Location_tech_tags_1) + /sizeof(asn_DEF_Location_tech_tags_1[0]), /* 1 */ + { &asn_OER_type_Location_tech_constr_1, &asn_PER_type_Location_tech_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Location_tech_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Longitude.c b/src/tmx/Asn_J2735/src/r63/Longitude.c new file mode 100644 index 000000000..ab60f8917 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Longitude.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Longitude.h" + +int +Longitude_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1799999999 && value <= 1800000001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Longitude_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-1799999999..1800000001) */, + -1}; +asn_per_constraints_t asn_PER_type_Longitude_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, -1799999999, 1800000001 } /* (-1799999999..1800000001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Longitude_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Longitude = { + "Longitude", + "Longitude", + &asn_OP_NativeInteger, + asn_DEF_Longitude_tags_1, + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + asn_DEF_Longitude_tags_1, /* Same as above */ + sizeof(asn_DEF_Longitude_tags_1) + /sizeof(asn_DEF_Longitude_tags_1[0]), /* 1 */ + { &asn_OER_type_Longitude_constr_1, &asn_PER_type_Longitude_constr_1, Longitude_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c b/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c new file mode 100644 index 000000000..b2134a078 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LongitudeDMS.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LongitudeDMS.h" + +int +LongitudeDMS_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64800000 && value <= 64800000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-64800000..64800000) */, + -1}; +asn_per_constraints_t asn_PER_type_LongitudeDMS_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 27, -1, -64800000, 64800000 } /* (-64800000..64800000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_LongitudeDMS_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS = { + "LongitudeDMS", + "LongitudeDMS", + &asn_OP_NativeInteger, + asn_DEF_LongitudeDMS_tags_1, + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS_tags_1) + /sizeof(asn_DEF_LongitudeDMS_tags_1[0]), /* 1 */ + { &asn_OER_type_LongitudeDMS_constr_1, &asn_PER_type_LongitudeDMS_constr_1, LongitudeDMS_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c b/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c new file mode 100644 index 000000000..461728ca4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/LongitudeDMS2.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "LongitudeDMS2.h" + +asn_TYPE_member_t asn_MBR_LongitudeDMS2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, d), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DegreesLong, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "d" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, m), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m" + }, + { ATF_NOFLAGS, 0, offsetof(struct LongitudeDMS2, s), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondsAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "s" + }, +}; +static const ber_tlv_tag_t asn_DEF_LongitudeDMS2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_LongitudeDMS2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* d */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s */ +}; +asn_SEQUENCE_specifics_t asn_SPC_LongitudeDMS2_specs_1 = { + sizeof(struct LongitudeDMS2), + offsetof(struct LongitudeDMS2, _asn_ctx), + asn_MAP_LongitudeDMS2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_LongitudeDMS2 = { + "LongitudeDMS2", + "LongitudeDMS2", + &asn_OP_SEQUENCE, + asn_DEF_LongitudeDMS2_tags_1, + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + asn_DEF_LongitudeDMS2_tags_1, /* Same as above */ + sizeof(asn_DEF_LongitudeDMS2_tags_1) + /sizeof(asn_DEF_LongitudeDMS2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_LongitudeDMS2_1, + 3, /* Elements count */ + &asn_SPC_LongitudeDMS2_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MUTCDCode.c b/src/tmx/Asn_J2735/src/r63/MUTCDCode.c new file mode 100644 index 000000000..59b8a8892 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MUTCDCode.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MUTCDCode.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MUTCDCode_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MUTCDCode_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 10, "regulatory" }, + { 2, 7, "warning" }, + { 3, 11, "maintenance" }, + { 4, 15, "motoristService" }, + { 5, 5, "guide" }, + { 6, 3, "rec" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MUTCDCode_enum2value_1[] = { + 5, /* guide(5) */ + 3, /* maintenance(3) */ + 4, /* motoristService(4) */ + 0, /* none(0) */ + 6, /* rec(6) */ + 1, /* regulatory(1) */ + 2 /* warning(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MUTCDCode_specs_1 = { + asn_MAP_MUTCDCode_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MUTCDCode_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MUTCDCode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MUTCDCode = { + "MUTCDCode", + "MUTCDCode", + &asn_OP_NativeEnumerated, + asn_DEF_MUTCDCode_tags_1, + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + asn_DEF_MUTCDCode_tags_1, /* Same as above */ + sizeof(asn_DEF_MUTCDCode_tags_1) + /sizeof(asn_DEF_MUTCDCode_tags_1[0]), /* 1 */ + { &asn_OER_type_MUTCDCode_constr_1, &asn_PER_type_MUTCDCode_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MUTCDCode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c b/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c new file mode 100644 index 000000000..35165b9b2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ManeuverAssistList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ManeuverAssistList.h" + +static asn_oer_constraints_t asn_OER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_ManeuverAssistList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ManeuverAssistList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ConnectionManeuverAssist, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ManeuverAssistList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ManeuverAssistList_specs_1 = { + sizeof(struct ManeuverAssistList), + offsetof(struct ManeuverAssistList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ManeuverAssistList = { + "ManeuverAssistList", + "ManeuverAssistList", + &asn_OP_SEQUENCE_OF, + asn_DEF_ManeuverAssistList_tags_1, + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + asn_DEF_ManeuverAssistList_tags_1, /* Same as above */ + sizeof(asn_DEF_ManeuverAssistList_tags_1) + /sizeof(asn_DEF_ManeuverAssistList_tags_1[0]), /* 1 */ + { &asn_OER_type_ManeuverAssistList_constr_1, &asn_PER_type_ManeuverAssistList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_ManeuverAssistList_1, + 1, /* Single element */ + &asn_SPC_ManeuverAssistList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c b/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c new file mode 100644 index 000000000..6a7b31956 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MapData-addGrpC.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MapData-addGrpC.h" + +static asn_TYPE_member_t asn_MBR_MapData_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData_addGrpC, signalHeadLocations), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalHeadLocationList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "signalHeadLocations" + }, +}; +static const int asn_MAP_MapData_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_MapData_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* signalHeadLocations */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MapData_addGrpC_specs_1 = { + sizeof(struct MapData_addGrpC), + offsetof(struct MapData_addGrpC, _asn_ctx), + asn_MAP_MapData_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_MapData_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData_addGrpC = { + "MapData-addGrpC", + "MapData-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_MapData_addGrpC_tags_1, + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_MapData_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_addGrpC_tags_1) + /sizeof(asn_DEF_MapData_addGrpC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MapData_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_MapData_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MapData.c b/src/tmx/Asn_J2735/src/r63/MapData.c new file mode 100644 index 000000000..ccec51ebe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MapData.c @@ -0,0 +1,211 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MapData.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct MapData__regional), + offsetof(struct MapData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MapData_1[] = { + { ATF_POINTER, 1, offsetof(struct MapData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct MapData, msgIssueRevision), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgIssueRevision" + }, + { ATF_POINTER, 7, offsetof(struct MapData, layerType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "layerType" + }, + { ATF_POINTER, 6, offsetof(struct MapData, layerID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LayerID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "layerID" + }, + { ATF_POINTER, 5, offsetof(struct MapData, intersections), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionGeometryList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 4, offsetof(struct MapData, roadSegments), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roadSegments" + }, + { ATF_POINTER, 3, offsetof(struct MapData, dataParameters), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DataParameters, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dataParameters" + }, + { ATF_POINTER, 2, offsetof(struct MapData, restrictionList), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "restrictionList" + }, + { ATF_POINTER, 1, offsetof(struct MapData, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MapData_oms_1[] = { 0, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_MapData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MapData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* msgIssueRevision */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* layerType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* layerID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadSegments */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataParameters */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* restrictionList */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MapData_specs_1 = { + sizeof(struct MapData), + offsetof(struct MapData, _asn_ctx), + asn_MAP_MapData_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_MapData_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MapData = { + "MapData", + "MapData", + &asn_OP_SEQUENCE, + asn_DEF_MapData_tags_1, + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + asn_DEF_MapData_tags_1, /* Same as above */ + sizeof(asn_DEF_MapData_tags_1) + /sizeof(asn_DEF_MapData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MapData_1, + 9, /* Elements count */ + &asn_SPC_MapData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c b/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c new file mode 100644 index 000000000..71d94721b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MaxTimetoChange.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MaxTimetoChange.h" + +int +MaxTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2402)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +asn_per_constraints_t asn_PER_type_MaxTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MaxTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MaxTimetoChange = { + "MaxTimetoChange", + "MaxTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MaxTimetoChange_tags_1, + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MaxTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MaxTimetoChange_tags_1) + /sizeof(asn_DEF_MaxTimetoChange_tags_1[0]), /* 1 */ + { &asn_OER_type_MaxTimetoChange_constr_1, &asn_PER_type_MaxTimetoChange_constr_1, MaxTimetoChange_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c b/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c new file mode 100644 index 000000000..604caf91c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MeasurementTimeOffset.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "MeasurementTimeOffset.h" + +int +MeasurementTimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1500 && value <= 1500)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1500..1500) */, + -1}; +asn_per_constraints_t asn_PER_type_MeasurementTimeOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -1500, 1500 } /* (-1500..1500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MeasurementTimeOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MeasurementTimeOffset = { + "MeasurementTimeOffset", + "MeasurementTimeOffset", + &asn_OP_NativeInteger, + asn_DEF_MeasurementTimeOffset_tags_1, + sizeof(asn_DEF_MeasurementTimeOffset_tags_1) + /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ + asn_DEF_MeasurementTimeOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_MeasurementTimeOffset_tags_1) + /sizeof(asn_DEF_MeasurementTimeOffset_tags_1[0]), /* 1 */ + { &asn_OER_type_MeasurementTimeOffset_constr_1, &asn_PER_type_MeasurementTimeOffset_constr_1, MeasurementTimeOffset_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c b/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c new file mode 100644 index 000000000..a10060f8d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MergeDivergeNodeAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MergeDivergeNodeAngle.h" + +int +MergeDivergeNodeAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -180 && value <= 180)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-180..180) */, + -1}; +asn_per_constraints_t asn_PER_type_MergeDivergeNodeAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -180, 180 } /* (-180..180) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MergeDivergeNodeAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MergeDivergeNodeAngle = { + "MergeDivergeNodeAngle", + "MergeDivergeNodeAngle", + &asn_OP_NativeInteger, + asn_DEF_MergeDivergeNodeAngle_tags_1, + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + asn_DEF_MergeDivergeNodeAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1) + /sizeof(asn_DEF_MergeDivergeNodeAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_MergeDivergeNodeAngle_constr_1, &asn_PER_type_MergeDivergeNodeAngle_constr_1, MergeDivergeNodeAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MessageBLOB.c b/src/tmx/Asn_J2735/src/r63/MessageBLOB.c new file mode 100644 index 000000000..cf9279ff8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MessageBLOB.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MessageBLOB.h" + +int +MessageBLOB_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 10 && size <= 2000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(10..2000)) */}; +static asn_per_constraints_t asn_PER_type_MessageBLOB_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 10, 2000 } /* (SIZE(10..2000)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MessageBLOB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MessageBLOB = { + "MessageBLOB", + "MessageBLOB", + &asn_OP_OCTET_STRING, + asn_DEF_MessageBLOB_tags_1, + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + asn_DEF_MessageBLOB_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageBLOB_tags_1) + /sizeof(asn_DEF_MessageBLOB_tags_1[0]), /* 1 */ + { &asn_OER_type_MessageBLOB_constr_1, &asn_PER_type_MessageBLOB_constr_1, MessageBLOB_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MessageFrame.c b/src/tmx/Asn_J2735/src/r63/MessageFrame.c new file mode 100644 index 000000000..b3925827e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MessageFrame.c @@ -0,0 +1,597 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names` + */ + +#include "MessageFrame.h" + +static const long asn_VAL_1_basicSafetyMessage = 20; +static const long asn_VAL_2_mapData = 18; +static const long asn_VAL_3_signalPhaseAndTimingMessage = 19; +static const long asn_VAL_4_commonSafetyRequest = 21; +static const long asn_VAL_5_emergencyVehicleAlert = 22; +static const long asn_VAL_6_intersectionCollision = 23; +static const long asn_VAL_7_nmeaCorrections = 24; +static const long asn_VAL_8_probeDataManagement = 25; +static const long asn_VAL_9_probeVehicleData = 26; +static const long asn_VAL_10_roadSideAlert = 27; +static const long asn_VAL_11_rtcmCorrections = 28; +static const long asn_VAL_12_signalRequestMessage = 29; +static const long asn_VAL_13_signalStatusMessage = 30; +static const long asn_VAL_14_travelerInformation = 31; +static const long asn_VAL_15_personalSafetyMessage = 32; +static const long asn_VAL_16_testMessage00 = 240; +static const long asn_VAL_17_testMessage01 = 241; +static const long asn_VAL_18_testMessage02 = 242; +static const long asn_VAL_19_testMessage03 = 243; +static const long asn_VAL_20_testMessage04 = 244; +static const long asn_VAL_21_testMessage05 = 245; +static const long asn_VAL_22_testMessage06 = 246; +static const long asn_VAL_23_testMessage07 = 247; +static const long asn_VAL_24_testMessage08 = 248; +static const long asn_VAL_25_testMessage09 = 249; +static const long asn_VAL_26_testMessage10 = 250; +static const long asn_VAL_27_testMessage11 = 251; +static const long asn_VAL_28_testMessage12 = 252; +static const long asn_VAL_29_testMessage13 = 253; +static const long asn_VAL_30_testMessage14 = 254; +static const long asn_VAL_31_testMessage15 = 255; +static const long asn_VAL_32_sensorDataSharingMessage = 41; +static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_2_mapData }, + { "&Type", aioc__type, &asn_DEF_MapData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_3_signalPhaseAndTimingMessage }, + { "&Type", aioc__type, &asn_DEF_SPAT }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_4_commonSafetyRequest }, + { "&Type", aioc__type, &asn_DEF_CommonSafetyRequest }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_5_emergencyVehicleAlert }, + { "&Type", aioc__type, &asn_DEF_EmergencyVehicleAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_6_intersectionCollision }, + { "&Type", aioc__type, &asn_DEF_IntersectionCollision }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_7_nmeaCorrections }, + { "&Type", aioc__type, &asn_DEF_NMEAcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_8_probeDataManagement }, + { "&Type", aioc__type, &asn_DEF_ProbeDataManagement }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_9_probeVehicleData }, + { "&Type", aioc__type, &asn_DEF_ProbeVehicleData }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_10_roadSideAlert }, + { "&Type", aioc__type, &asn_DEF_RoadSideAlert }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_11_rtcmCorrections }, + { "&Type", aioc__type, &asn_DEF_RTCMcorrections }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_12_signalRequestMessage }, + { "&Type", aioc__type, &asn_DEF_SignalRequestMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_13_signalStatusMessage }, + { "&Type", aioc__type, &asn_DEF_SignalStatusMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_14_travelerInformation }, + { "&Type", aioc__type, &asn_DEF_TravelerInformation }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_15_personalSafetyMessage }, + { "&Type", aioc__type, &asn_DEF_PersonalSafetyMessage }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_16_testMessage00 }, + { "&Type", aioc__type, &asn_DEF_TestMessage00 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_17_testMessage01 }, + { "&Type", aioc__type, &asn_DEF_TestMessage01 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_18_testMessage02 }, + { "&Type", aioc__type, &asn_DEF_TestMessage02 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_19_testMessage03 }, + { "&Type", aioc__type, &asn_DEF_TestMessage03 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_20_testMessage04 }, + { "&Type", aioc__type, &asn_DEF_TestMessage04 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_21_testMessage05 }, + { "&Type", aioc__type, &asn_DEF_TestMessage05 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_22_testMessage06 }, + { "&Type", aioc__type, &asn_DEF_TestMessage06 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_23_testMessage07 }, + { "&Type", aioc__type, &asn_DEF_TestMessage07 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_24_testMessage08 }, + { "&Type", aioc__type, &asn_DEF_TestMessage08 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_25_testMessage09 }, + { "&Type", aioc__type, &asn_DEF_TestMessage09 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_26_testMessage10 }, + { "&Type", aioc__type, &asn_DEF_TestMessage10 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_27_testMessage11 }, + { "&Type", aioc__type, &asn_DEF_TestMessage11 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_28_testMessage12 }, + { "&Type", aioc__type, &asn_DEF_TestMessage12 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_29_testMessage13 }, + { "&Type", aioc__type, &asn_DEF_TestMessage13 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, + { "&Type", aioc__type, &asn_DEF_TestMessage14 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, + { "&Type", aioc__type, &asn_DEF_TestMessage15 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_32_sensorDataSharingMessage }, + { "&Type", aioc__type, &asn_DEF_SensorDataSharingMessage } +}; +static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { + 32, 2, asn_IOS_MessageTypes_1_rows +}; +static int +memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_MessageTypes_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct MessageFrame, messageId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_oer_constraints_t asn_OER_memb_messageId_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_messageId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct value, choice.BasicSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "BasicSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.MapData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MapData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "MapData" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.SPAT), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SPAT, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "SPAT" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.CommonSafetyRequest), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CommonSafetyRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CommonSafetyRequest" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.EmergencyVehicleAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EmergencyVehicleAlert, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "EmergencyVehicleAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.IntersectionCollision), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_IntersectionCollision, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "IntersectionCollision" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.NMEAcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NMEAcorrections, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "NMEAcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.ProbeDataManagement), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeDataManagement, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ProbeDataManagement" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.ProbeVehicleData), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProbeVehicleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ProbeVehicleData" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.RoadSideAlert), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSideAlert, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RoadSideAlert" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.RTCMcorrections), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RTCMcorrections, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RTCMcorrections" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.SignalRequestMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "SignalRequestMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.SignalStatusMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "SignalStatusMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TravelerInformation), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerInformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TravelerInformation" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.PersonalSafetyMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PersonalSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "PersonalSafetyMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage00), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage00, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage00" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage01), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage01, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage01" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage02), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage02, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage02" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage03), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage03, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage03" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage04), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage04, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage04" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage05), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage05, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage05" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage06), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage06, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage06" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage07), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage07, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage07" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage08), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage08, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage08" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage09), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage09, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage09" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage10), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage10" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage11), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage11, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage11" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage12), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage12" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage13), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage13, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage13" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage14), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage14" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.TestMessage15), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TestMessage15, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TestMessage15" + }, + { ATF_NOFLAGS, 0, offsetof(struct value, choice.SensorDataSharingMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SensorDataSharingMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "SensorDataSharingMessage" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 31 }, /* BasicSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 30 }, /* MapData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 29 }, /* SPAT */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 28 }, /* CommonSafetyRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 27 }, /* EmergencyVehicleAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 26 }, /* IntersectionCollision */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 25 }, /* NMEAcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 24 }, /* ProbeDataManagement */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 23 }, /* ProbeVehicleData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 22 }, /* RoadSideAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 21 }, /* RTCMcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 20 }, /* SignalRequestMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 19 }, /* SignalStatusMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 18 }, /* TravelerInformation */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 17 }, /* PersonalSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 16 }, /* TestMessage00 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 15 }, /* TestMessage01 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 14 }, /* TestMessage02 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 13 }, /* TestMessage03 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 12 }, /* TestMessage04 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 11 }, /* TestMessage05 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 10 }, /* TestMessage06 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 9 }, /* TestMessage07 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 8 }, /* TestMessage08 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 7 }, /* TestMessage09 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 6 }, /* TestMessage10 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 5 }, /* TestMessage11 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 4 }, /* TestMessage12 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 3 }, /* TestMessage13 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 2 }, /* TestMessage14 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 1 }, /* TestMessage15 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 31, -31, 0 } /* SensorDataSharingMessage */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { + sizeof(struct value), + offsetof(struct value, _asn_ctx), + offsetof(struct value, present), + sizeof(((struct value *)0)->present), + asn_MAP_value_tag2el_3, + 32, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_3 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_3, + 32, /* Elements count */ + &asn_SPC_value_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_MessageFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame, messageId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRCmsgID, + 0, + { &asn_OER_memb_messageId_constr_2, &asn_PER_memb_messageId_constr_2, memb_messageId_constraint_1 }, + 0, 0, /* No default value */ + "messageId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct MessageFrame, value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_3, + select_value_type, + { &asn_OER_memb_value_constr_3, &asn_PER_memb_value_constr_3, memb_value_constraint_1 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_MessageFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* value */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MessageFrame_specs_1 = { + sizeof(struct MessageFrame), + offsetof(struct MessageFrame, _asn_ctx), + asn_MAP_MessageFrame_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageFrame = { + "MessageFrame", + "MessageFrame", + &asn_OP_SEQUENCE, + asn_DEF_MessageFrame_tags_1, + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + asn_DEF_MessageFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageFrame_tags_1) + /sizeof(asn_DEF_MessageFrame_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MessageFrame_1, + 2, /* Elements count */ + &asn_SPC_MessageFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c b/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c new file mode 100644 index 000000000..e7ecaf7c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MinTimetoChange.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MinTimetoChange.h" + +int +MinTimetoChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2402)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..2402) */, + -1}; +asn_per_constraints_t asn_PER_type_MinTimetoChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 2402 } /* (0..2402) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MinTimetoChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinTimetoChange = { + "MinTimetoChange", + "MinTimetoChange", + &asn_OP_NativeInteger, + asn_DEF_MinTimetoChange_tags_1, + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + asn_DEF_MinTimetoChange_tags_1, /* Same as above */ + sizeof(asn_DEF_MinTimetoChange_tags_1) + /sizeof(asn_DEF_MinTimetoChange_tags_1[0]), /* 1 */ + { &asn_OER_type_MinTimetoChange_constr_1, &asn_PER_type_MinTimetoChange_constr_1, MinTimetoChange_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Minute.c b/src/tmx/Asn_J2735/src/r63/Minute.c new file mode 100644 index 000000000..10db11bdc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Minute.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Minute.h" + +int +Minute_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Minute_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_Minute_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Minute_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Minute = { + "Minute", + "Minute", + &asn_OP_NativeInteger, + asn_DEF_Minute_tags_1, + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + asn_DEF_Minute_tags_1, /* Same as above */ + sizeof(asn_DEF_Minute_tags_1) + /sizeof(asn_DEF_Minute_tags_1[0]), /* 1 */ + { &asn_OER_type_Minute_constr_1, &asn_PER_type_Minute_constr_1, Minute_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c b/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c new file mode 100644 index 000000000..cde423870 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MinuteOfTheYear.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MinuteOfTheYear.h" + +int +MinuteOfTheYear_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 527040)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..527040) */, + -1}; +asn_per_constraints_t asn_PER_type_MinuteOfTheYear_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 20, -1, 0, 527040 } /* (0..527040) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MinuteOfTheYear_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinuteOfTheYear = { + "MinuteOfTheYear", + "MinuteOfTheYear", + &asn_OP_NativeInteger, + asn_DEF_MinuteOfTheYear_tags_1, + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + asn_DEF_MinuteOfTheYear_tags_1, /* Same as above */ + sizeof(asn_DEF_MinuteOfTheYear_tags_1) + /sizeof(asn_DEF_MinuteOfTheYear_tags_1[0]), /* 1 */ + { &asn_OER_type_MinuteOfTheYear_constr_1, &asn_PER_type_MinuteOfTheYear_constr_1, MinuteOfTheYear_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MinutesAngle.c b/src/tmx/Asn_J2735/src/r63/MinutesAngle.c new file mode 100644 index 000000000..19d447fc1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MinutesAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MinutesAngle.h" + +int +MinutesAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 59)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..59) */, + -1}; +asn_per_constraints_t asn_PER_type_MinutesAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 59 } /* (0..59) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MinutesAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesAngle = { + "MinutesAngle", + "MinutesAngle", + &asn_OP_NativeInteger, + asn_DEF_MinutesAngle_tags_1, + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + asn_DEF_MinutesAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesAngle_tags_1) + /sizeof(asn_DEF_MinutesAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_MinutesAngle_constr_1, &asn_PER_type_MinutesAngle_constr_1, MinutesAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MinutesDuration.c b/src/tmx/Asn_J2735/src/r63/MinutesDuration.c new file mode 100644 index 000000000..2debd988a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MinutesDuration.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MinutesDuration.h" + +int +MinutesDuration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32000) */, + -1}; +asn_per_constraints_t asn_PER_type_MinutesDuration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32000 } /* (0..32000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MinutesDuration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MinutesDuration = { + "MinutesDuration", + "MinutesDuration", + &asn_OP_NativeInteger, + asn_DEF_MinutesDuration_tags_1, + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + asn_DEF_MinutesDuration_tags_1, /* Same as above */ + sizeof(asn_DEF_MinutesDuration_tags_1) + /sizeof(asn_DEF_MinutesDuration_tags_1[0]), /* 1 */ + { &asn_OER_type_MinutesDuration_constr_1, &asn_PER_type_MinutesDuration_constr_1, MinutesDuration_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c b/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c new file mode 100644 index 000000000..740cd9403 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityDynamicID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityDynamicID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityDynamicID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 8) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_MobilityDynamicID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityDynamicID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityDynamicID = { + "MobilityDynamicID", + "MobilityDynamicID", + &asn_OP_IA5String, + asn_DEF_MobilityDynamicID_tags_1, + sizeof(asn_DEF_MobilityDynamicID_tags_1) + /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ + asn_DEF_MobilityDynamicID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityDynamicID_tags_1) + /sizeof(asn_DEF_MobilityDynamicID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityDynamicID_constr_1, &asn_PER_type_MobilityDynamicID_constr_1, MobilityDynamicID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c new file mode 100644 index 000000000..0ccbbe2e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityECEFCoordinate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFCoordinate.h" + +int +MobilityECEFCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -638363700 && value <= 638363700)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-638363700..638363700) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityECEFCoordinate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 31, -1, -638363700, 638363700 } /* (-638363700..638363700) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFCoordinate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFCoordinate = { + "MobilityECEFCoordinate", + "MobilityECEFCoordinate", + &asn_OP_NativeInteger, + asn_DEF_MobilityECEFCoordinate_tags_1, + sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFCoordinate_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFCoordinate_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityECEFCoordinate_constr_1, &asn_PER_type_MobilityECEFCoordinate_constr_1, MobilityECEFCoordinate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c new file mode 100644 index 000000000..3f2f36cc0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffset.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFOffset.h" + +asn_TYPE_member_t asn_MBR_MobilityECEFOffset_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetY" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityECEFOffset, offsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFOffsetCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetZ" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityECEFOffset_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityECEFOffset_specs_1 = { + sizeof(struct MobilityECEFOffset), + offsetof(struct MobilityECEFOffset, _asn_ctx), + asn_MAP_MobilityECEFOffset_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffset = { + "MobilityECEFOffset", + "MobilityECEFOffset", + &asn_OP_SEQUENCE, + asn_DEF_MobilityECEFOffset_tags_1, + sizeof(asn_DEF_MobilityECEFOffset_tags_1) + /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFOffset_tags_1) + /sizeof(asn_DEF_MobilityECEFOffset_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityECEFOffset_1, + 3, /* Elements count */ + &asn_SPC_MobilityECEFOffset_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c new file mode 100644 index 000000000..0e2b37baf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityECEFOffsetCoordinate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityECEFOffsetCoordinate.h" + +int +MobilityECEFOffsetCoordinate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -500 && value <= 501)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-500..501) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityECEFOffsetCoordinate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -500, 501 } /* (-500..501) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityECEFOffsetCoordinate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityECEFOffsetCoordinate = { + "MobilityECEFOffsetCoordinate", + "MobilityECEFOffsetCoordinate", + &asn_OP_NativeInteger, + asn_DEF_MobilityECEFOffsetCoordinate_tags_1, + sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ + asn_DEF_MobilityECEFOffsetCoordinate_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1) + /sizeof(asn_DEF_MobilityECEFOffsetCoordinate_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityECEFOffsetCoordinate_constr_1, &asn_PER_type_MobilityECEFOffsetCoordinate_constr_1, MobilityECEFOffsetCoordinate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityGUID.c b/src/tmx/Asn_J2735/src/r63/MobilityGUID.c new file mode 100644 index 000000000..8cac1275f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityGUID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityGUID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityGUID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 36) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityGUID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 36 /* (SIZE(36..36)) */}; +asn_per_constraints_t asn_PER_type_MobilityGUID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 36, 36 } /* (SIZE(36..36)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityGUID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityGUID = { + "MobilityGUID", + "MobilityGUID", + &asn_OP_IA5String, + asn_DEF_MobilityGUID_tags_1, + sizeof(asn_DEF_MobilityGUID_tags_1) + /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ + asn_DEF_MobilityGUID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityGUID_tags_1) + /sizeof(asn_DEF_MobilityGUID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityGUID_constr_1, &asn_PER_type_MobilityGUID_constr_1, MobilityGUID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityHeader.c b/src/tmx/Asn_J2735/src/r63/MobilityHeader.c new file mode 100644 index 000000000..b7c8d550c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityHeader.c @@ -0,0 +1,90 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityHeader.h" + +asn_TYPE_member_t asn_MBR_MobilityHeader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostStaticId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStaticID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hostStaticId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, targetStaticId), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStaticID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "targetStaticId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, hostBSMId), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityDynamicID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hostBSMId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, planId), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityGUID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "planId" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityHeader, timestamp), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timestamp" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityHeader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityHeader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* hostStaticId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* targetStaticId */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* hostBSMId */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* planId */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* timestamp */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityHeader_specs_1 = { + sizeof(struct MobilityHeader), + offsetof(struct MobilityHeader, _asn_ctx), + asn_MAP_MobilityHeader_tag2el_1, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityHeader = { + "MobilityHeader", + "MobilityHeader", + &asn_OP_SEQUENCE, + asn_DEF_MobilityHeader_tags_1, + sizeof(asn_DEF_MobilityHeader_tags_1) + /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ + asn_DEF_MobilityHeader_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityHeader_tags_1) + /sizeof(asn_DEF_MobilityHeader_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityHeader_1, + 5, /* Elements count */ + &asn_SPC_MobilityHeader_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityLocation.c b/src/tmx/Asn_J2735/src/r63/MobilityLocation.c new file mode 100644 index 000000000..e967c0d3a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityLocation.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityLocation.h" + +asn_TYPE_member_t asn_MBR_MobilityLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefX" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefY" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, ecefZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityECEFCoordinate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ecefZ" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityLocation, timestamp), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timestamp" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ecefX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ecefY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ecefZ */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* timestamp */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityLocation_specs_1 = { + sizeof(struct MobilityLocation), + offsetof(struct MobilityLocation, _asn_ctx), + asn_MAP_MobilityLocation_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityLocation = { + "MobilityLocation", + "MobilityLocation", + &asn_OP_SEQUENCE, + asn_DEF_MobilityLocation_tags_1, + sizeof(asn_DEF_MobilityLocation_tags_1) + /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ + asn_DEF_MobilityLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityLocation_tags_1) + /sizeof(asn_DEF_MobilityLocation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityLocation_1, + 4, /* Elements count */ + &asn_SPC_MobilityLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c b/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c new file mode 100644 index 000000000..336af15ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityLocationOffsets.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityLocationOffsets.h" + +static asn_oer_constraints_t asn_OER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..60)) */}; +asn_per_constraints_t asn_PER_type_MobilityLocationOffsets_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (SIZE(0..60)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_MobilityLocationOffsets_1[] = { + { ATF_NOFLAGS, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MobilityECEFOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityLocationOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MobilityLocationOffsets_specs_1 = { + sizeof(struct MobilityLocationOffsets), + offsetof(struct MobilityLocationOffsets, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityLocationOffsets = { + "MobilityLocationOffsets", + "MobilityLocationOffsets", + &asn_OP_SEQUENCE_OF, + asn_DEF_MobilityLocationOffsets_tags_1, + sizeof(asn_DEF_MobilityLocationOffsets_tags_1) + /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ + asn_DEF_MobilityLocationOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityLocationOffsets_tags_1) + /sizeof(asn_DEF_MobilityLocationOffsets_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityLocationOffsets_constr_1, &asn_PER_type_MobilityLocationOffsets_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_MobilityLocationOffsets_1, + 1, /* Single element */ + &asn_SPC_MobilityLocationOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityOperation.c b/src/tmx/Asn_J2735/src/r63/MobilityOperation.c new file mode 100644 index 000000000..bccd960cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityOperation.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityOperation.h" + +asn_TYPE_member_t asn_MBR_MobilityOperation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, strategy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStrategy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategy" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityOperation, operationParams), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityParameters, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "operationParams" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityOperation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityOperation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* operationParams */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityOperation_specs_1 = { + sizeof(struct MobilityOperation), + offsetof(struct MobilityOperation, _asn_ctx), + asn_MAP_MobilityOperation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityOperation = { + "MobilityOperation", + "MobilityOperation", + &asn_OP_SEQUENCE, + asn_DEF_MobilityOperation_tags_1, + sizeof(asn_DEF_MobilityOperation_tags_1) + /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ + asn_DEF_MobilityOperation_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityOperation_tags_1) + /sizeof(asn_DEF_MobilityOperation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityOperation_1, + 2, /* Elements count */ + &asn_SPC_MobilityOperation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityParameters.c b/src/tmx/Asn_J2735/src/r63/MobilityParameters.c new file mode 100644 index 000000000..ca4cd5d13 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityParameters.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityParameters.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityParameters_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 1000) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityParameters_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..1000)) */}; +asn_per_constraints_t asn_PER_type_MobilityParameters_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 10, 10, 2, 1000 } /* (SIZE(2..1000)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityParameters_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityParameters = { + "MobilityParameters", + "MobilityParameters", + &asn_OP_IA5String, + asn_DEF_MobilityParameters_tags_1, + sizeof(asn_DEF_MobilityParameters_tags_1) + /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ + asn_DEF_MobilityParameters_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityParameters_tags_1) + /sizeof(asn_DEF_MobilityParameters_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityParameters_constr_1, &asn_PER_type_MobilityParameters_constr_1, MobilityParameters_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityPath.c b/src/tmx/Asn_J2735/src/r63/MobilityPath.c new file mode 100644 index 000000000..92134c978 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityPath.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityPath.h" + +asn_TYPE_member_t asn_MBR_MobilityPath_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityPath, trajectory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocationOffsets, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectory" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityPath_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityPath_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* trajectory */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityPath_specs_1 = { + sizeof(struct MobilityPath), + offsetof(struct MobilityPath, _asn_ctx), + asn_MAP_MobilityPath_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityPath = { + "MobilityPath", + "MobilityPath", + &asn_OP_SEQUENCE, + asn_DEF_MobilityPath_tags_1, + sizeof(asn_DEF_MobilityPath_tags_1) + /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ + asn_DEF_MobilityPath_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityPath_tags_1) + /sizeof(asn_DEF_MobilityPath_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityPath_1, + 2, /* Elements count */ + &asn_SPC_MobilityPath_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c b/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c new file mode 100644 index 000000000..f275b2807 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityPlanType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityPlanType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityPlanType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MobilityPlanType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MobilityPlanType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 22, "changingLanesToTheLeft" }, + { 2, 23, "changingLanesToTheRight" }, + { 3, 17, "joinPlatoonAtRear" }, + { 4, 19, "platoonFollowerJoin" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MobilityPlanType_enum2value_1[] = { + 1, /* changingLanesToTheLeft(1) */ + 2, /* changingLanesToTheRight(2) */ + 3, /* joinPlatoonAtRear(3) */ + 4, /* platoonFollowerJoin(4) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MobilityPlanType_specs_1 = { + asn_MAP_MobilityPlanType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MobilityPlanType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MobilityPlanType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityPlanType = { + "MobilityPlanType", + "MobilityPlanType", + &asn_OP_NativeEnumerated, + asn_DEF_MobilityPlanType_tags_1, + sizeof(asn_DEF_MobilityPlanType_tags_1) + /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ + asn_DEF_MobilityPlanType_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityPlanType_tags_1) + /sizeof(asn_DEF_MobilityPlanType_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityPlanType_constr_1, &asn_PER_type_MobilityPlanType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MobilityPlanType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityRequest.c b/src/tmx/Asn_J2735/src/r63/MobilityRequest.c new file mode 100644 index 000000000..987679861 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityRequest.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityRequest.h" + +asn_TYPE_member_t asn_MBR_MobilityRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityStrategy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategy" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, planType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityPlanType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "planType" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, urgency), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityUrgency, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "urgency" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, location), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, strategyParams), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityParameters, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "strategyParams" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectoryStart), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectoryStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, trajectory), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityLocationOffsets, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trajectory" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityRequest, expiration), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityTimestamp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "expiration" + }, +}; +static const int asn_MAP_MobilityRequest_oms_1[] = { 5, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_MobilityRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* strategy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* planType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* urgency */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* strategyParams */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* trajectoryStart */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* trajectory */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* expiration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityRequest_specs_1 = { + sizeof(struct MobilityRequest), + offsetof(struct MobilityRequest, _asn_ctx), + asn_MAP_MobilityRequest_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_MobilityRequest_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityRequest = { + "MobilityRequest", + "MobilityRequest", + &asn_OP_SEQUENCE, + asn_DEF_MobilityRequest_tags_1, + sizeof(asn_DEF_MobilityRequest_tags_1) + /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ + asn_DEF_MobilityRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityRequest_tags_1) + /sizeof(asn_DEF_MobilityRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityRequest_1, + 8, /* Elements count */ + &asn_SPC_MobilityRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityResponse.c b/src/tmx/Asn_J2735/src/r63/MobilityResponse.c new file mode 100644 index 000000000..d6335ccbc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityResponse.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityResponse.h" + +asn_TYPE_member_t asn_MBR_MobilityResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, urgency), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityUrgency, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "urgency" + }, + { ATF_NOFLAGS, 0, offsetof(struct MobilityResponse, isAccepted), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityResponseFlag, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "isAccepted" + }, +}; +static const ber_tlv_tag_t asn_DEF_MobilityResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MobilityResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* urgency */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* isAccepted */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MobilityResponse_specs_1 = { + sizeof(struct MobilityResponse), + offsetof(struct MobilityResponse, _asn_ctx), + asn_MAP_MobilityResponse_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MobilityResponse = { + "MobilityResponse", + "MobilityResponse", + &asn_OP_SEQUENCE, + asn_DEF_MobilityResponse_tags_1, + sizeof(asn_DEF_MobilityResponse_tags_1) + /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ + asn_DEF_MobilityResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityResponse_tags_1) + /sizeof(asn_DEF_MobilityResponse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MobilityResponse_1, + 2, /* Elements count */ + &asn_SPC_MobilityResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c b/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c new file mode 100644 index 000000000..b43d1876d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityResponseFlag.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityResponseFlag.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_MobilityResponseFlag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityResponseFlag = { + "MobilityResponseFlag", + "MobilityResponseFlag", + &asn_OP_BOOLEAN, + asn_DEF_MobilityResponseFlag_tags_1, + sizeof(asn_DEF_MobilityResponseFlag_tags_1) + /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ + asn_DEF_MobilityResponseFlag_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityResponseFlag_tags_1) + /sizeof(asn_DEF_MobilityResponseFlag_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c b/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c new file mode 100644 index 000000000..792fc2807 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityStaticID.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityStaticID.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityStaticID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 16) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityStaticID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..16)) */}; +asn_per_constraints_t asn_PER_type_MobilityStaticID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 2, 16 } /* (SIZE(2..16)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityStaticID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityStaticID = { + "MobilityStaticID", + "MobilityStaticID", + &asn_OP_IA5String, + asn_DEF_MobilityStaticID_tags_1, + sizeof(asn_DEF_MobilityStaticID_tags_1) + /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ + asn_DEF_MobilityStaticID_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityStaticID_tags_1) + /sizeof(asn_DEF_MobilityStaticID_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityStaticID_constr_1, &asn_PER_type_MobilityStaticID_constr_1, MobilityStaticID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c b/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c new file mode 100644 index 000000000..419539af0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityStrategy.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityStrategy.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityStrategy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 2 && size <= 50) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityStrategy_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..50)) */}; +asn_per_constraints_t asn_PER_type_MobilityStrategy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 2, 50 } /* (SIZE(2..50)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityStrategy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityStrategy = { + "MobilityStrategy", + "MobilityStrategy", + &asn_OP_IA5String, + asn_DEF_MobilityStrategy_tags_1, + sizeof(asn_DEF_MobilityStrategy_tags_1) + /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ + asn_DEF_MobilityStrategy_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityStrategy_tags_1) + /sizeof(asn_DEF_MobilityStrategy_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityStrategy_constr_1, &asn_PER_type_MobilityStrategy_constr_1, MobilityStrategy_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c b/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c new file mode 100644 index 000000000..c95dd6d6b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityTimestamp.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityTimestamp.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +MobilityTimestamp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 19) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { + { 0, 0 }, + 19 /* (SIZE(19..19)) */}; +asn_per_constraints_t asn_PER_type_MobilityTimestamp_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 0, 0, 19, 19 } /* (SIZE(19..19)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityTimestamp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityTimestamp = { + "MobilityTimestamp", + "MobilityTimestamp", + &asn_OP_IA5String, + asn_DEF_MobilityTimestamp_tags_1, + sizeof(asn_DEF_MobilityTimestamp_tags_1) + /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ + asn_DEF_MobilityTimestamp_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityTimestamp_tags_1) + /sizeof(asn_DEF_MobilityTimestamp_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityTimestamp_constr_1, &asn_PER_type_MobilityTimestamp_constr_1, MobilityTimestamp_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c b/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c new file mode 100644 index 000000000..a85d87e4a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MobilityUrgency.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "MobilityUrgency.h" + +int +MobilityUrgency_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MobilityUrgency_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +asn_per_constraints_t asn_PER_type_MobilityUrgency_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MobilityUrgency_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MobilityUrgency = { + "MobilityUrgency", + "MobilityUrgency", + &asn_OP_NativeInteger, + asn_DEF_MobilityUrgency_tags_1, + sizeof(asn_DEF_MobilityUrgency_tags_1) + /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ + asn_DEF_MobilityUrgency_tags_1, /* Same as above */ + sizeof(asn_DEF_MobilityUrgency_tags_1) + /sizeof(asn_DEF_MobilityUrgency_tags_1[0]), /* 1 */ + { &asn_OER_type_MobilityUrgency_constr_1, &asn_PER_type_MobilityUrgency_constr_1, MobilityUrgency_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Month.c b/src/tmx/Asn_J2735/src/r63/Month.c new file mode 100644 index 000000000..55b6962e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Month.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Month.h" + +int +Month_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Month_constr_1 CC_NOTUSED = { + { 1, 1 } /* (1..255) */, + -1}; +asn_per_constraints_t asn_PER_type_Month_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (1..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Month_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Month = { + "Month", + "Month", + &asn_OP_NativeInteger, + asn_DEF_Month_tags_1, + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + asn_DEF_Month_tags_1, /* Same as above */ + sizeof(asn_DEF_Month_tags_1) + /sizeof(asn_DEF_Month_tags_1[0]), /* 1 */ + { &asn_OER_type_Month_constr_1, &asn_PER_type_Month_constr_1, Month_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c b/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c new file mode 100644 index 000000000..00c773404 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MotorizedPropelledType.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MotorizedPropelledType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MotorizedPropelledType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MotorizedPropelledType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 10, "otherTypes" }, + { 2, 10, "wheelChair" }, + { 3, 7, "bicycle" }, + { 4, 7, "scooter" }, + { 5, 19, "selfBalancingDevice" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_MotorizedPropelledType_enum2value_1[] = { + 3, /* bicycle(3) */ + 1, /* otherTypes(1) */ + 4, /* scooter(4) */ + 5, /* selfBalancingDevice(5) */ + 0, /* unavailable(0) */ + 2 /* wheelChair(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_MotorizedPropelledType_specs_1 = { + asn_MAP_MotorizedPropelledType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MotorizedPropelledType_enum2value_1, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MotorizedPropelledType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MotorizedPropelledType = { + "MotorizedPropelledType", + "MotorizedPropelledType", + &asn_OP_NativeEnumerated, + asn_DEF_MotorizedPropelledType_tags_1, + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + asn_DEF_MotorizedPropelledType_tags_1, /* Same as above */ + sizeof(asn_DEF_MotorizedPropelledType_tags_1) + /sizeof(asn_DEF_MotorizedPropelledType_tags_1[0]), /* 1 */ + { &asn_OER_type_MotorizedPropelledType_constr_1, &asn_PER_type_MotorizedPropelledType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MotorizedPropelledType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c b/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c new file mode 100644 index 000000000..4cab10dea --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementEvent-addGrpB.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementEvent-addGrpB.h" + +static asn_TYPE_member_t asn_MBR_MovementEvent_addGrpB_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent_addGrpB, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinTimetoChange, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct MovementEvent_addGrpB, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MaxTimetoChange, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent_addGrpB, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent_addGrpB, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent_addGrpB, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeRemaining, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_MovementEvent_addGrpB_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_addGrpB_specs_1 = { + sizeof(struct MovementEvent_addGrpB), + offsetof(struct MovementEvent_addGrpB, _asn_ctx), + asn_MAP_MovementEvent_addGrpB_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_MovementEvent_addGrpB_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent_addGrpB = { + "MovementEvent-addGrpB", + "MovementEvent-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_addGrpB_tags_1, + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_addGrpB_tags_1) + /sizeof(asn_DEF_MovementEvent_addGrpB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MovementEvent_addGrpB_1, + 6, /* Elements count */ + &asn_SPC_MovementEvent_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementEvent.c b/src/tmx/Asn_J2735/src/r63/MovementEvent.c new file mode 100644 index 000000000..a1737abee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementEvent.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementEvent.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct MovementEvent__regional), + offsetof(struct MovementEvent__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementEvent_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MovementEvent, eventState), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementPhaseState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventState" + }, + { ATF_POINTER, 3, offsetof(struct MovementEvent, timing), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeChangeDetails, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timing" + }, + { ATF_POINTER, 2, offsetof(struct MovementEvent, speeds), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AdvisorySpeedList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speeds" + }, + { ATF_POINTER, 1, offsetof(struct MovementEvent, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementEvent_oms_1[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_MovementEvent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementEvent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventState */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timing */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speeds */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementEvent_specs_1 = { + sizeof(struct MovementEvent), + offsetof(struct MovementEvent, _asn_ctx), + asn_MAP_MovementEvent_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_MovementEvent_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEvent = { + "MovementEvent", + "MovementEvent", + &asn_OP_SEQUENCE, + asn_DEF_MovementEvent_tags_1, + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + asn_DEF_MovementEvent_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEvent_tags_1) + /sizeof(asn_DEF_MovementEvent_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MovementEvent_1, + 4, /* Elements count */ + &asn_SPC_MovementEvent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementEventList.c b/src/tmx/Asn_J2735/src/r63/MovementEventList.c new file mode 100644 index 000000000..66f78a113 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementEventList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementEventList.h" + +static asn_oer_constraints_t asn_OER_type_MovementEventList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_MovementEventList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_MovementEventList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementEvent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementEventList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementEventList_specs_1 = { + sizeof(struct MovementEventList), + offsetof(struct MovementEventList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementEventList = { + "MovementEventList", + "MovementEventList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementEventList_tags_1, + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + asn_DEF_MovementEventList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementEventList_tags_1) + /sizeof(asn_DEF_MovementEventList_tags_1[0]), /* 1 */ + { &asn_OER_type_MovementEventList_constr_1, &asn_PER_type_MovementEventList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_MovementEventList_1, + 1, /* Single element */ + &asn_SPC_MovementEventList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementList.c b/src/tmx/Asn_J2735/src/r63/MovementList.c new file mode 100644 index 000000000..996762004 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementList.h" + +static asn_oer_constraints_t asn_OER_type_MovementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +asn_per_constraints_t asn_PER_type_MovementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_MovementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_MovementState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_MovementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_MovementList_specs_1 = { + sizeof(struct MovementList), + offsetof(struct MovementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementList = { + "MovementList", + "MovementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_MovementList_tags_1, + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + asn_DEF_MovementList_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementList_tags_1) + /sizeof(asn_DEF_MovementList_tags_1[0]), /* 1 */ + { &asn_OER_type_MovementList_constr_1, &asn_PER_type_MovementList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_MovementList_1, + 1, /* Single element */ + &asn_SPC_MovementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c b/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c new file mode 100644 index 000000000..ead87b580 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementPhaseState.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementPhaseState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MovementPhaseState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MovementPhaseState_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 4, "dark" }, + { 2, 17, "stop-Then-Proceed" }, + { 3, 15, "stop-And-Remain" }, + { 4, 12, "pre-Movement" }, + { 5, 27, "permissive-Movement-Allowed" }, + { 6, 26, "protected-Movement-Allowed" }, + { 7, 20, "permissive-clearance" }, + { 8, 19, "protected-clearance" }, + { 9, 27, "caution-Conflicting-Traffic" } +}; +static const unsigned int asn_MAP_MovementPhaseState_enum2value_1[] = { + 9, /* caution-Conflicting-Traffic(9) */ + 1, /* dark(1) */ + 5, /* permissive-Movement-Allowed(5) */ + 7, /* permissive-clearance(7) */ + 4, /* pre-Movement(4) */ + 6, /* protected-Movement-Allowed(6) */ + 8, /* protected-clearance(8) */ + 3, /* stop-And-Remain(3) */ + 2, /* stop-Then-Proceed(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MovementPhaseState_specs_1 = { + asn_MAP_MovementPhaseState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MovementPhaseState_enum2value_1, /* N => "tag"; sorted by N */ + 10, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MovementPhaseState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MovementPhaseState = { + "MovementPhaseState", + "MovementPhaseState", + &asn_OP_NativeEnumerated, + asn_DEF_MovementPhaseState_tags_1, + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + asn_DEF_MovementPhaseState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementPhaseState_tags_1) + /sizeof(asn_DEF_MovementPhaseState_tags_1[0]), /* 1 */ + { &asn_OER_type_MovementPhaseState_constr_1, &asn_PER_type_MovementPhaseState_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MovementPhaseState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MovementState.c b/src/tmx/Asn_J2735/src/r63/MovementState.c new file mode 100644 index 000000000..cee088350 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MovementState.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MovementState.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct MovementState__regional), + offsetof(struct MovementState__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_MovementState_1[] = { + { ATF_POINTER, 1, offsetof(struct MovementState, movementName), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "movementName" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "signalGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct MovementState, state_time_speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MovementEventList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "state-time-speed" + }, + { ATF_POINTER, 2, offsetof(struct MovementState, maneuverAssistList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ManeuverAssistList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maneuverAssistList" + }, + { ATF_POINTER, 1, offsetof(struct MovementState, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_MovementState_oms_1[] = { 0, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_MovementState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MovementState_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* movementName */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* signalGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* state-time-speed */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maneuverAssistList */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MovementState_specs_1 = { + sizeof(struct MovementState), + offsetof(struct MovementState, _asn_ctx), + asn_MAP_MovementState_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_MovementState_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MovementState = { + "MovementState", + "MovementState", + &asn_OP_SEQUENCE, + asn_DEF_MovementState_tags_1, + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + asn_DEF_MovementState_tags_1, /* Same as above */ + sizeof(asn_DEF_MovementState_tags_1) + /sizeof(asn_DEF_MovementState_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MovementState_1, + 5, /* Elements count */ + &asn_SPC_MovementState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MsgCRC.c b/src/tmx/Asn_J2735/src/r63/MsgCRC.c new file mode 100644 index 000000000..e02ab7288 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MsgCRC.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MsgCRC.h" + +int +MsgCRC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MsgCRC_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +asn_per_constraints_t asn_PER_type_MsgCRC_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MsgCRC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MsgCRC = { + "MsgCRC", + "MsgCRC", + &asn_OP_OCTET_STRING, + asn_DEF_MsgCRC_tags_1, + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + asn_DEF_MsgCRC_tags_1, /* Same as above */ + sizeof(asn_DEF_MsgCRC_tags_1) + /sizeof(asn_DEF_MsgCRC_tags_1[0]), /* 1 */ + { &asn_OER_type_MsgCRC_constr_1, &asn_PER_type_MsgCRC_constr_1, MsgCRC_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c b/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c new file mode 100644 index 000000000..3f0e93fa0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/MultiVehicleResponse.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "MultiVehicleResponse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MultiVehicleResponse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_MultiVehicleResponse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "singleVehicle" }, + { 2, 12, "multiVehicle" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_MultiVehicleResponse_enum2value_1[] = { + 2, /* multiVehicle(2) */ + 3, /* reserved(3) */ + 1, /* singleVehicle(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_MultiVehicleResponse_specs_1 = { + asn_MAP_MultiVehicleResponse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_MultiVehicleResponse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_MultiVehicleResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MultiVehicleResponse = { + "MultiVehicleResponse", + "MultiVehicleResponse", + &asn_OP_NativeEnumerated, + asn_DEF_MultiVehicleResponse_tags_1, + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + asn_DEF_MultiVehicleResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_MultiVehicleResponse_tags_1) + /sizeof(asn_DEF_MultiVehicleResponse_tags_1[0]), /* 1 */ + { &asn_OER_type_MultiVehicleResponse_constr_1, &asn_PER_type_MultiVehicleResponse_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_MultiVehicleResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c b/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c new file mode 100644 index 000000000..89d1db075 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NMEA-MsgType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NMEA-MsgType.h" + +int +NMEA_MsgType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_NMEA_MsgType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_NMEA_MsgType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_MsgType = { + "NMEA-MsgType", + "NMEA-MsgType", + &asn_OP_NativeInteger, + asn_DEF_NMEA_MsgType_tags_1, + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + asn_DEF_NMEA_MsgType_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_MsgType_tags_1) + /sizeof(asn_DEF_NMEA_MsgType_tags_1[0]), /* 1 */ + { &asn_OER_type_NMEA_MsgType_constr_1, &asn_PER_type_NMEA_MsgType_constr_1, NMEA_MsgType_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c b/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c new file mode 100644 index 000000000..a22833248 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NMEA-Payload.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NMEA-Payload.h" + +int +NMEA_Payload_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +asn_per_constraints_t asn_PER_type_NMEA_Payload_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_NMEA_Payload_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Payload = { + "NMEA-Payload", + "NMEA-Payload", + &asn_OP_OCTET_STRING, + asn_DEF_NMEA_Payload_tags_1, + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Payload_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Payload_tags_1) + /sizeof(asn_DEF_NMEA_Payload_tags_1[0]), /* 1 */ + { &asn_OER_type_NMEA_Payload_constr_1, &asn_PER_type_NMEA_Payload_constr_1, NMEA_Payload_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c b/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c new file mode 100644 index 000000000..237e56d19 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NMEA-Revision.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NMEA-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NMEA_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NMEA_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "reserved" }, + { 2, 4, "rev1" }, + { 3, 4, "rev2" }, + { 4, 4, "rev3" }, + { 5, 4, "rev4" }, + { 6, 4, "rev5" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NMEA_Revision_enum2value_1[] = { + 1, /* reserved(1) */ + 2, /* rev1(2) */ + 3, /* rev2(3) */ + 4, /* rev3(4) */ + 5, /* rev4(5) */ + 6, /* rev5(6) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NMEA_Revision_specs_1 = { + asn_MAP_NMEA_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NMEA_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NMEA_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NMEA_Revision = { + "NMEA-Revision", + "NMEA-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_NMEA_Revision_tags_1, + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + asn_DEF_NMEA_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEA_Revision_tags_1) + /sizeof(asn_DEF_NMEA_Revision_tags_1[0]), /* 1 */ + { &asn_OER_type_NMEA_Revision_constr_1, &asn_PER_type_NMEA_Revision_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NMEA_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c b/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c new file mode 100644 index 000000000..f72c1b693 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NMEAcorrections.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NMEAcorrections.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct NMEAcorrections__regional), + offsetof(struct NMEAcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NMEAcorrections_1[] = { + { ATF_POINTER, 4, offsetof(struct NMEAcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 3, offsetof(struct NMEAcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Revision, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 2, offsetof(struct NMEAcorrections, msg), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_MsgType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msg" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, wdCount), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wdCount" + }, + { ATF_NOFLAGS, 0, offsetof(struct NMEAcorrections, payload), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NMEA_Payload, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "payload" + }, + { ATF_POINTER, 1, offsetof(struct NMEAcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NMEAcorrections_oms_1[] = { 0, 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_NMEAcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NMEAcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wdCount */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* payload */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NMEAcorrections_specs_1 = { + sizeof(struct NMEAcorrections), + offsetof(struct NMEAcorrections, _asn_ctx), + asn_MAP_NMEAcorrections_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_NMEAcorrections_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NMEAcorrections = { + "NMEAcorrections", + "NMEAcorrections", + &asn_OP_SEQUENCE, + asn_DEF_NMEAcorrections_tags_1, + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + asn_DEF_NMEAcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_NMEAcorrections_tags_1) + /sizeof(asn_DEF_NMEAcorrections_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NMEAcorrections_1, + 6, /* Elements count */ + &asn_SPC_NMEAcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NULL.c b/src/tmx/Asn_J2735/src/r63/NULL.c new file mode 100644 index 000000000..4a2914f4b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NULL.c @@ -0,0 +1,299 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include /* Implemented in terms of BOOLEAN type */ + +/* + * NULL basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NULL_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)) +}; +asn_TYPE_operation_t asn_OP_NULL = { + BOOLEAN_free, + NULL_print, + NULL_compare, + BOOLEAN_decode_ber, /* Implemented in terms of BOOLEAN */ + NULL_encode_der, /* Special handling of DER encoding */ + NULL_decode_xer, + NULL_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + NULL_decode_oer, + NULL_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + NULL_decode_uper, /* Unaligned PER decoder */ + NULL_encode_uper, /* Unaligned PER encoder */ + NULL_decode_aper, /* Aligned PER decoder */ + NULL_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + NULL_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NULL = { + "NULL", + "NULL", + &asn_OP_NULL, + asn_DEF_NULL_tags, + sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), + asn_DEF_NULL_tags, /* Same as above */ + sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +asn_enc_rval_t +NULL_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, + ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + + erval.encoded = der_write_tags(td, 0, tag_mode, 0, tag, cb, app_key); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = ptr; + } + + ASN__ENCODED_OK(erval); +} + +asn_enc_rval_t +NULL_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)sptr; + (void)ilevel; + (void)flags; + (void)cb; + (void)app_key; + + /* XMLNullValue is empty */ + er.encoded = 0; + ASN__ENCODED_OK(er); +} + + +static enum xer_pbd_rval +NULL__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + (void)td; + (void)sptr; + (void)chunk_buf; /* Going to be empty according to the rules below. */ + + /* + * There must be no content in self-terminating tag. + */ + if(chunk_size) + return XPBD_BROKEN_ENCODING; + else + return XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +NULL_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(NULL_t), opt_mname, buf_ptr, size, + NULL__xer_body_decode); +} + +int +NULL_compare(const asn_TYPE_descriptor_t *td, const void *a, const void *b) { + (void)td; + (void)a; + (void)b; + return 0; +} + +int +NULL_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(sptr) { + return (cb("", 9, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +#ifndef ASN_DISABLE_OER_SUPPORT + +asn_dec_rval_t +NULL_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + asn_dec_rval_t rv = {RC_OK, 0}; + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)ptr; + (void)size; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + return rv; +} + +asn_enc_rval_t +NULL_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)sptr; + (void)constraints; + (void)cb; + (void)app_key; + + er.encoded = 0; /* Encoding in 0 bytes. */ + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +NULL_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)pd; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + /* + * NULL type does not have content octets. + */ + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +asn_enc_rval_t +NULL_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)constraints; + (void)sptr; + (void)po; + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +NULL_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + + (void)opt_codec_ctx; + (void)td; + (void)constraints; + (void)pd; + + if(!*sptr) { + *sptr = MALLOC(sizeof(NULL_t)); + if(*sptr) { + *(NULL_t *)*sptr = 0; + } else { + ASN__DECODE_FAILED; + } + } + + /* + * NULL type does not have content octets. + */ + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + + +asn_enc_rval_t +NULL_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + asn_enc_rval_t er = {0,0,0}; + + (void)td; + (void)constraints; + (void)sptr; + (void)po; + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +asn_random_fill_result_t +NULL_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + NULL_t *st = *sptr; + + (void)td; + (void)constr; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (NULL_t *)(*sptr = CALLOC(1, sizeof(*st))); + if(st == NULL) { + return result_failed; + } + } + + return result_ok; +} + diff --git a/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c b/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c new file mode 100644 index 000000000..33e75bb66 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NativeEnumerated.c @@ -0,0 +1,375 @@ +/*- + * Copyright (c) 2004, 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeEnumerated basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeEnumerated_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeEnumerated = { + NativeInteger_free, + NativeInteger_print, + NativeInteger_compare, + NativeInteger_decode_ber, + NativeInteger_encode_der, + NativeInteger_decode_xer, + NativeEnumerated_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + NativeEnumerated_decode_oer, + NativeEnumerated_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + NativeEnumerated_decode_uper, + NativeEnumerated_encode_uper, + NativeEnumerated_decode_aper, + NativeEnumerated_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + NativeEnumerated_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeEnumerated = { + "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ + "ENUMERATED", + &asn_OP_NativeEnumerated, + asn_DEF_NativeEnumerated_tags, + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + asn_DEF_NativeEnumerated_tags, /* Same as above */ + sizeof(asn_DEF_NativeEnumerated_tags) / sizeof(asn_DEF_NativeEnumerated_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +asn_enc_rval_t +NativeEnumerated_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + const asn_INTEGER_enum_map_t *el; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + el = INTEGER_map_value2enum(specs, *native); + if(el) { + er.encoded = + asn__format_to_callback(cb, app_key, "<%s/>", el->enum_name); + if(er.encoded < 0) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } else { + ASN_DEBUG( + "ASN.1 forbids dealing with " + "unknown value of ENUMERATED type"); + ASN__ENCODE_FAILED; + } +} + +asn_dec_rval_t +NativeEnumerated_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + if(value >= specs->map_count) + ASN__DECODE_FAILED; + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +static int +NativeEnumerated__compar_value2enum(const void *ap, const void *bp) { + const asn_INTEGER_enum_map_t *a = ap; + const asn_INTEGER_enum_map_t *b = bp; + if(a->nat_value == b->nat_value) + return 0; + if(a->nat_value < b->nat_value) + return -1; + return 1; +} + +asn_enc_rval_t +NativeEnumerated_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0; + asn_INTEGER_enum_map_t key; + const asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +NativeEnumerated_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = { RC_OK, 0 }; + long *native = (long *)*sptr; + const asn_per_constraint_t *ct; + long value; + + (void)opt_codec_ctx; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__DECODE_FAILED; /* Mandatory! */ + if(!specs) ASN__DECODE_FAILED; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as NativeEnumerated", td->name); + + if(ct->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) ASN__DECODE_STARVED; + if(inext) ct = 0; + } + + /* Deal with APER padding */ + if(ct && ct->upper_bound >= 255) { + int padding = 0; + padding = (8 - (pd->moved % 8)) % 8; + ASN_DEBUG("For NativeEnumerated %s,offset= %lu Padding bits = %d", td->name, pd->moved, padding); + ASN_DEBUG("For NativeEnumerated %s, upper bound = %lu", td->name, ct->upper_bound); + if(padding > 0) + per_get_few_bits(pd, padding); + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + if(value >= (specs->extension + ? specs->extension - 1 : specs->map_count)) + ASN__DECODE_FAILED; + } else { + if(!specs->extension) + ASN__DECODE_FAILED; + /* + * X.691, #10.6: normally small non-negative whole number; + */ + + /* XXX handle indefinite index length > 64k */ + value = aper_get_nsnnwn(pd, 65537); + if(value < 0) ASN__DECODE_STARVED; + value += specs->extension - 1; + //if(value >= specs->map_count) + // ASN__DECODE_FAILED; + if(value >= specs->map_count) { + ASN_DEBUG("Decoded unknown index value %s = %ld", td->name, value); + /* unknown index. Workaround => set the first enumeration value */ + *native = specs->value2enum[0].nat_value; + return rval; + } + } + + *native = specs->value2enum[value].nat_value; + ASN_DEBUG("Decoded %s = %ld", td->name, *native); + + return rval; +} + +asn_enc_rval_t +NativeEnumerated_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native, value; + const asn_per_constraint_t *ct; + int inext = 0; + asn_INTEGER_enum_map_t key; + asn_INTEGER_enum_map_t *kf; + + if(!sptr) ASN__ENCODE_FAILED; + if(!specs) ASN__ENCODE_FAILED; + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ASN__ENCODE_FAILED; /* Mandatory! */ + + ASN_DEBUG("Encoding %s as NativeEnumerated", td->name); + + er.encoded = 0; + + native = *(const long *)sptr; + if(native < 0) ASN__ENCODE_FAILED; + + key.nat_value = native; + kf = bsearch(&key, specs->value2enum, specs->map_count, + sizeof(key), NativeEnumerated__compar_value2enum); + if(!kf) { + ASN_DEBUG("No element corresponds to %ld", native); + ASN__ENCODE_FAILED; + } + value = kf - specs->value2enum; + + if(ct->range_bits >= 0) { + int cmpWith = specs->extension + ? specs->extension - 1 : specs->map_count; + if(value >= cmpWith) + inext = 1; + } + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + if(inext) ct = 0; + } else if(inext) { + ASN__ENCODE_FAILED; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, value, ct->range_bits)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + if(!specs->extension) + ASN__ENCODE_FAILED; + + /* + * X.691, #10.6: normally small non-negative whole number; + */ + ASN_DEBUG("value = %ld, ext = %d, inext = %d, res = %ld", + value, specs->extension, inext, + value - (inext ? (specs->extension - 1) : 0)); + if(uper_put_nsnnwn(po, value - (inext ? (specs->extension - 1) : 0))) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} diff --git a/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c new file mode 100644 index 000000000..ee3c1895e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NativeEnumerated_oer.c @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +static long +asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) { + unsigned long value; + + /* Perform the sign initialization */ + /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */ + if((*b >> 7)) { + value = (unsigned long)(-1); + } else { + value = 0; + } + + /* Conversion engine */ + for(; b < end; b++) { + value = (value << 8) | *b; + } + + return value; +} + +asn_dec_rval_t +NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + const uint8_t *b = ptr; + + (void)opt_codec_ctx; + (void)constraints; + + if(size < 1) { + ASN__DECODE_STARVED; + } + + if((*b & 0x80) == 0) { + /* + * X.696 (08/2015) #11.2 Short form for Enumerated. + */ + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = *b; + rval.consumed = 1; + } else { + /* + * X.696 (08/2015) #11.4 Long form for Enumerated. + */ + size_t length = *b & 0x7f; + const uint8_t *bend; + long value; + + if(length < 1 || length > sizeof(*native)) { + ASN__DECODE_FAILED; + } + if((1 + length) > size) { + ASN__DECODE_STARVED; + } + b++; + bend = b + length; + + value = asn__nativeenumerated_convert(b, bend); + if(value < 0) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + ASN__DECODE_FAILED; + } + } + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + *native = value; + + rval.consumed = (1 + length); + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + long native; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + if(native >= 0 && native <= 127) { + /* #11.2 Short form */ + uint8_t b = native; + er.encoded = 1; + if(cb(&b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } else { + /* #11.2 Long form */ + uint8_t buf[1 + sizeof(native)]; + uint8_t *b = &buf[sizeof(native)]; /* Last addressable */ + long final_pattern = -1 * (native < 0); + + for(;;) { + *b-- = native; + native >>= 8; + if(native == final_pattern) { + if(final_pattern) { + if((b[1] & 0x80)) break; + } else { + if(!(b[1] & 0x80)) break; + } + } + } + *b = 0x80 | (&buf[sizeof(native)] - b); + er.encoded = 1 + (&buf[sizeof(native)] - b); + if(cb(b, er.encoded, app_key) < 0) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/NativeInteger.c b/src/tmx/Asn_J2735/src/r63/NativeInteger.c new file mode 100644 index 000000000..c344b7c9f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NativeInteger.c @@ -0,0 +1,550 @@ +/*- + * Copyright (c) 2004, 2005, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * Read the NativeInteger.h for the explanation wrt. differences between + * INTEGER and NativeInteger. + * Basically, both are decoders and encoders of ASN.1 INTEGER type, but this + * implementation deals with the standard (machine-specific) representation + * of them instead of using the platform-independent buffer. + */ +#include +#include + +/* + * NativeInteger basic type description. + */ +static const ber_tlv_tag_t asn_DEF_NativeInteger_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_operation_t asn_OP_NativeInteger = { + NativeInteger_free, + NativeInteger_print, + NativeInteger_compare, + NativeInteger_decode_ber, + NativeInteger_encode_der, + NativeInteger_decode_xer, + NativeInteger_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + NativeInteger_decode_oer, /* OER decoder */ + NativeInteger_encode_oer, /* Canonical OER encoder */ +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + NativeInteger_decode_uper, /* Unaligned PER decoder */ + NativeInteger_encode_uper, /* Unaligned PER encoder */ + NativeInteger_decode_aper, /* Aligned PER decoder */ + NativeInteger_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + NativeInteger_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_NativeInteger = { + "INTEGER", /* The ASN.1 type is still INTEGER */ + "INTEGER", + &asn_OP_NativeInteger, + asn_DEF_NativeInteger_tags, + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + asn_DEF_NativeInteger_tags, /* Same as above */ + sizeof(asn_DEF_NativeInteger_tags) / sizeof(asn_DEF_NativeInteger_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +/* + * Decode INTEGER type. + */ +asn_dec_rval_t +NativeInteger_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **nint_ptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + long *native = (long *)*nint_ptr; + asn_dec_rval_t rval; + ber_tlv_len_t length; + + /* + * If the structure is not there, allocate it. + */ + if(native == NULL) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(native == NULL) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + } + + ASN_DEBUG("Decoding %s as INTEGER (tm=%d)", + td->name, tag_mode); + + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + /* + * ASN.1 encoded INTEGER: buf_ptr, length + * Fill the native, at the same time checking for overflow. + * If overflow occurred, return with RC_FAIL. + */ + { + INTEGER_t tmp; + union { + const void *constbuf; + void *nonconstbuf; + } unconst_buf; + long l; + + unconst_buf.constbuf = buf_ptr; + tmp.buf = (uint8_t *)unconst_buf.nonconstbuf; + tmp.size = length; + + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmp, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&tmp, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; + } + + *native = l; + } + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s (%ld)", + (long)rval.consumed, (long)length, td->name, (long)*native); + + return rval; +} + +/* + * Encode the NativeInteger using the standard INTEGER type DER encoder. + */ +asn_enc_rval_t +NativeInteger_encode_der(const asn_TYPE_descriptor_t *sd, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + unsigned long native = *(const unsigned long *)ptr; /* Disable sign ext. */ + asn_enc_rval_t erval = {0,0,0}; + INTEGER_t tmp; + +#ifdef WORDS_BIGENDIAN /* Opportunistic optimization */ + + tmp.buf = (uint8_t *)&native; + tmp.size = sizeof(native); + +#else /* Works even if WORDS_BIGENDIAN is not set where should've been */ + uint8_t buf[sizeof(native)]; + uint8_t *p; + + /* Prepare a fake INTEGER */ + for(p = buf + sizeof(buf) - 1; p >= buf; p--, native >>= 8) + *p = (uint8_t)native; + + tmp.buf = buf; + tmp.size = sizeof(buf); +#endif /* WORDS_BIGENDIAN */ + + /* Encode fake INTEGER */ + erval = INTEGER_encode_der(sd, &tmp, tag_mode, tag, cb, app_key); + if(erval.structure_ptr == &tmp) { + erval.structure_ptr = ptr; + } + return erval; +} + +/* + * Decode the chunk of XML text encoding INTEGER. + */ +asn_dec_rval_t +NativeInteger_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + INTEGER_t st; + void *st_ptr = (void *)&st; + long *native = (long *)*sptr; + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&st, 0, sizeof(st)); + rval = INTEGER_decode_xer(opt_codec_ctx, td, &st_ptr, + opt_mname, buf_ptr, size); + if(rval.code == RC_OK) { + long l; + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&st, (unsigned long *)&l) /* sic */ + : asn_INTEGER2long(&st, &l)) { + rval.code = RC_FAIL; + rval.consumed = 0; + } else { + *native = l; + } + } else { + /* + * Cannot restart from the middle; + * there is no place to save state in the native type. + * Request a continuation from the very beginning. + */ + rval.consumed = 0; + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &st); + return rval; +} + + +asn_enc_rval_t +NativeInteger_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + char scratch[32]; /* Enough for 64-bit int */ + asn_enc_rval_t er = {0,0,0}; + const long *native = (const long *)sptr; + + (void)ilevel; + (void)flags; + + if(!native) ASN__ENCODE_FAILED; + + er.encoded = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) + ? "%lu" : "%ld", *native); + if(er.encoded <= 0 || (size_t)er.encoded >= sizeof(scratch) + || cb(scratch, er.encoded, app_key) < 0) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +NativeInteger_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (UPER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_uper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (UPER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_uper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} + +asn_dec_rval_t +NativeInteger_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval; + long *native = (long *)*sptr; + INTEGER_t tmpint; + void *tmpintptr = &tmpint; + + (void)opt_codec_ctx; + ASN_DEBUG("Decoding NativeInteger %s (APER)", td->name); + + if(!native) { + native = (long *)(*sptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + memset(&tmpint, 0, sizeof tmpint); + rval = INTEGER_decode_aper(opt_codec_ctx, td, constraints, + &tmpintptr, pd); + if(rval.code == RC_OK) { + if((specs&&specs->field_unsigned) + ? asn_INTEGER2ulong(&tmpint, (unsigned long *)native) + : asn_INTEGER2long(&tmpint, native)) + rval.code = RC_FAIL; + else + ASN_DEBUG("NativeInteger %s got value %ld", + td->name, *native); + } + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + + return rval; +} + +asn_enc_rval_t +NativeInteger_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_INTEGER_specifics_t *specs = (const asn_INTEGER_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + long native; + INTEGER_t tmpint; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + + ASN_DEBUG("Encoding NativeInteger %s %ld (APER)", td->name, native); + + memset(&tmpint, 0, sizeof(tmpint)); + if((specs&&specs->field_unsigned) + ? asn_ulong2INTEGER(&tmpint, (unsigned long)native) + : asn_long2INTEGER(&tmpint, native)) + ASN__ENCODE_FAILED; + er = INTEGER_encode_aper(td, constraints, &tmpint, po); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +/* + * INTEGER specific human-readable output. + */ +int +NativeInteger_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + const long *native = (const long *)sptr; + char scratch[32]; /* Enough for 64-bit int */ + int ret; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(native) { + long value = *native; + ret = snprintf(scratch, sizeof(scratch), + (specs && specs->field_unsigned) ? "%lu" : "%ld", value); + assert(ret > 0 && (size_t)ret < sizeof(scratch)); + if(cb(scratch, ret, app_key) < 0) return -1; + if(specs && (value >= 0 || !specs->field_unsigned)) { + const asn_INTEGER_enum_map_t *el = + INTEGER_map_value2enum(specs, value); + if(el) { + if(cb(" (", 2, app_key) < 0) return -1; + if(cb(el->enum_name, el->enum_len, app_key) < 0) return -1; + if(cb(")", 1, app_key) < 0) return -1; + } + } + return 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +NativeInteger_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as INTEGER (%d, %p, Native)", + td->name, method, ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, sizeof(long)); + break; + } +} + +int +NativeInteger_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + (void)td; + + if(aptr && bptr) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + if(specs && specs->field_unsigned) { + const unsigned long *a = aptr; + const unsigned long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } else { + const long *a = aptr; + const long *b = bptr; + if(*a < *b) { + return -1; + } else if(*a > *b) { + return 1; + } else { + return 0; + } + } + } else if(!aptr) { + return -1; + } else { + return 1; + } +} + +asn_random_fill_result_t +NativeInteger_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + long *st = *sptr; + const asn_INTEGER_enum_map_t *emap; + size_t emap_len; + intmax_t value; + int find_inside_map; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (long *)CALLOC(1, sizeof(*st)); + if(st == NULL) { + return result_failed; + } + } + + if(specs) { + emap = specs->value2enum; + emap_len = specs->map_count; + if(specs->strict_enumeration) { + find_inside_map = emap_len > 0; + } else { + find_inside_map = emap_len ? asn_random_between(0, 1) : 0; + } + } else { + emap = 0; + emap_len = 0; + find_inside_map = 0; + } + + if(find_inside_map) { + assert(emap_len > 0); + value = emap[asn_random_between(0, emap_len - 1)].nat_value; + } else { + const asn_per_constraints_t *ct; + + static const long variants[] = { + -65536, -65535, -65534, -32769, -32768, -32767, -16385, -16384, + -16383, -257, -256, -255, -254, -129, -128, -127, + -126, -1, 0, 1, 126, 127, 128, 129, + 254, 255, 256, 257, 16383, 16384, 16385, 32767, + 32768, 32769, 65534, 65535, 65536, 65537}; + if(specs && specs->field_unsigned) { + assert(variants[18] == 0); + value = variants[asn_random_between( + 18, sizeof(variants) / sizeof(variants[0]) - 1)]; + } else { + value = variants[asn_random_between( + 0, sizeof(variants) / sizeof(variants[0]) - 1)]; + } + + if(!constraints) constraints = &td->encoding_constraints; + ct = constraints ? constraints->per_constraints : 0; + if(ct && (ct->value.flags & APC_CONSTRAINED)) { + if(value < ct->value.lower_bound || value > ct->value.upper_bound) { + value = asn_random_between(ct->value.lower_bound, + ct->value.upper_bound); + } + } + } + + *sptr = st; + *st = value; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c new file mode 100644 index 000000000..411413a24 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NativeInteger_oer.c @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +asn_dec_rval_t +NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + void **nint_ptr, const void *ptr, size_t size) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + long *native = (long *)*nint_ptr; + INTEGER_t tmpint; + INTEGER_t *tmpintptr = &tmpint; + + memset(&tmpint, 0, sizeof(tmpint)); + + if(!native) { + native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native))); + if(!native) ASN__DECODE_FAILED; + } + + /* + * OPTIMIZATION: Encode directly rather than passing through INTEGER. + * Saves a memory allocation. + */ + rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints, + (void **)&tmpintptr, ptr, size); + if(rval.code != RC_OK) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return rval; + } + + if(specs && specs->field_unsigned) { + unsigned long ul; + int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = ul; + } else { + rval.code = RC_FAIL; + return rval; + } + } else { + long l; + int ok = asn_INTEGER2long(&tmpint, &l) == 0; + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + if(ok) { + *native = l; + } else { + rval.code = RC_FAIL; + return rval; + } + } + + return rval; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_INTEGER_specifics_t *specs = + (const asn_INTEGER_specifics_t *)td->specifics; + INTEGER_t tmpint; + long native; + + if(!sptr) ASN__ENCODE_FAILED; + + native = *(const long *)sptr; + memset(&tmpint, 0, sizeof(tmpint)); + + ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native); + + if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native) + : asn_long2INTEGER(&tmpint, native)) { + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t er = + INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key); + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint); + return er; + } +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c new file mode 100644 index 000000000..f9cef92e4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-24B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-24B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_24B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_24B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_24B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_24B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_24B_specs_1 = { + sizeof(struct Node_LL_24B), + offsetof(struct Node_LL_24B, _asn_ctx), + asn_MAP_Node_LL_24B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_24B = { + "Node-LL-24B", + "Node-LL-24B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_24B_tags_1, + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_24B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_24B_tags_1) + /sizeof(asn_DEF_Node_LL_24B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_24B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_24B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c new file mode 100644 index 000000000..d1d7876e5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-28B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-28B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_28B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_28B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_28B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_28B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_28B_specs_1 = { + sizeof(struct Node_LL_28B), + offsetof(struct Node_LL_28B, _asn_ctx), + asn_MAP_Node_LL_28B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_28B = { + "Node-LL-28B", + "Node-LL-28B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_28B_tags_1, + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_28B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_28B_tags_1) + /sizeof(asn_DEF_Node_LL_28B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_28B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_28B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c new file mode 100644 index 000000000..a5d91ab25 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-32B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-32B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_32B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_32B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_32B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_32B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_32B_specs_1 = { + sizeof(struct Node_LL_32B), + offsetof(struct Node_LL_32B, _asn_ctx), + asn_MAP_Node_LL_32B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_32B = { + "Node-LL-32B", + "Node-LL-32B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_32B_tags_1, + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_32B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_32B_tags_1) + /sizeof(asn_DEF_Node_LL_32B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_32B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_32B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c new file mode 100644 index 000000000..44f2daf38 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-36B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-36B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_36B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_36B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_36B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_36B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_36B_specs_1 = { + sizeof(struct Node_LL_36B), + offsetof(struct Node_LL_36B, _asn_ctx), + asn_MAP_Node_LL_36B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_36B = { + "Node-LL-36B", + "Node-LL-36B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_36B_tags_1, + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_36B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_36B_tags_1) + /sizeof(asn_DEF_Node_LL_36B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_36B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_36B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c new file mode 100644 index 000000000..44d292a01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-44B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-44B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_44B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_44B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B22, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_44B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_44B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_44B_specs_1 = { + sizeof(struct Node_LL_44B), + offsetof(struct Node_LL_44B, _asn_ctx), + asn_MAP_Node_LL_44B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_44B = { + "Node-LL-44B", + "Node-LL-44B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_44B_tags_1, + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_44B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_44B_tags_1) + /sizeof(asn_DEF_Node_LL_44B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_44B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_44B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c b/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c new file mode 100644 index 000000000..0cb9d18a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LL-48B.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LL-48B.h" + +asn_TYPE_member_t asn_MBR_Node_LL_48B_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LL_48B, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B24, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LL_48B_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LL_48B_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LL_48B_specs_1 = { + sizeof(struct Node_LL_48B), + offsetof(struct Node_LL_48B, _asn_ctx), + asn_MAP_Node_LL_48B_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LL_48B = { + "Node-LL-48B", + "Node-LL-48B", + &asn_OP_SEQUENCE, + asn_DEF_Node_LL_48B_tags_1, + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + asn_DEF_Node_LL_48B_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LL_48B_tags_1) + /sizeof(asn_DEF_Node_LL_48B_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LL_48B_1, + 2, /* Elements count */ + &asn_SPC_Node_LL_48B_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c b/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c new file mode 100644 index 000000000..06443b3f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LLdms-48b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LLdms-48b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_48b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_48b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_48b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_48b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_48b_specs_1 = { + sizeof(struct Node_LLdms_48b), + offsetof(struct Node_LLdms_48b, _asn_ctx), + asn_MAP_Node_LLdms_48b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_48b = { + "Node-LLdms-48b", + "Node-LLdms-48b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_48b_tags_1, + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_48b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_48b_tags_1) + /sizeof(asn_DEF_Node_LLdms_48b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LLdms_48b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_48b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c b/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c new file mode 100644 index 000000000..1e95fddad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LLdms-80b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LLdms-80b.h" + +asn_TYPE_member_t asn_MBR_Node_LLdms_80b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLdms_80b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLdms_80b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLdms_80b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLdms_80b_specs_1 = { + sizeof(struct Node_LLdms_80b), + offsetof(struct Node_LLdms_80b, _asn_ctx), + asn_MAP_Node_LLdms_80b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLdms_80b = { + "Node-LLdms-80b", + "Node-LLdms-80b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLdms_80b_tags_1, + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLdms_80b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLdms_80b_tags_1) + /sizeof(asn_DEF_Node_LLdms_80b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LLdms_80b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLdms_80b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c b/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c new file mode 100644 index 000000000..1596c4083 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-LLmD-64b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-LLmD-64b.h" + +asn_TYPE_member_t asn_MBR_Node_LLmD_64b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lon), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lon" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_LLmD_64b, lat), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_LLmD_64b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_LLmD_64b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lon */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* lat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_LLmD_64b_specs_1 = { + sizeof(struct Node_LLmD_64b), + offsetof(struct Node_LLmD_64b, _asn_ctx), + asn_MAP_Node_LLmD_64b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_LLmD_64b = { + "Node-LLmD-64b", + "Node-LLmD-64b", + &asn_OP_SEQUENCE, + asn_DEF_Node_LLmD_64b_tags_1, + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + asn_DEF_Node_LLmD_64b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_LLmD_64b_tags_1) + /sizeof(asn_DEF_Node_LLmD_64b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_LLmD_64b_1, + 2, /* Elements count */ + &asn_SPC_Node_LLmD_64b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c new file mode 100644 index 000000000..ef8f1239b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-20b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-20b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_20b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_20b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_20b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_20b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_20b_specs_1 = { + sizeof(struct Node_XY_20b), + offsetof(struct Node_XY_20b, _asn_ctx), + asn_MAP_Node_XY_20b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_20b = { + "Node-XY-20b", + "Node-XY-20b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_20b_tags_1, + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_20b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_20b_tags_1) + /sizeof(asn_DEF_Node_XY_20b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_20b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_20b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c new file mode 100644 index 000000000..13cfb2d27 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-22b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-22b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_22b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_22b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_22b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_22b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_22b_specs_1 = { + sizeof(struct Node_XY_22b), + offsetof(struct Node_XY_22b, _asn_ctx), + asn_MAP_Node_XY_22b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_22b = { + "Node-XY-22b", + "Node-XY-22b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_22b_tags_1, + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_22b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_22b_tags_1) + /sizeof(asn_DEF_Node_XY_22b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_22b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_22b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c new file mode 100644 index 000000000..eca7381d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-24b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-24b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_24b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_24b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_24b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_24b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_24b_specs_1 = { + sizeof(struct Node_XY_24b), + offsetof(struct Node_XY_24b, _asn_ctx), + asn_MAP_Node_XY_24b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_24b = { + "Node-XY-24b", + "Node-XY-24b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_24b_tags_1, + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_24b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_24b_tags_1) + /sizeof(asn_DEF_Node_XY_24b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_24b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_24b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c new file mode 100644 index 000000000..a1325faca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-26b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-26b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_26b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_26b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B13, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_26b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_26b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_26b_specs_1 = { + sizeof(struct Node_XY_26b), + offsetof(struct Node_XY_26b, _asn_ctx), + asn_MAP_Node_XY_26b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_26b = { + "Node-XY-26b", + "Node-XY-26b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_26b_tags_1, + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_26b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_26b_tags_1) + /sizeof(asn_DEF_Node_XY_26b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_26b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_26b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c new file mode 100644 index 000000000..57b478223 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-28b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-28b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_28b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_28b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_28b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_28b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_28b_specs_1 = { + sizeof(struct Node_XY_28b), + offsetof(struct Node_XY_28b, _asn_ctx), + asn_MAP_Node_XY_28b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_28b = { + "Node-XY-28b", + "Node-XY-28b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_28b_tags_1, + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_28b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_28b_tags_1) + /sizeof(asn_DEF_Node_XY_28b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_28b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_28b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c b/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c new file mode 100644 index 000000000..bd3ae9611 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Node-XY-32b.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Node-XY-32b.h" + +asn_TYPE_member_t asn_MBR_Node_XY_32b_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Node_XY_32b, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, +}; +static const ber_tlv_tag_t asn_DEF_Node_XY_32b_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Node_XY_32b_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* y */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Node_XY_32b_specs_1 = { + sizeof(struct Node_XY_32b), + offsetof(struct Node_XY_32b, _asn_ctx), + asn_MAP_Node_XY_32b_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Node_XY_32b = { + "Node-XY-32b", + "Node-XY-32b", + &asn_OP_SEQUENCE, + asn_DEF_Node_XY_32b_tags_1, + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + asn_DEF_Node_XY_32b_tags_1, /* Same as above */ + sizeof(asn_DEF_Node_XY_32b_tags_1) + /sizeof(asn_DEF_Node_XY_32b_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Node_XY_32b_1, + 2, /* Elements count */ + &asn_SPC_Node_XY_32b_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c new file mode 100644 index 000000000..d4d9f8f80 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeLL.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeLL_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeLL_specs_1 = { + asn_MAP_NodeAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLL = { + "NodeAttributeLL", + "NodeAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeLL_tags_1, + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLL_tags_1) + /sizeof(asn_DEF_NodeAttributeLL_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeAttributeLL_constr_1, &asn_PER_type_NodeAttributeLL_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c new file mode 100644 index 000000000..9986eaa94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeLLList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeLLList.h" + +static asn_oer_constraints_t asn_OER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_NodeAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeLLList_specs_1 = { + sizeof(struct NodeAttributeLLList), + offsetof(struct NodeAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeLLList = { + "NodeAttributeLLList", + "NodeAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeLLList_tags_1, + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeLLList_tags_1) + /sizeof(asn_DEF_NodeAttributeLLList_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeAttributeLLList_constr_1, &asn_PER_type_NodeAttributeLLList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NodeAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c new file mode 100644 index 000000000..ac9f20903 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetLL.c @@ -0,0 +1,191 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeSetLL.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetLL__regional), + offsetof(struct NodeAttributeSetLL__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetLL_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetLL, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeLLList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetLL, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetLL, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeLLList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetLL, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetLL, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetLL, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetLL, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetLL_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetLL_specs_1 = { + sizeof(struct NodeAttributeSetLL), + offsetof(struct NodeAttributeSetLL, _asn_ctx), + asn_MAP_NodeAttributeSetLL_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetLL_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetLL = { + "NodeAttributeSetLL", + "NodeAttributeSetLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetLL_tags_1, + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetLL_tags_1) + /sizeof(asn_DEF_NodeAttributeSetLL_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NodeAttributeSetLL_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c new file mode 100644 index 000000000..86c1cbee7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeSetXY.c @@ -0,0 +1,191 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeSetXY.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct NodeAttributeSetXY__regional), + offsetof(struct NodeAttributeSetXY__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NodeAttributeSetXY_1[] = { + { ATF_POINTER, 7, offsetof(struct NodeAttributeSetXY, localNode), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeXYList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "localNode" + }, + { ATF_POINTER, 6, offsetof(struct NodeAttributeSetXY, disabled), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "disabled" + }, + { ATF_POINTER, 5, offsetof(struct NodeAttributeSetXY, enabled), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SegmentAttributeXYList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "enabled" + }, + { ATF_POINTER, 4, offsetof(struct NodeAttributeSetXY, data), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneDataAttributeList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "data" + }, + { ATF_POINTER, 3, offsetof(struct NodeAttributeSetXY, dWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dWidth" + }, + { ATF_POINTER, 2, offsetof(struct NodeAttributeSetXY, dElevation), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dElevation" + }, + { ATF_POINTER, 1, offsetof(struct NodeAttributeSetXY, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_NodeAttributeSetXY_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_NodeAttributeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeAttributeSetXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localNode */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* disabled */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* enabled */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* data */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* dElevation */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeAttributeSetXY_specs_1 = { + sizeof(struct NodeAttributeSetXY), + offsetof(struct NodeAttributeSetXY, _asn_ctx), + asn_MAP_NodeAttributeSetXY_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_NodeAttributeSetXY_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeSetXY = { + "NodeAttributeSetXY", + "NodeAttributeSetXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeAttributeSetXY_tags_1, + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeSetXY_tags_1) + /sizeof(asn_DEF_NodeAttributeSetXY_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NodeAttributeSetXY_1, + 7, /* Elements count */ + &asn_SPC_NodeAttributeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c new file mode 100644 index 000000000..5e2fb6115 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeXY.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NodeAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 8, "stopLine" }, + { 2, 16, "roundedCapStyleA" }, + { 3, 16, "roundedCapStyleB" }, + { 4, 10, "mergePoint" }, + { 5, 12, "divergePoint" }, + { 6, 18, "downstreamStopLine" }, + { 7, 19, "downstreamStartNode" }, + { 8, 15, "closedToTraffic" }, + { 9, 10, "safeIsland" }, + { 10, 20, "curbPresentAtStepOff" }, + { 11, 14, "hydrantPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NodeAttributeXY_enum2value_1[] = { + 8, /* closedToTraffic(8) */ + 10, /* curbPresentAtStepOff(10) */ + 5, /* divergePoint(5) */ + 7, /* downstreamStartNode(7) */ + 6, /* downstreamStopLine(6) */ + 11, /* hydrantPresent(11) */ + 4, /* mergePoint(4) */ + 0, /* reserved(0) */ + 2, /* roundedCapStyleA(2) */ + 3, /* roundedCapStyleB(3) */ + 9, /* safeIsland(9) */ + 1 /* stopLine(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NodeAttributeXY_specs_1 = { + asn_MAP_NodeAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NodeAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXY = { + "NodeAttributeXY", + "NodeAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_NodeAttributeXY_tags_1, + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXY_tags_1) + /sizeof(asn_DEF_NodeAttributeXY_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeAttributeXY_constr_1, &asn_PER_type_NodeAttributeXY_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NodeAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c b/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c new file mode 100644 index 000000000..43558a513 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeAttributeXYList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeAttributeXYList.h" + +static asn_oer_constraints_t asn_OER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_NodeAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_NodeAttributeXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeAttributeXYList_specs_1 = { + sizeof(struct NodeAttributeXYList), + offsetof(struct NodeAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeAttributeXYList = { + "NodeAttributeXYList", + "NodeAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeAttributeXYList_tags_1, + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_NodeAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeAttributeXYList_tags_1) + /sizeof(asn_DEF_NodeAttributeXYList_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeAttributeXYList_constr_1, &asn_PER_type_NodeAttributeXYList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NodeAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_NodeAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeLL.c b/src/tmx/Asn_J2735/src/r63/NodeLL.c new file mode 100644 index 000000000..170ad7b5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeLL.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeLL.h" + +asn_TYPE_member_t asn_MBR_NodeLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeLL, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeLL, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeLL_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeLL_specs_1 = { + sizeof(struct NodeLL), + offsetof(struct NodeLL, _asn_ctx), + asn_MAP_NodeLL_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeLL_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeLL = { + "NodeLL", + "NodeLL", + &asn_OP_SEQUENCE, + asn_DEF_NodeLL_tags_1, + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + asn_DEF_NodeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeLL_tags_1) + /sizeof(asn_DEF_NodeLL_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NodeLL_1, + 2, /* Elements count */ + &asn_SPC_NodeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeListLL.c b/src/tmx/Asn_J2735/src/r63/NodeListLL.c new file mode 100644 index 000000000..1ee941b50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeListLL.c @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeListLL.h" + +static asn_oer_constraints_t asn_OER_type_NodeListLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeListLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeListLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListLL, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodes" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodes */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListLL_specs_1 = { + sizeof(struct NodeListLL), + offsetof(struct NodeListLL, _asn_ctx), + offsetof(struct NodeListLL, present), + sizeof(((struct NodeListLL *)0)->present), + asn_MAP_NodeListLL_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, + 1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListLL = { + "NodeListLL", + "NodeListLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NodeListLL_constr_1, &asn_PER_type_NodeListLL_constr_1, CHOICE_constraint }, + asn_MBR_NodeListLL_1, + 1, /* Elements count */ + &asn_SPC_NodeListLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeListXY.c b/src/tmx/Asn_J2735/src/r63/NodeListXY.c new file mode 100644 index 000000000..d4645bb9a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeListXY.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeListXY.h" + +static asn_oer_constraints_t asn_OER_type_NodeListXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeListXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeListXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.nodes), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeSetXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodes" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeListXY, choice.computed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ComputedLane, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "computed" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeListXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nodes */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* computed */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeListXY_specs_1 = { + sizeof(struct NodeListXY), + offsetof(struct NodeListXY, _asn_ctx), + offsetof(struct NodeListXY, present), + sizeof(((struct NodeListXY *)0)->present), + asn_MAP_NodeListXY_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeListXY = { + "NodeListXY", + "NodeListXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NodeListXY_constr_1, &asn_PER_type_NodeListXY_constr_1, CHOICE_constraint }, + asn_MBR_NodeListXY_1, + 2, /* Elements count */ + &asn_SPC_NodeListXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c new file mode 100644 index 000000000..d03c0a204 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointLL.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeOffsetPointLL.h" + +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeOffsetPointLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeOffsetPointLL_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_24B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_28B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_32B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_36B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_44B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LL6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LL_48B, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LL6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointLL, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointLL_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-LL1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-LL2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-LL3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-LL4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-LL5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-LL6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointLL_specs_1 = { + sizeof(struct NodeOffsetPointLL), + offsetof(struct NodeOffsetPointLL, _asn_ctx), + offsetof(struct NodeOffsetPointLL, present), + sizeof(((struct NodeOffsetPointLL *)0)->present), + asn_MAP_NodeOffsetPointLL_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointLL = { + "NodeOffsetPointLL", + "NodeOffsetPointLL", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NodeOffsetPointLL_constr_1, &asn_PER_type_NodeOffsetPointLL_constr_1, CHOICE_constraint }, + asn_MBR_NodeOffsetPointLL_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c new file mode 100644 index 000000000..b462423a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY-addGrpB.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeOffsetPointXY-addGrpB.h" + +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posA), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_48b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posA" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY_addGrpB, choice.posB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLdms_80b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* posA */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* posB */ +}; +static asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 = { + sizeof(struct NodeOffsetPointXY_addGrpB), + offsetof(struct NodeOffsetPointXY_addGrpB, _asn_ctx), + offsetof(struct NodeOffsetPointXY_addGrpB, present), + sizeof(((struct NodeOffsetPointXY_addGrpB *)0)->present), + asn_MAP_NodeOffsetPointXY_addGrpB_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY_addGrpB = { + "NodeOffsetPointXY-addGrpB", + "NodeOffsetPointXY-addGrpB", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NodeOffsetPointXY_addGrpB_constr_1, &asn_PER_type_NodeOffsetPointXY_addGrpB_constr_1, CHOICE_constraint }, + asn_MBR_NodeOffsetPointXY_addGrpB_1, + 2, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c new file mode 100644 index 000000000..29f8cda68 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeOffsetPointXY.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeOffsetPointXY.h" + +static asn_oer_constraints_t asn_OER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NodeOffsetPointXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeOffsetPointXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_20b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY1" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_22b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY2" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY3" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_26b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY4" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_28b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY5" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_XY6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_32b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-XY6" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.node_LatLon), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_LLmD_64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node-LatLon" + }, + { ATF_NOFLAGS, 0, offsetof(struct NodeOffsetPointXY, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeOffsetPointXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node-XY1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* node-XY2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* node-XY3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* node-XY4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* node-XY5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* node-XY6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* node-LatLon */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_NodeOffsetPointXY_specs_1 = { + sizeof(struct NodeOffsetPointXY), + offsetof(struct NodeOffsetPointXY, _asn_ctx), + offsetof(struct NodeOffsetPointXY, present), + sizeof(((struct NodeOffsetPointXY *)0)->present), + asn_MAP_NodeOffsetPointXY_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeOffsetPointXY = { + "NodeOffsetPointXY", + "NodeOffsetPointXY", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NodeOffsetPointXY_constr_1, &asn_PER_type_NodeOffsetPointXY_constr_1, CHOICE_constraint }, + asn_MBR_NodeOffsetPointXY_1, + 8, /* Elements count */ + &asn_SPC_NodeOffsetPointXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeSetLL.c b/src/tmx/Asn_J2735/src/r63/NodeSetLL.c new file mode 100644 index 000000000..52dcf8ba6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeSetLL.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeSetLL.h" + +static asn_oer_constraints_t asn_OER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +asn_per_constraints_t asn_PER_type_NodeSetLL_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeSetLL_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetLL_specs_1 = { + sizeof(struct NodeSetLL), + offsetof(struct NodeSetLL, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetLL = { + "NodeSetLL", + "NodeSetLL", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetLL_tags_1, + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + asn_DEF_NodeSetLL_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetLL_tags_1) + /sizeof(asn_DEF_NodeSetLL_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeSetLL_constr_1, &asn_PER_type_NodeSetLL_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NodeSetLL_1, + 1, /* Single element */ + &asn_SPC_NodeSetLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeSetXY.c b/src/tmx/Asn_J2735/src/r63/NodeSetXY.c new file mode 100644 index 000000000..c92a433d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeSetXY.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeSetXY.h" + +static asn_oer_constraints_t asn_OER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(2..63)) */}; +asn_per_constraints_t asn_PER_type_NodeSetXY_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 2, 63 } /* (SIZE(2..63)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NodeSetXY_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NodeXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NodeSetXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NodeSetXY_specs_1 = { + sizeof(struct NodeSetXY), + offsetof(struct NodeSetXY, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeSetXY = { + "NodeSetXY", + "NodeSetXY", + &asn_OP_SEQUENCE_OF, + asn_DEF_NodeSetXY_tags_1, + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + asn_DEF_NodeSetXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeSetXY_tags_1) + /sizeof(asn_DEF_NodeSetXY_tags_1[0]), /* 1 */ + { &asn_OER_type_NodeSetXY_constr_1, &asn_PER_type_NodeSetXY_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NodeSetXY_1, + 1, /* Single element */ + &asn_SPC_NodeSetXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NodeXY.c b/src/tmx/Asn_J2735/src/r63/NodeXY.c new file mode 100644 index 000000000..684fa5934 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NodeXY.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NodeXY.h" + +asn_TYPE_member_t asn_MBR_NodeXY_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NodeXY, delta), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "delta" + }, + { ATF_POINTER, 1, offsetof(struct NodeXY, attributes), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NodeAttributeSetXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attributes" + }, +}; +static const int asn_MAP_NodeXY_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_NodeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NodeXY_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* delta */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* attributes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NodeXY_specs_1 = { + sizeof(struct NodeXY), + offsetof(struct NodeXY, _asn_ctx), + asn_MAP_NodeXY_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_NodeXY_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NodeXY = { + "NodeXY", + "NodeXY", + &asn_OP_SEQUENCE, + asn_DEF_NodeXY_tags_1, + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + asn_DEF_NodeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_NodeXY_tags_1) + /sizeof(asn_DEF_NodeXY_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NodeXY_1, + 2, /* Elements count */ + &asn_SPC_NodeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c b/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c new file mode 100644 index 000000000..c5aa6e5bc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/NumberOfParticipantsInCluster.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "NumberOfParticipantsInCluster.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NumberOfParticipantsInCluster_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NumberOfParticipantsInCluster_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "small" }, + { 2, 6, "medium" }, + { 3, 5, "large" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NumberOfParticipantsInCluster_enum2value_1[] = { + 3, /* large(3) */ + 2, /* medium(2) */ + 1, /* small(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NumberOfParticipantsInCluster_specs_1 = { + asn_MAP_NumberOfParticipantsInCluster_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NumberOfParticipantsInCluster_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NumberOfParticipantsInCluster_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NumberOfParticipantsInCluster = { + "NumberOfParticipantsInCluster", + "NumberOfParticipantsInCluster", + &asn_OP_NativeEnumerated, + asn_DEF_NumberOfParticipantsInCluster_tags_1, + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + asn_DEF_NumberOfParticipantsInCluster_tags_1, /* Same as above */ + sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1) + /sizeof(asn_DEF_NumberOfParticipantsInCluster_tags_1[0]), /* 1 */ + { &asn_OER_type_NumberOfParticipantsInCluster_constr_1, &asn_PER_type_NumberOfParticipantsInCluster_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NumberOfParticipantsInCluster_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c b/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c new file mode 100644 index 000000000..8dccf01e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OBJECT_IDENTIFIER.c @@ -0,0 +1,656 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include +#include /* for CHAR_BIT */ +#include + +/* + * OBJECT IDENTIFIER basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OBJECT_IDENTIFIER_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (6 << 2)) +}; +asn_TYPE_operation_t asn_OP_OBJECT_IDENTIFIER = { + ASN__PRIMITIVE_TYPE_free, + OBJECT_IDENTIFIER_print, + OCTET_STRING_compare, /* Implemented in terms of a string comparison */ + ber_decode_primitive, + der_encode_primitive, + OBJECT_IDENTIFIER_decode_xer, + OBJECT_IDENTIFIER_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + OBJECT_IDENTIFIER_decode_oer, + OBJECT_IDENTIFIER_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + OBJECT_IDENTIFIER_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OBJECT_IDENTIFIER = { + "OBJECT IDENTIFIER", + "OBJECT_IDENTIFIER", + &asn_OP_OBJECT_IDENTIFIER, + asn_DEF_OBJECT_IDENTIFIER_tags, + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + asn_DEF_OBJECT_IDENTIFIER_tags, /* Same as above */ + sizeof(asn_DEF_OBJECT_IDENTIFIER_tags) + / sizeof(asn_DEF_OBJECT_IDENTIFIER_tags[0]), + { 0, 0, OBJECT_IDENTIFIER_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + +int +OBJECT_IDENTIFIER_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + if(st && st->buf) { + if(st->size < 1) { + ASN__CTFAIL(app_key, td, sptr, + "%s: at least one numerical value " + "expected (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} + +static ssize_t +OBJECT_IDENTIFIER_get_first_arcs(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *arc0, asn_oid_arc_t *arc1) { + asn_oid_arc_t value; + + ssize_t rd = OBJECT_IDENTIFIER_get_single_arc(arcbuf, arcbuf_len, &value); + if(rd <= 0) return rd; + + if(value >= 80) { + *arc0 = 2; + *arc1 = value - 80; + } else if(value >= 40) { + *arc0 = 1; + *arc1 = value - 40; + } else { + *arc0 = 0; + *arc1 = value; + } + + return rd; +} + +ssize_t +OBJECT_IDENTIFIER_get_single_arc(const uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t *ret_value) { + const uint8_t *b = arcbuf; + const uint8_t *arcend = arcbuf + arcbuf_len; /* End of arc */ + + if(arcbuf == arcend) { + return 0; + } else { + asn_oid_arc_t accum; + asn_oid_arc_t upper_limit = (ASN_OID_ARC_MAX >> 7); + /* When the value reaches "upper_limit", it can take */ + /* at most one more digit. If it exceeds "upper_limit" */ + /* but there are more digits - it's an Overflow condition */ + /* Gather all bits into the accumulator */ + for(accum = 0; b < arcend; b++) { + accum = (accum << 7) | (*b & ~0x80); + if((*b & 0x80) == 0) { // no more digits + if(accum <= ASN_OID_ARC_MAX) { + *ret_value = accum; + return 1 + (b - arcbuf); + } else { + errno = ERANGE; /* Overflow */ + return -1; + } + } else { // to make sure we aren't wrapping around + if(accum > upper_limit) { + errno = ERANGE; /* Overflow */ + return -1; + } + } + } + errno = EINVAL; + return -1; + } + +} + +static ssize_t +OBJECT_IDENTIFIER__dump_body(const OBJECT_IDENTIFIER_t *st, + asn_app_consume_bytes_f *cb, void *app_key) { + char scratch[32]; + asn_oid_arc_t arc0, arc1; + size_t produced = 0; + size_t off = 0; + ssize_t rd; + int ret; + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + + ret = snprintf(scratch, sizeof(scratch), "%"PRIu32".%"PRIu32, arc0, arc1); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) + return -1; + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + assert(off <= st->size); + ret = snprintf(scratch, sizeof(scratch), ".%" PRIu32, arc); + if(ret >= (ssize_t)sizeof(scratch)) { + return -1; + } + produced += ret; + if(cb(scratch, ret, app_key) < 0) return -1; + } + } + + if(off != st->size) { + ASN_DEBUG("Could not scan to the end of Object Identifier"); + return -1; + } + + return produced; +} + +static enum xer_pbd_rval +OBJECT_IDENTIFIER__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, + const void *chunk_buf, size_t chunk_size) { + OBJECT_IDENTIFIER_t *st = (OBJECT_IDENTIFIER_t *)sptr; + const char *chunk_end = (const char *)chunk_buf + chunk_size; + const char *endptr; + asn_oid_arc_t s_arcs[10]; + asn_oid_arc_t *arcs = s_arcs; + ssize_t num_arcs; + ssize_t ret; + + (void)td; + + num_arcs = OBJECT_IDENTIFIER_parse_arcs( + (const char *)chunk_buf, chunk_size, arcs, + sizeof(s_arcs) / sizeof(s_arcs[0]), &endptr); + if(num_arcs < 0) { + /* Expecting more than zero arcs */ + return XPBD_BROKEN_ENCODING; + } else if(num_arcs == 0) { + return XPBD_NOT_BODY_IGNORE; + } + assert(endptr == chunk_end); + + if((size_t)num_arcs > sizeof(s_arcs)/sizeof(s_arcs[0])) { + arcs = (asn_oid_arc_t *)MALLOC(num_arcs * sizeof(asn_oid_arc_t)); + if(!arcs) return XPBD_SYSTEM_FAILURE; + ret = OBJECT_IDENTIFIER_parse_arcs((const char *)chunk_buf, chunk_size, + arcs, num_arcs, &endptr); + if(ret != num_arcs) + return XPBD_SYSTEM_FAILURE; /* assert?.. */ + } + + /* + * Convert arcs into BER representation. + */ + ret = OBJECT_IDENTIFIER_set_arcs(st, arcs, num_arcs); + if(arcs != s_arcs) FREEMEM(arcs); + + return ret ? XPBD_SYSTEM_FAILURE : XPBD_BODY_CONSUMED; +} + +asn_dec_rval_t +OBJECT_IDENTIFIER_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return xer_decode_primitive(opt_codec_ctx, td, + sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname, + buf_ptr, size, OBJECT_IDENTIFIER__xer_body_decode); +} + +asn_enc_rval_t +OBJECT_IDENTIFIER_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + asn_enc_rval_t er = {0,0,0}; + + (void)ilevel; + (void)flags; + + if(!st || !st->buf) { + ASN__ENCODE_FAILED; + } + + er.encoded = OBJECT_IDENTIFIER__dump_body(st, cb, app_key); + if(er.encoded < 0) ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +int +OBJECT_IDENTIFIER_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OBJECT_IDENTIFIER_t *st = (const OBJECT_IDENTIFIER_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(!st || !st->buf) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb("{ ", 2, app_key) < 0) + return -1; + + if(OBJECT_IDENTIFIER__dump_body(st, cb, app_key) < 0) { + return -1; + } + + return (cb(" }", 2, app_key) < 0) ? -1 : 0; +} + +ssize_t +OBJECT_IDENTIFIER_get_arcs(const OBJECT_IDENTIFIER_t *st, asn_oid_arc_t *arcs, + size_t arc_slots) { + asn_oid_arc_t arc0, arc1; + size_t num_arcs = 0; + size_t off; + ssize_t rd; + + if(!st || !st->buf) { + errno = EINVAL; + return -1; + } + + rd = OBJECT_IDENTIFIER_get_first_arcs(st->buf, st->size, &arc0, &arc1); + if(rd <= 0) { + return -1; + } + num_arcs = 2; + switch(arc_slots) { + default: + case 2: + arcs[1] = arc1; + /* Fall through */ + case 1: + arcs[0] = arc0; + /* Fall through */ + case 0: + break; + } + + for(off = rd; ; ) { + asn_oid_arc_t arc; + rd = OBJECT_IDENTIFIER_get_single_arc(st->buf + off, st->size - off, + &arc); + if(rd < 0) { + return -1; + } else if(rd == 0) { + /* No more arcs. */ + break; + } else { + off += rd; + if(num_arcs < arc_slots) { + arcs[num_arcs] = arc; + } + num_arcs++; + } + } + + if(off != st->size) { + return -1; + } + + return num_arcs; +} + + +/* + * Save the single value as an object identifier arc. + */ +ssize_t +OBJECT_IDENTIFIER_set_single_arc(uint8_t *arcbuf, size_t arcbuf_len, + asn_oid_arc_t value) { + /* + * The following conditions must hold: + * assert(arcbuf); + */ + uint8_t scratch[((sizeof(value) * CHAR_BIT + 6) / 7)]; + uint8_t *scratch_end = &scratch[sizeof(scratch)-1]; + uint8_t *b; + size_t result_len; + uint8_t mask; + + for(b = scratch_end, mask = 0; ; mask = 0x80, b--) { + *b = mask | (value & 0x7f); + value >>= 7; + if(!value) { + break; + } + } + + result_len = (scratch_end - b) + 1; + + if(result_len > arcbuf_len) { + return -1; + } + + memcpy(arcbuf, b, result_len); + + return result_len; +} + +int +OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *st, const asn_oid_arc_t *arcs, + size_t arc_slots) { + uint8_t *buf; + uint8_t *bp; + ssize_t wrote; + asn_oid_arc_t arc0; + asn_oid_arc_t arc1; + size_t size; + size_t i; + + if(!st || !arcs || arc_slots < 2) { + errno = EINVAL; + return -1; + } + + arc0 = arcs[0]; + arc1 = arcs[1]; + + if(arc0 <= 1) { + if(arc1 >= 40) { + /* 8.19.4: At most 39 subsequent values (including 0) */ + errno = ERANGE; + return -1; + } + } else if(arc0 == 2) { + if(arc1 > ASN_OID_ARC_MAX - 80) { + errno = ERANGE; + return -1; + } + } else if(arc0 > 2) { + /* 8.19.4: Only three values are allocated from the root node */ + errno = ERANGE; + return -1; + } + + /* + * After above tests it is known that the value of arc0 is completely + * trustworthy (0..2). However, the arc1's value is still meaningless. + */ + + /* + * Roughly estimate the maximum size necessary to encode these arcs. + * This estimation implicitly takes in account the following facts, + * that cancel each other: + * * the first two arcs are encoded in a single value. + * * the first value may require more space (+1 byte) + * * the value of the first arc which is in range (0..2) + */ + size = ((sizeof(asn_oid_arc_t) * CHAR_BIT + 6) / 7) * arc_slots; + bp = buf = (uint8_t *)MALLOC(size + 1); + if(!buf) { + /* ENOMEM */ + return -1; + } + + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arc0 * 40 + arc1); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + + for(i = 2; i < arc_slots; i++) { + wrote = OBJECT_IDENTIFIER_set_single_arc(bp, size, arcs[i]); + if(wrote <= 0) { + FREEMEM(buf); + return -1; + } + assert((size_t)wrote <= size); + bp += wrote; + size -= wrote; + } + + /* + * Replace buffer. + */ + st->size = bp - buf; + bp = st->buf; + st->buf = buf; + st->buf[st->size] = '\0'; + if(bp) FREEMEM(bp); + + return 0; +} + +ssize_t +OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, + asn_oid_arc_t *arcs, size_t arcs_count, + const char **opt_oid_text_end) { + size_t num_arcs = 0; + const char *oid_end; + enum { + ST_LEADSPACE, + ST_TAILSPACE, + ST_AFTERVALUE, /* Next character ought to be '.' or a space */ + ST_WAITDIGITS /* Next character is expected to be a digit */ + } state = ST_LEADSPACE; + + if(!oid_text || oid_txt_length < -1 || (arcs_count && !arcs)) { + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + errno = EINVAL; + return -1; + } + + if(oid_txt_length == -1) + oid_txt_length = strlen(oid_text); + +#define _OID_CAPTURE_ARC(oid_text, oid_end) \ + do { \ + const char *endp = oid_end; \ + unsigned long value; \ + switch(asn_strtoul_lim(oid_text, &endp, &value)) { \ + case ASN_STRTOX_EXTRA_DATA: \ + case ASN_STRTOX_OK: \ + if(value <= ASN_OID_ARC_MAX) { \ + if(num_arcs < arcs_count) arcs[num_arcs] = value; \ + num_arcs++; \ + oid_text = endp - 1; \ + break; \ + } \ + /* Fall through */ \ + case ASN_STRTOX_ERROR_RANGE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = ERANGE; \ + return -1; \ + case ASN_STRTOX_ERROR_INVAL: \ + case ASN_STRTOX_EXPECT_MORE: \ + if(opt_oid_text_end) *opt_oid_text_end = oid_text; \ + errno = EINVAL; \ + return -1; \ + } \ + } while(0) + + for(oid_end = oid_text + oid_txt_length; oid_text broken OID */ + return -1; + case ST_LEADSPACE: + case ST_WAITDIGITS: + _OID_CAPTURE_ARC(oid_text, oid_end); + state = ST_AFTERVALUE; + continue; + } + break; + default: + /* Unexpected symbols */ + state = ST_WAITDIGITS; + break; + } /* switch() */ + break; + } /* for() */ + + + if(opt_oid_text_end) *opt_oid_text_end = oid_text; + + /* Finalize last arc */ + switch(state) { + case ST_LEADSPACE: + return 0; /* No OID found in input data */ + case ST_WAITDIGITS: + errno = EINVAL; /* Broken OID */ + return -1; + case ST_AFTERVALUE: + case ST_TAILSPACE: + return num_arcs; + } + + errno = EINVAL; /* Broken OID */ + return -1; +} + +/* + * Generate values from the list of interesting values, or just a random + * value up to the upper limit. + */ +static asn_oid_arc_t +OBJECT_IDENTIFIER__biased_random_arc(asn_oid_arc_t upper_bound) { + const asn_oid_arc_t values[] = {0, 1, 127, 128, 129, 254, 255, 256}; + size_t idx; + + switch(asn_random_between(0, 2)) { + case 0: + idx = asn_random_between(0, sizeof(values) / sizeof(values[0]) - 1); + if(values[idx] < upper_bound) { + return values[idx]; + } + /* Fall through */ + case 1: + return asn_random_between(0, upper_bound); + case 2: + default: + return upper_bound; + } +} + +asn_random_fill_result_t +OBJECT_IDENTIFIER_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + OBJECT_IDENTIFIER_t *st; + asn_oid_arc_t arcs[5]; + size_t arcs_len = asn_random_between(2, 5); + size_t i; + + (void)constraints; + + if(max_length < arcs_len) return result_skipped; + + if(*sptr) { + st = *sptr; + } else { + st = CALLOC(1, sizeof(*st)); + } + + arcs[0] = asn_random_between(0, 2); + arcs[1] = OBJECT_IDENTIFIER__biased_random_arc( + arcs[0] <= 1 ? 39 : (ASN_OID_ARC_MAX - 80)); + for(i = 2; i < arcs_len; i++) { + arcs[i] = OBJECT_IDENTIFIER__biased_random_arc(ASN_OID_ARC_MAX); + } + + if(OBJECT_IDENTIFIER_set_arcs(st, arcs, arcs_len)) { + if(st != *sptr) { + ASN_STRUCT_FREE(*td, st); + } + return result_failed; + } + + *sptr = st; + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c b/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c new file mode 100644 index 000000000..469c906df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OCTET_STRING.c @@ -0,0 +1,2419 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* for .bits_unused member */ +#include + +/* + * OCTET STRING basic type description. + */ +static const ber_tlv_tag_t asn_DEF_OCTET_STRING_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_OCTET_STRING_specifics_t asn_SPC_OCTET_STRING_specs = { + sizeof(OCTET_STRING_t), + offsetof(OCTET_STRING_t, _asn_ctx), + ASN_OSUBV_STR +}; + +asn_TYPE_operation_t asn_OP_OCTET_STRING = { + OCTET_STRING_free, + OCTET_STRING_print, /* OCTET STRING generally means a non-ascii sequence */ + OCTET_STRING_compare, + OCTET_STRING_decode_ber, + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_hex, + OCTET_STRING_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, /* Unaligned PER decoder */ + OCTET_STRING_encode_uper, /* Unaligned PER encoder */ + OCTET_STRING_decode_aper, /* Aligned PER decoder */ + OCTET_STRING_encode_aper, /* Aligned PER encoder */ +#endif /* ASN_DISABLE_PER_SUPPORT */ + OCTET_STRING_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_OCTET_STRING = { + "OCTET STRING", /* Canonical name */ + "OCTET_STRING", /* XML tag name */ + &asn_OP_OCTET_STRING, + asn_DEF_OCTET_STRING_tags, + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + asn_DEF_OCTET_STRING_tags, /* Same as above */ + sizeof(asn_DEF_OCTET_STRING_tags) + / sizeof(asn_DEF_OCTET_STRING_tags[0]), + { 0, 0, asn_generic_no_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs +}; + +#undef _CH_PHASE +#undef NEXT_PHASE +#undef PREV_PHASE +#define _CH_PHASE(ctx, inc) do { \ + if(ctx->phase == 0) \ + ctx->context = 0; \ + ctx->phase += inc; \ + } while(0) +#define NEXT_PHASE(ctx) _CH_PHASE(ctx, +1) +#define PREV_PHASE(ctx) _CH_PHASE(ctx, -1) + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t tmprval; \ + tmprval.code = _code; \ + tmprval.consumed = consumed_myself; \ + return tmprval; \ + } while(0) + +#undef APPEND +#define APPEND(bufptr, bufsize) do { \ + size_t _bs = (bufsize); /* Append size */ \ + size_t _ns = ctx->context; /* Allocated now */ \ + size_t _es = st->size + _bs; /* Expected size */ \ + /* int is really a typeof(st->size): */ \ + if((int)_es < 0) RETURN(RC_FAIL); \ + if(_ns <= _es) { \ + void *ptr; \ + /* Be nice and round to the memory allocator */ \ + do { _ns = _ns ? _ns << 1 : 16; } \ + while(_ns <= _es); \ + /* int is really a typeof(st->size): */ \ + if((int)_ns < 0) RETURN(RC_FAIL); \ + ptr = REALLOC(st->buf, _ns); \ + if(ptr) { \ + st->buf = (uint8_t *)ptr; \ + ctx->context = _ns; \ + } else { \ + RETURN(RC_FAIL); \ + } \ + ASN_DEBUG("Reallocating into %ld", (long)_ns); \ + } \ + memcpy(st->buf + st->size, bufptr, _bs); \ + /* Convenient nul-termination */ \ + st->buf[_es] = '\0'; \ + st->size = _es; \ + } while(0) + +/* + * The main reason why ASN.1 is still alive is that too much time and effort + * is necessary for learning it more or less adequately, thus creating a gut + * necessity to demonstrate that acquired skill everywhere afterwards. + * No, I am not going to explain what the following stuff is. + */ +struct _stack_el { + ber_tlv_len_t left; /* What's left to read (or -1) */ + ber_tlv_len_t got; /* What was actually processed */ + unsigned cont_level; /* Depth of subcontainment */ + int want_nulls; /* Want null "end of content" octets? */ + int bits_chopped; /* Flag in BIT STRING mode */ + ber_tlv_tag_t tag; /* For debugging purposes */ + struct _stack_el *prev; + struct _stack_el *next; +}; +struct _stack { + struct _stack_el *tail; + struct _stack_el *cur_ptr; +}; + +static struct _stack_el * +OS__add_stack_el(struct _stack *st) { + struct _stack_el *nel; + + /* + * Reuse the old stack frame or allocate a new one. + */ + if(st->cur_ptr && st->cur_ptr->next) { + nel = st->cur_ptr->next; + nel->bits_chopped = 0; + nel->got = 0; + /* Retain the nel->cont_level, it's correct. */ + } else { + nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el)); + if(nel == NULL) + return NULL; + + if(st->tail) { + /* Increase a subcontainment depth */ + nel->cont_level = st->tail->cont_level + 1; + st->tail->next = nel; + } + nel->prev = st->tail; + st->tail = nel; + } + + st->cur_ptr = nel; + + return nel; +} + +static struct _stack * +_new_stack(void) { + return (struct _stack *)CALLOC(1, sizeof(struct _stack)); +} + +/* + * Decode OCTET STRING type. + */ +asn_dec_rval_t +OCTET_STRING_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + asn_dec_rval_t rval; + asn_struct_ctx_t *ctx; + ssize_t consumed_myself = 0; + struct _stack *stck; /* Expectations stack structure */ + struct _stack_el *sel = 0; /* Stack element */ + int tlv_constr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + + ASN_DEBUG("Decoding %s as %s (frame %ld)", + td->name, + (type_variant == ASN_OSUBV_STR) ? + "OCTET STRING" : "OS-SpecialCase", + (long)size); + + /* + * Create the string if does not exist. + */ + if(st == NULL) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) RETURN(RC_FAIL); + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + switch(ctx->phase) { + case 0: + /* + * Check tags. + */ + rval = ber_check_tags(opt_codec_ctx, td, ctx, + buf_ptr, size, tag_mode, -1, + &ctx->left, &tlv_constr); + if(rval.code != RC_OK) + return rval; + + if(tlv_constr) { + /* + * Complex operation, requires stack of expectations. + */ + ctx->ptr = _new_stack(); + if(!ctx->ptr) { + RETURN(RC_FAIL); + } + } else { + /* + * Jump into stackless primitive decoding. + */ + _CH_PHASE(ctx, 3); + if(type_variant == ASN_OSUBV_ANY && tag_mode != 1) + APPEND(buf_ptr, rval.consumed); + ADVANCE(rval.consumed); + goto phase3; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + phase1: + /* + * Fill the stack with expectations. + */ + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + do { + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_tag_t expected_tag; + ssize_t tl, ll, tlvl; + /* This one works even if (sel->left == -1) */ + size_t Left = ((!sel||(size_t)sel->left >= size) + ?size:(size_t)sel->left); + + + ASN_DEBUG("%p, s->l=%ld, s->wn=%ld, s->g=%ld\n", (void *)sel, + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)(sel?sel->got:0) + ); + if(sel && sel->left <= 0 && sel->want_nulls == 0) { + if(sel->prev) { + struct _stack_el *prev = sel->prev; + if(prev->left != -1) { + if(prev->left < sel->got) + RETURN(RC_FAIL); + prev->left -= sel->got; + } + prev->got += sel->got; + sel = stck->cur_ptr = prev; + if(!sel) break; + tlv_constr = 1; + continue; + } else { + sel = stck->cur_ptr = 0; + break; /* Nothing to wait */ + } + } + + tl = ber_fetch_tag(buf_ptr, Left, &tlv_tag); + ASN_DEBUG("fetch tag(size=%ld,L=%ld), %sstack, left=%ld, wn=%ld, tl=%ld", + (long)size, (long)Left, sel?"":"!", + (long)(sel?sel->left:0), + (long)(sel?sel->want_nulls:0), + (long)tl); + switch(tl) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr); + + ll = ber_fetch_length(tlv_constr, + (const char *)buf_ptr + tl,Left - tl,&tlv_len); + ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld", + ber_tlv_tag_string(tlv_tag), tlv_constr, + (long)Left, (long)tl, (long)tlv_len, (long)ll); + switch(ll) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + if(sel && sel->want_nulls + && ((const uint8_t *)buf_ptr)[0] == 0 + && ((const uint8_t *)buf_ptr)[1] == 0) + { + + ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls); + + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND("\0\0", 2); + + ADVANCE(2); + sel->got += 2; + if(sel->left != -1) { + sel->left -= 2; /* assert(sel->left >= 2) */ + } + + sel->want_nulls--; + if(sel->want_nulls == 0) { + /* Move to the next expectation */ + sel->left = 0; + tlv_constr = 1; + } + + continue; + } + + /* + * Set up expected tags, + * depending on ASN.1 type being decoded. + */ + switch(type_variant) { + case ASN_OSUBV_BIT: + /* X.690: 8.6.4.1, NOTE 2 */ + /* Fall through */ + case ASN_OSUBV_STR: + default: + if(sel) { + unsigned level = sel->cont_level; + if(level < td->all_tags_count) { + expected_tag = td->all_tags[level]; + break; + } else if(td->all_tags_count) { + expected_tag = td->all_tags + [td->all_tags_count - 1]; + break; + } + /* else, Fall through */ + } + /* Fall through */ + case ASN_OSUBV_ANY: + expected_tag = tlv_tag; + break; + } + + + if(tlv_tag != expected_tag) { + char buf[2][32]; + ber_tlv_tag_snprint(tlv_tag, + buf[0], sizeof(buf[0])); + ber_tlv_tag_snprint(td->tags[td->tags_count-1], + buf[1], sizeof(buf[1])); + ASN_DEBUG("Tag does not match expectation: %s != %s", + buf[0], buf[1]); + RETURN(RC_FAIL); + } + + tlvl = tl + ll; /* Combined length of T and L encoding */ + if((tlv_len + tlvl) < 0) { + /* tlv_len value is too big */ + ASN_DEBUG("TLV encoding + length (%ld) is too big", + (long)tlv_len); + RETURN(RC_FAIL); + } + + /* + * Append a new expectation. + */ + sel = OS__add_stack_el(stck); + if(!sel) RETURN(RC_FAIL); + + sel->tag = tlv_tag; + + sel->want_nulls = (tlv_len==-1); + if(sel->prev && sel->prev->left != -1) { + /* Check that the parent frame is big enough */ + if(sel->prev->left < tlvl + (tlv_len==-1?0:tlv_len)) + RETURN(RC_FAIL); + if(tlv_len == -1) + sel->left = sel->prev->left - tlvl; + else + sel->left = tlv_len; + } else { + sel->left = tlv_len; + } + if(type_variant == ASN_OSUBV_ANY + && (tag_mode != 1 || sel->cont_level)) + APPEND(buf_ptr, tlvl); + sel->got += tlvl; + ADVANCE(tlvl); + + ASN_DEBUG("+EXPECT2 got=%ld left=%ld, wn=%d, clvl=%u", + (long)sel->got, (long)sel->left, + sel->want_nulls, sel->cont_level); + + } while(tlv_constr); + if(sel == NULL) { + /* Finished operation, "phase out" */ + ASN_DEBUG("Phase out"); + _CH_PHASE(ctx, +3); + break; + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 2: + stck = (struct _stack *)ctx->ptr; + sel = stck->cur_ptr; + ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d", + (long)sel->left, (long)size, (long)sel->got, + sel->want_nulls); + { + ber_tlv_len_t len; + + assert(sel->left >= 0); + + len = ((ber_tlv_len_t)size < sel->left) + ? (ber_tlv_len_t)size : sel->left; + if(len > 0) { + if(type_variant == ASN_OSUBV_BIT + && sel->bits_chopped == 0) { + /* Put the unused-bits-octet away */ + st->bits_unused = *(const uint8_t *)buf_ptr; + APPEND(((const char *)buf_ptr+1), (len - 1)); + sel->bits_chopped = 1; + } else { + APPEND(buf_ptr, len); + } + ADVANCE(len); + sel->left -= len; + sel->got += len; + } + + if(sel->left) { + ASN_DEBUG("OS left %ld, size = %ld, wn=%d\n", + (long)sel->left, (long)size, sel->want_nulls); + RETURN(RC_WMORE); + } + + PREV_PHASE(ctx); + goto phase1; + } + break; + case 3: + phase3: + /* + * Primitive form, no stack required. + */ + assert(ctx->left >= 0); + + if(size < (size_t)ctx->left) { + if(!size) RETURN(RC_WMORE); + if(type_variant == ASN_OSUBV_BIT && !ctx->context) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, size); + assert(ctx->context > 0); + ctx->left -= size; + ADVANCE(size); + RETURN(RC_WMORE); + } else { + if(type_variant == ASN_OSUBV_BIT + && !ctx->context && ctx->left) { + st->bits_unused = *(const uint8_t *)buf_ptr; + ctx->left--; + ADVANCE(1); + } + APPEND(buf_ptr, ctx->left); + ADVANCE(ctx->left); + ctx->left = 0; + + NEXT_PHASE(ctx); + } + break; + } + + if(sel) { + ASN_DEBUG("3sel p=%p, wn=%d, l=%ld, g=%ld, size=%ld", + (void *)sel->prev, sel->want_nulls, + (long)sel->left, (long)sel->got, (long)size); + if(sel->prev || sel->want_nulls > 1 || sel->left > 0) { + RETURN(RC_WMORE); + } + } + + /* + * BIT STRING-specific processing. + */ + if(type_variant == ASN_OSUBV_BIT) { + if(st->size) { + if(st->bits_unused < 0 || st->bits_unused > 7) { + RETURN(RC_FAIL); + } + /* Finalize BIT STRING: zero out unused bits. */ + st->buf[st->size-1] &= 0xff << st->bits_unused; + } else { + if(st->bits_unused) { + RETURN(RC_FAIL); + } + } + } + + ASN_DEBUG("Took %ld bytes to encode %s: [%s]:%ld", + (long)consumed_myself, td->name, + (type_variant == ASN_OSUBV_STR) ? (char *)st->buf : "", + (long)st->size); + + + RETURN(RC_OK); +} + +/* + * Encode OCTET STRING type using DER. + */ +asn_enc_rval_t +OCTET_STRING_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = { 0, 0, 0 }; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + enum asn_OS_Subvariant type_variant = specs->subvariant; + int fix_last_byte = 0; + + ASN_DEBUG("%s %s as OCTET STRING", + cb?"Estimating":"Encoding", td->name); + + /* + * Write tags. + */ + if(type_variant != ASN_OSUBV_ANY || tag_mode == 1) { + er.encoded = der_write_tags(td, + (type_variant == ASN_OSUBV_BIT) + st->size, + tag_mode, type_variant == ASN_OSUBV_ANY, tag, + cb, app_key); + if(er.encoded == -1) { + er.failed_type = td; + er.structure_ptr = sptr; + return er; + } + } else { + /* Disallow: [] IMPLICIT ANY */ + assert(type_variant != ASN_OSUBV_ANY || tag_mode != -1); + er.encoded = 0; + } + + if(!cb) { + er.encoded += (type_variant == ASN_OSUBV_BIT) + st->size; + ASN__ENCODED_OK(er); + } + + /* + * Prepare to deal with the last octet of BIT STRING. + */ + if(type_variant == ASN_OSUBV_BIT) { + uint8_t b = st->bits_unused & 0x07; + if(b && st->size) fix_last_byte = 1; + ASN__CALLBACK(&b, 1); + } + + /* Invoke callback for the main part of the buffer */ + ASN__CALLBACK(st->buf, st->size - fix_last_byte); + + /* The last octet should be stripped off the unused bits */ + if(fix_last_byte) { + uint8_t b = st->buf[st->size-1] & (0xff << st->bits_unused); + ASN__CALLBACK(&b, 1); + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +asn_enc_rval_t +OCTET_STRING_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + if(flags & XER_F_CANONICAL) { + char *scend = scratch + (sizeof(scratch) - 2); + for(; buf < end; buf++) { + if(p >= scend) { + ASN__CALLBACK(scratch, p - scratch); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + } + + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + } else { + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + ASN__CALLBACK(scratch, p-scratch); + p = scratch; + ASN__TEXT_INDENT(1, ilevel); + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + if(p - scratch) { + p--; /* Remove the tail space */ + ASN__CALLBACK(scratch, p-scratch); /* Dump the rest */ + if(st->size > 16) + ASN__TEXT_INDENT(1, ilevel-1); + } + } + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +static const struct OCTET_STRING__xer_escape_table_s { + const char *string; + int size; +} OCTET_STRING__xer_escape_table[] = { +#define OSXET(s) { s, sizeof(s) - 1 } + OSXET("\074\156\165\154\057\076"), /* */ + OSXET("\074\163\157\150\057\076"), /* */ + OSXET("\074\163\164\170\057\076"), /* */ + OSXET("\074\145\164\170\057\076"), /* */ + OSXET("\074\145\157\164\057\076"), /* */ + OSXET("\074\145\156\161\057\076"), /* */ + OSXET("\074\141\143\153\057\076"), /* */ + OSXET("\074\142\145\154\057\076"), /* */ + OSXET("\074\142\163\057\076"), /* */ + OSXET("\011"), /* \t */ + OSXET("\012"), /* \n */ + OSXET("\074\166\164\057\076"), /* */ + OSXET("\074\146\146\057\076"), /* */ + OSXET("\015"), /* \r */ + OSXET("\074\163\157\057\076"), /* */ + OSXET("\074\163\151\057\076"), /* */ + OSXET("\074\144\154\145\057\076"), /* */ + OSXET("\074\144\143\061\057\076"), /* */ + OSXET("\074\144\143\062\057\076"), /* */ + OSXET("\074\144\143\063\057\076"), /* */ + OSXET("\074\144\143\064\057\076"), /* */ + OSXET("\074\156\141\153\057\076"), /* */ + OSXET("\074\163\171\156\057\076"), /* */ + OSXET("\074\145\164\142\057\076"), /* */ + OSXET("\074\143\141\156\057\076"), /* */ + OSXET("\074\145\155\057\076"), /* */ + OSXET("\074\163\165\142\057\076"), /* */ + OSXET("\074\145\163\143\057\076"), /* */ + OSXET("\074\151\163\064\057\076"), /* */ + OSXET("\074\151\163\063\057\076"), /* */ + OSXET("\074\151\163\062\057\076"), /* */ + OSXET("\074\151\163\061\057\076"), /* */ + { 0, 0 }, /* " " */ + { 0, 0 }, /* ! */ + { 0, 0 }, /* \" */ + { 0, 0 }, /* # */ + { 0, 0 }, /* $ */ + { 0, 0 }, /* % */ + OSXET("\046\141\155\160\073"), /* & */ + { 0, 0 }, /* ' */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* ()*+,-./ */ + {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, /* 01234567 */ + {0,0},{0,0},{0,0},{0,0}, /* 89:; */ + OSXET("\046\154\164\073"), /* < */ + { 0, 0 }, /* = */ + OSXET("\046\147\164\073"), /* > */ +}; + +static int +OS__check_escaped_control_char(const void *buf, int size) { + size_t i; + /* + * Inefficient algorithm which translates the escape sequences + * defined above into characters. Returns -1 if not found. + * TODO: replace by a faster algorithm (bsearch(), hash or + * nested table lookups). + */ + for(i = 0; i < 32 /* Don't spend time on the bottom half */; i++) { + const struct OCTET_STRING__xer_escape_table_s *el; + el = &OCTET_STRING__xer_escape_table[i]; + if(el->size == size && memcmp(buf, el->string, size) == 0) + return i; + } + return -1; +} + +static int +OCTET_STRING__handle_control_chars(void *struct_ptr, const void *chunk_buf, size_t chunk_size) { + /* + * This might be one of the escape sequences + * for control characters. Check it out. + * #11.15.5 + */ + int control_char = OS__check_escaped_control_char(chunk_buf,chunk_size); + if(control_char >= 0) { + OCTET_STRING_t *st = (OCTET_STRING_t *)struct_ptr; + void *p = REALLOC(st->buf, st->size + 2); + if(p) { + st->buf = (uint8_t *)p; + st->buf[st->size++] = control_char; + st->buf[st->size] = '\0'; /* nul-termination */ + return 0; + } + } + + return -1; /* No, it's not */ +} + +asn_enc_rval_t +OCTET_STRING_encode_xer_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + uint8_t *buf, *end; + uint8_t *ss; /* Sequence start */ + ssize_t encoded_len = 0; + + (void)ilevel; /* Unused argument */ + (void)flags; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + buf = st->buf; + end = buf + st->size; + for(ss = buf; buf < end; buf++) { + unsigned int ch = *buf; + int s_len; /* Special encoding sequence length */ + + /* + * Escape certain characters: X.680/11.15 + */ + if(ch < sizeof(OCTET_STRING__xer_escape_table) + /sizeof(OCTET_STRING__xer_escape_table[0]) + && (s_len = OCTET_STRING__xer_escape_table[ch].size)) { + if(((buf - ss) && cb(ss, buf - ss, app_key) < 0) + || cb(OCTET_STRING__xer_escape_table[ch].string, s_len, + app_key) < 0) + ASN__ENCODE_FAILED; + encoded_len += (buf - ss) + s_len; + ss = buf + 1; + } + } + + encoded_len += (buf - ss); + if((buf - ss) && cb(ss, buf - ss, app_key) < 0) + ASN__ENCODE_FAILED; + + er.encoded = encoded_len; + ASN__ENCODED_OK(er); +} + +/* + * Convert from hexadecimal format (cstring): "AB CD EF" + */ +static ssize_t OCTET_STRING__convert_hexadecimal(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *chunk_stop = (const char *)chunk_buf; + const char *p = chunk_stop; + const char *pend = p + chunk_size; + unsigned int clv = 0; + int half = 0; /* Half bit */ + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 1) / 2; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * If something like " a b c " appears here, the " a b":3 will be + * converted, and the rest skipped. That is, unless buf_size is greater + * than chunk_size, then it'll be equivalent to "ABC0". + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + continue; + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + clv = (clv << 4) + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + clv = (clv << 4) + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + clv = (clv << 4) + (ch - 0x61 + 10); + break; + default: + *buf = 0; /* JIC */ + return -1; + } + if(half++) { + half = 0; + *buf++ = clv; + chunk_stop = p + 1; + } + } + + /* + * Check partial decoding. + */ + if(half) { + if(have_more) { + /* + * Partial specification is fine, + * because no more more PXER_TEXT data is available. + */ + *buf++ = clv << 4; + chunk_stop = p; + } + } else { + chunk_stop = p; + } + + st->size = buf - st->buf; /* Adjust the buffer size */ + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return (chunk_stop - (const char *)chunk_buf); /* Converted size */ +} + +/* + * Convert from binary format: "00101011101" + */ +static ssize_t OCTET_STRING__convert_binary(void *sptr, const void *chunk_buf, size_t chunk_size, int have_more) { + BIT_STRING_t *st = (BIT_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + int bits_unused = st->bits_unused & 0x7; + uint8_t *buf; + + /* Reallocate buffer according to high cap estimation */ + size_t new_size = st->size + (chunk_size + 7) / 8; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + (void)have_more; + + if(bits_unused == 0) + bits_unused = 8; + else if(st->size) + buf--; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + switch(ch) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* Ignore whitespace */ + break; + case 0x30: + case 0x31: + if(bits_unused-- <= 0) { + *++buf = 0; /* Clean the cell */ + bits_unused = 7; + } + *buf |= (ch&1) << bits_unused; + break; + default: + st->bits_unused = bits_unused; + return -1; + } + } + + if(bits_unused == 8) { + st->size = buf - st->buf; + st->bits_unused = 0; + } else { + st->size = buf - st->buf + 1; + st->bits_unused = bits_unused; + } + + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Something like strtod(), but with stricter rules. + */ +static int +OS__strtoent(int base, const char *buf, const char *end, int32_t *ret_value) { + const int32_t last_unicode_codepoint = 0x10ffff; + int32_t val = 0; + const char *p; + + for(p = buf; p < end; p++) { + int ch = *p; + + switch(ch) { + case 0x30: case 0x31: case 0x32: case 0x33: case 0x34: /*01234*/ + case 0x35: case 0x36: case 0x37: case 0x38: case 0x39: /*56789*/ + val = val * base + (ch - 0x30); + break; + case 0x41: case 0x42: case 0x43: /* ABC */ + case 0x44: case 0x45: case 0x46: /* DEF */ + val = val * base + (ch - 0x41 + 10); + break; + case 0x61: case 0x62: case 0x63: /* abc */ + case 0x64: case 0x65: case 0x66: /* def */ + val = val * base + (ch - 0x61 + 10); + break; + case 0x3b: /* ';' */ + *ret_value = val; + return (p - buf) + 1; + default: + return -1; /* Character set error */ + } + + /* Value exceeds the Unicode range. */ + if(val > last_unicode_codepoint) { + return -1; + } + } + + *ret_value = -1; + return (p - buf); +} + +/* + * Convert from the plain UTF-8 format, expanding entity references: "2 < 3" + */ +static ssize_t +OCTET_STRING__convert_entrefs(void *sptr, const void *chunk_buf, + size_t chunk_size, int have_more) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + uint8_t *buf; + + /* Reallocate buffer */ + size_t new_size = st->size + chunk_size; + void *nptr = REALLOC(st->buf, new_size + 1); + if(!nptr) return -1; + st->buf = (uint8_t *)nptr; + buf = st->buf + st->size; + + /* + * Convert series of 0 and 1 into the octet string. + */ + for(; p < pend; p++) { + int ch = *(const unsigned char *)p; + int len; /* Length of the rest of the chunk */ + + if(ch != 0x26 /* '&' */) { + *buf++ = ch; + continue; /* That was easy... */ + } + + /* + * Process entity reference. + */ + len = chunk_size - (p - (const char *)chunk_buf); + if(len == 1 /* "&" */) goto want_more; + if(p[1] == 0x23 /* '#' */) { + const char *pval; /* Pointer to start of digits */ + int32_t val = 0; /* Entity reference value */ + int base; + + if(len == 2 /* "&#" */) goto want_more; + if(p[2] == 0x78 /* 'x' */) + pval = p + 3, base = 16; + else + pval = p + 2, base = 10; + len = OS__strtoent(base, pval, p + len, &val); + if(len == -1) { + /* Invalid charset. Just copy verbatim. */ + *buf++ = ch; + continue; + } + if(!len || pval[len-1] != 0x3b) goto want_more; + assert(val > 0); + p += (pval - p) + len - 1; /* Advance past entref */ + + if(val < 0x80) { + *buf++ = (char)val; + } else if(val < 0x800) { + *buf++ = 0xc0 | ((val >> 6)); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x10000) { + *buf++ = 0xe0 | ((val >> 12)); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x200000) { + *buf++ = 0xf0 | ((val >> 18)); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else if(val < 0x4000000) { + *buf++ = 0xf8 | ((val >> 24)); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } else { + *buf++ = 0xfc | ((val >> 30) & 0x1); + *buf++ = 0x80 | ((val >> 24) & 0x3f); + *buf++ = 0x80 | ((val >> 18) & 0x3f); + *buf++ = 0x80 | ((val >> 12) & 0x3f); + *buf++ = 0x80 | ((val >> 6) & 0x3f); + *buf++ = 0x80 | ((val & 0x3f)); + } + } else { + /* + * Ugly, limited parsing of & > < + */ + char *sc = (char *)memchr(p, 0x3b, len > 5 ? 5 : len); + if(!sc) goto want_more; + if((sc - p) == 4 + && p[1] == 0x61 /* 'a' */ + && p[2] == 0x6d /* 'm' */ + && p[3] == 0x70 /* 'p' */) { + *buf++ = 0x26; + p = sc; + continue; + } + if((sc - p) == 3) { + if(p[1] == 0x6c) { + *buf = 0x3c; /* '<' */ + } else if(p[1] == 0x67) { + *buf = 0x3e; /* '>' */ + } else { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + if(p[2] != 0x74) { + /* Unsupported entity reference */ + *buf++ = ch; + continue; + } + buf++; + p = sc; + continue; + } + /* Unsupported entity reference */ + *buf++ = ch; + } + + continue; + want_more: + if(have_more) { + /* + * We know that no more data (of the same type) + * is coming. Copy the rest verbatim. + */ + *buf++ = ch; + continue; + } + chunk_size = (p - (const char *)chunk_buf); + /* Processing stalled: need more data */ + break; + } + + st->size = buf - st->buf; + assert(st->size <= new_size); + st->buf[st->size] = 0; /* Courtesy termination */ + + return chunk_size; /* Converted in full */ +} + +/* + * Decode OCTET STRING from the XML element's body. + */ +static asn_dec_rval_t +OCTET_STRING__decode_xer( + const asn_codec_ctx_t *opt_codec_ctx, const asn_TYPE_descriptor_t *td, + void **sptr, const char *opt_mname, const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size), + ssize_t (*body_receiver)(void *struct_ptr, const void *chunk_buf, + size_t chunk_size, int have_more)) { + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t *ctx; /* Per-structure parser context */ + asn_dec_rval_t rval; /* Return value from the decoder */ + int st_allocated; + + /* + * Create the string if does not exist. + */ + if(!st) { + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + *sptr = (void *)st; + if(!st) goto sta_failed; + st_allocated = 1; + } else { + st_allocated = 0; + } + if(!st->buf) { + /* This is separate from above section */ + st->buf = (uint8_t *)CALLOC(1, 1); + if(!st->buf) { + if(st_allocated) { + *sptr = 0; + goto stb_failed; + } else { + goto sta_failed; + } + } + } + + /* Restore parsing context */ + ctx = (asn_struct_ctx_t *)(((char *)*sptr) + specs->ctx_offset); + + return xer_decode_general(opt_codec_ctx, ctx, *sptr, xml_tag, + buf_ptr, size, opt_unexpected_tag_decoder, body_receiver); + +stb_failed: + FREEMEM(st); +sta_failed: + rval.code = RC_FAIL; + rval.consumed = 0; + return rval; +} + +/* + * Decode OCTET STRING from the hexadecimal data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_hex(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, OCTET_STRING__convert_hexadecimal); +} + +/* + * Decode OCTET STRING from the binary (0/1) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_binary(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, 0, OCTET_STRING__convert_binary); +} + +/* + * Decode OCTET STRING from the string (ASCII/UTF-8) data. + */ +asn_dec_rval_t +OCTET_STRING_decode_xer_utf8(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const char *opt_mname, const void *buf_ptr, + size_t size) { + return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname, + buf_ptr, size, + OCTET_STRING__handle_control_chars, + OCTET_STRING__convert_entrefs); +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +static int +OCTET_STRING_per_get_characters(asn_per_data_t *po, uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Expanding %d characters into (%ld..%ld):%d", + (int)units, lb, ub, unit_bits); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Decode without translation */ + lb = 0; + } else if(pc && pc->code2value) { + if(unit_bits > 16) + return 1; /* FATAL: can't have constrained + * UniversalString with more than + * 16 million code points */ + for(; buf < end; buf += bpc) { + int value; + int code = per_get_few_bits(po, unit_bits); + if(code < 0) return -1; /* WMORE */ + value = pc->code2value(code); + if(value < 0) { + ASN_DEBUG("Code %d (0x%02x) is" + " not in map (%ld..%ld)", + code, code, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = value; break; + case 2: buf[0] = value >> 8; buf[1] = value; break; + case 4: buf[0] = value >> 24; buf[1] = value >> 16; + buf[2] = value >> 8; buf[3] = value; break; + } + } + return 0; + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_get_many_bits(po, buf, 0, unit_bits * units); + } + + for(; buf < end; buf += bpc) { + int32_t code = per_get_few_bits(po, unit_bits); + int32_t ch = code + lb; + if(code < 0) return -1; /* WMORE */ + if(ch > ub) { + ASN_DEBUG("Code %d is out of range (%ld..%ld)", + ch, lb, ub); + return 1; /* FATAL */ + } + switch(bpc) { + case 1: *buf = ch; break; + case 2: buf[0] = ch >> 8; buf[1] = ch; break; + case 4: buf[0] = ch >> 24; buf[1] = ch >> 16; + buf[2] = ch >> 8; buf[3] = ch; break; + } + } + + return 0; +} + +static int +OCTET_STRING_per_put_characters(asn_per_outp_t *po, const uint8_t *buf, + size_t units, unsigned int bpc, unsigned int unit_bits, + long lb, long ub, const asn_per_constraints_t *pc) { + const uint8_t *end = buf + units * bpc; + + ASN_DEBUG("Squeezing %d characters into (%ld..%ld):%d (%d bpc)", + (int)units, lb, ub, unit_bits, bpc); + + /* X.691: 27.5.4 */ + if((unsigned long)ub <= ((unsigned long)2 << (unit_bits - 1))) { + /* Encode as is */ + lb = 0; + } else if(pc && pc->value2code) { + for(; buf < end; buf += bpc) { + int code; + uint32_t value; + switch(bpc) { + case 1: value = *(const uint8_t *)buf; break; + case 2: value = (buf[0] << 8) | buf[1]; break; + case 4: value = (buf[0] << 24) | (buf[1] << 16) + | (buf[2] << 8) | buf[3]; break; + default: return -1; + } + code = pc->value2code(value); + if(code < 0) { + ASN_DEBUG("Character %d (0x%02x) is" + " not in map (%ld..%ld)", + *buf, *buf, lb, ub); + return -1; + } + if(per_put_few_bits(po, code, unit_bits)) + return -1; + } + } + + /* Shortcut the no-op copying to the aligned structure */ + if(lb == 0 && (unit_bits == 8 * bpc)) { + return per_put_many_bits(po, buf, unit_bits * units); + } + + for(ub -= lb; buf < end; buf += bpc) { + int ch; + uint32_t value; + switch(bpc) { + case 1: + value = *(const uint8_t *)buf; + break; + case 2: + value = (buf[0] << 8) | buf[1]; + break; + case 4: + value = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]; + break; + default: + return -1; + } + ch = value - lb; + if(ch < 0 || ch > ub) { + ASN_DEBUG("Character %d (0x%02x) is out of range (%ld..%ld)", *buf, + value, lb, ub + lb); + return -1; + } + if(per_put_few_bits(po, ch, unit_bits)) return -1; + } + + return 0; +} + +static asn_per_constraints_t asn_DEF_OCTET_STRING_constraints = { + { APC_CONSTRAINED, 8, 8, 0, 255 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, + 0, 0 +}; + +asn_dec_rval_t +OCTET_STRING_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = + constraints ? constraints : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); + break; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + if(bpc) { + ASN_DEBUG("Encoding OCTET STRING size %ld", + csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Encoding BIT STRING size %ld", + csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + void *p; + int ret; + + /* Get the PER length */ + raw_len = uper_get_length(pd, csiz->effective_bits, csiz->lower_bound, + &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + if(raw_len == 0 && st->buf) break; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + len_bytes = raw_len * bpc; + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + ret = OCTET_STRING_per_get_characters(pd, &st->buf[st->size], raw_len, + bpc, unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + size_t size_in_units; + const uint8_t *buf; + int ret; + enum { + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + case ASN_OSUBV_BIT: + ASN__ENCODE_FAILED; + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_CHAR; + size_in_units = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + size_in_units = st->size >> 1; + if(st->size & 1) { + ASN_DEBUG("%s string size is not modulo 2", td->name); + ASN__ENCODE_FAILED; + } + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + size_in_units = st->size >> 2; + if(st->size & 3) { + ASN_DEBUG("%s string size is not modulo 4", td->name); + ASN__ENCODE_FAILED; + } + break; + } + + ASN_DEBUG("Encoding %s into %" ASN_PRI_SIZE " units of %d bits" + " (%ld..%ld, effective %d)%s", + td->name, size_in_units, unit_bits, + csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out whether size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((ssize_t)size_in_units < csiz->lower_bound + || (ssize_t)size_in_units > csiz->upper_bound) { + if(ct_extensible) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else { + ASN__ENCODE_FAILED; + } + } + } else { + inext = 0; + } + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + if(csiz->effective_bits >= 0 && !inext) { + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes (%ld), length in %d bits", st->size, + size_in_units - csiz->lower_bound, csiz->effective_bits); + ret = per_put_few_bits(po, size_in_units - csiz->lower_bound, + csiz->effective_bits); + if(ret) ASN__ENCODE_FAILED; + ret = OCTET_STRING_per_put_characters(po, st->buf, size_in_units, bpc, + unit_bits, cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " bytes", st->size); + + buf = st->buf; + ASN_DEBUG("Encoding %" ASN_PRI_SIZE " in units", size_in_units); + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size_in_units, &need_eom); + if(may_save < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %" ASN_PRI_SSIZE " of %" ASN_PRI_SIZE "%s", may_save, size_in_units, + need_eom ? ",+EOM" : ""); + + ret = OCTET_STRING_per_put_characters(po, buf, may_save, bpc, unit_bits, + cval->lower_bound, + cval->upper_bound, pc); + if(ret) ASN__ENCODE_FAILED; + + buf += may_save * bpc; + size_in_units -= may_save; + assert(!(may_save & 0x07) || !size_in_units); + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } while(size_in_units); + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +OCTET_STRING_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + asn_dec_rval_t rval = { RC_OK, 0 }; + BIT_STRING_t *st = (BIT_STRING_t *)*sptr; + ssize_t consumed_myself = 0; + int repeat; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + + (void)opt_codec_ctx; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + + switch(specs->subvariant) { + default: +/* case ASN_OSUBV_ANY: + ASN_DEBUG("Unrecognized subvariant %d", specs->subvariant); + RETURN(RC_FAIL); +*/ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; +*/ + bpc = OS__BPC_CHAR; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + break; + } + + /* + * Allocate the string. + */ + if(!st) { + st = (BIT_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) RETURN(RC_FAIL); + } + + ASN_DEBUG("PER Decoding %s size %ld .. %ld bits %d", + csiz->flags & APC_EXTENSIBLE ? "extensible" : "non-extensible", + csiz->lower_bound, csiz->upper_bound, csiz->effective_bits); + + if(csiz->flags & APC_EXTENSIBLE) { + int inext = per_get_few_bits(pd, 1); + if(inext < 0) RETURN(RC_WMORE); + if(inext) { + csiz = &asn_DEF_OCTET_STRING_constraints.size; + cval = &asn_DEF_OCTET_STRING_constraints.value; + unit_bits = canonical_unit_bits; + } + } + + if(csiz->effective_bits >= 0) { + FREEMEM(st->buf); + if(bpc) { + st->size = csiz->upper_bound * bpc; + } else { + st->size = (csiz->upper_bound + 7) >> 3; + } + st->buf = (uint8_t *)MALLOC(st->size + 1); + if(!st->buf) { st->size = 0; RETURN(RC_FAIL); } + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits == 0) { + int ret; + /* X.691 #16 NOTE 1 for fixed length (<= 16 bits) strings */ + if (st->size > 2 || csiz->range_bits != 0) { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + if(bpc) { + ASN_DEBUG("Decoding OCTET STRING size %ld", + csiz->upper_bound); + ret = OCTET_STRING_per_get_characters(pd, st->buf, + csiz->upper_bound, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ASN_DEBUG("Decoding BIT STRING size %ld", + csiz->upper_bound); + ret = per_get_many_bits(pd, st->buf, 0, + unit_bits * csiz->upper_bound); + } + if(ret < 0) RETURN(RC_WMORE); + consumed_myself += unit_bits * csiz->upper_bound; + st->buf[st->size] = 0; + if(bpc == 0) { + int ubs = (csiz->upper_bound & 0x7); + st->bits_unused = ubs ? 8 - ubs : 0; + } + RETURN(RC_OK); + } + + st->size = 0; + do { + ssize_t raw_len; + ssize_t len_bytes; + ssize_t len_bits; + void *p; + int ret; + + repeat = 0; + /* Get the PER length */ + if (csiz->upper_bound - csiz->lower_bound == 0) + /* Indefinite length case */ + raw_len = aper_get_length(pd, -1, csiz->effective_bits, &repeat); + else + raw_len = aper_get_length(pd, csiz->upper_bound - csiz->lower_bound + 1, csiz->effective_bits, &repeat); + if(raw_len < 0) RETURN(RC_WMORE); + raw_len += csiz->lower_bound; + + ASN_DEBUG("Got PER length eb %ld, len %ld, %s (%s)", + (long)csiz->effective_bits, (long)raw_len, + repeat ? "repeat" : "once", td->name); + + /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings */ + if ((raw_len > 2) || (csiz->upper_bound > 2) || (csiz->range_bits != 0)) + { + if (aper_get_align(pd) < 0) + RETURN(RC_FAIL); + } + + if(bpc) { + len_bytes = raw_len * bpc; + len_bits = len_bytes * unit_bits; + } else { + len_bits = raw_len; + len_bytes = (len_bits + 7) >> 3; + if(len_bits & 0x7) + st->bits_unused = 8 - (len_bits & 0x7); + /* len_bits be multiple of 16K if repeat is set */ + } + p = REALLOC(st->buf, st->size + len_bytes + 1); + if(!p) RETURN(RC_FAIL); + st->buf = (uint8_t *)p; + + if(bpc) { + ret = OCTET_STRING_per_get_characters(pd, + &st->buf[st->size], raw_len, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + if(ret > 0) RETURN(RC_FAIL); + } else { + ret = per_get_many_bits(pd, &st->buf[st->size], + 0, len_bits); + } + if(ret < 0) RETURN(RC_WMORE); + st->size += len_bytes; + } while(repeat); + st->buf[st->size] = 0; /* nul-terminate */ + + return rval; +} + +asn_enc_rval_t +OCTET_STRING_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const asn_per_constraints_t *pc = constraints ? constraints + : td->encoding_constraints.per_constraints; + const asn_per_constraint_t *cval; + const asn_per_constraint_t *csiz; + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + asn_enc_rval_t er = { 0, 0, 0 }; + int inext = 0; /* Lies not within extension root */ + unsigned int unit_bits; + unsigned int canonical_unit_bits; + unsigned int sizeinunits; + const uint8_t *buf; + int ret; + enum { + OS__BPC_BIT = 0, + OS__BPC_CHAR = 1, + OS__BPC_U16 = 2, + OS__BPC_U32 = 4 + } bpc; /* Bytes per character */ + int ct_extensible; + + if(!st || (!st->buf && st->size)) + ASN__ENCODE_FAILED; + + if(pc) { + cval = &pc->value; + csiz = &pc->size; + } else { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + } + ct_extensible = csiz->flags & APC_EXTENSIBLE; + + switch(specs->subvariant) { + default: + /* case ASN_OSUBV_ANY: + ASN__ENCODE_FAILED; + */ + case ASN_OSUBV_BIT: + canonical_unit_bits = unit_bits = 1; + bpc = OS__BPC_BIT; + sizeinunits = st->size * 8 - (st->bits_unused & 0x07); + ASN_DEBUG("BIT STRING of %d bytes", + sizeinunits); + break; + case ASN_OSUBV_ANY: + case ASN_OSUBV_STR: + canonical_unit_bits = unit_bits = 8; +/* if(cval->flags & APC_CONSTRAINED) + unit_bits = 8; +*/ + bpc = OS__BPC_CHAR; + sizeinunits = st->size; + break; + case ASN_OSUBV_U16: + canonical_unit_bits = unit_bits = 16; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U16; + sizeinunits = st->size / 2; + break; + case ASN_OSUBV_U32: + canonical_unit_bits = unit_bits = 32; + if(cval->flags & APC_CONSTRAINED) + unit_bits = cval->range_bits; + bpc = OS__BPC_U32; + sizeinunits = st->size / 4; + break; + } + + ASN_DEBUG("Encoding %s into %d units of %d bits" + " (%ld..%ld, effective %d)%s", + td->name, sizeinunits, unit_bits, + csiz->lower_bound, csiz->upper_bound, + csiz->effective_bits, ct_extensible ? " EXT" : ""); + + /* Figure out wheter size lies within PER visible constraint */ + + if(csiz->effective_bits >= 0) { + if((int)sizeinunits < csiz->lower_bound + || (int)sizeinunits > csiz->upper_bound) { + if(ct_extensible) { + cval = &asn_DEF_OCTET_STRING_constraints.value; + csiz = &asn_DEF_OCTET_STRING_constraints.size; + unit_bits = canonical_unit_bits; + inext = 1; + } else + ASN__ENCODE_FAILED; + } + } else { + inext = 0; + } + + + if(ct_extensible) { + /* Declare whether length is [not] within extension root */ + if(per_put_few_bits(po, inext, 1)) + ASN__ENCODE_FAILED; + } + + /* X.691, #16.5: zero-length encoding */ + /* X.691, #16.6: short fixed length encoding (up to 2 octets) */ + /* X.691, #16.7: long fixed length encoding (up to 64K octets) */ + if(csiz->effective_bits >= 0) { + ASN_DEBUG("Encoding %lu bytes (%ld), length in %d bits", + st->size, sizeinunits - csiz->lower_bound, + csiz->effective_bits); + if (csiz->effective_bits > 0) { + ret = aper_put_length(po, csiz->upper_bound - csiz->lower_bound + 1, sizeinunits - csiz->lower_bound, 0); + if(ret) ASN__ENCODE_FAILED; + } + if (csiz->effective_bits > 0 || (st->size > 2) + || (csiz->upper_bound > (2 * 8 / unit_bits)) + || (csiz->range_bits != 0) + ) + { /* X.691 #16 NOTE 1 for fixed length (<=16 bits) strings*/ + if (aper_put_align(po) < 0) + ASN__ENCODE_FAILED; + } + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, st->buf, + sizeinunits, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + } else { + ret = per_put_many_bits(po, st->buf, + sizeinunits * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + ASN_DEBUG("Encoding %lu bytes", st->size); + + if(sizeinunits == 0) { + if(aper_put_length(po, -1, 0, 0)) + ASN__ENCODE_FAILED; + ASN__ENCODED_OK(er); + } + + buf = st->buf; + while(sizeinunits) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, sizeinunits, &need_eom); + + if(maySave < 0) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %ld of %ld", + (long)maySave, (long)sizeinunits); + + if(bpc) { + ret = OCTET_STRING_per_put_characters(po, buf, + maySave, bpc, unit_bits, + cval->lower_bound, cval->upper_bound, pc); + } else { + ret = per_put_many_bits(po, buf, maySave * unit_bits); + } + if(ret) ASN__ENCODE_FAILED; + + if(bpc) + buf += maySave * bpc; + else + buf += maySave >> 3; + sizeinunits -= maySave; + assert(!(maySave & 0x07) || !sizeinunits); + if(need_eom && aper_put_length(po, -1, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +int +OCTET_STRING_print(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + const char * const h2c = "0123456789ABCDEF"; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + char scratch[16 * 3 + 4]; + char *p = scratch; + uint8_t *buf; + uint8_t *end; + size_t i; + + (void)td; /* Unused argument */ + + if(!st || (!st->buf && st->size)) + return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Dump the contents of the buffer in hexadecimal. + */ + buf = st->buf; + end = buf + st->size; + for(i = 0; buf < end; buf++, i++) { + if(!(i % 16) && (i || st->size > 16)) { + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + _i_INDENT(1); + p = scratch; + } + *p++ = h2c[(*buf >> 4) & 0x0F]; + *p++ = h2c[*buf & 0x0F]; + *p++ = 0x20; + } + + if(p > scratch) { + p--; /* Remove the tail space */ + if(cb(scratch, p - scratch, app_key) < 0) + return -1; + } + + return 0; +} + +int +OCTET_STRING_print_utf8(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, asn_app_consume_bytes_f *cb, + void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + + (void)td; /* Unused argument */ + (void)ilevel; /* Unused argument */ + + if(st && (st->buf || !st->size)) { + return (cb(st->buf, st->size, app_key) < 0) ? -1 : 0; + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +OCTET_STRING_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + OCTET_STRING_t *st = (OCTET_STRING_t *)sptr; + const asn_OCTET_STRING_specifics_t *specs; + asn_struct_ctx_t *ctx; + struct _stack *stck; + + if(!td || !st) + return; + + specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + ASN_DEBUG("Freeing %s as OCTET STRING", td->name); + + if(st->buf) { + FREEMEM(st->buf); + st->buf = 0; + } + + /* + * Remove decode-time stack. + */ + stck = (struct _stack *)ctx->ptr; + if(stck) { + while(stck->tail) { + struct _stack_el *sel = stck->tail; + stck->tail = sel->prev; + FREEMEM(sel); + } + FREEMEM(stck); + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, + td->specifics + ? ((const asn_OCTET_STRING_specifics_t *)(td->specifics)) + ->struct_size + : sizeof(OCTET_STRING_t)); + break; + } +} + +/* + * Conversion routines. + */ +int +OCTET_STRING_fromBuf(OCTET_STRING_t *st, const char *str, int len) { + void *buf; + + if(st == 0 || (str == 0 && len)) { + errno = EINVAL; + return -1; + } + + /* + * Clear the OCTET STRING. + */ + if(str == NULL) { + FREEMEM(st->buf); + st->buf = 0; + st->size = 0; + return 0; + } + + /* Determine the original string size, if not explicitly given */ + if(len < 0) + len = strlen(str); + + /* Allocate and fill the memory */ + buf = MALLOC(len + 1); + if(buf == NULL) + return -1; + + memcpy(buf, str, len); + ((uint8_t *)buf)[len] = '\0'; /* Couldn't use memcpy(len+1)! */ + FREEMEM(st->buf); + st->buf = (uint8_t *)buf; + st->size = len; + + return 0; +} + +OCTET_STRING_t * +OCTET_STRING_new_fromBuf(const asn_TYPE_descriptor_t *td, const char *str, + int len) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st; + + st = (OCTET_STRING_t *)CALLOC(1, specs->struct_size); + if(st && str && OCTET_STRING_fromBuf(st, str, len)) { + FREEMEM(st); + st = NULL; + } + + return st; +} + +/* + * Lexicographically compare the common prefix of both strings, + * and if it is the same return -1 for the smallest string. + */ +int +OCTET_STRING_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics; + const OCTET_STRING_t *a = aptr; + const OCTET_STRING_t *b = bptr; + + assert(!specs || specs->subvariant != ASN_OSUBV_BIT); + + if(a && b) { + size_t common_prefix_size = a->size <= b->size ? a->size : b->size; + int ret = memcmp(a->buf, b->buf, common_prefix_size); + if(ret == 0) { + /* Figure out which string with equal prefixes is longer. */ + if(a->size < b->size) { + return -1; + } else if(a->size > b->size) { + return 1; + } else { + return 0; + } + } else { + return ret < 0 ? -1 : 1; + } + } else if(!a && !b) { + return 0; + } else if(!a) { + return -1; + } else { + return 1; + } + +} + +/* + * Biased function for randomizing character values around their limits. + */ +static uint32_t +OCTET_STRING__random_char(unsigned long lb, unsigned long ub) { + assert(lb <= ub); + switch(asn_random_between(0, 16)) { + case 0: + if(lb < ub) return lb + 1; + /* Fall through */ + case 1: + return lb; + case 2: + if(lb < ub) return ub - 1; + /* Fall through */ + case 3: + return ub; + default: + return asn_random_between(lb, ub); + } +} + + +size_t +OCTET_STRING_random_length_constrained( + const asn_TYPE_descriptor_t *td, + const asn_encoding_constraints_t *constraints, size_t max_length) { + const unsigned lengths[] = {0, 1, 2, 3, 4, 8, + 126, 127, 128, 16383, 16384, 16385, + 65534, 65535, 65536, 65537}; + size_t rnd_len; + + /* Figure out how far we should go */ + rnd_len = lengths[asn_random_between( + 0, sizeof(lengths) / sizeof(lengths[0]) - 1)]; + + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_CONSTRAINED) { + long suggested_upper_bound = pc->upper_bound < (ssize_t)max_length + ? pc->upper_bound + : (ssize_t)max_length; + if(max_length <= (size_t)pc->lower_bound) { + return pc->lower_bound; + } + if(pc->flags & APC_EXTENSIBLE) { + switch(asn_random_between(0, 5)) { + case 0: + if(pc->lower_bound > 0) { + rnd_len = pc->lower_bound - 1; + break; + } + /* Fall through */ + case 1: + rnd_len = pc->upper_bound + 1; + break; + case 2: + /* Keep rnd_len from the table */ + if(rnd_len <= max_length) { + break; + } + /* Fall through */ + default: + rnd_len = asn_random_between(pc->lower_bound, + suggested_upper_bound); + } + } else { + rnd_len = + asn_random_between(pc->lower_bound, suggested_upper_bound); + } + } else { + rnd_len = asn_random_between(0, max_length); + } + } else if(rnd_len > max_length) { + rnd_len = asn_random_between(0, max_length); + } + + return rnd_len; +} + +asn_random_fill_result_t +OCTET_STRING_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_OCTET_STRING_specifics_t *specs = td->specifics + ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + unsigned int unit_bytes = 1; + unsigned long clb = 0; /* Lower bound on char */ + unsigned long cub = 255; /* Higher bound on char value */ + uint8_t *buf; + uint8_t *bend; + uint8_t *b; + size_t rnd_len; + OCTET_STRING_t *st; + + if(max_length == 0 && !*sptr) return result_skipped; + + switch(specs->subvariant) { + default: + case ASN_OSUBV_ANY: + return result_failed; + case ASN_OSUBV_BIT: + /* Handled by BIT_STRING itself. */ + return result_failed; + case ASN_OSUBV_STR: + unit_bytes = 1; + clb = 0; + cub = 255; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + clb = 0; + cub = 65535; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + clb = 0; + cub = 0x10FFFF; + break; + } + + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->value; + if(pc->flags & APC_SEMI_CONSTRAINED) { + clb = pc->lower_bound; + } else if(pc->flags & APC_CONSTRAINED) { + clb = pc->lower_bound; + cub = pc->upper_bound; + } + } + + rnd_len = + OCTET_STRING_random_length_constrained(td, constraints, max_length); + + buf = CALLOC(unit_bytes, rnd_len + 1); + if(!buf) return result_failed; + + bend = &buf[unit_bytes * rnd_len]; + + switch(unit_bytes) { + case 1: + for(b = buf; b < bend; b += unit_bytes) { + *(uint8_t *)b = OCTET_STRING__random_char(clb, cub); + } + *(uint8_t *)b = 0; + break; + case 2: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 8; + b[1] = code; + } + *(uint16_t *)b = 0; + break; + case 4: + for(b = buf; b < bend; b += unit_bytes) { + uint32_t code = OCTET_STRING__random_char(clb, cub); + b[0] = code >> 24; + b[1] = code >> 16; + b[2] = code >> 8; + b[3] = code; + } + *(uint32_t *)b = 0; + break; + } + + if(*sptr) { + st = *sptr; + FREEMEM(st->buf); + } else { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) { + FREEMEM(buf); + return result_failed; + } + } + + st->buf = buf; + st->size = unit_bytes * rnd_len; + + result_ok.length = st->size; + return result_ok; +} diff --git a/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c new file mode 100644 index 000000000..c16faeafb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OCTET_STRING_oer.c @@ -0,0 +1,171 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +asn_dec_rval_t +OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING"); + ASN__DECODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + (void)opt_codec_ctx; + + if(!st) { + st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size)); + if(!st) ASN__DECODE_FAILED; + } + + if(ct_size >= 0) { + expected_length = unit_bytes * ct_size; + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(expected_length % unit_bytes != 0) { + ASN_DEBUG( + "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "", + expected_length, unit_bytes); + ASN__DECODE_FAILED; + } + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_OCTET_STRING_specifics_t *specs = + td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics + : &asn_SPC_OCTET_STRING_specs; + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + const asn_oer_constraints_t *cts = + constraints ? constraints : td->encoding_constraints.oer_constraints; + ssize_t ct_size = cts ? cts->size : -1; + asn_enc_rval_t er = {0, 0, 0}; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size); + + if(ct_size >= 0) { + /* + * Check that available data matches the constraint + */ + size_t unit_bytes; + switch(specs->subvariant) { + default: + case ASN_OSUBV_BIT: + ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING"); + ASN__ENCODE_FAILED; + case ASN_OSUBV_ANY: + /* Fall through */ + case ASN_OSUBV_STR: + unit_bytes = 1; + break; + case ASN_OSUBV_U16: + unit_bytes = 2; + break; + case ASN_OSUBV_U32: + unit_bytes = 4; + break; + } + + if(st->size != unit_bytes * (size_t)ct_size) { + ASN_DEBUG( + "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE " + "constraint (%" ASN_PRI_SIZE ")", + td->name, st->size, ct_size); + ASN__ENCODE_FAILED; + } + } else { + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + ssize_t ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + } + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c new file mode 100644 index 000000000..a54e99c3c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE.c @@ -0,0 +1,509 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include +#include + +asn_TYPE_operation_t asn_OP_OPEN_TYPE = { + OPEN_TYPE_free, + OPEN_TYPE_print, + OPEN_TYPE_compare, + OPEN_TYPE_decode_ber, + OPEN_TYPE_encode_der, + OPEN_TYPE_decode_xer, + OPEN_TYPE_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, 0, /* No OER support, use "-gen-OER" to enable */ +#else + OPEN_TYPE_decode_oer, + OPEN_TYPE_encode_oer, +#endif +#ifdef ASN_DISABLE_PER_SUPPORT + 0, 0, 0, 0, +#else + OPEN_TYPE_decode_uper, + OPEN_TYPE_encode_uper, + OPEN_TYPE_decode_aper, + OPEN_TYPE_encode_aper, +#endif + 0, /* Random fill is not supported for open type */ + 0 /* Use generic outmost tag fetcher */ +}; + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +asn_dec_rval_t +OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ASN_DEBUG("presence %d\n", selected.presence_index); + + rv = selected.type_descriptor->op->ber_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, ptr, size, + elm->tag_mode); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = consumed_myself; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case RC_FAIL: + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + break; + } + + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; +} + +asn_dec_rval_t +OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, const void *ptr, size_t size) { + size_t consumed_myself = 0; + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + int xer_context = 0; + ssize_t ch_size; + pxer_chunk_type_e ch_type; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + /* + * Confirm wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_OPENING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = selected.type_descriptor->op->xer_decoder( + opt_codec_ctx, selected.type_descriptor, &inner_value, NULL, ptr, size); + ADVANCE(rv.consumed); + rv.consumed = 0; + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_FAIL: + /* Point to a best position where failure occurred */ + rv.consumed = consumed_myself; + /* Fall through */ + case RC_WMORE: + /* Wrt. rv.consumed==0: + * In case a genuine RC_WMORE, the whole Open Type decoding + * will have to be restarted. + */ + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + return rv; + } + + /* + * Finalize wrapper. + */ + for(;;) { + ch_size = xer_next_token(&xer_context, ptr, size, &ch_type); + if(ch_size < 0) { + ASN__DECODE_FAILED; + } else { + switch(ch_type) { + case PXER_WMORE: + ASN__DECODE_STARVED; + case PXER_COMMENT: + case PXER_TEXT: + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; + } + break; + } + } + + /* + * Wrapper value confirmed. + */ + switch(xer_check_tag(ptr, ch_size, elm->name)) { + case XCT_CLOSING: + ADVANCE(ch_size); + break; + case XCT_BROKEN: + default: + ASN__DECODE_FAILED; + } + + rv.consumed += consumed_myself; + + return rv; +} + + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = uper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(uper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + const asn_TYPE_member_t *elm, asn_per_data_t *pd) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + assert(elm->flags == ATF_OPEN_TYPE); + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) + != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + rv = aper_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, pd); + switch(rv.code) { + case RC_OK: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + break; + } else { + rv.code = RC_FAIL; + } + /* Fall through */ + case RC_WMORE: + case RC_FAIL: + if(*memb_ptr2) { + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_RESET(*selected.type_descriptor, + inner_value); + } + } + } + return rv; +} + +asn_enc_rval_t +OPEN_TYPE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const void *memb_ptr; /* Pointer to the member */ + asn_TYPE_member_t *elm; /* CHOICE's element */ + asn_enc_rval_t er = {0,0,0}; + unsigned present; + + (void)constraints; + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + present--; + } + + ASN_DEBUG("Encoding %s OPEN TYPE element %d", td->name, present); + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(aper_open_type_put(elm->type, NULL, memb_ptr, po) < 0) { + ASN__ENCODE_FAILED; + } + + er.encoded = 0; + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c new file mode 100644 index 000000000..dd2f5c644 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OPEN_TYPE_oer.c @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +asn_dec_rval_t +OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void *sptr, + asn_TYPE_member_t *elm, const void *ptr, size_t size) { + asn_type_selector_result_t selected; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *inner_value; + asn_dec_rval_t rv; + size_t ot_ret; + + + if(!(elm->flags & ATF_OPEN_TYPE)) { + ASN__DECODE_FAILED; + } + + if(!elm->type_selector) { + ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s", + td->name, elm->name, elm->type->name); + ASN__DECODE_FAILED; + } + + selected = elm->type_selector(td, sptr); + if(!selected.presence_index) { + ASN__DECODE_FAILED; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)sptr + elm->memb_offset); + } else { + memb_ptr = (char *)sptr + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + if(*memb_ptr2 != NULL) { + /* Make sure we reset the structure first before encoding */ + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) { + ASN__DECODE_FAILED; + } + } + + inner_value = + (char *)*memb_ptr2 + + elm->type->elements[selected.presence_index - 1].memb_offset; + + ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL, + &inner_value, ptr, size); + switch(ot_ret) { + default: + if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, + selected.presence_index) + == 0) { + rv.code = RC_OK; + rv.consumed = ot_ret; + return rv; + } else { + /* Oh, now a full-blown failure failure */ + } + /* Fall through */ + case -1: + rv.code = RC_FAIL; + rv.consumed = ot_ret; + break; + case 0: + rv.code = RC_WMORE; + rv.consumed = 0; + break; + } + + if(*memb_ptr2) { + const asn_CHOICE_specifics_t *specs = + selected.type_descriptor->specifics; + if(elm->flags & ATF_POINTER) { + ASN_STRUCT_FREE(*selected.type_descriptor, inner_value); + *memb_ptr2 = NULL; + } else { + ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor, + inner_value); + memset(*memb_ptr2, 0, specs->struct_size); + } + } + return rv; +} diff --git a/src/tmx/Asn_J2735/src/r63/ObjectCount.c b/src/tmx/Asn_J2735/src/r63/ObjectCount.c new file mode 100644 index 000000000..ba3f94f64 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObjectCount.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ObjectCount.h" + +int +ObjectCount_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectCount_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_ObjectCount_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObjectCount_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectCount = { + "ObjectCount", + "ObjectCount", + &asn_OP_NativeInteger, + asn_DEF_ObjectCount_tags_1, + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + asn_DEF_ObjectCount_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectCount_tags_1) + /sizeof(asn_DEF_ObjectCount_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectCount_constr_1, &asn_PER_type_ObjectCount_constr_1, ObjectCount_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c b/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c new file mode 100644 index 000000000..5d8bfb2d6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObjectDescriptor.c @@ -0,0 +1,58 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * ObjectDescriptor basic type description. + */ +static const ber_tlv_tag_t asn_DEF_ObjectDescriptor_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (7 << 2)), /* [UNIVERSAL 7] IMPLICIT ... */ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +asn_TYPE_operation_t asn_OP_ObjectDescriptor = { + OCTET_STRING_free, + OCTET_STRING_print_utf8, /* Treat as ASCII subset (it's not) */ + OCTET_STRING_compare, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + 0, + 0, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + 0, /* Not supported for ObjectDescriptor */ + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_ObjectDescriptor = { + "ObjectDescriptor", + "ObjectDescriptor", + &asn_OP_ObjectDescriptor, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]) - 1, + asn_DEF_ObjectDescriptor_tags, + sizeof(asn_DEF_ObjectDescriptor_tags) + / sizeof(asn_DEF_ObjectDescriptor_tags[0]), + { 0, 0, asn_generic_unknown_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObjectDistance.c b/src/tmx/Asn_J2735/src/r63/ObjectDistance.c new file mode 100644 index 000000000..79ec8c88b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObjectDistance.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectDistance.h" + +int +ObjectDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectDistance_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_ObjectDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObjectDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectDistance = { + "ObjectDistance", + "ObjectDistance", + &asn_OP_NativeInteger, + asn_DEF_ObjectDistance_tags_1, + sizeof(asn_DEF_ObjectDistance_tags_1) + /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ + asn_DEF_ObjectDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectDistance_tags_1) + /sizeof(asn_DEF_ObjectDistance_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectDistance_constr_1, &asn_PER_type_ObjectDistance_constr_1, ObjectDistance_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObjectID.c b/src/tmx/Asn_J2735/src/r63/ObjectID.c new file mode 100644 index 000000000..5b46a3671 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObjectID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectID.h" + +int +ObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_ObjectID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObjectID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectID = { + "ObjectID", + "ObjectID", + &asn_OP_NativeInteger, + asn_DEF_ObjectID_tags_1, + sizeof(asn_DEF_ObjectID_tags_1) + /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ + asn_DEF_ObjectID_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectID_tags_1) + /sizeof(asn_DEF_ObjectID_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectID_constr_1, &asn_PER_type_ObjectID_constr_1, ObjectID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObjectType.c b/src/tmx/Asn_J2735/src/r63/ObjectType.c new file mode 100644 index 000000000..43ce3726e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObjectType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObjectType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObjectType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ObjectType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ObjectType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 7, "vehicle" }, + { 2, 3, "vru" }, + { 3, 6, "animal" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ObjectType_enum2value_1[] = { + 3, /* animal(3) */ + 0, /* unknown(0) */ + 1, /* vehicle(1) */ + 2 /* vru(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ObjectType_specs_1 = { + asn_MAP_ObjectType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ObjectType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ObjectType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObjectType = { + "ObjectType", + "ObjectType", + &asn_OP_NativeEnumerated, + asn_DEF_ObjectType_tags_1, + sizeof(asn_DEF_ObjectType_tags_1) + /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ + asn_DEF_ObjectType_tags_1, /* Same as above */ + sizeof(asn_DEF_ObjectType_tags_1) + /sizeof(asn_DEF_ObjectType_tags_1[0]), /* 1 */ + { &asn_OER_type_ObjectType_constr_1, &asn_PER_type_ObjectType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ObjectType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c b/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c new file mode 100644 index 000000000..d325a4bf0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObstacleDetection.c @@ -0,0 +1,135 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ObstacleDetection.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 523 && value <= 541)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_description_constr_4 CC_NOTUSED = { + { 2, 1 } /* (523..541) */, + -1}; +static asn_per_constraints_t asn_PER_memb_description_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 523, 541 } /* (523..541) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ObstacleDetection_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDirection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_POINTER, 2, offsetof(struct ObstacleDetection, description), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { &asn_OER_memb_description_constr_4, &asn_PER_memb_description_constr_4, memb_description_constraint_1 }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, locationDetails), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericLocations, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "locationDetails" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleDetection, dateTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dateTime" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleDetection, vertEvent), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vertEvent" + }, +}; +static const int asn_MAP_ObstacleDetection_oms_1[] = { 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_ObstacleDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleDetection_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* locationDetails */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dateTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vertEvent */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleDetection_specs_1 = { + sizeof(struct ObstacleDetection), + offsetof(struct ObstacleDetection, _asn_ctx), + asn_MAP_ObstacleDetection_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_ObstacleDetection_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDetection = { + "ObstacleDetection", + "ObstacleDetection", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleDetection_tags_1, + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDetection_tags_1) + /sizeof(asn_DEF_ObstacleDetection_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ObstacleDetection_1, + 6, /* Elements count */ + &asn_SPC_ObstacleDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c b/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c new file mode 100644 index 000000000..a37bf1861 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObstacleDirection.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ObstacleDirection.h" + +int +ObstacleDirection_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 28800)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using DSRC_Angle, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..28800) */, + -1}; +asn_per_constraints_t asn_PER_type_ObstacleDirection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 28800 } /* (0..28800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObstacleDirection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDirection = { + "ObstacleDirection", + "ObstacleDirection", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDirection_tags_1, + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDirection_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDirection_tags_1) + /sizeof(asn_DEF_ObstacleDirection_tags_1[0]), /* 1 */ + { &asn_OER_type_ObstacleDirection_constr_1, &asn_PER_type_ObstacleDirection_constr_1, ObstacleDirection_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c b/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c new file mode 100644 index 000000000..efddfb853 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObstacleDistance.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ObstacleDistance.h" + +int +ObstacleDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_ObstacleDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ObstacleDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleDistance = { + "ObstacleDistance", + "ObstacleDistance", + &asn_OP_NativeInteger, + asn_DEF_ObstacleDistance_tags_1, + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + asn_DEF_ObstacleDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleDistance_tags_1) + /sizeof(asn_DEF_ObstacleDistance_tags_1[0]), /* 1 */ + { &asn_OER_type_ObstacleDistance_constr_1, &asn_PER_type_ObstacleDistance_constr_1, ObstacleDistance_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleSize.c b/src/tmx/Asn_J2735/src/r63/ObstacleSize.c new file mode 100644 index 000000000..8edc1baf8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObstacleSize.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObstacleSize.h" + +asn_TYPE_member_t asn_MBR_ObstacleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "length" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleSize, height), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, +}; +static const int asn_MAP_ObstacleSize_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ObstacleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* length */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* height */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleSize_specs_1 = { + sizeof(struct ObstacleSize), + offsetof(struct ObstacleSize, _asn_ctx), + asn_MAP_ObstacleSize_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ObstacleSize_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleSize = { + "ObstacleSize", + "ObstacleSize", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleSize_tags_1, + sizeof(asn_DEF_ObstacleSize_tags_1) + /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ + asn_DEF_ObstacleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleSize_tags_1) + /sizeof(asn_DEF_ObstacleSize_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ObstacleSize_1, + 3, /* Elements count */ + &asn_SPC_ObstacleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c b/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c new file mode 100644 index 000000000..d5ddfbc43 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ObstacleSizeConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "ObstacleSizeConfidence.h" + +asn_TYPE_member_t asn_MBR_ObstacleSizeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, widthConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "widthConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct ObstacleSizeConfidence, lengthConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lengthConfidence" + }, + { ATF_POINTER, 1, offsetof(struct ObstacleSizeConfidence, heightConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heightConfidence" + }, +}; +static const int asn_MAP_ObstacleSizeConfidence_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ObstacleSizeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ObstacleSizeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* widthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lengthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* heightConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ObstacleSizeConfidence_specs_1 = { + sizeof(struct ObstacleSizeConfidence), + offsetof(struct ObstacleSizeConfidence, _asn_ctx), + asn_MAP_ObstacleSizeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ObstacleSizeConfidence_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ObstacleSizeConfidence = { + "ObstacleSizeConfidence", + "ObstacleSizeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_ObstacleSizeConfidence_tags_1, + sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) + /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ + asn_DEF_ObstacleSizeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ObstacleSizeConfidence_tags_1) + /sizeof(asn_DEF_ObstacleSizeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ObstacleSizeConfidence_1, + 3, /* Elements count */ + &asn_SPC_ObstacleSizeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B09.c b/src/tmx/Asn_J2735/src/r63/Offset-B09.c new file mode 100644 index 000000000..703c64119 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B09.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B09.h" + +int +Offset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B09 = { + "Offset-B09", + "Offset-B09", + &asn_OP_NativeInteger, + asn_DEF_Offset_B09_tags_1, + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + asn_DEF_Offset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B09_tags_1) + /sizeof(asn_DEF_Offset_B09_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B09_constr_1, &asn_PER_type_Offset_B09_constr_1, Offset_B09_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B10.c b/src/tmx/Asn_J2735/src/r63/Offset-B10.c new file mode 100644 index 000000000..2d72cb65a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B10.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B10.h" + +int +Offset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512 && value <= 511)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B10 = { + "Offset-B10", + "Offset-B10", + &asn_OP_NativeInteger, + asn_DEF_Offset_B10_tags_1, + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + asn_DEF_Offset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B10_tags_1) + /sizeof(asn_DEF_Offset_B10_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B10_constr_1, &asn_PER_type_Offset_B10_constr_1, Offset_B10_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B11.c b/src/tmx/Asn_J2735/src/r63/Offset-B11.c new file mode 100644 index 000000000..10da634fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B11.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B11.h" + +int +Offset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B11 = { + "Offset-B11", + "Offset-B11", + &asn_OP_NativeInteger, + asn_DEF_Offset_B11_tags_1, + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + asn_DEF_Offset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B11_tags_1) + /sizeof(asn_DEF_Offset_B11_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B11_constr_1, &asn_PER_type_Offset_B11_constr_1, Offset_B11_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B12.c b/src/tmx/Asn_J2735/src/r63/Offset-B12.c new file mode 100644 index 000000000..05988da7e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B12.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B12.h" + +int +Offset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B12 = { + "Offset-B12", + "Offset-B12", + &asn_OP_NativeInteger, + asn_DEF_Offset_B12_tags_1, + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + asn_DEF_Offset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B12_tags_1) + /sizeof(asn_DEF_Offset_B12_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B12_constr_1, &asn_PER_type_Offset_B12_constr_1, Offset_B12_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B13.c b/src/tmx/Asn_J2735/src/r63/Offset-B13.c new file mode 100644 index 000000000..e2fbe471d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B13.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B13.h" + +int +Offset_B13_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -4096 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B13_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-4096..4095) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B13_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, -4096, 4095 } /* (-4096..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B13 = { + "Offset-B13", + "Offset-B13", + &asn_OP_NativeInteger, + asn_DEF_Offset_B13_tags_1, + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + asn_DEF_Offset_B13_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B13_tags_1) + /sizeof(asn_DEF_Offset_B13_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B13_constr_1, &asn_PER_type_Offset_B13_constr_1, Offset_B13_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B14.c b/src/tmx/Asn_J2735/src/r63/Offset-B14.c new file mode 100644 index 000000000..43d4fa2a0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B14.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B14.h" + +int +Offset_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B14 = { + "Offset-B14", + "Offset-B14", + &asn_OP_NativeInteger, + asn_DEF_Offset_B14_tags_1, + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + asn_DEF_Offset_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B14_tags_1) + /sizeof(asn_DEF_Offset_B14_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B14_constr_1, &asn_PER_type_Offset_B14_constr_1, Offset_B14_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Offset-B16.c b/src/tmx/Asn_J2735/src/r63/Offset-B16.c new file mode 100644 index 000000000..9419138d8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Offset-B16.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Offset-B16.h" + +int +Offset_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Offset_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_Offset_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Offset_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Offset_B16 = { + "Offset-B16", + "Offset-B16", + &asn_OP_NativeInteger, + asn_DEF_Offset_B16_tags_1, + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + asn_DEF_Offset_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_Offset_B16_tags_1) + /sizeof(asn_DEF_Offset_B16_tags_1[0]), /* 1 */ + { &asn_OER_type_Offset_B16_constr_1, &asn_PER_type_Offset_B16_constr_1, Offset_B16_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c new file mode 100644 index 000000000..b80d55b0d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B12.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B12.h" + +int +OffsetLL_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B12 = { + "OffsetLL-B12", + "OffsetLL-B12", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B12_tags_1, + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B12_tags_1) + /sizeof(asn_DEF_OffsetLL_B12_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B12_constr_1, &asn_PER_type_OffsetLL_B12_constr_1, OffsetLL_B12_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c new file mode 100644 index 000000000..7e620ed68 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B14.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B14.h" + +int +OffsetLL_B14_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8192 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-8192..8191) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B14_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -8192, 8191 } /* (-8192..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B14 = { + "OffsetLL-B14", + "OffsetLL-B14", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B14_tags_1, + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B14_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B14_tags_1) + /sizeof(asn_DEF_OffsetLL_B14_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B14_constr_1, &asn_PER_type_OffsetLL_B14_constr_1, OffsetLL_B14_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c new file mode 100644 index 000000000..93ec83d52 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B16.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B16.h" + +int +OffsetLL_B16_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B16_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B16_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B16 = { + "OffsetLL-B16", + "OffsetLL-B16", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B16_tags_1, + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B16_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B16_tags_1) + /sizeof(asn_DEF_OffsetLL_B16_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B16_constr_1, &asn_PER_type_OffsetLL_B16_constr_1, OffsetLL_B16_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c new file mode 100644 index 000000000..274bc112e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B18.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B18.h" + +int +OffsetLL_B18_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -131072 && value <= 131071)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-131072..131071) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B18_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 18, -1, -131072, 131071 } /* (-131072..131071) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B18_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B18 = { + "OffsetLL-B18", + "OffsetLL-B18", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B18_tags_1, + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B18_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B18_tags_1) + /sizeof(asn_DEF_OffsetLL_B18_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B18_constr_1, &asn_PER_type_OffsetLL_B18_constr_1, OffsetLL_B18_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c new file mode 100644 index 000000000..ac971b818 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B22.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B22.h" + +int +OffsetLL_B22_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2097152 && value <= 2097151)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-2097152..2097151) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B22_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 22, -1, -2097152, 2097151 } /* (-2097152..2097151) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B22_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B22 = { + "OffsetLL-B22", + "OffsetLL-B22", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B22_tags_1, + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B22_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B22_tags_1) + /sizeof(asn_DEF_OffsetLL_B22_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B22_constr_1, &asn_PER_type_OffsetLL_B22_constr_1, OffsetLL_B22_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c b/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c new file mode 100644 index 000000000..1912fbf48 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetLL-B24.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetLL-B24.h" + +int +OffsetLL_B24_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8388608 && value <= 8388607)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8388608..8388607) */, + -1}; +asn_per_constraints_t asn_PER_type_OffsetLL_B24_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 24, -1, -8388608, 8388607 } /* (-8388608..8388607) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_OffsetLL_B24_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_OffsetLL_B24 = { + "OffsetLL-B24", + "OffsetLL-B24", + &asn_OP_NativeInteger, + asn_DEF_OffsetLL_B24_tags_1, + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + asn_DEF_OffsetLL_B24_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetLL_B24_tags_1) + /sizeof(asn_DEF_OffsetLL_B24_tags_1[0]), /* 1 */ + { &asn_OER_type_OffsetLL_B24_constr_1, &asn_PER_type_OffsetLL_B24_constr_1, OffsetLL_B24_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetPoint.c b/src/tmx/Asn_J2735/src/r63/OffsetPoint.c new file mode 100644 index 000000000..3572ed0d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetPoint.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetPoint.h" + +static int +memb_deltax_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_deltay_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_deltax_constr_2 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_deltax_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_deltay_constr_3 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_deltay_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_OffsetPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltax), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_deltax_constr_2, &asn_PER_memb_deltax_constr_2, memb_deltax_constraint_1 }, + 0, 0, /* No default value */ + "deltax" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetPoint, deltay), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_deltay_constr_3, &asn_PER_memb_deltay_constr_3, memb_deltay_constraint_1 }, + 0, 0, /* No default value */ + "deltay" + }, +}; +static const ber_tlv_tag_t asn_DEF_OffsetPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_OffsetPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* deltax */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* deltay */ +}; +asn_SEQUENCE_specifics_t asn_SPC_OffsetPoint_specs_1 = { + sizeof(struct OffsetPoint), + offsetof(struct OffsetPoint, _asn_ctx), + asn_MAP_OffsetPoint_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_OffsetPoint = { + "OffsetPoint", + "OffsetPoint", + &asn_OP_SEQUENCE, + asn_DEF_OffsetPoint_tags_1, + sizeof(asn_DEF_OffsetPoint_tags_1) + /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ + asn_DEF_OffsetPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetPoint_tags_1) + /sizeof(asn_DEF_OffsetPoint_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_OffsetPoint_1, + 2, /* Elements count */ + &asn_SPC_OffsetPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OffsetSystem.c b/src/tmx/Asn_J2735/src/r63/OffsetSystem.c new file mode 100644 index 000000000..40ce5a4cc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OffsetSystem.c @@ -0,0 +1,119 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OffsetSystem.h" + +static asn_oer_constraints_t asn_OER_type_offset_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_offset_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_offset_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.xy), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "xy" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem__offset, choice.ll), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ll" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_offset_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xy */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ll */ +}; +static asn_CHOICE_specifics_t asn_SPC_offset_specs_3 = { + sizeof(struct OffsetSystem__offset), + offsetof(struct OffsetSystem__offset, _asn_ctx), + offsetof(struct OffsetSystem__offset, present), + sizeof(((struct OffsetSystem__offset *)0)->present), + asn_MAP_offset_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offset_3 = { + "offset", + "offset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_offset_constr_3, &asn_PER_type_offset_constr_3, CHOICE_constraint }, + asn_MBR_offset_3, + 2, /* Elements count */ + &asn_SPC_offset_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_OffsetSystem_1[] = { + { ATF_POINTER, 1, offsetof(struct OffsetSystem, scale), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct OffsetSystem, offset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_offset_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset" + }, +}; +static const int asn_MAP_OffsetSystem_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_OffsetSystem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_OffsetSystem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_OffsetSystem_specs_1 = { + sizeof(struct OffsetSystem), + offsetof(struct OffsetSystem, _asn_ctx), + asn_MAP_OffsetSystem_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_OffsetSystem_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_OffsetSystem = { + "OffsetSystem", + "OffsetSystem", + &asn_OP_SEQUENCE, + asn_DEF_OffsetSystem_tags_1, + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + asn_DEF_OffsetSystem_tags_1, /* Same as above */ + sizeof(asn_DEF_OffsetSystem_tags_1) + /sizeof(asn_DEF_OffsetSystem_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_OffsetSystem_1, + 2, /* Elements count */ + &asn_SPC_OffsetSystem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c b/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c new file mode 100644 index 000000000..98e79ad99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/OverlayLaneList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "OverlayLaneList.h" + +static asn_oer_constraints_t asn_OER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +asn_per_constraints_t asn_PER_type_OverlayLaneList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_OverlayLaneList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_OverlayLaneList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_OverlayLaneList_specs_1 = { + sizeof(struct OverlayLaneList), + offsetof(struct OverlayLaneList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_OverlayLaneList = { + "OverlayLaneList", + "OverlayLaneList", + &asn_OP_SEQUENCE_OF, + asn_DEF_OverlayLaneList_tags_1, + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + asn_DEF_OverlayLaneList_tags_1, /* Same as above */ + sizeof(asn_DEF_OverlayLaneList_tags_1) + /sizeof(asn_DEF_OverlayLaneList_tags_1[0]), /* 1 */ + { &asn_OER_type_OverlayLaneList_constr_1, &asn_PER_type_OverlayLaneList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_OverlayLaneList_1, + 1, /* Single element */ + &asn_SPC_OverlayLaneList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PartII-Id.c b/src/tmx/Asn_J2735/src/r63/PartII-Id.c new file mode 100644 index 000000000..167dc3b56 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PartII-Id.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "PartII-Id.h" + +int +PartII_Id_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PartII_Id_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +asn_per_constraints_t asn_PER_type_PartII_Id_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PartII_Id_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PartII_Id = { + "PartII-Id", + "PartII-Id", + &asn_OP_NativeInteger, + asn_DEF_PartII_Id_tags_1, + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + asn_DEF_PartII_Id_tags_1, /* Same as above */ + sizeof(asn_DEF_PartII_Id_tags_1) + /sizeof(asn_DEF_PartII_Id_tags_1[0]), /* 1 */ + { &asn_OER_type_PartII_Id_constr_1, &asn_PER_type_PartII_Id_constr_1, PartII_Id_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PartIIcontent.c b/src/tmx/Asn_J2735/src/r63/PartIIcontent.c new file mode 100644 index 000000000..0b65b3a17 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PartIIcontent.c @@ -0,0 +1,284 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "PartIIcontent.h" + +static const long asn_VAL_1_vehicleSafetyExt = 0; +static const long asn_VAL_2_specialVehicleExt = 1; +static const long asn_VAL_3_supplementalVehicleExt = 2; +static const asn_ioc_cell_t asn_IOS_BSMpartIIExtension_1_rows[] = { + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_1_vehicleSafetyExt }, + { "&Type", aioc__type, &asn_DEF_VehicleSafetyExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_2_specialVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SpecialVehicleExtensions }, + { "&id", aioc__value, &asn_DEF_PartII_Id, &asn_VAL_3_supplementalVehicleExt }, + { "&Type", aioc__type, &asn_DEF_SupplementalVehicleExtensions } +}; +static const asn_ioc_set_t asn_IOS_BSMpartIIExtension_1[] = { + { 3, 2, asn_IOS_BSMpartIIExtension_1_rows } +}; +static int +memb_partII_Id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 63L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_BSMpartIIExtension_partII_Value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_BSMpartIIExtension_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct BSMpartIIExtension, partII_Id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_partII_Value_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Id_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..63) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Id_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_partII_Value_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_partII_Value_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_partII_Value_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.VehicleSafetyExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleSafetyExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "VehicleSafetyExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SpecialVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SpecialVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SpecialVehicleExtensions" + }, + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension__partII_Value, choice.SupplementalVehicleExtensions), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SupplementalVehicleExtensions, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "SupplementalVehicleExtensions" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_partII_Value_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* VehicleSafetyExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* SpecialVehicleExtensions */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* SupplementalVehicleExtensions */ +}; +static asn_CHOICE_specifics_t asn_SPC_partII_Value_specs_3 = { + sizeof(struct BSMpartIIExtension__partII_Value), + offsetof(struct BSMpartIIExtension__partII_Value, _asn_ctx), + offsetof(struct BSMpartIIExtension__partII_Value, present), + sizeof(((struct BSMpartIIExtension__partII_Value *)0)->present), + asn_MAP_partII_Value_tag2el_3, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_partII_Value_3 = { + "partII-Value", + "partII-Value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_partII_Value_3, + 3, /* Elements count */ + &asn_SPC_partII_Value_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_BSMpartIIExtension_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PartII_Id, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Id_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Id_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Id" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct BSMpartIIExtension, partII_Value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_partII_Value_3, + select_BSMpartIIExtension_partII_Value_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_partII_Value_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_partII_Value_constraint_1 + }, + 0, 0, /* No default value */ + "partII-Value" + }, +}; +static const ber_tlv_tag_t asn_DEF_BSMpartIIExtension_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_BSMpartIIExtension_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* partII-Id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* partII-Value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_BSMpartIIExtension_specs_1 = { + sizeof(struct BSMpartIIExtension), + offsetof(struct BSMpartIIExtension, _asn_ctx), + asn_MAP_BSMpartIIExtension_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_BSMpartIIExtension = { + "BSMpartIIExtension", + "BSMpartIIExtension", + &asn_OP_SEQUENCE, + asn_DEF_BSMpartIIExtension_tags_1, + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + asn_DEF_BSMpartIIExtension_tags_1, /* Same as above */ + sizeof(asn_DEF_BSMpartIIExtension_tags_1) + /sizeof(asn_DEF_BSMpartIIExtension_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_BSMpartIIExtension_1, + 2, /* Elements count */ + &asn_SPC_BSMpartIIExtension_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PathHistory.c b/src/tmx/Asn_J2735/src/r63/PathHistory.c new file mode 100644 index 000000000..1356924a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PathHistory.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathHistory.h" + +asn_TYPE_member_t asn_MBR_PathHistory_1[] = { + { ATF_POINTER, 2, offsetof(struct PathHistory, initialPosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "initialPosition" + }, + { ATF_POINTER, 1, offsetof(struct PathHistory, currGNSSstatus), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "currGNSSstatus" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistory, crumbData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistoryPointList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_PathHistory_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_PathHistory_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistory_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* initialPosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currGNSSstatus */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistory_specs_1 = { + sizeof(struct PathHistory), + offsetof(struct PathHistory, _asn_ctx), + asn_MAP_PathHistory_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PathHistory_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistory = { + "PathHistory", + "PathHistory", + &asn_OP_SEQUENCE, + asn_DEF_PathHistory_tags_1, + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + asn_DEF_PathHistory_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistory_tags_1) + /sizeof(asn_DEF_PathHistory_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PathHistory_1, + 3, /* Elements count */ + &asn_SPC_PathHistory_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c b/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c new file mode 100644 index 000000000..5d0b2e7c6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PathHistoryPoint.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathHistoryPoint.h" + +asn_TYPE_member_t asn_MBR_PathHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, latOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "latOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, lonOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lonOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_POINTER, 3, offsetof(struct PathHistoryPoint, speed), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Speed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_POINTER, 2, offsetof(struct PathHistoryPoint, posAccuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "posAccuracy" + }, + { ATF_POINTER, 1, offsetof(struct PathHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_PathHistoryPoint_oms_1[] = { 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_PathHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lonOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* posAccuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathHistoryPoint_specs_1 = { + sizeof(struct PathHistoryPoint), + offsetof(struct PathHistoryPoint, _asn_ctx), + asn_MAP_PathHistoryPoint_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_PathHistoryPoint_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPoint = { + "PathHistoryPoint", + "PathHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_PathHistoryPoint_tags_1, + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPoint_tags_1) + /sizeof(asn_DEF_PathHistoryPoint_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PathHistoryPoint_1, + 7, /* Elements count */ + &asn_SPC_PathHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c b/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c new file mode 100644 index 000000000..c71ca4e64 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PathHistoryPointList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathHistoryPointList.h" + +static asn_oer_constraints_t asn_OER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +asn_per_constraints_t asn_PER_type_PathHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PathHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathHistoryPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PathHistoryPointList_specs_1 = { + sizeof(struct PathHistoryPointList), + offsetof(struct PathHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PathHistoryPointList = { + "PathHistoryPointList", + "PathHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PathHistoryPointList_tags_1, + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_PathHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_PathHistoryPointList_tags_1) + /sizeof(asn_DEF_PathHistoryPointList_tags_1[0]), /* 1 */ + { &asn_OER_type_PathHistoryPointList_constr_1, &asn_PER_type_PathHistoryPointList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_PathHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_PathHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PathNode.c b/src/tmx/Asn_J2735/src/r63/PathNode.c new file mode 100644 index 000000000..4e36b9467 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PathNode.c @@ -0,0 +1,214 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathNode.h" + +static int +memb_x_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_y_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_z_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32768 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_width_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_x_constr_2 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_x_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_y_constr_3 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_y_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_z_constr_4 CC_NOTUSED = { + { 2, 0 } /* (-32768..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_z_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32768, 32767 } /* (-32768..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_width_constr_5 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_width_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PathNode_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathNode, x), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_x_constr_2, &asn_PER_memb_x_constr_2, memb_x_constraint_1 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathNode, y), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_y_constr_3, &asn_PER_memb_y_constr_3, memb_y_constraint_1 }, + 0, 0, /* No default value */ + "y" + }, + { ATF_POINTER, 2, offsetof(struct PathNode, z), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_z_constr_4, &asn_PER_memb_z_constr_4, memb_z_constraint_1 }, + 0, 0, /* No default value */ + "z" + }, + { ATF_POINTER, 1, offsetof(struct PathNode, width), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_width_constr_5, &asn_PER_memb_width_constr_5, memb_width_constraint_1 }, + 0, 0, /* No default value */ + "width" + }, +}; +static const int asn_MAP_PathNode_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_PathNode_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathNode_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* x */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, -1, 0 }, /* y */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* z */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 } /* width */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathNode_specs_1 = { + sizeof(struct PathNode), + offsetof(struct PathNode, _asn_ctx), + asn_MAP_PathNode_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_PathNode_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathNode = { + "PathNode", + "PathNode", + &asn_OP_SEQUENCE, + asn_DEF_PathNode_tags_1, + sizeof(asn_DEF_PathNode_tags_1) + /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ + asn_DEF_PathNode_tags_1, /* Same as above */ + sizeof(asn_DEF_PathNode_tags_1) + /sizeof(asn_DEF_PathNode_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PathNode_1, + 4, /* Elements count */ + &asn_SPC_PathNode_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PathPrediction.c b/src/tmx/Asn_J2735/src/r63/PathPrediction.c new file mode 100644 index 000000000..129312014 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PathPrediction.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PathPrediction.h" + +asn_TYPE_member_t asn_MBR_PathPrediction_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, radiusOfCurve), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RadiusOfCurvature, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "radiusOfCurve" + }, + { ATF_NOFLAGS, 0, offsetof(struct PathPrediction, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Confidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, +}; +static const ber_tlv_tag_t asn_DEF_PathPrediction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PathPrediction_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radiusOfCurve */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* confidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PathPrediction_specs_1 = { + sizeof(struct PathPrediction), + offsetof(struct PathPrediction, _asn_ctx), + asn_MAP_PathPrediction_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PathPrediction = { + "PathPrediction", + "PathPrediction", + &asn_OP_SEQUENCE, + asn_DEF_PathPrediction_tags_1, + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + asn_DEF_PathPrediction_tags_1, /* Same as above */ + sizeof(asn_DEF_PathPrediction_tags_1) + /sizeof(asn_DEF_PathPrediction_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PathPrediction_1, + 2, /* Elements count */ + &asn_SPC_PathPrediction_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PayloadData.c b/src/tmx/Asn_J2735/src/r63/PayloadData.c new file mode 100644 index 000000000..1db29915c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PayloadData.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PayloadData.h" + +int +PayloadData_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 2048)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PayloadData_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..2048)) */}; +static asn_per_constraints_t asn_PER_type_PayloadData_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 11, 11, 1, 2048 } /* (SIZE(1..2048)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PayloadData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PayloadData = { + "PayloadData", + "PayloadData", + &asn_OP_OCTET_STRING, + asn_DEF_PayloadData_tags_1, + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + asn_DEF_PayloadData_tags_1, /* Same as above */ + sizeof(asn_DEF_PayloadData_tags_1) + /sizeof(asn_DEF_PayloadData_tags_1[0]), /* 1 */ + { &asn_OER_type_PayloadData_constr_1, &asn_PER_type_PayloadData_constr_1, PayloadData_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c b/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c new file mode 100644 index 000000000..c488c7f87 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PedestrianBicycleDetect.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PedestrianBicycleDetect.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PedestrianBicycleDetect_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PedestrianBicycleDetect = { + "PedestrianBicycleDetect", + "PedestrianBicycleDetect", + &asn_OP_BOOLEAN, + asn_DEF_PedestrianBicycleDetect_tags_1, + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + asn_DEF_PedestrianBicycleDetect_tags_1, /* Same as above */ + sizeof(asn_DEF_PedestrianBicycleDetect_tags_1) + /sizeof(asn_DEF_PedestrianBicycleDetect_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c b/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c new file mode 100644 index 000000000..1e1abf1ea --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalAssistive.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalAssistive.h" + +int +PersonalAssistive_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_PersonalAssistive_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalAssistive_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalAssistive = { + "PersonalAssistive", + "PersonalAssistive", + &asn_OP_BIT_STRING, + asn_DEF_PersonalAssistive_tags_1, + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + asn_DEF_PersonalAssistive_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalAssistive_tags_1) + /sizeof(asn_DEF_PersonalAssistive_tags_1[0]), /* 1 */ + { &asn_OER_type_PersonalAssistive_constr_1, &asn_PER_type_PersonalAssistive_constr_1, PersonalAssistive_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c b/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c new file mode 100644 index 000000000..490f0ccfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalClusterRadius.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalClusterRadius.h" + +int +PersonalClusterRadius_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 100)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..100) */, + -1}; +asn_per_constraints_t asn_PER_type_PersonalClusterRadius_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalClusterRadius_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalClusterRadius = { + "PersonalClusterRadius", + "PersonalClusterRadius", + &asn_OP_NativeInteger, + asn_DEF_PersonalClusterRadius_tags_1, + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + asn_DEF_PersonalClusterRadius_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalClusterRadius_tags_1) + /sizeof(asn_DEF_PersonalClusterRadius_tags_1[0]), /* 1 */ + { &asn_OER_type_PersonalClusterRadius_constr_1, &asn_PER_type_PersonalClusterRadius_constr_1, PersonalClusterRadius_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c b/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c new file mode 100644 index 000000000..918dd6011 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalCrossingInProgress.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalCrossingInProgress.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingInProgress_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingInProgress = { + "PersonalCrossingInProgress", + "PersonalCrossingInProgress", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingInProgress_tags_1, + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingInProgress_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingInProgress_tags_1) + /sizeof(asn_DEF_PersonalCrossingInProgress_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c b/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c new file mode 100644 index 000000000..fb82da6e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalCrossingRequest.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalCrossingRequest.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PersonalCrossingRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalCrossingRequest = { + "PersonalCrossingRequest", + "PersonalCrossingRequest", + &asn_OP_BOOLEAN, + asn_DEF_PersonalCrossingRequest_tags_1, + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + asn_DEF_PersonalCrossingRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalCrossingRequest_tags_1) + /sizeof(asn_DEF_PersonalCrossingRequest_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c new file mode 100644 index 000000000..9ed3525f1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUsageState.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalDeviceUsageState.h" + +int +PersonalDeviceUsageState_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_PersonalDeviceUsageState_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 9, 9 } /* (SIZE(9..9,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUsageState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUsageState = { + "PersonalDeviceUsageState", + "PersonalDeviceUsageState", + &asn_OP_BIT_STRING, + asn_DEF_PersonalDeviceUsageState_tags_1, + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUsageState_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUsageState_tags_1) + /sizeof(asn_DEF_PersonalDeviceUsageState_tags_1[0]), /* 1 */ + { &asn_OER_type_PersonalDeviceUsageState_constr_1, &asn_PER_type_PersonalDeviceUsageState_constr_1, PersonalDeviceUsageState_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c new file mode 100644 index 000000000..9492d3e0b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalDeviceUserType.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalDeviceUserType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PersonalDeviceUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PersonalDeviceUserType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "aPEDESTRIAN" }, + { 2, 13, "aPEDALCYCLIST" }, + { 3, 19, "aPUBLICSAFETYWORKER" }, + { 4, 8, "anANIMAL" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PersonalDeviceUserType_enum2value_1[] = { + 2, /* aPEDALCYCLIST(2) */ + 1, /* aPEDESTRIAN(1) */ + 3, /* aPUBLICSAFETYWORKER(3) */ + 4, /* anANIMAL(4) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PersonalDeviceUserType_specs_1 = { + asn_MAP_PersonalDeviceUserType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PersonalDeviceUserType_enum2value_1, /* N => "tag"; sorted by N */ + 5, /* Number of elements in the maps */ + 6, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PersonalDeviceUserType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PersonalDeviceUserType = { + "PersonalDeviceUserType", + "PersonalDeviceUserType", + &asn_OP_NativeEnumerated, + asn_DEF_PersonalDeviceUserType_tags_1, + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + asn_DEF_PersonalDeviceUserType_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalDeviceUserType_tags_1) + /sizeof(asn_DEF_PersonalDeviceUserType_tags_1[0]), /* 1 */ + { &asn_OER_type_PersonalDeviceUserType_constr_1, &asn_PER_type_PersonalDeviceUserType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PersonalDeviceUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c b/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c new file mode 100644 index 000000000..a73dc46fd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PersonalSafetyMessage.c @@ -0,0 +1,381 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PersonalSafetyMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_27 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_27[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_27[] = { + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_27 = { + sizeof(struct PersonalSafetyMessage__regional), + offsetof(struct PersonalSafetyMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_27 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_27, + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]) - 1, /* 1 */ + asn_DEF_regional_tags_27, /* Same as above */ + sizeof(asn_DEF_regional_tags_27) + /sizeof(asn_DEF_regional_tags_27[0]), /* 2 */ + { &asn_OER_type_regional_constr_27, &asn_PER_type_regional_constr_27, SEQUENCE_OF_constraint }, + asn_MBR_regional_27, + 1, /* Single element */ + &asn_SPC_regional_specs_27 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_PersonalSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUserType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, secMark), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "secMark" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, position), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, accuracy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accuracy" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, speed), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct PersonalSafetyMessage, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Heading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 18, offsetof(struct PersonalSafetyMessage, accelSet), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accelSet" + }, + { ATF_POINTER, 17, offsetof(struct PersonalSafetyMessage, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 16, offsetof(struct PersonalSafetyMessage, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 15, offsetof(struct PersonalSafetyMessage, propulsion), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_PropelledInformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "propulsion" + }, + { ATF_POINTER, 14, offsetof(struct PersonalSafetyMessage, useState), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalDeviceUsageState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "useState" + }, + { ATF_POINTER, 13, offsetof(struct PersonalSafetyMessage, crossRequest), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crossRequest" + }, + { ATF_POINTER, 12, offsetof(struct PersonalSafetyMessage, crossState), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalCrossingInProgress, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crossState" + }, + { ATF_POINTER, 11, offsetof(struct PersonalSafetyMessage, clusterSize), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NumberOfParticipantsInCluster, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "clusterSize" + }, + { ATF_POINTER, 10, offsetof(struct PersonalSafetyMessage, clusterRadius), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalClusterRadius, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "clusterRadius" + }, + { ATF_POINTER, 9, offsetof(struct PersonalSafetyMessage, eventResponderType), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyEventResponderWorkerType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventResponderType" + }, + { ATF_POINTER, 8, offsetof(struct PersonalSafetyMessage, activityType), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyAndRoadWorkerActivity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "activityType" + }, + { ATF_POINTER, 7, offsetof(struct PersonalSafetyMessage, activitySubType), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PublicSafetyDirectingTrafficSubType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "activitySubType" + }, + { ATF_POINTER, 6, offsetof(struct PersonalSafetyMessage, assistType), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PersonalAssistive, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "assistType" + }, + { ATF_POINTER, 5, offsetof(struct PersonalSafetyMessage, sizing), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UserSizeAndBehaviour, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sizing" + }, + { ATF_POINTER, 4, offsetof(struct PersonalSafetyMessage, attachment), + (ASN_TAG_CLASS_CONTEXT | (22 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Attachment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attachment" + }, + { ATF_POINTER, 3, offsetof(struct PersonalSafetyMessage, attachmentRadius), + (ASN_TAG_CLASS_CONTEXT | (23 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AttachmentRadius, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "attachmentRadius" + }, + { ATF_POINTER, 2, offsetof(struct PersonalSafetyMessage, animalType), + (ASN_TAG_CLASS_CONTEXT | (24 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "animalType" + }, + { ATF_POINTER, 1, offsetof(struct PersonalSafetyMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (25 << 2)), + 0, + &asn_DEF_regional_27, + 0, + { &asn_OER_memb_regional_constr_27, &asn_PER_memb_regional_constr_27, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_PersonalSafetyMessage_oms_1[] = { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }; +static const ber_tlv_tag_t asn_DEF_PersonalSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PersonalSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* secMark */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* accuracy */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* accelSet */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* propulsion */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* useState */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* crossRequest */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* crossState */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* clusterSize */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* clusterRadius */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* eventResponderType */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* activityType */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* activitySubType */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* assistType */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* sizing */ + { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* attachment */ + { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* attachmentRadius */ + { (ASN_TAG_CLASS_CONTEXT | (24 << 2)), 24, 0, 0 }, /* animalType */ + { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 25, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PersonalSafetyMessage_specs_1 = { + sizeof(struct PersonalSafetyMessage), + offsetof(struct PersonalSafetyMessage, _asn_ctx), + asn_MAP_PersonalSafetyMessage_tag2el_1, + 26, /* Count of tags in the map */ + asn_MAP_PersonalSafetyMessage_oms_1, /* Optional members */ + 18, 0, /* Root/Additions */ + 26, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PersonalSafetyMessage = { + "PersonalSafetyMessage", + "PersonalSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_PersonalSafetyMessage_tags_1, + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_PersonalSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_PersonalSafetyMessage_tags_1) + /sizeof(asn_DEF_PersonalSafetyMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PersonalSafetyMessage_1, + 26, /* Elements count */ + &asn_SPC_PersonalSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PitchDetected.c b/src/tmx/Asn_J2735/src/r63/PitchDetected.c new file mode 100644 index 000000000..531398fb6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PitchDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchDetected.h" + +int +PitchDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -7200 && value <= 7200)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-7200..7200) */, + -1}; +asn_per_constraints_t asn_PER_type_PitchDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, -7200, 7200 } /* (-7200..7200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PitchDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchDetected = { + "PitchDetected", + "PitchDetected", + &asn_OP_NativeInteger, + asn_DEF_PitchDetected_tags_1, + sizeof(asn_DEF_PitchDetected_tags_1) + /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ + asn_DEF_PitchDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchDetected_tags_1) + /sizeof(asn_DEF_PitchDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchDetected_constr_1, &asn_PER_type_PitchDetected_constr_1, PitchDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PitchRate.c b/src/tmx/Asn_J2735/src/r63/PitchRate.c new file mode 100644 index 000000000..368ba352d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PitchRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchRate.h" + +int +PitchRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_PitchRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PitchRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchRate = { + "PitchRate", + "PitchRate", + &asn_OP_NativeInteger, + asn_DEF_PitchRate_tags_1, + sizeof(asn_DEF_PitchRate_tags_1) + /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ + asn_DEF_PitchRate_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchRate_tags_1) + /sizeof(asn_DEF_PitchRate_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchRate_constr_1, &asn_PER_type_PitchRate_constr_1, PitchRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c b/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c new file mode 100644 index 000000000..d510e4c1f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PitchRateConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PitchRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PitchRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PitchRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_PitchRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_PitchRateConfidence_specs_1 = { + asn_MAP_PitchRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PitchRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PitchRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PitchRateConfidence = { + "PitchRateConfidence", + "PitchRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_PitchRateConfidence_tags_1, + sizeof(asn_DEF_PitchRateConfidence_tags_1) + /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_PitchRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PitchRateConfidence_tags_1) + /sizeof(asn_DEF_PitchRateConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_PitchRateConfidence_constr_1, &asn_PER_type_PitchRateConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PitchRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c b/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c new file mode 100644 index 000000000..ffcda06c5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PivotPointDescription.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PivotPointDescription.h" + +asn_TYPE_member_t asn_MBR_PivotPointDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B11, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pivotOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Angle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct PivotPointDescription, pivots), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotingAllowed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pivots" + }, +}; +static const ber_tlv_tag_t asn_DEF_PivotPointDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PivotPointDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pivots */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PivotPointDescription_specs_1 = { + sizeof(struct PivotPointDescription), + offsetof(struct PivotPointDescription, _asn_ctx), + asn_MAP_PivotPointDescription_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PivotPointDescription = { + "PivotPointDescription", + "PivotPointDescription", + &asn_OP_SEQUENCE, + asn_DEF_PivotPointDescription_tags_1, + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + asn_DEF_PivotPointDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotPointDescription_tags_1) + /sizeof(asn_DEF_PivotPointDescription_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PivotPointDescription_1, + 3, /* Elements count */ + &asn_SPC_PivotPointDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c b/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c new file mode 100644 index 000000000..3652b7068 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PivotingAllowed.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PivotingAllowed.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_PivotingAllowed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PivotingAllowed = { + "PivotingAllowed", + "PivotingAllowed", + &asn_OP_BOOLEAN, + asn_DEF_PivotingAllowed_tags_1, + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + asn_DEF_PivotingAllowed_tags_1, /* Same as above */ + sizeof(asn_DEF_PivotingAllowed_tags_1) + /sizeof(asn_DEF_PivotingAllowed_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Point.c b/src/tmx/Asn_J2735/src/r63/Point.c new file mode 100644 index 000000000..3b58c196d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Point.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Point.h" + +asn_TYPE_member_t asn_MBR_Point_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Point, x), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x" + }, + { ATF_NOFLAGS, 0, offsetof(struct Point, y), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "y" + }, + { ATF_POINTER, 1, offsetof(struct Point, z), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "z" + }, + { ATF_NOFLAGS, 0, offsetof(struct Point, width), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, +}; +static const int asn_MAP_Point_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_Point_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Point_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* x */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* y */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* z */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* width */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Point_specs_1 = { + sizeof(struct Point), + offsetof(struct Point, _asn_ctx), + asn_MAP_Point_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Point_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Point = { + "Point", + "Point", + &asn_OP_SEQUENCE, + asn_DEF_Point_tags_1, + sizeof(asn_DEF_Point_tags_1) + /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ + asn_DEF_Point_tags_1, /* Same as above */ + sizeof(asn_DEF_Point_tags_1) + /sizeof(asn_DEF_Point_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Point_1, + 4, /* Elements count */ + &asn_SPC_Point_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c new file mode 100644 index 000000000..6d8f62659 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpB.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Position3D-addGrpB.h" + +static asn_TYPE_member_t asn_MBR_Position3D_addGrpB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, latitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LatitudeDMS2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "latitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, longitude), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LongitudeDMS2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "longitude" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpB, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AddGrpB_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* latitude */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* longitude */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpB_specs_1 = { + sizeof(struct Position3D_addGrpB), + offsetof(struct Position3D_addGrpB, _asn_ctx), + asn_MAP_Position3D_addGrpB_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpB = { + "Position3D-addGrpB", + "Position3D-addGrpB", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpB_tags_1, + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpB_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpB_tags_1) + /sizeof(asn_DEF_Position3D_addGrpB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Position3D_addGrpB_1, + 3, /* Elements count */ + &asn_SPC_Position3D_addGrpB_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c new file mode 100644 index 000000000..146730c60 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpC.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Position3D-addGrpC.h" + +static asn_TYPE_member_t asn_MBR_Position3D_addGrpC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpC, altitude), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Altitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "altitude" + }, +}; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* altitude */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpC_specs_1 = { + sizeof(struct Position3D_addGrpC), + offsetof(struct Position3D_addGrpC, _asn_ctx), + asn_MAP_Position3D_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpC = { + "Position3D-addGrpC", + "Position3D-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpC_tags_1, + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpC_tags_1) + /sizeof(asn_DEF_Position3D_addGrpC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Position3D_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_Position3D_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c new file mode 100644 index 000000000..67422080d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Position3D-addGrpCarma.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpCarma" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "Position3D-addGrpCarma.h" + +asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D_addGrpCarma, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "long" + }, + { ATF_POINTER, 1, offsetof(struct Position3D_addGrpCarma, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const int asn_MAP_Position3D_addGrpCarma_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_Position3D_addGrpCarma_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_addGrpCarma_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_addGrpCarma_specs_1 = { + sizeof(struct Position3D_addGrpCarma), + offsetof(struct Position3D_addGrpCarma, _asn_ctx), + asn_MAP_Position3D_addGrpCarma_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Position3D_addGrpCarma_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D_addGrpCarma = { + "Position3D-addGrpCarma", + "Position3D-addGrpCarma", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_addGrpCarma_tags_1, + sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) + /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ + asn_DEF_Position3D_addGrpCarma_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_addGrpCarma_tags_1) + /sizeof(asn_DEF_Position3D_addGrpCarma_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Position3D_addGrpCarma_1, + 3, /* Elements count */ + &asn_SPC_Position3D_addGrpCarma_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Position3D.c b/src/tmx/Asn_J2735/src/r63/Position3D.c new file mode 100644 index 000000000..4d093646c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Position3D.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Position3D.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct Position3D__regional), + offsetof(struct Position3D__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Position3D_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Position3D, lat), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lat" + }, + { ATF_NOFLAGS, 0, offsetof(struct Position3D, Long), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "long" + }, + { ATF_POINTER, 2, offsetof(struct Position3D, elevation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_POINTER, 1, offsetof(struct Position3D, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_Position3D_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_Position3D_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Position3D_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lat */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* long */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Position3D_specs_1 = { + sizeof(struct Position3D), + offsetof(struct Position3D, _asn_ctx), + asn_MAP_Position3D_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_Position3D_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Position3D = { + "Position3D", + "Position3D", + &asn_OP_SEQUENCE, + asn_DEF_Position3D_tags_1, + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + asn_DEF_Position3D_tags_1, /* Same as above */ + sizeof(asn_DEF_Position3D_tags_1) + /sizeof(asn_DEF_Position3D_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Position3D_1, + 4, /* Elements count */ + &asn_SPC_Position3D_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PositionConfidence.c b/src/tmx/Asn_J2735/src/r63/PositionConfidence.c new file mode 100644 index 000000000..691168dd9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PositionConfidence.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PositionConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PositionConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PositionConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 5, "a500m" }, + { 2, 5, "a200m" }, + { 3, 5, "a100m" }, + { 4, 4, "a50m" }, + { 5, 4, "a20m" }, + { 6, 4, "a10m" }, + { 7, 3, "a5m" }, + { 8, 3, "a2m" }, + { 9, 3, "a1m" }, + { 10, 5, "a50cm" }, + { 11, 5, "a20cm" }, + { 12, 5, "a10cm" }, + { 13, 4, "a5cm" }, + { 14, 4, "a2cm" }, + { 15, 4, "a1cm" } +}; +static const unsigned int asn_MAP_PositionConfidence_enum2value_1[] = { + 3, /* a100m(3) */ + 12, /* a10cm(12) */ + 6, /* a10m(6) */ + 15, /* a1cm(15) */ + 9, /* a1m(9) */ + 2, /* a200m(2) */ + 11, /* a20cm(11) */ + 5, /* a20m(5) */ + 14, /* a2cm(14) */ + 8, /* a2m(8) */ + 1, /* a500m(1) */ + 10, /* a50cm(10) */ + 4, /* a50m(4) */ + 13, /* a5cm(13) */ + 7, /* a5m(7) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_PositionConfidence_specs_1 = { + asn_MAP_PositionConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PositionConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidence = { + "PositionConfidence", + "PositionConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_PositionConfidence_tags_1, + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidence_tags_1) + /sizeof(asn_DEF_PositionConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_PositionConfidence_constr_1, &asn_PER_type_PositionConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PositionConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c b/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c new file mode 100644 index 000000000..54e822b94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PositionConfidenceSet.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PositionConfidenceSet.h" + +asn_TYPE_member_t asn_MBR_PositionConfidenceSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, pos), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pos" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionConfidenceSet, elevation), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ElevationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionConfidenceSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionConfidenceSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pos */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* elevation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionConfidenceSet_specs_1 = { + sizeof(struct PositionConfidenceSet), + offsetof(struct PositionConfidenceSet, _asn_ctx), + asn_MAP_PositionConfidenceSet_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionConfidenceSet = { + "PositionConfidenceSet", + "PositionConfidenceSet", + &asn_OP_SEQUENCE, + asn_DEF_PositionConfidenceSet_tags_1, + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + asn_DEF_PositionConfidenceSet_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionConfidenceSet_tags_1) + /sizeof(asn_DEF_PositionConfidenceSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PositionConfidenceSet_1, + 2, /* Elements count */ + &asn_SPC_PositionConfidenceSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c b/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c new file mode 100644 index 000000000..fd2d344d1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PositionOffsetXYZ.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "PositionOffsetXYZ.h" + +asn_TYPE_member_t asn_MBR_PositionOffsetXYZ_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetX), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetX" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionOffsetXYZ, offsetY), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetY" + }, + { ATF_POINTER, 1, offsetof(struct PositionOffsetXYZ, offsetZ), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObjectDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetZ" + }, +}; +static const int asn_MAP_PositionOffsetXYZ_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_PositionOffsetXYZ_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionOffsetXYZ_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offsetX */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offsetY */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* offsetZ */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionOffsetXYZ_specs_1 = { + sizeof(struct PositionOffsetXYZ), + offsetof(struct PositionOffsetXYZ, _asn_ctx), + asn_MAP_PositionOffsetXYZ_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PositionOffsetXYZ_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionOffsetXYZ = { + "PositionOffsetXYZ", + "PositionOffsetXYZ", + &asn_OP_SEQUENCE, + asn_DEF_PositionOffsetXYZ_tags_1, + sizeof(asn_DEF_PositionOffsetXYZ_tags_1) + /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ + asn_DEF_PositionOffsetXYZ_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionOffsetXYZ_tags_1) + /sizeof(asn_DEF_PositionOffsetXYZ_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PositionOffsetXYZ_1, + 3, /* Elements count */ + &asn_SPC_PositionOffsetXYZ_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c b/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c new file mode 100644 index 000000000..2292b379b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PositionalAccuracy.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PositionalAccuracy.h" + +asn_TYPE_member_t asn_MBR_PositionalAccuracy_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMajor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "semiMajor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, semiMinor), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMinorAxisAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "semiMinor" + }, + { ATF_NOFLAGS, 0, offsetof(struct PositionalAccuracy, orientation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SemiMajorAxisOrientation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "orientation" + }, +}; +static const ber_tlv_tag_t asn_DEF_PositionalAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PositionalAccuracy_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* semiMajor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* semiMinor */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* orientation */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PositionalAccuracy_specs_1 = { + sizeof(struct PositionalAccuracy), + offsetof(struct PositionalAccuracy, _asn_ctx), + asn_MAP_PositionalAccuracy_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PositionalAccuracy = { + "PositionalAccuracy", + "PositionalAccuracy", + &asn_OP_SEQUENCE, + asn_DEF_PositionalAccuracy_tags_1, + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + asn_DEF_PositionalAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_PositionalAccuracy_tags_1) + /sizeof(asn_DEF_PositionalAccuracy_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PositionalAccuracy_1, + 3, /* Elements count */ + &asn_SPC_PositionalAccuracy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c b/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c new file mode 100644 index 000000000..11a977ee3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PreemptPriorityList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PreemptPriorityList.h" + +static asn_oer_constraints_t asn_OER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_PreemptPriorityList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PreemptPriorityList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalControlZone, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PreemptPriorityList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PreemptPriorityList_specs_1 = { + sizeof(struct PreemptPriorityList), + offsetof(struct PreemptPriorityList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PreemptPriorityList = { + "PreemptPriorityList", + "PreemptPriorityList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PreemptPriorityList_tags_1, + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + asn_DEF_PreemptPriorityList_tags_1, /* Same as above */ + sizeof(asn_DEF_PreemptPriorityList_tags_1) + /sizeof(asn_DEF_PreemptPriorityList_tags_1[0]), /* 1 */ + { &asn_OER_type_PreemptPriorityList_constr_1, &asn_PER_type_PreemptPriorityList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_PreemptPriorityList_1, + 1, /* Single element */ + &asn_SPC_PreemptPriorityList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c new file mode 100644 index 000000000..39118bdc3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PrioritizationResponse.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PrioritizationResponse.h" + +asn_TYPE_member_t asn_MBR_PrioritizationResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, priorState), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "priorState" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrioritizationResponse, signalGroup), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "signalGroup" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrioritizationResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* priorState */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* signalGroup */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrioritizationResponse_specs_1 = { + sizeof(struct PrioritizationResponse), + offsetof(struct PrioritizationResponse, _asn_ctx), + asn_MAP_PrioritizationResponse_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponse = { + "PrioritizationResponse", + "PrioritizationResponse", + &asn_OP_SEQUENCE, + asn_DEF_PrioritizationResponse_tags_1, + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponse_tags_1) + /sizeof(asn_DEF_PrioritizationResponse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PrioritizationResponse_1, + 3, /* Elements count */ + &asn_SPC_PrioritizationResponse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c new file mode 100644 index 000000000..7092944cb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PrioritizationResponseList.h" + +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..10)) */}; +asn_per_constraints_t asn_PER_type_PrioritizationResponseList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 10 } /* (SIZE(1..10)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PrioritizationResponseList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PrioritizationResponse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_PrioritizationResponseList_specs_1 = { + sizeof(struct PrioritizationResponseList), + offsetof(struct PrioritizationResponseList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseList = { + "PrioritizationResponseList", + "PrioritizationResponseList", + &asn_OP_SEQUENCE_OF, + asn_DEF_PrioritizationResponseList_tags_1, + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseList_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseList_tags_1) + /sizeof(asn_DEF_PrioritizationResponseList_tags_1[0]), /* 1 */ + { &asn_OER_type_PrioritizationResponseList_constr_1, &asn_PER_type_PrioritizationResponseList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_PrioritizationResponseList_1, + 1, /* Single element */ + &asn_SPC_PrioritizationResponseList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c new file mode 100644 index 000000000..b99f6dd7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PrioritizationResponseStatus.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PrioritizationResponseStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PrioritizationResponseStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PrioritizationResponseStatus_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 9, "requested" }, + { 2, 10, "processing" }, + { 3, 17, "watchOtherTraffic" }, + { 4, 7, "granted" }, + { 5, 8, "rejected" }, + { 6, 11, "maxPresence" }, + { 7, 15, "reserviceLocked" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PrioritizationResponseStatus_enum2value_1[] = { + 4, /* granted(4) */ + 6, /* maxPresence(6) */ + 2, /* processing(2) */ + 5, /* rejected(5) */ + 1, /* requested(1) */ + 7, /* reserviceLocked(7) */ + 0, /* unknown(0) */ + 3 /* watchOtherTraffic(3) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PrioritizationResponseStatus_specs_1 = { + asn_MAP_PrioritizationResponseStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PrioritizationResponseStatus_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PrioritizationResponseStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrioritizationResponseStatus = { + "PrioritizationResponseStatus", + "PrioritizationResponseStatus", + &asn_OP_NativeEnumerated, + asn_DEF_PrioritizationResponseStatus_tags_1, + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + asn_DEF_PrioritizationResponseStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_PrioritizationResponseStatus_tags_1) + /sizeof(asn_DEF_PrioritizationResponseStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_PrioritizationResponseStatus_constr_1, &asn_PER_type_PrioritizationResponseStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PrioritizationResponseStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Priority.c b/src/tmx/Asn_J2735/src/r63/Priority.c new file mode 100644 index 000000000..9371e8f30 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Priority.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Priority.h" + +int +Priority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Priority_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +asn_per_constraints_t asn_PER_type_Priority_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Priority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Priority = { + "Priority", + "Priority", + &asn_OP_OCTET_STRING, + asn_DEF_Priority_tags_1, + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + asn_DEF_Priority_tags_1, /* Same as above */ + sizeof(asn_DEF_Priority_tags_1) + /sizeof(asn_DEF_Priority_tags_1[0]), /* 1 */ + { &asn_OER_type_Priority_constr_1, &asn_PER_type_Priority_constr_1, Priority_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c b/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c new file mode 100644 index 000000000..aafc0441a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PriorityRequestType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PriorityRequestType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PriorityRequestType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PriorityRequestType_value2enum_1[] = { + { 0, 27, "priorityRequestTypeReserved" }, + { 1, 15, "priorityRequest" }, + { 2, 21, "priorityRequestUpdate" }, + { 3, 20, "priorityCancellation" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PriorityRequestType_enum2value_1[] = { + 3, /* priorityCancellation(3) */ + 1, /* priorityRequest(1) */ + 0, /* priorityRequestTypeReserved(0) */ + 2 /* priorityRequestUpdate(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PriorityRequestType_specs_1 = { + asn_MAP_PriorityRequestType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PriorityRequestType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PriorityRequestType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PriorityRequestType = { + "PriorityRequestType", + "PriorityRequestType", + &asn_OP_NativeEnumerated, + asn_DEF_PriorityRequestType_tags_1, + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + asn_DEF_PriorityRequestType_tags_1, /* Same as above */ + sizeof(asn_DEF_PriorityRequestType_tags_1) + /sizeof(asn_DEF_PriorityRequestType_tags_1[0]), /* 1 */ + { &asn_OER_type_PriorityRequestType_constr_1, &asn_PER_type_PriorityRequestType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PriorityRequestType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c b/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c new file mode 100644 index 000000000..e8e102c11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PrivilegedEventFlags.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PrivilegedEventFlags.h" + +int +PrivilegedEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +asn_per_constraints_t asn_PER_type_PrivilegedEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PrivilegedEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEventFlags = { + "PrivilegedEventFlags", + "PrivilegedEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_PrivilegedEventFlags_tags_1, + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEventFlags_tags_1) + /sizeof(asn_DEF_PrivilegedEventFlags_tags_1[0]), /* 1 */ + { &asn_OER_type_PrivilegedEventFlags_constr_1, &asn_PER_type_PrivilegedEventFlags_constr_1, PrivilegedEventFlags_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c b/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c new file mode 100644 index 000000000..7e61b1cbe --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PrivilegedEvents.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PrivilegedEvents.h" + +asn_TYPE_member_t asn_MBR_PrivilegedEvents_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, sspRights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspRights" + }, + { ATF_NOFLAGS, 0, offsetof(struct PrivilegedEvents, event), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrivilegedEventFlags, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "event" + }, +}; +static const ber_tlv_tag_t asn_DEF_PrivilegedEvents_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PrivilegedEvents_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* event */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PrivilegedEvents_specs_1 = { + sizeof(struct PrivilegedEvents), + offsetof(struct PrivilegedEvents, _asn_ctx), + asn_MAP_PrivilegedEvents_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PrivilegedEvents = { + "PrivilegedEvents", + "PrivilegedEvents", + &asn_OP_SEQUENCE, + asn_DEF_PrivilegedEvents_tags_1, + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + asn_DEF_PrivilegedEvents_tags_1, /* Same as above */ + sizeof(asn_DEF_PrivilegedEvents_tags_1) + /sizeof(asn_DEF_PrivilegedEvents_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PrivilegedEvents_1, + 2, /* Elements count */ + &asn_SPC_PrivilegedEvents_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c b/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c new file mode 100644 index 000000000..1ce82f64d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ProbeDataManagement.c @@ -0,0 +1,315 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ProbeDataManagement.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_term_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_term_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_snapshot_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_snapshot_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_13 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_term_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termtime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "termtime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__term, choice.termDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TermDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "termDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_term_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* termtime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* termDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_term_specs_5 = { + sizeof(struct ProbeDataManagement__term), + offsetof(struct ProbeDataManagement__term, _asn_ctx), + offsetof(struct ProbeDataManagement__term, present), + sizeof(((struct ProbeDataManagement__term *)0)->present), + asn_MAP_term_tag2el_5, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_term_5 = { + "term", + "term", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_term_constr_5, &asn_PER_type_term_constr_5, CHOICE_constraint }, + asn_MBR_term_5, + 2, /* Elements count */ + &asn_SPC_term_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_snapshot_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "snapshotTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement__snapshot, choice.snapshotDistance), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SnapshotDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "snapshotDistance" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_snapshot_tag2el_8[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* snapshotTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* snapshotDistance */ +}; +static asn_CHOICE_specifics_t asn_SPC_snapshot_specs_8 = { + sizeof(struct ProbeDataManagement__snapshot), + offsetof(struct ProbeDataManagement__snapshot, _asn_ctx), + offsetof(struct ProbeDataManagement__snapshot, present), + sizeof(((struct ProbeDataManagement__snapshot *)0)->present), + asn_MAP_snapshot_tag2el_8, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshot_8 = { + "snapshot", + "snapshot", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_snapshot_constr_8, &asn_PER_type_snapshot_constr_8, CHOICE_constraint }, + asn_MBR_snapshot_8, + 2, /* Elements count */ + &asn_SPC_snapshot_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_13[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_13 = { + sizeof(struct ProbeDataManagement__regional), + offsetof(struct ProbeDataManagement__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_13 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_13, + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]) - 1, /* 1 */ + asn_DEF_regional_tags_13, /* Same as above */ + sizeof(asn_DEF_regional_tags_13) + /sizeof(asn_DEF_regional_tags_13[0]), /* 2 */ + { &asn_OER_type_regional_constr_13, &asn_PER_type_regional_constr_13, SEQUENCE_OF_constraint }, + asn_MBR_regional_13, + 1, /* Single element */ + &asn_SPC_regional_specs_13 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeDataManagement_1[] = { + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, sample), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Sample, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sample" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, directions), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "directions" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, term), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_term_5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "term" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, snapshot), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_snapshot_8, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "snapshot" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeDataManagement, txInterval), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "txInterval" + }, + { ATF_POINTER, 2, offsetof(struct ProbeDataManagement, dataElements), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusRequestList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dataElements" + }, + { ATF_POINTER, 1, offsetof(struct ProbeDataManagement, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_13, + 0, + { &asn_OER_memb_regional_constr_13, &asn_PER_memb_regional_constr_13, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeDataManagement_oms_1[] = { 0, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_ProbeDataManagement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeDataManagement_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sample */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directions */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* term */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* snapshot */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* txInterval */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataElements */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeDataManagement_specs_1 = { + sizeof(struct ProbeDataManagement), + offsetof(struct ProbeDataManagement, _asn_ctx), + asn_MAP_ProbeDataManagement_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_ProbeDataManagement_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeDataManagement = { + "ProbeDataManagement", + "ProbeDataManagement", + &asn_OP_SEQUENCE, + asn_DEF_ProbeDataManagement_tags_1, + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + asn_DEF_ProbeDataManagement_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeDataManagement_tags_1) + /sizeof(asn_DEF_ProbeDataManagement_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ProbeDataManagement_1, + 8, /* Elements count */ + &asn_SPC_ProbeDataManagement_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c b/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c new file mode 100644 index 000000000..f5863d363 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ProbeSegmentNumber.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ProbeSegmentNumber.h" + +int +ProbeSegmentNumber_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_ProbeSegmentNumber_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ProbeSegmentNumber_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProbeSegmentNumber = { + "ProbeSegmentNumber", + "ProbeSegmentNumber", + &asn_OP_NativeInteger, + asn_DEF_ProbeSegmentNumber_tags_1, + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + asn_DEF_ProbeSegmentNumber_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeSegmentNumber_tags_1) + /sizeof(asn_DEF_ProbeSegmentNumber_tags_1[0]), /* 1 */ + { &asn_OER_type_ProbeSegmentNumber_constr_1, &asn_PER_type_ProbeSegmentNumber_constr_1, ProbeSegmentNumber_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c b/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c new file mode 100644 index 000000000..b2ea46570 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ProbeVehicleData.c @@ -0,0 +1,270 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ProbeVehicleData.h" + +static int +memb_snapshots_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 32)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +static asn_per_constraints_t asn_PER_type_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_snapshots_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +static asn_per_constraints_t asn_PER_memb_snapshots_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_snapshots_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Snapshot, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_snapshots_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_snapshots_specs_7 = { + sizeof(struct ProbeVehicleData__snapshots), + offsetof(struct ProbeVehicleData__snapshots, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_snapshots_7 = { + "snapshots", + "snapshots", + &asn_OP_SEQUENCE_OF, + asn_DEF_snapshots_tags_7, + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]) - 1, /* 1 */ + asn_DEF_snapshots_tags_7, /* Same as above */ + sizeof(asn_DEF_snapshots_tags_7) + /sizeof(asn_DEF_snapshots_tags_7[0]), /* 2 */ + { &asn_OER_type_snapshots_constr_7, &asn_PER_type_snapshots_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_snapshots_7, + 1, /* Single element */ + &asn_SPC_snapshots_specs_7 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct ProbeVehicleData__regional), + offsetof(struct ProbeVehicleData__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProbeVehicleData_1[] = { + { ATF_POINTER, 3, offsetof(struct ProbeVehicleData, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct ProbeVehicleData, segNum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProbeSegmentNumber, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "segNum" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, probeID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "probeID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, startVector), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "startVector" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_NOFLAGS, 0, offsetof(struct ProbeVehicleData, snapshots), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_snapshots_7, + 0, + { &asn_OER_memb_snapshots_constr_7, &asn_PER_memb_snapshots_constr_7, memb_snapshots_constraint_1 }, + 0, 0, /* No default value */ + "snapshots" + }, + { ATF_POINTER, 1, offsetof(struct ProbeVehicleData, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_ProbeVehicleData_oms_1[] = { 0, 1, 2, 6 }; +static const ber_tlv_tag_t asn_DEF_ProbeVehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ProbeVehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* segNum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* probeID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startVector */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* snapshots */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ProbeVehicleData_specs_1 = { + sizeof(struct ProbeVehicleData), + offsetof(struct ProbeVehicleData, _asn_ctx), + asn_MAP_ProbeVehicleData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_ProbeVehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ProbeVehicleData = { + "ProbeVehicleData", + "ProbeVehicleData", + &asn_OP_SEQUENCE, + asn_DEF_ProbeVehicleData_tags_1, + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + asn_DEF_ProbeVehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_ProbeVehicleData_tags_1) + /sizeof(asn_DEF_ProbeVehicleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ProbeVehicleData_1, + 7, /* Elements count */ + &asn_SPC_ProbeVehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PropelledInformation.c b/src/tmx/Asn_J2735/src/r63/PropelledInformation.c new file mode 100644 index 000000000..b7fe1ba2a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PropelledInformation.c @@ -0,0 +1,75 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PropelledInformation.h" + +static asn_oer_constraints_t asn_OER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PropelledInformation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_PropelledInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.human), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HumanPropelledType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "human" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.animal), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AnimalPropelledType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "animal" + }, + { ATF_NOFLAGS, 0, offsetof(struct PropelledInformation, choice.motor), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MotorizedPropelledType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "motor" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_PropelledInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* human */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* animal */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* motor */ +}; +asn_CHOICE_specifics_t asn_SPC_PropelledInformation_specs_1 = { + sizeof(struct PropelledInformation), + offsetof(struct PropelledInformation, _asn_ctx), + offsetof(struct PropelledInformation, present), + sizeof(((struct PropelledInformation *)0)->present), + asn_MAP_PropelledInformation_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_PropelledInformation = { + "PropelledInformation", + "PropelledInformation", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_PropelledInformation_constr_1, &asn_PER_type_PropelledInformation_constr_1, CHOICE_constraint }, + asn_MBR_PropelledInformation_1, + 3, /* Elements count */ + &asn_SPC_PropelledInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c new file mode 100644 index 000000000..23f386344 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PublicSafetyAndRoadWorkerActivity.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PublicSafetyAndRoadWorkerActivity.h" + +int +PublicSafetyAndRoadWorkerActivity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 6, 6 } /* (SIZE(6..6,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyAndRoadWorkerActivity = { + "PublicSafetyAndRoadWorkerActivity", + "PublicSafetyAndRoadWorkerActivity", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1) + /sizeof(asn_DEF_PublicSafetyAndRoadWorkerActivity_tags_1[0]), /* 1 */ + { &asn_OER_type_PublicSafetyAndRoadWorkerActivity_constr_1, &asn_PER_type_PublicSafetyAndRoadWorkerActivity_constr_1, PublicSafetyAndRoadWorkerActivity_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c new file mode 100644 index 000000000..b14241a22 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PublicSafetyDirectingTrafficSubType.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PublicSafetyDirectingTrafficSubType.h" + +int +PublicSafetyDirectingTrafficSubType_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 7)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 7, 7 } /* (SIZE(7..7,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyDirectingTrafficSubType = { + "PublicSafetyDirectingTrafficSubType", + "PublicSafetyDirectingTrafficSubType", + &asn_OP_BIT_STRING, + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1) + /sizeof(asn_DEF_PublicSafetyDirectingTrafficSubType_tags_1[0]), /* 1 */ + { &asn_OER_type_PublicSafetyDirectingTrafficSubType_constr_1, &asn_PER_type_PublicSafetyDirectingTrafficSubType_constr_1, PublicSafetyDirectingTrafficSubType_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c b/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c new file mode 100644 index 000000000..49961c177 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/PublicSafetyEventResponderWorkerType.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "PublicSafetyEventResponderWorkerType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "towOperater" }, + { 2, 16, "fireAndEMSWorker" }, + { 3, 10, "aDOTWorker" }, + { 4, 14, "lawEnforcement" }, + { 5, 15, "hazmatResponder" }, + { 6, 19, "animalControlWorker" }, + { 7, 14, "otherPersonnel" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1[] = { + 3, /* aDOTWorker(3) */ + 6, /* animalControlWorker(6) */ + 2, /* fireAndEMSWorker(2) */ + 5, /* hazmatResponder(5) */ + 4, /* lawEnforcement(4) */ + 7, /* otherPersonnel(7) */ + 1, /* towOperater(1) */ + 0 /* unavailable(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 = { + asn_MAP_PublicSafetyEventResponderWorkerType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_PublicSafetyEventResponderWorkerType_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PublicSafetyEventResponderWorkerType = { + "PublicSafetyEventResponderWorkerType", + "PublicSafetyEventResponderWorkerType", + &asn_OP_NativeEnumerated, + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + asn_DEF_PublicSafetyEventResponderWorkerType_tags_1, /* Same as above */ + sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1) + /sizeof(asn_DEF_PublicSafetyEventResponderWorkerType_tags_1[0]), /* 1 */ + { &asn_OER_type_PublicSafetyEventResponderWorkerType_constr_1, &asn_PER_type_PublicSafetyEventResponderWorkerType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_PublicSafetyEventResponderWorkerType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c b/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c new file mode 100644 index 000000000..8b30fa08d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCM-Revision.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCM-Revision.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RTCM_Revision_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RTCM_Revision_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "rtcmRev2" }, + { 2, 8, "rtcmRev3" }, + { 3, 8, "reserved" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RTCM_Revision_enum2value_1[] = { + 3, /* reserved(3) */ + 1, /* rtcmRev2(1) */ + 2, /* rtcmRev3(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RTCM_Revision_specs_1 = { + asn_MAP_RTCM_Revision_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RTCM_Revision_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RTCM_Revision_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCM_Revision = { + "RTCM-Revision", + "RTCM-Revision", + &asn_OP_NativeEnumerated, + asn_DEF_RTCM_Revision_tags_1, + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + asn_DEF_RTCM_Revision_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCM_Revision_tags_1) + /sizeof(asn_DEF_RTCM_Revision_tags_1[0]), /* 1 */ + { &asn_OER_type_RTCM_Revision_constr_1, &asn_PER_type_RTCM_Revision_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RTCM_Revision_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCMPackage.c b/src/tmx/Asn_J2735/src/r63/RTCMPackage.c new file mode 100644 index 000000000..5a9b610d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCMPackage.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCMPackage.h" + +asn_TYPE_member_t asn_MBR_RTCMPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct RTCMPackage, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMPackage, msgs), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgs" + }, +}; +static const int asn_MAP_RTCMPackage_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RTCMPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* msgs */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMPackage_specs_1 = { + sizeof(struct RTCMPackage), + offsetof(struct RTCMPackage, _asn_ctx), + asn_MAP_RTCMPackage_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RTCMPackage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMPackage = { + "RTCMPackage", + "RTCMPackage", + &asn_OP_SEQUENCE, + asn_DEF_RTCMPackage_tags_1, + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + asn_DEF_RTCMPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMPackage_tags_1) + /sizeof(asn_DEF_RTCMPackage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RTCMPackage_1, + 2, /* Elements count */ + &asn_SPC_RTCMPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c b/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c new file mode 100644 index 000000000..8c35dd78a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCMcorrections.c @@ -0,0 +1,191 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCMcorrections.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_8 = { + sizeof(struct RTCMcorrections__regional), + offsetof(struct RTCMcorrections__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_8 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_8, + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]) - 1, /* 1 */ + asn_DEF_regional_tags_8, /* Same as above */ + sizeof(asn_DEF_regional_tags_8) + /sizeof(asn_DEF_regional_tags_8[0]), /* 2 */ + { &asn_OER_type_regional_constr_8, &asn_PER_type_regional_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_regional_8, + 1, /* Single element */ + &asn_SPC_regional_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RTCMcorrections_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, rev), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCM_Revision, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rev" + }, + { ATF_POINTER, 3, offsetof(struct RTCMcorrections, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct RTCMcorrections, anchorPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "anchorPoint" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, rtcmHeader), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMheader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rtcmHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMcorrections, msgs), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMmessageList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgs" + }, + { ATF_POINTER, 1, offsetof(struct RTCMcorrections, regional), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_regional_8, + 0, + { &asn_OER_memb_regional_constr_8, &asn_PER_memb_regional_constr_8, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RTCMcorrections_oms_1[] = { 2, 3, 4, 6 }; +static const ber_tlv_tag_t asn_DEF_RTCMcorrections_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMcorrections_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rev */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* anchorPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rtcmHeader */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* msgs */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMcorrections_specs_1 = { + sizeof(struct RTCMcorrections), + offsetof(struct RTCMcorrections, _asn_ctx), + asn_MAP_RTCMcorrections_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_RTCMcorrections_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMcorrections = { + "RTCMcorrections", + "RTCMcorrections", + &asn_OP_SEQUENCE, + asn_DEF_RTCMcorrections_tags_1, + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + asn_DEF_RTCMcorrections_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMcorrections_tags_1) + /sizeof(asn_DEF_RTCMcorrections_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RTCMcorrections_1, + 7, /* Elements count */ + &asn_SPC_RTCMcorrections_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCMheader.c b/src/tmx/Asn_J2735/src/r63/RTCMheader.c new file mode 100644 index 000000000..43a3622e5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCMheader.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCMheader.h" + +asn_TYPE_member_t asn_MBR_RTCMheader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, status), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "status" + }, + { ATF_NOFLAGS, 0, offsetof(struct RTCMheader, offsetSet), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AntennaOffsetSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offsetSet" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMheader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RTCMheader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* offsetSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RTCMheader_specs_1 = { + sizeof(struct RTCMheader), + offsetof(struct RTCMheader, _asn_ctx), + asn_MAP_RTCMheader_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMheader = { + "RTCMheader", + "RTCMheader", + &asn_OP_SEQUENCE, + asn_DEF_RTCMheader_tags_1, + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + asn_DEF_RTCMheader_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMheader_tags_1) + /sizeof(asn_DEF_RTCMheader_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RTCMheader_1, + 2, /* Elements count */ + &asn_SPC_RTCMheader_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCMmessage.c b/src/tmx/Asn_J2735/src/r63/RTCMmessage.c new file mode 100644 index 000000000..5d4a80812 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCMmessage.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCMmessage.h" + +int +RTCMmessage_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1023)) */}; +asn_per_constraints_t asn_PER_type_RTCMmessage_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1023 } /* (SIZE(1..1023)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RTCMmessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessage = { + "RTCMmessage", + "RTCMmessage", + &asn_OP_OCTET_STRING, + asn_DEF_RTCMmessage_tags_1, + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessage_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessage_tags_1) + /sizeof(asn_DEF_RTCMmessage_tags_1[0]), /* 1 */ + { &asn_OER_type_RTCMmessage_constr_1, &asn_PER_type_RTCMmessage_constr_1, RTCMmessage_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c b/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c new file mode 100644 index 000000000..d2a380d10 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RTCMmessageList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RTCMmessageList.h" + +static asn_oer_constraints_t asn_OER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +asn_per_constraints_t asn_PER_type_RTCMmessageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RTCMmessageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RTCMmessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RTCMmessageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RTCMmessageList_specs_1 = { + sizeof(struct RTCMmessageList), + offsetof(struct RTCMmessageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RTCMmessageList = { + "RTCMmessageList", + "RTCMmessageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RTCMmessageList_tags_1, + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + asn_DEF_RTCMmessageList_tags_1, /* Same as above */ + sizeof(asn_DEF_RTCMmessageList_tags_1) + /sizeof(asn_DEF_RTCMmessageList_tags_1[0]), /* 1 */ + { &asn_OER_type_RTCMmessageList_constr_1, &asn_PER_type_RTCMmessageList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RTCMmessageList_1, + 1, /* Single element */ + &asn_SPC_RTCMmessageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Radius-B12.c b/src/tmx/Asn_J2735/src/r63/Radius-B12.c new file mode 100644 index 000000000..099c59e40 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Radius-B12.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Radius-B12.h" + +int +Radius_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Radius_B12_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +asn_per_constraints_t asn_PER_type_Radius_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Radius_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Radius_B12 = { + "Radius-B12", + "Radius-B12", + &asn_OP_NativeInteger, + asn_DEF_Radius_B12_tags_1, + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + asn_DEF_Radius_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Radius_B12_tags_1) + /sizeof(asn_DEF_Radius_B12_tags_1[0]), /* 1 */ + { &asn_OER_type_Radius_B12_constr_1, &asn_PER_type_Radius_B12_constr_1, Radius_B12_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c b/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c new file mode 100644 index 000000000..0b8e1e784 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RadiusOfCurvature.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RadiusOfCurvature.h" + +int +RadiusOfCurvature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_RadiusOfCurvature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RadiusOfCurvature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RadiusOfCurvature = { + "RadiusOfCurvature", + "RadiusOfCurvature", + &asn_OP_NativeInteger, + asn_DEF_RadiusOfCurvature_tags_1, + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + asn_DEF_RadiusOfCurvature_tags_1, /* Same as above */ + sizeof(asn_DEF_RadiusOfCurvature_tags_1) + /sizeof(asn_DEF_RadiusOfCurvature_tags_1[0]), /* 1 */ + { &asn_OER_type_RadiusOfCurvature_constr_1, &asn_PER_type_RadiusOfCurvature_constr_1, RadiusOfCurvature_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RainSensor.c b/src/tmx/Asn_J2735/src/r63/RainSensor.c new file mode 100644 index 000000000..bbdd002e6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RainSensor.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RainSensor.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RainSensor_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RainSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RainSensor_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 9, "lightMist" }, + { 2, 9, "heavyMist" }, + { 3, 18, "lightRainOrDrizzle" }, + { 4, 4, "rain" }, + { 5, 12, "moderateRain" }, + { 6, 9, "heavyRain" }, + { 7, 13, "heavyDownpour" } +}; +static const unsigned int asn_MAP_RainSensor_enum2value_1[] = { + 7, /* heavyDownpour(7) */ + 2, /* heavyMist(2) */ + 6, /* heavyRain(6) */ + 1, /* lightMist(1) */ + 3, /* lightRainOrDrizzle(3) */ + 5, /* moderateRain(5) */ + 0, /* none(0) */ + 4 /* rain(4) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RainSensor_specs_1 = { + asn_MAP_RainSensor_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RainSensor_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RainSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RainSensor = { + "RainSensor", + "RainSensor", + &asn_OP_NativeEnumerated, + asn_DEF_RainSensor_tags_1, + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + asn_DEF_RainSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_RainSensor_tags_1) + /sizeof(asn_DEF_RainSensor_tags_1[0]), /* 1 */ + { &asn_OER_type_RainSensor_constr_1, &asn_PER_type_RainSensor_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RainSensor_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegionId.c b/src/tmx/Asn_J2735/src/r63/RegionId.c new file mode 100644 index 000000000..dff1b7a9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegionId.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RegionId.h" + +int +RegionId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RegionId_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_RegionId_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RegionId_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RegionId = { + "RegionId", + "RegionId", + &asn_OP_NativeInteger, + asn_DEF_RegionId_tags_1, + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + asn_DEF_RegionId_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionId_tags_1) + /sizeof(asn_DEF_RegionId_tags_1[0]), /* 1 */ + { &asn_OER_type_RegionId_constr_1, &asn_PER_type_RegionId_constr_1, RegionId_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegionList.c b/src/tmx/Asn_J2735/src/r63/RegionList.c new file mode 100644 index 000000000..cf10441e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegionList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RegionList.h" + +static asn_oer_constraints_t asn_OER_type_RegionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..64)) */}; +asn_per_constraints_t asn_PER_type_RegionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RegionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegionOffsets, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RegionList_specs_1 = { + sizeof(struct RegionList), + offsetof(struct RegionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionList = { + "RegionList", + "RegionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RegionList_tags_1, + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + asn_DEF_RegionList_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionList_tags_1) + /sizeof(asn_DEF_RegionList_tags_1[0]), /* 1 */ + { &asn_OER_type_RegionList_constr_1, &asn_PER_type_RegionList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RegionList_1, + 1, /* Single element */ + &asn_SPC_RegionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegionOffsets.c b/src/tmx/Asn_J2735/src/r63/RegionOffsets.c new file mode 100644 index 000000000..c290f5c16 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegionOffsets.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RegionOffsets.h" + +asn_TYPE_member_t asn_MBR_RegionOffsets_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, xOffset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "xOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionOffsets, yOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yOffset" + }, + { ATF_POINTER, 1, offsetof(struct RegionOffsets, zOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OffsetLL_B16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "zOffset" + }, +}; +static const int asn_MAP_RegionOffsets_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RegionOffsets_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionOffsets_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* xOffset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* yOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* zOffset */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionOffsets_specs_1 = { + sizeof(struct RegionOffsets), + offsetof(struct RegionOffsets, _asn_ctx), + asn_MAP_RegionOffsets_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionOffsets_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionOffsets = { + "RegionOffsets", + "RegionOffsets", + &asn_OP_SEQUENCE, + asn_DEF_RegionOffsets_tags_1, + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + asn_DEF_RegionOffsets_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionOffsets_tags_1) + /sizeof(asn_DEF_RegionOffsets_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RegionOffsets_1, + 3, /* Elements count */ + &asn_SPC_RegionOffsets_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegionPointSet.c b/src/tmx/Asn_J2735/src/r63/RegionPointSet.c new file mode 100644 index 000000000..e35608874 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegionPointSet.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RegionPointSet.h" + +asn_TYPE_member_t asn_MBR_RegionPointSet_1[] = { + { ATF_POINTER, 2, offsetof(struct RegionPointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 1, offsetof(struct RegionPointSet, scale), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Zoom, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegionPointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_RegionPointSet_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_RegionPointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegionPointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegionPointSet_specs_1 = { + sizeof(struct RegionPointSet), + offsetof(struct RegionPointSet, _asn_ctx), + asn_MAP_RegionPointSet_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RegionPointSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegionPointSet = { + "RegionPointSet", + "RegionPointSet", + &asn_OP_SEQUENCE, + asn_DEF_RegionPointSet_tags_1, + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + asn_DEF_RegionPointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_RegionPointSet_tags_1) + /sizeof(asn_DEF_RegionPointSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RegionPointSet_1, + 3, /* Elements count */ + &asn_SPC_RegionPointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegionalExtension.c b/src/tmx/Asn_J2735/src/r63/RegionalExtension.c new file mode 100644 index 000000000..dad4e67ad --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegionalExtension.c @@ -0,0 +1,242 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_2022-11-21.asn" + * `asn1c -fcompound-names -D ../include/generated/` + */ + +#include "RegionalExtension.h" + +static const long asn_VAL_10_DSRC_addGrpCarma = 128; +static const asn_ioc_cell_t asn_IOS_Reg_BasicSafetyMessage_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_10_DSRC_addGrpCarma }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage_addGrpCarma } +}; +static const asn_ioc_set_t asn_IOS_Reg_BasicSafetyMessage_1[] = { + { 1, 2, asn_IOS_Reg_BasicSafetyMessage_1_rows } +}; +static int +memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0L && value <= 255L)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_Reg_BasicSafetyMessage_regExtValue_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_Reg_BasicSafetyMessage_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &Type */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Reg_BasicSafetyMessage, regionId)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_regExtValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regionId_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regionId_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +#if !defined(ASN_DISABLE_OER_SUPPORT) +static asn_oer_constraints_t asn_OER_memb_regExtValue_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) +static asn_per_constraints_t asn_PER_memb_regExtValue_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ +static asn_TYPE_member_t asn_MBR_regExtValue_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage__regExtValue, choice.BasicSafetyMessage_addGrpCarma), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_BasicSafetyMessage_addGrpCarma, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + 0 + }, + 0, 0, /* No default value */ + "BasicSafetyMessage-addGrpCarma" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_regExtValue_tag2el_3[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* BasicSafetyMessage-addGrpCarma */ +}; +static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { + sizeof(struct Reg_BasicSafetyMessage__regExtValue), + offsetof(struct Reg_BasicSafetyMessage__regExtValue, _asn_ctx), + offsetof(struct Reg_BasicSafetyMessage__regExtValue, present), + sizeof(((struct Reg_BasicSafetyMessage__regExtValue *)0)->present), + asn_MAP_regExtValue_tag2el_3, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { + "regExtValue", + "regExtValue", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + OPEN_TYPE_constraint + }, + asn_MBR_regExtValue_3, + 1, /* Elements count */ + &asn_SPC_regExtValue_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regionId), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionId, + 0, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regionId_constr_2, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regionId_constraint_1 + }, + 0, 0, /* No default value */ + "regionId" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct Reg_BasicSafetyMessage, regExtValue), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_regExtValue_3, + select_Reg_BasicSafetyMessage_regExtValue_type, + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + &asn_OER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + &asn_PER_memb_regExtValue_constr_3, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + memb_regExtValue_constraint_1 + }, + 0, 0, /* No default value */ + "regExtValue" + }, +}; +static const ber_tlv_tag_t asn_DEF_Reg_BasicSafetyMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Reg_BasicSafetyMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* regionId */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regExtValue */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Reg_BasicSafetyMessage_specs_1 = { + sizeof(struct Reg_BasicSafetyMessage), + offsetof(struct Reg_BasicSafetyMessage, _asn_ctx), + asn_MAP_Reg_BasicSafetyMessage_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Reg_BasicSafetyMessage = { + "Reg-BasicSafetyMessage", + "Reg-BasicSafetyMessage", + &asn_OP_SEQUENCE, + asn_DEF_Reg_BasicSafetyMessage_tags_1, + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + asn_DEF_Reg_BasicSafetyMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1) + /sizeof(asn_DEF_Reg_BasicSafetyMessage_tags_1[0]), /* 1 */ + { +#if !defined(ASN_DISABLE_OER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ +#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) + 0, +#endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ + SEQUENCE_constraint + }, + asn_MBR_Reg_BasicSafetyMessage_1, + 2, /* Elements count */ + &asn_SPC_Reg_BasicSafetyMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c b/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c new file mode 100644 index 000000000..16367650f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RegulatorySpeedLimit.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RegulatorySpeedLimit.h" + +asn_TYPE_member_t asn_MBR_RegulatorySpeedLimit_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RegulatorySpeedLimit, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_RegulatorySpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RegulatorySpeedLimit_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RegulatorySpeedLimit_specs_1 = { + sizeof(struct RegulatorySpeedLimit), + offsetof(struct RegulatorySpeedLimit, _asn_ctx), + asn_MAP_RegulatorySpeedLimit_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RegulatorySpeedLimit = { + "RegulatorySpeedLimit", + "RegulatorySpeedLimit", + &asn_OP_SEQUENCE, + asn_DEF_RegulatorySpeedLimit_tags_1, + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_RegulatorySpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_RegulatorySpeedLimit_tags_1) + /sizeof(asn_DEF_RegulatorySpeedLimit_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RegulatorySpeedLimit_1, + 2, /* Elements count */ + &asn_SPC_RegulatorySpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RepeatParams.c b/src/tmx/Asn_J2735/src/r63/RepeatParams.c new file mode 100644 index 000000000..e83580572 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RepeatParams.c @@ -0,0 +1,169 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RepeatParams.h" + +static int +memb_offset_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_period_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_span_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1439)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_offset_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_offset_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_period_constr_3 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_period_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_span_constr_4 CC_NOTUSED = { + { 2, 1 } /* (0..1439) */, + -1}; +static asn_per_constraints_t asn_PER_memb_span_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 1439 } /* (0..1439) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RepeatParams_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, offset), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_offset_constr_2, &asn_PER_memb_offset_constr_2, memb_offset_constraint_1 }, + 0, 0, /* No default value */ + "offset" + }, + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, period), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_period_constr_3, &asn_PER_memb_period_constr_3, memb_period_constraint_1 }, + 0, 0, /* No default value */ + "period" + }, + { ATF_NOFLAGS, 0, offsetof(struct RepeatParams, span), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_span_constr_4, &asn_PER_memb_span_constr_4, memb_span_constraint_1 }, + 0, 0, /* No default value */ + "span" + }, +}; +static const ber_tlv_tag_t asn_DEF_RepeatParams_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RepeatParams_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* period */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* span */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RepeatParams_specs_1 = { + sizeof(struct RepeatParams), + offsetof(struct RepeatParams, _asn_ctx), + asn_MAP_RepeatParams_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RepeatParams = { + "RepeatParams", + "RepeatParams", + &asn_OP_SEQUENCE, + asn_DEF_RepeatParams_tags_1, + sizeof(asn_DEF_RepeatParams_tags_1) + /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ + asn_DEF_RepeatParams_tags_1, /* Same as above */ + sizeof(asn_DEF_RepeatParams_tags_1) + /sizeof(asn_DEF_RepeatParams_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RepeatParams_1, + 3, /* Elements count */ + &asn_SPC_RepeatParams_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestID.c b/src/tmx/Asn_J2735/src/r63/RequestID.c new file mode 100644 index 000000000..892048ca9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestID.h" + +int +RequestID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RequestID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_RequestID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RequestID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestID = { + "RequestID", + "RequestID", + &asn_OP_NativeInteger, + asn_DEF_RequestID_tags_1, + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + asn_DEF_RequestID_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestID_tags_1) + /sizeof(asn_DEF_RequestID_tags_1[0]), /* 1 */ + { &asn_OER_type_RequestID_constr_1, &asn_PER_type_RequestID_constr_1, RequestID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c b/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c new file mode 100644 index 000000000..58b9da3ac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestImportanceLevel.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestImportanceLevel.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RequestImportanceLevel_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RequestImportanceLevel_value2enum_1[] = { + { 0, 29, "requestImportanceLevelUnKnown" }, + { 1, 23, "requestImportanceLevel1" }, + { 2, 23, "requestImportanceLevel2" }, + { 3, 23, "requestImportanceLevel3" }, + { 4, 23, "requestImportanceLevel4" }, + { 5, 23, "requestImportanceLevel5" }, + { 6, 23, "requestImportanceLevel6" }, + { 7, 23, "requestImportanceLevel7" }, + { 8, 23, "requestImportanceLevel8" }, + { 9, 23, "requestImportanceLevel9" }, + { 10, 24, "requestImportanceLevel10" }, + { 11, 24, "requestImportanceLevel11" }, + { 12, 24, "requestImportanceLevel12" }, + { 13, 24, "requestImportanceLevel13" }, + { 14, 24, "requestImportanceLevel14" }, + { 15, 25, "requestImportanceReserved" } +}; +static const unsigned int asn_MAP_RequestImportanceLevel_enum2value_1[] = { + 1, /* requestImportanceLevel1(1) */ + 10, /* requestImportanceLevel10(10) */ + 11, /* requestImportanceLevel11(11) */ + 12, /* requestImportanceLevel12(12) */ + 13, /* requestImportanceLevel13(13) */ + 14, /* requestImportanceLevel14(14) */ + 2, /* requestImportanceLevel2(2) */ + 3, /* requestImportanceLevel3(3) */ + 4, /* requestImportanceLevel4(4) */ + 5, /* requestImportanceLevel5(5) */ + 6, /* requestImportanceLevel6(6) */ + 7, /* requestImportanceLevel7(7) */ + 8, /* requestImportanceLevel8(8) */ + 9, /* requestImportanceLevel9(9) */ + 0, /* requestImportanceLevelUnKnown(0) */ + 15 /* requestImportanceReserved(15) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestImportanceLevel_specs_1 = { + asn_MAP_RequestImportanceLevel_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestImportanceLevel_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestImportanceLevel_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestImportanceLevel = { + "RequestImportanceLevel", + "RequestImportanceLevel", + &asn_OP_NativeEnumerated, + asn_DEF_RequestImportanceLevel_tags_1, + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + asn_DEF_RequestImportanceLevel_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestImportanceLevel_tags_1) + /sizeof(asn_DEF_RequestImportanceLevel_tags_1[0]), /* 1 */ + { &asn_OER_type_RequestImportanceLevel_constr_1, &asn_PER_type_RequestImportanceLevel_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestImportanceLevel_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestSubRole.c b/src/tmx/Asn_J2735/src/r63/RequestSubRole.c new file mode 100644 index 000000000..6a93bd1f2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestSubRole.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestSubRole.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RequestSubRole_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RequestSubRole_value2enum_1[] = { + { 0, 21, "requestSubRoleUnKnown" }, + { 1, 15, "requestSubRole1" }, + { 2, 15, "requestSubRole2" }, + { 3, 15, "requestSubRole3" }, + { 4, 15, "requestSubRole4" }, + { 5, 15, "requestSubRole5" }, + { 6, 15, "requestSubRole6" }, + { 7, 15, "requestSubRole7" }, + { 8, 15, "requestSubRole8" }, + { 9, 15, "requestSubRole9" }, + { 10, 16, "requestSubRole10" }, + { 11, 16, "requestSubRole11" }, + { 12, 16, "requestSubRole12" }, + { 13, 16, "requestSubRole13" }, + { 14, 16, "requestSubRole14" }, + { 15, 22, "requestSubRoleReserved" } +}; +static const unsigned int asn_MAP_RequestSubRole_enum2value_1[] = { + 1, /* requestSubRole1(1) */ + 10, /* requestSubRole10(10) */ + 11, /* requestSubRole11(11) */ + 12, /* requestSubRole12(12) */ + 13, /* requestSubRole13(13) */ + 14, /* requestSubRole14(14) */ + 2, /* requestSubRole2(2) */ + 3, /* requestSubRole3(3) */ + 4, /* requestSubRole4(4) */ + 5, /* requestSubRole5(5) */ + 6, /* requestSubRole6(6) */ + 7, /* requestSubRole7(7) */ + 8, /* requestSubRole8(8) */ + 9, /* requestSubRole9(9) */ + 15, /* requestSubRoleReserved(15) */ + 0 /* requestSubRoleUnKnown(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestSubRole_specs_1 = { + asn_MAP_RequestSubRole_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestSubRole_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestSubRole_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestSubRole = { + "RequestSubRole", + "RequestSubRole", + &asn_OP_NativeEnumerated, + asn_DEF_RequestSubRole_tags_1, + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + asn_DEF_RequestSubRole_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestSubRole_tags_1) + /sizeof(asn_DEF_RequestSubRole_tags_1[0]), /* 1 */ + { &asn_OER_type_RequestSubRole_constr_1, &asn_PER_type_RequestSubRole_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestSubRole_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestedItem.c b/src/tmx/Asn_J2735/src/r63/RequestedItem.c new file mode 100644 index 000000000..6c5345a36 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestedItem.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestedItem.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RequestedItem_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RequestedItem_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RequestedItem_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 5, "itemA" }, + { 2, 5, "itemB" }, + { 3, 5, "itemC" }, + { 4, 5, "itemD" }, + { 5, 5, "itemE" }, + { 6, 5, "itemF" }, + { 7, 5, "itemG" }, + { 8, 5, "itemI" }, + { 9, 5, "itemJ" }, + { 10, 5, "itemK" }, + { 11, 5, "itemL" }, + { 12, 5, "itemM" }, + { 13, 5, "itemN" }, + { 14, 5, "itemO" }, + { 15, 5, "itemP" }, + { 16, 5, "itemQ" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RequestedItem_enum2value_1[] = { + 1, /* itemA(1) */ + 2, /* itemB(2) */ + 3, /* itemC(3) */ + 4, /* itemD(4) */ + 5, /* itemE(5) */ + 6, /* itemF(6) */ + 7, /* itemG(7) */ + 8, /* itemI(8) */ + 9, /* itemJ(9) */ + 10, /* itemK(10) */ + 11, /* itemL(11) */ + 12, /* itemM(12) */ + 13, /* itemN(13) */ + 14, /* itemO(14) */ + 15, /* itemP(15) */ + 16, /* itemQ(16) */ + 0 /* reserved(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RequestedItem_specs_1 = { + asn_MAP_RequestedItem_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RequestedItem_enum2value_1, /* N => "tag"; sorted by N */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RequestedItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItem = { + "RequestedItem", + "RequestedItem", + &asn_OP_NativeEnumerated, + asn_DEF_RequestedItem_tags_1, + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + asn_DEF_RequestedItem_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItem_tags_1) + /sizeof(asn_DEF_RequestedItem_tags_1[0]), /* 1 */ + { &asn_OER_type_RequestedItem_constr_1, &asn_PER_type_RequestedItem_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RequestedItem_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestedItemList.c b/src/tmx/Asn_J2735/src/r63/RequestedItemList.c new file mode 100644 index 000000000..584d72dbb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestedItemList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestedItemList.h" + +static asn_oer_constraints_t asn_OER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_RequestedItemList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RequestedItemList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RequestedItem, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RequestedItemList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RequestedItemList_specs_1 = { + sizeof(struct RequestedItemList), + offsetof(struct RequestedItemList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestedItemList = { + "RequestedItemList", + "RequestedItemList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RequestedItemList_tags_1, + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + asn_DEF_RequestedItemList_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestedItemList_tags_1) + /sizeof(asn_DEF_RequestedItemList_tags_1[0]), /* 1 */ + { &asn_OER_type_RequestedItemList_constr_1, &asn_PER_type_RequestedItemList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RequestedItemList_1, + 1, /* Single element */ + &asn_SPC_RequestedItemList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestorDescription.c b/src/tmx/Asn_J2735/src/r63/RequestorDescription.c new file mode 100644 index 000000000..6df49147d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestorDescription.c @@ -0,0 +1,211 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestorDescription.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct RequestorDescription__regional), + offsetof(struct RequestorDescription__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RequestorDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorDescription, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 8, offsetof(struct RequestorDescription, type), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "type" + }, + { ATF_POINTER, 7, offsetof(struct RequestorDescription, position), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 6, offsetof(struct RequestorDescription, name), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct RequestorDescription, routeName), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "routeName" + }, + { ATF_POINTER, 4, offsetof(struct RequestorDescription, transitStatus), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "transitStatus" + }, + { ATF_POINTER, 3, offsetof(struct RequestorDescription, transitOccupancy), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransitVehicleOccupancy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "transitOccupancy" + }, + { ATF_POINTER, 2, offsetof(struct RequestorDescription, transitSchedule), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DeltaTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "transitSchedule" + }, + { ATF_POINTER, 1, offsetof(struct RequestorDescription, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorDescription_oms_1[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_RequestorDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* type */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* routeName */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* transitStatus */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transitOccupancy */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transitSchedule */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorDescription_specs_1 = { + sizeof(struct RequestorDescription), + offsetof(struct RequestorDescription, _asn_ctx), + asn_MAP_RequestorDescription_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_RequestorDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorDescription = { + "RequestorDescription", + "RequestorDescription", + &asn_OP_SEQUENCE, + asn_DEF_RequestorDescription_tags_1, + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + asn_DEF_RequestorDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorDescription_tags_1) + /sizeof(asn_DEF_RequestorDescription_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RequestorDescription_1, + 9, /* Elements count */ + &asn_SPC_RequestorDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c b/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c new file mode 100644 index 000000000..b155c6983 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestorPositionVector.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestorPositionVector.h" + +asn_TYPE_member_t asn_MBR_RequestorPositionVector_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorPositionVector, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RequestorPositionVector, heading), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Angle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 1, offsetof(struct RequestorPositionVector, speed), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionAndSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const int asn_MAP_RequestorPositionVector_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_RequestorPositionVector_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorPositionVector_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorPositionVector_specs_1 = { + sizeof(struct RequestorPositionVector), + offsetof(struct RequestorPositionVector, _asn_ctx), + asn_MAP_RequestorPositionVector_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RequestorPositionVector_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorPositionVector = { + "RequestorPositionVector", + "RequestorPositionVector", + &asn_OP_SEQUENCE, + asn_DEF_RequestorPositionVector_tags_1, + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + asn_DEF_RequestorPositionVector_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorPositionVector_tags_1) + /sizeof(asn_DEF_RequestorPositionVector_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RequestorPositionVector_1, + 3, /* Elements count */ + &asn_SPC_RequestorPositionVector_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RequestorType.c b/src/tmx/Asn_J2735/src/r63/RequestorType.c new file mode 100644 index 000000000..5f6f1dab2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RequestorType.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RequestorType.h" + +asn_TYPE_member_t asn_MBR_RequestorType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RequestorType, role), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 5, offsetof(struct RequestorType, subrole), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestSubRole, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "subrole" + }, + { ATF_POINTER, 4, offsetof(struct RequestorType, request), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestImportanceLevel, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 3, offsetof(struct RequestorType, iso3883), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 2, offsetof(struct RequestorType, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 1, offsetof(struct RequestorType, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RequestorType_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_RequestorType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RequestorType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subrole */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RequestorType_specs_1 = { + sizeof(struct RequestorType), + offsetof(struct RequestorType, _asn_ctx), + asn_MAP_RequestorType_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_RequestorType_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RequestorType = { + "RequestorType", + "RequestorType", + &asn_OP_SEQUENCE, + asn_DEF_RequestorType_tags_1, + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + asn_DEF_RequestorType_tags_1, /* Same as above */ + sizeof(asn_DEF_RequestorType_tags_1) + /sizeof(asn_DEF_RequestorType_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RequestorType_1, + 6, /* Elements count */ + &asn_SPC_RequestorType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c b/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c new file mode 100644 index 000000000..6ba1ecaee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ResponderGroupAffected.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ResponderGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ResponderGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ResponderGroupAffected_value2enum_1[] = { + { 9729, 23, "emergency-vehicle-units" }, + { 9730, 29, "federal-law-enforcement-units" }, + { 9731, 18, "state-police-units" }, + { 9732, 19, "county-police-units" }, + { 9733, 18, "local-police-units" }, + { 9734, 15, "ambulance-units" }, + { 9735, 12, "rescue-units" }, + { 9736, 10, "fire-units" }, + { 9737, 12, "hAZMAT-units" }, + { 9738, 14, "light-tow-unit" }, + { 9739, 14, "heavy-tow-unit" }, + { 9740, 23, "freeway-service-patrols" }, + { 9741, 29, "transportation-response-units" }, + { 9742, 33, "private-contractor-response-units" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponderGroupAffected_enum2value_1[] = { + 5, /* ambulance-units(9734) */ + 3, /* county-police-units(9732) */ + 0, /* emergency-vehicle-units(9729) */ + 1, /* federal-law-enforcement-units(9730) */ + 7, /* fire-units(9736) */ + 11, /* freeway-service-patrols(9740) */ + 8, /* hAZMAT-units(9737) */ + 10, /* heavy-tow-unit(9739) */ + 9, /* light-tow-unit(9738) */ + 4, /* local-police-units(9733) */ + 13, /* private-contractor-response-units(9742) */ + 6, /* rescue-units(9735) */ + 2, /* state-police-units(9731) */ + 12 /* transportation-response-units(9741) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponderGroupAffected_specs_1 = { + asn_MAP_ResponderGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponderGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponderGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponderGroupAffected = { + "ResponderGroupAffected", + "ResponderGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_ResponderGroupAffected_tags_1, + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_ResponderGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponderGroupAffected_tags_1) + /sizeof(asn_DEF_ResponderGroupAffected_tags_1[0]), /* 1 */ + { &asn_OER_type_ResponderGroupAffected_constr_1, &asn_PER_type_ResponderGroupAffected_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponderGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ResponseType.c b/src/tmx/Asn_J2735/src/r63/ResponseType.c new file mode 100644 index 000000000..3f7d5a7d2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ResponseType.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ResponseType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ResponseType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ResponseType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ResponseType_value2enum_1[] = { + { 0, 21, "notInUseOrNotEquipped" }, + { 1, 9, "emergency" }, + { 2, 12, "nonEmergency" }, + { 3, 7, "pursuit" }, + { 4, 10, "stationary" }, + { 5, 10, "slowMoving" }, + { 6, 17, "stopAndGoMovement" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ResponseType_enum2value_1[] = { + 1, /* emergency(1) */ + 2, /* nonEmergency(2) */ + 0, /* notInUseOrNotEquipped(0) */ + 3, /* pursuit(3) */ + 5, /* slowMoving(5) */ + 4, /* stationary(4) */ + 6 /* stopAndGoMovement(6) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_ResponseType_specs_1 = { + asn_MAP_ResponseType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ResponseType_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ResponseType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ResponseType = { + "ResponseType", + "ResponseType", + &asn_OP_NativeEnumerated, + asn_DEF_ResponseType_tags_1, + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + asn_DEF_ResponseType_tags_1, /* Same as above */ + sizeof(asn_DEF_ResponseType_tags_1) + /sizeof(asn_DEF_ResponseType_tags_1[0]), /* 1 */ + { &asn_OER_type_ResponseType_constr_1, &asn_PER_type_ResponseType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ResponseType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c b/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c new file mode 100644 index 000000000..0b3d48eda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionAppliesTo.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionAppliesTo.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RestrictionAppliesTo_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RestrictionAppliesTo_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 15, "equippedTransit" }, + { 2, 13, "equippedTaxis" }, + { 3, 13, "equippedOther" }, + { 4, 17, "emissionCompliant" }, + { 5, 15, "equippedBicycle" }, + { 6, 15, "weightCompliant" }, + { 7, 15, "heightCompliant" }, + { 8, 11, "pedestrians" }, + { 9, 17, "slowMovingPersons" }, + { 10, 15, "wheelchairUsers" }, + { 11, 18, "visualDisabilities" }, + { 12, 17, "audioDisabilities" }, + { 13, 24, "otherUnknownDisabilities" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RestrictionAppliesTo_enum2value_1[] = { + 12, /* audioDisabilities(12) */ + 4, /* emissionCompliant(4) */ + 5, /* equippedBicycle(5) */ + 3, /* equippedOther(3) */ + 2, /* equippedTaxis(2) */ + 1, /* equippedTransit(1) */ + 7, /* heightCompliant(7) */ + 0, /* none(0) */ + 13, /* otherUnknownDisabilities(13) */ + 8, /* pedestrians(8) */ + 9, /* slowMovingPersons(9) */ + 11, /* visualDisabilities(11) */ + 6, /* weightCompliant(6) */ + 10 /* wheelchairUsers(10) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RestrictionAppliesTo_specs_1 = { + asn_MAP_RestrictionAppliesTo_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RestrictionAppliesTo_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RestrictionAppliesTo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionAppliesTo = { + "RestrictionAppliesTo", + "RestrictionAppliesTo", + &asn_OP_NativeEnumerated, + asn_DEF_RestrictionAppliesTo_tags_1, + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + asn_DEF_RestrictionAppliesTo_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionAppliesTo_tags_1) + /sizeof(asn_DEF_RestrictionAppliesTo_tags_1[0]), /* 1 */ + { &asn_OER_type_RestrictionAppliesTo_constr_1, &asn_PER_type_RestrictionAppliesTo_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RestrictionAppliesTo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c new file mode 100644 index 000000000..5f94d21a5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionClassAssignment.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionClassAssignment.h" + +asn_TYPE_member_t asn_MBR_RestrictionClassAssignment_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionClassID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionClassAssignment, users), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionUserTypeList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "users" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassAssignment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionClassAssignment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* users */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RestrictionClassAssignment_specs_1 = { + sizeof(struct RestrictionClassAssignment), + offsetof(struct RestrictionClassAssignment, _asn_ctx), + asn_MAP_RestrictionClassAssignment_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassAssignment = { + "RestrictionClassAssignment", + "RestrictionClassAssignment", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionClassAssignment_tags_1, + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassAssignment_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassAssignment_tags_1) + /sizeof(asn_DEF_RestrictionClassAssignment_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RestrictionClassAssignment_1, + 2, /* Elements count */ + &asn_SPC_RestrictionClassAssignment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c new file mode 100644 index 000000000..3cc7a0584 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionClassID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionClassID.h" + +int +RestrictionClassID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_RestrictionClassID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassID = { + "RestrictionClassID", + "RestrictionClassID", + &asn_OP_NativeInteger, + asn_DEF_RestrictionClassID_tags_1, + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassID_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassID_tags_1) + /sizeof(asn_DEF_RestrictionClassID_tags_1[0]), /* 1 */ + { &asn_OER_type_RestrictionClassID_constr_1, &asn_PER_type_RestrictionClassID_constr_1, RestrictionClassID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c b/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c new file mode 100644 index 000000000..230c52911 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionClassList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionClassList.h" + +static asn_oer_constraints_t asn_OER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..254)) */}; +asn_per_constraints_t asn_PER_type_RestrictionClassList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 254 } /* (SIZE(1..254)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RestrictionClassList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RestrictionClassAssignment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionClassList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionClassList_specs_1 = { + sizeof(struct RestrictionClassList), + offsetof(struct RestrictionClassList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionClassList = { + "RestrictionClassList", + "RestrictionClassList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionClassList_tags_1, + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionClassList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionClassList_tags_1) + /sizeof(asn_DEF_RestrictionClassList_tags_1[0]), /* 1 */ + { &asn_OER_type_RestrictionClassList_constr_1, &asn_PER_type_RestrictionClassList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RestrictionClassList_1, + 1, /* Single element */ + &asn_SPC_RestrictionClassList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c new file mode 100644 index 000000000..4acc2646f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionUserType-addGrpC.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionUserType-addGrpC.h" + +static asn_TYPE_member_t asn_MBR_RestrictionUserType_addGrpC_1[] = { + { ATF_POINTER, 1, offsetof(struct RestrictionUserType_addGrpC, emission), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmissionType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "emission" + }, +}; +static const int asn_MAP_RestrictionUserType_addGrpC_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RestrictionUserType_addGrpC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_addGrpC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* emission */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RestrictionUserType_addGrpC_specs_1 = { + sizeof(struct RestrictionUserType_addGrpC), + offsetof(struct RestrictionUserType_addGrpC, _asn_ctx), + asn_MAP_RestrictionUserType_addGrpC_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_RestrictionUserType_addGrpC_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType_addGrpC = { + "RestrictionUserType-addGrpC", + "RestrictionUserType-addGrpC", + &asn_OP_SEQUENCE, + asn_DEF_RestrictionUserType_addGrpC_tags_1, + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserType_addGrpC_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1) + /sizeof(asn_DEF_RestrictionUserType_addGrpC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RestrictionUserType_addGrpC_1, + 1, /* Elements count */ + &asn_SPC_RestrictionUserType_addGrpC_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c new file mode 100644 index 000000000..6b2deb0fb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionUserType.c @@ -0,0 +1,144 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionUserType.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RestrictionUserType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_3 = { + sizeof(struct RestrictionUserType__regional), + offsetof(struct RestrictionUserType__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_3 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_3, + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]) - 1, /* 1 */ + asn_DEF_regional_tags_3, /* Same as above */ + sizeof(asn_DEF_regional_tags_3) + /sizeof(asn_DEF_regional_tags_3[0]), /* 2 */ + { &asn_OER_type_regional_constr_3, &asn_PER_type_regional_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_regional_3, + 1, /* Single element */ + &asn_SPC_regional_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RestrictionUserType_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.basicType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RestrictionAppliesTo, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "basicType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RestrictionUserType, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_regional_3, + 0, + { &asn_OER_memb_regional_constr_3, &asn_PER_memb_regional_constr_3, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_RestrictionUserType_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* basicType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_CHOICE_specifics_t asn_SPC_RestrictionUserType_specs_1 = { + sizeof(struct RestrictionUserType), + offsetof(struct RestrictionUserType, _asn_ctx), + offsetof(struct RestrictionUserType, present), + sizeof(((struct RestrictionUserType *)0)->present), + asn_MAP_RestrictionUserType_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserType = { + "RestrictionUserType", + "RestrictionUserType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_RestrictionUserType_constr_1, &asn_PER_type_RestrictionUserType_constr_1, CHOICE_constraint }, + asn_MBR_RestrictionUserType_1, + 2, /* Elements count */ + &asn_SPC_RestrictionUserType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c b/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c new file mode 100644 index 000000000..1b152a2a7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RestrictionUserTypeList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RestrictionUserTypeList.h" + +static asn_oer_constraints_t asn_OER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_RestrictionUserTypeList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RestrictionUserTypeList_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_RestrictionUserType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RestrictionUserTypeList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RestrictionUserTypeList_specs_1 = { + sizeof(struct RestrictionUserTypeList), + offsetof(struct RestrictionUserTypeList, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_RestrictionUserTypeList = { + "RestrictionUserTypeList", + "RestrictionUserTypeList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RestrictionUserTypeList_tags_1, + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + asn_DEF_RestrictionUserTypeList_tags_1, /* Same as above */ + sizeof(asn_DEF_RestrictionUserTypeList_tags_1) + /sizeof(asn_DEF_RestrictionUserTypeList_tags_1[0]), /* 1 */ + { &asn_OER_type_RestrictionUserTypeList_constr_1, &asn_PER_type_RestrictionUserTypeList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RestrictionUserTypeList_1, + 1, /* Single element */ + &asn_SPC_RestrictionUserTypeList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c b/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c new file mode 100644 index 000000000..c41eeb3f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadLaneSetList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadLaneSetList.h" + +static asn_oer_constraints_t asn_OER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +asn_per_constraints_t asn_PER_type_RoadLaneSetList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RoadLaneSetList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GenericLane, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadLaneSetList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadLaneSetList_specs_1 = { + sizeof(struct RoadLaneSetList), + offsetof(struct RoadLaneSetList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadLaneSetList = { + "RoadLaneSetList", + "RoadLaneSetList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadLaneSetList_tags_1, + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + asn_DEF_RoadLaneSetList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadLaneSetList_tags_1) + /sizeof(asn_DEF_RoadLaneSetList_tags_1[0]), /* 1 */ + { &asn_OER_type_RoadLaneSetList_constr_1, &asn_PER_type_RoadLaneSetList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RoadLaneSetList_1, + 1, /* Single element */ + &asn_SPC_RoadLaneSetList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c b/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c new file mode 100644 index 000000000..00f98f6ed --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadRegulatorID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadRegulatorID.h" + +int +RoadRegulatorID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_RoadRegulatorID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RoadRegulatorID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadRegulatorID = { + "RoadRegulatorID", + "RoadRegulatorID", + &asn_OP_NativeInteger, + asn_DEF_RoadRegulatorID_tags_1, + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + asn_DEF_RoadRegulatorID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadRegulatorID_tags_1) + /sizeof(asn_DEF_RoadRegulatorID_tags_1[0]), /* 1 */ + { &asn_OER_type_RoadRegulatorID_constr_1, &asn_PER_type_RoadRegulatorID_constr_1, RoadRegulatorID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegment.c b/src/tmx/Asn_J2735/src/r63/RoadSegment.c new file mode 100644 index 000000000..7d1945a46 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSegment.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSegment.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct RoadSegment__regional), + offsetof(struct RoadSegment__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSegment_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegment, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, revision), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "revision" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, refPoint), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPoint" + }, + { ATF_POINTER, 2, offsetof(struct RoadSegment, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, speedLimits), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimitList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedLimits" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegment, roadLaneSet), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadLaneSetList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roadLaneSet" + }, + { ATF_POINTER, 1, offsetof(struct RoadSegment, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSegment_oms_1[] = { 0, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_RoadSegment_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegment_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* revision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* refPoint */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* speedLimits */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* roadLaneSet */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegment_specs_1 = { + sizeof(struct RoadSegment), + offsetof(struct RoadSegment, _asn_ctx), + asn_MAP_RoadSegment_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RoadSegment_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegment = { + "RoadSegment", + "RoadSegment", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegment_tags_1, + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + asn_DEF_RoadSegment_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegment_tags_1) + /sizeof(asn_DEF_RoadSegment_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RoadSegment_1, + 8, /* Elements count */ + &asn_SPC_RoadSegment_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c new file mode 100644 index 000000000..fcc29ae9d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSegmentID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSegmentID.h" + +int +RoadSegmentID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_RoadSegmentID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RoadSegmentID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentID = { + "RoadSegmentID", + "RoadSegmentID", + &asn_OP_NativeInteger, + asn_DEF_RoadSegmentID_tags_1, + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentID_tags_1) + /sizeof(asn_DEF_RoadSegmentID_tags_1[0]), /* 1 */ + { &asn_OER_type_RoadSegmentID_constr_1, &asn_PER_type_RoadSegmentID_constr_1, RoadSegmentID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c new file mode 100644 index 000000000..4494e8602 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSegmentList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSegmentList.h" + +static asn_oer_constraints_t asn_OER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_RoadSegmentList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RoadSegmentList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RoadSegment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RoadSegmentList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RoadSegmentList_specs_1 = { + sizeof(struct RoadSegmentList), + offsetof(struct RoadSegmentList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentList = { + "RoadSegmentList", + "RoadSegmentList", + &asn_OP_SEQUENCE_OF, + asn_DEF_RoadSegmentList_tags_1, + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentList_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentList_tags_1) + /sizeof(asn_DEF_RoadSegmentList_tags_1[0]), /* 1 */ + { &asn_OER_type_RoadSegmentList_constr_1, &asn_PER_type_RoadSegmentList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RoadSegmentList_1, + 1, /* Single element */ + &asn_SPC_RoadSegmentList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c b/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c new file mode 100644 index 000000000..87701eda0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSegmentReferenceID.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSegmentReferenceID.h" + +asn_TYPE_member_t asn_MBR_RoadSegmentReferenceID_1[] = { + { ATF_POINTER, 1, offsetof(struct RoadSegmentReferenceID, region), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadRegulatorID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "region" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSegmentReferenceID, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSegmentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, +}; +static const int asn_MAP_RoadSegmentReferenceID_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RoadSegmentReferenceID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSegmentReferenceID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* region */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSegmentReferenceID_specs_1 = { + sizeof(struct RoadSegmentReferenceID), + offsetof(struct RoadSegmentReferenceID, _asn_ctx), + asn_MAP_RoadSegmentReferenceID_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RoadSegmentReferenceID_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSegmentReferenceID = { + "RoadSegmentReferenceID", + "RoadSegmentReferenceID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSegmentReferenceID_tags_1, + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + asn_DEF_RoadSegmentReferenceID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSegmentReferenceID_tags_1) + /sizeof(asn_DEF_RoadSegmentReferenceID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RoadSegmentReferenceID_1, + 2, /* Elements count */ + &asn_SPC_RoadSegmentReferenceID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c b/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c new file mode 100644 index 000000000..d150f992c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSideAlert.c @@ -0,0 +1,300 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSideAlert.h" + +static int +memb_description_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 8)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_type_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_description_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_memb_description_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_description_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_description_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_description_specs_5 = { + sizeof(struct RoadSideAlert__description), + offsetof(struct RoadSideAlert__description, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_description_5 = { + "description", + "description", + &asn_OP_SEQUENCE_OF, + asn_DEF_description_tags_5, + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]) - 1, /* 1 */ + asn_DEF_description_tags_5, /* Same as above */ + sizeof(asn_DEF_description_tags_5) + /sizeof(asn_DEF_description_tags_5[0]), /* 2 */ + { &asn_OER_type_description_constr_5, &asn_PER_type_description_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_description_5, + 1, /* Single element */ + &asn_SPC_description_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regional_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_12 = { + sizeof(struct RoadSideAlert__regional), + offsetof(struct RoadSideAlert__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_12 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_12, + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]) - 1, /* 1 */ + asn_DEF_regional_tags_12, /* Same as above */ + sizeof(asn_DEF_regional_tags_12) + /sizeof(asn_DEF_regional_tags_12[0]), /* 2 */ + { &asn_OER_type_regional_constr_12, &asn_PER_type_regional_constr_12, SEQUENCE_OF_constraint }, + asn_MBR_regional_12, + 1, /* Single element */ + &asn_SPC_regional_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RoadSideAlert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSideAlert, typeEvent), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "typeEvent" + }, + { ATF_POINTER, 7, offsetof(struct RoadSideAlert, description), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_description_5, + 0, + { &asn_OER_memb_description_constr_5, &asn_PER_memb_description_constr_5, memb_description_constraint_1 }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 6, offsetof(struct RoadSideAlert, priority), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Priority, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_POINTER, 5, offsetof(struct RoadSideAlert, heading), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_POINTER, 4, offsetof(struct RoadSideAlert, extent), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_POINTER, 3, offsetof(struct RoadSideAlert, position), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "position" + }, + { ATF_POINTER, 2, offsetof(struct RoadSideAlert, furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_POINTER, 1, offsetof(struct RoadSideAlert, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_12, + 0, + { &asn_OER_memb_regional_constr_12, &asn_PER_memb_regional_constr_12, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_RoadSideAlert_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_RoadSideAlert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSideAlert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* typeEvent */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSideAlert_specs_1 = { + sizeof(struct RoadSideAlert), + offsetof(struct RoadSideAlert, _asn_ctx), + asn_MAP_RoadSideAlert_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_RoadSideAlert_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSideAlert = { + "RoadSideAlert", + "RoadSideAlert", + &asn_OP_SEQUENCE, + asn_DEF_RoadSideAlert_tags_1, + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + asn_DEF_RoadSideAlert_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSideAlert_tags_1) + /sizeof(asn_DEF_RoadSideAlert_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RoadSideAlert_1, + 10, /* Elements count */ + &asn_SPC_RoadSideAlert_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadSignID.c b/src/tmx/Asn_J2735/src/r63/RoadSignID.c new file mode 100644 index 000000000..c2cdbd616 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadSignID.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadSignID.h" + +asn_TYPE_member_t asn_MBR_RoadSignID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, position), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "position" + }, + { ATF_NOFLAGS, 0, offsetof(struct RoadSignID, viewAngle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "viewAngle" + }, + { ATF_POINTER, 2, offsetof(struct RoadSignID, mutcdCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MUTCDCode, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mutcdCode" + }, + { ATF_POINTER, 1, offsetof(struct RoadSignID, crc), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MsgCRC, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crc" + }, +}; +static const int asn_MAP_RoadSignID_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_RoadSignID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RoadSignID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* position */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* viewAngle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mutcdCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* crc */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RoadSignID_specs_1 = { + sizeof(struct RoadSignID), + offsetof(struct RoadSignID, _asn_ctx), + asn_MAP_RoadSignID_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RoadSignID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RoadSignID = { + "RoadSignID", + "RoadSignID", + &asn_OP_SEQUENCE, + asn_DEF_RoadSignID_tags_1, + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + asn_DEF_RoadSignID_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadSignID_tags_1) + /sizeof(asn_DEF_RoadSignID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RoadSignID_1, + 4, /* Elements count */ + &asn_SPC_RoadSignID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c b/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c new file mode 100644 index 000000000..6232e0740 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RoadwayCrownAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "RoadwayCrownAngle.h" + +int +RoadwayCrownAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +asn_per_constraints_t asn_PER_type_RoadwayCrownAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RoadwayCrownAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RoadwayCrownAngle = { + "RoadwayCrownAngle", + "RoadwayCrownAngle", + &asn_OP_NativeInteger, + asn_DEF_RoadwayCrownAngle_tags_1, + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + asn_DEF_RoadwayCrownAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_RoadwayCrownAngle_tags_1) + /sizeof(asn_DEF_RoadwayCrownAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_RoadwayCrownAngle_constr_1, &asn_PER_type_RoadwayCrownAngle_constr_1, RoadwayCrownAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RollDetected.c b/src/tmx/Asn_J2735/src/r63/RollDetected.c new file mode 100644 index 000000000..017e10e77 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RollDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollDetected.h" + +int +RollDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -14400 && value <= 14400)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-14400..14400) */, + -1}; +asn_per_constraints_t asn_PER_type_RollDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RollDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollDetected = { + "RollDetected", + "RollDetected", + &asn_OP_NativeInteger, + asn_DEF_RollDetected_tags_1, + sizeof(asn_DEF_RollDetected_tags_1) + /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ + asn_DEF_RollDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_RollDetected_tags_1) + /sizeof(asn_DEF_RollDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_RollDetected_constr_1, &asn_PER_type_RollDetected_constr_1, RollDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RollRate.c b/src/tmx/Asn_J2735/src/r63/RollRate.c new file mode 100644 index 000000000..d5c525e3a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RollRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollRate.h" + +int +RollRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_RollRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RollRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollRate = { + "RollRate", + "RollRate", + &asn_OP_NativeInteger, + asn_DEF_RollRate_tags_1, + sizeof(asn_DEF_RollRate_tags_1) + /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ + asn_DEF_RollRate_tags_1, /* Same as above */ + sizeof(asn_DEF_RollRate_tags_1) + /sizeof(asn_DEF_RollRate_tags_1[0]), /* 1 */ + { &asn_OER_type_RollRate_constr_1, &asn_PER_type_RollRate_constr_1, RollRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c b/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c new file mode 100644 index 000000000..3b578a211 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/RollRateConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "RollRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RollRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RollRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RollRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_RollRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_RollRateConfidence_specs_1 = { + asn_MAP_RollRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RollRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RollRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RollRateConfidence = { + "RollRateConfidence", + "RollRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_RollRateConfidence_tags_1, + sizeof(asn_DEF_RollRateConfidence_tags_1) + /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_RollRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_RollRateConfidence_tags_1) + /sizeof(asn_DEF_RollRateConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_RollRateConfidence_constr_1, &asn_PER_type_RollRateConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RollRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SPAT.c b/src/tmx/Asn_J2735/src/r63/SPAT.c new file mode 100644 index 000000000..141e9211c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SPAT.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SPAT.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SPAT__regional), + offsetof(struct SPAT__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SPAT_1[] = { + { ATF_POINTER, 2, offsetof(struct SPAT, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_NOFLAGS, 0, offsetof(struct SPAT, intersections), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionStateList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "intersections" + }, + { ATF_POINTER, 1, offsetof(struct SPAT, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SPAT_oms_1[] = { 0, 1, 3 }; +static const ber_tlv_tag_t asn_DEF_SPAT_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SPAT_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* intersections */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SPAT_specs_1 = { + sizeof(struct SPAT), + offsetof(struct SPAT, _asn_ctx), + asn_MAP_SPAT_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SPAT_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SPAT = { + "SPAT", + "SPAT", + &asn_OP_SEQUENCE, + asn_DEF_SPAT_tags_1, + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + asn_DEF_SPAT_tags_1, /* Same as above */ + sizeof(asn_DEF_SPAT_tags_1) + /sizeof(asn_DEF_SPAT_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SPAT_1, + 4, /* Elements count */ + &asn_SPC_SPAT_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SSPindex.c b/src/tmx/Asn_J2735/src/r63/SSPindex.c new file mode 100644 index 000000000..cb6113930 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SSPindex.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SSPindex.h" + +int +SSPindex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SSPindex_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +asn_per_constraints_t asn_PER_type_SSPindex_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SSPindex_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SSPindex = { + "SSPindex", + "SSPindex", + &asn_OP_NativeInteger, + asn_DEF_SSPindex_tags_1, + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + asn_DEF_SSPindex_tags_1, /* Same as above */ + sizeof(asn_DEF_SSPindex_tags_1) + /sizeof(asn_DEF_SSPindex_tags_1[0]), /* 1 */ + { &asn_OER_type_SSPindex_constr_1, &asn_PER_type_SSPindex_constr_1, SSPindex_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Sample.c b/src/tmx/Asn_J2735/src/r63/Sample.c new file mode 100644 index 000000000..9f5a8478d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Sample.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Sample.h" + +static int +memb_sampleStart_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sampleEnd_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_sampleStart_constr_2 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_sampleStart_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_sampleEnd_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_Sample_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleStart), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_sampleStart_constr_2, &asn_PER_memb_sampleStart_constr_2, memb_sampleStart_constraint_1 }, + 0, 0, /* No default value */ + "sampleStart" + }, + { ATF_NOFLAGS, 0, offsetof(struct Sample, sampleEnd), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_sampleEnd_constr_3, &asn_PER_memb_sampleEnd_constr_3, memb_sampleEnd_constraint_1 }, + 0, 0, /* No default value */ + "sampleEnd" + }, +}; +static const ber_tlv_tag_t asn_DEF_Sample_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Sample_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sampleStart */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sampleEnd */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Sample_specs_1 = { + sizeof(struct Sample), + offsetof(struct Sample, _asn_ctx), + asn_MAP_Sample_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Sample = { + "Sample", + "Sample", + &asn_OP_SEQUENCE, + asn_DEF_Sample_tags_1, + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + asn_DEF_Sample_tags_1, /* Same as above */ + sizeof(asn_DEF_Sample_tags_1) + /sizeof(asn_DEF_Sample_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Sample_1, + 2, /* Elements count */ + &asn_SPC_Sample_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Scale-B12.c b/src/tmx/Asn_J2735/src/r63/Scale-B12.c new file mode 100644 index 000000000..b98a85efc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Scale-B12.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Scale-B12.h" + +int +Scale_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Scale_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +asn_per_constraints_t asn_PER_type_Scale_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Scale_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Scale_B12 = { + "Scale-B12", + "Scale-B12", + &asn_OP_NativeInteger, + asn_DEF_Scale_B12_tags_1, + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + asn_DEF_Scale_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_Scale_B12_tags_1) + /sizeof(asn_DEF_Scale_B12_tags_1[0]), /* 1 */ + { &asn_OER_type_Scale_B12_constr_1, &asn_PER_type_Scale_B12_constr_1, Scale_B12_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Schedule.c b/src/tmx/Asn_J2735/src/r63/Schedule.c new file mode 100644 index 000000000..5af708a5e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Schedule.c @@ -0,0 +1,328 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "Schedule.h" + +static int +memb_start_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_end_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_dow_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 7)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 32)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_dow_constr_4 CC_NOTUSED = { + { 0, 0 }, + 7 /* (SIZE(7..7)) */}; +static asn_per_constraints_t asn_PER_type_dow_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_between_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..32)) */}; +static asn_per_constraints_t asn_PER_type_between_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_start_constr_2 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_start_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_end_constr_3 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_end_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_dow_constr_4 CC_NOTUSED = { + { 0, 0 }, + 7 /* (SIZE(7..7)) */}; +static asn_per_constraints_t asn_PER_memb_dow_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 7, 7 } /* (SIZE(7..7)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_between_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..32)) */}; +static asn_per_constraints_t asn_PER_memb_between_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_dow_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)), + 0, + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_dow_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_dow_specs_4 = { + sizeof(struct Schedule__dow), + offsetof(struct Schedule__dow, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_dow_4 = { + "dow", + "dow", + &asn_OP_SEQUENCE_OF, + asn_DEF_dow_tags_4, + sizeof(asn_DEF_dow_tags_4) + /sizeof(asn_DEF_dow_tags_4[0]) - 1, /* 1 */ + asn_DEF_dow_tags_4, /* Same as above */ + sizeof(asn_DEF_dow_tags_4) + /sizeof(asn_DEF_dow_tags_4[0]), /* 2 */ + { &asn_OER_type_dow_constr_4, &asn_PER_type_dow_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_dow_4, + 1, /* Single element */ + &asn_SPC_dow_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_between_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DaySchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_between_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_between_specs_6 = { + sizeof(struct Schedule__between), + offsetof(struct Schedule__between, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_between_6 = { + "between", + "between", + &asn_OP_SEQUENCE_OF, + asn_DEF_between_tags_6, + sizeof(asn_DEF_between_tags_6) + /sizeof(asn_DEF_between_tags_6[0]) - 1, /* 1 */ + asn_DEF_between_tags_6, /* Same as above */ + sizeof(asn_DEF_between_tags_6) + /sizeof(asn_DEF_between_tags_6[0]), /* 2 */ + { &asn_OER_type_between_constr_6, &asn_PER_type_between_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_between_6, + 1, /* Single element */ + &asn_SPC_between_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Schedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Schedule, start), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_start_constr_2, &asn_PER_memb_start_constr_2, memb_start_constraint_1 }, + 0, 0, /* No default value */ + "start" + }, + { ATF_NOFLAGS, 0, offsetof(struct Schedule, end), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_end_constr_3, &asn_PER_memb_end_constr_3, memb_end_constraint_1 }, + 0, 0, /* No default value */ + "end" + }, + { ATF_NOFLAGS, 0, offsetof(struct Schedule, dow), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_dow_4, + 0, + { &asn_OER_memb_dow_constr_4, &asn_PER_memb_dow_constr_4, memb_dow_constraint_1 }, + 0, 0, /* No default value */ + "dow" + }, + { ATF_POINTER, 2, offsetof(struct Schedule, between), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_between_6, + 0, + { &asn_OER_memb_between_constr_6, &asn_PER_memb_between_constr_6, memb_between_constraint_1 }, + 0, 0, /* No default value */ + "between" + }, + { ATF_POINTER, 1, offsetof(struct Schedule, repeat), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RepeatParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "repeat" + }, +}; +static const int asn_MAP_Schedule_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_Schedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Schedule_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* start */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* end */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dow */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* between */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* repeat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Schedule_specs_1 = { + sizeof(struct Schedule), + offsetof(struct Schedule, _asn_ctx), + asn_MAP_Schedule_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_Schedule_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Schedule = { + "Schedule", + "Schedule", + &asn_OP_SEQUENCE, + asn_DEF_Schedule_tags_1, + sizeof(asn_DEF_Schedule_tags_1) + /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ + asn_DEF_Schedule_tags_1, /* Same as above */ + sizeof(asn_DEF_Schedule_tags_1) + /sizeof(asn_DEF_Schedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Schedule_1, + 5, /* Elements count */ + &asn_SPC_Schedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Second.c b/src/tmx/Asn_J2735/src/r63/Second.c new file mode 100644 index 000000000..886936adc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Second.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Second.h" + +int +Second_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 60)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Second_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..60) */, + -1}; +asn_per_constraints_t asn_PER_type_Second_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 60 } /* (0..60) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Second_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Second = { + "Second", + "Second", + &asn_OP_NativeInteger, + asn_DEF_Second_tags_1, + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + asn_DEF_Second_tags_1, /* Same as above */ + sizeof(asn_DEF_Second_tags_1) + /sizeof(asn_DEF_Second_tags_1[0]), /* 1 */ + { &asn_OER_type_Second_constr_1, &asn_PER_type_Second_constr_1, Second_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SecondOfTime.c b/src/tmx/Asn_J2735/src/r63/SecondOfTime.c new file mode 100644 index 000000000..0f790d9b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SecondOfTime.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SecondOfTime.h" + +int +SecondOfTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 61)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..61) */, + -1}; +asn_per_constraints_t asn_PER_type_SecondOfTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 61 } /* (0..61) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SecondOfTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondOfTime = { + "SecondOfTime", + "SecondOfTime", + &asn_OP_NativeInteger, + asn_DEF_SecondOfTime_tags_1, + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + asn_DEF_SecondOfTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondOfTime_tags_1) + /sizeof(asn_DEF_SecondOfTime_tags_1[0]), /* 1 */ + { &asn_OER_type_SecondOfTime_constr_1, &asn_PER_type_SecondOfTime_constr_1, SecondOfTime_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SecondsAngle.c b/src/tmx/Asn_J2735/src/r63/SecondsAngle.c new file mode 100644 index 000000000..e2d4da7f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SecondsAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SecondsAngle.h" + +int +SecondsAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 5999)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..5999) */, + -1}; +asn_per_constraints_t asn_PER_type_SecondsAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 5999 } /* (0..5999) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SecondsAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SecondsAngle = { + "SecondsAngle", + "SecondsAngle", + &asn_OP_NativeInteger, + asn_DEF_SecondsAngle_tags_1, + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + asn_DEF_SecondsAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SecondsAngle_tags_1) + /sizeof(asn_DEF_SecondsAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_SecondsAngle_constr_1, &asn_PER_type_SecondsAngle_constr_1, SecondsAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c new file mode 100644 index 000000000..3db3a8407 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLL.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SegmentAttributeLL.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SegmentAttributeLL_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeLL_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeLL_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeLL_specs_1 = { + asn_MAP_SegmentAttributeLL_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeLL_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLL_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLL = { + "SegmentAttributeLL", + "SegmentAttributeLL", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeLL_tags_1, + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLL_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLL_tags_1) + /sizeof(asn_DEF_SegmentAttributeLL_tags_1[0]), /* 1 */ + { &asn_OER_type_SegmentAttributeLL_constr_1, &asn_PER_type_SegmentAttributeLL_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeLL_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c new file mode 100644 index 000000000..97efd0c6f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SegmentAttributeLLList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SegmentAttributeLLList.h" + +static asn_oer_constraints_t asn_OER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_SegmentAttributeLLList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SegmentAttributeLLList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeLL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeLLList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeLLList_specs_1 = { + sizeof(struct SegmentAttributeLLList), + offsetof(struct SegmentAttributeLLList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeLLList = { + "SegmentAttributeLLList", + "SegmentAttributeLLList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeLLList_tags_1, + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeLLList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeLLList_tags_1) + /sizeof(asn_DEF_SegmentAttributeLLList_tags_1[0]), /* 1 */ + { &asn_OER_type_SegmentAttributeLLList_constr_1, &asn_PER_type_SegmentAttributeLLList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SegmentAttributeLLList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeLLList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c new file mode 100644 index 000000000..5af4267af --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXY.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SegmentAttributeXY.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SegmentAttributeXY_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 37 } /* (0..37,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SegmentAttributeXY_value2enum_1[] = { + { 0, 8, "reserved" }, + { 1, 10, "doNotBlock" }, + { 2, 9, "whiteLine" }, + { 3, 15, "mergingLaneLeft" }, + { 4, 16, "mergingLaneRight" }, + { 5, 10, "curbOnLeft" }, + { 6, 11, "curbOnRight" }, + { 7, 17, "loadingzoneOnLeft" }, + { 8, 18, "loadingzoneOnRight" }, + { 9, 18, "turnOutPointOnLeft" }, + { 10, 19, "turnOutPointOnRight" }, + { 11, 21, "adjacentParkingOnLeft" }, + { 12, 22, "adjacentParkingOnRight" }, + { 13, 22, "adjacentBikeLaneOnLeft" }, + { 14, 23, "adjacentBikeLaneOnRight" }, + { 15, 14, "sharedBikeLane" }, + { 16, 14, "bikeBoxInFront" }, + { 17, 17, "transitStopOnLeft" }, + { 18, 18, "transitStopOnRight" }, + { 19, 17, "transitStopInLane" }, + { 20, 24, "sharedWithTrackedVehicle" }, + { 21, 10, "safeIsland" }, + { 22, 15, "lowCurbsPresent" }, + { 23, 18, "rumbleStripPresent" }, + { 24, 23, "audibleSignalingPresent" }, + { 25, 21, "adaptiveTimingPresent" }, + { 26, 22, "rfSignalRequestPresent" }, + { 27, 20, "partialCurbIntrusion" }, + { 28, 11, "taperToLeft" }, + { 29, 12, "taperToRight" }, + { 30, 17, "taperToCenterLine" }, + { 31, 15, "parallelParking" }, + { 32, 13, "headInParking" }, + { 33, 11, "freeParking" }, + { 34, 25, "timeRestrictionsOnParking" }, + { 35, 10, "costToPark" }, + { 36, 19, "midBlockCurbPresent" }, + { 37, 21, "unEvenPavementPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SegmentAttributeXY_enum2value_1[] = { + 25, /* adaptiveTimingPresent(25) */ + 13, /* adjacentBikeLaneOnLeft(13) */ + 14, /* adjacentBikeLaneOnRight(14) */ + 11, /* adjacentParkingOnLeft(11) */ + 12, /* adjacentParkingOnRight(12) */ + 24, /* audibleSignalingPresent(24) */ + 16, /* bikeBoxInFront(16) */ + 35, /* costToPark(35) */ + 5, /* curbOnLeft(5) */ + 6, /* curbOnRight(6) */ + 1, /* doNotBlock(1) */ + 33, /* freeParking(33) */ + 32, /* headInParking(32) */ + 7, /* loadingzoneOnLeft(7) */ + 8, /* loadingzoneOnRight(8) */ + 22, /* lowCurbsPresent(22) */ + 3, /* mergingLaneLeft(3) */ + 4, /* mergingLaneRight(4) */ + 36, /* midBlockCurbPresent(36) */ + 31, /* parallelParking(31) */ + 27, /* partialCurbIntrusion(27) */ + 0, /* reserved(0) */ + 26, /* rfSignalRequestPresent(26) */ + 23, /* rumbleStripPresent(23) */ + 21, /* safeIsland(21) */ + 15, /* sharedBikeLane(15) */ + 20, /* sharedWithTrackedVehicle(20) */ + 30, /* taperToCenterLine(30) */ + 28, /* taperToLeft(28) */ + 29, /* taperToRight(29) */ + 34, /* timeRestrictionsOnParking(34) */ + 19, /* transitStopInLane(19) */ + 17, /* transitStopOnLeft(17) */ + 18, /* transitStopOnRight(18) */ + 9, /* turnOutPointOnLeft(9) */ + 10, /* turnOutPointOnRight(10) */ + 37, /* unEvenPavementPresent(37) */ + 2 /* whiteLine(2) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SegmentAttributeXY_specs_1 = { + asn_MAP_SegmentAttributeXY_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SegmentAttributeXY_enum2value_1, /* N => "tag"; sorted by N */ + 38, /* Number of elements in the maps */ + 39, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXY_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXY = { + "SegmentAttributeXY", + "SegmentAttributeXY", + &asn_OP_NativeEnumerated, + asn_DEF_SegmentAttributeXY_tags_1, + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXY_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXY_tags_1) + /sizeof(asn_DEF_SegmentAttributeXY_tags_1[0]), /* 1 */ + { &asn_OER_type_SegmentAttributeXY_constr_1, &asn_PER_type_SegmentAttributeXY_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SegmentAttributeXY_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c new file mode 100644 index 000000000..2f9175c54 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SegmentAttributeXYList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SegmentAttributeXYList.h" + +static asn_oer_constraints_t asn_OER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_SegmentAttributeXYList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SegmentAttributeXYList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_SegmentAttributeXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SegmentAttributeXYList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SegmentAttributeXYList_specs_1 = { + sizeof(struct SegmentAttributeXYList), + offsetof(struct SegmentAttributeXYList, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_SegmentAttributeXYList = { + "SegmentAttributeXYList", + "SegmentAttributeXYList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SegmentAttributeXYList_tags_1, + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + asn_DEF_SegmentAttributeXYList_tags_1, /* Same as above */ + sizeof(asn_DEF_SegmentAttributeXYList_tags_1) + /sizeof(asn_DEF_SegmentAttributeXYList_tags_1[0]), /* 1 */ + { &asn_OER_type_SegmentAttributeXYList_constr_1, &asn_PER_type_SegmentAttributeXYList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SegmentAttributeXYList_1, + 1, /* Single element */ + &asn_SPC_SegmentAttributeXYList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c new file mode 100644 index 000000000..67e14c954 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisAccuracy.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SemiMajorAxisAccuracy.h" + +int +SemiMajorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_SemiMajorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisAccuracy = { + "SemiMajorAxisAccuracy", + "SemiMajorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMajorAxisAccuracy_tags_1[0]), /* 1 */ + { &asn_OER_type_SemiMajorAxisAccuracy_constr_1, &asn_PER_type_SemiMajorAxisAccuracy_constr_1, SemiMajorAxisAccuracy_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c new file mode 100644 index 000000000..03add30b7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SemiMajorAxisOrientation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SemiMajorAxisOrientation.h" + +int +SemiMajorAxisOrientation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_SemiMajorAxisOrientation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SemiMajorAxisOrientation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMajorAxisOrientation = { + "SemiMajorAxisOrientation", + "SemiMajorAxisOrientation", + &asn_OP_NativeInteger, + asn_DEF_SemiMajorAxisOrientation_tags_1, + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + asn_DEF_SemiMajorAxisOrientation_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1) + /sizeof(asn_DEF_SemiMajorAxisOrientation_tags_1[0]), /* 1 */ + { &asn_OER_type_SemiMajorAxisOrientation_constr_1, &asn_PER_type_SemiMajorAxisOrientation_constr_1, SemiMajorAxisOrientation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c b/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c new file mode 100644 index 000000000..e780dd015 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SemiMinorAxisAccuracy.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SemiMinorAxisAccuracy.h" + +int +SemiMinorAxisAccuracy_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_SemiMinorAxisAccuracy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SemiMinorAxisAccuracy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SemiMinorAxisAccuracy = { + "SemiMinorAxisAccuracy", + "SemiMinorAxisAccuracy", + &asn_OP_NativeInteger, + asn_DEF_SemiMinorAxisAccuracy_tags_1, + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + asn_DEF_SemiMinorAxisAccuracy_tags_1, /* Same as above */ + sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1) + /sizeof(asn_DEF_SemiMinorAxisAccuracy_tags_1[0]), /* 1 */ + { &asn_OER_type_SemiMinorAxisAccuracy_constr_1, &asn_PER_type_SemiMinorAxisAccuracy_constr_1, SemiMinorAxisAccuracy_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c b/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c new file mode 100644 index 000000000..d45d92e5a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SensorDataSharingMessage.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SensorDataSharingMessage.h" + +asn_TYPE_member_t asn_MBR_SensorDataSharingMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sourceID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sourceID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, equipmentType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EquipmentType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "equipmentType" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, sDSMTimeStamp), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sDSMTimeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPos), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPos" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, refPosXYConf), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PositionalAccuracy, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPosXYConf" + }, + { ATF_POINTER, 1, offsetof(struct SensorDataSharingMessage, refPosElConf), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ElevationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refPosElConf" + }, + { ATF_NOFLAGS, 0, offsetof(struct SensorDataSharingMessage, objects), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DetectedObjectList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "objects" + }, +}; +static const int asn_MAP_SensorDataSharingMessage_oms_1[] = { 6 }; +static const ber_tlv_tag_t asn_DEF_SensorDataSharingMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SensorDataSharingMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sourceID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* equipmentType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sDSMTimeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* refPos */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refPosXYConf */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refPosElConf */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* objects */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SensorDataSharingMessage_specs_1 = { + sizeof(struct SensorDataSharingMessage), + offsetof(struct SensorDataSharingMessage, _asn_ctx), + asn_MAP_SensorDataSharingMessage_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_SensorDataSharingMessage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SensorDataSharingMessage = { + "SensorDataSharingMessage", + "SensorDataSharingMessage", + &asn_OP_SEQUENCE, + asn_DEF_SensorDataSharingMessage_tags_1, + sizeof(asn_DEF_SensorDataSharingMessage_tags_1) + /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ + asn_DEF_SensorDataSharingMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SensorDataSharingMessage_tags_1) + /sizeof(asn_DEF_SensorDataSharingMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SensorDataSharingMessage_1, + 8, /* Elements count */ + &asn_SPC_SensorDataSharingMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ShapePointSet.c b/src/tmx/Asn_J2735/src/r63/ShapePointSet.c new file mode 100644 index 000000000..b6447d9d5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ShapePointSet.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ShapePointSet.h" + +asn_TYPE_member_t asn_MBR_ShapePointSet_1[] = { + { ATF_POINTER, 3, offsetof(struct ShapePointSet, anchor), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Position3D, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "anchor" + }, + { ATF_POINTER, 2, offsetof(struct ShapePointSet, laneWidth), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneWidth" + }, + { ATF_POINTER, 1, offsetof(struct ShapePointSet, directionality), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DirectionOfUse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "directionality" + }, + { ATF_NOFLAGS, 0, offsetof(struct ShapePointSet, nodeList), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeListXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodeList" + }, +}; +static const int asn_MAP_ShapePointSet_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_ShapePointSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ShapePointSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* anchor */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* laneWidth */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* directionality */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nodeList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ShapePointSet_specs_1 = { + sizeof(struct ShapePointSet), + offsetof(struct ShapePointSet, _asn_ctx), + asn_MAP_ShapePointSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_ShapePointSet_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ShapePointSet = { + "ShapePointSet", + "ShapePointSet", + &asn_OP_SEQUENCE, + asn_DEF_ShapePointSet_tags_1, + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + asn_DEF_ShapePointSet_tags_1, /* Same as above */ + sizeof(asn_DEF_ShapePointSet_tags_1) + /sizeof(asn_DEF_ShapePointSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ShapePointSet_1, + 4, /* Elements count */ + &asn_SPC_ShapePointSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignPrority.c b/src/tmx/Asn_J2735/src/r63/SignPrority.c new file mode 100644 index 000000000..2f69bbfe0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignPrority.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignPrority.h" + +int +SignPrority_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 7)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SignPrority_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..7) */, + -1}; +asn_per_constraints_t asn_PER_type_SignPrority_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SignPrority_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignPrority = { + "SignPrority", + "SignPrority", + &asn_OP_NativeInteger, + asn_DEF_SignPrority_tags_1, + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + asn_DEF_SignPrority_tags_1, /* Same as above */ + sizeof(asn_DEF_SignPrority_tags_1) + /sizeof(asn_DEF_SignPrority_tags_1[0]), /* 1 */ + { &asn_OER_type_SignPrority_constr_1, &asn_PER_type_SignPrority_constr_1, SignPrority_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalControlZone.c b/src/tmx/Asn_J2735/src/r63/SignalControlZone.c new file mode 100644 index 000000000..01ab8054c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalControlZone.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalControlZone.h" + +asn_TYPE_member_t asn_MBR_SignalControlZone_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalControlZone, zone), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "zone" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalControlZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalControlZone_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* zone */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalControlZone_specs_1 = { + sizeof(struct SignalControlZone), + offsetof(struct SignalControlZone, _asn_ctx), + asn_MAP_SignalControlZone_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalControlZone = { + "SignalControlZone", + "SignalControlZone", + &asn_OP_SEQUENCE, + asn_DEF_SignalControlZone_tags_1, + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + asn_DEF_SignalControlZone_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalControlZone_tags_1) + /sizeof(asn_DEF_SignalControlZone_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalControlZone_1, + 1, /* Elements count */ + &asn_SPC_SignalControlZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalGroupID.c b/src/tmx/Asn_J2735/src/r63/SignalGroupID.c new file mode 100644 index 000000000..5d006a35f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalGroupID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalGroupID.h" + +int +SignalGroupID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_SignalGroupID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SignalGroupID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalGroupID = { + "SignalGroupID", + "SignalGroupID", + &asn_OP_NativeInteger, + asn_DEF_SignalGroupID_tags_1, + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + asn_DEF_SignalGroupID_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalGroupID_tags_1) + /sizeof(asn_DEF_SignalGroupID_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalGroupID_constr_1, &asn_PER_type_SignalGroupID_constr_1, SignalGroupID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c b/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c new file mode 100644 index 000000000..b49249b50 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalHeadLocation.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalHeadLocation.h" + +asn_TYPE_member_t asn_MBR_SignalHeadLocation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, node), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NodeOffsetPointXY, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "node" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalHeadLocation, signalGroupID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalGroupID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "signalGroupID" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalHeadLocation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* node */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* signalGroupID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalHeadLocation_specs_1 = { + sizeof(struct SignalHeadLocation), + offsetof(struct SignalHeadLocation, _asn_ctx), + asn_MAP_SignalHeadLocation_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocation = { + "SignalHeadLocation", + "SignalHeadLocation", + &asn_OP_SEQUENCE, + asn_DEF_SignalHeadLocation_tags_1, + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocation_tags_1) + /sizeof(asn_DEF_SignalHeadLocation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalHeadLocation_1, + 2, /* Elements count */ + &asn_SPC_SignalHeadLocation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c b/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c new file mode 100644 index 000000000..c9c5678da --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalHeadLocationList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalHeadLocationList.h" + +static asn_oer_constraints_t asn_OER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +asn_per_constraints_t asn_PER_type_SignalHeadLocationList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SignalHeadLocationList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalHeadLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalHeadLocationList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalHeadLocationList_specs_1 = { + sizeof(struct SignalHeadLocationList), + offsetof(struct SignalHeadLocationList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalHeadLocationList = { + "SignalHeadLocationList", + "SignalHeadLocationList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalHeadLocationList_tags_1, + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + asn_DEF_SignalHeadLocationList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalHeadLocationList_tags_1) + /sizeof(asn_DEF_SignalHeadLocationList_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalHeadLocationList_constr_1, &asn_PER_type_SignalHeadLocationList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SignalHeadLocationList_1, + 1, /* Single element */ + &asn_SPC_SignalHeadLocationList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c b/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c new file mode 100644 index 000000000..178bb4733 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalReqScheme.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalReqScheme.h" + +int +SignalReqScheme_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +static asn_per_constraints_t asn_PER_type_SignalReqScheme_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SignalReqScheme_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SignalReqScheme = { + "SignalReqScheme", + "SignalReqScheme", + &asn_OP_OCTET_STRING, + asn_DEF_SignalReqScheme_tags_1, + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + asn_DEF_SignalReqScheme_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalReqScheme_tags_1) + /sizeof(asn_DEF_SignalReqScheme_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalReqScheme_constr_1, &asn_PER_type_SignalReqScheme_constr_1, SignalReqScheme_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequest.c b/src/tmx/Asn_J2735/src/r63/SignalRequest.c new file mode 100644 index 000000000..0b1f6e615 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalRequest.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalRequest.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequest__regional), + offsetof(struct SignalRequest__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, requestType), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PriorityRequestType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requestType" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequest, inBoundLane), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "inBoundLane" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequest, outBoundLane), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "outBoundLane" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequest, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequest_oms_1[] = { 4, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requestID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* requestType */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* inBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* outBoundLane */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequest_specs_1 = { + sizeof(struct SignalRequest), + offsetof(struct SignalRequest, _asn_ctx), + asn_MAP_SignalRequest_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequest_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequest = { + "SignalRequest", + "SignalRequest", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequest_tags_1, + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + asn_DEF_SignalRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequest_tags_1) + /sizeof(asn_DEF_SignalRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalRequest_1, + 6, /* Elements count */ + &asn_SPC_SignalRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestList.c b/src/tmx/Asn_J2735/src/r63/SignalRequestList.c new file mode 100644 index 000000000..b669afba9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalRequestList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalRequestList.h" + +static asn_oer_constraints_t asn_OER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_SignalRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SignalRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalRequestPackage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalRequestList_specs_1 = { + sizeof(struct SignalRequestList), + offsetof(struct SignalRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestList = { + "SignalRequestList", + "SignalRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalRequestList_tags_1, + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestList_tags_1) + /sizeof(asn_DEF_SignalRequestList_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalRequestList_constr_1, &asn_PER_type_SignalRequestList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SignalRequestList_1, + 1, /* Single element */ + &asn_SPC_SignalRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c b/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c new file mode 100644 index 000000000..d924c57af --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalRequestMessage.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalRequestMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct SignalRequestMessage__regional), + offsetof(struct SignalRequestMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, requests), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequestList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requests" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestMessage, requestor), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requestor" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestMessage_oms_1[] = { 0, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* requests */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* requestor */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestMessage_specs_1 = { + sizeof(struct SignalRequestMessage), + offsetof(struct SignalRequestMessage, _asn_ctx), + asn_MAP_SignalRequestMessage_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_SignalRequestMessage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestMessage = { + "SignalRequestMessage", + "SignalRequestMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestMessage_tags_1, + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestMessage_tags_1) + /sizeof(asn_DEF_SignalRequestMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalRequestMessage_1, + 6, /* Elements count */ + &asn_SPC_SignalRequestMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c b/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c new file mode 100644 index 000000000..696448741 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalRequestPackage.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalRequestPackage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalRequestPackage__regional), + offsetof(struct SignalRequestPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalRequestPackage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequestPackage, request), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "request" + }, + { ATF_POINTER, 4, offsetof(struct SignalRequestPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 3, offsetof(struct SignalRequestPackage, second), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequestPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequestPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalRequestPackage_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequestPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequestPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequestPackage_specs_1 = { + sizeof(struct SignalRequestPackage), + offsetof(struct SignalRequestPackage, _asn_ctx), + asn_MAP_SignalRequestPackage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequestPackage_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequestPackage = { + "SignalRequestPackage", + "SignalRequestPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequestPackage_tags_1, + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalRequestPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequestPackage_tags_1) + /sizeof(asn_DEF_SignalRequestPackage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalRequestPackage_1, + 5, /* Elements count */ + &asn_SPC_SignalRequestPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c b/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c new file mode 100644 index 000000000..a9484cb18 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalRequesterInfo.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalRequesterInfo.h" + +asn_TYPE_member_t asn_MBR_SignalRequesterInfo_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, request), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "request" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalRequesterInfo, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_POINTER, 2, offsetof(struct SignalRequesterInfo, role), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 1, offsetof(struct SignalRequesterInfo, typeData), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RequestorType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "typeData" + }, +}; +static const int asn_MAP_SignalRequesterInfo_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalRequesterInfo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalRequesterInfo_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* request */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* typeData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalRequesterInfo_specs_1 = { + sizeof(struct SignalRequesterInfo), + offsetof(struct SignalRequesterInfo, _asn_ctx), + asn_MAP_SignalRequesterInfo_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalRequesterInfo_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalRequesterInfo = { + "SignalRequesterInfo", + "SignalRequesterInfo", + &asn_OP_SEQUENCE, + asn_DEF_SignalRequesterInfo_tags_1, + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + asn_DEF_SignalRequesterInfo_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalRequesterInfo_tags_1) + /sizeof(asn_DEF_SignalRequesterInfo_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalRequesterInfo_1, + 5, /* Elements count */ + &asn_SPC_SignalRequesterInfo_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatus.c b/src/tmx/Asn_J2735/src/r63/SignalStatus.c new file mode 100644 index 000000000..0a2a843dd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalStatus.c @@ -0,0 +1,161 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalStatus.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_5 = { + sizeof(struct SignalStatus__regional), + offsetof(struct SignalStatus__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_5 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_5, + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]) - 1, /* 1 */ + asn_DEF_regional_tags_5, /* Same as above */ + sizeof(asn_DEF_regional_tags_5) + /sizeof(asn_DEF_regional_tags_5[0]), /* 2 */ + { &asn_OER_type_regional_constr_5, &asn_PER_type_regional_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_regional_5, + 1, /* Single element */ + &asn_SPC_regional_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatus_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, id), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IntersectionReferenceID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatus, sigStatus), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusPackageList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sigStatus" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatus, regional), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_regional_5, + 0, + { &asn_OER_memb_regional_constr_5, &asn_PER_memb_regional_constr_5, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatus_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_SignalStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sigStatus */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatus_specs_1 = { + sizeof(struct SignalStatus), + offsetof(struct SignalStatus, _asn_ctx), + asn_MAP_SignalStatus_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_SignalStatus_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatus = { + "SignalStatus", + "SignalStatus", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatus_tags_1, + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + asn_DEF_SignalStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatus_tags_1) + /sizeof(asn_DEF_SignalStatus_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalStatus_1, + 4, /* Elements count */ + &asn_SPC_SignalStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusList.c b/src/tmx/Asn_J2735/src/r63/SignalStatusList.c new file mode 100644 index 000000000..194391425 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalStatusList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalStatusList.h" + +static asn_oer_constraints_t asn_OER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_SignalStatusList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SignalStatusList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusList_specs_1 = { + sizeof(struct SignalStatusList), + offsetof(struct SignalStatusList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusList = { + "SignalStatusList", + "SignalStatusList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusList_tags_1, + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusList_tags_1) + /sizeof(asn_DEF_SignalStatusList_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalStatusList_constr_1, &asn_PER_type_SignalStatusList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SignalStatusList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c b/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c new file mode 100644 index 000000000..804f4f2f9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalStatusMessage.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalStatusMessage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_6 = { + sizeof(struct SignalStatusMessage__regional), + offsetof(struct SignalStatusMessage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_6 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_6, + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]) - 1, /* 1 */ + asn_DEF_regional_tags_6, /* Same as above */ + sizeof(asn_DEF_regional_tags_6) + /sizeof(asn_DEF_regional_tags_6[0]), /* 2 */ + { &asn_OER_type_regional_constr_6, &asn_PER_type_regional_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_regional_6, + 1, /* Single element */ + &asn_SPC_regional_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusMessage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, second), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, sequenceNumber), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sequenceNumber" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusMessage, status), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalStatusList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusMessage, regional), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_regional_6, + 0, + { &asn_OER_memb_regional_constr_6, &asn_PER_memb_regional_constr_6, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusMessage_oms_1[] = { 0, 2, 4 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceNumber */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusMessage_specs_1 = { + sizeof(struct SignalStatusMessage), + offsetof(struct SignalStatusMessage, _asn_ctx), + asn_MAP_SignalStatusMessage_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_SignalStatusMessage_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusMessage = { + "SignalStatusMessage", + "SignalStatusMessage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusMessage_tags_1, + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusMessage_tags_1) + /sizeof(asn_DEF_SignalStatusMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalStatusMessage_1, + 5, /* Elements count */ + &asn_SPC_SignalStatusMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c b/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c new file mode 100644 index 000000000..d30ee5efb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalStatusPackage.c @@ -0,0 +1,201 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalStatusPackage.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_9 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_9 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_9[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_9[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_9 = { + sizeof(struct SignalStatusPackage__regional), + offsetof(struct SignalStatusPackage__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_9 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_9, + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]) - 1, /* 1 */ + asn_DEF_regional_tags_9, /* Same as above */ + sizeof(asn_DEF_regional_tags_9) + /sizeof(asn_DEF_regional_tags_9[0]), /* 2 */ + { &asn_OER_type_regional_constr_9, &asn_PER_type_regional_constr_9, SEQUENCE_OF_constraint }, + asn_MBR_regional_9, + 1, /* Single element */ + &asn_SPC_regional_specs_9 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SignalStatusPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, requester), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignalRequesterInfo, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "requester" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, inboundOn), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "inboundOn" + }, + { ATF_POINTER, 4, offsetof(struct SignalStatusPackage, outboundOn), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_IntersectionAccessPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "outboundOn" + }, + { ATF_POINTER, 3, offsetof(struct SignalStatusPackage, minute), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minute" + }, + { ATF_POINTER, 2, offsetof(struct SignalStatusPackage, second), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "second" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, duration), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSecond, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "duration" + }, + { ATF_NOFLAGS, 0, offsetof(struct SignalStatusPackage, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrioritizationResponseStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 1, offsetof(struct SignalStatusPackage, regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_regional_9, + 0, + { &asn_OER_memb_regional_constr_9, &asn_PER_memb_regional_constr_9, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SignalStatusPackage_oms_1[] = { 0, 2, 3, 4, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SignalStatusPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* requester */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* inboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* outboundOn */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* minute */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* second */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duration */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SignalStatusPackage_specs_1 = { + sizeof(struct SignalStatusPackage), + offsetof(struct SignalStatusPackage, _asn_ctx), + asn_MAP_SignalStatusPackage_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_SignalStatusPackage_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackage = { + "SignalStatusPackage", + "SignalStatusPackage", + &asn_OP_SEQUENCE, + asn_DEF_SignalStatusPackage_tags_1, + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackage_tags_1) + /sizeof(asn_DEF_SignalStatusPackage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SignalStatusPackage_1, + 8, /* Elements count */ + &asn_SPC_SignalStatusPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c b/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c new file mode 100644 index 000000000..82ccbb44f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SignalStatusPackageList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SignalStatusPackageList.h" + +static asn_oer_constraints_t asn_OER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_SignalStatusPackageList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SignalStatusPackageList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SignalStatusPackage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SignalStatusPackageList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SignalStatusPackageList_specs_1 = { + sizeof(struct SignalStatusPackageList), + offsetof(struct SignalStatusPackageList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SignalStatusPackageList = { + "SignalStatusPackageList", + "SignalStatusPackageList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SignalStatusPackageList_tags_1, + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + asn_DEF_SignalStatusPackageList_tags_1, /* Same as above */ + sizeof(asn_DEF_SignalStatusPackageList_tags_1) + /sizeof(asn_DEF_SignalStatusPackageList_tags_1[0]), /* 1 */ + { &asn_OER_type_SignalStatusPackageList_constr_1, &asn_PER_type_SignalStatusPackageList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SignalStatusPackageList_1, + 1, /* Single element */ + &asn_SPC_SignalStatusPackageList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SirenInUse.c b/src/tmx/Asn_J2735/src/r63/SirenInUse.c new file mode 100644 index 000000000..285c01fe2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SirenInUse.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SirenInUse.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SirenInUse_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SirenInUse_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SirenInUse_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "notInUse" }, + { 2, 5, "inUse" }, + { 3, 8, "reserved" } +}; +static const unsigned int asn_MAP_SirenInUse_enum2value_1[] = { + 2, /* inUse(2) */ + 1, /* notInUse(1) */ + 3, /* reserved(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SirenInUse_specs_1 = { + asn_MAP_SirenInUse_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SirenInUse_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SirenInUse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SirenInUse = { + "SirenInUse", + "SirenInUse", + &asn_OP_NativeEnumerated, + asn_DEF_SirenInUse_tags_1, + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + asn_DEF_SirenInUse_tags_1, /* Same as above */ + sizeof(asn_DEF_SirenInUse_tags_1) + /sizeof(asn_DEF_SirenInUse_tags_1[0]), /* 1 */ + { &asn_OER_type_SirenInUse_constr_1, &asn_PER_type_SirenInUse_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SirenInUse_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SizeValue.c b/src/tmx/Asn_J2735/src/r63/SizeValue.c new file mode 100644 index 000000000..19ec9d837 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SizeValue.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SizeValue.h" + +int +SizeValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SizeValue_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_SizeValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SizeValue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SizeValue = { + "SizeValue", + "SizeValue", + &asn_OP_NativeInteger, + asn_DEF_SizeValue_tags_1, + sizeof(asn_DEF_SizeValue_tags_1) + /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ + asn_DEF_SizeValue_tags_1, /* Same as above */ + sizeof(asn_DEF_SizeValue_tags_1) + /sizeof(asn_DEF_SizeValue_tags_1[0]), /* 1 */ + { &asn_OER_type_SizeValue_constr_1, &asn_PER_type_SizeValue_constr_1, SizeValue_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c b/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c new file mode 100644 index 000000000..ac70f8af5 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SizeValueConfidence.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "SizeValueConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SizeValueConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 13 } /* (0..13) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SizeValueConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 11, "size-100-00" }, + { 2, 11, "size-050-00" }, + { 3, 11, "size-020-00" }, + { 4, 11, "size-010-00" }, + { 5, 11, "size-005-00" }, + { 6, 11, "size-002-00" }, + { 7, 11, "size-001-00" }, + { 8, 11, "size-000-50" }, + { 9, 11, "size-000-20" }, + { 10, 11, "size-000-10" }, + { 11, 11, "size-000-05" }, + { 12, 11, "size-000-02" }, + { 13, 11, "size-000-01" } +}; +static const unsigned int asn_MAP_SizeValueConfidence_enum2value_1[] = { + 13, /* size-000-01(13) */ + 12, /* size-000-02(12) */ + 11, /* size-000-05(11) */ + 10, /* size-000-10(10) */ + 9, /* size-000-20(9) */ + 8, /* size-000-50(8) */ + 7, /* size-001-00(7) */ + 6, /* size-002-00(6) */ + 5, /* size-005-00(5) */ + 4, /* size-010-00(4) */ + 3, /* size-020-00(3) */ + 2, /* size-050-00(2) */ + 1, /* size-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SizeValueConfidence_specs_1 = { + asn_MAP_SizeValueConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SizeValueConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SizeValueConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SizeValueConfidence = { + "SizeValueConfidence", + "SizeValueConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SizeValueConfidence_tags_1, + sizeof(asn_DEF_SizeValueConfidence_tags_1) + /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ + asn_DEF_SizeValueConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SizeValueConfidence_tags_1) + /sizeof(asn_DEF_SizeValueConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_SizeValueConfidence_constr_1, &asn_PER_type_SizeValueConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SizeValueConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Snapshot.c b/src/tmx/Asn_J2735/src/r63/Snapshot.c new file mode 100644 index 000000000..f6daab67a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Snapshot.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Snapshot.h" + +asn_TYPE_member_t asn_MBR_Snapshot_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Snapshot, thePosition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "thePosition" + }, + { ATF_POINTER, 2, offsetof(struct Snapshot, safetyExt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleSafetyExtensions, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "safetyExt" + }, + { ATF_POINTER, 1, offsetof(struct Snapshot, dataSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dataSet" + }, +}; +static const int asn_MAP_Snapshot_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_Snapshot_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Snapshot_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* thePosition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* safetyExt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dataSet */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Snapshot_specs_1 = { + sizeof(struct Snapshot), + offsetof(struct Snapshot, _asn_ctx), + asn_MAP_Snapshot_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Snapshot_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Snapshot = { + "Snapshot", + "Snapshot", + &asn_OP_SEQUENCE, + asn_DEF_Snapshot_tags_1, + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + asn_DEF_Snapshot_tags_1, /* Same as above */ + sizeof(asn_DEF_Snapshot_tags_1) + /sizeof(asn_DEF_Snapshot_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Snapshot_1, + 3, /* Elements count */ + &asn_SPC_Snapshot_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c b/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c new file mode 100644 index 000000000..2dca9aa30 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SnapshotDistance.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SnapshotDistance.h" + +asn_TYPE_member_t asn_MBR_SnapshotDistance_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "distance1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, distance2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "distance2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotDistance, speed2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotDistance_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* distance1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* distance2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* speed2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotDistance_specs_1 = { + sizeof(struct SnapshotDistance), + offsetof(struct SnapshotDistance, _asn_ctx), + asn_MAP_SnapshotDistance_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotDistance = { + "SnapshotDistance", + "SnapshotDistance", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotDistance_tags_1, + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + asn_DEF_SnapshotDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotDistance_tags_1) + /sizeof(asn_DEF_SnapshotDistance_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SnapshotDistance_1, + 4, /* Elements count */ + &asn_SPC_SnapshotDistance_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SnapshotTime.c b/src/tmx/Asn_J2735/src/r63/SnapshotTime.c new file mode 100644 index 000000000..8a70093b8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SnapshotTime.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SnapshotTime.h" + +asn_TYPE_member_t asn_MBR_SnapshotTime_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time1), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "time1" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, speed2), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GrossSpeed, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed2" + }, + { ATF_NOFLAGS, 0, offsetof(struct SnapshotTime, time2), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SecondOfTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "time2" + }, +}; +static const ber_tlv_tag_t asn_DEF_SnapshotTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SnapshotTime_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* speed1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* time1 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* speed2 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* time2 */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SnapshotTime_specs_1 = { + sizeof(struct SnapshotTime), + offsetof(struct SnapshotTime, _asn_ctx), + asn_MAP_SnapshotTime_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SnapshotTime = { + "SnapshotTime", + "SnapshotTime", + &asn_OP_SEQUENCE, + asn_DEF_SnapshotTime_tags_1, + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + asn_DEF_SnapshotTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SnapshotTime_tags_1) + /sizeof(asn_DEF_SnapshotTime_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SnapshotTime_1, + 4, /* Elements count */ + &asn_SPC_SnapshotTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c b/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c new file mode 100644 index 000000000..4c2ab50e9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpecialVehicleExtensions.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SpecialVehicleExtensions.h" + +asn_TYPE_member_t asn_MBR_SpecialVehicleExtensions_1[] = { + { ATF_POINTER, 3, offsetof(struct SpecialVehicleExtensions, vehicleAlerts), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EmergencyDetails, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleAlerts" + }, + { ATF_POINTER, 2, offsetof(struct SpecialVehicleExtensions, description), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "description" + }, + { ATF_POINTER, 1, offsetof(struct SpecialVehicleExtensions, trailers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trailers" + }, +}; +static const int asn_MAP_SpecialVehicleExtensions_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_SpecialVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpecialVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleAlerts */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* description */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* trailers */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpecialVehicleExtensions_specs_1 = { + sizeof(struct SpecialVehicleExtensions), + offsetof(struct SpecialVehicleExtensions, _asn_ctx), + asn_MAP_SpecialVehicleExtensions_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_SpecialVehicleExtensions_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpecialVehicleExtensions = { + "SpecialVehicleExtensions", + "SpecialVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SpecialVehicleExtensions_tags_1, + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SpecialVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SpecialVehicleExtensions_tags_1) + /sizeof(asn_DEF_SpecialVehicleExtensions_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SpecialVehicleExtensions_1, + 3, /* Elements count */ + &asn_SPC_SpecialVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Speed.c b/src/tmx/Asn_J2735/src/r63/Speed.c new file mode 100644 index 000000000..e88a1841c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Speed.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Speed.h" + +int +Speed_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Speed_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +asn_per_constraints_t asn_PER_type_Speed_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Speed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Speed = { + "Speed", + "Speed", + &asn_OP_NativeInteger, + asn_DEF_Speed_tags_1, + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + asn_DEF_Speed_tags_1, /* Same as above */ + sizeof(asn_DEF_Speed_tags_1) + /sizeof(asn_DEF_Speed_tags_1[0]), /* 1 */ + { &asn_OER_type_Speed_constr_1, &asn_PER_type_Speed_constr_1, Speed_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c b/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c new file mode 100644 index 000000000..871a7a84d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedAdvice.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedAdvice.h" + +int +SpeedAdvice_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 500)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..500) */, + -1}; +asn_per_constraints_t asn_PER_type_SpeedAdvice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, 0, 500 } /* (0..500) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SpeedAdvice_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedAdvice = { + "SpeedAdvice", + "SpeedAdvice", + &asn_OP_NativeInteger, + asn_DEF_SpeedAdvice_tags_1, + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + asn_DEF_SpeedAdvice_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedAdvice_tags_1) + /sizeof(asn_DEF_SpeedAdvice_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedAdvice_constr_1, &asn_PER_type_SpeedAdvice_constr_1, SpeedAdvice_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c b/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c new file mode 100644 index 000000000..48581ac94 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SpeedConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SpeedConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 9, "prec100ms" }, + { 2, 8, "prec10ms" }, + { 3, 7, "prec5ms" }, + { 4, 7, "prec1ms" }, + { 5, 9, "prec0-1ms" }, + { 6, 10, "prec0-05ms" }, + { 7, 10, "prec0-01ms" } +}; +static const unsigned int asn_MAP_SpeedConfidence_enum2value_1[] = { + 7, /* prec0-01ms(7) */ + 6, /* prec0-05ms(6) */ + 5, /* prec0-1ms(5) */ + 1, /* prec100ms(1) */ + 2, /* prec10ms(2) */ + 4, /* prec1ms(4) */ + 3, /* prec5ms(3) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedConfidence_specs_1 = { + asn_MAP_SpeedConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedConfidence = { + "SpeedConfidence", + "SpeedConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedConfidence_tags_1, + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedConfidence_tags_1) + /sizeof(asn_DEF_SpeedConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedConfidence_constr_1, &asn_PER_type_SpeedConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimit.c b/src/tmx/Asn_J2735/src/r63/SpeedLimit.c new file mode 100644 index 000000000..18d088aac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedLimit.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedLimit.h" + +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_SpeedLimit_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct SpeedLimit__Member__item), + offsetof(struct SpeedLimit__Member__item, _asn_ctx), + offsetof(struct SpeedLimit__Member__item, present), + sizeof(((struct SpeedLimit__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedLimit__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct SpeedLimit__Member), + offsetof(struct SpeedLimit__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SpeedLimit_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimit_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimit_specs_1 = { + sizeof(struct SpeedLimit), + offsetof(struct SpeedLimit, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimit = { + "SpeedLimit", + "SpeedLimit", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimit_tags_1, + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimit_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimit_tags_1) + /sizeof(asn_DEF_SpeedLimit_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedLimit_constr_1, &asn_PER_type_SpeedLimit_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SpeedLimit_1, + 1, /* Single element */ + &asn_SPC_SpeedLimit_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c b/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c new file mode 100644 index 000000000..587280e8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedLimitList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedLimitList.h" + +static asn_oer_constraints_t asn_OER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..9)) */}; +asn_per_constraints_t asn_PER_type_SpeedLimitList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 9 } /* (SIZE(1..9)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SpeedLimitList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RegulatorySpeedLimit, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedLimitList_specs_1 = { + sizeof(struct SpeedLimitList), + offsetof(struct SpeedLimitList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitList = { + "SpeedLimitList", + "SpeedLimitList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedLimitList_tags_1, + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitList_tags_1) + /sizeof(asn_DEF_SpeedLimitList_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedLimitList_constr_1, &asn_PER_type_SpeedLimitList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SpeedLimitList_1, + 1, /* Single element */ + &asn_SPC_SpeedLimitList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c b/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c new file mode 100644 index 000000000..7c25f0a47 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedLimitType.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedLimitType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SpeedLimitType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 12 } /* (0..12,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SpeedLimitType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 20, "maxSpeedInSchoolZone" }, + { 2, 42, "maxSpeedInSchoolZoneWhenChildrenArePresent" }, + { 3, 26, "maxSpeedInConstructionZone" }, + { 4, 15, "vehicleMinSpeed" }, + { 5, 15, "vehicleMaxSpeed" }, + { 6, 20, "vehicleNightMaxSpeed" }, + { 7, 13, "truckMinSpeed" }, + { 8, 13, "truckMaxSpeed" }, + { 9, 18, "truckNightMaxSpeed" }, + { 10, 28, "vehiclesWithTrailersMinSpeed" }, + { 11, 28, "vehiclesWithTrailersMaxSpeed" }, + { 12, 33, "vehiclesWithTrailersNightMaxSpeed" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_SpeedLimitType_enum2value_1[] = { + 3, /* maxSpeedInConstructionZone(3) */ + 1, /* maxSpeedInSchoolZone(1) */ + 2, /* maxSpeedInSchoolZoneWhenChildrenArePresent(2) */ + 8, /* truckMaxSpeed(8) */ + 7, /* truckMinSpeed(7) */ + 9, /* truckNightMaxSpeed(9) */ + 0, /* unknown(0) */ + 5, /* vehicleMaxSpeed(5) */ + 4, /* vehicleMinSpeed(4) */ + 6, /* vehicleNightMaxSpeed(6) */ + 11, /* vehiclesWithTrailersMaxSpeed(11) */ + 10, /* vehiclesWithTrailersMinSpeed(10) */ + 12 /* vehiclesWithTrailersNightMaxSpeed(12) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_SpeedLimitType_specs_1 = { + asn_MAP_SpeedLimitType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SpeedLimitType_enum2value_1, /* N => "tag"; sorted by N */ + 13, /* Number of elements in the maps */ + 14, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SpeedLimitType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedLimitType = { + "SpeedLimitType", + "SpeedLimitType", + &asn_OP_NativeEnumerated, + asn_DEF_SpeedLimitType_tags_1, + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + asn_DEF_SpeedLimitType_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedLimitType_tags_1) + /sizeof(asn_DEF_SpeedLimitType_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedLimitType_constr_1, &asn_PER_type_SpeedLimitType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SpeedLimitType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfile.c b/src/tmx/Asn_J2735/src/r63/SpeedProfile.c new file mode 100644 index 000000000..b4153630a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedProfile.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedProfile.h" + +asn_TYPE_member_t asn_MBR_SpeedProfile_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedProfile, speedReports), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfileMeasurementList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedReports" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfile_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedProfile_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* speedReports */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedProfile_specs_1 = { + sizeof(struct SpeedProfile), + offsetof(struct SpeedProfile, _asn_ctx), + asn_MAP_SpeedProfile_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfile = { + "SpeedProfile", + "SpeedProfile", + &asn_OP_SEQUENCE, + asn_DEF_SpeedProfile_tags_1, + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfile_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfile_tags_1) + /sizeof(asn_DEF_SpeedProfile_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SpeedProfile_1, + 1, /* Elements count */ + &asn_SPC_SpeedProfile_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c new file mode 100644 index 000000000..49866ca61 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurement.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedProfileMeasurement.h" + +int +SpeedProfileMeasurement_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 31)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using GrossSpeed, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..31) */, + -1}; +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurement_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurement_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurement = { + "SpeedProfileMeasurement", + "SpeedProfileMeasurement", + &asn_OP_NativeInteger, + asn_DEF_SpeedProfileMeasurement_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurement_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurement_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurement_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedProfileMeasurement_constr_1, &asn_PER_type_SpeedProfileMeasurement_constr_1, SpeedProfileMeasurement_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c new file mode 100644 index 000000000..ed65137a8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedProfileMeasurementList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedProfileMeasurementList.h" + +static asn_oer_constraints_t asn_OER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..20)) */}; +asn_per_constraints_t asn_PER_type_SpeedProfileMeasurementList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 20 } /* (SIZE(1..20)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SpeedProfileMeasurementList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_SpeedProfileMeasurement, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedProfileMeasurementList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SpeedProfileMeasurementList_specs_1 = { + sizeof(struct SpeedProfileMeasurementList), + offsetof(struct SpeedProfileMeasurementList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedProfileMeasurementList = { + "SpeedProfileMeasurementList", + "SpeedProfileMeasurementList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SpeedProfileMeasurementList_tags_1, + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + asn_DEF_SpeedProfileMeasurementList_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1) + /sizeof(asn_DEF_SpeedProfileMeasurementList_tags_1[0]), /* 1 */ + { &asn_OER_type_SpeedProfileMeasurementList_constr_1, &asn_PER_type_SpeedProfileMeasurementList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SpeedProfileMeasurementList_1, + 1, /* Single element */ + &asn_SPC_SpeedProfileMeasurementList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c b/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c new file mode 100644 index 000000000..05c97f4d9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SpeedandHeadingandThrottleConfidence.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SpeedandHeadingandThrottleConfidence.h" + +asn_TYPE_member_t asn_MBR_SpeedandHeadingandThrottleConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, heading), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, + { ATF_NOFLAGS, 0, offsetof(struct SpeedandHeadingandThrottleConfidence, throttle), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "throttle" + }, +}; +static const ber_tlv_tag_t asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* speed */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* throttle */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 = { + sizeof(struct SpeedandHeadingandThrottleConfidence), + offsetof(struct SpeedandHeadingandThrottleConfidence, _asn_ctx), + asn_MAP_SpeedandHeadingandThrottleConfidence_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SpeedandHeadingandThrottleConfidence = { + "SpeedandHeadingandThrottleConfidence", + "SpeedandHeadingandThrottleConfidence", + &asn_OP_SEQUENCE, + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1) + /sizeof(asn_DEF_SpeedandHeadingandThrottleConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SpeedandHeadingandThrottleConfidence_1, + 3, /* Elements count */ + &asn_SPC_SpeedandHeadingandThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c b/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c new file mode 100644 index 000000000..df0e6cc8e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/StabilityControlStatus.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "StabilityControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_StabilityControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_StabilityControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_StabilityControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_StabilityControlStatus_specs_1 = { + asn_MAP_StabilityControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_StabilityControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_StabilityControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StabilityControlStatus = { + "StabilityControlStatus", + "StabilityControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_StabilityControlStatus_tags_1, + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + asn_DEF_StabilityControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_StabilityControlStatus_tags_1) + /sizeof(asn_DEF_StabilityControlStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_StabilityControlStatus_constr_1, &asn_PER_type_StabilityControlStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_StabilityControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/StationID.c b/src/tmx/Asn_J2735/src/r63/StationID.c new file mode 100644 index 000000000..033c90ac6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/StationID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "StationID.h" + +int +StationID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_StationID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_StationID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_StationID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_StationID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_StationID = { + "StationID", + "StationID", + &asn_OP_NativeInteger, + asn_DEF_StationID_tags_1, + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + asn_DEF_StationID_tags_1, /* Same as above */ + sizeof(asn_DEF_StationID_tags_1) + /sizeof(asn_DEF_StationID_tags_1[0]), /* 1 */ + { &asn_OER_type_StationID_constr_1, &asn_PER_type_StationID_constr_1, StationID_constraint }, + 0, 0, /* No members */ + &asn_SPC_StationID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c b/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c new file mode 100644 index 000000000..ab989d4ac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SteeringAxleLubePressure.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SteeringAxleLubePressure.h" + +int +SteeringAxleLubePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 250)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +asn_per_constraints_t asn_PER_type_SteeringAxleLubePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SteeringAxleLubePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleLubePressure = { + "SteeringAxleLubePressure", + "SteeringAxleLubePressure", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleLubePressure_tags_1, + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleLubePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleLubePressure_tags_1) + /sizeof(asn_DEF_SteeringAxleLubePressure_tags_1[0]), /* 1 */ + { &asn_OER_type_SteeringAxleLubePressure_constr_1, &asn_PER_type_SteeringAxleLubePressure_constr_1, SteeringAxleLubePressure_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c b/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c new file mode 100644 index 000000000..48d388821 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SteeringAxleTemperature.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SteeringAxleTemperature.h" + +int +SteeringAxleTemperature_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -40 && value <= 210)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-40..210) */, + -1}; +asn_per_constraints_t asn_PER_type_SteeringAxleTemperature_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -40, 210 } /* (-40..210) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SteeringAxleTemperature_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringAxleTemperature = { + "SteeringAxleTemperature", + "SteeringAxleTemperature", + &asn_OP_NativeInteger, + asn_DEF_SteeringAxleTemperature_tags_1, + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + asn_DEF_SteeringAxleTemperature_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringAxleTemperature_tags_1) + /sizeof(asn_DEF_SteeringAxleTemperature_tags_1[0]), /* 1 */ + { &asn_OER_type_SteeringAxleTemperature_constr_1, &asn_PER_type_SteeringAxleTemperature_constr_1, SteeringAxleTemperature_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c new file mode 100644 index 000000000..abf7a927e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngle.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SteeringWheelAngle.h" + +int +SteeringWheelAngle_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -126 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-126..127) */, + -1}; +asn_per_constraints_t asn_PER_type_SteeringWheelAngle_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -126, 127 } /* (-126..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngle_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngle = { + "SteeringWheelAngle", + "SteeringWheelAngle", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngle_tags_1, + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngle_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngle_tags_1) + /sizeof(asn_DEF_SteeringWheelAngle_tags_1[0]), /* 1 */ + { &asn_OER_type_SteeringWheelAngle_constr_1, &asn_PER_type_SteeringWheelAngle_constr_1, SteeringWheelAngle_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c new file mode 100644 index 000000000..a3f13be6e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleConfidence.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SteeringWheelAngleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SteeringWheelAngleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SteeringWheelAngleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 8, "prec2deg" }, + { 2, 8, "prec1deg" }, + { 3, 11, "prec0-02deg" } +}; +static const unsigned int asn_MAP_SteeringWheelAngleConfidence_enum2value_1[] = { + 3, /* prec0-02deg(3) */ + 2, /* prec1deg(2) */ + 1, /* prec2deg(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SteeringWheelAngleConfidence_specs_1 = { + asn_MAP_SteeringWheelAngleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SteeringWheelAngleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleConfidence = { + "SteeringWheelAngleConfidence", + "SteeringWheelAngleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_SteeringWheelAngleConfidence_tags_1, + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_SteeringWheelAngleConfidence_constr_1, &asn_PER_type_SteeringWheelAngleConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SteeringWheelAngleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c new file mode 100644 index 000000000..cf63590c1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SteeringWheelAngleRateOfChange.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SteeringWheelAngleRateOfChange.h" + +int +SteeringWheelAngleRateOfChange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +asn_per_constraints_t asn_PER_type_SteeringWheelAngleRateOfChange_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SteeringWheelAngleRateOfChange_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SteeringWheelAngleRateOfChange = { + "SteeringWheelAngleRateOfChange", + "SteeringWheelAngleRateOfChange", + &asn_OP_NativeInteger, + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + asn_DEF_SteeringWheelAngleRateOfChange_tags_1, /* Same as above */ + sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1) + /sizeof(asn_DEF_SteeringWheelAngleRateOfChange_tags_1[0]), /* 1 */ + { &asn_OER_type_SteeringWheelAngleRateOfChange_constr_1, &asn_PER_type_SteeringWheelAngleRateOfChange_constr_1, SteeringWheelAngleRateOfChange_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SummerTime.c b/src/tmx/Asn_J2735/src/r63/SummerTime.c new file mode 100644 index 000000000..587269e1b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SummerTime.c @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SummerTime.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SummerTime_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_SummerTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_SummerTime_value2enum_1[] = { + { 0, 15, "notInSummerTime" }, + { 1, 12, "inSummerTime" } +}; +static const unsigned int asn_MAP_SummerTime_enum2value_1[] = { + 1, /* inSummerTime(1) */ + 0 /* notInSummerTime(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_SummerTime_specs_1 = { + asn_MAP_SummerTime_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_SummerTime_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_SummerTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SummerTime = { + "SummerTime", + "SummerTime", + &asn_OP_NativeEnumerated, + asn_DEF_SummerTime_tags_1, + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + asn_DEF_SummerTime_tags_1, /* Same as above */ + sizeof(asn_DEF_SummerTime_tags_1) + /sizeof(asn_DEF_SummerTime_tags_1[0]), /* 1 */ + { &asn_OER_type_SummerTime_constr_1, &asn_PER_type_SummerTime_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_SummerTime_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SunSensor.c b/src/tmx/Asn_J2735/src/r63/SunSensor.c new file mode 100644 index 000000000..90ae4a13d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SunSensor.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "SunSensor.h" + +int +SunSensor_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SunSensor_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1000) */, + -1}; +asn_per_constraints_t asn_PER_type_SunSensor_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1000 } /* (0..1000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SunSensor_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SunSensor = { + "SunSensor", + "SunSensor", + &asn_OP_NativeInteger, + asn_DEF_SunSensor_tags_1, + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + asn_DEF_SunSensor_tags_1, /* Same as above */ + sizeof(asn_DEF_SunSensor_tags_1) + /sizeof(asn_DEF_SunSensor_tags_1[0]), /* 1 */ + { &asn_OER_type_SunSensor_constr_1, &asn_PER_type_SunSensor_constr_1, SunSensor_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c b/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c new file mode 100644 index 000000000..58ef50063 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/SupplementalVehicleExtensions.c @@ -0,0 +1,221 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "SupplementalVehicleExtensions.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_11 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_11[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_11[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_11 = { + sizeof(struct SupplementalVehicleExtensions__regional), + offsetof(struct SupplementalVehicleExtensions__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_11 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_11, + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]) - 1, /* 1 */ + asn_DEF_regional_tags_11, /* Same as above */ + sizeof(asn_DEF_regional_tags_11) + /sizeof(asn_DEF_regional_tags_11[0]), /* 2 */ + { &asn_OER_type_regional_constr_11, &asn_PER_type_regional_constr_11, SEQUENCE_OF_constraint }, + asn_MBR_regional_11, + 1, /* Single element */ + &asn_SPC_regional_specs_11 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_SupplementalVehicleExtensions_1[] = { + { ATF_POINTER, 10, offsetof(struct SupplementalVehicleExtensions, classification), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "classification" + }, + { ATF_POINTER, 9, offsetof(struct SupplementalVehicleExtensions, classDetails), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleClassification, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "classDetails" + }, + { ATF_POINTER, 8, offsetof(struct SupplementalVehicleExtensions, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 7, offsetof(struct SupplementalVehicleExtensions, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherReport, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 6, offsetof(struct SupplementalVehicleExtensions, weatherProbe), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WeatherProbe, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "weatherProbe" + }, + { ATF_POINTER, 5, offsetof(struct SupplementalVehicleExtensions, obstacle), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDetection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obstacle" + }, + { ATF_POINTER, 4, offsetof(struct SupplementalVehicleExtensions, status), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DisabledVehicle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "status" + }, + { ATF_POINTER, 3, offsetof(struct SupplementalVehicleExtensions, speedProfile), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedProfile, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedProfile" + }, + { ATF_POINTER, 2, offsetof(struct SupplementalVehicleExtensions, theRTCM), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RTCMPackage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "theRTCM" + }, + { ATF_POINTER, 1, offsetof(struct SupplementalVehicleExtensions, regional), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_regional_11, + 0, + { &asn_OER_memb_regional_constr_11, &asn_PER_memb_regional_constr_11, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_SupplementalVehicleExtensions_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; +static const ber_tlv_tag_t asn_DEF_SupplementalVehicleExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SupplementalVehicleExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* classification */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* classDetails */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* weatherProbe */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* obstacle */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* status */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* speedProfile */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* theRTCM */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SupplementalVehicleExtensions_specs_1 = { + sizeof(struct SupplementalVehicleExtensions), + offsetof(struct SupplementalVehicleExtensions, _asn_ctx), + asn_MAP_SupplementalVehicleExtensions_tag2el_1, + 10, /* Count of tags in the map */ + asn_MAP_SupplementalVehicleExtensions_oms_1, /* Optional members */ + 10, 0, /* Root/Additions */ + 10, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SupplementalVehicleExtensions = { + "SupplementalVehicleExtensions", + "SupplementalVehicleExtensions", + &asn_OP_SEQUENCE, + asn_DEF_SupplementalVehicleExtensions_tags_1, + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + asn_DEF_SupplementalVehicleExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1) + /sizeof(asn_DEF_SupplementalVehicleExtensions_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SupplementalVehicleExtensions_1, + 10, /* Elements count */ + &asn_SPC_SupplementalVehicleExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TemporaryID.c b/src/tmx/Asn_J2735/src/r63/TemporaryID.c new file mode 100644 index 000000000..22a3b5624 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TemporaryID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TemporaryID.h" + +int +TemporaryID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 4)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TemporaryID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 4 /* (SIZE(4..4)) */}; +asn_per_constraints_t asn_PER_type_TemporaryID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TemporaryID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TemporaryID = { + "TemporaryID", + "TemporaryID", + &asn_OP_OCTET_STRING, + asn_DEF_TemporaryID_tags_1, + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + asn_DEF_TemporaryID_tags_1, /* Same as above */ + sizeof(asn_DEF_TemporaryID_tags_1) + /sizeof(asn_DEF_TemporaryID_tags_1[0]), /* 1 */ + { &asn_OER_type_TemporaryID_constr_1, &asn_PER_type_TemporaryID_constr_1, TemporaryID_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TenthSecond.c b/src/tmx/Asn_J2735/src/r63/TenthSecond.c new file mode 100644 index 000000000..47bb7f85a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TenthSecond.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TenthSecond.h" + +int +TenthSecond_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 9)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TenthSecond_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..9) */, + -1}; +asn_per_constraints_t asn_PER_type_TenthSecond_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 9 } /* (0..9) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TenthSecond_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TenthSecond = { + "TenthSecond", + "TenthSecond", + &asn_OP_NativeInteger, + asn_DEF_TenthSecond_tags_1, + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + asn_DEF_TenthSecond_tags_1, /* Same as above */ + sizeof(asn_DEF_TenthSecond_tags_1) + /sizeof(asn_DEF_TenthSecond_tags_1[0]), /* 1 */ + { &asn_OER_type_TenthSecond_constr_1, &asn_PER_type_TenthSecond_constr_1, TenthSecond_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TermDistance.c b/src/tmx/Asn_J2735/src/r63/TermDistance.c new file mode 100644 index 000000000..201bb39e8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TermDistance.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TermDistance.h" + +int +TermDistance_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 30000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TermDistance_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..30000) */, + -1}; +asn_per_constraints_t asn_PER_type_TermDistance_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 1, 30000 } /* (1..30000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TermDistance_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermDistance = { + "TermDistance", + "TermDistance", + &asn_OP_NativeInteger, + asn_DEF_TermDistance_tags_1, + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + asn_DEF_TermDistance_tags_1, /* Same as above */ + sizeof(asn_DEF_TermDistance_tags_1) + /sizeof(asn_DEF_TermDistance_tags_1[0]), /* 1 */ + { &asn_OER_type_TermDistance_constr_1, &asn_PER_type_TermDistance_constr_1, TermDistance_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TermTime.c b/src/tmx/Asn_J2735/src/r63/TermTime.c new file mode 100644 index 000000000..6f96d4618 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TermTime.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TermTime.h" + +int +TermTime_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 1800)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TermTime_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..1800) */, + -1}; +asn_per_constraints_t asn_PER_type_TermTime_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 1, 1800 } /* (1..1800) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TermTime_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TermTime = { + "TermTime", + "TermTime", + &asn_OP_NativeInteger, + asn_DEF_TermTime_tags_1, + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + asn_DEF_TermTime_tags_1, /* Same as above */ + sizeof(asn_DEF_TermTime_tags_1) + /sizeof(asn_DEF_TermTime_tags_1[0]), /* 1 */ + { &asn_OER_type_TermTime_constr_1, &asn_PER_type_TermTime_constr_1, TermTime_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage00.c b/src/tmx/Asn_J2735/src/r63/TestMessage00.c new file mode 100644 index 000000000..ffeadc578 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage00.c @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage00.h" + +asn_TYPE_member_t asn_MBR_TestMessage00_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage00, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage00_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage00_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage00_specs_1 = { + sizeof(struct TestMessage00), + offsetof(struct TestMessage00, _asn_ctx), + asn_MAP_TestMessage00_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage00 = { + "TestMessage00", + "TestMessage00", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage00_tags_1, + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + asn_DEF_TestMessage00_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage00_tags_1) + /sizeof(asn_DEF_TestMessage00_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage00_1, + 2, /* Elements count */ + &asn_SPC_TestMessage00_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage01.c b/src/tmx/Asn_J2735/src/r63/TestMessage01.c new file mode 100644 index 000000000..6d60abebd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage01.c @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage01.h" + +asn_TYPE_member_t asn_MBR_TestMessage01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage01, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityResponse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage01_specs_1 = { + sizeof(struct TestMessage01), + offsetof(struct TestMessage01, _asn_ctx), + asn_MAP_TestMessage01_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage01 = { + "TestMessage01", + "TestMessage01", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage01_tags_1, + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + asn_DEF_TestMessage01_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage01_tags_1) + /sizeof(asn_DEF_TestMessage01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage01_1, + 2, /* Elements count */ + &asn_SPC_TestMessage01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage02.c b/src/tmx/Asn_J2735/src/r63/TestMessage02.c new file mode 100644 index 000000000..3912b666c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage02.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage02.h" + +asn_TYPE_member_t asn_MBR_TestMessage02_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage02, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityPath, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage02_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage02_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage02_specs_1 = { + sizeof(struct TestMessage02), + offsetof(struct TestMessage02, _asn_ctx), + asn_MAP_TestMessage02_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage02 = { + "TestMessage02", + "TestMessage02", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage02_tags_1, + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + asn_DEF_TestMessage02_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage02_tags_1) + /sizeof(asn_DEF_TestMessage02_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage02_1, + 2, /* Elements count */ + &asn_SPC_TestMessage02_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage03.c b/src/tmx/Asn_J2735/src/r63/TestMessage03.c new file mode 100644 index 000000000..e3044146f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage03.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603.asn1" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TestMessage03.h" + +asn_TYPE_member_t asn_MBR_TestMessage03_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_NOFLAGS, 0, offsetof(struct TestMessage03, body), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MobilityOperation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage03_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage03_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage03_specs_1 = { + sizeof(struct TestMessage03), + offsetof(struct TestMessage03, _asn_ctx), + asn_MAP_TestMessage03_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage03 = { + "TestMessage03", + "TestMessage03", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage03_tags_1, + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + asn_DEF_TestMessage03_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage03_tags_1) + /sizeof(asn_DEF_TestMessage03_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage03_1, + 2, /* Elements count */ + &asn_SPC_TestMessage03_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage04.c b/src/tmx/Asn_J2735/src/r63/TestMessage04.c new file mode 100644 index 000000000..03fd4978f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage04.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage04.h" + +asn_TYPE_member_t asn_MBR_TestMessage04_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage04, body), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage04_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage04_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage04_specs_1 = { + sizeof(struct TestMessage04), + offsetof(struct TestMessage04, _asn_ctx), + asn_MAP_TestMessage04_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage04 = { + "TestMessage04", + "TestMessage04", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage04_tags_1, + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + asn_DEF_TestMessage04_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage04_tags_1) + /sizeof(asn_DEF_TestMessage04_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage04_1, + 1, /* Elements count */ + &asn_SPC_TestMessage04_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage05.c b/src/tmx/Asn_J2735/src/r63/TestMessage05.c new file mode 100644 index 000000000..6772392f4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage05.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage05.h" + +asn_TYPE_member_t asn_MBR_TestMessage05_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TestMessage05, body), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "body" + }, +}; +static const ber_tlv_tag_t asn_DEF_TestMessage05_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage05_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* body */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage05_specs_1 = { + sizeof(struct TestMessage05), + offsetof(struct TestMessage05, _asn_ctx), + asn_MAP_TestMessage05_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage05 = { + "TestMessage05", + "TestMessage05", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage05_tags_1, + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + asn_DEF_TestMessage05_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage05_tags_1) + /sizeof(asn_DEF_TestMessage05_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage05_1, + 1, /* Elements count */ + &asn_SPC_TestMessage05_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage06.c b/src/tmx/Asn_J2735/src/r63/TestMessage06.c new file mode 100644 index 000000000..405f3803b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage06.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage06.h" + +asn_TYPE_member_t asn_MBR_TestMessage06_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage06, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage06, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage06_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage06_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage06_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage06_specs_1 = { + sizeof(struct TestMessage06), + offsetof(struct TestMessage06, _asn_ctx), + asn_MAP_TestMessage06_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage06_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage06 = { + "TestMessage06", + "TestMessage06", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage06_tags_1, + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + asn_DEF_TestMessage06_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage06_tags_1) + /sizeof(asn_DEF_TestMessage06_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage06_1, + 2, /* Elements count */ + &asn_SPC_TestMessage06_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage07.c b/src/tmx/Asn_J2735/src/r63/TestMessage07.c new file mode 100644 index 000000000..f73b2ddda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage07.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage07.h" + +asn_TYPE_member_t asn_MBR_TestMessage07_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage07, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage07, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage07_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage07_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage07_specs_1 = { + sizeof(struct TestMessage07), + offsetof(struct TestMessage07, _asn_ctx), + asn_MAP_TestMessage07_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage07_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage07 = { + "TestMessage07", + "TestMessage07", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage07_tags_1, + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + asn_DEF_TestMessage07_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage07_tags_1) + /sizeof(asn_DEF_TestMessage07_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage07_1, + 2, /* Elements count */ + &asn_SPC_TestMessage07_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage08.c b/src/tmx/Asn_J2735/src/r63/TestMessage08.c new file mode 100644 index 000000000..8ea2a8edf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage08.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage08.h" + +asn_TYPE_member_t asn_MBR_TestMessage08_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage08, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage08, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage08_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage08_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage08_specs_1 = { + sizeof(struct TestMessage08), + offsetof(struct TestMessage08, _asn_ctx), + asn_MAP_TestMessage08_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage08_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage08 = { + "TestMessage08", + "TestMessage08", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage08_tags_1, + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + asn_DEF_TestMessage08_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage08_tags_1) + /sizeof(asn_DEF_TestMessage08_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage08_1, + 2, /* Elements count */ + &asn_SPC_TestMessage08_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage09.c b/src/tmx/Asn_J2735/src/r63/TestMessage09.c new file mode 100644 index 000000000..f03fd3d2a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage09.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage09.h" + +asn_TYPE_member_t asn_MBR_TestMessage09_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage09, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage09, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage09_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage09_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage09_specs_1 = { + sizeof(struct TestMessage09), + offsetof(struct TestMessage09, _asn_ctx), + asn_MAP_TestMessage09_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage09_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage09 = { + "TestMessage09", + "TestMessage09", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage09_tags_1, + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + asn_DEF_TestMessage09_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage09_tags_1) + /sizeof(asn_DEF_TestMessage09_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage09_1, + 2, /* Elements count */ + &asn_SPC_TestMessage09_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage10.c b/src/tmx/Asn_J2735/src/r63/TestMessage10.c new file mode 100644 index 000000000..585072bde --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage10.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage10.h" + +asn_TYPE_member_t asn_MBR_TestMessage10_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage10, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage10, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage10_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage10_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage10_specs_1 = { + sizeof(struct TestMessage10), + offsetof(struct TestMessage10, _asn_ctx), + asn_MAP_TestMessage10_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage10_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage10 = { + "TestMessage10", + "TestMessage10", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage10_tags_1, + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + asn_DEF_TestMessage10_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage10_tags_1) + /sizeof(asn_DEF_TestMessage10_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage10_1, + 2, /* Elements count */ + &asn_SPC_TestMessage10_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage11.c b/src/tmx/Asn_J2735/src/r63/TestMessage11.c new file mode 100644 index 000000000..612e15219 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage11.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage11.h" + +asn_TYPE_member_t asn_MBR_TestMessage11_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage11, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage11, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage11_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage11_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage11_specs_1 = { + sizeof(struct TestMessage11), + offsetof(struct TestMessage11, _asn_ctx), + asn_MAP_TestMessage11_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage11_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage11 = { + "TestMessage11", + "TestMessage11", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage11_tags_1, + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + asn_DEF_TestMessage11_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage11_tags_1) + /sizeof(asn_DEF_TestMessage11_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage11_1, + 2, /* Elements count */ + &asn_SPC_TestMessage11_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage12.c b/src/tmx/Asn_J2735/src/r63/TestMessage12.c new file mode 100644 index 000000000..df9cf60c0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage12.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage12.h" + +asn_TYPE_member_t asn_MBR_TestMessage12_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage12, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage12, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage12_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage12_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage12_specs_1 = { + sizeof(struct TestMessage12), + offsetof(struct TestMessage12, _asn_ctx), + asn_MAP_TestMessage12_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage12_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage12 = { + "TestMessage12", + "TestMessage12", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage12_tags_1, + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + asn_DEF_TestMessage12_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage12_tags_1) + /sizeof(asn_DEF_TestMessage12_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage12_1, + 2, /* Elements count */ + &asn_SPC_TestMessage12_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage13.c b/src/tmx/Asn_J2735/src/r63/TestMessage13.c new file mode 100644 index 000000000..675ee1f79 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage13.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage13.h" + +asn_TYPE_member_t asn_MBR_TestMessage13_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage13, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage13, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage13_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage13_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage13_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage13_specs_1 = { + sizeof(struct TestMessage13), + offsetof(struct TestMessage13, _asn_ctx), + asn_MAP_TestMessage13_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage13_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage13 = { + "TestMessage13", + "TestMessage13", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage13_tags_1, + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + asn_DEF_TestMessage13_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage13_tags_1) + /sizeof(asn_DEF_TestMessage13_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage13_1, + 2, /* Elements count */ + &asn_SPC_TestMessage13_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage14.c b/src/tmx/Asn_J2735/src/r63/TestMessage14.c new file mode 100644 index 000000000..2d11179b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage14.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage14.h" + +asn_TYPE_member_t asn_MBR_TestMessage14_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage14, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage14, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage14_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage14_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage14_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage14_specs_1 = { + sizeof(struct TestMessage14), + offsetof(struct TestMessage14, _asn_ctx), + asn_MAP_TestMessage14_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage14_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage14 = { + "TestMessage14", + "TestMessage14", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage14_tags_1, + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + asn_DEF_TestMessage14_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage14_tags_1) + /sizeof(asn_DEF_TestMessage14_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage14_1, + 2, /* Elements count */ + &asn_SPC_TestMessage14_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TestMessage15.c b/src/tmx/Asn_J2735/src/r63/TestMessage15.c new file mode 100644 index 000000000..f24b27280 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TestMessage15.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TestMessage15.h" + +asn_TYPE_member_t asn_MBR_TestMessage15_1[] = { + { ATF_POINTER, 2, offsetof(struct TestMessage15, header), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Header, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "header" + }, + { ATF_POINTER, 1, offsetof(struct TestMessage15, regional), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TestMessage15_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_TestMessage15_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TestMessage15_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* header */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TestMessage15_specs_1 = { + sizeof(struct TestMessage15), + offsetof(struct TestMessage15, _asn_ctx), + asn_MAP_TestMessage15_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TestMessage15_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TestMessage15 = { + "TestMessage15", + "TestMessage15", + &asn_OP_SEQUENCE, + asn_DEF_TestMessage15_tags_1, + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + asn_DEF_TestMessage15_tags_1, /* Same as above */ + sizeof(asn_DEF_TestMessage15_tags_1) + /sizeof(asn_DEF_TestMessage15_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TestMessage15_1, + 2, /* Elements count */ + &asn_SPC_TestMessage15_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c b/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c new file mode 100644 index 000000000..f16c8131c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ThrottleConfidence.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ThrottleConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ThrottleConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ThrottleConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "prec10percent" }, + { 2, 12, "prec1percent" }, + { 3, 14, "prec0-5percent" } +}; +static const unsigned int asn_MAP_ThrottleConfidence_enum2value_1[] = { + 3, /* prec0-5percent(3) */ + 1, /* prec10percent(1) */ + 2, /* prec1percent(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_ThrottleConfidence_specs_1 = { + asn_MAP_ThrottleConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_ThrottleConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ThrottleConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottleConfidence = { + "ThrottleConfidence", + "ThrottleConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_ThrottleConfidence_tags_1, + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + asn_DEF_ThrottleConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottleConfidence_tags_1) + /sizeof(asn_DEF_ThrottleConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_ThrottleConfidence_constr_1, &asn_PER_type_ThrottleConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ThrottleConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c b/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c new file mode 100644 index 000000000..9953b3662 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ThrottlePosition.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ThrottlePosition.h" + +int +ThrottlePosition_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 200)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..200) */, + -1}; +asn_per_constraints_t asn_PER_type_ThrottlePosition_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 200 } /* (0..200) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ThrottlePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ThrottlePosition = { + "ThrottlePosition", + "ThrottlePosition", + &asn_OP_NativeInteger, + asn_DEF_ThrottlePosition_tags_1, + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + asn_DEF_ThrottlePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_ThrottlePosition_tags_1) + /sizeof(asn_DEF_ThrottlePosition_tags_1[0]), /* 1 */ + { &asn_OER_type_ThrottlePosition_constr_1, &asn_PER_type_ThrottlePosition_constr_1, ThrottlePosition_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c b/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c new file mode 100644 index 000000000..d3313b33f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TimeChangeDetails.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TimeChangeDetails.h" + +asn_TYPE_member_t asn_MBR_TimeChangeDetails_1[] = { + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, startTime), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_TimeMark, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TimeChangeDetails, minEndTime), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_TimeMark, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "minEndTime" + }, + { ATF_POINTER, 4, offsetof(struct TimeChangeDetails, maxEndTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_TimeMark, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "maxEndTime" + }, + { ATF_POINTER, 3, offsetof(struct TimeChangeDetails, likelyTime), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_TimeMark, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "likelyTime" + }, + { ATF_POINTER, 2, offsetof(struct TimeChangeDetails, confidence), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeIntervalConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 1, offsetof(struct TimeChangeDetails, nextTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_TimeMark, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nextTime" + }, +}; +static const int asn_MAP_TimeChangeDetails_oms_1[] = { 0, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_TimeChangeDetails_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TimeChangeDetails_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* minEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* maxEndTime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* likelyTime */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* nextTime */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TimeChangeDetails_specs_1 = { + sizeof(struct TimeChangeDetails), + offsetof(struct TimeChangeDetails, _asn_ctx), + asn_MAP_TimeChangeDetails_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TimeChangeDetails_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TimeChangeDetails = { + "TimeChangeDetails", + "TimeChangeDetails", + &asn_OP_SEQUENCE, + asn_DEF_TimeChangeDetails_tags_1, + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + asn_DEF_TimeChangeDetails_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeChangeDetails_tags_1) + /sizeof(asn_DEF_TimeChangeDetails_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TimeChangeDetails_1, + 6, /* Elements count */ + &asn_SPC_TimeChangeDetails_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TimeConfidence.c b/src/tmx/Asn_J2735/src/r63/TimeConfidence.c new file mode 100644 index 000000000..0150299e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TimeConfidence.c @@ -0,0 +1,132 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TimeConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TimeConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 0, 39 } /* (0..39) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TimeConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 12, "time-100-000" }, + { 2, 12, "time-050-000" }, + { 3, 12, "time-020-000" }, + { 4, 12, "time-010-000" }, + { 5, 12, "time-002-000" }, + { 6, 12, "time-001-000" }, + { 7, 12, "time-000-500" }, + { 8, 12, "time-000-200" }, + { 9, 12, "time-000-100" }, + { 10, 12, "time-000-050" }, + { 11, 12, "time-000-020" }, + { 12, 12, "time-000-010" }, + { 13, 12, "time-000-005" }, + { 14, 12, "time-000-002" }, + { 15, 12, "time-000-001" }, + { 16, 14, "time-000-000-5" }, + { 17, 14, "time-000-000-2" }, + { 18, 14, "time-000-000-1" }, + { 19, 15, "time-000-000-05" }, + { 20, 15, "time-000-000-02" }, + { 21, 15, "time-000-000-01" }, + { 22, 16, "time-000-000-005" }, + { 23, 16, "time-000-000-002" }, + { 24, 16, "time-000-000-001" }, + { 25, 18, "time-000-000-000-5" }, + { 26, 18, "time-000-000-000-2" }, + { 27, 18, "time-000-000-000-1" }, + { 28, 19, "time-000-000-000-05" }, + { 29, 19, "time-000-000-000-02" }, + { 30, 19, "time-000-000-000-01" }, + { 31, 20, "time-000-000-000-005" }, + { 32, 20, "time-000-000-000-002" }, + { 33, 20, "time-000-000-000-001" }, + { 34, 22, "time-000-000-000-000-5" }, + { 35, 22, "time-000-000-000-000-2" }, + { 36, 22, "time-000-000-000-000-1" }, + { 37, 23, "time-000-000-000-000-05" }, + { 38, 23, "time-000-000-000-000-02" }, + { 39, 23, "time-000-000-000-000-01" } +}; +static const unsigned int asn_MAP_TimeConfidence_enum2value_1[] = { + 39, /* time-000-000-000-000-01(39) */ + 38, /* time-000-000-000-000-02(38) */ + 37, /* time-000-000-000-000-05(37) */ + 36, /* time-000-000-000-000-1(36) */ + 35, /* time-000-000-000-000-2(35) */ + 34, /* time-000-000-000-000-5(34) */ + 33, /* time-000-000-000-001(33) */ + 32, /* time-000-000-000-002(32) */ + 31, /* time-000-000-000-005(31) */ + 30, /* time-000-000-000-01(30) */ + 29, /* time-000-000-000-02(29) */ + 28, /* time-000-000-000-05(28) */ + 27, /* time-000-000-000-1(27) */ + 26, /* time-000-000-000-2(26) */ + 25, /* time-000-000-000-5(25) */ + 24, /* time-000-000-001(24) */ + 23, /* time-000-000-002(23) */ + 22, /* time-000-000-005(22) */ + 21, /* time-000-000-01(21) */ + 20, /* time-000-000-02(20) */ + 19, /* time-000-000-05(19) */ + 18, /* time-000-000-1(18) */ + 17, /* time-000-000-2(17) */ + 16, /* time-000-000-5(16) */ + 15, /* time-000-001(15) */ + 14, /* time-000-002(14) */ + 13, /* time-000-005(13) */ + 12, /* time-000-010(12) */ + 11, /* time-000-020(11) */ + 10, /* time-000-050(10) */ + 9, /* time-000-100(9) */ + 8, /* time-000-200(8) */ + 7, /* time-000-500(7) */ + 6, /* time-001-000(6) */ + 5, /* time-002-000(5) */ + 4, /* time-010-000(4) */ + 3, /* time-020-000(3) */ + 2, /* time-050-000(2) */ + 1, /* time-100-000(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TimeConfidence_specs_1 = { + asn_MAP_TimeConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TimeConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 40, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TimeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeConfidence = { + "TimeConfidence", + "TimeConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_TimeConfidence_tags_1, + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeConfidence_tags_1) + /sizeof(asn_DEF_TimeConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_TimeConfidence_constr_1, &asn_PER_type_TimeConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TimeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c b/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c new file mode 100644 index 000000000..b8736f53c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TimeIntervalConfidence.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TimeIntervalConfidence.h" + +int +TimeIntervalConfidence_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +asn_per_constraints_t asn_PER_type_TimeIntervalConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TimeIntervalConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeIntervalConfidence = { + "TimeIntervalConfidence", + "TimeIntervalConfidence", + &asn_OP_NativeInteger, + asn_DEF_TimeIntervalConfidence_tags_1, + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + asn_DEF_TimeIntervalConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeIntervalConfidence_tags_1) + /sizeof(asn_DEF_TimeIntervalConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_TimeIntervalConfidence_constr_1, &asn_PER_type_TimeIntervalConfidence_constr_1, TimeIntervalConfidence_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TimeOffset.c b/src/tmx/Asn_J2735/src/r63/TimeOffset.c new file mode 100644 index 000000000..42eb66618 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TimeOffset.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TimeOffset.h" + +int +TimeOffset_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TimeOffset_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_TimeOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TimeOffset_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeOffset = { + "TimeOffset", + "TimeOffset", + &asn_OP_NativeInteger, + asn_DEF_TimeOffset_tags_1, + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + asn_DEF_TimeOffset_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeOffset_tags_1) + /sizeof(asn_DEF_TimeOffset_tags_1[0]), /* 1 */ + { &asn_OER_type_TimeOffset_constr_1, &asn_PER_type_TimeOffset_constr_1, TimeOffset_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TimeRemaining.c b/src/tmx/Asn_J2735/src/r63/TimeRemaining.c new file mode 100644 index 000000000..1e437e6b4 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TimeRemaining.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TimeRemaining.h" + +int +TimeRemaining_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 9001)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..9001) */, + -1}; +asn_per_constraints_t asn_PER_type_TimeRemaining_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 9001 } /* (0..9001) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TimeRemaining_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TimeRemaining = { + "TimeRemaining", + "TimeRemaining", + &asn_OP_NativeInteger, + asn_DEF_TimeRemaining_tags_1, + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + asn_DEF_TimeRemaining_tags_1, /* Same as above */ + sizeof(asn_DEF_TimeRemaining_tags_1) + /sizeof(asn_DEF_TimeRemaining_tags_1[0]), /* 1 */ + { &asn_OER_type_TimeRemaining_constr_1, &asn_PER_type_TimeRemaining_constr_1, TimeRemaining_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TireData.c b/src/tmx/Asn_J2735/src/r63/TireData.c new file mode 100644 index 000000000..8c0279dda --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TireData.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TireData.h" + +asn_TYPE_member_t asn_MBR_TireData_1[] = { + { ATF_POINTER, 7, offsetof(struct TireData, location), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLocation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "location" + }, + { ATF_POINTER, 6, offsetof(struct TireData, pressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pressure" + }, + { ATF_POINTER, 5, offsetof(struct TireData, temp), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireTemp, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "temp" + }, + { ATF_POINTER, 4, offsetof(struct TireData, wheelSensorStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelSensorStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wheelSensorStatus" + }, + { ATF_POINTER, 3, offsetof(struct TireData, wheelEndElectFault), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WheelEndElectFault, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wheelEndElectFault" + }, + { ATF_POINTER, 2, offsetof(struct TireData, leakageRate), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TireLeakageRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "leakageRate" + }, + { ATF_POINTER, 1, offsetof(struct TireData, detection), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TirePressureThresholdDetection, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detection" + }, +}; +static const int asn_MAP_TireData_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 }; +static const ber_tlv_tag_t asn_DEF_TireData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TireData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* location */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* temp */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* wheelSensorStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* wheelEndElectFault */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* leakageRate */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* detection */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TireData_specs_1 = { + sizeof(struct TireData), + offsetof(struct TireData, _asn_ctx), + asn_MAP_TireData_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_TireData_oms_1, /* Optional members */ + 7, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TireData = { + "TireData", + "TireData", + &asn_OP_SEQUENCE, + asn_DEF_TireData_tags_1, + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + asn_DEF_TireData_tags_1, /* Same as above */ + sizeof(asn_DEF_TireData_tags_1) + /sizeof(asn_DEF_TireData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TireData_1, + 7, /* Elements count */ + &asn_SPC_TireData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TireDataList.c b/src/tmx/Asn_J2735/src/r63/TireDataList.c new file mode 100644 index 000000000..a19d94602 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TireDataList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TireDataList.h" + +static asn_oer_constraints_t asn_OER_type_TireDataList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_TireDataList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TireDataList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TireData, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TireDataList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TireDataList_specs_1 = { + sizeof(struct TireDataList), + offsetof(struct TireDataList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TireDataList = { + "TireDataList", + "TireDataList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TireDataList_tags_1, + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + asn_DEF_TireDataList_tags_1, /* Same as above */ + sizeof(asn_DEF_TireDataList_tags_1) + /sizeof(asn_DEF_TireDataList_tags_1[0]), /* 1 */ + { &asn_OER_type_TireDataList_constr_1, &asn_PER_type_TireDataList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_TireDataList_1, + 1, /* Single element */ + &asn_SPC_TireDataList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c b/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c new file mode 100644 index 000000000..d0be73655 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TireLeakageRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TireLeakageRate.h" + +int +TireLeakageRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 64255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +asn_per_constraints_t asn_PER_type_TireLeakageRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TireLeakageRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLeakageRate = { + "TireLeakageRate", + "TireLeakageRate", + &asn_OP_NativeInteger, + asn_DEF_TireLeakageRate_tags_1, + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + asn_DEF_TireLeakageRate_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLeakageRate_tags_1) + /sizeof(asn_DEF_TireLeakageRate_tags_1[0]), /* 1 */ + { &asn_OER_type_TireLeakageRate_constr_1, &asn_PER_type_TireLeakageRate_constr_1, TireLeakageRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TireLocation.c b/src/tmx/Asn_J2735/src/r63/TireLocation.c new file mode 100644 index 000000000..1448d7dfd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TireLocation.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TireLocation.h" + +int +TireLocation_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TireLocation_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_TireLocation_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TireLocation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireLocation = { + "TireLocation", + "TireLocation", + &asn_OP_NativeInteger, + asn_DEF_TireLocation_tags_1, + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + asn_DEF_TireLocation_tags_1, /* Same as above */ + sizeof(asn_DEF_TireLocation_tags_1) + /sizeof(asn_DEF_TireLocation_tags_1[0]), /* 1 */ + { &asn_OER_type_TireLocation_constr_1, &asn_PER_type_TireLocation_constr_1, TireLocation_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TirePressure.c b/src/tmx/Asn_J2735/src/r63/TirePressure.c new file mode 100644 index 000000000..e762384b9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TirePressure.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TirePressure.h" + +int +TirePressure_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 250)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TirePressure_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..250) */, + -1}; +asn_per_constraints_t asn_PER_type_TirePressure_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 250 } /* (0..250) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TirePressure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressure = { + "TirePressure", + "TirePressure", + &asn_OP_NativeInteger, + asn_DEF_TirePressure_tags_1, + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + asn_DEF_TirePressure_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressure_tags_1) + /sizeof(asn_DEF_TirePressure_tags_1[0]), /* 1 */ + { &asn_OER_type_TirePressure_constr_1, &asn_PER_type_TirePressure_constr_1, TirePressure_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c b/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c new file mode 100644 index 000000000..646d6150c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TirePressureThresholdDetection.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TirePressureThresholdDetection.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TirePressureThresholdDetection_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TirePressureThresholdDetection_value2enum_1[] = { + { 0, 6, "noData" }, + { 1, 12, "overPressure" }, + { 2, 17, "noWarningPressure" }, + { 3, 13, "underPressure" }, + { 4, 20, "extremeUnderPressure" }, + { 5, 9, "undefined" }, + { 6, 14, "errorIndicator" }, + { 7, 12, "notAvailable" } +}; +static const unsigned int asn_MAP_TirePressureThresholdDetection_enum2value_1[] = { + 6, /* errorIndicator(6) */ + 4, /* extremeUnderPressure(4) */ + 0, /* noData(0) */ + 2, /* noWarningPressure(2) */ + 7, /* notAvailable(7) */ + 1, /* overPressure(1) */ + 5, /* undefined(5) */ + 3 /* underPressure(3) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TirePressureThresholdDetection_specs_1 = { + asn_MAP_TirePressureThresholdDetection_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TirePressureThresholdDetection_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TirePressureThresholdDetection_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TirePressureThresholdDetection = { + "TirePressureThresholdDetection", + "TirePressureThresholdDetection", + &asn_OP_NativeEnumerated, + asn_DEF_TirePressureThresholdDetection_tags_1, + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + asn_DEF_TirePressureThresholdDetection_tags_1, /* Same as above */ + sizeof(asn_DEF_TirePressureThresholdDetection_tags_1) + /sizeof(asn_DEF_TirePressureThresholdDetection_tags_1[0]), /* 1 */ + { &asn_OER_type_TirePressureThresholdDetection_constr_1, &asn_PER_type_TirePressureThresholdDetection_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TirePressureThresholdDetection_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TireTemp.c b/src/tmx/Asn_J2735/src/r63/TireTemp.c new file mode 100644 index 000000000..128276686 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TireTemp.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TireTemp.h" + +int +TireTemp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -8736 && value <= 55519)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TireTemp_constr_1 CC_NOTUSED = { + { 4, 0 } /* (-8736..55519) */, + -1}; +asn_per_constraints_t asn_PER_type_TireTemp_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -8736, 55519 } /* (-8736..55519) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TireTemp_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TireTemp = { + "TireTemp", + "TireTemp", + &asn_OP_NativeInteger, + asn_DEF_TireTemp_tags_1, + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + asn_DEF_TireTemp_tags_1, /* Same as above */ + sizeof(asn_DEF_TireTemp_tags_1) + /sizeof(asn_DEF_TireTemp_tags_1[0]), /* 1 */ + { &asn_OER_type_TireTemp_constr_1, &asn_PER_type_TireTemp_constr_1, TireTemp_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c b/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c new file mode 100644 index 000000000..fad1f6795 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TractionControlStatus.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TractionControlStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TractionControlStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TractionControlStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 2, "on" }, + { 3, 7, "engaged" } +}; +static const unsigned int asn_MAP_TractionControlStatus_enum2value_1[] = { + 3, /* engaged(3) */ + 1, /* off(1) */ + 2, /* on(2) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TractionControlStatus_specs_1 = { + asn_MAP_TractionControlStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TractionControlStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TractionControlStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TractionControlStatus = { + "TractionControlStatus", + "TractionControlStatus", + &asn_OP_NativeEnumerated, + asn_DEF_TractionControlStatus_tags_1, + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + asn_DEF_TractionControlStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TractionControlStatus_tags_1) + /sizeof(asn_DEF_TractionControlStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_TractionControlStatus_constr_1, &asn_PER_type_TractionControlStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TractionControlStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c b/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c new file mode 100644 index 000000000..f69a96226 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlBounds.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlBounds.h" + +static int +memb_offsets_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 3)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_offsets_constr_5 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +static asn_per_constraints_t asn_PER_type_offsets_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_offsets_constr_5 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +static asn_per_constraints_t asn_PER_memb_offsets_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_offsets_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_OffsetPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_offsets_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_offsets_specs_5 = { + sizeof(struct TrafficControlBounds__offsets), + offsetof(struct TrafficControlBounds__offsets, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_offsets_5 = { + "offsets", + "offsets", + &asn_OP_SEQUENCE_OF, + asn_DEF_offsets_tags_5, + sizeof(asn_DEF_offsets_tags_5) + /sizeof(asn_DEF_offsets_tags_5[0]) - 1, /* 1 */ + asn_DEF_offsets_tags_5, /* Same as above */ + sizeof(asn_DEF_offsets_tags_5) + /sizeof(asn_DEF_offsets_tags_5[0]), /* 2 */ + { &asn_OER_type_offsets_constr_5, &asn_PER_type_offsets_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_offsets_5, + 1, /* Single element */ + &asn_SPC_offsets_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlBounds_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, oldest), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "oldest" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflon), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflon" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, reflat), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflat" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlBounds, offsets), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_offsets_5, + 0, + { &asn_OER_memb_offsets_constr_5, &asn_PER_memb_offsets_constr_5, memb_offsets_constraint_1 }, + 0, 0, /* No default value */ + "offsets" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlBounds_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlBounds_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* oldest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reflon */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reflat */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* offsets */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlBounds_specs_1 = { + sizeof(struct TrafficControlBounds), + offsetof(struct TrafficControlBounds, _asn_ctx), + asn_MAP_TrafficControlBounds_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlBounds = { + "TrafficControlBounds", + "TrafficControlBounds", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlBounds_tags_1, + sizeof(asn_DEF_TrafficControlBounds_tags_1) + /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlBounds_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlBounds_tags_1) + /sizeof(asn_DEF_TrafficControlBounds_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlBounds_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlBounds_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c b/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c new file mode 100644 index 000000000..f3e78883a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlDetail.c @@ -0,0 +1,1053 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlDetail.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static int +memb_signal_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_latperm_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size == 2)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxspeed_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minhdwy_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehmass_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehheight_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehlength_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxvehaxles_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 2 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minvehocc_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_maxplatoonsize_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_minplatoonhdwy_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + + +static asn_oer_constraints_t asn_OER_type_closed_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_closed_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_chains_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_chains_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_direction_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_direction_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_lataffinity_constr_21 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_lataffinity_constr_21 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_Member_constr_25 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_Member_constr_25 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_latperm_constr_24 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +static asn_per_constraints_t asn_PER_type_latperm_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_parking_constr_30 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_parking_constr_30 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_signal_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_signal_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_latperm_constr_24 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +static asn_per_constraints_t asn_PER_memb_latperm_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; + +static asn_oer_constraints_t asn_OER_memb_minspeed_constr_34 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minspeed_constr_34 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxspeed_constr_35 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxspeed_constr_35 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minhdwy_constr_36 CC_NOTUSED = { + { 2, 1 } /* (0..2047) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minhdwy_constr_36 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehmass_constr_37 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehmass_constr_37 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehheight_constr_38 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehheight_constr_38 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehwidth_constr_39 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehwidth_constr_39 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehlength_constr_40 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehlength_constr_40 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxvehaxles_constr_41 CC_NOTUSED = { + { 1, 1 } /* (2..15) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxvehaxles_constr_41 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 2, 15 } /* (2..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minvehocc_constr_42 CC_NOTUSED = { + { 1, 1 } /* (1..15) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minvehocc_constr_42 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { + { 1, 1 } /* (1..63) */, + -1}; +static asn_per_constraints_t asn_PER_memb_maxplatoonsize_constr_43 CC_NOTUSED = { + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (1..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { + { 2, 1 } /* (0..2047) */, + -1}; +static asn_per_constraints_t asn_PER_memb_minplatoonhdwy_constr_44 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, 0, 2047 } /* (0..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; + +static asn_oer_constraints_t asn_OER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; + asn_per_constraints_t asn_PER_type_TrafficControlDetail_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 21 } /* (0..21,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_closed_value2enum_7[] = { + { 0, 4, "open" }, + { 1, 6, "notopen" }, + { 2, 9, "taperleft" }, + { 3, 10, "taperright" }, + { 4, 8, "openleft" }, + { 5, 9, "openright" } +}; +static const unsigned int asn_MAP_closed_enum2value_7[] = { + 1, /* notopen(1) */ + 0, /* open(0) */ + 4, /* openleft(4) */ + 5, /* openright(5) */ + 2, /* taperleft(2) */ + 3 /* taperright(3) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_closed_specs_7 = { + asn_MAP_closed_value2enum_7, /* "tag" => N; sorted by tag */ + asn_MAP_closed_enum2value_7, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_closed_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_closed_7 = { + "closed", + "closed", + &asn_OP_NativeEnumerated, + asn_DEF_closed_tags_7, + sizeof(asn_DEF_closed_tags_7) + /sizeof(asn_DEF_closed_tags_7[0]) - 1, /* 1 */ + asn_DEF_closed_tags_7, /* Same as above */ + sizeof(asn_DEF_closed_tags_7) + /sizeof(asn_DEF_closed_tags_7[0]), /* 2 */ + { &asn_OER_type_closed_constr_7, &asn_PER_type_closed_constr_7, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_closed_specs_7 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_14[] = { + { 0, 2, "no" }, + { 1, 9, "permitted" }, + { 2, 8, "required" } +}; +static const unsigned int asn_MAP_chains_enum2value_14[] = { + 0, /* no(0) */ + 1, /* permitted(1) */ + 2 /* required(2) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_chains_specs_14 = { + asn_MAP_chains_value2enum_14, /* "tag" => N; sorted by tag */ + asn_MAP_chains_enum2value_14, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_chains_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_chains_14 = { + "chains", + "chains", + &asn_OP_NativeEnumerated, + asn_DEF_chains_tags_14, + sizeof(asn_DEF_chains_tags_14) + /sizeof(asn_DEF_chains_tags_14[0]) - 1, /* 1 */ + asn_DEF_chains_tags_14, /* Same as above */ + sizeof(asn_DEF_chains_tags_14) + /sizeof(asn_DEF_chains_tags_14[0]), /* 2 */ + { &asn_OER_type_chains_constr_14, &asn_PER_type_chains_constr_14, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_chains_specs_14 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_18[] = { + { 0, 7, "forward" }, + { 1, 7, "reverse" } +}; +static const unsigned int asn_MAP_direction_enum2value_18[] = { + 0, /* forward(0) */ + 1 /* reverse(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_direction_specs_18 = { + asn_MAP_direction_value2enum_18, /* "tag" => N; sorted by tag */ + asn_MAP_direction_enum2value_18, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_direction_tags_18[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_direction_18 = { + "direction", + "direction", + &asn_OP_NativeEnumerated, + asn_DEF_direction_tags_18, + sizeof(asn_DEF_direction_tags_18) + /sizeof(asn_DEF_direction_tags_18[0]) - 1, /* 1 */ + asn_DEF_direction_tags_18, /* Same as above */ + sizeof(asn_DEF_direction_tags_18) + /sizeof(asn_DEF_direction_tags_18[0]), /* 2 */ + { &asn_OER_type_direction_constr_18, &asn_PER_type_direction_constr_18, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_direction_specs_18 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_21[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_lataffinity_enum2value_21[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_21 = { + asn_MAP_lataffinity_value2enum_21, /* "tag" => N; sorted by tag */ + asn_MAP_lataffinity_enum2value_21, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_lataffinity_tags_21[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_lataffinity_21 = { + "lataffinity", + "lataffinity", + &asn_OP_NativeEnumerated, + asn_DEF_lataffinity_tags_21, + sizeof(asn_DEF_lataffinity_tags_21) + /sizeof(asn_DEF_lataffinity_tags_21[0]) - 1, /* 1 */ + asn_DEF_lataffinity_tags_21, /* Same as above */ + sizeof(asn_DEF_lataffinity_tags_21) + /sizeof(asn_DEF_lataffinity_tags_21[0]), /* 2 */ + { &asn_OER_type_lataffinity_constr_21, &asn_PER_type_lataffinity_constr_21, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_lataffinity_specs_21 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_Member_value2enum_25[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_Member_enum2value_25[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_Member_specs_25 = { + asn_MAP_Member_value2enum_25, /* "tag" => N; sorted by tag */ + asn_MAP_Member_enum2value_25, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_25 = { + "ENUMERATED", + "ENUMERATED", + &asn_OP_NativeEnumerated, + asn_DEF_Member_tags_25, + sizeof(asn_DEF_Member_tags_25) + /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ + asn_DEF_Member_tags_25, /* Same as above */ + sizeof(asn_DEF_Member_tags_25) + /sizeof(asn_DEF_Member_tags_25[0]), /* 1 */ + { &asn_OER_type_Member_constr_25, &asn_PER_type_Member_constr_25, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_Member_specs_25 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_latperm_24[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_Member_25, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_latperm_tags_24[] = { + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_latperm_specs_24 = { + sizeof(struct TrafficControlDetail__latperm), + offsetof(struct TrafficControlDetail__latperm, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_latperm_24 = { + "latperm", + "latperm", + &asn_OP_SEQUENCE_OF, + asn_DEF_latperm_tags_24, + sizeof(asn_DEF_latperm_tags_24) + /sizeof(asn_DEF_latperm_tags_24[0]) - 1, /* 1 */ + asn_DEF_latperm_tags_24, /* Same as above */ + sizeof(asn_DEF_latperm_tags_24) + /sizeof(asn_DEF_latperm_tags_24[0]), /* 2 */ + { &asn_OER_type_latperm_constr_24, &asn_PER_type_latperm_constr_24, SEQUENCE_OF_constraint }, + asn_MBR_latperm_24, + 1, /* Single element */ + &asn_SPC_latperm_specs_24 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_30[] = { + { 0, 2, "no" }, + { 1, 8, "parallel" }, + { 2, 6, "angled" } +}; +static const unsigned int asn_MAP_parking_enum2value_30[] = { + 2, /* angled(2) */ + 0, /* no(0) */ + 1 /* parallel(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_parking_specs_30 = { + asn_MAP_parking_value2enum_30, /* "tag" => N; sorted by tag */ + asn_MAP_parking_enum2value_30, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_parking_tags_30[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_parking_30 = { + "parking", + "parking", + &asn_OP_NativeEnumerated, + asn_DEF_parking_tags_30, + sizeof(asn_DEF_parking_tags_30) + /sizeof(asn_DEF_parking_tags_30[0]) - 1, /* 1 */ + asn_DEF_parking_tags_30, /* Same as above */ + sizeof(asn_DEF_parking_tags_30) + /sizeof(asn_DEF_parking_tags_30[0]), /* 2 */ + { &asn_OER_type_parking_constr_30, &asn_PER_type_parking_constr_30, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_parking_specs_30 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlDetail_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.signal), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { &asn_OER_memb_signal_constr_2, &asn_PER_memb_signal_constr_2, memb_signal_constraint_1 }, + 0, 0, /* No default value */ + "signal" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.stop), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stop" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.yield), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yield" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.notowing), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "notowing" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.restricted), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "restricted" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.closed), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_closed_7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "closed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.chains), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_chains_14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "chains" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.direction), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_direction_18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.lataffinity), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_lataffinity_21, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lataffinity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.latperm), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + 0, + &asn_DEF_latperm_24, + 0, + { &asn_OER_memb_latperm_constr_24, &asn_PER_memb_latperm_constr_24, memb_latperm_constraint_1 }, + 0, 0, /* No default value */ + "latperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_parking_30, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "parking" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minspeed), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minspeed_constr_34, &asn_PER_memb_minspeed_constr_34, memb_minspeed_constraint_1 }, + 0, 0, /* No default value */ + "minspeed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxspeed), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxspeed_constr_35, &asn_PER_memb_maxspeed_constr_35, memb_maxspeed_constraint_1 }, + 0, 0, /* No default value */ + "maxspeed" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minhdwy), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minhdwy_constr_36, &asn_PER_memb_minhdwy_constr_36, memb_minhdwy_constraint_1 }, + 0, 0, /* No default value */ + "minhdwy" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehmass), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehmass_constr_37, &asn_PER_memb_maxvehmass_constr_37, memb_maxvehmass_constraint_1 }, + 0, 0, /* No default value */ + "maxvehmass" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehheight), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehheight_constr_38, &asn_PER_memb_maxvehheight_constr_38, memb_maxvehheight_constraint_1 }, + 0, 0, /* No default value */ + "maxvehheight" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehwidth), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehwidth_constr_39, &asn_PER_memb_maxvehwidth_constr_39, memb_maxvehwidth_constraint_1 }, + 0, 0, /* No default value */ + "maxvehwidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehlength), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehlength_constr_40, &asn_PER_memb_maxvehlength_constr_40, memb_maxvehlength_constraint_1 }, + 0, 0, /* No default value */ + "maxvehlength" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxvehaxles), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxvehaxles_constr_41, &asn_PER_memb_maxvehaxles_constr_41, memb_maxvehaxles_constraint_1 }, + 0, 0, /* No default value */ + "maxvehaxles" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minvehocc), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minvehocc_constr_42, &asn_PER_memb_minvehocc_constr_42, memb_minvehocc_constraint_1 }, + 0, 0, /* No default value */ + "minvehocc" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.maxplatoonsize), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_maxplatoonsize_constr_43, &asn_PER_memb_maxplatoonsize_constr_43, memb_maxplatoonsize_constraint_1 }, + 0, 0, /* No default value */ + "maxplatoonsize" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlDetail, choice.minplatoonhdwy), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_minplatoonhdwy_constr_44, &asn_PER_memb_minplatoonhdwy_constr_44, memb_minplatoonhdwy_constraint_1 }, + 0, 0, /* No default value */ + "minplatoonhdwy" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlDetail_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* signal */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* stop */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yield */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* notowing */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* restricted */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* closed */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* chains */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* lataffinity */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* latperm */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* parking */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* minspeed */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* maxspeed */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* minhdwy */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* maxvehmass */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* maxvehheight */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* maxvehwidth */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* maxvehlength */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* maxvehaxles */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* minvehocc */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* maxplatoonsize */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* minplatoonhdwy */ +}; + asn_CHOICE_specifics_t asn_SPC_TrafficControlDetail_specs_1 = { + sizeof(struct TrafficControlDetail), + offsetof(struct TrafficControlDetail, _asn_ctx), + offsetof(struct TrafficControlDetail, present), + sizeof(((struct TrafficControlDetail *)0)->present), + asn_MAP_TrafficControlDetail_tag2el_1, + 22, /* Count of tags in the map */ + 0, 0, + 22 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlDetail = { + "TrafficControlDetail", + "TrafficControlDetail", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlDetail_constr_1, &asn_PER_type_TrafficControlDetail_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlDetail_1, + 22, /* Elements count */ + &asn_SPC_TrafficControlDetail_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c b/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c new file mode 100644 index 000000000..53f9c587f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlGeometry.c @@ -0,0 +1,372 @@ +/* + * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) + * From ASN.1 module "CARMA-CLOUD" + * found in "asn/cc_traffic_control_messages_asn1.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlGeometry.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int check_permitted_alphabet_3(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_proj_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_datum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size <= 63) + && !check_permitted_alphabet_3(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_refwidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_heading_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 3599)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_nodes_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 255)) { + /* Perform validation of the inner elements */ + return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_nodes_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_nodes_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_proj_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_proj_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_datum_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..63)) */}; +static asn_per_constraints_t asn_PER_memb_datum_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 0, 63 } /* (SIZE(0..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_refwidth_constr_8 CC_NOTUSED = { + { 2, 1 } /* (0..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_refwidth_constr_8 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, 0, 32767 } /* (0..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_heading_constr_9 CC_NOTUSED = { + { 2, 1 } /* (0..3599) */, + -1}; +static asn_per_constraints_t asn_PER_memb_heading_constr_9 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 3599 } /* (0..3599) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_nodes_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_nodes_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_nodes_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PathNode, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_nodes_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_nodes_specs_10 = { + sizeof(struct TrafficControlGeometry__nodes), + offsetof(struct TrafficControlGeometry__nodes, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_nodes_10 = { + "nodes", + "nodes", + &asn_OP_SEQUENCE_OF, + asn_DEF_nodes_tags_10, + sizeof(asn_DEF_nodes_tags_10) + /sizeof(asn_DEF_nodes_tags_10[0]) - 1, /* 1 */ + asn_DEF_nodes_tags_10, /* Same as above */ + sizeof(asn_DEF_nodes_tags_10) + /sizeof(asn_DEF_nodes_tags_10[0]), /* 2 */ + { &asn_OER_type_nodes_constr_10, &asn_PER_type_nodes_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_nodes_10, + 1, /* Single element */ + &asn_SPC_nodes_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlGeometry_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, proj), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_proj_constr_2, &asn_PER_memb_proj_constr_2, memb_proj_constraint_1 }, + 0, 0, /* No default value */ + "proj" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, datum), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_datum_constr_3, &asn_PER_memb_datum_constr_3, memb_datum_constraint_1 }, + 0, 0, /* No default value */ + "datum" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reftime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reftime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Longitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflon" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, reflat), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Latitude, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reflat" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, refelv), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "refelv" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlGeometry, refwidth), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_refwidth_constr_8, &asn_PER_memb_refwidth_constr_8, memb_refwidth_constraint_1 }, + 0, 0, /* No default value */ + "refwidth" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, heading), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_heading_constr_9, &asn_PER_memb_heading_constr_9, memb_heading_constraint_1 }, + 0, 0, /* No default value */ + "heading" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlGeometry, nodes), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_nodes_10, + 0, + { &asn_OER_memb_nodes_constr_10, &asn_PER_memb_nodes_constr_10, memb_nodes_constraint_1 }, + 0, 0, /* No default value */ + "nodes" + }, +}; +static const int asn_MAP_TrafficControlGeometry_oms_1[] = { 6 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlGeometry_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlGeometry_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* proj */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* datum */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* reftime */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* reflon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* reflat */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* refelv */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* refwidth */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* heading */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* nodes */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlGeometry_specs_1 = { + sizeof(struct TrafficControlGeometry), + offsetof(struct TrafficControlGeometry, _asn_ctx), + asn_MAP_TrafficControlGeometry_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_TrafficControlGeometry_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlGeometry = { + "TrafficControlGeometry", + "TrafficControlGeometry", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlGeometry_tags_1, + sizeof(asn_DEF_TrafficControlGeometry_tags_1) + /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlGeometry_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlGeometry_tags_1) + /sizeof(asn_DEF_TrafficControlGeometry_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlGeometry_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlGeometry_specs_1 /* Additional specs */ +}; diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c b/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c new file mode 100644 index 000000000..23100a8f0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlMessage.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlMessage.h" + +static asn_oer_constraints_t asn_OER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlMessage_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.reserved), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reserved" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessage, choice.tcmV01), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlMessageV01, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tcmV01" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcmV01 */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlMessage_specs_1 = { + sizeof(struct TrafficControlMessage), + offsetof(struct TrafficControlMessage, _asn_ctx), + offsetof(struct TrafficControlMessage, present), + sizeof(((struct TrafficControlMessage *)0)->present), + asn_MAP_TrafficControlMessage_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlMessage = { + "TrafficControlMessage", + "TrafficControlMessage", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlMessage_constr_1, &asn_PER_type_TrafficControlMessage_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlMessage_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlMessage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c b/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c new file mode 100644 index 000000000..55193d392 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlMessageV01.c @@ -0,0 +1,231 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlMessageV01.h" + +static int +memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msgtot_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_msgnum_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_msgtot_constr_4 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_msgtot_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_msgnum_constr_5 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_msgnum_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlMessageV01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqid), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reqid" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, reqseq), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, + 0, 0, /* No default value */ + "reqseq" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgtot), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_msgtot_constr_4, &asn_PER_memb_msgtot_constr_4, memb_msgtot_constraint_1 }, + 0, 0, /* No default value */ + "msgtot" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, msgnum), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_msgnum_constr_5, &asn_PER_memb_msgnum_constr_5, memb_msgnum_constraint_1 }, + 0, 0, /* No default value */ + "msgnum" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, id), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id128b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlMessageV01, updated), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "updated" + }, + { ATF_POINTER, 3, offsetof(struct TrafficControlMessageV01, package), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlPackage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "package" + }, + { ATF_POINTER, 2, offsetof(struct TrafficControlMessageV01, params), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "params" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlMessageV01, geometry), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlGeometry, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "geometry" + }, +}; +static const int asn_MAP_TrafficControlMessageV01_oms_1[] = { 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlMessageV01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlMessageV01_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 3 }, /* reqseq */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 2 }, /* msgtot */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 1 }, /* msgnum */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 5, -3, 0 }, /* updated */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, 0, 1 }, /* reqid */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 6, 0, 0 }, /* package */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 7, 0, 0 }, /* params */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 8, 0, 0 } /* geometry */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlMessageV01_specs_1 = { + sizeof(struct TrafficControlMessageV01), + offsetof(struct TrafficControlMessageV01, _asn_ctx), + asn_MAP_TrafficControlMessageV01_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_TrafficControlMessageV01_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlMessageV01 = { + "TrafficControlMessageV01", + "TrafficControlMessageV01", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlMessageV01_tags_1, + sizeof(asn_DEF_TrafficControlMessageV01_tags_1) + /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlMessageV01_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlMessageV01_tags_1) + /sizeof(asn_DEF_TrafficControlMessageV01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlMessageV01_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlMessageV01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c b/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c new file mode 100644 index 000000000..882463f7d --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlPackage.c @@ -0,0 +1,189 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlPackage.h" + +static int check_permitted_alphabet_2(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_label_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 63) + && !check_permitted_alphabet_2(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_tcids_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_tcids_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_tcids_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_label_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_label_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_oer_constraints_t asn_OER_memb_tcids_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_tcids_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_tcids_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_Id128b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_tcids_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_tcids_specs_3 = { + sizeof(struct TrafficControlPackage__tcids), + offsetof(struct TrafficControlPackage__tcids, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_tcids_3 = { + "tcids", + "tcids", + &asn_OP_SEQUENCE_OF, + asn_DEF_tcids_tags_3, + sizeof(asn_DEF_tcids_tags_3) + /sizeof(asn_DEF_tcids_tags_3[0]) - 1, /* 1 */ + asn_DEF_tcids_tags_3, /* Same as above */ + sizeof(asn_DEF_tcids_tags_3) + /sizeof(asn_DEF_tcids_tags_3[0]), /* 2 */ + { &asn_OER_type_tcids_constr_3, &asn_PER_type_tcids_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_tcids_3, + 1, /* Single element */ + &asn_SPC_tcids_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlPackage_1[] = { + { ATF_POINTER, 1, offsetof(struct TrafficControlPackage, label), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_label_constr_2, &asn_PER_memb_label_constr_2, memb_label_constraint_1 }, + 0, 0, /* No default value */ + "label" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPackage, tcids), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_tcids_3, + 0, + { &asn_OER_memb_tcids_constr_3, &asn_PER_memb_tcids_constr_3, memb_tcids_constraint_1 }, + 0, 0, /* No default value */ + "tcids" + }, +}; +static const int asn_MAP_TrafficControlPackage_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlPackage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPackage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* label */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcids */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPackage_specs_1 = { + sizeof(struct TrafficControlPackage), + offsetof(struct TrafficControlPackage, _asn_ctx), + asn_MAP_TrafficControlPackage_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TrafficControlPackage_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlPackage = { + "TrafficControlPackage", + "TrafficControlPackage", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlPackage_tags_1, + sizeof(asn_DEF_TrafficControlPackage_tags_1) + /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlPackage_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlPackage_tags_1) + /sizeof(asn_DEF_TrafficControlPackage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlPackage_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlPackage_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c b/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c new file mode 100644 index 000000000..59ec71b5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlParams.c @@ -0,0 +1,159 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlParams.h" + +static int +memb_vclasses_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 255)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_vclasses_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_vclasses_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_vclasses_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_vclasses_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_vclasses_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_TrafficControlVehClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_vclasses_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_vclasses_specs_2 = { + sizeof(struct TrafficControlParams__vclasses), + offsetof(struct TrafficControlParams__vclasses, _asn_ctx), + 1, /* XER encoding is XMLValueList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vclasses_2 = { + "vclasses", + "vclasses", + &asn_OP_SEQUENCE_OF, + asn_DEF_vclasses_tags_2, + sizeof(asn_DEF_vclasses_tags_2) + /sizeof(asn_DEF_vclasses_tags_2[0]) - 1, /* 1 */ + asn_DEF_vclasses_tags_2, /* Same as above */ + sizeof(asn_DEF_vclasses_tags_2) + /sizeof(asn_DEF_vclasses_tags_2[0]), /* 2 */ + { &asn_OER_type_vclasses_constr_2, &asn_PER_type_vclasses_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_vclasses_2, + 1, /* Single element */ + &asn_SPC_vclasses_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlParams_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, vclasses), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_vclasses_2, + 0, + { &asn_OER_memb_vclasses_constr_2, &asn_PER_memb_vclasses_constr_2, memb_vclasses_constraint_1 }, + 0, 0, /* No default value */ + "vclasses" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, schedule), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlSchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "schedule" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, regulatory), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regulatory" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlParams, detail), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TrafficControlDetail, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "detail" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlParams_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlParams_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vclasses */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* schedule */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* regulatory */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* detail */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlParams_specs_1 = { + sizeof(struct TrafficControlParams), + offsetof(struct TrafficControlParams, _asn_ctx), + asn_MAP_TrafficControlParams_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlParams = { + "TrafficControlParams", + "TrafficControlParams", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlParams_tags_1, + sizeof(asn_DEF_TrafficControlParams_tags_1) + /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlParams_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlParams_tags_1) + /sizeof(asn_DEF_TrafficControlParams_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlParams_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlParams_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c b/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c new file mode 100644 index 000000000..d42958adf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlPathPart.c @@ -0,0 +1,265 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlPathPart.h" + +static int +memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_updated_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 9223372036854775807)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_pathindex_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_points_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 120)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_points_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..120)) */}; +static asn_per_constraints_t asn_PER_type_points_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_2 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +static asn_per_constraints_t asn_PER_memb_id_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_updated_constr_3 CC_NOTUSED = { + { 8, 1 } /* (0..9223372036854775807) */, + -1}; +static asn_per_constraints_t asn_PER_memb_updated_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 63, -1, 0, 9223372036854775807 } /* (0..9223372036854775807) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_pathindex_constr_4 CC_NOTUSED = { + { 1, 1 } /* (1..127) */, + -1}; +static asn_per_constraints_t asn_PER_memb_pathindex_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 1, 127 } /* (1..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_points_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..120)) */}; +static asn_per_constraints_t asn_PER_memb_points_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 7, 7, 1, 120 } /* (SIZE(1..120)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_points_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Point, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_points_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_points_specs_5 = { + sizeof(struct TrafficControlPathPart__points), + offsetof(struct TrafficControlPathPart__points, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_points_5 = { + "points", + "points", + &asn_OP_SEQUENCE_OF, + asn_DEF_points_tags_5, + sizeof(asn_DEF_points_tags_5) + /sizeof(asn_DEF_points_tags_5[0]) - 1, /* 1 */ + asn_DEF_points_tags_5, /* Same as above */ + sizeof(asn_DEF_points_tags_5) + /sizeof(asn_DEF_points_tags_5[0]), /* 2 */ + { &asn_OER_type_points_constr_5, &asn_PER_type_points_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_points_5, + 1, /* Single element */ + &asn_SPC_points_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_TrafficControlPathPart_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { &asn_OER_memb_id_constr_2, &asn_PER_memb_id_constr_2, memb_id_constraint_1 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, updated), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_INTEGER, + 0, + { &asn_OER_memb_updated_constr_3, &asn_PER_memb_updated_constr_3, memb_updated_constraint_1 }, + 0, 0, /* No default value */ + "updated" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, pathindex), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_pathindex_constr_4, &asn_PER_memb_pathindex_constr_4, memb_pathindex_constraint_1 }, + 0, 0, /* No default value */ + "pathindex" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlPathPart, points), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_points_5, + 0, + { &asn_OER_memb_points_constr_5, &asn_PER_memb_points_constr_5, memb_points_constraint_1 }, + 0, 0, /* No default value */ + "points" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlPathPart_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlPathPart_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* updated */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathindex */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* points */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_TrafficControlPathPart_specs_1 = { + sizeof(struct TrafficControlPathPart), + offsetof(struct TrafficControlPathPart, _asn_ctx), + asn_MAP_TrafficControlPathPart_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlPathPart = { + "TrafficControlPathPart", + "TrafficControlPathPart", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlPathPart_tags_1, + sizeof(asn_DEF_TrafficControlPathPart_tags_1) + /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlPathPart_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlPathPart_tags_1) + /sizeof(asn_DEF_TrafficControlPathPart_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlPathPart_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlPathPart_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c b/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c new file mode 100644 index 000000000..0807baa01 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlRequest.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlRequest.h" + +static asn_oer_constraints_t asn_OER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlRequest_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrafficControlRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.reserved), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NULL, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reserved" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequest, choice.tcrV01), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrafficControlRequestV01, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tcrV01" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reserved */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tcrV01 */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlRequest_specs_1 = { + sizeof(struct TrafficControlRequest), + offsetof(struct TrafficControlRequest, _asn_ctx), + offsetof(struct TrafficControlRequest, present), + sizeof(((struct TrafficControlRequest *)0)->present), + asn_MAP_TrafficControlRequest_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlRequest = { + "TrafficControlRequest", + "TrafficControlRequest", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlRequest_constr_1, &asn_PER_type_TrafficControlRequest_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlRequest_1, + 2, /* Elements count */ + &asn_SPC_TrafficControlRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c b/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c new file mode 100644 index 000000000..875c387ca --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlRequestV01.c @@ -0,0 +1,225 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlRequestV01.h" + +static int +memb_reqseq_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_scale_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -3 && value <= 3)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_bounds_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_bounds_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_bounds_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_reqseq_constr_3 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +static asn_per_constraints_t asn_PER_memb_reqseq_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_scale_constr_4 CC_NOTUSED = { + { 1, 0 } /* (-3..3) */, + -1}; +static asn_per_constraints_t asn_PER_memb_scale_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, -3, 3 } /* (-3..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_bounds_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_bounds_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_bounds_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrafficControlBounds, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_bounds_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_bounds_specs_5 = { + sizeof(struct TrafficControlRequestV01__bounds), + offsetof(struct TrafficControlRequestV01__bounds, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_bounds_5 = { + "bounds", + "bounds", + &asn_OP_SEQUENCE_OF, + asn_DEF_bounds_tags_5, + sizeof(asn_DEF_bounds_tags_5) + /sizeof(asn_DEF_bounds_tags_5[0]) - 1, /* 1 */ + asn_DEF_bounds_tags_5, /* Same as above */ + sizeof(asn_DEF_bounds_tags_5) + /sizeof(asn_DEF_bounds_tags_5[0]), /* 2 */ + { &asn_OER_type_bounds_constr_5, &asn_PER_type_bounds_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_bounds_5, + 1, /* Single element */ + &asn_SPC_bounds_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlRequestV01_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqid), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Id64b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "reqid" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, reqseq), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_reqseq_constr_3, &asn_PER_memb_reqseq_constr_3, memb_reqseq_constraint_1 }, + 0, 0, /* No default value */ + "reqseq" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, scale), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_scale_constr_4, &asn_PER_memb_scale_constr_4, memb_scale_constraint_1 }, + 0, 0, /* No default value */ + "scale" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlRequestV01, bounds), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_bounds_5, + 0, + { &asn_OER_memb_bounds_constr_5, &asn_PER_memb_bounds_constr_5, memb_bounds_constraint_1 }, + 0, 0, /* No default value */ + "bounds" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlRequestV01_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlRequestV01_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* reqid */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* reqseq */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* scale */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* bounds */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlRequestV01_specs_1 = { + sizeof(struct TrafficControlRequestV01), + offsetof(struct TrafficControlRequestV01, _asn_ctx), + asn_MAP_TrafficControlRequestV01_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlRequestV01 = { + "TrafficControlRequestV01", + "TrafficControlRequestV01", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlRequestV01_tags_1, + sizeof(asn_DEF_TrafficControlRequestV01_tags_1) + /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlRequestV01_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlRequestV01_tags_1) + /sizeof(asn_DEF_TrafficControlRequestV01_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlRequestV01_1, + 4, /* Elements count */ + &asn_SPC_TrafficControlRequestV01_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c b/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c new file mode 100644 index 000000000..9080cd190 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlSchedule.c @@ -0,0 +1,171 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlSchedule.h" + +static int +memb_between_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_between_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_between_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_between_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_between_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_between_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_DailySchedule, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_between_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_between_specs_5 = { + sizeof(struct TrafficControlSchedule__between), + offsetof(struct TrafficControlSchedule__between, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_between_5 = { + "between", + "between", + &asn_OP_SEQUENCE_OF, + asn_DEF_between_tags_5, + sizeof(asn_DEF_between_tags_5) + /sizeof(asn_DEF_between_tags_5[0]) - 1, /* 1 */ + asn_DEF_between_tags_5, /* Same as above */ + sizeof(asn_DEF_between_tags_5) + /sizeof(asn_DEF_between_tags_5[0]), /* 2 */ + { &asn_OER_type_between_constr_5, &asn_PER_type_between_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_between_5, + 1, /* Single element */ + &asn_SPC_between_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlSchedule, start), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "start" + }, + { ATF_POINTER, 4, offsetof(struct TrafficControlSchedule, end), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EpochMins, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "end" + }, + { ATF_POINTER, 3, offsetof(struct TrafficControlSchedule, dow), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_DayOfWeek, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dow" + }, + { ATF_POINTER, 2, offsetof(struct TrafficControlSchedule, between), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_between_5, + 0, + { &asn_OER_memb_between_constr_5, &asn_PER_memb_between_constr_5, memb_between_constraint_1 }, + 0, 0, /* No default value */ + "between" + }, + { ATF_POINTER, 1, offsetof(struct TrafficControlSchedule, repeat), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RepeatParams, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "repeat" + }, +}; +static const int asn_MAP_TrafficControlSchedule_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_TrafficControlSchedule_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlSchedule_tag2el_1[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* start */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* end */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* dow */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* between */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 4, 0, 0 } /* repeat */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrafficControlSchedule_specs_1 = { + sizeof(struct TrafficControlSchedule), + offsetof(struct TrafficControlSchedule, _asn_ctx), + asn_MAP_TrafficControlSchedule_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_TrafficControlSchedule_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlSchedule = { + "TrafficControlSchedule", + "TrafficControlSchedule", + &asn_OP_SEQUENCE, + asn_DEF_TrafficControlSchedule_tags_1, + sizeof(asn_DEF_TrafficControlSchedule_tags_1) + /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlSchedule_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlSchedule_tags_1) + /sizeof(asn_DEF_TrafficControlSchedule_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrafficControlSchedule_1, + 5, /* Elements count */ + &asn_SPC_TrafficControlSchedule_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlType.c b/src/tmx/Asn_J2735/src/r63/TrafficControlType.c new file mode 100644 index 000000000..5a6453819 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlType.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrafficControlType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 22 } /* (0..22) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlType_value2enum_1[] = { + { 0, 6, "signal" }, + { 1, 4, "stop" }, + { 2, 5, "yield" }, + { 3, 8, "notowing" }, + { 4, 10, "restricted" }, + { 5, 6, "closed" }, + { 6, 6, "chains" }, + { 7, 9, "direction" }, + { 8, 11, "lataffinity" }, + { 9, 8, "leftperm" }, + { 10, 9, "rightperm" }, + { 11, 7, "opening" }, + { 12, 7, "closing" }, + { 13, 7, "parking" }, + { 14, 8, "minspeed" }, + { 15, 8, "maxspeed" }, + { 16, 7, "minhdwy" }, + { 17, 10, "maxvehmass" }, + { 18, 12, "maxvehheight" }, + { 19, 11, "maxvehwidth" }, + { 20, 12, "maxvehlength" }, + { 21, 8, "maxaxles" }, + { 22, 9, "minvehocc" } +}; +static const unsigned int asn_MAP_TrafficControlType_enum2value_1[] = { + 6, /* chains(6) */ + 5, /* closed(5) */ + 12, /* closing(12) */ + 7, /* direction(7) */ + 8, /* lataffinity(8) */ + 9, /* leftperm(9) */ + 21, /* maxaxles(21) */ + 15, /* maxspeed(15) */ + 18, /* maxvehheight(18) */ + 20, /* maxvehlength(20) */ + 17, /* maxvehmass(17) */ + 19, /* maxvehwidth(19) */ + 16, /* minhdwy(16) */ + 14, /* minspeed(14) */ + 22, /* minvehocc(22) */ + 3, /* notowing(3) */ + 11, /* opening(11) */ + 13, /* parking(13) */ + 4, /* restricted(4) */ + 10, /* rightperm(10) */ + 0, /* signal(0) */ + 1, /* stop(1) */ + 2 /* yield(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TrafficControlType_specs_1 = { + asn_MAP_TrafficControlType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TrafficControlType_enum2value_1, /* N => "tag"; sorted by N */ + 23, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlType = { + "TrafficControlType", + "TrafficControlType", + &asn_OP_NativeEnumerated, + asn_DEF_TrafficControlType_tags_1, + sizeof(asn_DEF_TrafficControlType_tags_1) + /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlType_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlType_tags_1) + /sizeof(asn_DEF_TrafficControlType_tags_1[0]), /* 1 */ + { &asn_OER_type_TrafficControlType_constr_1, &asn_PER_type_TrafficControlType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TrafficControlType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c b/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c new file mode 100644 index 000000000..585fd29c9 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlValue.c @@ -0,0 +1,539 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "TrafficControlValue.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_chains_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_chains_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_direction_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_direction_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_lataffinity_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_lataffinity_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_leftperm_constr_13 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_leftperm_constr_13 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_rightperm_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_rightperm_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_opening_constr_23 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_opening_constr_23 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_closing_constr_26 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_closing_constr_26 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_parking_constr_29 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_parking_constr_29 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_TrafficControlValue_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlValue_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 8 } /* (0..8) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_chains_value2enum_3[] = { + { 0, 2, "no" }, + { 1, 9, "permitted" }, + { 2, 8, "required" } +}; +static const unsigned int asn_MAP_chains_enum2value_3[] = { + 0, /* no(0) */ + 1, /* permitted(1) */ + 2 /* required(2) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_chains_specs_3 = { + asn_MAP_chains_value2enum_3, /* "tag" => N; sorted by tag */ + asn_MAP_chains_enum2value_3, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_chains_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_chains_3 = { + "chains", + "chains", + &asn_OP_NativeEnumerated, + asn_DEF_chains_tags_3, + sizeof(asn_DEF_chains_tags_3) + /sizeof(asn_DEF_chains_tags_3[0]) - 1, /* 1 */ + asn_DEF_chains_tags_3, /* Same as above */ + sizeof(asn_DEF_chains_tags_3) + /sizeof(asn_DEF_chains_tags_3[0]), /* 2 */ + { &asn_OER_type_chains_constr_3, &asn_PER_type_chains_constr_3, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_chains_specs_3 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_direction_value2enum_7[] = { + { 0, 7, "forward" }, + { 1, 7, "reverse" } +}; +static const unsigned int asn_MAP_direction_enum2value_7[] = { + 0, /* forward(0) */ + 1 /* reverse(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_direction_specs_7 = { + asn_MAP_direction_value2enum_7, /* "tag" => N; sorted by tag */ + asn_MAP_direction_enum2value_7, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_direction_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_direction_7 = { + "direction", + "direction", + &asn_OP_NativeEnumerated, + asn_DEF_direction_tags_7, + sizeof(asn_DEF_direction_tags_7) + /sizeof(asn_DEF_direction_tags_7[0]) - 1, /* 1 */ + asn_DEF_direction_tags_7, /* Same as above */ + sizeof(asn_DEF_direction_tags_7) + /sizeof(asn_DEF_direction_tags_7[0]), /* 2 */ + { &asn_OER_type_direction_constr_7, &asn_PER_type_direction_constr_7, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_direction_specs_7 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_lataffinity_value2enum_10[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_lataffinity_enum2value_10[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_lataffinity_specs_10 = { + asn_MAP_lataffinity_value2enum_10, /* "tag" => N; sorted by tag */ + asn_MAP_lataffinity_enum2value_10, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_lataffinity_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_lataffinity_10 = { + "lataffinity", + "lataffinity", + &asn_OP_NativeEnumerated, + asn_DEF_lataffinity_tags_10, + sizeof(asn_DEF_lataffinity_tags_10) + /sizeof(asn_DEF_lataffinity_tags_10[0]) - 1, /* 1 */ + asn_DEF_lataffinity_tags_10, /* Same as above */ + sizeof(asn_DEF_lataffinity_tags_10) + /sizeof(asn_DEF_lataffinity_tags_10[0]), /* 2 */ + { &asn_OER_type_lataffinity_constr_10, &asn_PER_type_lataffinity_constr_10, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_lataffinity_specs_10 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_leftperm_value2enum_13[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_leftperm_enum2value_13[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_leftperm_specs_13 = { + asn_MAP_leftperm_value2enum_13, /* "tag" => N; sorted by tag */ + asn_MAP_leftperm_enum2value_13, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_leftperm_tags_13[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_leftperm_13 = { + "leftperm", + "leftperm", + &asn_OP_NativeEnumerated, + asn_DEF_leftperm_tags_13, + sizeof(asn_DEF_leftperm_tags_13) + /sizeof(asn_DEF_leftperm_tags_13[0]) - 1, /* 1 */ + asn_DEF_leftperm_tags_13, /* Same as above */ + sizeof(asn_DEF_leftperm_tags_13) + /sizeof(asn_DEF_leftperm_tags_13[0]), /* 2 */ + { &asn_OER_type_leftperm_constr_13, &asn_PER_type_leftperm_constr_13, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_leftperm_specs_13 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_rightperm_value2enum_18[] = { + { 0, 4, "none" }, + { 1, 9, "permitted" }, + { 2, 12, "passing-only" }, + { 3, 14, "emergency-only" } +}; +static const unsigned int asn_MAP_rightperm_enum2value_18[] = { + 3, /* emergency-only(3) */ + 0, /* none(0) */ + 2, /* passing-only(2) */ + 1 /* permitted(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_rightperm_specs_18 = { + asn_MAP_rightperm_value2enum_18, /* "tag" => N; sorted by tag */ + asn_MAP_rightperm_enum2value_18, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_rightperm_tags_18[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_rightperm_18 = { + "rightperm", + "rightperm", + &asn_OP_NativeEnumerated, + asn_DEF_rightperm_tags_18, + sizeof(asn_DEF_rightperm_tags_18) + /sizeof(asn_DEF_rightperm_tags_18[0]) - 1, /* 1 */ + asn_DEF_rightperm_tags_18, /* Same as above */ + sizeof(asn_DEF_rightperm_tags_18) + /sizeof(asn_DEF_rightperm_tags_18[0]), /* 2 */ + { &asn_OER_type_rightperm_constr_18, &asn_PER_type_rightperm_constr_18, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_rightperm_specs_18 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_opening_value2enum_23[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_opening_enum2value_23[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_opening_specs_23 = { + asn_MAP_opening_value2enum_23, /* "tag" => N; sorted by tag */ + asn_MAP_opening_enum2value_23, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_opening_tags_23[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_opening_23 = { + "opening", + "opening", + &asn_OP_NativeEnumerated, + asn_DEF_opening_tags_23, + sizeof(asn_DEF_opening_tags_23) + /sizeof(asn_DEF_opening_tags_23[0]) - 1, /* 1 */ + asn_DEF_opening_tags_23, /* Same as above */ + sizeof(asn_DEF_opening_tags_23) + /sizeof(asn_DEF_opening_tags_23[0]), /* 2 */ + { &asn_OER_type_opening_constr_23, &asn_PER_type_opening_constr_23, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_opening_specs_23 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_closing_value2enum_26[] = { + { 0, 4, "left" }, + { 1, 5, "right" } +}; +static const unsigned int asn_MAP_closing_enum2value_26[] = { + 0, /* left(0) */ + 1 /* right(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_closing_specs_26 = { + asn_MAP_closing_value2enum_26, /* "tag" => N; sorted by tag */ + asn_MAP_closing_enum2value_26, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_closing_tags_26[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_closing_26 = { + "closing", + "closing", + &asn_OP_NativeEnumerated, + asn_DEF_closing_tags_26, + sizeof(asn_DEF_closing_tags_26) + /sizeof(asn_DEF_closing_tags_26[0]) - 1, /* 1 */ + asn_DEF_closing_tags_26, /* Same as above */ + sizeof(asn_DEF_closing_tags_26) + /sizeof(asn_DEF_closing_tags_26[0]), /* 2 */ + { &asn_OER_type_closing_constr_26, &asn_PER_type_closing_constr_26, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_closing_specs_26 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_parking_value2enum_29[] = { + { 0, 2, "no" }, + { 1, 8, "parallel" }, + { 2, 6, "angled" } +}; +static const unsigned int asn_MAP_parking_enum2value_29[] = { + 2, /* angled(2) */ + 0, /* no(0) */ + 1 /* parallel(1) */ +}; +static const asn_INTEGER_specifics_t asn_SPC_parking_specs_29 = { + asn_MAP_parking_value2enum_29, /* "tag" => N; sorted by tag */ + asn_MAP_parking_enum2value_29, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_parking_tags_29[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_parking_29 = { + "parking", + "parking", + &asn_OP_NativeEnumerated, + asn_DEF_parking_tags_29, + sizeof(asn_DEF_parking_tags_29) + /sizeof(asn_DEF_parking_tags_29[0]) - 1, /* 1 */ + asn_DEF_parking_tags_29, /* Same as above */ + sizeof(asn_DEF_parking_tags_29) + /sizeof(asn_DEF_parking_tags_29[0]), /* 2 */ + { &asn_OER_type_parking_constr_29, &asn_PER_type_parking_constr_29, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_parking_specs_29 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TrafficControlValue_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "value" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.chains), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_chains_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "chains" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.direction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_direction_7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.lataffinity), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_lataffinity_10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lataffinity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.leftperm), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_leftperm_13, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "leftperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.rightperm), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_rightperm_18, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rightperm" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.opening), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_opening_23, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "opening" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.closing), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_closing_26, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "closing" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrafficControlValue, choice.parking), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_parking_29, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "parking" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TrafficControlValue_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* value */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* chains */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* lataffinity */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* leftperm */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* rightperm */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* opening */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* closing */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* parking */ +}; +asn_CHOICE_specifics_t asn_SPC_TrafficControlValue_specs_1 = { + sizeof(struct TrafficControlValue), + offsetof(struct TrafficControlValue, _asn_ctx), + offsetof(struct TrafficControlValue, present), + sizeof(((struct TrafficControlValue *)0)->present), + asn_MAP_TrafficControlValue_tag2el_1, + 9, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlValue = { + "TrafficControlValue", + "TrafficControlValue", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TrafficControlValue_constr_1, &asn_PER_type_TrafficControlValue_constr_1, CHOICE_constraint }, + asn_MBR_TrafficControlValue_1, + 9, /* Elements count */ + &asn_SPC_TrafficControlValue_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c b/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c new file mode 100644 index 000000000..935c39902 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrafficControlVehClass.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrafficControlVehClass.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TrafficControlVehClass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 18 } /* (0..18,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TrafficControlVehClass_value2enum_1[] = { + { 0, 3, "any" }, + { 1, 10, "pedestrian" }, + { 2, 7, "bicycle" }, + { 3, 11, "micromobile" }, + { 4, 10, "motorcycle" }, + { 5, 13, "passenger-car" }, + { 6, 15, "light-truck-van" }, + { 7, 3, "bus" }, + { 8, 35, "two-axle-six-tire-single-unit-truck" }, + { 9, 28, "three-axle-single-unit-truck" }, + { 10, 35, "four-or-more-axle-single-unit-truck" }, + { 11, 39, "four-or-fewer-axle-single-trailer-truck" }, + { 12, 30, "five-axle-single-trailer-truck" }, + { 13, 37, "six-or-more-axle-single-trailer-truck" }, + { 14, 38, "five-or-fewer-axle-multi-trailer-truck" }, + { 15, 28, "six-axle-multi-trailer-truck" }, + { 16, 38, "seven-or-more-axle-multi-trailer-truck" }, + { 17, 4, "rail" }, + { 18, 12, "unclassified" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TrafficControlVehClass_enum2value_1[] = { + 0, /* any(0) */ + 2, /* bicycle(2) */ + 7, /* bus(7) */ + 12, /* five-axle-single-trailer-truck(12) */ + 14, /* five-or-fewer-axle-multi-trailer-truck(14) */ + 11, /* four-or-fewer-axle-single-trailer-truck(11) */ + 10, /* four-or-more-axle-single-unit-truck(10) */ + 6, /* light-truck-van(6) */ + 3, /* micromobile(3) */ + 4, /* motorcycle(4) */ + 5, /* passenger-car(5) */ + 1, /* pedestrian(1) */ + 17, /* rail(17) */ + 16, /* seven-or-more-axle-multi-trailer-truck(16) */ + 15, /* six-axle-multi-trailer-truck(15) */ + 13, /* six-or-more-axle-single-trailer-truck(13) */ + 9, /* three-axle-single-unit-truck(9) */ + 8, /* two-axle-six-tire-single-unit-truck(8) */ + 18 /* unclassified(18) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_TrafficControlVehClass_specs_1 = { + asn_MAP_TrafficControlVehClass_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TrafficControlVehClass_enum2value_1, /* N => "tag"; sorted by N */ + 19, /* Number of elements in the maps */ + 20, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TrafficControlVehClass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrafficControlVehClass = { + "TrafficControlVehClass", + "TrafficControlVehClass", + &asn_OP_NativeEnumerated, + asn_DEF_TrafficControlVehClass_tags_1, + sizeof(asn_DEF_TrafficControlVehClass_tags_1) + /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ + asn_DEF_TrafficControlVehClass_tags_1, /* Same as above */ + sizeof(asn_DEF_TrafficControlVehClass_tags_1) + /sizeof(asn_DEF_TrafficControlVehClass_tags_1[0]), /* 1 */ + { &asn_OER_type_TrafficControlVehClass_constr_1, &asn_PER_type_TrafficControlVehClass_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TrafficControlVehClass_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerData.c b/src/tmx/Asn_J2735/src/r63/TrailerData.c new file mode 100644 index 000000000..c4ce84679 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerData.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerData.h" + +asn_TYPE_member_t asn_MBR_TrailerData_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, sspRights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspRights" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, connection), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "connection" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerData, units), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerUnitDescriptionList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "units" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspRights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* connection */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* units */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerData_specs_1 = { + sizeof(struct TrailerData), + offsetof(struct TrailerData, _asn_ctx), + asn_MAP_TrailerData_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerData = { + "TrailerData", + "TrailerData", + &asn_OP_SEQUENCE, + asn_DEF_TrailerData_tags_1, + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + asn_DEF_TrailerData_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerData_tags_1) + /sizeof(asn_DEF_TrailerData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrailerData_1, + 3, /* Elements count */ + &asn_SPC_TrailerData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c new file mode 100644 index 000000000..32d966d18 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPoint.c @@ -0,0 +1,92 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerHistoryPoint.h" + +asn_TYPE_member_t asn_MBR_TrailerHistoryPoint_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, pivotAngle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Angle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pivotAngle" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, timeOffset), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TimeOffset, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerHistoryPoint, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerHistoryPoint, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerHistoryPoint, heading), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoarseHeading, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "heading" + }, +}; +static const int asn_MAP_TrailerHistoryPoint_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPoint_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerHistoryPoint_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pivotAngle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeOffset */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* heading */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerHistoryPoint_specs_1 = { + sizeof(struct TrailerHistoryPoint), + offsetof(struct TrailerHistoryPoint, _asn_ctx), + asn_MAP_TrailerHistoryPoint_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_TrailerHistoryPoint_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPoint = { + "TrailerHistoryPoint", + "TrailerHistoryPoint", + &asn_OP_SEQUENCE, + asn_DEF_TrailerHistoryPoint_tags_1, + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPoint_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPoint_tags_1) + /sizeof(asn_DEF_TrailerHistoryPoint_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrailerHistoryPoint_1, + 5, /* Elements count */ + &asn_SPC_TrailerHistoryPoint_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c new file mode 100644 index 000000000..d70e6a154 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerHistoryPointList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerHistoryPointList.h" + +static asn_oer_constraints_t asn_OER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..23)) */}; +asn_per_constraints_t asn_PER_type_TrailerHistoryPointList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 23 } /* (SIZE(1..23)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrailerHistoryPointList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerHistoryPoint, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerHistoryPointList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerHistoryPointList_specs_1 = { + sizeof(struct TrailerHistoryPointList), + offsetof(struct TrailerHistoryPointList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerHistoryPointList = { + "TrailerHistoryPointList", + "TrailerHistoryPointList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerHistoryPointList_tags_1, + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + asn_DEF_TrailerHistoryPointList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerHistoryPointList_tags_1) + /sizeof(asn_DEF_TrailerHistoryPointList_tags_1[0]), /* 1 */ + { &asn_OER_type_TrailerHistoryPointList_constr_1, &asn_PER_type_TrailerHistoryPointList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_TrailerHistoryPointList_1, + 1, /* Single element */ + &asn_SPC_TrailerHistoryPointList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerMass.c b/src/tmx/Asn_J2735/src/r63/TrailerMass.c new file mode 100644 index 000000000..f21e1bac1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerMass.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerMass.h" + +int +TrailerMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrailerMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_TrailerMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TrailerMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerMass = { + "TrailerMass", + "TrailerMass", + &asn_OP_NativeInteger, + asn_DEF_TrailerMass_tags_1, + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + asn_DEF_TrailerMass_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerMass_tags_1) + /sizeof(asn_DEF_TrailerMass_tags_1[0]), /* 1 */ + { &asn_OER_type_TrailerMass_constr_1, &asn_PER_type_TrailerMass_constr_1, TrailerMass_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c new file mode 100644 index 000000000..3165ad9dc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescription.c @@ -0,0 +1,172 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerUnitDescription.h" + +asn_TYPE_member_t asn_MBR_TrailerUnitDescription_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, isDolly), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IsDolly, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "isDolly" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, width), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, length), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "length" + }, + { ATF_POINTER, 4, offsetof(struct TrailerUnitDescription, height), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct TrailerUnitDescription, mass), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerMass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, bumperHeights), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "bumperHeights" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, centerOfGravity), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "centerOfGravity" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, frontPivot), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "frontPivot" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, rearPivot), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PivotPointDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rearPivot" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, rearWheelOffset), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Offset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rearWheelOffset" + }, + { ATF_NOFLAGS, 0, offsetof(struct TrailerUnitDescription, positionOffset), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Node_XY_24b, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "positionOffset" + }, + { ATF_POINTER, 2, offsetof(struct TrailerUnitDescription, elevationOffset), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevationOffset" + }, + { ATF_POINTER, 1, offsetof(struct TrailerUnitDescription, crumbData), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerHistoryPointList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "crumbData" + }, +}; +static const int asn_MAP_TrailerUnitDescription_oms_1[] = { 3, 4, 5, 6, 8, 9, 11, 12 }; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescription_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TrailerUnitDescription_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isDolly */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* length */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* bumperHeights */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* centerOfGravity */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* frontPivot */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* rearPivot */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* rearWheelOffset */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* positionOffset */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* elevationOffset */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* crumbData */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TrailerUnitDescription_specs_1 = { + sizeof(struct TrailerUnitDescription), + offsetof(struct TrailerUnitDescription, _asn_ctx), + asn_MAP_TrailerUnitDescription_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TrailerUnitDescription_oms_1, /* Optional members */ + 8, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescription = { + "TrailerUnitDescription", + "TrailerUnitDescription", + &asn_OP_SEQUENCE, + asn_DEF_TrailerUnitDescription_tags_1, + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescription_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescription_tags_1) + /sizeof(asn_DEF_TrailerUnitDescription_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TrailerUnitDescription_1, + 13, /* Elements count */ + &asn_SPC_TrailerUnitDescription_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c new file mode 100644 index 000000000..49a4a6995 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerUnitDescriptionList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerUnitDescriptionList.h" + +static asn_oer_constraints_t asn_OER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_TrailerUnitDescriptionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TrailerUnitDescriptionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TrailerUnitDescription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TrailerUnitDescriptionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TrailerUnitDescriptionList_specs_1 = { + sizeof(struct TrailerUnitDescriptionList), + offsetof(struct TrailerUnitDescriptionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TrailerUnitDescriptionList = { + "TrailerUnitDescriptionList", + "TrailerUnitDescriptionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TrailerUnitDescriptionList_tags_1, + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + asn_DEF_TrailerUnitDescriptionList_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1) + /sizeof(asn_DEF_TrailerUnitDescriptionList_tags_1[0]), /* 1 */ + { &asn_OER_type_TrailerUnitDescriptionList_constr_1, &asn_PER_type_TrailerUnitDescriptionList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_TrailerUnitDescriptionList_1, + 1, /* Single element */ + &asn_SPC_TrailerUnitDescriptionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TrailerWeight.c b/src/tmx/Asn_J2735/src/r63/TrailerWeight.c new file mode 100644 index 000000000..eb99726ac --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TrailerWeight.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TrailerWeight.h" + +int +TrailerWeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 64255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..64255) */, + -1}; +asn_per_constraints_t asn_PER_type_TrailerWeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 64255 } /* (0..64255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TrailerWeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TrailerWeight = { + "TrailerWeight", + "TrailerWeight", + &asn_OP_NativeInteger, + asn_DEF_TrailerWeight_tags_1, + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + asn_DEF_TrailerWeight_tags_1, /* Same as above */ + sizeof(asn_DEF_TrailerWeight_tags_1) + /sizeof(asn_DEF_TrailerWeight_tags_1[0]), /* 1 */ + { &asn_OER_type_TrailerWeight_constr_1, &asn_PER_type_TrailerWeight_constr_1, TrailerWeight_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TransitStatus.c b/src/tmx/Asn_J2735/src/r63/TransitStatus.c new file mode 100644 index 000000000..2a1b59a05 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TransitStatus.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TransitStatus.h" + +int +TransitStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TransitStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 6 /* (SIZE(6..6)) */}; +static asn_per_constraints_t asn_PER_type_TransitStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TransitStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitStatus = { + "TransitStatus", + "TransitStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitStatus_tags_1, + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitStatus_tags_1) + /sizeof(asn_DEF_TransitStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_TransitStatus_constr_1, &asn_PER_type_TransitStatus_constr_1, TransitStatus_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c b/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c new file mode 100644 index 000000000..7f3a175d3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TransitVehicleOccupancy.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TransitVehicleOccupancy.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TransitVehicleOccupancy_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TransitVehicleOccupancy_value2enum_1[] = { + { 0, 16, "occupancyUnknown" }, + { 1, 14, "occupancyEmpty" }, + { 2, 16, "occupancyVeryLow" }, + { 3, 12, "occupancyLow" }, + { 4, 12, "occupancyMed" }, + { 5, 13, "occupancyHigh" }, + { 6, 19, "occupancyNearlyFull" }, + { 7, 13, "occupancyFull" } +}; +static const unsigned int asn_MAP_TransitVehicleOccupancy_enum2value_1[] = { + 1, /* occupancyEmpty(1) */ + 7, /* occupancyFull(7) */ + 5, /* occupancyHigh(5) */ + 3, /* occupancyLow(3) */ + 4, /* occupancyMed(4) */ + 6, /* occupancyNearlyFull(6) */ + 0, /* occupancyUnknown(0) */ + 2 /* occupancyVeryLow(2) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransitVehicleOccupancy_specs_1 = { + asn_MAP_TransitVehicleOccupancy_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransitVehicleOccupancy_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransitVehicleOccupancy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleOccupancy = { + "TransitVehicleOccupancy", + "TransitVehicleOccupancy", + &asn_OP_NativeEnumerated, + asn_DEF_TransitVehicleOccupancy_tags_1, + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleOccupancy_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleOccupancy_tags_1) + /sizeof(asn_DEF_TransitVehicleOccupancy_tags_1[0]), /* 1 */ + { &asn_OER_type_TransitVehicleOccupancy_constr_1, &asn_PER_type_TransitVehicleOccupancy_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransitVehicleOccupancy_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c b/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c new file mode 100644 index 000000000..1fdfc0f8f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TransitVehicleStatus.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TransitVehicleStatus.h" + +int +TransitVehicleStatus_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_TransitVehicleStatus_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_TransitVehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransitVehicleStatus = { + "TransitVehicleStatus", + "TransitVehicleStatus", + &asn_OP_BIT_STRING, + asn_DEF_TransitVehicleStatus_tags_1, + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_TransitVehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_TransitVehicleStatus_tags_1) + /sizeof(asn_DEF_TransitVehicleStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_TransitVehicleStatus_constr_1, &asn_PER_type_TransitVehicleStatus_constr_1, TransitVehicleStatus_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c b/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c new file mode 100644 index 000000000..8ad127e29 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TransmissionAndSpeed.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TransmissionAndSpeed.h" + +asn_TYPE_member_t asn_MBR_TransmissionAndSpeed_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, transmisson), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TransmissionState, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "transmisson" + }, + { ATF_NOFLAGS, 0, offsetof(struct TransmissionAndSpeed, speed), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Velocity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speed" + }, +}; +static const ber_tlv_tag_t asn_DEF_TransmissionAndSpeed_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TransmissionAndSpeed_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transmisson */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* speed */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TransmissionAndSpeed_specs_1 = { + sizeof(struct TransmissionAndSpeed), + offsetof(struct TransmissionAndSpeed, _asn_ctx), + asn_MAP_TransmissionAndSpeed_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionAndSpeed = { + "TransmissionAndSpeed", + "TransmissionAndSpeed", + &asn_OP_SEQUENCE, + asn_DEF_TransmissionAndSpeed_tags_1, + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + asn_DEF_TransmissionAndSpeed_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionAndSpeed_tags_1) + /sizeof(asn_DEF_TransmissionAndSpeed_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TransmissionAndSpeed_1, + 2, /* Elements count */ + &asn_SPC_TransmissionAndSpeed_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TransmissionState.c b/src/tmx/Asn_J2735/src/r63/TransmissionState.c new file mode 100644 index 000000000..0111ae40b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TransmissionState.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TransmissionState.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TransmissionState_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TransmissionState_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TransmissionState_value2enum_1[] = { + { 0, 7, "neutral" }, + { 1, 4, "park" }, + { 2, 12, "forwardGears" }, + { 3, 12, "reverseGears" }, + { 4, 9, "reserved1" }, + { 5, 9, "reserved2" }, + { 6, 9, "reserved3" }, + { 7, 11, "unavailable" } +}; +static const unsigned int asn_MAP_TransmissionState_enum2value_1[] = { + 2, /* forwardGears(2) */ + 0, /* neutral(0) */ + 1, /* park(1) */ + 4, /* reserved1(4) */ + 5, /* reserved2(5) */ + 6, /* reserved3(6) */ + 3, /* reverseGears(3) */ + 7 /* unavailable(7) */ +}; +const asn_INTEGER_specifics_t asn_SPC_TransmissionState_specs_1 = { + asn_MAP_TransmissionState_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TransmissionState_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TransmissionState_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TransmissionState = { + "TransmissionState", + "TransmissionState", + &asn_OP_NativeEnumerated, + asn_DEF_TransmissionState_tags_1, + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + asn_DEF_TransmissionState_tags_1, /* Same as above */ + sizeof(asn_DEF_TransmissionState_tags_1) + /sizeof(asn_DEF_TransmissionState_tags_1[0]), /* 1 */ + { &asn_OER_type_TransmissionState_constr_1, &asn_PER_type_TransmissionState_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TransmissionState_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c b/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c new file mode 100644 index 000000000..219428e80 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TravelerDataFrame.c @@ -0,0 +1,395 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TravelerDataFrame.h" + +static int +memb_regions_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 16)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_msgId_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_msgId_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +static asn_per_constraints_t asn_PER_type_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_content_constr_16 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_content_constr_16 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 4 } /* (0..4) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regions_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +static asn_per_constraints_t asn_PER_memb_regions_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_msgId_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.furtherInfoID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FurtherInfoID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "furtherInfoID" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__msgId, choice.roadSignID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RoadSignID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roadSignID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_msgId_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* furtherInfoID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* roadSignID */ +}; +static asn_CHOICE_specifics_t asn_SPC_msgId_specs_4 = { + sizeof(struct TravelerDataFrame__msgId), + offsetof(struct TravelerDataFrame__msgId, _asn_ctx), + offsetof(struct TravelerDataFrame__msgId, present), + sizeof(((struct TravelerDataFrame__msgId *)0)->present), + asn_MAP_msgId_tag2el_4, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_msgId_4 = { + "msgId", + "msgId", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_msgId_constr_4, &asn_PER_type_msgId_constr_4, CHOICE_constraint }, + asn_MBR_msgId_4, + 2, /* Elements count */ + &asn_SPC_msgId_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_regions_12[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_GeographicalPath, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regions_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regions_specs_12 = { + sizeof(struct TravelerDataFrame__regions), + offsetof(struct TravelerDataFrame__regions, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regions_12 = { + "regions", + "regions", + &asn_OP_SEQUENCE_OF, + asn_DEF_regions_tags_12, + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]) - 1, /* 1 */ + asn_DEF_regions_tags_12, /* Same as above */ + sizeof(asn_DEF_regions_tags_12) + /sizeof(asn_DEF_regions_tags_12[0]), /* 2 */ + { &asn_OER_type_regions_constr_12, &asn_PER_type_regions_constr_12, SEQUENCE_OF_constraint }, + asn_MBR_regions_12, + 1, /* Single element */ + &asn_SPC_regions_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_content_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.advisory), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodesAndText, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "advisory" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.workZone), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WorkZone, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "workZone" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.genericSign), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GenericSignage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "genericSign" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.speedLimit), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedLimit, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedLimit" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame__content, choice.exitService), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExitService, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "exitService" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_content_tag2el_16[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* advisory */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* workZone */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* genericSign */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* speedLimit */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* exitService */ +}; +static asn_CHOICE_specifics_t asn_SPC_content_specs_16 = { + sizeof(struct TravelerDataFrame__content), + offsetof(struct TravelerDataFrame__content, _asn_ctx), + offsetof(struct TravelerDataFrame__content, present), + sizeof(((struct TravelerDataFrame__content *)0)->present), + asn_MAP_content_tag2el_16, + 5, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_content_16 = { + "content", + "content", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_content_constr_16, &asn_PER_type_content_constr_16, CHOICE_constraint }, + asn_MBR_content_16, + 5, /* Elements count */ + &asn_SPC_content_specs_16 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerDataFrame_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspTimRights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspTimRights" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, frameType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerInfoType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "frameType" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, msgId), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_msgId_4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgId" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, startYear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "startYear" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, startTime), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "startTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, duratonTime), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinutesDuration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "duratonTime" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, priority), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SignPrority, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "priority" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspLocationRights), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspLocationRights" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, regions), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regions_12, + 0, + { &asn_OER_memb_regions_constr_12, &asn_PER_memb_regions_constr_12, memb_regions_constraint_1 }, + 0, 0, /* No default value */ + "regions" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspMsgRights1), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspMsgRights1" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, sspMsgRights2), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SSPindex, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sspMsgRights2" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerDataFrame, content), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_content_16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "content" + }, + { ATF_POINTER, 1, offsetof(struct TravelerDataFrame, url), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Short, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "url" + }, +}; +static const int asn_MAP_TravelerDataFrame_oms_1[] = { 3, 12 }; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrame_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerDataFrame_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sspTimRights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frameType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msgId */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* startYear */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* startTime */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* duratonTime */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* priority */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* sspLocationRights */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* regions */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* sspMsgRights1 */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* sspMsgRights2 */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* content */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 } /* url */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerDataFrame_specs_1 = { + sizeof(struct TravelerDataFrame), + offsetof(struct TravelerDataFrame, _asn_ctx), + asn_MAP_TravelerDataFrame_tag2el_1, + 13, /* Count of tags in the map */ + asn_MAP_TravelerDataFrame_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 13, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrame = { + "TravelerDataFrame", + "TravelerDataFrame", + &asn_OP_SEQUENCE, + asn_DEF_TravelerDataFrame_tags_1, + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrame_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrame_tags_1) + /sizeof(asn_DEF_TravelerDataFrame_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TravelerDataFrame_1, + 13, /* Elements count */ + &asn_SPC_TravelerDataFrame_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c b/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c new file mode 100644 index 000000000..82defc500 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TravelerDataFrameList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TravelerDataFrameList.h" + +static asn_oer_constraints_t asn_OER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +asn_per_constraints_t asn_PER_type_TravelerDataFrameList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TravelerDataFrameList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TravelerDataFrame, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_TravelerDataFrameList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_TravelerDataFrameList_specs_1 = { + sizeof(struct TravelerDataFrameList), + offsetof(struct TravelerDataFrameList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerDataFrameList = { + "TravelerDataFrameList", + "TravelerDataFrameList", + &asn_OP_SEQUENCE_OF, + asn_DEF_TravelerDataFrameList_tags_1, + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + asn_DEF_TravelerDataFrameList_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerDataFrameList_tags_1) + /sizeof(asn_DEF_TravelerDataFrameList_tags_1[0]), /* 1 */ + { &asn_OER_type_TravelerDataFrameList_constr_1, &asn_PER_type_TravelerDataFrameList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_TravelerDataFrameList_1, + 1, /* Single element */ + &asn_SPC_TravelerDataFrameList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c b/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c new file mode 100644 index 000000000..e4a7c43df --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TravelerInfoType.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TravelerInfoType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TravelerInfoType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TravelerInfoType_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 8, "advisory" }, + { 2, 11, "roadSignage" }, + { 3, 17, "commercialSignage" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TravelerInfoType_enum2value_1[] = { + 1, /* advisory(1) */ + 3, /* commercialSignage(3) */ + 2, /* roadSignage(2) */ + 0 /* unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_TravelerInfoType_specs_1 = { + asn_MAP_TravelerInfoType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TravelerInfoType_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TravelerInfoType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInfoType = { + "TravelerInfoType", + "TravelerInfoType", + &asn_OP_NativeEnumerated, + asn_DEF_TravelerInfoType_tags_1, + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + asn_DEF_TravelerInfoType_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInfoType_tags_1) + /sizeof(asn_DEF_TravelerInfoType_tags_1[0]), /* 1 */ + { &asn_OER_type_TravelerInfoType_constr_1, &asn_PER_type_TravelerInfoType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TravelerInfoType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/TravelerInformation.c b/src/tmx/Asn_J2735/src/r63/TravelerInformation.c new file mode 100644 index 000000000..b932fe2ec --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/TravelerInformation.c @@ -0,0 +1,181 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "TravelerInformation.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_7 = { + sizeof(struct TravelerInformation__regional), + offsetof(struct TravelerInformation__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_7 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_7, + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]) - 1, /* 1 */ + asn_DEF_regional_tags_7, /* Same as above */ + sizeof(asn_DEF_regional_tags_7) + /sizeof(asn_DEF_regional_tags_7[0]), /* 2 */ + { &asn_OER_type_regional_constr_7, &asn_PER_type_regional_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_regional_7, + 1, /* Single element */ + &asn_SPC_regional_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TravelerInformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, msgCnt), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_MsgCount, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "msgCnt" + }, + { ATF_POINTER, 3, offsetof(struct TravelerInformation, timeStamp), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MinuteOfTheYear, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "timeStamp" + }, + { ATF_POINTER, 2, offsetof(struct TravelerInformation, packetID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UniqueMSGID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "packetID" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, urlB), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_URL_Base, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "urlB" + }, + { ATF_NOFLAGS, 0, offsetof(struct TravelerInformation, dataFrames), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TravelerDataFrameList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dataFrames" + }, + { ATF_POINTER, 1, offsetof(struct TravelerInformation, regional), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + 0, + &asn_DEF_regional_7, + 0, + { &asn_OER_memb_regional_constr_7, &asn_PER_memb_regional_constr_7, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_TravelerInformation_oms_1[] = { 1, 2, 3, 5 }; +static const ber_tlv_tag_t asn_DEF_TravelerInformation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TravelerInformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* msgCnt */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* timeStamp */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* packetID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* urlB */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dataFrames */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TravelerInformation_specs_1 = { + sizeof(struct TravelerInformation), + offsetof(struct TravelerInformation, _asn_ctx), + asn_MAP_TravelerInformation_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_TravelerInformation_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TravelerInformation = { + "TravelerInformation", + "TravelerInformation", + &asn_OP_SEQUENCE, + asn_DEF_TravelerInformation_tags_1, + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + asn_DEF_TravelerInformation_tags_1, /* Same as above */ + sizeof(asn_DEF_TravelerInformation_tags_1) + /sizeof(asn_DEF_TravelerInformation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TravelerInformation_1, + 6, /* Elements count */ + &asn_SPC_TravelerInformation_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/URL-Base.c b/src/tmx/Asn_J2735/src/r63/URL-Base.c new file mode 100644 index 000000000..b77caf6e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/URL-Base.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "URL-Base.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Base_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 45) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_URL_Base_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..45)) */}; +asn_per_constraints_t asn_PER_type_URL_Base_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 6, 6, 1, 45 } /* (SIZE(1..45)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_URL_Base_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Base = { + "URL-Base", + "URL-Base", + &asn_OP_IA5String, + asn_DEF_URL_Base_tags_1, + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + asn_DEF_URL_Base_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Base_tags_1) + /sizeof(asn_DEF_URL_Base_tags_1[0]), /* 1 */ + { &asn_OER_type_URL_Base_constr_1, &asn_PER_type_URL_Base_constr_1, URL_Base_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/URL-Link.c b/src/tmx/Asn_J2735/src/r63/URL-Link.c new file mode 100644 index 000000000..be37ce1e1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/URL-Link.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "URL-Link.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Link_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 255) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_URL_Link_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_URL_Link_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_URL_Link_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Link = { + "URL-Link", + "URL-Link", + &asn_OP_IA5String, + asn_DEF_URL_Link_tags_1, + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + asn_DEF_URL_Link_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Link_tags_1) + /sizeof(asn_DEF_URL_Link_tags_1[0]), /* 1 */ + { &asn_OER_type_URL_Link_constr_1, &asn_PER_type_URL_Link_constr_1, URL_Link_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/URL-Short.c b/src/tmx/Asn_J2735/src/r63/URL-Short.c new file mode 100644 index 000000000..bb91dc7e6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/URL-Short.c @@ -0,0 +1,79 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "URL-Short.h" + +static int check_permitted_alphabet_1(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +int +URL_Short_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 15) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using IA5String, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_URL_Short_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..15)) */}; +asn_per_constraints_t asn_PER_type_URL_Short_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, + 0, 0 /* No PER character map necessary */ +}; +static const ber_tlv_tag_t asn_DEF_URL_Short_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_URL_Short = { + "URL-Short", + "URL-Short", + &asn_OP_IA5String, + asn_DEF_URL_Short_tags_1, + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + asn_DEF_URL_Short_tags_1, /* Same as above */ + sizeof(asn_DEF_URL_Short_tags_1) + /sizeof(asn_DEF_URL_Short_tags_1[0]), /* 1 */ + { &asn_OER_type_URL_Short_constr_1, &asn_PER_type_URL_Short_constr_1, URL_Short_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c b/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c new file mode 100644 index 000000000..461b91aa6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/UniqueMSGID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "UniqueMSGID.h" + +int +UniqueMSGID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 9)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 9 /* (SIZE(9..9)) */}; +asn_per_constraints_t asn_PER_type_UniqueMSGID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 9, 9 } /* (SIZE(9..9)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_UniqueMSGID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UniqueMSGID = { + "UniqueMSGID", + "UniqueMSGID", + &asn_OP_OCTET_STRING, + asn_DEF_UniqueMSGID_tags_1, + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + asn_DEF_UniqueMSGID_tags_1, /* Same as above */ + sizeof(asn_DEF_UniqueMSGID_tags_1) + /sizeof(asn_DEF_UniqueMSGID_tags_1[0]), /* 1 */ + { &asn_OER_type_UniqueMSGID_constr_1, &asn_PER_type_UniqueMSGID_constr_1, UniqueMSGID_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c b/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c new file mode 100644 index 000000000..c4d96fd8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/UserSizeAndBehaviour.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "UserSizeAndBehaviour.h" + +int +UserSizeAndBehaviour_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_UserSizeAndBehaviour_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 5, 5 } /* (SIZE(5..5,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_UserSizeAndBehaviour_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_UserSizeAndBehaviour = { + "UserSizeAndBehaviour", + "UserSizeAndBehaviour", + &asn_OP_BIT_STRING, + asn_DEF_UserSizeAndBehaviour_tags_1, + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + asn_DEF_UserSizeAndBehaviour_tags_1, /* Same as above */ + sizeof(asn_DEF_UserSizeAndBehaviour_tags_1) + /sizeof(asn_DEF_UserSizeAndBehaviour_tags_1[0]), /* 1 */ + { &asn_OER_type_UserSizeAndBehaviour_constr_1, &asn_PER_type_UserSizeAndBehaviour_constr_1, UserSizeAndBehaviour_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VINstring.c b/src/tmx/Asn_J2735/src/r63/VINstring.c new file mode 100644 index 000000000..2e30fcc70 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VINstring.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VINstring.h" + +int +VINstring_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 17)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VINstring_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..17)) */}; +asn_per_constraints_t asn_PER_type_VINstring_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 17 } /* (SIZE(1..17)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VINstring_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VINstring = { + "VINstring", + "VINstring", + &asn_OP_OCTET_STRING, + asn_DEF_VINstring_tags_1, + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + asn_DEF_VINstring_tags_1, /* Same as above */ + sizeof(asn_DEF_VINstring_tags_1) + /sizeof(asn_DEF_VINstring_tags_1[0]), /* 1 */ + { &asn_OER_type_VINstring_constr_1, &asn_PER_type_VINstring_constr_1, VINstring_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VType.c b/src/tmx/Asn_J2735/src/r63/VType.c new file mode 100644 index 000000000..8cb73e011 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VType.c @@ -0,0 +1,88 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 5, 5, 0, 17 } /* (0..17) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_VType_value2enum_1[] = { + { 0, 10, "pedestrian" }, + { 1, 7, "bicycle" }, + { 2, 11, "micromobile" }, + { 3, 10, "motorcycle" }, + { 4, 13, "passenger-car" }, + { 5, 15, "light-truck-van" }, + { 6, 3, "bus" }, + { 7, 35, "two-axle-six-tire-single-unit-truck" }, + { 8, 28, "three-axle-single-unit-truck" }, + { 9, 35, "four-or-more-axle-single-unit-truck" }, + { 10, 39, "four-or-fewer-axle-single-trailer-truck" }, + { 11, 30, "five-axle-single-trailer-truck" }, + { 12, 37, "six-or-more-axle-single-trailer-truck" }, + { 13, 38, "five-or-fewer-axle-multi-trailer-truck" }, + { 14, 28, "six-axle-multi-trailer-truck" }, + { 15, 38, "seven-or-more-axle-multi-trailer-truck" }, + { 16, 4, "rail" }, + { 17, 12, "unclassified" } +}; +static const unsigned int asn_MAP_VType_enum2value_1[] = { + 1, /* bicycle(1) */ + 6, /* bus(6) */ + 11, /* five-axle-single-trailer-truck(11) */ + 13, /* five-or-fewer-axle-multi-trailer-truck(13) */ + 10, /* four-or-fewer-axle-single-trailer-truck(10) */ + 9, /* four-or-more-axle-single-unit-truck(9) */ + 5, /* light-truck-van(5) */ + 2, /* micromobile(2) */ + 3, /* motorcycle(3) */ + 4, /* passenger-car(4) */ + 0, /* pedestrian(0) */ + 16, /* rail(16) */ + 15, /* seven-or-more-axle-multi-trailer-truck(15) */ + 14, /* six-axle-multi-trailer-truck(14) */ + 12, /* six-or-more-axle-single-trailer-truck(12) */ + 8, /* three-axle-single-unit-truck(8) */ + 7, /* two-axle-six-tire-single-unit-truck(7) */ + 17 /* unclassified(17) */ +}; +const asn_INTEGER_specifics_t asn_SPC_VType_specs_1 = { + asn_MAP_VType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VType_enum2value_1, /* N => "tag"; sorted by N */ + 18, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VType = { + "VType", + "VType", + &asn_OP_NativeEnumerated, + asn_DEF_VType_tags_1, + sizeof(asn_DEF_VType_tags_1) + /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ + asn_DEF_VType_tags_1, /* Same as above */ + sizeof(asn_DEF_VType_tags_1) + /sizeof(asn_DEF_VType_tags_1[0]), /* 1 */ + { &asn_OER_type_VType_constr_1, &asn_PER_type_VType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ValidRegion.c b/src/tmx/Asn_J2735/src/r63/ValidRegion.c new file mode 100644 index 000000000..209a4b294 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ValidRegion.c @@ -0,0 +1,139 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ValidRegion.h" + +static asn_oer_constraints_t asn_OER_type_area_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_area_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_area_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.shapePointSet), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ShapePointSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "shapePointSet" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.circle), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Circle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "circle" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion__area, choice.regionPointSet), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RegionPointSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regionPointSet" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_area_tag2el_4[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* shapePointSet */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* circle */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* regionPointSet */ +}; +static asn_CHOICE_specifics_t asn_SPC_area_specs_4 = { + sizeof(struct ValidRegion__area), + offsetof(struct ValidRegion__area, _asn_ctx), + offsetof(struct ValidRegion__area, present), + sizeof(((struct ValidRegion__area *)0)->present), + asn_MAP_area_tag2el_4, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_area_4 = { + "area", + "area", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_area_constr_4, &asn_PER_type_area_constr_4, CHOICE_constraint }, + asn_MBR_area_4, + 3, /* Elements count */ + &asn_SPC_area_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ValidRegion_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, direction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_HeadingSlice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "direction" + }, + { ATF_POINTER, 1, offsetof(struct ValidRegion, extent), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Extent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "extent" + }, + { ATF_NOFLAGS, 0, offsetof(struct ValidRegion, area), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_area_4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "area" + }, +}; +static const int asn_MAP_ValidRegion_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_ValidRegion_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ValidRegion_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* direction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* extent */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* area */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ValidRegion_specs_1 = { + sizeof(struct ValidRegion), + offsetof(struct ValidRegion, _asn_ctx), + asn_MAP_ValidRegion_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ValidRegion_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ValidRegion = { + "ValidRegion", + "ValidRegion", + &asn_OP_SEQUENCE, + asn_DEF_ValidRegion_tags_1, + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + asn_DEF_ValidRegion_tags_1, /* Same as above */ + sizeof(asn_DEF_ValidRegion_tags_1) + /sizeof(asn_DEF_ValidRegion_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ValidRegion_1, + 3, /* Elements count */ + &asn_SPC_ValidRegion_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleClassification.c b/src/tmx/Asn_J2735/src/r63/VehicleClassification.c new file mode 100644 index 000000000..d622e53ef --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleClassification.c @@ -0,0 +1,211 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleClassification.h" + +static int +memb_regional_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 4)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_type_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_regional_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +static asn_per_constraints_t asn_PER_memb_regional_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_regional_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_regional_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_regional_specs_10 = { + sizeof(struct VehicleClassification__regional), + offsetof(struct VehicleClassification__regional, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_regional_10 = { + "regional", + "regional", + &asn_OP_SEQUENCE_OF, + asn_DEF_regional_tags_10, + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]) - 1, /* 1 */ + asn_DEF_regional_tags_10, /* Same as above */ + sizeof(asn_DEF_regional_tags_10) + /sizeof(asn_DEF_regional_tags_10[0]), /* 2 */ + { &asn_OER_type_regional_constr_10, &asn_PER_type_regional_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_regional_10, + 1, /* Single element */ + &asn_SPC_regional_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleClassification_1[] = { + { ATF_POINTER, 9, offsetof(struct VehicleClassification, keyType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleClass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "keyType" + }, + { ATF_POINTER, 8, offsetof(struct VehicleClassification, role), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BasicVehicleRole, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "role" + }, + { ATF_POINTER, 7, offsetof(struct VehicleClassification, iso3883), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Iso3833VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "iso3883" + }, + { ATF_POINTER, 6, offsetof(struct VehicleClassification, hpmsType), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hpmsType" + }, + { ATF_POINTER, 5, offsetof(struct VehicleClassification, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleClassification, responseEquip), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responseEquip" + }, + { ATF_POINTER, 3, offsetof(struct VehicleClassification, responderType), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "responderType" + }, + { ATF_POINTER, 2, offsetof(struct VehicleClassification, fuelType), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FuelType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fuelType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleClassification, regional), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + 0, + &asn_DEF_regional_10, + 0, + { &asn_OER_memb_regional_constr_10, &asn_PER_memb_regional_constr_10, memb_regional_constraint_1 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const int asn_MAP_VehicleClassification_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; +static const ber_tlv_tag_t asn_DEF_VehicleClassification_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleClassification_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* role */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iso3883 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hpmsType */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* responseEquip */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* responderType */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* fuelType */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* regional */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleClassification_specs_1 = { + sizeof(struct VehicleClassification), + offsetof(struct VehicleClassification, _asn_ctx), + asn_MAP_VehicleClassification_tag2el_1, + 9, /* Count of tags in the map */ + asn_MAP_VehicleClassification_oms_1, /* Optional members */ + 9, 0, /* Root/Additions */ + 9, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleClassification = { + "VehicleClassification", + "VehicleClassification", + &asn_OP_SEQUENCE, + asn_DEF_VehicleClassification_tags_1, + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + asn_DEF_VehicleClassification_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleClassification_tags_1) + /sizeof(asn_DEF_VehicleClassification_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleClassification_1, + 9, /* Elements count */ + &asn_SPC_VehicleClassification_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleData.c b/src/tmx/Asn_J2735/src/r63/VehicleData.c new file mode 100644 index 000000000..757a23b91 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleData.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleData.h" + +asn_TYPE_member_t asn_MBR_VehicleData_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, + { ATF_POINTER, 3, offsetof(struct VehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_POINTER, 2, offsetof(struct VehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_POINTER, 1, offsetof(struct VehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trailerWeight" + }, +}; +static const int asn_MAP_VehicleData_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleData_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleData_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* trailerWeight */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleData_specs_1 = { + sizeof(struct VehicleData), + offsetof(struct VehicleData, _asn_ctx), + asn_MAP_VehicleData_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleData_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleData = { + "VehicleData", + "VehicleData", + &asn_OP_SEQUENCE, + asn_DEF_VehicleData_tags_1, + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + asn_DEF_VehicleData_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleData_tags_1) + /sizeof(asn_DEF_VehicleData_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleData_1, + 4, /* Elements count */ + &asn_SPC_VehicleData_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c b/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c new file mode 100644 index 000000000..3dc5a7898 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleEventFlags.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleEventFlags.h" + +int +VehicleEventFlags_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 13)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_VehicleEventFlags_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 13, 13 } /* (SIZE(13..13,...)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleEventFlags_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleEventFlags = { + "VehicleEventFlags", + "VehicleEventFlags", + &asn_OP_BIT_STRING, + asn_DEF_VehicleEventFlags_tags_1, + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + asn_DEF_VehicleEventFlags_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleEventFlags_tags_1) + /sizeof(asn_DEF_VehicleEventFlags_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleEventFlags_constr_1, &asn_PER_type_VehicleEventFlags_constr_1, VehicleEventFlags_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c b/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c new file mode 100644 index 000000000..278e771f7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleGroupAffected.c @@ -0,0 +1,124 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "ITIS" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleGroupAffected.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VehicleGroupAffected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 34 } /* (0..34,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_VehicleGroupAffected_value2enum_1[] = { + { 9217, 12, "all-vehicles" }, + { 9218, 8, "bicycles" }, + { 9219, 11, "motorcycles" }, + { 9220, 4, "cars" }, + { 9221, 14, "light-vehicles" }, + { 9222, 23, "cars-and-light-vehicles" }, + { 9223, 18, "cars-with-trailers" }, + { 9224, 31, "cars-with-recreational-trailers" }, + { 9225, 22, "vehicles-with-trailers" }, + { 9226, 14, "heavy-vehicles" }, + { 9227, 6, "trucks" }, + { 9228, 5, "buses" }, + { 9229, 17, "articulated-buses" }, + { 9230, 12, "school-buses" }, + { 9231, 27, "vehicles-with-semi-trailers" }, + { 9232, 29, "vehicles-with-double-trailers" }, + { 9233, 21, "high-profile-vehicles" }, + { 9234, 13, "wide-vehicles" }, + { 9235, 13, "long-vehicles" }, + { 9236, 15, "hazardous-loads" }, + { 9237, 17, "exceptional-loads" }, + { 9238, 14, "abnormal-loads" }, + { 9239, 7, "convoys" }, + { 9240, 20, "maintenance-vehicles" }, + { 9241, 17, "delivery-vehicles" }, + { 9242, 42, "vehicles-with-even-numbered-license-plates" }, + { 9243, 41, "vehicles-with-odd-numbered-license-plates" }, + { 9244, 29, "vehicles-with-parking-permits" }, + { 9245, 34, "vehicles-with-catalytic-converters" }, + { 9246, 37, "vehicles-without-catalytic-converters" }, + { 9247, 20, "gas-powered-vehicles" }, + { 9248, 23, "diesel-powered-vehicles" }, + { 9249, 12, "lPG-vehicles" }, + { 9250, 16, "military-convoys" }, + { 9251, 17, "military-vehicles" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleGroupAffected_enum2value_1[] = { + 21, /* abnormal-loads(9238) */ + 0, /* all-vehicles(9217) */ + 12, /* articulated-buses(9229) */ + 1, /* bicycles(9218) */ + 11, /* buses(9228) */ + 3, /* cars(9220) */ + 5, /* cars-and-light-vehicles(9222) */ + 7, /* cars-with-recreational-trailers(9224) */ + 6, /* cars-with-trailers(9223) */ + 22, /* convoys(9239) */ + 24, /* delivery-vehicles(9241) */ + 31, /* diesel-powered-vehicles(9248) */ + 20, /* exceptional-loads(9237) */ + 30, /* gas-powered-vehicles(9247) */ + 19, /* hazardous-loads(9236) */ + 9, /* heavy-vehicles(9226) */ + 16, /* high-profile-vehicles(9233) */ + 32, /* lPG-vehicles(9249) */ + 4, /* light-vehicles(9221) */ + 18, /* long-vehicles(9235) */ + 23, /* maintenance-vehicles(9240) */ + 33, /* military-convoys(9250) */ + 34, /* military-vehicles(9251) */ + 2, /* motorcycles(9219) */ + 13, /* school-buses(9230) */ + 10, /* trucks(9227) */ + 28, /* vehicles-with-catalytic-converters(9245) */ + 15, /* vehicles-with-double-trailers(9232) */ + 25, /* vehicles-with-even-numbered-license-plates(9242) */ + 26, /* vehicles-with-odd-numbered-license-plates(9243) */ + 27, /* vehicles-with-parking-permits(9244) */ + 14, /* vehicles-with-semi-trailers(9231) */ + 8, /* vehicles-with-trailers(9225) */ + 29, /* vehicles-without-catalytic-converters(9246) */ + 17 /* wide-vehicles(9234) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleGroupAffected_specs_1 = { + asn_MAP_VehicleGroupAffected_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleGroupAffected_enum2value_1, /* N => "tag"; sorted by N */ + 35, /* Number of elements in the maps */ + 36, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleGroupAffected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleGroupAffected = { + "VehicleGroupAffected", + "VehicleGroupAffected", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleGroupAffected_tags_1, + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + asn_DEF_VehicleGroupAffected_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleGroupAffected_tags_1) + /sizeof(asn_DEF_VehicleGroupAffected_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleGroupAffected_constr_1, &asn_PER_type_VehicleGroupAffected_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleGroupAffected_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleHeight.c b/src/tmx/Asn_J2735/src/r63/VehicleHeight.c new file mode 100644 index 000000000..3d97f2572 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleHeight.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleHeight.h" + +int +VehicleHeight_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +asn_per_constraints_t asn_PER_type_VehicleHeight_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleHeight_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleHeight = { + "VehicleHeight", + "VehicleHeight", + &asn_OP_NativeInteger, + asn_DEF_VehicleHeight_tags_1, + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + asn_DEF_VehicleHeight_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleHeight_tags_1) + /sizeof(asn_DEF_VehicleHeight_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleHeight_constr_1, &asn_PER_type_VehicleHeight_constr_1, VehicleHeight_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleID.c b/src/tmx/Asn_J2735/src/r63/VehicleID.c new file mode 100644 index 000000000..b1c29db8e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleID.h" + +static asn_oer_constraints_t asn_OER_type_VehicleID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VehicleID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_VehicleID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.entityID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TemporaryID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "entityID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleID, choice.stationID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stationID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* entityID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* stationID */ +}; +asn_CHOICE_specifics_t asn_SPC_VehicleID_specs_1 = { + sizeof(struct VehicleID), + offsetof(struct VehicleID, _asn_ctx), + offsetof(struct VehicleID, present), + sizeof(((struct VehicleID *)0)->present), + asn_MAP_VehicleID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleID = { + "VehicleID", + "VehicleID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_VehicleID_constr_1, &asn_PER_type_VehicleID_constr_1, CHOICE_constraint }, + asn_MBR_VehicleID_1, + 2, /* Elements count */ + &asn_SPC_VehicleID_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleIdent.c b/src/tmx/Asn_J2735/src/r63/VehicleIdent.c new file mode 100644 index 000000000..7bbfd9808 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleIdent.c @@ -0,0 +1,217 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleIdent.h" + +static int check_permitted_alphabet_4(const void *sptr) { + /* The underlying type is IA5String */ + const IA5String_t *st = (const IA5String_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!(cv <= 127)) return -1; + } + return 0; +} + +static int +memb_ownerCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const IA5String_t *st = (const IA5String_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 32) + && !check_permitted_alphabet_4(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_vehicleClass_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_vehicleClass_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ownerCode_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +static asn_per_constraints_t asn_PER_memb_ownerCode_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER character map necessary */ +}; +static asn_TYPE_member_t asn_MBR_vehicleClass_7[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.vGroup), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ResponderGroupAffected, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rGroup" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleIdent__vehicleClass, choice.rEquip), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IncidentResponseEquipment, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rEquip" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleClass_tag2el_7[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vGroup */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rEquip */ +}; +static asn_CHOICE_specifics_t asn_SPC_vehicleClass_specs_7 = { + sizeof(struct VehicleIdent__vehicleClass), + offsetof(struct VehicleIdent__vehicleClass, _asn_ctx), + offsetof(struct VehicleIdent__vehicleClass, present), + sizeof(((struct VehicleIdent__vehicleClass *)0)->present), + asn_MAP_vehicleClass_tag2el_7, + 3, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleClass_7 = { + "vehicleClass", + "vehicleClass", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_vehicleClass_constr_7, &asn_PER_type_vehicleClass_constr_7, CHOICE_constraint }, + asn_MBR_vehicleClass_7, + 3, /* Elements count */ + &asn_SPC_vehicleClass_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleIdent_1[] = { + { ATF_POINTER, 6, offsetof(struct VehicleIdent, name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DescriptiveName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "name" + }, + { ATF_POINTER, 5, offsetof(struct VehicleIdent, vin), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VINstring, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vin" + }, + { ATF_POINTER, 4, offsetof(struct VehicleIdent, ownerCode), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_IA5String, + 0, + { &asn_OER_memb_ownerCode_constr_4, &asn_PER_memb_ownerCode_constr_4, memb_ownerCode_constraint_1 }, + 0, 0, /* No default value */ + "ownerCode" + }, + { ATF_POINTER, 3, offsetof(struct VehicleIdent, id), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_VehicleID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_POINTER, 2, offsetof(struct VehicleIdent, vehicleType), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleType" + }, + { ATF_POINTER, 1, offsetof(struct VehicleIdent, vehicleClass), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_vehicleClass_7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleClass" + }, +}; +static const int asn_MAP_VehicleIdent_oms_1[] = { 0, 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_VehicleIdent_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleIdent_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* name */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vin */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ownerCode */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* vehicleType */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* vehicleClass */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleIdent_specs_1 = { + sizeof(struct VehicleIdent), + offsetof(struct VehicleIdent, _asn_ctx), + asn_MAP_VehicleIdent_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_VehicleIdent_oms_1, /* Optional members */ + 6, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleIdent = { + "VehicleIdent", + "VehicleIdent", + &asn_OP_SEQUENCE, + asn_DEF_VehicleIdent_tags_1, + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + asn_DEF_VehicleIdent_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleIdent_tags_1) + /sizeof(asn_DEF_VehicleIdent_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleIdent_1, + 6, /* Elements count */ + &asn_SPC_VehicleIdent_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleLength.c b/src/tmx/Asn_J2735/src/r63/VehicleLength.c new file mode 100644 index 000000000..e57503d11 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleLength.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleLength.h" + +int +VehicleLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +asn_per_constraints_t asn_PER_type_VehicleLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleLength = { + "VehicleLength", + "VehicleLength", + &asn_OP_NativeInteger, + asn_DEF_VehicleLength_tags_1, + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + asn_DEF_VehicleLength_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleLength_tags_1) + /sizeof(asn_DEF_VehicleLength_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleLength_constr_1, &asn_PER_type_VehicleLength_constr_1, VehicleLength_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleMass.c b/src/tmx/Asn_J2735/src/r63/VehicleMass.c new file mode 100644 index 000000000..363f49d48 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleMass.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleMass.h" + +int +VehicleMass_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleMass_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..255) */, + -1}; +asn_per_constraints_t asn_PER_type_VehicleMass_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleMass_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleMass = { + "VehicleMass", + "VehicleMass", + &asn_OP_NativeInteger, + asn_DEF_VehicleMass_tags_1, + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + asn_DEF_VehicleMass_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleMass_tags_1) + /sizeof(asn_DEF_VehicleMass_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleMass_constr_1, &asn_PER_type_VehicleMass_constr_1, VehicleMass_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c b/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c new file mode 100644 index 000000000..b163323e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleSafetyExtensions.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted` + */ + +#include "VehicleSafetyExtensions.h" + +asn_TYPE_member_t asn_MBR_VehicleSafetyExtensions_1[] = { + { ATF_POINTER, 4, offsetof(struct VehicleSafetyExtensions, events), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleEventFlags, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "events" + }, + { ATF_POINTER, 3, offsetof(struct VehicleSafetyExtensions, pathHistory), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathHistory, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathHistory" + }, + { ATF_POINTER, 2, offsetof(struct VehicleSafetyExtensions, pathPrediction), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PathPrediction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pathPrediction" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSafetyExtensions, lights), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lights" + }, +}; +static const int asn_MAP_VehicleSafetyExtensions_oms_1[] = { 0, 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_VehicleSafetyExtensions_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSafetyExtensions_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* events */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pathHistory */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pathPrediction */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* lights */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSafetyExtensions_specs_1 = { + sizeof(struct VehicleSafetyExtensions), + offsetof(struct VehicleSafetyExtensions, _asn_ctx), + asn_MAP_VehicleSafetyExtensions_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_VehicleSafetyExtensions_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSafetyExtensions = { + "VehicleSafetyExtensions", + "VehicleSafetyExtensions", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSafetyExtensions_tags_1, + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + asn_DEF_VehicleSafetyExtensions_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSafetyExtensions_tags_1) + /sizeof(asn_DEF_VehicleSafetyExtensions_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleSafetyExtensions_1, + 4, /* Elements count */ + &asn_SPC_VehicleSafetyExtensions_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSize.c b/src/tmx/Asn_J2735/src/r63/VehicleSize.c new file mode 100644 index 000000000..a18ed6eba --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleSize.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleSize.h" + +asn_TYPE_member_t asn_MBR_VehicleSize_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, width), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleWidth, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "width" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSize, length), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleLength, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "length" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleSize_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSize_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* width */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* length */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSize_specs_1 = { + sizeof(struct VehicleSize), + offsetof(struct VehicleSize, _asn_ctx), + asn_MAP_VehicleSize_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSize = { + "VehicleSize", + "VehicleSize", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSize_tags_1, + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + asn_DEF_VehicleSize_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSize_tags_1) + /sizeof(asn_DEF_VehicleSize_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleSize_1, + 2, /* Elements count */ + &asn_SPC_VehicleSize_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c b/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c new file mode 100644 index 000000000..1e1b5b372 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleSizeConfidence.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "VehicleSizeConfidence.h" + +asn_TYPE_member_t asn_MBR_VehicleSizeConfidence_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleWidthConfidence), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleWidthConfidence" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleSizeConfidence, vehicleLengthConfidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleLengthConfidence" + }, + { ATF_POINTER, 1, offsetof(struct VehicleSizeConfidence, vehicleHeightConfidence), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SizeValueConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleHeightConfidence" + }, +}; +static const int asn_MAP_VehicleSizeConfidence_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_VehicleSizeConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleSizeConfidence_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* vehicleWidthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vehicleLengthConfidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* vehicleHeightConfidence */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleSizeConfidence_specs_1 = { + sizeof(struct VehicleSizeConfidence), + offsetof(struct VehicleSizeConfidence, _asn_ctx), + asn_MAP_VehicleSizeConfidence_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_VehicleSizeConfidence_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleSizeConfidence = { + "VehicleSizeConfidence", + "VehicleSizeConfidence", + &asn_OP_SEQUENCE, + asn_DEF_VehicleSizeConfidence_tags_1, + sizeof(asn_DEF_VehicleSizeConfidence_tags_1) + /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ + asn_DEF_VehicleSizeConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleSizeConfidence_tags_1) + /sizeof(asn_DEF_VehicleSizeConfidence_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleSizeConfidence_1, + 3, /* Elements count */ + &asn_SPC_VehicleSizeConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatus.c b/src/tmx/Asn_J2735/src/r63/VehicleStatus.c new file mode 100644 index 000000000..91a761b8e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleStatus.c @@ -0,0 +1,653 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleStatus.h" + +static asn_TYPE_member_t asn_MBR_steering_12[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__steering, angle), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "angle" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__steering, confidence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidence" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__steering, rate), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SteeringWheelAngleRateOfChange, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rate" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__steering, wheels), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DrivingWheelAngle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wheels" + }, +}; +static const int asn_MAP_steering_oms_12[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_steering_tags_12[] = { + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_steering_tag2el_12[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* angle */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* confidence */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rate */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* wheels */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_steering_specs_12 = { + sizeof(struct VehicleStatus__steering), + offsetof(struct VehicleStatus__steering, _asn_ctx), + asn_MAP_steering_tag2el_12, + 4, /* Count of tags in the map */ + asn_MAP_steering_oms_12, /* Optional members */ + 3, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_steering_12 = { + "steering", + "steering", + &asn_OP_SEQUENCE, + asn_DEF_steering_tags_12, + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]) - 1, /* 1 */ + asn_DEF_steering_tags_12, /* Same as above */ + sizeof(asn_DEF_steering_tags_12) + /sizeof(asn_DEF_steering_tags_12[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_steering_12, + 4, /* Elements count */ + &asn_SPC_steering_specs_12 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_accelSets_17[] = { + { ATF_POINTER, 5, offsetof(struct VehicleStatus__accelSets, accel4way), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationSet4Way, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accel4way" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__accelSets, vertAccelThres), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VerticalAccelerationThreshold, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vertAccelThres" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__accelSets, yawRateCon), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_YawRateConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "yawRateCon" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__accelSets, hozAccelCon), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AccelerationConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hozAccelCon" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__accelSets, confidenceSet), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ConfidenceSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "confidenceSet" + }, +}; +static const int asn_MAP_accelSets_oms_17[] = { 0, 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_accelSets_tags_17[] = { + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_accelSets_tag2el_17[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* accel4way */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* vertAccelThres */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* yawRateCon */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* hozAccelCon */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* confidenceSet */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_accelSets_specs_17 = { + sizeof(struct VehicleStatus__accelSets), + offsetof(struct VehicleStatus__accelSets, _asn_ctx), + asn_MAP_accelSets_tag2el_17, + 5, /* Count of tags in the map */ + asn_MAP_accelSets_oms_17, /* Optional members */ + 5, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_accelSets_17 = { + "accelSets", + "accelSets", + &asn_OP_SEQUENCE, + asn_DEF_accelSets_tags_17, + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]) - 1, /* 1 */ + asn_DEF_accelSets_tags_17, /* Same as above */ + sizeof(asn_DEF_accelSets_tags_17) + /sizeof(asn_DEF_accelSets_tags_17[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_accelSets_17, + 5, /* Elements count */ + &asn_SPC_accelSets_specs_17 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_object_23[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDist), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ObstacleDistance, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obDist" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, obDirect), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Angle, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "obDirect" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__object, dateTime), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DDateTime, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dateTime" + }, +}; +static const ber_tlv_tag_t asn_DEF_object_tags_23[] = { + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_object_tag2el_23[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* obDist */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* obDirect */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* dateTime */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_object_specs_23 = { + sizeof(struct VehicleStatus__object), + offsetof(struct VehicleStatus__object, _asn_ctx), + asn_MAP_object_tag2el_23, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_object_23 = { + "object", + "object", + &asn_OP_SEQUENCE, + asn_DEF_object_tags_23, + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]) - 1, /* 1 */ + asn_DEF_object_tags_23, /* Same as above */ + sizeof(asn_DEF_object_tags_23) + /sizeof(asn_DEF_object_tags_23[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_object_23, + 3, /* Elements count */ + &asn_SPC_object_specs_23 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_vehicleData_31[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, height), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleHeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "height" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, bumpers), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BumperHeights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "bumpers" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, mass), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleMass, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mass" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, trailerWeight), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TrailerWeight, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "trailerWeight" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__vehicleData, type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "type" + }, +}; +static const ber_tlv_tag_t asn_DEF_vehicleData_tags_31[] = { + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_vehicleData_tag2el_31[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* height */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* bumpers */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mass */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* trailerWeight */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* type */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_vehicleData_specs_31 = { + sizeof(struct VehicleStatus__vehicleData), + offsetof(struct VehicleStatus__vehicleData, _asn_ctx), + asn_MAP_vehicleData_tag2el_31, + 5, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_vehicleData_31 = { + "vehicleData", + "vehicleData", + &asn_OP_SEQUENCE, + asn_DEF_vehicleData_tags_31, + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]) - 1, /* 1 */ + asn_DEF_vehicleData_tags_31, /* Same as above */ + sizeof(asn_DEF_vehicleData_tags_31) + /sizeof(asn_DEF_vehicleData_tags_31[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_vehicleData_31, + 5, /* Elements count */ + &asn_SPC_vehicleData_specs_31 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_weatherReport_39[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatus__weatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus__weatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus__weatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus__weatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus__weatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "friction" + }, +}; +static const int asn_MAP_weatherReport_oms_39[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_weatherReport_tags_39[] = { + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_weatherReport_tag2el_39[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* friction */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_weatherReport_specs_39 = { + sizeof(struct VehicleStatus__weatherReport), + offsetof(struct VehicleStatus__weatherReport, _asn_ctx), + asn_MAP_weatherReport_tag2el_39, + 5, /* Count of tags in the map */ + asn_MAP_weatherReport_oms_39, /* Optional members */ + 4, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_weatherReport_39 = { + "weatherReport", + "weatherReport", + &asn_OP_SEQUENCE, + asn_DEF_weatherReport_tags_39, + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]) - 1, /* 1 */ + asn_DEF_weatherReport_tags_39, /* Same as above */ + sizeof(asn_DEF_weatherReport_tags_39) + /sizeof(asn_DEF_weatherReport_tags_39[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_weatherReport_39, + 5, /* Elements count */ + &asn_SPC_weatherReport_specs_39 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_VehicleStatus_1[] = { + { ATF_POINTER, 22, offsetof(struct VehicleStatus, lights), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ExteriorLights, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lights" + }, + { ATF_POINTER, 21, offsetof(struct VehicleStatus, lightBar), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LightbarInUse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lightBar" + }, + { ATF_POINTER, 20, offsetof(struct VehicleStatus, wipers), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "wipers" + }, + { ATF_POINTER, 19, offsetof(struct VehicleStatus, brakeStatus), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeSystemStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "brakeStatus" + }, + { ATF_POINTER, 18, offsetof(struct VehicleStatus, brakePressure), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BrakeAppliedPressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "brakePressure" + }, + { ATF_POINTER, 17, offsetof(struct VehicleStatus, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roadFriction" + }, + { ATF_POINTER, 16, offsetof(struct VehicleStatus, sunData), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SunSensor, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sunData" + }, + { ATF_POINTER, 15, offsetof(struct VehicleStatus, rainData), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RainSensor, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rainData" + }, + { ATF_POINTER, 14, offsetof(struct VehicleStatus, airTemp), + (ASN_TAG_CLASS_CONTEXT | (8 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 13, offsetof(struct VehicleStatus, airPres), + (ASN_TAG_CLASS_CONTEXT | (9 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "airPres" + }, + { ATF_POINTER, 12, offsetof(struct VehicleStatus, steering), + (ASN_TAG_CLASS_CONTEXT | (10 << 2)), + 0, + &asn_DEF_steering_12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "steering" + }, + { ATF_POINTER, 11, offsetof(struct VehicleStatus, accelSets), + (ASN_TAG_CLASS_CONTEXT | (11 << 2)), + 0, + &asn_DEF_accelSets_17, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "accelSets" + }, + { ATF_POINTER, 10, offsetof(struct VehicleStatus, object), + (ASN_TAG_CLASS_CONTEXT | (12 << 2)), + 0, + &asn_DEF_object_23, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "object" + }, + { ATF_POINTER, 9, offsetof(struct VehicleStatus, fullPos), + (ASN_TAG_CLASS_CONTEXT | (13 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FullPositionVector, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fullPos" + }, + { ATF_POINTER, 8, offsetof(struct VehicleStatus, throttlePos), + (ASN_TAG_CLASS_CONTEXT | (14 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ThrottlePosition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "throttlePos" + }, + { ATF_POINTER, 7, offsetof(struct VehicleStatus, speedHeadC), + (ASN_TAG_CLASS_CONTEXT | (15 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedandHeadingandThrottleConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedHeadC" + }, + { ATF_POINTER, 6, offsetof(struct VehicleStatus, speedC), + (ASN_TAG_CLASS_CONTEXT | (16 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SpeedConfidence, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "speedC" + }, + { ATF_POINTER, 5, offsetof(struct VehicleStatus, vehicleData), + (ASN_TAG_CLASS_CONTEXT | (17 << 2)), + 0, + &asn_DEF_vehicleData_31, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleData" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatus, vehicleIdent), + (ASN_TAG_CLASS_CONTEXT | (18 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleIdent, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "vehicleIdent" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatus, j1939data), + (ASN_TAG_CLASS_CONTEXT | (19 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_J1939data, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "j1939data" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatus, weatherReport), + (ASN_TAG_CLASS_CONTEXT | (20 << 2)), + 0, + &asn_DEF_weatherReport_39, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "weatherReport" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatus, gnssStatus), + (ASN_TAG_CLASS_CONTEXT | (21 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNSSstatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gnssStatus" + }, +}; +static const int asn_MAP_VehicleStatus_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatus_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lights */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lightBar */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* wipers */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* brakeStatus */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* brakePressure */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* roadFriction */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sunData */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* rainData */ + { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* airPres */ + { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* steering */ + { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* accelSets */ + { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* object */ + { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* fullPos */ + { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* throttlePos */ + { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* speedHeadC */ + { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* speedC */ + { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* vehicleData */ + { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* vehicleIdent */ + { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* j1939data */ + { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* weatherReport */ + { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 } /* gnssStatus */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatus_specs_1 = { + sizeof(struct VehicleStatus), + offsetof(struct VehicleStatus, _asn_ctx), + asn_MAP_VehicleStatus_tag2el_1, + 22, /* Count of tags in the map */ + asn_MAP_VehicleStatus_oms_1, /* Optional members */ + 22, 0, /* Root/Additions */ + 22, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatus = { + "VehicleStatus", + "VehicleStatus", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatus_tags_1, + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatus_tags_1) + /sizeof(asn_DEF_VehicleStatus_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleStatus_1, + 22, /* Elements count */ + &asn_SPC_VehicleStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c new file mode 100644 index 000000000..4cc84a1b1 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleStatusDeviceTypeTag.c @@ -0,0 +1,112 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleStatusDeviceTypeTag.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VehicleStatusDeviceTypeTag_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 28 } /* (0..28,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1[] = { + { 0, 7, "unknown" }, + { 1, 6, "lights" }, + { 2, 6, "wipers" }, + { 3, 6, "brakes" }, + { 4, 4, "stab" }, + { 5, 4, "trac" }, + { 6, 3, "abs" }, + { 7, 4, "sunS" }, + { 8, 5, "rainS" }, + { 9, 7, "airTemp" }, + { 10, 8, "steering" }, + { 11, 14, "vertAccelThres" }, + { 12, 9, "vertAccel" }, + { 13, 12, "hozAccelLong" }, + { 14, 11, "hozAccelLat" }, + { 15, 11, "hozAccelCon" }, + { 16, 9, "accel4way" }, + { 17, 13, "confidenceSet" }, + { 18, 6, "obDist" }, + { 19, 8, "obDirect" }, + { 20, 3, "yaw" }, + { 21, 10, "yawRateCon" }, + { 22, 8, "dateTime" }, + { 23, 7, "fullPos" }, + { 24, 10, "position2D" }, + { 25, 10, "position3D" }, + { 26, 7, "vehicle" }, + { 27, 10, "speedHeadC" }, + { 28, 6, "speedC" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1[] = { + 6, /* abs(6) */ + 16, /* accel4way(16) */ + 9, /* airTemp(9) */ + 3, /* brakes(3) */ + 17, /* confidenceSet(17) */ + 22, /* dateTime(22) */ + 23, /* fullPos(23) */ + 15, /* hozAccelCon(15) */ + 14, /* hozAccelLat(14) */ + 13, /* hozAccelLong(13) */ + 1, /* lights(1) */ + 19, /* obDirect(19) */ + 18, /* obDist(18) */ + 24, /* position2D(24) */ + 25, /* position3D(25) */ + 8, /* rainS(8) */ + 28, /* speedC(28) */ + 27, /* speedHeadC(27) */ + 4, /* stab(4) */ + 10, /* steering(10) */ + 7, /* sunS(7) */ + 5, /* trac(5) */ + 0, /* unknown(0) */ + 26, /* vehicle(26) */ + 12, /* vertAccel(12) */ + 11, /* vertAccelThres(11) */ + 2, /* wipers(2) */ + 20, /* yaw(20) */ + 21 /* yawRateCon(21) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleStatusDeviceTypeTag_specs_1 = { + asn_MAP_VehicleStatusDeviceTypeTag_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleStatusDeviceTypeTag_enum2value_1, /* N => "tag"; sorted by N */ + 29, /* Number of elements in the maps */ + 30, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusDeviceTypeTag_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusDeviceTypeTag = { + "VehicleStatusDeviceTypeTag", + "VehicleStatusDeviceTypeTag", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusDeviceTypeTag_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1) + /sizeof(asn_DEF_VehicleStatusDeviceTypeTag_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleStatusDeviceTypeTag_constr_1, &asn_PER_type_VehicleStatusDeviceTypeTag_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleStatusDeviceTypeTag_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c new file mode 100644 index 000000000..1a4636352 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequest.c @@ -0,0 +1,191 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleStatusRequest.h" + +static int +memb_subType_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnLessThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_sendOnMoreThenValue_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_subType_constr_3 CC_NOTUSED = { + { 1, 1 } /* (1..15) */, + -1}; +static asn_per_constraints_t asn_PER_memb_subType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 1, 15 } /* (1..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_sendOnLessThenValue_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +static asn_per_constraints_t asn_PER_memb_sendOnMoreThenValue_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_VehicleStatusRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleStatusRequest, dataType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VehicleStatusDeviceTypeTag, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "dataType" + }, + { ATF_POINTER, 4, offsetof(struct VehicleStatusRequest, subType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_subType_constr_3, &asn_PER_memb_subType_constr_3, memb_subType_constraint_1 }, + 0, 0, /* No default value */ + "subType" + }, + { ATF_POINTER, 3, offsetof(struct VehicleStatusRequest, sendOnLessThenValue), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_sendOnLessThenValue_constr_4, &asn_PER_memb_sendOnLessThenValue_constr_4, memb_sendOnLessThenValue_constraint_1 }, + 0, 0, /* No default value */ + "sendOnLessThenValue" + }, + { ATF_POINTER, 2, offsetof(struct VehicleStatusRequest, sendOnMoreThenValue), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_sendOnMoreThenValue_constr_5, &asn_PER_memb_sendOnMoreThenValue_constr_5, memb_sendOnMoreThenValue_constraint_1 }, + 0, 0, /* No default value */ + "sendOnMoreThenValue" + }, + { ATF_POINTER, 1, offsetof(struct VehicleStatusRequest, sendAll), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "sendAll" + }, +}; +static const int asn_MAP_VehicleStatusRequest_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleStatusRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dataType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* subType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sendOnLessThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sendOnMoreThenValue */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* sendAll */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleStatusRequest_specs_1 = { + sizeof(struct VehicleStatusRequest), + offsetof(struct VehicleStatusRequest, _asn_ctx), + asn_MAP_VehicleStatusRequest_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_VehicleStatusRequest_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequest = { + "VehicleStatusRequest", + "VehicleStatusRequest", + &asn_OP_SEQUENCE, + asn_DEF_VehicleStatusRequest_tags_1, + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequest_tags_1) + /sizeof(asn_DEF_VehicleStatusRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleStatusRequest_1, + 5, /* Elements count */ + &asn_SPC_VehicleStatusRequest_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c new file mode 100644 index 000000000..63842b0be --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleStatusRequestList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleStatusRequestList.h" + +static asn_oer_constraints_t asn_OER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_VehicleStatusRequestList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_VehicleStatusRequestList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleStatusRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleStatusRequestList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleStatusRequestList_specs_1 = { + sizeof(struct VehicleStatusRequestList), + offsetof(struct VehicleStatusRequestList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleStatusRequestList = { + "VehicleStatusRequestList", + "VehicleStatusRequestList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleStatusRequestList_tags_1, + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + asn_DEF_VehicleStatusRequestList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleStatusRequestList_tags_1) + /sizeof(asn_DEF_VehicleStatusRequestList_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleStatusRequestList_constr_1, &asn_PER_type_VehicleStatusRequestList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_VehicleStatusRequestList_1, + 1, /* Single element */ + &asn_SPC_VehicleStatusRequestList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c b/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c new file mode 100644 index 000000000..6be585dd2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleToLanePosition.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleToLanePosition.h" + +asn_TYPE_member_t asn_MBR_VehicleToLanePosition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, stationID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_StationID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stationID" + }, + { ATF_NOFLAGS, 0, offsetof(struct VehicleToLanePosition, laneID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LaneID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "laneID" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePosition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_VehicleToLanePosition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stationID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* laneID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_VehicleToLanePosition_specs_1 = { + sizeof(struct VehicleToLanePosition), + offsetof(struct VehicleToLanePosition, _asn_ctx), + asn_MAP_VehicleToLanePosition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePosition = { + "VehicleToLanePosition", + "VehicleToLanePosition", + &asn_OP_SEQUENCE, + asn_DEF_VehicleToLanePosition_tags_1, + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePosition_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePosition_tags_1) + /sizeof(asn_DEF_VehicleToLanePosition_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_VehicleToLanePosition_1, + 2, /* Elements count */ + &asn_SPC_VehicleToLanePosition_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c b/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c new file mode 100644 index 000000000..04344c123 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleToLanePositionList.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleToLanePositionList.h" + +static asn_oer_constraints_t asn_OER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..5)) */}; +asn_per_constraints_t asn_PER_type_VehicleToLanePositionList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 5 } /* (SIZE(1..5)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_VehicleToLanePositionList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_VehicleToLanePosition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_VehicleToLanePositionList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_VehicleToLanePositionList_specs_1 = { + sizeof(struct VehicleToLanePositionList), + offsetof(struct VehicleToLanePositionList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_VehicleToLanePositionList = { + "VehicleToLanePositionList", + "VehicleToLanePositionList", + &asn_OP_SEQUENCE_OF, + asn_DEF_VehicleToLanePositionList_tags_1, + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + asn_DEF_VehicleToLanePositionList_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleToLanePositionList_tags_1) + /sizeof(asn_DEF_VehicleToLanePositionList_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleToLanePositionList_constr_1, &asn_PER_type_VehicleToLanePositionList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_VehicleToLanePositionList_1, + 1, /* Single element */ + &asn_SPC_VehicleToLanePositionList_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleType.c b/src/tmx/Asn_J2735/src/r63/VehicleType.c new file mode 100644 index 000000000..986a17b13 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleType.c @@ -0,0 +1,86 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_VehicleType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 15 } /* (0..15,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_VehicleType_value2enum_1[] = { + { 0, 4, "none" }, + { 1, 7, "unknown" }, + { 2, 7, "special" }, + { 3, 4, "moto" }, + { 4, 3, "car" }, + { 5, 8, "carOther" }, + { 6, 3, "bus" }, + { 7, 8, "axleCnt2" }, + { 8, 8, "axleCnt3" }, + { 9, 8, "axleCnt4" }, + { 10, 15, "axleCnt4Trailer" }, + { 11, 15, "axleCnt5Trailer" }, + { 12, 15, "axleCnt6Trailer" }, + { 13, 20, "axleCnt5MultiTrailer" }, + { 14, 20, "axleCnt6MultiTrailer" }, + { 15, 20, "axleCnt7MultiTrailer" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_VehicleType_enum2value_1[] = { + 7, /* axleCnt2(7) */ + 8, /* axleCnt3(8) */ + 9, /* axleCnt4(9) */ + 10, /* axleCnt4Trailer(10) */ + 13, /* axleCnt5MultiTrailer(13) */ + 11, /* axleCnt5Trailer(11) */ + 14, /* axleCnt6MultiTrailer(14) */ + 12, /* axleCnt6Trailer(12) */ + 15, /* axleCnt7MultiTrailer(15) */ + 6, /* bus(6) */ + 4, /* car(4) */ + 5, /* carOther(5) */ + 3, /* moto(3) */ + 0, /* none(0) */ + 2, /* special(2) */ + 1 /* unknown(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_VehicleType_specs_1 = { + asn_MAP_VehicleType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_VehicleType_enum2value_1, /* N => "tag"; sorted by N */ + 16, /* Number of elements in the maps */ + 17, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_VehicleType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleType = { + "VehicleType", + "VehicleType", + &asn_OP_NativeEnumerated, + asn_DEF_VehicleType_tags_1, + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + asn_DEF_VehicleType_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleType_tags_1) + /sizeof(asn_DEF_VehicleType_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleType_constr_1, &asn_PER_type_VehicleType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_VehicleType_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VehicleWidth.c b/src/tmx/Asn_J2735/src/r63/VehicleWidth.c new file mode 100644 index 000000000..f8f71f4fc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VehicleWidth.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VehicleWidth.h" + +int +VehicleWidth_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_VehicleWidth_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, 0, 1023 } /* (0..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VehicleWidth_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VehicleWidth = { + "VehicleWidth", + "VehicleWidth", + &asn_OP_NativeInteger, + asn_DEF_VehicleWidth_tags_1, + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + asn_DEF_VehicleWidth_tags_1, /* Same as above */ + sizeof(asn_DEF_VehicleWidth_tags_1) + /sizeof(asn_DEF_VehicleWidth_tags_1[0]), /* 1 */ + { &asn_OER_type_VehicleWidth_constr_1, &asn_PER_type_VehicleWidth_constr_1, VehicleWidth_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Velocity.c b/src/tmx/Asn_J2735/src/r63/Velocity.c new file mode 100644 index 000000000..b5ccc6094 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Velocity.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Velocity.h" + +int +Velocity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 8191)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Velocity_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..8191) */, + -1}; +asn_per_constraints_t asn_PER_type_Velocity_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 13, 13, 0, 8191 } /* (0..8191) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Velocity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Velocity = { + "Velocity", + "Velocity", + &asn_OP_NativeInteger, + asn_DEF_Velocity_tags_1, + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + asn_DEF_Velocity_tags_1, /* Same as above */ + sizeof(asn_DEF_Velocity_tags_1) + /sizeof(asn_DEF_Velocity_tags_1[0]), /* 1 */ + { &asn_OER_type_Velocity_constr_1, &asn_PER_type_Velocity_constr_1, Velocity_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c new file mode 100644 index 000000000..4bc6a14d7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B07.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B07.h" + +int +VertOffset_B07_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -64 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-64..63) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B07_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, -64, 63 } /* (-64..63) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B07_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B07 = { + "VertOffset-B07", + "VertOffset-B07", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B07_tags_1, + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B07_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B07_tags_1) + /sizeof(asn_DEF_VertOffset_B07_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B07_constr_1, &asn_PER_type_VertOffset_B07_constr_1, VertOffset_B07_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c new file mode 100644 index 000000000..edefc36b8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B08.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B08.h" + +int +VertOffset_B08_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -128 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-128..127) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B08_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -128, 127 } /* (-128..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B08_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B08 = { + "VertOffset-B08", + "VertOffset-B08", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B08_tags_1, + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B08_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B08_tags_1) + /sizeof(asn_DEF_VertOffset_B08_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B08_constr_1, &asn_PER_type_VertOffset_B08_constr_1, VertOffset_B08_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c new file mode 100644 index 000000000..4ede635e3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B09.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B09.h" + +int +VertOffset_B09_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -256 && value <= 255)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-256..255) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B09_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 9, 9, -256, 255 } /* (-256..255) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B09_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B09 = { + "VertOffset-B09", + "VertOffset-B09", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B09_tags_1, + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B09_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B09_tags_1) + /sizeof(asn_DEF_VertOffset_B09_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B09_constr_1, &asn_PER_type_VertOffset_B09_constr_1, VertOffset_B09_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c new file mode 100644 index 000000000..bda947a36 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B10.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B10.h" + +int +VertOffset_B10_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -512 && value <= 511)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-512..511) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B10_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 10, 10, -512, 511 } /* (-512..511) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B10_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B10 = { + "VertOffset-B10", + "VertOffset-B10", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B10_tags_1, + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B10_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B10_tags_1) + /sizeof(asn_DEF_VertOffset_B10_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B10_constr_1, &asn_PER_type_VertOffset_B10_constr_1, VertOffset_B10_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c new file mode 100644 index 000000000..74a79f9bf --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B11.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B11.h" + +int +VertOffset_B11_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -1024 && value <= 1023)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-1024..1023) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B11_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 11, 11, -1024, 1023 } /* (-1024..1023) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B11_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B11 = { + "VertOffset-B11", + "VertOffset-B11", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B11_tags_1, + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B11_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B11_tags_1) + /sizeof(asn_DEF_VertOffset_B11_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B11_constr_1, &asn_PER_type_VertOffset_B11_constr_1, VertOffset_B11_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c b/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c new file mode 100644 index 000000000..6c54a03e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VertOffset-B12.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VertOffset-B12.h" + +int +VertOffset_B12_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -2048 && value <= 2047)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-2048..2047) */, + -1}; +asn_per_constraints_t asn_PER_type_VertOffset_B12_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, -2048, 2047 } /* (-2048..2047) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VertOffset_B12_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VertOffset_B12 = { + "VertOffset-B12", + "VertOffset-B12", + &asn_OP_NativeInteger, + asn_DEF_VertOffset_B12_tags_1, + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + asn_DEF_VertOffset_B12_tags_1, /* Same as above */ + sizeof(asn_DEF_VertOffset_B12_tags_1) + /sizeof(asn_DEF_VertOffset_B12_tags_1[0]), /* 1 */ + { &asn_OER_type_VertOffset_B12_constr_1, &asn_PER_type_VertOffset_B12_constr_1, VertOffset_B12_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c b/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c new file mode 100644 index 000000000..e34e54570 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VerticalAcceleration.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VerticalAcceleration.h" + +int +VerticalAcceleration_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -127 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { 1, 0 } /* (-127..127) */, + -1}; +asn_per_constraints_t asn_PER_type_VerticalAcceleration_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, -127, 127 } /* (-127..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VerticalAcceleration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAcceleration = { + "VerticalAcceleration", + "VerticalAcceleration", + &asn_OP_NativeInteger, + asn_DEF_VerticalAcceleration_tags_1, + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + asn_DEF_VerticalAcceleration_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAcceleration_tags_1) + /sizeof(asn_DEF_VerticalAcceleration_tags_1[0]), /* 1 */ + { &asn_OER_type_VerticalAcceleration_constr_1, &asn_PER_type_VerticalAcceleration_constr_1, VerticalAcceleration_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c b/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c new file mode 100644 index 000000000..0ba4fb8cd --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VerticalAccelerationThreshold.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VerticalAccelerationThreshold.h" + +int +VerticalAccelerationThreshold_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 5)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { 0, 0 }, + 5 /* (SIZE(5..5)) */}; +asn_per_constraints_t asn_PER_type_VerticalAccelerationThreshold_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 5, 5 } /* (SIZE(5..5)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_VerticalAccelerationThreshold_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_VerticalAccelerationThreshold = { + "VerticalAccelerationThreshold", + "VerticalAccelerationThreshold", + &asn_OP_BIT_STRING, + asn_DEF_VerticalAccelerationThreshold_tags_1, + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + asn_DEF_VerticalAccelerationThreshold_tags_1, /* Same as above */ + sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1) + /sizeof(asn_DEF_VerticalAccelerationThreshold_tags_1[0]), /* 1 */ + { &asn_OER_type_VerticalAccelerationThreshold_constr_1, &asn_PER_type_VerticalAccelerationThreshold_constr_1, VerticalAccelerationThreshold_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/VerticalOffset.c b/src/tmx/Asn_J2735/src/r63/VerticalOffset.c new file mode 100644 index 000000000..439c9d1ee --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/VerticalOffset.c @@ -0,0 +1,125 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "VerticalOffset.h" + +static asn_oer_constraints_t asn_OER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_VerticalOffset_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_VerticalOffset_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B07, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset1" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B08, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset2" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B09, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset3" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset4" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B11, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset5" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.offset6), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_VertOffset_B12, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "offset6" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.elevation), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_DSRC_Elevation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "elevation" + }, + { ATF_NOFLAGS, 0, offsetof(struct VerticalOffset, choice.regional), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Reg_BasicSafetyMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "regional" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_VerticalOffset_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* offset1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* offset2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* offset3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* offset4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* offset5 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* offset6 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* elevation */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* regional */ +}; +static asn_CHOICE_specifics_t asn_SPC_VerticalOffset_specs_1 = { + sizeof(struct VerticalOffset), + offsetof(struct VerticalOffset, _asn_ctx), + offsetof(struct VerticalOffset, present), + sizeof(((struct VerticalOffset *)0)->present), + asn_MAP_VerticalOffset_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_VerticalOffset = { + "VerticalOffset", + "VerticalOffset", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_VerticalOffset_constr_1, &asn_PER_type_VerticalOffset_constr_1, CHOICE_constraint }, + asn_MBR_VerticalOffset_1, + 8, /* Elements count */ + &asn_SPC_VerticalOffset_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c b/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c new file mode 100644 index 000000000..547a338eb --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WaitOnStopline.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WaitOnStopline.h" + +/* + * This type is implemented using BOOLEAN, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_WaitOnStopline_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WaitOnStopline = { + "WaitOnStopline", + "WaitOnStopline", + &asn_OP_BOOLEAN, + asn_DEF_WaitOnStopline_tags_1, + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + asn_DEF_WaitOnStopline_tags_1, /* Same as above */ + sizeof(asn_DEF_WaitOnStopline_tags_1) + /sizeof(asn_DEF_WaitOnStopline_tags_1[0]), /* 1 */ + { 0, 0, BOOLEAN_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WeatherProbe.c b/src/tmx/Asn_J2735/src/r63/WeatherProbe.c new file mode 100644 index 000000000..386f96725 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WeatherProbe.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WeatherProbe.h" + +asn_TYPE_member_t asn_MBR_WeatherProbe_1[] = { + { ATF_POINTER, 3, offsetof(struct WeatherProbe, airTemp), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirTemperature, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "airTemp" + }, + { ATF_POINTER, 2, offsetof(struct WeatherProbe, airPressure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AmbientAirPressure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "airPressure" + }, + { ATF_POINTER, 1, offsetof(struct WeatherProbe, rainRates), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperSet, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rainRates" + }, +}; +static const int asn_MAP_WeatherProbe_oms_1[] = { 0, 1, 2 }; +static const ber_tlv_tag_t asn_DEF_WeatherProbe_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherProbe_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* airTemp */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* airPressure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rainRates */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherProbe_specs_1 = { + sizeof(struct WeatherProbe), + offsetof(struct WeatherProbe, _asn_ctx), + asn_MAP_WeatherProbe_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_WeatherProbe_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherProbe = { + "WeatherProbe", + "WeatherProbe", + &asn_OP_SEQUENCE, + asn_DEF_WeatherProbe_tags_1, + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + asn_DEF_WeatherProbe_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherProbe_tags_1) + /sizeof(asn_DEF_WeatherProbe_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_WeatherProbe_1, + 3, /* Elements count */ + &asn_SPC_WeatherProbe_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WeatherReport.c b/src/tmx/Asn_J2735/src/r63/WeatherReport.c new file mode 100644 index 000000000..e740e4654 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WeatherReport.c @@ -0,0 +1,102 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WeatherReport.h" + +asn_TYPE_member_t asn_MBR_WeatherReport_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WeatherReport, isRaining), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipYesNo, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "isRaining" + }, + { ATF_POINTER, 5, offsetof(struct WeatherReport, rainRate), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rainRate" + }, + { ATF_POINTER, 4, offsetof(struct WeatherReport, precipSituation), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssPrecipSituation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "precipSituation" + }, + { ATF_POINTER, 3, offsetof(struct WeatherReport, solarRadiation), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssSolarRadiation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "solarRadiation" + }, + { ATF_POINTER, 2, offsetof(struct WeatherReport, friction), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EssMobileFriction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "friction" + }, + { ATF_POINTER, 1, offsetof(struct WeatherReport, roadFriction), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_CoefficientOfFriction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "roadFriction" + }, +}; +static const int asn_MAP_WeatherReport_oms_1[] = { 1, 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_WeatherReport_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WeatherReport_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* isRaining */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rainRate */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* precipSituation */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* solarRadiation */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* friction */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* roadFriction */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WeatherReport_specs_1 = { + sizeof(struct WeatherReport), + offsetof(struct WeatherReport, _asn_ctx), + asn_MAP_WeatherReport_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_WeatherReport_oms_1, /* Optional members */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WeatherReport = { + "WeatherReport", + "WeatherReport", + &asn_OP_SEQUENCE, + asn_DEF_WeatherReport_tags_1, + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + asn_DEF_WeatherReport_tags_1, /* Same as above */ + sizeof(asn_DEF_WeatherReport_tags_1) + /sizeof(asn_DEF_WeatherReport_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_WeatherReport_1, + 6, /* Elements count */ + &asn_SPC_WeatherReport_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c b/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c new file mode 100644 index 000000000..8f9d94a52 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WheelEndElectFault.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WheelEndElectFault.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_WheelEndElectFault_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_WheelEndElectFault_value2enum_1[] = { + { 0, 4, "isOk" }, + { 1, 12, "isNotDefined" }, + { 2, 7, "isError" }, + { 3, 14, "isNotSupported" } +}; +static const unsigned int asn_MAP_WheelEndElectFault_enum2value_1[] = { + 2, /* isError(2) */ + 1, /* isNotDefined(1) */ + 3, /* isNotSupported(3) */ + 0 /* isOk(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelEndElectFault_specs_1 = { + asn_MAP_WheelEndElectFault_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelEndElectFault_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelEndElectFault_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelEndElectFault = { + "WheelEndElectFault", + "WheelEndElectFault", + &asn_OP_NativeEnumerated, + asn_DEF_WheelEndElectFault_tags_1, + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + asn_DEF_WheelEndElectFault_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelEndElectFault_tags_1) + /sizeof(asn_DEF_WheelEndElectFault_tags_1[0]), /* 1 */ + { &asn_OER_type_WheelEndElectFault_constr_1, &asn_PER_type_WheelEndElectFault_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelEndElectFault_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c b/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c new file mode 100644 index 000000000..372643303 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WheelSensorStatus.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WheelSensorStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_WheelSensorStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_WheelSensorStatus_value2enum_1[] = { + { 0, 3, "off" }, + { 1, 2, "on" }, + { 2, 10, "notDefined" }, + { 3, 12, "notSupported" } +}; +static const unsigned int asn_MAP_WheelSensorStatus_enum2value_1[] = { + 2, /* notDefined(2) */ + 3, /* notSupported(3) */ + 0, /* off(0) */ + 1 /* on(1) */ +}; +const asn_INTEGER_specifics_t asn_SPC_WheelSensorStatus_specs_1 = { + asn_MAP_WheelSensorStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WheelSensorStatus_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WheelSensorStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WheelSensorStatus = { + "WheelSensorStatus", + "WheelSensorStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WheelSensorStatus_tags_1, + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + asn_DEF_WheelSensorStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WheelSensorStatus_tags_1) + /sizeof(asn_DEF_WheelSensorStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_WheelSensorStatus_constr_1, &asn_PER_type_WheelSensorStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WheelSensorStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WiperRate.c b/src/tmx/Asn_J2735/src/r63/WiperRate.c new file mode 100644 index 000000000..dcaf541c2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WiperRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WiperRate.h" + +int +WiperRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 127)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_WiperRate_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..127) */, + -1}; +asn_per_constraints_t asn_PER_type_WiperRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_WiperRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperRate = { + "WiperRate", + "WiperRate", + &asn_OP_NativeInteger, + asn_DEF_WiperRate_tags_1, + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + asn_DEF_WiperRate_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperRate_tags_1) + /sizeof(asn_DEF_WiperRate_tags_1[0]), /* 1 */ + { &asn_OER_type_WiperRate_constr_1, &asn_PER_type_WiperRate_constr_1, WiperRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WiperSet.c b/src/tmx/Asn_J2735/src/r63/WiperSet.c new file mode 100644 index 000000000..00cec8004 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WiperSet.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WiperSet.h" + +asn_TYPE_member_t asn_MBR_WiperSet_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, statusFront), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "statusFront" + }, + { ATF_NOFLAGS, 0, offsetof(struct WiperSet, rateFront), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rateFront" + }, + { ATF_POINTER, 2, offsetof(struct WiperSet, statusRear), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "statusRear" + }, + { ATF_POINTER, 1, offsetof(struct WiperSet, rateRear), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_WiperRate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rateRear" + }, +}; +static const int asn_MAP_WiperSet_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_WiperSet_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_WiperSet_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* statusFront */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rateFront */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* statusRear */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* rateRear */ +}; +asn_SEQUENCE_specifics_t asn_SPC_WiperSet_specs_1 = { + sizeof(struct WiperSet), + offsetof(struct WiperSet, _asn_ctx), + asn_MAP_WiperSet_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_WiperSet_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_WiperSet = { + "WiperSet", + "WiperSet", + &asn_OP_SEQUENCE, + asn_DEF_WiperSet_tags_1, + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + asn_DEF_WiperSet_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperSet_tags_1) + /sizeof(asn_DEF_WiperSet_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_WiperSet_1, + 4, /* Elements count */ + &asn_SPC_WiperSet_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WiperStatus.c b/src/tmx/Asn_J2735/src/r63/WiperStatus.c new file mode 100644 index 000000000..e2fb69325 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WiperStatus.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WiperStatus.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_WiperStatus_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_WiperStatus_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_WiperStatus_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 3, "off" }, + { 2, 12, "intermittent" }, + { 3, 3, "low" }, + { 4, 4, "high" }, + { 5, 11, "washerInUse" }, + { 6, 16, "automaticPresent" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_WiperStatus_enum2value_1[] = { + 6, /* automaticPresent(6) */ + 4, /* high(4) */ + 2, /* intermittent(2) */ + 3, /* low(3) */ + 1, /* off(1) */ + 0, /* unavailable(0) */ + 5 /* washerInUse(5) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_WiperStatus_specs_1 = { + asn_MAP_WiperStatus_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_WiperStatus_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_WiperStatus_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_WiperStatus = { + "WiperStatus", + "WiperStatus", + &asn_OP_NativeEnumerated, + asn_DEF_WiperStatus_tags_1, + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + asn_DEF_WiperStatus_tags_1, /* Same as above */ + sizeof(asn_DEF_WiperStatus_tags_1) + /sizeof(asn_DEF_WiperStatus_tags_1[0]), /* 1 */ + { &asn_OER_type_WiperStatus_constr_1, &asn_PER_type_WiperStatus_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_WiperStatus_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/WorkZone.c b/src/tmx/Asn_J2735/src/r63/WorkZone.c new file mode 100644 index 000000000..856599c40 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/WorkZone.c @@ -0,0 +1,151 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "WorkZone.h" + +static asn_oer_constraints_t asn_OER_type_item_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_item_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_WorkZone_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..16)) */}; +asn_per_constraints_t asn_PER_type_WorkZone_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 4, 4, 1, 16 } /* (SIZE(1..16)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_item_3[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.itis), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIScodes, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "itis" + }, + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member__item, choice.text), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ITIStextPhrase, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "text" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_item_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* itis */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* text */ +}; +static asn_CHOICE_specifics_t asn_SPC_item_specs_3 = { + sizeof(struct WorkZone__Member__item), + offsetof(struct WorkZone__Member__item, _asn_ctx), + offsetof(struct WorkZone__Member__item, present), + sizeof(((struct WorkZone__Member__item *)0)->present), + asn_MAP_item_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_item_3 = { + "item", + "item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_item_constr_3, &asn_PER_type_item_constr_3, CHOICE_constraint }, + asn_MBR_item_3, + 2, /* Elements count */ + &asn_SPC_item_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_Member_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct WorkZone__Member, item), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_item_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "item" + }, +}; +static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* item */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = { + sizeof(struct WorkZone__Member), + offsetof(struct WorkZone__Member, _asn_ctx), + asn_MAP_Member_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_Member_2 = { + "SEQUENCE", + "SEQUENCE", + &asn_OP_SEQUENCE, + asn_DEF_Member_tags_2, + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + asn_DEF_Member_tags_2, /* Same as above */ + sizeof(asn_DEF_Member_tags_2) + /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Member_2, + 1, /* Elements count */ + &asn_SPC_Member_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_WorkZone_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Member_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_WorkZone_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_WorkZone_specs_1 = { + sizeof(struct WorkZone), + offsetof(struct WorkZone, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_WorkZone = { + "WorkZone", + "WorkZone", + &asn_OP_SEQUENCE_OF, + asn_DEF_WorkZone_tags_1, + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + asn_DEF_WorkZone_tags_1, /* Same as above */ + sizeof(asn_DEF_WorkZone_tags_1) + /sizeof(asn_DEF_WorkZone_tags_1[0]), /* 1 */ + { &asn_OER_type_WorkZone_constr_1, &asn_PER_type_WorkZone_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_WorkZone_1, + 1, /* Single element */ + &asn_SPC_WorkZone_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/YawDetected.c b/src/tmx/Asn_J2735/src/r63/YawDetected.c new file mode 100644 index 000000000..bc7c0018b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/YawDetected.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "SDSM" + * found in "J2735_201603_2023-06-22.asn" + * `asn1c -fcompound-names ` + */ + +#include "YawDetected.h" + +int +YawDetected_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -14400 && value <= 14400)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_YawDetected_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-14400..14400) */, + -1}; +asn_per_constraints_t asn_PER_type_YawDetected_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 15, 15, -14400, 14400 } /* (-14400..14400) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_YawDetected_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawDetected = { + "YawDetected", + "YawDetected", + &asn_OP_NativeInteger, + asn_DEF_YawDetected_tags_1, + sizeof(asn_DEF_YawDetected_tags_1) + /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ + asn_DEF_YawDetected_tags_1, /* Same as above */ + sizeof(asn_DEF_YawDetected_tags_1) + /sizeof(asn_DEF_YawDetected_tags_1[0]), /* 1 */ + { &asn_OER_type_YawDetected_constr_1, &asn_PER_type_YawDetected_constr_1, YawDetected_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/YawRate.c b/src/tmx/Asn_J2735/src/r63/YawRate.c new file mode 100644 index 000000000..6eb5f81e2 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/YawRate.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "YawRate.h" + +int +YawRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= -32767 && value <= 32767)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_YawRate_constr_1 CC_NOTUSED = { + { 2, 0 } /* (-32767..32767) */, + -1}; +asn_per_constraints_t asn_PER_type_YawRate_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, -32767, 32767 } /* (-32767..32767) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_YawRate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRate = { + "YawRate", + "YawRate", + &asn_OP_NativeInteger, + asn_DEF_YawRate_tags_1, + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + asn_DEF_YawRate_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRate_tags_1) + /sizeof(asn_DEF_YawRate_tags_1[0]), /* 1 */ + { &asn_OER_type_YawRate_constr_1, &asn_PER_type_YawRate_constr_1, YawRate_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c b/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c new file mode 100644 index 000000000..988d94e23 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/YawRateConfidence.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "YawRateConfidence.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_YawRateConfidence_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_YawRateConfidence_value2enum_1[] = { + { 0, 11, "unavailable" }, + { 1, 13, "degSec-100-00" }, + { 2, 13, "degSec-010-00" }, + { 3, 13, "degSec-005-00" }, + { 4, 13, "degSec-001-00" }, + { 5, 13, "degSec-000-10" }, + { 6, 13, "degSec-000-05" }, + { 7, 13, "degSec-000-01" } +}; +static const unsigned int asn_MAP_YawRateConfidence_enum2value_1[] = { + 7, /* degSec-000-01(7) */ + 6, /* degSec-000-05(6) */ + 5, /* degSec-000-10(5) */ + 4, /* degSec-001-00(4) */ + 3, /* degSec-005-00(3) */ + 2, /* degSec-010-00(2) */ + 1, /* degSec-100-00(1) */ + 0 /* unavailable(0) */ +}; +const asn_INTEGER_specifics_t asn_SPC_YawRateConfidence_specs_1 = { + asn_MAP_YawRateConfidence_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_YawRateConfidence_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 0, /* Enumeration is not extensible */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_YawRateConfidence_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_YawRateConfidence = { + "YawRateConfidence", + "YawRateConfidence", + &asn_OP_NativeEnumerated, + asn_DEF_YawRateConfidence_tags_1, + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + asn_DEF_YawRateConfidence_tags_1, /* Same as above */ + sizeof(asn_DEF_YawRateConfidence_tags_1) + /sizeof(asn_DEF_YawRateConfidence_tags_1[0]), /* 1 */ + { &asn_OER_type_YawRateConfidence_constr_1, &asn_PER_type_YawRateConfidence_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_YawRateConfidence_specs_1 /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Year.c b/src/tmx/Asn_J2735/src/r63/Year.c new file mode 100644 index 000000000..db56f60f8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Year.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "AddGrpB" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Year.h" + +int +Year_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Year_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..65535) */, + -1}; +asn_per_constraints_t asn_PER_type_Year_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (1..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Year_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Year = { + "Year", + "Year", + &asn_OP_NativeInteger, + asn_DEF_Year_tags_1, + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + asn_DEF_Year_tags_1, /* Same as above */ + sizeof(asn_DEF_Year_tags_1) + /sizeof(asn_DEF_Year_tags_1[0]), /* 1 */ + { &asn_OER_type_Year_constr_1, &asn_PER_type_Year_constr_1, Year_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/ZoneLength.c b/src/tmx/Asn_J2735/src/r63/ZoneLength.c new file mode 100644 index 000000000..d9984d40a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ZoneLength.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "ZoneLength.h" + +int +ZoneLength_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 10000)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ZoneLength_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..10000) */, + -1}; +asn_per_constraints_t asn_PER_type_ZoneLength_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 14, 14, 0, 10000 } /* (0..10000) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ZoneLength_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ZoneLength = { + "ZoneLength", + "ZoneLength", + &asn_OP_NativeInteger, + asn_DEF_ZoneLength_tags_1, + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + asn_DEF_ZoneLength_tags_1, /* Same as above */ + sizeof(asn_DEF_ZoneLength_tags_1) + /sizeof(asn_DEF_ZoneLength_tags_1[0]), /* 1 */ + { &asn_OER_type_ZoneLength_constr_1, &asn_PER_type_ZoneLength_constr_1, ZoneLength_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/Zoom.c b/src/tmx/Asn_J2735/src/r63/Zoom.c new file mode 100644 index 000000000..9a18c1260 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/Zoom.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "Zoom.h" + +int +Zoom_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 15)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_Zoom_constr_1 CC_NOTUSED = { + { 1, 1 } /* (0..15) */, + -1}; +asn_per_constraints_t asn_PER_type_Zoom_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_Zoom_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_Zoom = { + "Zoom", + "Zoom", + &asn_OP_NativeInteger, + asn_DEF_Zoom_tags_1, + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + asn_DEF_Zoom_tags_1, /* Same as above */ + sizeof(asn_DEF_Zoom_tags_1) + /sizeof(asn_DEF_Zoom_tags_1[0]), /* 1 */ + { &asn_OER_type_Zoom_constr_1, &asn_PER_type_Zoom_constr_1, Zoom_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c new file mode 100644 index 000000000..ec952fc99 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_SEQUENCE_OF.c @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +typedef A_SEQUENCE_OF(void) asn_sequence; + +void +asn_sequence_del(void *asn_sequence_of_x, int number, int _do_free) { + asn_sequence *as = (asn_sequence *)asn_sequence_of_x; + + if(as) { + void *ptr; + int n; + + if(number < 0 || number >= as->count) + return; /* Nothing to delete */ + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + /* + * Shift all elements to the left to hide the gap. + */ + --as->count; + for(n = number; n < as->count; n++) + as->array[n] = as->array[n+1]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c b/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c new file mode 100644 index 000000000..944f2cb8a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_SET_OF.c @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Add another element into the set. + */ +int +asn_set_add(void *asn_set_of_x, void *ptr) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as == 0 || ptr == 0) { + errno = EINVAL; /* Invalid arguments */ + return -1; + } + + /* + * Make sure there's enough space to insert an element. + */ + if(as->count == as->size) { + int _newsize = as->size ? (as->size << 1) : 4; + void *_new_arr; + _new_arr = REALLOC(as->array, _newsize * sizeof(as->array[0])); + if(_new_arr) { + as->array = (void **)_new_arr; + as->size = _newsize; + } else { + /* ENOMEM */ + return -1; + } + } + + as->array[as->count++] = ptr; + + return 0; +} + +void +asn_set_del(void *asn_set_of_x, int number, int _do_free) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + void *ptr; + if(number < 0 || number >= as->count) + return; + + if(_do_free && as->free) { + ptr = as->array[number]; + } else { + ptr = 0; + } + + as->array[number] = as->array[--as->count]; + + /* + * Invoke the third-party function only when the state + * of the parent structure is consistent. + */ + if(ptr) as->free(ptr); + } +} + +/* + * Free the contents of the set, do not free the set itself. + */ +void +asn_set_empty(void *asn_set_of_x) { + asn_anonymous_set_ *as = _A_SET_FROM_VOID(asn_set_of_x); + + if(as) { + if(as->array) { + if(as->free) { + while(as->count--) + as->free(as->array[as->count]); + } + FREEMEM(as->array); + as->array = 0; + } + as->count = 0; + as->size = 0; + } + +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_application.c b/src/tmx/Asn_J2735/src/r63/asn_application.c new file mode 100644 index 000000000..2bff46064 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_application.c @@ -0,0 +1,481 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_app_consume_bytes_f *callback, + void *callback_key); + + +struct callback_count_bytes_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + size_t computed_size; +}; + +/* + * Encoder which just counts bytes that come through it. + */ +static int +callback_count_bytes_cb(const void *data, size_t size, void *keyp) { + struct callback_count_bytes_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret >= 0) { + key->computed_size += size; + } + + return ret; +} + +struct overrun_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct dynamic_encoder_key { + void *buffer; + size_t buffer_size; + size_t computed_size; +}; + +struct callback_failure_catch_key { + asn_app_consume_bytes_f *callback; + void *callback_key; + int callback_failed; +}; + +/* + * Encoder which doesn't stop counting bytes + * even if it reaches the end of the buffer. + */ +static int +overrun_encoder_cb(const void *data, size_t size, void *keyp) { + struct overrun_encoder_key *key = keyp; + + if(key->computed_size + size > key->buffer_size) { + /* + * Avoid accident on the next call: + * stop adding bytes to the buffer. + */ + key->buffer_size = 0; + } else { + memcpy((char *)key->buffer + key->computed_size, data, size); + } + key->computed_size += size; + + return 0; +} + +/* + * Encoder which dynamically allocates output, and continues + * to count even if allocation failed. + */ +static int +dynamic_encoder_cb(const void *data, size_t size, void *keyp) { + struct dynamic_encoder_key *key = keyp; + + if(key->buffer) { + if(key->computed_size + size >= key->buffer_size) { + void *p; + size_t new_size = key->buffer_size; + + do { + new_size *= 2; + } while(new_size <= key->computed_size + size); + + p = REALLOC(key->buffer, new_size); + if(p) { + key->buffer = p; + key->buffer_size = new_size; + } else { + FREEMEM(key->buffer); + key->buffer = 0; + key->buffer_size = 0; + key->computed_size += size; + return 0; + } + } + memcpy((char *)key->buffer + key->computed_size, data, size); + } + + key->computed_size += size; + + return 0; +} + +/* + * Encoder which help convert the application level encoder failure into EIO. + */ +static int +callback_failure_catch_cb(const void *data, size_t size, void *keyp) { + struct callback_failure_catch_key *key = keyp; + int ret; + + ret = key->callback(data, size, key->callback_key); + if(ret < 0) { + key->callback_failed = 1; + } + + return ret; +} + +asn_enc_rval_t +asn_encode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + const void *sptr, asn_app_consume_bytes_f *callback, void *callback_key) { + struct callback_failure_catch_key cb_key; + asn_enc_rval_t er = {0,0,0}; + + if(!callback) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.callback_failed = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + callback_failure_catch_cb, &cb_key); + if(cb_key.callback_failed) { + assert(er.encoded == -1); + assert(errno == EBADF); + errno = EIO; + } + + return er; +} + +asn_enc_rval_t +asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + void *buffer, size_t buffer_size) { + struct overrun_encoder_key buf_key; + asn_enc_rval_t er = {0,0,0}; + + if(buffer_size > 0 && !buffer) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + buf_key.buffer = buffer; + buf_key.buffer_size = buffer_size; + buf_key.computed_size = 0; + + er = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + overrun_encoder_cb, &buf_key); + + if(er.encoded >= 0 && (size_t)er.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + er.encoded, buf_key.computed_size); + assert(er.encoded < 0 || (size_t)er.encoded == buf_key.computed_size); + } + + return er; +} + +asn_encode_to_new_buffer_result_t +asn_encode_to_new_buffer(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr) { + struct dynamic_encoder_key buf_key; + asn_encode_to_new_buffer_result_t res; + + buf_key.buffer_size = 16; + buf_key.buffer = MALLOC(buf_key.buffer_size); + buf_key.computed_size = 0; + + res.result = asn_encode_internal(opt_codec_ctx, syntax, td, sptr, + dynamic_encoder_cb, &buf_key); + + if(res.result.encoded >= 0 + && (size_t)res.result.encoded != buf_key.computed_size) { + ASN_DEBUG("asn_encode() returned %" ASN_PRI_SSIZE + " yet produced %" ASN_PRI_SIZE " bytes", + res.result.encoded, buf_key.computed_size); + assert(res.result.encoded < 0 + || (size_t)res.result.encoded == buf_key.computed_size); + } + + res.buffer = buf_key.buffer; + + /* 0-terminate just in case. */ + if(res.buffer) { + assert(buf_key.computed_size < buf_key.buffer_size); + ((char *)res.buffer)[buf_key.computed_size] = '\0'; + } + + return res; +} + +static asn_enc_rval_t +asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, + const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_consume_bytes_f *callback, void *callback_key) { + asn_enc_rval_t er = {0,0,0}; + enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL; + + (void)opt_codec_ctx; /* Parameters are not checked on encode yet. */ + + if(!td || !sptr) { + errno = EINVAL; + ASN__ENCODE_FAILED; + } + + switch(syntax) { + case ATS_NONSTANDARD_PLAINTEXT: + if(td->op->print_struct) { + struct callback_count_bytes_key cb_key; + cb_key.callback = callback; + cb_key.callback_key = callback_key; + cb_key.computed_size = 0; + if(td->op->print_struct(td, sptr, 1, callback_count_bytes_cb, + &cb_key) + < 0 + || callback_count_bytes_cb("\n", 1, &cb_key) < 0) { + errno = EBADF; /* Structure has incorrect form. */ + er.encoded = -1; + er.failed_type = td; + er.structure_ptr = sptr; + } else { + er.encoded = cb_key.computed_size; + er.failed_type = 0; + er.structure_ptr = 0; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + + case ATS_RANDOM: + errno = ENOENT; /* Randomization doesn't make sense on output. */ + ASN__ENCODE_FAILED; + + case ATS_BER: + /* BER is a superset of DER. */ + /* Fall through. */ + case ATS_DER: + if(td->op->der_encoder) { + er = der_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->der_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* DER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + case ATS_CER: + errno = ENOENT; /* Transfer syntax is not defined for any type. */ + ASN__ENCODE_FAILED; + +#ifdef ASN_DISABLE_OER_SUPPORT + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: + errno = ENOENT; /* PER is not defined. */ + ASN__ENCODE_FAILED; + break; +#else /* ASN_DISABLE_OER_SUPPORT */ + case ATS_BASIC_OER: + /* CANONICAL-OER is a superset of BASIC-OER. */ + /* Fall through. */ + case ATS_CANONICAL_OER: + if(td->op->oer_encoder) { + er = oer_encode(td, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->oer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* OER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#endif /* ASN_DISABLE_OER_SUPPORT */ + +#ifdef ASN_DISABLE_PER_SUPPORT + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: + errno = ENOENT; /* PER is not defined. */ + ASN__ENCODE_FAILED; + break; +#else /* ASN_DISABLE_PER_SUPPORT */ + case ATS_UNALIGNED_BASIC_PER: + /* CANONICAL-UPER is a superset of BASIC-UPER. */ + /* Fall through. */ + case ATS_UNALIGNED_CANONICAL_PER: + if(td->op->uper_encoder) { + er = uper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->uper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* UPER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + case ATS_ALIGNED_BASIC_PER: + /* CANONICAL-APER is a superset of BASIC-APER. */ + /* Fall through. */ + case ATS_ALIGNED_CANONICAL_PER: + if(td->op->aper_encoder) { + er = aper_encode(td, 0, sptr, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->aper_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* APER is not defined for this type. */ + } + } else { + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + if(er.encoded == 0) { + /* Enforce "Complete Encoding" of X.691 #11.1 */ + if(callback("\0", 1, callback_key) < 0) { + errno = EBADF; + ASN__ENCODE_FAILED; + } + er.encoded = 8; /* Exactly 8 zero bits is added. */ + } + /* Convert bits into bytes */ + er.encoded = (er.encoded + 7) >> 3; + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; +#endif /* ASN_DISABLE_PER_SUPPORT */ + + case ATS_BASIC_XER: + /* CANONICAL-XER is a superset of BASIC-XER. */ + xer_flags &= ~XER_F_CANONICAL; + xer_flags |= XER_F_BASIC; + /* Fall through. */ + case ATS_CANONICAL_XER: + if(td->op->xer_encoder) { + er = xer_encode(td, sptr, xer_flags, callback, callback_key); + if(er.encoded == -1) { + if(er.failed_type && er.failed_type->op->xer_encoder) { + errno = EBADF; /* Structure has incorrect form. */ + } else { + errno = ENOENT; /* XER is not defined for this type. */ + } + } + } else { + errno = ENOENT; /* Transfer syntax is not defined for this type. */ + ASN__ENCODE_FAILED; + } + break; + + default: + errno = ENOENT; + ASN__ENCODE_FAILED; + } + + return er; +} + +asn_dec_rval_t +asn_decode(const asn_codec_ctx_t *opt_codec_ctx, + enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td, + void **sptr, const void *buffer, size_t size) { + if(!td || !td->op || !sptr || (size && !buffer)) { + ASN__DECODE_FAILED; + } + + switch(syntax) { + case ATS_CER: + case ATS_NONSTANDARD_PLAINTEXT: + default: + errno = ENOENT; + ASN__DECODE_FAILED; + + case ATS_RANDOM: + if(!td->op->random_fill) { + ASN__DECODE_FAILED; + } else { + if(asn_random_fill(td, sptr, 16000) == 0) { + asn_dec_rval_t ret = {RC_OK, 0}; + return ret; + } else { + ASN__DECODE_FAILED; + } + } + break; + + case ATS_DER: + case ATS_BER: + return ber_decode(opt_codec_ctx, td, sptr, buffer, size); + + case ATS_BASIC_OER: + case ATS_CANONICAL_OER: +#ifdef ASN_DISABLE_OER_SUPPORT + errno = ENOENT; + ASN__DECODE_FAILED; +#else + return oer_decode(opt_codec_ctx, td, sptr, buffer, size); +#endif + + case ATS_UNALIGNED_BASIC_PER: + case ATS_UNALIGNED_CANONICAL_PER: +#ifdef ASN_DISABLE_PER_SUPPORT + errno = ENOENT; + ASN__DECODE_FAILED; +#else + return uper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#endif + + case ATS_ALIGNED_BASIC_PER: + case ATS_ALIGNED_CANONICAL_PER: +#ifdef ASN_DISABLE_PER_SUPPORT + errno = ENOENT; + ASN__DECODE_FAILED; +#else + return aper_decode_complete(opt_codec_ctx, td, sptr, buffer, size); +#endif + + case ATS_BASIC_XER: + case ATS_CANONICAL_XER: + return xer_decode(opt_codec_ctx, td, sptr, buffer, size); + } +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_bit_data.c b/src/tmx/Asn_J2735/src/r63/asn_bit_data.c new file mode 100644 index 000000000..fe4b89ba7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_bit_data.c @@ -0,0 +1,333 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Create a contiguous non-refillable bit data structure. + * Can be freed by FREEMEM(). + */ +asn_bit_data_t * +asn_bit_data_new_contiguous(const void *data, size_t size_bits) { + size_t size_bytes = (size_bits + 7) / 8; + asn_bit_data_t *pd; + uint8_t *bytes; + + /* Get the extensions map */ + pd = CALLOC(1, sizeof(*pd) + size_bytes + 1); + if(!pd) { + return NULL; + } + bytes = (void *)(((char *)pd) + sizeof(*pd)); + memcpy(bytes, data, size_bytes); + bytes[size_bytes] = 0; + pd->buffer = bytes; + pd->nboff = 0; + pd->nbits = size_bits; + + return pd; +} + + +char * +asn_bit_data_string(asn_bit_data_t *pd) { + static char buf[2][32]; + static int n; + n = (n+1) % 2; + snprintf(buf[n], sizeof(buf[n]), + "{m=%" ASN_PRI_SIZE " span %" ASN_PRI_SIZE "[%" ASN_PRI_SIZE + "..%" ASN_PRI_SIZE "] (%" ASN_PRI_SIZE ")}", + pd->moved, ((uintptr_t)(pd->buffer) & 0xf), pd->nboff, pd->nbits, + pd->nbits - pd->nboff); + return buf[n]; +} + +void +asn_get_undo(asn_bit_data_t *pd, int nbits) { + if((ssize_t)pd->nboff < nbits) { + assert((ssize_t)pd->nboff < nbits); + } else { + pd->nboff -= nbits; + pd->moved -= nbits; + } +} + +/* + * Extract a small number of bits (<= 31) from the specified PER data pointer. + */ +int32_t +asn_get_few_bits(asn_bit_data_t *pd, int nbits) { + size_t off; /* Next after last bit offset */ + ssize_t nleft; /* Number of bits left in this stream */ + uint32_t accum; + const uint8_t *buf; + + if(nbits < 0) + return -1; + + nleft = pd->nbits - pd->nboff; + if(nbits > nleft) { + int32_t tailv, vhead; + if(!pd->refill || nbits > 31) return -1; + /* Accumulate unused bytes before refill */ + ASN_DEBUG("Obtain the rest %d bits (want %d)", + (int)nleft, (int)nbits); + tailv = asn_get_few_bits(pd, nleft); + if(tailv < 0) return -1; + /* Refill (replace pd contents with new data) */ + if(pd->refill(pd)) + return -1; + nbits -= nleft; + vhead = asn_get_few_bits(pd, nbits); + /* Combine the rest of previous pd with the head of new one */ + tailv = (tailv << nbits) | vhead; /* Could == -1 */ + return tailv; + } + + /* + * Normalize position indicator. + */ + if(pd->nboff >= 8) { + pd->buffer += (pd->nboff >> 3); + pd->nbits -= (pd->nboff & ~0x07); + pd->nboff &= 0x07; + } + pd->moved += nbits; + pd->nboff += nbits; + off = pd->nboff; + buf = pd->buffer; + + /* + * Extract specified number of bits. + */ + if(off <= 8) + accum = nbits ? (buf[0]) >> (8 - off) : 0; + else if(off <= 16) + accum = ((buf[0] << 8) + buf[1]) >> (16 - off); + else if(off <= 24) + accum = ((buf[0] << 16) + (buf[1] << 8) + buf[2]) >> (24 - off); + else if(off <= 31) + accum = (((uint32_t)buf[0] << 24) + (buf[1] << 16) + + (buf[2] << 8) + (buf[3])) >> (32 - off); + else if(nbits <= 31) { + asn_bit_data_t tpd = *pd; + /* Here are we with our 31-bits limit plus 1..7 bits offset. */ + asn_get_undo(&tpd, nbits); + /* The number of available bits in the stream allow + * for the following operations to take place without + * invoking the ->refill() function */ + accum = asn_get_few_bits(&tpd, nbits - 24) << 24; + accum |= asn_get_few_bits(&tpd, 24); + } else { + asn_get_undo(pd, nbits); + return -1; + } + + accum &= (((uint32_t)1 << nbits) - 1); + + ASN_DEBUG(" [PER got %2d<=%2d bits => span %d %+ld[%d..%d]:%02x (%d) => 0x%x]", + (int)nbits, (int)nleft, + (int)pd->moved, + (((long)pd->buffer) & 0xf), + (int)pd->nboff, (int)pd->nbits, + ((pd->buffer != NULL)?pd->buffer[0]:0), + (int)(pd->nbits - pd->nboff), + (int)accum); + + return accum; +} + +/* + * Extract a large number of bits from the specified PER data pointer. + */ +int +asn_get_many_bits(asn_bit_data_t *pd, uint8_t *dst, int alright, int nbits) { + int32_t value; + + if(alright && (nbits & 7)) { + /* Perform right alignment of a first few bits */ + value = asn_get_few_bits(pd, nbits & 0x07); + if(value < 0) return -1; + *dst++ = value; /* value is already right-aligned */ + nbits &= ~7; + } + + while(nbits) { + if(nbits >= 24) { + value = asn_get_few_bits(pd, 24); + if(value < 0) return -1; + *(dst++) = value >> 16; + *(dst++) = value >> 8; + *(dst++) = value; + nbits -= 24; + } else { + value = asn_get_few_bits(pd, nbits); + if(value < 0) return -1; + if(nbits & 7) { /* implies left alignment */ + value <<= 8 - (nbits & 7), + nbits += 8 - (nbits & 7); + if(nbits > 24) + *dst++ = value >> 24; + } + if(nbits > 16) + *dst++ = value >> 16; + if(nbits > 8) + *dst++ = value >> 8; + *dst++ = value; + break; + } + } + + return 0; +} + +/* + * Put a small number of bits (<= 31). + */ +int +asn_put_few_bits(asn_bit_outp_t *po, uint32_t bits, int obits) { + size_t off; /* Next after last bit offset */ + size_t omsk; /* Existing last byte meaningful bits mask */ + uint8_t *buf; + + if(obits <= 0 || obits >= 32) return obits ? -1 : 0; + + ASN_DEBUG("[PER put %d bits %x to %p+%d bits]", + obits, (int)bits, (void *)po->buffer, (int)po->nboff); + + /* + * Normalize position indicator. + */ + if(po->nboff >= 8) { + po->buffer += (po->nboff >> 3); + po->nbits -= (po->nboff & ~0x07); + po->nboff &= 0x07; + } + + /* + * Flush whole-bytes output, if necessary. + */ + if(po->nboff + obits > po->nbits) { + size_t complete_bytes; + if(!po->buffer) po->buffer = po->tmpspace; + complete_bytes = (po->buffer - po->tmpspace); + ASN_DEBUG("[PER output %ld complete + %ld]", + (long)complete_bytes, (long)po->flushed_bytes); + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) + return -1; + if(po->nboff) + po->tmpspace[0] = po->buffer[0]; + po->buffer = po->tmpspace; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + } + + /* + * Now, due to sizeof(tmpspace), we are guaranteed large enough space. + */ + buf = po->buffer; + omsk = ~((1 << (8 - po->nboff)) - 1); + off = (po->nboff + obits); + + /* Clear data of debris before meaningful bits */ + bits &= (((uint32_t)1 << obits) - 1); + + ASN_DEBUG("[PER out %d %u/%x (t=%d,o=%d) %x&%x=%x]", obits, + (int)bits, (int)bits, + (int)po->nboff, (int)off, + buf[0], (int)(omsk&0xff), + (int)(buf[0] & omsk)); + + if(off <= 8) /* Completely within 1 byte */ + po->nboff = off, + bits <<= (8 - off), + buf[0] = (buf[0] & omsk) | bits; + else if(off <= 16) + po->nboff = off, + bits <<= (16 - off), + buf[0] = (buf[0] & omsk) | (bits >> 8), + buf[1] = bits; + else if(off <= 24) + po->nboff = off, + bits <<= (24 - off), + buf[0] = (buf[0] & omsk) | (bits >> 16), + buf[1] = bits >> 8, + buf[2] = bits; + else if(off <= 31) + po->nboff = off, + bits <<= (32 - off), + buf[0] = (buf[0] & omsk) | (bits >> 24), + buf[1] = bits >> 16, + buf[2] = bits >> 8, + buf[3] = bits; + else { + if(asn_put_few_bits(po, bits >> (obits - 24), 24)) return -1; + if(asn_put_few_bits(po, bits, obits - 24)) return -1; + } + + ASN_DEBUG("[PER out %u/%x => %02x buf+%ld]", + (int)bits, (int)bits, buf[0], + (long)(po->buffer - po->tmpspace)); + + return 0; +} + + +/* + * Output a large number of bits. + */ +int +asn_put_many_bits(asn_bit_outp_t *po, const uint8_t *src, int nbits) { + + while(nbits) { + uint32_t value; + + if(nbits >= 24) { + value = (src[0] << 16) | (src[1] << 8) | src[2]; + src += 3; + nbits -= 24; + if(asn_put_few_bits(po, value, 24)) + return -1; + } else { + value = src[0]; + if(nbits > 8) + value = (value << 8) | src[1]; + if(nbits > 16) + value = (value << 8) | src[2]; + if(nbits & 0x07) + value >>= (8 - (nbits & 0x07)); + if(asn_put_few_bits(po, value, nbits)) + return -1; + break; + } + } + + return 0; +} + + +int +asn_put_aligned_flush(asn_bit_outp_t *po) { + uint32_t unused_bits = (0x7 & (8 - (po->nboff & 0x07))); + size_t complete_bytes = + (po->buffer ? po->buffer - po->tmpspace : 0) + ((po->nboff + 7) >> 3); + + if(unused_bits) { + po->buffer[po->nboff >> 3] &= ~0u << unused_bits; + } + + if(po->output(po->tmpspace, complete_bytes, po->op_key) < 0) { + return -1; + } else { + po->buffer = po->tmpspace; + po->nboff = 0; + po->nbits = 8 * sizeof(po->tmpspace); + po->flushed_bytes += complete_bytes; + return 0; + } +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c b/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c new file mode 100644 index 000000000..fc2424773 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_codecs_prim.c @@ -0,0 +1,317 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Decode an always-primitive type. + */ +asn_dec_rval_t +ber_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buf_ptr, size_t size, int tag_mode) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval; + ber_tlv_len_t length = 0; /* =0 to avoid [incorrect] warning. */ + + /* + * If the structure is not there, allocate it. + */ + if(st == NULL) { + st = (ASN__PRIMITIVE_TYPE_t *)CALLOC(1, sizeof(*st)); + if(st == NULL) ASN__DECODE_FAILED; + *sptr = (void *)st; + } + + ASN_DEBUG("Decoding %s as plain primitive (tm=%d)", + td->name, tag_mode); + + /* + * Check tags and extract value length. + */ + rval = ber_check_tags(opt_codec_ctx, td, 0, buf_ptr, size, + tag_mode, 0, &length, 0); + if(rval.code != RC_OK) + return rval; + + ASN_DEBUG("%s length is %d bytes", td->name, (int)length); + + /* + * Make sure we have this length. + */ + buf_ptr = ((const char *)buf_ptr) + rval.consumed; + size -= rval.consumed; + if(length > (ber_tlv_len_t)size) { + rval.code = RC_WMORE; + rval.consumed = 0; + return rval; + } + + st->size = (int)length; + /* The following better be optimized away. */ + if(sizeof(st->size) != sizeof(length) + && (ber_tlv_len_t)st->size != length) { + st->size = 0; + ASN__DECODE_FAILED; + } + + st->buf = (uint8_t *)MALLOC(length + 1); + if(!st->buf) { + st->size = 0; + ASN__DECODE_FAILED; + } + + memcpy(st->buf, buf_ptr, length); + st->buf[length] = '\0'; /* Just in case */ + + rval.code = RC_OK; + rval.consumed += length; + + ASN_DEBUG("Took %ld/%ld bytes to encode %s", + (long)rval.consumed, + (long)length, td->name); + + return rval; +} + +/* + * Encode an always-primitive type using DER. + */ +asn_enc_rval_t +der_encode_primitive(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t erval = {0,0,0}; + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + + ASN_DEBUG("%s %s as a primitive type (tm=%d)", + cb?"Encoding":"Estimating", td->name, tag_mode); + + erval.encoded = der_write_tags(td, st->size, tag_mode, 0, tag, + cb, app_key); + ASN_DEBUG("%s wrote tags %d", td->name, (int)erval.encoded); + if(erval.encoded == -1) { + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + + if(cb && st->buf) { + if(cb(st->buf, st->size, app_key) < 0) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = sptr; + return erval; + } + } else { + assert(st->buf || st->size == 0); + } + + erval.encoded += st->size; + ASN__ENCODED_OK(erval); +} + +void +ASN__PRIMITIVE_TYPE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)sptr; + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as a primitive type", td->name); + + if(st->buf) + FREEMEM(st->buf); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(sptr, 0, sizeof(ASN__PRIMITIVE_TYPE_t)); + break; + } +} + + +/* + * Local internal type passed around as an argument. + */ +struct xdp_arg_s { + const asn_TYPE_descriptor_t *type_descriptor; + void *struct_key; + xer_primitive_body_decoder_f *prim_body_decoder; + int decoded_something; + int want_more; +}; + +/* + * Since some kinds of primitive values can be encoded using value-specific + * tags (, , etc), the primitive decoder must + * be supplied with such tags to parse them as needed. + */ +static int +xer_decode__unexpected_tag(void *key, const void *chunk_buf, size_t chunk_size) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + + /* + * The chunk_buf is guaranteed to start at '<'. + */ + assert(chunk_size && ((const char *)chunk_buf)[0] == 0x3c); + + /* + * Decoding was performed once already. Prohibit doing it again. + */ + if(arg->decoded_something) + return -1; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return 0; + } + + return -1; +} + +static ssize_t +xer_decode__primitive_body(void *key, const void *chunk_buf, size_t chunk_size, int have_more) { + struct xdp_arg_s *arg = (struct xdp_arg_s *)key; + enum xer_pbd_rval bret; + size_t lead_wsp_size; + + if(arg->decoded_something) { + if(xer_whitespace_span(chunk_buf, chunk_size) == chunk_size) { + /* + * Example: + * "123 " + * ^- chunk_buf position. + */ + return chunk_size; + } + /* + * Decoding was done once already. Prohibit doing it again. + */ + return -1; + } + + if(!have_more) { + /* + * If we've received something like "1", we can't really + * tell whether it is really `1` or `123`, until we know + * that there is no more data coming. + * The have_more argument will be set to 1 once something + * like this is available to the caller of this callback: + * "1want_more = 1; + return -1; + } + + lead_wsp_size = xer_whitespace_span(chunk_buf, chunk_size); + chunk_buf = (const char *)chunk_buf + lead_wsp_size; + chunk_size -= lead_wsp_size; + + bret = arg->prim_body_decoder(arg->type_descriptor, + arg->struct_key, chunk_buf, chunk_size); + switch(bret) { + case XPBD_SYSTEM_FAILURE: + case XPBD_DECODER_LIMIT: + case XPBD_BROKEN_ENCODING: + break; + case XPBD_BODY_CONSUMED: + /* Tag decoded successfully */ + arg->decoded_something = 1; + /* Fall through */ + case XPBD_NOT_BODY_IGNORE: /* Safe to proceed further */ + return lead_wsp_size + chunk_size; + } + + return -1; +} + + +asn_dec_rval_t +xer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + size_t struct_size, const char *opt_mname, + const void *buf_ptr, size_t size, + xer_primitive_body_decoder_f *prim_body_decoder) { + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + asn_struct_ctx_t s_ctx; + struct xdp_arg_s s_arg; + asn_dec_rval_t rc; + + /* + * Create the structure if does not exist. + */ + if(!*sptr) { + *sptr = CALLOC(1, struct_size); + if(!*sptr) ASN__DECODE_FAILED; + } + + memset(&s_ctx, 0, sizeof(s_ctx)); + s_arg.type_descriptor = td; + s_arg.struct_key = *sptr; + s_arg.prim_body_decoder = prim_body_decoder; + s_arg.decoded_something = 0; + s_arg.want_more = 0; + + rc = xer_decode_general(opt_codec_ctx, &s_ctx, &s_arg, + xml_tag, buf_ptr, size, + xer_decode__unexpected_tag, xer_decode__primitive_body); + switch(rc.code) { + case RC_OK: + if(!s_arg.decoded_something) { + char ch; + ASN_DEBUG("Primitive body is not recognized, " + "supplying empty one"); + /* + * Decoding opportunity has come and gone. + * Where's the result? + * Try to feed with empty body, see if it eats it. + */ + if(prim_body_decoder(s_arg.type_descriptor, + s_arg.struct_key, &ch, 0) + != XPBD_BODY_CONSUMED) { + /* + * This decoder does not like empty stuff. + */ + ASN__DECODE_FAILED; + } + } + break; + case RC_WMORE: + /* + * Redo the whole thing later. + * We don't have a context to save intermediate parsing state. + */ + rc.consumed = 0; + break; + case RC_FAIL: + rc.consumed = 0; + if(s_arg.want_more) + rc.code = RC_WMORE; + else + ASN__DECODE_FAILED; + break; + } + return rc; +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_internal.c b/src/tmx/Asn_J2735/src/r63/asn_internal.c new file mode 100644 index 000000000..c2a8108e7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_internal.c @@ -0,0 +1,48 @@ +#include + +ssize_t +asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, + const char *fmt, ...) { + char scratch[64]; + char *buf = scratch; + size_t buf_size = sizeof(scratch); + int wrote; + int cb_ret; + + do { + va_list args; + va_start(args, fmt); + + wrote = vsnprintf(buf, buf_size, fmt, args); + va_end(args); + if(wrote < (ssize_t)buf_size) { + if(wrote < 0) { + if(buf != scratch) FREEMEM(buf); + return -1; + } + break; + } + + buf_size <<= 1; + if(buf == scratch) { + buf = MALLOC(buf_size); + if(!buf) return -1; + } else { + void *p = REALLOC(buf, buf_size); + if(!p) { + FREEMEM(buf); + return -1; + } + buf = p; + } + } while(1); + + cb_ret = cb(buf, wrote, key); + if(buf != scratch) FREEMEM(buf); + if(cb_ret < 0) { + return -1; + } + + return wrote; +} + diff --git a/src/tmx/Asn_J2735/src/r63/asn_random_fill.c b/src/tmx/Asn_J2735/src/r63/asn_random_fill.c new file mode 100644 index 000000000..819cf700e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/asn_random_fill.c @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +int +asn_random_fill(const struct asn_TYPE_descriptor_s *td, void **struct_ptr, + size_t length) { + + if(td && td->op->random_fill) { + asn_random_fill_result_t res = + td->op->random_fill(td, struct_ptr, 0, length); + return (res.code == ARFILL_OK) ? 0 : -1; + } else { + return -1; + } +} + +static uintmax_t +asn__intmax_range(intmax_t lb, intmax_t ub) { + assert(lb <= ub); + if((ub < 0) == (lb < 0)) { + return ub - lb; + } else if(lb < 0) { + return 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return 0; + } +} + +intmax_t +asn_random_between(intmax_t lb, intmax_t rb) { + if(lb == rb) { + return lb; + } else { + const uintmax_t intmax_max = ((~(uintmax_t)0) >> 1); + uintmax_t range = asn__intmax_range(lb, rb); + uintmax_t value = 0; + uintmax_t got_entropy = 0; + + assert(RAND_MAX > 0xffffff); /* Seen 7ffffffd! */ + assert(range < intmax_max); + + for(; got_entropy < range;) { + got_entropy = (got_entropy << 24) | 0xffffff; + value = (value << 24) | (random() % 0xffffff); + } + + return lb + (intmax_t)(value % (range + 1)); + } +} diff --git a/src/tmx/Asn_J2735/src/r63/ber_decoder.c b/src/tmx/Asn_J2735/src/r63/ber_decoder.c new file mode 100644 index 000000000..75d601695 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ber_decoder.c @@ -0,0 +1,283 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) +#undef RETURN +#define RETURN(_code) do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + if(opt_ctx) opt_ctx->step = step; /* Save context */ \ + if(_code == RC_OK || opt_ctx) \ + rval.consumed = consumed_myself; \ + else \ + rval.consumed = 0; /* Context-free */ \ + return rval; \ + } while(0) + +/* + * The BER decoder of any type. + */ +asn_dec_rval_t +ber_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->ber_decoder(opt_codec_ctx, type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + ptr, size, /* Buffer and its size */ + 0 /* Default tag mode is 0 */ + ); +} + +/* + * Check the set of >> tags matches the definition. + */ +asn_dec_rval_t +ber_check_tags(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx, + const void *ptr, size_t size, int tag_mode, int last_tag_form, + ber_tlv_len_t *last_length, int *opt_tlv_form) { + ssize_t consumed_myself = 0; + ssize_t tag_len; + ssize_t len_len; + ber_tlv_tag_t tlv_tag; + ber_tlv_len_t tlv_len; + ber_tlv_len_t limit_len = -1; + int expect_00_terminators = 0; + int tlv_constr = -1; /* If CHOICE, opt_tlv_form is not given */ + int step = opt_ctx ? opt_ctx->step : 0; /* Where we left previously */ + int tagno; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + RETURN(RC_FAIL); + + /* + * So what does all this implicit skip stuff mean? + * Imagine two types, + * A ::= [5] IMPLICIT T + * B ::= [2] EXPLICIT T + * Where T is defined as + * T ::= [4] IMPLICIT SEQUENCE { ... } + * + * Let's say, we are starting to decode type A, given the + * following TLV stream: <5> <0>. What does this mean? + * It means that the type A contains type T which is, + * in turn, empty. + * Remember though, that we are still in A. We cannot + * just pass control to the type T decoder. Why? Because + * the type T decoder expects <4> <0>, not <5> <0>. + * So, we must make sure we are going to receive <5> while + * still in A, then pass control to the T decoder, indicating + * that the tag <4> was implicitly skipped. The decoder of T + * hence will be prepared to treat <4> as valid tag, and decode + * it appropriately. + */ + + tagno = step /* Continuing where left previously */ + + (tag_mode==1?-1:0) + ; + ASN_DEBUG("ber_check_tags(%s, size=%ld, tm=%d, step=%d, tagno=%d)", + td->name, (long)size, tag_mode, step, tagno); + /* assert(td->tags_count >= 1) May not be the case for CHOICE or ANY */ + + if(tag_mode == 0 && tagno == (int)td->tags_count) { + /* + * This must be the _untagged_ ANY type, + * which outermost tag isn't known in advance. + * Fetch the tag and length separately. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + ASN_DEBUG("Advancing %ld in ANY case", + (long)(tag_len + len_len)); + ADVANCE(tag_len + len_len); + } else { + assert(tagno < (int)td->tags_count); /* At least one loop */ + } + for((void)tagno; tagno < (int)td->tags_count; tagno++, step++) { + + /* + * Fetch and process T from TLV. + */ + tag_len = ber_fetch_tag(ptr, size, &tlv_tag); + ASN_DEBUG("Fetching tag from {%p,%ld}: " + "len %ld, step %d, tagno %d got %s", + ptr, (long)size, + (long)tag_len, step, tagno, + ber_tlv_tag_string(tlv_tag)); + switch(tag_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + tlv_constr = BER_TLV_CONSTRUCTED(ptr); + + /* + * If {I}, don't check anything. + * If {I,B,C}, check B and C unless we're at I. + */ + if(tag_mode != 0 && step == 0) { + /* + * We don't expect tag to match here. + * It's just because we don't know how the tag + * is supposed to look like. + */ + } else { + assert(tagno >= 0); /* Guaranteed by the code above */ + if(tlv_tag != td->tags[tagno]) { + /* + * Unexpected tag. Too bad. + */ + ASN_DEBUG("Expected: %s, " + "expectation failed (tn=%d, tm=%d)", + ber_tlv_tag_string(td->tags[tagno]), + tagno, tag_mode + ); + RETURN(RC_FAIL); + } + } + + /* + * Attention: if there are more tags expected, + * ensure that the current tag is presented + * in constructed form (it contains other tags!). + * If this one is the last one, check that the tag form + * matches the one given in descriptor. + */ + if(tagno < ((int)td->tags_count - 1)) { + if(tlv_constr == 0) { + ASN_DEBUG("tlv_constr = %d, expfail", + tlv_constr); + RETURN(RC_FAIL); + } + } else { + if(last_tag_form != tlv_constr + && last_tag_form != -1) { + ASN_DEBUG("last_tag_form %d != %d", + last_tag_form, tlv_constr); + RETURN(RC_FAIL); + } + } + + /* + * Fetch and process L from TLV. + */ + len_len = ber_fetch_length(tlv_constr, + (const char *)ptr + tag_len, size - tag_len, &tlv_len); + ASN_DEBUG("Fetching len = %ld", (long)len_len); + switch(len_len) { + case -1: RETURN(RC_FAIL); + case 0: RETURN(RC_WMORE); + } + + /* + * FIXME + * As of today, the chain of tags + * must either contain several indefinite length TLVs, + * or several definite length ones. + * No mixing is allowed. + */ + if(tlv_len == -1) { + /* + * Indefinite length. + */ + if(limit_len == -1) { + expect_00_terminators++; + } else { + ASN_DEBUG("Unexpected indefinite length " + "in a chain of definite lengths"); + RETURN(RC_FAIL); + } + ADVANCE(tag_len + len_len); + continue; + } else { + if(expect_00_terminators) { + ASN_DEBUG("Unexpected definite length " + "in a chain of indefinite lengths"); + RETURN(RC_FAIL); + } + } + + /* + * Check that multiple TLVs specify ever decreasing length, + * which is consistent. + */ + if(limit_len == -1) { + limit_len = tlv_len + tag_len + len_len; + if(limit_len < 0) { + /* Too great tlv_len value? */ + RETURN(RC_FAIL); + } + } else if(limit_len != tlv_len + tag_len + len_len) { + /* + * Inner TLV specifies length which is inconsistent + * with the outer TLV's length value. + */ + ASN_DEBUG("Outer TLV is %ld and inner is %ld", + (long)limit_len, (long)tlv_len); + RETURN(RC_FAIL); + } + + ADVANCE(tag_len + len_len); + + limit_len -= (tag_len + len_len); + if((ssize_t)size > limit_len) { + /* + * Make sure that we won't consume more bytes + * from the parent frame than the inferred limit. + */ + size = limit_len; + } + } + + if(opt_tlv_form) + *opt_tlv_form = tlv_constr; + if(expect_00_terminators) + *last_length = -expect_00_terminators; + else + *last_length = tlv_len; + + RETURN(RC_OK); +} diff --git a/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c b/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c new file mode 100644 index 000000000..0a0deec1a --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ber_tlv_length.c @@ -0,0 +1,168 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_length(int _is_constructed, const void *bufptr, size_t size, + ber_tlv_len_t *len_r) { + const uint8_t *buf = (const uint8_t *)bufptr; + unsigned oct; + + if(size == 0) + return 0; /* Want more */ + + oct = *(const uint8_t *)buf; + if((oct & 0x80) == 0) { + /* + * Short definite length. + */ + *len_r = oct; /* & 0x7F */ + return 1; + } else { + ber_tlv_len_t len; + size_t skipped; + + if(_is_constructed && oct == 0x80) { + *len_r = -1; /* Indefinite length */ + return 1; + } + + if(oct == 0xff) { + /* Reserved in standard for future use. */ + return -1; + } + + oct &= 0x7F; /* Leave only the 7 LS bits */ + for(len = 0, buf++, skipped = 1; + oct && (++skipped <= size); buf++, oct--) { + + /* Verify that we won't overflow. */ + if(!(len >> ((8 * sizeof(len)) - (8+1)))) { + len = (len << 8) | *buf; + } else { + /* Too large length value. */ + return -1; + } + } + + if(oct == 0) { + if(len < 0 || len > RSSIZE_MAX) { + /* Length value out of sane range. */ + return -1; + } + + *len_r = len; + return skipped; + } + + return 0; /* Want more */ + } + +} + +ssize_t +ber_skip_length(const asn_codec_ctx_t *opt_codec_ctx, + int _is_constructed, const void *ptr, size_t size) { + ber_tlv_len_t vlen; /* Length of V in TLV */ + ssize_t tl; /* Length of L in TLV */ + ssize_t ll; /* Length of L in TLV */ + size_t skip; + + /* + * Make sure we didn't exceed the maximum stack size. + */ + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + return -1; + + /* + * Determine the size of L in TLV. + */ + ll = ber_fetch_length(_is_constructed, ptr, size, &vlen); + if(ll <= 0) return ll; + + /* + * Definite length. + */ + if(vlen >= 0) { + skip = ll + vlen; + if(skip > size) + return 0; /* Want more */ + return skip; + } + + /* + * Indefinite length! + */ + ASN_DEBUG("Skipping indefinite length"); + for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) { + ber_tlv_tag_t tag; + + /* Fetch the tag */ + tl = ber_fetch_tag(ptr, size, &tag); + if(tl <= 0) return tl; + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + ((const char *)ptr) + tl, size - tl); + if(ll <= 0) return ll; + + skip += tl + ll; + + /* + * This may be the end of the indefinite length structure, + * two consecutive 0 octets. + * Check if it is true. + */ + if(((const uint8_t *)ptr)[0] == 0 + && ((const uint8_t *)ptr)[1] == 0) + return skip; + + ptr = ((const char *)ptr) + tl + ll; + size -= tl + ll; + } + + /* UNREACHABLE */ +} + +size_t +der_tlv_length_serialize(ber_tlv_len_t len, void *bufp, size_t size) { + size_t required_size; /* Size of len encoding */ + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + int i; + + if(len <= 127) { + /* Encoded in 1 octet */ + if(size) *buf = (uint8_t)len; + return 1; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 8; i < 8 * (int)sizeof(len); i += 8) { + if(len >> i) + required_size++; + else + break; + } + + if(size <= required_size) + return required_size + 1; + + *buf++ = (uint8_t)(0x80 | required_size); /* Length of the encoding */ + + /* + * Produce the len encoding, space permitting. + */ + end = buf + required_size; + for(i -= 8; buf < end; i -= 8, buf++) + *buf = (uint8_t)(len >> i); + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c b/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c new file mode 100644 index 000000000..64ec14f07 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/ber_tlv_tag.c @@ -0,0 +1,144 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +ssize_t +ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val &= 0x1F) != 0x1F) { + /* + * Simple form: everything encoded in a single octet. + * Tag Class is encoded using two least significant bits. + */ + *tag_r = (val << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; + skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + + +ssize_t +ber_tlv_tag_fwrite(ber_tlv_tag_t tag, FILE *f) { + char buf[sizeof("[APPLICATION ]") + 32]; + ssize_t ret; + + ret = ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + if(ret >= (ssize_t)sizeof(buf) || ret < 2) { + errno = EPERM; + return -1; + } + + return fwrite(buf, 1, ret, f); +} + +ssize_t +ber_tlv_tag_snprint(ber_tlv_tag_t tag, char *buf, size_t size) { + const char *type = 0; + int ret; + + switch(tag & 0x3) { + case ASN_TAG_CLASS_UNIVERSAL: type = "UNIVERSAL "; break; + case ASN_TAG_CLASS_APPLICATION: type = "APPLICATION "; break; + case ASN_TAG_CLASS_CONTEXT: type = ""; break; + case ASN_TAG_CLASS_PRIVATE: type = "PRIVATE "; break; + } + + ret = snprintf(buf, size, "[%s%u]", type, ((unsigned)tag) >> 2); + if(ret <= 0 && size) buf[0] = '\0'; /* against broken libc's */ + + return ret; +} + +char * +ber_tlv_tag_string(ber_tlv_tag_t tag) { + static char buf[sizeof("[APPLICATION ]") + 32]; + + (void)ber_tlv_tag_snprint(tag, buf, sizeof(buf)); + + return buf; +} + + +size_t +ber_tlv_tag_serialize(ber_tlv_tag_t tag, void *bufp, size_t size) { + int tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + uint8_t *buf = (uint8_t *)bufp; + uint8_t *end; + size_t required_size; + size_t i; + + if(tval <= 30) { + /* Encoded in 1 octet */ + if(size) buf[0] = (tclass << 6) | tval; + return 1; + } else if(size) { + *buf++ = (tclass << 6) | 0x1F; + size--; + } + + /* + * Compute the size of the subsequent bytes. + */ + for(required_size = 1, i = 7; i < 8 * sizeof(tval); i += 7) { + if(tval >> i) + required_size++; + else + break; + } + + if(size < required_size) + return required_size + 1; + + /* + * Fill in the buffer, space permitting. + */ + end = buf + required_size - 1; + for(i -= 7; buf < end; i -= 7, buf++) + *buf = 0x80 | ((tval >> i) & 0x7F); + *buf = (tval & 0x7F); /* Last octet without high bit */ + + return required_size + 1; +} + diff --git a/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c b/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c new file mode 100644 index 000000000..721409213 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_CHOICE.c @@ -0,0 +1,1513 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num;\ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * See the definitions. + */ +static unsigned _fetch_present_idx(const void *struct_ptr, unsigned off, + unsigned size); +static void _set_present_idx(void *sptr, unsigned offset, unsigned size, + unsigned present); +static const void *_get_member_ptr(const asn_TYPE_descriptor_t *, + const void *sptr, asn_TYPE_member_t **elm, + unsigned *present); + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * The decoder of the CHOICE type. + */ +asn_dec_rval_t +CHOICE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + if(tag_mode || td->tags_count) { + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, -1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) { + /* ?Subtracted below! */ + ctx->left += rval.consumed; + } + ADVANCE(rval.consumed); + } else { + ctx->left = -1; + } + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("In %s CHOICE tag length %d", td->name, (int)tag_len); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key; + + key.el_tag = tlv_tag; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG("Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + + ASN_DEBUG("Skipping unknown tag %s", + ber_tlv_tag_string(tlv_tag)); + + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + RETURN(RC_OK); + } + } while(0); + + case 2: + /* + * PHASE 2. + * Read in the element. + */ + do { + asn_TYPE_member_t *elm;/* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &elements[ctx->step]; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + /* Set presence to be able to free it properly at any time */ + _set_present_idx(st, specs->pres_offset, + specs->pres_size, ctx->step + 1); + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, elm->type, + memb_ptr2, ptr, LEFT, elm->tag_mode); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + RETURN(RC_FAIL); + case RC_FAIL: /* Fatal error */ + RETURN(rval.code); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } while(0); + + NEXT_PHASE(ctx); + + /* Fall through */ + case 3: + ASN_DEBUG("CHOICE %s Leftover: %ld, size = %ld, tm=%d, tc=%d", + td->name, (long)ctx->left, (long)size, + tag_mode, td->tags_count); + + if(ctx->left > 0) { + /* + * The type must be fully decoded + * by the CHOICE member-specific decoder. + */ + RETURN(RC_FAIL); + } + + if(ctx->left == -1 + && !(tag_mode || td->tags_count)) { + /* + * This is an untagged CHOICE. + * It doesn't contain nothing + * except for the member itself, including all its tags. + * The decoding is completed. + */ + NEXT_PHASE(ctx); + break; + } + + /* + * Read in the "end of data chunks"'s. + */ + while(ctx->left < 0) { + ssize_t tl; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * Expected <0><0>... + */ + if(((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + continue; + } + } else { + ASN_DEBUG("Unexpected continuation in %s", + td->name); + RETURN(RC_FAIL); + } + + /* UNREACHABLE */ + } + + NEXT_PHASE(ctx); + case 4: + /* No meaningful work here */ + break; + } + + RETURN(RC_OK); +} + +asn_enc_rval_t +CHOICE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + asn_enc_rval_t erval = {0,0,0}; + const void *memb_ptr; + size_t computed_size = 0; + unsigned present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("%s %s as CHOICE", + cb?"Encoding":"Estimating", td->name); + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) { + if(present == 0 && td->elements_count == 0) { + /* The CHOICE is empty?! */ + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + ASN__ENCODE_FAILED; + } + + /* + * Seek over the present member of the structure. + */ + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + if(elm->optional) { + erval.encoded = 0; + ASN__ENCODED_OK(erval); + } + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* + * If the CHOICE itself is tagged EXPLICIT: + * T ::= [2] EXPLICIT CHOICE { ... } + * Then emit the appropriate tags. + */ + if(tag_mode == 1 || td->tags_count) { + /* + * For this, we need to pre-compute the member. + */ + ssize_t ret; + + /* Encode member with its tag */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, 0, 0); + if(erval.encoded == -1) + return erval; + + /* Encode CHOICE with parent or my own tag */ + ret = der_write_tags(td, erval.encoded, tag_mode, 1, tag, + cb, app_key); + if(ret == -1) + ASN__ENCODE_FAILED; + computed_size += ret; + } + + /* + * Encode the single underlying member. + */ + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + elm->tag_mode, elm->tag, cb, app_key); + if(erval.encoded == -1) + return erval; + + ASN_DEBUG("Encoded CHOICE member in %ld bytes (+%ld)", + (long)erval.encoded, (long)computed_size); + + erval.encoded += computed_size; + + return erval; +} + +ber_tlv_tag_t +CHOICE_outmost_tag(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, ber_tlv_tag_t tag) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + assert(tag_mode == 0); (void)tag_mode; + assert(tag == 0); (void)tag; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + if(present > 0 && present <= td->elements_count) { + const asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *) + ((const char *)ptr + elm->memb_offset); + } else { + memb_ptr = (const void *) + ((const char *)ptr + elm->memb_offset); + } + + return asn_TYPE_outmost_tag(elm->type, memb_ptr, + elm->tag_mode, elm->tag); + } else { + return (ber_tlv_tag_t)-1; + } +} + +int +CHOICE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + return 0; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory CHOICE element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->encoding_constraints.general_constraints) { + return elm->encoding_constraints.general_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + } else { + return elm->type->encoding_constraints.general_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: no CHOICE element given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + buf_ptr = (const void *)(((const char *)buf_ptr) + num); \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +CHOICE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value of a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + if(ctx->phase == 0 && !*xml_tag) + ctx->phase = 1; /* Skip the outer tag checking phase */ + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Only waiting for closing tag. + * Phase 4: Skipping unknown extensions. + * Phase 5: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 4;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the member. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + unsigned old_present; + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Start/Continue decoding the inner member */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + buf_ptr, size); + XER_ADVANCE(tmprval.consumed); + ASN_DEBUG("XER/CHOICE: itdf: [%s] code=%d", + elm->type->name, tmprval.code); + old_present = _fetch_present_idx(st, + specs->pres_offset, specs->pres_size); + assert(old_present == 0 || old_present == edx + 1); + /* Record what we've got */ + _set_present_idx(st, + specs->pres_offset, specs->pres_size, edx + 1); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 3; + /* Fall through */ + } + + /* No need to wait for closing tag; special mode. */ + if(ctx->phase == 3 && !*xml_tag) { + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/CHOICE checked [%c%c%c%c] vs [%s], tcv=%d", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + xml_tag, tcv); + + /* Skip the extensions section */ + if(ctx->phase == 4) { + ASN_DEBUG("skip_unknown(%d, %ld)", + tcv, (long)ctx->left); + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 5; + RETURN(RC_FAIL); + case 1: + ctx->phase = 3; + /* Fall through */ + case 0: + XER_ADVANCE(ch_size); + continue; + case 2: + ctx->phase = 3; + break; + } + } + + switch(tcv) { + case XCT_BOTH: + break; /* No CHOICE? */ + case XCT_CLOSING: + if(ctx->phase != 3) + break; + XER_ADVANCE(ch_size); + ctx->phase = 5; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + if(ctx->phase != 1) + break; /* Really unexpected */ + + /* + * Search which inner member corresponds to this tag. + */ + for(edx = 0; edx < td->elements_count; edx++) { + elm = &td->elements[edx]; + tcv = xer_check_tag(buf_ptr,ch_size,elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + edx = td->elements_count; + break; /* Phase out */ + } + break; + } + if(edx != td->elements_count) + continue; + + /* It is expected extension */ + if(specs->ext_start != -1) { + ASN_DEBUG("Got anticipated extension"); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + ctx->phase = 3; /* Terminating */ + } else { + ctx->left = 1; + ctx->phase = 4; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag [%c%c%c%c] in CHOICE [%s]" + " (ph=%d, tag=%s)", + ch_size>0?((const uint8_t *)buf_ptr)[0]:'?', + ch_size>1?((const uint8_t *)buf_ptr)[1]:'?', + ch_size>2?((const uint8_t *)buf_ptr)[2]:'?', + ch_size>3?((const uint8_t *)buf_ptr)[3]:'?', + td->name, ctx->phase, xml_tag); + break; + } + + ctx->phase = 5; /* Phase out, just in case */ + RETURN(RC_FAIL); +} + + +asn_enc_rval_t +CHOICE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + unsigned present = 0; + + if(!sptr) + ASN__ENCODE_FAILED; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + if(present == 0 || present > td->elements_count) { + ASN__ENCODE_FAILED; + } else { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr = NULL; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + er.encoded = 0; + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + 1, flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!(flags & XER_F_CANONICAL)) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +asn_dec_rval_t +CHOICE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct; + asn_TYPE_member_t *elm; /* CHOICE's element */ + void *memb_ptr; + void **memb_ptr2; + void *st = *sptr; + int value; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) { + ASN_DEBUG("CHOICE presence from wire %d", value); + value = specs->from_canonical_order[value]; + ASN_DEBUG("CHOICE presence index effective %d", value); + } + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } else { + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + unsigned present; + int present_enc; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present == 0 || present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present_enc = specs->to_canonical_order[present]; + else + present_enc = present; + + if(ct && ct->range_bits >= 0) { + if(present_enc < ct->lower_bound + || present_enc > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG( + "CHOICE member %d (enc %d) is an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + ASN_DEBUG("CHOICE member %d (enc %d) is not an extension (%ld..%ld)", + present, present_enc, ct->lower_bound, ct->upper_bound); + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + + elm = &td->elements[present]; + ASN_DEBUG("CHOICE member \"%s\" %d (as %d)", elm->name, present, + present_enc); + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present_enc, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) ASN__ENCODE_FAILED; + if(uper_put_nsnnwn(po, present_enc - specs->ext_start)) + ASN__ENCODE_FAILED; + if(uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} + +asn_dec_rval_t +CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + asn_dec_rval_t rv; + const asn_per_constraint_t *ct; + asn_TYPE_member_t *elm; /* CHOICE's element */ + void *memb_ptr; + void **memb_ptr2; + void *st = *sptr; + int value; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted */ + } + + if(ct && ct->range_bits >= 0) { + value = per_get_few_bits(pd, ct->range_bits); + if(value < 0) ASN__DECODE_STARVED; + ASN_DEBUG("CHOICE %s got index %d in range %d", + td->name, value, ct->range_bits); + if(value > ct->upper_bound) + ASN__DECODE_FAILED; + } else { + if(specs->ext_start == -1) + ASN__DECODE_FAILED; + value = uper_get_nsnnwn(pd); + if(value < 0) ASN__DECODE_STARVED; + value += specs->ext_start; + if((unsigned)value >= td->elements_count) + ASN__DECODE_FAILED; + } + + /* Adjust if canonical order is different from natural order */ + if(specs->from_canonical_order) + value = specs->from_canonical_order[value]; + + /* Set presence to be able to free it later */ + _set_present_idx(st, specs->pres_offset, specs->pres_size, value + 1); + + elm = &td->elements[value]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + ASN_DEBUG("Discovered CHOICE %s encodes %s", td->name, elm->name); + + if(ct && ct->range_bits >= 0) { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } else { + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + + if(rv.code != RC_OK) + ASN_DEBUG("Failed to decode %s in %s (CHOICE) %d", + elm->name, td->name, rv.code); + return rv; +} + +asn_enc_rval_t +CHOICE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm; /* CHOICE's element */ + const asn_per_constraint_t *ct; + const void *memb_ptr; + int present; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s as CHOICE using ALIGNED PER", td->name); + + if(constraints) ct = &constraints->value; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->value; + else ct = 0; + + present = _fetch_present_idx(sptr, + specs->pres_offset, specs->pres_size); + + /* + * If the structure was not initialized properly, it cannot be encoded: + * can't deduce what to encode in the choice type. + */ + if(present <= 0 || (unsigned)present > td->elements_count) + ASN__ENCODE_FAILED; + else + present--; + + /* Adjust if canonical order is different from natural order */ + if(specs->to_canonical_order) + present = specs->to_canonical_order[present]; + + ASN_DEBUG("Encoding %s CHOICE element %d", td->name, present); + + if(ct && ct->range_bits >= 0) { + if(present < ct->lower_bound + || present > ct->upper_bound) { + if(ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 1, 1)) + ASN__ENCODE_FAILED; + } else { + ASN__ENCODE_FAILED; + } + ct = 0; + } + } + if(ct && ct->flags & APC_EXTENSIBLE) { + if(per_put_few_bits(po, 0, 1)) + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present]; + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr = *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) ASN__ENCODE_FAILED; + } else { + memb_ptr = (const char *)sptr + elm->memb_offset; + } + + if(ct && ct->range_bits >= 0) { + if(per_put_few_bits(po, present, ct->range_bits)) + ASN__ENCODE_FAILED; + + return elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po); + } else { + asn_enc_rval_t rval = {0,0,0}; + if(specs->ext_start == -1) + ASN__ENCODE_FAILED; + int n = present - specs->ext_start; + if(n <= 63) { + if(n < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n, 7)) ASN__ENCODE_FAILED; + } else + ASN__ENCODE_FAILED; + if(aper_open_type_put(elm->type, elm->encoding_constraints.per_constraints, + memb_ptr, po)) + ASN__ENCODE_FAILED; + rval.encoded = 0; + ASN__ENCODED_OK(rval); + } +} + +int +CHOICE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset,specs->pres_size); + + /* + * Print that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Print member's name and stuff */ + if(0) { + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + } + + return elm->type->op->print_struct(elm->type, memb_ptr, ilevel, + cb, app_key); + } else { + return (cb("", 8, app_key) < 0) ? -1 : 0; + } +} + +void +CHOICE_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!td || !ptr) + return; + + ASN_DEBUG("Freeing %s as CHOICE", td->name); + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(ptr, specs->pres_offset, specs->pres_size); + + /* + * Free that element. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *elm = &td->elements[present-1]; + void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)ptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)ptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } +} + + +/* + * The following functions functions offer protection against -fshort-enums, + * compatible with little- and big-endian machines. + * If assertion is triggered, either disable -fshort-enums, or add an entry + * here with the ->pres_size of your target stracture. + * Unless the target structure is packed, the ".present" member + * is guaranteed to be aligned properly. ASN.1 compiler itself does not + * produce packed code. + */ +static unsigned +_fetch_present_idx(const void *struct_ptr, unsigned pres_offset, + unsigned pres_size) { + const void *present_ptr; + unsigned present; + + present_ptr = ((const char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): present = *(const unsigned int *)present_ptr; break; + case sizeof(short): present = *(const unsigned short *)present_ptr; break; + case sizeof(char): present = *(const unsigned char *)present_ptr; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + return 0; /* If not aborted, pass back safe value */ + } + + return present; +} + +static void +_set_present_idx(void *struct_ptr, unsigned pres_offset, unsigned pres_size, + unsigned present) { + void *present_ptr; + present_ptr = ((char *)struct_ptr) + pres_offset; + + switch(pres_size) { + case sizeof(int): *(unsigned int *)present_ptr = present; break; + case sizeof(short): *(unsigned short *)present_ptr = present; break; + case sizeof(char): *(unsigned char *)present_ptr = present; break; + default: + /* ANSI C mandates enum to be equivalent to integer */ + assert(pres_size != sizeof(int)); + } +} + +static const void * +_get_member_ptr(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_TYPE_member_t **elm_ptr, unsigned *present_out) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned present; + + if(!sptr) { + *elm_ptr = NULL; + *present_out = 0; + return NULL; + } + + /* + * Figure out which CHOICE element is encoded. + */ + present = _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + *present_out = present; + + /* + * The presence index is intentionally 1-based to avoid + * treating zeroed structure as a valid one. + */ + if(present > 0 && present <= td->elements_count) { + asn_TYPE_member_t *const elm = &td->elements[present - 1]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + *elm_ptr = elm; + return memb_ptr; + } else { + *elm_ptr = NULL; + return NULL; + } + +} + +int +CHOICE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, const void *bptr) { + asn_TYPE_member_t *aelm; + asn_TYPE_member_t *belm; + unsigned apresent = 0; + unsigned bpresent = 0; + const void *amember = _get_member_ptr(td, aptr, &aelm, &apresent); + const void *bmember = _get_member_ptr(td, bptr, &belm, &bpresent); + + if(amember && bmember) { + if(apresent == bpresent) { + assert(aelm == belm); + return aelm->type->op->compare_struct(aelm->type, amember, bmember); + } else if(apresent < bpresent) { + return -1; + } else { + return 1; + } + } else if(!amember) { + return -1; + } else { + return 1; + } +} + +/* + * Return the 1-based choice variant presence index. + * Returns 0 in case of error. + */ +unsigned +CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td, const void *sptr) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + return _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); +} + +/* + * Sets or resets the 1-based choice variant presence index. + * In case a previous index is not zero, the currently selected structure + * member is freed and zeroed-out first. + * Returns 0 on success and -1 on error. + */ +int +CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td, void *sptr, + unsigned present) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + unsigned old_present; + + if(!sptr) { + return -1; + } + + if(present > td->elements_count) + return -1; + + old_present = + _fetch_present_idx(sptr, specs->pres_offset, specs->pres_size); + if(present == old_present) + return 0; + + if(old_present != 0) { + assert(old_present <= td->elements_count); + ASN_STRUCT_RESET(*td, sptr); + } + + _set_present_idx(sptr, specs->pres_offset, specs->pres_size, present); + + return 0; +} + + +asn_random_fill_result_t +CHOICE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_random_fill_result_t res; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm; + unsigned present; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + void *st = *sptr; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + present = asn_random_between(1, td->elements_count); + elm = &td->elements[present - 1]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + res = elm->type->op->random_fill(elm->type, memb_ptr2, + &elm->encoding_constraints, max_length); + _set_present_idx(st, specs->pres_offset, specs->pres_size, present); + if(res.code == ARFILL_OK) { + *sptr = st; + } else { + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + } + + return res; +} + + +asn_TYPE_operation_t asn_OP_CHOICE = { + CHOICE_free, + CHOICE_print, + CHOICE_compare, + CHOICE_decode_ber, + CHOICE_encode_der, + CHOICE_decode_xer, + CHOICE_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + CHOICE_decode_oer, + CHOICE_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + CHOICE_decode_uper, + CHOICE_encode_uper, + CHOICE_decode_aper, + CHOICE_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + CHOICE_random_fill, + CHOICE_outmost_tag +}; diff --git a/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c new file mode 100644 index 000000000..18f148609 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_CHOICE_oer.c @@ -0,0 +1,380 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Tags are canonically sorted in the tag to member table. + */ +static int +_search4tag(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) + return 0; + else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) { + ber_tlv_tag_t val; + ber_tlv_tag_t tclass; + size_t skipped; + + if(size == 0) + return 0; + + val = *(const uint8_t *)ptr; + tclass = (val >> 6); + if((val & 0x3F) != 0x3F) { + /* #8.7.1 */ + *tag_r = ((val & 0x3F) << 2) | tclass; + return 1; + } + + /* + * Each octet contains 7 bits of useful information. + * The MSB is 0 if it is the last octet of the tag. + */ + for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size; + ptr = ((const char *)ptr) + 1, skipped++) { + unsigned int oct = *(const uint8_t *)ptr; + if(oct & 0x80) { + val = (val << 7) | (oct & 0x7F); + /* + * Make sure there are at least 9 bits spare + * at the MS side of a value. + */ + if(val >> ((8 * sizeof(val)) - 9)) { + /* + * We would not be able to accommodate + * any more tag bits. + */ + return -1; + } + } else { + val = (val << 7) | oct; + *tag_r = (val << 2) | tclass; + return skipped; + } + } + + return 0; /* Want more */ +} + +asn_dec_rval_t +CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + (void)constraints; + + ASN_DEBUG("Decoding %s as CHOICE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + switch(ctx->phase) { + case 0: { + /* + * Discover the tag. + */ + ber_tlv_tag_t tlv_tag; /* T from TLV */ + ssize_t tag_len; /* Length of TLV's T */ + + tag_len = oer_fetch_tag(ptr, size, &tlv_tag); + switch(tag_len) { + case 0: + ASN__DECODE_STARVED; + case -1: + ASN__DECODE_FAILED; + } + + do { + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + + t2m = (const asn_TYPE_tag2member_t *)bsearch( + &key, specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _search4tag); + if(t2m) { + /* + * Found the element corresponding to the tag. + */ + NEXT_PHASE(ctx); + ctx->step = t2m->el_no; + break; + } else if(specs->ext_start == -1) { + ASN_DEBUG( + "Unexpected tag %s " + "in non-extensible CHOICE %s", + ber_tlv_tag_string(tlv_tag), td->name); + RETURN(RC_FAIL); + } else { + /* Skip open type extension */ + ASN_DEBUG( + "Not implemented skipping open type extension for tag %s", + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + } while(0); + + + ADVANCE(tag_len); + } + /* Fall through */ + case 1: { + asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */ + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_dec_rval_t rval = {0,0}; + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Set presence to be able to free it properly at any time */ + (void)CHOICE_variant_set_presence(td, st, ctx->step + 1); + + if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) { + ssize_t got = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + if(got < 0) ASN__DECODE_FAILED; + if(got == 0) ASN__DECODE_STARVED; + rval.code = RC_OK; + rval.consumed = got; + } else { + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + rval.consumed += consumed_myself; + switch(rval.code) { + case RC_OK: + NEXT_PHASE(ctx); + case RC_WMORE: + break; + case RC_FAIL: + SET_PHASE(ctx, 3); /* => 3 */ + } + return rval; + } + case 2: + /* Already decoded everything */ + RETURN(RC_OK); + case 3: + /* Failed to decode, after all */ + RETURN(RC_FAIL); + } + + RETURN(RC_FAIL); +} + +/* + * X.696 (08/2015) #8.7 Encoding of tags + */ +static ssize_t +oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t tclass = BER_TAG_CLASS(tag); + ber_tlv_tag_t tval = BER_TAG_VALUE(tag); + + if(tval < 0x3F) { + uint8_t b = (uint8_t)((tclass << 6) | tval); + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } else { + uint8_t buf[1 + 2 * sizeof(tval)]; + uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */ + size_t encoded; + for(; ; tval >>= 7) { + if(tval >> 7) { + *b-- = 0x80 | (tval & 0x7f); + } else { + *b-- = tval & 0x7f; + break; + } + } + *b = (uint8_t)((tclass << 6) | 0x3F); + encoded = sizeof(buf) - (b - buf); + if(cb(b, encoded, app_key) < 0) { + return -1; + } + return encoded; + } + +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +CHOICE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_CHOICE_specifics_t *specs = + (const asn_CHOICE_specifics_t *)td->specifics; + asn_TYPE_member_t *elm; /* CHOICE element */ + unsigned present; + const void *memb_ptr; + ber_tlv_tag_t tag; + ssize_t tag_len; + asn_enc_rval_t er = {0, 0, 0}; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + ASN_DEBUG("OER %s encoding as CHOICE", td->name); + + present = CHOICE_variant_get_presence(td, sptr); + if(present == 0 || present > td->elements_count) { + ASN_DEBUG("CHOICE %s member is not selected", td->name); + ASN__ENCODE_FAILED; + } + + elm = &td->elements[present-1]; + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(memb_ptr == 0) { + /* Mandatory element absent */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag); + if(tag == 0) { + ASN__ENCODE_FAILED; + } + + tag_len = oer_put_tag(tag, cb, app_key); + if(tag_len < 0) { + ASN__ENCODE_FAILED; + } + + if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) { + ssize_t encoded = oer_open_type_put(elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(encoded < 0) ASN__ENCODE_FAILED; + er.encoded = tag_len + encoded; + } else { + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded >= 0) er.encoded += tag_len; + } + + return er; +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c new file mode 100644 index 000000000..ed7c7015c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE.c @@ -0,0 +1,2063 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +/* + * Tags are canonically sorted in the tag2element map. + */ +static int +_t2e_cmp(const void *ap, const void *bp) { + const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap; + const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp; + + int a_class = BER_TAG_CLASS(a->el_tag); + int b_class = BER_TAG_CLASS(b->el_tag); + + if(a_class == b_class) { + ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag); + ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag); + + if(a_value == b_value) { + if(a->el_no > b->el_no) + return 1; + /* + * Important: we do not check + * for a->el_no <= b->el_no! + */ + return 0; + } else if(a_value < b_value) + return -1; + else + return 1; + } else if(a_class < b_class) { + return -1; + } else { + return 1; + } +} + + +/* + * The decoder of the SEQUENCE type. + */ +asn_dec_rval_t +SEQUENCE_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + const asn_TYPE_member_t *elements = td->elements; + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* SEQUENCE element's index */ + + ASN_DEBUG("Decoding %s as SEQUENCE", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + NEXT_PHASE(ctx); + + ASN_DEBUG("Structure consumes %ld bytes, buffer %ld", + (long)ctx->left, (long)size); + + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next member from the list of + * this structure's elements. + * (ctx->step) stores the member being processed + * between invocations and the microphase {0,1} of parsing + * that member: + * step = ( * 2 + ). + */ + for(edx = ((size_t)ctx->step >> 1); edx < td->elements_count; + edx++, ctx->step = (ctx->step & ~1) + 2) { + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + ssize_t tag_len; /* Length of TLV's T */ + size_t opt_edx_end; /* Next non-optional element */ + size_t n; + int use_bsearch; + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + ASN_DEBUG("In %s SEQUENCE left %d, edx=%" ASN_PRI_SIZE " flags=%d" + " opt=%d ec=%d", + td->name, (int)ctx->left, edx, + elements[edx].flags, elements[edx].optional, + td->elements_count); + + if(ctx->left == 0 /* No more stuff is expected */ + && ( + /* Explicit OPTIONAL specification reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx))) { + ASN_DEBUG("End of SEQUENCE %s", td->name); + /* + * Found the legitimate end of the structure. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + ASN_DEBUG("Current tag in %s SEQUENCE for element %" ASN_PRI_SIZE " " + "(%s) is %s encoded in %d bytes, of frame %ld", + td->name, edx, elements[edx].name, + ber_tlv_tag_string(tlv_tag), (int)tag_len, (long)LEFT); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } else if(((const uint8_t *)ptr)[1] == 0) { + ASN_DEBUG("edx = %" ASN_PRI_SIZE ", opt = %d, ec=%d", edx, + elements[edx].optional, td->elements_count); + if((edx + elements[edx].optional == td->elements_count) + || IN_EXTENSION_GROUP(specs, edx)) { + /* + * Yeah, baby! Found the terminator + * of the indefinite length structure. + */ + /* + * Proceed to the canonical + * finalization function. + * No advancing is necessary. + */ + goto phase3; + } + } + } + + /* + * Find the next available type with this tag. + */ + use_bsearch = 0; + opt_edx_end = edx + elements[edx].optional + 1; + if(opt_edx_end > td->elements_count) + opt_edx_end = td->elements_count; /* Cap */ + else if(opt_edx_end - edx > 8) { + /* Limit the scope of linear search... */ + opt_edx_end = edx + 8; + use_bsearch = 1; + /* ... and resort to bsearch() */ + } + for(n = edx; n < opt_edx_end; n++) { + if(BER_TAGS_EQUAL(tlv_tag, elements[n].tag)) { + /* + * Found element corresponding to the tag + * being looked at. + * Reposition over the right element. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].flags & ATF_ANY_TYPE) { + /* + * This is the ANY type, which may bear + * any flag whatsoever. + */ + edx = n; + ctx->step = 1 + 2 * edx; /* Remember! */ + goto microphase2; + } else if(elements[n].tag == (ber_tlv_tag_t)-1) { + use_bsearch = 1; + break; + } + } + if(use_bsearch) { + /* + * Resort to a binary search over + * sorted array of tags. + */ + const asn_TYPE_tag2member_t *t2m; + asn_TYPE_tag2member_t key = {0, 0, 0, 0}; + key.el_tag = tlv_tag; + key.el_no = edx; + t2m = (const asn_TYPE_tag2member_t *)bsearch(&key, + specs->tag2el, specs->tag2el_count, + sizeof(specs->tag2el[0]), _t2e_cmp); + if(t2m) { + const asn_TYPE_tag2member_t *best = 0; + const asn_TYPE_tag2member_t *t2m_f, *t2m_l; + size_t edx_max = edx + elements[edx].optional; + /* + * Rewind to the first element with that tag, + * `cause bsearch() does not guarantee order. + */ + t2m_f = t2m + t2m->toff_first; + t2m_l = t2m + t2m->toff_last; + for(t2m = t2m_f; t2m <= t2m_l; t2m++) { + if(t2m->el_no > edx_max) break; + if(t2m->el_no < edx) continue; + best = t2m; + } + if(best) { + edx = best->el_no; + ctx->step = 1 + 2 * edx; + goto microphase2; + } + } + n = opt_edx_end; + } + if(n == opt_edx_end) { + /* + * If tag is unknown, it may be either + * an unknown (thus, incorrect) tag, + * or an extension (...), + * or an end of the indefinite-length structure. + */ + if(!IN_EXTENSION_GROUP(specs, + edx + elements[edx].optional)) { + ASN_DEBUG("Unexpected tag %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + ASN_DEBUG("Expected tag %s (%s)%s", + ber_tlv_tag_string(elements[edx].tag), + elements[edx].name, + elements[edx].optional + ?" or alternatives":""); + RETURN(RC_FAIL); + } else { + /* Skip this tag */ + ssize_t skip; + edx += elements[edx].optional; + + ASN_DEBUG("Skipping unexpected %s (at %" ASN_PRI_SIZE ")", + ber_tlv_tag_string(tlv_tag), edx); + skip = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tag_len, + LEFT - tag_len); + ASN_DEBUG("Skip length %d in %s", + (int)skip, td->name); + switch(skip) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(skip + tag_len); + ctx->step -= 2; + edx--; + continue; /* Try again with the next tag */ + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + ASN_DEBUG("Inside SEQUENCE %s MF2", td->name); + + /* + * Compute the position of the member inside a structure, + * and also a type of containment (it may be contained + * as pointer or using inline inclusion). + */ + if(elements[edx].flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elements[edx].memb_offset); + } else { + /* + * A pointer to a pointer + * holding the start of the structure + */ + memb_ptr = (char *)st + elements[edx].memb_offset; + memb_ptr2 = &memb_ptr; + } + /* + * Invoke the member fetch routine according to member's type + */ + if(elements[edx].flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_ber_get(opt_codec_ctx, td, st, &elements[edx], ptr, LEFT); + } else { + rval = elements[edx].type->op->ber_decoder(opt_codec_ctx, + elements[edx].type, + memb_ptr2, ptr, LEFT, + elements[edx].tag_mode); + } + ASN_DEBUG("In %s SEQUENCE decoded %" ASN_PRI_SIZE " %s of %d " + "in %d bytes rval.code %d, size=%d", + td->name, edx, elements[edx].type->name, + (int)LEFT, (int)rval.consumed, rval.code, (int)size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + ASN_DEBUG("Size violation (c->l=%ld <= s=%ld)", + (long)ctx->left, (long)size); + /* Fall through */ + case RC_FAIL: /* Fatal error */ + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all structure members) */ + + phase3: + ctx->phase = 3; + /* Fall through */ + case 3: /* 00 and other tags expected */ + case 4: /* only 00's expected */ + + ASN_DEBUG("SEQUENCE %s Leftover: %ld, size = %ld", + td->name, (long)ctx->left, (long)size); + + /* + * Skip everything until the end of the SEQUENCE. + */ + while(ctx->left) { + ssize_t tl, ll; + + tl = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tl) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + /* + * If expected <0><0>... + */ + if(ctx->left < 0 + && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Correctly finished with <0><0>. + */ + ADVANCE(2); + ctx->left++; + ctx->phase = 4; + continue; + } + } + + if(!IN_EXTENSION_GROUP(specs, td->elements_count) + || ctx->phase == 4) { + ASN_DEBUG("Unexpected continuation " + "of a non-extensible type " + "%s (SEQUENCE): %s", + td->name, + ber_tlv_tag_string(tlv_tag)); + RETURN(RC_FAIL); + } + + ll = ber_skip_length(opt_codec_ctx, + BER_TLV_CONSTRUCTED(ptr), + (const char *)ptr + tl, LEFT - tl); + switch(ll) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + ADVANCE(tl + ll); + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + + +/* + * The DER encoder of the SEQUENCE type. + */ +asn_enc_rval_t +SEQUENCE_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t computed_size = 0; + asn_enc_rval_t erval = {0,0,0}; + ssize_t ret; + size_t edx; + + ASN_DEBUG("%s %s as SEQUENCE", + cb?"Encoding":"Estimating", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + erval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s estimated %ld bytes", + edx, elm->name, (long)erval.encoded); + } + + /* + * Encode the TLV for the sequence itself. + */ + ret = der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + ASN_DEBUG("Wrote tags: %ld (+%ld)", (long)ret, (long)computed_size); + if(ret == -1) + ASN__ENCODE_FAILED; + erval.encoded = computed_size + ret; + + if(!cb) ASN__ENCODED_OK(erval); + + /* + * Encode all members. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t tmperval = {0,0,0}; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) continue; + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + tmperval = elm->type->op->der_encoder(elm->type, *memb_ptr2, + elm->tag_mode, elm->tag, cb, app_key); + if(tmperval.encoded == -1) + return tmperval; + computed_size -= tmperval.encoded; + ASN_DEBUG("Member %" ASN_PRI_SIZE " %s of SEQUENCE %s encoded in %ld bytes", + edx, elm->name, td->name, (long)tmperval.encoded); + } + + if(computed_size != 0) + /* + * Encoded size is not equal to the computed size. + */ + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(erval); +} + + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) \ + do { \ + size_t num = (num_bytes); \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SEQUENCE_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_TYPE_member_t *elements = td->elements; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval; /* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + size_t edx; /* Element index */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + * Phase 3: Skipping unknown extensions. + * Phase 4: PHASED OUT + */ + for(edx = ctx->step; ctx->phase <= 3;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + asn_TYPE_member_t *elm; + + /* + * Go inside the inner member of a sequence. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval; + void *memb_ptr_dontuse; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + elm = &td->elements[edx]; + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr_dontuse = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr_dontuse; /* Only use of memb_ptr_dontuse */ + } + + if(elm->flags & ATF_OPEN_TYPE) { + tmprval = OPEN_TYPE_xer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + /* Invoke the inner type decoder, m.b. multiple times */ + tmprval = elm->type->op->xer_decoder(opt_codec_ctx, + elm->type, memb_ptr2, elm->name, + ptr, size); + } + XER_ADVANCE(tmprval.consumed); + if(tmprval.code != RC_OK) + RETURN(tmprval.code); + ctx->phase = 1; /* Back to body processing */ + ctx->step = ++edx; + ASN_DEBUG("XER/SEQUENCE phase => %d, step => %d", + ctx->phase, ctx->step); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SEQUENCE: tcv = %d, ph=%d [%s]", + tcv, ctx->phase, xml_tag); + + /* Skip the extensions section */ + if(ctx->phase == 3) { + switch(xer_skip_unknown(tcv, &ctx->left)) { + case -1: + ctx->phase = 4; + RETURN(RC_FAIL); + case 0: + XER_ADVANCE(ch_size); + continue; + case 1: + XER_ADVANCE(ch_size); + ctx->phase = 1; + continue; + case 2: + ctx->phase = 1; + break; + } + } + + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + if(edx >= td->elements_count || + /* Explicit OPTIONAL specs reaches the end */ + (edx + elements[edx].optional == td->elements_count) || + /* All extensions are optional */ + IN_EXTENSION_GROUP(specs, edx)) { + XER_ADVANCE(ch_size); + ctx->phase = 4; /* Phase out */ + RETURN(RC_OK); + } else { + ASN_DEBUG("Premature end of XER SEQUENCE"); + RETURN(RC_FAIL); + } + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SEQUENCE: tcv=%d, ph=%d, edx=%" ASN_PRI_SIZE "", + tcv, ctx->phase, edx); + if(ctx->phase != 1) { + break; /* Really unexpected */ + } + + if(edx < td->elements_count) { + /* + * Search which member corresponds to this tag. + */ + size_t n; + size_t edx_end = edx + elements[edx].optional + 1; + if(edx_end > td->elements_count) + edx_end = td->elements_count; + for(n = edx; n < edx_end; n++) { + elm = &td->elements[n]; + tcv = xer_check_tag(ptr, ch_size, elm->name); + switch(tcv) { + case XCT_BOTH: + case XCT_OPENING: + /* + * Process this member. + */ + ctx->step = edx = n; + ctx->phase = 2; + break; + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + continue; + default: + n = edx_end; + break; /* Phase out */ + } + break; + } + if(n != edx_end) + continue; + } else { + ASN_DEBUG("Out of defined members: %" ASN_PRI_SIZE "/%u", + edx, td->elements_count); + } + + /* It is expected extension */ + if(IN_EXTENSION_GROUP(specs, + edx + (edx < td->elements_count + ? elements[edx].optional : 0))) { + ASN_DEBUG("Got anticipated extension at %" ASN_PRI_SIZE "", + edx); + /* + * Check for (XCT_BOTH or XCT_UNKNOWN_BO) + * By using a mask. Only record a pure + * tags. + */ + if(tcv & XCT_CLOSING) { + /* Found without body */ + } else { + ctx->left = 1; + ctx->phase = 3; /* Skip ...'s */ + } + XER_ADVANCE(ch_size); + continue; + } + + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SEQUENCE [%c%c%c%c%c%c]", + size>0?((const char *)ptr)[0]:'.', + size>1?((const char *)ptr)[1]:'.', + size>2?((const char *)ptr)[2]:'.', + size>3?((const char *)ptr)[3]:'.', + size>4?((const char *)ptr)[4]:'.', + size>5?((const char *)ptr)[5]:'.'); + break; + } + + ctx->phase = 4; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + +asn_enc_rval_t +SEQUENCE_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + int xcan = (flags & XER_F_CANONICAL); + asn_TYPE_descriptor_t *tmp_def_val_td = 0; + void *tmp_def_val = 0; + size_t edx; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_enc_rval_t tmper = {0,0,0}; + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + const char *mname = elm->name; + unsigned int mlen = strlen(mname); + + if(elm->flags & ATF_POINTER) { + memb_ptr = + *(const void *const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + assert(tmp_def_val == 0); + if(elm->default_value_set) { + if(elm->default_value_set(&tmp_def_val)) { + ASN__ENCODE_FAILED; + } else { + memb_ptr = tmp_def_val; + tmp_def_val_td = elm->type; + } + } else if(elm->optional) { + continue; + } else { + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + /* Print the member itself */ + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmp_def_val) { + ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + tmp_def_val = 0; + } + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("", 1); + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + if(tmp_def_val) ASN_STRUCT_FREE(*tmp_def_val_td, tmp_def_val); + ASN__ENCODE_FAILED; +} + +int +SEQUENCE_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t edx; + int ret; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) continue; + /* Print line */ + /* Fall through */ + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + /* Indentation */ + _i_INDENT(1); + + /* Print the member's name and stuff */ + if(cb(elm->name, strlen(elm->name), app_key) < 0 + || cb(": ", 2, app_key) < 0) + return -1; + + /* Print the member itself */ + ret = elm->type->op->print_struct(elm->type, memb_ptr, ilevel + 1, + cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} + +void +SEQUENCE_free(const asn_TYPE_descriptor_t *td, void *sptr, + enum asn_struct_free_method method) { + size_t edx; + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_struct_ctx_t *ctx; /* Decoder context */ + + if(!td || !sptr) + return; + + ASN_DEBUG("Freeing %s as SEQUENCE", td->name); + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; + if(elm->flags & ATF_POINTER) { + memb_ptr = *(void **)((char *)sptr + elm->memb_offset); + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } else { + memb_ptr = (void *)((char *)sptr + elm->memb_offset); + ASN_STRUCT_FREE_CONTENTS_ONLY(*elm->type, memb_ptr); + } + } + + /* Clean parsing context */ + ctx = (asn_struct_ctx_t *)((char *)sptr + specs->ctx_offset); + FREEMEM(ctx->ptr); + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(sptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset( + sptr, 0, + ((const asn_SEQUENCE_specifics_t *)(td->specifics))->struct_size); + break; + } +} + +int +SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t edx; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* + * Iterate over structure members and check their validity. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; + + if(elm->flags & ATF_POINTER) { + memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset); + if(!memb_ptr) { + if(elm->optional) + continue; + ASN__CTFAIL(app_key, td, sptr, + "%s: mandatory element %s absent (%s:%d)", + td->name, elm->name, __FILE__, __LINE__); + return -1; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + } + + if(elm->encoding_constraints.general_constraints) { + int ret = elm->encoding_constraints.general_constraints(elm->type, memb_ptr, + ctfailcb, app_key); + if(ret) return ret; + } else { + return elm->type->encoding_constraints.general_constraints(elm->type, + memb_ptr, ctfailcb, app_key); + } + } + + return 0; +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +SEQUENCE_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (UPER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; + edx < (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + rv = OPEN_TYPE_uper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = uper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", + td->name, (long)bmlength, *epres); + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, + *memb_ptr2); + rv = uper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: break; + case 0: continue; + default: + if(uper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + ASN_DEBUG("Skipped overflow extension"); + continue; + } + break; + } + + FREEMEM(epres); + } + + if(specs->first_extension >= 0) { + unsigned i; + /* Fill DEFAULT members in extensions */ + for(i = specs->roms_count; i < specs->roms_count + specs->aoms_count; + i++) { + asn_TYPE_member_t *elm; + void **memb_ptr2; /* Pointer to member pointer */ + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE__handle_extensions(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s:%s (@%" ASN_PRI_SIZE ") present => %d", elm->name, + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) { + return -1; + } + /* Encode as open type field */ + if(po2 && present + && uper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, + *memb_ptr2, po2)) + return -1; + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (UPER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE__handle_extensions(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void *const *memb_ptr2; /* Pointer to that pointer */ + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = + (const void *const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %" ASN_PRI_SIZE " not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s:%s", td->name, elm->name, elm->type->name); + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, *memb_ptr2, + po); + if(er.encoded == -1) return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of extensions %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(uper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE__handle_extensions(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE__handle_extensions(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +SEQUENCE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + void *st = *sptr; /* Target structure. */ + int extpresent; /* Extension additions are present */ + uint8_t *opres; /* Presence of optional root members */ + asn_per_data_t opmd; + asn_dec_rval_t rv; + size_t edx; + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + + ASN_DEBUG("Decoding %s as SEQUENCE (APER)", td->name); + + /* Handle extensions */ + if(specs->first_extension < 0) { + extpresent = 0; + } else { + extpresent = per_get_few_bits(pd, 1); + if(extpresent < 0) ASN__DECODE_STARVED; + } + + /* Prepare a place and read-in the presence bitmap */ + memset(&opmd, 0, sizeof(opmd)); + if(specs->roms_count) { + opres = (uint8_t *)MALLOC(((specs->roms_count + 7) >> 3) + 1); + if(!opres) ASN__DECODE_FAILED; + /* Get the presence map */ + if(per_get_many_bits(pd, opres, 0, specs->roms_count)) { + FREEMEM(opres); + ASN__DECODE_STARVED; + } + opmd.buffer = opres; + opmd.nbits = specs->roms_count; + ASN_DEBUG("Read in presence bitmap for %s of %d bits (%x..)", + td->name, specs->roms_count, *opres); + } else { + opres = 0; + } + + /* + * Get the sequence ROOT elements. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ +#if 0 + int padding; +#endif + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } +#if 0 + /* Get Padding */ + padding = (8 - (pd->moved % 8)) % 8; + if(padding > 0) + ASN_DEBUG("For element %s,offset= %ld Padding bits = %d", td->name, pd->moved, padding); +#if 0 /* old way of removing padding */ + per_get_few_bits(pd, padding); +#else /* Experimental fix proposed by @mhanna123 */ + if(edx != (td->elements_count-1)) + per_get_few_bits(pd, padding); + else { + if(specs->roms_count && (padding > 0)) + ASN_DEBUG(">>>>> not skipping padding of %d bits for element:%ld out of %d", padding, edx, td->elements_count); + else + per_get_few_bits(pd, padding); + } +#endif /* dealing with padding */ +#endif + /* Deal with optionality */ + if(elm->optional) { + int present = per_get_few_bits(&opmd, 1); + ASN_DEBUG("Member %s->%s is optional, p=%d (%d->%d)", + td->name, elm->name, present, + (int)opmd.nboff, (int)opmd.nbits); + if(present == 0) { + /* This element is not present */ + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + if(elm->default_value_set(memb_ptr2)) { + FREEMEM(opres); + ASN__DECODE_FAILED; + } + ASN_DEBUG("Filled-in default"); + } + /* The member is just not present */ + continue; + } + /* Fall through */ + } + + /* Fetch the member from the stream */ + ASN_DEBUG("Decoding member \"%s\" in %s", elm->name, td->name); + + if(elm->flags & ATF_OPEN_TYPE) { + rv = OPEN_TYPE_aper_get(opt_codec_ctx, td, st, elm, pd); + } else { + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + } + if(rv.code != RC_OK) { + ASN_DEBUG("Failed decode %s in %s", + elm->name, td->name); + FREEMEM(opres); + return rv; + } + } + + /* Optionality map is not needed anymore */ + FREEMEM(opres); + + /* + * Deal with extensions. + */ + if(extpresent) { + ssize_t bmlength; + uint8_t *epres; /* Presence of extension members */ + asn_per_data_t epmd; + + bmlength = aper_get_nslength(pd); + if(bmlength < 0) ASN__DECODE_STARVED; + + ASN_DEBUG("Extensions %" ASN_PRI_SSIZE " present in %s", bmlength, td->name); + + epres = (uint8_t *)MALLOC((bmlength + 15) >> 3); + if(!epres) ASN__DECODE_STARVED; + + /* Get the extensions map */ + if(per_get_many_bits(pd, epres, 0, bmlength)) + ASN__DECODE_STARVED; + + memset(&epmd, 0, sizeof(epmd)); + epmd.buffer = epres; + epmd.nbits = bmlength; + ASN_DEBUG("Read in extensions bitmap for %s of %ld bits (%x..)", + td->name, bmlength, *epres); + + /* Deal with padding */ + if (aper_get_align(pd) < 0) + ASN__DECODE_STARVED; + + /* Go over extensions and read them in */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%ld is not extension", edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (void *)((char *)st + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + present = per_get_few_bits(&epmd, 1); + if(present <= 0) { + if(present < 0) break; /* No more extensions */ + continue; + } + + ASN_DEBUG("Decoding member %s in %s %p", elm->name, td->name, *memb_ptr2); + rv = aper_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, memb_ptr2, pd); + if(rv.code != RC_OK) { + FREEMEM(epres); + return rv; + } + } + + /* Skip over overflow extensions which aren't present + * in this system's version of the protocol */ + for(;;) { + ASN_DEBUG("Getting overflow extensions"); + switch(per_get_few_bits(&epmd, 1)) { + case -1: + break; + case 0: + continue; + default: + if(aper_open_type_skip(opt_codec_ctx, pd)) { + FREEMEM(epres); + ASN__DECODE_STARVED; + } + } + break; + } + + FREEMEM(epres); + } + + /* Fill DEFAULT members in extensions */ + for(edx = specs->roms_count; edx < specs->roms_count + + specs->aoms_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + void **memb_ptr2; /* Pointer to member pointer */ + + if(!elm->default_value_set) continue; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (void **)((char *)st + + elm->memb_offset); + if(*memb_ptr2) continue; + } else { + continue; /* Extensions are all optionals */ + } + + /* Set default value */ + if(elm->default_value_set(memb_ptr2)) { + ASN__DECODE_FAILED; + } + } + + rv.consumed = 0; + rv.code = RC_OK; + return rv; +} + +static int +SEQUENCE_handle_extensions_aper(const asn_TYPE_descriptor_t *td, + const void *sptr, + asn_per_outp_t *po1, asn_per_outp_t *po2) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + int exts_present = 0; + int exts_count = 0; + size_t edx; + + if(specs->first_extension < 0) { + return 0; + } + + /* Find out which extensions are present */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + if(!IN_EXTENSION_GROUP(specs, edx)) { + ASN_DEBUG("%s (@%ld) is not extension", elm->type->name, edx); + continue; + } + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + ASN_DEBUG("checking %s (@%ld) present => %d", + elm->type->name, edx, present); + exts_count++; + exts_present += present; + + /* Encode as presence marker */ + if(po1 && per_put_few_bits(po1, present, 1)) + return -1; + /* Encode as open type field */ + if(po2 && present && aper_open_type_put(elm->type, + elm->encoding_constraints.per_constraints, *memb_ptr2, po2)) + return -1; + + } + + return exts_present ? exts_count : 0; +} + +asn_enc_rval_t +SEQUENCE_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_SEQUENCE_specifics_t *specs + = (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_enc_rval_t er = {0,0,0}; + int n_extensions; + size_t edx; + size_t i; + + (void)constraints; + + if(!sptr) + ASN__ENCODE_FAILED; + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE (APER)", td->name); + + /* + * X.691#18.1 Whether structure is extensible + * and whether to encode extensions + */ + if(specs->first_extension < 0) { + n_extensions = 0; /* There are no extensions to encode */ + } else { + n_extensions = SEQUENCE_handle_extensions_aper(td, sptr, 0, 0); + if(n_extensions < 0) ASN__ENCODE_FAILED; + if(per_put_few_bits(po, n_extensions ? 1 : 0, 1)) { + ASN__ENCODE_FAILED; + } + } + + /* Encode a presence bitmap */ + for(i = 0; i < specs->roms_count; i++) { + asn_TYPE_member_t *elm; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + int present; + + edx = specs->oms[i]; + elm = &td->elements[edx]; + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + present = (*memb_ptr2 != 0); + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + present = 1; + } + + /* Eliminate default values */ + if(present && elm->default_value_cmp + && elm->default_value_cmp(*memb_ptr2) == 0) + present = 0; + + ASN_DEBUG("Element %s %s %s->%s is %s", + elm->flags & ATF_POINTER ? "ptr" : "inline", + elm->default_value_cmp ? "def" : "wtv", + td->name, elm->name, present ? "present" : "absent"); + if(per_put_few_bits(po, present, 1)) + ASN__ENCODE_FAILED; + } + + /* + * Encode the sequence ROOT elements. + */ + ASN_DEBUG("first_extension = %d, elements = %d", specs->first_extension, + td->elements_count); + for(edx = 0; + edx < ((specs->first_extension < 0) ? td->elements_count + : (size_t)specs->first_extension); + edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr; /* Pointer to the member */ + const void * const *memb_ptr2; /* Pointer to that pointer */ + + if(IN_EXTENSION_GROUP(specs, edx)) + continue; + + ASN_DEBUG("About to encode %s", elm->type->name); + + /* Fetch the pointer to this member */ + if(elm->flags & ATF_POINTER) { + memb_ptr2 = (const void * const *)((const char *)sptr + elm->memb_offset); + if(!*memb_ptr2) { + ASN_DEBUG("Element %s %ld not present", + elm->name, edx); + if(elm->optional) + continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + } else { + memb_ptr = (const void *)((const char *)sptr + elm->memb_offset); + memb_ptr2 = &memb_ptr; + } + + /* Eliminate default values */ + if(elm->default_value_cmp && elm->default_value_cmp(*memb_ptr2) == 0) + continue; + + ASN_DEBUG("Encoding %s->%s", td->name, elm->name); + er = elm->type->op->aper_encoder(elm->type, elm->encoding_constraints.per_constraints, + *memb_ptr2, po); + if(er.encoded == -1) + return er; + } + + /* No extensions to encode */ + if(!n_extensions) ASN__ENCODED_OK(er); + + ASN_DEBUG("Length of %d bit-map", n_extensions); + /* #18.8. Write down the presence bit-map length. */ + if(aper_put_nslength(po, n_extensions)) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Bit-map of %d elements", n_extensions); + /* #18.7. Encoding the extensions presence bit-map. */ + /* TODO: act upon NOTE in #18.7 for canonical PER */ + if(SEQUENCE_handle_extensions_aper(td, sptr, po, 0) != n_extensions) + ASN__ENCODE_FAILED; + + ASN_DEBUG("Writing %d extensions", n_extensions); + /* #18.9. Encode extensions as open type fields. */ + if(SEQUENCE_handle_extensions_aper(td, sptr, 0, po) != n_extensions) + ASN__ENCODE_FAILED; + + ASN__ENCODED_OK(er); +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +int +SEQUENCE_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + size_t edx; + + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *amemb; + const void *bmemb; + int ret; + + if(elm->flags & ATF_POINTER) { + amemb = + *(const void *const *)((const char *)aptr + elm->memb_offset); + bmemb = + *(const void *const *)((const char *)bptr + elm->memb_offset); + if(!amemb) { + if(!bmemb) continue; + if(elm->default_value_cmp + && elm->default_value_cmp(bmemb) == 0) { + /* A is absent, but B is present and equal to DEFAULT */ + continue; + } + return -1; + } else if(!bmemb) { + if(elm->default_value_cmp + && elm->default_value_cmp(amemb) == 0) { + /* B is absent, but A is present and equal to DEFAULT */ + continue; + } + return 1; + } + } else { + amemb = (const void *)((const char *)aptr + elm->memb_offset); + bmemb = (const void *)((const char *)bptr + elm->memb_offset); + } + + ret = elm->type->op->compare_struct(elm->type, amemb, bmemb); + if(ret != 0) return ret; + } + + return 0; +} + +asn_TYPE_operation_t asn_OP_SEQUENCE = { + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_compare, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + SEQUENCE_decode_oer, + SEQUENCE_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + SEQUENCE_decode_uper, + SEQUENCE_encode_uper, + SEQUENCE_decode_aper, + SEQUENCE_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + SEQUENCE_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; + + +asn_random_fill_result_t +SEQUENCE_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constr, + size_t max_length) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_random_fill_result_t result_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + void *st = *sptr; + size_t edx; + + if(max_length == 0) return result_skipped; + + (void)constr; + + if(st == NULL) { + st = CALLOC(1, specs->struct_size); + if(st == NULL) { + return result_failed; + } + } + + for(edx = 0; edx < td->elements_count; edx++) { + const asn_TYPE_member_t *elm = &td->elements[edx]; + void *memb_ptr; /* Pointer to the member */ + void **memb_ptr2; /* Pointer to that pointer */ + asn_random_fill_result_t tmpres; + + if(elm->optional && asn_random_between(0, 4) == 2) { + /* Sometimes decide not to fill the optional value */ + continue; + } + + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + memb_ptr2 = (void **)((char *)st + elm->memb_offset); + } else { + memb_ptr = (char *)st + elm->memb_offset; + memb_ptr2 = &memb_ptr; + } + + tmpres = elm->type->op->random_fill( + elm->type, memb_ptr2, &elm->encoding_constraints, + max_length > result_ok.length ? max_length - result_ok.length : 0); + switch(tmpres.code) { + case ARFILL_OK: + result_ok.length += tmpres.length; + continue; + case ARFILL_SKIPPED: + assert(!(elm->flags & ATF_POINTER) || *memb_ptr2 == NULL); + continue; + case ARFILL_FAILED: + if(st == *sptr) { + ASN_STRUCT_RESET(*td, st); + } else { + ASN_STRUCT_FREE(*td, st); + } + return tmpres; + } + } + + *sptr = st; + + return result_ok; +} + diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c new file mode 100644 index 000000000..2fff0924e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_OF.c @@ -0,0 +1,364 @@ +/*- + * Copyright (c) 2003, 2004, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The DER encoder of the SEQUENCE OF type. + */ +asn_enc_rval_t +SEQUENCE_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, + int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(ptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + asn_enc_rval_t erval = {0,0,0}; + int edx; + + ASN_DEBUG("Estimating size of SEQUENCE OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + 0, 0); + if(erval.encoded == -1) + return erval; + computed_size += erval.encoded; + } + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = der_write_tags(td, computed_size, tag_mode, 1, tag, + cb, app_key); + if(encoding_size == -1) { + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + return erval; + } + + computed_size += encoding_size; + if(!cb) { + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of SEQUENCE OF %s", td->name); + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) continue; + erval = elm->type->op->der_encoder(elm->type, memb_ptr, + 0, elm->tag, + cb, app_key); + if(erval.encoded == -1) + return erval; + encoding_size += erval.encoded; + } + + if(computed_size != (size_t)encoding_size) { + /* + * Encoded size is not equal to the computed size. + */ + erval.encoded = -1; + erval.failed_type = td; + erval.structure_ptr = ptr; + } else { + erval.encoded = computed_size; + erval.structure_ptr = 0; + erval.failed_type = 0; + } + + return erval; +} + +asn_enc_rval_t +SEQUENCE_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_sequence_ *list = _A_CSEQUENCE_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 + : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, ilevel + 1, + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + if(!xcan) ASN__TEXT_INDENT(1, ilevel + 1); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_enc_rval_t +SEQUENCE_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + const asn_TYPE_member_t *elm = td->elements; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + void *memb_ptr = list->array[edx]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->uper_encoder( + elm->type, elm->encoding_constraints.per_constraints, memb_ptr, + po); + if(er.encoded == -1) ASN__ENCODE_FAILED; + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + ASN__ENCODED_OK(er); +} + +asn_enc_rval_t +SEQUENCE_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + const asn_anonymous_sequence_ *list; + const asn_per_constraint_t *ct; + asn_enc_rval_t er = {0,0,0}; + asn_TYPE_member_t *elm = td->elements; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + list = _A_CSEQUENCE_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF size (%d) using ALIGNED PER", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = (list->count < ct->lower_bound + || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", + ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) + ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) + ASN__ENCODE_FAILED; + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ +/* if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; +*/ + if (ct->lower_bound == ct->upper_bound && ct->upper_bound < 65536) { + /* No length determinant */ + } else if (aper_put_length(po, ct->upper_bound - ct->lower_bound + 1, list->count - ct->lower_bound, 0) < 0) + ASN__ENCODE_FAILED; + } + + for(seq = -1; seq < list->count;) { + ssize_t mayEncode; + int need_eom = 0; + if(seq < 0) seq = 0; + if(ct && ct->effective_bits >= 0) { + mayEncode = list->count; + } else { + mayEncode = aper_put_length(po, -1, list->count - seq, &need_eom); + if(mayEncode < 0) ASN__ENCODE_FAILED; + } + + while(mayEncode--) { + void *memb_ptr = list->array[seq++]; + if(!memb_ptr) ASN__ENCODE_FAILED; + er = elm->type->op->aper_encoder(elm->type, + elm->encoding_constraints.per_constraints, memb_ptr, po); + if(er.encoded == -1) + ASN__ENCODE_FAILED; + } + + if(need_eom && aper_put_length(po, -1, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + ASN__ENCODED_OK(er); +} +#endif /* ASN_DISABLE_PER_SUPPORT */ + +int +SEQUENCE_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_sequence_ *a = _A_CSEQUENCE_FROM_VOID(aptr); + const asn_anonymous_sequence_ *b = _A_CSEQUENCE_FROM_VOID(bptr); + ssize_t idx; + + if(a && b) { + ssize_t common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, a->array[idx], b->array[idx]); + if(ret) return ret; + } + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} + + +asn_TYPE_operation_t asn_OP_SEQUENCE_OF = { + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_compare, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + SEQUENCE_OF_decode_xer, + SEQUENCE_OF_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + SEQUENCE_OF_decode_oer, /* Same as SET OF decoder. */ + SEQUENCE_OF_encode_oer, /* Same as SET OF encoder */ +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + SEQUENCE_OF_decode_uper, /* Same as SET OF decoder */ + SEQUENCE_OF_encode_uper, + SEQUENCE_OF_decode_aper, + SEQUENCE_OF_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + SEQUENCE_OF_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; + diff --git a/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c new file mode 100644 index 000000000..02e241365 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_SEQUENCE_oer.c @@ -0,0 +1,561 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) + +/* + * Check whether we are inside the extensions group. + */ +#define IN_EXTENSION_GROUP(specs, memb_idx) \ + ((specs)->first_extension >= 0 \ + && (unsigned)(specs)->first_extension <= (memb_idx)) + +#define IN_ROOT_GROUP_PRED(edx) \ + edx < (specs->first_extension < 0 ? td->elements_count \ + : (size_t)specs->first_extension) + +#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * Return pointer to a member. + */ +static void ** +element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return (void **)((char *)struct_ptr + elm->memb_offset); + } else { + assert(tmp_save_ptr); + *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset); + return tmp_save_ptr; + } +} + +static const void * +element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) { + if(elm->flags & ATF_POINTER) { + /* Member is a pointer to another structure */ + return *(const void *const *)((const char *)struct_ptr + + elm->memb_offset); + } else { + return (const void *)((const char *)struct_ptr + elm->memb_offset); + } +} + +asn_dec_rval_t +SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SEQUENCE_specifics_t *specs = + (const asn_SEQUENCE_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch preamble. + */ + asn_bit_data_t *preamble; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + size_t preamble_bytes = ((7 + preamble_bits) >> 3); + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name); + + ASN_DEBUG( + "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)", + preamble_bits, td->name, has_extensions_bit); + + if(preamble_bytes > size) { + ASN__DECODE_STARVED; + } + + preamble = asn_bit_data_new_contiguous(ptr, preamble_bits); + if(!preamble) { + RETURN(RC_FAIL); + } + preamble->nboff = has_extensions_bit; + ctx->ptr = preamble; + ADVANCE(preamble_bytes); + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_bit_data_t *preamble = ctx->ptr; + size_t edx; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name); + + assert(preamble); + + for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx); + edx++, ctx->step = (ctx->step & ~1) + 2) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + ASN_DEBUG("Decoding %s->%s", td->name, elm->name); + + assert(!IN_EXTENSION_GROUP(specs, edx)); + + if(ctx->step & 1) { + goto microphase2_decode_continues; + } + + + if(elm->optional) { + int32_t present = asn_get_few_bits(preamble, 1); + if(present < 0) { + ASN_DEBUG("Presence map ended prematurely: %d", present); + RETURN(RC_FAIL); + } else if(present == 0) { + if(elm->default_value_set) { + /* Fill-in DEFAULT */ + void *tmp; + if(elm->default_value_set( + element_ptrptr(st, elm, &tmp))) { + RETURN(RC_FAIL); + } + } + /* The member is not present. */ + continue; + } + /* Present OPTIONAL or DEFAULT component. */ + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2_decode_continues: + if(elm->flags & ATF_OPEN_TYPE) { + rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size); + } else { + void *save_memb_ptr; /* Temporary reference. */ + void **memb_ptr2; /* Pointer to a pointer to a memmber */ + + memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr); + + rval = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, memb_ptr2, ptr, + size); + } + switch(rval.code) { + case RC_OK: + ADVANCE(rval.consumed); + break; + case RC_WMORE: + ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name, + elm->name); + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + case RC_FAIL: + ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name, + elm->name); + RETURN(RC_FAIL); + } + } /* for(all root members) */ + + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 2: + assert(ctx->ptr); + { + /* Cleanup preamble. */ + asn_bit_data_t *preamble = ctx->ptr; + asn_bit_data_t *extadds; + int has_extensions_bit = (specs->first_extension >= 0); + int extensions_present = + has_extensions_bit + && (preamble->buffer == NULL + || (((const uint8_t *)preamble->buffer)[0] & 0x80)); + uint8_t unused_bits; + size_t len = 0; + ssize_t len_len; + + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name); + + preamble->buffer = 0; /* Will do extensions_present==1 next time. */ + + if(!extensions_present) { + ctx->phase = 10; + RETURN(RC_OK); + } + + /* + * X.696 (08/2015) #16.1 (c), #16.4 + * Read in the extension addition presence bitmap. + */ + + len_len = oer_fetch_length(ptr, size, &len); + if(len_len > 0) { + ADVANCE(len_len); + } else if(len_len < 0) { + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + + if(len == 0) { + /* 16.4.1-2 */ + RETURN(RC_FAIL); + } else if(len > size) { + RETURN(RC_WMORE); + } + + /* Account for unused bits */ + unused_bits = 0x7 & *(const uint8_t *)ptr; + ADVANCE(1); + len--; + if(unused_bits && len == 0) { + RETURN(RC_FAIL); + } + + /* Get the extensions map */ + extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits); + if(!extadds) { + RETURN(RC_FAIL); + } + FREEMEM(preamble); + ctx->ptr = extadds; + ADVANCE(len); + } + NEXT_PHASE(ctx); + ctx->step = + (specs->first_extension < 0 ? td->elements_count + : (size_t)specs->first_extension); + /* Fall through */ + case 3: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name); + for(; ctx->step < (signed)td->elements_count; ctx->step++) { + asn_bit_data_t *extadds = ctx->ptr; + size_t edx = ctx->step; + asn_TYPE_member_t *elm = &td->elements[edx]; + void *tmp_memb_ptr; + void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr); + + switch(asn_get_few_bits(extadds, 1)) { + case -1: + /* + * Not every one of our extensions is known to the remote side. + * Continue filling in their defaults though. + */ + /* Fall through */ + case 0: + /* Fill-in DEFAULT */ + if(elm->default_value_set + && elm->default_value_set(memb_ptr2)) { + RETURN(RC_FAIL); + } + continue; + case 1: { + /* Read OER open type */ + ssize_t ot_size = + oer_open_type_get(opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, + memb_ptr2, ptr, size); + assert(ot_size <= (ssize_t)size); + if(ot_size > 0) { + ADVANCE(ot_size); + } else if(ot_size < 0) { + RETURN(RC_FAIL); + } else { + /* Roll back open type parsing */ + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + break; + } + default: + RETURN(RC_FAIL); + } + } + + NEXT_PHASE(ctx); + /* Fall through */ + case 4: + ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name); + /* Read in the rest of Open Types while ignoring them */ + for(;;) { + asn_bit_data_t *extadds = ctx->ptr; + switch(asn_get_few_bits(extadds, 1)) { + case 0: + continue; + case 1: { + ssize_t skipped = oer_open_type_skip(ptr, size); + if(skipped > 0) { + ADVANCE(skipped); + } else if(skipped < 0) { + RETURN(RC_FAIL); + } else { + asn_get_undo(extadds, 1); + RETURN(RC_WMORE); + } + continue; + } + case -1: + /* No more Open Type encoded components */ + break; + default: + RETURN(RC_FAIL); + } + break; + } + } + + RETURN(RC_OK); +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics; + size_t computed_size = 0; + int has_extensions_bit = (specs->first_extension >= 0); + size_t preamble_bits = (has_extensions_bit + specs->roms_count); + uint32_t has_extensions = 0; + size_t edx; + int ret; + + (void)constraints; + + if(preamble_bits) { + asn_bit_outp_t preamble; + + memset(&preamble, 0, sizeof(preamble)); + preamble.output = cb; + preamble.op_key = app_key; + + if(has_extensions_bit) { + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default values in extensions */ + } else { + has_extensions = 1; + break; + } + } + } + ret = asn_put_few_bits(&preamble, has_extensions, 1); + assert(ret == 0); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Encode optional components bitmap. + */ + if(specs->roms_count) { + FOR_IN_ROOT_GROUP(edx) { + asn_TYPE_member_t *elm = &td->elements[edx]; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + if(elm->optional) { + const void *memb_ptr = element_ptr(sptr, elm); + uint32_t has_component = memb_ptr != NULL; + if(has_component && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + has_component = 0; + } + ret = asn_put_few_bits(&preamble, has_component, 1); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + } + } + } + + asn_put_aligned_flush(&preamble); + computed_size += preamble.flushed_bytes; + } /* if(preamble_bits) */ + + /* + * Put root components and extensions root. + */ + for(edx = 0; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + asn_enc_rval_t er = {0,0,0}; + const void *memb_ptr; + + if(IN_EXTENSION_GROUP(specs, edx)) break; + + memb_ptr = element_ptr(sptr, elm); + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Skip default values in encoding */ + continue; + } + } else { + if(elm->optional) continue; + /* Mandatory element is missing */ + ASN__ENCODE_FAILED; + } + if(!elm->type->op->oer_encoder) { + ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name); + ASN__ENCODE_FAILED; + } + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded == -1) { + ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name, + elm->name); + return er; + } + computed_size += er.encoded; + } + + /* + * Before encode extensions, encode extensions additions presence bitmap + # X.696 (08/2015) #16.4. + */ + if(has_extensions) { + asn_bit_outp_t extadds; + + /* Special case allowing us to use exactly one byte for #8.6 */ + size_t aoms_length_bits = specs->aoms_count; + size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3; + uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07)); + + assert(1 + aoms_length_bytes <= 127); + + memset(&extadds, 0, sizeof(extadds)); + extadds.output = cb; + extadds.op_key = app_key; + + /* #8.6 length determinant */ + ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Number of unused bytes, #16.4.2 */ + ret = asn_put_few_bits(&extadds, unused_bits, 8); + if(ret < 0) ASN__ENCODE_FAILED; + + /* Encode presence bitmap #16.4.3 */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + if(memb_ptr && elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + memb_ptr = 0; /* Do not encode default value. */ + } + ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1); + } + if(ret < 0) ASN__ENCODE_FAILED; + + asn_put_aligned_flush(&extadds); + computed_size += extadds.flushed_bytes; + + /* Now, encode extensions */ + for(edx = specs->first_extension; edx < td->elements_count; edx++) { + asn_TYPE_member_t *elm = &td->elements[edx]; + const void *memb_ptr = element_ptr(sptr, elm); + + if(memb_ptr) { + if(elm->default_value_cmp + && elm->default_value_cmp(memb_ptr) == 0) { + /* Do not encode default value. */ + } else { + ssize_t wrote = oer_open_type_put( + elm->type, elm->encoding_constraints.oer_constraints, + memb_ptr, cb, app_key); + if(wrote == -1) { + ASN__ENCODE_FAILED; + } + computed_size += wrote; + } + } else if(!elm->optional) { + ASN__ENCODE_FAILED; + } + } + } /* if(has_extensions) */ + + + { + asn_enc_rval_t er = {0, 0, 0}; + er.encoded = computed_size; + ASN__ENCODED_OK(er); + } +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c b/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c new file mode 100644 index 000000000..f07bcb8d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_SET_OF.c @@ -0,0 +1,1539 @@ +/* + * Copyright (c) 2003-2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Number of bytes left for this structure. + * (ctx->left) indicates the number of bytes _transferred_ for the structure. + * (size) contains the number of bytes in the buffer passed. + */ +#define LEFT ((size<(size_t)ctx->left)?size:(size_t)ctx->left) + +/* + * If the subprocessor function returns with an indication that it wants + * more data, it may well be a fatal decoding problem, because the + * size is constrained by the 's L, even if the buffer size allows + * reading more data. + * For example, consider the buffer containing the following TLVs: + * ... + * The TLV length clearly indicates that one byte is expected in V, but + * if the V processor returns with "want more data" even if the buffer + * contains way more data than the V processor have seen. + */ +#define SIZE_VIOLATION (ctx->left >= 0 && (size_t)ctx->left <= size) + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num;\ + size -= num; \ + if(ctx->left >= 0) \ + ctx->left -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#undef PHASE_OUT +#define NEXT_PHASE(ctx) do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#define PHASE_OUT(ctx) do { ctx->phase = 10; } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself;\ + return rval; \ + } while(0) + +/* + * The decoder of the SET OF type. + */ +asn_dec_rval_t +SET_OF_decode_ber(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *ptr, size_t size, int tag_mode) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + + /* + * Parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + ber_tlv_tag_t tlv_tag; /* T from TLV */ + asn_dec_rval_t rval; /* Return code from subparsers */ + + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + ASN_DEBUG("Decoding %s as SET OF", td->name); + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously + */ + switch(ctx->phase) { + case 0: + /* + * PHASE 0. + * Check that the set of tags associated with given structure + * perfectly fits our expectations. + */ + + rval = ber_check_tags(opt_codec_ctx, td, ctx, ptr, size, + tag_mode, 1, &ctx->left, 0); + if(rval.code != RC_OK) { + ASN_DEBUG("%s tagging check failed: %d", + td->name, rval.code); + return rval; + } + + if(ctx->left >= 0) + ctx->left += rval.consumed; /* ?Subtracted below! */ + ADVANCE(rval.consumed); + + ASN_DEBUG("Structure consumes %ld bytes, " + "buffer %ld", (long)ctx->left, (long)size); + + NEXT_PHASE(ctx); + /* Fall through */ + case 1: + /* + * PHASE 1. + * From the place where we've left it previously, + * try to decode the next item. + */ + for(;; ctx->step = 0) { + ssize_t tag_len; /* Length of TLV's T */ + + if(ctx->step & 1) + goto microphase2; + + /* + * MICROPHASE 1: Synchronize decoding. + */ + + if(ctx->left == 0) { + ASN_DEBUG("End of SET OF %s", td->name); + /* + * No more things to decode. + * Exit out of here. + */ + PHASE_OUT(ctx); + RETURN(RC_OK); + } + + /* + * Fetch the T from TLV. + */ + tag_len = ber_fetch_tag(ptr, LEFT, &tlv_tag); + switch(tag_len) { + case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE); + /* Fall through */ + case -1: RETURN(RC_FAIL); + } + + if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) { + if(LEFT < 2) { + if(SIZE_VIOLATION) + RETURN(RC_FAIL); + else + RETURN(RC_WMORE); + } else if(((const uint8_t *)ptr)[1] == 0) { + /* + * Found the terminator of the + * indefinite length structure. + */ + break; + } + } + + /* Outmost tag may be unknown and cannot be fetched/compared */ + if(elm->tag != (ber_tlv_tag_t)-1) { + if(BER_TAGS_EQUAL(tlv_tag, elm->tag)) { + /* + * The new list member of expected type has arrived. + */ + } else { + ASN_DEBUG("Unexpected tag %s fixed SET OF %s", + ber_tlv_tag_string(tlv_tag), td->name); + ASN_DEBUG("%s SET OF has tag %s", + td->name, ber_tlv_tag_string(elm->tag)); + RETURN(RC_FAIL); + } + } + + /* + * MICROPHASE 2: Invoke the member-specific decoder. + */ + ctx->step |= 1; /* Confirm entering next microphase */ + microphase2: + + /* + * Invoke the member fetch routine according to member's type + */ + rval = elm->type->op->ber_decoder(opt_codec_ctx, + elm->type, &ctx->ptr, ptr, LEFT, 0); + ASN_DEBUG("In %s SET OF %s code %d consumed %d", + td->name, elm->type->name, + rval.code, (int)rval.consumed); + switch(rval.code) { + case RC_OK: + { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + else + ctx->ptr = 0; + } + break; + case RC_WMORE: /* More data expected */ + if(!SIZE_VIOLATION) { + ADVANCE(rval.consumed); + RETURN(RC_WMORE); + } + /* Fall through */ + case RC_FAIL: /* Fatal error */ + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + RETURN(RC_FAIL); + } /* switch(rval) */ + + ADVANCE(rval.consumed); + } /* for(all list members) */ + + NEXT_PHASE(ctx); + case 2: + /* + * Read in all "end of content" TLVs. + */ + while(ctx->left < 0) { + if(LEFT < 2) { + if(LEFT > 0 && ((const char *)ptr)[0] != 0) { + /* Unexpected tag */ + RETURN(RC_FAIL); + } else { + RETURN(RC_WMORE); + } + } + if(((const char *)ptr)[0] == 0 + && ((const char *)ptr)[1] == 0) { + ADVANCE(2); + ctx->left++; + } else { + RETURN(RC_FAIL); + } + } + + PHASE_OUT(ctx); + } + + RETURN(RC_OK); +} + +/* + * Internally visible buffer holding a single encoded element. + */ +struct _el_buffer { + uint8_t *buf; + size_t length; + size_t allocated_size; + unsigned bits_unused; +}; +/* Append bytes to the above structure */ +static int _el_addbytes(const void *buffer, size_t size, void *el_buf_ptr) { + struct _el_buffer *el_buf = (struct _el_buffer *)el_buf_ptr; + + if(el_buf->length + size > el_buf->allocated_size) { + size_t new_size = el_buf->allocated_size ? el_buf->allocated_size : 8; + void *p; + + do { + new_size <<= 2; + } while(el_buf->length + size > new_size); + + p = REALLOC(el_buf->buf, new_size); + if(p) { + el_buf->buf = p; + el_buf->allocated_size = new_size; + } else { + return -1; + } + } + + memcpy(el_buf->buf + el_buf->length, buffer, size); + + el_buf->length += size; + return 0; +} + +static void assert_unused_bits(const struct _el_buffer* p) { + if(p->length) { + assert((p->buf[p->length-1] & ~(0xff << p->bits_unused)) == 0); + } else { + assert(p->bits_unused == 0); + } +} + +static int _el_buf_cmp(const void *ap, const void *bp) { + const struct _el_buffer *a = (const struct _el_buffer *)ap; + const struct _el_buffer *b = (const struct _el_buffer *)bp; + size_t common_len; + int ret = 0; + + if(a->length < b->length) + common_len = a->length; + else + common_len = b->length; + + if (a->buf && b->buf) { + ret = memcmp(a->buf, b->buf, common_len); + } + if(ret == 0) { + if(a->length < b->length) + ret = -1; + else if(a->length > b->length) + ret = 1; + /* Ignore unused bits. */ + assert_unused_bits(a); + assert_unused_bits(b); + } + + return ret; +} + +static void +SET_OF__encode_sorted_free(struct _el_buffer *el_buf, size_t count) { + size_t i; + + for(i = 0; i < count; i++) { + FREEMEM(el_buf[i].buf); + } + + FREEMEM(el_buf); +} + +enum SET_OF__encode_method { + SOES_DER, /* Distinguished Encoding Rules */ + SOES_CUPER, /* Canonical Unaligned Packed Encoding Rules */ + SOES_CAPER /* Canonical Aligned Packed Encoding Rules */ +}; + +static struct _el_buffer * +SET_OF__encode_sorted(const asn_TYPE_member_t *elm, + const asn_anonymous_set_ *list, + enum SET_OF__encode_method method) { + struct _el_buffer *encoded_els; + int edx; + + encoded_els = + (struct _el_buffer *)CALLOC(list->count, sizeof(encoded_els[0])); + if(encoded_els == NULL) { + return NULL; + } + + /* + * Encode all members. + */ + for(edx = 0; edx < list->count; edx++) { + const void *memb_ptr = list->array[edx]; + struct _el_buffer *encoding_el = &encoded_els[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) break; + + /* + * Encode the member into the prepared space. + */ + switch(method) { + case SOES_DER: + erval = elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, + _el_addbytes, encoding_el); + break; + case SOES_CUPER: + erval = uper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + break; + case SOES_CAPER: + erval = aper_encode(elm->type, + elm->encoding_constraints.per_constraints, + memb_ptr, _el_addbytes, encoding_el); + + if(erval.encoded != -1) { + size_t extra_bits = erval.encoded % 8; + assert(encoding_el->length == (size_t)(erval.encoded + 7) / 8); + encoding_el->bits_unused = (8 - extra_bits) & 0x7; + } + + break; + + default: + assert(!"Unreachable"); + break; + } + if(erval.encoded < 0) break; + } + + if(edx == list->count) { + /* + * Sort the encoded elements according to their encoding. + */ + qsort(encoded_els, list->count, sizeof(encoded_els[0]), _el_buf_cmp); + + return encoded_els; + } else { + SET_OF__encode_sorted_free(encoded_els, edx); + return NULL; + } +} + + +/* + * The DER encoder of the SET OF type. + */ +asn_enc_rval_t +SET_OF_encode_der(const asn_TYPE_descriptor_t *td, const void *sptr, + int tag_mode, ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, + void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + size_t computed_size = 0; + ssize_t encoding_size = 0; + struct _el_buffer *encoded_els; + int edx; + + ASN_DEBUG("Estimating size for SET OF %s", td->name); + + /* + * Gather the length of the underlying members sequence. + */ + for(edx = 0; edx < list->count; edx++) { + void *memb_ptr = list->array[edx]; + asn_enc_rval_t erval = {0,0,0}; + + if(!memb_ptr) ASN__ENCODE_FAILED; + + erval = + elm->type->op->der_encoder(elm->type, memb_ptr, 0, elm->tag, 0, 0); + if(erval.encoded == -1) return erval; + computed_size += erval.encoded; + } + + + /* + * Encode the TLV for the sequence itself. + */ + encoding_size = + der_write_tags(td, computed_size, tag_mode, 1, tag, cb, app_key); + if(encoding_size < 0) { + ASN__ENCODE_FAILED; + } + computed_size += encoding_size; + + if(!cb || list->count == 0) { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } + + ASN_DEBUG("Encoding members of %s SET OF", td->name); + + /* + * DER mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the + * encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_DER); + + /* + * Report encoded elements to the application. + * Dispose of temporary sorted members table. + */ + for(edx = 0; edx < list->count; edx++) { + struct _el_buffer *encoded_el = &encoded_els[edx]; + /* Report encoded chunks to the application */ + if(cb(encoded_el->buf, encoded_el->length, app_key) < 0) { + break; + } else { + encoding_size += encoded_el->length; + } + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if(edx == list->count) { + asn_enc_rval_t erval = {0,0,0}; + assert(computed_size == (size_t)encoding_size); + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } else { + ASN__ENCODE_FAILED; + } +} + +#undef XER_ADVANCE +#define XER_ADVANCE(num_bytes) do { \ + size_t num = num_bytes; \ + buf_ptr = ((const char *)buf_ptr) + num;\ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Decode the XER (XML) data. + */ +asn_dec_rval_t +SET_OF_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const char *opt_mname, const void *buf_ptr, size_t size) { + /* + * Bring closer parts of structure description. + */ + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *element = td->elements; + const char *elm_tag; + const char *xml_tag = opt_mname ? opt_mname : td->xml_tag; + + /* + * ... and parts of the structure being constructed. + */ + void *st = *struct_ptr; /* Target structure. */ + asn_struct_ctx_t *ctx; /* Decoder context */ + + asn_dec_rval_t rval = {RC_OK, 0};/* Return value from a decoder */ + ssize_t consumed_myself = 0; /* Consumed bytes from ptr */ + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) RETURN(RC_FAIL); + } + + /* Which tag is expected for the downstream */ + if(specs->as_XMLValueList) { + elm_tag = (specs->as_XMLValueList == 1) ? 0 : ""; + } else { + elm_tag = (*element->name) + ? element->name : element->type->xml_tag; + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + * Phase 2: Processing inner type. + */ + for(; ctx->phase <= 2;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Go inside the inner member of a set. + */ + if(ctx->phase == 2) { + asn_dec_rval_t tmprval = {RC_OK, 0}; + + /* Invoke the inner type decoder, m.b. multiple times */ + ASN_DEBUG("XER/SET OF element [%s]", elm_tag); + tmprval = element->type->op->xer_decoder(opt_codec_ctx, + element->type, &ctx->ptr, elm_tag, + buf_ptr, size); + if(tmprval.code == RC_OK) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + if(ASN_SET_ADD(list, ctx->ptr) != 0) + RETURN(RC_FAIL); + ctx->ptr = 0; + XER_ADVANCE(tmprval.consumed); + } else { + XER_ADVANCE(tmprval.consumed); + RETURN(tmprval.code); + } + ctx->phase = 1; /* Back to body processing */ + ASN_DEBUG("XER/SET OF phase => %d", ctx->phase); + /* Fall through */ + } + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, + buf_ptr, size, &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + case PXER_TEXT: /* Ignore free-standing text */ + XER_ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + ASN_DEBUG("XER/SET OF: tcv = %d, ph=%d t=%s", + tcv, ctx->phase, xml_tag); + switch(tcv) { + case XCT_CLOSING: + if(ctx->phase == 0) break; + ctx->phase = 0; + /* Fall through */ + case XCT_BOTH: + if(ctx->phase == 0) { + /* No more things to decode */ + XER_ADVANCE(ch_size); + ctx->phase = 3; /* Phase out */ + RETURN(RC_OK); + } + /* Fall through */ + case XCT_OPENING: + if(ctx->phase == 0) { + XER_ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + } + /* Fall through */ + case XCT_UNKNOWN_OP: + case XCT_UNKNOWN_BO: + + ASN_DEBUG("XER/SET OF: tcv=%d, ph=%d", tcv, ctx->phase); + if(ctx->phase == 1) { + /* + * Process a single possible member. + */ + ctx->phase = 2; + continue; + } + /* Fall through */ + default: + break; + } + + ASN_DEBUG("Unexpected XML tag in SET OF"); + break; + } + + ctx->phase = 3; /* "Phase out" on hard failure */ + RETURN(RC_FAIL); +} + + + +typedef struct xer_tmp_enc_s { + void *buffer; + size_t offset; + size_t size; +} xer_tmp_enc_t; +static int +SET_OF_encode_xer_callback(const void *buffer, size_t size, void *key) { + xer_tmp_enc_t *t = (xer_tmp_enc_t *)key; + if(t->offset + size >= t->size) { + size_t newsize = (t->size << 2) + size; + void *p = REALLOC(t->buffer, newsize); + if(!p) return -1; + t->buffer = p; + t->size = newsize; + } + memcpy((char *)t->buffer + t->offset, buffer, size); + t->offset += size; + return 0; +} +static int +SET_OF_xer_order(const void *aptr, const void *bptr) { + const xer_tmp_enc_t *a = (const xer_tmp_enc_t *)aptr; + const xer_tmp_enc_t *b = (const xer_tmp_enc_t *)bptr; + size_t minlen = a->offset; + int ret; + if(b->offset < minlen) minlen = b->offset; + /* Well-formed UTF-8 has this nice lexicographical property... */ + ret = memcmp(a->buffer, b->buffer, minlen); + if(ret != 0) return ret; + if(a->offset == b->offset) + return 0; + if(a->offset == minlen) + return -1; + return 1; +} + + +asn_enc_rval_t +SET_OF_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0,0,0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + const char *mname = specs->as_XMLValueList + ? 0 : ((*elm->name) ? elm->name : elm->type->xml_tag); + size_t mlen = mname ? strlen(mname) : 0; + int xcan = (flags & XER_F_CANONICAL); + xer_tmp_enc_t *encs = 0; + size_t encs_count = 0; + void *original_app_key = app_key; + asn_app_consume_bytes_f *original_cb = cb; + int i; + + if(!sptr) ASN__ENCODE_FAILED; + + if(xcan) { + encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); + if(!encs) ASN__ENCODE_FAILED; + cb = SET_OF_encode_xer_callback; + } + + er.encoded = 0; + + for(i = 0; i < list->count; i++) { + asn_enc_rval_t tmper = {0,0,0}; + + void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + if(encs) { + memset(&encs[encs_count], 0, sizeof(encs[0])); + app_key = &encs[encs_count]; + encs_count++; + } + + if(mname) { + if(!xcan) ASN__TEXT_INDENT(1, ilevel); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + } + + if(!xcan && specs->as_XMLValueList == 1) + ASN__TEXT_INDENT(1, ilevel + 1); + tmper = elm->type->op->xer_encoder(elm->type, memb_ptr, + ilevel + (specs->as_XMLValueList != 2), + flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + if(tmper.encoded == 0 && specs->as_XMLValueList) { + const char *name = elm->type->xml_tag; + size_t len = strlen(name); + ASN__CALLBACK3("<", 1, name, len, "/>", 2); + } + + if(mname) { + ASN__CALLBACK3("", 1); + } + + } + + if(!xcan) ASN__TEXT_INDENT(1, ilevel - 1); + + if(encs) { + xer_tmp_enc_t *enc = encs; + xer_tmp_enc_t *end = encs + encs_count; + ssize_t control_size = 0; + + er.encoded = 0; + cb = original_cb; + app_key = original_app_key; + qsort(encs, encs_count, sizeof(encs[0]), SET_OF_xer_order); + + for(; enc < end; enc++) { + ASN__CALLBACK(enc->buffer, enc->offset); + FREEMEM(enc->buffer); + enc->buffer = 0; + control_size += enc->offset; + } + assert(control_size == er.encoded); + } + + goto cleanup; +cb_failed: + ASN__ENCODE_FAILED; +cleanup: + if(encs) { + size_t n; + for(n = 0; n < encs_count; n++) { + FREEMEM(encs[n].buffer); + } + FREEMEM(encs); + } + ASN__ENCODED_OK(er); +} + +int +SET_OF_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_TYPE_member_t *elm = td->elements; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int ret; + int i; + + if(!sptr) return (cb("", 8, app_key) < 0) ? -1 : 0; + + /* Dump preamble */ + if(cb(td->name, strlen(td->name), app_key) < 0 + || cb(" ::= {", 6, app_key) < 0) + return -1; + + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + if(!memb_ptr) continue; + + _i_INDENT(1); + + ret = elm->type->op->print_struct(elm->type, memb_ptr, + ilevel + 1, cb, app_key); + if(ret) return ret; + } + + ilevel--; + _i_INDENT(1); + + return (cb("}", 1, app_key) < 0) ? -1 : 0; +} + +void +SET_OF_free(const asn_TYPE_descriptor_t *td, void *ptr, + enum asn_struct_free_method method) { + if(td && ptr) { + const asn_SET_OF_specifics_t *specs; + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(ptr); + asn_struct_ctx_t *ctx; /* Decoder context */ + int i; + + /* + * Could not use set_of_empty() because of (*free) + * incompatibility. + */ + for(i = 0; i < list->count; i++) { + void *memb_ptr = list->array[i]; + if(memb_ptr) + ASN_STRUCT_FREE(*elm->type, memb_ptr); + } + list->count = 0; /* No meaningful elements left */ + + asn_set_empty(list); /* Remove (list->array) */ + + specs = (const asn_SET_OF_specifics_t *)td->specifics; + ctx = (asn_struct_ctx_t *)((char *)ptr + specs->ctx_offset); + if(ctx->ptr) { + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + } + + switch(method) { + case ASFM_FREE_EVERYTHING: + FREEMEM(ptr); + break; + case ASFM_FREE_UNDERLYING: + break; + case ASFM_FREE_UNDERLYING_AND_RESET: + memset(ptr, 0, specs->struct_size); + break; + } + } +} + +int +SET_OF_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const asn_TYPE_member_t *elm = td->elements; + asn_constr_check_f *constr; + const asn_anonymous_set_ *list = _A_CSET_FROM_VOID(sptr); + int i; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + constr = elm->encoding_constraints.general_constraints; + if(!constr) constr = elm->type->encoding_constraints.general_constraints; + + /* + * Iterate over the members of an array. + * Validate each in turn, until one fails. + */ + for(i = 0; i < list->count; i++) { + const void *memb_ptr = list->array[i]; + int ret; + + if(!memb_ptr) continue; + + ret = constr(elm->type, memb_ptr, ctfailcb, app_key); + if(ret) return ret; + } + + return 0; +} + +#ifndef ASN_DISABLE_PER_SUPPORT + +asn_dec_rval_t +SET_OF_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = per_get_few_bits(pd, ct->effective_bits); + ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", + (long)nelems, ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + nelems = uper_get_length(pd, -1, 0, &repeat); + ASN_DEBUG("Got to decode %" ASN_PRI_SSIZE " elements (eff %d)", + nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->uper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) { + if(rv.consumed == 0 && nelems > 200) { + /* Protect from SET OF NULL compression bombs. */ + ASN__DECODE_FAILED; + } + continue; + } + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +asn_enc_rval_t +SET_OF_encode_uper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + size_t encoded_edx; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SEQUENCE OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED; + } else if(list->count == 0) { + /* When the list is empty add only the length determinant + * X.691, #20.6 and #11.9.4.1 + */ + if (uper_put_length(po, 0, 0)) { + ASN__ENCODE_FAILED; + } + ASN__ENCODED_OK(er); + } + + + /* + * Canonical UPER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CUPER); + + for(encoded_edx = 0; (ssize_t)encoded_edx < list->count;) { + ssize_t may_encode; + size_t edx; + int need_eom = 0; + + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + uper_put_length(po, list->count - encoded_edx, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + for(edx = encoded_edx; edx < encoded_edx + may_encode; edx++) { + const struct _el_buffer *el = &encoded_els[edx]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + + if(need_eom && uper_put_length(po, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + + encoded_edx += may_encode; + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + if((ssize_t)encoded_edx == list->count) { + ASN__ENCODED_OK(er); + } else { + ASN__ENCODE_FAILED; + } +} + +asn_enc_rval_t +SET_OF_encode_aper(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + const asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + const asn_TYPE_member_t *elm = td->elements; + struct _el_buffer *encoded_els; + asn_enc_rval_t er = {0,0,0}; + int seq; + + if(!sptr) ASN__ENCODE_FAILED; + + list = _A_CSET_FROM_VOID(sptr); + + er.encoded = 0; + + ASN_DEBUG("Encoding %s as SET OF (%d)", td->name, list->count); + + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + /* If extensible constraint, check if size is in root */ + if(ct) { + int not_in_root = + (list->count < ct->lower_bound || list->count > ct->upper_bound); + ASN_DEBUG("lb %ld ub %ld %s", ct->lower_bound, ct->upper_bound, + ct->flags & APC_EXTENSIBLE ? "ext" : "fix"); + if(ct->flags & APC_EXTENSIBLE) { + /* Declare whether size is in extension root */ + if(per_put_few_bits(po, not_in_root, 1)) ASN__ENCODE_FAILED; + if(not_in_root) ct = 0; + } else if(not_in_root && ct->effective_bits >= 0) { + ASN__ENCODE_FAILED; + } + + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + /*if(per_put_few_bits(po, list->count - ct->lower_bound, + ct->effective_bits)) + ASN__ENCODE_FAILED;*/ + + if (aper_put_length(po, ct->upper_bound - ct->lower_bound + 1, list->count - ct->lower_bound, 0) < 0) { + ASN__ENCODE_FAILED; + } + } + + /* + * Canonical PER #22.1 mandates dynamic sorting of the SET OF elements + * according to their encodings. Build an array of the encoded elements. + */ + encoded_els = SET_OF__encode_sorted(elm, list, SOES_CAPER); + + for(seq = 0; seq < list->count;) { + ssize_t may_encode; + int need_eom = 0; + if(ct && ct->effective_bits >= 0) { + may_encode = list->count; + } else { + may_encode = + aper_put_length(po, -1, list->count - seq, &need_eom); + if(may_encode < 0) ASN__ENCODE_FAILED; + } + + while(may_encode--) { + const struct _el_buffer *el = &encoded_els[seq++]; + if(asn_put_many_bits(po, el->buf, + (8 * el->length) - el->bits_unused) < 0) { + break; + } + } + if(need_eom && aper_put_length(po, -1, 0, 0)) + ASN__ENCODE_FAILED; /* End of Message length */ + } + + SET_OF__encode_sorted_free(encoded_els, list->count); + + ASN__ENCODED_OK(er); +} + +asn_dec_rval_t +SET_OF_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv = {RC_OK, 0}; + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + const asn_TYPE_member_t *elm = td->elements; /* Single one */ + void *st = *sptr; + asn_anonymous_set_ *list; + const asn_per_constraint_t *ct; + int repeat = 0; + ssize_t nelems; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(!st) { + st = *sptr = CALLOC(1, specs->struct_size); + if(!st) ASN__DECODE_FAILED; + } + list = _A_SET_FROM_VOID(st); + + /* Figure out which constraints to use */ + if(constraints) ct = &constraints->size; + else if(td->encoding_constraints.per_constraints) + ct = &td->encoding_constraints.per_constraints->size; + else ct = 0; + + if(ct && ct->flags & APC_EXTENSIBLE) { + int value = per_get_few_bits(pd, 1); + if(value < 0) ASN__DECODE_STARVED; + if(value) ct = 0; /* Not restricted! */ + } + + if(ct && ct->effective_bits >= 0) { + /* X.691, #19.5: No length determinant */ + nelems = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1); + ASN_DEBUG("Preparing to fetch %ld+%ld elements from %s", + (long)nelems, ct->lower_bound, td->name); + if(nelems < 0) ASN__DECODE_STARVED; + nelems += ct->lower_bound; + } else { + nelems = -1; + } + + do { + int i; + if(nelems < 0) { + nelems = aper_get_length(pd, ct ? ct->upper_bound - ct->lower_bound + 1 : -1, + ct ? ct->effective_bits : -1, &repeat); + ASN_DEBUG("Got to decode %d elements (eff %d)", + (int)nelems, (int)(ct ? ct->effective_bits : -1)); + if(nelems < 0) ASN__DECODE_STARVED; + } + + for(i = 0; i < nelems; i++) { + void *ptr = 0; + ASN_DEBUG("SET OF %s decoding", elm->type->name); + rv = elm->type->op->aper_decoder(opt_codec_ctx, elm->type, + elm->encoding_constraints.per_constraints, &ptr, pd); + ASN_DEBUG("%s SET OF %s decoded %d, %p", + td->name, elm->type->name, rv.code, ptr); + if(rv.code == RC_OK) { + if(ASN_SET_ADD(list, ptr) == 0) + continue; + ASN_DEBUG("Failed to add element into %s", + td->name); + /* Fall through */ + rv.code = RC_FAIL; + } else { + ASN_DEBUG("Failed decoding %s of %s (SET OF)", + elm->type->name, td->name); + } + if(ptr) ASN_STRUCT_FREE(*elm->type, ptr); + return rv; + } + + nelems = -1; /* Allow uper_get_length() */ + } while(repeat); + + ASN_DEBUG("Decoded %s as SET OF", td->name); + + rv.code = RC_OK; + rv.consumed = 0; + return rv; +} + +#endif /* ASN_DISABLE_PER_SUPPORT */ + +struct comparable_ptr { + const asn_TYPE_descriptor_t *td; + const void *sptr; +}; + +static int +SET_OF__compare_cb(const void *aptr, const void *bptr) { + const struct comparable_ptr *a = aptr; + const struct comparable_ptr *b = bptr; + assert(a->td == b->td); + return a->td->op->compare_struct(a->td, a->sptr, b->sptr); +} + +int +SET_OF_compare(const asn_TYPE_descriptor_t *td, const void *aptr, + const void *bptr) { + const asn_anonymous_set_ *a = _A_CSET_FROM_VOID(aptr); + const asn_anonymous_set_ *b = _A_CSET_FROM_VOID(bptr); + + if(a && b) { + struct comparable_ptr *asorted; + struct comparable_ptr *bsorted; + ssize_t common_length; + ssize_t idx; + + if(a->count == 0) { + if(b->count) return -1; + return 0; + } else if(b->count == 0) { + return 1; + } + + asorted = MALLOC(a->count * sizeof(asorted[0])); + bsorted = MALLOC(b->count * sizeof(bsorted[0])); + if(!asorted || !bsorted) { + FREEMEM(asorted); + FREEMEM(bsorted); + return -1; + } + + for(idx = 0; idx < a->count; idx++) { + asorted[idx].td = td->elements->type; + asorted[idx].sptr = a->array[idx]; + } + + for(idx = 0; idx < b->count; idx++) { + bsorted[idx].td = td->elements->type; + bsorted[idx].sptr = b->array[idx]; + } + + qsort(asorted, a->count, sizeof(asorted[0]), SET_OF__compare_cb); + qsort(bsorted, b->count, sizeof(bsorted[0]), SET_OF__compare_cb); + + common_length = (a->count < b->count ? a->count : b->count); + for(idx = 0; idx < common_length; idx++) { + int ret = td->elements->type->op->compare_struct( + td->elements->type, asorted[idx].sptr, bsorted[idx].sptr); + if(ret) { + FREEMEM(asorted); + FREEMEM(bsorted); + return ret; + } + } + + FREEMEM(asorted); + FREEMEM(bsorted); + + if(idx < b->count) /* more elements in b */ + return -1; /* a is shorter, so put it first */ + if(idx < a->count) return 1; + } else if(!a) { + return -1; + } else if(!b) { + return 1; + } + + return 0; +} + + +asn_TYPE_operation_t asn_OP_SET_OF = { + SET_OF_free, + SET_OF_print, + SET_OF_compare, + SET_OF_decode_ber, + SET_OF_encode_der, + SET_OF_decode_xer, + SET_OF_encode_xer, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + SET_OF_decode_oer, + SET_OF_encode_oer, +#endif +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + SET_OF_decode_uper, + SET_OF_encode_uper, + SET_OF_decode_aper, + SET_OF_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + SET_OF_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; + + +asn_random_fill_result_t +SET_OF_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, + const asn_encoding_constraints_t *constraints, + size_t max_length) { + const asn_SET_OF_specifics_t *specs = + (const asn_SET_OF_specifics_t *)td->specifics; + asn_random_fill_result_t res_ok = {ARFILL_OK, 0}; + asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; + asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; + const asn_TYPE_member_t *elm = td->elements; + void *st = *sptr; + long max_elements = 5; + long slb = 0; /* Lower size bound */ + long sub = 0; /* Upper size bound */ + size_t rnd_len; + + if(max_length == 0) return result_skipped; + + if(st == NULL) { + st = (*sptr = CALLOC(1, specs->struct_size)); + if(st == NULL) { + return result_failed; + } + } + + switch(asn_random_between(0, 6)) { + case 0: max_elements = 0; break; + case 1: max_elements = 1; break; + case 2: max_elements = 5; break; + case 3: max_elements = max_length; break; + case 4: max_elements = max_length / 2; break; + case 5: max_elements = max_length / 4; break; + default: break; + } + sub = slb + max_elements; + + if(!constraints || !constraints->per_constraints) + constraints = &td->encoding_constraints; + if(constraints->per_constraints) { + const asn_per_constraint_t *pc = &constraints->per_constraints->size; + if(pc->flags & APC_SEMI_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->lower_bound + max_elements; + } else if(pc->flags & APC_CONSTRAINED) { + slb = pc->lower_bound; + sub = pc->upper_bound; + if(sub - slb > max_elements) sub = slb + max_elements; + } + } + + /* Bias towards edges of allowed space */ + switch(asn_random_between(-1, 4)) { + default: + case -1: + /* Prepare lengths somewhat outside of constrained range. */ + if(constraints->per_constraints + && (constraints->per_constraints->size.flags & APC_EXTENSIBLE)) { + switch(asn_random_between(0, 5)) { + default: + case 0: + rnd_len = 0; + break; + case 1: + if(slb > 0) { + rnd_len = slb - 1; + } else { + rnd_len = 0; + } + break; + case 2: + rnd_len = asn_random_between(0, slb); + break; + case 3: + if(sub < (ssize_t)max_length) { + rnd_len = sub + 1; + } else { + rnd_len = max_length; + } + break; + case 4: + if(sub < (ssize_t)max_length) { + rnd_len = asn_random_between(sub + 1, max_length); + } else { + rnd_len = max_length; + } + break; + case 5: + rnd_len = max_length; + break; + } + break; + } + /* Fall through */ + case 0: + rnd_len = asn_random_between(slb, sub); + break; + case 1: + if(slb < sub) { + rnd_len = asn_random_between(slb + 1, sub); + break; + } + /* Fall through */ + case 2: + rnd_len = asn_random_between(slb, slb); + break; + case 3: + if(slb < sub) { + rnd_len = asn_random_between(slb, sub - 1); + break; + } + /* Fall through */ + case 4: + rnd_len = asn_random_between(sub, sub); + break; + } + + for(; rnd_len > 0; rnd_len--) { + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + void *ptr = 0; + asn_random_fill_result_t tmpres = elm->type->op->random_fill( + elm->type, &ptr, &elm->encoding_constraints, + (max_length > res_ok.length ? max_length - res_ok.length : 0) + / rnd_len); + switch(tmpres.code) { + case ARFILL_OK: + ASN_SET_ADD(list, ptr); + res_ok.length += tmpres.length; + break; + case ARFILL_SKIPPED: + break; + case ARFILL_FAILED: + assert(ptr == 0); + return tmpres; + } + } + + return res_ok; +} + diff --git a/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c new file mode 100644 index 000000000..520051811 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_SET_OF_oer.c @@ -0,0 +1,285 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_DISABLE_OER_SUPPORT + +#include +#include +#include +#include + +/* + * This macro "eats" the part of the buffer which is definitely "consumed", + * i.e. was correctly converted into local representation or rightfully skipped. + */ +#undef ADVANCE +#define ADVANCE(num_bytes) \ + do { \ + size_t num = num_bytes; \ + ptr = ((const char *)ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +/* + * Switch to the next phase of parsing. + */ +#undef NEXT_PHASE +#define NEXT_PHASE(ctx) \ + do { \ + ctx->phase++; \ + ctx->step = 0; \ + } while(0) +#undef SET_PHASE +#define SET_PHASE(ctx, value) \ + do { \ + ctx->phase = value; \ + ctx->step = 0; \ + } while(0) + +/* + * Return a standardized complex structure. + */ +#undef RETURN +#define RETURN(_code) \ + do { \ + asn_dec_rval_t rval; \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + return rval; \ + } while(0) + +/* + * The SEQUENCE OF and SET OF values utilize a "quantity field". + * It is is a pointless combination of #8.6 (length determinant, capable + * of encoding tiny and huge numbers in the shortest possible number of octets) + * and the variable sized integer. What could have been encoded by #8.6 alone + * is required to be encoded by #8.6 followed by that number of unsigned octets. + * This doesn't make too much sense. It seems that the original version of OER + * standard have been using the unconstrained unsigned integer as a quantity + * field, and this legacy have gone through ISO/ITU-T standardization process. + */ +static ssize_t +oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) { + const uint8_t *b; + const uint8_t *bend; + size_t len = 0; + size_t qty; + + ssize_t len_len = oer_fetch_length(ptr, size, &len); + if(len_len <= 0) { + *qty_r = 0; + return len_len; + } + + if((len_len + len) > size) { + *qty_r = 0; + return 0; + } + + b = (const uint8_t *)ptr + len_len; + bend = b + len; + + /* Skip the leading 0-bytes */ + for(; b < bend && *b == 0; b++) { + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *qty_r = 0; + return -1; + } + + for(qty = 0; b < bend; b++) { + qty = (qty << 8) + *b; + } + + if(qty > RSIZE_MAX) { /* A bit of C11 validation */ + *qty_r = 0; + return -1; + } + + *qty_r = qty; + assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr)); + return len_len + len; +} + +asn_dec_rval_t +SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *ptr, size_t size) { + const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics; + asn_dec_rval_t rval = {RC_OK, 0}; + void *st = *struct_ptr; /* Target structure */ + asn_struct_ctx_t *ctx; /* Decoder context */ + size_t consumed_myself = 0; /* Consumed bytes from ptr. */ + + (void)constraints; + + if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx)) + ASN__DECODE_FAILED; + + /* + * Create the target structure if it is not present already. + */ + if(st == 0) { + st = *struct_ptr = CALLOC(1, specs->struct_size); + if(st == 0) { + RETURN(RC_FAIL); + } + } + + /* + * Restore parsing context. + */ + ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset); + + /* + * Start to parse where left previously. + */ + switch(ctx->phase) { + case 0: { + /* + * Fetch number of elements to decode. + */ + size_t length = 0; + size_t len_size = oer_fetch_quantity(ptr, size, &length); + switch(len_size) { + case 0: + RETURN(RC_WMORE); + case -1: + RETURN(RC_FAIL); + default: + ADVANCE(len_size); + ctx->left = length; + } + } + NEXT_PHASE(ctx); + /* FALL THROUGH */ + case 1: { + /* Decode components of the extension root */ + asn_TYPE_member_t *elm = td->elements; + asn_anonymous_set_ *list = _A_SET_FROM_VOID(st); + const void *base_ptr = ptr; + ber_tlv_len_t base_ctx_left = ctx->left; + + assert(td->elements_count == 1); + + ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name); + + for(; ctx->left > 0; ctx->left--) { + asn_dec_rval_t rv = elm->type->op->oer_decoder( + opt_codec_ctx, elm->type, + elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr, + size); + ADVANCE(rv.consumed); + switch(rv.code) { + case RC_OK: + if(ASN_SET_ADD(list, ctx->ptr) != 0) { + RETURN(RC_FAIL); + } else { + ctx->ptr = 0; + /* + * This check is to avoid compression bomb with + * specs like SEQUENCE/SET OF NULL which don't + * consume data at all. + */ + if(rv.consumed == 0 && base_ptr == ptr + && (base_ctx_left - ctx->left) > 200) { + ASN__DECODE_FAILED; + } + break; + } + case RC_WMORE: + RETURN(RC_WMORE); + case RC_FAIL: + ASN_STRUCT_FREE(*elm->type, ctx->ptr); + ctx->ptr = 0; + SET_PHASE(ctx, 3); + RETURN(RC_FAIL); + } + } + /* Decoded decently. */ + NEXT_PHASE(ctx); + } + /* Fall through */ + case 2: + /* Ignore fully decoded */ + assert(ctx->left == 0); + RETURN(RC_OK); + case 3: + /* Failed to decode. */ + RETURN(RC_FAIL); + } + + return rval; +} + +static ssize_t +oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) { + uint8_t buf[1 + sizeof(size_t)]; + uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */ + size_t encoded; + + do { + *b-- = qty; + qty >>= 8; + } while(qty); + + *b = sizeof(buf) - (b-buf) - 1; + encoded = sizeof(buf) - (b-buf); + if(cb(b, encoded, app_key) < 0) + return -1; + return encoded; +} + +/* + * Encode as Canonical OER. + */ +asn_enc_rval_t +SET_OF_encode_oer(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const asn_TYPE_member_t *elm; + const asn_anonymous_set_ *list; + size_t computed_size = 0; + ssize_t qty_len; + int n; + + (void)constraints; + + if(!sptr) ASN__ENCODE_FAILED; + + elm = td->elements; + list = _A_CSET_FROM_VOID(sptr); + + qty_len = oer_put_quantity(list->count, cb, app_key); + if(qty_len < 0) { + ASN__ENCODE_FAILED; + } + computed_size += qty_len; + + for(n = 0; n < list->count; n++) { + void *memb_ptr = list->array[n]; + asn_enc_rval_t er = {0,0,0}; + er = elm->type->op->oer_encoder( + elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb, + app_key); + if(er.encoded < 0) { + return er; + } else { + computed_size += er.encoded; + } + } + + { + asn_enc_rval_t erval = {0,0,0}; + erval.encoded = computed_size; + ASN__ENCODED_OK(erval); + } +} + +#endif /* ASN_DISABLE_OER_SUPPORT */ diff --git a/src/tmx/Asn_J2735/src/r63/constr_TYPE.c b/src/tmx/Asn_J2735/src/r63/constr_TYPE.c new file mode 100644 index 000000000..aefaefdb7 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constr_TYPE.c @@ -0,0 +1,80 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * Version of the ASN.1 infrastructure shipped with compiler. + */ +int get_asn1c_environment_version() { return ASN1C_ENVIRONMENT_VERSION; } + +static asn_app_consume_bytes_f _print2fp; + +/* + * Return the outmost tag of the type. + */ +ber_tlv_tag_t +asn_TYPE_outmost_tag(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, int tag_mode, ber_tlv_tag_t tag) { + + if(tag_mode) + return tag; + + if(type_descriptor->tags_count) + return type_descriptor->tags[0]; + + return type_descriptor->op->outmost_tag(type_descriptor, struct_ptr, 0, 0); +} + +/* + * Print the target language's structure in human readable form. + */ +int +asn_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, + const void *struct_ptr) { + if(!stream) stream = stdout; + if(!td || !struct_ptr) { + errno = EINVAL; + return -1; + } + + /* Invoke type-specific printer */ + if(td->op->print_struct(td, struct_ptr, 1, _print2fp, stream)) { + return -1; + } + + /* Terminate the output */ + if(_print2fp("\n", 1, stream)) { + return -1; + } + + return fflush(stream); +} + +/* Dump the data into the specified stdio stream */ +static int +_print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + + +/* + * Some compilers do not support variable args macros. + * This function is a replacement of ASN_DEBUG() macro. + */ +void ASN_DEBUG_f(const char *fmt, ...); +void ASN_DEBUG_f(const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} diff --git a/src/tmx/Asn_J2735/src/r63/constraints.c b/src/tmx/Asn_J2735/src/r63/constraints.c new file mode 100644 index 000000000..df3c6c194 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/constraints.c @@ -0,0 +1,93 @@ +#include +#include + +int +asn_generic_no_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Nothing to check */ + return 0; +} + +int +asn_generic_unknown_constraint(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, + asn_app_constraint_failed_f *cb, void *key) { + (void)type_descriptor; /* Unused argument */ + (void)struct_ptr; /* Unused argument */ + (void)cb; /* Unused argument */ + (void)key; /* Unused argument */ + + /* Unknown how to check */ + return 0; +} + +struct errbufDesc { + const asn_TYPE_descriptor_t *failed_type; + const void *failed_struct_ptr; + char *errbuf; + size_t errlen; +}; + +static void +_asn_i_ctfailcb(void *key, const asn_TYPE_descriptor_t *td, const void *sptr, + const char *fmt, ...) { + struct errbufDesc *arg = key; + va_list ap; + ssize_t vlen; + ssize_t maxlen; + + arg->failed_type = td; + arg->failed_struct_ptr = sptr; + + maxlen = arg->errlen; + if(maxlen <= 0) + return; + + va_start(ap, fmt); + vlen = vsnprintf(arg->errbuf, maxlen, fmt, ap); + va_end(ap); + if(vlen >= maxlen) { + arg->errbuf[maxlen-1] = '\0'; /* Ensuring libc correctness */ + arg->errlen = maxlen - 1; /* Not counting termination */ + return; + } else if(vlen >= 0) { + arg->errbuf[vlen] = '\0'; /* Ensuring libc correctness */ + arg->errlen = vlen; /* Not counting termination */ + } else { + /* + * The libc on this system is broken. + */ + vlen = sizeof("") - 1; + maxlen--; + arg->errlen = vlen < maxlen ? vlen : maxlen; + memcpy(arg->errbuf, "", arg->errlen); + arg->errbuf[arg->errlen] = 0; + } + + return; +} + +int +asn_check_constraints(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, char *errbuf, size_t *errlen) { + struct errbufDesc arg; + int ret; + + arg.failed_type = 0; + arg.failed_struct_ptr = 0; + arg.errbuf = errbuf; + arg.errlen = errlen ? *errlen : 0; + + ret = type_descriptor->encoding_constraints.general_constraints( + type_descriptor, struct_ptr, _asn_i_ctfailcb, &arg); + if(ret == -1 && errlen) *errlen = arg.errlen; + + return ret; +} + diff --git a/src/tmx/Asn_J2735/src/r63/der_encoder.c b/src/tmx/Asn_J2735/src/r63/der_encoder.c new file mode 100644 index 000000000..2c6a6f769 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/der_encoder.c @@ -0,0 +1,194 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +static ssize_t der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, int constructed); + +/* + * The DER encoder of any type. + */ +asn_enc_rval_t +der_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("DER encoder invoked for %s", + type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->der_encoder( + type_descriptor, struct_ptr, /* Pointer to the destination structure */ + 0, 0, consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for der_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the der_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +der_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const void *struct_ptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + ec = type_descriptor->op->der_encoder(type_descriptor, + struct_ptr, /* Pointer to the destination structure */ + 0, 0, encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + return ec; +} + + +/* + * Write out leading TL[v] sequence according to the type definition. + */ +ssize_t +der_write_tags(const asn_TYPE_descriptor_t *sd, size_t struct_length, + int tag_mode, int last_tag_form, + ber_tlv_tag_t tag, /* EXPLICIT or IMPLICIT tag */ + asn_app_consume_bytes_f *cb, void *app_key) { +#define ASN1_DER_MAX_TAGS_COUNT 4 + ber_tlv_tag_t + tags_buf_scratch[ASN1_DER_MAX_TAGS_COUNT * sizeof(ber_tlv_tag_t)]; + ssize_t lens[ASN1_DER_MAX_TAGS_COUNT * sizeof(ssize_t)]; + const ber_tlv_tag_t *tags; /* Copy of tags stream */ + int tags_count; /* Number of tags */ + size_t overall_length; + int i; + + ASN_DEBUG("Writing tags (%s, tm=%d, tc=%d, tag=%s, mtc=%d)", + sd->name, tag_mode, sd->tags_count, + ber_tlv_tag_string(tag), + tag_mode + ?(sd->tags_count+1 + -((tag_mode == -1) && sd->tags_count)) + :sd->tags_count + ); + + if(sd->tags_count + 1 > ASN1_DER_MAX_TAGS_COUNT) { + ASN_DEBUG("System limit %d on tags count", ASN1_DER_MAX_TAGS_COUNT); + return -1; + } + + if(tag_mode) { + /* + * Instead of doing shaman dance like we do in ber_check_tags(), + * allocate a small array on the stack + * and initialize it appropriately. + */ + int stag_offset; + ber_tlv_tag_t *tags_buf = tags_buf_scratch; + tags_count = sd->tags_count + + 1 /* EXPLICIT or IMPLICIT tag is given */ + - ((tag_mode == -1) && sd->tags_count); + /* Copy tags over */ + tags_buf[0] = tag; + stag_offset = -1 + ((tag_mode == -1) && sd->tags_count); + for(i = 1; i < tags_count; i++) + tags_buf[i] = sd->tags[i + stag_offset]; + tags = tags_buf; + } else { + tags = sd->tags; + tags_count = sd->tags_count; + } + + /* No tags to write */ + if(tags_count == 0) + return 0; + + /* + * Array of tags is initialized. + * Now, compute the size of the TLV pairs, from right to left. + */ + overall_length = struct_length; + for(i = tags_count - 1; i >= 0; --i) { + lens[i] = der_write_TL(tags[i], overall_length, 0, 0, 0); + if(lens[i] == -1) return -1; + overall_length += lens[i]; + lens[i] = overall_length - lens[i]; + } + + if(!cb) return overall_length - struct_length; + + ASN_DEBUG("Encoding %s TL sequence (%d elements)", sd->name, + tags_count); + + /* + * Encode the TL sequence for real. + */ + for(i = 0; i < tags_count; i++) { + ssize_t len; + int _constr; + + /* Check if this tag happens to be constructed */ + _constr = (last_tag_form || i < (tags_count - 1)); + + len = der_write_TL(tags[i], lens[i], cb, app_key, _constr); + if(len == -1) return -1; + } + + return overall_length - struct_length; +} + +static ssize_t +der_write_TL(ber_tlv_tag_t tag, ber_tlv_len_t len, + asn_app_consume_bytes_f *cb, void *app_key, + int constructed) { + uint8_t buf[32]; + size_t size = 0; + int buf_size = cb?sizeof(buf):0; + ssize_t tmp; + + /* Serialize tag (T from TLV) into possibly zero-length buffer */ + tmp = ber_tlv_tag_serialize(tag, buf, buf_size); + if(tmp == -1 || tmp > (ssize_t)sizeof(buf)) return -1; + size += tmp; + + /* Serialize length (L from TLV) into possibly zero-length buffer */ + tmp = der_tlv_length_serialize(len, buf+size, buf_size?buf_size-size:0); + if(tmp == -1) return -1; + size += tmp; + + if(size > sizeof(buf)) + return -1; + + /* + * If callback is specified, invoke it, and check its return value. + */ + if(cb) { + if(constructed) *buf |= 0x20; + if(cb(buf, size, app_key) < 0) + return -1; + } + + return size; +} diff --git a/src/tmx/Asn_J2735/src/r63/oer_decoder.c b/src/tmx/Asn_J2735/src/r63/oer_decoder.c new file mode 100644 index 000000000..070173826 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/oer_decoder.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER decoder of any type. + */ +asn_dec_rval_t +oer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr, + const void *ptr, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + ptr, size /* Buffer and its size */ + ); +} + +/* + * Open Type is encoded as a length (#8.6) followed by that number of bytes. + * Since we're just skipping, reading the length would be enough. + */ +ssize_t +oer_open_type_skip(const void *bufptr, size_t size) { + size_t len = 0; + return oer_fetch_length(bufptr, size, &len); +} + +/* + * Read the Open Type (X.696 (08/2015), #30). + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx, + const struct asn_TYPE_descriptor_s *td, + const asn_oer_constraints_t *constraints, void **struct_ptr, + const void *bufptr, size_t size) { + asn_dec_rval_t dr; + size_t container_len = 0; + ssize_t len_len; + enum asn_struct_free_method dispose_method = + (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING; + + /* Get the size of a length determinant */ + len_len = oer_fetch_length(bufptr, size, &container_len); + if(len_len <= 0) { + return len_len; /* Error or more data expected */ + } + + /* + * len_len can't be bigger than size, but size without len_len + * should be bigger or equal to container length + */ + if(size - len_len < container_len) { + /* More data is expected */ + return 0; + } + + dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr, + (const uint8_t *)bufptr + len_len, container_len); + if(dr.code == RC_OK) { + return len_len + container_len; + } else { + /* Even if RC_WMORE, we can't get more data into a closed container. */ + td->op->free_struct(td, *struct_ptr, dispose_method); + *struct_ptr = NULL; + return -1; + } +} + + +asn_dec_rval_t +oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, void **sptr, + const void *ptr, size_t size) { + ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr; + asn_dec_rval_t rval = {RC_OK, 0}; + size_t expected_length = 0; + ssize_t len_len; + + (void)td; + (void)opt_codec_ctx; + (void)constraints; + + if(!st) { + st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC( + 1, sizeof(ASN__PRIMITIVE_TYPE_t))); + if(!st) ASN__DECODE_FAILED; + } + + + /* + * X.696 (08/2015) #27.2 + * Encode length determinant as _number of octets_, but only + * if upper bound is not equal to lower bound. + */ + len_len = oer_fetch_length(ptr, size, &expected_length); + if(len_len > 0) { + rval.consumed = len_len; + ptr = (const char *)ptr + len_len; + size -= len_len; + } else if(len_len == 0) { + ASN__DECODE_STARVED; + } else if(len_len < 0) { + ASN__DECODE_FAILED; + } + + if(size < expected_length) { + ASN__DECODE_STARVED; + } else { + uint8_t *buf = MALLOC(expected_length + 1); + if(buf == NULL) { + ASN__DECODE_FAILED; + } else { + memcpy(buf, ptr, expected_length); + buf[expected_length] = '\0'; + } + FREEMEM(st->buf); + st->buf = buf; + st->size = expected_length; + + rval.consumed += expected_length; + return rval; + } +} diff --git a/src/tmx/Asn_J2735/src/r63/oer_encoder.c b/src/tmx/Asn_J2735/src/r63/oer_encoder.c new file mode 100644 index 000000000..a284cc2f3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/oer_encoder.c @@ -0,0 +1,141 @@ +/* + * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * The OER encoder of any type. + */ +asn_enc_rval_t +oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr, + asn_app_consume_bytes_f *consume_bytes, void *app_key) { + ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name); + + /* + * Invoke type-specific encoder. + */ + return type_descriptor->op->oer_encoder( + type_descriptor, 0, + struct_ptr, /* Pointer to the destination structure */ + consume_bytes, app_key); +} + +/* + * Argument type and callback necessary for oer_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int +encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +/* + * A variant of the oer_encode() which encodes the data into the provided buffer + */ +asn_enc_rval_t +oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor, + const asn_oer_constraints_t *constraints, + const void *struct_ptr, /* Structure to be encoded */ + void *buffer, /* Pre-allocated buffer */ + size_t buffer_size /* Initial buffer size (maximum) */ +) { + enc_to_buf_arg arg; + asn_enc_rval_t ec; + + arg.buffer = buffer; + arg.left = buffer_size; + + if(type_descriptor->op->oer_encoder == NULL) { + ec.encoded = -1; + ec.failed_type = type_descriptor; + ec.structure_ptr = struct_ptr; + ASN_DEBUG("OER encoder is not defined for %s", + type_descriptor->name); + } else { + ec = type_descriptor->op->oer_encoder( + type_descriptor, constraints, + struct_ptr, /* Pointer to the destination structure */ + encode_to_buffer_cb, &arg); + if(ec.encoded != -1) { + assert(ec.encoded == (ssize_t)(buffer_size - arg.left)); + /* Return the encoded contents size */ + } + } + return ec; +} + +asn_enc_rval_t +oer_encode_primitive(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr; + asn_enc_rval_t er = {0, 0, 0}; + ssize_t ret; + + (void)constraints; + + if(!st) ASN__ENCODE_FAILED; + + ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size); + + /* + * X.696 (08/2015) #27.2 + */ + ret = oer_serialize_length(st->size, cb, app_key); + if(ret < 0) { + ASN__ENCODE_FAILED; + } + er.encoded += ret; + + er.encoded += st->size; + if(cb(st->buf, st->size, app_key) < 0) { + ASN__ENCODE_FAILED; + } else { + ASN__ENCODED_OK(er); + } +} + +static int +oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) { + size_t *bytes = bytes_ptr; + (void)buffer; + *bytes += size; + return 0; +} + +ssize_t +oer_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_oer_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + size_t serialized_byte_count = 0; + asn_enc_rval_t er = {0,0,0}; + ssize_t len_len; + + er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes, + &serialized_byte_count); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + len_len = oer_serialize_length(serialized_byte_count, cb, app_key); + if(len_len == -1) return -1; + + er = td->op->oer_encoder(td, constraints, sptr, cb, app_key); + if(er.encoded < 0) return -1; + assert(serialized_byte_count == (size_t)er.encoded); + + return len_len + er.encoded; +} + diff --git a/src/tmx/Asn_J2735/src/r63/oer_support.c b/src/tmx/Asn_J2735/src/r63/oer_support.c new file mode 100644 index 000000000..b15a3bc93 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/oer_support.c @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2017 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +#include + +/* + * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r. + * RETURN VALUES: + * 0: More data expected than bufptr contains. + * -1: Fatal error deciphering length. + * >0: Number of bytes used from bufptr. + */ +ssize_t +oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) { + uint8_t first_byte; + size_t len_len; /* Length of the length determinant */ + const uint8_t *b; + const uint8_t *bend; + size_t len; + + if(size == 0) { + *len_r = 0; + return 0; + } + + first_byte = *(const uint8_t *)bufptr; + if((first_byte & 0x80) == 0) { /* Short form */ + *len_r = first_byte; /* 0..127 */ + return 1; + } + + len_len = (first_byte & 0x7f); + if((1 + len_len) > size) { + *len_r = 0; + return 0; + } + + b = (const uint8_t *)bufptr + 1; + bend = b + len_len; + + for(; b < bend && *b == 0; b++) { + /* Skip the leading 0-bytes */ + } + + if((bend - b) > (ssize_t)sizeof(size_t)) { + /* Length is not representable by the native size_t type */ + *len_r = 0; + return -1; + } + + for(len = 0; b < bend; b++) { + len = (len << 8) + *b; + } + + if(len > RSIZE_MAX) { /* A bit of C11 validation */ + *len_r = 0; + return -1; + } + + *len_r = len; + assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr)); + return len_len + 1; +} + + +/* + * Serialize OER length. Returns the number of bytes serialized + * or -1 if a given callback returned with negative result. + */ +ssize_t +oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, + void *app_key) { + uint8_t scratch[1 + sizeof(length)]; + uint8_t *sp = scratch; + int littleEndian = 1; /* Run-time detection */ + const uint8_t *pstart; + const uint8_t *pend; + const uint8_t *p; + int add; + + if(length <= 127) { + uint8_t b = length; + if(cb(&b, 1, app_key) < 0) { + return -1; + } + return 1; + } + + if(*(char *)&littleEndian) { + pstart = (const uint8_t *)&length + sizeof(length) - 1; + pend = (const uint8_t *)&length; + add = -1; + } else { + pstart = (const uint8_t *)&length; + pend = pstart + sizeof(length); + add = 1; + } + + for(p = pstart; p != pend; p += add) { + /* Skip leading zeros. */ + if(*p) break; + } + + for(sp = scratch + 1; ; p += add) { + *sp++ = *p; + if(p == pend) break; + } + assert((sp - scratch) - 1 <= 0x7f); + scratch[0] = 0x80 + ((sp - scratch) - 1); + + if(cb(scratch, sp - scratch, app_key) < 0) { + return -1; + } + + return sp - scratch; +} + diff --git a/src/tmx/Asn_J2735/src/r63/pdu_collection.c b/src/tmx/Asn_J2735/src/r63/pdu_collection.c new file mode 100644 index 000000000..4b0c0c9c3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/pdu_collection.c @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + */ + +struct asn_TYPE_descriptor_s; /* Forward declaration */ + +extern struct asn_TYPE_descriptor_s asn_DEF_MessageFrame; +extern struct asn_TYPE_descriptor_s asn_DEF_DDate; +extern struct asn_TYPE_descriptor_s asn_DEF_DFullTime; +extern struct asn_TYPE_descriptor_s asn_DEF_DMonthDay; +extern struct asn_TYPE_descriptor_s asn_DEF_DTime; +extern struct asn_TYPE_descriptor_s asn_DEF_DYearMonth; +extern struct asn_TYPE_descriptor_s asn_DEF_VerticalOffset; +extern struct asn_TYPE_descriptor_s asn_DEF_CodeWord; +extern struct asn_TYPE_descriptor_s asn_DEF_Count; +extern struct asn_TYPE_descriptor_s asn_DEF_Duration; +extern struct asn_TYPE_descriptor_s asn_DEF_Location_quality; +extern struct asn_TYPE_descriptor_s asn_DEF_Location_tech; +extern struct asn_TYPE_descriptor_s asn_DEF_MessageBLOB; +extern struct asn_TYPE_descriptor_s asn_DEF_PayloadData; +extern struct asn_TYPE_descriptor_s asn_DEF_SignalReqScheme; +extern struct asn_TYPE_descriptor_s asn_DEF_TransitStatus; +extern struct asn_TYPE_descriptor_s asn_DEF_URL_Link; +extern struct asn_TYPE_descriptor_s asn_DEF_ConnectionManeuverAssist_addGrpC; +extern struct asn_TYPE_descriptor_s asn_DEF_IntersectionState_addGrpC; +extern struct asn_TYPE_descriptor_s asn_DEF_MapData_addGrpC; +extern struct asn_TYPE_descriptor_s asn_DEF_Position3D_addGrpC; +extern struct asn_TYPE_descriptor_s asn_DEF_RestrictionUserType_addGrpC; +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_Angle; +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_MsgCount; +extern struct asn_TYPE_descriptor_s asn_DEF_LaneDataAttribute_addGrpB; +extern struct asn_TYPE_descriptor_s asn_DEF_MovementEvent_addGrpB; +extern struct asn_TYPE_descriptor_s asn_DEF_NodeOffsetPointXY_addGrpB; +extern struct asn_TYPE_descriptor_s asn_DEF_Position3D_addGrpB; +extern struct asn_TYPE_descriptor_s asn_DEF_AddGrpB_TimeMark; +extern struct asn_TYPE_descriptor_s asn_DEF_EXTERNAL; + + +struct asn_TYPE_descriptor_s *asn_pdu_collection[] = { + /* From module DSRC in J2735_201603_ASN_CC.asn */ + &asn_DEF_MessageFrame, + &asn_DEF_DDate, + &asn_DEF_DFullTime, + &asn_DEF_DMonthDay, + &asn_DEF_DTime, + &asn_DEF_DYearMonth, + &asn_DEF_VerticalOffset, + &asn_DEF_CodeWord, + &asn_DEF_Count, + &asn_DEF_Duration, + &asn_DEF_Location_quality, + &asn_DEF_Location_tech, + &asn_DEF_MessageBLOB, + &asn_DEF_PayloadData, + &asn_DEF_SignalReqScheme, + &asn_DEF_TransitStatus, + &asn_DEF_URL_Link, + /* From module AddGrpC in J2735_201603_ASN_CC.asn */ + &asn_DEF_ConnectionManeuverAssist_addGrpC, + &asn_DEF_IntersectionState_addGrpC, + &asn_DEF_MapData_addGrpC, + &asn_DEF_Position3D_addGrpC, + &asn_DEF_RestrictionUserType_addGrpC, + /* From module AddGrpB in J2735_201603_ASN_CC.asn */ + &asn_DEF_AddGrpB_Angle, + &asn_DEF_AddGrpB_MsgCount, + &asn_DEF_LaneDataAttribute_addGrpB, + &asn_DEF_MovementEvent_addGrpB, + &asn_DEF_NodeOffsetPointXY_addGrpB, + &asn_DEF_Position3D_addGrpB, + &asn_DEF_AddGrpB_TimeMark, + /* From module ASN1C-UsefulInformationObjectClasses in /usr/local/share/asn1c/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1 */ + &asn_DEF_EXTERNAL, + 0 +}; + diff --git a/src/tmx/Asn_J2735/src/r63/per_decoder.c b/src/tmx/Asn_J2735/src/r63/per_decoder.c new file mode 100644 index 000000000..8a3e39df8 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/per_decoder.c @@ -0,0 +1,185 @@ +#include +#include +#include + +/* + * Decode a "Production of a complete encoding", X.691#10.1. + * The complete encoding contains at least one byte, and is an integral + * multiple of 8 bytes. + */ +asn_dec_rval_t +uper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = uper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +uper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->uper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->uper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %ld, counted %ld", + (long)rval.consumed, (long)pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} + +asn_dec_rval_t +aper_decode_complete(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, + const void *buffer, size_t size) { + asn_dec_rval_t rval; + + rval = aper_decode(opt_codec_ctx, td, sptr, buffer, size, 0, 0); + if(rval.consumed) { + /* + * We've always given 8-aligned data, + * so convert bits to integral bytes. + */ + rval.consumed += 7; + rval.consumed >>= 3; + } else if(rval.code == RC_OK) { + if(size) { + if(((const uint8_t *)buffer)[0] == 0) { + rval.consumed = 1; /* 1 byte */ + } else { + ASN_DEBUG("Expecting single zeroed byte"); + rval.code = RC_FAIL; + } + } else { + /* Must contain at least 8 bits. */ + rval.code = RC_WMORE; + } + } + + return rval; +} + +asn_dec_rval_t +aper_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **sptr, const void *buffer, + size_t size, int skip_bits, int unused_bits) { + asn_codec_ctx_t s_codec_ctx; + asn_dec_rval_t rval; + asn_per_data_t pd; + + if(skip_bits < 0 || skip_bits > 7 + || unused_bits < 0 || unused_bits > 7 + || (unused_bits > 0 && !size)) + ASN__DECODE_FAILED; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* Fill in the position indicator */ + memset(&pd, 0, sizeof(pd)); + pd.buffer = (const uint8_t *)buffer; + pd.nboff = skip_bits; + pd.nbits = 8 * size - unused_bits; /* 8 is CHAR_BIT from */ + if(pd.nboff > pd.nbits) + ASN__DECODE_FAILED; + + /* + * Invoke type-specific decoder. + */ + if(!td->op->aper_decoder) + ASN__DECODE_FAILED; /* PER is not compiled in */ + rval = td->op->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd); + if(rval.code == RC_OK) { + /* Return the number of consumed bits */ + rval.consumed = ((pd.buffer - (const uint8_t *)buffer) << 3) + + pd.nboff - skip_bits; + ASN_DEBUG("PER decoding consumed %zu, counted %zu", + rval.consumed, pd.moved); + assert(rval.consumed == pd.moved); + } else { + /* PER codec is not a restartable */ + rval.consumed = 0; + } + return rval; +} + diff --git a/src/tmx/Asn_J2735/src/r63/per_encoder.c b/src/tmx/Asn_J2735/src/r63/per_encoder.c new file mode 100644 index 000000000..9d0c6febc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/per_encoder.c @@ -0,0 +1,265 @@ +#include +#include +#include + +static int _uper_encode_flush_outp(asn_per_outp_t *po); + +static int +ignore_output(const void *data, size_t size, void *app_key) { + (void)data; + (void)size; + (void)app_key; + return 0; +} + +asn_enc_rval_t +uper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->uper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->uper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_uper_encode_flush_outp(&po)) ASN__ENCODE_FAILED; + } + + return er; +} + +/* + * Argument type and callback necessary for uper_encode_to_buffer(). + */ +typedef struct enc_to_buf_arg { + void *buffer; + size_t left; +} enc_to_buf_arg; +static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) { + enc_to_buf_arg *arg = (enc_to_buf_arg *)key; + + if(arg->left < size) + return -1; /* Data exceeds the available buffer size */ + + memcpy(arg->buffer, buffer, size); + arg->buffer = ((char *)arg->buffer) + size; + arg->left -= size; + + return 0; +} + +asn_enc_rval_t +uper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using UNALIGNED PER", td->name); + + return uper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +typedef struct enc_dyn_arg { + void *buffer; + size_t length; + size_t allocated; +} enc_dyn_arg; +static int +encode_dyn_cb(const void *buffer, size_t size, void *key) { + enc_dyn_arg *arg = key; + if(arg->length + size >= arg->allocated) { + size_t new_size = arg->allocated ? arg->allocated : 8; + void *p; + + do { + new_size <<= 2; + } while(arg->length + size >= new_size); + + p = REALLOC(arg->buffer, new_size); + if(!p) { + FREEMEM(arg->buffer); + memset(arg, 0, sizeof(*arg)); + return -1; + } + arg->buffer = p; + arg->allocated = new_size; + } + memcpy(((char *)arg->buffer) + arg->length, buffer, size); + arg->length += size; + return 0; +} +ssize_t +uper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = uper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +/* + * Internally useful functions. + */ + +/* Flush partially filled buffer */ +static int +_uper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); +} + +asn_enc_rval_t +aper_encode_to_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void *buffer, size_t buffer_size) { + enc_to_buf_arg key; + + key.buffer = buffer; + key.left = buffer_size; + + if(td) ASN_DEBUG("Encoding \"%s\" using ALIGNED PER", td->name); + + return aper_encode(td, constraints, sptr, encode_to_buffer_cb, &key); +} + +ssize_t +aper_encode_to_new_buffer(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, void **buffer_r) { + asn_enc_rval_t er = {0,0,0}; + enc_dyn_arg key; + + memset(&key, 0, sizeof(key)); + + er = aper_encode(td, constraints, sptr, encode_dyn_cb, &key); + switch(er.encoded) { + case -1: + FREEMEM(key.buffer); + return -1; + case 0: + FREEMEM(key.buffer); + key.buffer = MALLOC(1); + if(key.buffer) { + *(char *)key.buffer = '\0'; + *buffer_r = key.buffer; + return 1; + } else { + return -1; + } + default: + *buffer_r = key.buffer; + ASN_DEBUG("Complete encoded in %ld bits", (long)er.encoded); + return ((er.encoded + 7) >> 3); + } +} + +static int +_aper_encode_flush_outp(asn_per_outp_t *po) { + uint8_t *buf; + + if(po->nboff == 0 && po->buffer == po->tmpspace) + return 0; + + buf = po->buffer + (po->nboff >> 3); + /* Make sure we account for the last, partially filled */ + if(po->nboff & 0x07) { + buf[0] &= 0xff << (8 - (po->nboff & 0x07)); + buf++; + } + + if (po->output) { + return po->output(po->tmpspace, buf - po->tmpspace, po->op_key); + } + return 0; +} + +asn_enc_rval_t +aper_encode(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_app_consume_bytes_f *cb, void *app_key) { + asn_per_outp_t po; + asn_enc_rval_t er = {0,0,0}; + + /* + * Invoke type-specific encoder. + */ + if(!td || !td->op->aper_encoder) + ASN__ENCODE_FAILED; /* PER is not compiled in */ + + po.buffer = po.tmpspace; + po.nboff = 0; + po.nbits = 8 * sizeof(po.tmpspace); + po.output = cb ? cb : ignore_output; + po.op_key = app_key; + po.flushed_bytes = 0; + + er = td->op->aper_encoder(td, constraints, sptr, &po); + if(er.encoded != -1) { + size_t bits_to_flush; + + bits_to_flush = ((po.buffer - po.tmpspace) << 3) + po.nboff; + + /* Set number of bits encoded to a firm value */ + er.encoded = (po.flushed_bytes << 3) + bits_to_flush; + + if(_aper_encode_flush_outp(&po)) + ASN__ENCODE_FAILED; + } + + return er; +} diff --git a/src/tmx/Asn_J2735/src/r63/per_opentype.c b/src/tmx/Asn_J2735/src/r63/per_opentype.c new file mode 100644 index 000000000..253aaa508 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/per_opentype.c @@ -0,0 +1,538 @@ +/* + * Copyright (c) 2007 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include +#include + +typedef struct uper_ugot_key { + asn_per_data_t oldpd; /* Old per data source */ + size_t unclaimed; + size_t ot_moved; /* Number of bits moved by OT processing */ + int repeat; +} uper_ugot_key; + +static int uper_ugot_refill(asn_per_data_t *pd); +static int per_skip_bits(asn_per_data_t *pd, int skip_nbits); +static asn_dec_rval_t uper_sot_suck(const asn_codec_ctx_t *, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd); + +/* + * Encode an "open type field". + * #10.1, #10.2 + */ +int +uper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, const void *sptr, + asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = uper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + ASN_DEBUG("Open type put %s of length %" ASN_PRI_SSIZE " + overhead (1byte?)", td->name, + size); + + bptr = buf; + do { + int need_eom = 0; + ssize_t may_save = uper_put_length(po, size, &need_eom); + ASN_DEBUG("Prepending length %" ASN_PRI_SSIZE + " to %s and allowing to save %" ASN_PRI_SSIZE, + size, td->name, may_save); + if(may_save < 0) break; + if(per_put_many_bits(po, bptr, may_save * 8)) break; + bptr = (char *)bptr + may_save; + size -= may_save; + if(need_eom && uper_put_length(po, 0, 0)) { + FREEMEM(buf); + return -1; + } + } while(size); + + FREEMEM(buf); + if(size) return -1; + + return 0; +} + +static asn_dec_rval_t +uper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = uper_get_length(pd, -1, 0, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* No one would give us more */ + } + + return rv; +} + +static asn_dec_rval_t CC_NOTUSED +uper_open_type_get_complex(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + uper_ugot_key arg; + asn_dec_rval_t rv; + ssize_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s from %s", td->name, + asn_bit_data_string(pd)); + arg.oldpd = *pd; + arg.unclaimed = 0; + arg.ot_moved = 0; + arg.repeat = 1; + pd->refill = uper_ugot_refill; + pd->refill_key = &arg; + pd->nbits = pd->nboff; /* 0 good bits at this point, will refill */ + pd->moved = 0; /* This now counts the open type size in bits */ + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->uper_decoder(ctx, td, constraints, sptr, pd); + ASN_DEBUG_INDENT_ADD(-4); + +#define UPDRESTOREPD do { \ + /* buffer and nboff are valid, preserve them. */ \ + pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \ + pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \ + pd->refill = arg.oldpd.refill; \ + pd->refill_key = arg.oldpd.refill_key; \ + } while(0) + + if(rv.code != RC_OK) { + UPDRESTOREPD; + return rv; + } + + ASN_DEBUG("OpenType %s pd%s old%s unclaimed=%d, repeat=%d", td->name, + asn_bit_data_string(pd), + asn_bit_data_string(&arg.oldpd), + (int)arg.unclaimed, (int)arg.repeat); + + padding = pd->moved % 8; + if(padding) { + int32_t pvalue; + if(padding > 7) { + ASN_DEBUG("Too large padding %d in open type", + (int)padding); + rv.code = RC_FAIL; + UPDRESTOREPD; + return rv; + } + padding = 8 - padding; + ASN_DEBUG("Getting padding of %d bits", (int)padding); + pvalue = per_get_few_bits(pd, padding); + switch(pvalue) { + case -1: + ASN_DEBUG("Padding skip failed"); + UPDRESTOREPD; + ASN__DECODE_STARVED; + case 0: break; + default: + ASN_DEBUG("Non-blank padding (%d bits 0x%02x)", + (int)padding, (int)pvalue); + UPDRESTOREPD; + ASN__DECODE_FAILED; + } + } + if(pd->nboff != pd->nbits) { + ASN_DEBUG("Open type %s overhead pd%s old%s", td->name, + asn_bit_data_string(pd), asn_bit_data_string(&arg.oldpd)); + if(1) { + UPDRESTOREPD; + ASN__DECODE_FAILED; + } else { + arg.unclaimed += pd->nbits - pd->nboff; + } + } + + /* Adjust pd back so it points to original data */ + UPDRESTOREPD; + + /* Skip data not consumed by the decoder */ + if(arg.unclaimed) { + ASN_DEBUG("Getting unclaimed %d", (int)arg.unclaimed); + switch(per_skip_bits(pd, arg.unclaimed)) { + case -1: + ASN_DEBUG("Claim of %d failed", (int)arg.unclaimed); + ASN__DECODE_STARVED; + case 0: + ASN_DEBUG("Got claim of %d", (int)arg.unclaimed); + break; + default: + /* Padding must be blank */ + ASN_DEBUG("Non-blank unconsumed padding"); + ASN__DECODE_FAILED; + } + arg.unclaimed = 0; + } + + if(arg.repeat) { + ASN_DEBUG("Not consumed the whole thing"); + rv.code = RC_FAIL; + return rv; + } + + return rv; +} + + +asn_dec_rval_t +uper_open_type_get(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + return uper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +uper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_TYPE_operation_t s_op; + asn_dec_rval_t rv; + + s_td.name = ""; + s_td.op = &s_op; + s_op.uper_decoder = uper_sot_suck; + + rv = uper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} + +/* + * Internal functions. + */ + +static asn_dec_rval_t +uper_sot_suck(const asn_codec_ctx_t *ctx, const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, + asn_per_data_t *pd) { + asn_dec_rval_t rv; + + (void)ctx; + (void)td; + (void)constraints; + (void)sptr; + + while(per_get_few_bits(pd, 1) >= 0); + + rv.code = RC_OK; + rv.consumed = pd->moved; + + return rv; +} + +static int +uper_ugot_refill(asn_per_data_t *pd) { + uper_ugot_key *arg = pd->refill_key; + ssize_t next_chunk_bytes, next_chunk_bits; + ssize_t avail; + + asn_per_data_t *oldpd = &arg->oldpd; + + ASN_DEBUG("REFILLING pd->moved=%ld, oldpd->moved=%ld", + (long)pd->moved, (long)oldpd->moved); + + /* Advance our position to where pd is */ + oldpd->buffer = pd->buffer; + oldpd->nboff = pd->nboff; + oldpd->nbits -= pd->moved - arg->ot_moved; + oldpd->moved += pd->moved - arg->ot_moved; + arg->ot_moved = pd->moved; + + if(arg->unclaimed) { + /* Refill the container */ + if(per_get_few_bits(oldpd, 1)) + return -1; + if(oldpd->nboff == 0) { + assert(0); + return -1; + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff - 1; + pd->nbits = oldpd->nbits; + ASN_DEBUG("UNCLAIMED <- return from (pd->moved=%ld)", + (long)pd->moved); + return 0; + } + + if(!arg->repeat) { + ASN_DEBUG("Want more but refill doesn't have it"); + return -1; + } + + next_chunk_bytes = uper_get_length(oldpd, -1, 0, &arg->repeat); + ASN_DEBUG("Open type LENGTH %ld bytes at off %ld, repeat %ld", + (long)next_chunk_bytes, (long)oldpd->moved, (long)arg->repeat); + if(next_chunk_bytes < 0) return -1; + if(next_chunk_bytes == 0) { + pd->refill = 0; /* No more refills, naturally */ + assert(!arg->repeat); /* Implementation guarantee */ + } + next_chunk_bits = next_chunk_bytes << 3; + avail = oldpd->nbits - oldpd->nboff; + if(avail >= next_chunk_bits) { + pd->nbits = oldpd->nboff + next_chunk_bits; + arg->unclaimed = 0; + ASN_DEBUG("!+Parent frame %ld bits, alloting %ld [%ld..%ld] (%ld)", + (long)next_chunk_bits, (long)oldpd->moved, + (long)oldpd->nboff, (long)oldpd->nbits, + (long)(oldpd->nbits - oldpd->nboff)); + } else { + pd->nbits = oldpd->nbits; + arg->unclaimed = next_chunk_bits - avail; + ASN_DEBUG("!-Parent frame %ld, require %ld, will claim %ld", + (long)avail, (long)next_chunk_bits, + (long)arg->unclaimed); + } + pd->buffer = oldpd->buffer; + pd->nboff = oldpd->nboff; + ASN_DEBUG("Refilled pd%s old%s", + asn_bit_data_string(pd), asn_bit_data_string(oldpd)); + return 0; +} + +static int +per_skip_bits(asn_per_data_t *pd, int skip_nbits) { + int hasNonZeroBits = 0; + while(skip_nbits > 0) { + int skip; + + /* per_get_few_bits() is more efficient when nbits <= 24 */ + if(skip_nbits < 24) + skip = skip_nbits; + else + skip = 24; + skip_nbits -= skip; + + switch(per_get_few_bits(pd, skip)) { + case -1: return -1; /* Starving */ + case 0: continue; /* Skipped empty space */ + default: hasNonZeroBits = 1; continue; + } + } + return hasNonZeroBits; +} + +static asn_dec_rval_t +aper_open_type_get_simple(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { + asn_dec_rval_t rv; + ssize_t chunk_bytes; + int repeat; + uint8_t *buf = 0; + size_t bufLen = 0; + size_t bufSize = 0; + asn_per_data_t spd; + size_t padding; + + ASN__STACK_OVERFLOW_CHECK(ctx); + + ASN_DEBUG("Getting open type %s...", td->name); + + do { + chunk_bytes = aper_get_length(pd, -1, -1, &repeat); + if(chunk_bytes < 0) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + if(bufLen + chunk_bytes > bufSize) { + void *ptr; + bufSize = chunk_bytes + (bufSize << 2); + ptr = REALLOC(buf, bufSize); + if(!ptr) { + FREEMEM(buf); + ASN__DECODE_FAILED; + } + buf = ptr; + } + if(per_get_many_bits(pd, buf + bufLen, 0, chunk_bytes << 3)) { + FREEMEM(buf); + ASN__DECODE_STARVED; + } + bufLen += chunk_bytes; + } while(repeat); + + ASN_DEBUG("Getting open type %s encoded in %ld bytes", td->name, + (long)bufLen); + + memset(&spd, 0, sizeof(spd)); + spd.buffer = buf; + spd.nbits = bufLen << 3; + + ASN_DEBUG_INDENT_ADD(+4); + rv = td->op->aper_decoder(ctx, td, constraints, sptr, &spd); + ASN_DEBUG_INDENT_ADD(-4); + + if(rv.code == RC_OK) { + /* Check padding validity */ + padding = spd.nbits - spd.nboff; + if (((padding > 0 && padding < 8) || + /* X.691#10.1.3 */ + (spd.nboff == 0 && spd.nbits == 8 && spd.buffer == buf)) && + per_get_few_bits(&spd, padding) == 0) { + /* Everything is cool */ + FREEMEM(buf); + return rv; + } + FREEMEM(buf); + if(padding >= 8) { + ASN_DEBUG("Too large padding %d in open type", (int)padding); + ASN__DECODE_FAILED; + } else { + ASN_DEBUG("No padding"); + } + } else { + FREEMEM(buf); + /* rv.code could be RC_WMORE, nonsense in this context */ + rv.code = RC_FAIL; /* Noone would give us more */ + } + + return rv; +} + +int +aper_open_type_put(const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + const void *sptr, asn_per_outp_t *po) { + void *buf; + void *bptr; + ssize_t size; + size_t toGo; + + ASN_DEBUG("Open type put %s ...", td->name); + + size = aper_encode_to_new_buffer(td, constraints, sptr, &buf); + if(size <= 0) return -1; + + for(bptr = buf, toGo = size; toGo;) { + int need_eom = 0; + ssize_t maySave = aper_put_length(po, -1, toGo, &need_eom); + if(maySave < 0) break; + if(per_put_many_bits(po, bptr, maySave * 8)) break; + bptr = (char *)bptr + maySave; + toGo -= maySave; + if(need_eom && aper_put_length(po, -1, 0, 0)) { + FREEMEM(buf); + return -1; + } + } + + FREEMEM(buf); + if(toGo) return -1; + + ASN_DEBUG("Open type put %s of length %ld + overhead (1byte?)", + td->name, size); + + return 0; +} + +asn_dec_rval_t +aper_open_type_get(const asn_codec_ctx_t *ctx, + const asn_TYPE_descriptor_t *td, + const asn_per_constraints_t *constraints, + void **sptr, asn_per_data_t *pd) { + + return aper_open_type_get_simple(ctx, td, constraints, sptr, pd); +} + +int +aper_open_type_skip(const asn_codec_ctx_t *ctx, asn_per_data_t *pd) { + asn_TYPE_descriptor_t s_td; + asn_dec_rval_t rv; + asn_TYPE_operation_t op_t; + + memset(&op_t, 0, sizeof(op_t)); + s_td.name = ""; + s_td.op = &op_t; + s_td.op->aper_decoder = uper_sot_suck; + + rv = aper_open_type_get(ctx, &s_td, 0, 0, pd); + if(rv.code != RC_OK) + return -1; + else + return 0; +} + + diff --git a/src/tmx/Asn_J2735/src/r63/per_support.c b/src/tmx/Asn_J2735/src/r63/per_support.c new file mode 100644 index 000000000..090ecd1f6 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/per_support.c @@ -0,0 +1,583 @@ +/* + * Copyright (c) 2005-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * X.691-201508 #10.9 General rules for encoding a length determinant. + * Get the optionally constrained length "n" from the stream. + */ +ssize_t +uper_get_length(asn_per_data_t *pd, int ebits, size_t lower_bound, + int *repeat) { + ssize_t value; + + *repeat = 0; + + /* #11.9.4.1 Encoding if constrained (according to effective bits) */ + if(ebits >= 0 && ebits <= 16) { + value = per_get_few_bits(pd, ebits); + if(value >= 0) value += lower_bound; + return value; + } + + value = per_get_few_bits(pd, 8); + if((value & 0x80) == 0) { /* #11.9.3.6 */ + return (value & 0x7F); + } else if((value & 0x40) == 0) { /* #11.9.3.7 */ + /* bit 8 ... set to 1 and bit 7 ... set to zero */ + value = ((value & 0x3f) << 8) | per_get_few_bits(pd, 8); + return value; /* potential -1 from per_get_few_bits passes through. */ + } else if(value < 0) { + ASN_DEBUG("END of stream reached for PER"); + return -1; + } + value &= 0x3f; /* this is "m" from X.691, #11.9.3.8 */ + if(value < 1 || value > 4) { + return -1; /* Prohibited by #11.9.3.8 */ + } + *repeat = 1; + return (16384 * value); +} + +/* + * Get the normally small length "n". + * This procedure used to decode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +ssize_t +uper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%d", (int)length); + return length; + } else { + int repeat; + length = uper_get_length(pd, -1, 0, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +/* + * Get the normally small non-negative whole number. + * X.691, #10.6 + */ +ssize_t +uper_get_nsnnwn(asn_per_data_t *pd) { + ssize_t value; + + value = per_get_few_bits(pd, 7); + if(value & 64) { /* implicit (value < 0) */ + value &= 63; + value <<= 2; + value |= per_get_few_bits(pd, 2); + if(value & 128) /* implicit (value < 0) */ + return -1; + if(value == 0) + return 0; + if(value >= 3) + return -1; + value = per_get_few_bits(pd, 8 * value); + return value; + } + + return value; +} + +/* + * X.691-11/2008, #11.6 + * Encoding of a normally small non-negative whole number + */ +int +uper_put_nsnnwn(asn_per_outp_t *po, int n) { + int bytes; + + if(n <= 63) { + if(n < 0) return -1; + return per_put_few_bits(po, n, 7); + } + if(n < 256) + bytes = 1; + else if(n < 65536) + bytes = 2; + else if(n < 256 * 65536) + bytes = 3; + else + return -1; /* This is not a "normally small" value */ + if(per_put_few_bits(po, bytes, 8)) + return -1; + + return per_put_few_bits(po, n, 8 * bytes); +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int uper_get_constrained_whole_number(asn_per_data_t *pd, uintmax_t *out_value, int nbits) { + uintmax_t lhalf; /* Lower half of the number*/ + intmax_t half; + + if(nbits <= 31) { + half = per_get_few_bits(pd, nbits); + if(half < 0) return -1; + *out_value = half; + return 0; + } + + if((size_t)nbits > 8 * sizeof(*out_value)) + return -1; /* RANGE */ + + half = per_get_few_bits(pd, 31); + if(half < 0) return -1; + + if(uper_get_constrained_whole_number(pd, &lhalf, nbits - 31)) + return -1; + + *out_value = ((uintmax_t)half << (nbits - 31)) | lhalf; + return 0; +} + + +/* X.691-2008/11, #11.5.6 -> #11.3 */ +int +uper_put_constrained_whole_number_u(asn_per_outp_t *po, unsigned long v, + int nbits) { + if(nbits <= 31) { + return per_put_few_bits(po, v, nbits); + } else { + /* Put higher portion first, followed by lower 31-bit */ + if(uper_put_constrained_whole_number_u(po, v >> 31, nbits - 31)) + return -1; + return per_put_few_bits(po, v, 31); + } +} + +/* + * X.691 (08/2015) #11.9 "General rules for encoding a length determinant" + * Put the length "n" (or part of it) into the stream. + */ +ssize_t +uper_put_length(asn_per_outp_t *po, size_t length, int *need_eom) { + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + if(length <= 127) { /* #11.9.3.6 */ + *need_eom = 0; + return per_put_few_bits(po, length, 8) + ? -1 : (ssize_t)length; + } else if(length < 16384) { /* #10.9.3.7 */ + *need_eom = 0; + return per_put_few_bits(po, length|0x8000, 16) + ? -1 : (ssize_t)length; + } + + *need_eom = 0 == (length & 16383); + length >>= 14; + if(length > 4) { + *need_eom = 0; + length = 4; + } + + return per_put_few_bits(po, 0xC0 | length, 8) + ? -1 : (ssize_t)(length << 14); + +} + + +/* + * Put the normally small length "n" into the stream. + * This procedure used to encode length of extensions bit-maps + * for SET and SEQUENCE types. + */ +int +uper_put_nslength(asn_per_outp_t *po, size_t length) { + if(length <= 64) { + /* #11.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length - 1, 7) ? -1 : 0; + } else { + int need_eom = 0; + if(uper_put_length(po, length, &need_eom) != (ssize_t)length + || need_eom) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +static int +per__imax_range(intmax_t lb, intmax_t ub, uintmax_t *range_r) { + uintmax_t bounds_range; + if((ub < 0) == (lb < 0)) { + bounds_range = ub - lb; + } else if(lb < 0) { + assert(ub >= 0); + bounds_range = 1 + ((uintmax_t)ub + (uintmax_t)-(lb + 1)); + } else { + assert(!"Unreachable"); + return -1; + } + *range_r = bounds_range; + return 0; +} + +int +per_imax_range_rebase(intmax_t v, intmax_t lb, intmax_t ub, uintmax_t *output) { + uintmax_t range; + + assert(lb <= ub); + + if(v < lb || v > ub || per__imax_range(lb, ub, &range) < 0) { + /* Range error. */ + return -1; + } + + /* + * Fundamentally what we're doing is returning (v-lb). + * However, this triggers undefined behavior when the word width + * of signed (v) is the same as the size of unsigned (*output). + * In practice, it triggers the UndefinedSanitizer. Therefore we shall + * compute the ranges accurately to avoid C's undefined behavior. + */ + if((v < 0) == (lb < 0)) { + *output = v-lb; + return 0; + } else if(v < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(v+1) + (uintmax_t)lb; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else if(lb < 0) { + uintmax_t rebased = 1 + (uintmax_t)-(lb+1) + (uintmax_t)v; + assert(rebased <= range); /* By construction */ + *output = rebased; + return 0; + } else { + assert(!"Unreachable"); + return -1; + } +} + +int +per_long_range_rebase(long v, intmax_t lb, intmax_t ub, unsigned long *output) { + uintmax_t tmp = *output; + int rc = per_imax_range_rebase((intmax_t)v, lb, ub, &tmp); + *output = tmp; + return rc; +} + +int +per_imax_range_unrebase(uintmax_t inp, intmax_t lb, intmax_t ub, intmax_t *outp) { + uintmax_t range; + + if(per__imax_range(lb, ub, &range) != 0) { + return -1; + } + + if(inp > range) { + /* + * We can encode something in the given number of bits that technically + * exceeds the range. This is an avenue for security errors, + * so we don't allow that. + */ + return -1; + } + + if(inp <= INTMAX_MAX) { + *outp = (long)inp + lb; + } else { + *outp = (lb + INTMAX_MAX + 1) + (intmax_t)((inp - INTMAX_MAX) - 1); + } + + return 0; +} + +int +per_long_range_unrebase(unsigned long inp, intmax_t lb, intmax_t ub, long *outp) { + intmax_t tmp = *outp; + int rc = per_imax_range_unrebase((uintmax_t)inp, lb, ub, &tmp); + *outp = tmp; + return rc; +} + +int32_t +aper_get_align(asn_per_data_t *pd) { + + if(pd->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)pd->nboff & 0x7)); + return per_get_few_bits(pd, 8 - (pd->nboff & 0x7)); + } + return 0; +} + +ssize_t +aper_get_length(asn_per_data_t *pd, int range, int ebits, int *repeat) { + ssize_t value; + + *repeat = 0; + + if (range <= 65536 && range >= 0) + return aper_get_nsnnwn(pd, range); + + if (aper_get_align(pd) < 0) + return -1; + + if(ebits >= 0) return per_get_few_bits(pd, ebits); + + value = per_get_few_bits(pd, 8); + if(value < 0) return -1; + if((value & 128) == 0) /* #10.9.3.6 */ + return (value & 0x7F); + if((value & 64) == 0) { /* #10.9.3.7 */ + value = ((value & 63) << 8) | per_get_few_bits(pd, 8); + if(value < 0) return -1; + return value; + } + value &= 63; /* this is "m" from X.691, #10.9.3.8 */ + if(value < 1 || value > 4) + return -1; + *repeat = 1; + return (16384 * value); +} + +ssize_t +aper_get_nslength(asn_per_data_t *pd) { + ssize_t length; + + ASN_DEBUG("Getting normally small length"); + + if(per_get_few_bits(pd, 1) == 0) { + length = per_get_few_bits(pd, 6) + 1; + if(length <= 0) return -1; + ASN_DEBUG("l=%ld", length); + return length; + } else { + int repeat; + length = aper_get_length(pd, -1, -1, &repeat); + if(length >= 0 && !repeat) return length; + return -1; /* Error, or do not support >16K extensions */ + } +} + +#if !defined(USE_OLDER_APER_NSNNWN) +ssize_t +aper_get_nsnnwn(asn_per_data_t *pd, int range) { + ssize_t value; + int bytes = 0; + + ASN_DEBUG("getting nsnnwn with range %d", range); + + if(range <= 255) { + int i; + + if (range < 0) return -1; + /* 1 -> 8 bits */ + for (i = 1; i <= 8; i++) { + int upper = 1 << i; + if (upper >= range) + break; + } + value = per_get_few_bits(pd, i); + return value; + } else if (range == 256){ + /* 1 byte */ + bytes = 1; + } else if (range <= 65536) { + /* 2 bytes */ + bytes = 2; + } else { + //return -1; + int length; + + /* handle indefinite range */ + length = per_get_few_bits(pd, 1); + if (length == 0) + return per_get_few_bits(pd, 6); + + if (aper_get_align(pd) < 0) + return -1; + + length = per_get_few_bits(pd, 8); + /* the length is not likely to be that big */ + if (length > 4) + return -1; + value = 0; + if (per_get_many_bits(pd, (uint8_t *)&value, 0, length * 8) < 0) + return -1; + return value; + } + if (aper_get_align(pd) < 0) + return -1; + value = per_get_few_bits(pd, 8 * bytes); + return value; +} +#else /* old APER codec */ +ssize_t +aper_get_nsnnwn(asn_per_data_t *pd, int dummy_range) { + ssize_t value; + + ASN_DEBUG("Get the normally small non-negative whole number APER"); + + value = per_get_few_bits(pd, 7); + if(value & 64) { /* implicit (value < 0) */ + value &= 63; + value <<= 2; + value |= per_get_few_bits(pd, 2); + if(value & 128) /* implicit (value < 0) */ + return -1; + if(value == 0) + return 0; + if(value >= 3) + return -1; + value = per_get_few_bits(pd, 8 * value); + return value; + } + + return value; +} +#endif /* don't use old APER */ + +int aper_put_align(asn_per_outp_t *po) { + + if(po->nboff & 0x7) { + ASN_DEBUG("Aligning %ld bits", 8 - ((unsigned long)po->nboff & 0x7)); + if(per_put_few_bits(po, 0x00, (8 - (po->nboff & 0x7)))) + return -1; + } + return 0; +} + +ssize_t +aper_put_length(asn_per_outp_t *po, int range, size_t length, int *need_eom) { + int dummy = 0; + if(!need_eom) need_eom = &dummy; + + *need_eom = 0; + + ASN_DEBUG("APER put length %zu with range %d", length, range); + + /* 10.9 X.691 Note 2 */ + if (range <= 65536 && range >= 0) + return aper_put_nsnnwn(po, range, length); + + if (aper_put_align(po) < 0) + return -1; + + if(length <= 127) /* #10.9.3.6 */{ + return per_put_few_bits(po, length, 8) + ? -1 : (ssize_t)length; + } + else if(length < 16384) /* #10.9.3.7 */ + return per_put_few_bits(po, length|0x8000, 16) + ? -1 : (ssize_t)length; + + *need_eom = 0 == (length & 16383); + length >>= 14; + if(length > 4) { + *need_eom = 0; + length = 4; + } + + return per_put_few_bits(po, 0xC0 | length, 8) + ? -1 : (ssize_t)(length << 14); +} + + +int +aper_put_nslength(asn_per_outp_t *po, size_t length) { + + if(length <= 64) { + /* #10.9.3.4 */ + if(length == 0) return -1; + return per_put_few_bits(po, length-1, 7) ? -1 : 0; + } else { + if(aper_put_length(po, -1, length, 0) != (ssize_t)length) { + /* This might happen in case of >16K extensions */ + return -1; + } + } + + return 0; +} + +#if !defined(USE_OLDER_APER_NSNNWN) +int +aper_put_nsnnwn(asn_per_outp_t *po, int range, int number) { + int bytes; + + ASN_DEBUG("aper put nsnnwn %d with range %d", number, range); + /* 10.5.7.1 X.691 */ + if(range < 0) { + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (number <= bits) + break; + } + bytes = i; + assert(i <= 4); + } + if(range <= 255) { + int i; + for (i = 1; i <= 8; i++) { + int bits = 1 << i; + if (range <= bits) + break; + } + return per_put_few_bits(po, number, i); + } else if(range == 256) { + bytes = 1; + } else if(range <= 65536) { + bytes = 2; + } else { /* Ranges > 64K */ + int i; + for (i = 1; ; i++) { + int bits = 1 << (8 * i); + if (range <= bits) + break; + } + assert(i <= 4); + bytes = i; + } + if(aper_put_align(po) < 0) /* Aligning on octet */ + return -1; +/* if(per_put_few_bits(po, bytes, 8)) + return -1; +*/ + return per_put_few_bits(po, number, 8 * bytes); +} +#else /* preserve old code base in case */ +int +aper_put_nsnnwn(asn_per_outp_t *po, int dummy_range, int n) { + int bytes; + + ASN_DEBUG("aper_put_nsnnwn"); + + if(n <= 63) { + if(n < 0) return -1; + return per_put_few_bits(po, n, 7); + } + if(n < 256) + bytes = 1; + else if(n < 65536) + bytes = 2; + else if(n < 256 * 65536) + bytes = 3; + else + return -1; /* This is not a "normally small" value */ + if(per_put_few_bits(po, bytes, 8)) + return -1; + + return per_put_few_bits(po, n, 8 * bytes); +} +#endif /* which aper_put_nsnnwn() */ diff --git a/src/tmx/Asn_J2735/src/r63/xer_decoder.c b/src/tmx/Asn_J2735/src/r63/xer_decoder.c new file mode 100644 index 000000000..5b87703a3 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/xer_decoder.c @@ -0,0 +1,369 @@ +/* + * Copyright (c) 2004-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include /* XER/XML parsing support */ + + +/* + * Decode the XER encoding of a given type. + */ +asn_dec_rval_t +xer_decode(const asn_codec_ctx_t *opt_codec_ctx, + const asn_TYPE_descriptor_t *td, void **struct_ptr, + const void *buffer, size_t size) { + asn_codec_ctx_t s_codec_ctx; + + /* + * Stack checker requires that the codec context + * must be allocated on the stack. + */ + if(opt_codec_ctx) { + if(opt_codec_ctx->max_stack_size) { + s_codec_ctx = *opt_codec_ctx; + opt_codec_ctx = &s_codec_ctx; + } + } else { + /* If context is not given, be security-conscious anyway */ + memset(&s_codec_ctx, 0, sizeof(s_codec_ctx)); + s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX; + opt_codec_ctx = &s_codec_ctx; + } + + /* + * Invoke type-specific decoder. + */ + return td->op->xer_decoder(opt_codec_ctx, td, struct_ptr, 0, buffer, size); +} + + + +struct xer__cb_arg { + pxml_chunk_type_e chunk_type; + size_t chunk_size; + const void *chunk_buf; + int callback_not_invoked; +}; + +static int +xer__token_cb(pxml_chunk_type_e type, const void *_chunk_data, size_t _chunk_size, void *key) { + struct xer__cb_arg *arg = (struct xer__cb_arg *)key; + arg->chunk_type = type; + arg->chunk_size = _chunk_size; + arg->chunk_buf = _chunk_data; + arg->callback_not_invoked = 0; + return -1; /* Terminate the XML parsing */ +} + +/* + * Fetch the next token from the XER/XML stream. + */ +ssize_t +xer_next_token(int *stateContext, const void *buffer, size_t size, pxer_chunk_type_e *ch_type) { + struct xer__cb_arg arg; + int new_stateContext = *stateContext; + ssize_t ret; + + arg.callback_not_invoked = 1; + ret = pxml_parse(&new_stateContext, buffer, size, xer__token_cb, &arg); + if(ret < 0) return -1; + if(arg.callback_not_invoked) { + assert(ret == 0); /* No data was consumed */ + *ch_type = PXER_WMORE; + return 0; /* Try again with more data */ + } else { + assert(arg.chunk_size); + assert(arg.chunk_buf == buffer); + } + + /* + * Translate the XML chunk types into more convenient ones. + */ + switch(arg.chunk_type) { + case PXML_TEXT: + *ch_type = PXER_TEXT; + break; + case PXML_TAG: + *ch_type = PXER_WMORE; + return 0; /* Want more */ + case PXML_TAG_END: + *ch_type = PXER_TAG; + break; + case PXML_COMMENT: + case PXML_COMMENT_END: + *ch_type = PXER_COMMENT; + break; + } + + *stateContext = new_stateContext; + return arg.chunk_size; +} + +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define RANGLE 0x3e /* '>' */ + +xer_check_tag_e +xer_check_tag(const void *buf_ptr, int size, const char *need_tag) { + const char *buf = (const char *)buf_ptr; + const char *end; + xer_check_tag_e ct = XCT_OPENING; + + if(size < 2 || buf[0] != LANGLE || buf[size-1] != RANGLE) { + if(size >= 2) + ASN_DEBUG("Broken XML tag: \"%c...%c\"", + buf[0], buf[size - 1]); + return XCT_BROKEN; + } + + /* + * Determine the tag class. + */ + if(buf[1] == CSLASH) { + buf += 2; /* advance past "" */ + ct = XCT_CLOSING; + if(size > 0 && buf[size-1] == CSLASH) + return XCT_BROKEN; /* */ + } else { + buf++; /* advance past "<" */ + size -= 2; /* strip "<" and ">" */ + if(size > 0 && buf[size-1] == CSLASH) { + ct = XCT_BOTH; + size--; /* One more, for "/" */ + } + } + + /* Sometimes we don't care about the tag */ + if(!need_tag || !*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + /* + * Determine the tag name. + */ + for(end = buf + size; buf < end; buf++, need_tag++) { + int b = *buf, n = *need_tag; + if(b != n) { + if(n == 0) { + switch(b) { + case 0x09: case 0x0a: case 0x0c: case 0x0d: + case 0x20: + /* "": whitespace is normal */ + return ct; + } + } + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + } + if(b == 0) + return XCT_BROKEN; /* Embedded 0 in buf?! */ + } + if(*need_tag) + return (xer_check_tag_e)(XCT__UNK__MASK | ct); + + return ct; +} + + +#undef ADVANCE +#define ADVANCE(num_bytes) do { \ + size_t num = (num_bytes); \ + buf_ptr = ((const char *)buf_ptr) + num; \ + size -= num; \ + consumed_myself += num; \ + } while(0) + +#undef RETURN +#define RETURN(_code) do { \ + rval.code = _code; \ + rval.consumed = consumed_myself; \ + if(rval.code != RC_OK) \ + ASN_DEBUG("Failed with %d", rval.code); \ + return rval; \ + } while(0) + +#define XER_GOT_BODY(chunk_buf, chunk_size, size) do { \ + ssize_t converted_size = body_receiver \ + (struct_key, chunk_buf, chunk_size, \ + (size_t)chunk_size < size); \ + if(converted_size == -1) RETURN(RC_FAIL); \ + if(converted_size == 0 \ + && size == (size_t)chunk_size) \ + RETURN(RC_WMORE); \ + chunk_size = converted_size; \ + } while(0) +#define XER_GOT_EMPTY() do { \ + if(body_receiver(struct_key, 0, 0, size > 0) == -1) \ + RETURN(RC_FAIL); \ + } while(0) + +/* + * Generalized function for decoding the primitive values. + */ +asn_dec_rval_t +xer_decode_general(const asn_codec_ctx_t *opt_codec_ctx, + asn_struct_ctx_t *ctx, /* Type decoder context */ + void *struct_key, + const char *xml_tag, /* Expected XML tag */ + const void *buf_ptr, size_t size, + int (*opt_unexpected_tag_decoder) + (void *struct_key, const void *chunk_buf, size_t chunk_size), + ssize_t (*body_receiver) + (void *struct_key, const void *chunk_buf, size_t chunk_size, + int have_more) + ) { + + asn_dec_rval_t rval; + ssize_t consumed_myself = 0; + + (void)opt_codec_ctx; + + /* + * Phases of XER/XML processing: + * Phase 0: Check that the opening tag matches our expectations. + * Phase 1: Processing body and reacting on closing tag. + */ + if(ctx->phase > 1) RETURN(RC_FAIL); + for(;;) { + pxer_chunk_type_e ch_type; /* XER chunk type */ + ssize_t ch_size; /* Chunk size */ + xer_check_tag_e tcv; /* Tag check value */ + + /* + * Get the next part of the XML stream. + */ + ch_size = xer_next_token(&ctx->context, buf_ptr, size, + &ch_type); + if(ch_size == -1) { + RETURN(RC_FAIL); + } else { + switch(ch_type) { + case PXER_WMORE: + RETURN(RC_WMORE); + case PXER_COMMENT: /* Got XML comment */ + ADVANCE(ch_size); /* Skip silently */ + continue; + case PXER_TEXT: + if(ctx->phase == 0) { + /* + * We have to ignore whitespace here, + * but in order to be forward compatible + * with EXTENDED-XER (EMBED-VALUES, #25) + * any text is just ignored here. + */ + } else { + XER_GOT_BODY(buf_ptr, ch_size, size); + } + ADVANCE(ch_size); + continue; + case PXER_TAG: + break; /* Check the rest down there */ + } + } + + assert(ch_type == PXER_TAG && size); + + tcv = xer_check_tag(buf_ptr, ch_size, xml_tag); + /* + * Phase 0: + * Expecting the opening tag + * for the type being processed. + * Phase 1: + * Waiting for the closing XML tag. + */ + switch(tcv) { + case XCT_BOTH: + if(ctx->phase) break; + /* Finished decoding of an empty element */ + XER_GOT_EMPTY(); + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_OPENING: + if(ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 1; /* Processing body phase */ + continue; + case XCT_CLOSING: + if(!ctx->phase) break; + ADVANCE(ch_size); + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + case XCT_UNKNOWN_BO: + /* + * Certain tags in the body may be expected. + */ + if(opt_unexpected_tag_decoder + && opt_unexpected_tag_decoder(struct_key, + buf_ptr, ch_size) >= 0) { + /* Tag's processed fine */ + ADVANCE(ch_size); + if(!ctx->phase) { + /* We are not expecting + * the closing tag anymore. */ + ctx->phase = 2; /* Phase out */ + RETURN(RC_OK); + } + continue; + } + /* Fall through */ + default: + break; /* Unexpected tag */ + } + + ASN_DEBUG("Unexpected XML tag (expected \"%s\")", xml_tag); + break; /* Dark and mysterious things have just happened */ + } + + RETURN(RC_FAIL); +} + + +size_t +xer_whitespace_span(const void *chunk_buf, size_t chunk_size) { + const char *p = (const char *)chunk_buf; + const char *pend = p + chunk_size; + + for(; p < pend; p++) { + switch(*p) { + /* X.693, #8.1.4 + * HORISONTAL TAB (9) + * LINE FEED (10) + * CARRIAGE RETURN (13) + * SPACE (32) + */ + case 0x09: case 0x0a: case 0x0d: case 0x20: + continue; + default: + break; + } + break; + } + return (p - (const char *)chunk_buf); +} + +/* + * This is a vastly simplified, non-validating XML tree skipper. + */ +int +xer_skip_unknown(xer_check_tag_e tcv, ber_tlv_len_t *depth) { + assert(*depth > 0); + switch(tcv) { + case XCT_BOTH: + case XCT_UNKNOWN_BO: + /* These negate each other. */ + return 0; + case XCT_OPENING: + case XCT_UNKNOWN_OP: + ++(*depth); + return 0; + case XCT_CLOSING: + case XCT_UNKNOWN_CL: + if(--(*depth) == 0) + return (tcv == XCT_CLOSING) ? 2 : 1; + return 0; + default: + return -1; + } +} diff --git a/src/tmx/Asn_J2735/src/r63/xer_encoder.c b/src/tmx/Asn_J2735/src/r63/xer_encoder.c new file mode 100644 index 000000000..4177ede5c --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/xer_encoder.c @@ -0,0 +1,237 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include +#include + +/* + * The XER encoder of any type. May be invoked by the application. + */ +asn_enc_rval_t +xer_encode(const asn_TYPE_descriptor_t *td, const void *sptr, + enum xer_encoder_flags_e xer_flags, asn_app_consume_bytes_f *cb, + void *app_key) { + asn_enc_rval_t er = {0, 0, 0}; + asn_enc_rval_t tmper; + const char *mname; + size_t mlen; + int xcan = (xer_flags & XER_F_CANONICAL) ? 1 : 2; + + if(!td || !sptr) goto cb_failed; + + mname = td->xml_tag; + mlen = strlen(mname); + + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); + + tmper = td->op->xer_encoder(td, sptr, 1, xer_flags, cb, app_key); + if(tmper.encoded == -1) return tmper; + er.encoded += tmper.encoded; + + ASN__CALLBACK3("\n", xcan); + + ASN__ENCODED_OK(er); +cb_failed: + ASN__ENCODE_FAILED; +} + +/* + * This is a helper function for xer_fprint, which directs all incoming data + * into the provided file descriptor. + */ +static int +xer__print2fp(const void *buffer, size_t size, void *app_key) { + FILE *stream = (FILE *)app_key; + + if(fwrite(buffer, 1, size, stream) != size) + return -1; + + return 0; +} + +int +xer_fprint(FILE *stream, const asn_TYPE_descriptor_t *td, const void *sptr) { + asn_enc_rval_t er = {0,0,0}; + + if(!stream) stream = stdout; + if(!td || !sptr) + return -1; + + er = xer_encode(td, sptr, XER_F_BASIC, xer__print2fp, stream); + if(er.encoded == -1) + return -1; + + return fflush(stream); +} + +struct xer_buffer { + char *buffer; + size_t buffer_size; + size_t allocated_size; +}; + +static int +xer__buffer_append(const void *buffer, size_t size, void *app_key) { + struct xer_buffer *xb = app_key; + + while(xb->buffer_size + size + 1 > xb->allocated_size) { + size_t new_size = 2 * (xb->allocated_size ? xb->allocated_size : 64); + char *new_buf = MALLOC(new_size); + if(!new_buf) return -1; + if (xb->buffer) { + memcpy(new_buf, xb->buffer, xb->buffer_size); + } + FREEMEM(xb->buffer); + xb->buffer = new_buf; + xb->allocated_size = new_size; + } + + memcpy(xb->buffer + xb->buffer_size, buffer, size); + xb->buffer_size += size; + xb->buffer[xb->buffer_size] = '\0'; + return 0; +} + +enum xer_equivalence_e +xer_equivalent(const struct asn_TYPE_descriptor_s *td, const void *struct1, + const void *struct2, FILE *opt_debug_stream) { + struct xer_buffer xb1 = {0, 0, 0}; + struct xer_buffer xb2 = {0, 0, 0}; + asn_enc_rval_t e1, e2; + asn_dec_rval_t rval; + void *sptr = NULL; + + if(!td || !struct1 || !struct2) { + if(opt_debug_stream) { + if(!td) fprintf(opt_debug_stream, "Type descriptor missing\n"); + if(!struct1) fprintf(opt_debug_stream, "Structure 1 missing\n"); + if(!struct2) fprintf(opt_debug_stream, "Structure 2 missing\n"); + } + return XEQ_FAILURE; + } + + e1 = xer_encode(td, struct1, XER_F_BASIC, xer__buffer_append, &xb1); + if(e1.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + return XEQ_ENCODE1_FAILED; + } + + e2 = xer_encode(td, struct2, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of %s failed\n", td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ENCODE1_FAILED; + } + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structures XER-encoded into different byte streams:\n=== " + "Structure 1 ===\n%s\n=== Structure 2 ===\n%s\n", + xb1.buffer, xb2.buffer); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DIFFERENT; + } else { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Both structures encoded into the same XER byte stream " + "of size %" ASN_PRI_SIZE ":\n%s", + xb1.buffer_size, xb1.buffer); + } + } + + rval = xer_decode(NULL, td, (void **)&sptr, xb1.buffer, + xb1.buffer_size); + switch(rval.code) { + case RC_OK: + break; + case RC_WMORE: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decode unexpectedly requires " + "more data:\n%s\n", + td->name, xb1.buffer); + } + /* Fall through */ + case RC_FAIL: + default: + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Structure %s XER decoding resulted in failure.\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_DECODE_FAILED; + } + + if(rval.consumed != xb1.buffer_size + && ((rval.consumed > xb1.buffer_size) + || xer_whitespace_span(xb1.buffer + rval.consumed, + xb1.buffer_size - rval.consumed) + != (xb1.buffer_size - rval.consumed))) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "Round-trip decode of %s required less bytes (%" ASN_PRI_SIZE ") than " + "encoded (%" ASN_PRI_SIZE ")\n", + td->name, rval.consumed, xb1.buffer_size); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + /* + * Reuse xb2 to encode newly decoded structure. + */ + FREEMEM(xb2.buffer); + memset(&xb2, 0, sizeof(xb2)); + + e2 = xer_encode(td, sptr, XER_F_BASIC, xer__buffer_append, &xb2); + if(e2.encoded == -1) { + if(opt_debug_stream) { + fprintf(stderr, "XER Encoding of round-trip decode of %s failed\n", + td->name); + } + ASN_STRUCT_FREE(*td, sptr); + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + ASN_STRUCT_FREE(*td, sptr); + sptr = 0; + + if(xb1.buffer_size != xb2.buffer_size + || memcmp(xb1.buffer, xb2.buffer, xb1.buffer_size) != 0) { + if(opt_debug_stream) { + fprintf(opt_debug_stream, + "XER Encoding of round-trip decode of %s resulted in " + "different byte stream:\n" + "=== Original ===\n%s\n" + "=== Round-tripped ===\n%s\n", + xb1.buffer, xb2.buffer, td->name); + } + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_ROUND_TRIP_FAILED; + } + + FREEMEM(xb1.buffer); + FREEMEM(xb2.buffer); + return XEQ_SUCCESS; +} + diff --git a/src/tmx/Asn_J2735/src/r63/xer_support.c b/src/tmx/Asn_J2735/src/r63/xer_support.c new file mode 100644 index 000000000..36b4bfbfc --- /dev/null +++ b/src/tmx/Asn_J2735/src/r63/xer_support.c @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2003, 2004 X/IO Labs, xiolabs.com. + * Copyright (c) 2003, 2004, 2005 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* Parser states */ +typedef enum { + ST_TEXT, + ST_TAG_START, + ST_TAG_BODY, + ST_TAG_QUOTE_WAIT, + ST_TAG_QUOTED_STRING, + ST_TAG_UNQUOTED_STRING, + ST_COMMENT_WAIT_DASH1, /* ""[0] */ + ST_COMMENT_CLO_RT /* "-->"[1] */ +} pstate_e; + +static const int +_charclass[256] = { + 0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0, + 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 1,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, + 2,2,2,2,2,2,2,2, 2,2,0,0,0,0,0,0, /* 01234567 89 */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* ABCDEFG HIJKLMNO */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0, /* PQRSTUVW XYZ */ + 0,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, /* abcdefg hijklmno */ + 3,3,3,3,3,3,3,3, 3,3,3,0,0,0,0,0 /* pqrstuvw xyz */ +}; +#define WHITESPACE(c) (_charclass[(unsigned char)(c)] == 1) +#define ALNUM(c) (_charclass[(unsigned char)(c)] >= 2) +#define ALPHA(c) (_charclass[(unsigned char)(c)] == 3) + +/* Aliases for characters, ASCII/UTF-8 */ +#define EXCLAM 0x21 /* '!' */ +#define CQUOTE 0x22 /* '"' */ +#define CDASH 0x2d /* '-' */ +#define CSLASH 0x2f /* '/' */ +#define LANGLE 0x3c /* '<' */ +#define CEQUAL 0x3d /* '=' */ +#define RANGLE 0x3e /* '>' */ +#define CQUEST 0x3f /* '?' */ + +/* Invoke token callback */ +#define TOKEN_CB_CALL(type, _ns, _current_too, _final) do { \ + int _ret; \ + pstate_e ns = _ns; \ + ssize_t _sz = (p - chunk_start) + _current_too; \ + if (!_sz) { \ + /* Shortcut */ \ + state = _ns; \ + break; \ + } \ + _ret = cb(type, chunk_start, _sz, key); \ + if(_ret < _sz) { \ + if(_current_too && _ret == -1) \ + state = ns; \ + goto finish; \ + } \ + chunk_start = p + _current_too; \ + state = ns; \ + } while(0) + +#define TOKEN_CB(_type, _ns, _current_too) \ + TOKEN_CB_CALL(_type, _ns, _current_too, 0) + +#define PXML_TAG_FINAL_CHUNK_TYPE PXML_TAG_END +#define PXML_COMMENT_FINAL_CHUNK_TYPE PXML_COMMENT_END + +#define TOKEN_CB_FINAL(_type, _ns, _current_too) \ + TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1) + +/* + * Parser itself + */ +ssize_t pxml_parse(int *stateContext, const void *xmlbuf, size_t size, pxml_callback_f *cb, void *key) { + pstate_e state = (pstate_e)*stateContext; + const char *chunk_start = (const char *)xmlbuf; + const char *p = chunk_start; + const char *end = p + size; + + for(; p < end; p++) { + int C = *(const unsigned char *)p; + switch(state) { + case ST_TEXT: + /* + * Initial state: we're in the middle of some text, + * or just have started. + */ + if (C == LANGLE) + /* We're now in the tag, probably */ + TOKEN_CB(PXML_TEXT, ST_TAG_START, 0); + break; + case ST_TAG_START: + if (ALPHA(C) || (C == CSLASH)) + state = ST_TAG_BODY; + else if (C == EXCLAM) + state = ST_COMMENT_WAIT_DASH1; + else + /* + * Not characters and not whitespace. + * Must be something like "3 < 4". + */ + TOKEN_CB(PXML_TEXT, ST_TEXT, 1);/* Flush as data */ + break; + case ST_TAG_BODY: + switch(C) { + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + case LANGLE: + /* + * The previous tag wasn't completed, but still + * recognized as valid. (Mozilla-compatible) + */ + TOKEN_CB_FINAL(PXML_TAG, ST_TAG_START, 0); + break; + case CEQUAL: + state = ST_TAG_QUOTE_WAIT; + break; + } + break; + case ST_TAG_QUOTE_WAIT: + /* + * State after the equal sign ("=") in the tag. + */ + switch(C) { + case CQUOTE: + state = ST_TAG_QUOTED_STRING; + break; + case RANGLE: + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + break; + default: + if(!WHITESPACE(C)) + /* Unquoted string value */ + state = ST_TAG_UNQUOTED_STRING; + } + break; + case ST_TAG_QUOTED_STRING: + /* + * Tag attribute's string value in quotes. + */ + if(C == CQUOTE) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_TAG_UNQUOTED_STRING: + if(C == RANGLE) { + /* End of the tag */ + TOKEN_CB_FINAL(PXML_TAG, ST_TEXT, 1); + } else if(WHITESPACE(C)) { + /* Return back to the tag state */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH1: + if(C == CDASH) { + state = ST_COMMENT_WAIT_DASH2; + } else { + /* Some ordinary tag. */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT_WAIT_DASH2: + if(C == CDASH) { + /* Seen "<--" */ + state = ST_COMMENT; + } else { + /* Some ordinary tag */ + state = ST_TAG_BODY; + } + break; + case ST_COMMENT: + if(C == CDASH) { + state = ST_COMMENT_CLO_DASH2; + } + break; + case ST_COMMENT_CLO_DASH2: + if(C == CDASH) { + state = ST_COMMENT_CLO_RT; + } else { + /* This is not an end of a comment */ + state = ST_COMMENT; + } + break; + case ST_COMMENT_CLO_RT: + if(C == RANGLE) { + TOKEN_CB_FINAL(PXML_COMMENT, ST_TEXT, 1); + } else if(C == CDASH) { + /* Maintain current state, still waiting for '>' */ + } else { + state = ST_COMMENT; + } + break; + } /* switch(*ptr) */ + } /* for() */ + + /* + * Flush the partially processed chunk, state permitting. + */ + if(p - chunk_start) { + switch (state) { + case ST_COMMENT: + TOKEN_CB(PXML_COMMENT, state, 0); + break; + case ST_TEXT: + TOKEN_CB(PXML_TEXT, state, 0); + break; + default: break; /* a no-op */ + } + } + +finish: + *stateContext = (int)state; + return chunk_start - (const char *)xmlbuf; +} + diff --git a/src/tmx/Messages/include/rtcm/RTCM2.h b/src/tmx/Messages/include/rtcm/RTCM2.h index 5ae79b414..f4ee050ee 100644 --- a/src/tmx/Messages/include/rtcm/RTCM2.h +++ b/src/tmx/Messages/include/rtcm/RTCM2.h @@ -296,30 +296,30 @@ class RTCMMessage: public TmxRtcmMessage { tmx::messages::RtcmMessage get_RtcmMessage() { tmx::byte_stream msgContents = get_contents(); -// #if SAEJ2735_SPEC < 63 -// RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); -// memset(rtcm, 0, sizeof(RTCM_Corrections)); - -// rtcm->msgID = DSRCmsgID_rtcmCorrections; -// rtcm->rev = RTCM_Revision_rtcmRev2_3; - -// // Set the header -// rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); -// rtcm->rtcmHeader.size = 5; -// rtcm->rtcmHeader.buf[0] = 0x0E; -// rtcm->rtcmHeader.buf[1] = 0x00; -// rtcm->rtcmHeader.buf[2] = 0x00; -// rtcm->rtcmHeader.buf[3] = 0x00; -// rtcm->rtcmHeader.buf[4] = 0x00; - -// // Copy the message bytes -// RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); -// rtcmMessage->payload.size = msgContents.size(); -// rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); -// memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); - -// ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); -// #else +#if SAEJ2735_SPEC < 63 + RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); + memset(rtcm, 0, sizeof(RTCM_Corrections)); + + rtcm->msgID = DSRCmsgID_rtcmCorrections; + rtcm->rev = RTCM_Revision_rtcmRev2_3; + + // Set the header + rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); + rtcm->rtcmHeader.size = 5; + rtcm->rtcmHeader.buf[0] = 0x0E; + rtcm->rtcmHeader.buf[1] = 0x00; + rtcm->rtcmHeader.buf[2] = 0x00; + rtcm->rtcmHeader.buf[3] = 0x00; + rtcm->rtcmHeader.buf[4] = 0x00; + + // Copy the message bytes + RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); + rtcmMessage->payload.size = msgContents.size(); + rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); + memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); + + ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); +#else RTCMcorrections *rtcm = (RTCMcorrections *)calloc(1, sizeof(RTCMcorrections)); memset(rtcm, 0, sizeof(RTCMcorrections)); @@ -332,7 +332,7 @@ class RTCMMessage: public TmxRtcmMessage { memcpy(rtcmMessage->buf, msgContents.data(), rtcmMessage->size); ASN_SET_ADD(&rtcm->msgs.list, rtcmMessage); -// #endif +#endif rtcm->msgCnt = this->get_SequenceNumber(); return tmx::messages::RtcmMessage(rtcm); diff --git a/src/tmx/Messages/include/rtcm/RTCM3.h b/src/tmx/Messages/include/rtcm/RTCM3.h index 44fd7bb27..9aac5ea7c 100644 --- a/src/tmx/Messages/include/rtcm/RTCM3.h +++ b/src/tmx/Messages/include/rtcm/RTCM3.h @@ -229,30 +229,30 @@ class RTCMMessage: public TmxRtcmMessage { tmx::messages::RtcmMessage get_RtcmMessage() { tmx::byte_stream msgContents = get_contents(); -// #if SAEJ2735_SPEC < 63 -// RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); -// memset(rtcm, 0, sizeof(RTCM_Corrections)); - -// rtcm->msgID = DSRCmsgID_rtcmCorrections; -// rtcm->rev = RTCM_Revision_rtcmRev3_0; - -// // Set the header -// rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); -// rtcm->rtcmHeader.size = 5; -// rtcm->rtcmHeader.buf[0] = 0x0E; -// rtcm->rtcmHeader.buf[1] = 0x00; -// rtcm->rtcmHeader.buf[2] = 0x00; -// rtcm->rtcmHeader.buf[3] = 0x00; -// rtcm->rtcmHeader.buf[4] = 0x00; - -// // Copy the message bytes -// RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); -// rtcmMessage->payload.size = msgContents.size(); -// rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); -// memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); - -// ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); -// #else +#if SAEJ2735_SPEC < 63 + RTCM_Corrections *rtcm = (RTCM_Corrections *)calloc(1, sizeof(RTCM_Corrections)); + memset(rtcm, 0, sizeof(RTCM_Corrections)); + + rtcm->msgID = DSRCmsgID_rtcmCorrections; + rtcm->rev = RTCM_Revision_rtcmRev3_0; + + // Set the header + rtcm->rtcmHeader.buf = (uint8_t *)malloc(5*sizeof(uint8_t)); + rtcm->rtcmHeader.size = 5; + rtcm->rtcmHeader.buf[0] = 0x0E; + rtcm->rtcmHeader.buf[1] = 0x00; + rtcm->rtcmHeader.buf[2] = 0x00; + rtcm->rtcmHeader.buf[3] = 0x00; + rtcm->rtcmHeader.buf[4] = 0x00; + + // Copy the message bytes + RTCMmsg *rtcmMessage = (RTCMmsg*)calloc(1, sizeof(RTCMmsg)); + rtcmMessage->payload.size = msgContents.size(); + rtcmMessage->payload.buf = (byte_t *)calloc(rtcmMessage->payload.size, sizeof(byte_t)); + memcpy(rtcmMessage->payload.buf, msgContents.data(), rtcmMessage->payload.size); + + ASN_SET_ADD(&rtcm->rtcmSets.list, rtcmMessage); +#else RTCMcorrections *rtcm = (RTCMcorrections *)calloc(1, sizeof(RTCMcorrections)); memset(rtcm, 0, sizeof(RTCMcorrections)); @@ -265,7 +265,7 @@ class RTCMMessage: public TmxRtcmMessage { memcpy(rtcmMessage->buf, msgContents.data(), rtcmMessage->size); ASN_SET_ADD(&rtcm->msgs.list, rtcmMessage); -// #endif +#endif rtcm->msgCnt = 0; return tmx::messages::RtcmMessage(rtcm); diff --git a/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp index d52346574..a1a133110 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/BasicSafetyMessage.hpp @@ -13,9 +13,9 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +#else TMX_J2735_DECLARE(Bsm, BasicSafetyMessage, api::basicSafetyMessage, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_BASICSAFETYMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp index 45fd6886f..a7072bc03 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/CommonSafetyRequestMessage.hpp @@ -12,11 +12,11 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest_D, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest_D, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) +#else TMX_J2735_DECLARE(Csr, CommonSafetyRequest, api::commonSafetyRequest, api::MSGSUBTYPE_COMMONSAFETYREQUEST_STRING) -// #endif +#endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp index 5d79eb8c2..db0c11de7 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/EmergencyVehicleAlertMessage.hpp @@ -12,11 +12,11 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert_D, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert_D, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) +#else TMX_J2735_DECLARE(Eva, EmergencyVehicleAlert, api::emergencyVehicleAlert, api::MSGSUBTYPE_EMERGENCYVEHICLEALERT_STRING) -// #endif +#endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp index 3cf6b5a92..9decb0dba 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/IntersectionCollisionMessage.hpp @@ -12,11 +12,11 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision_D, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision_D, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) +#else TMX_J2735_DECLARE(IntersectionCollision, IntersectionCollision, api::intersectionCollision, api::MSGSUBTYPE_INTERSECTIONCOLLISION_STRING) -// #endif +#endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp index 740c7d5de..1fa6eadf8 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageFactory.hpp @@ -17,17 +17,17 @@ // Need to include all the types #include -// #if SAEJ2735_SPEC < 63 -// #include -// #endif +#if SAEJ2735_SPEC < 63 +#include +#endif #include #include #include #include #include -// #if SAEJ2735_SPEC < 63 -// #include -// #endif +#if SAEJ2735_SPEC < 63 +#include +#endif #include #include #include @@ -54,18 +54,18 @@ struct ENDOFLIST {}; template struct message_type_list {}; using message_types = message_type_list< BsmMessage, -// #if SAEJ2735_SPEC < 63 -// BsmvMessage, -// #endif +#if SAEJ2735_SPEC < 63 + BsmvMessage, +#endif CsrMessage, EvaMessage, IntersectionCollisionMessage, MapDataMessage, NmeaMessage, PdmMessage, -// #if SAEJ2735_SPEC < 63 -// PmmMessage, -// #endif +#if SAEJ2735_SPEC < 63 + PmmMessage, +#endif PsmMessage, PvdMessage, RsaMessage, @@ -179,18 +179,18 @@ class J2735MessageFactory if (byInt.size() <= 0 || byStr.size() <= 0) { add_allocator_to_maps(); -// #if SAEJ2735_SPEC < 63 -// add_allocator_to_maps(); -// #endif +#if SAEJ2735_SPEC < 63 + add_allocator_to_maps(); +#endif add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); -// #if SAEJ2735_SPEC < 63 -// add_allocator_to_maps(); -// #endif +#if SAEJ2735_SPEC < 63 + add_allocator_to_maps(); +#endif add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); @@ -206,9 +206,9 @@ class J2735MessageFactory add_allocator_to_maps(); add_allocator_to_maps(); add_allocator_to_maps(); -// #if SAEJ2735_SPEC < 63 -// add_allocator_to_maps(); -// #endif +#if SAEJ2735_SPEC < 63 + add_allocator_to_maps(); +#endif } } @@ -417,11 +417,11 @@ class J2735MessageFactory // Always try the default encoding first ASN1_CODEC Codec; -// #if SAEJ2735_SPEC < 63 -// tmx::messages::codec::uper OtherCodec; -// #else +#if SAEJ2735_SPEC < 63 + tmx::messages::codec::uper OtherCodec; +#else tmx::messages::codec::der OtherCodec; -// #endif +#endif int id = Codec.decode_contentId(bytes); diff --git a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp index 244806101..b8f56902f 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/J2735MessageTemplate.hpp @@ -38,32 +38,50 @@ routeable_message::get_payload return encMsg.get_payload(); \ } -// #if SAEJ2735_SPEC < 63 -// #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ -// template <> \ -// inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ -// (const typename MessageFrameTraits::message_type *ptr) \ -// { return tmx::messages::j2735::UperFrameDecode(ptr); } - -// #define TMX_J2735_MESSAGE_FRAME_TO(T) \ -// template <> \ -// inline typename MessageFrameTraits::message_type *\ -// _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ -// { return tmx::messages::j2735::UperFrameEncode(ptr); } - -// #elif SAEJ2735_SPEC < 2020 -// #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ -// template <> \ -// inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ -// (const typename MessageFrameTraits::message_type *ptr) \ -// { \ -// if (ptr && ptr->value.present == value_PR_ ##T) \ -// return (T *)&(ptr->value.choice.T); \ -// else \ -// return 0; \ -// } - -// #else +#if SAEJ2735_SPEC < 63 +#define TMX_J2735_MESSAGE_FRAME_FROM(T) \ +template <> \ +inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ + (const typename MessageFrameTraits::message_type *ptr) \ +{ return tmx::messages::j2735::UperFrameDecode(ptr); } + +#define TMX_J2735_MESSAGE_FRAME_TO(T) \ +template <> \ +inline typename MessageFrameTraits::message_type *\ + _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ +{ return tmx::messages::j2735::UperFrameEncode(ptr); } + +#elif SAEJ2735_SPEC < 2020 +#define TMX_J2735_MESSAGE_FRAME_FROM(T) \ +template <> \ +inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ + (const typename MessageFrameTraits::message_type *ptr) \ +{ \ + if (ptr && ptr->value.present == value_PR_ ##T) \ + return (T *)&(ptr->value.choice.T); \ + else \ + return 0; \ +} + +#define TMX_J2735_MESSAGE_FRAME_TO(T) \ +template <> \ +inline typename MessageFrameTraits::message_type *\ + _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ +{ \ + if (ptr) \ + { \ + typename MessageFrameTraits::message_type *frame = \ + (typename MessageFrameTraits::message_type *)\ + calloc(1, sizeof(typename MessageFrameTraits::message_type)); \ + frame->messageId = get_default_messageId< SaeJ2735Traits >(); \ + frame->value.present = value_PR_ ##T; \ + frame->value.choice.T = *(ptr); \ + return frame; \ + } \ + return 0; \ +} + +#else #define TMX_J2735_MESSAGE_FRAME_FROM(T) \ template <> \ inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ @@ -74,28 +92,7 @@ inline T *_j2735_cast< SaeJ2735Traits, MessageFrameTraits>\ else \ return 0; \ } -// #endif - -// #if SAEJ2735_SPEC < 2020 -// #define TMX_J2735_MESSAGE_FRAME_TO(T) \ -// template <> \ -// inline typename MessageFrameTraits::message_type *\ -// _j2735_cast< MessageFrameTraits, SaeJ2735Traits >(const T *ptr) \ -// { \ -// if (ptr) \ -// { \ -// typename MessageFrameTraits::message_type *frame = \ -// (typename MessageFrameTraits::message_type *)\ -// calloc(1, sizeof(typename MessageFrameTraits::message_type)); \ -// frame->messageId = get_default_messageId< SaeJ2735Traits >(); \ -// frame->value.present = value_PR_ ##T; \ -// frame->value.choice.T = *(ptr); \ -// return frame; \ -// } \ -// return 0; \ -// } - -// #else + #define TMX_J2735_MESSAGE_FRAME_TO(T) \ template <> \ inline typename MessageFrameTraits::message_type *\ @@ -114,8 +111,7 @@ inline typename MessageFrameTraits::message_type *\ return 0; \ } -// #endif -// #endif +#endif #define TMX_J2735_DECLARE_MESSAGE(NM, T, ID, TYPE) \ TMX_J2735_NAMESPACE_START(tmx) \ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp b/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp index 6de051348..364e1bd88 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/MessageFrame.hpp @@ -8,22 +8,22 @@ #ifndef TMX_J2735_MESSAGES_MESSAGEFRAME_HPP_ #define TMX_J2735_MESSAGES_MESSAGEFRAME_HPP_ -// #if SAEJ2735_SPEC < 63 -// #include -// #else +#if SAEJ2735_SPEC < 63 +#include +#else #include -// #endif +#endif #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE_MESSAGE(UperFrame, UPERframe, api::uperFrame_D, api::MSGSUBTYPE_UPERFRAME_D_STRING); +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE_MESSAGE(UperFrame, UPERframe, api::uperFrame_D, api::MSGSUBTYPE_UPERFRAME_D_STRING); -// typedef UperFrameTraits MessageFrameTraits; -// typedef UperFrameMessage MessageFrameMessage; +typedef UperFrameTraits MessageFrameTraits; +typedef UperFrameMessage MessageFrameMessage; -// #else +#else TMX_J2735_DECLARE_MESSAGE(MessageFrame, MessageFrame, api::uperFrame_D, "MessageFrame") -// #endif +#endif TMX_J2735_DECLARE_END diff --git a/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp index 94c097870..c805db83d 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/NmeaMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ #define TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ -// #if SAEJ2735_SPEC < 63 -// #include -// #else +#if SAEJ2735_SPEC < 63 +#include +#else #include -// #endif +#endif #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Nmea, NMEA_Corrections, api::nmeaCorrections_D, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Nmea, NMEA_Corrections, api::nmeaCorrections_D, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) +#else TMX_J2735_DECLARE(Nmea, NMEAcorrections, api::nmeaCorrections, api::MSGSUBTYPE_NMEACORRECTIONS_STRING) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_NMEAMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp index 935b3e74a..66fe9d84c 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/ProbeDataManagementMessage.hpp @@ -12,11 +12,11 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement_D, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement_D, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) +#else TMX_J2735_DECLARE(Pdm, ProbeDataManagement, api::probeDataManagement, api::MSGSUBTYPE_PROBEDATAMANAGEMENT_STRING) -// #endif +#endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) diff --git a/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp index 7e2ce2a73..cf27d9b87 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/ProbeVehicleDataMessage.hpp @@ -12,11 +12,11 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData_D, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData_D, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) +#else TMX_J2735_DECLARE(Pvd, ProbeVehicleData, api::probeVehicleData, api::MSGSUBTYPE_PROBEVEHICLEDATA_STRING) -// #endif +#endif // Specialize the unique key function TMX_J2735_NAMESPACE_START(tmx) @@ -26,15 +26,15 @@ TMX_J2735_NAMESPACE_START(j2735) template <> inline int get_j2735_message_key(std::shared_ptr message) { if (message && message->probeID && message->probeID->id) { -// #if SAEJ2735_SPEC < 63 -// { -// TemporaryID_t &id = *message->probeID->id; -// #else +#if SAEJ2735_SPEC < 63 + { + TemporaryID_t &id = *message->probeID->id; +#else if (message->probeID->id->present == VehicleID_PR_stationID) { return (int)message->probeID->id->choice.stationID; } else if (message->probeID->id->present == VehicleID_PR_entityID) { TemporaryID_t &id = message->probeID->id->choice.entityID; -// #endif +#endif tmx::byte_stream bytes(fmax(id.size, sizeof(int))); ::memcpy(bytes.data(), id.buf, bytes.size()); return *((int *)bytes.data()); diff --git a/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp index 08f5685b1..9fc7adb18 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/RtcmMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ #define TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ -// #if SAEJ2735_SPEC < 63 -// #include -// #else +#if SAEJ2735_SPEC < 63 +#include +#else #include -// #endif +#endif #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Rtcm, RTCM_Corrections, api::rtcmCorrections_D, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Rtcm, RTCM_Corrections, api::rtcmCorrections_D, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) +#else TMX_J2735_DECLARE(Rtcm, RTCMcorrections, api::rtcmCorrections, api::MSGSUBTYPE_RTCMCORRECTIONS_STRING) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_RTCMMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp b/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp index 5770f1b7a..66b35a87d 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/SignalRequestMessage.hpp @@ -8,18 +8,18 @@ #ifndef TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ #define TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ -// #if SAEJ2735_SPEC < 63 -// #include -// #else +#if SAEJ2735_SPEC < 63 +#include +#else #include -// #endif +#endif #include #include -// #if SAEJ2735_SPEC < 63 -// TMX_J2735_DECLARE(Srm, SignalRequestMsg, api::signalRequestMessage_D, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) -// #else +#if SAEJ2735_SPEC < 63 +TMX_J2735_DECLARE(Srm, SignalRequestMsg, api::signalRequestMessage_D, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) +#else TMX_J2735_DECLARE(Srm, SignalRequestMessage, api::signalRequestMessage, api::MSGSUBTYPE_SIGNALREQUESTMESSAGE_STRING) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_SIGNALREQUESTMESSAGE_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp index e6400b0a8..3f4bc11b0 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage00.hpp @@ -13,7 +13,7 @@ #include #include -// #if SAEJ2735_SPEC >= 63 +#if SAEJ2735_SPEC >= 63 TMX_J2735_DECLARE(tsm0, TestMessage00, api::testMessage00, api::MSGSUBTYPE_TESTMESSAGE00_STRING) // Specialize the unique key function @@ -36,7 +36,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE00_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp index b484ed5b3..0b16f7ab4 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage01.hpp @@ -13,9 +13,9 @@ #include #include -// #if SAEJ2735_SPEC >= 63 -//TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -//#else +#if SAEJ2735_SPEC >= 63 +// TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +// #else TMX_J2735_DECLARE(tsm1, TestMessage01, api::testMessage01, api::MSGSUBTYPE_TESTMESSAGE01_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE05_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp index 1055dff7b..a1179ce3c 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage02.hpp @@ -13,9 +13,9 @@ #include #include -// #if SAEJ2735_SPEC >= 63 -//TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -//#else +#if SAEJ2735_SPEC >= 63 +// TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +// #else TMX_J2735_DECLARE(tsm2, TestMessage02, api::testMessage02, api::MSGSUBTYPE_TESTMESSAGE02_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE02_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp index bf1ff17d3..0be15cc22 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage03.hpp @@ -13,7 +13,7 @@ #include #include -// #if SAEJ2735_SPEC >= 63 +#if SAEJ2735_SPEC >= 63 TMX_J2735_DECLARE(tsm3, TestMessage03, api::testMessage03, api::MSGSUBTYPE_TESTMESSAGE03_STRING) // Specialize the unique key function @@ -36,7 +36,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE00_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp index 632d97d20..c0df98a0b 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage04.hpp @@ -13,9 +13,9 @@ #include #include -// #if SAEJ2735_SPEC >= 63 -//TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -//#else +#if SAEJ2735_SPEC >= 63 +// TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +// #else TMX_J2735_DECLARE(tsm4, TestMessage04, api::testMessage04, api::MSGSUBTYPE_TESTMESSAGE04_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE04_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp b/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp index 32cfc0c61..aeffcc6dd 100644 --- a/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp +++ b/src/tmx/TmxApi/tmx/j2735_messages/testMessage05.hpp @@ -13,9 +13,9 @@ #include #include -// #if SAEJ2735_SPEC >= 63 -//TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) -//#else +#if SAEJ2735_SPEC >= 63 +// TMX_J2735_DECLARE(tsm6, TestMessage06, api::basicSafetyMessage_D, api::MSGSUBTYPE_BASICSAFETYMESSAGE_STRING) +// #else TMX_J2735_DECLARE(tsm5, TestMessage05, api::testMessage05, api::MSGSUBTYPE_TESTMESSAGE05_STRING) // Specialize the unique key function @@ -38,7 +38,7 @@ TMX_J2735_NAMESPACE_END(j2735) TMX_J2735_NAMESPACE_END(messages) TMX_J2735_NAMESPACE_END(tmx) -// #endif +#endif #endif /* TMX_J2735_MESSAGES_TESTMESSAGE05_HPP_ */ diff --git a/src/tmx/TmxApi/tmx/messages/IvpJ2735.c b/src/tmx/TmxApi/tmx/messages/IvpJ2735.c index e35a042d7..03001a1e7 100644 --- a/src/tmx/TmxApi/tmx/messages/IvpJ2735.c +++ b/src/tmx/TmxApi/tmx/messages/IvpJ2735.c @@ -11,16 +11,16 @@ //#include #include -// #if SAEJ2735_SPEC < 63 -// #include -// #include -// #include -// #include -// #else +#if SAEJ2735_SPEC < 63 +#include +#include +#include +#include +#else #include #include #include -// #endif +#endif #include #include #include @@ -42,35 +42,35 @@ asn_TYPE_descriptor_t *getTypeDescriptorFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return &asn_DEF_AlaCarte; case DSRCmsgID_basicSafetyMessage: return &asn_DEF_BasicSafetyMessage; -// #if SAEJ2735_SPEC < 63 -// case DSRCmsgID_basicSafetyMessageVerbose: return &asn_DEF_BasicSafetyMessageVerbose; -// #endif +#if SAEJ2735_SPEC < 63 + case DSRCmsgID_basicSafetyMessageVerbose: return &asn_DEF_BasicSafetyMessageVerbose; +#endif case DSRCmsgID_commonSafetyRequest: return &asn_DEF_CommonSafetyRequest; case DSRCmsgID_emergencyVehicleAlert: return &asn_DEF_EmergencyVehicleAlert; case DSRCmsgID_intersectionCollisionAlert: return &asn_DEF_IntersectionCollision; case DSRCmsgID_mapData: return &asn_DEF_MapData; case DSRCmsgID_nmeaCorrections: -// #if SAEJ2735_SPEC < 63 -// return &asn_DEF_NMEA_Corrections; -// #else +#if SAEJ2735_SPEC < 63 + return &asn_DEF_NMEA_Corrections; +#else return &asn_DEF_NMEAcorrections; -// #endif +#endif case DSRCmsgID_probeDataManagement: return &asn_DEF_ProbeDataManagement; case DSRCmsgID_probeVehicleData: return &asn_DEF_ProbeVehicleData; case DSRCmsgID_roadSideAlert: return &asn_DEF_RoadSideAlert; case DSRCmsgID_rtcmCorrections: -// #if SAEJ2735_SPEC < 63 -// return &asn_DEF_RTCM_Corrections; -// #else +#if SAEJ2735_SPEC < 63 + return &asn_DEF_RTCM_Corrections; +#else return &asn_DEF_RTCMcorrections; -// #endif +#endif case DSRCmsgID_signalPhaseAndTimingMessage: return &asn_DEF_SPAT; case DSRCmsgID_signalRequestMessage: -// #if SAEJ2735_SPEC < 63 -// return &asn_DEF_SignalRequestMsg; -// #else +#if SAEJ2735_SPEC < 63 + return &asn_DEF_SignalRequestMsg; +#else return &asn_DEF_SignalRequestMessage; -// #endif +#endif case DSRCmsgID_signalStatusMessage: return &asn_DEF_SignalStatusMessage; case DSRCmsgID_travelerInformation: return &asn_DEF_TravelerInformation; default: break; @@ -85,7 +85,7 @@ const char *getMessageSubTypeFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return "ACM"; case DSRCmsgID_basicSafetyMessage: return "BSM"; - // case DSRCmsgID_basicSafetyMessageVerbose: return "BSMV"; + case DSRCmsgID_basicSafetyMessageVerbose: return "BSMV"; case DSRCmsgID_commonSafetyRequest: return "CSR"; case DSRCmsgID_emergencyVehicleAlert: return "EVA"; case DSRCmsgID_intersectionCollisionAlert: return "IC"; @@ -111,7 +111,7 @@ const char *getMessageDescriptionFromMsgId(e_DSRCmsgID msgId) { // case DSRCmsgID_alaCarteMessage: return "DSRC AlaCarte Message"; case DSRCmsgID_basicSafetyMessage: return "DSRC Basic Safety Message"; - // case DSRCmsgID_basicSafetyMessageVerbose: return "DSRC Basic Safety Message Verbose"; + case DSRCmsgID_basicSafetyMessageVerbose: return "DSRC Basic Safety Message Verbose"; case DSRCmsgID_commonSafetyRequest: return "DSRC Common Safety Request"; case DSRCmsgID_emergencyVehicleAlert: return "DSRC Emergency Vehicle Alert"; case DSRCmsgID_intersectionCollisionAlert: return "DSRC Intersection Collision"; diff --git a/src/tmx/TmxApi/tmx/messages/IvpJ2735.h b/src/tmx/TmxApi/tmx/messages/IvpJ2735.h index b1beee0d3..eef5455d8 100644 --- a/src/tmx/TmxApi/tmx/messages/IvpJ2735.h +++ b/src/tmx/TmxApi/tmx/messages/IvpJ2735.h @@ -27,7 +27,7 @@ extern "C" #endif // Include this for backwards compability -// #if SAEJ2735_SPEC >= 63 +#if SAEJ2735_SPEC >= 63 /* Dependencies */ typedef enum DSRCmsgID { DSRCmsgID_reserved = 0, @@ -60,7 +60,7 @@ typedef enum DSRCmsgID { */ } e_DSRCmsgID; -// #endif +#endif typedef struct { void *msgStructure; diff --git a/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp b/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp index b6a82c4a2..619dab9cd 100644 --- a/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp +++ b/src/tmx/TmxApi/tmx/messages/TmxJ2735Codec.hpp @@ -13,11 +13,11 @@ #define TMX_J2735_MAX_DATA_SIZE 4000 -// #if SAEJ2735_SPEC < 63 -// #define ASN1_CODEC tmx::messages::codec::der -// #else +#if SAEJ2735_SPEC < 63 +#define ASN1_CODEC tmx::messages::codec::der +#else #define ASN1_CODEC tmx::messages::codec::uper -// #endif +#endif #include @@ -177,17 +177,17 @@ struct uper MessageFrameMessage::message_type *frame = NULL; asn_TYPE_descriptor_t *descriptor = NULL; -// #if SAEJ2735_SPEC < 63 -// static uper decoder; +#if SAEJ2735_SPEC < 63 + static uper decoder; -// descriptor = MessageFrameMessage::get_descriptor(); + descriptor = MessageFrameMessage::get_descriptor(); -// asn_dec_rval_t ret = decoder.decode((void **)&frame, bytes, descriptor); -// if (ret.code != RC_OK || frame == NULL) -// return -1; + asn_dec_rval_t ret = decoder.decode((void **)&frame, bytes, descriptor); + if (ret.code != RC_OK || frame == NULL) + return -1; -// id = frame->contentID; -// #else + id = frame->contentID; +#else // Message ID is encoded directly in the message frame, first two bytes if (bytes.size() > 1) id = bytes[0]; @@ -196,7 +196,7 @@ struct uper id <<= 8; id |= bytes[1]; } -// #endif +#endif if (descriptor) ASN_STRUCT_FREE((*descriptor), frame); @@ -554,57 +554,57 @@ class TmxJ2735EncodedMessage: public TmxJ2735EncodedMessageBase typedef TmxJ2735EncodedMessage MessageFrameEncodedMessage; -// #if SAEJ2735_SPEC < 63 -// namespace j2735 { - -// // Decode and encode for UPER frame -// template -// T *UperFrameDecode(const typename MessageFrameMessage::message_type *ptr) -// { -// if (ptr && ptr->contentID == get_default_messageId< SaeJ2735Traits >()) -// { -// tmx::messages::codec::uper< TmxJ2735Message > uperDecoder; -// tmx::byte_stream uperFrameBytes(ptr->msgBlob.size); -// memcpy(uperFrameBytes.data(), ptr->msgBlob.buf, ptr->msgBlob.size); -// T *obj = 0; -// asn_dec_rval_t udRet = uperDecoder.decode((void **)obj, uperFrameBytes); -// if (udRet.code == RC_OK && obj) -// return obj; -// } - -// return 0; -// } - -// template -// typename MessageFrameMessage::message_type *UperFrameEncode(const T *ptr) -// { -// if (ptr) -// { -// tmx::messages::codec::uper< TmxJ2735Message > uperEncoder; -// tmx::byte_stream uperFrameBytes(TMX_J2735_MAX_DATA_SIZE); -// asn_enc_rval_t ueRet = uperEncoder.encode(ptr, uperFrameBytes); -// if (ueRet.encoded > 0) -// { -// typename MessageFrameMessage::message_type *uperFrame = -// (typename MessageFrameMessage::message_type *) -// calloc(1, sizeof(typename MessageFrameMessage::message_type)); - -// uperFrameBytes.resize(ueRet.encoded); - -// uperFrame->msgID = get_default_messageId< MessageFrameTraits >(); -// uperFrame->contentID = get_default_messageId< SaeJ2735Traits >(); -// uperFrame->msgBlob.buf = (uint8_t *) calloc(ueRet.encoded, sizeof(uint8_t)); -// uperFrame->msgBlob.size = (int)ueRet.encoded; -// ::memcpy(uperFrame->msgBlob.buf, uperFrameBytes.data(), ueRet.encoded); -// return uperFrame; -// } -// } - -// return 0; -// } - -// } /* End namespace j2735 */ -// #endif +#if SAEJ2735_SPEC < 63 +namespace j2735 { + +// Decode and encode for UPER frame +template +T *UperFrameDecode(const typename MessageFrameMessage::message_type *ptr) +{ + if (ptr && ptr->contentID == get_default_messageId< SaeJ2735Traits >()) + { + tmx::messages::codec::uper< TmxJ2735Message > uperDecoder; + tmx::byte_stream uperFrameBytes(ptr->msgBlob.size); + memcpy(uperFrameBytes.data(), ptr->msgBlob.buf, ptr->msgBlob.size); + T *obj = 0; + asn_dec_rval_t udRet = uperDecoder.decode((void **)obj, uperFrameBytes); + if (udRet.code == RC_OK && obj) + return obj; + } + + return 0; +} + +template +typename MessageFrameMessage::message_type *UperFrameEncode(const T *ptr) +{ + if (ptr) + { + tmx::messages::codec::uper< TmxJ2735Message > uperEncoder; + tmx::byte_stream uperFrameBytes(TMX_J2735_MAX_DATA_SIZE); + asn_enc_rval_t ueRet = uperEncoder.encode(ptr, uperFrameBytes); + if (ueRet.encoded > 0) + { + typename MessageFrameMessage::message_type *uperFrame = + (typename MessageFrameMessage::message_type *) + calloc(1, sizeof(typename MessageFrameMessage::message_type)); + + uperFrameBytes.resize(ueRet.encoded); + + uperFrame->msgID = get_default_messageId< MessageFrameTraits >(); + uperFrame->contentID = get_default_messageId< SaeJ2735Traits >(); + uperFrame->msgBlob.buf = (uint8_t *) calloc(ueRet.encoded, sizeof(uint8_t)); + uperFrame->msgBlob.size = (int)ueRet.encoded; + ::memcpy(uperFrame->msgBlob.buf, uperFrameBytes.data(), ueRet.encoded); + return uperFrame; + } + } + + return 0; +} + +} /* End namespace j2735 */ +#endif } /* End namespace messages */ } /* End namespace tmx */ diff --git a/src/tmx/TmxUtils/src/BsmConverter.cpp b/src/tmx/TmxUtils/src/BsmConverter.cpp index 6c94b7267..534268371 100644 --- a/src/tmx/TmxUtils/src/BsmConverter.cpp +++ b/src/tmx/TmxUtils/src/BsmConverter.cpp @@ -13,9 +13,9 @@ namespace utils { void BsmConverter::ToDecodedBsmMessage(BasicSafetyMessage_t &bsm, tmx::messages::DecodedBsmMessage &decoded) { -// #if SAEJ2735_SPEC < 63 -// ToDecodedBsmMessage(bsm.blob1.buf, decoded); -// #else +#if SAEJ2735_SPEC < 63 + ToDecodedBsmMessage(bsm.blob1.buf, decoded); +#else decoded.set_IsLocationValid(false); decoded.set_IsElevationValid(false); decoded.set_IsSpeedValid(false); @@ -77,69 +77,69 @@ void BsmConverter::ToDecodedBsmMessage(BasicSafetyMessage_t &bsm, tmx::messages: decoded.set_IsSteeringWheelAngleValid(true); } -// #endif +#endif } void BsmConverter::ToDecodedBsmMessage(uint8_t *buf, tmx::messages::DecodedBsmMessage &decoded) { -// #if SAEJ2735_SPEC < 63 -// decoded.set_IsLocationValid(false); -// decoded.set_IsElevationValid(false); -// decoded.set_IsSpeedValid(false); -// decoded.set_IsHeadingValid(false); -// decoded.set_IsSteeringWheelAngleValid(false); - -// decoded.set_TemporaryId(ntohl(*(uint32_t*)(buf+1))); - -// int32_t latitude = (int32_t)ntohl(*(uint32_t*)(buf+7)); -// int32_t longitude = (int32_t)ntohl(*(uint32_t*)(buf+11)); - -// if (latitude != 900000001 && longitude != 1800000001) -// { -// decoded.set_Latitude((double)latitude/10000000); -// decoded.set_Longitude((double)longitude/10000000); -// decoded.set_IsLocationValid(true); -// } - -// int16_t elevation = ntohs(*(uint16_t*)(buf+15)); - -// if (elevation != -4095) -// { -// decoded.set_Elevation_m((float)elevation/10.0); -// decoded.set_IsElevationValid(true); -// } - -// uint16_t transmissionAndSpeed = ntohs(*(uint16_t*)(buf+21)); - -// // The speed is contained in bits 0-12. Units are 0.02 meters/sec. -// // A value of 8191 is used when the speed is not known. -// uint16_t speed = (uint16_t)(transmissionAndSpeed & 0x1FFF); - -// if (speed != 8191) -// { -// // Convert from .02 meters/sec to mps. -// decoded.set_Speed_mps(speed / 50.0); -// decoded.set_IsSpeedValid(true); -// } - -// // Heading units are 0.0125 degrees. -// uint16_t heading = ntohs(*(uint16_t*)(buf+23)); - -// if (heading != 28800) -// { -// decoded.set_Heading(heading / 80.0); -// decoded.set_IsHeadingValid(true); -// } - -// // Steering Wheel Angle units are 1.5 degrees. -// int16_t angle = *(int16_t*)(buf+25); - -// if (angle != 127) -// { -// decoded.set_SteeringWheelAngle(angle * 1.5); -// decoded.set_IsSteeringWheelAngleValid(true); -// } -// #endif +#if SAEJ2735_SPEC < 63 + decoded.set_IsLocationValid(false); + decoded.set_IsElevationValid(false); + decoded.set_IsSpeedValid(false); + decoded.set_IsHeadingValid(false); + decoded.set_IsSteeringWheelAngleValid(false); + + decoded.set_TemporaryId(ntohl(*(uint32_t*)(buf+1))); + + int32_t latitude = (int32_t)ntohl(*(uint32_t*)(buf+7)); + int32_t longitude = (int32_t)ntohl(*(uint32_t*)(buf+11)); + + if (latitude != 900000001 && longitude != 1800000001) + { + decoded.set_Latitude((double)latitude/10000000); + decoded.set_Longitude((double)longitude/10000000); + decoded.set_IsLocationValid(true); + } + + int16_t elevation = ntohs(*(uint16_t*)(buf+15)); + + if (elevation != -4095) + { + decoded.set_Elevation_m((float)elevation/10.0); + decoded.set_IsElevationValid(true); + } + + uint16_t transmissionAndSpeed = ntohs(*(uint16_t*)(buf+21)); + + // The speed is contained in bits 0-12. Units are 0.02 meters/sec. + // A value of 8191 is used when the speed is not known. + uint16_t speed = (uint16_t)(transmissionAndSpeed & 0x1FFF); + + if (speed != 8191) + { + // Convert from .02 meters/sec to mps. + decoded.set_Speed_mps(speed / 50.0); + decoded.set_IsSpeedValid(true); + } + + // Heading units are 0.0125 degrees. + uint16_t heading = ntohs(*(uint16_t*)(buf+23)); + + if (heading != 28800) + { + decoded.set_Heading(heading / 80.0); + decoded.set_IsHeadingValid(true); + } + + // Steering Wheel Angle units are 1.5 degrees. + int16_t angle = *(int16_t*)(buf+25); + + if (angle != 127) + { + decoded.set_SteeringWheelAngle(angle * 1.5); + decoded.set_IsSteeringWheelAngleValid(true); + } +#endif } void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decoded, BasicSafetyMessage_t &bsm) @@ -153,114 +153,114 @@ void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decode uint32_t uint32Temp; int32_t int32Temp2; -// #if SAEJ2735_SPEC < 63 - -// bsm.msgID = DSRCmsgID_basicSafetyMessage; - -// bsm.blob1.buf = (uint8_t *)calloc(1, 38); - -// bsm.blob1.buf[0] = decoded.get_MsgCount(); - -// uint32Temp = htonl(decoded.get_TemporaryId()); -// memcpy(bsm.blob1.buf + 1, &uint32Temp, 4); - -// uint16Temp = htons(decoded.get_SecondMark()); -// memcpy(bsm.blob1.buf + 5, &uint16Temp, 2); - -// // Latitude and Longitude are expressed in 1/10th integer microdegrees, as a 31 bit value. -// // The value 900000001 indicates that latitude is not available. -// // The value 1800000001 indicates that longitude is not available. - -// if (decoded.get_IsLocationValid()) -// int32Temp2 = (int32_t)(decoded.get_Latitude() * 10000000.0); -// else -// int32Temp2 = 900000001; - -// uint32Temp = htonl(int32Temp2); -// memcpy(bsm.blob1.buf + 7, &uint32Temp, 4); - -// if (decoded.get_IsLocationValid()) -// int32Temp2 = (int32_t)(decoded.get_Longitude() * 10000000.0); -// else -// int32Temp2 = 1800000001; - -// uint32Temp = htonl(int32Temp2); -// memcpy(bsm.blob1.buf + 11, &uint32Temp, 4); - -// // Elevation is in units of 10 cm steps. -// // max and min values are limited as set below. - -// if (decoded.get_IsElevationValid()) -// { -// if (decoded.get_Elevation_m() > 6143.9) -// int16Temp = 61439; -// else if (decoded.get_Elevation_m() < -409.5) -// int16Temp = -4095; -// int16Temp = decoded.get_Elevation_m() * 10.0; -// } -// else -// int16Temp = -4095; - -// uint16Temp = htons(int16Temp); -// memcpy(bsm.blob1.buf + 15, &uint16Temp, 2); - -// // Positional Accuracy. -// // TODO: implement. -// uint32Temp = 0xFFFFFFFF; -// memcpy(bsm.blob1.buf + 17, &uint32Temp, 4); - -// // Speed and Transmission State. -// // TODO: implement transmission state. currently set to 0. - -// // Convert from mps to .02 meters/sec. -// if (decoded.get_IsSpeedValid()) -// int16Temp = decoded.get_Speed_mps() * 50.0; -// else -// int16Temp = 8191; - -// uint16Temp = htons(int16Temp); -// memcpy(bsm.blob1.buf + 21, &uint16Temp, 2); - -// // Heading units are 0.0125 degrees. -// if (decoded.get_IsHeadingValid()) -// { -// if (decoded.get_Heading() > 359.9875) -// uint16Temp2 = 359.9875 * 80; -// else if (decoded.get_Heading() < 0) -// uint16Temp2 = 0; -// uint16Temp2 = decoded.get_Heading() * 80; -// } -// else -// uint16Temp2 = 28800; - -// uint16Temp = htons(uint16Temp2); -// memcpy(bsm.blob1.buf + 23, &uint16Temp, 2); - -// // Steering Wheel Angle units are 1.5 degrees (-126 to 127). -// if (decoded.get_IsSteeringWheelAngleValid()) -// { -// if (decoded.get_SteeringWheelAngle() > 189) -// int8Temp = 126; -// else if (decoded.get_SteeringWheelAngle() < -189) -// int8Temp = -126; -// int8Temp = decoded.get_SteeringWheelAngle() * 80; -// } -// else -// int8Temp = 127; - -// memcpy(bsm.blob1.buf + 25, &int8Temp, 1); - -// // Acceleration Set 4 Way, Brake System Status, Vehicle Size. -// // TODO: implement. -// long longTemp = 0; -// uint32Temp = 0; -// memcpy(bsm.blob1.buf + 26, &longTemp, 7); -// memcpy(bsm.blob1.buf + 33, &uint32Temp, 2); -// memcpy(bsm.blob1.buf + 35, &uint32Temp, 3); - -// bsm.blob1.size = 38; - -// #else +#if SAEJ2735_SPEC < 63 + + bsm.msgID = DSRCmsgID_basicSafetyMessage; + + bsm.blob1.buf = (uint8_t *)calloc(1, 38); + + bsm.blob1.buf[0] = decoded.get_MsgCount(); + + uint32Temp = htonl(decoded.get_TemporaryId()); + memcpy(bsm.blob1.buf + 1, &uint32Temp, 4); + + uint16Temp = htons(decoded.get_SecondMark()); + memcpy(bsm.blob1.buf + 5, &uint16Temp, 2); + + // Latitude and Longitude are expressed in 1/10th integer microdegrees, as a 31 bit value. + // The value 900000001 indicates that latitude is not available. + // The value 1800000001 indicates that longitude is not available. + + if (decoded.get_IsLocationValid()) + int32Temp2 = (int32_t)(decoded.get_Latitude() * 10000000.0); + else + int32Temp2 = 900000001; + + uint32Temp = htonl(int32Temp2); + memcpy(bsm.blob1.buf + 7, &uint32Temp, 4); + + if (decoded.get_IsLocationValid()) + int32Temp2 = (int32_t)(decoded.get_Longitude() * 10000000.0); + else + int32Temp2 = 1800000001; + + uint32Temp = htonl(int32Temp2); + memcpy(bsm.blob1.buf + 11, &uint32Temp, 4); + + // Elevation is in units of 10 cm steps. + // max and min values are limited as set below. + + if (decoded.get_IsElevationValid()) + { + if (decoded.get_Elevation_m() > 6143.9) + int16Temp = 61439; + else if (decoded.get_Elevation_m() < -409.5) + int16Temp = -4095; + int16Temp = decoded.get_Elevation_m() * 10.0; + } + else + int16Temp = -4095; + + uint16Temp = htons(int16Temp); + memcpy(bsm.blob1.buf + 15, &uint16Temp, 2); + + // Positional Accuracy. + // TODO: implement. + uint32Temp = 0xFFFFFFFF; + memcpy(bsm.blob1.buf + 17, &uint32Temp, 4); + + // Speed and Transmission State. + // TODO: implement transmission state. currently set to 0. + + // Convert from mps to .02 meters/sec. + if (decoded.get_IsSpeedValid()) + int16Temp = decoded.get_Speed_mps() * 50.0; + else + int16Temp = 8191; + + uint16Temp = htons(int16Temp); + memcpy(bsm.blob1.buf + 21, &uint16Temp, 2); + + // Heading units are 0.0125 degrees. + if (decoded.get_IsHeadingValid()) + { + if (decoded.get_Heading() > 359.9875) + uint16Temp2 = 359.9875 * 80; + else if (decoded.get_Heading() < 0) + uint16Temp2 = 0; + uint16Temp2 = decoded.get_Heading() * 80; + } + else + uint16Temp2 = 28800; + + uint16Temp = htons(uint16Temp2); + memcpy(bsm.blob1.buf + 23, &uint16Temp, 2); + + // Steering Wheel Angle units are 1.5 degrees (-126 to 127). + if (decoded.get_IsSteeringWheelAngleValid()) + { + if (decoded.get_SteeringWheelAngle() > 189) + int8Temp = 126; + else if (decoded.get_SteeringWheelAngle() < -189) + int8Temp = -126; + int8Temp = decoded.get_SteeringWheelAngle() * 80; + } + else + int8Temp = 127; + + memcpy(bsm.blob1.buf + 25, &int8Temp, 1); + + // Acceleration Set 4 Way, Brake System Status, Vehicle Size. + // TODO: implement. + long longTemp = 0; + uint32Temp = 0; + memcpy(bsm.blob1.buf + 26, &longTemp, 7); + memcpy(bsm.blob1.buf + 33, &uint32Temp, 2); + memcpy(bsm.blob1.buf + 35, &uint32Temp, 3); + + bsm.blob1.size = 38; + +#else //if(iMsgCount>127 || iMsgCount<0) // iMsgCount = 0; @@ -372,7 +372,7 @@ void BsmConverter::ToBasicSafetyMessage(tmx::messages::DecodedBsmMessage &decode bsm.coreData.brakes.brakeBoost=BrakeBoostApplied_unavailable; bsm.coreData.brakes.auxBrakes=AuxiliaryBrakeStatus_unavailable; -// #endif +#endif } } /* namespace utils */ diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 1551eabf6..f1dfcb82b 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -658,13 +658,19 @@ TEST_F (J2735MessageTest, EncodeSrm) requestType->role = 0; requestor->type = requestType; RequestorPositionVector_t *position = (RequestorPositionVector_t *)calloc(1, sizeof(RequestorPositionVector_t)); - // DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #if SAEJ2735_SPEC < 2020 + DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #else Common_Angle_t *heading_angle = (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); + #endif *heading_angle = 123; position->heading = heading_angle; Position3D_t *position_point = (Position3D_t *)calloc(1, sizeof(Position3D_t)); - // DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + #if SAEJ2735_SPEC < 2020 + DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + #else Common_Elevation_t *elev = (Common_Elevation_t *)calloc(1, sizeof(Common_Elevation_t)); + #endif *elev = 12; position_point->elevation = elev; position_point->lat = 3712333; @@ -735,8 +741,11 @@ TEST_F (J2735MessageTest, EncodeSrm) TEST_F(J2735MessageTest, EncodeTravelerInformation){ //Advisory - // string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; + #if SAEJ2735_SPEC < 2020 + string timStr="1115549000000000023667BAC0389549775-7714918353901111111111111111115549170389549775-7714918353901111111111111111
389549775-771491835390
74
007186curve13569987654321
"; + #else string timStr="100000000000F9E1D8D0389549153-771488965400000000000000000020233945743200050389549153-7714889654003660000000000000000-771489394389549194-10-77148721538954899610-771485210389548981100027Curve Ahead2564258720"; + #endif std::stringstream ss; TimMessage timMsg; TimEncodedMessage timEnc; @@ -746,8 +755,11 @@ TEST_F(J2735MessageTest, EncodeTravelerInformation){ timMsg.set_contents(container.get_storage().get_tree()); timEnc.encode_j2735_message(timMsg); ASSERT_EQ(31, timEnc.get_msgId()); - // string expectedHex = "001f526011c35d000000000023667bac0407299b9ef9e7a9b9408230dfffe4386ba00078005a53373df3cf5372810461b90ffff53373df3cf53728104618129800010704a04c7d7976ca3501872e1bb66ad19b2620"; + #if SAEJ2735_SPEC < 2020 + string expectedHex = "001f526011c35d000000000023667bac0407299b9ef9e7a9b9408230dfffe4386ba00078005a53373df3cf5372810461b90ffff53373df3cf53728104618129800010704a04c7d7976ca3501872e1bb66ad19b2620"; + #else string expectedHex = "001f6820100000000000f9e1d8d0803299b9eac27a9baa74232000000fcec0a9df4028007e53373d584f53754e846400b720000000b8f5374e3666e7ac5013ece3d4ddc1099b9e988050538f5378f9666e7a5a814140034000dea1f5e5db2a083a32e1c80a048b26a22100"; + #endif ASSERT_EQ(expectedHex, timEnc.get_payload_str()); } diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp index 134eefaac..c864b2497 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ2735SpatConverter.cpp @@ -152,20 +152,22 @@ namespace CARMAStreetsPlugin void JsonToJ2735SpatConverter::convertJson2TimeChangeDetail(const Json::Value &time_change_detail_json, TimeChangeDetails_t *timing) const { + #if SAEJ2735_SPEC < 2020 + timing->startTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->maxEndTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->likelyTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + timing->nextTime = (DSRC_TimeMark_t *)calloc(1, sizeof(DSRC_TimeMark_t)); + #else timing->startTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); + timing->maxEndTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); + timing->likelyTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); + timing->nextTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); + #endif *timing->startTime = time_change_detail_json["start_time"].asInt(); - timing->minEndTime = time_change_detail_json["min_end_time"].asInt(); - - timing->maxEndTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->maxEndTime = time_change_detail_json["max_end_time"].asInt(); - - timing->likelyTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->likelyTime = time_change_detail_json["likely_time"].asInt(); - - timing->nextTime = (SPAT_TimeMark_t *)calloc(1, sizeof(SPAT_TimeMark_t)); *timing->nextTime = time_change_detail_json["next_time"].asInt(); - timing->confidence = (TimeIntervalConfidence_t *)calloc(1, sizeof(TimeIntervalConfidence_t)); *timing->confidence = time_change_detail_json["confidence"].asInt(); } diff --git a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp index f19dd2e83..e1caa128f 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/src/JsonToJ3224SDSMConverter.cpp @@ -94,8 +94,11 @@ namespace CARMAStreetsPlugin auto ref_pos_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); ref_pos_ptr->lat = sdsm_json["ref_pos"]["lat"].asInt64(); ref_pos_ptr->Long = sdsm_json["ref_pos"]["long"].asInt64(); - // auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + #if SAEJ2735_SPEC < 2020 + auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + #else auto elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + #endif *elevation_ptr = sdsm_json["ref_pos"]["elevation"].asInt64(); ref_pos_ptr->elevation = elevation_ptr; diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp index 30aad4cd9..5d81236bc 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735MapToJsonConverter.cpp @@ -16,7 +16,11 @@ namespace unit_test CARMAStreetsPlugin::J2735MapToJsonConverter converter; MapData *mapData = (MapData *)calloc(1, sizeof(MapData)); LayerID_t layer_id = 1; + #if SAEJ2735_SPEC < 2020 + DSRC_MsgCount_t msgIssueRevision = 2; + #else Common_MsgCount_t msgIssueRevision = 2; + #endif mapData->layerID = &layer_id; mapData->msgIssueRevision = msgIssueRevision; auto layer_type = std::make_unique(1); diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp index 834bc062b..80d6931d2 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J2735ToSRMJsonConverter.cpp @@ -29,13 +29,19 @@ class test_J2735ToSRMJsonConverter : public ::testing::Test requestType->role = 0; requestor->type = requestType; RequestorPositionVector_t *position = (RequestorPositionVector_t *)calloc(1, sizeof(RequestorPositionVector_t)); - // DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #if SAEJ2735_SPEC < 2020 + DSRC_Angle_t *heading_angle = (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #else Common_Angle_t *heading_angle = (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); + #endif *heading_angle = 123; position->heading = heading_angle; Position3D_t *position_point = (Position3D_t *)calloc(1, sizeof(Position3D_t)); - // DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + #if SAEJ2735_SPEC < 2020 + DSRC_Elevation_t *elev = (DSRC_Elevation_t *)calloc(1, sizeof(DSRC_Elevation_t)); + #else Common_Elevation_t *elev = (Common_Elevation_t *)calloc(1, sizeof(Common_Elevation_t)); + #endif *elev = 12; position_point->elevation = elev; position_point->lat = 3712333; diff --git a/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp b/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp index 9491fd583..0c8bc67b2 100644 --- a/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp +++ b/src/v2i-hub/CARMAStreetsPlugin/test/test_J3224ToSDSMJsonConverter.cpp @@ -54,7 +54,11 @@ namespace unit_test message->refPos.lat = 400000000; message->refPos.Long = 800000000; + #if SAEJ2735_SPEC < 2020 + auto pos_elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + #else auto pos_elevation_ptr = CARMAStreetsPlugin::create_store_shared(shared_ptrs); + #endif *pos_elevation_ptr = 30; message->refPos.elevation = pos_elevation_ptr; diff --git a/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp b/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp index 076af2a3c..978b4cbb9 100644 --- a/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp +++ b/src/v2i-hub/CswPlugin/src/DsrcBuilder.cpp @@ -35,7 +35,12 @@ void DsrcBuilder::AddCurveSpeedAdvisory(TiDataFrame *frame, unsigned int speedLi void DsrcBuilder::AddItisCode(ITIScodesAndText *advisory, long code) { ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); + #if SAEJ2735_SPEC < 2020 + member->item.present = ITIScodesAndText__Memberitem_PR_itis; + #else member->item.present = ITIScodesAndText__Member__item_PR_itis; + #endif + member->item.choice.itis = code; ASN_SEQUENCE_ADD(&advisory->list, member); } @@ -45,7 +50,11 @@ void DsrcBuilder::AddItisText(ITIScodesAndText *advisory, std::string text) int textLength = text.length(); ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); + #if SAEJ2735_SPEC < 2020 + member->item.present = ITIScodesAndText__Memberitem_PR_text; + #else member->item.present = ITIScodesAndText__Member__item_PR_text; + #endif member->item.choice.text.buf = NULL; OCTET_STRING_fromString(&(member->item.choice.text), text.c_str()); diff --git a/src/v2i-hub/CswPlugin/src/DsrcBuilder.h b/src/v2i-hub/CswPlugin/src/DsrcBuilder.h index 76063efa6..e541e9407 100644 --- a/src/v2i-hub/CswPlugin/src/DsrcBuilder.h +++ b/src/v2i-hub/CswPlugin/src/DsrcBuilder.h @@ -14,18 +14,18 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; -// typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; -// typedef ITIScodesAndText::ITIScodesAndText__List ItisList; -// #else +#if SAEJ2735_SPEC < 63 +typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; +typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; +typedef ITIScodesAndText::ITIScodesAndText__List ItisList; +#else typedef TravelerDataFrame TiDataFrame; typedef ITIScodesAndText__Member ItisMember; typedef ITIScodesAndText ItisList; #include typedef NodeListXY NodeList_t; #include -// #endif +#endif class DsrcBuilder { diff --git a/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp b/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp index 807f83cfb..399444aa3 100644 --- a/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp +++ b/src/v2i-hub/CswPlugin/src/XmlCurveParser.cpp @@ -207,10 +207,10 @@ void XmlCurveParser::ReadRoot(DOMElement* root, TravelerInformation *tim) SpeedLimit = speedLimit; -// #if SAEJ2735_SPEC < 63 -// tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); -// *tim->dataFrameCount = tim->dataFrames.list.count; -// #endif +#if SAEJ2735_SPEC < 63 + tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); + *tim->dataFrameCount = tim->dataFrames.list.count; +#endif // Add Frame Part III (content) for each frame. for (int i = 0; i < tim->dataFrames.list.count; i++) @@ -273,13 +273,13 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) frame->frameType = TravelerInfoType_advisory; -// #if SAEJ2735_SPEC < 63 -// frame->msgId.present = msgId_PR_furtherInfoID; -// #else +#if SAEJ2735_SPEC < 63 + frame->msgId.present = msgId_PR_furtherInfoID; +#else frame->msgId.present = TravelerDataFrame__msgId_PR_furtherInfoID; std::string tempString = "00"; OCTET_STRING_fromString(&(frame->msgId.choice.furtherInfoID), tempString.c_str()); -// #endif +#endif // TODO: Does this need set? //frame->msgId.choice.furtherInfoID = @@ -287,9 +287,12 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) DsrcBuilder::SetStartTimeToYesterday(frame); // Set the duration (minutes) to its max value. - // frame->duratonTime = 32000; + #if SAEJ2735_SPEC < 2020 + frame->duratonTime = 32000; + #else frame->durationTime = 32000; - + #endif + frame->startYear = NULL; frame->url = NULL; // Priority is 0-7 with 7 the highest priority. @@ -436,17 +439,19 @@ Position3D* XmlCurveParser::ReadReferencePoint(DOMElement* referencePointElement { int16_t elevation = atoi(XMLString::transcode(currentElement->getTextContent())) * 10; -// #if SAEJ2735_SPEC < 63 -// anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); -// anchor->elevation->buf = (uint8_t *)calloc(1,2); -// anchor->elevation->size = 2; +#if SAEJ2735_SPEC < 63 + anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); + anchor->elevation->buf = (uint8_t *)calloc(1,2); + anchor->elevation->size = 2; -// anchor->elevation->buf[0] = elevation >> 8; -// anchor->elevation->buf[1] = elevation & 0xFF; -// #else + anchor->elevation->buf[0] = elevation >> 8; + anchor->elevation->buf[1] = elevation & 0xFF; +#elif SAEJ2735_SPEC < 2020 + anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); +#else anchor->elevation = (Common_Elevation_t *)malloc(sizeof(Common_Elevation_t)); +#endif *(anchor->elevation) = elevation; -// #endif if (_debugOutput) cout << "ReferencePoint Elevation: " << elevation << endl; } diff --git a/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp b/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp index 28ccceb57..03e1e54af 100644 --- a/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp +++ b/src/v2i-hub/MapPlugin/src/ConvertToJ2735r41.cpp @@ -432,9 +432,9 @@ int ConvertToJ2735r41::convertMap(map *mapMessage) { memset(MapJ2735, 0, sizeof(MapData)); // TODO: Map-P Not defined from ASN.1 using literal instead -// #if SAEJ2735_SPEC < 63 -// MapJ2735->msgID = tmx::messages::MapDataMessage::get_default_messageId(); // Map-P -// #endif +#if SAEJ2735_SPEC < 63 + MapJ2735->msgID = tmx::messages::MapDataMessage::get_default_messageId(); // Map-P +#endif std::cout << std::endl << "R41 XML:" << std::endl; xer_fprint(stdout, &asn_DEF_MapData, MapJ2735); diff --git a/src/v2i-hub/MapPlugin/src/MapPlugin.cpp b/src/v2i-hub/MapPlugin/src/MapPlugin.cpp index f268694d6..2317e7800 100644 --- a/src/v2i-hub/MapPlugin/src/MapPlugin.cpp +++ b/src/v2i-hub/MapPlugin/src/MapPlugin.cpp @@ -37,9 +37,9 @@ using namespace tmx::utils; namespace MapPlugin { -// #if SAEJ2735_SPEC < 63 -// UPERframe _uperFrameMessage; -// #endif +#if SAEJ2735_SPEC < 63 +UPERframe _uperFrameMessage; +#endif class MapFile: public tmx::message { public: diff --git a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp index d80d26a7e..76658170c 100644 --- a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp +++ b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDDataAdaptor.hpp @@ -12,21 +12,24 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// #define NO_NODE NodeList2_PR_NOTHING -// #define DEFINED_NODE NodeList2_PR_nodes -// #define COMPUTED_NODE NodeList2_PR_computed -// #define ENUM_NAME(X) NodeOffsetPoint_PR_node_ ## X -// #else +#if SAEJ2735_SPEC < 63 +#define NO_NODE NodeList2_PR_NOTHING +#define DEFINED_NODE NodeList2_PR_nodes +#define COMPUTED_NODE NodeList2_PR_computed +#define ENUM_NAME(X) NodeOffsetPoint_PR_node_ ## X +#else #define NO_NODE NodeListXY_PR_NOTHING #define DEFINED_NODE NodeListXY_PR_nodes #define COMPUTED_NODE NodeListXY_PR_computed #define ENUM_NAME(X) NodeOffsetPointXY_PR_node_ ## X -typedef NodeXY Node; -// typedef DSRC_Elevation_t Elevation2_t; +#endif +#if SAEJ2735_SPEC < 2020 +typedef DSRC_Elevation_t Elevation2_t; +#else typedef Common_Elevation_t Elevation2_t; +#endif +typedef NodeXY Node; typedef NodeAttributeSetXY NodeAttributeSet; -// #endif #define attribute(X, Y, D) ro_attribute(this->msg, battelle::attributes::standard_attribute, X, Y, get_, D) @@ -176,12 +179,13 @@ class IntersectionGeometryAdaptor: public tmx::message { ro_attribute(this->msg, reference_point_attribute, std::string, descriptiveIntersctionName, get_, ""); ro_attribute(this->msg, reference_point_attribute, LayerID_t, layerID, get_, 0); ro_attribute(this->msg, reference_point_attribute, IntersectionID_t, intersectionID, get_, 0); -// #if SAEJ2735_SPEC < 63 -// ro_attribute(this->msg, reference_point_attribute, MsgCount_t, msgCount, get_, 0); -// #else - // ro_attribute(this->msg, reference_point_attribute, DSRC_MsgCount_t, msgCount, get_, 0); + #if SAEJ2735_SPEC < 63 + ro_attribute(this->msg, reference_point_attribute, MsgCount_t, msgCount, get_, 0); + #elif SAEJ2735_SPEC < 2020 + ro_attribute(this->msg, reference_point_attribute, DSRC_MsgCount_t, msgCount, get_, 0); + #else ro_attribute(this->msg, reference_point_attribute, Common_MsgCount_t, msgCount, get_, 0); -// #endif + #endif ro_attribute(this->msg, reference_point_attribute, LaneWidth_t, masterLaneWidth, get_, -1L); ro_attribute(this->msg, reference_point_attribute, double, referenceLat, get_, 0.0); ro_attribute(this->msg, reference_point_attribute, double, referenceLon, get_, 0.0); diff --git a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp index ed30d6af1..36d7e8afb 100644 --- a/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp +++ b/src/v2i-hub/MapPlugin/src/inputs/isd/ISDToJ2735r41.cpp @@ -244,9 +244,9 @@ MapData *ISDToJ2735r41::to_map() { allocate(map); memset(map, 0, sizeof(MapData)); -// #if SAEJ2735_SPEC < 63 -// map->msgID = api::mapData; -// #endif +#if SAEJ2735_SPEC < 63 + map->msgID = api::mapData; +#endif map->msgIssueRevision = 0; // Layer type from string diff --git a/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp b/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp index 62f03cf36..02080d239 100644 --- a/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp +++ b/src/v2i-hub/MessageReceiverPlugin/src/MessageReceiverPlugin.cpp @@ -140,11 +140,17 @@ SrmMessage* MessageReceiverPlugin::DecodeSrm(uint32_t vehicleId, uint32_t headin srm->requestor.position->position.lat = (Latitude_t)(10.0 * latitude - 1800000000); srm->requestor.position->position.Long = (Longitude_t)(10.0 * longitude - 1800000000); srm->requestor.position->heading = - // (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #if SAEJ2735_SPEC < 2020 + (DSRC_Angle_t *)calloc(1, sizeof(DSRC_Angle_t)); + #else (Common_Angle_t *)calloc(1, sizeof(Common_Angle_t)); + #endif if (srm->requestor.position->heading) - // *(srm->requestor.position->heading) = (DSRC_Angle_t)(heading / 12500.0); + #if SAEJ2735_SPEC < 2020 + *(srm->requestor.position->heading) = (DSRC_Angle_t)(heading / 12500.0); + #else *(srm->requestor.position->heading) = (Common_Angle_t)(heading / 12500.0); + #endif srm->requestor.position->speed = (TransmissionAndSpeed *)calloc(1, sizeof(TransmissionAndSpeed)); if (srm->requestor.position->speed) diff --git a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp index 34c3010e3..77cac309c 100644 --- a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp +++ b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp @@ -20,14 +20,15 @@ using namespace std; using namespace boost::property_tree; using namespace tmx::utils; -// #if SAEJ2735_SPEC < 63 -// #else -// typedef DSRC_MsgCount_t MsgCount_t; +#if SAEJ2735_SPEC < 63 +#elif SAEJ2735_SPEC < 2020 +typedef DSRC_MsgCount_t MsgCount_t; +typedef DSRC_TimeMark_t TimeMark_t; +#else typedef Common_MsgCount_t MsgCount_t; -typedef DSecond_t DSecond2_t; -// typedef DSRC_TimeMark_t TimeMark_t; typedef SPAT_TimeMark_t TimeMark_t; -// #endif +#endif +typedef DSecond_t DSecond2_t; void Ntcip1202::setSignalGroupMappingList(string json) { @@ -233,9 +234,9 @@ bool Ntcip1202::ToJ2735r41SPAT(SPAT* spat, char* intersectionName, IntersectionI ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_SPAT, spat); -// #if SAEJ2735_SPEC < 63 -// spat->msgID = tmx::messages::SpatMessage::get_default_messageId(); -// #endif +#if SAEJ2735_SPEC < 63 + spat->msgID = tmx::messages::SpatMessage::get_default_messageId(); +#endif IntersectionState *intersection = (IntersectionState *)calloc(1, sizeof(IntersectionState)); diff --git a/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp b/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp index deb308218..e06bbb5ca 100644 --- a/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp +++ b/src/v2i-hub/TimPlugin/src/DsrcBuilder.cpp @@ -35,8 +35,11 @@ void DsrcBuilder::AddTimAdvisory(TiDataFrame *frame, unsigned int speedLimit) void DsrcBuilder::AddItisCode(ITIScodesAndText *advisory, long code) { ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - // member->item.present = ITIScodesAndText__Memberitem_PR_itis; + #if SAEJ2735_SPEC < 2020 + member->item.present = ITIScodesAndText__Memberitem_PR_itis; + #else member->item.present = ITIScodesAndText__Member__item_PR_itis; + #endif member->item.choice.itis = code; ASN_SEQUENCE_ADD(&advisory->list, member); } @@ -46,9 +49,12 @@ void DsrcBuilder::AddItisText(ITIScodesAndText *advisory, std::string text) int textLength = text.length(); ITIScodesAndText__Member* member = (ITIScodesAndText__Member*)malloc(sizeof(ITIScodesAndText__Member)); - // member->item.present = ITIScodesAndText__Memberitem_PR_text; + #if SAEJ2735_SPEC < 2020 + member->item.present = ITIScodesAndText__Memberitem_PR_text; + #else member->item.present = ITIScodesAndText__Member__item_PR_text; - + #endif + member->item.choice.text.buf = NULL; OCTET_STRING_fromString(&(member->item.choice.text), text.c_str()); diff --git a/src/v2i-hub/TimPlugin/src/DsrcBuilder.h b/src/v2i-hub/TimPlugin/src/DsrcBuilder.h index 9925e8a2b..2a9366288 100644 --- a/src/v2i-hub/TimPlugin/src/DsrcBuilder.h +++ b/src/v2i-hub/TimPlugin/src/DsrcBuilder.h @@ -14,18 +14,18 @@ #include #include -// #if SAEJ2735_SPEC < 63 -// typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; -// typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; -// typedef ITIScodesAndText::ITIScodesAndText__List ItisList; -// #else +#if SAEJ2735_SPEC < 63 +typedef TravelerInformation::TravelerInformation__dataFrames::TravelerInformation__dataFrames__List::TravelerInformation__dataFrames__Member TiDataFrame; +typedef ITIScodesAndText::ITIScodesAndText__List::ITIScodesAndText__Member ItisMember; +typedef ITIScodesAndText::ITIScodesAndText__List ItisList; +#else typedef TravelerDataFrame TiDataFrame; typedef ITIScodesAndText__Member ItisMember; typedef ITIScodesAndText ItisList; #include typedef NodeListXY NodeList_t; #include -// #endif +#endif class DsrcBuilder { diff --git a/src/v2i-hub/TimPlugin/src/TimPlugin.cpp b/src/v2i-hub/TimPlugin/src/TimPlugin.cpp index 53eff1c74..aeba1e5c0 100644 --- a/src/v2i-hub/TimPlugin/src/TimPlugin.cpp +++ b/src/v2i-hub/TimPlugin/src/TimPlugin.cpp @@ -164,8 +164,11 @@ bool TimPlugin::TimDuration(std::shared_ptr TimMsg) return false; } //Duration is unit of minute - // auto duration = timPtr->dataFrames.list.array[0]->duratonTime; + #if SAEJ2735_SPEC < 2020 + auto duration = timPtr->dataFrames.list.array[0]->duratonTime; + #else auto duration = timPtr->dataFrames.list.array[0]->durationTime; + #endif bool isPersist = false; if(duration >= 32000) { diff --git a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp index 46310ffa1..79a784d75 100644 --- a/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp +++ b/src/v2i-hub/TimPlugin/src/XmlCurveParser.cpp @@ -206,10 +206,10 @@ void XmlCurveParser::ReadRoot(DOMElement* root, TravelerInformation *tim) SpeedLimit = speedLimit; -// #if SAEJ2735_SPEC < 63 -// tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); -// *tim->dataFrameCount = tim->dataFrames.list.count; -// #endif +#if SAEJ2735_SPEC < 63 + tim->dataFrameCount = (Count_t *)calloc(1, sizeof(Count_t)); + *tim->dataFrameCount = tim->dataFrames.list.count; +#endif // Add Frame Part III (content) for each frame. for (int i = 0; i < tim->dataFrames.list.count; i++) @@ -272,13 +272,13 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) frame->frameType = TravelerInfoType_advisory; -// #if SAEJ2735_SPEC < 63 -// frame->msgId.present = msgId_PR_furtherInfoID; -// #else +#if SAEJ2735_SPEC < 63 + frame->msgId.present = msgId_PR_furtherInfoID; +#else frame->msgId.present = TravelerDataFrame__msgId_PR_furtherInfoID; std::string tempString = "00"; OCTET_STRING_fromString(&(frame->msgId.choice.furtherInfoID), tempString.c_str()); -// #endif +#endif // TODO: Does this need set? //frame->msgId.choice.furtherInfoID = @@ -286,9 +286,12 @@ TiDataFrame* XmlCurveParser::ReadRegions(DOMElement* regionsElement) DsrcBuilder::SetStartTimeToYesterday(frame); // Set the duration (minutes) to its max value. - // frame->duratonTime = 32000; + #if SAEJ2735_SPEC < 2020 + frame->duratonTime = 32000; + #else frame->durationTime = 32000; - + #endif + frame->startYear = NULL; frame->url = NULL; // Priority is 0-7 with 7 the highest priority. @@ -438,18 +441,21 @@ Position3D* XmlCurveParser::ReadReferencePoint(DOMElement* referencePointElement { int16_t elevation = atoi(XMLString::transcode(currentElement->getTextContent())) * 10; -// #if SAEJ2735_SPEC < 63 -// anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); -// anchor->elevation->buf = (uint8_t *)calloc(1,2); -// anchor->elevation->size = 2; + #if SAEJ2735_SPEC < 63 + anchor->elevation = (Elevation_t *)malloc(sizeof(Elevation_t)); + anchor->elevation->buf = (uint8_t *)calloc(1,2); + anchor->elevation->size = 2; -// anchor->elevation->buf[0] = elevation >> 8; -// anchor->elevation->buf[1] = elevation & 0xFF; -// #else - // anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); + anchor->elevation->buf[0] = elevation >> 8; + anchor->elevation->buf[1] = elevation & 0xFF; + + #elif SAEJ2735_SPEC < 2020 + anchor->elevation = (DSRC_Elevation_t *)malloc(sizeof(DSRC_Elevation_t)); + #else anchor->elevation = (Common_Elevation_t *)malloc(sizeof(Common_Elevation_t)); *(anchor->elevation) = elevation; -// #endif + #endif + if (_debugOutput) cout << "ReferencePoint Elevation: " << elevation << endl; } From 9e991c06dd8b76c3fb3e9ed7b9878abb1fd97d86 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 30 Oct 2023 13:39:27 -0400 Subject: [PATCH 10/18] modified: src/tmx/Asn_J2735/CMakeLists.txt modified: src/tmx/CMakeLists.txt --- src/tmx/Asn_J2735/CMakeLists.txt | 1 + src/tmx/CMakeLists.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/src/tmx/Asn_J2735/CMakeLists.txt b/src/tmx/Asn_J2735/CMakeLists.txt index 74d72fc13..601044461 100644 --- a/src/tmx/Asn_J2735/CMakeLists.txt +++ b/src/tmx/Asn_J2735/CMakeLists.txt @@ -41,3 +41,4 @@ ENDFOREACH () UNSET (LIBRARY_NAME) UNSET (SAEJ2735_SPEC) +SET (ASN_J2735_LIBRARIES "asn_j2735_r2020" PARENT_SCOPE) diff --git a/src/tmx/CMakeLists.txt b/src/tmx/CMakeLists.txt index ffb6a4880..559adc3a5 100644 --- a/src/tmx/CMakeLists.txt +++ b/src/tmx/CMakeLists.txt @@ -45,6 +45,7 @@ LINK_DIRECTORIES (${PROJECT_NAME} "${TMX_LIB_DIR}") # ADD_SUBDIRECTORY (Asn_J2735) ADD_LIBRARY (libasn_j2735 ALIAS ${ASN_J2735_LIBRARIES}) +MESSAGE (STATUS "Added ${ASN_J2735_LIBRARIES} library.") # # Set up some required platform dependencies, including MySQL # From 44b52df88edc55e65982190a6b9923f5d3ba50cf Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 30 Oct 2023 15:52:50 -0400 Subject: [PATCH 11/18] modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h modified: src/tmx/Asn_J2735/src/r2020/RegionalExtension.c modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp modified: src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp --- .../asn_j2735_r2020/RegionalExtension.h | 1 + .../Asn_J2735/src/r2020/RegionalExtension.c | 17 +++++++++-------- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 19 ++++++++++--------- src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp | 2 +- 4 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h index 256132a90..e45c08795 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RegionalExtension.h @@ -389,6 +389,7 @@ typedef struct Reg_Position3D { union Reg_Position3D__regExtValue_u { Position3D_addGrpB_t Position3D_addGrpB; Position3D_addGrpC_t Position3D_addGrpC; + Position3D_addGrpCarma_t Position3D_addGrpCarma; } choice; /* Context for parsing across buffer boundaries */ diff --git a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c index bdf35eda2..4a12ffd93 100644 --- a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c +++ b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c @@ -7,14 +7,6 @@ #include "RegionalExtension.h" -static const long asn_VAL_10_DSRC_addGrpCarma = 128; -static const asn_ioc_cell_t asn_IOS_Reg_BasicSafetyMessage_1_rows[] = { - { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_10_DSRC_addGrpCarma }, - { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage_addGrpCarma } -}; -static const asn_ioc_set_t asn_IOS_Reg_BasicSafetyMessage_1[] = { - { 1, 2, asn_IOS_Reg_BasicSafetyMessage_1_rows } -}; static const long asn_VAL_3_addGrpB = 2; static const asn_ioc_cell_t asn_IOS_Reg_LaneDataAttribute_1_rows[] = { { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_3_addGrpB }, @@ -82,6 +74,15 @@ static const asn_ioc_cell_t asn_IOS_Reg_MovementEvent_1_rows[] = { static const asn_ioc_set_t asn_IOS_Reg_MovementEvent_1[] = { { 1, 2, asn_IOS_Reg_MovementEvent_1_rows } }; +static const long asn_VAL_10_DSRC_addGrpCarma = 128; +static const asn_ioc_cell_t asn_IOS_Reg_BasicSafetyMessage_1_rows[] = { + { "&id", aioc__value, &asn_DEF_RegionId, &asn_VAL_10_DSRC_addGrpCarma }, + { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage_addGrpCarma } +}; +static const asn_ioc_set_t asn_IOS_Reg_BasicSafetyMessage_1[] = { + { 1, 2, asn_IOS_Reg_BasicSafetyMessage_1_rows } +}; + static int memb_regionId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index f1dfcb82b..a077cbdfe 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -527,8 +527,9 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) auto partIICnt = (BSMpartIIExtension_t*) calloc(1, sizeof(BSMpartIIExtension_t)); partIICnt->partII_Id = 1; partIICnt->partII_Value.present = BSMpartIIExtension__partII_Value_PR_SpecialVehicleExtensions; - auto specialVEx= (SpecialVehicleExtensions_t*) calloc(1, sizeof(SpecialVehicleExtensions_t)); - auto emergencyDetails= (EmergencyDetails_t*) calloc(1, sizeof(EmergencyDetails_t)); + + auto specialVEx = (SpecialVehicleExtensions_t*) calloc(1, sizeof(SpecialVehicleExtensions_t)); + auto emergencyDetails = (EmergencyDetails_t*) calloc(1, sizeof(EmergencyDetails_t)); emergencyDetails->lightsUse = LightbarInUse_inUse; auto resp_type = (ResponseType_t*) calloc(1, sizeof(ResponseType_t)); *resp_type = ResponseType_emergency; @@ -540,20 +541,20 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) message->partII = bsmPartII; // 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 regional = (BasicSafetyMessage::BasicSafetyMessage__regional*) calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); + 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_t *)calloc(1, sizeof(Position3D_t)); + 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_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_t *)calloc(1, sizeof(Position3D_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); @@ -579,7 +580,7 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) ASSERT_EQ(LightbarInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->lightsUse); ASSERT_EQ(SirenInUse_inUse, decoded_bsm_ptr->partII->list.array[0]->partII_Value.choice.SpecialVehicleExtensions.vehicleAlerts->sirenUse); auto decoded_regional = (BasicSafetyMessage::BasicSafetyMessage__regional *)calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); - auto decoded_reg_bsm = (Reg_BasicSafetyMessage *)calloc(1, sizeof(Reg_BasicSafetyMessage)); + auto decoded_reg_bsm = (Reg_BasicSafetyMessage_t *)calloc(1, sizeof(Reg_BasicSafetyMessage_t)); auto decode_carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t *)calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); decoded_regional = decoded_bsm_ptr->regional; decoded_reg_bsm = decoded_regional->list.array[0]; diff --git a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp index 77cac309c..72c0f56bb 100644 --- a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp +++ b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp @@ -369,7 +369,7 @@ void Ntcip1202::populateVehicleSignalGroup(MovementState *movement, int phase) if (getVehicleMaxTime(phase) > 0) { stateTimeSpeed->timing->maxEndTime = (TimeMark_t *) calloc(1, sizeof(TimeMark_t)); - *(stateTimeSpeed->timing->maxEndTime) = getAdjustedTime(getVehicleMaxTime(phase)); + *(stateTimeSpeed->timing->maxEndTime) = 36111; //getAdjustedTime(getVehicleMaxTime(phase)); } //we only get a phase number 1-16 from ped detect, assume its a ped phase From cf51063318232e3841c238e458afa55f814d292c Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 30 Oct 2023 16:14:03 -0400 Subject: [PATCH 12/18] modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp modified: src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp --- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 4 ++-- src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index a077cbdfe..7081fef7c 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -548,13 +548,13 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) 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_t*) calloc(1, sizeof(Position3D_t)); + auto point = (Position3D_addGrpCarma_t*) calloc(1, sizeof(Position3D_addGrpCarma_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_t*) calloc(1, sizeof(Position3D_t)); + auto point2 = (Position3D_addGrpCarma_t*) calloc(1, sizeof(Position3D_addGrpCarma_t)); point2->lat = dummy_lat + 1000; point2->Long = dummy_long + 1000; asn_sequence_add(&carma_bsm_destination_points->list.array, point2); diff --git a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp index 72c0f56bb..77cac309c 100644 --- a/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp +++ b/src/v2i-hub/SpatPlugin/src/NTCIP1202.cpp @@ -369,7 +369,7 @@ void Ntcip1202::populateVehicleSignalGroup(MovementState *movement, int phase) if (getVehicleMaxTime(phase) > 0) { stateTimeSpeed->timing->maxEndTime = (TimeMark_t *) calloc(1, sizeof(TimeMark_t)); - *(stateTimeSpeed->timing->maxEndTime) = 36111; //getAdjustedTime(getVehicleMaxTime(phase)); + *(stateTimeSpeed->timing->maxEndTime) = getAdjustedTime(getVehicleMaxTime(phase)); } //we only get a phase number 1-16 from ped detect, assume its a ped phase From a8b9052a17ac5b45fc2be49b6b64cd8d53b03d29 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 30 Oct 2023 19:52:29 -0400 Subject: [PATCH 13/18] modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 7081fef7c..11287233a 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -542,7 +542,7 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) // BSM regional extension auto regional = (BasicSafetyMessage::BasicSafetyMessage__regional*) calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); - auto reg_bsm = (Reg_BasicSafetyMessage_t*) calloc(1, sizeof(Reg_BasicSafetyMessage_t)); + auto reg_bsm = (Reg_BasicSafetyMessage) calloc(1, sizeof(Reg_BasicSafetyMessage)); reg_bsm->regionId = 128; reg_bsm->regExtValue.present = Reg_BasicSafetyMessage__regExtValue_PR_BasicSafetyMessage_addGrpCarma; From d1eda9f2c645a7540b4fc8c487fb2a94f45abc35 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Thu, 30 Nov 2023 17:35:48 -0500 Subject: [PATCH 14/18] 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 < Date: Thu, 30 Nov 2023 23:36:52 -0500 Subject: [PATCH 15/18] new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRC_DayOfWeek.h modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h new file: src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c modified: src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c --- .../include/asn_j2735_r2020/DSRC_DayOfWeek.h | 56 +++++++++++++++++++ .../asn_j2735_r2020/TrafficControlSchedule.h | 4 +- src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c | 31 ++++++++++ .../src/r2020/TrafficControlSchedule.c | 2 +- 4 files changed, 90 insertions(+), 3 deletions(-) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRC_DayOfWeek.h create mode 100644 src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRC_DayOfWeek.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRC_DayOfWeek.h new file mode 100644 index 000000000..d826b978d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DSRC_DayOfWeek.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#ifndef _DSRC_DayOfWeek_H_ +#define _DSRC_DayOfWeek_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "BIT_STRING.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum DSRC_DayOfWeek { + DSRC_DayOfWeek_sun = 6, + DSRC_DayOfWeek_mon = 5, + DSRC_DayOfWeek_tue = 4, + DSRC_DayOfWeek_wed = 3, + DSRC_DayOfWeek_thu = 2, + DSRC_DayOfWeek_fri = 1, + DSRC_DayOfWeek_sat = 0 +} e_DSRC_DayOfWeek; + +/* DSRC_DayOfWeek */ +typedef BIT_STRING_t DSRC_DayOfWeek_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek; +asn_struct_free_f DSRC_DayOfWeek_free; +asn_struct_print_f DSRC_DayOfWeek_print; +asn_constr_check_f DSRC_DayOfWeek_constraint; +ber_type_decoder_f DSRC_DayOfWeek_decode_ber; +der_type_encoder_f DSRC_DayOfWeek_encode_der; +xer_type_decoder_f DSRC_DayOfWeek_decode_xer; +xer_type_encoder_f DSRC_DayOfWeek_encode_xer; +oer_type_decoder_f DSRC_DayOfWeek_decode_oer; +oer_type_encoder_f DSRC_DayOfWeek_encode_oer; +per_type_decoder_f DSRC_DayOfWeek_decode_uper; +per_type_encoder_f DSRC_DayOfWeek_encode_uper; +per_type_decoder_f DSRC_DayOfWeek_decode_aper; +per_type_encoder_f DSRC_DayOfWeek_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _DSRC_DayOfWeek_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h index d67837e49..1a985b63d 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TrafficControlSchedule.h @@ -13,7 +13,7 @@ /* Including external dependencies */ #include "EpochMins.h" -#include "DayOfWeek.h" +#include "DSRC_DayOfWeek.h" #include "asn_SEQUENCE_OF.h" #include "constr_SEQUENCE_OF.h" #include "constr_SEQUENCE.h" @@ -30,7 +30,7 @@ struct DailySchedule; typedef struct TrafficControlSchedule { EpochMins_t start; EpochMins_t *end; /* OPTIONAL */ - DayOfWeek_t *dow; /* OPTIONAL */ + DSRC_DayOfWeek_t *dow; /* OPTIONAL */ struct TrafficControlSchedule__between { A_SEQUENCE_OF(struct DailySchedule) list; diff --git a/src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c b/src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c new file mode 100644 index 000000000..d2958927b --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/DSRC_DayOfWeek.c @@ -0,0 +1,31 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "J2735_201603_ASN_CC.asn" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -fskeletons-copy` + */ + +#include "DSRC_DayOfWeek.h" + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static const ber_tlv_tag_t asn_DEF_DSRC_DayOfWeek_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_DSRC_DayOfWeek = { + "DayOfWeek", + "DayOfWeek", + &asn_OP_BIT_STRING, + asn_DEF_DSRC_DayOfWeek_tags_1, + sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) + /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ + asn_DEF_DSRC_DayOfWeek_tags_1, /* Same as above */ + sizeof(asn_DEF_DSRC_DayOfWeek_tags_1) + /sizeof(asn_DEF_DSRC_DayOfWeek_tags_1[0]), /* 1 */ + { 0, 0, BIT_STRING_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c b/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c index 62b00054f..9080cd190 100644 --- a/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c +++ b/src/tmx/Asn_J2735/src/r2020/TrafficControlSchedule.c @@ -108,7 +108,7 @@ asn_TYPE_member_t asn_MBR_TrafficControlSchedule_1[] = { { ATF_POINTER, 3, offsetof(struct TrafficControlSchedule, dow), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_DayOfWeek, + &asn_DEF_DSRC_DayOfWeek, 0, { 0, 0, 0 }, 0, 0, /* No default value */ From 39ae4ce24b27ac02622c2a4b8d617cf0382a3790 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Fri, 1 Dec 2023 00:11:23 -0500 Subject: [PATCH 16/18] modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 4e5185dd1..147f32434 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -782,8 +782,8 @@ TEST_F(J2735MessageTest, EncodeSDSM) sDSMTimeStamp->year = year; message->sDSMTimeStamp = *sDSMTimeStamp; - message->refPos.lat = 38.121212; - message->refPos.Long = -77.121212; + message->refPos.lat = 38121212; + message->refPos.Long = -77121212; message->refPosXYConf.orientation = 10; message->refPosXYConf.semiMajor = 12; @@ -793,6 +793,7 @@ TEST_F(J2735MessageTest, EncodeSDSM) auto objectData = (DetectedObjectData_t*) calloc(1, sizeof(DetectedObjectData_t)); objectData->detObjCommon.objType = ObjectType_unknown; objectData->detObjCommon.objTypeCfd = 1; + objectData->detObjCommon.objectID = 1; objectData->detObjCommon.measurementTime = 1; objectData->detObjCommon.timeConfidence = 1; objectData->detObjCommon.pos.offsetX = 1; @@ -805,7 +806,6 @@ TEST_F(J2735MessageTest, EncodeSDSM) objectData->detObjCommon.headingConf = 1; ASN_SEQUENCE_ADD(&objects->list.array, objectData); message->objects = *objects; - std::cout << message < Date: Fri, 1 Dec 2023 15:08:29 -0500 Subject: [PATCH 17/18] modified: src/tmx/Asn_J2735/src/r2020/MessageFrame.c modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- src/tmx/Asn_J2735/src/r2020/MessageFrame.c | 83 +++++++++++++--------- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 2 +- 2 files changed, 49 insertions(+), 36 deletions(-) diff --git a/src/tmx/Asn_J2735/src/r2020/MessageFrame.c b/src/tmx/Asn_J2735/src/r2020/MessageFrame.c index 7751f35e2..21ef56973 100644 --- a/src/tmx/Asn_J2735/src/r2020/MessageFrame.c +++ b/src/tmx/Asn_J2735/src/r2020/MessageFrame.c @@ -38,6 +38,7 @@ static const long asn_VAL_28_testMessage12 = 252; static const long asn_VAL_29_testMessage13 = 253; static const long asn_VAL_30_testMessage14 = 254; static const long asn_VAL_31_testMessage15 = 255; +static const long asn_VAL_32_sensorDataSharingMessage = 41; static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_1_basicSafetyMessage }, { "&Type", aioc__type, &asn_DEF_BasicSafetyMessage }, @@ -100,10 +101,12 @@ static const asn_ioc_cell_t asn_IOS_MessageTypes_1_rows[] = { { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_30_testMessage14 }, { "&Type", aioc__type, &asn_DEF_TestMessage14 }, { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_31_testMessage15 }, - { "&Type", aioc__type, &asn_DEF_TestMessage15 } + { "&Type", aioc__type, &asn_DEF_TestMessage15 }, + { "&id", aioc__value, &asn_DEF_DSRCmsgID, &asn_VAL_32_sensorDataSharingMessage }, + { "&Type", aioc__type, &asn_DEF_SensorDataSharingMessage } }; static const asn_ioc_set_t asn_IOS_MessageTypes_1[] = { - { 31, 2, asn_IOS_MessageTypes_1_rows } + { 32, 2, asn_IOS_MessageTypes_1_rows } }; static int memb_messageId_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -728,39 +731,49 @@ static asn_TYPE_member_t asn_MBR_value_3[] = { 0, 0, /* No default value */ "TestMessage15" }, + { ATF_NOFLAGS, 0, offsetof(struct MessageFrame__value, choice.SensorDataSharingMessage), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SensorDataSharingMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "SensorDataSharingMessage" + }, }; static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_3[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 30 }, /* BasicSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 29 }, /* MapData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 28 }, /* SPAT */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 27 }, /* CommonSafetyRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 26 }, /* EmergencyVehicleAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 25 }, /* IntersectionCollision */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 24 }, /* NMEAcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 23 }, /* ProbeDataManagement */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 22 }, /* ProbeVehicleData */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 21 }, /* RoadSideAlert */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 20 }, /* RTCMcorrections */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 19 }, /* SignalRequestMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 18 }, /* SignalStatusMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 17 }, /* TravelerInformation */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 16 }, /* PersonalSafetyMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 15 }, /* TestMessage00 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 14 }, /* TestMessage01 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 13 }, /* TestMessage02 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 12 }, /* TestMessage03 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 11 }, /* TestMessage04 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 10 }, /* TestMessage05 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 9 }, /* TestMessage06 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 8 }, /* TestMessage07 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 7 }, /* TestMessage08 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 6 }, /* TestMessage09 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 5 }, /* TestMessage10 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 4 }, /* TestMessage11 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 3 }, /* TestMessage12 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 2 }, /* TestMessage13 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 1 }, /* TestMessage14 */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 0 } /* TestMessage15 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 31 }, /* BasicSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 30 }, /* MapData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 29 }, /* SPAT */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 28 }, /* CommonSafetyRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 27 }, /* EmergencyVehicleAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 26 }, /* IntersectionCollision */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 25 }, /* NMEAcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 24 }, /* ProbeDataManagement */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 23 }, /* ProbeVehicleData */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 22 }, /* RoadSideAlert */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 21 }, /* RTCMcorrections */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 20 }, /* SignalRequestMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 12, -12, 19 }, /* SignalStatusMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 13, -13, 18 }, /* TravelerInformation */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 14, -14, 17 }, /* PersonalSafetyMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 15, -15, 16 }, /* TestMessage00 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 16, -16, 15 }, /* TestMessage01 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 17, -17, 14 }, /* TestMessage02 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 18, -18, 13 }, /* TestMessage03 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 19, -19, 12 }, /* TestMessage04 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 20, -20, 11 }, /* TestMessage05 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 21, -21, 10 }, /* TestMessage06 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 22, -22, 9 }, /* TestMessage07 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 23, -23, 8 }, /* TestMessage08 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 24, -24, 7 }, /* TestMessage09 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 25, -25, 6 }, /* TestMessage10 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 26, -26, 5 }, /* TestMessage11 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 27, -27, 4 }, /* TestMessage12 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 28, -28, 3 }, /* TestMessage13 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 29, -29, 2 }, /* TestMessage14 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 30, -30, 1 }, /* TestMessage15 */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 31, -31, 0 } /* SensorDataSharingMessage */ }; static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { sizeof(struct MessageFrame__value), @@ -768,7 +781,7 @@ static asn_CHOICE_specifics_t asn_SPC_value_specs_3 = { offsetof(struct MessageFrame__value, present), sizeof(((struct MessageFrame__value *)0)->present), asn_MAP_value_tag2el_3, - 31, /* Count of tags in the map */ + 32, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; @@ -791,7 +804,7 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = { OPEN_TYPE_constraint }, asn_MBR_value_3, - 31, /* Elements count */ + 32, /* Elements count */ &asn_SPC_value_specs_3 /* Additional specs */ }; diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 147f32434..f360d6156 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -816,7 +816,7 @@ TEST_F(J2735MessageTest, EncodeSDSM) free(message); free(frame_msg.get_j2735_data().get()); ASSERT_EQ(41, SdsmEncodeMessage.get_msgId()); - std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c35a4e9266b49d1b20c34000a00000020000bba0a000200004400240009"; + std::string expectedSDSMEncHex = "0029250a010c0c0a101f9c37ea97fc66b10b430c34000a00000020002bba0a000200004400240009"; ASSERT_EQ(expectedSDSMEncHex, SdsmEncodeMessage.get_payload_str()); //Decode SDSM From 72c6f8ddadb147d7fb8574669047540caae3a65d Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Mon, 4 Dec 2023 12:02:07 -0500 Subject: [PATCH 18/18] modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/ deleted: src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json deleted: src/tmx/Asn_J2735/src/r2020/.vscode/launch.json deleted: src/tmx/Asn_J2735/src/r2020/.vscode/settings.json modified: src/tmx/Asn_J2735/src/r2020/ modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- .../include/asn_j2735_r2020/asn_ioc.h | 2 +- .../include/asn_j2735_r2020/asn_random_fill.h | 2 +- .../include/asn_j2735_r2020/oer_decoder.h | 2 +- .../include/asn_j2735_r2020/oer_encoder.h | 2 +- .../include/asn_j2735_r2020/oer_support.h | 2 +- .../src/r2020/.vscode/c_cpp_properties.json | 18 ------ .../Asn_J2735/src/r2020/.vscode/launch.json | 24 -------- .../Asn_J2735/src/r2020/.vscode/settings.json | 59 ------------------- src/tmx/Asn_J2735/src/r2020/ANY_aper.c | 2 +- src/tmx/Asn_J2735/src/r2020/ANY_ber.c | 2 +- src/tmx/Asn_J2735/src/r2020/ANY_uper.c | 2 +- src/tmx/Asn_J2735/src/r2020/ANY_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c | 2 +- .../Asn_J2735/src/r2020/BIT_STRING_print.c | 2 +- .../Asn_J2735/src/r2020/BIT_STRING_rfill.c | 2 +- src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c | 2 +- src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c | 2 +- src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_print.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c | 2 +- src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c | 2 +- .../src/r2020/NativeEnumerated_aper.c | 2 +- .../src/r2020/NativeEnumerated_oer.c | 2 +- .../src/r2020/NativeEnumerated_uper.c | 2 +- .../src/r2020/NativeEnumerated_xer.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_aper.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_ber.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_oer.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_print.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_rfill.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_uper.c | 2 +- .../Asn_J2735/src/r2020/NativeInteger_xer.c | 2 +- .../src/r2020/OBJECT_IDENTIFIER_print.c | 2 +- .../src/r2020/OBJECT_IDENTIFIER_rfill.c | 2 +- .../src/r2020/OBJECT_IDENTIFIER_xer.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_aper.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_ber.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_oer.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_print.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_rfill.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_uper.c | 2 +- .../Asn_J2735/src/r2020/OCTET_STRING_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c | 2 +- src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/asn_application.c | 2 +- .../Asn_J2735/src/r2020/asn_codecs_prim_ber.c | 2 +- .../Asn_J2735/src/r2020/asn_codecs_prim_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/asn_random_fill.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_aper.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_ber.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_oer.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_print.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_rfill.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_uper.c | 2 +- .../Asn_J2735/src/r2020/constr_CHOICE_xer.c | 2 +- .../src/r2020/constr_SEQUENCE_OF_aper.c | 2 +- .../src/r2020/constr_SEQUENCE_OF_ber.c | 2 +- .../src/r2020/constr_SEQUENCE_OF_uper.c | 2 +- .../src/r2020/constr_SEQUENCE_OF_xer.c | 2 +- .../src/r2020/constr_SEQUENCE_aper.c | 2 +- .../Asn_J2735/src/r2020/constr_SEQUENCE_ber.c | 2 +- .../Asn_J2735/src/r2020/constr_SEQUENCE_oer.c | 2 +- .../src/r2020/constr_SEQUENCE_print.c | 2 +- .../src/r2020/constr_SEQUENCE_rfill.c | 2 +- .../src/r2020/constr_SEQUENCE_uper.c | 2 +- .../Asn_J2735/src/r2020/constr_SEQUENCE_xer.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_aper.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_ber.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_oer.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_print.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_rfill.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_uper.c | 2 +- .../Asn_J2735/src/r2020/constr_SET_OF_xer.c | 2 +- src/tmx/Asn_J2735/src/r2020/oer_decoder.c | 2 +- src/tmx/Asn_J2735/src/r2020/oer_encoder.c | 2 +- src/tmx/Asn_J2735/src/r2020/oer_support.c | 2 +- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 2 + 91 files changed, 89 insertions(+), 188 deletions(-) delete mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json delete mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/launch.json delete mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/settings.json diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h index 7de210ee0..a78d93179 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_ioc.h @@ -1,6 +1,6 @@ /* * Run-time support for Information Object Classes. - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef ASN_IOC_H diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h index 47f9b8af0..280a4b6fc 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/asn_random_fill.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef ASN_RANDOM_FILL diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h index 40992e948..2d5c648a7 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_decoder.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef OER_DECODER_H diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h index 6a7b68125..bcea3d68b 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_encoder.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef OER_ENCODER_H diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h index dbc9b5fcf..6fd47a081 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/oer_support.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef OER_SUPPORT_H 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 deleted file mode 100644 index c2098a2d0..000000000 --- a/src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "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 deleted file mode 100644 index 4c377746f..000000000 --- a/src/tmx/Asn_J2735/src/r2020/.vscode/launch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "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 deleted file mode 100644 index 3e5eb956e..000000000 --- a/src/tmx/Asn_J2735/src/r2020/.vscode/settings.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "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/ANY_aper.c b/src/tmx/Asn_J2735/src/r2020/ANY_aper.c index 91d727769..0660b09cb 100644 --- a/src/tmx/Asn_J2735/src/r2020/ANY_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/ANY_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_ber.c b/src/tmx/Asn_J2735/src/r2020/ANY_ber.c index 2ebe45bd7..2bbacaae2 100644 --- a/src/tmx/Asn_J2735/src/r2020/ANY_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/ANY_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_uper.c b/src/tmx/Asn_J2735/src/r2020/ANY_uper.c index 65f1519bb..fd5c179d2 100644 --- a/src/tmx/Asn_J2735/src/r2020/ANY_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/ANY_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/ANY_xer.c b/src/tmx/Asn_J2735/src/r2020/ANY_xer.c index 112c21328..78f5212f0 100644 --- a/src/tmx/Asn_J2735/src/r2020/ANY_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/ANY_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c index 95c955896..53e55fcd4 100644 --- a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c index bab1ea522..79331a065 100644 --- a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c index a6e6a9544..2ac4c0428 100644 --- a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c index d82349eed..1c9ab5a65 100644 --- a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c index 67d5cb8db..8b584cf35 100644 --- a/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/BIT_STRING_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c index d697cf571..fe7a7e937 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c index 176a4a4b7..cec1055cf 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c index 0e92e602b..e925d3a42 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c index 23aaadea8..a92a40df0 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c index 5ec628bbf..5eb60193d 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c index 8181ec9ca..dc9a64801 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c index 7e9d8f853..2d84d4a2b 100644 --- a/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/BOOLEAN_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c index fc88268ef..406e5fbd9 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c index 8bd039eef..9416eb5a0 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c index 19f276d54..343332056 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c index 2d37dee01..afb4e8e18 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c index fab002385..a66686df5 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c index ed65385fe..bf6ec8f13 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c b/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c index 4f21c86a9..1c1cc4f49 100644 --- a/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/INTEGER_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c index 5c4c2561d..c088cbbed 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c index 52dbcb860..640934b9b 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c index e2f932a22..bdfbf227d 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c index e8d6d0deb..439677859 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeEnumerated_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c index 1d13070a3..c5db9d92c 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c index ed683625c..f1d344426 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c index 4e900462c..21cf537a3 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c index 0602e0d20..f2c3b1e1b 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c index 0e2cee8e4..a37a50431 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c index 4fc4ba177..f8674f68f 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c b/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c index 18ec59af2..dedb8b0be 100644 --- a/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/NativeInteger_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c index b0c3a9e84..af159df03 100644 --- a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c index 55093c8e1..8039ac66a 100644 --- a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c index 706e51a94..9691e473c 100644 --- a/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/OBJECT_IDENTIFIER_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c index 0373fe6ad..b7b70b698 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c index 9530eaedb..8a7610aee 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c index e69d0a6a4..6d5bda3f9 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c index 6daa33e9f..37d69b24c 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c index 5c8b0648e..257338992 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c index 80130cadc..dba8bd444 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c index 490f362a9..07a306317 100644 --- a/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/OCTET_STRING_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c index c9afecffe..dcf0cb91e 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #include diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c index 3e2ab1888..c62e5bdc7 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c index 7d8948072..700224ceb 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c index 05a5eaad2..578d5a632 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #include diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c index 2f27bb904..30bd62edc 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c index fc38562e9..0926e7f5c 100644 --- a/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/OPEN_TYPE_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/asn_application.c b/src/tmx/Asn_J2735/src/r2020/asn_application.c index 7992185b5..34550dc6e 100644 --- a/src/tmx/Asn_J2735/src/r2020/asn_application.c +++ b/src/tmx/Asn_J2735/src/r2020/asn_application.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #include diff --git a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c index c5c2cef65..32b8e9a75 100644 --- a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c index 70c91bc26..9b46ace6b 100644 --- a/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/asn_codecs_prim_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c b/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c index 29653623a..bd38a1de9 100644 --- a/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c +++ b/src/tmx/Asn_J2735/src/r2020/asn_random_fill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c index 88daaf2c0..1bce6dc97 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c index 7ad42c763..0d14cf382 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c index bc71a01cd..6a662eab5 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c index a97202fc2..29709e22c 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c index fd0a10163..979f45a0f 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c index 77aab6d6a..c2f66cf71 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c index 45b4290a8..1da08c4eb 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_CHOICE_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c index ff3ae8bc1..4e9207b71 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c index 178f8654d..6c308d216 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c index eb20a0701..1d80fdf1c 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c index 7bd323677..1a939307f 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_OF_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c index 895b6daf3..7ea4fc50a 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c index e982172d3..8efec2492 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c index a3bdb7bda..cc34ba4e3 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c index 7f9e231a4..8403b5eda 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c index b464f5722..77798fd97 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c index b235f4de9..aa5aca514 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c index c6475f78a..065b88ce3 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SEQUENCE_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c index 87c341e0f..13de1e048 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_aper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c index 4187e2999..44bc3d417 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_ber.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c index a0f0140dc..18849becc 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_oer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c index 748dba767..e3cad4c0e 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c index 9b2ac5ed2..880d41d35 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_rfill.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c index b99a2449e..089fca454 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_uper.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c index 1d97e5be3..0e56ab675 100644 --- a/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c +++ b/src/tmx/Asn_J2735/src/r2020/constr_SET_OF_xer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/Asn_J2735/src/r2020/oer_decoder.c b/src/tmx/Asn_J2735/src/r2020/oer_decoder.c index 070173826..a926c4348 100644 --- a/src/tmx/Asn_J2735/src/r2020/oer_decoder.c +++ b/src/tmx/Asn_J2735/src/r2020/oer_decoder.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #include diff --git a/src/tmx/Asn_J2735/src/r2020/oer_encoder.c b/src/tmx/Asn_J2735/src/r2020/oer_encoder.c index a284cc2f3..1d9534927 100644 --- a/src/tmx/Asn_J2735/src/r2020/oer_encoder.c +++ b/src/tmx/Asn_J2735/src/r2020/oer_encoder.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . All rights reserved. + * Copyright (c) 2023 Lev Walkin . All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #include diff --git a/src/tmx/Asn_J2735/src/r2020/oer_support.c b/src/tmx/Asn_J2735/src/r2020/oer_support.c index b15a3bc93..b252a9bce 100644 --- a/src/tmx/Asn_J2735/src/r2020/oer_support.c +++ b/src/tmx/Asn_J2735/src/r2020/oer_support.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Lev Walkin . + * Copyright (c) 2023 Lev Walkin . * All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index f360d6156..1bc605656 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -603,6 +603,8 @@ TEST_F(J2735MessageTest, EncodePersonalSafetyMessage){ container.load(ss); psmmessage.set_contents(container.get_storage().get_tree()); psmENC.encode_j2735_message(psmmessage); + std::cout << psmENC.get_payload_str()<